@timardex/cluemart-shared 2.2.1 → 2.2.2

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 (74) hide show
  1. package/dist/{ad-Ogzb0O0U.d.ts → ad-C4L_-r-4.d.ts} +10 -1
  2. package/dist/{ad-BdPabW-h.d.mts → ad-XtBAH4rD.d.mts} +10 -1
  3. package/dist/apollo/index.cjs +12 -7
  4. package/dist/apollo/index.cjs.map +1 -1
  5. package/dist/apollo/index.d.mts +11 -0
  6. package/dist/apollo/index.d.ts +11 -0
  7. package/dist/apollo/index.mjs +12 -7
  8. package/dist/apollo/index.mjs.map +1 -1
  9. package/dist/auth/index.cjs +42 -3
  10. package/dist/auth/index.cjs.map +1 -1
  11. package/dist/auth/index.d.mts +2 -1
  12. package/dist/auth/index.d.ts +2 -1
  13. package/dist/auth/index.mjs +7 -5
  14. package/dist/auth/index.mjs.map +1 -1
  15. package/dist/{chunk-OSSBKFNH.mjs → chunk-BR4XNXE7.mjs} +52 -1
  16. package/dist/chunk-BR4XNXE7.mjs.map +1 -0
  17. package/dist/{chunk-MRBTCICB.mjs → chunk-FWKZZMQR.mjs} +1 -1
  18. package/dist/chunk-FWKZZMQR.mjs.map +1 -0
  19. package/dist/{chunk-UIG4A4U3.mjs → chunk-KHC57ZNS.mjs} +4 -4
  20. package/dist/{chunk-2DTCLBHT.mjs → chunk-MTBH5LMV.mjs} +95 -21
  21. package/dist/chunk-MTBH5LMV.mjs.map +1 -0
  22. package/dist/{chunk-576YBZYO.mjs → chunk-PUX53EZX.mjs} +3 -3
  23. package/dist/{chunk-YPWBK4WU.mjs → chunk-Q2WLLXTA.mjs} +2 -1
  24. package/dist/chunk-Q2WLLXTA.mjs.map +1 -0
  25. package/dist/{chunk-GOWIY4NZ.mjs → chunk-TCV735VY.mjs} +10 -2
  26. package/dist/chunk-TCV735VY.mjs.map +1 -0
  27. package/dist/{chunk-VWGCXGEL.mjs → chunk-YKJAOTF7.mjs} +2 -2
  28. package/dist/enums/index.cjs +1 -0
  29. package/dist/enums/index.cjs.map +1 -1
  30. package/dist/enums/index.d.mts +1 -0
  31. package/dist/enums/index.d.ts +1 -0
  32. package/dist/enums/index.mjs +1 -1
  33. package/dist/formFields/index.cjs +16 -7
  34. package/dist/formFields/index.cjs.map +1 -1
  35. package/dist/formFields/index.mjs +5 -5
  36. package/dist/graphql/index.cjs +62 -0
  37. package/dist/graphql/index.cjs.map +1 -1
  38. package/dist/graphql/index.d.mts +29 -2
  39. package/dist/graphql/index.d.ts +29 -2
  40. package/dist/graphql/index.mjs +9 -3
  41. package/dist/hooks/index.cjs +72 -25
  42. package/dist/hooks/index.cjs.map +1 -1
  43. package/dist/hooks/index.d.mts +1 -1
  44. package/dist/hooks/index.d.ts +1 -1
  45. package/dist/hooks/index.mjs +8 -8
  46. package/dist/index.cjs +161 -22
  47. package/dist/index.cjs.map +1 -1
  48. package/dist/index.d.mts +54 -1
  49. package/dist/index.d.ts +54 -1
  50. package/dist/index.mjs +156 -22
  51. package/dist/index.mjs.map +1 -1
  52. package/dist/region/index.cjs.map +1 -1
  53. package/dist/region/index.mjs +1 -1
  54. package/dist/sharing/index.cjs +20 -9
  55. package/dist/sharing/index.cjs.map +1 -1
  56. package/dist/sharing/index.mjs +3 -3
  57. package/dist/types/index.cjs.map +1 -1
  58. package/dist/types/index.d.mts +1 -1
  59. package/dist/types/index.d.ts +1 -1
  60. package/dist/types/index.mjs +2 -2
  61. package/dist/utils/index.cjs +98 -22
  62. package/dist/utils/index.cjs.map +1 -1
  63. package/dist/utils/index.d.mts +17 -1
  64. package/dist/utils/index.d.ts +17 -1
  65. package/dist/utils/index.mjs +9 -5
  66. package/package.json +1 -1
  67. package/dist/chunk-2DTCLBHT.mjs.map +0 -1
  68. package/dist/chunk-GOWIY4NZ.mjs.map +0 -1
  69. package/dist/chunk-MRBTCICB.mjs.map +0 -1
  70. package/dist/chunk-OSSBKFNH.mjs.map +0 -1
  71. package/dist/chunk-YPWBK4WU.mjs.map +0 -1
  72. /package/dist/{chunk-UIG4A4U3.mjs.map → chunk-KHC57ZNS.mjs.map} +0 -0
  73. /package/dist/{chunk-576YBZYO.mjs.map → chunk-PUX53EZX.mjs.map} +0 -0
  74. /package/dist/{chunk-VWGCXGEL.mjs.map → chunk-YKJAOTF7.mjs.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { L as LocationType, q as VendorFormData, r as CreateVendorFormData, s as VendorInfoFormData, t as CreateVendorInfoFormData, u as UnregisteredVendorFormData, v as CreateUnregisteredVendorFormData, w as EventFormData, x as CreateEventFormData, y as EventInfoFormData, z as CreateEventInfoFormData, B as BaseResourceTypeFormData, A as PostFormData, D as CreatePostFormData, H as CouponDefaultsFormData, I as CreateCouponFormData } from '../global-D1r5ZuQO.mjs';
2
2
  import { e as UserFormData, C as CreateUserFormData } from '../user-BpR-FTW2.mjs';
3
- import { C as CreateLoginFormData, e as CreateRegisterFormData, f as CreateRequestPasswordResetFormData, g as CreateValidateVerificationTokenFormData, h as CreateResetPasswordFormData, i as PartnerFormData, j as AdFormData, k as CreateAdFormState, l as CreatePartnerFormData, m as AppSettingsFormData, n as CreateAppSettingsFormData, o as SchoolFormData, p as CreateSchoolFormData } from '../ad-BdPabW-h.mjs';
3
+ import { C as CreateLoginFormData, g as CreateRegisterFormData, h as CreateRequestPasswordResetFormData, i as CreateValidateVerificationTokenFormData, j as CreateResetPasswordFormData, k as PartnerFormData, l as AdFormData, m as CreateAdFormState, n as CreatePartnerFormData, o as AppSettingsFormData, p as CreateAppSettingsFormData, q as SchoolFormData, r as CreateSchoolFormData } from '../ad-XtBAH4rD.mjs';
4
4
  import { a as AffiliateFormData, A as AffiliateType, C as CreateAffiliateFormData } from '../affiliate-D-L_UtL8.mjs';
5
5
  import { C as ContactUsFormData, a as CreateContactUsFormData } from '../contactUs-CwHKoGEt.mjs';
6
6
  import 'react-hook-form';
@@ -1,6 +1,6 @@
1
1
  import { L as LocationType, q as VendorFormData, r as CreateVendorFormData, s as VendorInfoFormData, t as CreateVendorInfoFormData, u as UnregisteredVendorFormData, v as CreateUnregisteredVendorFormData, w as EventFormData, x as CreateEventFormData, y as EventInfoFormData, z as CreateEventInfoFormData, B as BaseResourceTypeFormData, A as PostFormData, D as CreatePostFormData, H as CouponDefaultsFormData, I as CreateCouponFormData } from '../global-B4mmQo6R.js';
2
2
  import { e as UserFormData, C as CreateUserFormData } from '../user-IR0bHKFb.js';
3
- import { C as CreateLoginFormData, e as CreateRegisterFormData, f as CreateRequestPasswordResetFormData, g as CreateValidateVerificationTokenFormData, h as CreateResetPasswordFormData, i as PartnerFormData, j as AdFormData, k as CreateAdFormState, l as CreatePartnerFormData, m as AppSettingsFormData, n as CreateAppSettingsFormData, o as SchoolFormData, p as CreateSchoolFormData } from '../ad-Ogzb0O0U.js';
3
+ import { C as CreateLoginFormData, g as CreateRegisterFormData, h as CreateRequestPasswordResetFormData, i as CreateValidateVerificationTokenFormData, j as CreateResetPasswordFormData, k as PartnerFormData, l as AdFormData, m as CreateAdFormState, n as CreatePartnerFormData, o as AppSettingsFormData, p as CreateAppSettingsFormData, q as SchoolFormData, r as CreateSchoolFormData } from '../ad-C4L_-r-4.js';
4
4
  import { a as AffiliateFormData, A as AffiliateType, C as CreateAffiliateFormData } from '../affiliate-CxZHVZb2.js';
5
5
  import { C as ContactUsFormData, a as CreateContactUsFormData } from '../contactUs-CR-nghbk.js';
6
6
  import 'react-hook-form';
@@ -1,18 +1,18 @@
1
- import "../chunk-VWGCXGEL.mjs";
1
+ import "../chunk-YKJAOTF7.mjs";
2
2
  import "../chunk-VA5YN2K3.mjs";
3
3
  import "../chunk-VPANTTZI.mjs";
4
4
  import "../chunk-DWO35OY4.mjs";
5
- import "../chunk-576YBZYO.mjs";
5
+ import "../chunk-PUX53EZX.mjs";
6
6
  import {
7
7
  SCHOOL_MIN_STUDENT_COUNT,
8
8
  isValidIrdNumber,
9
9
  normalizeUrl
10
- } from "../chunk-UIG4A4U3.mjs";
10
+ } from "../chunk-KHC57ZNS.mjs";
11
11
  import "../chunk-RE4NZPYY.mjs";
12
12
  import {
13
13
  dateFormat,
14
14
  timeFormat
15
- } from "../chunk-2DTCLBHT.mjs";
15
+ } from "../chunk-MTBH5LMV.mjs";
16
16
  import {
17
17
  EnumAdShowOn,
18
18
  EnumAdStatus,
@@ -21,11 +21,11 @@ import {
21
21
  EnumAffiliateParticipantType,
22
22
  EnumPostContentType,
23
23
  EnumPostType
24
- } from "../chunk-MRBTCICB.mjs";
24
+ } from "../chunk-FWKZZMQR.mjs";
25
25
  import "../chunk-RAYUJODN.mjs";
26
26
  import "../chunk-DQ7ZHIXW.mjs";
27
- import "../chunk-GOWIY4NZ.mjs";
28
- import "../chunk-OSSBKFNH.mjs";
27
+ import "../chunk-TCV735VY.mjs";
28
+ import "../chunk-BR4XNXE7.mjs";
29
29
  import "../chunk-7DQBUZXY.mjs";
30
30
  import {
31
31
  EnumEventDateStatus,
@@ -36,7 +36,7 @@ import {
36
36
  EnumResourceType,
37
37
  EnumSocialMedia,
38
38
  EnumVendorType
39
- } from "../chunk-YPWBK4WU.mjs";
39
+ } from "../chunk-Q2WLLXTA.mjs";
40
40
  import "../chunk-NPFJ2CN2.mjs";
41
41
 
42
42
  // src/hooks/useLocationSearch.ts
package/dist/index.cjs CHANGED
@@ -271,6 +271,7 @@ __export(index_exports, {
271
271
  getEventScheduleStatusPresentation: () => getEventScheduleStatusPresentation,
272
272
  getEventScheduleStatusTone: () => getEventScheduleStatusTone,
273
273
  getEventStallholderEmptyMessage: () => getEventStallholderEmptyMessage,
274
+ getFutureEventStatus: () => getFutureEventStatus,
274
275
  getPermissionsForRoles: () => getPermissionsForRoles,
275
276
  getRegisteredVendorCategoryNames: () => getRegisteredVendorCategoryNames,
276
277
  getRegisteredVendorStartDates: () => getRegisteredVendorStartDates,
@@ -361,6 +362,7 @@ __export(index_exports, {
361
362
  toShareSocialImageCacheVersion: () => toShareSocialImageCacheVersion,
362
363
  toUserFacingErrorMessage: () => toUserFacingErrorMessage,
363
364
  truncateText: () => truncateText,
365
+ updateSingleDateTimeStatus: () => updateSingleDateTimeStatus,
364
366
  useActivateVendorClaim: () => useActivateVendorClaim,
365
367
  useAddParticipantToChat: () => useAddParticipantToChat,
366
368
  useAddUserFavouriteResource: () => useAddUserFavouriteResource,
@@ -410,6 +412,7 @@ __export(index_exports, {
410
412
  useDeleteUnregisteredVendor: () => useDeleteUnregisteredVendor,
411
413
  useDeleteUser: () => useDeleteUser,
412
414
  useDeleteVendor: () => useDeleteVendor,
415
+ useEndImpersonation: () => useEndImpersonation,
413
416
  useGetAd: () => useGetAd,
414
417
  useGetAds: () => useGetAds,
415
418
  useGetAdsByRegion: () => useGetAdsByRegion,
@@ -473,6 +476,7 @@ __export(index_exports, {
473
476
  usePaginatedList: () => usePaginatedList,
474
477
  useRedeemAffiliateReward: () => useRedeemAffiliateReward,
475
478
  useRedeemReward: () => useRedeemReward,
479
+ useRefreshImpersonation: () => useRefreshImpersonation,
476
480
  useRefreshToken: () => useRefreshToken,
477
481
  useRegister: () => useRegister,
478
482
  useRemoveParticipantFromChat: () => useRemoveParticipantFromChat,
@@ -492,6 +496,7 @@ __export(index_exports, {
492
496
  useSelectStandardPackage: () => useSelectStandardPackage,
493
497
  useSendChatMessage: () => useSendChatMessage,
494
498
  useStartGame: () => useStartGame,
499
+ useStartImpersonation: () => useStartImpersonation,
495
500
  useSyncBillingCatalogPrice: () => useSyncBillingCatalogPrice,
496
501
  useToggleChatMessageLike: () => useToggleChatMessageLike,
497
502
  useUnlinkUnregisteredVendorByInviterId: () => useUnlinkUnregisteredVendorByInviterId,
@@ -668,6 +673,7 @@ var EnumNotificationResourceType = /* @__PURE__ */ ((EnumNotificationResourceTyp
668
673
  EnumNotificationResourceType2["CREATED_EVENT"] = "created_event";
669
674
  EnumNotificationResourceType2["CREATED_PARTNER"] = "created_partner";
670
675
  EnumNotificationResourceType2["CREATED_VENDOR"] = "created_vendor";
676
+ EnumNotificationResourceType2["CREATED_COUPON"] = "created_coupon";
671
677
  EnumNotificationResourceType2["DAILY_CLUE_GAME"] = "daily_clue_game";
672
678
  EnumNotificationResourceType2["DEACTIVATED_EVENT"] = "deactivated_event";
673
679
  EnumNotificationResourceType2["DEACTIVATED_PARTNER"] = "deactivated_partner";
@@ -1125,13 +1131,22 @@ var gameScreenIdentifierList = [
1125
1131
  ];
1126
1132
 
1127
1133
  // src/utils/date.ts
1128
- var import_dayjs = __toESM(require("dayjs"));
1129
- var import_customParseFormat = __toESM(require("dayjs/plugin/customParseFormat.js"));
1134
+ var import_dayjs2 = __toESM(require("dayjs"));
1135
+ var import_customParseFormat2 = __toESM(require("dayjs/plugin/customParseFormat.js"));
1130
1136
  var import_isSameOrAfter = __toESM(require("dayjs/plugin/isSameOrAfter.js"));
1131
1137
  var import_timezone = __toESM(require("dayjs/plugin/timezone.js"));
1132
1138
  var import_utc = __toESM(require("dayjs/plugin/utc.js"));
1133
1139
 
1140
+ // src/utils/dateFormats.ts
1141
+ var dateFormat = "DD-MM-YYYY";
1142
+ var timeFormat = "HH:mm";
1143
+
1134
1144
  // src/utils/eventDateStatus.ts
1145
+ var import_dayjs = __toESM(require("dayjs"));
1146
+ var import_customParseFormat = __toESM(require("dayjs/plugin/customParseFormat.js"));
1147
+ var import_isoWeek = __toESM(require("dayjs/plugin/isoWeek.js"));
1148
+ import_dayjs.default.extend(import_customParseFormat.default);
1149
+ import_dayjs.default.extend(import_isoWeek.default);
1135
1150
  var EVENT_DATE_STATUS_PERIOD_MAP = {
1136
1151
  ["Today" /* TODAY */]: [
1137
1152
  "Started" /* STARTED */,
@@ -1172,27 +1187,90 @@ function isFutureEventDateStatus(dateStatus) {
1172
1187
  function filterDatesByFutureStatus(dates) {
1173
1188
  return dates.filter((date) => isFutureEventDateStatus(date.dateStatus));
1174
1189
  }
1190
+ var MANUAL_DATE_STATUSES = /* @__PURE__ */ new Set([
1191
+ "Canceled" /* CANCELED */,
1192
+ "Rescheduled" /* RE_SCHEDULED */
1193
+ ]);
1194
+ function getFutureEventStatus(startDateTime, now) {
1195
+ const hoursUntilStart = startDateTime.diff(now, "hour", true);
1196
+ if (hoursUntilStart > 0 && hoursUntilStart <= 4) {
1197
+ return "Starting_Soon" /* STARTING_SOON */;
1198
+ }
1199
+ if (startDateTime.isSame(now, "day")) {
1200
+ return "Today" /* TODAY */;
1201
+ }
1202
+ if (startDateTime.isSame(now.add(1, "day"), "day")) {
1203
+ return "Tomorrow" /* TOMORROW */;
1204
+ }
1205
+ if (startDateTime.isSame(now, "isoWeek")) {
1206
+ return "This_Week" /* THIS_WEEK */;
1207
+ }
1208
+ if (startDateTime.isSame(now.add(1, "week"), "isoWeek")) {
1209
+ return "Next_Week" /* NEXT_WEEK */;
1210
+ }
1211
+ return "Upcoming" /* UPCOMING */;
1212
+ }
1213
+ function updateSingleDateTimeStatus(dateTime, now = (0, import_dayjs.default)()) {
1214
+ if (MANUAL_DATE_STATUSES.has(dateTime.dateStatus)) {
1215
+ return dateTime;
1216
+ }
1217
+ const dateTimeFormat = `${dateFormat} ${timeFormat}`;
1218
+ const startDateTime = (0, import_dayjs.default)(
1219
+ `${dateTime.startDate} ${dateTime.startTime}`,
1220
+ dateTimeFormat,
1221
+ true
1222
+ );
1223
+ const endDateTime = (0, import_dayjs.default)(
1224
+ `${dateTime.endDate} ${dateTime.endTime}`,
1225
+ dateTimeFormat,
1226
+ true
1227
+ );
1228
+ if (!startDateTime.isValid() || !endDateTime.isValid()) {
1229
+ return {
1230
+ ...dateTime,
1231
+ dateStatus: "Invalid" /* INVALID */
1232
+ };
1233
+ }
1234
+ if (endDateTime.isBefore(startDateTime)) {
1235
+ return {
1236
+ ...dateTime,
1237
+ dateStatus: "Invalid" /* INVALID */
1238
+ };
1239
+ }
1240
+ let dateStatus;
1241
+ if (endDateTime.isAfter(now)) {
1242
+ if (startDateTime.isAfter(now)) {
1243
+ dateStatus = getFutureEventStatus(startDateTime, now);
1244
+ } else {
1245
+ dateStatus = "Started" /* STARTED */;
1246
+ }
1247
+ } else {
1248
+ dateStatus = "Ended" /* ENDED */;
1249
+ }
1250
+ return {
1251
+ ...dateTime,
1252
+ dateStatus
1253
+ };
1254
+ }
1175
1255
 
1176
1256
  // src/utils/date.ts
1177
- var dateFormat = "DD-MM-YYYY";
1178
- var timeFormat = "HH:mm";
1179
- import_dayjs.default.extend(import_customParseFormat.default);
1180
- import_dayjs.default.extend(import_utc.default);
1181
- import_dayjs.default.extend(import_timezone.default);
1182
- import_dayjs.default.extend(import_isSameOrAfter.default);
1257
+ import_dayjs2.default.extend(import_customParseFormat2.default);
1258
+ import_dayjs2.default.extend(import_utc.default);
1259
+ import_dayjs2.default.extend(import_timezone.default);
1260
+ import_dayjs2.default.extend(import_isSameOrAfter.default);
1183
1261
  var NZ_TZ = "Pacific/Auckland";
1184
1262
  function toNZTime(date) {
1185
- return date ? (0, import_dayjs.default)(date).tz(NZ_TZ) : (0, import_dayjs.default)().tz(NZ_TZ);
1263
+ return date ? (0, import_dayjs2.default)(date).tz(NZ_TZ) : (0, import_dayjs2.default)().tz(NZ_TZ);
1186
1264
  }
1187
1265
  function nzStartOfDay(input) {
1188
1266
  if (input == null) {
1189
- return (0, import_dayjs.default)().tz(NZ_TZ).startOf("day");
1267
+ return (0, import_dayjs2.default)().tz(NZ_TZ).startOf("day");
1190
1268
  }
1191
- return import_dayjs.default.tz(input, NZ_TZ).startOf("day");
1269
+ return import_dayjs2.default.tz(input, NZ_TZ).startOf("day");
1192
1270
  }
1193
1271
  var formatDate = (dateStr, display = "datetime", timeStr) => {
1194
1272
  const dateTimeStr = timeStr ? `${dateStr} ${timeStr}` : dateStr;
1195
- const dateTime = timeStr ? (0, import_dayjs.default)(dateTimeStr, `${dateFormat} ${timeFormat}`) : (0, import_dayjs.default)(dateStr, dateFormat);
1273
+ const dateTime = timeStr ? (0, import_dayjs2.default)(dateTimeStr, `${dateFormat} ${timeFormat}`) : (0, import_dayjs2.default)(dateStr, dateFormat);
1196
1274
  const formattedDate = dateTime.format("dddd, D MMMM, YYYY");
1197
1275
  const formattedTime = dateTime.format("h:mm a");
1198
1276
  switch (display) {
@@ -1207,12 +1285,12 @@ var formatDate = (dateStr, display = "datetime", timeStr) => {
1207
1285
  }
1208
1286
  };
1209
1287
  var getCurrentAndFutureDates = (dates) => {
1210
- const now = (0, import_dayjs.default)();
1288
+ const now = (0, import_dayjs2.default)();
1211
1289
  return dates.filter((dateObj) => {
1212
1290
  if (!dateObj.startDate || !dateObj.startTime) {
1213
1291
  return false;
1214
1292
  }
1215
- const dateTime = (0, import_dayjs.default)(
1293
+ const dateTime = (0, import_dayjs2.default)(
1216
1294
  `${dateObj.startDate} ${dateObj.startTime}`,
1217
1295
  `${dateFormat} ${timeFormat}`
1218
1296
  );
@@ -1223,8 +1301,8 @@ var isFutureDatesBeforeThreshold = (date, minHoursFromNow) => {
1223
1301
  if (!date.startDate || !date.startTime) {
1224
1302
  return false;
1225
1303
  }
1226
- const threshold = minHoursFromNow ? (0, import_dayjs.default)().add(minHoursFromNow, "hour") : (0, import_dayjs.default)().startOf("day");
1227
- const dateTime = (0, import_dayjs.default)(
1304
+ const threshold = minHoursFromNow ? (0, import_dayjs2.default)().add(minHoursFromNow, "hour") : (0, import_dayjs2.default)().startOf("day");
1305
+ const dateTime = (0, import_dayjs2.default)(
1228
1306
  `${date.startDate} ${date.startTime}`,
1229
1307
  `${dateFormat} ${timeFormat}`
1230
1308
  );
@@ -1243,8 +1321,8 @@ function sortDatesChronologically(dates) {
1243
1321
  }
1244
1322
  return [...dates].sort((a, b) => {
1245
1323
  const dateTimeFormat = `${dateFormat} ${timeFormat}`;
1246
- const dateA = a.startDate && a.startTime ? (0, import_dayjs.default)(`${a.startDate} ${a.startTime}`, dateTimeFormat) : null;
1247
- const dateB = b.startDate && b.startTime ? (0, import_dayjs.default)(`${b.startDate} ${b.startTime}`, dateTimeFormat) : null;
1324
+ const dateA = a.startDate && a.startTime ? (0, import_dayjs2.default)(`${a.startDate} ${a.startTime}`, dateTimeFormat) : null;
1325
+ const dateB = b.startDate && b.startTime ? (0, import_dayjs2.default)(`${b.startDate} ${b.startTime}`, dateTimeFormat) : null;
1248
1326
  if (dateA && dateB) {
1249
1327
  return dateA.valueOf() - dateB.valueOf();
1250
1328
  }
@@ -1873,13 +1951,13 @@ var SCHOOL_MIN_STUDENT_COUNT = 300;
1873
1951
  var SCHOOL_MAX_STUDENT_COUNT = 0;
1874
1952
 
1875
1953
  // src/calendar/eventCalendar.ts
1876
- var import_dayjs2 = __toESM(require("dayjs"));
1954
+ var import_dayjs3 = __toESM(require("dayjs"));
1877
1955
  function toCalendarIsoDate(startDate) {
1878
- const formatted = (0, import_dayjs2.default)(startDate, dateFormat).format("YYYY-MM-DD");
1879
- return (0, import_dayjs2.default)(formatted, "YYYY-MM-DD", true).isValid() ? formatted : null;
1956
+ const formatted = (0, import_dayjs3.default)(startDate, dateFormat).format("YYYY-MM-DD");
1957
+ return (0, import_dayjs3.default)(formatted, "YYYY-MM-DD", true).isValid() ? formatted : null;
1880
1958
  }
1881
1959
  function fromCalendarIsoDate(isoDate) {
1882
- return (0, import_dayjs2.default)(isoDate, "YYYY-MM-DD").format(dateFormat);
1960
+ return (0, import_dayjs3.default)(isoDate, "YYYY-MM-DD").format(dateFormat);
1883
1961
  }
1884
1962
  function getEventCalendarIsoDates(dateTimes) {
1885
1963
  return dateTimes?.map(
@@ -5714,6 +5792,42 @@ var REFRESH_TOKEN_MUTATION = import_client14.gql`
5714
5792
  }
5715
5793
  }
5716
5794
  `;
5795
+ var START_IMPERSONATION_MUTATION = import_client14.gql`
5796
+ mutation startImpersonation($input: StartImpersonationInputType!) {
5797
+ startImpersonation(input: $input) {
5798
+ data {
5799
+ expiresAt
5800
+ refreshToken
5801
+ sessionId
5802
+ token
5803
+ user {
5804
+ ...UserFields
5805
+ }
5806
+ }
5807
+ message
5808
+ }
5809
+ }
5810
+ ${USER_FIELDS_FRAGMENT}
5811
+ `;
5812
+ var REFRESH_IMPERSONATION_MUTATION = import_client14.gql`
5813
+ mutation refreshImpersonation($input: RefreshImpersonationInputType!) {
5814
+ refreshImpersonation(input: $input) {
5815
+ data {
5816
+ refreshToken
5817
+ token
5818
+ }
5819
+ message
5820
+ }
5821
+ }
5822
+ `;
5823
+ var END_IMPERSONATION_MUTATION = import_client14.gql`
5824
+ mutation endImpersonation {
5825
+ endImpersonation {
5826
+ data
5827
+ message
5828
+ }
5829
+ }
5830
+ `;
5717
5831
  var RESET_PASSWORD_MUTATION = import_client14.gql`
5718
5832
  mutation resetPassword($input: ResetPasswordInputType!) {
5719
5833
  resetPassword(input: $input) {
@@ -5758,6 +5872,18 @@ var useRefreshToken = () => {
5758
5872
  const [refreshToken, { loading, error }] = (0, import_client15.useMutation)(REFRESH_TOKEN_MUTATION);
5759
5873
  return { error, loading, refreshToken };
5760
5874
  };
5875
+ var useStartImpersonation = () => {
5876
+ const [startImpersonation, { loading, error }] = (0, import_client15.useMutation)(START_IMPERSONATION_MUTATION);
5877
+ return { error, loading, startImpersonation };
5878
+ };
5879
+ var useRefreshImpersonation = () => {
5880
+ const [refreshImpersonation, { loading, error }] = (0, import_client15.useMutation)(REFRESH_IMPERSONATION_MUTATION);
5881
+ return { error, loading, refreshImpersonation };
5882
+ };
5883
+ var useEndImpersonation = () => {
5884
+ const [endImpersonation, { loading, error }] = (0, import_client15.useMutation)(END_IMPERSONATION_MUTATION);
5885
+ return { endImpersonation, error, loading };
5886
+ };
5761
5887
  var useRequestPasswordReset = () => {
5762
5888
  const [requestPasswordReset, { loading, error }] = (0, import_client15.useMutation)(REQUEST_PASSWORD_RESET_MUTATION);
5763
5889
  return { error, loading, requestPasswordReset };
@@ -6202,14 +6328,22 @@ var UPDATE_EVENT_INFO_MUTATION = import_client23.gql`
6202
6328
  // src/graphql/hooks/event/hooksMutation.ts
6203
6329
  var useCreateEvent = () => {
6204
6330
  const [createEvent, { loading, error }] = (0, import_client24.useMutation)(CREATE_EVENT_MUTATION, {
6331
+ // The mutation response is a live-only view of EventType. Don't write it
6332
+ // into the normalized EventType cache, where it would overwrite the full
6333
+ // (live + archived) `dateTime` that `getEvent` fetches for the detail page.
6205
6334
  awaitRefetchQueries: true,
6335
+ fetchPolicy: "no-cache",
6206
6336
  refetchQueries: [{ query: GET_USER_EVENTS }]
6207
6337
  });
6208
6338
  return { createEvent, error, loading };
6209
6339
  };
6210
6340
  var useUpdateEvent = () => {
6211
6341
  const [updateEvent, { loading, error }] = (0, import_client24.useMutation)(UPDATE_EVENT_MUTATION, {
6342
+ // See useCreateEvent: the update response only carries the live schedule,
6343
+ // so keep it out of the normalized EventType cache to avoid clobbering the
6344
+ // archived dates merged by `getEvent`.
6212
6345
  awaitRefetchQueries: true,
6346
+ fetchPolicy: "no-cache",
6213
6347
  refetchQueries: (mutationResult) => {
6214
6348
  const eventId = mutationResult?.data?.updateEvent?.data?._id;
6215
6349
  if (!eventId) return [];
@@ -10259,6 +10393,7 @@ function canAccessAdminPath(roles, pathname) {
10259
10393
  getEventScheduleStatusPresentation,
10260
10394
  getEventScheduleStatusTone,
10261
10395
  getEventStallholderEmptyMessage,
10396
+ getFutureEventStatus,
10262
10397
  getPermissionsForRoles,
10263
10398
  getRegisteredVendorCategoryNames,
10264
10399
  getRegisteredVendorStartDates,
@@ -10349,6 +10484,7 @@ function canAccessAdminPath(roles, pathname) {
10349
10484
  toShareSocialImageCacheVersion,
10350
10485
  toUserFacingErrorMessage,
10351
10486
  truncateText,
10487
+ updateSingleDateTimeStatus,
10352
10488
  useActivateVendorClaim,
10353
10489
  useAddParticipantToChat,
10354
10490
  useAddUserFavouriteResource,
@@ -10398,6 +10534,7 @@ function canAccessAdminPath(roles, pathname) {
10398
10534
  useDeleteUnregisteredVendor,
10399
10535
  useDeleteUser,
10400
10536
  useDeleteVendor,
10537
+ useEndImpersonation,
10401
10538
  useGetAd,
10402
10539
  useGetAds,
10403
10540
  useGetAdsByRegion,
@@ -10461,6 +10598,7 @@ function canAccessAdminPath(roles, pathname) {
10461
10598
  usePaginatedList,
10462
10599
  useRedeemAffiliateReward,
10463
10600
  useRedeemReward,
10601
+ useRefreshImpersonation,
10464
10602
  useRefreshToken,
10465
10603
  useRegister,
10466
10604
  useRemoveParticipantFromChat,
@@ -10480,6 +10618,7 @@ function canAccessAdminPath(roles, pathname) {
10480
10618
  useSelectStandardPackage,
10481
10619
  useSendChatMessage,
10482
10620
  useStartGame,
10621
+ useStartImpersonation,
10483
10622
  useSyncBillingCatalogPrice,
10484
10623
  useToggleChatMessageLike,
10485
10624
  useUnlinkUnregisteredVendorByInviterId,