@timardex/cluemart-shared 1.5.493 → 1.5.495

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 (49) hide show
  1. package/dist/{chunk-USQKKCIA.mjs → chunk-534WN2SR.mjs} +7 -3
  2. package/dist/chunk-534WN2SR.mjs.map +1 -0
  3. package/dist/{chunk-KYDS4REE.mjs → chunk-F4IWHY4O.mjs} +98 -18
  4. package/dist/chunk-F4IWHY4O.mjs.map +1 -0
  5. package/dist/{chunk-GSNFQJBZ.mjs → chunk-KPO6ZYQ4.mjs} +2 -95
  6. package/dist/chunk-KPO6ZYQ4.mjs.map +1 -0
  7. package/dist/chunk-QG5DPPZI.mjs +96 -0
  8. package/dist/chunk-QG5DPPZI.mjs.map +1 -0
  9. package/dist/{chunk-4LT5GOOP.mjs → chunk-SKWWATIR.mjs} +3 -3
  10. package/dist/enums/index.cjs +6 -2
  11. package/dist/enums/index.cjs.map +1 -1
  12. package/dist/enums/index.d.mts +7 -3
  13. package/dist/enums/index.d.ts +7 -3
  14. package/dist/enums/index.mjs +1 -1
  15. package/dist/formFields/index.cjs +11 -6
  16. package/dist/formFields/index.cjs.map +1 -1
  17. package/dist/formFields/index.mjs +4 -3
  18. package/dist/game-DTrJRy_s.d.mts +120 -0
  19. package/dist/game-lvz2AUuu.d.ts +120 -0
  20. package/dist/graphql/index.d.mts +2 -1
  21. package/dist/graphql/index.d.ts +2 -1
  22. package/dist/graphql/index.mjs +1 -1
  23. package/dist/hooks/index.cjs +24 -19
  24. package/dist/hooks/index.cjs.map +1 -1
  25. package/dist/hooks/index.d.mts +2 -1
  26. package/dist/hooks/index.d.ts +2 -1
  27. package/dist/hooks/index.mjs +5 -4
  28. package/dist/hooks/index.mjs.map +1 -1
  29. package/dist/index.cjs +205 -120
  30. package/dist/index.cjs.map +1 -1
  31. package/dist/index.d.mts +17 -4
  32. package/dist/index.d.ts +17 -4
  33. package/dist/index.mjs +203 -120
  34. package/dist/index.mjs.map +1 -1
  35. package/dist/{post-C67Q-sXR.d.ts → post-DXOToXeT.d.ts} +3 -119
  36. package/dist/{post-C9rtHepe.d.mts → post-wptsHKVN.d.mts} +3 -119
  37. package/dist/types/index.d.mts +2 -1
  38. package/dist/types/index.d.ts +2 -1
  39. package/dist/types/index.mjs +6 -4
  40. package/dist/utils/index.cjs +174 -15
  41. package/dist/utils/index.cjs.map +1 -1
  42. package/dist/utils/index.d.mts +11 -1
  43. package/dist/utils/index.d.ts +11 -1
  44. package/dist/utils/index.mjs +7 -2
  45. package/package.json +1 -1
  46. package/dist/chunk-GSNFQJBZ.mjs.map +0 -1
  47. package/dist/chunk-KYDS4REE.mjs.map +0 -1
  48. package/dist/chunk-USQKKCIA.mjs.map +0 -1
  49. /package/dist/{chunk-4LT5GOOP.mjs.map → chunk-SKWWATIR.mjs.map} +0 -0
package/dist/index.cjs CHANGED
@@ -77,6 +77,7 @@ __export(index_exports, {
77
77
  categoryColors: () => categoryColors,
78
78
  cluemartSocialMedia: () => cluemartSocialMedia,
79
79
  companyContactFields: () => companyContactFields,
80
+ computeDailyClueState: () => computeDailyClueState,
80
81
  contactUsFields: () => contactUsFields,
81
82
  darkColors: () => darkColors,
82
83
  dateFormat: () => dateFormat,
@@ -120,6 +121,7 @@ __export(index_exports, {
120
121
  requestPasswordResetFields: () => requestPasswordResetFields,
121
122
  requirementsOptions: () => requirementsOptions,
122
123
  resetPasswordFields: () => resetPasswordFields,
124
+ seededShuffle: () => seededShuffle,
123
125
  socialMediaFields: () => socialMediaFields,
124
126
  sortDatesChronologically: () => sortDatesChronologically,
125
127
  stallTypeOptions: () => stallTypeOptions,
@@ -419,9 +421,13 @@ var EnumNotificationResourceType = /* @__PURE__ */ ((EnumNotificationResourceTyp
419
421
  EnumNotificationResourceType2["DEACTIVATED_EVENT"] = "deactivated_event";
420
422
  EnumNotificationResourceType2["DEACTIVATED_PARTNER"] = "deactivated_partner";
421
423
  EnumNotificationResourceType2["DEACTIVATED_VENDOR"] = "deactivated_vendor";
424
+ EnumNotificationResourceType2["DOWNGRADED_EVENT"] = "downgraded_event";
425
+ EnumNotificationResourceType2["DOWNGRADED_PARTNER"] = "downgraded_partner";
426
+ EnumNotificationResourceType2["DOWNGRADED_VENDOR"] = "downgraded_vendor";
422
427
  EnumNotificationResourceType2["DECLINED_EVENT"] = "declined_event";
423
428
  EnumNotificationResourceType2["DECLINED_PARTNER"] = "declined_partner";
424
429
  EnumNotificationResourceType2["DECLINED_VENDOR"] = "declined_vendor";
430
+ EnumNotificationResourceType2["DAILY_CLUE_LETTER_AVAILABLE"] = "daily_clue_letter_available";
425
431
  EnumNotificationResourceType2["EVENT_INVITE_VENDOR"] = "event_invite_vendor" /* EVENT_INVITE_VENDOR */;
426
432
  EnumNotificationResourceType2["EVENT_STARTING_SOON"] = "event_starting_soon";
427
433
  EnumNotificationResourceType2["EXPIRATION_REMINDER_EVENT"] = "expiration_reminder_event";
@@ -433,11 +439,11 @@ var EnumNotificationResourceType = /* @__PURE__ */ ((EnumNotificationResourceTyp
433
439
  return EnumNotificationResourceType2;
434
440
  })(EnumNotificationResourceType || {});
435
441
  var EnumNotificationType = /* @__PURE__ */ ((EnumNotificationType2) => {
442
+ EnumNotificationType2["CHAT"] = "chat";
436
443
  EnumNotificationType2["EVENT"] = "event" /* EVENT */;
437
- EnumNotificationType2["VENDOR"] = "vendor" /* VENDOR */;
438
444
  EnumNotificationType2["RELATION"] = "relation";
439
- EnumNotificationType2["CHAT"] = "chat";
440
445
  EnumNotificationType2["SYSTEM"] = "system";
446
+ EnumNotificationType2["VENDOR"] = "vendor" /* VENDOR */;
441
447
  return EnumNotificationType2;
442
448
  })(EnumNotificationType || {});
443
449
  var EnumRegions = /* @__PURE__ */ ((EnumRegions2) => {
@@ -722,25 +728,192 @@ var priceUnits = [
722
728
  { label: "Half dozen", value: "HALF_DOZEN" }
723
729
  ];
724
730
 
725
- // src/utils/index.ts
731
+ // src/utils/dailyClueGame.ts
726
732
  var import_dayjs = __toESM(require("dayjs"));
733
+ var import_utc = __toESM(require("dayjs/plugin/utc"));
734
+
735
+ // src/types/game.ts
736
+ var gameScreenIdentifierList = [
737
+ {
738
+ clue: "Where your actions turn into a timeline.",
739
+ id: "activities"
740
+ },
741
+ {
742
+ clue: "Where conversations happen without speaking.",
743
+ id: "chat"
744
+ },
745
+ {
746
+ clue: "The place to redefine who you are.",
747
+ id: "edit-profile"
748
+ },
749
+ {
750
+ clue: "A single moment worth showing up for.",
751
+ id: "event"
752
+ },
753
+ {
754
+ clue: "What\u2019s happening around you, right now.",
755
+ id: "events-near-me"
756
+ },
757
+ {
758
+ clue: "A collection of things worth attending.",
759
+ id: "events"
760
+ },
761
+ {
762
+ clue: "What\u2019s happening in a wider area\u2014not just nearby.",
763
+ id: "events/region"
764
+ },
765
+ {
766
+ clue: "Where fun becomes a challenge.",
767
+ id: "games"
768
+ },
769
+ {
770
+ clue: "Your starting point for everything.",
771
+ id: "home"
772
+ },
773
+ {
774
+ clue: "Where the app taps you on the shoulder.",
775
+ id: "notifications"
776
+ },
777
+ {
778
+ clue: "Where you fine-tune your experience.",
779
+ id: "options"
780
+ },
781
+ {
782
+ clue: "A single collaborator in the ecosystem.",
783
+ id: "partner"
784
+ },
785
+ {
786
+ clue: "The network behind the scenes.",
787
+ id: "partners"
788
+ },
789
+ {
790
+ clue: "Where you share something with everyone.",
791
+ id: "post"
792
+ },
793
+ {
794
+ clue: "Your identity, on display.",
795
+ id: "profile"
796
+ },
797
+ {
798
+ clue: "One provider offering something valuable.",
799
+ id: "vendor"
800
+ },
801
+ {
802
+ clue: "A marketplace of providers.",
803
+ id: "vendors"
804
+ },
805
+ {
806
+ clue: "People who stopped by to see you.",
807
+ id: "visitors"
808
+ }
809
+ ];
810
+ var EnumGameType = /* @__PURE__ */ ((EnumGameType2) => {
811
+ EnumGameType2["DAILY_CLUE"] = "dailyClue";
812
+ return EnumGameType2;
813
+ })(EnumGameType || {});
814
+ var gameTypeToDisplayName = {
815
+ ["dailyClue" /* DAILY_CLUE */]: "Daily Clue"
816
+ };
817
+ var EnumGameStatus = /* @__PURE__ */ ((EnumGameStatus2) => {
818
+ EnumGameStatus2["GAME_COMPLETED"] = "GAME_COMPLETED";
819
+ EnumGameStatus2["GAME_LEFT"] = "GAME_LEFT";
820
+ EnumGameStatus2["GAME_IN_PROGRESS"] = "GAME_IN_PROGRESS";
821
+ return EnumGameStatus2;
822
+ })(EnumGameStatus || {});
823
+
824
+ // src/utils/dailyClueGame.ts
825
+ import_dayjs.default.extend(import_utc.default);
826
+ function createSeededRng(seed) {
827
+ let t = seed >>> 0;
828
+ return function random() {
829
+ t += 1831565813;
830
+ let x = t;
831
+ x = Math.imul(x ^ x >>> 15, x | 1);
832
+ x ^= x + Math.imul(x ^ x >>> 7, x | 61);
833
+ return ((x ^ x >>> 14) >>> 0) / 4294967296;
834
+ };
835
+ }
836
+ function hashStringToNumber(seed) {
837
+ let hash = 2166136261;
838
+ for (let i = 0; i < seed.length; i++) {
839
+ hash ^= seed.codePointAt(i) ?? 0;
840
+ hash = Math.imul(hash, 16777619);
841
+ }
842
+ return hash >>> 0;
843
+ }
844
+ function seededShuffle(array6, seed) {
845
+ const rng = createSeededRng(hashStringToNumber(seed));
846
+ const result = [...array6];
847
+ for (let i = result.length - 1; i > 0; i--) {
848
+ const j = Math.floor(rng() * (i + 1));
849
+ [result[i], result[j]] = [result[j], result[i]];
850
+ }
851
+ return result;
852
+ }
853
+ function getDayIndex(startDate) {
854
+ return (0, import_dayjs.default)().utc().startOf("day").diff((0, import_dayjs.default)(startDate).utc().startOf("day"), "day");
855
+ }
856
+ function computeDailyClueState(dailyClue) {
857
+ const { startDate, endDate } = dailyClue.gameFields.gameDate;
858
+ const { shuffled, collected } = dailyClue.letterInfo;
859
+ const shuffledPlacements = seededShuffle(
860
+ gameScreenIdentifierList,
861
+ startDate.toISOString()
862
+ );
863
+ const today = (0, import_dayjs.default)().utc().startOf("day");
864
+ const start = (0, import_dayjs.default)(startDate).utc().startOf("day");
865
+ const end = (0, import_dayjs.default)(endDate).utc().startOf("day");
866
+ if (today.isBefore(start)) {
867
+ return null;
868
+ }
869
+ if (today.isAfter(end)) {
870
+ return null;
871
+ }
872
+ const index = getDayIndex(startDate);
873
+ if (index < 0 || index >= shuffled.length) return null;
874
+ if (collected?.includes(shuffled[index])) {
875
+ return null;
876
+ }
877
+ if (today.isAfter(end)) {
878
+ return {
879
+ gameHistory: {
880
+ gameDate: dailyClue.gameFields.gameDate,
881
+ gameStatus: "GAME_COMPLETED" /* GAME_COMPLETED */,
882
+ gameType: dailyClue.gameFields.gameType,
883
+ pointsEarned: dailyClue.points
884
+ },
885
+ todaysClue: null,
886
+ todaysLetter: null,
887
+ todaysPlacement: null
888
+ };
889
+ }
890
+ return {
891
+ gameHistory: null,
892
+ todaysClue: shuffledPlacements[index].clue,
893
+ todaysLetter: shuffled[index],
894
+ todaysPlacement: shuffledPlacements[index].id
895
+ };
896
+ }
897
+
898
+ // src/utils/index.ts
899
+ var import_dayjs2 = __toESM(require("dayjs"));
727
900
  var import_customParseFormat = __toESM(require("dayjs/plugin/customParseFormat.js"));
728
901
  var import_isSameOrAfter = __toESM(require("dayjs/plugin/isSameOrAfter.js"));
729
902
  var import_timezone = __toESM(require("dayjs/plugin/timezone.js"));
730
- var import_utc = __toESM(require("dayjs/plugin/utc.js"));
903
+ var import_utc2 = __toESM(require("dayjs/plugin/utc.js"));
731
904
  var dateFormat = "DD-MM-YYYY";
732
905
  var timeFormat = "HH:mm";
733
- import_dayjs.default.extend(import_customParseFormat.default);
734
- import_dayjs.default.extend(import_utc.default);
735
- import_dayjs.default.extend(import_timezone.default);
736
- import_dayjs.default.extend(import_isSameOrAfter.default);
906
+ import_dayjs2.default.extend(import_customParseFormat.default);
907
+ import_dayjs2.default.extend(import_utc2.default);
908
+ import_dayjs2.default.extend(import_timezone.default);
909
+ import_dayjs2.default.extend(import_isSameOrAfter.default);
737
910
  var NZ_TZ = "Pacific/Auckland";
738
911
  function toNZTime(date3) {
739
- return (0, import_dayjs.default)(date3).tz(NZ_TZ).format();
912
+ return (0, import_dayjs2.default)(date3).tz(NZ_TZ).format();
740
913
  }
741
914
  var formatDate = (dateStr, display = "datetime", timeStr) => {
742
915
  const dateTimeStr = timeStr ? `${dateStr} ${timeStr}` : dateStr;
743
- const dateTime = timeStr ? (0, import_dayjs.default)(dateTimeStr, `${dateFormat} ${timeFormat}`) : (0, import_dayjs.default)(dateStr, dateFormat);
916
+ const dateTime = timeStr ? (0, import_dayjs2.default)(dateTimeStr, `${dateFormat} ${timeFormat}`) : (0, import_dayjs2.default)(dateStr, dateFormat);
744
917
  const formattedDate = dateTime.format("dddd, D MMMM, YYYY");
745
918
  const formattedTime = dateTime.format("h:mm a");
746
919
  switch (display) {
@@ -755,9 +928,9 @@ var formatDate = (dateStr, display = "datetime", timeStr) => {
755
928
  }
756
929
  };
757
930
  var getCurrentAndFutureDates = (dates) => {
758
- const now = (0, import_dayjs.default)();
931
+ const now = (0, import_dayjs2.default)();
759
932
  return dates.filter((dateObj) => {
760
- const dateTime = (0, import_dayjs.default)(
933
+ const dateTime = (0, import_dayjs2.default)(
761
934
  `${dateObj.startDate} ${dateObj.startTime}`,
762
935
  `${dateFormat} ${timeFormat}`
763
936
  );
@@ -765,16 +938,15 @@ var getCurrentAndFutureDates = (dates) => {
765
938
  });
766
939
  };
767
940
  var isFutureDatesBeforeThreshold = (date3, minHoursFromNow) => {
768
- const threshold = minHoursFromNow ? (0, import_dayjs.default)().add(minHoursFromNow, "hour") : (0, import_dayjs.default)().startOf("day");
769
- const dateTime = (0, import_dayjs.default)(
941
+ const threshold = minHoursFromNow ? (0, import_dayjs2.default)().add(minHoursFromNow, "hour") : (0, import_dayjs2.default)().startOf("day");
942
+ const dateTime = (0, import_dayjs2.default)(
770
943
  `${date3.startDate} ${date3.startTime}`,
771
944
  `${dateFormat} ${timeFormat}`
772
945
  );
773
946
  return dateTime.isSameOrAfter(threshold);
774
947
  };
775
948
  var formatTimestamp = (timestamp) => {
776
- const formattedDate = (0, import_dayjs.default)(timestamp).tz("Pacific/Auckland").format(dateFormat);
777
- const formattedTime = (0, import_dayjs.default)(timestamp).tz("Pacific/Auckland").format(timeFormat);
949
+ const formattedDate = (0, import_dayjs2.default)(timestamp).tz("Pacific/Auckland").format(dateFormat);
778
950
  return formatDate(formattedDate, "date");
779
951
  };
780
952
  var isIsoDateString = (value) => {
@@ -825,8 +997,8 @@ function sortDatesChronologically(dates) {
825
997
  }
826
998
  return [...dates].sort((a, b) => {
827
999
  const dateTimeFormat = `${dateFormat} ${timeFormat}`;
828
- const dateA = (0, import_dayjs.default)(`${a.startDate} ${a.startTime}`, dateTimeFormat);
829
- const dateB = (0, import_dayjs.default)(`${b.startDate} ${b.startTime}`, dateTimeFormat);
1000
+ const dateA = (0, import_dayjs2.default)(`${a.startDate} ${a.startTime}`, dateTimeFormat);
1001
+ const dateB = (0, import_dayjs2.default)(`${b.startDate} ${b.startTime}`, dateTimeFormat);
830
1002
  return dateA.valueOf() - dateB.valueOf();
831
1003
  });
832
1004
  }
@@ -6313,7 +6485,7 @@ var React = __toESM(require("react"));
6313
6485
  var import_react_hook_form = require("react-hook-form");
6314
6486
 
6315
6487
  // src/yupSchema/global.ts
6316
- var import_dayjs2 = __toESM(require("dayjs"));
6488
+ var import_dayjs3 = __toESM(require("dayjs"));
6317
6489
  var import_customParseFormat2 = __toESM(require("dayjs/plugin/customParseFormat.js"));
6318
6490
  var import_isSameOrAfter2 = __toESM(require("dayjs/plugin/isSameOrAfter.js"));
6319
6491
  var yup = __toESM(require("yup"));
@@ -6342,8 +6514,8 @@ var noLeadingZeros = (fieldName, options = {}) => {
6342
6514
  return true;
6343
6515
  };
6344
6516
  };
6345
- import_dayjs2.default.extend(import_isSameOrAfter2.default);
6346
- import_dayjs2.default.extend(import_customParseFormat2.default);
6517
+ import_dayjs3.default.extend(import_isSameOrAfter2.default);
6518
+ import_dayjs3.default.extend(import_customParseFormat2.default);
6347
6519
  var emailRequiredSchema = yup.string().email("Invalid email address").required("Email is required").label("Email").transform(
6348
6520
  (value) => typeof value === "string" ? value.trim().toLowerCase() : value
6349
6521
  );
@@ -6374,12 +6546,12 @@ var contactDetailsSchema = yup.object({
6374
6546
  landlinePhone: landlinePhoneSchema
6375
6547
  }).nullable().default(void 0);
6376
6548
  var endDateNotInPastTest = yup.string().test("not-in-past", "End date cannot be in the past", (value) => {
6377
- const now = (0, import_dayjs2.default)();
6378
- return value ? (0, import_dayjs2.default)(value, dateFormat, true).isSameOrAfter(now, "day") : false;
6549
+ const now = (0, import_dayjs3.default)();
6550
+ return value ? (0, import_dayjs3.default)(value, dateFormat, true).isSameOrAfter(now, "day") : false;
6379
6551
  });
6380
6552
  var startDateNotInPastTest = yup.string().test("not-in-past", "Start date cannot be in the past", (value) => {
6381
- const now = (0, import_dayjs2.default)();
6382
- return value ? (0, import_dayjs2.default)(value, dateFormat, true).isSameOrAfter(now, "day") : false;
6553
+ const now = (0, import_dayjs3.default)();
6554
+ return value ? (0, import_dayjs3.default)(value, dateFormat, true).isSameOrAfter(now, "day") : false;
6383
6555
  });
6384
6556
  var endDateAfterStartDateTest = yup.string().test(
6385
6557
  "end-after-start",
@@ -6387,8 +6559,8 @@ var endDateAfterStartDateTest = yup.string().test(
6387
6559
  function(value) {
6388
6560
  const { startDate } = this.parent;
6389
6561
  if (!startDate || !value) return false;
6390
- return (0, import_dayjs2.default)(value, dateFormat, true).isSameOrAfter(
6391
- (0, import_dayjs2.default)(startDate, dateFormat, true),
6562
+ return (0, import_dayjs3.default)(value, dateFormat, true).isSameOrAfter(
6563
+ (0, import_dayjs3.default)(startDate, dateFormat, true),
6392
6564
  "day"
6393
6565
  );
6394
6566
  }
@@ -6399,12 +6571,12 @@ var endTimeMustBeAfterStartTimeTest = yup.string().test(
6399
6571
  function(value) {
6400
6572
  const { startDate, endDate, startTime } = this.parent;
6401
6573
  if (!startDate || !endDate || !startTime || !value) return false;
6402
- const startDateTime = (0, import_dayjs2.default)(
6574
+ const startDateTime = (0, import_dayjs3.default)(
6403
6575
  `${startDate} ${startTime}`,
6404
6576
  `${dateFormat} ${timeFormat}`,
6405
6577
  true
6406
6578
  );
6407
- const endDateTime = (0, import_dayjs2.default)(
6579
+ const endDateTime = (0, import_dayjs3.default)(
6408
6580
  `${endDate} ${value}`,
6409
6581
  `${dateFormat} ${timeFormat}`,
6410
6582
  true
@@ -6416,10 +6588,10 @@ var startTimeCannotBeInPastTest = yup.string().test(
6416
6588
  "valid-start-time",
6417
6589
  "Start time cannot be in the past",
6418
6590
  function(value) {
6419
- const now = (0, import_dayjs2.default)();
6591
+ const now = (0, import_dayjs3.default)();
6420
6592
  const { startDate } = this.parent;
6421
6593
  if (!startDate || !value) return false;
6422
- const startDateTime = (0, import_dayjs2.default)(
6594
+ const startDateTime = (0, import_dayjs3.default)(
6423
6595
  `${startDate} ${value}`,
6424
6596
  `${dateFormat} ${timeFormat}`,
6425
6597
  true
@@ -8025,95 +8197,6 @@ var EnumActivity = /* @__PURE__ */ ((EnumActivity2) => {
8025
8197
  EnumActivity2["VIEW"] = "VIEW";
8026
8198
  return EnumActivity2;
8027
8199
  })(EnumActivity || {});
8028
-
8029
- // src/types/game.ts
8030
- var gameScreenIdentifierList = [
8031
- {
8032
- clue: "Where your actions turn into a timeline.",
8033
- id: "activities"
8034
- },
8035
- {
8036
- clue: "Where conversations happen without speaking.",
8037
- id: "chat"
8038
- },
8039
- {
8040
- clue: "The place to redefine who you are.",
8041
- id: "edit-profile"
8042
- },
8043
- {
8044
- clue: "A single moment worth showing up for.",
8045
- id: "event"
8046
- },
8047
- {
8048
- clue: "What\u2019s happening around you, right now.",
8049
- id: "events-near-me"
8050
- },
8051
- {
8052
- clue: "A collection of things worth attending.",
8053
- id: "events"
8054
- },
8055
- {
8056
- clue: "What\u2019s happening in a wider area\u2014not just nearby.",
8057
- id: "events/region"
8058
- },
8059
- {
8060
- clue: "Where fun becomes a challenge.",
8061
- id: "games"
8062
- },
8063
- {
8064
- clue: "Your starting point for everything.",
8065
- id: "home"
8066
- },
8067
- {
8068
- clue: "Where the app taps you on the shoulder.",
8069
- id: "notifications"
8070
- },
8071
- {
8072
- clue: "Where you fine-tune your experience.",
8073
- id: "options"
8074
- },
8075
- {
8076
- clue: "A single collaborator in the ecosystem.",
8077
- id: "partner"
8078
- },
8079
- {
8080
- clue: "The network behind the scenes.",
8081
- id: "partners"
8082
- },
8083
- {
8084
- clue: "Where you share something with everyone.",
8085
- id: "post"
8086
- },
8087
- {
8088
- clue: "Your identity, on display.",
8089
- id: "profile"
8090
- },
8091
- {
8092
- clue: "One provider offering something valuable.",
8093
- id: "vendor"
8094
- },
8095
- {
8096
- clue: "A marketplace of providers.",
8097
- id: "vendors"
8098
- },
8099
- {
8100
- clue: "People who stopped by to see you.",
8101
- id: "visitors"
8102
- }
8103
- ];
8104
- var EnumGameType = /* @__PURE__ */ ((EnumGameType2) => {
8105
- EnumGameType2["DAILY_CLUE"] = "dailyClue";
8106
- return EnumGameType2;
8107
- })(EnumGameType || {});
8108
- var gameTypeToDisplayName = {
8109
- ["dailyClue" /* DAILY_CLUE */]: "Daily Clue"
8110
- };
8111
- var EnumGameStatus = /* @__PURE__ */ ((EnumGameStatus2) => {
8112
- EnumGameStatus2["GAME_COMPLETED"] = "GAME_COMPLETED";
8113
- EnumGameStatus2["GAME_LEFT"] = "GAME_LEFT";
8114
- EnumGameStatus2["GAME_IN_PROGRESS"] = "GAME_IN_PROGRESS";
8115
- return EnumGameStatus2;
8116
- })(EnumGameStatus || {});
8117
8200
  // Annotate the CommonJS export names for ESM import in node:
8118
8201
  0 && (module.exports = {
8119
8202
  ANDROID_URL,
@@ -8163,6 +8246,7 @@ var EnumGameStatus = /* @__PURE__ */ ((EnumGameStatus2) => {
8163
8246
  categoryColors,
8164
8247
  cluemartSocialMedia,
8165
8248
  companyContactFields,
8249
+ computeDailyClueState,
8166
8250
  contactUsFields,
8167
8251
  darkColors,
8168
8252
  dateFormat,
@@ -8206,6 +8290,7 @@ var EnumGameStatus = /* @__PURE__ */ ((EnumGameStatus2) => {
8206
8290
  requestPasswordResetFields,
8207
8291
  requirementsOptions,
8208
8292
  resetPasswordFields,
8293
+ seededShuffle,
8209
8294
  socialMediaFields,
8210
8295
  sortDatesChronologically,
8211
8296
  stallTypeOptions,