@brite-future-schools-contracts/contracts 1.0.8 → 2.0.2

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 (40) hide show
  1. package/dist/chunk-AEZO7MJD.js +127 -0
  2. package/dist/chunk-AEZO7MJD.js.map +1 -0
  3. package/dist/chunk-IR6JUP6L.js +48 -0
  4. package/dist/chunk-IR6JUP6L.js.map +1 -0
  5. package/dist/chunk-PCHAGP5X.js +1 -0
  6. package/dist/contracts/index.cjs +179 -0
  7. package/dist/contracts/index.cjs.map +1 -0
  8. package/dist/contracts/index.d.cts +201 -0
  9. package/dist/contracts/index.d.ts +158 -9677
  10. package/dist/contracts/index.js +22 -1414
  11. package/dist/contracts/index.js.map +1 -1
  12. package/dist/index.cjs +222 -0
  13. package/dist/index.cjs.map +1 -0
  14. package/dist/index.d.cts +4 -0
  15. package/dist/index.d.ts +2 -2
  16. package/dist/index.js +62 -1538
  17. package/dist/index.js.map +1 -1
  18. package/dist/schemas/index.cjs +181 -0
  19. package/dist/schemas/index.cjs.map +1 -0
  20. package/dist/schemas/index.d.cts +145 -0
  21. package/dist/schemas/index.d.ts +130 -1024
  22. package/dist/schemas/index.js +42 -640
  23. package/dist/schemas/index.js.map +1 -1
  24. package/package.json +32 -59
  25. package/dist/chunk-M6LF6JUL.mjs +0 -557
  26. package/dist/chunk-M6LF6JUL.mjs.map +0 -1
  27. package/dist/chunk-VC6SCJVW.mjs +0 -935
  28. package/dist/chunk-VC6SCJVW.mjs.map +0 -1
  29. package/dist/contracts/index.d.mts +0 -9720
  30. package/dist/contracts/index.mjs +0 -36
  31. package/dist/index.d.mts +0 -4
  32. package/dist/index.mjs +0 -161
  33. package/dist/index.mjs.map +0 -1
  34. package/dist/schemas/index.d.mts +0 -1039
  35. package/dist/schemas/index.mjs +0 -129
  36. package/dist/schemas/index.mjs.map +0 -1
  37. package/src/contracts/index.ts +0 -1209
  38. package/src/index.ts +0 -2
  39. package/src/schemas/index.ts +0 -586
  40. /package/dist/{contracts/index.mjs.map → chunk-PCHAGP5X.js.map} +0 -0
@@ -1,557 +0,0 @@
1
- // src/schemas/index.ts
2
- import { z } from "zod";
3
- var uuidSchema = z.string().uuid();
4
- var paginationSchema = z.object({
5
- page: z.number().int().min(1).default(1),
6
- limit: z.number().int().min(1).max(100).default(20)
7
- });
8
- var dateRangeSchema = z.object({
9
- from: z.string().datetime().optional(),
10
- to: z.string().datetime().optional()
11
- });
12
- var genderEnum = z.enum(["male", "female"]);
13
- var userStatusEnum = z.enum(["active", "inactive", "suspended"]);
14
- var systemRoleEnum = z.enum([
15
- "DIRECTOR",
16
- "PRINCIPAL",
17
- "DEPUTY_PRINCIPAL",
18
- "HOD",
19
- "CLASS_TEACHER",
20
- "SUBJECT_TEACHER",
21
- "BURSAR",
22
- "HR_ADMIN",
23
- "SCHOOL_NURSE",
24
- "LIBRARIAN",
25
- "LAB_TECHNICIAN",
26
- "SPORTS_COACH",
27
- "COUNSELLOR",
28
- "CARETAKER",
29
- "SECURITY",
30
- "KITCHEN_STAFF",
31
- "DRIVER",
32
- "IT_ADMIN",
33
- "STUDENT",
34
- "PARENT",
35
- "ORG_SPONSOR",
36
- "INDIVIDUAL_SPONSOR"
37
- ]);
38
- var loginInputSchema = z.object({
39
- email: z.string().email(),
40
- password: z.string().min(8),
41
- deviceFingerprint: z.string().optional()
42
- });
43
- var loginOutputSchema = z.object({
44
- accessToken: z.string(),
45
- refreshToken: z.string().optional(),
46
- user: z.object({
47
- id: uuidSchema,
48
- firstName: z.string(),
49
- middleName: z.string().nullable(),
50
- lastName: z.string(),
51
- email: z.string().email(),
52
- avatarUrl: z.string().nullable(),
53
- roles: z.array(
54
- z.object({
55
- id: uuidSchema,
56
- name: z.string(),
57
- branchId: uuidSchema.nullable()
58
- })
59
- ),
60
- activeBranchId: uuidSchema.nullable(),
61
- isMfaEnabled: z.boolean()
62
- })
63
- });
64
- var refreshTokenOutputSchema = z.object({
65
- accessToken: z.string()
66
- });
67
- var refreshInputSchema = z.object({
68
- refreshToken: z.string().optional()
69
- });
70
- var mfaVerifyInputSchema = z.object({
71
- totp: z.string().length(6)
72
- });
73
- var changePasswordInputSchema = z.object({
74
- currentPassword: z.string().min(8),
75
- newPassword: z.string().min(8)
76
- });
77
- var userSchema = z.object({
78
- id: uuidSchema,
79
- firstName: z.string(),
80
- middleName: z.string().nullable(),
81
- lastName: z.string(),
82
- email: z.string().email(),
83
- phone: z.string().nullable(),
84
- avatarUrl: z.string().nullable(),
85
- isActive: z.boolean(),
86
- isMfaEnabled: z.boolean(),
87
- lastLoginAt: z.string().datetime().nullable(),
88
- createdAt: z.string().datetime()
89
- });
90
- var branchSchema = z.object({
91
- id: uuidSchema,
92
- name: z.string(),
93
- code: z.string(),
94
- address: z.string(),
95
- county: z.string(),
96
- phone: z.string().nullable(),
97
- email: z.string().email().nullable(),
98
- logoUrl: z.string().nullable(),
99
- motto: z.string().nullable(),
100
- principalId: uuidSchema.nullable(),
101
- mpesaPaybill: z.string().nullable(),
102
- featureFlags: z.record(z.boolean()),
103
- createdAt: z.string().datetime()
104
- });
105
- var createBranchInputSchema = z.object({
106
- name: z.string().min(2).max(100),
107
- code: z.string().min(2).max(20),
108
- address: z.string(),
109
- county: z.string(),
110
- phone: z.string().optional(),
111
- email: z.string().email().optional(),
112
- motto: z.string().optional()
113
- });
114
- var studentStatusEnum = z.enum([
115
- "active",
116
- "transferred",
117
- "graduated",
118
- "suspended",
119
- "withdrawn"
120
- ]);
121
- var studentSchema = z.object({
122
- id: uuidSchema,
123
- branchId: uuidSchema,
124
- admissionNo: z.string(),
125
- nemisNo: z.string().nullable(),
126
- firstName: z.string(),
127
- middleName: z.string().nullable(),
128
- lastName: z.string(),
129
- dateOfBirth: z.string(),
130
- gender: genderEnum,
131
- photoUrl: z.string().nullable(),
132
- bloodGroup: z.string().nullable(),
133
- admissionDate: z.string(),
134
- status: studentStatusEnum,
135
- currentClassId: uuidSchema.nullable(),
136
- createdAt: z.string().datetime()
137
- });
138
- var createStudentInputSchema = z.object({
139
- admissionNo: z.string().min(1),
140
- nemisNo: z.string().optional(),
141
- firstName: z.string().min(1).max(100),
142
- middleName: z.string().max(100).optional(),
143
- lastName: z.string().min(1).max(100),
144
- dateOfBirth: z.string(),
145
- gender: genderEnum,
146
- admissionDate: z.string(),
147
- guardianId: uuidSchema.optional()
148
- });
149
- var listStudentsInputSchema = paginationSchema.extend({
150
- branchId: uuidSchema.optional(),
151
- classId: uuidSchema.optional(),
152
- gradeId: uuidSchema.optional(),
153
- search: z.string().optional(),
154
- status: studentStatusEnum.optional(),
155
- termId: uuidSchema.optional()
156
- });
157
- var guardianSchema = z.object({
158
- id: uuidSchema,
159
- userId: uuidSchema,
160
- firstName: z.string(),
161
- middleName: z.string().nullable(),
162
- lastName: z.string(),
163
- relationship: z.string(),
164
- phone: z.string(),
165
- email: z.string().email().nullable(),
166
- nationalId: z.string().nullable(),
167
- occupation: z.string().nullable(),
168
- address: z.string().nullable()
169
- });
170
- var sponsorTypeEnum = z.enum(["organisation", "individual"]);
171
- var sponsorSchema = z.object({
172
- id: uuidSchema,
173
- branchId: uuidSchema,
174
- type: sponsorTypeEnum,
175
- organisationName: z.string().nullable(),
176
- firstName: z.string().nullable(),
177
- middleName: z.string().nullable(),
178
- lastName: z.string().nullable(),
179
- contactUserId: uuidSchema.nullable(),
180
- phone: z.string(),
181
- email: z.string().email().nullable(),
182
- address: z.string().nullable()
183
- });
184
- var gradeLevelEnum = z.enum([
185
- "PP1",
186
- "PP2",
187
- "G1",
188
- "G2",
189
- "G3",
190
- "G4",
191
- "G5",
192
- "G6",
193
- "G7",
194
- "G8",
195
- "G9"
196
- ]);
197
- var assessmentTypeEnum = z.enum([
198
- "formative",
199
- "summative",
200
- "knec_national",
201
- "informal"
202
- ]);
203
- var rubricBandEnum = z.enum(["EE", "ME", "AE", "BE"]);
204
- var subjectSchema = z.object({
205
- id: uuidSchema,
206
- branchId: uuidSchema,
207
- name: z.string(),
208
- code: z.string(),
209
- gradeLevel: gradeLevelEnum,
210
- departmentId: uuidSchema.nullable()
211
- });
212
- var assessmentScoreInputSchema = z.object({
213
- assessmentId: uuidSchema,
214
- studentId: uuidSchema,
215
- subStrandId: uuidSchema,
216
- numericScore: z.number().min(0).max(100),
217
- comments: z.string().optional()
218
- });
219
- var reportCardStatusEnum = z.enum([
220
- "draft",
221
- "hod_review",
222
- "principal_review",
223
- "released",
224
- "blocked"
225
- ]);
226
- var feeItemCategoryEnum = z.enum([
227
- "compulsory",
228
- "class_specific",
229
- "additive"
230
- ]);
231
- var paymentMethodEnum = z.enum([
232
- "mpesa",
233
- "bank",
234
- "card",
235
- "cash",
236
- "cheque"
237
- ]);
238
- var invoiceStatusEnum = z.enum([
239
- "draft",
240
- "sent",
241
- "partial",
242
- "paid",
243
- "overdue",
244
- "cancelled"
245
- ]);
246
- var feeItemSchema = z.object({
247
- id: uuidSchema,
248
- branchId: uuidSchema,
249
- name: z.string(),
250
- category: feeItemCategoryEnum,
251
- defaultAmount: z.number(),
252
- applicableGrades: z.array(gradeLevelEnum),
253
- isActive: z.boolean()
254
- });
255
- var recordPaymentInputSchema = z.object({
256
- studentId: uuidSchema,
257
- invoiceId: uuidSchema,
258
- amount: z.number().positive(),
259
- method: paymentMethodEnum,
260
- reference: z.string().optional(),
261
- mpesaReceipt: z.string().optional(),
262
- paymentDate: z.string()
263
- });
264
- var employmentTypeEnum = z.enum([
265
- "permanent",
266
- "contract",
267
- "temporary",
268
- "intern"
269
- ]);
270
- var staffSchema = z.object({
271
- id: uuidSchema,
272
- branchId: uuidSchema,
273
- userId: uuidSchema,
274
- firstName: z.string(),
275
- middleName: z.string().nullable(),
276
- lastName: z.string(),
277
- tscNumber: z.string().nullable(),
278
- nationalId: z.string(),
279
- kraPin: z.string().nullable(),
280
- nhifNo: z.string().nullable(),
281
- nssfNo: z.string().nullable(),
282
- phone: z.string(),
283
- departmentId: uuidSchema.nullable(),
284
- designation: z.string(),
285
- employmentType: employmentTypeEnum,
286
- contractStart: z.string(),
287
- contractEnd: z.string().nullable(),
288
- basicSalary: z.number(),
289
- houseAllowance: z.number().default(0),
290
- transportAllowance: z.number().default(0),
291
- bankName: z.string().nullable(),
292
- bankAccount: z.string().nullable(),
293
- status: userStatusEnum
294
- });
295
- var leaveStatusEnum = z.enum([
296
- "pending",
297
- "approved",
298
- "rejected",
299
- "cancelled"
300
- ]);
301
- var leaveRequestInputSchema = z.object({
302
- leaveTypeId: uuidSchema,
303
- startDate: z.string(),
304
- endDate: z.string(),
305
- reason: z.string().min(10)
306
- });
307
- var vehicleOwnershipEnum = z.enum(["owned", "contracted"]);
308
- var vehicleTypeEnum = z.enum(["bus", "van", "pickup", "other"]);
309
- var busRegisterStatusEnum = z.enum(["boarded", "alighted", "absent"]);
310
- var tripLogInputSchema = z.object({
311
- vehicleId: uuidSchema,
312
- routeId: uuidSchema,
313
- departureTime: z.string().datetime(),
314
- tripType: z.enum(["morning", "evening", "errand"])
315
- });
316
- var busRegisterEntrySchema = z.object({
317
- studentId: uuidSchema,
318
- status: busRegisterStatusEnum
319
- });
320
- var vehicleStatusEnum = z.enum(["active", "in_maintenance", "decommissioned"]);
321
- var tripCategoryEnum = z.enum(["regular", "special"]);
322
- var tripStatusEnum = z.enum(["scheduled", "in_progress", "completed", "cancelled"]);
323
- var transportAppStatusEnum = z.enum(["pending", "approved", "rejected", "cancelled"]);
324
- var maintenanceRequestStatusEnum = z.enum(["pending", "approved", "rejected", "resolved"]);
325
- var vehicleSchema = z.object({
326
- id: uuidSchema,
327
- branchId: uuidSchema,
328
- plateNo: z.string(),
329
- make: z.string().nullable(),
330
- model: z.string().nullable(),
331
- capacity: z.number().nullable(),
332
- type: z.string(),
333
- ownershipType: vehicleOwnershipEnum,
334
- insuranceExpiry: z.string().nullable(),
335
- inspectionDate: z.string().nullable(),
336
- status: vehicleStatusEnum,
337
- driverUserId: uuidSchema.nullable(),
338
- notes: z.string().nullable(),
339
- createdAt: z.string().datetime()
340
- });
341
- var routeSchema = z.object({
342
- id: uuidSchema,
343
- branchId: uuidSchema,
344
- name: z.string(),
345
- description: z.string().nullable(),
346
- isActive: z.boolean(),
347
- vehicleId: uuidSchema.nullable(),
348
- routeCategory: z.string(),
349
- departureTime: z.string().nullable(),
350
- returnTime: z.string().nullable(),
351
- fare: z.number().nullable(),
352
- vehicle: z.object({ plateNo: z.string(), type: z.string() }).nullable().optional(),
353
- stops: z.array(z.object({
354
- id: uuidSchema,
355
- stopName: z.string(),
356
- stopOrder: z.number(),
357
- estimatedTime: z.string().nullable()
358
- })).optional(),
359
- roster: z.array(z.object({
360
- studentId: uuidSchema,
361
- studentName: z.string(),
362
- admissionNo: z.string(),
363
- pickupStop: z.string().nullable(),
364
- dropoffStop: z.string().nullable()
365
- })).optional()
366
- });
367
- var tripLogSchema = z.object({
368
- id: uuidSchema,
369
- branchId: uuidSchema,
370
- vehicleId: uuidSchema,
371
- routeId: uuidSchema.nullable(),
372
- driverUserId: uuidSchema,
373
- departureTime: z.string().datetime(),
374
- arrivalTime: z.string().datetime().nullable(),
375
- returnTime: z.string().datetime().nullable(),
376
- tripType: z.string(),
377
- tripCategory: tripCategoryEnum,
378
- status: tripStatusEnum,
379
- title: z.string().nullable(),
380
- description: z.string().nullable(),
381
- destination: z.string().nullable(),
382
- expectedStudents: z.number().nullable(),
383
- notes: z.string().nullable(),
384
- createdAt: z.string().datetime(),
385
- vehicle: z.object({ plateNo: z.string(), type: z.string() }).optional(),
386
- route: z.object({ name: z.string() }).nullable().optional()
387
- });
388
- var maintenanceRequestSchema = z.object({
389
- id: uuidSchema,
390
- vehicleId: uuidSchema,
391
- requestedBy: uuidSchema,
392
- issue: z.string(),
393
- severity: z.string(),
394
- status: maintenanceRequestStatusEnum,
395
- reviewedBy: uuidSchema.nullable(),
396
- reviewNotes: z.string().nullable(),
397
- reviewedAt: z.string().datetime().nullable(),
398
- createdAt: z.string().datetime(),
399
- vehiclePlate: z.string().optional()
400
- });
401
- var transportApplicationSchema = z.object({
402
- id: uuidSchema,
403
- branchId: uuidSchema,
404
- studentId: uuidSchema,
405
- applicationType: z.enum(["route", "trip"]),
406
- routeId: uuidSchema.nullable(),
407
- tripLogId: uuidSchema.nullable(),
408
- status: transportAppStatusEnum,
409
- appliedBy: uuidSchema,
410
- reviewedBy: uuidSchema.nullable(),
411
- reviewNotes: z.string().nullable(),
412
- feeItemId: uuidSchema.nullable(),
413
- invoiceUpdated: z.boolean(),
414
- createdAt: z.string().datetime(),
415
- studentName: z.string().optional(),
416
- routeName: z.string().nullable().optional(),
417
- tripTitle: z.string().nullable().optional()
418
- });
419
- var assetCategoryEnum = z.enum([
420
- "furniture",
421
- "lab_equipment",
422
- "ict_device",
423
- "vehicle",
424
- "sports_equipment",
425
- "kitchen_equipment",
426
- "musical_instrument",
427
- "classroom_supply",
428
- "library_book",
429
- "other"
430
- ]);
431
- var assetConditionEnum = z.enum([
432
- "excellent",
433
- "good",
434
- "fair",
435
- "poor",
436
- "condemned"
437
- ]);
438
- var maintenanceTicketStatusEnum = z.enum([
439
- "open",
440
- "in_progress",
441
- "resolved",
442
- "closed"
443
- ]);
444
- var borrowingStatusEnum = z.enum([
445
- "active",
446
- "returned",
447
- "overdue",
448
- "lost"
449
- ]);
450
- var incidentSeverityEnum = z.enum([
451
- "minor",
452
- "moderate",
453
- "serious",
454
- "critical"
455
- ]);
456
- var incidentStatusEnum = z.enum([
457
- "open",
458
- "counsellor_review",
459
- "hod_review",
460
- "principal_ruling",
461
- "resolved"
462
- ]);
463
- var disciplineRulingEnum = z.enum([
464
- "verbal_warning",
465
- "written_warning",
466
- "suspension",
467
- "expulsion",
468
- "dismissed"
469
- ]);
470
- var payrollRunStatusEnum = z.enum(["draft", "approved", "paid"]);
471
- var notificationTypeEnum = z.enum([
472
- "report_card",
473
- "fee_invoice",
474
- "fee_reminder",
475
- "fee_block",
476
- "attendance_absent",
477
- "bus_departed",
478
- "bus_arrived",
479
- "discipline_incident",
480
- "assignment",
481
- "notice",
482
- "leave",
483
- "payslip"
484
- ]);
485
- var sendBulkSmsInputSchema = z.object({
486
- branchId: uuidSchema,
487
- message: z.string().min(1).max(160),
488
- recipientType: z.enum(["class", "grade", "whole_school", "custom"]),
489
- recipientIds: z.array(uuidSchema).optional(),
490
- scheduleAt: z.string().datetime().optional()
491
- });
492
-
493
- export {
494
- uuidSchema,
495
- paginationSchema,
496
- dateRangeSchema,
497
- genderEnum,
498
- userStatusEnum,
499
- systemRoleEnum,
500
- loginInputSchema,
501
- loginOutputSchema,
502
- refreshTokenOutputSchema,
503
- refreshInputSchema,
504
- mfaVerifyInputSchema,
505
- changePasswordInputSchema,
506
- userSchema,
507
- branchSchema,
508
- createBranchInputSchema,
509
- studentStatusEnum,
510
- studentSchema,
511
- createStudentInputSchema,
512
- listStudentsInputSchema,
513
- guardianSchema,
514
- sponsorTypeEnum,
515
- sponsorSchema,
516
- gradeLevelEnum,
517
- assessmentTypeEnum,
518
- rubricBandEnum,
519
- subjectSchema,
520
- assessmentScoreInputSchema,
521
- reportCardStatusEnum,
522
- feeItemCategoryEnum,
523
- paymentMethodEnum,
524
- invoiceStatusEnum,
525
- feeItemSchema,
526
- recordPaymentInputSchema,
527
- employmentTypeEnum,
528
- staffSchema,
529
- leaveStatusEnum,
530
- leaveRequestInputSchema,
531
- vehicleOwnershipEnum,
532
- vehicleTypeEnum,
533
- busRegisterStatusEnum,
534
- tripLogInputSchema,
535
- busRegisterEntrySchema,
536
- vehicleStatusEnum,
537
- tripCategoryEnum,
538
- tripStatusEnum,
539
- transportAppStatusEnum,
540
- maintenanceRequestStatusEnum,
541
- vehicleSchema,
542
- routeSchema,
543
- tripLogSchema,
544
- maintenanceRequestSchema,
545
- transportApplicationSchema,
546
- assetCategoryEnum,
547
- assetConditionEnum,
548
- maintenanceTicketStatusEnum,
549
- borrowingStatusEnum,
550
- incidentSeverityEnum,
551
- incidentStatusEnum,
552
- disciplineRulingEnum,
553
- payrollRunStatusEnum,
554
- notificationTypeEnum,
555
- sendBulkSmsInputSchema
556
- };
557
- //# sourceMappingURL=chunk-M6LF6JUL.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/schemas/index.ts"],"sourcesContent":["import { z } from \"zod\";\n\n// ─── Primitives ──────────────────────────────────────────────────────────────\n\nexport const uuidSchema = z.string().uuid();\n\nexport const paginationSchema = z.object({\n page: z.number().int().min(1).default(1),\n limit: z.number().int().min(1).max(100).default(20),\n});\n\nexport const dateRangeSchema = z.object({\n from: z.string().datetime().optional(),\n to: z.string().datetime().optional(),\n});\n\n// ─── Enums ───────────────────────────────────────────────────────────────────\n\nexport const genderEnum = z.enum([\"male\", \"female\"]);\n\nexport const userStatusEnum = z.enum([\"active\", \"inactive\", \"suspended\"]);\n\nexport const systemRoleEnum = z.enum([\n \"DIRECTOR\",\n \"PRINCIPAL\",\n \"DEPUTY_PRINCIPAL\",\n \"HOD\",\n \"CLASS_TEACHER\",\n \"SUBJECT_TEACHER\",\n \"BURSAR\",\n \"HR_ADMIN\",\n \"SCHOOL_NURSE\",\n \"LIBRARIAN\",\n \"LAB_TECHNICIAN\",\n \"SPORTS_COACH\",\n \"COUNSELLOR\",\n \"CARETAKER\",\n \"SECURITY\",\n \"KITCHEN_STAFF\",\n \"DRIVER\",\n \"IT_ADMIN\",\n \"STUDENT\",\n \"PARENT\",\n \"ORG_SPONSOR\",\n \"INDIVIDUAL_SPONSOR\",\n]);\n\nexport type SystemRole = z.infer<typeof systemRoleEnum>;\n\n// ─── Auth ─────────────────────────────────────────────────────────────────────\n\nexport const loginInputSchema = z.object({\n email: z.string().email(),\n password: z.string().min(8),\n deviceFingerprint: z.string().optional(),\n});\n\nexport const loginOutputSchema = z.object({\n accessToken: z.string(),\n refreshToken: z.string().optional(),\n user: z.object({\n id: uuidSchema,\n firstName: z.string(),\n middleName: z.string().nullable(),\n lastName: z.string(),\n email: z.string().email(),\n avatarUrl: z.string().nullable(),\n roles: z.array(\n z.object({\n id: uuidSchema,\n name: z.string(),\n branchId: uuidSchema.nullable(),\n }),\n ),\n activeBranchId: uuidSchema.nullable(),\n isMfaEnabled: z.boolean(),\n }),\n});\n\nexport const refreshTokenOutputSchema = z.object({\n accessToken: z.string(),\n});\n\nexport const refreshInputSchema = z.object({\n refreshToken: z.string().optional(),\n});\n\nexport const mfaVerifyInputSchema = z.object({\n totp: z.string().length(6),\n});\n\nexport const changePasswordInputSchema = z.object({\n currentPassword: z.string().min(8),\n newPassword: z.string().min(8),\n});\n\n// ─── User / Profile ───────────────────────────────────────────────────────────\n\nexport const userSchema = z.object({\n id: uuidSchema,\n firstName: z.string(),\n middleName: z.string().nullable(),\n lastName: z.string(),\n email: z.string().email(),\n phone: z.string().nullable(),\n avatarUrl: z.string().nullable(),\n isActive: z.boolean(),\n isMfaEnabled: z.boolean(),\n lastLoginAt: z.string().datetime().nullable(),\n createdAt: z.string().datetime(),\n});\n\n// ─── Branches & Organisation ─────────────────────────────────────────────────\n\nexport const branchSchema = z.object({\n id: uuidSchema,\n name: z.string(),\n code: z.string(),\n address: z.string(),\n county: z.string(),\n phone: z.string().nullable(),\n email: z.string().email().nullable(),\n logoUrl: z.string().nullable(),\n motto: z.string().nullable(),\n principalId: uuidSchema.nullable(),\n mpesaPaybill: z.string().nullable(),\n featureFlags: z.record(z.boolean()),\n createdAt: z.string().datetime(),\n});\n\nexport const createBranchInputSchema = z.object({\n name: z.string().min(2).max(100),\n code: z.string().min(2).max(20),\n address: z.string(),\n county: z.string(),\n phone: z.string().optional(),\n email: z.string().email().optional(),\n motto: z.string().optional(),\n});\n\n// ─── Students ─────────────────────────────────────────────────────────────────\n\nexport const studentStatusEnum = z.enum([\n \"active\",\n \"transferred\",\n \"graduated\",\n \"suspended\",\n \"withdrawn\",\n]);\n\nexport const studentSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n admissionNo: z.string(),\n nemisNo: z.string().nullable(),\n firstName: z.string(),\n middleName: z.string().nullable(),\n lastName: z.string(),\n dateOfBirth: z.string(),\n gender: genderEnum,\n photoUrl: z.string().nullable(),\n bloodGroup: z.string().nullable(),\n admissionDate: z.string(),\n status: studentStatusEnum,\n currentClassId: uuidSchema.nullable(),\n createdAt: z.string().datetime(),\n});\n\nexport const createStudentInputSchema = z.object({\n admissionNo: z.string().min(1),\n nemisNo: z.string().optional(),\n firstName: z.string().min(1).max(100),\n middleName: z.string().max(100).optional(),\n lastName: z.string().min(1).max(100),\n dateOfBirth: z.string(),\n gender: genderEnum,\n admissionDate: z.string(),\n guardianId: uuidSchema.optional(),\n});\n\nexport const listStudentsInputSchema = paginationSchema.extend({\n branchId: uuidSchema.optional(),\n classId: uuidSchema.optional(),\n gradeId: uuidSchema.optional(),\n search: z.string().optional(),\n status: studentStatusEnum.optional(),\n termId: uuidSchema.optional(),\n});\n\n// ─── Guardian / Sponsor ───────────────────────────────────────────────────────\n\nexport const guardianSchema = z.object({\n id: uuidSchema,\n userId: uuidSchema,\n firstName: z.string(),\n middleName: z.string().nullable(),\n lastName: z.string(),\n relationship: z.string(),\n phone: z.string(),\n email: z.string().email().nullable(),\n nationalId: z.string().nullable(),\n occupation: z.string().nullable(),\n address: z.string().nullable(),\n});\n\nexport const sponsorTypeEnum = z.enum([\"organisation\", \"individual\"]);\n\nexport const sponsorSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n type: sponsorTypeEnum,\n organisationName: z.string().nullable(),\n firstName: z.string().nullable(),\n middleName: z.string().nullable(),\n lastName: z.string().nullable(),\n contactUserId: uuidSchema.nullable(),\n phone: z.string(),\n email: z.string().email().nullable(),\n address: z.string().nullable(),\n});\n\n// ─── Academics ────────────────────────────────────────────────────────────────\n\nexport const gradeLevelEnum = z.enum([\n \"PP1\",\n \"PP2\",\n \"G1\",\n \"G2\",\n \"G3\",\n \"G4\",\n \"G5\",\n \"G6\",\n \"G7\",\n \"G8\",\n \"G9\",\n]);\n\nexport const assessmentTypeEnum = z.enum([\n \"formative\",\n \"summative\",\n \"knec_national\",\n \"informal\",\n]);\n\nexport const rubricBandEnum = z.enum([\"EE\", \"ME\", \"AE\", \"BE\"]);\n\nexport const subjectSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n name: z.string(),\n code: z.string(),\n gradeLevel: gradeLevelEnum,\n departmentId: uuidSchema.nullable(),\n});\n\nexport const assessmentScoreInputSchema = z.object({\n assessmentId: uuidSchema,\n studentId: uuidSchema,\n subStrandId: uuidSchema,\n numericScore: z.number().min(0).max(100),\n comments: z.string().optional(),\n});\n\nexport const reportCardStatusEnum = z.enum([\n \"draft\",\n \"hod_review\",\n \"principal_review\",\n \"released\",\n \"blocked\",\n]);\n\n// ─── Finance ──────────────────────────────────────────────────────────────────\n\nexport const feeItemCategoryEnum = z.enum([\n \"compulsory\",\n \"class_specific\",\n \"additive\",\n]);\n\nexport const paymentMethodEnum = z.enum([\n \"mpesa\",\n \"bank\",\n \"card\",\n \"cash\",\n \"cheque\",\n]);\n\nexport const invoiceStatusEnum = z.enum([\n \"draft\",\n \"sent\",\n \"partial\",\n \"paid\",\n \"overdue\",\n \"cancelled\",\n]);\n\nexport const feeItemSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n name: z.string(),\n category: feeItemCategoryEnum,\n defaultAmount: z.number(),\n applicableGrades: z.array(gradeLevelEnum),\n isActive: z.boolean(),\n});\n\nexport const recordPaymentInputSchema = z.object({\n studentId: uuidSchema,\n invoiceId: uuidSchema,\n amount: z.number().positive(),\n method: paymentMethodEnum,\n reference: z.string().optional(),\n mpesaReceipt: z.string().optional(),\n paymentDate: z.string(),\n});\n\n// ─── HR / Staff ───────────────────────────────────────────────────────────────\n\nexport const employmentTypeEnum = z.enum([\n \"permanent\",\n \"contract\",\n \"temporary\",\n \"intern\",\n]);\n\nexport const staffSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n userId: uuidSchema,\n firstName: z.string(),\n middleName: z.string().nullable(),\n lastName: z.string(),\n tscNumber: z.string().nullable(),\n nationalId: z.string(),\n kraPin: z.string().nullable(),\n nhifNo: z.string().nullable(),\n nssfNo: z.string().nullable(),\n phone: z.string(),\n departmentId: uuidSchema.nullable(),\n designation: z.string(),\n employmentType: employmentTypeEnum,\n contractStart: z.string(),\n contractEnd: z.string().nullable(),\n basicSalary: z.number(),\n houseAllowance: z.number().default(0),\n transportAllowance: z.number().default(0),\n bankName: z.string().nullable(),\n bankAccount: z.string().nullable(),\n status: userStatusEnum,\n});\n\nexport const leaveStatusEnum = z.enum([\n \"pending\",\n \"approved\",\n \"rejected\",\n \"cancelled\",\n]);\n\nexport const leaveRequestInputSchema = z.object({\n leaveTypeId: uuidSchema,\n startDate: z.string(),\n endDate: z.string(),\n reason: z.string().min(10),\n});\n\n// ─── Transport ────────────────────────────────────────────────────────────────\n\nexport const vehicleOwnershipEnum = z.enum([\"owned\", \"contracted\"]);\n\nexport const vehicleTypeEnum = z.enum([\"bus\", \"van\", \"pickup\", \"other\"]);\n\nexport const busRegisterStatusEnum = z.enum([\"boarded\", \"alighted\", \"absent\"]);\n\nexport const tripLogInputSchema = z.object({\n vehicleId: uuidSchema,\n routeId: uuidSchema,\n departureTime: z.string().datetime(),\n tripType: z.enum([\"morning\", \"evening\", \"errand\"]),\n});\n\nexport const busRegisterEntrySchema = z.object({\n studentId: uuidSchema,\n status: busRegisterStatusEnum,\n});\n\nexport const vehicleStatusEnum = z.enum([\"active\", \"in_maintenance\", \"decommissioned\"]);\n\nexport const tripCategoryEnum = z.enum([\"regular\", \"special\"]);\n\nexport const tripStatusEnum = z.enum([\"scheduled\", \"in_progress\", \"completed\", \"cancelled\"]);\n\nexport const transportAppStatusEnum = z.enum([\"pending\", \"approved\", \"rejected\", \"cancelled\"]);\n\nexport const maintenanceRequestStatusEnum = z.enum([\"pending\", \"approved\", \"rejected\", \"resolved\"]);\n\nexport const vehicleSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n plateNo: z.string(),\n make: z.string().nullable(),\n model: z.string().nullable(),\n capacity: z.number().nullable(),\n type: z.string(),\n ownershipType: vehicleOwnershipEnum,\n insuranceExpiry: z.string().nullable(),\n inspectionDate: z.string().nullable(),\n status: vehicleStatusEnum,\n driverUserId: uuidSchema.nullable(),\n notes: z.string().nullable(),\n createdAt: z.string().datetime(),\n});\n\nexport const routeSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n name: z.string(),\n description: z.string().nullable(),\n isActive: z.boolean(),\n vehicleId: uuidSchema.nullable(),\n routeCategory: z.string(),\n departureTime: z.string().nullable(),\n returnTime: z.string().nullable(),\n fare: z.number().nullable(),\n vehicle: z.object({ plateNo: z.string(), type: z.string() }).nullable().optional(),\n stops: z.array(z.object({\n id: uuidSchema,\n stopName: z.string(),\n stopOrder: z.number(),\n estimatedTime: z.string().nullable(),\n })).optional(),\n roster: z.array(z.object({\n studentId: uuidSchema,\n studentName: z.string(),\n admissionNo: z.string(),\n pickupStop: z.string().nullable(),\n dropoffStop: z.string().nullable(),\n })).optional(),\n});\n\nexport const tripLogSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n vehicleId: uuidSchema,\n routeId: uuidSchema.nullable(),\n driverUserId: uuidSchema,\n departureTime: z.string().datetime(),\n arrivalTime: z.string().datetime().nullable(),\n returnTime: z.string().datetime().nullable(),\n tripType: z.string(),\n tripCategory: tripCategoryEnum,\n status: tripStatusEnum,\n title: z.string().nullable(),\n description: z.string().nullable(),\n destination: z.string().nullable(),\n expectedStudents: z.number().nullable(),\n notes: z.string().nullable(),\n createdAt: z.string().datetime(),\n vehicle: z.object({ plateNo: z.string(), type: z.string() }).optional(),\n route: z.object({ name: z.string() }).nullable().optional(),\n});\n\nexport const maintenanceRequestSchema = z.object({\n id: uuidSchema,\n vehicleId: uuidSchema,\n requestedBy: uuidSchema,\n issue: z.string(),\n severity: z.string(),\n status: maintenanceRequestStatusEnum,\n reviewedBy: uuidSchema.nullable(),\n reviewNotes: z.string().nullable(),\n reviewedAt: z.string().datetime().nullable(),\n createdAt: z.string().datetime(),\n vehiclePlate: z.string().optional(),\n});\n\nexport const transportApplicationSchema = z.object({\n id: uuidSchema,\n branchId: uuidSchema,\n studentId: uuidSchema,\n applicationType: z.enum([\"route\", \"trip\"]),\n routeId: uuidSchema.nullable(),\n tripLogId: uuidSchema.nullable(),\n status: transportAppStatusEnum,\n appliedBy: uuidSchema,\n reviewedBy: uuidSchema.nullable(),\n reviewNotes: z.string().nullable(),\n feeItemId: uuidSchema.nullable(),\n invoiceUpdated: z.boolean(),\n createdAt: z.string().datetime(),\n studentName: z.string().optional(),\n routeName: z.string().nullable().optional(),\n tripTitle: z.string().nullable().optional(),\n});\n\n// ─── Assets ───────────────────────────────────────────────────────────────────\n\nexport const assetCategoryEnum = z.enum([\n \"furniture\",\n \"lab_equipment\",\n \"ict_device\",\n \"vehicle\",\n \"sports_equipment\",\n \"kitchen_equipment\",\n \"musical_instrument\",\n \"classroom_supply\",\n \"library_book\",\n \"other\",\n]);\n\nexport const assetConditionEnum = z.enum([\n \"excellent\",\n \"good\",\n \"fair\",\n \"poor\",\n \"condemned\",\n]);\n\nexport const maintenanceTicketStatusEnum = z.enum([\n \"open\",\n \"in_progress\",\n \"resolved\",\n \"closed\",\n]);\n\n// ─── Library ──────────────────────────────────────────────────────────────────\n\nexport const borrowingStatusEnum = z.enum([\n \"active\",\n \"returned\",\n \"overdue\",\n \"lost\",\n]);\n\n// ─── Discipline ───────────────────────────────────────────────────────────────\n\nexport const incidentSeverityEnum = z.enum([\n \"minor\",\n \"moderate\",\n \"serious\",\n \"critical\",\n]);\n\nexport const incidentStatusEnum = z.enum([\n \"open\",\n \"counsellor_review\",\n \"hod_review\",\n \"principal_ruling\",\n \"resolved\",\n]);\n\nexport const disciplineRulingEnum = z.enum([\n \"verbal_warning\",\n \"written_warning\",\n \"suspension\",\n \"expulsion\",\n \"dismissed\",\n]);\n\n// ─── Payroll ──────────────────────────────────────────────────────────────────\n\nexport const payrollRunStatusEnum = z.enum([\"draft\", \"approved\", \"paid\"]);\n\n// ─── Communications ───────────────────────────────────────────────────────────\n\nexport const notificationTypeEnum = z.enum([\n \"report_card\",\n \"fee_invoice\",\n \"fee_reminder\",\n \"fee_block\",\n \"attendance_absent\",\n \"bus_departed\",\n \"bus_arrived\",\n \"discipline_incident\",\n \"assignment\",\n \"notice\",\n \"leave\",\n \"payslip\",\n]);\n\nexport const sendBulkSmsInputSchema = z.object({\n branchId: uuidSchema,\n message: z.string().min(1).max(160),\n recipientType: z.enum([\"class\", \"grade\", \"whole_school\", \"custom\"]),\n recipientIds: z.array(uuidSchema).optional(),\n scheduleAt: z.string().datetime().optional(),\n});\n"],"mappings":"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","names":[]}