@flamingo-stack/openframe-frontend-core 0.0.672 → 0.0.673-2406.7239.1
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-YNGAJGYB.cjs → chunk-6LWIJJJ6.cjs} +410 -6
- package/dist/{chunk-3PVOF3IB.js.map → chunk-6LWIJJJ6.cjs.map} +1 -1
- package/dist/{chunk-XLJNYTUW.cjs → chunk-6YSDCC3J.cjs} +56 -55
- package/dist/chunk-6YSDCC3J.cjs.map +1 -0
- package/dist/{chunk-GV7R2NTS.cjs → chunk-76DQOFZG.cjs} +23 -23
- package/dist/{chunk-GV7R2NTS.cjs.map → chunk-76DQOFZG.cjs.map} +1 -1
- package/dist/{chunk-UUOBCUHW.cjs → chunk-7ALCRUZ3.cjs} +3 -3
- package/dist/{chunk-UUOBCUHW.cjs.map → chunk-7ALCRUZ3.cjs.map} +1 -1
- package/dist/{chunk-PWPYCJ33.js → chunk-7RQZ2FTF.js} +2 -2
- package/dist/{chunk-XDTU23P4.js → chunk-ALSCESHG.js} +2 -2
- package/dist/{chunk-HVEX4BSC.cjs → chunk-AUQ4UITE.cjs} +60 -45
- package/dist/chunk-AUQ4UITE.cjs.map +1 -0
- package/dist/{chunk-CBCETEB4.cjs → chunk-E6B34U5Q.cjs} +6 -6
- package/dist/{chunk-CBCETEB4.cjs.map → chunk-E6B34U5Q.cjs.map} +1 -1
- package/dist/{chunk-H54F476P.cjs → chunk-FK3VSQ35.cjs} +3 -3
- package/dist/{chunk-H54F476P.cjs.map → chunk-FK3VSQ35.cjs.map} +1 -1
- package/dist/{chunk-HOEVEB7N.cjs → chunk-GCOVKIE7.cjs} +40 -29
- package/dist/chunk-GCOVKIE7.cjs.map +1 -0
- package/dist/{chunk-42OVTTOM.js → chunk-GIYAUKCY.js} +18 -3
- package/dist/{chunk-42OVTTOM.js.map → chunk-GIYAUKCY.js.map} +1 -1
- package/dist/{chunk-TQPKNG2E.js → chunk-INVZNRWB.js} +3 -3
- package/dist/{chunk-ZRIVCLPR.js → chunk-JD5TKRCU.js} +1 -1
- package/dist/chunk-JD5TKRCU.js.map +1 -0
- package/dist/{chunk-IBGHJLNT.js → chunk-JF4ZQZZJ.js} +2 -2
- package/dist/{chunk-SNWAN52K.cjs → chunk-JJDPSYBV.cjs} +3 -3
- package/dist/{chunk-SNWAN52K.cjs.map → chunk-JJDPSYBV.cjs.map} +1 -1
- package/dist/{chunk-D55IENZJ.cjs → chunk-LCMT2GZK.cjs} +1 -1
- package/dist/chunk-LCMT2GZK.cjs.map +1 -0
- package/dist/{chunk-AL4I5HHB.js → chunk-MMDGSGVE.js} +4 -4
- package/dist/{chunk-O5PYXQ6H.js → chunk-N3Q4FMMB.js} +3 -3
- package/dist/{chunk-RD3I5PBB.cjs → chunk-NUVRMZW5.cjs} +15 -15
- package/dist/{chunk-RD3I5PBB.cjs.map → chunk-NUVRMZW5.cjs.map} +1 -1
- package/dist/{chunk-T3KXCOB2.js → chunk-OIE6GKS3.js} +2 -2
- package/dist/{chunk-TFSGYKWG.js → chunk-OZL6FSB2.js} +28 -17
- package/dist/chunk-OZL6FSB2.js.map +1 -0
- package/dist/{chunk-NETIHUEY.cjs → chunk-P2A3KAYW.cjs} +10 -10
- package/dist/{chunk-NETIHUEY.cjs.map → chunk-P2A3KAYW.cjs.map} +1 -1
- package/dist/{chunk-6S2KLT7O.js → chunk-Q4KRZOQR.js} +4 -4
- package/dist/{chunk-BODMICIH.cjs → chunk-S7W7MTBM.cjs} +40 -40
- package/dist/{chunk-BODMICIH.cjs.map → chunk-S7W7MTBM.cjs.map} +1 -1
- package/dist/{chunk-3PVOF3IB.js → chunk-SGK4Q2W2.js} +407 -3
- package/dist/chunk-SGK4Q2W2.js.map +1 -0
- package/dist/{chunk-VZRVQEMT.cjs → chunk-SYTDEWZJ.cjs} +7 -7
- package/dist/{chunk-VZRVQEMT.cjs.map → chunk-SYTDEWZJ.cjs.map} +1 -1
- package/dist/{chunk-Z6E45TJM.js → chunk-TDCIGINK.js} +5 -5
- package/dist/{chunk-UOQRNZIB.cjs → chunk-TQATQ4CX.cjs} +17 -17
- package/dist/{chunk-UOQRNZIB.cjs.map → chunk-TQATQ4CX.cjs.map} +1 -1
- package/dist/{chunk-PSL2WBEO.cjs → chunk-TT6O7BUZ.cjs} +33 -33
- package/dist/{chunk-PSL2WBEO.cjs.map → chunk-TT6O7BUZ.cjs.map} +1 -1
- package/dist/{chunk-JREG4T6K.cjs → chunk-U7BJC4WF.cjs} +3 -3
- package/dist/{chunk-JREG4T6K.cjs.map → chunk-U7BJC4WF.cjs.map} +1 -1
- package/dist/{chunk-EKABOXNB.js → chunk-UIKMPCHW.js} +2 -2
- package/dist/{chunk-7KM34VWL.js → chunk-XMJT3QZ2.js} +3 -3
- package/dist/{chunk-4AZWVS7F.js → chunk-XSOL5ISO.js} +7 -6
- package/dist/{chunk-4AZWVS7F.js.map → chunk-XSOL5ISO.js.map} +1 -1
- package/dist/{chunk-KSBDARII.js → chunk-Y2ASYQ3P.js} +5 -5
- package/dist/components/case-studies/index.cjs +17 -14
- package/dist/components/case-studies/index.cjs.map +1 -1
- package/dist/components/case-studies/index.js +8 -5
- package/dist/components/case-studies/index.js.map +1 -1
- package/dist/components/case-studies/share-experience-section.d.ts.map +1 -1
- package/dist/components/contact/contact-form.d.ts +7 -1
- package/dist/components/contact/contact-form.d.ts.map +1 -1
- package/dist/components/contact/index.cjs +5 -5
- package/dist/components/contact/index.js +4 -4
- package/dist/components/docs/index.cjs +8 -8
- package/dist/components/docs/index.js +7 -7
- package/dist/components/embeds/index.cjs +5 -5
- package/dist/components/embeds/index.js +4 -4
- package/dist/components/faq/index.cjs +5 -5
- package/dist/components/faq/index.js +4 -4
- package/dist/components/features/index.cjs +4 -4
- package/dist/components/features/index.js +3 -3
- package/dist/components/features/waitlist-form.d.ts +7 -2
- package/dist/components/features/waitlist-form.d.ts.map +1 -1
- package/dist/components/help-center-pages/index.cjs +54 -52
- package/dist/components/help-center-pages/index.cjs.map +1 -1
- package/dist/components/help-center-pages/index.js +17 -15
- package/dist/components/help-center-pages/index.js.map +1 -1
- package/dist/components/help-center-pages/trust-center-sections.d.ts.map +1 -1
- package/dist/components/index.cjs +35 -35
- package/dist/components/index.js +14 -14
- package/dist/components/meeting-scheduler/booking-form.d.ts +7 -1
- package/dist/components/meeting-scheduler/booking-form.d.ts.map +1 -1
- package/dist/components/meeting-scheduler/index.cjs +53 -31
- package/dist/components/meeting-scheduler/index.cjs.map +1 -1
- package/dist/components/meeting-scheduler/index.d.ts +5 -1
- package/dist/components/meeting-scheduler/index.d.ts.map +1 -1
- package/dist/components/meeting-scheduler/index.js +31 -9
- package/dist/components/meeting-scheduler/index.js.map +1 -1
- package/dist/components/navigation/index.cjs +7 -7
- package/dist/components/navigation/index.js +6 -6
- package/dist/components/onboarding-guides/index.cjs +7 -7
- package/dist/components/onboarding-guides/index.js +6 -6
- package/dist/components/tickets/help-center-create-form.d.ts.map +1 -1
- package/dist/components/tickets/index.cjs +8 -8
- package/dist/components/tickets/index.js +7 -7
- package/dist/components/ui/index.cjs +4 -4
- package/dist/components/ui/index.js +3 -3
- package/dist/contexts/endpoints-runtime-context.d.ts +5 -0
- package/dist/contexts/endpoints-runtime-context.d.ts.map +1 -1
- package/dist/contexts/index.cjs +2 -2
- package/dist/contexts/index.js +1 -1
- package/dist/hooks/index.cjs +9 -3
- package/dist/hooks/index.cjs.map +1 -1
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +8 -2
- package/dist/hooks/use-form-rescue.d.ts +43 -0
- package/dist/hooks/use-form-rescue.d.ts.map +1 -0
- package/dist/hooks/use-rescued-form.d.ts +28 -0
- package/dist/hooks/use-rescued-form.d.ts.map +1 -0
- package/dist/index.cjs +60 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +59 -7
- package/dist/index.js.map +1 -1
- package/dist/utils/form-rescue.cjs +142 -0
- package/dist/utils/form-rescue.cjs.map +1 -0
- package/dist/utils/form-rescue.d.ts +133 -0
- package/dist/utils/form-rescue.d.ts.map +1 -0
- package/dist/utils/form-rescue.js +118 -0
- package/dist/utils/form-rescue.js.map +1 -0
- package/dist/utils/index.cjs +138 -0
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +116 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +7 -1
- package/src/components/case-studies/share-experience-section.tsx +2 -0
- package/src/components/contact/contact-form.tsx +33 -12
- package/src/components/features/waitlist-form.tsx +27 -2
- package/src/components/help-center-pages/trust-center-sections.tsx +2 -0
- package/src/components/meeting-scheduler/booking-form.tsx +30 -2
- package/src/components/meeting-scheduler/index.tsx +10 -1
- package/src/components/tickets/help-center-create-form.tsx +2 -0
- package/src/contexts/endpoints-runtime-context.tsx +5 -0
- package/src/hooks/__tests__/use-form-rescue.test.tsx +189 -0
- package/src/hooks/__tests__/use-rescued-form.test.tsx +91 -0
- package/src/hooks/index.ts +4 -0
- package/src/hooks/use-form-rescue.ts +330 -0
- package/src/hooks/use-rescued-form.ts +71 -0
- package/src/utils/__tests__/form-rescue.test.ts +124 -0
- package/src/utils/form-rescue.ts +237 -0
- package/src/utils/index.ts +5 -0
- package/dist/chunk-D55IENZJ.cjs.map +0 -1
- package/dist/chunk-HOEVEB7N.cjs.map +0 -1
- package/dist/chunk-HVEX4BSC.cjs.map +0 -1
- package/dist/chunk-TFSGYKWG.js.map +0 -1
- package/dist/chunk-XLJNYTUW.cjs.map +0 -1
- package/dist/chunk-YNGAJGYB.cjs.map +0 -1
- package/dist/chunk-ZRIVCLPR.js.map +0 -1
- /package/dist/{chunk-PWPYCJ33.js.map → chunk-7RQZ2FTF.js.map} +0 -0
- /package/dist/{chunk-XDTU23P4.js.map → chunk-ALSCESHG.js.map} +0 -0
- /package/dist/{chunk-TQPKNG2E.js.map → chunk-INVZNRWB.js.map} +0 -0
- /package/dist/{chunk-IBGHJLNT.js.map → chunk-JF4ZQZZJ.js.map} +0 -0
- /package/dist/{chunk-AL4I5HHB.js.map → chunk-MMDGSGVE.js.map} +0 -0
- /package/dist/{chunk-O5PYXQ6H.js.map → chunk-N3Q4FMMB.js.map} +0 -0
- /package/dist/{chunk-T3KXCOB2.js.map → chunk-OIE6GKS3.js.map} +0 -0
- /package/dist/{chunk-6S2KLT7O.js.map → chunk-Q4KRZOQR.js.map} +0 -0
- /package/dist/{chunk-Z6E45TJM.js.map → chunk-TDCIGINK.js.map} +0 -0
- /package/dist/{chunk-EKABOXNB.js.map → chunk-UIKMPCHW.js.map} +0 -0
- /package/dist/{chunk-7KM34VWL.js.map → chunk-XMJT3QZ2.js.map} +0 -0
- /package/dist/{chunk-KSBDARII.js.map → chunk-Y2ASYQ3P.js.map} +0 -0
package/dist/utils/index.cjs
CHANGED
|
@@ -5300,6 +5300,121 @@ function evaluateHumanitySignals(body, opts) {
|
|
|
5300
5300
|
}
|
|
5301
5301
|
var splitCsvEnv = (s) => s?.split(",").map((t) => t.trim()).filter(Boolean) ?? [];
|
|
5302
5302
|
|
|
5303
|
+
// src/utils/form-rescue.ts
|
|
5304
|
+
var FORM_ID_PATTERN = /^[a-z][a-z0-9_]{1,47}$/;
|
|
5305
|
+
var definitions = /* @__PURE__ */ new Map();
|
|
5306
|
+
function defineRescueForm(definition) {
|
|
5307
|
+
if (!FORM_ID_PATTERN.test(definition.id)) throw new Error(`[form-rescue] invalid form id "${definition.id}"`);
|
|
5308
|
+
const existing = definitions.get(definition.id);
|
|
5309
|
+
if (existing) {
|
|
5310
|
+
if (existing.label !== definition.label) {
|
|
5311
|
+
throw new Error(`[form-rescue] form id "${definition.id}" is already defined as "${existing.label}"`);
|
|
5312
|
+
}
|
|
5313
|
+
return existing;
|
|
5314
|
+
}
|
|
5315
|
+
const frozen = Object.freeze({ id: definition.id, label: definition.label });
|
|
5316
|
+
definitions.set(frozen.id, frozen);
|
|
5317
|
+
return frozen;
|
|
5318
|
+
}
|
|
5319
|
+
function getRescueForm(id) {
|
|
5320
|
+
return typeof id === "string" ? definitions.get(id) ?? null : null;
|
|
5321
|
+
}
|
|
5322
|
+
function listRescueForms() {
|
|
5323
|
+
return [...definitions.values()];
|
|
5324
|
+
}
|
|
5325
|
+
var RESCUE_FORMS = {
|
|
5326
|
+
contact: defineRescueForm({ id: "contact", label: "Contact form" }),
|
|
5327
|
+
caseStudyPitch: defineRescueForm({ id: "case_study_pitch", label: "Case study pitch" }),
|
|
5328
|
+
dataRoomRequest: defineRescueForm({ id: "data_room_request", label: "Data room request" }),
|
|
5329
|
+
trustCenterRequest: defineRescueForm({ id: "trust_center_request", label: "Trust Center document request" }),
|
|
5330
|
+
meetingBooking: defineRescueForm({ id: "meeting_booking", label: "Meeting booking" }),
|
|
5331
|
+
waitlist: defineRescueForm({ id: "waitlist", label: "Waitlist" })
|
|
5332
|
+
};
|
|
5333
|
+
var FORM_RESCUE_VALUE_FIELDS = [
|
|
5334
|
+
"email",
|
|
5335
|
+
"name",
|
|
5336
|
+
"firstName",
|
|
5337
|
+
"lastName",
|
|
5338
|
+
"company",
|
|
5339
|
+
"jobtitle",
|
|
5340
|
+
"companySize",
|
|
5341
|
+
"linkedin_url"
|
|
5342
|
+
];
|
|
5343
|
+
var EXCLUDED_FIELD_PATTERN = /pass(word|code)?|card|cvv|cvc|ssn|social.?security|iban|bank|routing|token|secret|otp|pin$/i;
|
|
5344
|
+
function isExcludedRescueField(name) {
|
|
5345
|
+
return EXCLUDED_FIELD_PATTERN.test(name);
|
|
5346
|
+
}
|
|
5347
|
+
var FORM_RESCUE_MAX_VALUE_CHARS = 200;
|
|
5348
|
+
var FORM_RESCUE_DEBOUNCE_MS = 1500;
|
|
5349
|
+
var FORM_RESCUE_MAX_FIELDS = 40;
|
|
5350
|
+
var FORM_RESCUE_ATTEMPT_FIELD = "form_attempt_id";
|
|
5351
|
+
var FORM_RESCUE_RESUME_FIELD = "form_resume_token";
|
|
5352
|
+
var FORM_RESCUE_SUBMIT_KEYS = [FORM_RESCUE_ATTEMPT_FIELD, FORM_RESCUE_RESUME_FIELD];
|
|
5353
|
+
var FORM_RESCUE_RESUME_PARAM = "resume";
|
|
5354
|
+
var FORM_DRAFT_STATUSES = ["started", "rescuable", "rescued", "submitted"];
|
|
5355
|
+
var FORM_RESCUE_SKIP_REASONS = {
|
|
5356
|
+
finishedElsewhere: "finished_elsewhere",
|
|
5357
|
+
alreadyRescued: "already_rescued",
|
|
5358
|
+
internal: "internal_email"
|
|
5359
|
+
};
|
|
5360
|
+
var EMAIL_PATTERN = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/;
|
|
5361
|
+
function isRescueEmail(value) {
|
|
5362
|
+
return typeof value === "string" && value.length <= FORM_RESCUE_MAX_VALUE_CHARS && EMAIL_PATTERN.test(value.trim());
|
|
5363
|
+
}
|
|
5364
|
+
var UUID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
5365
|
+
function isFormAttemptId(value) {
|
|
5366
|
+
return typeof value === "string" && UUID_PATTERN.test(value);
|
|
5367
|
+
}
|
|
5368
|
+
function isFilled(value) {
|
|
5369
|
+
if (value == null) return false;
|
|
5370
|
+
if (typeof value === "string") return value.trim().length > 0;
|
|
5371
|
+
if (typeof value === "boolean") return value;
|
|
5372
|
+
if (Array.isArray(value)) return value.length > 0;
|
|
5373
|
+
if (typeof value === "object") return Object.values(value).some(isFilled);
|
|
5374
|
+
return true;
|
|
5375
|
+
}
|
|
5376
|
+
function sanitizeRescueValues(values) {
|
|
5377
|
+
const out = {};
|
|
5378
|
+
if (!values || typeof values !== "object") return out;
|
|
5379
|
+
for (const key of FORM_RESCUE_VALUE_FIELDS) {
|
|
5380
|
+
if (isExcludedRescueField(key)) continue;
|
|
5381
|
+
const raw = values[key];
|
|
5382
|
+
if (typeof raw !== "string") continue;
|
|
5383
|
+
const trimmed = raw.trim().slice(0, FORM_RESCUE_MAX_VALUE_CHARS);
|
|
5384
|
+
if (trimmed) out[key] = trimmed;
|
|
5385
|
+
}
|
|
5386
|
+
return out;
|
|
5387
|
+
}
|
|
5388
|
+
function filledRescueFields(values, fieldNames) {
|
|
5389
|
+
return fieldNames.filter((name) => !isExcludedRescueField(name) && isFilled(values[name])).slice(0, FORM_RESCUE_MAX_FIELDS);
|
|
5390
|
+
}
|
|
5391
|
+
function rescueCompletionPct(filledCount, totalCount) {
|
|
5392
|
+
if (totalCount <= 0) return 0;
|
|
5393
|
+
return Math.max(0, Math.min(100, Math.round(filledCount / totalCount * 100)));
|
|
5394
|
+
}
|
|
5395
|
+
function sanitizeRescueFieldName(value) {
|
|
5396
|
+
if (typeof value !== "string") return null;
|
|
5397
|
+
const trimmed = value.trim();
|
|
5398
|
+
return /^[A-Za-z0-9_.-]{1,64}$/.test(trimmed) && !isExcludedRescueField(trimmed) ? trimmed : null;
|
|
5399
|
+
}
|
|
5400
|
+
var FORM_RESCUE_EVENTS = {
|
|
5401
|
+
started: "form_started",
|
|
5402
|
+
progress: "form_progress",
|
|
5403
|
+
leadCaptured: "form_lead_captured",
|
|
5404
|
+
abandoned: "form_abandoned",
|
|
5405
|
+
submitted: "form_submitted",
|
|
5406
|
+
rescued: "form_rescued",
|
|
5407
|
+
resumed: "form_resumed"
|
|
5408
|
+
};
|
|
5409
|
+
function captureFormRescueEvent(event, properties) {
|
|
5410
|
+
try {
|
|
5411
|
+
if (typeof window === "undefined") return;
|
|
5412
|
+
const ph = window.posthog;
|
|
5413
|
+
if (typeof ph?.capture === "function") ph.capture(event, properties);
|
|
5414
|
+
} catch {
|
|
5415
|
+
}
|
|
5416
|
+
}
|
|
5417
|
+
|
|
5303
5418
|
// src/utils/doc-tree-nav.ts
|
|
5304
5419
|
var DEFAULT_FOLDER_INDEX_FILE = "README.md";
|
|
5305
5420
|
var DEFAULT_FOLDER_INDEX = DEFAULT_FOLDER_INDEX_FILE;
|
|
@@ -6032,6 +6147,17 @@ exports.DEV_SECTION_PARAM_KEYS = DEV_SECTION_PARAM_KEYS;
|
|
|
6032
6147
|
exports.DOC_TABLE_TYPES = DOC_TABLE_TYPES;
|
|
6033
6148
|
exports.ELAPSED_MS_FIELD = ELAPSED_MS_FIELD;
|
|
6034
6149
|
exports.FIRST_TOUCH_ATTRIBUTION_KEY = FIRST_TOUCH_ATTRIBUTION_KEY;
|
|
6150
|
+
exports.FORM_DRAFT_STATUSES = FORM_DRAFT_STATUSES;
|
|
6151
|
+
exports.FORM_RESCUE_ATTEMPT_FIELD = FORM_RESCUE_ATTEMPT_FIELD;
|
|
6152
|
+
exports.FORM_RESCUE_DEBOUNCE_MS = FORM_RESCUE_DEBOUNCE_MS;
|
|
6153
|
+
exports.FORM_RESCUE_EVENTS = FORM_RESCUE_EVENTS;
|
|
6154
|
+
exports.FORM_RESCUE_MAX_FIELDS = FORM_RESCUE_MAX_FIELDS;
|
|
6155
|
+
exports.FORM_RESCUE_MAX_VALUE_CHARS = FORM_RESCUE_MAX_VALUE_CHARS;
|
|
6156
|
+
exports.FORM_RESCUE_RESUME_FIELD = FORM_RESCUE_RESUME_FIELD;
|
|
6157
|
+
exports.FORM_RESCUE_RESUME_PARAM = FORM_RESCUE_RESUME_PARAM;
|
|
6158
|
+
exports.FORM_RESCUE_SKIP_REASONS = FORM_RESCUE_SKIP_REASONS;
|
|
6159
|
+
exports.FORM_RESCUE_SUBMIT_KEYS = FORM_RESCUE_SUBMIT_KEYS;
|
|
6160
|
+
exports.FORM_RESCUE_VALUE_FIELDS = FORM_RESCUE_VALUE_FIELDS;
|
|
6035
6161
|
exports.FullscreenSwitchController = FullscreenSwitchController;
|
|
6036
6162
|
exports.GENERIC_EMAIL_DOMAINS = GENERIC_EMAIL_DOMAINS;
|
|
6037
6163
|
exports.HEADING_EMOJI_RE = HEADING_EMOJI_RE;
|
|
@@ -6057,6 +6183,7 @@ exports.PLATFORM_SURFACE = PLATFORM_SURFACE;
|
|
|
6057
6183
|
exports.PLATFORM_THEME = PLATFORM_THEME;
|
|
6058
6184
|
exports.PLAY_ICON_PATH = PLAY_ICON_PATH;
|
|
6059
6185
|
exports.PROGRAM_META_RENDERERS = PROGRAM_META_RENDERERS;
|
|
6186
|
+
exports.RESCUE_FORMS = RESCUE_FORMS;
|
|
6060
6187
|
exports.ROADMAP_STATUS_OPTIONS = ROADMAP_STATUS_OPTIONS;
|
|
6061
6188
|
exports.SCHEDULING_SLUG_SHAPE = SCHEDULING_SLUG_SHAPE;
|
|
6062
6189
|
exports.SCROLL_ANCHOR = SCROLL_ANCHOR;
|
|
@@ -6091,6 +6218,7 @@ exports.buildSuggestionUrl = buildSuggestionUrl;
|
|
|
6091
6218
|
exports.buildTicketOpenHref = buildTicketOpenHref;
|
|
6092
6219
|
exports.canonicalContentRefType = canonicalContentRefType;
|
|
6093
6220
|
exports.captureFirstTouchAttribution = captureFirstTouchAttribution;
|
|
6221
|
+
exports.captureFormRescueEvent = captureFormRescueEvent;
|
|
6094
6222
|
exports.clamp = clamp;
|
|
6095
6223
|
exports.clampPageToTotal = clampPageToTotal;
|
|
6096
6224
|
exports.classifySocialHost = classifySocialHost;
|
|
@@ -6113,6 +6241,7 @@ exports.createUTCTimestamp = createUTCTimestamp;
|
|
|
6113
6241
|
exports.csvEscape = csvEscape;
|
|
6114
6242
|
exports.deepClone = deepClone;
|
|
6115
6243
|
exports.defineParamSchema = defineParamSchema;
|
|
6244
|
+
exports.defineRescueForm = defineRescueForm;
|
|
6116
6245
|
exports.delay = delay;
|
|
6117
6246
|
exports.deriveActiveColor = deriveActiveColor;
|
|
6118
6247
|
exports.deriveHoverColor = deriveHoverColor;
|
|
@@ -6138,6 +6267,7 @@ exports.extractSections = extractSections;
|
|
|
6138
6267
|
exports.faqItemAnchor = faqItemAnchor;
|
|
6139
6268
|
exports.faqSectionSlug = faqSectionSlug;
|
|
6140
6269
|
exports.fetchPriorityProp = fetchPriorityProp;
|
|
6270
|
+
exports.filledRescueFields = filledRescueFields;
|
|
6141
6271
|
exports.findAnchorElementByNormalizedId = findAnchorElementByNormalizedId;
|
|
6142
6272
|
exports.findDocNodeByPath = findDocNodeByPath;
|
|
6143
6273
|
exports.findHoneypotCopySource = findHoneypotCopySource;
|
|
@@ -6246,6 +6376,7 @@ exports.getPlatformUrl = getPlatformUrl;
|
|
|
6246
6376
|
exports.getProxiedImageUrl = getProxiedImageUrl;
|
|
6247
6377
|
exports.getReadableTextColor = getReadableTextColor;
|
|
6248
6378
|
exports.getRequestOrigin = getRequestOrigin;
|
|
6379
|
+
exports.getRescueForm = getRescueForm;
|
|
6249
6380
|
exports.getSemanticColor = getSemanticColor;
|
|
6250
6381
|
exports.getShellIcon = getShellIcon;
|
|
6251
6382
|
exports.getShellLabel = getShellLabel;
|
|
@@ -6268,7 +6399,9 @@ exports.isBadgePaletteKey = isBadgePaletteKey;
|
|
|
6268
6399
|
exports.isBlankLine = isBlankLine;
|
|
6269
6400
|
exports.isCrossOriginUrl = isCrossOriginUrl;
|
|
6270
6401
|
exports.isDismissedCookieValue = isDismissedCookieValue;
|
|
6402
|
+
exports.isExcludedRescueField = isExcludedRescueField;
|
|
6271
6403
|
exports.isFigmaSlidesUrl = isFigmaSlidesUrl;
|
|
6404
|
+
exports.isFormAttemptId = isFormAttemptId;
|
|
6272
6405
|
exports.isGenericDomain = isGenericDomain;
|
|
6273
6406
|
exports.isGenericWebsiteDomain = isGenericWebsiteDomain;
|
|
6274
6407
|
exports.isHumanitySignalKey = isHumanitySignalKey;
|
|
@@ -6278,6 +6411,7 @@ exports.isLocalUrl = isLocalUrl;
|
|
|
6278
6411
|
exports.isOSPlatform = isOSPlatform;
|
|
6279
6412
|
exports.isOrderedRange = isOrderedRange;
|
|
6280
6413
|
exports.isPublishableMediaType = isPublishableMediaType;
|
|
6414
|
+
exports.isRescueEmail = isRescueEmail;
|
|
6281
6415
|
exports.isToday = isToday;
|
|
6282
6416
|
exports.isValidEmailDomain = isValidEmailDomain;
|
|
6283
6417
|
exports.isValidSchedulingSlug = isValidSchedulingSlug;
|
|
@@ -6285,6 +6419,7 @@ exports.isValidToolType = isValidToolType;
|
|
|
6285
6419
|
exports.isVideoMedia = isVideoMedia;
|
|
6286
6420
|
exports.isWalkthroughDismissed = isWalkthroughDismissed;
|
|
6287
6421
|
exports.isWithinMinutes = isWithinMinutes;
|
|
6422
|
+
exports.listRescueForms = listRescueForms;
|
|
6288
6423
|
exports.makeComposeContentUrl = makeComposeContentUrl;
|
|
6289
6424
|
exports.markdownToPlainText = markdownToPlainText;
|
|
6290
6425
|
exports.matchBiteElement = matchBiteElement;
|
|
@@ -6337,11 +6472,14 @@ exports.readDismissCookie = readDismissCookie;
|
|
|
6337
6472
|
exports.readLeadingDecisionFrame = readLeadingDecisionFrame;
|
|
6338
6473
|
exports.recordCountLabel = recordCountLabel;
|
|
6339
6474
|
exports.releaseTypeToBadgeColor = releaseTypeToBadgeColor;
|
|
6475
|
+
exports.rescueCompletionPct = rescueCompletionPct;
|
|
6340
6476
|
exports.resolveContentFetchPath = resolveContentFetchPath;
|
|
6341
6477
|
exports.resolveRedirectTarget = resolveRedirectTarget;
|
|
6342
6478
|
exports.resolveReleaseCover = resolveReleaseCover;
|
|
6343
6479
|
exports.rgbToHex = rgbToHex;
|
|
6344
6480
|
exports.sanitizeLandingUrl = sanitizeLandingUrl;
|
|
6481
|
+
exports.sanitizeRescueFieldName = sanitizeRescueFieldName;
|
|
6482
|
+
exports.sanitizeRescueValues = sanitizeRescueValues;
|
|
6345
6483
|
exports.sanitizeTitleForChat = sanitizeTitleForChat;
|
|
6346
6484
|
exports.scanHeadings = scanHeadings;
|
|
6347
6485
|
exports.schedulingAudienceKey = schedulingAudienceKey;
|