@timardex/cluemart-shared 1.5.599 → 1.5.601
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.
- package/dist/{chunk-YV2JDG4R.mjs → chunk-3VUHAHP7.mjs} +5 -86
- package/dist/chunk-3VUHAHP7.mjs.map +1 -0
- package/dist/chunk-X4VPNOHX.mjs +88 -0
- package/dist/chunk-X4VPNOHX.mjs.map +1 -0
- package/dist/{chunk-HBVPPRHO.mjs → chunk-Y6OS3HDB.mjs} +119 -80
- package/dist/chunk-Y6OS3HDB.mjs.map +1 -0
- package/dist/{chunk-2NQUR2AV.mjs → chunk-ZDDWPO5Y.mjs} +2 -2
- package/dist/formFields/index.mjs +3 -2
- package/dist/hooks/index.cjs +6 -0
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.mjs +8 -6
- package/dist/hooks/index.mjs.map +1 -1
- package/dist/index.cjs +121 -72
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +36 -6
- package/dist/index.d.ts +36 -6
- package/dist/index.mjs +107 -72
- package/dist/index.mjs.map +1 -1
- package/dist/sharing/index.cjs +162 -74
- package/dist/sharing/index.cjs.map +1 -1
- package/dist/sharing/index.d.mts +36 -6
- package/dist/sharing/index.d.ts +36 -6
- package/dist/sharing/index.mjs +32 -3
- package/dist/utils/index.mjs +13 -11
- package/package.json +1 -1
- package/dist/chunk-HBVPPRHO.mjs.map +0 -1
- package/dist/chunk-YV2JDG4R.mjs.map +0 -1
- /package/dist/{chunk-2NQUR2AV.mjs.map → chunk-ZDDWPO5Y.mjs.map} +0 -0
package/dist/index.d.mts
CHANGED
|
@@ -2659,6 +2659,7 @@ type ShareStallType = {
|
|
|
2659
2659
|
type ShareEventInfoForInvitation = {
|
|
2660
2660
|
applicationDeadlineHours: number;
|
|
2661
2661
|
dateTime: Array<{
|
|
2662
|
+
startDate: string;
|
|
2662
2663
|
stallTypes: ShareStallType[];
|
|
2663
2664
|
}>;
|
|
2664
2665
|
requirements?: Array<{
|
|
@@ -2686,7 +2687,15 @@ type ShareVendorInfoForApplication = {
|
|
|
2686
2687
|
};
|
|
2687
2688
|
};
|
|
2688
2689
|
|
|
2690
|
+
/** Formats event `startDate` (`DD-MM-YYYY`) for share copy — same as share preview UI. */
|
|
2691
|
+
declare function formatShareMarketDate(dateStr: string): string;
|
|
2689
2692
|
declare function formatStallCapacityLabel(stallCapacity: number): string;
|
|
2693
|
+
/** Nested market dates + per-date stall lines for invitation share copy. */
|
|
2694
|
+
declare function formatShareInvitationMarketDatesSection(dateTime: ShareEventInfoForInvitation["dateTime"]): string;
|
|
2695
|
+
/** Bulleted requirements list for invitation share copy. */
|
|
2696
|
+
declare function formatShareInvitationRequirementsSection(requirementLabels: string[]): string;
|
|
2697
|
+
/** Bulleted categories list for application share copy. */
|
|
2698
|
+
declare function formatShareApplicationCategoriesSection(categoryLabels: string[]): string;
|
|
2690
2699
|
declare function buildInvitationShareDescription(event: ShareEventForInvitation, eventInfo: ShareEventInfoForInvitation | null | undefined): string;
|
|
2691
2700
|
declare function buildApplicationShareDescription(vendor: ShareVendorForApplication, vendorInfo: ShareVendorInfoForApplication | null | undefined): string;
|
|
2692
2701
|
|
|
@@ -2709,6 +2718,15 @@ declare const SHARE_TYPE_PATH_REGEX: string;
|
|
|
2709
2718
|
declare function buildShareUrl(type: ShareType, id: string): string;
|
|
2710
2719
|
|
|
2711
2720
|
declare const SHARE_SITE_URL = "https://cluemart.co.nz";
|
|
2721
|
+
/** Calendar marker for invitation market-dates share copy (U+1F4C5 📅). */
|
|
2722
|
+
declare const SHARE_CALENDAR_ICON = "\uD83D\uDCC5";
|
|
2723
|
+
declare const SHARE_MARKET_DATES_SECTION_HEADING = "\uD83D\uDCC5 Market dates:";
|
|
2724
|
+
/** Check mark for invitation requirements share copy (U+2705 ✅). */
|
|
2725
|
+
declare const SHARE_CHECKMARK_ICON = "\u2705";
|
|
2726
|
+
declare const SHARE_REQUIREMENTS_SECTION_HEADING = "\u2705 Requirements:";
|
|
2727
|
+
/** Label tag for application categories share copy (U+1F3F7 🏷️). */
|
|
2728
|
+
declare const SHARE_CATEGORY_ICON = "\uD83C\uDFF7\uFE0F";
|
|
2729
|
+
declare const SHARE_CATEGORIES_SECTION_HEADING = "\uD83C\uDFF7\uFE0F Categories:";
|
|
2712
2730
|
declare const DEFAULT_SHARE_OG_IMAGE = "https://cluemart.co.nz/assets/logo.webp";
|
|
2713
2731
|
declare const RESOURCE_SHARE_TYPES: readonly ["market", "stallholder", "partner"];
|
|
2714
2732
|
type ResourceShareType = (typeof RESOURCE_SHARE_TYPES)[number];
|
|
@@ -2724,8 +2742,16 @@ declare function formatCategoryLabel(category: ShareVendorCategory): string;
|
|
|
2724
2742
|
declare const SHARE_DESCRIPTION_SECTION_SEPARATOR = " \u00B7 ";
|
|
2725
2743
|
/** Blank line between share sections — title, address, dates, URL, etc. */
|
|
2726
2744
|
declare const SHARE_DESCRIPTION_SECTION_BREAK = "\n\n";
|
|
2745
|
+
/**
|
|
2746
|
+
* Line break for `og:description` meta content. Use instead of `\n` — Next.js
|
|
2747
|
+
* HTML serialisation collapses literal newlines to spaces; Facebook reads ` `.
|
|
2748
|
+
*/
|
|
2749
|
+
declare const OG_DESCRIPTION_LINE_BREAK = " ";
|
|
2750
|
+
/** Joins OG description sections for Facebook link cards (and Twitter). */
|
|
2751
|
+
declare function joinShareOgDescriptionSections(sections: ReadonlyArray<string | false | null | undefined>): string;
|
|
2727
2752
|
declare function joinShareDescriptionSections(sections: ReadonlyArray<string | false | null | undefined>): string;
|
|
2728
2753
|
|
|
2754
|
+
declare function splitShareDescriptionSections(value: string): string[];
|
|
2729
2755
|
/**
|
|
2730
2756
|
* Share copy with a blank line between each section (share sheet message, previews).
|
|
2731
2757
|
*/
|
|
@@ -2735,8 +2761,8 @@ declare function formatShareSectionsForMultilineDisplay(value: string): string;
|
|
|
2735
2761
|
*/
|
|
2736
2762
|
declare function formatShareSectionsForCompactDisplay(value: string): string;
|
|
2737
2763
|
/**
|
|
2738
|
-
* Formats share descriptions for Open Graph / Twitter meta tags
|
|
2739
|
-
*
|
|
2764
|
+
* Formats share descriptions for Open Graph / Twitter meta tags.
|
|
2765
|
+
* Sections are joined with {@link OG_DESCRIPTION_LINE_BREAK} (` `).
|
|
2740
2766
|
*/
|
|
2741
2767
|
declare function normalizeShareOgDescription(value: string): string;
|
|
2742
2768
|
/**
|
|
@@ -2747,9 +2773,13 @@ declare function normalizeShareOgDescription(value: string): string;
|
|
|
2747
2773
|
*/
|
|
2748
2774
|
declare function buildFacebookShareQuote(title: string, description: string): string | undefined;
|
|
2749
2775
|
/**
|
|
2750
|
-
* Open Graph / Twitter description
|
|
2751
|
-
*
|
|
2752
|
-
|
|
2776
|
+
* Open Graph / Twitter description from pre-built section strings.
|
|
2777
|
+
* Prefer {@link joinShareOgDescriptionSections} when sections are already known.
|
|
2778
|
+
*/
|
|
2779
|
+
declare function buildShareOgDescriptionFromSections(sections: ReadonlyArray<string | false | null | undefined>): string;
|
|
2780
|
+
/**
|
|
2781
|
+
* Open Graph / Twitter description — body sections only (`og:title` is separate).
|
|
2782
|
+
* Multiline / legacy ` · ` input is split into sections, then joined with ` `.
|
|
2753
2783
|
*/
|
|
2754
2784
|
declare function buildShareOgDescription(_title: string, description: string): string;
|
|
2755
2785
|
|
|
@@ -2872,4 +2902,4 @@ declare const ANDROID_URL = "https://play.google.com/store/apps/details?id=com.t
|
|
|
2872
2902
|
declare const SCHOOL_MIN_STUDENT_COUNT = 300;
|
|
2873
2903
|
declare const SCHOOL_MAX_STUDENT_COUNT = 0;
|
|
2874
2904
|
|
|
2875
|
-
export { ANDROID_URL, type AdFormData, type AdResource, type AdType, type AdminUpdateResourceType, type AppSettingsFormData, type AppSettingsType, type AssociateType, type BadgeBasename, type BadgeId, type BaseGameMap, type BaseGameType, type BaseResourceType, type BaseResourceTypeFormData, type Category, type ChatMessageInput, type ChatMessageReaction, type ChatMessageReplyPreview, type ChatMessageSeen, type ChatMessageType, type ChatType, type CluiImageBasename, type CluiImageId, type ContactUsFormData, type CreateAdFormData, type CreateAppSettingsFormData, type CreateBulkNotificationInput, type CreateContactUsFormData, type CreateEventFormData, type CreateEventInfoFormData, type CreateFormData, type CreateLoginFormData, type CreatePartnerFormData, type CreatePostFormData, type CreateRegisterFormData, type CreateRequestPasswordResetFormData, type CreateResetPasswordFormData, type CreateSchoolFormData, type CreateUnregisteredVendorFormData, type CreateUserFormData, type CreateValidateVerificationTokenFormData, type CreateVendorFormData, type CreateVendorInfoFormData, DEFAULT_SHARE_OG_IMAGE, type DailyClueBaseGame, type DailyClueGameData, type DateTimeType, type DateTimeWithPriceType, type DeviceInfo, EnumActivity, EnumAdShowOn, EnumAdStatus, EnumAdStyle, EnumAdType, EnumBillingPeriod, EnumChatReportReason, EnumChatType, EnumEventDateStatus, EnumEventType, EnumFoodFlavor, EnumFoodType, EnumGameStatus, EnumGameType, EnumInviteStatus, EnumNotificationResourceType, EnumNotificationType, EnumOSPlatform, EnumPartnerType, EnumPaymentMethod, EnumPostContentType, EnumPostType, EnumRegions, EnumRelationResource, EnumResourceType, EnumSocialMedia, EnumSubscriptionStatus, EnumUserLicence, EnumUserRole, EnumVendorType, EnumVerificationType, type EventFormData, type EventInfoFormData, type EventInfoType, type EventListItemType, type EventStatusType, type EventType, type FormDateField, type FormField, type GameDate, type GameDocType, type GameHistory, type GameLeaderboard, type GamePlacement, type GamePlacementClue, type GameType, type GeocodeLocation, type GlobalGameData, type GoogleAddressComponent, type GoogleImportedMarket, IMAGE_EXTENSION, IOS_URL, type IconBasename, type IconId, type ImageObjectType, ImageTypeEnum, type LocationGeoType, type LocationType, type LoginFormData, type LogoBasename, type LogoId, type MarketingMaterialRequestInputType, type MiniQuizAnswer, type MiniQuizAnsweredQuestion, type MiniQuizBaseGame, type MiniQuizGameData, type MiniQuizQuestion, type NotificationCount, type NotificationDataType, type NotificationType, type Nullable, type OptionItem, type OtherImagesBasename, type OtherImagesId, type OwnerType, POST_SHARE_RESOURCE_TYPES, PROMO_CODE_PREFIX, PUBLIC_SHARE_PATH_TYPES, type ParticipantType, type PartnerFormData, type PartnerType, type PaymentInfoType, type PlacePrediction, type PostContentData, type PostContentFormData, type PostContentGame, type PostContentImage, type PostContentList, type PostContentTextarea, type PostContentType, type PostContentVideo, type PostFileInput, type PostFormData, type PostShareResourceType, type PostType, type PosterAssetId, type PosterImageBasename, type PosterInputType, type PosterUsageType, type PromoCodeType, type PublicSharePathType, RELATION_SHARE_APPLICATION, RELATION_SHARE_INVITATION, RELATION_SHARE_RESOURCE_TYPES, RESOURCE_SHARE_TYPES, RESOURCE_SHARE_TYPES_FOR_URL, type RefundPolicy, type Region, type RegisterFormData, type RelationDate, type RelationSharePathType, type RelationShareResourceType, type RelationType, type ReportChatUser, type RequestPasswordResetFormData, type Requirement, type ResetPasswordFormData, type ResourceActivityEntry, type ResourceActivityInputType, type ResourceActivityType, type ResourceByUser, type ResourceConnectionsType, type ResourceContactDetailsType, type ResourceDetails, type ResourceImageType, type ResourceShareType, SAVED_EMAIL_KEY, SAVED_PASSWORD_KEY, SAVED_REFRESH_TOKEN_KEY, SAVED_TOKEN_KEY, SCHOOL_MAX_STUDENT_COUNT, SCHOOL_MIN_STUDENT_COUNT, SHARE_DESCRIPTION_SECTION_BREAK, SHARE_DESCRIPTION_SECTION_SEPARATOR, SHARE_RESOURCE_LABEL, SHARE_SITE_URL, SHARE_TYPE_PATH_REGEX, type SchoolCampaignType, type SchoolFormData, type SchoolRegisteredUserType, type SchoolReturnType, type SchoolType, type ShareEventDateTime, type ShareEventForInvitation, type ShareEventInfoForInvitation, type ShareResourceType, type ShareStallType, type ShareType, type ShareVendorCategory, type ShareVendorForApplication, type ShareVendorInfoForApplication, type SocialMediaType, type StallType, type StripeSubscription, type Subcategory, type SubcategoryItems, type SubscriptionPlanData, type SubscriptionPlansResponse, type SubscriptionPricingData, type SubscriptionStatusData, type TermsAgreement, USER_STORAGE_KEY, type UnregisteredVendorFormData, type UnregisteredVendorInvitationType, type UnregisteredVendorType, type UseGetEventsByRegionOptions, type UserActivity, type UserActivityEvent, type UserFormData, type UserLicenceType, type UserType, type ValidateVerificationTokenFormData, type VendorAttributes, type VendorCalendarData, type VendorFormData, type VendorInfoFormData, type VendorInfoType, type VendorProductList, type VendorType, availableCategories, availableRegionOptions, availableRegionTypes, availableTagTypes, badgeFiles, badgeIds, badges, buildApplicationShareDescription, buildFacebookShareQuote, buildInvitationShareDescription, buildShareOgDescription, buildSharePagePath, buildShareUrl, capitalizeFirstLetter, categoryColors, cluemartSocialMedia, cluiFiles, cluiIds, cluiImages, companyContactFields, computeDailyClueState, contactUsFields, darkColors, dateFormat, defaultEventFormValues, defaultEventInfoFormValues, defaultLocation, defaultPartnerFormValues, defaultUnregisteredVendorFormValues, defaultVendorFormValues, defaultVendorInfoFormValues, emailField, eventBasicInfoFields, eventEndDateFields, eventInfo, eventInfoPaymentInfo, eventStartDateFields, fonts, foodFlavourOptions, formatCategoryLabel, formatDate, formatShareSectionsForCompactDisplay, formatShareSectionsForMultilineDisplay, formatStallCapacityLabel, formatTimestamp, gameScreenIdentifierList, gameTypeToDisplayName, getCurrentAndFutureDates, globalDefaultValues, iconFiles, iconIds, icons, isFutureDatesBeforeThreshold, isIsoDateString, isPostShareResourceType, isRelationShareResourceType, joinShareDescriptionSections, licenseNiceNames, lightColors, loginFields, logoFiles, logoIds, logos, mapArrayToOptions, mapBaseResourceTypeToFormData, normalizeShareOgDescription, normalizeShareRouteId, normalizeUrl, nzStartOfDay, otherImages, otherImagesFiles, otherImagesIds, packagingOptions, partnerBasicInfoFields, paymentMethodOptions, posterFiles, posterIds, posters, priceUnits, producedIngOptions, productLabelGroups, profileFields, refundPolicyOptions, registerFields, removeTypename, requestPasswordResetFields, requirementsOptions, resetPasswordFields, seededShuffle, socialMediaFields, sortDatesChronologically, stallTypeOptions, statusOptions, tagOptions, timeFormat, toNZTime, truncateText, useAdForm, useAddParticipantToChat, useAddUserFavouriteResource, useAddUserGoingResource, useAddUserInterestResource, useAddUserPresentResource, useAdminPermanentlyDeleteResource, useAdminResendUserVerificationEmail, useAdminUpdateResourceType, useAppSettingsForm, useCancelSubscription, useContactUs, useContactUsForm, useCrawlGoogleMarkets, useCreateAd, useCreateBulkNotifications, useCreateCheckoutSession, useCreateCustomerPortal, useCreateEvent, useCreateEventInfo, useCreatePartner, useCreatePost, useCreatePoster, useCreatePrivateChat, useCreatePushToken, useCreateRelation, useCreateResourceActivity, useCreateSchool, useCreateUnregisteredVendor, useCreateUser, useCreateVendor, useCreateVendorInfo, useDeleteAd, useDeleteAllNotifications, useDeleteChat, useDeleteEvent, useDeleteNotification, useDeletePartner, useDeletePost, useDeleteRelation, useDeleteSchool, useDeleteUnregisteredVendor, useDeleteUser, useDeleteVendor, useEventForm, useEventInfoForm, useGetAd, useGetAds, useGetAdsByRegion, useGetAppSettings, useGetChat, useGetChatSubscription, useGetChatsByRegion, useGetEvent, useGetEventByPlaceId, useGetEventInfo, useGetEventRelations, useGetEvents, useGetEventsByRegion, useGetEventsNearMe, useGetGame, useGetGameLeaderboard, useGetGames, useGetNotificationCount, useGetNotificationCountSubscription, useGetPartner, useGetPartners, useGetPartnersByRegion, useGetPost, useGetPosts, useGetPostsByType, useGetRelation, useGetRelationByEventAndVendor, useGetReportedChatUsers, useGetResourceActivity, useGetResourceConnections, useGetSchool, useGetSchools, useGetSubscriptionPlans, useGetSubscriptionStatus, useGetUnregisteredVendor, useGetUnregisteredVendors, useGetUnregisteredVendorsByInviterId, useGetUser, useGetUserActivities, useGetUserChats, useGetUserEvents, useGetUserNotifications, useGetUserNotificationsSubscription, useGetUserPartners, useGetUserResources, useGetUserVendors, useGetUsers, useGetVendor, useGetVendorInfo, useGetVendorRelations, useGetVendors, useGetVendorsByRegion, useLeaveGame, useLocationSearch, useLogin, useLoginForm, useLogout, useMarkAllNotificationsRead, useMarkChatMessagesSeen, useMarkNotificationRead, usePartnerForm, usePostForm, useRefreshToken, useRegister, useRegisterForm, useRemoveParticipantFromChat, useRemoveUserFavouriteResource, useRemoveUserGoingResource, useRemoveUserInterestResource, useRemoveUserPresentResource, useReportChatUser, useRequestMarketingMaterial, useRequestPasswordReset, useRequestPasswordResetForm, useResetPassword, useResetPasswordForm, useSchoolForm, useSearchEvents, useSearchPartners, useSearchVendors, useSelectPackage, useSelectStandardPackage, useSendChatMessage, useStartGame, useToggleChatMessageLike, useUnlinkUnregisteredVendorByInviterId, useUnregisteredVendorForm, useUpdateAd, useUpdateAppSettings, useUpdateDailyClueGame, useUpdateEvent, useUpdateEventInfo, useUpdateGoogleImportedMarkets, useUpdateMiniQuizGame, useUpdatePartner, useUpdatePost, useUpdateRelation, useUpdateSchool, useUpdateSubscriptionPlan, useUpdateUnregisteredVendor, useUpdateUser, useUpdateVendor, useUpdateVendorInfo, useUserForm, useValidateVerificationToken, useValidateVerificationTokenForm, useVendorForm, useVendorInfoForm, validateVerificationTokenFields, vendorAvailability, vendorBasicInfoFields, vendorCompliance, vendorElectricity, vendorEndDateFields, vendorFoodFlavour, vendorFullAddress, vendorGazebo, vendorLocationDescription, vendorMenuFields, vendorPackaging, vendorPriceRange, vendorProducedIn, vendorStallSize, vendorStartDateFields, vendorTable };
|
|
2905
|
+
export { ANDROID_URL, type AdFormData, type AdResource, type AdType, type AdminUpdateResourceType, type AppSettingsFormData, type AppSettingsType, type AssociateType, type BadgeBasename, type BadgeId, type BaseGameMap, type BaseGameType, type BaseResourceType, type BaseResourceTypeFormData, type Category, type ChatMessageInput, type ChatMessageReaction, type ChatMessageReplyPreview, type ChatMessageSeen, type ChatMessageType, type ChatType, type CluiImageBasename, type CluiImageId, type ContactUsFormData, type CreateAdFormData, type CreateAppSettingsFormData, type CreateBulkNotificationInput, type CreateContactUsFormData, type CreateEventFormData, type CreateEventInfoFormData, type CreateFormData, type CreateLoginFormData, type CreatePartnerFormData, type CreatePostFormData, type CreateRegisterFormData, type CreateRequestPasswordResetFormData, type CreateResetPasswordFormData, type CreateSchoolFormData, type CreateUnregisteredVendorFormData, type CreateUserFormData, type CreateValidateVerificationTokenFormData, type CreateVendorFormData, type CreateVendorInfoFormData, DEFAULT_SHARE_OG_IMAGE, type DailyClueBaseGame, type DailyClueGameData, type DateTimeType, type DateTimeWithPriceType, type DeviceInfo, EnumActivity, EnumAdShowOn, EnumAdStatus, EnumAdStyle, EnumAdType, EnumBillingPeriod, EnumChatReportReason, EnumChatType, EnumEventDateStatus, EnumEventType, EnumFoodFlavor, EnumFoodType, EnumGameStatus, EnumGameType, EnumInviteStatus, EnumNotificationResourceType, EnumNotificationType, EnumOSPlatform, EnumPartnerType, EnumPaymentMethod, EnumPostContentType, EnumPostType, EnumRegions, EnumRelationResource, EnumResourceType, EnumSocialMedia, EnumSubscriptionStatus, EnumUserLicence, EnumUserRole, EnumVendorType, EnumVerificationType, type EventFormData, type EventInfoFormData, type EventInfoType, type EventListItemType, type EventStatusType, type EventType, type FormDateField, type FormField, type GameDate, type GameDocType, type GameHistory, type GameLeaderboard, type GamePlacement, type GamePlacementClue, type GameType, type GeocodeLocation, type GlobalGameData, type GoogleAddressComponent, type GoogleImportedMarket, IMAGE_EXTENSION, IOS_URL, type IconBasename, type IconId, type ImageObjectType, ImageTypeEnum, type LocationGeoType, type LocationType, type LoginFormData, type LogoBasename, type LogoId, type MarketingMaterialRequestInputType, type MiniQuizAnswer, type MiniQuizAnsweredQuestion, type MiniQuizBaseGame, type MiniQuizGameData, type MiniQuizQuestion, type NotificationCount, type NotificationDataType, type NotificationType, type Nullable, OG_DESCRIPTION_LINE_BREAK, type OptionItem, type OtherImagesBasename, type OtherImagesId, type OwnerType, POST_SHARE_RESOURCE_TYPES, PROMO_CODE_PREFIX, PUBLIC_SHARE_PATH_TYPES, type ParticipantType, type PartnerFormData, type PartnerType, type PaymentInfoType, type PlacePrediction, type PostContentData, type PostContentFormData, type PostContentGame, type PostContentImage, type PostContentList, type PostContentTextarea, type PostContentType, type PostContentVideo, type PostFileInput, type PostFormData, type PostShareResourceType, type PostType, type PosterAssetId, type PosterImageBasename, type PosterInputType, type PosterUsageType, type PromoCodeType, type PublicSharePathType, RELATION_SHARE_APPLICATION, RELATION_SHARE_INVITATION, RELATION_SHARE_RESOURCE_TYPES, RESOURCE_SHARE_TYPES, RESOURCE_SHARE_TYPES_FOR_URL, type RefundPolicy, type Region, type RegisterFormData, type RelationDate, type RelationSharePathType, type RelationShareResourceType, type RelationType, type ReportChatUser, type RequestPasswordResetFormData, type Requirement, type ResetPasswordFormData, type ResourceActivityEntry, type ResourceActivityInputType, type ResourceActivityType, type ResourceByUser, type ResourceConnectionsType, type ResourceContactDetailsType, type ResourceDetails, type ResourceImageType, type ResourceShareType, SAVED_EMAIL_KEY, SAVED_PASSWORD_KEY, SAVED_REFRESH_TOKEN_KEY, SAVED_TOKEN_KEY, SCHOOL_MAX_STUDENT_COUNT, SCHOOL_MIN_STUDENT_COUNT, SHARE_CALENDAR_ICON, SHARE_CATEGORIES_SECTION_HEADING, SHARE_CATEGORY_ICON, SHARE_CHECKMARK_ICON, SHARE_DESCRIPTION_SECTION_BREAK, SHARE_DESCRIPTION_SECTION_SEPARATOR, SHARE_MARKET_DATES_SECTION_HEADING, SHARE_REQUIREMENTS_SECTION_HEADING, SHARE_RESOURCE_LABEL, SHARE_SITE_URL, SHARE_TYPE_PATH_REGEX, type SchoolCampaignType, type SchoolFormData, type SchoolRegisteredUserType, type SchoolReturnType, type SchoolType, type ShareEventDateTime, type ShareEventForInvitation, type ShareEventInfoForInvitation, type ShareResourceType, type ShareStallType, type ShareType, type ShareVendorCategory, type ShareVendorForApplication, type ShareVendorInfoForApplication, type SocialMediaType, type StallType, type StripeSubscription, type Subcategory, type SubcategoryItems, type SubscriptionPlanData, type SubscriptionPlansResponse, type SubscriptionPricingData, type SubscriptionStatusData, type TermsAgreement, USER_STORAGE_KEY, type UnregisteredVendorFormData, type UnregisteredVendorInvitationType, type UnregisteredVendorType, type UseGetEventsByRegionOptions, type UserActivity, type UserActivityEvent, type UserFormData, type UserLicenceType, type UserType, type ValidateVerificationTokenFormData, type VendorAttributes, type VendorCalendarData, type VendorFormData, type VendorInfoFormData, type VendorInfoType, type VendorProductList, type VendorType, availableCategories, availableRegionOptions, availableRegionTypes, availableTagTypes, badgeFiles, badgeIds, badges, buildApplicationShareDescription, buildFacebookShareQuote, buildInvitationShareDescription, buildShareOgDescription, buildShareOgDescriptionFromSections, buildSharePagePath, buildShareUrl, capitalizeFirstLetter, categoryColors, cluemartSocialMedia, cluiFiles, cluiIds, cluiImages, companyContactFields, computeDailyClueState, contactUsFields, darkColors, dateFormat, defaultEventFormValues, defaultEventInfoFormValues, defaultLocation, defaultPartnerFormValues, defaultUnregisteredVendorFormValues, defaultVendorFormValues, defaultVendorInfoFormValues, emailField, eventBasicInfoFields, eventEndDateFields, eventInfo, eventInfoPaymentInfo, eventStartDateFields, fonts, foodFlavourOptions, formatCategoryLabel, formatDate, formatShareApplicationCategoriesSection, formatShareInvitationMarketDatesSection, formatShareInvitationRequirementsSection, formatShareMarketDate, formatShareSectionsForCompactDisplay, formatShareSectionsForMultilineDisplay, formatStallCapacityLabel, formatTimestamp, gameScreenIdentifierList, gameTypeToDisplayName, getCurrentAndFutureDates, globalDefaultValues, iconFiles, iconIds, icons, isFutureDatesBeforeThreshold, isIsoDateString, isPostShareResourceType, isRelationShareResourceType, joinShareDescriptionSections, joinShareOgDescriptionSections, licenseNiceNames, lightColors, loginFields, logoFiles, logoIds, logos, mapArrayToOptions, mapBaseResourceTypeToFormData, normalizeShareOgDescription, normalizeShareRouteId, normalizeUrl, nzStartOfDay, otherImages, otherImagesFiles, otherImagesIds, packagingOptions, partnerBasicInfoFields, paymentMethodOptions, posterFiles, posterIds, posters, priceUnits, producedIngOptions, productLabelGroups, profileFields, refundPolicyOptions, registerFields, removeTypename, requestPasswordResetFields, requirementsOptions, resetPasswordFields, seededShuffle, socialMediaFields, sortDatesChronologically, splitShareDescriptionSections, stallTypeOptions, statusOptions, tagOptions, timeFormat, toNZTime, truncateText, useAdForm, useAddParticipantToChat, useAddUserFavouriteResource, useAddUserGoingResource, useAddUserInterestResource, useAddUserPresentResource, useAdminPermanentlyDeleteResource, useAdminResendUserVerificationEmail, useAdminUpdateResourceType, useAppSettingsForm, useCancelSubscription, useContactUs, useContactUsForm, useCrawlGoogleMarkets, useCreateAd, useCreateBulkNotifications, useCreateCheckoutSession, useCreateCustomerPortal, useCreateEvent, useCreateEventInfo, useCreatePartner, useCreatePost, useCreatePoster, useCreatePrivateChat, useCreatePushToken, useCreateRelation, useCreateResourceActivity, useCreateSchool, useCreateUnregisteredVendor, useCreateUser, useCreateVendor, useCreateVendorInfo, useDeleteAd, useDeleteAllNotifications, useDeleteChat, useDeleteEvent, useDeleteNotification, useDeletePartner, useDeletePost, useDeleteRelation, useDeleteSchool, useDeleteUnregisteredVendor, useDeleteUser, useDeleteVendor, useEventForm, useEventInfoForm, useGetAd, useGetAds, useGetAdsByRegion, useGetAppSettings, useGetChat, useGetChatSubscription, useGetChatsByRegion, useGetEvent, useGetEventByPlaceId, useGetEventInfo, useGetEventRelations, useGetEvents, useGetEventsByRegion, useGetEventsNearMe, useGetGame, useGetGameLeaderboard, useGetGames, useGetNotificationCount, useGetNotificationCountSubscription, useGetPartner, useGetPartners, useGetPartnersByRegion, useGetPost, useGetPosts, useGetPostsByType, useGetRelation, useGetRelationByEventAndVendor, useGetReportedChatUsers, useGetResourceActivity, useGetResourceConnections, useGetSchool, useGetSchools, useGetSubscriptionPlans, useGetSubscriptionStatus, useGetUnregisteredVendor, useGetUnregisteredVendors, useGetUnregisteredVendorsByInviterId, useGetUser, useGetUserActivities, useGetUserChats, useGetUserEvents, useGetUserNotifications, useGetUserNotificationsSubscription, useGetUserPartners, useGetUserResources, useGetUserVendors, useGetUsers, useGetVendor, useGetVendorInfo, useGetVendorRelations, useGetVendors, useGetVendorsByRegion, useLeaveGame, useLocationSearch, useLogin, useLoginForm, useLogout, useMarkAllNotificationsRead, useMarkChatMessagesSeen, useMarkNotificationRead, usePartnerForm, usePostForm, useRefreshToken, useRegister, useRegisterForm, useRemoveParticipantFromChat, useRemoveUserFavouriteResource, useRemoveUserGoingResource, useRemoveUserInterestResource, useRemoveUserPresentResource, useReportChatUser, useRequestMarketingMaterial, useRequestPasswordReset, useRequestPasswordResetForm, useResetPassword, useResetPasswordForm, useSchoolForm, useSearchEvents, useSearchPartners, useSearchVendors, useSelectPackage, useSelectStandardPackage, useSendChatMessage, useStartGame, useToggleChatMessageLike, useUnlinkUnregisteredVendorByInviterId, useUnregisteredVendorForm, useUpdateAd, useUpdateAppSettings, useUpdateDailyClueGame, useUpdateEvent, useUpdateEventInfo, useUpdateGoogleImportedMarkets, useUpdateMiniQuizGame, useUpdatePartner, useUpdatePost, useUpdateRelation, useUpdateSchool, useUpdateSubscriptionPlan, useUpdateUnregisteredVendor, useUpdateUser, useUpdateVendor, useUpdateVendorInfo, useUserForm, useValidateVerificationToken, useValidateVerificationTokenForm, useVendorForm, useVendorInfoForm, validateVerificationTokenFields, vendorAvailability, vendorBasicInfoFields, vendorCompliance, vendorElectricity, vendorEndDateFields, vendorFoodFlavour, vendorFullAddress, vendorGazebo, vendorLocationDescription, vendorMenuFields, vendorPackaging, vendorPriceRange, vendorProducedIn, vendorStallSize, vendorStartDateFields, vendorTable };
|
package/dist/index.d.ts
CHANGED
|
@@ -2659,6 +2659,7 @@ type ShareStallType = {
|
|
|
2659
2659
|
type ShareEventInfoForInvitation = {
|
|
2660
2660
|
applicationDeadlineHours: number;
|
|
2661
2661
|
dateTime: Array<{
|
|
2662
|
+
startDate: string;
|
|
2662
2663
|
stallTypes: ShareStallType[];
|
|
2663
2664
|
}>;
|
|
2664
2665
|
requirements?: Array<{
|
|
@@ -2686,7 +2687,15 @@ type ShareVendorInfoForApplication = {
|
|
|
2686
2687
|
};
|
|
2687
2688
|
};
|
|
2688
2689
|
|
|
2690
|
+
/** Formats event `startDate` (`DD-MM-YYYY`) for share copy — same as share preview UI. */
|
|
2691
|
+
declare function formatShareMarketDate(dateStr: string): string;
|
|
2689
2692
|
declare function formatStallCapacityLabel(stallCapacity: number): string;
|
|
2693
|
+
/** Nested market dates + per-date stall lines for invitation share copy. */
|
|
2694
|
+
declare function formatShareInvitationMarketDatesSection(dateTime: ShareEventInfoForInvitation["dateTime"]): string;
|
|
2695
|
+
/** Bulleted requirements list for invitation share copy. */
|
|
2696
|
+
declare function formatShareInvitationRequirementsSection(requirementLabels: string[]): string;
|
|
2697
|
+
/** Bulleted categories list for application share copy. */
|
|
2698
|
+
declare function formatShareApplicationCategoriesSection(categoryLabels: string[]): string;
|
|
2690
2699
|
declare function buildInvitationShareDescription(event: ShareEventForInvitation, eventInfo: ShareEventInfoForInvitation | null | undefined): string;
|
|
2691
2700
|
declare function buildApplicationShareDescription(vendor: ShareVendorForApplication, vendorInfo: ShareVendorInfoForApplication | null | undefined): string;
|
|
2692
2701
|
|
|
@@ -2709,6 +2718,15 @@ declare const SHARE_TYPE_PATH_REGEX: string;
|
|
|
2709
2718
|
declare function buildShareUrl(type: ShareType, id: string): string;
|
|
2710
2719
|
|
|
2711
2720
|
declare const SHARE_SITE_URL = "https://cluemart.co.nz";
|
|
2721
|
+
/** Calendar marker for invitation market-dates share copy (U+1F4C5 📅). */
|
|
2722
|
+
declare const SHARE_CALENDAR_ICON = "\uD83D\uDCC5";
|
|
2723
|
+
declare const SHARE_MARKET_DATES_SECTION_HEADING = "\uD83D\uDCC5 Market dates:";
|
|
2724
|
+
/** Check mark for invitation requirements share copy (U+2705 ✅). */
|
|
2725
|
+
declare const SHARE_CHECKMARK_ICON = "\u2705";
|
|
2726
|
+
declare const SHARE_REQUIREMENTS_SECTION_HEADING = "\u2705 Requirements:";
|
|
2727
|
+
/** Label tag for application categories share copy (U+1F3F7 🏷️). */
|
|
2728
|
+
declare const SHARE_CATEGORY_ICON = "\uD83C\uDFF7\uFE0F";
|
|
2729
|
+
declare const SHARE_CATEGORIES_SECTION_HEADING = "\uD83C\uDFF7\uFE0F Categories:";
|
|
2712
2730
|
declare const DEFAULT_SHARE_OG_IMAGE = "https://cluemart.co.nz/assets/logo.webp";
|
|
2713
2731
|
declare const RESOURCE_SHARE_TYPES: readonly ["market", "stallholder", "partner"];
|
|
2714
2732
|
type ResourceShareType = (typeof RESOURCE_SHARE_TYPES)[number];
|
|
@@ -2724,8 +2742,16 @@ declare function formatCategoryLabel(category: ShareVendorCategory): string;
|
|
|
2724
2742
|
declare const SHARE_DESCRIPTION_SECTION_SEPARATOR = " \u00B7 ";
|
|
2725
2743
|
/** Blank line between share sections — title, address, dates, URL, etc. */
|
|
2726
2744
|
declare const SHARE_DESCRIPTION_SECTION_BREAK = "\n\n";
|
|
2745
|
+
/**
|
|
2746
|
+
* Line break for `og:description` meta content. Use instead of `\n` — Next.js
|
|
2747
|
+
* HTML serialisation collapses literal newlines to spaces; Facebook reads ` `.
|
|
2748
|
+
*/
|
|
2749
|
+
declare const OG_DESCRIPTION_LINE_BREAK = " ";
|
|
2750
|
+
/** Joins OG description sections for Facebook link cards (and Twitter). */
|
|
2751
|
+
declare function joinShareOgDescriptionSections(sections: ReadonlyArray<string | false | null | undefined>): string;
|
|
2727
2752
|
declare function joinShareDescriptionSections(sections: ReadonlyArray<string | false | null | undefined>): string;
|
|
2728
2753
|
|
|
2754
|
+
declare function splitShareDescriptionSections(value: string): string[];
|
|
2729
2755
|
/**
|
|
2730
2756
|
* Share copy with a blank line between each section (share sheet message, previews).
|
|
2731
2757
|
*/
|
|
@@ -2735,8 +2761,8 @@ declare function formatShareSectionsForMultilineDisplay(value: string): string;
|
|
|
2735
2761
|
*/
|
|
2736
2762
|
declare function formatShareSectionsForCompactDisplay(value: string): string;
|
|
2737
2763
|
/**
|
|
2738
|
-
* Formats share descriptions for Open Graph / Twitter meta tags
|
|
2739
|
-
*
|
|
2764
|
+
* Formats share descriptions for Open Graph / Twitter meta tags.
|
|
2765
|
+
* Sections are joined with {@link OG_DESCRIPTION_LINE_BREAK} (` `).
|
|
2740
2766
|
*/
|
|
2741
2767
|
declare function normalizeShareOgDescription(value: string): string;
|
|
2742
2768
|
/**
|
|
@@ -2747,9 +2773,13 @@ declare function normalizeShareOgDescription(value: string): string;
|
|
|
2747
2773
|
*/
|
|
2748
2774
|
declare function buildFacebookShareQuote(title: string, description: string): string | undefined;
|
|
2749
2775
|
/**
|
|
2750
|
-
* Open Graph / Twitter description
|
|
2751
|
-
*
|
|
2752
|
-
|
|
2776
|
+
* Open Graph / Twitter description from pre-built section strings.
|
|
2777
|
+
* Prefer {@link joinShareOgDescriptionSections} when sections are already known.
|
|
2778
|
+
*/
|
|
2779
|
+
declare function buildShareOgDescriptionFromSections(sections: ReadonlyArray<string | false | null | undefined>): string;
|
|
2780
|
+
/**
|
|
2781
|
+
* Open Graph / Twitter description — body sections only (`og:title` is separate).
|
|
2782
|
+
* Multiline / legacy ` · ` input is split into sections, then joined with ` `.
|
|
2753
2783
|
*/
|
|
2754
2784
|
declare function buildShareOgDescription(_title: string, description: string): string;
|
|
2755
2785
|
|
|
@@ -2872,4 +2902,4 @@ declare const ANDROID_URL = "https://play.google.com/store/apps/details?id=com.t
|
|
|
2872
2902
|
declare const SCHOOL_MIN_STUDENT_COUNT = 300;
|
|
2873
2903
|
declare const SCHOOL_MAX_STUDENT_COUNT = 0;
|
|
2874
2904
|
|
|
2875
|
-
export { ANDROID_URL, type AdFormData, type AdResource, type AdType, type AdminUpdateResourceType, type AppSettingsFormData, type AppSettingsType, type AssociateType, type BadgeBasename, type BadgeId, type BaseGameMap, type BaseGameType, type BaseResourceType, type BaseResourceTypeFormData, type Category, type ChatMessageInput, type ChatMessageReaction, type ChatMessageReplyPreview, type ChatMessageSeen, type ChatMessageType, type ChatType, type CluiImageBasename, type CluiImageId, type ContactUsFormData, type CreateAdFormData, type CreateAppSettingsFormData, type CreateBulkNotificationInput, type CreateContactUsFormData, type CreateEventFormData, type CreateEventInfoFormData, type CreateFormData, type CreateLoginFormData, type CreatePartnerFormData, type CreatePostFormData, type CreateRegisterFormData, type CreateRequestPasswordResetFormData, type CreateResetPasswordFormData, type CreateSchoolFormData, type CreateUnregisteredVendorFormData, type CreateUserFormData, type CreateValidateVerificationTokenFormData, type CreateVendorFormData, type CreateVendorInfoFormData, DEFAULT_SHARE_OG_IMAGE, type DailyClueBaseGame, type DailyClueGameData, type DateTimeType, type DateTimeWithPriceType, type DeviceInfo, EnumActivity, EnumAdShowOn, EnumAdStatus, EnumAdStyle, EnumAdType, EnumBillingPeriod, EnumChatReportReason, EnumChatType, EnumEventDateStatus, EnumEventType, EnumFoodFlavor, EnumFoodType, EnumGameStatus, EnumGameType, EnumInviteStatus, EnumNotificationResourceType, EnumNotificationType, EnumOSPlatform, EnumPartnerType, EnumPaymentMethod, EnumPostContentType, EnumPostType, EnumRegions, EnumRelationResource, EnumResourceType, EnumSocialMedia, EnumSubscriptionStatus, EnumUserLicence, EnumUserRole, EnumVendorType, EnumVerificationType, type EventFormData, type EventInfoFormData, type EventInfoType, type EventListItemType, type EventStatusType, type EventType, type FormDateField, type FormField, type GameDate, type GameDocType, type GameHistory, type GameLeaderboard, type GamePlacement, type GamePlacementClue, type GameType, type GeocodeLocation, type GlobalGameData, type GoogleAddressComponent, type GoogleImportedMarket, IMAGE_EXTENSION, IOS_URL, type IconBasename, type IconId, type ImageObjectType, ImageTypeEnum, type LocationGeoType, type LocationType, type LoginFormData, type LogoBasename, type LogoId, type MarketingMaterialRequestInputType, type MiniQuizAnswer, type MiniQuizAnsweredQuestion, type MiniQuizBaseGame, type MiniQuizGameData, type MiniQuizQuestion, type NotificationCount, type NotificationDataType, type NotificationType, type Nullable, type OptionItem, type OtherImagesBasename, type OtherImagesId, type OwnerType, POST_SHARE_RESOURCE_TYPES, PROMO_CODE_PREFIX, PUBLIC_SHARE_PATH_TYPES, type ParticipantType, type PartnerFormData, type PartnerType, type PaymentInfoType, type PlacePrediction, type PostContentData, type PostContentFormData, type PostContentGame, type PostContentImage, type PostContentList, type PostContentTextarea, type PostContentType, type PostContentVideo, type PostFileInput, type PostFormData, type PostShareResourceType, type PostType, type PosterAssetId, type PosterImageBasename, type PosterInputType, type PosterUsageType, type PromoCodeType, type PublicSharePathType, RELATION_SHARE_APPLICATION, RELATION_SHARE_INVITATION, RELATION_SHARE_RESOURCE_TYPES, RESOURCE_SHARE_TYPES, RESOURCE_SHARE_TYPES_FOR_URL, type RefundPolicy, type Region, type RegisterFormData, type RelationDate, type RelationSharePathType, type RelationShareResourceType, type RelationType, type ReportChatUser, type RequestPasswordResetFormData, type Requirement, type ResetPasswordFormData, type ResourceActivityEntry, type ResourceActivityInputType, type ResourceActivityType, type ResourceByUser, type ResourceConnectionsType, type ResourceContactDetailsType, type ResourceDetails, type ResourceImageType, type ResourceShareType, SAVED_EMAIL_KEY, SAVED_PASSWORD_KEY, SAVED_REFRESH_TOKEN_KEY, SAVED_TOKEN_KEY, SCHOOL_MAX_STUDENT_COUNT, SCHOOL_MIN_STUDENT_COUNT, SHARE_DESCRIPTION_SECTION_BREAK, SHARE_DESCRIPTION_SECTION_SEPARATOR, SHARE_RESOURCE_LABEL, SHARE_SITE_URL, SHARE_TYPE_PATH_REGEX, type SchoolCampaignType, type SchoolFormData, type SchoolRegisteredUserType, type SchoolReturnType, type SchoolType, type ShareEventDateTime, type ShareEventForInvitation, type ShareEventInfoForInvitation, type ShareResourceType, type ShareStallType, type ShareType, type ShareVendorCategory, type ShareVendorForApplication, type ShareVendorInfoForApplication, type SocialMediaType, type StallType, type StripeSubscription, type Subcategory, type SubcategoryItems, type SubscriptionPlanData, type SubscriptionPlansResponse, type SubscriptionPricingData, type SubscriptionStatusData, type TermsAgreement, USER_STORAGE_KEY, type UnregisteredVendorFormData, type UnregisteredVendorInvitationType, type UnregisteredVendorType, type UseGetEventsByRegionOptions, type UserActivity, type UserActivityEvent, type UserFormData, type UserLicenceType, type UserType, type ValidateVerificationTokenFormData, type VendorAttributes, type VendorCalendarData, type VendorFormData, type VendorInfoFormData, type VendorInfoType, type VendorProductList, type VendorType, availableCategories, availableRegionOptions, availableRegionTypes, availableTagTypes, badgeFiles, badgeIds, badges, buildApplicationShareDescription, buildFacebookShareQuote, buildInvitationShareDescription, buildShareOgDescription, buildSharePagePath, buildShareUrl, capitalizeFirstLetter, categoryColors, cluemartSocialMedia, cluiFiles, cluiIds, cluiImages, companyContactFields, computeDailyClueState, contactUsFields, darkColors, dateFormat, defaultEventFormValues, defaultEventInfoFormValues, defaultLocation, defaultPartnerFormValues, defaultUnregisteredVendorFormValues, defaultVendorFormValues, defaultVendorInfoFormValues, emailField, eventBasicInfoFields, eventEndDateFields, eventInfo, eventInfoPaymentInfo, eventStartDateFields, fonts, foodFlavourOptions, formatCategoryLabel, formatDate, formatShareSectionsForCompactDisplay, formatShareSectionsForMultilineDisplay, formatStallCapacityLabel, formatTimestamp, gameScreenIdentifierList, gameTypeToDisplayName, getCurrentAndFutureDates, globalDefaultValues, iconFiles, iconIds, icons, isFutureDatesBeforeThreshold, isIsoDateString, isPostShareResourceType, isRelationShareResourceType, joinShareDescriptionSections, licenseNiceNames, lightColors, loginFields, logoFiles, logoIds, logos, mapArrayToOptions, mapBaseResourceTypeToFormData, normalizeShareOgDescription, normalizeShareRouteId, normalizeUrl, nzStartOfDay, otherImages, otherImagesFiles, otherImagesIds, packagingOptions, partnerBasicInfoFields, paymentMethodOptions, posterFiles, posterIds, posters, priceUnits, producedIngOptions, productLabelGroups, profileFields, refundPolicyOptions, registerFields, removeTypename, requestPasswordResetFields, requirementsOptions, resetPasswordFields, seededShuffle, socialMediaFields, sortDatesChronologically, stallTypeOptions, statusOptions, tagOptions, timeFormat, toNZTime, truncateText, useAdForm, useAddParticipantToChat, useAddUserFavouriteResource, useAddUserGoingResource, useAddUserInterestResource, useAddUserPresentResource, useAdminPermanentlyDeleteResource, useAdminResendUserVerificationEmail, useAdminUpdateResourceType, useAppSettingsForm, useCancelSubscription, useContactUs, useContactUsForm, useCrawlGoogleMarkets, useCreateAd, useCreateBulkNotifications, useCreateCheckoutSession, useCreateCustomerPortal, useCreateEvent, useCreateEventInfo, useCreatePartner, useCreatePost, useCreatePoster, useCreatePrivateChat, useCreatePushToken, useCreateRelation, useCreateResourceActivity, useCreateSchool, useCreateUnregisteredVendor, useCreateUser, useCreateVendor, useCreateVendorInfo, useDeleteAd, useDeleteAllNotifications, useDeleteChat, useDeleteEvent, useDeleteNotification, useDeletePartner, useDeletePost, useDeleteRelation, useDeleteSchool, useDeleteUnregisteredVendor, useDeleteUser, useDeleteVendor, useEventForm, useEventInfoForm, useGetAd, useGetAds, useGetAdsByRegion, useGetAppSettings, useGetChat, useGetChatSubscription, useGetChatsByRegion, useGetEvent, useGetEventByPlaceId, useGetEventInfo, useGetEventRelations, useGetEvents, useGetEventsByRegion, useGetEventsNearMe, useGetGame, useGetGameLeaderboard, useGetGames, useGetNotificationCount, useGetNotificationCountSubscription, useGetPartner, useGetPartners, useGetPartnersByRegion, useGetPost, useGetPosts, useGetPostsByType, useGetRelation, useGetRelationByEventAndVendor, useGetReportedChatUsers, useGetResourceActivity, useGetResourceConnections, useGetSchool, useGetSchools, useGetSubscriptionPlans, useGetSubscriptionStatus, useGetUnregisteredVendor, useGetUnregisteredVendors, useGetUnregisteredVendorsByInviterId, useGetUser, useGetUserActivities, useGetUserChats, useGetUserEvents, useGetUserNotifications, useGetUserNotificationsSubscription, useGetUserPartners, useGetUserResources, useGetUserVendors, useGetUsers, useGetVendor, useGetVendorInfo, useGetVendorRelations, useGetVendors, useGetVendorsByRegion, useLeaveGame, useLocationSearch, useLogin, useLoginForm, useLogout, useMarkAllNotificationsRead, useMarkChatMessagesSeen, useMarkNotificationRead, usePartnerForm, usePostForm, useRefreshToken, useRegister, useRegisterForm, useRemoveParticipantFromChat, useRemoveUserFavouriteResource, useRemoveUserGoingResource, useRemoveUserInterestResource, useRemoveUserPresentResource, useReportChatUser, useRequestMarketingMaterial, useRequestPasswordReset, useRequestPasswordResetForm, useResetPassword, useResetPasswordForm, useSchoolForm, useSearchEvents, useSearchPartners, useSearchVendors, useSelectPackage, useSelectStandardPackage, useSendChatMessage, useStartGame, useToggleChatMessageLike, useUnlinkUnregisteredVendorByInviterId, useUnregisteredVendorForm, useUpdateAd, useUpdateAppSettings, useUpdateDailyClueGame, useUpdateEvent, useUpdateEventInfo, useUpdateGoogleImportedMarkets, useUpdateMiniQuizGame, useUpdatePartner, useUpdatePost, useUpdateRelation, useUpdateSchool, useUpdateSubscriptionPlan, useUpdateUnregisteredVendor, useUpdateUser, useUpdateVendor, useUpdateVendorInfo, useUserForm, useValidateVerificationToken, useValidateVerificationTokenForm, useVendorForm, useVendorInfoForm, validateVerificationTokenFields, vendorAvailability, vendorBasicInfoFields, vendorCompliance, vendorElectricity, vendorEndDateFields, vendorFoodFlavour, vendorFullAddress, vendorGazebo, vendorLocationDescription, vendorMenuFields, vendorPackaging, vendorPriceRange, vendorProducedIn, vendorStallSize, vendorStartDateFields, vendorTable };
|
|
2905
|
+
export { ANDROID_URL, type AdFormData, type AdResource, type AdType, type AdminUpdateResourceType, type AppSettingsFormData, type AppSettingsType, type AssociateType, type BadgeBasename, type BadgeId, type BaseGameMap, type BaseGameType, type BaseResourceType, type BaseResourceTypeFormData, type Category, type ChatMessageInput, type ChatMessageReaction, type ChatMessageReplyPreview, type ChatMessageSeen, type ChatMessageType, type ChatType, type CluiImageBasename, type CluiImageId, type ContactUsFormData, type CreateAdFormData, type CreateAppSettingsFormData, type CreateBulkNotificationInput, type CreateContactUsFormData, type CreateEventFormData, type CreateEventInfoFormData, type CreateFormData, type CreateLoginFormData, type CreatePartnerFormData, type CreatePostFormData, type CreateRegisterFormData, type CreateRequestPasswordResetFormData, type CreateResetPasswordFormData, type CreateSchoolFormData, type CreateUnregisteredVendorFormData, type CreateUserFormData, type CreateValidateVerificationTokenFormData, type CreateVendorFormData, type CreateVendorInfoFormData, DEFAULT_SHARE_OG_IMAGE, type DailyClueBaseGame, type DailyClueGameData, type DateTimeType, type DateTimeWithPriceType, type DeviceInfo, EnumActivity, EnumAdShowOn, EnumAdStatus, EnumAdStyle, EnumAdType, EnumBillingPeriod, EnumChatReportReason, EnumChatType, EnumEventDateStatus, EnumEventType, EnumFoodFlavor, EnumFoodType, EnumGameStatus, EnumGameType, EnumInviteStatus, EnumNotificationResourceType, EnumNotificationType, EnumOSPlatform, EnumPartnerType, EnumPaymentMethod, EnumPostContentType, EnumPostType, EnumRegions, EnumRelationResource, EnumResourceType, EnumSocialMedia, EnumSubscriptionStatus, EnumUserLicence, EnumUserRole, EnumVendorType, EnumVerificationType, type EventFormData, type EventInfoFormData, type EventInfoType, type EventListItemType, type EventStatusType, type EventType, type FormDateField, type FormField, type GameDate, type GameDocType, type GameHistory, type GameLeaderboard, type GamePlacement, type GamePlacementClue, type GameType, type GeocodeLocation, type GlobalGameData, type GoogleAddressComponent, type GoogleImportedMarket, IMAGE_EXTENSION, IOS_URL, type IconBasename, type IconId, type ImageObjectType, ImageTypeEnum, type LocationGeoType, type LocationType, type LoginFormData, type LogoBasename, type LogoId, type MarketingMaterialRequestInputType, type MiniQuizAnswer, type MiniQuizAnsweredQuestion, type MiniQuizBaseGame, type MiniQuizGameData, type MiniQuizQuestion, type NotificationCount, type NotificationDataType, type NotificationType, type Nullable, OG_DESCRIPTION_LINE_BREAK, type OptionItem, type OtherImagesBasename, type OtherImagesId, type OwnerType, POST_SHARE_RESOURCE_TYPES, PROMO_CODE_PREFIX, PUBLIC_SHARE_PATH_TYPES, type ParticipantType, type PartnerFormData, type PartnerType, type PaymentInfoType, type PlacePrediction, type PostContentData, type PostContentFormData, type PostContentGame, type PostContentImage, type PostContentList, type PostContentTextarea, type PostContentType, type PostContentVideo, type PostFileInput, type PostFormData, type PostShareResourceType, type PostType, type PosterAssetId, type PosterImageBasename, type PosterInputType, type PosterUsageType, type PromoCodeType, type PublicSharePathType, RELATION_SHARE_APPLICATION, RELATION_SHARE_INVITATION, RELATION_SHARE_RESOURCE_TYPES, RESOURCE_SHARE_TYPES, RESOURCE_SHARE_TYPES_FOR_URL, type RefundPolicy, type Region, type RegisterFormData, type RelationDate, type RelationSharePathType, type RelationShareResourceType, type RelationType, type ReportChatUser, type RequestPasswordResetFormData, type Requirement, type ResetPasswordFormData, type ResourceActivityEntry, type ResourceActivityInputType, type ResourceActivityType, type ResourceByUser, type ResourceConnectionsType, type ResourceContactDetailsType, type ResourceDetails, type ResourceImageType, type ResourceShareType, SAVED_EMAIL_KEY, SAVED_PASSWORD_KEY, SAVED_REFRESH_TOKEN_KEY, SAVED_TOKEN_KEY, SCHOOL_MAX_STUDENT_COUNT, SCHOOL_MIN_STUDENT_COUNT, SHARE_CALENDAR_ICON, SHARE_CATEGORIES_SECTION_HEADING, SHARE_CATEGORY_ICON, SHARE_CHECKMARK_ICON, SHARE_DESCRIPTION_SECTION_BREAK, SHARE_DESCRIPTION_SECTION_SEPARATOR, SHARE_MARKET_DATES_SECTION_HEADING, SHARE_REQUIREMENTS_SECTION_HEADING, SHARE_RESOURCE_LABEL, SHARE_SITE_URL, SHARE_TYPE_PATH_REGEX, type SchoolCampaignType, type SchoolFormData, type SchoolRegisteredUserType, type SchoolReturnType, type SchoolType, type ShareEventDateTime, type ShareEventForInvitation, type ShareEventInfoForInvitation, type ShareResourceType, type ShareStallType, type ShareType, type ShareVendorCategory, type ShareVendorForApplication, type ShareVendorInfoForApplication, type SocialMediaType, type StallType, type StripeSubscription, type Subcategory, type SubcategoryItems, type SubscriptionPlanData, type SubscriptionPlansResponse, type SubscriptionPricingData, type SubscriptionStatusData, type TermsAgreement, USER_STORAGE_KEY, type UnregisteredVendorFormData, type UnregisteredVendorInvitationType, type UnregisteredVendorType, type UseGetEventsByRegionOptions, type UserActivity, type UserActivityEvent, type UserFormData, type UserLicenceType, type UserType, type ValidateVerificationTokenFormData, type VendorAttributes, type VendorCalendarData, type VendorFormData, type VendorInfoFormData, type VendorInfoType, type VendorProductList, type VendorType, availableCategories, availableRegionOptions, availableRegionTypes, availableTagTypes, badgeFiles, badgeIds, badges, buildApplicationShareDescription, buildFacebookShareQuote, buildInvitationShareDescription, buildShareOgDescription, buildShareOgDescriptionFromSections, buildSharePagePath, buildShareUrl, capitalizeFirstLetter, categoryColors, cluemartSocialMedia, cluiFiles, cluiIds, cluiImages, companyContactFields, computeDailyClueState, contactUsFields, darkColors, dateFormat, defaultEventFormValues, defaultEventInfoFormValues, defaultLocation, defaultPartnerFormValues, defaultUnregisteredVendorFormValues, defaultVendorFormValues, defaultVendorInfoFormValues, emailField, eventBasicInfoFields, eventEndDateFields, eventInfo, eventInfoPaymentInfo, eventStartDateFields, fonts, foodFlavourOptions, formatCategoryLabel, formatDate, formatShareApplicationCategoriesSection, formatShareInvitationMarketDatesSection, formatShareInvitationRequirementsSection, formatShareMarketDate, formatShareSectionsForCompactDisplay, formatShareSectionsForMultilineDisplay, formatStallCapacityLabel, formatTimestamp, gameScreenIdentifierList, gameTypeToDisplayName, getCurrentAndFutureDates, globalDefaultValues, iconFiles, iconIds, icons, isFutureDatesBeforeThreshold, isIsoDateString, isPostShareResourceType, isRelationShareResourceType, joinShareDescriptionSections, joinShareOgDescriptionSections, licenseNiceNames, lightColors, loginFields, logoFiles, logoIds, logos, mapArrayToOptions, mapBaseResourceTypeToFormData, normalizeShareOgDescription, normalizeShareRouteId, normalizeUrl, nzStartOfDay, otherImages, otherImagesFiles, otherImagesIds, packagingOptions, partnerBasicInfoFields, paymentMethodOptions, posterFiles, posterIds, posters, priceUnits, producedIngOptions, productLabelGroups, profileFields, refundPolicyOptions, registerFields, removeTypename, requestPasswordResetFields, requirementsOptions, resetPasswordFields, seededShuffle, socialMediaFields, sortDatesChronologically, splitShareDescriptionSections, stallTypeOptions, statusOptions, tagOptions, timeFormat, toNZTime, truncateText, useAdForm, useAddParticipantToChat, useAddUserFavouriteResource, useAddUserGoingResource, useAddUserInterestResource, useAddUserPresentResource, useAdminPermanentlyDeleteResource, useAdminResendUserVerificationEmail, useAdminUpdateResourceType, useAppSettingsForm, useCancelSubscription, useContactUs, useContactUsForm, useCrawlGoogleMarkets, useCreateAd, useCreateBulkNotifications, useCreateCheckoutSession, useCreateCustomerPortal, useCreateEvent, useCreateEventInfo, useCreatePartner, useCreatePost, useCreatePoster, useCreatePrivateChat, useCreatePushToken, useCreateRelation, useCreateResourceActivity, useCreateSchool, useCreateUnregisteredVendor, useCreateUser, useCreateVendor, useCreateVendorInfo, useDeleteAd, useDeleteAllNotifications, useDeleteChat, useDeleteEvent, useDeleteNotification, useDeletePartner, useDeletePost, useDeleteRelation, useDeleteSchool, useDeleteUnregisteredVendor, useDeleteUser, useDeleteVendor, useEventForm, useEventInfoForm, useGetAd, useGetAds, useGetAdsByRegion, useGetAppSettings, useGetChat, useGetChatSubscription, useGetChatsByRegion, useGetEvent, useGetEventByPlaceId, useGetEventInfo, useGetEventRelations, useGetEvents, useGetEventsByRegion, useGetEventsNearMe, useGetGame, useGetGameLeaderboard, useGetGames, useGetNotificationCount, useGetNotificationCountSubscription, useGetPartner, useGetPartners, useGetPartnersByRegion, useGetPost, useGetPosts, useGetPostsByType, useGetRelation, useGetRelationByEventAndVendor, useGetReportedChatUsers, useGetResourceActivity, useGetResourceConnections, useGetSchool, useGetSchools, useGetSubscriptionPlans, useGetSubscriptionStatus, useGetUnregisteredVendor, useGetUnregisteredVendors, useGetUnregisteredVendorsByInviterId, useGetUser, useGetUserActivities, useGetUserChats, useGetUserEvents, useGetUserNotifications, useGetUserNotificationsSubscription, useGetUserPartners, useGetUserResources, useGetUserVendors, useGetUsers, useGetVendor, useGetVendorInfo, useGetVendorRelations, useGetVendors, useGetVendorsByRegion, useLeaveGame, useLocationSearch, useLogin, useLoginForm, useLogout, useMarkAllNotificationsRead, useMarkChatMessagesSeen, useMarkNotificationRead, usePartnerForm, usePostForm, useRefreshToken, useRegister, useRegisterForm, useRemoveParticipantFromChat, useRemoveUserFavouriteResource, useRemoveUserGoingResource, useRemoveUserInterestResource, useRemoveUserPresentResource, useReportChatUser, useRequestMarketingMaterial, useRequestPasswordReset, useRequestPasswordResetForm, useResetPassword, useResetPasswordForm, useSchoolForm, useSearchEvents, useSearchPartners, useSearchVendors, useSelectPackage, useSelectStandardPackage, useSendChatMessage, useStartGame, useToggleChatMessageLike, useUnlinkUnregisteredVendorByInviterId, useUnregisteredVendorForm, useUpdateAd, useUpdateAppSettings, useUpdateDailyClueGame, useUpdateEvent, useUpdateEventInfo, useUpdateGoogleImportedMarkets, useUpdateMiniQuizGame, useUpdatePartner, useUpdatePost, useUpdateRelation, useUpdateSchool, useUpdateSubscriptionPlan, useUpdateUnregisteredVendor, useUpdateUser, useUpdateVendor, useUpdateVendorInfo, useUserForm, useValidateVerificationToken, useValidateVerificationTokenForm, useVendorForm, useVendorInfoForm, validateVerificationTokenFields, vendorAvailability, vendorBasicInfoFields, vendorCompliance, vendorElectricity, vendorEndDateFields, vendorFoodFlavour, vendorFullAddress, vendorGazebo, vendorLocationDescription, vendorMenuFields, vendorPackaging, vendorPriceRange, vendorProducedIn, vendorStallSize, vendorStartDateFields, vendorTable };
|
package/dist/index.mjs
CHANGED
|
@@ -8470,6 +8470,54 @@ var otherImages = Object.fromEntries(
|
|
|
8470
8470
|
Object.entries(otherImagesFiles).map(([key, file]) => [key, `${PKG}/images/${file}`])
|
|
8471
8471
|
);
|
|
8472
8472
|
|
|
8473
|
+
// src/sharing/relationShareTypes.ts
|
|
8474
|
+
var RELATION_SHARE_INVITATION = "invitation";
|
|
8475
|
+
var RELATION_SHARE_APPLICATION = "application";
|
|
8476
|
+
var RELATION_SHARE_RESOURCE_TYPES = [
|
|
8477
|
+
RELATION_SHARE_INVITATION,
|
|
8478
|
+
RELATION_SHARE_APPLICATION
|
|
8479
|
+
];
|
|
8480
|
+
function isRelationShareResourceType(resourceType) {
|
|
8481
|
+
return RELATION_SHARE_RESOURCE_TYPES.includes(
|
|
8482
|
+
resourceType
|
|
8483
|
+
);
|
|
8484
|
+
}
|
|
8485
|
+
|
|
8486
|
+
// src/sharing/constants.ts
|
|
8487
|
+
var SHARE_SITE_URL = "https://cluemart.co.nz";
|
|
8488
|
+
var SHARE_CALENDAR_ICON = "\u{1F4C5}";
|
|
8489
|
+
var SHARE_MARKET_DATES_SECTION_HEADING = `${SHARE_CALENDAR_ICON} Market dates:`;
|
|
8490
|
+
var SHARE_CHECKMARK_ICON = "\u2705";
|
|
8491
|
+
var SHARE_REQUIREMENTS_SECTION_HEADING = `${SHARE_CHECKMARK_ICON} Requirements:`;
|
|
8492
|
+
var SHARE_CATEGORY_ICON = "\u{1F3F7}\uFE0F";
|
|
8493
|
+
var SHARE_CATEGORIES_SECTION_HEADING = `${SHARE_CATEGORY_ICON} Categories:`;
|
|
8494
|
+
var DEFAULT_SHARE_OG_IMAGE = `${SHARE_SITE_URL}/assets/logo.webp`;
|
|
8495
|
+
var RESOURCE_SHARE_TYPES = [
|
|
8496
|
+
"market",
|
|
8497
|
+
"stallholder",
|
|
8498
|
+
"partner"
|
|
8499
|
+
];
|
|
8500
|
+
var POST_SHARE_RESOURCE_TYPES = [
|
|
8501
|
+
"daily_meets",
|
|
8502
|
+
"daily_tips",
|
|
8503
|
+
"daily_games"
|
|
8504
|
+
];
|
|
8505
|
+
var SHARE_RESOURCE_LABEL = {
|
|
8506
|
+
[RELATION_SHARE_APPLICATION]: "Application",
|
|
8507
|
+
[RELATION_SHARE_INVITATION]: "Invitation",
|
|
8508
|
+
daily_games: "Daily Game",
|
|
8509
|
+
daily_meets: "Daily Meet",
|
|
8510
|
+
daily_tips: "Daily Tip",
|
|
8511
|
+
market: "Market",
|
|
8512
|
+
partner: "Partner",
|
|
8513
|
+
stallholder: "Stallholder"
|
|
8514
|
+
};
|
|
8515
|
+
function isPostShareResourceType(resourceType) {
|
|
8516
|
+
return POST_SHARE_RESOURCE_TYPES.includes(
|
|
8517
|
+
resourceType
|
|
8518
|
+
);
|
|
8519
|
+
}
|
|
8520
|
+
|
|
8473
8521
|
// src/sharing/formatCategoryLabel.ts
|
|
8474
8522
|
function formatCategoryLabel(category) {
|
|
8475
8523
|
const subcategoryNames = category.subcategories.map((subcategory) => subcategory.name).filter(Boolean);
|
|
@@ -8482,25 +8530,43 @@ function formatCategoryLabel(category) {
|
|
|
8482
8530
|
// src/sharing/joinShareDescriptionSections.ts
|
|
8483
8531
|
var SHARE_DESCRIPTION_SECTION_SEPARATOR = " \xB7 ";
|
|
8484
8532
|
var SHARE_DESCRIPTION_SECTION_BREAK = "\n\n";
|
|
8533
|
+
var OG_DESCRIPTION_LINE_BREAK = " ";
|
|
8534
|
+
function joinShareOgDescriptionSections(sections) {
|
|
8535
|
+
return sections.map((section) => typeof section === "string" ? section.trim() : "").filter((section) => section.length > 0).join(OG_DESCRIPTION_LINE_BREAK);
|
|
8536
|
+
}
|
|
8485
8537
|
function joinShareDescriptionSections(sections) {
|
|
8486
8538
|
return sections.filter((section) => Boolean(section)).join(SHARE_DESCRIPTION_SECTION_BREAK);
|
|
8487
8539
|
}
|
|
8488
8540
|
|
|
8489
8541
|
// src/sharing/buildRelationShareDescription.ts
|
|
8490
|
-
function
|
|
8491
|
-
|
|
8492
|
-
return new Intl.DateTimeFormat("en-NZ", {
|
|
8493
|
-
day: "numeric",
|
|
8494
|
-
month: "short",
|
|
8495
|
-
year: "numeric"
|
|
8496
|
-
}).format(new Date(isoDate));
|
|
8497
|
-
} catch {
|
|
8498
|
-
return isoDate;
|
|
8499
|
-
}
|
|
8542
|
+
function formatShareMarketDate(dateStr) {
|
|
8543
|
+
return formatDate(dateStr, "date");
|
|
8500
8544
|
}
|
|
8501
8545
|
function formatStallCapacityLabel(stallCapacity) {
|
|
8502
8546
|
return stallCapacity > 0 ? ` (${stallCapacity} spaces available)` : " - Full";
|
|
8503
8547
|
}
|
|
8548
|
+
function formatShareStallLine(stall) {
|
|
8549
|
+
return ` - ${stall.label} \u2014 $${stall.price}${formatStallCapacityLabel(stall.stallCapacity)}`;
|
|
8550
|
+
}
|
|
8551
|
+
function formatShareInvitationMarketDatesSection(dateTime) {
|
|
8552
|
+
const dateBlocks = dateTime.map((date3) => {
|
|
8553
|
+
const formattedDate = formatShareMarketDate(date3.startDate);
|
|
8554
|
+
const stallLines = date3.stallTypes.map(formatShareStallLine);
|
|
8555
|
+
return [`- ${formattedDate}`, ...stallLines].join("\n");
|
|
8556
|
+
});
|
|
8557
|
+
return `${SHARE_MARKET_DATES_SECTION_HEADING}
|
|
8558
|
+
${dateBlocks.join("\n")}`;
|
|
8559
|
+
}
|
|
8560
|
+
function formatShareInvitationRequirementsSection(requirementLabels) {
|
|
8561
|
+
const bullets = requirementLabels.map((label) => `- ${label}`);
|
|
8562
|
+
return `${SHARE_REQUIREMENTS_SECTION_HEADING}
|
|
8563
|
+
${bullets.join("\n")}`;
|
|
8564
|
+
}
|
|
8565
|
+
function formatShareApplicationCategoriesSection(categoryLabels) {
|
|
8566
|
+
const bullets = categoryLabels.map((label) => `- ${label}`);
|
|
8567
|
+
return `${SHARE_CATEGORIES_SECTION_HEADING}
|
|
8568
|
+
${bullets.join("\n")}`;
|
|
8569
|
+
}
|
|
8504
8570
|
function buildInvitationShareDescription(event, eventInfo2) {
|
|
8505
8571
|
const stallTypes2 = eventInfo2?.dateTime?.flatMap((date3) => date3.stallTypes) ?? [];
|
|
8506
8572
|
if (!eventInfo2 || stallTypes2.length === 0) {
|
|
@@ -8509,15 +8575,9 @@ function buildInvitationShareDescription(event, eventInfo2) {
|
|
|
8509
8575
|
const requirementLabels = (eventInfo2.requirements ?? []).filter((item) => item.value).map((item) => item.label);
|
|
8510
8576
|
const sections = [
|
|
8511
8577
|
event.location.fullAddress,
|
|
8512
|
-
|
|
8513
|
-
const start = formatShareDate(date3.startDate);
|
|
8514
|
-
return `Market date: ${start}`;
|
|
8515
|
-
}),
|
|
8578
|
+
formatShareInvitationMarketDatesSection(eventInfo2.dateTime),
|
|
8516
8579
|
`Application deadline: vendors must apply at least ${eventInfo2.applicationDeadlineHours} hours before each market date.`,
|
|
8517
|
-
|
|
8518
|
-
(stall) => `Stall: ${stall.label} \u2014 $${stall.price}${formatStallCapacityLabel(stall.stallCapacity)}`
|
|
8519
|
-
),
|
|
8520
|
-
requirementLabels.length > 0 && `Requirements: ${requirementLabels.join(", ")}`
|
|
8580
|
+
requirementLabels.length > 0 && formatShareInvitationRequirementsSection(requirementLabels)
|
|
8521
8581
|
];
|
|
8522
8582
|
return joinShareDescriptionSections(sections);
|
|
8523
8583
|
}
|
|
@@ -8535,57 +8595,15 @@ function buildApplicationShareDescription(vendor, vendorInfo) {
|
|
|
8535
8595
|
].filter(Boolean);
|
|
8536
8596
|
const profileDescription = vendor.description?.trim();
|
|
8537
8597
|
const sections = [
|
|
8538
|
-
categoryLabels.length > 0 &&
|
|
8598
|
+
categoryLabels.length > 0 && formatShareApplicationCategoriesSection(categoryLabels),
|
|
8539
8599
|
`Stall size: ${vendorInfo.stallInfo.size.width}m \xD7 ${vendorInfo.stallInfo.size.depth}m`,
|
|
8540
|
-
|
|
8600
|
+
complianceLabels.length > 0 && `Compliance: ${complianceLabels.join(", ")}`,
|
|
8541
8601
|
`Price range: $${vendorInfo.product.priceRange.min} \u2013 $${vendorInfo.product.priceRange.max}`,
|
|
8542
8602
|
profileDescription
|
|
8543
8603
|
];
|
|
8544
8604
|
return joinShareDescriptionSections(sections);
|
|
8545
8605
|
}
|
|
8546
8606
|
|
|
8547
|
-
// src/sharing/relationShareTypes.ts
|
|
8548
|
-
var RELATION_SHARE_INVITATION = "invitation";
|
|
8549
|
-
var RELATION_SHARE_APPLICATION = "application";
|
|
8550
|
-
var RELATION_SHARE_RESOURCE_TYPES = [
|
|
8551
|
-
RELATION_SHARE_INVITATION,
|
|
8552
|
-
RELATION_SHARE_APPLICATION
|
|
8553
|
-
];
|
|
8554
|
-
function isRelationShareResourceType(resourceType) {
|
|
8555
|
-
return RELATION_SHARE_RESOURCE_TYPES.includes(
|
|
8556
|
-
resourceType
|
|
8557
|
-
);
|
|
8558
|
-
}
|
|
8559
|
-
|
|
8560
|
-
// src/sharing/constants.ts
|
|
8561
|
-
var SHARE_SITE_URL = "https://cluemart.co.nz";
|
|
8562
|
-
var DEFAULT_SHARE_OG_IMAGE = `${SHARE_SITE_URL}/assets/logo.webp`;
|
|
8563
|
-
var RESOURCE_SHARE_TYPES = [
|
|
8564
|
-
"market",
|
|
8565
|
-
"stallholder",
|
|
8566
|
-
"partner"
|
|
8567
|
-
];
|
|
8568
|
-
var POST_SHARE_RESOURCE_TYPES = [
|
|
8569
|
-
"daily_meets",
|
|
8570
|
-
"daily_tips",
|
|
8571
|
-
"daily_games"
|
|
8572
|
-
];
|
|
8573
|
-
var SHARE_RESOURCE_LABEL = {
|
|
8574
|
-
[RELATION_SHARE_APPLICATION]: "Application",
|
|
8575
|
-
[RELATION_SHARE_INVITATION]: "Invitation",
|
|
8576
|
-
daily_games: "Daily Game",
|
|
8577
|
-
daily_meets: "Daily Meet",
|
|
8578
|
-
daily_tips: "Daily Tip",
|
|
8579
|
-
market: "Market",
|
|
8580
|
-
partner: "Partner",
|
|
8581
|
-
stallholder: "Stallholder"
|
|
8582
|
-
};
|
|
8583
|
-
function isPostShareResourceType(resourceType) {
|
|
8584
|
-
return POST_SHARE_RESOURCE_TYPES.includes(
|
|
8585
|
-
resourceType
|
|
8586
|
-
);
|
|
8587
|
-
}
|
|
8588
|
-
|
|
8589
8607
|
// src/sharing/buildShareUrl.ts
|
|
8590
8608
|
var PUBLIC_SHARE_PATH_TYPES = [
|
|
8591
8609
|
...RESOURCE_SHARE_TYPES,
|
|
@@ -8607,7 +8625,14 @@ function normalizeShareSection(value) {
|
|
|
8607
8625
|
if (value == null) {
|
|
8608
8626
|
return "";
|
|
8609
8627
|
}
|
|
8610
|
-
return value.trim().split("\n").map((line) =>
|
|
8628
|
+
return value.trim().split("\n").map((line) => {
|
|
8629
|
+
const match = line.match(/^([ \t]*)(.*)$/);
|
|
8630
|
+
if (!match) {
|
|
8631
|
+
return line;
|
|
8632
|
+
}
|
|
8633
|
+
const [, leading, rest] = match;
|
|
8634
|
+
return leading + rest.trim().replace(/[ \t]{2,}/g, " ");
|
|
8635
|
+
}).join("\n").replace(/\n{3,}/g, "\n\n");
|
|
8611
8636
|
}
|
|
8612
8637
|
function stripLegacyBulletPrefix(section) {
|
|
8613
8638
|
return section.startsWith(LEGACY_BULLET_PREFIX) ? section.slice(LEGACY_BULLET_PREFIX.length) : section;
|
|
@@ -8642,14 +8667,7 @@ function formatShareSectionsForCompactDisplay(value) {
|
|
|
8642
8667
|
);
|
|
8643
8668
|
}
|
|
8644
8669
|
function normalizeShareOgDescription(value) {
|
|
8645
|
-
|
|
8646
|
-
if (!trimmed) {
|
|
8647
|
-
return "";
|
|
8648
|
-
}
|
|
8649
|
-
if (/\n\n/.test(trimmed) || trimmed.includes(SHARE_DESCRIPTION_SECTION_SEPARATOR)) {
|
|
8650
|
-
return formatShareSectionsForCompactDisplay(trimmed);
|
|
8651
|
-
}
|
|
8652
|
-
return trimmed.replace(/\s+/g, " ").trim();
|
|
8670
|
+
return joinShareOgDescriptionSections(splitShareDescriptionSections(value));
|
|
8653
8671
|
}
|
|
8654
8672
|
function buildFacebookShareQuote(title, description) {
|
|
8655
8673
|
const titleSection = normalizeShareSection(title);
|
|
@@ -8660,8 +8678,11 @@ function buildFacebookShareQuote(title, description) {
|
|
|
8660
8678
|
const quote = sections.join(SHARE_DESCRIPTION_SECTION_BREAK).trim();
|
|
8661
8679
|
return quote.length > 0 ? quote : void 0;
|
|
8662
8680
|
}
|
|
8681
|
+
function buildShareOgDescriptionFromSections(sections) {
|
|
8682
|
+
return joinShareOgDescriptionSections(sections);
|
|
8683
|
+
}
|
|
8663
8684
|
function buildShareOgDescription(_title, description) {
|
|
8664
|
-
return
|
|
8685
|
+
return joinShareOgDescriptionSections(splitShareDescriptionSections(description));
|
|
8665
8686
|
}
|
|
8666
8687
|
|
|
8667
8688
|
// src/sharing/normalizeShareRouteId.ts
|
|
@@ -8801,6 +8822,7 @@ export {
|
|
|
8801
8822
|
IMAGE_EXTENSION,
|
|
8802
8823
|
IOS_URL,
|
|
8803
8824
|
ImageTypeEnum,
|
|
8825
|
+
OG_DESCRIPTION_LINE_BREAK,
|
|
8804
8826
|
POST_SHARE_RESOURCE_TYPES,
|
|
8805
8827
|
PROMO_CODE_PREFIX,
|
|
8806
8828
|
PUBLIC_SHARE_PATH_TYPES,
|
|
@@ -8815,8 +8837,14 @@ export {
|
|
|
8815
8837
|
SAVED_TOKEN_KEY,
|
|
8816
8838
|
SCHOOL_MAX_STUDENT_COUNT,
|
|
8817
8839
|
SCHOOL_MIN_STUDENT_COUNT,
|
|
8840
|
+
SHARE_CALENDAR_ICON,
|
|
8841
|
+
SHARE_CATEGORIES_SECTION_HEADING,
|
|
8842
|
+
SHARE_CATEGORY_ICON,
|
|
8843
|
+
SHARE_CHECKMARK_ICON,
|
|
8818
8844
|
SHARE_DESCRIPTION_SECTION_BREAK,
|
|
8819
8845
|
SHARE_DESCRIPTION_SECTION_SEPARATOR,
|
|
8846
|
+
SHARE_MARKET_DATES_SECTION_HEADING,
|
|
8847
|
+
SHARE_REQUIREMENTS_SECTION_HEADING,
|
|
8820
8848
|
SHARE_RESOURCE_LABEL,
|
|
8821
8849
|
SHARE_SITE_URL,
|
|
8822
8850
|
SHARE_TYPE_PATH_REGEX,
|
|
@@ -8832,6 +8860,7 @@ export {
|
|
|
8832
8860
|
buildFacebookShareQuote,
|
|
8833
8861
|
buildInvitationShareDescription,
|
|
8834
8862
|
buildShareOgDescription,
|
|
8863
|
+
buildShareOgDescriptionFromSections,
|
|
8835
8864
|
buildSharePagePath,
|
|
8836
8865
|
buildShareUrl,
|
|
8837
8866
|
capitalizeFirstLetter,
|
|
@@ -8862,6 +8891,10 @@ export {
|
|
|
8862
8891
|
foodFlavourOptions,
|
|
8863
8892
|
formatCategoryLabel,
|
|
8864
8893
|
formatDate,
|
|
8894
|
+
formatShareApplicationCategoriesSection,
|
|
8895
|
+
formatShareInvitationMarketDatesSection,
|
|
8896
|
+
formatShareInvitationRequirementsSection,
|
|
8897
|
+
formatShareMarketDate,
|
|
8865
8898
|
formatShareSectionsForCompactDisplay,
|
|
8866
8899
|
formatShareSectionsForMultilineDisplay,
|
|
8867
8900
|
formatStallCapacityLabel,
|
|
@@ -8878,6 +8911,7 @@ export {
|
|
|
8878
8911
|
isPostShareResourceType,
|
|
8879
8912
|
isRelationShareResourceType,
|
|
8880
8913
|
joinShareDescriptionSections,
|
|
8914
|
+
joinShareOgDescriptionSections,
|
|
8881
8915
|
licenseNiceNames,
|
|
8882
8916
|
lightColors,
|
|
8883
8917
|
loginFields,
|
|
@@ -8912,6 +8946,7 @@ export {
|
|
|
8912
8946
|
seededShuffle,
|
|
8913
8947
|
socialMediaFields,
|
|
8914
8948
|
sortDatesChronologically,
|
|
8949
|
+
splitShareDescriptionSections,
|
|
8915
8950
|
stallTypeOptions,
|
|
8916
8951
|
statusOptions,
|
|
8917
8952
|
tagOptions,
|