@timardex/cluemart-shared 1.6.112 → 1.7.0

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 (145) hide show
  1. package/dist/ad-CVkVX_z5.d.ts +296 -0
  2. package/dist/ad-DA9ECAhK.d.mts +296 -0
  3. package/dist/affiliate-1RtkLnLP.d.ts +35 -0
  4. package/dist/affiliate-Cos2Syz5.d.mts +35 -0
  5. package/dist/{chunk-R6PCFOYO.mjs → chunk-HZMP7GXC.mjs} +2628 -948
  6. package/dist/chunk-HZMP7GXC.mjs.map +1 -0
  7. package/dist/{chunk-X3OLM35T.mjs → chunk-KZTOISPA.mjs} +8 -14
  8. package/dist/chunk-KZTOISPA.mjs.map +1 -0
  9. package/dist/{chunk-ILILH7E2.mjs → chunk-MVQ3CFQR.mjs} +23 -12
  10. package/dist/chunk-MVQ3CFQR.mjs.map +1 -0
  11. package/dist/{chunk-AYO3E4DM.mjs → chunk-RKIRWZCH.mjs} +183 -39
  12. package/dist/chunk-RKIRWZCH.mjs.map +1 -0
  13. package/dist/{chunk-LBEJECG3.mjs → chunk-TAECMXM4.mjs} +219 -249
  14. package/dist/{chunk-LBEJECG3.mjs.map → chunk-TAECMXM4.mjs.map} +1 -1
  15. package/dist/{chunk-BIJ5NDXW.mjs → chunk-ZZJSCYJK.mjs} +42 -46
  16. package/dist/chunk-ZZJSCYJK.mjs.map +1 -0
  17. package/dist/{contactUs-CBWzefUS.d.mts → contactUs-DGrDzJaM.d.mts} +1 -1
  18. package/dist/{contactUs--NoohZBu.d.ts → contactUs-H7799pWe.d.ts} +1 -1
  19. package/dist/enums/index.cjs +7 -13
  20. package/dist/enums/index.cjs.map +1 -1
  21. package/dist/enums/index.d.mts +9 -15
  22. package/dist/enums/index.d.ts +9 -15
  23. package/dist/enums/index.mjs +1 -1
  24. package/dist/formFields/index.cjs +73 -136
  25. package/dist/formFields/index.cjs.map +1 -1
  26. package/dist/formFields/index.d.mts +2 -3
  27. package/dist/formFields/index.d.ts +2 -3
  28. package/dist/formFields/index.mjs +4 -9
  29. package/dist/{global-DePDtOFt.d.mts → global-BUUfmCo7.d.mts} +11 -12
  30. package/dist/{global-CUYYxpy2.d.ts → global-fKbMmluy.d.ts} +11 -12
  31. package/dist/graphql/index.cjs +1251 -694
  32. package/dist/graphql/index.cjs.map +1 -1
  33. package/dist/graphql/index.d.mts +173 -423
  34. package/dist/graphql/index.d.ts +173 -423
  35. package/dist/graphql/index.mjs +21 -33
  36. package/dist/hooks/index.cjs +306 -936
  37. package/dist/hooks/index.cjs.map +1 -1
  38. package/dist/hooks/index.d.mts +4 -10
  39. package/dist/hooks/index.d.ts +4 -10
  40. package/dist/hooks/index.mjs +58 -170
  41. package/dist/hooks/index.mjs.map +1 -1
  42. package/dist/images/apple-maps-icon.webp.d.ts +1 -8
  43. package/dist/images/banner-horizontal.webp.d.ts +1 -8
  44. package/dist/images/banner-vertical.webp.d.ts +1 -8
  45. package/dist/images/cluiTui.webp.d.ts +1 -8
  46. package/dist/images/corporate.webp.d.ts +1 -8
  47. package/dist/images/facebook.webp.d.ts +1 -8
  48. package/dist/images/gazebo-top.webp.d.ts +1 -8
  49. package/dist/images/google-maps-icon.webp.d.ts +1 -8
  50. package/dist/images/googleMaps-logo-dark.webp.d.ts +1 -8
  51. package/dist/images/googleMaps-logo-light.webp.d.ts +1 -8
  52. package/dist/images/instagram.webp.d.ts +1 -8
  53. package/dist/images/logo-atr.webp.d.ts +1 -8
  54. package/dist/images/logo-dark.webp.d.ts +1 -8
  55. package/dist/images/logo.webp.d.ts +1 -8
  56. package/dist/images/meet.webp.d.ts +1 -8
  57. package/dist/images/mini-market1.webp.d.ts +1 -8
  58. package/dist/images/mini-market2.webp.d.ts +1 -8
  59. package/dist/images/mini-market3.webp.d.ts +1 -8
  60. package/dist/images/mini-market4.webp.d.ts +1 -8
  61. package/dist/images/mini-market5.webp.d.ts +1 -8
  62. package/dist/images/poll.webp.d.ts +1 -8
  63. package/dist/images/poster1.webp.d.ts +1 -8
  64. package/dist/images/poster2.webp.d.ts +1 -8
  65. package/dist/images/poster3.webp.d.ts +1 -8
  66. package/dist/images/poster4.webp.d.ts +1 -8
  67. package/dist/images/private.webp.d.ts +1 -8
  68. package/dist/images/qr-code.webp.d.ts +1 -8
  69. package/dist/images/school.webp.d.ts +1 -8
  70. package/dist/images/sima.webp.d.ts +1 -8
  71. package/dist/images/store-android.webp.d.ts +1 -8
  72. package/dist/images/store-ios.webp.d.ts +1 -8
  73. package/dist/images/tablas.webp.d.ts +1 -8
  74. package/dist/images/telefonos.webp.d.ts +1 -8
  75. package/dist/images/tiktok.webp.d.ts +1 -8
  76. package/dist/images/tip.webp.d.ts +1 -8
  77. package/dist/images/ugralos.webp.d.ts +1 -8
  78. package/dist/images/waze-maps-icon.webp.d.ts +1 -8
  79. package/dist/images/website.webp.d.ts +1 -8
  80. package/dist/images/youtube.webp.d.ts +1 -8
  81. package/dist/index.cjs +1673 -1623
  82. package/dist/index.cjs.map +1 -1
  83. package/dist/index.d.mts +240 -654
  84. package/dist/index.d.ts +240 -654
  85. package/dist/index.mjs +1672 -1585
  86. package/dist/index.mjs.map +1 -1
  87. package/dist/map/index.cjs +9 -14
  88. package/dist/map/index.cjs.map +1 -1
  89. package/dist/map/index.d.mts +13 -16
  90. package/dist/map/index.d.ts +13 -16
  91. package/dist/map/index.mjs +9 -14
  92. package/dist/map/index.mjs.map +1 -1
  93. package/dist/{resourceActivities-CMUcn2P7.d.ts → resourceActivities-BL_12IAo.d.ts} +4 -9
  94. package/dist/{resourceActivities-CwbJFGIp.d.mts → resourceActivities-zczOntNk.d.mts} +4 -9
  95. package/dist/sharing/index.cjs +1252 -39
  96. package/dist/sharing/index.cjs.map +1 -1
  97. package/dist/sharing/index.d.mts +5 -17
  98. package/dist/sharing/index.d.ts +5 -17
  99. package/dist/sharing/index.mjs +30 -34
  100. package/dist/types/index.cjs +2 -15
  101. package/dist/types/index.cjs.map +1 -1
  102. package/dist/types/index.d.mts +23 -10
  103. package/dist/types/index.d.ts +23 -10
  104. package/dist/types/index.mjs +5 -9
  105. package/dist/utils/index.cjs +136 -355
  106. package/dist/utils/index.cjs.map +1 -1
  107. package/dist/utils/index.d.mts +35 -87
  108. package/dist/utils/index.d.ts +35 -87
  109. package/dist/utils/index.mjs +15 -42
  110. package/package.json +10 -31
  111. package/dist/ad-BUYzE6zx.d.ts +0 -181
  112. package/dist/ad-BhLoEul3.d.mts +0 -181
  113. package/dist/affiliate-BbtjeUP4.d.mts +0 -73
  114. package/dist/affiliate-C51nzKsw.d.ts +0 -73
  115. package/dist/apollo/index.cjs +0 -1383
  116. package/dist/apollo/index.cjs.map +0 -1
  117. package/dist/apollo/index.d.mts +0 -323
  118. package/dist/apollo/index.d.ts +0 -323
  119. package/dist/apollo/index.mjs +0 -1295
  120. package/dist/apollo/index.mjs.map +0 -1
  121. package/dist/auth/index.cjs +0 -1727
  122. package/dist/auth/index.cjs.map +0 -1
  123. package/dist/auth/index.d.mts +0 -166
  124. package/dist/auth/index.d.ts +0 -166
  125. package/dist/auth/index.mjs +0 -380
  126. package/dist/auth/index.mjs.map +0 -1
  127. package/dist/chunk-32MKHJTX.mjs +0 -1207
  128. package/dist/chunk-32MKHJTX.mjs.map +0 -1
  129. package/dist/chunk-AYO3E4DM.mjs.map +0 -1
  130. package/dist/chunk-BIJ5NDXW.mjs.map +0 -1
  131. package/dist/chunk-DQ7ZHIXW.mjs +0 -26
  132. package/dist/chunk-DQ7ZHIXW.mjs.map +0 -1
  133. package/dist/chunk-ILILH7E2.mjs.map +0 -1
  134. package/dist/chunk-R6PCFOYO.mjs.map +0 -1
  135. package/dist/chunk-RAYUJODN.mjs +0 -45
  136. package/dist/chunk-RAYUJODN.mjs.map +0 -1
  137. package/dist/chunk-SD42WIMV.mjs +0 -297
  138. package/dist/chunk-SD42WIMV.mjs.map +0 -1
  139. package/dist/chunk-VPANTTZI.mjs +0 -262
  140. package/dist/chunk-VPANTTZI.mjs.map +0 -1
  141. package/dist/chunk-X3OLM35T.mjs.map +0 -1
  142. package/dist/subscription-BU8GvH2K.d.ts +0 -12
  143. package/dist/subscription-bmAdrnfi.d.mts +0 -12
  144. package/dist/user-D47MLFyH.d.ts +0 -134
  145. package/dist/user-DE8edl3u.d.mts +0 -134
@@ -30,7 +30,6 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
30
30
  // src/utils/index.ts
31
31
  var utils_exports = {};
32
32
  __export(utils_exports, {
33
- AFFILIATE_PARTICIPANT_TYPE_LABELS: () => AFFILIATE_PARTICIPANT_TYPE_LABELS,
34
33
  AFFILIATE_REWARDS: () => AFFILIATE_REWARDS,
35
34
  ANDROID_URL: () => ANDROID_URL,
36
35
  CLUEMART_MAIN_DOMAIN_URL: () => CLUEMART_MAIN_DOMAIN_URL,
@@ -38,11 +37,9 @@ __export(utils_exports, {
38
37
  CM_SCHOOL_PROMO_CODE: () => CM_SCHOOL_PROMO_CODE,
39
38
  DEFAULT_RESOURCES_RETURN_LIMIT: () => DEFAULT_RESOURCES_RETURN_LIMIT,
40
39
  DEFAULT_RESOURCES_RETURN_OFFSET: () => DEFAULT_RESOURCES_RETURN_OFFSET,
41
- DEFAULT_USER_FACING_ERROR: () => DEFAULT_USER_FACING_ERROR,
42
40
  EVENT_DATE_STATUS_PERIOD_MAP: () => EVENT_DATE_STATUS_PERIOD_MAP,
43
41
  IOS_URL: () => IOS_URL,
44
42
  KNOWN_EVENT_SCHEDULE_STATUSES: () => KNOWN_EVENT_SCHEDULE_STATUSES,
45
- NETWORK_USER_FACING_ERROR: () => NETWORK_USER_FACING_ERROR,
46
43
  PostTypeLabels: () => PostTypeLabels,
47
44
  SCHOOL_MAX_STUDENT_COUNT: () => SCHOOL_MAX_STUDENT_COUNT,
48
45
  SCHOOL_MIN_STUDENT_COUNT: () => SCHOOL_MIN_STUDENT_COUNT,
@@ -67,14 +64,11 @@ __export(utils_exports, {
67
64
  filterVendorEventsBySelectedDate: () => filterVendorEventsBySelectedDate,
68
65
  findEventDateTimeByIsoDate: () => findEventDateTimeByIsoDate,
69
66
  formatDate: () => formatDate,
70
- formatIrdNumber: () => formatIrdNumber,
71
- formatNZBankAccount: () => formatNZBankAccount,
72
67
  formatTimestamp: () => formatTimestamp,
73
68
  fromCalendarIsoDate: () => fromCalendarIsoDate,
74
69
  futureTimePeriods: () => futureTimePeriods,
75
70
  getAllowedEventDateStatuses: () => getAllowedEventDateStatuses,
76
71
  getCurrentAndFutureDates: () => getCurrentAndFutureDates,
77
- getErrorMessage: () => getErrorMessage,
78
72
  getEventCalendarIsoDates: () => getEventCalendarIsoDates,
79
73
  getEventDatesWithStallholders: () => getEventDatesWithStallholders,
80
74
  getEventScheduleStatusLabel: () => getEventScheduleStatusLabel,
@@ -92,16 +86,12 @@ __export(utils_exports, {
92
86
  getVendorEventsEmptyMessage: () => getVendorEventsEmptyMessage,
93
87
  hasMatchingEventDate: () => hasMatchingEventDate,
94
88
  isFutureDatesBeforeThreshold: () => isFutureDatesBeforeThreshold,
95
- isInternalErrorMessage: () => isInternalErrorMessage,
96
89
  isIsoDateString: () => isIsoDateString,
97
90
  isResourceImageActive: () => isResourceImageActive,
98
- isTransientNetworkError: () => isTransientNetworkError,
99
- isValidIrdNumber: () => isValidIrdNumber,
100
91
  licenseNiceNames: () => licenseNiceNames,
101
92
  mapArrayToOptions: () => mapArrayToOptions,
102
93
  matchesCategory: () => matchesCategory,
103
94
  matchesSelectedDate: () => matchesSelectedDate,
104
- normalizeIrdNumber: () => normalizeIrdNumber,
105
95
  normalizeResourceImage: () => normalizeResourceImage,
106
96
  normalizeUrl: () => normalizeUrl,
107
97
  nzStartOfDay: () => nzStartOfDay,
@@ -117,7 +107,6 @@ __export(utils_exports, {
117
107
  timeFormat: () => timeFormat,
118
108
  toCalendarIsoDate: () => toCalendarIsoDate,
119
109
  toNZTime: () => toNZTime,
120
- toUserFacingErrorMessage: () => toUserFacingErrorMessage,
121
110
  truncateText: () => truncateText
122
111
  });
123
112
  module.exports = __toCommonJS(utils_exports);
@@ -280,11 +269,124 @@ var EnumEventDateStatus = /* @__PURE__ */ ((EnumEventDateStatus2) => {
280
269
  return EnumEventDateStatus2;
281
270
  })(EnumEventDateStatus || {});
282
271
 
283
- // src/utils/mapArrayToOptions.ts
272
+ // src/types/global.ts
273
+ var PROMO_CODE_PREFIX = "CM-";
274
+
275
+ // src/types/subscription.ts
276
+ var TIER_FROM_LICENCE = {
277
+ ["pro_event" /* PRO_EVENT */]: "pro",
278
+ ["pro_plus_event" /* PRO_PLUS_EVENT */]: "pro_plus",
279
+ ["pro_plus_vendor" /* PRO_PLUS_VENDOR */]: "pro_plus",
280
+ ["pro_vendor" /* PRO_VENDOR */]: "pro",
281
+ ["standard_event" /* STANDARD_EVENT */]: "standard",
282
+ ["standard_partner" /* STANDARD_PARTNER */]: "standard",
283
+ ["standard_vendor" /* STANDARD_VENDOR */]: "standard"
284
+ };
285
+
286
+ // src/utils/utils.ts
287
+ var removeTypename = (obj) => {
288
+ if (obj instanceof Date) {
289
+ return obj;
290
+ }
291
+ if (obj instanceof File) {
292
+ return obj;
293
+ }
294
+ if (isIsoDateString(obj)) {
295
+ return obj;
296
+ }
297
+ if (Array.isArray(obj)) {
298
+ return obj.map(removeTypename);
299
+ }
300
+ if (obj !== null && typeof obj === "object") {
301
+ const { __typename, ...cleanedObj } = obj;
302
+ return Object.keys(cleanedObj).reduce((acc, key) => {
303
+ acc[key] = removeTypename(cleanedObj[key]);
304
+ return acc;
305
+ }, {});
306
+ }
307
+ return obj;
308
+ };
309
+ var truncateText = (text, maxLength = 30) => {
310
+ return text.length > maxLength ? text.substring(0, maxLength) + "..." : text;
311
+ };
284
312
  var mapArrayToOptions = (items) => items.map((item) => ({
285
313
  label: item,
286
314
  value: item
287
315
  }));
316
+ var capitalizeFirstLetter = (str) => {
317
+ return str.split(" ").map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()).join(" ");
318
+ };
319
+ var statusOptions = [
320
+ ...Object.values(EnumInviteStatus).map((status) => ({
321
+ label: status,
322
+ value: status
323
+ })).sort((a, b) => a.label.localeCompare(b.label))
324
+ // Sort the options alphabetically
325
+ ];
326
+ var availableRegionTypes = Object.values(EnumRegions);
327
+ var availableRegionOptions = mapArrayToOptions(availableRegionTypes);
328
+ var paymentMethodOptions = mapArrayToOptions(
329
+ Object.values(EnumPaymentMethod)
330
+ );
331
+ function normalizeUrl(url) {
332
+ if (!url.startsWith("http://") && !url.startsWith("https://")) {
333
+ return `https://${url}`;
334
+ }
335
+ return url;
336
+ }
337
+ var licenseNiceNames = {
338
+ ["pro_event" /* PRO_EVENT */]: "Pro Event",
339
+ ["pro_vendor" /* PRO_VENDOR */]: "Pro Stallholder",
340
+ ["standard_event" /* STANDARD_EVENT */]: "Standard Event",
341
+ ["standard_vendor" /* STANDARD_VENDOR */]: "Standard Stallholder",
342
+ ["pro_plus_event" /* PRO_PLUS_EVENT */]: "Pro+Ads Event",
343
+ ["pro_plus_vendor" /* PRO_PLUS_VENDOR */]: "Pro+Ads Stallholder",
344
+ ["standard_partner" /* STANDARD_PARTNER */]: "Partner"
345
+ };
346
+ var cluemartSocialMedia = [
347
+ {
348
+ link: "https://www.facebook.com/ClueMartApp",
349
+ name: "facebook" /* FACEBOOK */
350
+ },
351
+ {
352
+ link: "https://www.instagram.com/cluemart_app",
353
+ name: "instagram" /* INSTAGRAM */
354
+ },
355
+ {
356
+ link: "https://www.tiktok.com/@cluemart",
357
+ name: "tiktok" /* TIKTOK */
358
+ },
359
+ {
360
+ link: "https://www.youtube.com/@ClueMart-App-NZ",
361
+ name: "youtube" /* YOUTUBE */
362
+ }
363
+ ];
364
+ var IOS_URL = "https://apps.apple.com/nz/app/cluemart/id6747251008";
365
+ var ANDROID_URL = "https://play.google.com/store/apps/details?id=com.timardex.cluemart";
366
+ var DEFAULT_RESOURCES_RETURN_LIMIT = 1e3;
367
+ var DEFAULT_RESOURCES_RETURN_OFFSET = 0;
368
+ var CLUEMART_MAIN_DOMAIN_URL = "https://cluemart.co.nz";
369
+ var rewardNiceNames = {
370
+ ["mystery_joy_box" /* MYSTERY_JOY_BOX */]: {
371
+ name: "Mystery Joy Box",
372
+ points: 250
373
+ },
374
+ ["mystery_squeeze_box" /* MYSTERY_SQUEEZE_BOX */]: {
375
+ name: "Mystery Squeeze Box",
376
+ points: 350
377
+ },
378
+ ["mystery_deluxe_box" /* MYSTERY_DELUXE_BOX */]: {
379
+ name: "Mystery Deluxe Box",
380
+ points: 500
381
+ }
382
+ };
383
+ var PostTypeLabels = {
384
+ ["market_faces" /* MARKET_FACES */]: "Market Faces",
385
+ ["clue_bites" /* CLUE_BITES */]: "Clue Bites",
386
+ ["play_and_win" /* PLAY_AND_WIN */]: "Play & Win"
387
+ };
388
+ var CM_SCHOOL_PROMO_CODE = `${PROMO_CODE_PREFIX}SCHOOL`;
389
+ var CM_AFFILIATE_PROMO_CODE = `${PROMO_CODE_PREFIX}AFFILIATE`;
288
390
 
289
391
  // src/utils/date.ts
290
392
  var dateFormat = "DD-MM-YYYY";
@@ -437,173 +539,32 @@ function computeDailyClueState(dailyClue) {
437
539
  };
438
540
  }
439
541
 
440
- // src/sharing/relationShareTypes.ts
441
- var RELATION_SHARE_INVITATION = "invitation";
442
- var RELATION_SHARE_APPLICATION = "application";
443
-
444
- // src/sharing/constants.ts
445
- var SHARE_SITE_URL = "https://cluemart.co.nz";
446
- var SHARE_CALENDAR_ICON = "\u{1F4C5}";
447
- var SHARE_MARKET_DATES_SECTION_HEADING = `${SHARE_CALENDAR_ICON} Market dates:`;
448
- var SHARE_CHECKMARK_ICON = "\u2705";
449
- var SHARE_REQUIREMENTS_SECTION_HEADING = `${SHARE_CHECKMARK_ICON} Requirements:`;
450
- var SHARE_INFO_ICON = "\u2139\uFE0F";
451
- var SHARE_TAGS_SECTION_HEADING = `${SHARE_INFO_ICON} Tags:`;
452
- var SHARE_COMPLIANCE_PREFIX = `${SHARE_CHECKMARK_ICON} Compliance:`;
453
- var SHARE_CATEGORY_ICON = "\u{1F3F7}\uFE0F";
454
- var SHARE_CATEGORIES_SECTION_HEADING = `${SHARE_CATEGORY_ICON} Categories:`;
455
- var SHARE_RULER_ICON = "\u{1F4CF}";
456
- var SHARE_STALL_SIZE_PREFIX = `${SHARE_RULER_ICON} Stall size:`;
457
- var SHARE_DOLLAR_ICON = "$";
458
- var SHARE_PRICE_RANGE_PREFIX = `${SHARE_DOLLAR_ICON} Price range:`;
459
- var SHARE_CLOCK_ICON = "\u23F0";
460
- var SHARE_APPLICATION_DEADLINE_PREFIX = `${SHARE_CLOCK_ICON} Application deadline:`;
461
- var DEFAULT_SHARE_OG_IMAGE = `${SHARE_SITE_URL}/assets/logo.webp`;
462
- var SHARE_RESOURCE_LABEL = {
463
- [RELATION_SHARE_APPLICATION]: "Application",
464
- [RELATION_SHARE_INVITATION]: "Invitation",
465
- clue_bites: "Clue Bites",
466
- market_faces: "Market Faces",
467
- play_and_win: "Play & Win",
468
- market: "Market",
469
- partner: "Partner",
470
- stallholder: "Stallholder",
471
- affiliate: "Affiliate",
472
- school: "School"
473
- };
474
-
475
- // src/sharing/normalizeShareDescription.ts
476
- function stripOverlaySubtitleSpecialChars(text) {
477
- const regex = /[^\p{L}\p{M}\p{N}\s.,!?'"&\-():;/]/gu;
478
- const result = text.replace(/\p{Extended_Pictographic}/gu, "").replace(regex, "");
479
- return result.trim();
480
- }
481
-
482
- // src/types/global.ts
483
- var PROMO_CODE_PREFIX = "CM-";
484
-
485
- // src/types/subscription.ts
486
- var TIER_FROM_LICENCE = {
487
- ["pro_event" /* PRO_EVENT */]: "pro",
488
- ["pro_plus_event" /* PRO_PLUS_EVENT */]: "pro_plus",
489
- ["pro_plus_vendor" /* PRO_PLUS_VENDOR */]: "pro_plus",
490
- ["pro_vendor" /* PRO_VENDOR */]: "pro",
491
- ["standard_event" /* STANDARD_EVENT */]: "standard",
492
- ["standard_partner" /* STANDARD_PARTNER */]: "standard",
493
- ["standard_vendor" /* STANDARD_VENDOR */]: "standard",
494
- ["standard_affiliate" /* STANDARD_AFFILIATE */]: "standard",
495
- ["standard_school" /* STANDARD_SCHOOL */]: "standard"
496
- };
497
-
498
- // src/utils/utils.ts
499
- var removeTypename = (obj) => {
500
- if (obj instanceof Date) {
501
- return obj;
502
- }
503
- if (obj instanceof File) {
504
- return obj;
505
- }
506
- if (isIsoDateString(obj)) {
507
- return obj;
508
- }
509
- if (Array.isArray(obj)) {
510
- return obj.map(removeTypename);
511
- }
512
- if (obj !== null && typeof obj === "object") {
513
- const { __typename, ...cleanedObj } = obj;
514
- return Object.keys(cleanedObj).reduce((acc, key) => {
515
- acc[key] = removeTypename(cleanedObj[key]);
516
- return acc;
517
- }, {});
518
- }
519
- return obj;
520
- };
521
- var truncateText = (text, maxLength = 30) => {
522
- const result = stripOverlaySubtitleSpecialChars(text);
523
- return result.length > maxLength ? result.substring(0, maxLength) + "..." : result;
524
- };
525
- var capitalizeFirstLetter = (str) => {
526
- return str.split(" ").map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()).join(" ");
527
- };
528
- var statusOptions = [
529
- ...Object.values(EnumInviteStatus).map((status) => ({
530
- label: status,
531
- value: status
532
- })).sort((a, b) => a.label.localeCompare(b.label))
533
- // Sort the options alphabetically
534
- ];
535
- var availableRegionTypes = Object.values(EnumRegions);
536
- var availableRegionOptions = mapArrayToOptions(availableRegionTypes);
537
- var paymentMethodOptions = mapArrayToOptions(
538
- Object.values(EnumPaymentMethod)
539
- );
540
- function normalizeUrl(url) {
541
- const withProtocol = !url.startsWith("http://") && !url.startsWith("https://") ? `https://${url}` : url;
542
- return withProtocol.replace(/\/+$/, "");
543
- }
544
- var licenseNiceNames = {
545
- ["pro_event" /* PRO_EVENT */]: "Pro Event",
546
- ["pro_vendor" /* PRO_VENDOR */]: "Pro Stallholder",
547
- ["standard_event" /* STANDARD_EVENT */]: "Standard Event",
548
- ["standard_vendor" /* STANDARD_VENDOR */]: "Standard Stallholder",
549
- ["pro_plus_event" /* PRO_PLUS_EVENT */]: "Pro+Ads Event",
550
- ["pro_plus_vendor" /* PRO_PLUS_VENDOR */]: "Pro+Ads Stallholder",
551
- ["standard_partner" /* STANDARD_PARTNER */]: "Partner",
552
- ["standard_affiliate" /* STANDARD_AFFILIATE */]: "Affiliate",
553
- ["standard_school" /* STANDARD_SCHOOL */]: "School"
554
- };
555
- var cluemartSocialMedia = [
556
- {
557
- link: "https://www.facebook.com/ClueMartApp",
558
- name: "facebook" /* FACEBOOK */
559
- },
560
- {
561
- link: "https://www.instagram.com/cluemart_app",
562
- name: "instagram" /* INSTAGRAM */
563
- },
564
- {
565
- link: "https://www.tiktok.com/@cluemart",
566
- name: "tiktok" /* TIKTOK */
567
- },
568
- {
569
- link: "https://www.youtube.com/@ClueMart-App-NZ",
570
- name: "youtube" /* YOUTUBE */
571
- }
572
- ];
573
- var IOS_URL = "https://apps.apple.com/nz/app/cluemart/id6747251008";
574
- var ANDROID_URL = "https://play.google.com/store/apps/details?id=com.timardex.cluemart";
575
- var DEFAULT_RESOURCES_RETURN_LIMIT = 1e3;
576
- var DEFAULT_RESOURCES_RETURN_OFFSET = 0;
577
- var CLUEMART_MAIN_DOMAIN_URL = "https://cluemart.co.nz";
578
- var rewardNiceNames = {
579
- ["mystery_joy_box" /* MYSTERY_JOY_BOX */]: {
580
- name: "Mystery Joy Box",
581
- points: 250
542
+ // src/utils/affiliate.ts
543
+ var AFFILIATE_REWARDS = {
544
+ ["NEW_EVENT_REGISTRATION" /* NEW_EVENT_REGISTRATION */]: {
545
+ description: "10 points for new event registration (one-time reward)",
546
+ value: 10
582
547
  },
583
- ["mystery_squeeze_box" /* MYSTERY_SQUEEZE_BOX */]: {
584
- name: "Mystery Squeeze Box",
585
- points: 350
548
+ ["NEW_VENDOR_REGISTRATION" /* NEW_VENDOR_REGISTRATION */]: {
549
+ description: "5 points for new vendor registration (one-time reward)",
550
+ value: 5
586
551
  },
587
- ["mystery_deluxe_box" /* MYSTERY_DELUXE_BOX */]: {
588
- name: "Mystery Deluxe Box",
589
- points: 500
552
+ ["NEW_PARTNER_REGISTRATION" /* NEW_PARTNER_REGISTRATION */]: {
553
+ description: "",
554
+ value: 0
590
555
  }
591
556
  };
592
- var PostTypeLabels = {
593
- ["market_faces" /* MARKET_FACES */]: "Market Faces",
594
- ["clue_bites" /* CLUE_BITES */]: "Clue Bites",
595
- ["play_and_win" /* PLAY_AND_WIN */]: "Play & Win"
596
- };
597
- var CM_SCHOOL_PROMO_CODE = `${PROMO_CODE_PREFIX}SCHOOL`;
598
- var CM_AFFILIATE_PROMO_CODE = `${PROMO_CODE_PREFIX}AFFILIATE`;
599
- function formatNZBankAccount(input) {
600
- const digitsOnly = input.replaceAll(/\D/g, "");
601
- const parts = [];
602
- if (digitsOnly.length > 0) parts.push(digitsOnly.slice(0, 2));
603
- if (digitsOnly.length > 2) parts.push(digitsOnly.slice(2, 6));
604
- if (digitsOnly.length > 6) parts.push(digitsOnly.slice(6, 13));
605
- if (digitsOnly.length > 13) parts.push(digitsOnly.slice(13, 15));
606
- return parts.join("-");
557
+ function createAffiliateReward(rewardType, createdAt) {
558
+ const reward = AFFILIATE_REWARDS[rewardType];
559
+ return {
560
+ createdAt,
561
+ deletedAt: null,
562
+ redeemedAt: null,
563
+ rewardDescription: reward.description,
564
+ rewardType,
565
+ rewardValue: reward.value,
566
+ updatedAt: null
567
+ };
607
568
  }
608
569
 
609
570
  // src/utils/resourceImage.ts
@@ -1889,178 +1850,8 @@ function getVendorEventRelationDateOptions(events) {
1889
1850
  function getVendorEventsEmptyMessage() {
1890
1851
  return "No events found.";
1891
1852
  }
1892
-
1893
- // src/utils/affiliate.ts
1894
- var AFFILIATE_PARTICIPANT_TYPE_LABELS = {
1895
- ["INDIVIDUAL" /* INDIVIDUAL */]: "Individual",
1896
- ["SOLE_TRADER" /* SOLE_TRADER */]: "Sole Trader",
1897
- ["COMPANY" /* COMPANY */]: "Company"
1898
- };
1899
- var AFFILIATE_REWARDS = {
1900
- ["NEW_EVENT_REGISTRATION" /* NEW_EVENT_REGISTRATION */]: {
1901
- description: "10 points for new event registration (one-time reward)",
1902
- value: 10
1903
- },
1904
- ["NEW_VENDOR_REGISTRATION" /* NEW_VENDOR_REGISTRATION */]: {
1905
- description: "5 points for new vendor registration (one-time reward)",
1906
- value: 5
1907
- },
1908
- ["ACTIVE_VENDOR_PRO_SUBSCRIPTION" /* ACTIVE_VENDOR_PRO_SUBSCRIPTION */]: {
1909
- description: "3 points for active vendor pro subscription (monthly reward)",
1910
- value: 3
1911
- },
1912
- ["ACTIVE_VENDOR_STANDARD_SUBSCRIPTION" /* ACTIVE_VENDOR_STANDARD_SUBSCRIPTION */]: {
1913
- description: "1 point for active vendor standard subscription (monthly reward)",
1914
- value: 1
1915
- },
1916
- ["ACTIVE_VENDOR_BONUS_REWARD" /* ACTIVE_VENDOR_BONUS_REWARD */]: {
1917
- description: "5 bonus points for every 10th active vendor (one-time reward)",
1918
- value: 5
1919
- },
1920
- ["ACTIVE_EVENT_WITH_VENDOR_REGISTRATIONS" /* ACTIVE_EVENT_WITH_VENDOR_REGISTRATIONS */]: {
1921
- description: "40 points for active event with vendor registrations (one-time reward)",
1922
- value: 40
1923
- }
1924
- };
1925
- function createAffiliateReward(rewardType, createdAt) {
1926
- const reward = AFFILIATE_REWARDS[rewardType];
1927
- return {
1928
- createdAt,
1929
- redeemedAt: null,
1930
- rewardDescription: reward.description,
1931
- rewardType,
1932
- rewardValue: reward.value
1933
- };
1934
- }
1935
-
1936
- // src/utils/irdNumber.ts
1937
- var PRIMARY_WEIGHTS = [3, 2, 7, 6, 5, 4, 3, 2];
1938
- var SECONDARY_WEIGHTS = [7, 4, 3, 2, 5, 2, 7, 6];
1939
- var IRD_MIN = 1e7;
1940
- var IRD_MAX = 2e8;
1941
- function calculateCheckDigit(baseDigits, weights) {
1942
- const sum = [...baseDigits].reduce(
1943
- (acc, digit, index) => acc + Number(digit) * weights[index],
1944
- 0
1945
- );
1946
- const remainder = sum % 11;
1947
- return remainder === 0 ? 0 : 11 - remainder;
1948
- }
1949
- function normalizeIrdNumber(value) {
1950
- return value.replace(/\D/g, "");
1951
- }
1952
- function formatIrdNumber(input) {
1953
- const digitsOnly = normalizeIrdNumber(input).slice(0, 9);
1954
- const parts = [];
1955
- if (digitsOnly.length > 0) parts.push(digitsOnly.slice(0, 3));
1956
- if (digitsOnly.length > 3) parts.push(digitsOnly.slice(3, 6));
1957
- if (digitsOnly.length > 6) parts.push(digitsOnly.slice(6, 9));
1958
- return parts.join("-");
1959
- }
1960
- function isValidIrdNumber(value) {
1961
- const digits = normalizeIrdNumber(value);
1962
- if (!/^\d{8,9}$/.test(digits)) {
1963
- return false;
1964
- }
1965
- const ird = Number(digits);
1966
- if (ird < IRD_MIN || ird > IRD_MAX) {
1967
- return false;
1968
- }
1969
- const padded = digits.padStart(9, "0");
1970
- const baseDigits = padded.slice(0, -1);
1971
- const checkDigit = Number(padded.slice(-1));
1972
- let calculated = calculateCheckDigit(baseDigits, PRIMARY_WEIGHTS);
1973
- if (calculated === 10) {
1974
- calculated = calculateCheckDigit(baseDigits, SECONDARY_WEIGHTS);
1975
- if (calculated === 10) {
1976
- return false;
1977
- }
1978
- }
1979
- return calculated === checkDigit;
1980
- }
1981
-
1982
- // src/utils/isTransientNetworkError.ts
1983
- var TRANSIENT_NETWORK_PATTERNS = [
1984
- /network connection was lost/i,
1985
- /network request failed/i,
1986
- /fetch failed/i,
1987
- /failed to fetch/i,
1988
- /internet connection appears to be offline/i,
1989
- // Transport-layer timeouts only — avoid generic "timeout" (backend/query timeouts).
1990
- /\b(request|connection|network)\s+timed\s+out\b/i,
1991
- /\b(connect|read|write|socket)\s+timeout\b/i,
1992
- /\bsocket\s+timed\s+out\b/i,
1993
- /\betimedout\b/i,
1994
- /\benotfound\b/i,
1995
- /\beconnreset\b/i,
1996
- /\beconnrefused\b/i
1997
- ];
1998
- function extractErrorMessage(err) {
1999
- if (err instanceof Error) return err.message;
2000
- if (typeof err === "string") return err;
2001
- if (err && typeof err === "object") {
2002
- const obj = err;
2003
- if (typeof obj.message === "string") return obj.message;
2004
- if (obj.networkError) return extractErrorMessage(obj.networkError);
2005
- try {
2006
- return JSON.stringify(err);
2007
- } catch {
2008
- return "[object]";
2009
- }
2010
- }
2011
- if (err == null) return "";
2012
- if (typeof err === "number" || typeof err === "boolean" || typeof err === "bigint") {
2013
- return String(err);
2014
- }
2015
- if (typeof err === "symbol") return err.toString();
2016
- return "";
2017
- }
2018
- function isTransientNetworkError(err) {
2019
- const message = extractErrorMessage(err);
2020
- return TRANSIENT_NETWORK_PATTERNS.some((pattern) => pattern.test(message));
2021
- }
2022
-
2023
- // src/utils/toUserFacingErrorMessage.ts
2024
- var DEFAULT_USER_FACING_ERROR = "Something went wrong. Please try again.";
2025
- var NETWORK_USER_FACING_ERROR = "Unable to connect. Please check your internet connection and try again.";
2026
- var INTERNAL_ERROR_PATTERNS = [
2027
- /connection\s*<monitor>/i,
2028
- /\bmongo/i,
2029
- /\b\d{1,3}(?:\.\d{1,3}){3}(?::\d+)?\b/,
2030
- /\beconn(?:refused|reset|aborted)\b/i,
2031
- /\betimedout\b/i,
2032
- /\benotfound\b/i,
2033
- /\bsocket hang up\b/i,
2034
- /\binternal server error\b/i,
2035
- /received status code 5\d\d/i,
2036
- /\bat\s+\S+\s+\([^)]+:\d+:\d+\)/
2037
- ];
2038
- function isInternalErrorMessage(message) {
2039
- return INTERNAL_ERROR_PATTERNS.some((pattern) => pattern.test(message));
2040
- }
2041
- function toUserFacingErrorMessage(error, fallback = DEFAULT_USER_FACING_ERROR) {
2042
- const message = (error ?? "").trim();
2043
- if (!message) return fallback;
2044
- if (isTransientNetworkError(message)) {
2045
- return NETWORK_USER_FACING_ERROR;
2046
- }
2047
- if (isInternalErrorMessage(message)) {
2048
- return fallback;
2049
- }
2050
- return message;
2051
- }
2052
- function getErrorMessage(error, fallback = DEFAULT_USER_FACING_ERROR) {
2053
- let raw;
2054
- if (error instanceof Error) {
2055
- raw = error.message;
2056
- } else if (typeof error === "string") {
2057
- raw = error;
2058
- }
2059
- return toUserFacingErrorMessage(raw, fallback);
2060
- }
2061
1853
  // Annotate the CommonJS export names for ESM import in node:
2062
1854
  0 && (module.exports = {
2063
- AFFILIATE_PARTICIPANT_TYPE_LABELS,
2064
1855
  AFFILIATE_REWARDS,
2065
1856
  ANDROID_URL,
2066
1857
  CLUEMART_MAIN_DOMAIN_URL,
@@ -2068,11 +1859,9 @@ function getErrorMessage(error, fallback = DEFAULT_USER_FACING_ERROR) {
2068
1859
  CM_SCHOOL_PROMO_CODE,
2069
1860
  DEFAULT_RESOURCES_RETURN_LIMIT,
2070
1861
  DEFAULT_RESOURCES_RETURN_OFFSET,
2071
- DEFAULT_USER_FACING_ERROR,
2072
1862
  EVENT_DATE_STATUS_PERIOD_MAP,
2073
1863
  IOS_URL,
2074
1864
  KNOWN_EVENT_SCHEDULE_STATUSES,
2075
- NETWORK_USER_FACING_ERROR,
2076
1865
  PostTypeLabels,
2077
1866
  SCHOOL_MAX_STUDENT_COUNT,
2078
1867
  SCHOOL_MIN_STUDENT_COUNT,
@@ -2097,14 +1886,11 @@ function getErrorMessage(error, fallback = DEFAULT_USER_FACING_ERROR) {
2097
1886
  filterVendorEventsBySelectedDate,
2098
1887
  findEventDateTimeByIsoDate,
2099
1888
  formatDate,
2100
- formatIrdNumber,
2101
- formatNZBankAccount,
2102
1889
  formatTimestamp,
2103
1890
  fromCalendarIsoDate,
2104
1891
  futureTimePeriods,
2105
1892
  getAllowedEventDateStatuses,
2106
1893
  getCurrentAndFutureDates,
2107
- getErrorMessage,
2108
1894
  getEventCalendarIsoDates,
2109
1895
  getEventDatesWithStallholders,
2110
1896
  getEventScheduleStatusLabel,
@@ -2122,16 +1908,12 @@ function getErrorMessage(error, fallback = DEFAULT_USER_FACING_ERROR) {
2122
1908
  getVendorEventsEmptyMessage,
2123
1909
  hasMatchingEventDate,
2124
1910
  isFutureDatesBeforeThreshold,
2125
- isInternalErrorMessage,
2126
1911
  isIsoDateString,
2127
1912
  isResourceImageActive,
2128
- isTransientNetworkError,
2129
- isValidIrdNumber,
2130
1913
  licenseNiceNames,
2131
1914
  mapArrayToOptions,
2132
1915
  matchesCategory,
2133
1916
  matchesSelectedDate,
2134
- normalizeIrdNumber,
2135
1917
  normalizeResourceImage,
2136
1918
  normalizeUrl,
2137
1919
  nzStartOfDay,
@@ -2147,7 +1929,6 @@ function getErrorMessage(error, fallback = DEFAULT_USER_FACING_ERROR) {
2147
1929
  timeFormat,
2148
1930
  toCalendarIsoDate,
2149
1931
  toNZTime,
2150
- toUserFacingErrorMessage,
2151
1932
  truncateText
2152
1933
  });
2153
1934
  //# sourceMappingURL=index.cjs.map