@timardex/cluemart-shared 1.5.739 → 1.5.741

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 (52) hide show
  1. package/dist/{post-DmsQS24-.d.ts → ad-CqfSmtG_.d.ts} +2 -168
  2. package/dist/{post-C3-IUdTA.d.mts → ad-sgD-lSbO.d.mts} +2 -168
  3. package/dist/{chunk-XWOFIZ5F.mjs → chunk-7JDAKGGH.mjs} +8 -8
  4. package/dist/chunk-7JDAKGGH.mjs.map +1 -0
  5. package/dist/{chunk-5SCGH7UX.mjs → chunk-7VNXO63T.mjs} +108 -6
  6. package/dist/chunk-7VNXO63T.mjs.map +1 -0
  7. package/dist/{chunk-6IEQBYEB.mjs → chunk-L5BYCXXP.mjs} +2 -2
  8. package/dist/{chunk-HGS6TJTA.mjs → chunk-VPYYAF3L.mjs} +131 -113
  9. package/dist/chunk-VPYYAF3L.mjs.map +1 -0
  10. package/dist/formFields/index.cjs +44 -4
  11. package/dist/formFields/index.cjs.map +1 -1
  12. package/dist/formFields/index.mjs +3 -3
  13. package/dist/graphql/index.d.mts +2 -2
  14. package/dist/graphql/index.d.ts +2 -2
  15. package/dist/hooks/index.cjs +79 -66
  16. package/dist/hooks/index.cjs.map +1 -1
  17. package/dist/hooks/index.d.mts +2 -2
  18. package/dist/hooks/index.d.ts +2 -2
  19. package/dist/hooks/index.mjs +11 -12
  20. package/dist/hooks/index.mjs.map +1 -1
  21. package/dist/index.cjs +225 -206
  22. package/dist/index.cjs.map +1 -1
  23. package/dist/index.d.mts +11 -6
  24. package/dist/index.d.ts +11 -6
  25. package/dist/index.mjs +223 -206
  26. package/dist/index.mjs.map +1 -1
  27. package/dist/post-CdLrXuH1.d.mts +279 -0
  28. package/dist/post-D6n4Vszs.d.ts +279 -0
  29. package/dist/sharing/index.cjs +103 -63
  30. package/dist/sharing/index.cjs.map +1 -1
  31. package/dist/sharing/index.d.mts +2 -2
  32. package/dist/sharing/index.d.ts +2 -2
  33. package/dist/sharing/index.mjs +3 -3
  34. package/dist/types/index.cjs +3 -3
  35. package/dist/types/index.cjs.map +1 -1
  36. package/dist/types/index.d.mts +2 -2
  37. package/dist/types/index.d.ts +2 -2
  38. package/dist/types/index.mjs +2 -4
  39. package/dist/utils/index.cjs +179 -135
  40. package/dist/utils/index.cjs.map +1 -1
  41. package/dist/utils/index.d.mts +7 -2
  42. package/dist/utils/index.d.ts +7 -2
  43. package/dist/utils/index.mjs +6 -2
  44. package/package.json +1 -1
  45. package/dist/chunk-5SCGH7UX.mjs.map +0 -1
  46. package/dist/chunk-HGS6TJTA.mjs.map +0 -1
  47. package/dist/chunk-HV5AID7P.mjs +0 -105
  48. package/dist/chunk-HV5AID7P.mjs.map +0 -1
  49. package/dist/chunk-XWOFIZ5F.mjs.map +0 -1
  50. package/dist/dailyClue-CvhLv9hJ.d.mts +0 -111
  51. package/dist/dailyClue-CvhLv9hJ.d.ts +0 -111
  52. /package/dist/{chunk-6IEQBYEB.mjs.map → chunk-L5BYCXXP.mjs.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/types/index.ts","../../src/types/auth.ts","../../src/types/global.ts","../../src/types/ad.ts","../../src/types/resourceActivities.ts","../../src/types/post.ts","../../src/types/game/index.ts","../../src/types/game/dailyClue.ts","../../src/types/game/global.ts","../../src/types/subscription.ts"],"sourcesContent":["export * from \"./admin\";\nexport * from \"./auth\";\nexport * from \"./chat\";\nexport * from \"./contactUs\";\nexport * from \"./global\";\nexport * from \"./event\";\nexport * from \"./notification\";\nexport * from \"./poster\";\nexport * from \"./relation\";\nexport * from \"./vendor\";\nexport * from \"./user\";\nexport * from \"./ad\";\nexport * from \"./resourceActivities\";\nexport * from \"./partner\";\nexport * from \"./post\";\nexport * from \"./pushToken\";\nexport * from \"./appSettings\";\nexport * from \"./googleImportedMarket\";\nexport * from \"./game\";\nexport * from \"./game/dailyClue\";\nexport * from \"./game/global\";\nexport * from \"./game/puzzleGame\";\nexport * from \"./school\";\nexport * from \"./subscription\";\n","import {\n CreateFormData,\n EnumOSPlatform,\n PromoCodeType,\n TermsAgreement,\n} from \"src\";\n\nimport { SafeUserType } from \"./user\";\n\nexport enum EnumVerificationType {\n REGISTER = \"register\",\n RESET_PASSWORD = \"resetPassword\",\n}\n\nexport type LoginFormData = {\n email: string;\n isAdminPage?: boolean;\n password: string;\n platform?: EnumOSPlatform;\n};\n\nexport type CreateLoginFormData = CreateFormData<LoginFormData>;\n\nexport type RegisterFormData = {\n email: string;\n firstName: string;\n lastName: string;\n password: string;\n platform?: EnumOSPlatform;\n preferredRegion: string;\n promoCode?: PromoCodeType | null;\n termsAgreement?: TermsAgreement | null;\n};\n\nexport type CreateRegisterFormData = CreateFormData<RegisterFormData>;\n\nexport type RequestPasswordResetFormData = {\n email: string;\n};\n\nexport type CreateRequestPasswordResetFormData =\n CreateFormData<RequestPasswordResetFormData>;\n\nexport type ResetPasswordFormData = {\n confirmPassword: string;\n email: string;\n password: string;\n};\n\nexport type CreateResetPasswordFormData = CreateFormData<ResetPasswordFormData>;\n\nexport type ValidateVerificationTokenFormData = {\n email: string;\n verificationToken: string;\n verificationType?: EnumVerificationType;\n};\n\nexport type CreateValidateVerificationTokenFormData =\n CreateFormData<ValidateVerificationTokenFormData>;\n\nexport type AuthPayloadType = {\n message: string;\n token: string;\n refreshToken: string | null;\n user: SafeUserType;\n};\n\nexport type RefreshTokenPayloadType = {\n refreshToken: string;\n token: string;\n};\n","import {\n Control,\n FieldValues,\n FormState,\n UseFormGetValues,\n UseFormHandleSubmit,\n UseFormReset,\n UseFormSetValue,\n UseFormWatch,\n} from \"react-hook-form\";\n\nimport {\n EnumEventDateStatus,\n EnumEventType,\n EnumResourceType,\n EnumSocialMedia,\n EnumUserLicence,\n} from \"../enums\";\n\nimport { EventListItemType } from \"./event\";\nimport { VendorType } from \"./vendor\";\n\nexport const PROMO_CODE_PREFIX = \"CM-\";\n\nexport type PromoCodeType = `${typeof PROMO_CODE_PREFIX}${string}`;\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 active?: boolean | null;\n source: string;\n title: string;\n};\n\nexport type SocialMediaType = {\n name?: EnumSocialMedia;\n link?: string;\n};\n\nexport type UserLicenceType = {\n expiryDate: Date;\n issuedDate: Date;\n licenceType: EnumUserLicence;\n prevLicenceType?: EnumUserLicence | null;\n};\n\nexport type AssociateType = {\n email: string;\n resourceId: string;\n resourceType: EnumResourceType;\n licence: UserLicenceType;\n};\n\nexport type OwnerType = {\n email: string;\n userId: string;\n};\n\nexport interface BaseResourceTypeFormData {\n _id?: string;\n active: boolean;\n associates: AssociateType[] | null;\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 promoCodes?: PromoCodeType[] | 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\"\n> & {\n _id: string;\n adIds?: string[] | null;\n createdAt: Date;\n deletedAt: Date | null;\n posterUsage?: PosterUsageType | null;\n rating?: number | null;\n reviewCount?: number | null;\n updatedAt: Date | null;\n};\n\nexport type LocationGeoType = {\n coordinates: number[]; // [longitude, latitude]\n type: \"Point\"; // Mongoose GeoJSON type\n};\n\nexport type LocationType = {\n city: string;\n country: string;\n fullAddress: string;\n geo: LocationGeoType;\n latitude: number;\n longitude: number;\n region: string;\n};\n\nexport type DateTimeType = {\n dateStatus: EnumEventDateStatus;\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 ResourceDetails = {\n dateTime: DateTimeType[] | null;\n description: string | null;\n eventStatus?: EventStatusType | null;\n location: LocationType | null;\n resourceCover: ResourceImageType | null;\n resourceId: string;\n resourceLogo: ResourceImageType | null;\n resourceName: string;\n resourceType: EnumResourceType;\n};\n\nexport type GeocodeLocation = Pick<LocationType, \"latitude\" | \"longitude\">;\n\nexport type EventStatusType = {\n claimed: boolean;\n eventType: EnumEventType;\n googlePlaceId?: string | null;\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 required?: boolean;\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: EventListItemType[] | null;\n vendors: VendorType[] | null;\n}\n\nexport interface CreateFormData<T extends FieldValues> {\n control: Control<T, any>;\n fields: T;\n formState: FormState<T>;\n handleSubmit: UseFormHandleSubmit<T, any>;\n reset: UseFormReset<T>;\n setValue: UseFormSetValue<T>;\n watch: UseFormWatch<T>;\n getValues: UseFormGetValues<T>;\n}\n\nexport interface UseGetResourcesByRegionOptions {\n onlyClaimed?: boolean;\n limit?: number;\n offset?: number;\n}\n","import { EnumResourceType } from \"src/enums\";\n\nimport { CreateFormData } from \"./global\";\n\nexport enum EnumAdShowOn {\n EVENTS_PAGE = \"Events_page\",\n FRONT_PAGE = \"Front_page\",\n PARTNERS_PAGE = \"Partners_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 type AdResource = {\n adDescription: string;\n adImage: string;\n adStyle: EnumAdStyle;\n adTitle: string;\n adType: EnumAdType;\n resourceId: string;\n resourceName: string;\n resourceRegion: string;\n resourceType: EnumResourceType;\n};\n\nexport interface AdFormData {\n active: boolean;\n end: Date; // ISO date string\n resource: AdResource;\n showOn: EnumAdShowOn[];\n start?: Date; // ISO date string\n status: EnumAdStatus;\n targetRegion: string[];\n}\n\n// Form state matches the validation schema: all resource fields are present.\n// Use empty strings / explicit enum defaults in `defaultValues` for \"create\" flows.\nexport type AdFormState = AdFormData;\n\nexport type CreateAdFormData = CreateFormData<AdFormData>;\nexport type CreateAdFormState = CreateFormData<AdFormState>;\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 | null;\n}\n","import {\n EnumEventDateStatus,\n EnumOSPlatform,\n EnumResourceType,\n} from \"src/enums\";\n\nimport { LocationGeoType } from \"./global\";\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: LocationGeoType | null;\n dateStatus?: EnumEventDateStatus | 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: EnumResourceType;\n activity: Omit<ResourceActivityEntry, \"timestamp\">;\n};\n","import { EnumResourceType } from \"src/enums\";\n\nimport { BaseGameType } from \"./game\";\nimport { CreateFormData, ResourceImageType } from \"./global\";\n\nexport enum EnumPostType {\n DAILY_MEETS = \"daily_meets\",\n DAILY_TIPS = \"daily_tips\",\n DAILY_GAMES = \"daily_games\",\n}\n\nexport enum EnumPostContentType {\n GAME = \"game\",\n IMAGE = \"image\",\n LIST = \"list\",\n TEXTAREA = \"textarea\",\n VIDEO = \"video\",\n}\n\nexport type PostFileInput = {\n source: File;\n title?: string;\n};\n\nexport type PostContentTextarea = {\n textarea: {\n title?: string;\n data: string;\n };\n};\n\nexport type PostContentImage = {\n images: ResourceImageType[] | null;\n imagesUpload?: PostFileInput[] | null;\n};\n\nexport type PostContentVideo = {\n video: {\n source: string;\n title?: string;\n };\n};\n\nexport type PostContentList = {\n list: {\n title?: string;\n items: {\n text: string;\n }[];\n };\n};\n\nexport type PostContentGame = {\n game: BaseGameType;\n};\n\nexport type PostContentData =\n | PostContentGame\n | PostContentTextarea\n | PostContentImage\n | PostContentVideo\n | PostContentList;\n\nexport type PostContentFormData = {\n contentData?: PostContentData | null;\n contentOrder?: number | null;\n contentType?: EnumPostContentType | null;\n};\n\nexport interface PostFormData {\n active: boolean;\n caption: string;\n content: PostContentFormData[];\n cover?: ResourceImageType | null;\n coverUpload?: PostFileInput | null;\n postType: EnumPostType;\n resource?: {\n resourceId: string;\n resourceType: EnumResourceType;\n resourceRegion: string;\n } | null;\n tags?: string[] | null;\n title: string;\n notifyUsers?: boolean | null;\n}\n\nexport type CreatePostFormData = CreateFormData<PostFormData>;\n\nexport type PostContentType = Omit<PostContentFormData, \"contentData\"> & {\n contentData: Omit<PostContentData, \"imagesUpload\">;\n};\n\nexport type PostType = Omit<PostFormData, \"content\" | \"coverUpload\"> & {\n _id: string;\n content: PostContentType[];\n createdAt: Date;\n deletedAt: Date | null;\n updatedAt: Date | null;\n};\n","import { OwnerType } from \"../global\";\n\nimport { DailyClueBaseGame, DailyClueGameData } from \"./dailyClue\";\nimport { EnumGameType, GameDate } from \"./global\";\nimport { PuzzleBaseGame, PuzzleGameData } from \"./puzzleGame\";\n\nexport type BaseGameMap = {\n [EnumGameType.DAILY_CLUE]: DailyClueBaseGame;\n [EnumGameType.MINI_QUIZ]: PuzzleBaseGame;\n [EnumGameType.ODD_ONE_OUT]: PuzzleBaseGame;\n};\n\nexport type BaseGameType = {\n gameType: EnumGameType;\n gameTypeId: string;\n gameTitle: string;\n} & {\n [K in keyof BaseGameMap]?: BaseGameMap[K] | null;\n};\n\nexport enum EnumGameStatus {\n GAME_COMPLETED = \"GAME_COMPLETED\",\n GAME_IN_PROGRESS = \"GAME_IN_PROGRESS\",\n GAME_LEFT = \"GAME_LEFT\",\n GAME_STARTED = \"GAME_STARTED\",\n}\n\nexport type GameHistory = Pick<\n BaseGameType,\n \"gameTitle\" | \"gameType\" | \"gameTypeId\"\n> & {\n createdAt: Date;\n gameDate: GameDate;\n gameStatus: EnumGameStatus;\n /** Per-event delta. Not persisted for overallGamePoints (computed at read time). */\n pointsEarned: number;\n /** Running total for this game instance; computed at read time, not stored in Mongo. */\n overallGamePoints?: number;\n};\n\ntype GameDataMap = {\n [EnumGameType.DAILY_CLUE]: DailyClueGameData;\n [EnumGameType.MINI_QUIZ]: PuzzleGameData;\n [EnumGameType.ODD_ONE_OUT]: PuzzleGameData;\n};\ntype GameDataType = {\n [K in keyof GameDataMap]?: GameDataMap[K] | null;\n};\n\nexport type GameType = Pick<\n BaseGameType,\n \"gameTitle\" | \"gameType\" | \"gameTypeId\"\n> & {\n _id: string;\n active: boolean;\n createdAt: Date;\n gameData: GameDataType;\n gameHistory: GameHistory[] | null;\n updatedAt: Date | null;\n};\n\nexport type GameDocType = {\n _id: string;\n active: boolean;\n createdAt: Date;\n deletedAt: Date | null;\n games: GameType[] | null;\n owner: OwnerType;\n points: number;\n updatedAt: Date | null;\n};\n\nexport type GameLeaderboard = {\n gameHistory: GameHistory[] | null;\n overallPoints: number;\n owner: OwnerType;\n};\n","import { GameDate, GlobalGameData } from \"./global\";\n\nconst OBJECT_ID_PATH_SEGMENT = \"[a-f0-9]{24}\";\nconst OBJECT_ID_PATH_SEGMENT_END = `${OBJECT_ID_PATH_SEGMENT}$`;\n\nexport const gameScreenIdentifierList = [\n {\n clue: \"Where your actions turn into a timeline.\",\n id: \"activities\",\n match: \"/profile/activities\",\n },\n {\n clue: \"Where conversations happen without speaking.\",\n id: \"chat\",\n match: \"/profile/chat\",\n },\n {\n clue: \"The place to redefine who you are.\",\n id: \"edit-profile\",\n match: \"/profile/edit-profile\",\n },\n {\n clue: \"A single moment worth showing up for.\",\n id: \"single-event\",\n match: new RegExp(`^/events/${OBJECT_ID_PATH_SEGMENT_END}`),\n },\n {\n clue: \"What’s happening around you, right now.\",\n id: \"events-near-me\",\n match: \"/events/events-near-me\",\n },\n {\n clue: \"Where events appear as pins on a map.\",\n id: \"events-map\",\n match: \"/events/events-map\",\n },\n {\n clue: \"A collection of events worth attending.\",\n id: \"events\",\n match: \"/events\",\n },\n {\n clue: \"What’s happening in a wider area — not just nearby.\",\n id: \"events-region\",\n match: /^\\/events\\/region\\/[^/]+$/,\n },\n {\n clue: \"Where fun becomes a challenge.\",\n id: \"games\",\n match: \"/games\",\n },\n {\n clue: \"Your starting point for everything.\",\n id: \"home\",\n match: \"/\",\n },\n {\n clue: \"Where the app whispers what you shouldn’t miss.\",\n id: \"notifications\",\n match: \"/notifications\",\n },\n {\n clue: \"Where you fine-tune your experience.\",\n id: \"options\",\n match: \"/options\",\n },\n {\n clue: \"An organisation or creator supporting the community.\",\n id: \"single-partner\",\n match: new RegExp(`^/partners/${OBJECT_ID_PATH_SEGMENT_END}`),\n },\n {\n clue: \"Organisations and creators supporting the community.\",\n id: \"partners\",\n match: \"/partners\",\n },\n {\n clue: \"A single published post in full view.\",\n id: \"single-visitor-post\",\n match: new RegExp(`^/visitors/post/${OBJECT_ID_PATH_SEGMENT_END}`),\n },\n {\n clue: \"Your identity, on display.\",\n id: \"profile\",\n match: \"/profile\",\n },\n {\n clue: \"One stallholder offering something valuable.\",\n id: \"single-vendor\",\n match: new RegExp(`^/vendors/${OBJECT_ID_PATH_SEGMENT_END}`),\n },\n {\n clue: \"Where every stallholder waits under the right category.\",\n id: \"vendors\",\n match: \"/vendors\",\n },\n {\n clue: \"Where you browse articles and posts from around the platform.\",\n id: \"visitors\",\n match: \"/visitors\",\n },\n] as const;\n\nexport type GamePlacement = (typeof gameScreenIdentifierList)[number][\"id\"];\nexport type GamePlacementClue =\n (typeof gameScreenIdentifierList)[number][\"clue\"];\n\nexport type DailyClueBaseGame = {\n gameDate: GameDate;\n gameSolution: string;\n};\n\nexport type DailyClueGameData = GlobalGameData & {\n gameFields: DailyClueBaseGame;\n lastFoundDate: Date | null;\n letterInfo: {\n collected: string[] | null; // The letters the user has found, e.g. [\"C\", \"L\", \"U\"]\n solutionShuffled: string[]; // The letters of the solution, but shuffled, e.g. [\"L\", \"C\", \"U\"]\n todaysClue: GamePlacementClue | null; // The clue for user to find the letter, e.g. related to {todaysPlacement}\n todaysLetter: string | null; // The letter the user has to find today, e.g. \"C\"\n todaysPlacement: GamePlacement | null; // The screen where the user has to find the clue, e.g. \"HomeScreen\"\n };\n};\n","export enum EnumGameType {\n DAILY_CLUE = \"dailyClue\",\n MINI_QUIZ = \"miniQuiz\",\n ODD_ONE_OUT = \"oddOneOut\",\n}\n\nexport type GameDate = {\n startDate: Date;\n endDate: Date;\n};\n\nexport const gameTypeToDisplayName: Record<EnumGameType, string> = {\n [EnumGameType.DAILY_CLUE]: \"Daily Clue\",\n [EnumGameType.MINI_QUIZ]: \"Mini Quiz\",\n [EnumGameType.ODD_ONE_OUT]: \"Odd One Out\",\n};\n\nexport type GlobalGameData = {\n points: number;\n // User has found the clue 3 days in a row, this is incrementing if the user finds the clue and decrements if user misses a day\n streak: number;\n};\n","import { EnumUserLicence } from \"../enums\";\n\n/** Tier keys in descending priority (highest first) for licence resolution. */\nexport const TIERS_BY_PRIORITY = [\"pro_plus\", \"pro\", \"standard\"] as const;\n\n/** Canonical subscription tier keys — matches Stripe/server tier identifiers. */\nexport type Tier = (typeof TIERS_BY_PRIORITY)[number];\n\n/** User-facing tier labels (decoupled from the Tier discriminant). */\nexport const TIER_DISPLAY_LABELS: Record<Tier, string> = {\n pro: \"Pro\",\n // eslint-disable-next-line camelcase\n pro_plus: \"Pro+ Ads\",\n standard: \"Standard\",\n};\n\n/** Maps licence enums to their canonical tier key. */\nexport const TIER_FROM_LICENCE: Record<EnumUserLicence, Tier> = {\n [EnumUserLicence.PRO_EVENT]: \"pro\",\n [EnumUserLicence.PRO_PLUS_EVENT]: \"pro_plus\",\n [EnumUserLicence.PRO_PLUS_VENDOR]: \"pro_plus\",\n [EnumUserLicence.PRO_VENDOR]: \"pro\",\n [EnumUserLicence.STANDARD_EVENT]: \"standard\",\n [EnumUserLicence.STANDARD_PARTNER]: \"standard\",\n [EnumUserLicence.STANDARD_VENDOR]: \"standard\",\n};\n"],"mappings":"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","names":["EnumVerificationType","EnumAdShowOn","EnumAdStatus","EnumAdType","EnumAdStyle","EnumActivity","EnumPostType","EnumPostContentType","EnumGameStatus","EnumGameType"]}
1
+ {"version":3,"sources":["../../src/types/index.ts","../../src/types/auth.ts","../../src/types/global.ts","../../src/types/ad.ts","../../src/types/resourceActivities.ts","../../src/types/post.ts","../../src/types/game/index.ts","../../src/types/game/dailyClue.ts","../../src/types/game/global.ts","../../src/types/subscription.ts"],"sourcesContent":["export * from \"./admin\";\nexport * from \"./auth\";\nexport * from \"./chat\";\nexport * from \"./contactUs\";\nexport * from \"./global\";\nexport * from \"./event\";\nexport * from \"./notification\";\nexport * from \"./poster\";\nexport * from \"./relation\";\nexport * from \"./vendor\";\nexport * from \"./user\";\nexport * from \"./ad\";\nexport * from \"./resourceActivities\";\nexport * from \"./partner\";\nexport * from \"./post\";\nexport * from \"./pushToken\";\nexport * from \"./appSettings\";\nexport * from \"./googleImportedMarket\";\nexport * from \"./game\";\nexport * from \"./game/dailyClue\";\nexport * from \"./game/global\";\nexport * from \"./game/puzzleGame\";\nexport * from \"./school\";\nexport * from \"./subscription\";\n","import {\n CreateFormData,\n EnumOSPlatform,\n PromoCodeType,\n TermsAgreement,\n} from \"src\";\n\nimport { SafeUserType } from \"./user\";\n\nexport enum EnumVerificationType {\n REGISTER = \"register\",\n RESET_PASSWORD = \"resetPassword\",\n}\n\nexport type LoginFormData = {\n email: string;\n isAdminPage?: boolean;\n password: string;\n platform?: EnumOSPlatform;\n};\n\nexport type CreateLoginFormData = CreateFormData<LoginFormData>;\n\nexport type RegisterFormData = {\n email: string;\n firstName: string;\n lastName: string;\n password: string;\n platform?: EnumOSPlatform;\n preferredRegion: string;\n promoCode?: PromoCodeType | null;\n termsAgreement?: TermsAgreement | null;\n};\n\nexport type CreateRegisterFormData = CreateFormData<RegisterFormData>;\n\nexport type RequestPasswordResetFormData = {\n email: string;\n};\n\nexport type CreateRequestPasswordResetFormData =\n CreateFormData<RequestPasswordResetFormData>;\n\nexport type ResetPasswordFormData = {\n confirmPassword: string;\n email: string;\n password: string;\n};\n\nexport type CreateResetPasswordFormData = CreateFormData<ResetPasswordFormData>;\n\nexport type ValidateVerificationTokenFormData = {\n email: string;\n verificationToken: string;\n verificationType?: EnumVerificationType;\n};\n\nexport type CreateValidateVerificationTokenFormData =\n CreateFormData<ValidateVerificationTokenFormData>;\n\nexport type AuthPayloadType = {\n message: string;\n token: string;\n refreshToken: string | null;\n user: SafeUserType;\n};\n\nexport type RefreshTokenPayloadType = {\n refreshToken: string;\n token: string;\n};\n","import {\n Control,\n FieldValues,\n FormState,\n UseFormGetValues,\n UseFormHandleSubmit,\n UseFormReset,\n UseFormSetValue,\n UseFormWatch,\n} from \"react-hook-form\";\n\nimport {\n EnumEventDateStatus,\n EnumEventType,\n EnumResourceType,\n EnumSocialMedia,\n EnumUserLicence,\n} from \"../enums\";\n\nimport { EventListItemType } from \"./event\";\nimport { VendorType } from \"./vendor\";\n\nexport const PROMO_CODE_PREFIX = \"CM-\";\n\nexport type PromoCodeType = `${typeof PROMO_CODE_PREFIX}${string}`;\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 active?: boolean | null;\n source: string;\n title: string;\n};\n\nexport type SocialMediaType = {\n name?: EnumSocialMedia;\n link?: string;\n};\n\nexport type UserLicenceType = {\n expiryDate: Date;\n issuedDate: Date;\n licenceType: EnumUserLicence;\n prevLicenceType?: EnumUserLicence | null;\n};\n\nexport type AssociateType = {\n email: string;\n resourceId: string;\n resourceType: EnumResourceType;\n licence: UserLicenceType;\n};\n\nexport type OwnerType = {\n email: string;\n userId: string;\n};\n\nexport interface BaseResourceTypeFormData {\n _id?: string;\n active: boolean;\n associates: AssociateType[] | null;\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 promoCodes?: PromoCodeType[] | 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\"\n> & {\n _id: string;\n adIds?: string[] | null;\n createdAt: Date;\n deletedAt: Date | null;\n posterUsage?: PosterUsageType | null;\n rating?: number | null;\n reviewCount?: number | null;\n updatedAt: Date | null;\n};\n\nexport type LocationGeoType = {\n coordinates: number[]; // [longitude, latitude]\n type: \"Point\"; // Mongoose GeoJSON type\n};\n\nexport type LocationType = {\n city: string;\n country: string;\n fullAddress: string;\n geo: LocationGeoType;\n latitude: number;\n longitude: number;\n region: string;\n};\n\nexport type DateTimeType = {\n dateStatus: EnumEventDateStatus;\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 ResourceDetails = {\n dateTime: DateTimeType[] | null;\n description: string | null;\n eventStatus?: EventStatusType | null;\n location: LocationType | null;\n resourceCover: ResourceImageType | null;\n resourceId: string;\n resourceLogo: ResourceImageType | null;\n resourceName: string;\n resourceType: EnumResourceType;\n};\n\nexport type GeocodeLocation = Pick<LocationType, \"latitude\" | \"longitude\">;\n\nexport type EventStatusType = {\n claimed: boolean;\n eventType: EnumEventType;\n googlePlaceId?: string | null;\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 required?: boolean;\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: EventListItemType[] | null;\n vendors: VendorType[] | null;\n}\n\nexport interface CreateFormData<T extends FieldValues> {\n control: Control<T, any>;\n fields: T;\n formState: FormState<T>;\n handleSubmit: UseFormHandleSubmit<T, any>;\n reset: UseFormReset<T>;\n setValue: UseFormSetValue<T>;\n watch: UseFormWatch<T>;\n getValues: UseFormGetValues<T>;\n}\n\nexport interface UseGetResourcesByRegionOptions {\n onlyClaimed?: boolean;\n limit?: number;\n offset?: number;\n}\n","import { EnumResourceType } from \"src/enums\";\n\nimport { CreateFormData } from \"./global\";\n\nexport enum EnumAdShowOn {\n EVENTS_PAGE = \"Events_page\",\n FRONT_PAGE = \"Front_page\",\n PARTNERS_PAGE = \"Partners_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 type AdResource = {\n adDescription: string;\n adImage: string;\n adStyle: EnumAdStyle;\n adTitle: string;\n adType: EnumAdType;\n resourceId: string;\n resourceName: string;\n resourceRegion: string;\n resourceType: EnumResourceType;\n};\n\nexport interface AdFormData {\n active: boolean;\n end: Date; // ISO date string\n resource: AdResource;\n showOn: EnumAdShowOn[];\n start?: Date; // ISO date string\n status: EnumAdStatus;\n targetRegion: string[];\n}\n\n// Form state matches the validation schema: all resource fields are present.\n// Use empty strings / explicit enum defaults in `defaultValues` for \"create\" flows.\nexport type AdFormState = AdFormData;\n\nexport type CreateAdFormData = CreateFormData<AdFormData>;\nexport type CreateAdFormState = CreateFormData<AdFormState>;\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 | null;\n}\n","import {\n EnumEventDateStatus,\n EnumOSPlatform,\n EnumResourceType,\n} from \"src/enums\";\n\nimport { LocationGeoType } from \"./global\";\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: LocationGeoType | null;\n dateStatus?: EnumEventDateStatus | 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: EnumResourceType;\n activity: Omit<ResourceActivityEntry, \"timestamp\">;\n};\n","import { EnumResourceType } from \"src/enums\";\n\nimport { BaseGameType } from \"./game\";\nimport { CreateFormData, ResourceImageType } from \"./global\";\n\nexport enum EnumPostType {\n MARKET_FACES = \"market_faces\",\n CLUE_BITES = \"clue_bites\",\n PLAY_AND_WIN = \"play_and_win\",\n}\n\nexport enum EnumPostContentType {\n GAME = \"game\",\n IMAGE = \"image\",\n LIST = \"list\",\n TEXTAREA = \"textarea\",\n VIDEO = \"video\",\n}\n\nexport type PostFileInput = {\n source: File;\n title?: string;\n};\n\nexport type PostContentTextarea = {\n textarea: {\n title?: string;\n data: string;\n };\n};\n\nexport type PostContentImage = {\n images: ResourceImageType[] | null;\n imagesUpload?: PostFileInput[] | null;\n};\n\nexport type PostContentVideo = {\n video: {\n source: string;\n title?: string;\n };\n};\n\nexport type PostContentList = {\n list: {\n title?: string;\n items: {\n text: string;\n }[];\n };\n};\n\nexport type PostContentGame = {\n game: BaseGameType;\n};\n\nexport type PostContentData =\n | PostContentGame\n | PostContentTextarea\n | PostContentImage\n | PostContentVideo\n | PostContentList;\n\nexport type PostContentFormData = {\n contentData?: PostContentData | null;\n contentOrder?: number | null;\n contentType?: EnumPostContentType | null;\n};\n\nexport interface PostFormData {\n active: boolean;\n caption: string;\n content: PostContentFormData[];\n cover?: ResourceImageType | null;\n coverUpload?: PostFileInput | null;\n postType: EnumPostType;\n resource?: {\n resourceId: string;\n resourceType: EnumResourceType;\n resourceRegion: string;\n } | null;\n tags?: string[] | null;\n title: string;\n notifyUsers?: boolean | null;\n}\n\nexport type CreatePostFormData = CreateFormData<PostFormData>;\n\nexport type PostContentType = Omit<PostContentFormData, \"contentData\"> & {\n contentData: Omit<PostContentData, \"imagesUpload\">;\n};\n\nexport type PostType = Omit<PostFormData, \"content\" | \"coverUpload\"> & {\n _id: string;\n content: PostContentType[];\n createdAt: Date;\n deletedAt: Date | null;\n updatedAt: Date | null;\n};\n","import { OwnerType } from \"../global\";\n\nimport { DailyClueBaseGame, DailyClueGameData } from \"./dailyClue\";\nimport { EnumGameType, GameDate } from \"./global\";\nimport { PuzzleBaseGame, PuzzleGameData } from \"./puzzleGame\";\n\nexport type BaseGameMap = {\n [EnumGameType.DAILY_CLUE]: DailyClueBaseGame;\n [EnumGameType.MINI_QUIZ]: PuzzleBaseGame;\n [EnumGameType.ODD_ONE_OUT]: PuzzleBaseGame;\n};\n\nexport type BaseGameType = {\n gameType: EnumGameType;\n gameTypeId: string;\n gameTitle: string;\n} & {\n [K in keyof BaseGameMap]?: BaseGameMap[K] | null;\n};\n\nexport enum EnumGameStatus {\n GAME_COMPLETED = \"GAME_COMPLETED\",\n GAME_IN_PROGRESS = \"GAME_IN_PROGRESS\",\n GAME_LEFT = \"GAME_LEFT\",\n GAME_STARTED = \"GAME_STARTED\",\n}\n\nexport type GameHistory = Pick<\n BaseGameType,\n \"gameTitle\" | \"gameType\" | \"gameTypeId\"\n> & {\n createdAt: Date;\n gameDate: GameDate;\n gameStatus: EnumGameStatus;\n /** Per-event delta. Not persisted for overallGamePoints (computed at read time). */\n pointsEarned: number;\n /** Running total for this game instance; computed at read time, not stored in Mongo. */\n overallGamePoints?: number;\n};\n\ntype GameDataMap = {\n [EnumGameType.DAILY_CLUE]: DailyClueGameData;\n [EnumGameType.MINI_QUIZ]: PuzzleGameData;\n [EnumGameType.ODD_ONE_OUT]: PuzzleGameData;\n};\ntype GameDataType = {\n [K in keyof GameDataMap]?: GameDataMap[K] | null;\n};\n\nexport type GameType = Pick<\n BaseGameType,\n \"gameTitle\" | \"gameType\" | \"gameTypeId\"\n> & {\n _id: string;\n active: boolean;\n createdAt: Date;\n gameData: GameDataType;\n gameHistory: GameHistory[] | null;\n updatedAt: Date | null;\n};\n\nexport type GameDocType = {\n _id: string;\n active: boolean;\n createdAt: Date;\n deletedAt: Date | null;\n games: GameType[] | null;\n owner: OwnerType;\n points: number;\n updatedAt: Date | null;\n};\n\nexport type GameLeaderboard = {\n gameHistory: GameHistory[] | null;\n overallPoints: number;\n owner: OwnerType;\n};\n","import { GameDate, GlobalGameData } from \"./global\";\n\nconst OBJECT_ID_PATH_SEGMENT = \"[a-f0-9]{24}\";\nconst OBJECT_ID_PATH_SEGMENT_END = `${OBJECT_ID_PATH_SEGMENT}$`;\n\nexport const gameScreenIdentifierList = [\n {\n clue: \"Where your actions turn into a timeline.\",\n id: \"activities\",\n match: \"/profile/activities\",\n },\n {\n clue: \"Where conversations happen without speaking.\",\n id: \"chat\",\n match: \"/profile/chat\",\n },\n {\n clue: \"The place to redefine who you are.\",\n id: \"edit-profile\",\n match: \"/profile/edit-profile\",\n },\n {\n clue: \"A single moment worth showing up for.\",\n id: \"single-event\",\n match: new RegExp(`^/events/${OBJECT_ID_PATH_SEGMENT_END}`),\n },\n {\n clue: \"What’s happening around you, right now.\",\n id: \"events-near-me\",\n match: \"/events/events-near-me\",\n },\n {\n clue: \"Where events appear as pins on a map.\",\n id: \"events-map\",\n match: \"/events/events-map\",\n },\n {\n clue: \"A collection of events worth attending.\",\n id: \"events\",\n match: \"/events\",\n },\n {\n clue: \"What’s happening in a wider area — not just nearby.\",\n id: \"events-region\",\n match: /^\\/events\\/region\\/[^/]+$/,\n },\n {\n clue: \"Where fun becomes a challenge.\",\n id: \"games\",\n match: \"/games\",\n },\n {\n clue: \"Your starting point for everything.\",\n id: \"home\",\n match: \"/\",\n },\n {\n clue: \"Where the app whispers what you shouldn’t miss.\",\n id: \"notifications\",\n match: \"/notifications\",\n },\n {\n clue: \"Where you fine-tune your experience.\",\n id: \"options\",\n match: \"/options\",\n },\n {\n clue: \"An organisation or creator supporting the community.\",\n id: \"single-partner\",\n match: new RegExp(`^/partners/${OBJECT_ID_PATH_SEGMENT_END}`),\n },\n {\n clue: \"Organisations and creators supporting the community.\",\n id: \"partners\",\n match: \"/partners\",\n },\n {\n clue: \"A single published post in full view.\",\n id: \"single-visitor-post\",\n match: new RegExp(`^/visitors/post/${OBJECT_ID_PATH_SEGMENT_END}`),\n },\n {\n clue: \"Your identity, on display.\",\n id: \"profile\",\n match: \"/profile\",\n },\n {\n clue: \"One stallholder offering something valuable.\",\n id: \"single-vendor\",\n match: new RegExp(`^/vendors/${OBJECT_ID_PATH_SEGMENT_END}`),\n },\n {\n clue: \"Where every stallholder waits under the right category.\",\n id: \"vendors\",\n match: \"/vendors\",\n },\n {\n clue: \"Where you browse articles and posts from around the platform.\",\n id: \"visitors\",\n match: \"/visitors\",\n },\n] as const;\n\nexport type GamePlacement = (typeof gameScreenIdentifierList)[number][\"id\"];\nexport type GamePlacementClue =\n (typeof gameScreenIdentifierList)[number][\"clue\"];\n\nexport type DailyClueBaseGame = {\n gameDate: GameDate;\n gameSolution: string;\n};\n\nexport type DailyClueGameData = GlobalGameData & {\n gameFields: DailyClueBaseGame;\n lastFoundDate: Date | null;\n letterInfo: {\n collected: string[] | null; // The letters the user has found, e.g. [\"C\", \"L\", \"U\"]\n solutionShuffled: string[]; // The letters of the solution, but shuffled, e.g. [\"L\", \"C\", \"U\"]\n todaysClue: GamePlacementClue | null; // The clue for user to find the letter, e.g. related to {todaysPlacement}\n todaysLetter: string | null; // The letter the user has to find today, e.g. \"C\"\n todaysPlacement: GamePlacement | null; // The screen where the user has to find the clue, e.g. \"HomeScreen\"\n };\n};\n","export enum EnumGameType {\n DAILY_CLUE = \"dailyClue\",\n MINI_QUIZ = \"miniQuiz\",\n ODD_ONE_OUT = \"oddOneOut\",\n}\n\nexport type GameDate = {\n startDate: Date;\n endDate: Date;\n};\n\nexport const gameTypeToDisplayName: Record<EnumGameType, string> = {\n [EnumGameType.DAILY_CLUE]: \"Daily Clue\",\n [EnumGameType.MINI_QUIZ]: \"Mini Quiz\",\n [EnumGameType.ODD_ONE_OUT]: \"Odd One Out\",\n};\n\nexport type GlobalGameData = {\n points: number;\n // User has found the clue 3 days in a row, this is incrementing if the user finds the clue and decrements if user misses a day\n streak: number;\n};\n","import { EnumUserLicence } from \"../enums\";\n\n/** Tier keys in descending priority (highest first) for licence resolution. */\nexport const TIERS_BY_PRIORITY = [\"pro_plus\", \"pro\", \"standard\"] as const;\n\n/** Canonical subscription tier keys — matches Stripe/server tier identifiers. */\nexport type Tier = (typeof TIERS_BY_PRIORITY)[number];\n\n/** User-facing tier labels (decoupled from the Tier discriminant). */\nexport const TIER_DISPLAY_LABELS: Record<Tier, string> = {\n pro: \"Pro\",\n // eslint-disable-next-line camelcase\n pro_plus: \"Pro+ Ads\",\n standard: \"Standard\",\n};\n\n/** Maps licence enums to their canonical tier key. */\nexport const TIER_FROM_LICENCE: Record<EnumUserLicence, Tier> = {\n [EnumUserLicence.PRO_EVENT]: \"pro\",\n [EnumUserLicence.PRO_PLUS_EVENT]: \"pro_plus\",\n [EnumUserLicence.PRO_PLUS_VENDOR]: \"pro_plus\",\n [EnumUserLicence.PRO_VENDOR]: \"pro\",\n [EnumUserLicence.STANDARD_EVENT]: \"standard\",\n [EnumUserLicence.STANDARD_PARTNER]: \"standard\",\n [EnumUserLicence.STANDARD_VENDOR]: \"standard\",\n};\n"],"mappings":"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","names":["EnumVerificationType","EnumAdShowOn","EnumAdStatus","EnumAdType","EnumAdStyle","EnumActivity","EnumPostType","EnumPostContentType","EnumGameStatus","EnumGameType"]}
@@ -1,10 +1,10 @@
1
1
  import { EnumResourceType, EnumOSPlatform, EnumUserLicence } from '../enums/index.mjs';
2
- export { r as AdFormData, B as AdFormState, D as AdResource, c as AdType, w as AppSettingsFormData, h as AppSettingsType, A as AuthPayloadType, F as BaseGameMap, H as BaseGameType, I as CreateAdFormData, s as CreateAdFormState, x as CreateAppSettingsFormData, l as CreateLoginFormData, t as CreatePartnerFormData, v as CreatePostFormData, m as CreateRegisterFormData, n as CreateRequestPasswordResetFormData, p as CreateResetPasswordFormData, z as CreateSchoolFormData, C as CreateUserFormData, o as CreateValidateVerificationTokenFormData, J as EnumAdShowOn, E as EnumAdStatus, K as EnumAdStyle, L as EnumAdType, M as EnumGameStatus, N as EnumPostContentType, g as EnumPostType, O as EnumVerificationType, G as GameDocType, Q as GameHistory, i as GameLeaderboard, T as GameType, V as LoginFormData, W as MarketingMaterialRequestInputType, q as PartnerFormData, P as PartnerType, X as PostContentData, Y as PostContentFormData, Z as PostContentGame, _ as PostContentImage, $ as PostContentList, a0 as PostContentTextarea, a1 as PostContentType, a2 as PostContentVideo, a3 as PostFileInput, u as PostFormData, f as PostType, a4 as PosterInputType, a5 as PuzzleAnswer, a6 as PuzzleAnsweredQuestion, a7 as PuzzleBaseGame, a8 as PuzzleGameData, a9 as PuzzleQuestion, aa as RedeemRewardInput, a as RedeemRewardResponse, ab as RedeemedReward, R as RefreshTokenPayloadType, ac as RegisterFormData, ad as RequestPasswordResetFormData, ae as ResetPasswordFormData, b as ResourceByUser, S as SafeUserType, af as SchoolCampaignType, y as SchoolFormData, ag as SchoolRegisteredUserType, j as SchoolReturnType, k as SchoolType, ah as StripeSubscription, ai as SubscriptionPlanData, d as SubscriptionPlansResponse, aj as SubscriptionPricingData, e as SubscriptionStatusData, ak as UserActivity, al as UserActivityEvent, U as UserFormData, am as UserType, an as ValidateVerificationTokenFormData } from '../post-C3-IUdTA.mjs';
2
+ export { o as AdFormData, v as AdFormState, w as AdResource, c as AdType, r as AppSettingsFormData, f as AppSettingsType, A as AuthPayloadType, x as CreateAdFormData, p as CreateAdFormState, s as CreateAppSettingsFormData, i as CreateLoginFormData, q as CreatePartnerFormData, j as CreateRegisterFormData, k as CreateRequestPasswordResetFormData, m as CreateResetPasswordFormData, u as CreateSchoolFormData, C as CreateUserFormData, l as CreateValidateVerificationTokenFormData, y as EnumAdShowOn, E as EnumAdStatus, z as EnumAdStyle, B as EnumAdType, D as EnumVerificationType, L as LoginFormData, M as MarketingMaterialRequestInputType, n as PartnerFormData, P as PartnerType, F as PosterInputType, G as RedeemRewardInput, a as RedeemRewardResponse, H as RedeemedReward, R as RefreshTokenPayloadType, I as RegisterFormData, J as RequestPasswordResetFormData, K as ResetPasswordFormData, b as ResourceByUser, S as SafeUserType, N as SchoolCampaignType, t as SchoolFormData, O as SchoolRegisteredUserType, g as SchoolReturnType, h as SchoolType, Q as StripeSubscription, T as SubscriptionPlanData, d as SubscriptionPlansResponse, V as SubscriptionPricingData, e as SubscriptionStatusData, W as UserActivity, X as UserActivityEvent, U as UserFormData, Y as UserType, Z as ValidateVerificationTokenFormData } from '../ad-sgD-lSbO.mjs';
3
3
  export { c as ChatMessageInput, d as ChatMessageReaction, e as ChatMessageReplyPreview, f as ChatMessageSeen, g as ChatMessageType, C as ChatType, h as CreateBulkNotificationInput, E as EnumActivity, N as NotificationCount, i as NotificationDataType, a as NotificationType, P as ParticipantType, R as ReportChatUser, j as ResourceActivityEntry, k as ResourceActivityInputType, b as ResourceActivityType } from '../resourceActivities-CZqXBve8.mjs';
4
4
  export { C as ContactUsFormData, a as CreateContactUsFormData } from '../contactUs-B6lQQq-x.mjs';
5
5
  import { c as EventListItemType } from '../global-BEUzBSyY.mjs';
6
6
  export { A as AssociateType, t as BaseResourceType, B as BaseResourceTypeFormData, C as Category, q as CreateEventFormData, s as CreateEventInfoFormData, u as CreateFormData, o as CreateUnregisteredVendorFormData, k as CreateVendorFormData, m as CreateVendorInfoFormData, D as DateTimeType, v as DateTimeWithPriceType, w as DeviceInfo, p as EventFormData, r as EventInfoFormData, d as EventInfoType, x as EventStatusType, E as EventType, a as FormDateField, F as FormField, G as GeocodeLocation, I as ImageObjectType, y as LocationGeoType, L as LocationType, N as Nullable, O as OptionItem, z as OwnerType, P as PROMO_CODE_PREFIX, H as PaymentInfoType, J as PosterUsageType, K as PromoCodeType, R as RefundPolicy, M as Region, Q as RelationDate, T as RelationInputType, e as RelationType, b as Requirement, f as ResourceConnectionsType, W as ResourceContactDetailsType, X as ResourceDetails, Y as ResourceImageType, Z as SocialMediaType, S as StallType, _ as Subcategory, $ as SubcategoryItems, a0 as TermsAgreement, n as UnregisteredVendorFormData, a1 as UnregisteredVendorInvitationType, g as UnregisteredVendorType, U as UseGetResourcesByRegionOptions, i as UserLicenceType, a2 as VendorAttributes, a3 as VendorCalendarData, j as VendorFormData, l as VendorInfoFormData, h as VendorInfoType, a4 as VendorProductList, V as VendorType } from '../global-BEUzBSyY.mjs';
7
- export { D as DailyClueBaseGame, a as DailyClueGameData, E as EnumGameType, G as GameDate, b as GamePlacement, c as GamePlacementClue, d as GlobalGameData, g as gameScreenIdentifierList, e as gameTypeToDisplayName } from '../dailyClue-CvhLv9hJ.mjs';
7
+ export { B as BaseGameMap, c as BaseGameType, C as CreatePostFormData, D as DailyClueBaseGame, d as DailyClueGameData, e as EnumGameStatus, f as EnumGameType, g as EnumPostContentType, E as EnumPostType, h as GameDate, G as GameDocType, i as GameHistory, a as GameLeaderboard, j as GamePlacement, k as GamePlacementClue, l as GameType, m as GlobalGameData, n as PostContentData, o as PostContentFormData, p as PostContentGame, q as PostContentImage, r as PostContentList, s as PostContentTextarea, t as PostContentType, u as PostContentVideo, v as PostFileInput, b as PostFormData, P as PostType, w as PuzzleAnswer, x as PuzzleAnsweredQuestion, y as PuzzleBaseGame, z as PuzzleGameData, A as PuzzleQuestion, F as gameScreenIdentifierList, H as gameTypeToDisplayName } from '../post-CdLrXuH1.mjs';
8
8
  import '../images/index.mjs';
9
9
  import 'react-hook-form';
10
10
 
@@ -1,10 +1,10 @@
1
1
  import { EnumResourceType, EnumOSPlatform, EnumUserLicence } from '../enums/index.js';
2
- export { r as AdFormData, B as AdFormState, D as AdResource, c as AdType, w as AppSettingsFormData, h as AppSettingsType, A as AuthPayloadType, F as BaseGameMap, H as BaseGameType, I as CreateAdFormData, s as CreateAdFormState, x as CreateAppSettingsFormData, l as CreateLoginFormData, t as CreatePartnerFormData, v as CreatePostFormData, m as CreateRegisterFormData, n as CreateRequestPasswordResetFormData, p as CreateResetPasswordFormData, z as CreateSchoolFormData, C as CreateUserFormData, o as CreateValidateVerificationTokenFormData, J as EnumAdShowOn, E as EnumAdStatus, K as EnumAdStyle, L as EnumAdType, M as EnumGameStatus, N as EnumPostContentType, g as EnumPostType, O as EnumVerificationType, G as GameDocType, Q as GameHistory, i as GameLeaderboard, T as GameType, V as LoginFormData, W as MarketingMaterialRequestInputType, q as PartnerFormData, P as PartnerType, X as PostContentData, Y as PostContentFormData, Z as PostContentGame, _ as PostContentImage, $ as PostContentList, a0 as PostContentTextarea, a1 as PostContentType, a2 as PostContentVideo, a3 as PostFileInput, u as PostFormData, f as PostType, a4 as PosterInputType, a5 as PuzzleAnswer, a6 as PuzzleAnsweredQuestion, a7 as PuzzleBaseGame, a8 as PuzzleGameData, a9 as PuzzleQuestion, aa as RedeemRewardInput, a as RedeemRewardResponse, ab as RedeemedReward, R as RefreshTokenPayloadType, ac as RegisterFormData, ad as RequestPasswordResetFormData, ae as ResetPasswordFormData, b as ResourceByUser, S as SafeUserType, af as SchoolCampaignType, y as SchoolFormData, ag as SchoolRegisteredUserType, j as SchoolReturnType, k as SchoolType, ah as StripeSubscription, ai as SubscriptionPlanData, d as SubscriptionPlansResponse, aj as SubscriptionPricingData, e as SubscriptionStatusData, ak as UserActivity, al as UserActivityEvent, U as UserFormData, am as UserType, an as ValidateVerificationTokenFormData } from '../post-DmsQS24-.js';
2
+ export { o as AdFormData, v as AdFormState, w as AdResource, c as AdType, r as AppSettingsFormData, f as AppSettingsType, A as AuthPayloadType, x as CreateAdFormData, p as CreateAdFormState, s as CreateAppSettingsFormData, i as CreateLoginFormData, q as CreatePartnerFormData, j as CreateRegisterFormData, k as CreateRequestPasswordResetFormData, m as CreateResetPasswordFormData, u as CreateSchoolFormData, C as CreateUserFormData, l as CreateValidateVerificationTokenFormData, y as EnumAdShowOn, E as EnumAdStatus, z as EnumAdStyle, B as EnumAdType, D as EnumVerificationType, L as LoginFormData, M as MarketingMaterialRequestInputType, n as PartnerFormData, P as PartnerType, F as PosterInputType, G as RedeemRewardInput, a as RedeemRewardResponse, H as RedeemedReward, R as RefreshTokenPayloadType, I as RegisterFormData, J as RequestPasswordResetFormData, K as ResetPasswordFormData, b as ResourceByUser, S as SafeUserType, N as SchoolCampaignType, t as SchoolFormData, O as SchoolRegisteredUserType, g as SchoolReturnType, h as SchoolType, Q as StripeSubscription, T as SubscriptionPlanData, d as SubscriptionPlansResponse, V as SubscriptionPricingData, e as SubscriptionStatusData, W as UserActivity, X as UserActivityEvent, U as UserFormData, Y as UserType, Z as ValidateVerificationTokenFormData } from '../ad-CqfSmtG_.js';
3
3
  export { c as ChatMessageInput, d as ChatMessageReaction, e as ChatMessageReplyPreview, f as ChatMessageSeen, g as ChatMessageType, C as ChatType, h as CreateBulkNotificationInput, E as EnumActivity, N as NotificationCount, i as NotificationDataType, a as NotificationType, P as ParticipantType, R as ReportChatUser, j as ResourceActivityEntry, k as ResourceActivityInputType, b as ResourceActivityType } from '../resourceActivities-CjJdhVR7.js';
4
4
  export { C as ContactUsFormData, a as CreateContactUsFormData } from '../contactUs-DA3p41Uq.js';
5
5
  import { c as EventListItemType } from '../global-585slmSH.js';
6
6
  export { A as AssociateType, t as BaseResourceType, B as BaseResourceTypeFormData, C as Category, q as CreateEventFormData, s as CreateEventInfoFormData, u as CreateFormData, o as CreateUnregisteredVendorFormData, k as CreateVendorFormData, m as CreateVendorInfoFormData, D as DateTimeType, v as DateTimeWithPriceType, w as DeviceInfo, p as EventFormData, r as EventInfoFormData, d as EventInfoType, x as EventStatusType, E as EventType, a as FormDateField, F as FormField, G as GeocodeLocation, I as ImageObjectType, y as LocationGeoType, L as LocationType, N as Nullable, O as OptionItem, z as OwnerType, P as PROMO_CODE_PREFIX, H as PaymentInfoType, J as PosterUsageType, K as PromoCodeType, R as RefundPolicy, M as Region, Q as RelationDate, T as RelationInputType, e as RelationType, b as Requirement, f as ResourceConnectionsType, W as ResourceContactDetailsType, X as ResourceDetails, Y as ResourceImageType, Z as SocialMediaType, S as StallType, _ as Subcategory, $ as SubcategoryItems, a0 as TermsAgreement, n as UnregisteredVendorFormData, a1 as UnregisteredVendorInvitationType, g as UnregisteredVendorType, U as UseGetResourcesByRegionOptions, i as UserLicenceType, a2 as VendorAttributes, a3 as VendorCalendarData, j as VendorFormData, l as VendorInfoFormData, h as VendorInfoType, a4 as VendorProductList, V as VendorType } from '../global-585slmSH.js';
7
- export { D as DailyClueBaseGame, a as DailyClueGameData, E as EnumGameType, G as GameDate, b as GamePlacement, c as GamePlacementClue, d as GlobalGameData, g as gameScreenIdentifierList, e as gameTypeToDisplayName } from '../dailyClue-CvhLv9hJ.js';
7
+ export { B as BaseGameMap, c as BaseGameType, C as CreatePostFormData, D as DailyClueBaseGame, d as DailyClueGameData, e as EnumGameStatus, f as EnumGameType, g as EnumPostContentType, E as EnumPostType, h as GameDate, G as GameDocType, i as GameHistory, a as GameLeaderboard, j as GamePlacement, k as GamePlacementClue, l as GameType, m as GlobalGameData, n as PostContentData, o as PostContentFormData, p as PostContentGame, q as PostContentImage, r as PostContentList, s as PostContentTextarea, t as PostContentType, u as PostContentVideo, v as PostFileInput, b as PostFormData, P as PostType, w as PuzzleAnswer, x as PuzzleAnsweredQuestion, y as PuzzleBaseGame, z as PuzzleGameData, A as PuzzleQuestion, F as gameScreenIdentifierList, H as gameTypeToDisplayName } from '../post-D6n4Vszs.js';
8
8
  import '../images/index.js';
9
9
  import 'react-hook-form';
10
10
 
@@ -13,11 +13,9 @@ import {
13
13
  TIERS_BY_PRIORITY,
14
14
  TIER_DISPLAY_LABELS,
15
15
  TIER_FROM_LICENCE,
16
+ gameScreenIdentifierList,
16
17
  gameTypeToDisplayName
17
- } from "../chunk-5SCGH7UX.mjs";
18
- import {
19
- gameScreenIdentifierList
20
- } from "../chunk-HV5AID7P.mjs";
18
+ } from "../chunk-7VNXO63T.mjs";
21
19
  import "../chunk-4SNW63TJ.mjs";
22
20
  export {
23
21
  EnumActivity,
@@ -36,6 +36,7 @@ __export(utils_exports, {
36
36
  DEFAULT_RESOURCES_RETURN_OFFSET: () => DEFAULT_RESOURCES_RETURN_OFFSET,
37
37
  EVENT_DATE_STATUS_PERIOD_MAP: () => EVENT_DATE_STATUS_PERIOD_MAP,
38
38
  IOS_URL: () => IOS_URL,
39
+ PostTypeLabels: () => PostTypeLabels,
39
40
  SCHOOL_MAX_STUDENT_COUNT: () => SCHOOL_MAX_STUDENT_COUNT,
40
41
  SCHOOL_MIN_STUDENT_COUNT: () => SCHOOL_MIN_STUDENT_COUNT,
41
42
  availableRegionOptions: () => availableRegionOptions,
@@ -48,6 +49,7 @@ __export(utils_exports, {
48
49
  filterEventsByDateStatusPeriod: () => filterEventsByDateStatusPeriod,
49
50
  formatDate: () => formatDate,
50
51
  formatTimestamp: () => formatTimestamp,
52
+ futureTimePeriods: () => futureTimePeriods,
51
53
  getAllowedEventDateStatuses: () => getAllowedEventDateStatuses,
52
54
  getCurrentAndFutureDates: () => getCurrentAndFutureDates,
53
55
  isFutureDatesBeforeThreshold: () => isFutureDatesBeforeThreshold,
@@ -175,6 +177,172 @@ var import_customParseFormat = __toESM(require("dayjs/plugin/customParseFormat.j
175
177
  var import_isSameOrAfter = __toESM(require("dayjs/plugin/isSameOrAfter.js"));
176
178
  var import_timezone = __toESM(require("dayjs/plugin/timezone.js"));
177
179
  var import_utc = __toESM(require("dayjs/plugin/utc.js"));
180
+
181
+ // src/enums/index.ts
182
+ var EnumInviteStatus = /* @__PURE__ */ ((EnumInviteStatus2) => {
183
+ EnumInviteStatus2["ACCEPTED"] = "Accepted";
184
+ EnumInviteStatus2["COMPLETED"] = "Completed";
185
+ EnumInviteStatus2["EXPIRED"] = "Expired";
186
+ EnumInviteStatus2["NO_STATUS"] = "No_Status";
187
+ EnumInviteStatus2["PENDING"] = "Pending";
188
+ EnumInviteStatus2["REJECTED"] = "Rejected";
189
+ EnumInviteStatus2["UNAVAILABLE"] = "Unavailable";
190
+ return EnumInviteStatus2;
191
+ })(EnumInviteStatus || {});
192
+ var EnumPaymentMethod = /* @__PURE__ */ ((EnumPaymentMethod2) => {
193
+ EnumPaymentMethod2["CASH"] = "cash";
194
+ EnumPaymentMethod2["EFTPOS"] = "eftpos";
195
+ EnumPaymentMethod2["BANK_TRANSFER"] = "bank_transfer";
196
+ EnumPaymentMethod2["PAYPAL"] = "paypal";
197
+ EnumPaymentMethod2["STRIPE"] = "stripe";
198
+ return EnumPaymentMethod2;
199
+ })(EnumPaymentMethod || {});
200
+ var EnumRegions = /* @__PURE__ */ ((EnumRegions2) => {
201
+ EnumRegions2["All"] = "All Regions";
202
+ EnumRegions2["Auckland"] = "Auckland";
203
+ EnumRegions2["BayOfPlentyGisborne"] = "Bay of Plenty & Gisborne";
204
+ EnumRegions2["CanterburyWestCoast"] = "Canterbury & West Coast";
205
+ EnumRegions2["HawkesBay"] = "Hawke's Bay";
206
+ EnumRegions2["ManawatuWanganui"] = "Manawatu-Wanganui";
207
+ EnumRegions2["MarlboroughNelsonTasman"] = "Marlborough & Nelson & Tasman";
208
+ EnumRegions2["Northland"] = "Northland";
209
+ EnumRegions2["Otago"] = "Otago";
210
+ EnumRegions2["Southland"] = "Southland";
211
+ EnumRegions2["Taranaki"] = "Taranaki";
212
+ EnumRegions2["Waikato"] = "Waikato";
213
+ EnumRegions2["Wellington"] = "Wellington";
214
+ return EnumRegions2;
215
+ })(EnumRegions || {});
216
+ var EnumEventDateStatus = /* @__PURE__ */ ((EnumEventDateStatus2) => {
217
+ EnumEventDateStatus2["STARTING_SOON"] = "Starting_Soon";
218
+ EnumEventDateStatus2["STARTED"] = "Started";
219
+ EnumEventDateStatus2["TODAY"] = "Today";
220
+ EnumEventDateStatus2["TOMORROW"] = "Tomorrow";
221
+ EnumEventDateStatus2["THIS_WEEK"] = "This_Week";
222
+ EnumEventDateStatus2["NEXT_WEEK"] = "Next_Week";
223
+ EnumEventDateStatus2["UPCOMING"] = "Upcoming";
224
+ EnumEventDateStatus2["ENDED"] = "Ended";
225
+ EnumEventDateStatus2["RE_SCHEDULED"] = "Rescheduled";
226
+ EnumEventDateStatus2["CANCELED"] = "Canceled";
227
+ EnumEventDateStatus2["INVALID"] = "Invalid";
228
+ return EnumEventDateStatus2;
229
+ })(EnumEventDateStatus || {});
230
+
231
+ // src/types/subscription.ts
232
+ var TIER_FROM_LICENCE = {
233
+ ["pro_event" /* PRO_EVENT */]: "pro",
234
+ ["pro_plus_event" /* PRO_PLUS_EVENT */]: "pro_plus",
235
+ ["pro_plus_vendor" /* PRO_PLUS_VENDOR */]: "pro_plus",
236
+ ["pro_vendor" /* PRO_VENDOR */]: "pro",
237
+ ["standard_event" /* STANDARD_EVENT */]: "standard",
238
+ ["standard_partner" /* STANDARD_PARTNER */]: "standard",
239
+ ["standard_vendor" /* STANDARD_VENDOR */]: "standard"
240
+ };
241
+
242
+ // src/utils/utils.ts
243
+ var removeTypename = (obj) => {
244
+ if (obj instanceof Date) {
245
+ return obj;
246
+ }
247
+ if (obj instanceof File) {
248
+ return obj;
249
+ }
250
+ if (isIsoDateString(obj)) {
251
+ return obj;
252
+ }
253
+ if (Array.isArray(obj)) {
254
+ return obj.map(removeTypename);
255
+ }
256
+ if (obj !== null && typeof obj === "object") {
257
+ const { __typename, ...cleanedObj } = obj;
258
+ return Object.keys(cleanedObj).reduce((acc, key) => {
259
+ acc[key] = removeTypename(cleanedObj[key]);
260
+ return acc;
261
+ }, {});
262
+ }
263
+ return obj;
264
+ };
265
+ var truncateText = (text, maxLength = 30) => {
266
+ return text.length > maxLength ? text.substring(0, maxLength) + "..." : text;
267
+ };
268
+ var mapArrayToOptions = (items) => items.map((item) => ({
269
+ label: item,
270
+ value: item
271
+ }));
272
+ var capitalizeFirstLetter = (str) => {
273
+ return str.split(" ").map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()).join(" ");
274
+ };
275
+ var statusOptions = [
276
+ ...Object.values(EnumInviteStatus).map((status) => ({
277
+ label: status,
278
+ value: status
279
+ })).sort((a, b) => a.label.localeCompare(b.label))
280
+ // Sort the options alphabetically
281
+ ];
282
+ var availableRegionTypes = Object.values(EnumRegions);
283
+ var availableRegionOptions = mapArrayToOptions(availableRegionTypes);
284
+ var paymentMethodOptions = mapArrayToOptions(
285
+ Object.values(EnumPaymentMethod)
286
+ );
287
+ function normalizeUrl(url) {
288
+ if (!url.startsWith("http://") && !url.startsWith("https://")) {
289
+ return `https://${url}`;
290
+ }
291
+ return url;
292
+ }
293
+ var licenseNiceNames = {
294
+ ["pro_event" /* PRO_EVENT */]: "Pro Event",
295
+ ["pro_vendor" /* PRO_VENDOR */]: "Pro Stallholder",
296
+ ["standard_event" /* STANDARD_EVENT */]: "Standard Event",
297
+ ["standard_vendor" /* STANDARD_VENDOR */]: "Standard Stallholder",
298
+ ["pro_plus_event" /* PRO_PLUS_EVENT */]: "Pro+Ads Event",
299
+ ["pro_plus_vendor" /* PRO_PLUS_VENDOR */]: "Pro+Ads Stallholder",
300
+ ["standard_partner" /* STANDARD_PARTNER */]: "Partner"
301
+ };
302
+ var cluemartSocialMedia = [
303
+ {
304
+ link: "https://www.facebook.com/ClueMartApp",
305
+ name: "facebook" /* FACEBOOK */
306
+ },
307
+ {
308
+ link: "https://www.instagram.com/cluemart_app",
309
+ name: "instagram" /* INSTAGRAM */
310
+ },
311
+ {
312
+ link: "https://www.tiktok.com/@cluemart",
313
+ name: "tiktok" /* TIKTOK */
314
+ },
315
+ {
316
+ link: "https://www.youtube.com/@ClueMart-App-NZ",
317
+ name: "youtube" /* YOUTUBE */
318
+ }
319
+ ];
320
+ var IOS_URL = "https://apps.apple.com/nz/app/cluemart/id6747251008";
321
+ var ANDROID_URL = "https://play.google.com/store/apps/details?id=com.timardex.cluemart";
322
+ var DEFAULT_RESOURCES_RETURN_LIMIT = 1e3;
323
+ var DEFAULT_RESOURCES_RETURN_OFFSET = 0;
324
+ var CLUEMART_MAIN_DOMAIN_URL = "https://cluemart.co.nz";
325
+ var rewardNiceNames = {
326
+ ["mystery_joy_box" /* MYSTERY_JOY_BOX */]: {
327
+ name: "Mystery Joy Box",
328
+ points: 250
329
+ },
330
+ ["mystery_squeeze_box" /* MYSTERY_SQUEEZE_BOX */]: {
331
+ name: "Mystery Squeeze Box",
332
+ points: 350
333
+ },
334
+ ["mystery_deluxe_box" /* MYSTERY_DELUXE_BOX */]: {
335
+ name: "Mystery Deluxe Box",
336
+ points: 500
337
+ }
338
+ };
339
+ var PostTypeLabels = {
340
+ ["market_faces" /* MARKET_FACES */]: "Market Faces",
341
+ ["clue_bites" /* CLUE_BITES */]: "Clue Bites",
342
+ ["play_and_win" /* PLAY_AND_WIN */]: "Play & Win"
343
+ };
344
+
345
+ // src/utils/date.ts
178
346
  var dateFormat = "DD-MM-YYYY";
179
347
  var timeFormat = "HH:mm";
180
348
  import_dayjs.default.extend(import_customParseFormat.default);
@@ -233,7 +401,7 @@ var isIsoDateString = (value) => {
233
401
  return typeof value === "string" && !isNaN(Date.parse(value));
234
402
  };
235
403
  function sortDatesChronologically(dates) {
236
- if (!dates || !dates.length) {
404
+ if (!dates?.length) {
237
405
  return [];
238
406
  }
239
407
  return [...dates].sort((a, b) => {
@@ -243,6 +411,14 @@ function sortDatesChronologically(dates) {
243
411
  return dateA.valueOf() - dateB.valueOf();
244
412
  });
245
413
  }
414
+ var futureTimePeriods = mapArrayToOptions(
415
+ Object.values(EnumEventDateStatus)
416
+ ).filter(
417
+ (period) => period.value !== "Starting_Soon" /* STARTING_SOON */ && period.value !== "Canceled" /* CANCELED */ && period.value !== "Rescheduled" /* RE_SCHEDULED */ && period.value !== "Started" /* STARTED */ && period.value !== "Ended" /* ENDED */ && period.value !== "Invalid" /* INVALID */
418
+ ).map((period) => ({
419
+ label: period.value.replaceAll("_", " "),
420
+ value: period.value
421
+ }));
246
422
 
247
423
  // src/utils/dailyClueGame.ts
248
424
  function createSeededRng(seed) {
@@ -317,140 +493,6 @@ function computeDailyClueState(dailyClue) {
317
493
  };
318
494
  }
319
495
 
320
- // src/enums/index.ts
321
- var EnumInviteStatus = /* @__PURE__ */ ((EnumInviteStatus2) => {
322
- EnumInviteStatus2["ACCEPTED"] = "Accepted";
323
- EnumInviteStatus2["COMPLETED"] = "Completed";
324
- EnumInviteStatus2["EXPIRED"] = "Expired";
325
- EnumInviteStatus2["NO_STATUS"] = "No_Status";
326
- EnumInviteStatus2["PENDING"] = "Pending";
327
- EnumInviteStatus2["REJECTED"] = "Rejected";
328
- EnumInviteStatus2["UNAVAILABLE"] = "Unavailable";
329
- return EnumInviteStatus2;
330
- })(EnumInviteStatus || {});
331
- var EnumPaymentMethod = /* @__PURE__ */ ((EnumPaymentMethod2) => {
332
- EnumPaymentMethod2["CASH"] = "cash";
333
- EnumPaymentMethod2["EFTPOS"] = "eftpos";
334
- EnumPaymentMethod2["BANK_TRANSFER"] = "bank_transfer";
335
- EnumPaymentMethod2["PAYPAL"] = "paypal";
336
- EnumPaymentMethod2["STRIPE"] = "stripe";
337
- return EnumPaymentMethod2;
338
- })(EnumPaymentMethod || {});
339
- var EnumRegions = /* @__PURE__ */ ((EnumRegions2) => {
340
- EnumRegions2["All"] = "All Regions";
341
- EnumRegions2["Auckland"] = "Auckland";
342
- EnumRegions2["BayOfPlentyGisborne"] = "Bay of Plenty & Gisborne";
343
- EnumRegions2["CanterburyWestCoast"] = "Canterbury & West Coast";
344
- EnumRegions2["HawkesBay"] = "Hawke's Bay";
345
- EnumRegions2["ManawatuWanganui"] = "Manawatu-Wanganui";
346
- EnumRegions2["MarlboroughNelsonTasman"] = "Marlborough & Nelson & Tasman";
347
- EnumRegions2["Northland"] = "Northland";
348
- EnumRegions2["Otago"] = "Otago";
349
- EnumRegions2["Southland"] = "Southland";
350
- EnumRegions2["Taranaki"] = "Taranaki";
351
- EnumRegions2["Waikato"] = "Waikato";
352
- EnumRegions2["Wellington"] = "Wellington";
353
- return EnumRegions2;
354
- })(EnumRegions || {});
355
-
356
- // src/utils/utils.ts
357
- var removeTypename = (obj) => {
358
- if (obj instanceof Date) {
359
- return obj;
360
- }
361
- if (obj instanceof File) {
362
- return obj;
363
- }
364
- if (isIsoDateString(obj)) {
365
- return obj;
366
- }
367
- if (Array.isArray(obj)) {
368
- return obj.map(removeTypename);
369
- }
370
- if (obj !== null && typeof obj === "object") {
371
- const { __typename, ...cleanedObj } = obj;
372
- return Object.keys(cleanedObj).reduce((acc, key) => {
373
- acc[key] = removeTypename(cleanedObj[key]);
374
- return acc;
375
- }, {});
376
- }
377
- return obj;
378
- };
379
- var truncateText = (text, maxLength = 30) => {
380
- return text.length > maxLength ? text.substring(0, maxLength) + "..." : text;
381
- };
382
- var mapArrayToOptions = (items) => items.map((item) => ({
383
- label: item,
384
- value: item
385
- }));
386
- var capitalizeFirstLetter = (str) => {
387
- return str.split(" ").map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()).join(" ");
388
- };
389
- var statusOptions = [
390
- ...Object.values(EnumInviteStatus).map((status) => ({
391
- label: status,
392
- value: status
393
- })).sort((a, b) => a.label.localeCompare(b.label))
394
- // Sort the options alphabetically
395
- ];
396
- var availableRegionTypes = Object.values(EnumRegions);
397
- var availableRegionOptions = mapArrayToOptions(availableRegionTypes);
398
- var paymentMethodOptions = mapArrayToOptions(
399
- Object.values(EnumPaymentMethod)
400
- );
401
- function normalizeUrl(url) {
402
- if (!url.startsWith("http://") && !url.startsWith("https://")) {
403
- return `https://${url}`;
404
- }
405
- return url;
406
- }
407
- var licenseNiceNames = {
408
- ["pro_event" /* PRO_EVENT */]: "Pro Event",
409
- ["pro_vendor" /* PRO_VENDOR */]: "Pro Stallholder",
410
- ["standard_event" /* STANDARD_EVENT */]: "Standard Event",
411
- ["standard_vendor" /* STANDARD_VENDOR */]: "Standard Stallholder",
412
- ["pro_plus_event" /* PRO_PLUS_EVENT */]: "Pro+Ads Event",
413
- ["pro_plus_vendor" /* PRO_PLUS_VENDOR */]: "Pro+Ads Stallholder",
414
- ["standard_partner" /* STANDARD_PARTNER */]: "Partner"
415
- };
416
- var cluemartSocialMedia = [
417
- {
418
- link: "https://www.facebook.com/ClueMartApp",
419
- name: "facebook" /* FACEBOOK */
420
- },
421
- {
422
- link: "https://www.instagram.com/cluemart_app",
423
- name: "instagram" /* INSTAGRAM */
424
- },
425
- {
426
- link: "https://www.tiktok.com/@cluemart",
427
- name: "tiktok" /* TIKTOK */
428
- },
429
- {
430
- link: "https://www.youtube.com/@ClueMart-App-NZ",
431
- name: "youtube" /* YOUTUBE */
432
- }
433
- ];
434
- var IOS_URL = "https://apps.apple.com/nz/app/cluemart/id6747251008";
435
- var ANDROID_URL = "https://play.google.com/store/apps/details?id=com.timardex.cluemart";
436
- var DEFAULT_RESOURCES_RETURN_LIMIT = 1e3;
437
- var DEFAULT_RESOURCES_RETURN_OFFSET = 0;
438
- var CLUEMART_MAIN_DOMAIN_URL = "https://cluemart.co.nz";
439
- var rewardNiceNames = {
440
- ["mystery_joy_box" /* MYSTERY_JOY_BOX */]: {
441
- name: "Mystery Joy Box",
442
- points: 250
443
- },
444
- ["mystery_squeeze_box" /* MYSTERY_SQUEEZE_BOX */]: {
445
- name: "Mystery Squeeze Box",
446
- points: 350
447
- },
448
- ["mystery_deluxe_box" /* MYSTERY_DELUXE_BOX */]: {
449
- name: "Mystery Deluxe Box",
450
- points: 500
451
- }
452
- };
453
-
454
496
  // src/utils/school.ts
455
497
  var SCHOOL_MIN_STUDENT_COUNT = 300;
456
498
  var SCHOOL_MAX_STUDENT_COUNT = 0;
@@ -490,6 +532,7 @@ function filterEventsByDateStatusPeriod(events, period) {
490
532
  DEFAULT_RESOURCES_RETURN_OFFSET,
491
533
  EVENT_DATE_STATUS_PERIOD_MAP,
492
534
  IOS_URL,
535
+ PostTypeLabels,
493
536
  SCHOOL_MAX_STUDENT_COUNT,
494
537
  SCHOOL_MIN_STUDENT_COUNT,
495
538
  availableRegionOptions,
@@ -502,6 +545,7 @@ function filterEventsByDateStatusPeriod(events, period) {
502
545
  filterEventsByDateStatusPeriod,
503
546
  formatDate,
504
547
  formatTimestamp,
548
+ futureTimePeriods,
505
549
  getAllowedEventDateStatuses,
506
550
  getCurrentAndFutureDates,
507
551
  isFutureDatesBeforeThreshold,