@substrat-run/engine-absence 0.4.7 → 0.5.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.
- package/dist/index.d.ts +3 -100
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +46 -46
- package/dist/index.js.map +1 -1
- package/dist/operations.d.ts +443 -0
- package/dist/operations.d.ts.map +1 -0
- package/dist/operations.js +167 -0
- package/dist/operations.js.map +1 -0
- package/dist/schemas.d.ts +333 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/schemas.js +154 -0
- package/dist/schemas.js.map +1 -0
- package/package.json +9 -5
package/dist/index.d.ts
CHANGED
|
@@ -12,6 +12,9 @@ import { type EntityRef } from '@substrat-run/contracts';
|
|
|
12
12
|
export declare const ABSENCE_CONFLICT_REASONS: readonly ['insufficient_balance', 'leave_type_inactive', 'wrong_status'];
|
|
13
13
|
export type AbsenceConflictReason = (typeof ABSENCE_CONFLICT_REASONS)[number];
|
|
14
14
|
export { absenceEntities, leaveTypeRow } from './entities.js';
|
|
15
|
+
export { ABSENCE_PERMISSIONS, absenceOperations } from './operations.js';
|
|
16
|
+
export * from './schemas.js';
|
|
17
|
+
import { type AbsenceDay, type AbsenceEntry, type AbsenceRequest, type CancelAbsenceInput, type ConfigureLeaveTypeInput, type DecideAbsenceInput, type LeaveType, type RecordEntryInput, type RequestAbsenceInput } from './schemas.js';
|
|
15
18
|
import { type ModuleRegistration, type OperationContext } from '@substrat-run/kernel';
|
|
16
19
|
export declare const PERM: {
|
|
17
20
|
read: string & z.$brand<"PermissionKey">;
|
|
@@ -126,21 +129,6 @@ export declare const absenceMigrations: {
|
|
|
126
129
|
version: string;
|
|
127
130
|
sql: string;
|
|
128
131
|
}[];
|
|
129
|
-
/** Every write names its subject: the vertical's opaque noun + the erasure key. */
|
|
130
|
-
export declare const absenceSubject: z.ZodObject<{
|
|
131
|
-
ref: z.ZodObject<{
|
|
132
|
-
entityType: z.ZodString;
|
|
133
|
-
entityId: z.ZodString;
|
|
134
|
-
}, z.core.$strip>;
|
|
135
|
-
dataSubjectId: z.core.$ZodBranded<z.ZodString, "DataSubjectId", "out">;
|
|
136
|
-
}, z.core.$strip>;
|
|
137
|
-
export type AbsenceSubject = z.infer<typeof absenceSubject>;
|
|
138
|
-
export interface LeaveType {
|
|
139
|
-
key: string;
|
|
140
|
-
floor: string;
|
|
141
|
-
active: boolean;
|
|
142
|
-
createdAt: string;
|
|
143
|
-
}
|
|
144
132
|
interface EntryRow {
|
|
145
133
|
id: string;
|
|
146
134
|
subject_type: string;
|
|
@@ -155,18 +143,6 @@ interface EntryRow {
|
|
|
155
143
|
created_by: string;
|
|
156
144
|
created_at: string;
|
|
157
145
|
}
|
|
158
|
-
export interface AbsenceEntry {
|
|
159
|
-
id: string;
|
|
160
|
-
subject: EntityRef;
|
|
161
|
-
leaveTypeKey: string;
|
|
162
|
-
entryKind: EntryRow['entry_kind'];
|
|
163
|
-
delta: string;
|
|
164
|
-
effectiveDate: string;
|
|
165
|
-
requestId: string | null;
|
|
166
|
-
note: string | null;
|
|
167
|
-
createdBy: string;
|
|
168
|
-
createdAt: string;
|
|
169
|
-
}
|
|
170
146
|
interface RequestRow {
|
|
171
147
|
id: string;
|
|
172
148
|
subject_type: string;
|
|
@@ -183,26 +159,6 @@ interface RequestRow {
|
|
|
183
159
|
created_by: string;
|
|
184
160
|
created_at: string;
|
|
185
161
|
}
|
|
186
|
-
export interface AbsenceRequest {
|
|
187
|
-
id: string;
|
|
188
|
-
subject: EntityRef;
|
|
189
|
-
leaveTypeKey: string;
|
|
190
|
-
startDate: string;
|
|
191
|
-
endDate: string;
|
|
192
|
-
days: string;
|
|
193
|
-
status: RequestRow['status'];
|
|
194
|
-
note: string | null;
|
|
195
|
-
decidedBy: string | null;
|
|
196
|
-
decidedAt: string | null;
|
|
197
|
-
createdBy: string;
|
|
198
|
-
createdAt: string;
|
|
199
|
-
}
|
|
200
|
-
export declare const configureLeaveTypeInput: z.ZodObject<{
|
|
201
|
-
key: z.ZodString;
|
|
202
|
-
floor: z.ZodOptional<z.ZodString>;
|
|
203
|
-
active: z.ZodOptional<z.ZodBoolean>;
|
|
204
|
-
}, z.core.$strip>;
|
|
205
|
-
export type ConfigureLeaveTypeInput = z.infer<typeof configureLeaveTypeInput>;
|
|
206
162
|
export declare function configureLeaveType(ctx: OperationContext, rawInput: ConfigureLeaveTypeInput): LeaveType;
|
|
207
163
|
export declare function listLeaveTypes(ctx: OperationContext): LeaveType[];
|
|
208
164
|
/**
|
|
@@ -214,25 +170,6 @@ export declare function listLeaveTypes(ctx: OperationContext): LeaveType[];
|
|
|
214
170
|
* No floor check here: a correction is the administrator's escape hatch, and
|
|
215
171
|
* accrual/carryover only ever add. The floor guards bookings (D-D).
|
|
216
172
|
*/
|
|
217
|
-
export declare const recordEntryInput: z.ZodObject<{
|
|
218
|
-
subject: z.ZodObject<{
|
|
219
|
-
ref: z.ZodObject<{
|
|
220
|
-
entityType: z.ZodString;
|
|
221
|
-
entityId: z.ZodString;
|
|
222
|
-
}, z.core.$strip>;
|
|
223
|
-
dataSubjectId: z.core.$ZodBranded<z.ZodString, "DataSubjectId", "out">;
|
|
224
|
-
}, z.core.$strip>;
|
|
225
|
-
leaveTypeKey: z.ZodString;
|
|
226
|
-
entryKind: z.ZodEnum<{
|
|
227
|
-
accrual: "accrual";
|
|
228
|
-
carryover: "carryover";
|
|
229
|
-
correction: "correction";
|
|
230
|
-
}>;
|
|
231
|
-
delta: z.ZodString;
|
|
232
|
-
effectiveDate: z.ZodString;
|
|
233
|
-
note: z.ZodOptional<z.ZodString>;
|
|
234
|
-
}, z.core.$strip>;
|
|
235
|
-
export type RecordEntryInput = z.infer<typeof recordEntryInput>;
|
|
236
173
|
export declare function recordEntry(ctx: OperationContext, rawInput: RecordEntryInput): AbsenceEntry;
|
|
237
174
|
/** Balance = pure fold over entries with effective_date <= asOf. No counter exists. */
|
|
238
175
|
export declare function balanceAsOf(ctx: OperationContext, input: {
|
|
@@ -240,31 +177,7 @@ export declare function balanceAsOf(ctx: OperationContext, input: {
|
|
|
240
177
|
leaveTypeKey: string;
|
|
241
178
|
asOf?: string;
|
|
242
179
|
}): string;
|
|
243
|
-
export declare const requestAbsenceInput: z.ZodObject<{
|
|
244
|
-
subject: z.ZodObject<{
|
|
245
|
-
ref: z.ZodObject<{
|
|
246
|
-
entityType: z.ZodString;
|
|
247
|
-
entityId: z.ZodString;
|
|
248
|
-
}, z.core.$strip>;
|
|
249
|
-
dataSubjectId: z.core.$ZodBranded<z.ZodString, "DataSubjectId", "out">;
|
|
250
|
-
}, z.core.$strip>;
|
|
251
|
-
leaveTypeKey: z.ZodString;
|
|
252
|
-
startDate: z.ZodString;
|
|
253
|
-
endDate: z.ZodString;
|
|
254
|
-
days: z.ZodString;
|
|
255
|
-
note: z.ZodOptional<z.ZodString>;
|
|
256
|
-
}, z.core.$strip>;
|
|
257
|
-
export type RequestAbsenceInput = z.infer<typeof requestAbsenceInput>;
|
|
258
180
|
export declare function requestAbsence(ctx: OperationContext, rawInput: RequestAbsenceInput): AbsenceRequest;
|
|
259
|
-
export declare const decideAbsenceInput: z.ZodObject<{
|
|
260
|
-
requestId: z.ZodString;
|
|
261
|
-
decision: z.ZodEnum<{
|
|
262
|
-
approve: "approve";
|
|
263
|
-
reject: "reject";
|
|
264
|
-
}>;
|
|
265
|
-
note: z.ZodOptional<z.ZodString>;
|
|
266
|
-
}, z.core.$strip>;
|
|
267
|
-
export type DecideAbsenceInput = z.infer<typeof decideAbsenceInput>;
|
|
268
181
|
export declare function decideAbsence(ctx: OperationContext, rawInput: DecideAbsenceInput): {
|
|
269
182
|
request: AbsenceRequest;
|
|
270
183
|
booking: AbsenceEntry | null;
|
|
@@ -274,11 +187,6 @@ export declare function decideAbsence(ctx: OperationContext, rawInput: DecideAbs
|
|
|
274
187
|
* with a COMPENSATING reversal entry — "Hugo came back" is a new entry, never
|
|
275
188
|
* an edit (D-E). Rejected/cancelled rows are terminal.
|
|
276
189
|
*/
|
|
277
|
-
export declare const cancelAbsenceInput: z.ZodObject<{
|
|
278
|
-
requestId: z.ZodString;
|
|
279
|
-
reason: z.ZodOptional<z.ZodString>;
|
|
280
|
-
}, z.core.$strip>;
|
|
281
|
-
export type CancelAbsenceInput = z.infer<typeof cancelAbsenceInput>;
|
|
282
190
|
export declare function cancelAbsence(ctx: OperationContext, rawInput: CancelAbsenceInput): {
|
|
283
191
|
request: AbsenceRequest;
|
|
284
192
|
reversal: AbsenceEntry | null;
|
|
@@ -311,11 +219,6 @@ export declare function entriesInWindow(ctx: OperationContext, input: {
|
|
|
311
219
|
to: string;
|
|
312
220
|
entryKind?: EntryRow['entry_kind'];
|
|
313
221
|
}): AbsenceEntry[];
|
|
314
|
-
export interface AbsenceDay {
|
|
315
|
-
date: string;
|
|
316
|
-
leaveTypeKey: string;
|
|
317
|
-
requestId: string;
|
|
318
|
-
}
|
|
319
222
|
/**
|
|
320
223
|
* The planner's read (D-C): every calendar day in an APPROVED request's
|
|
321
224
|
* inclusive range, clamped to [from, to]. The verdict is "an approved absence
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { addDecimal, compareDecimal, dataSubjectId, entityRef, moduleManifest, permissionKey, substratError, } from '@substrat-run/contracts';
|
|
2
|
+
import { addDecimal, compareDecimal, dataSubjectId, entityRef, listLimitOf, moduleManifest, pageOf, permissionKey, substratError, } from '@substrat-run/contracts';
|
|
3
3
|
/**
|
|
4
4
|
* The conflict reasons this engine raises — its own vocabulary, narrowing the platform's
|
|
5
5
|
* `conflict` code (#113). Exported so a vertical can branch on WHY a refusal happened
|
|
@@ -20,6 +20,11 @@ const conflict = (reason, message) => substratError('conflict', message, { reaso
|
|
|
20
20
|
// entity-type constants its relation edges name, and the row schema to declare
|
|
21
21
|
// an operation's output against without retyping this engine's shape.
|
|
22
22
|
export { absenceEntities, leaveTypeRow } from './entities.js';
|
|
23
|
+
// The declared surface, and the shapes it names (#896). Re-exported from here so
|
|
24
|
+
// a composing vertical imports one module, as it did when these lived inline.
|
|
25
|
+
export { ABSENCE_PERMISSIONS, absenceOperations } from './operations.js';
|
|
26
|
+
export * from './schemas.js';
|
|
27
|
+
import { absenceSubject, isoDate, cancelAbsenceInput, configureLeaveTypeInput, decideAbsenceInput, recordEntryInput, requestAbsenceInput, } from './schemas.js';
|
|
23
28
|
import { assertAllowed, ulid, } from '@substrat-run/kernel';
|
|
24
29
|
// ============================================================================
|
|
25
30
|
// The absence engine (docs/engines/absence.md). Owns an APPEND-ONLY entry
|
|
@@ -121,17 +126,6 @@ export const absenceMigrations = [
|
|
|
121
126
|
`,
|
|
122
127
|
},
|
|
123
128
|
];
|
|
124
|
-
// ---------------------------------------------------------------------------
|
|
125
|
-
// Schemas & shapes
|
|
126
|
-
// ---------------------------------------------------------------------------
|
|
127
|
-
const isoDate = z.string().regex(/^\d{4}-\d{2}-\d{2}$/, 'must be YYYY-MM-DD');
|
|
128
|
-
const posDecimal = z.string().regex(/^\d+(\.\d{1,6})?$/, 'must be a non-negative decimal');
|
|
129
|
-
const signedDecimal = z.string().regex(/^-?\d+(\.\d{1,6})?$/, 'must be a decimal');
|
|
130
|
-
/** Every write names its subject: the vertical's opaque noun + the erasure key. */
|
|
131
|
-
export const absenceSubject = z.object({
|
|
132
|
-
ref: entityRef,
|
|
133
|
-
dataSubjectId,
|
|
134
|
-
});
|
|
135
129
|
const toEntry = (r) => ({
|
|
136
130
|
id: r.id,
|
|
137
131
|
subject: { entityType: r.subject_type, entityId: r.subject_id },
|
|
@@ -232,11 +226,6 @@ function insertEntry(ctx, input) {
|
|
|
232
226
|
// transaction. The registered operations below are their default bindings.
|
|
233
227
|
// The CALLER is responsible for the permission check.
|
|
234
228
|
// ---------------------------------------------------------------------------
|
|
235
|
-
export const configureLeaveTypeInput = z.object({
|
|
236
|
-
key: z.string().min(1),
|
|
237
|
-
floor: signedDecimal.optional(),
|
|
238
|
-
active: z.boolean().optional(),
|
|
239
|
-
});
|
|
240
229
|
export function configureLeaveType(ctx, rawInput) {
|
|
241
230
|
const input = configureLeaveTypeInput.parse(rawInput);
|
|
242
231
|
ctx.sql.exec(`INSERT INTO absence_leave_types (key, floor, active, created_at)
|
|
@@ -275,14 +264,6 @@ export function listLeaveTypes(ctx) {
|
|
|
275
264
|
* No floor check here: a correction is the administrator's escape hatch, and
|
|
276
265
|
* accrual/carryover only ever add. The floor guards bookings (D-D).
|
|
277
266
|
*/
|
|
278
|
-
export const recordEntryInput = z.object({
|
|
279
|
-
subject: absenceSubject,
|
|
280
|
-
leaveTypeKey: z.string().min(1),
|
|
281
|
-
entryKind: z.enum(['accrual', 'correction', 'carryover']),
|
|
282
|
-
delta: signedDecimal,
|
|
283
|
-
effectiveDate: isoDate,
|
|
284
|
-
note: z.string().optional(),
|
|
285
|
-
});
|
|
286
267
|
export function recordEntry(ctx, rawInput) {
|
|
287
268
|
const input = recordEntryInput.parse(rawInput);
|
|
288
269
|
getLeaveTypeRow(ctx, input.leaveTypeKey);
|
|
@@ -298,14 +279,6 @@ export function balanceAsOf(ctx, input) {
|
|
|
298
279
|
WHERE subject_type = ? AND subject_id = ? AND leave_type_key = ?`, [input.subject.entityType, input.subject.entityId, input.leaveTypeKey]);
|
|
299
280
|
return rows.reduce((sum, r) => addDecimal(sum, r.delta), '0');
|
|
300
281
|
}
|
|
301
|
-
export const requestAbsenceInput = z.object({
|
|
302
|
-
subject: absenceSubject,
|
|
303
|
-
leaveTypeKey: z.string().min(1),
|
|
304
|
-
startDate: isoDate,
|
|
305
|
-
endDate: isoDate,
|
|
306
|
-
days: posDecimal.refine((d) => compareDecimal(d, '0') > 0, 'days must be positive'),
|
|
307
|
-
note: z.string().optional(),
|
|
308
|
-
});
|
|
309
282
|
export function requestAbsence(ctx, rawInput) {
|
|
310
283
|
const input = requestAbsenceInput.parse(rawInput);
|
|
311
284
|
if (input.endDate < input.startDate) {
|
|
@@ -349,11 +322,6 @@ export function requestAbsence(ctx, rawInput) {
|
|
|
349
322
|
});
|
|
350
323
|
return toRequest(getRequestRow(ctx, id));
|
|
351
324
|
}
|
|
352
|
-
export const decideAbsenceInput = z.object({
|
|
353
|
-
requestId: z.string().min(1),
|
|
354
|
-
decision: z.enum(['approve', 'reject']),
|
|
355
|
-
note: z.string().optional(),
|
|
356
|
-
});
|
|
357
325
|
export function decideAbsence(ctx, rawInput) {
|
|
358
326
|
const input = decideAbsenceInput.parse(rawInput);
|
|
359
327
|
const req = getRequestRow(ctx, input.requestId);
|
|
@@ -426,10 +394,6 @@ export function decideAbsence(ctx, rawInput) {
|
|
|
426
394
|
* with a COMPENSATING reversal entry — "Hugo came back" is a new entry, never
|
|
427
395
|
* an edit (D-E). Rejected/cancelled rows are terminal.
|
|
428
396
|
*/
|
|
429
|
-
export const cancelAbsenceInput = z.object({
|
|
430
|
-
requestId: z.string().min(1),
|
|
431
|
-
reason: z.string().optional(),
|
|
432
|
-
});
|
|
433
397
|
export function cancelAbsence(ctx, rawInput) {
|
|
434
398
|
const input = cancelAbsenceInput.parse(rawInput);
|
|
435
399
|
const req = getRequestRow(ctx, input.requestId);
|
|
@@ -583,13 +547,40 @@ export function availability(ctx, input) {
|
|
|
583
547
|
// ---------------------------------------------------------------------------
|
|
584
548
|
// Default operation bindings — each starts with the permission check.
|
|
585
549
|
// ---------------------------------------------------------------------------
|
|
550
|
+
/**
|
|
551
|
+
* Take a page off a fold (#811).
|
|
552
|
+
*
|
|
553
|
+
* None of this engine's three list reads is kernel-composed, and the reason is
|
|
554
|
+
* structural rather than a shortcut: `absenceEntities` declares exactly one
|
|
555
|
+
* entity, `leave-type`. The ledger and the request book are ROWS this engine
|
|
556
|
+
* owns — an accrual is not something a grant narrows to — so `paged.over` has
|
|
557
|
+
* nothing to name for them, and the leave-type read answers the PROJECTION
|
|
558
|
+
* (`active` as a boolean) rather than the stored row. So the read runs and the
|
|
559
|
+
* page is taken off it, exactly as rally's folds do.
|
|
560
|
+
*
|
|
561
|
+
* `key` must be UNIQUE among the rows and must move in the direction they are
|
|
562
|
+
* sorted; each declaration in `operations.ts` says which field that is.
|
|
563
|
+
*/
|
|
564
|
+
function pageOverFold(rows, page, key, direction = 'asc') {
|
|
565
|
+
const limit = listLimitOf(page.limit);
|
|
566
|
+
const cursor = page.cursor;
|
|
567
|
+
const past = (row) => (direction === 'asc' ? key(row) > cursor : key(row) < cursor);
|
|
568
|
+
const after = cursor === undefined
|
|
569
|
+
? 0
|
|
570
|
+
: (() => {
|
|
571
|
+
const i = rows.findIndex(past);
|
|
572
|
+
return i < 0 ? rows.length : i;
|
|
573
|
+
})();
|
|
574
|
+
return pageOf(rows.slice(after, after + limit), limit, key);
|
|
575
|
+
}
|
|
586
576
|
const configureLeaveTypeOp = async (ctx, input) => {
|
|
587
577
|
assertAllowed(await ctx.check(PERM.configure));
|
|
588
578
|
return configureLeaveType(ctx, input);
|
|
589
579
|
};
|
|
590
|
-
const listLeaveTypesOp = async (ctx) => {
|
|
580
|
+
const listLeaveTypesOp = async (ctx, page) => {
|
|
591
581
|
assertAllowed(await ctx.check(PERM.read));
|
|
592
|
-
|
|
582
|
+
// `key` is the primary key, so it is both the declared order and a unique cursor.
|
|
583
|
+
return pageOverFold(listLeaveTypes(ctx), page ?? {}, (t) => t.key);
|
|
593
584
|
};
|
|
594
585
|
const recordEntryOp = async (ctx, input) => {
|
|
595
586
|
assertAllowed(await ctx.check(PERM.configure));
|
|
@@ -633,17 +624,26 @@ const availabilityOp = async (ctx, input) => {
|
|
|
633
624
|
return availability(ctx, input);
|
|
634
625
|
};
|
|
635
626
|
const listRequestsOp = async (ctx, input) => {
|
|
627
|
+
// The conditional narrow. Declared as a node check (see `operations.ts`),
|
|
628
|
+
// because `refFrom` on an optional field would claim a narrowing that a caller
|
|
629
|
+
// omitting `subject` never gets.
|
|
636
630
|
if (input?.subject) {
|
|
637
631
|
assertAllowed(await ctx.check(PERM.read, entityRef.parse(input.subject)));
|
|
638
632
|
}
|
|
639
633
|
else {
|
|
640
634
|
assertAllowed(await ctx.check(PERM.read));
|
|
641
635
|
}
|
|
642
|
-
|
|
636
|
+
// Newest first, so the walk descends. The id is a ULID: unique, and ordered the
|
|
637
|
+
// same way `created_at` is.
|
|
638
|
+
return pageOverFold(listRequests(ctx, input), input ?? {}, (r) => r.id, 'desc');
|
|
643
639
|
};
|
|
644
640
|
const listEntriesOp = async (ctx, input) => {
|
|
645
641
|
assertAllowed(await ctx.check(PERM.read, entityRef.parse(input.subject)));
|
|
646
|
-
|
|
642
|
+
// `effectiveDate` is the order and is NOT unique — it is caller-supplied, so an
|
|
643
|
+
// accrual dated last year may be written today. The cursor is the
|
|
644
|
+
// (effectiveDate, id) pair the SQL already orders by; `\u0000` separates them
|
|
645
|
+
// because it cannot occur in either half.
|
|
646
|
+
return pageOverFold(listEntries(ctx, input), input, (e) => `${e.effectiveDate}\u0000${e.id}`);
|
|
647
647
|
};
|
|
648
648
|
export const absenceModule = {
|
|
649
649
|
manifest: absenceManifest,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|