@timardex/cluemart-shared 1.5.791 → 1.5.793
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/{affiliate-B-jSNkBB.d.ts → affiliate-C09PnHJx.d.ts} +3 -0
- package/dist/{affiliate-CfLsTGgF.d.mts → affiliate-ISt4ujwI.d.mts} +3 -0
- package/dist/{chunk-XR5RTNG3.mjs → chunk-7TMY5XDJ.mjs} +18 -186
- package/dist/chunk-7TMY5XDJ.mjs.map +1 -0
- package/dist/{chunk-HATC3Y5J.mjs → chunk-AM6MIXMX.mjs} +2 -2
- package/dist/chunk-P2YIB4MR.mjs +424 -0
- package/dist/chunk-P2YIB4MR.mjs.map +1 -0
- package/dist/{chunk-V25PPJEQ.mjs → chunk-RBIYRMQB.mjs} +24 -236
- package/dist/chunk-RBIYRMQB.mjs.map +1 -0
- package/dist/{chunk-45PVMXYY.mjs → chunk-XY5XRXR3.mjs} +4 -1
- package/dist/{chunk-45PVMXYY.mjs.map → chunk-XY5XRXR3.mjs.map} +1 -1
- package/dist/formFields/index.cjs +47 -0
- package/dist/formFields/index.cjs.map +1 -1
- package/dist/formFields/index.mjs +4 -3
- package/dist/graphql/index.d.mts +1 -1
- package/dist/graphql/index.d.ts +1 -1
- package/dist/hooks/index.cjs +63 -49
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.d.mts +1 -1
- package/dist/hooks/index.d.ts +1 -1
- package/dist/hooks/index.mjs +11 -6
- package/dist/hooks/index.mjs.map +1 -1
- package/dist/index.cjs +163 -140
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +22 -1
- package/dist/index.d.ts +22 -1
- package/dist/index.mjs +162 -140
- package/dist/index.mjs.map +1 -1
- package/dist/sharing/index.cjs +148 -1173
- package/dist/sharing/index.cjs.map +1 -1
- package/dist/sharing/index.d.mts +7 -1
- package/dist/sharing/index.d.ts +7 -1
- package/dist/sharing/index.mjs +32 -29
- package/dist/types/index.cjs +3 -0
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.mts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.mjs +1 -1
- package/dist/utils/index.cjs +56 -1
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.mts +13 -1
- package/dist/utils/index.d.ts +13 -1
- package/dist/utils/index.mjs +30 -28
- package/package.json +1 -1
- package/dist/chunk-V25PPJEQ.mjs.map +0 -1
- package/dist/chunk-XR5RTNG3.mjs.map +0 -1
- /package/dist/{chunk-HATC3Y5J.mjs.map → chunk-AM6MIXMX.mjs.map} +0 -0
package/dist/index.cjs
CHANGED
|
@@ -276,6 +276,7 @@ __export(index_exports, {
|
|
|
276
276
|
splitShareDescriptionSections: () => splitShareDescriptionSections,
|
|
277
277
|
stallTypeOptions: () => stallTypeOptions,
|
|
278
278
|
statusOptions: () => statusOptions,
|
|
279
|
+
stripOverlaySubtitleSpecialChars: () => stripOverlaySubtitleSpecialChars,
|
|
279
280
|
tagOptions: () => tagOptions,
|
|
280
281
|
timeFormat: () => timeFormat,
|
|
281
282
|
toCalendarIsoDate: () => toCalendarIsoDate,
|
|
@@ -1007,6 +1008,150 @@ var import_isSameOrAfter = __toESM(require("dayjs/plugin/isSameOrAfter.js"));
|
|
|
1007
1008
|
var import_timezone = __toESM(require("dayjs/plugin/timezone.js"));
|
|
1008
1009
|
var import_utc = __toESM(require("dayjs/plugin/utc.js"));
|
|
1009
1010
|
|
|
1011
|
+
// src/sharing/relationShareTypes.ts
|
|
1012
|
+
var RELATION_SHARE_INVITATION = "invitation";
|
|
1013
|
+
var RELATION_SHARE_APPLICATION = "application";
|
|
1014
|
+
var RELATION_OVERLAY_LAYOUT_VERSION = 36;
|
|
1015
|
+
var RELATION_SHARE_RESOURCE_TYPES = [
|
|
1016
|
+
RELATION_SHARE_INVITATION,
|
|
1017
|
+
RELATION_SHARE_APPLICATION
|
|
1018
|
+
];
|
|
1019
|
+
function isRelationShareResourceType(resourceType) {
|
|
1020
|
+
return RELATION_SHARE_RESOURCE_TYPES.includes(
|
|
1021
|
+
resourceType
|
|
1022
|
+
);
|
|
1023
|
+
}
|
|
1024
|
+
|
|
1025
|
+
// src/sharing/constants.ts
|
|
1026
|
+
var SOCIAL_IMAGE_WIDTH = 1200;
|
|
1027
|
+
var SOCIAL_IMAGE_HEIGHT = 630;
|
|
1028
|
+
var SHARE_SITE_URL = "https://cluemart.co.nz";
|
|
1029
|
+
var SHARE_CALENDAR_ICON = "\u{1F4C5}";
|
|
1030
|
+
var SHARE_MARKET_DATES_SECTION_HEADING = `${SHARE_CALENDAR_ICON} Market dates:`;
|
|
1031
|
+
var SHARE_CHECKMARK_ICON = "\u2705";
|
|
1032
|
+
var SHARE_REQUIREMENTS_SECTION_HEADING = `${SHARE_CHECKMARK_ICON} Requirements:`;
|
|
1033
|
+
var SHARE_INFO_ICON = "\u2139\uFE0F";
|
|
1034
|
+
var SHARE_TAGS_SECTION_HEADING = `${SHARE_INFO_ICON} Tags:`;
|
|
1035
|
+
var SHARE_RAIN_OR_SHINE_LINE = "Rain or Shine";
|
|
1036
|
+
var SHARE_FOOD_TRUCK_LINE = "Food Truck";
|
|
1037
|
+
var SHARE_COMPLIANCE_PREFIX = `${SHARE_CHECKMARK_ICON} Compliance:`;
|
|
1038
|
+
var SHARE_CATEGORY_ICON = "\u{1F3F7}\uFE0F";
|
|
1039
|
+
var SHARE_CATEGORIES_SECTION_HEADING = `${SHARE_CATEGORY_ICON} Categories:`;
|
|
1040
|
+
var SHARE_RULER_ICON = "\u{1F4CF}";
|
|
1041
|
+
var SHARE_STALL_SIZE_PREFIX = `${SHARE_RULER_ICON} Stall size:`;
|
|
1042
|
+
var SHARE_DOLLAR_ICON = "$";
|
|
1043
|
+
var SHARE_PRICE_RANGE_PREFIX = `${SHARE_DOLLAR_ICON} Price range:`;
|
|
1044
|
+
var SHARE_CLOCK_ICON = "\u23F0";
|
|
1045
|
+
var SHARE_APPLICATION_DEADLINE_PREFIX = `${SHARE_CLOCK_ICON} Application deadline:`;
|
|
1046
|
+
var SHARE_MORE_INFO_LINE = "Shared from ClueMart";
|
|
1047
|
+
var DEFAULT_SHARE_OG_IMAGE = `${SHARE_SITE_URL}/assets/logo.webp`;
|
|
1048
|
+
var RESOURCE_SHARE_TYPES = [
|
|
1049
|
+
"market",
|
|
1050
|
+
"stallholder",
|
|
1051
|
+
"partner",
|
|
1052
|
+
"affiliate",
|
|
1053
|
+
"school"
|
|
1054
|
+
];
|
|
1055
|
+
var POST_SHARE_RESOURCE_TYPES = [
|
|
1056
|
+
"market_faces",
|
|
1057
|
+
"clue_bites",
|
|
1058
|
+
"play_and_win"
|
|
1059
|
+
];
|
|
1060
|
+
var SHARE_RESOURCE_LABEL = {
|
|
1061
|
+
[RELATION_SHARE_APPLICATION]: "Application",
|
|
1062
|
+
[RELATION_SHARE_INVITATION]: "Invitation",
|
|
1063
|
+
clue_bites: "Clue Bites",
|
|
1064
|
+
market_faces: "Market Faces",
|
|
1065
|
+
play_and_win: "Play & Win",
|
|
1066
|
+
market: "Market",
|
|
1067
|
+
partner: "Partner",
|
|
1068
|
+
stallholder: "Stallholder",
|
|
1069
|
+
affiliate: "Affiliate",
|
|
1070
|
+
school: "School"
|
|
1071
|
+
};
|
|
1072
|
+
function isPostShareResourceType(resourceType) {
|
|
1073
|
+
return POST_SHARE_RESOURCE_TYPES.includes(
|
|
1074
|
+
resourceType
|
|
1075
|
+
);
|
|
1076
|
+
}
|
|
1077
|
+
|
|
1078
|
+
// src/sharing/joinShareDescriptionSections.ts
|
|
1079
|
+
var SHARE_DESCRIPTION_SECTION_BREAK = "\n\n";
|
|
1080
|
+
var OG_DESCRIPTION_LINE_BREAK = " ";
|
|
1081
|
+
function joinShareOgDescriptionSections(sections) {
|
|
1082
|
+
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);
|
|
1083
|
+
}
|
|
1084
|
+
function joinShareDescriptionSections(sections) {
|
|
1085
|
+
return sections.filter((section) => Boolean(section)).join(SHARE_DESCRIPTION_SECTION_BREAK);
|
|
1086
|
+
}
|
|
1087
|
+
function appendShareMoreInfoLine(description) {
|
|
1088
|
+
const trimmed = description.trim();
|
|
1089
|
+
if (trimmed.startsWith(SHARE_MORE_INFO_LINE)) {
|
|
1090
|
+
return trimmed;
|
|
1091
|
+
}
|
|
1092
|
+
if (trimmed.length === 0) {
|
|
1093
|
+
return SHARE_MORE_INFO_LINE;
|
|
1094
|
+
}
|
|
1095
|
+
return joinShareDescriptionSections([SHARE_MORE_INFO_LINE, trimmed]);
|
|
1096
|
+
}
|
|
1097
|
+
|
|
1098
|
+
// src/sharing/normalizeShareDescription.ts
|
|
1099
|
+
var LEADING_WHITESPACE = /^[ \t]*/;
|
|
1100
|
+
function normalizeShareText(value) {
|
|
1101
|
+
if (value == null) {
|
|
1102
|
+
return "";
|
|
1103
|
+
}
|
|
1104
|
+
return value.trim().split("\n").map((line) => {
|
|
1105
|
+
const leading = LEADING_WHITESPACE.exec(line)?.[0] ?? "";
|
|
1106
|
+
const rest = line.slice(leading.length).trim().replace(/[ \t]{2,}/g, " ");
|
|
1107
|
+
return leading + rest;
|
|
1108
|
+
}).join("\n").replace(/\n{3,}/g, "\n\n");
|
|
1109
|
+
}
|
|
1110
|
+
function shareMessageFooterPlacementForType(_shareType) {
|
|
1111
|
+
return "before-body";
|
|
1112
|
+
}
|
|
1113
|
+
function buildShareMessageSections(input) {
|
|
1114
|
+
const title = normalizeShareText(input.title);
|
|
1115
|
+
const description = normalizeShareText(input.description);
|
|
1116
|
+
return [SHARE_MORE_INFO_LINE, title, description].filter(
|
|
1117
|
+
(section) => section.length > 0
|
|
1118
|
+
);
|
|
1119
|
+
}
|
|
1120
|
+
function splitShareDescriptionSections(value) {
|
|
1121
|
+
const trimmed = normalizeShareText(value);
|
|
1122
|
+
if (!trimmed) {
|
|
1123
|
+
return [];
|
|
1124
|
+
}
|
|
1125
|
+
if (/\n\n/.test(trimmed)) {
|
|
1126
|
+
return trimmed.split(/\n\n+/).map((section) => normalizeShareText(section)).filter((section) => section.length > 0);
|
|
1127
|
+
}
|
|
1128
|
+
if (/\n/.test(trimmed)) {
|
|
1129
|
+
return trimmed.split(/\n+/).map((section) => normalizeShareText(section)).filter((section) => section.length > 0);
|
|
1130
|
+
}
|
|
1131
|
+
return [trimmed];
|
|
1132
|
+
}
|
|
1133
|
+
function normalizeShareOgDescription(value) {
|
|
1134
|
+
return joinShareOgDescriptionSections(splitShareDescriptionSections(value));
|
|
1135
|
+
}
|
|
1136
|
+
function buildFacebookShareQuote(title, description, shareType) {
|
|
1137
|
+
const sections = buildShareMessageSections({ description, shareType, title });
|
|
1138
|
+
const quote = sections.join(SHARE_DESCRIPTION_SECTION_BREAK).trim();
|
|
1139
|
+
return quote.length > 0 ? quote : void 0;
|
|
1140
|
+
}
|
|
1141
|
+
function buildShareOgDescriptionFromSections(sections) {
|
|
1142
|
+
return joinShareOgDescriptionSections(sections);
|
|
1143
|
+
}
|
|
1144
|
+
function buildShareOgDescription(_title, description) {
|
|
1145
|
+
return joinShareOgDescriptionSections(
|
|
1146
|
+
splitShareDescriptionSections(description)
|
|
1147
|
+
);
|
|
1148
|
+
}
|
|
1149
|
+
function stripOverlaySubtitleSpecialChars(text) {
|
|
1150
|
+
const regex = /[^\p{L}\p{M}\p{N}\s.,!?'"&\-():;/]/gu;
|
|
1151
|
+
const result = text.replace(/\p{Extended_Pictographic}/gu, "").replace(regex, "");
|
|
1152
|
+
return result.trim();
|
|
1153
|
+
}
|
|
1154
|
+
|
|
1010
1155
|
// src/types/auth.ts
|
|
1011
1156
|
var EnumVerificationType = /* @__PURE__ */ ((EnumVerificationType2) => {
|
|
1012
1157
|
EnumVerificationType2["REGISTER"] = "register";
|
|
@@ -1112,6 +1257,9 @@ var TIER_FROM_LICENCE = {
|
|
|
1112
1257
|
|
|
1113
1258
|
// src/types/affiliate.ts
|
|
1114
1259
|
var EnumAffiliateRewardType = /* @__PURE__ */ ((EnumAffiliateRewardType2) => {
|
|
1260
|
+
EnumAffiliateRewardType2["ACTIVE_EVENT_WITH_VENDOR_REGISTRATIONS"] = "ACTIVE_EVENT_WITH_VENDOR_REGISTRATIONS";
|
|
1261
|
+
EnumAffiliateRewardType2["ACTIVE_VENDOR_PRO_SUBSCRIPTION"] = "ACTIVE_VENDOR_PRO_SUBSCRIPTION";
|
|
1262
|
+
EnumAffiliateRewardType2["ACTIVE_VENDOR_STANDARD_SUBSCRIPTION"] = "ACTIVE_VENDOR_STANDARD_SUBSCRIPTION";
|
|
1115
1263
|
EnumAffiliateRewardType2["NEW_EVENT_REGISTRATION"] = "NEW_EVENT_REGISTRATION";
|
|
1116
1264
|
EnumAffiliateRewardType2["NEW_VENDOR_REGISTRATION"] = "NEW_VENDOR_REGISTRATION";
|
|
1117
1265
|
return EnumAffiliateRewardType2;
|
|
@@ -1141,7 +1289,8 @@ var removeTypename = (obj) => {
|
|
|
1141
1289
|
return obj;
|
|
1142
1290
|
};
|
|
1143
1291
|
var truncateText = (text, maxLength = 30) => {
|
|
1144
|
-
|
|
1292
|
+
const result = stripOverlaySubtitleSpecialChars(text);
|
|
1293
|
+
return result.length > maxLength ? result.substring(0, maxLength) + "..." : result;
|
|
1145
1294
|
};
|
|
1146
1295
|
var mapArrayToOptions = (items) => items.map((item) => ({
|
|
1147
1296
|
label: item,
|
|
@@ -1384,6 +1533,18 @@ var AFFILIATE_REWARDS = {
|
|
|
1384
1533
|
["NEW_VENDOR_REGISTRATION" /* NEW_VENDOR_REGISTRATION */]: {
|
|
1385
1534
|
description: "5 points for new vendor registration (one-time reward)",
|
|
1386
1535
|
value: 5
|
|
1536
|
+
},
|
|
1537
|
+
["ACTIVE_VENDOR_PRO_SUBSCRIPTION" /* ACTIVE_VENDOR_PRO_SUBSCRIPTION */]: {
|
|
1538
|
+
description: "3 points for active vendor pro subscription (monthly reward)",
|
|
1539
|
+
value: 3
|
|
1540
|
+
},
|
|
1541
|
+
["ACTIVE_VENDOR_STANDARD_SUBSCRIPTION" /* ACTIVE_VENDOR_STANDARD_SUBSCRIPTION */]: {
|
|
1542
|
+
description: "1 point for active vendor standard subscription (monthly reward)",
|
|
1543
|
+
value: 1
|
|
1544
|
+
},
|
|
1545
|
+
["ACTIVE_EVENT_WITH_VENDOR_REGISTRATIONS" /* ACTIVE_EVENT_WITH_VENDOR_REGISTRATIONS */]: {
|
|
1546
|
+
description: "50 points for active event with vendor registrations (one-time reward)",
|
|
1547
|
+
value: 50
|
|
1387
1548
|
}
|
|
1388
1549
|
};
|
|
1389
1550
|
function createAffiliateReward(rewardType, createdAt) {
|
|
@@ -8709,73 +8870,6 @@ var otherImages = Object.fromEntries(
|
|
|
8709
8870
|
Object.entries(otherImagesFiles).map(([key, file]) => [key, `${PKG}/images/${file}`])
|
|
8710
8871
|
);
|
|
8711
8872
|
|
|
8712
|
-
// src/sharing/relationShareTypes.ts
|
|
8713
|
-
var RELATION_SHARE_INVITATION = "invitation";
|
|
8714
|
-
var RELATION_SHARE_APPLICATION = "application";
|
|
8715
|
-
var RELATION_OVERLAY_LAYOUT_VERSION = 36;
|
|
8716
|
-
var RELATION_SHARE_RESOURCE_TYPES = [
|
|
8717
|
-
RELATION_SHARE_INVITATION,
|
|
8718
|
-
RELATION_SHARE_APPLICATION
|
|
8719
|
-
];
|
|
8720
|
-
function isRelationShareResourceType(resourceType) {
|
|
8721
|
-
return RELATION_SHARE_RESOURCE_TYPES.includes(
|
|
8722
|
-
resourceType
|
|
8723
|
-
);
|
|
8724
|
-
}
|
|
8725
|
-
|
|
8726
|
-
// src/sharing/constants.ts
|
|
8727
|
-
var SOCIAL_IMAGE_WIDTH = 1200;
|
|
8728
|
-
var SOCIAL_IMAGE_HEIGHT = 630;
|
|
8729
|
-
var SHARE_SITE_URL = CLUEMART_MAIN_DOMAIN_URL;
|
|
8730
|
-
var SHARE_CALENDAR_ICON = "\u{1F4C5}";
|
|
8731
|
-
var SHARE_MARKET_DATES_SECTION_HEADING = `${SHARE_CALENDAR_ICON} Market dates:`;
|
|
8732
|
-
var SHARE_CHECKMARK_ICON = "\u2705";
|
|
8733
|
-
var SHARE_REQUIREMENTS_SECTION_HEADING = `${SHARE_CHECKMARK_ICON} Requirements:`;
|
|
8734
|
-
var SHARE_INFO_ICON = "\u2139\uFE0F";
|
|
8735
|
-
var SHARE_TAGS_SECTION_HEADING = `${SHARE_INFO_ICON} Tags:`;
|
|
8736
|
-
var SHARE_RAIN_OR_SHINE_LINE = "Rain or Shine";
|
|
8737
|
-
var SHARE_FOOD_TRUCK_LINE = "Food Truck";
|
|
8738
|
-
var SHARE_COMPLIANCE_PREFIX = `${SHARE_CHECKMARK_ICON} Compliance:`;
|
|
8739
|
-
var SHARE_CATEGORY_ICON = "\u{1F3F7}\uFE0F";
|
|
8740
|
-
var SHARE_CATEGORIES_SECTION_HEADING = `${SHARE_CATEGORY_ICON} Categories:`;
|
|
8741
|
-
var SHARE_RULER_ICON = "\u{1F4CF}";
|
|
8742
|
-
var SHARE_STALL_SIZE_PREFIX = `${SHARE_RULER_ICON} Stall size:`;
|
|
8743
|
-
var SHARE_DOLLAR_ICON = "$";
|
|
8744
|
-
var SHARE_PRICE_RANGE_PREFIX = `${SHARE_DOLLAR_ICON} Price range:`;
|
|
8745
|
-
var SHARE_CLOCK_ICON = "\u23F0";
|
|
8746
|
-
var SHARE_APPLICATION_DEADLINE_PREFIX = `${SHARE_CLOCK_ICON} Application deadline:`;
|
|
8747
|
-
var SHARE_MORE_INFO_LINE = "Shared from ClueMart";
|
|
8748
|
-
var DEFAULT_SHARE_OG_IMAGE = `${SHARE_SITE_URL}/assets/logo.webp`;
|
|
8749
|
-
var RESOURCE_SHARE_TYPES = [
|
|
8750
|
-
"market",
|
|
8751
|
-
"stallholder",
|
|
8752
|
-
"partner",
|
|
8753
|
-
"affiliate",
|
|
8754
|
-
"school"
|
|
8755
|
-
];
|
|
8756
|
-
var POST_SHARE_RESOURCE_TYPES = [
|
|
8757
|
-
"market_faces",
|
|
8758
|
-
"clue_bites",
|
|
8759
|
-
"play_and_win"
|
|
8760
|
-
];
|
|
8761
|
-
var SHARE_RESOURCE_LABEL = {
|
|
8762
|
-
[RELATION_SHARE_APPLICATION]: "Application",
|
|
8763
|
-
[RELATION_SHARE_INVITATION]: "Invitation",
|
|
8764
|
-
clue_bites: "Clue Bites",
|
|
8765
|
-
market_faces: "Market Faces",
|
|
8766
|
-
play_and_win: "Play & Win",
|
|
8767
|
-
market: "Market",
|
|
8768
|
-
partner: "Partner",
|
|
8769
|
-
stallholder: "Stallholder",
|
|
8770
|
-
affiliate: "Affiliate",
|
|
8771
|
-
school: "School"
|
|
8772
|
-
};
|
|
8773
|
-
function isPostShareResourceType(resourceType) {
|
|
8774
|
-
return POST_SHARE_RESOURCE_TYPES.includes(
|
|
8775
|
-
resourceType
|
|
8776
|
-
);
|
|
8777
|
-
}
|
|
8778
|
-
|
|
8779
8873
|
// src/sharing/formatCategoryLabel.ts
|
|
8780
8874
|
function formatCategoryLabel(category) {
|
|
8781
8875
|
const subcategoryNames = category.subcategories.map((subcategory) => subcategory.name).filter(Boolean);
|
|
@@ -8785,26 +8879,6 @@ function formatCategoryLabel(category) {
|
|
|
8785
8879
|
return `${category.name} (${subcategoryNames.join(", ")})`;
|
|
8786
8880
|
}
|
|
8787
8881
|
|
|
8788
|
-
// src/sharing/joinShareDescriptionSections.ts
|
|
8789
|
-
var SHARE_DESCRIPTION_SECTION_BREAK = "\n\n";
|
|
8790
|
-
var OG_DESCRIPTION_LINE_BREAK = " ";
|
|
8791
|
-
function joinShareOgDescriptionSections(sections) {
|
|
8792
|
-
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);
|
|
8793
|
-
}
|
|
8794
|
-
function joinShareDescriptionSections(sections) {
|
|
8795
|
-
return sections.filter((section) => Boolean(section)).join(SHARE_DESCRIPTION_SECTION_BREAK);
|
|
8796
|
-
}
|
|
8797
|
-
function appendShareMoreInfoLine(description) {
|
|
8798
|
-
const trimmed = description.trim();
|
|
8799
|
-
if (trimmed.startsWith(SHARE_MORE_INFO_LINE)) {
|
|
8800
|
-
return trimmed;
|
|
8801
|
-
}
|
|
8802
|
-
if (trimmed.length === 0) {
|
|
8803
|
-
return SHARE_MORE_INFO_LINE;
|
|
8804
|
-
}
|
|
8805
|
-
return joinShareDescriptionSections([SHARE_MORE_INFO_LINE, trimmed]);
|
|
8806
|
-
}
|
|
8807
|
-
|
|
8808
8882
|
// src/sharing/buildRelationShareDescription.ts
|
|
8809
8883
|
function formatShareMarketDate(dateStr) {
|
|
8810
8884
|
return formatDate(dateStr, "date");
|
|
@@ -8936,58 +9010,6 @@ function buildShareUrl(type, slug, utmMedium = "app") {
|
|
|
8936
9010
|
return `${SHARE_SITE_URL}/${type}/${encodeURIComponent(slug)}?utm_source=share&utm_medium=${utmMedium}&utm_campaign=${type}`;
|
|
8937
9011
|
}
|
|
8938
9012
|
|
|
8939
|
-
// src/sharing/normalizeShareDescription.ts
|
|
8940
|
-
var LEADING_WHITESPACE = /^[ \t]*/;
|
|
8941
|
-
function normalizeShareText(value) {
|
|
8942
|
-
if (value == null) {
|
|
8943
|
-
return "";
|
|
8944
|
-
}
|
|
8945
|
-
return value.trim().split("\n").map((line) => {
|
|
8946
|
-
const leading = LEADING_WHITESPACE.exec(line)?.[0] ?? "";
|
|
8947
|
-
const rest = line.slice(leading.length).trim().replace(/[ \t]{2,}/g, " ");
|
|
8948
|
-
return leading + rest;
|
|
8949
|
-
}).join("\n").replace(/\n{3,}/g, "\n\n");
|
|
8950
|
-
}
|
|
8951
|
-
function shareMessageFooterPlacementForType(_shareType) {
|
|
8952
|
-
return "before-body";
|
|
8953
|
-
}
|
|
8954
|
-
function buildShareMessageSections(input) {
|
|
8955
|
-
const title = normalizeShareText(input.title);
|
|
8956
|
-
const description = normalizeShareText(input.description);
|
|
8957
|
-
return [SHARE_MORE_INFO_LINE, title, description].filter(
|
|
8958
|
-
(section) => section.length > 0
|
|
8959
|
-
);
|
|
8960
|
-
}
|
|
8961
|
-
function splitShareDescriptionSections(value) {
|
|
8962
|
-
const trimmed = normalizeShareText(value);
|
|
8963
|
-
if (!trimmed) {
|
|
8964
|
-
return [];
|
|
8965
|
-
}
|
|
8966
|
-
if (/\n\n/.test(trimmed)) {
|
|
8967
|
-
return trimmed.split(/\n\n+/).map((section) => normalizeShareText(section)).filter((section) => section.length > 0);
|
|
8968
|
-
}
|
|
8969
|
-
if (/\n/.test(trimmed)) {
|
|
8970
|
-
return trimmed.split(/\n+/).map((section) => normalizeShareText(section)).filter((section) => section.length > 0);
|
|
8971
|
-
}
|
|
8972
|
-
return [trimmed];
|
|
8973
|
-
}
|
|
8974
|
-
function normalizeShareOgDescription(value) {
|
|
8975
|
-
return joinShareOgDescriptionSections(splitShareDescriptionSections(value));
|
|
8976
|
-
}
|
|
8977
|
-
function buildFacebookShareQuote(title, description, shareType) {
|
|
8978
|
-
const sections = buildShareMessageSections({ description, shareType, title });
|
|
8979
|
-
const quote = sections.join(SHARE_DESCRIPTION_SECTION_BREAK).trim();
|
|
8980
|
-
return quote.length > 0 ? quote : void 0;
|
|
8981
|
-
}
|
|
8982
|
-
function buildShareOgDescriptionFromSections(sections) {
|
|
8983
|
-
return joinShareOgDescriptionSections(sections);
|
|
8984
|
-
}
|
|
8985
|
-
function buildShareOgDescription(_title, description) {
|
|
8986
|
-
return joinShareOgDescriptionSections(
|
|
8987
|
-
splitShareDescriptionSections(description)
|
|
8988
|
-
);
|
|
8989
|
-
}
|
|
8990
|
-
|
|
8991
9013
|
// src/sharing/normalizeShareRouteId.ts
|
|
8992
9014
|
function normalizeShareRouteId(id) {
|
|
8993
9015
|
try {
|
|
@@ -9301,6 +9323,7 @@ var fonts = {
|
|
|
9301
9323
|
splitShareDescriptionSections,
|
|
9302
9324
|
stallTypeOptions,
|
|
9303
9325
|
statusOptions,
|
|
9326
|
+
stripOverlaySubtitleSpecialChars,
|
|
9304
9327
|
tagOptions,
|
|
9305
9328
|
timeFormat,
|
|
9306
9329
|
toCalendarIsoDate,
|