@aquera/nile-elements 0.0.132 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -3
- package/dist/{angular-html-f6fab145.cjs.js → angular-html-8b4a1aa7.cjs.js} +2 -2
- package/dist/{angular-html-f6fab145.cjs.js.map → angular-html-8b4a1aa7.cjs.js.map} +1 -1
- package/dist/{angular-ts-32bbcd01.cjs.js → angular-ts-ce79bdbe.cjs.js} +2 -2
- package/dist/{angular-ts-32bbcd01.cjs.js.map → angular-ts-ce79bdbe.cjs.js.map} +1 -1
- package/dist/{apl-c28795cf.cjs.js → apl-e5fc06e2.cjs.js} +2 -2
- package/dist/{apl-c28795cf.cjs.js.map → apl-e5fc06e2.cjs.js.map} +1 -1
- package/dist/{astro-46605b89.cjs.js → astro-7a24a0cf.cjs.js} +2 -2
- package/dist/{astro-46605b89.cjs.js.map → astro-7a24a0cf.cjs.js.map} +1 -1
- package/dist/{blade-c146ed7f.cjs.js → blade-36562ba4.cjs.js} +2 -2
- package/dist/{blade-c146ed7f.cjs.js.map → blade-36562ba4.cjs.js.map} +1 -1
- package/dist/{cobol-c428fca2.cjs.js → cobol-acc404d4.cjs.js} +2 -2
- package/dist/{cobol-c428fca2.cjs.js.map → cobol-acc404d4.cjs.js.map} +1 -1
- package/dist/{coffee-7840b0ba.cjs.js → coffee-062a7369.cjs.js} +2 -2
- package/dist/{coffee-7840b0ba.cjs.js.map → coffee-062a7369.cjs.js.map} +1 -1
- package/dist/{cpp-c2442fe2.cjs.js → cpp-4a7d85d2.cjs.js} +2 -2
- package/dist/{cpp-c2442fe2.cjs.js.map → cpp-4a7d85d2.cjs.js.map} +1 -1
- package/dist/{crystal-1913e34d.cjs.js → crystal-6d1991e0.cjs.js} +2 -2
- package/dist/{crystal-1913e34d.cjs.js.map → crystal-6d1991e0.cjs.js.map} +1 -1
- package/dist/css-tag-1f82a8d8.esm.js +6 -0
- package/dist/css-tag-399d5ef3.cjs.js +6 -0
- package/dist/css-tag-399d5ef3.cjs.js.map +1 -0
- package/dist/{edge-ef9e682b.cjs.js → edge-6872466f.cjs.js} +2 -2
- package/dist/{edge-ef9e682b.cjs.js.map → edge-6872466f.cjs.js.map} +1 -1
- package/dist/{elixir-d247cba5.cjs.js → elixir-e93ae0ed.cjs.js} +2 -2
- package/dist/{elixir-d247cba5.cjs.js.map → elixir-e93ae0ed.cjs.js.map} +1 -1
- package/dist/{elm-7fd07d47.cjs.js → elm-9666a0ea.cjs.js} +2 -2
- package/dist/{elm-7fd07d47.cjs.js.map → elm-9666a0ea.cjs.js.map} +1 -1
- package/dist/{erb-c813c1f2.cjs.js → erb-3676638c.cjs.js} +2 -2
- package/dist/{erb-c813c1f2.cjs.js.map → erb-3676638c.cjs.js.map} +1 -1
- package/dist/{fixture-81e5a936.esm.js → fixture-8aa86bc9.esm.js} +1 -1
- package/dist/{fixture-1a9fb5f1.cjs.js → fixture-a0ed956d.cjs.js} +2 -2
- package/dist/{fixture-1a9fb5f1.cjs.js.map → fixture-a0ed956d.cjs.js.map} +1 -1
- package/dist/{fortran-fixed-form-c39bf051.cjs.js → fortran-fixed-form-03f47e7f.cjs.js} +2 -2
- package/dist/{fortran-fixed-form-c39bf051.cjs.js.map → fortran-fixed-form-03f47e7f.cjs.js.map} +1 -1
- package/dist/{fsharp-ba007c9c.cjs.js → fsharp-e47f1ac5.cjs.js} +2 -2
- package/dist/{fsharp-ba007c9c.cjs.js.map → fsharp-e47f1ac5.cjs.js.map} +1 -1
- package/dist/{gdresource-f3068367.cjs.js → gdresource-6b4eca9a.cjs.js} +2 -2
- package/dist/{gdresource-f3068367.cjs.js.map → gdresource-6b4eca9a.cjs.js.map} +1 -1
- package/dist/{git-commit-372b638c.cjs.js → git-commit-41b8df9e.cjs.js} +2 -2
- package/dist/{git-commit-372b638c.cjs.js.map → git-commit-41b8df9e.cjs.js.map} +1 -1
- package/dist/{git-rebase-2cc6f2a3.cjs.js → git-rebase-db9d0393.cjs.js} +2 -2
- package/dist/{git-rebase-2cc6f2a3.cjs.js.map → git-rebase-db9d0393.cjs.js.map} +1 -1
- package/dist/{glimmer-js-abea58b2.cjs.js → glimmer-js-93526e67.cjs.js} +2 -2
- package/dist/{glimmer-js-abea58b2.cjs.js.map → glimmer-js-93526e67.cjs.js.map} +1 -1
- package/dist/{glimmer-ts-54377452.cjs.js → glimmer-ts-c22a40d1.cjs.js} +2 -2
- package/dist/{glimmer-ts-54377452.cjs.js.map → glimmer-ts-c22a40d1.cjs.js.map} +1 -1
- package/dist/{glsl-3975c46b.cjs.js → glsl-97f52501.cjs.js} +2 -2
- package/dist/{glsl-3975c46b.cjs.js.map → glsl-97f52501.cjs.js.map} +1 -1
- package/dist/{graphql-74f146e1.cjs.js → graphql-3c8d6e2e.cjs.js} +2 -2
- package/dist/{graphql-74f146e1.cjs.js.map → graphql-3c8d6e2e.cjs.js.map} +1 -1
- package/dist/{hack-a7b546c5.cjs.js → hack-0ed23198.cjs.js} +2 -2
- package/dist/{hack-a7b546c5.cjs.js.map → hack-0ed23198.cjs.js.map} +1 -1
- package/dist/{haml-ba2d8cb7.cjs.js → haml-d01845f9.cjs.js} +2 -2
- package/dist/{haml-ba2d8cb7.cjs.js.map → haml-d01845f9.cjs.js.map} +1 -1
- package/dist/{handlebars-864fcb12.cjs.js → handlebars-6366ddff.cjs.js} +2 -2
- package/dist/{handlebars-864fcb12.cjs.js.map → handlebars-6366ddff.cjs.js.map} +1 -1
- package/dist/{html-3718679d.cjs.js → html-9dd4830f.cjs.js} +2 -2
- package/dist/{html-3718679d.cjs.js.map → html-9dd4830f.cjs.js.map} +1 -1
- package/dist/{html-derivative-3723ba1c.cjs.js → html-derivative-846e2ff2.cjs.js} +2 -2
- package/dist/{html-derivative-3723ba1c.cjs.js.map → html-derivative-846e2ff2.cjs.js.map} +1 -1
- package/dist/{http-08501497.cjs.js → http-6d92bd57.cjs.js} +2 -2
- package/dist/{http-08501497.cjs.js.map → http-6d92bd57.cjs.js.map} +1 -1
- package/dist/{hxml-bbac80e4.cjs.js → hxml-3e0a6d80.cjs.js} +2 -2
- package/dist/{hxml-bbac80e4.cjs.js.map → hxml-3e0a6d80.cjs.js.map} +1 -1
- package/dist/{imba-96ef7d7a.cjs.js → imba-3f07921e.cjs.js} +2 -2
- package/dist/{imba-96ef7d7a.cjs.js.map → imba-3f07921e.cjs.js.map} +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/{jinja-b0134831.cjs.js → jinja-ce5ce11d.cjs.js} +2 -2
- package/dist/{jinja-b0134831.cjs.js.map → jinja-ce5ce11d.cjs.js.map} +1 -1
- package/dist/{jison-21a8c237.cjs.js → jison-3484cb24.cjs.js} +2 -2
- package/dist/{jison-21a8c237.cjs.js.map → jison-3484cb24.cjs.js.map} +1 -1
- package/dist/{julia-689ac552.cjs.js → julia-6110642b.cjs.js} +2 -2
- package/dist/{julia-689ac552.cjs.js.map → julia-6110642b.cjs.js.map} +1 -1
- package/dist/{latex-4d76e817.cjs.js → latex-8fc6ef8b.cjs.js} +2 -2
- package/dist/{latex-4d76e817.cjs.js.map → latex-8fc6ef8b.cjs.js.map} +1 -1
- package/dist/{liquid-17160769.cjs.js → liquid-1fa50697.cjs.js} +2 -2
- package/dist/{liquid-17160769.cjs.js.map → liquid-1fa50697.cjs.js.map} +1 -1
- package/dist/lit-element-38060f1a.cjs.js +14 -0
- package/dist/lit-element-38060f1a.cjs.js.map +1 -0
- package/dist/lit-element-68f4d117.esm.js +18 -0
- package/dist/{lua-fe4787ec.cjs.js → lua-371a698b.cjs.js} +2 -2
- package/dist/{lua-fe4787ec.cjs.js.map → lua-371a698b.cjs.js.map} +1 -1
- package/dist/{marko-2880d4ee.cjs.js → marko-4c2e4f26.cjs.js} +2 -2
- package/dist/{marko-2880d4ee.cjs.js.map → marko-4c2e4f26.cjs.js.map} +1 -1
- package/dist/{mdc-a3fe82c5.cjs.js → mdc-766432f9.cjs.js} +2 -2
- package/dist/{mdc-a3fe82c5.cjs.js.map → mdc-766432f9.cjs.js.map} +1 -1
- package/dist/{nginx-7bc0fc82.cjs.js → nginx-5a997e1c.cjs.js} +2 -2
- package/dist/{nginx-7bc0fc82.cjs.js.map → nginx-5a997e1c.cjs.js.map} +1 -1
- package/dist/nile-accordion/index.cjs.js +1 -1
- package/dist/nile-accordion/index.esm.js +1 -1
- package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
- package/dist/nile-accordion/nile-accordian.test.cjs.js.map +1 -1
- package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
- package/dist/nile-accordion/nile-accordion.cjs.js +1 -1
- package/dist/nile-accordion/nile-accordion.cjs.js.map +1 -1
- package/dist/nile-accordion/nile-accordion.css.cjs.js +1 -1
- package/dist/nile-accordion/nile-accordion.css.cjs.js.map +1 -1
- package/dist/nile-accordion/nile-accordion.css.esm.js +1 -1
- package/dist/nile-accordion/nile-accordion.esm.js +2 -2
- package/dist/nile-auto-complete/index.cjs.js +1 -1
- package/dist/nile-auto-complete/index.esm.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.cjs.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.cjs.js.map +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js.map +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.css.esm.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.esm.js +2 -2
- package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js.map +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
- package/dist/nile-avatar/index.cjs.js +1 -1
- package/dist/nile-avatar/index.esm.js +1 -1
- package/dist/nile-avatar/nile-avatar.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.cjs.js.map +1 -1
- package/dist/nile-avatar/nile-avatar.css.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.css.cjs.js.map +1 -1
- package/dist/nile-avatar/nile-avatar.css.esm.js +2 -2
- package/dist/nile-avatar/nile-avatar.esm.js +6 -6
- package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.cjs.js.map +1 -1
- package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
- package/dist/nile-badge/index.cjs.js +1 -1
- package/dist/nile-badge/index.esm.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.css.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.css.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.css.esm.js +1 -1
- package/dist/nile-badge/nile-badge.esm.js +2 -2
- package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.test.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.test.esm.js +1 -1
- package/dist/nile-breadcrumb/index.cjs.js +1 -1
- package/dist/nile-breadcrumb/index.esm.js +1 -1
- package/dist/nile-breadcrumb/nile-breadcrumb.cjs.js +1 -1
- package/dist/nile-breadcrumb/nile-breadcrumb.cjs.js.map +1 -1
- package/dist/nile-breadcrumb/nile-breadcrumb.css.cjs.js +1 -1
- package/dist/nile-breadcrumb/nile-breadcrumb.css.cjs.js.map +1 -1
- package/dist/nile-breadcrumb/nile-breadcrumb.css.esm.js +2 -2
- package/dist/nile-breadcrumb/nile-breadcrumb.esm.js +1 -1
- package/dist/nile-breadcrumb-item/index.cjs.js +1 -1
- package/dist/nile-breadcrumb-item/index.esm.js +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.cjs.js +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.cjs.js.map +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.css.cjs.js +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.css.cjs.js.map +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.css.esm.js +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.esm.js +2 -2
- package/dist/nile-button/index.cjs.js +1 -1
- package/dist/nile-button/index.esm.js +1 -1
- package/dist/nile-button/nile-button.cjs.js +1 -1
- package/dist/nile-button/nile-button.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.css.cjs.js +1 -1
- package/dist/nile-button/nile-button.css.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.css.esm.js +1 -1
- package/dist/nile-button/nile-button.esm.js +47 -23
- package/dist/nile-button/nile-button.test.cjs.js +1 -1
- package/dist/nile-button/nile-button.test.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.test.esm.js +1 -1
- package/dist/nile-button-filter/index.cjs.js +1 -1
- package/dist/nile-button-filter/index.esm.js +1 -1
- package/dist/nile-button-filter/nile-button-filter.cjs.js +1 -1
- package/dist/nile-button-filter/nile-button-filter.cjs.js.map +1 -1
- package/dist/nile-button-filter/nile-button-filter.css.cjs.js +1 -1
- package/dist/nile-button-filter/nile-button-filter.css.cjs.js.map +1 -1
- package/dist/nile-button-filter/nile-button-filter.css.esm.js +1 -1
- package/dist/nile-button-filter/nile-button-filter.esm.js +2 -2
- package/dist/nile-button-toggle/index.cjs.js +1 -1
- package/dist/nile-button-toggle/index.esm.js +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.cjs.js +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.cjs.js.map +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.css.cjs.js +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.css.cjs.js.map +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.css.esm.js +2 -2
- package/dist/nile-button-toggle/nile-button-toggle.esm.js +2 -2
- package/dist/nile-button-toggle-group/index.cjs.js +1 -1
- package/dist/nile-button-toggle-group/index.esm.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.cjs.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.cjs.js.map +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.css.cjs.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.css.cjs.js.map +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.css.esm.js +2 -2
- package/dist/nile-button-toggle-group/nile-button-toggle-group.esm.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js.map +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
- package/dist/nile-calendar/index.cjs.js +1 -1
- package/dist/nile-calendar/index.esm.js +1 -1
- package/dist/nile-calendar/nile-calendar.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.css.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.css.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.css.esm.js +1 -1
- package/dist/nile-calendar/nile-calendar.esm.js +7 -7
- package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
- package/dist/nile-card/index.cjs.js +1 -1
- package/dist/nile-card/index.esm.js +1 -1
- package/dist/nile-card/nile-card.cjs.js +1 -1
- package/dist/nile-card/nile-card.cjs.js.map +1 -1
- package/dist/nile-card/nile-card.css.cjs.js +1 -1
- package/dist/nile-card/nile-card.css.cjs.js.map +1 -1
- package/dist/nile-card/nile-card.css.esm.js +1 -1
- package/dist/nile-card/nile-card.esm.js +1 -1
- package/dist/nile-card/nile-card.test.cjs.js +1 -1
- package/dist/nile-card/nile-card.test.cjs.js.map +1 -1
- package/dist/nile-card/nile-card.test.esm.js +1 -1
- package/dist/nile-checkbox/index.cjs.js +1 -1
- package/dist/nile-checkbox/index.esm.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.cjs.js.map +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.cjs.js.map +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.esm.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.esm.js +5 -5
- package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.test.cjs.js.map +1 -1
- package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
- package/dist/nile-chip/index.cjs.js +1 -1
- package/dist/nile-chip/index.esm.js +1 -1
- package/dist/nile-chip/nile-chip.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.cjs.js.map +1 -1
- package/dist/nile-chip/nile-chip.css.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.css.cjs.js.map +1 -1
- package/dist/nile-chip/nile-chip.css.esm.js +1 -1
- package/dist/nile-chip/nile-chip.esm.js +5 -5
- package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
- package/dist/nile-chip/nile-chip.test.esm.js +1 -1
- package/dist/nile-circular-progressbar/index.cjs.js +1 -1
- package/dist/nile-circular-progressbar/index.esm.js +1 -1
- package/dist/nile-circular-progressbar/nile-circular-progressbar.cjs.js +1 -1
- package/dist/nile-circular-progressbar/nile-circular-progressbar.cjs.js.map +1 -1
- package/dist/nile-circular-progressbar/nile-circular-progressbar.css.cjs.js +1 -1
- package/dist/nile-circular-progressbar/nile-circular-progressbar.css.cjs.js.map +1 -1
- package/dist/nile-circular-progressbar/nile-circular-progressbar.css.esm.js +1 -1
- package/dist/nile-circular-progressbar/nile-circular-progressbar.esm.js +2 -2
- package/dist/nile-code-editor/index.cjs.js +1 -1
- package/dist/nile-code-editor/index.esm.js +1 -1
- package/dist/nile-code-editor/nile-code-editor.cjs.js +2 -2
- package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
- package/dist/nile-code-editor/nile-code-editor.css.cjs.js +1 -1
- package/dist/nile-code-editor/nile-code-editor.css.cjs.js.map +1 -1
- package/dist/nile-code-editor/nile-code-editor.css.esm.js +1 -1
- package/dist/nile-code-editor/nile-code-editor.esm.js +3 -3
- package/dist/nile-content-editor/index.cjs.js +1 -1
- package/dist/nile-content-editor/index.esm.js +1 -1
- package/dist/nile-content-editor/nile-content-editor.cjs.js +1 -1
- package/dist/nile-content-editor/nile-content-editor.cjs.js.map +1 -1
- package/dist/nile-content-editor/nile-content-editor.css.cjs.js +1 -1
- package/dist/nile-content-editor/nile-content-editor.css.cjs.js.map +1 -1
- package/dist/nile-content-editor/nile-content-editor.css.esm.js +1 -1
- package/dist/nile-content-editor/nile-content-editor.esm.js +8 -8
- package/dist/nile-date-picker/index.cjs.js +1 -1
- package/dist/nile-date-picker/index.esm.js +1 -1
- package/dist/nile-date-picker/nile-date-picker.cjs.js +1 -1
- package/dist/nile-date-picker/nile-date-picker.cjs.js.map +1 -1
- package/dist/nile-date-picker/nile-date-picker.css.cjs.js +1 -1
- package/dist/nile-date-picker/nile-date-picker.css.cjs.js.map +1 -1
- package/dist/nile-date-picker/nile-date-picker.css.esm.js +2 -2
- package/dist/nile-date-picker/nile-date-picker.esm.js +2 -2
- package/dist/nile-dialog/index.cjs.js +1 -1
- package/dist/nile-dialog/index.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
- package/dist/nile-dialog/nile-dialog.css.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.css.cjs.js.map +1 -1
- package/dist/nile-dialog/nile-dialog.css.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.cjs.js.map +1 -1
- package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
- package/dist/nile-divider/index.cjs.js +1 -1
- package/dist/nile-divider/index.esm.js +1 -1
- package/dist/nile-divider/nile-divider.cjs.js +1 -1
- package/dist/nile-divider/nile-divider.cjs.js.map +1 -1
- package/dist/nile-divider/nile-divider.css.cjs.js +1 -1
- package/dist/nile-divider/nile-divider.css.cjs.js.map +1 -1
- package/dist/nile-divider/nile-divider.css.esm.js +2 -2
- package/dist/nile-divider/nile-divider.esm.js +2 -2
- package/dist/nile-drawer/index.cjs.js +1 -1
- package/dist/nile-drawer/index.esm.js +1 -1
- package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
- package/dist/nile-drawer/nile-drawer.css.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.css.cjs.js.map +1 -1
- package/dist/nile-drawer/nile-drawer.css.esm.js +2 -2
- package/dist/nile-drawer/nile-drawer.esm.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -1
- package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
- package/dist/nile-dropdown/index.cjs.js +1 -1
- package/dist/nile-dropdown/index.esm.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.cjs.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.cjs.js.map +1 -1
- package/dist/nile-dropdown/nile-dropdown.css.cjs.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.css.cjs.js.map +1 -1
- package/dist/nile-dropdown/nile-dropdown.css.esm.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.esm.js +2 -2
- package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.test.cjs.js.map +1 -1
- package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
- package/dist/nile-empty-state/index.cjs.js +1 -1
- package/dist/nile-empty-state/index.esm.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.cjs.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.cjs.js.map +1 -1
- package/dist/nile-empty-state/nile-empty-state.css.cjs.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.css.cjs.js.map +1 -1
- package/dist/nile-empty-state/nile-empty-state.css.esm.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.esm.js +5 -5
- package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.test.cjs.js.map +1 -1
- package/dist/nile-empty-state/nile-empty-state.test.esm.js +2 -2
- package/dist/nile-error-message/index.cjs.js +1 -1
- package/dist/nile-error-message/index.esm.js +1 -1
- package/dist/nile-error-message/nile-error-message.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.cjs.js.map +1 -1
- package/dist/nile-error-message/nile-error-message.css.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.css.cjs.js.map +1 -1
- package/dist/nile-error-message/nile-error-message.css.esm.js +1 -1
- package/dist/nile-error-message/nile-error-message.esm.js +2 -2
- package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.test.cjs.js.map +1 -1
- package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
- package/dist/nile-error-notification/index.cjs.js +1 -1
- package/dist/nile-error-notification/index.esm.js +1 -1
- package/dist/nile-error-notification/nile-error-notification.cjs.js +1 -1
- package/dist/nile-error-notification/nile-error-notification.cjs.js.map +1 -1
- package/dist/nile-error-notification/nile-error-notification.css.cjs.js +1 -1
- package/dist/nile-error-notification/nile-error-notification.css.cjs.js.map +1 -1
- package/dist/nile-error-notification/nile-error-notification.css.esm.js +1 -1
- package/dist/nile-error-notification/nile-error-notification.esm.js +2 -2
- package/dist/nile-footer/index.cjs.js +1 -1
- package/dist/nile-footer/index.cjs.js.map +1 -1
- package/dist/nile-footer/index.esm.js +2 -2
- package/dist/nile-footer/nile-footer.css.cjs.js +1 -1
- package/dist/nile-footer/nile-footer.css.cjs.js.map +1 -1
- package/dist/nile-footer/nile-footer.css.esm.js +2 -2
- package/dist/nile-form-error-message/index.cjs.js +1 -1
- package/dist/nile-form-error-message/index.esm.js +1 -1
- package/dist/nile-form-error-message/nile-form-error-message.cjs.js +1 -1
- package/dist/nile-form-error-message/nile-form-error-message.cjs.js.map +1 -1
- package/dist/nile-form-error-message/nile-form-error-message.css.cjs.js +1 -1
- package/dist/nile-form-error-message/nile-form-error-message.css.cjs.js.map +1 -1
- package/dist/nile-form-error-message/nile-form-error-message.css.esm.js +1 -1
- package/dist/nile-form-error-message/nile-form-error-message.esm.js +2 -2
- package/dist/nile-form-group/index.cjs.js +1 -1
- package/dist/nile-form-group/index.esm.js +1 -1
- package/dist/nile-form-group/nile-form-group.cjs.js +1 -1
- package/dist/nile-form-group/nile-form-group.cjs.js.map +1 -1
- package/dist/nile-form-group/nile-form-group.css.cjs.js +1 -1
- package/dist/nile-form-group/nile-form-group.css.cjs.js.map +1 -1
- package/dist/nile-form-group/nile-form-group.css.esm.js +1 -1
- package/dist/nile-form-group/nile-form-group.esm.js +2 -2
- package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
- package/dist/nile-form-group/nile-form-group.test.cjs.js.map +1 -1
- package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
- package/dist/nile-form-help-text/index.cjs.js +1 -1
- package/dist/nile-form-help-text/index.esm.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.cjs.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.cjs.js.map +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.css.cjs.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.css.cjs.js.map +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.css.esm.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.esm.js +3 -3
- package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js.map +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
- package/dist/nile-format-date/index.cjs.js +1 -1
- package/dist/nile-format-date/index.esm.js +1 -1
- package/dist/nile-format-date/nile-format-date.cjs.js +1 -1
- package/dist/nile-format-date/nile-format-date.cjs.js.map +1 -1
- package/dist/nile-format-date/nile-format-date.css.cjs.js +1 -1
- package/dist/nile-format-date/nile-format-date.css.cjs.js.map +1 -1
- package/dist/nile-format-date/nile-format-date.css.esm.js +2 -2
- package/dist/nile-format-date/nile-format-date.esm.js +2 -2
- package/dist/nile-hero/index.cjs.js +1 -1
- package/dist/nile-hero/index.esm.js +1 -1
- package/dist/nile-hero/nile-hero.cjs.js +1 -1
- package/dist/nile-hero/nile-hero.cjs.js.map +1 -1
- package/dist/nile-hero/nile-hero.css.cjs.js +1 -1
- package/dist/nile-hero/nile-hero.css.cjs.js.map +1 -1
- package/dist/nile-hero/nile-hero.css.esm.js +1 -1
- package/dist/nile-hero/nile-hero.esm.js +3 -3
- package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
- package/dist/nile-hero/nile-hero.test.cjs.js.map +1 -1
- package/dist/nile-hero/nile-hero.test.esm.js +3 -3
- package/dist/nile-hero-header/index.cjs.js +1 -1
- package/dist/nile-hero-header/index.esm.js +1 -1
- package/dist/nile-hero-header/nile-hero-header.cjs.js +1 -1
- package/dist/nile-hero-header/nile-hero-header.cjs.js.map +1 -1
- package/dist/nile-hero-header/nile-hero-header.css.cjs.js +1 -1
- package/dist/nile-hero-header/nile-hero-header.css.cjs.js.map +1 -1
- package/dist/nile-hero-header/nile-hero-header.css.esm.js +1 -1
- package/dist/nile-hero-header/nile-hero-header.esm.js +2 -2
- package/dist/nile-highlighter/index.cjs.js +1 -1
- package/dist/nile-highlighter/index.esm.js +1 -1
- package/dist/nile-highlighter/nile-highlighter.cjs.js +1 -1
- package/dist/nile-highlighter/nile-highlighter.cjs.js.map +1 -1
- package/dist/nile-highlighter/nile-highlighter.css.cjs.js +1 -1
- package/dist/nile-highlighter/nile-highlighter.css.cjs.js.map +1 -1
- package/dist/nile-highlighter/nile-highlighter.css.esm.js +2 -2
- package/dist/nile-highlighter/nile-highlighter.esm.js +2 -2
- package/dist/nile-icon/index.cjs.js.map +1 -1
- package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
- package/dist/nile-icon/nile-icon.test.esm.js +1 -1
- package/dist/nile-icon-button/index.cjs.js +1 -1
- package/dist/nile-icon-button/index.esm.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
- package/dist/nile-icon-button/nile-icon-button.css.cjs.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.css.cjs.js.map +1 -1
- package/dist/nile-icon-button/nile-icon-button.css.esm.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.esm.js +63 -32
- package/dist/nile-inline-edit/index.cjs.js +1 -1
- package/dist/nile-inline-edit/index.esm.js +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.cjs.js +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.cjs.js.map +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.css.cjs.js +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.css.cjs.js.map +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.css.esm.js +1 -1
- package/dist/nile-inline-edit/nile-inline-edit.esm.js +2 -2
- package/dist/nile-input/index.cjs.js +1 -1
- package/dist/nile-input/index.esm.js +1 -1
- package/dist/nile-input/nile-input.cjs.js +1 -1
- package/dist/nile-input/nile-input.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.css.cjs.js +1 -1
- package/dist/nile-input/nile-input.css.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.css.esm.js +1 -1
- package/dist/nile-input/nile-input.esm.js +20 -20
- package/dist/nile-input/nile-input.test.cjs.js +1 -1
- package/dist/nile-input/nile-input.test.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.test.esm.js +1 -1
- package/dist/nile-link/index.cjs.js +1 -1
- package/dist/nile-link/index.esm.js +1 -1
- package/dist/nile-link/nile-link.cjs.js +1 -1
- package/dist/nile-link/nile-link.cjs.js.map +1 -1
- package/dist/nile-link/nile-link.css.cjs.js +1 -1
- package/dist/nile-link/nile-link.css.cjs.js.map +1 -1
- package/dist/nile-link/nile-link.css.esm.js +1 -1
- package/dist/nile-link/nile-link.esm.js +4 -4
- package/dist/nile-link/nile-link.test.cjs.js +1 -1
- package/dist/nile-link/nile-link.test.cjs.js.map +1 -1
- package/dist/nile-link/nile-link.test.esm.js +1 -1
- package/dist/nile-list/index.cjs.js +1 -1
- package/dist/nile-list/index.esm.js +1 -1
- package/dist/nile-list/nile-list.cjs.js +1 -1
- package/dist/nile-list/nile-list.cjs.js.map +1 -1
- package/dist/nile-list/nile-list.css.cjs.js +1 -1
- package/dist/nile-list/nile-list.css.cjs.js.map +1 -1
- package/dist/nile-list/nile-list.css.esm.js +1 -1
- package/dist/nile-list/nile-list.esm.js +1 -1
- package/dist/nile-list-item/index.cjs.js +1 -1
- package/dist/nile-list-item/index.esm.js +1 -1
- package/dist/nile-list-item/nile-list-item.cjs.js +1 -1
- package/dist/nile-list-item/nile-list-item.cjs.js.map +1 -1
- package/dist/nile-list-item/nile-list-item.css.cjs.js +1 -1
- package/dist/nile-list-item/nile-list-item.css.cjs.js.map +1 -1
- package/dist/nile-list-item/nile-list-item.css.esm.js +1 -1
- package/dist/nile-list-item/nile-list-item.esm.js +2 -2
- package/dist/nile-loader/index.cjs.js +1 -1
- package/dist/nile-loader/index.esm.js +1 -1
- package/dist/nile-loader/nile-loader.cjs.js +1 -1
- package/dist/nile-loader/nile-loader.cjs.js.map +1 -1
- package/dist/nile-loader/nile-loader.esm.js +5 -5
- package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
- package/dist/nile-loader/nile-loader.test.cjs.js.map +1 -1
- package/dist/nile-loader/nile-loader.test.esm.js +1 -1
- package/dist/nile-menu/index.cjs.js +1 -1
- package/dist/nile-menu/index.esm.js +1 -1
- package/dist/nile-menu/nile-menu.cjs.js +1 -1
- package/dist/nile-menu/nile-menu.cjs.js.map +1 -1
- package/dist/nile-menu/nile-menu.css.cjs.js +1 -1
- package/dist/nile-menu/nile-menu.css.cjs.js.map +1 -1
- package/dist/nile-menu/nile-menu.css.esm.js +2 -2
- package/dist/nile-menu/nile-menu.esm.js +1 -1
- package/dist/nile-menu-item/index.cjs.js +1 -1
- package/dist/nile-menu-item/index.esm.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
- package/dist/nile-menu-item/nile-menu-item.css.cjs.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.css.cjs.js.map +1 -1
- package/dist/nile-menu-item/nile-menu-item.css.esm.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.esm.js +3 -3
- package/dist/nile-option/index.cjs.js +1 -1
- package/dist/nile-option/index.esm.js +1 -1
- package/dist/nile-option/nile-option.cjs.js +1 -1
- package/dist/nile-option/nile-option.cjs.js.map +1 -1
- package/dist/nile-option/nile-option.css.cjs.js +1 -1
- package/dist/nile-option/nile-option.css.cjs.js.map +1 -1
- package/dist/nile-option/nile-option.css.esm.js +2 -2
- package/dist/nile-option/nile-option.esm.js +1 -1
- package/dist/nile-page-header/index.cjs.js +1 -1
- package/dist/nile-page-header/index.esm.js +1 -1
- package/dist/nile-page-header/nile-page-header.cjs.js +1 -1
- package/dist/nile-page-header/nile-page-header.cjs.js.map +1 -1
- package/dist/nile-page-header/nile-page-header.css.cjs.js +1 -1
- package/dist/nile-page-header/nile-page-header.css.cjs.js.map +1 -1
- package/dist/nile-page-header/nile-page-header.css.esm.js +1 -1
- package/dist/nile-page-header/nile-page-header.esm.js +1 -1
- package/dist/nile-popover/index.cjs.js +1 -1
- package/dist/nile-popover/index.esm.js +1 -1
- package/dist/nile-popover/nile-popover.cjs.js +1 -1
- package/dist/nile-popover/nile-popover.cjs.js.map +1 -1
- package/dist/nile-popover/nile-popover.css.cjs.js +1 -1
- package/dist/nile-popover/nile-popover.css.cjs.js.map +1 -1
- package/dist/nile-popover/nile-popover.css.esm.js +1 -1
- package/dist/nile-popover/nile-popover.esm.js +2 -2
- package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
- package/dist/nile-popover/nile-popover.test.cjs.js.map +1 -1
- package/dist/nile-popover/nile-popover.test.esm.js +5 -5
- package/dist/nile-popup/index.cjs.js +1 -1
- package/dist/nile-popup/index.esm.js +1 -1
- package/dist/nile-popup/nile-popup.cjs.js +1 -1
- package/dist/nile-popup/nile-popup.cjs.js.map +1 -1
- package/dist/nile-popup/nile-popup.css.cjs.js +1 -1
- package/dist/nile-popup/nile-popup.css.cjs.js.map +1 -1
- package/dist/nile-popup/nile-popup.css.esm.js +1 -1
- package/dist/nile-popup/nile-popup.esm.js +1 -1
- package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
- package/dist/nile-popup/nile-popup.test.cjs.js.map +1 -1
- package/dist/nile-popup/nile-popup.test.esm.js +1 -1
- package/dist/nile-progress-bar/index.cjs.js +1 -1
- package/dist/nile-progress-bar/index.esm.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.cjs.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.cjs.js.map +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.esm.js +2 -2
- package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js.map +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
- package/dist/nile-radio/index.cjs.js +1 -1
- package/dist/nile-radio/index.esm.js +1 -1
- package/dist/nile-radio/nile-radio.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.cjs.js.map +1 -1
- package/dist/nile-radio/nile-radio.css.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.css.cjs.js.map +1 -1
- package/dist/nile-radio/nile-radio.css.esm.js +1 -1
- package/dist/nile-radio/nile-radio.esm.js +3 -3
- package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.test.cjs.js.map +1 -1
- package/dist/nile-radio/nile-radio.test.esm.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.cjs.js.map +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.cjs.js.map +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.esm.js +2 -2
- package/dist/nile-section-message/index.cjs.js +1 -1
- package/dist/nile-section-message/index.esm.js +1 -1
- package/dist/nile-section-message/nile-section-message.cjs.js +1 -1
- package/dist/nile-section-message/nile-section-message.cjs.js.map +1 -1
- package/dist/nile-section-message/nile-section-message.css.cjs.js +1 -1
- package/dist/nile-section-message/nile-section-message.css.cjs.js.map +1 -1
- package/dist/nile-section-message/nile-section-message.css.esm.js +1 -1
- package/dist/nile-section-message/nile-section-message.esm.js +5 -5
- package/dist/nile-select/index.cjs.js +1 -1
- package/dist/nile-select/index.esm.js +1 -1
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.css.cjs.js +1 -1
- package/dist/nile-select/nile-select.css.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.css.esm.js +1 -1
- package/dist/nile-select/nile-select.esm.js +12 -12
- package/dist/nile-select/nile-select.test.cjs.js +1 -1
- package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.test.esm.js +1 -1
- package/dist/nile-sidebar-menu/index.cjs.js +1 -1
- package/dist/nile-sidebar-menu/index.esm.js +1 -1
- package/dist/nile-sidebar-menu/nile-sidebar-menu.cjs.js +1 -1
- package/dist/nile-sidebar-menu/nile-sidebar-menu.cjs.js.map +1 -1
- package/dist/nile-sidebar-menu/nile-sidebar-menu.css.cjs.js +1 -1
- package/dist/nile-sidebar-menu/nile-sidebar-menu.css.cjs.js.map +1 -1
- package/dist/nile-sidebar-menu/nile-sidebar-menu.css.esm.js +1 -1
- package/dist/nile-sidebar-menu/nile-sidebar-menu.esm.js +2 -2
- package/dist/nile-sidebar-menu-items/index.cjs.js +1 -1
- package/dist/nile-sidebar-menu-items/index.esm.js +1 -1
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.cjs.js +1 -1
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.cjs.js.map +1 -1
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.css.cjs.js +1 -1
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.css.cjs.js.map +1 -1
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.css.esm.js +1 -1
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.esm.js +2 -2
- package/dist/nile-sidebar-wrapper/index.cjs.js +1 -1
- package/dist/nile-sidebar-wrapper/index.esm.js +1 -1
- package/dist/nile-sidebar-wrapper/nile-sidebar-wrapper.cjs.js +1 -1
- package/dist/nile-sidebar-wrapper/nile-sidebar-wrapper.cjs.js.map +1 -1
- package/dist/nile-sidebar-wrapper/nile-sidebar-wrapper.css.cjs.js +1 -1
- package/dist/nile-sidebar-wrapper/nile-sidebar-wrapper.css.cjs.js.map +1 -1
- package/dist/nile-sidebar-wrapper/nile-sidebar-wrapper.css.esm.js +1 -1
- package/dist/nile-sidebar-wrapper/nile-sidebar-wrapper.esm.js +5 -5
- package/dist/nile-slide-toggle/index.cjs.js +1 -1
- package/dist/nile-slide-toggle/index.esm.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.cjs.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.cjs.js.map +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.esm.js +3 -3
- package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js.map +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
- package/dist/nile-spinner/index.cjs.js +1 -1
- package/dist/nile-spinner/index.esm.js +1 -1
- package/dist/nile-spinner/nile-spinner.cjs.js +1 -1
- package/dist/nile-spinner/nile-spinner.cjs.js.map +1 -1
- package/dist/nile-spinner/nile-spinner.css.cjs.js +1 -1
- package/dist/nile-spinner/nile-spinner.css.cjs.js.map +1 -1
- package/dist/nile-spinner/nile-spinner.css.esm.js +1 -1
- package/dist/nile-spinner/nile-spinner.esm.js +2 -2
- package/dist/nile-split-panel/index.cjs.js +1 -1
- package/dist/nile-split-panel/index.esm.js +1 -1
- package/dist/nile-split-panel/nile-split-panel.cjs.js +1 -1
- package/dist/nile-split-panel/nile-split-panel.cjs.js.map +1 -1
- package/dist/nile-split-panel/nile-split-panel.css.cjs.js +1 -1
- package/dist/nile-split-panel/nile-split-panel.css.cjs.js.map +1 -1
- package/dist/nile-split-panel/nile-split-panel.css.esm.js +1 -1
- package/dist/nile-split-panel/nile-split-panel.esm.js +1 -1
- package/dist/nile-stepper/index.cjs.js +1 -1
- package/dist/nile-stepper/index.esm.js +1 -1
- package/dist/nile-stepper/nile-stepper.cjs.js +1 -1
- package/dist/nile-stepper/nile-stepper.cjs.js.map +1 -1
- package/dist/nile-stepper/nile-stepper.css.cjs.js +1 -1
- package/dist/nile-stepper/nile-stepper.css.cjs.js.map +1 -1
- package/dist/nile-stepper/nile-stepper.css.esm.js +1 -1
- package/dist/nile-stepper/nile-stepper.esm.js +3 -3
- package/dist/nile-stepper-item/index.cjs.js +1 -1
- package/dist/nile-stepper-item/index.esm.js +1 -1
- package/dist/nile-stepper-item/nile-stepper-item.cjs.js +1 -5
- package/dist/nile-stepper-item/nile-stepper-item.cjs.js.map +1 -1
- package/dist/nile-stepper-item/nile-stepper-item.css.cjs.js +1 -1
- package/dist/nile-stepper-item/nile-stepper-item.css.cjs.js.map +1 -1
- package/dist/nile-stepper-item/nile-stepper-item.css.esm.js +1 -1
- package/dist/nile-stepper-item/nile-stepper-item.esm.js +11 -16
- package/dist/nile-switcher/index.cjs.js +1 -1
- package/dist/nile-switcher/index.esm.js +1 -1
- package/dist/nile-switcher/nile-switcher.cjs.js +1 -1
- package/dist/nile-switcher/nile-switcher.cjs.js.map +1 -1
- package/dist/nile-switcher/nile-switcher.css.cjs.js +1 -1
- package/dist/nile-switcher/nile-switcher.css.cjs.js.map +1 -1
- package/dist/nile-switcher/nile-switcher.css.esm.js +1 -1
- package/dist/nile-switcher/nile-switcher.esm.js +21 -21
- package/dist/nile-tab/index.cjs.js +1 -1
- package/dist/nile-tab/index.esm.js +1 -1
- package/dist/nile-tab/nile-tab.cjs.js +1 -1
- package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
- package/dist/nile-tab/nile-tab.css.cjs.js +1 -1
- package/dist/nile-tab/nile-tab.css.cjs.js.map +1 -1
- package/dist/nile-tab/nile-tab.css.esm.js +1 -1
- package/dist/nile-tab/nile-tab.esm.js +3 -3
- package/dist/nile-tab-group/index.cjs.js +1 -1
- package/dist/nile-tab-group/index.esm.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
- package/dist/nile-tab-group/nile-tab-group.css.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.css.cjs.js.map +1 -1
- package/dist/nile-tab-group/nile-tab-group.css.esm.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.esm.js +4 -4
- package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
- package/dist/nile-tab-panel/index.cjs.js +1 -1
- package/dist/nile-tab-panel/index.esm.js +1 -1
- package/dist/nile-tab-panel/nile-tab-panel.cjs.js +1 -1
- package/dist/nile-tab-panel/nile-tab-panel.cjs.js.map +1 -1
- package/dist/nile-tab-panel/nile-tab-panel.css.cjs.js +1 -1
- package/dist/nile-tab-panel/nile-tab-panel.css.cjs.js.map +1 -1
- package/dist/nile-tab-panel/nile-tab-panel.css.esm.js +1 -1
- package/dist/nile-tab-panel/nile-tab-panel.esm.js +3 -3
- package/dist/nile-table-body/index.cjs.js +1 -1
- package/dist/nile-table-body/index.esm.js +1 -1
- package/dist/nile-table-body/nile-table-body.cjs.js +1 -1
- package/dist/nile-table-body/nile-table-body.cjs.js.map +1 -1
- package/dist/nile-table-body/nile-table-body.css.cjs.js +1 -1
- package/dist/nile-table-body/nile-table-body.css.cjs.js.map +1 -1
- package/dist/nile-table-body/nile-table-body.css.esm.js +2 -2
- package/dist/nile-table-body/nile-table-body.esm.js +1 -1
- package/dist/nile-table-cell-item/index.cjs.js +1 -1
- package/dist/nile-table-cell-item/index.esm.js +1 -1
- package/dist/nile-table-cell-item/nile-table-cell-item.cjs.js +1 -1
- package/dist/nile-table-cell-item/nile-table-cell-item.cjs.js.map +1 -1
- package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js +1 -1
- package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js.map +1 -1
- package/dist/nile-table-cell-item/nile-table-cell-item.css.esm.js +2 -2
- package/dist/nile-table-cell-item/nile-table-cell-item.esm.js +1 -1
- package/dist/nile-table-header-item/index.cjs.js +1 -1
- package/dist/nile-table-header-item/index.esm.js +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.cjs.js +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.cjs.js.map +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js.map +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.css.esm.js +2 -2
- package/dist/nile-table-header-item/nile-table-header-item.esm.js +2 -2
- package/dist/nile-table-row/index.cjs.js +1 -1
- package/dist/nile-table-row/index.esm.js +1 -1
- package/dist/nile-table-row/nile-table-row.cjs.js +1 -1
- package/dist/nile-table-row/nile-table-row.cjs.js.map +1 -1
- package/dist/nile-table-row/nile-table-row.css.cjs.js +1 -1
- package/dist/nile-table-row/nile-table-row.css.cjs.js.map +1 -1
- package/dist/nile-table-row/nile-table-row.css.esm.js +1 -1
- package/dist/nile-table-row/nile-table-row.esm.js +2 -2
- package/dist/nile-tag/index.cjs.js +1 -1
- package/dist/nile-tag/index.esm.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
- package/dist/nile-tag/nile-tag.css.cjs.js +1 -1
- package/dist/nile-tag/nile-tag.css.cjs.js.map +1 -1
- package/dist/nile-tag/nile-tag.css.esm.js +1 -1
- package/dist/nile-tag/nile-tag.esm.js +2 -2
- package/dist/nile-textarea/index.cjs.js +1 -1
- package/dist/nile-textarea/index.esm.js +1 -1
- package/dist/nile-textarea/nile-textarea.cjs.js +1 -1
- package/dist/nile-textarea/nile-textarea.cjs.js.map +1 -1
- package/dist/nile-textarea/nile-textarea.css.cjs.js +1 -1
- package/dist/nile-textarea/nile-textarea.css.cjs.js.map +1 -1
- package/dist/nile-textarea/nile-textarea.css.esm.js +1 -1
- package/dist/nile-textarea/nile-textarea.esm.js +15 -15
- package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
- package/dist/nile-textarea/nile-textarea.test.cjs.js.map +1 -1
- package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
- package/dist/nile-title/index.cjs.js +1 -1
- package/dist/nile-title/index.esm.js +1 -1
- package/dist/nile-title/nile-title.cjs.js +1 -1
- package/dist/nile-title/nile-title.cjs.js.map +1 -1
- package/dist/nile-title/nile-title.css.cjs.js +1 -1
- package/dist/nile-title/nile-title.css.cjs.js.map +1 -1
- package/dist/nile-title/nile-title.css.esm.js +2 -2
- package/dist/nile-title/nile-title.esm.js +1 -1
- package/dist/nile-toast/index.cjs.js +1 -1
- package/dist/nile-toast/index.esm.js +1 -1
- package/dist/nile-toast/nile-toast.cjs.js +1 -1
- package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
- package/dist/nile-toast/nile-toast.css.cjs.js +1 -1
- package/dist/nile-toast/nile-toast.css.cjs.js.map +1 -1
- package/dist/nile-toast/nile-toast.css.esm.js +1 -1
- package/dist/nile-toast/nile-toast.esm.js +1 -1
- package/dist/nile-toolbar/index.cjs.js +1 -1
- package/dist/nile-toolbar/index.esm.js +1 -1
- package/dist/nile-toolbar/nile-toolbar.cjs.js +1 -1
- package/dist/nile-toolbar/nile-toolbar.cjs.js.map +1 -1
- package/dist/nile-toolbar/nile-toolbar.css.cjs.js +1 -1
- package/dist/nile-toolbar/nile-toolbar.css.cjs.js.map +1 -1
- package/dist/nile-toolbar/nile-toolbar.css.esm.js +2 -2
- package/dist/nile-toolbar/nile-toolbar.esm.js +2 -2
- package/dist/nile-tooltip/index.cjs.js +1 -1
- package/dist/nile-tooltip/index.esm.js +1 -1
- package/dist/nile-tooltip/nile-tooltip.cjs.js +1 -1
- package/dist/nile-tooltip/nile-tooltip.cjs.js.map +1 -1
- package/dist/nile-tooltip/nile-tooltip.css.cjs.js +1 -1
- package/dist/nile-tooltip/nile-tooltip.css.cjs.js.map +1 -1
- package/dist/nile-tooltip/nile-tooltip.css.esm.js +1 -1
- package/dist/nile-tooltip/nile-tooltip.esm.js +1 -1
- package/dist/nile-tour/index.cjs.js +1 -1
- package/dist/nile-tour/index.esm.js +1 -1
- package/dist/nile-tour/nile-tour.cjs.js +2 -2
- package/dist/nile-tour/nile-tour.cjs.js.map +1 -1
- package/dist/nile-tour/nile-tour.css.cjs.js +1 -1
- package/dist/nile-tour/nile-tour.css.cjs.js.map +1 -1
- package/dist/nile-tour/nile-tour.css.esm.js +1 -1
- package/dist/nile-tour/nile-tour.esm.js +4 -4
- package/dist/nile-tree/index.cjs.js +1 -1
- package/dist/nile-tree/index.esm.js +1 -1
- package/dist/nile-tree/nile-tree.cjs.js +1 -1
- package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
- package/dist/nile-tree/nile-tree.css.cjs.js +1 -1
- package/dist/nile-tree/nile-tree.css.cjs.js.map +1 -1
- package/dist/nile-tree/nile-tree.css.esm.js +1 -1
- package/dist/nile-tree/nile-tree.esm.js +1 -1
- package/dist/nile-tree-item/index.cjs.js +1 -1
- package/dist/nile-tree-item/index.esm.js +1 -1
- package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
- package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
- package/dist/nile-tree-item/nile-tree-item.css.cjs.js +1 -1
- package/dist/nile-tree-item/nile-tree-item.css.cjs.js.map +1 -1
- package/dist/nile-tree-item/nile-tree-item.css.esm.js +1 -1
- package/dist/nile-tree-item/nile-tree-item.esm.js +1 -1
- package/dist/nile-vertical-stepper-item/index.cjs.js +1 -1
- package/dist/nile-vertical-stepper-item/index.esm.js +1 -1
- package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.cjs.js +1 -1
- package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.cjs.js.map +1 -1
- package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.css.cjs.js +1 -1
- package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.css.cjs.js.map +1 -1
- package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.css.esm.js +1 -1
- package/dist/nile-vertical-stepper-item/nile-vertical-stepper-item.esm.js +7 -7
- package/dist/{nim-1cf0460c.cjs.js → nim-75c429ed.cjs.js} +2 -2
- package/dist/{nim-1cf0460c.cjs.js.map → nim-75c429ed.cjs.js.map} +1 -1
- package/dist/{perl-e2b5bd00.cjs.js → perl-f2486890.cjs.js} +2 -2
- package/dist/{perl-e2b5bd00.cjs.js.map → perl-f2486890.cjs.js.map} +1 -1
- package/dist/{php-b1141a8f.cjs.js → php-15b901d5.cjs.js} +2 -2
- package/dist/{php-b1141a8f.cjs.js.map → php-15b901d5.cjs.js.map} +1 -1
- package/dist/{pug-f250fb04.cjs.js → pug-2abbe0e8.cjs.js} +2 -2
- package/dist/{pug-f250fb04.cjs.js.map → pug-2abbe0e8.cjs.js.map} +1 -1
- package/dist/{qml-6b278cec.cjs.js → qml-e0865620.cjs.js} +2 -2
- package/dist/{qml-6b278cec.cjs.js.map → qml-e0865620.cjs.js.map} +1 -1
- package/dist/{razor-0acc551a.cjs.js → razor-5a415001.cjs.js} +2 -2
- package/dist/{razor-0acc551a.cjs.js.map → razor-5a415001.cjs.js.map} +1 -1
- package/dist/{rst-6b792481.cjs.js → rst-59739c6b.cjs.js} +2 -2
- package/dist/{rst-6b792481.cjs.js.map → rst-59739c6b.cjs.js.map} +1 -1
- package/dist/{ruby-578b1ee6.cjs.js → ruby-beb48798.cjs.js} +2 -2
- package/dist/{ruby-578b1ee6.cjs.js.map → ruby-beb48798.cjs.js.map} +1 -1
- package/dist/{sas-26a07256.cjs.js → sas-a14318c4.cjs.js} +2 -2
- package/dist/{sas-26a07256.cjs.js.map → sas-a14318c4.cjs.js.map} +1 -1
- package/dist/scopedElementsWrapper-114dad9c.esm.js +1 -0
- package/dist/scopedElementsWrapper-de6c2b7d.cjs.js +2 -0
- package/dist/scopedElementsWrapper-de6c2b7d.cjs.js.map +1 -0
- package/dist/{scss-ac38fc0b.cjs.js → scss-1b1a49b5.cjs.js} +2 -2
- package/dist/{scss-ac38fc0b.cjs.js.map → scss-1b1a49b5.cjs.js.map} +1 -1
- package/dist/{shaderlab-606f022b.cjs.js → shaderlab-ea1267a9.cjs.js} +2 -2
- package/dist/{shaderlab-606f022b.cjs.js.map → shaderlab-ea1267a9.cjs.js.map} +1 -1
- package/dist/{shellsession-cb0df007.cjs.js → shellsession-2d7b9cec.cjs.js} +2 -2
- package/dist/{shellsession-cb0df007.cjs.js.map → shellsession-2d7b9cec.cjs.js.map} +1 -1
- package/dist/{soy-d8080b28.cjs.js → soy-ac12822c.cjs.js} +2 -2
- package/dist/{soy-d8080b28.cjs.js.map → soy-ac12822c.cjs.js.map} +1 -1
- package/dist/{sparql-589e0308.cjs.js → sparql-ebe1ddf3.cjs.js} +2 -2
- package/dist/{sparql-589e0308.cjs.js.map → sparql-ebe1ddf3.cjs.js.map} +1 -1
- package/dist/src/internal/animate.d.ts +3 -3
- package/dist/src/internal/animate.js.map +1 -1
- package/dist/src/internal/default-value.js.map +1 -1
- package/dist/src/internal/drag.js.map +1 -1
- package/dist/src/internal/enum.js +2 -2
- package/dist/src/internal/enum.js.map +1 -1
- package/dist/src/internal/event.js.map +1 -1
- package/dist/src/internal/form.js.map +1 -1
- package/dist/src/internal/math.js.map +1 -1
- package/dist/src/internal/modal.js.map +1 -1
- package/dist/src/internal/scroll.js.map +1 -1
- package/dist/src/internal/slot.js.map +1 -1
- package/dist/src/internal/tabbable.js.map +1 -1
- package/dist/src/internal/watch.js.map +1 -1
- package/dist/src/nile-accordion/nile-accordion.css.d.ts +2 -2
- package/dist/src/nile-accordion/nile-accordion.css.js +1 -1
- package/dist/src/nile-accordion/nile-accordion.css.js.map +1 -1
- package/dist/src/nile-accordion/nile-accordion.d.ts +1 -1
- package/dist/src/nile-accordion/nile-accordion.js +2 -2
- package/dist/src/nile-accordion/nile-accordion.js.map +1 -1
- package/dist/src/nile-auto-complete/nile-auto-complete.css.d.ts +2 -2
- package/dist/src/nile-auto-complete/nile-auto-complete.css.js +1 -1
- package/dist/src/nile-auto-complete/nile-auto-complete.css.js.map +1 -1
- package/dist/src/nile-auto-complete/nile-auto-complete.d.ts +1 -1
- package/dist/src/nile-auto-complete/nile-auto-complete.js +2 -2
- package/dist/src/nile-auto-complete/nile-auto-complete.js.map +1 -1
- package/dist/src/nile-avatar/nile-avatar.css.d.ts +2 -2
- package/dist/src/nile-avatar/nile-avatar.css.js +1 -1
- package/dist/src/nile-avatar/nile-avatar.css.js.map +1 -1
- package/dist/src/nile-avatar/nile-avatar.d.ts +1 -1
- package/dist/src/nile-avatar/nile-avatar.js +2 -2
- package/dist/src/nile-avatar/nile-avatar.js.map +1 -1
- package/dist/src/nile-badge/nile-badge.css.d.ts +2 -2
- package/dist/src/nile-badge/nile-badge.css.js +1 -1
- package/dist/src/nile-badge/nile-badge.css.js.map +1 -1
- package/dist/src/nile-badge/nile-badge.d.ts +1 -1
- package/dist/src/nile-badge/nile-badge.js +2 -2
- package/dist/src/nile-badge/nile-badge.js.map +1 -1
- package/dist/src/nile-breadcrumb/nile-breadcrumb.css.d.ts +2 -2
- package/dist/src/nile-breadcrumb/nile-breadcrumb.css.js +1 -1
- package/dist/src/nile-breadcrumb/nile-breadcrumb.css.js.map +1 -1
- package/dist/src/nile-breadcrumb/nile-breadcrumb.d.ts +1 -1
- package/dist/src/nile-breadcrumb/nile-breadcrumb.js +1 -1
- package/dist/src/nile-breadcrumb/nile-breadcrumb.js.map +1 -1
- package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.css.d.ts +2 -2
- package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.css.js +1 -1
- package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.css.js.map +1 -1
- package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.d.ts +1 -1
- package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.js +1 -1
- package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.js.map +1 -1
- package/dist/src/nile-button/nile-button.css.d.ts +1 -1
- package/dist/src/nile-button/nile-button.css.js +1 -1
- package/dist/src/nile-button/nile-button.css.js.map +1 -1
- package/dist/src/nile-button/nile-button.js +102 -50
- package/dist/src/nile-button/nile-button.js.map +1 -1
- package/dist/src/nile-button/nile-button.test.js.map +1 -1
- package/dist/src/nile-button-filter/nile-button-filter.css.d.ts +2 -2
- package/dist/src/nile-button-filter/nile-button-filter.css.js +1 -1
- package/dist/src/nile-button-filter/nile-button-filter.css.js.map +1 -1
- package/dist/src/nile-button-filter/nile-button-filter.d.ts +1 -1
- package/dist/src/nile-button-filter/nile-button-filter.js +2 -2
- package/dist/src/nile-button-filter/nile-button-filter.js.map +1 -1
- package/dist/src/nile-button-toggle/nile-button-toggle.css.d.ts +2 -2
- package/dist/src/nile-button-toggle/nile-button-toggle.css.js +1 -1
- package/dist/src/nile-button-toggle/nile-button-toggle.css.js.map +1 -1
- package/dist/src/nile-button-toggle/nile-button-toggle.d.ts +1 -1
- package/dist/src/nile-button-toggle/nile-button-toggle.js +2 -2
- package/dist/src/nile-button-toggle/nile-button-toggle.js.map +1 -1
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.css.d.ts +2 -2
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.css.js +1 -1
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.css.js.map +1 -1
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.d.ts +1 -1
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.js +2 -2
- package/dist/src/nile-button-toggle-group/nile-button-toggle-group.js.map +1 -1
- package/dist/src/nile-calendar/nile-calendar.css.d.ts +2 -2
- package/dist/src/nile-calendar/nile-calendar.css.js +1 -1
- package/dist/src/nile-calendar/nile-calendar.css.js.map +1 -1
- package/dist/src/nile-calendar/nile-calendar.d.ts +1 -1
- package/dist/src/nile-calendar/nile-calendar.js +2 -2
- package/dist/src/nile-calendar/nile-calendar.js.map +1 -1
- package/dist/src/nile-calendar/nile-calendar.test.js.map +1 -1
- package/dist/src/nile-card/nile-card.css.d.ts +2 -2
- package/dist/src/nile-card/nile-card.css.js +1 -1
- package/dist/src/nile-card/nile-card.css.js.map +1 -1
- package/dist/src/nile-card/nile-card.d.ts +1 -1
- package/dist/src/nile-card/nile-card.js +1 -1
- package/dist/src/nile-card/nile-card.js.map +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.css.d.ts +2 -2
- package/dist/src/nile-checkbox/nile-checkbox.css.js +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.css.js.map +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.d.ts +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.js +2 -2
- package/dist/src/nile-checkbox/nile-checkbox.js.map +1 -1
- package/dist/src/nile-chip/nile-chip.css.d.ts +2 -2
- package/dist/src/nile-chip/nile-chip.css.js +1 -1
- package/dist/src/nile-chip/nile-chip.css.js.map +1 -1
- package/dist/src/nile-chip/nile-chip.d.ts +1 -1
- package/dist/src/nile-chip/nile-chip.js +2 -2
- package/dist/src/nile-chip/nile-chip.js.map +1 -1
- package/dist/src/nile-circular-progressbar/nile-circular-progressbar.css.d.ts +2 -2
- package/dist/src/nile-circular-progressbar/nile-circular-progressbar.css.js +1 -1
- package/dist/src/nile-circular-progressbar/nile-circular-progressbar.css.js.map +1 -1
- package/dist/src/nile-circular-progressbar/nile-circular-progressbar.d.ts +1 -1
- package/dist/src/nile-circular-progressbar/nile-circular-progressbar.js +2 -2
- package/dist/src/nile-circular-progressbar/nile-circular-progressbar.js.map +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.css.d.ts +2 -2
- package/dist/src/nile-code-editor/nile-code-editor.css.js +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.css.js.map +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.d.ts +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.js +2 -2
- package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
- package/dist/src/nile-content-editor/nile-content-editor.css.d.ts +2 -2
- package/dist/src/nile-content-editor/nile-content-editor.css.js +1 -1
- package/dist/src/nile-content-editor/nile-content-editor.css.js.map +1 -1
- package/dist/src/nile-content-editor/nile-content-editor.d.ts +1 -1
- package/dist/src/nile-content-editor/nile-content-editor.js +2 -2
- package/dist/src/nile-content-editor/nile-content-editor.js.map +1 -1
- package/dist/src/nile-date-picker/nile-date-picker.css.d.ts +2 -2
- package/dist/src/nile-date-picker/nile-date-picker.css.js +1 -1
- package/dist/src/nile-date-picker/nile-date-picker.css.js.map +1 -1
- package/dist/src/nile-date-picker/nile-date-picker.d.ts +1 -1
- package/dist/src/nile-date-picker/nile-date-picker.js +2 -2
- package/dist/src/nile-date-picker/nile-date-picker.js.map +1 -1
- package/dist/src/nile-dialog/nile-dialog.css.d.ts +2 -2
- package/dist/src/nile-dialog/nile-dialog.css.js +1 -1
- package/dist/src/nile-dialog/nile-dialog.css.js.map +1 -1
- package/dist/src/nile-dialog/nile-dialog.d.ts +1 -1
- package/dist/src/nile-dialog/nile-dialog.js.map +1 -1
- package/dist/src/nile-divider/nile-divider.css.d.ts +2 -2
- package/dist/src/nile-divider/nile-divider.css.js +1 -1
- package/dist/src/nile-divider/nile-divider.css.js.map +1 -1
- package/dist/src/nile-divider/nile-divider.d.ts +1 -1
- package/dist/src/nile-divider/nile-divider.js +2 -2
- package/dist/src/nile-divider/nile-divider.js.map +1 -1
- package/dist/src/nile-drawer/nile-drawer.css.d.ts +2 -2
- package/dist/src/nile-drawer/nile-drawer.css.js +1 -1
- package/dist/src/nile-drawer/nile-drawer.css.js.map +1 -1
- package/dist/src/nile-drawer/nile-drawer.js.map +1 -1
- package/dist/src/nile-dropdown/nile-dropdown.css.d.ts +2 -2
- package/dist/src/nile-dropdown/nile-dropdown.css.js +1 -1
- package/dist/src/nile-dropdown/nile-dropdown.css.js.map +1 -1
- package/dist/src/nile-dropdown/nile-dropdown.d.ts +1 -1
- package/dist/src/nile-dropdown/nile-dropdown.js +2 -2
- package/dist/src/nile-dropdown/nile-dropdown.js.map +1 -1
- package/dist/src/nile-empty-state/nile-empty-state.css.d.ts +2 -2
- package/dist/src/nile-empty-state/nile-empty-state.css.js +1 -1
- package/dist/src/nile-empty-state/nile-empty-state.css.js.map +1 -1
- package/dist/src/nile-empty-state/nile-empty-state.d.ts +1 -1
- package/dist/src/nile-empty-state/nile-empty-state.js +2 -2
- package/dist/src/nile-empty-state/nile-empty-state.js.map +1 -1
- package/dist/src/nile-empty-state/nile-empty-state.test.js.map +1 -1
- package/dist/src/nile-error-message/nile-error-message.css.d.ts +2 -2
- package/dist/src/nile-error-message/nile-error-message.css.js +1 -1
- package/dist/src/nile-error-message/nile-error-message.css.js.map +1 -1
- package/dist/src/nile-error-message/nile-error-message.d.ts +1 -1
- package/dist/src/nile-error-message/nile-error-message.js +2 -2
- package/dist/src/nile-error-message/nile-error-message.js.map +1 -1
- package/dist/src/nile-error-notification/nile-error-notification.css.d.ts +2 -2
- package/dist/src/nile-error-notification/nile-error-notification.css.js +1 -1
- package/dist/src/nile-error-notification/nile-error-notification.css.js.map +1 -1
- package/dist/src/nile-error-notification/nile-error-notification.d.ts +1 -1
- package/dist/src/nile-error-notification/nile-error-notification.js +2 -2
- package/dist/src/nile-error-notification/nile-error-notification.js.map +1 -1
- package/dist/src/nile-footer/index.d.ts +1 -1
- package/dist/src/nile-footer/index.js +1 -1
- package/dist/src/nile-footer/index.js.map +1 -1
- package/dist/src/nile-footer/nile-footer.css.d.ts +2 -2
- package/dist/src/nile-footer/nile-footer.css.js +1 -1
- package/dist/src/nile-footer/nile-footer.css.js.map +1 -1
- package/dist/src/nile-form-error-message/nile-form-error-message.css.d.ts +2 -2
- package/dist/src/nile-form-error-message/nile-form-error-message.css.js +1 -1
- package/dist/src/nile-form-error-message/nile-form-error-message.css.js.map +1 -1
- package/dist/src/nile-form-error-message/nile-form-error-message.d.ts +1 -1
- package/dist/src/nile-form-error-message/nile-form-error-message.js +1 -1
- package/dist/src/nile-form-error-message/nile-form-error-message.js.map +1 -1
- package/dist/src/nile-form-group/nile-form-group.css.d.ts +2 -2
- package/dist/src/nile-form-group/nile-form-group.css.js +1 -1
- package/dist/src/nile-form-group/nile-form-group.css.js.map +1 -1
- package/dist/src/nile-form-group/nile-form-group.d.ts +1 -1
- package/dist/src/nile-form-group/nile-form-group.js +2 -2
- package/dist/src/nile-form-group/nile-form-group.js.map +1 -1
- package/dist/src/nile-form-help-text/nile-form-help-text.css.d.ts +2 -2
- package/dist/src/nile-form-help-text/nile-form-help-text.css.js +1 -1
- package/dist/src/nile-form-help-text/nile-form-help-text.css.js.map +1 -1
- package/dist/src/nile-form-help-text/nile-form-help-text.d.ts +1 -1
- package/dist/src/nile-form-help-text/nile-form-help-text.js +2 -2
- package/dist/src/nile-form-help-text/nile-form-help-text.js.map +1 -1
- package/dist/src/nile-format-date/nile-format-date.css.d.ts +2 -2
- package/dist/src/nile-format-date/nile-format-date.css.js +1 -1
- package/dist/src/nile-format-date/nile-format-date.css.js.map +1 -1
- package/dist/src/nile-format-date/nile-format-date.d.ts +1 -1
- package/dist/src/nile-format-date/nile-format-date.js +2 -2
- package/dist/src/nile-format-date/nile-format-date.js.map +1 -1
- package/dist/src/nile-heading/index.d.ts +1 -1
- package/dist/src/nile-heading/index.js.map +1 -1
- package/dist/src/nile-hero/nile-hero.css.d.ts +2 -2
- package/dist/src/nile-hero/nile-hero.css.js +1 -1
- package/dist/src/nile-hero/nile-hero.css.js.map +1 -1
- package/dist/src/nile-hero/nile-hero.d.ts +1 -1
- package/dist/src/nile-hero/nile-hero.js +2 -2
- package/dist/src/nile-hero/nile-hero.js.map +1 -1
- package/dist/src/nile-hero-header/nile-hero-header.css.d.ts +2 -2
- package/dist/src/nile-hero-header/nile-hero-header.css.js +1 -1
- package/dist/src/nile-hero-header/nile-hero-header.css.js.map +1 -1
- package/dist/src/nile-hero-header/nile-hero-header.d.ts +1 -1
- package/dist/src/nile-hero-header/nile-hero-header.js +2 -2
- package/dist/src/nile-hero-header/nile-hero-header.js.map +1 -1
- package/dist/src/nile-highlighter/nile-highlighter.css.d.ts +2 -2
- package/dist/src/nile-highlighter/nile-highlighter.css.js +1 -1
- package/dist/src/nile-highlighter/nile-highlighter.css.js.map +1 -1
- package/dist/src/nile-highlighter/nile-highlighter.js +2 -2
- package/dist/src/nile-highlighter/nile-highlighter.js.map +1 -1
- package/dist/src/nile-icon/index.js.map +1 -1
- package/dist/src/nile-icon/utils.js.map +1 -1
- package/dist/src/nile-icon-button/nile-icon-button.css.d.ts +2 -2
- package/dist/src/nile-icon-button/nile-icon-button.css.js +1 -1
- package/dist/src/nile-icon-button/nile-icon-button.css.js.map +1 -1
- package/dist/src/nile-icon-button/nile-icon-button.d.ts +1 -1
- package/dist/src/nile-icon-button/nile-icon-button.js +79 -39
- package/dist/src/nile-icon-button/nile-icon-button.js.map +1 -1
- package/dist/src/nile-inline-edit/nile-inline-edit.css.d.ts +2 -2
- package/dist/src/nile-inline-edit/nile-inline-edit.css.js +1 -1
- package/dist/src/nile-inline-edit/nile-inline-edit.css.js.map +1 -1
- package/dist/src/nile-inline-edit/nile-inline-edit.d.ts +1 -1
- package/dist/src/nile-inline-edit/nile-inline-edit.js +2 -2
- package/dist/src/nile-inline-edit/nile-inline-edit.js.map +1 -1
- package/dist/src/nile-input/nile-input.css.d.ts +2 -2
- package/dist/src/nile-input/nile-input.css.js +1 -1
- package/dist/src/nile-input/nile-input.css.js.map +1 -1
- package/dist/src/nile-input/nile-input.d.ts +1 -1
- package/dist/src/nile-input/nile-input.js +2 -2
- package/dist/src/nile-input/nile-input.js.map +1 -1
- package/dist/src/nile-input/nile-input.test.js.map +1 -1
- package/dist/src/nile-link/nile-link.css.d.ts +2 -2
- package/dist/src/nile-link/nile-link.css.js +1 -1
- package/dist/src/nile-link/nile-link.css.js.map +1 -1
- package/dist/src/nile-link/nile-link.d.ts +1 -1
- package/dist/src/nile-link/nile-link.js +2 -2
- package/dist/src/nile-link/nile-link.js.map +1 -1
- package/dist/src/nile-link/nile-link.test.js +1 -1
- package/dist/src/nile-link/nile-link.test.js.map +1 -1
- package/dist/src/nile-list/nile-list.css.d.ts +2 -2
- package/dist/src/nile-list/nile-list.css.js +1 -1
- package/dist/src/nile-list/nile-list.css.js.map +1 -1
- package/dist/src/nile-list/nile-list.d.ts +1 -1
- package/dist/src/nile-list/nile-list.js +1 -1
- package/dist/src/nile-list/nile-list.js.map +1 -1
- package/dist/src/nile-list-item/nile-list-item.css.d.ts +2 -2
- package/dist/src/nile-list-item/nile-list-item.css.js +1 -1
- package/dist/src/nile-list-item/nile-list-item.css.js.map +1 -1
- package/dist/src/nile-list-item/nile-list-item.d.ts +1 -1
- package/dist/src/nile-list-item/nile-list-item.js +2 -2
- package/dist/src/nile-list-item/nile-list-item.js.map +1 -1
- package/dist/src/nile-loader/nile-loader.d.ts +1 -1
- package/dist/src/nile-loader/nile-loader.js +1 -1
- package/dist/src/nile-loader/nile-loader.js.map +1 -1
- package/dist/src/nile-loader/nile-loader.test.js +1 -1
- package/dist/src/nile-loader/nile-loader.test.js.map +1 -1
- package/dist/src/nile-menu/nile-menu.css.d.ts +2 -2
- package/dist/src/nile-menu/nile-menu.css.js +1 -1
- package/dist/src/nile-menu/nile-menu.css.js.map +1 -1
- package/dist/src/nile-menu/nile-menu.d.ts +1 -1
- package/dist/src/nile-menu/nile-menu.js.map +1 -1
- package/dist/src/nile-menu-item/nile-menu-item.css.d.ts +2 -2
- package/dist/src/nile-menu-item/nile-menu-item.css.js +1 -1
- package/dist/src/nile-menu-item/nile-menu-item.css.js.map +1 -1
- package/dist/src/nile-menu-item/nile-menu-item.d.ts +1 -1
- package/dist/src/nile-menu-item/nile-menu-item.js +2 -2
- package/dist/src/nile-menu-item/nile-menu-item.js.map +1 -1
- package/dist/src/nile-option/nile-option.css.d.ts +2 -2
- package/dist/src/nile-option/nile-option.css.js +1 -1
- package/dist/src/nile-option/nile-option.css.js.map +1 -1
- package/dist/src/nile-option/nile-option.d.ts +1 -1
- package/dist/src/nile-option/nile-option.js.map +1 -1
- package/dist/src/nile-page-header/nile-page-header.css.d.ts +2 -2
- package/dist/src/nile-page-header/nile-page-header.css.js +1 -1
- package/dist/src/nile-page-header/nile-page-header.css.js.map +1 -1
- package/dist/src/nile-page-header/nile-page-header.d.ts +1 -1
- package/dist/src/nile-page-header/nile-page-header.js +1 -1
- package/dist/src/nile-page-header/nile-page-header.js.map +1 -1
- package/dist/src/nile-popover/nile-popover.css.d.ts +2 -2
- package/dist/src/nile-popover/nile-popover.css.js +1 -1
- package/dist/src/nile-popover/nile-popover.css.js.map +1 -1
- package/dist/src/nile-popover/nile-popover.js +2 -2
- package/dist/src/nile-popover/nile-popover.js.map +1 -1
- package/dist/src/nile-popup/nile-popup.css.d.ts +2 -2
- package/dist/src/nile-popup/nile-popup.css.js +1 -1
- package/dist/src/nile-popup/nile-popup.css.js.map +1 -1
- package/dist/src/nile-popup/nile-popup.d.ts +1 -1
- package/dist/src/nile-popup/nile-popup.js.map +1 -1
- package/dist/src/nile-progress-bar/nile-progress-bar.d.ts +2 -2
- package/dist/src/nile-progress-bar/nile-progress-bar.js +2 -1
- package/dist/src/nile-progress-bar/nile-progress-bar.js.map +1 -1
- package/dist/src/nile-radio/nile-radio.css.d.ts +1 -1
- package/dist/src/nile-radio/nile-radio.css.js +1 -1
- package/dist/src/nile-radio/nile-radio.css.js.map +1 -1
- package/dist/src/nile-radio/nile-radio.d.ts +1 -1
- package/dist/src/nile-radio/nile-radio.js +2 -2
- package/dist/src/nile-radio/nile-radio.js.map +1 -1
- package/dist/src/nile-radio-group/nile-radio-group.d.ts +1 -1
- package/dist/src/nile-radio-group/nile-radio-group.js.map +1 -1
- package/dist/src/nile-section-message/nile-section-message.css.d.ts +2 -2
- package/dist/src/nile-section-message/nile-section-message.css.js +1 -1
- package/dist/src/nile-section-message/nile-section-message.css.js.map +1 -1
- package/dist/src/nile-section-message/nile-section-message.d.ts +1 -1
- package/dist/src/nile-section-message/nile-section-message.js +2 -2
- package/dist/src/nile-section-message/nile-section-message.js.map +1 -1
- package/dist/src/nile-select/nile-select.css.d.ts +2 -2
- package/dist/src/nile-select/nile-select.css.js +1 -1
- package/dist/src/nile-select/nile-select.css.js.map +1 -1
- package/dist/src/nile-select/nile-select.d.ts +1 -2
- package/dist/src/nile-select/nile-select.js +2 -2
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-select/nile-select.test.js.map +1 -1
- package/dist/src/nile-sidebar/index.d.ts +1 -1
- package/dist/src/nile-sidebar/index.js.map +1 -1
- package/dist/src/nile-sidebar-menu/nile-sidebar-menu.css.d.ts +2 -2
- package/dist/src/nile-sidebar-menu/nile-sidebar-menu.css.js +1 -1
- package/dist/src/nile-sidebar-menu/nile-sidebar-menu.css.js.map +1 -1
- package/dist/src/nile-sidebar-menu/nile-sidebar-menu.d.ts +1 -1
- package/dist/src/nile-sidebar-menu/nile-sidebar-menu.js +2 -2
- package/dist/src/nile-sidebar-menu/nile-sidebar-menu.js.map +1 -1
- package/dist/src/nile-sidebar-menu-items/nile-sidebar-menu-items.css.d.ts +2 -2
- package/dist/src/nile-sidebar-menu-items/nile-sidebar-menu-items.css.js +1 -1
- package/dist/src/nile-sidebar-menu-items/nile-sidebar-menu-items.css.js.map +1 -1
- package/dist/src/nile-sidebar-menu-items/nile-sidebar-menu-items.d.ts +1 -1
- package/dist/src/nile-sidebar-menu-items/nile-sidebar-menu-items.js +2 -2
- package/dist/src/nile-sidebar-menu-items/nile-sidebar-menu-items.js.map +1 -1
- package/dist/src/nile-sidebar-wrapper/nile-sidebar-wrapper.css.d.ts +2 -2
- package/dist/src/nile-sidebar-wrapper/nile-sidebar-wrapper.css.js +1 -1
- package/dist/src/nile-sidebar-wrapper/nile-sidebar-wrapper.css.js.map +1 -1
- package/dist/src/nile-sidebar-wrapper/nile-sidebar-wrapper.d.ts +1 -1
- package/dist/src/nile-sidebar-wrapper/nile-sidebar-wrapper.js +2 -2
- package/dist/src/nile-sidebar-wrapper/nile-sidebar-wrapper.js.map +1 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.d.ts +1 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.js +2 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.js.map +1 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.test.js +1 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.test.js.map +1 -1
- package/dist/src/nile-spinner/nile-spinner.css.d.ts +2 -2
- package/dist/src/nile-spinner/nile-spinner.css.js +1 -1
- package/dist/src/nile-spinner/nile-spinner.css.js.map +1 -1
- package/dist/src/nile-spinner/nile-spinner.d.ts +1 -1
- package/dist/src/nile-spinner/nile-spinner.js +1 -1
- package/dist/src/nile-spinner/nile-spinner.js.map +1 -1
- package/dist/src/nile-split-panel/nile-split-panel.css.d.ts +2 -2
- package/dist/src/nile-split-panel/nile-split-panel.css.js +1 -1
- package/dist/src/nile-split-panel/nile-split-panel.css.js.map +1 -1
- package/dist/src/nile-split-panel/nile-split-panel.d.ts +1 -1
- package/dist/src/nile-split-panel/nile-split-panel.js.map +1 -1
- package/dist/src/nile-stepper/nile-stepper.css.d.ts +2 -2
- package/dist/src/nile-stepper/nile-stepper.css.js +1 -1
- package/dist/src/nile-stepper/nile-stepper.css.js.map +1 -1
- package/dist/src/nile-stepper/nile-stepper.d.ts +1 -1
- package/dist/src/nile-stepper/nile-stepper.js +2 -2
- package/dist/src/nile-stepper/nile-stepper.js.map +1 -1
- package/dist/src/nile-stepper-item/nile-stepper-item.css.d.ts +2 -2
- package/dist/src/nile-stepper-item/nile-stepper-item.css.js +1 -1
- package/dist/src/nile-stepper-item/nile-stepper-item.css.js.map +1 -1
- package/dist/src/nile-stepper-item/nile-stepper-item.d.ts +1 -1
- package/dist/src/nile-stepper-item/nile-stepper-item.js +2 -2
- package/dist/src/nile-stepper-item/nile-stepper-item.js.map +1 -1
- package/dist/src/nile-switcher/nile-switcher.css.d.ts +2 -2
- package/dist/src/nile-switcher/nile-switcher.css.js +1 -1
- package/dist/src/nile-switcher/nile-switcher.css.js.map +1 -1
- package/dist/src/nile-switcher/nile-switcher.d.ts +1 -1
- package/dist/src/nile-switcher/nile-switcher.js +2 -2
- package/dist/src/nile-switcher/nile-switcher.js.map +1 -1
- package/dist/src/nile-tab/nile-tab.css.d.ts +2 -2
- package/dist/src/nile-tab/nile-tab.css.js +1 -1
- package/dist/src/nile-tab/nile-tab.css.js.map +1 -1
- package/dist/src/nile-tab/nile-tab.d.ts +1 -1
- package/dist/src/nile-tab/nile-tab.js +2 -2
- package/dist/src/nile-tab/nile-tab.js.map +1 -1
- package/dist/src/nile-tab-group/nile-tab-group.css.d.ts +2 -2
- package/dist/src/nile-tab-group/nile-tab-group.css.js +1 -1
- package/dist/src/nile-tab-group/nile-tab-group.css.js.map +1 -1
- package/dist/src/nile-tab-group/nile-tab-group.d.ts +1 -1
- package/dist/src/nile-tab-group/nile-tab-group.js +2 -2
- package/dist/src/nile-tab-group/nile-tab-group.js.map +1 -1
- package/dist/src/nile-tab-panel/nile-tab-panel.css.d.ts +2 -2
- package/dist/src/nile-tab-panel/nile-tab-panel.css.js +1 -1
- package/dist/src/nile-tab-panel/nile-tab-panel.css.js.map +1 -1
- package/dist/src/nile-tab-panel/nile-tab-panel.d.ts +1 -1
- package/dist/src/nile-tab-panel/nile-tab-panel.js +2 -2
- package/dist/src/nile-tab-panel/nile-tab-panel.js.map +1 -1
- package/dist/src/nile-table-body/nile-table-body.css.d.ts +2 -2
- package/dist/src/nile-table-body/nile-table-body.css.js +1 -1
- package/dist/src/nile-table-body/nile-table-body.css.js.map +1 -1
- package/dist/src/nile-table-body/nile-table-body.d.ts +1 -1
- package/dist/src/nile-table-body/nile-table-body.js +2 -2
- package/dist/src/nile-table-body/nile-table-body.js.map +1 -1
- package/dist/src/nile-table-cell-item/nile-table-cell-item.css.d.ts +2 -2
- package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js +1 -1
- package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js.map +1 -1
- package/dist/src/nile-table-cell-item/nile-table-cell-item.d.ts +1 -1
- package/dist/src/nile-table-cell-item/nile-table-cell-item.js +1 -1
- package/dist/src/nile-table-cell-item/nile-table-cell-item.js.map +1 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.css.d.ts +2 -2
- package/dist/src/nile-table-header-item/nile-table-header-item.css.js +1 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.css.js.map +1 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.d.ts +1 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.js +2 -2
- package/dist/src/nile-table-header-item/nile-table-header-item.js.map +1 -1
- package/dist/src/nile-table-row/nile-table-row.css.d.ts +2 -2
- package/dist/src/nile-table-row/nile-table-row.css.js +1 -1
- package/dist/src/nile-table-row/nile-table-row.css.js.map +1 -1
- package/dist/src/nile-table-row/nile-table-row.d.ts +1 -1
- package/dist/src/nile-table-row/nile-table-row.js +1 -1
- package/dist/src/nile-table-row/nile-table-row.js.map +1 -1
- package/dist/src/nile-tag/nile-tag.css.d.ts +2 -2
- package/dist/src/nile-tag/nile-tag.css.js +1 -1
- package/dist/src/nile-tag/nile-tag.css.js.map +1 -1
- package/dist/src/nile-tag/nile-tag.d.ts +1 -1
- package/dist/src/nile-tag/nile-tag.js +2 -2
- package/dist/src/nile-tag/nile-tag.js.map +1 -1
- package/dist/src/nile-textarea/nile-textarea.css.d.ts +2 -2
- package/dist/src/nile-textarea/nile-textarea.css.js +1 -1
- package/dist/src/nile-textarea/nile-textarea.css.js.map +1 -1
- package/dist/src/nile-textarea/nile-textarea.d.ts +1 -1
- package/dist/src/nile-textarea/nile-textarea.js +2 -2
- package/dist/src/nile-textarea/nile-textarea.js.map +1 -1
- package/dist/src/nile-title/nile-title.css.d.ts +2 -2
- package/dist/src/nile-title/nile-title.css.js +1 -1
- package/dist/src/nile-title/nile-title.css.js.map +1 -1
- package/dist/src/nile-title/nile-title.d.ts +1 -1
- package/dist/src/nile-title/nile-title.js +2 -2
- package/dist/src/nile-title/nile-title.js.map +1 -1
- package/dist/src/nile-toast/nile-toast.css.d.ts +2 -2
- package/dist/src/nile-toast/nile-toast.css.js +1 -1
- package/dist/src/nile-toast/nile-toast.css.js.map +1 -1
- package/dist/src/nile-toast/nile-toast.d.ts +1 -1
- package/dist/src/nile-toast/nile-toast.js.map +1 -1
- package/dist/src/nile-toolbar/nile-toolbar.css.d.ts +2 -2
- package/dist/src/nile-toolbar/nile-toolbar.css.js +1 -1
- package/dist/src/nile-toolbar/nile-toolbar.css.js.map +1 -1
- package/dist/src/nile-toolbar/nile-toolbar.d.ts +1 -1
- package/dist/src/nile-toolbar/nile-toolbar.js +2 -2
- package/dist/src/nile-toolbar/nile-toolbar.js.map +1 -1
- package/dist/src/nile-tooltip/nile-tooltip.css.d.ts +2 -2
- package/dist/src/nile-tooltip/nile-tooltip.css.js +1 -1
- package/dist/src/nile-tooltip/nile-tooltip.css.js.map +1 -1
- package/dist/src/nile-tooltip/nile-tooltip.d.ts +1 -1
- package/dist/src/nile-tooltip/nile-tooltip.js.map +1 -1
- package/dist/src/nile-tour/nile-tour.d.ts +7 -1
- package/dist/src/nile-tour/nile-tour.js +8 -2
- package/dist/src/nile-tour/nile-tour.js.map +1 -1
- package/dist/src/nile-tree/nile-tree.css.d.ts +2 -2
- package/dist/src/nile-tree/nile-tree.css.js +1 -1
- package/dist/src/nile-tree/nile-tree.css.js.map +1 -1
- package/dist/src/nile-tree/nile-tree.d.ts +1 -1
- package/dist/src/nile-tree/nile-tree.js.map +1 -1
- package/dist/src/nile-tree-item/nile-tree-item.css.d.ts +2 -2
- package/dist/src/nile-tree-item/nile-tree-item.css.js +1 -1
- package/dist/src/nile-tree-item/nile-tree-item.css.js.map +1 -1
- package/dist/src/nile-tree-item/nile-tree-item.d.ts +1 -1
- package/dist/src/nile-tree-item/nile-tree-item.js.map +1 -1
- package/dist/src/nile-vertical-stepper-item/nile-vertical-stepper-item.css.d.ts +2 -2
- package/dist/src/nile-vertical-stepper-item/nile-vertical-stepper-item.css.js +1 -1
- package/dist/src/nile-vertical-stepper-item/nile-vertical-stepper-item.css.js.map +1 -1
- package/dist/src/nile-vertical-stepper-item/nile-vertical-stepper-item.d.ts +1 -1
- package/dist/src/nile-vertical-stepper-item/nile-vertical-stepper-item.js +2 -2
- package/dist/src/nile-vertical-stepper-item/nile-vertical-stepper-item.js.map +1 -1
- package/dist/src/slot.js.map +1 -1
- package/dist/src/utilities/animation-registry.js.map +1 -1
- package/dist/src/watch.js.map +1 -1
- package/dist/{stata-4e98b0d7.cjs.js → stata-78afb97b.cjs.js} +2 -2
- package/dist/{stata-4e98b0d7.cjs.js.map → stata-78afb97b.cjs.js.map} +1 -1
- package/dist/{svelte-2ae868b6.cjs.js → svelte-19d6874e.cjs.js} +2 -2
- package/dist/{svelte-2ae868b6.cjs.js.map → svelte-19d6874e.cjs.js.map} +1 -1
- package/dist/{templ-2a2d64b7.cjs.js → templ-bcd631a8.cjs.js} +2 -2
- package/dist/{templ-2a2d64b7.cjs.js.map → templ-bcd631a8.cjs.js.map} +1 -1
- package/dist/{tex-8addc455.cjs.js → tex-b259605b.cjs.js} +2 -2
- package/dist/{tex-8addc455.cjs.js.map → tex-b259605b.cjs.js.map} +1 -1
- package/dist/{ts-tags-62649717.esm.js → ts-tags-15fa4f2c.esm.js} +1 -1
- package/dist/{ts-tags-e56ee3ee.cjs.js → ts-tags-bc669468.cjs.js} +2 -2
- package/dist/{ts-tags-e56ee3ee.cjs.js.map → ts-tags-bc669468.cjs.js.map} +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/{twig-911808dc.cjs.js → twig-ad6c4022.cjs.js} +2 -2
- package/dist/{twig-911808dc.cjs.js.map → twig-ad6c4022.cjs.js.map} +1 -1
- package/dist/{vue-9b06428b.cjs.js → vue-632b4676.cjs.js} +2 -2
- package/dist/{vue-9b06428b.cjs.js.map → vue-632b4676.cjs.js.map} +1 -1
- package/dist/{vue-html-ca1dd5bf.cjs.js → vue-html-d67ac5a8.cjs.js} +2 -2
- package/dist/{vue-html-ca1dd5bf.cjs.js.map → vue-html-d67ac5a8.cjs.js.map} +1 -1
- package/dist/{xml-496a65af.cjs.js → xml-667b435c.cjs.js} +2 -2
- package/dist/{xml-496a65af.cjs.js.map → xml-667b435c.cjs.js.map} +1 -1
- package/dist/{xsl-d545dfbf.cjs.js → xsl-6a5865d1.cjs.js} +2 -2
- package/dist/{xsl-d545dfbf.cjs.js.map → xsl-6a5865d1.cjs.js.map} +1 -1
- package/package.json +5 -5
- package/plop-templates/lit/lit.css.ts.hbs +1 -1
- package/plop-templates/lit/lit.ts.hbs +1 -1
- package/src/nile-accordion/nile-accordion.css.ts +1 -1
- package/src/nile-accordion/nile-accordion.ts +2 -2
- package/src/nile-auto-complete/nile-auto-complete.css.ts +1 -1
- package/src/nile-auto-complete/nile-auto-complete.ts +2 -3
- package/src/nile-avatar/nile-avatar.css.ts +1 -1
- package/src/nile-avatar/nile-avatar.ts +2 -3
- package/src/nile-badge/nile-badge.css.ts +1 -1
- package/src/nile-badge/nile-badge.ts +2 -3
- package/src/nile-breadcrumb/nile-breadcrumb.css.ts +1 -1
- package/src/nile-breadcrumb/nile-breadcrumb.ts +2 -3
- package/src/nile-breadcrumb-item/nile-breadcrumb-item.css.ts +1 -1
- package/src/nile-breadcrumb-item/nile-breadcrumb-item.ts +2 -3
- package/src/nile-button/nile-button.css.ts +1 -1
- package/src/nile-button/nile-button.test.ts +0 -1
- package/src/nile-button/nile-button.ts +80 -33
- package/src/nile-button-filter/nile-button-filter.css.ts +1 -1
- package/src/nile-button-filter/nile-button-filter.ts +2 -3
- package/src/nile-button-toggle/nile-button-toggle.css.ts +1 -1
- package/src/nile-button-toggle/nile-button-toggle.ts +2 -2
- package/src/nile-button-toggle-group/nile-button-toggle-group.css.ts +1 -1
- package/src/nile-button-toggle-group/nile-button-toggle-group.ts +2 -2
- package/src/nile-calendar/nile-calendar.css.ts +1 -1
- package/src/nile-calendar/nile-calendar.ts +2 -3
- package/src/nile-card/nile-card.css.ts +1 -1
- package/src/nile-card/nile-card.ts +2 -3
- package/src/nile-checkbox/nile-checkbox.css.ts +1 -1
- package/src/nile-checkbox/nile-checkbox.ts +2 -3
- package/src/nile-chip/nile-chip.css.ts +1 -1
- package/src/nile-chip/nile-chip.ts +2 -3
- package/src/nile-circular-progressbar/nile-circular-progressbar.css.ts +1 -1
- package/src/nile-circular-progressbar/nile-circular-progressbar.ts +2 -3
- package/src/nile-code-editor/nile-code-editor.css.ts +1 -1
- package/src/nile-code-editor/nile-code-editor.ts +2 -3
- package/src/nile-content-editor/nile-content-editor.css.ts +1 -1
- package/src/nile-content-editor/nile-content-editor.ts +2 -2
- package/src/nile-date-picker/nile-date-picker.css.ts +1 -1
- package/src/nile-date-picker/nile-date-picker.ts +2 -3
- package/src/nile-dialog/nile-dialog.css.ts +1 -1
- package/src/nile-dialog/nile-dialog.ts +1 -1
- package/src/nile-divider/nile-divider.css.ts +1 -1
- package/src/nile-divider/nile-divider.ts +2 -2
- package/src/nile-drawer/nile-drawer.css.ts +1 -1
- package/src/nile-dropdown/nile-dropdown.css.ts +1 -1
- package/src/nile-dropdown/nile-dropdown.ts +2 -2
- package/src/nile-empty-state/nile-empty-state.css.ts +1 -1
- package/src/nile-empty-state/nile-empty-state.ts +2 -2
- package/src/nile-error-message/nile-error-message.css.ts +1 -1
- package/src/nile-error-message/nile-error-message.ts +2 -3
- package/src/nile-error-notification/nile-error-notification.css.ts +1 -1
- package/src/nile-error-notification/nile-error-notification.ts +2 -3
- package/src/nile-footer/index.ts +2 -2
- package/src/nile-footer/nile-footer.css.ts +1 -1
- package/src/nile-form-error-message/nile-form-error-message.css.ts +1 -1
- package/src/nile-form-error-message/nile-form-error-message.ts +2 -2
- package/src/nile-form-group/nile-form-group.css.ts +1 -1
- package/src/nile-form-group/nile-form-group.ts +2 -5
- package/src/nile-form-help-text/nile-form-help-text.css.ts +1 -1
- package/src/nile-form-help-text/nile-form-help-text.ts +2 -2
- package/src/nile-format-date/nile-format-date.css.ts +1 -1
- package/src/nile-format-date/nile-format-date.ts +2 -2
- package/src/nile-hero/nile-hero.css.ts +1 -1
- package/src/nile-hero/nile-hero.ts +2 -2
- package/src/nile-hero-header/nile-hero-header.css.ts +1 -1
- package/src/nile-hero-header/nile-hero-header.ts +2 -2
- package/src/nile-highlighter/nile-highlighter.css.ts +1 -1
- package/src/nile-highlighter/nile-highlighter.ts +2 -2
- package/src/nile-icon-button/nile-icon-button.css.ts +1 -1
- package/src/nile-icon-button/nile-icon-button.ts +84 -42
- package/src/nile-inline-edit/nile-inline-edit.css.ts +1 -1
- package/src/nile-inline-edit/nile-inline-edit.ts +2 -3
- package/src/nile-input/nile-input.css.ts +1 -1
- package/src/nile-input/nile-input.test.ts +0 -1
- package/src/nile-input/nile-input.ts +2 -3
- package/src/nile-link/nile-link.css.ts +1 -1
- package/src/nile-link/nile-link.test.ts +1 -1
- package/src/nile-link/nile-link.ts +2 -2
- package/src/nile-list/nile-list.css.ts +1 -1
- package/src/nile-list/nile-list.ts +2 -3
- package/src/nile-list-item/nile-list-item.css.ts +1 -1
- package/src/nile-list-item/nile-list-item.ts +2 -3
- package/src/nile-loader/nile-loader.test.ts +1 -1
- package/src/nile-loader/nile-loader.ts +1 -1
- package/src/nile-menu/nile-menu.css.ts +1 -1
- package/src/nile-menu-item/nile-menu-item.css.ts +1 -1
- package/src/nile-menu-item/nile-menu-item.ts +2 -3
- package/src/nile-option/nile-option.css.ts +1 -1
- package/src/nile-option/nile-option.ts +1 -1
- package/src/nile-page-header/nile-page-header.css.ts +1 -1
- package/src/nile-page-header/nile-page-header.ts +1 -3
- package/src/nile-popover/nile-popover.css.ts +1 -1
- package/src/nile-popover/nile-popover.ts +1 -2
- package/src/nile-popup/nile-popup.css.ts +1 -1
- package/src/nile-popup/nile-popup.ts +1 -1
- package/src/nile-progress-bar/nile-progress-bar.ts +2 -1
- package/src/nile-radio/nile-radio.css.ts +1 -1
- package/src/nile-radio/nile-radio.ts +2 -2
- package/src/nile-section-message/nile-section-message.css.ts +1 -1
- package/src/nile-section-message/nile-section-message.ts +2 -3
- package/src/nile-select/nile-select.css.ts +1 -1
- package/src/nile-select/nile-select.ts +2 -5
- package/src/nile-sidebar-menu/nile-sidebar-menu.css.ts +1 -1
- package/src/nile-sidebar-menu/nile-sidebar-menu.ts +2 -3
- package/src/nile-sidebar-menu-items/nile-sidebar-menu-items.css.ts +1 -1
- package/src/nile-sidebar-menu-items/nile-sidebar-menu-items.ts +2 -3
- package/src/nile-sidebar-wrapper/nile-sidebar-wrapper.css.ts +1 -1
- package/src/nile-sidebar-wrapper/nile-sidebar-wrapper.ts +2 -3
- package/src/nile-slide-toggle/nile-slide-toggle.test.ts +1 -1
- package/src/nile-slide-toggle/nile-slide-toggle.ts +3 -2
- package/src/nile-spinner/nile-spinner.css.ts +1 -1
- package/src/nile-spinner/nile-spinner.ts +2 -2
- package/src/nile-split-panel/nile-split-panel.css.ts +1 -1
- package/src/nile-split-panel/nile-split-panel.ts +1 -1
- package/src/nile-stepper/nile-stepper.css.ts +1 -1
- package/src/nile-stepper/nile-stepper.ts +2 -2
- package/src/nile-stepper-item/nile-stepper-item.css.ts +1 -1
- package/src/nile-stepper-item/nile-stepper-item.ts +2 -2
- package/src/nile-switcher/nile-switcher.css.ts +1 -1
- package/src/nile-switcher/nile-switcher.ts +2 -2
- package/src/nile-tab/nile-tab.css.ts +1 -1
- package/src/nile-tab/nile-tab.ts +2 -2
- package/src/nile-tab-group/nile-tab-group.css.ts +1 -1
- package/src/nile-tab-group/nile-tab-group.ts +2 -2
- package/src/nile-tab-panel/nile-tab-panel.css.ts +1 -1
- package/src/nile-tab-panel/nile-tab-panel.ts +2 -2
- package/src/nile-table-body/nile-table-body.css.ts +1 -1
- package/src/nile-table-body/nile-table-body.ts +2 -2
- package/src/nile-table-cell-item/nile-table-cell-item.css.ts +1 -1
- package/src/nile-table-cell-item/nile-table-cell-item.ts +2 -3
- package/src/nile-table-header-item/nile-table-header-item.css.ts +1 -1
- package/src/nile-table-header-item/nile-table-header-item.ts +2 -3
- package/src/nile-table-row/nile-table-row.css.ts +1 -1
- package/src/nile-table-row/nile-table-row.ts +2 -3
- package/src/nile-tag/nile-tag.css.ts +1 -1
- package/src/nile-tag/nile-tag.ts +2 -3
- package/src/nile-textarea/nile-textarea.css.ts +1 -1
- package/src/nile-textarea/nile-textarea.ts +2 -2
- package/src/nile-title/nile-title.css.ts +1 -1
- package/src/nile-title/nile-title.ts +2 -2
- package/src/nile-toast/nile-toast.css.ts +1 -1
- package/src/nile-toast/nile-toast.ts +1 -1
- package/src/nile-toolbar/nile-toolbar.css.ts +1 -1
- package/src/nile-toolbar/nile-toolbar.ts +2 -2
- package/src/nile-tooltip/nile-tooltip.css.ts +1 -1
- package/src/nile-tooltip/nile-tooltip.ts +1 -1
- package/src/nile-tour/nile-tour.ts +9 -2
- package/src/nile-tree/nile-tree.css.ts +1 -1
- package/src/nile-tree/nile-tree.ts +1 -1
- package/src/nile-tree-item/nile-tree-item.css.ts +1 -1
- package/src/nile-tree-item/nile-tree-item.ts +1 -1
- package/src/nile-vertical-stepper-item/nile-vertical-stepper-item.css.ts +1 -1
- package/src/nile-vertical-stepper-item/nile-vertical-stepper-item.ts +2 -2
- package/vscode-html-custom-data.json +1 -1
- package/dist/custom-element-9087bdd5.cjs.js +0 -6
- package/dist/custom-element-9087bdd5.cjs.js.map +0 -1
- package/dist/custom-element-ed237dbb.esm.js +0 -6
- package/dist/index-0a3007c5.esm.js +0 -35
- package/dist/index-c7ad3b47.cjs.js +0 -22
- package/dist/index-c7ad3b47.cjs.js.map +0 -1
- package/dist/property-09139d3c.esm.js +0 -6
- package/dist/property-217fe924.cjs.js +0 -6
- package/dist/property-217fe924.cjs.js.map +0 -1
- package/dist/scopedElementsWrapper-2fa3aa8b.cjs.js +0 -6
- package/dist/scopedElementsWrapper-2fa3aa8b.cjs.js.map +0 -1
- package/dist/scopedElementsWrapper-4c29be11.esm.js +0 -7
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nile-highlighter.cjs.js","sources":["../../../../node_modules/@shikijs/engine-oniguruma/dist/index.mjs","../../../../node_modules/@shikijs/vscode-textmate/dist/index.mjs","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/merge.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/normalize.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/types.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/defined-info.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/create.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/case-sensitive-transform.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/case-insensitive-transform.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/find.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/core.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/util/format-smart.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/util/to-hexadecimal.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/util/to-named.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/util/to-decimal.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/index.js","../../../../node_modules/@shikijs/core/node_modules/ccount/index.js","../../../../node_modules/@shikijs/core/node_modules/comma-separated-tokens/index.js","../../../../node_modules/@shikijs/core/node_modules/space-separated-tokens/index.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-whitespace/lib/index.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/omission/util/siblings.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/omission/omission.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/omission/closing.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/element.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/text.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/index.js","../../../../node_modules/@shikijs/core/dist/index.mjs","../../../../node_modules/shiki/dist/bundle-full.mjs","../../../../node_modules/shiki/dist/langs.mjs","../../../../node_modules/shiki/dist/themes.mjs","../../../../node_modules/@shikijs/types/dist/index.mjs","../../../../node_modules/@shikijs/core/node_modules/html-void-elements/index.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/schema.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/info.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/xlink.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/xml.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/xmlns.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/aria.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/html.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/svg.js","../../../../node_modules/@shikijs/core/node_modules/property-information/index.js","../../../../node_modules/@shikijs/core/node_modules/zwitch/index.js","../../../../node_modules/@shikijs/core/node_modules/character-entities-legacy/index.js","../../../../node_modules/@shikijs/core/node_modules/character-entities-html4/index.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/constant/dangerous.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/comment.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/omission/opening.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/index.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/doctype.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/raw.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/root.js","../../../src/nile-highlighter/nile-highlighter.ts"],"sourcesContent":["class ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = 'ShikiError';\n }\n}\n\nfunction getHeapMax() {\n return 2147483648;\n}\nfunction _emscripten_get_now() {\n return typeof performance !== 'undefined' ? performance.now() : Date.now();\n}\nconst alignUp = (x, multiple) => x + ((multiple - (x % multiple)) % multiple);\nasync function main(init) {\n let wasmMemory;\n let buffer;\n const binding = {};\n function updateGlobalBufferAndViews(buf) {\n buffer = buf;\n binding.HEAPU8 = new Uint8Array(buf);\n binding.HEAPU32 = new Uint32Array(buf);\n }\n function _emscripten_memcpy_big(dest, src, num) {\n binding.HEAPU8.copyWithin(dest, src, src + num);\n }\n function emscripten_realloc_buffer(size) {\n try {\n wasmMemory.grow((size - buffer.byteLength + 65535) >>> 16);\n updateGlobalBufferAndViews(wasmMemory.buffer);\n return 1;\n }\n catch { }\n }\n function _emscripten_resize_heap(requestedSize) {\n const oldSize = binding.HEAPU8.length;\n requestedSize = requestedSize >>> 0;\n const maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize)\n return false;\n for (let cutDown = 1; cutDown <= 4; cutDown *= 2) {\n let overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n const newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n const replacement = emscripten_realloc_buffer(newSize);\n if (replacement)\n return true;\n }\n return false;\n }\n const UTF8Decoder = typeof TextDecoder != 'undefined' ? new TextDecoder('utf8') : undefined;\n function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead = 1024) {\n const endIdx = idx + maxBytesToRead;\n let endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));\n }\n let str = '';\n while (idx < endPtr) {\n let u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n const u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) === 192) {\n str += String.fromCharCode(((u0 & 31) << 6) | u1);\n continue;\n }\n const u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) === 224) {\n u0 = ((u0 & 15) << 12) | (u1 << 6) | u2;\n }\n else {\n u0 = ((u0 & 7) << 18)\n | (u1 << 12)\n | (u2 << 6)\n | (heapOrArray[idx++] & 63);\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n }\n else {\n const ch = u0 - 65536;\n str += String.fromCharCode(55296 | (ch >> 10), 56320 | (ch & 1023));\n }\n }\n return str;\n }\n function UTF8ToString(ptr, maxBytesToRead) {\n return ptr ? UTF8ArrayToString(binding.HEAPU8, ptr, maxBytesToRead) : '';\n }\n const asmLibraryArg = {\n emscripten_get_now: _emscripten_get_now,\n emscripten_memcpy_big: _emscripten_memcpy_big,\n emscripten_resize_heap: _emscripten_resize_heap,\n fd_write: () => 0,\n };\n async function createWasm() {\n const info = {\n env: asmLibraryArg,\n wasi_snapshot_preview1: asmLibraryArg,\n };\n const exports = await init(info);\n wasmMemory = exports.memory;\n updateGlobalBufferAndViews(wasmMemory.buffer);\n Object.assign(binding, exports);\n binding.UTF8ToString = UTF8ToString;\n }\n await createWasm();\n return binding;\n}\n\n/* ---------------------------------------------------------\n * Copyright (C) Microsoft Corporation. All rights reserved.\n *-------------------------------------------------------- */\nlet onigBinding = null;\n// let defaultDebugCall = false\nfunction throwLastOnigError(onigBinding) {\n throw new ShikiError(onigBinding.UTF8ToString(onigBinding.getLastOnigError()));\n}\nclass UtfString {\n static _utf8ByteLength(str) {\n let result = 0;\n for (let i = 0, len = str.length; i < len; i++) {\n const charCode = str.charCodeAt(i);\n let codepoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 0xD800 && charCode <= 0xDBFF) {\n // Hit a high surrogate, try to look for a matching low surrogate\n if (i + 1 < len) {\n const nextCharCode = str.charCodeAt(i + 1);\n if (nextCharCode >= 0xDC00 && nextCharCode <= 0xDFFF) {\n // Found the matching low surrogate\n codepoint = (((charCode - 0xD800) << 10) + 0x10000) | (nextCharCode - 0xDC00);\n wasSurrogatePair = true;\n }\n }\n }\n if (codepoint <= 0x7F)\n result += 1;\n else if (codepoint <= 0x7FF)\n result += 2;\n else if (codepoint <= 0xFFFF)\n result += 3;\n else\n result += 4;\n if (wasSurrogatePair)\n i++;\n }\n return result;\n }\n utf16Length;\n utf8Length;\n utf16Value;\n utf8Value;\n utf16OffsetToUtf8;\n utf8OffsetToUtf16;\n constructor(str) {\n const utf16Length = str.length;\n const utf8Length = UtfString._utf8ByteLength(str);\n const computeIndicesMapping = (utf8Length !== utf16Length);\n const utf16OffsetToUtf8 = computeIndicesMapping ? new Uint32Array(utf16Length + 1) : null;\n if (computeIndicesMapping)\n utf16OffsetToUtf8[utf16Length] = utf8Length;\n const utf8OffsetToUtf16 = computeIndicesMapping ? new Uint32Array(utf8Length + 1) : null;\n if (computeIndicesMapping)\n utf8OffsetToUtf16[utf8Length] = utf16Length;\n const utf8Value = new Uint8Array(utf8Length);\n let i8 = 0;\n for (let i16 = 0; i16 < utf16Length; i16++) {\n const charCode = str.charCodeAt(i16);\n let codePoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 0xD800 && charCode <= 0xDBFF) {\n // Hit a high surrogate, try to look for a matching low surrogate\n if (i16 + 1 < utf16Length) {\n const nextCharCode = str.charCodeAt(i16 + 1);\n if (nextCharCode >= 0xDC00 && nextCharCode <= 0xDFFF) {\n // Found the matching low surrogate\n codePoint = (((charCode - 0xD800) << 10) + 0x10000) | (nextCharCode - 0xDC00);\n wasSurrogatePair = true;\n }\n }\n }\n if (computeIndicesMapping) {\n utf16OffsetToUtf8[i16] = i8;\n if (wasSurrogatePair)\n utf16OffsetToUtf8[i16 + 1] = i8;\n if (codePoint <= 0x7F) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n }\n else if (codePoint <= 0x7FF) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n }\n else if (codePoint <= 0xFFFF) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n }\n else {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n utf8OffsetToUtf16[i8 + 3] = i16;\n }\n }\n if (codePoint <= 0x7F) {\n utf8Value[i8++] = codePoint;\n }\n else if (codePoint <= 0x7FF) {\n utf8Value[i8++] = 0b11000000 | ((codePoint & 0b00000000000000000000011111000000) >>> 6);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000000000111111) >>> 0);\n }\n else if (codePoint <= 0xFFFF) {\n utf8Value[i8++] = 0b11100000 | ((codePoint & 0b00000000000000001111000000000000) >>> 12);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000111111000000) >>> 6);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000000000111111) >>> 0);\n }\n else {\n utf8Value[i8++] = 0b11110000 | ((codePoint & 0b00000000000111000000000000000000) >>> 18);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000111111000000000000) >>> 12);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000111111000000) >>> 6);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000000000111111) >>> 0);\n }\n if (wasSurrogatePair)\n i16++;\n }\n this.utf16Length = utf16Length;\n this.utf8Length = utf8Length;\n this.utf16Value = str;\n this.utf8Value = utf8Value;\n this.utf16OffsetToUtf8 = utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utf8OffsetToUtf16;\n }\n createString(onigBinding) {\n const result = onigBinding.omalloc(this.utf8Length);\n onigBinding.HEAPU8.set(this.utf8Value, result);\n return result;\n }\n}\nclass OnigString {\n static LAST_ID = 0;\n static _sharedPtr = 0; // a pointer to a string of 10000 bytes\n static _sharedPtrInUse = false;\n id = (++OnigString.LAST_ID);\n _onigBinding;\n content;\n utf16Length;\n utf8Length;\n utf16OffsetToUtf8;\n utf8OffsetToUtf16;\n ptr;\n constructor(str) {\n if (!onigBinding)\n throw new ShikiError('Must invoke loadWasm first.');\n this._onigBinding = onigBinding;\n this.content = str;\n const utfString = new UtfString(str);\n this.utf16Length = utfString.utf16Length;\n this.utf8Length = utfString.utf8Length;\n this.utf16OffsetToUtf8 = utfString.utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utfString.utf8OffsetToUtf16;\n if (this.utf8Length < 10000 && !OnigString._sharedPtrInUse) {\n if (!OnigString._sharedPtr)\n OnigString._sharedPtr = onigBinding.omalloc(10000);\n OnigString._sharedPtrInUse = true;\n onigBinding.HEAPU8.set(utfString.utf8Value, OnigString._sharedPtr);\n this.ptr = OnigString._sharedPtr;\n }\n else {\n this.ptr = utfString.createString(onigBinding);\n }\n }\n convertUtf8OffsetToUtf16(utf8Offset) {\n if (this.utf8OffsetToUtf16) {\n if (utf8Offset < 0)\n return 0;\n if (utf8Offset > this.utf8Length)\n return this.utf16Length;\n return this.utf8OffsetToUtf16[utf8Offset];\n }\n return utf8Offset;\n }\n convertUtf16OffsetToUtf8(utf16Offset) {\n if (this.utf16OffsetToUtf8) {\n if (utf16Offset < 0)\n return 0;\n if (utf16Offset > this.utf16Length)\n return this.utf8Length;\n return this.utf16OffsetToUtf8[utf16Offset];\n }\n return utf16Offset;\n }\n dispose() {\n if (this.ptr === OnigString._sharedPtr)\n OnigString._sharedPtrInUse = false;\n else\n this._onigBinding.ofree(this.ptr);\n }\n}\nclass OnigScanner {\n _onigBinding;\n _ptr;\n constructor(patterns) {\n if (!onigBinding)\n throw new ShikiError('Must invoke loadWasm first.');\n const strPtrsArr = [];\n const strLenArr = [];\n for (let i = 0, len = patterns.length; i < len; i++) {\n const utfString = new UtfString(patterns[i]);\n strPtrsArr[i] = utfString.createString(onigBinding);\n strLenArr[i] = utfString.utf8Length;\n }\n const strPtrsPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strPtrsArr, strPtrsPtr / 4);\n const strLenPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strLenArr, strLenPtr / 4);\n const scannerPtr = onigBinding.createOnigScanner(strPtrsPtr, strLenPtr, patterns.length);\n for (let i = 0, len = patterns.length; i < len; i++)\n onigBinding.ofree(strPtrsArr[i]);\n onigBinding.ofree(strLenPtr);\n onigBinding.ofree(strPtrsPtr);\n if (scannerPtr === 0)\n throwLastOnigError(onigBinding);\n this._onigBinding = onigBinding;\n this._ptr = scannerPtr;\n }\n dispose() {\n this._onigBinding.freeOnigScanner(this._ptr);\n }\n findNextMatchSync(string, startPosition, arg) {\n // let debugCall = defaultDebugCall\n let options = 0 /* FindOption.None */;\n if (typeof arg === 'number') {\n // if (arg & FindOption.DebugCall)\n // debugCall = true\n options = arg;\n }\n if (typeof string === 'string') {\n string = new OnigString(string);\n const result = this._findNextMatchSync(string, startPosition, false, options);\n string.dispose();\n return result;\n }\n return this._findNextMatchSync(string, startPosition, false, options);\n }\n _findNextMatchSync(string, startPosition, debugCall, options) {\n const onigBinding = this._onigBinding;\n // let resultPtr: Pointer\n // if (debugCall)\n // resultPtr = onigBinding.findNextOnigScannerMatchDbg(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options)\n // else\n const resultPtr = onigBinding.findNextOnigScannerMatch(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options);\n if (resultPtr === 0) {\n // no match\n return null;\n }\n const HEAPU32 = onigBinding.HEAPU32;\n let offset = resultPtr / 4; // byte offset -> uint32 offset\n const index = HEAPU32[offset++];\n const count = HEAPU32[offset++];\n const captureIndices = [];\n for (let i = 0; i < count; i++) {\n const beg = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n const end = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n captureIndices[i] = {\n start: beg,\n end,\n length: end - beg,\n };\n }\n return {\n index,\n captureIndices,\n };\n }\n}\nfunction isInstantiatorOptionsObject(dataOrOptions) {\n return (typeof dataOrOptions.instantiator === 'function');\n}\nfunction isInstantiatorModule(dataOrOptions) {\n return (typeof dataOrOptions.default === 'function');\n}\nfunction isDataOptionsObject(dataOrOptions) {\n return (typeof dataOrOptions.data !== 'undefined');\n}\nfunction isResponse(dataOrOptions) {\n return (typeof Response !== 'undefined' && dataOrOptions instanceof Response);\n}\nfunction isArrayBuffer(data) {\n return (typeof ArrayBuffer !== 'undefined' && (data instanceof ArrayBuffer || ArrayBuffer.isView(data)))\n // eslint-disable-next-line node/prefer-global/buffer\n || (typeof Buffer !== 'undefined' && Buffer.isBuffer?.(data))\n || (typeof SharedArrayBuffer !== 'undefined' && data instanceof SharedArrayBuffer)\n || (typeof Uint32Array !== 'undefined' && data instanceof Uint32Array);\n}\nlet initPromise;\nfunction loadWasm(options) {\n if (initPromise)\n return initPromise;\n async function _load() {\n onigBinding = await main(async (info) => {\n let instance = options;\n instance = await instance;\n if (typeof instance === 'function')\n instance = await instance(info);\n if (typeof instance === 'function')\n instance = await instance(info);\n if (isInstantiatorOptionsObject(instance)) {\n instance = await instance.instantiator(info);\n }\n else if (isInstantiatorModule(instance)) {\n instance = await instance.default(info);\n }\n else {\n if (isDataOptionsObject(instance))\n instance = instance.data;\n if (isResponse(instance)) {\n if (typeof WebAssembly.instantiateStreaming === 'function')\n instance = await _makeResponseStreamingLoader(instance)(info);\n else\n instance = await _makeResponseNonStreamingLoader(instance)(info);\n }\n else if (isArrayBuffer(instance)) {\n instance = await _makeArrayBufferLoader(instance)(info);\n }\n // import(\"shiki/onig.wasm\") returns `{ default: WebAssembly.Module }` on cloudflare workers\n // https://developers.cloudflare.com/workers/wrangler/bundling/\n else if (instance instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance)(info);\n }\n else if ('default' in instance && instance.default instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance.default)(info);\n }\n }\n if ('instance' in instance)\n instance = instance.instance;\n if ('exports' in instance)\n instance = instance.exports;\n return instance;\n });\n }\n initPromise = _load();\n return initPromise;\n}\nfunction _makeArrayBufferLoader(data) {\n return importObject => WebAssembly.instantiate(data, importObject);\n}\nfunction _makeResponseStreamingLoader(data) {\n return importObject => WebAssembly.instantiateStreaming(data, importObject);\n}\nfunction _makeResponseNonStreamingLoader(data) {\n return async (importObject) => {\n const arrayBuffer = await data.arrayBuffer();\n return WebAssembly.instantiate(arrayBuffer, importObject);\n };\n}\n// export function createOnigString(str: string) {\n// return new OnigString(str)\n// }\n// export function createOnigScanner(patterns: string[]) {\n// return new OnigScanner(patterns)\n// }\n// export function setDefaultDebugCall(_defaultDebugCall: boolean): void {\n// defaultDebugCall = _defaultDebugCall\n// }\n\nlet _defaultWasmLoader;\n/**\n * Set the default wasm loader for `loadWasm`.\n * @internal\n */\nfunction setDefaultWasmLoader(_loader) {\n _defaultWasmLoader = _loader;\n}\n/**\n * @internal\n */\nfunction getDefaultWasmLoader() {\n return _defaultWasmLoader;\n}\nasync function createOnigurumaEngine(options) {\n if (options)\n await loadWasm(options);\n return {\n createScanner(patterns) {\n return new OnigScanner(patterns);\n },\n createString(s) {\n return new OnigString(s);\n },\n };\n}\n/**\n * Deprecated. Use `createOnigurumaEngine` instead.\n */\nasync function createWasmOnigEngine(options) {\n return createOnigurumaEngine(options);\n}\n\nexport { createOnigurumaEngine, createWasmOnigEngine, getDefaultWasmLoader, loadWasm, setDefaultWasmLoader };\n","// src/utils.ts\nfunction clone(something) {\n return doClone(something);\n}\nfunction doClone(something) {\n if (Array.isArray(something)) {\n return cloneArray(something);\n }\n if (typeof something === \"object\") {\n return cloneObj(something);\n }\n return something;\n}\nfunction cloneArray(arr) {\n let r = [];\n for (let i = 0, len = arr.length; i < len; i++) {\n r[i] = doClone(arr[i]);\n }\n return r;\n}\nfunction cloneObj(obj) {\n let r = {};\n for (let key in obj) {\n r[key] = doClone(obj[key]);\n }\n return r;\n}\nfunction mergeObjects(target, ...sources) {\n sources.forEach((source) => {\n for (let key in source) {\n target[key] = source[key];\n }\n });\n return target;\n}\nfunction basename(path) {\n const idx = ~path.lastIndexOf(\"/\") || ~path.lastIndexOf(\"\\\\\");\n if (idx === 0) {\n return path;\n } else if (~idx === path.length - 1) {\n return basename(path.substring(0, path.length - 1));\n } else {\n return path.substr(~idx + 1);\n }\n}\nvar CAPTURING_REGEX_SOURCE = /\\$(\\d+)|\\${(\\d+):\\/(downcase|upcase)}/g;\nvar RegexSource = class {\n static hasCaptures(regexSource) {\n if (regexSource === null) {\n return false;\n }\n CAPTURING_REGEX_SOURCE.lastIndex = 0;\n return CAPTURING_REGEX_SOURCE.test(regexSource);\n }\n static replaceCaptures(regexSource, captureSource, captureIndices) {\n return regexSource.replace(CAPTURING_REGEX_SOURCE, (match, index, commandIndex, command) => {\n let capture = captureIndices[parseInt(index || commandIndex, 10)];\n if (capture) {\n let result = captureSource.substring(capture.start, capture.end);\n while (result[0] === \".\") {\n result = result.substring(1);\n }\n switch (command) {\n case \"downcase\":\n return result.toLowerCase();\n case \"upcase\":\n return result.toUpperCase();\n default:\n return result;\n }\n } else {\n return match;\n }\n });\n }\n};\nfunction strcmp(a, b) {\n if (a < b) {\n return -1;\n }\n if (a > b) {\n return 1;\n }\n return 0;\n}\nfunction strArrCmp(a, b) {\n if (a === null && b === null) {\n return 0;\n }\n if (!a) {\n return -1;\n }\n if (!b) {\n return 1;\n }\n let len1 = a.length;\n let len2 = b.length;\n if (len1 === len2) {\n for (let i = 0; i < len1; i++) {\n let res = strcmp(a[i], b[i]);\n if (res !== 0) {\n return res;\n }\n }\n return 0;\n }\n return len1 - len2;\n}\nfunction isValidHexColor(hex) {\n if (/^#[0-9a-f]{6}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{8}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{3}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{4}$/i.test(hex)) {\n return true;\n }\n return false;\n}\nfunction escapeRegExpCharacters(value) {\n return value.replace(/[\\-\\\\\\{\\}\\*\\+\\?\\|\\^\\$\\.\\,\\[\\]\\(\\)\\#\\s]/g, \"\\\\$&\");\n}\nvar CachedFn = class {\n constructor(fn) {\n this.fn = fn;\n this.cache = /* @__PURE__ */ new Map();\n }\n get(key) {\n if (this.cache.has(key)) {\n return this.cache.get(key);\n }\n const value = this.fn(key);\n this.cache.set(key, value);\n return value;\n }\n};\n\n// src/theme.ts\nvar Theme = class {\n constructor(_colorMap, _defaults, _root) {\n this._colorMap = _colorMap;\n this._defaults = _defaults;\n this._root = _root;\n this._cachedMatchRoot = new CachedFn(\n (scopeName) => this._root.match(scopeName)\n );\n }\n static createFromRawTheme(source, colorMap) {\n return this.createFromParsedTheme(parseTheme(source), colorMap);\n }\n static createFromParsedTheme(source, colorMap) {\n return resolveParsedThemeRules(source, colorMap);\n }\n getColorMap() {\n return this._colorMap.getColorMap();\n }\n getDefaults() {\n return this._defaults;\n }\n match(scopePath) {\n if (scopePath === null) {\n return this._defaults;\n }\n const scopeName = scopePath.scopeName;\n const matchingTrieElements = this._cachedMatchRoot.get(scopeName);\n const effectiveRule = matchingTrieElements.find(\n (v) => _scopePathMatchesParentScopes(scopePath.parent, v.parentScopes)\n );\n if (!effectiveRule) {\n return null;\n }\n return new StyleAttributes(\n effectiveRule.fontStyle,\n effectiveRule.foreground,\n effectiveRule.background\n );\n }\n};\nvar ScopeStack = class _ScopeStack {\n constructor(parent, scopeName) {\n this.parent = parent;\n this.scopeName = scopeName;\n }\n static push(path, scopeNames) {\n for (const name of scopeNames) {\n path = new _ScopeStack(path, name);\n }\n return path;\n }\n static from(...segments) {\n let result = null;\n for (let i = 0; i < segments.length; i++) {\n result = new _ScopeStack(result, segments[i]);\n }\n return result;\n }\n push(scopeName) {\n return new _ScopeStack(this, scopeName);\n }\n getSegments() {\n let item = this;\n const result = [];\n while (item) {\n result.push(item.scopeName);\n item = item.parent;\n }\n result.reverse();\n return result;\n }\n toString() {\n return this.getSegments().join(\" \");\n }\n extends(other) {\n if (this === other) {\n return true;\n }\n if (this.parent === null) {\n return false;\n }\n return this.parent.extends(other);\n }\n getExtensionIfDefined(base) {\n const result = [];\n let item = this;\n while (item && item !== base) {\n result.push(item.scopeName);\n item = item.parent;\n }\n return item === base ? result.reverse() : void 0;\n }\n};\nfunction _scopePathMatchesParentScopes(scopePath, parentScopes) {\n if (parentScopes.length === 0) {\n return true;\n }\n for (let index = 0; index < parentScopes.length; index++) {\n let scopePattern = parentScopes[index];\n let scopeMustMatch = false;\n if (scopePattern === \">\") {\n if (index === parentScopes.length - 1) {\n return false;\n }\n scopePattern = parentScopes[++index];\n scopeMustMatch = true;\n }\n while (scopePath) {\n if (_matchesScope(scopePath.scopeName, scopePattern)) {\n break;\n }\n if (scopeMustMatch) {\n return false;\n }\n scopePath = scopePath.parent;\n }\n if (!scopePath) {\n return false;\n }\n scopePath = scopePath.parent;\n }\n return true;\n}\nfunction _matchesScope(scopeName, scopePattern) {\n return scopePattern === scopeName || scopeName.startsWith(scopePattern) && scopeName[scopePattern.length] === \".\";\n}\nvar StyleAttributes = class {\n constructor(fontStyle, foregroundId, backgroundId) {\n this.fontStyle = fontStyle;\n this.foregroundId = foregroundId;\n this.backgroundId = backgroundId;\n }\n};\nfunction parseTheme(source) {\n if (!source) {\n return [];\n }\n if (!source.settings || !Array.isArray(source.settings)) {\n return [];\n }\n let settings = source.settings;\n let result = [], resultLen = 0;\n for (let i = 0, len = settings.length; i < len; i++) {\n let entry = settings[i];\n if (!entry.settings) {\n continue;\n }\n let scopes;\n if (typeof entry.scope === \"string\") {\n let _scope = entry.scope;\n _scope = _scope.replace(/^[,]+/, \"\");\n _scope = _scope.replace(/[,]+$/, \"\");\n scopes = _scope.split(\",\");\n } else if (Array.isArray(entry.scope)) {\n scopes = entry.scope;\n } else {\n scopes = [\"\"];\n }\n let fontStyle = -1 /* NotSet */;\n if (typeof entry.settings.fontStyle === \"string\") {\n fontStyle = 0 /* None */;\n let segments = entry.settings.fontStyle.split(\" \");\n for (let j = 0, lenJ = segments.length; j < lenJ; j++) {\n let segment = segments[j];\n switch (segment) {\n case \"italic\":\n fontStyle = fontStyle | 1 /* Italic */;\n break;\n case \"bold\":\n fontStyle = fontStyle | 2 /* Bold */;\n break;\n case \"underline\":\n fontStyle = fontStyle | 4 /* Underline */;\n break;\n case \"strikethrough\":\n fontStyle = fontStyle | 8 /* Strikethrough */;\n break;\n }\n }\n }\n let foreground = null;\n if (typeof entry.settings.foreground === \"string\" && isValidHexColor(entry.settings.foreground)) {\n foreground = entry.settings.foreground;\n }\n let background = null;\n if (typeof entry.settings.background === \"string\" && isValidHexColor(entry.settings.background)) {\n background = entry.settings.background;\n }\n for (let j = 0, lenJ = scopes.length; j < lenJ; j++) {\n let _scope = scopes[j].trim();\n let segments = _scope.split(\" \");\n let scope = segments[segments.length - 1];\n let parentScopes = null;\n if (segments.length > 1) {\n parentScopes = segments.slice(0, segments.length - 1);\n parentScopes.reverse();\n }\n result[resultLen++] = new ParsedThemeRule(\n scope,\n parentScopes,\n i,\n fontStyle,\n foreground,\n background\n );\n }\n }\n return result;\n}\nvar ParsedThemeRule = class {\n constructor(scope, parentScopes, index, fontStyle, foreground, background) {\n this.scope = scope;\n this.parentScopes = parentScopes;\n this.index = index;\n this.fontStyle = fontStyle;\n this.foreground = foreground;\n this.background = background;\n }\n};\nvar FontStyle = /* @__PURE__ */ ((FontStyle2) => {\n FontStyle2[FontStyle2[\"NotSet\"] = -1] = \"NotSet\";\n FontStyle2[FontStyle2[\"None\"] = 0] = \"None\";\n FontStyle2[FontStyle2[\"Italic\"] = 1] = \"Italic\";\n FontStyle2[FontStyle2[\"Bold\"] = 2] = \"Bold\";\n FontStyle2[FontStyle2[\"Underline\"] = 4] = \"Underline\";\n FontStyle2[FontStyle2[\"Strikethrough\"] = 8] = \"Strikethrough\";\n return FontStyle2;\n})(FontStyle || {});\nfunction resolveParsedThemeRules(parsedThemeRules, _colorMap) {\n parsedThemeRules.sort((a, b) => {\n let r = strcmp(a.scope, b.scope);\n if (r !== 0) {\n return r;\n }\n r = strArrCmp(a.parentScopes, b.parentScopes);\n if (r !== 0) {\n return r;\n }\n return a.index - b.index;\n });\n let defaultFontStyle = 0 /* None */;\n let defaultForeground = \"#000000\";\n let defaultBackground = \"#ffffff\";\n while (parsedThemeRules.length >= 1 && parsedThemeRules[0].scope === \"\") {\n let incomingDefaults = parsedThemeRules.shift();\n if (incomingDefaults.fontStyle !== -1 /* NotSet */) {\n defaultFontStyle = incomingDefaults.fontStyle;\n }\n if (incomingDefaults.foreground !== null) {\n defaultForeground = incomingDefaults.foreground;\n }\n if (incomingDefaults.background !== null) {\n defaultBackground = incomingDefaults.background;\n }\n }\n let colorMap = new ColorMap(_colorMap);\n let defaults = new StyleAttributes(defaultFontStyle, colorMap.getId(defaultForeground), colorMap.getId(defaultBackground));\n let root = new ThemeTrieElement(new ThemeTrieElementRule(0, null, -1 /* NotSet */, 0, 0), []);\n for (let i = 0, len = parsedThemeRules.length; i < len; i++) {\n let rule = parsedThemeRules[i];\n root.insert(0, rule.scope, rule.parentScopes, rule.fontStyle, colorMap.getId(rule.foreground), colorMap.getId(rule.background));\n }\n return new Theme(colorMap, defaults, root);\n}\nvar ColorMap = class {\n constructor(_colorMap) {\n this._lastColorId = 0;\n this._id2color = [];\n this._color2id = /* @__PURE__ */ Object.create(null);\n if (Array.isArray(_colorMap)) {\n this._isFrozen = true;\n for (let i = 0, len = _colorMap.length; i < len; i++) {\n this._color2id[_colorMap[i]] = i;\n this._id2color[i] = _colorMap[i];\n }\n } else {\n this._isFrozen = false;\n }\n }\n getId(color) {\n if (color === null) {\n return 0;\n }\n color = color.toUpperCase();\n let value = this._color2id[color];\n if (value) {\n return value;\n }\n if (this._isFrozen) {\n throw new Error(`Missing color in color map - ${color}`);\n }\n value = ++this._lastColorId;\n this._color2id[color] = value;\n this._id2color[value] = color;\n return value;\n }\n getColorMap() {\n return this._id2color.slice(0);\n }\n};\nvar emptyParentScopes = Object.freeze([]);\nvar ThemeTrieElementRule = class _ThemeTrieElementRule {\n constructor(scopeDepth, parentScopes, fontStyle, foreground, background) {\n this.scopeDepth = scopeDepth;\n this.parentScopes = parentScopes || emptyParentScopes;\n this.fontStyle = fontStyle;\n this.foreground = foreground;\n this.background = background;\n }\n clone() {\n return new _ThemeTrieElementRule(this.scopeDepth, this.parentScopes, this.fontStyle, this.foreground, this.background);\n }\n static cloneArr(arr) {\n let r = [];\n for (let i = 0, len = arr.length; i < len; i++) {\n r[i] = arr[i].clone();\n }\n return r;\n }\n acceptOverwrite(scopeDepth, fontStyle, foreground, background) {\n if (this.scopeDepth > scopeDepth) {\n console.log(\"how did this happen?\");\n } else {\n this.scopeDepth = scopeDepth;\n }\n if (fontStyle !== -1 /* NotSet */) {\n this.fontStyle = fontStyle;\n }\n if (foreground !== 0) {\n this.foreground = foreground;\n }\n if (background !== 0) {\n this.background = background;\n }\n }\n};\nvar ThemeTrieElement = class _ThemeTrieElement {\n constructor(_mainRule, rulesWithParentScopes = [], _children = {}) {\n this._mainRule = _mainRule;\n this._children = _children;\n this._rulesWithParentScopes = rulesWithParentScopes;\n }\n static _cmpBySpecificity(a, b) {\n if (a.scopeDepth !== b.scopeDepth) {\n return b.scopeDepth - a.scopeDepth;\n }\n let aParentIndex = 0;\n let bParentIndex = 0;\n while (true) {\n if (a.parentScopes[aParentIndex] === \">\") {\n aParentIndex++;\n }\n if (b.parentScopes[bParentIndex] === \">\") {\n bParentIndex++;\n }\n if (aParentIndex >= a.parentScopes.length || bParentIndex >= b.parentScopes.length) {\n break;\n }\n const parentScopeLengthDiff = b.parentScopes[bParentIndex].length - a.parentScopes[aParentIndex].length;\n if (parentScopeLengthDiff !== 0) {\n return parentScopeLengthDiff;\n }\n aParentIndex++;\n bParentIndex++;\n }\n return b.parentScopes.length - a.parentScopes.length;\n }\n match(scope) {\n if (scope !== \"\") {\n let dotIndex = scope.indexOf(\".\");\n let head;\n let tail;\n if (dotIndex === -1) {\n head = scope;\n tail = \"\";\n } else {\n head = scope.substring(0, dotIndex);\n tail = scope.substring(dotIndex + 1);\n }\n if (this._children.hasOwnProperty(head)) {\n return this._children[head].match(tail);\n }\n }\n const rules = this._rulesWithParentScopes.concat(this._mainRule);\n rules.sort(_ThemeTrieElement._cmpBySpecificity);\n return rules;\n }\n insert(scopeDepth, scope, parentScopes, fontStyle, foreground, background) {\n if (scope === \"\") {\n this._doInsertHere(scopeDepth, parentScopes, fontStyle, foreground, background);\n return;\n }\n let dotIndex = scope.indexOf(\".\");\n let head;\n let tail;\n if (dotIndex === -1) {\n head = scope;\n tail = \"\";\n } else {\n head = scope.substring(0, dotIndex);\n tail = scope.substring(dotIndex + 1);\n }\n let child;\n if (this._children.hasOwnProperty(head)) {\n child = this._children[head];\n } else {\n child = new _ThemeTrieElement(this._mainRule.clone(), ThemeTrieElementRule.cloneArr(this._rulesWithParentScopes));\n this._children[head] = child;\n }\n child.insert(scopeDepth + 1, tail, parentScopes, fontStyle, foreground, background);\n }\n _doInsertHere(scopeDepth, parentScopes, fontStyle, foreground, background) {\n if (parentScopes === null) {\n this._mainRule.acceptOverwrite(scopeDepth, fontStyle, foreground, background);\n return;\n }\n for (let i = 0, len = this._rulesWithParentScopes.length; i < len; i++) {\n let rule = this._rulesWithParentScopes[i];\n if (strArrCmp(rule.parentScopes, parentScopes) === 0) {\n rule.acceptOverwrite(scopeDepth, fontStyle, foreground, background);\n return;\n }\n }\n if (fontStyle === -1 /* NotSet */) {\n fontStyle = this._mainRule.fontStyle;\n }\n if (foreground === 0) {\n foreground = this._mainRule.foreground;\n }\n if (background === 0) {\n background = this._mainRule.background;\n }\n this._rulesWithParentScopes.push(new ThemeTrieElementRule(scopeDepth, parentScopes, fontStyle, foreground, background));\n }\n};\n\n// src/encodedTokenAttributes.ts\nvar EncodedTokenMetadata = class _EncodedTokenMetadata {\n static toBinaryStr(encodedTokenAttributes) {\n return encodedTokenAttributes.toString(2).padStart(32, \"0\");\n }\n static print(encodedTokenAttributes) {\n const languageId = _EncodedTokenMetadata.getLanguageId(encodedTokenAttributes);\n const tokenType = _EncodedTokenMetadata.getTokenType(encodedTokenAttributes);\n const fontStyle = _EncodedTokenMetadata.getFontStyle(encodedTokenAttributes);\n const foreground = _EncodedTokenMetadata.getForeground(encodedTokenAttributes);\n const background = _EncodedTokenMetadata.getBackground(encodedTokenAttributes);\n console.log({\n languageId,\n tokenType,\n fontStyle,\n foreground,\n background\n });\n }\n static getLanguageId(encodedTokenAttributes) {\n return (encodedTokenAttributes & 255 /* LANGUAGEID_MASK */) >>> 0 /* LANGUAGEID_OFFSET */;\n }\n static getTokenType(encodedTokenAttributes) {\n return (encodedTokenAttributes & 768 /* TOKEN_TYPE_MASK */) >>> 8 /* TOKEN_TYPE_OFFSET */;\n }\n static containsBalancedBrackets(encodedTokenAttributes) {\n return (encodedTokenAttributes & 1024 /* BALANCED_BRACKETS_MASK */) !== 0;\n }\n static getFontStyle(encodedTokenAttributes) {\n return (encodedTokenAttributes & 30720 /* FONT_STYLE_MASK */) >>> 11 /* FONT_STYLE_OFFSET */;\n }\n static getForeground(encodedTokenAttributes) {\n return (encodedTokenAttributes & 16744448 /* FOREGROUND_MASK */) >>> 15 /* FOREGROUND_OFFSET */;\n }\n static getBackground(encodedTokenAttributes) {\n return (encodedTokenAttributes & 4278190080 /* BACKGROUND_MASK */) >>> 24 /* BACKGROUND_OFFSET */;\n }\n /**\n * Updates the fields in `metadata`.\n * A value of `0`, `NotSet` or `null` indicates that the corresponding field should be left as is.\n */\n static set(encodedTokenAttributes, languageId, tokenType, containsBalancedBrackets, fontStyle, foreground, background) {\n let _languageId = _EncodedTokenMetadata.getLanguageId(encodedTokenAttributes);\n let _tokenType = _EncodedTokenMetadata.getTokenType(encodedTokenAttributes);\n let _containsBalancedBracketsBit = _EncodedTokenMetadata.containsBalancedBrackets(encodedTokenAttributes) ? 1 : 0;\n let _fontStyle = _EncodedTokenMetadata.getFontStyle(encodedTokenAttributes);\n let _foreground = _EncodedTokenMetadata.getForeground(encodedTokenAttributes);\n let _background = _EncodedTokenMetadata.getBackground(encodedTokenAttributes);\n if (languageId !== 0) {\n _languageId = languageId;\n }\n if (tokenType !== 8 /* NotSet */) {\n _tokenType = fromOptionalTokenType(tokenType);\n }\n if (containsBalancedBrackets !== null) {\n _containsBalancedBracketsBit = containsBalancedBrackets ? 1 : 0;\n }\n if (fontStyle !== -1 /* NotSet */) {\n _fontStyle = fontStyle;\n }\n if (foreground !== 0) {\n _foreground = foreground;\n }\n if (background !== 0) {\n _background = background;\n }\n return (_languageId << 0 /* LANGUAGEID_OFFSET */ | _tokenType << 8 /* TOKEN_TYPE_OFFSET */ | _containsBalancedBracketsBit << 10 /* BALANCED_BRACKETS_OFFSET */ | _fontStyle << 11 /* FONT_STYLE_OFFSET */ | _foreground << 15 /* FOREGROUND_OFFSET */ | _background << 24 /* BACKGROUND_OFFSET */) >>> 0;\n }\n};\nfunction toOptionalTokenType(standardType) {\n return standardType;\n}\nfunction fromOptionalTokenType(standardType) {\n return standardType;\n}\n\n// src/matcher.ts\nfunction createMatchers(selector, matchesName) {\n const results = [];\n const tokenizer = newTokenizer(selector);\n let token = tokenizer.next();\n while (token !== null) {\n let priority = 0;\n if (token.length === 2 && token.charAt(1) === \":\") {\n switch (token.charAt(0)) {\n case \"R\":\n priority = 1;\n break;\n case \"L\":\n priority = -1;\n break;\n default:\n console.log(`Unknown priority ${token} in scope selector`);\n }\n token = tokenizer.next();\n }\n let matcher = parseConjunction();\n results.push({ matcher, priority });\n if (token !== \",\") {\n break;\n }\n token = tokenizer.next();\n }\n return results;\n function parseOperand() {\n if (token === \"-\") {\n token = tokenizer.next();\n const expressionToNegate = parseOperand();\n return (matcherInput) => !!expressionToNegate && !expressionToNegate(matcherInput);\n }\n if (token === \"(\") {\n token = tokenizer.next();\n const expressionInParents = parseInnerExpression();\n if (token === \")\") {\n token = tokenizer.next();\n }\n return expressionInParents;\n }\n if (isIdentifier(token)) {\n const identifiers = [];\n do {\n identifiers.push(token);\n token = tokenizer.next();\n } while (isIdentifier(token));\n return (matcherInput) => matchesName(identifiers, matcherInput);\n }\n return null;\n }\n function parseConjunction() {\n const matchers = [];\n let matcher = parseOperand();\n while (matcher) {\n matchers.push(matcher);\n matcher = parseOperand();\n }\n return (matcherInput) => matchers.every((matcher2) => matcher2(matcherInput));\n }\n function parseInnerExpression() {\n const matchers = [];\n let matcher = parseConjunction();\n while (matcher) {\n matchers.push(matcher);\n if (token === \"|\" || token === \",\") {\n do {\n token = tokenizer.next();\n } while (token === \"|\" || token === \",\");\n } else {\n break;\n }\n matcher = parseConjunction();\n }\n return (matcherInput) => matchers.some((matcher2) => matcher2(matcherInput));\n }\n}\nfunction isIdentifier(token) {\n return !!token && !!token.match(/[\\w\\.:]+/);\n}\nfunction newTokenizer(input) {\n let regex = /([LR]:|[\\w\\.:][\\w\\.:\\-]*|[\\,\\|\\-\\(\\)])/g;\n let match = regex.exec(input);\n return {\n next: () => {\n if (!match) {\n return null;\n }\n const res = match[0];\n match = regex.exec(input);\n return res;\n }\n };\n}\n\n// src/onigLib.ts\nvar FindOption = /* @__PURE__ */ ((FindOption2) => {\n FindOption2[FindOption2[\"None\"] = 0] = \"None\";\n FindOption2[FindOption2[\"NotBeginString\"] = 1] = \"NotBeginString\";\n FindOption2[FindOption2[\"NotEndString\"] = 2] = \"NotEndString\";\n FindOption2[FindOption2[\"NotBeginPosition\"] = 4] = \"NotBeginPosition\";\n FindOption2[FindOption2[\"DebugCall\"] = 8] = \"DebugCall\";\n return FindOption2;\n})(FindOption || {});\nfunction disposeOnigString(str) {\n if (typeof str.dispose === \"function\") {\n str.dispose();\n }\n}\n\n// src/grammar/grammarDependencies.ts\nvar TopLevelRuleReference = class {\n constructor(scopeName) {\n this.scopeName = scopeName;\n }\n toKey() {\n return this.scopeName;\n }\n};\nvar TopLevelRepositoryRuleReference = class {\n constructor(scopeName, ruleName) {\n this.scopeName = scopeName;\n this.ruleName = ruleName;\n }\n toKey() {\n return `${this.scopeName}#${this.ruleName}`;\n }\n};\nvar ExternalReferenceCollector = class {\n constructor() {\n this._references = [];\n this._seenReferenceKeys = /* @__PURE__ */ new Set();\n this.visitedRule = /* @__PURE__ */ new Set();\n }\n get references() {\n return this._references;\n }\n add(reference) {\n const key = reference.toKey();\n if (this._seenReferenceKeys.has(key)) {\n return;\n }\n this._seenReferenceKeys.add(key);\n this._references.push(reference);\n }\n};\nvar ScopeDependencyProcessor = class {\n constructor(repo, initialScopeName) {\n this.repo = repo;\n this.initialScopeName = initialScopeName;\n this.seenFullScopeRequests = /* @__PURE__ */ new Set();\n this.seenPartialScopeRequests = /* @__PURE__ */ new Set();\n this.seenFullScopeRequests.add(this.initialScopeName);\n this.Q = [new TopLevelRuleReference(this.initialScopeName)];\n }\n processQueue() {\n const q = this.Q;\n this.Q = [];\n const deps = new ExternalReferenceCollector();\n for (const dep of q) {\n collectReferencesOfReference(dep, this.initialScopeName, this.repo, deps);\n }\n for (const dep of deps.references) {\n if (dep instanceof TopLevelRuleReference) {\n if (this.seenFullScopeRequests.has(dep.scopeName)) {\n continue;\n }\n this.seenFullScopeRequests.add(dep.scopeName);\n this.Q.push(dep);\n } else {\n if (this.seenFullScopeRequests.has(dep.scopeName)) {\n continue;\n }\n if (this.seenPartialScopeRequests.has(dep.toKey())) {\n continue;\n }\n this.seenPartialScopeRequests.add(dep.toKey());\n this.Q.push(dep);\n }\n }\n }\n};\nfunction collectReferencesOfReference(reference, baseGrammarScopeName, repo, result) {\n const selfGrammar = repo.lookup(reference.scopeName);\n if (!selfGrammar) {\n if (reference.scopeName === baseGrammarScopeName) {\n throw new Error(`No grammar provided for <${baseGrammarScopeName}>`);\n }\n return;\n }\n const baseGrammar = repo.lookup(baseGrammarScopeName);\n if (reference instanceof TopLevelRuleReference) {\n collectExternalReferencesInTopLevelRule({ baseGrammar, selfGrammar }, result);\n } else {\n collectExternalReferencesInTopLevelRepositoryRule(\n reference.ruleName,\n { baseGrammar, selfGrammar, repository: selfGrammar.repository },\n result\n );\n }\n const injections = repo.injections(reference.scopeName);\n if (injections) {\n for (const injection of injections) {\n result.add(new TopLevelRuleReference(injection));\n }\n }\n}\nfunction collectExternalReferencesInTopLevelRepositoryRule(ruleName, context, result) {\n if (context.repository && context.repository[ruleName]) {\n const rule = context.repository[ruleName];\n collectExternalReferencesInRules([rule], context, result);\n }\n}\nfunction collectExternalReferencesInTopLevelRule(context, result) {\n if (context.selfGrammar.patterns && Array.isArray(context.selfGrammar.patterns)) {\n collectExternalReferencesInRules(\n context.selfGrammar.patterns,\n { ...context, repository: context.selfGrammar.repository },\n result\n );\n }\n if (context.selfGrammar.injections) {\n collectExternalReferencesInRules(\n Object.values(context.selfGrammar.injections),\n { ...context, repository: context.selfGrammar.repository },\n result\n );\n }\n}\nfunction collectExternalReferencesInRules(rules, context, result) {\n for (const rule of rules) {\n if (result.visitedRule.has(rule)) {\n continue;\n }\n result.visitedRule.add(rule);\n const patternRepository = rule.repository ? mergeObjects({}, context.repository, rule.repository) : context.repository;\n if (Array.isArray(rule.patterns)) {\n collectExternalReferencesInRules(rule.patterns, { ...context, repository: patternRepository }, result);\n }\n const include = rule.include;\n if (!include) {\n continue;\n }\n const reference = parseInclude(include);\n switch (reference.kind) {\n case 0 /* Base */:\n collectExternalReferencesInTopLevelRule({ ...context, selfGrammar: context.baseGrammar }, result);\n break;\n case 1 /* Self */:\n collectExternalReferencesInTopLevelRule(context, result);\n break;\n case 2 /* RelativeReference */:\n collectExternalReferencesInTopLevelRepositoryRule(reference.ruleName, { ...context, repository: patternRepository }, result);\n break;\n case 3 /* TopLevelReference */:\n case 4 /* TopLevelRepositoryReference */:\n const selfGrammar = reference.scopeName === context.selfGrammar.scopeName ? context.selfGrammar : reference.scopeName === context.baseGrammar.scopeName ? context.baseGrammar : void 0;\n if (selfGrammar) {\n const newContext = { baseGrammar: context.baseGrammar, selfGrammar, repository: patternRepository };\n if (reference.kind === 4 /* TopLevelRepositoryReference */) {\n collectExternalReferencesInTopLevelRepositoryRule(reference.ruleName, newContext, result);\n } else {\n collectExternalReferencesInTopLevelRule(newContext, result);\n }\n } else {\n if (reference.kind === 4 /* TopLevelRepositoryReference */) {\n result.add(new TopLevelRepositoryRuleReference(reference.scopeName, reference.ruleName));\n } else {\n result.add(new TopLevelRuleReference(reference.scopeName));\n }\n }\n break;\n }\n }\n}\nvar BaseReference = class {\n constructor() {\n this.kind = 0 /* Base */;\n }\n};\nvar SelfReference = class {\n constructor() {\n this.kind = 1 /* Self */;\n }\n};\nvar RelativeReference = class {\n constructor(ruleName) {\n this.ruleName = ruleName;\n this.kind = 2 /* RelativeReference */;\n }\n};\nvar TopLevelReference = class {\n constructor(scopeName) {\n this.scopeName = scopeName;\n this.kind = 3 /* TopLevelReference */;\n }\n};\nvar TopLevelRepositoryReference = class {\n constructor(scopeName, ruleName) {\n this.scopeName = scopeName;\n this.ruleName = ruleName;\n this.kind = 4 /* TopLevelRepositoryReference */;\n }\n};\nfunction parseInclude(include) {\n if (include === \"$base\") {\n return new BaseReference();\n } else if (include === \"$self\") {\n return new SelfReference();\n }\n const indexOfSharp = include.indexOf(\"#\");\n if (indexOfSharp === -1) {\n return new TopLevelReference(include);\n } else if (indexOfSharp === 0) {\n return new RelativeReference(include.substring(1));\n } else {\n const scopeName = include.substring(0, indexOfSharp);\n const ruleName = include.substring(indexOfSharp + 1);\n return new TopLevelRepositoryReference(scopeName, ruleName);\n }\n}\n\n// src/rule.ts\nvar HAS_BACK_REFERENCES = /\\\\(\\d+)/;\nvar BACK_REFERENCING_END = /\\\\(\\d+)/g;\nvar ruleIdSymbol = Symbol(\"RuleId\");\nvar endRuleId = -1;\nvar whileRuleId = -2;\nfunction ruleIdFromNumber(id) {\n return id;\n}\nfunction ruleIdToNumber(id) {\n return id;\n}\nvar Rule = class {\n constructor($location, id, name, contentName) {\n this.$location = $location;\n this.id = id;\n this._name = name || null;\n this._nameIsCapturing = RegexSource.hasCaptures(this._name);\n this._contentName = contentName || null;\n this._contentNameIsCapturing = RegexSource.hasCaptures(this._contentName);\n }\n get debugName() {\n const location = this.$location ? `${basename(this.$location.filename)}:${this.$location.line}` : \"unknown\";\n return `${this.constructor.name}#${this.id} @ ${location}`;\n }\n getName(lineText, captureIndices) {\n if (!this._nameIsCapturing || this._name === null || lineText === null || captureIndices === null) {\n return this._name;\n }\n return RegexSource.replaceCaptures(this._name, lineText, captureIndices);\n }\n getContentName(lineText, captureIndices) {\n if (!this._contentNameIsCapturing || this._contentName === null) {\n return this._contentName;\n }\n return RegexSource.replaceCaptures(this._contentName, lineText, captureIndices);\n }\n};\nvar CaptureRule = class extends Rule {\n constructor($location, id, name, contentName, retokenizeCapturedWithRuleId) {\n super($location, id, name, contentName);\n this.retokenizeCapturedWithRuleId = retokenizeCapturedWithRuleId;\n }\n dispose() {\n }\n collectPatterns(grammar, out) {\n throw new Error(\"Not supported!\");\n }\n compile(grammar, endRegexSource) {\n throw new Error(\"Not supported!\");\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n throw new Error(\"Not supported!\");\n }\n};\nvar MatchRule = class extends Rule {\n constructor($location, id, name, match, captures) {\n super($location, id, name, null);\n this._match = new RegExpSource(match, this.id);\n this.captures = captures;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n get debugMatchRegExp() {\n return `${this._match.source}`;\n }\n collectPatterns(grammar, out) {\n out.push(this._match);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n this.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar IncludeOnlyRule = class extends Rule {\n constructor($location, id, name, contentName, patterns) {\n super($location, id, name, contentName);\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n collectPatterns(grammar, out) {\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, out);\n }\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n this.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar BeginEndRule = class extends Rule {\n constructor($location, id, name, contentName, begin, beginCaptures, end, endCaptures, applyEndPatternLast, patterns) {\n super($location, id, name, contentName);\n this._begin = new RegExpSource(begin, this.id);\n this.beginCaptures = beginCaptures;\n this._end = new RegExpSource(end ? end : \"\\uFFFF\", -1);\n this.endHasBackReferences = this._end.hasBackReferences;\n this.endCaptures = endCaptures;\n this.applyEndPatternLast = applyEndPatternLast || false;\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n get debugBeginRegExp() {\n return `${this._begin.source}`;\n }\n get debugEndRegExp() {\n return `${this._end.source}`;\n }\n getEndWithResolvedBackReferences(lineText, captureIndices) {\n return this._end.resolveBackReferences(lineText, captureIndices);\n }\n collectPatterns(grammar, out) {\n out.push(this._begin);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar, endRegexSource).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar, endRegexSource).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar, endRegexSource) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n if (this.applyEndPatternLast) {\n this._cachedCompiledPatterns.push(this._end.hasBackReferences ? this._end.clone() : this._end);\n } else {\n this._cachedCompiledPatterns.unshift(this._end.hasBackReferences ? this._end.clone() : this._end);\n }\n }\n if (this._end.hasBackReferences) {\n if (this.applyEndPatternLast) {\n this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length() - 1, endRegexSource);\n } else {\n this._cachedCompiledPatterns.setSource(0, endRegexSource);\n }\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar BeginWhileRule = class extends Rule {\n constructor($location, id, name, contentName, begin, beginCaptures, _while, whileCaptures, patterns) {\n super($location, id, name, contentName);\n this._begin = new RegExpSource(begin, this.id);\n this.beginCaptures = beginCaptures;\n this.whileCaptures = whileCaptures;\n this._while = new RegExpSource(_while, whileRuleId);\n this.whileHasBackReferences = this._while.hasBackReferences;\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n this._cachedCompiledWhilePatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n if (this._cachedCompiledWhilePatterns) {\n this._cachedCompiledWhilePatterns.dispose();\n this._cachedCompiledWhilePatterns = null;\n }\n }\n get debugBeginRegExp() {\n return `${this._begin.source}`;\n }\n get debugWhileRegExp() {\n return `${this._while.source}`;\n }\n getWhileWithResolvedBackReferences(lineText, captureIndices) {\n return this._while.resolveBackReferences(lineText, captureIndices);\n }\n collectPatterns(grammar, out) {\n out.push(this._begin);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n }\n return this._cachedCompiledPatterns;\n }\n compileWhile(grammar, endRegexSource) {\n return this._getCachedCompiledWhilePatterns(grammar, endRegexSource).compile(grammar);\n }\n compileWhileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledWhilePatterns(grammar, endRegexSource).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledWhilePatterns(grammar, endRegexSource) {\n if (!this._cachedCompiledWhilePatterns) {\n this._cachedCompiledWhilePatterns = new RegExpSourceList();\n this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences ? this._while.clone() : this._while);\n }\n if (this._while.hasBackReferences) {\n this._cachedCompiledWhilePatterns.setSource(0, endRegexSource ? endRegexSource : \"\\uFFFF\");\n }\n return this._cachedCompiledWhilePatterns;\n }\n};\nvar RuleFactory = class _RuleFactory {\n static createCaptureRule(helper, $location, name, contentName, retokenizeCapturedWithRuleId) {\n return helper.registerRule((id) => {\n return new CaptureRule($location, id, name, contentName, retokenizeCapturedWithRuleId);\n });\n }\n static getCompiledRuleId(desc, helper, repository) {\n if (!desc.id) {\n helper.registerRule((id) => {\n desc.id = id;\n if (desc.match) {\n return new MatchRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.match,\n _RuleFactory._compileCaptures(desc.captures, helper, repository)\n );\n }\n if (typeof desc.begin === \"undefined\") {\n if (desc.repository) {\n repository = mergeObjects({}, repository, desc.repository);\n }\n let patterns = desc.patterns;\n if (typeof patterns === \"undefined\" && desc.include) {\n patterns = [{ include: desc.include }];\n }\n return new IncludeOnlyRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n _RuleFactory._compilePatterns(patterns, helper, repository)\n );\n }\n if (desc.while) {\n return new BeginWhileRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n desc.begin,\n _RuleFactory._compileCaptures(desc.beginCaptures || desc.captures, helper, repository),\n desc.while,\n _RuleFactory._compileCaptures(desc.whileCaptures || desc.captures, helper, repository),\n _RuleFactory._compilePatterns(desc.patterns, helper, repository)\n );\n }\n return new BeginEndRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n desc.begin,\n _RuleFactory._compileCaptures(desc.beginCaptures || desc.captures, helper, repository),\n desc.end,\n _RuleFactory._compileCaptures(desc.endCaptures || desc.captures, helper, repository),\n desc.applyEndPatternLast,\n _RuleFactory._compilePatterns(desc.patterns, helper, repository)\n );\n });\n }\n return desc.id;\n }\n static _compileCaptures(captures, helper, repository) {\n let r = [];\n if (captures) {\n let maximumCaptureId = 0;\n for (const captureId in captures) {\n if (captureId === \"$vscodeTextmateLocation\") {\n continue;\n }\n const numericCaptureId = parseInt(captureId, 10);\n if (numericCaptureId > maximumCaptureId) {\n maximumCaptureId = numericCaptureId;\n }\n }\n for (let i = 0; i <= maximumCaptureId; i++) {\n r[i] = null;\n }\n for (const captureId in captures) {\n if (captureId === \"$vscodeTextmateLocation\") {\n continue;\n }\n const numericCaptureId = parseInt(captureId, 10);\n let retokenizeCapturedWithRuleId = 0;\n if (captures[captureId].patterns) {\n retokenizeCapturedWithRuleId = _RuleFactory.getCompiledRuleId(captures[captureId], helper, repository);\n }\n r[numericCaptureId] = _RuleFactory.createCaptureRule(helper, captures[captureId].$vscodeTextmateLocation, captures[captureId].name, captures[captureId].contentName, retokenizeCapturedWithRuleId);\n }\n }\n return r;\n }\n static _compilePatterns(patterns, helper, repository) {\n let r = [];\n if (patterns) {\n for (let i = 0, len = patterns.length; i < len; i++) {\n const pattern = patterns[i];\n let ruleId = -1;\n if (pattern.include) {\n const reference = parseInclude(pattern.include);\n switch (reference.kind) {\n case 0 /* Base */:\n case 1 /* Self */:\n ruleId = _RuleFactory.getCompiledRuleId(repository[pattern.include], helper, repository);\n break;\n case 2 /* RelativeReference */:\n let localIncludedRule = repository[reference.ruleName];\n if (localIncludedRule) {\n ruleId = _RuleFactory.getCompiledRuleId(localIncludedRule, helper, repository);\n } else {\n }\n break;\n case 3 /* TopLevelReference */:\n case 4 /* TopLevelRepositoryReference */:\n const externalGrammarName = reference.scopeName;\n const externalGrammarInclude = reference.kind === 4 /* TopLevelRepositoryReference */ ? reference.ruleName : null;\n const externalGrammar = helper.getExternalGrammar(externalGrammarName, repository);\n if (externalGrammar) {\n if (externalGrammarInclude) {\n let externalIncludedRule = externalGrammar.repository[externalGrammarInclude];\n if (externalIncludedRule) {\n ruleId = _RuleFactory.getCompiledRuleId(externalIncludedRule, helper, externalGrammar.repository);\n } else {\n }\n } else {\n ruleId = _RuleFactory.getCompiledRuleId(externalGrammar.repository.$self, helper, externalGrammar.repository);\n }\n } else {\n }\n break;\n }\n } else {\n ruleId = _RuleFactory.getCompiledRuleId(pattern, helper, repository);\n }\n if (ruleId !== -1) {\n const rule = helper.getRule(ruleId);\n let skipRule = false;\n if (rule instanceof IncludeOnlyRule || rule instanceof BeginEndRule || rule instanceof BeginWhileRule) {\n if (rule.hasMissingPatterns && rule.patterns.length === 0) {\n skipRule = true;\n }\n }\n if (skipRule) {\n continue;\n }\n r.push(ruleId);\n }\n }\n }\n return {\n patterns: r,\n hasMissingPatterns: (patterns ? patterns.length : 0) !== r.length\n };\n }\n};\nvar RegExpSource = class _RegExpSource {\n constructor(regExpSource, ruleId) {\n if (regExpSource) {\n const len = regExpSource.length;\n let lastPushedPos = 0;\n let output = [];\n let hasAnchor = false;\n for (let pos = 0; pos < len; pos++) {\n const ch = regExpSource.charAt(pos);\n if (ch === \"\\\\\") {\n if (pos + 1 < len) {\n const nextCh = regExpSource.charAt(pos + 1);\n if (nextCh === \"z\") {\n output.push(regExpSource.substring(lastPushedPos, pos));\n output.push(\"$(?!\\\\n)(?<!\\\\n)\");\n lastPushedPos = pos + 2;\n } else if (nextCh === \"A\" || nextCh === \"G\") {\n hasAnchor = true;\n }\n pos++;\n }\n }\n }\n this.hasAnchor = hasAnchor;\n if (lastPushedPos === 0) {\n this.source = regExpSource;\n } else {\n output.push(regExpSource.substring(lastPushedPos, len));\n this.source = output.join(\"\");\n }\n } else {\n this.hasAnchor = false;\n this.source = regExpSource;\n }\n if (this.hasAnchor) {\n this._anchorCache = this._buildAnchorCache();\n } else {\n this._anchorCache = null;\n }\n this.ruleId = ruleId;\n this.hasBackReferences = HAS_BACK_REFERENCES.test(this.source);\n }\n clone() {\n return new _RegExpSource(this.source, this.ruleId);\n }\n setSource(newSource) {\n if (this.source === newSource) {\n return;\n }\n this.source = newSource;\n if (this.hasAnchor) {\n this._anchorCache = this._buildAnchorCache();\n }\n }\n resolveBackReferences(lineText, captureIndices) {\n let capturedValues = captureIndices.map((capture) => {\n return lineText.substring(capture.start, capture.end);\n });\n BACK_REFERENCING_END.lastIndex = 0;\n return this.source.replace(BACK_REFERENCING_END, (match, g1) => {\n return escapeRegExpCharacters(capturedValues[parseInt(g1, 10)] || \"\");\n });\n }\n _buildAnchorCache() {\n let A0_G0_result = [];\n let A0_G1_result = [];\n let A1_G0_result = [];\n let A1_G1_result = [];\n let pos, len, ch, nextCh;\n for (pos = 0, len = this.source.length; pos < len; pos++) {\n ch = this.source.charAt(pos);\n A0_G0_result[pos] = ch;\n A0_G1_result[pos] = ch;\n A1_G0_result[pos] = ch;\n A1_G1_result[pos] = ch;\n if (ch === \"\\\\\") {\n if (pos + 1 < len) {\n nextCh = this.source.charAt(pos + 1);\n if (nextCh === \"A\") {\n A0_G0_result[pos + 1] = \"\\uFFFF\";\n A0_G1_result[pos + 1] = \"\\uFFFF\";\n A1_G0_result[pos + 1] = \"A\";\n A1_G1_result[pos + 1] = \"A\";\n } else if (nextCh === \"G\") {\n A0_G0_result[pos + 1] = \"\\uFFFF\";\n A0_G1_result[pos + 1] = \"G\";\n A1_G0_result[pos + 1] = \"\\uFFFF\";\n A1_G1_result[pos + 1] = \"G\";\n } else {\n A0_G0_result[pos + 1] = nextCh;\n A0_G1_result[pos + 1] = nextCh;\n A1_G0_result[pos + 1] = nextCh;\n A1_G1_result[pos + 1] = nextCh;\n }\n pos++;\n }\n }\n }\n return {\n A0_G0: A0_G0_result.join(\"\"),\n A0_G1: A0_G1_result.join(\"\"),\n A1_G0: A1_G0_result.join(\"\"),\n A1_G1: A1_G1_result.join(\"\")\n };\n }\n resolveAnchors(allowA, allowG) {\n if (!this.hasAnchor || !this._anchorCache) {\n return this.source;\n }\n if (allowA) {\n if (allowG) {\n return this._anchorCache.A1_G1;\n } else {\n return this._anchorCache.A1_G0;\n }\n } else {\n if (allowG) {\n return this._anchorCache.A0_G1;\n } else {\n return this._anchorCache.A0_G0;\n }\n }\n }\n};\nvar RegExpSourceList = class {\n constructor() {\n this._items = [];\n this._hasAnchors = false;\n this._cached = null;\n this._anchorCache = {\n A0_G0: null,\n A0_G1: null,\n A1_G0: null,\n A1_G1: null\n };\n }\n dispose() {\n this._disposeCaches();\n }\n _disposeCaches() {\n if (this._cached) {\n this._cached.dispose();\n this._cached = null;\n }\n if (this._anchorCache.A0_G0) {\n this._anchorCache.A0_G0.dispose();\n this._anchorCache.A0_G0 = null;\n }\n if (this._anchorCache.A0_G1) {\n this._anchorCache.A0_G1.dispose();\n this._anchorCache.A0_G1 = null;\n }\n if (this._anchorCache.A1_G0) {\n this._anchorCache.A1_G0.dispose();\n this._anchorCache.A1_G0 = null;\n }\n if (this._anchorCache.A1_G1) {\n this._anchorCache.A1_G1.dispose();\n this._anchorCache.A1_G1 = null;\n }\n }\n push(item) {\n this._items.push(item);\n this._hasAnchors = this._hasAnchors || item.hasAnchor;\n }\n unshift(item) {\n this._items.unshift(item);\n this._hasAnchors = this._hasAnchors || item.hasAnchor;\n }\n length() {\n return this._items.length;\n }\n setSource(index, newSource) {\n if (this._items[index].source !== newSource) {\n this._disposeCaches();\n this._items[index].setSource(newSource);\n }\n }\n compile(onigLib) {\n if (!this._cached) {\n let regExps = this._items.map((e) => e.source);\n this._cached = new CompiledRule(onigLib, regExps, this._items.map((e) => e.ruleId));\n }\n return this._cached;\n }\n compileAG(onigLib, allowA, allowG) {\n if (!this._hasAnchors) {\n return this.compile(onigLib);\n } else {\n if (allowA) {\n if (allowG) {\n if (!this._anchorCache.A1_G1) {\n this._anchorCache.A1_G1 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A1_G1;\n } else {\n if (!this._anchorCache.A1_G0) {\n this._anchorCache.A1_G0 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A1_G0;\n }\n } else {\n if (allowG) {\n if (!this._anchorCache.A0_G1) {\n this._anchorCache.A0_G1 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A0_G1;\n } else {\n if (!this._anchorCache.A0_G0) {\n this._anchorCache.A0_G0 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A0_G0;\n }\n }\n }\n }\n _resolveAnchors(onigLib, allowA, allowG) {\n let regExps = this._items.map((e) => e.resolveAnchors(allowA, allowG));\n return new CompiledRule(onigLib, regExps, this._items.map((e) => e.ruleId));\n }\n};\nvar CompiledRule = class {\n constructor(onigLib, regExps, rules) {\n this.regExps = regExps;\n this.rules = rules;\n this.scanner = onigLib.createOnigScanner(regExps);\n }\n dispose() {\n if (typeof this.scanner.dispose === \"function\") {\n this.scanner.dispose();\n }\n }\n toString() {\n const r = [];\n for (let i = 0, len = this.rules.length; i < len; i++) {\n r.push(\" - \" + this.rules[i] + \": \" + this.regExps[i]);\n }\n return r.join(\"\\n\");\n }\n findNextMatchSync(string, startPosition, options) {\n const result = this.scanner.findNextMatchSync(string, startPosition, options);\n if (!result) {\n return null;\n }\n return {\n ruleId: this.rules[result.index],\n captureIndices: result.captureIndices\n };\n }\n};\n\n// src/grammar/basicScopesAttributeProvider.ts\nvar BasicScopeAttributes = class {\n constructor(languageId, tokenType) {\n this.languageId = languageId;\n this.tokenType = tokenType;\n }\n};\nvar _BasicScopeAttributesProvider = class _BasicScopeAttributesProvider {\n constructor(initialLanguageId, embeddedLanguages) {\n this._getBasicScopeAttributes = new CachedFn((scopeName) => {\n const languageId = this._scopeToLanguage(scopeName);\n const standardTokenType = this._toStandardTokenType(scopeName);\n return new BasicScopeAttributes(languageId, standardTokenType);\n });\n this._defaultAttributes = new BasicScopeAttributes(initialLanguageId, 8 /* NotSet */);\n this._embeddedLanguagesMatcher = new ScopeMatcher(Object.entries(embeddedLanguages || {}));\n }\n getDefaultAttributes() {\n return this._defaultAttributes;\n }\n getBasicScopeAttributes(scopeName) {\n if (scopeName === null) {\n return _BasicScopeAttributesProvider._NULL_SCOPE_METADATA;\n }\n return this._getBasicScopeAttributes.get(scopeName);\n }\n /**\n * Given a produced TM scope, return the language that token describes or null if unknown.\n * e.g. source.html => html, source.css.embedded.html => css, punctuation.definition.tag.html => null\n */\n _scopeToLanguage(scope) {\n return this._embeddedLanguagesMatcher.match(scope) || 0;\n }\n _toStandardTokenType(scopeName) {\n const m = scopeName.match(_BasicScopeAttributesProvider.STANDARD_TOKEN_TYPE_REGEXP);\n if (!m) {\n return 8 /* NotSet */;\n }\n switch (m[1]) {\n case \"comment\":\n return 1 /* Comment */;\n case \"string\":\n return 2 /* String */;\n case \"regex\":\n return 3 /* RegEx */;\n case \"meta.embedded\":\n return 0 /* Other */;\n }\n throw new Error(\"Unexpected match for standard token type!\");\n }\n};\n_BasicScopeAttributesProvider._NULL_SCOPE_METADATA = new BasicScopeAttributes(0, 0);\n_BasicScopeAttributesProvider.STANDARD_TOKEN_TYPE_REGEXP = /\\b(comment|string|regex|meta\\.embedded)\\b/;\nvar BasicScopeAttributesProvider = _BasicScopeAttributesProvider;\nvar ScopeMatcher = class {\n constructor(values) {\n if (values.length === 0) {\n this.values = null;\n this.scopesRegExp = null;\n } else {\n this.values = new Map(values);\n const escapedScopes = values.map(\n ([scopeName, value]) => escapeRegExpCharacters(scopeName)\n );\n escapedScopes.sort();\n escapedScopes.reverse();\n this.scopesRegExp = new RegExp(\n `^((${escapedScopes.join(\")|(\")}))($|\\\\.)`,\n \"\"\n );\n }\n }\n match(scope) {\n if (!this.scopesRegExp) {\n return void 0;\n }\n const m = scope.match(this.scopesRegExp);\n if (!m) {\n return void 0;\n }\n return this.values.get(m[1]);\n }\n};\n\n// src/debug.ts\nvar DebugFlags = {\n InDebugMode: typeof process !== \"undefined\" && !!process.env[\"VSCODE_TEXTMATE_DEBUG\"]\n};\nvar UseOnigurumaFindOptions = false;\n\n// src/grammar/tokenizeString.ts\nvar TokenizeStringResult = class {\n constructor(stack, stoppedEarly) {\n this.stack = stack;\n this.stoppedEarly = stoppedEarly;\n }\n};\nfunction _tokenizeString(grammar, lineText, isFirstLine, linePos, stack, lineTokens, checkWhileConditions, timeLimit) {\n const lineLength = lineText.content.length;\n let STOP = false;\n let anchorPosition = -1;\n if (checkWhileConditions) {\n const whileCheckResult = _checkWhileConditions(\n grammar,\n lineText,\n isFirstLine,\n linePos,\n stack,\n lineTokens\n );\n stack = whileCheckResult.stack;\n linePos = whileCheckResult.linePos;\n isFirstLine = whileCheckResult.isFirstLine;\n anchorPosition = whileCheckResult.anchorPosition;\n }\n const startTime = Date.now();\n while (!STOP) {\n if (timeLimit !== 0) {\n const elapsedTime = Date.now() - startTime;\n if (elapsedTime > timeLimit) {\n return new TokenizeStringResult(stack, true);\n }\n }\n scanNext();\n }\n return new TokenizeStringResult(stack, false);\n function scanNext() {\n if (false) {\n console.log(\"\");\n console.log(\n `@@scanNext ${linePos}: |${lineText.content.substr(linePos).replace(/\\n$/, \"\\\\n\")}|`\n );\n }\n const r = matchRuleOrInjections(\n grammar,\n lineText,\n isFirstLine,\n linePos,\n stack,\n anchorPosition\n );\n if (!r) {\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n const captureIndices = r.captureIndices;\n const matchedRuleId = r.matchedRuleId;\n const hasAdvanced = captureIndices && captureIndices.length > 0 ? captureIndices[0].end > linePos : false;\n if (matchedRuleId === endRuleId) {\n const poppedRule = stack.getRule(grammar);\n if (false) {\n console.log(\n \" popping \" + poppedRule.debugName + \" - \" + poppedRule.debugEndRegExp\n );\n }\n lineTokens.produce(stack, captureIndices[0].start);\n stack = stack.withContentNameScopesList(stack.nameScopesList);\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n poppedRule.endCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n const popped = stack;\n stack = stack.parent;\n anchorPosition = popped.getAnchorPos();\n if (!hasAdvanced && popped.getEnterPos() === linePos) {\n if (false) {\n console.error(\n \"[1] - Grammar is in an endless loop - Grammar pushed & popped a rule without advancing\"\n );\n }\n stack = popped;\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else {\n const _rule = grammar.getRule(matchedRuleId);\n lineTokens.produce(stack, captureIndices[0].start);\n const beforePush = stack;\n const scopeName = _rule.getName(lineText.content, captureIndices);\n const nameScopesList = stack.contentNameScopesList.pushAttributed(\n scopeName,\n grammar\n );\n stack = stack.push(\n matchedRuleId,\n linePos,\n anchorPosition,\n captureIndices[0].end === lineLength,\n null,\n nameScopesList,\n nameScopesList\n );\n if (_rule instanceof BeginEndRule) {\n const pushedRule = _rule;\n if (false) {\n console.log(\n \" pushing \" + pushedRule.debugName + \" - \" + pushedRule.debugBeginRegExp\n );\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n pushedRule.beginCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n anchorPosition = captureIndices[0].end;\n const contentName = pushedRule.getContentName(\n lineText.content,\n captureIndices\n );\n const contentNameScopesList = nameScopesList.pushAttributed(\n contentName,\n grammar\n );\n stack = stack.withContentNameScopesList(contentNameScopesList);\n if (pushedRule.endHasBackReferences) {\n stack = stack.withEndRule(\n pushedRule.getEndWithResolvedBackReferences(\n lineText.content,\n captureIndices\n )\n );\n }\n if (!hasAdvanced && beforePush.hasSameRuleAs(stack)) {\n if (false) {\n console.error(\n \"[2] - Grammar is in an endless loop - Grammar pushed the same rule without advancing\"\n );\n }\n stack = stack.pop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else if (_rule instanceof BeginWhileRule) {\n const pushedRule = _rule;\n if (false) {\n console.log(\" pushing \" + pushedRule.debugName);\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n pushedRule.beginCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n anchorPosition = captureIndices[0].end;\n const contentName = pushedRule.getContentName(\n lineText.content,\n captureIndices\n );\n const contentNameScopesList = nameScopesList.pushAttributed(\n contentName,\n grammar\n );\n stack = stack.withContentNameScopesList(contentNameScopesList);\n if (pushedRule.whileHasBackReferences) {\n stack = stack.withEndRule(\n pushedRule.getWhileWithResolvedBackReferences(\n lineText.content,\n captureIndices\n )\n );\n }\n if (!hasAdvanced && beforePush.hasSameRuleAs(stack)) {\n if (false) {\n console.error(\n \"[3] - Grammar is in an endless loop - Grammar pushed the same rule without advancing\"\n );\n }\n stack = stack.pop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else {\n const matchingRule = _rule;\n if (false) {\n console.log(\n \" matched \" + matchingRule.debugName + \" - \" + matchingRule.debugMatchRegExp\n );\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n matchingRule.captures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n stack = stack.pop();\n if (!hasAdvanced) {\n if (false) {\n console.error(\n \"[4] - Grammar is in an endless loop - Grammar is not advancing, nor is it pushing/popping\"\n );\n }\n stack = stack.safePop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n }\n }\n if (captureIndices[0].end > linePos) {\n linePos = captureIndices[0].end;\n isFirstLine = false;\n }\n }\n}\nfunction _checkWhileConditions(grammar, lineText, isFirstLine, linePos, stack, lineTokens) {\n let anchorPosition = stack.beginRuleCapturedEOL ? 0 : -1;\n const whileRules = [];\n for (let node = stack; node; node = node.pop()) {\n const nodeRule = node.getRule(grammar);\n if (nodeRule instanceof BeginWhileRule) {\n whileRules.push({\n rule: nodeRule,\n stack: node\n });\n }\n }\n for (let whileRule = whileRules.pop(); whileRule; whileRule = whileRules.pop()) {\n const { ruleScanner, findOptions } = prepareRuleWhileSearch(whileRule.rule, grammar, whileRule.stack.endRule, isFirstLine, linePos === anchorPosition);\n const r = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (false) {\n console.log(\" scanning for while rule\");\n console.log(ruleScanner.toString());\n }\n if (r) {\n const matchedRuleId = r.ruleId;\n if (matchedRuleId !== whileRuleId) {\n stack = whileRule.stack.pop();\n break;\n }\n if (r.captureIndices && r.captureIndices.length) {\n lineTokens.produce(whileRule.stack, r.captureIndices[0].start);\n handleCaptures(grammar, lineText, isFirstLine, whileRule.stack, lineTokens, whileRule.rule.whileCaptures, r.captureIndices);\n lineTokens.produce(whileRule.stack, r.captureIndices[0].end);\n anchorPosition = r.captureIndices[0].end;\n if (r.captureIndices[0].end > linePos) {\n linePos = r.captureIndices[0].end;\n isFirstLine = false;\n }\n }\n } else {\n if (false) {\n console.log(\" popping \" + whileRule.rule.debugName + \" - \" + whileRule.rule.debugWhileRegExp);\n }\n stack = whileRule.stack.pop();\n break;\n }\n }\n return { stack, linePos, anchorPosition, isFirstLine };\n}\nfunction matchRuleOrInjections(grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n const matchResult = matchRule(grammar, lineText, isFirstLine, linePos, stack, anchorPosition);\n const injections = grammar.getInjections();\n if (injections.length === 0) {\n return matchResult;\n }\n const injectionResult = matchInjections(injections, grammar, lineText, isFirstLine, linePos, stack, anchorPosition);\n if (!injectionResult) {\n return matchResult;\n }\n if (!matchResult) {\n return injectionResult;\n }\n const matchResultScore = matchResult.captureIndices[0].start;\n const injectionResultScore = injectionResult.captureIndices[0].start;\n if (injectionResultScore < matchResultScore || injectionResult.priorityMatch && injectionResultScore === matchResultScore) {\n return injectionResult;\n }\n return matchResult;\n}\nfunction matchRule(grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n const rule = stack.getRule(grammar);\n const { ruleScanner, findOptions } = prepareRuleSearch(rule, grammar, stack.endRule, isFirstLine, linePos === anchorPosition);\n const r = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (r) {\n return {\n captureIndices: r.captureIndices,\n matchedRuleId: r.ruleId\n };\n }\n return null;\n}\nfunction matchInjections(injections, grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n let bestMatchRating = Number.MAX_VALUE;\n let bestMatchCaptureIndices = null;\n let bestMatchRuleId;\n let bestMatchResultPriority = 0;\n const scopes = stack.contentNameScopesList.getScopeNames();\n for (let i = 0, len = injections.length; i < len; i++) {\n const injection = injections[i];\n if (!injection.matcher(scopes)) {\n continue;\n }\n const rule = grammar.getRule(injection.ruleId);\n const { ruleScanner, findOptions } = prepareRuleSearch(rule, grammar, null, isFirstLine, linePos === anchorPosition);\n const matchResult = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (!matchResult) {\n continue;\n }\n if (false) {\n console.log(` matched injection: ${injection.debugSelector}`);\n console.log(ruleScanner.toString());\n }\n const matchRating = matchResult.captureIndices[0].start;\n if (matchRating >= bestMatchRating) {\n continue;\n }\n bestMatchRating = matchRating;\n bestMatchCaptureIndices = matchResult.captureIndices;\n bestMatchRuleId = matchResult.ruleId;\n bestMatchResultPriority = injection.priority;\n if (bestMatchRating === linePos) {\n break;\n }\n }\n if (bestMatchCaptureIndices) {\n return {\n priorityMatch: bestMatchResultPriority === -1,\n captureIndices: bestMatchCaptureIndices,\n matchedRuleId: bestMatchRuleId\n };\n }\n return null;\n}\nfunction prepareRuleSearch(rule, grammar, endRegexSource, allowA, allowG) {\n if (UseOnigurumaFindOptions) {\n const ruleScanner2 = rule.compile(grammar, endRegexSource);\n const findOptions = getFindOptions(allowA, allowG);\n return { ruleScanner: ruleScanner2, findOptions };\n }\n const ruleScanner = rule.compileAG(grammar, endRegexSource, allowA, allowG);\n return { ruleScanner, findOptions: 0 /* None */ };\n}\nfunction prepareRuleWhileSearch(rule, grammar, endRegexSource, allowA, allowG) {\n if (UseOnigurumaFindOptions) {\n const ruleScanner2 = rule.compileWhile(grammar, endRegexSource);\n const findOptions = getFindOptions(allowA, allowG);\n return { ruleScanner: ruleScanner2, findOptions };\n }\n const ruleScanner = rule.compileWhileAG(grammar, endRegexSource, allowA, allowG);\n return { ruleScanner, findOptions: 0 /* None */ };\n}\nfunction getFindOptions(allowA, allowG) {\n let options = 0 /* None */;\n if (!allowA) {\n options |= 1 /* NotBeginString */;\n }\n if (!allowG) {\n options |= 4 /* NotBeginPosition */;\n }\n return options;\n}\nfunction handleCaptures(grammar, lineText, isFirstLine, stack, lineTokens, captures, captureIndices) {\n if (captures.length === 0) {\n return;\n }\n const lineTextContent = lineText.content;\n const len = Math.min(captures.length, captureIndices.length);\n const localStack = [];\n const maxEnd = captureIndices[0].end;\n for (let i = 0; i < len; i++) {\n const captureRule = captures[i];\n if (captureRule === null) {\n continue;\n }\n const captureIndex = captureIndices[i];\n if (captureIndex.length === 0) {\n continue;\n }\n if (captureIndex.start > maxEnd) {\n break;\n }\n while (localStack.length > 0 && localStack[localStack.length - 1].endPos <= captureIndex.start) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, localStack[localStack.length - 1].endPos);\n localStack.pop();\n }\n if (localStack.length > 0) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, captureIndex.start);\n } else {\n lineTokens.produce(stack, captureIndex.start);\n }\n if (captureRule.retokenizeCapturedWithRuleId) {\n const scopeName = captureRule.getName(lineTextContent, captureIndices);\n const nameScopesList = stack.contentNameScopesList.pushAttributed(scopeName, grammar);\n const contentName = captureRule.getContentName(lineTextContent, captureIndices);\n const contentNameScopesList = nameScopesList.pushAttributed(contentName, grammar);\n const stackClone = stack.push(captureRule.retokenizeCapturedWithRuleId, captureIndex.start, -1, false, null, nameScopesList, contentNameScopesList);\n const onigSubStr = grammar.createOnigString(lineTextContent.substring(0, captureIndex.end));\n _tokenizeString(\n grammar,\n onigSubStr,\n isFirstLine && captureIndex.start === 0,\n captureIndex.start,\n stackClone,\n lineTokens,\n false,\n /* no time limit */\n 0\n );\n disposeOnigString(onigSubStr);\n continue;\n }\n const captureRuleScopeName = captureRule.getName(lineTextContent, captureIndices);\n if (captureRuleScopeName !== null) {\n const base = localStack.length > 0 ? localStack[localStack.length - 1].scopes : stack.contentNameScopesList;\n const captureRuleScopesList = base.pushAttributed(captureRuleScopeName, grammar);\n localStack.push(new LocalStackElement(captureRuleScopesList, captureIndex.end));\n }\n }\n while (localStack.length > 0) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, localStack[localStack.length - 1].endPos);\n localStack.pop();\n }\n}\nvar LocalStackElement = class {\n constructor(scopes, endPos) {\n this.scopes = scopes;\n this.endPos = endPos;\n }\n};\n\n// src/grammar/grammar.ts\nfunction createGrammar(scopeName, grammar, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors, grammarRepository, onigLib) {\n return new Grammar(\n scopeName,\n grammar,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors,\n grammarRepository,\n onigLib\n );\n}\nfunction collectInjections(result, selector, rule, ruleFactoryHelper, grammar) {\n const matchers = createMatchers(selector, nameMatcher);\n const ruleId = RuleFactory.getCompiledRuleId(rule, ruleFactoryHelper, grammar.repository);\n for (const matcher of matchers) {\n result.push({\n debugSelector: selector,\n matcher: matcher.matcher,\n ruleId,\n grammar,\n priority: matcher.priority\n });\n }\n}\nfunction nameMatcher(identifers, scopes) {\n if (scopes.length < identifers.length) {\n return false;\n }\n let lastIndex = 0;\n return identifers.every((identifier) => {\n for (let i = lastIndex; i < scopes.length; i++) {\n if (scopesAreMatching(scopes[i], identifier)) {\n lastIndex = i + 1;\n return true;\n }\n }\n return false;\n });\n}\nfunction scopesAreMatching(thisScopeName, scopeName) {\n if (!thisScopeName) {\n return false;\n }\n if (thisScopeName === scopeName) {\n return true;\n }\n const len = scopeName.length;\n return thisScopeName.length > len && thisScopeName.substr(0, len) === scopeName && thisScopeName[len] === \".\";\n}\nvar Grammar = class {\n constructor(_rootScopeName, grammar, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors, grammarRepository, _onigLib) {\n this._rootScopeName = _rootScopeName;\n this.balancedBracketSelectors = balancedBracketSelectors;\n this._onigLib = _onigLib;\n this._basicScopeAttributesProvider = new BasicScopeAttributesProvider(\n initialLanguage,\n embeddedLanguages\n );\n this._rootId = -1;\n this._lastRuleId = 0;\n this._ruleId2desc = [null];\n this._includedGrammars = {};\n this._grammarRepository = grammarRepository;\n this._grammar = initGrammar(grammar, null);\n this._injections = null;\n this._tokenTypeMatchers = [];\n if (tokenTypes) {\n for (const selector of Object.keys(tokenTypes)) {\n const matchers = createMatchers(selector, nameMatcher);\n for (const matcher of matchers) {\n this._tokenTypeMatchers.push({\n matcher: matcher.matcher,\n type: tokenTypes[selector]\n });\n }\n }\n }\n }\n get themeProvider() {\n return this._grammarRepository;\n }\n dispose() {\n for (const rule of this._ruleId2desc) {\n if (rule) {\n rule.dispose();\n }\n }\n }\n createOnigScanner(sources) {\n return this._onigLib.createOnigScanner(sources);\n }\n createOnigString(sources) {\n return this._onigLib.createOnigString(sources);\n }\n getMetadataForScope(scope) {\n return this._basicScopeAttributesProvider.getBasicScopeAttributes(scope);\n }\n _collectInjections() {\n const grammarRepository = {\n lookup: (scopeName2) => {\n if (scopeName2 === this._rootScopeName) {\n return this._grammar;\n }\n return this.getExternalGrammar(scopeName2);\n },\n injections: (scopeName2) => {\n return this._grammarRepository.injections(scopeName2);\n }\n };\n const result = [];\n const scopeName = this._rootScopeName;\n const grammar = grammarRepository.lookup(scopeName);\n if (grammar) {\n const rawInjections = grammar.injections;\n if (rawInjections) {\n for (let expression in rawInjections) {\n collectInjections(\n result,\n expression,\n rawInjections[expression],\n this,\n grammar\n );\n }\n }\n const injectionScopeNames = this._grammarRepository.injections(scopeName);\n if (injectionScopeNames) {\n injectionScopeNames.forEach((injectionScopeName) => {\n const injectionGrammar = this.getExternalGrammar(injectionScopeName);\n if (injectionGrammar) {\n const selector = injectionGrammar.injectionSelector;\n if (selector) {\n collectInjections(\n result,\n selector,\n injectionGrammar,\n this,\n injectionGrammar\n );\n }\n }\n });\n }\n }\n result.sort((i1, i2) => i1.priority - i2.priority);\n return result;\n }\n getInjections() {\n if (this._injections === null) {\n this._injections = this._collectInjections();\n }\n return this._injections;\n }\n registerRule(factory) {\n const id = ++this._lastRuleId;\n const result = factory(ruleIdFromNumber(id));\n this._ruleId2desc[id] = result;\n return result;\n }\n getRule(ruleId) {\n return this._ruleId2desc[ruleIdToNumber(ruleId)];\n }\n getExternalGrammar(scopeName, repository) {\n if (this._includedGrammars[scopeName]) {\n return this._includedGrammars[scopeName];\n } else if (this._grammarRepository) {\n const rawIncludedGrammar = this._grammarRepository.lookup(scopeName);\n if (rawIncludedGrammar) {\n this._includedGrammars[scopeName] = initGrammar(\n rawIncludedGrammar,\n repository && repository.$base\n );\n return this._includedGrammars[scopeName];\n }\n }\n return void 0;\n }\n tokenizeLine(lineText, prevState, timeLimit = 0) {\n const r = this._tokenize(lineText, prevState, false, timeLimit);\n return {\n tokens: r.lineTokens.getResult(r.ruleStack, r.lineLength),\n ruleStack: r.ruleStack,\n stoppedEarly: r.stoppedEarly\n };\n }\n tokenizeLine2(lineText, prevState, timeLimit = 0) {\n const r = this._tokenize(lineText, prevState, true, timeLimit);\n return {\n tokens: r.lineTokens.getBinaryResult(r.ruleStack, r.lineLength),\n ruleStack: r.ruleStack,\n stoppedEarly: r.stoppedEarly\n };\n }\n _tokenize(lineText, prevState, emitBinaryTokens, timeLimit) {\n if (this._rootId === -1) {\n this._rootId = RuleFactory.getCompiledRuleId(\n this._grammar.repository.$self,\n this,\n this._grammar.repository\n );\n this.getInjections();\n }\n let isFirstLine;\n if (!prevState || prevState === StateStackImpl.NULL) {\n isFirstLine = true;\n const rawDefaultMetadata = this._basicScopeAttributesProvider.getDefaultAttributes();\n const defaultStyle = this.themeProvider.getDefaults();\n const defaultMetadata = EncodedTokenMetadata.set(\n 0,\n rawDefaultMetadata.languageId,\n rawDefaultMetadata.tokenType,\n null,\n defaultStyle.fontStyle,\n defaultStyle.foregroundId,\n defaultStyle.backgroundId\n );\n const rootScopeName = this.getRule(this._rootId).getName(\n null,\n null\n );\n let scopeList;\n if (rootScopeName) {\n scopeList = AttributedScopeStack.createRootAndLookUpScopeName(\n rootScopeName,\n defaultMetadata,\n this\n );\n } else {\n scopeList = AttributedScopeStack.createRoot(\n \"unknown\",\n defaultMetadata\n );\n }\n prevState = new StateStackImpl(\n null,\n this._rootId,\n -1,\n -1,\n false,\n null,\n scopeList,\n scopeList\n );\n } else {\n isFirstLine = false;\n prevState.reset();\n }\n lineText = lineText + \"\\n\";\n const onigLineText = this.createOnigString(lineText);\n const lineLength = onigLineText.content.length;\n const lineTokens = new LineTokens(\n emitBinaryTokens,\n lineText,\n this._tokenTypeMatchers,\n this.balancedBracketSelectors\n );\n const r = _tokenizeString(\n this,\n onigLineText,\n isFirstLine,\n 0,\n prevState,\n lineTokens,\n true,\n timeLimit\n );\n disposeOnigString(onigLineText);\n return {\n lineLength,\n lineTokens,\n ruleStack: r.stack,\n stoppedEarly: r.stoppedEarly\n };\n }\n};\nfunction initGrammar(grammar, base) {\n grammar = clone(grammar);\n grammar.repository = grammar.repository || {};\n grammar.repository.$self = {\n $vscodeTextmateLocation: grammar.$vscodeTextmateLocation,\n patterns: grammar.patterns,\n name: grammar.scopeName\n };\n grammar.repository.$base = base || grammar.repository.$self;\n return grammar;\n}\nvar AttributedScopeStack = class _AttributedScopeStack {\n /**\n * Invariant:\n * ```\n * if (parent && !scopePath.extends(parent.scopePath)) {\n * \tthrow new Error();\n * }\n * ```\n */\n constructor(parent, scopePath, tokenAttributes) {\n this.parent = parent;\n this.scopePath = scopePath;\n this.tokenAttributes = tokenAttributes;\n }\n static fromExtension(namesScopeList, contentNameScopesList) {\n let current = namesScopeList;\n let scopeNames = namesScopeList?.scopePath ?? null;\n for (const frame of contentNameScopesList) {\n scopeNames = ScopeStack.push(scopeNames, frame.scopeNames);\n current = new _AttributedScopeStack(current, scopeNames, frame.encodedTokenAttributes);\n }\n return current;\n }\n static createRoot(scopeName, tokenAttributes) {\n return new _AttributedScopeStack(null, new ScopeStack(null, scopeName), tokenAttributes);\n }\n static createRootAndLookUpScopeName(scopeName, tokenAttributes, grammar) {\n const rawRootMetadata = grammar.getMetadataForScope(scopeName);\n const scopePath = new ScopeStack(null, scopeName);\n const rootStyle = grammar.themeProvider.themeMatch(scopePath);\n const resolvedTokenAttributes = _AttributedScopeStack.mergeAttributes(\n tokenAttributes,\n rawRootMetadata,\n rootStyle\n );\n return new _AttributedScopeStack(null, scopePath, resolvedTokenAttributes);\n }\n get scopeName() {\n return this.scopePath.scopeName;\n }\n toString() {\n return this.getScopeNames().join(\" \");\n }\n equals(other) {\n return _AttributedScopeStack.equals(this, other);\n }\n static equals(a, b) {\n do {\n if (a === b) {\n return true;\n }\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.scopeName !== b.scopeName || a.tokenAttributes !== b.tokenAttributes) {\n return false;\n }\n a = a.parent;\n b = b.parent;\n } while (true);\n }\n static mergeAttributes(existingTokenAttributes, basicScopeAttributes, styleAttributes) {\n let fontStyle = -1 /* NotSet */;\n let foreground = 0;\n let background = 0;\n if (styleAttributes !== null) {\n fontStyle = styleAttributes.fontStyle;\n foreground = styleAttributes.foregroundId;\n background = styleAttributes.backgroundId;\n }\n return EncodedTokenMetadata.set(\n existingTokenAttributes,\n basicScopeAttributes.languageId,\n basicScopeAttributes.tokenType,\n null,\n fontStyle,\n foreground,\n background\n );\n }\n pushAttributed(scopePath, grammar) {\n if (scopePath === null) {\n return this;\n }\n if (scopePath.indexOf(\" \") === -1) {\n return _AttributedScopeStack._pushAttributed(this, scopePath, grammar);\n }\n const scopes = scopePath.split(/ /g);\n let result = this;\n for (const scope of scopes) {\n result = _AttributedScopeStack._pushAttributed(result, scope, grammar);\n }\n return result;\n }\n static _pushAttributed(target, scopeName, grammar) {\n const rawMetadata = grammar.getMetadataForScope(scopeName);\n const newPath = target.scopePath.push(scopeName);\n const scopeThemeMatchResult = grammar.themeProvider.themeMatch(newPath);\n const metadata = _AttributedScopeStack.mergeAttributes(\n target.tokenAttributes,\n rawMetadata,\n scopeThemeMatchResult\n );\n return new _AttributedScopeStack(target, newPath, metadata);\n }\n getScopeNames() {\n return this.scopePath.getSegments();\n }\n getExtensionIfDefined(base) {\n const result = [];\n let self = this;\n while (self && self !== base) {\n result.push({\n encodedTokenAttributes: self.tokenAttributes,\n scopeNames: self.scopePath.getExtensionIfDefined(self.parent?.scopePath ?? null)\n });\n self = self.parent;\n }\n return self === base ? result.reverse() : void 0;\n }\n};\nvar _StateStackImpl = class _StateStackImpl {\n /**\n * Invariant:\n * ```\n * if (contentNameScopesList !== nameScopesList && contentNameScopesList?.parent !== nameScopesList) {\n * \tthrow new Error();\n * }\n * if (this.parent && !nameScopesList.extends(this.parent.contentNameScopesList)) {\n * \tthrow new Error();\n * }\n * ```\n */\n constructor(parent, ruleId, enterPos, anchorPos, beginRuleCapturedEOL, endRule, nameScopesList, contentNameScopesList) {\n this.parent = parent;\n this.ruleId = ruleId;\n this.beginRuleCapturedEOL = beginRuleCapturedEOL;\n this.endRule = endRule;\n this.nameScopesList = nameScopesList;\n this.contentNameScopesList = contentNameScopesList;\n this._stackElementBrand = void 0;\n this.depth = this.parent ? this.parent.depth + 1 : 1;\n this._enterPos = enterPos;\n this._anchorPos = anchorPos;\n }\n equals(other) {\n if (other === null) {\n return false;\n }\n return _StateStackImpl._equals(this, other);\n }\n static _equals(a, b) {\n if (a === b) {\n return true;\n }\n if (!this._structuralEquals(a, b)) {\n return false;\n }\n return AttributedScopeStack.equals(a.contentNameScopesList, b.contentNameScopesList);\n }\n /**\n * A structural equals check. Does not take into account `scopes`.\n */\n static _structuralEquals(a, b) {\n do {\n if (a === b) {\n return true;\n }\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.depth !== b.depth || a.ruleId !== b.ruleId || a.endRule !== b.endRule) {\n return false;\n }\n a = a.parent;\n b = b.parent;\n } while (true);\n }\n clone() {\n return this;\n }\n static _reset(el) {\n while (el) {\n el._enterPos = -1;\n el._anchorPos = -1;\n el = el.parent;\n }\n }\n reset() {\n _StateStackImpl._reset(this);\n }\n pop() {\n return this.parent;\n }\n safePop() {\n if (this.parent) {\n return this.parent;\n }\n return this;\n }\n push(ruleId, enterPos, anchorPos, beginRuleCapturedEOL, endRule, nameScopesList, contentNameScopesList) {\n return new _StateStackImpl(\n this,\n ruleId,\n enterPos,\n anchorPos,\n beginRuleCapturedEOL,\n endRule,\n nameScopesList,\n contentNameScopesList\n );\n }\n getEnterPos() {\n return this._enterPos;\n }\n getAnchorPos() {\n return this._anchorPos;\n }\n getRule(grammar) {\n return grammar.getRule(this.ruleId);\n }\n toString() {\n const r = [];\n this._writeString(r, 0);\n return \"[\" + r.join(\",\") + \"]\";\n }\n _writeString(res, outIndex) {\n if (this.parent) {\n outIndex = this.parent._writeString(res, outIndex);\n }\n res[outIndex++] = `(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`;\n return outIndex;\n }\n withContentNameScopesList(contentNameScopeStack) {\n if (this.contentNameScopesList === contentNameScopeStack) {\n return this;\n }\n return this.parent.push(\n this.ruleId,\n this._enterPos,\n this._anchorPos,\n this.beginRuleCapturedEOL,\n this.endRule,\n this.nameScopesList,\n contentNameScopeStack\n );\n }\n withEndRule(endRule) {\n if (this.endRule === endRule) {\n return this;\n }\n return new _StateStackImpl(\n this.parent,\n this.ruleId,\n this._enterPos,\n this._anchorPos,\n this.beginRuleCapturedEOL,\n endRule,\n this.nameScopesList,\n this.contentNameScopesList\n );\n }\n // Used to warn of endless loops\n hasSameRuleAs(other) {\n let el = this;\n while (el && el._enterPos === other._enterPos) {\n if (el.ruleId === other.ruleId) {\n return true;\n }\n el = el.parent;\n }\n return false;\n }\n toStateStackFrame() {\n return {\n ruleId: ruleIdToNumber(this.ruleId),\n beginRuleCapturedEOL: this.beginRuleCapturedEOL,\n endRule: this.endRule,\n nameScopesList: this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList ?? null) ?? [],\n contentNameScopesList: this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList) ?? []\n };\n }\n static pushFrame(self, frame) {\n const namesScopeList = AttributedScopeStack.fromExtension(self?.nameScopesList ?? null, frame.nameScopesList);\n return new _StateStackImpl(\n self,\n ruleIdFromNumber(frame.ruleId),\n frame.enterPos ?? -1,\n frame.anchorPos ?? -1,\n frame.beginRuleCapturedEOL,\n frame.endRule,\n namesScopeList,\n AttributedScopeStack.fromExtension(namesScopeList, frame.contentNameScopesList)\n );\n }\n};\n// TODO remove me\n_StateStackImpl.NULL = new _StateStackImpl(\n null,\n 0,\n 0,\n 0,\n false,\n null,\n null,\n null\n);\nvar StateStackImpl = _StateStackImpl;\nvar BalancedBracketSelectors = class {\n constructor(balancedBracketScopes, unbalancedBracketScopes) {\n this.allowAny = false;\n this.balancedBracketScopes = balancedBracketScopes.flatMap(\n (selector) => {\n if (selector === \"*\") {\n this.allowAny = true;\n return [];\n }\n return createMatchers(selector, nameMatcher).map((m) => m.matcher);\n }\n );\n this.unbalancedBracketScopes = unbalancedBracketScopes.flatMap(\n (selector) => createMatchers(selector, nameMatcher).map((m) => m.matcher)\n );\n }\n get matchesAlways() {\n return this.allowAny && this.unbalancedBracketScopes.length === 0;\n }\n get matchesNever() {\n return this.balancedBracketScopes.length === 0 && !this.allowAny;\n }\n match(scopes) {\n for (const excluder of this.unbalancedBracketScopes) {\n if (excluder(scopes)) {\n return false;\n }\n }\n for (const includer of this.balancedBracketScopes) {\n if (includer(scopes)) {\n return true;\n }\n }\n return this.allowAny;\n }\n};\nvar LineTokens = class {\n constructor(emitBinaryTokens, lineText, tokenTypeOverrides, balancedBracketSelectors) {\n this.balancedBracketSelectors = balancedBracketSelectors;\n this._emitBinaryTokens = emitBinaryTokens;\n this._tokenTypeOverrides = tokenTypeOverrides;\n if (false) {\n this._lineText = lineText;\n } else {\n this._lineText = null;\n }\n this._tokens = [];\n this._binaryTokens = [];\n this._lastTokenEndIndex = 0;\n }\n produce(stack, endIndex) {\n this.produceFromScopes(stack.contentNameScopesList, endIndex);\n }\n produceFromScopes(scopesList, endIndex) {\n if (this._lastTokenEndIndex >= endIndex) {\n return;\n }\n if (this._emitBinaryTokens) {\n let metadata = scopesList?.tokenAttributes ?? 0;\n let containsBalancedBrackets = false;\n if (this.balancedBracketSelectors?.matchesAlways) {\n containsBalancedBrackets = true;\n }\n if (this._tokenTypeOverrides.length > 0 || this.balancedBracketSelectors && !this.balancedBracketSelectors.matchesAlways && !this.balancedBracketSelectors.matchesNever) {\n const scopes2 = scopesList?.getScopeNames() ?? [];\n for (const tokenType of this._tokenTypeOverrides) {\n if (tokenType.matcher(scopes2)) {\n metadata = EncodedTokenMetadata.set(\n metadata,\n 0,\n toOptionalTokenType(tokenType.type),\n null,\n -1 /* NotSet */,\n 0,\n 0\n );\n }\n }\n if (this.balancedBracketSelectors) {\n containsBalancedBrackets = this.balancedBracketSelectors.match(scopes2);\n }\n }\n if (containsBalancedBrackets) {\n metadata = EncodedTokenMetadata.set(\n metadata,\n 0,\n 8 /* NotSet */,\n containsBalancedBrackets,\n -1 /* NotSet */,\n 0,\n 0\n );\n }\n if (this._binaryTokens.length > 0 && this._binaryTokens[this._binaryTokens.length - 1] === metadata) {\n this._lastTokenEndIndex = endIndex;\n return;\n }\n this._binaryTokens.push(this._lastTokenEndIndex);\n this._binaryTokens.push(metadata);\n this._lastTokenEndIndex = endIndex;\n return;\n }\n const scopes = scopesList?.getScopeNames() ?? [];\n this._tokens.push({\n startIndex: this._lastTokenEndIndex,\n endIndex,\n // value: lineText.substring(lastTokenEndIndex, endIndex),\n scopes\n });\n this._lastTokenEndIndex = endIndex;\n }\n getResult(stack, lineLength) {\n if (this._tokens.length > 0 && this._tokens[this._tokens.length - 1].startIndex === lineLength - 1) {\n this._tokens.pop();\n }\n if (this._tokens.length === 0) {\n this._lastTokenEndIndex = -1;\n this.produce(stack, lineLength);\n this._tokens[this._tokens.length - 1].startIndex = 0;\n }\n return this._tokens;\n }\n getBinaryResult(stack, lineLength) {\n if (this._binaryTokens.length > 0 && this._binaryTokens[this._binaryTokens.length - 2] === lineLength - 1) {\n this._binaryTokens.pop();\n this._binaryTokens.pop();\n }\n if (this._binaryTokens.length === 0) {\n this._lastTokenEndIndex = -1;\n this.produce(stack, lineLength);\n this._binaryTokens[this._binaryTokens.length - 2] = 0;\n }\n const result = new Uint32Array(this._binaryTokens.length);\n for (let i = 0, len = this._binaryTokens.length; i < len; i++) {\n result[i] = this._binaryTokens[i];\n }\n return result;\n }\n};\n\n// src/registry.ts\nvar SyncRegistry = class {\n constructor(theme, _onigLib) {\n this._onigLib = _onigLib;\n this._grammars = /* @__PURE__ */ new Map();\n this._rawGrammars = /* @__PURE__ */ new Map();\n this._injectionGrammars = /* @__PURE__ */ new Map();\n this._theme = theme;\n }\n dispose() {\n for (const grammar of this._grammars.values()) {\n grammar.dispose();\n }\n }\n setTheme(theme) {\n this._theme = theme;\n }\n getColorMap() {\n return this._theme.getColorMap();\n }\n /**\n * Add `grammar` to registry and return a list of referenced scope names\n */\n addGrammar(grammar, injectionScopeNames) {\n this._rawGrammars.set(grammar.scopeName, grammar);\n if (injectionScopeNames) {\n this._injectionGrammars.set(grammar.scopeName, injectionScopeNames);\n }\n }\n /**\n * Lookup a raw grammar.\n */\n lookup(scopeName) {\n return this._rawGrammars.get(scopeName);\n }\n /**\n * Returns the injections for the given grammar\n */\n injections(targetScope) {\n return this._injectionGrammars.get(targetScope);\n }\n /**\n * Get the default theme settings\n */\n getDefaults() {\n return this._theme.getDefaults();\n }\n /**\n * Match a scope in the theme.\n */\n themeMatch(scopePath) {\n return this._theme.match(scopePath);\n }\n /**\n * Lookup a grammar.\n */\n grammarForScopeName(scopeName, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors) {\n if (!this._grammars.has(scopeName)) {\n let rawGrammar = this._rawGrammars.get(scopeName);\n if (!rawGrammar) {\n return null;\n }\n this._grammars.set(scopeName, createGrammar(\n scopeName,\n rawGrammar,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors,\n this,\n this._onigLib\n ));\n }\n return this._grammars.get(scopeName);\n }\n};\n\n// src/index.ts\nvar Registry = class {\n constructor(options) {\n this._options = options;\n this._syncRegistry = new SyncRegistry(\n Theme.createFromRawTheme(options.theme, options.colorMap),\n options.onigLib\n );\n this._ensureGrammarCache = /* @__PURE__ */ new Map();\n }\n dispose() {\n this._syncRegistry.dispose();\n }\n /**\n * Change the theme. Once called, no previous `ruleStack` should be used anymore.\n */\n setTheme(theme, colorMap) {\n this._syncRegistry.setTheme(Theme.createFromRawTheme(theme, colorMap));\n }\n /**\n * Returns a lookup array for color ids.\n */\n getColorMap() {\n return this._syncRegistry.getColorMap();\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n * Please do not use language id 0.\n */\n loadGrammarWithEmbeddedLanguages(initialScopeName, initialLanguage, embeddedLanguages) {\n return this.loadGrammarWithConfiguration(initialScopeName, initialLanguage, { embeddedLanguages });\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n * Please do not use language id 0.\n */\n loadGrammarWithConfiguration(initialScopeName, initialLanguage, configuration) {\n return this._loadGrammar(\n initialScopeName,\n initialLanguage,\n configuration.embeddedLanguages,\n configuration.tokenTypes,\n new BalancedBracketSelectors(\n configuration.balancedBracketSelectors || [],\n configuration.unbalancedBracketSelectors || []\n )\n );\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n */\n loadGrammar(initialScopeName) {\n return this._loadGrammar(initialScopeName, 0, null, null, null);\n }\n _loadGrammar(initialScopeName, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors) {\n const dependencyProcessor = new ScopeDependencyProcessor(this._syncRegistry, initialScopeName);\n while (dependencyProcessor.Q.length > 0) {\n dependencyProcessor.Q.map((request) => this._loadSingleGrammar(request.scopeName));\n dependencyProcessor.processQueue();\n }\n return this._grammarForScopeName(\n initialScopeName,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors\n );\n }\n _loadSingleGrammar(scopeName) {\n if (!this._ensureGrammarCache.has(scopeName)) {\n this._doLoadSingleGrammar(scopeName);\n this._ensureGrammarCache.set(scopeName, true);\n }\n }\n _doLoadSingleGrammar(scopeName) {\n const grammar = this._options.loadGrammar(scopeName);\n if (grammar) {\n const injections = typeof this._options.getInjections === \"function\" ? this._options.getInjections(scopeName) : void 0;\n this._syncRegistry.addGrammar(grammar, injections);\n }\n }\n /**\n * Adds a rawGrammar.\n */\n addGrammar(rawGrammar, injections = [], initialLanguage = 0, embeddedLanguages = null) {\n this._syncRegistry.addGrammar(rawGrammar, injections);\n return this._grammarForScopeName(rawGrammar.scopeName, initialLanguage, embeddedLanguages);\n }\n /**\n * Get the grammar for `scopeName`. The grammar must first be created via `loadGrammar` or `addGrammar`.\n */\n _grammarForScopeName(scopeName, initialLanguage = 0, embeddedLanguages = null, tokenTypes = null, balancedBracketSelectors = null) {\n return this._syncRegistry.grammarForScopeName(\n scopeName,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors\n );\n }\n};\nvar INITIAL = StateStackImpl.NULL;\nexport {\n EncodedTokenMetadata,\n FindOption,\n FontStyle,\n INITIAL,\n Registry,\n Theme,\n disposeOnigString\n};\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n */\n\nimport {Schema} from './schema.js'\n\n/**\n * @param {Schema[]} definitions\n * @param {string} [space]\n * @returns {Schema}\n */\nexport function merge(definitions, space) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n let index = -1\n\n while (++index < definitions.length) {\n Object.assign(property, definitions[index].property)\n Object.assign(normal, definitions[index].normal)\n }\n\n return new Schema(property, normal, space)\n}\n","/**\n * @param {string} value\n * @returns {string}\n */\nexport function normalize(value) {\n return value.toLowerCase()\n}\n","let powers = 0\n\nexport const boolean = increment()\nexport const booleanish = increment()\nexport const overloadedBoolean = increment()\nexport const number = increment()\nexport const spaceSeparated = increment()\nexport const commaSeparated = increment()\nexport const commaOrSpaceSeparated = increment()\n\nfunction increment() {\n return 2 ** ++powers\n}\n","import {Info} from './info.js'\nimport * as types from './types.js'\n\n/** @type {Array<keyof types>} */\n// @ts-expect-error: hush.\nconst checks = Object.keys(types)\n\nexport class DefinedInfo extends Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n * @param {number|null} [mask]\n * @param {string} [space]\n */\n constructor(property, attribute, mask, space) {\n let index = -1\n\n super(property, attribute)\n\n mark(this, 'space', space)\n\n if (typeof mask === 'number') {\n while (++index < checks.length) {\n const check = checks[index]\n mark(this, checks[index], (mask & types[check]) === types[check])\n }\n }\n }\n}\n\nDefinedInfo.prototype.defined = true\n\n/**\n * @param {DefinedInfo} values\n * @param {string} key\n * @param {unknown} value\n */\nfunction mark(values, key, value) {\n if (value) {\n // @ts-expect-error: assume `value` matches the expected value of `key`.\n values[key] = value\n }\n}\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n *\n * @typedef {Record<string, string>} Attributes\n *\n * @typedef {Object} Definition\n * @property {Record<string, number|null>} properties\n * @property {(attributes: Attributes, property: string) => string} transform\n * @property {string} [space]\n * @property {Attributes} [attributes]\n * @property {Array<string>} [mustUseProperty]\n */\n\nimport {normalize} from '../normalize.js'\nimport {Schema} from './schema.js'\nimport {DefinedInfo} from './defined-info.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * @param {Definition} definition\n * @returns {Schema}\n */\nexport function create(definition) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n /** @type {string} */\n let prop\n\n for (prop in definition.properties) {\n if (own.call(definition.properties, prop)) {\n const value = definition.properties[prop]\n const info = new DefinedInfo(\n prop,\n definition.transform(definition.attributes || {}, prop),\n value,\n definition.space\n )\n\n if (\n definition.mustUseProperty &&\n definition.mustUseProperty.includes(prop)\n ) {\n info.mustUseProperty = true\n }\n\n property[prop] = info\n\n normal[normalize(prop)] = prop\n normal[normalize(info.attribute)] = prop\n }\n }\n\n return new Schema(property, normal, definition.space)\n}\n","/**\n * @param {Record<string, string>} attributes\n * @param {string} attribute\n * @returns {string}\n */\nexport function caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute\n}\n","import {caseSensitiveTransform} from './case-sensitive-transform.js'\n\n/**\n * @param {Record<string, string>} attributes\n * @param {string} property\n * @returns {string}\n */\nexport function caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase())\n}\n","/**\n * @typedef {import('./util/schema.js').Schema} Schema\n */\n\nimport {normalize} from './normalize.js'\nimport {DefinedInfo} from './util/defined-info.js'\nimport {Info} from './util/info.js'\n\nconst valid = /^data[-\\w.:]+$/i\nconst dash = /-[a-z]/g\nconst cap = /[A-Z]/g\n\n/**\n * @param {Schema} schema\n * @param {string} value\n * @returns {Info}\n */\nexport function find(schema, value) {\n const normal = normalize(value)\n let prop = value\n let Type = Info\n\n if (normal in schema.normal) {\n return schema.property[schema.normal[normal]]\n }\n\n if (normal.length > 4 && normal.slice(0, 4) === 'data' && valid.test(value)) {\n // Attribute or property.\n if (value.charAt(4) === '-') {\n // Turn it into a property.\n const rest = value.slice(5).replace(dash, camelcase)\n prop = 'data' + rest.charAt(0).toUpperCase() + rest.slice(1)\n } else {\n // Turn it into an attribute.\n const rest = value.slice(4)\n\n if (!dash.test(rest)) {\n let dashes = rest.replace(cap, kebab)\n\n if (dashes.charAt(0) !== '-') {\n dashes = '-' + dashes\n }\n\n value = 'data' + dashes\n }\n }\n\n Type = DefinedInfo\n }\n\n return new Type(prop, value)\n}\n\n/**\n * @param {string} $0\n * @returns {string}\n */\nfunction kebab($0) {\n return '-' + $0.toLowerCase()\n}\n\n/**\n * @param {string} $0\n * @returns {string}\n */\nfunction camelcase($0) {\n return $0.charAt(1).toUpperCase()\n}\n","/**\n * @typedef CoreOptions\n * @property {ReadonlyArray<string>} [subset=[]]\n * Whether to only escape the given subset of characters.\n * @property {boolean} [escapeOnly=false]\n * Whether to only escape possibly dangerous characters.\n * Those characters are `\"`, `&`, `'`, `<`, `>`, and `` ` ``.\n *\n * @typedef FormatOptions\n * @property {(code: number, next: number, options: CoreWithFormatOptions) => string} format\n * Format strategy.\n *\n * @typedef {CoreOptions & FormatOptions & import('./util/format-smart.js').FormatSmartOptions} CoreWithFormatOptions\n */\n\nconst defaultSubsetRegex = /[\"&'<>`]/g\nconst surrogatePairsRegex = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g\nconst controlCharactersRegex =\n // eslint-disable-next-line no-control-regex, unicorn/no-hex-escape\n /[\\x01-\\t\\v\\f\\x0E-\\x1F\\x7F\\x81\\x8D\\x8F\\x90\\x9D\\xA0-\\uFFFF]/g\nconst regexEscapeRegex = /[|\\\\{}()[\\]^$+*?.]/g\n\n/** @type {WeakMap<ReadonlyArray<string>, RegExp>} */\nconst subsetToRegexCache = new WeakMap()\n\n/**\n * Encode certain characters in `value`.\n *\n * @param {string} value\n * @param {CoreWithFormatOptions} options\n * @returns {string}\n */\nexport function core(value, options) {\n value = value.replace(\n options.subset\n ? charactersToExpressionCached(options.subset)\n : defaultSubsetRegex,\n basic\n )\n\n if (options.subset || options.escapeOnly) {\n return value\n }\n\n return (\n value\n // Surrogate pairs.\n .replace(surrogatePairsRegex, surrogate)\n // BMP control characters (C0 except for LF, CR, SP; DEL; and some more\n // non-ASCII ones).\n .replace(controlCharactersRegex, basic)\n )\n\n /**\n * @param {string} pair\n * @param {number} index\n * @param {string} all\n */\n function surrogate(pair, index, all) {\n return options.format(\n (pair.charCodeAt(0) - 0xd800) * 0x400 +\n pair.charCodeAt(1) -\n 0xdc00 +\n 0x10000,\n all.charCodeAt(index + 2),\n options\n )\n }\n\n /**\n * @param {string} character\n * @param {number} index\n * @param {string} all\n */\n function basic(character, index, all) {\n return options.format(\n character.charCodeAt(0),\n all.charCodeAt(index + 1),\n options\n )\n }\n}\n\n/**\n * A wrapper function that caches the result of `charactersToExpression` with a WeakMap.\n * This can improve performance when tooling calls `charactersToExpression` repeatedly\n * with the same subset.\n *\n * @param {ReadonlyArray<string>} subset\n * @returns {RegExp}\n */\nfunction charactersToExpressionCached(subset) {\n let cached = subsetToRegexCache.get(subset)\n\n if (!cached) {\n cached = charactersToExpression(subset)\n subsetToRegexCache.set(subset, cached)\n }\n\n return cached\n}\n\n/**\n * @param {ReadonlyArray<string>} subset\n * @returns {RegExp}\n */\nfunction charactersToExpression(subset) {\n /** @type {Array<string>} */\n const groups = []\n let index = -1\n\n while (++index < subset.length) {\n groups.push(subset[index].replace(regexEscapeRegex, '\\\\$&'))\n }\n\n return new RegExp('(?:' + groups.join('|') + ')', 'g')\n}\n","/**\n * @typedef FormatSmartOptions\n * @property {boolean} [useNamedReferences=false]\n * Prefer named character references (`&`) where possible.\n * @property {boolean} [useShortestReferences=false]\n * Prefer the shortest possible reference, if that results in less bytes.\n * **Note**: `useNamedReferences` can be omitted when using `useShortestReferences`.\n * @property {boolean} [omitOptionalSemicolons=false]\n * Whether to omit semicolons when possible.\n * **Note**: This creates what HTML calls “parse errors” but is otherwise still valid HTML — don’t use this except when building a minifier.\n * Omitting semicolons is possible for certain named and numeric references in some cases.\n * @property {boolean} [attribute=false]\n * Create character references which don’t fail in attributes.\n * **Note**: `attribute` only applies when operating dangerously with\n * `omitOptionalSemicolons: true`.\n */\n\nimport {toHexadecimal} from './to-hexadecimal.js'\nimport {toDecimal} from './to-decimal.js'\nimport {toNamed} from './to-named.js'\n\n/**\n * Configurable ways to encode a character yielding pretty or small results.\n *\n * @param {number} code\n * @param {number} next\n * @param {FormatSmartOptions} options\n * @returns {string}\n */\nexport function formatSmart(code, next, options) {\n let numeric = toHexadecimal(code, next, options.omitOptionalSemicolons)\n /** @type {string|undefined} */\n let named\n\n if (options.useNamedReferences || options.useShortestReferences) {\n named = toNamed(\n code,\n next,\n options.omitOptionalSemicolons,\n options.attribute\n )\n }\n\n // Use the shortest numeric reference when requested.\n // A simple algorithm would use decimal for all code points under 100, as\n // those are shorter than hexadecimal:\n //\n // * `c` vs `c` (decimal shorter)\n // * `d` vs `d` (equal)\n //\n // However, because we take `next` into consideration when `omit` is used,\n // And it would be possible that decimals are shorter on bigger values as\n // well if `next` is hexadecimal but not decimal, we instead compare both.\n if (\n (options.useShortestReferences || !named) &&\n options.useShortestReferences\n ) {\n const decimal = toDecimal(code, next, options.omitOptionalSemicolons)\n\n if (decimal.length < numeric.length) {\n numeric = decimal\n }\n }\n\n return named &&\n (!options.useShortestReferences || named.length < numeric.length)\n ? named\n : numeric\n}\n","const hexadecimalRegex = /[\\dA-Fa-f]/\n\n/**\n * Configurable ways to encode characters as hexadecimal references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @returns {string}\n */\nexport function toHexadecimal(code, next, omit) {\n const value = '&#x' + code.toString(16).toUpperCase()\n return omit && next && !hexadecimalRegex.test(String.fromCharCode(next))\n ? value\n : value + ';'\n}\n","import {characterEntitiesLegacy} from 'character-entities-legacy'\nimport {characterEntitiesHtml4} from 'character-entities-html4'\nimport {dangerous} from '../constant/dangerous.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * `characterEntitiesHtml4` but inverted.\n *\n * @type {Record<string, string>}\n */\nconst characters = {}\n\n/** @type {string} */\nlet key\n\nfor (key in characterEntitiesHtml4) {\n if (own.call(characterEntitiesHtml4, key)) {\n characters[characterEntitiesHtml4[key]] = key\n }\n}\n\nconst notAlphanumericRegex = /[^\\dA-Za-z]/\n\n/**\n * Configurable ways to encode characters as named references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @param {boolean|undefined} attribute\n * @returns {string}\n */\nexport function toNamed(code, next, omit, attribute) {\n const character = String.fromCharCode(code)\n\n if (own.call(characters, character)) {\n const name = characters[character]\n const value = '&' + name\n\n if (\n omit &&\n characterEntitiesLegacy.includes(name) &&\n !dangerous.includes(name) &&\n (!attribute ||\n (next &&\n next !== 61 /* `=` */ &&\n notAlphanumericRegex.test(String.fromCharCode(next))))\n ) {\n return value\n }\n\n return value + ';'\n }\n\n return ''\n}\n","const decimalRegex = /\\d/\n\n/**\n * Configurable ways to encode characters as decimal references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @returns {string}\n */\nexport function toDecimal(code, next, omit) {\n const value = '&#' + String(code)\n return omit && next && !decimalRegex.test(String.fromCharCode(next))\n ? value\n : value + ';'\n}\n","/**\n * @typedef {import('./core.js').CoreOptions & import('./util/format-smart.js').FormatSmartOptions} Options\n * @typedef {import('./core.js').CoreOptions} LightOptions\n */\n\nimport {core} from './core.js'\nimport {formatSmart} from './util/format-smart.js'\nimport {formatBasic} from './util/format-basic.js'\n\n/**\n * Encode special characters in `value`.\n *\n * @param {string} value\n * Value to encode.\n * @param {Options} [options]\n * Configuration.\n * @returns {string}\n * Encoded value.\n */\nexport function stringifyEntities(value, options) {\n return core(value, Object.assign({format: formatSmart}, options))\n}\n\n/**\n * Encode special characters in `value` as hexadecimals.\n *\n * @param {string} value\n * Value to encode.\n * @param {LightOptions} [options]\n * Configuration.\n * @returns {string}\n * Encoded value.\n */\nexport function stringifyEntitiesLight(value, options) {\n return core(value, Object.assign({format: formatBasic}, options))\n}\n","/**\n * Count how often a character (or substring) is used in a string.\n *\n * @param {string} value\n * Value to search in.\n * @param {string} character\n * Character (or substring) to look for.\n * @return {number}\n * Number of times `character` occurred in `value`.\n */\nexport function ccount(value, character) {\n const source = String(value)\n\n if (typeof character !== 'string') {\n throw new TypeError('Expected character')\n }\n\n let count = 0\n let index = source.indexOf(character)\n\n while (index !== -1) {\n count++\n index = source.indexOf(character, index + character.length)\n }\n\n return count\n}\n","/**\n * @typedef Options\n * Configuration for `stringify`.\n * @property {boolean} [padLeft=true]\n * Whether to pad a space before a token.\n * @property {boolean} [padRight=false]\n * Whether to pad a space after a token.\n */\n\n/**\n * @typedef {Options} StringifyOptions\n * Please use `StringifyOptions` instead.\n */\n\n/**\n * Parse comma-separated tokens to an array.\n *\n * @param {string} value\n * Comma-separated tokens.\n * @returns {Array<string>}\n * List of tokens.\n */\nexport function parse(value) {\n /** @type {Array<string>} */\n const tokens = []\n const input = String(value || '')\n let index = input.indexOf(',')\n let start = 0\n /** @type {boolean} */\n let end = false\n\n while (!end) {\n if (index === -1) {\n index = input.length\n end = true\n }\n\n const token = input.slice(start, index).trim()\n\n if (token || !end) {\n tokens.push(token)\n }\n\n start = index + 1\n index = input.indexOf(',', start)\n }\n\n return tokens\n}\n\n/**\n * Serialize an array of strings or numbers to comma-separated tokens.\n *\n * @param {Array<string|number>} values\n * List of tokens.\n * @param {Options} [options]\n * Configuration for `stringify` (optional).\n * @returns {string}\n * Comma-separated tokens.\n */\nexport function stringify(values, options) {\n const settings = options || {}\n\n // Ensure the last empty entry is seen.\n const input = values[values.length - 1] === '' ? [...values, ''] : values\n\n return input\n .join(\n (settings.padRight ? ' ' : '') +\n ',' +\n (settings.padLeft === false ? '' : ' ')\n )\n .trim()\n}\n","/**\n * Parse space-separated tokens to an array of strings.\n *\n * @param {string} value\n * Space-separated tokens.\n * @returns {Array<string>}\n * List of tokens.\n */\nexport function parse(value) {\n const input = String(value || '').trim()\n return input ? input.split(/[ \\t\\n\\r\\f]+/g) : []\n}\n\n/**\n * Serialize an array of strings as space separated-tokens.\n *\n * @param {Array<string|number>} values\n * List of tokens.\n * @returns {string}\n * Space-separated tokens.\n */\nexport function stringify(values) {\n return values.join(' ').trim()\n}\n","/**\n * @typedef {import('hast').Nodes} Nodes\n */\n\n// HTML whitespace expression.\n// See <https://infra.spec.whatwg.org/#ascii-whitespace>.\nconst re = /[ \\t\\n\\f\\r]/g\n\n/**\n * Check if the given value is *inter-element whitespace*.\n *\n * @param {Nodes | string} thing\n * Thing to check (`Node` or `string`).\n * @returns {boolean}\n * Whether the `value` is inter-element whitespace (`boolean`): consisting of\n * zero or more of space, tab (`\\t`), line feed (`\\n`), carriage return\n * (`\\r`), or form feed (`\\f`); if a node is passed it must be a `Text` node,\n * whose `value` field is checked.\n */\nexport function whitespace(thing) {\n return typeof thing === 'object'\n ? thing.type === 'text'\n ? empty(thing.value)\n : false\n : empty(thing)\n}\n\n/**\n * @param {string} value\n * @returns {boolean}\n */\nfunction empty(value) {\n return value.replace(re, '') === ''\n}\n","/**\n * @import {Parents, RootContent} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\n\nexport const siblingAfter = siblings(1)\nexport const siblingBefore = siblings(-1)\n\n/** @type {Array<RootContent>} */\nconst emptyChildren = []\n\n/**\n * Factory to check siblings in a direction.\n *\n * @param {number} increment\n */\nfunction siblings(increment) {\n return sibling\n\n /**\n * Find applicable siblings in a direction.\n *\n * @template {Parents} Parent\n * Parent type.\n * @param {Parent | undefined} parent\n * Parent.\n * @param {number | undefined} index\n * Index of child in `parent`.\n * @param {boolean | undefined} [includeWhitespace=false]\n * Whether to include whitespace (default: `false`).\n * @returns {Parent extends {children: Array<infer Child>} ? Child | undefined : never}\n * Child of parent.\n */\n function sibling(parent, index, includeWhitespace) {\n const siblings = parent ? parent.children : emptyChildren\n let offset = (index || 0) + increment\n let next = siblings[offset]\n\n if (!includeWhitespace) {\n while (next && whitespace(next)) {\n offset += increment\n next = siblings[offset]\n }\n }\n\n // @ts-expect-error: it’s a correct child.\n return next\n }\n}\n","/**\n * @import {Element, Parents} from 'hast'\n */\n\n/**\n * @callback OmitHandle\n * Check if a tag can be omitted.\n * @param {Element} element\n * Element to check.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether to omit a tag.\n *\n */\n\nconst own = {}.hasOwnProperty\n\n/**\n * Factory to check if a given node can have a tag omitted.\n *\n * @param {Record<string, OmitHandle>} handlers\n * Omission handlers, where each key is a tag name, and each value is the\n * corresponding handler.\n * @returns {OmitHandle}\n * Whether to omit a tag of an element.\n */\nexport function omission(handlers) {\n return omit\n\n /**\n * Check if a given node can have a tag omitted.\n *\n * @type {OmitHandle}\n */\n function omit(node, index, parent) {\n return (\n own.call(handlers, node.tagName) &&\n handlers[node.tagName](node, index, parent)\n )\n }\n}\n","/**\n * @import {Element, Parents} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\nimport {siblingAfter} from './util/siblings.js'\nimport {omission} from './omission.js'\n\nexport const closing = omission({\n body,\n caption: headOrColgroupOrCaption,\n colgroup: headOrColgroupOrCaption,\n dd,\n dt,\n head: headOrColgroupOrCaption,\n html,\n li,\n optgroup,\n option,\n p,\n rp: rubyElement,\n rt: rubyElement,\n tbody,\n td: cells,\n tfoot,\n th: cells,\n thead,\n tr\n})\n\n/**\n * Macro for `</head>`, `</colgroup>`, and `</caption>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction headOrColgroupOrCaption(_, index, parent) {\n const next = siblingAfter(parent, index, true)\n return (\n !next ||\n (next.type !== 'comment' &&\n !(next.type === 'text' && whitespace(next.value.charAt(0))))\n )\n}\n\n/**\n * Whether to omit `</html>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction html(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || next.type !== 'comment'\n}\n\n/**\n * Whether to omit `</body>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction body(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || next.type !== 'comment'\n}\n\n/**\n * Whether to omit `</p>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction p(_, index, parent) {\n const next = siblingAfter(parent, index)\n return next\n ? next.type === 'element' &&\n (next.tagName === 'address' ||\n next.tagName === 'article' ||\n next.tagName === 'aside' ||\n next.tagName === 'blockquote' ||\n next.tagName === 'details' ||\n next.tagName === 'div' ||\n next.tagName === 'dl' ||\n next.tagName === 'fieldset' ||\n next.tagName === 'figcaption' ||\n next.tagName === 'figure' ||\n next.tagName === 'footer' ||\n next.tagName === 'form' ||\n next.tagName === 'h1' ||\n next.tagName === 'h2' ||\n next.tagName === 'h3' ||\n next.tagName === 'h4' ||\n next.tagName === 'h5' ||\n next.tagName === 'h6' ||\n next.tagName === 'header' ||\n next.tagName === 'hgroup' ||\n next.tagName === 'hr' ||\n next.tagName === 'main' ||\n next.tagName === 'menu' ||\n next.tagName === 'nav' ||\n next.tagName === 'ol' ||\n next.tagName === 'p' ||\n next.tagName === 'pre' ||\n next.tagName === 'section' ||\n next.tagName === 'table' ||\n next.tagName === 'ul')\n : !parent ||\n // Confusing parent.\n !(\n parent.type === 'element' &&\n (parent.tagName === 'a' ||\n parent.tagName === 'audio' ||\n parent.tagName === 'del' ||\n parent.tagName === 'ins' ||\n parent.tagName === 'map' ||\n parent.tagName === 'noscript' ||\n parent.tagName === 'video')\n )\n}\n\n/**\n * Whether to omit `</li>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction li(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'li')\n}\n\n/**\n * Whether to omit `</dt>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction dt(_, index, parent) {\n const next = siblingAfter(parent, index)\n return Boolean(\n next &&\n next.type === 'element' &&\n (next.tagName === 'dt' || next.tagName === 'dd')\n )\n}\n\n/**\n * Whether to omit `</dd>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction dd(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'dt' || next.tagName === 'dd'))\n )\n}\n\n/**\n * Whether to omit `</rt>` or `</rp>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction rubyElement(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'rp' || next.tagName === 'rt'))\n )\n}\n\n/**\n * Whether to omit `</optgroup>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction optgroup(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'optgroup')\n}\n\n/**\n * Whether to omit `</option>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction option(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'option' || next.tagName === 'optgroup'))\n )\n}\n\n/**\n * Whether to omit `</thead>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction thead(_, index, parent) {\n const next = siblingAfter(parent, index)\n return Boolean(\n next &&\n next.type === 'element' &&\n (next.tagName === 'tbody' || next.tagName === 'tfoot')\n )\n}\n\n/**\n * Whether to omit `</tbody>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tbody(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'tbody' || next.tagName === 'tfoot'))\n )\n}\n\n/**\n * Whether to omit `</tfoot>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tfoot(_, index, parent) {\n return !siblingAfter(parent, index)\n}\n\n/**\n * Whether to omit `</tr>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tr(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'tr')\n}\n\n/**\n * Whether to omit `</td>` or `</th>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction cells(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'td' || next.tagName === 'th'))\n )\n}\n","/**\n * @import {Element, Parents, Properties} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {ccount} from 'ccount'\nimport {stringify as commas} from 'comma-separated-tokens'\nimport {find, svg} from 'property-information'\nimport {stringify as spaces} from 'space-separated-tokens'\nimport {stringifyEntities} from 'stringify-entities'\nimport {closing} from '../omission/closing.js'\nimport {opening} from '../omission/opening.js'\n\n/**\n * Maps of subsets.\n *\n * Each value is a matrix of tuples.\n * The value at `0` causes parse errors, the value at `1` is valid.\n * Of both, the value at `0` is unsafe, and the value at `1` is safe.\n *\n * @type {Record<'double' | 'name' | 'single' | 'unquoted', Array<[Array<string>, Array<string>]>>}\n */\nconst constants = {\n // See: <https://html.spec.whatwg.org/#attribute-name-state>.\n name: [\n ['\\t\\n\\f\\r &/=>'.split(''), '\\t\\n\\f\\r \"&\\'/=>`'.split('')],\n ['\\0\\t\\n\\f\\r \"&\\'/<=>'.split(''), '\\0\\t\\n\\f\\r \"&\\'/<=>`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(unquoted)-state>.\n unquoted: [\n ['\\t\\n\\f\\r &>'.split(''), '\\0\\t\\n\\f\\r \"&\\'<=>`'.split('')],\n ['\\0\\t\\n\\f\\r \"&\\'<=>`'.split(''), '\\0\\t\\n\\f\\r \"&\\'<=>`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(single-quoted)-state>.\n single: [\n [\"&'\".split(''), '\"&\\'`'.split('')],\n [\"\\0&'\".split(''), '\\0\"&\\'`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(double-quoted)-state>.\n double: [\n ['\"&'.split(''), '\"&\\'`'.split('')],\n ['\\0\"&'.split(''), '\\0\"&\\'`'.split('')]\n ]\n}\n\n/**\n * Serialize an element node.\n *\n * @param {Element} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function element(node, index, parent, state) {\n const schema = state.schema\n const omit = schema.space === 'svg' ? false : state.settings.omitOptionalTags\n let selfClosing =\n schema.space === 'svg'\n ? state.settings.closeEmptyElements\n : state.settings.voids.includes(node.tagName.toLowerCase())\n /** @type {Array<string>} */\n const parts = []\n /** @type {string} */\n let last\n\n if (schema.space === 'html' && node.tagName === 'svg') {\n state.schema = svg\n }\n\n const attributes = serializeAttributes(state, node.properties)\n\n const content = state.all(\n schema.space === 'html' && node.tagName === 'template' ? node.content : node\n )\n\n state.schema = schema\n\n // If the node is categorised as void, but it has children, remove the\n // categorisation.\n // This enables for example `menuitem`s, which are void in W3C HTML but not\n // void in WHATWG HTML, to be stringified properly.\n // Note: `menuitem` has since been removed from the HTML spec, and so is no\n // longer void.\n if (content) selfClosing = false\n\n if (attributes || !omit || !opening(node, index, parent)) {\n parts.push('<', node.tagName, attributes ? ' ' + attributes : '')\n\n if (\n selfClosing &&\n (schema.space === 'svg' || state.settings.closeSelfClosing)\n ) {\n last = attributes.charAt(attributes.length - 1)\n if (\n !state.settings.tightSelfClosing ||\n last === '/' ||\n (last && last !== '\"' && last !== \"'\")\n ) {\n parts.push(' ')\n }\n\n parts.push('/')\n }\n\n parts.push('>')\n }\n\n parts.push(content)\n\n if (!selfClosing && (!omit || !closing(node, index, parent))) {\n parts.push('</' + node.tagName + '>')\n }\n\n return parts.join('')\n}\n\n/**\n * @param {State} state\n * @param {Properties | null | undefined} properties\n * @returns {string}\n */\nfunction serializeAttributes(state, properties) {\n /** @type {Array<string>} */\n const values = []\n let index = -1\n /** @type {string} */\n let key\n\n if (properties) {\n for (key in properties) {\n if (properties[key] !== null && properties[key] !== undefined) {\n const value = serializeAttribute(state, key, properties[key])\n if (value) values.push(value)\n }\n }\n }\n\n while (++index < values.length) {\n const last = state.settings.tightAttributes\n ? values[index].charAt(values[index].length - 1)\n : undefined\n\n // In tight mode, don’t add a space after quoted attributes.\n if (index !== values.length - 1 && last !== '\"' && last !== \"'\") {\n values[index] += ' '\n }\n }\n\n return values.join('')\n}\n\n/**\n * @param {State} state\n * @param {string} key\n * @param {Properties[keyof Properties]} value\n * @returns {string}\n */\nfunction serializeAttribute(state, key, value) {\n const info = find(state.schema, key)\n const x =\n state.settings.allowParseErrors && state.schema.space === 'html' ? 0 : 1\n const y = state.settings.allowDangerousCharacters ? 0 : 1\n let quote = state.quote\n /** @type {string | undefined} */\n let result\n\n if (info.overloadedBoolean && (value === info.attribute || value === '')) {\n value = true\n } else if (\n info.boolean ||\n (info.overloadedBoolean && typeof value !== 'string')\n ) {\n value = Boolean(value)\n }\n\n if (\n value === null ||\n value === undefined ||\n value === false ||\n (typeof value === 'number' && Number.isNaN(value))\n ) {\n return ''\n }\n\n const name = stringifyEntities(\n info.attribute,\n Object.assign({}, state.settings.characterReferences, {\n // Always encode without parse errors in non-HTML.\n subset: constants.name[x][y]\n })\n )\n\n // No value.\n // There is currently only one boolean property in SVG: `[download]` on\n // `<a>`.\n // This property does not seem to work in browsers (Firefox, Safari, Chrome),\n // so I can’t test if dropping the value works.\n // But I assume that it should:\n //\n // ```html\n // <!doctype html>\n // <svg viewBox=\"0 0 100 100\">\n // <a href=https://example.com download>\n // <circle cx=50 cy=40 r=35 />\n // </a>\n // </svg>\n // ```\n //\n // See: <https://github.com/wooorm/property-information/blob/main/lib/svg.js>\n if (value === true) return name\n\n // `spaces` doesn’t accept a second argument, but it’s given here just to\n // keep the code cleaner.\n value = Array.isArray(value)\n ? (info.commaSeparated ? commas : spaces)(value, {\n padLeft: !state.settings.tightCommaSeparatedLists\n })\n : String(value)\n\n if (state.settings.collapseEmptyAttributes && !value) return name\n\n // Check unquoted value.\n if (state.settings.preferUnquoted) {\n result = stringifyEntities(\n value,\n Object.assign({}, state.settings.characterReferences, {\n attribute: true,\n subset: constants.unquoted[x][y]\n })\n )\n }\n\n // If we don’t want unquoted, or if `value` contains character references when\n // unquoted…\n if (result !== value) {\n // If the alternative is less common than `quote`, switch.\n if (\n state.settings.quoteSmart &&\n ccount(value, quote) > ccount(value, state.alternative)\n ) {\n quote = state.alternative\n }\n\n result =\n quote +\n stringifyEntities(\n value,\n Object.assign({}, state.settings.characterReferences, {\n // Always encode without parse errors in non-HTML.\n subset: (quote === \"'\" ? constants.single : constants.double)[x][y],\n attribute: true\n })\n ) +\n quote\n }\n\n // Don’t add a `=` for unquoted empties.\n return name + (result ? '=' + result : result)\n}\n","/**\n * @import {Parents, Text} from 'hast'\n * @import {Raw} from 'mdast-util-to-hast'\n * @import {State} from '../index.js'\n */\n\nimport {stringifyEntities} from 'stringify-entities'\n\n// Declare array as variable so it can be cached by `stringifyEntities`\nconst textEntitySubset = ['<', '&']\n\n/**\n * Serialize a text node.\n *\n * @param {Raw | Text} node\n * Node to handle.\n * @param {number | undefined} _\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function text(node, _, parent, state) {\n // Check if content of `node` should be escaped.\n return parent &&\n parent.type === 'element' &&\n (parent.tagName === 'script' || parent.tagName === 'style')\n ? node.value\n : stringifyEntities(\n node.value,\n Object.assign({}, state.settings.characterReferences, {\n subset: textEntitySubset\n })\n )\n}\n","/**\n * @import {Nodes, Parents, RootContent} from 'hast'\n * @import {Schema} from 'property-information'\n * @import {Options as StringifyEntitiesOptions} from 'stringify-entities'\n */\n\n/**\n * @typedef {Omit<StringifyEntitiesOptions, 'attribute' | 'escapeOnly' | 'subset'>} CharacterReferences\n *\n * @typedef Options\n * Configuration.\n * @property {boolean | null | undefined} [allowDangerousCharacters=false]\n * Do not encode some characters which cause XSS vulnerabilities in older\n * browsers (default: `false`).\n *\n * > ⚠️ **Danger**: only set this if you completely trust the content.\n * @property {boolean | null | undefined} [allowDangerousHtml=false]\n * Allow `raw` nodes and insert them as raw HTML (default: `false`).\n *\n * When `false`, `Raw` nodes are encoded.\n *\n * > ⚠️ **Danger**: only set this if you completely trust the content.\n * @property {boolean | null | undefined} [allowParseErrors=false]\n * Do not encode characters which cause parse errors (even though they work),\n * to save bytes (default: `false`).\n *\n * Not used in the SVG space.\n *\n * > 👉 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn’t pretty).\n * @property {boolean | null | undefined} [bogusComments=false]\n * Use “bogus comments” instead of comments to save byes: `<?charlie>`\n * instead of `<!--charlie-->` (default: `false`).\n *\n * > 👉 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn’t pretty).\n * @property {CharacterReferences | null | undefined} [characterReferences]\n * Configure how to serialize character references (optional).\n * @property {boolean | null | undefined} [closeEmptyElements=false]\n * Close SVG elements without any content with slash (`/`) on the opening tag\n * instead of an end tag: `<circle />` instead of `<circle></circle>`\n * (default: `false`).\n *\n * See `tightSelfClosing` to control whether a space is used before the\n * slash.\n *\n * Not used in the HTML space.\n * @property {boolean | null | undefined} [closeSelfClosing=false]\n * Close self-closing nodes with an extra slash (`/`): `<img />` instead of\n * `<img>` (default: `false`).\n *\n * See `tightSelfClosing` to control whether a space is used before the\n * slash.\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [collapseEmptyAttributes=false]\n * Collapse empty attributes: get `class` instead of `class=\"\"` (default:\n * `false`).\n *\n * Not used in the SVG space.\n *\n * > 👉 **Note**: boolean attributes (such as `hidden`) are always collapsed.\n * @property {boolean | null | undefined} [omitOptionalTags=false]\n * Omit optional opening and closing tags (default: `false`).\n *\n * For example, in `<ol><li>one</li><li>two</li></ol>`, both `</li>` closing\n * tags can be omitted.\n * The first because it’s followed by another `li`, the last because it’s\n * followed by nothing.\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [preferUnquoted=false]\n * Leave attributes unquoted if that results in less bytes (default: `false`).\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [quoteSmart=false]\n * Use the other quote if that results in less bytes (default: `false`).\n * @property {Quote | null | undefined} [quote='\"']\n * Preferred quote to use (default: `'\"'`).\n * @property {Space | null | undefined} [space='html']\n * When an `<svg>` element is found in the HTML space, this package already\n * automatically switches to and from the SVG space when entering and exiting\n * it (default: `'html'`).\n *\n * > 👉 **Note**: hast is not XML.\n * > It supports SVG as embedded in HTML.\n * > It does not support the features available in XML.\n * > Passing SVG might break but fragments of modern SVG should be fine.\n * > Use [`xast`][xast] if you need to support SVG as XML.\n * @property {boolean | null | undefined} [tightAttributes=false]\n * Join attributes together, without whitespace, if possible: get\n * `class=\"a b\"title=\"c d\"` instead of `class=\"a b\" title=\"c d\"` to save\n * bytes (default: `false`).\n *\n * Not used in the SVG space.\n *\n * > 👉 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn’t pretty).\n * @property {boolean | null | undefined} [tightCommaSeparatedLists=false]\n * Join known comma-separated attribute values with just a comma (`,`),\n * instead of padding them on the right as well (`,␠`, where `␠` represents a\n * space) (default: `false`).\n * @property {boolean | null | undefined} [tightDoctype=false]\n * Drop unneeded spaces in doctypes: `<!doctypehtml>` instead of\n * `<!doctype html>` to save bytes (default: `false`).\n *\n * > 👉 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn’t pretty).\n * @property {boolean | null | undefined} [tightSelfClosing=false]\n * Do not use an extra space when closing self-closing elements: `<img/>`\n * instead of `<img />` (default: `false`).\n *\n * > 👉 **Note**: only used if `closeSelfClosing: true` or\n * > `closeEmptyElements: true`.\n * @property {boolean | null | undefined} [upperDoctype=false]\n * Use a `<!DOCTYPE…` instead of `<!doctype…` (default: `false`).\n *\n * Useless except for XHTML.\n * @property {ReadonlyArray<string> | null | undefined} [voids]\n * Tag names of elements to serialize without closing tag (default: `html-void-elements`).\n *\n * Not used in the SVG space.\n *\n * > 👉 **Note**: It’s highly unlikely that you want to pass this, because\n * > hast is not for XML, and HTML will not add more void elements.\n *\n * @typedef {'\"' | \"'\"} Quote\n * HTML quotes for attribute values.\n *\n * @typedef {Omit<Required<{[key in keyof Options]: Exclude<Options[key], null | undefined>}>, 'space' | 'quote'>} Settings\n *\n * @typedef {'html' | 'svg'} Space\n * Namespace.\n *\n * @typedef State\n * Info passed around about the current state.\n * @property {(node: Parents | undefined) => string} all\n * Serialize the children of a parent node.\n * @property {Quote} alternative\n * Alternative quote.\n * @property {(node: Nodes, index: number | undefined, parent: Parents | undefined) => string} one\n * Serialize one node.\n * @property {Quote} quote\n * Preferred quote.\n * @property {Schema} schema\n * Current schema.\n * @property {Settings} settings\n * User configuration.\n */\n\nimport {htmlVoidElements} from 'html-void-elements'\nimport {html, svg} from 'property-information'\nimport {handle} from './handle/index.js'\n\n/** @type {Options} */\nconst emptyOptions = {}\n\n/** @type {CharacterReferences} */\nconst emptyCharacterReferences = {}\n\n/** @type {Array<never>} */\nconst emptyChildren = []\n\n/**\n * Serialize hast as HTML.\n *\n * @param {Array<RootContent> | Nodes} tree\n * Tree to serialize.\n * @param {Options | null | undefined} [options]\n * Configuration (optional).\n * @returns {string}\n * Serialized HTML.\n */\nexport function toHtml(tree, options) {\n const options_ = options || emptyOptions\n const quote = options_.quote || '\"'\n const alternative = quote === '\"' ? \"'\" : '\"'\n\n if (quote !== '\"' && quote !== \"'\") {\n throw new Error('Invalid quote `' + quote + '`, expected `\\'` or `\"`')\n }\n\n /** @type {State} */\n const state = {\n one,\n all,\n settings: {\n omitOptionalTags: options_.omitOptionalTags || false,\n allowParseErrors: options_.allowParseErrors || false,\n allowDangerousCharacters: options_.allowDangerousCharacters || false,\n quoteSmart: options_.quoteSmart || false,\n preferUnquoted: options_.preferUnquoted || false,\n tightAttributes: options_.tightAttributes || false,\n upperDoctype: options_.upperDoctype || false,\n tightDoctype: options_.tightDoctype || false,\n bogusComments: options_.bogusComments || false,\n tightCommaSeparatedLists: options_.tightCommaSeparatedLists || false,\n tightSelfClosing: options_.tightSelfClosing || false,\n collapseEmptyAttributes: options_.collapseEmptyAttributes || false,\n allowDangerousHtml: options_.allowDangerousHtml || false,\n voids: options_.voids || htmlVoidElements,\n characterReferences:\n options_.characterReferences || emptyCharacterReferences,\n closeSelfClosing: options_.closeSelfClosing || false,\n closeEmptyElements: options_.closeEmptyElements || false\n },\n schema: options_.space === 'svg' ? svg : html,\n quote,\n alternative\n }\n\n return state.one(\n Array.isArray(tree) ? {type: 'root', children: tree} : tree,\n undefined,\n undefined\n )\n}\n\n/**\n * Serialize a node.\n *\n * @this {State}\n * Info passed around about the current state.\n * @param {Nodes} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @returns {string}\n * Serialized node.\n */\nfunction one(node, index, parent) {\n return handle(node, index, parent, this)\n}\n\n/**\n * Serialize all children of `parent`.\n *\n * @this {State}\n * Info passed around about the current state.\n * @param {Parents | undefined} parent\n * Parent whose children to serialize.\n * @returns {string}\n */\nexport function all(parent) {\n /** @type {Array<string>} */\n const results = []\n const children = (parent && parent.children) || emptyChildren\n let index = -1\n\n while (++index < children.length) {\n results[index] = this.one(children[index], index, parent)\n }\n\n return results.join('')\n}\n","import { ShikiError as ShikiError$1 } from '@shikijs/types';\nexport * from '@shikijs/types';\nimport { createOnigurumaEngine as createOnigurumaEngine$1, loadWasm as loadWasm$1, getDefaultWasmLoader } from '@shikijs/engine-oniguruma';\nimport { w as warnDeprecated } from './shared/core.afb6276c.mjs';\nexport { e as enableDeprecationWarnings } from './shared/core.afb6276c.mjs';\nimport { FontStyle, INITIAL, EncodedTokenMetadata, Registry as Registry$1, Theme } from '@shikijs/vscode-textmate';\nexport { FontStyle, EncodedTokenMetadata as StackElementMetadata } from '@shikijs/vscode-textmate';\nimport { toHtml } from 'hast-util-to-html';\nexport { toHtml as hastToHtml } from 'hast-util-to-html';\nimport { createJavaScriptRegexEngine as createJavaScriptRegexEngine$1, defaultJavaScriptRegexConstructor as defaultJavaScriptRegexConstructor$1 } from '@shikijs/engine-javascript';\n\nfunction createOnigurumaEngine(options) {\n warnDeprecated(\"import `createOnigurumaEngine` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return createOnigurumaEngine$1(options);\n}\nfunction createWasmOnigEngine(options) {\n warnDeprecated(\"import `createOnigurumaEngine` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return createOnigurumaEngine$1(options);\n}\nfunction loadWasm(options) {\n warnDeprecated(\"import `loadWasm` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return loadWasm$1(options);\n}\n\nfunction toArray(x) {\n return Array.isArray(x) ? x : [x];\n}\nfunction splitLines(code, preserveEnding = false) {\n const parts = code.split(/(\\r?\\n)/g);\n let index = 0;\n const lines = [];\n for (let i = 0; i < parts.length; i += 2) {\n const line = preserveEnding ? parts[i] + (parts[i + 1] || \"\") : parts[i];\n lines.push([line, index]);\n index += parts[i].length;\n index += parts[i + 1]?.length || 0;\n }\n return lines;\n}\nfunction isPlainLang(lang) {\n return !lang || [\"plaintext\", \"txt\", \"text\", \"plain\"].includes(lang);\n}\nfunction isSpecialLang(lang) {\n return lang === \"ansi\" || isPlainLang(lang);\n}\nfunction isNoneTheme(theme) {\n return theme === \"none\";\n}\nfunction isSpecialTheme(theme) {\n return isNoneTheme(theme);\n}\nfunction addClassToHast(node, className) {\n var _a;\n if (!className)\n return node;\n node.properties || (node.properties = {});\n (_a = node.properties).class || (_a.class = []);\n if (typeof node.properties.class === \"string\")\n node.properties.class = node.properties.class.split(/\\s+/g);\n if (!Array.isArray(node.properties.class))\n node.properties.class = [];\n const targets = Array.isArray(className) ? className : className.split(/\\s+/g);\n for (const c of targets) {\n if (c && !node.properties.class.includes(c))\n node.properties.class.push(c);\n }\n return node;\n}\nfunction splitToken(token, offsets) {\n let lastOffset = 0;\n const tokens = [];\n for (const offset of offsets) {\n if (offset > lastOffset) {\n tokens.push({\n ...token,\n content: token.content.slice(lastOffset, offset),\n offset: token.offset + lastOffset\n });\n }\n lastOffset = offset;\n }\n if (lastOffset < token.content.length) {\n tokens.push({\n ...token,\n content: token.content.slice(lastOffset),\n offset: token.offset + lastOffset\n });\n }\n return tokens;\n}\nfunction splitTokens(tokens, breakpoints) {\n const sorted = Array.from(breakpoints instanceof Set ? breakpoints : new Set(breakpoints)).sort((a, b) => a - b);\n if (!sorted.length)\n return tokens;\n return tokens.map((line) => {\n return line.flatMap((token) => {\n const breakpointsInToken = sorted.filter((i) => token.offset < i && i < token.offset + token.content.length).map((i) => i - token.offset).sort((a, b) => a - b);\n if (!breakpointsInToken.length)\n return token;\n return splitToken(token, breakpointsInToken);\n });\n });\n}\nasync function normalizeGetter(p) {\n return Promise.resolve(typeof p === \"function\" ? p() : p).then((r) => r.default || r);\n}\nfunction resolveColorReplacements(theme, options) {\n const replacements = typeof theme === \"string\" ? {} : { ...theme.colorReplacements };\n const themeName = typeof theme === \"string\" ? theme : theme.name;\n for (const [key, value] of Object.entries(options?.colorReplacements || {})) {\n if (typeof value === \"string\")\n replacements[key] = value;\n else if (key === themeName)\n Object.assign(replacements, value);\n }\n return replacements;\n}\nfunction applyColorReplacements(color, replacements) {\n if (!color)\n return color;\n return replacements?.[color?.toLowerCase()] || color;\n}\nfunction getTokenStyleObject(token) {\n const styles = {};\n if (token.color)\n styles.color = token.color;\n if (token.bgColor)\n styles[\"background-color\"] = token.bgColor;\n if (token.fontStyle) {\n if (token.fontStyle & FontStyle.Italic)\n styles[\"font-style\"] = \"italic\";\n if (token.fontStyle & FontStyle.Bold)\n styles[\"font-weight\"] = \"bold\";\n if (token.fontStyle & FontStyle.Underline)\n styles[\"text-decoration\"] = \"underline\";\n }\n return styles;\n}\nfunction stringifyTokenStyle(token) {\n if (typeof token === \"string\")\n return token;\n return Object.entries(token).map(([key, value]) => `${key}:${value}`).join(\";\");\n}\nfunction createPositionConverter(code) {\n const lines = splitLines(code, true).map(([line]) => line);\n function indexToPos(index) {\n if (index === code.length) {\n return {\n line: lines.length - 1,\n character: lines[lines.length - 1].length\n };\n }\n let character = index;\n let line = 0;\n for (const lineText of lines) {\n if (character < lineText.length)\n break;\n character -= lineText.length;\n line++;\n }\n return { line, character };\n }\n function posToIndex(line, character) {\n let index = 0;\n for (let i = 0; i < line; i++)\n index += lines[i].length;\n index += character;\n return index;\n }\n return {\n lines,\n indexToPos,\n posToIndex\n };\n}\n\nclass ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nvar __defProp$2 = Object.defineProperty;\nvar __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField$2 = (obj, key, value) => {\n __defNormalProp$2(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nconst _grammarStateMap = /* @__PURE__ */ new WeakMap();\nfunction setLastGrammarStateToMap(keys, state) {\n _grammarStateMap.set(keys, state);\n}\nfunction getLastGrammarStateFromMap(keys) {\n return _grammarStateMap.get(keys);\n}\nclass GrammarState {\n constructor(...args) {\n /**\n * Theme to Stack mapping\n */\n __publicField$2(this, \"_stacks\", {});\n __publicField$2(this, \"lang\");\n if (args.length === 2) {\n const [stacksMap, lang] = args;\n this.lang = lang;\n this._stacks = stacksMap;\n } else {\n const [stack, lang, theme] = args;\n this.lang = lang;\n this._stacks = { [theme]: stack };\n }\n }\n get themes() {\n return Object.keys(this._stacks);\n }\n get theme() {\n return this.themes[0];\n }\n get _stack() {\n return this._stacks[this.theme];\n }\n /**\n * Static method to create a initial grammar state.\n */\n static initial(lang, themes) {\n return new GrammarState(\n Object.fromEntries(toArray(themes).map((theme) => [theme, INITIAL])),\n lang\n );\n }\n /**\n * Get the internal stack object.\n * @internal\n */\n getInternalStack(theme = this.theme) {\n return this._stacks[theme];\n }\n /**\n * @deprecated use `getScopes` instead\n */\n get scopes() {\n return getScopes(this._stacks[this.theme]);\n }\n getScopes(theme = this.theme) {\n return getScopes(this._stacks[theme]);\n }\n toJSON() {\n return {\n lang: this.lang,\n theme: this.theme,\n themes: this.themes,\n scopes: this.scopes\n };\n }\n}\nfunction getScopes(stack) {\n const scopes = [];\n const visited = /* @__PURE__ */ new Set();\n function pushScope(stack2) {\n if (visited.has(stack2))\n return;\n visited.add(stack2);\n const name = stack2?.nameScopesList?.scopeName;\n if (name)\n scopes.push(name);\n if (stack2.parent)\n pushScope(stack2.parent);\n }\n pushScope(stack);\n return scopes;\n}\nfunction getGrammarStack(state, theme) {\n if (!(state instanceof GrammarState))\n throw new ShikiError(\"Invalid grammar state\");\n return state.getInternalStack(theme);\n}\n\nfunction transformerDecorations() {\n const map = /* @__PURE__ */ new WeakMap();\n function getContext(shiki) {\n if (!map.has(shiki.meta)) {\n let normalizePosition = function(p) {\n if (typeof p === \"number\") {\n if (p < 0 || p > shiki.source.length)\n throw new ShikiError(`Invalid decoration offset: ${p}. Code length: ${shiki.source.length}`);\n return {\n ...converter.indexToPos(p),\n offset: p\n };\n } else {\n const line = converter.lines[p.line];\n if (line === void 0)\n throw new ShikiError(`Invalid decoration position ${JSON.stringify(p)}. Lines length: ${converter.lines.length}`);\n if (p.character < 0 || p.character > line.length)\n throw new ShikiError(`Invalid decoration position ${JSON.stringify(p)}. Line ${p.line} length: ${line.length}`);\n return {\n ...p,\n offset: converter.posToIndex(p.line, p.character)\n };\n }\n };\n const converter = createPositionConverter(shiki.source);\n const decorations = (shiki.options.decorations || []).map((d) => ({\n ...d,\n start: normalizePosition(d.start),\n end: normalizePosition(d.end)\n }));\n verifyIntersections(decorations);\n map.set(shiki.meta, {\n decorations,\n converter,\n source: shiki.source\n });\n }\n return map.get(shiki.meta);\n }\n return {\n name: \"shiki:decorations\",\n tokens(tokens) {\n if (!this.options.decorations?.length)\n return;\n const ctx = getContext(this);\n const breakpoints = ctx.decorations.flatMap((d) => [d.start.offset, d.end.offset]);\n const splitted = splitTokens(tokens, breakpoints);\n return splitted;\n },\n code(codeEl) {\n if (!this.options.decorations?.length)\n return;\n const ctx = getContext(this);\n const lines = Array.from(codeEl.children).filter((i) => i.type === \"element\" && i.tagName === \"span\");\n if (lines.length !== ctx.converter.lines.length)\n throw new ShikiError(`Number of lines in code element (${lines.length}) does not match the number of lines in the source (${ctx.converter.lines.length}). Failed to apply decorations.`);\n function applyLineSection(line, start, end, decoration) {\n const lineEl = lines[line];\n let text = \"\";\n let startIndex = -1;\n let endIndex = -1;\n if (start === 0)\n startIndex = 0;\n if (end === 0)\n endIndex = 0;\n if (end === Number.POSITIVE_INFINITY)\n endIndex = lineEl.children.length;\n if (startIndex === -1 || endIndex === -1) {\n for (let i = 0; i < lineEl.children.length; i++) {\n text += stringify(lineEl.children[i]);\n if (startIndex === -1 && text.length === start)\n startIndex = i + 1;\n if (endIndex === -1 && text.length === end)\n endIndex = i + 1;\n }\n }\n if (startIndex === -1)\n throw new ShikiError(`Failed to find start index for decoration ${JSON.stringify(decoration.start)}`);\n if (endIndex === -1)\n throw new ShikiError(`Failed to find end index for decoration ${JSON.stringify(decoration.end)}`);\n const children = lineEl.children.slice(startIndex, endIndex);\n if (!decoration.alwaysWrap && children.length === lineEl.children.length) {\n applyDecoration(lineEl, decoration, \"line\");\n } else if (!decoration.alwaysWrap && children.length === 1 && children[0].type === \"element\") {\n applyDecoration(children[0], decoration, \"token\");\n } else {\n const wrapper = {\n type: \"element\",\n tagName: \"span\",\n properties: {},\n children\n };\n applyDecoration(wrapper, decoration, \"wrapper\");\n lineEl.children.splice(startIndex, children.length, wrapper);\n }\n }\n function applyLine(line, decoration) {\n lines[line] = applyDecoration(lines[line], decoration, \"line\");\n }\n function applyDecoration(el, decoration, type) {\n const properties = decoration.properties || {};\n const transform = decoration.transform || ((i) => i);\n el.tagName = decoration.tagName || \"span\";\n el.properties = {\n ...el.properties,\n ...properties,\n class: el.properties.class\n };\n if (decoration.properties?.class)\n addClassToHast(el, decoration.properties.class);\n el = transform(el, type) || el;\n return el;\n }\n const lineApplies = [];\n const sorted = ctx.decorations.sort((a, b) => b.start.offset - a.start.offset);\n for (const decoration of sorted) {\n const { start, end } = decoration;\n if (start.line === end.line) {\n applyLineSection(start.line, start.character, end.character, decoration);\n } else if (start.line < end.line) {\n applyLineSection(start.line, start.character, Number.POSITIVE_INFINITY, decoration);\n for (let i = start.line + 1; i < end.line; i++)\n lineApplies.unshift(() => applyLine(i, decoration));\n applyLineSection(end.line, 0, end.character, decoration);\n }\n }\n lineApplies.forEach((i) => i());\n }\n };\n}\nfunction verifyIntersections(items) {\n for (let i = 0; i < items.length; i++) {\n const foo = items[i];\n if (foo.start.offset > foo.end.offset)\n throw new ShikiError(`Invalid decoration range: ${JSON.stringify(foo.start)} - ${JSON.stringify(foo.end)}`);\n for (let j = i + 1; j < items.length; j++) {\n const bar = items[j];\n const isFooHasBarStart = foo.start.offset < bar.start.offset && bar.start.offset < foo.end.offset;\n const isFooHasBarEnd = foo.start.offset < bar.end.offset && bar.end.offset < foo.end.offset;\n const isBarHasFooStart = bar.start.offset < foo.start.offset && foo.start.offset < bar.end.offset;\n const isBarHasFooEnd = bar.start.offset < foo.end.offset && foo.end.offset < bar.end.offset;\n if (isFooHasBarStart || isFooHasBarEnd || isBarHasFooStart || isBarHasFooEnd) {\n if (isFooHasBarEnd && isFooHasBarEnd)\n continue;\n if (isBarHasFooStart && isBarHasFooEnd)\n continue;\n throw new ShikiError(`Decorations ${JSON.stringify(foo.start)} and ${JSON.stringify(bar.start)} intersect.`);\n }\n }\n }\n}\nfunction stringify(el) {\n if (el.type === \"text\")\n return el.value;\n if (el.type === \"element\")\n return el.children.map(stringify).join(\"\");\n return \"\";\n}\n\nconst builtInTransformers = [\n /* @__PURE__ */ transformerDecorations()\n];\nfunction getTransformers(options) {\n return [\n ...options.transformers || [],\n ...builtInTransformers\n ];\n}\n\n// src/colors.ts\nvar namedColors = [\n \"black\",\n \"red\",\n \"green\",\n \"yellow\",\n \"blue\",\n \"magenta\",\n \"cyan\",\n \"white\",\n \"brightBlack\",\n \"brightRed\",\n \"brightGreen\",\n \"brightYellow\",\n \"brightBlue\",\n \"brightMagenta\",\n \"brightCyan\",\n \"brightWhite\"\n];\n\n// src/decorations.ts\nvar decorations = {\n 1: \"bold\",\n 2: \"dim\",\n 3: \"italic\",\n 4: \"underline\",\n 7: \"reverse\",\n 9: \"strikethrough\"\n};\n\n// src/parser.ts\nfunction findSequence(value, position) {\n const nextEscape = value.indexOf(\"\\x1B[\", position);\n if (nextEscape !== -1) {\n const nextClose = value.indexOf(\"m\", nextEscape);\n return {\n sequence: value.substring(nextEscape + 2, nextClose).split(\";\"),\n startPosition: nextEscape,\n position: nextClose + 1\n };\n }\n return {\n position: value.length\n };\n}\nfunction parseColor(sequence, index) {\n let offset = 1;\n const colorMode = sequence[index + offset++];\n let color;\n if (colorMode === \"2\") {\n const rgb = [\n sequence[index + offset++],\n sequence[index + offset++],\n sequence[index + offset]\n ].map((x) => Number.parseInt(x));\n if (rgb.length === 3 && !rgb.some((x) => Number.isNaN(x))) {\n color = {\n type: \"rgb\",\n rgb\n };\n }\n } else if (colorMode === \"5\") {\n const colorIndex = Number.parseInt(sequence[index + offset]);\n if (!Number.isNaN(colorIndex)) {\n color = { type: \"table\", index: Number(colorIndex) };\n }\n }\n return [offset, color];\n}\nfunction parseSequence(sequence) {\n const commands = [];\n for (let i = 0; i < sequence.length; i++) {\n const code = sequence[i];\n const codeInt = Number.parseInt(code);\n if (Number.isNaN(codeInt))\n continue;\n if (codeInt === 0) {\n commands.push({ type: \"resetAll\" });\n } else if (codeInt <= 9) {\n const decoration = decorations[codeInt];\n if (decoration) {\n commands.push({\n type: \"setDecoration\",\n value: decorations[codeInt]\n });\n }\n } else if (codeInt <= 29) {\n const decoration = decorations[codeInt - 20];\n if (decoration) {\n commands.push({\n type: \"resetDecoration\",\n value: decoration\n });\n }\n } else if (codeInt <= 37) {\n commands.push({\n type: \"setForegroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 30] }\n });\n } else if (codeInt === 38) {\n const [offset, color] = parseColor(sequence, i);\n if (color) {\n commands.push({\n type: \"setForegroundColor\",\n value: color\n });\n }\n i += offset;\n } else if (codeInt === 39) {\n commands.push({\n type: \"resetForegroundColor\"\n });\n } else if (codeInt <= 47) {\n commands.push({\n type: \"setBackgroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 40] }\n });\n } else if (codeInt === 48) {\n const [offset, color] = parseColor(sequence, i);\n if (color) {\n commands.push({\n type: \"setBackgroundColor\",\n value: color\n });\n }\n i += offset;\n } else if (codeInt === 49) {\n commands.push({\n type: \"resetBackgroundColor\"\n });\n } else if (codeInt >= 90 && codeInt <= 97) {\n commands.push({\n type: \"setForegroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 90 + 8] }\n });\n } else if (codeInt >= 100 && codeInt <= 107) {\n commands.push({\n type: \"setBackgroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 100 + 8] }\n });\n }\n }\n return commands;\n}\nfunction createAnsiSequenceParser() {\n let foreground = null;\n let background = null;\n let decorations2 = /* @__PURE__ */ new Set();\n return {\n parse(value) {\n const tokens = [];\n let position = 0;\n do {\n const findResult = findSequence(value, position);\n const text = findResult.sequence ? value.substring(position, findResult.startPosition) : value.substring(position);\n if (text.length > 0) {\n tokens.push({\n value: text,\n foreground,\n background,\n decorations: new Set(decorations2)\n });\n }\n if (findResult.sequence) {\n const commands = parseSequence(findResult.sequence);\n for (const styleToken of commands) {\n if (styleToken.type === \"resetAll\") {\n foreground = null;\n background = null;\n decorations2.clear();\n } else if (styleToken.type === \"resetForegroundColor\") {\n foreground = null;\n } else if (styleToken.type === \"resetBackgroundColor\") {\n background = null;\n } else if (styleToken.type === \"resetDecoration\") {\n decorations2.delete(styleToken.value);\n }\n }\n for (const styleToken of commands) {\n if (styleToken.type === \"setForegroundColor\") {\n foreground = styleToken.value;\n } else if (styleToken.type === \"setBackgroundColor\") {\n background = styleToken.value;\n } else if (styleToken.type === \"setDecoration\") {\n decorations2.add(styleToken.value);\n }\n }\n }\n position = findResult.position;\n } while (position < value.length);\n return tokens;\n }\n };\n}\n\n// src/palette.ts\nvar defaultNamedColorsMap = {\n black: \"#000000\",\n red: \"#bb0000\",\n green: \"#00bb00\",\n yellow: \"#bbbb00\",\n blue: \"#0000bb\",\n magenta: \"#ff00ff\",\n cyan: \"#00bbbb\",\n white: \"#eeeeee\",\n brightBlack: \"#555555\",\n brightRed: \"#ff5555\",\n brightGreen: \"#00ff00\",\n brightYellow: \"#ffff55\",\n brightBlue: \"#5555ff\",\n brightMagenta: \"#ff55ff\",\n brightCyan: \"#55ffff\",\n brightWhite: \"#ffffff\"\n};\nfunction createColorPalette(namedColorsMap = defaultNamedColorsMap) {\n function namedColor(name) {\n return namedColorsMap[name];\n }\n function rgbColor(rgb) {\n return `#${rgb.map((x) => Math.max(0, Math.min(x, 255)).toString(16).padStart(2, \"0\")).join(\"\")}`;\n }\n let colorTable;\n function getColorTable() {\n if (colorTable) {\n return colorTable;\n }\n colorTable = [];\n for (let i = 0; i < namedColors.length; i++) {\n colorTable.push(namedColor(namedColors[i]));\n }\n let levels = [0, 95, 135, 175, 215, 255];\n for (let r = 0; r < 6; r++) {\n for (let g = 0; g < 6; g++) {\n for (let b = 0; b < 6; b++) {\n colorTable.push(rgbColor([levels[r], levels[g], levels[b]]));\n }\n }\n }\n let level = 8;\n for (let i = 0; i < 24; i++, level += 10) {\n colorTable.push(rgbColor([level, level, level]));\n }\n return colorTable;\n }\n function tableColor(index) {\n return getColorTable()[index];\n }\n function value(color) {\n switch (color.type) {\n case \"named\":\n return namedColor(color.name);\n case \"rgb\":\n return rgbColor(color.rgb);\n case \"table\":\n return tableColor(color.index);\n }\n }\n return {\n value\n };\n}\n\nfunction tokenizeAnsiWithTheme(theme, fileContents, options) {\n const colorReplacements = resolveColorReplacements(theme, options);\n const lines = splitLines(fileContents);\n const colorPalette = createColorPalette(\n Object.fromEntries(\n namedColors.map((name) => [\n name,\n theme.colors?.[`terminal.ansi${name[0].toUpperCase()}${name.substring(1)}`]\n ])\n )\n );\n const parser = createAnsiSequenceParser();\n return lines.map(\n (line) => parser.parse(line[0]).map((token) => {\n let color;\n let bgColor;\n if (token.decorations.has(\"reverse\")) {\n color = token.background ? colorPalette.value(token.background) : theme.bg;\n bgColor = token.foreground ? colorPalette.value(token.foreground) : theme.fg;\n } else {\n color = token.foreground ? colorPalette.value(token.foreground) : theme.fg;\n bgColor = token.background ? colorPalette.value(token.background) : void 0;\n }\n color = applyColorReplacements(color, colorReplacements);\n bgColor = applyColorReplacements(bgColor, colorReplacements);\n if (token.decorations.has(\"dim\"))\n color = dimColor(color);\n let fontStyle = FontStyle.None;\n if (token.decorations.has(\"bold\"))\n fontStyle |= FontStyle.Bold;\n if (token.decorations.has(\"italic\"))\n fontStyle |= FontStyle.Italic;\n if (token.decorations.has(\"underline\"))\n fontStyle |= FontStyle.Underline;\n return {\n content: token.value,\n offset: line[1],\n // TODO: more accurate offset? might need to fork ansi-sequence-parser\n color,\n bgColor,\n fontStyle\n };\n })\n );\n}\nfunction dimColor(color) {\n const hexMatch = color.match(/#([0-9a-f]{3})([0-9a-f]{3})?([0-9a-f]{2})?/);\n if (hexMatch) {\n if (hexMatch[3]) {\n const alpha = Math.round(Number.parseInt(hexMatch[3], 16) / 2).toString(16).padStart(2, \"0\");\n return `#${hexMatch[1]}${hexMatch[2]}${alpha}`;\n } else if (hexMatch[2]) {\n return `#${hexMatch[1]}${hexMatch[2]}80`;\n } else {\n return `#${Array.from(hexMatch[1]).map((x) => `${x}${x}`).join(\"\")}80`;\n }\n }\n const cssVarMatch = color.match(/var\\((--[\\w-]+-ansi-[\\w-]+)\\)/);\n if (cssVarMatch)\n return `var(${cssVarMatch[1]}-dim)`;\n return color;\n}\n\nfunction codeToTokensBase(internal, code, options = {}) {\n const {\n lang = \"text\",\n theme: themeName = internal.getLoadedThemes()[0]\n } = options;\n if (isPlainLang(lang) || isNoneTheme(themeName))\n return splitLines(code).map((line) => [{ content: line[0], offset: line[1] }]);\n const { theme, colorMap } = internal.setTheme(themeName);\n if (lang === \"ansi\")\n return tokenizeAnsiWithTheme(theme, code, options);\n const _grammar = internal.getLanguage(lang);\n if (options.grammarState) {\n if (options.grammarState.lang !== _grammar.name) {\n throw new ShikiError$1(`Grammar state language \"${options.grammarState.lang}\" does not match highlight language \"${_grammar.name}\"`);\n }\n if (!options.grammarState.themes.includes(theme.name)) {\n throw new ShikiError$1(`Grammar state themes \"${options.grammarState.themes}\" do not contain highlight theme \"${theme.name}\"`);\n }\n }\n return tokenizeWithTheme(code, _grammar, theme, colorMap, options);\n}\nfunction getLastGrammarState(...args) {\n if (args.length === 2) {\n return getLastGrammarStateFromMap(args[1]);\n }\n const [internal, code, options = {}] = args;\n const {\n lang = \"text\",\n theme: themeName = internal.getLoadedThemes()[0]\n } = options;\n if (isPlainLang(lang) || isNoneTheme(themeName))\n throw new ShikiError$1(\"Plain language does not have grammar state\");\n if (lang === \"ansi\")\n throw new ShikiError$1(\"ANSI language does not have grammar state\");\n const { theme, colorMap } = internal.setTheme(themeName);\n const _grammar = internal.getLanguage(lang);\n return new GrammarState(\n _tokenizeWithTheme(code, _grammar, theme, colorMap, options).stateStack,\n _grammar.name,\n theme.name\n );\n}\nfunction tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n const result = _tokenizeWithTheme(code, grammar, theme, colorMap, options);\n const grammarState = new GrammarState(\n _tokenizeWithTheme(code, grammar, theme, colorMap, options).stateStack,\n grammar.name,\n theme.name\n );\n setLastGrammarStateToMap(result.tokens, grammarState);\n return result.tokens;\n}\nfunction _tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n const colorReplacements = resolveColorReplacements(theme, options);\n const {\n tokenizeMaxLineLength = 0,\n tokenizeTimeLimit = 500\n } = options;\n const lines = splitLines(code);\n let stateStack = options.grammarState ? getGrammarStack(options.grammarState, theme.name) ?? INITIAL : options.grammarContextCode != null ? _tokenizeWithTheme(\n options.grammarContextCode,\n grammar,\n theme,\n colorMap,\n {\n ...options,\n grammarState: void 0,\n grammarContextCode: void 0\n }\n ).stateStack : INITIAL;\n let actual = [];\n const final = [];\n for (let i = 0, len = lines.length; i < len; i++) {\n const [line, lineOffset] = lines[i];\n if (line === \"\") {\n actual = [];\n final.push([]);\n continue;\n }\n if (tokenizeMaxLineLength > 0 && line.length >= tokenizeMaxLineLength) {\n actual = [];\n final.push([{\n content: line,\n offset: lineOffset,\n color: \"\",\n fontStyle: 0\n }]);\n continue;\n }\n let resultWithScopes;\n let tokensWithScopes;\n let tokensWithScopesIndex;\n if (options.includeExplanation) {\n resultWithScopes = grammar.tokenizeLine(line, stateStack);\n tokensWithScopes = resultWithScopes.tokens;\n tokensWithScopesIndex = 0;\n }\n const result = grammar.tokenizeLine2(line, stateStack, tokenizeTimeLimit);\n const tokensLength = result.tokens.length / 2;\n for (let j = 0; j < tokensLength; j++) {\n const startIndex = result.tokens[2 * j];\n const nextStartIndex = j + 1 < tokensLength ? result.tokens[2 * j + 2] : line.length;\n if (startIndex === nextStartIndex)\n continue;\n const metadata = result.tokens[2 * j + 1];\n const color = applyColorReplacements(\n colorMap[EncodedTokenMetadata.getForeground(metadata)],\n colorReplacements\n );\n const fontStyle = EncodedTokenMetadata.getFontStyle(metadata);\n const token = {\n content: line.substring(startIndex, nextStartIndex),\n offset: lineOffset + startIndex,\n color,\n fontStyle\n };\n if (options.includeExplanation) {\n const themeSettingsSelectors = [];\n if (options.includeExplanation !== \"scopeName\") {\n for (const setting of theme.settings) {\n let selectors;\n switch (typeof setting.scope) {\n case \"string\":\n selectors = setting.scope.split(/,/).map((scope) => scope.trim());\n break;\n case \"object\":\n selectors = setting.scope;\n break;\n default:\n continue;\n }\n themeSettingsSelectors.push({\n settings: setting,\n selectors: selectors.map((selector) => selector.split(/ /))\n });\n }\n }\n token.explanation = [];\n let offset = 0;\n while (startIndex + offset < nextStartIndex) {\n const tokenWithScopes = tokensWithScopes[tokensWithScopesIndex];\n const tokenWithScopesText = line.substring(\n tokenWithScopes.startIndex,\n tokenWithScopes.endIndex\n );\n offset += tokenWithScopesText.length;\n token.explanation.push({\n content: tokenWithScopesText,\n scopes: options.includeExplanation === \"scopeName\" ? explainThemeScopesNameOnly(\n tokenWithScopes.scopes\n ) : explainThemeScopesFull(\n themeSettingsSelectors,\n tokenWithScopes.scopes\n )\n });\n tokensWithScopesIndex += 1;\n }\n }\n actual.push(token);\n }\n final.push(actual);\n actual = [];\n stateStack = result.ruleStack;\n }\n return {\n tokens: final,\n stateStack\n };\n}\nfunction explainThemeScopesNameOnly(scopes) {\n return scopes.map((scope) => ({ scopeName: scope }));\n}\nfunction explainThemeScopesFull(themeSelectors, scopes) {\n const result = [];\n for (let i = 0, len = scopes.length; i < len; i++) {\n const scope = scopes[i];\n result[i] = {\n scopeName: scope,\n themeMatches: explainThemeScope(themeSelectors, scope, scopes.slice(0, i))\n };\n }\n return result;\n}\nfunction matchesOne(selector, scope) {\n return selector === scope || scope.substring(0, selector.length) === selector && scope[selector.length] === \".\";\n}\nfunction matches(selectors, scope, parentScopes) {\n if (!matchesOne(selectors[selectors.length - 1], scope))\n return false;\n let selectorParentIndex = selectors.length - 2;\n let parentIndex = parentScopes.length - 1;\n while (selectorParentIndex >= 0 && parentIndex >= 0) {\n if (matchesOne(selectors[selectorParentIndex], parentScopes[parentIndex]))\n selectorParentIndex -= 1;\n parentIndex -= 1;\n }\n if (selectorParentIndex === -1)\n return true;\n return false;\n}\nfunction explainThemeScope(themeSettingsSelectors, scope, parentScopes) {\n const result = [];\n for (const { selectors, settings } of themeSettingsSelectors) {\n for (const selectorPieces of selectors) {\n if (matches(selectorPieces, scope, parentScopes)) {\n result.push(settings);\n break;\n }\n }\n }\n return result;\n}\n\nfunction codeToTokensWithThemes(internal, code, options) {\n const themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] }));\n const themedTokens = themes.map((t) => {\n const tokens2 = codeToTokensBase(internal, code, {\n ...options,\n theme: t.theme\n });\n const state = getLastGrammarStateFromMap(tokens2);\n const theme = typeof t.theme === \"string\" ? t.theme : t.theme.name;\n return {\n tokens: tokens2,\n state,\n theme\n };\n });\n const tokens = syncThemesTokenization(\n ...themedTokens.map((i) => i.tokens)\n );\n const mergedTokens = tokens[0].map(\n (line, lineIdx) => line.map((_token, tokenIdx) => {\n const mergedToken = {\n content: _token.content,\n variants: {},\n offset: _token.offset\n };\n if (\"includeExplanation\" in options && options.includeExplanation) {\n mergedToken.explanation = _token.explanation;\n }\n tokens.forEach((t, themeIdx) => {\n const {\n content: _,\n explanation: __,\n offset: ___,\n ...styles\n } = t[lineIdx][tokenIdx];\n mergedToken.variants[themes[themeIdx].color] = styles;\n });\n return mergedToken;\n })\n );\n const mergedGrammarState = themedTokens[0].state ? new GrammarState(\n Object.fromEntries(themedTokens.map((s) => [s.theme, s.state?.getInternalStack(s.theme)])),\n themedTokens[0].state.lang\n ) : void 0;\n if (mergedGrammarState)\n setLastGrammarStateToMap(mergedTokens, mergedGrammarState);\n return mergedTokens;\n}\nfunction syncThemesTokenization(...themes) {\n const outThemes = themes.map(() => []);\n const count = themes.length;\n for (let i = 0; i < themes[0].length; i++) {\n const lines = themes.map((t) => t[i]);\n const outLines = outThemes.map(() => []);\n outThemes.forEach((t, i2) => t.push(outLines[i2]));\n const indexes = lines.map(() => 0);\n const current = lines.map((l) => l[0]);\n while (current.every((t) => t)) {\n const minLength = Math.min(...current.map((t) => t.content.length));\n for (let n = 0; n < count; n++) {\n const token = current[n];\n if (token.content.length === minLength) {\n outLines[n].push(token);\n indexes[n] += 1;\n current[n] = lines[n][indexes[n]];\n } else {\n outLines[n].push({\n ...token,\n content: token.content.slice(0, minLength)\n });\n current[n] = {\n ...token,\n content: token.content.slice(minLength),\n offset: token.offset + minLength\n };\n }\n }\n }\n }\n return outThemes;\n}\n\nfunction codeToTokens(internal, code, options) {\n let bg;\n let fg;\n let tokens;\n let themeName;\n let rootStyle;\n let grammarState;\n if (\"themes\" in options) {\n const {\n defaultColor = \"light\",\n cssVariablePrefix = \"--shiki-\"\n } = options;\n const themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] })).sort((a, b) => a.color === defaultColor ? -1 : b.color === defaultColor ? 1 : 0);\n if (themes.length === 0)\n throw new ShikiError$1(\"`themes` option must not be empty\");\n const themeTokens = codeToTokensWithThemes(\n internal,\n code,\n options\n );\n grammarState = getLastGrammarStateFromMap(themeTokens);\n if (defaultColor && !themes.find((t) => t.color === defaultColor))\n throw new ShikiError$1(`\\`themes\\` option must contain the defaultColor key \\`${defaultColor}\\``);\n const themeRegs = themes.map((t) => internal.getTheme(t.theme));\n const themesOrder = themes.map((t) => t.color);\n tokens = themeTokens.map((line) => line.map((token) => mergeToken(token, themesOrder, cssVariablePrefix, defaultColor)));\n if (grammarState)\n setLastGrammarStateToMap(tokens, grammarState);\n const themeColorReplacements = themes.map((t) => resolveColorReplacements(t.theme, options));\n fg = themes.map((t, idx) => (idx === 0 && defaultColor ? \"\" : `${cssVariablePrefix + t.color}:`) + (applyColorReplacements(themeRegs[idx].fg, themeColorReplacements[idx]) || \"inherit\")).join(\";\");\n bg = themes.map((t, idx) => (idx === 0 && defaultColor ? \"\" : `${cssVariablePrefix + t.color}-bg:`) + (applyColorReplacements(themeRegs[idx].bg, themeColorReplacements[idx]) || \"inherit\")).join(\";\");\n themeName = `shiki-themes ${themeRegs.map((t) => t.name).join(\" \")}`;\n rootStyle = defaultColor ? void 0 : [fg, bg].join(\";\");\n } else if (\"theme\" in options) {\n const colorReplacements = resolveColorReplacements(options.theme, options);\n tokens = codeToTokensBase(\n internal,\n code,\n options\n );\n const _theme = internal.getTheme(options.theme);\n bg = applyColorReplacements(_theme.bg, colorReplacements);\n fg = applyColorReplacements(_theme.fg, colorReplacements);\n themeName = _theme.name;\n grammarState = getLastGrammarStateFromMap(tokens);\n } else {\n throw new ShikiError$1(\"Invalid options, either `theme` or `themes` must be provided\");\n }\n return {\n tokens,\n fg,\n bg,\n themeName,\n rootStyle,\n grammarState\n };\n}\nfunction mergeToken(merged, variantsOrder, cssVariablePrefix, defaultColor) {\n const token = {\n content: merged.content,\n explanation: merged.explanation,\n offset: merged.offset\n };\n const styles = variantsOrder.map((t) => getTokenStyleObject(merged.variants[t]));\n const styleKeys = new Set(styles.flatMap((t) => Object.keys(t)));\n const mergedStyles = {};\n styles.forEach((cur, idx) => {\n for (const key of styleKeys) {\n const value = cur[key] || \"inherit\";\n if (idx === 0 && defaultColor) {\n mergedStyles[key] = value;\n } else {\n const keyName = key === \"color\" ? \"\" : key === \"background-color\" ? \"-bg\" : `-${key}`;\n const varKey = cssVariablePrefix + variantsOrder[idx] + (key === \"color\" ? \"\" : keyName);\n mergedStyles[varKey] = value;\n }\n }\n });\n token.htmlStyle = mergedStyles;\n return token;\n}\n\nfunction codeToHast(internal, code, options, transformerContext = {\n meta: {},\n options,\n codeToHast: (_code, _options) => codeToHast(internal, _code, _options),\n codeToTokens: (_code, _options) => codeToTokens(internal, _code, _options)\n}) {\n let input = code;\n for (const transformer of getTransformers(options))\n input = transformer.preprocess?.call(transformerContext, input, options) || input;\n let {\n tokens,\n fg,\n bg,\n themeName,\n rootStyle,\n grammarState\n } = codeToTokens(internal, input, options);\n const {\n mergeWhitespaces = true\n } = options;\n if (mergeWhitespaces === true)\n tokens = mergeWhitespaceTokens(tokens);\n else if (mergeWhitespaces === \"never\")\n tokens = splitWhitespaceTokens(tokens);\n const contextSource = {\n ...transformerContext,\n get source() {\n return input;\n }\n };\n for (const transformer of getTransformers(options))\n tokens = transformer.tokens?.call(contextSource, tokens) || tokens;\n return tokensToHast(\n tokens,\n {\n ...options,\n fg,\n bg,\n themeName,\n rootStyle\n },\n contextSource,\n grammarState\n );\n}\nfunction tokensToHast(tokens, options, transformerContext, grammarState = getLastGrammarStateFromMap(tokens)) {\n const transformers = getTransformers(options);\n const lines = [];\n const root = {\n type: \"root\",\n children: []\n };\n const {\n structure = \"classic\",\n tabindex = \"0\"\n } = options;\n let preNode = {\n type: \"element\",\n tagName: \"pre\",\n properties: {\n class: `shiki ${options.themeName || \"\"}`,\n style: options.rootStyle || `background-color:${options.bg};color:${options.fg}`,\n ...tabindex !== false && tabindex != null ? {\n tabindex: tabindex.toString()\n } : {},\n ...Object.fromEntries(\n Array.from(\n Object.entries(options.meta || {})\n ).filter(([key]) => !key.startsWith(\"_\"))\n )\n },\n children: []\n };\n let codeNode = {\n type: \"element\",\n tagName: \"code\",\n properties: {},\n children: lines\n };\n const lineNodes = [];\n const context = {\n ...transformerContext,\n structure,\n addClassToHast,\n get source() {\n return transformerContext.source;\n },\n get tokens() {\n return tokens;\n },\n get options() {\n return options;\n },\n get root() {\n return root;\n },\n get pre() {\n return preNode;\n },\n get code() {\n return codeNode;\n },\n get lines() {\n return lineNodes;\n }\n };\n tokens.forEach((line, idx) => {\n if (idx) {\n if (structure === \"inline\")\n root.children.push({ type: \"element\", tagName: \"br\", properties: {}, children: [] });\n else if (structure === \"classic\")\n lines.push({ type: \"text\", value: \"\\n\" });\n }\n let lineNode = {\n type: \"element\",\n tagName: \"span\",\n properties: { class: \"line\" },\n children: []\n };\n let col = 0;\n for (const token of line) {\n let tokenNode = {\n type: \"element\",\n tagName: \"span\",\n properties: {\n ...token.htmlAttrs\n },\n children: [{ type: \"text\", value: token.content }]\n };\n if (typeof token.htmlStyle === \"string\")\n warnDeprecated(\"`htmlStyle` as a string is deprecated. Use an object instead.\");\n const style = stringifyTokenStyle(token.htmlStyle || getTokenStyleObject(token));\n if (style)\n tokenNode.properties.style = style;\n for (const transformer of transformers)\n tokenNode = transformer?.span?.call(context, tokenNode, idx + 1, col, lineNode, token) || tokenNode;\n if (structure === \"inline\")\n root.children.push(tokenNode);\n else if (structure === \"classic\")\n lineNode.children.push(tokenNode);\n col += token.content.length;\n }\n if (structure === \"classic\") {\n for (const transformer of transformers)\n lineNode = transformer?.line?.call(context, lineNode, idx + 1) || lineNode;\n lineNodes.push(lineNode);\n lines.push(lineNode);\n }\n });\n if (structure === \"classic\") {\n for (const transformer of transformers)\n codeNode = transformer?.code?.call(context, codeNode) || codeNode;\n preNode.children.push(codeNode);\n for (const transformer of transformers)\n preNode = transformer?.pre?.call(context, preNode) || preNode;\n root.children.push(preNode);\n }\n let result = root;\n for (const transformer of transformers)\n result = transformer?.root?.call(context, result) || result;\n if (grammarState)\n setLastGrammarStateToMap(result, grammarState);\n return result;\n}\nfunction mergeWhitespaceTokens(tokens) {\n return tokens.map((line) => {\n const newLine = [];\n let carryOnContent = \"\";\n let firstOffset = 0;\n line.forEach((token, idx) => {\n const isUnderline = token.fontStyle && token.fontStyle & FontStyle.Underline;\n const couldMerge = !isUnderline;\n if (couldMerge && token.content.match(/^\\s+$/) && line[idx + 1]) {\n if (!firstOffset)\n firstOffset = token.offset;\n carryOnContent += token.content;\n } else {\n if (carryOnContent) {\n if (couldMerge) {\n newLine.push({\n ...token,\n offset: firstOffset,\n content: carryOnContent + token.content\n });\n } else {\n newLine.push(\n {\n content: carryOnContent,\n offset: firstOffset\n },\n token\n );\n }\n firstOffset = 0;\n carryOnContent = \"\";\n } else {\n newLine.push(token);\n }\n }\n });\n return newLine;\n });\n}\nfunction splitWhitespaceTokens(tokens) {\n return tokens.map((line) => {\n return line.flatMap((token) => {\n if (token.content.match(/^\\s+$/))\n return token;\n const match = token.content.match(/^(\\s*)(.*?)(\\s*)$/);\n if (!match)\n return token;\n const [, leading, content, trailing] = match;\n if (!leading && !trailing)\n return token;\n const expanded = [{\n ...token,\n offset: token.offset + leading.length,\n content\n }];\n if (leading) {\n expanded.unshift({\n content: leading,\n offset: token.offset\n });\n }\n if (trailing) {\n expanded.push({\n content: trailing,\n offset: token.offset + leading.length + content.length\n });\n }\n return expanded;\n });\n });\n}\n\nfunction codeToHtml(internal, code, options) {\n const context = {\n meta: {},\n options,\n codeToHast: (_code, _options) => codeToHast(internal, _code, _options),\n codeToTokens: (_code, _options) => codeToTokens(internal, _code, _options)\n };\n let result = toHtml(codeToHast(internal, code, options, context));\n for (const transformer of getTransformers(options))\n result = transformer.postprocess?.call(context, result, options) || result;\n return result;\n}\n\nconst VSCODE_FALLBACK_EDITOR_FG = { light: \"#333333\", dark: \"#bbbbbb\" };\nconst VSCODE_FALLBACK_EDITOR_BG = { light: \"#fffffe\", dark: \"#1e1e1e\" };\nconst RESOLVED_KEY = \"__shiki_resolved\";\nfunction normalizeTheme(rawTheme) {\n if (rawTheme?.[RESOLVED_KEY])\n return rawTheme;\n const theme = {\n ...rawTheme\n };\n if (theme.tokenColors && !theme.settings) {\n theme.settings = theme.tokenColors;\n delete theme.tokenColors;\n }\n theme.type || (theme.type = \"dark\");\n theme.colorReplacements = { ...theme.colorReplacements };\n theme.settings || (theme.settings = []);\n let { bg, fg } = theme;\n if (!bg || !fg) {\n const globalSetting = theme.settings ? theme.settings.find((s) => !s.name && !s.scope) : void 0;\n if (globalSetting?.settings?.foreground)\n fg = globalSetting.settings.foreground;\n if (globalSetting?.settings?.background)\n bg = globalSetting.settings.background;\n if (!fg && theme?.colors?.[\"editor.foreground\"])\n fg = theme.colors[\"editor.foreground\"];\n if (!bg && theme?.colors?.[\"editor.background\"])\n bg = theme.colors[\"editor.background\"];\n if (!fg)\n fg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_FG.light : VSCODE_FALLBACK_EDITOR_FG.dark;\n if (!bg)\n bg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_BG.light : VSCODE_FALLBACK_EDITOR_BG.dark;\n theme.fg = fg;\n theme.bg = bg;\n }\n if (!(theme.settings[0] && theme.settings[0].settings && !theme.settings[0].scope)) {\n theme.settings.unshift({\n settings: {\n foreground: theme.fg,\n background: theme.bg\n }\n });\n }\n let replacementCount = 0;\n const replacementMap = /* @__PURE__ */ new Map();\n function getReplacementColor(value) {\n if (replacementMap.has(value))\n return replacementMap.get(value);\n replacementCount += 1;\n const hex = `#${replacementCount.toString(16).padStart(8, \"0\").toLowerCase()}`;\n if (theme.colorReplacements?.[`#${hex}`])\n return getReplacementColor(value);\n replacementMap.set(value, hex);\n return hex;\n }\n theme.settings = theme.settings.map((setting) => {\n const replaceFg = setting.settings?.foreground && !setting.settings.foreground.startsWith(\"#\");\n const replaceBg = setting.settings?.background && !setting.settings.background.startsWith(\"#\");\n if (!replaceFg && !replaceBg)\n return setting;\n const clone = {\n ...setting,\n settings: {\n ...setting.settings\n }\n };\n if (replaceFg) {\n const replacement = getReplacementColor(setting.settings.foreground);\n theme.colorReplacements[replacement] = setting.settings.foreground;\n clone.settings.foreground = replacement;\n }\n if (replaceBg) {\n const replacement = getReplacementColor(setting.settings.background);\n theme.colorReplacements[replacement] = setting.settings.background;\n clone.settings.background = replacement;\n }\n return clone;\n });\n for (const key of Object.keys(theme.colors || {})) {\n if (key === \"editor.foreground\" || key === \"editor.background\" || key.startsWith(\"terminal.ansi\")) {\n if (!theme.colors[key]?.startsWith(\"#\")) {\n const replacement = getReplacementColor(theme.colors[key]);\n theme.colorReplacements[replacement] = theme.colors[key];\n theme.colors[key] = replacement;\n }\n }\n }\n Object.defineProperty(theme, RESOLVED_KEY, {\n enumerable: false,\n writable: false,\n value: true\n });\n return theme;\n}\n\nasync function resolveLangs(langs) {\n return Array.from(new Set((await Promise.all(\n langs.filter((l) => !isSpecialLang(l)).map(async (lang) => await normalizeGetter(lang).then((r) => Array.isArray(r) ? r : [r]))\n )).flat()));\n}\nasync function resolveThemes(themes) {\n const resolved = await Promise.all(\n themes.map(\n async (theme) => isSpecialTheme(theme) ? null : normalizeTheme(await normalizeGetter(theme))\n )\n );\n return resolved.filter((i) => !!i);\n}\n\nvar __defProp$1 = Object.defineProperty;\nvar __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField$1 = (obj, key, value) => {\n __defNormalProp$1(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass Registry extends Registry$1 {\n constructor(_resolver, _themes, _langs, _alias = {}) {\n super(_resolver);\n this._resolver = _resolver;\n this._themes = _themes;\n this._langs = _langs;\n this._alias = _alias;\n __publicField$1(this, \"_resolvedThemes\", /* @__PURE__ */ new Map());\n __publicField$1(this, \"_resolvedGrammars\", /* @__PURE__ */ new Map());\n __publicField$1(this, \"_langMap\", /* @__PURE__ */ new Map());\n __publicField$1(this, \"_langGraph\", /* @__PURE__ */ new Map());\n __publicField$1(this, \"_textmateThemeCache\", /* @__PURE__ */ new WeakMap());\n __publicField$1(this, \"_loadedThemesCache\", null);\n __publicField$1(this, \"_loadedLanguagesCache\", null);\n this._themes.map((t) => this.loadTheme(t));\n this.loadLanguages(this._langs);\n }\n getTheme(theme) {\n if (typeof theme === \"string\")\n return this._resolvedThemes.get(theme);\n else\n return this.loadTheme(theme);\n }\n loadTheme(theme) {\n const _theme = normalizeTheme(theme);\n if (_theme.name) {\n this._resolvedThemes.set(_theme.name, _theme);\n this._loadedThemesCache = null;\n }\n return _theme;\n }\n getLoadedThemes() {\n if (!this._loadedThemesCache)\n this._loadedThemesCache = [...this._resolvedThemes.keys()];\n return this._loadedThemesCache;\n }\n // Override and re-implement this method to cache the textmate themes as `TextMateTheme.createFromRawTheme`\n // is expensive. Themes can switch often especially for dual-theme support.\n //\n // The parent class also accepts `colorMap` as the second parameter, but since we don't use that,\n // we omit here so it's easier to cache the themes.\n setTheme(theme) {\n let textmateTheme = this._textmateThemeCache.get(theme);\n if (!textmateTheme) {\n textmateTheme = Theme.createFromRawTheme(theme);\n this._textmateThemeCache.set(theme, textmateTheme);\n }\n this._syncRegistry.setTheme(textmateTheme);\n }\n getGrammar(name) {\n if (this._alias[name]) {\n const resolved = /* @__PURE__ */ new Set([name]);\n while (this._alias[name]) {\n name = this._alias[name];\n if (resolved.has(name))\n throw new ShikiError(`Circular alias \\`${Array.from(resolved).join(\" -> \")} -> ${name}\\``);\n resolved.add(name);\n }\n }\n return this._resolvedGrammars.get(name);\n }\n loadLanguage(lang) {\n if (this.getGrammar(lang.name))\n return;\n const embeddedLazilyBy = new Set(\n [...this._langMap.values()].filter((i) => i.embeddedLangsLazy?.includes(lang.name))\n );\n this._resolver.addLanguage(lang);\n const grammarConfig = {\n balancedBracketSelectors: lang.balancedBracketSelectors || [\"*\"],\n unbalancedBracketSelectors: lang.unbalancedBracketSelectors || []\n };\n this._syncRegistry._rawGrammars.set(lang.scopeName, lang);\n const g = this.loadGrammarWithConfiguration(lang.scopeName, 1, grammarConfig);\n g.name = lang.name;\n this._resolvedGrammars.set(lang.name, g);\n if (lang.aliases) {\n lang.aliases.forEach((alias) => {\n this._alias[alias] = lang.name;\n });\n }\n this._loadedLanguagesCache = null;\n if (embeddedLazilyBy.size) {\n for (const e of embeddedLazilyBy) {\n this._resolvedGrammars.delete(e.name);\n this._loadedLanguagesCache = null;\n this._syncRegistry?._injectionGrammars?.delete(e.scopeName);\n this._syncRegistry?._grammars?.delete(e.scopeName);\n this.loadLanguage(this._langMap.get(e.name));\n }\n }\n }\n dispose() {\n super.dispose();\n this._resolvedThemes.clear();\n this._resolvedGrammars.clear();\n this._langMap.clear();\n this._langGraph.clear();\n this._loadedThemesCache = null;\n }\n loadLanguages(langs) {\n for (const lang of langs)\n this.resolveEmbeddedLanguages(lang);\n const langsGraphArray = Array.from(this._langGraph.entries());\n const missingLangs = langsGraphArray.filter(([_, lang]) => !lang);\n if (missingLangs.length) {\n const dependents = langsGraphArray.filter(([_, lang]) => lang && lang.embeddedLangs?.some((l) => missingLangs.map(([name]) => name).includes(l))).filter((lang) => !missingLangs.includes(lang));\n throw new ShikiError(`Missing languages ${missingLangs.map(([name]) => `\\`${name}\\``).join(\", \")}, required by ${dependents.map(([name]) => `\\`${name}\\``).join(\", \")}`);\n }\n for (const [_, lang] of langsGraphArray)\n this._resolver.addLanguage(lang);\n for (const [_, lang] of langsGraphArray)\n this.loadLanguage(lang);\n }\n getLoadedLanguages() {\n if (!this._loadedLanguagesCache) {\n this._loadedLanguagesCache = [\n .../* @__PURE__ */ new Set([...this._resolvedGrammars.keys(), ...Object.keys(this._alias)])\n ];\n }\n return this._loadedLanguagesCache;\n }\n resolveEmbeddedLanguages(lang) {\n this._langMap.set(lang.name, lang);\n this._langGraph.set(lang.name, lang);\n if (lang.embeddedLangs) {\n for (const embeddedLang of lang.embeddedLangs)\n this._langGraph.set(embeddedLang, this._langMap.get(embeddedLang));\n }\n }\n}\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass Resolver {\n constructor(engine, langs) {\n __publicField(this, \"_langs\", /* @__PURE__ */ new Map());\n __publicField(this, \"_scopeToLang\", /* @__PURE__ */ new Map());\n __publicField(this, \"_injections\", /* @__PURE__ */ new Map());\n __publicField(this, \"_onigLib\");\n this._onigLib = {\n createOnigScanner: (patterns) => engine.createScanner(patterns),\n createOnigString: (s) => engine.createString(s)\n };\n langs.forEach((i) => this.addLanguage(i));\n }\n get onigLib() {\n return this._onigLib;\n }\n getLangRegistration(langIdOrAlias) {\n return this._langs.get(langIdOrAlias);\n }\n loadGrammar(scopeName) {\n return this._scopeToLang.get(scopeName);\n }\n addLanguage(l) {\n this._langs.set(l.name, l);\n if (l.aliases) {\n l.aliases.forEach((a) => {\n this._langs.set(a, l);\n });\n }\n this._scopeToLang.set(l.scopeName, l);\n if (l.injectTo) {\n l.injectTo.forEach((i) => {\n if (!this._injections.get(i))\n this._injections.set(i, []);\n this._injections.get(i).push(l.scopeName);\n });\n }\n }\n getInjections(scopeName) {\n const scopeParts = scopeName.split(\".\");\n let injections = [];\n for (let i = 1; i <= scopeParts.length; i++) {\n const subScopeName = scopeParts.slice(0, i).join(\".\");\n injections = [...injections, ...this._injections.get(subScopeName) || []];\n }\n return injections;\n }\n}\n\nlet instancesCount = 0;\nfunction createShikiInternalSync(options) {\n instancesCount += 1;\n if (options.warnings !== false && instancesCount >= 10 && instancesCount % 10 === 0)\n console.warn(`[Shiki] ${instancesCount} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \\`highlighter.dispose()\\` to release unused instances.`);\n let isDisposed = false;\n if (!options.engine)\n throw new ShikiError(\"`engine` option is required for synchronous mode\");\n const langs = (options.langs || []).flat(1);\n const themes = (options.themes || []).flat(1).map(normalizeTheme);\n const resolver = new Resolver(options.engine, langs);\n const _registry = new Registry(resolver, themes, langs, options.langAlias);\n let _lastTheme;\n function getLanguage(name) {\n ensureNotDisposed();\n const _lang = _registry.getGrammar(typeof name === \"string\" ? name : name.name);\n if (!_lang)\n throw new ShikiError(`Language \\`${name}\\` not found, you may need to load it first`);\n return _lang;\n }\n function getTheme(name) {\n if (name === \"none\")\n return { bg: \"\", fg: \"\", name: \"none\", settings: [], type: \"dark\" };\n ensureNotDisposed();\n const _theme = _registry.getTheme(name);\n if (!_theme)\n throw new ShikiError(`Theme \\`${name}\\` not found, you may need to load it first`);\n return _theme;\n }\n function setTheme(name) {\n ensureNotDisposed();\n const theme = getTheme(name);\n if (_lastTheme !== name) {\n _registry.setTheme(theme);\n _lastTheme = name;\n }\n const colorMap = _registry.getColorMap();\n return {\n theme,\n colorMap\n };\n }\n function getLoadedThemes() {\n ensureNotDisposed();\n return _registry.getLoadedThemes();\n }\n function getLoadedLanguages() {\n ensureNotDisposed();\n return _registry.getLoadedLanguages();\n }\n function loadLanguageSync(...langs2) {\n ensureNotDisposed();\n _registry.loadLanguages(langs2.flat(1));\n }\n async function loadLanguage(...langs2) {\n return loadLanguageSync(await resolveLangs(langs2));\n }\n function loadThemeSync(...themes2) {\n ensureNotDisposed();\n for (const theme of themes2.flat(1)) {\n _registry.loadTheme(theme);\n }\n }\n async function loadTheme(...themes2) {\n ensureNotDisposed();\n return loadThemeSync(await resolveThemes(themes2));\n }\n function ensureNotDisposed() {\n if (isDisposed)\n throw new ShikiError(\"Shiki instance has been disposed\");\n }\n function dispose() {\n if (isDisposed)\n return;\n isDisposed = true;\n _registry.dispose();\n instancesCount -= 1;\n }\n return {\n setTheme,\n getTheme,\n getLanguage,\n getLoadedThemes,\n getLoadedLanguages,\n loadLanguage,\n loadLanguageSync,\n loadTheme,\n loadThemeSync,\n dispose,\n [Symbol.dispose]: dispose\n };\n}\n\nasync function createShikiInternal(options = {}) {\n if (options.loadWasm) {\n warnDeprecated(\"`loadWasm` option is deprecated. Use `engine: createOnigurumaEngine(loadWasm)` instead.\");\n }\n const [\n themes,\n langs,\n engine\n ] = await Promise.all([\n resolveThemes(options.themes || []),\n resolveLangs(options.langs || []),\n options.engine || createOnigurumaEngine$1(options.loadWasm || getDefaultWasmLoader())\n ]);\n return createShikiInternalSync({\n ...options,\n loadWasm: void 0,\n themes,\n langs,\n engine\n });\n}\nfunction getShikiInternal(options = {}) {\n warnDeprecated(\"`getShikiInternal` is deprecated. Use `createShikiInternal` instead.\");\n return createShikiInternal(options);\n}\n\nasync function createHighlighterCore(options = {}) {\n const internal = await createShikiInternal(options);\n return {\n getLastGrammarState: (...args) => getLastGrammarState(internal, ...args),\n codeToTokensBase: (code, options2) => codeToTokensBase(internal, code, options2),\n codeToTokensWithThemes: (code, options2) => codeToTokensWithThemes(internal, code, options2),\n codeToTokens: (code, options2) => codeToTokens(internal, code, options2),\n codeToHast: (code, options2) => codeToHast(internal, code, options2),\n codeToHtml: (code, options2) => codeToHtml(internal, code, options2),\n ...internal,\n getInternalContext: () => internal\n };\n}\nfunction createHighlighterCoreSync(options = {}) {\n const internal = createShikiInternalSync(options);\n return {\n getLastGrammarState: (...args) => getLastGrammarState(internal, ...args),\n codeToTokensBase: (code, options2) => codeToTokensBase(internal, code, options2),\n codeToTokensWithThemes: (code, options2) => codeToTokensWithThemes(internal, code, options2),\n codeToTokens: (code, options2) => codeToTokens(internal, code, options2),\n codeToHast: (code, options2) => codeToHast(internal, code, options2),\n codeToHtml: (code, options2) => codeToHtml(internal, code, options2),\n ...internal,\n getInternalContext: () => internal\n };\n}\nfunction makeSingletonHighlighterCore(createHighlighter) {\n let _shiki;\n async function getSingletonHighlighterCore2(options = {}) {\n if (!_shiki) {\n _shiki = createHighlighter({\n ...options,\n themes: options.themes || [],\n langs: options.langs || []\n });\n return _shiki;\n } else {\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n }\n }\n return getSingletonHighlighterCore2;\n}\nconst getSingletonHighlighterCore = /* @__PURE__ */ makeSingletonHighlighterCore(createHighlighterCore);\nfunction getHighlighterCore(options = {}) {\n warnDeprecated(\"`getHighlighterCore` is deprecated. Use `createHighlighterCore` or `getSingletonHighlighterCore` instead.\");\n return createHighlighterCore(options);\n}\n\nfunction createdBundledHighlighter(arg1, arg2, arg3) {\n let bundledLanguages;\n let bundledThemes;\n let engine;\n if (arg2) {\n warnDeprecated(\"`createdBundledHighlighter` signature with `bundledLanguages` and `bundledThemes` is deprecated. Use the options object signature instead.\");\n bundledLanguages = arg1;\n bundledThemes = arg2;\n engine = () => createOnigurumaEngine(arg3);\n } else {\n const options = arg1;\n bundledLanguages = options.langs;\n bundledThemes = options.themes;\n engine = options.engine;\n }\n async function createHighlighter(options) {\n function resolveLang(lang) {\n if (typeof lang === \"string\") {\n if (isSpecialLang(lang))\n return [];\n const bundle = bundledLanguages[lang];\n if (!bundle)\n throw new ShikiError$1(`Language \\`${lang}\\` is not included in this bundle. You may want to load it from external source.`);\n return bundle;\n }\n return lang;\n }\n function resolveTheme(theme) {\n if (isSpecialTheme(theme))\n return \"none\";\n if (typeof theme === \"string\") {\n const bundle = bundledThemes[theme];\n if (!bundle)\n throw new ShikiError$1(`Theme \\`${theme}\\` is not included in this bundle. You may want to load it from external source.`);\n return bundle;\n }\n return theme;\n }\n const _themes = (options.themes ?? []).map((i) => resolveTheme(i));\n const langs = (options.langs ?? []).map((i) => resolveLang(i));\n const core = await createHighlighterCore({\n engine: options.engine ?? engine(),\n ...options,\n themes: _themes,\n langs\n });\n return {\n ...core,\n loadLanguage(...langs2) {\n return core.loadLanguage(...langs2.map(resolveLang));\n },\n loadTheme(...themes) {\n return core.loadTheme(...themes.map(resolveTheme));\n }\n };\n }\n return createHighlighter;\n}\nfunction makeSingletonHighlighter(createHighlighter) {\n let _shiki;\n async function getSingletonHighlighter(options = {}) {\n if (!_shiki) {\n _shiki = createHighlighter({\n ...options,\n themes: options.themes || [],\n langs: options.langs || []\n });\n return _shiki;\n } else {\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n }\n }\n return getSingletonHighlighter;\n}\nfunction createSingletonShorthands(createHighlighter) {\n const getSingletonHighlighter = makeSingletonHighlighter(createHighlighter);\n return {\n getSingletonHighlighter(options) {\n return getSingletonHighlighter(options);\n },\n async codeToHtml(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToHtml(code, options);\n },\n async codeToHast(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToHast(code, options);\n },\n async codeToTokens(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToTokens(code, options);\n },\n async codeToTokensBase(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: [options.theme]\n });\n return shiki.codeToTokensBase(code, options);\n },\n async codeToTokensWithThemes(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: Object.values(options.themes).filter(Boolean)\n });\n return shiki.codeToTokensWithThemes(code, options);\n },\n async getLastGrammarState(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: [options.theme]\n });\n return shiki.getLastGrammarState(code, options);\n }\n };\n}\n\nfunction createJavaScriptRegexEngine(options) {\n warnDeprecated(\"import `createJavaScriptRegexEngine` from `@shikijs/engine-javascript` or `shiki/engine/javascript` instead\");\n return createJavaScriptRegexEngine$1(options);\n}\nfunction defaultJavaScriptRegexConstructor(pattern) {\n warnDeprecated(\"import `defaultJavaScriptRegexConstructor` from `@shikijs/engine-javascript` or `shiki/engine/javascript` instead\");\n return defaultJavaScriptRegexConstructor$1(pattern);\n}\n\nfunction createCssVariablesTheme(options = {}) {\n const {\n name = \"css-variables\",\n variablePrefix = \"--shiki-\",\n fontStyle = true\n } = options;\n const variable = (name2) => {\n if (options.variableDefaults?.[name2])\n return `var(${variablePrefix}${name2}, ${options.variableDefaults[name2]})`;\n return `var(${variablePrefix}${name2})`;\n };\n const theme = {\n name,\n type: \"dark\",\n colors: {\n \"editor.foreground\": variable(\"foreground\"),\n \"editor.background\": variable(\"background\"),\n \"terminal.ansiBlack\": variable(\"ansi-black\"),\n \"terminal.ansiRed\": variable(\"ansi-red\"),\n \"terminal.ansiGreen\": variable(\"ansi-green\"),\n \"terminal.ansiYellow\": variable(\"ansi-yellow\"),\n \"terminal.ansiBlue\": variable(\"ansi-blue\"),\n \"terminal.ansiMagenta\": variable(\"ansi-magenta\"),\n \"terminal.ansiCyan\": variable(\"ansi-cyan\"),\n \"terminal.ansiWhite\": variable(\"ansi-white\"),\n \"terminal.ansiBrightBlack\": variable(\"ansi-bright-black\"),\n \"terminal.ansiBrightRed\": variable(\"ansi-bright-red\"),\n \"terminal.ansiBrightGreen\": variable(\"ansi-bright-green\"),\n \"terminal.ansiBrightYellow\": variable(\"ansi-bright-yellow\"),\n \"terminal.ansiBrightBlue\": variable(\"ansi-bright-blue\"),\n \"terminal.ansiBrightMagenta\": variable(\"ansi-bright-magenta\"),\n \"terminal.ansiBrightCyan\": variable(\"ansi-bright-cyan\"),\n \"terminal.ansiBrightWhite\": variable(\"ansi-bright-white\")\n },\n tokenColors: [\n {\n scope: [\n \"keyword.operator.accessor\",\n \"meta.group.braces.round.function.arguments\",\n \"meta.template.expression\",\n \"markup.fenced_code meta.embedded.block\"\n ],\n settings: {\n foreground: variable(\"foreground\")\n }\n },\n {\n scope: \"emphasis\",\n settings: {\n fontStyle: \"italic\"\n }\n },\n {\n scope: [\"strong\", \"markup.heading.markdown\", \"markup.bold.markdown\"],\n settings: {\n fontStyle: \"bold\"\n }\n },\n {\n scope: [\"markup.italic.markdown\"],\n settings: {\n fontStyle: \"italic\"\n }\n },\n {\n scope: \"meta.link.inline.markdown\",\n settings: {\n fontStyle: \"underline\",\n foreground: variable(\"token-link\")\n }\n },\n {\n scope: [\"string\", \"markup.fenced_code\", \"markup.inline\"],\n settings: {\n foreground: variable(\"token-string\")\n }\n },\n {\n scope: [\"comment\", \"string.quoted.docstring.multi\"],\n settings: {\n foreground: variable(\"token-comment\")\n }\n },\n {\n scope: [\n \"constant.numeric\",\n \"constant.language\",\n \"constant.other.placeholder\",\n \"constant.character.format.placeholder\",\n \"variable.language.this\",\n \"variable.other.object\",\n \"variable.other.class\",\n \"variable.other.constant\",\n \"meta.property-name\",\n \"meta.property-value\",\n \"support\"\n ],\n settings: {\n foreground: variable(\"token-constant\")\n }\n },\n {\n scope: [\n \"keyword\",\n \"storage.modifier\",\n \"storage.type\",\n \"storage.control.clojure\",\n \"entity.name.function.clojure\",\n \"entity.name.tag.yaml\",\n \"support.function.node\",\n \"support.type.property-name.json\",\n \"punctuation.separator.key-value\",\n \"punctuation.definition.template-expression\"\n ],\n settings: {\n foreground: variable(\"token-keyword\")\n }\n },\n {\n scope: \"variable.parameter.function\",\n settings: {\n foreground: variable(\"token-parameter\")\n }\n },\n {\n scope: [\n \"support.function\",\n \"entity.name.type\",\n \"entity.other.inherited-class\",\n \"meta.function-call\",\n \"meta.instance.constructor\",\n \"entity.other.attribute-name\",\n \"entity.name.function\",\n \"constant.keyword.clojure\"\n ],\n settings: {\n foreground: variable(\"token-function\")\n }\n },\n {\n scope: [\n \"entity.name.tag\",\n \"string.quoted\",\n \"string.regexp\",\n \"string.interpolated\",\n \"string.template\",\n \"string.unquoted.plain.out.yaml\",\n \"keyword.other.template\"\n ],\n settings: {\n foreground: variable(\"token-string-expression\")\n }\n },\n {\n scope: [\n \"punctuation.definition.arguments\",\n \"punctuation.definition.dict\",\n \"punctuation.separator\",\n \"meta.function-call.arguments\"\n ],\n settings: {\n foreground: variable(\"token-punctuation\")\n }\n },\n {\n // [Custom] Markdown links\n scope: [\n \"markup.underline.link\",\n \"punctuation.definition.metadata.markdown\"\n ],\n settings: {\n foreground: variable(\"token-link\")\n }\n },\n {\n // [Custom] Markdown list\n scope: [\"beginning.punctuation.definition.list.markdown\"],\n settings: {\n foreground: variable(\"token-string\")\n }\n },\n {\n // [Custom] Markdown punctuation definition brackets\n scope: [\n \"punctuation.definition.string.begin.markdown\",\n \"punctuation.definition.string.end.markdown\",\n \"string.other.link.title.markdown\",\n \"string.other.link.description.markdown\"\n ],\n settings: {\n foreground: variable(\"token-keyword\")\n }\n },\n {\n // [Custom] Diff\n scope: [\n \"markup.inserted\",\n \"meta.diff.header.to-file\",\n \"punctuation.definition.inserted\"\n ],\n settings: {\n foreground: variable(\"token-inserted\")\n }\n },\n {\n scope: [\n \"markup.deleted\",\n \"meta.diff.header.from-file\",\n \"punctuation.definition.deleted\"\n ],\n settings: {\n foreground: variable(\"token-deleted\")\n }\n },\n {\n scope: [\n \"markup.changed\",\n \"punctuation.definition.changed\"\n ],\n settings: {\n foreground: variable(\"token-changed\")\n }\n }\n ]\n };\n if (!fontStyle) {\n theme.tokenColors = theme.tokenColors?.map((tokenColor) => {\n if (tokenColor.settings?.fontStyle)\n delete tokenColor.settings.fontStyle;\n return tokenColor;\n });\n }\n return theme;\n}\n\nexport { addClassToHast, applyColorReplacements, codeToHast, codeToHtml, codeToTokens, codeToTokensBase, codeToTokensWithThemes, createCssVariablesTheme, createHighlighterCore, createHighlighterCoreSync, createJavaScriptRegexEngine, createOnigurumaEngine, createPositionConverter, createShikiInternal, createShikiInternalSync, createSingletonShorthands, createWasmOnigEngine, createdBundledHighlighter, defaultJavaScriptRegexConstructor, getHighlighterCore, getShikiInternal, getSingletonHighlighterCore, getTokenStyleObject, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, loadWasm, makeSingletonHighlighter, makeSingletonHighlighterCore, normalizeGetter, normalizeTheme, resolveColorReplacements, splitLines, splitToken, splitTokens, stringifyTokenStyle, toArray, tokenizeAnsiWithTheme, tokenizeWithTheme, tokensToHast, transformerDecorations, warnDeprecated };\n","import { bundledLanguages } from './langs.mjs';\nexport { bundledLanguagesAlias, bundledLanguagesBase, bundledLanguagesInfo } from './langs.mjs';\nimport { bundledThemes } from './themes.mjs';\nexport { bundledThemesInfo } from './themes.mjs';\nexport { g as getWasmInlined } from './wasm-dynamic-K7LwWlz7.js';\nimport { createdBundledHighlighter, createSingletonShorthands, warnDeprecated } from '@shikijs/core';\nexport * from '@shikijs/core';\nimport { createOnigurumaEngine } from '@shikijs/engine-oniguruma';\n\nconst createHighlighter = /* @__PURE__ */ createdBundledHighlighter({\n langs: bundledLanguages,\n themes: bundledThemes,\n engine: () => createOnigurumaEngine(import('shiki/wasm'))\n});\nconst {\n codeToHtml,\n codeToHast,\n codeToTokens,\n codeToTokensBase,\n codeToTokensWithThemes,\n getSingletonHighlighter,\n getLastGrammarState\n} = /* @__PURE__ */ createSingletonShorthands(\n createHighlighter\n);\nconst getHighlighter = (options) => {\n warnDeprecated(\"`getHighlighter` is deprecated. Use `createHighlighter` or `getSingletonHighlighter` instead.\");\n return createHighlighter(options);\n};\n\nexport { bundledLanguages, bundledThemes, codeToHast, codeToHtml, codeToTokens, codeToTokensBase, codeToTokensWithThemes, createHighlighter, getHighlighter, getLastGrammarState, getSingletonHighlighter };\n","const bundledLanguagesInfo = [\n {\n \"id\": \"abap\",\n \"name\": \"ABAP\",\n \"import\": () => import('./langs/abap.mjs')\n },\n {\n \"id\": \"actionscript-3\",\n \"name\": \"ActionScript\",\n \"import\": () => import('./langs/actionscript-3.mjs')\n },\n {\n \"id\": \"ada\",\n \"name\": \"Ada\",\n \"import\": () => import('./langs/ada.mjs')\n },\n {\n \"id\": \"angular-html\",\n \"name\": \"Angular HTML\",\n \"import\": () => import('./langs/angular-html.mjs')\n },\n {\n \"id\": \"angular-ts\",\n \"name\": \"Angular TypeScript\",\n \"import\": () => import('./langs/angular-ts.mjs')\n },\n {\n \"id\": \"apache\",\n \"name\": \"Apache Conf\",\n \"import\": () => import('./langs/apache.mjs')\n },\n {\n \"id\": \"apex\",\n \"name\": \"Apex\",\n \"import\": () => import('./langs/apex.mjs')\n },\n {\n \"id\": \"apl\",\n \"name\": \"APL\",\n \"import\": () => import('./langs/apl.mjs')\n },\n {\n \"id\": \"applescript\",\n \"name\": \"AppleScript\",\n \"import\": () => import('./langs/applescript.mjs')\n },\n {\n \"id\": \"ara\",\n \"name\": \"Ara\",\n \"import\": () => import('./langs/ara.mjs')\n },\n {\n \"id\": \"asciidoc\",\n \"name\": \"AsciiDoc\",\n \"aliases\": [\n \"adoc\"\n ],\n \"import\": () => import('./langs/asciidoc.mjs')\n },\n {\n \"id\": \"asm\",\n \"name\": \"Assembly\",\n \"import\": () => import('./langs/asm.mjs')\n },\n {\n \"id\": \"astro\",\n \"name\": \"Astro\",\n \"import\": () => import('./langs/astro.mjs')\n },\n {\n \"id\": \"awk\",\n \"name\": \"AWK\",\n \"import\": () => import('./langs/awk.mjs')\n },\n {\n \"id\": \"ballerina\",\n \"name\": \"Ballerina\",\n \"import\": () => import('./langs/ballerina.mjs')\n },\n {\n \"id\": \"bat\",\n \"name\": \"Batch File\",\n \"aliases\": [\n \"batch\"\n ],\n \"import\": () => import('./langs/bat.mjs')\n },\n {\n \"id\": \"beancount\",\n \"name\": \"Beancount\",\n \"import\": () => import('./langs/beancount.mjs')\n },\n {\n \"id\": \"berry\",\n \"name\": \"Berry\",\n \"aliases\": [\n \"be\"\n ],\n \"import\": () => import('./langs/berry.mjs')\n },\n {\n \"id\": \"bibtex\",\n \"name\": \"BibTeX\",\n \"import\": () => import('./langs/bibtex.mjs')\n },\n {\n \"id\": \"bicep\",\n \"name\": \"Bicep\",\n \"import\": () => import('./langs/bicep.mjs')\n },\n {\n \"id\": \"blade\",\n \"name\": \"Blade\",\n \"import\": () => import('./langs/blade.mjs')\n },\n {\n \"id\": \"c\",\n \"name\": \"C\",\n \"import\": () => import('./langs/c.mjs')\n },\n {\n \"id\": \"cadence\",\n \"name\": \"Cadence\",\n \"aliases\": [\n \"cdc\"\n ],\n \"import\": () => import('./langs/cadence.mjs')\n },\n {\n \"id\": \"clarity\",\n \"name\": \"Clarity\",\n \"import\": () => import('./langs/clarity.mjs')\n },\n {\n \"id\": \"clojure\",\n \"name\": \"Clojure\",\n \"aliases\": [\n \"clj\"\n ],\n \"import\": () => import('./langs/clojure.mjs')\n },\n {\n \"id\": \"cmake\",\n \"name\": \"CMake\",\n \"import\": () => import('./langs/cmake.mjs')\n },\n {\n \"id\": \"cobol\",\n \"name\": \"COBOL\",\n \"import\": () => import('./langs/cobol.mjs')\n },\n {\n \"id\": \"codeowners\",\n \"name\": \"CODEOWNERS\",\n \"import\": () => import('./langs/codeowners.mjs')\n },\n {\n \"id\": \"codeql\",\n \"name\": \"CodeQL\",\n \"aliases\": [\n \"ql\"\n ],\n \"import\": () => import('./langs/codeql.mjs')\n },\n {\n \"id\": \"coffee\",\n \"name\": \"CoffeeScript\",\n \"aliases\": [\n \"coffeescript\"\n ],\n \"import\": () => import('./langs/coffee.mjs')\n },\n {\n \"id\": \"common-lisp\",\n \"name\": \"Common Lisp\",\n \"aliases\": [\n \"lisp\"\n ],\n \"import\": () => import('./langs/common-lisp.mjs')\n },\n {\n \"id\": \"coq\",\n \"name\": \"Coq\",\n \"import\": () => import('./langs/coq.mjs')\n },\n {\n \"id\": \"cpp\",\n \"name\": \"C++\",\n \"aliases\": [\n \"c++\"\n ],\n \"import\": () => import('./langs/cpp.mjs')\n },\n {\n \"id\": \"crystal\",\n \"name\": \"Crystal\",\n \"import\": () => import('./langs/crystal.mjs')\n },\n {\n \"id\": \"csharp\",\n \"name\": \"C#\",\n \"aliases\": [\n \"c#\",\n \"cs\"\n ],\n \"import\": () => import('./langs/csharp.mjs')\n },\n {\n \"id\": \"css\",\n \"name\": \"CSS\",\n \"import\": () => import('./langs/css.mjs')\n },\n {\n \"id\": \"csv\",\n \"name\": \"CSV\",\n \"import\": () => import('./langs/csv.mjs')\n },\n {\n \"id\": \"cue\",\n \"name\": \"CUE\",\n \"import\": () => import('./langs/cue.mjs')\n },\n {\n \"id\": \"cypher\",\n \"name\": \"Cypher\",\n \"aliases\": [\n \"cql\"\n ],\n \"import\": () => import('./langs/cypher.mjs')\n },\n {\n \"id\": \"d\",\n \"name\": \"D\",\n \"import\": () => import('./langs/d.mjs')\n },\n {\n \"id\": \"dart\",\n \"name\": \"Dart\",\n \"import\": () => import('./langs/dart.mjs')\n },\n {\n \"id\": \"dax\",\n \"name\": \"DAX\",\n \"import\": () => import('./langs/dax.mjs')\n },\n {\n \"id\": \"desktop\",\n \"name\": \"Desktop\",\n \"import\": () => import('./langs/desktop.mjs')\n },\n {\n \"id\": \"diff\",\n \"name\": \"Diff\",\n \"import\": () => import('./langs/diff.mjs')\n },\n {\n \"id\": \"docker\",\n \"name\": \"Dockerfile\",\n \"aliases\": [\n \"dockerfile\"\n ],\n \"import\": () => import('./langs/docker.mjs')\n },\n {\n \"id\": \"dotenv\",\n \"name\": \"dotEnv\",\n \"import\": () => import('./langs/dotenv.mjs')\n },\n {\n \"id\": \"dream-maker\",\n \"name\": \"Dream Maker\",\n \"import\": () => import('./langs/dream-maker.mjs')\n },\n {\n \"id\": \"edge\",\n \"name\": \"Edge\",\n \"import\": () => import('./langs/edge.mjs')\n },\n {\n \"id\": \"elixir\",\n \"name\": \"Elixir\",\n \"import\": () => import('./langs/elixir.mjs')\n },\n {\n \"id\": \"elm\",\n \"name\": \"Elm\",\n \"import\": () => import('./langs/elm.mjs')\n },\n {\n \"id\": \"emacs-lisp\",\n \"name\": \"Emacs Lisp\",\n \"aliases\": [\n \"elisp\"\n ],\n \"import\": () => import('./langs/emacs-lisp.mjs')\n },\n {\n \"id\": \"erb\",\n \"name\": \"ERB\",\n \"import\": () => import('./langs/erb.mjs')\n },\n {\n \"id\": \"erlang\",\n \"name\": \"Erlang\",\n \"aliases\": [\n \"erl\"\n ],\n \"import\": () => import('./langs/erlang.mjs')\n },\n {\n \"id\": \"fennel\",\n \"name\": \"Fennel\",\n \"import\": () => import('./langs/fennel.mjs')\n },\n {\n \"id\": \"fish\",\n \"name\": \"Fish\",\n \"import\": () => import('./langs/fish.mjs')\n },\n {\n \"id\": \"fluent\",\n \"name\": \"Fluent\",\n \"aliases\": [\n \"ftl\"\n ],\n \"import\": () => import('./langs/fluent.mjs')\n },\n {\n \"id\": \"fortran-fixed-form\",\n \"name\": \"Fortran (Fixed Form)\",\n \"aliases\": [\n \"f\",\n \"for\",\n \"f77\"\n ],\n \"import\": () => import('./langs/fortran-fixed-form.mjs')\n },\n {\n \"id\": \"fortran-free-form\",\n \"name\": \"Fortran (Free Form)\",\n \"aliases\": [\n \"f90\",\n \"f95\",\n \"f03\",\n \"f08\",\n \"f18\"\n ],\n \"import\": () => import('./langs/fortran-free-form.mjs')\n },\n {\n \"id\": \"fsharp\",\n \"name\": \"F#\",\n \"aliases\": [\n \"f#\",\n \"fs\"\n ],\n \"import\": () => import('./langs/fsharp.mjs')\n },\n {\n \"id\": \"gdresource\",\n \"name\": \"GDResource\",\n \"import\": () => import('./langs/gdresource.mjs')\n },\n {\n \"id\": \"gdscript\",\n \"name\": \"GDScript\",\n \"import\": () => import('./langs/gdscript.mjs')\n },\n {\n \"id\": \"gdshader\",\n \"name\": \"GDShader\",\n \"import\": () => import('./langs/gdshader.mjs')\n },\n {\n \"id\": \"genie\",\n \"name\": \"Genie\",\n \"import\": () => import('./langs/genie.mjs')\n },\n {\n \"id\": \"gherkin\",\n \"name\": \"Gherkin\",\n \"import\": () => import('./langs/gherkin.mjs')\n },\n {\n \"id\": \"git-commit\",\n \"name\": \"Git Commit Message\",\n \"import\": () => import('./langs/git-commit.mjs')\n },\n {\n \"id\": \"git-rebase\",\n \"name\": \"Git Rebase Message\",\n \"import\": () => import('./langs/git-rebase.mjs')\n },\n {\n \"id\": \"gleam\",\n \"name\": \"Gleam\",\n \"import\": () => import('./langs/gleam.mjs')\n },\n {\n \"id\": \"glimmer-js\",\n \"name\": \"Glimmer JS\",\n \"aliases\": [\n \"gjs\"\n ],\n \"import\": () => import('./langs/glimmer-js.mjs')\n },\n {\n \"id\": \"glimmer-ts\",\n \"name\": \"Glimmer TS\",\n \"aliases\": [\n \"gts\"\n ],\n \"import\": () => import('./langs/glimmer-ts.mjs')\n },\n {\n \"id\": \"glsl\",\n \"name\": \"GLSL\",\n \"import\": () => import('./langs/glsl.mjs')\n },\n {\n \"id\": \"gnuplot\",\n \"name\": \"Gnuplot\",\n \"import\": () => import('./langs/gnuplot.mjs')\n },\n {\n \"id\": \"go\",\n \"name\": \"Go\",\n \"import\": () => import('./langs/go.mjs')\n },\n {\n \"id\": \"graphql\",\n \"name\": \"GraphQL\",\n \"aliases\": [\n \"gql\"\n ],\n \"import\": () => import('./langs/graphql.mjs')\n },\n {\n \"id\": \"groovy\",\n \"name\": \"Groovy\",\n \"import\": () => import('./langs/groovy.mjs')\n },\n {\n \"id\": \"hack\",\n \"name\": \"Hack\",\n \"import\": () => import('./langs/hack.mjs')\n },\n {\n \"id\": \"haml\",\n \"name\": \"Ruby Haml\",\n \"import\": () => import('./langs/haml.mjs')\n },\n {\n \"id\": \"handlebars\",\n \"name\": \"Handlebars\",\n \"aliases\": [\n \"hbs\"\n ],\n \"import\": () => import('./langs/handlebars.mjs')\n },\n {\n \"id\": \"haskell\",\n \"name\": \"Haskell\",\n \"aliases\": [\n \"hs\"\n ],\n \"import\": () => import('./langs/haskell.mjs')\n },\n {\n \"id\": \"haxe\",\n \"name\": \"Haxe\",\n \"import\": () => import('./langs/haxe.mjs')\n },\n {\n \"id\": \"hcl\",\n \"name\": \"HashiCorp HCL\",\n \"import\": () => import('./langs/hcl.mjs')\n },\n {\n \"id\": \"hjson\",\n \"name\": \"Hjson\",\n \"import\": () => import('./langs/hjson.mjs')\n },\n {\n \"id\": \"hlsl\",\n \"name\": \"HLSL\",\n \"import\": () => import('./langs/hlsl.mjs')\n },\n {\n \"id\": \"html\",\n \"name\": \"HTML\",\n \"import\": () => import('./langs/html.mjs')\n },\n {\n \"id\": \"html-derivative\",\n \"name\": \"HTML (Derivative)\",\n \"import\": () => import('./langs/html-derivative.mjs')\n },\n {\n \"id\": \"http\",\n \"name\": \"HTTP\",\n \"import\": () => import('./langs/http.mjs')\n },\n {\n \"id\": \"hxml\",\n \"name\": \"HXML\",\n \"import\": () => import('./langs/hxml.mjs')\n },\n {\n \"id\": \"hy\",\n \"name\": \"Hy\",\n \"import\": () => import('./langs/hy.mjs')\n },\n {\n \"id\": \"imba\",\n \"name\": \"Imba\",\n \"import\": () => import('./langs/imba.mjs')\n },\n {\n \"id\": \"ini\",\n \"name\": \"INI\",\n \"aliases\": [\n \"properties\"\n ],\n \"import\": () => import('./langs/ini.mjs')\n },\n {\n \"id\": \"java\",\n \"name\": \"Java\",\n \"import\": () => import('./langs/java.mjs')\n },\n {\n \"id\": \"javascript\",\n \"name\": \"JavaScript\",\n \"aliases\": [\n \"js\"\n ],\n \"import\": () => import('./langs/javascript.mjs')\n },\n {\n \"id\": \"jinja\",\n \"name\": \"Jinja\",\n \"import\": () => import('./langs/jinja.mjs')\n },\n {\n \"id\": \"jison\",\n \"name\": \"Jison\",\n \"import\": () => import('./langs/jison.mjs')\n },\n {\n \"id\": \"json\",\n \"name\": \"JSON\",\n \"import\": () => import('./langs/json.mjs')\n },\n {\n \"id\": \"json5\",\n \"name\": \"JSON5\",\n \"import\": () => import('./langs/json5.mjs')\n },\n {\n \"id\": \"jsonc\",\n \"name\": \"JSON with Comments\",\n \"import\": () => import('./langs/jsonc.mjs')\n },\n {\n \"id\": \"jsonl\",\n \"name\": \"JSON Lines\",\n \"import\": () => import('./langs/jsonl.mjs')\n },\n {\n \"id\": \"jsonnet\",\n \"name\": \"Jsonnet\",\n \"import\": () => import('./langs/jsonnet.mjs')\n },\n {\n \"id\": \"jssm\",\n \"name\": \"JSSM\",\n \"aliases\": [\n \"fsl\"\n ],\n \"import\": () => import('./langs/jssm.mjs')\n },\n {\n \"id\": \"jsx\",\n \"name\": \"JSX\",\n \"import\": () => import('./langs/jsx.mjs')\n },\n {\n \"id\": \"julia\",\n \"name\": \"Julia\",\n \"aliases\": [\n \"jl\"\n ],\n \"import\": () => import('./langs/julia.mjs')\n },\n {\n \"id\": \"kotlin\",\n \"name\": \"Kotlin\",\n \"aliases\": [\n \"kt\",\n \"kts\"\n ],\n \"import\": () => import('./langs/kotlin.mjs')\n },\n {\n \"id\": \"kusto\",\n \"name\": \"Kusto\",\n \"aliases\": [\n \"kql\"\n ],\n \"import\": () => import('./langs/kusto.mjs')\n },\n {\n \"id\": \"latex\",\n \"name\": \"LaTeX\",\n \"import\": () => import('./langs/latex.mjs')\n },\n {\n \"id\": \"lean\",\n \"name\": \"Lean 4\",\n \"aliases\": [\n \"lean4\"\n ],\n \"import\": () => import('./langs/lean.mjs')\n },\n {\n \"id\": \"less\",\n \"name\": \"Less\",\n \"import\": () => import('./langs/less.mjs')\n },\n {\n \"id\": \"liquid\",\n \"name\": \"Liquid\",\n \"import\": () => import('./langs/liquid.mjs')\n },\n {\n \"id\": \"log\",\n \"name\": \"Log file\",\n \"import\": () => import('./langs/log.mjs')\n },\n {\n \"id\": \"logo\",\n \"name\": \"Logo\",\n \"import\": () => import('./langs/logo.mjs')\n },\n {\n \"id\": \"lua\",\n \"name\": \"Lua\",\n \"import\": () => import('./langs/lua.mjs')\n },\n {\n \"id\": \"luau\",\n \"name\": \"Luau\",\n \"import\": () => import('./langs/luau.mjs')\n },\n {\n \"id\": \"make\",\n \"name\": \"Makefile\",\n \"aliases\": [\n \"makefile\"\n ],\n \"import\": () => import('./langs/make.mjs')\n },\n {\n \"id\": \"markdown\",\n \"name\": \"Markdown\",\n \"aliases\": [\n \"md\"\n ],\n \"import\": () => import('./langs/markdown.mjs')\n },\n {\n \"id\": \"marko\",\n \"name\": \"Marko\",\n \"import\": () => import('./langs/marko.mjs')\n },\n {\n \"id\": \"matlab\",\n \"name\": \"MATLAB\",\n \"import\": () => import('./langs/matlab.mjs')\n },\n {\n \"id\": \"mdc\",\n \"name\": \"MDC\",\n \"import\": () => import('./langs/mdc.mjs')\n },\n {\n \"id\": \"mdx\",\n \"name\": \"MDX\",\n \"import\": () => import('./langs/mdx.mjs')\n },\n {\n \"id\": \"mermaid\",\n \"name\": \"Mermaid\",\n \"aliases\": [\n \"mmd\"\n ],\n \"import\": () => import('./langs/mermaid.mjs')\n },\n {\n \"id\": \"mipsasm\",\n \"name\": \"MIPS Assembly\",\n \"aliases\": [\n \"mips\"\n ],\n \"import\": () => import('./langs/mipsasm.mjs')\n },\n {\n \"id\": \"mojo\",\n \"name\": \"Mojo\",\n \"import\": () => import('./langs/mojo.mjs')\n },\n {\n \"id\": \"move\",\n \"name\": \"Move\",\n \"import\": () => import('./langs/move.mjs')\n },\n {\n \"id\": \"narrat\",\n \"name\": \"Narrat Language\",\n \"aliases\": [\n \"nar\"\n ],\n \"import\": () => import('./langs/narrat.mjs')\n },\n {\n \"id\": \"nextflow\",\n \"name\": \"Nextflow\",\n \"aliases\": [\n \"nf\"\n ],\n \"import\": () => import('./langs/nextflow.mjs')\n },\n {\n \"id\": \"nginx\",\n \"name\": \"Nginx\",\n \"import\": () => import('./langs/nginx.mjs')\n },\n {\n \"id\": \"nim\",\n \"name\": \"Nim\",\n \"import\": () => import('./langs/nim.mjs')\n },\n {\n \"id\": \"nix\",\n \"name\": \"Nix\",\n \"import\": () => import('./langs/nix.mjs')\n },\n {\n \"id\": \"nushell\",\n \"name\": \"nushell\",\n \"aliases\": [\n \"nu\"\n ],\n \"import\": () => import('./langs/nushell.mjs')\n },\n {\n \"id\": \"objective-c\",\n \"name\": \"Objective-C\",\n \"aliases\": [\n \"objc\"\n ],\n \"import\": () => import('./langs/objective-c.mjs')\n },\n {\n \"id\": \"objective-cpp\",\n \"name\": \"Objective-C++\",\n \"import\": () => import('./langs/objective-cpp.mjs')\n },\n {\n \"id\": \"ocaml\",\n \"name\": \"OCaml\",\n \"import\": () => import('./langs/ocaml.mjs')\n },\n {\n \"id\": \"pascal\",\n \"name\": \"Pascal\",\n \"import\": () => import('./langs/pascal.mjs')\n },\n {\n \"id\": \"perl\",\n \"name\": \"Perl\",\n \"import\": () => import('./langs/perl.mjs')\n },\n {\n \"id\": \"php\",\n \"name\": \"PHP\",\n \"import\": () => import('./langs/php.mjs')\n },\n {\n \"id\": \"plsql\",\n \"name\": \"PL/SQL\",\n \"import\": () => import('./langs/plsql.mjs')\n },\n {\n \"id\": \"po\",\n \"name\": \"Gettext PO\",\n \"aliases\": [\n \"pot\",\n \"potx\"\n ],\n \"import\": () => import('./langs/po.mjs')\n },\n {\n \"id\": \"postcss\",\n \"name\": \"PostCSS\",\n \"import\": () => import('./langs/postcss.mjs')\n },\n {\n \"id\": \"powerquery\",\n \"name\": \"PowerQuery\",\n \"import\": () => import('./langs/powerquery.mjs')\n },\n {\n \"id\": \"powershell\",\n \"name\": \"PowerShell\",\n \"aliases\": [\n \"ps\",\n \"ps1\"\n ],\n \"import\": () => import('./langs/powershell.mjs')\n },\n {\n \"id\": \"prisma\",\n \"name\": \"Prisma\",\n \"import\": () => import('./langs/prisma.mjs')\n },\n {\n \"id\": \"prolog\",\n \"name\": \"Prolog\",\n \"import\": () => import('./langs/prolog.mjs')\n },\n {\n \"id\": \"proto\",\n \"name\": \"Protocol Buffer 3\",\n \"aliases\": [\n \"protobuf\"\n ],\n \"import\": () => import('./langs/proto.mjs')\n },\n {\n \"id\": \"pug\",\n \"name\": \"Pug\",\n \"aliases\": [\n \"jade\"\n ],\n \"import\": () => import('./langs/pug.mjs')\n },\n {\n \"id\": \"puppet\",\n \"name\": \"Puppet\",\n \"import\": () => import('./langs/puppet.mjs')\n },\n {\n \"id\": \"purescript\",\n \"name\": \"PureScript\",\n \"import\": () => import('./langs/purescript.mjs')\n },\n {\n \"id\": \"python\",\n \"name\": \"Python\",\n \"aliases\": [\n \"py\"\n ],\n \"import\": () => import('./langs/python.mjs')\n },\n {\n \"id\": \"qml\",\n \"name\": \"QML\",\n \"import\": () => import('./langs/qml.mjs')\n },\n {\n \"id\": \"qmldir\",\n \"name\": \"QML Directory\",\n \"import\": () => import('./langs/qmldir.mjs')\n },\n {\n \"id\": \"qss\",\n \"name\": \"Qt Style Sheets\",\n \"import\": () => import('./langs/qss.mjs')\n },\n {\n \"id\": \"r\",\n \"name\": \"R\",\n \"import\": () => import('./langs/r.mjs')\n },\n {\n \"id\": \"racket\",\n \"name\": \"Racket\",\n \"import\": () => import('./langs/racket.mjs')\n },\n {\n \"id\": \"raku\",\n \"name\": \"Raku\",\n \"aliases\": [\n \"perl6\"\n ],\n \"import\": () => import('./langs/raku.mjs')\n },\n {\n \"id\": \"razor\",\n \"name\": \"ASP.NET Razor\",\n \"import\": () => import('./langs/razor.mjs')\n },\n {\n \"id\": \"reg\",\n \"name\": \"Windows Registry Script\",\n \"import\": () => import('./langs/reg.mjs')\n },\n {\n \"id\": \"regexp\",\n \"name\": \"RegExp\",\n \"aliases\": [\n \"regex\"\n ],\n \"import\": () => import('./langs/regexp.mjs')\n },\n {\n \"id\": \"rel\",\n \"name\": \"Rel\",\n \"import\": () => import('./langs/rel.mjs')\n },\n {\n \"id\": \"riscv\",\n \"name\": \"RISC-V\",\n \"import\": () => import('./langs/riscv.mjs')\n },\n {\n \"id\": \"rst\",\n \"name\": \"reStructuredText\",\n \"import\": () => import('./langs/rst.mjs')\n },\n {\n \"id\": \"ruby\",\n \"name\": \"Ruby\",\n \"aliases\": [\n \"rb\"\n ],\n \"import\": () => import('./langs/ruby.mjs')\n },\n {\n \"id\": \"rust\",\n \"name\": \"Rust\",\n \"aliases\": [\n \"rs\"\n ],\n \"import\": () => import('./langs/rust.mjs')\n },\n {\n \"id\": \"sas\",\n \"name\": \"SAS\",\n \"import\": () => import('./langs/sas.mjs')\n },\n {\n \"id\": \"sass\",\n \"name\": \"Sass\",\n \"import\": () => import('./langs/sass.mjs')\n },\n {\n \"id\": \"scala\",\n \"name\": \"Scala\",\n \"import\": () => import('./langs/scala.mjs')\n },\n {\n \"id\": \"scheme\",\n \"name\": \"Scheme\",\n \"import\": () => import('./langs/scheme.mjs')\n },\n {\n \"id\": \"scss\",\n \"name\": \"SCSS\",\n \"import\": () => import('./langs/scss.mjs')\n },\n {\n \"id\": \"shaderlab\",\n \"name\": \"ShaderLab\",\n \"aliases\": [\n \"shader\"\n ],\n \"import\": () => import('./langs/shaderlab.mjs')\n },\n {\n \"id\": \"shellscript\",\n \"name\": \"Shell\",\n \"aliases\": [\n \"bash\",\n \"sh\",\n \"shell\",\n \"zsh\"\n ],\n \"import\": () => import('./langs/shellscript.mjs')\n },\n {\n \"id\": \"shellsession\",\n \"name\": \"Shell Session\",\n \"aliases\": [\n \"console\"\n ],\n \"import\": () => import('./langs/shellsession.mjs')\n },\n {\n \"id\": \"smalltalk\",\n \"name\": \"Smalltalk\",\n \"import\": () => import('./langs/smalltalk.mjs')\n },\n {\n \"id\": \"solidity\",\n \"name\": \"Solidity\",\n \"import\": () => import('./langs/solidity.mjs')\n },\n {\n \"id\": \"soy\",\n \"name\": \"Closure Templates\",\n \"aliases\": [\n \"closure-templates\"\n ],\n \"import\": () => import('./langs/soy.mjs')\n },\n {\n \"id\": \"sparql\",\n \"name\": \"SPARQL\",\n \"import\": () => import('./langs/sparql.mjs')\n },\n {\n \"id\": \"splunk\",\n \"name\": \"Splunk Query Language\",\n \"aliases\": [\n \"spl\"\n ],\n \"import\": () => import('./langs/splunk.mjs')\n },\n {\n \"id\": \"sql\",\n \"name\": \"SQL\",\n \"import\": () => import('./langs/sql.mjs')\n },\n {\n \"id\": \"ssh-config\",\n \"name\": \"SSH Config\",\n \"import\": () => import('./langs/ssh-config.mjs')\n },\n {\n \"id\": \"stata\",\n \"name\": \"Stata\",\n \"import\": () => import('./langs/stata.mjs')\n },\n {\n \"id\": \"stylus\",\n \"name\": \"Stylus\",\n \"aliases\": [\n \"styl\"\n ],\n \"import\": () => import('./langs/stylus.mjs')\n },\n {\n \"id\": \"svelte\",\n \"name\": \"Svelte\",\n \"import\": () => import('./langs/svelte.mjs')\n },\n {\n \"id\": \"swift\",\n \"name\": \"Swift\",\n \"import\": () => import('./langs/swift.mjs')\n },\n {\n \"id\": \"system-verilog\",\n \"name\": \"SystemVerilog\",\n \"import\": () => import('./langs/system-verilog.mjs')\n },\n {\n \"id\": \"systemd\",\n \"name\": \"Systemd Units\",\n \"import\": () => import('./langs/systemd.mjs')\n },\n {\n \"id\": \"tasl\",\n \"name\": \"Tasl\",\n \"import\": () => import('./langs/tasl.mjs')\n },\n {\n \"id\": \"tcl\",\n \"name\": \"Tcl\",\n \"import\": () => import('./langs/tcl.mjs')\n },\n {\n \"id\": \"templ\",\n \"name\": \"Templ\",\n \"import\": () => import('./langs/templ.mjs')\n },\n {\n \"id\": \"terraform\",\n \"name\": \"Terraform\",\n \"aliases\": [\n \"tf\",\n \"tfvars\"\n ],\n \"import\": () => import('./langs/terraform.mjs')\n },\n {\n \"id\": \"tex\",\n \"name\": \"TeX\",\n \"import\": () => import('./langs/tex.mjs')\n },\n {\n \"id\": \"toml\",\n \"name\": \"TOML\",\n \"import\": () => import('./langs/toml.mjs')\n },\n {\n \"id\": \"ts-tags\",\n \"name\": \"TypeScript with Tags\",\n \"aliases\": [\n \"lit\"\n ],\n \"import\": () => import('./langs/ts-tags.mjs')\n },\n {\n \"id\": \"tsv\",\n \"name\": \"TSV\",\n \"import\": () => import('./langs/tsv.mjs')\n },\n {\n \"id\": \"tsx\",\n \"name\": \"TSX\",\n \"import\": () => import('./langs/tsx.mjs')\n },\n {\n \"id\": \"turtle\",\n \"name\": \"Turtle\",\n \"import\": () => import('./langs/turtle.mjs')\n },\n {\n \"id\": \"twig\",\n \"name\": \"Twig\",\n \"import\": () => import('./langs/twig.mjs')\n },\n {\n \"id\": \"typescript\",\n \"name\": \"TypeScript\",\n \"aliases\": [\n \"ts\"\n ],\n \"import\": () => import('./langs/typescript.mjs')\n },\n {\n \"id\": \"typespec\",\n \"name\": \"TypeSpec\",\n \"aliases\": [\n \"tsp\"\n ],\n \"import\": () => import('./langs/typespec.mjs')\n },\n {\n \"id\": \"typst\",\n \"name\": \"Typst\",\n \"aliases\": [\n \"typ\"\n ],\n \"import\": () => import('./langs/typst.mjs')\n },\n {\n \"id\": \"v\",\n \"name\": \"V\",\n \"import\": () => import('./langs/v.mjs')\n },\n {\n \"id\": \"vala\",\n \"name\": \"Vala\",\n \"import\": () => import('./langs/vala.mjs')\n },\n {\n \"id\": \"vb\",\n \"name\": \"Visual Basic\",\n \"aliases\": [\n \"cmd\"\n ],\n \"import\": () => import('./langs/vb.mjs')\n },\n {\n \"id\": \"verilog\",\n \"name\": \"Verilog\",\n \"import\": () => import('./langs/verilog.mjs')\n },\n {\n \"id\": \"vhdl\",\n \"name\": \"VHDL\",\n \"import\": () => import('./langs/vhdl.mjs')\n },\n {\n \"id\": \"viml\",\n \"name\": \"Vim Script\",\n \"aliases\": [\n \"vim\",\n \"vimscript\"\n ],\n \"import\": () => import('./langs/viml.mjs')\n },\n {\n \"id\": \"vue\",\n \"name\": \"Vue\",\n \"import\": () => import('./langs/vue.mjs')\n },\n {\n \"id\": \"vue-html\",\n \"name\": \"Vue HTML\",\n \"import\": () => import('./langs/vue-html.mjs')\n },\n {\n \"id\": \"vyper\",\n \"name\": \"Vyper\",\n \"aliases\": [\n \"vy\"\n ],\n \"import\": () => import('./langs/vyper.mjs')\n },\n {\n \"id\": \"wasm\",\n \"name\": \"WebAssembly\",\n \"import\": () => import('./langs/wasm.mjs')\n },\n {\n \"id\": \"wenyan\",\n \"name\": \"Wenyan\",\n \"aliases\": [\n \"\\u6587\\u8A00\"\n ],\n \"import\": () => import('./langs/wenyan.mjs')\n },\n {\n \"id\": \"wgsl\",\n \"name\": \"WGSL\",\n \"import\": () => import('./langs/wgsl.mjs')\n },\n {\n \"id\": \"wikitext\",\n \"name\": \"Wikitext\",\n \"aliases\": [\n \"mediawiki\",\n \"wiki\"\n ],\n \"import\": () => import('./langs/wikitext.mjs')\n },\n {\n \"id\": \"wolfram\",\n \"name\": \"Wolfram\",\n \"aliases\": [\n \"wl\"\n ],\n \"import\": () => import('./langs/wolfram.mjs')\n },\n {\n \"id\": \"xml\",\n \"name\": \"XML\",\n \"import\": () => import('./langs/xml.mjs')\n },\n {\n \"id\": \"xsl\",\n \"name\": \"XSL\",\n \"import\": () => import('./langs/xsl.mjs')\n },\n {\n \"id\": \"yaml\",\n \"name\": \"YAML\",\n \"aliases\": [\n \"yml\"\n ],\n \"import\": () => import('./langs/yaml.mjs')\n },\n {\n \"id\": \"zenscript\",\n \"name\": \"ZenScript\",\n \"import\": () => import('./langs/zenscript.mjs')\n },\n {\n \"id\": \"zig\",\n \"name\": \"Zig\",\n \"import\": () => import('./langs/zig.mjs')\n }\n];\nconst bundledLanguagesBase = Object.fromEntries(bundledLanguagesInfo.map((i) => [i.id, i.import]));\nconst bundledLanguagesAlias = Object.fromEntries(bundledLanguagesInfo.flatMap((i) => i.aliases?.map((a) => [a, i.import]) || []));\nconst bundledLanguages = {\n ...bundledLanguagesBase,\n ...bundledLanguagesAlias\n};\n\nexport { bundledLanguages, bundledLanguagesAlias, bundledLanguagesBase, bundledLanguagesInfo };\n","const bundledThemesInfo = [\n {\n \"id\": \"andromeeda\",\n \"displayName\": \"Andromeeda\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/andromeeda.mjs')\n },\n {\n \"id\": \"aurora-x\",\n \"displayName\": \"Aurora X\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/aurora-x.mjs')\n },\n {\n \"id\": \"ayu-dark\",\n \"displayName\": \"Ayu Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/ayu-dark.mjs')\n },\n {\n \"id\": \"catppuccin-frappe\",\n \"displayName\": \"Catppuccin Frapp\\xE9\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/catppuccin-frappe.mjs')\n },\n {\n \"id\": \"catppuccin-latte\",\n \"displayName\": \"Catppuccin Latte\",\n \"type\": \"light\",\n \"import\": () => import('./themes/catppuccin-latte.mjs')\n },\n {\n \"id\": \"catppuccin-macchiato\",\n \"displayName\": \"Catppuccin Macchiato\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/catppuccin-macchiato.mjs')\n },\n {\n \"id\": \"catppuccin-mocha\",\n \"displayName\": \"Catppuccin Mocha\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/catppuccin-mocha.mjs')\n },\n {\n \"id\": \"dark-plus\",\n \"displayName\": \"Dark Plus\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/dark-plus.mjs')\n },\n {\n \"id\": \"dracula\",\n \"displayName\": \"Dracula Theme\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/dracula.mjs')\n },\n {\n \"id\": \"dracula-soft\",\n \"displayName\": \"Dracula Theme Soft\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/dracula-soft.mjs')\n },\n {\n \"id\": \"everforest-dark\",\n \"displayName\": \"Everforest Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/everforest-dark.mjs')\n },\n {\n \"id\": \"everforest-light\",\n \"displayName\": \"Everforest Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/everforest-light.mjs')\n },\n {\n \"id\": \"github-dark\",\n \"displayName\": \"GitHub Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/github-dark.mjs')\n },\n {\n \"id\": \"github-dark-default\",\n \"displayName\": \"GitHub Dark Default\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/github-dark-default.mjs')\n },\n {\n \"id\": \"github-dark-dimmed\",\n \"displayName\": \"GitHub Dark Dimmed\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/github-dark-dimmed.mjs')\n },\n {\n \"id\": \"github-dark-high-contrast\",\n \"displayName\": \"GitHub Dark High Contrast\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/github-dark-high-contrast.mjs')\n },\n {\n \"id\": \"github-light\",\n \"displayName\": \"GitHub Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/github-light.mjs')\n },\n {\n \"id\": \"github-light-default\",\n \"displayName\": \"GitHub Light Default\",\n \"type\": \"light\",\n \"import\": () => import('./themes/github-light-default.mjs')\n },\n {\n \"id\": \"github-light-high-contrast\",\n \"displayName\": \"GitHub Light High Contrast\",\n \"type\": \"light\",\n \"import\": () => import('./themes/github-light-high-contrast.mjs')\n },\n {\n \"id\": \"houston\",\n \"displayName\": \"Houston\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/houston.mjs')\n },\n {\n \"id\": \"kanagawa-dragon\",\n \"displayName\": \"Kanagawa Dragon\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/kanagawa-dragon.mjs')\n },\n {\n \"id\": \"kanagawa-lotus\",\n \"displayName\": \"Kanagawa Lotus\",\n \"type\": \"light\",\n \"import\": () => import('./themes/kanagawa-lotus.mjs')\n },\n {\n \"id\": \"kanagawa-wave\",\n \"displayName\": \"Kanagawa Wave\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/kanagawa-wave.mjs')\n },\n {\n \"id\": \"laserwave\",\n \"displayName\": \"LaserWave\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/laserwave.mjs')\n },\n {\n \"id\": \"light-plus\",\n \"displayName\": \"Light Plus\",\n \"type\": \"light\",\n \"import\": () => import('./themes/light-plus.mjs')\n },\n {\n \"id\": \"material-theme\",\n \"displayName\": \"Material Theme\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/material-theme.mjs')\n },\n {\n \"id\": \"material-theme-darker\",\n \"displayName\": \"Material Theme Darker\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/material-theme-darker.mjs')\n },\n {\n \"id\": \"material-theme-lighter\",\n \"displayName\": \"Material Theme Lighter\",\n \"type\": \"light\",\n \"import\": () => import('./themes/material-theme-lighter.mjs')\n },\n {\n \"id\": \"material-theme-ocean\",\n \"displayName\": \"Material Theme Ocean\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/material-theme-ocean.mjs')\n },\n {\n \"id\": \"material-theme-palenight\",\n \"displayName\": \"Material Theme Palenight\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/material-theme-palenight.mjs')\n },\n {\n \"id\": \"min-dark\",\n \"displayName\": \"Min Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/min-dark.mjs')\n },\n {\n \"id\": \"min-light\",\n \"displayName\": \"Min Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/min-light.mjs')\n },\n {\n \"id\": \"monokai\",\n \"displayName\": \"Monokai\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/monokai.mjs')\n },\n {\n \"id\": \"night-owl\",\n \"displayName\": \"Night Owl\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/night-owl.mjs')\n },\n {\n \"id\": \"nord\",\n \"displayName\": \"Nord\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/nord.mjs')\n },\n {\n \"id\": \"one-dark-pro\",\n \"displayName\": \"One Dark Pro\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/one-dark-pro.mjs')\n },\n {\n \"id\": \"one-light\",\n \"displayName\": \"One Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/one-light.mjs')\n },\n {\n \"id\": \"plastic\",\n \"displayName\": \"Plastic\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/plastic.mjs')\n },\n {\n \"id\": \"poimandres\",\n \"displayName\": \"Poimandres\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/poimandres.mjs')\n },\n {\n \"id\": \"red\",\n \"displayName\": \"Red\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/red.mjs')\n },\n {\n \"id\": \"rose-pine\",\n \"displayName\": \"Ros\\xE9 Pine\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/rose-pine.mjs')\n },\n {\n \"id\": \"rose-pine-dawn\",\n \"displayName\": \"Ros\\xE9 Pine Dawn\",\n \"type\": \"light\",\n \"import\": () => import('./themes/rose-pine-dawn.mjs')\n },\n {\n \"id\": \"rose-pine-moon\",\n \"displayName\": \"Ros\\xE9 Pine Moon\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/rose-pine-moon.mjs')\n },\n {\n \"id\": \"slack-dark\",\n \"displayName\": \"Slack Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/slack-dark.mjs')\n },\n {\n \"id\": \"slack-ochin\",\n \"displayName\": \"Slack Ochin\",\n \"type\": \"light\",\n \"import\": () => import('./themes/slack-ochin.mjs')\n },\n {\n \"id\": \"snazzy-light\",\n \"displayName\": \"Snazzy Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/snazzy-light.mjs')\n },\n {\n \"id\": \"solarized-dark\",\n \"displayName\": \"Solarized Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/solarized-dark.mjs')\n },\n {\n \"id\": \"solarized-light\",\n \"displayName\": \"Solarized Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/solarized-light.mjs')\n },\n {\n \"id\": \"synthwave-84\",\n \"displayName\": \"Synthwave '84\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/synthwave-84.mjs')\n },\n {\n \"id\": \"tokyo-night\",\n \"displayName\": \"Tokyo Night\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/tokyo-night.mjs')\n },\n {\n \"id\": \"vesper\",\n \"displayName\": \"Vesper\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/vesper.mjs')\n },\n {\n \"id\": \"vitesse-black\",\n \"displayName\": \"Vitesse Black\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/vitesse-black.mjs')\n },\n {\n \"id\": \"vitesse-dark\",\n \"displayName\": \"Vitesse Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/vitesse-dark.mjs')\n },\n {\n \"id\": \"vitesse-light\",\n \"displayName\": \"Vitesse Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/vitesse-light.mjs')\n }\n];\nconst bundledThemes = Object.fromEntries(bundledThemesInfo.map((i) => [i.id, i.import]));\n\nexport { bundledThemes, bundledThemesInfo };\n","class ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nexport { ShikiError };\n","/**\n * List of HTML void tag names.\n *\n * @type {Array<string>}\n */\nexport const htmlVoidElements = [\n 'area',\n 'base',\n 'basefont',\n 'bgsound',\n 'br',\n 'col',\n 'command',\n 'embed',\n 'frame',\n 'hr',\n 'image',\n 'img',\n 'input',\n 'keygen',\n 'link',\n 'meta',\n 'param',\n 'source',\n 'track',\n 'wbr'\n]\n","/**\n * @typedef {import('./info.js').Info} Info\n * @typedef {Record<string, Info>} Properties\n * @typedef {Record<string, string>} Normal\n */\n\nexport class Schema {\n /**\n * @constructor\n * @param {Properties} property\n * @param {Normal} normal\n * @param {string} [space]\n */\n constructor(property, normal, space) {\n this.property = property\n this.normal = normal\n if (space) {\n this.space = space\n }\n }\n}\n\n/** @type {Properties} */\nSchema.prototype.property = {}\n/** @type {Normal} */\nSchema.prototype.normal = {}\n/** @type {string|null} */\nSchema.prototype.space = null\n","export class Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n */\n constructor(property, attribute) {\n /** @type {string} */\n this.property = property\n /** @type {string} */\n this.attribute = attribute\n }\n}\n\n/** @type {string|null} */\nInfo.prototype.space = null\nInfo.prototype.boolean = false\nInfo.prototype.booleanish = false\nInfo.prototype.overloadedBoolean = false\nInfo.prototype.number = false\nInfo.prototype.commaSeparated = false\nInfo.prototype.spaceSeparated = false\nInfo.prototype.commaOrSpaceSeparated = false\nInfo.prototype.mustUseProperty = false\nInfo.prototype.defined = false\n","import {create} from './util/create.js'\n\nexport const xlink = create({\n space: 'xlink',\n transform(_, prop) {\n return 'xlink:' + prop.slice(5).toLowerCase()\n },\n properties: {\n xLinkActuate: null,\n xLinkArcRole: null,\n xLinkHref: null,\n xLinkRole: null,\n xLinkShow: null,\n xLinkTitle: null,\n xLinkType: null\n }\n})\n","import {create} from './util/create.js'\n\nexport const xml = create({\n space: 'xml',\n transform(_, prop) {\n return 'xml:' + prop.slice(3).toLowerCase()\n },\n properties: {xmlLang: null, xmlBase: null, xmlSpace: null}\n})\n","import {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const xmlns = create({\n space: 'xmlns',\n attributes: {xmlnsxlink: 'xmlns:xlink'},\n transform: caseInsensitiveTransform,\n properties: {xmlns: null, xmlnsXLink: null}\n})\n","import {booleanish, number, spaceSeparated} from './util/types.js'\nimport {create} from './util/create.js'\n\nexport const aria = create({\n transform(_, prop) {\n return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase()\n },\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n }\n})\n","import {\n boolean,\n overloadedBoolean,\n booleanish,\n number,\n spaceSeparated,\n commaSeparated\n} from './util/types.js'\nimport {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const html = create({\n space: 'html',\n attributes: {\n acceptcharset: 'accept-charset',\n classname: 'class',\n htmlfor: 'for',\n httpequiv: 'http-equiv'\n },\n transform: caseInsensitiveTransform,\n mustUseProperty: ['checked', 'multiple', 'muted', 'selected'],\n properties: {\n // Standard Properties.\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n blocking: spaceSeparated,\n capture: null,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n fetchPriority: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: boolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inert: boolean,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforeMatch: null,\n onBeforePrint: null,\n onBeforeToggle: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onScrollEnd: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n popover: null,\n popoverTarget: null,\n popoverTargetAction: null,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shadowRootClonable: boolean,\n shadowRootDelegatesFocus: boolean,\n shadowRootMode: null,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n writingSuggestions: null,\n\n // Legacy.\n // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis\n align: null, // Several. Use CSS `text-align` instead,\n aLink: null, // `<body>`. Use CSS `a:active {color}` instead\n archive: spaceSeparated, // `<object>`. List of URIs to archives\n axis: null, // `<td>` and `<th>`. Use `scope` on `<th>`\n background: null, // `<body>`. Use CSS `background-image` instead\n bgColor: null, // `<body>` and table elements. Use CSS `background-color` instead\n border: number, // `<table>`. Use CSS `border-width` instead,\n borderColor: null, // `<table>`. Use CSS `border-color` instead,\n bottomMargin: number, // `<body>`\n cellPadding: null, // `<table>`\n cellSpacing: null, // `<table>`\n char: null, // Several table elements. When `align=char`, sets the character to align on\n charOff: null, // Several table elements. When `char`, offsets the alignment\n classId: null, // `<object>`\n clear: null, // `<br>`. Use CSS `clear` instead\n code: null, // `<object>`\n codeBase: null, // `<object>`\n codeType: null, // `<object>`\n color: null, // `<font>` and `<hr>`. Use CSS instead\n compact: boolean, // Lists. Use CSS to reduce space between items instead\n declare: boolean, // `<object>`\n event: null, // `<script>`\n face: null, // `<font>`. Use CSS instead\n frame: null, // `<table>`\n frameBorder: null, // `<iframe>`. Use CSS `border` instead\n hSpace: number, // `<img>` and `<object>`\n leftMargin: number, // `<body>`\n link: null, // `<body>`. Use CSS `a:link {color: *}` instead\n longDesc: null, // `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`\n lowSrc: null, // `<img>`. Use a `<picture>`\n marginHeight: number, // `<body>`\n marginWidth: number, // `<body>`\n noResize: boolean, // `<frame>`\n noHref: boolean, // `<area>`. Use no href instead of an explicit `nohref`\n noShade: boolean, // `<hr>`. Use background-color and height instead of borders\n noWrap: boolean, // `<td>` and `<th>`\n object: null, // `<applet>`\n profile: null, // `<head>`\n prompt: null, // `<isindex>`\n rev: null, // `<link>`\n rightMargin: number, // `<body>`\n rules: null, // `<table>`\n scheme: null, // `<meta>`\n scrolling: booleanish, // `<frame>`. Use overflow in the child context\n standby: null, // `<object>`\n summary: null, // `<table>`\n text: null, // `<body>`. Use CSS `color` instead\n topMargin: number, // `<body>`\n valueType: null, // `<param>`\n version: null, // `<html>`. Use a doctype.\n vAlign: null, // Several. Use CSS `vertical-align` instead\n vLink: null, // `<body>`. Use CSS `a:visited {color}` instead\n vSpace: number, // `<img>` and `<object>`\n\n // Non-standard Properties.\n allowTransparency: null,\n autoCorrect: null,\n autoSave: null,\n disablePictureInPicture: boolean,\n disableRemotePlayback: boolean,\n prefix: null,\n property: null,\n results: number,\n security: null,\n unselectable: null\n }\n})\n","import {\n boolean,\n number,\n spaceSeparated,\n commaSeparated,\n commaOrSpaceSeparated\n} from './util/types.js'\nimport {create} from './util/create.js'\nimport {caseSensitiveTransform} from './util/case-sensitive-transform.js'\n\nexport const svg = create({\n space: 'svg',\n attributes: {\n accentHeight: 'accent-height',\n alignmentBaseline: 'alignment-baseline',\n arabicForm: 'arabic-form',\n baselineShift: 'baseline-shift',\n capHeight: 'cap-height',\n className: 'class',\n clipPath: 'clip-path',\n clipRule: 'clip-rule',\n colorInterpolation: 'color-interpolation',\n colorInterpolationFilters: 'color-interpolation-filters',\n colorProfile: 'color-profile',\n colorRendering: 'color-rendering',\n crossOrigin: 'crossorigin',\n dataType: 'datatype',\n dominantBaseline: 'dominant-baseline',\n enableBackground: 'enable-background',\n fillOpacity: 'fill-opacity',\n fillRule: 'fill-rule',\n floodColor: 'flood-color',\n floodOpacity: 'flood-opacity',\n fontFamily: 'font-family',\n fontSize: 'font-size',\n fontSizeAdjust: 'font-size-adjust',\n fontStretch: 'font-stretch',\n fontStyle: 'font-style',\n fontVariant: 'font-variant',\n fontWeight: 'font-weight',\n glyphName: 'glyph-name',\n glyphOrientationHorizontal: 'glyph-orientation-horizontal',\n glyphOrientationVertical: 'glyph-orientation-vertical',\n hrefLang: 'hreflang',\n horizAdvX: 'horiz-adv-x',\n horizOriginX: 'horiz-origin-x',\n horizOriginY: 'horiz-origin-y',\n imageRendering: 'image-rendering',\n letterSpacing: 'letter-spacing',\n lightingColor: 'lighting-color',\n markerEnd: 'marker-end',\n markerMid: 'marker-mid',\n markerStart: 'marker-start',\n navDown: 'nav-down',\n navDownLeft: 'nav-down-left',\n navDownRight: 'nav-down-right',\n navLeft: 'nav-left',\n navNext: 'nav-next',\n navPrev: 'nav-prev',\n navRight: 'nav-right',\n navUp: 'nav-up',\n navUpLeft: 'nav-up-left',\n navUpRight: 'nav-up-right',\n onAbort: 'onabort',\n onActivate: 'onactivate',\n onAfterPrint: 'onafterprint',\n onBeforePrint: 'onbeforeprint',\n onBegin: 'onbegin',\n onCancel: 'oncancel',\n onCanPlay: 'oncanplay',\n onCanPlayThrough: 'oncanplaythrough',\n onChange: 'onchange',\n onClick: 'onclick',\n onClose: 'onclose',\n onCopy: 'oncopy',\n onCueChange: 'oncuechange',\n onCut: 'oncut',\n onDblClick: 'ondblclick',\n onDrag: 'ondrag',\n onDragEnd: 'ondragend',\n onDragEnter: 'ondragenter',\n onDragExit: 'ondragexit',\n onDragLeave: 'ondragleave',\n onDragOver: 'ondragover',\n onDragStart: 'ondragstart',\n onDrop: 'ondrop',\n onDurationChange: 'ondurationchange',\n onEmptied: 'onemptied',\n onEnd: 'onend',\n onEnded: 'onended',\n onError: 'onerror',\n onFocus: 'onfocus',\n onFocusIn: 'onfocusin',\n onFocusOut: 'onfocusout',\n onHashChange: 'onhashchange',\n onInput: 'oninput',\n onInvalid: 'oninvalid',\n onKeyDown: 'onkeydown',\n onKeyPress: 'onkeypress',\n onKeyUp: 'onkeyup',\n onLoad: 'onload',\n onLoadedData: 'onloadeddata',\n onLoadedMetadata: 'onloadedmetadata',\n onLoadStart: 'onloadstart',\n onMessage: 'onmessage',\n onMouseDown: 'onmousedown',\n onMouseEnter: 'onmouseenter',\n onMouseLeave: 'onmouseleave',\n onMouseMove: 'onmousemove',\n onMouseOut: 'onmouseout',\n onMouseOver: 'onmouseover',\n onMouseUp: 'onmouseup',\n onMouseWheel: 'onmousewheel',\n onOffline: 'onoffline',\n onOnline: 'ononline',\n onPageHide: 'onpagehide',\n onPageShow: 'onpageshow',\n onPaste: 'onpaste',\n onPause: 'onpause',\n onPlay: 'onplay',\n onPlaying: 'onplaying',\n onPopState: 'onpopstate',\n onProgress: 'onprogress',\n onRateChange: 'onratechange',\n onRepeat: 'onrepeat',\n onReset: 'onreset',\n onResize: 'onresize',\n onScroll: 'onscroll',\n onSeeked: 'onseeked',\n onSeeking: 'onseeking',\n onSelect: 'onselect',\n onShow: 'onshow',\n onStalled: 'onstalled',\n onStorage: 'onstorage',\n onSubmit: 'onsubmit',\n onSuspend: 'onsuspend',\n onTimeUpdate: 'ontimeupdate',\n onToggle: 'ontoggle',\n onUnload: 'onunload',\n onVolumeChange: 'onvolumechange',\n onWaiting: 'onwaiting',\n onZoom: 'onzoom',\n overlinePosition: 'overline-position',\n overlineThickness: 'overline-thickness',\n paintOrder: 'paint-order',\n panose1: 'panose-1',\n pointerEvents: 'pointer-events',\n referrerPolicy: 'referrerpolicy',\n renderingIntent: 'rendering-intent',\n shapeRendering: 'shape-rendering',\n stopColor: 'stop-color',\n stopOpacity: 'stop-opacity',\n strikethroughPosition: 'strikethrough-position',\n strikethroughThickness: 'strikethrough-thickness',\n strokeDashArray: 'stroke-dasharray',\n strokeDashOffset: 'stroke-dashoffset',\n strokeLineCap: 'stroke-linecap',\n strokeLineJoin: 'stroke-linejoin',\n strokeMiterLimit: 'stroke-miterlimit',\n strokeOpacity: 'stroke-opacity',\n strokeWidth: 'stroke-width',\n tabIndex: 'tabindex',\n textAnchor: 'text-anchor',\n textDecoration: 'text-decoration',\n textRendering: 'text-rendering',\n transformOrigin: 'transform-origin',\n typeOf: 'typeof',\n underlinePosition: 'underline-position',\n underlineThickness: 'underline-thickness',\n unicodeBidi: 'unicode-bidi',\n unicodeRange: 'unicode-range',\n unitsPerEm: 'units-per-em',\n vAlphabetic: 'v-alphabetic',\n vHanging: 'v-hanging',\n vIdeographic: 'v-ideographic',\n vMathematical: 'v-mathematical',\n vectorEffect: 'vector-effect',\n vertAdvY: 'vert-adv-y',\n vertOriginX: 'vert-origin-x',\n vertOriginY: 'vert-origin-y',\n wordSpacing: 'word-spacing',\n writingMode: 'writing-mode',\n xHeight: 'x-height',\n // These were camelcased in Tiny. Now lowercased in SVG 2\n playbackOrder: 'playbackorder',\n timelineBegin: 'timelinebegin'\n },\n transform: caseSensitiveTransform,\n properties: {\n about: commaOrSpaceSeparated,\n accentHeight: number,\n accumulate: null,\n additive: null,\n alignmentBaseline: null,\n alphabetic: number,\n amplitude: number,\n arabicForm: null,\n ascent: number,\n attributeName: null,\n attributeType: null,\n azimuth: number,\n bandwidth: null,\n baselineShift: null,\n baseFrequency: null,\n baseProfile: null,\n bbox: null,\n begin: null,\n bias: number,\n by: null,\n calcMode: null,\n capHeight: number,\n className: spaceSeparated,\n clip: null,\n clipPath: null,\n clipPathUnits: null,\n clipRule: null,\n color: null,\n colorInterpolation: null,\n colorInterpolationFilters: null,\n colorProfile: null,\n colorRendering: null,\n content: null,\n contentScriptType: null,\n contentStyleType: null,\n crossOrigin: null,\n cursor: null,\n cx: null,\n cy: null,\n d: null,\n dataType: null,\n defaultAction: null,\n descent: number,\n diffuseConstant: number,\n direction: null,\n display: null,\n dur: null,\n divisor: number,\n dominantBaseline: null,\n download: boolean,\n dx: null,\n dy: null,\n edgeMode: null,\n editable: null,\n elevation: number,\n enableBackground: null,\n end: null,\n event: null,\n exponent: number,\n externalResourcesRequired: null,\n fill: null,\n fillOpacity: number,\n fillRule: null,\n filter: null,\n filterRes: null,\n filterUnits: null,\n floodColor: null,\n floodOpacity: null,\n focusable: null,\n focusHighlight: null,\n fontFamily: null,\n fontSize: null,\n fontSizeAdjust: null,\n fontStretch: null,\n fontStyle: null,\n fontVariant: null,\n fontWeight: null,\n format: null,\n fr: null,\n from: null,\n fx: null,\n fy: null,\n g1: commaSeparated,\n g2: commaSeparated,\n glyphName: commaSeparated,\n glyphOrientationHorizontal: null,\n glyphOrientationVertical: null,\n glyphRef: null,\n gradientTransform: null,\n gradientUnits: null,\n handler: null,\n hanging: number,\n hatchContentUnits: null,\n hatchUnits: null,\n height: null,\n href: null,\n hrefLang: null,\n horizAdvX: number,\n horizOriginX: number,\n horizOriginY: number,\n id: null,\n ideographic: number,\n imageRendering: null,\n initialVisibility: null,\n in: null,\n in2: null,\n intercept: number,\n k: number,\n k1: number,\n k2: number,\n k3: number,\n k4: number,\n kernelMatrix: commaOrSpaceSeparated,\n kernelUnitLength: null,\n keyPoints: null, // SEMI_COLON_SEPARATED\n keySplines: null, // SEMI_COLON_SEPARATED\n keyTimes: null, // SEMI_COLON_SEPARATED\n kerning: null,\n lang: null,\n lengthAdjust: null,\n letterSpacing: null,\n lightingColor: null,\n limitingConeAngle: number,\n local: null,\n markerEnd: null,\n markerMid: null,\n markerStart: null,\n markerHeight: null,\n markerUnits: null,\n markerWidth: null,\n mask: null,\n maskContentUnits: null,\n maskUnits: null,\n mathematical: null,\n max: null,\n media: null,\n mediaCharacterEncoding: null,\n mediaContentEncodings: null,\n mediaSize: number,\n mediaTime: null,\n method: null,\n min: null,\n mode: null,\n name: null,\n navDown: null,\n navDownLeft: null,\n navDownRight: null,\n navLeft: null,\n navNext: null,\n navPrev: null,\n navRight: null,\n navUp: null,\n navUpLeft: null,\n navUpRight: null,\n numOctaves: null,\n observer: null,\n offset: null,\n onAbort: null,\n onActivate: null,\n onAfterPrint: null,\n onBeforePrint: null,\n onBegin: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnd: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFocusIn: null,\n onFocusOut: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadStart: null,\n onMessage: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onMouseWheel: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRepeat: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onShow: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onZoom: null,\n opacity: null,\n operator: null,\n order: null,\n orient: null,\n orientation: null,\n origin: null,\n overflow: null,\n overlay: null,\n overlinePosition: number,\n overlineThickness: number,\n paintOrder: null,\n panose1: null,\n path: null,\n pathLength: number,\n patternContentUnits: null,\n patternTransform: null,\n patternUnits: null,\n phase: null,\n ping: spaceSeparated,\n pitch: null,\n playbackOrder: null,\n pointerEvents: null,\n points: null,\n pointsAtX: number,\n pointsAtY: number,\n pointsAtZ: number,\n preserveAlpha: null,\n preserveAspectRatio: null,\n primitiveUnits: null,\n propagate: null,\n property: commaOrSpaceSeparated,\n r: null,\n radius: null,\n referrerPolicy: null,\n refX: null,\n refY: null,\n rel: commaOrSpaceSeparated,\n rev: commaOrSpaceSeparated,\n renderingIntent: null,\n repeatCount: null,\n repeatDur: null,\n requiredExtensions: commaOrSpaceSeparated,\n requiredFeatures: commaOrSpaceSeparated,\n requiredFonts: commaOrSpaceSeparated,\n requiredFormats: commaOrSpaceSeparated,\n resource: null,\n restart: null,\n result: null,\n rotate: null,\n rx: null,\n ry: null,\n scale: null,\n seed: null,\n shapeRendering: null,\n side: null,\n slope: null,\n snapshotTime: null,\n specularConstant: number,\n specularExponent: number,\n spreadMethod: null,\n spacing: null,\n startOffset: null,\n stdDeviation: null,\n stemh: null,\n stemv: null,\n stitchTiles: null,\n stopColor: null,\n stopOpacity: null,\n strikethroughPosition: number,\n strikethroughThickness: number,\n string: null,\n stroke: null,\n strokeDashArray: commaOrSpaceSeparated,\n strokeDashOffset: null,\n strokeLineCap: null,\n strokeLineJoin: null,\n strokeMiterLimit: number,\n strokeOpacity: number,\n strokeWidth: null,\n style: null,\n surfaceScale: number,\n syncBehavior: null,\n syncBehaviorDefault: null,\n syncMaster: null,\n syncTolerance: null,\n syncToleranceDefault: null,\n systemLanguage: commaOrSpaceSeparated,\n tabIndex: number,\n tableValues: null,\n target: null,\n targetX: number,\n targetY: number,\n textAnchor: null,\n textDecoration: null,\n textRendering: null,\n textLength: null,\n timelineBegin: null,\n title: null,\n transformBehavior: null,\n type: null,\n typeOf: commaOrSpaceSeparated,\n to: null,\n transform: null,\n transformOrigin: null,\n u1: null,\n u2: null,\n underlinePosition: number,\n underlineThickness: number,\n unicode: null,\n unicodeBidi: null,\n unicodeRange: null,\n unitsPerEm: number,\n values: null,\n vAlphabetic: number,\n vMathematical: number,\n vectorEffect: null,\n vHanging: number,\n vIdeographic: number,\n version: null,\n vertAdvY: number,\n vertOriginX: number,\n vertOriginY: number,\n viewBox: null,\n viewTarget: null,\n visibility: null,\n width: null,\n widths: null,\n wordSpacing: null,\n writingMode: null,\n x: null,\n x1: null,\n x2: null,\n xChannelSelector: null,\n xHeight: number,\n y: null,\n y1: null,\n y2: null,\n yChannelSelector: null,\n z: null,\n zoomAndPan: null\n }\n})\n","/**\n * @typedef {import('./lib/util/info.js').Info} Info\n * @typedef {import('./lib/util/schema.js').Schema} Schema\n */\n\nimport {merge} from './lib/util/merge.js'\nimport {xlink} from './lib/xlink.js'\nimport {xml} from './lib/xml.js'\nimport {xmlns} from './lib/xmlns.js'\nimport {aria} from './lib/aria.js'\nimport {html as htmlBase} from './lib/html.js'\nimport {svg as svgBase} from './lib/svg.js'\n\nexport {find} from './lib/find.js'\nexport {hastToReact} from './lib/hast-to-react.js'\nexport {normalize} from './lib/normalize.js'\nexport const html = merge([xml, xlink, xmlns, aria, htmlBase], 'html')\nexport const svg = merge([xml, xlink, xmlns, aria, svgBase], 'svg')\n","/**\n * @callback Handler\n * Handle a value, with a certain ID field set to a certain value.\n * The ID field is passed to `zwitch`, and it’s value is this function’s\n * place on the `handlers` record.\n * @param {...any} parameters\n * Arbitrary parameters passed to the zwitch.\n * The first will be an object with a certain ID field set to a certain value.\n * @returns {any}\n * Anything!\n */\n\n/**\n * @callback UnknownHandler\n * Handle values that do have a certain ID field, but it’s set to a value\n * that is not listed in the `handlers` record.\n * @param {unknown} value\n * An object with a certain ID field set to an unknown value.\n * @param {...any} rest\n * Arbitrary parameters passed to the zwitch.\n * @returns {any}\n * Anything!\n */\n\n/**\n * @callback InvalidHandler\n * Handle values that do not have a certain ID field.\n * @param {unknown} value\n * Any unknown value.\n * @param {...any} rest\n * Arbitrary parameters passed to the zwitch.\n * @returns {void|null|undefined|never}\n * This should crash or return nothing.\n */\n\n/**\n * @template {InvalidHandler} [Invalid=InvalidHandler]\n * @template {UnknownHandler} [Unknown=UnknownHandler]\n * @template {Record<string, Handler>} [Handlers=Record<string, Handler>]\n * @typedef Options\n * Configuration (required).\n * @property {Invalid} [invalid]\n * Handler to use for invalid values.\n * @property {Unknown} [unknown]\n * Handler to use for unknown values.\n * @property {Handlers} [handlers]\n * Handlers to use.\n */\n\nconst own = {}.hasOwnProperty\n\n/**\n * Handle values based on a field.\n *\n * @template {InvalidHandler} [Invalid=InvalidHandler]\n * @template {UnknownHandler} [Unknown=UnknownHandler]\n * @template {Record<string, Handler>} [Handlers=Record<string, Handler>]\n * @param {string} key\n * Field to switch on.\n * @param {Options<Invalid, Unknown, Handlers>} [options]\n * Configuration (required).\n * @returns {{unknown: Unknown, invalid: Invalid, handlers: Handlers, (...parameters: Parameters<Handlers[keyof Handlers]>): ReturnType<Handlers[keyof Handlers]>, (...parameters: Parameters<Unknown>): ReturnType<Unknown>}}\n */\nexport function zwitch(key, options) {\n const settings = options || {}\n\n /**\n * Handle one value.\n *\n * Based on the bound `key`, a respective handler will be called.\n * If `value` is not an object, or doesn’t have a `key` property, the special\n * “invalid” handler will be called.\n * If `value` has an unknown `key`, the special “unknown” handler will be\n * called.\n *\n * All arguments, and the context object, are passed through to the handler,\n * and it’s result is returned.\n *\n * @this {unknown}\n * Any context object.\n * @param {unknown} [value]\n * Any value.\n * @param {...unknown} parameters\n * Arbitrary parameters passed to the zwitch.\n * @property {Handler} invalid\n * Handle for values that do not have a certain ID field.\n * @property {Handler} unknown\n * Handle values that do have a certain ID field, but it’s set to a value\n * that is not listed in the `handlers` record.\n * @property {Handlers} handlers\n * Record of handlers.\n * @returns {unknown}\n * Anything.\n */\n function one(value, ...parameters) {\n /** @type {Handler|undefined} */\n let fn = one.invalid\n const handlers = one.handlers\n\n if (value && own.call(value, key)) {\n // @ts-expect-error Indexable.\n const id = String(value[key])\n // @ts-expect-error Indexable.\n fn = own.call(handlers, id) ? handlers[id] : one.unknown\n }\n\n if (fn) {\n return fn.call(this, value, ...parameters)\n }\n }\n\n one.handlers = settings.handlers || {}\n one.invalid = settings.invalid\n one.unknown = settings.unknown\n\n // @ts-expect-error: matches!\n return one\n}\n","/**\n * List of legacy HTML named character references that don’t need a trailing semicolon.\n *\n * @type {Array<string>}\n */\nexport const characterEntitiesLegacy = [\n 'AElig',\n 'AMP',\n 'Aacute',\n 'Acirc',\n 'Agrave',\n 'Aring',\n 'Atilde',\n 'Auml',\n 'COPY',\n 'Ccedil',\n 'ETH',\n 'Eacute',\n 'Ecirc',\n 'Egrave',\n 'Euml',\n 'GT',\n 'Iacute',\n 'Icirc',\n 'Igrave',\n 'Iuml',\n 'LT',\n 'Ntilde',\n 'Oacute',\n 'Ocirc',\n 'Ograve',\n 'Oslash',\n 'Otilde',\n 'Ouml',\n 'QUOT',\n 'REG',\n 'THORN',\n 'Uacute',\n 'Ucirc',\n 'Ugrave',\n 'Uuml',\n 'Yacute',\n 'aacute',\n 'acirc',\n 'acute',\n 'aelig',\n 'agrave',\n 'amp',\n 'aring',\n 'atilde',\n 'auml',\n 'brvbar',\n 'ccedil',\n 'cedil',\n 'cent',\n 'copy',\n 'curren',\n 'deg',\n 'divide',\n 'eacute',\n 'ecirc',\n 'egrave',\n 'eth',\n 'euml',\n 'frac12',\n 'frac14',\n 'frac34',\n 'gt',\n 'iacute',\n 'icirc',\n 'iexcl',\n 'igrave',\n 'iquest',\n 'iuml',\n 'laquo',\n 'lt',\n 'macr',\n 'micro',\n 'middot',\n 'nbsp',\n 'not',\n 'ntilde',\n 'oacute',\n 'ocirc',\n 'ograve',\n 'ordf',\n 'ordm',\n 'oslash',\n 'otilde',\n 'ouml',\n 'para',\n 'plusmn',\n 'pound',\n 'quot',\n 'raquo',\n 'reg',\n 'sect',\n 'shy',\n 'sup1',\n 'sup2',\n 'sup3',\n 'szlig',\n 'thorn',\n 'times',\n 'uacute',\n 'ucirc',\n 'ugrave',\n 'uml',\n 'uuml',\n 'yacute',\n 'yen',\n 'yuml'\n]\n","/**\n * Map of named character references from HTML 4.\n *\n * @type {Record<string, string>}\n */\nexport const characterEntitiesHtml4 = {\n nbsp: ' ',\n iexcl: '¡',\n cent: '¢',\n pound: '£',\n curren: '¤',\n yen: '¥',\n brvbar: '¦',\n sect: '§',\n uml: '¨',\n copy: '©',\n ordf: 'ª',\n laquo: '«',\n not: '¬',\n shy: '',\n reg: '®',\n macr: '¯',\n deg: '°',\n plusmn: '±',\n sup2: '²',\n sup3: '³',\n acute: '´',\n micro: 'µ',\n para: '¶',\n middot: '·',\n cedil: '¸',\n sup1: '¹',\n ordm: 'º',\n raquo: '»',\n frac14: '¼',\n frac12: '½',\n frac34: '¾',\n iquest: '¿',\n Agrave: 'À',\n Aacute: 'Á',\n Acirc: 'Â',\n Atilde: 'Ã',\n Auml: 'Ä',\n Aring: 'Å',\n AElig: 'Æ',\n Ccedil: 'Ç',\n Egrave: 'È',\n Eacute: 'É',\n Ecirc: 'Ê',\n Euml: 'Ë',\n Igrave: 'Ì',\n Iacute: 'Í',\n Icirc: 'Î',\n Iuml: 'Ï',\n ETH: 'Ð',\n Ntilde: 'Ñ',\n Ograve: 'Ò',\n Oacute: 'Ó',\n Ocirc: 'Ô',\n Otilde: 'Õ',\n Ouml: 'Ö',\n times: '×',\n Oslash: 'Ø',\n Ugrave: 'Ù',\n Uacute: 'Ú',\n Ucirc: 'Û',\n Uuml: 'Ü',\n Yacute: 'Ý',\n THORN: 'Þ',\n szlig: 'ß',\n agrave: 'à',\n aacute: 'á',\n acirc: 'â',\n atilde: 'ã',\n auml: 'ä',\n aring: 'å',\n aelig: 'æ',\n ccedil: 'ç',\n egrave: 'è',\n eacute: 'é',\n ecirc: 'ê',\n euml: 'ë',\n igrave: 'ì',\n iacute: 'í',\n icirc: 'î',\n iuml: 'ï',\n eth: 'ð',\n ntilde: 'ñ',\n ograve: 'ò',\n oacute: 'ó',\n ocirc: 'ô',\n otilde: 'õ',\n ouml: 'ö',\n divide: '÷',\n oslash: 'ø',\n ugrave: 'ù',\n uacute: 'ú',\n ucirc: 'û',\n uuml: 'ü',\n yacute: 'ý',\n thorn: 'þ',\n yuml: 'ÿ',\n fnof: 'ƒ',\n Alpha: 'Α',\n Beta: 'Β',\n Gamma: 'Γ',\n Delta: 'Δ',\n Epsilon: 'Ε',\n Zeta: 'Ζ',\n Eta: 'Η',\n Theta: 'Θ',\n Iota: 'Ι',\n Kappa: 'Κ',\n Lambda: 'Λ',\n Mu: 'Μ',\n Nu: 'Ν',\n Xi: 'Ξ',\n Omicron: 'Ο',\n Pi: 'Π',\n Rho: 'Ρ',\n Sigma: 'Σ',\n Tau: 'Τ',\n Upsilon: 'Υ',\n Phi: 'Φ',\n Chi: 'Χ',\n Psi: 'Ψ',\n Omega: 'Ω',\n alpha: 'α',\n beta: 'β',\n gamma: 'γ',\n delta: 'δ',\n epsilon: 'ε',\n zeta: 'ζ',\n eta: 'η',\n theta: 'θ',\n iota: 'ι',\n kappa: 'κ',\n lambda: 'λ',\n mu: 'μ',\n nu: 'ν',\n xi: 'ξ',\n omicron: 'ο',\n pi: 'π',\n rho: 'ρ',\n sigmaf: 'ς',\n sigma: 'σ',\n tau: 'τ',\n upsilon: 'υ',\n phi: 'φ',\n chi: 'χ',\n psi: 'ψ',\n omega: 'ω',\n thetasym: 'ϑ',\n upsih: 'ϒ',\n piv: 'ϖ',\n bull: '•',\n hellip: '…',\n prime: '′',\n Prime: '″',\n oline: '‾',\n frasl: '⁄',\n weierp: '℘',\n image: 'ℑ',\n real: 'ℜ',\n trade: '™',\n alefsym: 'ℵ',\n larr: '←',\n uarr: '↑',\n rarr: '→',\n darr: '↓',\n harr: '↔',\n crarr: '↵',\n lArr: '⇐',\n uArr: '⇑',\n rArr: '⇒',\n dArr: '⇓',\n hArr: '⇔',\n forall: '∀',\n part: '∂',\n exist: '∃',\n empty: '∅',\n nabla: '∇',\n isin: '∈',\n notin: '∉',\n ni: '∋',\n prod: '∏',\n sum: '∑',\n minus: '−',\n lowast: '∗',\n radic: '√',\n prop: '∝',\n infin: '∞',\n ang: '∠',\n and: '∧',\n or: '∨',\n cap: '∩',\n cup: '∪',\n int: '∫',\n there4: '∴',\n sim: '∼',\n cong: '≅',\n asymp: '≈',\n ne: '≠',\n equiv: '≡',\n le: '≤',\n ge: '≥',\n sub: '⊂',\n sup: '⊃',\n nsub: '⊄',\n sube: '⊆',\n supe: '⊇',\n oplus: '⊕',\n otimes: '⊗',\n perp: '⊥',\n sdot: '⋅',\n lceil: '⌈',\n rceil: '⌉',\n lfloor: '⌊',\n rfloor: '⌋',\n lang: '〈',\n rang: '〉',\n loz: '◊',\n spades: '♠',\n clubs: '♣',\n hearts: '♥',\n diams: '♦',\n quot: '\"',\n amp: '&',\n lt: '<',\n gt: '>',\n OElig: 'Œ',\n oelig: 'œ',\n Scaron: 'Š',\n scaron: 'š',\n Yuml: 'Ÿ',\n circ: 'ˆ',\n tilde: '˜',\n ensp: ' ',\n emsp: ' ',\n thinsp: ' ',\n zwnj: '',\n zwj: '',\n lrm: '',\n rlm: '',\n ndash: '–',\n mdash: '—',\n lsquo: '‘',\n rsquo: '’',\n sbquo: '‚',\n ldquo: '“',\n rdquo: '”',\n bdquo: '„',\n dagger: '†',\n Dagger: '‡',\n permil: '‰',\n lsaquo: '‹',\n rsaquo: '›',\n euro: '€'\n}\n","/**\n * List of legacy (that don’t need a trailing `;`) named references which could,\n * depending on what follows them, turn into a different meaning\n *\n * @type {Array<string>}\n */\nexport const dangerous = [\n 'cent',\n 'copy',\n 'divide',\n 'gt',\n 'lt',\n 'not',\n 'para',\n 'times'\n]\n","/**\n * @import {Comment, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {stringifyEntities} from 'stringify-entities'\n\nconst htmlCommentRegex = /^>|^->|<!--|-->|--!>|<!-$/g\n\n// Declare arrays as variables so it can be cached by `stringifyEntities`\nconst bogusCommentEntitySubset = ['>']\nconst commentEntitySubset = ['<', '>']\n\n/**\n * Serialize a comment.\n *\n * @param {Comment} node\n * Node to handle.\n * @param {number | undefined} _1\n * Index of `node` in `parent.\n * @param {Parents | undefined} _2\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function comment(node, _1, _2, state) {\n // See: <https://html.spec.whatwg.org/multipage/syntax.html#comments>\n return state.settings.bogusComments\n ? '<?' +\n stringifyEntities(\n node.value,\n Object.assign({}, state.settings.characterReferences, {\n subset: bogusCommentEntitySubset\n })\n ) +\n '>'\n : '<!--' + node.value.replace(htmlCommentRegex, encode) + '-->'\n\n /**\n * @param {string} $0\n */\n function encode($0) {\n return stringifyEntities(\n $0,\n Object.assign({}, state.settings.characterReferences, {\n subset: commentEntitySubset\n })\n )\n }\n}\n","/**\n * @import {Element, Parents} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\nimport {siblingAfter, siblingBefore} from './util/siblings.js'\nimport {closing} from './closing.js'\nimport {omission} from './omission.js'\n\nexport const opening = omission({\n body,\n colgroup,\n head,\n html,\n tbody\n})\n\n/**\n * Whether to omit `<html>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction html(node) {\n const head = siblingAfter(node, -1)\n return !head || head.type !== 'comment'\n}\n\n/**\n * Whether to omit `<head>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction head(node) {\n /** @type {Set<string>} */\n const seen = new Set()\n\n // Whether `srcdoc` or not,\n // make sure the content model at least doesn’t have too many `base`s/`title`s.\n for (const child of node.children) {\n if (\n child.type === 'element' &&\n (child.tagName === 'base' || child.tagName === 'title')\n ) {\n if (seen.has(child.tagName)) return false\n seen.add(child.tagName)\n }\n }\n\n // “May be omitted if the element is empty,\n // or if the first thing inside the head element is an element.”\n const child = node.children[0]\n return !child || child.type === 'element'\n}\n\n/**\n * Whether to omit `<body>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction body(node) {\n const head = siblingAfter(node, -1, true)\n\n return (\n !head ||\n (head.type !== 'comment' &&\n !(head.type === 'text' && whitespace(head.value.charAt(0))) &&\n !(\n head.type === 'element' &&\n (head.tagName === 'meta' ||\n head.tagName === 'link' ||\n head.tagName === 'script' ||\n head.tagName === 'style' ||\n head.tagName === 'template')\n ))\n )\n}\n\n/**\n * Whether to omit `<colgroup>`.\n * The spec describes some logic for the opening tag, but it’s easier to\n * implement in the closing tag, to the same effect, so we handle it there\n * instead.\n *\n * @param {Element} node\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction colgroup(node, index, parent) {\n const previous = siblingBefore(parent, index)\n const head = siblingAfter(node, -1, true)\n\n // Previous colgroup was already omitted.\n if (\n parent &&\n previous &&\n previous.type === 'element' &&\n previous.tagName === 'colgroup' &&\n closing(previous, parent.children.indexOf(previous), parent)\n ) {\n return false\n }\n\n return Boolean(head && head.type === 'element' && head.tagName === 'col')\n}\n\n/**\n * Whether to omit `<tbody>`.\n *\n * @param {Element} node\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction tbody(node, index, parent) {\n const previous = siblingBefore(parent, index)\n const head = siblingAfter(node, -1)\n\n // Previous table section was already omitted.\n if (\n parent &&\n previous &&\n previous.type === 'element' &&\n (previous.tagName === 'thead' || previous.tagName === 'tbody') &&\n closing(previous, parent.children.indexOf(previous), parent)\n ) {\n return false\n }\n\n return Boolean(head && head.type === 'element' && head.tagName === 'tr')\n}\n","/**\n * @import {Nodes, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {zwitch} from 'zwitch'\nimport {comment} from './comment.js'\nimport {doctype} from './doctype.js'\nimport {element} from './element.js'\nimport {raw} from './raw.js'\nimport {root} from './root.js'\nimport {text} from './text.js'\n\n/**\n * @type {(node: Nodes, index: number | undefined, parent: Parents | undefined, state: State) => string}\n */\nexport const handle = zwitch('type', {\n invalid,\n unknown,\n handlers: {comment, doctype, element, raw, root, text}\n})\n\n/**\n * Fail when a non-node is found in the tree.\n *\n * @param {unknown} node\n * Unknown value.\n * @returns {never}\n * Never.\n */\nfunction invalid(node) {\n throw new Error('Expected node, not `' + node + '`')\n}\n\n/**\n * Fail when a node with an unknown type is found in the tree.\n *\n * @param {unknown} node_\n * Unknown node.\n * @returns {never}\n * Never.\n */\nfunction unknown(node_) {\n // `type` is guaranteed by runtime JS.\n const node = /** @type {Nodes} */ (node_)\n throw new Error('Cannot compile unknown node `' + node.type + '`')\n}\n","/**\n * @import {Doctype, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\n/**\n * Serialize a doctype.\n *\n * @param {Doctype} _1\n * Node to handle.\n * @param {number | undefined} _2\n * Index of `node` in `parent.\n * @param {Parents | undefined} _3\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function doctype(_1, _2, _3, state) {\n return (\n '<!' +\n (state.settings.upperDoctype ? 'DOCTYPE' : 'doctype') +\n (state.settings.tightDoctype ? '' : ' ') +\n 'html>'\n )\n}\n","/**\n * @import {Parents} from 'hast'\n * @import {Raw} from 'mdast-util-to-hast'\n * @import {State} from '../index.js'\n */\n\nimport {text} from './text.js'\n\n/**\n * Serialize a raw node.\n *\n * @param {Raw} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function raw(node, index, parent, state) {\n return state.settings.allowDangerousHtml\n ? node.value\n : text(node, index, parent, state)\n}\n","/**\n * @import {Parents, Root} from 'hast'\n * @import {State} from '../index.js'\n */\n\n/**\n * Serialize a root.\n *\n * @param {Root} node\n * Node to handle.\n * @param {number | undefined} _1\n * Index of `node` in `parent.\n * @param {Parents | undefined} _2\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function root(node, _1, _2, state) {\n return state.all(node)\n}\n","/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, CSSResultArray, TemplateResult, PropertyValueMap } from 'lit-element';\nimport { customElement, state } from 'lit/decorators.js';\nimport { styles } from './nile-highlighter.css';\nimport NileElement from '../internal/nile-element';\n\nimport { createHighlighter } from 'shiki'\nimport { ShikiTheme, ShikiLanguage } from './theme-list';\n\n\n/**\n * Nile highlighter component.\n *\n * @tag nile-highlighter\n *\n */\n@customElement('nile-highlighter')\nexport class NileHighlighter extends NileElement {\n\n\t@property({ type: String}) code = ``;\n\t\n\t@property({ type: String, reflect:true }) language : ShikiLanguage = 'javascript';\n\n\t@property({ type: String, reflect:true }) theme: ShikiTheme = 'min-light';\n\n\t@state() highlightedCode = '';\n\n\tprivate highlighter:any;\n\t\n\t/**\n\t * The styles for nile-highlighter\n\t * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n\t */\n\tpublic static get styles(): CSSResultArray {\n\t\treturn [styles];\n\t}\n\n\t/* #endregion */\n\n\tprotected async updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>) {\n\t\tif (changedProperties.has('language') || changedProperties.has('theme')) {\n\t\t\tawait this.updateHighlighter()\n\t\t}\n\t\tif (changedProperties.has('code') || changedProperties.has('language') || changedProperties.has('theme')) {\n\t\t\tawait this.updateHighlightedCode()\n\t\t}\n\t}\n\t/* #region Methods */\n\t/**\n\t * Render method\n\t * @slot This is a slot test\n\t */\n\tpublic render(): TemplateResult {\n\t\treturn html`\n\t\t\t\t<div class=\"code-container\" .innerHTML=${this.highlightedCode}></div>\n\t\t\t`;\n\t}\n\n\tasync updateHighlighter(){\n\t\tthis.highlighter = await createHighlighter({\n\t\t\tthemes: [this.theme],\n\t\t\tlangs: [this.language],\n\t\t})\n\t}\n\n\tasync updateHighlightedCode(){\n\t\tthis.highlightedCode = await this.highlighter.codeToHtml(this.code, {\n\t\t\tlang: this.language,\n\t\t\ttheme: this.theme,\n\t\t});\n\t}\n\n\t/* #endregion */\n}\n\nexport default NileHighlighter;\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'nile-highlighter': NileHighlighter;\n\t}\n}"],"names":["_emscripten_get_now","performance","now","Date","main","async","init","e","n","i","updateGlobalBufferAndViews","emscripten_realloc_buffer","size","UTF8ToString","ptr","maxBytesToRead","heapOrArray","idx","endIdx","endPtr","buffer","UTF8Decoder","decode","subarray","str","u0","String","fromCharCode","u1","u2","ch","UTF8ArrayToString","binding","HEAPU8","wasmMemory","grow","byteLength","_unused","buf","Uint8Array","HEAPU32","Uint32Array","TextDecoder","undefined","asmLibraryArg","emscripten_get_now","emscripten_memcpy_big","dest","src","num","copyWithin","emscripten_resize_heap","requestedSize","oldSize","length","maxHeapSize","cutDown","overGrownHeapSize","Math","min","alignUp","max","fd_write","_context10","next","info","env","wasi_snapshot_preview1","exports","memory","Object","assign","_context9","stop","_callee8","createWasm","_callee9","_f","apply","arguments","loadWasm","options","initPromise","_regeneratorRuntime","wrap","_callee2$","_context3","prev","instance","instantiator","dataOrOptions","isInstantiatorModule","data","isDataOptionsObject","Response","isResponse","ArrayBuffer","isView","Buffer","isBuffer","SharedArrayBuffer","isArrayBuffer","WebAssembly","Module","_makeArrayBufferLoader","instantiateStreaming","importObject","t3","sent","_ref3","_asyncToGenerator","mark","arrayBuffer","instantiate","_context2","_callee","_x3","_makeResponseNonStreamingLoader","default","_callee2","_x2","_ref2","onigBinding","_load","createOnigurumaEngine","createScanner","patterns","OnigScanner","createString","s","OnigString","_context11","_callee10","_x5","doClone","something","Array","isArray","arr","r","len","cloneArray","obj","key","cloneObj","mergeObjects","target","sources","forEach","source","basename","path","lastIndexOf","substring","substr","strcmp","a","b","strArrCmp","len1","len2","res","isValidHexColor","hex","test","escapeRegExpCharacters","value","replace","_matchesScope","scopeName","scopePattern","startsWith","createMatchers","selector","matchesName","results","tokenizer","input","regex","match","exec","newTokenizer","token","priority","charAt","console","log","matcher","parseConjunction","push","t","parseOperand","o","expressionToNegate","matcherInput","expressionInParents","matchers","some","matcher2","parseInnerExpression","isIdentifier","identifiers","every","disposeOnigString","dispose","collectReferencesOfReference","reference","baseGrammarScopeName","repo","result","selfGrammar","lookup","Error","baseGrammar","TopLevelRuleReference","collectExternalReferencesInTopLevelRule","collectExternalReferencesInTopLevelRepositoryRule","ruleName","repository","injections","_iterator4","_createForOfIteratorHelper","_step4","done","injection","add","err","f","context","collectExternalReferencesInRules","values","rules","_iterator5","_step5","rule","visitedRule","has","patternRepository","include","parseInclude","kind","newContext","TopLevelRepositoryRuleReference","BaseReference","SelfReference","indexOfSharp","indexOf","TopLevelReference","RelativeReference","TopLevelRepositoryReference","_tokenizeString","grammar","lineText","isFirstLine","linePos","stack","lineTokens","checkWhileConditions","timeLimit","lineLength","content","STOP","anchorPosition","whileCheckResult","beginRuleCapturedEOL","whileRules","node","pop","nodeRule","getRule","BeginWhileRule","whileRule","_Tt","prepareRuleWhileSearch","endRule","ruleScanner","findOptions","findNextMatchSync","ruleId","whileRuleId","captureIndices","produce","start","handleCaptures","whileCaptures","end","_checkWhileConditions","startTime","TokenizeStringResult","scanNext","matchResult","prepareRuleSearch","matchedRuleId","matchRule","getInjections","injectionResult","bestMatchRuleId","bestMatchRating","Number","MAX_VALUE","bestMatchCaptureIndices","bestMatchResultPriority","scopes","contentNameScopesList","getScopeNames","matchRating","priorityMatch","matchInjections","matchResultScore","injectionResultScore","matchRuleOrInjections","hasAdvanced","endRuleId","poppedRule","withContentNameScopesList","nameScopesList","endCaptures","popped","parent","getAnchorPos","getEnterPos","_rule","beforePush","getName","pushAttributed","BeginEndRule","pushedRule","beginCaptures","contentName","getContentName","endHasBackReferences","withEndRule","getEndWithResolvedBackReferences","hasSameRuleAs","whileHasBackReferences","getWhileWithResolvedBackReferences","captures","safePop","endRegexSource","allowA","allowG","compileAG","compileWhileAG","lineTextContent","localStack","maxEnd","captureRule","captureIndex","endPos","produceFromScopes","retokenizeCapturedWithRuleId","stackClone","onigSubStr","createOnigString","captureRuleScopeName","captureRuleScopesList","LocalStackElement","collectInjections","ruleFactoryHelper","nameMatcher","RuleFactory","getCompiledRuleId","_iterator9","_step9","debugSelector","identifers","lastIndex","identifier","scopesAreMatching","thisScopeName","initGrammar","base","$self","$vscodeTextmateLocation","name","$base","merge","definitions","space","property","normal","index","Schema","normalize","toLowerCase","increment","pow","powers","create","definition","prop","properties","own","call","DefinedInfo","transform","attributes","mustUseProperty","includes","attribute","caseSensitiveTransform","caseInsensitiveTransform","kebab","$0","camelcase","toUpperCase","core","subset","cached","subsetToRegexCache","get","groups","regexEscapeRegex","RegExp","join","charactersToExpression","set","charactersToExpressionCached","defaultSubsetRegex","basic","escapeOnly","surrogatePairsRegex","pair","all","format","charCodeAt","controlCharactersRegex","character","formatSmart","code","named","numeric","omit","toString","hexadecimalRegex","toHexadecimal","omitOptionalSemicolons","useNamedReferences","useShortestReferences","characters","characterEntitiesLegacy","dangerous","notAlphanumericRegex","toNamed","decimal","decimalRegex","toDecimal","stringifyEntities","ccount","TypeError","count","stringify","settings","concat","_toConsumableArray","padRight","padLeft","trim","whitespace","thing","type","empty","re","siblings","includeWhitespace","children","emptyChildren","offset","omission","handlers","tagName","headOrColgroupOrCaption","_","siblingAfter","rubyElement","cells","serializeAttribute","state","schema","Type","Info","slice","valid","rest","dash","dashes","cap","find","x","allowParseErrors","y","allowDangerousCharacters","quote","overloadedBoolean","Boolean","isNaN","characterReferences","constants","commaSeparated","commas","spaces","tightCommaSeparatedLists","collapseEmptyAttributes","preferUnquoted","unquoted","quoteSmart","alternative","single","text","textEntitySubset","one","handle","this","splitLines","preserveEnding","parts","split","lines","_n34","line","isPlainLang","lang","isSpecialLang","isNoneTheme","theme","isSpecialTheme","addClassToHast","className","_a","class","targets","_iterator19","c","_step19","normalizeGetter","p","_callee11$","_context12","abrupt","Promise","resolve","then","_callee11","_On","resolveColorReplacements","replacements","_objectSpread","colorReplacements","themeName","_i12","_Object$entries","entries","_Object$entries$_i","_slicedToArray","applyColorReplacements","color","getTokenStyleObject","styles","bgColor","fontStyle","FontStyle","Italic","Bold","Underline","stringifyTokenStyle","map","_ref6","_ref7","setLastGrammarStateToMap","keys","_grammarStateMap","getLastGrammarStateFromMap","getScopes","visited","Set","pushScope","stack2","transformerDecorations","WeakMap","getContext","shiki","meta","normalizePosition","ShikiError","converter","indexToPos","JSON","posToIndex","_ref8","_ref9","_iterator20","_step20","createPositionConverter","decorations","d","items","foo","j","bar","isFooHasBarStart","isFooHasBarEnd","isBarHasFooStart","isBarHasFooEnd","verifyIntersections","tokens","splitted","breakpoints","sorted","from","sort","flatMap","breakpointsInToken","filter","offsets","lastOffset","_iterator21","_step21","splitToken","splitTokens","codeEl","_this$options$decorat2","ctx","applyLineSection","decoration","lineEl","startIndex","endIndex","POSITIVE_INFINITY","alwaysWrap","wrapper","applyDecoration","splice","applyLine","el","_e$properties","lineApplies","_iterator22","_loop2","_i14","unshift","_step22","_loop","getTransformers","transformers","builtInTransformers","findSequence","position","nextEscape","nextClose","sequence","startPosition","parseColor","colorMode","rgb","parseInt","colorIndex","parseSequence","commands","codeInt","namedColors","_Jn","_Jn3","createColorPalette","namedColorsMap","defaultNamedColorsMap","namedColor","rgbColor","padStart","colorTable","tableColor","levels","g","level","getColorTable","tokenizeAnsiWithTheme","fileContents","colorPalette","fromEntries","colors","parser","foreground","background","decorations2","parse","findResult","_iterator23","_step23","styleToken","clear","_iterator24","_step24","createAnsiSequenceParser","bg","fg","hexMatch","alpha","round","cssVarMatch","dimColor","None","codeToTokensBase","internal","_n$lang","getLoadedThemes","_t$setTheme","setTheme","colorMap","_grammar","getLanguage","grammarState","ShikiError$1","themes","_tokenizeWithTheme","GrammarState","stateStack","tokenizeWithTheme","tokenizeMaxLineLength","_r$tokenizeMaxLineLen","_r$tokenizeTimeLimit","tokenizeTimeLimit","getInternalStack","getGrammarStack","INITIAL","grammarContextCode","actual","final","_a$_t","lineOffset","resultWithScopes","tokensWithScopes","tokensWithScopesIndex","includeExplanation","tokenizeLine","tokenizeLine2","tokensLength","nextStartIndex","metadata","EncodedTokenMetadata","getForeground","getFontStyle","themeSettingsSelectors","_iterator25","_step25","setting","selectors","_typeof","scope","explanation","tokenWithScopes","tokenWithScopesText","explainThemeScopesFull","ruleStack","themeSelectors","themeMatches","explainThemeScope","matchesOne","matches","parentScopes","selectorParentIndex","parentIndex","_iterator26","_step26","_step26$value","_step27","_iterator27","selectorPieces","codeToTokensWithThemes","themedTokens","tokens2","outThemes","_loop3","_i21","outLines","i2","indexes","current","l","minLength","syncThemesTokenization","mergedTokens","lineIdx","_token","tokenIdx","mergedToken","variants","themeIdx","_t$e$r","__","___","mergedGrammarState","codeToTokens","rootStyle","_n$defaultColor","defaultColor","cssVariablePrefix","themeTokens","themeRegs","getTheme","themesOrder","merged","variantsOrder","styleKeys","mergedStyles","cur","_iterator28","_step28","keyName","varKey","htmlStyle","mergeToken","themeColorReplacements","_theme","codeToHast","_options","transformerContext","_code","_iterator29","_step29","transformer","preprocess","_si","_n$mergeWhitespaces","mergeWhitespaces","newLine","carryOnContent","firstOffset","couldMerge","mergeWhitespaceTokens","_e46","leading","trailing","expanded","splitWhitespaceTokens","contextSource","_iterator30","_step30","root","structure","tabindex","preNode","style","_ref11","_ref12","codeNode","lineNodes","An","pre","lineNode","col","_iterator31","_step31","tokenNode","htmlAttrs","_iterator33","_step33","span","_iterator32","_step32","_iterator34","_step34","_iterator35","_step35","_iterator36","_step36","tokensToHast","codeToHtml","tree","options_","emptyOptions","omitOptionalTags","tightAttributes","upperDoctype","tightDoctype","bogusComments","tightSelfClosing","allowDangerousHtml","voids","htmlVoidElements","emptyCharacterReferences","closeSelfClosing","closeEmptyElements","svg","html","toHtml","_iterator37","_step37","postprocess","normalizeTheme","rawTheme","RESOLVED_KEY","tokenColors","_t96$settings","_t96$settings2","_e$colors","_e$colors2","globalSetting","VSCODE_FALLBACK_EDITOR_FG","light","dark","VSCODE_FALLBACK_EDITOR_BG","replacementCount","replacementMap","Map","getReplacementColor","replaceFg","replaceBg","clone","replacement","_i23","_Object$keys2","_e$colors$_t","defineProperty","enumerable","writable","resolveLangs","langs","_callee13$","_context14","t0","flat","_callee13","resolveThemes","_callee15$","_context16","_di","createShikiInternal","_context19","engine","createOnigurumaEngine$1","_defaultWasmLoader","instancesCount","warnings","warn","isDisposed","resolver","Resolver","_registry","Registry","langAlias","_lastTheme","ensureNotDisposed","loadLanguageSync","langs2","loadLanguages","loadThemeSync","_len8","themes2","_iterator41","_step41","loadTheme","_defineProperty","getColorMap","_lang","getGrammar","getLoadedLanguages","loadLanguage","_context18","t1","_callee17","_loadTheme","m","Symbol","createShikiInternalSync","_callee18","createHighlighterCore","_context20","getLastGrammarState","_len11","args","_len12","_key12","_i$theme","_e$setTheme","options2","getInternalContext","_Si","createdBundledHighlighter","arg1","arg2","arg3","bundledLanguages","bundledThemes","_ref23","resolveLang","resolveTheme","bundle","_themes","_t$themes","_t$langs","_len5","_len6","_x9","setters","_tslib","bundledLanguagesInfo","id","import","_import","_context","aliases","bundledThemesInfo","displayName","message","super","_this","_Error2","_this2","_inherits","_createClass","_wrapNativeSuper","multiple","UtfString","utf16Length","utf8Length","_utf8ByteLength","computeIndicesMapping","utf16OffsetToUtf8","utf8OffsetToUtf16","utf8Value","i8","i16","charCode","codePoint","wasSurrogatePair","nextCharCode","utf16Value","omalloc","codepoint","w","LAST_ID","_onigBinding","utfString","_sharedPtrInUse","_sharedPtr","convertUtf8OffsetToUtf16","utf8Offset","convertUtf16OffsetToUtf8","utf16Offset","ofree","static","v","strPtrsArr","strLenArr","strPtrsPtr","strLenPtr","scannerPtr","createOnigScanner","getLastOnigError","throwLastOnigError","_ptr","freeOnigScanner","string","arg","_findNextMatchSync","debugCall","resultPtr","findNextOnigScannerMatch","beg","CAPTURING_REGEX_SOURCE","RegexSource","hasCaptures","regexSource","replaceCaptures","captureSource","commandIndex","command","capture","CachedFn","E","fn","cache","Theme","R","_colorMap","_defaults","_root","_cachedMatchRoot","getDefaults","scopePath","effectiveRule","scopeMustMatch","_scopePathMatchesParentScopes","StyleAttributes","ScopeStack","createFromRawTheme","createFromParsedTheme","resultLen","entry","_scope","segments","lenJ","reverse","ParsedThemeRule","parseTheme","parsedThemeRules","defaultFontStyle","defaultForeground","defaultBackground","incomingDefaults","shift","ColorMap","defaults","getId","ThemeTrieElement","ThemeTrieElementRule","insert","resolveParsedThemeRules","_ScopeStack","getSegments","item","_extends","other","getExtensionIfDefined","scopeNames","_iterator","_step","I","foregroundId","backgroundId","G","FontStyle2","NotSet","Strikethrough","_lastColorId","_id2color","_color2id","_isFrozen","emptyParentScopes","freeze","scopeDepth","_ThemeTrieElementRule","acceptOverwrite","cloneArr","_mainRule","rulesWithParentScopes","_children","_rulesWithParentScopes","head","tail","dotIndex","hasOwnProperty","_ThemeTrieElement","_cmpBySpecificity","_doInsertHere","child","aParentIndex","bParentIndex","parentScopeLengthDiff","_classCallCheck","toBinaryStr","encodedTokenAttributes","print","languageId","_EncodedTokenMetadata","getLanguageId","tokenType","getTokenType","getBackground","containsBalancedBrackets","_languageId","_tokenType","_containsBalancedBracketsBit","_fontStyle","_foreground","_background","X","toKey","K","ExternalReferenceCollector","Y","_references","_seenReferenceKeys","ScopeDependencyProcessor","Q","initialScopeName","seenFullScopeRequests","seenPartialScopeRequests","processQueue","q","deps","_iterator2","_step2","dep","_iterator3","references","_step3","it","constructor","rt","ot","st","lt","HAS_BACK_REFERENCES","BACK_REFERENCING_END","Rule","ht","$location","_name","_nameIsCapturing","_contentName","_contentNameIsCapturing","location","filename","CaptureRule","dt","_this4","_ht","collectPatterns","out","compile","MatchRule","ft","_match","RegExpSource","_cachedCompiledPatterns","_this5","_ht2","debugMatchRegExp","_getCachedCompiledPatterns","RegExpSourceList","IncludeOnlyRule","gt","hasMissingPatterns","_this6","_ht3","_iterator6","_step6","pattern","jt","begin","applyEndPatternLast","_begin","_end","hasBackReferences","_this7","_ht4","debugBeginRegExp","debugEndRegExp","resolveBackReferences","_iterator7","_step7","setSource","yt","_while","_cachedCompiledWhilePatterns","_this8","_ht5","_iterator8","_step8","compileWhile","_getCachedCompiledWhilePatterns","createCaptureRule","helper","registerRule","desc","_RuleFactory","_compileCaptures","_compilePatterns","maximumCaptureId","captureId","numericCaptureId","localIncludedRule","externalGrammarName","externalGrammarInclude","externalGrammar","getExternalGrammar","externalIncludedRule","skipRule","regExpSource","lastPushedPos","output","hasAnchor","pos","nextCh","_anchorCache","_buildAnchorCache","_RegExpSource","newSource","capturedValues","g1","A0_G0_result","A0_G1_result","A1_G0_result","A1_G1_result","A0_G0","A0_G1","A1_G0","A1_G1","resolveAnchors","vt","_items","_hasAnchors","_cached","_disposeCaches","onigLib","regExps","CompiledRule","_resolveAnchors","kt","scanner","BasicScopeAttributes","St","_BasicScopeAttributesProvider","initialLanguageId","embeddedLanguages","_getBasicScopeAttributes","_scopeToLanguage","standardTokenType","_toStandardTokenType","_defaultAttributes","_embeddedLanguagesMatcher","ScopeMatcher","getDefaultAttributes","getBasicScopeAttributes","_NULL_SCOPE_METADATA","STANDARD_TOKEN_TYPE_REGEXP","BasicScopeAttributesProvider","Lt","scopesRegExp","escapedScopes","_ref4","_ref5","process","VSCODE_TEXTMATE_DEBUG","At","stoppedEarly","Pt","Grammar","$t","_rootScopeName","initialLanguage","tokenTypes","balancedBracketSelectors","grammarRepository","_onigLib","_basicScopeAttributesProvider","_rootId","_lastRuleId","_ruleId2desc","_includedGrammars","_grammarRepository","_injections","_tokenTypeMatchers","_i9","_Object$keys","_iterator10","_step10","themeProvider","_iterator11","_step11","getMetadataForScope","_collectInjections","scopeName2","rawInjections","expression","injectionScopeNames","injectionScopeName","injectionGrammar","injectionSelector","i1","factory","rawIncludedGrammar","prevState","_tokenize","getResult","getBinaryResult","emitBinaryTokens","StateStackImpl","NULL","reset","rawDefaultMetadata","defaultStyle","defaultMetadata","rootScopeName","scopeList","AttributedScopeStack","createRootAndLookUpScopeName","createRoot","onigLineText","LineTokens","tokenAttributes","equals","_AttributedScopeStack","_pushAttributed","_iterator12","_step12","self","_n$parent$scopePath","_StateStackImpl","fromExtension","namesScopeList","_iterator13","_step13","frame","rawRootMetadata","themeMatch","resolvedTokenAttributes","mergeAttributes","existingTokenAttributes","basicScopeAttributes","styleAttributes","rawMetadata","newPath","scopeThemeMatchResult","enterPos","anchorPos","_stackElementBrand","depth","_enterPos","_anchorPos","_equals","_reset","_writeString","outIndex","contentNameScopeStack","toStateStackFrame","_this$nameScopesList$","_this$nameScopesList2","_this$parent$nameScop","_this$parent","_this$contentNameScop2","_this$contentNameScop3","_structuralEquals","pushFrame","_e$nameScopesList","_n$enterPos","_n$anchorPos","BalancedBracketSelectors","_t","balancedBracketScopes","unbalancedBracketScopes","allowAny","matchesNever","_iterator14","_step14","excluder","_iterator15","_step15","includer","zt","tokenTypeOverrides","_emitBinaryTokens","_tokenTypeOverrides","_lineText","_tokens","_binaryTokens","_lastTokenEndIndex","scopesList","_t$getScopeNames2","_t$tokenAttributes","_this$balancedBracket","matchesAlways","_t$getScopeNames","scopes2","_iterator16","_step16","SyncRegistry","Ft","_grammars","_rawGrammars","_injectionGrammars","_iterator17","_step17","addGrammar","targetScope","grammarForScopeName","rawGrammar","createGrammar","Ht","_syncRegistry","_ensureGrammarCache","loadGrammarWithEmbeddedLanguages","loadGrammarWithConfiguration","configuration","_loadGrammar","unbalancedBracketSelectors","loadGrammar","dependencyProcessor","request","_loadSingleGrammar","_grammarForScopeName","_doLoadSingleGrammar","Vt","prototype","Kt","booleanish","number","spaceSeparated","commaOrSpaceSeparated","defined","boolean","checks","types","ae","mask","check","_assertThisInitialized","_this13","xlink","xLinkActuate","xLinkArcRole","xLinkHref","xLinkRole","xLinkShow","xLinkTitle","xLinkType","xml","xmlLang","xmlBase","xmlSpace","xmlns","xmlnsxlink","xmlnsXLink","aria","ariaActiveDescendant","ariaAtomic","ariaAutoComplete","ariaBusy","ariaChecked","ariaColCount","ariaColIndex","ariaColSpan","ariaControls","ariaCurrent","ariaDescribedBy","ariaDetails","ariaDisabled","ariaDropEffect","ariaErrorMessage","ariaExpanded","ariaFlowTo","ariaGrabbed","ariaHasPopup","ariaHidden","ariaInvalid","ariaKeyShortcuts","ariaLabel","ariaLabelledBy","ariaLevel","ariaLive","ariaModal","ariaMultiLine","ariaMultiSelectable","ariaOrientation","ariaOwns","ariaPlaceholder","ariaPosInSet","ariaPressed","ariaReadOnly","ariaRelevant","ariaRequired","ariaRoleDescription","ariaRowCount","ariaRowIndex","ariaRowSpan","ariaSelected","ariaSetSize","ariaSort","ariaValueMax","ariaValueMin","ariaValueNow","ariaValueText","role","acceptcharset","classname","htmlfor","httpequiv","abbr","accept","acceptCharset","accessKey","action","allow","allowFullScreen","allowPaymentRequest","allowUserMedia","alt","as","autoCapitalize","autoComplete","autoFocus","autoPlay","blocking","charSet","checked","cite","cols","colSpan","contentEditable","controls","controlsList","coords","crossOrigin","dateTime","decoding","defer","dir","dirName","disabled","download","draggable","encType","enterKeyHint","fetchPriority","form","formAction","formEncType","formMethod","formNoValidate","formTarget","headers","height","hidden","high","href","hrefLang","htmlFor","httpEquiv","imageSizes","imageSrcSet","inert","inputMode","integrity","is","isMap","itemId","itemProp","itemRef","itemScope","itemType","label","language","list","loading","loop","low","manifest","maxLength","media","method","muted","nonce","noModule","noValidate","onAbort","onAfterPrint","onAuxClick","onBeforeMatch","onBeforePrint","onBeforeToggle","onBeforeUnload","onBlur","onCancel","onCanPlay","onCanPlayThrough","onChange","onClick","onClose","onContextLost","onContextMenu","onContextRestored","onCopy","onCueChange","onCut","onDblClick","onDrag","onDragEnd","onDragEnter","onDragExit","onDragLeave","onDragOver","onDragStart","onDrop","onDurationChange","onEmptied","onEnded","onError","onFocus","onFormData","onHashChange","onInput","onInvalid","onKeyDown","onKeyPress","onKeyUp","onLanguageChange","onLoad","onLoadedData","onLoadedMetadata","onLoadEnd","onLoadStart","onMessage","onMessageError","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onOffline","onOnline","onPageHide","onPageShow","onPaste","onPause","onPlay","onPlaying","onPopState","onProgress","onRateChange","onRejectionHandled","onReset","onResize","onScroll","onScrollEnd","onSecurityPolicyViolation","onSeeked","onSeeking","onSelect","onSlotChange","onStalled","onStorage","onSubmit","onSuspend","onTimeUpdate","onToggle","onUnhandledRejection","onUnload","onVolumeChange","onWaiting","onWheel","open","optimum","ping","placeholder","playsInline","popover","popoverTarget","popoverTargetAction","poster","preload","readOnly","referrerPolicy","rel","required","reversed","rows","rowSpan","sandbox","scoped","seamless","selected","shadowRootClonable","shadowRootDelegatesFocus","shadowRootMode","shape","sizes","slot","spellCheck","srcDoc","srcLang","srcSet","step","tabIndex","title","translate","typeMustMatch","useMap","width","writingSuggestions","align","aLink","archive","axis","border","borderColor","bottomMargin","cellPadding","cellSpacing","char","charOff","classId","codeBase","codeType","compact","declare","event","face","frameBorder","hSpace","leftMargin","link","longDesc","lowSrc","marginHeight","marginWidth","noResize","noHref","noShade","noWrap","object","profile","prompt","rev","rightMargin","scheme","scrolling","standby","summary","topMargin","valueType","version","vAlign","vLink","vSpace","allowTransparency","autoCorrect","autoSave","disablePictureInPicture","disableRemotePlayback","prefix","security","unselectable","accentHeight","alignmentBaseline","arabicForm","baselineShift","capHeight","clipPath","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","dataType","dominantBaseline","enableBackground","fillOpacity","fillRule","floodColor","floodOpacity","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontVariant","fontWeight","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","horizAdvX","horizOriginX","horizOriginY","imageRendering","letterSpacing","lightingColor","markerEnd","markerMid","markerStart","navDown","navDownLeft","navDownRight","navLeft","navNext","navPrev","navRight","navUp","navUpLeft","navUpRight","onActivate","onBegin","onEnd","onFocusIn","onFocusOut","onMouseWheel","onRepeat","onShow","onZoom","overlinePosition","overlineThickness","paintOrder","panose1","pointerEvents","renderingIntent","shapeRendering","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","strokeDashArray","strokeDashOffset","strokeLineCap","strokeLineJoin","strokeMiterLimit","strokeOpacity","strokeWidth","textAnchor","textDecoration","textRendering","transformOrigin","typeOf","underlinePosition","underlineThickness","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","vHanging","vIdeographic","vMathematical","vectorEffect","vertAdvY","vertOriginX","vertOriginY","wordSpacing","writingMode","xHeight","playbackOrder","timelineBegin","about","accumulate","additive","alphabetic","amplitude","ascent","attributeName","attributeType","azimuth","bandwidth","baseFrequency","baseProfile","bbox","bias","by","calcMode","clip","clipPathUnits","contentScriptType","contentStyleType","cursor","cx","cy","defaultAction","descent","diffuseConstant","direction","display","dur","divisor","dx","dy","edgeMode","editable","elevation","exponent","externalResourcesRequired","fill","filterRes","filterUnits","focusable","focusHighlight","fr","fx","fy","g2","glyphRef","gradientTransform","gradientUnits","handler","hanging","hatchContentUnits","hatchUnits","ideographic","initialVisibility","in","in2","intercept","k","k1","k2","k3","k4","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","kerning","lengthAdjust","limitingConeAngle","local","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","mathematical","mediaCharacterEncoding","mediaContentEncodings","mediaSize","mediaTime","mode","numOctaves","observer","opacity","operator","order","orient","orientation","origin","overflow","overlay","pathLength","patternContentUnits","patternTransform","patternUnits","phase","pitch","points","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","propagate","radius","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","requiredFonts","requiredFormats","resource","restart","rotate","rx","ry","scale","seed","side","slope","snapshotTime","specularConstant","specularExponent","spreadMethod","spacing","startOffset","stdDeviation","stemh","stemv","stitchTiles","stroke","surfaceScale","syncBehavior","syncBehaviorDefault","syncMaster","syncTolerance","syncToleranceDefault","systemLanguage","tableValues","targetX","targetY","textLength","transformBehavior","to","unicode","viewBox","viewTarget","visibility","widths","x1","x2","xChannelSelector","y1","y2","yChannelSelector","z","zoomAndPan","htmlBase","svgBase","characterEntitiesHtml4","nbsp","iexcl","cent","pound","curren","yen","brvbar","sect","uml","copy","ordf","laquo","not","shy","reg","macr","deg","plusmn","sup2","sup3","acute","micro","para","middot","cedil","sup1","ordm","raquo","frac14","frac12","frac34","iquest","Agrave","Aacute","Acirc","Atilde","Auml","Aring","AElig","Ccedil","Egrave","Eacute","Ecirc","Euml","Igrave","Iacute","Icirc","Iuml","ETH","Ntilde","Ograve","Oacute","Ocirc","Otilde","Ouml","times","Oslash","Ugrave","Uacute","Ucirc","Uuml","Yacute","THORN","szlig","agrave","aacute","acirc","atilde","auml","aring","aelig","ccedil","egrave","eacute","ecirc","euml","igrave","iacute","icirc","iuml","eth","ntilde","ograve","oacute","ocirc","otilde","ouml","divide","oslash","ugrave","uacute","ucirc","uuml","yacute","thorn","yuml","fnof","Alpha","Beta","Gamma","Delta","Epsilon","Zeta","Eta","Theta","Iota","Kappa","Lambda","Mu","Nu","Xi","Omicron","Pi","Rho","Sigma","Tau","Upsilon","Phi","Chi","Psi","Omega","beta","gamma","delta","epsilon","zeta","eta","theta","iota","kappa","lambda","mu","nu","xi","omicron","pi","rho","sigmaf","sigma","tau","upsilon","phi","chi","psi","omega","thetasym","upsih","piv","bull","hellip","prime","Prime","oline","frasl","weierp","image","real","trade","alefsym","larr","uarr","rarr","darr","harr","crarr","lArr","uArr","rArr","dArr","hArr","forall","part","exist","nabla","isin","notin","ni","prod","sum","minus","lowast","radic","infin","ang","and","or","cup","int","there4","sim","cong","asymp","ne","equiv","le","ge","sub","sup","nsub","sube","supe","oplus","otimes","perp","sdot","lceil","rceil","lfloor","rfloor","rang","loz","spades","clubs","hearts","diams","quot","amp","OElig","oelig","Scaron","scaron","Yuml","circ","tilde","ensp","emsp","thinsp","zwnj","zwj","lrm","rlm","ndash","mdash","lsquo","rsquo","sbquo","ldquo","rdquo","bdquo","dagger","Dagger","permil","lsaquo","rsaquo","euro","htmlCommentRegex","bogusCommentEntitySubset","commentEntitySubset","siblingBefore","closing","body","caption","colgroup","dd","li","optgroup","option","rp","tbody","td","tfoot","th","thead","tr","opening","previous","seen","_iterator18","_step18","double","parameters","invalid","unknown","_len2","zwitch","node_","comment","_1","_2","doctype","_3","element","selfClosing","last","serializeAttributes","raw","Dn","_this14","__defProp$2","__publicField$2","configurable","Gn","stacksMap","_stacks","_stack","toJSON","initial","toArray","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","__defProp$1","__publicField$1","gi","__defNormalProp$1","Registry$1","ji","_resolver","_langs","_this15","_alias","_Ht","_resolvedThemes","_loadedThemesCache","textmateTheme","_textmateThemeCache","resolved","_resolvedGrammars","_this16","embeddedLazilyBy","_langMap","embeddedLangsLazy","addLanguage","grammarConfig","alias","_loadedLanguagesCache","_iterator38","_step38","delete","_this$_syncRegistry","_langGraph","_iterator39","_step39","resolveEmbeddedLanguages","langsGraphArray","missingLangs","_ref13","_ref14","dependents","_ref15","_e$embeddedLangs","_ref16","embeddedLangs","_ref17","_ref18","_ref19","_ref20","_ref21","_ref22","_i24","_e48","_e48$_i","_i25","_e49","_e49$_i","_iterator40","_step40","embeddedLang","__defProp","__publicField","wi","getLangRegistration","langIdOrAlias","_scopeToLang","injectTo","scopeParts","subScopeName","createHighlighter","_export","NileHighlighter","Li","highlightedCode","_this19","_o24","_updated","_callee5","changedProperties","updateHighlighter","updateHighlightedCode","_context6","updated","_x10","render","_templateObject","_taggedTemplateLiteral","_updateHighlighter","_callee6","_callee6$","_context7","highlighter","_updateHighlightedCode","_callee7","_callee7$","_context8","__decorate","NileElement","reflect","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50]}
|
1
|
+
{"version":3,"file":"nile-highlighter.cjs.js","sources":["../../../../node_modules/@shikijs/engine-oniguruma/dist/index.mjs","../../../../node_modules/@shikijs/vscode-textmate/dist/index.mjs","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/merge.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/normalize.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/types.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/defined-info.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/create.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/case-sensitive-transform.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/case-insensitive-transform.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/find.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/core.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/util/format-smart.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/util/to-hexadecimal.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/util/to-named.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/util/to-decimal.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/index.js","../../../../node_modules/@shikijs/core/node_modules/ccount/index.js","../../../../node_modules/@shikijs/core/node_modules/comma-separated-tokens/index.js","../../../../node_modules/@shikijs/core/node_modules/space-separated-tokens/index.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-whitespace/lib/index.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/omission/util/siblings.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/omission/omission.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/omission/closing.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/element.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/text.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/index.js","../../../../node_modules/@shikijs/core/dist/index.mjs","../../../../node_modules/shiki/dist/bundle-full.mjs","../../../../node_modules/shiki/dist/langs.mjs","../../../../node_modules/shiki/dist/themes.mjs","../../../../node_modules/@shikijs/types/dist/index.mjs","../../../../node_modules/@shikijs/core/node_modules/html-void-elements/index.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/schema.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/util/info.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/xlink.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/xml.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/xmlns.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/aria.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/html.js","../../../../node_modules/@shikijs/core/node_modules/property-information/lib/svg.js","../../../../node_modules/@shikijs/core/node_modules/property-information/index.js","../../../../node_modules/@shikijs/core/node_modules/zwitch/index.js","../../../../node_modules/@shikijs/core/node_modules/character-entities-legacy/index.js","../../../../node_modules/@shikijs/core/node_modules/character-entities-html4/index.js","../../../../node_modules/@shikijs/core/node_modules/stringify-entities/lib/constant/dangerous.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/comment.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/omission/opening.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/index.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/doctype.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/raw.js","../../../../node_modules/@shikijs/core/node_modules/hast-util-to-html/lib/handle/root.js","../../../src/nile-highlighter/nile-highlighter.ts"],"sourcesContent":["class ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = 'ShikiError';\n }\n}\n\nfunction getHeapMax() {\n return 2147483648;\n}\nfunction _emscripten_get_now() {\n return typeof performance !== 'undefined' ? performance.now() : Date.now();\n}\nconst alignUp = (x, multiple) => x + ((multiple - (x % multiple)) % multiple);\nasync function main(init) {\n let wasmMemory;\n let buffer;\n const binding = {};\n function updateGlobalBufferAndViews(buf) {\n buffer = buf;\n binding.HEAPU8 = new Uint8Array(buf);\n binding.HEAPU32 = new Uint32Array(buf);\n }\n function _emscripten_memcpy_big(dest, src, num) {\n binding.HEAPU8.copyWithin(dest, src, src + num);\n }\n function emscripten_realloc_buffer(size) {\n try {\n wasmMemory.grow((size - buffer.byteLength + 65535) >>> 16);\n updateGlobalBufferAndViews(wasmMemory.buffer);\n return 1;\n }\n catch { }\n }\n function _emscripten_resize_heap(requestedSize) {\n const oldSize = binding.HEAPU8.length;\n requestedSize = requestedSize >>> 0;\n const maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize)\n return false;\n for (let cutDown = 1; cutDown <= 4; cutDown *= 2) {\n let overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n const newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n const replacement = emscripten_realloc_buffer(newSize);\n if (replacement)\n return true;\n }\n return false;\n }\n const UTF8Decoder = typeof TextDecoder != 'undefined' ? new TextDecoder('utf8') : undefined;\n function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead = 1024) {\n const endIdx = idx + maxBytesToRead;\n let endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx))\n ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));\n }\n let str = '';\n while (idx < endPtr) {\n let u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n const u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) === 192) {\n str += String.fromCharCode(((u0 & 31) << 6) | u1);\n continue;\n }\n const u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) === 224) {\n u0 = ((u0 & 15) << 12) | (u1 << 6) | u2;\n }\n else {\n u0 = ((u0 & 7) << 18)\n | (u1 << 12)\n | (u2 << 6)\n | (heapOrArray[idx++] & 63);\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n }\n else {\n const ch = u0 - 65536;\n str += String.fromCharCode(55296 | (ch >> 10), 56320 | (ch & 1023));\n }\n }\n return str;\n }\n function UTF8ToString(ptr, maxBytesToRead) {\n return ptr ? UTF8ArrayToString(binding.HEAPU8, ptr, maxBytesToRead) : '';\n }\n const asmLibraryArg = {\n emscripten_get_now: _emscripten_get_now,\n emscripten_memcpy_big: _emscripten_memcpy_big,\n emscripten_resize_heap: _emscripten_resize_heap,\n fd_write: () => 0,\n };\n async function createWasm() {\n const info = {\n env: asmLibraryArg,\n wasi_snapshot_preview1: asmLibraryArg,\n };\n const exports = await init(info);\n wasmMemory = exports.memory;\n updateGlobalBufferAndViews(wasmMemory.buffer);\n Object.assign(binding, exports);\n binding.UTF8ToString = UTF8ToString;\n }\n await createWasm();\n return binding;\n}\n\n/* ---------------------------------------------------------\n * Copyright (C) Microsoft Corporation. All rights reserved.\n *-------------------------------------------------------- */\nlet onigBinding = null;\n// let defaultDebugCall = false\nfunction throwLastOnigError(onigBinding) {\n throw new ShikiError(onigBinding.UTF8ToString(onigBinding.getLastOnigError()));\n}\nclass UtfString {\n static _utf8ByteLength(str) {\n let result = 0;\n for (let i = 0, len = str.length; i < len; i++) {\n const charCode = str.charCodeAt(i);\n let codepoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 0xD800 && charCode <= 0xDBFF) {\n // Hit a high surrogate, try to look for a matching low surrogate\n if (i + 1 < len) {\n const nextCharCode = str.charCodeAt(i + 1);\n if (nextCharCode >= 0xDC00 && nextCharCode <= 0xDFFF) {\n // Found the matching low surrogate\n codepoint = (((charCode - 0xD800) << 10) + 0x10000) | (nextCharCode - 0xDC00);\n wasSurrogatePair = true;\n }\n }\n }\n if (codepoint <= 0x7F)\n result += 1;\n else if (codepoint <= 0x7FF)\n result += 2;\n else if (codepoint <= 0xFFFF)\n result += 3;\n else\n result += 4;\n if (wasSurrogatePair)\n i++;\n }\n return result;\n }\n utf16Length;\n utf8Length;\n utf16Value;\n utf8Value;\n utf16OffsetToUtf8;\n utf8OffsetToUtf16;\n constructor(str) {\n const utf16Length = str.length;\n const utf8Length = UtfString._utf8ByteLength(str);\n const computeIndicesMapping = (utf8Length !== utf16Length);\n const utf16OffsetToUtf8 = computeIndicesMapping ? new Uint32Array(utf16Length + 1) : null;\n if (computeIndicesMapping)\n utf16OffsetToUtf8[utf16Length] = utf8Length;\n const utf8OffsetToUtf16 = computeIndicesMapping ? new Uint32Array(utf8Length + 1) : null;\n if (computeIndicesMapping)\n utf8OffsetToUtf16[utf8Length] = utf16Length;\n const utf8Value = new Uint8Array(utf8Length);\n let i8 = 0;\n for (let i16 = 0; i16 < utf16Length; i16++) {\n const charCode = str.charCodeAt(i16);\n let codePoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 0xD800 && charCode <= 0xDBFF) {\n // Hit a high surrogate, try to look for a matching low surrogate\n if (i16 + 1 < utf16Length) {\n const nextCharCode = str.charCodeAt(i16 + 1);\n if (nextCharCode >= 0xDC00 && nextCharCode <= 0xDFFF) {\n // Found the matching low surrogate\n codePoint = (((charCode - 0xD800) << 10) + 0x10000) | (nextCharCode - 0xDC00);\n wasSurrogatePair = true;\n }\n }\n }\n if (computeIndicesMapping) {\n utf16OffsetToUtf8[i16] = i8;\n if (wasSurrogatePair)\n utf16OffsetToUtf8[i16 + 1] = i8;\n if (codePoint <= 0x7F) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n }\n else if (codePoint <= 0x7FF) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n }\n else if (codePoint <= 0xFFFF) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n }\n else {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n utf8OffsetToUtf16[i8 + 3] = i16;\n }\n }\n if (codePoint <= 0x7F) {\n utf8Value[i8++] = codePoint;\n }\n else if (codePoint <= 0x7FF) {\n utf8Value[i8++] = 0b11000000 | ((codePoint & 0b00000000000000000000011111000000) >>> 6);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000000000111111) >>> 0);\n }\n else if (codePoint <= 0xFFFF) {\n utf8Value[i8++] = 0b11100000 | ((codePoint & 0b00000000000000001111000000000000) >>> 12);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000111111000000) >>> 6);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000000000111111) >>> 0);\n }\n else {\n utf8Value[i8++] = 0b11110000 | ((codePoint & 0b00000000000111000000000000000000) >>> 18);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000111111000000000000) >>> 12);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000111111000000) >>> 6);\n utf8Value[i8++] = 0b10000000 | ((codePoint & 0b00000000000000000000000000111111) >>> 0);\n }\n if (wasSurrogatePair)\n i16++;\n }\n this.utf16Length = utf16Length;\n this.utf8Length = utf8Length;\n this.utf16Value = str;\n this.utf8Value = utf8Value;\n this.utf16OffsetToUtf8 = utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utf8OffsetToUtf16;\n }\n createString(onigBinding) {\n const result = onigBinding.omalloc(this.utf8Length);\n onigBinding.HEAPU8.set(this.utf8Value, result);\n return result;\n }\n}\nclass OnigString {\n static LAST_ID = 0;\n static _sharedPtr = 0; // a pointer to a string of 10000 bytes\n static _sharedPtrInUse = false;\n id = (++OnigString.LAST_ID);\n _onigBinding;\n content;\n utf16Length;\n utf8Length;\n utf16OffsetToUtf8;\n utf8OffsetToUtf16;\n ptr;\n constructor(str) {\n if (!onigBinding)\n throw new ShikiError('Must invoke loadWasm first.');\n this._onigBinding = onigBinding;\n this.content = str;\n const utfString = new UtfString(str);\n this.utf16Length = utfString.utf16Length;\n this.utf8Length = utfString.utf8Length;\n this.utf16OffsetToUtf8 = utfString.utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utfString.utf8OffsetToUtf16;\n if (this.utf8Length < 10000 && !OnigString._sharedPtrInUse) {\n if (!OnigString._sharedPtr)\n OnigString._sharedPtr = onigBinding.omalloc(10000);\n OnigString._sharedPtrInUse = true;\n onigBinding.HEAPU8.set(utfString.utf8Value, OnigString._sharedPtr);\n this.ptr = OnigString._sharedPtr;\n }\n else {\n this.ptr = utfString.createString(onigBinding);\n }\n }\n convertUtf8OffsetToUtf16(utf8Offset) {\n if (this.utf8OffsetToUtf16) {\n if (utf8Offset < 0)\n return 0;\n if (utf8Offset > this.utf8Length)\n return this.utf16Length;\n return this.utf8OffsetToUtf16[utf8Offset];\n }\n return utf8Offset;\n }\n convertUtf16OffsetToUtf8(utf16Offset) {\n if (this.utf16OffsetToUtf8) {\n if (utf16Offset < 0)\n return 0;\n if (utf16Offset > this.utf16Length)\n return this.utf8Length;\n return this.utf16OffsetToUtf8[utf16Offset];\n }\n return utf16Offset;\n }\n dispose() {\n if (this.ptr === OnigString._sharedPtr)\n OnigString._sharedPtrInUse = false;\n else\n this._onigBinding.ofree(this.ptr);\n }\n}\nclass OnigScanner {\n _onigBinding;\n _ptr;\n constructor(patterns) {\n if (!onigBinding)\n throw new ShikiError('Must invoke loadWasm first.');\n const strPtrsArr = [];\n const strLenArr = [];\n for (let i = 0, len = patterns.length; i < len; i++) {\n const utfString = new UtfString(patterns[i]);\n strPtrsArr[i] = utfString.createString(onigBinding);\n strLenArr[i] = utfString.utf8Length;\n }\n const strPtrsPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strPtrsArr, strPtrsPtr / 4);\n const strLenPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strLenArr, strLenPtr / 4);\n const scannerPtr = onigBinding.createOnigScanner(strPtrsPtr, strLenPtr, patterns.length);\n for (let i = 0, len = patterns.length; i < len; i++)\n onigBinding.ofree(strPtrsArr[i]);\n onigBinding.ofree(strLenPtr);\n onigBinding.ofree(strPtrsPtr);\n if (scannerPtr === 0)\n throwLastOnigError(onigBinding);\n this._onigBinding = onigBinding;\n this._ptr = scannerPtr;\n }\n dispose() {\n this._onigBinding.freeOnigScanner(this._ptr);\n }\n findNextMatchSync(string, startPosition, arg) {\n // let debugCall = defaultDebugCall\n let options = 0 /* FindOption.None */;\n if (typeof arg === 'number') {\n // if (arg & FindOption.DebugCall)\n // debugCall = true\n options = arg;\n }\n if (typeof string === 'string') {\n string = new OnigString(string);\n const result = this._findNextMatchSync(string, startPosition, false, options);\n string.dispose();\n return result;\n }\n return this._findNextMatchSync(string, startPosition, false, options);\n }\n _findNextMatchSync(string, startPosition, debugCall, options) {\n const onigBinding = this._onigBinding;\n // let resultPtr: Pointer\n // if (debugCall)\n // resultPtr = onigBinding.findNextOnigScannerMatchDbg(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options)\n // else\n const resultPtr = onigBinding.findNextOnigScannerMatch(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options);\n if (resultPtr === 0) {\n // no match\n return null;\n }\n const HEAPU32 = onigBinding.HEAPU32;\n let offset = resultPtr / 4; // byte offset -> uint32 offset\n const index = HEAPU32[offset++];\n const count = HEAPU32[offset++];\n const captureIndices = [];\n for (let i = 0; i < count; i++) {\n const beg = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n const end = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n captureIndices[i] = {\n start: beg,\n end,\n length: end - beg,\n };\n }\n return {\n index,\n captureIndices,\n };\n }\n}\nfunction isInstantiatorOptionsObject(dataOrOptions) {\n return (typeof dataOrOptions.instantiator === 'function');\n}\nfunction isInstantiatorModule(dataOrOptions) {\n return (typeof dataOrOptions.default === 'function');\n}\nfunction isDataOptionsObject(dataOrOptions) {\n return (typeof dataOrOptions.data !== 'undefined');\n}\nfunction isResponse(dataOrOptions) {\n return (typeof Response !== 'undefined' && dataOrOptions instanceof Response);\n}\nfunction isArrayBuffer(data) {\n return (typeof ArrayBuffer !== 'undefined' && (data instanceof ArrayBuffer || ArrayBuffer.isView(data)))\n // eslint-disable-next-line node/prefer-global/buffer\n || (typeof Buffer !== 'undefined' && Buffer.isBuffer?.(data))\n || (typeof SharedArrayBuffer !== 'undefined' && data instanceof SharedArrayBuffer)\n || (typeof Uint32Array !== 'undefined' && data instanceof Uint32Array);\n}\nlet initPromise;\nfunction loadWasm(options) {\n if (initPromise)\n return initPromise;\n async function _load() {\n onigBinding = await main(async (info) => {\n let instance = options;\n instance = await instance;\n if (typeof instance === 'function')\n instance = await instance(info);\n if (typeof instance === 'function')\n instance = await instance(info);\n if (isInstantiatorOptionsObject(instance)) {\n instance = await instance.instantiator(info);\n }\n else if (isInstantiatorModule(instance)) {\n instance = await instance.default(info);\n }\n else {\n if (isDataOptionsObject(instance))\n instance = instance.data;\n if (isResponse(instance)) {\n if (typeof WebAssembly.instantiateStreaming === 'function')\n instance = await _makeResponseStreamingLoader(instance)(info);\n else\n instance = await _makeResponseNonStreamingLoader(instance)(info);\n }\n else if (isArrayBuffer(instance)) {\n instance = await _makeArrayBufferLoader(instance)(info);\n }\n // import(\"shiki/onig.wasm\") returns `{ default: WebAssembly.Module }` on cloudflare workers\n // https://developers.cloudflare.com/workers/wrangler/bundling/\n else if (instance instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance)(info);\n }\n else if ('default' in instance && instance.default instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance.default)(info);\n }\n }\n if ('instance' in instance)\n instance = instance.instance;\n if ('exports' in instance)\n instance = instance.exports;\n return instance;\n });\n }\n initPromise = _load();\n return initPromise;\n}\nfunction _makeArrayBufferLoader(data) {\n return importObject => WebAssembly.instantiate(data, importObject);\n}\nfunction _makeResponseStreamingLoader(data) {\n return importObject => WebAssembly.instantiateStreaming(data, importObject);\n}\nfunction _makeResponseNonStreamingLoader(data) {\n return async (importObject) => {\n const arrayBuffer = await data.arrayBuffer();\n return WebAssembly.instantiate(arrayBuffer, importObject);\n };\n}\n// export function createOnigString(str: string) {\n// return new OnigString(str)\n// }\n// export function createOnigScanner(patterns: string[]) {\n// return new OnigScanner(patterns)\n// }\n// export function setDefaultDebugCall(_defaultDebugCall: boolean): void {\n// defaultDebugCall = _defaultDebugCall\n// }\n\nlet _defaultWasmLoader;\n/**\n * Set the default wasm loader for `loadWasm`.\n * @internal\n */\nfunction setDefaultWasmLoader(_loader) {\n _defaultWasmLoader = _loader;\n}\n/**\n * @internal\n */\nfunction getDefaultWasmLoader() {\n return _defaultWasmLoader;\n}\nasync function createOnigurumaEngine(options) {\n if (options)\n await loadWasm(options);\n return {\n createScanner(patterns) {\n return new OnigScanner(patterns);\n },\n createString(s) {\n return new OnigString(s);\n },\n };\n}\n/**\n * Deprecated. Use `createOnigurumaEngine` instead.\n */\nasync function createWasmOnigEngine(options) {\n return createOnigurumaEngine(options);\n}\n\nexport { createOnigurumaEngine, createWasmOnigEngine, getDefaultWasmLoader, loadWasm, setDefaultWasmLoader };\n","// src/utils.ts\nfunction clone(something) {\n return doClone(something);\n}\nfunction doClone(something) {\n if (Array.isArray(something)) {\n return cloneArray(something);\n }\n if (typeof something === \"object\") {\n return cloneObj(something);\n }\n return something;\n}\nfunction cloneArray(arr) {\n let r = [];\n for (let i = 0, len = arr.length; i < len; i++) {\n r[i] = doClone(arr[i]);\n }\n return r;\n}\nfunction cloneObj(obj) {\n let r = {};\n for (let key in obj) {\n r[key] = doClone(obj[key]);\n }\n return r;\n}\nfunction mergeObjects(target, ...sources) {\n sources.forEach((source) => {\n for (let key in source) {\n target[key] = source[key];\n }\n });\n return target;\n}\nfunction basename(path) {\n const idx = ~path.lastIndexOf(\"/\") || ~path.lastIndexOf(\"\\\\\");\n if (idx === 0) {\n return path;\n } else if (~idx === path.length - 1) {\n return basename(path.substring(0, path.length - 1));\n } else {\n return path.substr(~idx + 1);\n }\n}\nvar CAPTURING_REGEX_SOURCE = /\\$(\\d+)|\\${(\\d+):\\/(downcase|upcase)}/g;\nvar RegexSource = class {\n static hasCaptures(regexSource) {\n if (regexSource === null) {\n return false;\n }\n CAPTURING_REGEX_SOURCE.lastIndex = 0;\n return CAPTURING_REGEX_SOURCE.test(regexSource);\n }\n static replaceCaptures(regexSource, captureSource, captureIndices) {\n return regexSource.replace(CAPTURING_REGEX_SOURCE, (match, index, commandIndex, command) => {\n let capture = captureIndices[parseInt(index || commandIndex, 10)];\n if (capture) {\n let result = captureSource.substring(capture.start, capture.end);\n while (result[0] === \".\") {\n result = result.substring(1);\n }\n switch (command) {\n case \"downcase\":\n return result.toLowerCase();\n case \"upcase\":\n return result.toUpperCase();\n default:\n return result;\n }\n } else {\n return match;\n }\n });\n }\n};\nfunction strcmp(a, b) {\n if (a < b) {\n return -1;\n }\n if (a > b) {\n return 1;\n }\n return 0;\n}\nfunction strArrCmp(a, b) {\n if (a === null && b === null) {\n return 0;\n }\n if (!a) {\n return -1;\n }\n if (!b) {\n return 1;\n }\n let len1 = a.length;\n let len2 = b.length;\n if (len1 === len2) {\n for (let i = 0; i < len1; i++) {\n let res = strcmp(a[i], b[i]);\n if (res !== 0) {\n return res;\n }\n }\n return 0;\n }\n return len1 - len2;\n}\nfunction isValidHexColor(hex) {\n if (/^#[0-9a-f]{6}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{8}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{3}$/i.test(hex)) {\n return true;\n }\n if (/^#[0-9a-f]{4}$/i.test(hex)) {\n return true;\n }\n return false;\n}\nfunction escapeRegExpCharacters(value) {\n return value.replace(/[\\-\\\\\\{\\}\\*\\+\\?\\|\\^\\$\\.\\,\\[\\]\\(\\)\\#\\s]/g, \"\\\\$&\");\n}\nvar CachedFn = class {\n constructor(fn) {\n this.fn = fn;\n this.cache = /* @__PURE__ */ new Map();\n }\n get(key) {\n if (this.cache.has(key)) {\n return this.cache.get(key);\n }\n const value = this.fn(key);\n this.cache.set(key, value);\n return value;\n }\n};\n\n// src/theme.ts\nvar Theme = class {\n constructor(_colorMap, _defaults, _root) {\n this._colorMap = _colorMap;\n this._defaults = _defaults;\n this._root = _root;\n this._cachedMatchRoot = new CachedFn(\n (scopeName) => this._root.match(scopeName)\n );\n }\n static createFromRawTheme(source, colorMap) {\n return this.createFromParsedTheme(parseTheme(source), colorMap);\n }\n static createFromParsedTheme(source, colorMap) {\n return resolveParsedThemeRules(source, colorMap);\n }\n getColorMap() {\n return this._colorMap.getColorMap();\n }\n getDefaults() {\n return this._defaults;\n }\n match(scopePath) {\n if (scopePath === null) {\n return this._defaults;\n }\n const scopeName = scopePath.scopeName;\n const matchingTrieElements = this._cachedMatchRoot.get(scopeName);\n const effectiveRule = matchingTrieElements.find(\n (v) => _scopePathMatchesParentScopes(scopePath.parent, v.parentScopes)\n );\n if (!effectiveRule) {\n return null;\n }\n return new StyleAttributes(\n effectiveRule.fontStyle,\n effectiveRule.foreground,\n effectiveRule.background\n );\n }\n};\nvar ScopeStack = class _ScopeStack {\n constructor(parent, scopeName) {\n this.parent = parent;\n this.scopeName = scopeName;\n }\n static push(path, scopeNames) {\n for (const name of scopeNames) {\n path = new _ScopeStack(path, name);\n }\n return path;\n }\n static from(...segments) {\n let result = null;\n for (let i = 0; i < segments.length; i++) {\n result = new _ScopeStack(result, segments[i]);\n }\n return result;\n }\n push(scopeName) {\n return new _ScopeStack(this, scopeName);\n }\n getSegments() {\n let item = this;\n const result = [];\n while (item) {\n result.push(item.scopeName);\n item = item.parent;\n }\n result.reverse();\n return result;\n }\n toString() {\n return this.getSegments().join(\" \");\n }\n extends(other) {\n if (this === other) {\n return true;\n }\n if (this.parent === null) {\n return false;\n }\n return this.parent.extends(other);\n }\n getExtensionIfDefined(base) {\n const result = [];\n let item = this;\n while (item && item !== base) {\n result.push(item.scopeName);\n item = item.parent;\n }\n return item === base ? result.reverse() : void 0;\n }\n};\nfunction _scopePathMatchesParentScopes(scopePath, parentScopes) {\n if (parentScopes.length === 0) {\n return true;\n }\n for (let index = 0; index < parentScopes.length; index++) {\n let scopePattern = parentScopes[index];\n let scopeMustMatch = false;\n if (scopePattern === \">\") {\n if (index === parentScopes.length - 1) {\n return false;\n }\n scopePattern = parentScopes[++index];\n scopeMustMatch = true;\n }\n while (scopePath) {\n if (_matchesScope(scopePath.scopeName, scopePattern)) {\n break;\n }\n if (scopeMustMatch) {\n return false;\n }\n scopePath = scopePath.parent;\n }\n if (!scopePath) {\n return false;\n }\n scopePath = scopePath.parent;\n }\n return true;\n}\nfunction _matchesScope(scopeName, scopePattern) {\n return scopePattern === scopeName || scopeName.startsWith(scopePattern) && scopeName[scopePattern.length] === \".\";\n}\nvar StyleAttributes = class {\n constructor(fontStyle, foregroundId, backgroundId) {\n this.fontStyle = fontStyle;\n this.foregroundId = foregroundId;\n this.backgroundId = backgroundId;\n }\n};\nfunction parseTheme(source) {\n if (!source) {\n return [];\n }\n if (!source.settings || !Array.isArray(source.settings)) {\n return [];\n }\n let settings = source.settings;\n let result = [], resultLen = 0;\n for (let i = 0, len = settings.length; i < len; i++) {\n let entry = settings[i];\n if (!entry.settings) {\n continue;\n }\n let scopes;\n if (typeof entry.scope === \"string\") {\n let _scope = entry.scope;\n _scope = _scope.replace(/^[,]+/, \"\");\n _scope = _scope.replace(/[,]+$/, \"\");\n scopes = _scope.split(\",\");\n } else if (Array.isArray(entry.scope)) {\n scopes = entry.scope;\n } else {\n scopes = [\"\"];\n }\n let fontStyle = -1 /* NotSet */;\n if (typeof entry.settings.fontStyle === \"string\") {\n fontStyle = 0 /* None */;\n let segments = entry.settings.fontStyle.split(\" \");\n for (let j = 0, lenJ = segments.length; j < lenJ; j++) {\n let segment = segments[j];\n switch (segment) {\n case \"italic\":\n fontStyle = fontStyle | 1 /* Italic */;\n break;\n case \"bold\":\n fontStyle = fontStyle | 2 /* Bold */;\n break;\n case \"underline\":\n fontStyle = fontStyle | 4 /* Underline */;\n break;\n case \"strikethrough\":\n fontStyle = fontStyle | 8 /* Strikethrough */;\n break;\n }\n }\n }\n let foreground = null;\n if (typeof entry.settings.foreground === \"string\" && isValidHexColor(entry.settings.foreground)) {\n foreground = entry.settings.foreground;\n }\n let background = null;\n if (typeof entry.settings.background === \"string\" && isValidHexColor(entry.settings.background)) {\n background = entry.settings.background;\n }\n for (let j = 0, lenJ = scopes.length; j < lenJ; j++) {\n let _scope = scopes[j].trim();\n let segments = _scope.split(\" \");\n let scope = segments[segments.length - 1];\n let parentScopes = null;\n if (segments.length > 1) {\n parentScopes = segments.slice(0, segments.length - 1);\n parentScopes.reverse();\n }\n result[resultLen++] = new ParsedThemeRule(\n scope,\n parentScopes,\n i,\n fontStyle,\n foreground,\n background\n );\n }\n }\n return result;\n}\nvar ParsedThemeRule = class {\n constructor(scope, parentScopes, index, fontStyle, foreground, background) {\n this.scope = scope;\n this.parentScopes = parentScopes;\n this.index = index;\n this.fontStyle = fontStyle;\n this.foreground = foreground;\n this.background = background;\n }\n};\nvar FontStyle = /* @__PURE__ */ ((FontStyle2) => {\n FontStyle2[FontStyle2[\"NotSet\"] = -1] = \"NotSet\";\n FontStyle2[FontStyle2[\"None\"] = 0] = \"None\";\n FontStyle2[FontStyle2[\"Italic\"] = 1] = \"Italic\";\n FontStyle2[FontStyle2[\"Bold\"] = 2] = \"Bold\";\n FontStyle2[FontStyle2[\"Underline\"] = 4] = \"Underline\";\n FontStyle2[FontStyle2[\"Strikethrough\"] = 8] = \"Strikethrough\";\n return FontStyle2;\n})(FontStyle || {});\nfunction resolveParsedThemeRules(parsedThemeRules, _colorMap) {\n parsedThemeRules.sort((a, b) => {\n let r = strcmp(a.scope, b.scope);\n if (r !== 0) {\n return r;\n }\n r = strArrCmp(a.parentScopes, b.parentScopes);\n if (r !== 0) {\n return r;\n }\n return a.index - b.index;\n });\n let defaultFontStyle = 0 /* None */;\n let defaultForeground = \"#000000\";\n let defaultBackground = \"#ffffff\";\n while (parsedThemeRules.length >= 1 && parsedThemeRules[0].scope === \"\") {\n let incomingDefaults = parsedThemeRules.shift();\n if (incomingDefaults.fontStyle !== -1 /* NotSet */) {\n defaultFontStyle = incomingDefaults.fontStyle;\n }\n if (incomingDefaults.foreground !== null) {\n defaultForeground = incomingDefaults.foreground;\n }\n if (incomingDefaults.background !== null) {\n defaultBackground = incomingDefaults.background;\n }\n }\n let colorMap = new ColorMap(_colorMap);\n let defaults = new StyleAttributes(defaultFontStyle, colorMap.getId(defaultForeground), colorMap.getId(defaultBackground));\n let root = new ThemeTrieElement(new ThemeTrieElementRule(0, null, -1 /* NotSet */, 0, 0), []);\n for (let i = 0, len = parsedThemeRules.length; i < len; i++) {\n let rule = parsedThemeRules[i];\n root.insert(0, rule.scope, rule.parentScopes, rule.fontStyle, colorMap.getId(rule.foreground), colorMap.getId(rule.background));\n }\n return new Theme(colorMap, defaults, root);\n}\nvar ColorMap = class {\n constructor(_colorMap) {\n this._lastColorId = 0;\n this._id2color = [];\n this._color2id = /* @__PURE__ */ Object.create(null);\n if (Array.isArray(_colorMap)) {\n this._isFrozen = true;\n for (let i = 0, len = _colorMap.length; i < len; i++) {\n this._color2id[_colorMap[i]] = i;\n this._id2color[i] = _colorMap[i];\n }\n } else {\n this._isFrozen = false;\n }\n }\n getId(color) {\n if (color === null) {\n return 0;\n }\n color = color.toUpperCase();\n let value = this._color2id[color];\n if (value) {\n return value;\n }\n if (this._isFrozen) {\n throw new Error(`Missing color in color map - ${color}`);\n }\n value = ++this._lastColorId;\n this._color2id[color] = value;\n this._id2color[value] = color;\n return value;\n }\n getColorMap() {\n return this._id2color.slice(0);\n }\n};\nvar emptyParentScopes = Object.freeze([]);\nvar ThemeTrieElementRule = class _ThemeTrieElementRule {\n constructor(scopeDepth, parentScopes, fontStyle, foreground, background) {\n this.scopeDepth = scopeDepth;\n this.parentScopes = parentScopes || emptyParentScopes;\n this.fontStyle = fontStyle;\n this.foreground = foreground;\n this.background = background;\n }\n clone() {\n return new _ThemeTrieElementRule(this.scopeDepth, this.parentScopes, this.fontStyle, this.foreground, this.background);\n }\n static cloneArr(arr) {\n let r = [];\n for (let i = 0, len = arr.length; i < len; i++) {\n r[i] = arr[i].clone();\n }\n return r;\n }\n acceptOverwrite(scopeDepth, fontStyle, foreground, background) {\n if (this.scopeDepth > scopeDepth) {\n console.log(\"how did this happen?\");\n } else {\n this.scopeDepth = scopeDepth;\n }\n if (fontStyle !== -1 /* NotSet */) {\n this.fontStyle = fontStyle;\n }\n if (foreground !== 0) {\n this.foreground = foreground;\n }\n if (background !== 0) {\n this.background = background;\n }\n }\n};\nvar ThemeTrieElement = class _ThemeTrieElement {\n constructor(_mainRule, rulesWithParentScopes = [], _children = {}) {\n this._mainRule = _mainRule;\n this._children = _children;\n this._rulesWithParentScopes = rulesWithParentScopes;\n }\n static _cmpBySpecificity(a, b) {\n if (a.scopeDepth !== b.scopeDepth) {\n return b.scopeDepth - a.scopeDepth;\n }\n let aParentIndex = 0;\n let bParentIndex = 0;\n while (true) {\n if (a.parentScopes[aParentIndex] === \">\") {\n aParentIndex++;\n }\n if (b.parentScopes[bParentIndex] === \">\") {\n bParentIndex++;\n }\n if (aParentIndex >= a.parentScopes.length || bParentIndex >= b.parentScopes.length) {\n break;\n }\n const parentScopeLengthDiff = b.parentScopes[bParentIndex].length - a.parentScopes[aParentIndex].length;\n if (parentScopeLengthDiff !== 0) {\n return parentScopeLengthDiff;\n }\n aParentIndex++;\n bParentIndex++;\n }\n return b.parentScopes.length - a.parentScopes.length;\n }\n match(scope) {\n if (scope !== \"\") {\n let dotIndex = scope.indexOf(\".\");\n let head;\n let tail;\n if (dotIndex === -1) {\n head = scope;\n tail = \"\";\n } else {\n head = scope.substring(0, dotIndex);\n tail = scope.substring(dotIndex + 1);\n }\n if (this._children.hasOwnProperty(head)) {\n return this._children[head].match(tail);\n }\n }\n const rules = this._rulesWithParentScopes.concat(this._mainRule);\n rules.sort(_ThemeTrieElement._cmpBySpecificity);\n return rules;\n }\n insert(scopeDepth, scope, parentScopes, fontStyle, foreground, background) {\n if (scope === \"\") {\n this._doInsertHere(scopeDepth, parentScopes, fontStyle, foreground, background);\n return;\n }\n let dotIndex = scope.indexOf(\".\");\n let head;\n let tail;\n if (dotIndex === -1) {\n head = scope;\n tail = \"\";\n } else {\n head = scope.substring(0, dotIndex);\n tail = scope.substring(dotIndex + 1);\n }\n let child;\n if (this._children.hasOwnProperty(head)) {\n child = this._children[head];\n } else {\n child = new _ThemeTrieElement(this._mainRule.clone(), ThemeTrieElementRule.cloneArr(this._rulesWithParentScopes));\n this._children[head] = child;\n }\n child.insert(scopeDepth + 1, tail, parentScopes, fontStyle, foreground, background);\n }\n _doInsertHere(scopeDepth, parentScopes, fontStyle, foreground, background) {\n if (parentScopes === null) {\n this._mainRule.acceptOverwrite(scopeDepth, fontStyle, foreground, background);\n return;\n }\n for (let i = 0, len = this._rulesWithParentScopes.length; i < len; i++) {\n let rule = this._rulesWithParentScopes[i];\n if (strArrCmp(rule.parentScopes, parentScopes) === 0) {\n rule.acceptOverwrite(scopeDepth, fontStyle, foreground, background);\n return;\n }\n }\n if (fontStyle === -1 /* NotSet */) {\n fontStyle = this._mainRule.fontStyle;\n }\n if (foreground === 0) {\n foreground = this._mainRule.foreground;\n }\n if (background === 0) {\n background = this._mainRule.background;\n }\n this._rulesWithParentScopes.push(new ThemeTrieElementRule(scopeDepth, parentScopes, fontStyle, foreground, background));\n }\n};\n\n// src/encodedTokenAttributes.ts\nvar EncodedTokenMetadata = class _EncodedTokenMetadata {\n static toBinaryStr(encodedTokenAttributes) {\n return encodedTokenAttributes.toString(2).padStart(32, \"0\");\n }\n static print(encodedTokenAttributes) {\n const languageId = _EncodedTokenMetadata.getLanguageId(encodedTokenAttributes);\n const tokenType = _EncodedTokenMetadata.getTokenType(encodedTokenAttributes);\n const fontStyle = _EncodedTokenMetadata.getFontStyle(encodedTokenAttributes);\n const foreground = _EncodedTokenMetadata.getForeground(encodedTokenAttributes);\n const background = _EncodedTokenMetadata.getBackground(encodedTokenAttributes);\n console.log({\n languageId,\n tokenType,\n fontStyle,\n foreground,\n background\n });\n }\n static getLanguageId(encodedTokenAttributes) {\n return (encodedTokenAttributes & 255 /* LANGUAGEID_MASK */) >>> 0 /* LANGUAGEID_OFFSET */;\n }\n static getTokenType(encodedTokenAttributes) {\n return (encodedTokenAttributes & 768 /* TOKEN_TYPE_MASK */) >>> 8 /* TOKEN_TYPE_OFFSET */;\n }\n static containsBalancedBrackets(encodedTokenAttributes) {\n return (encodedTokenAttributes & 1024 /* BALANCED_BRACKETS_MASK */) !== 0;\n }\n static getFontStyle(encodedTokenAttributes) {\n return (encodedTokenAttributes & 30720 /* FONT_STYLE_MASK */) >>> 11 /* FONT_STYLE_OFFSET */;\n }\n static getForeground(encodedTokenAttributes) {\n return (encodedTokenAttributes & 16744448 /* FOREGROUND_MASK */) >>> 15 /* FOREGROUND_OFFSET */;\n }\n static getBackground(encodedTokenAttributes) {\n return (encodedTokenAttributes & 4278190080 /* BACKGROUND_MASK */) >>> 24 /* BACKGROUND_OFFSET */;\n }\n /**\n * Updates the fields in `metadata`.\n * A value of `0`, `NotSet` or `null` indicates that the corresponding field should be left as is.\n */\n static set(encodedTokenAttributes, languageId, tokenType, containsBalancedBrackets, fontStyle, foreground, background) {\n let _languageId = _EncodedTokenMetadata.getLanguageId(encodedTokenAttributes);\n let _tokenType = _EncodedTokenMetadata.getTokenType(encodedTokenAttributes);\n let _containsBalancedBracketsBit = _EncodedTokenMetadata.containsBalancedBrackets(encodedTokenAttributes) ? 1 : 0;\n let _fontStyle = _EncodedTokenMetadata.getFontStyle(encodedTokenAttributes);\n let _foreground = _EncodedTokenMetadata.getForeground(encodedTokenAttributes);\n let _background = _EncodedTokenMetadata.getBackground(encodedTokenAttributes);\n if (languageId !== 0) {\n _languageId = languageId;\n }\n if (tokenType !== 8 /* NotSet */) {\n _tokenType = fromOptionalTokenType(tokenType);\n }\n if (containsBalancedBrackets !== null) {\n _containsBalancedBracketsBit = containsBalancedBrackets ? 1 : 0;\n }\n if (fontStyle !== -1 /* NotSet */) {\n _fontStyle = fontStyle;\n }\n if (foreground !== 0) {\n _foreground = foreground;\n }\n if (background !== 0) {\n _background = background;\n }\n return (_languageId << 0 /* LANGUAGEID_OFFSET */ | _tokenType << 8 /* TOKEN_TYPE_OFFSET */ | _containsBalancedBracketsBit << 10 /* BALANCED_BRACKETS_OFFSET */ | _fontStyle << 11 /* FONT_STYLE_OFFSET */ | _foreground << 15 /* FOREGROUND_OFFSET */ | _background << 24 /* BACKGROUND_OFFSET */) >>> 0;\n }\n};\nfunction toOptionalTokenType(standardType) {\n return standardType;\n}\nfunction fromOptionalTokenType(standardType) {\n return standardType;\n}\n\n// src/matcher.ts\nfunction createMatchers(selector, matchesName) {\n const results = [];\n const tokenizer = newTokenizer(selector);\n let token = tokenizer.next();\n while (token !== null) {\n let priority = 0;\n if (token.length === 2 && token.charAt(1) === \":\") {\n switch (token.charAt(0)) {\n case \"R\":\n priority = 1;\n break;\n case \"L\":\n priority = -1;\n break;\n default:\n console.log(`Unknown priority ${token} in scope selector`);\n }\n token = tokenizer.next();\n }\n let matcher = parseConjunction();\n results.push({ matcher, priority });\n if (token !== \",\") {\n break;\n }\n token = tokenizer.next();\n }\n return results;\n function parseOperand() {\n if (token === \"-\") {\n token = tokenizer.next();\n const expressionToNegate = parseOperand();\n return (matcherInput) => !!expressionToNegate && !expressionToNegate(matcherInput);\n }\n if (token === \"(\") {\n token = tokenizer.next();\n const expressionInParents = parseInnerExpression();\n if (token === \")\") {\n token = tokenizer.next();\n }\n return expressionInParents;\n }\n if (isIdentifier(token)) {\n const identifiers = [];\n do {\n identifiers.push(token);\n token = tokenizer.next();\n } while (isIdentifier(token));\n return (matcherInput) => matchesName(identifiers, matcherInput);\n }\n return null;\n }\n function parseConjunction() {\n const matchers = [];\n let matcher = parseOperand();\n while (matcher) {\n matchers.push(matcher);\n matcher = parseOperand();\n }\n return (matcherInput) => matchers.every((matcher2) => matcher2(matcherInput));\n }\n function parseInnerExpression() {\n const matchers = [];\n let matcher = parseConjunction();\n while (matcher) {\n matchers.push(matcher);\n if (token === \"|\" || token === \",\") {\n do {\n token = tokenizer.next();\n } while (token === \"|\" || token === \",\");\n } else {\n break;\n }\n matcher = parseConjunction();\n }\n return (matcherInput) => matchers.some((matcher2) => matcher2(matcherInput));\n }\n}\nfunction isIdentifier(token) {\n return !!token && !!token.match(/[\\w\\.:]+/);\n}\nfunction newTokenizer(input) {\n let regex = /([LR]:|[\\w\\.:][\\w\\.:\\-]*|[\\,\\|\\-\\(\\)])/g;\n let match = regex.exec(input);\n return {\n next: () => {\n if (!match) {\n return null;\n }\n const res = match[0];\n match = regex.exec(input);\n return res;\n }\n };\n}\n\n// src/onigLib.ts\nvar FindOption = /* @__PURE__ */ ((FindOption2) => {\n FindOption2[FindOption2[\"None\"] = 0] = \"None\";\n FindOption2[FindOption2[\"NotBeginString\"] = 1] = \"NotBeginString\";\n FindOption2[FindOption2[\"NotEndString\"] = 2] = \"NotEndString\";\n FindOption2[FindOption2[\"NotBeginPosition\"] = 4] = \"NotBeginPosition\";\n FindOption2[FindOption2[\"DebugCall\"] = 8] = \"DebugCall\";\n return FindOption2;\n})(FindOption || {});\nfunction disposeOnigString(str) {\n if (typeof str.dispose === \"function\") {\n str.dispose();\n }\n}\n\n// src/grammar/grammarDependencies.ts\nvar TopLevelRuleReference = class {\n constructor(scopeName) {\n this.scopeName = scopeName;\n }\n toKey() {\n return this.scopeName;\n }\n};\nvar TopLevelRepositoryRuleReference = class {\n constructor(scopeName, ruleName) {\n this.scopeName = scopeName;\n this.ruleName = ruleName;\n }\n toKey() {\n return `${this.scopeName}#${this.ruleName}`;\n }\n};\nvar ExternalReferenceCollector = class {\n constructor() {\n this._references = [];\n this._seenReferenceKeys = /* @__PURE__ */ new Set();\n this.visitedRule = /* @__PURE__ */ new Set();\n }\n get references() {\n return this._references;\n }\n add(reference) {\n const key = reference.toKey();\n if (this._seenReferenceKeys.has(key)) {\n return;\n }\n this._seenReferenceKeys.add(key);\n this._references.push(reference);\n }\n};\nvar ScopeDependencyProcessor = class {\n constructor(repo, initialScopeName) {\n this.repo = repo;\n this.initialScopeName = initialScopeName;\n this.seenFullScopeRequests = /* @__PURE__ */ new Set();\n this.seenPartialScopeRequests = /* @__PURE__ */ new Set();\n this.seenFullScopeRequests.add(this.initialScopeName);\n this.Q = [new TopLevelRuleReference(this.initialScopeName)];\n }\n processQueue() {\n const q = this.Q;\n this.Q = [];\n const deps = new ExternalReferenceCollector();\n for (const dep of q) {\n collectReferencesOfReference(dep, this.initialScopeName, this.repo, deps);\n }\n for (const dep of deps.references) {\n if (dep instanceof TopLevelRuleReference) {\n if (this.seenFullScopeRequests.has(dep.scopeName)) {\n continue;\n }\n this.seenFullScopeRequests.add(dep.scopeName);\n this.Q.push(dep);\n } else {\n if (this.seenFullScopeRequests.has(dep.scopeName)) {\n continue;\n }\n if (this.seenPartialScopeRequests.has(dep.toKey())) {\n continue;\n }\n this.seenPartialScopeRequests.add(dep.toKey());\n this.Q.push(dep);\n }\n }\n }\n};\nfunction collectReferencesOfReference(reference, baseGrammarScopeName, repo, result) {\n const selfGrammar = repo.lookup(reference.scopeName);\n if (!selfGrammar) {\n if (reference.scopeName === baseGrammarScopeName) {\n throw new Error(`No grammar provided for <${baseGrammarScopeName}>`);\n }\n return;\n }\n const baseGrammar = repo.lookup(baseGrammarScopeName);\n if (reference instanceof TopLevelRuleReference) {\n collectExternalReferencesInTopLevelRule({ baseGrammar, selfGrammar }, result);\n } else {\n collectExternalReferencesInTopLevelRepositoryRule(\n reference.ruleName,\n { baseGrammar, selfGrammar, repository: selfGrammar.repository },\n result\n );\n }\n const injections = repo.injections(reference.scopeName);\n if (injections) {\n for (const injection of injections) {\n result.add(new TopLevelRuleReference(injection));\n }\n }\n}\nfunction collectExternalReferencesInTopLevelRepositoryRule(ruleName, context, result) {\n if (context.repository && context.repository[ruleName]) {\n const rule = context.repository[ruleName];\n collectExternalReferencesInRules([rule], context, result);\n }\n}\nfunction collectExternalReferencesInTopLevelRule(context, result) {\n if (context.selfGrammar.patterns && Array.isArray(context.selfGrammar.patterns)) {\n collectExternalReferencesInRules(\n context.selfGrammar.patterns,\n { ...context, repository: context.selfGrammar.repository },\n result\n );\n }\n if (context.selfGrammar.injections) {\n collectExternalReferencesInRules(\n Object.values(context.selfGrammar.injections),\n { ...context, repository: context.selfGrammar.repository },\n result\n );\n }\n}\nfunction collectExternalReferencesInRules(rules, context, result) {\n for (const rule of rules) {\n if (result.visitedRule.has(rule)) {\n continue;\n }\n result.visitedRule.add(rule);\n const patternRepository = rule.repository ? mergeObjects({}, context.repository, rule.repository) : context.repository;\n if (Array.isArray(rule.patterns)) {\n collectExternalReferencesInRules(rule.patterns, { ...context, repository: patternRepository }, result);\n }\n const include = rule.include;\n if (!include) {\n continue;\n }\n const reference = parseInclude(include);\n switch (reference.kind) {\n case 0 /* Base */:\n collectExternalReferencesInTopLevelRule({ ...context, selfGrammar: context.baseGrammar }, result);\n break;\n case 1 /* Self */:\n collectExternalReferencesInTopLevelRule(context, result);\n break;\n case 2 /* RelativeReference */:\n collectExternalReferencesInTopLevelRepositoryRule(reference.ruleName, { ...context, repository: patternRepository }, result);\n break;\n case 3 /* TopLevelReference */:\n case 4 /* TopLevelRepositoryReference */:\n const selfGrammar = reference.scopeName === context.selfGrammar.scopeName ? context.selfGrammar : reference.scopeName === context.baseGrammar.scopeName ? context.baseGrammar : void 0;\n if (selfGrammar) {\n const newContext = { baseGrammar: context.baseGrammar, selfGrammar, repository: patternRepository };\n if (reference.kind === 4 /* TopLevelRepositoryReference */) {\n collectExternalReferencesInTopLevelRepositoryRule(reference.ruleName, newContext, result);\n } else {\n collectExternalReferencesInTopLevelRule(newContext, result);\n }\n } else {\n if (reference.kind === 4 /* TopLevelRepositoryReference */) {\n result.add(new TopLevelRepositoryRuleReference(reference.scopeName, reference.ruleName));\n } else {\n result.add(new TopLevelRuleReference(reference.scopeName));\n }\n }\n break;\n }\n }\n}\nvar BaseReference = class {\n constructor() {\n this.kind = 0 /* Base */;\n }\n};\nvar SelfReference = class {\n constructor() {\n this.kind = 1 /* Self */;\n }\n};\nvar RelativeReference = class {\n constructor(ruleName) {\n this.ruleName = ruleName;\n this.kind = 2 /* RelativeReference */;\n }\n};\nvar TopLevelReference = class {\n constructor(scopeName) {\n this.scopeName = scopeName;\n this.kind = 3 /* TopLevelReference */;\n }\n};\nvar TopLevelRepositoryReference = class {\n constructor(scopeName, ruleName) {\n this.scopeName = scopeName;\n this.ruleName = ruleName;\n this.kind = 4 /* TopLevelRepositoryReference */;\n }\n};\nfunction parseInclude(include) {\n if (include === \"$base\") {\n return new BaseReference();\n } else if (include === \"$self\") {\n return new SelfReference();\n }\n const indexOfSharp = include.indexOf(\"#\");\n if (indexOfSharp === -1) {\n return new TopLevelReference(include);\n } else if (indexOfSharp === 0) {\n return new RelativeReference(include.substring(1));\n } else {\n const scopeName = include.substring(0, indexOfSharp);\n const ruleName = include.substring(indexOfSharp + 1);\n return new TopLevelRepositoryReference(scopeName, ruleName);\n }\n}\n\n// src/rule.ts\nvar HAS_BACK_REFERENCES = /\\\\(\\d+)/;\nvar BACK_REFERENCING_END = /\\\\(\\d+)/g;\nvar ruleIdSymbol = Symbol(\"RuleId\");\nvar endRuleId = -1;\nvar whileRuleId = -2;\nfunction ruleIdFromNumber(id) {\n return id;\n}\nfunction ruleIdToNumber(id) {\n return id;\n}\nvar Rule = class {\n constructor($location, id, name, contentName) {\n this.$location = $location;\n this.id = id;\n this._name = name || null;\n this._nameIsCapturing = RegexSource.hasCaptures(this._name);\n this._contentName = contentName || null;\n this._contentNameIsCapturing = RegexSource.hasCaptures(this._contentName);\n }\n get debugName() {\n const location = this.$location ? `${basename(this.$location.filename)}:${this.$location.line}` : \"unknown\";\n return `${this.constructor.name}#${this.id} @ ${location}`;\n }\n getName(lineText, captureIndices) {\n if (!this._nameIsCapturing || this._name === null || lineText === null || captureIndices === null) {\n return this._name;\n }\n return RegexSource.replaceCaptures(this._name, lineText, captureIndices);\n }\n getContentName(lineText, captureIndices) {\n if (!this._contentNameIsCapturing || this._contentName === null) {\n return this._contentName;\n }\n return RegexSource.replaceCaptures(this._contentName, lineText, captureIndices);\n }\n};\nvar CaptureRule = class extends Rule {\n constructor($location, id, name, contentName, retokenizeCapturedWithRuleId) {\n super($location, id, name, contentName);\n this.retokenizeCapturedWithRuleId = retokenizeCapturedWithRuleId;\n }\n dispose() {\n }\n collectPatterns(grammar, out) {\n throw new Error(\"Not supported!\");\n }\n compile(grammar, endRegexSource) {\n throw new Error(\"Not supported!\");\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n throw new Error(\"Not supported!\");\n }\n};\nvar MatchRule = class extends Rule {\n constructor($location, id, name, match, captures) {\n super($location, id, name, null);\n this._match = new RegExpSource(match, this.id);\n this.captures = captures;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n get debugMatchRegExp() {\n return `${this._match.source}`;\n }\n collectPatterns(grammar, out) {\n out.push(this._match);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n this.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar IncludeOnlyRule = class extends Rule {\n constructor($location, id, name, contentName, patterns) {\n super($location, id, name, contentName);\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n collectPatterns(grammar, out) {\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, out);\n }\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n this.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar BeginEndRule = class extends Rule {\n constructor($location, id, name, contentName, begin, beginCaptures, end, endCaptures, applyEndPatternLast, patterns) {\n super($location, id, name, contentName);\n this._begin = new RegExpSource(begin, this.id);\n this.beginCaptures = beginCaptures;\n this._end = new RegExpSource(end ? end : \"\\uFFFF\", -1);\n this.endHasBackReferences = this._end.hasBackReferences;\n this.endCaptures = endCaptures;\n this.applyEndPatternLast = applyEndPatternLast || false;\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n }\n get debugBeginRegExp() {\n return `${this._begin.source}`;\n }\n get debugEndRegExp() {\n return `${this._end.source}`;\n }\n getEndWithResolvedBackReferences(lineText, captureIndices) {\n return this._end.resolveBackReferences(lineText, captureIndices);\n }\n collectPatterns(grammar, out) {\n out.push(this._begin);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar, endRegexSource).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar, endRegexSource).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar, endRegexSource) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n if (this.applyEndPatternLast) {\n this._cachedCompiledPatterns.push(this._end.hasBackReferences ? this._end.clone() : this._end);\n } else {\n this._cachedCompiledPatterns.unshift(this._end.hasBackReferences ? this._end.clone() : this._end);\n }\n }\n if (this._end.hasBackReferences) {\n if (this.applyEndPatternLast) {\n this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length() - 1, endRegexSource);\n } else {\n this._cachedCompiledPatterns.setSource(0, endRegexSource);\n }\n }\n return this._cachedCompiledPatterns;\n }\n};\nvar BeginWhileRule = class extends Rule {\n constructor($location, id, name, contentName, begin, beginCaptures, _while, whileCaptures, patterns) {\n super($location, id, name, contentName);\n this._begin = new RegExpSource(begin, this.id);\n this.beginCaptures = beginCaptures;\n this.whileCaptures = whileCaptures;\n this._while = new RegExpSource(_while, whileRuleId);\n this.whileHasBackReferences = this._while.hasBackReferences;\n this.patterns = patterns.patterns;\n this.hasMissingPatterns = patterns.hasMissingPatterns;\n this._cachedCompiledPatterns = null;\n this._cachedCompiledWhilePatterns = null;\n }\n dispose() {\n if (this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns.dispose();\n this._cachedCompiledPatterns = null;\n }\n if (this._cachedCompiledWhilePatterns) {\n this._cachedCompiledWhilePatterns.dispose();\n this._cachedCompiledWhilePatterns = null;\n }\n }\n get debugBeginRegExp() {\n return `${this._begin.source}`;\n }\n get debugWhileRegExp() {\n return `${this._while.source}`;\n }\n getWhileWithResolvedBackReferences(lineText, captureIndices) {\n return this._while.resolveBackReferences(lineText, captureIndices);\n }\n collectPatterns(grammar, out) {\n out.push(this._begin);\n }\n compile(grammar, endRegexSource) {\n return this._getCachedCompiledPatterns(grammar).compile(grammar);\n }\n compileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledPatterns(grammar).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledPatterns(grammar) {\n if (!this._cachedCompiledPatterns) {\n this._cachedCompiledPatterns = new RegExpSourceList();\n for (const pattern of this.patterns) {\n const rule = grammar.getRule(pattern);\n rule.collectPatterns(grammar, this._cachedCompiledPatterns);\n }\n }\n return this._cachedCompiledPatterns;\n }\n compileWhile(grammar, endRegexSource) {\n return this._getCachedCompiledWhilePatterns(grammar, endRegexSource).compile(grammar);\n }\n compileWhileAG(grammar, endRegexSource, allowA, allowG) {\n return this._getCachedCompiledWhilePatterns(grammar, endRegexSource).compileAG(grammar, allowA, allowG);\n }\n _getCachedCompiledWhilePatterns(grammar, endRegexSource) {\n if (!this._cachedCompiledWhilePatterns) {\n this._cachedCompiledWhilePatterns = new RegExpSourceList();\n this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences ? this._while.clone() : this._while);\n }\n if (this._while.hasBackReferences) {\n this._cachedCompiledWhilePatterns.setSource(0, endRegexSource ? endRegexSource : \"\\uFFFF\");\n }\n return this._cachedCompiledWhilePatterns;\n }\n};\nvar RuleFactory = class _RuleFactory {\n static createCaptureRule(helper, $location, name, contentName, retokenizeCapturedWithRuleId) {\n return helper.registerRule((id) => {\n return new CaptureRule($location, id, name, contentName, retokenizeCapturedWithRuleId);\n });\n }\n static getCompiledRuleId(desc, helper, repository) {\n if (!desc.id) {\n helper.registerRule((id) => {\n desc.id = id;\n if (desc.match) {\n return new MatchRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.match,\n _RuleFactory._compileCaptures(desc.captures, helper, repository)\n );\n }\n if (typeof desc.begin === \"undefined\") {\n if (desc.repository) {\n repository = mergeObjects({}, repository, desc.repository);\n }\n let patterns = desc.patterns;\n if (typeof patterns === \"undefined\" && desc.include) {\n patterns = [{ include: desc.include }];\n }\n return new IncludeOnlyRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n _RuleFactory._compilePatterns(patterns, helper, repository)\n );\n }\n if (desc.while) {\n return new BeginWhileRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n desc.begin,\n _RuleFactory._compileCaptures(desc.beginCaptures || desc.captures, helper, repository),\n desc.while,\n _RuleFactory._compileCaptures(desc.whileCaptures || desc.captures, helper, repository),\n _RuleFactory._compilePatterns(desc.patterns, helper, repository)\n );\n }\n return new BeginEndRule(\n desc.$vscodeTextmateLocation,\n desc.id,\n desc.name,\n desc.contentName,\n desc.begin,\n _RuleFactory._compileCaptures(desc.beginCaptures || desc.captures, helper, repository),\n desc.end,\n _RuleFactory._compileCaptures(desc.endCaptures || desc.captures, helper, repository),\n desc.applyEndPatternLast,\n _RuleFactory._compilePatterns(desc.patterns, helper, repository)\n );\n });\n }\n return desc.id;\n }\n static _compileCaptures(captures, helper, repository) {\n let r = [];\n if (captures) {\n let maximumCaptureId = 0;\n for (const captureId in captures) {\n if (captureId === \"$vscodeTextmateLocation\") {\n continue;\n }\n const numericCaptureId = parseInt(captureId, 10);\n if (numericCaptureId > maximumCaptureId) {\n maximumCaptureId = numericCaptureId;\n }\n }\n for (let i = 0; i <= maximumCaptureId; i++) {\n r[i] = null;\n }\n for (const captureId in captures) {\n if (captureId === \"$vscodeTextmateLocation\") {\n continue;\n }\n const numericCaptureId = parseInt(captureId, 10);\n let retokenizeCapturedWithRuleId = 0;\n if (captures[captureId].patterns) {\n retokenizeCapturedWithRuleId = _RuleFactory.getCompiledRuleId(captures[captureId], helper, repository);\n }\n r[numericCaptureId] = _RuleFactory.createCaptureRule(helper, captures[captureId].$vscodeTextmateLocation, captures[captureId].name, captures[captureId].contentName, retokenizeCapturedWithRuleId);\n }\n }\n return r;\n }\n static _compilePatterns(patterns, helper, repository) {\n let r = [];\n if (patterns) {\n for (let i = 0, len = patterns.length; i < len; i++) {\n const pattern = patterns[i];\n let ruleId = -1;\n if (pattern.include) {\n const reference = parseInclude(pattern.include);\n switch (reference.kind) {\n case 0 /* Base */:\n case 1 /* Self */:\n ruleId = _RuleFactory.getCompiledRuleId(repository[pattern.include], helper, repository);\n break;\n case 2 /* RelativeReference */:\n let localIncludedRule = repository[reference.ruleName];\n if (localIncludedRule) {\n ruleId = _RuleFactory.getCompiledRuleId(localIncludedRule, helper, repository);\n } else {\n }\n break;\n case 3 /* TopLevelReference */:\n case 4 /* TopLevelRepositoryReference */:\n const externalGrammarName = reference.scopeName;\n const externalGrammarInclude = reference.kind === 4 /* TopLevelRepositoryReference */ ? reference.ruleName : null;\n const externalGrammar = helper.getExternalGrammar(externalGrammarName, repository);\n if (externalGrammar) {\n if (externalGrammarInclude) {\n let externalIncludedRule = externalGrammar.repository[externalGrammarInclude];\n if (externalIncludedRule) {\n ruleId = _RuleFactory.getCompiledRuleId(externalIncludedRule, helper, externalGrammar.repository);\n } else {\n }\n } else {\n ruleId = _RuleFactory.getCompiledRuleId(externalGrammar.repository.$self, helper, externalGrammar.repository);\n }\n } else {\n }\n break;\n }\n } else {\n ruleId = _RuleFactory.getCompiledRuleId(pattern, helper, repository);\n }\n if (ruleId !== -1) {\n const rule = helper.getRule(ruleId);\n let skipRule = false;\n if (rule instanceof IncludeOnlyRule || rule instanceof BeginEndRule || rule instanceof BeginWhileRule) {\n if (rule.hasMissingPatterns && rule.patterns.length === 0) {\n skipRule = true;\n }\n }\n if (skipRule) {\n continue;\n }\n r.push(ruleId);\n }\n }\n }\n return {\n patterns: r,\n hasMissingPatterns: (patterns ? patterns.length : 0) !== r.length\n };\n }\n};\nvar RegExpSource = class _RegExpSource {\n constructor(regExpSource, ruleId) {\n if (regExpSource) {\n const len = regExpSource.length;\n let lastPushedPos = 0;\n let output = [];\n let hasAnchor = false;\n for (let pos = 0; pos < len; pos++) {\n const ch = regExpSource.charAt(pos);\n if (ch === \"\\\\\") {\n if (pos + 1 < len) {\n const nextCh = regExpSource.charAt(pos + 1);\n if (nextCh === \"z\") {\n output.push(regExpSource.substring(lastPushedPos, pos));\n output.push(\"$(?!\\\\n)(?<!\\\\n)\");\n lastPushedPos = pos + 2;\n } else if (nextCh === \"A\" || nextCh === \"G\") {\n hasAnchor = true;\n }\n pos++;\n }\n }\n }\n this.hasAnchor = hasAnchor;\n if (lastPushedPos === 0) {\n this.source = regExpSource;\n } else {\n output.push(regExpSource.substring(lastPushedPos, len));\n this.source = output.join(\"\");\n }\n } else {\n this.hasAnchor = false;\n this.source = regExpSource;\n }\n if (this.hasAnchor) {\n this._anchorCache = this._buildAnchorCache();\n } else {\n this._anchorCache = null;\n }\n this.ruleId = ruleId;\n this.hasBackReferences = HAS_BACK_REFERENCES.test(this.source);\n }\n clone() {\n return new _RegExpSource(this.source, this.ruleId);\n }\n setSource(newSource) {\n if (this.source === newSource) {\n return;\n }\n this.source = newSource;\n if (this.hasAnchor) {\n this._anchorCache = this._buildAnchorCache();\n }\n }\n resolveBackReferences(lineText, captureIndices) {\n let capturedValues = captureIndices.map((capture) => {\n return lineText.substring(capture.start, capture.end);\n });\n BACK_REFERENCING_END.lastIndex = 0;\n return this.source.replace(BACK_REFERENCING_END, (match, g1) => {\n return escapeRegExpCharacters(capturedValues[parseInt(g1, 10)] || \"\");\n });\n }\n _buildAnchorCache() {\n let A0_G0_result = [];\n let A0_G1_result = [];\n let A1_G0_result = [];\n let A1_G1_result = [];\n let pos, len, ch, nextCh;\n for (pos = 0, len = this.source.length; pos < len; pos++) {\n ch = this.source.charAt(pos);\n A0_G0_result[pos] = ch;\n A0_G1_result[pos] = ch;\n A1_G0_result[pos] = ch;\n A1_G1_result[pos] = ch;\n if (ch === \"\\\\\") {\n if (pos + 1 < len) {\n nextCh = this.source.charAt(pos + 1);\n if (nextCh === \"A\") {\n A0_G0_result[pos + 1] = \"\\uFFFF\";\n A0_G1_result[pos + 1] = \"\\uFFFF\";\n A1_G0_result[pos + 1] = \"A\";\n A1_G1_result[pos + 1] = \"A\";\n } else if (nextCh === \"G\") {\n A0_G0_result[pos + 1] = \"\\uFFFF\";\n A0_G1_result[pos + 1] = \"G\";\n A1_G0_result[pos + 1] = \"\\uFFFF\";\n A1_G1_result[pos + 1] = \"G\";\n } else {\n A0_G0_result[pos + 1] = nextCh;\n A0_G1_result[pos + 1] = nextCh;\n A1_G0_result[pos + 1] = nextCh;\n A1_G1_result[pos + 1] = nextCh;\n }\n pos++;\n }\n }\n }\n return {\n A0_G0: A0_G0_result.join(\"\"),\n A0_G1: A0_G1_result.join(\"\"),\n A1_G0: A1_G0_result.join(\"\"),\n A1_G1: A1_G1_result.join(\"\")\n };\n }\n resolveAnchors(allowA, allowG) {\n if (!this.hasAnchor || !this._anchorCache) {\n return this.source;\n }\n if (allowA) {\n if (allowG) {\n return this._anchorCache.A1_G1;\n } else {\n return this._anchorCache.A1_G0;\n }\n } else {\n if (allowG) {\n return this._anchorCache.A0_G1;\n } else {\n return this._anchorCache.A0_G0;\n }\n }\n }\n};\nvar RegExpSourceList = class {\n constructor() {\n this._items = [];\n this._hasAnchors = false;\n this._cached = null;\n this._anchorCache = {\n A0_G0: null,\n A0_G1: null,\n A1_G0: null,\n A1_G1: null\n };\n }\n dispose() {\n this._disposeCaches();\n }\n _disposeCaches() {\n if (this._cached) {\n this._cached.dispose();\n this._cached = null;\n }\n if (this._anchorCache.A0_G0) {\n this._anchorCache.A0_G0.dispose();\n this._anchorCache.A0_G0 = null;\n }\n if (this._anchorCache.A0_G1) {\n this._anchorCache.A0_G1.dispose();\n this._anchorCache.A0_G1 = null;\n }\n if (this._anchorCache.A1_G0) {\n this._anchorCache.A1_G0.dispose();\n this._anchorCache.A1_G0 = null;\n }\n if (this._anchorCache.A1_G1) {\n this._anchorCache.A1_G1.dispose();\n this._anchorCache.A1_G1 = null;\n }\n }\n push(item) {\n this._items.push(item);\n this._hasAnchors = this._hasAnchors || item.hasAnchor;\n }\n unshift(item) {\n this._items.unshift(item);\n this._hasAnchors = this._hasAnchors || item.hasAnchor;\n }\n length() {\n return this._items.length;\n }\n setSource(index, newSource) {\n if (this._items[index].source !== newSource) {\n this._disposeCaches();\n this._items[index].setSource(newSource);\n }\n }\n compile(onigLib) {\n if (!this._cached) {\n let regExps = this._items.map((e) => e.source);\n this._cached = new CompiledRule(onigLib, regExps, this._items.map((e) => e.ruleId));\n }\n return this._cached;\n }\n compileAG(onigLib, allowA, allowG) {\n if (!this._hasAnchors) {\n return this.compile(onigLib);\n } else {\n if (allowA) {\n if (allowG) {\n if (!this._anchorCache.A1_G1) {\n this._anchorCache.A1_G1 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A1_G1;\n } else {\n if (!this._anchorCache.A1_G0) {\n this._anchorCache.A1_G0 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A1_G0;\n }\n } else {\n if (allowG) {\n if (!this._anchorCache.A0_G1) {\n this._anchorCache.A0_G1 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A0_G1;\n } else {\n if (!this._anchorCache.A0_G0) {\n this._anchorCache.A0_G0 = this._resolveAnchors(onigLib, allowA, allowG);\n }\n return this._anchorCache.A0_G0;\n }\n }\n }\n }\n _resolveAnchors(onigLib, allowA, allowG) {\n let regExps = this._items.map((e) => e.resolveAnchors(allowA, allowG));\n return new CompiledRule(onigLib, regExps, this._items.map((e) => e.ruleId));\n }\n};\nvar CompiledRule = class {\n constructor(onigLib, regExps, rules) {\n this.regExps = regExps;\n this.rules = rules;\n this.scanner = onigLib.createOnigScanner(regExps);\n }\n dispose() {\n if (typeof this.scanner.dispose === \"function\") {\n this.scanner.dispose();\n }\n }\n toString() {\n const r = [];\n for (let i = 0, len = this.rules.length; i < len; i++) {\n r.push(\" - \" + this.rules[i] + \": \" + this.regExps[i]);\n }\n return r.join(\"\\n\");\n }\n findNextMatchSync(string, startPosition, options) {\n const result = this.scanner.findNextMatchSync(string, startPosition, options);\n if (!result) {\n return null;\n }\n return {\n ruleId: this.rules[result.index],\n captureIndices: result.captureIndices\n };\n }\n};\n\n// src/grammar/basicScopesAttributeProvider.ts\nvar BasicScopeAttributes = class {\n constructor(languageId, tokenType) {\n this.languageId = languageId;\n this.tokenType = tokenType;\n }\n};\nvar _BasicScopeAttributesProvider = class _BasicScopeAttributesProvider {\n constructor(initialLanguageId, embeddedLanguages) {\n this._getBasicScopeAttributes = new CachedFn((scopeName) => {\n const languageId = this._scopeToLanguage(scopeName);\n const standardTokenType = this._toStandardTokenType(scopeName);\n return new BasicScopeAttributes(languageId, standardTokenType);\n });\n this._defaultAttributes = new BasicScopeAttributes(initialLanguageId, 8 /* NotSet */);\n this._embeddedLanguagesMatcher = new ScopeMatcher(Object.entries(embeddedLanguages || {}));\n }\n getDefaultAttributes() {\n return this._defaultAttributes;\n }\n getBasicScopeAttributes(scopeName) {\n if (scopeName === null) {\n return _BasicScopeAttributesProvider._NULL_SCOPE_METADATA;\n }\n return this._getBasicScopeAttributes.get(scopeName);\n }\n /**\n * Given a produced TM scope, return the language that token describes or null if unknown.\n * e.g. source.html => html, source.css.embedded.html => css, punctuation.definition.tag.html => null\n */\n _scopeToLanguage(scope) {\n return this._embeddedLanguagesMatcher.match(scope) || 0;\n }\n _toStandardTokenType(scopeName) {\n const m = scopeName.match(_BasicScopeAttributesProvider.STANDARD_TOKEN_TYPE_REGEXP);\n if (!m) {\n return 8 /* NotSet */;\n }\n switch (m[1]) {\n case \"comment\":\n return 1 /* Comment */;\n case \"string\":\n return 2 /* String */;\n case \"regex\":\n return 3 /* RegEx */;\n case \"meta.embedded\":\n return 0 /* Other */;\n }\n throw new Error(\"Unexpected match for standard token type!\");\n }\n};\n_BasicScopeAttributesProvider._NULL_SCOPE_METADATA = new BasicScopeAttributes(0, 0);\n_BasicScopeAttributesProvider.STANDARD_TOKEN_TYPE_REGEXP = /\\b(comment|string|regex|meta\\.embedded)\\b/;\nvar BasicScopeAttributesProvider = _BasicScopeAttributesProvider;\nvar ScopeMatcher = class {\n constructor(values) {\n if (values.length === 0) {\n this.values = null;\n this.scopesRegExp = null;\n } else {\n this.values = new Map(values);\n const escapedScopes = values.map(\n ([scopeName, value]) => escapeRegExpCharacters(scopeName)\n );\n escapedScopes.sort();\n escapedScopes.reverse();\n this.scopesRegExp = new RegExp(\n `^((${escapedScopes.join(\")|(\")}))($|\\\\.)`,\n \"\"\n );\n }\n }\n match(scope) {\n if (!this.scopesRegExp) {\n return void 0;\n }\n const m = scope.match(this.scopesRegExp);\n if (!m) {\n return void 0;\n }\n return this.values.get(m[1]);\n }\n};\n\n// src/debug.ts\nvar DebugFlags = {\n InDebugMode: typeof process !== \"undefined\" && !!process.env[\"VSCODE_TEXTMATE_DEBUG\"]\n};\nvar UseOnigurumaFindOptions = false;\n\n// src/grammar/tokenizeString.ts\nvar TokenizeStringResult = class {\n constructor(stack, stoppedEarly) {\n this.stack = stack;\n this.stoppedEarly = stoppedEarly;\n }\n};\nfunction _tokenizeString(grammar, lineText, isFirstLine, linePos, stack, lineTokens, checkWhileConditions, timeLimit) {\n const lineLength = lineText.content.length;\n let STOP = false;\n let anchorPosition = -1;\n if (checkWhileConditions) {\n const whileCheckResult = _checkWhileConditions(\n grammar,\n lineText,\n isFirstLine,\n linePos,\n stack,\n lineTokens\n );\n stack = whileCheckResult.stack;\n linePos = whileCheckResult.linePos;\n isFirstLine = whileCheckResult.isFirstLine;\n anchorPosition = whileCheckResult.anchorPosition;\n }\n const startTime = Date.now();\n while (!STOP) {\n if (timeLimit !== 0) {\n const elapsedTime = Date.now() - startTime;\n if (elapsedTime > timeLimit) {\n return new TokenizeStringResult(stack, true);\n }\n }\n scanNext();\n }\n return new TokenizeStringResult(stack, false);\n function scanNext() {\n if (false) {\n console.log(\"\");\n console.log(\n `@@scanNext ${linePos}: |${lineText.content.substr(linePos).replace(/\\n$/, \"\\\\n\")}|`\n );\n }\n const r = matchRuleOrInjections(\n grammar,\n lineText,\n isFirstLine,\n linePos,\n stack,\n anchorPosition\n );\n if (!r) {\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n const captureIndices = r.captureIndices;\n const matchedRuleId = r.matchedRuleId;\n const hasAdvanced = captureIndices && captureIndices.length > 0 ? captureIndices[0].end > linePos : false;\n if (matchedRuleId === endRuleId) {\n const poppedRule = stack.getRule(grammar);\n if (false) {\n console.log(\n \" popping \" + poppedRule.debugName + \" - \" + poppedRule.debugEndRegExp\n );\n }\n lineTokens.produce(stack, captureIndices[0].start);\n stack = stack.withContentNameScopesList(stack.nameScopesList);\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n poppedRule.endCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n const popped = stack;\n stack = stack.parent;\n anchorPosition = popped.getAnchorPos();\n if (!hasAdvanced && popped.getEnterPos() === linePos) {\n if (false) {\n console.error(\n \"[1] - Grammar is in an endless loop - Grammar pushed & popped a rule without advancing\"\n );\n }\n stack = popped;\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else {\n const _rule = grammar.getRule(matchedRuleId);\n lineTokens.produce(stack, captureIndices[0].start);\n const beforePush = stack;\n const scopeName = _rule.getName(lineText.content, captureIndices);\n const nameScopesList = stack.contentNameScopesList.pushAttributed(\n scopeName,\n grammar\n );\n stack = stack.push(\n matchedRuleId,\n linePos,\n anchorPosition,\n captureIndices[0].end === lineLength,\n null,\n nameScopesList,\n nameScopesList\n );\n if (_rule instanceof BeginEndRule) {\n const pushedRule = _rule;\n if (false) {\n console.log(\n \" pushing \" + pushedRule.debugName + \" - \" + pushedRule.debugBeginRegExp\n );\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n pushedRule.beginCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n anchorPosition = captureIndices[0].end;\n const contentName = pushedRule.getContentName(\n lineText.content,\n captureIndices\n );\n const contentNameScopesList = nameScopesList.pushAttributed(\n contentName,\n grammar\n );\n stack = stack.withContentNameScopesList(contentNameScopesList);\n if (pushedRule.endHasBackReferences) {\n stack = stack.withEndRule(\n pushedRule.getEndWithResolvedBackReferences(\n lineText.content,\n captureIndices\n )\n );\n }\n if (!hasAdvanced && beforePush.hasSameRuleAs(stack)) {\n if (false) {\n console.error(\n \"[2] - Grammar is in an endless loop - Grammar pushed the same rule without advancing\"\n );\n }\n stack = stack.pop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else if (_rule instanceof BeginWhileRule) {\n const pushedRule = _rule;\n if (false) {\n console.log(\" pushing \" + pushedRule.debugName);\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n pushedRule.beginCaptures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n anchorPosition = captureIndices[0].end;\n const contentName = pushedRule.getContentName(\n lineText.content,\n captureIndices\n );\n const contentNameScopesList = nameScopesList.pushAttributed(\n contentName,\n grammar\n );\n stack = stack.withContentNameScopesList(contentNameScopesList);\n if (pushedRule.whileHasBackReferences) {\n stack = stack.withEndRule(\n pushedRule.getWhileWithResolvedBackReferences(\n lineText.content,\n captureIndices\n )\n );\n }\n if (!hasAdvanced && beforePush.hasSameRuleAs(stack)) {\n if (false) {\n console.error(\n \"[3] - Grammar is in an endless loop - Grammar pushed the same rule without advancing\"\n );\n }\n stack = stack.pop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n } else {\n const matchingRule = _rule;\n if (false) {\n console.log(\n \" matched \" + matchingRule.debugName + \" - \" + matchingRule.debugMatchRegExp\n );\n }\n handleCaptures(\n grammar,\n lineText,\n isFirstLine,\n stack,\n lineTokens,\n matchingRule.captures,\n captureIndices\n );\n lineTokens.produce(stack, captureIndices[0].end);\n stack = stack.pop();\n if (!hasAdvanced) {\n if (false) {\n console.error(\n \"[4] - Grammar is in an endless loop - Grammar is not advancing, nor is it pushing/popping\"\n );\n }\n stack = stack.safePop();\n lineTokens.produce(stack, lineLength);\n STOP = true;\n return;\n }\n }\n }\n if (captureIndices[0].end > linePos) {\n linePos = captureIndices[0].end;\n isFirstLine = false;\n }\n }\n}\nfunction _checkWhileConditions(grammar, lineText, isFirstLine, linePos, stack, lineTokens) {\n let anchorPosition = stack.beginRuleCapturedEOL ? 0 : -1;\n const whileRules = [];\n for (let node = stack; node; node = node.pop()) {\n const nodeRule = node.getRule(grammar);\n if (nodeRule instanceof BeginWhileRule) {\n whileRules.push({\n rule: nodeRule,\n stack: node\n });\n }\n }\n for (let whileRule = whileRules.pop(); whileRule; whileRule = whileRules.pop()) {\n const { ruleScanner, findOptions } = prepareRuleWhileSearch(whileRule.rule, grammar, whileRule.stack.endRule, isFirstLine, linePos === anchorPosition);\n const r = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (false) {\n console.log(\" scanning for while rule\");\n console.log(ruleScanner.toString());\n }\n if (r) {\n const matchedRuleId = r.ruleId;\n if (matchedRuleId !== whileRuleId) {\n stack = whileRule.stack.pop();\n break;\n }\n if (r.captureIndices && r.captureIndices.length) {\n lineTokens.produce(whileRule.stack, r.captureIndices[0].start);\n handleCaptures(grammar, lineText, isFirstLine, whileRule.stack, lineTokens, whileRule.rule.whileCaptures, r.captureIndices);\n lineTokens.produce(whileRule.stack, r.captureIndices[0].end);\n anchorPosition = r.captureIndices[0].end;\n if (r.captureIndices[0].end > linePos) {\n linePos = r.captureIndices[0].end;\n isFirstLine = false;\n }\n }\n } else {\n if (false) {\n console.log(\" popping \" + whileRule.rule.debugName + \" - \" + whileRule.rule.debugWhileRegExp);\n }\n stack = whileRule.stack.pop();\n break;\n }\n }\n return { stack, linePos, anchorPosition, isFirstLine };\n}\nfunction matchRuleOrInjections(grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n const matchResult = matchRule(grammar, lineText, isFirstLine, linePos, stack, anchorPosition);\n const injections = grammar.getInjections();\n if (injections.length === 0) {\n return matchResult;\n }\n const injectionResult = matchInjections(injections, grammar, lineText, isFirstLine, linePos, stack, anchorPosition);\n if (!injectionResult) {\n return matchResult;\n }\n if (!matchResult) {\n return injectionResult;\n }\n const matchResultScore = matchResult.captureIndices[0].start;\n const injectionResultScore = injectionResult.captureIndices[0].start;\n if (injectionResultScore < matchResultScore || injectionResult.priorityMatch && injectionResultScore === matchResultScore) {\n return injectionResult;\n }\n return matchResult;\n}\nfunction matchRule(grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n const rule = stack.getRule(grammar);\n const { ruleScanner, findOptions } = prepareRuleSearch(rule, grammar, stack.endRule, isFirstLine, linePos === anchorPosition);\n const r = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (r) {\n return {\n captureIndices: r.captureIndices,\n matchedRuleId: r.ruleId\n };\n }\n return null;\n}\nfunction matchInjections(injections, grammar, lineText, isFirstLine, linePos, stack, anchorPosition) {\n let bestMatchRating = Number.MAX_VALUE;\n let bestMatchCaptureIndices = null;\n let bestMatchRuleId;\n let bestMatchResultPriority = 0;\n const scopes = stack.contentNameScopesList.getScopeNames();\n for (let i = 0, len = injections.length; i < len; i++) {\n const injection = injections[i];\n if (!injection.matcher(scopes)) {\n continue;\n }\n const rule = grammar.getRule(injection.ruleId);\n const { ruleScanner, findOptions } = prepareRuleSearch(rule, grammar, null, isFirstLine, linePos === anchorPosition);\n const matchResult = ruleScanner.findNextMatchSync(lineText, linePos, findOptions);\n if (!matchResult) {\n continue;\n }\n if (false) {\n console.log(` matched injection: ${injection.debugSelector}`);\n console.log(ruleScanner.toString());\n }\n const matchRating = matchResult.captureIndices[0].start;\n if (matchRating >= bestMatchRating) {\n continue;\n }\n bestMatchRating = matchRating;\n bestMatchCaptureIndices = matchResult.captureIndices;\n bestMatchRuleId = matchResult.ruleId;\n bestMatchResultPriority = injection.priority;\n if (bestMatchRating === linePos) {\n break;\n }\n }\n if (bestMatchCaptureIndices) {\n return {\n priorityMatch: bestMatchResultPriority === -1,\n captureIndices: bestMatchCaptureIndices,\n matchedRuleId: bestMatchRuleId\n };\n }\n return null;\n}\nfunction prepareRuleSearch(rule, grammar, endRegexSource, allowA, allowG) {\n if (UseOnigurumaFindOptions) {\n const ruleScanner2 = rule.compile(grammar, endRegexSource);\n const findOptions = getFindOptions(allowA, allowG);\n return { ruleScanner: ruleScanner2, findOptions };\n }\n const ruleScanner = rule.compileAG(grammar, endRegexSource, allowA, allowG);\n return { ruleScanner, findOptions: 0 /* None */ };\n}\nfunction prepareRuleWhileSearch(rule, grammar, endRegexSource, allowA, allowG) {\n if (UseOnigurumaFindOptions) {\n const ruleScanner2 = rule.compileWhile(grammar, endRegexSource);\n const findOptions = getFindOptions(allowA, allowG);\n return { ruleScanner: ruleScanner2, findOptions };\n }\n const ruleScanner = rule.compileWhileAG(grammar, endRegexSource, allowA, allowG);\n return { ruleScanner, findOptions: 0 /* None */ };\n}\nfunction getFindOptions(allowA, allowG) {\n let options = 0 /* None */;\n if (!allowA) {\n options |= 1 /* NotBeginString */;\n }\n if (!allowG) {\n options |= 4 /* NotBeginPosition */;\n }\n return options;\n}\nfunction handleCaptures(grammar, lineText, isFirstLine, stack, lineTokens, captures, captureIndices) {\n if (captures.length === 0) {\n return;\n }\n const lineTextContent = lineText.content;\n const len = Math.min(captures.length, captureIndices.length);\n const localStack = [];\n const maxEnd = captureIndices[0].end;\n for (let i = 0; i < len; i++) {\n const captureRule = captures[i];\n if (captureRule === null) {\n continue;\n }\n const captureIndex = captureIndices[i];\n if (captureIndex.length === 0) {\n continue;\n }\n if (captureIndex.start > maxEnd) {\n break;\n }\n while (localStack.length > 0 && localStack[localStack.length - 1].endPos <= captureIndex.start) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, localStack[localStack.length - 1].endPos);\n localStack.pop();\n }\n if (localStack.length > 0) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, captureIndex.start);\n } else {\n lineTokens.produce(stack, captureIndex.start);\n }\n if (captureRule.retokenizeCapturedWithRuleId) {\n const scopeName = captureRule.getName(lineTextContent, captureIndices);\n const nameScopesList = stack.contentNameScopesList.pushAttributed(scopeName, grammar);\n const contentName = captureRule.getContentName(lineTextContent, captureIndices);\n const contentNameScopesList = nameScopesList.pushAttributed(contentName, grammar);\n const stackClone = stack.push(captureRule.retokenizeCapturedWithRuleId, captureIndex.start, -1, false, null, nameScopesList, contentNameScopesList);\n const onigSubStr = grammar.createOnigString(lineTextContent.substring(0, captureIndex.end));\n _tokenizeString(\n grammar,\n onigSubStr,\n isFirstLine && captureIndex.start === 0,\n captureIndex.start,\n stackClone,\n lineTokens,\n false,\n /* no time limit */\n 0\n );\n disposeOnigString(onigSubStr);\n continue;\n }\n const captureRuleScopeName = captureRule.getName(lineTextContent, captureIndices);\n if (captureRuleScopeName !== null) {\n const base = localStack.length > 0 ? localStack[localStack.length - 1].scopes : stack.contentNameScopesList;\n const captureRuleScopesList = base.pushAttributed(captureRuleScopeName, grammar);\n localStack.push(new LocalStackElement(captureRuleScopesList, captureIndex.end));\n }\n }\n while (localStack.length > 0) {\n lineTokens.produceFromScopes(localStack[localStack.length - 1].scopes, localStack[localStack.length - 1].endPos);\n localStack.pop();\n }\n}\nvar LocalStackElement = class {\n constructor(scopes, endPos) {\n this.scopes = scopes;\n this.endPos = endPos;\n }\n};\n\n// src/grammar/grammar.ts\nfunction createGrammar(scopeName, grammar, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors, grammarRepository, onigLib) {\n return new Grammar(\n scopeName,\n grammar,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors,\n grammarRepository,\n onigLib\n );\n}\nfunction collectInjections(result, selector, rule, ruleFactoryHelper, grammar) {\n const matchers = createMatchers(selector, nameMatcher);\n const ruleId = RuleFactory.getCompiledRuleId(rule, ruleFactoryHelper, grammar.repository);\n for (const matcher of matchers) {\n result.push({\n debugSelector: selector,\n matcher: matcher.matcher,\n ruleId,\n grammar,\n priority: matcher.priority\n });\n }\n}\nfunction nameMatcher(identifers, scopes) {\n if (scopes.length < identifers.length) {\n return false;\n }\n let lastIndex = 0;\n return identifers.every((identifier) => {\n for (let i = lastIndex; i < scopes.length; i++) {\n if (scopesAreMatching(scopes[i], identifier)) {\n lastIndex = i + 1;\n return true;\n }\n }\n return false;\n });\n}\nfunction scopesAreMatching(thisScopeName, scopeName) {\n if (!thisScopeName) {\n return false;\n }\n if (thisScopeName === scopeName) {\n return true;\n }\n const len = scopeName.length;\n return thisScopeName.length > len && thisScopeName.substr(0, len) === scopeName && thisScopeName[len] === \".\";\n}\nvar Grammar = class {\n constructor(_rootScopeName, grammar, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors, grammarRepository, _onigLib) {\n this._rootScopeName = _rootScopeName;\n this.balancedBracketSelectors = balancedBracketSelectors;\n this._onigLib = _onigLib;\n this._basicScopeAttributesProvider = new BasicScopeAttributesProvider(\n initialLanguage,\n embeddedLanguages\n );\n this._rootId = -1;\n this._lastRuleId = 0;\n this._ruleId2desc = [null];\n this._includedGrammars = {};\n this._grammarRepository = grammarRepository;\n this._grammar = initGrammar(grammar, null);\n this._injections = null;\n this._tokenTypeMatchers = [];\n if (tokenTypes) {\n for (const selector of Object.keys(tokenTypes)) {\n const matchers = createMatchers(selector, nameMatcher);\n for (const matcher of matchers) {\n this._tokenTypeMatchers.push({\n matcher: matcher.matcher,\n type: tokenTypes[selector]\n });\n }\n }\n }\n }\n get themeProvider() {\n return this._grammarRepository;\n }\n dispose() {\n for (const rule of this._ruleId2desc) {\n if (rule) {\n rule.dispose();\n }\n }\n }\n createOnigScanner(sources) {\n return this._onigLib.createOnigScanner(sources);\n }\n createOnigString(sources) {\n return this._onigLib.createOnigString(sources);\n }\n getMetadataForScope(scope) {\n return this._basicScopeAttributesProvider.getBasicScopeAttributes(scope);\n }\n _collectInjections() {\n const grammarRepository = {\n lookup: (scopeName2) => {\n if (scopeName2 === this._rootScopeName) {\n return this._grammar;\n }\n return this.getExternalGrammar(scopeName2);\n },\n injections: (scopeName2) => {\n return this._grammarRepository.injections(scopeName2);\n }\n };\n const result = [];\n const scopeName = this._rootScopeName;\n const grammar = grammarRepository.lookup(scopeName);\n if (grammar) {\n const rawInjections = grammar.injections;\n if (rawInjections) {\n for (let expression in rawInjections) {\n collectInjections(\n result,\n expression,\n rawInjections[expression],\n this,\n grammar\n );\n }\n }\n const injectionScopeNames = this._grammarRepository.injections(scopeName);\n if (injectionScopeNames) {\n injectionScopeNames.forEach((injectionScopeName) => {\n const injectionGrammar = this.getExternalGrammar(injectionScopeName);\n if (injectionGrammar) {\n const selector = injectionGrammar.injectionSelector;\n if (selector) {\n collectInjections(\n result,\n selector,\n injectionGrammar,\n this,\n injectionGrammar\n );\n }\n }\n });\n }\n }\n result.sort((i1, i2) => i1.priority - i2.priority);\n return result;\n }\n getInjections() {\n if (this._injections === null) {\n this._injections = this._collectInjections();\n }\n return this._injections;\n }\n registerRule(factory) {\n const id = ++this._lastRuleId;\n const result = factory(ruleIdFromNumber(id));\n this._ruleId2desc[id] = result;\n return result;\n }\n getRule(ruleId) {\n return this._ruleId2desc[ruleIdToNumber(ruleId)];\n }\n getExternalGrammar(scopeName, repository) {\n if (this._includedGrammars[scopeName]) {\n return this._includedGrammars[scopeName];\n } else if (this._grammarRepository) {\n const rawIncludedGrammar = this._grammarRepository.lookup(scopeName);\n if (rawIncludedGrammar) {\n this._includedGrammars[scopeName] = initGrammar(\n rawIncludedGrammar,\n repository && repository.$base\n );\n return this._includedGrammars[scopeName];\n }\n }\n return void 0;\n }\n tokenizeLine(lineText, prevState, timeLimit = 0) {\n const r = this._tokenize(lineText, prevState, false, timeLimit);\n return {\n tokens: r.lineTokens.getResult(r.ruleStack, r.lineLength),\n ruleStack: r.ruleStack,\n stoppedEarly: r.stoppedEarly\n };\n }\n tokenizeLine2(lineText, prevState, timeLimit = 0) {\n const r = this._tokenize(lineText, prevState, true, timeLimit);\n return {\n tokens: r.lineTokens.getBinaryResult(r.ruleStack, r.lineLength),\n ruleStack: r.ruleStack,\n stoppedEarly: r.stoppedEarly\n };\n }\n _tokenize(lineText, prevState, emitBinaryTokens, timeLimit) {\n if (this._rootId === -1) {\n this._rootId = RuleFactory.getCompiledRuleId(\n this._grammar.repository.$self,\n this,\n this._grammar.repository\n );\n this.getInjections();\n }\n let isFirstLine;\n if (!prevState || prevState === StateStackImpl.NULL) {\n isFirstLine = true;\n const rawDefaultMetadata = this._basicScopeAttributesProvider.getDefaultAttributes();\n const defaultStyle = this.themeProvider.getDefaults();\n const defaultMetadata = EncodedTokenMetadata.set(\n 0,\n rawDefaultMetadata.languageId,\n rawDefaultMetadata.tokenType,\n null,\n defaultStyle.fontStyle,\n defaultStyle.foregroundId,\n defaultStyle.backgroundId\n );\n const rootScopeName = this.getRule(this._rootId).getName(\n null,\n null\n );\n let scopeList;\n if (rootScopeName) {\n scopeList = AttributedScopeStack.createRootAndLookUpScopeName(\n rootScopeName,\n defaultMetadata,\n this\n );\n } else {\n scopeList = AttributedScopeStack.createRoot(\n \"unknown\",\n defaultMetadata\n );\n }\n prevState = new StateStackImpl(\n null,\n this._rootId,\n -1,\n -1,\n false,\n null,\n scopeList,\n scopeList\n );\n } else {\n isFirstLine = false;\n prevState.reset();\n }\n lineText = lineText + \"\\n\";\n const onigLineText = this.createOnigString(lineText);\n const lineLength = onigLineText.content.length;\n const lineTokens = new LineTokens(\n emitBinaryTokens,\n lineText,\n this._tokenTypeMatchers,\n this.balancedBracketSelectors\n );\n const r = _tokenizeString(\n this,\n onigLineText,\n isFirstLine,\n 0,\n prevState,\n lineTokens,\n true,\n timeLimit\n );\n disposeOnigString(onigLineText);\n return {\n lineLength,\n lineTokens,\n ruleStack: r.stack,\n stoppedEarly: r.stoppedEarly\n };\n }\n};\nfunction initGrammar(grammar, base) {\n grammar = clone(grammar);\n grammar.repository = grammar.repository || {};\n grammar.repository.$self = {\n $vscodeTextmateLocation: grammar.$vscodeTextmateLocation,\n patterns: grammar.patterns,\n name: grammar.scopeName\n };\n grammar.repository.$base = base || grammar.repository.$self;\n return grammar;\n}\nvar AttributedScopeStack = class _AttributedScopeStack {\n /**\n * Invariant:\n * ```\n * if (parent && !scopePath.extends(parent.scopePath)) {\n * \tthrow new Error();\n * }\n * ```\n */\n constructor(parent, scopePath, tokenAttributes) {\n this.parent = parent;\n this.scopePath = scopePath;\n this.tokenAttributes = tokenAttributes;\n }\n static fromExtension(namesScopeList, contentNameScopesList) {\n let current = namesScopeList;\n let scopeNames = namesScopeList?.scopePath ?? null;\n for (const frame of contentNameScopesList) {\n scopeNames = ScopeStack.push(scopeNames, frame.scopeNames);\n current = new _AttributedScopeStack(current, scopeNames, frame.encodedTokenAttributes);\n }\n return current;\n }\n static createRoot(scopeName, tokenAttributes) {\n return new _AttributedScopeStack(null, new ScopeStack(null, scopeName), tokenAttributes);\n }\n static createRootAndLookUpScopeName(scopeName, tokenAttributes, grammar) {\n const rawRootMetadata = grammar.getMetadataForScope(scopeName);\n const scopePath = new ScopeStack(null, scopeName);\n const rootStyle = grammar.themeProvider.themeMatch(scopePath);\n const resolvedTokenAttributes = _AttributedScopeStack.mergeAttributes(\n tokenAttributes,\n rawRootMetadata,\n rootStyle\n );\n return new _AttributedScopeStack(null, scopePath, resolvedTokenAttributes);\n }\n get scopeName() {\n return this.scopePath.scopeName;\n }\n toString() {\n return this.getScopeNames().join(\" \");\n }\n equals(other) {\n return _AttributedScopeStack.equals(this, other);\n }\n static equals(a, b) {\n do {\n if (a === b) {\n return true;\n }\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.scopeName !== b.scopeName || a.tokenAttributes !== b.tokenAttributes) {\n return false;\n }\n a = a.parent;\n b = b.parent;\n } while (true);\n }\n static mergeAttributes(existingTokenAttributes, basicScopeAttributes, styleAttributes) {\n let fontStyle = -1 /* NotSet */;\n let foreground = 0;\n let background = 0;\n if (styleAttributes !== null) {\n fontStyle = styleAttributes.fontStyle;\n foreground = styleAttributes.foregroundId;\n background = styleAttributes.backgroundId;\n }\n return EncodedTokenMetadata.set(\n existingTokenAttributes,\n basicScopeAttributes.languageId,\n basicScopeAttributes.tokenType,\n null,\n fontStyle,\n foreground,\n background\n );\n }\n pushAttributed(scopePath, grammar) {\n if (scopePath === null) {\n return this;\n }\n if (scopePath.indexOf(\" \") === -1) {\n return _AttributedScopeStack._pushAttributed(this, scopePath, grammar);\n }\n const scopes = scopePath.split(/ /g);\n let result = this;\n for (const scope of scopes) {\n result = _AttributedScopeStack._pushAttributed(result, scope, grammar);\n }\n return result;\n }\n static _pushAttributed(target, scopeName, grammar) {\n const rawMetadata = grammar.getMetadataForScope(scopeName);\n const newPath = target.scopePath.push(scopeName);\n const scopeThemeMatchResult = grammar.themeProvider.themeMatch(newPath);\n const metadata = _AttributedScopeStack.mergeAttributes(\n target.tokenAttributes,\n rawMetadata,\n scopeThemeMatchResult\n );\n return new _AttributedScopeStack(target, newPath, metadata);\n }\n getScopeNames() {\n return this.scopePath.getSegments();\n }\n getExtensionIfDefined(base) {\n const result = [];\n let self = this;\n while (self && self !== base) {\n result.push({\n encodedTokenAttributes: self.tokenAttributes,\n scopeNames: self.scopePath.getExtensionIfDefined(self.parent?.scopePath ?? null)\n });\n self = self.parent;\n }\n return self === base ? result.reverse() : void 0;\n }\n};\nvar _StateStackImpl = class _StateStackImpl {\n /**\n * Invariant:\n * ```\n * if (contentNameScopesList !== nameScopesList && contentNameScopesList?.parent !== nameScopesList) {\n * \tthrow new Error();\n * }\n * if (this.parent && !nameScopesList.extends(this.parent.contentNameScopesList)) {\n * \tthrow new Error();\n * }\n * ```\n */\n constructor(parent, ruleId, enterPos, anchorPos, beginRuleCapturedEOL, endRule, nameScopesList, contentNameScopesList) {\n this.parent = parent;\n this.ruleId = ruleId;\n this.beginRuleCapturedEOL = beginRuleCapturedEOL;\n this.endRule = endRule;\n this.nameScopesList = nameScopesList;\n this.contentNameScopesList = contentNameScopesList;\n this._stackElementBrand = void 0;\n this.depth = this.parent ? this.parent.depth + 1 : 1;\n this._enterPos = enterPos;\n this._anchorPos = anchorPos;\n }\n equals(other) {\n if (other === null) {\n return false;\n }\n return _StateStackImpl._equals(this, other);\n }\n static _equals(a, b) {\n if (a === b) {\n return true;\n }\n if (!this._structuralEquals(a, b)) {\n return false;\n }\n return AttributedScopeStack.equals(a.contentNameScopesList, b.contentNameScopesList);\n }\n /**\n * A structural equals check. Does not take into account `scopes`.\n */\n static _structuralEquals(a, b) {\n do {\n if (a === b) {\n return true;\n }\n if (!a && !b) {\n return true;\n }\n if (!a || !b) {\n return false;\n }\n if (a.depth !== b.depth || a.ruleId !== b.ruleId || a.endRule !== b.endRule) {\n return false;\n }\n a = a.parent;\n b = b.parent;\n } while (true);\n }\n clone() {\n return this;\n }\n static _reset(el) {\n while (el) {\n el._enterPos = -1;\n el._anchorPos = -1;\n el = el.parent;\n }\n }\n reset() {\n _StateStackImpl._reset(this);\n }\n pop() {\n return this.parent;\n }\n safePop() {\n if (this.parent) {\n return this.parent;\n }\n return this;\n }\n push(ruleId, enterPos, anchorPos, beginRuleCapturedEOL, endRule, nameScopesList, contentNameScopesList) {\n return new _StateStackImpl(\n this,\n ruleId,\n enterPos,\n anchorPos,\n beginRuleCapturedEOL,\n endRule,\n nameScopesList,\n contentNameScopesList\n );\n }\n getEnterPos() {\n return this._enterPos;\n }\n getAnchorPos() {\n return this._anchorPos;\n }\n getRule(grammar) {\n return grammar.getRule(this.ruleId);\n }\n toString() {\n const r = [];\n this._writeString(r, 0);\n return \"[\" + r.join(\",\") + \"]\";\n }\n _writeString(res, outIndex) {\n if (this.parent) {\n outIndex = this.parent._writeString(res, outIndex);\n }\n res[outIndex++] = `(${this.ruleId}, ${this.nameScopesList?.toString()}, ${this.contentNameScopesList?.toString()})`;\n return outIndex;\n }\n withContentNameScopesList(contentNameScopeStack) {\n if (this.contentNameScopesList === contentNameScopeStack) {\n return this;\n }\n return this.parent.push(\n this.ruleId,\n this._enterPos,\n this._anchorPos,\n this.beginRuleCapturedEOL,\n this.endRule,\n this.nameScopesList,\n contentNameScopeStack\n );\n }\n withEndRule(endRule) {\n if (this.endRule === endRule) {\n return this;\n }\n return new _StateStackImpl(\n this.parent,\n this.ruleId,\n this._enterPos,\n this._anchorPos,\n this.beginRuleCapturedEOL,\n endRule,\n this.nameScopesList,\n this.contentNameScopesList\n );\n }\n // Used to warn of endless loops\n hasSameRuleAs(other) {\n let el = this;\n while (el && el._enterPos === other._enterPos) {\n if (el.ruleId === other.ruleId) {\n return true;\n }\n el = el.parent;\n }\n return false;\n }\n toStateStackFrame() {\n return {\n ruleId: ruleIdToNumber(this.ruleId),\n beginRuleCapturedEOL: this.beginRuleCapturedEOL,\n endRule: this.endRule,\n nameScopesList: this.nameScopesList?.getExtensionIfDefined(this.parent?.nameScopesList ?? null) ?? [],\n contentNameScopesList: this.contentNameScopesList?.getExtensionIfDefined(this.nameScopesList) ?? []\n };\n }\n static pushFrame(self, frame) {\n const namesScopeList = AttributedScopeStack.fromExtension(self?.nameScopesList ?? null, frame.nameScopesList);\n return new _StateStackImpl(\n self,\n ruleIdFromNumber(frame.ruleId),\n frame.enterPos ?? -1,\n frame.anchorPos ?? -1,\n frame.beginRuleCapturedEOL,\n frame.endRule,\n namesScopeList,\n AttributedScopeStack.fromExtension(namesScopeList, frame.contentNameScopesList)\n );\n }\n};\n// TODO remove me\n_StateStackImpl.NULL = new _StateStackImpl(\n null,\n 0,\n 0,\n 0,\n false,\n null,\n null,\n null\n);\nvar StateStackImpl = _StateStackImpl;\nvar BalancedBracketSelectors = class {\n constructor(balancedBracketScopes, unbalancedBracketScopes) {\n this.allowAny = false;\n this.balancedBracketScopes = balancedBracketScopes.flatMap(\n (selector) => {\n if (selector === \"*\") {\n this.allowAny = true;\n return [];\n }\n return createMatchers(selector, nameMatcher).map((m) => m.matcher);\n }\n );\n this.unbalancedBracketScopes = unbalancedBracketScopes.flatMap(\n (selector) => createMatchers(selector, nameMatcher).map((m) => m.matcher)\n );\n }\n get matchesAlways() {\n return this.allowAny && this.unbalancedBracketScopes.length === 0;\n }\n get matchesNever() {\n return this.balancedBracketScopes.length === 0 && !this.allowAny;\n }\n match(scopes) {\n for (const excluder of this.unbalancedBracketScopes) {\n if (excluder(scopes)) {\n return false;\n }\n }\n for (const includer of this.balancedBracketScopes) {\n if (includer(scopes)) {\n return true;\n }\n }\n return this.allowAny;\n }\n};\nvar LineTokens = class {\n constructor(emitBinaryTokens, lineText, tokenTypeOverrides, balancedBracketSelectors) {\n this.balancedBracketSelectors = balancedBracketSelectors;\n this._emitBinaryTokens = emitBinaryTokens;\n this._tokenTypeOverrides = tokenTypeOverrides;\n if (false) {\n this._lineText = lineText;\n } else {\n this._lineText = null;\n }\n this._tokens = [];\n this._binaryTokens = [];\n this._lastTokenEndIndex = 0;\n }\n produce(stack, endIndex) {\n this.produceFromScopes(stack.contentNameScopesList, endIndex);\n }\n produceFromScopes(scopesList, endIndex) {\n if (this._lastTokenEndIndex >= endIndex) {\n return;\n }\n if (this._emitBinaryTokens) {\n let metadata = scopesList?.tokenAttributes ?? 0;\n let containsBalancedBrackets = false;\n if (this.balancedBracketSelectors?.matchesAlways) {\n containsBalancedBrackets = true;\n }\n if (this._tokenTypeOverrides.length > 0 || this.balancedBracketSelectors && !this.balancedBracketSelectors.matchesAlways && !this.balancedBracketSelectors.matchesNever) {\n const scopes2 = scopesList?.getScopeNames() ?? [];\n for (const tokenType of this._tokenTypeOverrides) {\n if (tokenType.matcher(scopes2)) {\n metadata = EncodedTokenMetadata.set(\n metadata,\n 0,\n toOptionalTokenType(tokenType.type),\n null,\n -1 /* NotSet */,\n 0,\n 0\n );\n }\n }\n if (this.balancedBracketSelectors) {\n containsBalancedBrackets = this.balancedBracketSelectors.match(scopes2);\n }\n }\n if (containsBalancedBrackets) {\n metadata = EncodedTokenMetadata.set(\n metadata,\n 0,\n 8 /* NotSet */,\n containsBalancedBrackets,\n -1 /* NotSet */,\n 0,\n 0\n );\n }\n if (this._binaryTokens.length > 0 && this._binaryTokens[this._binaryTokens.length - 1] === metadata) {\n this._lastTokenEndIndex = endIndex;\n return;\n }\n this._binaryTokens.push(this._lastTokenEndIndex);\n this._binaryTokens.push(metadata);\n this._lastTokenEndIndex = endIndex;\n return;\n }\n const scopes = scopesList?.getScopeNames() ?? [];\n this._tokens.push({\n startIndex: this._lastTokenEndIndex,\n endIndex,\n // value: lineText.substring(lastTokenEndIndex, endIndex),\n scopes\n });\n this._lastTokenEndIndex = endIndex;\n }\n getResult(stack, lineLength) {\n if (this._tokens.length > 0 && this._tokens[this._tokens.length - 1].startIndex === lineLength - 1) {\n this._tokens.pop();\n }\n if (this._tokens.length === 0) {\n this._lastTokenEndIndex = -1;\n this.produce(stack, lineLength);\n this._tokens[this._tokens.length - 1].startIndex = 0;\n }\n return this._tokens;\n }\n getBinaryResult(stack, lineLength) {\n if (this._binaryTokens.length > 0 && this._binaryTokens[this._binaryTokens.length - 2] === lineLength - 1) {\n this._binaryTokens.pop();\n this._binaryTokens.pop();\n }\n if (this._binaryTokens.length === 0) {\n this._lastTokenEndIndex = -1;\n this.produce(stack, lineLength);\n this._binaryTokens[this._binaryTokens.length - 2] = 0;\n }\n const result = new Uint32Array(this._binaryTokens.length);\n for (let i = 0, len = this._binaryTokens.length; i < len; i++) {\n result[i] = this._binaryTokens[i];\n }\n return result;\n }\n};\n\n// src/registry.ts\nvar SyncRegistry = class {\n constructor(theme, _onigLib) {\n this._onigLib = _onigLib;\n this._grammars = /* @__PURE__ */ new Map();\n this._rawGrammars = /* @__PURE__ */ new Map();\n this._injectionGrammars = /* @__PURE__ */ new Map();\n this._theme = theme;\n }\n dispose() {\n for (const grammar of this._grammars.values()) {\n grammar.dispose();\n }\n }\n setTheme(theme) {\n this._theme = theme;\n }\n getColorMap() {\n return this._theme.getColorMap();\n }\n /**\n * Add `grammar` to registry and return a list of referenced scope names\n */\n addGrammar(grammar, injectionScopeNames) {\n this._rawGrammars.set(grammar.scopeName, grammar);\n if (injectionScopeNames) {\n this._injectionGrammars.set(grammar.scopeName, injectionScopeNames);\n }\n }\n /**\n * Lookup a raw grammar.\n */\n lookup(scopeName) {\n return this._rawGrammars.get(scopeName);\n }\n /**\n * Returns the injections for the given grammar\n */\n injections(targetScope) {\n return this._injectionGrammars.get(targetScope);\n }\n /**\n * Get the default theme settings\n */\n getDefaults() {\n return this._theme.getDefaults();\n }\n /**\n * Match a scope in the theme.\n */\n themeMatch(scopePath) {\n return this._theme.match(scopePath);\n }\n /**\n * Lookup a grammar.\n */\n grammarForScopeName(scopeName, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors) {\n if (!this._grammars.has(scopeName)) {\n let rawGrammar = this._rawGrammars.get(scopeName);\n if (!rawGrammar) {\n return null;\n }\n this._grammars.set(scopeName, createGrammar(\n scopeName,\n rawGrammar,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors,\n this,\n this._onigLib\n ));\n }\n return this._grammars.get(scopeName);\n }\n};\n\n// src/index.ts\nvar Registry = class {\n constructor(options) {\n this._options = options;\n this._syncRegistry = new SyncRegistry(\n Theme.createFromRawTheme(options.theme, options.colorMap),\n options.onigLib\n );\n this._ensureGrammarCache = /* @__PURE__ */ new Map();\n }\n dispose() {\n this._syncRegistry.dispose();\n }\n /**\n * Change the theme. Once called, no previous `ruleStack` should be used anymore.\n */\n setTheme(theme, colorMap) {\n this._syncRegistry.setTheme(Theme.createFromRawTheme(theme, colorMap));\n }\n /**\n * Returns a lookup array for color ids.\n */\n getColorMap() {\n return this._syncRegistry.getColorMap();\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n * Please do not use language id 0.\n */\n loadGrammarWithEmbeddedLanguages(initialScopeName, initialLanguage, embeddedLanguages) {\n return this.loadGrammarWithConfiguration(initialScopeName, initialLanguage, { embeddedLanguages });\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n * Please do not use language id 0.\n */\n loadGrammarWithConfiguration(initialScopeName, initialLanguage, configuration) {\n return this._loadGrammar(\n initialScopeName,\n initialLanguage,\n configuration.embeddedLanguages,\n configuration.tokenTypes,\n new BalancedBracketSelectors(\n configuration.balancedBracketSelectors || [],\n configuration.unbalancedBracketSelectors || []\n )\n );\n }\n /**\n * Load the grammar for `scopeName` and all referenced included grammars asynchronously.\n */\n loadGrammar(initialScopeName) {\n return this._loadGrammar(initialScopeName, 0, null, null, null);\n }\n _loadGrammar(initialScopeName, initialLanguage, embeddedLanguages, tokenTypes, balancedBracketSelectors) {\n const dependencyProcessor = new ScopeDependencyProcessor(this._syncRegistry, initialScopeName);\n while (dependencyProcessor.Q.length > 0) {\n dependencyProcessor.Q.map((request) => this._loadSingleGrammar(request.scopeName));\n dependencyProcessor.processQueue();\n }\n return this._grammarForScopeName(\n initialScopeName,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors\n );\n }\n _loadSingleGrammar(scopeName) {\n if (!this._ensureGrammarCache.has(scopeName)) {\n this._doLoadSingleGrammar(scopeName);\n this._ensureGrammarCache.set(scopeName, true);\n }\n }\n _doLoadSingleGrammar(scopeName) {\n const grammar = this._options.loadGrammar(scopeName);\n if (grammar) {\n const injections = typeof this._options.getInjections === \"function\" ? this._options.getInjections(scopeName) : void 0;\n this._syncRegistry.addGrammar(grammar, injections);\n }\n }\n /**\n * Adds a rawGrammar.\n */\n addGrammar(rawGrammar, injections = [], initialLanguage = 0, embeddedLanguages = null) {\n this._syncRegistry.addGrammar(rawGrammar, injections);\n return this._grammarForScopeName(rawGrammar.scopeName, initialLanguage, embeddedLanguages);\n }\n /**\n * Get the grammar for `scopeName`. The grammar must first be created via `loadGrammar` or `addGrammar`.\n */\n _grammarForScopeName(scopeName, initialLanguage = 0, embeddedLanguages = null, tokenTypes = null, balancedBracketSelectors = null) {\n return this._syncRegistry.grammarForScopeName(\n scopeName,\n initialLanguage,\n embeddedLanguages,\n tokenTypes,\n balancedBracketSelectors\n );\n }\n};\nvar INITIAL = StateStackImpl.NULL;\nexport {\n EncodedTokenMetadata,\n FindOption,\n FontStyle,\n INITIAL,\n Registry,\n Theme,\n disposeOnigString\n};\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n */\n\nimport {Schema} from './schema.js'\n\n/**\n * @param {Schema[]} definitions\n * @param {string} [space]\n * @returns {Schema}\n */\nexport function merge(definitions, space) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n let index = -1\n\n while (++index < definitions.length) {\n Object.assign(property, definitions[index].property)\n Object.assign(normal, definitions[index].normal)\n }\n\n return new Schema(property, normal, space)\n}\n","/**\n * @param {string} value\n * @returns {string}\n */\nexport function normalize(value) {\n return value.toLowerCase()\n}\n","let powers = 0\n\nexport const boolean = increment()\nexport const booleanish = increment()\nexport const overloadedBoolean = increment()\nexport const number = increment()\nexport const spaceSeparated = increment()\nexport const commaSeparated = increment()\nexport const commaOrSpaceSeparated = increment()\n\nfunction increment() {\n return 2 ** ++powers\n}\n","import {Info} from './info.js'\nimport * as types from './types.js'\n\n/** @type {Array<keyof types>} */\n// @ts-expect-error: hush.\nconst checks = Object.keys(types)\n\nexport class DefinedInfo extends Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n * @param {number|null} [mask]\n * @param {string} [space]\n */\n constructor(property, attribute, mask, space) {\n let index = -1\n\n super(property, attribute)\n\n mark(this, 'space', space)\n\n if (typeof mask === 'number') {\n while (++index < checks.length) {\n const check = checks[index]\n mark(this, checks[index], (mask & types[check]) === types[check])\n }\n }\n }\n}\n\nDefinedInfo.prototype.defined = true\n\n/**\n * @param {DefinedInfo} values\n * @param {string} key\n * @param {unknown} value\n */\nfunction mark(values, key, value) {\n if (value) {\n // @ts-expect-error: assume `value` matches the expected value of `key`.\n values[key] = value\n }\n}\n","/**\n * @typedef {import('./schema.js').Properties} Properties\n * @typedef {import('./schema.js').Normal} Normal\n *\n * @typedef {Record<string, string>} Attributes\n *\n * @typedef {Object} Definition\n * @property {Record<string, number|null>} properties\n * @property {(attributes: Attributes, property: string) => string} transform\n * @property {string} [space]\n * @property {Attributes} [attributes]\n * @property {Array<string>} [mustUseProperty]\n */\n\nimport {normalize} from '../normalize.js'\nimport {Schema} from './schema.js'\nimport {DefinedInfo} from './defined-info.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * @param {Definition} definition\n * @returns {Schema}\n */\nexport function create(definition) {\n /** @type {Properties} */\n const property = {}\n /** @type {Normal} */\n const normal = {}\n /** @type {string} */\n let prop\n\n for (prop in definition.properties) {\n if (own.call(definition.properties, prop)) {\n const value = definition.properties[prop]\n const info = new DefinedInfo(\n prop,\n definition.transform(definition.attributes || {}, prop),\n value,\n definition.space\n )\n\n if (\n definition.mustUseProperty &&\n definition.mustUseProperty.includes(prop)\n ) {\n info.mustUseProperty = true\n }\n\n property[prop] = info\n\n normal[normalize(prop)] = prop\n normal[normalize(info.attribute)] = prop\n }\n }\n\n return new Schema(property, normal, definition.space)\n}\n","/**\n * @param {Record<string, string>} attributes\n * @param {string} attribute\n * @returns {string}\n */\nexport function caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute\n}\n","import {caseSensitiveTransform} from './case-sensitive-transform.js'\n\n/**\n * @param {Record<string, string>} attributes\n * @param {string} property\n * @returns {string}\n */\nexport function caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase())\n}\n","/**\n * @typedef {import('./util/schema.js').Schema} Schema\n */\n\nimport {normalize} from './normalize.js'\nimport {DefinedInfo} from './util/defined-info.js'\nimport {Info} from './util/info.js'\n\nconst valid = /^data[-\\w.:]+$/i\nconst dash = /-[a-z]/g\nconst cap = /[A-Z]/g\n\n/**\n * @param {Schema} schema\n * @param {string} value\n * @returns {Info}\n */\nexport function find(schema, value) {\n const normal = normalize(value)\n let prop = value\n let Type = Info\n\n if (normal in schema.normal) {\n return schema.property[schema.normal[normal]]\n }\n\n if (normal.length > 4 && normal.slice(0, 4) === 'data' && valid.test(value)) {\n // Attribute or property.\n if (value.charAt(4) === '-') {\n // Turn it into a property.\n const rest = value.slice(5).replace(dash, camelcase)\n prop = 'data' + rest.charAt(0).toUpperCase() + rest.slice(1)\n } else {\n // Turn it into an attribute.\n const rest = value.slice(4)\n\n if (!dash.test(rest)) {\n let dashes = rest.replace(cap, kebab)\n\n if (dashes.charAt(0) !== '-') {\n dashes = '-' + dashes\n }\n\n value = 'data' + dashes\n }\n }\n\n Type = DefinedInfo\n }\n\n return new Type(prop, value)\n}\n\n/**\n * @param {string} $0\n * @returns {string}\n */\nfunction kebab($0) {\n return '-' + $0.toLowerCase()\n}\n\n/**\n * @param {string} $0\n * @returns {string}\n */\nfunction camelcase($0) {\n return $0.charAt(1).toUpperCase()\n}\n","/**\n * @typedef CoreOptions\n * @property {ReadonlyArray<string>} [subset=[]]\n * Whether to only escape the given subset of characters.\n * @property {boolean} [escapeOnly=false]\n * Whether to only escape possibly dangerous characters.\n * Those characters are `\"`, `&`, `'`, `<`, `>`, and `` ` ``.\n *\n * @typedef FormatOptions\n * @property {(code: number, next: number, options: CoreWithFormatOptions) => string} format\n * Format strategy.\n *\n * @typedef {CoreOptions & FormatOptions & import('./util/format-smart.js').FormatSmartOptions} CoreWithFormatOptions\n */\n\nconst defaultSubsetRegex = /[\"&'<>`]/g\nconst surrogatePairsRegex = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g\nconst controlCharactersRegex =\n // eslint-disable-next-line no-control-regex, unicorn/no-hex-escape\n /[\\x01-\\t\\v\\f\\x0E-\\x1F\\x7F\\x81\\x8D\\x8F\\x90\\x9D\\xA0-\\uFFFF]/g\nconst regexEscapeRegex = /[|\\\\{}()[\\]^$+*?.]/g\n\n/** @type {WeakMap<ReadonlyArray<string>, RegExp>} */\nconst subsetToRegexCache = new WeakMap()\n\n/**\n * Encode certain characters in `value`.\n *\n * @param {string} value\n * @param {CoreWithFormatOptions} options\n * @returns {string}\n */\nexport function core(value, options) {\n value = value.replace(\n options.subset\n ? charactersToExpressionCached(options.subset)\n : defaultSubsetRegex,\n basic\n )\n\n if (options.subset || options.escapeOnly) {\n return value\n }\n\n return (\n value\n // Surrogate pairs.\n .replace(surrogatePairsRegex, surrogate)\n // BMP control characters (C0 except for LF, CR, SP; DEL; and some more\n // non-ASCII ones).\n .replace(controlCharactersRegex, basic)\n )\n\n /**\n * @param {string} pair\n * @param {number} index\n * @param {string} all\n */\n function surrogate(pair, index, all) {\n return options.format(\n (pair.charCodeAt(0) - 0xd800) * 0x400 +\n pair.charCodeAt(1) -\n 0xdc00 +\n 0x10000,\n all.charCodeAt(index + 2),\n options\n )\n }\n\n /**\n * @param {string} character\n * @param {number} index\n * @param {string} all\n */\n function basic(character, index, all) {\n return options.format(\n character.charCodeAt(0),\n all.charCodeAt(index + 1),\n options\n )\n }\n}\n\n/**\n * A wrapper function that caches the result of `charactersToExpression` with a WeakMap.\n * This can improve performance when tooling calls `charactersToExpression` repeatedly\n * with the same subset.\n *\n * @param {ReadonlyArray<string>} subset\n * @returns {RegExp}\n */\nfunction charactersToExpressionCached(subset) {\n let cached = subsetToRegexCache.get(subset)\n\n if (!cached) {\n cached = charactersToExpression(subset)\n subsetToRegexCache.set(subset, cached)\n }\n\n return cached\n}\n\n/**\n * @param {ReadonlyArray<string>} subset\n * @returns {RegExp}\n */\nfunction charactersToExpression(subset) {\n /** @type {Array<string>} */\n const groups = []\n let index = -1\n\n while (++index < subset.length) {\n groups.push(subset[index].replace(regexEscapeRegex, '\\\\$&'))\n }\n\n return new RegExp('(?:' + groups.join('|') + ')', 'g')\n}\n","/**\n * @typedef FormatSmartOptions\n * @property {boolean} [useNamedReferences=false]\n * Prefer named character references (`&`) where possible.\n * @property {boolean} [useShortestReferences=false]\n * Prefer the shortest possible reference, if that results in less bytes.\n * **Note**: `useNamedReferences` can be omitted when using `useShortestReferences`.\n * @property {boolean} [omitOptionalSemicolons=false]\n * Whether to omit semicolons when possible.\n * **Note**: This creates what HTML calls “parse errors” but is otherwise still valid HTML — don’t use this except when building a minifier.\n * Omitting semicolons is possible for certain named and numeric references in some cases.\n * @property {boolean} [attribute=false]\n * Create character references which don’t fail in attributes.\n * **Note**: `attribute` only applies when operating dangerously with\n * `omitOptionalSemicolons: true`.\n */\n\nimport {toHexadecimal} from './to-hexadecimal.js'\nimport {toDecimal} from './to-decimal.js'\nimport {toNamed} from './to-named.js'\n\n/**\n * Configurable ways to encode a character yielding pretty or small results.\n *\n * @param {number} code\n * @param {number} next\n * @param {FormatSmartOptions} options\n * @returns {string}\n */\nexport function formatSmart(code, next, options) {\n let numeric = toHexadecimal(code, next, options.omitOptionalSemicolons)\n /** @type {string|undefined} */\n let named\n\n if (options.useNamedReferences || options.useShortestReferences) {\n named = toNamed(\n code,\n next,\n options.omitOptionalSemicolons,\n options.attribute\n )\n }\n\n // Use the shortest numeric reference when requested.\n // A simple algorithm would use decimal for all code points under 100, as\n // those are shorter than hexadecimal:\n //\n // * `c` vs `c` (decimal shorter)\n // * `d` vs `d` (equal)\n //\n // However, because we take `next` into consideration when `omit` is used,\n // And it would be possible that decimals are shorter on bigger values as\n // well if `next` is hexadecimal but not decimal, we instead compare both.\n if (\n (options.useShortestReferences || !named) &&\n options.useShortestReferences\n ) {\n const decimal = toDecimal(code, next, options.omitOptionalSemicolons)\n\n if (decimal.length < numeric.length) {\n numeric = decimal\n }\n }\n\n return named &&\n (!options.useShortestReferences || named.length < numeric.length)\n ? named\n : numeric\n}\n","const hexadecimalRegex = /[\\dA-Fa-f]/\n\n/**\n * Configurable ways to encode characters as hexadecimal references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @returns {string}\n */\nexport function toHexadecimal(code, next, omit) {\n const value = '&#x' + code.toString(16).toUpperCase()\n return omit && next && !hexadecimalRegex.test(String.fromCharCode(next))\n ? value\n : value + ';'\n}\n","import {characterEntitiesLegacy} from 'character-entities-legacy'\nimport {characterEntitiesHtml4} from 'character-entities-html4'\nimport {dangerous} from '../constant/dangerous.js'\n\nconst own = {}.hasOwnProperty\n\n/**\n * `characterEntitiesHtml4` but inverted.\n *\n * @type {Record<string, string>}\n */\nconst characters = {}\n\n/** @type {string} */\nlet key\n\nfor (key in characterEntitiesHtml4) {\n if (own.call(characterEntitiesHtml4, key)) {\n characters[characterEntitiesHtml4[key]] = key\n }\n}\n\nconst notAlphanumericRegex = /[^\\dA-Za-z]/\n\n/**\n * Configurable ways to encode characters as named references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @param {boolean|undefined} attribute\n * @returns {string}\n */\nexport function toNamed(code, next, omit, attribute) {\n const character = String.fromCharCode(code)\n\n if (own.call(characters, character)) {\n const name = characters[character]\n const value = '&' + name\n\n if (\n omit &&\n characterEntitiesLegacy.includes(name) &&\n !dangerous.includes(name) &&\n (!attribute ||\n (next &&\n next !== 61 /* `=` */ &&\n notAlphanumericRegex.test(String.fromCharCode(next))))\n ) {\n return value\n }\n\n return value + ';'\n }\n\n return ''\n}\n","const decimalRegex = /\\d/\n\n/**\n * Configurable ways to encode characters as decimal references.\n *\n * @param {number} code\n * @param {number} next\n * @param {boolean|undefined} omit\n * @returns {string}\n */\nexport function toDecimal(code, next, omit) {\n const value = '&#' + String(code)\n return omit && next && !decimalRegex.test(String.fromCharCode(next))\n ? value\n : value + ';'\n}\n","/**\n * @typedef {import('./core.js').CoreOptions & import('./util/format-smart.js').FormatSmartOptions} Options\n * @typedef {import('./core.js').CoreOptions} LightOptions\n */\n\nimport {core} from './core.js'\nimport {formatSmart} from './util/format-smart.js'\nimport {formatBasic} from './util/format-basic.js'\n\n/**\n * Encode special characters in `value`.\n *\n * @param {string} value\n * Value to encode.\n * @param {Options} [options]\n * Configuration.\n * @returns {string}\n * Encoded value.\n */\nexport function stringifyEntities(value, options) {\n return core(value, Object.assign({format: formatSmart}, options))\n}\n\n/**\n * Encode special characters in `value` as hexadecimals.\n *\n * @param {string} value\n * Value to encode.\n * @param {LightOptions} [options]\n * Configuration.\n * @returns {string}\n * Encoded value.\n */\nexport function stringifyEntitiesLight(value, options) {\n return core(value, Object.assign({format: formatBasic}, options))\n}\n","/**\n * Count how often a character (or substring) is used in a string.\n *\n * @param {string} value\n * Value to search in.\n * @param {string} character\n * Character (or substring) to look for.\n * @return {number}\n * Number of times `character` occurred in `value`.\n */\nexport function ccount(value, character) {\n const source = String(value)\n\n if (typeof character !== 'string') {\n throw new TypeError('Expected character')\n }\n\n let count = 0\n let index = source.indexOf(character)\n\n while (index !== -1) {\n count++\n index = source.indexOf(character, index + character.length)\n }\n\n return count\n}\n","/**\n * @typedef Options\n * Configuration for `stringify`.\n * @property {boolean} [padLeft=true]\n * Whether to pad a space before a token.\n * @property {boolean} [padRight=false]\n * Whether to pad a space after a token.\n */\n\n/**\n * @typedef {Options} StringifyOptions\n * Please use `StringifyOptions` instead.\n */\n\n/**\n * Parse comma-separated tokens to an array.\n *\n * @param {string} value\n * Comma-separated tokens.\n * @returns {Array<string>}\n * List of tokens.\n */\nexport function parse(value) {\n /** @type {Array<string>} */\n const tokens = []\n const input = String(value || '')\n let index = input.indexOf(',')\n let start = 0\n /** @type {boolean} */\n let end = false\n\n while (!end) {\n if (index === -1) {\n index = input.length\n end = true\n }\n\n const token = input.slice(start, index).trim()\n\n if (token || !end) {\n tokens.push(token)\n }\n\n start = index + 1\n index = input.indexOf(',', start)\n }\n\n return tokens\n}\n\n/**\n * Serialize an array of strings or numbers to comma-separated tokens.\n *\n * @param {Array<string|number>} values\n * List of tokens.\n * @param {Options} [options]\n * Configuration for `stringify` (optional).\n * @returns {string}\n * Comma-separated tokens.\n */\nexport function stringify(values, options) {\n const settings = options || {}\n\n // Ensure the last empty entry is seen.\n const input = values[values.length - 1] === '' ? [...values, ''] : values\n\n return input\n .join(\n (settings.padRight ? ' ' : '') +\n ',' +\n (settings.padLeft === false ? '' : ' ')\n )\n .trim()\n}\n","/**\n * Parse space-separated tokens to an array of strings.\n *\n * @param {string} value\n * Space-separated tokens.\n * @returns {Array<string>}\n * List of tokens.\n */\nexport function parse(value) {\n const input = String(value || '').trim()\n return input ? input.split(/[ \\t\\n\\r\\f]+/g) : []\n}\n\n/**\n * Serialize an array of strings as space separated-tokens.\n *\n * @param {Array<string|number>} values\n * List of tokens.\n * @returns {string}\n * Space-separated tokens.\n */\nexport function stringify(values) {\n return values.join(' ').trim()\n}\n","/**\n * @typedef {import('hast').Nodes} Nodes\n */\n\n// HTML whitespace expression.\n// See <https://infra.spec.whatwg.org/#ascii-whitespace>.\nconst re = /[ \\t\\n\\f\\r]/g\n\n/**\n * Check if the given value is *inter-element whitespace*.\n *\n * @param {Nodes | string} thing\n * Thing to check (`Node` or `string`).\n * @returns {boolean}\n * Whether the `value` is inter-element whitespace (`boolean`): consisting of\n * zero or more of space, tab (`\\t`), line feed (`\\n`), carriage return\n * (`\\r`), or form feed (`\\f`); if a node is passed it must be a `Text` node,\n * whose `value` field is checked.\n */\nexport function whitespace(thing) {\n return typeof thing === 'object'\n ? thing.type === 'text'\n ? empty(thing.value)\n : false\n : empty(thing)\n}\n\n/**\n * @param {string} value\n * @returns {boolean}\n */\nfunction empty(value) {\n return value.replace(re, '') === ''\n}\n","/**\n * @import {Parents, RootContent} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\n\nexport const siblingAfter = siblings(1)\nexport const siblingBefore = siblings(-1)\n\n/** @type {Array<RootContent>} */\nconst emptyChildren = []\n\n/**\n * Factory to check siblings in a direction.\n *\n * @param {number} increment\n */\nfunction siblings(increment) {\n return sibling\n\n /**\n * Find applicable siblings in a direction.\n *\n * @template {Parents} Parent\n * Parent type.\n * @param {Parent | undefined} parent\n * Parent.\n * @param {number | undefined} index\n * Index of child in `parent`.\n * @param {boolean | undefined} [includeWhitespace=false]\n * Whether to include whitespace (default: `false`).\n * @returns {Parent extends {children: Array<infer Child>} ? Child | undefined : never}\n * Child of parent.\n */\n function sibling(parent, index, includeWhitespace) {\n const siblings = parent ? parent.children : emptyChildren\n let offset = (index || 0) + increment\n let next = siblings[offset]\n\n if (!includeWhitespace) {\n while (next && whitespace(next)) {\n offset += increment\n next = siblings[offset]\n }\n }\n\n // @ts-expect-error: it’s a correct child.\n return next\n }\n}\n","/**\n * @import {Element, Parents} from 'hast'\n */\n\n/**\n * @callback OmitHandle\n * Check if a tag can be omitted.\n * @param {Element} element\n * Element to check.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether to omit a tag.\n *\n */\n\nconst own = {}.hasOwnProperty\n\n/**\n * Factory to check if a given node can have a tag omitted.\n *\n * @param {Record<string, OmitHandle>} handlers\n * Omission handlers, where each key is a tag name, and each value is the\n * corresponding handler.\n * @returns {OmitHandle}\n * Whether to omit a tag of an element.\n */\nexport function omission(handlers) {\n return omit\n\n /**\n * Check if a given node can have a tag omitted.\n *\n * @type {OmitHandle}\n */\n function omit(node, index, parent) {\n return (\n own.call(handlers, node.tagName) &&\n handlers[node.tagName](node, index, parent)\n )\n }\n}\n","/**\n * @import {Element, Parents} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\nimport {siblingAfter} from './util/siblings.js'\nimport {omission} from './omission.js'\n\nexport const closing = omission({\n body,\n caption: headOrColgroupOrCaption,\n colgroup: headOrColgroupOrCaption,\n dd,\n dt,\n head: headOrColgroupOrCaption,\n html,\n li,\n optgroup,\n option,\n p,\n rp: rubyElement,\n rt: rubyElement,\n tbody,\n td: cells,\n tfoot,\n th: cells,\n thead,\n tr\n})\n\n/**\n * Macro for `</head>`, `</colgroup>`, and `</caption>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction headOrColgroupOrCaption(_, index, parent) {\n const next = siblingAfter(parent, index, true)\n return (\n !next ||\n (next.type !== 'comment' &&\n !(next.type === 'text' && whitespace(next.value.charAt(0))))\n )\n}\n\n/**\n * Whether to omit `</html>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction html(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || next.type !== 'comment'\n}\n\n/**\n * Whether to omit `</body>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction body(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || next.type !== 'comment'\n}\n\n/**\n * Whether to omit `</p>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction p(_, index, parent) {\n const next = siblingAfter(parent, index)\n return next\n ? next.type === 'element' &&\n (next.tagName === 'address' ||\n next.tagName === 'article' ||\n next.tagName === 'aside' ||\n next.tagName === 'blockquote' ||\n next.tagName === 'details' ||\n next.tagName === 'div' ||\n next.tagName === 'dl' ||\n next.tagName === 'fieldset' ||\n next.tagName === 'figcaption' ||\n next.tagName === 'figure' ||\n next.tagName === 'footer' ||\n next.tagName === 'form' ||\n next.tagName === 'h1' ||\n next.tagName === 'h2' ||\n next.tagName === 'h3' ||\n next.tagName === 'h4' ||\n next.tagName === 'h5' ||\n next.tagName === 'h6' ||\n next.tagName === 'header' ||\n next.tagName === 'hgroup' ||\n next.tagName === 'hr' ||\n next.tagName === 'main' ||\n next.tagName === 'menu' ||\n next.tagName === 'nav' ||\n next.tagName === 'ol' ||\n next.tagName === 'p' ||\n next.tagName === 'pre' ||\n next.tagName === 'section' ||\n next.tagName === 'table' ||\n next.tagName === 'ul')\n : !parent ||\n // Confusing parent.\n !(\n parent.type === 'element' &&\n (parent.tagName === 'a' ||\n parent.tagName === 'audio' ||\n parent.tagName === 'del' ||\n parent.tagName === 'ins' ||\n parent.tagName === 'map' ||\n parent.tagName === 'noscript' ||\n parent.tagName === 'video')\n )\n}\n\n/**\n * Whether to omit `</li>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction li(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'li')\n}\n\n/**\n * Whether to omit `</dt>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction dt(_, index, parent) {\n const next = siblingAfter(parent, index)\n return Boolean(\n next &&\n next.type === 'element' &&\n (next.tagName === 'dt' || next.tagName === 'dd')\n )\n}\n\n/**\n * Whether to omit `</dd>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction dd(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'dt' || next.tagName === 'dd'))\n )\n}\n\n/**\n * Whether to omit `</rt>` or `</rp>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction rubyElement(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'rp' || next.tagName === 'rt'))\n )\n}\n\n/**\n * Whether to omit `</optgroup>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction optgroup(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'optgroup')\n}\n\n/**\n * Whether to omit `</option>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction option(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'option' || next.tagName === 'optgroup'))\n )\n}\n\n/**\n * Whether to omit `</thead>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction thead(_, index, parent) {\n const next = siblingAfter(parent, index)\n return Boolean(\n next &&\n next.type === 'element' &&\n (next.tagName === 'tbody' || next.tagName === 'tfoot')\n )\n}\n\n/**\n * Whether to omit `</tbody>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tbody(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'tbody' || next.tagName === 'tfoot'))\n )\n}\n\n/**\n * Whether to omit `</tfoot>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tfoot(_, index, parent) {\n return !siblingAfter(parent, index)\n}\n\n/**\n * Whether to omit `</tr>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction tr(_, index, parent) {\n const next = siblingAfter(parent, index)\n return !next || (next.type === 'element' && next.tagName === 'tr')\n}\n\n/**\n * Whether to omit `</td>` or `</th>`.\n *\n * @param {Element} _\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the closing tag can be omitted.\n */\nfunction cells(_, index, parent) {\n const next = siblingAfter(parent, index)\n return (\n !next ||\n (next.type === 'element' &&\n (next.tagName === 'td' || next.tagName === 'th'))\n )\n}\n","/**\n * @import {Element, Parents, Properties} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {ccount} from 'ccount'\nimport {stringify as commas} from 'comma-separated-tokens'\nimport {find, svg} from 'property-information'\nimport {stringify as spaces} from 'space-separated-tokens'\nimport {stringifyEntities} from 'stringify-entities'\nimport {closing} from '../omission/closing.js'\nimport {opening} from '../omission/opening.js'\n\n/**\n * Maps of subsets.\n *\n * Each value is a matrix of tuples.\n * The value at `0` causes parse errors, the value at `1` is valid.\n * Of both, the value at `0` is unsafe, and the value at `1` is safe.\n *\n * @type {Record<'double' | 'name' | 'single' | 'unquoted', Array<[Array<string>, Array<string>]>>}\n */\nconst constants = {\n // See: <https://html.spec.whatwg.org/#attribute-name-state>.\n name: [\n ['\\t\\n\\f\\r &/=>'.split(''), '\\t\\n\\f\\r \"&\\'/=>`'.split('')],\n ['\\0\\t\\n\\f\\r \"&\\'/<=>'.split(''), '\\0\\t\\n\\f\\r \"&\\'/<=>`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(unquoted)-state>.\n unquoted: [\n ['\\t\\n\\f\\r &>'.split(''), '\\0\\t\\n\\f\\r \"&\\'<=>`'.split('')],\n ['\\0\\t\\n\\f\\r \"&\\'<=>`'.split(''), '\\0\\t\\n\\f\\r \"&\\'<=>`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(single-quoted)-state>.\n single: [\n [\"&'\".split(''), '\"&\\'`'.split('')],\n [\"\\0&'\".split(''), '\\0\"&\\'`'.split('')]\n ],\n // See: <https://html.spec.whatwg.org/#attribute-value-(double-quoted)-state>.\n double: [\n ['\"&'.split(''), '\"&\\'`'.split('')],\n ['\\0\"&'.split(''), '\\0\"&\\'`'.split('')]\n ]\n}\n\n/**\n * Serialize an element node.\n *\n * @param {Element} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function element(node, index, parent, state) {\n const schema = state.schema\n const omit = schema.space === 'svg' ? false : state.settings.omitOptionalTags\n let selfClosing =\n schema.space === 'svg'\n ? state.settings.closeEmptyElements\n : state.settings.voids.includes(node.tagName.toLowerCase())\n /** @type {Array<string>} */\n const parts = []\n /** @type {string} */\n let last\n\n if (schema.space === 'html' && node.tagName === 'svg') {\n state.schema = svg\n }\n\n const attributes = serializeAttributes(state, node.properties)\n\n const content = state.all(\n schema.space === 'html' && node.tagName === 'template' ? node.content : node\n )\n\n state.schema = schema\n\n // If the node is categorised as void, but it has children, remove the\n // categorisation.\n // This enables for example `menuitem`s, which are void in W3C HTML but not\n // void in WHATWG HTML, to be stringified properly.\n // Note: `menuitem` has since been removed from the HTML spec, and so is no\n // longer void.\n if (content) selfClosing = false\n\n if (attributes || !omit || !opening(node, index, parent)) {\n parts.push('<', node.tagName, attributes ? ' ' + attributes : '')\n\n if (\n selfClosing &&\n (schema.space === 'svg' || state.settings.closeSelfClosing)\n ) {\n last = attributes.charAt(attributes.length - 1)\n if (\n !state.settings.tightSelfClosing ||\n last === '/' ||\n (last && last !== '\"' && last !== \"'\")\n ) {\n parts.push(' ')\n }\n\n parts.push('/')\n }\n\n parts.push('>')\n }\n\n parts.push(content)\n\n if (!selfClosing && (!omit || !closing(node, index, parent))) {\n parts.push('</' + node.tagName + '>')\n }\n\n return parts.join('')\n}\n\n/**\n * @param {State} state\n * @param {Properties | null | undefined} properties\n * @returns {string}\n */\nfunction serializeAttributes(state, properties) {\n /** @type {Array<string>} */\n const values = []\n let index = -1\n /** @type {string} */\n let key\n\n if (properties) {\n for (key in properties) {\n if (properties[key] !== null && properties[key] !== undefined) {\n const value = serializeAttribute(state, key, properties[key])\n if (value) values.push(value)\n }\n }\n }\n\n while (++index < values.length) {\n const last = state.settings.tightAttributes\n ? values[index].charAt(values[index].length - 1)\n : undefined\n\n // In tight mode, don’t add a space after quoted attributes.\n if (index !== values.length - 1 && last !== '\"' && last !== \"'\") {\n values[index] += ' '\n }\n }\n\n return values.join('')\n}\n\n/**\n * @param {State} state\n * @param {string} key\n * @param {Properties[keyof Properties]} value\n * @returns {string}\n */\nfunction serializeAttribute(state, key, value) {\n const info = find(state.schema, key)\n const x =\n state.settings.allowParseErrors && state.schema.space === 'html' ? 0 : 1\n const y = state.settings.allowDangerousCharacters ? 0 : 1\n let quote = state.quote\n /** @type {string | undefined} */\n let result\n\n if (info.overloadedBoolean && (value === info.attribute || value === '')) {\n value = true\n } else if (\n info.boolean ||\n (info.overloadedBoolean && typeof value !== 'string')\n ) {\n value = Boolean(value)\n }\n\n if (\n value === null ||\n value === undefined ||\n value === false ||\n (typeof value === 'number' && Number.isNaN(value))\n ) {\n return ''\n }\n\n const name = stringifyEntities(\n info.attribute,\n Object.assign({}, state.settings.characterReferences, {\n // Always encode without parse errors in non-HTML.\n subset: constants.name[x][y]\n })\n )\n\n // No value.\n // There is currently only one boolean property in SVG: `[download]` on\n // `<a>`.\n // This property does not seem to work in browsers (Firefox, Safari, Chrome),\n // so I can’t test if dropping the value works.\n // But I assume that it should:\n //\n // ```html\n // <!doctype html>\n // <svg viewBox=\"0 0 100 100\">\n // <a href=https://example.com download>\n // <circle cx=50 cy=40 r=35 />\n // </a>\n // </svg>\n // ```\n //\n // See: <https://github.com/wooorm/property-information/blob/main/lib/svg.js>\n if (value === true) return name\n\n // `spaces` doesn’t accept a second argument, but it’s given here just to\n // keep the code cleaner.\n value = Array.isArray(value)\n ? (info.commaSeparated ? commas : spaces)(value, {\n padLeft: !state.settings.tightCommaSeparatedLists\n })\n : String(value)\n\n if (state.settings.collapseEmptyAttributes && !value) return name\n\n // Check unquoted value.\n if (state.settings.preferUnquoted) {\n result = stringifyEntities(\n value,\n Object.assign({}, state.settings.characterReferences, {\n attribute: true,\n subset: constants.unquoted[x][y]\n })\n )\n }\n\n // If we don’t want unquoted, or if `value` contains character references when\n // unquoted…\n if (result !== value) {\n // If the alternative is less common than `quote`, switch.\n if (\n state.settings.quoteSmart &&\n ccount(value, quote) > ccount(value, state.alternative)\n ) {\n quote = state.alternative\n }\n\n result =\n quote +\n stringifyEntities(\n value,\n Object.assign({}, state.settings.characterReferences, {\n // Always encode without parse errors in non-HTML.\n subset: (quote === \"'\" ? constants.single : constants.double)[x][y],\n attribute: true\n })\n ) +\n quote\n }\n\n // Don’t add a `=` for unquoted empties.\n return name + (result ? '=' + result : result)\n}\n","/**\n * @import {Parents, Text} from 'hast'\n * @import {Raw} from 'mdast-util-to-hast'\n * @import {State} from '../index.js'\n */\n\nimport {stringifyEntities} from 'stringify-entities'\n\n// Declare array as variable so it can be cached by `stringifyEntities`\nconst textEntitySubset = ['<', '&']\n\n/**\n * Serialize a text node.\n *\n * @param {Raw | Text} node\n * Node to handle.\n * @param {number | undefined} _\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function text(node, _, parent, state) {\n // Check if content of `node` should be escaped.\n return parent &&\n parent.type === 'element' &&\n (parent.tagName === 'script' || parent.tagName === 'style')\n ? node.value\n : stringifyEntities(\n node.value,\n Object.assign({}, state.settings.characterReferences, {\n subset: textEntitySubset\n })\n )\n}\n","/**\n * @import {Nodes, Parents, RootContent} from 'hast'\n * @import {Schema} from 'property-information'\n * @import {Options as StringifyEntitiesOptions} from 'stringify-entities'\n */\n\n/**\n * @typedef {Omit<StringifyEntitiesOptions, 'attribute' | 'escapeOnly' | 'subset'>} CharacterReferences\n *\n * @typedef Options\n * Configuration.\n * @property {boolean | null | undefined} [allowDangerousCharacters=false]\n * Do not encode some characters which cause XSS vulnerabilities in older\n * browsers (default: `false`).\n *\n * > ⚠️ **Danger**: only set this if you completely trust the content.\n * @property {boolean | null | undefined} [allowDangerousHtml=false]\n * Allow `raw` nodes and insert them as raw HTML (default: `false`).\n *\n * When `false`, `Raw` nodes are encoded.\n *\n * > ⚠️ **Danger**: only set this if you completely trust the content.\n * @property {boolean | null | undefined} [allowParseErrors=false]\n * Do not encode characters which cause parse errors (even though they work),\n * to save bytes (default: `false`).\n *\n * Not used in the SVG space.\n *\n * > 👉 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn’t pretty).\n * @property {boolean | null | undefined} [bogusComments=false]\n * Use “bogus comments” instead of comments to save byes: `<?charlie>`\n * instead of `<!--charlie-->` (default: `false`).\n *\n * > 👉 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn’t pretty).\n * @property {CharacterReferences | null | undefined} [characterReferences]\n * Configure how to serialize character references (optional).\n * @property {boolean | null | undefined} [closeEmptyElements=false]\n * Close SVG elements without any content with slash (`/`) on the opening tag\n * instead of an end tag: `<circle />` instead of `<circle></circle>`\n * (default: `false`).\n *\n * See `tightSelfClosing` to control whether a space is used before the\n * slash.\n *\n * Not used in the HTML space.\n * @property {boolean | null | undefined} [closeSelfClosing=false]\n * Close self-closing nodes with an extra slash (`/`): `<img />` instead of\n * `<img>` (default: `false`).\n *\n * See `tightSelfClosing` to control whether a space is used before the\n * slash.\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [collapseEmptyAttributes=false]\n * Collapse empty attributes: get `class` instead of `class=\"\"` (default:\n * `false`).\n *\n * Not used in the SVG space.\n *\n * > 👉 **Note**: boolean attributes (such as `hidden`) are always collapsed.\n * @property {boolean | null | undefined} [omitOptionalTags=false]\n * Omit optional opening and closing tags (default: `false`).\n *\n * For example, in `<ol><li>one</li><li>two</li></ol>`, both `</li>` closing\n * tags can be omitted.\n * The first because it’s followed by another `li`, the last because it’s\n * followed by nothing.\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [preferUnquoted=false]\n * Leave attributes unquoted if that results in less bytes (default: `false`).\n *\n * Not used in the SVG space.\n * @property {boolean | null | undefined} [quoteSmart=false]\n * Use the other quote if that results in less bytes (default: `false`).\n * @property {Quote | null | undefined} [quote='\"']\n * Preferred quote to use (default: `'\"'`).\n * @property {Space | null | undefined} [space='html']\n * When an `<svg>` element is found in the HTML space, this package already\n * automatically switches to and from the SVG space when entering and exiting\n * it (default: `'html'`).\n *\n * > 👉 **Note**: hast is not XML.\n * > It supports SVG as embedded in HTML.\n * > It does not support the features available in XML.\n * > Passing SVG might break but fragments of modern SVG should be fine.\n * > Use [`xast`][xast] if you need to support SVG as XML.\n * @property {boolean | null | undefined} [tightAttributes=false]\n * Join attributes together, without whitespace, if possible: get\n * `class=\"a b\"title=\"c d\"` instead of `class=\"a b\" title=\"c d\"` to save\n * bytes (default: `false`).\n *\n * Not used in the SVG space.\n *\n * > 👉 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn’t pretty).\n * @property {boolean | null | undefined} [tightCommaSeparatedLists=false]\n * Join known comma-separated attribute values with just a comma (`,`),\n * instead of padding them on the right as well (`,␠`, where `␠` represents a\n * space) (default: `false`).\n * @property {boolean | null | undefined} [tightDoctype=false]\n * Drop unneeded spaces in doctypes: `<!doctypehtml>` instead of\n * `<!doctype html>` to save bytes (default: `false`).\n *\n * > 👉 **Note**: intentionally creates parse errors in markup (how parse\n * > errors are handled is well defined, so this works but isn’t pretty).\n * @property {boolean | null | undefined} [tightSelfClosing=false]\n * Do not use an extra space when closing self-closing elements: `<img/>`\n * instead of `<img />` (default: `false`).\n *\n * > 👉 **Note**: only used if `closeSelfClosing: true` or\n * > `closeEmptyElements: true`.\n * @property {boolean | null | undefined} [upperDoctype=false]\n * Use a `<!DOCTYPE…` instead of `<!doctype…` (default: `false`).\n *\n * Useless except for XHTML.\n * @property {ReadonlyArray<string> | null | undefined} [voids]\n * Tag names of elements to serialize without closing tag (default: `html-void-elements`).\n *\n * Not used in the SVG space.\n *\n * > 👉 **Note**: It’s highly unlikely that you want to pass this, because\n * > hast is not for XML, and HTML will not add more void elements.\n *\n * @typedef {'\"' | \"'\"} Quote\n * HTML quotes for attribute values.\n *\n * @typedef {Omit<Required<{[key in keyof Options]: Exclude<Options[key], null | undefined>}>, 'space' | 'quote'>} Settings\n *\n * @typedef {'html' | 'svg'} Space\n * Namespace.\n *\n * @typedef State\n * Info passed around about the current state.\n * @property {(node: Parents | undefined) => string} all\n * Serialize the children of a parent node.\n * @property {Quote} alternative\n * Alternative quote.\n * @property {(node: Nodes, index: number | undefined, parent: Parents | undefined) => string} one\n * Serialize one node.\n * @property {Quote} quote\n * Preferred quote.\n * @property {Schema} schema\n * Current schema.\n * @property {Settings} settings\n * User configuration.\n */\n\nimport {htmlVoidElements} from 'html-void-elements'\nimport {html, svg} from 'property-information'\nimport {handle} from './handle/index.js'\n\n/** @type {Options} */\nconst emptyOptions = {}\n\n/** @type {CharacterReferences} */\nconst emptyCharacterReferences = {}\n\n/** @type {Array<never>} */\nconst emptyChildren = []\n\n/**\n * Serialize hast as HTML.\n *\n * @param {Array<RootContent> | Nodes} tree\n * Tree to serialize.\n * @param {Options | null | undefined} [options]\n * Configuration (optional).\n * @returns {string}\n * Serialized HTML.\n */\nexport function toHtml(tree, options) {\n const options_ = options || emptyOptions\n const quote = options_.quote || '\"'\n const alternative = quote === '\"' ? \"'\" : '\"'\n\n if (quote !== '\"' && quote !== \"'\") {\n throw new Error('Invalid quote `' + quote + '`, expected `\\'` or `\"`')\n }\n\n /** @type {State} */\n const state = {\n one,\n all,\n settings: {\n omitOptionalTags: options_.omitOptionalTags || false,\n allowParseErrors: options_.allowParseErrors || false,\n allowDangerousCharacters: options_.allowDangerousCharacters || false,\n quoteSmart: options_.quoteSmart || false,\n preferUnquoted: options_.preferUnquoted || false,\n tightAttributes: options_.tightAttributes || false,\n upperDoctype: options_.upperDoctype || false,\n tightDoctype: options_.tightDoctype || false,\n bogusComments: options_.bogusComments || false,\n tightCommaSeparatedLists: options_.tightCommaSeparatedLists || false,\n tightSelfClosing: options_.tightSelfClosing || false,\n collapseEmptyAttributes: options_.collapseEmptyAttributes || false,\n allowDangerousHtml: options_.allowDangerousHtml || false,\n voids: options_.voids || htmlVoidElements,\n characterReferences:\n options_.characterReferences || emptyCharacterReferences,\n closeSelfClosing: options_.closeSelfClosing || false,\n closeEmptyElements: options_.closeEmptyElements || false\n },\n schema: options_.space === 'svg' ? svg : html,\n quote,\n alternative\n }\n\n return state.one(\n Array.isArray(tree) ? {type: 'root', children: tree} : tree,\n undefined,\n undefined\n )\n}\n\n/**\n * Serialize a node.\n *\n * @this {State}\n * Info passed around about the current state.\n * @param {Nodes} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @returns {string}\n * Serialized node.\n */\nfunction one(node, index, parent) {\n return handle(node, index, parent, this)\n}\n\n/**\n * Serialize all children of `parent`.\n *\n * @this {State}\n * Info passed around about the current state.\n * @param {Parents | undefined} parent\n * Parent whose children to serialize.\n * @returns {string}\n */\nexport function all(parent) {\n /** @type {Array<string>} */\n const results = []\n const children = (parent && parent.children) || emptyChildren\n let index = -1\n\n while (++index < children.length) {\n results[index] = this.one(children[index], index, parent)\n }\n\n return results.join('')\n}\n","import { ShikiError as ShikiError$1 } from '@shikijs/types';\nexport * from '@shikijs/types';\nimport { createOnigurumaEngine as createOnigurumaEngine$1, loadWasm as loadWasm$1, getDefaultWasmLoader } from '@shikijs/engine-oniguruma';\nimport { w as warnDeprecated } from './shared/core.afb6276c.mjs';\nexport { e as enableDeprecationWarnings } from './shared/core.afb6276c.mjs';\nimport { FontStyle, INITIAL, EncodedTokenMetadata, Registry as Registry$1, Theme } from '@shikijs/vscode-textmate';\nexport { FontStyle, EncodedTokenMetadata as StackElementMetadata } from '@shikijs/vscode-textmate';\nimport { toHtml } from 'hast-util-to-html';\nexport { toHtml as hastToHtml } from 'hast-util-to-html';\nimport { createJavaScriptRegexEngine as createJavaScriptRegexEngine$1, defaultJavaScriptRegexConstructor as defaultJavaScriptRegexConstructor$1 } from '@shikijs/engine-javascript';\n\nfunction createOnigurumaEngine(options) {\n warnDeprecated(\"import `createOnigurumaEngine` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return createOnigurumaEngine$1(options);\n}\nfunction createWasmOnigEngine(options) {\n warnDeprecated(\"import `createOnigurumaEngine` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return createOnigurumaEngine$1(options);\n}\nfunction loadWasm(options) {\n warnDeprecated(\"import `loadWasm` from `@shikijs/engine-oniguruma` or `shiki/engine/oniguruma` instead\");\n return loadWasm$1(options);\n}\n\nfunction toArray(x) {\n return Array.isArray(x) ? x : [x];\n}\nfunction splitLines(code, preserveEnding = false) {\n const parts = code.split(/(\\r?\\n)/g);\n let index = 0;\n const lines = [];\n for (let i = 0; i < parts.length; i += 2) {\n const line = preserveEnding ? parts[i] + (parts[i + 1] || \"\") : parts[i];\n lines.push([line, index]);\n index += parts[i].length;\n index += parts[i + 1]?.length || 0;\n }\n return lines;\n}\nfunction isPlainLang(lang) {\n return !lang || [\"plaintext\", \"txt\", \"text\", \"plain\"].includes(lang);\n}\nfunction isSpecialLang(lang) {\n return lang === \"ansi\" || isPlainLang(lang);\n}\nfunction isNoneTheme(theme) {\n return theme === \"none\";\n}\nfunction isSpecialTheme(theme) {\n return isNoneTheme(theme);\n}\nfunction addClassToHast(node, className) {\n var _a;\n if (!className)\n return node;\n node.properties || (node.properties = {});\n (_a = node.properties).class || (_a.class = []);\n if (typeof node.properties.class === \"string\")\n node.properties.class = node.properties.class.split(/\\s+/g);\n if (!Array.isArray(node.properties.class))\n node.properties.class = [];\n const targets = Array.isArray(className) ? className : className.split(/\\s+/g);\n for (const c of targets) {\n if (c && !node.properties.class.includes(c))\n node.properties.class.push(c);\n }\n return node;\n}\nfunction splitToken(token, offsets) {\n let lastOffset = 0;\n const tokens = [];\n for (const offset of offsets) {\n if (offset > lastOffset) {\n tokens.push({\n ...token,\n content: token.content.slice(lastOffset, offset),\n offset: token.offset + lastOffset\n });\n }\n lastOffset = offset;\n }\n if (lastOffset < token.content.length) {\n tokens.push({\n ...token,\n content: token.content.slice(lastOffset),\n offset: token.offset + lastOffset\n });\n }\n return tokens;\n}\nfunction splitTokens(tokens, breakpoints) {\n const sorted = Array.from(breakpoints instanceof Set ? breakpoints : new Set(breakpoints)).sort((a, b) => a - b);\n if (!sorted.length)\n return tokens;\n return tokens.map((line) => {\n return line.flatMap((token) => {\n const breakpointsInToken = sorted.filter((i) => token.offset < i && i < token.offset + token.content.length).map((i) => i - token.offset).sort((a, b) => a - b);\n if (!breakpointsInToken.length)\n return token;\n return splitToken(token, breakpointsInToken);\n });\n });\n}\nasync function normalizeGetter(p) {\n return Promise.resolve(typeof p === \"function\" ? p() : p).then((r) => r.default || r);\n}\nfunction resolveColorReplacements(theme, options) {\n const replacements = typeof theme === \"string\" ? {} : { ...theme.colorReplacements };\n const themeName = typeof theme === \"string\" ? theme : theme.name;\n for (const [key, value] of Object.entries(options?.colorReplacements || {})) {\n if (typeof value === \"string\")\n replacements[key] = value;\n else if (key === themeName)\n Object.assign(replacements, value);\n }\n return replacements;\n}\nfunction applyColorReplacements(color, replacements) {\n if (!color)\n return color;\n return replacements?.[color?.toLowerCase()] || color;\n}\nfunction getTokenStyleObject(token) {\n const styles = {};\n if (token.color)\n styles.color = token.color;\n if (token.bgColor)\n styles[\"background-color\"] = token.bgColor;\n if (token.fontStyle) {\n if (token.fontStyle & FontStyle.Italic)\n styles[\"font-style\"] = \"italic\";\n if (token.fontStyle & FontStyle.Bold)\n styles[\"font-weight\"] = \"bold\";\n if (token.fontStyle & FontStyle.Underline)\n styles[\"text-decoration\"] = \"underline\";\n }\n return styles;\n}\nfunction stringifyTokenStyle(token) {\n if (typeof token === \"string\")\n return token;\n return Object.entries(token).map(([key, value]) => `${key}:${value}`).join(\";\");\n}\nfunction createPositionConverter(code) {\n const lines = splitLines(code, true).map(([line]) => line);\n function indexToPos(index) {\n if (index === code.length) {\n return {\n line: lines.length - 1,\n character: lines[lines.length - 1].length\n };\n }\n let character = index;\n let line = 0;\n for (const lineText of lines) {\n if (character < lineText.length)\n break;\n character -= lineText.length;\n line++;\n }\n return { line, character };\n }\n function posToIndex(line, character) {\n let index = 0;\n for (let i = 0; i < line; i++)\n index += lines[i].length;\n index += character;\n return index;\n }\n return {\n lines,\n indexToPos,\n posToIndex\n };\n}\n\nclass ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nvar __defProp$2 = Object.defineProperty;\nvar __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField$2 = (obj, key, value) => {\n __defNormalProp$2(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nconst _grammarStateMap = /* @__PURE__ */ new WeakMap();\nfunction setLastGrammarStateToMap(keys, state) {\n _grammarStateMap.set(keys, state);\n}\nfunction getLastGrammarStateFromMap(keys) {\n return _grammarStateMap.get(keys);\n}\nclass GrammarState {\n constructor(...args) {\n /**\n * Theme to Stack mapping\n */\n __publicField$2(this, \"_stacks\", {});\n __publicField$2(this, \"lang\");\n if (args.length === 2) {\n const [stacksMap, lang] = args;\n this.lang = lang;\n this._stacks = stacksMap;\n } else {\n const [stack, lang, theme] = args;\n this.lang = lang;\n this._stacks = { [theme]: stack };\n }\n }\n get themes() {\n return Object.keys(this._stacks);\n }\n get theme() {\n return this.themes[0];\n }\n get _stack() {\n return this._stacks[this.theme];\n }\n /**\n * Static method to create a initial grammar state.\n */\n static initial(lang, themes) {\n return new GrammarState(\n Object.fromEntries(toArray(themes).map((theme) => [theme, INITIAL])),\n lang\n );\n }\n /**\n * Get the internal stack object.\n * @internal\n */\n getInternalStack(theme = this.theme) {\n return this._stacks[theme];\n }\n /**\n * @deprecated use `getScopes` instead\n */\n get scopes() {\n return getScopes(this._stacks[this.theme]);\n }\n getScopes(theme = this.theme) {\n return getScopes(this._stacks[theme]);\n }\n toJSON() {\n return {\n lang: this.lang,\n theme: this.theme,\n themes: this.themes,\n scopes: this.scopes\n };\n }\n}\nfunction getScopes(stack) {\n const scopes = [];\n const visited = /* @__PURE__ */ new Set();\n function pushScope(stack2) {\n if (visited.has(stack2))\n return;\n visited.add(stack2);\n const name = stack2?.nameScopesList?.scopeName;\n if (name)\n scopes.push(name);\n if (stack2.parent)\n pushScope(stack2.parent);\n }\n pushScope(stack);\n return scopes;\n}\nfunction getGrammarStack(state, theme) {\n if (!(state instanceof GrammarState))\n throw new ShikiError(\"Invalid grammar state\");\n return state.getInternalStack(theme);\n}\n\nfunction transformerDecorations() {\n const map = /* @__PURE__ */ new WeakMap();\n function getContext(shiki) {\n if (!map.has(shiki.meta)) {\n let normalizePosition = function(p) {\n if (typeof p === \"number\") {\n if (p < 0 || p > shiki.source.length)\n throw new ShikiError(`Invalid decoration offset: ${p}. Code length: ${shiki.source.length}`);\n return {\n ...converter.indexToPos(p),\n offset: p\n };\n } else {\n const line = converter.lines[p.line];\n if (line === void 0)\n throw new ShikiError(`Invalid decoration position ${JSON.stringify(p)}. Lines length: ${converter.lines.length}`);\n if (p.character < 0 || p.character > line.length)\n throw new ShikiError(`Invalid decoration position ${JSON.stringify(p)}. Line ${p.line} length: ${line.length}`);\n return {\n ...p,\n offset: converter.posToIndex(p.line, p.character)\n };\n }\n };\n const converter = createPositionConverter(shiki.source);\n const decorations = (shiki.options.decorations || []).map((d) => ({\n ...d,\n start: normalizePosition(d.start),\n end: normalizePosition(d.end)\n }));\n verifyIntersections(decorations);\n map.set(shiki.meta, {\n decorations,\n converter,\n source: shiki.source\n });\n }\n return map.get(shiki.meta);\n }\n return {\n name: \"shiki:decorations\",\n tokens(tokens) {\n if (!this.options.decorations?.length)\n return;\n const ctx = getContext(this);\n const breakpoints = ctx.decorations.flatMap((d) => [d.start.offset, d.end.offset]);\n const splitted = splitTokens(tokens, breakpoints);\n return splitted;\n },\n code(codeEl) {\n if (!this.options.decorations?.length)\n return;\n const ctx = getContext(this);\n const lines = Array.from(codeEl.children).filter((i) => i.type === \"element\" && i.tagName === \"span\");\n if (lines.length !== ctx.converter.lines.length)\n throw new ShikiError(`Number of lines in code element (${lines.length}) does not match the number of lines in the source (${ctx.converter.lines.length}). Failed to apply decorations.`);\n function applyLineSection(line, start, end, decoration) {\n const lineEl = lines[line];\n let text = \"\";\n let startIndex = -1;\n let endIndex = -1;\n if (start === 0)\n startIndex = 0;\n if (end === 0)\n endIndex = 0;\n if (end === Number.POSITIVE_INFINITY)\n endIndex = lineEl.children.length;\n if (startIndex === -1 || endIndex === -1) {\n for (let i = 0; i < lineEl.children.length; i++) {\n text += stringify(lineEl.children[i]);\n if (startIndex === -1 && text.length === start)\n startIndex = i + 1;\n if (endIndex === -1 && text.length === end)\n endIndex = i + 1;\n }\n }\n if (startIndex === -1)\n throw new ShikiError(`Failed to find start index for decoration ${JSON.stringify(decoration.start)}`);\n if (endIndex === -1)\n throw new ShikiError(`Failed to find end index for decoration ${JSON.stringify(decoration.end)}`);\n const children = lineEl.children.slice(startIndex, endIndex);\n if (!decoration.alwaysWrap && children.length === lineEl.children.length) {\n applyDecoration(lineEl, decoration, \"line\");\n } else if (!decoration.alwaysWrap && children.length === 1 && children[0].type === \"element\") {\n applyDecoration(children[0], decoration, \"token\");\n } else {\n const wrapper = {\n type: \"element\",\n tagName: \"span\",\n properties: {},\n children\n };\n applyDecoration(wrapper, decoration, \"wrapper\");\n lineEl.children.splice(startIndex, children.length, wrapper);\n }\n }\n function applyLine(line, decoration) {\n lines[line] = applyDecoration(lines[line], decoration, \"line\");\n }\n function applyDecoration(el, decoration, type) {\n const properties = decoration.properties || {};\n const transform = decoration.transform || ((i) => i);\n el.tagName = decoration.tagName || \"span\";\n el.properties = {\n ...el.properties,\n ...properties,\n class: el.properties.class\n };\n if (decoration.properties?.class)\n addClassToHast(el, decoration.properties.class);\n el = transform(el, type) || el;\n return el;\n }\n const lineApplies = [];\n const sorted = ctx.decorations.sort((a, b) => b.start.offset - a.start.offset);\n for (const decoration of sorted) {\n const { start, end } = decoration;\n if (start.line === end.line) {\n applyLineSection(start.line, start.character, end.character, decoration);\n } else if (start.line < end.line) {\n applyLineSection(start.line, start.character, Number.POSITIVE_INFINITY, decoration);\n for (let i = start.line + 1; i < end.line; i++)\n lineApplies.unshift(() => applyLine(i, decoration));\n applyLineSection(end.line, 0, end.character, decoration);\n }\n }\n lineApplies.forEach((i) => i());\n }\n };\n}\nfunction verifyIntersections(items) {\n for (let i = 0; i < items.length; i++) {\n const foo = items[i];\n if (foo.start.offset > foo.end.offset)\n throw new ShikiError(`Invalid decoration range: ${JSON.stringify(foo.start)} - ${JSON.stringify(foo.end)}`);\n for (let j = i + 1; j < items.length; j++) {\n const bar = items[j];\n const isFooHasBarStart = foo.start.offset < bar.start.offset && bar.start.offset < foo.end.offset;\n const isFooHasBarEnd = foo.start.offset < bar.end.offset && bar.end.offset < foo.end.offset;\n const isBarHasFooStart = bar.start.offset < foo.start.offset && foo.start.offset < bar.end.offset;\n const isBarHasFooEnd = bar.start.offset < foo.end.offset && foo.end.offset < bar.end.offset;\n if (isFooHasBarStart || isFooHasBarEnd || isBarHasFooStart || isBarHasFooEnd) {\n if (isFooHasBarEnd && isFooHasBarEnd)\n continue;\n if (isBarHasFooStart && isBarHasFooEnd)\n continue;\n throw new ShikiError(`Decorations ${JSON.stringify(foo.start)} and ${JSON.stringify(bar.start)} intersect.`);\n }\n }\n }\n}\nfunction stringify(el) {\n if (el.type === \"text\")\n return el.value;\n if (el.type === \"element\")\n return el.children.map(stringify).join(\"\");\n return \"\";\n}\n\nconst builtInTransformers = [\n /* @__PURE__ */ transformerDecorations()\n];\nfunction getTransformers(options) {\n return [\n ...options.transformers || [],\n ...builtInTransformers\n ];\n}\n\n// src/colors.ts\nvar namedColors = [\n \"black\",\n \"red\",\n \"green\",\n \"yellow\",\n \"blue\",\n \"magenta\",\n \"cyan\",\n \"white\",\n \"brightBlack\",\n \"brightRed\",\n \"brightGreen\",\n \"brightYellow\",\n \"brightBlue\",\n \"brightMagenta\",\n \"brightCyan\",\n \"brightWhite\"\n];\n\n// src/decorations.ts\nvar decorations = {\n 1: \"bold\",\n 2: \"dim\",\n 3: \"italic\",\n 4: \"underline\",\n 7: \"reverse\",\n 9: \"strikethrough\"\n};\n\n// src/parser.ts\nfunction findSequence(value, position) {\n const nextEscape = value.indexOf(\"\\x1B[\", position);\n if (nextEscape !== -1) {\n const nextClose = value.indexOf(\"m\", nextEscape);\n return {\n sequence: value.substring(nextEscape + 2, nextClose).split(\";\"),\n startPosition: nextEscape,\n position: nextClose + 1\n };\n }\n return {\n position: value.length\n };\n}\nfunction parseColor(sequence, index) {\n let offset = 1;\n const colorMode = sequence[index + offset++];\n let color;\n if (colorMode === \"2\") {\n const rgb = [\n sequence[index + offset++],\n sequence[index + offset++],\n sequence[index + offset]\n ].map((x) => Number.parseInt(x));\n if (rgb.length === 3 && !rgb.some((x) => Number.isNaN(x))) {\n color = {\n type: \"rgb\",\n rgb\n };\n }\n } else if (colorMode === \"5\") {\n const colorIndex = Number.parseInt(sequence[index + offset]);\n if (!Number.isNaN(colorIndex)) {\n color = { type: \"table\", index: Number(colorIndex) };\n }\n }\n return [offset, color];\n}\nfunction parseSequence(sequence) {\n const commands = [];\n for (let i = 0; i < sequence.length; i++) {\n const code = sequence[i];\n const codeInt = Number.parseInt(code);\n if (Number.isNaN(codeInt))\n continue;\n if (codeInt === 0) {\n commands.push({ type: \"resetAll\" });\n } else if (codeInt <= 9) {\n const decoration = decorations[codeInt];\n if (decoration) {\n commands.push({\n type: \"setDecoration\",\n value: decorations[codeInt]\n });\n }\n } else if (codeInt <= 29) {\n const decoration = decorations[codeInt - 20];\n if (decoration) {\n commands.push({\n type: \"resetDecoration\",\n value: decoration\n });\n }\n } else if (codeInt <= 37) {\n commands.push({\n type: \"setForegroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 30] }\n });\n } else if (codeInt === 38) {\n const [offset, color] = parseColor(sequence, i);\n if (color) {\n commands.push({\n type: \"setForegroundColor\",\n value: color\n });\n }\n i += offset;\n } else if (codeInt === 39) {\n commands.push({\n type: \"resetForegroundColor\"\n });\n } else if (codeInt <= 47) {\n commands.push({\n type: \"setBackgroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 40] }\n });\n } else if (codeInt === 48) {\n const [offset, color] = parseColor(sequence, i);\n if (color) {\n commands.push({\n type: \"setBackgroundColor\",\n value: color\n });\n }\n i += offset;\n } else if (codeInt === 49) {\n commands.push({\n type: \"resetBackgroundColor\"\n });\n } else if (codeInt >= 90 && codeInt <= 97) {\n commands.push({\n type: \"setForegroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 90 + 8] }\n });\n } else if (codeInt >= 100 && codeInt <= 107) {\n commands.push({\n type: \"setBackgroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 100 + 8] }\n });\n }\n }\n return commands;\n}\nfunction createAnsiSequenceParser() {\n let foreground = null;\n let background = null;\n let decorations2 = /* @__PURE__ */ new Set();\n return {\n parse(value) {\n const tokens = [];\n let position = 0;\n do {\n const findResult = findSequence(value, position);\n const text = findResult.sequence ? value.substring(position, findResult.startPosition) : value.substring(position);\n if (text.length > 0) {\n tokens.push({\n value: text,\n foreground,\n background,\n decorations: new Set(decorations2)\n });\n }\n if (findResult.sequence) {\n const commands = parseSequence(findResult.sequence);\n for (const styleToken of commands) {\n if (styleToken.type === \"resetAll\") {\n foreground = null;\n background = null;\n decorations2.clear();\n } else if (styleToken.type === \"resetForegroundColor\") {\n foreground = null;\n } else if (styleToken.type === \"resetBackgroundColor\") {\n background = null;\n } else if (styleToken.type === \"resetDecoration\") {\n decorations2.delete(styleToken.value);\n }\n }\n for (const styleToken of commands) {\n if (styleToken.type === \"setForegroundColor\") {\n foreground = styleToken.value;\n } else if (styleToken.type === \"setBackgroundColor\") {\n background = styleToken.value;\n } else if (styleToken.type === \"setDecoration\") {\n decorations2.add(styleToken.value);\n }\n }\n }\n position = findResult.position;\n } while (position < value.length);\n return tokens;\n }\n };\n}\n\n// src/palette.ts\nvar defaultNamedColorsMap = {\n black: \"#000000\",\n red: \"#bb0000\",\n green: \"#00bb00\",\n yellow: \"#bbbb00\",\n blue: \"#0000bb\",\n magenta: \"#ff00ff\",\n cyan: \"#00bbbb\",\n white: \"#eeeeee\",\n brightBlack: \"#555555\",\n brightRed: \"#ff5555\",\n brightGreen: \"#00ff00\",\n brightYellow: \"#ffff55\",\n brightBlue: \"#5555ff\",\n brightMagenta: \"#ff55ff\",\n brightCyan: \"#55ffff\",\n brightWhite: \"#ffffff\"\n};\nfunction createColorPalette(namedColorsMap = defaultNamedColorsMap) {\n function namedColor(name) {\n return namedColorsMap[name];\n }\n function rgbColor(rgb) {\n return `#${rgb.map((x) => Math.max(0, Math.min(x, 255)).toString(16).padStart(2, \"0\")).join(\"\")}`;\n }\n let colorTable;\n function getColorTable() {\n if (colorTable) {\n return colorTable;\n }\n colorTable = [];\n for (let i = 0; i < namedColors.length; i++) {\n colorTable.push(namedColor(namedColors[i]));\n }\n let levels = [0, 95, 135, 175, 215, 255];\n for (let r = 0; r < 6; r++) {\n for (let g = 0; g < 6; g++) {\n for (let b = 0; b < 6; b++) {\n colorTable.push(rgbColor([levels[r], levels[g], levels[b]]));\n }\n }\n }\n let level = 8;\n for (let i = 0; i < 24; i++, level += 10) {\n colorTable.push(rgbColor([level, level, level]));\n }\n return colorTable;\n }\n function tableColor(index) {\n return getColorTable()[index];\n }\n function value(color) {\n switch (color.type) {\n case \"named\":\n return namedColor(color.name);\n case \"rgb\":\n return rgbColor(color.rgb);\n case \"table\":\n return tableColor(color.index);\n }\n }\n return {\n value\n };\n}\n\nfunction tokenizeAnsiWithTheme(theme, fileContents, options) {\n const colorReplacements = resolveColorReplacements(theme, options);\n const lines = splitLines(fileContents);\n const colorPalette = createColorPalette(\n Object.fromEntries(\n namedColors.map((name) => [\n name,\n theme.colors?.[`terminal.ansi${name[0].toUpperCase()}${name.substring(1)}`]\n ])\n )\n );\n const parser = createAnsiSequenceParser();\n return lines.map(\n (line) => parser.parse(line[0]).map((token) => {\n let color;\n let bgColor;\n if (token.decorations.has(\"reverse\")) {\n color = token.background ? colorPalette.value(token.background) : theme.bg;\n bgColor = token.foreground ? colorPalette.value(token.foreground) : theme.fg;\n } else {\n color = token.foreground ? colorPalette.value(token.foreground) : theme.fg;\n bgColor = token.background ? colorPalette.value(token.background) : void 0;\n }\n color = applyColorReplacements(color, colorReplacements);\n bgColor = applyColorReplacements(bgColor, colorReplacements);\n if (token.decorations.has(\"dim\"))\n color = dimColor(color);\n let fontStyle = FontStyle.None;\n if (token.decorations.has(\"bold\"))\n fontStyle |= FontStyle.Bold;\n if (token.decorations.has(\"italic\"))\n fontStyle |= FontStyle.Italic;\n if (token.decorations.has(\"underline\"))\n fontStyle |= FontStyle.Underline;\n return {\n content: token.value,\n offset: line[1],\n // TODO: more accurate offset? might need to fork ansi-sequence-parser\n color,\n bgColor,\n fontStyle\n };\n })\n );\n}\nfunction dimColor(color) {\n const hexMatch = color.match(/#([0-9a-f]{3})([0-9a-f]{3})?([0-9a-f]{2})?/);\n if (hexMatch) {\n if (hexMatch[3]) {\n const alpha = Math.round(Number.parseInt(hexMatch[3], 16) / 2).toString(16).padStart(2, \"0\");\n return `#${hexMatch[1]}${hexMatch[2]}${alpha}`;\n } else if (hexMatch[2]) {\n return `#${hexMatch[1]}${hexMatch[2]}80`;\n } else {\n return `#${Array.from(hexMatch[1]).map((x) => `${x}${x}`).join(\"\")}80`;\n }\n }\n const cssVarMatch = color.match(/var\\((--[\\w-]+-ansi-[\\w-]+)\\)/);\n if (cssVarMatch)\n return `var(${cssVarMatch[1]}-dim)`;\n return color;\n}\n\nfunction codeToTokensBase(internal, code, options = {}) {\n const {\n lang = \"text\",\n theme: themeName = internal.getLoadedThemes()[0]\n } = options;\n if (isPlainLang(lang) || isNoneTheme(themeName))\n return splitLines(code).map((line) => [{ content: line[0], offset: line[1] }]);\n const { theme, colorMap } = internal.setTheme(themeName);\n if (lang === \"ansi\")\n return tokenizeAnsiWithTheme(theme, code, options);\n const _grammar = internal.getLanguage(lang);\n if (options.grammarState) {\n if (options.grammarState.lang !== _grammar.name) {\n throw new ShikiError$1(`Grammar state language \"${options.grammarState.lang}\" does not match highlight language \"${_grammar.name}\"`);\n }\n if (!options.grammarState.themes.includes(theme.name)) {\n throw new ShikiError$1(`Grammar state themes \"${options.grammarState.themes}\" do not contain highlight theme \"${theme.name}\"`);\n }\n }\n return tokenizeWithTheme(code, _grammar, theme, colorMap, options);\n}\nfunction getLastGrammarState(...args) {\n if (args.length === 2) {\n return getLastGrammarStateFromMap(args[1]);\n }\n const [internal, code, options = {}] = args;\n const {\n lang = \"text\",\n theme: themeName = internal.getLoadedThemes()[0]\n } = options;\n if (isPlainLang(lang) || isNoneTheme(themeName))\n throw new ShikiError$1(\"Plain language does not have grammar state\");\n if (lang === \"ansi\")\n throw new ShikiError$1(\"ANSI language does not have grammar state\");\n const { theme, colorMap } = internal.setTheme(themeName);\n const _grammar = internal.getLanguage(lang);\n return new GrammarState(\n _tokenizeWithTheme(code, _grammar, theme, colorMap, options).stateStack,\n _grammar.name,\n theme.name\n );\n}\nfunction tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n const result = _tokenizeWithTheme(code, grammar, theme, colorMap, options);\n const grammarState = new GrammarState(\n _tokenizeWithTheme(code, grammar, theme, colorMap, options).stateStack,\n grammar.name,\n theme.name\n );\n setLastGrammarStateToMap(result.tokens, grammarState);\n return result.tokens;\n}\nfunction _tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n const colorReplacements = resolveColorReplacements(theme, options);\n const {\n tokenizeMaxLineLength = 0,\n tokenizeTimeLimit = 500\n } = options;\n const lines = splitLines(code);\n let stateStack = options.grammarState ? getGrammarStack(options.grammarState, theme.name) ?? INITIAL : options.grammarContextCode != null ? _tokenizeWithTheme(\n options.grammarContextCode,\n grammar,\n theme,\n colorMap,\n {\n ...options,\n grammarState: void 0,\n grammarContextCode: void 0\n }\n ).stateStack : INITIAL;\n let actual = [];\n const final = [];\n for (let i = 0, len = lines.length; i < len; i++) {\n const [line, lineOffset] = lines[i];\n if (line === \"\") {\n actual = [];\n final.push([]);\n continue;\n }\n if (tokenizeMaxLineLength > 0 && line.length >= tokenizeMaxLineLength) {\n actual = [];\n final.push([{\n content: line,\n offset: lineOffset,\n color: \"\",\n fontStyle: 0\n }]);\n continue;\n }\n let resultWithScopes;\n let tokensWithScopes;\n let tokensWithScopesIndex;\n if (options.includeExplanation) {\n resultWithScopes = grammar.tokenizeLine(line, stateStack);\n tokensWithScopes = resultWithScopes.tokens;\n tokensWithScopesIndex = 0;\n }\n const result = grammar.tokenizeLine2(line, stateStack, tokenizeTimeLimit);\n const tokensLength = result.tokens.length / 2;\n for (let j = 0; j < tokensLength; j++) {\n const startIndex = result.tokens[2 * j];\n const nextStartIndex = j + 1 < tokensLength ? result.tokens[2 * j + 2] : line.length;\n if (startIndex === nextStartIndex)\n continue;\n const metadata = result.tokens[2 * j + 1];\n const color = applyColorReplacements(\n colorMap[EncodedTokenMetadata.getForeground(metadata)],\n colorReplacements\n );\n const fontStyle = EncodedTokenMetadata.getFontStyle(metadata);\n const token = {\n content: line.substring(startIndex, nextStartIndex),\n offset: lineOffset + startIndex,\n color,\n fontStyle\n };\n if (options.includeExplanation) {\n const themeSettingsSelectors = [];\n if (options.includeExplanation !== \"scopeName\") {\n for (const setting of theme.settings) {\n let selectors;\n switch (typeof setting.scope) {\n case \"string\":\n selectors = setting.scope.split(/,/).map((scope) => scope.trim());\n break;\n case \"object\":\n selectors = setting.scope;\n break;\n default:\n continue;\n }\n themeSettingsSelectors.push({\n settings: setting,\n selectors: selectors.map((selector) => selector.split(/ /))\n });\n }\n }\n token.explanation = [];\n let offset = 0;\n while (startIndex + offset < nextStartIndex) {\n const tokenWithScopes = tokensWithScopes[tokensWithScopesIndex];\n const tokenWithScopesText = line.substring(\n tokenWithScopes.startIndex,\n tokenWithScopes.endIndex\n );\n offset += tokenWithScopesText.length;\n token.explanation.push({\n content: tokenWithScopesText,\n scopes: options.includeExplanation === \"scopeName\" ? explainThemeScopesNameOnly(\n tokenWithScopes.scopes\n ) : explainThemeScopesFull(\n themeSettingsSelectors,\n tokenWithScopes.scopes\n )\n });\n tokensWithScopesIndex += 1;\n }\n }\n actual.push(token);\n }\n final.push(actual);\n actual = [];\n stateStack = result.ruleStack;\n }\n return {\n tokens: final,\n stateStack\n };\n}\nfunction explainThemeScopesNameOnly(scopes) {\n return scopes.map((scope) => ({ scopeName: scope }));\n}\nfunction explainThemeScopesFull(themeSelectors, scopes) {\n const result = [];\n for (let i = 0, len = scopes.length; i < len; i++) {\n const scope = scopes[i];\n result[i] = {\n scopeName: scope,\n themeMatches: explainThemeScope(themeSelectors, scope, scopes.slice(0, i))\n };\n }\n return result;\n}\nfunction matchesOne(selector, scope) {\n return selector === scope || scope.substring(0, selector.length) === selector && scope[selector.length] === \".\";\n}\nfunction matches(selectors, scope, parentScopes) {\n if (!matchesOne(selectors[selectors.length - 1], scope))\n return false;\n let selectorParentIndex = selectors.length - 2;\n let parentIndex = parentScopes.length - 1;\n while (selectorParentIndex >= 0 && parentIndex >= 0) {\n if (matchesOne(selectors[selectorParentIndex], parentScopes[parentIndex]))\n selectorParentIndex -= 1;\n parentIndex -= 1;\n }\n if (selectorParentIndex === -1)\n return true;\n return false;\n}\nfunction explainThemeScope(themeSettingsSelectors, scope, parentScopes) {\n const result = [];\n for (const { selectors, settings } of themeSettingsSelectors) {\n for (const selectorPieces of selectors) {\n if (matches(selectorPieces, scope, parentScopes)) {\n result.push(settings);\n break;\n }\n }\n }\n return result;\n}\n\nfunction codeToTokensWithThemes(internal, code, options) {\n const themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] }));\n const themedTokens = themes.map((t) => {\n const tokens2 = codeToTokensBase(internal, code, {\n ...options,\n theme: t.theme\n });\n const state = getLastGrammarStateFromMap(tokens2);\n const theme = typeof t.theme === \"string\" ? t.theme : t.theme.name;\n return {\n tokens: tokens2,\n state,\n theme\n };\n });\n const tokens = syncThemesTokenization(\n ...themedTokens.map((i) => i.tokens)\n );\n const mergedTokens = tokens[0].map(\n (line, lineIdx) => line.map((_token, tokenIdx) => {\n const mergedToken = {\n content: _token.content,\n variants: {},\n offset: _token.offset\n };\n if (\"includeExplanation\" in options && options.includeExplanation) {\n mergedToken.explanation = _token.explanation;\n }\n tokens.forEach((t, themeIdx) => {\n const {\n content: _,\n explanation: __,\n offset: ___,\n ...styles\n } = t[lineIdx][tokenIdx];\n mergedToken.variants[themes[themeIdx].color] = styles;\n });\n return mergedToken;\n })\n );\n const mergedGrammarState = themedTokens[0].state ? new GrammarState(\n Object.fromEntries(themedTokens.map((s) => [s.theme, s.state?.getInternalStack(s.theme)])),\n themedTokens[0].state.lang\n ) : void 0;\n if (mergedGrammarState)\n setLastGrammarStateToMap(mergedTokens, mergedGrammarState);\n return mergedTokens;\n}\nfunction syncThemesTokenization(...themes) {\n const outThemes = themes.map(() => []);\n const count = themes.length;\n for (let i = 0; i < themes[0].length; i++) {\n const lines = themes.map((t) => t[i]);\n const outLines = outThemes.map(() => []);\n outThemes.forEach((t, i2) => t.push(outLines[i2]));\n const indexes = lines.map(() => 0);\n const current = lines.map((l) => l[0]);\n while (current.every((t) => t)) {\n const minLength = Math.min(...current.map((t) => t.content.length));\n for (let n = 0; n < count; n++) {\n const token = current[n];\n if (token.content.length === minLength) {\n outLines[n].push(token);\n indexes[n] += 1;\n current[n] = lines[n][indexes[n]];\n } else {\n outLines[n].push({\n ...token,\n content: token.content.slice(0, minLength)\n });\n current[n] = {\n ...token,\n content: token.content.slice(minLength),\n offset: token.offset + minLength\n };\n }\n }\n }\n }\n return outThemes;\n}\n\nfunction codeToTokens(internal, code, options) {\n let bg;\n let fg;\n let tokens;\n let themeName;\n let rootStyle;\n let grammarState;\n if (\"themes\" in options) {\n const {\n defaultColor = \"light\",\n cssVariablePrefix = \"--shiki-\"\n } = options;\n const themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] })).sort((a, b) => a.color === defaultColor ? -1 : b.color === defaultColor ? 1 : 0);\n if (themes.length === 0)\n throw new ShikiError$1(\"`themes` option must not be empty\");\n const themeTokens = codeToTokensWithThemes(\n internal,\n code,\n options\n );\n grammarState = getLastGrammarStateFromMap(themeTokens);\n if (defaultColor && !themes.find((t) => t.color === defaultColor))\n throw new ShikiError$1(`\\`themes\\` option must contain the defaultColor key \\`${defaultColor}\\``);\n const themeRegs = themes.map((t) => internal.getTheme(t.theme));\n const themesOrder = themes.map((t) => t.color);\n tokens = themeTokens.map((line) => line.map((token) => mergeToken(token, themesOrder, cssVariablePrefix, defaultColor)));\n if (grammarState)\n setLastGrammarStateToMap(tokens, grammarState);\n const themeColorReplacements = themes.map((t) => resolveColorReplacements(t.theme, options));\n fg = themes.map((t, idx) => (idx === 0 && defaultColor ? \"\" : `${cssVariablePrefix + t.color}:`) + (applyColorReplacements(themeRegs[idx].fg, themeColorReplacements[idx]) || \"inherit\")).join(\";\");\n bg = themes.map((t, idx) => (idx === 0 && defaultColor ? \"\" : `${cssVariablePrefix + t.color}-bg:`) + (applyColorReplacements(themeRegs[idx].bg, themeColorReplacements[idx]) || \"inherit\")).join(\";\");\n themeName = `shiki-themes ${themeRegs.map((t) => t.name).join(\" \")}`;\n rootStyle = defaultColor ? void 0 : [fg, bg].join(\";\");\n } else if (\"theme\" in options) {\n const colorReplacements = resolveColorReplacements(options.theme, options);\n tokens = codeToTokensBase(\n internal,\n code,\n options\n );\n const _theme = internal.getTheme(options.theme);\n bg = applyColorReplacements(_theme.bg, colorReplacements);\n fg = applyColorReplacements(_theme.fg, colorReplacements);\n themeName = _theme.name;\n grammarState = getLastGrammarStateFromMap(tokens);\n } else {\n throw new ShikiError$1(\"Invalid options, either `theme` or `themes` must be provided\");\n }\n return {\n tokens,\n fg,\n bg,\n themeName,\n rootStyle,\n grammarState\n };\n}\nfunction mergeToken(merged, variantsOrder, cssVariablePrefix, defaultColor) {\n const token = {\n content: merged.content,\n explanation: merged.explanation,\n offset: merged.offset\n };\n const styles = variantsOrder.map((t) => getTokenStyleObject(merged.variants[t]));\n const styleKeys = new Set(styles.flatMap((t) => Object.keys(t)));\n const mergedStyles = {};\n styles.forEach((cur, idx) => {\n for (const key of styleKeys) {\n const value = cur[key] || \"inherit\";\n if (idx === 0 && defaultColor) {\n mergedStyles[key] = value;\n } else {\n const keyName = key === \"color\" ? \"\" : key === \"background-color\" ? \"-bg\" : `-${key}`;\n const varKey = cssVariablePrefix + variantsOrder[idx] + (key === \"color\" ? \"\" : keyName);\n mergedStyles[varKey] = value;\n }\n }\n });\n token.htmlStyle = mergedStyles;\n return token;\n}\n\nfunction codeToHast(internal, code, options, transformerContext = {\n meta: {},\n options,\n codeToHast: (_code, _options) => codeToHast(internal, _code, _options),\n codeToTokens: (_code, _options) => codeToTokens(internal, _code, _options)\n}) {\n let input = code;\n for (const transformer of getTransformers(options))\n input = transformer.preprocess?.call(transformerContext, input, options) || input;\n let {\n tokens,\n fg,\n bg,\n themeName,\n rootStyle,\n grammarState\n } = codeToTokens(internal, input, options);\n const {\n mergeWhitespaces = true\n } = options;\n if (mergeWhitespaces === true)\n tokens = mergeWhitespaceTokens(tokens);\n else if (mergeWhitespaces === \"never\")\n tokens = splitWhitespaceTokens(tokens);\n const contextSource = {\n ...transformerContext,\n get source() {\n return input;\n }\n };\n for (const transformer of getTransformers(options))\n tokens = transformer.tokens?.call(contextSource, tokens) || tokens;\n return tokensToHast(\n tokens,\n {\n ...options,\n fg,\n bg,\n themeName,\n rootStyle\n },\n contextSource,\n grammarState\n );\n}\nfunction tokensToHast(tokens, options, transformerContext, grammarState = getLastGrammarStateFromMap(tokens)) {\n const transformers = getTransformers(options);\n const lines = [];\n const root = {\n type: \"root\",\n children: []\n };\n const {\n structure = \"classic\",\n tabindex = \"0\"\n } = options;\n let preNode = {\n type: \"element\",\n tagName: \"pre\",\n properties: {\n class: `shiki ${options.themeName || \"\"}`,\n style: options.rootStyle || `background-color:${options.bg};color:${options.fg}`,\n ...tabindex !== false && tabindex != null ? {\n tabindex: tabindex.toString()\n } : {},\n ...Object.fromEntries(\n Array.from(\n Object.entries(options.meta || {})\n ).filter(([key]) => !key.startsWith(\"_\"))\n )\n },\n children: []\n };\n let codeNode = {\n type: \"element\",\n tagName: \"code\",\n properties: {},\n children: lines\n };\n const lineNodes = [];\n const context = {\n ...transformerContext,\n structure,\n addClassToHast,\n get source() {\n return transformerContext.source;\n },\n get tokens() {\n return tokens;\n },\n get options() {\n return options;\n },\n get root() {\n return root;\n },\n get pre() {\n return preNode;\n },\n get code() {\n return codeNode;\n },\n get lines() {\n return lineNodes;\n }\n };\n tokens.forEach((line, idx) => {\n if (idx) {\n if (structure === \"inline\")\n root.children.push({ type: \"element\", tagName: \"br\", properties: {}, children: [] });\n else if (structure === \"classic\")\n lines.push({ type: \"text\", value: \"\\n\" });\n }\n let lineNode = {\n type: \"element\",\n tagName: \"span\",\n properties: { class: \"line\" },\n children: []\n };\n let col = 0;\n for (const token of line) {\n let tokenNode = {\n type: \"element\",\n tagName: \"span\",\n properties: {\n ...token.htmlAttrs\n },\n children: [{ type: \"text\", value: token.content }]\n };\n if (typeof token.htmlStyle === \"string\")\n warnDeprecated(\"`htmlStyle` as a string is deprecated. Use an object instead.\");\n const style = stringifyTokenStyle(token.htmlStyle || getTokenStyleObject(token));\n if (style)\n tokenNode.properties.style = style;\n for (const transformer of transformers)\n tokenNode = transformer?.span?.call(context, tokenNode, idx + 1, col, lineNode, token) || tokenNode;\n if (structure === \"inline\")\n root.children.push(tokenNode);\n else if (structure === \"classic\")\n lineNode.children.push(tokenNode);\n col += token.content.length;\n }\n if (structure === \"classic\") {\n for (const transformer of transformers)\n lineNode = transformer?.line?.call(context, lineNode, idx + 1) || lineNode;\n lineNodes.push(lineNode);\n lines.push(lineNode);\n }\n });\n if (structure === \"classic\") {\n for (const transformer of transformers)\n codeNode = transformer?.code?.call(context, codeNode) || codeNode;\n preNode.children.push(codeNode);\n for (const transformer of transformers)\n preNode = transformer?.pre?.call(context, preNode) || preNode;\n root.children.push(preNode);\n }\n let result = root;\n for (const transformer of transformers)\n result = transformer?.root?.call(context, result) || result;\n if (grammarState)\n setLastGrammarStateToMap(result, grammarState);\n return result;\n}\nfunction mergeWhitespaceTokens(tokens) {\n return tokens.map((line) => {\n const newLine = [];\n let carryOnContent = \"\";\n let firstOffset = 0;\n line.forEach((token, idx) => {\n const isUnderline = token.fontStyle && token.fontStyle & FontStyle.Underline;\n const couldMerge = !isUnderline;\n if (couldMerge && token.content.match(/^\\s+$/) && line[idx + 1]) {\n if (!firstOffset)\n firstOffset = token.offset;\n carryOnContent += token.content;\n } else {\n if (carryOnContent) {\n if (couldMerge) {\n newLine.push({\n ...token,\n offset: firstOffset,\n content: carryOnContent + token.content\n });\n } else {\n newLine.push(\n {\n content: carryOnContent,\n offset: firstOffset\n },\n token\n );\n }\n firstOffset = 0;\n carryOnContent = \"\";\n } else {\n newLine.push(token);\n }\n }\n });\n return newLine;\n });\n}\nfunction splitWhitespaceTokens(tokens) {\n return tokens.map((line) => {\n return line.flatMap((token) => {\n if (token.content.match(/^\\s+$/))\n return token;\n const match = token.content.match(/^(\\s*)(.*?)(\\s*)$/);\n if (!match)\n return token;\n const [, leading, content, trailing] = match;\n if (!leading && !trailing)\n return token;\n const expanded = [{\n ...token,\n offset: token.offset + leading.length,\n content\n }];\n if (leading) {\n expanded.unshift({\n content: leading,\n offset: token.offset\n });\n }\n if (trailing) {\n expanded.push({\n content: trailing,\n offset: token.offset + leading.length + content.length\n });\n }\n return expanded;\n });\n });\n}\n\nfunction codeToHtml(internal, code, options) {\n const context = {\n meta: {},\n options,\n codeToHast: (_code, _options) => codeToHast(internal, _code, _options),\n codeToTokens: (_code, _options) => codeToTokens(internal, _code, _options)\n };\n let result = toHtml(codeToHast(internal, code, options, context));\n for (const transformer of getTransformers(options))\n result = transformer.postprocess?.call(context, result, options) || result;\n return result;\n}\n\nconst VSCODE_FALLBACK_EDITOR_FG = { light: \"#333333\", dark: \"#bbbbbb\" };\nconst VSCODE_FALLBACK_EDITOR_BG = { light: \"#fffffe\", dark: \"#1e1e1e\" };\nconst RESOLVED_KEY = \"__shiki_resolved\";\nfunction normalizeTheme(rawTheme) {\n if (rawTheme?.[RESOLVED_KEY])\n return rawTheme;\n const theme = {\n ...rawTheme\n };\n if (theme.tokenColors && !theme.settings) {\n theme.settings = theme.tokenColors;\n delete theme.tokenColors;\n }\n theme.type || (theme.type = \"dark\");\n theme.colorReplacements = { ...theme.colorReplacements };\n theme.settings || (theme.settings = []);\n let { bg, fg } = theme;\n if (!bg || !fg) {\n const globalSetting = theme.settings ? theme.settings.find((s) => !s.name && !s.scope) : void 0;\n if (globalSetting?.settings?.foreground)\n fg = globalSetting.settings.foreground;\n if (globalSetting?.settings?.background)\n bg = globalSetting.settings.background;\n if (!fg && theme?.colors?.[\"editor.foreground\"])\n fg = theme.colors[\"editor.foreground\"];\n if (!bg && theme?.colors?.[\"editor.background\"])\n bg = theme.colors[\"editor.background\"];\n if (!fg)\n fg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_FG.light : VSCODE_FALLBACK_EDITOR_FG.dark;\n if (!bg)\n bg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_BG.light : VSCODE_FALLBACK_EDITOR_BG.dark;\n theme.fg = fg;\n theme.bg = bg;\n }\n if (!(theme.settings[0] && theme.settings[0].settings && !theme.settings[0].scope)) {\n theme.settings.unshift({\n settings: {\n foreground: theme.fg,\n background: theme.bg\n }\n });\n }\n let replacementCount = 0;\n const replacementMap = /* @__PURE__ */ new Map();\n function getReplacementColor(value) {\n if (replacementMap.has(value))\n return replacementMap.get(value);\n replacementCount += 1;\n const hex = `#${replacementCount.toString(16).padStart(8, \"0\").toLowerCase()}`;\n if (theme.colorReplacements?.[`#${hex}`])\n return getReplacementColor(value);\n replacementMap.set(value, hex);\n return hex;\n }\n theme.settings = theme.settings.map((setting) => {\n const replaceFg = setting.settings?.foreground && !setting.settings.foreground.startsWith(\"#\");\n const replaceBg = setting.settings?.background && !setting.settings.background.startsWith(\"#\");\n if (!replaceFg && !replaceBg)\n return setting;\n const clone = {\n ...setting,\n settings: {\n ...setting.settings\n }\n };\n if (replaceFg) {\n const replacement = getReplacementColor(setting.settings.foreground);\n theme.colorReplacements[replacement] = setting.settings.foreground;\n clone.settings.foreground = replacement;\n }\n if (replaceBg) {\n const replacement = getReplacementColor(setting.settings.background);\n theme.colorReplacements[replacement] = setting.settings.background;\n clone.settings.background = replacement;\n }\n return clone;\n });\n for (const key of Object.keys(theme.colors || {})) {\n if (key === \"editor.foreground\" || key === \"editor.background\" || key.startsWith(\"terminal.ansi\")) {\n if (!theme.colors[key]?.startsWith(\"#\")) {\n const replacement = getReplacementColor(theme.colors[key]);\n theme.colorReplacements[replacement] = theme.colors[key];\n theme.colors[key] = replacement;\n }\n }\n }\n Object.defineProperty(theme, RESOLVED_KEY, {\n enumerable: false,\n writable: false,\n value: true\n });\n return theme;\n}\n\nasync function resolveLangs(langs) {\n return Array.from(new Set((await Promise.all(\n langs.filter((l) => !isSpecialLang(l)).map(async (lang) => await normalizeGetter(lang).then((r) => Array.isArray(r) ? r : [r]))\n )).flat()));\n}\nasync function resolveThemes(themes) {\n const resolved = await Promise.all(\n themes.map(\n async (theme) => isSpecialTheme(theme) ? null : normalizeTheme(await normalizeGetter(theme))\n )\n );\n return resolved.filter((i) => !!i);\n}\n\nvar __defProp$1 = Object.defineProperty;\nvar __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField$1 = (obj, key, value) => {\n __defNormalProp$1(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass Registry extends Registry$1 {\n constructor(_resolver, _themes, _langs, _alias = {}) {\n super(_resolver);\n this._resolver = _resolver;\n this._themes = _themes;\n this._langs = _langs;\n this._alias = _alias;\n __publicField$1(this, \"_resolvedThemes\", /* @__PURE__ */ new Map());\n __publicField$1(this, \"_resolvedGrammars\", /* @__PURE__ */ new Map());\n __publicField$1(this, \"_langMap\", /* @__PURE__ */ new Map());\n __publicField$1(this, \"_langGraph\", /* @__PURE__ */ new Map());\n __publicField$1(this, \"_textmateThemeCache\", /* @__PURE__ */ new WeakMap());\n __publicField$1(this, \"_loadedThemesCache\", null);\n __publicField$1(this, \"_loadedLanguagesCache\", null);\n this._themes.map((t) => this.loadTheme(t));\n this.loadLanguages(this._langs);\n }\n getTheme(theme) {\n if (typeof theme === \"string\")\n return this._resolvedThemes.get(theme);\n else\n return this.loadTheme(theme);\n }\n loadTheme(theme) {\n const _theme = normalizeTheme(theme);\n if (_theme.name) {\n this._resolvedThemes.set(_theme.name, _theme);\n this._loadedThemesCache = null;\n }\n return _theme;\n }\n getLoadedThemes() {\n if (!this._loadedThemesCache)\n this._loadedThemesCache = [...this._resolvedThemes.keys()];\n return this._loadedThemesCache;\n }\n // Override and re-implement this method to cache the textmate themes as `TextMateTheme.createFromRawTheme`\n // is expensive. Themes can switch often especially for dual-theme support.\n //\n // The parent class also accepts `colorMap` as the second parameter, but since we don't use that,\n // we omit here so it's easier to cache the themes.\n setTheme(theme) {\n let textmateTheme = this._textmateThemeCache.get(theme);\n if (!textmateTheme) {\n textmateTheme = Theme.createFromRawTheme(theme);\n this._textmateThemeCache.set(theme, textmateTheme);\n }\n this._syncRegistry.setTheme(textmateTheme);\n }\n getGrammar(name) {\n if (this._alias[name]) {\n const resolved = /* @__PURE__ */ new Set([name]);\n while (this._alias[name]) {\n name = this._alias[name];\n if (resolved.has(name))\n throw new ShikiError(`Circular alias \\`${Array.from(resolved).join(\" -> \")} -> ${name}\\``);\n resolved.add(name);\n }\n }\n return this._resolvedGrammars.get(name);\n }\n loadLanguage(lang) {\n if (this.getGrammar(lang.name))\n return;\n const embeddedLazilyBy = new Set(\n [...this._langMap.values()].filter((i) => i.embeddedLangsLazy?.includes(lang.name))\n );\n this._resolver.addLanguage(lang);\n const grammarConfig = {\n balancedBracketSelectors: lang.balancedBracketSelectors || [\"*\"],\n unbalancedBracketSelectors: lang.unbalancedBracketSelectors || []\n };\n this._syncRegistry._rawGrammars.set(lang.scopeName, lang);\n const g = this.loadGrammarWithConfiguration(lang.scopeName, 1, grammarConfig);\n g.name = lang.name;\n this._resolvedGrammars.set(lang.name, g);\n if (lang.aliases) {\n lang.aliases.forEach((alias) => {\n this._alias[alias] = lang.name;\n });\n }\n this._loadedLanguagesCache = null;\n if (embeddedLazilyBy.size) {\n for (const e of embeddedLazilyBy) {\n this._resolvedGrammars.delete(e.name);\n this._loadedLanguagesCache = null;\n this._syncRegistry?._injectionGrammars?.delete(e.scopeName);\n this._syncRegistry?._grammars?.delete(e.scopeName);\n this.loadLanguage(this._langMap.get(e.name));\n }\n }\n }\n dispose() {\n super.dispose();\n this._resolvedThemes.clear();\n this._resolvedGrammars.clear();\n this._langMap.clear();\n this._langGraph.clear();\n this._loadedThemesCache = null;\n }\n loadLanguages(langs) {\n for (const lang of langs)\n this.resolveEmbeddedLanguages(lang);\n const langsGraphArray = Array.from(this._langGraph.entries());\n const missingLangs = langsGraphArray.filter(([_, lang]) => !lang);\n if (missingLangs.length) {\n const dependents = langsGraphArray.filter(([_, lang]) => lang && lang.embeddedLangs?.some((l) => missingLangs.map(([name]) => name).includes(l))).filter((lang) => !missingLangs.includes(lang));\n throw new ShikiError(`Missing languages ${missingLangs.map(([name]) => `\\`${name}\\``).join(\", \")}, required by ${dependents.map(([name]) => `\\`${name}\\``).join(\", \")}`);\n }\n for (const [_, lang] of langsGraphArray)\n this._resolver.addLanguage(lang);\n for (const [_, lang] of langsGraphArray)\n this.loadLanguage(lang);\n }\n getLoadedLanguages() {\n if (!this._loadedLanguagesCache) {\n this._loadedLanguagesCache = [\n .../* @__PURE__ */ new Set([...this._resolvedGrammars.keys(), ...Object.keys(this._alias)])\n ];\n }\n return this._loadedLanguagesCache;\n }\n resolveEmbeddedLanguages(lang) {\n this._langMap.set(lang.name, lang);\n this._langGraph.set(lang.name, lang);\n if (lang.embeddedLangs) {\n for (const embeddedLang of lang.embeddedLangs)\n this._langGraph.set(embeddedLang, this._langMap.get(embeddedLang));\n }\n }\n}\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => {\n __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n return value;\n};\nclass Resolver {\n constructor(engine, langs) {\n __publicField(this, \"_langs\", /* @__PURE__ */ new Map());\n __publicField(this, \"_scopeToLang\", /* @__PURE__ */ new Map());\n __publicField(this, \"_injections\", /* @__PURE__ */ new Map());\n __publicField(this, \"_onigLib\");\n this._onigLib = {\n createOnigScanner: (patterns) => engine.createScanner(patterns),\n createOnigString: (s) => engine.createString(s)\n };\n langs.forEach((i) => this.addLanguage(i));\n }\n get onigLib() {\n return this._onigLib;\n }\n getLangRegistration(langIdOrAlias) {\n return this._langs.get(langIdOrAlias);\n }\n loadGrammar(scopeName) {\n return this._scopeToLang.get(scopeName);\n }\n addLanguage(l) {\n this._langs.set(l.name, l);\n if (l.aliases) {\n l.aliases.forEach((a) => {\n this._langs.set(a, l);\n });\n }\n this._scopeToLang.set(l.scopeName, l);\n if (l.injectTo) {\n l.injectTo.forEach((i) => {\n if (!this._injections.get(i))\n this._injections.set(i, []);\n this._injections.get(i).push(l.scopeName);\n });\n }\n }\n getInjections(scopeName) {\n const scopeParts = scopeName.split(\".\");\n let injections = [];\n for (let i = 1; i <= scopeParts.length; i++) {\n const subScopeName = scopeParts.slice(0, i).join(\".\");\n injections = [...injections, ...this._injections.get(subScopeName) || []];\n }\n return injections;\n }\n}\n\nlet instancesCount = 0;\nfunction createShikiInternalSync(options) {\n instancesCount += 1;\n if (options.warnings !== false && instancesCount >= 10 && instancesCount % 10 === 0)\n console.warn(`[Shiki] ${instancesCount} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \\`highlighter.dispose()\\` to release unused instances.`);\n let isDisposed = false;\n if (!options.engine)\n throw new ShikiError(\"`engine` option is required for synchronous mode\");\n const langs = (options.langs || []).flat(1);\n const themes = (options.themes || []).flat(1).map(normalizeTheme);\n const resolver = new Resolver(options.engine, langs);\n const _registry = new Registry(resolver, themes, langs, options.langAlias);\n let _lastTheme;\n function getLanguage(name) {\n ensureNotDisposed();\n const _lang = _registry.getGrammar(typeof name === \"string\" ? name : name.name);\n if (!_lang)\n throw new ShikiError(`Language \\`${name}\\` not found, you may need to load it first`);\n return _lang;\n }\n function getTheme(name) {\n if (name === \"none\")\n return { bg: \"\", fg: \"\", name: \"none\", settings: [], type: \"dark\" };\n ensureNotDisposed();\n const _theme = _registry.getTheme(name);\n if (!_theme)\n throw new ShikiError(`Theme \\`${name}\\` not found, you may need to load it first`);\n return _theme;\n }\n function setTheme(name) {\n ensureNotDisposed();\n const theme = getTheme(name);\n if (_lastTheme !== name) {\n _registry.setTheme(theme);\n _lastTheme = name;\n }\n const colorMap = _registry.getColorMap();\n return {\n theme,\n colorMap\n };\n }\n function getLoadedThemes() {\n ensureNotDisposed();\n return _registry.getLoadedThemes();\n }\n function getLoadedLanguages() {\n ensureNotDisposed();\n return _registry.getLoadedLanguages();\n }\n function loadLanguageSync(...langs2) {\n ensureNotDisposed();\n _registry.loadLanguages(langs2.flat(1));\n }\n async function loadLanguage(...langs2) {\n return loadLanguageSync(await resolveLangs(langs2));\n }\n function loadThemeSync(...themes2) {\n ensureNotDisposed();\n for (const theme of themes2.flat(1)) {\n _registry.loadTheme(theme);\n }\n }\n async function loadTheme(...themes2) {\n ensureNotDisposed();\n return loadThemeSync(await resolveThemes(themes2));\n }\n function ensureNotDisposed() {\n if (isDisposed)\n throw new ShikiError(\"Shiki instance has been disposed\");\n }\n function dispose() {\n if (isDisposed)\n return;\n isDisposed = true;\n _registry.dispose();\n instancesCount -= 1;\n }\n return {\n setTheme,\n getTheme,\n getLanguage,\n getLoadedThemes,\n getLoadedLanguages,\n loadLanguage,\n loadLanguageSync,\n loadTheme,\n loadThemeSync,\n dispose,\n [Symbol.dispose]: dispose\n };\n}\n\nasync function createShikiInternal(options = {}) {\n if (options.loadWasm) {\n warnDeprecated(\"`loadWasm` option is deprecated. Use `engine: createOnigurumaEngine(loadWasm)` instead.\");\n }\n const [\n themes,\n langs,\n engine\n ] = await Promise.all([\n resolveThemes(options.themes || []),\n resolveLangs(options.langs || []),\n options.engine || createOnigurumaEngine$1(options.loadWasm || getDefaultWasmLoader())\n ]);\n return createShikiInternalSync({\n ...options,\n loadWasm: void 0,\n themes,\n langs,\n engine\n });\n}\nfunction getShikiInternal(options = {}) {\n warnDeprecated(\"`getShikiInternal` is deprecated. Use `createShikiInternal` instead.\");\n return createShikiInternal(options);\n}\n\nasync function createHighlighterCore(options = {}) {\n const internal = await createShikiInternal(options);\n return {\n getLastGrammarState: (...args) => getLastGrammarState(internal, ...args),\n codeToTokensBase: (code, options2) => codeToTokensBase(internal, code, options2),\n codeToTokensWithThemes: (code, options2) => codeToTokensWithThemes(internal, code, options2),\n codeToTokens: (code, options2) => codeToTokens(internal, code, options2),\n codeToHast: (code, options2) => codeToHast(internal, code, options2),\n codeToHtml: (code, options2) => codeToHtml(internal, code, options2),\n ...internal,\n getInternalContext: () => internal\n };\n}\nfunction createHighlighterCoreSync(options = {}) {\n const internal = createShikiInternalSync(options);\n return {\n getLastGrammarState: (...args) => getLastGrammarState(internal, ...args),\n codeToTokensBase: (code, options2) => codeToTokensBase(internal, code, options2),\n codeToTokensWithThemes: (code, options2) => codeToTokensWithThemes(internal, code, options2),\n codeToTokens: (code, options2) => codeToTokens(internal, code, options2),\n codeToHast: (code, options2) => codeToHast(internal, code, options2),\n codeToHtml: (code, options2) => codeToHtml(internal, code, options2),\n ...internal,\n getInternalContext: () => internal\n };\n}\nfunction makeSingletonHighlighterCore(createHighlighter) {\n let _shiki;\n async function getSingletonHighlighterCore2(options = {}) {\n if (!_shiki) {\n _shiki = createHighlighter({\n ...options,\n themes: options.themes || [],\n langs: options.langs || []\n });\n return _shiki;\n } else {\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n }\n }\n return getSingletonHighlighterCore2;\n}\nconst getSingletonHighlighterCore = /* @__PURE__ */ makeSingletonHighlighterCore(createHighlighterCore);\nfunction getHighlighterCore(options = {}) {\n warnDeprecated(\"`getHighlighterCore` is deprecated. Use `createHighlighterCore` or `getSingletonHighlighterCore` instead.\");\n return createHighlighterCore(options);\n}\n\nfunction createdBundledHighlighter(arg1, arg2, arg3) {\n let bundledLanguages;\n let bundledThemes;\n let engine;\n if (arg2) {\n warnDeprecated(\"`createdBundledHighlighter` signature with `bundledLanguages` and `bundledThemes` is deprecated. Use the options object signature instead.\");\n bundledLanguages = arg1;\n bundledThemes = arg2;\n engine = () => createOnigurumaEngine(arg3);\n } else {\n const options = arg1;\n bundledLanguages = options.langs;\n bundledThemes = options.themes;\n engine = options.engine;\n }\n async function createHighlighter(options) {\n function resolveLang(lang) {\n if (typeof lang === \"string\") {\n if (isSpecialLang(lang))\n return [];\n const bundle = bundledLanguages[lang];\n if (!bundle)\n throw new ShikiError$1(`Language \\`${lang}\\` is not included in this bundle. You may want to load it from external source.`);\n return bundle;\n }\n return lang;\n }\n function resolveTheme(theme) {\n if (isSpecialTheme(theme))\n return \"none\";\n if (typeof theme === \"string\") {\n const bundle = bundledThemes[theme];\n if (!bundle)\n throw new ShikiError$1(`Theme \\`${theme}\\` is not included in this bundle. You may want to load it from external source.`);\n return bundle;\n }\n return theme;\n }\n const _themes = (options.themes ?? []).map((i) => resolveTheme(i));\n const langs = (options.langs ?? []).map((i) => resolveLang(i));\n const core = await createHighlighterCore({\n engine: options.engine ?? engine(),\n ...options,\n themes: _themes,\n langs\n });\n return {\n ...core,\n loadLanguage(...langs2) {\n return core.loadLanguage(...langs2.map(resolveLang));\n },\n loadTheme(...themes) {\n return core.loadTheme(...themes.map(resolveTheme));\n }\n };\n }\n return createHighlighter;\n}\nfunction makeSingletonHighlighter(createHighlighter) {\n let _shiki;\n async function getSingletonHighlighter(options = {}) {\n if (!_shiki) {\n _shiki = createHighlighter({\n ...options,\n themes: options.themes || [],\n langs: options.langs || []\n });\n return _shiki;\n } else {\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n }\n }\n return getSingletonHighlighter;\n}\nfunction createSingletonShorthands(createHighlighter) {\n const getSingletonHighlighter = makeSingletonHighlighter(createHighlighter);\n return {\n getSingletonHighlighter(options) {\n return getSingletonHighlighter(options);\n },\n async codeToHtml(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToHtml(code, options);\n },\n async codeToHast(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToHast(code, options);\n },\n async codeToTokens(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n return shiki.codeToTokens(code, options);\n },\n async codeToTokensBase(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: [options.theme]\n });\n return shiki.codeToTokensBase(code, options);\n },\n async codeToTokensWithThemes(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: Object.values(options.themes).filter(Boolean)\n });\n return shiki.codeToTokensWithThemes(code, options);\n },\n async getLastGrammarState(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: [options.theme]\n });\n return shiki.getLastGrammarState(code, options);\n }\n };\n}\n\nfunction createJavaScriptRegexEngine(options) {\n warnDeprecated(\"import `createJavaScriptRegexEngine` from `@shikijs/engine-javascript` or `shiki/engine/javascript` instead\");\n return createJavaScriptRegexEngine$1(options);\n}\nfunction defaultJavaScriptRegexConstructor(pattern) {\n warnDeprecated(\"import `defaultJavaScriptRegexConstructor` from `@shikijs/engine-javascript` or `shiki/engine/javascript` instead\");\n return defaultJavaScriptRegexConstructor$1(pattern);\n}\n\nfunction createCssVariablesTheme(options = {}) {\n const {\n name = \"css-variables\",\n variablePrefix = \"--shiki-\",\n fontStyle = true\n } = options;\n const variable = (name2) => {\n if (options.variableDefaults?.[name2])\n return `var(${variablePrefix}${name2}, ${options.variableDefaults[name2]})`;\n return `var(${variablePrefix}${name2})`;\n };\n const theme = {\n name,\n type: \"dark\",\n colors: {\n \"editor.foreground\": variable(\"foreground\"),\n \"editor.background\": variable(\"background\"),\n \"terminal.ansiBlack\": variable(\"ansi-black\"),\n \"terminal.ansiRed\": variable(\"ansi-red\"),\n \"terminal.ansiGreen\": variable(\"ansi-green\"),\n \"terminal.ansiYellow\": variable(\"ansi-yellow\"),\n \"terminal.ansiBlue\": variable(\"ansi-blue\"),\n \"terminal.ansiMagenta\": variable(\"ansi-magenta\"),\n \"terminal.ansiCyan\": variable(\"ansi-cyan\"),\n \"terminal.ansiWhite\": variable(\"ansi-white\"),\n \"terminal.ansiBrightBlack\": variable(\"ansi-bright-black\"),\n \"terminal.ansiBrightRed\": variable(\"ansi-bright-red\"),\n \"terminal.ansiBrightGreen\": variable(\"ansi-bright-green\"),\n \"terminal.ansiBrightYellow\": variable(\"ansi-bright-yellow\"),\n \"terminal.ansiBrightBlue\": variable(\"ansi-bright-blue\"),\n \"terminal.ansiBrightMagenta\": variable(\"ansi-bright-magenta\"),\n \"terminal.ansiBrightCyan\": variable(\"ansi-bright-cyan\"),\n \"terminal.ansiBrightWhite\": variable(\"ansi-bright-white\")\n },\n tokenColors: [\n {\n scope: [\n \"keyword.operator.accessor\",\n \"meta.group.braces.round.function.arguments\",\n \"meta.template.expression\",\n \"markup.fenced_code meta.embedded.block\"\n ],\n settings: {\n foreground: variable(\"foreground\")\n }\n },\n {\n scope: \"emphasis\",\n settings: {\n fontStyle: \"italic\"\n }\n },\n {\n scope: [\"strong\", \"markup.heading.markdown\", \"markup.bold.markdown\"],\n settings: {\n fontStyle: \"bold\"\n }\n },\n {\n scope: [\"markup.italic.markdown\"],\n settings: {\n fontStyle: \"italic\"\n }\n },\n {\n scope: \"meta.link.inline.markdown\",\n settings: {\n fontStyle: \"underline\",\n foreground: variable(\"token-link\")\n }\n },\n {\n scope: [\"string\", \"markup.fenced_code\", \"markup.inline\"],\n settings: {\n foreground: variable(\"token-string\")\n }\n },\n {\n scope: [\"comment\", \"string.quoted.docstring.multi\"],\n settings: {\n foreground: variable(\"token-comment\")\n }\n },\n {\n scope: [\n \"constant.numeric\",\n \"constant.language\",\n \"constant.other.placeholder\",\n \"constant.character.format.placeholder\",\n \"variable.language.this\",\n \"variable.other.object\",\n \"variable.other.class\",\n \"variable.other.constant\",\n \"meta.property-name\",\n \"meta.property-value\",\n \"support\"\n ],\n settings: {\n foreground: variable(\"token-constant\")\n }\n },\n {\n scope: [\n \"keyword\",\n \"storage.modifier\",\n \"storage.type\",\n \"storage.control.clojure\",\n \"entity.name.function.clojure\",\n \"entity.name.tag.yaml\",\n \"support.function.node\",\n \"support.type.property-name.json\",\n \"punctuation.separator.key-value\",\n \"punctuation.definition.template-expression\"\n ],\n settings: {\n foreground: variable(\"token-keyword\")\n }\n },\n {\n scope: \"variable.parameter.function\",\n settings: {\n foreground: variable(\"token-parameter\")\n }\n },\n {\n scope: [\n \"support.function\",\n \"entity.name.type\",\n \"entity.other.inherited-class\",\n \"meta.function-call\",\n \"meta.instance.constructor\",\n \"entity.other.attribute-name\",\n \"entity.name.function\",\n \"constant.keyword.clojure\"\n ],\n settings: {\n foreground: variable(\"token-function\")\n }\n },\n {\n scope: [\n \"entity.name.tag\",\n \"string.quoted\",\n \"string.regexp\",\n \"string.interpolated\",\n \"string.template\",\n \"string.unquoted.plain.out.yaml\",\n \"keyword.other.template\"\n ],\n settings: {\n foreground: variable(\"token-string-expression\")\n }\n },\n {\n scope: [\n \"punctuation.definition.arguments\",\n \"punctuation.definition.dict\",\n \"punctuation.separator\",\n \"meta.function-call.arguments\"\n ],\n settings: {\n foreground: variable(\"token-punctuation\")\n }\n },\n {\n // [Custom] Markdown links\n scope: [\n \"markup.underline.link\",\n \"punctuation.definition.metadata.markdown\"\n ],\n settings: {\n foreground: variable(\"token-link\")\n }\n },\n {\n // [Custom] Markdown list\n scope: [\"beginning.punctuation.definition.list.markdown\"],\n settings: {\n foreground: variable(\"token-string\")\n }\n },\n {\n // [Custom] Markdown punctuation definition brackets\n scope: [\n \"punctuation.definition.string.begin.markdown\",\n \"punctuation.definition.string.end.markdown\",\n \"string.other.link.title.markdown\",\n \"string.other.link.description.markdown\"\n ],\n settings: {\n foreground: variable(\"token-keyword\")\n }\n },\n {\n // [Custom] Diff\n scope: [\n \"markup.inserted\",\n \"meta.diff.header.to-file\",\n \"punctuation.definition.inserted\"\n ],\n settings: {\n foreground: variable(\"token-inserted\")\n }\n },\n {\n scope: [\n \"markup.deleted\",\n \"meta.diff.header.from-file\",\n \"punctuation.definition.deleted\"\n ],\n settings: {\n foreground: variable(\"token-deleted\")\n }\n },\n {\n scope: [\n \"markup.changed\",\n \"punctuation.definition.changed\"\n ],\n settings: {\n foreground: variable(\"token-changed\")\n }\n }\n ]\n };\n if (!fontStyle) {\n theme.tokenColors = theme.tokenColors?.map((tokenColor) => {\n if (tokenColor.settings?.fontStyle)\n delete tokenColor.settings.fontStyle;\n return tokenColor;\n });\n }\n return theme;\n}\n\nexport { addClassToHast, applyColorReplacements, codeToHast, codeToHtml, codeToTokens, codeToTokensBase, codeToTokensWithThemes, createCssVariablesTheme, createHighlighterCore, createHighlighterCoreSync, createJavaScriptRegexEngine, createOnigurumaEngine, createPositionConverter, createShikiInternal, createShikiInternalSync, createSingletonShorthands, createWasmOnigEngine, createdBundledHighlighter, defaultJavaScriptRegexConstructor, getHighlighterCore, getShikiInternal, getSingletonHighlighterCore, getTokenStyleObject, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, loadWasm, makeSingletonHighlighter, makeSingletonHighlighterCore, normalizeGetter, normalizeTheme, resolveColorReplacements, splitLines, splitToken, splitTokens, stringifyTokenStyle, toArray, tokenizeAnsiWithTheme, tokenizeWithTheme, tokensToHast, transformerDecorations, warnDeprecated };\n","import { bundledLanguages } from './langs.mjs';\nexport { bundledLanguagesAlias, bundledLanguagesBase, bundledLanguagesInfo } from './langs.mjs';\nimport { bundledThemes } from './themes.mjs';\nexport { bundledThemesInfo } from './themes.mjs';\nexport { g as getWasmInlined } from './wasm-dynamic-K7LwWlz7.js';\nimport { createdBundledHighlighter, createSingletonShorthands, warnDeprecated } from '@shikijs/core';\nexport * from '@shikijs/core';\nimport { createOnigurumaEngine } from '@shikijs/engine-oniguruma';\n\nconst createHighlighter = /* @__PURE__ */ createdBundledHighlighter({\n langs: bundledLanguages,\n themes: bundledThemes,\n engine: () => createOnigurumaEngine(import('shiki/wasm'))\n});\nconst {\n codeToHtml,\n codeToHast,\n codeToTokens,\n codeToTokensBase,\n codeToTokensWithThemes,\n getSingletonHighlighter,\n getLastGrammarState\n} = /* @__PURE__ */ createSingletonShorthands(\n createHighlighter\n);\nconst getHighlighter = (options) => {\n warnDeprecated(\"`getHighlighter` is deprecated. Use `createHighlighter` or `getSingletonHighlighter` instead.\");\n return createHighlighter(options);\n};\n\nexport { bundledLanguages, bundledThemes, codeToHast, codeToHtml, codeToTokens, codeToTokensBase, codeToTokensWithThemes, createHighlighter, getHighlighter, getLastGrammarState, getSingletonHighlighter };\n","const bundledLanguagesInfo = [\n {\n \"id\": \"abap\",\n \"name\": \"ABAP\",\n \"import\": () => import('./langs/abap.mjs')\n },\n {\n \"id\": \"actionscript-3\",\n \"name\": \"ActionScript\",\n \"import\": () => import('./langs/actionscript-3.mjs')\n },\n {\n \"id\": \"ada\",\n \"name\": \"Ada\",\n \"import\": () => import('./langs/ada.mjs')\n },\n {\n \"id\": \"angular-html\",\n \"name\": \"Angular HTML\",\n \"import\": () => import('./langs/angular-html.mjs')\n },\n {\n \"id\": \"angular-ts\",\n \"name\": \"Angular TypeScript\",\n \"import\": () => import('./langs/angular-ts.mjs')\n },\n {\n \"id\": \"apache\",\n \"name\": \"Apache Conf\",\n \"import\": () => import('./langs/apache.mjs')\n },\n {\n \"id\": \"apex\",\n \"name\": \"Apex\",\n \"import\": () => import('./langs/apex.mjs')\n },\n {\n \"id\": \"apl\",\n \"name\": \"APL\",\n \"import\": () => import('./langs/apl.mjs')\n },\n {\n \"id\": \"applescript\",\n \"name\": \"AppleScript\",\n \"import\": () => import('./langs/applescript.mjs')\n },\n {\n \"id\": \"ara\",\n \"name\": \"Ara\",\n \"import\": () => import('./langs/ara.mjs')\n },\n {\n \"id\": \"asciidoc\",\n \"name\": \"AsciiDoc\",\n \"aliases\": [\n \"adoc\"\n ],\n \"import\": () => import('./langs/asciidoc.mjs')\n },\n {\n \"id\": \"asm\",\n \"name\": \"Assembly\",\n \"import\": () => import('./langs/asm.mjs')\n },\n {\n \"id\": \"astro\",\n \"name\": \"Astro\",\n \"import\": () => import('./langs/astro.mjs')\n },\n {\n \"id\": \"awk\",\n \"name\": \"AWK\",\n \"import\": () => import('./langs/awk.mjs')\n },\n {\n \"id\": \"ballerina\",\n \"name\": \"Ballerina\",\n \"import\": () => import('./langs/ballerina.mjs')\n },\n {\n \"id\": \"bat\",\n \"name\": \"Batch File\",\n \"aliases\": [\n \"batch\"\n ],\n \"import\": () => import('./langs/bat.mjs')\n },\n {\n \"id\": \"beancount\",\n \"name\": \"Beancount\",\n \"import\": () => import('./langs/beancount.mjs')\n },\n {\n \"id\": \"berry\",\n \"name\": \"Berry\",\n \"aliases\": [\n \"be\"\n ],\n \"import\": () => import('./langs/berry.mjs')\n },\n {\n \"id\": \"bibtex\",\n \"name\": \"BibTeX\",\n \"import\": () => import('./langs/bibtex.mjs')\n },\n {\n \"id\": \"bicep\",\n \"name\": \"Bicep\",\n \"import\": () => import('./langs/bicep.mjs')\n },\n {\n \"id\": \"blade\",\n \"name\": \"Blade\",\n \"import\": () => import('./langs/blade.mjs')\n },\n {\n \"id\": \"c\",\n \"name\": \"C\",\n \"import\": () => import('./langs/c.mjs')\n },\n {\n \"id\": \"cadence\",\n \"name\": \"Cadence\",\n \"aliases\": [\n \"cdc\"\n ],\n \"import\": () => import('./langs/cadence.mjs')\n },\n {\n \"id\": \"clarity\",\n \"name\": \"Clarity\",\n \"import\": () => import('./langs/clarity.mjs')\n },\n {\n \"id\": \"clojure\",\n \"name\": \"Clojure\",\n \"aliases\": [\n \"clj\"\n ],\n \"import\": () => import('./langs/clojure.mjs')\n },\n {\n \"id\": \"cmake\",\n \"name\": \"CMake\",\n \"import\": () => import('./langs/cmake.mjs')\n },\n {\n \"id\": \"cobol\",\n \"name\": \"COBOL\",\n \"import\": () => import('./langs/cobol.mjs')\n },\n {\n \"id\": \"codeowners\",\n \"name\": \"CODEOWNERS\",\n \"import\": () => import('./langs/codeowners.mjs')\n },\n {\n \"id\": \"codeql\",\n \"name\": \"CodeQL\",\n \"aliases\": [\n \"ql\"\n ],\n \"import\": () => import('./langs/codeql.mjs')\n },\n {\n \"id\": \"coffee\",\n \"name\": \"CoffeeScript\",\n \"aliases\": [\n \"coffeescript\"\n ],\n \"import\": () => import('./langs/coffee.mjs')\n },\n {\n \"id\": \"common-lisp\",\n \"name\": \"Common Lisp\",\n \"aliases\": [\n \"lisp\"\n ],\n \"import\": () => import('./langs/common-lisp.mjs')\n },\n {\n \"id\": \"coq\",\n \"name\": \"Coq\",\n \"import\": () => import('./langs/coq.mjs')\n },\n {\n \"id\": \"cpp\",\n \"name\": \"C++\",\n \"aliases\": [\n \"c++\"\n ],\n \"import\": () => import('./langs/cpp.mjs')\n },\n {\n \"id\": \"crystal\",\n \"name\": \"Crystal\",\n \"import\": () => import('./langs/crystal.mjs')\n },\n {\n \"id\": \"csharp\",\n \"name\": \"C#\",\n \"aliases\": [\n \"c#\",\n \"cs\"\n ],\n \"import\": () => import('./langs/csharp.mjs')\n },\n {\n \"id\": \"css\",\n \"name\": \"CSS\",\n \"import\": () => import('./langs/css.mjs')\n },\n {\n \"id\": \"csv\",\n \"name\": \"CSV\",\n \"import\": () => import('./langs/csv.mjs')\n },\n {\n \"id\": \"cue\",\n \"name\": \"CUE\",\n \"import\": () => import('./langs/cue.mjs')\n },\n {\n \"id\": \"cypher\",\n \"name\": \"Cypher\",\n \"aliases\": [\n \"cql\"\n ],\n \"import\": () => import('./langs/cypher.mjs')\n },\n {\n \"id\": \"d\",\n \"name\": \"D\",\n \"import\": () => import('./langs/d.mjs')\n },\n {\n \"id\": \"dart\",\n \"name\": \"Dart\",\n \"import\": () => import('./langs/dart.mjs')\n },\n {\n \"id\": \"dax\",\n \"name\": \"DAX\",\n \"import\": () => import('./langs/dax.mjs')\n },\n {\n \"id\": \"desktop\",\n \"name\": \"Desktop\",\n \"import\": () => import('./langs/desktop.mjs')\n },\n {\n \"id\": \"diff\",\n \"name\": \"Diff\",\n \"import\": () => import('./langs/diff.mjs')\n },\n {\n \"id\": \"docker\",\n \"name\": \"Dockerfile\",\n \"aliases\": [\n \"dockerfile\"\n ],\n \"import\": () => import('./langs/docker.mjs')\n },\n {\n \"id\": \"dotenv\",\n \"name\": \"dotEnv\",\n \"import\": () => import('./langs/dotenv.mjs')\n },\n {\n \"id\": \"dream-maker\",\n \"name\": \"Dream Maker\",\n \"import\": () => import('./langs/dream-maker.mjs')\n },\n {\n \"id\": \"edge\",\n \"name\": \"Edge\",\n \"import\": () => import('./langs/edge.mjs')\n },\n {\n \"id\": \"elixir\",\n \"name\": \"Elixir\",\n \"import\": () => import('./langs/elixir.mjs')\n },\n {\n \"id\": \"elm\",\n \"name\": \"Elm\",\n \"import\": () => import('./langs/elm.mjs')\n },\n {\n \"id\": \"emacs-lisp\",\n \"name\": \"Emacs Lisp\",\n \"aliases\": [\n \"elisp\"\n ],\n \"import\": () => import('./langs/emacs-lisp.mjs')\n },\n {\n \"id\": \"erb\",\n \"name\": \"ERB\",\n \"import\": () => import('./langs/erb.mjs')\n },\n {\n \"id\": \"erlang\",\n \"name\": \"Erlang\",\n \"aliases\": [\n \"erl\"\n ],\n \"import\": () => import('./langs/erlang.mjs')\n },\n {\n \"id\": \"fennel\",\n \"name\": \"Fennel\",\n \"import\": () => import('./langs/fennel.mjs')\n },\n {\n \"id\": \"fish\",\n \"name\": \"Fish\",\n \"import\": () => import('./langs/fish.mjs')\n },\n {\n \"id\": \"fluent\",\n \"name\": \"Fluent\",\n \"aliases\": [\n \"ftl\"\n ],\n \"import\": () => import('./langs/fluent.mjs')\n },\n {\n \"id\": \"fortran-fixed-form\",\n \"name\": \"Fortran (Fixed Form)\",\n \"aliases\": [\n \"f\",\n \"for\",\n \"f77\"\n ],\n \"import\": () => import('./langs/fortran-fixed-form.mjs')\n },\n {\n \"id\": \"fortran-free-form\",\n \"name\": \"Fortran (Free Form)\",\n \"aliases\": [\n \"f90\",\n \"f95\",\n \"f03\",\n \"f08\",\n \"f18\"\n ],\n \"import\": () => import('./langs/fortran-free-form.mjs')\n },\n {\n \"id\": \"fsharp\",\n \"name\": \"F#\",\n \"aliases\": [\n \"f#\",\n \"fs\"\n ],\n \"import\": () => import('./langs/fsharp.mjs')\n },\n {\n \"id\": \"gdresource\",\n \"name\": \"GDResource\",\n \"import\": () => import('./langs/gdresource.mjs')\n },\n {\n \"id\": \"gdscript\",\n \"name\": \"GDScript\",\n \"import\": () => import('./langs/gdscript.mjs')\n },\n {\n \"id\": \"gdshader\",\n \"name\": \"GDShader\",\n \"import\": () => import('./langs/gdshader.mjs')\n },\n {\n \"id\": \"genie\",\n \"name\": \"Genie\",\n \"import\": () => import('./langs/genie.mjs')\n },\n {\n \"id\": \"gherkin\",\n \"name\": \"Gherkin\",\n \"import\": () => import('./langs/gherkin.mjs')\n },\n {\n \"id\": \"git-commit\",\n \"name\": \"Git Commit Message\",\n \"import\": () => import('./langs/git-commit.mjs')\n },\n {\n \"id\": \"git-rebase\",\n \"name\": \"Git Rebase Message\",\n \"import\": () => import('./langs/git-rebase.mjs')\n },\n {\n \"id\": \"gleam\",\n \"name\": \"Gleam\",\n \"import\": () => import('./langs/gleam.mjs')\n },\n {\n \"id\": \"glimmer-js\",\n \"name\": \"Glimmer JS\",\n \"aliases\": [\n \"gjs\"\n ],\n \"import\": () => import('./langs/glimmer-js.mjs')\n },\n {\n \"id\": \"glimmer-ts\",\n \"name\": \"Glimmer TS\",\n \"aliases\": [\n \"gts\"\n ],\n \"import\": () => import('./langs/glimmer-ts.mjs')\n },\n {\n \"id\": \"glsl\",\n \"name\": \"GLSL\",\n \"import\": () => import('./langs/glsl.mjs')\n },\n {\n \"id\": \"gnuplot\",\n \"name\": \"Gnuplot\",\n \"import\": () => import('./langs/gnuplot.mjs')\n },\n {\n \"id\": \"go\",\n \"name\": \"Go\",\n \"import\": () => import('./langs/go.mjs')\n },\n {\n \"id\": \"graphql\",\n \"name\": \"GraphQL\",\n \"aliases\": [\n \"gql\"\n ],\n \"import\": () => import('./langs/graphql.mjs')\n },\n {\n \"id\": \"groovy\",\n \"name\": \"Groovy\",\n \"import\": () => import('./langs/groovy.mjs')\n },\n {\n \"id\": \"hack\",\n \"name\": \"Hack\",\n \"import\": () => import('./langs/hack.mjs')\n },\n {\n \"id\": \"haml\",\n \"name\": \"Ruby Haml\",\n \"import\": () => import('./langs/haml.mjs')\n },\n {\n \"id\": \"handlebars\",\n \"name\": \"Handlebars\",\n \"aliases\": [\n \"hbs\"\n ],\n \"import\": () => import('./langs/handlebars.mjs')\n },\n {\n \"id\": \"haskell\",\n \"name\": \"Haskell\",\n \"aliases\": [\n \"hs\"\n ],\n \"import\": () => import('./langs/haskell.mjs')\n },\n {\n \"id\": \"haxe\",\n \"name\": \"Haxe\",\n \"import\": () => import('./langs/haxe.mjs')\n },\n {\n \"id\": \"hcl\",\n \"name\": \"HashiCorp HCL\",\n \"import\": () => import('./langs/hcl.mjs')\n },\n {\n \"id\": \"hjson\",\n \"name\": \"Hjson\",\n \"import\": () => import('./langs/hjson.mjs')\n },\n {\n \"id\": \"hlsl\",\n \"name\": \"HLSL\",\n \"import\": () => import('./langs/hlsl.mjs')\n },\n {\n \"id\": \"html\",\n \"name\": \"HTML\",\n \"import\": () => import('./langs/html.mjs')\n },\n {\n \"id\": \"html-derivative\",\n \"name\": \"HTML (Derivative)\",\n \"import\": () => import('./langs/html-derivative.mjs')\n },\n {\n \"id\": \"http\",\n \"name\": \"HTTP\",\n \"import\": () => import('./langs/http.mjs')\n },\n {\n \"id\": \"hxml\",\n \"name\": \"HXML\",\n \"import\": () => import('./langs/hxml.mjs')\n },\n {\n \"id\": \"hy\",\n \"name\": \"Hy\",\n \"import\": () => import('./langs/hy.mjs')\n },\n {\n \"id\": \"imba\",\n \"name\": \"Imba\",\n \"import\": () => import('./langs/imba.mjs')\n },\n {\n \"id\": \"ini\",\n \"name\": \"INI\",\n \"aliases\": [\n \"properties\"\n ],\n \"import\": () => import('./langs/ini.mjs')\n },\n {\n \"id\": \"java\",\n \"name\": \"Java\",\n \"import\": () => import('./langs/java.mjs')\n },\n {\n \"id\": \"javascript\",\n \"name\": \"JavaScript\",\n \"aliases\": [\n \"js\"\n ],\n \"import\": () => import('./langs/javascript.mjs')\n },\n {\n \"id\": \"jinja\",\n \"name\": \"Jinja\",\n \"import\": () => import('./langs/jinja.mjs')\n },\n {\n \"id\": \"jison\",\n \"name\": \"Jison\",\n \"import\": () => import('./langs/jison.mjs')\n },\n {\n \"id\": \"json\",\n \"name\": \"JSON\",\n \"import\": () => import('./langs/json.mjs')\n },\n {\n \"id\": \"json5\",\n \"name\": \"JSON5\",\n \"import\": () => import('./langs/json5.mjs')\n },\n {\n \"id\": \"jsonc\",\n \"name\": \"JSON with Comments\",\n \"import\": () => import('./langs/jsonc.mjs')\n },\n {\n \"id\": \"jsonl\",\n \"name\": \"JSON Lines\",\n \"import\": () => import('./langs/jsonl.mjs')\n },\n {\n \"id\": \"jsonnet\",\n \"name\": \"Jsonnet\",\n \"import\": () => import('./langs/jsonnet.mjs')\n },\n {\n \"id\": \"jssm\",\n \"name\": \"JSSM\",\n \"aliases\": [\n \"fsl\"\n ],\n \"import\": () => import('./langs/jssm.mjs')\n },\n {\n \"id\": \"jsx\",\n \"name\": \"JSX\",\n \"import\": () => import('./langs/jsx.mjs')\n },\n {\n \"id\": \"julia\",\n \"name\": \"Julia\",\n \"aliases\": [\n \"jl\"\n ],\n \"import\": () => import('./langs/julia.mjs')\n },\n {\n \"id\": \"kotlin\",\n \"name\": \"Kotlin\",\n \"aliases\": [\n \"kt\",\n \"kts\"\n ],\n \"import\": () => import('./langs/kotlin.mjs')\n },\n {\n \"id\": \"kusto\",\n \"name\": \"Kusto\",\n \"aliases\": [\n \"kql\"\n ],\n \"import\": () => import('./langs/kusto.mjs')\n },\n {\n \"id\": \"latex\",\n \"name\": \"LaTeX\",\n \"import\": () => import('./langs/latex.mjs')\n },\n {\n \"id\": \"lean\",\n \"name\": \"Lean 4\",\n \"aliases\": [\n \"lean4\"\n ],\n \"import\": () => import('./langs/lean.mjs')\n },\n {\n \"id\": \"less\",\n \"name\": \"Less\",\n \"import\": () => import('./langs/less.mjs')\n },\n {\n \"id\": \"liquid\",\n \"name\": \"Liquid\",\n \"import\": () => import('./langs/liquid.mjs')\n },\n {\n \"id\": \"log\",\n \"name\": \"Log file\",\n \"import\": () => import('./langs/log.mjs')\n },\n {\n \"id\": \"logo\",\n \"name\": \"Logo\",\n \"import\": () => import('./langs/logo.mjs')\n },\n {\n \"id\": \"lua\",\n \"name\": \"Lua\",\n \"import\": () => import('./langs/lua.mjs')\n },\n {\n \"id\": \"luau\",\n \"name\": \"Luau\",\n \"import\": () => import('./langs/luau.mjs')\n },\n {\n \"id\": \"make\",\n \"name\": \"Makefile\",\n \"aliases\": [\n \"makefile\"\n ],\n \"import\": () => import('./langs/make.mjs')\n },\n {\n \"id\": \"markdown\",\n \"name\": \"Markdown\",\n \"aliases\": [\n \"md\"\n ],\n \"import\": () => import('./langs/markdown.mjs')\n },\n {\n \"id\": \"marko\",\n \"name\": \"Marko\",\n \"import\": () => import('./langs/marko.mjs')\n },\n {\n \"id\": \"matlab\",\n \"name\": \"MATLAB\",\n \"import\": () => import('./langs/matlab.mjs')\n },\n {\n \"id\": \"mdc\",\n \"name\": \"MDC\",\n \"import\": () => import('./langs/mdc.mjs')\n },\n {\n \"id\": \"mdx\",\n \"name\": \"MDX\",\n \"import\": () => import('./langs/mdx.mjs')\n },\n {\n \"id\": \"mermaid\",\n \"name\": \"Mermaid\",\n \"aliases\": [\n \"mmd\"\n ],\n \"import\": () => import('./langs/mermaid.mjs')\n },\n {\n \"id\": \"mipsasm\",\n \"name\": \"MIPS Assembly\",\n \"aliases\": [\n \"mips\"\n ],\n \"import\": () => import('./langs/mipsasm.mjs')\n },\n {\n \"id\": \"mojo\",\n \"name\": \"Mojo\",\n \"import\": () => import('./langs/mojo.mjs')\n },\n {\n \"id\": \"move\",\n \"name\": \"Move\",\n \"import\": () => import('./langs/move.mjs')\n },\n {\n \"id\": \"narrat\",\n \"name\": \"Narrat Language\",\n \"aliases\": [\n \"nar\"\n ],\n \"import\": () => import('./langs/narrat.mjs')\n },\n {\n \"id\": \"nextflow\",\n \"name\": \"Nextflow\",\n \"aliases\": [\n \"nf\"\n ],\n \"import\": () => import('./langs/nextflow.mjs')\n },\n {\n \"id\": \"nginx\",\n \"name\": \"Nginx\",\n \"import\": () => import('./langs/nginx.mjs')\n },\n {\n \"id\": \"nim\",\n \"name\": \"Nim\",\n \"import\": () => import('./langs/nim.mjs')\n },\n {\n \"id\": \"nix\",\n \"name\": \"Nix\",\n \"import\": () => import('./langs/nix.mjs')\n },\n {\n \"id\": \"nushell\",\n \"name\": \"nushell\",\n \"aliases\": [\n \"nu\"\n ],\n \"import\": () => import('./langs/nushell.mjs')\n },\n {\n \"id\": \"objective-c\",\n \"name\": \"Objective-C\",\n \"aliases\": [\n \"objc\"\n ],\n \"import\": () => import('./langs/objective-c.mjs')\n },\n {\n \"id\": \"objective-cpp\",\n \"name\": \"Objective-C++\",\n \"import\": () => import('./langs/objective-cpp.mjs')\n },\n {\n \"id\": \"ocaml\",\n \"name\": \"OCaml\",\n \"import\": () => import('./langs/ocaml.mjs')\n },\n {\n \"id\": \"pascal\",\n \"name\": \"Pascal\",\n \"import\": () => import('./langs/pascal.mjs')\n },\n {\n \"id\": \"perl\",\n \"name\": \"Perl\",\n \"import\": () => import('./langs/perl.mjs')\n },\n {\n \"id\": \"php\",\n \"name\": \"PHP\",\n \"import\": () => import('./langs/php.mjs')\n },\n {\n \"id\": \"plsql\",\n \"name\": \"PL/SQL\",\n \"import\": () => import('./langs/plsql.mjs')\n },\n {\n \"id\": \"po\",\n \"name\": \"Gettext PO\",\n \"aliases\": [\n \"pot\",\n \"potx\"\n ],\n \"import\": () => import('./langs/po.mjs')\n },\n {\n \"id\": \"postcss\",\n \"name\": \"PostCSS\",\n \"import\": () => import('./langs/postcss.mjs')\n },\n {\n \"id\": \"powerquery\",\n \"name\": \"PowerQuery\",\n \"import\": () => import('./langs/powerquery.mjs')\n },\n {\n \"id\": \"powershell\",\n \"name\": \"PowerShell\",\n \"aliases\": [\n \"ps\",\n \"ps1\"\n ],\n \"import\": () => import('./langs/powershell.mjs')\n },\n {\n \"id\": \"prisma\",\n \"name\": \"Prisma\",\n \"import\": () => import('./langs/prisma.mjs')\n },\n {\n \"id\": \"prolog\",\n \"name\": \"Prolog\",\n \"import\": () => import('./langs/prolog.mjs')\n },\n {\n \"id\": \"proto\",\n \"name\": \"Protocol Buffer 3\",\n \"aliases\": [\n \"protobuf\"\n ],\n \"import\": () => import('./langs/proto.mjs')\n },\n {\n \"id\": \"pug\",\n \"name\": \"Pug\",\n \"aliases\": [\n \"jade\"\n ],\n \"import\": () => import('./langs/pug.mjs')\n },\n {\n \"id\": \"puppet\",\n \"name\": \"Puppet\",\n \"import\": () => import('./langs/puppet.mjs')\n },\n {\n \"id\": \"purescript\",\n \"name\": \"PureScript\",\n \"import\": () => import('./langs/purescript.mjs')\n },\n {\n \"id\": \"python\",\n \"name\": \"Python\",\n \"aliases\": [\n \"py\"\n ],\n \"import\": () => import('./langs/python.mjs')\n },\n {\n \"id\": \"qml\",\n \"name\": \"QML\",\n \"import\": () => import('./langs/qml.mjs')\n },\n {\n \"id\": \"qmldir\",\n \"name\": \"QML Directory\",\n \"import\": () => import('./langs/qmldir.mjs')\n },\n {\n \"id\": \"qss\",\n \"name\": \"Qt Style Sheets\",\n \"import\": () => import('./langs/qss.mjs')\n },\n {\n \"id\": \"r\",\n \"name\": \"R\",\n \"import\": () => import('./langs/r.mjs')\n },\n {\n \"id\": \"racket\",\n \"name\": \"Racket\",\n \"import\": () => import('./langs/racket.mjs')\n },\n {\n \"id\": \"raku\",\n \"name\": \"Raku\",\n \"aliases\": [\n \"perl6\"\n ],\n \"import\": () => import('./langs/raku.mjs')\n },\n {\n \"id\": \"razor\",\n \"name\": \"ASP.NET Razor\",\n \"import\": () => import('./langs/razor.mjs')\n },\n {\n \"id\": \"reg\",\n \"name\": \"Windows Registry Script\",\n \"import\": () => import('./langs/reg.mjs')\n },\n {\n \"id\": \"regexp\",\n \"name\": \"RegExp\",\n \"aliases\": [\n \"regex\"\n ],\n \"import\": () => import('./langs/regexp.mjs')\n },\n {\n \"id\": \"rel\",\n \"name\": \"Rel\",\n \"import\": () => import('./langs/rel.mjs')\n },\n {\n \"id\": \"riscv\",\n \"name\": \"RISC-V\",\n \"import\": () => import('./langs/riscv.mjs')\n },\n {\n \"id\": \"rst\",\n \"name\": \"reStructuredText\",\n \"import\": () => import('./langs/rst.mjs')\n },\n {\n \"id\": \"ruby\",\n \"name\": \"Ruby\",\n \"aliases\": [\n \"rb\"\n ],\n \"import\": () => import('./langs/ruby.mjs')\n },\n {\n \"id\": \"rust\",\n \"name\": \"Rust\",\n \"aliases\": [\n \"rs\"\n ],\n \"import\": () => import('./langs/rust.mjs')\n },\n {\n \"id\": \"sas\",\n \"name\": \"SAS\",\n \"import\": () => import('./langs/sas.mjs')\n },\n {\n \"id\": \"sass\",\n \"name\": \"Sass\",\n \"import\": () => import('./langs/sass.mjs')\n },\n {\n \"id\": \"scala\",\n \"name\": \"Scala\",\n \"import\": () => import('./langs/scala.mjs')\n },\n {\n \"id\": \"scheme\",\n \"name\": \"Scheme\",\n \"import\": () => import('./langs/scheme.mjs')\n },\n {\n \"id\": \"scss\",\n \"name\": \"SCSS\",\n \"import\": () => import('./langs/scss.mjs')\n },\n {\n \"id\": \"shaderlab\",\n \"name\": \"ShaderLab\",\n \"aliases\": [\n \"shader\"\n ],\n \"import\": () => import('./langs/shaderlab.mjs')\n },\n {\n \"id\": \"shellscript\",\n \"name\": \"Shell\",\n \"aliases\": [\n \"bash\",\n \"sh\",\n \"shell\",\n \"zsh\"\n ],\n \"import\": () => import('./langs/shellscript.mjs')\n },\n {\n \"id\": \"shellsession\",\n \"name\": \"Shell Session\",\n \"aliases\": [\n \"console\"\n ],\n \"import\": () => import('./langs/shellsession.mjs')\n },\n {\n \"id\": \"smalltalk\",\n \"name\": \"Smalltalk\",\n \"import\": () => import('./langs/smalltalk.mjs')\n },\n {\n \"id\": \"solidity\",\n \"name\": \"Solidity\",\n \"import\": () => import('./langs/solidity.mjs')\n },\n {\n \"id\": \"soy\",\n \"name\": \"Closure Templates\",\n \"aliases\": [\n \"closure-templates\"\n ],\n \"import\": () => import('./langs/soy.mjs')\n },\n {\n \"id\": \"sparql\",\n \"name\": \"SPARQL\",\n \"import\": () => import('./langs/sparql.mjs')\n },\n {\n \"id\": \"splunk\",\n \"name\": \"Splunk Query Language\",\n \"aliases\": [\n \"spl\"\n ],\n \"import\": () => import('./langs/splunk.mjs')\n },\n {\n \"id\": \"sql\",\n \"name\": \"SQL\",\n \"import\": () => import('./langs/sql.mjs')\n },\n {\n \"id\": \"ssh-config\",\n \"name\": \"SSH Config\",\n \"import\": () => import('./langs/ssh-config.mjs')\n },\n {\n \"id\": \"stata\",\n \"name\": \"Stata\",\n \"import\": () => import('./langs/stata.mjs')\n },\n {\n \"id\": \"stylus\",\n \"name\": \"Stylus\",\n \"aliases\": [\n \"styl\"\n ],\n \"import\": () => import('./langs/stylus.mjs')\n },\n {\n \"id\": \"svelte\",\n \"name\": \"Svelte\",\n \"import\": () => import('./langs/svelte.mjs')\n },\n {\n \"id\": \"swift\",\n \"name\": \"Swift\",\n \"import\": () => import('./langs/swift.mjs')\n },\n {\n \"id\": \"system-verilog\",\n \"name\": \"SystemVerilog\",\n \"import\": () => import('./langs/system-verilog.mjs')\n },\n {\n \"id\": \"systemd\",\n \"name\": \"Systemd Units\",\n \"import\": () => import('./langs/systemd.mjs')\n },\n {\n \"id\": \"tasl\",\n \"name\": \"Tasl\",\n \"import\": () => import('./langs/tasl.mjs')\n },\n {\n \"id\": \"tcl\",\n \"name\": \"Tcl\",\n \"import\": () => import('./langs/tcl.mjs')\n },\n {\n \"id\": \"templ\",\n \"name\": \"Templ\",\n \"import\": () => import('./langs/templ.mjs')\n },\n {\n \"id\": \"terraform\",\n \"name\": \"Terraform\",\n \"aliases\": [\n \"tf\",\n \"tfvars\"\n ],\n \"import\": () => import('./langs/terraform.mjs')\n },\n {\n \"id\": \"tex\",\n \"name\": \"TeX\",\n \"import\": () => import('./langs/tex.mjs')\n },\n {\n \"id\": \"toml\",\n \"name\": \"TOML\",\n \"import\": () => import('./langs/toml.mjs')\n },\n {\n \"id\": \"ts-tags\",\n \"name\": \"TypeScript with Tags\",\n \"aliases\": [\n \"lit\"\n ],\n \"import\": () => import('./langs/ts-tags.mjs')\n },\n {\n \"id\": \"tsv\",\n \"name\": \"TSV\",\n \"import\": () => import('./langs/tsv.mjs')\n },\n {\n \"id\": \"tsx\",\n \"name\": \"TSX\",\n \"import\": () => import('./langs/tsx.mjs')\n },\n {\n \"id\": \"turtle\",\n \"name\": \"Turtle\",\n \"import\": () => import('./langs/turtle.mjs')\n },\n {\n \"id\": \"twig\",\n \"name\": \"Twig\",\n \"import\": () => import('./langs/twig.mjs')\n },\n {\n \"id\": \"typescript\",\n \"name\": \"TypeScript\",\n \"aliases\": [\n \"ts\"\n ],\n \"import\": () => import('./langs/typescript.mjs')\n },\n {\n \"id\": \"typespec\",\n \"name\": \"TypeSpec\",\n \"aliases\": [\n \"tsp\"\n ],\n \"import\": () => import('./langs/typespec.mjs')\n },\n {\n \"id\": \"typst\",\n \"name\": \"Typst\",\n \"aliases\": [\n \"typ\"\n ],\n \"import\": () => import('./langs/typst.mjs')\n },\n {\n \"id\": \"v\",\n \"name\": \"V\",\n \"import\": () => import('./langs/v.mjs')\n },\n {\n \"id\": \"vala\",\n \"name\": \"Vala\",\n \"import\": () => import('./langs/vala.mjs')\n },\n {\n \"id\": \"vb\",\n \"name\": \"Visual Basic\",\n \"aliases\": [\n \"cmd\"\n ],\n \"import\": () => import('./langs/vb.mjs')\n },\n {\n \"id\": \"verilog\",\n \"name\": \"Verilog\",\n \"import\": () => import('./langs/verilog.mjs')\n },\n {\n \"id\": \"vhdl\",\n \"name\": \"VHDL\",\n \"import\": () => import('./langs/vhdl.mjs')\n },\n {\n \"id\": \"viml\",\n \"name\": \"Vim Script\",\n \"aliases\": [\n \"vim\",\n \"vimscript\"\n ],\n \"import\": () => import('./langs/viml.mjs')\n },\n {\n \"id\": \"vue\",\n \"name\": \"Vue\",\n \"import\": () => import('./langs/vue.mjs')\n },\n {\n \"id\": \"vue-html\",\n \"name\": \"Vue HTML\",\n \"import\": () => import('./langs/vue-html.mjs')\n },\n {\n \"id\": \"vyper\",\n \"name\": \"Vyper\",\n \"aliases\": [\n \"vy\"\n ],\n \"import\": () => import('./langs/vyper.mjs')\n },\n {\n \"id\": \"wasm\",\n \"name\": \"WebAssembly\",\n \"import\": () => import('./langs/wasm.mjs')\n },\n {\n \"id\": \"wenyan\",\n \"name\": \"Wenyan\",\n \"aliases\": [\n \"\\u6587\\u8A00\"\n ],\n \"import\": () => import('./langs/wenyan.mjs')\n },\n {\n \"id\": \"wgsl\",\n \"name\": \"WGSL\",\n \"import\": () => import('./langs/wgsl.mjs')\n },\n {\n \"id\": \"wikitext\",\n \"name\": \"Wikitext\",\n \"aliases\": [\n \"mediawiki\",\n \"wiki\"\n ],\n \"import\": () => import('./langs/wikitext.mjs')\n },\n {\n \"id\": \"wolfram\",\n \"name\": \"Wolfram\",\n \"aliases\": [\n \"wl\"\n ],\n \"import\": () => import('./langs/wolfram.mjs')\n },\n {\n \"id\": \"xml\",\n \"name\": \"XML\",\n \"import\": () => import('./langs/xml.mjs')\n },\n {\n \"id\": \"xsl\",\n \"name\": \"XSL\",\n \"import\": () => import('./langs/xsl.mjs')\n },\n {\n \"id\": \"yaml\",\n \"name\": \"YAML\",\n \"aliases\": [\n \"yml\"\n ],\n \"import\": () => import('./langs/yaml.mjs')\n },\n {\n \"id\": \"zenscript\",\n \"name\": \"ZenScript\",\n \"import\": () => import('./langs/zenscript.mjs')\n },\n {\n \"id\": \"zig\",\n \"name\": \"Zig\",\n \"import\": () => import('./langs/zig.mjs')\n }\n];\nconst bundledLanguagesBase = Object.fromEntries(bundledLanguagesInfo.map((i) => [i.id, i.import]));\nconst bundledLanguagesAlias = Object.fromEntries(bundledLanguagesInfo.flatMap((i) => i.aliases?.map((a) => [a, i.import]) || []));\nconst bundledLanguages = {\n ...bundledLanguagesBase,\n ...bundledLanguagesAlias\n};\n\nexport { bundledLanguages, bundledLanguagesAlias, bundledLanguagesBase, bundledLanguagesInfo };\n","const bundledThemesInfo = [\n {\n \"id\": \"andromeeda\",\n \"displayName\": \"Andromeeda\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/andromeeda.mjs')\n },\n {\n \"id\": \"aurora-x\",\n \"displayName\": \"Aurora X\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/aurora-x.mjs')\n },\n {\n \"id\": \"ayu-dark\",\n \"displayName\": \"Ayu Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/ayu-dark.mjs')\n },\n {\n \"id\": \"catppuccin-frappe\",\n \"displayName\": \"Catppuccin Frapp\\xE9\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/catppuccin-frappe.mjs')\n },\n {\n \"id\": \"catppuccin-latte\",\n \"displayName\": \"Catppuccin Latte\",\n \"type\": \"light\",\n \"import\": () => import('./themes/catppuccin-latte.mjs')\n },\n {\n \"id\": \"catppuccin-macchiato\",\n \"displayName\": \"Catppuccin Macchiato\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/catppuccin-macchiato.mjs')\n },\n {\n \"id\": \"catppuccin-mocha\",\n \"displayName\": \"Catppuccin Mocha\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/catppuccin-mocha.mjs')\n },\n {\n \"id\": \"dark-plus\",\n \"displayName\": \"Dark Plus\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/dark-plus.mjs')\n },\n {\n \"id\": \"dracula\",\n \"displayName\": \"Dracula Theme\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/dracula.mjs')\n },\n {\n \"id\": \"dracula-soft\",\n \"displayName\": \"Dracula Theme Soft\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/dracula-soft.mjs')\n },\n {\n \"id\": \"everforest-dark\",\n \"displayName\": \"Everforest Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/everforest-dark.mjs')\n },\n {\n \"id\": \"everforest-light\",\n \"displayName\": \"Everforest Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/everforest-light.mjs')\n },\n {\n \"id\": \"github-dark\",\n \"displayName\": \"GitHub Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/github-dark.mjs')\n },\n {\n \"id\": \"github-dark-default\",\n \"displayName\": \"GitHub Dark Default\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/github-dark-default.mjs')\n },\n {\n \"id\": \"github-dark-dimmed\",\n \"displayName\": \"GitHub Dark Dimmed\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/github-dark-dimmed.mjs')\n },\n {\n \"id\": \"github-dark-high-contrast\",\n \"displayName\": \"GitHub Dark High Contrast\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/github-dark-high-contrast.mjs')\n },\n {\n \"id\": \"github-light\",\n \"displayName\": \"GitHub Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/github-light.mjs')\n },\n {\n \"id\": \"github-light-default\",\n \"displayName\": \"GitHub Light Default\",\n \"type\": \"light\",\n \"import\": () => import('./themes/github-light-default.mjs')\n },\n {\n \"id\": \"github-light-high-contrast\",\n \"displayName\": \"GitHub Light High Contrast\",\n \"type\": \"light\",\n \"import\": () => import('./themes/github-light-high-contrast.mjs')\n },\n {\n \"id\": \"houston\",\n \"displayName\": \"Houston\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/houston.mjs')\n },\n {\n \"id\": \"kanagawa-dragon\",\n \"displayName\": \"Kanagawa Dragon\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/kanagawa-dragon.mjs')\n },\n {\n \"id\": \"kanagawa-lotus\",\n \"displayName\": \"Kanagawa Lotus\",\n \"type\": \"light\",\n \"import\": () => import('./themes/kanagawa-lotus.mjs')\n },\n {\n \"id\": \"kanagawa-wave\",\n \"displayName\": \"Kanagawa Wave\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/kanagawa-wave.mjs')\n },\n {\n \"id\": \"laserwave\",\n \"displayName\": \"LaserWave\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/laserwave.mjs')\n },\n {\n \"id\": \"light-plus\",\n \"displayName\": \"Light Plus\",\n \"type\": \"light\",\n \"import\": () => import('./themes/light-plus.mjs')\n },\n {\n \"id\": \"material-theme\",\n \"displayName\": \"Material Theme\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/material-theme.mjs')\n },\n {\n \"id\": \"material-theme-darker\",\n \"displayName\": \"Material Theme Darker\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/material-theme-darker.mjs')\n },\n {\n \"id\": \"material-theme-lighter\",\n \"displayName\": \"Material Theme Lighter\",\n \"type\": \"light\",\n \"import\": () => import('./themes/material-theme-lighter.mjs')\n },\n {\n \"id\": \"material-theme-ocean\",\n \"displayName\": \"Material Theme Ocean\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/material-theme-ocean.mjs')\n },\n {\n \"id\": \"material-theme-palenight\",\n \"displayName\": \"Material Theme Palenight\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/material-theme-palenight.mjs')\n },\n {\n \"id\": \"min-dark\",\n \"displayName\": \"Min Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/min-dark.mjs')\n },\n {\n \"id\": \"min-light\",\n \"displayName\": \"Min Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/min-light.mjs')\n },\n {\n \"id\": \"monokai\",\n \"displayName\": \"Monokai\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/monokai.mjs')\n },\n {\n \"id\": \"night-owl\",\n \"displayName\": \"Night Owl\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/night-owl.mjs')\n },\n {\n \"id\": \"nord\",\n \"displayName\": \"Nord\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/nord.mjs')\n },\n {\n \"id\": \"one-dark-pro\",\n \"displayName\": \"One Dark Pro\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/one-dark-pro.mjs')\n },\n {\n \"id\": \"one-light\",\n \"displayName\": \"One Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/one-light.mjs')\n },\n {\n \"id\": \"plastic\",\n \"displayName\": \"Plastic\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/plastic.mjs')\n },\n {\n \"id\": \"poimandres\",\n \"displayName\": \"Poimandres\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/poimandres.mjs')\n },\n {\n \"id\": \"red\",\n \"displayName\": \"Red\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/red.mjs')\n },\n {\n \"id\": \"rose-pine\",\n \"displayName\": \"Ros\\xE9 Pine\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/rose-pine.mjs')\n },\n {\n \"id\": \"rose-pine-dawn\",\n \"displayName\": \"Ros\\xE9 Pine Dawn\",\n \"type\": \"light\",\n \"import\": () => import('./themes/rose-pine-dawn.mjs')\n },\n {\n \"id\": \"rose-pine-moon\",\n \"displayName\": \"Ros\\xE9 Pine Moon\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/rose-pine-moon.mjs')\n },\n {\n \"id\": \"slack-dark\",\n \"displayName\": \"Slack Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/slack-dark.mjs')\n },\n {\n \"id\": \"slack-ochin\",\n \"displayName\": \"Slack Ochin\",\n \"type\": \"light\",\n \"import\": () => import('./themes/slack-ochin.mjs')\n },\n {\n \"id\": \"snazzy-light\",\n \"displayName\": \"Snazzy Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/snazzy-light.mjs')\n },\n {\n \"id\": \"solarized-dark\",\n \"displayName\": \"Solarized Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/solarized-dark.mjs')\n },\n {\n \"id\": \"solarized-light\",\n \"displayName\": \"Solarized Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/solarized-light.mjs')\n },\n {\n \"id\": \"synthwave-84\",\n \"displayName\": \"Synthwave '84\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/synthwave-84.mjs')\n },\n {\n \"id\": \"tokyo-night\",\n \"displayName\": \"Tokyo Night\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/tokyo-night.mjs')\n },\n {\n \"id\": \"vesper\",\n \"displayName\": \"Vesper\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/vesper.mjs')\n },\n {\n \"id\": \"vitesse-black\",\n \"displayName\": \"Vitesse Black\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/vitesse-black.mjs')\n },\n {\n \"id\": \"vitesse-dark\",\n \"displayName\": \"Vitesse Dark\",\n \"type\": \"dark\",\n \"import\": () => import('./themes/vitesse-dark.mjs')\n },\n {\n \"id\": \"vitesse-light\",\n \"displayName\": \"Vitesse Light\",\n \"type\": \"light\",\n \"import\": () => import('./themes/vitesse-light.mjs')\n }\n];\nconst bundledThemes = Object.fromEntries(bundledThemesInfo.map((i) => [i.id, i.import]));\n\nexport { bundledThemes, bundledThemesInfo };\n","class ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nexport { ShikiError };\n","/**\n * List of HTML void tag names.\n *\n * @type {Array<string>}\n */\nexport const htmlVoidElements = [\n 'area',\n 'base',\n 'basefont',\n 'bgsound',\n 'br',\n 'col',\n 'command',\n 'embed',\n 'frame',\n 'hr',\n 'image',\n 'img',\n 'input',\n 'keygen',\n 'link',\n 'meta',\n 'param',\n 'source',\n 'track',\n 'wbr'\n]\n","/**\n * @typedef {import('./info.js').Info} Info\n * @typedef {Record<string, Info>} Properties\n * @typedef {Record<string, string>} Normal\n */\n\nexport class Schema {\n /**\n * @constructor\n * @param {Properties} property\n * @param {Normal} normal\n * @param {string} [space]\n */\n constructor(property, normal, space) {\n this.property = property\n this.normal = normal\n if (space) {\n this.space = space\n }\n }\n}\n\n/** @type {Properties} */\nSchema.prototype.property = {}\n/** @type {Normal} */\nSchema.prototype.normal = {}\n/** @type {string|null} */\nSchema.prototype.space = null\n","export class Info {\n /**\n * @constructor\n * @param {string} property\n * @param {string} attribute\n */\n constructor(property, attribute) {\n /** @type {string} */\n this.property = property\n /** @type {string} */\n this.attribute = attribute\n }\n}\n\n/** @type {string|null} */\nInfo.prototype.space = null\nInfo.prototype.boolean = false\nInfo.prototype.booleanish = false\nInfo.prototype.overloadedBoolean = false\nInfo.prototype.number = false\nInfo.prototype.commaSeparated = false\nInfo.prototype.spaceSeparated = false\nInfo.prototype.commaOrSpaceSeparated = false\nInfo.prototype.mustUseProperty = false\nInfo.prototype.defined = false\n","import {create} from './util/create.js'\n\nexport const xlink = create({\n space: 'xlink',\n transform(_, prop) {\n return 'xlink:' + prop.slice(5).toLowerCase()\n },\n properties: {\n xLinkActuate: null,\n xLinkArcRole: null,\n xLinkHref: null,\n xLinkRole: null,\n xLinkShow: null,\n xLinkTitle: null,\n xLinkType: null\n }\n})\n","import {create} from './util/create.js'\n\nexport const xml = create({\n space: 'xml',\n transform(_, prop) {\n return 'xml:' + prop.slice(3).toLowerCase()\n },\n properties: {xmlLang: null, xmlBase: null, xmlSpace: null}\n})\n","import {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const xmlns = create({\n space: 'xmlns',\n attributes: {xmlnsxlink: 'xmlns:xlink'},\n transform: caseInsensitiveTransform,\n properties: {xmlns: null, xmlnsXLink: null}\n})\n","import {booleanish, number, spaceSeparated} from './util/types.js'\nimport {create} from './util/create.js'\n\nexport const aria = create({\n transform(_, prop) {\n return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase()\n },\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n }\n})\n","import {\n boolean,\n overloadedBoolean,\n booleanish,\n number,\n spaceSeparated,\n commaSeparated\n} from './util/types.js'\nimport {create} from './util/create.js'\nimport {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\n\nexport const html = create({\n space: 'html',\n attributes: {\n acceptcharset: 'accept-charset',\n classname: 'class',\n htmlfor: 'for',\n httpequiv: 'http-equiv'\n },\n transform: caseInsensitiveTransform,\n mustUseProperty: ['checked', 'multiple', 'muted', 'selected'],\n properties: {\n // Standard Properties.\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n blocking: spaceSeparated,\n capture: null,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n fetchPriority: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: boolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inert: boolean,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforeMatch: null,\n onBeforePrint: null,\n onBeforeToggle: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onScrollEnd: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n popover: null,\n popoverTarget: null,\n popoverTargetAction: null,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shadowRootClonable: boolean,\n shadowRootDelegatesFocus: boolean,\n shadowRootMode: null,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n writingSuggestions: null,\n\n // Legacy.\n // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis\n align: null, // Several. Use CSS `text-align` instead,\n aLink: null, // `<body>`. Use CSS `a:active {color}` instead\n archive: spaceSeparated, // `<object>`. List of URIs to archives\n axis: null, // `<td>` and `<th>`. Use `scope` on `<th>`\n background: null, // `<body>`. Use CSS `background-image` instead\n bgColor: null, // `<body>` and table elements. Use CSS `background-color` instead\n border: number, // `<table>`. Use CSS `border-width` instead,\n borderColor: null, // `<table>`. Use CSS `border-color` instead,\n bottomMargin: number, // `<body>`\n cellPadding: null, // `<table>`\n cellSpacing: null, // `<table>`\n char: null, // Several table elements. When `align=char`, sets the character to align on\n charOff: null, // Several table elements. When `char`, offsets the alignment\n classId: null, // `<object>`\n clear: null, // `<br>`. Use CSS `clear` instead\n code: null, // `<object>`\n codeBase: null, // `<object>`\n codeType: null, // `<object>`\n color: null, // `<font>` and `<hr>`. Use CSS instead\n compact: boolean, // Lists. Use CSS to reduce space between items instead\n declare: boolean, // `<object>`\n event: null, // `<script>`\n face: null, // `<font>`. Use CSS instead\n frame: null, // `<table>`\n frameBorder: null, // `<iframe>`. Use CSS `border` instead\n hSpace: number, // `<img>` and `<object>`\n leftMargin: number, // `<body>`\n link: null, // `<body>`. Use CSS `a:link {color: *}` instead\n longDesc: null, // `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`\n lowSrc: null, // `<img>`. Use a `<picture>`\n marginHeight: number, // `<body>`\n marginWidth: number, // `<body>`\n noResize: boolean, // `<frame>`\n noHref: boolean, // `<area>`. Use no href instead of an explicit `nohref`\n noShade: boolean, // `<hr>`. Use background-color and height instead of borders\n noWrap: boolean, // `<td>` and `<th>`\n object: null, // `<applet>`\n profile: null, // `<head>`\n prompt: null, // `<isindex>`\n rev: null, // `<link>`\n rightMargin: number, // `<body>`\n rules: null, // `<table>`\n scheme: null, // `<meta>`\n scrolling: booleanish, // `<frame>`. Use overflow in the child context\n standby: null, // `<object>`\n summary: null, // `<table>`\n text: null, // `<body>`. Use CSS `color` instead\n topMargin: number, // `<body>`\n valueType: null, // `<param>`\n version: null, // `<html>`. Use a doctype.\n vAlign: null, // Several. Use CSS `vertical-align` instead\n vLink: null, // `<body>`. Use CSS `a:visited {color}` instead\n vSpace: number, // `<img>` and `<object>`\n\n // Non-standard Properties.\n allowTransparency: null,\n autoCorrect: null,\n autoSave: null,\n disablePictureInPicture: boolean,\n disableRemotePlayback: boolean,\n prefix: null,\n property: null,\n results: number,\n security: null,\n unselectable: null\n }\n})\n","import {\n boolean,\n number,\n spaceSeparated,\n commaSeparated,\n commaOrSpaceSeparated\n} from './util/types.js'\nimport {create} from './util/create.js'\nimport {caseSensitiveTransform} from './util/case-sensitive-transform.js'\n\nexport const svg = create({\n space: 'svg',\n attributes: {\n accentHeight: 'accent-height',\n alignmentBaseline: 'alignment-baseline',\n arabicForm: 'arabic-form',\n baselineShift: 'baseline-shift',\n capHeight: 'cap-height',\n className: 'class',\n clipPath: 'clip-path',\n clipRule: 'clip-rule',\n colorInterpolation: 'color-interpolation',\n colorInterpolationFilters: 'color-interpolation-filters',\n colorProfile: 'color-profile',\n colorRendering: 'color-rendering',\n crossOrigin: 'crossorigin',\n dataType: 'datatype',\n dominantBaseline: 'dominant-baseline',\n enableBackground: 'enable-background',\n fillOpacity: 'fill-opacity',\n fillRule: 'fill-rule',\n floodColor: 'flood-color',\n floodOpacity: 'flood-opacity',\n fontFamily: 'font-family',\n fontSize: 'font-size',\n fontSizeAdjust: 'font-size-adjust',\n fontStretch: 'font-stretch',\n fontStyle: 'font-style',\n fontVariant: 'font-variant',\n fontWeight: 'font-weight',\n glyphName: 'glyph-name',\n glyphOrientationHorizontal: 'glyph-orientation-horizontal',\n glyphOrientationVertical: 'glyph-orientation-vertical',\n hrefLang: 'hreflang',\n horizAdvX: 'horiz-adv-x',\n horizOriginX: 'horiz-origin-x',\n horizOriginY: 'horiz-origin-y',\n imageRendering: 'image-rendering',\n letterSpacing: 'letter-spacing',\n lightingColor: 'lighting-color',\n markerEnd: 'marker-end',\n markerMid: 'marker-mid',\n markerStart: 'marker-start',\n navDown: 'nav-down',\n navDownLeft: 'nav-down-left',\n navDownRight: 'nav-down-right',\n navLeft: 'nav-left',\n navNext: 'nav-next',\n navPrev: 'nav-prev',\n navRight: 'nav-right',\n navUp: 'nav-up',\n navUpLeft: 'nav-up-left',\n navUpRight: 'nav-up-right',\n onAbort: 'onabort',\n onActivate: 'onactivate',\n onAfterPrint: 'onafterprint',\n onBeforePrint: 'onbeforeprint',\n onBegin: 'onbegin',\n onCancel: 'oncancel',\n onCanPlay: 'oncanplay',\n onCanPlayThrough: 'oncanplaythrough',\n onChange: 'onchange',\n onClick: 'onclick',\n onClose: 'onclose',\n onCopy: 'oncopy',\n onCueChange: 'oncuechange',\n onCut: 'oncut',\n onDblClick: 'ondblclick',\n onDrag: 'ondrag',\n onDragEnd: 'ondragend',\n onDragEnter: 'ondragenter',\n onDragExit: 'ondragexit',\n onDragLeave: 'ondragleave',\n onDragOver: 'ondragover',\n onDragStart: 'ondragstart',\n onDrop: 'ondrop',\n onDurationChange: 'ondurationchange',\n onEmptied: 'onemptied',\n onEnd: 'onend',\n onEnded: 'onended',\n onError: 'onerror',\n onFocus: 'onfocus',\n onFocusIn: 'onfocusin',\n onFocusOut: 'onfocusout',\n onHashChange: 'onhashchange',\n onInput: 'oninput',\n onInvalid: 'oninvalid',\n onKeyDown: 'onkeydown',\n onKeyPress: 'onkeypress',\n onKeyUp: 'onkeyup',\n onLoad: 'onload',\n onLoadedData: 'onloadeddata',\n onLoadedMetadata: 'onloadedmetadata',\n onLoadStart: 'onloadstart',\n onMessage: 'onmessage',\n onMouseDown: 'onmousedown',\n onMouseEnter: 'onmouseenter',\n onMouseLeave: 'onmouseleave',\n onMouseMove: 'onmousemove',\n onMouseOut: 'onmouseout',\n onMouseOver: 'onmouseover',\n onMouseUp: 'onmouseup',\n onMouseWheel: 'onmousewheel',\n onOffline: 'onoffline',\n onOnline: 'ononline',\n onPageHide: 'onpagehide',\n onPageShow: 'onpageshow',\n onPaste: 'onpaste',\n onPause: 'onpause',\n onPlay: 'onplay',\n onPlaying: 'onplaying',\n onPopState: 'onpopstate',\n onProgress: 'onprogress',\n onRateChange: 'onratechange',\n onRepeat: 'onrepeat',\n onReset: 'onreset',\n onResize: 'onresize',\n onScroll: 'onscroll',\n onSeeked: 'onseeked',\n onSeeking: 'onseeking',\n onSelect: 'onselect',\n onShow: 'onshow',\n onStalled: 'onstalled',\n onStorage: 'onstorage',\n onSubmit: 'onsubmit',\n onSuspend: 'onsuspend',\n onTimeUpdate: 'ontimeupdate',\n onToggle: 'ontoggle',\n onUnload: 'onunload',\n onVolumeChange: 'onvolumechange',\n onWaiting: 'onwaiting',\n onZoom: 'onzoom',\n overlinePosition: 'overline-position',\n overlineThickness: 'overline-thickness',\n paintOrder: 'paint-order',\n panose1: 'panose-1',\n pointerEvents: 'pointer-events',\n referrerPolicy: 'referrerpolicy',\n renderingIntent: 'rendering-intent',\n shapeRendering: 'shape-rendering',\n stopColor: 'stop-color',\n stopOpacity: 'stop-opacity',\n strikethroughPosition: 'strikethrough-position',\n strikethroughThickness: 'strikethrough-thickness',\n strokeDashArray: 'stroke-dasharray',\n strokeDashOffset: 'stroke-dashoffset',\n strokeLineCap: 'stroke-linecap',\n strokeLineJoin: 'stroke-linejoin',\n strokeMiterLimit: 'stroke-miterlimit',\n strokeOpacity: 'stroke-opacity',\n strokeWidth: 'stroke-width',\n tabIndex: 'tabindex',\n textAnchor: 'text-anchor',\n textDecoration: 'text-decoration',\n textRendering: 'text-rendering',\n transformOrigin: 'transform-origin',\n typeOf: 'typeof',\n underlinePosition: 'underline-position',\n underlineThickness: 'underline-thickness',\n unicodeBidi: 'unicode-bidi',\n unicodeRange: 'unicode-range',\n unitsPerEm: 'units-per-em',\n vAlphabetic: 'v-alphabetic',\n vHanging: 'v-hanging',\n vIdeographic: 'v-ideographic',\n vMathematical: 'v-mathematical',\n vectorEffect: 'vector-effect',\n vertAdvY: 'vert-adv-y',\n vertOriginX: 'vert-origin-x',\n vertOriginY: 'vert-origin-y',\n wordSpacing: 'word-spacing',\n writingMode: 'writing-mode',\n xHeight: 'x-height',\n // These were camelcased in Tiny. Now lowercased in SVG 2\n playbackOrder: 'playbackorder',\n timelineBegin: 'timelinebegin'\n },\n transform: caseSensitiveTransform,\n properties: {\n about: commaOrSpaceSeparated,\n accentHeight: number,\n accumulate: null,\n additive: null,\n alignmentBaseline: null,\n alphabetic: number,\n amplitude: number,\n arabicForm: null,\n ascent: number,\n attributeName: null,\n attributeType: null,\n azimuth: number,\n bandwidth: null,\n baselineShift: null,\n baseFrequency: null,\n baseProfile: null,\n bbox: null,\n begin: null,\n bias: number,\n by: null,\n calcMode: null,\n capHeight: number,\n className: spaceSeparated,\n clip: null,\n clipPath: null,\n clipPathUnits: null,\n clipRule: null,\n color: null,\n colorInterpolation: null,\n colorInterpolationFilters: null,\n colorProfile: null,\n colorRendering: null,\n content: null,\n contentScriptType: null,\n contentStyleType: null,\n crossOrigin: null,\n cursor: null,\n cx: null,\n cy: null,\n d: null,\n dataType: null,\n defaultAction: null,\n descent: number,\n diffuseConstant: number,\n direction: null,\n display: null,\n dur: null,\n divisor: number,\n dominantBaseline: null,\n download: boolean,\n dx: null,\n dy: null,\n edgeMode: null,\n editable: null,\n elevation: number,\n enableBackground: null,\n end: null,\n event: null,\n exponent: number,\n externalResourcesRequired: null,\n fill: null,\n fillOpacity: number,\n fillRule: null,\n filter: null,\n filterRes: null,\n filterUnits: null,\n floodColor: null,\n floodOpacity: null,\n focusable: null,\n focusHighlight: null,\n fontFamily: null,\n fontSize: null,\n fontSizeAdjust: null,\n fontStretch: null,\n fontStyle: null,\n fontVariant: null,\n fontWeight: null,\n format: null,\n fr: null,\n from: null,\n fx: null,\n fy: null,\n g1: commaSeparated,\n g2: commaSeparated,\n glyphName: commaSeparated,\n glyphOrientationHorizontal: null,\n glyphOrientationVertical: null,\n glyphRef: null,\n gradientTransform: null,\n gradientUnits: null,\n handler: null,\n hanging: number,\n hatchContentUnits: null,\n hatchUnits: null,\n height: null,\n href: null,\n hrefLang: null,\n horizAdvX: number,\n horizOriginX: number,\n horizOriginY: number,\n id: null,\n ideographic: number,\n imageRendering: null,\n initialVisibility: null,\n in: null,\n in2: null,\n intercept: number,\n k: number,\n k1: number,\n k2: number,\n k3: number,\n k4: number,\n kernelMatrix: commaOrSpaceSeparated,\n kernelUnitLength: null,\n keyPoints: null, // SEMI_COLON_SEPARATED\n keySplines: null, // SEMI_COLON_SEPARATED\n keyTimes: null, // SEMI_COLON_SEPARATED\n kerning: null,\n lang: null,\n lengthAdjust: null,\n letterSpacing: null,\n lightingColor: null,\n limitingConeAngle: number,\n local: null,\n markerEnd: null,\n markerMid: null,\n markerStart: null,\n markerHeight: null,\n markerUnits: null,\n markerWidth: null,\n mask: null,\n maskContentUnits: null,\n maskUnits: null,\n mathematical: null,\n max: null,\n media: null,\n mediaCharacterEncoding: null,\n mediaContentEncodings: null,\n mediaSize: number,\n mediaTime: null,\n method: null,\n min: null,\n mode: null,\n name: null,\n navDown: null,\n navDownLeft: null,\n navDownRight: null,\n navLeft: null,\n navNext: null,\n navPrev: null,\n navRight: null,\n navUp: null,\n navUpLeft: null,\n navUpRight: null,\n numOctaves: null,\n observer: null,\n offset: null,\n onAbort: null,\n onActivate: null,\n onAfterPrint: null,\n onBeforePrint: null,\n onBegin: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnd: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFocusIn: null,\n onFocusOut: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadStart: null,\n onMessage: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onMouseWheel: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRepeat: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onShow: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onZoom: null,\n opacity: null,\n operator: null,\n order: null,\n orient: null,\n orientation: null,\n origin: null,\n overflow: null,\n overlay: null,\n overlinePosition: number,\n overlineThickness: number,\n paintOrder: null,\n panose1: null,\n path: null,\n pathLength: number,\n patternContentUnits: null,\n patternTransform: null,\n patternUnits: null,\n phase: null,\n ping: spaceSeparated,\n pitch: null,\n playbackOrder: null,\n pointerEvents: null,\n points: null,\n pointsAtX: number,\n pointsAtY: number,\n pointsAtZ: number,\n preserveAlpha: null,\n preserveAspectRatio: null,\n primitiveUnits: null,\n propagate: null,\n property: commaOrSpaceSeparated,\n r: null,\n radius: null,\n referrerPolicy: null,\n refX: null,\n refY: null,\n rel: commaOrSpaceSeparated,\n rev: commaOrSpaceSeparated,\n renderingIntent: null,\n repeatCount: null,\n repeatDur: null,\n requiredExtensions: commaOrSpaceSeparated,\n requiredFeatures: commaOrSpaceSeparated,\n requiredFonts: commaOrSpaceSeparated,\n requiredFormats: commaOrSpaceSeparated,\n resource: null,\n restart: null,\n result: null,\n rotate: null,\n rx: null,\n ry: null,\n scale: null,\n seed: null,\n shapeRendering: null,\n side: null,\n slope: null,\n snapshotTime: null,\n specularConstant: number,\n specularExponent: number,\n spreadMethod: null,\n spacing: null,\n startOffset: null,\n stdDeviation: null,\n stemh: null,\n stemv: null,\n stitchTiles: null,\n stopColor: null,\n stopOpacity: null,\n strikethroughPosition: number,\n strikethroughThickness: number,\n string: null,\n stroke: null,\n strokeDashArray: commaOrSpaceSeparated,\n strokeDashOffset: null,\n strokeLineCap: null,\n strokeLineJoin: null,\n strokeMiterLimit: number,\n strokeOpacity: number,\n strokeWidth: null,\n style: null,\n surfaceScale: number,\n syncBehavior: null,\n syncBehaviorDefault: null,\n syncMaster: null,\n syncTolerance: null,\n syncToleranceDefault: null,\n systemLanguage: commaOrSpaceSeparated,\n tabIndex: number,\n tableValues: null,\n target: null,\n targetX: number,\n targetY: number,\n textAnchor: null,\n textDecoration: null,\n textRendering: null,\n textLength: null,\n timelineBegin: null,\n title: null,\n transformBehavior: null,\n type: null,\n typeOf: commaOrSpaceSeparated,\n to: null,\n transform: null,\n transformOrigin: null,\n u1: null,\n u2: null,\n underlinePosition: number,\n underlineThickness: number,\n unicode: null,\n unicodeBidi: null,\n unicodeRange: null,\n unitsPerEm: number,\n values: null,\n vAlphabetic: number,\n vMathematical: number,\n vectorEffect: null,\n vHanging: number,\n vIdeographic: number,\n version: null,\n vertAdvY: number,\n vertOriginX: number,\n vertOriginY: number,\n viewBox: null,\n viewTarget: null,\n visibility: null,\n width: null,\n widths: null,\n wordSpacing: null,\n writingMode: null,\n x: null,\n x1: null,\n x2: null,\n xChannelSelector: null,\n xHeight: number,\n y: null,\n y1: null,\n y2: null,\n yChannelSelector: null,\n z: null,\n zoomAndPan: null\n }\n})\n","/**\n * @typedef {import('./lib/util/info.js').Info} Info\n * @typedef {import('./lib/util/schema.js').Schema} Schema\n */\n\nimport {merge} from './lib/util/merge.js'\nimport {xlink} from './lib/xlink.js'\nimport {xml} from './lib/xml.js'\nimport {xmlns} from './lib/xmlns.js'\nimport {aria} from './lib/aria.js'\nimport {html as htmlBase} from './lib/html.js'\nimport {svg as svgBase} from './lib/svg.js'\n\nexport {find} from './lib/find.js'\nexport {hastToReact} from './lib/hast-to-react.js'\nexport {normalize} from './lib/normalize.js'\nexport const html = merge([xml, xlink, xmlns, aria, htmlBase], 'html')\nexport const svg = merge([xml, xlink, xmlns, aria, svgBase], 'svg')\n","/**\n * @callback Handler\n * Handle a value, with a certain ID field set to a certain value.\n * The ID field is passed to `zwitch`, and it’s value is this function’s\n * place on the `handlers` record.\n * @param {...any} parameters\n * Arbitrary parameters passed to the zwitch.\n * The first will be an object with a certain ID field set to a certain value.\n * @returns {any}\n * Anything!\n */\n\n/**\n * @callback UnknownHandler\n * Handle values that do have a certain ID field, but it’s set to a value\n * that is not listed in the `handlers` record.\n * @param {unknown} value\n * An object with a certain ID field set to an unknown value.\n * @param {...any} rest\n * Arbitrary parameters passed to the zwitch.\n * @returns {any}\n * Anything!\n */\n\n/**\n * @callback InvalidHandler\n * Handle values that do not have a certain ID field.\n * @param {unknown} value\n * Any unknown value.\n * @param {...any} rest\n * Arbitrary parameters passed to the zwitch.\n * @returns {void|null|undefined|never}\n * This should crash or return nothing.\n */\n\n/**\n * @template {InvalidHandler} [Invalid=InvalidHandler]\n * @template {UnknownHandler} [Unknown=UnknownHandler]\n * @template {Record<string, Handler>} [Handlers=Record<string, Handler>]\n * @typedef Options\n * Configuration (required).\n * @property {Invalid} [invalid]\n * Handler to use for invalid values.\n * @property {Unknown} [unknown]\n * Handler to use for unknown values.\n * @property {Handlers} [handlers]\n * Handlers to use.\n */\n\nconst own = {}.hasOwnProperty\n\n/**\n * Handle values based on a field.\n *\n * @template {InvalidHandler} [Invalid=InvalidHandler]\n * @template {UnknownHandler} [Unknown=UnknownHandler]\n * @template {Record<string, Handler>} [Handlers=Record<string, Handler>]\n * @param {string} key\n * Field to switch on.\n * @param {Options<Invalid, Unknown, Handlers>} [options]\n * Configuration (required).\n * @returns {{unknown: Unknown, invalid: Invalid, handlers: Handlers, (...parameters: Parameters<Handlers[keyof Handlers]>): ReturnType<Handlers[keyof Handlers]>, (...parameters: Parameters<Unknown>): ReturnType<Unknown>}}\n */\nexport function zwitch(key, options) {\n const settings = options || {}\n\n /**\n * Handle one value.\n *\n * Based on the bound `key`, a respective handler will be called.\n * If `value` is not an object, or doesn’t have a `key` property, the special\n * “invalid” handler will be called.\n * If `value` has an unknown `key`, the special “unknown” handler will be\n * called.\n *\n * All arguments, and the context object, are passed through to the handler,\n * and it’s result is returned.\n *\n * @this {unknown}\n * Any context object.\n * @param {unknown} [value]\n * Any value.\n * @param {...unknown} parameters\n * Arbitrary parameters passed to the zwitch.\n * @property {Handler} invalid\n * Handle for values that do not have a certain ID field.\n * @property {Handler} unknown\n * Handle values that do have a certain ID field, but it’s set to a value\n * that is not listed in the `handlers` record.\n * @property {Handlers} handlers\n * Record of handlers.\n * @returns {unknown}\n * Anything.\n */\n function one(value, ...parameters) {\n /** @type {Handler|undefined} */\n let fn = one.invalid\n const handlers = one.handlers\n\n if (value && own.call(value, key)) {\n // @ts-expect-error Indexable.\n const id = String(value[key])\n // @ts-expect-error Indexable.\n fn = own.call(handlers, id) ? handlers[id] : one.unknown\n }\n\n if (fn) {\n return fn.call(this, value, ...parameters)\n }\n }\n\n one.handlers = settings.handlers || {}\n one.invalid = settings.invalid\n one.unknown = settings.unknown\n\n // @ts-expect-error: matches!\n return one\n}\n","/**\n * List of legacy HTML named character references that don’t need a trailing semicolon.\n *\n * @type {Array<string>}\n */\nexport const characterEntitiesLegacy = [\n 'AElig',\n 'AMP',\n 'Aacute',\n 'Acirc',\n 'Agrave',\n 'Aring',\n 'Atilde',\n 'Auml',\n 'COPY',\n 'Ccedil',\n 'ETH',\n 'Eacute',\n 'Ecirc',\n 'Egrave',\n 'Euml',\n 'GT',\n 'Iacute',\n 'Icirc',\n 'Igrave',\n 'Iuml',\n 'LT',\n 'Ntilde',\n 'Oacute',\n 'Ocirc',\n 'Ograve',\n 'Oslash',\n 'Otilde',\n 'Ouml',\n 'QUOT',\n 'REG',\n 'THORN',\n 'Uacute',\n 'Ucirc',\n 'Ugrave',\n 'Uuml',\n 'Yacute',\n 'aacute',\n 'acirc',\n 'acute',\n 'aelig',\n 'agrave',\n 'amp',\n 'aring',\n 'atilde',\n 'auml',\n 'brvbar',\n 'ccedil',\n 'cedil',\n 'cent',\n 'copy',\n 'curren',\n 'deg',\n 'divide',\n 'eacute',\n 'ecirc',\n 'egrave',\n 'eth',\n 'euml',\n 'frac12',\n 'frac14',\n 'frac34',\n 'gt',\n 'iacute',\n 'icirc',\n 'iexcl',\n 'igrave',\n 'iquest',\n 'iuml',\n 'laquo',\n 'lt',\n 'macr',\n 'micro',\n 'middot',\n 'nbsp',\n 'not',\n 'ntilde',\n 'oacute',\n 'ocirc',\n 'ograve',\n 'ordf',\n 'ordm',\n 'oslash',\n 'otilde',\n 'ouml',\n 'para',\n 'plusmn',\n 'pound',\n 'quot',\n 'raquo',\n 'reg',\n 'sect',\n 'shy',\n 'sup1',\n 'sup2',\n 'sup3',\n 'szlig',\n 'thorn',\n 'times',\n 'uacute',\n 'ucirc',\n 'ugrave',\n 'uml',\n 'uuml',\n 'yacute',\n 'yen',\n 'yuml'\n]\n","/**\n * Map of named character references from HTML 4.\n *\n * @type {Record<string, string>}\n */\nexport const characterEntitiesHtml4 = {\n nbsp: ' ',\n iexcl: '¡',\n cent: '¢',\n pound: '£',\n curren: '¤',\n yen: '¥',\n brvbar: '¦',\n sect: '§',\n uml: '¨',\n copy: '©',\n ordf: 'ª',\n laquo: '«',\n not: '¬',\n shy: '',\n reg: '®',\n macr: '¯',\n deg: '°',\n plusmn: '±',\n sup2: '²',\n sup3: '³',\n acute: '´',\n micro: 'µ',\n para: '¶',\n middot: '·',\n cedil: '¸',\n sup1: '¹',\n ordm: 'º',\n raquo: '»',\n frac14: '¼',\n frac12: '½',\n frac34: '¾',\n iquest: '¿',\n Agrave: 'À',\n Aacute: 'Á',\n Acirc: 'Â',\n Atilde: 'Ã',\n Auml: 'Ä',\n Aring: 'Å',\n AElig: 'Æ',\n Ccedil: 'Ç',\n Egrave: 'È',\n Eacute: 'É',\n Ecirc: 'Ê',\n Euml: 'Ë',\n Igrave: 'Ì',\n Iacute: 'Í',\n Icirc: 'Î',\n Iuml: 'Ï',\n ETH: 'Ð',\n Ntilde: 'Ñ',\n Ograve: 'Ò',\n Oacute: 'Ó',\n Ocirc: 'Ô',\n Otilde: 'Õ',\n Ouml: 'Ö',\n times: '×',\n Oslash: 'Ø',\n Ugrave: 'Ù',\n Uacute: 'Ú',\n Ucirc: 'Û',\n Uuml: 'Ü',\n Yacute: 'Ý',\n THORN: 'Þ',\n szlig: 'ß',\n agrave: 'à',\n aacute: 'á',\n acirc: 'â',\n atilde: 'ã',\n auml: 'ä',\n aring: 'å',\n aelig: 'æ',\n ccedil: 'ç',\n egrave: 'è',\n eacute: 'é',\n ecirc: 'ê',\n euml: 'ë',\n igrave: 'ì',\n iacute: 'í',\n icirc: 'î',\n iuml: 'ï',\n eth: 'ð',\n ntilde: 'ñ',\n ograve: 'ò',\n oacute: 'ó',\n ocirc: 'ô',\n otilde: 'õ',\n ouml: 'ö',\n divide: '÷',\n oslash: 'ø',\n ugrave: 'ù',\n uacute: 'ú',\n ucirc: 'û',\n uuml: 'ü',\n yacute: 'ý',\n thorn: 'þ',\n yuml: 'ÿ',\n fnof: 'ƒ',\n Alpha: 'Α',\n Beta: 'Β',\n Gamma: 'Γ',\n Delta: 'Δ',\n Epsilon: 'Ε',\n Zeta: 'Ζ',\n Eta: 'Η',\n Theta: 'Θ',\n Iota: 'Ι',\n Kappa: 'Κ',\n Lambda: 'Λ',\n Mu: 'Μ',\n Nu: 'Ν',\n Xi: 'Ξ',\n Omicron: 'Ο',\n Pi: 'Π',\n Rho: 'Ρ',\n Sigma: 'Σ',\n Tau: 'Τ',\n Upsilon: 'Υ',\n Phi: 'Φ',\n Chi: 'Χ',\n Psi: 'Ψ',\n Omega: 'Ω',\n alpha: 'α',\n beta: 'β',\n gamma: 'γ',\n delta: 'δ',\n epsilon: 'ε',\n zeta: 'ζ',\n eta: 'η',\n theta: 'θ',\n iota: 'ι',\n kappa: 'κ',\n lambda: 'λ',\n mu: 'μ',\n nu: 'ν',\n xi: 'ξ',\n omicron: 'ο',\n pi: 'π',\n rho: 'ρ',\n sigmaf: 'ς',\n sigma: 'σ',\n tau: 'τ',\n upsilon: 'υ',\n phi: 'φ',\n chi: 'χ',\n psi: 'ψ',\n omega: 'ω',\n thetasym: 'ϑ',\n upsih: 'ϒ',\n piv: 'ϖ',\n bull: '•',\n hellip: '…',\n prime: '′',\n Prime: '″',\n oline: '‾',\n frasl: '⁄',\n weierp: '℘',\n image: 'ℑ',\n real: 'ℜ',\n trade: '™',\n alefsym: 'ℵ',\n larr: '←',\n uarr: '↑',\n rarr: '→',\n darr: '↓',\n harr: '↔',\n crarr: '↵',\n lArr: '⇐',\n uArr: '⇑',\n rArr: '⇒',\n dArr: '⇓',\n hArr: '⇔',\n forall: '∀',\n part: '∂',\n exist: '∃',\n empty: '∅',\n nabla: '∇',\n isin: '∈',\n notin: '∉',\n ni: '∋',\n prod: '∏',\n sum: '∑',\n minus: '−',\n lowast: '∗',\n radic: '√',\n prop: '∝',\n infin: '∞',\n ang: '∠',\n and: '∧',\n or: '∨',\n cap: '∩',\n cup: '∪',\n int: '∫',\n there4: '∴',\n sim: '∼',\n cong: '≅',\n asymp: '≈',\n ne: '≠',\n equiv: '≡',\n le: '≤',\n ge: '≥',\n sub: '⊂',\n sup: '⊃',\n nsub: '⊄',\n sube: '⊆',\n supe: '⊇',\n oplus: '⊕',\n otimes: '⊗',\n perp: '⊥',\n sdot: '⋅',\n lceil: '⌈',\n rceil: '⌉',\n lfloor: '⌊',\n rfloor: '⌋',\n lang: '〈',\n rang: '〉',\n loz: '◊',\n spades: '♠',\n clubs: '♣',\n hearts: '♥',\n diams: '♦',\n quot: '\"',\n amp: '&',\n lt: '<',\n gt: '>',\n OElig: 'Œ',\n oelig: 'œ',\n Scaron: 'Š',\n scaron: 'š',\n Yuml: 'Ÿ',\n circ: 'ˆ',\n tilde: '˜',\n ensp: ' ',\n emsp: ' ',\n thinsp: ' ',\n zwnj: '',\n zwj: '',\n lrm: '',\n rlm: '',\n ndash: '–',\n mdash: '—',\n lsquo: '‘',\n rsquo: '’',\n sbquo: '‚',\n ldquo: '“',\n rdquo: '”',\n bdquo: '„',\n dagger: '†',\n Dagger: '‡',\n permil: '‰',\n lsaquo: '‹',\n rsaquo: '›',\n euro: '€'\n}\n","/**\n * List of legacy (that don’t need a trailing `;`) named references which could,\n * depending on what follows them, turn into a different meaning\n *\n * @type {Array<string>}\n */\nexport const dangerous = [\n 'cent',\n 'copy',\n 'divide',\n 'gt',\n 'lt',\n 'not',\n 'para',\n 'times'\n]\n","/**\n * @import {Comment, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {stringifyEntities} from 'stringify-entities'\n\nconst htmlCommentRegex = /^>|^->|<!--|-->|--!>|<!-$/g\n\n// Declare arrays as variables so it can be cached by `stringifyEntities`\nconst bogusCommentEntitySubset = ['>']\nconst commentEntitySubset = ['<', '>']\n\n/**\n * Serialize a comment.\n *\n * @param {Comment} node\n * Node to handle.\n * @param {number | undefined} _1\n * Index of `node` in `parent.\n * @param {Parents | undefined} _2\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function comment(node, _1, _2, state) {\n // See: <https://html.spec.whatwg.org/multipage/syntax.html#comments>\n return state.settings.bogusComments\n ? '<?' +\n stringifyEntities(\n node.value,\n Object.assign({}, state.settings.characterReferences, {\n subset: bogusCommentEntitySubset\n })\n ) +\n '>'\n : '<!--' + node.value.replace(htmlCommentRegex, encode) + '-->'\n\n /**\n * @param {string} $0\n */\n function encode($0) {\n return stringifyEntities(\n $0,\n Object.assign({}, state.settings.characterReferences, {\n subset: commentEntitySubset\n })\n )\n }\n}\n","/**\n * @import {Element, Parents} from 'hast'\n */\n\nimport {whitespace} from 'hast-util-whitespace'\nimport {siblingAfter, siblingBefore} from './util/siblings.js'\nimport {closing} from './closing.js'\nimport {omission} from './omission.js'\n\nexport const opening = omission({\n body,\n colgroup,\n head,\n html,\n tbody\n})\n\n/**\n * Whether to omit `<html>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction html(node) {\n const head = siblingAfter(node, -1)\n return !head || head.type !== 'comment'\n}\n\n/**\n * Whether to omit `<head>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction head(node) {\n /** @type {Set<string>} */\n const seen = new Set()\n\n // Whether `srcdoc` or not,\n // make sure the content model at least doesn’t have too many `base`s/`title`s.\n for (const child of node.children) {\n if (\n child.type === 'element' &&\n (child.tagName === 'base' || child.tagName === 'title')\n ) {\n if (seen.has(child.tagName)) return false\n seen.add(child.tagName)\n }\n }\n\n // “May be omitted if the element is empty,\n // or if the first thing inside the head element is an element.”\n const child = node.children[0]\n return !child || child.type === 'element'\n}\n\n/**\n * Whether to omit `<body>`.\n *\n * @param {Element} node\n * Element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction body(node) {\n const head = siblingAfter(node, -1, true)\n\n return (\n !head ||\n (head.type !== 'comment' &&\n !(head.type === 'text' && whitespace(head.value.charAt(0))) &&\n !(\n head.type === 'element' &&\n (head.tagName === 'meta' ||\n head.tagName === 'link' ||\n head.tagName === 'script' ||\n head.tagName === 'style' ||\n head.tagName === 'template')\n ))\n )\n}\n\n/**\n * Whether to omit `<colgroup>`.\n * The spec describes some logic for the opening tag, but it’s easier to\n * implement in the closing tag, to the same effect, so we handle it there\n * instead.\n *\n * @param {Element} node\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction colgroup(node, index, parent) {\n const previous = siblingBefore(parent, index)\n const head = siblingAfter(node, -1, true)\n\n // Previous colgroup was already omitted.\n if (\n parent &&\n previous &&\n previous.type === 'element' &&\n previous.tagName === 'colgroup' &&\n closing(previous, parent.children.indexOf(previous), parent)\n ) {\n return false\n }\n\n return Boolean(head && head.type === 'element' && head.tagName === 'col')\n}\n\n/**\n * Whether to omit `<tbody>`.\n *\n * @param {Element} node\n * Element.\n * @param {number | undefined} index\n * Index of element in parent.\n * @param {Parents | undefined} parent\n * Parent of element.\n * @returns {boolean}\n * Whether the opening tag can be omitted.\n */\nfunction tbody(node, index, parent) {\n const previous = siblingBefore(parent, index)\n const head = siblingAfter(node, -1)\n\n // Previous table section was already omitted.\n if (\n parent &&\n previous &&\n previous.type === 'element' &&\n (previous.tagName === 'thead' || previous.tagName === 'tbody') &&\n closing(previous, parent.children.indexOf(previous), parent)\n ) {\n return false\n }\n\n return Boolean(head && head.type === 'element' && head.tagName === 'tr')\n}\n","/**\n * @import {Nodes, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\nimport {zwitch} from 'zwitch'\nimport {comment} from './comment.js'\nimport {doctype} from './doctype.js'\nimport {element} from './element.js'\nimport {raw} from './raw.js'\nimport {root} from './root.js'\nimport {text} from './text.js'\n\n/**\n * @type {(node: Nodes, index: number | undefined, parent: Parents | undefined, state: State) => string}\n */\nexport const handle = zwitch('type', {\n invalid,\n unknown,\n handlers: {comment, doctype, element, raw, root, text}\n})\n\n/**\n * Fail when a non-node is found in the tree.\n *\n * @param {unknown} node\n * Unknown value.\n * @returns {never}\n * Never.\n */\nfunction invalid(node) {\n throw new Error('Expected node, not `' + node + '`')\n}\n\n/**\n * Fail when a node with an unknown type is found in the tree.\n *\n * @param {unknown} node_\n * Unknown node.\n * @returns {never}\n * Never.\n */\nfunction unknown(node_) {\n // `type` is guaranteed by runtime JS.\n const node = /** @type {Nodes} */ (node_)\n throw new Error('Cannot compile unknown node `' + node.type + '`')\n}\n","/**\n * @import {Doctype, Parents} from 'hast'\n * @import {State} from '../index.js'\n */\n\n/**\n * Serialize a doctype.\n *\n * @param {Doctype} _1\n * Node to handle.\n * @param {number | undefined} _2\n * Index of `node` in `parent.\n * @param {Parents | undefined} _3\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function doctype(_1, _2, _3, state) {\n return (\n '<!' +\n (state.settings.upperDoctype ? 'DOCTYPE' : 'doctype') +\n (state.settings.tightDoctype ? '' : ' ') +\n 'html>'\n )\n}\n","/**\n * @import {Parents} from 'hast'\n * @import {Raw} from 'mdast-util-to-hast'\n * @import {State} from '../index.js'\n */\n\nimport {text} from './text.js'\n\n/**\n * Serialize a raw node.\n *\n * @param {Raw} node\n * Node to handle.\n * @param {number | undefined} index\n * Index of `node` in `parent.\n * @param {Parents | undefined} parent\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function raw(node, index, parent, state) {\n return state.settings.allowDangerousHtml\n ? node.value\n : text(node, index, parent, state)\n}\n","/**\n * @import {Parents, Root} from 'hast'\n * @import {State} from '../index.js'\n */\n\n/**\n * Serialize a root.\n *\n * @param {Root} node\n * Node to handle.\n * @param {number | undefined} _1\n * Index of `node` in `parent.\n * @param {Parents | undefined} _2\n * Parent of `node`.\n * @param {State} state\n * Info passed around about the current state.\n * @returns {string}\n * Serialized node.\n */\nexport function root(node, _1, _2, state) {\n return state.all(node)\n}\n","/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html, CSSResultArray, TemplateResult, PropertyValueMap } from 'lit-element';\nimport { customElement, state, property } from 'lit/decorators.js';\nimport { styles } from './nile-highlighter.css';\nimport NileElement from '../internal/nile-element';\n\nimport { createHighlighter } from 'shiki'\nimport { ShikiTheme, ShikiLanguage } from './theme-list';\n\n\n/**\n * Nile highlighter component.\n *\n * @tag nile-highlighter\n *\n */\n@customElement('nile-highlighter')\nexport class NileHighlighter extends NileElement {\n\n\t@property({ type: String}) code = ``;\n\t\n\t@property({ type: String, reflect:true }) language : ShikiLanguage = 'javascript';\n\n\t@property({ type: String, reflect:true }) theme: ShikiTheme = 'min-light';\n\n\t@state() highlightedCode = '';\n\n\tprivate highlighter:any;\n\t\n\t/**\n\t * The styles for nile-highlighter\n\t * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n\t */\n\tpublic static get styles(): CSSResultArray {\n\t\treturn [styles];\n\t}\n\n\t/* #endregion */\n\n\tprotected async updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>) {\n\t\tif (changedProperties.has('language') || changedProperties.has('theme')) {\n\t\t\tawait this.updateHighlighter()\n\t\t}\n\t\tif (changedProperties.has('code') || changedProperties.has('language') || changedProperties.has('theme')) {\n\t\t\tawait this.updateHighlightedCode()\n\t\t}\n\t}\n\t/* #region Methods */\n\t/**\n\t * Render method\n\t * @slot This is a slot test\n\t */\n\tpublic render(): TemplateResult {\n\t\treturn html`\n\t\t\t\t<div class=\"code-container\" .innerHTML=${this.highlightedCode}></div>\n\t\t\t`;\n\t}\n\n\tasync updateHighlighter(){\n\t\tthis.highlighter = await createHighlighter({\n\t\t\tthemes: [this.theme],\n\t\t\tlangs: [this.language],\n\t\t})\n\t}\n\n\tasync updateHighlightedCode(){\n\t\tthis.highlightedCode = await this.highlighter.codeToHtml(this.code, {\n\t\t\tlang: this.language,\n\t\t\ttheme: this.theme,\n\t\t});\n\t}\n\n\t/* #endregion */\n}\n\nexport default NileHighlighter;\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'nile-highlighter': NileHighlighter;\n\t}\n}"],"names":["_emscripten_get_now","performance","now","Date","main","async","init","e","n","i","updateGlobalBufferAndViews","emscripten_realloc_buffer","size","UTF8ToString","ptr","maxBytesToRead","heapOrArray","idx","endIdx","endPtr","buffer","UTF8Decoder","decode","subarray","str","u0","String","fromCharCode","u1","u2","ch","UTF8ArrayToString","binding","HEAPU8","wasmMemory","grow","byteLength","_unused","buf","Uint8Array","HEAPU32","Uint32Array","TextDecoder","undefined","asmLibraryArg","emscripten_get_now","emscripten_memcpy_big","dest","src","num","copyWithin","emscripten_resize_heap","requestedSize","oldSize","length","maxHeapSize","cutDown","overGrownHeapSize","Math","min","alignUp","max","fd_write","_context10","next","info","env","wasi_snapshot_preview1","exports","memory","Object","assign","_context9","stop","_callee8","createWasm","_callee9","_f","apply","arguments","loadWasm","options","initPromise","_regeneratorRuntime","wrap","_callee2$","_context3","prev","instance","instantiator","dataOrOptions","isInstantiatorModule","data","isDataOptionsObject","Response","isResponse","ArrayBuffer","isView","Buffer","isBuffer","SharedArrayBuffer","isArrayBuffer","WebAssembly","Module","_makeArrayBufferLoader","instantiateStreaming","importObject","t3","sent","_ref3","_asyncToGenerator","mark","arrayBuffer","instantiate","_context2","_callee","_x3","_makeResponseNonStreamingLoader","default","_callee2","_x2","_ref2","onigBinding","_load","createOnigurumaEngine","createScanner","patterns","OnigScanner","createString","s","OnigString","_context11","_callee10","_x5","doClone","something","Array","isArray","arr","r","len","cloneArray","obj","key","cloneObj","mergeObjects","target","sources","forEach","source","basename","path","lastIndexOf","substring","substr","strcmp","a","b","strArrCmp","len1","len2","res","isValidHexColor","hex","test","escapeRegExpCharacters","value","replace","_matchesScope","scopeName","scopePattern","startsWith","createMatchers","selector","matchesName","results","tokenizer","input","regex","match","exec","newTokenizer","token","priority","charAt","console","log","matcher","parseConjunction","push","t","parseOperand","o","expressionToNegate","matcherInput","expressionInParents","matchers","some","matcher2","parseInnerExpression","isIdentifier","identifiers","every","disposeOnigString","dispose","collectReferencesOfReference","reference","baseGrammarScopeName","repo","result","selfGrammar","lookup","Error","baseGrammar","TopLevelRuleReference","collectExternalReferencesInTopLevelRule","collectExternalReferencesInTopLevelRepositoryRule","ruleName","repository","injections","_iterator4","_createForOfIteratorHelper","_step4","done","injection","add","err","f","context","collectExternalReferencesInRules","values","rules","_iterator5","_step5","rule","visitedRule","has","patternRepository","include","parseInclude","kind","newContext","TopLevelRepositoryRuleReference","BaseReference","SelfReference","indexOfSharp","indexOf","TopLevelReference","RelativeReference","TopLevelRepositoryReference","_tokenizeString","grammar","lineText","isFirstLine","linePos","stack","lineTokens","checkWhileConditions","timeLimit","lineLength","content","STOP","anchorPosition","whileCheckResult","beginRuleCapturedEOL","whileRules","node","pop","nodeRule","getRule","BeginWhileRule","whileRule","_Tt","prepareRuleWhileSearch","endRule","ruleScanner","findOptions","findNextMatchSync","ruleId","whileRuleId","captureIndices","produce","start","handleCaptures","whileCaptures","end","_checkWhileConditions","startTime","TokenizeStringResult","scanNext","p","matchResult","prepareRuleSearch","matchedRuleId","matchRule","getInjections","injectionResult","bestMatchRuleId","bestMatchRating","Number","MAX_VALUE","bestMatchCaptureIndices","bestMatchResultPriority","scopes","contentNameScopesList","getScopeNames","matchRating","priorityMatch","matchInjections","matchResultScore","injectionResultScore","matchRuleOrInjections","hasAdvanced","endRuleId","poppedRule","withContentNameScopesList","nameScopesList","endCaptures","popped","parent","getAnchorPos","getEnterPos","_rule","beforePush","getName","pushAttributed","BeginEndRule","pushedRule","beginCaptures","contentName","getContentName","endHasBackReferences","withEndRule","getEndWithResolvedBackReferences","hasSameRuleAs","whileHasBackReferences","getWhileWithResolvedBackReferences","captures","safePop","endRegexSource","allowA","allowG","compileAG","compileWhileAG","lineTextContent","localStack","maxEnd","captureRule","captureIndex","endPos","produceFromScopes","retokenizeCapturedWithRuleId","stackClone","onigSubStr","createOnigString","captureRuleScopeName","captureRuleScopesList","LocalStackElement","collectInjections","ruleFactoryHelper","nameMatcher","RuleFactory","getCompiledRuleId","_iterator9","_step9","debugSelector","identifers","lastIndex","identifier","scopesAreMatching","thisScopeName","initGrammar","base","$self","$vscodeTextmateLocation","name","$base","merge","definitions","space","property","normal","index","Schema","normalize","toLowerCase","increment","oe","pow","powers","create","definition","prop","properties","own","call","DefinedInfo","transform","attributes","mustUseProperty","includes","attribute","caseSensitiveTransform","caseInsensitiveTransform","kebab","$0","camelcase","toUpperCase","core","subset","cached","subsetToRegexCache","get","groups","regexEscapeRegex","RegExp","join","charactersToExpression","set","charactersToExpressionCached","defaultSubsetRegex","basic","escapeOnly","surrogatePairsRegex","pair","all","format","charCodeAt","controlCharactersRegex","character","formatSmart","code","named","numeric","omit","toString","hexadecimalRegex","toHexadecimal","omitOptionalSemicolons","useNamedReferences","useShortestReferences","characters","characterEntitiesLegacy","dangerous","notAlphanumericRegex","toNamed","decimal","decimalRegex","toDecimal","stringifyEntities","ccount","TypeError","count","stringify","settings","concat","_toConsumableArray","padRight","padLeft","trim","whitespace","thing","_typeof","type","empty","re","siblings","includeWhitespace","children","emptyChildren","offset","omission","handlers","tagName","headOrColgroupOrCaption","_","siblingAfter","rubyElement","cells","serializeAttribute","state","schema","Type","Info","slice","valid","rest","dash","dashes","cap","find","x","allowParseErrors","y","allowDangerousCharacters","quote","overloadedBoolean","boolean","Boolean","isNaN","characterReferences","constants","commaSeparated","commas","spaces","tightCommaSeparatedLists","collapseEmptyAttributes","preferUnquoted","unquoted","quoteSmart","alternative","single","text","textEntitySubset","one","handle","this","splitLines","preserveEnding","parts","split","lines","_n34","line","isPlainLang","lang","isSpecialLang","isNoneTheme","theme","isSpecialTheme","addClassToHast","className","_a","class","targets","_iterator19","_step19","c","normalizeGetter","Promise","resolve","then","_context12","_callee11","_On","resolveColorReplacements","replacements","colorReplacements","themeName","_i12","_Object$entries","entries","_Object$entries$_i","_slicedToArray","applyColorReplacements","color","getTokenStyleObject","styles","bgColor","fontStyle","FontStyle","Italic","Bold","Underline","stringifyTokenStyle","map","_ref6","_ref7","setLastGrammarStateToMap","keys","_grammarStateMap","getLastGrammarStateFromMap","getScopes","visited","Set","pushScope","stack2","transformerDecorations","WeakMap","getContext","shiki","meta","normalizePosition","ShikiError","_objectSpread","converter","indexToPos","JSON","posToIndex","_ref8","_ref9","_iterator20","_step20","createPositionConverter","decorations","d","items","foo","j","bar","isFooHasBarStart","isFooHasBarEnd","isBarHasFooStart","isBarHasFooEnd","verifyIntersections","tokens","splitted","breakpoints","sorted","from","sort","flatMap","breakpointsInToken","filter","offsets","lastOffset","_iterator21","_step21","splitToken","splitTokens","codeEl","_this$options$decorat2","ctx","applyLineSection","decoration","lineEl","startIndex","endIndex","POSITIVE_INFINITY","alwaysWrap","wrapper","applyDecoration","splice","applyLine","el","_e$properties","lineApplies","_iterator22","_loop2","_i14","unshift","_step22","_loop","getTransformers","transformers","builtInTransformers","findSequence","position","nextEscape","nextClose","sequence","startPosition","parseColor","colorMode","rgb","parseInt","colorIndex","parseSequence","commands","codeInt","namedColors","_Jn","_Jn3","createColorPalette","namedColorsMap","defaultNamedColorsMap","namedColor","rgbColor","padStart","colorTable","tableColor","levels","g","level","getColorTable","tokenizeAnsiWithTheme","fileContents","colorPalette","fromEntries","colors","parser","foreground","background","decorations2","parse","findResult","_iterator23","_step23","styleToken","clear","_iterator24","_step24","createAnsiSequenceParser","bg","fg","hexMatch","alpha","round","cssVarMatch","dimColor","None","codeToTokensBase","internal","_n$lang","getLoadedThemes","_t$setTheme","setTheme","colorMap","_grammar","getLanguage","grammarState","ShikiError$1","themes","_tokenizeWithTheme","GrammarState","stateStack","tokenizeWithTheme","tokenizeMaxLineLength","_r$tokenizeMaxLineLen","_r$tokenizeTimeLimit","tokenizeTimeLimit","getInternalStack","getGrammarStack","INITIAL","grammarContextCode","actual","final","_a$_t","lineOffset","resultWithScopes","tokensWithScopes","tokensWithScopesIndex","includeExplanation","tokenizeLine","tokenizeLine2","tokensLength","nextStartIndex","metadata","EncodedTokenMetadata","getForeground","getFontStyle","themeSettingsSelectors","_iterator25","_step25","setting","selectors","scope","explanation","tokenWithScopes","tokenWithScopesText","explainThemeScopesFull","ruleStack","themeSelectors","themeMatches","explainThemeScope","matchesOne","matches","parentScopes","selectorParentIndex","parentIndex","_iterator26","_step26","_step26$value","_step27","_iterator27","selectorPieces","codeToTokensWithThemes","themedTokens","tokens2","outThemes","_loop3","_i21","outLines","i2","indexes","current","l","minLength","syncThemesTokenization","mergedTokens","lineIdx","_token","tokenIdx","mergedToken","variants","themeIdx","_t$e$r","__","___","mergedGrammarState","codeToTokens","rootStyle","_n$defaultColor","defaultColor","cssVariablePrefix","themeTokens","themeRegs","getTheme","themesOrder","merged","variantsOrder","styleKeys","mergedStyles","cur","_iterator28","_step28","keyName","varKey","htmlStyle","mergeToken","themeColorReplacements","_theme","codeToHast","_options","transformerContext","_code","_iterator29","_step29","transformer","preprocess","_si","_n$mergeWhitespaces","mergeWhitespaces","newLine","carryOnContent","firstOffset","couldMerge","mergeWhitespaceTokens","_e46","leading","trailing","expanded","splitWhitespaceTokens","contextSource","_iterator30","_step30","root","structure","tabindex","preNode","style","_ref11","_ref12","codeNode","lineNodes","An","pre","lineNode","col","_iterator31","_step31","tokenNode","htmlAttrs","_iterator33","_step33","span","_iterator32","_step32","_iterator34","_step34","_iterator35","_step35","_iterator36","_step36","tokensToHast","codeToHtml","tree","options_","emptyOptions","omitOptionalTags","tightAttributes","upperDoctype","tightDoctype","bogusComments","tightSelfClosing","allowDangerousHtml","voids","htmlVoidElements","emptyCharacterReferences","closeSelfClosing","closeEmptyElements","svg","html","toHtml","_iterator37","_step37","postprocess","normalizeTheme","rawTheme","RESOLVED_KEY","tokenColors","_t96$settings","_t96$settings2","_e$colors","_e$colors2","globalSetting","VSCODE_FALLBACK_EDITOR_FG","light","dark","VSCODE_FALLBACK_EDITOR_BG","replacementCount","replacementMap","Map","getReplacementColor","replaceFg","replaceBg","clone","replacement","_i23","_Object$keys2","_e$colors$_t","defineProperty","enumerable","writable","resolveLangs","langs","_callee13$","_context14","t0","flat","_callee13","resolveThemes","_callee15$","_context16","_di","createShikiInternal","_context19","engine","createOnigurumaEngine$1","_defaultWasmLoader","instancesCount","warnings","warn","isDisposed","resolver","Resolver","_registry","Registry","langAlias","_lastTheme","ensureNotDisposed","loadLanguageSync","langs2","loadLanguages","loadThemeSync","_len8","themes2","_iterator41","_step41","loadTheme","_defineProperty","getColorMap","_lang","getGrammar","getLoadedLanguages","loadLanguage","_context18","t1","abrupt","_callee17","_loadTheme","m","Symbol","createShikiInternalSync","_callee18","createHighlighterCore","_context20","getLastGrammarState","_len11","args","_len12","_key12","_i$theme","_e$setTheme","options2","getInternalContext","_Si","createdBundledHighlighter","arg1","arg2","arg3","bundledLanguages","bundledThemes","_ref23","resolveLang","resolveTheme","bundle","_themes","_t$themes","_t$langs","_len5","_len6","_x9","setters","_tslib","bundledLanguagesInfo","id","import","_import","_context","aliases","bundledThemesInfo","displayName","message","super","_this","_Error2","_this2","_inherits","_createClass","_wrapNativeSuper","multiple","UtfString","utf16Length","utf8Length","_utf8ByteLength","computeIndicesMapping","utf16OffsetToUtf8","utf8OffsetToUtf16","utf8Value","i8","i16","charCode","codePoint","wasSurrogatePair","nextCharCode","utf16Value","omalloc","codepoint","w","LAST_ID","_onigBinding","utfString","_sharedPtrInUse","_sharedPtr","convertUtf8OffsetToUtf16","utf8Offset","convertUtf16OffsetToUtf8","utf16Offset","ofree","static","v","strPtrsArr","strLenArr","strPtrsPtr","strLenPtr","scannerPtr","createOnigScanner","getLastOnigError","throwLastOnigError","_ptr","freeOnigScanner","string","arg","_findNextMatchSync","debugCall","resultPtr","findNextOnigScannerMatch","beg","CAPTURING_REGEX_SOURCE","RegexSource","hasCaptures","regexSource","replaceCaptures","captureSource","commandIndex","command","capture","CachedFn","E","fn","cache","Theme","R","_colorMap","_defaults","_root","_cachedMatchRoot","getDefaults","scopePath","effectiveRule","scopeMustMatch","_scopePathMatchesParentScopes","StyleAttributes","ScopeStack","createFromRawTheme","createFromParsedTheme","resultLen","entry","_scope","segments","lenJ","reverse","ParsedThemeRule","parseTheme","parsedThemeRules","defaultFontStyle","defaultForeground","defaultBackground","incomingDefaults","shift","ColorMap","defaults","getId","ThemeTrieElement","ThemeTrieElementRule","insert","resolveParsedThemeRules","_ScopeStack","getSegments","item","_extends","other","getExtensionIfDefined","scopeNames","_iterator","_step","I","foregroundId","backgroundId","G","FontStyle2","NotSet","Strikethrough","_lastColorId","_id2color","_color2id","_isFrozen","emptyParentScopes","freeze","scopeDepth","_ThemeTrieElementRule","acceptOverwrite","cloneArr","_mainRule","rulesWithParentScopes","_children","_rulesWithParentScopes","head","tail","dotIndex","hasOwnProperty","_ThemeTrieElement","_cmpBySpecificity","_doInsertHere","child","aParentIndex","bParentIndex","parentScopeLengthDiff","_classCallCheck","toBinaryStr","encodedTokenAttributes","print","languageId","_EncodedTokenMetadata","getLanguageId","tokenType","getTokenType","getBackground","containsBalancedBrackets","_languageId","_tokenType","_containsBalancedBracketsBit","_fontStyle","_foreground","_background","X","toKey","K","ExternalReferenceCollector","Y","_references","_seenReferenceKeys","ScopeDependencyProcessor","Q","initialScopeName","seenFullScopeRequests","seenPartialScopeRequests","processQueue","q","deps","_iterator2","_step2","dep","_iterator3","references","_step3","it","constructor","rt","ot","st","lt","HAS_BACK_REFERENCES","BACK_REFERENCING_END","Rule","ht","$location","_name","_nameIsCapturing","_contentName","_contentNameIsCapturing","location","filename","CaptureRule","dt","_this4","_ht","collectPatterns","out","compile","MatchRule","ft","_match","RegExpSource","_cachedCompiledPatterns","_this5","_ht2","debugMatchRegExp","_getCachedCompiledPatterns","RegExpSourceList","IncludeOnlyRule","gt","hasMissingPatterns","_this6","_ht3","_iterator6","_step6","pattern","jt","begin","applyEndPatternLast","_begin","_end","hasBackReferences","_this7","_ht4","debugBeginRegExp","debugEndRegExp","resolveBackReferences","_iterator7","_step7","setSource","yt","_while","_cachedCompiledWhilePatterns","_this8","_ht5","_iterator8","_step8","compileWhile","_getCachedCompiledWhilePatterns","createCaptureRule","helper","registerRule","desc","_RuleFactory","_compileCaptures","_compilePatterns","maximumCaptureId","captureId","numericCaptureId","localIncludedRule","externalGrammarName","externalGrammarInclude","externalGrammar","getExternalGrammar","externalIncludedRule","skipRule","regExpSource","lastPushedPos","output","hasAnchor","pos","nextCh","_anchorCache","_buildAnchorCache","_RegExpSource","newSource","capturedValues","g1","A0_G0_result","A0_G1_result","A1_G0_result","A1_G1_result","A0_G0","A0_G1","A1_G0","A1_G1","resolveAnchors","vt","_items","_hasAnchors","_cached","_disposeCaches","onigLib","regExps","CompiledRule","_resolveAnchors","kt","scanner","BasicScopeAttributes","St","_BasicScopeAttributesProvider","initialLanguageId","embeddedLanguages","_getBasicScopeAttributes","_scopeToLanguage","standardTokenType","_toStandardTokenType","_defaultAttributes","_embeddedLanguagesMatcher","ScopeMatcher","getDefaultAttributes","getBasicScopeAttributes","_NULL_SCOPE_METADATA","STANDARD_TOKEN_TYPE_REGEXP","BasicScopeAttributesProvider","Lt","scopesRegExp","escapedScopes","_ref4","_ref5","process","VSCODE_TEXTMATE_DEBUG","At","stoppedEarly","Pt","Grammar","$t","_rootScopeName","initialLanguage","tokenTypes","balancedBracketSelectors","grammarRepository","_onigLib","_basicScopeAttributesProvider","_rootId","_lastRuleId","_ruleId2desc","_includedGrammars","_grammarRepository","_injections","_tokenTypeMatchers","_i9","_Object$keys","_iterator10","_step10","_iterator11","_step11","getMetadataForScope","_collectInjections","scopeName2","rawInjections","expression","injectionScopeNames","injectionScopeName","injectionGrammar","injectionSelector","i1","factory","rawIncludedGrammar","prevState","_tokenize","getResult","getBinaryResult","emitBinaryTokens","StateStackImpl","NULL","reset","rawDefaultMetadata","defaultStyle","themeProvider","defaultMetadata","rootScopeName","scopeList","AttributedScopeStack","createRootAndLookUpScopeName","createRoot","onigLineText","LineTokens","tokenAttributes","equals","_AttributedScopeStack","_pushAttributed","_iterator12","_step12","self","fromExtension","namesScopeList","_e$scopePath","_iterator13","_step13","frame","rawRootMetadata","themeMatch","resolvedTokenAttributes","mergeAttributes","existingTokenAttributes","basicScopeAttributes","styleAttributes","rawMetadata","newPath","scopeThemeMatchResult","_StateStackImpl","enterPos","anchorPos","_stackElementBrand","depth","_enterPos","_anchorPos","_equals","_reset","_writeString","outIndex","contentNameScopeStack","toStateStackFrame","_this$parent$nameScop","_this$nameScopesList$","_this$contentNameScop2","_structuralEquals","pushFrame","_e$nameScopesList","_n$enterPos","_n$anchorPos","BalancedBracketSelectors","_t","balancedBracketScopes","unbalancedBracketScopes","allowAny","matchesAlways","_iterator14","_step14","excluder","_iterator15","_step15","includer","zt","tokenTypeOverrides","_emitBinaryTokens","_tokenTypeOverrides","_lineText","_tokens","_binaryTokens","_lastTokenEndIndex","scopesList","_t$tokenAttributes","_this$balancedBracket","matchesNever","_t$getScopeNames","scopes2","_iterator16","_step16","SyncRegistry","Ft","_grammars","_rawGrammars","_injectionGrammars","_iterator17","_step17","addGrammar","targetScope","grammarForScopeName","rawGrammar","createGrammar","Ht","_syncRegistry","_ensureGrammarCache","loadGrammarWithEmbeddedLanguages","loadGrammarWithConfiguration","configuration","_loadGrammar","unbalancedBracketSelectors","loadGrammar","dependencyProcessor","request","_loadSingleGrammar","_grammarForScopeName","_doLoadSingleGrammar","Vt","prototype","Kt","booleanish","number","spaceSeparated","commaOrSpaceSeparated","defined","checks","types","ae","mask","_this13","check","_assertThisInitialized","_Kt","xlink","xLinkActuate","xLinkArcRole","xLinkHref","xLinkRole","xLinkShow","xLinkTitle","xLinkType","xml","xmlLang","xmlBase","xmlSpace","xmlns","xmlnsxlink","xmlnsXLink","aria","ariaActiveDescendant","ariaAtomic","ariaAutoComplete","ariaBusy","ariaChecked","ariaColCount","ariaColIndex","ariaColSpan","ariaControls","ariaCurrent","ariaDescribedBy","ariaDetails","ariaDisabled","ariaDropEffect","ariaErrorMessage","ariaExpanded","ariaFlowTo","ariaGrabbed","ariaHasPopup","ariaHidden","ariaInvalid","ariaKeyShortcuts","ariaLabel","ariaLabelledBy","ariaLevel","ariaLive","ariaModal","ariaMultiLine","ariaMultiSelectable","ariaOrientation","ariaOwns","ariaPlaceholder","ariaPosInSet","ariaPressed","ariaReadOnly","ariaRelevant","ariaRequired","ariaRoleDescription","ariaRowCount","ariaRowIndex","ariaRowSpan","ariaSelected","ariaSetSize","ariaSort","ariaValueMax","ariaValueMin","ariaValueNow","ariaValueText","role","acceptcharset","classname","htmlfor","httpequiv","abbr","accept","acceptCharset","accessKey","action","allow","allowFullScreen","allowPaymentRequest","allowUserMedia","alt","as","autoCapitalize","autoComplete","autoFocus","autoPlay","blocking","charSet","checked","cite","cols","colSpan","contentEditable","controls","controlsList","coords","crossOrigin","dateTime","decoding","defer","dir","dirName","disabled","download","draggable","encType","enterKeyHint","fetchPriority","form","formAction","formEncType","formMethod","formNoValidate","formTarget","headers","height","hidden","high","href","hrefLang","htmlFor","httpEquiv","imageSizes","imageSrcSet","inert","inputMode","integrity","is","isMap","itemId","itemProp","itemRef","itemScope","itemType","label","language","list","loading","loop","low","manifest","maxLength","media","method","muted","nonce","noModule","noValidate","onAbort","onAfterPrint","onAuxClick","onBeforeMatch","onBeforePrint","onBeforeToggle","onBeforeUnload","onBlur","onCancel","onCanPlay","onCanPlayThrough","onChange","onClick","onClose","onContextLost","onContextMenu","onContextRestored","onCopy","onCueChange","onCut","onDblClick","onDrag","onDragEnd","onDragEnter","onDragExit","onDragLeave","onDragOver","onDragStart","onDrop","onDurationChange","onEmptied","onEnded","onError","onFocus","onFormData","onHashChange","onInput","onInvalid","onKeyDown","onKeyPress","onKeyUp","onLanguageChange","onLoad","onLoadedData","onLoadedMetadata","onLoadEnd","onLoadStart","onMessage","onMessageError","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onOffline","onOnline","onPageHide","onPageShow","onPaste","onPause","onPlay","onPlaying","onPopState","onProgress","onRateChange","onRejectionHandled","onReset","onResize","onScroll","onScrollEnd","onSecurityPolicyViolation","onSeeked","onSeeking","onSelect","onSlotChange","onStalled","onStorage","onSubmit","onSuspend","onTimeUpdate","onToggle","onUnhandledRejection","onUnload","onVolumeChange","onWaiting","onWheel","open","optimum","ping","placeholder","playsInline","popover","popoverTarget","popoverTargetAction","poster","preload","readOnly","referrerPolicy","rel","required","reversed","rows","rowSpan","sandbox","scoped","seamless","selected","shadowRootClonable","shadowRootDelegatesFocus","shadowRootMode","shape","sizes","slot","spellCheck","srcDoc","srcLang","srcSet","step","tabIndex","title","translate","typeMustMatch","useMap","width","writingSuggestions","align","aLink","archive","axis","border","borderColor","bottomMargin","cellPadding","cellSpacing","char","charOff","classId","codeBase","codeType","compact","declare","event","face","frameBorder","hSpace","leftMargin","link","longDesc","lowSrc","marginHeight","marginWidth","noResize","noHref","noShade","noWrap","object","profile","prompt","rev","rightMargin","scheme","scrolling","standby","summary","topMargin","valueType","version","vAlign","vLink","vSpace","allowTransparency","autoCorrect","autoSave","disablePictureInPicture","disableRemotePlayback","prefix","security","unselectable","accentHeight","alignmentBaseline","arabicForm","baselineShift","capHeight","clipPath","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","dataType","dominantBaseline","enableBackground","fillOpacity","fillRule","floodColor","floodOpacity","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontVariant","fontWeight","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","horizAdvX","horizOriginX","horizOriginY","imageRendering","letterSpacing","lightingColor","markerEnd","markerMid","markerStart","navDown","navDownLeft","navDownRight","navLeft","navNext","navPrev","navRight","navUp","navUpLeft","navUpRight","onActivate","onBegin","onEnd","onFocusIn","onFocusOut","onMouseWheel","onRepeat","onShow","onZoom","overlinePosition","overlineThickness","paintOrder","panose1","pointerEvents","renderingIntent","shapeRendering","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","strokeDashArray","strokeDashOffset","strokeLineCap","strokeLineJoin","strokeMiterLimit","strokeOpacity","strokeWidth","textAnchor","textDecoration","textRendering","transformOrigin","typeOf","underlinePosition","underlineThickness","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","vHanging","vIdeographic","vMathematical","vectorEffect","vertAdvY","vertOriginX","vertOriginY","wordSpacing","writingMode","xHeight","playbackOrder","timelineBegin","about","accumulate","additive","alphabetic","amplitude","ascent","attributeName","attributeType","azimuth","bandwidth","baseFrequency","baseProfile","bbox","bias","by","calcMode","clip","clipPathUnits","contentScriptType","contentStyleType","cursor","cx","cy","defaultAction","descent","diffuseConstant","direction","display","dur","divisor","dx","dy","edgeMode","editable","elevation","exponent","externalResourcesRequired","fill","filterRes","filterUnits","focusable","focusHighlight","fr","fx","fy","g2","glyphRef","gradientTransform","gradientUnits","handler","hanging","hatchContentUnits","hatchUnits","ideographic","initialVisibility","in","in2","intercept","k","k1","k2","k3","k4","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","kerning","lengthAdjust","limitingConeAngle","local","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","mathematical","mediaCharacterEncoding","mediaContentEncodings","mediaSize","mediaTime","mode","numOctaves","observer","opacity","operator","order","orient","orientation","origin","overflow","overlay","pathLength","patternContentUnits","patternTransform","patternUnits","phase","pitch","points","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","propagate","radius","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","requiredFonts","requiredFormats","resource","restart","rotate","rx","ry","scale","seed","side","slope","snapshotTime","specularConstant","specularExponent","spreadMethod","spacing","startOffset","stdDeviation","stemh","stemv","stitchTiles","stroke","surfaceScale","syncBehavior","syncBehaviorDefault","syncMaster","syncTolerance","syncToleranceDefault","systemLanguage","tableValues","targetX","targetY","textLength","transformBehavior","to","unicode","viewBox","viewTarget","visibility","widths","x1","x2","xChannelSelector","y1","y2","yChannelSelector","z","zoomAndPan","htmlBase","svgBase","characterEntitiesHtml4","nbsp","iexcl","cent","pound","curren","yen","brvbar","sect","uml","copy","ordf","laquo","not","shy","reg","macr","deg","plusmn","sup2","sup3","acute","micro","para","middot","cedil","sup1","ordm","raquo","frac14","frac12","frac34","iquest","Agrave","Aacute","Acirc","Atilde","Auml","Aring","AElig","Ccedil","Egrave","Eacute","Ecirc","Euml","Igrave","Iacute","Icirc","Iuml","ETH","Ntilde","Ograve","Oacute","Ocirc","Otilde","Ouml","times","Oslash","Ugrave","Uacute","Ucirc","Uuml","Yacute","THORN","szlig","agrave","aacute","acirc","atilde","auml","aring","aelig","ccedil","egrave","eacute","ecirc","euml","igrave","iacute","icirc","iuml","eth","ntilde","ograve","oacute","ocirc","otilde","ouml","divide","oslash","ugrave","uacute","ucirc","uuml","yacute","thorn","yuml","fnof","Alpha","Beta","Gamma","Delta","Epsilon","Zeta","Eta","Theta","Iota","Kappa","Lambda","Mu","Nu","Xi","Omicron","Pi","Rho","Sigma","Tau","Upsilon","Phi","Chi","Psi","Omega","beta","gamma","delta","epsilon","zeta","eta","theta","iota","kappa","lambda","mu","nu","xi","omicron","pi","rho","sigmaf","sigma","tau","upsilon","phi","chi","psi","omega","thetasym","upsih","piv","bull","hellip","prime","Prime","oline","frasl","weierp","image","real","trade","alefsym","larr","uarr","rarr","darr","harr","crarr","lArr","uArr","rArr","dArr","hArr","forall","part","exist","nabla","isin","notin","ni","prod","sum","minus","lowast","radic","infin","ang","and","or","cup","int","there4","sim","cong","asymp","ne","equiv","le","ge","sub","sup","nsub","sube","supe","oplus","otimes","perp","sdot","lceil","rceil","lfloor","rfloor","rang","loz","spades","clubs","hearts","diams","quot","amp","OElig","oelig","Scaron","scaron","Yuml","circ","tilde","ensp","emsp","thinsp","zwnj","zwj","lrm","rlm","ndash","mdash","lsquo","rsquo","sbquo","ldquo","rdquo","bdquo","dagger","Dagger","permil","lsaquo","rsaquo","euro","htmlCommentRegex","bogusCommentEntitySubset","commentEntitySubset","siblingBefore","closing","body","caption","colgroup","dd","li","optgroup","option","rp","tbody","td","tfoot","th","thead","tr","opening","previous","seen","_iterator18","_step18","double","parameters","invalid","unknown","_len2","zwitch","node_","comment","_1","_2","doctype","_3","element","selfClosing","last","serializeAttributes","raw","Dn","_this14","_Error3","__defProp$2","__publicField$2","configurable","Gn","_len3","_key3","stacksMap","_stacks","toJSON","initial","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","__defProp$1","__publicField$1","gi","__defNormalProp$1","Registry$1","ji","_resolver","_langs","_this15","_alias","_Ht","_resolvedThemes","_loadedThemesCache","textmateTheme","_textmateThemeCache","resolved","_resolvedGrammars","_this16","embeddedLazilyBy","_langMap","embeddedLangsLazy","addLanguage","grammarConfig","alias","_loadedLanguagesCache","_iterator38","_step38","delete","_this$_syncRegistry","_langGraph","_iterator39","_step39","resolveEmbeddedLanguages","langsGraphArray","missingLangs","_ref13","_ref14","dependents","_ref15","_e$embeddedLangs","_ref16","embeddedLangs","_ref17","_ref18","_ref19","_ref20","_ref21","_ref22","_i24","_e48","_e48$_i","_i25","_e49","_e49$_i","_iterator40","_step40","embeddedLang","__defProp","__publicField","wi","getLangRegistration","langIdOrAlias","_scopeToLang","injectTo","scopeParts","subScopeName","createHighlighter","_export","NileHighlighter","Li","highlightedCode","_this19","_s17","_updated","_callee5","changedProperties","updateHighlighter","updateHighlightedCode","_context6","updated","_x10","render","_templateObject","_taggedTemplateLiteral","_updateHighlighter","_callee6","_callee6$","_context7","highlighter","_updateHighlightedCode","_callee7","_callee7$","_context8","__decorate","NileElement","reflect","customElement"],"mappings":"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AA,CACA,IACA,CAAA,QAAA,CACA,QACA,QACA,CAAA,MAAA,CACA,KACA,QACA,CAAA,QAAA,CACA,QACA,QACA,CAAA,QAAA,CACA,QACA,CAAA,MAAA,CACA,OACA,KACA,CAAA,OAAA,CACA,SACA,OACA,CAAA,QAAA,CACA,OACA,QACA,CAAA,QAAA,CACA,QACA,OACA,CAAA,OAAA,CACA,SACA,KACA,CAAA,OAAA,CACA,SACA,MACA,CAAA,QAAA,CACA,SACA,OACA,CAAA,MAAA,CACA,MACA,CAAA,QAAA,CACA,MACA,QACA,CAAA,QAAA,CACA,QACA,QACA,CAAA,KAAA,CACA,OACA,QACA,CAAA,QAAA,CACA,QACA,CAAA,IAAA,CACA,SACA,OACA,CAAA,OAAA,CACA,SACA,QACA,CAAA,MAAA,CACA,QACA,IACA,CAAA,MAAA,CACA,OACA,CAAA,QAAA,CACA,OACA,KACA,CAAA,QAAA,CACA,SACA,OACA,CAAA,QAAA,CACA,OACA,MACA,CAAA,QAAA,CACA,QACA,CAAA,MAAA,CACA,OACA,QACA,CAAA,OAAA,CACA,OACA,OACA,CAAA,KAAA,CACA,OACA,KACA,CAAA,MAAA,CACA,MACA,CAAA,MAAA,CACA,QACA,OACA,CAAA,OAAA,CACA,SACA,OACA,CAAA,QAAA,CACA,MACA,MACA,CAAA,QAAA,CACA,KACA,CAAA,MAAA,CAAA,CC1GWumD,GAAyB,CACpCC,IAAAA,CAAM,IACNC,KAAO,CAAA,GAAA,CACPC,KAAM,GACNC,CAAAA,KAAAA,CAAO,GACPC,CAAAA,MAAAA,CAAQ,IACRC,GAAK,CAAA,GAAA,CACLC,OAAQ,GACRC,CAAAA,IAAAA,CAAM,IACNC,GAAK,CAAA,GAAA,CACLC,IAAM,CAAA,GAAA,CACNC,KAAM,GACNC,CAAAA,KAAAA,CAAO,IACPC,GAAK,CAAA,GAAA,CACLC,IAAK,GACLC,CAAAA,GAAAA,CAAK,GACLC,CAAAA,IAAAA,CAAM,IACNC,GAAK,CAAA,GAAA,CACLC,OAAQ,GACRC,CAAAA,IAAAA,CAAM,IACNC,IAAM,CAAA,GAAA,CACNC,KAAO,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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50]}
|