@timardex/cluemart-shared 2.2.40 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/{chunk-BCMBTEGJ.mjs → chunk-DV3K3JDE.mjs} +26 -33
  2. package/dist/{chunk-BCMBTEGJ.mjs.map → chunk-DV3K3JDE.mjs.map} +1 -1
  3. package/dist/{chunk-T5ZOYS3L.mjs → chunk-HKTBJOB7.mjs} +40 -11
  4. package/dist/chunk-HKTBJOB7.mjs.map +1 -0
  5. package/dist/{chunk-NMJ2CR2F.mjs → chunk-KMS64DE2.mjs} +2 -2
  6. package/dist/{chunk-VL275KFW.mjs → chunk-PBW5K54C.mjs} +2 -2
  7. package/dist/{chunk-MKHXXZWF.mjs → chunk-YTRRTC2S.mjs} +11 -6
  8. package/dist/chunk-YTRRTC2S.mjs.map +1 -0
  9. package/dist/formFields/index.cjs +10 -0
  10. package/dist/formFields/index.cjs.map +1 -1
  11. package/dist/formFields/index.mjs +3 -3
  12. package/dist/graphql/index.cjs +10 -5
  13. package/dist/graphql/index.cjs.map +1 -1
  14. package/dist/graphql/index.d.mts +3 -1
  15. package/dist/graphql/index.d.ts +3 -1
  16. package/dist/graphql/index.mjs +1 -1
  17. package/dist/hooks/index.cjs +8 -2
  18. package/dist/hooks/index.cjs.map +1 -1
  19. package/dist/hooks/index.mjs +5 -5
  20. package/dist/index.cjs +76 -47
  21. package/dist/index.cjs.map +1 -1
  22. package/dist/index.d.mts +33 -5
  23. package/dist/index.d.ts +33 -5
  24. package/dist/index.mjs +72 -45
  25. package/dist/index.mjs.map +1 -1
  26. package/dist/sharing/index.cjs +6 -0
  27. package/dist/sharing/index.cjs.map +1 -1
  28. package/dist/sharing/index.mjs +2 -2
  29. package/dist/utils/index.cjs +66 -42
  30. package/dist/utils/index.cjs.map +1 -1
  31. package/dist/utils/index.d.mts +30 -4
  32. package/dist/utils/index.d.ts +30 -4
  33. package/dist/utils/index.mjs +10 -6
  34. package/package.json +1 -1
  35. package/dist/chunk-MKHXXZWF.mjs.map +0 -1
  36. package/dist/chunk-T5ZOYS3L.mjs.map +0 -1
  37. /package/dist/{chunk-NMJ2CR2F.mjs.map → chunk-KMS64DE2.mjs.map} +0 -0
  38. /package/dist/{chunk-VL275KFW.mjs.map → chunk-PBW5K54C.mjs.map} +0 -0
@@ -84,6 +84,14 @@ declare const getCurrentAndFutureDates: <T extends {
84
84
  startDate?: string;
85
85
  startTime?: string;
86
86
  }>(dates: T[]) => T[];
87
+ /**
88
+ * True when the slot starts now or later. Status-agnostic: used to hide past
89
+ * relation dates from reads while the records stay in the database.
90
+ */
91
+ declare const isFutureStartDate: (date: {
92
+ startDate?: string;
93
+ startTime?: string;
94
+ }) => boolean;
87
95
  declare const isFutureDatesBeforeThreshold: (date: {
88
96
  startDate?: string;
89
97
  startTime?: string;
@@ -99,6 +107,15 @@ declare function sortDatesChronologically<T extends {
99
107
  startDate?: string;
100
108
  startTime?: string;
101
109
  }>(dates: T[]): T[];
110
+ /**
111
+ * Start dates of the given date/time slots, chronological and de-duplicated.
112
+ * Slots that share a `startDate` (e.g. two stall slots on the same day) collapse
113
+ * into a single entry.
114
+ */
115
+ declare function getUniqueStartDates(dates: Array<{
116
+ startDate?: string;
117
+ startTime?: string;
118
+ }> | null | undefined): string[];
102
119
  /**
103
120
  * UI filter options for user-activity event periods. Derived from the canonical
104
121
  * {@link FUTURE_EVENT_DATE_STATUSES} list, minus `STARTING_SOON` (a presentational
@@ -292,8 +309,11 @@ declare function filterRegisteredVendorsForEvent(vendors: VendorType[] | null |
292
309
  declare function filterUnregisteredVendorsForEvent(vendors: UnregisteredVendorType[], eventStartDates: Set<string>, selectedDate: string | null, selectedCategory: string | null): UnregisteredVendorType[];
293
310
  declare function filterRegisteredVendorsByEventDatesOnly(vendors: VendorType[] | null | undefined, eventStartDates: Set<string>): VendorType[];
294
311
  declare function filterUnregisteredVendorsByEventDatesOnly(vendors: UnregisteredVendorType[], eventStartDates: Set<string>): UnregisteredVendorType[];
295
- declare function collectStallholderStartDates(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
296
- declare function getEventDatesWithStallholders(eventDateTime: DateTimeType[] | undefined, stallholderStartDates: string[]): DateTimeType[];
312
+ declare function collectStallholderDateTimes(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): Array<{
313
+ startDate?: string;
314
+ startTime?: string;
315
+ }>;
316
+ declare function getUniqueStallholderStartDates(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
297
317
  declare function getStallholderCategoryNames(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
298
318
  declare function getStallholderCategoryOptions(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): StallholderFilterOption[];
299
319
  declare function getEventStallholderEmptyMessage(hasAnyStallholdersForEvent: boolean, selectedDate: string | null): string;
@@ -415,7 +435,13 @@ type GetEventStallholdersDataInput = {
415
435
  };
416
436
  /**
417
437
  * Derives every stallholder-list value an event detail screen needs from the
418
- * raw event dates, registered vendors, and unregistered vendors.
438
+ * event dates, registered vendors, and unregistered vendors.
439
+ *
440
+ * Date pills come from the relations, not the event schedule: they are the
441
+ * `startDate`s of the stallholders' relation dates / invitations (chronological
442
+ * and de-duplicated). `eventDateTime` is only used to decide which vendors and
443
+ * invitations actually belong to the event, mirroring the vendor screen where
444
+ * pills are also relation-sourced.
419
445
  *
420
446
  * Shared by the mobile event page and the admin market event page so the two
421
447
  * keep identical filtering / date-pill / empty-message behaviour.
@@ -464,4 +490,4 @@ declare function toUserFacingErrorMessage(error: string | null | undefined, fall
464
490
  /** Extracts and sanitizes an unknown catch/Apollo error for toasts and alerts. */
465
491
  declare function getErrorMessage(error: unknown, fallback?: string): string;
466
492
 
467
- 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, sumUserOverallPoints, timeFormat, toCalendarIsoDate, toNZTime, toUserFacingErrorMessage, truncateText, updateSingleDateTimeStatus, vendorLicences };
493
+ 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, isFutureStartDate, 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 };
@@ -84,6 +84,14 @@ declare const getCurrentAndFutureDates: <T extends {
84
84
  startDate?: string;
85
85
  startTime?: string;
86
86
  }>(dates: T[]) => T[];
87
+ /**
88
+ * True when the slot starts now or later. Status-agnostic: used to hide past
89
+ * relation dates from reads while the records stay in the database.
90
+ */
91
+ declare const isFutureStartDate: (date: {
92
+ startDate?: string;
93
+ startTime?: string;
94
+ }) => boolean;
87
95
  declare const isFutureDatesBeforeThreshold: (date: {
88
96
  startDate?: string;
89
97
  startTime?: string;
@@ -99,6 +107,15 @@ declare function sortDatesChronologically<T extends {
99
107
  startDate?: string;
100
108
  startTime?: string;
101
109
  }>(dates: T[]): T[];
110
+ /**
111
+ * Start dates of the given date/time slots, chronological and de-duplicated.
112
+ * Slots that share a `startDate` (e.g. two stall slots on the same day) collapse
113
+ * into a single entry.
114
+ */
115
+ declare function getUniqueStartDates(dates: Array<{
116
+ startDate?: string;
117
+ startTime?: string;
118
+ }> | null | undefined): string[];
102
119
  /**
103
120
  * UI filter options for user-activity event periods. Derived from the canonical
104
121
  * {@link FUTURE_EVENT_DATE_STATUSES} list, minus `STARTING_SOON` (a presentational
@@ -292,8 +309,11 @@ declare function filterRegisteredVendorsForEvent(vendors: VendorType[] | null |
292
309
  declare function filterUnregisteredVendorsForEvent(vendors: UnregisteredVendorType[], eventStartDates: Set<string>, selectedDate: string | null, selectedCategory: string | null): UnregisteredVendorType[];
293
310
  declare function filterRegisteredVendorsByEventDatesOnly(vendors: VendorType[] | null | undefined, eventStartDates: Set<string>): VendorType[];
294
311
  declare function filterUnregisteredVendorsByEventDatesOnly(vendors: UnregisteredVendorType[], eventStartDates: Set<string>): UnregisteredVendorType[];
295
- declare function collectStallholderStartDates(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
296
- declare function getEventDatesWithStallholders(eventDateTime: DateTimeType[] | undefined, stallholderStartDates: string[]): DateTimeType[];
312
+ declare function collectStallholderDateTimes(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): Array<{
313
+ startDate?: string;
314
+ startTime?: string;
315
+ }>;
316
+ declare function getUniqueStallholderStartDates(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
297
317
  declare function getStallholderCategoryNames(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): string[];
298
318
  declare function getStallholderCategoryOptions(registeredVendors: VendorType[], unregisteredVendors?: UnregisteredVendorType[]): StallholderFilterOption[];
299
319
  declare function getEventStallholderEmptyMessage(hasAnyStallholdersForEvent: boolean, selectedDate: string | null): string;
@@ -415,7 +435,13 @@ type GetEventStallholdersDataInput = {
415
435
  };
416
436
  /**
417
437
  * Derives every stallholder-list value an event detail screen needs from the
418
- * raw event dates, registered vendors, and unregistered vendors.
438
+ * event dates, registered vendors, and unregistered vendors.
439
+ *
440
+ * Date pills come from the relations, not the event schedule: they are the
441
+ * `startDate`s of the stallholders' relation dates / invitations (chronological
442
+ * and de-duplicated). `eventDateTime` is only used to decide which vendors and
443
+ * invitations actually belong to the event, mirroring the vendor screen where
444
+ * pills are also relation-sourced.
419
445
  *
420
446
  * Shared by the mobile event page and the admin market event page so the two
421
447
  * keep identical filtering / date-pill / empty-message behaviour.
@@ -464,4 +490,4 @@ declare function toUserFacingErrorMessage(error: string | null | undefined, fall
464
490
  /** Extracts and sanitizes an unknown catch/Apollo error for toasts and alerts. */
465
491
  declare function getErrorMessage(error: unknown, fallback?: string): string;
466
492
 
467
- 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, sumUserOverallPoints, timeFormat, toCalendarIsoDate, toNZTime, toUserFacingErrorMessage, truncateText, updateSingleDateTimeStatus, vendorLicences };
493
+ 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, isFutureStartDate, 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,
@@ -85,7 +85,7 @@ import {
85
85
  toUserFacingErrorMessage,
86
86
  truncateText,
87
87
  vendorLicences
88
- } from "../chunk-BCMBTEGJ.mjs";
88
+ } from "../chunk-DV3K3JDE.mjs";
89
89
  import {
90
90
  formatDistance,
91
91
  getDistanceInKilometers,
@@ -107,15 +107,17 @@ import {
107
107
  getAllowedEventDateStatuses,
108
108
  getCurrentAndFutureDates,
109
109
  getFutureEventStatus,
110
+ getUniqueStartDates,
110
111
  isFutureDatesBeforeThreshold,
111
112
  isFutureEventDateStatus,
113
+ isFutureStartDate,
112
114
  isIsoDateString,
113
115
  nzStartOfDay,
114
116
  sortDatesChronologically,
115
117
  timeFormat,
116
118
  toNZTime,
117
119
  updateSingleDateTimeStatus
118
- } from "../chunk-T5ZOYS3L.mjs";
120
+ } from "../chunk-HKTBJOB7.mjs";
119
121
  import "../chunk-5AAYX364.mjs";
120
122
  import {
121
123
  isTransientNetworkError
@@ -161,7 +163,7 @@ export {
161
163
  buildRelationEligibleEventSchedule,
162
164
  capitalizeFirstLetter,
163
165
  cluemartSocialMedia,
164
- collectStallholderStartDates,
166
+ collectStallholderDateTimes,
165
167
  collectVendorEventRelationDateTimes,
166
168
  computeDailyClueState,
167
169
  computeHasMore,
@@ -196,7 +198,6 @@ export {
196
198
  getDistanceInMeters,
197
199
  getErrorMessage,
198
200
  getEventCalendarIsoDates,
199
- getEventDatesWithStallholders,
200
201
  getEventScheduleStatusLabel,
201
202
  getEventScheduleStatusPresentation,
202
203
  getEventScheduleStatusTone,
@@ -207,6 +208,8 @@ export {
207
208
  getRegisteredVendorStartDates,
208
209
  getStallholderCategoryNames,
209
210
  getStallholderCategoryOptions,
211
+ getUniqueStallholderStartDates,
212
+ getUniqueStartDates,
210
213
  getUnregisteredVendorCategoryNames,
211
214
  getUnregisteredVendorStartDates,
212
215
  getVendorEventRelationDateOptions,
@@ -216,6 +219,7 @@ export {
216
219
  hasMatchingEventDate,
217
220
  isFutureDatesBeforeThreshold,
218
221
  isFutureEventDateStatus,
222
+ isFutureStartDate,
219
223
  isInternalErrorMessage,
220
224
  isIsoDateString,
221
225
  isResourceImageActive,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@timardex/cluemart-shared",
3
- "version": "2.2.40",
3
+ "version": "2.3.0",
4
4
  "description": "",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",