@tellescope/utilities 1.255.19 → 1.256.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/lib/cjs/utils.d.ts +62 -0
- package/lib/cjs/utils.d.ts.map +1 -1
- package/lib/cjs/utils.js +164 -4
- package/lib/cjs/utils.js.map +1 -1
- package/lib/esm/utils.d.ts +62 -0
- package/lib/esm/utils.d.ts.map +1 -1
- package/lib/esm/utils.js +160 -1
- package/lib/esm/utils.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/src/utils.ts +176 -1
package/lib/cjs/utils.d.ts
CHANGED
|
@@ -204,6 +204,58 @@ export declare const sanitize_html_for_cms: (html: string) => string;
|
|
|
204
204
|
* for that surface rather than loosening this shared function.
|
|
205
205
|
*/
|
|
206
206
|
export declare const sanitize_user_html: (html: string) => string;
|
|
207
|
+
/**
|
|
208
|
+
* Sandbox forced onto an `<iframe>` by {@link sanitize_user_html_with_iframes} when its author did
|
|
209
|
+
* not supply one.
|
|
210
|
+
*
|
|
211
|
+
* `allow-same-origin` is required in practice: without it the frame gets an opaque origin, where
|
|
212
|
+
* `localStorage` access throws and the embed's own CSP `'self'` matches nothing. Real embeds break —
|
|
213
|
+
* a Loom embed renders as a blank box, verified in Chrome. Since the sanitizer requires an absolute
|
|
214
|
+
* cross-origin `https` src, granting it gives the frame nothing an unsandboxed frame wouldn't have.
|
|
215
|
+
*
|
|
216
|
+
* What is deliberately withheld matters more than what is granted. Above all `allow-top-navigation`:
|
|
217
|
+
* a hostile embed cannot navigate the patient's page elsewhere. Also withheld: `allow-downloads`,
|
|
218
|
+
* `allow-modals`, `allow-pointer-lock`, `allow-orientation-lock`, `allow-top-navigation-by-user-activation`.
|
|
219
|
+
*/
|
|
220
|
+
export declare const DEFAULT_IFRAME_SANDBOX = "allow-scripts allow-same-origin allow-forms allow-popups allow-popups-to-escape-sandbox allow-presentation";
|
|
221
|
+
/**
|
|
222
|
+
* Same as {@link sanitize_user_html}, but additionally permits `<iframe>` so authored content can
|
|
223
|
+
* embed video, scheduling widgets, etc. `sanitize_user_html` remains the default — only reach for
|
|
224
|
+
* this variant on a surface that specifically needs framing.
|
|
225
|
+
*
|
|
226
|
+
* Preconditions for any new caller:
|
|
227
|
+
* - **Admin/staff-authored HTML only.** Never use this for patient-authored content (form answers
|
|
228
|
+
* where `answerIsHTML`, chat messages, community posts) or for inbound email.
|
|
229
|
+
* - **Any patient-derived substring templated into the HTML must be entity-escaped first** — see
|
|
230
|
+
* `escapeHTMLValues` on {@link replace_form_field_template_values}. Otherwise "admin-authored"
|
|
231
|
+
* isn't actually true and a patient can inject a frame into an admin's description.
|
|
232
|
+
*
|
|
233
|
+
* How the frame is contained — the two controls work together, do not weaken either alone:
|
|
234
|
+
*
|
|
235
|
+
* 1. `src` must be an absolute `https://host` URL. Relative, protocol-relative (`//host`),
|
|
236
|
+
* `javascript:`, `data:` and `srcdoc` frames are dropped, so the frame is always cross-origin
|
|
237
|
+
* and the same-origin policy alone already prevents it from touching this document. Note that
|
|
238
|
+
* sanitize-html does NOT reject protocol-relative iframe srcs on its own when
|
|
239
|
+
* `allowProtocolRelative` is set, so that check lives in `transformTags` below.
|
|
240
|
+
* 2. {@link DEFAULT_IFRAME_SANDBOX} is forced when the author supplied none. Critically it withholds
|
|
241
|
+
* `allow-top-navigation`, so a hostile or compromised embed cannot redirect the patient's page to
|
|
242
|
+
* a phishing site — the realistic threat for an embed in a patient-facing form. It also withholds
|
|
243
|
+
* downloads, modals, pointer-lock, plugins and orientation-lock. It is therefore strictly more
|
|
244
|
+
* restrictive than rendering the same cross-origin iframe with no sandbox at all.
|
|
245
|
+
*
|
|
246
|
+
* It DOES grant `allow-same-origin`, which for a cross-origin `src` grants nothing a normal
|
|
247
|
+
* unsandboxed frame wouldn't already have (its own origin, its own storage) — see
|
|
248
|
+
* DEFAULT_IFRAME_SANDBOX for why that is necessary in practice. `allow-same-origin` would only be
|
|
249
|
+
* dangerous for a *same-origin* `src`, since such a frame could script this document; control 1 is
|
|
250
|
+
* what rules that out, which is why the src check must not be relaxed.
|
|
251
|
+
*
|
|
252
|
+
* An author-supplied `sandbox` is honored verbatim as an escape hatch (including `sandbox=""`, the
|
|
253
|
+
* most restrictive value), so a surface can tighten or loosen per embed.
|
|
254
|
+
*
|
|
255
|
+
* Current callers: the live form's field description (`Forms/forms.tsx`, `Forms/forms.v2.tsx`).
|
|
256
|
+
* The read-only submitted-response views intentionally stay on `sanitize_user_html`.
|
|
257
|
+
*/
|
|
258
|
+
export declare const sanitize_user_html_with_iframes: (html: string) => string;
|
|
207
259
|
export declare const query_string_for_object: (query: Indexable) => string;
|
|
208
260
|
export declare const PROD_API_URL = "https://api.tellescope.com";
|
|
209
261
|
export declare const STAGING_API_URL = "https://staging-api.tellescope.com";
|
|
@@ -363,6 +415,16 @@ export declare const replace_form_field_template_values: (s: string, options: {
|
|
|
363
415
|
enduser?: Partial<Enduser> | undefined;
|
|
364
416
|
responses?: FormResponseValue[] | undefined;
|
|
365
417
|
escapeNewlinesAsHTMLBreaks?: boolean | undefined;
|
|
418
|
+
/**
|
|
419
|
+
* Entity-escape the substituted `{{enduser.*}}` values. Set this whenever the result is
|
|
420
|
+
* rendered through a sanitizer that permits iframes ({@link sanitize_user_html_with_iframes}):
|
|
421
|
+
* these values come from the patient's own intake answers / enduser record, so without escaping
|
|
422
|
+
* a patient could inject a frame into an otherwise admin-authored description.
|
|
423
|
+
*
|
|
424
|
+
* Off by default because most callers substitute into plain text rendered by React (which
|
|
425
|
+
* escapes already), where escaping here would corrupt the output — e.g. a name containing `&`.
|
|
426
|
+
*/
|
|
427
|
+
escapeHTMLValues?: boolean | undefined;
|
|
366
428
|
}) => string;
|
|
367
429
|
export declare const replace_sms_template_values: (s: string, sms?: Omit<SMSMessage, 'id'> | null) => string;
|
|
368
430
|
export declare const get_secret_names: (s: string) => string[];
|
package/lib/cjs/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/utils.js
CHANGED
|
@@ -49,9 +49,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
49
49
|
};
|
|
50
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
51
|
exports.fullMonth_day_year = exports.calculate_date_difference_for_set_fields = exports.calculate_days_between_dates_from_enduser = exports.resolve_date_value = exports.calculate_days_between_dates = exports.parse_date_string = exports.mm_dd_yyyy = exports.yyyy_mm_dd_numeric = exports.yyyy_mm_dd = exports.formatted_date_hh_mm = exports.get_add_to_gcal_link = exports.formatted_date = exports.get_time_values = exports.MONTHS = exports.MONTHS_FULL = exports.sorted_records = exports.wait = exports.findFirstUnansweredField = exports.throwFunction = exports.ensure_https_url = exports.to_absolute_url = exports.build_portal_link_string = exports.build_content_link_string = exports.build_file_link_string = exports.build_form_group_link_string = exports.build_form_link_string = exports.build_link_string = exports.getTemplatedData = exports.parse_link_template = exports.map_object = exports.format_stripe_subscription_interval = exports.truncate_string = exports.defined_fields = exports.user_is_active = exports.user_display_name = exports.objects_equivalent = exports.to_object_id = exports.url_safe_path = exports.is_whitespace = exports.matching_fields = exports.is_object = exports.filter_object = exports.is_defined = exports.is_truthy = exports.object_is_empty = exports.first_letter_lowercase = exports.first_letter_capitalized = exports.user_is_locked_out = exports.user_is_admin = exports.ObjectId = void 0;
|
|
52
|
-
exports.
|
|
53
|
-
exports.
|
|
54
|
-
exports.constructT2BaseURL = exports.formatDuration = exports.calculateTimeTrackDuration = exports.validate_custom_field_references = exports.slot_violates_calendar_event_limits = exports.replace_form_response_template_values = exports.resolve_integration_id = exports.replace_snippet_template_values = exports.get_snippet_keys = exports.emit_gtm_event = exports.get_care_team_primary = exports.is_checkbox_custom_field_value = exports.enrich_doxy_url = exports.to_human_readable_phone_number = exports.get_canvas_id = exports.should_show_unsubmitted_form_response_for_interval = exports.enduser_insurance_string = exports.enduser_address_string = exports.is_timezone = exports.downloadFile = exports.get_prepopulated_responses = exports.INVALID_PREPOPULATION_TYPES = void 0;
|
|
52
|
+
exports.get_recent_engagement_date = exports.MM_DD_YYYY_to_YYYY_MM_DD = exports.YYYY_MM_DD_to_MM_DD_YYYY = exports.getLocalTimezone = exports.string_matches_key_or_value = exports.evaluate_conditional_logic_for_enduser_fields = exports.UPCOMING_EVENT_COUNT_KEY = exports.get_enduser_field_value_for_key = exports.age_for_dob_mmddyyyy = exports.replace_keys_and_values_in_object = exports.get_conditional_logic_values = exports.evaluate_conditional_logic_for_medication_title = exports.evaluate_string_field_comparison = exports.evaluate_conditional_logic = exports.shuffle_array_in_place = exports.plaintext_for_managed_content_record = exports.sanitize_html = exports.timezone_for_enduser = exports.safeJSONParse = exports.payment_cost_to_string = exports.read_local_storage = exports.update_local_storage = exports.is_organization_owner = exports.form_response_value_to_string = exports.is_table_input_response = exports.user_has_record_access = exports.is_suborganization = exports.matches_organization = exports.getDefaultPortalURL = exports.getPublicFileURL = exports.getOrgnizationFaviconURL = exports.getOrgnizationLogoURL = exports.getBuiltInPublicFileName = exports.getGoogleClientAPIKey = exports.getGoogleClientId = exports.getApiURL = exports.getEnvironment = exports.TEST_API_URL = exports.STAGING_API_URL = exports.PROD_API_URL = exports.query_string_for_object = exports.sanitize_user_html_with_iframes = exports.DEFAULT_IFRAME_SANDBOX = exports.sanitize_user_html = exports.sanitize_html_for_cms = exports.sanitize_html_with_links = exports.remove_image_tags = exports.remove_style_tags = exports.remove_script_tags = exports.time_for_calendar_event = void 0;
|
|
53
|
+
exports.get_flattened_fields = exports.skip_due_date_as_needed = exports.is_full_iso_string_heuristic = exports.display_time_for_seconds = exports.replace_enduser_template_values = exports.replace_secret_values = exports.get_secret_names = exports.replace_sms_template_values = exports.replace_form_field_template_values = exports.replace_order_template_values = exports.replace_medication_template_values = exports.replace_calendar_event_template_values = exports.replace_purchase_template_values = exports.replace_tag_template_values_for_enduser = exports.append_current_utm_params = exports.get_utm_params = exports.is_out_of_office = exports.color_for_classification = exports.classification_for_vital = exports.SMS_UNSUBSCRIBE_KEYWORDS = exports.satisfies_vital_comparison = exports.field_can_autosubmit = exports.field_can_autoadvance = exports.decodeJWT = exports.validate_organization_for_develop_health = exports.validate_user_for_develop_health = exports.validate_enduser_for_develop_health = exports.validate_enduser_for_script_sure = exports.validate_enduser_for_dose_spot = exports.validate_enduser_for_smart_meter = exports.validate_enduser_for_gogo = exports.json_error_string = exports.validate_enduser_for_candid = exports.validate_provider_for_candid = exports.validate_organization_for_candid = exports.validate_insurance_for_eligibility = exports.weighted_round_robin = exports.responses_satisfy_conditions = exports.calculate_bmi_from_responses = exports.calculate_bmi = exports.FORM_LOGIC_URL_PARAMETER = exports.FORM_LOGIC_CALCULATED_FIELDS = exports.calculate_form_scoring = exports.batch_array = exports.capture_is_supported = exports.get_next_reminder_timestamp = exports.mfa_is_enabled = exports.decode_email_for_display = exports.URIDecodeEmail = exports.get_recent_outbound_communication_date = void 0;
|
|
54
|
+
exports.constructT2BaseURL = exports.formatDuration = exports.calculateTimeTrackDuration = exports.validate_custom_field_references = exports.slot_violates_calendar_event_limits = exports.replace_form_response_template_values = exports.resolve_integration_id = exports.replace_snippet_template_values = exports.get_snippet_keys = exports.emit_gtm_event = exports.get_care_team_primary = exports.is_checkbox_custom_field_value = exports.enrich_doxy_url = exports.to_human_readable_phone_number = exports.get_canvas_id = exports.should_show_unsubmitted_form_response_for_interval = exports.enduser_insurance_string = exports.enduser_address_string = exports.is_timezone = exports.downloadFile = exports.get_prepopulated_responses = exports.INVALID_PREPOPULATION_TYPES = exports.add_value_for_dotted_key = exports.value_for_dotted_key = void 0;
|
|
55
55
|
var types_models_1 = require("@tellescope/types-models");
|
|
56
56
|
var constants_1 = require("@tellescope/constants");
|
|
57
57
|
var sanitize_html_1 = __importDefault(require("sanitize-html"));
|
|
@@ -832,6 +832,154 @@ var sanitize_user_html = function (html) {
|
|
|
832
832
|
});
|
|
833
833
|
};
|
|
834
834
|
exports.sanitize_user_html = sanitize_user_html;
|
|
835
|
+
/**
|
|
836
|
+
* Sandbox forced onto an `<iframe>` by {@link sanitize_user_html_with_iframes} when its author did
|
|
837
|
+
* not supply one.
|
|
838
|
+
*
|
|
839
|
+
* `allow-same-origin` is required in practice: without it the frame gets an opaque origin, where
|
|
840
|
+
* `localStorage` access throws and the embed's own CSP `'self'` matches nothing. Real embeds break —
|
|
841
|
+
* a Loom embed renders as a blank box, verified in Chrome. Since the sanitizer requires an absolute
|
|
842
|
+
* cross-origin `https` src, granting it gives the frame nothing an unsandboxed frame wouldn't have.
|
|
843
|
+
*
|
|
844
|
+
* What is deliberately withheld matters more than what is granted. Above all `allow-top-navigation`:
|
|
845
|
+
* a hostile embed cannot navigate the patient's page elsewhere. Also withheld: `allow-downloads`,
|
|
846
|
+
* `allow-modals`, `allow-pointer-lock`, `allow-orientation-lock`, `allow-top-navigation-by-user-activation`.
|
|
847
|
+
*/
|
|
848
|
+
exports.DEFAULT_IFRAME_SANDBOX = 'allow-scripts allow-same-origin allow-forms allow-popups allow-popups-to-escape-sandbox allow-presentation';
|
|
849
|
+
/**
|
|
850
|
+
* Same as {@link sanitize_user_html}, but additionally permits `<iframe>` so authored content can
|
|
851
|
+
* embed video, scheduling widgets, etc. `sanitize_user_html` remains the default — only reach for
|
|
852
|
+
* this variant on a surface that specifically needs framing.
|
|
853
|
+
*
|
|
854
|
+
* Preconditions for any new caller:
|
|
855
|
+
* - **Admin/staff-authored HTML only.** Never use this for patient-authored content (form answers
|
|
856
|
+
* where `answerIsHTML`, chat messages, community posts) or for inbound email.
|
|
857
|
+
* - **Any patient-derived substring templated into the HTML must be entity-escaped first** — see
|
|
858
|
+
* `escapeHTMLValues` on {@link replace_form_field_template_values}. Otherwise "admin-authored"
|
|
859
|
+
* isn't actually true and a patient can inject a frame into an admin's description.
|
|
860
|
+
*
|
|
861
|
+
* How the frame is contained — the two controls work together, do not weaken either alone:
|
|
862
|
+
*
|
|
863
|
+
* 1. `src` must be an absolute `https://host` URL. Relative, protocol-relative (`//host`),
|
|
864
|
+
* `javascript:`, `data:` and `srcdoc` frames are dropped, so the frame is always cross-origin
|
|
865
|
+
* and the same-origin policy alone already prevents it from touching this document. Note that
|
|
866
|
+
* sanitize-html does NOT reject protocol-relative iframe srcs on its own when
|
|
867
|
+
* `allowProtocolRelative` is set, so that check lives in `transformTags` below.
|
|
868
|
+
* 2. {@link DEFAULT_IFRAME_SANDBOX} is forced when the author supplied none. Critically it withholds
|
|
869
|
+
* `allow-top-navigation`, so a hostile or compromised embed cannot redirect the patient's page to
|
|
870
|
+
* a phishing site — the realistic threat for an embed in a patient-facing form. It also withholds
|
|
871
|
+
* downloads, modals, pointer-lock, plugins and orientation-lock. It is therefore strictly more
|
|
872
|
+
* restrictive than rendering the same cross-origin iframe with no sandbox at all.
|
|
873
|
+
*
|
|
874
|
+
* It DOES grant `allow-same-origin`, which for a cross-origin `src` grants nothing a normal
|
|
875
|
+
* unsandboxed frame wouldn't already have (its own origin, its own storage) — see
|
|
876
|
+
* DEFAULT_IFRAME_SANDBOX for why that is necessary in practice. `allow-same-origin` would only be
|
|
877
|
+
* dangerous for a *same-origin* `src`, since such a frame could script this document; control 1 is
|
|
878
|
+
* what rules that out, which is why the src check must not be relaxed.
|
|
879
|
+
*
|
|
880
|
+
* An author-supplied `sandbox` is honored verbatim as an escape hatch (including `sandbox=""`, the
|
|
881
|
+
* most restrictive value), so a surface can tighten or loosen per embed.
|
|
882
|
+
*
|
|
883
|
+
* Current callers: the live form's field description (`Forms/forms.tsx`, `Forms/forms.v2.tsx`).
|
|
884
|
+
* The read-only submitted-response views intentionally stay on `sanitize_user_html`.
|
|
885
|
+
*/
|
|
886
|
+
var sanitize_user_html_with_iframes = function (html) {
|
|
887
|
+
if (typeof html !== 'string' || !html)
|
|
888
|
+
return '';
|
|
889
|
+
return (0, sanitize_html_1.default)(html, {
|
|
890
|
+
allowedTags: [
|
|
891
|
+
// text & inline
|
|
892
|
+
'a', 'abbr', 'b', 'bdi', 'bdo', 'br', 'cite', 'code', 'data', 'dfn', 'em', 'i', 'kbd',
|
|
893
|
+
'mark', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'small', 'span', 'strong', 'sub', 'sup',
|
|
894
|
+
'time', 'u', 'var', 'wbr', 'del', 'ins', 'abbr',
|
|
895
|
+
// block & structure
|
|
896
|
+
'address', 'article', 'aside', 'blockquote', 'caption', 'details', 'summary', 'div',
|
|
897
|
+
'figcaption', 'figure', 'footer', 'header', 'hgroup', 'hr', 'main', 'nav', 'p', 'pre',
|
|
898
|
+
'section',
|
|
899
|
+
// headings
|
|
900
|
+
'h1', 'h2', 'h3', 'h4', 'h5', 'h6',
|
|
901
|
+
// lists
|
|
902
|
+
'dd', 'dl', 'dt', 'li', 'ol', 'ul',
|
|
903
|
+
// tables
|
|
904
|
+
'col', 'colgroup', 'table', 'tbody', 'td', 'tfoot', 'th', 'thead', 'tr',
|
|
905
|
+
// media (still no object/embed — those can execute arbitrary plugin content)
|
|
906
|
+
'img', 'audio', 'video', 'source', 'picture', 'track',
|
|
907
|
+
'iframe',
|
|
908
|
+
],
|
|
909
|
+
allowedAttributes: {
|
|
910
|
+
// NOTE: `id`/`name` are intentionally omitted — caller-controlled id/name enable DOM
|
|
911
|
+
// clobbering (shadowing document/global properties) and duplicate-id breakage, with no
|
|
912
|
+
// legitimate need in rendered user content.
|
|
913
|
+
'*': [
|
|
914
|
+
'style', 'class', 'title', 'dir', 'lang', 'align', 'valign', 'width', 'height',
|
|
915
|
+
'color', 'bgcolor', 'aria-*', 'data-*', 'role',
|
|
916
|
+
],
|
|
917
|
+
a: ['href', 'target', 'rel'],
|
|
918
|
+
img: ['src', 'srcset', 'sizes', 'alt', 'loading', 'decoding'],
|
|
919
|
+
audio: ['controls', 'src', 'preload', 'loop', 'muted'],
|
|
920
|
+
video: ['controls', 'src', 'poster', 'preload', 'loop', 'muted', 'playsinline'],
|
|
921
|
+
source: ['src', 'srcset', 'type', 'media', 'sizes'],
|
|
922
|
+
track: ['src', 'kind', 'srclang', 'label', 'default'],
|
|
923
|
+
// No `srcdoc` (an inline document is arbitrary markup) and no `name` (named-window
|
|
924
|
+
// clobbering). `sandbox`/`referrerpolicy` MUST be listed here: transformTags runs BEFORE
|
|
925
|
+
// attribute filtering, so the values forced below are filtered too and would be dropped.
|
|
926
|
+
iframe: [
|
|
927
|
+
'src', 'sandbox', 'referrerpolicy', 'allow', 'allowfullscreen', 'frameborder', 'loading',
|
|
928
|
+
],
|
|
929
|
+
col: ['span'],
|
|
930
|
+
colgroup: ['span'],
|
|
931
|
+
td: ['colspan', 'rowspan', 'headers'],
|
|
932
|
+
th: ['colspan', 'rowspan', 'headers', 'scope'],
|
|
933
|
+
ol: ['start', 'reversed', 'type'],
|
|
934
|
+
time: ['datetime'],
|
|
935
|
+
data: ['value'],
|
|
936
|
+
del: ['datetime'],
|
|
937
|
+
ins: ['datetime'],
|
|
938
|
+
},
|
|
939
|
+
// Only safe protocols. javascript:/vbscript: are not listed and are stripped.
|
|
940
|
+
allowedSchemes: ['http', 'https', 'mailto', 'tel'],
|
|
941
|
+
allowedSchemesByTag: {
|
|
942
|
+
img: ['http', 'https', 'data'],
|
|
943
|
+
source: ['http', 'https', 'data'],
|
|
944
|
+
video: ['http', 'https', 'data'],
|
|
945
|
+
audio: ['http', 'https', 'data'],
|
|
946
|
+
iframe: ['https'],
|
|
947
|
+
},
|
|
948
|
+
allowedSchemesAppliedToAttributes: ['href', 'src', 'srcset'],
|
|
949
|
+
allowProtocolRelative: true,
|
|
950
|
+
allowIframeRelativeUrls: false,
|
|
951
|
+
transformTags: {
|
|
952
|
+
// Harden external links against reverse-tabnabbing.
|
|
953
|
+
a: function (tagName, attribs) {
|
|
954
|
+
var href = attribs.href || '';
|
|
955
|
+
if (href.startsWith('http://') || href.startsWith('https://')) {
|
|
956
|
+
return { tagName: tagName, attribs: __assign(__assign({}, attribs), { target: '_blank', rel: 'noopener noreferrer' }) };
|
|
957
|
+
}
|
|
958
|
+
return { tagName: tagName, attribs: attribs };
|
|
959
|
+
},
|
|
960
|
+
iframe: function (tagName, attribs) {
|
|
961
|
+
var _a;
|
|
962
|
+
// Strip the characters browsers ignore in URLs, matching sanitize-html's own naughtyHref.
|
|
963
|
+
var src = (attribs.src || '').replace(/[\x00-\x20]+/g, '');
|
|
964
|
+
// Absolute https with a non-empty host, only. Dropping `src` hands the element to
|
|
965
|
+
// exclusiveFilter below, which removes it along with its fallback content.
|
|
966
|
+
if (!/^https:\/\/[^\s/?#\\]+/i.test(src))
|
|
967
|
+
return { tagName: tagName, attribs: {} };
|
|
968
|
+
return {
|
|
969
|
+
tagName: tagName,
|
|
970
|
+
attribs: __assign(__assign({}, attribs), { src: src,
|
|
971
|
+
// `??` rather than `||`: sandbox="" serializes as a bare `sandbox`, which is the MOST
|
|
972
|
+
// restrictive value, so an explicit empty string must be honored rather than replaced.
|
|
973
|
+
sandbox: (_a = attribs.sandbox) !== null && _a !== void 0 ? _a : exports.DEFAULT_IFRAME_SANDBOX, referrerpolicy: attribs.referrerpolicy || 'strict-origin-when-cross-origin' }),
|
|
974
|
+
};
|
|
975
|
+
},
|
|
976
|
+
},
|
|
977
|
+
// Removes src-less iframes AND their fallback content. Returning a non-allowlisted tagName from
|
|
978
|
+
// transformTags does NOT do this — sanitize-html drops the tag but emits the text inside it.
|
|
979
|
+
exclusiveFilter: function (frame) { return frame.tag === 'iframe' && !frame.attribs.src; },
|
|
980
|
+
});
|
|
981
|
+
};
|
|
982
|
+
exports.sanitize_user_html_with_iframes = sanitize_user_html_with_iframes;
|
|
835
983
|
var query_string_for_object = function (query) {
|
|
836
984
|
var queryString = '';
|
|
837
985
|
if (query && !(0, exports.object_is_empty)(query)) {
|
|
@@ -2997,13 +3145,20 @@ var replace_order_template_values = function (s, order) {
|
|
|
2997
3145
|
return replaced;
|
|
2998
3146
|
};
|
|
2999
3147
|
exports.replace_order_template_values = replace_order_template_values;
|
|
3148
|
+
// Entity-escapes a value being spliced into an HTML string. `&` must be replaced first.
|
|
3149
|
+
var escape_html_text = function (s) { return s
|
|
3150
|
+
.replace(/&/g, '&')
|
|
3151
|
+
.replace(/</g, '<')
|
|
3152
|
+
.replace(/>/g, '>')
|
|
3153
|
+
.replace(/"/g, '"')
|
|
3154
|
+
.replace(/'/g, '''); };
|
|
3000
3155
|
var replace_form_field_template_values = function (s, options) {
|
|
3001
3156
|
var _a, _b, _d, _e, _f, _g, _h, _j;
|
|
3002
3157
|
if (!s)
|
|
3003
3158
|
return s;
|
|
3004
3159
|
if (typeof s !== 'string')
|
|
3005
3160
|
return s;
|
|
3006
|
-
var enduser = options.enduser, _k = options.responses, responses = _k === void 0 ? [] : _k, escapeNewlinesAsHTMLBreaks = options.escapeNewlinesAsHTMLBreaks;
|
|
3161
|
+
var enduser = options.enduser, _k = options.responses, responses = _k === void 0 ? [] : _k, escapeNewlinesAsHTMLBreaks = options.escapeNewlinesAsHTMLBreaks, escapeHTMLValues = options.escapeHTMLValues;
|
|
3007
3162
|
var i = 0;
|
|
3008
3163
|
var start = 0;
|
|
3009
3164
|
var templates = [];
|
|
@@ -3086,6 +3241,11 @@ var replace_form_field_template_values = function (s, options) {
|
|
|
3086
3241
|
replacement = value;
|
|
3087
3242
|
}
|
|
3088
3243
|
}
|
|
3244
|
+
// Must run before the newline conversion below, or the injected breaks are escaped too
|
|
3245
|
+
// and render as literal '<br />'.
|
|
3246
|
+
if (escapeHTMLValues) {
|
|
3247
|
+
replacement = escape_html_text(replacement);
|
|
3248
|
+
}
|
|
3089
3249
|
if (escapeNewlinesAsHTMLBreaks) {
|
|
3090
3250
|
replacement = replacement.replace(/\r\n|\r|\n|\\n/g, '<br />');
|
|
3091
3251
|
}
|