@scrabble-solver/scrabble-solver 2.8.11 → 2.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/InjectManifest.js.nft.json +1 -0
- package/.next/build-manifest.json +8 -8
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/eslint/.cache_8dgz12 +1 -1
- package/.next/cache/next-server.js.nft.json +1 -1
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/edge-server-production/0.pack +0 -0
- package/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/routes-manifest.json +1 -1
- package/.next/server/InjectManifest.js.nft.json +1 -0
- package/.next/server/chunks/413.js +37 -14
- package/.next/server/chunks/44.js +1 -1
- package/.next/server/chunks/452.js +894 -0
- package/.next/server/chunks/515.js +9 -4
- package/.next/server/chunks/865.js +230 -116
- package/.next/server/chunks/911.js +0 -887
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/404.html +3 -3
- package/.next/server/pages/404.js.nft.json +1 -1
- package/.next/server/pages/500.html +2 -2
- package/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/server/pages/api/dictionary/[locale]/[word].js +1 -1
- package/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -1
- package/.next/server/pages/api/dictionary/[locale].js +200 -0
- package/.next/server/pages/api/dictionary/[locale].js.nft.json +1 -0
- package/.next/server/pages/api/solve.js +7 -1
- package/.next/server/pages/api/solve.js.nft.json +1 -1
- package/.next/server/pages/api/verify.js +1 -1
- package/.next/server/pages/api/verify.js.nft.json +1 -1
- package/.next/server/pages/index.html +7 -7
- package/.next/server/pages/index.js +79 -30
- package/.next/server/pages/index.js.nft.json +1 -1
- package/.next/server/pages/index.json +1 -1
- package/.next/server/pages-manifest.json +1 -0
- package/.next/static/{VJkrGviICslA_8zNVJ-g- → Oki2Ia4sgLw021iM7byAe}/_buildManifest.js +1 -1
- package/.next/static/{VJkrGviICslA_8zNVJ-g- → Oki2Ia4sgLw021iM7byAe}/_ssgManifest.js +0 -0
- package/.next/static/chunks/317-e7d5d859f1f95938.js +1 -0
- package/.next/static/chunks/pages/_app-10893b318367f97c.js +1 -0
- package/.next/static/chunks/pages/index-b1ffeaddd9fb64b5.js +1 -0
- package/.next/static/css/e3d218f4ea72c5fb.css +1 -0
- package/.next/trace +52 -42
- package/next.config.js +11 -0
- package/package.json +17 -11
- package/src/components/Board/BoardPure.tsx +2 -7
- package/src/components/Board/components/Cell/Cell.module.scss +1 -1
- package/src/components/Board/components/Cell/Cell.tsx +4 -1
- package/src/components/Board/components/Cell/CellPure.tsx +12 -1
- package/src/components/Splash/Splash.module.scss +1 -1
- package/src/components/SvgFontCss/SvgFontCss.tsx +2 -1
- package/src/pages/api/dictionary/[locale]/index.ts +53 -0
- package/src/pages/api/solve.ts +6 -0
- package/src/pages/index.tsx +14 -2
- package/src/sdk/fetch.ts +30 -0
- package/src/sdk/fetchJson.ts +10 -31
- package/src/sdk/getDictionary.ts +11 -0
- package/src/service-worker/dictionaries/constants.ts +5 -0
- package/src/service-worker/dictionaries/expirationManager.ts +9 -0
- package/src/service-worker/dictionaries/getDictionary.ts +22 -0
- package/src/service-worker/dictionaries/getDictionaryUrl.ts +7 -0
- package/src/service-worker/dictionaries/index.ts +2 -0
- package/src/service-worker/dictionaries/revalidateDictionary.ts +35 -0
- package/src/service-worker/getTrie.ts +26 -0
- package/src/service-worker/index.ts +22 -0
- package/src/service-worker/routeSolveRequests.ts +37 -0
- package/src/service-worker/routeVerifyRequests.ts +35 -0
- package/src/serviceWorkerManager.ts +26 -0
- package/src/state/sagas.ts +1 -0
- package/src/state/slices/settingsInitialState.ts +20 -1
- package/tsconfig.json +1 -0
- package/.next/static/chunks/317-8e8909dd2f587b64.js +0 -1
- package/.next/static/chunks/pages/_app-57c77cad0f197d93.js +0 -1
- package/.next/static/chunks/pages/index-d3360e075ca3c222.js +0 -1
- package/.next/static/css/9ac903004135f4b1.css +0 -1
|
@@ -12784,7 +12784,7 @@ exports.isUndefinedCodePoint = isUndefinedCodePoint;
|
|
|
12784
12784
|
"use strict";
|
|
12785
12785
|
|
|
12786
12786
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
12787
|
-
exports.parseFragment = exports.parse = exports.TokenizerMode = exports.Tokenizer = exports.Token = exports.html = exports.foreignContent = exports.serializeOuter = exports.serialize = exports.Parser = exports.defaultTreeAdapter = void 0;
|
|
12787
|
+
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;
|
|
12788
12788
|
const index_js_1 = __webpack_require__(56618);
|
|
12789
12789
|
var default_js_1 = __webpack_require__(44241);
|
|
12790
12790
|
Object.defineProperty(exports, "defaultTreeAdapter", ({ enumerable: true, get: function () { return default_js_1.defaultTreeAdapter; } }));
|
|
@@ -12793,6 +12793,8 @@ Object.defineProperty(exports, "Parser", ({ enumerable: true, get: function () {
|
|
|
12793
12793
|
var index_js_3 = __webpack_require__(3295);
|
|
12794
12794
|
Object.defineProperty(exports, "serialize", ({ enumerable: true, get: function () { return index_js_3.serialize; } }));
|
|
12795
12795
|
Object.defineProperty(exports, "serializeOuter", ({ enumerable: true, get: function () { return index_js_3.serializeOuter; } }));
|
|
12796
|
+
var error_codes_js_1 = __webpack_require__(18332);
|
|
12797
|
+
Object.defineProperty(exports, "ErrorCodes", ({ enumerable: true, get: function () { return error_codes_js_1.ERR; } }));
|
|
12796
12798
|
/** @internal */
|
|
12797
12799
|
exports.foreignContent = __webpack_require__(41883);
|
|
12798
12800
|
/** @internal */
|
|
@@ -13421,51 +13423,63 @@ class Parser {
|
|
|
13421
13423
|
for (let i = this.openElements.stackTop; i >= 0; i--) {
|
|
13422
13424
|
//Insertion mode reset map
|
|
13423
13425
|
switch (i === 0 && this.fragmentContext ? this.fragmentContextID : this.openElements.tagIDs[i]) {
|
|
13424
|
-
case html_js_1.TAG_ID.TR:
|
|
13426
|
+
case html_js_1.TAG_ID.TR: {
|
|
13425
13427
|
this.insertionMode = InsertionMode.IN_ROW;
|
|
13426
13428
|
return;
|
|
13429
|
+
}
|
|
13427
13430
|
case html_js_1.TAG_ID.TBODY:
|
|
13428
13431
|
case html_js_1.TAG_ID.THEAD:
|
|
13429
|
-
case html_js_1.TAG_ID.TFOOT:
|
|
13432
|
+
case html_js_1.TAG_ID.TFOOT: {
|
|
13430
13433
|
this.insertionMode = InsertionMode.IN_TABLE_BODY;
|
|
13431
13434
|
return;
|
|
13432
|
-
|
|
13435
|
+
}
|
|
13436
|
+
case html_js_1.TAG_ID.CAPTION: {
|
|
13433
13437
|
this.insertionMode = InsertionMode.IN_CAPTION;
|
|
13434
13438
|
return;
|
|
13435
|
-
|
|
13439
|
+
}
|
|
13440
|
+
case html_js_1.TAG_ID.COLGROUP: {
|
|
13436
13441
|
this.insertionMode = InsertionMode.IN_COLUMN_GROUP;
|
|
13437
13442
|
return;
|
|
13438
|
-
|
|
13443
|
+
}
|
|
13444
|
+
case html_js_1.TAG_ID.TABLE: {
|
|
13439
13445
|
this.insertionMode = InsertionMode.IN_TABLE;
|
|
13440
13446
|
return;
|
|
13441
|
-
|
|
13447
|
+
}
|
|
13448
|
+
case html_js_1.TAG_ID.BODY: {
|
|
13442
13449
|
this.insertionMode = InsertionMode.IN_BODY;
|
|
13443
13450
|
return;
|
|
13444
|
-
|
|
13451
|
+
}
|
|
13452
|
+
case html_js_1.TAG_ID.FRAMESET: {
|
|
13445
13453
|
this.insertionMode = InsertionMode.IN_FRAMESET;
|
|
13446
13454
|
return;
|
|
13447
|
-
|
|
13455
|
+
}
|
|
13456
|
+
case html_js_1.TAG_ID.SELECT: {
|
|
13448
13457
|
this._resetInsertionModeForSelect(i);
|
|
13449
13458
|
return;
|
|
13450
|
-
|
|
13459
|
+
}
|
|
13460
|
+
case html_js_1.TAG_ID.TEMPLATE: {
|
|
13451
13461
|
this.insertionMode = this.tmplInsertionModeStack[0];
|
|
13452
13462
|
return;
|
|
13453
|
-
|
|
13463
|
+
}
|
|
13464
|
+
case html_js_1.TAG_ID.HTML: {
|
|
13454
13465
|
this.insertionMode = this.headElement ? InsertionMode.AFTER_HEAD : InsertionMode.BEFORE_HEAD;
|
|
13455
13466
|
return;
|
|
13467
|
+
}
|
|
13456
13468
|
case html_js_1.TAG_ID.TD:
|
|
13457
|
-
case html_js_1.TAG_ID.TH:
|
|
13469
|
+
case html_js_1.TAG_ID.TH: {
|
|
13458
13470
|
if (i > 0) {
|
|
13459
13471
|
this.insertionMode = InsertionMode.IN_CELL;
|
|
13460
13472
|
return;
|
|
13461
13473
|
}
|
|
13462
13474
|
break;
|
|
13463
|
-
|
|
13475
|
+
}
|
|
13476
|
+
case html_js_1.TAG_ID.HEAD: {
|
|
13464
13477
|
if (i > 0) {
|
|
13465
13478
|
this.insertionMode = InsertionMode.IN_HEAD;
|
|
13466
13479
|
return;
|
|
13467
13480
|
}
|
|
13468
13481
|
break;
|
|
13482
|
+
}
|
|
13469
13483
|
}
|
|
13470
13484
|
}
|
|
13471
13485
|
this.insertionMode = InsertionMode.IN_BODY;
|
|
@@ -13496,11 +13510,12 @@ class Parser {
|
|
|
13496
13510
|
for (let i = this.openElements.stackTop; i >= 0; i--) {
|
|
13497
13511
|
const openElement = this.openElements.items[i];
|
|
13498
13512
|
switch (this.openElements.tagIDs[i]) {
|
|
13499
|
-
case html_js_1.TAG_ID.TEMPLATE:
|
|
13513
|
+
case html_js_1.TAG_ID.TEMPLATE: {
|
|
13500
13514
|
if (this.treeAdapter.getNamespaceURI(openElement) === html_js_1.NS.HTML) {
|
|
13501
13515
|
return { parent: this.treeAdapter.getTemplateContent(openElement), beforeElement: null };
|
|
13502
13516
|
}
|
|
13503
13517
|
break;
|
|
13518
|
+
}
|
|
13504
13519
|
case html_js_1.TAG_ID.TABLE: {
|
|
13505
13520
|
const parent = this.treeAdapter.getParentNode(openElement);
|
|
13506
13521
|
if (parent) {
|
|
@@ -13535,52 +13550,65 @@ class Parser {
|
|
|
13535
13550
|
return;
|
|
13536
13551
|
}
|
|
13537
13552
|
switch (this.insertionMode) {
|
|
13538
|
-
case InsertionMode.INITIAL:
|
|
13553
|
+
case InsertionMode.INITIAL: {
|
|
13539
13554
|
tokenInInitialMode(this, token);
|
|
13540
13555
|
break;
|
|
13541
|
-
|
|
13556
|
+
}
|
|
13557
|
+
case InsertionMode.BEFORE_HTML: {
|
|
13542
13558
|
tokenBeforeHtml(this, token);
|
|
13543
13559
|
break;
|
|
13544
|
-
|
|
13560
|
+
}
|
|
13561
|
+
case InsertionMode.BEFORE_HEAD: {
|
|
13545
13562
|
tokenBeforeHead(this, token);
|
|
13546
13563
|
break;
|
|
13547
|
-
|
|
13564
|
+
}
|
|
13565
|
+
case InsertionMode.IN_HEAD: {
|
|
13548
13566
|
tokenInHead(this, token);
|
|
13549
13567
|
break;
|
|
13550
|
-
|
|
13568
|
+
}
|
|
13569
|
+
case InsertionMode.IN_HEAD_NO_SCRIPT: {
|
|
13551
13570
|
tokenInHeadNoScript(this, token);
|
|
13552
13571
|
break;
|
|
13553
|
-
|
|
13572
|
+
}
|
|
13573
|
+
case InsertionMode.AFTER_HEAD: {
|
|
13554
13574
|
tokenAfterHead(this, token);
|
|
13555
13575
|
break;
|
|
13576
|
+
}
|
|
13556
13577
|
case InsertionMode.IN_BODY:
|
|
13557
13578
|
case InsertionMode.IN_CAPTION:
|
|
13558
13579
|
case InsertionMode.IN_CELL:
|
|
13559
|
-
case InsertionMode.IN_TEMPLATE:
|
|
13580
|
+
case InsertionMode.IN_TEMPLATE: {
|
|
13560
13581
|
characterInBody(this, token);
|
|
13561
13582
|
break;
|
|
13583
|
+
}
|
|
13562
13584
|
case InsertionMode.TEXT:
|
|
13563
13585
|
case InsertionMode.IN_SELECT:
|
|
13564
|
-
case InsertionMode.IN_SELECT_IN_TABLE:
|
|
13586
|
+
case InsertionMode.IN_SELECT_IN_TABLE: {
|
|
13565
13587
|
this._insertCharacters(token);
|
|
13566
13588
|
break;
|
|
13589
|
+
}
|
|
13567
13590
|
case InsertionMode.IN_TABLE:
|
|
13568
13591
|
case InsertionMode.IN_TABLE_BODY:
|
|
13569
|
-
case InsertionMode.IN_ROW:
|
|
13592
|
+
case InsertionMode.IN_ROW: {
|
|
13570
13593
|
characterInTable(this, token);
|
|
13571
13594
|
break;
|
|
13572
|
-
|
|
13595
|
+
}
|
|
13596
|
+
case InsertionMode.IN_TABLE_TEXT: {
|
|
13573
13597
|
characterInTableText(this, token);
|
|
13574
13598
|
break;
|
|
13575
|
-
|
|
13599
|
+
}
|
|
13600
|
+
case InsertionMode.IN_COLUMN_GROUP: {
|
|
13576
13601
|
tokenInColumnGroup(this, token);
|
|
13577
13602
|
break;
|
|
13578
|
-
|
|
13603
|
+
}
|
|
13604
|
+
case InsertionMode.AFTER_BODY: {
|
|
13579
13605
|
tokenAfterBody(this, token);
|
|
13580
13606
|
break;
|
|
13581
|
-
|
|
13607
|
+
}
|
|
13608
|
+
case InsertionMode.AFTER_AFTER_BODY: {
|
|
13582
13609
|
tokenAfterAfterBody(this, token);
|
|
13583
13610
|
break;
|
|
13611
|
+
}
|
|
13584
13612
|
default:
|
|
13585
13613
|
// Do nothing
|
|
13586
13614
|
}
|
|
@@ -13592,41 +13620,52 @@ class Parser {
|
|
|
13592
13620
|
return;
|
|
13593
13621
|
}
|
|
13594
13622
|
switch (this.insertionMode) {
|
|
13595
|
-
case InsertionMode.INITIAL:
|
|
13623
|
+
case InsertionMode.INITIAL: {
|
|
13596
13624
|
tokenInInitialMode(this, token);
|
|
13597
13625
|
break;
|
|
13598
|
-
|
|
13626
|
+
}
|
|
13627
|
+
case InsertionMode.BEFORE_HTML: {
|
|
13599
13628
|
tokenBeforeHtml(this, token);
|
|
13600
13629
|
break;
|
|
13601
|
-
|
|
13630
|
+
}
|
|
13631
|
+
case InsertionMode.BEFORE_HEAD: {
|
|
13602
13632
|
tokenBeforeHead(this, token);
|
|
13603
13633
|
break;
|
|
13604
|
-
|
|
13634
|
+
}
|
|
13635
|
+
case InsertionMode.IN_HEAD: {
|
|
13605
13636
|
tokenInHead(this, token);
|
|
13606
13637
|
break;
|
|
13607
|
-
|
|
13638
|
+
}
|
|
13639
|
+
case InsertionMode.IN_HEAD_NO_SCRIPT: {
|
|
13608
13640
|
tokenInHeadNoScript(this, token);
|
|
13609
13641
|
break;
|
|
13610
|
-
|
|
13642
|
+
}
|
|
13643
|
+
case InsertionMode.AFTER_HEAD: {
|
|
13611
13644
|
tokenAfterHead(this, token);
|
|
13612
13645
|
break;
|
|
13613
|
-
|
|
13646
|
+
}
|
|
13647
|
+
case InsertionMode.TEXT: {
|
|
13614
13648
|
this._insertCharacters(token);
|
|
13615
13649
|
break;
|
|
13650
|
+
}
|
|
13616
13651
|
case InsertionMode.IN_TABLE:
|
|
13617
13652
|
case InsertionMode.IN_TABLE_BODY:
|
|
13618
|
-
case InsertionMode.IN_ROW:
|
|
13653
|
+
case InsertionMode.IN_ROW: {
|
|
13619
13654
|
characterInTable(this, token);
|
|
13620
13655
|
break;
|
|
13621
|
-
|
|
13656
|
+
}
|
|
13657
|
+
case InsertionMode.IN_COLUMN_GROUP: {
|
|
13622
13658
|
tokenInColumnGroup(this, token);
|
|
13623
13659
|
break;
|
|
13624
|
-
|
|
13660
|
+
}
|
|
13661
|
+
case InsertionMode.AFTER_BODY: {
|
|
13625
13662
|
tokenAfterBody(this, token);
|
|
13626
13663
|
break;
|
|
13627
|
-
|
|
13664
|
+
}
|
|
13665
|
+
case InsertionMode.AFTER_AFTER_BODY: {
|
|
13628
13666
|
tokenAfterAfterBody(this, token);
|
|
13629
13667
|
break;
|
|
13668
|
+
}
|
|
13630
13669
|
default:
|
|
13631
13670
|
// Do nothing
|
|
13632
13671
|
}
|
|
@@ -13655,19 +13694,23 @@ class Parser {
|
|
|
13655
13694
|
case InsertionMode.IN_SELECT_IN_TABLE:
|
|
13656
13695
|
case InsertionMode.IN_TEMPLATE:
|
|
13657
13696
|
case InsertionMode.IN_FRAMESET:
|
|
13658
|
-
case InsertionMode.AFTER_FRAMESET:
|
|
13697
|
+
case InsertionMode.AFTER_FRAMESET: {
|
|
13659
13698
|
appendComment(this, token);
|
|
13660
13699
|
break;
|
|
13661
|
-
|
|
13700
|
+
}
|
|
13701
|
+
case InsertionMode.IN_TABLE_TEXT: {
|
|
13662
13702
|
tokenInTableText(this, token);
|
|
13663
13703
|
break;
|
|
13664
|
-
|
|
13704
|
+
}
|
|
13705
|
+
case InsertionMode.AFTER_BODY: {
|
|
13665
13706
|
appendCommentToRootHtmlElement(this, token);
|
|
13666
13707
|
break;
|
|
13708
|
+
}
|
|
13667
13709
|
case InsertionMode.AFTER_AFTER_BODY:
|
|
13668
|
-
case InsertionMode.AFTER_AFTER_FRAMESET:
|
|
13710
|
+
case InsertionMode.AFTER_AFTER_FRAMESET: {
|
|
13669
13711
|
appendCommentToDocument(this, token);
|
|
13670
13712
|
break;
|
|
13713
|
+
}
|
|
13671
13714
|
default:
|
|
13672
13715
|
// Do nothing
|
|
13673
13716
|
}
|
|
@@ -13675,18 +13718,21 @@ class Parser {
|
|
|
13675
13718
|
onDoctype(token) {
|
|
13676
13719
|
this.skipNextNewLine = false;
|
|
13677
13720
|
switch (this.insertionMode) {
|
|
13678
|
-
case InsertionMode.INITIAL:
|
|
13721
|
+
case InsertionMode.INITIAL: {
|
|
13679
13722
|
doctypeInInitialMode(this, token);
|
|
13680
13723
|
break;
|
|
13724
|
+
}
|
|
13681
13725
|
case InsertionMode.BEFORE_HEAD:
|
|
13682
13726
|
case InsertionMode.IN_HEAD:
|
|
13683
13727
|
case InsertionMode.IN_HEAD_NO_SCRIPT:
|
|
13684
|
-
case InsertionMode.AFTER_HEAD:
|
|
13728
|
+
case InsertionMode.AFTER_HEAD: {
|
|
13685
13729
|
this._err(token, error_codes_js_1.ERR.misplacedDoctype);
|
|
13686
13730
|
break;
|
|
13687
|
-
|
|
13731
|
+
}
|
|
13732
|
+
case InsertionMode.IN_TABLE_TEXT: {
|
|
13688
13733
|
tokenInTableText(this, token);
|
|
13689
13734
|
break;
|
|
13735
|
+
}
|
|
13690
13736
|
default:
|
|
13691
13737
|
// Do nothing
|
|
13692
13738
|
}
|
|
@@ -13719,72 +13765,94 @@ class Parser {
|
|
|
13719
13765
|
}
|
|
13720
13766
|
_startTagOutsideForeignContent(token) {
|
|
13721
13767
|
switch (this.insertionMode) {
|
|
13722
|
-
case InsertionMode.INITIAL:
|
|
13768
|
+
case InsertionMode.INITIAL: {
|
|
13723
13769
|
tokenInInitialMode(this, token);
|
|
13724
13770
|
break;
|
|
13725
|
-
|
|
13771
|
+
}
|
|
13772
|
+
case InsertionMode.BEFORE_HTML: {
|
|
13726
13773
|
startTagBeforeHtml(this, token);
|
|
13727
13774
|
break;
|
|
13728
|
-
|
|
13775
|
+
}
|
|
13776
|
+
case InsertionMode.BEFORE_HEAD: {
|
|
13729
13777
|
startTagBeforeHead(this, token);
|
|
13730
13778
|
break;
|
|
13731
|
-
|
|
13779
|
+
}
|
|
13780
|
+
case InsertionMode.IN_HEAD: {
|
|
13732
13781
|
startTagInHead(this, token);
|
|
13733
13782
|
break;
|
|
13734
|
-
|
|
13783
|
+
}
|
|
13784
|
+
case InsertionMode.IN_HEAD_NO_SCRIPT: {
|
|
13735
13785
|
startTagInHeadNoScript(this, token);
|
|
13736
13786
|
break;
|
|
13737
|
-
|
|
13787
|
+
}
|
|
13788
|
+
case InsertionMode.AFTER_HEAD: {
|
|
13738
13789
|
startTagAfterHead(this, token);
|
|
13739
13790
|
break;
|
|
13740
|
-
|
|
13791
|
+
}
|
|
13792
|
+
case InsertionMode.IN_BODY: {
|
|
13741
13793
|
startTagInBody(this, token);
|
|
13742
13794
|
break;
|
|
13743
|
-
|
|
13795
|
+
}
|
|
13796
|
+
case InsertionMode.IN_TABLE: {
|
|
13744
13797
|
startTagInTable(this, token);
|
|
13745
13798
|
break;
|
|
13746
|
-
|
|
13799
|
+
}
|
|
13800
|
+
case InsertionMode.IN_TABLE_TEXT: {
|
|
13747
13801
|
tokenInTableText(this, token);
|
|
13748
13802
|
break;
|
|
13749
|
-
|
|
13803
|
+
}
|
|
13804
|
+
case InsertionMode.IN_CAPTION: {
|
|
13750
13805
|
startTagInCaption(this, token);
|
|
13751
13806
|
break;
|
|
13752
|
-
|
|
13807
|
+
}
|
|
13808
|
+
case InsertionMode.IN_COLUMN_GROUP: {
|
|
13753
13809
|
startTagInColumnGroup(this, token);
|
|
13754
13810
|
break;
|
|
13755
|
-
|
|
13811
|
+
}
|
|
13812
|
+
case InsertionMode.IN_TABLE_BODY: {
|
|
13756
13813
|
startTagInTableBody(this, token);
|
|
13757
13814
|
break;
|
|
13758
|
-
|
|
13815
|
+
}
|
|
13816
|
+
case InsertionMode.IN_ROW: {
|
|
13759
13817
|
startTagInRow(this, token);
|
|
13760
13818
|
break;
|
|
13761
|
-
|
|
13819
|
+
}
|
|
13820
|
+
case InsertionMode.IN_CELL: {
|
|
13762
13821
|
startTagInCell(this, token);
|
|
13763
13822
|
break;
|
|
13764
|
-
|
|
13823
|
+
}
|
|
13824
|
+
case InsertionMode.IN_SELECT: {
|
|
13765
13825
|
startTagInSelect(this, token);
|
|
13766
13826
|
break;
|
|
13767
|
-
|
|
13827
|
+
}
|
|
13828
|
+
case InsertionMode.IN_SELECT_IN_TABLE: {
|
|
13768
13829
|
startTagInSelectInTable(this, token);
|
|
13769
13830
|
break;
|
|
13770
|
-
|
|
13831
|
+
}
|
|
13832
|
+
case InsertionMode.IN_TEMPLATE: {
|
|
13771
13833
|
startTagInTemplate(this, token);
|
|
13772
13834
|
break;
|
|
13773
|
-
|
|
13835
|
+
}
|
|
13836
|
+
case InsertionMode.AFTER_BODY: {
|
|
13774
13837
|
startTagAfterBody(this, token);
|
|
13775
13838
|
break;
|
|
13776
|
-
|
|
13839
|
+
}
|
|
13840
|
+
case InsertionMode.IN_FRAMESET: {
|
|
13777
13841
|
startTagInFrameset(this, token);
|
|
13778
13842
|
break;
|
|
13779
|
-
|
|
13843
|
+
}
|
|
13844
|
+
case InsertionMode.AFTER_FRAMESET: {
|
|
13780
13845
|
startTagAfterFrameset(this, token);
|
|
13781
13846
|
break;
|
|
13782
|
-
|
|
13847
|
+
}
|
|
13848
|
+
case InsertionMode.AFTER_AFTER_BODY: {
|
|
13783
13849
|
startTagAfterAfterBody(this, token);
|
|
13784
13850
|
break;
|
|
13785
|
-
|
|
13851
|
+
}
|
|
13852
|
+
case InsertionMode.AFTER_AFTER_FRAMESET: {
|
|
13786
13853
|
startTagAfterAfterFrameset(this, token);
|
|
13787
13854
|
break;
|
|
13855
|
+
}
|
|
13788
13856
|
default:
|
|
13789
13857
|
// Do nothing
|
|
13790
13858
|
}
|
|
@@ -13801,96 +13869,124 @@ class Parser {
|
|
|
13801
13869
|
}
|
|
13802
13870
|
_endTagOutsideForeignContent(token) {
|
|
13803
13871
|
switch (this.insertionMode) {
|
|
13804
|
-
case InsertionMode.INITIAL:
|
|
13872
|
+
case InsertionMode.INITIAL: {
|
|
13805
13873
|
tokenInInitialMode(this, token);
|
|
13806
13874
|
break;
|
|
13807
|
-
|
|
13875
|
+
}
|
|
13876
|
+
case InsertionMode.BEFORE_HTML: {
|
|
13808
13877
|
endTagBeforeHtml(this, token);
|
|
13809
13878
|
break;
|
|
13810
|
-
|
|
13879
|
+
}
|
|
13880
|
+
case InsertionMode.BEFORE_HEAD: {
|
|
13811
13881
|
endTagBeforeHead(this, token);
|
|
13812
13882
|
break;
|
|
13813
|
-
|
|
13883
|
+
}
|
|
13884
|
+
case InsertionMode.IN_HEAD: {
|
|
13814
13885
|
endTagInHead(this, token);
|
|
13815
13886
|
break;
|
|
13816
|
-
|
|
13887
|
+
}
|
|
13888
|
+
case InsertionMode.IN_HEAD_NO_SCRIPT: {
|
|
13817
13889
|
endTagInHeadNoScript(this, token);
|
|
13818
13890
|
break;
|
|
13819
|
-
|
|
13891
|
+
}
|
|
13892
|
+
case InsertionMode.AFTER_HEAD: {
|
|
13820
13893
|
endTagAfterHead(this, token);
|
|
13821
13894
|
break;
|
|
13822
|
-
|
|
13895
|
+
}
|
|
13896
|
+
case InsertionMode.IN_BODY: {
|
|
13823
13897
|
endTagInBody(this, token);
|
|
13824
13898
|
break;
|
|
13825
|
-
|
|
13899
|
+
}
|
|
13900
|
+
case InsertionMode.TEXT: {
|
|
13826
13901
|
endTagInText(this, token);
|
|
13827
13902
|
break;
|
|
13828
|
-
|
|
13903
|
+
}
|
|
13904
|
+
case InsertionMode.IN_TABLE: {
|
|
13829
13905
|
endTagInTable(this, token);
|
|
13830
13906
|
break;
|
|
13831
|
-
|
|
13907
|
+
}
|
|
13908
|
+
case InsertionMode.IN_TABLE_TEXT: {
|
|
13832
13909
|
tokenInTableText(this, token);
|
|
13833
13910
|
break;
|
|
13834
|
-
|
|
13911
|
+
}
|
|
13912
|
+
case InsertionMode.IN_CAPTION: {
|
|
13835
13913
|
endTagInCaption(this, token);
|
|
13836
13914
|
break;
|
|
13837
|
-
|
|
13915
|
+
}
|
|
13916
|
+
case InsertionMode.IN_COLUMN_GROUP: {
|
|
13838
13917
|
endTagInColumnGroup(this, token);
|
|
13839
13918
|
break;
|
|
13840
|
-
|
|
13919
|
+
}
|
|
13920
|
+
case InsertionMode.IN_TABLE_BODY: {
|
|
13841
13921
|
endTagInTableBody(this, token);
|
|
13842
13922
|
break;
|
|
13843
|
-
|
|
13923
|
+
}
|
|
13924
|
+
case InsertionMode.IN_ROW: {
|
|
13844
13925
|
endTagInRow(this, token);
|
|
13845
13926
|
break;
|
|
13846
|
-
|
|
13927
|
+
}
|
|
13928
|
+
case InsertionMode.IN_CELL: {
|
|
13847
13929
|
endTagInCell(this, token);
|
|
13848
13930
|
break;
|
|
13849
|
-
|
|
13931
|
+
}
|
|
13932
|
+
case InsertionMode.IN_SELECT: {
|
|
13850
13933
|
endTagInSelect(this, token);
|
|
13851
13934
|
break;
|
|
13852
|
-
|
|
13935
|
+
}
|
|
13936
|
+
case InsertionMode.IN_SELECT_IN_TABLE: {
|
|
13853
13937
|
endTagInSelectInTable(this, token);
|
|
13854
13938
|
break;
|
|
13855
|
-
|
|
13939
|
+
}
|
|
13940
|
+
case InsertionMode.IN_TEMPLATE: {
|
|
13856
13941
|
endTagInTemplate(this, token);
|
|
13857
13942
|
break;
|
|
13858
|
-
|
|
13943
|
+
}
|
|
13944
|
+
case InsertionMode.AFTER_BODY: {
|
|
13859
13945
|
endTagAfterBody(this, token);
|
|
13860
13946
|
break;
|
|
13861
|
-
|
|
13947
|
+
}
|
|
13948
|
+
case InsertionMode.IN_FRAMESET: {
|
|
13862
13949
|
endTagInFrameset(this, token);
|
|
13863
13950
|
break;
|
|
13864
|
-
|
|
13951
|
+
}
|
|
13952
|
+
case InsertionMode.AFTER_FRAMESET: {
|
|
13865
13953
|
endTagAfterFrameset(this, token);
|
|
13866
13954
|
break;
|
|
13867
|
-
|
|
13955
|
+
}
|
|
13956
|
+
case InsertionMode.AFTER_AFTER_BODY: {
|
|
13868
13957
|
tokenAfterAfterBody(this, token);
|
|
13869
13958
|
break;
|
|
13959
|
+
}
|
|
13870
13960
|
default:
|
|
13871
13961
|
// Do nothing
|
|
13872
13962
|
}
|
|
13873
13963
|
}
|
|
13874
13964
|
onEof(token) {
|
|
13875
13965
|
switch (this.insertionMode) {
|
|
13876
|
-
case InsertionMode.INITIAL:
|
|
13966
|
+
case InsertionMode.INITIAL: {
|
|
13877
13967
|
tokenInInitialMode(this, token);
|
|
13878
13968
|
break;
|
|
13879
|
-
|
|
13969
|
+
}
|
|
13970
|
+
case InsertionMode.BEFORE_HTML: {
|
|
13880
13971
|
tokenBeforeHtml(this, token);
|
|
13881
13972
|
break;
|
|
13882
|
-
|
|
13973
|
+
}
|
|
13974
|
+
case InsertionMode.BEFORE_HEAD: {
|
|
13883
13975
|
tokenBeforeHead(this, token);
|
|
13884
13976
|
break;
|
|
13885
|
-
|
|
13977
|
+
}
|
|
13978
|
+
case InsertionMode.IN_HEAD: {
|
|
13886
13979
|
tokenInHead(this, token);
|
|
13887
13980
|
break;
|
|
13888
|
-
|
|
13981
|
+
}
|
|
13982
|
+
case InsertionMode.IN_HEAD_NO_SCRIPT: {
|
|
13889
13983
|
tokenInHeadNoScript(this, token);
|
|
13890
13984
|
break;
|
|
13891
|
-
|
|
13985
|
+
}
|
|
13986
|
+
case InsertionMode.AFTER_HEAD: {
|
|
13892
13987
|
tokenAfterHead(this, token);
|
|
13893
13988
|
break;
|
|
13989
|
+
}
|
|
13894
13990
|
case InsertionMode.IN_BODY:
|
|
13895
13991
|
case InsertionMode.IN_TABLE:
|
|
13896
13992
|
case InsertionMode.IN_CAPTION:
|
|
@@ -13899,25 +13995,30 @@ class Parser {
|
|
|
13899
13995
|
case InsertionMode.IN_ROW:
|
|
13900
13996
|
case InsertionMode.IN_CELL:
|
|
13901
13997
|
case InsertionMode.IN_SELECT:
|
|
13902
|
-
case InsertionMode.IN_SELECT_IN_TABLE:
|
|
13998
|
+
case InsertionMode.IN_SELECT_IN_TABLE: {
|
|
13903
13999
|
eofInBody(this, token);
|
|
13904
14000
|
break;
|
|
13905
|
-
|
|
14001
|
+
}
|
|
14002
|
+
case InsertionMode.TEXT: {
|
|
13906
14003
|
eofInText(this, token);
|
|
13907
14004
|
break;
|
|
13908
|
-
|
|
14005
|
+
}
|
|
14006
|
+
case InsertionMode.IN_TABLE_TEXT: {
|
|
13909
14007
|
tokenInTableText(this, token);
|
|
13910
14008
|
break;
|
|
13911
|
-
|
|
14009
|
+
}
|
|
14010
|
+
case InsertionMode.IN_TEMPLATE: {
|
|
13912
14011
|
eofInTemplate(this, token);
|
|
13913
14012
|
break;
|
|
14013
|
+
}
|
|
13914
14014
|
case InsertionMode.AFTER_BODY:
|
|
13915
14015
|
case InsertionMode.IN_FRAMESET:
|
|
13916
14016
|
case InsertionMode.AFTER_FRAMESET:
|
|
13917
14017
|
case InsertionMode.AFTER_AFTER_BODY:
|
|
13918
|
-
case InsertionMode.AFTER_AFTER_FRAMESET:
|
|
14018
|
+
case InsertionMode.AFTER_AFTER_FRAMESET: {
|
|
13919
14019
|
stopParsing(this, token);
|
|
13920
14020
|
break;
|
|
14021
|
+
}
|
|
13921
14022
|
default:
|
|
13922
14023
|
// Do nothing
|
|
13923
14024
|
}
|
|
@@ -13945,26 +14046,30 @@ class Parser {
|
|
|
13945
14046
|
case InsertionMode.IN_SELECT:
|
|
13946
14047
|
case InsertionMode.IN_SELECT_IN_TABLE:
|
|
13947
14048
|
case InsertionMode.IN_FRAMESET:
|
|
13948
|
-
case InsertionMode.AFTER_FRAMESET:
|
|
14049
|
+
case InsertionMode.AFTER_FRAMESET: {
|
|
13949
14050
|
this._insertCharacters(token);
|
|
13950
14051
|
break;
|
|
14052
|
+
}
|
|
13951
14053
|
case InsertionMode.IN_BODY:
|
|
13952
14054
|
case InsertionMode.IN_CAPTION:
|
|
13953
14055
|
case InsertionMode.IN_CELL:
|
|
13954
14056
|
case InsertionMode.IN_TEMPLATE:
|
|
13955
14057
|
case InsertionMode.AFTER_BODY:
|
|
13956
14058
|
case InsertionMode.AFTER_AFTER_BODY:
|
|
13957
|
-
case InsertionMode.AFTER_AFTER_FRAMESET:
|
|
14059
|
+
case InsertionMode.AFTER_AFTER_FRAMESET: {
|
|
13958
14060
|
whitespaceCharacterInBody(this, token);
|
|
13959
14061
|
break;
|
|
14062
|
+
}
|
|
13960
14063
|
case InsertionMode.IN_TABLE:
|
|
13961
14064
|
case InsertionMode.IN_TABLE_BODY:
|
|
13962
|
-
case InsertionMode.IN_ROW:
|
|
14065
|
+
case InsertionMode.IN_ROW: {
|
|
13963
14066
|
characterInTable(this, token);
|
|
13964
14067
|
break;
|
|
13965
|
-
|
|
14068
|
+
}
|
|
14069
|
+
case InsertionMode.IN_TABLE_TEXT: {
|
|
13966
14070
|
whitespaceCharacterInTableText(this, token);
|
|
13967
14071
|
break;
|
|
14072
|
+
}
|
|
13968
14073
|
default:
|
|
13969
14074
|
// Do nothing
|
|
13970
14075
|
}
|
|
@@ -15595,8 +15700,9 @@ function endTagInRow(p, token) {
|
|
|
15595
15700
|
// Ignore end tag
|
|
15596
15701
|
break;
|
|
15597
15702
|
}
|
|
15598
|
-
default:
|
|
15703
|
+
default: {
|
|
15599
15704
|
endTagInTable(p, token);
|
|
15705
|
+
}
|
|
15600
15706
|
}
|
|
15601
15707
|
}
|
|
15602
15708
|
// The "in cell" insertion mode
|
|
@@ -15785,39 +15891,45 @@ function startTagInTemplate(p, token) {
|
|
|
15785
15891
|
case html_js_1.TAG_ID.SCRIPT:
|
|
15786
15892
|
case html_js_1.TAG_ID.STYLE:
|
|
15787
15893
|
case html_js_1.TAG_ID.TEMPLATE:
|
|
15788
|
-
case html_js_1.TAG_ID.TITLE:
|
|
15894
|
+
case html_js_1.TAG_ID.TITLE: {
|
|
15789
15895
|
startTagInHead(p, token);
|
|
15790
15896
|
break;
|
|
15897
|
+
}
|
|
15791
15898
|
// Re-process the token in the appropriate mode
|
|
15792
15899
|
case html_js_1.TAG_ID.CAPTION:
|
|
15793
15900
|
case html_js_1.TAG_ID.COLGROUP:
|
|
15794
15901
|
case html_js_1.TAG_ID.TBODY:
|
|
15795
15902
|
case html_js_1.TAG_ID.TFOOT:
|
|
15796
|
-
case html_js_1.TAG_ID.THEAD:
|
|
15903
|
+
case html_js_1.TAG_ID.THEAD: {
|
|
15797
15904
|
p.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE;
|
|
15798
15905
|
p.insertionMode = InsertionMode.IN_TABLE;
|
|
15799
15906
|
startTagInTable(p, token);
|
|
15800
15907
|
break;
|
|
15801
|
-
|
|
15908
|
+
}
|
|
15909
|
+
case html_js_1.TAG_ID.COL: {
|
|
15802
15910
|
p.tmplInsertionModeStack[0] = InsertionMode.IN_COLUMN_GROUP;
|
|
15803
15911
|
p.insertionMode = InsertionMode.IN_COLUMN_GROUP;
|
|
15804
15912
|
startTagInColumnGroup(p, token);
|
|
15805
15913
|
break;
|
|
15806
|
-
|
|
15914
|
+
}
|
|
15915
|
+
case html_js_1.TAG_ID.TR: {
|
|
15807
15916
|
p.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE_BODY;
|
|
15808
15917
|
p.insertionMode = InsertionMode.IN_TABLE_BODY;
|
|
15809
15918
|
startTagInTableBody(p, token);
|
|
15810
15919
|
break;
|
|
15920
|
+
}
|
|
15811
15921
|
case html_js_1.TAG_ID.TD:
|
|
15812
|
-
case html_js_1.TAG_ID.TH:
|
|
15922
|
+
case html_js_1.TAG_ID.TH: {
|
|
15813
15923
|
p.tmplInsertionModeStack[0] = InsertionMode.IN_ROW;
|
|
15814
15924
|
p.insertionMode = InsertionMode.IN_ROW;
|
|
15815
15925
|
startTagInRow(p, token);
|
|
15816
15926
|
break;
|
|
15817
|
-
|
|
15927
|
+
}
|
|
15928
|
+
default: {
|
|
15818
15929
|
p.tmplInsertionModeStack[0] = InsertionMode.IN_BODY;
|
|
15819
15930
|
p.insertionMode = InsertionMode.IN_BODY;
|
|
15820
15931
|
startTagInBody(p, token);
|
|
15932
|
+
}
|
|
15821
15933
|
}
|
|
15822
15934
|
}
|
|
15823
15935
|
function endTagInTemplate(p, token) {
|
|
@@ -16070,6 +16182,9 @@ const TABLE_CONTEXT = [html_js_1.TAG_ID.TABLE, html_js_1.TAG_ID.TEMPLATE, html_j
|
|
|
16070
16182
|
const TABLE_CELLS = [html_js_1.TAG_ID.TD, html_js_1.TAG_ID.TH];
|
|
16071
16183
|
//Stack of open elements
|
|
16072
16184
|
class OpenElementStack {
|
|
16185
|
+
get currentTmplContentOrNode() {
|
|
16186
|
+
return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;
|
|
16187
|
+
}
|
|
16073
16188
|
constructor(document, treeAdapter, handler) {
|
|
16074
16189
|
this.treeAdapter = treeAdapter;
|
|
16075
16190
|
this.handler = handler;
|
|
@@ -16080,9 +16195,6 @@ class OpenElementStack {
|
|
|
16080
16195
|
this.currentTagId = html_js_1.TAG_ID.UNKNOWN;
|
|
16081
16196
|
this.current = document;
|
|
16082
16197
|
}
|
|
16083
|
-
get currentTmplContentOrNode() {
|
|
16084
|
-
return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;
|
|
16085
|
-
}
|
|
16086
16198
|
//Index of element
|
|
16087
16199
|
_indexOf(element) {
|
|
16088
16200
|
return this.items.lastIndexOf(element, this.stackTop);
|
|
@@ -18769,7 +18881,7 @@ class Tokenizer {
|
|
|
18769
18881
|
this._emitEOFToken();
|
|
18770
18882
|
break;
|
|
18771
18883
|
}
|
|
18772
|
-
default:
|
|
18884
|
+
default: {
|
|
18773
18885
|
if (this._consumeSequenceIfMatch(unicode_js_1.SEQUENCES.PUBLIC, false)) {
|
|
18774
18886
|
this.state = State.AFTER_DOCTYPE_PUBLIC_KEYWORD;
|
|
18775
18887
|
}
|
|
@@ -18784,6 +18896,7 @@ class Tokenizer {
|
|
|
18784
18896
|
this.state = State.BOGUS_DOCTYPE;
|
|
18785
18897
|
this._stateBogusDoctype(cp);
|
|
18786
18898
|
}
|
|
18899
|
+
}
|
|
18787
18900
|
}
|
|
18788
18901
|
}
|
|
18789
18902
|
// After DOCTYPE public keyword state
|
|
@@ -19572,7 +19685,8 @@ class Preprocessor {
|
|
|
19572
19685
|
this.endOfChunkHit = !this.lastChunkWritten;
|
|
19573
19686
|
return unicode_js_1.CODE_POINTS.EOF;
|
|
19574
19687
|
}
|
|
19575
|
-
|
|
19688
|
+
const code = this.html.charCodeAt(pos);
|
|
19689
|
+
return code === unicode_js_1.CODE_POINTS.CARRIAGE_RETURN ? unicode_js_1.CODE_POINTS.LINE_FEED : code;
|
|
19576
19690
|
}
|
|
19577
19691
|
advance() {
|
|
19578
19692
|
this.pos++;
|