@nyig/models 0.2.10 → 0.2.12

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 (5) hide show
  1. package/index.d.mts +1070 -421
  2. package/index.d.ts +1070 -421
  3. package/index.js +154 -144
  4. package/index.mjs +153 -144
  5. package/package.json +2 -1
package/index.js CHANGED
@@ -22,6 +22,7 @@ var src_exports = {};
22
22
  __export(src_exports, {
23
23
  AgeGroup: () => AgeGroup,
24
24
  AttendState: () => AttendState,
25
+ BookingType: () => BookingType,
25
26
  CampOption: () => CampOption,
26
27
  CourseCategory: () => CourseCategory,
27
28
  GoRank: () => GoRank,
@@ -83,73 +84,59 @@ __export(src_exports, {
83
84
  });
84
85
  module.exports = __toCommonJS(src_exports);
85
86
 
86
- // src/interface/booking/bUserInfo.ts
87
- var import_zod = require("zod");
88
- var zBUserInfo = import_zod.z.object({
89
- firstName: import_zod.z.string(),
90
- lastName: import_zod.z.string(),
91
- rank: import_zod.z.string(),
92
- email: import_zod.z.string(),
93
- phone: import_zod.z.string().optional(),
94
- address: import_zod.z.string().optional(),
95
- notes: import_zod.z.string().optional()
96
- });
97
-
98
- // src/interface/booking/privateBooking.ts
99
- var import_zod4 = require("zod");
100
-
101
- // src/mongoose.ts
102
- var import_zod2 = require("zod");
103
- function extendZodObjectForMongoose(original) {
104
- return original.extend({
105
- _id: import_zod2.z.string(),
106
- createdAt: import_zod2.z.coerce.date().optional(),
107
- updatedAt: import_zod2.z.coerce.date().optional()
108
- });
109
- }
110
-
111
87
  // src/interface/booking/bPaymentInfo.ts
112
- var import_zod3 = require("zod");
113
- var zBPaymentInfo = import_zod3.z.object({
88
+ var import_zod = require("zod");
89
+ var zBPaymentInfo = import_zod.z.object({
114
90
  /**
115
91
  * @units CENTS - Proposed payment amount in cents of the booking
116
92
  */
117
- paymentAmount: import_zod3.z.number().int().min(1),
93
+ paymentAmount: import_zod.z.number().int().min(1),
118
94
  /**
119
95
  * True if the payment has been received. Populated by webhook.
120
96
  */
121
- paymentReceived: import_zod3.z.boolean().optional(),
97
+ paymentReceived: import_zod.z.boolean().optional(),
122
98
  /**
123
99
  * When Date is reached, document is deleted by MongoDB sweeper.
124
100
  * Creation typically marks one to two weeks.
125
101
  * After payment, webhook should extend this date to essentially infinite.
126
102
  */
127
- expireAt: import_zod3.z.coerce.date().optional()
103
+ expireAt: import_zod.z.coerce.date().optional()
128
104
  });
129
105
 
130
- // src/interface/booking/privateBooking.ts
131
- var zPrivateBooking = import_zod4.z.object({
132
- userId: import_zod4.z.string().optional(),
133
- courseId: import_zod4.z.string(),
134
- teacherId: import_zod4.z.string(),
135
- classDate: import_zod4.z.string().optional()
136
- }).merge(zBUserInfo).merge(zBPaymentInfo);
137
- var zMPrivateBooking = extendZodObjectForMongoose(zPrivateBooking);
106
+ // src/interface/booking/bUserInfo.ts
107
+ var import_zod2 = require("zod");
108
+ var zBUserInfo = import_zod2.z.object({
109
+ firstName: import_zod2.z.string(),
110
+ lastName: import_zod2.z.string(),
111
+ rank: import_zod2.z.string(),
112
+ email: import_zod2.z.string(),
113
+ phone: import_zod2.z.string().optional(),
114
+ address: import_zod2.z.string().optional(),
115
+ notes: import_zod2.z.string().optional()
116
+ });
138
117
 
139
- // src/interface/booking/groupBooking.ts
140
- var import_zod5 = require("zod");
141
- var zGroupBooking = import_zod5.z.object({
142
- userId: import_zod5.z.string().optional(),
143
- gtId: import_zod5.z.string().optional(),
144
- isTrial: import_zod5.z.boolean().optional(),
145
- isOnline: import_zod5.z.boolean(),
146
- classDate: import_zod5.z.string().optional(),
147
- shipping: import_zod5.z.boolean().optional()
148
- }).merge(zBUserInfo).merge(zBPaymentInfo);
149
- var zMGroupBooking = extendZodObjectForMongoose(zGroupBooking);
118
+ // src/interface/booking/bookingType.ts
119
+ var BookingType = /* @__PURE__ */ ((BookingType2) => {
120
+ BookingType2["GROUP"] = "group";
121
+ BookingType2["PRIVATE"] = "private";
122
+ BookingType2["TOURNAMENT"] = "tournament";
123
+ BookingType2["CAMP"] = "camp";
124
+ return BookingType2;
125
+ })(BookingType || {});
150
126
 
151
127
  // src/interface/booking/campBooking.ts
152
- var import_zod15 = require("zod");
128
+ var import_zod13 = require("zod");
129
+
130
+ // src/interface/mongoose/mongoose.ts
131
+ var import_zod3 = require("zod");
132
+ var import_mongoose = require("mongoose");
133
+ function extendZodObjectForMongoose(original) {
134
+ return original.extend({
135
+ _id: import_zod3.z.instanceof(import_mongoose.Types.ObjectId),
136
+ createdAt: import_zod3.z.coerce.date().optional(),
137
+ updatedAt: import_zod3.z.coerce.date().optional()
138
+ });
139
+ }
153
140
 
154
141
  // src/interface/tracking/attendState.ts
155
142
  var AttendState = /* @__PURE__ */ ((AttendState2) => {
@@ -160,14 +147,14 @@ var AttendState = /* @__PURE__ */ ((AttendState2) => {
160
147
  })(AttendState || {});
161
148
 
162
149
  // src/interface/tracking/attendance.ts
163
- var import_zod7 = require("zod");
150
+ var import_zod5 = require("zod");
164
151
 
165
152
  // src/interface/payment/tuition.ts
166
- var import_zod6 = require("zod");
167
- var zTuition = import_zod6.z.object({
168
- primary: import_zod6.z.number().int().min(1),
169
- textbook: import_zod6.z.boolean().optional(),
170
- shipping: import_zod6.z.boolean().optional()
153
+ var import_zod4 = require("zod");
154
+ var zTuition = import_zod4.z.object({
155
+ primary: import_zod4.z.number().int().min(1),
156
+ textbook: import_zod4.z.boolean().optional(),
157
+ shipping: import_zod4.z.boolean().optional()
171
158
  });
172
159
 
173
160
  // src/interface/tracking/campOption.ts
@@ -179,47 +166,47 @@ var CampOption = /* @__PURE__ */ ((CampOption2) => {
179
166
  })(CampOption || {});
180
167
 
181
168
  // src/interface/tracking/attendance.ts
182
- var zAttendance = import_zod7.z.object({
183
- student: import_zod7.z.string(),
184
- states: import_zod7.z.array(import_zod7.z.nativeEnum(AttendState)),
169
+ var zAttendance = import_zod5.z.object({
170
+ student: import_zod5.z.string(),
171
+ states: import_zod5.z.array(import_zod5.z.nativeEnum(AttendState)),
185
172
  tuition: zTuition,
186
- paid: import_zod7.z.boolean().optional(),
187
- campOption: import_zod7.z.nativeEnum(CampOption)
173
+ paid: import_zod5.z.boolean().optional(),
174
+ campOption: import_zod5.z.nativeEnum(CampOption)
188
175
  });
189
176
  var zMAttendance = extendZodObjectForMongoose(zAttendance);
190
177
 
191
178
  // src/interface/tracking/campTracker.ts
192
- var import_zod8 = require("zod");
193
- var zCampTracker = import_zod8.z.object({
179
+ var import_zod6 = require("zod");
180
+ var zCampTracker = import_zod6.z.object({
194
181
  /**
195
182
  * Mongoose object ID
196
183
  */
197
- course: import_zod8.z.string(),
184
+ course: import_zod6.z.string(),
198
185
  /**
199
186
  * Mongoose object ID
200
187
  */
201
- teacher: import_zod8.z.string(),
188
+ teacher: import_zod6.z.string(),
202
189
  /**
203
190
  * Mongoose object ID
204
191
  */
205
- semester: import_zod8.z.string(),
192
+ semester: import_zod6.z.string(),
206
193
  /**
207
194
  * occurrences are tracked by week for camps
208
195
  */
209
- occurrences: import_zod8.z.array(import_zod8.z.string()),
196
+ occurrences: import_zod6.z.array(import_zod6.z.string()),
210
197
  /**
211
198
  * attendances are tracked by week for camps
212
199
  */
213
- attendances: import_zod8.z.array(import_zod8.z.string()),
214
- notes: import_zod8.z.string().optional()
200
+ attendances: import_zod6.z.array(import_zod6.z.string()),
201
+ notes: import_zod6.z.string().optional()
215
202
  });
216
203
  var zMCampTracker = extendZodObjectForMongoose(zCampTracker);
217
204
 
218
205
  // src/interface/tracking/classTracker.ts
219
- var import_zod11 = require("zod");
206
+ var import_zod9 = require("zod");
220
207
 
221
208
  // src/interface/payment/invoice.ts
222
- var import_zod9 = require("zod");
209
+ var import_zod7 = require("zod");
223
210
 
224
211
  // src/interface/payment/paymentMethod.ts
225
212
  var PaymentMethod = /* @__PURE__ */ ((PaymentMethod2) => {
@@ -231,94 +218,94 @@ var PaymentMethod = /* @__PURE__ */ ((PaymentMethod2) => {
231
218
  })(PaymentMethod || {});
232
219
 
233
220
  // src/interface/payment/invoice.ts
234
- var zDiscount = import_zod9.z.object({
235
- desc: import_zod9.z.string(),
236
- amount: import_zod9.z.number()
221
+ var zDiscount = import_zod7.z.object({
222
+ desc: import_zod7.z.string(),
223
+ amount: import_zod7.z.number()
237
224
  });
238
- var zInvoiceItem = import_zod9.z.object({
225
+ var zInvoiceItem = import_zod7.z.object({
239
226
  /**
240
227
  * Mongoose object ID
241
228
  */
242
- course: import_zod9.z.string(),
243
- price: import_zod9.z.number(),
244
- units: import_zod9.z.number()
229
+ course: import_zod7.z.string(),
230
+ price: import_zod7.z.number(),
231
+ units: import_zod7.z.number()
245
232
  });
246
- var zInvoicePackage = import_zod9.z.object({
233
+ var zInvoicePackage = import_zod7.z.object({
247
234
  /**
248
235
  * Mongoose object ID
249
236
  */
250
- student: import_zod9.z.string(),
251
- items: import_zod9.z.array(zInvoiceItem)
237
+ student: import_zod7.z.string(),
238
+ items: import_zod7.z.array(zInvoiceItem)
252
239
  });
253
- var zInvoice = import_zod9.z.object({
254
- billTo: import_zod9.z.string(),
255
- packages: import_zod9.z.array(zInvoicePackage),
256
- discounts: import_zod9.z.array(zDiscount),
257
- textbook: import_zod9.z.number().int().min(1).optional(),
258
- shipping: import_zod9.z.number().int().min(1).optional(),
259
- paid: import_zod9.z.nativeEnum(PaymentMethod).optional(),
260
- notes: import_zod9.z.string().optional(),
240
+ var zInvoice = import_zod7.z.object({
241
+ billTo: import_zod7.z.string(),
242
+ packages: import_zod7.z.array(zInvoicePackage),
243
+ discounts: import_zod7.z.array(zDiscount),
244
+ textbook: import_zod7.z.number().int().min(1).optional(),
245
+ shipping: import_zod7.z.number().int().min(1).optional(),
246
+ paid: import_zod7.z.nativeEnum(PaymentMethod).optional(),
247
+ notes: import_zod7.z.string().optional(),
261
248
  /**
262
249
  * Mongoose object ID
263
250
  */
264
- createdBy: import_zod9.z.string(),
251
+ createdBy: import_zod7.z.string(),
265
252
  /**
266
253
  * Mongoose object ID
267
254
  */
268
- lastEditBy: import_zod9.z.string().optional()
255
+ lastEditBy: import_zod7.z.string().optional()
269
256
  });
270
257
  var zMInvoice = extendZodObjectForMongoose(zInvoice);
271
258
 
272
259
  // src/interface/payment/teacherPayment.ts
273
- var import_zod10 = require("zod");
274
- var zTeacherPaymentRow = import_zod10.z.object({
275
- course: import_zod10.z.string(),
276
- length: import_zod10.z.number(),
277
- count: import_zod10.z.number(),
278
- wage: import_zod10.z.number()
260
+ var import_zod8 = require("zod");
261
+ var zTeacherPaymentRow = import_zod8.z.object({
262
+ course: import_zod8.z.string(),
263
+ length: import_zod8.z.number(),
264
+ count: import_zod8.z.number(),
265
+ wage: import_zod8.z.number()
279
266
  });
280
- var zTeacherPayment = import_zod10.z.object({
281
- teacher: import_zod10.z.string(),
282
- rows: import_zod10.z.array(zTeacherPaymentRow),
283
- paid: import_zod10.z.boolean().optional()
267
+ var zTeacherPayment = import_zod8.z.object({
268
+ teacher: import_zod8.z.string(),
269
+ rows: import_zod8.z.array(zTeacherPaymentRow),
270
+ paid: import_zod8.z.boolean().optional()
284
271
  });
285
272
  var zMTeacherPayment = extendZodObjectForMongoose(zTeacherPayment);
286
273
 
287
274
  // src/interface/tracking/classTracker.ts
288
- var zClassTracker = import_zod11.z.object({
275
+ var zClassTracker = import_zod9.z.object({
289
276
  /**
290
277
  * Mongoose object ID
291
278
  */
292
- course: import_zod11.z.string(),
279
+ course: import_zod9.z.string(),
293
280
  /**
294
281
  * Mongoose object ID
295
282
  */
296
- teacher: import_zod11.z.string(),
283
+ teacher: import_zod9.z.string(),
297
284
  /**
298
285
  * Mongoose object ID
299
286
  */
300
- semester: import_zod11.z.string(),
301
- classTimes: import_zod11.z.array(import_zod11.z.coerce.date()),
302
- completedList: import_zod11.z.array(import_zod11.z.boolean()),
287
+ semester: import_zod9.z.string(),
288
+ classTimes: import_zod9.z.array(import_zod9.z.coerce.date()),
289
+ completedList: import_zod9.z.array(import_zod9.z.boolean()),
303
290
  /**
304
291
  * Virtual mongoose field when all values in completedList is true
305
292
  */
306
- completed: import_zod11.z.boolean().optional(),
293
+ completed: import_zod9.z.boolean().optional(),
307
294
  tuition: zTuition.optional(),
308
- paid: import_zod11.z.boolean().optional(),
309
- notes: import_zod11.z.string().optional()
295
+ paid: import_zod9.z.boolean().optional(),
296
+ notes: import_zod9.z.string().optional()
310
297
  });
311
298
  var zMClassTracker = extendZodObjectForMongoose(zClassTracker);
312
299
 
313
300
  // src/interface/tracking/groupTracker.ts
314
- var import_zod14 = require("zod");
301
+ var import_zod12 = require("zod");
315
302
 
316
303
  // src/interface/tracking/scheduleData.ts
317
- var import_zod12 = require("zod");
318
- var zScheduleData = import_zod12.z.object({
319
- startTime: import_zod12.z.string(),
304
+ var import_zod10 = require("zod");
305
+ var zScheduleData = import_zod10.z.object({
306
+ startTime: import_zod10.z.string(),
320
307
  // String in 24 hour "HH:mm" format
321
- dayOfWeek: import_zod12.z.number().int().min(0).max(6)
308
+ dayOfWeek: import_zod10.z.number().int().min(0).max(6)
322
309
  // integeters in 0 - 6
323
310
  });
324
311
 
@@ -347,88 +334,110 @@ var NYIGSchool = /* @__PURE__ */ ((NYIGSchool2) => {
347
334
  })(NYIGSchool || {});
348
335
 
349
336
  // src/interface/course/course.ts
350
- var import_zod13 = require("zod");
351
- var zCourse = import_zod13.z.object({
352
- name: import_zod13.z.string(),
353
- category: import_zod13.z.nativeEnum(CourseCategory),
337
+ var import_zod11 = require("zod");
338
+ var zCourse = import_zod11.z.object({
339
+ name: import_zod11.z.string(),
340
+ category: import_zod11.z.nativeEnum(CourseCategory),
354
341
  /**
355
342
  * @unit SECONDS - Duration of the course in seconds
356
343
  */
357
- duration: import_zod13.z.number(),
344
+ duration: import_zod11.z.number(),
358
345
  /**
359
346
  * @unit CENTS - Price of the course in cents
360
347
  */
361
- price: import_zod13.z.number(),
362
- description: import_zod13.z.string().optional(),
348
+ price: import_zod11.z.number(),
349
+ description: import_zod11.z.string().optional(),
363
350
  /**
364
351
  * NYIG School locations
365
352
  */
366
- nyigSchool: import_zod13.z.nativeEnum(NYIGSchool),
353
+ nyigSchool: import_zod11.z.nativeEnum(NYIGSchool),
367
354
  /**
368
355
  * Recommended level before taking this course
369
356
  */
370
- recLevel: import_zod13.z.string(),
357
+ recLevel: import_zod11.z.string(),
371
358
  /**
372
359
  * Camp tuition for half-day option
373
360
  */
374
- halfCampTuition: import_zod13.z.number(),
361
+ halfCampTuition: import_zod11.z.number(),
375
362
  /**
376
363
  * Camp tuition for full-day option
377
364
  */
378
- fullCampTuition: import_zod13.z.number()
365
+ fullCampTuition: import_zod11.z.number()
379
366
  });
380
367
  var zMCourse = extendZodObjectForMongoose(zCourse);
381
368
 
382
369
  // src/interface/tracking/groupTracker.ts
383
- var zGroupTracker = import_zod14.z.object({
370
+ var zGroupTracker = import_zod12.z.object({
384
371
  /**
385
372
  * Mongoose object ID
386
373
  */
387
- course: import_zod14.z.string(),
374
+ course: import_zod12.z.string(),
388
375
  /**
389
376
  * Mongoose object ID
390
377
  */
391
- teacher: import_zod14.z.string(),
378
+ teacher: import_zod12.z.string(),
392
379
  /**
393
380
  * Mongoose object ID
394
381
  */
395
- semester: import_zod14.z.string(),
382
+ semester: import_zod12.z.string(),
396
383
  scheduleData: zScheduleData,
397
384
  /**
398
385
  * occurrences are tracked by week for Groups
399
386
  */
400
- occurrences: import_zod14.z.array(import_zod14.z.coerce.date()),
387
+ occurrences: import_zod12.z.array(import_zod12.z.coerce.date()),
401
388
  /**
402
389
  * attendances are tracked by week for Groups
403
390
  */
404
- attendances: import_zod14.z.array(import_zod14.z.string()),
391
+ attendances: import_zod12.z.array(import_zod12.z.string()),
405
392
  /**
406
393
  * ID of the course instance, e.g., 101
407
394
  */
408
- courseId: import_zod14.z.string().optional(),
395
+ courseId: import_zod12.z.string().optional(),
409
396
  /**
410
397
  * Age group of the class instance, e.g. "adult", "youth"
411
398
  */
412
- ageGroup: import_zod14.z.nativeEnum(AgeGroup).optional(),
399
+ ageGroup: import_zod12.z.nativeEnum(AgeGroup).optional(),
413
400
  /**
414
401
  * If true, the course is hidden from public view
415
402
  */
416
- isNonPublic: import_zod14.z.boolean().optional(),
417
- notes: import_zod14.z.string().optional()
403
+ isNonPublic: import_zod12.z.boolean().optional(),
404
+ notes: import_zod12.z.string().optional()
418
405
  });
419
406
  var zMGroupTracker = extendZodObjectForMongoose(zGroupTracker);
420
407
 
421
408
  // src/interface/booking/campBooking.ts
422
- var zCampBooking = import_zod15.z.object({
423
- userId: import_zod15.z.string().optional(),
424
- ctId: import_zod15.z.string().optional(),
425
- isOnline: import_zod15.z.boolean(),
426
- classDates: import_zod15.z.string(),
427
- campOption: import_zod15.z.nativeEnum(CampOption),
428
- shipping: import_zod15.z.boolean().optional()
409
+ var zCampBooking = import_zod13.z.object({
410
+ userId: import_zod13.z.string().optional(),
411
+ ctId: import_zod13.z.string().optional(),
412
+ isOnline: import_zod13.z.boolean(),
413
+ classDates: import_zod13.z.string(),
414
+ campOption: import_zod13.z.nativeEnum(CampOption),
415
+ shipping: import_zod13.z.boolean().optional()
429
416
  }).merge(zBUserInfo).merge(zBPaymentInfo);
430
417
  var zMCampBooking = extendZodObjectForMongoose(zCampBooking);
431
418
 
419
+ // src/interface/booking/groupBooking.ts
420
+ var import_zod14 = require("zod");
421
+ var zGroupBooking = import_zod14.z.object({
422
+ userId: import_zod14.z.string().optional(),
423
+ gtId: import_zod14.z.string().optional(),
424
+ isTrial: import_zod14.z.boolean().optional(),
425
+ isOnline: import_zod14.z.boolean(),
426
+ classDate: import_zod14.z.string().optional(),
427
+ shipping: import_zod14.z.boolean().optional()
428
+ }).merge(zBUserInfo).merge(zBPaymentInfo);
429
+ var zMGroupBooking = extendZodObjectForMongoose(zGroupBooking);
430
+
431
+ // src/interface/booking/privateBooking.ts
432
+ var import_zod15 = require("zod");
433
+ var zPrivateBooking = import_zod15.z.object({
434
+ userId: import_zod15.z.string().optional(),
435
+ courseId: import_zod15.z.string(),
436
+ teacherId: import_zod15.z.string(),
437
+ classDate: import_zod15.z.string().optional()
438
+ }).merge(zBUserInfo).merge(zBPaymentInfo);
439
+ var zMPrivateBooking = extendZodObjectForMongoose(zPrivateBooking);
440
+
432
441
  // src/interface/public/aurora.ts
433
442
  var import_zod16 = require("zod");
434
443
  var zTeacherDisplay = import_zod16.z.object({
@@ -640,7 +649,7 @@ var zTTicket = import_zod24.z.object({
640
649
  /**
641
650
  * @optional If date is provided and in the past, ticket cannot be purchased
642
651
  */
643
- lastBuytableDate: import_zod24.z.coerce.date().optional()
652
+ lastBuyableDate: import_zod24.z.coerce.date().optional()
644
653
  });
645
654
  var zMTTicket = extendZodObjectForMongoose(zTTicket);
646
655
 
@@ -754,6 +763,7 @@ var zMTeacher = extendZodObjectForMongoose(zTeacher);
754
763
  0 && (module.exports = {
755
764
  AgeGroup,
756
765
  AttendState,
766
+ BookingType,
757
767
  CampOption,
758
768
  CourseCategory,
759
769
  GoRank,