@timardex/cluemart-shared 1.2.30 → 1.2.32

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 (44) hide show
  1. package/dist/{ad-C02AZIGy.d.ts → ad-Cv1V8lgJ.d.ts} +1 -1
  2. package/dist/{ad-CTWMmc7b.d.mts → ad-IVwm5MLY.d.mts} +1 -1
  3. package/dist/{auth-o_ns6gLk.d.ts → auth-BCxQp_CF.d.ts} +1 -1
  4. package/dist/{auth-YsJJnj12.d.mts → auth-BczaOu28.d.mts} +1 -1
  5. package/dist/{chunk-BO3HICLR.mjs → chunk-4OLDTZXH.mjs} +3 -1
  6. package/dist/chunk-4OLDTZXH.mjs.map +1 -0
  7. package/dist/{chunk-O6LVIQFK.mjs → chunk-NPHPFWQH.mjs} +3 -6
  8. package/dist/chunk-NPHPFWQH.mjs.map +1 -0
  9. package/dist/formFields/index.d.mts +2 -1
  10. package/dist/formFields/index.d.ts +2 -1
  11. package/dist/{global-4lS-fh61.d.ts → global-Bnr6l_NH.d.ts} +1 -0
  12. package/dist/{global-_ZHkOcnR.d.mts → global-_89-F0iL.d.mts} +1 -0
  13. package/dist/graphql/index.d.mts +3 -2
  14. package/dist/graphql/index.d.ts +3 -2
  15. package/dist/hooks/index.d.mts +4 -3
  16. package/dist/hooks/index.d.ts +4 -3
  17. package/dist/index.cjs +78 -84
  18. package/dist/index.cjs.map +1 -1
  19. package/dist/index.d.mts +11 -11
  20. package/dist/index.d.ts +11 -11
  21. package/dist/index.mjs +77 -84
  22. package/dist/index.mjs.map +1 -1
  23. package/dist/mongoose/index.cjs +65 -77
  24. package/dist/mongoose/index.cjs.map +1 -1
  25. package/dist/mongoose/index.d.mts +6 -13
  26. package/dist/mongoose/index.d.ts +6 -13
  27. package/dist/mongoose/index.mjs +13 -25
  28. package/dist/mongoose/index.mjs.map +1 -1
  29. package/dist/service/index.cjs +18 -12
  30. package/dist/service/index.cjs.map +1 -1
  31. package/dist/service/index.d.mts +9 -2
  32. package/dist/service/index.d.ts +9 -2
  33. package/dist/service/index.mjs +12 -6
  34. package/dist/service/index.mjs.map +1 -1
  35. package/dist/types/index.cjs +15 -2
  36. package/dist/types/index.cjs.map +1 -1
  37. package/dist/types/index.d.mts +5 -4
  38. package/dist/types/index.d.ts +5 -4
  39. package/dist/types/index.mjs +5 -3
  40. package/dist/utils/index.d.mts +2 -1
  41. package/dist/utils/index.d.ts +2 -1
  42. package/package.json +3 -1
  43. package/dist/chunk-BO3HICLR.mjs.map +0 -1
  44. package/dist/chunk-O6LVIQFK.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mongoose/index.ts","../../src/mongoose/Ad.ts","../../src/enums/index.ts","../../src/types/ad.ts","../../src/types/resourceActivities.ts","../../src/mongoose/global.ts","../../src/mongoose/Relation.ts","../../src/mongoose/event/EventInfo.ts","../../src/mongoose/Chat.ts","../../src/mongoose/Notification.ts","../../src/mongoose/PushToken.ts","../../src/mongoose/ResourceActivity.ts","../../src/mongoose/Testers.ts","../../src/mongoose/User.ts","../../src/mongoose/VerificationToken.ts","../../src/mongoose/vendor/Vendor.ts","../../src/mongoose/vendor/VendorInfo.ts","../../src/mongoose/event/Event.ts"],"sourcesContent":["export * from \"./Ad\";\nexport * from \"./Chat\";\nexport * from \"./global\";\nexport * from \"./Notification\";\nexport * from \"./PushToken\";\nexport * from \"./Relation\";\nexport * from \"./ResourceActivity\";\nexport * from \"./Testers\";\nexport * from \"./User\";\nexport * from \"./VerificationToken\";\nexport * from \"./vendor/Vendor\";\nexport * from \"./vendor/VendorInfo\";\nexport * from \"./event/Event\";\nexport * from \"./event/EventInfo\";\n","import mongoose from \"mongoose\";\n\nimport { EnumResourceType } from \"src/enums\";\nimport {\n AdType,\n EnumAdShowOn,\n EnumAdStatus,\n EnumAdStyle,\n EnumAdType,\n} from \"src/types\";\n\nimport { SocialMediaTypeSchema } from \"./global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst schema = new MongooseSchema<AdType>(\n {\n active: { default: true, type: Boolean },\n adStyle: {\n default: EnumAdStyle.BLOOM,\n enum: Object.values(EnumAdStyle),\n required: true,\n type: String,\n },\n adType: {\n default: EnumAdType.SPONSORED,\n enum: Object.values(EnumAdType),\n required: true,\n type: String,\n },\n // TODO: similar to ViewSchema\n clicks: { default: 0, required: true, type: Number },\n clui: { required: false, type: String },\n end: { required: true, type: Date },\n // TODO: similar to ViewSchema\n impressions: { default: 0, required: true, type: Number },\n resourceCover: { required: true, type: String },\n resourceDescription: { required: true, type: String },\n resourceId: { required: true, type: String },\n resourceLogo: { required: false, type: String },\n resourceName: { required: true, type: String },\n resourceRegion: { required: true, type: String },\n resourceType: {\n enum: Object.values(EnumResourceType),\n required: true,\n type: String,\n },\n showOn: {\n default: EnumAdShowOn.FRONT_PAGE,\n enum: Object.values(EnumAdShowOn),\n required: true,\n type: String,\n },\n socialMedia: [SocialMediaTypeSchema],\n start: { required: true, type: Date },\n status: {\n default: EnumAdStatus.ACTIVE,\n enum: Object.values(EnumAdStatus),\n required: true,\n type: String,\n },\n targetRegion: { required: false, type: String },\n },\n {\n timestamps: true,\n },\n);\n\n// Compound index for background job queries\nschema.index({\n end: 1,\n start: 1,\n status: 1,\n});\n\nexport const AdModel = mongoose.model<AdType>(\"Ad\", schema);\n","export enum EnumInviteStatus {\n ACCEPTED = \"Accepted\",\n COMPLETED = \"Completed\",\n EXPIRED = \"Expired\",\n NO_STATUS = \"No_Status\",\n PAID = \"Paid\",\n PENDING = \"Pending\",\n REJECTED = \"Rejected\",\n UNAVAILABLE = \"Unavailable\",\n WAITING = \"Waiting\",\n}\n\nexport enum EnumChatType {\n GROUP = \"group\",\n PRIVATE = \"private\",\n RELATION = \"relation\",\n}\n\nexport enum EnumPaymentMethod {\n CASH = \"cash\",\n EFTPOS = \"eftpos\",\n BANK_TRANSFER = \"bank_transfer\",\n PAYPAL = \"paypal\",\n STRIPE = \"stripe\",\n}\n\nexport enum EnumFoodFlavor {\n SALTY = \"Salty\",\n SAVOURY = \"Savoury\",\n SPICY = \"Spicy\",\n SWEET = \"Sweet\",\n}\n\nexport enum EnumResourceType {\n EVENT = \"event\",\n VENDOR = \"vendor\",\n}\n\nexport enum EnumEventType {\n EXPO = \"Expo\",\n FAIR = \"Fair\",\n FESTIVAL = \"Festival\",\n MARKET = \"Market\",\n}\n\nexport enum EnumVendorType {\n STALLHOLDER = \"Stallholder\",\n SHOP = \"Shop\",\n CHARITY = \"Charity\",\n}\n\nexport enum EnumOSPlatform {\n ANDROID = \"android\",\n IOS = \"ios\",\n WEB = \"web\",\n}\n\nexport enum EnumRelationResource {\n EVENT_INVITE_VENDOR = \"event_invite_vendor\",\n VENDOR_APPLICATION_TO_EVENT = \"vendor_application_to_event\",\n}\n\nexport enum EnumNotificationResourceType {\n ADDED_AS_PARTNER_EVENT = \"added_as_partner_event\",\n ADDED_AS_PARTNER_VENDOR = \"added_as_partner_vendor\",\n APPROVED_EVENT = \"approved_event\",\n APPROVED_VENDOR = \"approved_vendor\",\n CREATED_EVENT = \"created_event\",\n CREATED_VENDOR = \"created_vendor\",\n EVENT_INVITE_VENDOR = EnumRelationResource.EVENT_INVITE_VENDOR,\n EVENT_STARTING_SOON = \"event_starting_soon\",\n NEW_CHAT_MESSAGE = \"new_chat_message\",\n VENDOR_APPLICATION_TO_EVENT = EnumRelationResource.VENDOR_APPLICATION_TO_EVENT,\n}\n\nexport enum EnumNotificationType {\n EVENT = EnumResourceType.EVENT,\n VENDOR = EnumResourceType.VENDOR,\n RELATION = \"relation\",\n CHAT = \"chat\",\n SYSTEM = \"system\",\n}\n\nexport enum EnumRegions {\n Auckland = \"Auckland\",\n BayOfPlentyGisborne = \"Bay of Plenty & Gisborne\",\n Canterbury = \"Canterbury\",\n HawkesBay = \"Hawke's Bay\",\n ManawatuWanganui = \"Manawatu-Wanganui\",\n MarlboroughNelson = \"Marlborough & Nelson\",\n Northland = \"Northland\",\n SouthlandOtago = \"Southland & Otago\",\n Taranaki = \"Taranaki\",\n Waikato = \"Waikato\",\n Wellington = \"Wellington\",\n TasmanWestCoast = \"Tasman & West Coast\",\n}\n\nexport enum ImageTypeEnum {\n AVATAR = \"avatar\",\n COVER = \"cover\",\n IMAGE = \"image\",\n LOGO = \"logo\",\n}\n\nexport enum EnumUserLicence {\n PRO_EVENT = \"pro_event\",\n PRO_PLUS_EVENT = \"pro_plus_event\",\n PRO_PLUS_VENDOR = \"pro_plus_vendor\",\n PRO_VENDOR = \"pro_vendor\",\n STANDARD_EVENT = \"standard_event\",\n STANDARD_VENDOR = \"standard_vendor\",\n}\n\nexport enum EnumUserRole {\n ADMIN = \"admin\",\n CUSTOMER = \"customer\",\n MARKETING = \"marketing\",\n MODERATOR = \"moderator\",\n SUPPORT = \"support\",\n}\n\nexport enum EnumSocialMedia {\n FACEBOOK = \"facebook\",\n INSTAGRAM = \"instagram\",\n TIKTOK = \"tiktok\",\n TWITTER = \"twitter\",\n WEBSITE = \"website\",\n YOUTUBE = \"youtube\",\n}\n","import { EnumResourceType } from \"src/enums\";\n\nimport { CreateFormData, SocialMediaType } from \"./global\";\n\nexport enum EnumAdShowOn {\n FRONT_PAGE = \"Front_page\",\n EVENTS_PAGE = \"Events_page\",\n VENDORS_PAGE = \"Vendors_page\",\n}\n\nexport enum EnumAdStatus {\n ACTIVE = \"Active\",\n PAUSED = \"Paused\",\n EXPIRED = \"Expired\",\n}\n\nexport enum EnumAdType {\n SPONSORED = \"Sponsored\",\n FREE = \"Free\",\n}\n\nexport enum EnumAdStyle {\n BLOOM = \"Bloom\",\n RISE = \"Rise\",\n}\n\nexport interface AdFormData {\n active: boolean;\n adStyle: EnumAdStyle;\n adType: EnumAdType;\n clui?: string | null;\n end: Date; // ISO date string\n resourceCover: string;\n resourceDescription: string;\n resourceId: string;\n resourceLogo?: string | null;\n resourceName: string;\n resourceRegion: string;\n resourceType: EnumResourceType;\n showOn: EnumAdShowOn;\n socialMedia?: SocialMediaType[] | null;\n start?: Date; // ISO date string\n status: EnumAdStatus;\n targetRegion?: string | null;\n}\n\nexport type CreateAdFormData = CreateFormData<AdFormData>;\n\nexport interface AdType extends AdFormData {\n _id: string;\n clicks?: number; // How many times the ad was clicked\n createdAt: Date;\n impressions?: number; // How often the ad was seen\n start: Date; // ISO date string\n updatedAt: Date;\n}\n","import { EnumOSPlatform, EnumResourceType } from \"src/enums\";\n\nexport enum EnumActivity {\n FAVORITE = \"FAVORITE\",\n GOING = \"GOING\",\n INTERESTED = \"INTERESTED\",\n PRESENT = \"PRESENT\",\n VIEW = \"VIEW\",\n}\n\nexport type ResourceActivityEntry = {\n activityType: EnumActivity;\n location: {\n type: \"Point\";\n coordinates: number[]; // [longitude, latitude]\n } | null;\n startDate?: string | null;\n startTime?: string | null;\n timestamp: Date;\n userAgent: EnumOSPlatform;\n userId?: string | null;\n};\n\nexport type ResourceActivityType = {\n _id: string;\n resourceType: EnumResourceType;\n resourceId: string;\n activity: ResourceActivityEntry[];\n};\n\nexport type ResourceActivityInputType = {\n resourceId: string;\n resourceType: string;\n activity: Omit<ResourceActivityEntry, \"timestamp\">;\n};\n","import mongoose from \"mongoose\";\n\nimport { EnumResourceType, EnumUserLicence } from \"src/enums\";\nimport {\n Category,\n ObjectId,\n OwnerType,\n PartnerType,\n PosterUsageType,\n RelationDate,\n ResourceContactDetailsType,\n ResourceImageType,\n SocialMediaType,\n Subcategory,\n TermsAgreement,\n} from \"src/types\";\n\nimport { relationDatesSchema } from \"./Relation\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaOwnerType = Omit<OwnerType, \"userId\"> & {\n userId: ObjectId;\n};\n\nconst OwnerTypeSchema = new MongooseSchema<SchemaOwnerType>(\n {\n email: { required: true, type: String },\n userId: {\n ref: \"User\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport const SocialMediaTypeSchema = new MongooseSchema<SocialMediaType>(\n {\n link: { required: true, type: String },\n name: { required: true, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field\n);\n\nexport const ResourceImageTypeSchema = new MongooseSchema<ResourceImageType>(\n {\n source: { required: false, type: String },\n title: { required: false, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst SubCategorySchema = new MongooseSchema<Subcategory>(\n {\n id: { required: false, type: String },\n items: [\n {\n id: { required: false, type: String },\n name: { required: false, type: String },\n },\n ],\n name: { required: false, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport const CategorySchema = new MongooseSchema<Category>(\n {\n id: { required: true, type: String },\n name: { required: true, type: String },\n subcategories: [SubCategorySchema],\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst PosterUsageTypeSchema = new MongooseSchema<PosterUsageType>(\n {\n count: { default: 0, required: false, type: Number },\n month: { required: false, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport const partnersSchema = new MongooseSchema<PartnerType>(\n {\n email: { required: false, type: String },\n licence: {\n enum: Object.values(EnumUserLicence),\n required: false,\n type: String,\n },\n resourceId: {\n required: false,\n type: String,\n },\n resourceType: {\n enum: Object.values(EnumResourceType),\n required: false,\n type: String,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst ContactDetailsSchema = new MongooseSchema<ResourceContactDetailsType>(\n {\n email: { required: false, type: String },\n landlinePhone: { required: false, type: String },\n mobilePhone: { required: false, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport const termsAgreementSchema = new MongooseSchema<TermsAgreement>(\n {\n appBuildNumber: { required: true, type: String },\n appId: { required: true, type: String },\n appVersion: { required: true, type: String },\n brand: { required: true, type: String },\n deviceName: { required: true, type: String },\n installationId: { required: true, type: String },\n manufacturer: { required: true, type: String },\n modelName: { required: true, type: String },\n osName: { required: true, type: String },\n osVersion: { required: true, type: String },\n termVersion: { required: true, type: String },\n timestamp: { required: true, type: String },\n },\n { _id: false },\n);\n\nconst resourceRelationsSchema = new MongooseSchema<{\n relationId: ObjectId;\n relationDates: RelationDate[];\n}>(\n {\n relationDates: {\n default: [],\n required: false,\n type: [relationDatesSchema],\n },\n relationId: {\n ref: \"Relation\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { _id: false },\n);\n\nexport const baseResourceFields = {\n active: { default: false, required: true, type: Boolean },\n adIds: {\n ref: \"Ad\",\n required: false,\n type: [mongoose.Schema.Types.ObjectId],\n },\n contactDetails: ContactDetailsSchema,\n cover: ResourceImageTypeSchema,\n deletedAt: { default: null, required: false, type: Date },\n description: { required: true, type: String },\n images: [ResourceImageTypeSchema],\n logo: ResourceImageTypeSchema,\n name: { required: true, type: String },\n owner: OwnerTypeSchema,\n partners: {\n required: false,\n type: [partnersSchema],\n },\n posterUsage: PosterUsageTypeSchema,\n promoCodes: { required: false, type: [String] },\n region: { required: true, type: String },\n relations: {\n default: [],\n required: false,\n type: [resourceRelationsSchema],\n },\n socialMedia: [SocialMediaTypeSchema],\n termsAgreement: termsAgreementSchema,\n};\n","import mongoose from \"mongoose\";\n\nimport {\n EnumInviteStatus,\n EnumRelationResource,\n EnumResourceType,\n} from \"src/enums\";\nimport { ObjectId, RelationDate, RelationType } from \"src/types\";\n\nimport { StallTypeSchema } from \"./event/EventInfo\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport const relationDatesSchema = new MongooseSchema<RelationDate>(\n {\n lastUpdateBy: {\n resourceId: { required: false, type: String },\n userEmail: { required: false, type: String },\n },\n paymentReference: { required: false, type: String },\n stallType: StallTypeSchema,\n startDate: { required: false, type: String },\n startTime: { required: false, type: String },\n status: {\n enum: Object.values(EnumInviteStatus),\n required: false,\n type: String,\n },\n },\n { _id: false },\n);\n\nexport type SchemaRelationType = Omit<\n RelationType,\n \"chatId\" | \"eventId\" | \"vendorId\"\n> & {\n chatId: ObjectId;\n eventId: ObjectId;\n vendorId: ObjectId;\n};\n/**\n * This is the schema for the relation type.\n * It is used to define the structure of the relation type in the database.\n * The schema is used by Mongoose to create a model for the relation type.\n */\nexport const RelationTypeSchema = new MongooseSchema<SchemaRelationType>(\n {\n active: { default: true, required: true, type: Boolean },\n chatId: {\n ref: \"Chat\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n deletedAt: { default: null, required: false, type: Date },\n eventId: {\n ref: \"Event\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n lastUpdateBy: {\n enum: Object.values(EnumResourceType),\n required: true,\n type: String,\n },\n relationDates: [relationDatesSchema],\n relationType: {\n enum: Object.values(EnumRelationResource),\n required: true,\n type: String,\n },\n vendorId: {\n ref: \"Vendor\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { timestamps: true },\n);\n\nRelationTypeSchema.index({\n \"relationDates.startDate\": 1,\n \"relationDates.startTime\": 1,\n \"relationDates.status\": 1,\n});\n\n// --- IMPORTANT: bind custom model type ---\nexport const RelationModel = mongoose.model<SchemaRelationType>(\n \"Relation\",\n RelationTypeSchema,\n);\n","import mongoose from \"mongoose\";\n\nimport { EnumPaymentMethod } from \"src/enums\";\nimport {\n DateTimeWithPriceType,\n EventInfoType,\n ObjectId,\n PaymentInfoType,\n Requirement,\n StallType,\n} from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport const StallTypeSchema = new MongooseSchema<StallType>(\n {\n electricity: {\n price: { required: false, type: Number },\n selected: { required: false, type: Boolean },\n },\n label: { required: false, type: String },\n price: { required: false, type: Number },\n stallCapacity: { required: false, type: Number },\n },\n {\n _id: false, // Prevents Mongoose from creating an additional _id field for subdocuments\n },\n);\n\nconst dateTimeSchema = new MongooseSchema<DateTimeWithPriceType>(\n {\n endDate: { required: true, type: String },\n endTime: { required: true, type: String },\n stallTypes: [StallTypeSchema],\n startDate: { required: true, type: String },\n startTime: { required: true, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst paymentInfoSchema = new MongooseSchema<PaymentInfoType>(\n {\n accountHolderName: { required: false, type: String },\n accountNumber: { required: false, type: String },\n link: { required: false, type: String },\n paymentMethod: {\n enum: Object.values(EnumPaymentMethod),\n required: true,\n type: String,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field\n);\n\nconst requirementsSchema = new MongooseSchema<Requirement>(\n {\n category: { required: true, type: String },\n label: { required: true, type: String },\n value: { required: true, type: Boolean },\n },\n {\n _id: false, // Prevents Mongoose from creating an additional _id field for\n },\n);\n\nexport type SchemaEventInfoType = Omit<EventInfoType, \"eventId\"> & {\n eventId: ObjectId;\n};\n\n/**\n * This is the schema for the event info type.\n * It is used to define the structure of the event info type in the database.\n * The schema is used by Mongoose to create a model for the event info type.\n */\nconst schema = new MongooseSchema<SchemaEventInfoType>(\n {\n applicationDeadlineHours: { required: true, type: Number },\n dateTime: [dateTimeSchema],\n eventId: {\n ref: \"Event\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n packInTime: { required: true, type: Number },\n paymentDueHours: { required: true, type: Number },\n paymentInfo: [paymentInfoSchema],\n requirements: [requirementsSchema],\n },\n { timestamps: true },\n);\n\nexport const EventInfoModel = mongoose.model<SchemaEventInfoType>(\n \"EventInfo\",\n schema,\n);\n","import mongoose from \"mongoose\";\n\nimport { EnumChatType } from \"src/enums\";\nimport {\n ChatMessageType,\n ChatType,\n ObjectId,\n ParticipantType,\n} from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaChatMessageType = Omit<ChatMessageType, \"senderId\"> & {\n senderId: ObjectId;\n};\n\nexport type SchemaParticipantType = Omit<ParticipantType, \"userId\"> & {\n userId: ObjectId;\n};\n\nconst MessageSchema = new MongooseSchema<SchemaChatMessageType>(\n {\n content: { required: true, type: String },\n senderAvatar: { required: false, type: String },\n senderId: {\n ref: \"User\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n senderName: { required: true, type: String },\n },\n { timestamps: true },\n);\n\nexport type SchemaChatType = Omit<\n ChatType,\n \"participants\" | \"messages\" | \"resourceInfo\"\n> & {\n participants: SchemaParticipantType[];\n messages: SchemaChatMessageType[];\n resourceInfo: { eventId: ObjectId; vendorId: ObjectId } | null;\n};\n\nexport const ParticipantSchema = new MongooseSchema<SchemaParticipantType>(\n {\n active: { default: true, required: true, type: Boolean },\n email: { required: true, type: String },\n userId: {\n ref: \"User\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst ChatSchema = new MongooseSchema<SchemaChatType>(\n {\n active: { default: true, required: true, type: Boolean },\n chatName: { required: true, type: String },\n chatType: {\n enum: Object.values(EnumChatType),\n required: true,\n type: String,\n },\n deletedAt: { default: null, required: false, type: Date },\n messages: [MessageSchema],\n participants: [ParticipantSchema],\n resourceInfo: {\n eventId: {\n ref: \"Event\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n vendorId: {\n ref: \"Vendor\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n },\n {\n timestamps: true,\n },\n);\n\nexport const ChatModel = mongoose.model<SchemaChatType>(\"Chat\", ChatSchema);\n","import mongoose from \"mongoose\";\n\nimport { EnumNotificationResourceType, EnumNotificationType } from \"src/enums\";\nimport {\n CreateBulkNotificationInput,\n NotificationType,\n ObjectId,\n} from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaCreateBulkNotificationInput = Omit<\n CreateBulkNotificationInput,\n \"userIds\"\n> & {\n userIds: ObjectId[];\n};\n\nexport type SchemaNotificationType = Omit<NotificationType, \"userId\"> & {\n userId: ObjectId;\n};\n/**\n * Schema for storing in-app notifications\n * Each notification is tied to a specific user and can be marked as read/unread\n */\nconst schema = new MongooseSchema<SchemaNotificationType>(\n {\n data: {\n resourceId: { required: true, type: String },\n resourceName: { required: true, type: String },\n resourceType: {\n enum: Object.values(EnumNotificationResourceType),\n required: true,\n type: String,\n },\n },\n isRead: { default: false, index: true, required: true, type: Boolean },\n message: { required: true, type: String },\n title: { required: true, type: String },\n type: {\n default: EnumNotificationType.SYSTEM,\n enum: Object.values(EnumNotificationType),\n required: true,\n type: String,\n },\n userId: {\n ref: \"User\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { timestamps: true },\n);\n\n// Compound index for efficient queries\nschema.index({ isRead: 1, userId: 1 });\nschema.index({ createdAt: -1, userId: 1 });\n\nexport const NotificationModel = mongoose.model<SchemaNotificationType>(\n \"Notification\",\n schema,\n);\n","import mongoose from \"mongoose\";\n\nimport { EnumOSPlatform } from \"src/enums\";\nimport { ObjectId } from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\ntype PushTokenType = {\n _id: string;\n createdAt: Date;\n platform: EnumOSPlatform;\n token: string;\n updatedAt: Date;\n userId: string;\n};\n\nexport type SchemaPushTokenType = Omit<PushTokenType, \"userId\"> & {\n userId: ObjectId;\n};\n\n/**\n * This is the schema for the push token type.\n * It is used to define the structure of the push token type in the database.\n * The schema is used by Mongoose to create a model for the push token type.\n */\nconst schema = new MongooseSchema<SchemaPushTokenType>(\n {\n platform: {\n enum: Object.values(EnumOSPlatform),\n required: true,\n type: String,\n },\n token: { required: true, type: String },\n userId: { required: true, type: mongoose.Schema.Types.ObjectId },\n },\n { timestamps: true },\n);\n\nexport const PushTokenModel = mongoose.model<SchemaPushTokenType>(\"PushToken\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumOSPlatform, EnumResourceType } from \"src/enums\";\nimport {\n EnumActivity,\n ResourceActivityEntry,\n ResourceActivityType,\n} from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst ActivitySchema = new MongooseSchema<ResourceActivityEntry>(\n {\n activityType: {\n enum: Object.values(EnumActivity),\n required: true,\n type: String,\n },\n location: {\n coordinates: {\n required: false,\n type: [Number],\n },\n type: {\n default: \"Point\",\n enum: [\"Point\"],\n required: false,\n type: String,\n },\n },\n startDate: { required: false, type: String },\n startTime: { required: false, type: String },\n timestamp: { default: Date.now, type: Date },\n userAgent: {\n enum: Object.values(EnumOSPlatform),\n required: true,\n type: String,\n },\n userId: { required: false, type: String },\n },\n { _id: false },\n);\n\nconst schema = new MongooseSchema<ResourceActivityType>(\n {\n activity: { default: [], type: [ActivitySchema] },\n resourceId: { required: true, type: String },\n resourceType: {\n enum: Object.values(EnumResourceType),\n required: true,\n type: String,\n },\n },\n { timestamps: true },\n);\n\nschema.index({ resourceId: 1, resourceType: 1 }, { unique: true }); // one per entity\nschema.index({ \"views.location\": \"2dsphere\" });\n\nexport const ResourceActivityModel = mongoose.model(\"ResourceActivity\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumOSPlatform, EnumResourceType } from \"src/enums\";\nimport { TesterType } from \"src/types\";\n\nimport { CategorySchema } from \"./global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst TesterSchema = new MongooseSchema<TesterType>(\n {\n active: { default: false, required: true, type: Boolean },\n categories: [CategorySchema],\n companyName: { required: true, type: String },\n email: { required: true, type: String },\n firstName: { required: true, type: String },\n lastName: { required: true, type: String },\n osType: {\n enum: Object.values(EnumOSPlatform),\n required: true,\n type: String,\n },\n region: { required: true, type: String },\n resourceType: {\n enum: Object.values(EnumResourceType),\n required: true,\n type: String,\n },\n },\n {\n timestamps: true,\n },\n);\n\nexport const TesterModel = mongoose.model<TesterType>(\"Tester\", TesterSchema);\n","import mongoose from \"mongoose\";\n\nimport { EnumOSPlatform, EnumUserLicence, EnumUserRole } from \"src/enums\";\nimport { ObjectId, UserActivityEvent, UserType } from \"src/types\";\n\nimport {\n partnersSchema,\n ResourceImageTypeSchema,\n termsAgreementSchema,\n} from \"./global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaUserActivityEvent = Omit<UserActivityEvent, \"resourceId\"> & {\n resourceId: ObjectId;\n};\n\nexport type SchemaUserType = Omit<\n UserType,\n \"vendor\" | \"events\" | \"userActivity\" | \"_id\"\n> & {\n _id: ObjectId;\n vendor: ObjectId;\n events: ObjectId[];\n userActivity: {\n favourites: {\n events: ObjectId[];\n vendors: ObjectId[];\n };\n interested: {\n events: SchemaUserActivityEvent[];\n };\n going: {\n events: SchemaUserActivityEvent[];\n };\n present: {\n events: SchemaUserActivityEvent[];\n };\n };\n};\n\nconst userActivityEventSchema = new MongooseSchema<SchemaUserActivityEvent>(\n {\n resourceId: {\n ref: \"Event\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n startDate: { required: false, type: String },\n startTime: { required: false, type: String },\n },\n { _id: false },\n);\n\nconst userActivityFavouritesSchema = new MongooseSchema(\n {\n events: {\n ref: \"Event\",\n required: false,\n type: [mongoose.Schema.Types.ObjectId],\n },\n vendors: {\n ref: \"Vendor\",\n required: false,\n type: [mongoose.Schema.Types.ObjectId],\n },\n },\n { _id: false },\n);\n\n/**\n * This is the schema for the user type.\n * It is used to define the structure of the user type in the database.\n * The schema is used by Mongoose to create a model for the user type.\n */\nconst schema = new MongooseSchema<SchemaUserType>(\n {\n active: { default: false, required: true, type: Boolean },\n avatar: ResourceImageTypeSchema,\n deletedAt: { default: null, required: false, type: Date },\n email: { required: true, type: String },\n events: {\n ref: \"Event\",\n required: false,\n type: [mongoose.Schema.Types.ObjectId],\n },\n firstName: { required: true, type: String },\n isTester: { default: false, required: false, type: Boolean },\n lastName: { required: true, type: String },\n licences: {\n enum: Object.values(EnumUserLicence),\n required: false,\n type: [String],\n },\n partners: {\n required: false,\n type: [partnersSchema],\n },\n password: { required: true, type: String },\n platform: {\n enum: Object.values(EnumOSPlatform),\n required: false,\n type: String,\n },\n preferredRegion: {\n required: true,\n type: String,\n },\n refreshToken: {\n required: false,\n type: String,\n },\n role: {\n default: EnumUserRole.CUSTOMER,\n enum: Object.values(EnumUserRole),\n required: true,\n type: String,\n },\n termsAgreement: termsAgreementSchema,\n userActivity: {\n favourites: {\n default: () => ({ events: [], vendors: [] }),\n type: userActivityFavouritesSchema,\n },\n going: {\n events: [userActivityEventSchema],\n },\n interested: {\n events: [userActivityEventSchema],\n },\n present: {\n events: [userActivityEventSchema],\n },\n },\n vendor: {\n ref: \"Vendor\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { timestamps: true },\n);\n\nschema.index({ \"partners.email\": 1 });\n\nexport const UserModel = mongoose.model<SchemaUserType>(\"User\", schema);\n","import mongoose from \"mongoose\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport interface VerificationTokenType {\n email: string;\n verificationToken: string;\n createdAt: Date;\n}\n\nconst schema = new MongooseSchema<VerificationTokenType>(\n {\n createdAt: {\n default: Date.now,\n expires: 24 * 60 * 60, // 24 hours in seconds (MongoDB TTL expects seconds)\n required: true,\n type: Date,\n }, // Token expires after 1 day\n email: { required: true, type: String },\n verificationToken: { required: true, type: String },\n },\n { timestamps: true },\n);\n\nexport const VerificationTokenModel = mongoose.model<VerificationTokenType>(\n \"VerificationToken\",\n schema,\n);\n","import mongoose from \"mongoose\";\n\nimport { EnumVendorType } from \"src/enums\";\nimport { ObjectId, VendorMenuType, VendorType } from \"src/types\";\n\nimport { baseResourceFields, CategorySchema, SchemaOwnerType } from \"../global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst MenuTypeSchema = new MongooseSchema<VendorMenuType>(\n {\n description: { required: false, type: String },\n name: { required: false, type: String },\n price: { required: false, type: Number },\n productGroups: { required: false, type: [String] },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst LocationsSchema = new MongooseSchema<VendorType[\"locations\"]>(\n {\n dateTime: {\n endDate: { required: false, type: String },\n endTime: { required: false, type: String },\n startDate: { required: false, type: String },\n startTime: { required: false, type: String },\n },\n description: { required: false, type: String },\n location: {\n city: { required: false, type: String },\n coordinates: {\n required: false,\n type: [Number], // [longitude, latitude]\n },\n country: { required: false, type: String },\n fullAddress: { required: false, type: String },\n latitude: { required: false, type: Number },\n longitude: { required: false, type: Number },\n region: { required: false, type: String },\n type: { required: false, type: String }, // Mongoose GeoJSON type\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport type SchemaVendorType = Omit<\n VendorType,\n \"vendorInfoId\" | \"owner\" | \"adIds\"\n> & {\n adIds?: ObjectId[];\n owner: SchemaOwnerType;\n vendorInfoId: ObjectId;\n};\n\nconst schema = new MongooseSchema<SchemaVendorType>(\n {\n ...baseResourceFields, // Importing base resource fields from global.ts\n availability: {\n corporate: { default: false, required: false, type: Boolean },\n private: { default: false, required: false, type: Boolean },\n school: { default: false, required: false, type: Boolean },\n },\n categories: [CategorySchema],\n locations: [LocationsSchema],\n multiLocation: { required: true, type: Boolean },\n products: [MenuTypeSchema],\n vendorInfoId: {\n ref: \"VendorInfo\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n vendorType: {\n enum: Object.values(EnumVendorType),\n required: true,\n type: String,\n },\n },\n { timestamps: true },\n);\n\n// 🔹 Add indexes to speed up regex-based searches\nschema.index({ name: 1 });\nschema.index({ description: 1 });\nschema.index({ region: 1 });\nschema.index({ \"categories.name\": 1 });\nschema.index({ \"partners.email\": 1 });\n\nexport const VendorModel = mongoose.model<SchemaVendorType>(\"Vendor\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumFoodFlavor } from \"src/enums\";\nimport { ObjectId, VendorAttributes, VendorInfoType } from \"src/types\";\n\nimport { ResourceImageTypeSchema } from \"../global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaVendorInfoType = Omit<VendorInfoType, \"vendorId\"> & {\n vendorId: ObjectId;\n};\n\nconst AttributesSchema = new MongooseSchema<VendorAttributes>(\n {\n details: { required: false, type: String },\n isRequired: { default: false, required: true, type: Boolean },\n },\n { _id: false },\n);\n\nconst schema = new MongooseSchema<SchemaVendorInfoType>(\n {\n compliance: {\n foodBeverageLicense: { default: false, required: false, type: Boolean },\n liabilityInsurance: { default: false, required: false, type: Boolean },\n },\n documents: [ResourceImageTypeSchema],\n product: {\n foodFlavors: {\n enum: Object.values(EnumFoodFlavor),\n required: true,\n type: [String],\n },\n packaging: { required: true, type: [String] },\n priceRange: {\n max: { required: true, type: Number },\n min: { required: true, type: Number },\n },\n producedIn: { required: true, type: [String] },\n },\n requirements: {\n electricity: AttributesSchema,\n gazebo: AttributesSchema,\n table: AttributesSchema,\n },\n stallInfo: {\n size: {\n depth: { required: true, type: Number },\n width: { required: true, type: Number },\n },\n },\n vendorId: {\n ref: \"Vendor\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { timestamps: true },\n);\n\nexport const VendorInfoModel = mongoose.model<SchemaVendorInfoType>(\n \"VendorInfo\",\n schema,\n);\n","import mongoose from \"mongoose\";\n\nimport { EnumEventType } from \"src/enums\";\nimport { DateTimeType, EventType, LocationType, ObjectId } from \"src/types\";\n\nimport { baseResourceFields, SchemaOwnerType } from \"../global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst locationsSchema = new MongooseSchema<LocationType>(\n {\n city: { required: true, type: String },\n coordinates: {\n required: true,\n type: [Number], // [longitude, latitude]\n },\n country: { required: true, type: String },\n fullAddress: { required: true, type: String },\n latitude: { required: true, type: Number },\n longitude: { required: true, type: Number },\n region: { required: true, type: String },\n type: {\n default: \"Point\",\n enum: [\"Point\"],\n required: true,\n type: String,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst dateTimeSchema = new MongooseSchema<DateTimeType>(\n {\n endDate: { required: true, type: String },\n endTime: { required: true, type: String },\n startDate: { required: true, type: String },\n startTime: { required: true, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport type SchemaEventType = Omit<\n EventType,\n \"eventInfoId\" | \"owner\" | \"adIds\"\n> & {\n adIds?: ObjectId[];\n eventInfoId: ObjectId;\n owner: SchemaOwnerType;\n};\n\n/**\n * This is the schema for the event type.\n * It is used to define the structure of the event type in the database.\n * The schema is used by Mongoose to create a model for the event type.\n */\nconst schema = new MongooseSchema<SchemaEventType>(\n {\n ...baseResourceFields, // Importing base resource fields from global.ts\n dateTime: [dateTimeSchema],\n eventInfoId: {\n ref: \"EventInfo\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n eventType: {\n enum: Object.values(EnumEventType),\n required: true,\n type: String,\n },\n location: {\n required: true,\n type: locationsSchema,\n },\n nzbn: { required: true, type: String },\n provider: { required: false, type: String },\n rainOrShine: { required: true, type: Boolean },\n tags: { required: true, type: [String] },\n },\n { timestamps: true },\n);\n\n// 🔹 Add indexes to speed up regex-based searches\nschema.index({ name: 1 });\nschema.index({ description: 1 });\nschema.index({ region: 1 });\nschema.index({ location: \"2dsphere\" });\nschema.index({ tags: 1 });\nschema.index({ \"partners.email\": 1 });\n\nexport const EventModel = mongoose.model<SchemaEventType>(\"Event\", schema);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,IAAAA,mBAAqB;;;ACAd,IAAK,mBAAL,kBAAKC,sBAAL;AACL,EAAAA,kBAAA,cAAW;AACX,EAAAA,kBAAA,eAAY;AACZ,EAAAA,kBAAA,aAAU;AACV,EAAAA,kBAAA,eAAY;AACZ,EAAAA,kBAAA,UAAO;AACP,EAAAA,kBAAA,aAAU;AACV,EAAAA,kBAAA,cAAW;AACX,EAAAA,kBAAA,iBAAc;AACd,EAAAA,kBAAA,aAAU;AATA,SAAAA;AAAA,GAAA;AAYL,IAAK,eAAL,kBAAKC,kBAAL;AACL,EAAAA,cAAA,WAAQ;AACR,EAAAA,cAAA,aAAU;AACV,EAAAA,cAAA,cAAW;AAHD,SAAAA;AAAA,GAAA;AAML,IAAK,oBAAL,kBAAKC,uBAAL;AACL,EAAAA,mBAAA,UAAO;AACP,EAAAA,mBAAA,YAAS;AACT,EAAAA,mBAAA,mBAAgB;AAChB,EAAAA,mBAAA,YAAS;AACT,EAAAA,mBAAA,YAAS;AALC,SAAAA;AAAA,GAAA;AAQL,IAAK,iBAAL,kBAAKC,oBAAL;AACL,EAAAA,gBAAA,WAAQ;AACR,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,WAAQ;AACR,EAAAA,gBAAA,WAAQ;AAJE,SAAAA;AAAA,GAAA;AAOL,IAAK,mBAAL,kBAAKC,sBAAL;AACL,EAAAA,kBAAA,WAAQ;AACR,EAAAA,kBAAA,YAAS;AAFC,SAAAA;AAAA,GAAA;AAKL,IAAK,gBAAL,kBAAKC,mBAAL;AACL,EAAAA,eAAA,UAAO;AACP,EAAAA,eAAA,UAAO;AACP,EAAAA,eAAA,cAAW;AACX,EAAAA,eAAA,YAAS;AAJC,SAAAA;AAAA,GAAA;AAOL,IAAK,iBAAL,kBAAKC,oBAAL;AACL,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,UAAO;AACP,EAAAA,gBAAA,aAAU;AAHA,SAAAA;AAAA,GAAA;AAML,IAAK,iBAAL,kBAAKC,oBAAL;AACL,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,SAAM;AACN,EAAAA,gBAAA,SAAM;AAHI,SAAAA;AAAA,GAAA;AAML,IAAK,uBAAL,kBAAKC,0BAAL;AACL,EAAAA,sBAAA,yBAAsB;AACtB,EAAAA,sBAAA,iCAA8B;AAFpB,SAAAA;AAAA,GAAA;AAKL,IAAK,+BAAL,kBAAKC,kCAAL;AACL,EAAAA,8BAAA,4BAAyB;AACzB,EAAAA,8BAAA,6BAA0B;AAC1B,EAAAA,8BAAA,oBAAiB;AACjB,EAAAA,8BAAA,qBAAkB;AAClB,EAAAA,8BAAA,mBAAgB;AAChB,EAAAA,8BAAA,oBAAiB;AACjB,EAAAA,8BAAA,yBAAsB;AACtB,EAAAA,8BAAA,yBAAsB;AACtB,EAAAA,8BAAA,sBAAmB;AACnB,EAAAA,8BAAA,iCAA8B;AAVpB,SAAAA;AAAA,GAAA;AAaL,IAAK,uBAAL,kBAAKC,0BAAL;AACL,EAAAA,sBAAA,WAAQ;AACR,EAAAA,sBAAA,YAAS;AACT,EAAAA,sBAAA,cAAW;AACX,EAAAA,sBAAA,UAAO;AACP,EAAAA,sBAAA,YAAS;AALC,SAAAA;AAAA,GAAA;AA8BL,IAAK,kBAAL,kBAAKC,qBAAL;AACL,EAAAA,iBAAA,eAAY;AACZ,EAAAA,iBAAA,oBAAiB;AACjB,EAAAA,iBAAA,qBAAkB;AAClB,EAAAA,iBAAA,gBAAa;AACb,EAAAA,iBAAA,oBAAiB;AACjB,EAAAA,iBAAA,qBAAkB;AANR,SAAAA;AAAA,GAAA;AASL,IAAK,eAAL,kBAAKC,kBAAL;AACL,EAAAA,cAAA,WAAQ;AACR,EAAAA,cAAA,cAAW;AACX,EAAAA,cAAA,eAAY;AACZ,EAAAA,cAAA,eAAY;AACZ,EAAAA,cAAA,aAAU;AALA,SAAAA;AAAA,GAAA;;;AC9GL,IAAK,eAAL,kBAAKC,kBAAL;AACL,EAAAA,cAAA,gBAAa;AACb,EAAAA,cAAA,iBAAc;AACd,EAAAA,cAAA,kBAAe;AAHL,SAAAA;AAAA,GAAA;AAML,IAAK,eAAL,kBAAKC,kBAAL;AACL,EAAAA,cAAA,YAAS;AACT,EAAAA,cAAA,YAAS;AACT,EAAAA,cAAA,aAAU;AAHA,SAAAA;AAAA,GAAA;AAML,IAAK,aAAL,kBAAKC,gBAAL;AACL,EAAAA,YAAA,eAAY;AACZ,EAAAA,YAAA,UAAO;AAFG,SAAAA;AAAA,GAAA;AAKL,IAAK,cAAL,kBAAKC,iBAAL;AACL,EAAAA,aAAA,WAAQ;AACR,EAAAA,aAAA,UAAO;AAFG,SAAAA;AAAA,GAAA;;;ACnBL,IAAK,eAAL,kBAAKC,kBAAL;AACL,EAAAA,cAAA,cAAW;AACX,EAAAA,cAAA,WAAQ;AACR,EAAAA,cAAA,gBAAa;AACb,EAAAA,cAAA,aAAU;AACV,EAAAA,cAAA,UAAO;AALG,SAAAA;AAAA,GAAA;;;ACFZ,IAAAC,mBAAqB;;;ACArB,IAAAC,mBAAqB;;;ACArB,sBAAqB;AAYrB,IAAM,iBAAiB,gBAAAC,QAAS;AAEzB,IAAM,kBAAkB,IAAI;AAAA,EACjC;AAAA,IACE,aAAa;AAAA,MACX,OAAO,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MACvC,UAAU,EAAE,UAAU,OAAO,MAAM,QAAQ;AAAA,IAC7C;AAAA,IACA,OAAO,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACvC,OAAO,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACvC,eAAe,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,EACjD;AAAA,EACA;AAAA,IACE,KAAK;AAAA;AAAA,EACP;AACF;AAEA,IAAM,iBAAiB,IAAI;AAAA,EACzB;AAAA,IACE,SAAS,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACxC,SAAS,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACxC,YAAY,CAAC,eAAe;AAAA,IAC5B,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC1C,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EAC5C;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEA,IAAM,oBAAoB,IAAI;AAAA,EAC5B;AAAA,IACE,mBAAmB,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACnD,eAAe,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC/C,MAAM,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACtC,eAAe;AAAA,MACb,MAAM,OAAO,OAAO,iBAAiB;AAAA,MACrC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEA,IAAM,qBAAqB,IAAI;AAAA,EAC7B;AAAA,IACE,UAAU,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACzC,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,OAAO,EAAE,UAAU,MAAM,MAAM,QAAQ;AAAA,EACzC;AAAA,EACA;AAAA,IACE,KAAK;AAAA;AAAA,EACP;AACF;AAWA,IAAM,SAAS,IAAI;AAAA,EACjB;AAAA,IACE,0BAA0B,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACzD,UAAU,CAAC,cAAc;AAAA,IACzB,SAAS;AAAA,MACP,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,gBAAAA,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,IACA,YAAY,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC3C,iBAAiB,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAChD,aAAa,CAAC,iBAAiB;AAAA,IAC/B,cAAc,CAAC,kBAAkB;AAAA,EACnC;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAEO,IAAM,iBAAiB,gBAAAA,QAAS;AAAA,EACrC;AAAA,EACA;AACF;;;ADnFA,IAAMC,kBAAiB,iBAAAC,QAAS;AAEzB,IAAM,sBAAsB,IAAID;AAAA,EACrC;AAAA,IACE,cAAc;AAAA,MACZ,YAAY,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MAC5C,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC7C;AAAA,IACA,kBAAkB,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAClD,WAAW;AAAA,IACX,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC3C,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC3C,QAAQ;AAAA,MACN,MAAM,OAAO,OAAO,gBAAgB;AAAA,MACpC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AACf;AAeO,IAAM,qBAAqB,IAAIA;AAAA,EACpC;AAAA,IACE,QAAQ,EAAE,SAAS,MAAM,UAAU,MAAM,MAAM,QAAQ;AAAA,IACvD,QAAQ;AAAA,MACN,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,iBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,IACA,WAAW,EAAE,SAAS,MAAM,UAAU,OAAO,MAAM,KAAK;AAAA,IACxD,SAAS;AAAA,MACP,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,iBAAAA,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,OAAO,OAAO,gBAAgB;AAAA,MACpC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,eAAe,CAAC,mBAAmB;AAAA,IACnC,cAAc;AAAA,MACZ,MAAM,OAAO,OAAO,oBAAoB;AAAA,MACxC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,iBAAAA,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAEA,mBAAmB,MAAM;AAAA,EACvB,2BAA2B;AAAA,EAC3B,2BAA2B;AAAA,EAC3B,wBAAwB;AAC1B,CAAC;AAGM,IAAM,gBAAgB,iBAAAA,QAAS;AAAA,EACpC;AAAA,EACA;AACF;;;ADtEA,IAAMC,kBAAiB,iBAAAC,QAAS;AAMhC,IAAM,kBAAkB,IAAID;AAAA,EAC1B;AAAA,IACE,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,QAAQ;AAAA,MACN,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,iBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEO,IAAM,wBAAwB,IAAID;AAAA,EACvC;AAAA,IACE,MAAM,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACrC,MAAM,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EACvC;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEO,IAAM,0BAA0B,IAAIA;AAAA,EACzC;AAAA,IACE,QAAQ,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACxC,OAAO,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,EACzC;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEA,IAAM,oBAAoB,IAAIA;AAAA,EAC5B;AAAA,IACE,IAAI,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACpC,OAAO;AAAA,MACL;AAAA,QACE,IAAI,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,QACpC,MAAM,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MACxC;AAAA,IACF;AAAA,IACA,MAAM,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,EACxC;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEO,IAAM,iBAAiB,IAAIA;AAAA,EAChC;AAAA,IACE,IAAI,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACnC,MAAM,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACrC,eAAe,CAAC,iBAAiB;AAAA,EACnC;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEA,IAAM,wBAAwB,IAAIA;AAAA,EAChC;AAAA,IACE,OAAO,EAAE,SAAS,GAAG,UAAU,OAAO,MAAM,OAAO;AAAA,IACnD,OAAO,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,EACzC;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEO,IAAM,iBAAiB,IAAIA;AAAA,EAChC;AAAA,IACE,OAAO,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACvC,SAAS;AAAA,MACP,MAAM,OAAO,OAAO,eAAe;AAAA,MACnC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,YAAY;AAAA,MACV,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,OAAO,OAAO,gBAAgB;AAAA,MACpC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEA,IAAM,uBAAuB,IAAIA;AAAA,EAC/B;AAAA,IACE,OAAO,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACvC,eAAe,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC/C,aAAa,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,EAC/C;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEO,IAAM,uBAAuB,IAAIA;AAAA,EACtC;AAAA,IACE,gBAAgB,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC/C,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,YAAY,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC3C,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,YAAY,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC3C,gBAAgB,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC/C,cAAc,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC7C,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC1C,QAAQ,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACvC,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC1C,aAAa,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC5C,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EAC5C;AAAA,EACA,EAAE,KAAK,MAAM;AACf;AAEA,IAAM,0BAA0B,IAAIA;AAAA,EAIlC;AAAA,IACE,eAAe;AAAA,MACb,SAAS,CAAC;AAAA,MACV,UAAU;AAAA,MACV,MAAM,CAAC,mBAAmB;AAAA,IAC5B;AAAA,IACA,YAAY;AAAA,MACV,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,iBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AACf;AAEO,IAAM,qBAAqB;AAAA,EAChC,QAAQ,EAAE,SAAS,OAAO,UAAU,MAAM,MAAM,QAAQ;AAAA,EACxD,OAAO;AAAA,IACL,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,CAAC,iBAAAA,QAAS,OAAO,MAAM,QAAQ;AAAA,EACvC;AAAA,EACA,gBAAgB;AAAA,EAChB,OAAO;AAAA,EACP,WAAW,EAAE,SAAS,MAAM,UAAU,OAAO,MAAM,KAAK;AAAA,EACxD,aAAa,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EAC5C,QAAQ,CAAC,uBAAuB;AAAA,EAChC,MAAM;AAAA,EACN,MAAM,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EACrC,OAAO;AAAA,EACP,UAAU;AAAA,IACR,UAAU;AAAA,IACV,MAAM,CAAC,cAAc;AAAA,EACvB;AAAA,EACA,aAAa;AAAA,EACb,YAAY,EAAE,UAAU,OAAO,MAAM,CAAC,MAAM,EAAE;AAAA,EAC9C,QAAQ,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EACvC,WAAW;AAAA,IACT,SAAS,CAAC;AAAA,IACV,UAAU;AAAA,IACV,MAAM,CAAC,uBAAuB;AAAA,EAChC;AAAA,EACA,aAAa,CAAC,qBAAqB;AAAA,EACnC,gBAAgB;AAClB;;;AJvKA,IAAMC,kBAAiB,iBAAAC,QAAS;AAEhC,IAAMC,UAAS,IAAIF;AAAA,EACjB;AAAA,IACE,QAAQ,EAAE,SAAS,MAAM,MAAM,QAAQ;AAAA,IACvC,SAAS;AAAA,MACP;AAAA,MACA,MAAM,OAAO,OAAO,WAAW;AAAA,MAC/B,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN;AAAA,MACA,MAAM,OAAO,OAAO,UAAU;AAAA,MAC9B,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA;AAAA,IAEA,QAAQ,EAAE,SAAS,GAAG,UAAU,MAAM,MAAM,OAAO;AAAA,IACnD,MAAM,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACtC,KAAK,EAAE,UAAU,MAAM,MAAM,KAAK;AAAA;AAAA,IAElC,aAAa,EAAE,SAAS,GAAG,UAAU,MAAM,MAAM,OAAO;AAAA,IACxD,eAAe,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC9C,qBAAqB,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACpD,YAAY,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC3C,cAAc,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC9C,cAAc,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC7C,gBAAgB,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC/C,cAAc;AAAA,MACZ,MAAM,OAAO,OAAO,gBAAgB;AAAA,MACpC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN;AAAA,MACA,MAAM,OAAO,OAAO,YAAY;AAAA,MAChC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,aAAa,CAAC,qBAAqB;AAAA,IACnC,OAAO,EAAE,UAAU,MAAM,MAAM,KAAK;AAAA,IACpC,QAAQ;AAAA,MACN;AAAA,MACA,MAAM,OAAO,OAAO,YAAY;AAAA,MAChC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,cAAc,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,EAChD;AAAA,EACA;AAAA,IACE,YAAY;AAAA,EACd;AACF;AAGAE,QAAO,MAAM;AAAA,EACX,KAAK;AAAA,EACL,OAAO;AAAA,EACP,QAAQ;AACV,CAAC;AAEM,IAAM,UAAU,iBAAAD,QAAS,MAAc,MAAMC,OAAM;;;AO3E1D,IAAAC,mBAAqB;AAUrB,IAAMC,kBAAiB,iBAAAC,QAAS;AAUhC,IAAM,gBAAgB,IAAID;AAAA,EACxB;AAAA,IACE,SAAS,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACxC,cAAc,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC9C,UAAU;AAAA,MACR,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,iBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,IACA,YAAY,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EAC7C;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAWO,IAAM,oBAAoB,IAAID;AAAA,EACnC;AAAA,IACE,QAAQ,EAAE,SAAS,MAAM,UAAU,MAAM,MAAM,QAAQ;AAAA,IACvD,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,QAAQ;AAAA,MACN,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,iBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEA,IAAM,aAAa,IAAID;AAAA,EACrB;AAAA,IACE,QAAQ,EAAE,SAAS,MAAM,UAAU,MAAM,MAAM,QAAQ;AAAA,IACvD,UAAU,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACzC,UAAU;AAAA,MACR,MAAM,OAAO,OAAO,YAAY;AAAA,MAChC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,WAAW,EAAE,SAAS,MAAM,UAAU,OAAO,MAAM,KAAK;AAAA,IACxD,UAAU,CAAC,aAAa;AAAA,IACxB,cAAc,CAAC,iBAAiB;AAAA,IAChC,cAAc;AAAA,MACZ,SAAS;AAAA,QACP,KAAK;AAAA,QACL,UAAU;AAAA,QACV,MAAM,iBAAAC,QAAS,OAAO,MAAM;AAAA,MAC9B;AAAA,MACA,UAAU;AAAA,QACR,KAAK;AAAA,QACL,UAAU;AAAA,QACV,MAAM,iBAAAA,QAAS,OAAO,MAAM;AAAA,MAC9B;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,YAAY;AAAA,EACd;AACF;AAEO,IAAM,YAAY,iBAAAA,QAAS,MAAsB,QAAQ,UAAU;;;ACtF1E,IAAAC,mBAAqB;AASrB,IAAMC,kBAAiB,iBAAAC,QAAS;AAgBhC,IAAMC,UAAS,IAAIF;AAAA,EACjB;AAAA,IACE,MAAM;AAAA,MACJ,YAAY,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,MAC3C,cAAc,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,MAC7C,cAAc;AAAA,QACZ,MAAM,OAAO,OAAO,4BAA4B;AAAA,QAChD,UAAU;AAAA,QACV,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,QAAQ,EAAE,SAAS,OAAO,OAAO,MAAM,UAAU,MAAM,MAAM,QAAQ;AAAA,IACrE,SAAS,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACxC,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,MAAM;AAAA,MACJ;AAAA,MACA,MAAM,OAAO,OAAO,oBAAoB;AAAA,MACxC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,iBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAGAC,QAAO,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,CAAC;AACrCA,QAAO,MAAM,EAAE,WAAW,IAAI,QAAQ,EAAE,CAAC;AAElC,IAAM,oBAAoB,iBAAAD,QAAS;AAAA,EACxC;AAAA,EACAC;AACF;;;AC7DA,IAAAC,mBAAqB;AAKrB,IAAMC,kBAAiB,iBAAAC,QAAS;AAoBhC,IAAMC,UAAS,IAAIF;AAAA,EACjB;AAAA,IACE,UAAU;AAAA,MACR,MAAM,OAAO,OAAO,cAAc;AAAA,MAClC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,QAAQ,EAAE,UAAU,MAAM,MAAM,iBAAAC,QAAS,OAAO,MAAM,SAAS;AAAA,EACjE;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAEO,IAAM,iBAAiB,iBAAAA,QAAS,MAA2B,aAAaC,OAAM;;;ACtCrF,IAAAC,mBAAqB;AASrB,IAAMC,kBAAiB,iBAAAC,QAAS;AAEhC,IAAM,iBAAiB,IAAID;AAAA,EACzB;AAAA,IACE,cAAc;AAAA,MACZ,MAAM,OAAO,OAAO,YAAY;AAAA,MAChC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,aAAa;AAAA,QACX,UAAU;AAAA,QACV,MAAM,CAAC,MAAM;AAAA,MACf;AAAA,MACA,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,MAAM,CAAC,OAAO;AAAA,QACd,UAAU;AAAA,QACV,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC3C,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC3C,WAAW,EAAE,SAAS,KAAK,KAAK,MAAM,KAAK;AAAA,IAC3C,WAAW;AAAA,MACT,MAAM,OAAO,OAAO,cAAc;AAAA,MAClC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,QAAQ,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,EAC1C;AAAA,EACA,EAAE,KAAK,MAAM;AACf;AAEA,IAAME,UAAS,IAAIF;AAAA,EACjB;AAAA,IACE,UAAU,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC,cAAc,EAAE;AAAA,IAChD,YAAY,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC3C,cAAc;AAAA,MACZ,MAAM,OAAO,OAAO,gBAAgB;AAAA,MACpC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAEAE,QAAO,MAAM,EAAE,YAAY,GAAG,cAAc,EAAE,GAAG,EAAE,QAAQ,KAAK,CAAC;AACjEA,QAAO,MAAM,EAAE,kBAAkB,WAAW,CAAC;AAEtC,IAAM,wBAAwB,iBAAAD,QAAS,MAAM,oBAAoBC,OAAM;;;AC3D9E,IAAAC,mBAAqB;AAOrB,IAAMC,kBAAiB,iBAAAC,QAAS;AAEhC,IAAM,eAAe,IAAID;AAAA,EACvB;AAAA,IACE,QAAQ,EAAE,SAAS,OAAO,UAAU,MAAM,MAAM,QAAQ;AAAA,IACxD,YAAY,CAAC,cAAc;AAAA,IAC3B,aAAa,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC5C,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC1C,UAAU,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACzC,QAAQ;AAAA,MACN,MAAM,OAAO,OAAO,cAAc;AAAA,MAClC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,QAAQ,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACvC,cAAc;AAAA,MACZ,MAAM,OAAO,OAAO,gBAAgB;AAAA,MACpC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA;AAAA,IACE,YAAY;AAAA,EACd;AACF;AAEO,IAAM,cAAc,iBAAAC,QAAS,MAAkB,UAAU,YAAY;;;AClC5E,IAAAC,oBAAqB;AAWrB,IAAMC,mBAAiB,kBAAAC,QAAS;AA8BhC,IAAM,0BAA0B,IAAID;AAAA,EAClC;AAAA,IACE,YAAY;AAAA,MACV,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,kBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,IACA,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC3C,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,EAC7C;AAAA,EACA,EAAE,KAAK,MAAM;AACf;AAEA,IAAM,+BAA+B,IAAID;AAAA,EACvC;AAAA,IACE,QAAQ;AAAA,MACN,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,CAAC,kBAAAC,QAAS,OAAO,MAAM,QAAQ;AAAA,IACvC;AAAA,IACA,SAAS;AAAA,MACP,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,CAAC,kBAAAA,QAAS,OAAO,MAAM,QAAQ;AAAA,IACvC;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AACf;AAOA,IAAMC,UAAS,IAAIF;AAAA,EACjB;AAAA,IACE,QAAQ,EAAE,SAAS,OAAO,UAAU,MAAM,MAAM,QAAQ;AAAA,IACxD,QAAQ;AAAA,IACR,WAAW,EAAE,SAAS,MAAM,UAAU,OAAO,MAAM,KAAK;AAAA,IACxD,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,QAAQ;AAAA,MACN,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,CAAC,kBAAAC,QAAS,OAAO,MAAM,QAAQ;AAAA,IACvC;AAAA,IACA,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC1C,UAAU,EAAE,SAAS,OAAO,UAAU,OAAO,MAAM,QAAQ;AAAA,IAC3D,UAAU,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACzC,UAAU;AAAA,MACR,MAAM,OAAO,OAAO,eAAe;AAAA,MACnC,UAAU;AAAA,MACV,MAAM,CAAC,MAAM;AAAA,IACf;AAAA,IACA,UAAU;AAAA,MACR,UAAU;AAAA,MACV,MAAM,CAAC,cAAc;AAAA,IACvB;AAAA,IACA,UAAU,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACzC,UAAU;AAAA,MACR,MAAM,OAAO,OAAO,cAAc;AAAA,MAClC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ;AAAA,MACA,MAAM,OAAO,OAAO,YAAY;AAAA,MAChC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,gBAAgB;AAAA,IAChB,cAAc;AAAA,MACZ,YAAY;AAAA,QACV,SAAS,OAAO,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC,EAAE;AAAA,QAC1C,MAAM;AAAA,MACR;AAAA,MACA,OAAO;AAAA,QACL,QAAQ,CAAC,uBAAuB;AAAA,MAClC;AAAA,MACA,YAAY;AAAA,QACV,QAAQ,CAAC,uBAAuB;AAAA,MAClC;AAAA,MACA,SAAS;AAAA,QACP,QAAQ,CAAC,uBAAuB;AAAA,MAClC;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,kBAAAA,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAEAC,QAAO,MAAM,EAAE,kBAAkB,EAAE,CAAC;AAE7B,IAAM,YAAY,kBAAAD,QAAS,MAAsB,QAAQC,OAAM;;;ACjJtE,IAAAC,oBAAqB;AAErB,IAAMC,mBAAiB,kBAAAC,QAAS;AAQhC,IAAMC,UAAS,IAAIF;AAAA,EACjB;AAAA,IACE,WAAW;AAAA,MACT,SAAS,KAAK;AAAA,MACd,SAAS,KAAK,KAAK;AAAA;AAAA,MACnB,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA;AAAA,IACA,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACtC,mBAAmB,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EACpD;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAEO,IAAM,yBAAyB,kBAAAC,QAAS;AAAA,EAC7C;AAAA,EACAC;AACF;;;AC3BA,IAAAC,oBAAqB;AAOrB,IAAMC,mBAAiB,kBAAAC,QAAS;AAEhC,IAAM,iBAAiB,IAAID;AAAA,EACzB;AAAA,IACE,aAAa,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC7C,MAAM,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACtC,OAAO,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACvC,eAAe,EAAE,UAAU,OAAO,MAAM,CAAC,MAAM,EAAE;AAAA,EACnD;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEA,IAAM,kBAAkB,IAAIA;AAAA,EAC1B;AAAA,IACE,UAAU;AAAA,MACR,SAAS,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MACzC,SAAS,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MACzC,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MAC3C,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC7C;AAAA,IACA,aAAa,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC7C,UAAU;AAAA,MACR,MAAM,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MACtC,aAAa;AAAA,QACX,UAAU;AAAA,QACV,MAAM,CAAC,MAAM;AAAA;AAAA,MACf;AAAA,MACA,SAAS,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MACzC,aAAa,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MAC7C,UAAU,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MAC1C,WAAW,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MAC3C,QAAQ,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,MACxC,MAAM,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA;AAAA,IACxC;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAWA,IAAME,UAAS,IAAIF;AAAA,EACjB;AAAA,IACE,GAAG;AAAA;AAAA,IACH,cAAc;AAAA,MACZ,WAAW,EAAE,SAAS,OAAO,UAAU,OAAO,MAAM,QAAQ;AAAA,MAC5D,SAAS,EAAE,SAAS,OAAO,UAAU,OAAO,MAAM,QAAQ;AAAA,MAC1D,QAAQ,EAAE,SAAS,OAAO,UAAU,OAAO,MAAM,QAAQ;AAAA,IAC3D;AAAA,IACA,YAAY,CAAC,cAAc;AAAA,IAC3B,WAAW,CAAC,eAAe;AAAA,IAC3B,eAAe,EAAE,UAAU,MAAM,MAAM,QAAQ;AAAA,IAC/C,UAAU,CAAC,cAAc;AAAA,IACzB,cAAc;AAAA,MACZ,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,kBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,IACA,YAAY;AAAA,MACV,MAAM,OAAO,OAAO,cAAc;AAAA,MAClC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAGAC,QAAO,MAAM,EAAE,MAAM,EAAE,CAAC;AACxBA,QAAO,MAAM,EAAE,aAAa,EAAE,CAAC;AAC/BA,QAAO,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC1BA,QAAO,MAAM,EAAE,mBAAmB,EAAE,CAAC;AACrCA,QAAO,MAAM,EAAE,kBAAkB,EAAE,CAAC;AAE7B,IAAM,cAAc,kBAAAD,QAAS,MAAwB,UAAUC,OAAM;;;ACvF5E,IAAAC,oBAAqB;AAOrB,IAAMC,mBAAiB,kBAAAC,QAAS;AAMhC,IAAM,mBAAmB,IAAID;AAAA,EAC3B;AAAA,IACE,SAAS,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IACzC,YAAY,EAAE,SAAS,OAAO,UAAU,MAAM,MAAM,QAAQ;AAAA,EAC9D;AAAA,EACA,EAAE,KAAK,MAAM;AACf;AAEA,IAAME,UAAS,IAAIF;AAAA,EACjB;AAAA,IACE,YAAY;AAAA,MACV,qBAAqB,EAAE,SAAS,OAAO,UAAU,OAAO,MAAM,QAAQ;AAAA,MACtE,oBAAoB,EAAE,SAAS,OAAO,UAAU,OAAO,MAAM,QAAQ;AAAA,IACvE;AAAA,IACA,WAAW,CAAC,uBAAuB;AAAA,IACnC,SAAS;AAAA,MACP,aAAa;AAAA,QACX,MAAM,OAAO,OAAO,cAAc;AAAA,QAClC,UAAU;AAAA,QACV,MAAM,CAAC,MAAM;AAAA,MACf;AAAA,MACA,WAAW,EAAE,UAAU,MAAM,MAAM,CAAC,MAAM,EAAE;AAAA,MAC5C,YAAY;AAAA,QACV,KAAK,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,QACpC,KAAK,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,MACtC;AAAA,MACA,YAAY,EAAE,UAAU,MAAM,MAAM,CAAC,MAAM,EAAE;AAAA,IAC/C;AAAA,IACA,cAAc;AAAA,MACZ,aAAa;AAAA,MACb,QAAQ;AAAA,MACR,OAAO;AAAA,IACT;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,QACJ,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,QACtC,OAAO,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,MACxC;AAAA,IACF;AAAA,IACA,UAAU;AAAA,MACR,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,kBAAAC,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,EACF;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAEO,IAAM,kBAAkB,kBAAAA,QAAS;AAAA,EACtC;AAAA,EACAC;AACF;;;AChEA,IAAAC,oBAAqB;AAOrB,IAAMC,mBAAiB,kBAAAC,QAAS;AAEhC,IAAM,kBAAkB,IAAID;AAAA,EAC1B;AAAA,IACE,MAAM,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACrC,aAAa;AAAA,MACX,UAAU;AAAA,MACV,MAAM,CAAC,MAAM;AAAA;AAAA,IACf;AAAA,IACA,SAAS,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACxC,aAAa,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC5C,UAAU,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACzC,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC1C,QAAQ,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACvC,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,MAAM,CAAC,OAAO;AAAA,MACd,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAEA,IAAME,kBAAiB,IAAIF;AAAA,EACzB;AAAA,IACE,SAAS,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACxC,SAAS,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACxC,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IAC1C,WAAW,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,EAC5C;AAAA,EACA,EAAE,KAAK,MAAM;AAAA;AACf;AAgBA,IAAMG,WAAS,IAAIH;AAAA,EACjB;AAAA,IACE,GAAG;AAAA;AAAA,IACH,UAAU,CAACE,eAAc;AAAA,IACzB,aAAa;AAAA,MACX,KAAK;AAAA,MACL,UAAU;AAAA,MACV,MAAM,kBAAAD,QAAS,OAAO,MAAM;AAAA,IAC9B;AAAA,IACA,WAAW;AAAA,MACT,MAAM,OAAO,OAAO,aAAa;AAAA,MACjC,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,UAAU;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,MAAM,EAAE,UAAU,MAAM,MAAM,OAAO;AAAA,IACrC,UAAU,EAAE,UAAU,OAAO,MAAM,OAAO;AAAA,IAC1C,aAAa,EAAE,UAAU,MAAM,MAAM,QAAQ;AAAA,IAC7C,MAAM,EAAE,UAAU,MAAM,MAAM,CAAC,MAAM,EAAE;AAAA,EACzC;AAAA,EACA,EAAE,YAAY,KAAK;AACrB;AAGAE,SAAO,MAAM,EAAE,MAAM,EAAE,CAAC;AACxBA,SAAO,MAAM,EAAE,aAAa,EAAE,CAAC;AAC/BA,SAAO,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC1BA,SAAO,MAAM,EAAE,UAAU,WAAW,CAAC;AACrCA,SAAO,MAAM,EAAE,MAAM,EAAE,CAAC;AACxBA,SAAO,MAAM,EAAE,kBAAkB,EAAE,CAAC;AAE7B,IAAM,aAAa,kBAAAF,QAAS,MAAuB,SAASE,QAAM;","names":["import_mongoose","EnumInviteStatus","EnumChatType","EnumPaymentMethod","EnumFoodFlavor","EnumResourceType","EnumEventType","EnumVendorType","EnumOSPlatform","EnumRelationResource","EnumNotificationResourceType","EnumNotificationType","EnumUserLicence","EnumUserRole","EnumAdShowOn","EnumAdStatus","EnumAdType","EnumAdStyle","EnumActivity","import_mongoose","import_mongoose","mongoose","MongooseSchema","mongoose","MongooseSchema","mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","dateTimeSchema","schema"]}
1
+ {"version":3,"sources":["../../src/mongoose/index.ts","../../src/mongoose/Ad.ts","../../src/enums/index.ts","../../src/types/global.ts","../../src/types/ad.ts","../../src/types/resourceActivities.ts","../../src/mongoose/global.ts","../../src/mongoose/Relation.ts","../../src/mongoose/event/EventInfo.ts","../../src/mongoose/Chat.ts","../../src/mongoose/Notification.ts","../../src/mongoose/PushToken.ts","../../src/mongoose/ResourceActivity.ts","../../src/mongoose/Testers.ts","../../src/mongoose/User.ts","../../src/mongoose/VerificationToken.ts","../../src/mongoose/vendor/Vendor.ts","../../src/mongoose/vendor/VendorInfo.ts","../../src/mongoose/event/Event.ts"],"sourcesContent":["export * from \"./Ad\";\nexport * from \"./Chat\";\nexport * from \"./global\";\nexport * from \"./Notification\";\nexport * from \"./PushToken\";\nexport * from \"./Relation\";\nexport * from \"./ResourceActivity\";\nexport * from \"./Testers\";\nexport * from \"./User\";\nexport * from \"./VerificationToken\";\nexport * from \"./vendor/Vendor\";\nexport * from \"./vendor/VendorInfo\";\nexport * from \"./event/Event\";\nexport * from \"./event/EventInfo\";\n","import mongoose from \"mongoose\";\n\nimport { EnumResourceType } from \"src/enums\";\nimport {\n AdType,\n EnumAdShowOn,\n EnumAdStatus,\n EnumAdStyle,\n EnumAdType,\n} from \"src/types\";\n\nimport { SocialMediaTypeSchema } from \"./global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst schema = new MongooseSchema<AdType>(\n {\n active: { default: true, type: Boolean },\n adStyle: {\n default: EnumAdStyle.BLOOM,\n enum: Object.values(EnumAdStyle),\n required: true,\n type: String,\n },\n adType: {\n default: EnumAdType.SPONSORED,\n enum: Object.values(EnumAdType),\n required: true,\n type: String,\n },\n // TODO: similar to ViewSchema\n clicks: { default: 0, required: true, type: Number },\n clui: { required: false, type: String },\n end: { required: true, type: Date },\n // TODO: similar to ViewSchema\n impressions: { default: 0, required: true, type: Number },\n resourceCover: { required: true, type: String },\n resourceDescription: { required: true, type: String },\n resourceId: { required: true, type: String },\n resourceLogo: { required: false, type: String },\n resourceName: { required: true, type: String },\n resourceRegion: { required: true, type: String },\n resourceType: {\n enum: Object.values(EnumResourceType),\n required: true,\n type: String,\n },\n showOn: {\n default: EnumAdShowOn.FRONT_PAGE,\n enum: Object.values(EnumAdShowOn),\n required: true,\n type: String,\n },\n socialMedia: [SocialMediaTypeSchema],\n start: { required: true, type: Date },\n status: {\n default: EnumAdStatus.ACTIVE,\n enum: Object.values(EnumAdStatus),\n required: true,\n type: String,\n },\n targetRegion: { required: false, type: String },\n },\n {\n timestamps: true,\n },\n);\n\n// Compound index for background job queries\nschema.index({\n end: 1,\n start: 1,\n status: 1,\n});\n\nexport const AdModel =\n (mongoose.models.Ad as mongoose.Model<AdType>) ||\n mongoose.model<AdType>(\"Ad\", schema);\n","export enum EnumInviteStatus {\n ACCEPTED = \"Accepted\",\n COMPLETED = \"Completed\",\n EXPIRED = \"Expired\",\n NO_STATUS = \"No_Status\",\n PAID = \"Paid\",\n PENDING = \"Pending\",\n REJECTED = \"Rejected\",\n UNAVAILABLE = \"Unavailable\",\n WAITING = \"Waiting\",\n}\n\nexport enum EnumChatType {\n GROUP = \"group\",\n PRIVATE = \"private\",\n RELATION = \"relation\",\n}\n\nexport enum EnumPaymentMethod {\n CASH = \"cash\",\n EFTPOS = \"eftpos\",\n BANK_TRANSFER = \"bank_transfer\",\n PAYPAL = \"paypal\",\n STRIPE = \"stripe\",\n}\n\nexport enum EnumFoodFlavor {\n SALTY = \"Salty\",\n SAVOURY = \"Savoury\",\n SPICY = \"Spicy\",\n SWEET = \"Sweet\",\n}\n\nexport enum EnumResourceType {\n EVENT = \"event\",\n VENDOR = \"vendor\",\n}\n\nexport enum EnumEventType {\n EXPO = \"Expo\",\n FAIR = \"Fair\",\n FESTIVAL = \"Festival\",\n MARKET = \"Market\",\n}\n\nexport enum EnumVendorType {\n STALLHOLDER = \"Stallholder\",\n SHOP = \"Shop\",\n CHARITY = \"Charity\",\n}\n\nexport enum EnumOSPlatform {\n ANDROID = \"android\",\n IOS = \"ios\",\n WEB = \"web\",\n}\n\nexport enum EnumRelationResource {\n EVENT_INVITE_VENDOR = \"event_invite_vendor\",\n VENDOR_APPLICATION_TO_EVENT = \"vendor_application_to_event\",\n}\n\nexport enum EnumNotificationResourceType {\n ADDED_AS_PARTNER_EVENT = \"added_as_partner_event\",\n ADDED_AS_PARTNER_VENDOR = \"added_as_partner_vendor\",\n APPROVED_EVENT = \"approved_event\",\n APPROVED_VENDOR = \"approved_vendor\",\n CREATED_EVENT = \"created_event\",\n CREATED_VENDOR = \"created_vendor\",\n EVENT_INVITE_VENDOR = EnumRelationResource.EVENT_INVITE_VENDOR,\n EVENT_STARTING_SOON = \"event_starting_soon\",\n NEW_CHAT_MESSAGE = \"new_chat_message\",\n VENDOR_APPLICATION_TO_EVENT = EnumRelationResource.VENDOR_APPLICATION_TO_EVENT,\n}\n\nexport enum EnumNotificationType {\n EVENT = EnumResourceType.EVENT,\n VENDOR = EnumResourceType.VENDOR,\n RELATION = \"relation\",\n CHAT = \"chat\",\n SYSTEM = \"system\",\n}\n\nexport enum EnumRegions {\n Auckland = \"Auckland\",\n BayOfPlentyGisborne = \"Bay of Plenty & Gisborne\",\n Canterbury = \"Canterbury\",\n HawkesBay = \"Hawke's Bay\",\n ManawatuWanganui = \"Manawatu-Wanganui\",\n MarlboroughNelson = \"Marlborough & Nelson\",\n Northland = \"Northland\",\n SouthlandOtago = \"Southland & Otago\",\n Taranaki = \"Taranaki\",\n Waikato = \"Waikato\",\n Wellington = \"Wellington\",\n TasmanWestCoast = \"Tasman & West Coast\",\n}\n\nexport enum ImageTypeEnum {\n AVATAR = \"avatar\",\n COVER = \"cover\",\n IMAGE = \"image\",\n LOGO = \"logo\",\n}\n\nexport enum EnumUserLicence {\n PRO_EVENT = \"pro_event\",\n PRO_PLUS_EVENT = \"pro_plus_event\",\n PRO_PLUS_VENDOR = \"pro_plus_vendor\",\n PRO_VENDOR = \"pro_vendor\",\n STANDARD_EVENT = \"standard_event\",\n STANDARD_VENDOR = \"standard_vendor\",\n}\n\nexport enum EnumUserRole {\n ADMIN = \"admin\",\n CUSTOMER = \"customer\",\n MARKETING = \"marketing\",\n MODERATOR = \"moderator\",\n SUPPORT = \"support\",\n}\n\nexport enum EnumSocialMedia {\n FACEBOOK = \"facebook\",\n INSTAGRAM = \"instagram\",\n TIKTOK = \"tiktok\",\n TWITTER = \"twitter\",\n WEBSITE = \"website\",\n YOUTUBE = \"youtube\",\n}\n","import { Request } from \"express\";\nimport mongoose from \"mongoose\";\nimport {\n Control,\n FieldErrors,\n FieldValues,\n UseFormHandleSubmit,\n UseFormReset,\n UseFormSetValue,\n UseFormWatch,\n} from \"react-hook-form\";\n\nimport { SchemaChatType } from \"src/mongoose/Chat\";\nimport { SchemaNotificationType } from \"src/mongoose/Notification\";\n\nimport { EnumResourceType, EnumSocialMedia, EnumUserLicence } from \"../enums\";\n\nimport { EventType } from \"./event\";\nimport { NotificationCount } from \"./notification\";\nimport { RelationDate } from \"./relation\";\nimport { VendorType } from \"./vendor\";\n\nexport type Nullable<T> = {\n [K in keyof T]: T[K] | null | undefined;\n};\n\nexport type DeviceInfo = {\n appBuildNumber: string;\n appId: string;\n appVersion: string;\n brand: string;\n deviceName: string;\n installationId: string;\n manufacturer: string;\n modelName: string;\n osName: string;\n osVersion: string;\n timestamp: string;\n};\n\nexport type TermsAgreement = DeviceInfo & {\n termVersion: string;\n};\n\nexport type ResourceContactDetailsType = {\n email?: string | null;\n landlinePhone?: string | null;\n mobilePhone?: string | null;\n};\n\nexport type ResourceImageType = {\n source: string;\n title: string;\n};\n\nexport type SocialMediaType = {\n name?: EnumSocialMedia;\n link?: string;\n};\n\nexport type PartnerType = {\n email: string;\n resourceId: string;\n resourceType: EnumResourceType;\n licence: EnumUserLicence;\n};\n\nexport type OwnerType = {\n email: string;\n userId: string;\n};\n\nexport interface BaseResourceTypeFormData {\n _id?: string;\n active: boolean;\n contactDetails?: ResourceContactDetailsType | null;\n cover: ResourceImageType;\n coverUpload?: ResourceImageType | null;\n description: string;\n images?: ResourceImageType[] | null;\n imagesUpload?: ResourceImageType[] | null;\n logo?: ResourceImageType | null;\n logoUpload?: ResourceImageType | null;\n name: string;\n owner?: OwnerType | null;\n partners?: PartnerType[] | null;\n promoCodes?: string[] | null;\n region: string;\n socialMedia?: SocialMediaType[] | null;\n termsAgreement?: TermsAgreement | null;\n}\n\nexport type PosterUsageType = {\n month: string;\n count: number;\n};\n\nexport type BaseResourceType = Omit<\n BaseResourceTypeFormData,\n \"_id\" | \"coverUpload\" | \"imagesUpload\" | \"logoUpload\" | \"owner\"\n> & {\n _id: string;\n adIds?: string[] | null;\n createdAt: string;\n deletedAt: string | null;\n owner: OwnerType;\n posterUsage?: PosterUsageType | null;\n relations:\n | {\n relationId: string | null;\n relationDates: RelationDate[] | null;\n }[]\n | null;\n updatedAt: string;\n};\n\nexport type LocationType = {\n city: string;\n coordinates: number[]; // [longitude, latitude]\n country: string;\n fullAddress: string;\n latitude: number;\n longitude: number;\n region: string;\n type: \"Point\"; // Mongoose GeoJSON type\n};\n\nexport type DateTimeType = {\n endDate: string;\n endTime: string;\n startDate: string;\n startTime: string;\n};\n\nexport type Region = {\n latitude: number;\n latitudeDelta: number;\n longitude: number;\n longitudeDelta: number;\n};\n\nexport type GeocodeLocation = Pick<LocationType, \"latitude\" | \"longitude\">;\n\nexport type MapMultiLocation = {\n dateTime: DateTimeType | null;\n location: LocationType | null;\n resourceId?: string;\n resourceName?: string;\n resourceType?: EnumResourceType;\n};\n\nexport interface FormField {\n disabled?: boolean;\n helperText?: string;\n isTextArea?: boolean;\n keyboardType?:\n | \"default\"\n | \"email-address\"\n | \"number-pad\"\n | \"url\"\n | \"decimal-pad\"\n | \"phone-pad\";\n name: string;\n placeholder: string;\n secureTextEntry?: boolean;\n}\n\nexport interface FormDateField {\n dateMode: \"date\" | \"time\";\n helperText?: string;\n name: \"endDate\" | \"endTime\" | \"startDate\" | \"startTime\";\n placeholder: string;\n}\n\nexport interface SubcategoryItems {\n id: string;\n name: string;\n description?: string | null;\n}\n\nexport interface Subcategory {\n id: string;\n name: string;\n items?: SubcategoryItems[] | null;\n}\n\nexport interface Category {\n color?: string | null;\n description?: string | null;\n id: string;\n name: string;\n subcategories: Subcategory[];\n}\n\nexport type OptionItem = {\n value: string;\n label: string;\n};\n\nexport type ImageObjectType = {\n uri: string;\n type: string;\n name: string;\n};\n\nexport interface ResourceConnectionsType {\n events: EventType[] | null;\n vendors: VendorType[] | null;\n}\n\nexport interface CreateFormData<T extends FieldValues> {\n control: Control<T, any>;\n fields: T;\n formState: { errors: FieldErrors<T> };\n handleSubmit: UseFormHandleSubmit<T, any>;\n reset: UseFormReset<T>;\n setValue: UseFormSetValue<T>;\n watch: UseFormWatch<T>;\n}\n\nexport type ObjectId = mongoose.Schema.Types.ObjectId;\n\nexport enum EnumPubSubEvents {\n GET_CHAT_MESSAGE = \"GET_CHAT_MESSAGE\",\n GET_NOTIFICATIONS = \"GET_NOTIFICATIONS\",\n GET_NOTIFICATIONS_COUNT = \"GET_NOTIFICATIONS_COUNT\",\n USER_TYPING = \"USER_TYPING\",\n}\n\nexport interface AuthUser {\n email: string;\n role: string;\n userId: ObjectId;\n}\n\nexport interface SubscriptionPayload {\n getChatMessage?: SchemaChatType;\n userTyping?: SchemaChatType; // NOT USED\n getNotifications?: SchemaNotificationType[];\n // Used only for filtering; not part of the GraphQL schema output\n getNotificationsUserId?: ObjectId;\n getNotificationsCount?: NotificationCount & { userId: ObjectId };\n}\n\nexport interface GraphQLContext {\n user: AuthUser | null;\n pubsub: {\n publish: (\n eventName: EnumPubSubEvents,\n payload: SubscriptionPayload,\n ) => void;\n subscribe: (eventName: EnumPubSubEvents) => AsyncIterable<any>;\n };\n request: Request;\n response: Response;\n}\n\nexport { mongoose };\n","import { EnumResourceType } from \"src/enums\";\n\nimport { CreateFormData, SocialMediaType } from \"./global\";\n\nexport enum EnumAdShowOn {\n FRONT_PAGE = \"Front_page\",\n EVENTS_PAGE = \"Events_page\",\n VENDORS_PAGE = \"Vendors_page\",\n}\n\nexport enum EnumAdStatus {\n ACTIVE = \"Active\",\n PAUSED = \"Paused\",\n EXPIRED = \"Expired\",\n}\n\nexport enum EnumAdType {\n SPONSORED = \"Sponsored\",\n FREE = \"Free\",\n}\n\nexport enum EnumAdStyle {\n BLOOM = \"Bloom\",\n RISE = \"Rise\",\n}\n\nexport interface AdFormData {\n active: boolean;\n adStyle: EnumAdStyle;\n adType: EnumAdType;\n clui?: string | null;\n end: Date; // ISO date string\n resourceCover: string;\n resourceDescription: string;\n resourceId: string;\n resourceLogo?: string | null;\n resourceName: string;\n resourceRegion: string;\n resourceType: EnumResourceType;\n showOn: EnumAdShowOn;\n socialMedia?: SocialMediaType[] | null;\n start?: Date; // ISO date string\n status: EnumAdStatus;\n targetRegion?: string | null;\n}\n\nexport type CreateAdFormData = CreateFormData<AdFormData>;\n\nexport interface AdType extends AdFormData {\n _id: string;\n clicks?: number; // How many times the ad was clicked\n createdAt: Date;\n impressions?: number; // How often the ad was seen\n start: Date; // ISO date string\n updatedAt: Date;\n}\n","import { EnumOSPlatform, EnumResourceType } from \"src/enums\";\n\nexport enum EnumActivity {\n FAVORITE = \"FAVORITE\",\n GOING = \"GOING\",\n INTERESTED = \"INTERESTED\",\n PRESENT = \"PRESENT\",\n VIEW = \"VIEW\",\n}\n\nexport type ResourceActivityEntry = {\n activityType: EnumActivity;\n location: {\n type: \"Point\";\n coordinates: number[]; // [longitude, latitude]\n } | null;\n startDate?: string | null;\n startTime?: string | null;\n timestamp: Date;\n userAgent: EnumOSPlatform;\n userId?: string | null;\n};\n\nexport type ResourceActivityType = {\n _id: string;\n resourceType: EnumResourceType;\n resourceId: string;\n activity: ResourceActivityEntry[];\n};\n\nexport type ResourceActivityInputType = {\n resourceId: string;\n resourceType: string;\n activity: Omit<ResourceActivityEntry, \"timestamp\">;\n};\n","import mongoose from \"mongoose\";\n\nimport { EnumResourceType, EnumUserLicence } from \"src/enums\";\nimport {\n Category,\n ObjectId,\n OwnerType,\n PartnerType,\n PosterUsageType,\n RelationDate,\n ResourceContactDetailsType,\n ResourceImageType,\n SocialMediaType,\n Subcategory,\n TermsAgreement,\n} from \"src/types\";\n\nimport { relationDatesSchema } from \"./Relation\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaOwnerType = Omit<OwnerType, \"userId\"> & {\n userId: ObjectId;\n};\n\nconst OwnerTypeSchema = new MongooseSchema<SchemaOwnerType>(\n {\n email: { required: true, type: String },\n userId: {\n ref: \"User\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport const SocialMediaTypeSchema = new MongooseSchema<SocialMediaType>(\n {\n link: { required: true, type: String },\n name: { required: true, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field\n);\n\nexport const ResourceImageTypeSchema = new MongooseSchema<ResourceImageType>(\n {\n source: { required: false, type: String },\n title: { required: false, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst SubCategorySchema = new MongooseSchema<Subcategory>(\n {\n id: { required: false, type: String },\n items: [\n {\n id: { required: false, type: String },\n name: { required: false, type: String },\n },\n ],\n name: { required: false, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport const CategorySchema = new MongooseSchema<Category>(\n {\n id: { required: true, type: String },\n name: { required: true, type: String },\n subcategories: [SubCategorySchema],\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst PosterUsageTypeSchema = new MongooseSchema<PosterUsageType>(\n {\n count: { default: 0, required: false, type: Number },\n month: { required: false, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport const partnersSchema = new MongooseSchema<PartnerType>(\n {\n email: { required: false, type: String },\n licence: {\n enum: Object.values(EnumUserLicence),\n required: false,\n type: String,\n },\n resourceId: {\n required: false,\n type: String,\n },\n resourceType: {\n enum: Object.values(EnumResourceType),\n required: false,\n type: String,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst ContactDetailsSchema = new MongooseSchema<ResourceContactDetailsType>(\n {\n email: { required: false, type: String },\n landlinePhone: { required: false, type: String },\n mobilePhone: { required: false, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport const termsAgreementSchema = new MongooseSchema<TermsAgreement>(\n {\n appBuildNumber: { required: true, type: String },\n appId: { required: true, type: String },\n appVersion: { required: true, type: String },\n brand: { required: true, type: String },\n deviceName: { required: true, type: String },\n installationId: { required: true, type: String },\n manufacturer: { required: true, type: String },\n modelName: { required: true, type: String },\n osName: { required: true, type: String },\n osVersion: { required: true, type: String },\n termVersion: { required: true, type: String },\n timestamp: { required: true, type: String },\n },\n { _id: false },\n);\n\nconst resourceRelationsSchema = new MongooseSchema<{\n relationId: ObjectId;\n relationDates: RelationDate[];\n}>(\n {\n relationDates: {\n default: [],\n required: false,\n type: [relationDatesSchema],\n },\n relationId: {\n ref: \"Relation\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { _id: false },\n);\n\nexport const baseResourceFields = {\n active: { default: false, required: true, type: Boolean },\n adIds: {\n ref: \"Ad\",\n required: false,\n type: [mongoose.Schema.Types.ObjectId],\n },\n contactDetails: ContactDetailsSchema,\n cover: ResourceImageTypeSchema,\n deletedAt: { default: null, required: false, type: Date },\n description: { required: true, type: String },\n images: [ResourceImageTypeSchema],\n logo: ResourceImageTypeSchema,\n name: { required: true, type: String },\n owner: OwnerTypeSchema,\n partners: {\n required: false,\n type: [partnersSchema],\n },\n posterUsage: PosterUsageTypeSchema,\n promoCodes: { required: false, type: [String] },\n region: { required: true, type: String },\n relations: {\n default: [],\n required: false,\n type: [resourceRelationsSchema],\n },\n socialMedia: [SocialMediaTypeSchema],\n termsAgreement: termsAgreementSchema,\n};\n","import mongoose from \"mongoose\";\n\nimport {\n EnumInviteStatus,\n EnumRelationResource,\n EnumResourceType,\n} from \"src/enums\";\nimport { ObjectId, RelationDate, RelationType } from \"src/types\";\n\nimport { StallTypeSchema } from \"./event/EventInfo\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport const relationDatesSchema = new MongooseSchema<RelationDate>(\n {\n lastUpdateBy: {\n resourceId: { required: false, type: String },\n userEmail: { required: false, type: String },\n },\n paymentReference: { required: false, type: String },\n stallType: StallTypeSchema,\n startDate: { required: false, type: String },\n startTime: { required: false, type: String },\n status: {\n enum: Object.values(EnumInviteStatus),\n required: false,\n type: String,\n },\n },\n { _id: false },\n);\n\nexport type SchemaRelationType = Omit<\n RelationType,\n \"chatId\" | \"eventId\" | \"vendorId\"\n> & {\n chatId: ObjectId;\n eventId: ObjectId;\n vendorId: ObjectId;\n};\n/**\n * This is the schema for the relation type.\n * It is used to define the structure of the relation type in the database.\n * The schema is used by Mongoose to create a model for the relation type.\n */\nexport const RelationTypeSchema = new MongooseSchema<SchemaRelationType>(\n {\n active: { default: true, required: true, type: Boolean },\n chatId: {\n ref: \"Chat\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n deletedAt: { default: null, required: false, type: Date },\n eventId: {\n ref: \"Event\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n lastUpdateBy: {\n enum: Object.values(EnumResourceType),\n required: true,\n type: String,\n },\n relationDates: [relationDatesSchema],\n relationType: {\n enum: Object.values(EnumRelationResource),\n required: true,\n type: String,\n },\n vendorId: {\n ref: \"Vendor\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { timestamps: true },\n);\n\nRelationTypeSchema.index({\n \"relationDates.startDate\": 1,\n \"relationDates.startTime\": 1,\n \"relationDates.status\": 1,\n});\n\n// --- IMPORTANT: bind custom model type ---\nexport const RelationModel =\n (mongoose.models.Relation as mongoose.Model<SchemaRelationType>) ||\n mongoose.model<SchemaRelationType>(\"Relation\", RelationTypeSchema);\n","import mongoose from \"mongoose\";\n\nimport { EnumPaymentMethod } from \"src/enums\";\nimport {\n DateTimeWithPriceType,\n EventInfoType,\n ObjectId,\n PaymentInfoType,\n Requirement,\n StallType,\n} from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport const StallTypeSchema = new MongooseSchema<StallType>(\n {\n electricity: {\n price: { required: false, type: Number },\n selected: { required: false, type: Boolean },\n },\n label: { required: false, type: String },\n price: { required: false, type: Number },\n stallCapacity: { required: false, type: Number },\n },\n {\n _id: false, // Prevents Mongoose from creating an additional _id field for subdocuments\n },\n);\n\nconst dateTimeSchema = new MongooseSchema<DateTimeWithPriceType>(\n {\n endDate: { required: true, type: String },\n endTime: { required: true, type: String },\n stallTypes: [StallTypeSchema],\n startDate: { required: true, type: String },\n startTime: { required: true, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst paymentInfoSchema = new MongooseSchema<PaymentInfoType>(\n {\n accountHolderName: { required: false, type: String },\n accountNumber: { required: false, type: String },\n link: { required: false, type: String },\n paymentMethod: {\n enum: Object.values(EnumPaymentMethod),\n required: true,\n type: String,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field\n);\n\nconst requirementsSchema = new MongooseSchema<Requirement>(\n {\n category: { required: true, type: String },\n label: { required: true, type: String },\n value: { required: true, type: Boolean },\n },\n {\n _id: false, // Prevents Mongoose from creating an additional _id field for\n },\n);\n\nexport type SchemaEventInfoType = Omit<EventInfoType, \"eventId\"> & {\n eventId: ObjectId;\n};\n\n/**\n * This is the schema for the event info type.\n * It is used to define the structure of the event info type in the database.\n * The schema is used by Mongoose to create a model for the event info type.\n */\nconst schema = new MongooseSchema<SchemaEventInfoType>(\n {\n applicationDeadlineHours: { required: true, type: Number },\n dateTime: [dateTimeSchema],\n eventId: {\n ref: \"Event\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n packInTime: { required: true, type: Number },\n paymentDueHours: { required: true, type: Number },\n paymentInfo: [paymentInfoSchema],\n requirements: [requirementsSchema],\n },\n { timestamps: true },\n);\n\nexport const EventInfoModel =\n (mongoose.models.EventInfo as mongoose.Model<SchemaEventInfoType>) ||\n mongoose.model<SchemaEventInfoType>(\"EventInfo\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumChatType } from \"src/enums\";\nimport {\n ChatMessageType,\n ChatType,\n ObjectId,\n ParticipantType,\n} from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaChatMessageType = Omit<ChatMessageType, \"senderId\"> & {\n senderId: ObjectId;\n};\n\nexport type SchemaParticipantType = Omit<ParticipantType, \"userId\"> & {\n userId: ObjectId;\n};\n\nconst MessageSchema = new MongooseSchema<SchemaChatMessageType>(\n {\n content: { required: true, type: String },\n senderAvatar: { required: false, type: String },\n senderId: {\n ref: \"User\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n senderName: { required: true, type: String },\n },\n { timestamps: true },\n);\n\nexport type SchemaChatType = Omit<\n ChatType,\n \"participants\" | \"messages\" | \"resourceInfo\"\n> & {\n participants: SchemaParticipantType[];\n messages: SchemaChatMessageType[];\n resourceInfo: { eventId: ObjectId; vendorId: ObjectId } | null;\n};\n\nexport const ParticipantSchema = new MongooseSchema<SchemaParticipantType>(\n {\n active: { default: true, required: true, type: Boolean },\n email: { required: true, type: String },\n userId: {\n ref: \"User\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst ChatSchema = new MongooseSchema<SchemaChatType>(\n {\n active: { default: true, required: true, type: Boolean },\n chatName: { required: true, type: String },\n chatType: {\n enum: Object.values(EnumChatType),\n required: true,\n type: String,\n },\n deletedAt: { default: null, required: false, type: Date },\n messages: [MessageSchema],\n participants: [ParticipantSchema],\n resourceInfo: {\n eventId: {\n ref: \"Event\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n vendorId: {\n ref: \"Vendor\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n },\n {\n timestamps: true,\n },\n);\n\nexport const ChatModel =\n (mongoose.models.Chat as mongoose.Model<SchemaChatType>) ||\n mongoose.model<SchemaChatType>(\"Chat\", ChatSchema);\n","import mongoose from \"mongoose\";\n\nimport { EnumNotificationResourceType, EnumNotificationType } from \"src/enums\";\nimport {\n CreateBulkNotificationInput,\n NotificationType,\n ObjectId,\n} from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaCreateBulkNotificationInput = Omit<\n CreateBulkNotificationInput,\n \"userIds\"\n> & {\n userIds: ObjectId[];\n};\n\nexport type SchemaNotificationType = Omit<NotificationType, \"userId\"> & {\n userId: ObjectId;\n};\n/**\n * Schema for storing in-app notifications\n * Each notification is tied to a specific user and can be marked as read/unread\n */\nconst schema = new MongooseSchema<SchemaNotificationType>(\n {\n data: {\n resourceId: { required: true, type: String },\n resourceName: { required: true, type: String },\n resourceType: {\n enum: Object.values(EnumNotificationResourceType),\n required: true,\n type: String,\n },\n },\n isRead: { default: false, index: true, required: true, type: Boolean },\n message: { required: true, type: String },\n title: { required: true, type: String },\n type: {\n default: EnumNotificationType.SYSTEM,\n enum: Object.values(EnumNotificationType),\n required: true,\n type: String,\n },\n userId: {\n ref: \"User\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { timestamps: true },\n);\n\n// Compound index for efficient queries\nschema.index({ isRead: 1, userId: 1 });\nschema.index({ createdAt: -1, userId: 1 });\n\nexport const NotificationModel =\n (mongoose.models.Notification as mongoose.Model<SchemaNotificationType>) ||\n mongoose.model<SchemaNotificationType>(\"Notification\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumOSPlatform } from \"src/enums\";\nimport { ObjectId } from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\ntype PushTokenType = {\n _id: string;\n createdAt: Date;\n platform: EnumOSPlatform;\n token: string;\n updatedAt: Date;\n userId: string;\n};\n\nexport type SchemaPushTokenType = Omit<PushTokenType, \"userId\"> & {\n userId: ObjectId;\n};\n\n/**\n * This is the schema for the push token type.\n * It is used to define the structure of the push token type in the database.\n * The schema is used by Mongoose to create a model for the push token type.\n */\nconst schema = new MongooseSchema<SchemaPushTokenType>(\n {\n platform: {\n enum: Object.values(EnumOSPlatform),\n required: true,\n type: String,\n },\n token: { required: true, type: String },\n userId: { required: true, type: mongoose.Schema.Types.ObjectId },\n },\n { timestamps: true },\n);\n\nexport const PushTokenModel =\n (mongoose.models.PushToken as mongoose.Model<SchemaPushTokenType>) ||\n mongoose.model<SchemaPushTokenType>(\"PushToken\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumOSPlatform, EnumResourceType } from \"src/enums\";\nimport {\n EnumActivity,\n ResourceActivityEntry,\n ResourceActivityType,\n} from \"src/types\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst ActivitySchema = new MongooseSchema<ResourceActivityEntry>(\n {\n activityType: {\n enum: Object.values(EnumActivity),\n required: true,\n type: String,\n },\n location: {\n coordinates: {\n required: false,\n type: [Number],\n },\n type: {\n default: \"Point\",\n enum: [\"Point\"],\n required: false,\n type: String,\n },\n },\n startDate: { required: false, type: String },\n startTime: { required: false, type: String },\n timestamp: { default: Date.now, type: Date },\n userAgent: {\n enum: Object.values(EnumOSPlatform),\n required: true,\n type: String,\n },\n userId: { required: false, type: String },\n },\n { _id: false },\n);\n\nconst schema = new MongooseSchema<ResourceActivityType>(\n {\n activity: { default: [], type: [ActivitySchema] },\n resourceId: { required: true, type: String },\n resourceType: {\n enum: Object.values(EnumResourceType),\n required: true,\n type: String,\n },\n },\n { timestamps: true },\n);\n\nschema.index({ resourceId: 1, resourceType: 1 }, { unique: true }); // one per entity\nschema.index({ \"views.location\": \"2dsphere\" });\n\nexport const ResourceActivityModel =\n (mongoose.models.ResourceActivity as mongoose.Model<ResourceActivityType>) ||\n mongoose.model<ResourceActivityType>(\"ResourceActivity\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumOSPlatform, EnumResourceType } from \"src/enums\";\nimport { TesterType } from \"src/types\";\n\nimport { CategorySchema } from \"./global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst TesterSchema = new MongooseSchema<TesterType>(\n {\n active: { default: false, required: true, type: Boolean },\n categories: [CategorySchema],\n companyName: { required: true, type: String },\n email: { required: true, type: String },\n firstName: { required: true, type: String },\n lastName: { required: true, type: String },\n osType: {\n enum: Object.values(EnumOSPlatform),\n required: true,\n type: String,\n },\n region: { required: true, type: String },\n resourceType: {\n enum: Object.values(EnumResourceType),\n required: true,\n type: String,\n },\n },\n {\n timestamps: true,\n },\n);\n\nexport const TesterModel =\n (mongoose.models.Tester as mongoose.Model<TesterType>) ||\n mongoose.model<TesterType>(\"Tester\", TesterSchema);\n","import mongoose from \"mongoose\";\n\nimport { EnumOSPlatform, EnumUserLicence, EnumUserRole } from \"src/enums\";\nimport { ObjectId, UserActivityEvent, UserType } from \"src/types\";\n\nimport {\n partnersSchema,\n ResourceImageTypeSchema,\n termsAgreementSchema,\n} from \"./global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaUserActivityEvent = Omit<UserActivityEvent, \"resourceId\"> & {\n resourceId: ObjectId;\n};\n\nexport type SchemaUserType = Omit<\n UserType,\n \"vendor\" | \"events\" | \"userActivity\" | \"_id\"\n> & {\n _id: ObjectId;\n vendor: ObjectId;\n events: ObjectId[];\n userActivity: {\n favourites: {\n events: ObjectId[];\n vendors: ObjectId[];\n };\n interested: {\n events: SchemaUserActivityEvent[];\n };\n going: {\n events: SchemaUserActivityEvent[];\n };\n present: {\n events: SchemaUserActivityEvent[];\n };\n };\n};\n\nconst userActivityEventSchema = new MongooseSchema<SchemaUserActivityEvent>(\n {\n resourceId: {\n ref: \"Event\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n startDate: { required: false, type: String },\n startTime: { required: false, type: String },\n },\n { _id: false },\n);\n\nconst userActivityFavouritesSchema = new MongooseSchema(\n {\n events: {\n ref: \"Event\",\n required: false,\n type: [mongoose.Schema.Types.ObjectId],\n },\n vendors: {\n ref: \"Vendor\",\n required: false,\n type: [mongoose.Schema.Types.ObjectId],\n },\n },\n { _id: false },\n);\n\n/**\n * This is the schema for the user type.\n * It is used to define the structure of the user type in the database.\n * The schema is used by Mongoose to create a model for the user type.\n */\nconst schema = new MongooseSchema<SchemaUserType>(\n {\n active: { default: false, required: true, type: Boolean },\n avatar: ResourceImageTypeSchema,\n deletedAt: { default: null, required: false, type: Date },\n email: { required: true, type: String },\n events: {\n ref: \"Event\",\n required: false,\n type: [mongoose.Schema.Types.ObjectId],\n },\n firstName: { required: true, type: String },\n isTester: { default: false, required: false, type: Boolean },\n lastName: { required: true, type: String },\n licences: {\n enum: Object.values(EnumUserLicence),\n required: false,\n type: [String],\n },\n partners: {\n required: false,\n type: [partnersSchema],\n },\n password: { required: true, type: String },\n platform: {\n enum: Object.values(EnumOSPlatform),\n required: false,\n type: String,\n },\n preferredRegion: {\n required: true,\n type: String,\n },\n refreshToken: {\n required: false,\n type: String,\n },\n role: {\n default: EnumUserRole.CUSTOMER,\n enum: Object.values(EnumUserRole),\n required: true,\n type: String,\n },\n termsAgreement: termsAgreementSchema,\n userActivity: {\n favourites: {\n default: () => ({ events: [], vendors: [] }),\n type: userActivityFavouritesSchema,\n },\n going: {\n events: [userActivityEventSchema],\n },\n interested: {\n events: [userActivityEventSchema],\n },\n present: {\n events: [userActivityEventSchema],\n },\n },\n vendor: {\n ref: \"Vendor\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { timestamps: true },\n);\n\nschema.index({ \"partners.email\": 1 });\n\nexport const UserModel =\n (mongoose.models.User as mongoose.Model<SchemaUserType>) ||\n mongoose.model<SchemaUserType>(\"User\", schema);\n","import mongoose from \"mongoose\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport interface VerificationTokenType {\n email: string;\n verificationToken: string;\n createdAt: Date;\n}\n\nconst schema = new MongooseSchema<VerificationTokenType>(\n {\n createdAt: {\n default: Date.now,\n expires: 24 * 60 * 60, // 24 hours in seconds (MongoDB TTL expects seconds)\n required: true,\n type: Date,\n }, // Token expires after 1 day\n email: { required: true, type: String },\n verificationToken: { required: true, type: String },\n },\n { timestamps: true },\n);\n\nexport const VerificationTokenModel =\n (mongoose.models.VerificationToken as mongoose.Model<VerificationTokenType>) ||\n mongoose.model<VerificationTokenType>(\"VerificationToken\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumVendorType } from \"src/enums\";\nimport { ObjectId, VendorMenuType, VendorType } from \"src/types\";\n\nimport { baseResourceFields, CategorySchema, SchemaOwnerType } from \"../global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst MenuTypeSchema = new MongooseSchema<VendorMenuType>(\n {\n description: { required: false, type: String },\n name: { required: false, type: String },\n price: { required: false, type: Number },\n productGroups: { required: false, type: [String] },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst LocationsSchema = new MongooseSchema<VendorType[\"locations\"]>(\n {\n dateTime: {\n endDate: { required: false, type: String },\n endTime: { required: false, type: String },\n startDate: { required: false, type: String },\n startTime: { required: false, type: String },\n },\n description: { required: false, type: String },\n location: {\n city: { required: false, type: String },\n coordinates: {\n required: false,\n type: [Number], // [longitude, latitude]\n },\n country: { required: false, type: String },\n fullAddress: { required: false, type: String },\n latitude: { required: false, type: Number },\n longitude: { required: false, type: Number },\n region: { required: false, type: String },\n type: { required: false, type: String }, // Mongoose GeoJSON type\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport type SchemaVendorType = Omit<\n VendorType,\n \"vendorInfoId\" | \"owner\" | \"adIds\"\n> & {\n adIds?: ObjectId[];\n owner: SchemaOwnerType;\n vendorInfoId: ObjectId;\n};\n\nconst schema = new MongooseSchema<SchemaVendorType>(\n {\n ...baseResourceFields, // Importing base resource fields from global.ts\n availability: {\n corporate: { default: false, required: false, type: Boolean },\n private: { default: false, required: false, type: Boolean },\n school: { default: false, required: false, type: Boolean },\n },\n categories: [CategorySchema],\n locations: [LocationsSchema],\n multiLocation: { required: true, type: Boolean },\n products: [MenuTypeSchema],\n vendorInfoId: {\n ref: \"VendorInfo\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n vendorType: {\n enum: Object.values(EnumVendorType),\n required: true,\n type: String,\n },\n },\n { timestamps: true },\n);\n\n// 🔹 Add indexes to speed up regex-based searches\nschema.index({ name: 1 });\nschema.index({ description: 1 });\nschema.index({ region: 1 });\nschema.index({ \"categories.name\": 1 });\nschema.index({ \"partners.email\": 1 });\n\nexport const VendorModel =\n (mongoose.models.Vendor as mongoose.Model<SchemaVendorType>) ||\n mongoose.model<SchemaVendorType>(\"Vendor\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumFoodFlavor } from \"src/enums\";\nimport { ObjectId, VendorAttributes, VendorInfoType } from \"src/types\";\n\nimport { ResourceImageTypeSchema } from \"../global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nexport type SchemaVendorInfoType = Omit<VendorInfoType, \"vendorId\"> & {\n vendorId: ObjectId;\n};\n\nconst AttributesSchema = new MongooseSchema<VendorAttributes>(\n {\n details: { required: false, type: String },\n isRequired: { default: false, required: true, type: Boolean },\n },\n { _id: false },\n);\n\nconst schema = new MongooseSchema<SchemaVendorInfoType>(\n {\n compliance: {\n foodBeverageLicense: { default: false, required: false, type: Boolean },\n liabilityInsurance: { default: false, required: false, type: Boolean },\n },\n documents: [ResourceImageTypeSchema],\n product: {\n foodFlavors: {\n enum: Object.values(EnumFoodFlavor),\n required: true,\n type: [String],\n },\n packaging: { required: true, type: [String] },\n priceRange: {\n max: { required: true, type: Number },\n min: { required: true, type: Number },\n },\n producedIn: { required: true, type: [String] },\n },\n requirements: {\n electricity: AttributesSchema,\n gazebo: AttributesSchema,\n table: AttributesSchema,\n },\n stallInfo: {\n size: {\n depth: { required: true, type: Number },\n width: { required: true, type: Number },\n },\n },\n vendorId: {\n ref: \"Vendor\",\n required: true,\n type: mongoose.Schema.Types.ObjectId,\n },\n },\n { timestamps: true },\n);\n\nexport const VendorInfoModel =\n (mongoose.models.VendorInfo as mongoose.Model<SchemaVendorInfoType>) ||\n mongoose.model<SchemaVendorInfoType>(\"VendorInfo\", schema);\n","import mongoose from \"mongoose\";\n\nimport { EnumEventType } from \"src/enums\";\nimport { DateTimeType, EventType, LocationType, ObjectId } from \"src/types\";\n\nimport { baseResourceFields, SchemaOwnerType } from \"../global\";\n\nconst MongooseSchema = mongoose.Schema;\n\nconst locationsSchema = new MongooseSchema<LocationType>(\n {\n city: { required: true, type: String },\n coordinates: {\n required: true,\n type: [Number], // [longitude, latitude]\n },\n country: { required: true, type: String },\n fullAddress: { required: true, type: String },\n latitude: { required: true, type: Number },\n longitude: { required: true, type: Number },\n region: { required: true, type: String },\n type: {\n default: \"Point\",\n enum: [\"Point\"],\n required: true,\n type: String,\n },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nconst dateTimeSchema = new MongooseSchema<DateTimeType>(\n {\n endDate: { required: true, type: String },\n endTime: { required: true, type: String },\n startDate: { required: true, type: String },\n startTime: { required: true, type: String },\n },\n { _id: false }, // Prevents Mongoose from creating an additional _id field for subdocuments\n);\n\nexport type SchemaEventType = Omit<\n EventType,\n \"eventInfoId\" | \"owner\" | \"adIds\"\n> & {\n adIds?: ObjectId[];\n eventInfoId: ObjectId;\n owner: SchemaOwnerType;\n};\n\n/**\n * This is the schema for the event type.\n * It is used to define the structure of the event type in the database.\n * The schema is used by Mongoose to create a model for the event type.\n */\nconst schema = new MongooseSchema<SchemaEventType>(\n {\n ...baseResourceFields, // Importing base resource fields from global.ts\n dateTime: [dateTimeSchema],\n eventInfoId: {\n ref: \"EventInfo\",\n required: false,\n type: mongoose.Schema.Types.ObjectId,\n },\n eventType: {\n enum: Object.values(EnumEventType),\n required: true,\n type: String,\n },\n location: {\n required: true,\n type: locationsSchema,\n },\n nzbn: { required: true, type: String },\n provider: { required: false, type: String },\n rainOrShine: { required: true, type: Boolean },\n tags: { required: true, type: [String] },\n },\n { timestamps: true },\n);\n\n// 🔹 Add indexes to speed up regex-based searches\nschema.index({ name: 1 });\nschema.index({ description: 1 });\nschema.index({ region: 1 });\nschema.index({ location: \"2dsphere\" });\nschema.index({ tags: 1 });\nschema.index({ \"partners.email\": 1 });\n\nexport const EventModel =\n (mongoose.models.Event as mongoose.Model<SchemaEventType>) ||\n mongoose.model<SchemaEventType>(\"Event\", schema);\n"],"mappings":"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","names":["import_mongoose","EnumInviteStatus","EnumChatType","EnumPaymentMethod","EnumFoodFlavor","EnumResourceType","EnumEventType","EnumVendorType","EnumOSPlatform","EnumRelationResource","EnumNotificationResourceType","EnumNotificationType","EnumUserLicence","EnumUserRole","EnumAdShowOn","EnumAdStatus","EnumAdType","EnumAdStyle","EnumActivity","import_mongoose","import_mongoose","import_mongoose","mongoose","MongooseSchema","mongoose","MongooseSchema","mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","schema","import_mongoose","MongooseSchema","mongoose","dateTimeSchema","schema"]}
@@ -1,9 +1,10 @@
1
1
  import mongoose from 'mongoose';
2
- import { A as AdType, T as TesterType, f as UserActivityEvent, U as UserType } from '../ad-CTWMmc7b.mjs';
3
- import { p as OwnerType, q as ObjectId, r as SocialMediaType, s as ResourceImageType, C as Category, P as PartnerType, T as TermsAgreement, D as DeviceInfo, t as ResourceContactDetailsType, u as PosterUsageType, v as RelationDate, e as RelationType, V as VendorType, g as VendorInfoType, E as EventType, S as StallType, c as EventInfoType } from '../global-_ZHkOcnR.mjs';
4
- export { A as ChatModel, I as NotificationModel, z as ParticipantSchema, w as SchemaChatMessageType, y as SchemaChatType, G as SchemaCreateBulkNotificationInput, H as SchemaNotificationType, x as SchemaParticipantType } from '../global-_ZHkOcnR.mjs';
2
+ import { A as AdType, T as TesterType, f as UserActivityEvent, U as UserType } from '../ad-IVwm5MLY.mjs';
3
+ import { p as OwnerType, q as ObjectId, r as SocialMediaType, s as ResourceImageType, C as Category, P as PartnerType, T as TermsAgreement, D as DeviceInfo, t as ResourceContactDetailsType, u as PosterUsageType, v as RelationDate, e as RelationType, V as VendorType, g as VendorInfoType, E as EventType, S as StallType, c as EventInfoType } from '../global-_89-F0iL.mjs';
4
+ export { A as ChatModel, I as NotificationModel, z as ParticipantSchema, w as SchemaChatMessageType, y as SchemaChatType, G as SchemaCreateBulkNotificationInput, H as SchemaNotificationType, x as SchemaParticipantType } from '../global-_89-F0iL.mjs';
5
5
  import { EnumOSPlatform } from '../enums/index.mjs';
6
6
  import { R as ResourceActivityType } from '../resourceActivities-BIjtlOGp.mjs';
7
+ import 'express';
7
8
  import 'react-hook-form';
8
9
 
9
10
  declare const AdModel: mongoose.Model<AdType, {}, {}, {}, mongoose.Document<unknown, {}, AdType, {}, {}> & AdType & Required<{
@@ -279,19 +280,11 @@ declare const RelationModel: mongoose.Model<SchemaRelationType, {}, {}, {}, mong
279
280
  __v: number;
280
281
  }, any>;
281
282
 
282
- declare const ResourceActivityModel: mongoose.Model<ResourceActivityType, {}, {}, {}, mongoose.Document<unknown, {}, ResourceActivityType, {}, mongoose.DefaultSchemaOptions> & ResourceActivityType & Required<{
283
+ declare const ResourceActivityModel: mongoose.Model<ResourceActivityType, {}, {}, {}, mongoose.Document<unknown, {}, ResourceActivityType, {}, {}> & ResourceActivityType & Required<{
283
284
  _id: string;
284
285
  }> & {
285
286
  __v: number;
286
- }, mongoose.Schema<ResourceActivityType, mongoose.Model<ResourceActivityType, any, any, any, mongoose.Document<unknown, any, ResourceActivityType, any, {}> & ResourceActivityType & Required<{
287
- _id: string;
288
- }> & {
289
- __v: number;
290
- }, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, ResourceActivityType, mongoose.Document<unknown, {}, mongoose.FlatRecord<ResourceActivityType>, {}, mongoose.ResolveSchemaOptions<mongoose.DefaultSchemaOptions>> & mongoose.FlatRecord<ResourceActivityType> & Required<{
291
- _id: string;
292
- }> & {
293
- __v: number;
294
- }>>;
287
+ }, any>;
295
288
 
296
289
  declare const TesterModel: mongoose.Model<TesterType, {}, {}, {}, mongoose.Document<unknown, {}, TesterType, {}, {}> & TesterType & Required<{
297
290
  _id: string;
@@ -1,9 +1,10 @@
1
1
  import mongoose from 'mongoose';
2
- import { A as AdType, T as TesterType, f as UserActivityEvent, U as UserType } from '../ad-C02AZIGy.js';
3
- import { p as OwnerType, q as ObjectId, r as SocialMediaType, s as ResourceImageType, C as Category, P as PartnerType, T as TermsAgreement, D as DeviceInfo, t as ResourceContactDetailsType, u as PosterUsageType, v as RelationDate, e as RelationType, V as VendorType, g as VendorInfoType, E as EventType, S as StallType, c as EventInfoType } from '../global-4lS-fh61.js';
4
- export { A as ChatModel, I as NotificationModel, z as ParticipantSchema, w as SchemaChatMessageType, y as SchemaChatType, G as SchemaCreateBulkNotificationInput, H as SchemaNotificationType, x as SchemaParticipantType } from '../global-4lS-fh61.js';
2
+ import { A as AdType, T as TesterType, f as UserActivityEvent, U as UserType } from '../ad-Cv1V8lgJ.js';
3
+ import { p as OwnerType, q as ObjectId, r as SocialMediaType, s as ResourceImageType, C as Category, P as PartnerType, T as TermsAgreement, D as DeviceInfo, t as ResourceContactDetailsType, u as PosterUsageType, v as RelationDate, e as RelationType, V as VendorType, g as VendorInfoType, E as EventType, S as StallType, c as EventInfoType } from '../global-Bnr6l_NH.js';
4
+ export { A as ChatModel, I as NotificationModel, z as ParticipantSchema, w as SchemaChatMessageType, y as SchemaChatType, G as SchemaCreateBulkNotificationInput, H as SchemaNotificationType, x as SchemaParticipantType } from '../global-Bnr6l_NH.js';
5
5
  import { EnumOSPlatform } from '../enums/index.js';
6
6
  import { R as ResourceActivityType } from '../resourceActivities-B4roVKtQ.js';
7
+ import 'express';
7
8
  import 'react-hook-form';
8
9
 
9
10
  declare const AdModel: mongoose.Model<AdType, {}, {}, {}, mongoose.Document<unknown, {}, AdType, {}, {}> & AdType & Required<{
@@ -279,19 +280,11 @@ declare const RelationModel: mongoose.Model<SchemaRelationType, {}, {}, {}, mong
279
280
  __v: number;
280
281
  }, any>;
281
282
 
282
- declare const ResourceActivityModel: mongoose.Model<ResourceActivityType, {}, {}, {}, mongoose.Document<unknown, {}, ResourceActivityType, {}, mongoose.DefaultSchemaOptions> & ResourceActivityType & Required<{
283
+ declare const ResourceActivityModel: mongoose.Model<ResourceActivityType, {}, {}, {}, mongoose.Document<unknown, {}, ResourceActivityType, {}, {}> & ResourceActivityType & Required<{
283
284
  _id: string;
284
285
  }> & {
285
286
  __v: number;
286
- }, mongoose.Schema<ResourceActivityType, mongoose.Model<ResourceActivityType, any, any, any, mongoose.Document<unknown, any, ResourceActivityType, any, {}> & ResourceActivityType & Required<{
287
- _id: string;
288
- }> & {
289
- __v: number;
290
- }, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, ResourceActivityType, mongoose.Document<unknown, {}, mongoose.FlatRecord<ResourceActivityType>, {}, mongoose.ResolveSchemaOptions<mongoose.DefaultSchemaOptions>> & mongoose.FlatRecord<ResourceActivityType> & Required<{
291
- _id: string;
292
- }> & {
293
- __v: number;
294
- }>>;
287
+ }, any>;
295
288
 
296
289
  declare const TesterModel: mongoose.Model<TesterType, {}, {}, {}, mongoose.Document<unknown, {}, TesterType, {}, {}> & TesterType & Required<{
297
290
  _id: string;
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  NotificationModel,
3
3
  PushTokenModel
4
- } from "../chunk-O6LVIQFK.mjs";
4
+ } from "../chunk-NPHPFWQH.mjs";
5
5
  import {
6
6
  EnumActivity
7
- } from "../chunk-BO3HICLR.mjs";
7
+ } from "../chunk-4OLDTZXH.mjs";
8
8
  import {
9
9
  EnumAdShowOn,
10
10
  EnumAdStatus,
@@ -104,10 +104,7 @@ var schema = new MongooseSchema(
104
104
  },
105
105
  { timestamps: true }
106
106
  );
107
- var EventInfoModel = mongoose.model(
108
- "EventInfo",
109
- schema
110
- );
107
+ var EventInfoModel = mongoose.models.EventInfo || mongoose.model("EventInfo", schema);
111
108
 
112
109
  // src/mongoose/Relation.ts
113
110
  var MongooseSchema2 = mongoose2.Schema;
@@ -167,10 +164,7 @@ RelationTypeSchema.index({
167
164
  "relationDates.startTime": 1,
168
165
  "relationDates.status": 1
169
166
  });
170
- var RelationModel = mongoose2.model(
171
- "Relation",
172
- RelationTypeSchema
173
- );
167
+ var RelationModel = mongoose2.models.Relation || mongoose2.model("Relation", RelationTypeSchema);
174
168
 
175
169
  // src/mongoose/global.ts
176
170
  var MongooseSchema3 = mongoose3.Schema;
@@ -385,7 +379,7 @@ schema2.index({
385
379
  start: 1,
386
380
  status: 1
387
381
  });
388
- var AdModel = mongoose4.model("Ad", schema2);
382
+ var AdModel = mongoose4.models.Ad || mongoose4.model("Ad", schema2);
389
383
 
390
384
  // src/mongoose/Chat.ts
391
385
  import mongoose5 from "mongoose";
@@ -445,7 +439,7 @@ var ChatSchema = new MongooseSchema5(
445
439
  timestamps: true
446
440
  }
447
441
  );
448
- var ChatModel = mongoose5.model("Chat", ChatSchema);
442
+ var ChatModel = mongoose5.models.Chat || mongoose5.model("Chat", ChatSchema);
449
443
 
450
444
  // src/mongoose/ResourceActivity.ts
451
445
  import mongoose6 from "mongoose";
@@ -495,7 +489,7 @@ var schema3 = new MongooseSchema6(
495
489
  );
496
490
  schema3.index({ resourceId: 1, resourceType: 1 }, { unique: true });
497
491
  schema3.index({ "views.location": "2dsphere" });
498
- var ResourceActivityModel = mongoose6.model("ResourceActivity", schema3);
492
+ var ResourceActivityModel = mongoose6.models.ResourceActivity || mongoose6.model("ResourceActivity", schema3);
499
493
 
500
494
  // src/mongoose/Testers.ts
501
495
  import mongoose7 from "mongoose";
@@ -524,7 +518,7 @@ var TesterSchema = new MongooseSchema7(
524
518
  timestamps: true
525
519
  }
526
520
  );
527
- var TesterModel = mongoose7.model("Tester", TesterSchema);
521
+ var TesterModel = mongoose7.models.Tester || mongoose7.model("Tester", TesterSchema);
528
522
 
529
523
  // src/mongoose/User.ts
530
524
  import mongoose8 from "mongoose";
@@ -624,7 +618,7 @@ var schema4 = new MongooseSchema8(
624
618
  { timestamps: true }
625
619
  );
626
620
  schema4.index({ "partners.email": 1 });
627
- var UserModel = mongoose8.model("User", schema4);
621
+ var UserModel = mongoose8.models.User || mongoose8.model("User", schema4);
628
622
 
629
623
  // src/mongoose/VerificationToken.ts
630
624
  import mongoose9 from "mongoose";
@@ -644,10 +638,7 @@ var schema5 = new MongooseSchema9(
644
638
  },
645
639
  { timestamps: true }
646
640
  );
647
- var VerificationTokenModel = mongoose9.model(
648
- "VerificationToken",
649
- schema5
650
- );
641
+ var VerificationTokenModel = mongoose9.models.VerificationToken || mongoose9.model("VerificationToken", schema5);
651
642
 
652
643
  // src/mongoose/vendor/Vendor.ts
653
644
  import mongoose10 from "mongoose";
@@ -721,7 +712,7 @@ schema6.index({ description: 1 });
721
712
  schema6.index({ region: 1 });
722
713
  schema6.index({ "categories.name": 1 });
723
714
  schema6.index({ "partners.email": 1 });
724
- var VendorModel = mongoose10.model("Vendor", schema6);
715
+ var VendorModel = mongoose10.models.Vendor || mongoose10.model("Vendor", schema6);
725
716
 
726
717
  // src/mongoose/vendor/VendorInfo.ts
727
718
  import mongoose11 from "mongoose";
@@ -772,10 +763,7 @@ var schema7 = new MongooseSchema11(
772
763
  },
773
764
  { timestamps: true }
774
765
  );
775
- var VendorInfoModel = mongoose11.model(
776
- "VendorInfo",
777
- schema7
778
- );
766
+ var VendorInfoModel = mongoose11.models.VendorInfo || mongoose11.model("VendorInfo", schema7);
779
767
 
780
768
  // src/mongoose/event/Event.ts
781
769
  import mongoose12 from "mongoose";
@@ -845,7 +833,7 @@ schema8.index({ region: 1 });
845
833
  schema8.index({ location: "2dsphere" });
846
834
  schema8.index({ tags: 1 });
847
835
  schema8.index({ "partners.email": 1 });
848
- var EventModel = mongoose12.model("Event", schema8);
836
+ var EventModel = mongoose12.models.Event || mongoose12.model("Event", schema8);
849
837
  export {
850
838
  AdModel,
851
839
  CategorySchema,