@timardex/cluemart-shared 1.2.28 → 1.2.30

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 (42) hide show
  1. package/dist/{ad-ZnPU3uan.d.ts → ad-C02AZIGy.d.ts} +1 -1
  2. package/dist/{ad-C-0i99zR.d.mts → ad-CTWMmc7b.d.mts} +1 -1
  3. package/dist/{auth-Ddkaba1k.d.mts → auth-YsJJnj12.d.mts} +1 -1
  4. package/dist/{auth-BRY-YJss.d.ts → auth-o_ns6gLk.d.ts} +1 -1
  5. package/dist/chunk-BO3HICLR.mjs +24 -0
  6. package/dist/chunk-BO3HICLR.mjs.map +1 -0
  7. package/dist/chunk-O6LVIQFK.mjs +66 -0
  8. package/dist/chunk-O6LVIQFK.mjs.map +1 -0
  9. package/dist/formFields/index.d.mts +1 -1
  10. package/dist/formFields/index.d.ts +1 -1
  11. package/dist/{global-IDogsFQv.d.ts → global-4lS-fh61.d.ts} +37 -4
  12. package/dist/{global-DlaX2SCk.d.mts → global-_ZHkOcnR.d.mts} +37 -4
  13. package/dist/graphql/index.d.mts +2 -2
  14. package/dist/graphql/index.d.ts +2 -2
  15. package/dist/hooks/index.d.mts +3 -3
  16. package/dist/hooks/index.d.ts +3 -3
  17. package/dist/hooks/index.mjs +5 -5
  18. package/dist/index.cjs +1157 -26
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.mts +468 -1
  21. package/dist/index.d.ts +468 -1
  22. package/dist/index.mjs +1130 -26
  23. package/dist/index.mjs.map +1 -1
  24. package/dist/mongoose/index.cjs +1097 -0
  25. package/dist/mongoose/index.cjs.map +1 -0
  26. package/dist/mongoose/index.d.mts +422 -0
  27. package/dist/mongoose/index.d.ts +422 -0
  28. package/dist/mongoose/index.mjs +874 -0
  29. package/dist/mongoose/index.mjs.map +1 -0
  30. package/dist/service/index.cjs +334 -0
  31. package/dist/service/index.cjs.map +1 -0
  32. package/dist/service/index.d.mts +27 -0
  33. package/dist/service/index.d.ts +27 -0
  34. package/dist/service/index.mjs +214 -0
  35. package/dist/service/index.mjs.map +1 -0
  36. package/dist/types/index.d.mts +3 -3
  37. package/dist/types/index.d.ts +3 -3
  38. package/dist/types/index.mjs +4 -19
  39. package/dist/types/index.mjs.map +1 -1
  40. package/dist/utils/index.d.mts +1 -1
  41. package/dist/utils/index.d.ts +1 -1
  42. package/package.json +1 -1
@@ -0,0 +1,874 @@
1
+ import {
2
+ NotificationModel,
3
+ PushTokenModel
4
+ } from "../chunk-O6LVIQFK.mjs";
5
+ import {
6
+ EnumActivity
7
+ } from "../chunk-BO3HICLR.mjs";
8
+ import {
9
+ EnumAdShowOn,
10
+ EnumAdStatus,
11
+ EnumAdStyle,
12
+ EnumAdType
13
+ } from "../chunk-XXZPSRMS.mjs";
14
+ import {
15
+ EnumChatType,
16
+ EnumEventType,
17
+ EnumFoodFlavor,
18
+ EnumInviteStatus,
19
+ EnumOSPlatform,
20
+ EnumPaymentMethod,
21
+ EnumRelationResource,
22
+ EnumResourceType,
23
+ EnumUserLicence,
24
+ EnumUserRole,
25
+ EnumVendorType
26
+ } from "../chunk-NNS747QT.mjs";
27
+
28
+ // src/mongoose/Ad.ts
29
+ import mongoose4 from "mongoose";
30
+
31
+ // src/mongoose/global.ts
32
+ import mongoose3 from "mongoose";
33
+
34
+ // src/mongoose/Relation.ts
35
+ import mongoose2 from "mongoose";
36
+
37
+ // src/mongoose/event/EventInfo.ts
38
+ import mongoose from "mongoose";
39
+ var MongooseSchema = mongoose.Schema;
40
+ var StallTypeSchema = new MongooseSchema(
41
+ {
42
+ electricity: {
43
+ price: { required: false, type: Number },
44
+ selected: { required: false, type: Boolean }
45
+ },
46
+ label: { required: false, type: String },
47
+ price: { required: false, type: Number },
48
+ stallCapacity: { required: false, type: Number }
49
+ },
50
+ {
51
+ _id: false
52
+ // Prevents Mongoose from creating an additional _id field for subdocuments
53
+ }
54
+ );
55
+ var dateTimeSchema = new MongooseSchema(
56
+ {
57
+ endDate: { required: true, type: String },
58
+ endTime: { required: true, type: String },
59
+ stallTypes: [StallTypeSchema],
60
+ startDate: { required: true, type: String },
61
+ startTime: { required: true, type: String }
62
+ },
63
+ { _id: false }
64
+ // Prevents Mongoose from creating an additional _id field for subdocuments
65
+ );
66
+ var paymentInfoSchema = new MongooseSchema(
67
+ {
68
+ accountHolderName: { required: false, type: String },
69
+ accountNumber: { required: false, type: String },
70
+ link: { required: false, type: String },
71
+ paymentMethod: {
72
+ enum: Object.values(EnumPaymentMethod),
73
+ required: true,
74
+ type: String
75
+ }
76
+ },
77
+ { _id: false }
78
+ // Prevents Mongoose from creating an additional _id field
79
+ );
80
+ var requirementsSchema = new MongooseSchema(
81
+ {
82
+ category: { required: true, type: String },
83
+ label: { required: true, type: String },
84
+ value: { required: true, type: Boolean }
85
+ },
86
+ {
87
+ _id: false
88
+ // Prevents Mongoose from creating an additional _id field for
89
+ }
90
+ );
91
+ var schema = new MongooseSchema(
92
+ {
93
+ applicationDeadlineHours: { required: true, type: Number },
94
+ dateTime: [dateTimeSchema],
95
+ eventId: {
96
+ ref: "Event",
97
+ required: false,
98
+ type: mongoose.Schema.Types.ObjectId
99
+ },
100
+ packInTime: { required: true, type: Number },
101
+ paymentDueHours: { required: true, type: Number },
102
+ paymentInfo: [paymentInfoSchema],
103
+ requirements: [requirementsSchema]
104
+ },
105
+ { timestamps: true }
106
+ );
107
+ var EventInfoModel = mongoose.model(
108
+ "EventInfo",
109
+ schema
110
+ );
111
+
112
+ // src/mongoose/Relation.ts
113
+ var MongooseSchema2 = mongoose2.Schema;
114
+ var relationDatesSchema = new MongooseSchema2(
115
+ {
116
+ lastUpdateBy: {
117
+ resourceId: { required: false, type: String },
118
+ userEmail: { required: false, type: String }
119
+ },
120
+ paymentReference: { required: false, type: String },
121
+ stallType: StallTypeSchema,
122
+ startDate: { required: false, type: String },
123
+ startTime: { required: false, type: String },
124
+ status: {
125
+ enum: Object.values(EnumInviteStatus),
126
+ required: false,
127
+ type: String
128
+ }
129
+ },
130
+ { _id: false }
131
+ );
132
+ var RelationTypeSchema = new MongooseSchema2(
133
+ {
134
+ active: { default: true, required: true, type: Boolean },
135
+ chatId: {
136
+ ref: "Chat",
137
+ required: true,
138
+ type: mongoose2.Schema.Types.ObjectId
139
+ },
140
+ deletedAt: { default: null, required: false, type: Date },
141
+ eventId: {
142
+ ref: "Event",
143
+ required: true,
144
+ type: mongoose2.Schema.Types.ObjectId
145
+ },
146
+ lastUpdateBy: {
147
+ enum: Object.values(EnumResourceType),
148
+ required: true,
149
+ type: String
150
+ },
151
+ relationDates: [relationDatesSchema],
152
+ relationType: {
153
+ enum: Object.values(EnumRelationResource),
154
+ required: true,
155
+ type: String
156
+ },
157
+ vendorId: {
158
+ ref: "Vendor",
159
+ required: true,
160
+ type: mongoose2.Schema.Types.ObjectId
161
+ }
162
+ },
163
+ { timestamps: true }
164
+ );
165
+ RelationTypeSchema.index({
166
+ "relationDates.startDate": 1,
167
+ "relationDates.startTime": 1,
168
+ "relationDates.status": 1
169
+ });
170
+ var RelationModel = mongoose2.model(
171
+ "Relation",
172
+ RelationTypeSchema
173
+ );
174
+
175
+ // src/mongoose/global.ts
176
+ var MongooseSchema3 = mongoose3.Schema;
177
+ var OwnerTypeSchema = new MongooseSchema3(
178
+ {
179
+ email: { required: true, type: String },
180
+ userId: {
181
+ ref: "User",
182
+ required: true,
183
+ type: mongoose3.Schema.Types.ObjectId
184
+ }
185
+ },
186
+ { _id: false }
187
+ // Prevents Mongoose from creating an additional _id field for subdocuments
188
+ );
189
+ var SocialMediaTypeSchema = new MongooseSchema3(
190
+ {
191
+ link: { required: true, type: String },
192
+ name: { required: true, type: String }
193
+ },
194
+ { _id: false }
195
+ // Prevents Mongoose from creating an additional _id field
196
+ );
197
+ var ResourceImageTypeSchema = new MongooseSchema3(
198
+ {
199
+ source: { required: false, type: String },
200
+ title: { required: false, type: String }
201
+ },
202
+ { _id: false }
203
+ // Prevents Mongoose from creating an additional _id field for subdocuments
204
+ );
205
+ var SubCategorySchema = new MongooseSchema3(
206
+ {
207
+ id: { required: false, type: String },
208
+ items: [
209
+ {
210
+ id: { required: false, type: String },
211
+ name: { required: false, type: String }
212
+ }
213
+ ],
214
+ name: { required: false, type: String }
215
+ },
216
+ { _id: false }
217
+ // Prevents Mongoose from creating an additional _id field for subdocuments
218
+ );
219
+ var CategorySchema = new MongooseSchema3(
220
+ {
221
+ id: { required: true, type: String },
222
+ name: { required: true, type: String },
223
+ subcategories: [SubCategorySchema]
224
+ },
225
+ { _id: false }
226
+ // Prevents Mongoose from creating an additional _id field for subdocuments
227
+ );
228
+ var PosterUsageTypeSchema = new MongooseSchema3(
229
+ {
230
+ count: { default: 0, required: false, type: Number },
231
+ month: { required: false, type: String }
232
+ },
233
+ { _id: false }
234
+ // Prevents Mongoose from creating an additional _id field for subdocuments
235
+ );
236
+ var partnersSchema = new MongooseSchema3(
237
+ {
238
+ email: { required: false, type: String },
239
+ licence: {
240
+ enum: Object.values(EnumUserLicence),
241
+ required: false,
242
+ type: String
243
+ },
244
+ resourceId: {
245
+ required: false,
246
+ type: String
247
+ },
248
+ resourceType: {
249
+ enum: Object.values(EnumResourceType),
250
+ required: false,
251
+ type: String
252
+ }
253
+ },
254
+ { _id: false }
255
+ // Prevents Mongoose from creating an additional _id field for subdocuments
256
+ );
257
+ var ContactDetailsSchema = new MongooseSchema3(
258
+ {
259
+ email: { required: false, type: String },
260
+ landlinePhone: { required: false, type: String },
261
+ mobilePhone: { required: false, type: String }
262
+ },
263
+ { _id: false }
264
+ // Prevents Mongoose from creating an additional _id field for subdocuments
265
+ );
266
+ var termsAgreementSchema = new MongooseSchema3(
267
+ {
268
+ appBuildNumber: { required: true, type: String },
269
+ appId: { required: true, type: String },
270
+ appVersion: { required: true, type: String },
271
+ brand: { required: true, type: String },
272
+ deviceName: { required: true, type: String },
273
+ installationId: { required: true, type: String },
274
+ manufacturer: { required: true, type: String },
275
+ modelName: { required: true, type: String },
276
+ osName: { required: true, type: String },
277
+ osVersion: { required: true, type: String },
278
+ termVersion: { required: true, type: String },
279
+ timestamp: { required: true, type: String }
280
+ },
281
+ { _id: false }
282
+ );
283
+ var resourceRelationsSchema = new MongooseSchema3(
284
+ {
285
+ relationDates: {
286
+ default: [],
287
+ required: false,
288
+ type: [relationDatesSchema]
289
+ },
290
+ relationId: {
291
+ ref: "Relation",
292
+ required: false,
293
+ type: mongoose3.Schema.Types.ObjectId
294
+ }
295
+ },
296
+ { _id: false }
297
+ );
298
+ var baseResourceFields = {
299
+ active: { default: false, required: true, type: Boolean },
300
+ adIds: {
301
+ ref: "Ad",
302
+ required: false,
303
+ type: [mongoose3.Schema.Types.ObjectId]
304
+ },
305
+ contactDetails: ContactDetailsSchema,
306
+ cover: ResourceImageTypeSchema,
307
+ deletedAt: { default: null, required: false, type: Date },
308
+ description: { required: true, type: String },
309
+ images: [ResourceImageTypeSchema],
310
+ logo: ResourceImageTypeSchema,
311
+ name: { required: true, type: String },
312
+ owner: OwnerTypeSchema,
313
+ partners: {
314
+ required: false,
315
+ type: [partnersSchema]
316
+ },
317
+ posterUsage: PosterUsageTypeSchema,
318
+ promoCodes: { required: false, type: [String] },
319
+ region: { required: true, type: String },
320
+ relations: {
321
+ default: [],
322
+ required: false,
323
+ type: [resourceRelationsSchema]
324
+ },
325
+ socialMedia: [SocialMediaTypeSchema],
326
+ termsAgreement: termsAgreementSchema
327
+ };
328
+
329
+ // src/mongoose/Ad.ts
330
+ var MongooseSchema4 = mongoose4.Schema;
331
+ var schema2 = new MongooseSchema4(
332
+ {
333
+ active: { default: true, type: Boolean },
334
+ adStyle: {
335
+ default: "Bloom" /* BLOOM */,
336
+ enum: Object.values(EnumAdStyle),
337
+ required: true,
338
+ type: String
339
+ },
340
+ adType: {
341
+ default: "Sponsored" /* SPONSORED */,
342
+ enum: Object.values(EnumAdType),
343
+ required: true,
344
+ type: String
345
+ },
346
+ // TODO: similar to ViewSchema
347
+ clicks: { default: 0, required: true, type: Number },
348
+ clui: { required: false, type: String },
349
+ end: { required: true, type: Date },
350
+ // TODO: similar to ViewSchema
351
+ impressions: { default: 0, required: true, type: Number },
352
+ resourceCover: { required: true, type: String },
353
+ resourceDescription: { required: true, type: String },
354
+ resourceId: { required: true, type: String },
355
+ resourceLogo: { required: false, type: String },
356
+ resourceName: { required: true, type: String },
357
+ resourceRegion: { required: true, type: String },
358
+ resourceType: {
359
+ enum: Object.values(EnumResourceType),
360
+ required: true,
361
+ type: String
362
+ },
363
+ showOn: {
364
+ default: "Front_page" /* FRONT_PAGE */,
365
+ enum: Object.values(EnumAdShowOn),
366
+ required: true,
367
+ type: String
368
+ },
369
+ socialMedia: [SocialMediaTypeSchema],
370
+ start: { required: true, type: Date },
371
+ status: {
372
+ default: "Active" /* ACTIVE */,
373
+ enum: Object.values(EnumAdStatus),
374
+ required: true,
375
+ type: String
376
+ },
377
+ targetRegion: { required: false, type: String }
378
+ },
379
+ {
380
+ timestamps: true
381
+ }
382
+ );
383
+ schema2.index({
384
+ end: 1,
385
+ start: 1,
386
+ status: 1
387
+ });
388
+ var AdModel = mongoose4.model("Ad", schema2);
389
+
390
+ // src/mongoose/Chat.ts
391
+ import mongoose5 from "mongoose";
392
+ var MongooseSchema5 = mongoose5.Schema;
393
+ var MessageSchema = new MongooseSchema5(
394
+ {
395
+ content: { required: true, type: String },
396
+ senderAvatar: { required: false, type: String },
397
+ senderId: {
398
+ ref: "User",
399
+ required: true,
400
+ type: mongoose5.Schema.Types.ObjectId
401
+ },
402
+ senderName: { required: true, type: String }
403
+ },
404
+ { timestamps: true }
405
+ );
406
+ var ParticipantSchema = new MongooseSchema5(
407
+ {
408
+ active: { default: true, required: true, type: Boolean },
409
+ email: { required: true, type: String },
410
+ userId: {
411
+ ref: "User",
412
+ required: true,
413
+ type: mongoose5.Schema.Types.ObjectId
414
+ }
415
+ },
416
+ { _id: false }
417
+ // Prevents Mongoose from creating an additional _id field for subdocuments
418
+ );
419
+ var ChatSchema = new MongooseSchema5(
420
+ {
421
+ active: { default: true, required: true, type: Boolean },
422
+ chatName: { required: true, type: String },
423
+ chatType: {
424
+ enum: Object.values(EnumChatType),
425
+ required: true,
426
+ type: String
427
+ },
428
+ deletedAt: { default: null, required: false, type: Date },
429
+ messages: [MessageSchema],
430
+ participants: [ParticipantSchema],
431
+ resourceInfo: {
432
+ eventId: {
433
+ ref: "Event",
434
+ required: false,
435
+ type: mongoose5.Schema.Types.ObjectId
436
+ },
437
+ vendorId: {
438
+ ref: "Vendor",
439
+ required: false,
440
+ type: mongoose5.Schema.Types.ObjectId
441
+ }
442
+ }
443
+ },
444
+ {
445
+ timestamps: true
446
+ }
447
+ );
448
+ var ChatModel = mongoose5.model("Chat", ChatSchema);
449
+
450
+ // src/mongoose/ResourceActivity.ts
451
+ import mongoose6 from "mongoose";
452
+ var MongooseSchema6 = mongoose6.Schema;
453
+ var ActivitySchema = new MongooseSchema6(
454
+ {
455
+ activityType: {
456
+ enum: Object.values(EnumActivity),
457
+ required: true,
458
+ type: String
459
+ },
460
+ location: {
461
+ coordinates: {
462
+ required: false,
463
+ type: [Number]
464
+ },
465
+ type: {
466
+ default: "Point",
467
+ enum: ["Point"],
468
+ required: false,
469
+ type: String
470
+ }
471
+ },
472
+ startDate: { required: false, type: String },
473
+ startTime: { required: false, type: String },
474
+ timestamp: { default: Date.now, type: Date },
475
+ userAgent: {
476
+ enum: Object.values(EnumOSPlatform),
477
+ required: true,
478
+ type: String
479
+ },
480
+ userId: { required: false, type: String }
481
+ },
482
+ { _id: false }
483
+ );
484
+ var schema3 = new MongooseSchema6(
485
+ {
486
+ activity: { default: [], type: [ActivitySchema] },
487
+ resourceId: { required: true, type: String },
488
+ resourceType: {
489
+ enum: Object.values(EnumResourceType),
490
+ required: true,
491
+ type: String
492
+ }
493
+ },
494
+ { timestamps: true }
495
+ );
496
+ schema3.index({ resourceId: 1, resourceType: 1 }, { unique: true });
497
+ schema3.index({ "views.location": "2dsphere" });
498
+ var ResourceActivityModel = mongoose6.model("ResourceActivity", schema3);
499
+
500
+ // src/mongoose/Testers.ts
501
+ import mongoose7 from "mongoose";
502
+ var MongooseSchema7 = mongoose7.Schema;
503
+ var TesterSchema = new MongooseSchema7(
504
+ {
505
+ active: { default: false, required: true, type: Boolean },
506
+ categories: [CategorySchema],
507
+ companyName: { required: true, type: String },
508
+ email: { required: true, type: String },
509
+ firstName: { required: true, type: String },
510
+ lastName: { required: true, type: String },
511
+ osType: {
512
+ enum: Object.values(EnumOSPlatform),
513
+ required: true,
514
+ type: String
515
+ },
516
+ region: { required: true, type: String },
517
+ resourceType: {
518
+ enum: Object.values(EnumResourceType),
519
+ required: true,
520
+ type: String
521
+ }
522
+ },
523
+ {
524
+ timestamps: true
525
+ }
526
+ );
527
+ var TesterModel = mongoose7.model("Tester", TesterSchema);
528
+
529
+ // src/mongoose/User.ts
530
+ import mongoose8 from "mongoose";
531
+ var MongooseSchema8 = mongoose8.Schema;
532
+ var userActivityEventSchema = new MongooseSchema8(
533
+ {
534
+ resourceId: {
535
+ ref: "Event",
536
+ required: false,
537
+ type: mongoose8.Schema.Types.ObjectId
538
+ },
539
+ startDate: { required: false, type: String },
540
+ startTime: { required: false, type: String }
541
+ },
542
+ { _id: false }
543
+ );
544
+ var userActivityFavouritesSchema = new MongooseSchema8(
545
+ {
546
+ events: {
547
+ ref: "Event",
548
+ required: false,
549
+ type: [mongoose8.Schema.Types.ObjectId]
550
+ },
551
+ vendors: {
552
+ ref: "Vendor",
553
+ required: false,
554
+ type: [mongoose8.Schema.Types.ObjectId]
555
+ }
556
+ },
557
+ { _id: false }
558
+ );
559
+ var schema4 = new MongooseSchema8(
560
+ {
561
+ active: { default: false, required: true, type: Boolean },
562
+ avatar: ResourceImageTypeSchema,
563
+ deletedAt: { default: null, required: false, type: Date },
564
+ email: { required: true, type: String },
565
+ events: {
566
+ ref: "Event",
567
+ required: false,
568
+ type: [mongoose8.Schema.Types.ObjectId]
569
+ },
570
+ firstName: { required: true, type: String },
571
+ isTester: { default: false, required: false, type: Boolean },
572
+ lastName: { required: true, type: String },
573
+ licences: {
574
+ enum: Object.values(EnumUserLicence),
575
+ required: false,
576
+ type: [String]
577
+ },
578
+ partners: {
579
+ required: false,
580
+ type: [partnersSchema]
581
+ },
582
+ password: { required: true, type: String },
583
+ platform: {
584
+ enum: Object.values(EnumOSPlatform),
585
+ required: false,
586
+ type: String
587
+ },
588
+ preferredRegion: {
589
+ required: true,
590
+ type: String
591
+ },
592
+ refreshToken: {
593
+ required: false,
594
+ type: String
595
+ },
596
+ role: {
597
+ default: "customer" /* CUSTOMER */,
598
+ enum: Object.values(EnumUserRole),
599
+ required: true,
600
+ type: String
601
+ },
602
+ termsAgreement: termsAgreementSchema,
603
+ userActivity: {
604
+ favourites: {
605
+ default: () => ({ events: [], vendors: [] }),
606
+ type: userActivityFavouritesSchema
607
+ },
608
+ going: {
609
+ events: [userActivityEventSchema]
610
+ },
611
+ interested: {
612
+ events: [userActivityEventSchema]
613
+ },
614
+ present: {
615
+ events: [userActivityEventSchema]
616
+ }
617
+ },
618
+ vendor: {
619
+ ref: "Vendor",
620
+ required: false,
621
+ type: mongoose8.Schema.Types.ObjectId
622
+ }
623
+ },
624
+ { timestamps: true }
625
+ );
626
+ schema4.index({ "partners.email": 1 });
627
+ var UserModel = mongoose8.model("User", schema4);
628
+
629
+ // src/mongoose/VerificationToken.ts
630
+ import mongoose9 from "mongoose";
631
+ var MongooseSchema9 = mongoose9.Schema;
632
+ var schema5 = new MongooseSchema9(
633
+ {
634
+ createdAt: {
635
+ default: Date.now,
636
+ expires: 24 * 60 * 60,
637
+ // 24 hours in seconds (MongoDB TTL expects seconds)
638
+ required: true,
639
+ type: Date
640
+ },
641
+ // Token expires after 1 day
642
+ email: { required: true, type: String },
643
+ verificationToken: { required: true, type: String }
644
+ },
645
+ { timestamps: true }
646
+ );
647
+ var VerificationTokenModel = mongoose9.model(
648
+ "VerificationToken",
649
+ schema5
650
+ );
651
+
652
+ // src/mongoose/vendor/Vendor.ts
653
+ import mongoose10 from "mongoose";
654
+ var MongooseSchema10 = mongoose10.Schema;
655
+ var MenuTypeSchema = new MongooseSchema10(
656
+ {
657
+ description: { required: false, type: String },
658
+ name: { required: false, type: String },
659
+ price: { required: false, type: Number },
660
+ productGroups: { required: false, type: [String] }
661
+ },
662
+ { _id: false }
663
+ // Prevents Mongoose from creating an additional _id field for subdocuments
664
+ );
665
+ var LocationsSchema = new MongooseSchema10(
666
+ {
667
+ dateTime: {
668
+ endDate: { required: false, type: String },
669
+ endTime: { required: false, type: String },
670
+ startDate: { required: false, type: String },
671
+ startTime: { required: false, type: String }
672
+ },
673
+ description: { required: false, type: String },
674
+ location: {
675
+ city: { required: false, type: String },
676
+ coordinates: {
677
+ required: false,
678
+ type: [Number]
679
+ // [longitude, latitude]
680
+ },
681
+ country: { required: false, type: String },
682
+ fullAddress: { required: false, type: String },
683
+ latitude: { required: false, type: Number },
684
+ longitude: { required: false, type: Number },
685
+ region: { required: false, type: String },
686
+ type: { required: false, type: String }
687
+ // Mongoose GeoJSON type
688
+ }
689
+ },
690
+ { _id: false }
691
+ // Prevents Mongoose from creating an additional _id field for subdocuments
692
+ );
693
+ var schema6 = new MongooseSchema10(
694
+ {
695
+ ...baseResourceFields,
696
+ // Importing base resource fields from global.ts
697
+ availability: {
698
+ corporate: { default: false, required: false, type: Boolean },
699
+ private: { default: false, required: false, type: Boolean },
700
+ school: { default: false, required: false, type: Boolean }
701
+ },
702
+ categories: [CategorySchema],
703
+ locations: [LocationsSchema],
704
+ multiLocation: { required: true, type: Boolean },
705
+ products: [MenuTypeSchema],
706
+ vendorInfoId: {
707
+ ref: "VendorInfo",
708
+ required: false,
709
+ type: mongoose10.Schema.Types.ObjectId
710
+ },
711
+ vendorType: {
712
+ enum: Object.values(EnumVendorType),
713
+ required: true,
714
+ type: String
715
+ }
716
+ },
717
+ { timestamps: true }
718
+ );
719
+ schema6.index({ name: 1 });
720
+ schema6.index({ description: 1 });
721
+ schema6.index({ region: 1 });
722
+ schema6.index({ "categories.name": 1 });
723
+ schema6.index({ "partners.email": 1 });
724
+ var VendorModel = mongoose10.model("Vendor", schema6);
725
+
726
+ // src/mongoose/vendor/VendorInfo.ts
727
+ import mongoose11 from "mongoose";
728
+ var MongooseSchema11 = mongoose11.Schema;
729
+ var AttributesSchema = new MongooseSchema11(
730
+ {
731
+ details: { required: false, type: String },
732
+ isRequired: { default: false, required: true, type: Boolean }
733
+ },
734
+ { _id: false }
735
+ );
736
+ var schema7 = new MongooseSchema11(
737
+ {
738
+ compliance: {
739
+ foodBeverageLicense: { default: false, required: false, type: Boolean },
740
+ liabilityInsurance: { default: false, required: false, type: Boolean }
741
+ },
742
+ documents: [ResourceImageTypeSchema],
743
+ product: {
744
+ foodFlavors: {
745
+ enum: Object.values(EnumFoodFlavor),
746
+ required: true,
747
+ type: [String]
748
+ },
749
+ packaging: { required: true, type: [String] },
750
+ priceRange: {
751
+ max: { required: true, type: Number },
752
+ min: { required: true, type: Number }
753
+ },
754
+ producedIn: { required: true, type: [String] }
755
+ },
756
+ requirements: {
757
+ electricity: AttributesSchema,
758
+ gazebo: AttributesSchema,
759
+ table: AttributesSchema
760
+ },
761
+ stallInfo: {
762
+ size: {
763
+ depth: { required: true, type: Number },
764
+ width: { required: true, type: Number }
765
+ }
766
+ },
767
+ vendorId: {
768
+ ref: "Vendor",
769
+ required: true,
770
+ type: mongoose11.Schema.Types.ObjectId
771
+ }
772
+ },
773
+ { timestamps: true }
774
+ );
775
+ var VendorInfoModel = mongoose11.model(
776
+ "VendorInfo",
777
+ schema7
778
+ );
779
+
780
+ // src/mongoose/event/Event.ts
781
+ import mongoose12 from "mongoose";
782
+ var MongooseSchema12 = mongoose12.Schema;
783
+ var locationsSchema = new MongooseSchema12(
784
+ {
785
+ city: { required: true, type: String },
786
+ coordinates: {
787
+ required: true,
788
+ type: [Number]
789
+ // [longitude, latitude]
790
+ },
791
+ country: { required: true, type: String },
792
+ fullAddress: { required: true, type: String },
793
+ latitude: { required: true, type: Number },
794
+ longitude: { required: true, type: Number },
795
+ region: { required: true, type: String },
796
+ type: {
797
+ default: "Point",
798
+ enum: ["Point"],
799
+ required: true,
800
+ type: String
801
+ }
802
+ },
803
+ { _id: false }
804
+ // Prevents Mongoose from creating an additional _id field for subdocuments
805
+ );
806
+ var dateTimeSchema2 = new MongooseSchema12(
807
+ {
808
+ endDate: { required: true, type: String },
809
+ endTime: { required: true, type: String },
810
+ startDate: { required: true, type: String },
811
+ startTime: { required: true, type: String }
812
+ },
813
+ { _id: false }
814
+ // Prevents Mongoose from creating an additional _id field for subdocuments
815
+ );
816
+ var schema8 = new MongooseSchema12(
817
+ {
818
+ ...baseResourceFields,
819
+ // Importing base resource fields from global.ts
820
+ dateTime: [dateTimeSchema2],
821
+ eventInfoId: {
822
+ ref: "EventInfo",
823
+ required: false,
824
+ type: mongoose12.Schema.Types.ObjectId
825
+ },
826
+ eventType: {
827
+ enum: Object.values(EnumEventType),
828
+ required: true,
829
+ type: String
830
+ },
831
+ location: {
832
+ required: true,
833
+ type: locationsSchema
834
+ },
835
+ nzbn: { required: true, type: String },
836
+ provider: { required: false, type: String },
837
+ rainOrShine: { required: true, type: Boolean },
838
+ tags: { required: true, type: [String] }
839
+ },
840
+ { timestamps: true }
841
+ );
842
+ schema8.index({ name: 1 });
843
+ schema8.index({ description: 1 });
844
+ schema8.index({ region: 1 });
845
+ schema8.index({ location: "2dsphere" });
846
+ schema8.index({ tags: 1 });
847
+ schema8.index({ "partners.email": 1 });
848
+ var EventModel = mongoose12.model("Event", schema8);
849
+ export {
850
+ AdModel,
851
+ CategorySchema,
852
+ ChatModel,
853
+ EventInfoModel,
854
+ EventModel,
855
+ NotificationModel,
856
+ ParticipantSchema,
857
+ PushTokenModel,
858
+ RelationModel,
859
+ RelationTypeSchema,
860
+ ResourceActivityModel,
861
+ ResourceImageTypeSchema,
862
+ SocialMediaTypeSchema,
863
+ StallTypeSchema,
864
+ TesterModel,
865
+ UserModel,
866
+ VendorInfoModel,
867
+ VendorModel,
868
+ VerificationTokenModel,
869
+ baseResourceFields,
870
+ partnersSchema,
871
+ relationDatesSchema,
872
+ termsAgreementSchema
873
+ };
874
+ //# sourceMappingURL=index.mjs.map