ระเบียบวิธีปฏิทินของเรา
เครื่องมือปฏิทินของเราผสมผสานอัลกอริทึมทางดาราศาสตร์และศาสนาเข้ากับการตรวจสอบอย่างต่อเนื่องเทียบกับกฎหมายหลักของรัฐบาลและพระราชกฤษฎีกา
1. เครื่องมือปฏิทินหลายรูปแบบแบบกำหนดได้ (Deterministic Multi-Calendar Engine)
วันหยุดนักขัตฤกษ์ทั่วโลกเป็นไปตามระบบทางคณิตศาสตร์และวัฒนธรรมที่หลากหลาย ท่อประมวลผลของเราจำลองกลไกปฏิทินหลัก 4 ประการ:
วันที่ตามปฏิทินเกรกอเรียนแบบตายตัว: วันชาติและวันครบรอบทางประวัติศาสตร์ที่ตรงกับวันที่ในปฏิทินแบบตายตัว (เช่น 4 กรกฎาคม, 1 มกราคม)
การคำนวณทางดาราศาสตร์และวิษุวัต:ครีษมายัน วิษุวัต และฤดูกาลทางสุริยคติที่คำนวณโดยใช้พิกัดทรงกลมฟ้าที่แม่นยำ
ปฏิทินจันทรคติและสุริยจันทรคติ: ปฏิทินอิสลามฮิจเราะห์ วันตรุษจีน วันดีปาวาลี และการปฏิบัติทางพุทธศาสนา คำนวณผ่านรูปแบบการมองเห็นข้างแรมมาตรฐานและตรวจสอบเทียบกับประกาศของหน่วยงานทางศาสนาแห่งชาติ
อัลกอริทึมคอมพิวตัส (Computus): วัฏจักรวันอีสเตอร์ของศาสนาคริสต์ตะวันตก (เกรกอเรียน) และตะวันออก (จูเลียน) รวมถึงวันฉลองเคลื่อนที่ที่เกี่ยวข้อง (วันศุกร์ประเสริฐ, วันเสด็จขึ้นสู่สวรรค์, วันจันทร์เพนเทคอสต์, วันพระกายและพระโลหิตของพระคริสตเจ้า)
2. กฎหมายและพระราชกฤษฎีกาอย่างเป็นทางการ
โมเดลทางคณิตศาสตร์ให้วันที่ดิบ แต่กฎหมายกำหนดวันหยุดพักผ่อนทางกฎหมาย เราตรวจสอบเหตุการณ์ที่คำนวณแต่ละรายการกับเครื่องมือทางกฎหมายหลัก: ประมวลกฎหมายแรงงานแห่งชาติ พระราชบัญญัติรัฐสภา ราชกิจจานุเบกษาอย่างเป็นทางการของรัฐ และคำสั่งฝ่ายบริหาร
ในกรณีที่ไลบรารีมาตรฐานละเว้นการปฏิรูปกฎหมายหรือใช้กฎที่ล้าสมัย รีจิสทรีการแทนที่ด้วยตนเองของเรา (data/holiday-overrides.ts) จะบังคับใช้การแก้ไขทางกฎหมายที่ได้รับการตรวจสอบแล้ว
3. วันหยุดชดเชยและการจำลองการเลื่อนวันหยุดสุดสัปดาห์
แง่มุมที่สำคัญที่สุดประการหนึ่งของการวางแผนวันหยุดคือการกำหนดว่าจะเกิดอะไรขึ้นเมื่อวันหยุดนักขัตฤกษ์ตรงกับวันหยุดสุดสัปดาห์
เครื่องมือของเราเข้ารหัสกฎการชดเชยของชาติอย่างเป็นระบบ: การเลื่อนอัตโนมัติไปยังวันจันทร์ถัดไป (เช่น สหราชอาณาจักร ออสเตรเลีย สหรัฐอเมริกา) การเลื่อนไปยังวันศุกร์ก่อนหน้า หรือกฎวันทำการถัดไปที่มีอยู่ (เช่น แอลเบเนีย แอฟริกาใต้) เพื่อให้แน่ใจว่ามีการนับวันทำการที่ถูกต้อง
4. การตรวจสอบทางกฎหมายอย่างต่อเนื่องและการทดสอบความถดถอย
ปฏิทินของแต่ละประเทศจะต้องได้รับการตรวจสอบสโ냅ชอตอัตโนมัติ (npm run holidays:validate:snapshots) เพื่อป้องกันความถดถอย ในขณะที่ท่อประมวลผลการตรวจสอบอย่างต่อเนื่องของเราจะติดตามกฎหมายที่เพิ่งตราขึ้นใหม่ วันหยุดธนาคารครั้งเดียว และพระราชกฤษฎีกาของพระมหากษัตริย์หรือประธานาธิบดีทั่วโลก