@timardex/cluemart-server-shared 1.1.26 → 1.1.27

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/index.cjs CHANGED
@@ -84,7 +84,6 @@ __export(index_exports, {
84
84
  normalizeAffiliatePromoCodes: () => normalizeAffiliatePromoCodes,
85
85
  normalizePromoCode: () => normalizePromoCode,
86
86
  notifyUsers: () => notifyUsers,
87
- productCouponSchema: () => productCouponSchema,
88
87
  publishNotificationEvents: () => publishNotificationEvents,
89
88
  refundPolicySchema: () => refundPolicySchema,
90
89
  relatedPostSchema: () => relatedPostSchema,
@@ -9210,126 +9209,10 @@ var schema8 = new MongooseSchema12(
9210
9209
  var VerificationTokenModel = import_mongoose12.default.models.VerificationToken || import_mongoose12.default.model("VerificationToken", schema8);
9211
9210
 
9212
9211
  // src/mongoose/vendor/Vendor.ts
9213
- var import_mongoose14 = __toESM(require("mongoose"));
9214
-
9215
- // src/mongoose/Coupon.ts
9216
9212
  var import_mongoose13 = __toESM(require("mongoose"));
9217
9213
  var MongooseSchema13 = import_mongoose13.default.Schema;
9218
- var productCouponSchema = new MongooseSchema13(
9214
+ var vendorProductTypeSchema = new MongooseSchema13(
9219
9215
  {
9220
- couponDocumentId: {
9221
- ref: "Coupon",
9222
- required: true,
9223
- type: import_mongoose13.default.Schema.Types.ObjectId
9224
- },
9225
- couponId: {
9226
- required: true,
9227
- type: import_mongoose13.default.Schema.Types.ObjectId
9228
- }
9229
- },
9230
- { _id: false }
9231
- );
9232
- var couponOptionSchema = new MongooseSchema13(
9233
- {
9234
- buy: { required: false, type: Number },
9235
- get: { required: false, type: Number },
9236
- type: {
9237
- enum: Object.values(EnumCouponQualificationType),
9238
- required: true,
9239
- type: String
9240
- },
9241
- unit: { required: false, type: String },
9242
- visits: { required: false, type: Number }
9243
- },
9244
- { _id: false }
9245
- );
9246
- var couponVendorProductSchema = new MongooseSchema13(
9247
- {
9248
- couponId: {
9249
- required: true,
9250
- type: import_mongoose13.default.Schema.Types.ObjectId
9251
- },
9252
- productId: {
9253
- required: true,
9254
- type: import_mongoose13.default.Schema.Types.ObjectId
9255
- },
9256
- vendorCouponId: {
9257
- required: false,
9258
- type: import_mongoose13.default.Schema.Types.ObjectId
9259
- },
9260
- vendorId: {
9261
- ref: "Vendor",
9262
- required: true,
9263
- type: import_mongoose13.default.Schema.Types.ObjectId
9264
- }
9265
- },
9266
- { _id: false }
9267
- );
9268
- var couponCodeSchema = new MongooseSchema13(
9269
- {
9270
- code: { required: true, type: String },
9271
- qrCode: { required: true, type: ResourceImageTypeSchema },
9272
- shareableQrCode: { required: true, type: ResourceImageTypeSchema }
9273
- },
9274
- { _id: false }
9275
- );
9276
- var couponParticipantUserSchema = new MongooseSchema13(
9277
- {
9278
- couponCollectedCount: { default: 0, required: true, type: Number },
9279
- couponRedeemedAt: { default: null, required: false, type: Date },
9280
- userId: {
9281
- ref: "User",
9282
- required: true,
9283
- type: import_mongoose13.default.Schema.Types.ObjectId
9284
- }
9285
- },
9286
- { timestamps: true }
9287
- );
9288
- var couponDataSchema = new MongooseSchema13(
9289
- {
9290
- active: { default: true, required: true, type: Boolean },
9291
- couponCode: { required: false, type: couponCodeSchema },
9292
- couponDescription: { required: true, type: String },
9293
- couponOption: { required: true, type: couponOptionSchema },
9294
- couponVendorProducts: {
9295
- required: false,
9296
- type: [couponVendorProductSchema]
9297
- },
9298
- endDate: { required: true, type: Date },
9299
- participantUsers: {
9300
- default: null,
9301
- required: false,
9302
- type: [couponParticipantUserSchema]
9303
- },
9304
- resourceId: { required: true, type: String },
9305
- resourceType: {
9306
- enum: Object.values(EnumResourceType),
9307
- required: true,
9308
- type: String
9309
- },
9310
- startDate: { required: true, type: Date }
9311
- },
9312
- { timestamps: true }
9313
- );
9314
- var schema9 = new MongooseSchema13(
9315
- {
9316
- active: { default: true, required: true, type: Boolean },
9317
- couponData: { default: [], required: false, type: [couponDataSchema] },
9318
- deletedAt: { default: null, required: false, type: Date },
9319
- owner: {
9320
- required: true,
9321
- type: OwnerTypeSchema
9322
- }
9323
- },
9324
- { timestamps: true }
9325
- );
9326
- var CouponModel = import_mongoose13.default.models.Coupon || import_mongoose13.default.model("Coupon", schema9);
9327
-
9328
- // src/mongoose/vendor/Vendor.ts
9329
- var MongooseSchema14 = import_mongoose14.default.Schema;
9330
- var vendorProductTypeSchema = new MongooseSchema14(
9331
- {
9332
- coupon: { required: false, type: productCouponSchema },
9333
9216
  description: { required: false, type: String },
9334
9217
  name: { required: true, type: String },
9335
9218
  price: { required: true, type: Number },
@@ -9339,14 +9222,14 @@ var vendorProductTypeSchema = new MongooseSchema14(
9339
9222
  },
9340
9223
  { timestamps: true }
9341
9224
  );
9342
- var productWrapperSchema = new MongooseSchema14(
9225
+ var productWrapperSchema = new MongooseSchema13(
9343
9226
  {
9344
9227
  active: { default: false, required: false, type: Boolean },
9345
9228
  productsList: { required: false, type: [vendorProductTypeSchema] }
9346
9229
  },
9347
9230
  { _id: false }
9348
9231
  );
9349
- var calendarSchema = new MongooseSchema14(
9232
+ var calendarSchema = new MongooseSchema13(
9350
9233
  {
9351
9234
  dateTime: {
9352
9235
  dateStatus: {
@@ -9367,14 +9250,14 @@ var calendarSchema = new MongooseSchema14(
9367
9250
  },
9368
9251
  { _id: false }
9369
9252
  );
9370
- var calendarWrapperSchema = new MongooseSchema14(
9253
+ var calendarWrapperSchema = new MongooseSchema13(
9371
9254
  {
9372
9255
  active: { default: false, required: true, type: Boolean },
9373
9256
  calendarData: { required: false, type: [calendarSchema] }
9374
9257
  },
9375
9258
  { _id: false }
9376
9259
  );
9377
- var schema10 = new MongooseSchema14(
9260
+ var schema9 = new MongooseSchema13(
9378
9261
  {
9379
9262
  ...baseResourceFields,
9380
9263
  // Importing base resource fields from global.ts
@@ -9400,12 +9283,12 @@ var schema10 = new MongooseSchema14(
9400
9283
  unregisteredVendorId: {
9401
9284
  ref: "UnregisteredVendor",
9402
9285
  required: false,
9403
- type: import_mongoose14.default.Schema.Types.ObjectId
9286
+ type: import_mongoose13.default.Schema.Types.ObjectId
9404
9287
  },
9405
9288
  vendorInfoId: {
9406
9289
  ref: "VendorInfo",
9407
9290
  required: false,
9408
- type: import_mongoose14.default.Schema.Types.ObjectId
9291
+ type: import_mongoose13.default.Schema.Types.ObjectId
9409
9292
  },
9410
9293
  vendorType: {
9411
9294
  enum: Object.values(EnumVendorType),
@@ -9415,24 +9298,24 @@ var schema10 = new MongooseSchema14(
9415
9298
  },
9416
9299
  { timestamps: true }
9417
9300
  );
9418
- schema10.index({ name: 1 });
9419
- schema10.index({ description: 1 });
9420
- schema10.index({ region: 1 });
9421
- schema10.index({ "categories.name": 1 });
9422
- schema10.index({ slug: 1 });
9423
- var VendorModel = import_mongoose14.default.models.Vendor || import_mongoose14.default.model("Vendor", schema10);
9301
+ schema9.index({ name: 1 });
9302
+ schema9.index({ description: 1 });
9303
+ schema9.index({ region: 1 });
9304
+ schema9.index({ "categories.name": 1 });
9305
+ schema9.index({ slug: 1 });
9306
+ var VendorModel = import_mongoose13.default.models.Vendor || import_mongoose13.default.model("Vendor", schema9);
9424
9307
 
9425
9308
  // src/mongoose/vendor/VendorInfo.ts
9426
- var import_mongoose15 = __toESM(require("mongoose"));
9427
- var MongooseSchema15 = import_mongoose15.default.Schema;
9428
- var AttributesSchema = new MongooseSchema15(
9309
+ var import_mongoose14 = __toESM(require("mongoose"));
9310
+ var MongooseSchema14 = import_mongoose14.default.Schema;
9311
+ var AttributesSchema = new MongooseSchema14(
9429
9312
  {
9430
9313
  details: { required: false, type: String },
9431
9314
  isRequired: { default: false, required: true, type: Boolean }
9432
9315
  },
9433
9316
  { _id: false }
9434
9317
  );
9435
- var schema11 = new MongooseSchema15(
9318
+ var schema10 = new MongooseSchema14(
9436
9319
  {
9437
9320
  active: { default: true, type: Boolean },
9438
9321
  compliance: {
@@ -9467,28 +9350,28 @@ var schema11 = new MongooseSchema15(
9467
9350
  vendorId: {
9468
9351
  ref: "Vendor",
9469
9352
  required: true,
9470
- type: import_mongoose15.default.Schema.Types.ObjectId
9353
+ type: import_mongoose14.default.Schema.Types.ObjectId
9471
9354
  }
9472
9355
  },
9473
9356
  { timestamps: true }
9474
9357
  );
9475
- var VendorInfoModel = import_mongoose15.default.models.VendorInfo || import_mongoose15.default.model("VendorInfo", schema11);
9358
+ var VendorInfoModel = import_mongoose14.default.models.VendorInfo || import_mongoose14.default.model("VendorInfo", schema10);
9476
9359
 
9477
9360
  // src/mongoose/vendor/UnregisteredVendor.ts
9478
- var import_mongoose16 = __toESM(require("mongoose"));
9479
- var MongooseSchema16 = import_mongoose16.default.Schema;
9480
- var invitationSchema = new MongooseSchema16(
9361
+ var import_mongoose15 = __toESM(require("mongoose"));
9362
+ var MongooseSchema15 = import_mongoose15.default.Schema;
9363
+ var invitationSchema = new MongooseSchema15(
9481
9364
  {
9482
9365
  dateTime: { required: true, type: [dateTimeSchema2] },
9483
9366
  inviterId: {
9484
9367
  ref: "Event",
9485
9368
  required: true,
9486
- type: import_mongoose16.default.Schema.Types.ObjectId
9369
+ type: import_mongoose15.default.Schema.Types.ObjectId
9487
9370
  }
9488
9371
  },
9489
9372
  { _id: false }
9490
9373
  );
9491
- var schema12 = new MongooseSchema16(
9374
+ var schema11 = new MongooseSchema15(
9492
9375
  {
9493
9376
  active: { default: true, required: true, type: Boolean },
9494
9377
  categoryIds: { required: true, type: [String] },
@@ -9497,7 +9380,7 @@ var schema12 = new MongooseSchema16(
9497
9380
  claimedByUserId: {
9498
9381
  ref: "User",
9499
9382
  required: false,
9500
- type: import_mongoose16.default.Schema.Types.ObjectId
9383
+ type: import_mongoose15.default.Schema.Types.ObjectId
9501
9384
  },
9502
9385
  claimInitiatedAt: { default: null, required: false, type: Date },
9503
9386
  claimToken: { default: null, required: false, type: String },
@@ -9510,14 +9393,14 @@ var schema12 = new MongooseSchema16(
9510
9393
  },
9511
9394
  { timestamps: true }
9512
9395
  );
9513
- schema12.index({ name: 1 });
9514
- schema12.index({ email: 1 });
9515
- var UnregisteredVendorModel = import_mongoose16.default.models.UnregisteredVendor || import_mongoose16.default.model("UnregisteredVendor", schema12);
9396
+ schema11.index({ name: 1 });
9397
+ schema11.index({ email: 1 });
9398
+ var UnregisteredVendorModel = import_mongoose15.default.models.UnregisteredVendor || import_mongoose15.default.model("UnregisteredVendor", schema11);
9516
9399
 
9517
9400
  // src/mongoose/event/Event.ts
9518
- var import_mongoose17 = __toESM(require("mongoose"));
9519
- var MongooseSchema17 = import_mongoose17.default.Schema;
9520
- var schema13 = new MongooseSchema17(
9401
+ var import_mongoose16 = __toESM(require("mongoose"));
9402
+ var MongooseSchema16 = import_mongoose16.default.Schema;
9403
+ var schema12 = new MongooseSchema16(
9521
9404
  {
9522
9405
  ...baseResourceFields,
9523
9406
  // Importing base resource fields from global.ts
@@ -9526,7 +9409,7 @@ var schema13 = new MongooseSchema17(
9526
9409
  eventInfoId: {
9527
9410
  ref: "EventInfo",
9528
9411
  required: false,
9529
- type: import_mongoose17.default.Schema.Types.ObjectId
9412
+ type: import_mongoose16.default.Schema.Types.ObjectId
9530
9413
  },
9531
9414
  eventType: {
9532
9415
  enum: Object.values(EnumEventType),
@@ -9555,20 +9438,20 @@ var schema13 = new MongooseSchema17(
9555
9438
  },
9556
9439
  { timestamps: true }
9557
9440
  );
9558
- schema13.index({ name: 1 });
9559
- schema13.index({ description: 1 });
9560
- schema13.index({ region: 1 });
9561
- schema13.index({ "location.geo": "2dsphere" });
9562
- schema13.index({ tags: 1 });
9563
- schema13.index({ deletedAt: 1 });
9564
- schema13.index({ "dateTime.dateStatus": 1 });
9565
- schema13.index({ slug: 1 });
9566
- var EventModel = import_mongoose17.default.models.Event || import_mongoose17.default.model("Event", schema13);
9441
+ schema12.index({ name: 1 });
9442
+ schema12.index({ description: 1 });
9443
+ schema12.index({ region: 1 });
9444
+ schema12.index({ "location.geo": "2dsphere" });
9445
+ schema12.index({ tags: 1 });
9446
+ schema12.index({ deletedAt: 1 });
9447
+ schema12.index({ "dateTime.dateStatus": 1 });
9448
+ schema12.index({ slug: 1 });
9449
+ var EventModel = import_mongoose16.default.models.Event || import_mongoose16.default.model("Event", schema12);
9567
9450
 
9568
9451
  // src/mongoose/Partner.ts
9569
- var import_mongoose18 = __toESM(require("mongoose"));
9570
- var MongooseSchema18 = import_mongoose18.default.Schema;
9571
- var schema14 = new MongooseSchema18(
9452
+ var import_mongoose17 = __toESM(require("mongoose"));
9453
+ var MongooseSchema17 = import_mongoose17.default.Schema;
9454
+ var schema13 = new MongooseSchema17(
9572
9455
  {
9573
9456
  ...baseResourceFields,
9574
9457
  location: {
@@ -9584,19 +9467,19 @@ var schema14 = new MongooseSchema18(
9584
9467
  },
9585
9468
  { timestamps: true }
9586
9469
  );
9587
- schema14.index({ name: 1 });
9588
- schema14.index({ description: 1 });
9589
- schema14.index({ region: 1 });
9590
- schema14.index({ "location.geo": "2dsphere" });
9591
- schema14.index({ slug: 1 });
9592
- var PartnerModel = import_mongoose18.default.models.Partner || import_mongoose18.default.model("Partner", schema14);
9470
+ schema13.index({ name: 1 });
9471
+ schema13.index({ description: 1 });
9472
+ schema13.index({ region: 1 });
9473
+ schema13.index({ "location.geo": "2dsphere" });
9474
+ schema13.index({ slug: 1 });
9475
+ var PartnerModel = import_mongoose17.default.models.Partner || import_mongoose17.default.model("Partner", schema13);
9593
9476
 
9594
9477
  // src/mongoose/Post.ts
9595
- var import_mongoose19 = __toESM(require("mongoose"));
9596
- var MongooseSchema19 = import_mongoose19.default.Schema;
9597
- var contentSchema = new MongooseSchema19(
9478
+ var import_mongoose18 = __toESM(require("mongoose"));
9479
+ var MongooseSchema18 = import_mongoose18.default.Schema;
9480
+ var contentSchema = new MongooseSchema18(
9598
9481
  {
9599
- contentData: import_mongoose19.Schema.Types.Mixed,
9482
+ contentData: import_mongoose18.Schema.Types.Mixed,
9600
9483
  contentOrder: { required: true, type: Number },
9601
9484
  contentType: {
9602
9485
  enum: Object.values(EnumPostContentType),
@@ -9606,7 +9489,7 @@ var contentSchema = new MongooseSchema19(
9606
9489
  },
9607
9490
  { _id: false }
9608
9491
  );
9609
- var resourceSchema = new MongooseSchema19(
9492
+ var resourceSchema = new MongooseSchema18(
9610
9493
  {
9611
9494
  resourceId: { required: true, type: String },
9612
9495
  resourceRegion: { required: true, type: String },
@@ -9619,7 +9502,7 @@ var resourceSchema = new MongooseSchema19(
9619
9502
  },
9620
9503
  { _id: false }
9621
9504
  );
9622
- var schema15 = new MongooseSchema19(
9505
+ var schema14 = new MongooseSchema18(
9623
9506
  {
9624
9507
  active: { default: false, required: true, type: Boolean },
9625
9508
  approvedAt: { default: null, required: false, type: Date },
@@ -9650,16 +9533,16 @@ var schema15 = new MongooseSchema19(
9650
9533
  },
9651
9534
  { timestamps: true }
9652
9535
  );
9653
- schema15.index({ title: 1 });
9654
- schema15.index({ tags: 1 });
9655
- schema15.index({ postType: 1, slug: 1 }, { unique: true });
9656
- var PostModel = import_mongoose19.default.models.Post || import_mongoose19.default.model("Post", schema15);
9536
+ schema14.index({ title: 1 });
9537
+ schema14.index({ tags: 1 });
9538
+ schema14.index({ postType: 1, slug: 1 }, { unique: true });
9539
+ var PostModel = import_mongoose18.default.models.Post || import_mongoose18.default.model("Post", schema14);
9657
9540
 
9658
9541
  // src/mongoose/AppSetting.ts
9659
- var import_mongoose20 = __toESM(require("mongoose"));
9660
- var MongooseSchema20 = import_mongoose20.default.Schema;
9542
+ var import_mongoose19 = __toESM(require("mongoose"));
9543
+ var MongooseSchema19 = import_mongoose19.default.Schema;
9661
9544
  var APP_SETTINGS_ID = "APP_SETTINGS_DOCUMENT_ID";
9662
- var AppSettingSchema = new MongooseSchema20(
9545
+ var AppSettingSchema = new MongooseSchema19(
9663
9546
  {
9664
9547
  activeSchoolsStudentCountTotal: {
9665
9548
  default: 0,
@@ -9690,18 +9573,18 @@ var AppSettingSchema = new MongooseSchema20(
9690
9573
  },
9691
9574
  { timestamps: true }
9692
9575
  );
9693
- var AppSettingModel = import_mongoose20.default.models.AppSetting || import_mongoose20.default.model("AppSetting", AppSettingSchema);
9576
+ var AppSettingModel = import_mongoose19.default.models.AppSetting || import_mongoose19.default.model("AppSetting", AppSettingSchema);
9694
9577
 
9695
9578
  // src/mongoose/game/Game.ts
9696
- var import_mongoose24 = __toESM(require("mongoose"));
9579
+ var import_mongoose23 = __toESM(require("mongoose"));
9697
9580
 
9698
9581
  // src/mongoose/game/DailyClue.ts
9699
- var import_mongoose22 = __toESM(require("mongoose"));
9582
+ var import_mongoose21 = __toESM(require("mongoose"));
9700
9583
 
9701
9584
  // src/mongoose/game/utils.ts
9702
- var import_mongoose21 = __toESM(require("mongoose"));
9703
- var MongooseSchema21 = import_mongoose21.default.Schema;
9704
- var schemaGameDate = new MongooseSchema21(
9585
+ var import_mongoose20 = __toESM(require("mongoose"));
9586
+ var MongooseSchema20 = import_mongoose20.default.Schema;
9587
+ var schemaGameDate = new MongooseSchema20(
9705
9588
  {
9706
9589
  endDate: { required: true, type: Date },
9707
9590
  startDate: { required: true, type: Date }
@@ -9710,8 +9593,8 @@ var schemaGameDate = new MongooseSchema21(
9710
9593
  );
9711
9594
 
9712
9595
  // src/mongoose/game/DailyClue.ts
9713
- var MongooseSchema22 = import_mongoose22.default.Schema;
9714
- var schemaLetters = new MongooseSchema22(
9596
+ var MongooseSchema21 = import_mongoose21.default.Schema;
9597
+ var schemaLetters = new MongooseSchema21(
9715
9598
  {
9716
9599
  collected: { required: false, type: [String] },
9717
9600
  solutionShuffled: { required: true, type: [String] }
@@ -9719,14 +9602,14 @@ var schemaLetters = new MongooseSchema22(
9719
9602
  },
9720
9603
  { _id: false }
9721
9604
  );
9722
- var schemaDailyClueBaseGame = new MongooseSchema22(
9605
+ var schemaDailyClueBaseGame = new MongooseSchema21(
9723
9606
  {
9724
9607
  gameDate: { required: true, type: schemaGameDate },
9725
9608
  gameSolution: { required: true, type: String }
9726
9609
  },
9727
9610
  { _id: false }
9728
9611
  );
9729
- var schemaDailyClueGameData = new MongooseSchema22(
9612
+ var schemaDailyClueGameData = new MongooseSchema21(
9730
9613
  {
9731
9614
  gameFields: { required: true, type: schemaDailyClueBaseGame },
9732
9615
  lastFoundDate: { default: null, required: false, type: Date },
@@ -9741,9 +9624,9 @@ var schemaDailyClueGameData = new MongooseSchema22(
9741
9624
  );
9742
9625
 
9743
9626
  // src/mongoose/game/PuzzleGame.ts
9744
- var import_mongoose23 = __toESM(require("mongoose"));
9745
- var MongooseSchema23 = import_mongoose23.default.Schema;
9746
- var schemaPuzzleAnswer = new MongooseSchema23(
9627
+ var import_mongoose22 = __toESM(require("mongoose"));
9628
+ var MongooseSchema22 = import_mongoose22.default.Schema;
9629
+ var schemaPuzzleAnswer = new MongooseSchema22(
9747
9630
  {
9748
9631
  answer: { required: true, type: String },
9749
9632
  answerId: { required: true, type: String },
@@ -9751,7 +9634,7 @@ var schemaPuzzleAnswer = new MongooseSchema23(
9751
9634
  },
9752
9635
  { _id: false }
9753
9636
  );
9754
- var schemaPuzzleQuestion = new MongooseSchema23(
9637
+ var schemaPuzzleQuestion = new MongooseSchema22(
9755
9638
  {
9756
9639
  answers: { required: true, type: [schemaPuzzleAnswer] },
9757
9640
  question: { required: true, type: String },
@@ -9759,20 +9642,20 @@ var schemaPuzzleQuestion = new MongooseSchema23(
9759
9642
  },
9760
9643
  { _id: false }
9761
9644
  );
9762
- var schemaPuzzleBaseGame = new MongooseSchema23(
9645
+ var schemaPuzzleBaseGame = new MongooseSchema22(
9763
9646
  {
9764
9647
  questions: { required: true, type: [schemaPuzzleQuestion] }
9765
9648
  },
9766
9649
  { _id: false }
9767
9650
  );
9768
- var schemaPuzzleAnsweredQuestion = new MongooseSchema23(
9651
+ var schemaPuzzleAnsweredQuestion = new MongooseSchema22(
9769
9652
  {
9770
9653
  questionId: { required: true, type: String },
9771
9654
  selectedAnswerId: { required: true, type: String }
9772
9655
  },
9773
9656
  { _id: false }
9774
9657
  );
9775
- var schemaPuzzleGameData = new MongooseSchema23(
9658
+ var schemaPuzzleGameData = new MongooseSchema22(
9776
9659
  {
9777
9660
  answeredQuestions: {
9778
9661
  default: null,
@@ -9787,7 +9670,7 @@ var schemaPuzzleGameData = new MongooseSchema23(
9787
9670
  );
9788
9671
 
9789
9672
  // src/mongoose/game/Game.ts
9790
- var MongooseSchema24 = import_mongoose24.default.Schema;
9673
+ var MongooseSchema23 = import_mongoose23.default.Schema;
9791
9674
  var gameDataSchemas = {
9792
9675
  [EnumGameType.DAILY_CLUE]: schemaDailyClueGameData,
9793
9676
  [EnumGameType.MINI_QUIZ]: schemaPuzzleGameData,
@@ -9799,7 +9682,7 @@ var gameDataDefinition = Object.fromEntries(
9799
9682
  { default: null, required: false, type: schema19 }
9800
9683
  ])
9801
9684
  );
9802
- var gameHistorySchema = new MongooseSchema24(
9685
+ var gameHistorySchema = new MongooseSchema23(
9803
9686
  {
9804
9687
  createdAt: { required: true, type: Date },
9805
9688
  gameDate: { required: true, type: schemaGameDate },
@@ -9819,7 +9702,7 @@ var gameHistorySchema = new MongooseSchema24(
9819
9702
  },
9820
9703
  { _id: false }
9821
9704
  );
9822
- var gameTypeSchema = new MongooseSchema24(
9705
+ var gameTypeSchema = new MongooseSchema23(
9823
9706
  {
9824
9707
  active: { default: true, required: true, type: Boolean },
9825
9708
  gameData: gameDataDefinition,
@@ -9834,7 +9717,7 @@ var gameTypeSchema = new MongooseSchema24(
9834
9717
  },
9835
9718
  { timestamps: true }
9836
9719
  );
9837
- var schema16 = new MongooseSchema24(
9720
+ var schema15 = new MongooseSchema23(
9838
9721
  {
9839
9722
  active: { default: false, required: true, type: Boolean },
9840
9723
  deletedAt: { default: null, required: false, type: Date },
@@ -9847,12 +9730,12 @@ var schema16 = new MongooseSchema24(
9847
9730
  },
9848
9731
  { timestamps: true }
9849
9732
  );
9850
- var GameModel = import_mongoose24.default.models.Game || import_mongoose24.default.model("Game", schema16);
9733
+ var GameModel = import_mongoose23.default.models.Game || import_mongoose23.default.model("Game", schema15);
9851
9734
 
9852
9735
  // src/mongoose/School.ts
9853
- var import_mongoose25 = __toESM(require("mongoose"));
9854
- var MongooseSchema25 = import_mongoose25.default.Schema;
9855
- var campaignsSchema = new MongooseSchema25(
9736
+ var import_mongoose24 = __toESM(require("mongoose"));
9737
+ var MongooseSchema24 = import_mongoose24.default.Schema;
9738
+ var campaignsSchema = new MongooseSchema24(
9856
9739
  {
9857
9740
  endDate: { required: true, type: Date },
9858
9741
  name: { required: true, type: String },
@@ -9860,7 +9743,7 @@ var campaignsSchema = new MongooseSchema25(
9860
9743
  },
9861
9744
  { _id: false }
9862
9745
  );
9863
- var schema17 = new MongooseSchema25(
9746
+ var schema16 = new MongooseSchema24(
9864
9747
  {
9865
9748
  // New schools are active by default
9866
9749
  active: { default: false, required: true, type: Boolean },
@@ -9887,19 +9770,19 @@ var schema17 = new MongooseSchema25(
9887
9770
  },
9888
9771
  { timestamps: true }
9889
9772
  );
9890
- schema17.index(
9773
+ schema16.index(
9891
9774
  { schoolCode: 1 },
9892
9775
  {
9893
9776
  partialFilterExpression: { active: true, deletedAt: null },
9894
9777
  unique: true
9895
9778
  }
9896
9779
  );
9897
- var SchoolModel = import_mongoose25.default.models.School || import_mongoose25.default.model("School", schema17);
9780
+ var SchoolModel = import_mongoose24.default.models.School || import_mongoose24.default.model("School", schema16);
9898
9781
 
9899
9782
  // src/mongoose/Affiliate.ts
9900
- var import_mongoose26 = __toESM(require("mongoose"));
9901
- var MongooseSchema26 = import_mongoose26.default.Schema;
9902
- var affiliateRewardSchema = new MongooseSchema26(
9783
+ var import_mongoose25 = __toESM(require("mongoose"));
9784
+ var MongooseSchema25 = import_mongoose25.default.Schema;
9785
+ var affiliateRewardSchema = new MongooseSchema25(
9903
9786
  {
9904
9787
  createdAt: { required: true, type: Date },
9905
9788
  redeemedAt: { default: null, required: false, type: Date },
@@ -9913,13 +9796,13 @@ var affiliateRewardSchema = new MongooseSchema26(
9913
9796
  },
9914
9797
  { _id: false }
9915
9798
  );
9916
- var affiliateResourceSchema = new MongooseSchema26(
9799
+ var affiliateResourceSchema = new MongooseSchema25(
9917
9800
  {
9918
9801
  resourceActive: { default: true, required: true, type: Boolean },
9919
9802
  resourceDeletedAt: { default: null, required: false, type: Date },
9920
9803
  resourceId: {
9921
9804
  required: true,
9922
- type: import_mongoose26.default.Schema.Types.ObjectId
9805
+ type: import_mongoose25.default.Schema.Types.ObjectId
9923
9806
  },
9924
9807
  resourceName: { required: true, type: String },
9925
9808
  resourceOwner: {
@@ -9939,20 +9822,20 @@ var affiliateResourceSchema = new MongooseSchema26(
9939
9822
  },
9940
9823
  { _id: false }
9941
9824
  );
9942
- var affiliateContactDetailsSchema = new MongooseSchema26(
9825
+ var affiliateContactDetailsSchema = new MongooseSchema25(
9943
9826
  {
9944
9827
  mobilePhone: { required: true, type: String }
9945
9828
  },
9946
9829
  { _id: false }
9947
9830
  );
9948
- var affiliateBankAccountDetailsSchema = new MongooseSchema26(
9831
+ var affiliateBankAccountDetailsSchema = new MongooseSchema25(
9949
9832
  {
9950
9833
  accountHolderName: { required: true, type: String },
9951
9834
  accountNumber: { required: true, type: String }
9952
9835
  },
9953
9836
  { _id: false }
9954
9837
  );
9955
- var affiliateDetailsSchema = new MongooseSchema26(
9838
+ var affiliateDetailsSchema = new MongooseSchema25(
9956
9839
  {
9957
9840
  bankAccountDetails: {
9958
9841
  required: true,
@@ -9974,7 +9857,7 @@ var affiliateDetailsSchema = new MongooseSchema26(
9974
9857
  },
9975
9858
  { _id: false }
9976
9859
  );
9977
- var redeemHistorySchema = new MongooseSchema26(
9860
+ var redeemHistorySchema = new MongooseSchema25(
9978
9861
  {
9979
9862
  paidAt: { default: null, required: false, type: Date },
9980
9863
  redeemedAt: { required: true, type: Date },
@@ -9982,7 +9865,7 @@ var redeemHistorySchema = new MongooseSchema26(
9982
9865
  },
9983
9866
  { _id: false }
9984
9867
  );
9985
- var schema18 = new MongooseSchema26(
9868
+ var schema17 = new MongooseSchema25(
9986
9869
  {
9987
9870
  active: { default: false, required: true, type: Boolean },
9988
9871
  affiliateBonusRewards: {
@@ -10012,14 +9895,113 @@ var schema18 = new MongooseSchema26(
10012
9895
  },
10013
9896
  { timestamps: true }
10014
9897
  );
10015
- schema18.index(
9898
+ schema17.index(
10016
9899
  { affiliateCode: 1 },
10017
9900
  {
10018
9901
  partialFilterExpression: { active: true, deletedAt: null },
10019
9902
  unique: true
10020
9903
  }
10021
9904
  );
10022
- var AffiliateModel = import_mongoose26.default.models.Affiliate || import_mongoose26.default.model("Affiliate", schema18);
9905
+ var AffiliateModel = import_mongoose25.default.models.Affiliate || import_mongoose25.default.model("Affiliate", schema17);
9906
+
9907
+ // src/mongoose/Coupon.ts
9908
+ var import_mongoose26 = __toESM(require("mongoose"));
9909
+ var MongooseSchema26 = import_mongoose26.default.Schema;
9910
+ var couponOptionSchema = new MongooseSchema26(
9911
+ {
9912
+ buy: { required: false, type: Number },
9913
+ get: { required: false, type: Number },
9914
+ type: {
9915
+ enum: Object.values(EnumCouponQualificationType),
9916
+ required: true,
9917
+ type: String
9918
+ },
9919
+ unit: { required: false, type: String },
9920
+ visits: { required: false, type: Number }
9921
+ },
9922
+ { _id: false }
9923
+ );
9924
+ var couponVendorProductSchema = new MongooseSchema26(
9925
+ {
9926
+ couponId: {
9927
+ required: true,
9928
+ type: import_mongoose26.default.Schema.Types.ObjectId
9929
+ },
9930
+ productId: {
9931
+ required: true,
9932
+ type: import_mongoose26.default.Schema.Types.ObjectId
9933
+ },
9934
+ vendorCouponId: {
9935
+ required: false,
9936
+ type: import_mongoose26.default.Schema.Types.ObjectId
9937
+ },
9938
+ vendorId: {
9939
+ ref: "Vendor",
9940
+ required: true,
9941
+ type: import_mongoose26.default.Schema.Types.ObjectId
9942
+ }
9943
+ },
9944
+ { _id: false }
9945
+ );
9946
+ var couponCodeSchema = new MongooseSchema26(
9947
+ {
9948
+ code: { required: true, type: String },
9949
+ qrCode: { required: true, type: ResourceImageTypeSchema },
9950
+ shareableQrCode: { required: true, type: ResourceImageTypeSchema }
9951
+ },
9952
+ { _id: false }
9953
+ );
9954
+ var couponParticipantUserSchema = new MongooseSchema26(
9955
+ {
9956
+ couponCollectedCount: { default: 0, required: true, type: Number },
9957
+ couponRedeemedAt: { default: null, required: false, type: Date },
9958
+ userId: {
9959
+ ref: "User",
9960
+ required: true,
9961
+ type: import_mongoose26.default.Schema.Types.ObjectId
9962
+ }
9963
+ },
9964
+ { timestamps: true }
9965
+ );
9966
+ var couponDataSchema = new MongooseSchema26(
9967
+ {
9968
+ active: { default: true, required: true, type: Boolean },
9969
+ couponCode: { required: false, type: couponCodeSchema },
9970
+ couponDescription: { required: true, type: String },
9971
+ couponOption: { required: true, type: couponOptionSchema },
9972
+ couponVendorProducts: {
9973
+ required: false,
9974
+ type: [couponVendorProductSchema]
9975
+ },
9976
+ endDate: { required: true, type: Date },
9977
+ participantUsers: {
9978
+ default: null,
9979
+ required: false,
9980
+ type: [couponParticipantUserSchema]
9981
+ },
9982
+ resourceId: { required: true, type: String },
9983
+ resourceType: {
9984
+ enum: Object.values(EnumResourceType),
9985
+ required: true,
9986
+ type: String
9987
+ },
9988
+ startDate: { required: true, type: Date }
9989
+ },
9990
+ { timestamps: true }
9991
+ );
9992
+ var schema18 = new MongooseSchema26(
9993
+ {
9994
+ active: { default: true, required: true, type: Boolean },
9995
+ couponData: { default: [], required: false, type: [couponDataSchema] },
9996
+ deletedAt: { default: null, required: false, type: Date },
9997
+ owner: {
9998
+ required: true,
9999
+ type: OwnerTypeSchema
10000
+ }
10001
+ },
10002
+ { timestamps: true }
10003
+ );
10004
+ var CouponModel = import_mongoose26.default.models.Coupon || import_mongoose26.default.model("Coupon", schema18);
10023
10005
 
10024
10006
  // src/service/promoCode/constants.ts
10025
10007
  var ACTIVE_NOT_DELETED_FILTER = {
@@ -12027,7 +12009,6 @@ function updateRelationDatesToUnavailable(relationDates, eventDateTime) {
12027
12009
  normalizeAffiliatePromoCodes,
12028
12010
  normalizePromoCode,
12029
12011
  notifyUsers,
12030
- productCouponSchema,
12031
12012
  publishNotificationEvents,
12032
12013
  refundPolicySchema,
12033
12014
  relatedPostSchema,