@timardex/cluemart-shared 1.5.740 → 1.5.742

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 (59) hide show
  1. package/dist/{ad-CqfSmtG_.d.ts → ad-DTOtubs3.d.ts} +1 -1
  2. package/dist/{ad-sgD-lSbO.d.mts → ad-DpwV6VZX.d.mts} +1 -1
  3. package/dist/{chunk-6OBMKN7F.mjs → chunk-64ZADXXH.mjs} +2 -2
  4. package/dist/{chunk-XWFE6U3E.mjs → chunk-K5OWNJY5.mjs} +131 -119
  5. package/dist/chunk-K5OWNJY5.mjs.map +1 -0
  6. package/dist/{chunk-6YISZ3OD.mjs → chunk-KXQLOILF.mjs} +2 -2
  7. package/dist/{chunk-7VNXO63T.mjs → chunk-LNIT5OS3.mjs} +1 -1
  8. package/dist/chunk-LNIT5OS3.mjs.map +1 -0
  9. package/dist/{chunk-3AI2ROPT.mjs → chunk-TIXEG66V.mjs} +19 -1
  10. package/dist/chunk-TIXEG66V.mjs.map +1 -0
  11. package/dist/{contactUs-DA3p41Uq.d.ts → contactUs-BK5MKYPx.d.ts} +1 -1
  12. package/dist/{contactUs-B6lQQq-x.d.mts → contactUs-CRypzI-A.d.mts} +1 -1
  13. package/dist/formFields/index.cjs +28 -4
  14. package/dist/formFields/index.cjs.map +1 -1
  15. package/dist/formFields/index.d.mts +1 -1
  16. package/dist/formFields/index.d.ts +1 -1
  17. package/dist/formFields/index.mjs +3 -3
  18. package/dist/{global-BEUzBSyY.d.mts → global-q9JjONd1.d.mts} +280 -1
  19. package/dist/{global-585slmSH.d.ts → global-vWzQNI8w.d.ts} +280 -1
  20. package/dist/graphql/index.cjs +18 -0
  21. package/dist/graphql/index.cjs.map +1 -1
  22. package/dist/graphql/index.d.mts +3 -4
  23. package/dist/graphql/index.d.ts +3 -4
  24. package/dist/graphql/index.mjs +1 -1
  25. package/dist/hooks/index.cjs +34 -6
  26. package/dist/hooks/index.cjs.map +1 -1
  27. package/dist/hooks/index.d.mts +3 -4
  28. package/dist/hooks/index.d.ts +3 -4
  29. package/dist/hooks/index.mjs +5 -5
  30. package/dist/index.cjs +171 -141
  31. package/dist/index.cjs.map +1 -1
  32. package/dist/index.d.mts +922 -914
  33. package/dist/index.d.ts +922 -914
  34. package/dist/index.mjs +170 -141
  35. package/dist/index.mjs.map +1 -1
  36. package/dist/{resourceActivities-CZqXBve8.d.mts → resourceActivities-CpjJeH23.d.mts} +1 -1
  37. package/dist/{resourceActivities-CjJdhVR7.d.ts → resourceActivities-DtxRUlrT.d.ts} +1 -1
  38. package/dist/sharing/index.cjs +82 -58
  39. package/dist/sharing/index.cjs.map +1 -1
  40. package/dist/sharing/index.d.mts +1 -1
  41. package/dist/sharing/index.d.ts +1 -1
  42. package/dist/sharing/index.mjs +3 -3
  43. package/dist/types/index.cjs.map +1 -1
  44. package/dist/types/index.d.mts +5 -6
  45. package/dist/types/index.d.ts +5 -6
  46. package/dist/types/index.mjs +1 -1
  47. package/dist/utils/index.cjs +167 -141
  48. package/dist/utils/index.cjs.map +1 -1
  49. package/dist/utils/index.d.mts +6 -3
  50. package/dist/utils/index.d.ts +6 -3
  51. package/dist/utils/index.mjs +4 -2
  52. package/package.json +1 -1
  53. package/dist/chunk-3AI2ROPT.mjs.map +0 -1
  54. package/dist/chunk-7VNXO63T.mjs.map +0 -1
  55. package/dist/chunk-XWFE6U3E.mjs.map +0 -1
  56. package/dist/post-CdLrXuH1.d.mts +0 -279
  57. package/dist/post-D6n4Vszs.d.ts +0 -279
  58. /package/dist/{chunk-6OBMKN7F.mjs.map → chunk-64ZADXXH.mjs.map} +0 -0
  59. /package/dist/{chunk-6YISZ3OD.mjs.map → chunk-KXQLOILF.mjs.map} +0 -0
package/dist/index.mjs CHANGED
@@ -553,147 +553,6 @@ import customParseFormat from "dayjs/plugin/customParseFormat.js";
553
553
  import isSameOrAfter from "dayjs/plugin/isSameOrAfter.js";
554
554
  import timezone from "dayjs/plugin/timezone.js";
555
555
  import utc from "dayjs/plugin/utc.js";
556
- var dateFormat = "DD-MM-YYYY";
557
- var timeFormat = "HH:mm";
558
- dayjs.extend(customParseFormat);
559
- dayjs.extend(utc);
560
- dayjs.extend(timezone);
561
- dayjs.extend(isSameOrAfter);
562
- var NZ_TZ = "Pacific/Auckland";
563
- function toNZTime(date) {
564
- return date ? dayjs(date).tz(NZ_TZ) : dayjs().tz(NZ_TZ);
565
- }
566
- function nzStartOfDay(input) {
567
- if (input == null) {
568
- return dayjs().tz(NZ_TZ).startOf("day");
569
- }
570
- return dayjs.tz(input, NZ_TZ).startOf("day");
571
- }
572
- var formatDate = (dateStr, display = "datetime", timeStr) => {
573
- const dateTimeStr = timeStr ? `${dateStr} ${timeStr}` : dateStr;
574
- const dateTime = timeStr ? dayjs(dateTimeStr, `${dateFormat} ${timeFormat}`) : dayjs(dateStr, dateFormat);
575
- const formattedDate = dateTime.format("dddd, D MMMM, YYYY");
576
- const formattedTime = dateTime.format("h:mm a");
577
- switch (display) {
578
- case "date":
579
- return formattedDate;
580
- case "time":
581
- return formattedTime;
582
- case "datetime":
583
- return `${formattedDate} at ${formattedTime}`;
584
- default:
585
- return formattedDate;
586
- }
587
- };
588
- var getCurrentAndFutureDates = (dates) => {
589
- const now = dayjs();
590
- return dates.filter((dateObj) => {
591
- const dateTime = dayjs(
592
- `${dateObj.startDate} ${dateObj.startTime}`,
593
- `${dateFormat} ${timeFormat}`
594
- );
595
- return dateTime.isSameOrAfter(now);
596
- });
597
- };
598
- var isFutureDatesBeforeThreshold = (date, minHoursFromNow) => {
599
- const threshold = minHoursFromNow ? dayjs().add(minHoursFromNow, "hour") : dayjs().startOf("day");
600
- const dateTime = dayjs(
601
- `${date.startDate} ${date.startTime}`,
602
- `${dateFormat} ${timeFormat}`
603
- );
604
- return dateTime.isSameOrAfter(threshold);
605
- };
606
- var formatTimestamp = (timestamp) => {
607
- const formattedDate = toNZTime(timestamp).format(dateFormat);
608
- return formatDate(formattedDate, "date");
609
- };
610
- var isIsoDateString = (value) => {
611
- return typeof value === "string" && !isNaN(Date.parse(value));
612
- };
613
- function sortDatesChronologically(dates) {
614
- if (!dates || !dates.length) {
615
- return [];
616
- }
617
- return [...dates].sort((a, b) => {
618
- const dateTimeFormat = `${dateFormat} ${timeFormat}`;
619
- const dateA = dayjs(`${a.startDate} ${a.startTime}`, dateTimeFormat);
620
- const dateB = dayjs(`${b.startDate} ${b.startTime}`, dateTimeFormat);
621
- return dateA.valueOf() - dateB.valueOf();
622
- });
623
- }
624
-
625
- // src/utils/dailyClueGame.ts
626
- function createSeededRng(seed) {
627
- let t = seed >>> 0;
628
- return function random() {
629
- t += 1831565813;
630
- let x = t;
631
- x = Math.imul(x ^ x >>> 15, x | 1);
632
- x ^= x + Math.imul(x ^ x >>> 7, x | 61);
633
- return ((x ^ x >>> 14) >>> 0) / 4294967296;
634
- };
635
- }
636
- function hashStringToNumber(seed) {
637
- let hash = 2166136261;
638
- for (let i = 0; i < seed.length; i++) {
639
- hash ^= seed.codePointAt(i) ?? 0;
640
- hash = Math.imul(hash, 16777619);
641
- }
642
- return hash >>> 0;
643
- }
644
- function seededShuffle(array, seed) {
645
- const rng = createSeededRng(hashStringToNumber(seed));
646
- const result = [...array];
647
- for (let i = result.length - 1; i > 0; i--) {
648
- const j = Math.floor(rng() * (i + 1));
649
- [result[i], result[j]] = [result[j], result[i]];
650
- }
651
- return result;
652
- }
653
- function getDayIndex(start, today) {
654
- return today.diff(start, "day");
655
- }
656
- function computeDailyClueState(dailyClue) {
657
- const { startDate, endDate } = dailyClue.gameFields.gameDate;
658
- const { solutionShuffled, collected } = dailyClue.letterInfo;
659
- const today = nzStartOfDay();
660
- const start = nzStartOfDay(startDate);
661
- const end = nzStartOfDay(endDate);
662
- if (today.isBefore(start)) {
663
- return null;
664
- }
665
- const shuffledPlacements = seededShuffle(
666
- gameScreenIdentifierList,
667
- start.toISOString()
668
- );
669
- const index = getDayIndex(start, today);
670
- if (today.isAfter(end)) {
671
- return {
672
- todaysClue: null,
673
- todaysLetter: null,
674
- todaysPlacement: null
675
- };
676
- }
677
- if (index < 0 || index >= solutionShuffled.length || index >= shuffledPlacements.length) {
678
- return null;
679
- }
680
- const letterToday = solutionShuffled[index];
681
- const placement = shuffledPlacements[index];
682
- if (!letterToday || !placement) return null;
683
- const alreadyCollectedToday = (collected ?? []).includes(letterToday);
684
- if (alreadyCollectedToday) {
685
- return {
686
- todaysClue: null,
687
- todaysLetter: null,
688
- todaysPlacement: null
689
- };
690
- }
691
- return {
692
- todaysClue: placement.clue,
693
- todaysLetter: letterToday,
694
- todaysPlacement: placement.id
695
- };
696
- }
697
556
 
698
557
  // src/types/auth.ts
699
558
  var EnumVerificationType = /* @__PURE__ */ ((EnumVerificationType2) => {
@@ -899,6 +758,157 @@ var PostTypeLabels = {
899
758
  ["play_and_win" /* PLAY_AND_WIN */]: "Play & Win"
900
759
  };
901
760
 
761
+ // src/utils/date.ts
762
+ var dateFormat = "DD-MM-YYYY";
763
+ var timeFormat = "HH:mm";
764
+ dayjs.extend(customParseFormat);
765
+ dayjs.extend(utc);
766
+ dayjs.extend(timezone);
767
+ dayjs.extend(isSameOrAfter);
768
+ var NZ_TZ = "Pacific/Auckland";
769
+ function toNZTime(date) {
770
+ return date ? dayjs(date).tz(NZ_TZ) : dayjs().tz(NZ_TZ);
771
+ }
772
+ function nzStartOfDay(input) {
773
+ if (input == null) {
774
+ return dayjs().tz(NZ_TZ).startOf("day");
775
+ }
776
+ return dayjs.tz(input, NZ_TZ).startOf("day");
777
+ }
778
+ var formatDate = (dateStr, display = "datetime", timeStr) => {
779
+ const dateTimeStr = timeStr ? `${dateStr} ${timeStr}` : dateStr;
780
+ const dateTime = timeStr ? dayjs(dateTimeStr, `${dateFormat} ${timeFormat}`) : dayjs(dateStr, dateFormat);
781
+ const formattedDate = dateTime.format("dddd, D MMMM, YYYY");
782
+ const formattedTime = dateTime.format("h:mm a");
783
+ switch (display) {
784
+ case "date":
785
+ return formattedDate;
786
+ case "time":
787
+ return formattedTime;
788
+ case "datetime":
789
+ return `${formattedDate} at ${formattedTime}`;
790
+ default:
791
+ return formattedDate;
792
+ }
793
+ };
794
+ var getCurrentAndFutureDates = (dates) => {
795
+ const now = dayjs();
796
+ return dates.filter((dateObj) => {
797
+ const dateTime = dayjs(
798
+ `${dateObj.startDate} ${dateObj.startTime}`,
799
+ `${dateFormat} ${timeFormat}`
800
+ );
801
+ return dateTime.isSameOrAfter(now);
802
+ });
803
+ };
804
+ var isFutureDatesBeforeThreshold = (date, minHoursFromNow) => {
805
+ const threshold = minHoursFromNow ? dayjs().add(minHoursFromNow, "hour") : dayjs().startOf("day");
806
+ const dateTime = dayjs(
807
+ `${date.startDate} ${date.startTime}`,
808
+ `${dateFormat} ${timeFormat}`
809
+ );
810
+ return dateTime.isSameOrAfter(threshold);
811
+ };
812
+ var formatTimestamp = (timestamp) => {
813
+ const formattedDate = toNZTime(timestamp).format(dateFormat);
814
+ return formatDate(formattedDate, "date");
815
+ };
816
+ var isIsoDateString = (value) => {
817
+ return typeof value === "string" && !Number.isNaN(Date.parse(value));
818
+ };
819
+ function sortDatesChronologically(dates) {
820
+ if (!dates?.length) {
821
+ return [];
822
+ }
823
+ return [...dates].sort((a, b) => {
824
+ const dateTimeFormat = `${dateFormat} ${timeFormat}`;
825
+ const dateA = dayjs(`${a.startDate} ${a.startTime}`, dateTimeFormat);
826
+ const dateB = dayjs(`${b.startDate} ${b.startTime}`, dateTimeFormat);
827
+ return dateA.valueOf() - dateB.valueOf();
828
+ });
829
+ }
830
+ var futureTimePeriods = mapArrayToOptions(
831
+ Object.values(EnumEventDateStatus)
832
+ ).filter(
833
+ (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 */
834
+ ).map((period) => ({
835
+ label: period.value.replaceAll("_", " "),
836
+ value: period.value
837
+ }));
838
+
839
+ // src/utils/dailyClueGame.ts
840
+ function createSeededRng(seed) {
841
+ let t = seed >>> 0;
842
+ return function random() {
843
+ t += 1831565813;
844
+ let x = t;
845
+ x = Math.imul(x ^ x >>> 15, x | 1);
846
+ x ^= x + Math.imul(x ^ x >>> 7, x | 61);
847
+ return ((x ^ x >>> 14) >>> 0) / 4294967296;
848
+ };
849
+ }
850
+ function hashStringToNumber(seed) {
851
+ let hash = 2166136261;
852
+ for (let i = 0; i < seed.length; i++) {
853
+ hash ^= seed.codePointAt(i) ?? 0;
854
+ hash = Math.imul(hash, 16777619);
855
+ }
856
+ return hash >>> 0;
857
+ }
858
+ function seededShuffle(array, seed) {
859
+ const rng = createSeededRng(hashStringToNumber(seed));
860
+ const result = [...array];
861
+ for (let i = result.length - 1; i > 0; i--) {
862
+ const j = Math.floor(rng() * (i + 1));
863
+ [result[i], result[j]] = [result[j], result[i]];
864
+ }
865
+ return result;
866
+ }
867
+ function getDayIndex(start, today) {
868
+ return today.diff(start, "day");
869
+ }
870
+ function computeDailyClueState(dailyClue) {
871
+ const { startDate, endDate } = dailyClue.gameFields.gameDate;
872
+ const { solutionShuffled, collected } = dailyClue.letterInfo;
873
+ const today = nzStartOfDay();
874
+ const start = nzStartOfDay(startDate);
875
+ const end = nzStartOfDay(endDate);
876
+ if (today.isBefore(start)) {
877
+ return null;
878
+ }
879
+ const shuffledPlacements = seededShuffle(
880
+ gameScreenIdentifierList,
881
+ start.toISOString()
882
+ );
883
+ const index = getDayIndex(start, today);
884
+ if (today.isAfter(end)) {
885
+ return {
886
+ todaysClue: null,
887
+ todaysLetter: null,
888
+ todaysPlacement: null
889
+ };
890
+ }
891
+ if (index < 0 || index >= solutionShuffled.length || index >= shuffledPlacements.length) {
892
+ return null;
893
+ }
894
+ const letterToday = solutionShuffled[index];
895
+ const placement = shuffledPlacements[index];
896
+ if (!letterToday || !placement) return null;
897
+ const alreadyCollectedToday = (collected ?? []).includes(letterToday);
898
+ if (alreadyCollectedToday) {
899
+ return {
900
+ todaysClue: null,
901
+ todaysLetter: null,
902
+ todaysPlacement: null
903
+ };
904
+ }
905
+ return {
906
+ todaysClue: placement.clue,
907
+ todaysLetter: letterToday,
908
+ todaysPlacement: placement.id
909
+ };
910
+ }
911
+
902
912
  // src/utils/school.ts
903
913
  var SCHOOL_MIN_STUDENT_COUNT = 300;
904
914
  var SCHOOL_MAX_STUDENT_COUNT = 0;
@@ -2938,6 +2948,12 @@ var EVENT_LIST_ITEM = gql2`
2938
2948
  ${RESOURCE_IMAGE_FIELDS_FRAGMENT}
2939
2949
  ${RELATION_DATES_FRAGMENT}
2940
2950
  `;
2951
+ var RELATED_POST_FIELDS_FRAGMENT = gql2`
2952
+ fragment RelatedPostFields on RelatedPostType {
2953
+ postId
2954
+ postType
2955
+ }
2956
+ `;
2941
2957
 
2942
2958
  // src/graphql/queries/event.ts
2943
2959
  var EVENT_INFO = gql3`
@@ -3029,6 +3045,9 @@ var EVENT = gql3`
3029
3045
  rating
3030
3046
  reviewCount
3031
3047
  rainOrShine
3048
+ relatedPost {
3049
+ ...RelatedPostFields
3050
+ }
3032
3051
  socialMedia {
3033
3052
  ...SocialMediaFields
3034
3053
  }
@@ -3048,6 +3067,7 @@ var EVENT = gql3`
3048
3067
  ${CONTACT_DETAILS_FIELDS_FRAGMENT}
3049
3068
  ${TERMS_AGREEMENT_FIELDS_FRAGMENT}
3050
3069
  ${RELATION_DATES_FRAGMENT}
3070
+ ${RELATED_POST_FIELDS_FRAGMENT}
3051
3071
  `;
3052
3072
  var GET_EVENTS = gql3`
3053
3073
  query getEvents($dateStatus: EventDateStatusEnumType) {
@@ -3217,6 +3237,9 @@ var VENDOR = gql4`
3217
3237
  rating
3218
3238
  region
3219
3239
  reviewCount
3240
+ relatedPost {
3241
+ ...RelatedPostFields
3242
+ }
3220
3243
  relations {
3221
3244
  relationId
3222
3245
  relationDates {
@@ -3245,6 +3268,7 @@ var VENDOR = gql4`
3245
3268
  ${CONTACT_DETAILS_FIELDS_FRAGMENT}
3246
3269
  ${TERMS_AGREEMENT_FIELDS_FRAGMENT}
3247
3270
  ${RELATION_DATES_FRAGMENT}
3271
+ ${RELATED_POST_FIELDS_FRAGMENT}
3248
3272
  `;
3249
3273
  var VENDOR_ATTRIBUTES_FRAGMENT = gql4`
3250
3274
  fragment VendorAttributesFields on VendorAttributesType {
@@ -3977,6 +4001,9 @@ var PARTNER = gql11`
3977
4001
  rating
3978
4002
  region
3979
4003
  reviewCount
4004
+ relatedPost {
4005
+ ...RelatedPostFields
4006
+ }
3980
4007
  socialMedia {
3981
4008
  ...SocialMediaFields
3982
4009
  }
@@ -3993,6 +4020,7 @@ var PARTNER = gql11`
3993
4020
  ${POSTER_USAGE_FIELDS_FRAGMENT}
3994
4021
  ${SOCIAL_MEDIA_FIELDS_FRAGMENT}
3995
4022
  ${CONTACT_DETAILS_FIELDS_FRAGMENT}
4023
+ ${RELATED_POST_FIELDS_FRAGMENT}
3996
4024
  `;
3997
4025
  var GET_PARTNERS = gql11`
3998
4026
  query getPartners {
@@ -7326,6 +7354,7 @@ export {
7326
7354
  formatShareTagsSection,
7327
7355
  formatStallCapacityLabel,
7328
7356
  formatTimestamp,
7357
+ futureTimePeriods,
7329
7358
  gameScreenIdentifierList,
7330
7359
  gameTypeToDisplayName,
7331
7360
  getAllowedEventDateStatuses,