@updraft-solutions/mcrit-sdk 0.3.1 → 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.
Files changed (49) hide show
  1. package/dist/chunk-AKLFMP7G.cjs +2525 -0
  2. package/dist/{chunk-MF7G76QS.cjs → chunk-IVMOR5SW.cjs} +26 -1
  3. package/dist/{chunk-D5DUVW34.js → chunk-KIMCBEY7.js} +26 -1
  4. package/dist/chunk-YCIXOVEC.js +2525 -0
  5. package/dist/format/index.cjs +2 -2
  6. package/dist/format/index.d.cts +13 -4
  7. package/dist/format/index.d.ts +13 -4
  8. package/dist/format/index.js +1 -1
  9. package/dist/index.cjs +201 -5
  10. package/dist/index.d.cts +3 -3
  11. package/dist/index.d.ts +3 -3
  12. package/dist/index.js +208 -12
  13. package/dist/schemas/index.cjs +198 -2
  14. package/dist/schemas/index.d.cts +3157 -128
  15. package/dist/schemas/index.d.ts +3157 -128
  16. package/dist/schemas/index.js +201 -5
  17. package/dist/{models-BWmpcfR8.d.cts → training-Der1DPU-.d.cts} +23757 -6528
  18. package/dist/{models-BWmpcfR8.d.ts → training-Der1DPU-.d.ts} +23757 -6528
  19. package/dist/types/index.cjs +1 -1
  20. package/dist/types/index.d.cts +277 -6
  21. package/dist/types/index.d.ts +277 -6
  22. package/dist/types/index.js +1 -1
  23. package/package.json +1 -1
  24. package/src/format/index.ts +51 -5
  25. package/src/index.ts +39 -0
  26. package/src/schemas/common.ts +37 -0
  27. package/src/schemas/course-milestone.ts +78 -0
  28. package/src/schemas/equipment.ts +27 -0
  29. package/src/schemas/form-template.ts +413 -0
  30. package/src/schemas/index.ts +7 -1
  31. package/src/schemas/location-map.ts +175 -0
  32. package/src/schemas/models.ts +110 -28
  33. package/src/schemas/newsletter.ts +362 -0
  34. package/src/schemas/todo.ts +46 -0
  35. package/src/schemas/training.ts +500 -0
  36. package/src/types/ai.ts +85 -0
  37. package/src/types/aircraft-block.ts +23 -0
  38. package/src/types/api.ts +3 -1
  39. package/src/types/background-task.ts +28 -0
  40. package/src/types/compliance.ts +27 -3
  41. package/src/types/index.ts +5 -0
  42. package/src/types/landing-fee.ts +92 -0
  43. package/src/types/models.ts +44 -0
  44. package/src/types/roles.ts +26 -0
  45. package/dist/chunk-7QF3OJ45.cjs +0 -1325
  46. package/dist/chunk-FS5I4MBG.js +0 -1325
  47. package/src/schemas/fee.ts +0 -37
  48. /package/dist/{chunk-LXNCAKJZ.js → chunk-2WJHTRIE.js} +0 -0
  49. /package/dist/{chunk-MOOGM3DW.cjs → chunk-DCEOET63.cjs} +0 -0
@@ -1,1325 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/schemas/common.ts
2
- var _zod = require('zod');
3
- var zNullableBool = _zod.z.boolean().nullable().optional();
4
- var zNetGross = _zod.z.enum(["net", "gross"]).optional();
5
- var zContactDTO = _zod.z.object({
6
- name: _zod.z.string().optional(),
7
- email: _zod.z.string().email().optional(),
8
- phone: _zod.z.string().optional()
9
- });
10
- var zPhpMoneyObject = _zod.z.object({
11
- amount: _zod.z.number(),
12
- currency: _zod.z.string(),
13
- formatted: _zod.z.string()
14
- });
15
- var contactAttributeSchema = _zod.z.object({
16
- name: _zod.z.string().optional(),
17
- email: _zod.z.string().optional(),
18
- phone: _zod.z.string().optional(),
19
- company: _zod.z.string().optional(),
20
- fax: _zod.z.string().optional()
21
- });
22
- var BaseModel = _zod.z.object({
23
- type: _zod.z.string(),
24
- id: _zod.z.number(),
25
- created_at: _zod.z.string(),
26
- updated_at: _zod.z.string()
27
- });
28
- var mediaSchema = _zod.z.object({
29
- type: _zod.z.literal("media"),
30
- id: _zod.z.number(),
31
- description: _zod.z.string().optional(),
32
- collection_name: _zod.z.string().optional(),
33
- conversions: _zod.z.record(_zod.z.string().url()).optional(),
34
- created_at: _zod.z.string().optional(),
35
- updated_at: _zod.z.string().optional(),
36
- url: _zod.z.string().optional(),
37
- mime_type: _zod.z.string().optional(),
38
- file_name: _zod.z.string().optional(),
39
- size: _zod.z.number().optional()
40
- });
41
- var mediaCollection = _zod.z.object({
42
- avatar: mediaSchema.nullable().optional(),
43
- header: mediaSchema.nullable().optional(),
44
- images: _zod.z.array(mediaSchema).nullable().optional(),
45
- documents: _zod.z.array(mediaSchema).nullable().optional()
46
- }).nullable().optional();
47
- var userSchema = _zod.z.object({
48
- type: _zod.z.literal("user"),
49
- id: _zod.z.number(),
50
- name: _zod.z.string(),
51
- email: _zod.z.string().optional(),
52
- mobile: _zod.z.string().optional()
53
- });
54
- var companySchema = _zod.z.object({
55
- type: _zod.z.literal("company"),
56
- id: _zod.z.number(),
57
- name: _zod.z.string(),
58
- media: mediaCollection,
59
- can: _zod.z.record(_zod.z.string(), _zod.z.boolean().nullable()).optional(),
60
- permissions: _zod.z.array(_zod.z.string()).optional(),
61
- ai_landing_fee_invoices_enabled: _zod.z.boolean().optional()
62
- });
63
-
64
- // src/schemas/models.ts
65
-
66
- var baseMembershipSchema = _zod.z.object({
67
- type: _zod.z.literal("membership"),
68
- id: _zod.z.number(),
69
- user_id: _zod.z.number(),
70
- user: userSchema.optional(),
71
- company_id: _zod.z.number(),
72
- company: companySchema.nullable().optional(),
73
- name: _zod.z.string(),
74
- phone: _zod.z.string().nullable().optional(),
75
- status: _zod.z.string(),
76
- instructor: _zod.z.boolean(),
77
- admin: _zod.z.boolean(),
78
- accountant: _zod.z.boolean(),
79
- student: _zod.z.boolean(),
80
- content_creator: _zod.z.boolean(),
81
- charter_client: _zod.z.boolean(),
82
- roles: _zod.z.array(
83
- _zod.z.object({
84
- id: _zod.z.number(),
85
- name: _zod.z.string()
86
- }).passthrough()
87
- ).optional(),
88
- created_at: _zod.z.string(),
89
- updated_at: _zod.z.string(),
90
- can: _zod.z.object({
91
- update: zNullableBool,
92
- deactivate: zNullableBool,
93
- activate: zNullableBool,
94
- delete: zNullableBool
95
- }).optional()
96
- });
97
- var membershipSchema = baseMembershipSchema.extend({
98
- remarks: _zod.z.string().nullable().optional(),
99
- confirmed_at: _zod.z.string().nullable(),
100
- created_at: _zod.z.string(),
101
- updated_at: _zod.z.string()
102
- });
103
- var documentType = _zod.z.object({
104
- label: _zod.z.string(),
105
- description: _zod.z.string(),
106
- documentTypeClass: _zod.z.string(),
107
- requiresFile: _zod.z.boolean().optional(),
108
- fieldDefinitions: _zod.z.object({
109
- base: _zod.z.record(_zod.z.any()).optional(),
110
- data: _zod.z.record(_zod.z.any()).optional()
111
- }).optional(),
112
- validationRules: _zod.z.record(_zod.z.any()).optional()
113
- });
114
- var priceSchema = _zod.z.object({
115
- id: _zod.z.number(),
116
- gross_total: zPhpMoneyObject,
117
- net_total: zPhpMoneyObject,
118
- tax_percentage: _zod.z.number(),
119
- valid_from: _zod.z.string(),
120
- created_at: _zod.z.string(),
121
- updated_at: _zod.z.string(),
122
- input_value: _zod.z.number().optional(),
123
- net_gross: zNetGross
124
- });
125
- var feeSchema = BaseModel.extend({
126
- type: _zod.z.literal("fee"),
127
- id: _zod.z.number(),
128
- price: priceSchema.optional(),
129
- prices: _zod.z.array(priceSchema).optional(),
130
- provider: _zod.z.string().optional(),
131
- company_id: _zod.z.number().optional(),
132
- company: companySchema.optional(),
133
- ident: _zod.z.string().optional(),
134
- category: _zod.z.string().optional(),
135
- subcategory: _zod.z.string().optional(),
136
- title: _zod.z.string().optional(),
137
- relation: _zod.z.array(_zod.z.enum(["booking", "flightLog", "invoice", "instructor"])).optional(),
138
- payment_per: _zod.z.string().optional(),
139
- can: _zod.z.object({
140
- update: zNullableBool,
141
- delete: zNullableBool
142
- }).optional(),
143
- course_count: _zod.z.number().optional(),
144
- count: _zod.z.number().optional(),
145
- variant: _zod.z.string().optional(),
146
- is_optional: _zod.z.boolean().optional(),
147
- input_value: _zod.z.number().optional(),
148
- net_gross: zNetGross,
149
- tax_percentage: _zod.z.string().optional(),
150
- valid_from: _zod.z.string()
151
- });
152
- var courseFeeSchema = feeSchema.extend({
153
- count: _zod.z.number().optional(),
154
- variant: _zod.z.string().optional(),
155
- is_optional: _zod.z.boolean().optional(),
156
- is_initial_payment: _zod.z.boolean().optional()
157
- });
158
- var airplaneSchema = BaseModel.extend({
159
- type: _zod.z.literal("airplane"),
160
- id: _zod.z.number(),
161
- company_id: _zod.z.number(),
162
- registration: _zod.z.string(),
163
- model: _zod.z.string(),
164
- media: mediaCollection.optional(),
165
- fee: feeSchema.optional(),
166
- booking_fee: feeSchema.optional(),
167
- hasFavorited: _zod.z.boolean().optional(),
168
- homebase_id: _zod.z.number().nullable().optional(),
169
- hangar_location_map_feature_id: _zod.z.number().nullable().optional(),
170
- parking_lng: _zod.z.number().nullable().optional(),
171
- parking_lat: _zod.z.number().nullable().optional(),
172
- hangar: _zod.z.object({
173
- id: _zod.z.number(),
174
- name: _zod.z.string().nullable(),
175
- kind: _zod.z.string(),
176
- location_map_id: _zod.z.number()
177
- }).nullable().optional(),
178
- description: _zod.z.string().optional(),
179
- capacity: _zod.z.number().optional(),
180
- manufacturer: _zod.z.string().optional(),
181
- year_of_construction: _zod.z.string().optional(),
182
- span: _zod.z.string().optional(),
183
- height: _zod.z.string().optional(),
184
- length: _zod.z.string().optional(),
185
- ato: _zod.z.boolean().optional(),
186
- restricted_access: _zod.z.boolean().optional(),
187
- global_airplane_id: _zod.z.number().nullable().optional(),
188
- is_master: _zod.z.boolean().optional(),
189
- master_company_id: _zod.z.number().nullable().optional(),
190
- shared_companies: _zod.z.array(_zod.z.object({ id: _zod.z.number(), name: _zod.z.string() })).optional(),
191
- is_simulator: _zod.z.boolean().optional(),
192
- category: _zod.z.string().nullable().optional(),
193
- averageFuelConsumption: _zod.z.string().nullable().optional(),
194
- weightUnitString: _zod.z.string().optional(),
195
- fuelUnitString: _zod.z.string().optional(),
196
- isoCountryCodeFromRegistration: _zod.z.string().optional(),
197
- registrationWithoutSpecialChars: _zod.z.string().nullable().optional(),
198
- equipmentCodes: _zod.z.array(_zod.z.string()).nullable().optional(),
199
- compliance_required: _zod.z.boolean().optional(),
200
- show_on_website: _zod.z.boolean().optional(),
201
- is_public: _zod.z.boolean().optional(),
202
- company_timezone: _zod.z.string().optional(),
203
- defaultFlightType: _zod.z.string().optional(),
204
- defaultFlightRule: _zod.z.string().optional(),
205
- status: _zod.z.string().optional(),
206
- can: _zod.z.object({
207
- view: zNullableBool,
208
- update: zNullableBool,
209
- viewMaintenanceEvents: zNullableBool,
210
- createMaintenanceEvents: zNullableBool,
211
- createBooking: zNullableBool,
212
- createAirplanePermissions: zNullableBool
213
- })
214
- });
215
- var airplaneShareInviteSchema = _zod.z.object({
216
- id: _zod.z.number(),
217
- status: _zod.z.enum(["pending", "accepted", "declined", "withdrawn"]),
218
- responded_at: _zod.z.string().nullable().optional(),
219
- created_at: _zod.z.string().optional(),
220
- global_airplane: _zod.z.object({
221
- id: _zod.z.number(),
222
- registration: _zod.z.string(),
223
- model: _zod.z.string()
224
- }),
225
- master_company: _zod.z.object({ id: _zod.z.number(), name: _zod.z.string() }),
226
- invited_company: _zod.z.object({ id: _zod.z.number(), name: _zod.z.string() })
227
- });
228
- var airplanePermissionSchema = _zod.z.object({
229
- type: _zod.z.literal("airplane_permission"),
230
- id: _zod.z.number(),
231
- airplane_id: _zod.z.number(),
232
- airplane: airplaneSchema.optional(),
233
- membership_id: _zod.z.number(),
234
- membership: baseMembershipSchema.optional(),
235
- notes: _zod.z.string().nullable().optional(),
236
- conditions: _zod.z.string().nullable().optional(),
237
- expires_at: _zod.z.string().nullable().optional(),
238
- is_active: _zod.z.boolean(),
239
- granted_by: userSchema.nullable().optional(),
240
- granted_at: _zod.z.string(),
241
- created_at: _zod.z.string(),
242
- updated_at: _zod.z.string(),
243
- can: _zod.z.object({
244
- view: zNullableBool,
245
- update: zNullableBool,
246
- delete: zNullableBool
247
- }).optional()
248
- });
249
- var landingFeeSchema = _zod.z.object({
250
- id: _zod.z.number(),
251
- airplane_id: _zod.z.number(),
252
- price: priceSchema.optional()
253
- });
254
- var aircraftRatingSchema = _zod.z.object({
255
- id: _zod.z.number(),
256
- manufacturer: _zod.z.string(),
257
- aircraft_model: _zod.z.string(),
258
- licence_endorsement: _zod.z.string(),
259
- is_complex: _zod.z.boolean(),
260
- is_single_pilot: _zod.z.boolean(),
261
- is_high_performance: _zod.z.boolean(),
262
- is_multi_pilot: _zod.z.boolean(),
263
- remarks: _zod.z.string().optional()
264
- });
265
- var userAircraftRatingSchema = _zod.z.object({
266
- id: _zod.z.number(),
267
- user_id: _zod.z.number(),
268
- aircraft_rating_id: _zod.z.number(),
269
- aircraftRating: aircraftRatingSchema,
270
- reminder_enabled: _zod.z.boolean(),
271
- reminder_days: _zod.z.number(),
272
- expires_at: _zod.z.string(),
273
- created_at: _zod.z.string(),
274
- updated_at: _zod.z.string()
275
- });
276
- var userQualificationSchema = _zod.z.object({
277
- id: _zod.z.number(),
278
- user_id: _zod.z.number(),
279
- title: _zod.z.string(),
280
- reminder_enabled: _zod.z.boolean(),
281
- reminder_days: _zod.z.number(),
282
- expires_at: _zod.z.string(),
283
- created_at: _zod.z.string(),
284
- updated_at: _zod.z.string()
285
- });
286
- var airportSchema = _zod.z.object({
287
- type: _zod.z.literal("airport"),
288
- id: _zod.z.number(),
289
- ident: _zod.z.string(),
290
- name: _zod.z.string(),
291
- country: _zod.z.string()
292
- });
293
- var recurringFlightSchema = _zod.z.object({
294
- id: _zod.z.number(),
295
- departure_airport_id: _zod.z.number(),
296
- departure_airport: airportSchema.optional(),
297
- destination_airport_id: _zod.z.number(),
298
- destination_airport: airportSchema.optional(),
299
- dep_time: _zod.z.string(),
300
- arr_time: _zod.z.string()
301
- });
302
- var maintenanceEventSchema = _zod.z.object({
303
- type: _zod.z.literal("maintenanceEvent"),
304
- id: _zod.z.number(),
305
- airplane_id: _zod.z.number(),
306
- company_id: _zod.z.number(),
307
- description: _zod.z.string().nullable(),
308
- remarks: _zod.z.string().nullable(),
309
- scheduled_at: _zod.z.string().nullable(),
310
- completed_at: _zod.z.string().nullable(),
311
- created_at: _zod.z.string(),
312
- updated_at: _zod.z.string(),
313
- elapsed_time: _zod.z.number().nullable(),
314
- remaining_time: _zod.z.number().nullable(),
315
- can: _zod.z.object({
316
- update: zNullableBool
317
- }).optional()
318
- });
319
- var maintenanceEventEstimationSchema = _zod.z.object({
320
- estimated_at: _zod.z.string().nullable().optional(),
321
- actual_at: _zod.z.string().nullable().optional()
322
- });
323
- var maintenanceStatusSchema = _zod.z.object({
324
- intervalSetting: _zod.z.number().optional(),
325
- lastMaintenanceEvent: maintenanceEventSchema.nullable().optional(),
326
- nextMaintenanceEventEstimation: maintenanceEventEstimationSchema.nullable().optional()
327
- });
328
- var extendedAirplaneSchema = airplaneSchema.extend({
329
- manufacturer: _zod.z.string().optional(),
330
- capacity: _zod.z.number().optional(),
331
- description: _zod.z.string().optional(),
332
- homebase_id: _zod.z.number().optional(),
333
- ato: _zod.z.boolean().optional(),
334
- year_of_construction: _zod.z.string().optional(),
335
- span: _zod.z.string().optional(),
336
- height: _zod.z.string().optional(),
337
- length: _zod.z.string().optional(),
338
- empty_weight: _zod.z.string().optional(),
339
- max_takeoff_mass: _zod.z.string().optional(),
340
- max_speed: _zod.z.string().optional(),
341
- max_range: _zod.z.string().optional(),
342
- power: _zod.z.string().optional(),
343
- fuel_type: _zod.z.string().optional(),
344
- oil_min: _zod.z.string().optional(),
345
- oil_max: _zod.z.string().optional(),
346
- oil_type_winter: _zod.z.string().optional(),
347
- oil_type_summer: _zod.z.string().optional(),
348
- minimumCrewCount: _zod.z.number().optional(),
349
- VFR: _zod.z.boolean().optional(),
350
- VFRNight: _zod.z.boolean().optional(),
351
- IFR: _zod.z.boolean().optional(),
352
- IFRKnownIcing: _zod.z.boolean().optional(),
353
- equipment: _zod.z.array(_zod.z.any()).optional(),
354
- contact: contactAttributeSchema.optional(),
355
- hints: _zod.z.object({
356
- booking: _zod.z.object({
357
- ifr: _zod.z.string().optional()
358
- }).optional()
359
- }).optional(),
360
- has_pre_paid_package: _zod.z.boolean().optional(),
361
- fee_id: _zod.z.number().optional(),
362
- booking_fee_id: _zod.z.number().optional(),
363
- logging_required_from: _zod.z.string().optional(),
364
- foreflight_profile_url: _zod.z.string().optional(),
365
- media: _zod.z.object({
366
- avatar: _zod.z.any().optional(),
367
- header: _zod.z.any().optional(),
368
- images: _zod.z.array(_zod.z.any()).optional(),
369
- documents: _zod.z.array(_zod.z.any()).optional()
370
- }).optional(),
371
- master_media: mediaCollection.optional(),
372
- can: _zod.z.object({
373
- update: zNullableBool,
374
- viewMaintenanceEvents: zNullableBool
375
- }).optional()
376
- });
377
- var availSchema = _zod.z.object({
378
- type: _zod.z.literal("avail"),
379
- id: _zod.z.number(),
380
- airplane_id: _zod.z.number(),
381
- title: _zod.z.string(),
382
- etdZ: _zod.z.string(),
383
- etaZ: _zod.z.string(),
384
- can: _zod.z.object({
385
- update: zNullableBool
386
- }).optional()
387
- });
388
- var bookingSchema = BaseModel.extend({
389
- type: _zod.z.literal("booking"),
390
- ifr: _zod.z.boolean().default(false),
391
- airplane_id: _zod.z.number(),
392
- author: userSchema.optional(),
393
- company_id: _zod.z.number(),
394
- company_name: _zod.z.string().nullable().optional(),
395
- company: companySchema.optional(),
396
- airplane: airplaneSchema.optional(),
397
- etdZ: _zod.z.string(),
398
- etaZ: _zod.z.string(),
399
- duration_minutes: _zod.z.number().optional(),
400
- departure_airport_id: _zod.z.number().optional(),
401
- destination_airport_id: _zod.z.number().optional(),
402
- departure_airport: airportSchema.optional(),
403
- destination_airport: airportSchema.optional(),
404
- next_booking_id: _zod.z.number().nullable().optional(),
405
- previous_booking_id: _zod.z.number().nullable().optional(),
406
- maintenance: _zod.z.number().optional(),
407
- is_solo: _zod.z.boolean().optional().default(false),
408
- course_enrollment_id: _zod.z.number().nullable().optional(),
409
- // Minimal linked enrollment, present on booking show/store/update payloads.
410
- // Used by the form prefill registry to derive the J2 Flugauftrag course.
411
- course_enrollment: _zod.z.object({
412
- id: _zod.z.number(),
413
- course_id: _zod.z.number().nullable().optional()
414
- }).nullable().optional(),
415
- crew_assignments: _zod.z.array(
416
- _zod.z.object({
417
- id: _zod.z.number().optional(),
418
- membership_id: _zod.z.number(),
419
- role: _zod.z.string(),
420
- is_pic: _zod.z.boolean().optional(),
421
- membership: _zod.z.any().optional()
422
- })
423
- ).optional(),
424
- contact: zContactDTO.optional(),
425
- remarks: _zod.z.string().optional(),
426
- can: _zod.z.object({
427
- update: zNullableBool
428
- }).optional()
429
- });
430
- var alertSchema = _zod.z.object({
431
- id: _zod.z.number(),
432
- start_time: _zod.z.string(),
433
- finish_time: _zod.z.string(),
434
- can: _zod.z.object({
435
- update: zNullableBool
436
- }).optional()
437
- });
438
- var documentSchema = _zod.z.object({
439
- type: _zod.z.literal("document"),
440
- id: _zod.z.number(),
441
- documentable_type: _zod.z.string(),
442
- documentable_id: _zod.z.number(),
443
- document_type_class: _zod.z.string(),
444
- document_type: documentType.optional(),
445
- title: _zod.z.string().nullable().optional(),
446
- description: _zod.z.string().nullable().optional(),
447
- expires_at: _zod.z.string().nullable().optional(),
448
- is_notifiable: _zod.z.boolean().default(true),
449
- notification_days: _zod.z.number().nullable().optional(),
450
- data: _zod.z.record(_zod.z.any()).nullable().optional(),
451
- created_by: _zod.z.number().nullable().optional(),
452
- updated_by: _zod.z.number().nullable().optional(),
453
- created_at: _zod.z.string(),
454
- updated_at: _zod.z.string(),
455
- media: _zod.z.array(mediaSchema).optional(),
456
- can: _zod.z.object({
457
- update: zNullableBool,
458
- delete: zNullableBool,
459
- share: zNullableBool
460
- }).optional()
461
- });
462
- var documentRequirement = _zod.z.object({
463
- id: _zod.z.number(),
464
- form_requirement_group_id: _zod.z.number(),
465
- form_template_id: _zod.z.number(),
466
- form_template: _zod.z.object({
467
- id: _zod.z.number(),
468
- name: _zod.z.string(),
469
- slug: _zod.z.string().nullable().optional()
470
- }).optional(),
471
- logical_group: _zod.z.string().nullable().optional(),
472
- group_operator: _zod.z.enum(["AND", "OR"]).nullable().optional(),
473
- metadata: _zod.z.object({
474
- min_validity_days: _zod.z.number().optional(),
475
- max_validity_days: _zod.z.number().optional(),
476
- required_fields: _zod.z.array(_zod.z.string()).optional()
477
- }).nullable().optional(),
478
- created_by: _zod.z.number().nullable().optional(),
479
- updated_by: _zod.z.number().nullable().optional(),
480
- created_at: _zod.z.string(),
481
- updated_at: _zod.z.string()
482
- });
483
- var documentRequirementGroup = _zod.z.object({
484
- id: _zod.z.number(),
485
- name: _zod.z.string(),
486
- description: _zod.z.string().nullable().optional(),
487
- target_model_type: _zod.z.string(),
488
- company_id: _zod.z.number().nullable().optional(),
489
- is_default_template: _zod.z.boolean().default(false),
490
- is_active: _zod.z.boolean().default(true),
491
- requirements: _zod.z.array(documentRequirement).optional(),
492
- // Backend uses 'requirements'
493
- documentRequirements: _zod.z.array(documentRequirement).optional(),
494
- // Frontend compatibility
495
- group_operator: _zod.z.enum(["AND", "OR"]).default("AND"),
496
- documentRequirements_count: _zod.z.number().optional(),
497
- assignments_count: _zod.z.number().optional(),
498
- created_by: _zod.z.number().nullable().optional(),
499
- updated_by: _zod.z.number().nullable().optional(),
500
- created_at: _zod.z.string(),
501
- updated_at: _zod.z.string(),
502
- can: _zod.z.object({
503
- update: zNullableBool,
504
- delete: zNullableBool,
505
- assign: zNullableBool
506
- }).optional()
507
- });
508
- var documentRequirementGroupAssignment = _zod.z.object({
509
- id: _zod.z.number(),
510
- assignable_type: _zod.z.string(),
511
- assignable_id: _zod.z.number(),
512
- requirement_group_id: _zod.z.number(),
513
- requirement_group: documentRequirementGroup.optional(),
514
- requirementGroup: documentRequirementGroup.optional(),
515
- // Frontend compatibility
516
- created_at: _zod.z.string(),
517
- updated_at: _zod.z.string()
518
- });
519
- var documentComplianceStatus = _zod.z.object({
520
- overall_compliant: _zod.z.boolean(),
521
- missing_documents: _zod.z.array(
522
- _zod.z.object({
523
- requirement_id: _zod.z.number(),
524
- document_type_class: _zod.z.string(),
525
- document_type: documentType.optional(),
526
- reason: _zod.z.string()
527
- })
528
- ).optional(),
529
- expired_documents: _zod.z.array(
530
- _zod.z.object({
531
- document_id: _zod.z.number(),
532
- document_type_class: _zod.z.string(),
533
- document_type: documentType.optional(),
534
- expired_at: _zod.z.string()
535
- })
536
- ).optional(),
537
- expiring_soon_documents: _zod.z.array(
538
- _zod.z.object({
539
- document_id: _zod.z.number(),
540
- document_type_class: _zod.z.string(),
541
- document_type: documentType.optional(),
542
- expires_at: _zod.z.string(),
543
- days_until_expiry: _zod.z.number()
544
- })
545
- ).optional(),
546
- group_compliance_status: _zod.z.array(
547
- _zod.z.object({
548
- group_id: _zod.z.number(),
549
- group_name: _zod.z.string(),
550
- is_compliant: _zod.z.boolean(),
551
- missing_requirements: _zod.z.array(_zod.z.string()).optional()
552
- })
553
- ).optional()
554
- });
555
- var documentShareSchema = _zod.z.object({
556
- id: _zod.z.number(),
557
- document_id: _zod.z.number(),
558
- document: documentSchema.optional(),
559
- shared_by: _zod.z.number(),
560
- sharer: userSchema.optional(),
561
- shared_with_type: _zod.z.string(),
562
- shared_with_id: _zod.z.number(),
563
- can_download: _zod.z.boolean().default(true),
564
- can_delete: _zod.z.boolean().default(false),
565
- expires_at: _zod.z.string().nullable().optional(),
566
- accessed_at: _zod.z.string().nullable().optional(),
567
- access_count: _zod.z.number().default(0),
568
- created_at: _zod.z.string(),
569
- updated_at: _zod.z.string()
570
- });
571
- var allowedDocumentTypeSchema = _zod.z.object({
572
- label: _zod.z.string(),
573
- description: _zod.z.string(),
574
- documentTypeClass: _zod.z.string(),
575
- requiresFile: _zod.z.boolean(),
576
- category: _zod.z.string().optional(),
577
- fieldDefinitions: _zod.z.object({
578
- base: _zod.z.record(
579
- _zod.z.object({
580
- type: _zod.z.string(),
581
- label: _zod.z.string(),
582
- required: _zod.z.boolean().optional(),
583
- rules: _zod.z.array(_zod.z.any()).optional(),
584
- options: _zod.z.array(_zod.z.any()).optional(),
585
- hint: _zod.z.string().optional()
586
- })
587
- ).optional(),
588
- data: _zod.z.record(
589
- _zod.z.object({
590
- type: _zod.z.string(),
591
- label: _zod.z.string(),
592
- required: _zod.z.boolean().optional(),
593
- rules: _zod.z.array(_zod.z.any()).optional(),
594
- options: _zod.z.array(_zod.z.any()).optional(),
595
- hint: _zod.z.string().optional()
596
- })
597
- ).optional()
598
- }).optional()
599
- });
600
- var flightLogSchema = _zod.z.object({
601
- type: _zod.z.literal("flightLog"),
602
- id: _zod.z.number(),
603
- airplane_id: _zod.z.number(),
604
- airplane: airplaneSchema.optional(),
605
- ac_type: _zod.z.string().nullable().optional(),
606
- ac_reg: _zod.z.string().nullable().optional(),
607
- ac_call: _zod.z.string().nullable().optional(),
608
- booking_id: _zod.z.number().nullable().optional(),
609
- membership_id: _zod.z.number().nullable().optional(),
610
- membership: baseMembershipSchema.optional(),
611
- author_id: _zod.z.number(),
612
- author: userSchema.optional(),
613
- invoice_id: _zod.z.number().nullable().optional(),
614
- special_flight_id: _zod.z.number().nullable().optional(),
615
- etdZ: _zod.z.string(),
616
- etaZ: _zod.z.string(),
617
- duration_minutes: _zod.z.number(),
618
- crew_assignments: _zod.z.array(
619
- _zod.z.object({
620
- id: _zod.z.number().optional(),
621
- membership_id: _zod.z.number(),
622
- role: _zod.z.string(),
623
- is_pic: _zod.z.boolean().optional(),
624
- membership: _zod.z.any().optional()
625
- })
626
- ).optional(),
627
- total_landings: _zod.z.number().nullable().optional(),
628
- full_stop_landings: _zod.z.number().nullable().optional(),
629
- touch_and_gos: _zod.z.number().default(0),
630
- low_approaches: _zod.z.number().default(0),
631
- flight_rule: _zod.z.string().nullable().optional(),
632
- flight_time_type: _zod.z.string().nullable().optional(),
633
- dep_airport_id: _zod.z.number().nullable().optional(),
634
- dep_airport: airportSchema.optional(),
635
- arr_airport_id: _zod.z.number().nullable().optional(),
636
- arr_airport: airportSchema.optional(),
637
- from: _zod.z.string().nullable().optional(),
638
- to: _zod.z.string().nullable().optional(),
639
- costs: zPhpMoneyObject.nullable().optional(),
640
- charge: zPhpMoneyObject.nullable().optional(),
641
- remarks: _zod.z.string().nullable().optional(),
642
- created_at: _zod.z.string(),
643
- updated_at: _zod.z.string(),
644
- can: _zod.z.object({
645
- update: zNullableBool,
646
- delete: zNullableBool
647
- }).optional()
648
- });
649
- var invoiceSchema = _zod.z.object({
650
- type: _zod.z.literal("invoice"),
651
- id: _zod.z.number(),
652
- title: _zod.z.string(),
653
- membership_id: _zod.z.number(),
654
- membership: baseMembershipSchema.optional(),
655
- company_id: _zod.z.number().optional(),
656
- company: companySchema.optional(),
657
- sequence_number: _zod.z.string().nullable().optional(),
658
- order_number: _zod.z.string().nullable().optional(),
659
- invoice_date: _zod.z.string().nullable().optional(),
660
- due_date: _zod.z.string().nullable().optional(),
661
- status: _zod.z.string().nullable().optional(),
662
- paid_status: _zod.z.string().nullable().optional(),
663
- total: zPhpMoneyObject.nullable().optional(),
664
- subtotal: zPhpMoneyObject.nullable().optional(),
665
- tax_amount: zPhpMoneyObject.nullable().optional(),
666
- discount_amount: zPhpMoneyObject.nullable().optional(),
667
- paid_at: _zod.z.string().nullable().optional(),
668
- released_at: _zod.z.string().nullable().optional(),
669
- sent: _zod.z.number().default(0),
670
- viewed: _zod.z.boolean().default(false),
671
- remarks: _zod.z.string().nullable().optional(),
672
- notes: _zod.z.string().nullable().optional(),
673
- recipient_company: _zod.z.string().nullable().optional(),
674
- recipient_name: _zod.z.string().nullable().optional(),
675
- recipient_address_street_1: _zod.z.string().nullable().optional(),
676
- recipient_address_street_2: _zod.z.string().nullable().optional(),
677
- recipient_city: _zod.z.string().nullable().optional(),
678
- recipient_zip: _zod.z.string().nullable().optional(),
679
- recipient_state: _zod.z.string().nullable().optional(),
680
- recipient_country: _zod.z.string().nullable().optional(),
681
- recipient_vat_id: _zod.z.string().nullable().optional(),
682
- issuer_name: _zod.z.string().nullable().optional(),
683
- issuer_address_street_1: _zod.z.string().nullable().optional(),
684
- issuer_address_street_2: _zod.z.string().nullable().optional(),
685
- issuer_city: _zod.z.string().nullable().optional(),
686
- issuer_zip: _zod.z.string().nullable().optional(),
687
- issuer_state: _zod.z.string().nullable().optional(),
688
- created_at: _zod.z.string(),
689
- updated_at: _zod.z.string(),
690
- can: _zod.z.object({
691
- update: zNullableBool,
692
- delete: zNullableBool,
693
- release: zNullableBool,
694
- view: zNullableBool
695
- }).optional()
696
- });
697
- var scheduledFlightSchema = _zod.z.object({
698
- type: _zod.z.literal("scheduledFlight"),
699
- id: _zod.z.number(),
700
- booking_id: _zod.z.number(),
701
- departure_time: _zod.z.string(),
702
- arrival_time: _zod.z.string(),
703
- departure_airport_id: _zod.z.number().nullable().optional(),
704
- departure_airport: airportSchema.optional(),
705
- arrival_airport_id: _zod.z.number().nullable().optional(),
706
- arrival_airport: airportSchema.optional(),
707
- flight_number: _zod.z.string().nullable().optional(),
708
- notes: _zod.z.string().nullable().optional(),
709
- created_at: _zod.z.string(),
710
- updated_at: _zod.z.string()
711
- });
712
- var qualificationSchema = _zod.z.object({
713
- type: _zod.z.literal("qualification"),
714
- id: _zod.z.number(),
715
- title: _zod.z.string(),
716
- description: _zod.z.string().nullable().optional(),
717
- category: _zod.z.string().nullable().optional(),
718
- created_at: _zod.z.string(),
719
- updated_at: _zod.z.string()
720
- });
721
- var expenseSchema = _zod.z.object({
722
- type: _zod.z.literal("expense"),
723
- id: _zod.z.number(),
724
- company_id: _zod.z.number(),
725
- company: companySchema.optional(),
726
- membership_id: _zod.z.number(),
727
- membership: baseMembershipSchema.optional(),
728
- title: _zod.z.string(),
729
- description: _zod.z.string().nullable().optional(),
730
- amount: zPhpMoneyObject,
731
- status: _zod.z.string().nullable().optional(),
732
- expense_date: _zod.z.string().nullable().optional(),
733
- invoice_id: _zod.z.number().nullable().optional(),
734
- created_at: _zod.z.string(),
735
- updated_at: _zod.z.string(),
736
- can: _zod.z.object({
737
- update: zNullableBool,
738
- delete: zNullableBool,
739
- approve: zNullableBool
740
- }).optional()
741
- });
742
- var courseSchema = _zod.z.object({
743
- type: _zod.z.literal("course"),
744
- id: _zod.z.number(),
745
- company_id: _zod.z.number(),
746
- company: companySchema.optional(),
747
- name: _zod.z.string(),
748
- description: _zod.z.string().nullable().optional(),
749
- start_date: _zod.z.string().nullable().optional(),
750
- end_date: _zod.z.string().nullable().optional(),
751
- max_participants: _zod.z.number().nullable().optional(),
752
- price: zPhpMoneyObject.nullable().optional(),
753
- instructor_id: _zod.z.number().nullable().optional(),
754
- instructor: userSchema.optional(),
755
- aircraft_required: _zod.z.boolean().default(false),
756
- qualification_id: _zod.z.number().nullable().optional(),
757
- qualification: qualificationSchema.optional(),
758
- created_at: _zod.z.string(),
759
- updated_at: _zod.z.string(),
760
- can: _zod.z.object({
761
- update: zNullableBool,
762
- delete: zNullableBool,
763
- enroll: zNullableBool
764
- }).optional()
765
- });
766
- var courseEnrollmentMetricsSchema = _zod.z.object({
767
- last_flight_at: _zod.z.string().nullable(),
768
- next_flight_at: _zod.z.string().nullable(),
769
- total_flight_minutes: _zod.z.number().default(0),
770
- flags: _zod.z.record(_zod.z.string(), _zod.z.union([_zod.z.boolean(), _zod.z.number(), _zod.z.string()])).default({}),
771
- calculated_at: _zod.z.string().nullable()
772
- });
773
- var courseEnrollmentSchema = _zod.z.object({
774
- type: _zod.z.literal("course_enrollment").optional(),
775
- id: _zod.z.number(),
776
- course_id: _zod.z.number(),
777
- membership_id: _zod.z.number(),
778
- company_id: _zod.z.number(),
779
- mentor_id: _zod.z.number().nullable().optional(),
780
- status: _zod.z.enum(["enrolled", "completed", "cancelled", "suspended"]),
781
- enrollment_date: _zod.z.string(),
782
- completion_date: _zod.z.string().nullable().optional(),
783
- progress_percentage: _zod.z.number().default(0),
784
- milestone_count: _zod.z.number().optional(),
785
- comments: _zod.z.string().nullable().optional(),
786
- initial_payment_generated: _zod.z.boolean().optional(),
787
- initial_payment_removable: _zod.z.boolean().optional(),
788
- metrics: courseEnrollmentMetricsSchema.optional(),
789
- created_at: _zod.z.string(),
790
- updated_at: _zod.z.string(),
791
- course: courseSchema.optional(),
792
- membership: membershipSchema.optional(),
793
- mentor: userSchema.optional(),
794
- can: _zod.z.object({
795
- view: zNullableBool,
796
- update: zNullableBool,
797
- delete: zNullableBool,
798
- complete: zNullableBool
799
- }).optional()
800
- });
801
- var eventSchema = _zod.z.object({
802
- type: _zod.z.literal("event"),
803
- id: _zod.z.number(),
804
- company_id: _zod.z.number(),
805
- company: companySchema.optional(),
806
- title: _zod.z.string(),
807
- description: _zod.z.string().nullable().optional(),
808
- start_date: _zod.z.string(),
809
- end_date: _zod.z.string().nullable().optional(),
810
- all_day: _zod.z.boolean().default(false),
811
- location: _zod.z.string().nullable().optional(),
812
- category: _zod.z.string().nullable().optional(),
813
- created_by: _zod.z.number(),
814
- creator: userSchema.optional(),
815
- created_at: _zod.z.string(),
816
- updated_at: _zod.z.string(),
817
- can: _zod.z.object({
818
- update: zNullableBool,
819
- delete: zNullableBool,
820
- attend: zNullableBool
821
- }).optional()
822
- });
823
- var addressSchema = _zod.z.object({
824
- type: _zod.z.literal("address"),
825
- id: _zod.z.number(),
826
- company_id: _zod.z.number().nullable().optional(),
827
- addressable_type: _zod.z.string(),
828
- addressable_id: _zod.z.number(),
829
- street: _zod.z.string().nullable().optional(),
830
- house_number: _zod.z.string().nullable().optional(),
831
- postal_code: _zod.z.string().nullable().optional(),
832
- city: _zod.z.string().nullable().optional(),
833
- state: _zod.z.string().nullable().optional(),
834
- country: _zod.z.string().nullable().optional(),
835
- additional_info: _zod.z.string().nullable().optional(),
836
- vat_id: _zod.z.string().nullable().optional(),
837
- created_at: _zod.z.string(),
838
- updated_at: _zod.z.string()
839
- });
840
- var roleSchema = _zod.z.object({
841
- type: _zod.z.literal("role"),
842
- id: _zod.z.number(),
843
- company_id: _zod.z.number(),
844
- name: _zod.z.string(),
845
- description: _zod.z.string().nullable().optional(),
846
- permissions: _zod.z.array(_zod.z.string()).optional(),
847
- created_at: _zod.z.string(),
848
- updated_at: _zod.z.string()
849
- });
850
- var landingSchema = _zod.z.object({
851
- type: _zod.z.literal("landing"),
852
- id: _zod.z.number(),
853
- flight_log_id: _zod.z.number(),
854
- approach_type_id: _zod.z.number().nullable().optional(),
855
- airport_id: _zod.z.number().nullable().optional(),
856
- airport: airportSchema.optional(),
857
- landing_fee_id: _zod.z.number().nullable().optional(),
858
- landing_time: _zod.z.string(),
859
- price: zPhpMoneyObject.nullable().optional(),
860
- created_at: _zod.z.string(),
861
- updated_at: _zod.z.string()
862
- });
863
- var ticketSchema = _zod.z.object({
864
- type: _zod.z.literal("ticket"),
865
- id: _zod.z.number(),
866
- company_id: _zod.z.number().nullable().optional(),
867
- company: companySchema.optional(),
868
- user_id: _zod.z.number(),
869
- user: userSchema.optional(),
870
- assigned_to: _zod.z.number().nullable().optional(),
871
- assignee: userSchema.optional(),
872
- title: _zod.z.string(),
873
- description: _zod.z.string(),
874
- status: _zod.z.string(),
875
- priority: _zod.z.string().nullable().optional(),
876
- category: _zod.z.string().nullable().optional(),
877
- resolved_at: _zod.z.string().nullable().optional(),
878
- created_at: _zod.z.string(),
879
- updated_at: _zod.z.string(),
880
- can: _zod.z.object({
881
- update: zNullableBool,
882
- delete: zNullableBool,
883
- resolve: zNullableBool
884
- }).optional()
885
- });
886
- var runwaySchema = _zod.z.object({
887
- type: _zod.z.literal("runway"),
888
- id: _zod.z.number(),
889
- airport_id: _zod.z.number(),
890
- airport: airportSchema.optional(),
891
- name: _zod.z.string(),
892
- length_m: _zod.z.number().nullable().optional(),
893
- width_m: _zod.z.number().nullable().optional(),
894
- surface: _zod.z.string().nullable().optional(),
895
- heading: _zod.z.number().nullable().optional(),
896
- elevation_m: _zod.z.number().nullable().optional(),
897
- active: _zod.z.boolean().default(true),
898
- created_at: _zod.z.string(),
899
- updated_at: _zod.z.string()
900
- });
901
- var settingSchema = _zod.z.object({
902
- type: _zod.z.literal("setting"),
903
- id: _zod.z.number(),
904
- model_type: _zod.z.string(),
905
- model_id: _zod.z.number(),
906
- key: _zod.z.string(),
907
- value: _zod.z.any(),
908
- created_at: _zod.z.string(),
909
- updated_at: _zod.z.string()
910
- });
911
- var postSchema = _zod.z.object({
912
- type: _zod.z.literal("post"),
913
- id: _zod.z.number(),
914
- company_id: _zod.z.number(),
915
- postable_type: _zod.z.string().nullable().optional(),
916
- postable_id: _zod.z.number().nullable().optional(),
917
- author_id: _zod.z.number(),
918
- author: userSchema.optional(),
919
- title: _zod.z.string().nullable().optional(),
920
- content: _zod.z.string(),
921
- sticky: _zod.z.boolean().default(false),
922
- public: _zod.z.boolean().default(false),
923
- media: mediaCollection.optional(),
924
- created_at: _zod.z.string(),
925
- updated_at: _zod.z.string(),
926
- can: _zod.z.object({
927
- view: zNullableBool,
928
- update: zNullableBool,
929
- delete: zNullableBool,
930
- setFlags: zNullableBool,
931
- restore: zNullableBool,
932
- forceDelete: zNullableBool
933
- }).optional()
934
- });
935
- var commentSchema = _zod.z.object({
936
- type: _zod.z.literal("comment"),
937
- id: _zod.z.number(),
938
- commentable_type: _zod.z.string().optional(),
939
- commentable_id: _zod.z.number().optional(),
940
- parent_id: _zod.z.number().optional().nullable(),
941
- title: _zod.z.string().optional().nullable(),
942
- body: _zod.z.string(),
943
- author_id: _zod.z.number().optional(),
944
- author: userSchema.optional(),
945
- created_at: _zod.z.string(),
946
- updated_at: _zod.z.string().optional(),
947
- children: _zod.z.lazy(() => commentSchema.array()).optional(),
948
- can: _zod.z.object({
949
- view: _zod.z.boolean().optional(),
950
- update: _zod.z.boolean().optional().nullable(),
951
- delete: _zod.z.boolean().optional().nullable(),
952
- reply: _zod.z.boolean().optional(),
953
- viewComments: _zod.z.boolean().optional(),
954
- createComments: _zod.z.boolean().optional()
955
- }).optional()
956
- });
957
- var airplaneIssueSeverityEnum = _zod.z.enum([
958
- "minor",
959
- "major",
960
- "grounding"
961
- ]);
962
- var airplaneIssueStatusEnum = _zod.z.enum(["open", "deferred", "resolved"]);
963
- var airplaneIssueSchema = _zod.z.object({
964
- type: _zod.z.literal("airplaneIssue"),
965
- id: _zod.z.number(),
966
- airplane_id: _zod.z.number(),
967
- title: _zod.z.string().nullable().optional(),
968
- body: _zod.z.string(),
969
- severity: airplaneIssueSeverityEnum,
970
- ata_chapter: _zod.z.string().nullable().optional(),
971
- status: airplaneIssueStatusEnum,
972
- reporter: userSchema.optional(),
973
- resolver: userSchema.optional(),
974
- deferred_at: _zod.z.string().nullable().optional(),
975
- deferred_until: _zod.z.string().nullable().optional(),
976
- deferral_notes: _zod.z.string().nullable().optional(),
977
- resolved_at: _zod.z.string().nullable().optional(),
978
- resolution_notes: _zod.z.string().nullable().optional(),
979
- attachments: _zod.z.array(mediaSchema).optional(),
980
- created_at: _zod.z.string(),
981
- updated_at: _zod.z.string().optional(),
982
- can: _zod.z.object({
983
- view: _zod.z.boolean().nullable().optional(),
984
- update: _zod.z.boolean().nullable().optional(),
985
- resolve: _zod.z.boolean().nullable().optional(),
986
- defer: _zod.z.boolean().nullable().optional(),
987
- reopen: _zod.z.boolean().nullable().optional(),
988
- delete: _zod.z.boolean().nullable().optional()
989
- }).optional()
990
- });
991
- var specialFlightSchema = _zod.z.object({
992
- type: _zod.z.literal("specialFlight"),
993
- id: _zod.z.number(),
994
- company_id: _zod.z.number(),
995
- company: companySchema.optional(),
996
- name: _zod.z.string(),
997
- description: _zod.z.string().nullable().optional(),
998
- fee_id: _zod.z.number().nullable().optional(),
999
- fee: feeSchema.optional(),
1000
- active: _zod.z.boolean().default(true),
1001
- created_at: _zod.z.string(),
1002
- updated_at: _zod.z.string()
1003
- });
1004
- var prePaidPackageSchema = _zod.z.object({
1005
- type: _zod.z.literal("prePaidPackage"),
1006
- id: _zod.z.number(),
1007
- company_id: _zod.z.number(),
1008
- company: companySchema.optional(),
1009
- name: _zod.z.string(),
1010
- description: _zod.z.string().nullable().optional(),
1011
- balance: zPhpMoneyObject,
1012
- initial_amount: zPhpMoneyObject,
1013
- discount_percentage: _zod.z.number().nullable().optional(),
1014
- valid_until: _zod.z.string().nullable().optional(),
1015
- created_at: _zod.z.string(),
1016
- updated_at: _zod.z.string(),
1017
- can: _zod.z.object({
1018
- update: zNullableBool,
1019
- delete: zNullableBool,
1020
- assign: zNullableBool
1021
- }).optional()
1022
- });
1023
- var expenseItemSchema = _zod.z.object({
1024
- type: _zod.z.literal("expenseItem"),
1025
- id: _zod.z.number(),
1026
- company_id: _zod.z.number(),
1027
- company: companySchema.optional(),
1028
- name: _zod.z.string(),
1029
- description: _zod.z.string().nullable().optional(),
1030
- category: _zod.z.string().nullable().optional(),
1031
- active: _zod.z.boolean().default(true),
1032
- created_at: _zod.z.string(),
1033
- updated_at: _zod.z.string()
1034
- });
1035
- var waypointSchema = _zod.z.object({
1036
- type: _zod.z.literal("waypoint"),
1037
- id: _zod.z.number(),
1038
- identifier: _zod.z.string(),
1039
- name: _zod.z.string(),
1040
- latitude: _zod.z.number(),
1041
- longitude: _zod.z.number(),
1042
- elevation_m: _zod.z.number().nullable().optional(),
1043
- country: _zod.z.string().nullable().optional(),
1044
- created_at: _zod.z.string(),
1045
- updated_at: _zod.z.string()
1046
- });
1047
- var approachTypeSchema = _zod.z.object({
1048
- type: _zod.z.literal("approachType"),
1049
- id: _zod.z.number(),
1050
- name: _zod.z.string(),
1051
- abbreviation: _zod.z.string(),
1052
- description: _zod.z.string().nullable().optional(),
1053
- created_at: _zod.z.string(),
1054
- updated_at: _zod.z.string()
1055
- });
1056
-
1057
- // src/schemas/faq.ts
1058
-
1059
- var FaqStatus = /* @__PURE__ */ ((FaqStatus2) => {
1060
- FaqStatus2["PENDING"] = "pending";
1061
- FaqStatus2["APPROVED"] = "approved";
1062
- FaqStatus2["REJECTED"] = "rejected";
1063
- return FaqStatus2;
1064
- })(FaqStatus || {});
1065
- var UserBasicSchema = _zod.z.object({
1066
- id: _zod.z.number(),
1067
- name: _zod.z.string(),
1068
- email: _zod.z.string().email()
1069
- }).nullable();
1070
- var FaqSchema = _zod.z.object({
1071
- type: _zod.z.literal("faq"),
1072
- id: _zod.z.number(),
1073
- company_id: _zod.z.number().nullable(),
1074
- faqable_type: _zod.z.string().nullable(),
1075
- faqable_id: _zod.z.number().nullable(),
1076
- category: _zod.z.string(),
1077
- subcategory: _zod.z.string().nullable(),
1078
- question: _zod.z.string(),
1079
- answer: _zod.z.string().nullable(),
1080
- order: _zod.z.number(),
1081
- is_active: _zod.z.boolean(),
1082
- status: _zod.z.enum(["pending", "approved", "rejected"]),
1083
- submitted_by: _zod.z.number().nullable(),
1084
- reviewed_by: _zod.z.number().nullable(),
1085
- reviewed_at: _zod.z.string().nullable(),
1086
- created_at: _zod.z.string(),
1087
- updated_at: _zod.z.string(),
1088
- submitter: UserBasicSchema.optional(),
1089
- reviewer: UserBasicSchema.optional(),
1090
- is_pending: _zod.z.boolean().optional(),
1091
- is_user_submitted: _zod.z.boolean().optional(),
1092
- can: _zod.z.object({
1093
- view: _zod.z.boolean().optional(),
1094
- update: _zod.z.boolean().optional(),
1095
- delete: _zod.z.boolean().optional(),
1096
- review: _zod.z.boolean().optional(),
1097
- submit: _zod.z.boolean().optional()
1098
- }).optional()
1099
- });
1100
- var SubmitFaqQuestionSchema = _zod.z.object({
1101
- category: _zod.z.string().min(1, "Category is required"),
1102
- subcategory: _zod.z.string().nullable().optional(),
1103
- question: _zod.z.string().min(10, "Question must be at least 10 characters")
1104
- });
1105
- var ReviewFaqSchema = _zod.z.object({
1106
- status: _zod.z.enum(["pending", "approved", "rejected"]),
1107
- answer: _zod.z.string().optional(),
1108
- category: _zod.z.string().optional(),
1109
- subcategory: _zod.z.string().nullable().optional(),
1110
- order: _zod.z.number().optional(),
1111
- is_active: _zod.z.boolean().optional()
1112
- });
1113
-
1114
- // src/schemas/fee.ts
1115
-
1116
- var FeeSchema = _zod.z.object({
1117
- id: _zod.z.number(),
1118
- type: _zod.z.literal("fee").optional(),
1119
- company_id: _zod.z.number(),
1120
- provider: _zod.z.string().nullable().optional(),
1121
- category: _zod.z.string(),
1122
- subcategory: _zod.z.string().nullable().optional(),
1123
- title: _zod.z.string(),
1124
- internal_title: _zod.z.string().nullable().optional(),
1125
- display_title: _zod.z.string().optional(),
1126
- relation: _zod.z.array(_zod.z.enum(["booking", "flightlog", "invoice", "instructor"])).nullable().optional(),
1127
- payment_per: _zod.z.enum(["perSession", "perFlight", "perBooking", "perHour"]).nullable().optional(),
1128
- price: _zod.z.any().optional(),
1129
- prices: _zod.z.array(_zod.z.any()).optional(),
1130
- can: _zod.z.object({
1131
- update: _zod.z.boolean().optional(),
1132
- delete: _zod.z.boolean().optional()
1133
- }).optional()
1134
- });
1135
- var FeeCategoryOptionsSchema = _zod.z.object({
1136
- categories: _zod.z.array(_zod.z.string()),
1137
- subcategories: _zod.z.record(_zod.z.string(), _zod.z.array(_zod.z.string()))
1138
- });
1139
-
1140
- // src/schemas/safety-report.ts
1141
-
1142
- var SafetyReportStatusEnum = _zod.z.enum([
1143
- "new",
1144
- "under_review",
1145
- "action_taken",
1146
- "closed"
1147
- ]);
1148
- var SafetyReportCategorySchema = _zod.z.object({
1149
- id: _zod.z.number(),
1150
- name: _zod.z.string(),
1151
- description: _zod.z.string().nullable(),
1152
- color: _zod.z.string(),
1153
- sort_order: _zod.z.number(),
1154
- is_active: _zod.z.boolean(),
1155
- is_global: _zod.z.boolean().optional(),
1156
- created_at: _zod.z.string().optional(),
1157
- updated_at: _zod.z.string().optional()
1158
- });
1159
- var SafetyReportCategoryFormSchema = _zod.z.object({
1160
- name: _zod.z.string().min(1, "Name is required").max(100, "Name must be at most 100 characters"),
1161
- description: _zod.z.string().max(500).nullable().optional(),
1162
- color: _zod.z.string().regex(/^#[0-9A-Fa-f]{6}$/, "Invalid hex color").nullable().optional(),
1163
- sort_order: _zod.z.number().int().min(0).optional(),
1164
- is_active: _zod.z.boolean().optional()
1165
- });
1166
- var SafetyReportMediaSchema = _zod.z.object({
1167
- id: _zod.z.number(),
1168
- file_name: _zod.z.string(),
1169
- mime_type: _zod.z.string(),
1170
- size: _zod.z.number(),
1171
- url: _zod.z.string().nullable()
1172
- });
1173
- var SafetyReportSchema = _zod.z.object({
1174
- id: _zod.z.number(),
1175
- incident_date: _zod.z.string(),
1176
- location: _zod.z.string().nullable(),
1177
- description: _zod.z.string(),
1178
- status: SafetyReportStatusEnum,
1179
- is_archived: _zod.z.boolean(),
1180
- category: SafetyReportCategorySchema.nullable().optional(),
1181
- attachments: _zod.z.array(SafetyReportMediaSchema).optional(),
1182
- attachments_count: _zod.z.number().optional(),
1183
- created_at: _zod.z.string(),
1184
- updated_at: _zod.z.string(),
1185
- can: _zod.z.record(_zod.z.string(), _zod.z.boolean()).optional()
1186
- });
1187
- var SafetyReportListResponseSchema = _zod.z.object({
1188
- data: _zod.z.array(SafetyReportSchema),
1189
- links: _zod.z.object({
1190
- first: _zod.z.string().nullable().optional(),
1191
- last: _zod.z.string().nullable().optional(),
1192
- prev: _zod.z.string().nullable().optional(),
1193
- next: _zod.z.string().nullable().optional()
1194
- }).optional(),
1195
- meta: _zod.z.object({
1196
- current_page: _zod.z.number(),
1197
- from: _zod.z.number().nullable(),
1198
- last_page: _zod.z.number(),
1199
- per_page: _zod.z.number(),
1200
- to: _zod.z.number().nullable(),
1201
- total: _zod.z.number()
1202
- }).optional()
1203
- });
1204
- var SafetyReportFormSchema = _zod.z.object({
1205
- incident_date: _zod.z.string().min(1, "Incident date is required"),
1206
- location: _zod.z.string().max(255).nullable().optional(),
1207
- description: _zod.z.string().min(10, "Description must be at least 10 characters").max(1e4, "Description must be at most 10000 characters")
1208
- });
1209
- var SafetyReportUpdateSchema = _zod.z.object({
1210
- status: SafetyReportStatusEnum.optional(),
1211
- category_id: _zod.z.number().nullable().optional()
1212
- });
1213
- var SafetyReportFilterSchema = _zod.z.object({
1214
- status: SafetyReportStatusEnum.optional(),
1215
- category_id: _zod.z.number().optional(),
1216
- date_from: _zod.z.string().optional(),
1217
- date_to: _zod.z.string().optional(),
1218
- include_archived: _zod.z.boolean().optional(),
1219
- search: _zod.z.string().optional(),
1220
- sort: _zod.z.enum(["incident_date", "created_at", "status"]).optional(),
1221
- direction: _zod.z.enum(["asc", "desc"]).optional(),
1222
- per_page: _zod.z.number().optional(),
1223
- page: _zod.z.number().optional()
1224
- });
1225
- var SafetyReportSubmissionResponseSchema = _zod.z.object({
1226
- message: _zod.z.string(),
1227
- submitted: _zod.z.boolean()
1228
- });
1229
- var SAFETY_REPORT_STATUS_LABELS = {
1230
- new: "New",
1231
- under_review: "Under Review",
1232
- action_taken: "Action Taken",
1233
- closed: "Closed"
1234
- };
1235
- var SAFETY_REPORT_STATUS_COLORS = {
1236
- new: "info",
1237
- under_review: "warning",
1238
- action_taken: "primary",
1239
- closed: "success"
1240
- };
1241
-
1242
-
1243
-
1244
-
1245
-
1246
-
1247
-
1248
-
1249
-
1250
-
1251
-
1252
-
1253
-
1254
-
1255
-
1256
-
1257
-
1258
-
1259
-
1260
-
1261
-
1262
-
1263
-
1264
-
1265
-
1266
-
1267
-
1268
-
1269
-
1270
-
1271
-
1272
-
1273
-
1274
-
1275
-
1276
-
1277
-
1278
-
1279
-
1280
-
1281
-
1282
-
1283
-
1284
-
1285
-
1286
-
1287
-
1288
-
1289
-
1290
-
1291
-
1292
-
1293
-
1294
-
1295
-
1296
-
1297
-
1298
-
1299
-
1300
-
1301
-
1302
-
1303
-
1304
-
1305
-
1306
-
1307
-
1308
-
1309
-
1310
-
1311
-
1312
-
1313
-
1314
-
1315
-
1316
-
1317
-
1318
-
1319
-
1320
-
1321
-
1322
-
1323
-
1324
-
1325
- exports.zNullableBool = zNullableBool; exports.zNetGross = zNetGross; exports.zContactDTO = zContactDTO; exports.zPhpMoneyObject = zPhpMoneyObject; exports.contactAttributeSchema = contactAttributeSchema; exports.BaseModel = BaseModel; exports.mediaSchema = mediaSchema; exports.mediaCollection = mediaCollection; exports.userSchema = userSchema; exports.companySchema = companySchema; exports.baseMembershipSchema = baseMembershipSchema; exports.membershipSchema = membershipSchema; exports.documentType = documentType; exports.priceSchema = priceSchema; exports.feeSchema = feeSchema; exports.courseFeeSchema = courseFeeSchema; exports.airplaneSchema = airplaneSchema; exports.airplaneShareInviteSchema = airplaneShareInviteSchema; exports.airplanePermissionSchema = airplanePermissionSchema; exports.landingFeeSchema = landingFeeSchema; exports.aircraftRatingSchema = aircraftRatingSchema; exports.userAircraftRatingSchema = userAircraftRatingSchema; exports.userQualificationSchema = userQualificationSchema; exports.airportSchema = airportSchema; exports.recurringFlightSchema = recurringFlightSchema; exports.maintenanceEventSchema = maintenanceEventSchema; exports.maintenanceEventEstimationSchema = maintenanceEventEstimationSchema; exports.maintenanceStatusSchema = maintenanceStatusSchema; exports.extendedAirplaneSchema = extendedAirplaneSchema; exports.availSchema = availSchema; exports.bookingSchema = bookingSchema; exports.alertSchema = alertSchema; exports.documentSchema = documentSchema; exports.documentRequirement = documentRequirement; exports.documentRequirementGroup = documentRequirementGroup; exports.documentRequirementGroupAssignment = documentRequirementGroupAssignment; exports.documentComplianceStatus = documentComplianceStatus; exports.documentShareSchema = documentShareSchema; exports.allowedDocumentTypeSchema = allowedDocumentTypeSchema; exports.flightLogSchema = flightLogSchema; exports.invoiceSchema = invoiceSchema; exports.scheduledFlightSchema = scheduledFlightSchema; exports.qualificationSchema = qualificationSchema; exports.expenseSchema = expenseSchema; exports.courseSchema = courseSchema; exports.courseEnrollmentMetricsSchema = courseEnrollmentMetricsSchema; exports.courseEnrollmentSchema = courseEnrollmentSchema; exports.eventSchema = eventSchema; exports.addressSchema = addressSchema; exports.roleSchema = roleSchema; exports.landingSchema = landingSchema; exports.ticketSchema = ticketSchema; exports.runwaySchema = runwaySchema; exports.settingSchema = settingSchema; exports.postSchema = postSchema; exports.commentSchema = commentSchema; exports.airplaneIssueSeverityEnum = airplaneIssueSeverityEnum; exports.airplaneIssueStatusEnum = airplaneIssueStatusEnum; exports.airplaneIssueSchema = airplaneIssueSchema; exports.specialFlightSchema = specialFlightSchema; exports.prePaidPackageSchema = prePaidPackageSchema; exports.expenseItemSchema = expenseItemSchema; exports.waypointSchema = waypointSchema; exports.approachTypeSchema = approachTypeSchema; exports.FaqStatus = FaqStatus; exports.FaqSchema = FaqSchema; exports.SubmitFaqQuestionSchema = SubmitFaqQuestionSchema; exports.ReviewFaqSchema = ReviewFaqSchema; exports.FeeSchema = FeeSchema; exports.FeeCategoryOptionsSchema = FeeCategoryOptionsSchema; exports.SafetyReportStatusEnum = SafetyReportStatusEnum; exports.SafetyReportCategorySchema = SafetyReportCategorySchema; exports.SafetyReportCategoryFormSchema = SafetyReportCategoryFormSchema; exports.SafetyReportMediaSchema = SafetyReportMediaSchema; exports.SafetyReportSchema = SafetyReportSchema; exports.SafetyReportListResponseSchema = SafetyReportListResponseSchema; exports.SafetyReportFormSchema = SafetyReportFormSchema; exports.SafetyReportUpdateSchema = SafetyReportUpdateSchema; exports.SafetyReportFilterSchema = SafetyReportFilterSchema; exports.SafetyReportSubmissionResponseSchema = SafetyReportSubmissionResponseSchema; exports.SAFETY_REPORT_STATUS_LABELS = SAFETY_REPORT_STATUS_LABELS; exports.SAFETY_REPORT_STATUS_COLORS = SAFETY_REPORT_STATUS_COLORS;