@nyig/models 0.5.5 → 0.5.7

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 +498 -5385
  2. package/index.d.ts +498 -5385
  3. package/index.js +259 -229
  4. package/index.mjs +258 -230
  5. package/package.json +5 -5
package/index.js CHANGED
@@ -58,6 +58,7 @@ __export(index_exports, {
58
58
  zBTeacherPayment: () => zBTeacherPayment,
59
59
  zBUser: () => zBUser,
60
60
  zBUserInfo: () => zBUserInfo,
61
+ zBUserProfile: () => zBUserProfile,
61
62
  zCampBooking: () => zCampBooking,
62
63
  zCampTracker: () => zCampTracker,
63
64
  zCampTrackerResponse: () => zCampTrackerResponse,
@@ -103,6 +104,7 @@ __export(index_exports, {
103
104
  zTrackerCreate: () => zTrackerCreate,
104
105
  zTuition: () => zTuition,
105
106
  zUser: () => zUser,
107
+ zUserProfile: () => zUserProfile,
106
108
  zUserRoles: () => zUserRoles
107
109
  });
108
110
  module.exports = __toCommonJS(index_exports);
@@ -170,7 +172,7 @@ var BookingType = /* @__PURE__ */ ((BookingType2) => {
170
172
  })(BookingType || {});
171
173
 
172
174
  // src/interface/booking/campBooking.ts
173
- var import_zod19 = require("zod");
175
+ var import_zod20 = require("zod");
174
176
 
175
177
  // src/interface/tracking/attendState.ts
176
178
  var AttendState = /* @__PURE__ */ ((AttendState2) => {
@@ -181,7 +183,7 @@ var AttendState = /* @__PURE__ */ ((AttendState2) => {
181
183
  })(AttendState || {});
182
184
 
183
185
  // src/interface/tracking/attendance.ts
184
- var import_zod10 = require("zod");
186
+ var import_zod11 = require("zod");
185
187
 
186
188
  // src/interface/payment/tuition.ts
187
189
  var import_zod3 = require("zod");
@@ -298,43 +300,69 @@ var zBUser = import_zod6.z.object({
298
300
  /**
299
301
  * For prompting the user to change their password on first login
300
302
  */
301
- shouldChangePassword: import_zod6.z.boolean().optional()
303
+ shouldChangePassword: import_zod6.z.boolean().optional(),
304
+ /**
305
+ * UserProfile Object storing user preferences
306
+ */
307
+ profile: import_zod6.z.string().optional()
302
308
  });
303
309
  var zUser = addAutoProps(zBUser);
304
310
 
305
- // src/interface/user/student.ts
311
+ // src/interface/user/userInfo.ts
306
312
  var import_zod7 = require("zod");
313
+ var zBUserProfile = import_zod7.z.object({
314
+ firstName: import_zod7.z.string().min(2).max(50).or(import_zod7.z.literal("")).optional(),
315
+ lastName: import_zod7.z.string().min(2).max(50).or(import_zod7.z.literal("")).optional(),
316
+ address: import_zod7.z.string().or(import_zod7.z.literal("")).optional(),
317
+ rank: import_zod7.z.enum(GoRank).optional(),
318
+ agaId: import_zod7.z.string().regex(/^\d{4,5}$/, {
319
+ message: `Please enter a valid AGA ID`
320
+ }).or(import_zod7.z.literal("")).optional(),
321
+ participateAs: import_zod7.z.enum(["adult", "youth"]).optional(),
322
+ showOnWhoIsComing: import_zod7.z.boolean().optional(),
323
+ preferredEmail: import_zod7.z.email().optional(),
324
+ phoneNumber: import_zod7.z.string().regex(/^\d{10}/, {
325
+ message: `Please enter a valid 10-digit US phone number with numbers only`
326
+ }).or(import_zod7.z.literal("")).optional(),
327
+ birthDate: import_zod7.z.string().regex(/^\d{4}-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01])$/, {
328
+ message: "Enter a valid date in yyyy-mm-dd format"
329
+ }).or(import_zod7.z.literal("")).optional()
330
+ });
331
+ var zUserProfile = addAutoProps(zBUserProfile);
332
+
333
+ // src/interface/user/student.ts
334
+ var import_zod8 = require("zod");
307
335
  var zBStudent = zBUser.extend({
308
- rank: import_zod7.z.nativeEnum(GoRank),
309
- guardian: import_zod7.z.string().optional()
336
+ rank: import_zod8.z.nativeEnum(GoRank),
337
+ guardian: import_zod8.z.string().optional()
310
338
  });
311
339
  var zStudent = addAutoProps(zBStudent);
312
340
 
313
341
  // src/interface/user/teacher.ts
314
- var import_zod8 = require("zod");
342
+ var import_zod9 = require("zod");
315
343
  var zBTeacher = zBUser.extend({
316
- rank: import_zod8.z.nativeEnum(GoRank),
344
+ rank: import_zod9.z.nativeEnum(GoRank),
317
345
  /**
318
346
  * Inactive teachers are not shown on public endpoints
319
347
  */
320
- isInactive: import_zod8.z.boolean().optional(),
348
+ isInactive: import_zod9.z.boolean().optional(),
321
349
  /**
322
350
  * If true, teacher is never available for booking
323
351
  */
324
- doesNotTeachPrivateLessons: import_zod8.z.boolean().optional(),
352
+ doesNotTeachPrivateLessons: import_zod9.z.boolean().optional(),
325
353
  /**
326
354
  * Teacher's position, e.g., instructor, president
327
355
  */
328
- title: import_zod8.z.string().optional(),
356
+ title: import_zod9.z.string().optional(),
329
357
  /**
330
358
  * Teacher's bio text describing experience
331
359
  * new lines will be rendered as paragraphs
332
360
  */
333
- bio: import_zod8.z.string().optional(),
361
+ bio: import_zod9.z.string().optional(),
334
362
  /**
335
363
  * Permanent URL of the image
336
364
  */
337
- imageUrl: import_zod8.z.string().optional(),
365
+ imageUrl: import_zod9.z.string().optional(),
338
366
  /** Format is illustrated below, where teacher is available
339
367
  * Mon 9-12am 3-6pm & Tue 10-12am 6-10pm
340
368
  * [
@@ -347,54 +375,54 @@ var zBTeacher = zBUser.extend({
347
375
  * [],
348
376
  * ]
349
377
  */
350
- available: import_zod8.z.array(import_zod8.z.array(import_zod8.z.array(import_zod8.z.number()))).optional()
378
+ available: import_zod9.z.array(import_zod9.z.array(import_zod9.z.array(import_zod9.z.number()))).optional()
351
379
  });
352
380
  var zTeacher = addAutoProps(zBTeacher);
353
381
  var zTeacherResponse = zTeacher.omit({ password: true, roles: true, editedBy: true, updatedAt: true, createdAt: true }).extend({
354
- role: import_zod8.z.number().int()
382
+ role: import_zod9.z.number().int()
355
383
  });
356
384
 
357
385
  // src/interface/user/auth.ts
358
- var import_zod9 = require("zod");
359
- var zCreateAdminAccountRequest = import_zod9.z.object({
360
- _id: import_zod9.z.string(),
361
- user: import_zod9.z.string().min(3, "Username must be at least 3 characters"),
362
- pwd: import_zod9.z.string().min(6)
386
+ var import_zod10 = require("zod");
387
+ var zCreateAdminAccountRequest = import_zod10.z.object({
388
+ _id: import_zod10.z.string(),
389
+ user: import_zod10.z.string().min(3, "Username must be at least 3 characters"),
390
+ pwd: import_zod10.z.string().min(6)
363
391
  });
364
- var zChangePasswordRequest = import_zod9.z.object({
365
- prev: import_zod9.z.string().min(6),
366
- next: import_zod9.z.string().min(6)
392
+ var zChangePasswordRequest = import_zod10.z.object({
393
+ prev: import_zod10.z.string().min(6),
394
+ next: import_zod10.z.string().min(6)
367
395
  });
368
- var zLoginRequest = import_zod9.z.object({
369
- user: import_zod9.z.string().min(3, "Username must be at least 3 characters"),
370
- pwd: import_zod9.z.string().min(6)
396
+ var zLoginRequest = import_zod10.z.object({
397
+ user: import_zod10.z.string().min(3, "Username must be at least 3 characters"),
398
+ pwd: import_zod10.z.string().min(6)
371
399
  });
372
- var zLoginResponse = import_zod9.z.object({
373
- user: import_zod9.z.string(),
374
- token: import_zod9.z.string()
400
+ var zLoginResponse = import_zod10.z.object({
401
+ user: import_zod10.z.string(),
402
+ token: import_zod10.z.string()
375
403
  });
376
404
 
377
405
  // src/interface/tracking/attendance.ts
378
- var zBAttendance = import_zod10.z.object({
379
- student: import_zod10.z.string(),
380
- states: import_zod10.z.array(import_zod10.z.nativeEnum(AttendState)),
406
+ var zBAttendance = import_zod11.z.object({
407
+ student: import_zod11.z.string(),
408
+ states: import_zod11.z.array(import_zod11.z.nativeEnum(AttendState)),
381
409
  /**
382
410
  * @deprecated This field is no longer used
383
411
  */
384
412
  tuition: zTuition.optional(),
385
- paid: import_zod10.z.boolean().optional(),
386
- campOption: import_zod10.z.nativeEnum(CampOption).optional()
413
+ paid: import_zod11.z.boolean().optional(),
414
+ campOption: import_zod11.z.nativeEnum(CampOption).optional()
387
415
  });
388
416
  var zAttendance = addAutoProps(zBAttendance);
389
417
  var zAttendanceRequest = zAttendance.extend({
390
- _id: import_zod10.z.string().optional()
418
+ _id: import_zod11.z.string().optional()
391
419
  });
392
420
  var zAttendanceResponse = zAttendance.extend({
393
421
  student: zStudent
394
422
  });
395
423
 
396
424
  // src/interface/tracking/campTracker.ts
397
- var import_zod13 = require("zod");
425
+ var import_zod14 = require("zod");
398
426
 
399
427
  // src/interface/course/ageGroup.ts
400
428
  var AgeGroup = /* @__PURE__ */ ((AgeGroup2) => {
@@ -422,36 +450,36 @@ var NYIGSchool = /* @__PURE__ */ ((NYIGSchool2) => {
422
450
  })(NYIGSchool || {});
423
451
 
424
452
  // src/interface/course/course.ts
425
- var import_zod11 = require("zod");
426
- var zBCourse = import_zod11.z.object({
427
- name: import_zod11.z.string(),
428
- category: import_zod11.z.nativeEnum(CourseCategory),
453
+ var import_zod12 = require("zod");
454
+ var zBCourse = import_zod12.z.object({
455
+ name: import_zod12.z.string(),
456
+ category: import_zod12.z.nativeEnum(CourseCategory),
429
457
  /**
430
458
  * @unit SECONDS - Duration of the course in seconds
431
459
  */
432
- duration: import_zod11.z.coerce.number().int("Duration in seconds must be a whole number").min(1, "Duration in seconds must not be less than or equal to 0"),
460
+ duration: import_zod12.z.coerce.number().int("Duration in seconds must be a whole number").min(1, "Duration in seconds must not be less than or equal to 0"),
433
461
  /**
434
462
  * @unit CENTS - Price of the course in cents
435
463
  */
436
- price: import_zod11.z.coerce.number().int("Tuition must be a whole number in cents").min(1, "Tuition must not be less than or equal to 0"),
437
- description: import_zod11.z.string().or(import_zod11.z.literal("")).optional(),
464
+ price: import_zod12.z.coerce.number().int("Tuition must be a whole number in cents").min(1, "Tuition must not be less than or equal to 0"),
465
+ description: import_zod12.z.string().or(import_zod12.z.literal("")).optional(),
438
466
  /**
439
467
  * NYIG School locations
440
468
  */
441
- nyigSchool: import_zod11.z.nativeEnum(NYIGSchool),
469
+ nyigSchool: import_zod12.z.nativeEnum(NYIGSchool),
442
470
  /**
443
471
  * Recommended level before taking this course
444
472
  */
445
- recLevel: import_zod11.z.string().or(import_zod11.z.literal("")).optional(),
473
+ recLevel: import_zod12.z.string().or(import_zod12.z.literal("")).optional(),
446
474
  /**
447
475
  * Camp tuition for half-day option
448
476
  */
449
- halfCampTuition: import_zod11.z.coerce.number().int("Tuition must be a whole number in cents").min(1, "Tuition must not be less than or equal to 0").optional(),
477
+ halfCampTuition: import_zod12.z.coerce.number().int("Tuition must be a whole number in cents").min(1, "Tuition must not be less than or equal to 0").optional(),
450
478
  /**
451
479
  * Camp tuition for full-day option
452
480
  */
453
- fullCampTuition: import_zod11.z.coerce.number().int("Tuition must be a whole number in cents").min(1, "Tuition must not be less than or equal to 0").optional(),
454
- superadminOnly: import_zod11.z.boolean().optional()
481
+ fullCampTuition: import_zod12.z.coerce.number().int("Tuition must be a whole number in cents").min(1, "Tuition must not be less than or equal to 0").optional(),
482
+ superadminOnly: import_zod12.z.boolean().optional()
455
483
  });
456
484
  var zCourse = addAutoProps(zBCourse);
457
485
 
@@ -464,57 +492,57 @@ var Season = /* @__PURE__ */ ((Season2) => {
464
492
  })(Season || {});
465
493
 
466
494
  // src/interface/semester/semester.ts
467
- var import_zod12 = require("zod");
468
- var zBSemester = import_zod12.z.object({
469
- season: import_zod12.z.nativeEnum(Season),
470
- year: import_zod12.z.coerce.number().min(2022).max(2999),
471
- startDate: import_zod12.z.coerce.date(),
472
- endDate: import_zod12.z.coerce.date(),
495
+ var import_zod13 = require("zod");
496
+ var zBSemester = import_zod13.z.object({
497
+ season: import_zod13.z.nativeEnum(Season),
498
+ year: import_zod13.z.coerce.number().min(2022).max(2999),
499
+ startDate: import_zod13.z.coerce.date(),
500
+ endDate: import_zod13.z.coerce.date(),
473
501
  /**
474
502
  * Format: start, end, start, end, ...
475
503
  */
476
- blackoutDates: import_zod12.z.array(import_zod12.z.coerce.date()),
504
+ blackoutDates: import_zod13.z.array(import_zod13.z.coerce.date()),
477
505
  /**
478
506
  * List of names of some break: date range
479
507
  */
480
- importantDates: import_zod12.z.array(import_zod12.z.string())
508
+ importantDates: import_zod13.z.array(import_zod13.z.string())
481
509
  });
482
510
  var zSemester = addAutoProps(zBSemester);
483
511
 
484
512
  // src/interface/tracking/campTracker.ts
485
513
  var MAX_TEACHERS = 10;
486
- var zBCampTracker = import_zod13.z.object({
487
- course: import_zod13.z.string(),
488
- teachers: import_zod13.z.array(import_zod13.z.string()).min(1, "Camp must have at least 1 teacher").max(MAX_TEACHERS, `Camp can have at most ${MAX_TEACHERS} teachers`),
489
- semester: import_zod13.z.string(),
514
+ var zBCampTracker = import_zod14.z.object({
515
+ course: import_zod14.z.string(),
516
+ teachers: import_zod14.z.array(import_zod14.z.string()).min(1, "Camp must have at least 1 teacher").max(MAX_TEACHERS, `Camp can have at most ${MAX_TEACHERS} teachers`),
517
+ semester: import_zod14.z.string(),
490
518
  /**
491
519
  * occurrences are tracked by week for camps
492
520
  */
493
- occurrences: import_zod13.z.array(import_zod13.z.string()).min(1, "Camp must have at least 1 date range"),
521
+ occurrences: import_zod14.z.array(import_zod14.z.string()).min(1, "Camp must have at least 1 date range"),
494
522
  /**
495
523
  * attendances are tracked by week for camps
496
524
  */
497
- attendances: import_zod13.z.array(zAttendanceRequest),
498
- publicDescription: import_zod13.z.string().optional(),
499
- isNonPublic: import_zod13.z.boolean().optional(),
500
- notes: import_zod13.z.string().optional()
525
+ attendances: import_zod14.z.array(zAttendanceRequest),
526
+ publicDescription: import_zod14.z.string().optional(),
527
+ isNonPublic: import_zod14.z.boolean().optional(),
528
+ notes: import_zod14.z.string().optional()
501
529
  });
502
530
  var zCampTracker = addAutoProps(zBCampTracker);
503
531
  var zCampTrackerResponse = zCampTracker.extend({
504
532
  course: zCourse,
505
- teachers: import_zod13.z.array(zTeacher).min(1, "Camp must have at least 1 teacher").max(MAX_TEACHERS, `Camp can have at most ${MAX_TEACHERS} teachers`),
533
+ teachers: import_zod14.z.array(zTeacher).min(1, "Camp must have at least 1 teacher").max(MAX_TEACHERS, `Camp can have at most ${MAX_TEACHERS} teachers`),
506
534
  semester: zSemester,
507
- attendances: import_zod13.z.array(zAttendanceResponse)
535
+ attendances: import_zod14.z.array(zAttendanceResponse)
508
536
  });
509
537
 
510
538
  // src/interface/tracking/classTracker.ts
511
- var import_zod16 = require("zod");
539
+ var import_zod17 = require("zod");
512
540
 
513
541
  // src/interface/tracking/classTimesInput.ts
514
- var import_zod15 = require("zod");
542
+ var import_zod16 = require("zod");
515
543
 
516
544
  // src/interface/tracking/dayOfWeek.ts
517
- var import_zod14 = require("zod");
545
+ var import_zod15 = require("zod");
518
546
  var DayOfWeek = /* @__PURE__ */ ((DayOfWeek2) => {
519
547
  DayOfWeek2[DayOfWeek2["SUNDAY"] = 0] = "SUNDAY";
520
548
  DayOfWeek2[DayOfWeek2["MONDAY"] = 1] = "MONDAY";
@@ -525,33 +553,33 @@ var DayOfWeek = /* @__PURE__ */ ((DayOfWeek2) => {
525
553
  DayOfWeek2[DayOfWeek2["SATURDAY"] = 6] = "SATURDAY";
526
554
  return DayOfWeek2;
527
555
  })(DayOfWeek || {});
528
- var zDayOfWeek = import_zod14.z.nativeEnum(DayOfWeek);
556
+ var zDayOfWeek = import_zod15.z.nativeEnum(DayOfWeek);
529
557
 
530
558
  // src/interface/tracking/classTimesInput.ts
531
- var zClassTimesInput = import_zod15.z.object({
532
- startDate: import_zod15.z.date(),
533
- freq: import_zod15.z.coerce.number().min(1, "Please select a valid frequency"),
534
- daysOfWeek: import_zod15.z.array(zDayOfWeek),
535
- numberOfClasses: import_zod15.z.coerce.number().int().min(1, "Must enroll in at least one class")
559
+ var zClassTimesInput = import_zod16.z.object({
560
+ startDate: import_zod16.z.date(),
561
+ freq: import_zod16.z.coerce.number().min(1, "Please select a valid frequency"),
562
+ daysOfWeek: import_zod16.z.array(zDayOfWeek),
563
+ numberOfClasses: import_zod16.z.coerce.number().int().min(1, "Must enroll in at least one class")
536
564
  });
537
565
 
538
566
  // src/interface/tracking/classTracker.ts
539
- var zBClassTracker = import_zod16.z.object({
540
- course: import_zod16.z.string(),
541
- teacher: import_zod16.z.string(),
542
- student: import_zod16.z.string(),
543
- classTimes: import_zod16.z.array(import_zod16.z.coerce.date()),
544
- completedList: import_zod16.z.array(import_zod16.z.boolean()),
567
+ var zBClassTracker = import_zod17.z.object({
568
+ course: import_zod17.z.string(),
569
+ teacher: import_zod17.z.string(),
570
+ student: import_zod17.z.string(),
571
+ classTimes: import_zod17.z.array(import_zod17.z.coerce.date()),
572
+ completedList: import_zod17.z.array(import_zod17.z.boolean()),
545
573
  /**
546
574
  * Virtual mongoose field when all values in completedList is true
547
575
  */
548
- completed: import_zod16.z.boolean().optional(),
576
+ completed: import_zod17.z.boolean().optional(),
549
577
  /**
550
578
  * @deprecated This field is no longer used
551
579
  */
552
- paid: import_zod16.z.boolean().optional(),
553
- paused: import_zod16.z.boolean().optional(),
554
- notes: import_zod16.z.string().optional()
580
+ paid: import_zod17.z.boolean().optional(),
581
+ paused: import_zod17.z.boolean().optional(),
582
+ notes: import_zod17.z.string().optional()
555
583
  });
556
584
  var zClassTracker = addAutoProps(zBClassTracker);
557
585
  var zClassTrackerResponse = zClassTracker.extend({
@@ -564,89 +592,89 @@ var zTrackerCreate = zBClassTracker.extend({
564
592
  });
565
593
 
566
594
  // src/interface/tracking/groupTracker.ts
567
- var import_zod18 = require("zod");
595
+ var import_zod19 = require("zod");
568
596
 
569
597
  // src/interface/tracking/scheduleData.ts
570
- var import_zod17 = require("zod");
571
- var zScheduleData = import_zod17.z.object({
572
- startTime: import_zod17.z.string(),
598
+ var import_zod18 = require("zod");
599
+ var zScheduleData = import_zod18.z.object({
600
+ startTime: import_zod18.z.string(),
573
601
  // String in 24 hour "HH:mm" format
574
- dayOfWeek: import_zod17.z.number().int().min(0).max(6),
602
+ dayOfWeek: import_zod18.z.number().int().min(0).max(6),
575
603
  // integeters in 0 - 6
576
- startDate: import_zod17.z.string().optional(),
604
+ startDate: import_zod18.z.string().optional(),
577
605
  // First day of class, optional for backwards compatibility
578
- numberOfClasses: import_zod17.z.number().int().min(0).optional()
606
+ numberOfClasses: import_zod18.z.number().int().min(0).optional()
579
607
  // optional for backwards compatibility
580
608
  });
581
609
 
582
610
  // src/interface/tracking/groupTracker.ts
583
- var zBGroupTracker = import_zod18.z.object({
584
- course: import_zod18.z.string(),
585
- teacher: import_zod18.z.string(),
586
- semester: import_zod18.z.string(),
611
+ var zBGroupTracker = import_zod19.z.object({
612
+ course: import_zod19.z.string(),
613
+ teacher: import_zod19.z.string(),
614
+ semester: import_zod19.z.string(),
587
615
  scheduleData: zScheduleData,
588
616
  /**
589
617
  * occurrences are tracked by week for Groups
590
618
  */
591
- occurrences: import_zod18.z.array(import_zod18.z.string()),
619
+ occurrences: import_zod19.z.array(import_zod19.z.string()),
592
620
  /**
593
621
  * attendances are tracked by week for Groups
594
622
  */
595
- attendances: import_zod18.z.array(zAttendanceRequest),
623
+ attendances: import_zod19.z.array(zAttendanceRequest),
596
624
  /**
597
625
  * public-facing ID of the course instance, e.g., 101
598
626
  */
599
- courseId: import_zod18.z.string().optional(),
627
+ courseId: import_zod19.z.string().optional(),
600
628
  /**
601
629
  * Age group of the class instance, e.g. "adult", "youth"
602
630
  */
603
- ageGroup: import_zod18.z.nativeEnum(AgeGroup).optional(),
631
+ ageGroup: import_zod19.z.nativeEnum(AgeGroup).optional(),
604
632
  /**
605
633
  * If true, the course is hidden from public view
606
634
  */
607
- isNonPublic: import_zod18.z.boolean().optional(),
608
- notes: import_zod18.z.string().optional()
635
+ isNonPublic: import_zod19.z.boolean().optional(),
636
+ notes: import_zod19.z.string().optional()
609
637
  });
610
638
  var zGroupTracker = addAutoProps(zBGroupTracker);
611
639
  var zGroupTrackerResponse = zGroupTracker.extend({
612
640
  course: zCourse,
613
641
  teacher: zTeacher,
614
642
  semester: zSemester,
615
- attendances: import_zod18.z.array(zAttendanceResponse)
643
+ attendances: import_zod19.z.array(zAttendanceResponse)
616
644
  });
617
645
 
618
646
  // src/interface/booking/campBooking.ts
619
- var zBCampBooking = import_zod19.z.object({
620
- ctId: import_zod19.z.string().optional(),
621
- isOnline: import_zod19.z.boolean(),
622
- classDates: import_zod19.z.string(),
623
- campOption: import_zod19.z.nativeEnum(CampOption),
624
- shipping: import_zod19.z.boolean().optional()
647
+ var zBCampBooking = import_zod20.z.object({
648
+ ctId: import_zod20.z.string().optional(),
649
+ isOnline: import_zod20.z.boolean(),
650
+ classDates: import_zod20.z.string(),
651
+ campOption: import_zod20.z.nativeEnum(CampOption),
652
+ shipping: import_zod20.z.boolean().optional()
625
653
  }).merge(zBUserInfo).merge(zBPaymentInfo);
626
654
  var zCampBooking = addAutoProps(zBCampBooking);
627
655
 
628
656
  // src/interface/booking/groupBooking.ts
629
- var import_zod20 = require("zod");
630
- var zBGroupBooking = import_zod20.z.object({
631
- gtId: import_zod20.z.string().optional(),
632
- isTrial: import_zod20.z.boolean().optional(),
633
- isOnline: import_zod20.z.boolean(),
634
- classDate: import_zod20.z.string().optional(),
635
- shipping: import_zod20.z.boolean().optional()
657
+ var import_zod21 = require("zod");
658
+ var zBGroupBooking = import_zod21.z.object({
659
+ gtId: import_zod21.z.string().optional(),
660
+ isTrial: import_zod21.z.boolean().optional(),
661
+ isOnline: import_zod21.z.boolean(),
662
+ classDate: import_zod21.z.string().optional(),
663
+ shipping: import_zod21.z.boolean().optional()
636
664
  }).merge(zBUserInfo).merge(zBPaymentInfo);
637
665
  var zGroupBooking = addAutoProps(zBGroupBooking);
638
666
 
639
667
  // src/interface/booking/privateBooking.ts
640
- var import_zod21 = require("zod");
641
- var zBPrivateBooking = import_zod21.z.object({
642
- courseId: import_zod21.z.string(),
643
- teacherId: import_zod21.z.string(),
644
- classDate: import_zod21.z.string().optional()
668
+ var import_zod22 = require("zod");
669
+ var zBPrivateBooking = import_zod22.z.object({
670
+ courseId: import_zod22.z.string(),
671
+ teacherId: import_zod22.z.string(),
672
+ classDate: import_zod22.z.string().optional()
645
673
  }).merge(zBUserInfo).merge(zBPaymentInfo);
646
674
  var zPrivateBooking = addAutoProps(zBPrivateBooking);
647
675
 
648
676
  // src/interface/payment/invoice.ts
649
- var import_zod22 = require("zod");
677
+ var import_zod23 = require("zod");
650
678
 
651
679
  // src/interface/payment/paymentMethod.ts
652
680
  var PaymentMethod = /* @__PURE__ */ ((PaymentMethod2) => {
@@ -658,93 +686,93 @@ var PaymentMethod = /* @__PURE__ */ ((PaymentMethod2) => {
658
686
  })(PaymentMethod || {});
659
687
 
660
688
  // src/interface/payment/invoice.ts
661
- var zDiscount = import_zod22.z.object({
662
- desc: import_zod22.z.string().min(1, "Discount description cannot be empty"),
663
- amount: import_zod22.z.coerce.number()
689
+ var zDiscount = import_zod23.z.object({
690
+ desc: import_zod23.z.string().min(1, "Discount description cannot be empty"),
691
+ amount: import_zod23.z.coerce.number()
664
692
  });
665
- var zInvoiceItem = import_zod22.z.object({
666
- course: import_zod22.z.string().min(1, "Course description cannot be empty"),
667
- price: import_zod22.z.coerce.number(),
668
- units: import_zod22.z.coerce.number()
693
+ var zInvoiceItem = import_zod23.z.object({
694
+ course: import_zod23.z.string().min(1, "Course description cannot be empty"),
695
+ price: import_zod23.z.coerce.number(),
696
+ units: import_zod23.z.coerce.number()
669
697
  });
670
- var zInvoicePackage = import_zod22.z.object({
671
- student: import_zod22.z.string(),
672
- items: import_zod22.z.array(zInvoiceItem).min(1, "Package must contain at least one item")
698
+ var zInvoicePackage = import_zod23.z.object({
699
+ student: import_zod23.z.string(),
700
+ items: import_zod23.z.array(zInvoiceItem).min(1, "Package must contain at least one item")
673
701
  });
674
702
  var zInvoicePackageResponse = zInvoicePackage.extend({
675
703
  student: zStudent
676
704
  });
677
- var zBInvoice = import_zod22.z.object({
678
- billTo: import_zod22.z.string().min(1, "The 'Bill To' field must not be empty"),
679
- packages: import_zod22.z.array(zInvoicePackage).min(1, "Invoice must include at least one package"),
680
- discounts: import_zod22.z.array(zDiscount),
681
- textbook: import_zod22.z.coerce.number().int().min(0).optional(),
682
- shipping: import_zod22.z.coerce.number().int().min(0).optional(),
683
- paid: import_zod22.z.nativeEnum(PaymentMethod).optional(),
684
- paidAt: import_zod22.z.string().optional(),
685
- showEin: import_zod22.z.boolean().optional(),
686
- notes: import_zod22.z.string().or(import_zod22.z.literal("")).optional(),
687
- feeLabel: import_zod22.z.string().optional(),
688
- createdBy: import_zod22.z.string()
705
+ var zBInvoice = import_zod23.z.object({
706
+ billTo: import_zod23.z.string().min(1, "The 'Bill To' field must not be empty"),
707
+ packages: import_zod23.z.array(zInvoicePackage).min(1, "Invoice must include at least one package"),
708
+ discounts: import_zod23.z.array(zDiscount),
709
+ textbook: import_zod23.z.coerce.number().int().min(0).optional(),
710
+ shipping: import_zod23.z.coerce.number().int().min(0).optional(),
711
+ paid: import_zod23.z.nativeEnum(PaymentMethod).optional(),
712
+ paidAt: import_zod23.z.string().optional(),
713
+ showEin: import_zod23.z.boolean().optional(),
714
+ notes: import_zod23.z.string().or(import_zod23.z.literal("")).optional(),
715
+ feeLabel: import_zod23.z.string().optional(),
716
+ createdBy: import_zod23.z.string()
689
717
  });
690
718
  var zInvoice = addAutoProps(zBInvoice);
691
719
  var zInvoiceResponse = zInvoice.extend({
692
720
  createdBy: zTeacher,
693
721
  editedBy: zTeacher.optional(),
694
- packages: import_zod22.z.array(zInvoicePackageResponse)
722
+ packages: import_zod23.z.array(zInvoicePackageResponse)
695
723
  });
696
724
 
697
725
  // src/interface/payment/teacherPayment.ts
698
- var import_zod23 = require("zod");
699
- var zTeacherPaymentRow = import_zod23.z.object({
700
- course: import_zod23.z.string().min(1, "select or enter a course"),
701
- length: import_zod23.z.coerce.number().gt(0, "must be > 0"),
702
- count: import_zod23.z.coerce.number().int().gt(0, "must be > 0"),
703
- wage: import_zod23.z.coerce.number().gt(0, "wage must be > 0")
726
+ var import_zod24 = require("zod");
727
+ var zTeacherPaymentRow = import_zod24.z.object({
728
+ course: import_zod24.z.string().min(1, "select or enter a course"),
729
+ length: import_zod24.z.coerce.number().gt(0, "must be > 0"),
730
+ count: import_zod24.z.coerce.number().int().gt(0, "must be > 0"),
731
+ wage: import_zod24.z.coerce.number().gt(0, "wage must be > 0")
704
732
  });
705
- var zBTeacherPayment = import_zod23.z.object({
706
- teacher: import_zod23.z.string().min(1, "select or enter a teacher"),
707
- rows: import_zod23.z.array(zTeacherPaymentRow),
708
- paid: import_zod23.z.boolean().optional(),
733
+ var zBTeacherPayment = import_zod24.z.object({
734
+ teacher: import_zod24.z.string().min(1, "select or enter a teacher"),
735
+ rows: import_zod24.z.array(zTeacherPaymentRow),
736
+ paid: import_zod24.z.boolean().optional(),
709
737
  /**
710
738
  * paymentNotes differentiates from notes as it is displayed on the rendered PDF
711
739
  */
712
- paymentNotes: import_zod23.z.string().optional()
740
+ paymentNotes: import_zod24.z.string().optional()
713
741
  });
714
742
  var zTeacherPayment = addAutoProps(zBTeacherPayment);
715
743
  var zTeacherPaymentResponse = zTeacherPayment.extend({
716
- teacher: import_zod23.z.object({ _id: import_zod23.z.string(), name: import_zod23.z.string(), rank: import_zod23.z.string().optional() }),
717
- editedBy: import_zod23.z.object({ _id: import_zod23.z.string(), name: import_zod23.z.string(), rank: import_zod23.z.string().optional() })
744
+ teacher: import_zod24.z.object({ _id: import_zod24.z.string(), name: import_zod24.z.string(), rank: import_zod24.z.string().optional() }),
745
+ editedBy: import_zod24.z.object({ _id: import_zod24.z.string(), name: import_zod24.z.string(), rank: import_zod24.z.string().optional() })
718
746
  });
719
747
 
720
748
  // src/interface/public/aurora.ts
721
- var import_zod24 = require("zod");
722
- var zTeacherDisplay = import_zod24.z.object({
723
- name: import_zod24.z.string(),
724
- email: import_zod24.z.string().email(),
725
- title: import_zod24.z.string(),
726
- imageUrl: import_zod24.z.string(),
727
- bio: import_zod24.z.string()
749
+ var import_zod25 = require("zod");
750
+ var zTeacherDisplay = import_zod25.z.object({
751
+ name: import_zod25.z.string(),
752
+ email: import_zod25.z.string().email(),
753
+ title: import_zod25.z.string(),
754
+ imageUrl: import_zod25.z.string(),
755
+ bio: import_zod25.z.string()
728
756
  });
729
- var zCourseTable = import_zod24.z.object({
730
- id: import_zod24.z.string(),
731
- name: import_zod24.z.string(),
732
- duration: import_zod24.z.number(),
733
- dateAndTime: import_zod24.z.string(),
734
- recommendedLevel: import_zod24.z.string(),
735
- tuition: import_zod24.z.string()
757
+ var zCourseTable = import_zod25.z.object({
758
+ id: import_zod25.z.string(),
759
+ name: import_zod25.z.string(),
760
+ duration: import_zod25.z.number(),
761
+ dateAndTime: import_zod25.z.string(),
762
+ recommendedLevel: import_zod25.z.string(),
763
+ tuition: import_zod25.z.string()
736
764
  });
737
765
 
738
766
  // src/interface/public/imageDef.ts
739
- var import_zod25 = require("zod");
740
- var zImageDef = import_zod25.z.object({
741
- url: import_zod25.z.string().url(),
742
- height: import_zod25.z.coerce.number().int(),
743
- width: import_zod25.z.coerce.number().int()
767
+ var import_zod26 = require("zod");
768
+ var zImageDef = import_zod26.z.object({
769
+ url: import_zod26.z.string().url(),
770
+ height: import_zod26.z.coerce.number().int(),
771
+ width: import_zod26.z.coerce.number().int()
744
772
  });
745
773
 
746
774
  // src/interface/reporting/reportTicket.ts
747
- var import_zod26 = require("zod");
775
+ var import_zod27 = require("zod");
748
776
 
749
777
  // src/interface/reporting/ticketStatus.ts
750
778
  var TicketStatus = /* @__PURE__ */ ((TicketStatus2) => {
@@ -756,12 +784,12 @@ var TicketStatus = /* @__PURE__ */ ((TicketStatus2) => {
756
784
  })(TicketStatus || {});
757
785
 
758
786
  // src/interface/reporting/reportTicket.ts
759
- var zBReportTicket = import_zod26.z.object({
760
- requester: import_zod26.z.string(),
761
- resolver: import_zod26.z.string().optional(),
762
- status: import_zod26.z.nativeEnum(TicketStatus),
763
- title: import_zod26.z.string(),
764
- description: import_zod26.z.string()
787
+ var zBReportTicket = import_zod27.z.object({
788
+ requester: import_zod27.z.string(),
789
+ resolver: import_zod27.z.string().optional(),
790
+ status: import_zod27.z.nativeEnum(TicketStatus),
791
+ title: import_zod27.z.string(),
792
+ description: import_zod27.z.string()
765
793
  });
766
794
  var zReportTicket = addAutoProps(zBReportTicket);
767
795
  var zReportTicketResponse = zReportTicket.extend({
@@ -770,45 +798,45 @@ var zReportTicketResponse = zReportTicket.extend({
770
798
  });
771
799
 
772
800
  // src/interface/event/eConfig.ts
773
- var import_zod29 = require("zod");
801
+ var import_zod30 = require("zod");
774
802
 
775
803
  // src/interface/event/eTicket.ts
776
- var import_zod27 = require("zod");
777
- var zBEventTicket = import_zod27.z.object({
778
- name: import_zod27.z.string().min(4, "Name must be at least 4 characters"),
804
+ var import_zod28 = require("zod");
805
+ var zBEventTicket = import_zod28.z.object({
806
+ name: import_zod28.z.string().min(4, "Name must be at least 4 characters"),
779
807
  /**
780
808
  * Price in cents
781
809
  */
782
- price: import_zod27.z.coerce.number().min(0, "Price must not be negative"),
810
+ price: import_zod28.z.coerce.number().min(0, "Price must not be negative"),
783
811
  /**
784
812
  * @optional description of the ticket
785
813
  */
786
- description: import_zod27.z.string().optional(),
814
+ description: import_zod28.z.string().optional(),
787
815
  /**
788
816
  * @optional The ticket cannot be purchased if true
789
817
  */
790
- isNotBuyable: import_zod27.z.boolean().optional(),
818
+ isNotBuyable: import_zod28.z.boolean().optional(),
791
819
  /**
792
820
  * @optional If date is provided and in the past, ticket cannot be purchased
793
821
  */
794
- lastBuyableDate: import_zod27.z.coerce.date().optional(),
822
+ lastBuyableDate: import_zod28.z.coerce.date().optional(),
795
823
  /**
796
824
  * @optional max limit is 1 unless maxPerOrder is specified
797
825
  */
798
- maxPerOrder: import_zod27.z.coerce.number().int().min(2).optional()
826
+ maxPerOrder: import_zod28.z.coerce.number().int().optional()
799
827
  });
800
828
  var zEventTicket = addAutoProps(zBEventTicket);
801
829
 
802
830
  // src/interface/event/table.ts
803
- var import_zod28 = require("zod");
804
- var zTable = import_zod28.z.array(import_zod28.z.record(import_zod28.z.string(), import_zod28.z.string()));
805
- var zDetailsTable = import_zod28.z.object({
806
- fields: import_zod28.z.array(import_zod28.z.string()).length(2),
831
+ var import_zod29 = require("zod");
832
+ var zTable = import_zod29.z.array(import_zod29.z.record(import_zod29.z.string(), import_zod29.z.string()));
833
+ var zDetailsTable = import_zod29.z.object({
834
+ fields: import_zod29.z.array(import_zod29.z.string()).length(2),
807
835
  data: zTable
808
836
  });
809
- var zScheduleTable = import_zod28.z.object({
810
- fields: import_zod28.z.array(import_zod28.z.string()).length(2),
811
- data: import_zod28.z.record(import_zod28.z.string(), zTable)
837
+ var zScheduleTable = import_zod29.z.object({
838
+ fields: import_zod29.z.array(import_zod29.z.string()).length(2),
839
+ data: import_zod29.z.record(import_zod29.z.string(), zTable)
812
840
  });
813
841
 
814
842
  // src/interface/event/youthOrAdult.ts
@@ -819,40 +847,40 @@ var YouthOrAdult = /* @__PURE__ */ ((YouthOrAdult2) => {
819
847
  })(YouthOrAdult || {});
820
848
 
821
849
  // src/interface/event/eConfig.ts
822
- var zBEventConfig = import_zod29.z.object({
850
+ var zBEventConfig = import_zod30.z.object({
823
851
  /**
824
852
  * Location of the event
825
853
  */
826
- location: import_zod29.z.string().optional(),
854
+ location: import_zod30.z.string().optional(),
827
855
  /**
828
856
  * URL of the tournament on the official website
829
857
  * Must be a valid URL link
830
858
  */
831
- url: import_zod29.z.string(),
859
+ url: import_zod30.z.string(),
832
860
  /**
833
861
  * Full name of the tournament
834
862
  */
835
- title: import_zod29.z.string().min(5),
863
+ title: import_zod30.z.string().min(5),
836
864
  /**
837
865
  * Abbreviated title of the tournament
838
866
  */
839
- shortTitle: import_zod29.z.string().min(2),
867
+ shortTitle: import_zod30.z.string().min(2),
840
868
  /**
841
869
  * Tournament start date and time
842
870
  */
843
- tStart: import_zod29.z.coerce.date(),
871
+ tStart: import_zod30.z.coerce.date(),
844
872
  /**
845
873
  * Tournament end date and time
846
874
  */
847
- tEnd: import_zod29.z.coerce.date(),
875
+ tEnd: import_zod30.z.coerce.date(),
848
876
  /**
849
877
  * Short description for tournament card
850
878
  */
851
- shortDescription: import_zod29.z.string().min(5),
879
+ shortDescription: import_zod30.z.string().min(5),
852
880
  /**
853
881
  * Full description
854
882
  */
855
- description: import_zod29.z.string().min(5),
883
+ description: import_zod30.z.string().min(5),
856
884
  /**
857
885
  * Defines the tournament details table with 2 columns
858
886
  * typically Time and Event
@@ -867,30 +895,30 @@ var zBEventConfig = import_zod29.z.object({
867
895
  * @optional description of the tickets step, shown in service
868
896
  * when the customer is on step 1 of the booking page
869
897
  */
870
- ticketsStepDescription: import_zod29.z.string().optional(),
898
+ ticketsStepDescription: import_zod30.z.string().optional(),
871
899
  /**
872
900
  * @optional description of the participant step, shown in service
873
901
  * when the customer is on step 2 of the booking page
874
902
  */
875
- participantStepDescription: import_zod29.z.string().optional(),
903
+ participantStepDescription: import_zod30.z.string().optional(),
876
904
  /**
877
905
  * List of ticket object IDs for this tournament
878
906
  */
879
- tickets: import_zod29.z.array(import_zod29.z.string()),
907
+ tickets: import_zod30.z.array(import_zod30.z.string()),
880
908
  /**
881
909
  * If false, the tournament registration is closed
882
910
  */
883
- canRegister: import_zod29.z.boolean(),
911
+ canRegister: import_zod30.z.boolean(),
884
912
  /**
885
913
  * Defines the registration of youth and adults in the event
886
914
  * youth_only - only youth
887
915
  * both - both youth and adult
888
916
  */
889
- youthOrAdult: import_zod29.z.nativeEnum(YouthOrAdult).optional(),
917
+ youthOrAdult: import_zod30.z.nativeEnum(YouthOrAdult).optional(),
890
918
  /**
891
919
  * If true, free form donation amounts are disabled.
892
920
  */
893
- donationsDisabled: import_zod29.z.boolean().optional(),
921
+ donationsDisabled: import_zod30.z.boolean().optional(),
894
922
  /**
895
923
  * Defines URL, height, width of the image
896
924
  */
@@ -898,42 +926,42 @@ var zBEventConfig = import_zod29.z.object({
898
926
  });
899
927
  var zEventConfig = addAutoProps(zBEventConfig);
900
928
  var zEventConfigResponse = zEventConfig.extend({
901
- tickets: import_zod29.z.array(zEventTicket)
929
+ tickets: import_zod30.z.array(zEventTicket)
902
930
  });
903
931
 
904
932
  // src/interface/event/eReg.ts
905
- var import_zod31 = require("zod");
933
+ var import_zod32 = require("zod");
906
934
 
907
935
  // src/interface/event/eTicketReg.ts
908
- var import_zod30 = require("zod");
909
- var zEventTicketReg = import_zod30.z.object({
910
- ticket: import_zod30.z.string(),
936
+ var import_zod31 = require("zod");
937
+ var zEventTicketReg = import_zod31.z.object({
938
+ ticket: import_zod31.z.string(),
911
939
  /**
912
940
  * integer minimum 1, otherwise no ticket is being bought
913
941
  */
914
- amount: import_zod30.z.number().int().min(1)
942
+ amount: import_zod31.z.number().int().min(1)
915
943
  });
916
944
  var zEventTicketRegResponse = zEventTicketReg.extend({
917
945
  ticket: zEventTicket
918
946
  });
919
947
 
920
948
  // src/interface/event/eReg.ts
921
- var zBEventReg = import_zod31.z.object({
922
- agaId: import_zod31.z.string(),
923
- tournamentId: import_zod31.z.string(),
924
- tickets: import_zod31.z.array(zEventTicketReg),
949
+ var zBEventReg = import_zod32.z.object({
950
+ agaId: import_zod32.z.string(),
951
+ tournamentId: import_zod32.z.string(),
952
+ tickets: import_zod32.z.array(zEventTicketReg),
925
953
  /**
926
954
  * @units CENTS - Donation in cents
927
955
  */
928
- donation: import_zod31.z.coerce.number().optional(),
956
+ donation: import_zod32.z.coerce.number().optional(),
929
957
  /**
930
958
  * How the registration was created, through public endpoint or admin
931
959
  */
932
- createMethod: import_zod31.z.string().optional()
960
+ createMethod: import_zod32.z.string().optional()
933
961
  }).merge(zBUserInfo).merge(zBPaymentInfo);
934
962
  var zEventReg = addAutoProps(zBEventReg);
935
963
  var zEventRegResponse = zEventReg.extend({
936
- tickets: import_zod31.z.array(zEventTicketRegResponse)
964
+ tickets: import_zod32.z.array(zEventTicketRegResponse)
937
965
  });
938
966
  // Annotate the CommonJS export names for ESM import in node:
939
967
  0 && (module.exports = {
@@ -975,6 +1003,7 @@ var zEventRegResponse = zEventReg.extend({
975
1003
  zBTeacherPayment,
976
1004
  zBUser,
977
1005
  zBUserInfo,
1006
+ zBUserProfile,
978
1007
  zCampBooking,
979
1008
  zCampTracker,
980
1009
  zCampTrackerResponse,
@@ -1020,5 +1049,6 @@ var zEventRegResponse = zEventReg.extend({
1020
1049
  zTrackerCreate,
1021
1050
  zTuition,
1022
1051
  zUser,
1052
+ zUserProfile,
1023
1053
  zUserRoles
1024
1054
  });