@kernhq/module-hr 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/dist/contract/approvals.d.ts +281 -0
  2. package/dist/contract/approvals.d.ts.map +1 -0
  3. package/dist/contract/approvals.js +127 -0
  4. package/dist/contract/approvals.js.map +1 -0
  5. package/dist/contract/attendance.d.ts +240 -0
  6. package/dist/contract/attendance.d.ts.map +1 -0
  7. package/dist/contract/attendance.js +154 -0
  8. package/dist/contract/attendance.js.map +1 -0
  9. package/dist/contract/capabilities.d.ts +1 -1
  10. package/dist/contract/capabilities.d.ts.map +1 -1
  11. package/dist/contract/capabilities.js +80 -0
  12. package/dist/contract/capabilities.js.map +1 -1
  13. package/dist/contract/events.d.ts +60 -0
  14. package/dist/contract/events.d.ts.map +1 -1
  15. package/dist/contract/events.js +60 -0
  16. package/dist/contract/events.js.map +1 -1
  17. package/dist/contract/index.d.ts +3 -0
  18. package/dist/contract/index.d.ts.map +1 -1
  19. package/dist/contract/index.js +3 -0
  20. package/dist/contract/index.js.map +1 -1
  21. package/dist/contract/leave.d.ts +168 -0
  22. package/dist/contract/leave.d.ts.map +1 -0
  23. package/dist/contract/leave.js +150 -0
  24. package/dist/contract/leave.js.map +1 -0
  25. package/dist/contract/permissions.d.ts +100 -0
  26. package/dist/contract/permissions.d.ts.map +1 -1
  27. package/dist/contract/permissions.js +119 -0
  28. package/dist/contract/permissions.js.map +1 -1
  29. package/dist/contract/router.d.ts +2440 -0
  30. package/dist/contract/router.d.ts.map +1 -1
  31. package/dist/contract/router.js +393 -0
  32. package/dist/contract/router.js.map +1 -1
  33. package/dist/policy/time.d.ts +48 -0
  34. package/dist/policy/time.d.ts.map +1 -0
  35. package/dist/policy/time.js +144 -0
  36. package/dist/policy/time.js.map +1 -0
  37. package/dist/policy/working-time.d.ts +98 -0
  38. package/dist/policy/working-time.d.ts.map +1 -0
  39. package/dist/policy/working-time.js +190 -0
  40. package/dist/policy/working-time.js.map +1 -0
  41. package/dist/server/index.d.ts.map +1 -1
  42. package/dist/server/index.js +2 -0
  43. package/dist/server/index.js.map +1 -1
  44. package/dist/server/jobs.d.ts +16 -0
  45. package/dist/server/jobs.d.ts.map +1 -0
  46. package/dist/server/jobs.js +166 -0
  47. package/dist/server/jobs.js.map +1 -0
  48. package/dist/server/router.d.ts +2731 -58
  49. package/dist/server/router.d.ts.map +1 -1
  50. package/dist/server/router.js +1306 -3
  51. package/dist/server/router.js.map +1 -1
  52. package/dist/server/schema.d.ts +3344 -1
  53. package/dist/server/schema.d.ts.map +1 -1
  54. package/dist/server/schema.js +325 -0
  55. package/dist/server/schema.js.map +1 -1
  56. package/dist/server/services/approvals.d.ts +163 -0
  57. package/dist/server/services/approvals.d.ts.map +1 -0
  58. package/dist/server/services/approvals.js +325 -0
  59. package/dist/server/services/approvals.js.map +1 -0
  60. package/dist/server/services/attendance.d.ts +150 -0
  61. package/dist/server/services/attendance.d.ts.map +1 -0
  62. package/dist/server/services/attendance.js +239 -0
  63. package/dist/server/services/attendance.js.map +1 -0
  64. package/dist/server/services/ledger.d.ts +135 -0
  65. package/dist/server/services/ledger.d.ts.map +1 -0
  66. package/dist/server/services/ledger.js +178 -0
  67. package/dist/server/services/ledger.js.map +1 -0
  68. package/dist/server/services/people.d.ts +3 -3
  69. package/migrations/0002_leave.sql +237 -0
  70. package/migrations/0003_attendance.sql +206 -0
  71. package/migrations/meta/0002_snapshot.json +3009 -0
  72. package/migrations/meta/0003_snapshot.json +3681 -0
  73. package/migrations/meta/_journal.json +14 -0
  74. package/package.json +1 -1
  75. package/src/contract/approvals.ts +149 -0
  76. package/src/contract/attendance.ts +180 -0
  77. package/src/contract/capabilities.ts +80 -0
  78. package/src/contract/events.ts +81 -0
  79. package/src/contract/index.ts +3 -0
  80. package/src/contract/leave.ts +171 -0
  81. package/src/contract/permissions.ts +122 -0
  82. package/src/contract/router.ts +481 -0
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/contract/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/contract/router.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AA2DvB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAsBnB;;;;;;WAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAqCH,0FAA0F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAyD1F;;;;;WAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAkDD,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAkG/E,0FAA0F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAyB1F;;;;;;WAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA6GD;;;eAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAiCH;;;;;;eAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0GN,CAAA;AACD,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAA"}
@@ -1,5 +1,8 @@
1
1
  import { baseContract, PageInput, page, WorkspaceId } from '@kernhq/contracts';
2
2
  import { z } from 'zod';
3
+ import { ApprovalChain, ApprovalChainSpec, ApprovalRequest, ApprovalSubjectType, Delegation, } from './approvals.js';
4
+ import { AttendanceDay, ClockState, Punch, PunchDirection, PunchMethod, Regularization, Schedule, ScheduleAssignment, ScheduleWeek, } from './attendance.js';
5
+ import { DayPart, LeaveBalance, LeaveLedgerEntry, LeaveRequest, LeaveSimulation, LeaveType, LeaveUnit, LedgerKind, } from './leave.js';
3
6
  import { Calendar, CalendarDayKind, CostCenter, CountryCode, CustomFieldDef, Employment, EmploymentType, IsoDate, LegalEntity, Office, OfficeAssignment, OfficeKind, OrgUnit, Person, PersonDocument, PersonResolution, PersonSensitive, PersonStatus, Position, RegionCode, ResolvedCalendarDay, TimeZone, WorkingWeek, } from './models.js';
4
7
  const ws = z.object({ workspaceId: WorkspaceId });
5
8
  const t = ['hr'];
@@ -481,6 +484,396 @@ export const hrContract = {
481
484
  .input(ws.extend({ personId: z.uuid(), documentId: z.uuid() }))
482
485
  .output(ok),
483
486
  },
487
+ // ---------------------------------------------------------------- attendance
488
+ attendance: {
489
+ /** Am I clocked in? The one call a clock widget makes. */
490
+ state: baseContract
491
+ .route({ method: 'GET', path: '/attendance/state', tags: t })
492
+ .input(ws.extend({ personId: z.uuid().optional() }))
493
+ .output(ClockState),
494
+ /**
495
+ * Clock in. The instant is **stamped by the server**, never taken from the caller.
496
+ *
497
+ * `clientReportedAt` is recorded alongside it for audit — a device whose clock is an hour out is
498
+ * worth knowing about — but it never decides anything.
499
+ */
500
+ clockIn: baseContract
501
+ .route({ method: 'POST', path: '/attendance/clock-in', tags: t })
502
+ .input(ws.extend({
503
+ personId: z.uuid().optional(),
504
+ method: PunchMethod.default('web'),
505
+ clientReportedAt: z.iso.datetime({ offset: true }).nullish(),
506
+ geo: z.object({ lat: z.number(), lng: z.number(), accuracyM: z.number().optional() }).nullish(),
507
+ note: z.string().max(500).nullish(),
508
+ idempotencyKey: z.string().min(8).max(128).optional(),
509
+ }))
510
+ .output(Punch),
511
+ clockOut: baseContract
512
+ .route({ method: 'POST', path: '/attendance/clock-out', tags: t })
513
+ .input(ws.extend({
514
+ personId: z.uuid().optional(),
515
+ method: PunchMethod.default('web'),
516
+ clientReportedAt: z.iso.datetime({ offset: true }).nullish(),
517
+ geo: z.object({ lat: z.number(), lng: z.number(), accuracyM: z.number().optional() }).nullish(),
518
+ note: z.string().max(500).nullish(),
519
+ idempotencyKey: z.string().min(8).max(128).optional(),
520
+ }))
521
+ .output(Punch),
522
+ breakStart: baseContract
523
+ .route({ method: 'POST', path: '/attendance/break-start', tags: t })
524
+ .input(ws.extend({ personId: z.uuid().optional(), idempotencyKey: z.string().min(8).max(128).optional() }))
525
+ .output(Punch),
526
+ breakEnd: baseContract
527
+ .route({ method: 'POST', path: '/attendance/break-end', tags: t })
528
+ .input(ws.extend({ personId: z.uuid().optional(), idempotencyKey: z.string().min(8).max(128).optional() }))
529
+ .output(Punch),
530
+ punches: {
531
+ list: baseContract
532
+ .route({ method: 'GET', path: '/attendance/punches', tags: t })
533
+ .input(ws.extend({
534
+ personId: z.uuid().optional(),
535
+ from: IsoDate,
536
+ to: IsoDate,
537
+ includeVoided: z.boolean().default(false),
538
+ ...PageInput.shape,
539
+ }))
540
+ .output(page(Punch)),
541
+ /**
542
+ * Void a punch by writing a correcting row.
543
+ *
544
+ * The original is never edited or deleted — an attendance record somebody can quietly rewrite
545
+ * is worth nothing in the dispute it exists for.
546
+ */
547
+ void: baseContract
548
+ .route({ method: 'POST', path: '/attendance/punches/{punchId}/void', tags: t })
549
+ .input(ws.extend({ punchId: z.uuid(), reason: z.string().min(1).max(500) }))
550
+ .output(ok),
551
+ },
552
+ days: {
553
+ list: baseContract
554
+ .route({ method: 'GET', path: '/attendance/days', tags: t })
555
+ .input(ws.extend({
556
+ personId: z.uuid().optional(),
557
+ officeId: z.uuid().optional(),
558
+ from: IsoDate,
559
+ to: IsoDate,
560
+ ...PageInput.shape,
561
+ }))
562
+ .output(page(AttendanceDay)),
563
+ /**
564
+ * Recompute a range from the punches.
565
+ *
566
+ * Safe to call at any time — the day sheet is a projection, so this is idempotent by
567
+ * construction. Locked days are skipped and named in the response rather than silently
568
+ * ignored.
569
+ */
570
+ recompute: baseContract
571
+ .route({ method: 'POST', path: '/attendance/days/recompute', tags: t })
572
+ .input(ws.extend({ personId: z.uuid().optional(), from: IsoDate, to: IsoDate }))
573
+ .output(z.object({ recomputed: z.number().int(), skippedLocked: z.array(IsoDate) })),
574
+ },
575
+ schedules: {
576
+ list: baseContract
577
+ .route({ method: 'GET', path: '/attendance/schedules', tags: t })
578
+ .input(ws.extend({ includeArchived: z.boolean().default(false) }))
579
+ .output(z.array(Schedule)),
580
+ create: baseContract
581
+ .route({ method: 'POST', path: '/attendance/schedules', tags: t })
582
+ .input(ws.extend({
583
+ name: z.string().min(1).max(120),
584
+ kind: Schedule.shape.kind.default('fixed'),
585
+ week: ScheduleWeek,
586
+ tzMode: Schedule.shape.tzMode.default('office'),
587
+ tz: Schedule.shape.tz.optional(),
588
+ graceInMinutes: z.number().int().min(0).max(240).default(0),
589
+ graceOutMinutes: z.number().int().min(0).max(240).default(0),
590
+ roundingStepMinutes: z.number().int().min(0).max(60).default(0),
591
+ roundingDirection: Schedule.shape.roundingDirection.default('nearest'),
592
+ autoClockOutAfterMinutes: z.number().int().min(60).nullish(),
593
+ }))
594
+ .output(Schedule),
595
+ update: baseContract
596
+ .route({ method: 'PATCH', path: '/attendance/schedules/{scheduleId}', tags: t })
597
+ .input(ws.extend({
598
+ scheduleId: z.uuid(),
599
+ name: z.string().min(1).max(120).optional(),
600
+ week: ScheduleWeek.optional(),
601
+ graceInMinutes: z.number().int().min(0).max(240).optional(),
602
+ graceOutMinutes: z.number().int().min(0).max(240).optional(),
603
+ roundingStepMinutes: z.number().int().min(0).max(60).optional(),
604
+ roundingDirection: Schedule.shape.roundingDirection.optional(),
605
+ autoClockOutAfterMinutes: z.number().int().min(60).nullish(),
606
+ }))
607
+ .output(Schedule),
608
+ archive: baseContract
609
+ .route({ method: 'DELETE', path: '/attendance/schedules/{scheduleId}', tags: t })
610
+ .input(ws.extend({ scheduleId: z.uuid() }))
611
+ .output(ok),
612
+ assign: baseContract
613
+ .route({ method: 'POST', path: '/attendance/schedules/{scheduleId}/assign', tags: t })
614
+ .input(ws.extend({ scheduleId: z.uuid(), personId: z.uuid(), effectiveFrom: IsoDate }))
615
+ .output(z.array(ScheduleAssignment)),
616
+ },
617
+ regularizations: {
618
+ list: baseContract
619
+ .route({ method: 'GET', path: '/attendance/regularizations', tags: t })
620
+ .input(ws.extend({
621
+ personId: z.uuid().optional(),
622
+ status: z.array(Regularization.shape.status).optional(),
623
+ ...PageInput.shape,
624
+ }))
625
+ .output(page(Regularization)),
626
+ /** Ask for a wrong or missing punch to be fixed. Goes through the same approval engine. */
627
+ request: baseContract
628
+ .route({ method: 'POST', path: '/attendance/regularizations', tags: t })
629
+ .input(ws.extend({
630
+ personId: z.uuid().optional(),
631
+ businessDate: IsoDate,
632
+ punchId: z.uuid().nullish(),
633
+ proposed: z
634
+ .array(z.object({
635
+ direction: PunchDirection,
636
+ at: z.iso.datetime({ offset: true }),
637
+ }))
638
+ .min(1),
639
+ reason: z.string().min(1).max(1000),
640
+ }))
641
+ .output(Regularization),
642
+ },
643
+ },
644
+ // ---------------------------------------------------------------- leave
645
+ leave: {
646
+ types: {
647
+ list: baseContract
648
+ .route({ method: 'GET', path: '/leave/types', tags: t })
649
+ .input(ws.extend({ includeArchived: z.boolean().default(false) }))
650
+ .output(z.array(LeaveType)),
651
+ create: baseContract
652
+ .route({ method: 'POST', path: '/leave/types', tags: t })
653
+ .input(ws.extend({
654
+ key: z.string().min(1).max(48),
655
+ name: z.string().min(1).max(120),
656
+ paid: z.boolean().default(true),
657
+ unit: LeaveUnit.default('day'),
658
+ color: z.string().max(32).nullish(),
659
+ icon: z.string().max(48).nullish(),
660
+ requiresDocumentAfterDays: z.number().int().min(1).nullish(),
661
+ countsWorkingDaysOnly: z.boolean().default(true),
662
+ allowNegative: z.boolean().default(false),
663
+ maxNegativeMinutes: z.number().int().min(0).default(0),
664
+ }))
665
+ .output(LeaveType),
666
+ update: baseContract
667
+ .route({ method: 'PATCH', path: '/leave/types/{leaveTypeId}', tags: t })
668
+ .input(ws.extend({
669
+ leaveTypeId: z.uuid(),
670
+ name: z.string().min(1).max(120).optional(),
671
+ paid: z.boolean().optional(),
672
+ color: z.string().max(32).nullish(),
673
+ icon: z.string().max(48).nullish(),
674
+ requiresDocumentAfterDays: z.number().int().min(1).nullish(),
675
+ countsWorkingDaysOnly: z.boolean().optional(),
676
+ allowNegative: z.boolean().optional(),
677
+ maxNegativeMinutes: z.number().int().min(0).optional(),
678
+ order: z.number().int().optional(),
679
+ }))
680
+ .output(LeaveType),
681
+ archive: baseContract
682
+ .route({ method: 'DELETE', path: '/leave/types/{leaveTypeId}', tags: t })
683
+ .input(ws.extend({ leaveTypeId: z.uuid() }))
684
+ .output(ok),
685
+ },
686
+ /** Everything a person has, per type. Defaults to the caller when `personId` is omitted. */
687
+ balance: {
688
+ get: baseContract
689
+ .route({ method: 'GET', path: '/leave/balance', tags: t })
690
+ .input(ws.extend({ personId: z.uuid().optional(), periodYear: z.number().int().optional() }))
691
+ .output(z.array(LeaveBalance)),
692
+ },
693
+ /**
694
+ * The movements behind a balance.
695
+ *
696
+ * The reason the ledger is append-only: when somebody disputes a number, this is the answer —
697
+ * a list of what happened, in order, that nobody edited.
698
+ */
699
+ ledger: {
700
+ list: baseContract
701
+ .route({ method: 'GET', path: '/leave/ledger', tags: t })
702
+ .input(ws.extend({
703
+ personId: z.uuid(),
704
+ leaveTypeId: z.uuid().optional(),
705
+ periodYear: z.number().int().optional(),
706
+ ...PageInput.shape,
707
+ }))
708
+ .output(page(LeaveLedgerEntry)),
709
+ },
710
+ /** A manual movement. Always carries a reason — an unexplained balance change is the thing HR gets asked about. */
711
+ adjust: baseContract
712
+ .route({ method: 'POST', path: '/leave/adjust', tags: t })
713
+ .input(ws.extend({
714
+ personId: z.uuid(),
715
+ leaveTypeId: z.uuid(),
716
+ kind: LedgerKind.default('adjustment'),
717
+ amountMinutes: z.number().int(),
718
+ effectiveOn: IsoDate,
719
+ reason: z.string().min(1).max(500),
720
+ }))
721
+ .output(LeaveLedgerEntry),
722
+ requests: {
723
+ list: baseContract
724
+ .route({ method: 'GET', path: '/leave/requests', tags: t })
725
+ .input(ws.extend({
726
+ ...PageInput.shape,
727
+ personId: z.uuid().optional(),
728
+ officeId: z.uuid().optional(),
729
+ status: z.array(LeaveRequest.shape.status).optional(),
730
+ from: IsoDate.optional(),
731
+ to: IsoDate.optional(),
732
+ }))
733
+ .output(page(LeaveRequest)),
734
+ get: baseContract
735
+ .route({ method: 'GET', path: '/leave/requests/{requestId}', tags: t })
736
+ .input(ws.extend({ requestId: z.uuid() }))
737
+ .output(LeaveRequest),
738
+ /** What it would cost and whether it would be refused — before anybody submits. */
739
+ simulate: baseContract
740
+ .route({ method: 'POST', path: '/leave/requests/simulate', tags: t })
741
+ .input(ws.extend({
742
+ personId: z.uuid().optional(),
743
+ leaveTypeId: z.uuid(),
744
+ startsOn: IsoDate,
745
+ endsOn: IsoDate,
746
+ startPart: DayPart.default('full'),
747
+ endPart: DayPart.default('full'),
748
+ hours: z.number().min(0).max(24).nullish(),
749
+ }))
750
+ .output(LeaveSimulation),
751
+ create: baseContract
752
+ .route({ method: 'POST', path: '/leave/requests', tags: t })
753
+ .input(ws.extend({
754
+ personId: z.uuid().optional(),
755
+ leaveTypeId: z.uuid(),
756
+ startsOn: IsoDate,
757
+ endsOn: IsoDate,
758
+ startPart: DayPart.default('full'),
759
+ endPart: DayPart.default('full'),
760
+ hours: z.number().min(0).max(24).nullish(),
761
+ reason: z.string().max(1000).nullish(),
762
+ documentFileId: z.uuid().nullish(),
763
+ /**
764
+ * Makes a retried submission safe. Two clicks on a slow connection must not book the
765
+ * same week twice and spend the balance twice.
766
+ */
767
+ idempotencyKey: z.string().min(8).max(128).optional(),
768
+ }))
769
+ .output(LeaveRequest),
770
+ /**
771
+ * Cancels a request. An approved one is reversed in the ledger rather than deleted, so the
772
+ * balance goes back up and the history still says what happened.
773
+ */
774
+ cancel: baseContract
775
+ .route({ method: 'POST', path: '/leave/requests/{requestId}/cancel', tags: t })
776
+ .input(ws.extend({ requestId: z.uuid(), reason: z.string().max(500).nullish() }))
777
+ .output(LeaveRequest),
778
+ },
779
+ /** Who is off, over a range — the answer a team actually looks at. */
780
+ team: {
781
+ calendar: baseContract
782
+ .route({ method: 'GET', path: '/leave/calendar', tags: t })
783
+ .input(ws.extend({
784
+ from: IsoDate,
785
+ to: IsoDate,
786
+ officeId: z.uuid().optional(),
787
+ orgUnitId: z.uuid().optional(),
788
+ }))
789
+ .output(z.array(z.object({
790
+ personId: z.uuid(),
791
+ displayName: z.string(),
792
+ requestId: z.uuid(),
793
+ startsOn: IsoDate,
794
+ endsOn: IsoDate,
795
+ status: LeaveRequest.shape.status,
796
+ /**
797
+ * The type's name, or null when the viewer may not see it. Most companies want the
798
+ * team to know somebody is away without knowing it is sick leave.
799
+ */
800
+ leaveTypeName: z.string().nullable(),
801
+ color: z.string().nullable(),
802
+ }))),
803
+ },
804
+ },
805
+ // ---------------------------------------------------------------- approvals
806
+ approvals: {
807
+ /** Everything waiting on the caller, across every subject type. */
808
+ inbox: baseContract
809
+ .route({ method: 'GET', path: '/approvals/inbox', tags: t })
810
+ .input(ws.extend({ ...PageInput.shape, includeDecided: z.boolean().default(false) }))
811
+ .output(page(ApprovalRequest)),
812
+ get: baseContract
813
+ .route({ method: 'GET', path: '/approvals/{requestId}', tags: t })
814
+ .input(ws.extend({ requestId: z.uuid() }))
815
+ .output(ApprovalRequest),
816
+ /**
817
+ * Approve or reject. Idempotent per approver per step — a double click is one decision, and the
818
+ * database refuses the second rather than counting it twice.
819
+ */
820
+ decide: baseContract
821
+ .route({ method: 'POST', path: '/approvals/{requestId}/decide', tags: t })
822
+ .input(ws.extend({
823
+ requestId: z.uuid(),
824
+ decision: z.enum(['approve', 'reject']),
825
+ comment: z.string().max(1000).nullish(),
826
+ /** Deciding in somebody's place, through a delegation they created. */
827
+ onBehalfOfId: z.uuid().nullish(),
828
+ }))
829
+ .output(ApprovalRequest),
830
+ chains: {
831
+ list: baseContract
832
+ .route({ method: 'GET', path: '/approvals/chains', tags: t })
833
+ .input(ws.extend({ subjectType: ApprovalSubjectType.optional() }))
834
+ .output(z.array(ApprovalChain)),
835
+ create: baseContract
836
+ .route({ method: 'POST', path: '/approvals/chains', tags: t })
837
+ .input(ws.extend({
838
+ name: z.string().min(1).max(120),
839
+ subjectType: ApprovalSubjectType,
840
+ spec: ApprovalChainSpec,
841
+ isDefault: z.boolean().default(false),
842
+ }))
843
+ .output(ApprovalChain),
844
+ update: baseContract
845
+ .route({ method: 'PATCH', path: '/approvals/chains/{chainId}', tags: t })
846
+ .input(ws.extend({
847
+ chainId: z.uuid(),
848
+ name: z.string().min(1).max(120).optional(),
849
+ spec: ApprovalChainSpec.optional(),
850
+ isDefault: z.boolean().optional(),
851
+ }))
852
+ .output(ApprovalChain),
853
+ archive: baseContract
854
+ .route({ method: 'DELETE', path: '/approvals/chains/{chainId}', tags: t })
855
+ .input(ws.extend({ chainId: z.uuid() }))
856
+ .output(ok),
857
+ },
858
+ delegations: baseContract
859
+ .route({ method: 'GET', path: '/approvals/delegations', tags: t })
860
+ .input(ws.extend({ personId: z.uuid().optional() }))
861
+ .output(z.array(Delegation)),
862
+ delegate: baseContract
863
+ .route({ method: 'POST', path: '/approvals/delegations', tags: t })
864
+ .input(ws.extend({
865
+ toPersonId: z.uuid(),
866
+ subjectType: ApprovalSubjectType.nullish(),
867
+ startsOn: IsoDate,
868
+ endsOn: IsoDate,
869
+ reason: z.string().max(200).nullish(),
870
+ }))
871
+ .output(Delegation),
872
+ revokeDelegation: baseContract
873
+ .route({ method: 'DELETE', path: '/approvals/delegations/{delegationId}', tags: t })
874
+ .input(ws.extend({ delegationId: z.uuid() }))
875
+ .output(ok),
876
+ },
484
877
  // ---------------------------------------------------------------- custom fields
485
878
  fields: {
486
879
  list: baseContract
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/contract/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/contract/router.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import type { IsoDate } from '../contract/index.js';
2
+ export interface CivilParts {
3
+ year: number;
4
+ month: number;
5
+ day: number;
6
+ hour: number;
7
+ minute: number;
8
+ second: number;
9
+ }
10
+ /** The civil (wall-clock) time in a zone at a given instant. */
11
+ export declare function civilAt(instantMs: number, timeZone: string): CivilParts;
12
+ /** A zone's offset from UTC, in milliseconds, at a given instant. */
13
+ export declare function offsetMsAt(instantMs: number, timeZone: string): number;
14
+ /**
15
+ * The instant at which a wall clock read this, in this zone.
16
+ *
17
+ * A wall-clock reading is not always one instant. On the autumn transition it is **two** — 02:30
18
+ * happens once in summer time and again an hour later in winter time — and on the spring one it can
19
+ * be **none**, because the clock jumps straight from 02:00 to 03:00.
20
+ *
21
+ * The rule here: an ambiguous reading resolves to the **earlier** instant, and a skipped one to the
22
+ * moment the clock jumps to. Both are deliberate. Somebody whose shift starts at 02:30 started it
23
+ * the first time the clock said so; and somebody claiming a wall time that never existed still
24
+ * turned up, so refusing to produce an instant would only move the problem.
25
+ *
26
+ * The obvious implementation — guess, measure the offset, correct, repeat — silently picks the
27
+ * *later* of an ambiguous pair, because it converges from the naive UTC guess downwards. That was
28
+ * this function's first version, and its own test caught it. Candidates are therefore built from
29
+ * the offsets on either side of the transition and the earliest match wins.
30
+ */
31
+ export declare function zonedToInstant(date: IsoDate, wallClock: string, timeZone: string): number;
32
+ /** The calendar date in a zone at an instant — what "today" means for somebody in Istanbul. */
33
+ export declare function dateIn(instantMs: number, timeZone: string): IsoDate;
34
+ /** Minutes past local midnight. Used to compare a punch against a schedule. */
35
+ export declare function minutesOfDayIn(instantMs: number, timeZone: string): number;
36
+ /**
37
+ * How long a local day actually is, in minutes.
38
+ *
39
+ * 1440 almost always; 1380 on a spring transition and 1500 on an autumn one. Anything computing a
40
+ * day's span by assuming 1440 is wrong twice a year in every zone that observes daylight saving,
41
+ * by an hour each time — big enough to matter on a timesheet, small enough that nobody notices for
42
+ * a year.
43
+ */
44
+ export declare function dayLengthMinutes(date: IsoDate, timeZone: string): number;
45
+ /** The civil day after this one. Pure date arithmetic — no instants involved. */
46
+ export declare function nextDate(date: IsoDate): IsoDate;
47
+ export declare function previousDate(date: IsoDate): IsoDate;
48
+ //# sourceMappingURL=time.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../src/policy/time.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAmCnD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf;AAED,gEAAgE;AAChE,wBAAgB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAavE;AAED,qEAAqE;AACrE,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAItE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA0BzF;AAED,+FAA+F;AAC/F,wBAAgB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAGnE;AAED,+EAA+E;AAC/E,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG1E;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIxE;AAED,iFAAiF;AACjF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAe/C;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAOnD"}