@timardex/cluemart-server-shared 1.1.26 → 1.1.28

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,
@@ -7885,6 +7884,7 @@ var COUPON_PARTICIPANT_USER_FIELDS_FRAGMENT = gql`
7885
7884
  createdAt
7886
7885
  updatedAt
7887
7886
  userId
7887
+ nickName
7888
7888
  }
7889
7889
  `;
7890
7890
  var COUPON_OPTION_FIELDS_FRAGMENT = gql`
@@ -7894,6 +7894,7 @@ var COUPON_OPTION_FIELDS_FRAGMENT = gql`
7894
7894
  get
7895
7895
  unit
7896
7896
  visits
7897
+ maxCouponCount
7897
7898
  }
7898
7899
  `;
7899
7900
  var COUPON_VENDOR_PRODUCT_FIELDS_FRAGMENT = gql`
@@ -7971,8 +7972,18 @@ var COUPON = gql`
7971
7972
  ${COUPON_DATA_FIELDS_FRAGMENT}
7972
7973
  `;
7973
7974
  var GET_COUPONS = gql`
7974
- query getCoupons($region: String, $category: String) {
7975
- coupons(region: $region, category: $category) {
7975
+ query getCoupons(
7976
+ $region: String
7977
+ $category: String
7978
+ $resourceId: String
7979
+ $resourceType: ResourceTypeEnum
7980
+ ) {
7981
+ coupons(
7982
+ region: $region
7983
+ category: $category
7984
+ resourceId: $resourceId
7985
+ resourceType: $resourceType
7986
+ ) {
7976
7987
  active {
7977
7988
  listName
7978
7989
  data {
@@ -8049,6 +8060,14 @@ var SCAN_COUPON_MUTATION = gql`
8049
8060
  }
8050
8061
  }
8051
8062
  `;
8063
+ var REWARD_COUPON_MUTATION = gql`
8064
+ mutation rewardCoupon($input: ProductCouponInputType!, $userId: ID!) {
8065
+ rewardCoupon(input: $input, userId: $userId) {
8066
+ data
8067
+ message
8068
+ }
8069
+ }
8070
+ `;
8052
8071
  var PKG = "@timardex/cluemart-shared";
8053
8072
  var IMAGE_EXTENSION = ".webp";
8054
8073
  var posterIds = [
@@ -9210,126 +9229,10 @@ var schema8 = new MongooseSchema12(
9210
9229
  var VerificationTokenModel = import_mongoose12.default.models.VerificationToken || import_mongoose12.default.model("VerificationToken", schema8);
9211
9230
 
9212
9231
  // src/mongoose/vendor/Vendor.ts
9213
- var import_mongoose14 = __toESM(require("mongoose"));
9214
-
9215
- // src/mongoose/Coupon.ts
9216
9232
  var import_mongoose13 = __toESM(require("mongoose"));
9217
9233
  var MongooseSchema13 = import_mongoose13.default.Schema;
9218
- var productCouponSchema = new MongooseSchema13(
9219
- {
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(
9234
+ var vendorProductTypeSchema = new MongooseSchema13(
9277
9235
  {
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
9236
  description: { required: false, type: String },
9334
9237
  name: { required: true, type: String },
9335
9238
  price: { required: true, type: Number },
@@ -9339,14 +9242,14 @@ var vendorProductTypeSchema = new MongooseSchema14(
9339
9242
  },
9340
9243
  { timestamps: true }
9341
9244
  );
9342
- var productWrapperSchema = new MongooseSchema14(
9245
+ var productWrapperSchema = new MongooseSchema13(
9343
9246
  {
9344
9247
  active: { default: false, required: false, type: Boolean },
9345
9248
  productsList: { required: false, type: [vendorProductTypeSchema] }
9346
9249
  },
9347
9250
  { _id: false }
9348
9251
  );
9349
- var calendarSchema = new MongooseSchema14(
9252
+ var calendarSchema = new MongooseSchema13(
9350
9253
  {
9351
9254
  dateTime: {
9352
9255
  dateStatus: {
@@ -9367,14 +9270,14 @@ var calendarSchema = new MongooseSchema14(
9367
9270
  },
9368
9271
  { _id: false }
9369
9272
  );
9370
- var calendarWrapperSchema = new MongooseSchema14(
9273
+ var calendarWrapperSchema = new MongooseSchema13(
9371
9274
  {
9372
9275
  active: { default: false, required: true, type: Boolean },
9373
9276
  calendarData: { required: false, type: [calendarSchema] }
9374
9277
  },
9375
9278
  { _id: false }
9376
9279
  );
9377
- var schema10 = new MongooseSchema14(
9280
+ var schema9 = new MongooseSchema13(
9378
9281
  {
9379
9282
  ...baseResourceFields,
9380
9283
  // Importing base resource fields from global.ts
@@ -9400,12 +9303,12 @@ var schema10 = new MongooseSchema14(
9400
9303
  unregisteredVendorId: {
9401
9304
  ref: "UnregisteredVendor",
9402
9305
  required: false,
9403
- type: import_mongoose14.default.Schema.Types.ObjectId
9306
+ type: import_mongoose13.default.Schema.Types.ObjectId
9404
9307
  },
9405
9308
  vendorInfoId: {
9406
9309
  ref: "VendorInfo",
9407
9310
  required: false,
9408
- type: import_mongoose14.default.Schema.Types.ObjectId
9311
+ type: import_mongoose13.default.Schema.Types.ObjectId
9409
9312
  },
9410
9313
  vendorType: {
9411
9314
  enum: Object.values(EnumVendorType),
@@ -9415,24 +9318,24 @@ var schema10 = new MongooseSchema14(
9415
9318
  },
9416
9319
  { timestamps: true }
9417
9320
  );
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);
9321
+ schema9.index({ name: 1 });
9322
+ schema9.index({ description: 1 });
9323
+ schema9.index({ region: 1 });
9324
+ schema9.index({ "categories.name": 1 });
9325
+ schema9.index({ slug: 1 });
9326
+ var VendorModel = import_mongoose13.default.models.Vendor || import_mongoose13.default.model("Vendor", schema9);
9424
9327
 
9425
9328
  // src/mongoose/vendor/VendorInfo.ts
9426
- var import_mongoose15 = __toESM(require("mongoose"));
9427
- var MongooseSchema15 = import_mongoose15.default.Schema;
9428
- var AttributesSchema = new MongooseSchema15(
9329
+ var import_mongoose14 = __toESM(require("mongoose"));
9330
+ var MongooseSchema14 = import_mongoose14.default.Schema;
9331
+ var AttributesSchema = new MongooseSchema14(
9429
9332
  {
9430
9333
  details: { required: false, type: String },
9431
9334
  isRequired: { default: false, required: true, type: Boolean }
9432
9335
  },
9433
9336
  { _id: false }
9434
9337
  );
9435
- var schema11 = new MongooseSchema15(
9338
+ var schema10 = new MongooseSchema14(
9436
9339
  {
9437
9340
  active: { default: true, type: Boolean },
9438
9341
  compliance: {
@@ -9467,28 +9370,28 @@ var schema11 = new MongooseSchema15(
9467
9370
  vendorId: {
9468
9371
  ref: "Vendor",
9469
9372
  required: true,
9470
- type: import_mongoose15.default.Schema.Types.ObjectId
9373
+ type: import_mongoose14.default.Schema.Types.ObjectId
9471
9374
  }
9472
9375
  },
9473
9376
  { timestamps: true }
9474
9377
  );
9475
- var VendorInfoModel = import_mongoose15.default.models.VendorInfo || import_mongoose15.default.model("VendorInfo", schema11);
9378
+ var VendorInfoModel = import_mongoose14.default.models.VendorInfo || import_mongoose14.default.model("VendorInfo", schema10);
9476
9379
 
9477
9380
  // src/mongoose/vendor/UnregisteredVendor.ts
9478
- var import_mongoose16 = __toESM(require("mongoose"));
9479
- var MongooseSchema16 = import_mongoose16.default.Schema;
9480
- var invitationSchema = new MongooseSchema16(
9381
+ var import_mongoose15 = __toESM(require("mongoose"));
9382
+ var MongooseSchema15 = import_mongoose15.default.Schema;
9383
+ var invitationSchema = new MongooseSchema15(
9481
9384
  {
9482
9385
  dateTime: { required: true, type: [dateTimeSchema2] },
9483
9386
  inviterId: {
9484
9387
  ref: "Event",
9485
9388
  required: true,
9486
- type: import_mongoose16.default.Schema.Types.ObjectId
9389
+ type: import_mongoose15.default.Schema.Types.ObjectId
9487
9390
  }
9488
9391
  },
9489
9392
  { _id: false }
9490
9393
  );
9491
- var schema12 = new MongooseSchema16(
9394
+ var schema11 = new MongooseSchema15(
9492
9395
  {
9493
9396
  active: { default: true, required: true, type: Boolean },
9494
9397
  categoryIds: { required: true, type: [String] },
@@ -9497,7 +9400,7 @@ var schema12 = new MongooseSchema16(
9497
9400
  claimedByUserId: {
9498
9401
  ref: "User",
9499
9402
  required: false,
9500
- type: import_mongoose16.default.Schema.Types.ObjectId
9403
+ type: import_mongoose15.default.Schema.Types.ObjectId
9501
9404
  },
9502
9405
  claimInitiatedAt: { default: null, required: false, type: Date },
9503
9406
  claimToken: { default: null, required: false, type: String },
@@ -9510,14 +9413,14 @@ var schema12 = new MongooseSchema16(
9510
9413
  },
9511
9414
  { timestamps: true }
9512
9415
  );
9513
- schema12.index({ name: 1 });
9514
- schema12.index({ email: 1 });
9515
- var UnregisteredVendorModel = import_mongoose16.default.models.UnregisteredVendor || import_mongoose16.default.model("UnregisteredVendor", schema12);
9416
+ schema11.index({ name: 1 });
9417
+ schema11.index({ email: 1 });
9418
+ var UnregisteredVendorModel = import_mongoose15.default.models.UnregisteredVendor || import_mongoose15.default.model("UnregisteredVendor", schema11);
9516
9419
 
9517
9420
  // src/mongoose/event/Event.ts
9518
- var import_mongoose17 = __toESM(require("mongoose"));
9519
- var MongooseSchema17 = import_mongoose17.default.Schema;
9520
- var schema13 = new MongooseSchema17(
9421
+ var import_mongoose16 = __toESM(require("mongoose"));
9422
+ var MongooseSchema16 = import_mongoose16.default.Schema;
9423
+ var schema12 = new MongooseSchema16(
9521
9424
  {
9522
9425
  ...baseResourceFields,
9523
9426
  // Importing base resource fields from global.ts
@@ -9526,7 +9429,7 @@ var schema13 = new MongooseSchema17(
9526
9429
  eventInfoId: {
9527
9430
  ref: "EventInfo",
9528
9431
  required: false,
9529
- type: import_mongoose17.default.Schema.Types.ObjectId
9432
+ type: import_mongoose16.default.Schema.Types.ObjectId
9530
9433
  },
9531
9434
  eventType: {
9532
9435
  enum: Object.values(EnumEventType),
@@ -9555,20 +9458,20 @@ var schema13 = new MongooseSchema17(
9555
9458
  },
9556
9459
  { timestamps: true }
9557
9460
  );
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);
9461
+ schema12.index({ name: 1 });
9462
+ schema12.index({ description: 1 });
9463
+ schema12.index({ region: 1 });
9464
+ schema12.index({ "location.geo": "2dsphere" });
9465
+ schema12.index({ tags: 1 });
9466
+ schema12.index({ deletedAt: 1 });
9467
+ schema12.index({ "dateTime.dateStatus": 1 });
9468
+ schema12.index({ slug: 1 });
9469
+ var EventModel = import_mongoose16.default.models.Event || import_mongoose16.default.model("Event", schema12);
9567
9470
 
9568
9471
  // src/mongoose/Partner.ts
9569
- var import_mongoose18 = __toESM(require("mongoose"));
9570
- var MongooseSchema18 = import_mongoose18.default.Schema;
9571
- var schema14 = new MongooseSchema18(
9472
+ var import_mongoose17 = __toESM(require("mongoose"));
9473
+ var MongooseSchema17 = import_mongoose17.default.Schema;
9474
+ var schema13 = new MongooseSchema17(
9572
9475
  {
9573
9476
  ...baseResourceFields,
9574
9477
  location: {
@@ -9584,19 +9487,19 @@ var schema14 = new MongooseSchema18(
9584
9487
  },
9585
9488
  { timestamps: true }
9586
9489
  );
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);
9490
+ schema13.index({ name: 1 });
9491
+ schema13.index({ description: 1 });
9492
+ schema13.index({ region: 1 });
9493
+ schema13.index({ "location.geo": "2dsphere" });
9494
+ schema13.index({ slug: 1 });
9495
+ var PartnerModel = import_mongoose17.default.models.Partner || import_mongoose17.default.model("Partner", schema13);
9593
9496
 
9594
9497
  // src/mongoose/Post.ts
9595
- var import_mongoose19 = __toESM(require("mongoose"));
9596
- var MongooseSchema19 = import_mongoose19.default.Schema;
9597
- var contentSchema = new MongooseSchema19(
9498
+ var import_mongoose18 = __toESM(require("mongoose"));
9499
+ var MongooseSchema18 = import_mongoose18.default.Schema;
9500
+ var contentSchema = new MongooseSchema18(
9598
9501
  {
9599
- contentData: import_mongoose19.Schema.Types.Mixed,
9502
+ contentData: import_mongoose18.Schema.Types.Mixed,
9600
9503
  contentOrder: { required: true, type: Number },
9601
9504
  contentType: {
9602
9505
  enum: Object.values(EnumPostContentType),
@@ -9606,7 +9509,7 @@ var contentSchema = new MongooseSchema19(
9606
9509
  },
9607
9510
  { _id: false }
9608
9511
  );
9609
- var resourceSchema = new MongooseSchema19(
9512
+ var resourceSchema = new MongooseSchema18(
9610
9513
  {
9611
9514
  resourceId: { required: true, type: String },
9612
9515
  resourceRegion: { required: true, type: String },
@@ -9619,7 +9522,7 @@ var resourceSchema = new MongooseSchema19(
9619
9522
  },
9620
9523
  { _id: false }
9621
9524
  );
9622
- var schema15 = new MongooseSchema19(
9525
+ var schema14 = new MongooseSchema18(
9623
9526
  {
9624
9527
  active: { default: false, required: true, type: Boolean },
9625
9528
  approvedAt: { default: null, required: false, type: Date },
@@ -9650,16 +9553,16 @@ var schema15 = new MongooseSchema19(
9650
9553
  },
9651
9554
  { timestamps: true }
9652
9555
  );
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);
9556
+ schema14.index({ title: 1 });
9557
+ schema14.index({ tags: 1 });
9558
+ schema14.index({ postType: 1, slug: 1 }, { unique: true });
9559
+ var PostModel = import_mongoose18.default.models.Post || import_mongoose18.default.model("Post", schema14);
9657
9560
 
9658
9561
  // src/mongoose/AppSetting.ts
9659
- var import_mongoose20 = __toESM(require("mongoose"));
9660
- var MongooseSchema20 = import_mongoose20.default.Schema;
9562
+ var import_mongoose19 = __toESM(require("mongoose"));
9563
+ var MongooseSchema19 = import_mongoose19.default.Schema;
9661
9564
  var APP_SETTINGS_ID = "APP_SETTINGS_DOCUMENT_ID";
9662
- var AppSettingSchema = new MongooseSchema20(
9565
+ var AppSettingSchema = new MongooseSchema19(
9663
9566
  {
9664
9567
  activeSchoolsStudentCountTotal: {
9665
9568
  default: 0,
@@ -9690,18 +9593,18 @@ var AppSettingSchema = new MongooseSchema20(
9690
9593
  },
9691
9594
  { timestamps: true }
9692
9595
  );
9693
- var AppSettingModel = import_mongoose20.default.models.AppSetting || import_mongoose20.default.model("AppSetting", AppSettingSchema);
9596
+ var AppSettingModel = import_mongoose19.default.models.AppSetting || import_mongoose19.default.model("AppSetting", AppSettingSchema);
9694
9597
 
9695
9598
  // src/mongoose/game/Game.ts
9696
- var import_mongoose24 = __toESM(require("mongoose"));
9599
+ var import_mongoose23 = __toESM(require("mongoose"));
9697
9600
 
9698
9601
  // src/mongoose/game/DailyClue.ts
9699
- var import_mongoose22 = __toESM(require("mongoose"));
9602
+ var import_mongoose21 = __toESM(require("mongoose"));
9700
9603
 
9701
9604
  // src/mongoose/game/utils.ts
9702
- var import_mongoose21 = __toESM(require("mongoose"));
9703
- var MongooseSchema21 = import_mongoose21.default.Schema;
9704
- var schemaGameDate = new MongooseSchema21(
9605
+ var import_mongoose20 = __toESM(require("mongoose"));
9606
+ var MongooseSchema20 = import_mongoose20.default.Schema;
9607
+ var schemaGameDate = new MongooseSchema20(
9705
9608
  {
9706
9609
  endDate: { required: true, type: Date },
9707
9610
  startDate: { required: true, type: Date }
@@ -9710,8 +9613,8 @@ var schemaGameDate = new MongooseSchema21(
9710
9613
  );
9711
9614
 
9712
9615
  // src/mongoose/game/DailyClue.ts
9713
- var MongooseSchema22 = import_mongoose22.default.Schema;
9714
- var schemaLetters = new MongooseSchema22(
9616
+ var MongooseSchema21 = import_mongoose21.default.Schema;
9617
+ var schemaLetters = new MongooseSchema21(
9715
9618
  {
9716
9619
  collected: { required: false, type: [String] },
9717
9620
  solutionShuffled: { required: true, type: [String] }
@@ -9719,14 +9622,14 @@ var schemaLetters = new MongooseSchema22(
9719
9622
  },
9720
9623
  { _id: false }
9721
9624
  );
9722
- var schemaDailyClueBaseGame = new MongooseSchema22(
9625
+ var schemaDailyClueBaseGame = new MongooseSchema21(
9723
9626
  {
9724
9627
  gameDate: { required: true, type: schemaGameDate },
9725
9628
  gameSolution: { required: true, type: String }
9726
9629
  },
9727
9630
  { _id: false }
9728
9631
  );
9729
- var schemaDailyClueGameData = new MongooseSchema22(
9632
+ var schemaDailyClueGameData = new MongooseSchema21(
9730
9633
  {
9731
9634
  gameFields: { required: true, type: schemaDailyClueBaseGame },
9732
9635
  lastFoundDate: { default: null, required: false, type: Date },
@@ -9741,9 +9644,9 @@ var schemaDailyClueGameData = new MongooseSchema22(
9741
9644
  );
9742
9645
 
9743
9646
  // src/mongoose/game/PuzzleGame.ts
9744
- var import_mongoose23 = __toESM(require("mongoose"));
9745
- var MongooseSchema23 = import_mongoose23.default.Schema;
9746
- var schemaPuzzleAnswer = new MongooseSchema23(
9647
+ var import_mongoose22 = __toESM(require("mongoose"));
9648
+ var MongooseSchema22 = import_mongoose22.default.Schema;
9649
+ var schemaPuzzleAnswer = new MongooseSchema22(
9747
9650
  {
9748
9651
  answer: { required: true, type: String },
9749
9652
  answerId: { required: true, type: String },
@@ -9751,7 +9654,7 @@ var schemaPuzzleAnswer = new MongooseSchema23(
9751
9654
  },
9752
9655
  { _id: false }
9753
9656
  );
9754
- var schemaPuzzleQuestion = new MongooseSchema23(
9657
+ var schemaPuzzleQuestion = new MongooseSchema22(
9755
9658
  {
9756
9659
  answers: { required: true, type: [schemaPuzzleAnswer] },
9757
9660
  question: { required: true, type: String },
@@ -9759,20 +9662,20 @@ var schemaPuzzleQuestion = new MongooseSchema23(
9759
9662
  },
9760
9663
  { _id: false }
9761
9664
  );
9762
- var schemaPuzzleBaseGame = new MongooseSchema23(
9665
+ var schemaPuzzleBaseGame = new MongooseSchema22(
9763
9666
  {
9764
9667
  questions: { required: true, type: [schemaPuzzleQuestion] }
9765
9668
  },
9766
9669
  { _id: false }
9767
9670
  );
9768
- var schemaPuzzleAnsweredQuestion = new MongooseSchema23(
9671
+ var schemaPuzzleAnsweredQuestion = new MongooseSchema22(
9769
9672
  {
9770
9673
  questionId: { required: true, type: String },
9771
9674
  selectedAnswerId: { required: true, type: String }
9772
9675
  },
9773
9676
  { _id: false }
9774
9677
  );
9775
- var schemaPuzzleGameData = new MongooseSchema23(
9678
+ var schemaPuzzleGameData = new MongooseSchema22(
9776
9679
  {
9777
9680
  answeredQuestions: {
9778
9681
  default: null,
@@ -9787,7 +9690,7 @@ var schemaPuzzleGameData = new MongooseSchema23(
9787
9690
  );
9788
9691
 
9789
9692
  // src/mongoose/game/Game.ts
9790
- var MongooseSchema24 = import_mongoose24.default.Schema;
9693
+ var MongooseSchema23 = import_mongoose23.default.Schema;
9791
9694
  var gameDataSchemas = {
9792
9695
  [EnumGameType.DAILY_CLUE]: schemaDailyClueGameData,
9793
9696
  [EnumGameType.MINI_QUIZ]: schemaPuzzleGameData,
@@ -9799,7 +9702,7 @@ var gameDataDefinition = Object.fromEntries(
9799
9702
  { default: null, required: false, type: schema19 }
9800
9703
  ])
9801
9704
  );
9802
- var gameHistorySchema = new MongooseSchema24(
9705
+ var gameHistorySchema = new MongooseSchema23(
9803
9706
  {
9804
9707
  createdAt: { required: true, type: Date },
9805
9708
  gameDate: { required: true, type: schemaGameDate },
@@ -9819,7 +9722,7 @@ var gameHistorySchema = new MongooseSchema24(
9819
9722
  },
9820
9723
  { _id: false }
9821
9724
  );
9822
- var gameTypeSchema = new MongooseSchema24(
9725
+ var gameTypeSchema = new MongooseSchema23(
9823
9726
  {
9824
9727
  active: { default: true, required: true, type: Boolean },
9825
9728
  gameData: gameDataDefinition,
@@ -9834,7 +9737,7 @@ var gameTypeSchema = new MongooseSchema24(
9834
9737
  },
9835
9738
  { timestamps: true }
9836
9739
  );
9837
- var schema16 = new MongooseSchema24(
9740
+ var schema15 = new MongooseSchema23(
9838
9741
  {
9839
9742
  active: { default: false, required: true, type: Boolean },
9840
9743
  deletedAt: { default: null, required: false, type: Date },
@@ -9847,12 +9750,12 @@ var schema16 = new MongooseSchema24(
9847
9750
  },
9848
9751
  { timestamps: true }
9849
9752
  );
9850
- var GameModel = import_mongoose24.default.models.Game || import_mongoose24.default.model("Game", schema16);
9753
+ var GameModel = import_mongoose23.default.models.Game || import_mongoose23.default.model("Game", schema15);
9851
9754
 
9852
9755
  // src/mongoose/School.ts
9853
- var import_mongoose25 = __toESM(require("mongoose"));
9854
- var MongooseSchema25 = import_mongoose25.default.Schema;
9855
- var campaignsSchema = new MongooseSchema25(
9756
+ var import_mongoose24 = __toESM(require("mongoose"));
9757
+ var MongooseSchema24 = import_mongoose24.default.Schema;
9758
+ var campaignsSchema = new MongooseSchema24(
9856
9759
  {
9857
9760
  endDate: { required: true, type: Date },
9858
9761
  name: { required: true, type: String },
@@ -9860,7 +9763,7 @@ var campaignsSchema = new MongooseSchema25(
9860
9763
  },
9861
9764
  { _id: false }
9862
9765
  );
9863
- var schema17 = new MongooseSchema25(
9766
+ var schema16 = new MongooseSchema24(
9864
9767
  {
9865
9768
  // New schools are active by default
9866
9769
  active: { default: false, required: true, type: Boolean },
@@ -9887,19 +9790,19 @@ var schema17 = new MongooseSchema25(
9887
9790
  },
9888
9791
  { timestamps: true }
9889
9792
  );
9890
- schema17.index(
9793
+ schema16.index(
9891
9794
  { schoolCode: 1 },
9892
9795
  {
9893
9796
  partialFilterExpression: { active: true, deletedAt: null },
9894
9797
  unique: true
9895
9798
  }
9896
9799
  );
9897
- var SchoolModel = import_mongoose25.default.models.School || import_mongoose25.default.model("School", schema17);
9800
+ var SchoolModel = import_mongoose24.default.models.School || import_mongoose24.default.model("School", schema16);
9898
9801
 
9899
9802
  // src/mongoose/Affiliate.ts
9900
- var import_mongoose26 = __toESM(require("mongoose"));
9901
- var MongooseSchema26 = import_mongoose26.default.Schema;
9902
- var affiliateRewardSchema = new MongooseSchema26(
9803
+ var import_mongoose25 = __toESM(require("mongoose"));
9804
+ var MongooseSchema25 = import_mongoose25.default.Schema;
9805
+ var affiliateRewardSchema = new MongooseSchema25(
9903
9806
  {
9904
9807
  createdAt: { required: true, type: Date },
9905
9808
  redeemedAt: { default: null, required: false, type: Date },
@@ -9913,13 +9816,13 @@ var affiliateRewardSchema = new MongooseSchema26(
9913
9816
  },
9914
9817
  { _id: false }
9915
9818
  );
9916
- var affiliateResourceSchema = new MongooseSchema26(
9819
+ var affiliateResourceSchema = new MongooseSchema25(
9917
9820
  {
9918
9821
  resourceActive: { default: true, required: true, type: Boolean },
9919
9822
  resourceDeletedAt: { default: null, required: false, type: Date },
9920
9823
  resourceId: {
9921
9824
  required: true,
9922
- type: import_mongoose26.default.Schema.Types.ObjectId
9825
+ type: import_mongoose25.default.Schema.Types.ObjectId
9923
9826
  },
9924
9827
  resourceName: { required: true, type: String },
9925
9828
  resourceOwner: {
@@ -9939,20 +9842,20 @@ var affiliateResourceSchema = new MongooseSchema26(
9939
9842
  },
9940
9843
  { _id: false }
9941
9844
  );
9942
- var affiliateContactDetailsSchema = new MongooseSchema26(
9845
+ var affiliateContactDetailsSchema = new MongooseSchema25(
9943
9846
  {
9944
9847
  mobilePhone: { required: true, type: String }
9945
9848
  },
9946
9849
  { _id: false }
9947
9850
  );
9948
- var affiliateBankAccountDetailsSchema = new MongooseSchema26(
9851
+ var affiliateBankAccountDetailsSchema = new MongooseSchema25(
9949
9852
  {
9950
9853
  accountHolderName: { required: true, type: String },
9951
9854
  accountNumber: { required: true, type: String }
9952
9855
  },
9953
9856
  { _id: false }
9954
9857
  );
9955
- var affiliateDetailsSchema = new MongooseSchema26(
9858
+ var affiliateDetailsSchema = new MongooseSchema25(
9956
9859
  {
9957
9860
  bankAccountDetails: {
9958
9861
  required: true,
@@ -9974,7 +9877,7 @@ var affiliateDetailsSchema = new MongooseSchema26(
9974
9877
  },
9975
9878
  { _id: false }
9976
9879
  );
9977
- var redeemHistorySchema = new MongooseSchema26(
9880
+ var redeemHistorySchema = new MongooseSchema25(
9978
9881
  {
9979
9882
  paidAt: { default: null, required: false, type: Date },
9980
9883
  redeemedAt: { required: true, type: Date },
@@ -9982,7 +9885,7 @@ var redeemHistorySchema = new MongooseSchema26(
9982
9885
  },
9983
9886
  { _id: false }
9984
9887
  );
9985
- var schema18 = new MongooseSchema26(
9888
+ var schema17 = new MongooseSchema25(
9986
9889
  {
9987
9890
  active: { default: false, required: true, type: Boolean },
9988
9891
  affiliateBonusRewards: {
@@ -10012,14 +9915,114 @@ var schema18 = new MongooseSchema26(
10012
9915
  },
10013
9916
  { timestamps: true }
10014
9917
  );
10015
- schema18.index(
9918
+ schema17.index(
10016
9919
  { affiliateCode: 1 },
10017
9920
  {
10018
9921
  partialFilterExpression: { active: true, deletedAt: null },
10019
9922
  unique: true
10020
9923
  }
10021
9924
  );
10022
- var AffiliateModel = import_mongoose26.default.models.Affiliate || import_mongoose26.default.model("Affiliate", schema18);
9925
+ var AffiliateModel = import_mongoose25.default.models.Affiliate || import_mongoose25.default.model("Affiliate", schema17);
9926
+
9927
+ // src/mongoose/Coupon.ts
9928
+ var import_mongoose26 = __toESM(require("mongoose"));
9929
+ var MongooseSchema26 = import_mongoose26.default.Schema;
9930
+ var couponOptionSchema = new MongooseSchema26(
9931
+ {
9932
+ buy: { required: false, type: Number },
9933
+ get: { required: false, type: Number },
9934
+ maxCouponCount: { required: false, type: Number },
9935
+ type: {
9936
+ enum: Object.values(EnumCouponQualificationType),
9937
+ required: true,
9938
+ type: String
9939
+ },
9940
+ unit: { required: false, type: String },
9941
+ visits: { required: false, type: Number }
9942
+ },
9943
+ { _id: false }
9944
+ );
9945
+ var couponVendorProductSchema = new MongooseSchema26(
9946
+ {
9947
+ couponId: {
9948
+ required: true,
9949
+ type: import_mongoose26.default.Schema.Types.ObjectId
9950
+ },
9951
+ productId: {
9952
+ required: true,
9953
+ type: import_mongoose26.default.Schema.Types.ObjectId
9954
+ },
9955
+ vendorCouponId: {
9956
+ required: false,
9957
+ type: import_mongoose26.default.Schema.Types.ObjectId
9958
+ },
9959
+ vendorId: {
9960
+ ref: "Vendor",
9961
+ required: true,
9962
+ type: import_mongoose26.default.Schema.Types.ObjectId
9963
+ }
9964
+ },
9965
+ { _id: false }
9966
+ );
9967
+ var couponCodeSchema = new MongooseSchema26(
9968
+ {
9969
+ code: { required: true, type: String },
9970
+ qrCode: { required: true, type: ResourceImageTypeSchema },
9971
+ shareableQrCode: { required: true, type: ResourceImageTypeSchema }
9972
+ },
9973
+ { _id: false }
9974
+ );
9975
+ var couponParticipantUserSchema = new MongooseSchema26(
9976
+ {
9977
+ couponCollectedCount: { default: 0, required: true, type: Number },
9978
+ couponRedeemedAt: { default: null, required: false, type: Date },
9979
+ userId: {
9980
+ ref: "User",
9981
+ required: true,
9982
+ type: import_mongoose26.default.Schema.Types.ObjectId
9983
+ }
9984
+ },
9985
+ { timestamps: true }
9986
+ );
9987
+ var couponDataSchema = new MongooseSchema26(
9988
+ {
9989
+ active: { default: true, required: true, type: Boolean },
9990
+ couponCode: { required: false, type: couponCodeSchema },
9991
+ couponDescription: { required: true, type: String },
9992
+ couponOption: { required: true, type: couponOptionSchema },
9993
+ couponVendorProducts: {
9994
+ required: false,
9995
+ type: [couponVendorProductSchema]
9996
+ },
9997
+ endDate: { required: true, type: Date },
9998
+ participantUsers: {
9999
+ default: null,
10000
+ required: false,
10001
+ type: [couponParticipantUserSchema]
10002
+ },
10003
+ resourceId: { required: true, type: String },
10004
+ resourceType: {
10005
+ enum: Object.values(EnumResourceType),
10006
+ required: true,
10007
+ type: String
10008
+ },
10009
+ startDate: { required: true, type: Date }
10010
+ },
10011
+ { timestamps: true }
10012
+ );
10013
+ var schema18 = new MongooseSchema26(
10014
+ {
10015
+ active: { default: true, required: true, type: Boolean },
10016
+ couponData: { default: [], required: false, type: [couponDataSchema] },
10017
+ deletedAt: { default: null, required: false, type: Date },
10018
+ owner: {
10019
+ required: true,
10020
+ type: OwnerTypeSchema
10021
+ }
10022
+ },
10023
+ { timestamps: true }
10024
+ );
10025
+ var CouponModel = import_mongoose26.default.models.Coupon || import_mongoose26.default.model("Coupon", schema18);
10023
10026
 
10024
10027
  // src/service/promoCode/constants.ts
10025
10028
  var ACTIVE_NOT_DELETED_FILTER = {
@@ -10091,7 +10094,7 @@ var SHARE_RESOURCE_LABEL2 = {
10091
10094
  school: "School"
10092
10095
  };
10093
10096
 
10094
- // node_modules/@timardex/cluemart-shared/dist/chunk-GR2JH7DC.mjs
10097
+ // node_modules/@timardex/cluemart-shared/dist/chunk-NNHCOVND.mjs
10095
10098
  var PROMO_CODE_PREFIX2 = "CM-";
10096
10099
  var OBJECT_ID_PATH_SEGMENT2 = "[a-f0-9]{24}";
10097
10100
  var OBJECT_ID_PATH_SEGMENT_END2 = `${OBJECT_ID_PATH_SEGMENT2}$`;
@@ -10193,7 +10196,7 @@ var gameScreenIdentifierList2 = [
10193
10196
  }
10194
10197
  ];
10195
10198
 
10196
- // node_modules/@timardex/cluemart-shared/dist/chunk-5YXMWX5D.mjs
10199
+ // node_modules/@timardex/cluemart-shared/dist/chunk-JZWO462D.mjs
10197
10200
  var import_dayjs4 = __toESM(require("dayjs"), 1);
10198
10201
  var statusOptions2 = [
10199
10202
  ...Object.values(EnumInviteStatus2).map((status) => ({
@@ -12027,7 +12030,6 @@ function updateRelationDatesToUnavailable(relationDates, eventDateTime) {
12027
12030
  normalizeAffiliatePromoCodes,
12028
12031
  normalizePromoCode,
12029
12032
  notifyUsers,
12030
- productCouponSchema,
12031
12033
  publishNotificationEvents,
12032
12034
  refundPolicySchema,
12033
12035
  relatedPostSchema,