@timardex/cluemart-shared 2.2.30 → 2.2.41

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 (82) hide show
  1. package/dist/{ad-C4L_-r-4.d.ts → ad-CdehhMyb.d.ts} +2 -2
  2. package/dist/{ad-XtBAH4rD.d.mts → ad-Drhn_Azy.d.mts} +2 -2
  3. package/dist/{affiliate-CxZHVZb2.d.ts → affiliate-Cd78p2Fz.d.mts} +3 -3
  4. package/dist/{affiliate-D-L_UtL8.d.mts → affiliate-CdIL0r2o.d.ts} +3 -3
  5. package/dist/auth/index.cjs +10 -1
  6. package/dist/auth/index.cjs.map +1 -1
  7. package/dist/auth/index.d.mts +3 -3
  8. package/dist/auth/index.d.ts +3 -3
  9. package/dist/auth/index.mjs +2 -2
  10. package/dist/{chunk-J5N3IEGR.mjs → chunk-2GUAD63W.mjs} +3 -3
  11. package/dist/{chunk-IKRXLKJ3.mjs → chunk-5AAYX364.mjs} +1 -1
  12. package/dist/{chunk-IKRXLKJ3.mjs.map → chunk-5AAYX364.mjs.map} +1 -1
  13. package/dist/{chunk-LLP7OWX5.mjs → chunk-MKHXXZWF.mjs} +2 -2
  14. package/dist/{chunk-YFFCHTJS.mjs → chunk-PJY7OAQ2.mjs} +18 -23
  15. package/dist/{chunk-YFFCHTJS.mjs.map → chunk-PJY7OAQ2.mjs.map} +1 -1
  16. package/dist/{chunk-MQHX5BD6.mjs → chunk-QIF4ZGMY.mjs} +2 -2
  17. package/dist/{chunk-BR4XNXE7.mjs → chunk-TKSBCN3N.mjs} +11 -2
  18. package/dist/chunk-TKSBCN3N.mjs.map +1 -0
  19. package/dist/{chunk-NRNLARYC.mjs → chunk-VHNCSCQU.mjs} +37 -35
  20. package/dist/chunk-VHNCSCQU.mjs.map +1 -0
  21. package/dist/{chunk-U3KUTQ43.mjs → chunk-XGGFB7HY.mjs} +11 -2
  22. package/dist/{chunk-U3KUTQ43.mjs.map → chunk-XGGFB7HY.mjs.map} +1 -1
  23. package/dist/{contactUs-CwHKoGEt.d.mts → contactUs-BJPQ5nKc.d.mts} +1 -1
  24. package/dist/{contactUs-CR-nghbk.d.ts → contactUs-ITiB1XV4.d.ts} +1 -1
  25. package/dist/enums/index.cjs +10 -0
  26. package/dist/enums/index.cjs.map +1 -1
  27. package/dist/enums/index.d.mts +8 -1
  28. package/dist/enums/index.d.ts +8 -1
  29. package/dist/enums/index.mjs +3 -1
  30. package/dist/formFields/index.cjs +4 -4
  31. package/dist/formFields/index.cjs.map +1 -1
  32. package/dist/formFields/index.d.mts +1 -1
  33. package/dist/formFields/index.d.ts +1 -1
  34. package/dist/formFields/index.mjs +5 -5
  35. package/dist/{global-B4mmQo6R.d.ts → global-DlC7W4p7.d.ts} +9 -0
  36. package/dist/{global-D1r5ZuQO.d.mts → global-XUBcgjNc.d.mts} +9 -0
  37. package/dist/graphql/index.cjs +10 -1
  38. package/dist/graphql/index.cjs.map +1 -1
  39. package/dist/graphql/index.d.mts +5 -5
  40. package/dist/graphql/index.d.ts +5 -5
  41. package/dist/graphql/index.mjs +3 -3
  42. package/dist/hooks/index.cjs +14 -5
  43. package/dist/hooks/index.cjs.map +1 -1
  44. package/dist/hooks/index.d.mts +5 -5
  45. package/dist/hooks/index.d.ts +5 -5
  46. package/dist/hooks/index.mjs +8 -8
  47. package/dist/index.cjs +73 -58
  48. package/dist/index.cjs.map +1 -1
  49. package/dist/index.d.mts +65 -25
  50. package/dist/index.d.ts +65 -25
  51. package/dist/index.mjs +68 -53
  52. package/dist/index.mjs.map +1 -1
  53. package/dist/map/index.d.mts +1 -1
  54. package/dist/map/index.d.ts +1 -1
  55. package/dist/region/index.cjs.map +1 -1
  56. package/dist/region/index.d.mts +1 -1
  57. package/dist/region/index.d.ts +1 -1
  58. package/dist/region/index.mjs +1 -1
  59. package/dist/{resourceActivities-Uz9uavhK.d.ts → resourceActivities-C8eIfpKl.d.ts} +1 -1
  60. package/dist/{resourceActivities-DUReu_jD.d.mts → resourceActivities-Ci12UkJU.d.mts} +1 -1
  61. package/dist/sharing/index.cjs +4 -25
  62. package/dist/sharing/index.cjs.map +1 -1
  63. package/dist/sharing/index.d.mts +3 -22
  64. package/dist/sharing/index.d.ts +3 -22
  65. package/dist/sharing/index.mjs +3 -9
  66. package/dist/types/index.cjs.map +1 -1
  67. package/dist/types/index.d.mts +7 -7
  68. package/dist/types/index.d.ts +7 -7
  69. package/dist/types/index.mjs +2 -2
  70. package/dist/{user-BpR-FTW2.d.mts → user-BSFExFvl.d.ts} +18 -4
  71. package/dist/{user-IR0bHKFb.d.ts → user-D31zAVuz.d.mts} +18 -4
  72. package/dist/utils/index.cjs +53 -36
  73. package/dist/utils/index.cjs.map +1 -1
  74. package/dist/utils/index.d.mts +36 -7
  75. package/dist/utils/index.d.ts +36 -7
  76. package/dist/utils/index.mjs +12 -8
  77. package/package.json +1 -1
  78. package/dist/chunk-BR4XNXE7.mjs.map +0 -1
  79. package/dist/chunk-NRNLARYC.mjs.map +0 -1
  80. /package/dist/{chunk-J5N3IEGR.mjs.map → chunk-2GUAD63W.mjs.map} +0 -0
  81. /package/dist/{chunk-LLP7OWX5.mjs.map → chunk-MKHXXZWF.mjs.map} +0 -0
  82. /package/dist/{chunk-MQHX5BD6.mjs.map → chunk-QIF4ZGMY.mjs.map} +0 -0
@@ -1,10 +1,10 @@
1
- import { a4 as DailyClueGameData, al as GamePlacementClue, ak as GamePlacement, O as OptionItem, af as EnumPostType, aW as SocialMediaType, aU as ResourceImageType, a6 as DateTimeType, L as LocationType, i as VendorType, h as UnregisteredVendorType, d as EventListItemType } from '../global-D1r5ZuQO.mjs';
1
+ import { a4 as DailyClueGameData, al as GamePlacementClue, ak as GamePlacement, O as OptionItem, af as EnumPostType, aW as SocialMediaType, aU as ResourceImageType, a6 as DateTimeType, L as LocationType, i as VendorType, h as UnregisteredVendorType, d as EventListItemType } from '../global-XUBcgjNc.mjs';
2
2
  import dayjs from 'dayjs';
3
3
  import { EnumEventDateStatus, EnumRegions, EnumUserLicence, EnumReward, EnumInviteStatus, EnumResourceType, EnumBillingPeriod } from '../enums/index.mjs';
4
- import { h as EnumAffiliateRewardType, f as AffiliateRewardType } from '../affiliate-D-L_UtL8.mjs';
4
+ import { n as UserOverallPointsEntry } from '../user-D31zAVuz.mjs';
5
+ import { h as EnumAffiliateRewardType, f as AffiliateRewardType } from '../affiliate-Cd78p2Fz.mjs';
5
6
  import { c as BillingCatalogKey, a as BillingCatalogDefinition, b as BillingCatalogInitialEntry, B as BillingCatalogEntryType } from '../billingCatalog-DDAU9BWV.mjs';
6
7
  import 'react-hook-form';
7
- import '../user-BpR-FTW2.mjs';
8
8
 
9
9
  /** Seeded shuffle so all players see the same letter order / placements for a game. */
10
10
  declare function seededShuffle<T>(array: readonly T[], seed: string): T[];
@@ -99,6 +99,15 @@ declare function sortDatesChronologically<T extends {
99
99
  startDate?: string;
100
100
  startTime?: string;
101
101
  }>(dates: T[]): T[];
102
+ /**
103
+ * Start dates of the given date/time slots, chronological and de-duplicated.
104
+ * Slots that share a `startDate` (e.g. two stall slots on the same day) collapse
105
+ * into a single entry.
106
+ */
107
+ declare function getUniqueStartDates(dates: Array<{
108
+ startDate?: string;
109
+ startTime?: string;
110
+ }> | null | undefined): string[];
102
111
  /**
103
112
  * UI filter options for user-activity event periods. Derived from the canonical
104
113
  * {@link FUTURE_EVENT_DATE_STATUSES} list, minus `STARTING_SOON` (a presentational
@@ -172,6 +181,17 @@ declare function isResourceImageActive(image: ResourceImageLike | null | undefin
172
181
  declare const SCHOOL_MIN_STUDENT_COUNT = 300;
173
182
  declare const SCHOOL_MAX_STUDENT_COUNT = 0;
174
183
 
184
+ /**
185
+ * Spendable points for a user.
186
+ *
187
+ * `overallPoints` is an append-only ledger (one entry per award), so the total
188
+ * is always the sum of every entry rather than a single stored number.
189
+ *
190
+ * Nullish ledgers and nullish entries are skipped, so a partially written
191
+ * document cannot throw while the total is computed.
192
+ */
193
+ declare function sumUserOverallPoints(points: (UserOverallPointsEntry | null | undefined)[] | null | undefined): number;
194
+
175
195
  /**
176
196
  * Display label per date status. Single source of truth instead of deriving
177
197
  * the label with `replaceAll("_", " ")` / text-transform tricks, so each
@@ -281,8 +301,11 @@ declare function filterRegisteredVendorsForEvent(vendors: VendorType[] | null |
281
301
  declare function filterUnregisteredVendorsForEvent(vendors: UnregisteredVendorType[], eventStartDates: Set<string>, selectedDate: string | null, selectedCategory: string | null): UnregisteredVendorType[];
282
302
  declare function filterRegisteredVendorsByEventDatesOnly(vendors: VendorType[] | null | undefined, eventStartDates: Set<string>): VendorType[];
283
303
  declare function filterUnregisteredVendorsByEventDatesOnly(vendors: UnregisteredVendorType[], eventStartDates: Set<string>): UnregisteredVendorType[];
284
- declare function collectStallholderStartDates(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
285
- declare function getEventDatesWithStallholders(eventDateTime: DateTimeType[] | undefined, stallholderStartDates: string[]): DateTimeType[];
304
+ declare function collectStallholderDateTimes(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): Array<{
305
+ startDate?: string;
306
+ startTime?: string;
307
+ }>;
308
+ declare function getUniqueStallholderStartDates(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
286
309
  declare function getStallholderCategoryNames(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
287
310
  declare function getStallholderCategoryOptions(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): StallholderFilterOption[];
288
311
  declare function getEventStallholderEmptyMessage(hasAnyStallholdersForEvent: boolean, selectedDate: string | null): string;
@@ -404,7 +427,13 @@ type GetEventStallholdersDataInput = {
404
427
  };
405
428
  /**
406
429
  * Derives every stallholder-list value an event detail screen needs from the
407
- * raw event dates, registered vendors, and unregistered vendors.
430
+ * event dates, registered vendors, and unregistered vendors.
431
+ *
432
+ * Date pills come from the relations, not the event schedule: they are the
433
+ * `startDate`s of the stallholders' relation dates / invitations (chronological
434
+ * and de-duplicated). `eventDateTime` is only used to decide which vendors and
435
+ * invitations actually belong to the event, mirroring the vendor screen where
436
+ * pills are also relation-sourced.
408
437
  *
409
438
  * Shared by the mobile event page and the admin market event page so the two
410
439
  * keep identical filtering / date-pill / empty-message behaviour.
@@ -453,4 +482,4 @@ declare function toUserFacingErrorMessage(error: string | null | undefined, fall
453
482
  /** Extracts and sanitizes an unknown catch/Apollo error for toasts and alerts. */
454
483
  declare function getErrorMessage(error: unknown, fallback?: string): string;
455
484
 
456
- export { AFFILIATE_PARTICIPANT_TYPE_LABELS, AFFILIATE_REWARDS, ANDROID_URL, BILLING_CATALOG_CURRENCY, BILLING_CATALOG_DEFINITIONS, BILLING_CATALOG_KEYS, CLUEMART_MAIN_DOMAIN_URL, CM_AFFILIATE_PROMO_CODE, CM_SCHOOL_PROMO_CODE, type CalendarSheetContentData, DEFAULT_PAGE_SIZE, DEFAULT_RESOURCES_RETURN_LIMIT, DEFAULT_RESOURCES_RETURN_OFFSET, DEFAULT_USER_FACING_ERROR, EVENT_DATE_STATUS_LABELS, EVENT_DATE_STATUS_PERIOD_MAP, type EventScheduleStatusPresentation, type EventScheduleStatusTone, type EventStallholderDateOption, type EventStallholdersData, FUTURE_EVENT_DATE_STATUSES, type GetEventStallholdersDataInput, type GetVendorEventsDataInput, INITIAL_BILLING_CATALOG, IOS_URL, MANUAL_DATE_STATUSES, NETWORK_USER_FACING_ERROR, PRESERVED_RELATION_DATE_STATUSES, PostTypeLabels, SCHOOL_MAX_STUDENT_COUNT, SCHOOL_MIN_STUDENT_COUNT, type StallholderFilterOption, type VendorEventDateOption, type VendorEventsData, accumulateItems, availableRegionOptions, availableRegionTypes, billingCatalogDefinitionMatches, buildCalendarSheetContentData, buildRelationEligibleEventSchedule, capitalizeFirstLetter, cluemartSocialMedia, collectStallholderStartDates, collectVendorEventRelationDateTimes, computeDailyClueState, computeHasMore, countLetterOccurrences, countLetterOccurrencesUpTo, createAffiliateReward, dateFormat, defaultGetId, eventHasSelectedDate, eventMatchesDateStatusPeriod, eventStartDatesSet, filterDatesByFutureStatus, filterEventsByDateStatusPeriod, filterRegisteredVendorsByEventDatesOnly, filterRegisteredVendorsForEvent, filterUnregisteredVendorsByEventDatesOnly, filterUnregisteredVendorsForEvent, filterVendorEventsBySelectedDate, findEventDateTimeByIsoDate, formatDate, formatDistance, formatIrdNumber, formatNZBankAccount, formatTimestamp, fromCalendarIsoDate, futureTimePeriods, getAllowedEventDateStatuses, getBillingCatalogKeyForSelection, getCurrentAndFutureDates, getDailyClueDayIndex, getDistanceInKilometers, getDistanceInMeters, getErrorMessage, getEventCalendarIsoDates, getEventDatesWithStallholders, getEventScheduleStatusLabel, getEventScheduleStatusPresentation, getEventScheduleStatusTone, getEventStallholderEmptyMessage, getEventStallholdersData, getFutureEventStatus, getRegisteredVendorCategoryNames, getRegisteredVendorStartDates, getStallholderCategoryNames, getStallholderCategoryOptions, getUnregisteredVendorCategoryNames, getUnregisteredVendorStartDates, getVendorEventRelationDateOptions, getVendorEventRelationStartDates, getVendorEventsData, getVendorEventsEmptyMessage, hasMatchingEventDate, isFutureDatesBeforeThreshold, isFutureEventDateStatus, isInternalErrorMessage, isIsoDateString, isResourceImageActive, isTransientNetworkError, isValidIrdNumber, licenseNiceNames, mapArrayToOptions, matchesCategory, matchesSelectedDate, normalizeIrdNumber, normalizeResourceImage, normalizeUrl, nzStartOfDay, paymentMethodOptions, relationHasSelectedDate, removeTypename, resolveResourceImageActive, rewardNiceNames, seededShuffle, shouldShowEventActionsWithWeather, sortDatesChronologically, statusOptions, timeFormat, toCalendarIsoDate, toNZTime, toUserFacingErrorMessage, truncateText, updateSingleDateTimeStatus, vendorLicences };
485
+ export { AFFILIATE_PARTICIPANT_TYPE_LABELS, AFFILIATE_REWARDS, ANDROID_URL, BILLING_CATALOG_CURRENCY, BILLING_CATALOG_DEFINITIONS, BILLING_CATALOG_KEYS, CLUEMART_MAIN_DOMAIN_URL, CM_AFFILIATE_PROMO_CODE, CM_SCHOOL_PROMO_CODE, type CalendarSheetContentData, DEFAULT_PAGE_SIZE, DEFAULT_RESOURCES_RETURN_LIMIT, DEFAULT_RESOURCES_RETURN_OFFSET, DEFAULT_USER_FACING_ERROR, EVENT_DATE_STATUS_LABELS, EVENT_DATE_STATUS_PERIOD_MAP, type EventScheduleStatusPresentation, type EventScheduleStatusTone, type EventStallholderDateOption, type EventStallholdersData, FUTURE_EVENT_DATE_STATUSES, type GetEventStallholdersDataInput, type GetVendorEventsDataInput, INITIAL_BILLING_CATALOG, IOS_URL, MANUAL_DATE_STATUSES, NETWORK_USER_FACING_ERROR, PRESERVED_RELATION_DATE_STATUSES, PostTypeLabels, SCHOOL_MAX_STUDENT_COUNT, SCHOOL_MIN_STUDENT_COUNT, type StallholderFilterOption, type VendorEventDateOption, type VendorEventsData, accumulateItems, availableRegionOptions, availableRegionTypes, billingCatalogDefinitionMatches, buildCalendarSheetContentData, buildRelationEligibleEventSchedule, capitalizeFirstLetter, cluemartSocialMedia, collectStallholderDateTimes, collectVendorEventRelationDateTimes, computeDailyClueState, computeHasMore, countLetterOccurrences, countLetterOccurrencesUpTo, createAffiliateReward, dateFormat, defaultGetId, eventHasSelectedDate, eventMatchesDateStatusPeriod, eventStartDatesSet, filterDatesByFutureStatus, filterEventsByDateStatusPeriod, filterRegisteredVendorsByEventDatesOnly, filterRegisteredVendorsForEvent, filterUnregisteredVendorsByEventDatesOnly, filterUnregisteredVendorsForEvent, filterVendorEventsBySelectedDate, findEventDateTimeByIsoDate, formatDate, formatDistance, formatIrdNumber, formatNZBankAccount, formatTimestamp, fromCalendarIsoDate, futureTimePeriods, getAllowedEventDateStatuses, getBillingCatalogKeyForSelection, getCurrentAndFutureDates, getDailyClueDayIndex, getDistanceInKilometers, getDistanceInMeters, getErrorMessage, getEventCalendarIsoDates, getEventScheduleStatusLabel, getEventScheduleStatusPresentation, getEventScheduleStatusTone, getEventStallholderEmptyMessage, getEventStallholdersData, getFutureEventStatus, getRegisteredVendorCategoryNames, getRegisteredVendorStartDates, getStallholderCategoryNames, getStallholderCategoryOptions, getUniqueStallholderStartDates, getUniqueStartDates, getUnregisteredVendorCategoryNames, getUnregisteredVendorStartDates, getVendorEventRelationDateOptions, getVendorEventRelationStartDates, getVendorEventsData, getVendorEventsEmptyMessage, hasMatchingEventDate, isFutureDatesBeforeThreshold, isFutureEventDateStatus, isInternalErrorMessage, isIsoDateString, isResourceImageActive, isTransientNetworkError, isValidIrdNumber, licenseNiceNames, mapArrayToOptions, matchesCategory, matchesSelectedDate, normalizeIrdNumber, normalizeResourceImage, normalizeUrl, nzStartOfDay, paymentMethodOptions, relationHasSelectedDate, removeTypename, resolveResourceImageActive, rewardNiceNames, seededShuffle, shouldShowEventActionsWithWeather, sortDatesChronologically, statusOptions, sumUserOverallPoints, timeFormat, toCalendarIsoDate, toNZTime, toUserFacingErrorMessage, truncateText, updateSingleDateTimeStatus, vendorLicences };
@@ -1,10 +1,10 @@
1
- import { a4 as DailyClueGameData, al as GamePlacementClue, ak as GamePlacement, O as OptionItem, af as EnumPostType, aW as SocialMediaType, aU as ResourceImageType, a6 as DateTimeType, L as LocationType, i as VendorType, h as UnregisteredVendorType, d as EventListItemType } from '../global-B4mmQo6R.js';
1
+ import { a4 as DailyClueGameData, al as GamePlacementClue, ak as GamePlacement, O as OptionItem, af as EnumPostType, aW as SocialMediaType, aU as ResourceImageType, a6 as DateTimeType, L as LocationType, i as VendorType, h as UnregisteredVendorType, d as EventListItemType } from '../global-DlC7W4p7.js';
2
2
  import dayjs from 'dayjs';
3
3
  import { EnumEventDateStatus, EnumRegions, EnumUserLicence, EnumReward, EnumInviteStatus, EnumResourceType, EnumBillingPeriod } from '../enums/index.js';
4
- import { h as EnumAffiliateRewardType, f as AffiliateRewardType } from '../affiliate-CxZHVZb2.js';
4
+ import { n as UserOverallPointsEntry } from '../user-BSFExFvl.js';
5
+ import { h as EnumAffiliateRewardType, f as AffiliateRewardType } from '../affiliate-CdIL0r2o.js';
5
6
  import { c as BillingCatalogKey, a as BillingCatalogDefinition, b as BillingCatalogInitialEntry, B as BillingCatalogEntryType } from '../billingCatalog-oWAfZX95.js';
6
7
  import 'react-hook-form';
7
- import '../user-IR0bHKFb.js';
8
8
 
9
9
  /** Seeded shuffle so all players see the same letter order / placements for a game. */
10
10
  declare function seededShuffle<T>(array: readonly T[], seed: string): T[];
@@ -99,6 +99,15 @@ declare function sortDatesChronologically<T extends {
99
99
  startDate?: string;
100
100
  startTime?: string;
101
101
  }>(dates: T[]): T[];
102
+ /**
103
+ * Start dates of the given date/time slots, chronological and de-duplicated.
104
+ * Slots that share a `startDate` (e.g. two stall slots on the same day) collapse
105
+ * into a single entry.
106
+ */
107
+ declare function getUniqueStartDates(dates: Array<{
108
+ startDate?: string;
109
+ startTime?: string;
110
+ }> | null | undefined): string[];
102
111
  /**
103
112
  * UI filter options for user-activity event periods. Derived from the canonical
104
113
  * {@link FUTURE_EVENT_DATE_STATUSES} list, minus `STARTING_SOON` (a presentational
@@ -172,6 +181,17 @@ declare function isResourceImageActive(image: ResourceImageLike | null | undefin
172
181
  declare const SCHOOL_MIN_STUDENT_COUNT = 300;
173
182
  declare const SCHOOL_MAX_STUDENT_COUNT = 0;
174
183
 
184
+ /**
185
+ * Spendable points for a user.
186
+ *
187
+ * `overallPoints` is an append-only ledger (one entry per award), so the total
188
+ * is always the sum of every entry rather than a single stored number.
189
+ *
190
+ * Nullish ledgers and nullish entries are skipped, so a partially written
191
+ * document cannot throw while the total is computed.
192
+ */
193
+ declare function sumUserOverallPoints(points: (UserOverallPointsEntry | null | undefined)[] | null | undefined): number;
194
+
175
195
  /**
176
196
  * Display label per date status. Single source of truth instead of deriving
177
197
  * the label with `replaceAll("_", " ")` / text-transform tricks, so each
@@ -281,8 +301,11 @@ declare function filterRegisteredVendorsForEvent(vendors: VendorType[] | null |
281
301
  declare function filterUnregisteredVendorsForEvent(vendors: UnregisteredVendorType[], eventStartDates: Set<string>, selectedDate: string | null, selectedCategory: string | null): UnregisteredVendorType[];
282
302
  declare function filterRegisteredVendorsByEventDatesOnly(vendors: VendorType[] | null | undefined, eventStartDates: Set<string>): VendorType[];
283
303
  declare function filterUnregisteredVendorsByEventDatesOnly(vendors: UnregisteredVendorType[], eventStartDates: Set<string>): UnregisteredVendorType[];
284
- declare function collectStallholderStartDates(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
285
- declare function getEventDatesWithStallholders(eventDateTime: DateTimeType[] | undefined, stallholderStartDates: string[]): DateTimeType[];
304
+ declare function collectStallholderDateTimes(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): Array<{
305
+ startDate?: string;
306
+ startTime?: string;
307
+ }>;
308
+ declare function getUniqueStallholderStartDates(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
286
309
  declare function getStallholderCategoryNames(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
287
310
  declare function getStallholderCategoryOptions(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): StallholderFilterOption[];
288
311
  declare function getEventStallholderEmptyMessage(hasAnyStallholdersForEvent: boolean, selectedDate: string | null): string;
@@ -404,7 +427,13 @@ type GetEventStallholdersDataInput = {
404
427
  };
405
428
  /**
406
429
  * Derives every stallholder-list value an event detail screen needs from the
407
- * raw event dates, registered vendors, and unregistered vendors.
430
+ * event dates, registered vendors, and unregistered vendors.
431
+ *
432
+ * Date pills come from the relations, not the event schedule: they are the
433
+ * `startDate`s of the stallholders' relation dates / invitations (chronological
434
+ * and de-duplicated). `eventDateTime` is only used to decide which vendors and
435
+ * invitations actually belong to the event, mirroring the vendor screen where
436
+ * pills are also relation-sourced.
408
437
  *
409
438
  * Shared by the mobile event page and the admin market event page so the two
410
439
  * keep identical filtering / date-pill / empty-message behaviour.
@@ -453,4 +482,4 @@ declare function toUserFacingErrorMessage(error: string | null | undefined, fall
453
482
  /** Extracts and sanitizes an unknown catch/Apollo error for toasts and alerts. */
454
483
  declare function getErrorMessage(error: unknown, fallback?: string): string;
455
484
 
456
- export { AFFILIATE_PARTICIPANT_TYPE_LABELS, AFFILIATE_REWARDS, ANDROID_URL, BILLING_CATALOG_CURRENCY, BILLING_CATALOG_DEFINITIONS, BILLING_CATALOG_KEYS, CLUEMART_MAIN_DOMAIN_URL, CM_AFFILIATE_PROMO_CODE, CM_SCHOOL_PROMO_CODE, type CalendarSheetContentData, DEFAULT_PAGE_SIZE, DEFAULT_RESOURCES_RETURN_LIMIT, DEFAULT_RESOURCES_RETURN_OFFSET, DEFAULT_USER_FACING_ERROR, EVENT_DATE_STATUS_LABELS, EVENT_DATE_STATUS_PERIOD_MAP, type EventScheduleStatusPresentation, type EventScheduleStatusTone, type EventStallholderDateOption, type EventStallholdersData, FUTURE_EVENT_DATE_STATUSES, type GetEventStallholdersDataInput, type GetVendorEventsDataInput, INITIAL_BILLING_CATALOG, IOS_URL, MANUAL_DATE_STATUSES, NETWORK_USER_FACING_ERROR, PRESERVED_RELATION_DATE_STATUSES, PostTypeLabels, SCHOOL_MAX_STUDENT_COUNT, SCHOOL_MIN_STUDENT_COUNT, type StallholderFilterOption, type VendorEventDateOption, type VendorEventsData, accumulateItems, availableRegionOptions, availableRegionTypes, billingCatalogDefinitionMatches, buildCalendarSheetContentData, buildRelationEligibleEventSchedule, capitalizeFirstLetter, cluemartSocialMedia, collectStallholderStartDates, collectVendorEventRelationDateTimes, computeDailyClueState, computeHasMore, countLetterOccurrences, countLetterOccurrencesUpTo, createAffiliateReward, dateFormat, defaultGetId, eventHasSelectedDate, eventMatchesDateStatusPeriod, eventStartDatesSet, filterDatesByFutureStatus, filterEventsByDateStatusPeriod, filterRegisteredVendorsByEventDatesOnly, filterRegisteredVendorsForEvent, filterUnregisteredVendorsByEventDatesOnly, filterUnregisteredVendorsForEvent, filterVendorEventsBySelectedDate, findEventDateTimeByIsoDate, formatDate, formatDistance, formatIrdNumber, formatNZBankAccount, formatTimestamp, fromCalendarIsoDate, futureTimePeriods, getAllowedEventDateStatuses, getBillingCatalogKeyForSelection, getCurrentAndFutureDates, getDailyClueDayIndex, getDistanceInKilometers, getDistanceInMeters, getErrorMessage, getEventCalendarIsoDates, getEventDatesWithStallholders, getEventScheduleStatusLabel, getEventScheduleStatusPresentation, getEventScheduleStatusTone, getEventStallholderEmptyMessage, getEventStallholdersData, getFutureEventStatus, getRegisteredVendorCategoryNames, getRegisteredVendorStartDates, getStallholderCategoryNames, getStallholderCategoryOptions, getUnregisteredVendorCategoryNames, getUnregisteredVendorStartDates, getVendorEventRelationDateOptions, getVendorEventRelationStartDates, getVendorEventsData, getVendorEventsEmptyMessage, hasMatchingEventDate, isFutureDatesBeforeThreshold, isFutureEventDateStatus, isInternalErrorMessage, isIsoDateString, isResourceImageActive, isTransientNetworkError, isValidIrdNumber, licenseNiceNames, mapArrayToOptions, matchesCategory, matchesSelectedDate, normalizeIrdNumber, normalizeResourceImage, normalizeUrl, nzStartOfDay, paymentMethodOptions, relationHasSelectedDate, removeTypename, resolveResourceImageActive, rewardNiceNames, seededShuffle, shouldShowEventActionsWithWeather, sortDatesChronologically, statusOptions, timeFormat, toCalendarIsoDate, toNZTime, toUserFacingErrorMessage, truncateText, updateSingleDateTimeStatus, vendorLicences };
485
+ export { AFFILIATE_PARTICIPANT_TYPE_LABELS, AFFILIATE_REWARDS, ANDROID_URL, BILLING_CATALOG_CURRENCY, BILLING_CATALOG_DEFINITIONS, BILLING_CATALOG_KEYS, CLUEMART_MAIN_DOMAIN_URL, CM_AFFILIATE_PROMO_CODE, CM_SCHOOL_PROMO_CODE, type CalendarSheetContentData, DEFAULT_PAGE_SIZE, DEFAULT_RESOURCES_RETURN_LIMIT, DEFAULT_RESOURCES_RETURN_OFFSET, DEFAULT_USER_FACING_ERROR, EVENT_DATE_STATUS_LABELS, EVENT_DATE_STATUS_PERIOD_MAP, type EventScheduleStatusPresentation, type EventScheduleStatusTone, type EventStallholderDateOption, type EventStallholdersData, FUTURE_EVENT_DATE_STATUSES, type GetEventStallholdersDataInput, type GetVendorEventsDataInput, INITIAL_BILLING_CATALOG, IOS_URL, MANUAL_DATE_STATUSES, NETWORK_USER_FACING_ERROR, PRESERVED_RELATION_DATE_STATUSES, PostTypeLabels, SCHOOL_MAX_STUDENT_COUNT, SCHOOL_MIN_STUDENT_COUNT, type StallholderFilterOption, type VendorEventDateOption, type VendorEventsData, accumulateItems, availableRegionOptions, availableRegionTypes, billingCatalogDefinitionMatches, buildCalendarSheetContentData, buildRelationEligibleEventSchedule, capitalizeFirstLetter, cluemartSocialMedia, collectStallholderDateTimes, collectVendorEventRelationDateTimes, computeDailyClueState, computeHasMore, countLetterOccurrences, countLetterOccurrencesUpTo, createAffiliateReward, dateFormat, defaultGetId, eventHasSelectedDate, eventMatchesDateStatusPeriod, eventStartDatesSet, filterDatesByFutureStatus, filterEventsByDateStatusPeriod, filterRegisteredVendorsByEventDatesOnly, filterRegisteredVendorsForEvent, filterUnregisteredVendorsByEventDatesOnly, filterUnregisteredVendorsForEvent, filterVendorEventsBySelectedDate, findEventDateTimeByIsoDate, formatDate, formatDistance, formatIrdNumber, formatNZBankAccount, formatTimestamp, fromCalendarIsoDate, futureTimePeriods, getAllowedEventDateStatuses, getBillingCatalogKeyForSelection, getCurrentAndFutureDates, getDailyClueDayIndex, getDistanceInKilometers, getDistanceInMeters, getErrorMessage, getEventCalendarIsoDates, getEventScheduleStatusLabel, getEventScheduleStatusPresentation, getEventScheduleStatusTone, getEventStallholderEmptyMessage, getEventStallholdersData, getFutureEventStatus, getRegisteredVendorCategoryNames, getRegisteredVendorStartDates, getStallholderCategoryNames, getStallholderCategoryOptions, getUniqueStallholderStartDates, getUniqueStartDates, getUnregisteredVendorCategoryNames, getUnregisteredVendorStartDates, getVendorEventRelationDateOptions, getVendorEventRelationStartDates, getVendorEventsData, getVendorEventsEmptyMessage, hasMatchingEventDate, isFutureDatesBeforeThreshold, isFutureEventDateStatus, isInternalErrorMessage, isIsoDateString, isResourceImageActive, isTransientNetworkError, isValidIrdNumber, licenseNiceNames, mapArrayToOptions, matchesCategory, matchesSelectedDate, normalizeIrdNumber, normalizeResourceImage, normalizeUrl, nzStartOfDay, paymentMethodOptions, relationHasSelectedDate, removeTypename, resolveResourceImageActive, rewardNiceNames, seededShuffle, shouldShowEventActionsWithWeather, sortDatesChronologically, statusOptions, sumUserOverallPoints, timeFormat, toCalendarIsoDate, toNZTime, toUserFacingErrorMessage, truncateText, updateSingleDateTimeStatus, vendorLicences };
@@ -24,7 +24,7 @@ import {
24
24
  buildCalendarSheetContentData,
25
25
  capitalizeFirstLetter,
26
26
  cluemartSocialMedia,
27
- collectStallholderStartDates,
27
+ collectStallholderDateTimes,
28
28
  collectVendorEventRelationDateTimes,
29
29
  computeDailyClueState,
30
30
  countLetterOccurrences,
@@ -45,7 +45,6 @@ import {
45
45
  getDailyClueDayIndex,
46
46
  getErrorMessage,
47
47
  getEventCalendarIsoDates,
48
- getEventDatesWithStallholders,
49
48
  getEventScheduleStatusLabel,
50
49
  getEventScheduleStatusPresentation,
51
50
  getEventScheduleStatusTone,
@@ -55,6 +54,7 @@ import {
55
54
  getRegisteredVendorStartDates,
56
55
  getStallholderCategoryNames,
57
56
  getStallholderCategoryOptions,
57
+ getUniqueStallholderStartDates,
58
58
  getUnregisteredVendorCategoryNames,
59
59
  getUnregisteredVendorStartDates,
60
60
  getVendorEventRelationDateOptions,
@@ -80,11 +80,12 @@ import {
80
80
  seededShuffle,
81
81
  shouldShowEventActionsWithWeather,
82
82
  statusOptions,
83
+ sumUserOverallPoints,
83
84
  toCalendarIsoDate,
84
85
  toUserFacingErrorMessage,
85
86
  truncateText,
86
87
  vendorLicences
87
- } from "../chunk-NRNLARYC.mjs";
88
+ } from "../chunk-VHNCSCQU.mjs";
88
89
  import {
89
90
  formatDistance,
90
91
  getDistanceInKilometers,
@@ -106,6 +107,7 @@ import {
106
107
  getAllowedEventDateStatuses,
107
108
  getCurrentAndFutureDates,
108
109
  getFutureEventStatus,
110
+ getUniqueStartDates,
109
111
  isFutureDatesBeforeThreshold,
110
112
  isFutureEventDateStatus,
111
113
  isIsoDateString,
@@ -114,8 +116,8 @@ import {
114
116
  timeFormat,
115
117
  toNZTime,
116
118
  updateSingleDateTimeStatus
117
- } from "../chunk-YFFCHTJS.mjs";
118
- import "../chunk-IKRXLKJ3.mjs";
119
+ } from "../chunk-PJY7OAQ2.mjs";
120
+ import "../chunk-5AAYX364.mjs";
119
121
  import {
120
122
  isTransientNetworkError
121
123
  } from "../chunk-RAYUJODN.mjs";
@@ -126,7 +128,7 @@ import {
126
128
  computeHasMore,
127
129
  defaultGetId
128
130
  } from "../chunk-7DQBUZXY.mjs";
129
- import "../chunk-U3KUTQ43.mjs";
131
+ import "../chunk-XGGFB7HY.mjs";
130
132
  export {
131
133
  AFFILIATE_PARTICIPANT_TYPE_LABELS,
132
134
  AFFILIATE_REWARDS,
@@ -160,7 +162,7 @@ export {
160
162
  buildRelationEligibleEventSchedule,
161
163
  capitalizeFirstLetter,
162
164
  cluemartSocialMedia,
163
- collectStallholderStartDates,
165
+ collectStallholderDateTimes,
164
166
  collectVendorEventRelationDateTimes,
165
167
  computeDailyClueState,
166
168
  computeHasMore,
@@ -195,7 +197,6 @@ export {
195
197
  getDistanceInMeters,
196
198
  getErrorMessage,
197
199
  getEventCalendarIsoDates,
198
- getEventDatesWithStallholders,
199
200
  getEventScheduleStatusLabel,
200
201
  getEventScheduleStatusPresentation,
201
202
  getEventScheduleStatusTone,
@@ -206,6 +207,8 @@ export {
206
207
  getRegisteredVendorStartDates,
207
208
  getStallholderCategoryNames,
208
209
  getStallholderCategoryOptions,
210
+ getUniqueStallholderStartDates,
211
+ getUniqueStartDates,
209
212
  getUnregisteredVendorCategoryNames,
210
213
  getUnregisteredVendorStartDates,
211
214
  getVendorEventRelationDateOptions,
@@ -237,6 +240,7 @@ export {
237
240
  shouldShowEventActionsWithWeather,
238
241
  sortDatesChronologically,
239
242
  statusOptions,
243
+ sumUserOverallPoints,
240
244
  timeFormat,
241
245
  toCalendarIsoDate,
242
246
  toNZTime,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@timardex/cluemart-shared",
3
- "version": "2.2.30",
3
+ "version": "2.2.41",
4
4
  "description": "",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/graphql/hooks/auth.ts","../src/graphql/mutations/auth.ts","../src/graphql/queries/global.ts","../src/graphql/queries/event.ts","../src/graphql/queries/partner.ts","../src/graphql/queries/vendor.ts","../src/graphql/queries/user.ts","../src/graphql/hooks/user/hooksQuery.ts"],"sourcesContent":["import { useMutation } from \"@apollo/client\";\n\nimport {\n AuthMutationResponse,\n RefreshImpersonationMutationResponse,\n RefreshTokenMutationResponse,\n StartImpersonationMutationResponse,\n} from \"src/types/auth\";\nimport { MutationResponse } from \"src/types/global\";\n\nimport {\n END_IMPERSONATION_MUTATION,\n LOGIN_MUTATION,\n LOGOUT_MUTATION,\n REFRESH_IMPERSONATION_MUTATION,\n REFRESH_TOKEN_MUTATION,\n REGISTER_MUTATION,\n REQUEST_PASSWORD_RESET_MUTATION,\n RESET_PASSWORD_MUTATION,\n START_IMPERSONATION_MUTATION,\n VALIDATE_VERIFICATION_TOKEN_MUTATION,\n} from \"../mutations/auth\";\n\ntype MessageOnlyResponse = MutationResponse<boolean>;\n\nexport const useRegister = () => {\n const [register, { loading, error }] = useMutation<{\n register: AuthMutationResponse;\n }>(REGISTER_MUTATION);\n return { error, loading, register };\n};\n\nexport const useLogin = () => {\n const [login, { loading, error }] = useMutation<{\n login: AuthMutationResponse;\n }>(LOGIN_MUTATION);\n return { error, loading, login };\n};\n\nexport const useLogout = () => {\n const [logout, { loading, error }] = useMutation<{\n logout: MessageOnlyResponse;\n }>(LOGOUT_MUTATION);\n return { error, loading, logout };\n};\n\nexport const useRefreshToken = () => {\n const [refreshToken, { loading, error }] = useMutation<{\n refreshToken: RefreshTokenMutationResponse;\n }>(REFRESH_TOKEN_MUTATION);\n return { error, loading, refreshToken };\n};\n\nexport const useStartImpersonation = () => {\n const [startImpersonation, { loading, error }] = useMutation<{\n startImpersonation: StartImpersonationMutationResponse;\n }>(START_IMPERSONATION_MUTATION);\n return { error, loading, startImpersonation };\n};\n\nexport const useRefreshImpersonation = () => {\n const [refreshImpersonation, { loading, error }] = useMutation<{\n refreshImpersonation: RefreshImpersonationMutationResponse;\n }>(REFRESH_IMPERSONATION_MUTATION);\n return { error, loading, refreshImpersonation };\n};\n\nexport const useEndImpersonation = () => {\n const [endImpersonation, { loading, error }] = useMutation<{\n endImpersonation: MessageOnlyResponse;\n }>(END_IMPERSONATION_MUTATION);\n return { endImpersonation, error, loading };\n};\n\nexport const useRequestPasswordReset = () => {\n const [requestPasswordReset, { loading, error }] = useMutation<{\n requestPasswordReset: MessageOnlyResponse;\n }>(REQUEST_PASSWORD_RESET_MUTATION);\n\n return { error, loading, requestPasswordReset };\n};\n\nexport const useValidateVerificationToken = () => {\n const [validateVerificationToken, { loading, error }] = useMutation<{\n validateVerificationToken: MessageOnlyResponse;\n }>(VALIDATE_VERIFICATION_TOKEN_MUTATION);\n\n return { error, loading, validateVerificationToken };\n};\n\nexport const useResetPassword = () => {\n const [resetPassword, { loading, error }] = useMutation<{\n resetPassword: MessageOnlyResponse;\n }>(RESET_PASSWORD_MUTATION);\n\n return { error, loading, resetPassword };\n};\n","import { gql } from \"@apollo/client\";\n\nimport { USER_FIELDS_FRAGMENT } from \"../queries/global\";\n\nexport const REGISTER_MUTATION = gql`\n mutation register($input: RegisterInputType!) {\n register(input: $input) {\n data {\n refreshToken\n token\n user {\n ...UserFields\n }\n }\n message\n }\n }\n ${USER_FIELDS_FRAGMENT}\n`;\n\nexport const LOGIN_MUTATION = gql`\n mutation login($input: LoginInputType!) {\n login(input: $input) {\n data {\n refreshToken\n token\n user {\n ...UserFields\n }\n }\n message\n }\n }\n ${USER_FIELDS_FRAGMENT}\n`;\n\nexport const LOGOUT_MUTATION = gql`\n mutation logout {\n logout {\n data\n message\n }\n }\n`;\n\nexport const REFRESH_TOKEN_MUTATION = gql`\n mutation refreshToken($input: RefreshTokenInputType!) {\n refreshToken(input: $input) {\n data {\n refreshToken\n token\n }\n message\n }\n }\n`;\n\nexport const START_IMPERSONATION_MUTATION = gql`\n mutation startImpersonation($input: StartImpersonationInputType!) {\n startImpersonation(input: $input) {\n data {\n expiresAt\n refreshToken\n sessionId\n token\n user {\n ...UserFields\n }\n }\n message\n }\n }\n ${USER_FIELDS_FRAGMENT}\n`;\n\nexport const REFRESH_IMPERSONATION_MUTATION = gql`\n mutation refreshImpersonation($input: RefreshImpersonationInputType!) {\n refreshImpersonation(input: $input) {\n data {\n refreshToken\n token\n }\n message\n }\n }\n`;\n\nexport const END_IMPERSONATION_MUTATION = gql`\n mutation endImpersonation {\n endImpersonation {\n data\n message\n }\n }\n`;\n\nexport const RESET_PASSWORD_MUTATION = gql`\n mutation resetPassword($input: ResetPasswordInputType!) {\n resetPassword(input: $input) {\n data\n message\n }\n }\n`;\n\nexport const REQUEST_PASSWORD_RESET_MUTATION = gql`\n mutation requestPasswordReset($input: RequestPasswordResetInputType!) {\n requestPasswordReset(input: $input) {\n data\n message\n }\n }\n`;\n\nexport const VALIDATE_VERIFICATION_TOKEN_MUTATION = gql`\n mutation validateVerificationToken(\n $input: ValidateVerificationTokenInputType!\n ) {\n validateVerificationToken(input: $input) {\n data\n message\n }\n }\n`;\n","import { gql } from \"@apollo/client\";\n\nexport const POSTER_USAGE_FIELDS_FRAGMENT = gql`\n fragment PosterUsageFields on PosterUsageType {\n month\n count\n }\n`;\n\nexport const SOCIAL_MEDIA_FIELDS_FRAGMENT = gql`\n fragment SocialMediaFields on SocialMediaType {\n name\n link\n }\n`;\n\nexport const RESOURCE_IMAGE_FIELDS_FRAGMENT = gql`\n fragment ResourceImageFields on ResourceImageType {\n active\n source\n title\n }\n`;\n\nexport const OWNER_FIELDS_FRAGMENT = gql`\n fragment OwnerFields on OwnerType {\n email\n userId\n }\n`;\n\nexport const PRODUCT_COUPON_FIELDS_FRAGMENT = gql`\n fragment ProductCouponFields on ProductCouponType {\n couponDocumentId\n couponId\n }\n`;\n\nexport const CATEGORY_FIELDS_FRAGMENT = gql`\n fragment CategoryFields on CategoryType {\n id\n name\n subcategories {\n id\n items {\n id\n name\n }\n name\n }\n }\n`;\n\nexport const LICENCE_FIELDS_FRAGMENT = gql`\n fragment LicenceFields on UserLicenceType {\n expiryDate\n issuedDate\n licenceType\n prevLicenceType\n }\n`;\n\nexport const TERMS_AGREEMENT_FIELDS_FRAGMENT = gql`\n fragment TermsAgreementFields on TermsAgreementType {\n appBuildNumber\n appId\n appVersion\n brand\n deviceName\n installationId\n manufacturer\n modelName\n osName\n osVersion\n termVersion\n timestamp\n }\n`;\n\nexport const DATETIME_FIELDS_FRAGMENT = gql`\n fragment DateTimeFields on DateTimeType {\n dateStatus\n endDate\n endTime\n startDate\n startTime\n }\n`;\n\nexport const LOCATION_GEO_FIELDS_FRAGMENT = gql`\n fragment LocationGeoFields on LocationGeoType {\n coordinates\n type\n }\n`;\n\nexport const LOCATION_FIELDS_FRAGMENT = gql`\n fragment LocationFields on LocationType {\n city\n country\n fullAddress\n geo {\n ...LocationGeoFields\n }\n latitude\n longitude\n region\n }\n ${LOCATION_GEO_FIELDS_FRAGMENT}\n`;\n\nconst USER_ACTIVITY_FIELDS_FRAGMENT = gql`\n fragment UserActivityFields on UserActivityType {\n favourites {\n events\n partners\n vendors\n }\n going {\n events {\n resourceId\n dateTime {\n ...DateTimeFields\n }\n }\n }\n interested {\n events {\n resourceId\n dateTime {\n ...DateTimeFields\n }\n }\n }\n present {\n events {\n resourceId\n dateTime {\n ...DateTimeFields\n }\n }\n }\n }\n ${DATETIME_FIELDS_FRAGMENT}\n`;\n\nexport const REDEEMED_REWARD_FIELDS_FRAGMENT = gql`\n fragment RedeemedRewardFields on RedeemedRewardType {\n name\n pointsUsed\n redeemedAt\n }\n`;\n\nconst STRIPE_FIELDS_FRAGMENT = gql`\n fragment StripeSubscriptionFields on StripeSubscriptionType {\n billingPeriod\n cancelAtPeriodEnd\n customerId\n subscriptionId\n status\n currentPlan\n startDate\n endDate\n paymentFailedAt\n paymentGracePeriodEndsAt\n pendingPlan\n pendingBillingPeriod\n pendingChangeEffectiveAt\n priceId\n scheduleId\n }\n`;\n\nexport const USER_FIELDS_FRAGMENT = gql`\n fragment UserFields on UserType {\n _id\n active\n affiliate\n avatar {\n ...ResourceImageFields\n }\n coupon\n createdAt\n deletedAt\n email\n events\n firstName\n game\n isTester\n interests\n lastName\n nickName\n licences {\n ...LicenceFields\n }\n location {\n ...LocationFields\n }\n partner\n overallPoints\n platform\n preferredRegion\n permissions\n promoCodes\n roles\n redeemedRewards {\n ...RedeemedRewardFields\n }\n school\n stripe {\n ...StripeSubscriptionFields\n }\n termsAgreement {\n ...TermsAgreementFields\n }\n userActivity {\n ...UserActivityFields\n }\n vendor\n updatedAt\n }\n ${RESOURCE_IMAGE_FIELDS_FRAGMENT}\n ${TERMS_AGREEMENT_FIELDS_FRAGMENT}\n ${USER_ACTIVITY_FIELDS_FRAGMENT}\n ${LICENCE_FIELDS_FRAGMENT}\n ${LOCATION_FIELDS_FRAGMENT}\n ${REDEEMED_REWARD_FIELDS_FRAGMENT}\n ${STRIPE_FIELDS_FRAGMENT}\n`;\n\nexport const STALL_TYPE_FIELDS_FRAGMENT = gql`\n fragment StallTypeFields on StallTypeType {\n label\n price\n stallCapacity\n }\n`;\n\nexport const RELATION_DATES_FRAGMENT = gql`\n fragment RelationDates on RelationDateType {\n dateTime {\n dateStatus\n endDate\n endTime\n startDate\n startTime\n stallType {\n ...StallTypeFields\n }\n }\n lastUpdateBy {\n resourceId\n userEmail\n }\n paymentReference\n status\n }\n ${STALL_TYPE_FIELDS_FRAGMENT}\n`;\n\nexport const CONTACT_DETAILS_FIELDS_FRAGMENT = gql`\n fragment ContactDetailsFields on ContactDetailsType {\n email\n landlinePhone\n mobilePhone\n }\n`;\n\nexport const EVENT_LIST_ITEM = gql`\n fragment EventListItemFields on EventListItemType {\n _id\n active\n approvedAt\n claimed\n cover {\n ...ResourceImageFields\n }\n createdAt\n dateTime {\n ...DateTimeFields\n }\n deletedAt\n description\n eventType\n googlePlaceId\n images {\n ...ResourceImageFields\n }\n location {\n ...LocationFields\n }\n logo {\n ...ResourceImageFields\n }\n name\n rainOrShine\n rating\n region\n relations {\n relationId\n relationDates {\n ...RelationDates\n }\n }\n reviewCount\n slug\n updatedAt\n }\n ${DATETIME_FIELDS_FRAGMENT}\n ${LOCATION_FIELDS_FRAGMENT}\n ${RESOURCE_IMAGE_FIELDS_FRAGMENT}\n ${RELATION_DATES_FRAGMENT}\n`;\n\nexport const RELATED_POST_FIELDS_FRAGMENT = gql`\n fragment RelatedPostFields on RelatedPostType {\n postActive\n postId\n postSlug\n postType\n }\n`;\n\nexport const SOCIAL_SHARE_RESOURCE_FIELDS_FRAGMENT = gql`\n fragment SocialShareResourceFields on SocialShareResourceType {\n qrCode {\n ...ResourceImageFields\n }\n socialImage {\n ...ResourceImageFields\n }\n }\n ${RESOURCE_IMAGE_FIELDS_FRAGMENT}\n`;\n","import { gql } from \"@apollo/client\";\n\nimport {\n CONTACT_DETAILS_FIELDS_FRAGMENT,\n DATETIME_FIELDS_FRAGMENT,\n OWNER_FIELDS_FRAGMENT,\n POSTER_USAGE_FIELDS_FRAGMENT,\n RELATION_DATES_FRAGMENT,\n RESOURCE_IMAGE_FIELDS_FRAGMENT,\n SOCIAL_MEDIA_FIELDS_FRAGMENT,\n STALL_TYPE_FIELDS_FRAGMENT,\n TERMS_AGREEMENT_FIELDS_FRAGMENT,\n LOCATION_FIELDS_FRAGMENT,\n EVENT_LIST_ITEM,\n RELATED_POST_FIELDS_FRAGMENT,\n SOCIAL_SHARE_RESOURCE_FIELDS_FRAGMENT,\n} from \"./global\";\n\nexport const EVENT_INFO = gql`\n fragment EventInfoFields on EventInfoType {\n _id\n applicationDeadlineHours\n dateTime {\n dateStatus\n endDate\n endTime\n stallTypes {\n ...StallTypeFields\n }\n startDate\n startTime\n }\n eventId\n packInTime\n paymentDueHours\n paymentInfo {\n accountHolderName\n accountNumber\n link\n paymentMethod\n }\n refundPolicy {\n category\n label\n value\n }\n requirements {\n category\n label\n value\n }\n }\n ${STALL_TYPE_FIELDS_FRAGMENT}\n`;\n\nexport const EVENT = gql`\n fragment EventFields on EventType {\n _id\n active\n adIds\n approvedAt\n cover {\n ...ResourceImageFields\n }\n claimed\n createdAt\n contactDetails {\n ...ContactDetailsFields\n }\n dateTime {\n ...DateTimeFields\n }\n description\n deletedAt\n googlePlaceId\n images {\n ...ResourceImageFields\n }\n eventType\n location {\n ...LocationFields\n }\n logo {\n ...ResourceImageFields\n }\n eventInfoId\n name\n nzbn\n owner {\n ...OwnerFields\n }\n promoCodes\n provider\n posterUsage {\n ...PosterUsageFields\n }\n region\n relations {\n relationId\n relationDates {\n ...RelationDates\n }\n }\n rating\n reviewCount\n rainOrShine\n relatedPost {\n ...RelatedPostFields\n }\n socialMedia {\n ...SocialMediaFields\n }\n sharePublic {\n ...SocialShareResourceFields\n }\n shareRelation {\n ...SocialShareResourceFields\n }\n slug\n tags\n termsAgreement {\n ...TermsAgreementFields\n }\n updatedAt\n }\n ${DATETIME_FIELDS_FRAGMENT}\n ${LOCATION_FIELDS_FRAGMENT}\n ${OWNER_FIELDS_FRAGMENT}\n ${RESOURCE_IMAGE_FIELDS_FRAGMENT}\n ${SOCIAL_MEDIA_FIELDS_FRAGMENT}\n ${POSTER_USAGE_FIELDS_FRAGMENT}\n ${CONTACT_DETAILS_FIELDS_FRAGMENT}\n ${TERMS_AGREEMENT_FIELDS_FRAGMENT}\n ${RELATION_DATES_FRAGMENT}\n ${RELATED_POST_FIELDS_FRAGMENT}\n ${SOCIAL_SHARE_RESOURCE_FIELDS_FRAGMENT}\n`;\n\nexport const GET_EVENTS = gql`\n query getEvents(\n $dateStatus: EventDateStatusEnumType\n $options: PaginationOptions\n $filter: EventListFilter\n ) {\n events(dateStatus: $dateStatus, options: $options, filter: $filter) {\n ...EventListItemFields\n }\n }\n ${EVENT_LIST_ITEM}\n`;\n\nexport const GET_EVENT = gql`\n query getEvent($_id: ID!) {\n event(_id: $_id) {\n ...EventFields\n }\n }\n ${EVENT}\n`;\n\nexport const GET_OWNED_EVENT = gql`\n query getOwnedEvent($_id: ID!, $futureOnly: Boolean = false) {\n ownedEvent(_id: $_id, futureOnly: $futureOnly) {\n ...EventFields\n }\n }\n ${EVENT}\n`;\n\nexport const GET_EVENT_BY_PLACE_ID = gql`\n query getEventByPlaceId($googlePlaceId: String!) {\n eventByPlaceId(googlePlaceId: $googlePlaceId) {\n ...EventListItemFields\n }\n }\n ${EVENT_LIST_ITEM}\n`;\n\nexport const GET_EVENTS_BY_REGION = gql`\n query getEventsByRegion(\n $region: String!\n $options: ResourcesByRegionOptions\n $dateStatus: EventDateStatusEnumType\n $tags: [String]\n ) {\n eventsByRegion(\n region: $region\n options: $options\n dateStatus: $dateStatus\n tags: $tags\n ) {\n ...EventListItemFields\n }\n }\n ${EVENT_LIST_ITEM}\n`;\n\nexport const SEARCH_EVENTS = gql`\n query searchEvents(\n $region: String!\n $search: String\n $tags: [String]\n $dateStatus: EventDateStatusEnumType\n ) {\n eventsSearch(\n region: $region\n search: $search\n tags: $tags\n dateStatus: $dateStatus\n ) {\n ...EventListItemFields\n }\n }\n ${EVENT_LIST_ITEM}\n`;\n\nexport const GET_EVENTS_NEAR_ME = gql`\n query getEventsNearMe(\n $latitude: Float!\n $longitude: Float!\n $radius: Int\n $dateStatus: EventDateStatusEnumType\n ) {\n eventsNearMe(\n latitude: $latitude\n longitude: $longitude\n radius: $radius\n dateStatus: $dateStatus\n ) {\n ...EventListItemFields\n }\n }\n ${EVENT_LIST_ITEM}\n`;\n\nexport const GET_EVENT_INFO = gql`\n query getEventInfo($eventId: ID!) {\n eventInfo(eventId: $eventId) {\n ...EventInfoFields\n }\n }\n ${EVENT_INFO}\n`;\n","import { gql } from \"@apollo/client\";\n\nimport {\n CONTACT_DETAILS_FIELDS_FRAGMENT,\n LOCATION_FIELDS_FRAGMENT,\n OWNER_FIELDS_FRAGMENT,\n POSTER_USAGE_FIELDS_FRAGMENT,\n RELATED_POST_FIELDS_FRAGMENT,\n RESOURCE_IMAGE_FIELDS_FRAGMENT,\n SOCIAL_MEDIA_FIELDS_FRAGMENT,\n SOCIAL_SHARE_RESOURCE_FIELDS_FRAGMENT,\n TERMS_AGREEMENT_FIELDS_FRAGMENT,\n} from \"./global\";\n\nexport const PARTNER = gql`\n fragment PartnerFields on PartnerType {\n _id\n active\n adIds\n approvedAt\n cover {\n ...ResourceImageFields\n }\n createdAt\n contactDetails {\n ...ContactDetailsFields\n }\n description\n deletedAt\n images {\n ...ResourceImageFields\n }\n location {\n ...LocationFields\n }\n logo {\n ...ResourceImageFields\n }\n name\n nzbn\n owner {\n ...OwnerFields\n }\n partnerType\n posterUsage {\n ...PosterUsageFields\n }\n rating\n region\n reviewCount\n relatedPost {\n ...RelatedPostFields\n }\n socialMedia {\n ...SocialMediaFields\n }\n slug\n sharePublic {\n ...SocialShareResourceFields\n }\n termsAgreement {\n ...TermsAgreementFields\n }\n updatedAt\n }\n ${TERMS_AGREEMENT_FIELDS_FRAGMENT}\n ${LOCATION_FIELDS_FRAGMENT}\n ${OWNER_FIELDS_FRAGMENT}\n ${RESOURCE_IMAGE_FIELDS_FRAGMENT}\n ${POSTER_USAGE_FIELDS_FRAGMENT}\n ${SOCIAL_MEDIA_FIELDS_FRAGMENT}\n ${CONTACT_DETAILS_FIELDS_FRAGMENT}\n ${RELATED_POST_FIELDS_FRAGMENT}\n ${SOCIAL_SHARE_RESOURCE_FIELDS_FRAGMENT}\n`;\n\nexport const GET_PARTNERS = gql`\n query getPartners($options: PaginationOptions, $filter: PartnerListFilter) {\n partners(options: $options, filter: $filter) {\n ...PartnerFields\n }\n }\n ${PARTNER}\n`;\n\nexport const GET_PARTNER = gql`\n query getPartner($_id: ID!) {\n partner(_id: $_id) {\n ...PartnerFields\n }\n }\n ${PARTNER}\n`;\n\nexport const GET_PARTNERS_BY_REGION = gql`\n query getPartnersByRegion(\n $region: String!\n $options: ResourcesByRegionOptions\n ) {\n partnersByRegion(region: $region, options: $options) {\n ...PartnerFields\n }\n }\n ${PARTNER}\n`;\n\nexport const SEARCH_PARTNERS = gql`\n query searchPartners($search: String!, $region: String!) {\n partnersSearch(search: $search, region: $region) {\n ...PartnerFields\n }\n }\n ${PARTNER}\n`;\n","import { gql } from \"@apollo/client\";\n\nimport {\n OWNER_FIELDS_FRAGMENT,\n CATEGORY_FIELDS_FRAGMENT,\n RESOURCE_IMAGE_FIELDS_FRAGMENT,\n SOCIAL_MEDIA_FIELDS_FRAGMENT,\n POSTER_USAGE_FIELDS_FRAGMENT,\n PRODUCT_COUPON_FIELDS_FRAGMENT,\n CONTACT_DETAILS_FIELDS_FRAGMENT,\n TERMS_AGREEMENT_FIELDS_FRAGMENT,\n RELATION_DATES_FRAGMENT,\n DATETIME_FIELDS_FRAGMENT,\n LOCATION_FIELDS_FRAGMENT,\n RELATED_POST_FIELDS_FRAGMENT,\n SOCIAL_SHARE_RESOURCE_FIELDS_FRAGMENT,\n} from \"./global\";\n\nconst VENDOR_DATETIME_FIELDS_FRAGMENT = gql`\n fragment VendorDateTimeFields on VendorDateTimeType {\n dateStatus\n endDate\n endTime\n startDate\n startTime\n }\n`;\n\nexport const VENDOR_PRODUCT_LIST_FIELDS_FRAGMENT = gql`\n fragment VendorProductListFields on VendorProductListType {\n _id\n coupon {\n ...ProductCouponFields\n }\n createdAt\n description\n name\n price\n priceMax\n priceUnit\n productGroups\n updatedAt\n }\n ${PRODUCT_COUPON_FIELDS_FRAGMENT}\n`;\n\nexport const VENDOR_PRODUCTS_FIELDS_FRAGMENT = gql`\n fragment VendorProductsFields on VendorProductsType {\n active\n productsList {\n ...VendorProductListFields\n }\n }\n ${VENDOR_PRODUCT_LIST_FIELDS_FRAGMENT}\n`;\n\nexport const VENDOR = gql`\n fragment VendorFields on VendorType {\n _id\n active\n adIds\n approvedAt\n availability {\n corporate\n private\n school\n }\n vendorInfoId\n categories {\n ...CategoryFields\n }\n calendar {\n active\n calendarData {\n dateTime {\n ...VendorDateTimeFields\n }\n description\n location {\n ...LocationFields\n }\n }\n }\n contactDetails {\n ...ContactDetailsFields\n }\n cover {\n ...ResourceImageFields\n }\n createdAt\n claimed\n description\n deletedAt\n foodTruck\n images {\n ...ResourceImageFields\n }\n logo {\n ...ResourceImageFields\n }\n name\n owner {\n ...OwnerFields\n }\n products {\n ...VendorProductsFields\n }\n promoCodes\n posterUsage {\n ...PosterUsageFields\n }\n rating\n region\n reviewCount\n relatedPost {\n ...RelatedPostFields\n }\n relations {\n relationId\n relationDates {\n ...RelationDates\n }\n }\n slug\n socialMedia {\n ...SocialMediaFields\n }\n sharePublic {\n ...SocialShareResourceFields\n }\n shareRelation {\n ...SocialShareResourceFields\n }\n termsAgreement {\n ...TermsAgreementFields\n }\n updatedAt\n vendorType\n unregisteredVendorId\n }\n ${CATEGORY_FIELDS_FRAGMENT}\n ${VENDOR_DATETIME_FIELDS_FRAGMENT}\n ${LOCATION_FIELDS_FRAGMENT}\n ${OWNER_FIELDS_FRAGMENT}\n ${RESOURCE_IMAGE_FIELDS_FRAGMENT}\n ${SOCIAL_MEDIA_FIELDS_FRAGMENT}\n ${POSTER_USAGE_FIELDS_FRAGMENT}\n ${VENDOR_PRODUCTS_FIELDS_FRAGMENT}\n ${CONTACT_DETAILS_FIELDS_FRAGMENT}\n ${TERMS_AGREEMENT_FIELDS_FRAGMENT}\n ${RELATION_DATES_FRAGMENT}\n ${RELATED_POST_FIELDS_FRAGMENT}\n ${SOCIAL_SHARE_RESOURCE_FIELDS_FRAGMENT}\n`;\n\nconst VENDOR_ATTRIBUTES_FRAGMENT = gql`\n fragment VendorAttributesFields on VendorAttributesType {\n details\n isRequired\n }\n`;\n\nexport const VENDOR_INFO = gql`\n fragment VendorInfoFields on VendorInfoType {\n _id\n compliance {\n foodBeverageLicense\n liabilityInsurance\n }\n documents {\n ...ResourceImageFields\n }\n requirements {\n electricity {\n ...VendorAttributesFields\n }\n gazebo {\n ...VendorAttributesFields\n }\n table {\n ...VendorAttributesFields\n }\n }\n product {\n foodFlavors\n packaging\n priceRange {\n max\n min\n }\n producedIn\n }\n stallInfo {\n size {\n depth\n width\n }\n }\n vendorId\n }\n ${VENDOR_ATTRIBUTES_FRAGMENT}\n ${RESOURCE_IMAGE_FIELDS_FRAGMENT}\n`;\n\nconst UNREGISTERED_VENDOR_INVITATION_FRAGMENT = gql`\n fragment UnregisteredVendorInvitationFields on UnregisteredVendorInvitationType {\n dateTime {\n ...DateTimeFields\n }\n inviterId\n }\n ${DATETIME_FIELDS_FRAGMENT}\n`;\n\nexport const UNREGISTERED_VENDOR = gql`\n fragment UnregisteredVendorFields on UnregisteredVendorType {\n _id\n active\n categoryIds\n claimed\n claimedAt\n claimedByUserId\n createdAt\n deletedAt\n email\n invitations {\n ...UnregisteredVendorInvitationFields\n }\n name\n region\n updatedAt\n }\n ${UNREGISTERED_VENDOR_INVITATION_FRAGMENT}\n`;\n\nexport const GET_VENDORS = gql`\n query getVendors($options: PaginationOptions, $filter: VendorListFilter) {\n vendors(options: $options, filter: $filter) {\n ...VendorFields\n }\n }\n ${VENDOR}\n`;\n\nexport const GET_VENDOR = gql`\n query getVendor($_id: ID!) {\n vendor(_id: $_id) {\n ...VendorFields\n }\n }\n ${VENDOR}\n`;\n\nexport const GET_VENDORS_BY_REGION = gql`\n query getVendorsByRegion(\n $region: String!\n $options: ResourcesByRegionOptions\n ) {\n vendorsByRegion(region: $region, options: $options) {\n ...VendorFields\n }\n }\n ${VENDOR}\n`;\n\nexport const SEARCH_VENDORS = gql`\n query searchVendors($search: String!, $region: String!) {\n vendorSearch(search: $search, region: $region) {\n ...VendorFields\n }\n }\n ${VENDOR}\n`;\n\nexport const GET_VENDOR_INFO = gql`\n query getVendorInfo($vendorId: ID!) {\n vendorInfo(vendorId: $vendorId) {\n ...VendorInfoFields\n }\n }\n ${VENDOR_INFO}\n`;\n\nexport const GET_UNREGISTERED_VENDORS = gql`\n query getUnregisteredVendors {\n unregisteredVendors {\n ...UnregisteredVendorFields\n }\n }\n ${UNREGISTERED_VENDOR}\n`;\n\nexport const GET_UNREGISTERED_VENDORS_BY_INVITER_ID = gql`\n query getUnregisteredVendorsByInviterId($inviterId: ID!) {\n unregisteredVendorsByInviterId(inviterId: $inviterId) {\n ...UnregisteredVendorFields\n }\n }\n ${UNREGISTERED_VENDOR}\n`;\n\nexport const GET_UNREGISTERED_VENDOR = gql`\n query getUnregisteredVendor($_id: ID!) {\n unregisteredVendor(_id: $_id) {\n ...UnregisteredVendorFields\n }\n }\n ${UNREGISTERED_VENDOR}\n`;\n\nexport const MY_PENDING_VENDOR_CLAIM = gql`\n query myPendingVendorClaim {\n myPendingVendorClaim {\n _id\n name\n region\n }\n }\n`;\n","import { gql } from \"@apollo/client\";\n\nimport { EVENT } from \"./event\";\nimport {\n EVENT_LIST_ITEM,\n RESOURCE_IMAGE_FIELDS_FRAGMENT,\n USER_FIELDS_FRAGMENT,\n} from \"./global\";\nimport { PARTNER } from \"./partner\";\nimport { VENDOR } from \"./vendor\";\n\nexport const GET_USERS = gql`\n query getUsers($options: PaginationOptions, $filter: UserListFilter) {\n users(options: $options, filter: $filter) {\n ...UserFields\n }\n }\n ${USER_FIELDS_FRAGMENT}\n`;\n\nexport const GET_USER = gql`\n query getUser($_id: ID!) {\n user(_id: $_id) {\n ...UserFields\n }\n }\n ${USER_FIELDS_FRAGMENT}\n`;\n\nexport const GET_USER_EVENTS = gql`\n query getUserEvents {\n userEvents {\n ...EventFields\n }\n }\n ${EVENT}\n`;\n\nexport const GET_USER_VENDORS = gql`\n query getUserVendors {\n userVendors {\n ...VendorFields\n }\n }\n ${VENDOR}\n`;\n\nexport const GET_USER_PARTNERS = gql`\n query getUserPartners {\n userPartners {\n ...PartnerFields\n }\n }\n ${PARTNER}\n`;\n\nexport const GET_USER_ACTIVITIES = gql`\n query getUserActivities {\n userActivities {\n favourites {\n events {\n ...EventListItemFields\n }\n partners {\n ...PartnerFields\n }\n vendors {\n ...VendorFields\n }\n }\n going {\n events {\n ...EventListItemFields\n }\n }\n interested {\n events {\n ...EventListItemFields\n }\n }\n present {\n events {\n ...EventListItemFields\n }\n }\n }\n }\n ${EVENT_LIST_ITEM}\n ${VENDOR}\n ${PARTNER}\n`;\n\nexport const GET_USER_RESOURCES = gql`\n query getUserResources($userId: ID!) {\n userResources(userId: $userId) {\n resources {\n _id\n logo\n name\n region\n resourceType\n }\n }\n }\n`;\nexport const GET_USERS_BY_PROMO_CODE = gql`\n query getUsersByPromoCode($promoCode: String!, $limit: Int, $offset: Int) {\n usersByPromoCode(promoCode: $promoCode, limit: $limit, offset: $offset) {\n active\n avatar {\n ...ResourceImageFields\n }\n deletedAt\n nickName\n userId\n }\n }\n ${RESOURCE_IMAGE_FIELDS_FRAGMENT}\n`;\n","import { useQuery } from \"@apollo/client\";\n\nimport {\n EventListItemType,\n EventType,\n PartnerType,\n VendorType,\n ResourceByUser,\n SafeUserType,\n UsersByPromoCode,\n} from \"src/types\";\n\nimport {\n GET_USER,\n GET_USER_ACTIVITIES,\n GET_USER_EVENTS,\n GET_USER_PARTNERS,\n GET_USER_RESOURCES,\n GET_USER_VENDORS,\n GET_USERS_BY_PROMO_CODE,\n} from \"../../queries/user\";\n\nexport const useGetUser = (_id: string) => {\n const { loading, error, data, refetch } = useQuery<{ user: SafeUserType }>(\n GET_USER,\n {\n fetchPolicy: \"network-only\",\n skip: !_id || _id === \"\",\n variables: { _id },\n },\n );\n\n const user = data?.user;\n\n return { error, loading, refetch, user };\n};\n\nexport const useGetUserEvents = () => {\n const { loading, error, data, refetch } = useQuery<{\n userEvents: EventType[];\n }>(GET_USER_EVENTS, {\n fetchPolicy: \"network-only\",\n });\n\n const userEvents = data?.userEvents || [];\n\n return { error, loading, refetch, userEvents };\n};\n\nexport const useGetUserVendors = () => {\n const { loading, error, data, refetch } = useQuery<{\n userVendors: VendorType[];\n }>(GET_USER_VENDORS, {\n fetchPolicy: \"network-only\",\n });\n\n const userVendors = data?.userVendors || [];\n\n return { error, loading, refetch, userVendors };\n};\n\nexport const useGetUserPartners = () => {\n const { loading, error, data, refetch } = useQuery<{\n userPartners: PartnerType[];\n }>(GET_USER_PARTNERS, {\n fetchPolicy: \"network-only\",\n });\n\n const userPartners = data?.userPartners || [];\n\n return { error, loading, refetch, userPartners };\n};\n\nexport const useGetUserActivities = () => {\n const { loading, error, data, refetch } = useQuery<{\n userActivities: {\n favourites: {\n events: EventListItemType[];\n partners: PartnerType[];\n vendors: VendorType[];\n };\n going: {\n events: EventListItemType[];\n };\n interested: {\n events: EventListItemType[];\n };\n present: {\n events: EventListItemType[];\n };\n };\n }>(GET_USER_ACTIVITIES, {\n fetchPolicy: \"network-only\",\n });\n\n const userActivities = {\n favourites: {\n events: data?.userActivities.favourites.events || [],\n partners: data?.userActivities.favourites.partners || [],\n vendors: data?.userActivities.favourites.vendors || [],\n },\n going: {\n events: data?.userActivities.going.events || [],\n },\n interested: {\n events: data?.userActivities.interested.events || [],\n },\n present: {\n events: data?.userActivities.present.events || [],\n },\n };\n\n return { error, loading, refetch, userActivities };\n};\n\nexport const useGetUserResources = (userId: string) => {\n const { loading, error, data, refetch } = useQuery<{\n userResources: {\n resources: ResourceByUser[];\n };\n }>(GET_USER_RESOURCES, {\n fetchPolicy: \"network-only\",\n skip: !userId || userId === \"\",\n variables: { userId },\n });\n\n const userResources = data?.userResources.resources || [];\n\n return { error, loading, refetch, userResources };\n};\nexport const useGetUsersByPromoCode = (\n promoCode: string,\n options?: { limit?: number; offset?: number },\n) => {\n const { loading, error, data, refetch } = useQuery<{\n usersByPromoCode: UsersByPromoCode[];\n }>(GET_USERS_BY_PROMO_CODE, {\n fetchPolicy: \"network-only\",\n skip: !promoCode || promoCode === \"\",\n variables: {\n limit: options?.limit,\n offset: options?.offset,\n promoCode,\n },\n });\n\n const usersByPromoCode = data?.usersByPromoCode || [];\n\n return { error, loading, refetch, usersByPromoCode };\n};\n"],"mappings":"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","names":["gql","gql","gql","gql","gql","gql","gql","gql","gql","gql"]}