@scrabble-solver/scrabble-solver 2.10.1 → 2.10.2

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 (135) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +19 -31
  3. package/.next/cache/.tsbuildinfo +1 -1
  4. package/.next/cache/eslint/.cache_8dgz12 +1 -1
  5. package/.next/cache/next-server.js.nft.json +1 -1
  6. package/.next/cache/webpack/client-development/0.pack +0 -0
  7. package/.next/cache/webpack/client-development/1.pack +0 -0
  8. package/.next/cache/webpack/client-development/2.pack +0 -0
  9. package/.next/cache/webpack/client-development/3.pack +0 -0
  10. package/.next/cache/webpack/client-development/4.pack +0 -0
  11. package/.next/cache/webpack/client-development/index.pack +0 -0
  12. package/.next/cache/webpack/client-development/index.pack.old +0 -0
  13. package/.next/cache/webpack/client-production/0.pack +0 -0
  14. package/.next/cache/webpack/client-production/index.pack +0 -0
  15. package/.next/cache/webpack/edge-server-production/0.pack +0 -0
  16. package/.next/cache/webpack/edge-server-production/index.pack +0 -0
  17. package/.next/cache/webpack/server-development/0.pack +0 -0
  18. package/.next/cache/webpack/server-development/10.pack_ +0 -0
  19. package/.next/cache/webpack/server-development/5.pack_ +0 -0
  20. package/.next/cache/webpack/server-development/8.pack_ +0 -0
  21. package/.next/cache/webpack/server-development/index.pack +0 -0
  22. package/.next/cache/webpack/server-production/0.pack +0 -0
  23. package/.next/cache/webpack/server-production/index.pack +0 -0
  24. package/.next/images-manifest.json +1 -1
  25. package/.next/next-server.js.nft.json +1 -1
  26. package/.next/prerender-manifest.json +1 -1
  27. package/.next/required-server-files.json +1 -1
  28. package/.next/routes-manifest.json +1 -1
  29. package/.next/server/chunks/131.js +1399 -117
  30. package/.next/server/chunks/{515.js → 176.js} +771 -679
  31. package/.next/server/chunks/210.js +122 -0
  32. package/.next/server/chunks/{939.js → 290.js} +3 -3
  33. package/.next/server/chunks/44.js +33 -33
  34. package/.next/server/chunks/50.js +5 -9
  35. package/.next/server/chunks/{413.js → 579.js} +136 -87
  36. package/.next/server/chunks/664.js +537 -350
  37. package/.next/server/chunks/859.js +56 -23
  38. package/.next/server/chunks/865.js +1 -1
  39. package/.next/server/middleware-build-manifest.js +1 -1
  40. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  41. package/.next/server/pages/404.html +2 -2
  42. package/.next/server/pages/404.js.nft.json +1 -1
  43. package/.next/server/pages/500.html +2 -2
  44. package/.next/server/pages/_app.js +23 -5
  45. package/.next/server/pages/_app.js.nft.json +1 -1
  46. package/.next/server/pages/_document.js +2 -2
  47. package/.next/server/pages/_error.js +206 -25
  48. package/.next/server/pages/_error.js.nft.json +1 -1
  49. package/.next/server/pages/api/dictionary/[locale]/[word].js +10 -10
  50. package/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -1
  51. package/.next/server/pages/api/dictionary/[locale].js +10 -10
  52. package/.next/server/pages/api/dictionary/[locale].js.nft.json +1 -1
  53. package/.next/server/pages/api/solve.js +14 -13
  54. package/.next/server/pages/api/solve.js.nft.json +1 -1
  55. package/.next/server/pages/api/verify.js +10 -10
  56. package/.next/server/pages/api/verify.js.nft.json +1 -1
  57. package/.next/server/pages/api/visit.js +3 -3
  58. package/.next/server/pages/api/visit.js.nft.json +1 -1
  59. package/.next/server/pages/index.html +2 -2
  60. package/.next/server/pages/index.js +44 -128
  61. package/.next/server/pages/index.js.nft.json +1 -1
  62. package/.next/server/pages/index.json +1 -1
  63. package/.next/server/pages-manifest.json +3 -3
  64. package/.next/static/FjrbXpI5fkt4lmko-vL_7/_buildManifest.js +1 -0
  65. package/.next/static/{hf94cues-LcXZRCpAzQ6w → FjrbXpI5fkt4lmko-vL_7}/_ssgManifest.js +0 -0
  66. package/.next/static/chunks/361-d16f336a9752a55a.js +1 -0
  67. package/.next/static/chunks/724-eb48df4d1ba3df8b.js +5 -0
  68. package/.next/static/chunks/amp.js +720 -0
  69. package/.next/static/chunks/framework-2c79e2a64abdb08b.js +33 -0
  70. package/.next/static/chunks/main-f11614d8aa7ee555.js +1 -0
  71. package/.next/static/chunks/main.js +1076 -0
  72. package/.next/static/chunks/pages/404-24f9617eeb8d6dc1.js +1 -0
  73. package/.next/static/chunks/pages/_app-959e495f0f221247.js +24 -0
  74. package/.next/static/chunks/pages/_app.js +2121 -0
  75. package/.next/static/chunks/pages/_error-8353112a01355ec2.js +1 -0
  76. package/.next/static/chunks/pages/_error.js +28 -0
  77. package/.next/static/chunks/pages/index-1e30dafa41bddb80.js +1 -0
  78. package/.next/static/chunks/pages/index.js +5314 -0
  79. package/.next/static/chunks/react-refresh.js +62 -0
  80. package/.next/static/chunks/webpack-59c5c889f52620d6.js +1 -0
  81. package/.next/static/chunks/webpack.js +1237 -0
  82. package/.next/static/css/aafd07997120f1e4.css +1 -0
  83. package/.next/static/css/c8d26240c04079b9.css +1 -0
  84. package/.next/static/css/eb9d57f7103525ab.css +1 -0
  85. package/.next/static/development/_buildManifest.js +1 -0
  86. package/.next/static/development/_ssgManifest.js +1 -0
  87. package/.next/static/webpack/fb4b50d5e70ee127.webpack.hot-update.json +1 -0
  88. package/.next/static/webpack/pages/index.fb4b50d5e70ee127.hot-update.js +171 -0
  89. package/.next/static/webpack/webpack.fb4b50d5e70ee127.hot-update.js +18 -0
  90. package/.next/trace +52 -52
  91. package/package.json +21 -21
  92. package/public/og.png +0 -0
  93. package/src/components/Board/Board.module.scss +1 -2
  94. package/src/components/Board/BoardPure.tsx +2 -0
  95. package/src/components/Board/components/Cell/Cell.module.scss +65 -55
  96. package/src/components/Board/components/Cell/Cell.tsx +9 -0
  97. package/src/components/Board/components/Cell/CellPure.tsx +11 -2
  98. package/src/components/NavButtons/NavButtons.tsx +11 -1
  99. package/src/components/Rack/RackTile.tsx +10 -1
  100. package/src/components/RemainingTiles/Character.module.scss +0 -1
  101. package/src/components/RemainingTiles/Character.tsx +1 -0
  102. package/src/components/Solver/Solver.module.scss +85 -0
  103. package/src/components/Solver/Solver.tsx +75 -0
  104. package/src/components/Solver/index.ts +1 -0
  105. package/src/components/Tile/Tile.module.scss +51 -7
  106. package/src/components/Tile/Tile.tsx +3 -0
  107. package/src/components/Tile/TilePure.tsx +8 -1
  108. package/src/components/index.ts +1 -0
  109. package/src/hooks/index.ts +1 -0
  110. package/src/hooks/useIsTouchDevice.ts +7 -0
  111. package/src/icons/ExclamationSquareFill.svg +4 -0
  112. package/src/icons/index.ts +1 -0
  113. package/src/pages/index.module.scss +1 -75
  114. package/src/pages/index.tsx +11 -73
  115. package/src/parameters/index.ts +2 -0
  116. package/src/service-worker/average.ts +9 -0
  117. package/src/service-worker/routeSolveRequests.ts +46 -7
  118. package/src/state/selectors.ts +20 -0
  119. package/src/state/slices/boardInitialState.ts +27 -0
  120. package/src/styles/mixins.scss +6 -1
  121. package/src/styles/variables.scss +6 -3
  122. package/.next/InjectManifest.js.nft.json +0 -1
  123. package/.next/static/chunks/368-8b386c3106556f62.js +0 -1
  124. package/.next/static/chunks/546-447e243fc9de2c59.js +0 -1
  125. package/.next/static/chunks/framework-4556c45dd113b893.js +0 -1
  126. package/.next/static/chunks/main-a75cf611e061d8f8.js +0 -1
  127. package/.next/static/chunks/pages/404-932294135c3206dd.js +0 -1
  128. package/.next/static/chunks/pages/_app-8f0df20f771045ed.js +0 -1
  129. package/.next/static/chunks/pages/_error-a4ba2246ff8fb532.js +0 -1
  130. package/.next/static/chunks/pages/index-8af7a9d7a2cd98a7.js +0 -1
  131. package/.next/static/chunks/webpack-5752944655d749a0.js +0 -1
  132. package/.next/static/css/6b1833fd19d3a74a.css +0 -1
  133. package/.next/static/css/a6154e4ca046ca13.css +0 -1
  134. package/.next/static/css/bad53af6f8616677.css +0 -1
  135. package/.next/static/hf94cues-LcXZRCpAzQ6w/_buildManifest.js +0 -1
@@ -2,6 +2,1174 @@ exports.id = 131;
2
2
  exports.ids = [131];
3
3
  exports.modules = {
4
4
 
5
+ /***/ 60012:
6
+ /***/ ((module, exports, __webpack_require__) => {
7
+
8
+ /* eslint-env browser */
9
+
10
+ /**
11
+ * This is the web browser implementation of `debug()`.
12
+ */
13
+
14
+ exports.formatArgs = formatArgs;
15
+ exports.save = save;
16
+ exports.load = load;
17
+ exports.useColors = useColors;
18
+ exports.storage = localstorage();
19
+ exports.destroy = (() => {
20
+ let warned = false;
21
+
22
+ return () => {
23
+ if (!warned) {
24
+ warned = true;
25
+ console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');
26
+ }
27
+ };
28
+ })();
29
+
30
+ /**
31
+ * Colors.
32
+ */
33
+
34
+ exports.colors = [
35
+ '#0000CC',
36
+ '#0000FF',
37
+ '#0033CC',
38
+ '#0033FF',
39
+ '#0066CC',
40
+ '#0066FF',
41
+ '#0099CC',
42
+ '#0099FF',
43
+ '#00CC00',
44
+ '#00CC33',
45
+ '#00CC66',
46
+ '#00CC99',
47
+ '#00CCCC',
48
+ '#00CCFF',
49
+ '#3300CC',
50
+ '#3300FF',
51
+ '#3333CC',
52
+ '#3333FF',
53
+ '#3366CC',
54
+ '#3366FF',
55
+ '#3399CC',
56
+ '#3399FF',
57
+ '#33CC00',
58
+ '#33CC33',
59
+ '#33CC66',
60
+ '#33CC99',
61
+ '#33CCCC',
62
+ '#33CCFF',
63
+ '#6600CC',
64
+ '#6600FF',
65
+ '#6633CC',
66
+ '#6633FF',
67
+ '#66CC00',
68
+ '#66CC33',
69
+ '#9900CC',
70
+ '#9900FF',
71
+ '#9933CC',
72
+ '#9933FF',
73
+ '#99CC00',
74
+ '#99CC33',
75
+ '#CC0000',
76
+ '#CC0033',
77
+ '#CC0066',
78
+ '#CC0099',
79
+ '#CC00CC',
80
+ '#CC00FF',
81
+ '#CC3300',
82
+ '#CC3333',
83
+ '#CC3366',
84
+ '#CC3399',
85
+ '#CC33CC',
86
+ '#CC33FF',
87
+ '#CC6600',
88
+ '#CC6633',
89
+ '#CC9900',
90
+ '#CC9933',
91
+ '#CCCC00',
92
+ '#CCCC33',
93
+ '#FF0000',
94
+ '#FF0033',
95
+ '#FF0066',
96
+ '#FF0099',
97
+ '#FF00CC',
98
+ '#FF00FF',
99
+ '#FF3300',
100
+ '#FF3333',
101
+ '#FF3366',
102
+ '#FF3399',
103
+ '#FF33CC',
104
+ '#FF33FF',
105
+ '#FF6600',
106
+ '#FF6633',
107
+ '#FF9900',
108
+ '#FF9933',
109
+ '#FFCC00',
110
+ '#FFCC33'
111
+ ];
112
+
113
+ /**
114
+ * Currently only WebKit-based Web Inspectors, Firefox >= v31,
115
+ * and the Firebug extension (any Firefox version) are known
116
+ * to support "%c" CSS customizations.
117
+ *
118
+ * TODO: add a `localStorage` variable to explicitly enable/disable colors
119
+ */
120
+
121
+ // eslint-disable-next-line complexity
122
+ function useColors() {
123
+ // NB: In an Electron preload script, document will be defined but not fully
124
+ // initialized. Since we know we're in Chrome, we'll just detect this case
125
+ // explicitly
126
+ if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {
127
+ return true;
128
+ }
129
+
130
+ // Internet Explorer and Edge do not support colors.
131
+ if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
132
+ return false;
133
+ }
134
+
135
+ // Is webkit? http://stackoverflow.com/a/16459606/376773
136
+ // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
137
+ return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||
138
+ // Is firebug? http://stackoverflow.com/a/398120/376773
139
+ (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||
140
+ // Is firefox >= v31?
141
+ // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
142
+ (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||
143
+ // Double check webkit in userAgent just in case we are in a worker
144
+ (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/));
145
+ }
146
+
147
+ /**
148
+ * Colorize log arguments if enabled.
149
+ *
150
+ * @api public
151
+ */
152
+
153
+ function formatArgs(args) {
154
+ args[0] = (this.useColors ? '%c' : '') +
155
+ this.namespace +
156
+ (this.useColors ? ' %c' : ' ') +
157
+ args[0] +
158
+ (this.useColors ? '%c ' : ' ') +
159
+ '+' + module.exports.humanize(this.diff);
160
+
161
+ if (!this.useColors) {
162
+ return;
163
+ }
164
+
165
+ const c = 'color: ' + this.color;
166
+ args.splice(1, 0, c, 'color: inherit');
167
+
168
+ // The final "%c" is somewhat tricky, because there could be other
169
+ // arguments passed either before or after the %c, so we need to
170
+ // figure out the correct index to insert the CSS into
171
+ let index = 0;
172
+ let lastC = 0;
173
+ args[0].replace(/%[a-zA-Z%]/g, match => {
174
+ if (match === '%%') {
175
+ return;
176
+ }
177
+ index++;
178
+ if (match === '%c') {
179
+ // We only are interested in the *last* %c
180
+ // (the user may have provided their own)
181
+ lastC = index;
182
+ }
183
+ });
184
+
185
+ args.splice(lastC, 0, c);
186
+ }
187
+
188
+ /**
189
+ * Invokes `console.debug()` when available.
190
+ * No-op when `console.debug` is not a "function".
191
+ * If `console.debug` is not available, falls back
192
+ * to `console.log`.
193
+ *
194
+ * @api public
195
+ */
196
+ exports.log = console.debug || console.log || (() => {});
197
+
198
+ /**
199
+ * Save `namespaces`.
200
+ *
201
+ * @param {String} namespaces
202
+ * @api private
203
+ */
204
+ function save(namespaces) {
205
+ try {
206
+ if (namespaces) {
207
+ exports.storage.setItem('debug', namespaces);
208
+ } else {
209
+ exports.storage.removeItem('debug');
210
+ }
211
+ } catch (error) {
212
+ // Swallow
213
+ // XXX (@Qix-) should we be logging these?
214
+ }
215
+ }
216
+
217
+ /**
218
+ * Load `namespaces`.
219
+ *
220
+ * @return {String} returns the previously persisted debug modes
221
+ * @api private
222
+ */
223
+ function load() {
224
+ let r;
225
+ try {
226
+ r = exports.storage.getItem('debug');
227
+ } catch (error) {
228
+ // Swallow
229
+ // XXX (@Qix-) should we be logging these?
230
+ }
231
+
232
+ // If debug isn't set in LS, and we're in Electron, try to load $DEBUG
233
+ if (!r && typeof process !== 'undefined' && 'env' in process) {
234
+ r = process.env.DEBUG;
235
+ }
236
+
237
+ return r;
238
+ }
239
+
240
+ /**
241
+ * Localstorage attempts to return the localstorage.
242
+ *
243
+ * This is necessary because safari throws
244
+ * when a user disables cookies/localstorage
245
+ * and you attempt to access it.
246
+ *
247
+ * @return {LocalStorage}
248
+ * @api private
249
+ */
250
+
251
+ function localstorage() {
252
+ try {
253
+ // TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context
254
+ // The Browser also has localStorage in the global context.
255
+ return localStorage;
256
+ } catch (error) {
257
+ // Swallow
258
+ // XXX (@Qix-) should we be logging these?
259
+ }
260
+ }
261
+
262
+ module.exports = __webpack_require__(88788)(exports);
263
+
264
+ const {formatters} = module.exports;
265
+
266
+ /**
267
+ * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
268
+ */
269
+
270
+ formatters.j = function (v) {
271
+ try {
272
+ return JSON.stringify(v);
273
+ } catch (error) {
274
+ return '[UnexpectedJSONParseError]: ' + error.message;
275
+ }
276
+ };
277
+
278
+
279
+ /***/ }),
280
+
281
+ /***/ 88788:
282
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
283
+
284
+
285
+ /**
286
+ * This is the common logic for both the Node.js and web browser
287
+ * implementations of `debug()`.
288
+ */
289
+
290
+ function setup(env) {
291
+ createDebug.debug = createDebug;
292
+ createDebug.default = createDebug;
293
+ createDebug.coerce = coerce;
294
+ createDebug.disable = disable;
295
+ createDebug.enable = enable;
296
+ createDebug.enabled = enabled;
297
+ createDebug.humanize = __webpack_require__(65135);
298
+ createDebug.destroy = destroy;
299
+
300
+ Object.keys(env).forEach(key => {
301
+ createDebug[key] = env[key];
302
+ });
303
+
304
+ /**
305
+ * The currently active debug mode names, and names to skip.
306
+ */
307
+
308
+ createDebug.names = [];
309
+ createDebug.skips = [];
310
+
311
+ /**
312
+ * Map of special "%n" handling functions, for the debug "format" argument.
313
+ *
314
+ * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
315
+ */
316
+ createDebug.formatters = {};
317
+
318
+ /**
319
+ * Selects a color for a debug namespace
320
+ * @param {String} namespace The namespace string for the debug instance to be colored
321
+ * @return {Number|String} An ANSI color code for the given namespace
322
+ * @api private
323
+ */
324
+ function selectColor(namespace) {
325
+ let hash = 0;
326
+
327
+ for (let i = 0; i < namespace.length; i++) {
328
+ hash = ((hash << 5) - hash) + namespace.charCodeAt(i);
329
+ hash |= 0; // Convert to 32bit integer
330
+ }
331
+
332
+ return createDebug.colors[Math.abs(hash) % createDebug.colors.length];
333
+ }
334
+ createDebug.selectColor = selectColor;
335
+
336
+ /**
337
+ * Create a debugger with the given `namespace`.
338
+ *
339
+ * @param {String} namespace
340
+ * @return {Function}
341
+ * @api public
342
+ */
343
+ function createDebug(namespace) {
344
+ let prevTime;
345
+ let enableOverride = null;
346
+ let namespacesCache;
347
+ let enabledCache;
348
+
349
+ function debug(...args) {
350
+ // Disabled?
351
+ if (!debug.enabled) {
352
+ return;
353
+ }
354
+
355
+ const self = debug;
356
+
357
+ // Set `diff` timestamp
358
+ const curr = Number(new Date());
359
+ const ms = curr - (prevTime || curr);
360
+ self.diff = ms;
361
+ self.prev = prevTime;
362
+ self.curr = curr;
363
+ prevTime = curr;
364
+
365
+ args[0] = createDebug.coerce(args[0]);
366
+
367
+ if (typeof args[0] !== 'string') {
368
+ // Anything else let's inspect with %O
369
+ args.unshift('%O');
370
+ }
371
+
372
+ // Apply any `formatters` transformations
373
+ let index = 0;
374
+ args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {
375
+ // If we encounter an escaped % then don't increase the array index
376
+ if (match === '%%') {
377
+ return '%';
378
+ }
379
+ index++;
380
+ const formatter = createDebug.formatters[format];
381
+ if (typeof formatter === 'function') {
382
+ const val = args[index];
383
+ match = formatter.call(self, val);
384
+
385
+ // Now we need to remove `args[index]` since it's inlined in the `format`
386
+ args.splice(index, 1);
387
+ index--;
388
+ }
389
+ return match;
390
+ });
391
+
392
+ // Apply env-specific formatting (colors, etc.)
393
+ createDebug.formatArgs.call(self, args);
394
+
395
+ const logFn = self.log || createDebug.log;
396
+ logFn.apply(self, args);
397
+ }
398
+
399
+ debug.namespace = namespace;
400
+ debug.useColors = createDebug.useColors();
401
+ debug.color = createDebug.selectColor(namespace);
402
+ debug.extend = extend;
403
+ debug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.
404
+
405
+ Object.defineProperty(debug, 'enabled', {
406
+ enumerable: true,
407
+ configurable: false,
408
+ get: () => {
409
+ if (enableOverride !== null) {
410
+ return enableOverride;
411
+ }
412
+ if (namespacesCache !== createDebug.namespaces) {
413
+ namespacesCache = createDebug.namespaces;
414
+ enabledCache = createDebug.enabled(namespace);
415
+ }
416
+
417
+ return enabledCache;
418
+ },
419
+ set: v => {
420
+ enableOverride = v;
421
+ }
422
+ });
423
+
424
+ // Env-specific initialization logic for debug instances
425
+ if (typeof createDebug.init === 'function') {
426
+ createDebug.init(debug);
427
+ }
428
+
429
+ return debug;
430
+ }
431
+
432
+ function extend(namespace, delimiter) {
433
+ const newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);
434
+ newDebug.log = this.log;
435
+ return newDebug;
436
+ }
437
+
438
+ /**
439
+ * Enables a debug mode by namespaces. This can include modes
440
+ * separated by a colon and wildcards.
441
+ *
442
+ * @param {String} namespaces
443
+ * @api public
444
+ */
445
+ function enable(namespaces) {
446
+ createDebug.save(namespaces);
447
+ createDebug.namespaces = namespaces;
448
+
449
+ createDebug.names = [];
450
+ createDebug.skips = [];
451
+
452
+ let i;
453
+ const split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/);
454
+ const len = split.length;
455
+
456
+ for (i = 0; i < len; i++) {
457
+ if (!split[i]) {
458
+ // ignore empty strings
459
+ continue;
460
+ }
461
+
462
+ namespaces = split[i].replace(/\*/g, '.*?');
463
+
464
+ if (namespaces[0] === '-') {
465
+ createDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$'));
466
+ } else {
467
+ createDebug.names.push(new RegExp('^' + namespaces + '$'));
468
+ }
469
+ }
470
+ }
471
+
472
+ /**
473
+ * Disable debug output.
474
+ *
475
+ * @return {String} namespaces
476
+ * @api public
477
+ */
478
+ function disable() {
479
+ const namespaces = [
480
+ ...createDebug.names.map(toNamespace),
481
+ ...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)
482
+ ].join(',');
483
+ createDebug.enable('');
484
+ return namespaces;
485
+ }
486
+
487
+ /**
488
+ * Returns true if the given mode name is enabled, false otherwise.
489
+ *
490
+ * @param {String} name
491
+ * @return {Boolean}
492
+ * @api public
493
+ */
494
+ function enabled(name) {
495
+ if (name[name.length - 1] === '*') {
496
+ return true;
497
+ }
498
+
499
+ let i;
500
+ let len;
501
+
502
+ for (i = 0, len = createDebug.skips.length; i < len; i++) {
503
+ if (createDebug.skips[i].test(name)) {
504
+ return false;
505
+ }
506
+ }
507
+
508
+ for (i = 0, len = createDebug.names.length; i < len; i++) {
509
+ if (createDebug.names[i].test(name)) {
510
+ return true;
511
+ }
512
+ }
513
+
514
+ return false;
515
+ }
516
+
517
+ /**
518
+ * Convert regexp to namespace
519
+ *
520
+ * @param {RegExp} regxep
521
+ * @return {String} namespace
522
+ * @api private
523
+ */
524
+ function toNamespace(regexp) {
525
+ return regexp.toString()
526
+ .substring(2, regexp.toString().length - 2)
527
+ .replace(/\.\*\?$/, '*');
528
+ }
529
+
530
+ /**
531
+ * Coerce `val`.
532
+ *
533
+ * @param {Mixed} val
534
+ * @return {Mixed}
535
+ * @api private
536
+ */
537
+ function coerce(val) {
538
+ if (val instanceof Error) {
539
+ return val.stack || val.message;
540
+ }
541
+ return val;
542
+ }
543
+
544
+ /**
545
+ * XXX DO NOT USE. This is a temporary stub function.
546
+ * XXX It WILL be removed in the next major release.
547
+ */
548
+ function destroy() {
549
+ console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');
550
+ }
551
+
552
+ createDebug.enable(createDebug.load());
553
+
554
+ return createDebug;
555
+ }
556
+
557
+ module.exports = setup;
558
+
559
+
560
+ /***/ }),
561
+
562
+ /***/ 92156:
563
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
564
+
565
+ /**
566
+ * Detect Electron renderer / nwjs process, which is node, but we should
567
+ * treat as a browser.
568
+ */
569
+
570
+ if (typeof process === 'undefined' || process.type === 'renderer' || false === true || process.__nwjs) {
571
+ module.exports = __webpack_require__(60012);
572
+ } else {
573
+ module.exports = __webpack_require__(94342);
574
+ }
575
+
576
+
577
+ /***/ }),
578
+
579
+ /***/ 94342:
580
+ /***/ ((module, exports, __webpack_require__) => {
581
+
582
+ /**
583
+ * Module dependencies.
584
+ */
585
+
586
+ const tty = __webpack_require__(76224);
587
+ const util = __webpack_require__(73837);
588
+
589
+ /**
590
+ * This is the Node.js implementation of `debug()`.
591
+ */
592
+
593
+ exports.init = init;
594
+ exports.log = log;
595
+ exports.formatArgs = formatArgs;
596
+ exports.save = save;
597
+ exports.load = load;
598
+ exports.useColors = useColors;
599
+ exports.destroy = util.deprecate(
600
+ () => {},
601
+ 'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'
602
+ );
603
+
604
+ /**
605
+ * Colors.
606
+ */
607
+
608
+ exports.colors = [6, 2, 3, 4, 5, 1];
609
+
610
+ try {
611
+ // Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)
612
+ // eslint-disable-next-line import/no-extraneous-dependencies
613
+ const supportsColor = __webpack_require__(43297);
614
+
615
+ if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {
616
+ exports.colors = [
617
+ 20,
618
+ 21,
619
+ 26,
620
+ 27,
621
+ 32,
622
+ 33,
623
+ 38,
624
+ 39,
625
+ 40,
626
+ 41,
627
+ 42,
628
+ 43,
629
+ 44,
630
+ 45,
631
+ 56,
632
+ 57,
633
+ 62,
634
+ 63,
635
+ 68,
636
+ 69,
637
+ 74,
638
+ 75,
639
+ 76,
640
+ 77,
641
+ 78,
642
+ 79,
643
+ 80,
644
+ 81,
645
+ 92,
646
+ 93,
647
+ 98,
648
+ 99,
649
+ 112,
650
+ 113,
651
+ 128,
652
+ 129,
653
+ 134,
654
+ 135,
655
+ 148,
656
+ 149,
657
+ 160,
658
+ 161,
659
+ 162,
660
+ 163,
661
+ 164,
662
+ 165,
663
+ 166,
664
+ 167,
665
+ 168,
666
+ 169,
667
+ 170,
668
+ 171,
669
+ 172,
670
+ 173,
671
+ 178,
672
+ 179,
673
+ 184,
674
+ 185,
675
+ 196,
676
+ 197,
677
+ 198,
678
+ 199,
679
+ 200,
680
+ 201,
681
+ 202,
682
+ 203,
683
+ 204,
684
+ 205,
685
+ 206,
686
+ 207,
687
+ 208,
688
+ 209,
689
+ 214,
690
+ 215,
691
+ 220,
692
+ 221
693
+ ];
694
+ }
695
+ } catch (error) {
696
+ // Swallow - we only care if `supports-color` is available; it doesn't have to be.
697
+ }
698
+
699
+ /**
700
+ * Build up the default `inspectOpts` object from the environment variables.
701
+ *
702
+ * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js
703
+ */
704
+
705
+ exports.inspectOpts = Object.keys(process.env).filter(key => {
706
+ return /^debug_/i.test(key);
707
+ }).reduce((obj, key) => {
708
+ // Camel-case
709
+ const prop = key
710
+ .substring(6)
711
+ .toLowerCase()
712
+ .replace(/_([a-z])/g, (_, k) => {
713
+ return k.toUpperCase();
714
+ });
715
+
716
+ // Coerce string value into JS value
717
+ let val = process.env[key];
718
+ if (/^(yes|on|true|enabled)$/i.test(val)) {
719
+ val = true;
720
+ } else if (/^(no|off|false|disabled)$/i.test(val)) {
721
+ val = false;
722
+ } else if (val === 'null') {
723
+ val = null;
724
+ } else {
725
+ val = Number(val);
726
+ }
727
+
728
+ obj[prop] = val;
729
+ return obj;
730
+ }, {});
731
+
732
+ /**
733
+ * Is stdout a TTY? Colored output is enabled when `true`.
734
+ */
735
+
736
+ function useColors() {
737
+ return 'colors' in exports.inspectOpts ?
738
+ Boolean(exports.inspectOpts.colors) :
739
+ tty.isatty(process.stderr.fd);
740
+ }
741
+
742
+ /**
743
+ * Adds ANSI color escape codes if enabled.
744
+ *
745
+ * @api public
746
+ */
747
+
748
+ function formatArgs(args) {
749
+ const {namespace: name, useColors} = this;
750
+
751
+ if (useColors) {
752
+ const c = this.color;
753
+ const colorCode = '\u001B[3' + (c < 8 ? c : '8;5;' + c);
754
+ const prefix = ` ${colorCode};1m${name} \u001B[0m`;
755
+
756
+ args[0] = prefix + args[0].split('\n').join('\n' + prefix);
757
+ args.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\u001B[0m');
758
+ } else {
759
+ args[0] = getDate() + name + ' ' + args[0];
760
+ }
761
+ }
762
+
763
+ function getDate() {
764
+ if (exports.inspectOpts.hideDate) {
765
+ return '';
766
+ }
767
+ return new Date().toISOString() + ' ';
768
+ }
769
+
770
+ /**
771
+ * Invokes `util.format()` with the specified arguments and writes to stderr.
772
+ */
773
+
774
+ function log(...args) {
775
+ return process.stderr.write(util.format(...args) + '\n');
776
+ }
777
+
778
+ /**
779
+ * Save `namespaces`.
780
+ *
781
+ * @param {String} namespaces
782
+ * @api private
783
+ */
784
+ function save(namespaces) {
785
+ if (namespaces) {
786
+ process.env.DEBUG = namespaces;
787
+ } else {
788
+ // If you set a process.env field to null or undefined, it gets cast to the
789
+ // string 'null' or 'undefined'. Just delete instead.
790
+ delete process.env.DEBUG;
791
+ }
792
+ }
793
+
794
+ /**
795
+ * Load `namespaces`.
796
+ *
797
+ * @return {String} returns the previously persisted debug modes
798
+ * @api private
799
+ */
800
+
801
+ function load() {
802
+ return process.env.DEBUG;
803
+ }
804
+
805
+ /**
806
+ * Init logic for `debug` instances.
807
+ *
808
+ * Create a new `inspectOpts` object in case `useColors` is set
809
+ * differently for a particular `debug` instance.
810
+ */
811
+
812
+ function init(debug) {
813
+ debug.inspectOpts = {};
814
+
815
+ const keys = Object.keys(exports.inspectOpts);
816
+ for (let i = 0; i < keys.length; i++) {
817
+ debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];
818
+ }
819
+ }
820
+
821
+ module.exports = __webpack_require__(88788)(exports);
822
+
823
+ const {formatters} = module.exports;
824
+
825
+ /**
826
+ * Map %o to `util.inspect()`, all on a single line.
827
+ */
828
+
829
+ formatters.o = function (v) {
830
+ this.inspectOpts.colors = this.useColors;
831
+ return util.inspect(v, this.inspectOpts)
832
+ .split('\n')
833
+ .map(str => str.trim())
834
+ .join(' ');
835
+ };
836
+
837
+ /**
838
+ * Map %O to `util.inspect()`, allowing multiple lines if needed.
839
+ */
840
+
841
+ formatters.O = function (v) {
842
+ this.inspectOpts.colors = this.useColors;
843
+ return util.inspect(v, this.inspectOpts);
844
+ };
845
+
846
+
847
+ /***/ }),
848
+
849
+ /***/ 13764:
850
+ /***/ ((module) => {
851
+
852
+ "use strict";
853
+
854
+ module.exports = (flag, argv) => {
855
+ argv = argv || process.argv;
856
+ const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
857
+ const pos = argv.indexOf(prefix + flag);
858
+ const terminatorPos = argv.indexOf('--');
859
+ return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos);
860
+ };
861
+
862
+
863
+ /***/ }),
864
+
865
+ /***/ 65135:
866
+ /***/ ((module) => {
867
+
868
+ /**
869
+ * Helpers.
870
+ */
871
+
872
+ var s = 1000;
873
+ var m = s * 60;
874
+ var h = m * 60;
875
+ var d = h * 24;
876
+ var w = d * 7;
877
+ var y = d * 365.25;
878
+
879
+ /**
880
+ * Parse or format the given `val`.
881
+ *
882
+ * Options:
883
+ *
884
+ * - `long` verbose formatting [false]
885
+ *
886
+ * @param {String|Number} val
887
+ * @param {Object} [options]
888
+ * @throws {Error} throw an error if val is not a non-empty string or a number
889
+ * @return {String|Number}
890
+ * @api public
891
+ */
892
+
893
+ module.exports = function(val, options) {
894
+ options = options || {};
895
+ var type = typeof val;
896
+ if (type === 'string' && val.length > 0) {
897
+ return parse(val);
898
+ } else if (type === 'number' && isFinite(val)) {
899
+ return options.long ? fmtLong(val) : fmtShort(val);
900
+ }
901
+ throw new Error(
902
+ 'val is not a non-empty string or a valid number. val=' +
903
+ JSON.stringify(val)
904
+ );
905
+ };
906
+
907
+ /**
908
+ * Parse the given `str` and return milliseconds.
909
+ *
910
+ * @param {String} str
911
+ * @return {Number}
912
+ * @api private
913
+ */
914
+
915
+ function parse(str) {
916
+ str = String(str);
917
+ if (str.length > 100) {
918
+ return;
919
+ }
920
+ var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(
921
+ str
922
+ );
923
+ if (!match) {
924
+ return;
925
+ }
926
+ var n = parseFloat(match[1]);
927
+ var type = (match[2] || 'ms').toLowerCase();
928
+ switch (type) {
929
+ case 'years':
930
+ case 'year':
931
+ case 'yrs':
932
+ case 'yr':
933
+ case 'y':
934
+ return n * y;
935
+ case 'weeks':
936
+ case 'week':
937
+ case 'w':
938
+ return n * w;
939
+ case 'days':
940
+ case 'day':
941
+ case 'd':
942
+ return n * d;
943
+ case 'hours':
944
+ case 'hour':
945
+ case 'hrs':
946
+ case 'hr':
947
+ case 'h':
948
+ return n * h;
949
+ case 'minutes':
950
+ case 'minute':
951
+ case 'mins':
952
+ case 'min':
953
+ case 'm':
954
+ return n * m;
955
+ case 'seconds':
956
+ case 'second':
957
+ case 'secs':
958
+ case 'sec':
959
+ case 's':
960
+ return n * s;
961
+ case 'milliseconds':
962
+ case 'millisecond':
963
+ case 'msecs':
964
+ case 'msec':
965
+ case 'ms':
966
+ return n;
967
+ default:
968
+ return undefined;
969
+ }
970
+ }
971
+
972
+ /**
973
+ * Short format for `ms`.
974
+ *
975
+ * @param {Number} ms
976
+ * @return {String}
977
+ * @api private
978
+ */
979
+
980
+ function fmtShort(ms) {
981
+ var msAbs = Math.abs(ms);
982
+ if (msAbs >= d) {
983
+ return Math.round(ms / d) + 'd';
984
+ }
985
+ if (msAbs >= h) {
986
+ return Math.round(ms / h) + 'h';
987
+ }
988
+ if (msAbs >= m) {
989
+ return Math.round(ms / m) + 'm';
990
+ }
991
+ if (msAbs >= s) {
992
+ return Math.round(ms / s) + 's';
993
+ }
994
+ return ms + 'ms';
995
+ }
996
+
997
+ /**
998
+ * Long format for `ms`.
999
+ *
1000
+ * @param {Number} ms
1001
+ * @return {String}
1002
+ * @api private
1003
+ */
1004
+
1005
+ function fmtLong(ms) {
1006
+ var msAbs = Math.abs(ms);
1007
+ if (msAbs >= d) {
1008
+ return plural(ms, msAbs, d, 'day');
1009
+ }
1010
+ if (msAbs >= h) {
1011
+ return plural(ms, msAbs, h, 'hour');
1012
+ }
1013
+ if (msAbs >= m) {
1014
+ return plural(ms, msAbs, m, 'minute');
1015
+ }
1016
+ if (msAbs >= s) {
1017
+ return plural(ms, msAbs, s, 'second');
1018
+ }
1019
+ return ms + ' ms';
1020
+ }
1021
+
1022
+ /**
1023
+ * Pluralization helper.
1024
+ */
1025
+
1026
+ function plural(ms, msAbs, n, name) {
1027
+ var isPlural = msAbs >= n * 1.5;
1028
+ return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');
1029
+ }
1030
+
1031
+
1032
+ /***/ }),
1033
+
1034
+ /***/ 43297:
1035
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
1036
+
1037
+ "use strict";
1038
+
1039
+ const os = __webpack_require__(22037);
1040
+ const hasFlag = __webpack_require__(13764);
1041
+
1042
+ const env = process.env;
1043
+
1044
+ let forceColor;
1045
+ if (hasFlag('no-color') ||
1046
+ hasFlag('no-colors') ||
1047
+ hasFlag('color=false')) {
1048
+ forceColor = false;
1049
+ } else if (hasFlag('color') ||
1050
+ hasFlag('colors') ||
1051
+ hasFlag('color=true') ||
1052
+ hasFlag('color=always')) {
1053
+ forceColor = true;
1054
+ }
1055
+ if ('FORCE_COLOR' in env) {
1056
+ forceColor = env.FORCE_COLOR.length === 0 || parseInt(env.FORCE_COLOR, 10) !== 0;
1057
+ }
1058
+
1059
+ function translateLevel(level) {
1060
+ if (level === 0) {
1061
+ return false;
1062
+ }
1063
+
1064
+ return {
1065
+ level,
1066
+ hasBasic: true,
1067
+ has256: level >= 2,
1068
+ has16m: level >= 3
1069
+ };
1070
+ }
1071
+
1072
+ function supportsColor(stream) {
1073
+ if (forceColor === false) {
1074
+ return 0;
1075
+ }
1076
+
1077
+ if (hasFlag('color=16m') ||
1078
+ hasFlag('color=full') ||
1079
+ hasFlag('color=truecolor')) {
1080
+ return 3;
1081
+ }
1082
+
1083
+ if (hasFlag('color=256')) {
1084
+ return 2;
1085
+ }
1086
+
1087
+ if (stream && !stream.isTTY && forceColor !== true) {
1088
+ return 0;
1089
+ }
1090
+
1091
+ const min = forceColor ? 1 : 0;
1092
+
1093
+ if (process.platform === 'win32') {
1094
+ // Node.js 7.5.0 is the first version of Node.js to include a patch to
1095
+ // libuv that enables 256 color output on Windows. Anything earlier and it
1096
+ // won't work. However, here we target Node.js 8 at minimum as it is an LTS
1097
+ // release, and Node.js 7 is not. Windows 10 build 10586 is the first Windows
1098
+ // release that supports 256 colors. Windows 10 build 14931 is the first release
1099
+ // that supports 16m/TrueColor.
1100
+ const osRelease = os.release().split('.');
1101
+ if (
1102
+ Number(process.versions.node.split('.')[0]) >= 8 &&
1103
+ Number(osRelease[0]) >= 10 &&
1104
+ Number(osRelease[2]) >= 10586
1105
+ ) {
1106
+ return Number(osRelease[2]) >= 14931 ? 3 : 2;
1107
+ }
1108
+
1109
+ return 1;
1110
+ }
1111
+
1112
+ if ('CI' in env) {
1113
+ if (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI'].some(sign => sign in env) || env.CI_NAME === 'codeship') {
1114
+ return 1;
1115
+ }
1116
+
1117
+ return min;
1118
+ }
1119
+
1120
+ if ('TEAMCITY_VERSION' in env) {
1121
+ return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
1122
+ }
1123
+
1124
+ if (env.COLORTERM === 'truecolor') {
1125
+ return 3;
1126
+ }
1127
+
1128
+ if ('TERM_PROGRAM' in env) {
1129
+ const version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);
1130
+
1131
+ switch (env.TERM_PROGRAM) {
1132
+ case 'iTerm.app':
1133
+ return version >= 3 ? 3 : 2;
1134
+ case 'Apple_Terminal':
1135
+ return 2;
1136
+ // No default
1137
+ }
1138
+ }
1139
+
1140
+ if (/-256(color)?$/i.test(env.TERM)) {
1141
+ return 2;
1142
+ }
1143
+
1144
+ if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
1145
+ return 1;
1146
+ }
1147
+
1148
+ if ('COLORTERM' in env) {
1149
+ return 1;
1150
+ }
1151
+
1152
+ if (env.TERM === 'dumb') {
1153
+ return min;
1154
+ }
1155
+
1156
+ return min;
1157
+ }
1158
+
1159
+ function getSupportLevel(stream) {
1160
+ const level = supportsColor(stream);
1161
+ return translateLevel(level);
1162
+ }
1163
+
1164
+ module.exports = {
1165
+ supportsColor: getSupportLevel,
1166
+ stdout: getSupportLevel(process.stdout),
1167
+ stderr: getSupportLevel(process.stderr)
1168
+ };
1169
+
1170
+
1171
+ /***/ }),
1172
+
5
1173
  /***/ 43210:
6
1174
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
7
1175
 
@@ -18051,7 +19219,7 @@ module.exports = function () {
18051
19219
  if (!debug) {
18052
19220
  try {
18053
19221
  /* eslint global-require: off */
18054
- debug = __webpack_require__(96974)("follow-redirects");
19222
+ debug = __webpack_require__(92156)("follow-redirects");
18055
19223
  }
18056
19224
  catch (error) { /* */ }
18057
19225
  if (typeof debug !== "function") {
@@ -32861,7 +34029,7 @@ exports.isUndefinedCodePoint = isUndefinedCodePoint;
32861
34029
  "use strict";
32862
34030
 
32863
34031
  Object.defineProperty(exports, "__esModule", ({ value: true }));
32864
- exports.parseFragment = exports.parse = exports.TokenizerMode = exports.Tokenizer = exports.Token = exports.html = exports.foreignContent = exports.serializeOuter = exports.serialize = exports.Parser = exports.defaultTreeAdapter = void 0;
34032
+ exports.parseFragment = exports.parse = exports.TokenizerMode = exports.Tokenizer = exports.Token = exports.html = exports.foreignContent = exports.ErrorCodes = exports.serializeOuter = exports.serialize = exports.Parser = exports.defaultTreeAdapter = void 0;
32865
34033
  const index_js_1 = __webpack_require__(39716);
32866
34034
  var default_js_1 = __webpack_require__(78269);
32867
34035
  Object.defineProperty(exports, "defaultTreeAdapter", ({ enumerable: true, get: function () { return default_js_1.defaultTreeAdapter; } }));
@@ -32870,6 +34038,8 @@ Object.defineProperty(exports, "Parser", ({ enumerable: true, get: function () {
32870
34038
  var index_js_3 = __webpack_require__(94274);
32871
34039
  Object.defineProperty(exports, "serialize", ({ enumerable: true, get: function () { return index_js_3.serialize; } }));
32872
34040
  Object.defineProperty(exports, "serializeOuter", ({ enumerable: true, get: function () { return index_js_3.serializeOuter; } }));
34041
+ var error_codes_js_1 = __webpack_require__(61123);
34042
+ Object.defineProperty(exports, "ErrorCodes", ({ enumerable: true, get: function () { return error_codes_js_1.ERR; } }));
32873
34043
  /** @internal */
32874
34044
  exports.foreignContent = __webpack_require__(63345);
32875
34045
  /** @internal */
@@ -33498,51 +34668,63 @@ class Parser {
33498
34668
  for (let i = this.openElements.stackTop; i >= 0; i--) {
33499
34669
  //Insertion mode reset map
33500
34670
  switch (i === 0 && this.fragmentContext ? this.fragmentContextID : this.openElements.tagIDs[i]) {
33501
- case html_js_1.TAG_ID.TR:
34671
+ case html_js_1.TAG_ID.TR: {
33502
34672
  this.insertionMode = InsertionMode.IN_ROW;
33503
34673
  return;
34674
+ }
33504
34675
  case html_js_1.TAG_ID.TBODY:
33505
34676
  case html_js_1.TAG_ID.THEAD:
33506
- case html_js_1.TAG_ID.TFOOT:
34677
+ case html_js_1.TAG_ID.TFOOT: {
33507
34678
  this.insertionMode = InsertionMode.IN_TABLE_BODY;
33508
34679
  return;
33509
- case html_js_1.TAG_ID.CAPTION:
34680
+ }
34681
+ case html_js_1.TAG_ID.CAPTION: {
33510
34682
  this.insertionMode = InsertionMode.IN_CAPTION;
33511
34683
  return;
33512
- case html_js_1.TAG_ID.COLGROUP:
34684
+ }
34685
+ case html_js_1.TAG_ID.COLGROUP: {
33513
34686
  this.insertionMode = InsertionMode.IN_COLUMN_GROUP;
33514
34687
  return;
33515
- case html_js_1.TAG_ID.TABLE:
34688
+ }
34689
+ case html_js_1.TAG_ID.TABLE: {
33516
34690
  this.insertionMode = InsertionMode.IN_TABLE;
33517
34691
  return;
33518
- case html_js_1.TAG_ID.BODY:
34692
+ }
34693
+ case html_js_1.TAG_ID.BODY: {
33519
34694
  this.insertionMode = InsertionMode.IN_BODY;
33520
34695
  return;
33521
- case html_js_1.TAG_ID.FRAMESET:
34696
+ }
34697
+ case html_js_1.TAG_ID.FRAMESET: {
33522
34698
  this.insertionMode = InsertionMode.IN_FRAMESET;
33523
34699
  return;
33524
- case html_js_1.TAG_ID.SELECT:
34700
+ }
34701
+ case html_js_1.TAG_ID.SELECT: {
33525
34702
  this._resetInsertionModeForSelect(i);
33526
34703
  return;
33527
- case html_js_1.TAG_ID.TEMPLATE:
34704
+ }
34705
+ case html_js_1.TAG_ID.TEMPLATE: {
33528
34706
  this.insertionMode = this.tmplInsertionModeStack[0];
33529
34707
  return;
33530
- case html_js_1.TAG_ID.HTML:
34708
+ }
34709
+ case html_js_1.TAG_ID.HTML: {
33531
34710
  this.insertionMode = this.headElement ? InsertionMode.AFTER_HEAD : InsertionMode.BEFORE_HEAD;
33532
34711
  return;
34712
+ }
33533
34713
  case html_js_1.TAG_ID.TD:
33534
- case html_js_1.TAG_ID.TH:
34714
+ case html_js_1.TAG_ID.TH: {
33535
34715
  if (i > 0) {
33536
34716
  this.insertionMode = InsertionMode.IN_CELL;
33537
34717
  return;
33538
34718
  }
33539
34719
  break;
33540
- case html_js_1.TAG_ID.HEAD:
34720
+ }
34721
+ case html_js_1.TAG_ID.HEAD: {
33541
34722
  if (i > 0) {
33542
34723
  this.insertionMode = InsertionMode.IN_HEAD;
33543
34724
  return;
33544
34725
  }
33545
34726
  break;
34727
+ }
33546
34728
  }
33547
34729
  }
33548
34730
  this.insertionMode = InsertionMode.IN_BODY;
@@ -33573,11 +34755,12 @@ class Parser {
33573
34755
  for (let i = this.openElements.stackTop; i >= 0; i--) {
33574
34756
  const openElement = this.openElements.items[i];
33575
34757
  switch (this.openElements.tagIDs[i]) {
33576
- case html_js_1.TAG_ID.TEMPLATE:
34758
+ case html_js_1.TAG_ID.TEMPLATE: {
33577
34759
  if (this.treeAdapter.getNamespaceURI(openElement) === html_js_1.NS.HTML) {
33578
34760
  return { parent: this.treeAdapter.getTemplateContent(openElement), beforeElement: null };
33579
34761
  }
33580
34762
  break;
34763
+ }
33581
34764
  case html_js_1.TAG_ID.TABLE: {
33582
34765
  const parent = this.treeAdapter.getParentNode(openElement);
33583
34766
  if (parent) {
@@ -33612,52 +34795,65 @@ class Parser {
33612
34795
  return;
33613
34796
  }
33614
34797
  switch (this.insertionMode) {
33615
- case InsertionMode.INITIAL:
34798
+ case InsertionMode.INITIAL: {
33616
34799
  tokenInInitialMode(this, token);
33617
34800
  break;
33618
- case InsertionMode.BEFORE_HTML:
34801
+ }
34802
+ case InsertionMode.BEFORE_HTML: {
33619
34803
  tokenBeforeHtml(this, token);
33620
34804
  break;
33621
- case InsertionMode.BEFORE_HEAD:
34805
+ }
34806
+ case InsertionMode.BEFORE_HEAD: {
33622
34807
  tokenBeforeHead(this, token);
33623
34808
  break;
33624
- case InsertionMode.IN_HEAD:
34809
+ }
34810
+ case InsertionMode.IN_HEAD: {
33625
34811
  tokenInHead(this, token);
33626
34812
  break;
33627
- case InsertionMode.IN_HEAD_NO_SCRIPT:
34813
+ }
34814
+ case InsertionMode.IN_HEAD_NO_SCRIPT: {
33628
34815
  tokenInHeadNoScript(this, token);
33629
34816
  break;
33630
- case InsertionMode.AFTER_HEAD:
34817
+ }
34818
+ case InsertionMode.AFTER_HEAD: {
33631
34819
  tokenAfterHead(this, token);
33632
34820
  break;
34821
+ }
33633
34822
  case InsertionMode.IN_BODY:
33634
34823
  case InsertionMode.IN_CAPTION:
33635
34824
  case InsertionMode.IN_CELL:
33636
- case InsertionMode.IN_TEMPLATE:
34825
+ case InsertionMode.IN_TEMPLATE: {
33637
34826
  characterInBody(this, token);
33638
34827
  break;
34828
+ }
33639
34829
  case InsertionMode.TEXT:
33640
34830
  case InsertionMode.IN_SELECT:
33641
- case InsertionMode.IN_SELECT_IN_TABLE:
34831
+ case InsertionMode.IN_SELECT_IN_TABLE: {
33642
34832
  this._insertCharacters(token);
33643
34833
  break;
34834
+ }
33644
34835
  case InsertionMode.IN_TABLE:
33645
34836
  case InsertionMode.IN_TABLE_BODY:
33646
- case InsertionMode.IN_ROW:
34837
+ case InsertionMode.IN_ROW: {
33647
34838
  characterInTable(this, token);
33648
34839
  break;
33649
- case InsertionMode.IN_TABLE_TEXT:
34840
+ }
34841
+ case InsertionMode.IN_TABLE_TEXT: {
33650
34842
  characterInTableText(this, token);
33651
34843
  break;
33652
- case InsertionMode.IN_COLUMN_GROUP:
34844
+ }
34845
+ case InsertionMode.IN_COLUMN_GROUP: {
33653
34846
  tokenInColumnGroup(this, token);
33654
34847
  break;
33655
- case InsertionMode.AFTER_BODY:
34848
+ }
34849
+ case InsertionMode.AFTER_BODY: {
33656
34850
  tokenAfterBody(this, token);
33657
34851
  break;
33658
- case InsertionMode.AFTER_AFTER_BODY:
34852
+ }
34853
+ case InsertionMode.AFTER_AFTER_BODY: {
33659
34854
  tokenAfterAfterBody(this, token);
33660
34855
  break;
34856
+ }
33661
34857
  default:
33662
34858
  // Do nothing
33663
34859
  }
@@ -33669,41 +34865,52 @@ class Parser {
33669
34865
  return;
33670
34866
  }
33671
34867
  switch (this.insertionMode) {
33672
- case InsertionMode.INITIAL:
34868
+ case InsertionMode.INITIAL: {
33673
34869
  tokenInInitialMode(this, token);
33674
34870
  break;
33675
- case InsertionMode.BEFORE_HTML:
34871
+ }
34872
+ case InsertionMode.BEFORE_HTML: {
33676
34873
  tokenBeforeHtml(this, token);
33677
34874
  break;
33678
- case InsertionMode.BEFORE_HEAD:
34875
+ }
34876
+ case InsertionMode.BEFORE_HEAD: {
33679
34877
  tokenBeforeHead(this, token);
33680
34878
  break;
33681
- case InsertionMode.IN_HEAD:
34879
+ }
34880
+ case InsertionMode.IN_HEAD: {
33682
34881
  tokenInHead(this, token);
33683
34882
  break;
33684
- case InsertionMode.IN_HEAD_NO_SCRIPT:
34883
+ }
34884
+ case InsertionMode.IN_HEAD_NO_SCRIPT: {
33685
34885
  tokenInHeadNoScript(this, token);
33686
34886
  break;
33687
- case InsertionMode.AFTER_HEAD:
34887
+ }
34888
+ case InsertionMode.AFTER_HEAD: {
33688
34889
  tokenAfterHead(this, token);
33689
34890
  break;
33690
- case InsertionMode.TEXT:
34891
+ }
34892
+ case InsertionMode.TEXT: {
33691
34893
  this._insertCharacters(token);
33692
34894
  break;
34895
+ }
33693
34896
  case InsertionMode.IN_TABLE:
33694
34897
  case InsertionMode.IN_TABLE_BODY:
33695
- case InsertionMode.IN_ROW:
34898
+ case InsertionMode.IN_ROW: {
33696
34899
  characterInTable(this, token);
33697
34900
  break;
33698
- case InsertionMode.IN_COLUMN_GROUP:
34901
+ }
34902
+ case InsertionMode.IN_COLUMN_GROUP: {
33699
34903
  tokenInColumnGroup(this, token);
33700
34904
  break;
33701
- case InsertionMode.AFTER_BODY:
34905
+ }
34906
+ case InsertionMode.AFTER_BODY: {
33702
34907
  tokenAfterBody(this, token);
33703
34908
  break;
33704
- case InsertionMode.AFTER_AFTER_BODY:
34909
+ }
34910
+ case InsertionMode.AFTER_AFTER_BODY: {
33705
34911
  tokenAfterAfterBody(this, token);
33706
34912
  break;
34913
+ }
33707
34914
  default:
33708
34915
  // Do nothing
33709
34916
  }
@@ -33732,19 +34939,23 @@ class Parser {
33732
34939
  case InsertionMode.IN_SELECT_IN_TABLE:
33733
34940
  case InsertionMode.IN_TEMPLATE:
33734
34941
  case InsertionMode.IN_FRAMESET:
33735
- case InsertionMode.AFTER_FRAMESET:
34942
+ case InsertionMode.AFTER_FRAMESET: {
33736
34943
  appendComment(this, token);
33737
34944
  break;
33738
- case InsertionMode.IN_TABLE_TEXT:
34945
+ }
34946
+ case InsertionMode.IN_TABLE_TEXT: {
33739
34947
  tokenInTableText(this, token);
33740
34948
  break;
33741
- case InsertionMode.AFTER_BODY:
34949
+ }
34950
+ case InsertionMode.AFTER_BODY: {
33742
34951
  appendCommentToRootHtmlElement(this, token);
33743
34952
  break;
34953
+ }
33744
34954
  case InsertionMode.AFTER_AFTER_BODY:
33745
- case InsertionMode.AFTER_AFTER_FRAMESET:
34955
+ case InsertionMode.AFTER_AFTER_FRAMESET: {
33746
34956
  appendCommentToDocument(this, token);
33747
34957
  break;
34958
+ }
33748
34959
  default:
33749
34960
  // Do nothing
33750
34961
  }
@@ -33752,18 +34963,21 @@ class Parser {
33752
34963
  onDoctype(token) {
33753
34964
  this.skipNextNewLine = false;
33754
34965
  switch (this.insertionMode) {
33755
- case InsertionMode.INITIAL:
34966
+ case InsertionMode.INITIAL: {
33756
34967
  doctypeInInitialMode(this, token);
33757
34968
  break;
34969
+ }
33758
34970
  case InsertionMode.BEFORE_HEAD:
33759
34971
  case InsertionMode.IN_HEAD:
33760
34972
  case InsertionMode.IN_HEAD_NO_SCRIPT:
33761
- case InsertionMode.AFTER_HEAD:
34973
+ case InsertionMode.AFTER_HEAD: {
33762
34974
  this._err(token, error_codes_js_1.ERR.misplacedDoctype);
33763
34975
  break;
33764
- case InsertionMode.IN_TABLE_TEXT:
34976
+ }
34977
+ case InsertionMode.IN_TABLE_TEXT: {
33765
34978
  tokenInTableText(this, token);
33766
34979
  break;
34980
+ }
33767
34981
  default:
33768
34982
  // Do nothing
33769
34983
  }
@@ -33796,72 +35010,94 @@ class Parser {
33796
35010
  }
33797
35011
  _startTagOutsideForeignContent(token) {
33798
35012
  switch (this.insertionMode) {
33799
- case InsertionMode.INITIAL:
35013
+ case InsertionMode.INITIAL: {
33800
35014
  tokenInInitialMode(this, token);
33801
35015
  break;
33802
- case InsertionMode.BEFORE_HTML:
35016
+ }
35017
+ case InsertionMode.BEFORE_HTML: {
33803
35018
  startTagBeforeHtml(this, token);
33804
35019
  break;
33805
- case InsertionMode.BEFORE_HEAD:
35020
+ }
35021
+ case InsertionMode.BEFORE_HEAD: {
33806
35022
  startTagBeforeHead(this, token);
33807
35023
  break;
33808
- case InsertionMode.IN_HEAD:
35024
+ }
35025
+ case InsertionMode.IN_HEAD: {
33809
35026
  startTagInHead(this, token);
33810
35027
  break;
33811
- case InsertionMode.IN_HEAD_NO_SCRIPT:
35028
+ }
35029
+ case InsertionMode.IN_HEAD_NO_SCRIPT: {
33812
35030
  startTagInHeadNoScript(this, token);
33813
35031
  break;
33814
- case InsertionMode.AFTER_HEAD:
35032
+ }
35033
+ case InsertionMode.AFTER_HEAD: {
33815
35034
  startTagAfterHead(this, token);
33816
35035
  break;
33817
- case InsertionMode.IN_BODY:
35036
+ }
35037
+ case InsertionMode.IN_BODY: {
33818
35038
  startTagInBody(this, token);
33819
35039
  break;
33820
- case InsertionMode.IN_TABLE:
35040
+ }
35041
+ case InsertionMode.IN_TABLE: {
33821
35042
  startTagInTable(this, token);
33822
35043
  break;
33823
- case InsertionMode.IN_TABLE_TEXT:
35044
+ }
35045
+ case InsertionMode.IN_TABLE_TEXT: {
33824
35046
  tokenInTableText(this, token);
33825
35047
  break;
33826
- case InsertionMode.IN_CAPTION:
35048
+ }
35049
+ case InsertionMode.IN_CAPTION: {
33827
35050
  startTagInCaption(this, token);
33828
35051
  break;
33829
- case InsertionMode.IN_COLUMN_GROUP:
35052
+ }
35053
+ case InsertionMode.IN_COLUMN_GROUP: {
33830
35054
  startTagInColumnGroup(this, token);
33831
35055
  break;
33832
- case InsertionMode.IN_TABLE_BODY:
35056
+ }
35057
+ case InsertionMode.IN_TABLE_BODY: {
33833
35058
  startTagInTableBody(this, token);
33834
35059
  break;
33835
- case InsertionMode.IN_ROW:
35060
+ }
35061
+ case InsertionMode.IN_ROW: {
33836
35062
  startTagInRow(this, token);
33837
35063
  break;
33838
- case InsertionMode.IN_CELL:
35064
+ }
35065
+ case InsertionMode.IN_CELL: {
33839
35066
  startTagInCell(this, token);
33840
35067
  break;
33841
- case InsertionMode.IN_SELECT:
35068
+ }
35069
+ case InsertionMode.IN_SELECT: {
33842
35070
  startTagInSelect(this, token);
33843
35071
  break;
33844
- case InsertionMode.IN_SELECT_IN_TABLE:
35072
+ }
35073
+ case InsertionMode.IN_SELECT_IN_TABLE: {
33845
35074
  startTagInSelectInTable(this, token);
33846
35075
  break;
33847
- case InsertionMode.IN_TEMPLATE:
35076
+ }
35077
+ case InsertionMode.IN_TEMPLATE: {
33848
35078
  startTagInTemplate(this, token);
33849
35079
  break;
33850
- case InsertionMode.AFTER_BODY:
35080
+ }
35081
+ case InsertionMode.AFTER_BODY: {
33851
35082
  startTagAfterBody(this, token);
33852
35083
  break;
33853
- case InsertionMode.IN_FRAMESET:
35084
+ }
35085
+ case InsertionMode.IN_FRAMESET: {
33854
35086
  startTagInFrameset(this, token);
33855
35087
  break;
33856
- case InsertionMode.AFTER_FRAMESET:
35088
+ }
35089
+ case InsertionMode.AFTER_FRAMESET: {
33857
35090
  startTagAfterFrameset(this, token);
33858
35091
  break;
33859
- case InsertionMode.AFTER_AFTER_BODY:
35092
+ }
35093
+ case InsertionMode.AFTER_AFTER_BODY: {
33860
35094
  startTagAfterAfterBody(this, token);
33861
35095
  break;
33862
- case InsertionMode.AFTER_AFTER_FRAMESET:
35096
+ }
35097
+ case InsertionMode.AFTER_AFTER_FRAMESET: {
33863
35098
  startTagAfterAfterFrameset(this, token);
33864
35099
  break;
35100
+ }
33865
35101
  default:
33866
35102
  // Do nothing
33867
35103
  }
@@ -33878,96 +35114,124 @@ class Parser {
33878
35114
  }
33879
35115
  _endTagOutsideForeignContent(token) {
33880
35116
  switch (this.insertionMode) {
33881
- case InsertionMode.INITIAL:
35117
+ case InsertionMode.INITIAL: {
33882
35118
  tokenInInitialMode(this, token);
33883
35119
  break;
33884
- case InsertionMode.BEFORE_HTML:
35120
+ }
35121
+ case InsertionMode.BEFORE_HTML: {
33885
35122
  endTagBeforeHtml(this, token);
33886
35123
  break;
33887
- case InsertionMode.BEFORE_HEAD:
35124
+ }
35125
+ case InsertionMode.BEFORE_HEAD: {
33888
35126
  endTagBeforeHead(this, token);
33889
35127
  break;
33890
- case InsertionMode.IN_HEAD:
35128
+ }
35129
+ case InsertionMode.IN_HEAD: {
33891
35130
  endTagInHead(this, token);
33892
35131
  break;
33893
- case InsertionMode.IN_HEAD_NO_SCRIPT:
35132
+ }
35133
+ case InsertionMode.IN_HEAD_NO_SCRIPT: {
33894
35134
  endTagInHeadNoScript(this, token);
33895
35135
  break;
33896
- case InsertionMode.AFTER_HEAD:
35136
+ }
35137
+ case InsertionMode.AFTER_HEAD: {
33897
35138
  endTagAfterHead(this, token);
33898
35139
  break;
33899
- case InsertionMode.IN_BODY:
35140
+ }
35141
+ case InsertionMode.IN_BODY: {
33900
35142
  endTagInBody(this, token);
33901
35143
  break;
33902
- case InsertionMode.TEXT:
35144
+ }
35145
+ case InsertionMode.TEXT: {
33903
35146
  endTagInText(this, token);
33904
35147
  break;
33905
- case InsertionMode.IN_TABLE:
35148
+ }
35149
+ case InsertionMode.IN_TABLE: {
33906
35150
  endTagInTable(this, token);
33907
35151
  break;
33908
- case InsertionMode.IN_TABLE_TEXT:
35152
+ }
35153
+ case InsertionMode.IN_TABLE_TEXT: {
33909
35154
  tokenInTableText(this, token);
33910
35155
  break;
33911
- case InsertionMode.IN_CAPTION:
35156
+ }
35157
+ case InsertionMode.IN_CAPTION: {
33912
35158
  endTagInCaption(this, token);
33913
35159
  break;
33914
- case InsertionMode.IN_COLUMN_GROUP:
35160
+ }
35161
+ case InsertionMode.IN_COLUMN_GROUP: {
33915
35162
  endTagInColumnGroup(this, token);
33916
35163
  break;
33917
- case InsertionMode.IN_TABLE_BODY:
35164
+ }
35165
+ case InsertionMode.IN_TABLE_BODY: {
33918
35166
  endTagInTableBody(this, token);
33919
35167
  break;
33920
- case InsertionMode.IN_ROW:
35168
+ }
35169
+ case InsertionMode.IN_ROW: {
33921
35170
  endTagInRow(this, token);
33922
35171
  break;
33923
- case InsertionMode.IN_CELL:
35172
+ }
35173
+ case InsertionMode.IN_CELL: {
33924
35174
  endTagInCell(this, token);
33925
35175
  break;
33926
- case InsertionMode.IN_SELECT:
35176
+ }
35177
+ case InsertionMode.IN_SELECT: {
33927
35178
  endTagInSelect(this, token);
33928
35179
  break;
33929
- case InsertionMode.IN_SELECT_IN_TABLE:
35180
+ }
35181
+ case InsertionMode.IN_SELECT_IN_TABLE: {
33930
35182
  endTagInSelectInTable(this, token);
33931
35183
  break;
33932
- case InsertionMode.IN_TEMPLATE:
35184
+ }
35185
+ case InsertionMode.IN_TEMPLATE: {
33933
35186
  endTagInTemplate(this, token);
33934
35187
  break;
33935
- case InsertionMode.AFTER_BODY:
35188
+ }
35189
+ case InsertionMode.AFTER_BODY: {
33936
35190
  endTagAfterBody(this, token);
33937
35191
  break;
33938
- case InsertionMode.IN_FRAMESET:
35192
+ }
35193
+ case InsertionMode.IN_FRAMESET: {
33939
35194
  endTagInFrameset(this, token);
33940
35195
  break;
33941
- case InsertionMode.AFTER_FRAMESET:
35196
+ }
35197
+ case InsertionMode.AFTER_FRAMESET: {
33942
35198
  endTagAfterFrameset(this, token);
33943
35199
  break;
33944
- case InsertionMode.AFTER_AFTER_BODY:
35200
+ }
35201
+ case InsertionMode.AFTER_AFTER_BODY: {
33945
35202
  tokenAfterAfterBody(this, token);
33946
35203
  break;
35204
+ }
33947
35205
  default:
33948
35206
  // Do nothing
33949
35207
  }
33950
35208
  }
33951
35209
  onEof(token) {
33952
35210
  switch (this.insertionMode) {
33953
- case InsertionMode.INITIAL:
35211
+ case InsertionMode.INITIAL: {
33954
35212
  tokenInInitialMode(this, token);
33955
35213
  break;
33956
- case InsertionMode.BEFORE_HTML:
35214
+ }
35215
+ case InsertionMode.BEFORE_HTML: {
33957
35216
  tokenBeforeHtml(this, token);
33958
35217
  break;
33959
- case InsertionMode.BEFORE_HEAD:
35218
+ }
35219
+ case InsertionMode.BEFORE_HEAD: {
33960
35220
  tokenBeforeHead(this, token);
33961
35221
  break;
33962
- case InsertionMode.IN_HEAD:
35222
+ }
35223
+ case InsertionMode.IN_HEAD: {
33963
35224
  tokenInHead(this, token);
33964
35225
  break;
33965
- case InsertionMode.IN_HEAD_NO_SCRIPT:
35226
+ }
35227
+ case InsertionMode.IN_HEAD_NO_SCRIPT: {
33966
35228
  tokenInHeadNoScript(this, token);
33967
35229
  break;
33968
- case InsertionMode.AFTER_HEAD:
35230
+ }
35231
+ case InsertionMode.AFTER_HEAD: {
33969
35232
  tokenAfterHead(this, token);
33970
35233
  break;
35234
+ }
33971
35235
  case InsertionMode.IN_BODY:
33972
35236
  case InsertionMode.IN_TABLE:
33973
35237
  case InsertionMode.IN_CAPTION:
@@ -33976,25 +35240,30 @@ class Parser {
33976
35240
  case InsertionMode.IN_ROW:
33977
35241
  case InsertionMode.IN_CELL:
33978
35242
  case InsertionMode.IN_SELECT:
33979
- case InsertionMode.IN_SELECT_IN_TABLE:
35243
+ case InsertionMode.IN_SELECT_IN_TABLE: {
33980
35244
  eofInBody(this, token);
33981
35245
  break;
33982
- case InsertionMode.TEXT:
35246
+ }
35247
+ case InsertionMode.TEXT: {
33983
35248
  eofInText(this, token);
33984
35249
  break;
33985
- case InsertionMode.IN_TABLE_TEXT:
35250
+ }
35251
+ case InsertionMode.IN_TABLE_TEXT: {
33986
35252
  tokenInTableText(this, token);
33987
35253
  break;
33988
- case InsertionMode.IN_TEMPLATE:
35254
+ }
35255
+ case InsertionMode.IN_TEMPLATE: {
33989
35256
  eofInTemplate(this, token);
33990
35257
  break;
35258
+ }
33991
35259
  case InsertionMode.AFTER_BODY:
33992
35260
  case InsertionMode.IN_FRAMESET:
33993
35261
  case InsertionMode.AFTER_FRAMESET:
33994
35262
  case InsertionMode.AFTER_AFTER_BODY:
33995
- case InsertionMode.AFTER_AFTER_FRAMESET:
35263
+ case InsertionMode.AFTER_AFTER_FRAMESET: {
33996
35264
  stopParsing(this, token);
33997
35265
  break;
35266
+ }
33998
35267
  default:
33999
35268
  // Do nothing
34000
35269
  }
@@ -34022,26 +35291,30 @@ class Parser {
34022
35291
  case InsertionMode.IN_SELECT:
34023
35292
  case InsertionMode.IN_SELECT_IN_TABLE:
34024
35293
  case InsertionMode.IN_FRAMESET:
34025
- case InsertionMode.AFTER_FRAMESET:
35294
+ case InsertionMode.AFTER_FRAMESET: {
34026
35295
  this._insertCharacters(token);
34027
35296
  break;
35297
+ }
34028
35298
  case InsertionMode.IN_BODY:
34029
35299
  case InsertionMode.IN_CAPTION:
34030
35300
  case InsertionMode.IN_CELL:
34031
35301
  case InsertionMode.IN_TEMPLATE:
34032
35302
  case InsertionMode.AFTER_BODY:
34033
35303
  case InsertionMode.AFTER_AFTER_BODY:
34034
- case InsertionMode.AFTER_AFTER_FRAMESET:
35304
+ case InsertionMode.AFTER_AFTER_FRAMESET: {
34035
35305
  whitespaceCharacterInBody(this, token);
34036
35306
  break;
35307
+ }
34037
35308
  case InsertionMode.IN_TABLE:
34038
35309
  case InsertionMode.IN_TABLE_BODY:
34039
- case InsertionMode.IN_ROW:
35310
+ case InsertionMode.IN_ROW: {
34040
35311
  characterInTable(this, token);
34041
35312
  break;
34042
- case InsertionMode.IN_TABLE_TEXT:
35313
+ }
35314
+ case InsertionMode.IN_TABLE_TEXT: {
34043
35315
  whitespaceCharacterInTableText(this, token);
34044
35316
  break;
35317
+ }
34045
35318
  default:
34046
35319
  // Do nothing
34047
35320
  }
@@ -35672,8 +36945,9 @@ function endTagInRow(p, token) {
35672
36945
  // Ignore end tag
35673
36946
  break;
35674
36947
  }
35675
- default:
36948
+ default: {
35676
36949
  endTagInTable(p, token);
36950
+ }
35677
36951
  }
35678
36952
  }
35679
36953
  // The "in cell" insertion mode
@@ -35862,39 +37136,45 @@ function startTagInTemplate(p, token) {
35862
37136
  case html_js_1.TAG_ID.SCRIPT:
35863
37137
  case html_js_1.TAG_ID.STYLE:
35864
37138
  case html_js_1.TAG_ID.TEMPLATE:
35865
- case html_js_1.TAG_ID.TITLE:
37139
+ case html_js_1.TAG_ID.TITLE: {
35866
37140
  startTagInHead(p, token);
35867
37141
  break;
37142
+ }
35868
37143
  // Re-process the token in the appropriate mode
35869
37144
  case html_js_1.TAG_ID.CAPTION:
35870
37145
  case html_js_1.TAG_ID.COLGROUP:
35871
37146
  case html_js_1.TAG_ID.TBODY:
35872
37147
  case html_js_1.TAG_ID.TFOOT:
35873
- case html_js_1.TAG_ID.THEAD:
37148
+ case html_js_1.TAG_ID.THEAD: {
35874
37149
  p.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE;
35875
37150
  p.insertionMode = InsertionMode.IN_TABLE;
35876
37151
  startTagInTable(p, token);
35877
37152
  break;
35878
- case html_js_1.TAG_ID.COL:
37153
+ }
37154
+ case html_js_1.TAG_ID.COL: {
35879
37155
  p.tmplInsertionModeStack[0] = InsertionMode.IN_COLUMN_GROUP;
35880
37156
  p.insertionMode = InsertionMode.IN_COLUMN_GROUP;
35881
37157
  startTagInColumnGroup(p, token);
35882
37158
  break;
35883
- case html_js_1.TAG_ID.TR:
37159
+ }
37160
+ case html_js_1.TAG_ID.TR: {
35884
37161
  p.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE_BODY;
35885
37162
  p.insertionMode = InsertionMode.IN_TABLE_BODY;
35886
37163
  startTagInTableBody(p, token);
35887
37164
  break;
37165
+ }
35888
37166
  case html_js_1.TAG_ID.TD:
35889
- case html_js_1.TAG_ID.TH:
37167
+ case html_js_1.TAG_ID.TH: {
35890
37168
  p.tmplInsertionModeStack[0] = InsertionMode.IN_ROW;
35891
37169
  p.insertionMode = InsertionMode.IN_ROW;
35892
37170
  startTagInRow(p, token);
35893
37171
  break;
35894
- default:
37172
+ }
37173
+ default: {
35895
37174
  p.tmplInsertionModeStack[0] = InsertionMode.IN_BODY;
35896
37175
  p.insertionMode = InsertionMode.IN_BODY;
35897
37176
  startTagInBody(p, token);
37177
+ }
35898
37178
  }
35899
37179
  }
35900
37180
  function endTagInTemplate(p, token) {
@@ -36147,6 +37427,9 @@ const TABLE_CONTEXT = [html_js_1.TAG_ID.TABLE, html_js_1.TAG_ID.TEMPLATE, html_j
36147
37427
  const TABLE_CELLS = [html_js_1.TAG_ID.TD, html_js_1.TAG_ID.TH];
36148
37428
  //Stack of open elements
36149
37429
  class OpenElementStack {
37430
+ get currentTmplContentOrNode() {
37431
+ return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;
37432
+ }
36150
37433
  constructor(document, treeAdapter, handler) {
36151
37434
  this.treeAdapter = treeAdapter;
36152
37435
  this.handler = handler;
@@ -36157,9 +37440,6 @@ class OpenElementStack {
36157
37440
  this.currentTagId = html_js_1.TAG_ID.UNKNOWN;
36158
37441
  this.current = document;
36159
37442
  }
36160
- get currentTmplContentOrNode() {
36161
- return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;
36162
- }
36163
37443
  //Index of element
36164
37444
  _indexOf(element) {
36165
37445
  return this.items.lastIndexOf(element, this.stackTop);
@@ -38846,7 +40126,7 @@ class Tokenizer {
38846
40126
  this._emitEOFToken();
38847
40127
  break;
38848
40128
  }
38849
- default:
40129
+ default: {
38850
40130
  if (this._consumeSequenceIfMatch(unicode_js_1.SEQUENCES.PUBLIC, false)) {
38851
40131
  this.state = State.AFTER_DOCTYPE_PUBLIC_KEYWORD;
38852
40132
  }
@@ -38861,6 +40141,7 @@ class Tokenizer {
38861
40141
  this.state = State.BOGUS_DOCTYPE;
38862
40142
  this._stateBogusDoctype(cp);
38863
40143
  }
40144
+ }
38864
40145
  }
38865
40146
  }
38866
40147
  // After DOCTYPE public keyword state
@@ -39649,7 +40930,8 @@ class Preprocessor {
39649
40930
  this.endOfChunkHit = !this.lastChunkWritten;
39650
40931
  return unicode_js_1.CODE_POINTS.EOF;
39651
40932
  }
39652
- return this.html.charCodeAt(pos);
40933
+ const code = this.html.charCodeAt(pos);
40934
+ return code === unicode_js_1.CODE_POINTS.CARRIAGE_RETURN ? unicode_js_1.CODE_POINTS.LINE_FEED : code;
39653
40935
  }
39654
40936
  advance() {
39655
40937
  this.pos++;