entities 8.0.0 → 8.1.0

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.
Files changed (54) hide show
  1. package/dist/decode-codepoint.d.ts +23 -3
  2. package/dist/decode-codepoint.d.ts.map +1 -1
  3. package/dist/decode-codepoint.js +52 -37
  4. package/dist/decode-codepoint.js.map +1 -1
  5. package/dist/decode.d.ts +61 -28
  6. package/dist/decode.d.ts.map +1 -1
  7. package/dist/decode.js +789 -201
  8. package/dist/decode.js.map +1 -1
  9. package/dist/encode.d.ts +4 -2
  10. package/dist/encode.d.ts.map +1 -1
  11. package/dist/encode.js +249 -44
  12. package/dist/encode.js.map +1 -1
  13. package/dist/escape.d.ts +19 -7
  14. package/dist/escape.d.ts.map +1 -1
  15. package/dist/escape.js +104 -64
  16. package/dist/escape.js.map +1 -1
  17. package/dist/generated/decode-data-html.d.ts.map +1 -1
  18. package/dist/generated/decode-data-html.js +2 -2
  19. package/dist/generated/decode-data-html.js.map +1 -1
  20. package/dist/generated/decode-data-xml.d.ts.map +1 -1
  21. package/dist/generated/decode-data-xml.js +4 -2
  22. package/dist/generated/decode-data-xml.js.map +1 -1
  23. package/dist/generated/encode-html.d.ts +2 -4
  24. package/dist/generated/encode-html.d.ts.map +1 -1
  25. package/dist/generated/encode-html.js +1 -10
  26. package/dist/generated/encode-html.js.map +1 -1
  27. package/dist/index.d.ts +2 -2
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +2 -6
  30. package/dist/index.js.map +1 -1
  31. package/dist/internal/bin-trie-flags.d.ts +39 -8
  32. package/dist/internal/bin-trie-flags.d.ts.map +1 -1
  33. package/dist/internal/bin-trie-flags.js +37 -6
  34. package/dist/internal/bin-trie-flags.js.map +1 -1
  35. package/dist/internal/decode-shared.d.ts +35 -4
  36. package/dist/internal/decode-shared.d.ts.map +1 -1
  37. package/dist/internal/decode-shared.js +189 -11
  38. package/dist/internal/decode-shared.js.map +1 -1
  39. package/package.json +14 -14
  40. package/src/decode-codepoint.ts +58 -39
  41. package/src/decode.ts +942 -245
  42. package/src/encode.ts +289 -47
  43. package/src/escape.ts +110 -83
  44. package/src/generated/decode-data-html.ts +8 -3
  45. package/src/generated/decode-data-xml.ts +4 -4
  46. package/src/generated/encode-html.ts +1 -16
  47. package/src/index.ts +6 -8
  48. package/src/internal/bin-trie-flags.ts +38 -7
  49. package/src/internal/decode-shared.ts +203 -12
  50. package/dist/internal/encode-shared.d.ts +0 -33
  51. package/dist/internal/encode-shared.d.ts.map +0 -1
  52. package/dist/internal/encode-shared.js +0 -93
  53. package/dist/internal/encode-shared.js.map +0 -1
  54. package/src/internal/encode-shared.ts +0 -123
@@ -1 +1 @@
1
- {"version":3,"file":"decode.js","sourceRoot":"","sources":["../src/decode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decode.js","sourceRoot":"","sources":["../src/decode.ts"],"names":[],"mappings":"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"}
package/dist/encode.d.ts CHANGED
@@ -8,7 +8,7 @@
8
8
  *
9
9
  * If a character has no equivalent entity, a numeric hexadecimal reference
10
10
  * (eg. `ü`) will be used.
11
- * @param input Input string to encode or decode.
11
+ * @param input Input string to encode.
12
12
  */
13
13
  export declare function encodeHTML(input: string): string;
14
14
  /**
@@ -18,7 +18,9 @@ export declare function encodeHTML(input: string): string;
18
18
  *
19
19
  * If a character has no equivalent entity, a numeric hexadecimal reference
20
20
  * (eg. `ü`) will be used.
21
- * @param input Input string to encode or decode.
21
+ * @param input Input string to encode.
22
22
  */
23
23
  export declare function encodeNonAsciiHTML(input: string): string;
24
+ /** @internal Exported for tests; not re-exported from the package entry. */
25
+ export declare const INLINE_SCAN_WINDOW = 16;
24
26
  //# sourceMappingURL=encode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../src/encode.ts"],"names":[],"mappings":"AAeA;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AACD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD"}
1
+ {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../src/encode.ts"],"names":[],"mappings":"AAmKA;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AACD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAwBD,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,KAAK,CAAC"}
package/dist/encode.js CHANGED
@@ -1,15 +1,129 @@
1
- import { getCodePoint, XML_BITSET_VALUE } from "./escape.js";
2
- import { htmlTrie } from "./generated/encode-html.js";
1
+ import { XML_BITSET_VALUE, xmlEncodeRegex } from "./escape.js";
2
+ import htmlTrieData from "./generated/encode-html.js";
3
3
  /**
4
- * We store the characters to consider as a compact bitset for fast lookups.
4
+ * Flat lookup table for ASCII entity values (code points 0–127).
5
+ *
6
+ * Built once at startup from the full trie. For ASCII characters that need
7
+ * encoding, a direct `asciiEntities[charCode]` array index is much faster
8
+ * than `Map.get(charCode)` because it avoids hashing and bucket lookup.
9
+ *
10
+ * A few ASCII characters also start multi-code-point entities
11
+ * (e.g. `<` + U+20D2 → `&nvlt;`). For those, the table holds the branch
12
+ * node itself (children plus the single-char value), so the ASCII path
13
+ * never consults `htmlTrie`.
14
+ */
15
+ const asciiEntities = /* #__PURE__ */ Array.from({ length: 128 }, () => null);
16
+ const htmlTrie = (() => {
17
+ /**
18
+ * Parse a compact encode trie string into a Map keyed by code point.
19
+ *
20
+ * The serialized format (produced by `scripts/write-encode-map.ts`) stores
21
+ * entries in ascending code-point order with delta encoding:
22
+ *
23
+ * [gap]name;[{children}]
24
+ *
25
+ * - `gap` is a base-10 integer giving `currentKey - previousKey - 1`.
26
+ * The very first entry stores the absolute key. A gap of 0 is omitted.
27
+ * - `name;` is the entity name (without `&` prefix) terminated by `;`.
28
+ * Because gaps use only digits `[0-9]` and entity names always start with
29
+ * a letter `[A-Za-z]`, no additional delimiter is needed.
30
+ * - `{…}` is an optional children block using the same scheme recursively.
31
+ * Children represent the second code unit of multi-character entities
32
+ * (e.g. `<` + U+20D2 → `&nvlt;`).
33
+ */
34
+ const trie = new Map();
35
+ const data = htmlTrieData;
36
+ let cursor = 0;
37
+ let lastKey = -1;
38
+ function readGap() {
39
+ let value = 0;
40
+ let ch;
41
+ while ((ch = data.charCodeAt(cursor)) >= 48 /* '0' */ &&
42
+ ch <= 57 /* '9' */) {
43
+ value = value * 10 + ch - 48;
44
+ cursor++;
45
+ }
46
+ return value;
47
+ }
48
+ function readEntity() {
49
+ const semi = data.indexOf(";", cursor);
50
+ const entity = `&${data.substring(cursor, semi)};`;
51
+ cursor = semi + 1;
52
+ return entity;
53
+ }
54
+ const astralEntries = [];
55
+ while (cursor < data.length) {
56
+ lastKey += readGap() + 1;
57
+ const entityValue = data.charCodeAt(cursor) === 123 /* '{' */ ? null : readEntity();
58
+ if (data.charCodeAt(cursor) === 123 /* '{' */) {
59
+ cursor++; // Skip '{'
60
+ const next = new Map();
61
+ let childKey = -1;
62
+ while (data.charCodeAt(cursor) !== 125 /* '}' */) {
63
+ childKey += readGap() + 1;
64
+ next.set(childKey, readEntity());
65
+ }
66
+ const branch = { value: entityValue, next };
67
+ trie.set(lastKey, branch);
68
+ cursor++; // Skip '}'
69
+ // ASCII fast path holds the branch node itself (children + value).
70
+ if (lastKey < 0x80) {
71
+ asciiEntities[lastKey] = branch;
72
+ }
73
+ }
74
+ else if (lastKey < 0x80) {
75
+ asciiEntities[lastKey] = entityValue;
76
+ }
77
+ else if (lastKey > 0xff_ff) {
78
+ astralEntries.push([lastKey, entityValue]);
79
+ }
80
+ else {
81
+ trie.set(lastKey, entityValue);
82
+ }
83
+ }
84
+ /*
85
+ * Batch-insert astral entries as surrogate-pair trie nodes.
86
+ * Entries are sorted by code point, so same-high-surrogate groups
87
+ * are contiguous — no intermediate grouping Map needed.
88
+ */
89
+ let astralIndex = 0;
90
+ while (astralIndex < astralEntries.length) {
91
+ const hi = 0xd8_00 | ((astralEntries[astralIndex][0] - 0x1_00_00) >> 10);
92
+ const children = [];
93
+ while (astralIndex < astralEntries.length &&
94
+ (0xd8_00 | ((astralEntries[astralIndex][0] - 0x1_00_00) >> 10)) ===
95
+ hi) {
96
+ const lo = 0xdc_00 |
97
+ ((astralEntries[astralIndex][0] - 0x1_00_00) & 0x3_ff);
98
+ children.push([lo, astralEntries[astralIndex][1]]);
99
+ astralIndex++;
100
+ }
101
+ trie.set(hi, { value: null, next: new Map(children) });
102
+ }
103
+ return trie;
104
+ })();
105
+ /**
106
+ * Bitset covering ASCII code points 0–127. Each of the four 32-bit words
107
+ * covers a 32-code-point range. A set bit means "this character needs
108
+ * encoding" when used with `encodeHTML`.
5
109
  */
6
110
  const HTML_BITSET = /* #__PURE__ */ new Uint32Array([
7
- 0x16_00, // Bits for 09,0A,0C
8
- 0xfc_00_ff_fe, // 32..63 -> 21-2D (minus space), 2E,2F,3A-3F
9
- 0xf8_00_00_01, // 64..95 -> 40, 5B-5F
10
- 0x38_00_00_01, // 96..127-> 60, 7B-7D
111
+ 0x16_00, // 09 (\t), 0A (\n), 0C (\f)
112
+ 0xfc_00_ff_fe, // 21-2D (!-.), 2E (.), 2F (/), 3A-3F (:;<=>?)
113
+ 0xf8_00_00_01, // 40 (@), 5B-5F ([\]^_)
114
+ 0x38_00_00_01, // 60 (`), 7B-7D ({|})
11
115
  ]);
12
116
  const XML_BITSET = /* #__PURE__ */ new Uint32Array([0, XML_BITSET_VALUE, 0, 0]);
117
+ /*
118
+ * Regex equivalent of `HTML_BITSET` (plus all non-ASCII code units, lone
119
+ * surrogates included — no `u` flag). Must stay in sync with the bitset:
120
+ * the scan uses the regex to find candidates and the bitset to re-check
121
+ * adjacent characters. The XML equivalent is `xmlEncodeRegex`, shared with
122
+ * `escape.ts`.
123
+ */
124
+ // eslint-disable-next-line unicorn/prefer-unicode-code-point-escapes -- the `\u{...}` form requires the `u` flag, which we deliberately omit so lone surrogates match by code unit
125
+ const HTML_ENCODE_RE = /[\t\n\f!-/:-@[-`{-}\u0080-\uFFFF]/g;
126
+ const numericReference = (cp) => `&#x${cp.toString(16)};`;
13
127
  /**
14
128
  * Encodes all characters in the input using HTML entities. This includes
15
129
  * characters that are valid ASCII characters in HTML documents, such as `#`.
@@ -20,10 +134,10 @@ const XML_BITSET = /* #__PURE__ */ new Uint32Array([0, XML_BITSET_VALUE, 0, 0]);
20
134
  *
21
135
  * If a character has no equivalent entity, a numeric hexadecimal reference
22
136
  * (eg. `&#xfc;`) will be used.
23
- * @param input Input string to encode or decode.
137
+ * @param input Input string to encode.
24
138
  */
25
139
  export function encodeHTML(input) {
26
- return encodeHTMLTrieRe(HTML_BITSET, input);
140
+ return encodeHTMLTrieRe(HTML_BITSET, HTML_ENCODE_RE, input);
27
141
  }
28
142
  /**
29
143
  * Encodes all non-ASCII characters, as well as characters not valid in HTML
@@ -32,56 +146,147 @@ export function encodeHTML(input) {
32
146
  *
33
147
  * If a character has no equivalent entity, a numeric hexadecimal reference
34
148
  * (eg. `&#xfc;`) will be used.
35
- * @param input Input string to encode or decode.
149
+ * @param input Input string to encode.
36
150
  */
37
151
  export function encodeNonAsciiHTML(input) {
38
- return encodeHTMLTrieRe(XML_BITSET, input);
152
+ return encodeHTMLTrieRe(XML_BITSET, xmlEncodeRegex, input);
39
153
  }
40
- function encodeHTMLTrieRe(bitset, input) {
154
+ /**
155
+ * Whether `code` (a UTF-16 code unit) must be encoded: any non-ASCII unit, or
156
+ * an ASCII unit flagged in `bitset`.
157
+ * @param bitset Bitset of ASCII characters to encode.
158
+ * @param code Code unit to test.
159
+ */
160
+ function isEncodable(bitset, code) {
161
+ return code >= 0x80 || ((bitset[code >>> 5] >>> code) & 1) === 1;
162
+ }
163
+ /*
164
+ * The inline scan beats the regex jump only for short gaps (measured
165
+ * break-even is ~7 characters; below it the per-call regex overhead
166
+ * dominates, above it the regex skips clean spans faster in native code).
167
+ * So we scan at most `INLINE_SCAN_WINDOW` characters inline before deferring
168
+ * to the regex. Any gap long enough to exhaust the window switches to
169
+ * long-gap mode, which skips the inline scan entirely; we stay in that mode
170
+ * while total gaps are at least `LONG_GAP_THRESHOLD` characters long and
171
+ * drop back to the inline scan as soon as a shorter gap appears. Gaps are
172
+ * always measured from where they start, so every window-exhausting gap
173
+ * enters long-gap mode and no gap length pays both scans repeatedly.
174
+ */
175
+ /** @internal Exported for tests; not re-exported from the package entry. */
176
+ export const INLINE_SCAN_WINDOW = 16;
177
+ const LONG_GAP_THRESHOLD = 8;
178
+ function encodeHTMLTrieRe(bitset, re, input) {
179
+ const { length } = input;
41
180
  let out;
42
181
  let last = 0; // Start of the next untouched slice.
43
- const { length } = input;
44
- for (let index = 0; index < length; index++) {
45
- const char = input.charCodeAt(index);
46
- // Skip ASCII characters that don't need encoding
47
- if (char < 0x80 && !((bitset[char >>> 5] >>> char) & 1)) {
48
- continue;
182
+ let index = 0;
183
+ let wasLongGap = false; // The previous gap was long; skip the inline scan.
184
+ while (index < length) {
185
+ let char = input.charCodeAt(index);
186
+ /*
187
+ * Find the next encodable character (one matching `bitset`, or any
188
+ * non-ASCII unit). Gaps between entities in dense text are only a
189
+ * few characters, so scan a short window inline first; the regex —
190
+ * which matches exactly the same characters and skips clean spans
191
+ * in native code — runs for longer gaps. Gap lengths cluster, so
192
+ * after a window-exhausting gap the window is skipped until a gap
193
+ * shorter than LONG_GAP_THRESHOLD reappears. Once located, the
194
+ * character is captured in `char` and control falls through to the
195
+ * encode logic below instead of re-testing it on the next loop
196
+ * iteration.
197
+ */
198
+ if (!isEncodable(bitset, char)) {
199
+ const gapStart = index;
200
+ let next = index + 1;
201
+ let wasFound = false;
202
+ if (!wasLongGap) {
203
+ const bound = Math.min(index + INLINE_SCAN_WINDOW, length);
204
+ while (next < bound &&
205
+ !isEncodable(bitset, (char = input.charCodeAt(next)))) {
206
+ next++;
207
+ }
208
+ if (next < bound) {
209
+ // `char` already holds the encodable unit at `next`.
210
+ index = next;
211
+ wasFound = true;
212
+ }
213
+ else if (next >= length) {
214
+ break;
215
+ }
216
+ }
217
+ if (!wasFound) {
218
+ /*
219
+ * Every match is a single code unit, so `test` pins it at
220
+ * `lastIndex - 1` without allocating a match object.
221
+ */
222
+ re.lastIndex = next;
223
+ if (!re.test(input))
224
+ break;
225
+ index = re.lastIndex - 1;
226
+ /*
227
+ * Reaching the regex from the inline scan means the gap
228
+ * exhausted the window, so it is long by definition; once
229
+ * in long-gap mode, stay until a gap shorter than the
230
+ * threshold appears.
231
+ */
232
+ wasLongGap =
233
+ !wasLongGap || index - gapStart >= LONG_GAP_THRESHOLD;
234
+ char = input.charCodeAt(index);
235
+ }
49
236
  }
50
- if (out === undefined)
237
+ // Lazy-init: copy the prefix before the first character that needs encoding.
238
+ if (out == null)
51
239
  out = input.substring(0, index);
52
240
  else if (last !== index)
53
241
  out += input.substring(last, index);
54
- let node = htmlTrie.get(char);
55
- if (typeof node === "object") {
56
- if (index + 1 < length) {
57
- const nextChar = input.charCodeAt(index + 1);
58
- const value = typeof node.next === "number"
59
- ? node.next === nextChar
60
- ? node.nextValue
61
- : undefined
62
- : node.next.get(nextChar);
63
- if (value !== undefined) {
64
- out += value;
65
- index++;
66
- last = index + 1;
67
- continue;
242
+ if (char < 0x80) {
243
+ const node = asciiEntities[char];
244
+ if (typeof node === "object" && node !== null) {
245
+ // Multi-code-point entity first (e.g. < + U+20D2 → &nvlt;).
246
+ if (index + 1 < length) {
247
+ const value = node.next.get(input.charCodeAt(index + 1));
248
+ if (value != null) {
249
+ out += value;
250
+ last = index += 2;
251
+ continue;
252
+ }
68
253
  }
254
+ out += node.value ?? numericReference(char);
255
+ }
256
+ else {
257
+ out += node ?? numericReference(char);
69
258
  }
70
- node = node.value;
71
- }
72
- if (node === undefined) {
73
- const cp = getCodePoint(input, index);
74
- out += `&#x${cp.toString(16)};`;
75
- if (cp !== char)
76
- index++;
77
- last = index + 1;
78
259
  }
79
260
  else {
80
- out += node;
81
- last = index + 1;
261
+ // Non-ASCII: full trie lookup with multi-char entity support.
262
+ let node = htmlTrie.get(char);
263
+ if (typeof node === "object") {
264
+ if (index + 1 < length) {
265
+ const value = node.next.get(input.charCodeAt(index + 1));
266
+ if (value != null) {
267
+ out += value;
268
+ last = index += 2;
269
+ continue;
270
+ }
271
+ }
272
+ node = node.value;
273
+ }
274
+ if (node == null) {
275
+ // No named entity exists; emit a hexadecimal numeric reference.
276
+ const cp = input.codePointAt(index);
277
+ out += numericReference(cp);
278
+ // Astral code points consume two UTF-16 code units.
279
+ if (cp !== char)
280
+ index++;
281
+ }
282
+ else {
283
+ out += node;
284
+ }
82
285
  }
286
+ last = index += 1;
83
287
  }
84
- if (out === undefined)
288
+ // If nothing needed encoding, return the original string (avoids allocation).
289
+ if (out == null)
85
290
  return input;
86
291
  if (last < length)
87
292
  out += input.substr(last);
@@ -1 +1 @@
1
- {"version":3,"file":"encode.js","sourceRoot":"","sources":["../src/encode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encode.js","sourceRoot":"","sources":["../src/encode.ts"],"names":[],"mappings":"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"}
package/dist/escape.d.ts CHANGED
@@ -1,20 +1,32 @@
1
1
  /**
2
2
  * Read a code point at a given index.
3
- * @param input Input string to encode or decode.
3
+ * @param input String to read the code point from.
4
4
  * @param index Current read position in the input string.
5
+ * @returns The code point at `index`, or `undefined` if `index` is out of range.
6
+ * @deprecated Use `String.prototype.codePointAt` directly instead; this export
7
+ * will be removed in the next major.
5
8
  */
6
- export declare const getCodePoint: (c: string, index: number) => number;
9
+ export declare const getCodePoint: (input: string, index: number) => number;
7
10
  /**
8
11
  * Bitset for ASCII characters that need to be escaped in XML.
9
12
  */
10
13
  export declare const XML_BITSET_VALUE = 1342177476;
14
+ /**
15
+ * Matches exactly the characters `encodeXML` escapes: the five XML special
16
+ * characters plus every non-ASCII code unit (lone surrogates included — no
17
+ * `u` flag). Kept in sync with `XML_BITSET_VALUE`.
18
+ *
19
+ * Shared with `encodeNonAsciiHTML` in `encode.ts`. Because the regex is
20
+ * stateful (`g` flag), every call site must set `lastIndex` before use.
21
+ */
22
+ export declare const xmlEncodeRegex: RegExp;
11
23
  /**
12
24
  * Encodes all non-ASCII characters, as well as characters not valid in XML
13
- * documents using XML entities. Uses a fast bitset scan instead of RegExp.
25
+ * documents using XML entities.
14
26
  *
15
27
  * If a character has no equivalent entity, a numeric hexadecimal reference
16
28
  * (eg. `&#xfc;`) will be used.
17
- * @param input Input string to encode or decode.
29
+ * @param input Input string to encode.
18
30
  */
19
31
  export declare function encodeXML(input: string): string;
20
32
  /**
@@ -32,17 +44,17 @@ export declare const escape: typeof encodeXML;
32
44
  * Note that the output will be character-set dependent.
33
45
  * @param data String to escape.
34
46
  */
35
- export declare const escapeUTF8: (data: string) => string;
47
+ export declare function escapeUTF8(data: string): string;
36
48
  /**
37
49
  * Encodes all characters that have to be escaped in HTML attributes,
38
50
  * following {@link https://html.spec.whatwg.org/multipage/parsing.html#escapingString}.
39
51
  * @param data String to escape.
40
52
  */
41
- export declare const escapeAttribute: (data: string) => string;
53
+ export declare function escapeAttribute(data: string): string;
42
54
  /**
43
55
  * Encodes all characters that have to be escaped in HTML text,
44
56
  * following {@link https://html.spec.whatwg.org/multipage/parsing.html#escapingString}.
45
57
  * @param data String to escape.
46
58
  */
47
- export declare const escapeText: (data: string) => string;
59
+ export declare function escapeText(data: string): string;
48
60
  //# sourceMappingURL=escape.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../src/escape.ts"],"names":[],"mappings":"AASA;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAUlB,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,gBAAgB,aAAgB,CAAC;AAE9C;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAoC/C;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,SAAqB,CAAC;AAmClD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAG1C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAQ3C,CAAC;AAEN;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAQ1C,CAAC"}
1
+ {"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../src/escape.ts"],"names":[],"mappings":"AAkBA;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAGvB,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,gBAAgB,aAAgB,CAAC;AAE9C;;;;;;;GAOG;AAEH,eAAO,MAAM,cAAc,EAAE,MAAgC,CAAC;AAe9D;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAmD/C;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,SAAqB,CAAC;AA2BlD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAID;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAID;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C"}