@timardex/cluemart-shared 1.5.600 → 1.5.602
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-GSOSJNID.mjs → chunk-Z2A5VC6X.mjs} +103 -65
- package/dist/chunk-Z2A5VC6X.mjs.map +1 -0
- package/dist/hooks/index.cjs +6 -0
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.mjs +1 -1
- package/dist/index.cjs +101 -54
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +17 -1
- package/dist/index.d.ts +17 -1
- package/dist/index.mjs +92 -54
- package/dist/index.mjs.map +1 -1
- package/dist/sharing/index.cjs +101 -54
- package/dist/sharing/index.cjs.map +1 -1
- package/dist/sharing/index.d.mts +17 -1
- package/dist/sharing/index.d.ts +17 -1
- package/dist/sharing/index.mjs +19 -1
- package/package.json +1 -1
- package/dist/chunk-GSOSJNID.mjs.map +0 -1
package/dist/hooks/index.mjs
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -81,8 +81,14 @@ __export(index_exports, {
|
|
|
81
81
|
SAVED_TOKEN_KEY: () => SAVED_TOKEN_KEY,
|
|
82
82
|
SCHOOL_MAX_STUDENT_COUNT: () => SCHOOL_MAX_STUDENT_COUNT,
|
|
83
83
|
SCHOOL_MIN_STUDENT_COUNT: () => SCHOOL_MIN_STUDENT_COUNT,
|
|
84
|
+
SHARE_CALENDAR_ICON: () => SHARE_CALENDAR_ICON,
|
|
85
|
+
SHARE_CATEGORIES_SECTION_HEADING: () => SHARE_CATEGORIES_SECTION_HEADING,
|
|
86
|
+
SHARE_CATEGORY_ICON: () => SHARE_CATEGORY_ICON,
|
|
87
|
+
SHARE_CHECKMARK_ICON: () => SHARE_CHECKMARK_ICON,
|
|
84
88
|
SHARE_DESCRIPTION_SECTION_BREAK: () => SHARE_DESCRIPTION_SECTION_BREAK,
|
|
85
89
|
SHARE_DESCRIPTION_SECTION_SEPARATOR: () => SHARE_DESCRIPTION_SECTION_SEPARATOR,
|
|
90
|
+
SHARE_MARKET_DATES_SECTION_HEADING: () => SHARE_MARKET_DATES_SECTION_HEADING,
|
|
91
|
+
SHARE_REQUIREMENTS_SECTION_HEADING: () => SHARE_REQUIREMENTS_SECTION_HEADING,
|
|
86
92
|
SHARE_RESOURCE_LABEL: () => SHARE_RESOURCE_LABEL,
|
|
87
93
|
SHARE_SITE_URL: () => SHARE_SITE_URL,
|
|
88
94
|
SHARE_TYPE_PATH_REGEX: () => SHARE_TYPE_PATH_REGEX,
|
|
@@ -129,6 +135,9 @@ __export(index_exports, {
|
|
|
129
135
|
foodFlavourOptions: () => foodFlavourOptions,
|
|
130
136
|
formatCategoryLabel: () => formatCategoryLabel,
|
|
131
137
|
formatDate: () => formatDate,
|
|
138
|
+
formatShareApplicationCategoriesSection: () => formatShareApplicationCategoriesSection,
|
|
139
|
+
formatShareInvitationMarketDatesSection: () => formatShareInvitationMarketDatesSection,
|
|
140
|
+
formatShareInvitationRequirementsSection: () => formatShareInvitationRequirementsSection,
|
|
132
141
|
formatShareMarketDate: () => formatShareMarketDate,
|
|
133
142
|
formatShareSectionsForCompactDisplay: () => formatShareSectionsForCompactDisplay,
|
|
134
143
|
formatShareSectionsForMultilineDisplay: () => formatShareSectionsForMultilineDisplay,
|
|
@@ -8834,6 +8843,54 @@ var otherImages = Object.fromEntries(
|
|
|
8834
8843
|
Object.entries(otherImagesFiles).map(([key, file]) => [key, `${PKG}/images/${file}`])
|
|
8835
8844
|
);
|
|
8836
8845
|
|
|
8846
|
+
// src/sharing/relationShareTypes.ts
|
|
8847
|
+
var RELATION_SHARE_INVITATION = "invitation";
|
|
8848
|
+
var RELATION_SHARE_APPLICATION = "application";
|
|
8849
|
+
var RELATION_SHARE_RESOURCE_TYPES = [
|
|
8850
|
+
RELATION_SHARE_INVITATION,
|
|
8851
|
+
RELATION_SHARE_APPLICATION
|
|
8852
|
+
];
|
|
8853
|
+
function isRelationShareResourceType(resourceType) {
|
|
8854
|
+
return RELATION_SHARE_RESOURCE_TYPES.includes(
|
|
8855
|
+
resourceType
|
|
8856
|
+
);
|
|
8857
|
+
}
|
|
8858
|
+
|
|
8859
|
+
// src/sharing/constants.ts
|
|
8860
|
+
var SHARE_SITE_URL = "https://cluemart.co.nz";
|
|
8861
|
+
var SHARE_CALENDAR_ICON = "\u{1F4C5}";
|
|
8862
|
+
var SHARE_MARKET_DATES_SECTION_HEADING = `${SHARE_CALENDAR_ICON} Market dates:`;
|
|
8863
|
+
var SHARE_CHECKMARK_ICON = "\u2705";
|
|
8864
|
+
var SHARE_REQUIREMENTS_SECTION_HEADING = `${SHARE_CHECKMARK_ICON} Requirements:`;
|
|
8865
|
+
var SHARE_CATEGORY_ICON = "\u{1F3F7}\uFE0F";
|
|
8866
|
+
var SHARE_CATEGORIES_SECTION_HEADING = `${SHARE_CATEGORY_ICON} Categories:`;
|
|
8867
|
+
var DEFAULT_SHARE_OG_IMAGE = `${SHARE_SITE_URL}/assets/logo.webp`;
|
|
8868
|
+
var RESOURCE_SHARE_TYPES = [
|
|
8869
|
+
"market",
|
|
8870
|
+
"stallholder",
|
|
8871
|
+
"partner"
|
|
8872
|
+
];
|
|
8873
|
+
var POST_SHARE_RESOURCE_TYPES = [
|
|
8874
|
+
"daily_meets",
|
|
8875
|
+
"daily_tips",
|
|
8876
|
+
"daily_games"
|
|
8877
|
+
];
|
|
8878
|
+
var SHARE_RESOURCE_LABEL = {
|
|
8879
|
+
[RELATION_SHARE_APPLICATION]: "Application",
|
|
8880
|
+
[RELATION_SHARE_INVITATION]: "Invitation",
|
|
8881
|
+
daily_games: "Daily Game",
|
|
8882
|
+
daily_meets: "Daily Meet",
|
|
8883
|
+
daily_tips: "Daily Tip",
|
|
8884
|
+
market: "Market",
|
|
8885
|
+
partner: "Partner",
|
|
8886
|
+
stallholder: "Stallholder"
|
|
8887
|
+
};
|
|
8888
|
+
function isPostShareResourceType(resourceType) {
|
|
8889
|
+
return POST_SHARE_RESOURCE_TYPES.includes(
|
|
8890
|
+
resourceType
|
|
8891
|
+
);
|
|
8892
|
+
}
|
|
8893
|
+
|
|
8837
8894
|
// src/sharing/formatCategoryLabel.ts
|
|
8838
8895
|
function formatCategoryLabel(category) {
|
|
8839
8896
|
const subcategoryNames = category.subcategories.map((subcategory) => subcategory.name).filter(Boolean);
|
|
@@ -8848,7 +8905,7 @@ var SHARE_DESCRIPTION_SECTION_SEPARATOR = " \xB7 ";
|
|
|
8848
8905
|
var SHARE_DESCRIPTION_SECTION_BREAK = "\n\n";
|
|
8849
8906
|
var OG_DESCRIPTION_LINE_BREAK = " ";
|
|
8850
8907
|
function joinShareOgDescriptionSections(sections) {
|
|
8851
|
-
return sections.map((section) => typeof section === "string" ? section.trim() : "").filter((section) => section.length > 0).join(OG_DESCRIPTION_LINE_BREAK);
|
|
8908
|
+
return sections.map((section) => typeof section === "string" ? section.trim() : "").filter((section) => section.length > 0).map((section) => section.replace(/\n/g, OG_DESCRIPTION_LINE_BREAK)).join(OG_DESCRIPTION_LINE_BREAK);
|
|
8852
8909
|
}
|
|
8853
8910
|
function joinShareDescriptionSections(sections) {
|
|
8854
8911
|
return sections.filter((section) => Boolean(section)).join(SHARE_DESCRIPTION_SECTION_BREAK);
|
|
@@ -8861,6 +8918,28 @@ function formatShareMarketDate(dateStr) {
|
|
|
8861
8918
|
function formatStallCapacityLabel(stallCapacity) {
|
|
8862
8919
|
return stallCapacity > 0 ? ` (${stallCapacity} spaces available)` : " - Full";
|
|
8863
8920
|
}
|
|
8921
|
+
function formatShareStallLine(stall) {
|
|
8922
|
+
return ` - ${stall.label} \u2014 $${stall.price}${formatStallCapacityLabel(stall.stallCapacity)}`;
|
|
8923
|
+
}
|
|
8924
|
+
function formatShareInvitationMarketDatesSection(dateTime) {
|
|
8925
|
+
const dateBlocks = dateTime.map((date3) => {
|
|
8926
|
+
const formattedDate = formatShareMarketDate(date3.startDate);
|
|
8927
|
+
const stallLines = date3.stallTypes.map(formatShareStallLine);
|
|
8928
|
+
return [`- ${formattedDate}`, ...stallLines].join("\n");
|
|
8929
|
+
});
|
|
8930
|
+
return `${SHARE_MARKET_DATES_SECTION_HEADING}
|
|
8931
|
+
${dateBlocks.join("\n")}`;
|
|
8932
|
+
}
|
|
8933
|
+
function formatShareInvitationRequirementsSection(requirementLabels) {
|
|
8934
|
+
const bullets = requirementLabels.map((label) => `- ${label}`);
|
|
8935
|
+
return `${SHARE_REQUIREMENTS_SECTION_HEADING}
|
|
8936
|
+
${bullets.join("\n")}`;
|
|
8937
|
+
}
|
|
8938
|
+
function formatShareApplicationCategoriesSection(categoryLabels) {
|
|
8939
|
+
const bullets = categoryLabels.map((label) => `- ${label}`);
|
|
8940
|
+
return `${SHARE_CATEGORIES_SECTION_HEADING}
|
|
8941
|
+
${bullets.join("\n")}`;
|
|
8942
|
+
}
|
|
8864
8943
|
function buildInvitationShareDescription(event, eventInfo2) {
|
|
8865
8944
|
const stallTypes2 = eventInfo2?.dateTime?.flatMap((date3) => date3.stallTypes) ?? [];
|
|
8866
8945
|
if (!eventInfo2 || stallTypes2.length === 0) {
|
|
@@ -8869,15 +8948,9 @@ function buildInvitationShareDescription(event, eventInfo2) {
|
|
|
8869
8948
|
const requirementLabels = (eventInfo2.requirements ?? []).filter((item) => item.value).map((item) => item.label);
|
|
8870
8949
|
const sections = [
|
|
8871
8950
|
event.location.fullAddress,
|
|
8872
|
-
|
|
8873
|
-
const start = formatShareMarketDate(date3.startDate);
|
|
8874
|
-
return `Market date: ${start}`;
|
|
8875
|
-
}),
|
|
8951
|
+
formatShareInvitationMarketDatesSection(eventInfo2.dateTime),
|
|
8876
8952
|
`Application deadline: vendors must apply at least ${eventInfo2.applicationDeadlineHours} hours before each market date.`,
|
|
8877
|
-
|
|
8878
|
-
(stall) => `Stall: ${stall.label} \u2014 $${stall.price}${formatStallCapacityLabel(stall.stallCapacity)}`
|
|
8879
|
-
),
|
|
8880
|
-
requirementLabels.length > 0 && `Requirements: ${requirementLabels.join(", ")}`
|
|
8953
|
+
requirementLabels.length > 0 && formatShareInvitationRequirementsSection(requirementLabels)
|
|
8881
8954
|
];
|
|
8882
8955
|
return joinShareDescriptionSections(sections);
|
|
8883
8956
|
}
|
|
@@ -8895,57 +8968,15 @@ function buildApplicationShareDescription(vendor, vendorInfo) {
|
|
|
8895
8968
|
].filter(Boolean);
|
|
8896
8969
|
const profileDescription = vendor.description?.trim();
|
|
8897
8970
|
const sections = [
|
|
8898
|
-
categoryLabels.length > 0 &&
|
|
8971
|
+
categoryLabels.length > 0 && formatShareApplicationCategoriesSection(categoryLabels),
|
|
8899
8972
|
`Stall size: ${vendorInfo.stallInfo.size.width}m \xD7 ${vendorInfo.stallInfo.size.depth}m`,
|
|
8900
|
-
|
|
8973
|
+
complianceLabels.length > 0 && `Compliance: ${complianceLabels.join(", ")}`,
|
|
8901
8974
|
`Price range: $${vendorInfo.product.priceRange.min} \u2013 $${vendorInfo.product.priceRange.max}`,
|
|
8902
8975
|
profileDescription
|
|
8903
8976
|
];
|
|
8904
8977
|
return joinShareDescriptionSections(sections);
|
|
8905
8978
|
}
|
|
8906
8979
|
|
|
8907
|
-
// src/sharing/relationShareTypes.ts
|
|
8908
|
-
var RELATION_SHARE_INVITATION = "invitation";
|
|
8909
|
-
var RELATION_SHARE_APPLICATION = "application";
|
|
8910
|
-
var RELATION_SHARE_RESOURCE_TYPES = [
|
|
8911
|
-
RELATION_SHARE_INVITATION,
|
|
8912
|
-
RELATION_SHARE_APPLICATION
|
|
8913
|
-
];
|
|
8914
|
-
function isRelationShareResourceType(resourceType) {
|
|
8915
|
-
return RELATION_SHARE_RESOURCE_TYPES.includes(
|
|
8916
|
-
resourceType
|
|
8917
|
-
);
|
|
8918
|
-
}
|
|
8919
|
-
|
|
8920
|
-
// src/sharing/constants.ts
|
|
8921
|
-
var SHARE_SITE_URL = "https://cluemart.co.nz";
|
|
8922
|
-
var DEFAULT_SHARE_OG_IMAGE = `${SHARE_SITE_URL}/assets/logo.webp`;
|
|
8923
|
-
var RESOURCE_SHARE_TYPES = [
|
|
8924
|
-
"market",
|
|
8925
|
-
"stallholder",
|
|
8926
|
-
"partner"
|
|
8927
|
-
];
|
|
8928
|
-
var POST_SHARE_RESOURCE_TYPES = [
|
|
8929
|
-
"daily_meets",
|
|
8930
|
-
"daily_tips",
|
|
8931
|
-
"daily_games"
|
|
8932
|
-
];
|
|
8933
|
-
var SHARE_RESOURCE_LABEL = {
|
|
8934
|
-
[RELATION_SHARE_APPLICATION]: "Application",
|
|
8935
|
-
[RELATION_SHARE_INVITATION]: "Invitation",
|
|
8936
|
-
daily_games: "Daily Game",
|
|
8937
|
-
daily_meets: "Daily Meet",
|
|
8938
|
-
daily_tips: "Daily Tip",
|
|
8939
|
-
market: "Market",
|
|
8940
|
-
partner: "Partner",
|
|
8941
|
-
stallholder: "Stallholder"
|
|
8942
|
-
};
|
|
8943
|
-
function isPostShareResourceType(resourceType) {
|
|
8944
|
-
return POST_SHARE_RESOURCE_TYPES.includes(
|
|
8945
|
-
resourceType
|
|
8946
|
-
);
|
|
8947
|
-
}
|
|
8948
|
-
|
|
8949
8980
|
// src/sharing/buildShareUrl.ts
|
|
8950
8981
|
var PUBLIC_SHARE_PATH_TYPES = [
|
|
8951
8982
|
...RESOURCE_SHARE_TYPES,
|
|
@@ -8967,7 +8998,14 @@ function normalizeShareSection(value) {
|
|
|
8967
8998
|
if (value == null) {
|
|
8968
8999
|
return "";
|
|
8969
9000
|
}
|
|
8970
|
-
return value.trim().split("\n").map((line) =>
|
|
9001
|
+
return value.trim().split("\n").map((line) => {
|
|
9002
|
+
const match = line.match(/^([ \t]*)(.*)$/);
|
|
9003
|
+
if (!match) {
|
|
9004
|
+
return line;
|
|
9005
|
+
}
|
|
9006
|
+
const [, leading, rest] = match;
|
|
9007
|
+
return leading + rest.trim().replace(/[ \t]{2,}/g, " ");
|
|
9008
|
+
}).join("\n").replace(/\n{3,}/g, "\n\n");
|
|
8971
9009
|
}
|
|
8972
9010
|
function stripLegacyBulletPrefix(section) {
|
|
8973
9011
|
return section.startsWith(LEGACY_BULLET_PREFIX) ? section.slice(LEGACY_BULLET_PREFIX.length) : section;
|
|
@@ -9173,8 +9211,14 @@ var gameTypeToDisplayName = {
|
|
|
9173
9211
|
SAVED_TOKEN_KEY,
|
|
9174
9212
|
SCHOOL_MAX_STUDENT_COUNT,
|
|
9175
9213
|
SCHOOL_MIN_STUDENT_COUNT,
|
|
9214
|
+
SHARE_CALENDAR_ICON,
|
|
9215
|
+
SHARE_CATEGORIES_SECTION_HEADING,
|
|
9216
|
+
SHARE_CATEGORY_ICON,
|
|
9217
|
+
SHARE_CHECKMARK_ICON,
|
|
9176
9218
|
SHARE_DESCRIPTION_SECTION_BREAK,
|
|
9177
9219
|
SHARE_DESCRIPTION_SECTION_SEPARATOR,
|
|
9220
|
+
SHARE_MARKET_DATES_SECTION_HEADING,
|
|
9221
|
+
SHARE_REQUIREMENTS_SECTION_HEADING,
|
|
9178
9222
|
SHARE_RESOURCE_LABEL,
|
|
9179
9223
|
SHARE_SITE_URL,
|
|
9180
9224
|
SHARE_TYPE_PATH_REGEX,
|
|
@@ -9221,6 +9265,9 @@ var gameTypeToDisplayName = {
|
|
|
9221
9265
|
foodFlavourOptions,
|
|
9222
9266
|
formatCategoryLabel,
|
|
9223
9267
|
formatDate,
|
|
9268
|
+
formatShareApplicationCategoriesSection,
|
|
9269
|
+
formatShareInvitationMarketDatesSection,
|
|
9270
|
+
formatShareInvitationRequirementsSection,
|
|
9224
9271
|
formatShareMarketDate,
|
|
9225
9272
|
formatShareSectionsForCompactDisplay,
|
|
9226
9273
|
formatShareSectionsForMultilineDisplay,
|