Skip to content

เอาต์พุตที่สร้างขึ้น

แพ็กเกจ pantoken หลายตัวสร้างไฟล์ในระหว่างการสร้าง — ไฟล์สไตล์ชีต, theme.json, โมดูลโทเค็นที่ฝังอยู่ เพื่อรักษาคลังให้สะอาดและให้ผลลัพธ์ตรงตามจริง ทุกแพ็กเกจจึงปฏิบัติตามข้อกำหนดข้อเดียวและงานใน workspace จะตรวจสอบทั้งหมด

พฤติกรรม generated/

ทุกแพ็กเกจที่ผลิตอาร์ติแฟ็กต์การสร้างจะเขียนลงในไดเรกทอรี generated/ ต่อแพ็กเกจเท่านั้น และไม่มีอย่างอื่นอยู่ที่นั่น กฎข้อเดียวใน .gitignore ครอบคลุมทั้งหมด:

txt
**/generated/

ดังนั้นไม่มีไฟล์ที่สร้างขึ้นถูกคอมมิต — การสร้างซ้ำจะสร้างไฟล์นั้นขึ้นมา สองประเภทของผลลัพธ์ตกลงที่นั่น:

  • สเตติกที่พร้อมส่ง — ไฟล์ที่ผู้บริโภคนำเข้า เช่น @pantoken/css's style.css หรือ @pantoken/scss's tokens.scss แผนที่ exports ของแพ็กเกจเก็บคีย์สาธารณะ ("./style.css") แต่ชี้ไปที่ generated/ ดังนั้น API ของผู้บริโภคจึงไม่เปลี่ยนแปลง
  • อินเทอร์มีเดียทของการสร้าง — ไฟล์ที่ซอร์สของแพ็กเกจนำเข้าและบันเดิลเข้าเป็น dist เช่น JSON ที่ฝังมาใน @pantoken/tokens เหล่านี้จะไม่ถูกเผยแพร่แยกต่างหาก; พวกมันถูกคอมไพล์เข้าไป

การตรวจสอบเอาต์พุต

@pantoken/validate-generated (เครื่องมือภายใน) ทำงานหลังการสร้างและตรวจสอบสามอย่าง:

  1. แพ็กเกจตัวสร้างแต่ละตัวเขียนไดเรกทอรี generated/ ที่ไม่ว่างจริง,
  2. CLI pantoken สร้างไฟล์อย่างน้อยหนึ่งไฟล์สำหรับแต่ละเป้าหมายที่รองรับ, และ
  3. ไม่มีสไตล์ชีตที่สร้างขึ้นไหลเบี่ยงจาก IR ของโทเค็น — danglingReferences สำหรับชีตที่ประกอบตัวเองครบถ้วน, และ unknownReferences สำหรับบริดจ์ที่อ้างอิงโทเค็นที่กำหนดไว้ที่อื่นเท่านั้น

คำสั่ง

sh
# Rebuild every package, regenerating all generated/ output.
pnpm run generate

# Rebuild, then run the validator.
pnpm run validate:generated

ตัวตรวจสอบยังผูกเข้ากับ pnpm run ready ดังนั้นการไหลเบี่ยงจะถูกจับในเกตมาตรฐาน