@updraft-solutions/mcrit-sdk 0.5.0 → 0.7.1
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/{chunk-YCIXOVEC.js → chunk-VNEXO6QQ.js} +194 -81
- package/dist/{chunk-AKLFMP7G.cjs → chunk-Y26FRSPZ.cjs} +195 -82
- package/dist/courses/index.d.cts +2 -2
- package/dist/courses/index.d.ts +2 -2
- package/dist/index.cjs +12 -4
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +24 -16
- package/dist/schemas/index.cjs +10 -2
- package/dist/schemas/index.d.cts +33 -33
- package/dist/schemas/index.d.ts +33 -33
- package/dist/schemas/index.js +9 -1
- package/dist/training-BibD4HsC.d.cts +103080 -0
- package/dist/training-BibD4HsC.d.ts +103080 -0
- package/dist/types/index.d.cts +5 -2
- package/dist/types/index.d.ts +5 -2
- package/package.json +1 -1
- package/src/courses/index.ts +2 -2
- package/src/index.ts +3 -0
- package/src/schemas/common.ts +36 -5
- package/src/schemas/form-template.ts +3 -0
- package/src/schemas/models.ts +165 -82
- package/src/schemas/training.ts +30 -0
- package/src/types/models.ts +3 -0
- package/dist/training-Der1DPU-.d.cts +0 -53405
- package/dist/training-Der1DPU-.d.ts +0 -53405
|
@@ -3,9 +3,11 @@ import { z } from "zod";
|
|
|
3
3
|
var zNullableBool = z.boolean().nullable().optional();
|
|
4
4
|
var zNetGross = z.enum(["net", "gross"]).optional();
|
|
5
5
|
var zContactDTO = z.object({
|
|
6
|
-
name: z.string().optional(),
|
|
7
|
-
email: z.string().
|
|
8
|
-
phone: z.string().optional()
|
|
6
|
+
name: z.string().nullable().optional(),
|
|
7
|
+
email: z.string().nullable().optional(),
|
|
8
|
+
phone: z.string().nullable().optional(),
|
|
9
|
+
company: z.string().nullable().optional(),
|
|
10
|
+
fax: z.string().nullable().optional()
|
|
9
11
|
});
|
|
10
12
|
var zPhpMoneyObject = z.object({
|
|
11
13
|
amount: z.number(),
|
|
@@ -60,8 +62,17 @@ var userSchema = z.object({
|
|
|
60
62
|
type: z.literal("user"),
|
|
61
63
|
id: z.number(),
|
|
62
64
|
name: z.string(),
|
|
63
|
-
|
|
64
|
-
|
|
65
|
+
firstname: z.string().nullable().optional(),
|
|
66
|
+
lastname: z.string().nullable().optional(),
|
|
67
|
+
// email/mobile are gate-guarded server-side (viewMail/viewMobile) and come
|
|
68
|
+
// back null when denied.
|
|
69
|
+
email: z.string().nullable().optional(),
|
|
70
|
+
mobile: z.string().nullable().optional(),
|
|
71
|
+
// UserResource media envelope (avatar/header, present when loaded).
|
|
72
|
+
media: z.object({
|
|
73
|
+
avatar: mediaSchema.nullable().optional(),
|
|
74
|
+
header: mediaSchema.nullable().optional()
|
|
75
|
+
}).optional(),
|
|
65
76
|
// Present only on the authenticated-user payload while an admin
|
|
66
77
|
// impersonation session is active.
|
|
67
78
|
impersonation: impersonationStateSchema.optional()
|
|
@@ -81,7 +92,21 @@ var companySchema = z.object({
|
|
|
81
92
|
// Active AI-feature entitlement keys (per-company subscription gating,
|
|
82
93
|
// e.g. "ai.logbook_import"). Serialized by CompanyResource alongside
|
|
83
94
|
// `permissions[]`; slim payloads may omit it.
|
|
84
|
-
entitlements: z.array(z.string()).optional()
|
|
95
|
+
entitlements: z.array(z.string()).optional(),
|
|
96
|
+
// BaseCompanyResource extras: cached-minified home airport + the
|
|
97
|
+
// distance computed on radius-filtered public listings.
|
|
98
|
+
airport_id: z.number().nullable().optional(),
|
|
99
|
+
airport: z.object({
|
|
100
|
+
id: z.number(),
|
|
101
|
+
ident: z.string(),
|
|
102
|
+
name: z.string(),
|
|
103
|
+
municipality: z.string().nullable().optional(),
|
|
104
|
+
iso_country: z.string().nullable().optional(),
|
|
105
|
+
latitude_deg: z.number().nullable().optional(),
|
|
106
|
+
longitude_deg: z.number().nullable().optional()
|
|
107
|
+
}).nullable().optional(),
|
|
108
|
+
icao: z.string().nullable().optional(),
|
|
109
|
+
distance_in_km: z.number().optional()
|
|
85
110
|
});
|
|
86
111
|
|
|
87
112
|
// src/schemas/models.ts
|
|
@@ -309,7 +334,8 @@ var SignOffTrainingElementFormSchema = z3.object({
|
|
|
309
334
|
var TrainingRecordStatusEnum = z3.enum([
|
|
310
335
|
"draft",
|
|
311
336
|
"awaiting_signatures",
|
|
312
|
-
"signed"
|
|
337
|
+
"signed",
|
|
338
|
+
"invalidated"
|
|
313
339
|
]);
|
|
314
340
|
var TrainingRecordResultEnum = z3.enum(["passed", "failed"]);
|
|
315
341
|
var trainingRecordEntrySchema = z3.object({
|
|
@@ -396,6 +422,18 @@ var trainingRecordSchema = z3.object({
|
|
|
396
422
|
repeat_next_flight: z3.string().nullable().optional(),
|
|
397
423
|
entries: z3.array(trainingRecordEntrySchema),
|
|
398
424
|
signatures: z3.array(trainingSignatureSchema),
|
|
425
|
+
sequence: z3.number().default(1),
|
|
426
|
+
supersedes_id: z3.number().nullable().optional(),
|
|
427
|
+
invalidated_at: z3.string().nullable().optional(),
|
|
428
|
+
invalidated_by: z3.object({ id: z3.number(), name: z3.string().nullable() }).nullable().optional(),
|
|
429
|
+
invalidation_reason: z3.string().nullable().optional(),
|
|
430
|
+
has_archived_pdf: z3.boolean().optional(),
|
|
431
|
+
booking: z3.object({
|
|
432
|
+
id: z3.number(),
|
|
433
|
+
etdZ: z3.string().nullable(),
|
|
434
|
+
airplane_registration: z3.string().nullable()
|
|
435
|
+
}).nullable().optional(),
|
|
436
|
+
instructor: z3.object({ id: z3.number(), name: z3.string().nullable() }).nullable().optional(),
|
|
399
437
|
created_at: z3.string().optional(),
|
|
400
438
|
updated_at: z3.string().optional()
|
|
401
439
|
});
|
|
@@ -413,6 +451,10 @@ var UpsertTrainingRecordFormSchema = z3.object({
|
|
|
413
451
|
instructor_membership_id: z3.number().nullable().optional(),
|
|
414
452
|
entries: z3.array(trainingRecordEntryInputSchema)
|
|
415
453
|
});
|
|
454
|
+
var invalidateTrainingRecordResponseSchema = z3.object({
|
|
455
|
+
record: trainingRecordSchema,
|
|
456
|
+
replacement: trainingRecordSchema.nullable()
|
|
457
|
+
});
|
|
416
458
|
var trainingTemplatePackSchema = z3.object({
|
|
417
459
|
key: z3.string(),
|
|
418
460
|
name: z3.string(),
|
|
@@ -525,7 +567,7 @@ var feeSchema = BaseModel.extend({
|
|
|
525
567
|
is_derived: z4.boolean().optional(),
|
|
526
568
|
relation: z4.array(z4.enum(["booking", "flightLog", "invoice", "instructor"])).nullable().optional(),
|
|
527
569
|
payment_per: z4.string().nullable().optional(),
|
|
528
|
-
can: z4.record(z4.string(),
|
|
570
|
+
can: z4.record(z4.string(), z4.boolean().nullable()).optional(),
|
|
529
571
|
course_count: z4.number().optional(),
|
|
530
572
|
// feeables-pivot fields, present when the fee is serialized through an
|
|
531
573
|
// attachment (course/enrollment listings).
|
|
@@ -608,14 +650,43 @@ var airplaneSchema = BaseModel.extend({
|
|
|
608
650
|
defaultFlightType: z4.string().optional(),
|
|
609
651
|
defaultFlightRule: z4.string().optional(),
|
|
610
652
|
status: z4.string().optional(),
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
653
|
+
// Physical/capability facts — serialized by BaseAirplaneResource on EVERY
|
|
654
|
+
// airplane payload (not just the extended show shape).
|
|
655
|
+
minimumCrewCount: z4.number().optional(),
|
|
656
|
+
classRating: z4.string().nullable().optional(),
|
|
657
|
+
typeRating: z4.string().nullable().optional(),
|
|
658
|
+
VFR: z4.boolean().optional(),
|
|
659
|
+
VFRNight: z4.boolean().optional(),
|
|
660
|
+
IFR: z4.boolean().optional(),
|
|
661
|
+
IFRKnownIcing: z4.boolean().optional(),
|
|
662
|
+
power: z4.string().optional(),
|
|
663
|
+
fuel_type: z4.string().optional(),
|
|
664
|
+
oil_min: z4.string().optional(),
|
|
665
|
+
oil_max: z4.string().optional(),
|
|
666
|
+
oil_type_winter: z4.string().optional(),
|
|
667
|
+
oil_type_summer: z4.string().optional(),
|
|
668
|
+
empty_weight: z4.string().optional(),
|
|
669
|
+
max_takeoff_mass: z4.string().optional(),
|
|
670
|
+
max_speed: z4.string().optional(),
|
|
671
|
+
max_range: z4.string().optional(),
|
|
672
|
+
equipment: z4.array(equipmentSchema).optional(),
|
|
673
|
+
has_pre_paid_package: z4.boolean().optional(),
|
|
674
|
+
logging_required_from: z4.string().optional(),
|
|
675
|
+
fee_id: z4.number().nullable().optional(),
|
|
676
|
+
booking_fee_id: z4.number().nullable().optional(),
|
|
677
|
+
homebase: z4.object({
|
|
678
|
+
id: z4.number(),
|
|
679
|
+
ident: z4.string().optional(),
|
|
680
|
+
name: z4.string().optional()
|
|
681
|
+
}).nullable().optional(),
|
|
682
|
+
// Loose record on purpose: gates are policy-reflected server-side and
|
|
683
|
+
// grow over time — same convention as companySchema.
|
|
684
|
+
can: z4.record(z4.string(), z4.boolean().nullable()).optional()
|
|
685
|
+
});
|
|
686
|
+
var aircraftPositionSchema = z4.object({
|
|
687
|
+
lat: z4.number().nullable().optional(),
|
|
688
|
+
lon: z4.number().nullable().optional(),
|
|
689
|
+
timestamp: z4.union([z4.string(), z4.number()]).nullable().optional()
|
|
619
690
|
});
|
|
620
691
|
var airplaneShareInviteSchema = z4.object({
|
|
621
692
|
id: z4.number(),
|
|
@@ -739,53 +810,22 @@ var maintenanceStatusSchema = z4.object({
|
|
|
739
810
|
nextMaintenanceEventEstimation: maintenanceEventEstimationSchema.nullable().optional()
|
|
740
811
|
});
|
|
741
812
|
var extendedAirplaneSchema = airplaneSchema.extend({
|
|
742
|
-
manufacturer: z4.string().optional(),
|
|
743
|
-
capacity: z4.number().optional(),
|
|
744
|
-
description: z4.string().optional(),
|
|
745
|
-
homebase_id: z4.number().optional(),
|
|
746
|
-
ato: z4.boolean().optional(),
|
|
747
|
-
year_of_construction: z4.string().optional(),
|
|
748
|
-
span: z4.string().optional(),
|
|
749
|
-
height: z4.string().optional(),
|
|
750
|
-
length: z4.string().optional(),
|
|
751
|
-
empty_weight: z4.string().optional(),
|
|
752
|
-
max_takeoff_mass: z4.string().optional(),
|
|
753
|
-
max_speed: z4.string().optional(),
|
|
754
|
-
max_range: z4.string().optional(),
|
|
755
|
-
power: z4.string().optional(),
|
|
756
|
-
fuel_type: z4.string().optional(),
|
|
757
|
-
oil_min: z4.string().optional(),
|
|
758
|
-
oil_max: z4.string().optional(),
|
|
759
|
-
oil_type_winter: z4.string().optional(),
|
|
760
|
-
oil_type_summer: z4.string().optional(),
|
|
761
|
-
minimumCrewCount: z4.number().optional(),
|
|
762
|
-
VFR: z4.boolean().optional(),
|
|
763
|
-
VFRNight: z4.boolean().optional(),
|
|
764
|
-
IFR: z4.boolean().optional(),
|
|
765
|
-
IFRKnownIcing: z4.boolean().optional(),
|
|
766
|
-
equipment: z4.array(equipmentSchema).optional(),
|
|
767
813
|
contact: contactAttributeSchema.optional(),
|
|
768
814
|
hints: z4.object({
|
|
769
815
|
booking: z4.object({
|
|
770
816
|
ifr: z4.string().optional()
|
|
771
817
|
}).optional()
|
|
772
818
|
}).optional(),
|
|
773
|
-
has_pre_paid_package: z4.boolean().optional(),
|
|
774
|
-
fee_id: z4.number().optional(),
|
|
775
|
-
booking_fee_id: z4.number().optional(),
|
|
776
|
-
logging_required_from: z4.string().optional(),
|
|
777
819
|
foreflight_profile_url: z4.string().optional(),
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
viewMaintenanceEvents: zNullableBool
|
|
788
|
-
}).optional()
|
|
820
|
+
company: companySchema.optional(),
|
|
821
|
+
latestPosition: aircraftPositionSchema.nullable().optional(),
|
|
822
|
+
total_flight_time_minutes: z4.number().nullable().optional(),
|
|
823
|
+
elapsed_time: z4.number().nullable().optional(),
|
|
824
|
+
remaining_time: z4.number().nullable().optional(),
|
|
825
|
+
completed_at: z4.string().nullable().optional(),
|
|
826
|
+
flight_log_enabled: z4.boolean().optional(),
|
|
827
|
+
latest_maintenance_event: maintenanceEventSchema.nullable().optional(),
|
|
828
|
+
master_media: mediaCollection.optional()
|
|
789
829
|
});
|
|
790
830
|
var availSchema = z4.object({
|
|
791
831
|
type: z4.literal("avail"),
|
|
@@ -811,6 +851,21 @@ var bookingWaypointSchema = z4.object({
|
|
|
811
851
|
longitude_deg: z4.number().nullable().optional()
|
|
812
852
|
}).nullable().optional()
|
|
813
853
|
});
|
|
854
|
+
var activitySchema = z4.object({
|
|
855
|
+
id: z4.number(),
|
|
856
|
+
log_name: z4.string().nullable().optional(),
|
|
857
|
+
description: z4.string().optional(),
|
|
858
|
+
event: z4.string().nullable().optional(),
|
|
859
|
+
subject_type: z4.string().nullable().optional(),
|
|
860
|
+
subject_id: z4.number().nullable().optional(),
|
|
861
|
+
causer_type: z4.string().nullable().optional(),
|
|
862
|
+
causer_id: z4.number().nullable().optional(),
|
|
863
|
+
causer: userSchema.nullable().optional(),
|
|
864
|
+
properties: z4.record(z4.string(), z4.unknown()).optional(),
|
|
865
|
+
batch_uuid: z4.string().nullable().optional(),
|
|
866
|
+
created_at: z4.string().optional(),
|
|
867
|
+
updated_at: z4.string().optional()
|
|
868
|
+
});
|
|
814
869
|
var bookingSchema = BaseModel.extend({
|
|
815
870
|
type: z4.literal("booking"),
|
|
816
871
|
ifr: z4.boolean().default(false),
|
|
@@ -855,9 +910,17 @@ var bookingSchema = BaseModel.extend({
|
|
|
855
910
|
).optional(),
|
|
856
911
|
contact: zContactDTO.optional(),
|
|
857
912
|
remarks: z4.string().optional(),
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
913
|
+
ac_call: z4.string().nullable().optional(),
|
|
914
|
+
ac_type: z4.string().nullable().optional(),
|
|
915
|
+
// Audit trail (BookingResource `activities`, present when eager-loaded).
|
|
916
|
+
activities: z4.array(activitySchema).optional(),
|
|
917
|
+
// Present when eager-loaded (BookingResource conditional appends). Lazy:
|
|
918
|
+
// both schemas are declared later in this file; there is no true cycle.
|
|
919
|
+
flight_logs: z4.array(z4.lazy(() => flightLogSchema)).optional(),
|
|
920
|
+
expense_items: z4.array(z4.lazy(() => expenseItemSchema)).optional(),
|
|
921
|
+
// Loose record on purpose: gates are policy-reflected server-side and
|
|
922
|
+
// grow over time — same convention as companySchema.
|
|
923
|
+
can: z4.record(z4.string(), z4.boolean().nullable()).optional()
|
|
861
924
|
});
|
|
862
925
|
var alertSchema = z4.object({
|
|
863
926
|
id: z4.number(),
|
|
@@ -1034,6 +1097,9 @@ var flightLogSchema = z4.object({
|
|
|
1034
1097
|
id: z4.number(),
|
|
1035
1098
|
airplane_id: z4.number(),
|
|
1036
1099
|
airplane: airplaneSchema.optional(),
|
|
1100
|
+
// Present when eager-loaded (FlightLogResource, camelCase key). Lazy:
|
|
1101
|
+
// expenseItemSchema is declared later in this file; there is no true cycle.
|
|
1102
|
+
expenseItems: z4.array(z4.lazy(() => expenseItemSchema)).optional(),
|
|
1037
1103
|
ac_type: z4.string().nullable().optional(),
|
|
1038
1104
|
ac_reg: z4.string().nullable().optional(),
|
|
1039
1105
|
ac_call: z4.string().nullable().optional(),
|
|
@@ -1117,14 +1183,28 @@ var invoiceSchema = z4.object({
|
|
|
1117
1183
|
issuer_city: z4.string().nullable().optional(),
|
|
1118
1184
|
issuer_zip: z4.string().nullable().optional(),
|
|
1119
1185
|
issuer_state: z4.string().nullable().optional(),
|
|
1186
|
+
issuer_bank_name: z4.string().nullable().optional(),
|
|
1187
|
+
issuer_bic: z4.string().nullable().optional(),
|
|
1188
|
+
issuer_iban: z4.string().nullable().optional(),
|
|
1189
|
+
issuer_email: z4.string().nullable().optional(),
|
|
1190
|
+
issuer_phone: z4.string().nullable().optional(),
|
|
1191
|
+
issuer_vat_id: z4.string().nullable().optional(),
|
|
1192
|
+
issuer_register_court: z4.string().nullable().optional(),
|
|
1193
|
+
issuer_register_number: z4.string().nullable().optional(),
|
|
1194
|
+
gross_total: zPhpMoneyObject.nullable().optional(),
|
|
1195
|
+
net_total: zPhpMoneyObject.nullable().optional(),
|
|
1196
|
+
// InvoiceResource media envelope: only the generated PDF.
|
|
1197
|
+
media: z4.object({
|
|
1198
|
+
pdf: mediaSchema.nullable().optional()
|
|
1199
|
+
}).optional(),
|
|
1200
|
+
pdf: z4.string().nullable().optional(),
|
|
1201
|
+
// Audit trail (InvoiceResource `activities`, present when eager-loaded).
|
|
1202
|
+
activities: z4.array(activitySchema).optional(),
|
|
1120
1203
|
created_at: z4.string(),
|
|
1121
1204
|
updated_at: z4.string(),
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
release: zNullableBool,
|
|
1126
|
-
view: zNullableBool
|
|
1127
|
-
}).optional()
|
|
1205
|
+
// Loose record on purpose: gates are policy-reflected server-side and
|
|
1206
|
+
// grow over time — same convention as companySchema.
|
|
1207
|
+
can: z4.record(z4.string(), z4.boolean().nullable()).optional()
|
|
1128
1208
|
});
|
|
1129
1209
|
var scheduledFlightSchema = z4.object({
|
|
1130
1210
|
type: z4.literal("scheduledFlight"),
|
|
@@ -1207,11 +1287,19 @@ var courseSchema = z4.object({
|
|
|
1207
1287
|
// Present only when the backend eager-loaded `checkSyllabi`.
|
|
1208
1288
|
check_syllabi: z4.array(courseCheckSyllabusSchema).optional(),
|
|
1209
1289
|
tags: z4.array(tagSchema).optional(),
|
|
1290
|
+
// Attached fees (feeables pivot) + fees derived from them, when loaded.
|
|
1291
|
+
fees: z4.array(courseFeeSchema).optional(),
|
|
1292
|
+
derived_fees: z4.array(feeSchema).optional(),
|
|
1293
|
+
fees_count: z4.number().optional(),
|
|
1294
|
+
is_public: z4.boolean().optional(),
|
|
1295
|
+
kind: z4.string().optional(),
|
|
1296
|
+
version: z4.number().optional(),
|
|
1297
|
+
media: mediaCollection,
|
|
1210
1298
|
created_at: z4.string(),
|
|
1211
1299
|
updated_at: z4.string(),
|
|
1212
1300
|
// Loose record on purpose: gates are policy-reflected server-side and
|
|
1213
1301
|
// grow over time (useAssistant, …) — same convention as companySchema.
|
|
1214
|
-
can: z4.record(z4.string(),
|
|
1302
|
+
can: z4.record(z4.string(), z4.boolean().nullable()).optional()
|
|
1215
1303
|
});
|
|
1216
1304
|
var courseEnrollmentMetricsSchema = z4.object({
|
|
1217
1305
|
last_flight_at: z4.string().nullable(),
|
|
@@ -1245,9 +1333,29 @@ var courseEnrollmentSchema = z4.object({
|
|
|
1245
1333
|
course: courseSchema.optional(),
|
|
1246
1334
|
membership: membershipSchema.optional(),
|
|
1247
1335
|
mentor: userSchema.optional(),
|
|
1336
|
+
// Present when eager-loaded (BaseCourseEnrollmentResource). Lazy: both
|
|
1337
|
+
// schemas are declared later in this file; there is no true cycle.
|
|
1338
|
+
expense_items: z4.array(z4.lazy(() => expenseItemSchema)).optional(),
|
|
1339
|
+
bookings: z4.array(bookingSchema).optional(),
|
|
1248
1340
|
// Loose record on purpose: gates are policy-reflected server-side and
|
|
1249
1341
|
// grow over time (updateTraining, manageInitialPayment, …).
|
|
1250
|
-
can: z4.record(z4.string(),
|
|
1342
|
+
can: z4.record(z4.string(), z4.boolean().nullable()).optional()
|
|
1343
|
+
});
|
|
1344
|
+
var membershipSignupSchema = z4.object({
|
|
1345
|
+
id: z4.number(),
|
|
1346
|
+
membership_id: z4.number(),
|
|
1347
|
+
created_at: z4.string().optional(),
|
|
1348
|
+
membership: z4.object({
|
|
1349
|
+
id: z4.number(),
|
|
1350
|
+
user_id: z4.number().nullable().optional(),
|
|
1351
|
+
name: z4.string(),
|
|
1352
|
+
user: z4.object({
|
|
1353
|
+
name: z4.string(),
|
|
1354
|
+
firstname: z4.string().nullable().optional(),
|
|
1355
|
+
lastname: z4.string().nullable().optional(),
|
|
1356
|
+
email: z4.string().nullable().optional()
|
|
1357
|
+
}).nullable().optional()
|
|
1358
|
+
}).nullable().optional()
|
|
1251
1359
|
});
|
|
1252
1360
|
var eventSchema = z4.object({
|
|
1253
1361
|
type: z4.literal("event"),
|
|
@@ -1256,20 +1364,18 @@ var eventSchema = z4.object({
|
|
|
1256
1364
|
company: companySchema.optional(),
|
|
1257
1365
|
title: z4.string(),
|
|
1258
1366
|
description: z4.string().nullable().optional(),
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
attend: zNullableBool
|
|
1272
|
-
}).optional()
|
|
1367
|
+
media: mediaCollection,
|
|
1368
|
+
signups: z4.array(membershipSignupSchema).optional(),
|
|
1369
|
+
signups_count: z4.number().optional(),
|
|
1370
|
+
is_public: z4.boolean(),
|
|
1371
|
+
contact: zContactDTO.nullable().optional(),
|
|
1372
|
+
start: z4.string(),
|
|
1373
|
+
end: z4.string().nullable().optional(),
|
|
1374
|
+
registrationDeadline: z4.string().nullable().optional(),
|
|
1375
|
+
registrationIsBinding: z4.boolean(),
|
|
1376
|
+
// Loose record on purpose: gates are policy-reflected server-side and
|
|
1377
|
+
// grow over time — same convention as companySchema.
|
|
1378
|
+
can: z4.record(z4.string(), z4.boolean().nullable()).optional()
|
|
1273
1379
|
});
|
|
1274
1380
|
var addressSchema = z4.object({
|
|
1275
1381
|
type: z4.literal("address"),
|
|
@@ -1820,6 +1926,9 @@ var SignatureSchema = z7.object({
|
|
|
1820
1926
|
status: z7.enum(["pending", "signed", "revoked"]),
|
|
1821
1927
|
required_signer_membership_id: z7.number().nullable(),
|
|
1822
1928
|
required_signer_name: z7.string().nullable().optional(),
|
|
1929
|
+
// Group designation: any member holding this permission at the template's
|
|
1930
|
+
// company may sign (e.g. "formSubmission.signAsCompany").
|
|
1931
|
+
required_signer_permission: z7.string().nullable().optional(),
|
|
1823
1932
|
signed_by_user_id: z7.number().nullable(),
|
|
1824
1933
|
signed_by_membership_id: z7.number().nullable(),
|
|
1825
1934
|
signed_by_name: z7.string().nullable().optional(),
|
|
@@ -2386,6 +2495,7 @@ export {
|
|
|
2386
2495
|
trainingSignatureSchema,
|
|
2387
2496
|
trainingRecordSchema,
|
|
2388
2497
|
UpsertTrainingRecordFormSchema,
|
|
2498
|
+
invalidateTrainingRecordResponseSchema,
|
|
2389
2499
|
trainingTemplatePackSchema,
|
|
2390
2500
|
CreateSyllabusFromTemplateFormSchema,
|
|
2391
2501
|
createSyllabusFromTemplateResultSchema,
|
|
@@ -2397,6 +2507,7 @@ export {
|
|
|
2397
2507
|
feeCategoryOptionsSchema,
|
|
2398
2508
|
courseFeeSchema,
|
|
2399
2509
|
airplaneSchema,
|
|
2510
|
+
aircraftPositionSchema,
|
|
2400
2511
|
airplaneShareInviteSchema,
|
|
2401
2512
|
airplanePermissionSchema,
|
|
2402
2513
|
landingFeeSchema,
|
|
@@ -2411,6 +2522,7 @@ export {
|
|
|
2411
2522
|
extendedAirplaneSchema,
|
|
2412
2523
|
availSchema,
|
|
2413
2524
|
bookingWaypointSchema,
|
|
2525
|
+
activitySchema,
|
|
2414
2526
|
bookingSchema,
|
|
2415
2527
|
alertSchema,
|
|
2416
2528
|
documentSchema,
|
|
@@ -2429,6 +2541,7 @@ export {
|
|
|
2429
2541
|
courseSchema,
|
|
2430
2542
|
courseEnrollmentMetricsSchema,
|
|
2431
2543
|
courseEnrollmentSchema,
|
|
2544
|
+
membershipSignupSchema,
|
|
2432
2545
|
eventSchema,
|
|
2433
2546
|
addressSchema,
|
|
2434
2547
|
roleSchema,
|