entities 4.5.0 → 6.0.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 (128) hide show
  1. package/decode.js +3 -0
  2. package/{lib/decode_codepoint.d.ts → dist/commonjs/decode-codepoint.d.ts} +2 -2
  3. package/dist/commonjs/decode-codepoint.d.ts.map +1 -0
  4. package/{lib/decode_codepoint.js → dist/commonjs/decode-codepoint.js} +14 -13
  5. package/dist/commonjs/decode-codepoint.js.map +1 -0
  6. package/{lib → dist/commonjs}/decode.d.ts +18 -20
  7. package/dist/commonjs/decode.d.ts.map +1 -0
  8. package/{lib → dist/commonjs}/decode.js +122 -147
  9. package/dist/commonjs/decode.js.map +1 -0
  10. package/{lib/esm → dist/commonjs}/encode.d.ts +2 -2
  11. package/dist/commonjs/encode.d.ts.map +1 -0
  12. package/{lib → dist/commonjs}/encode.js +31 -35
  13. package/dist/commonjs/encode.js.map +1 -0
  14. package/{lib/esm → dist/commonjs}/escape.d.ts +2 -2
  15. package/dist/commonjs/escape.d.ts.map +1 -0
  16. package/{lib → dist/commonjs}/escape.js +37 -38
  17. package/dist/commonjs/escape.js.map +1 -0
  18. package/dist/commonjs/generated/decode-data-html.d.ts +2 -0
  19. package/dist/commonjs/generated/decode-data-html.d.ts.map +1 -0
  20. package/dist/commonjs/generated/decode-data-html.js +10 -0
  21. package/dist/commonjs/generated/decode-data-html.js.map +1 -0
  22. package/dist/commonjs/generated/decode-data-xml.d.ts +2 -0
  23. package/dist/commonjs/generated/decode-data-xml.d.ts.map +1 -0
  24. package/dist/commonjs/generated/decode-data-xml.js +10 -0
  25. package/dist/commonjs/generated/decode-data-xml.js.map +1 -0
  26. package/dist/commonjs/generated/encode-html.d.ts +8 -0
  27. package/dist/commonjs/generated/encode-html.d.ts.map +1 -0
  28. package/dist/commonjs/generated/encode-html.js +13 -0
  29. package/dist/commonjs/generated/encode-html.js.map +1 -0
  30. package/{lib → dist/commonjs}/index.d.ts +6 -6
  31. package/dist/commonjs/index.d.ts.map +1 -0
  32. package/{lib → dist/commonjs}/index.js +44 -39
  33. package/dist/commonjs/index.js.map +1 -0
  34. package/dist/commonjs/package.json +3 -0
  35. package/{lib/esm/decode_codepoint.d.ts → dist/esm/decode-codepoint.d.ts} +2 -2
  36. package/dist/esm/decode-codepoint.d.ts.map +1 -0
  37. package/{lib/esm/decode_codepoint.js → dist/esm/decode-codepoint.js} +10 -9
  38. package/dist/esm/decode-codepoint.js.map +1 -0
  39. package/{lib → dist}/esm/decode.d.ts +18 -20
  40. package/dist/esm/decode.d.ts.map +1 -0
  41. package/{lib → dist}/esm/decode.js +76 -75
  42. package/dist/esm/decode.js.map +1 -0
  43. package/{lib → dist/esm}/encode.d.ts +2 -2
  44. package/dist/esm/encode.d.ts.map +1 -0
  45. package/{lib → dist}/esm/encode.js +25 -25
  46. package/dist/esm/encode.js.map +1 -0
  47. package/{lib → dist/esm}/escape.d.ts +2 -2
  48. package/dist/esm/escape.d.ts.map +1 -0
  49. package/{lib → dist}/esm/escape.js +31 -30
  50. package/dist/esm/escape.js.map +1 -0
  51. package/dist/esm/generated/decode-data-html.d.ts +2 -0
  52. package/dist/esm/generated/decode-data-html.d.ts.map +1 -0
  53. package/dist/esm/generated/decode-data-html.js +7 -0
  54. package/dist/esm/generated/decode-data-html.js.map +1 -0
  55. package/dist/esm/generated/decode-data-xml.d.ts +2 -0
  56. package/dist/esm/generated/decode-data-xml.d.ts.map +1 -0
  57. package/dist/esm/generated/decode-data-xml.js +7 -0
  58. package/dist/esm/generated/decode-data-xml.js.map +1 -0
  59. package/dist/esm/generated/encode-html.d.ts +8 -0
  60. package/dist/esm/generated/encode-html.d.ts.map +1 -0
  61. package/dist/esm/generated/encode-html.js +10 -0
  62. package/dist/esm/generated/encode-html.js.map +1 -0
  63. package/{lib → dist}/esm/index.d.ts +6 -6
  64. package/dist/esm/index.d.ts.map +1 -0
  65. package/{lib → dist}/esm/index.js +33 -25
  66. package/dist/esm/index.js.map +1 -0
  67. package/dist/esm/package.json +3 -0
  68. package/escape.js +3 -0
  69. package/package.json +92 -66
  70. package/readme.md +19 -19
  71. package/src/decode-codepoint.ts +81 -0
  72. package/src/decode.spec.ts +320 -0
  73. package/src/decode.ts +620 -0
  74. package/src/encode.spec.ts +78 -0
  75. package/src/encode.ts +77 -0
  76. package/src/escape.spec.ts +14 -0
  77. package/src/escape.ts +148 -0
  78. package/src/generated/.eslintrc.json +10 -0
  79. package/src/generated/decode-data-html.ts +8 -0
  80. package/src/generated/decode-data-xml.ts +8 -0
  81. package/src/generated/encode-html.ts +17 -0
  82. package/src/index.spec.ts +125 -0
  83. package/src/index.ts +188 -0
  84. package/lib/decode.d.ts.map +0 -1
  85. package/lib/decode.js.map +0 -1
  86. package/lib/decode_codepoint.d.ts.map +0 -1
  87. package/lib/decode_codepoint.js.map +0 -1
  88. package/lib/encode.d.ts.map +0 -1
  89. package/lib/encode.js.map +0 -1
  90. package/lib/escape.d.ts.map +0 -1
  91. package/lib/escape.js.map +0 -1
  92. package/lib/esm/decode.d.ts.map +0 -1
  93. package/lib/esm/decode.js.map +0 -1
  94. package/lib/esm/decode_codepoint.d.ts.map +0 -1
  95. package/lib/esm/decode_codepoint.js.map +0 -1
  96. package/lib/esm/encode.d.ts.map +0 -1
  97. package/lib/esm/encode.js.map +0 -1
  98. package/lib/esm/escape.d.ts.map +0 -1
  99. package/lib/esm/escape.js.map +0 -1
  100. package/lib/esm/generated/decode-data-html.d.ts +0 -3
  101. package/lib/esm/generated/decode-data-html.d.ts.map +0 -1
  102. package/lib/esm/generated/decode-data-html.js +0 -7
  103. package/lib/esm/generated/decode-data-html.js.map +0 -1
  104. package/lib/esm/generated/decode-data-xml.d.ts +0 -3
  105. package/lib/esm/generated/decode-data-xml.d.ts.map +0 -1
  106. package/lib/esm/generated/decode-data-xml.js +0 -7
  107. package/lib/esm/generated/decode-data-xml.js.map +0 -1
  108. package/lib/esm/generated/encode-html.d.ts +0 -8
  109. package/lib/esm/generated/encode-html.d.ts.map +0 -1
  110. package/lib/esm/generated/encode-html.js +0 -10
  111. package/lib/esm/generated/encode-html.js.map +0 -1
  112. package/lib/esm/index.d.ts.map +0 -1
  113. package/lib/esm/index.js.map +0 -1
  114. package/lib/esm/package.json +0 -1
  115. package/lib/generated/decode-data-html.d.ts +0 -3
  116. package/lib/generated/decode-data-html.d.ts.map +0 -1
  117. package/lib/generated/decode-data-html.js +0 -9
  118. package/lib/generated/decode-data-html.js.map +0 -1
  119. package/lib/generated/decode-data-xml.d.ts +0 -3
  120. package/lib/generated/decode-data-xml.d.ts.map +0 -1
  121. package/lib/generated/decode-data-xml.js +0 -9
  122. package/lib/generated/decode-data-xml.js.map +0 -1
  123. package/lib/generated/encode-html.d.ts +0 -8
  124. package/lib/generated/encode-html.d.ts.map +0 -1
  125. package/lib/generated/encode-html.js +0 -12
  126. package/lib/generated/encode-html.js.map +0 -1
  127. package/lib/index.d.ts.map +0 -1
  128. package/lib/index.js.map +0 -1
@@ -1,41 +1,14 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
2
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.decodeXML = exports.decodeHTMLStrict = exports.decodeHTMLAttribute = exports.decodeHTML = exports.determineBranch = exports.EntityDecoder = exports.DecodingMode = exports.BinTrieFlags = exports.fromCodePoint = exports.replaceCodePoint = exports.decodeCodePoint = exports.xmlDecodeTree = exports.htmlDecodeTree = void 0;
30
- var decode_data_html_js_1 = __importDefault(require("./generated/decode-data-html.js"));
31
- exports.htmlDecodeTree = decode_data_html_js_1.default;
32
- var decode_data_xml_js_1 = __importDefault(require("./generated/decode-data-xml.js"));
33
- exports.xmlDecodeTree = decode_data_xml_js_1.default;
34
- var decode_codepoint_js_1 = __importStar(require("./decode_codepoint.js"));
35
- exports.decodeCodePoint = decode_codepoint_js_1.default;
36
- var decode_codepoint_js_2 = require("./decode_codepoint.js");
37
- Object.defineProperty(exports, "replaceCodePoint", { enumerable: true, get: function () { return decode_codepoint_js_2.replaceCodePoint; } });
38
- Object.defineProperty(exports, "fromCodePoint", { enumerable: true, get: function () { return decode_codepoint_js_2.fromCodePoint; } });
3
+ exports.fromCodePoint = exports.replaceCodePoint = exports.decodeCodePoint = exports.xmlDecodeTree = exports.htmlDecodeTree = exports.EntityDecoder = exports.DecodingMode = exports.BinTrieFlags = void 0;
4
+ exports.determineBranch = determineBranch;
5
+ exports.decodeHTML = decodeHTML;
6
+ exports.decodeHTMLAttribute = decodeHTMLAttribute;
7
+ exports.decodeHTMLStrict = decodeHTMLStrict;
8
+ exports.decodeXML = decodeXML;
9
+ const decode_data_html_js_1 = require("./generated/decode-data-html.js");
10
+ const decode_data_xml_js_1 = require("./generated/decode-data-xml.js");
11
+ const decode_codepoint_js_1 = require("./decode-codepoint.js");
39
12
  var CharCodes;
40
13
  (function (CharCodes) {
41
14
  CharCodes[CharCodes["NUM"] = 35] = "NUM";
@@ -52,13 +25,13 @@ var CharCodes;
52
25
  CharCodes[CharCodes["UPPER_Z"] = 90] = "UPPER_Z";
53
26
  })(CharCodes || (CharCodes = {}));
54
27
  /** Bit that needs to be set to convert an upper case ASCII character to lower case */
55
- var TO_LOWER_BIT = 32;
28
+ const TO_LOWER_BIT = 32;
56
29
  var BinTrieFlags;
57
30
  (function (BinTrieFlags) {
58
31
  BinTrieFlags[BinTrieFlags["VALUE_LENGTH"] = 49152] = "VALUE_LENGTH";
59
32
  BinTrieFlags[BinTrieFlags["BRANCH_LENGTH"] = 16256] = "BRANCH_LENGTH";
60
33
  BinTrieFlags[BinTrieFlags["JUMP_TABLE"] = 127] = "JUMP_TABLE";
61
- })(BinTrieFlags = exports.BinTrieFlags || (exports.BinTrieFlags = {}));
34
+ })(BinTrieFlags || (exports.BinTrieFlags = BinTrieFlags = {}));
62
35
  function isNumber(code) {
63
36
  return code >= CharCodes.ZERO && code <= CharCodes.NINE;
64
37
  }
@@ -96,12 +69,12 @@ var DecodingMode;
96
69
  DecodingMode[DecodingMode["Strict"] = 1] = "Strict";
97
70
  /** Entities in attributes have limitations on ending characters. */
98
71
  DecodingMode[DecodingMode["Attribute"] = 2] = "Attribute";
99
- })(DecodingMode = exports.DecodingMode || (exports.DecodingMode = {}));
72
+ })(DecodingMode || (exports.DecodingMode = DecodingMode = {}));
100
73
  /**
101
74
  * Token decoder with support of writing partial entities.
102
75
  */
103
- var EntityDecoder = /** @class */ (function () {
104
- function EntityDecoder(
76
+ class EntityDecoder {
77
+ constructor(
105
78
  /** The tree used to decode entities. */
106
79
  decodeTree,
107
80
  /**
@@ -138,14 +111,14 @@ var EntityDecoder = /** @class */ (function () {
138
111
  this.decodeMode = DecodingMode.Strict;
139
112
  }
140
113
  /** Resets the instance to make it reusable. */
141
- EntityDecoder.prototype.startEntity = function (decodeMode) {
114
+ startEntity(decodeMode) {
142
115
  this.decodeMode = decodeMode;
143
116
  this.state = EntityDecoderState.EntityStart;
144
117
  this.result = 0;
145
118
  this.treeIndex = 0;
146
119
  this.excess = 1;
147
120
  this.consumed = 1;
148
- };
121
+ }
149
122
  /**
150
123
  * Write an entity to the decoder. This can be called multiple times with partial entities.
151
124
  * If the entity is incomplete, the decoder will return -1.
@@ -153,113 +126,113 @@ var EntityDecoder = /** @class */ (function () {
153
126
  * Mirrors the implementation of `getDecoder`, but with the ability to stop decoding if the
154
127
  * entity is incomplete, and resume when the next string is written.
155
128
  *
156
- * @param string The string containing the entity (or a continuation of the entity).
129
+ * @param input The string containing the entity (or a continuation of the entity).
157
130
  * @param offset The offset at which the entity begins. Should be 0 if this is not the first call.
158
131
  * @returns The number of characters that were consumed, or -1 if the entity is incomplete.
159
132
  */
160
- EntityDecoder.prototype.write = function (str, offset) {
133
+ write(input, offset) {
161
134
  switch (this.state) {
162
135
  case EntityDecoderState.EntityStart: {
163
- if (str.charCodeAt(offset) === CharCodes.NUM) {
136
+ if (input.charCodeAt(offset) === CharCodes.NUM) {
164
137
  this.state = EntityDecoderState.NumericStart;
165
138
  this.consumed += 1;
166
- return this.stateNumericStart(str, offset + 1);
139
+ return this.stateNumericStart(input, offset + 1);
167
140
  }
168
141
  this.state = EntityDecoderState.NamedEntity;
169
- return this.stateNamedEntity(str, offset);
142
+ return this.stateNamedEntity(input, offset);
170
143
  }
171
144
  case EntityDecoderState.NumericStart: {
172
- return this.stateNumericStart(str, offset);
145
+ return this.stateNumericStart(input, offset);
173
146
  }
174
147
  case EntityDecoderState.NumericDecimal: {
175
- return this.stateNumericDecimal(str, offset);
148
+ return this.stateNumericDecimal(input, offset);
176
149
  }
177
150
  case EntityDecoderState.NumericHex: {
178
- return this.stateNumericHex(str, offset);
151
+ return this.stateNumericHex(input, offset);
179
152
  }
180
153
  case EntityDecoderState.NamedEntity: {
181
- return this.stateNamedEntity(str, offset);
154
+ return this.stateNamedEntity(input, offset);
182
155
  }
183
156
  }
184
- };
157
+ }
185
158
  /**
186
159
  * Switches between the numeric decimal and hexadecimal states.
187
160
  *
188
161
  * Equivalent to the `Numeric character reference state` in the HTML spec.
189
162
  *
190
- * @param str The string containing the entity (or a continuation of the entity).
163
+ * @param input The string containing the entity (or a continuation of the entity).
191
164
  * @param offset The current offset.
192
165
  * @returns The number of characters that were consumed, or -1 if the entity is incomplete.
193
166
  */
194
- EntityDecoder.prototype.stateNumericStart = function (str, offset) {
195
- if (offset >= str.length) {
167
+ stateNumericStart(input, offset) {
168
+ if (offset >= input.length) {
196
169
  return -1;
197
170
  }
198
- if ((str.charCodeAt(offset) | TO_LOWER_BIT) === CharCodes.LOWER_X) {
171
+ if ((input.charCodeAt(offset) | TO_LOWER_BIT) === CharCodes.LOWER_X) {
199
172
  this.state = EntityDecoderState.NumericHex;
200
173
  this.consumed += 1;
201
- return this.stateNumericHex(str, offset + 1);
174
+ return this.stateNumericHex(input, offset + 1);
202
175
  }
203
176
  this.state = EntityDecoderState.NumericDecimal;
204
- return this.stateNumericDecimal(str, offset);
205
- };
206
- EntityDecoder.prototype.addToNumericResult = function (str, start, end, base) {
177
+ return this.stateNumericDecimal(input, offset);
178
+ }
179
+ addToNumericResult(input, start, end, base) {
207
180
  if (start !== end) {
208
- var digitCount = end - start;
181
+ const digitCount = end - start;
209
182
  this.result =
210
183
  this.result * Math.pow(base, digitCount) +
211
- parseInt(str.substr(start, digitCount), base);
184
+ Number.parseInt(input.substr(start, digitCount), base);
212
185
  this.consumed += digitCount;
213
186
  }
214
- };
187
+ }
215
188
  /**
216
189
  * Parses a hexadecimal numeric entity.
217
190
  *
218
191
  * Equivalent to the `Hexademical character reference state` in the HTML spec.
219
192
  *
220
- * @param str The string containing the entity (or a continuation of the entity).
193
+ * @param input The string containing the entity (or a continuation of the entity).
221
194
  * @param offset The current offset.
222
195
  * @returns The number of characters that were consumed, or -1 if the entity is incomplete.
223
196
  */
224
- EntityDecoder.prototype.stateNumericHex = function (str, offset) {
225
- var startIdx = offset;
226
- while (offset < str.length) {
227
- var char = str.charCodeAt(offset);
197
+ stateNumericHex(input, offset) {
198
+ const startIndex = offset;
199
+ while (offset < input.length) {
200
+ const char = input.charCodeAt(offset);
228
201
  if (isNumber(char) || isHexadecimalCharacter(char)) {
229
202
  offset += 1;
230
203
  }
231
204
  else {
232
- this.addToNumericResult(str, startIdx, offset, 16);
205
+ this.addToNumericResult(input, startIndex, offset, 16);
233
206
  return this.emitNumericEntity(char, 3);
234
207
  }
235
208
  }
236
- this.addToNumericResult(str, startIdx, offset, 16);
209
+ this.addToNumericResult(input, startIndex, offset, 16);
237
210
  return -1;
238
- };
211
+ }
239
212
  /**
240
213
  * Parses a decimal numeric entity.
241
214
  *
242
215
  * Equivalent to the `Decimal character reference state` in the HTML spec.
243
216
  *
244
- * @param str The string containing the entity (or a continuation of the entity).
217
+ * @param input The string containing the entity (or a continuation of the entity).
245
218
  * @param offset The current offset.
246
219
  * @returns The number of characters that were consumed, or -1 if the entity is incomplete.
247
220
  */
248
- EntityDecoder.prototype.stateNumericDecimal = function (str, offset) {
249
- var startIdx = offset;
250
- while (offset < str.length) {
251
- var char = str.charCodeAt(offset);
221
+ stateNumericDecimal(input, offset) {
222
+ const startIndex = offset;
223
+ while (offset < input.length) {
224
+ const char = input.charCodeAt(offset);
252
225
  if (isNumber(char)) {
253
226
  offset += 1;
254
227
  }
255
228
  else {
256
- this.addToNumericResult(str, startIdx, offset, 10);
229
+ this.addToNumericResult(input, startIndex, offset, 10);
257
230
  return this.emitNumericEntity(char, 2);
258
231
  }
259
232
  }
260
- this.addToNumericResult(str, startIdx, offset, 10);
233
+ this.addToNumericResult(input, startIndex, offset, 10);
261
234
  return -1;
262
- };
235
+ }
263
236
  /**
264
237
  * Validate and emit a numeric entity.
265
238
  *
@@ -273,7 +246,7 @@ var EntityDecoder = /** @class */ (function () {
273
246
  * was consumed.
274
247
  * @returns The number of characters that were consumed.
275
248
  */
276
- EntityDecoder.prototype.emitNumericEntity = function (lastCp, expectedLength) {
249
+ emitNumericEntity(lastCp, expectedLength) {
277
250
  var _a;
278
251
  // Ensure we consumed at least one digit.
279
252
  if (this.consumed <= expectedLength) {
@@ -295,23 +268,23 @@ var EntityDecoder = /** @class */ (function () {
295
268
  this.errors.validateNumericCharacterReference(this.result);
296
269
  }
297
270
  return this.consumed;
298
- };
271
+ }
299
272
  /**
300
273
  * Parses a named entity.
301
274
  *
302
275
  * Equivalent to the `Named character reference state` in the HTML spec.
303
276
  *
304
- * @param str The string containing the entity (or a continuation of the entity).
277
+ * @param input The string containing the entity (or a continuation of the entity).
305
278
  * @param offset The current offset.
306
279
  * @returns The number of characters that were consumed, or -1 if the entity is incomplete.
307
280
  */
308
- EntityDecoder.prototype.stateNamedEntity = function (str, offset) {
309
- var decodeTree = this.decodeTree;
310
- var current = decodeTree[this.treeIndex];
281
+ stateNamedEntity(input, offset) {
282
+ const { decodeTree } = this;
283
+ let current = decodeTree[this.treeIndex];
311
284
  // The mask is the number of bytes of the value, including the current byte.
312
- var valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;
313
- for (; offset < str.length; offset++, this.excess++) {
314
- var char = str.charCodeAt(offset);
285
+ let valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;
286
+ for (; offset < input.length; offset++, this.excess++) {
287
+ const char = input.charCodeAt(offset);
315
288
  this.treeIndex = determineBranch(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char);
316
289
  if (this.treeIndex < 0) {
317
290
  return this.result === 0 ||
@@ -341,20 +314,20 @@ var EntityDecoder = /** @class */ (function () {
341
314
  }
342
315
  }
343
316
  return -1;
344
- };
317
+ }
345
318
  /**
346
319
  * Emit a named entity that was not terminated with a semicolon.
347
320
  *
348
321
  * @returns The number of characters consumed.
349
322
  */
350
- EntityDecoder.prototype.emitNotTerminatedNamedEntity = function () {
323
+ emitNotTerminatedNamedEntity() {
351
324
  var _a;
352
- var _b = this, result = _b.result, decodeTree = _b.decodeTree;
353
- var valueLength = (decodeTree[result] & BinTrieFlags.VALUE_LENGTH) >> 14;
325
+ const { result, decodeTree } = this;
326
+ const valueLength = (decodeTree[result] & BinTrieFlags.VALUE_LENGTH) >> 14;
354
327
  this.emitNamedEntityData(result, valueLength, this.consumed);
355
328
  (_a = this.errors) === null || _a === void 0 ? void 0 : _a.missingSemicolonAfterCharacterReference();
356
329
  return this.consumed;
357
- };
330
+ }
358
331
  /**
359
332
  * Emit a named entity.
360
333
  *
@@ -364,8 +337,8 @@ var EntityDecoder = /** @class */ (function () {
364
337
  *
365
338
  * @returns The number of characters consumed.
366
339
  */
367
- EntityDecoder.prototype.emitNamedEntityData = function (result, valueLength, consumed) {
368
- var decodeTree = this.decodeTree;
340
+ emitNamedEntityData(result, valueLength, consumed) {
341
+ const { decodeTree } = this;
369
342
  this.emitCodePoint(valueLength === 1
370
343
  ? decodeTree[result] & ~BinTrieFlags.VALUE_LENGTH
371
344
  : decodeTree[result + 1], consumed);
@@ -374,7 +347,7 @@ var EntityDecoder = /** @class */ (function () {
374
347
  this.emitCodePoint(decodeTree[result + 2], consumed);
375
348
  }
376
349
  return consumed;
377
- };
350
+ }
378
351
  /**
379
352
  * Signal to the parser that the end of the input was reached.
380
353
  *
@@ -382,7 +355,7 @@ var EntityDecoder = /** @class */ (function () {
382
355
  *
383
356
  * @returns The number of characters consumed.
384
357
  */
385
- EntityDecoder.prototype.end = function () {
358
+ end() {
386
359
  var _a;
387
360
  switch (this.state) {
388
361
  case EntityDecoderState.NamedEntity: {
@@ -409,9 +382,8 @@ var EntityDecoder = /** @class */ (function () {
409
382
  return 0;
410
383
  }
411
384
  }
412
- };
413
- return EntityDecoder;
414
- }());
385
+ }
386
+ }
415
387
  exports.EntityDecoder = EntityDecoder;
416
388
  /**
417
389
  * Creates a function that decodes entities in a string.
@@ -420,28 +392,28 @@ exports.EntityDecoder = EntityDecoder;
420
392
  * @returns A function that decodes entities in a string.
421
393
  */
422
394
  function getDecoder(decodeTree) {
423
- var ret = "";
424
- var decoder = new EntityDecoder(decodeTree, function (str) { return (ret += (0, decode_codepoint_js_1.fromCodePoint)(str)); });
425
- return function decodeWithTrie(str, decodeMode) {
426
- var lastIndex = 0;
427
- var offset = 0;
428
- while ((offset = str.indexOf("&", offset)) >= 0) {
429
- ret += str.slice(lastIndex, offset);
395
+ let returnValue = "";
396
+ const decoder = new EntityDecoder(decodeTree, (data) => (returnValue += (0, decode_codepoint_js_1.fromCodePoint)(data)));
397
+ return function decodeWithTrie(input, decodeMode) {
398
+ let lastIndex = 0;
399
+ let offset = 0;
400
+ while ((offset = input.indexOf("&", offset)) >= 0) {
401
+ returnValue += input.slice(lastIndex, offset);
430
402
  decoder.startEntity(decodeMode);
431
- var len = decoder.write(str,
403
+ const length = decoder.write(input,
432
404
  // Skip the "&"
433
405
  offset + 1);
434
- if (len < 0) {
406
+ if (length < 0) {
435
407
  lastIndex = offset + decoder.end();
436
408
  break;
437
409
  }
438
- lastIndex = offset + len;
439
- // If `len` is 0, skip the current `&` and continue.
440
- offset = len === 0 ? lastIndex + 1 : lastIndex;
410
+ lastIndex = offset + length;
411
+ // If `length` is 0, skip the current `&` and continue.
412
+ offset = length === 0 ? lastIndex + 1 : lastIndex;
441
413
  }
442
- var result = ret + str.slice(lastIndex);
414
+ const result = returnValue + input.slice(lastIndex);
443
415
  // Make sure we don't keep a reference to the final string.
444
- ret = "";
416
+ returnValue = "";
445
417
  return result;
446
418
  };
447
419
  }
@@ -455,31 +427,31 @@ function getDecoder(decodeTree) {
455
427
  * @param char The current character.
456
428
  * @returns The index of the next node, or -1 if no branch is taken.
457
429
  */
458
- function determineBranch(decodeTree, current, nodeIdx, char) {
459
- var branchCount = (current & BinTrieFlags.BRANCH_LENGTH) >> 7;
460
- var jumpOffset = current & BinTrieFlags.JUMP_TABLE;
430
+ function determineBranch(decodeTree, current, nodeIndex, char) {
431
+ const branchCount = (current & BinTrieFlags.BRANCH_LENGTH) >> 7;
432
+ const jumpOffset = current & BinTrieFlags.JUMP_TABLE;
461
433
  // Case 1: Single branch encoded in jump offset
462
434
  if (branchCount === 0) {
463
- return jumpOffset !== 0 && char === jumpOffset ? nodeIdx : -1;
435
+ return jumpOffset !== 0 && char === jumpOffset ? nodeIndex : -1;
464
436
  }
465
437
  // Case 2: Multiple branches encoded in jump table
466
438
  if (jumpOffset) {
467
- var value = char - jumpOffset;
439
+ const value = char - jumpOffset;
468
440
  return value < 0 || value >= branchCount
469
441
  ? -1
470
- : decodeTree[nodeIdx + value] - 1;
442
+ : decodeTree[nodeIndex + value] - 1;
471
443
  }
472
444
  // Case 3: Multiple branches encoded in dictionary
473
445
  // Binary search for the character.
474
- var lo = nodeIdx;
475
- var hi = lo + branchCount - 1;
446
+ let lo = nodeIndex;
447
+ let hi = lo + branchCount - 1;
476
448
  while (lo <= hi) {
477
- var mid = (lo + hi) >>> 1;
478
- var midVal = decodeTree[mid];
479
- if (midVal < char) {
449
+ const mid = (lo + hi) >>> 1;
450
+ const midValue = decodeTree[mid];
451
+ if (midValue < char) {
480
452
  lo = mid + 1;
481
453
  }
482
- else if (midVal > char) {
454
+ else if (midValue > char) {
483
455
  hi = mid - 1;
484
456
  }
485
457
  else {
@@ -488,49 +460,52 @@ function determineBranch(decodeTree, current, nodeIdx, char) {
488
460
  }
489
461
  return -1;
490
462
  }
491
- exports.determineBranch = determineBranch;
492
- var htmlDecoder = getDecoder(decode_data_html_js_1.default);
493
- var xmlDecoder = getDecoder(decode_data_xml_js_1.default);
463
+ const htmlDecoder = /* #__PURE__ */ getDecoder(decode_data_html_js_1.htmlDecodeTree);
464
+ const xmlDecoder = /* #__PURE__ */ getDecoder(decode_data_xml_js_1.xmlDecodeTree);
494
465
  /**
495
466
  * Decodes an HTML string.
496
467
  *
497
- * @param str The string to decode.
468
+ * @param htmlString The string to decode.
498
469
  * @param mode The decoding mode.
499
470
  * @returns The decoded string.
500
471
  */
501
- function decodeHTML(str, mode) {
502
- if (mode === void 0) { mode = DecodingMode.Legacy; }
503
- return htmlDecoder(str, mode);
472
+ function decodeHTML(htmlString, mode = DecodingMode.Legacy) {
473
+ return htmlDecoder(htmlString, mode);
504
474
  }
505
- exports.decodeHTML = decodeHTML;
506
475
  /**
507
476
  * Decodes an HTML string in an attribute.
508
477
  *
509
- * @param str The string to decode.
478
+ * @param htmlAttribute The string to decode.
510
479
  * @returns The decoded string.
511
480
  */
512
- function decodeHTMLAttribute(str) {
513
- return htmlDecoder(str, DecodingMode.Attribute);
481
+ function decodeHTMLAttribute(htmlAttribute) {
482
+ return htmlDecoder(htmlAttribute, DecodingMode.Attribute);
514
483
  }
515
- exports.decodeHTMLAttribute = decodeHTMLAttribute;
516
484
  /**
517
485
  * Decodes an HTML string, requiring all entities to be terminated by a semicolon.
518
486
  *
519
- * @param str The string to decode.
487
+ * @param htmlString The string to decode.
520
488
  * @returns The decoded string.
521
489
  */
522
- function decodeHTMLStrict(str) {
523
- return htmlDecoder(str, DecodingMode.Strict);
490
+ function decodeHTMLStrict(htmlString) {
491
+ return htmlDecoder(htmlString, DecodingMode.Strict);
524
492
  }
525
- exports.decodeHTMLStrict = decodeHTMLStrict;
526
493
  /**
527
494
  * Decodes an XML string, requiring all entities to be terminated by a semicolon.
528
495
  *
529
- * @param str The string to decode.
496
+ * @param xmlString The string to decode.
530
497
  * @returns The decoded string.
531
498
  */
532
- function decodeXML(str) {
533
- return xmlDecoder(str, DecodingMode.Strict);
499
+ function decodeXML(xmlString) {
500
+ return xmlDecoder(xmlString, DecodingMode.Strict);
534
501
  }
535
- exports.decodeXML = decodeXML;
502
+ // Re-export for use by eg. htmlparser2
503
+ var decode_data_html_js_2 = require("./generated/decode-data-html.js");
504
+ Object.defineProperty(exports, "htmlDecodeTree", { enumerable: true, get: function () { return decode_data_html_js_2.htmlDecodeTree; } });
505
+ var decode_data_xml_js_2 = require("./generated/decode-data-xml.js");
506
+ Object.defineProperty(exports, "xmlDecodeTree", { enumerable: true, get: function () { return decode_data_xml_js_2.xmlDecodeTree; } });
507
+ var decode_codepoint_js_2 = require("./decode-codepoint.js");
508
+ Object.defineProperty(exports, "decodeCodePoint", { enumerable: true, get: function () { return decode_codepoint_js_2.decodeCodePoint; } });
509
+ Object.defineProperty(exports, "replaceCodePoint", { enumerable: true, get: function () { return decode_codepoint_js_2.replaceCodePoint; } });
510
+ Object.defineProperty(exports, "fromCodePoint", { enumerable: true, get: function () { return decode_codepoint_js_2.fromCodePoint; } });
536
511
  //# sourceMappingURL=decode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decode.js","sourceRoot":"","sources":["../../src/decode.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  * If a character has no equivalent entity, a numeric hexadecimal reference
10
10
  * (eg. `&#xfc;`) will be used.
11
11
  */
12
- export declare function encodeHTML(data: string): string;
12
+ export declare function encodeHTML(input: string): string;
13
13
  /**
14
14
  * Encodes all non-ASCII characters, as well as characters not valid in HTML
15
15
  * documents using HTML entities. This function will not encode characters that
@@ -18,5 +18,5 @@ export declare function encodeHTML(data: string): string;
18
18
  * If a character has no equivalent entity, a numeric hexadecimal reference
19
19
  * (eg. `&#xfc;`) will be used.
20
20
  */
21
- export declare function encodeNonAsciiHTML(data: string): string;
21
+ export declare function encodeNonAsciiHTML(input: string): string;
22
22
  //# sourceMappingURL=encode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/encode.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AACD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD"}