From 46988ff8eb6705680a40cb062f8383985d2f0cfd Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Sun, 18 May 2025 04:51:30 +0000 Subject: [PATCH 01/66] update: shiki version --- meta.txt | 15524 +++++++++++++++++++++++++++---------------- package-lock.json | 6364 ++++++++++++++++++ package.json | 8 +- src/Highlighter.ts | 13 +- 4 files changed, 16231 insertions(+), 5678 deletions(-) create mode 100644 package-lock.json diff --git a/meta.txt b/meta.txt index a0c3c2d..ccb3d2d 100644 --- a/meta.txt +++ b/meta.txt @@ -1,5060 +1,4861 @@ { "inputs": { - "node_modules/shiki/dist/langs/abap.mjs": { - "bytes": 17860, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/actionscript-3.mjs": { - "bytes": 15622, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/ada.mjs": { - "bytes": 52438, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/javascript.mjs": { - "bytes": 183246, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/css.mjs": { - "bytes": 52479, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/html.mjs": { - "bytes": 62042, + "src/CodeBlock.ts": { + "bytes": 2215, "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "obsidian", "kind": "import-statement", - "original": "./css.mjs" + "external": true } ], "format": "esm" }, - "node_modules/shiki/dist/langs/angular-expression.mjs": { - "bytes": 14317, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/angular-template.mjs": { - "bytes": 752, + "src/codemirror/Cm6_Util.ts": { + "bytes": 1334, "imports": [ { - "path": "node_modules/shiki/dist/langs/angular-expression.mjs", + "path": "@codemirror/state", "kind": "import-statement", - "original": "./angular-expression.mjs" + "external": true + }, + { + "path": "@codemirror/view", + "kind": "import-statement", + "external": true } ], "format": "esm" }, - "node_modules/shiki/dist/langs/angular-template-blocks.mjs": { - "bytes": 1680, + "src/codemirror/Cm6_ViewPlugin.ts": { + "bytes": 8053, "imports": [ { - "path": "node_modules/shiki/dist/langs/angular-expression.mjs", + "path": "src/main.ts", "kind": "import-statement", - "original": "./angular-expression.mjs" + "original": "src/main" }, { - "path": "node_modules/shiki/dist/langs/angular-template.mjs", + "path": "@codemirror/view", "kind": "import-statement", - "original": "./angular-template.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/angular-html.mjs": { - "bytes": 1378, - "imports": [ + "external": true + }, { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "@codemirror/state", "kind": "import-statement", - "original": "./html.mjs" + "external": true }, { - "path": "node_modules/shiki/dist/langs/angular-expression.mjs", + "path": "@lezer/common", "kind": "import-statement", - "original": "./angular-expression.mjs" + "external": true }, { - "path": "node_modules/shiki/dist/langs/angular-template.mjs", + "path": "@codemirror/language", "kind": "import-statement", - "original": "./angular-template.mjs" + "external": true }, { - "path": "node_modules/shiki/dist/langs/angular-template-blocks.mjs", + "path": "src/codemirror/Cm6_Util.ts", "kind": "import-statement", - "original": "./angular-template-blocks.mjs" + "original": "src/codemirror/Cm6_Util" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "shiki", "kind": "import-statement", - "original": "./javascript.mjs" + "external": true }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "obsidian", "kind": "import-statement", - "original": "./css.mjs" + "external": true } ], "format": "esm" }, - "node_modules/shiki/dist/langs/scss.mjs": { - "bytes": 29644, + "src/settings/Settings.ts": { + "bytes": 396, + "imports": [], + "format": "esm" + }, + "src/settings/StringSelectModal.ts": { + "bytes": 596, "imports": [ { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "obsidian", "kind": "import-statement", - "original": "./css.mjs" + "external": true } ], "format": "esm" }, - "node_modules/shiki/dist/langs/angular-inline-style.mjs": { - "bytes": 1546, + "node_modules/@shikijs/types/dist/index.mjs": { + "bytes": 138, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/vscode-textmate/dist/index.js": { + "bytes": 100008, "imports": [ { - "path": "node_modules/shiki/dist/langs/scss.mjs", + "path": "", "kind": "import-statement", - "original": "./scss.mjs" - }, + "external": true + } + ], + "format": "esm" + }, + "node_modules/html-void-elements/index.js": { + "bytes": 316, + "imports": [], + "format": "esm" + }, + "node_modules/property-information/lib/util/schema.js": { + "bytes": 587, + "imports": [], + "format": "esm" + }, + "node_modules/property-information/lib/util/merge.js": { + "bytes": 607, + "imports": [ { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/property-information/lib/util/schema.js", "kind": "import-statement", - "original": "./css.mjs" + "original": "./schema.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/angular-inline-template.mjs": { - "bytes": 1722, + "node_modules/property-information/lib/normalize.js": { + "bytes": 326, + "imports": [], + "format": "esm" + }, + "node_modules/property-information/lib/util/info.js": { + "bytes": 769, + "imports": [], + "format": "esm" + }, + "node_modules/property-information/lib/util/types.js": { + "bytes": 350, + "imports": [], + "format": "esm" + }, + "node_modules/property-information/lib/util/defined-info.js": { + "bytes": 1198, "imports": [ { - "path": "node_modules/shiki/dist/langs/angular-html.mjs", + "path": "node_modules/property-information/lib/util/info.js", "kind": "import-statement", - "original": "./angular-html.mjs" + "original": "./info.js" }, { - "path": "node_modules/shiki/dist/langs/angular-template.mjs", + "path": "node_modules/property-information/lib/util/types.js", "kind": "import-statement", - "original": "./angular-template.mjs" - }, + "original": "./types.js" + } + ], + "format": "esm" + }, + "node_modules/property-information/lib/util/create.js": { + "bytes": 1710, + "imports": [ { - "path": "node_modules/shiki/dist/langs/angular-template-blocks.mjs", + "path": "node_modules/property-information/lib/normalize.js", "kind": "import-statement", - "original": "./angular-template-blocks.mjs" + "original": "../normalize.js" }, { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/property-information/lib/util/defined-info.js", "kind": "import-statement", - "original": "./html.mjs" + "original": "./defined-info.js" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/property-information/lib/util/schema.js", "kind": "import-statement", - "original": "./javascript.mjs" - }, + "original": "./schema.js" + } + ], + "format": "esm" + }, + "node_modules/property-information/lib/aria.js": { + "bytes": 1644, + "imports": [ { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/property-information/lib/util/create.js", "kind": "import-statement", - "original": "./css.mjs" + "original": "./util/create.js" }, { - "path": "node_modules/shiki/dist/langs/angular-expression.mjs", + "path": "node_modules/property-information/lib/util/types.js", "kind": "import-statement", - "original": "./angular-expression.mjs" + "original": "./util/types.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/angular-ts.mjs": { - "bytes": 190401, + "node_modules/property-information/lib/util/case-sensitive-transform.js": { + "bytes": 300, + "imports": [], + "format": "esm" + }, + "node_modules/property-information/lib/util/case-insensitive-transform.js": { + "bytes": 367, "imports": [ { - "path": "node_modules/shiki/dist/langs/angular-expression.mjs", + "path": "node_modules/property-information/lib/util/case-sensitive-transform.js", "kind": "import-statement", - "original": "./angular-expression.mjs" - }, + "original": "./case-sensitive-transform.js" + } + ], + "format": "esm" + }, + "node_modules/property-information/lib/html.js": { + "bytes": 8649, + "imports": [ { - "path": "node_modules/shiki/dist/langs/angular-inline-style.mjs", + "path": "node_modules/property-information/lib/util/case-insensitive-transform.js", "kind": "import-statement", - "original": "./angular-inline-style.mjs" + "original": "./util/case-insensitive-transform.js" }, { - "path": "node_modules/shiki/dist/langs/angular-inline-template.mjs", + "path": "node_modules/property-information/lib/util/create.js", "kind": "import-statement", - "original": "./angular-inline-template.mjs" + "original": "./util/create.js" }, { - "path": "node_modules/shiki/dist/langs/angular-template.mjs", + "path": "node_modules/property-information/lib/util/types.js", "kind": "import-statement", - "original": "./angular-template.mjs" - }, + "original": "./util/types.js" + } + ], + "format": "esm" + }, + "node_modules/property-information/lib/svg.js": { + "bytes": 14350, + "imports": [ { - "path": "node_modules/shiki/dist/langs/angular-template-blocks.mjs", + "path": "node_modules/property-information/lib/util/case-sensitive-transform.js", "kind": "import-statement", - "original": "./angular-template-blocks.mjs" + "original": "./util/case-sensitive-transform.js" }, { - "path": "node_modules/shiki/dist/langs/scss.mjs", + "path": "node_modules/property-information/lib/util/create.js", "kind": "import-statement", - "original": "./scss.mjs" + "original": "./util/create.js" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/property-information/lib/util/types.js", "kind": "import-statement", - "original": "./css.mjs" - }, + "original": "./util/types.js" + } + ], + "format": "esm" + }, + "node_modules/property-information/lib/xlink.js": { + "bytes": 351, + "imports": [ { - "path": "node_modules/shiki/dist/langs/angular-html.mjs", + "path": "node_modules/property-information/lib/util/create.js", "kind": "import-statement", - "original": "./angular-html.mjs" - }, + "original": "./util/create.js" + } + ], + "format": "esm" + }, + "node_modules/property-information/lib/xmlns.js": { + "bytes": 298, + "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/property-information/lib/util/create.js", "kind": "import-statement", - "original": "./html.mjs" + "original": "./util/create.js" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/property-information/lib/util/case-insensitive-transform.js", "kind": "import-statement", - "original": "./javascript.mjs" + "original": "./util/case-insensitive-transform.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/apache.mjs": { - "bytes": 13792, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/apex.mjs": { - "bytes": 50354, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/java.mjs": { - "bytes": 29448, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/xml.mjs": { - "bytes": 5949, + "node_modules/property-information/lib/xml.js": { + "bytes": 233, "imports": [ { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/property-information/lib/util/create.js", "kind": "import-statement", - "original": "./java.mjs" + "original": "./util/create.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/json.mjs": { - "bytes": 3226, + "node_modules/property-information/lib/hast-to-react.js": { + "bytes": 859, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/apl.mjs": { - "bytes": 31402, + "node_modules/property-information/lib/find.js": { + "bytes": 2344, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/property-information/lib/util/defined-info.js", "kind": "import-statement", - "original": "./html.mjs" + "original": "./util/defined-info.js" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/property-information/lib/util/info.js", "kind": "import-statement", - "original": "./xml.mjs" + "original": "./util/info.js" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/property-information/lib/normalize.js", "kind": "import-statement", - "original": "./css.mjs" - }, + "original": "./normalize.js" + } + ], + "format": "esm" + }, + "node_modules/property-information/index.js": { + "bytes": 591, + "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/property-information/lib/util/merge.js", "kind": "import-statement", - "original": "./javascript.mjs" + "original": "./lib/util/merge.js" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/property-information/lib/aria.js", "kind": "import-statement", - "original": "./json.mjs" + "original": "./lib/aria.js" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/property-information/lib/html.js", "kind": "import-statement", - "original": "./java.mjs" + "original": "./lib/html.js" + }, + { + "path": "node_modules/property-information/lib/svg.js", + "kind": "import-statement", + "original": "./lib/svg.js" + }, + { + "path": "node_modules/property-information/lib/xlink.js", + "kind": "import-statement", + "original": "./lib/xlink.js" + }, + { + "path": "node_modules/property-information/lib/xmlns.js", + "kind": "import-statement", + "original": "./lib/xmlns.js" + }, + { + "path": "node_modules/property-information/lib/xml.js", + "kind": "import-statement", + "original": "./lib/xml.js" + }, + { + "path": "node_modules/property-information/lib/hast-to-react.js", + "kind": "import-statement", + "original": "./lib/hast-to-react.js" + }, + { + "path": "node_modules/property-information/lib/find.js", + "kind": "import-statement", + "original": "./lib/find.js" + }, + { + "path": "node_modules/property-information/lib/normalize.js", + "kind": "import-statement", + "original": "./lib/normalize.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/applescript.mjs": { - "bytes": 31555, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/ara.mjs": { - "bytes": 7665, + "node_modules/zwitch/index.js": { + "bytes": 3787, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/yaml.mjs": { - "bytes": 11957, + "node_modules/stringify-entities/lib/core.js": { + "bytes": 3040, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/csv.mjs": { - "bytes": 1186, + "node_modules/stringify-entities/lib/util/to-hexadecimal.js": { + "bytes": 436, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/c.mjs": { - "bytes": 76484, + "node_modules/stringify-entities/lib/util/to-decimal.js": { + "bytes": 392, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/clojure.mjs": { - "bytes": 7238, + "node_modules/character-entities-legacy/index.js": { + "bytes": 1316, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/coffee.mjs": { - "bytes": 29064, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/regexp.mjs": { - "bytes": 8732, + "node_modules/character-entities-html4/index.js": { + "bytes": 3908, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/glsl.mjs": { - "bytes": 3988, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/sql.mjs": { - "bytes": 24417, + "node_modules/stringify-entities/lib/constant/dangerous.js": { + "bytes": 290, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/cpp-macro.mjs": { - "bytes": 249118, + "node_modules/stringify-entities/lib/util/to-named.js": { + "bytes": 1290, "imports": [ { - "path": "node_modules/shiki/dist/langs/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/glsl.mjs", + "path": "node_modules/character-entities-legacy/index.js", "kind": "import-statement", - "original": "./glsl.mjs" + "original": "character-entities-legacy" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/character-entities-html4/index.js", "kind": "import-statement", - "original": "./sql.mjs" + "original": "character-entities-html4" }, { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/stringify-entities/lib/constant/dangerous.js", "kind": "import-statement", - "original": "./c.mjs" + "original": "../constant/dangerous.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/cpp.mjs": { - "bytes": 444260, + "node_modules/stringify-entities/lib/util/format-smart.js": { + "bytes": 2478, "imports": [ { - "path": "node_modules/shiki/dist/langs/cpp-macro.mjs", - "kind": "import-statement", - "original": "./cpp-macro.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/glsl.mjs", + "path": "node_modules/stringify-entities/lib/util/to-hexadecimal.js", "kind": "import-statement", - "original": "./glsl.mjs" + "original": "./to-hexadecimal.js" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/stringify-entities/lib/util/to-decimal.js", "kind": "import-statement", - "original": "./sql.mjs" + "original": "./to-decimal.js" }, { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/stringify-entities/lib/util/to-named.js", "kind": "import-statement", - "original": "./c.mjs" + "original": "./to-named.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/csharp.mjs": { - "bytes": 93383, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/diff.mjs": { - "bytes": 2829, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/docker.mjs": { - "bytes": 1806, + "node_modules/stringify-entities/lib/util/format-basic.js": { + "bytes": 192, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/elixir.mjs": { - "bytes": 18984, + "node_modules/stringify-entities/lib/index.js": { + "bytes": 961, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/stringify-entities/lib/core.js", "kind": "import-statement", - "original": "./html.mjs" + "original": "./core.js" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/stringify-entities/lib/util/format-smart.js", "kind": "import-statement", - "original": "./javascript.mjs" + "original": "./util/format-smart.js" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/stringify-entities/lib/util/format-basic.js", "kind": "import-statement", - "original": "./css.mjs" + "original": "./util/format-basic.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/elm.mjs": { - "bytes": 12048, + "node_modules/stringify-entities/index.js": { + "bytes": 160, "imports": [ { - "path": "node_modules/shiki/dist/langs/glsl.mjs", + "path": "node_modules/stringify-entities/lib/index.js", "kind": "import-statement", - "original": "./glsl.mjs" - }, + "original": "./lib/index.js" + } + ], + "format": "esm" + }, + "node_modules/hast-util-to-html/lib/handle/comment.js": { + "bytes": 1328, + "imports": [ { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/stringify-entities/index.js", "kind": "import-statement", - "original": "./c.mjs" + "original": "stringify-entities" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/erlang.mjs": { - "bytes": 38736, + "node_modules/hast-util-to-html/lib/handle/doctype.js": { + "bytes": 601, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/go.mjs": { - "bytes": 50678, + "node_modules/ccount/index.js": { + "bytes": 619, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/groovy.mjs": { - "bytes": 21073, + "node_modules/comma-separated-tokens/index.js": { + "bytes": 1592, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/haskell.mjs": { - "bytes": 45882, + "node_modules/space-separated-tokens/index.js": { + "bytes": 551, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/jsx.mjs": { - "bytes": 186195, + "node_modules/hast-util-whitespace/lib/index.js": { + "bytes": 885, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/python.mjs": { - "bytes": 81458, - "imports": [], + "node_modules/hast-util-whitespace/index.js": { + "bytes": 42, + "imports": [ + { + "path": "node_modules/hast-util-whitespace/lib/index.js", + "kind": "import-statement", + "original": "./lib/index.js" + } + ], + "format": "esm" + }, + "node_modules/hast-util-to-html/lib/omission/util/siblings.js": { + "bytes": 1265, + "imports": [ + { + "path": "node_modules/hast-util-whitespace/index.js", + "kind": "import-statement", + "original": "hast-util-whitespace" + } + ], "format": "esm" }, - "node_modules/shiki/dist/langs/r.mjs": { - "bytes": 35631, + "node_modules/hast-util-to-html/lib/omission/omission.js": { + "bytes": 978, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/julia.mjs": { - "bytes": 45220, + "node_modules/hast-util-to-html/lib/omission/closing.js": { + "bytes": 8737, "imports": [ { - "path": "node_modules/shiki/dist/langs/cpp.mjs", - "kind": "import-statement", - "original": "./cpp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/hast-util-whitespace/index.js", "kind": "import-statement", - "original": "./javascript.mjs" + "original": "hast-util-whitespace" }, { - "path": "node_modules/shiki/dist/langs/r.mjs", + "path": "node_modules/hast-util-to-html/lib/omission/util/siblings.js", "kind": "import-statement", - "original": "./r.mjs" + "original": "./util/siblings.js" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/hast-util-to-html/lib/omission/omission.js", "kind": "import-statement", - "original": "./sql.mjs" - }, + "original": "./omission.js" + } + ], + "format": "esm" + }, + "node_modules/hast-util-to-html/lib/omission/opening.js": { + "bytes": 3606, + "imports": [ { - "path": "node_modules/shiki/dist/langs/cpp-macro.mjs", + "path": "node_modules/hast-util-whitespace/index.js", "kind": "import-statement", - "original": "./cpp-macro.mjs" + "original": "hast-util-whitespace" }, { - "path": "node_modules/shiki/dist/langs/regexp.mjs", + "path": "node_modules/hast-util-to-html/lib/omission/util/siblings.js", "kind": "import-statement", - "original": "./regexp.mjs" + "original": "./util/siblings.js" }, { - "path": "node_modules/shiki/dist/langs/glsl.mjs", + "path": "node_modules/hast-util-to-html/lib/omission/closing.js", "kind": "import-statement", - "original": "./glsl.mjs" + "original": "./closing.js" }, { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/hast-util-to-html/lib/omission/omission.js", "kind": "import-statement", - "original": "./c.mjs" + "original": "./omission.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/kotlin.mjs": { - "bytes": 9362, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/less.mjs": { - "bytes": 88676, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/make.mjs": { - "bytes": 9614, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/objective-c.mjs": { - "bytes": 111554, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/ocaml.mjs": { - "bytes": 67524, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/perl.mjs": { - "bytes": 47657, + "node_modules/hast-util-to-html/lib/handle/element.js": { + "bytes": 7564, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/ccount/index.js", "kind": "import-statement", - "original": "./html.mjs" + "original": "ccount" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/comma-separated-tokens/index.js", "kind": "import-statement", - "original": "./xml.mjs" + "original": "comma-separated-tokens" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/property-information/index.js", "kind": "import-statement", - "original": "./css.mjs" + "original": "property-information" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/space-separated-tokens/index.js", "kind": "import-statement", - "original": "./javascript.mjs" + "original": "space-separated-tokens" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/stringify-entities/index.js", "kind": "import-statement", - "original": "./sql.mjs" + "original": "stringify-entities" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/hast-util-to-html/lib/omission/closing.js", "kind": "import-statement", - "original": "./java.mjs" + "original": "../omission/closing.js" + }, + { + "path": "node_modules/hast-util-to-html/lib/omission/opening.js", + "kind": "import-statement", + "original": "../omission/opening.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/shellscript.mjs": { - "bytes": 44418, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/lua.mjs": { - "bytes": 16258, + "node_modules/hast-util-to-html/lib/handle/text.js": { + "bytes": 1018, "imports": [ { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/stringify-entities/index.js", "kind": "import-statement", - "original": "./c.mjs" + "original": "stringify-entities" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/ruby.mjs": { - "bytes": 41269, + "node_modules/hast-util-to-html/lib/handle/raw.js": { + "bytes": 632, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/hast-util-to-html/lib/handle/text.js", "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/lua.mjs", - "kind": "import-statement", - "original": "./lua.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" + "original": "./text.js" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/rust.mjs": { - "bytes": 19025, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/sass.mjs": { - "bytes": 10019, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/scala.mjs": { - "bytes": 29519, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/swift.mjs": { - "bytes": 101839, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/toml.mjs": { - "bytes": 7073, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/typescript.mjs": { - "bytes": 189703, + "node_modules/hast-util-to-html/lib/handle/root.js": { + "bytes": 473, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/asciidoc.mjs": { - "bytes": 101184, + "node_modules/hast-util-to-html/lib/handle/index.js": { + "bytes": 1104, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/csv.mjs", + "path": "node_modules/zwitch/index.js", "kind": "import-statement", - "original": "./csv.mjs" + "original": "zwitch" }, { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/hast-util-to-html/lib/handle/comment.js", "kind": "import-statement", - "original": "./c.mjs" + "original": "./comment.js" }, { - "path": "node_modules/shiki/dist/langs/clojure.mjs", + "path": "node_modules/hast-util-to-html/lib/handle/doctype.js", "kind": "import-statement", - "original": "./clojure.mjs" + "original": "./doctype.js" }, { - "path": "node_modules/shiki/dist/langs/coffee.mjs", + "path": "node_modules/hast-util-to-html/lib/handle/element.js", "kind": "import-statement", - "original": "./coffee.mjs" + "original": "./element.js" }, { - "path": "node_modules/shiki/dist/langs/cpp.mjs", + "path": "node_modules/hast-util-to-html/lib/handle/raw.js", "kind": "import-statement", - "original": "./cpp.mjs" + "original": "./raw.js" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/hast-util-to-html/lib/handle/root.js", "kind": "import-statement", - "original": "./css.mjs" + "original": "./root.js" }, { - "path": "node_modules/shiki/dist/langs/csharp.mjs", + "path": "node_modules/hast-util-to-html/lib/handle/text.js", "kind": "import-statement", - "original": "./csharp.mjs" - }, + "original": "./text.js" + } + ], + "format": "esm" + }, + "node_modules/hast-util-to-html/lib/index.js": { + "bytes": 9724, + "imports": [ { - "path": "node_modules/shiki/dist/langs/diff.mjs", + "path": "node_modules/html-void-elements/index.js", "kind": "import-statement", - "original": "./diff.mjs" + "original": "html-void-elements" }, { - "path": "node_modules/shiki/dist/langs/docker.mjs", + "path": "node_modules/property-information/index.js", "kind": "import-statement", - "original": "./docker.mjs" + "original": "property-information" }, { - "path": "node_modules/shiki/dist/langs/elixir.mjs", + "path": "node_modules/hast-util-to-html/lib/handle/index.js", "kind": "import-statement", - "original": "./elixir.mjs" - }, + "original": "./handle/index.js" + } + ], + "format": "esm" + }, + "node_modules/hast-util-to-html/index.js": { + "bytes": 283, + "imports": [ { - "path": "node_modules/shiki/dist/langs/elm.mjs", + "path": "node_modules/hast-util-to-html/lib/index.js", "kind": "import-statement", - "original": "./elm.mjs" - }, + "original": "./lib/index.js" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/core/dist/index.mjs": { + "bytes": 72792, + "imports": [ { - "path": "node_modules/shiki/dist/langs/erlang.mjs", + "path": "node_modules/@shikijs/types/dist/index.mjs", "kind": "import-statement", - "original": "./erlang.mjs" + "original": "@shikijs/types" }, { - "path": "node_modules/shiki/dist/langs/go.mjs", + "path": "node_modules/@shikijs/types/dist/index.mjs", "kind": "import-statement", - "original": "./go.mjs" + "original": "@shikijs/types" }, { - "path": "node_modules/shiki/dist/langs/groovy.mjs", + "path": "node_modules/@shikijs/vscode-textmate/dist/index.js", "kind": "import-statement", - "original": "./groovy.mjs" + "original": "@shikijs/vscode-textmate" }, { - "path": "node_modules/shiki/dist/langs/haskell.mjs", + "path": "node_modules/hast-util-to-html/index.js", "kind": "import-statement", - "original": "./haskell.mjs" + "original": "hast-util-to-html" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "", "kind": "import-statement", - "original": "./java.mjs" - }, + "external": true + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/abap.mjs": { + "bytes": 16553, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/actionscript-3.mjs": { + "bytes": 15649, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/ada.mjs": { + "bytes": 54587, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/javascript.mjs": { + "bytes": 184850, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/css.mjs": { + "bytes": 52193, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/html.mjs": { + "bytes": 61930, + "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./json.mjs" - }, + "original": "./css.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/angular-expression.mjs": { + "bytes": 21347, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/angular-let-declaration.mjs": { + "bytes": 1174, + "imports": [ { - "path": "node_modules/shiki/dist/langs/jsx.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", "kind": "import-statement", - "original": "./jsx.mjs" - }, + "original": "./angular-expression.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/angular-template.mjs": { + "bytes": 736, + "imports": [ { - "path": "node_modules/shiki/dist/langs/julia.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", "kind": "import-statement", - "original": "./julia.mjs" - }, + "original": "./angular-expression.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/angular-template-blocks.mjs": { + "bytes": 2465, + "imports": [ { - "path": "node_modules/shiki/dist/langs/kotlin.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", "kind": "import-statement", - "original": "./kotlin.mjs" + "original": "./angular-expression.mjs" }, { - "path": "node_modules/shiki/dist/langs/less.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-template.mjs", "kind": "import-statement", - "original": "./less.mjs" - }, + "original": "./angular-template.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/angular-html.mjs": { + "bytes": 1362, + "imports": [ { - "path": "node_modules/shiki/dist/langs/make.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "./make.mjs" + "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/objective-c.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", "kind": "import-statement", - "original": "./objective-c.mjs" + "original": "./angular-expression.mjs" }, { - "path": "node_modules/shiki/dist/langs/ocaml.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", "kind": "import-statement", - "original": "./ocaml.mjs" + "original": "./angular-let-declaration.mjs" }, { - "path": "node_modules/shiki/dist/langs/perl.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-template.mjs", "kind": "import-statement", - "original": "./perl.mjs" + "original": "./angular-template.mjs" }, { - "path": "node_modules/shiki/dist/langs/python.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", "kind": "import-statement", - "original": "./python.mjs" - }, + "original": "./angular-template-blocks.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/scss.mjs": { + "bytes": 30374, + "imports": [ { - "path": "node_modules/shiki/dist/langs/r.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./r.mjs" - }, + "original": "./css.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/angular-inline-style.mjs": { + "bytes": 1525, + "imports": [ { - "path": "node_modules/shiki/dist/langs/ruby.mjs", + "path": "node_modules/@shikijs/langs/dist/scss.mjs", "kind": "import-statement", - "original": "./ruby.mjs" - }, + "original": "./scss.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/angular-inline-template.mjs": { + "bytes": 1387, + "imports": [ { - "path": "node_modules/shiki/dist/langs/rust.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-html.mjs", "kind": "import-statement", - "original": "./rust.mjs" + "original": "./angular-html.mjs" }, { - "path": "node_modules/shiki/dist/langs/sass.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-template.mjs", "kind": "import-statement", - "original": "./sass.mjs" - }, + "original": "./angular-template.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/angular-ts.mjs": { + "bytes": 191357, + "imports": [ { - "path": "node_modules/shiki/dist/langs/scala.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", "kind": "import-statement", - "original": "./scala.mjs" + "original": "./angular-expression.mjs" }, { - "path": "node_modules/shiki/dist/langs/scss.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-inline-style.mjs", "kind": "import-statement", - "original": "./scss.mjs" + "original": "./angular-inline-style.mjs" }, { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-inline-template.mjs", "kind": "import-statement", - "original": "./shellscript.mjs" + "original": "./angular-inline-template.mjs" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", "kind": "import-statement", - "original": "./sql.mjs" + "original": "./angular-let-declaration.mjs" }, { - "path": "node_modules/shiki/dist/langs/swift.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-template.mjs", "kind": "import-statement", - "original": "./swift.mjs" + "original": "./angular-template.mjs" }, { - "path": "node_modules/shiki/dist/langs/toml.mjs", + "path": "node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", "kind": "import-statement", - "original": "./toml.mjs" - }, + "original": "./angular-template-blocks.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/apache.mjs": { + "bytes": 13344, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/apex.mjs": { + "bytes": 51161, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/java.mjs": { + "bytes": 30385, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/xml.mjs": { + "bytes": 6073, + "imports": [ { - "path": "node_modules/shiki/dist/langs/typescript.mjs", + "path": "node_modules/@shikijs/langs/dist/java.mjs", "kind": "import-statement", - "original": "./typescript.mjs" - }, + "original": "./java.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/json.mjs": { + "bytes": 3193, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/apl.mjs": { + "bytes": 26688, + "imports": [ { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "./xml.mjs" + "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/cpp-macro.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", - "original": "./cpp-macro.mjs" + "original": "./xml.mjs" }, { - "path": "node_modules/shiki/dist/langs/regexp.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./regexp.mjs" + "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/glsl.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./glsl.mjs" + "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/lua.mjs", + "path": "node_modules/@shikijs/langs/dist/json.mjs", "kind": "import-statement", - "original": "./lua.mjs" + "original": "./json.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/asm.mjs": { - "bytes": 42065, + "node_modules/@shikijs/langs/dist/applescript.mjs": { + "bytes": 32033, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/ara.mjs": { + "bytes": 7071, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/asciidoc.mjs": { + "bytes": 97731, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/stylus.mjs": { - "bytes": 32768, + "node_modules/@shikijs/langs/dist/asm.mjs": { + "bytes": 43849, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/postcss.mjs": { - "bytes": 6885, + "node_modules/@shikijs/langs/dist/typescript.mjs": { + "bytes": 190662, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/tsx.mjs": { - "bytes": 183948, + "node_modules/@shikijs/langs/dist/postcss.mjs": { + "bytes": 7113, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/astro.mjs": { - "bytes": 25405, + "node_modules/@shikijs/langs/dist/astro.mjs": { + "bytes": 25453, "imports": [ { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/json.mjs", "kind": "import-statement", "original": "./json.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/typescript.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/stylus.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./stylus.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/sass.mjs", - "kind": "import-statement", - "original": "./sass.mjs" + "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/less.mjs", - "kind": "import-statement", - "original": "./less.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/postcss.mjs", + "path": "node_modules/@shikijs/langs/dist/postcss.mjs", "kind": "import-statement", "original": "./postcss.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/tsx.mjs", - "kind": "import-statement", - "original": "./tsx.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/awk.mjs": { - "bytes": 5934, + "node_modules/@shikijs/langs/dist/awk.mjs": { + "bytes": 6136, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/ballerina.mjs": { - "bytes": 63219, + "node_modules/@shikijs/langs/dist/ballerina.mjs": { + "bytes": 64688, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/bat.mjs": { - "bytes": 13852, + "node_modules/@shikijs/langs/dist/bat.mjs": { + "bytes": 14154, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/beancount.mjs": { - "bytes": 11634, + "node_modules/@shikijs/langs/dist/beancount.mjs": { + "bytes": 11447, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/berry.mjs": { - "bytes": 2490, + "node_modules/@shikijs/langs/dist/berry.mjs": { + "bytes": 2643, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/bibtex.mjs": { - "bytes": 5338, + "node_modules/@shikijs/langs/dist/bibtex.mjs": { + "bytes": 5371, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/bicep.mjs": { + "bytes": 4740, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/bicep.mjs": { - "bytes": 4466, + "node_modules/@shikijs/langs/dist/html-derivative.mjs": { + "bytes": 920, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/sql.mjs": { + "bytes": 24508, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/blade.mjs": { - "bytes": 109539, + "node_modules/@shikijs/langs/dist/blade.mjs": { + "bytes": 110763, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", + "kind": "import-statement", + "original": "./html-derivative.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", "original": "./xml.mjs" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", "original": "./sql.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/json.mjs", "kind": "import-statement", "original": "./json.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" - }, + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/sdbl.mjs": { + "bytes": 4915, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/bsl.mjs": { + "bytes": 34781, + "imports": [ { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/@shikijs/langs/dist/sdbl.mjs", "kind": "import-statement", - "original": "./java.mjs" + "original": "./sdbl.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/cadence.mjs": { - "bytes": 11753, + "node_modules/@shikijs/langs/dist/c.mjs": { + "bytes": 78119, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/clarity.mjs": { - "bytes": 15594, + "node_modules/@shikijs/langs/dist/cadence.mjs": { + "bytes": 11752, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/cmake.mjs": { - "bytes": 10530, + "node_modules/@shikijs/langs/dist/python.mjs": { + "bytes": 77130, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/cobol.mjs": { - "bytes": 41402, + "node_modules/@shikijs/langs/dist/cairo.mjs": { + "bytes": 3316, "imports": [ { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/python.mjs", "kind": "import-statement", - "original": "./sql.mjs" - }, + "original": "./python.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/clarity.mjs": { + "bytes": 15615, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/clojure.mjs": { + "bytes": 7162, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/cmake.mjs": { + "bytes": 10107, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/cobol.mjs": { + "bytes": 41259, + "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/@shikijs/langs/dist/java.mjs", "kind": "import-statement", "original": "./java.mjs" - }, + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/codeowners.mjs": { + "bytes": 621, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/codeql.mjs": { + "bytes": 29564, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/coffee.mjs": { + "bytes": 29703, + "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/codeowners.mjs": { - "bytes": 622, + "node_modules/@shikijs/langs/dist/common-lisp.mjs": { + "bytes": 23562, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/coq.mjs": { + "bytes": 5913, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/codeql.mjs": { - "bytes": 35814, + "node_modules/@shikijs/langs/dist/regexp.mjs": { + "bytes": 8836, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/common-lisp.mjs": { - "bytes": 25004, + "node_modules/@shikijs/langs/dist/glsl.mjs": { + "bytes": 3749, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/c.mjs", + "kind": "import-statement", + "original": "./c.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/cpp-macro.mjs": { + "bytes": 239804, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/regexp.mjs", + "kind": "import-statement", + "original": "./regexp.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/glsl.mjs", + "kind": "import-statement", + "original": "./glsl.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/cpp.mjs": { + "bytes": 428812, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/cpp-macro.mjs", + "kind": "import-statement", + "original": "./cpp-macro.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/regexp.mjs", + "kind": "import-statement", + "original": "./regexp.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/glsl.mjs", + "kind": "import-statement", + "original": "./glsl.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/shellscript.mjs": { + "bytes": 45421, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/crystal.mjs": { - "bytes": 35539, + "node_modules/@shikijs/langs/dist/crystal.mjs": { + "bytes": 32542, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", "original": "./sql.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/@shikijs/langs/dist/c.mjs", "kind": "import-statement", "original": "./c.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", "original": "./shellscript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/cue.mjs": { - "bytes": 17994, + "node_modules/@shikijs/langs/dist/csharp.mjs": { + "bytes": 94901, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/cypher.mjs": { - "bytes": 7097, + "node_modules/@shikijs/langs/dist/csv.mjs": { + "bytes": 1293, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/d.mjs": { - "bytes": 45506, + "node_modules/@shikijs/langs/dist/cue.mjs": { + "bytes": 18185, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/dart.mjs": { - "bytes": 7916, + "node_modules/@shikijs/langs/dist/cypher.mjs": { + "bytes": 6548, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/d.mjs": { + "bytes": 48909, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/dart.mjs": { + "bytes": 8744, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/dax.mjs": { + "bytes": 5703, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/desktop.mjs": { + "bytes": 2021, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/diff.mjs": { + "bytes": 2861, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/dax.mjs": { - "bytes": 5843, + "node_modules/@shikijs/langs/dist/docker.mjs": { + "bytes": 1925, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/desktop.mjs": { - "bytes": 2086, + "node_modules/@shikijs/langs/dist/dotenv.mjs": { + "bytes": 1613, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/dream-maker.mjs": { - "bytes": 11245, + "node_modules/@shikijs/langs/dist/dream-maker.mjs": { + "bytes": 11610, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/html-derivative.mjs": { - "bytes": 1059, + "node_modules/@shikijs/langs/dist/edge.mjs": { + "bytes": 2601, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", + "kind": "import-statement", + "original": "./html-derivative.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/elixir.mjs": { + "bytes": 18067, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/elm.mjs": { + "bytes": 12342, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/glsl.mjs", + "kind": "import-statement", + "original": "./glsl.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/emacs-lisp.mjs": { + "bytes": 782328, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/haml.mjs": { + "bytes": 9326, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/edge.mjs": { - "bytes": 2600, + "node_modules/@shikijs/langs/dist/jsx.mjs": { + "bytes": 187823, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/tsx.mjs": { + "bytes": 185567, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/graphql.mjs": { + "bytes": 20119, "imports": [ { - "path": "node_modules/shiki/dist/langs/typescript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./typescript.mjs" + "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "original": "./html.mjs" + "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/html-derivative.mjs", + "path": "node_modules/@shikijs/langs/dist/jsx.mjs", "kind": "import-statement", - "original": "./html-derivative.mjs" + "original": "./jsx.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/tsx.mjs", "kind": "import-statement", - "original": "./javascript.mjs" - }, + "original": "./tsx.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/lua.mjs": { + "bytes": 16862, + "imports": [ { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/c.mjs", "kind": "import-statement", - "original": "./css.mjs" + "original": "./c.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/emacs-lisp.mjs": { - "bytes": 816935, + "node_modules/@shikijs/langs/dist/yaml.mjs": { + "bytes": 11581, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/erb.mjs": { - "bytes": 2536, + "node_modules/@shikijs/langs/dist/ruby.mjs": { + "bytes": 51135, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/ruby.mjs", + "path": "node_modules/@shikijs/langs/dist/haml.mjs", "kind": "import-statement", - "original": "./ruby.mjs" + "original": "./haml.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", - "original": "./javascript.mjs" + "original": "./xml.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "./css.mjs" + "original": "./sql.mjs" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/@shikijs/langs/dist/graphql.mjs", "kind": "import-statement", - "original": "./xml.mjs" + "original": "./graphql.mjs" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./java.mjs" + "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/cpp.mjs", "kind": "import-statement", - "original": "./sql.mjs" + "original": "./cpp.mjs" }, { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/@shikijs/langs/dist/c.mjs", "kind": "import-statement", "original": "./c.mjs" }, { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", "original": "./shellscript.mjs" }, { - "path": "node_modules/shiki/dist/langs/lua.mjs", + "path": "node_modules/@shikijs/langs/dist/lua.mjs", "kind": "import-statement", "original": "./lua.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/yaml.mjs", + "kind": "import-statement", + "original": "./yaml.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/erb.mjs": { + "bytes": 2401, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/ruby.mjs", + "kind": "import-statement", + "original": "./ruby.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/fennel.mjs": { - "bytes": 5079, + "node_modules/@shikijs/langs/dist/erlang.mjs": { + "bytes": 41454, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/fennel.mjs": { + "bytes": 5178, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/fish.mjs": { - "bytes": 5546, + "node_modules/@shikijs/langs/dist/fish.mjs": { + "bytes": 4495, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/fluent.mjs": { - "bytes": 3883, + "node_modules/@shikijs/langs/dist/fluent.mjs": { + "bytes": 4006, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/fortran-free-form.mjs": { - "bytes": 103739, + "node_modules/@shikijs/langs/dist/fortran-free-form.mjs": { + "bytes": 96560, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/fortran-fixed-form.mjs": { - "bytes": 1267, + "node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs": { + "bytes": 1272, "imports": [ { - "path": "node_modules/shiki/dist/langs/fortran-free-form.mjs", + "path": "node_modules/@shikijs/langs/dist/fortran-free-form.mjs", "kind": "import-statement", "original": "./fortran-free-form.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/markdown.mjs": { - "bytes": 58944, + "node_modules/@shikijs/langs/dist/markdown.mjs": { + "bytes": 61544, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/fsharp.mjs": { - "bytes": 27675, + "node_modules/@shikijs/langs/dist/fsharp.mjs": { + "bytes": 28253, "imports": [ { - "path": "node_modules/shiki/dist/langs/markdown.mjs", + "path": "node_modules/@shikijs/langs/dist/markdown.mjs", "kind": "import-statement", "original": "./markdown.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/gdshader.mjs": { - "bytes": 6772, + "node_modules/@shikijs/langs/dist/gdshader.mjs": { + "bytes": 7042, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/gdscript.mjs": { - "bytes": 19943, + "node_modules/@shikijs/langs/dist/gdscript.mjs": { + "bytes": 20807, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/gdresource.mjs": { - "bytes": 5636, + "node_modules/@shikijs/langs/dist/gdresource.mjs": { + "bytes": 5810, "imports": [ { - "path": "node_modules/shiki/dist/langs/gdshader.mjs", + "path": "node_modules/@shikijs/langs/dist/gdshader.mjs", "kind": "import-statement", "original": "./gdshader.mjs" }, { - "path": "node_modules/shiki/dist/langs/gdscript.mjs", + "path": "node_modules/@shikijs/langs/dist/gdscript.mjs", "kind": "import-statement", "original": "./gdscript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/genie.mjs": { - "bytes": 3529, + "node_modules/@shikijs/langs/dist/genie.mjs": { + "bytes": 3692, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/gherkin.mjs": { - "bytes": 19579, + "node_modules/@shikijs/langs/dist/gherkin.mjs": { + "bytes": 12208, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/git-commit.mjs": { - "bytes": 1684, + "node_modules/@shikijs/langs/dist/git-commit.mjs": { + "bytes": 1381, "imports": [ { - "path": "node_modules/shiki/dist/langs/diff.mjs", + "path": "node_modules/@shikijs/langs/dist/diff.mjs", "kind": "import-statement", "original": "./diff.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/git-rebase.mjs": { - "bytes": 1090, + "node_modules/@shikijs/langs/dist/git-rebase.mjs": { + "bytes": 1102, "imports": [ { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", "original": "./shellscript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/gleam.mjs": { - "bytes": 2903, + "node_modules/@shikijs/langs/dist/gleam.mjs": { + "bytes": 2897, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/glimmer-js.mjs": { - "bytes": 22061, + "node_modules/@shikijs/langs/dist/glimmer-js.mjs": { + "bytes": 22627, "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/typescript.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/glimmer-ts.mjs": { - "bytes": 22061, + "node_modules/@shikijs/langs/dist/glimmer-ts.mjs": { + "bytes": 22627, "imports": [ { - "path": "node_modules/shiki/dist/langs/typescript.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/gnuplot.mjs": { - "bytes": 18186, + "node_modules/@shikijs/langs/dist/gnuplot.mjs": { + "bytes": 16263, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/go.mjs": { + "bytes": 49958, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/groovy.mjs": { + "bytes": 21523, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/graphql.mjs": { - "bytes": 19721, + "node_modules/@shikijs/langs/dist/hack.mjs": { + "bytes": 84777, "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/jsx.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "./jsx.mjs" + "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/tsx.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "./tsx.mjs" + "original": "./sql.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/hack.mjs": { - "bytes": 86641, + "node_modules/@shikijs/langs/dist/handlebars.mjs": { + "bytes": 13651, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./sql.mjs" + "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/yaml.mjs", "kind": "import-statement", - "original": "./css.mjs" + "original": "./yaml.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/haml.mjs": { - "bytes": 9285, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/sass.mjs", - "kind": "import-statement", - "original": "./sass.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/coffee.mjs", - "kind": "import-statement", - "original": "./coffee.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/lua.mjs", - "kind": "import-statement", - "original": "./lua.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/handlebars.mjs": { - "bytes": 13324, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - } - ], + "node_modules/@shikijs/langs/dist/haskell.mjs": { + "bytes": 45539, + "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/haxe.mjs": { - "bytes": 38063, + "node_modules/@shikijs/langs/dist/haxe.mjs": { + "bytes": 39335, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/hcl.mjs": { - "bytes": 12719, + "node_modules/@shikijs/langs/dist/hcl.mjs": { + "bytes": 11358, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/hjson.mjs": { - "bytes": 13745, + "node_modules/@shikijs/langs/dist/hjson.mjs": { + "bytes": 13477, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/hlsl.mjs": { - "bytes": 7720, + "node_modules/@shikijs/langs/dist/hlsl.mjs": { + "bytes": 7696, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/http.mjs": { - "bytes": 4949, + "node_modules/@shikijs/langs/dist/http.mjs": { + "bytes": 4961, "imports": [ { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", "original": "./shellscript.mjs" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/json.mjs", "kind": "import-statement", "original": "./json.mjs" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", "original": "./xml.mjs" }, { - "path": "node_modules/shiki/dist/langs/graphql.mjs", + "path": "node_modules/@shikijs/langs/dist/graphql.mjs", "kind": "import-statement", "original": "./graphql.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/jsx.mjs", - "kind": "import-statement", - "original": "./jsx.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/tsx.mjs", - "kind": "import-statement", - "original": "./tsx.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/hxml.mjs": { - "bytes": 1913, + "node_modules/@shikijs/langs/dist/hxml.mjs": { + "bytes": 1862, "imports": [ { - "path": "node_modules/shiki/dist/langs/haxe.mjs", + "path": "node_modules/@shikijs/langs/dist/haxe.mjs", "kind": "import-statement", "original": "./haxe.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/hy.mjs": { - "bytes": 3331, + "node_modules/@shikijs/langs/dist/hy.mjs": { + "bytes": 2831, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/imba.mjs": { - "bytes": 54464, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - } - ], + "node_modules/@shikijs/langs/dist/imba.mjs": { + "bytes": 54818, + "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/ini.mjs": { - "bytes": 1676, + "node_modules/@shikijs/langs/dist/ini.mjs": { + "bytes": 1729, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/jinja-html.mjs": { - "bytes": 700, + "node_modules/@shikijs/langs/dist/jinja-html.mjs": { + "bytes": 658, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/jinja.mjs": { - "bytes": 5523, + "node_modules/@shikijs/langs/dist/jinja.mjs": { + "bytes": 5682, "imports": [ { - "path": "node_modules/shiki/dist/langs/jinja-html.mjs", + "path": "node_modules/@shikijs/langs/dist/jinja-html.mjs", "kind": "import-statement", "original": "./jinja-html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/jison.mjs": { - "bytes": 10547, + "node_modules/@shikijs/langs/dist/jison.mjs": { + "bytes": 10926, "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/json5.mjs": { - "bytes": 3865, + "node_modules/@shikijs/langs/dist/json5.mjs": { + "bytes": 3678, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/jsonc.mjs": { - "bytes": 3513, + "node_modules/@shikijs/langs/dist/jsonc.mjs": { + "bytes": 3478, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/jsonl.mjs": { - "bytes": 3415, + "node_modules/@shikijs/langs/dist/jsonl.mjs": { + "bytes": 3380, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/jsonnet.mjs": { - "bytes": 3778, + "node_modules/@shikijs/langs/dist/jsonnet.mjs": { + "bytes": 4002, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/jssm.mjs": { - "bytes": 3208, + "node_modules/@shikijs/langs/dist/jssm.mjs": { + "bytes": 2511, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/kusto.mjs": { - "bytes": 21197, + "node_modules/@shikijs/langs/dist/r.mjs": { + "bytes": 40868, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/tex.mjs": { - "bytes": 9629, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/r.mjs", - "kind": "import-statement", - "original": "./r.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/latex.mjs": { - "bytes": 60899, + "node_modules/@shikijs/langs/dist/julia.mjs": { + "bytes": 32900, "imports": [ { - "path": "node_modules/shiki/dist/langs/tex.mjs", - "kind": "import-statement", - "original": "./tex.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/gnuplot.mjs", - "kind": "import-statement", - "original": "./gnuplot.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/haskell.mjs", - "kind": "import-statement", - "original": "./haskell.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/julia.mjs", - "kind": "import-statement", - "original": "./julia.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/lua.mjs", + "path": "node_modules/@shikijs/langs/dist/cpp.mjs", "kind": "import-statement", - "original": "./lua.mjs" + "original": "./cpp.mjs" }, { - "path": "node_modules/shiki/dist/langs/python.mjs", + "path": "node_modules/@shikijs/langs/dist/python.mjs", "kind": "import-statement", "original": "./python.mjs" }, { - "path": "node_modules/shiki/dist/langs/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/rust.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./rust.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/scala.mjs", - "kind": "import-statement", - "original": "./scala.mjs" + "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/r.mjs", + "path": "node_modules/@shikijs/langs/dist/r.mjs", "kind": "import-statement", "original": "./r.mjs" }, { - "path": "node_modules/shiki/dist/langs/cpp.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "./cpp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cpp-macro.mjs", - "kind": "import-statement", - "original": "./cpp-macro.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/kotlin.mjs": { + "bytes": 9815, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/kusto.mjs": { + "bytes": 16245, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/tex.mjs": { + "bytes": 10180, + "imports": [ { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/@shikijs/langs/dist/r.mjs", "kind": "import-statement", - "original": "./c.mjs" - }, + "original": "./r.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/latex.mjs": { + "bytes": 76405, + "imports": [ { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/tex.mjs", "kind": "import-statement", - "original": "./sql.mjs" + "original": "./tex.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/liquid.mjs": { - "bytes": 17440, + "node_modules/@shikijs/langs/dist/lean.mjs": { + "bytes": 4543, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/less.mjs": { + "bytes": 107097, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/liquid.mjs": { + "bytes": 19641, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/json.mjs", "kind": "import-statement", "original": "./json.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/log.mjs": { - "bytes": 2836, + "node_modules/@shikijs/langs/dist/llvm.mjs": { + "bytes": 5255, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/log.mjs": { + "bytes": 3109, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/logo.mjs": { + "bytes": 3232, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/logo.mjs": { - "bytes": 3258, + "node_modules/@shikijs/langs/dist/luau.mjs": { + "bytes": 14023, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/luau.mjs": { - "bytes": 13462, + "node_modules/@shikijs/langs/dist/make.mjs": { + "bytes": 9993, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/marko.mjs": { - "bytes": 20968, + "node_modules/@shikijs/langs/dist/marko.mjs": { + "bytes": 18842, "imports": [ { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/less.mjs", + "path": "node_modules/@shikijs/langs/dist/less.mjs", "kind": "import-statement", "original": "./less.mjs" }, { - "path": "node_modules/shiki/dist/langs/scss.mjs", + "path": "node_modules/@shikijs/langs/dist/scss.mjs", "kind": "import-statement", "original": "./scss.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/matlab.mjs": { - "bytes": 21328, + "node_modules/@shikijs/langs/dist/matlab.mjs": { + "bytes": 17923, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/mdc.mjs": { - "bytes": 20669, + "node_modules/@shikijs/langs/dist/mdc.mjs": { + "bytes": 20501, "imports": [ { - "path": "node_modules/shiki/dist/langs/markdown.mjs", + "path": "node_modules/@shikijs/langs/dist/markdown.mjs", "kind": "import-statement", "original": "./markdown.mjs" }, { - "path": "node_modules/shiki/dist/langs/yaml.mjs", + "path": "node_modules/@shikijs/langs/dist/yaml.mjs", "kind": "import-statement", "original": "./yaml.mjs" }, { - "path": "node_modules/shiki/dist/langs/html-derivative.mjs", + "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", "kind": "import-statement", "original": "./html-derivative.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/mdx.mjs": { - "bytes": 131895, + "node_modules/@shikijs/langs/dist/mdx.mjs": { + "bytes": 146296, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/mermaid.mjs": { - "bytes": 31648, + "node_modules/@shikijs/langs/dist/mermaid.mjs": { + "bytes": 31809, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/mojo.mjs": { - "bytes": 80489, + "node_modules/@shikijs/langs/dist/mipsasm.mjs": { + "bytes": 3496, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/move.mjs": { - "bytes": 21064, + "node_modules/@shikijs/langs/dist/mojo.mjs": { + "bytes": 76365, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/narrat.mjs": { - "bytes": 3914, + "node_modules/@shikijs/langs/dist/move.mjs": { + "bytes": 19523, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/nextflow.mjs": { - "bytes": 5015, + "node_modules/@shikijs/langs/dist/narrat.mjs": { + "bytes": 4078, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/nginx.mjs": { - "bytes": 38261, + "node_modules/@shikijs/langs/dist/nextflow.mjs": { + "bytes": 4425, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/nginx.mjs": { + "bytes": 39263, "imports": [ { - "path": "node_modules/shiki/dist/langs/lua.mjs", + "path": "node_modules/@shikijs/langs/dist/lua.mjs", "kind": "import-statement", "original": "./lua.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/nim.mjs": { - "bytes": 24922, + "node_modules/@shikijs/langs/dist/nim.mjs": { + "bytes": 25240, "imports": [ { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/@shikijs/langs/dist/c.mjs", "kind": "import-statement", "original": "./c.mjs" }, { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", "original": "./xml.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/glsl.mjs", + "path": "node_modules/@shikijs/langs/dist/glsl.mjs", "kind": "import-statement", "original": "./glsl.mjs" }, { - "path": "node_modules/shiki/dist/langs/markdown.mjs", + "path": "node_modules/@shikijs/langs/dist/markdown.mjs", "kind": "import-statement", "original": "./markdown.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/nix.mjs": { - "bytes": 16400, + "node_modules/@shikijs/langs/dist/nix.mjs": { + "bytes": 16666, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/nushell.mjs": { + "bytes": 21706, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/objective-c.mjs": { + "bytes": 111881, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/nushell.mjs": { - "bytes": 20416, + "node_modules/@shikijs/langs/dist/objective-cpp.mjs": { + "bytes": 184402, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/objective-cpp.mjs": { - "bytes": 182972, + "node_modules/@shikijs/langs/dist/ocaml.mjs": { + "bytes": 67246, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/pascal.mjs": { - "bytes": 4316, + "node_modules/@shikijs/langs/dist/pascal.mjs": { + "bytes": 4448, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/php.mjs": { - "bytes": 114295, + "node_modules/@shikijs/langs/dist/perl.mjs": { + "bytes": 48246, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", "original": "./xml.mjs" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./sql.mjs" + "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "./json.mjs" + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/php.mjs": { + "bytes": 118079, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", - "original": "./css.mjs" + "original": "./xml.mjs" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "./java.mjs" + "original": "./sql.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/json.mjs", + "kind": "import-statement", + "original": "./json.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/plsql.mjs": { - "bytes": 8618, + "node_modules/@shikijs/langs/dist/plsql.mjs": { + "bytes": 8997, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/po.mjs": { + "bytes": 3683, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/po.mjs": { - "bytes": 3579, + "node_modules/@shikijs/langs/dist/polar.mjs": { + "bytes": 5350, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/powerquery.mjs": { - "bytes": 6263, + "node_modules/@shikijs/langs/dist/powerquery.mjs": { + "bytes": 6537, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/powershell.mjs": { - "bytes": 23291, + "node_modules/@shikijs/langs/dist/powershell.mjs": { + "bytes": 21907, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/prisma.mjs": { - "bytes": 6664, + "node_modules/@shikijs/langs/dist/prisma.mjs": { + "bytes": 7116, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/prolog.mjs": { - "bytes": 11781, + "node_modules/@shikijs/langs/dist/prolog.mjs": { + "bytes": 11854, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/proto.mjs": { - "bytes": 7108, + "node_modules/@shikijs/langs/dist/proto.mjs": { + "bytes": 7412, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/pug.mjs": { - "bytes": 15964, + "node_modules/@shikijs/langs/dist/pug.mjs": { + "bytes": 15621, "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/sass.mjs", - "kind": "import-statement", - "original": "./sass.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/stylus.mjs", - "kind": "import-statement", - "original": "./stylus.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/coffee.mjs", - "kind": "import-statement", - "original": "./coffee.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/puppet.mjs": { - "bytes": 12805, + "node_modules/@shikijs/langs/dist/puppet.mjs": { + "bytes": 12765, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/purescript.mjs": { - "bytes": 17229, + "node_modules/@shikijs/langs/dist/purescript.mjs": { + "bytes": 25537, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/qml.mjs": { - "bytes": 5830, + "node_modules/@shikijs/langs/dist/qml.mjs": { + "bytes": 6063, "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/qmldir.mjs": { - "bytes": 1093, + "node_modules/@shikijs/langs/dist/qmldir.mjs": { + "bytes": 1128, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/qss.mjs": { - "bytes": 8095, + "node_modules/@shikijs/langs/dist/qss.mjs": { + "bytes": 7944, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/racket.mjs": { - "bytes": 105750, + "node_modules/@shikijs/langs/dist/racket.mjs": { + "bytes": 95026, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/raku.mjs": { - "bytes": 10820, + "node_modules/@shikijs/langs/dist/raku.mjs": { + "bytes": 11063, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/razor.mjs": { - "bytes": 27982, + "node_modules/@shikijs/langs/dist/razor.mjs": { + "bytes": 28504, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/csharp.mjs", + "path": "node_modules/@shikijs/langs/dist/csharp.mjs", "kind": "import-statement", "original": "./csharp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/reg.mjs": { - "bytes": 2543, + "node_modules/@shikijs/langs/dist/reg.mjs": { + "bytes": 2613, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/rel.mjs": { - "bytes": 3646, + "node_modules/@shikijs/langs/dist/rel.mjs": { + "bytes": 3722, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/riscv.mjs": { - "bytes": 7737, + "node_modules/@shikijs/langs/dist/riscv.mjs": { + "bytes": 7470, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/rst.mjs": { - "bytes": 11112, + "node_modules/@shikijs/langs/dist/rst.mjs": { + "bytes": 11596, "imports": [ { - "path": "node_modules/shiki/dist/langs/html-derivative.mjs", + "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", "kind": "import-statement", "original": "./html-derivative.mjs" }, { - "path": "node_modules/shiki/dist/langs/cpp.mjs", + "path": "node_modules/@shikijs/langs/dist/cpp.mjs", "kind": "import-statement", "original": "./cpp.mjs" }, { - "path": "node_modules/shiki/dist/langs/python.mjs", + "path": "node_modules/@shikijs/langs/dist/python.mjs", "kind": "import-statement", "original": "./python.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", "original": "./shellscript.mjs" }, { - "path": "node_modules/shiki/dist/langs/yaml.mjs", + "path": "node_modules/@shikijs/langs/dist/yaml.mjs", "kind": "import-statement", "original": "./yaml.mjs" }, { - "path": "node_modules/shiki/dist/langs/cmake.mjs", + "path": "node_modules/@shikijs/langs/dist/cmake.mjs", "kind": "import-statement", "original": "./cmake.mjs" }, { - "path": "node_modules/shiki/dist/langs/ruby.mjs", + "path": "node_modules/@shikijs/langs/dist/ruby.mjs", "kind": "import-statement", "original": "./ruby.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cpp-macro.mjs", - "kind": "import-statement", - "original": "./cpp-macro.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/lua.mjs", - "kind": "import-statement", - "original": "./lua.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/sas.mjs": { - "bytes": 10111, + "node_modules/@shikijs/langs/dist/rust.mjs": { + "bytes": 16908, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/sas.mjs": { + "bytes": 9564, "imports": [ { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", "original": "./sql.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/scheme.mjs": { - "bytes": 9057, + "node_modules/@shikijs/langs/dist/sass.mjs": { + "bytes": 10403, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/scala.mjs": { + "bytes": 31287, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/shaderlab.mjs": { - "bytes": 6441, + "node_modules/@shikijs/langs/dist/scheme.mjs": { + "bytes": 7828, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/shaderlab.mjs": { + "bytes": 6310, "imports": [ { - "path": "node_modules/shiki/dist/langs/hlsl.mjs", + "path": "node_modules/@shikijs/langs/dist/hlsl.mjs", "kind": "import-statement", "original": "./hlsl.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/shellsession.mjs": { - "bytes": 836, + "node_modules/@shikijs/langs/dist/shellsession.mjs": { + "bytes": 792, "imports": [ { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", "original": "./shellscript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/smalltalk.mjs": { - "bytes": 4420, + "node_modules/@shikijs/langs/dist/smalltalk.mjs": { + "bytes": 7275, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/solidity.mjs": { - "bytes": 17302, + "node_modules/@shikijs/langs/dist/solidity.mjs": { + "bytes": 18223, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/soy.mjs": { - "bytes": 7648, + "node_modules/@shikijs/langs/dist/soy.mjs": { + "bytes": 7946, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/turtle.mjs": { - "bytes": 4039, + "node_modules/@shikijs/langs/dist/turtle.mjs": { + "bytes": 4164, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/sparql.mjs": { - "bytes": 1577, + "node_modules/@shikijs/langs/dist/sparql.mjs": { + "bytes": 1575, "imports": [ { - "path": "node_modules/shiki/dist/langs/turtle.mjs", + "path": "node_modules/@shikijs/langs/dist/turtle.mjs", "kind": "import-statement", "original": "./turtle.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/splunk.mjs": { - "bytes": 3933, + "node_modules/@shikijs/langs/dist/splunk.mjs": { + "bytes": 3613, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/ssh-config.mjs": { - "bytes": 3718, + "node_modules/@shikijs/langs/dist/ssh-config.mjs": { + "bytes": 3781, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/stata.mjs": { - "bytes": 63863, + "node_modules/@shikijs/langs/dist/stata.mjs": { + "bytes": 61836, "imports": [ { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", "original": "./sql.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/svelte.mjs": { - "bytes": 18447, + "node_modules/@shikijs/langs/dist/stylus.mjs": { + "bytes": 33189, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/svelte.mjs": { + "bytes": 19326, "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/typescript.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/coffee.mjs", - "kind": "import-statement", - "original": "./coffee.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/stylus.mjs", - "kind": "import-statement", - "original": "./stylus.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/sass.mjs", - "kind": "import-statement", - "original": "./sass.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/less.mjs", - "kind": "import-statement", - "original": "./less.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/postcss.mjs", + "path": "node_modules/@shikijs/langs/dist/postcss.mjs", "kind": "import-statement", "original": "./postcss.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/pug.mjs", - "kind": "import-statement", - "original": "./pug.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/system-verilog.mjs": { - "bytes": 27334, + "node_modules/@shikijs/langs/dist/swift.mjs": { + "bytes": 93140, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/systemd.mjs": { - "bytes": 8266, + "node_modules/@shikijs/langs/dist/system-verilog.mjs": { + "bytes": 28546, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/tasl.mjs": { - "bytes": 3781, + "node_modules/@shikijs/langs/dist/systemd.mjs": { + "bytes": 8541, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/talonscript.mjs": { + "bytes": 7683, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/tcl.mjs": { - "bytes": 5268, + "node_modules/@shikijs/langs/dist/tasl.mjs": { + "bytes": 3778, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/tcl.mjs": { + "bytes": 4920, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/templ.mjs": { - "bytes": 25094, + "node_modules/@shikijs/langs/dist/templ.mjs": { + "bytes": 25992, "imports": [ { - "path": "node_modules/shiki/dist/langs/go.mjs", + "path": "node_modules/@shikijs/langs/dist/go.mjs", "kind": "import-statement", "original": "./go.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/terraform.mjs": { - "bytes": 14191, + "node_modules/@shikijs/langs/dist/terraform.mjs": { + "bytes": 12736, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/tsv.mjs": { - "bytes": 783, + "node_modules/@shikijs/langs/dist/toml.mjs": { + "bytes": 7192, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/twig.mjs": { - "bytes": 23708, + "node_modules/@shikijs/langs/dist/es-tag-css.mjs": { + "bytes": 2185, "imports": [ { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" - }, + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/es-tag-glsl.mjs": { + "bytes": 2065, + "imports": [ { - "path": "node_modules/shiki/dist/langs/scss.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "original": "./scss.mjs" + "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/php.mjs", + "path": "node_modules/@shikijs/langs/dist/glsl.mjs", "kind": "import-statement", - "original": "./php.mjs" + "original": "./glsl.mjs" }, { - "path": "node_modules/shiki/dist/langs/python.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./python.mjs" - }, + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/es-tag-html.mjs": { + "bytes": 2416, + "imports": [ { - "path": "node_modules/shiki/dist/langs/ruby.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "original": "./ruby.mjs" + "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/es-tag-sql.mjs": { + "bytes": 1900, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/es-tag-xml.mjs": { + "bytes": 1361, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", "original": "./xml.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/ts-tags.mjs": { + "bytes": 690, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/@shikijs/langs/dist/es-tag-css.mjs", "kind": "import-statement", - "original": "./java.mjs" + "original": "./es-tag-css.mjs" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/es-tag-glsl.mjs", "kind": "import-statement", - "original": "./sql.mjs" + "original": "./es-tag-glsl.mjs" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/es-tag-html.mjs", "kind": "import-statement", - "original": "./json.mjs" + "original": "./es-tag-html.mjs" }, { - "path": "node_modules/shiki/dist/langs/c.mjs", + "path": "node_modules/@shikijs/langs/dist/es-tag-sql.mjs", "kind": "import-statement", - "original": "./c.mjs" + "original": "./es-tag-sql.mjs" }, { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/es-tag-xml.mjs", "kind": "import-statement", - "original": "./shellscript.mjs" + "original": "./es-tag-xml.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/tsv.mjs": { + "bytes": 831, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/twig.mjs": { + "bytes": 23232, + "imports": [ + { + "path": "node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/lua.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./lua.mjs" + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/scss.mjs", + "kind": "import-statement", + "original": "./scss.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/php.mjs", + "kind": "import-statement", + "original": "./php.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/python.mjs", + "kind": "import-statement", + "original": "./python.mjs" + }, + { + "path": "node_modules/@shikijs/langs/dist/ruby.mjs", + "kind": "import-statement", + "original": "./ruby.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/typespec.mjs": { - "bytes": 29287, + "node_modules/@shikijs/langs/dist/typespec.mjs": { + "bytes": 26145, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/typst.mjs": { - "bytes": 9108, + "node_modules/@shikijs/langs/dist/typst.mjs": { + "bytes": 9409, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/v.mjs": { - "bytes": 14554, + "node_modules/@shikijs/langs/dist/v.mjs": { + "bytes": 14880, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/vala.mjs": { - "bytes": 3555, + "node_modules/@shikijs/langs/dist/vala.mjs": { + "bytes": 3710, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/vb.mjs": { - "bytes": 6417, + "node_modules/@shikijs/langs/dist/vb.mjs": { + "bytes": 6535, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/verilog.mjs": { - "bytes": 6196, + "node_modules/@shikijs/langs/dist/verilog.mjs": { + "bytes": 6444, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/vhdl.mjs": { - "bytes": 26403, + "node_modules/@shikijs/langs/dist/vhdl.mjs": { + "bytes": 26765, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/viml.mjs": { - "bytes": 21405, + "node_modules/@shikijs/langs/dist/viml.mjs": { + "bytes": 21169, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/markdown-vue.mjs": { - "bytes": 827, + "node_modules/@shikijs/langs/dist/markdown-vue.mjs": { + "bytes": 841, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/vue-directives.mjs": { - "bytes": 487, + "node_modules/@shikijs/langs/dist/vue-directives.mjs": { + "bytes": 464, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/vue-interpolations.mjs": { - "bytes": 478, + "node_modules/@shikijs/langs/dist/vue-interpolations.mjs": { + "bytes": 447, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/langs/vue-sfc-style-variable-injection.mjs": { - "bytes": 1092, + "node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs": { + "bytes": 1053, "imports": [ { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", "original": "./javascript.mjs" } ], "format": "esm" }, - "node_modules/shiki/dist/langs/vue.mjs": { - "bytes": 20855, + "node_modules/@shikijs/langs/dist/vue.mjs": { + "bytes": 21396, "imports": [ { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/markdown.mjs", + "path": "node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./markdown.mjs" + "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/langs/pug.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./pug.mjs" + "original": "./javascript.mjs" }, { - "path": "node_modules/shiki/dist/langs/stylus.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "original": "./stylus.mjs" + "original": "./typescript.mjs" }, { - "path": "node_modules/shiki/dist/langs/sass.mjs", + "path": "node_modules/@shikijs/langs/dist/json.mjs", "kind": "import-statement", - "original": "./sass.mjs" + "original": "./json.mjs" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", + "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", "kind": "import-statement", - "original": "./css.mjs" + "original": "./html-derivative.mjs" }, { - "path": "node_modules/shiki/dist/langs/scss.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "./scss.mjs" + "original": "./html.mjs" }, { - "path": "node_modules/shiki/dist/langs/less.mjs", + "path": "node_modules/@shikijs/langs/dist/markdown-vue.mjs", "kind": "import-statement", - "original": "./less.mjs" + "original": "./markdown-vue.mjs" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/vue-directives.mjs", "kind": "import-statement", - "original": "./javascript.mjs" + "original": "./vue-directives.mjs" }, { - "path": "node_modules/shiki/dist/langs/typescript.mjs", + "path": "node_modules/@shikijs/langs/dist/vue-interpolations.mjs", "kind": "import-statement", - "original": "./typescript.mjs" + "original": "./vue-interpolations.mjs" }, { - "path": "node_modules/shiki/dist/langs/jsx.mjs", + "path": "node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs", "kind": "import-statement", - "original": "./jsx.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/tsx.mjs", - "kind": "import-statement", - "original": "./tsx.mjs" - }, + "original": "./vue-sfc-style-variable-injection.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/vue-html.mjs": { + "bytes": 9537, + "imports": [ { - "path": "node_modules/shiki/dist/langs/coffee.mjs", + "path": "node_modules/@shikijs/langs/dist/vue.mjs", "kind": "import-statement", - "original": "./coffee.mjs" + "original": "./vue.mjs" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./json.mjs" - }, + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/vyper.mjs": { + "bytes": 82010, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/wasm.mjs": { + "bytes": 13198, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/wenyan.mjs": { + "bytes": 2393, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/wgsl.mjs": { + "bytes": 5740, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/wikitext.mjs": { + "bytes": 62313, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/wit.mjs": { + "bytes": 23911, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/wolfram.mjs": { + "bytes": 266942, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/xsl.mjs": { + "bytes": 1529, + "imports": [ { - "path": "node_modules/shiki/dist/langs/jsonc.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", - "original": "./jsonc.mjs" - }, + "original": "./xml.mjs" + } + ], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/zenscript.mjs": { + "bytes": 4335, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/langs/dist/zig.mjs": { + "bytes": 5970, + "imports": [], + "format": "esm" + }, + "node_modules/shiki/dist/langs.mjs": { + "bytes": 25943, + "imports": [ { - "path": "node_modules/shiki/dist/langs/json5.mjs", - "kind": "import-statement", - "original": "./json5.mjs" + "path": "node_modules/@shikijs/langs/dist/abap.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/abap" }, { - "path": "node_modules/shiki/dist/langs/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" + "path": "node_modules/@shikijs/langs/dist/actionscript-3.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/actionscript-3" }, { - "path": "node_modules/shiki/dist/langs/toml.mjs", - "kind": "import-statement", - "original": "./toml.mjs" + "path": "node_modules/@shikijs/langs/dist/ada.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ada" }, { - "path": "node_modules/shiki/dist/langs/graphql.mjs", - "kind": "import-statement", - "original": "./graphql.mjs" + "path": "node_modules/@shikijs/langs/dist/angular-html.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/angular-html" }, { - "path": "node_modules/shiki/dist/langs/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" + "path": "node_modules/@shikijs/langs/dist/angular-ts.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/angular-ts" }, { - "path": "node_modules/shiki/dist/langs/markdown-vue.mjs", - "kind": "import-statement", - "original": "./markdown-vue.mjs" + "path": "node_modules/@shikijs/langs/dist/apache.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/apache" }, { - "path": "node_modules/shiki/dist/langs/vue-directives.mjs", - "kind": "import-statement", - "original": "./vue-directives.mjs" + "path": "node_modules/@shikijs/langs/dist/apex.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/apex" }, { - "path": "node_modules/shiki/dist/langs/vue-interpolations.mjs", - "kind": "import-statement", - "original": "./vue-interpolations.mjs" + "path": "node_modules/@shikijs/langs/dist/apl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/apl" }, { - "path": "node_modules/shiki/dist/langs/vue-sfc-style-variable-injection.mjs", - "kind": "import-statement", - "original": "./vue-sfc-style-variable-injection.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/vue-html.mjs": { - "bytes": 9865, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/vue.mjs", - "kind": "import-statement", - "original": "./vue.mjs" + "path": "node_modules/@shikijs/langs/dist/applescript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/applescript" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" + "path": "node_modules/@shikijs/langs/dist/ara.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ara" }, { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" + "path": "node_modules/@shikijs/langs/dist/asciidoc.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/asciidoc" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" + "path": "node_modules/@shikijs/langs/dist/asm.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/asm" }, { - "path": "node_modules/shiki/dist/langs/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" + "path": "node_modules/@shikijs/langs/dist/astro.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/astro" }, { - "path": "node_modules/shiki/dist/langs/pug.mjs", - "kind": "import-statement", - "original": "./pug.mjs" + "path": "node_modules/@shikijs/langs/dist/awk.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/awk" }, { - "path": "node_modules/shiki/dist/langs/sass.mjs", - "kind": "import-statement", - "original": "./sass.mjs" + "path": "node_modules/@shikijs/langs/dist/ballerina.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ballerina" }, { - "path": "node_modules/shiki/dist/langs/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" + "path": "node_modules/@shikijs/langs/dist/bat.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/bat" }, { - "path": "node_modules/shiki/dist/langs/stylus.mjs", - "kind": "import-statement", - "original": "./stylus.mjs" + "path": "node_modules/@shikijs/langs/dist/beancount.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/beancount" }, { - "path": "node_modules/shiki/dist/langs/coffee.mjs", - "kind": "import-statement", - "original": "./coffee.mjs" + "path": "node_modules/@shikijs/langs/dist/berry.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/berry" }, { - "path": "node_modules/shiki/dist/langs/less.mjs", - "kind": "import-statement", - "original": "./less.mjs" + "path": "node_modules/@shikijs/langs/dist/bibtex.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/bibtex" }, { - "path": "node_modules/shiki/dist/langs/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" + "path": "node_modules/@shikijs/langs/dist/bicep.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/bicep" }, { - "path": "node_modules/shiki/dist/langs/jsx.mjs", - "kind": "import-statement", - "original": "./jsx.mjs" + "path": "node_modules/@shikijs/langs/dist/blade.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/blade" }, { - "path": "node_modules/shiki/dist/langs/tsx.mjs", - "kind": "import-statement", - "original": "./tsx.mjs" + "path": "node_modules/@shikijs/langs/dist/bsl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/bsl" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" + "path": "node_modules/@shikijs/langs/dist/c.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/c" }, { - "path": "node_modules/shiki/dist/langs/jsonc.mjs", - "kind": "import-statement", - "original": "./jsonc.mjs" + "path": "node_modules/@shikijs/langs/dist/cadence.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cadence" }, { - "path": "node_modules/shiki/dist/langs/json5.mjs", - "kind": "import-statement", - "original": "./json5.mjs" + "path": "node_modules/@shikijs/langs/dist/cairo.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cairo" }, { - "path": "node_modules/shiki/dist/langs/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" + "path": "node_modules/@shikijs/langs/dist/clarity.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/clarity" }, { - "path": "node_modules/shiki/dist/langs/toml.mjs", - "kind": "import-statement", - "original": "./toml.mjs" + "path": "node_modules/@shikijs/langs/dist/clojure.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/clojure" }, { - "path": "node_modules/shiki/dist/langs/graphql.mjs", - "kind": "import-statement", - "original": "./graphql.mjs" + "path": "node_modules/@shikijs/langs/dist/cmake.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cmake" }, { - "path": "node_modules/shiki/dist/langs/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" + "path": "node_modules/@shikijs/langs/dist/cobol.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cobol" }, { - "path": "node_modules/shiki/dist/langs/markdown-vue.mjs", - "kind": "import-statement", - "original": "./markdown-vue.mjs" + "path": "node_modules/@shikijs/langs/dist/codeowners.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/codeowners" }, { - "path": "node_modules/shiki/dist/langs/vue-directives.mjs", - "kind": "import-statement", - "original": "./vue-directives.mjs" + "path": "node_modules/@shikijs/langs/dist/codeql.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/codeql" }, { - "path": "node_modules/shiki/dist/langs/vue-interpolations.mjs", - "kind": "import-statement", - "original": "./vue-interpolations.mjs" + "path": "node_modules/@shikijs/langs/dist/coffee.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/coffee" }, { - "path": "node_modules/shiki/dist/langs/vue-sfc-style-variable-injection.mjs", - "kind": "import-statement", - "original": "./vue-sfc-style-variable-injection.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/vyper.mjs": { - "bytes": 87236, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/wasm.mjs": { - "bytes": 16704, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/wenyan.mjs": { - "bytes": 3180, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/wgsl.mjs": { - "bytes": 6916, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/xsl.mjs": { - "bytes": 1530, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" + "path": "node_modules/@shikijs/langs/dist/common-lisp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/common-lisp" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/wikitext.mjs": { - "bytes": 63153, - "imports": [ + "path": "node_modules/@shikijs/langs/dist/coq.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/coq" + }, { - "path": "node_modules/shiki/dist/langs/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" + "path": "node_modules/@shikijs/langs/dist/cpp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cpp" }, { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" + "path": "node_modules/@shikijs/langs/dist/crystal.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/crystal" }, { - "path": "node_modules/shiki/dist/langs/ini.mjs", - "kind": "import-statement", - "original": "./ini.mjs" + "path": "node_modules/@shikijs/langs/dist/csharp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/csharp" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" + "path": "node_modules/@shikijs/langs/dist/css.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/css" }, { - "path": "node_modules/shiki/dist/langs/lua.mjs", - "kind": "import-statement", - "original": "./lua.mjs" + "path": "node_modules/@shikijs/langs/dist/csv.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/csv" }, { - "path": "node_modules/shiki/dist/langs/make.mjs", - "kind": "import-statement", - "original": "./make.mjs" + "path": "node_modules/@shikijs/langs/dist/cue.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cue" }, { - "path": "node_modules/shiki/dist/langs/perl.mjs", - "kind": "import-statement", - "original": "./perl.mjs" + "path": "node_modules/@shikijs/langs/dist/cypher.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cypher" }, { - "path": "node_modules/shiki/dist/langs/r.mjs", - "kind": "import-statement", - "original": "./r.mjs" + "path": "node_modules/@shikijs/langs/dist/d.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/d" }, { - "path": "node_modules/shiki/dist/langs/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" + "path": "node_modules/@shikijs/langs/dist/dart.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/dart" }, { - "path": "node_modules/shiki/dist/langs/php.mjs", - "kind": "import-statement", - "original": "./php.mjs" + "path": "node_modules/@shikijs/langs/dist/dax.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/dax" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" + "path": "node_modules/@shikijs/langs/dist/desktop.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/desktop" }, { - "path": "node_modules/shiki/dist/langs/vb.mjs", - "kind": "import-statement", - "original": "./vb.mjs" + "path": "node_modules/@shikijs/langs/dist/diff.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/diff" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" + "path": "node_modules/@shikijs/langs/dist/docker.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/docker" }, { - "path": "node_modules/shiki/dist/langs/xsl.mjs", - "kind": "import-statement", - "original": "./xsl.mjs" + "path": "node_modules/@shikijs/langs/dist/dotenv.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/dotenv" }, { - "path": "node_modules/shiki/dist/langs/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" + "path": "node_modules/@shikijs/langs/dist/dream-maker.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/dream-maker" }, { - "path": "node_modules/shiki/dist/langs/bat.mjs", - "kind": "import-statement", - "original": "./bat.mjs" + "path": "node_modules/@shikijs/langs/dist/edge.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/edge" }, { - "path": "node_modules/shiki/dist/langs/clojure.mjs", - "kind": "import-statement", - "original": "./clojure.mjs" + "path": "node_modules/@shikijs/langs/dist/elixir.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/elixir" }, { - "path": "node_modules/shiki/dist/langs/coffee.mjs", - "kind": "import-statement", - "original": "./coffee.mjs" + "path": "node_modules/@shikijs/langs/dist/elm.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/elm" }, { - "path": "node_modules/shiki/dist/langs/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" + "path": "node_modules/@shikijs/langs/dist/emacs-lisp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/emacs-lisp" }, { - "path": "node_modules/shiki/dist/langs/cpp.mjs", - "kind": "import-statement", - "original": "./cpp.mjs" + "path": "node_modules/@shikijs/langs/dist/erb.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/erb" }, { - "path": "node_modules/shiki/dist/langs/diff.mjs", - "kind": "import-statement", - "original": "./diff.mjs" + "path": "node_modules/@shikijs/langs/dist/erlang.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/erlang" }, { - "path": "node_modules/shiki/dist/langs/docker.mjs", - "kind": "import-statement", - "original": "./docker.mjs" + "path": "node_modules/@shikijs/langs/dist/fennel.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fennel" }, { - "path": "node_modules/shiki/dist/langs/go.mjs", - "kind": "import-statement", - "original": "./go.mjs" + "path": "node_modules/@shikijs/langs/dist/fish.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fish" }, { - "path": "node_modules/shiki/dist/langs/groovy.mjs", - "kind": "import-statement", - "original": "./groovy.mjs" + "path": "node_modules/@shikijs/langs/dist/fluent.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fluent" }, { - "path": "node_modules/shiki/dist/langs/pug.mjs", - "kind": "import-statement", - "original": "./pug.mjs" + "path": "node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fortran-fixed-form" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" + "path": "node_modules/@shikijs/langs/dist/fortran-free-form.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fortran-free-form" }, { - "path": "node_modules/shiki/dist/langs/jsonc.mjs", - "kind": "import-statement", - "original": "./jsonc.mjs" + "path": "node_modules/@shikijs/langs/dist/fsharp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fsharp" }, { - "path": "node_modules/shiki/dist/langs/less.mjs", - "kind": "import-statement", - "original": "./less.mjs" + "path": "node_modules/@shikijs/langs/dist/gdresource.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gdresource" }, { - "path": "node_modules/shiki/dist/langs/objective-c.mjs", - "kind": "import-statement", - "original": "./objective-c.mjs" + "path": "node_modules/@shikijs/langs/dist/gdscript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gdscript" }, { - "path": "node_modules/shiki/dist/langs/swift.mjs", - "kind": "import-statement", - "original": "./swift.mjs" + "path": "node_modules/@shikijs/langs/dist/gdshader.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gdshader" }, { - "path": "node_modules/shiki/dist/langs/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/raku.mjs", - "kind": "import-statement", - "original": "./raku.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/powershell.mjs", - "kind": "import-statement", - "original": "./powershell.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/julia.mjs", - "kind": "import-statement", - "original": "./julia.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/rust.mjs", - "kind": "import-statement", - "original": "./rust.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/scala.mjs", - "kind": "import-statement", - "original": "./scala.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/csharp.mjs", - "kind": "import-statement", - "original": "./csharp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/fsharp.mjs", - "kind": "import-statement", - "original": "./fsharp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/dart.mjs", - "kind": "import-statement", - "original": "./dart.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/handlebars.mjs", - "kind": "import-statement", - "original": "./handlebars.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/erlang.mjs", - "kind": "import-statement", - "original": "./erlang.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/elixir.mjs", - "kind": "import-statement", - "original": "./elixir.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/latex.mjs", - "kind": "import-statement", - "original": "./latex.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/bibtex.mjs", - "kind": "import-statement", - "original": "./bibtex.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cpp-macro.mjs", - "kind": "import-statement", - "original": "./cpp-macro.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/sass.mjs", - "kind": "import-statement", - "original": "./sass.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/stylus.mjs", - "kind": "import-statement", - "original": "./stylus.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/tex.mjs", - "kind": "import-statement", - "original": "./tex.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/gnuplot.mjs", - "kind": "import-statement", - "original": "./gnuplot.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/haskell.mjs", - "kind": "import-statement", - "original": "./haskell.mjs" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/langs/wolfram.mjs": { - "bytes": 270242, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/zenscript.mjs": { - "bytes": 4646, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs/zig.mjs": { - "bytes": 5729, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs.mjs": { - "bytes": 23745, - "imports": [ - { - "path": "node_modules/shiki/dist/langs/abap.mjs", - "kind": "dynamic-import", - "original": "./langs/abap.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/actionscript-3.mjs", - "kind": "dynamic-import", - "original": "./langs/actionscript-3.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/ada.mjs", - "kind": "dynamic-import", - "original": "./langs/ada.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/angular-html.mjs", - "kind": "dynamic-import", - "original": "./langs/angular-html.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/angular-ts.mjs", - "kind": "dynamic-import", - "original": "./langs/angular-ts.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/apache.mjs", - "kind": "dynamic-import", - "original": "./langs/apache.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/apex.mjs", - "kind": "dynamic-import", - "original": "./langs/apex.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/apl.mjs", - "kind": "dynamic-import", - "original": "./langs/apl.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/applescript.mjs", - "kind": "dynamic-import", - "original": "./langs/applescript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/ara.mjs", - "kind": "dynamic-import", - "original": "./langs/ara.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/asciidoc.mjs", - "kind": "dynamic-import", - "original": "./langs/asciidoc.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/asm.mjs", - "kind": "dynamic-import", - "original": "./langs/asm.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/astro.mjs", - "kind": "dynamic-import", - "original": "./langs/astro.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/awk.mjs", - "kind": "dynamic-import", - "original": "./langs/awk.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/ballerina.mjs", - "kind": "dynamic-import", - "original": "./langs/ballerina.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/bat.mjs", - "kind": "dynamic-import", - "original": "./langs/bat.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/beancount.mjs", - "kind": "dynamic-import", - "original": "./langs/beancount.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/berry.mjs", - "kind": "dynamic-import", - "original": "./langs/berry.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/bibtex.mjs", - "kind": "dynamic-import", - "original": "./langs/bibtex.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/bicep.mjs", - "kind": "dynamic-import", - "original": "./langs/bicep.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/blade.mjs", - "kind": "dynamic-import", - "original": "./langs/blade.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/c.mjs", - "kind": "dynamic-import", - "original": "./langs/c.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cadence.mjs", - "kind": "dynamic-import", - "original": "./langs/cadence.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/clarity.mjs", - "kind": "dynamic-import", - "original": "./langs/clarity.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/clojure.mjs", - "kind": "dynamic-import", - "original": "./langs/clojure.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cmake.mjs", - "kind": "dynamic-import", - "original": "./langs/cmake.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cobol.mjs", - "kind": "dynamic-import", - "original": "./langs/cobol.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/codeowners.mjs", - "kind": "dynamic-import", - "original": "./langs/codeowners.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/codeql.mjs", - "kind": "dynamic-import", - "original": "./langs/codeql.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/coffee.mjs", - "kind": "dynamic-import", - "original": "./langs/coffee.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/common-lisp.mjs", - "kind": "dynamic-import", - "original": "./langs/common-lisp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cpp.mjs", - "kind": "dynamic-import", - "original": "./langs/cpp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/crystal.mjs", - "kind": "dynamic-import", - "original": "./langs/crystal.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/csharp.mjs", - "kind": "dynamic-import", - "original": "./langs/csharp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/css.mjs", - "kind": "dynamic-import", - "original": "./langs/css.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/csv.mjs", - "kind": "dynamic-import", - "original": "./langs/csv.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cue.mjs", - "kind": "dynamic-import", - "original": "./langs/cue.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/cypher.mjs", - "kind": "dynamic-import", - "original": "./langs/cypher.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/d.mjs", - "kind": "dynamic-import", - "original": "./langs/d.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/dart.mjs", - "kind": "dynamic-import", - "original": "./langs/dart.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/dax.mjs", - "kind": "dynamic-import", - "original": "./langs/dax.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/desktop.mjs", - "kind": "dynamic-import", - "original": "./langs/desktop.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/diff.mjs", - "kind": "dynamic-import", - "original": "./langs/diff.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/docker.mjs", - "kind": "dynamic-import", - "original": "./langs/docker.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/dream-maker.mjs", - "kind": "dynamic-import", - "original": "./langs/dream-maker.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/edge.mjs", - "kind": "dynamic-import", - "original": "./langs/edge.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/elixir.mjs", - "kind": "dynamic-import", - "original": "./langs/elixir.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/elm.mjs", - "kind": "dynamic-import", - "original": "./langs/elm.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/emacs-lisp.mjs", - "kind": "dynamic-import", - "original": "./langs/emacs-lisp.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/erb.mjs", - "kind": "dynamic-import", - "original": "./langs/erb.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/erlang.mjs", + "path": "node_modules/@shikijs/langs/dist/genie.mjs", "kind": "dynamic-import", - "original": "./langs/erlang.mjs" + "original": "@shikijs/langs/genie" }, { - "path": "node_modules/shiki/dist/langs/fennel.mjs", + "path": "node_modules/@shikijs/langs/dist/gherkin.mjs", "kind": "dynamic-import", - "original": "./langs/fennel.mjs" + "original": "@shikijs/langs/gherkin" }, { - "path": "node_modules/shiki/dist/langs/fish.mjs", + "path": "node_modules/@shikijs/langs/dist/git-commit.mjs", "kind": "dynamic-import", - "original": "./langs/fish.mjs" + "original": "@shikijs/langs/git-commit" }, { - "path": "node_modules/shiki/dist/langs/fluent.mjs", + "path": "node_modules/@shikijs/langs/dist/git-rebase.mjs", "kind": "dynamic-import", - "original": "./langs/fluent.mjs" + "original": "@shikijs/langs/git-rebase" }, { - "path": "node_modules/shiki/dist/langs/fortran-fixed-form.mjs", + "path": "node_modules/@shikijs/langs/dist/gleam.mjs", "kind": "dynamic-import", - "original": "./langs/fortran-fixed-form.mjs" + "original": "@shikijs/langs/gleam" }, { - "path": "node_modules/shiki/dist/langs/fortran-free-form.mjs", + "path": "node_modules/@shikijs/langs/dist/glimmer-js.mjs", "kind": "dynamic-import", - "original": "./langs/fortran-free-form.mjs" + "original": "@shikijs/langs/glimmer-js" }, { - "path": "node_modules/shiki/dist/langs/fsharp.mjs", + "path": "node_modules/@shikijs/langs/dist/glimmer-ts.mjs", "kind": "dynamic-import", - "original": "./langs/fsharp.mjs" + "original": "@shikijs/langs/glimmer-ts" }, { - "path": "node_modules/shiki/dist/langs/gdresource.mjs", + "path": "node_modules/@shikijs/langs/dist/glsl.mjs", "kind": "dynamic-import", - "original": "./langs/gdresource.mjs" + "original": "@shikijs/langs/glsl" }, { - "path": "node_modules/shiki/dist/langs/gdscript.mjs", + "path": "node_modules/@shikijs/langs/dist/gnuplot.mjs", "kind": "dynamic-import", - "original": "./langs/gdscript.mjs" + "original": "@shikijs/langs/gnuplot" }, { - "path": "node_modules/shiki/dist/langs/gdshader.mjs", + "path": "node_modules/@shikijs/langs/dist/go.mjs", "kind": "dynamic-import", - "original": "./langs/gdshader.mjs" + "original": "@shikijs/langs/go" }, { - "path": "node_modules/shiki/dist/langs/genie.mjs", + "path": "node_modules/@shikijs/langs/dist/graphql.mjs", "kind": "dynamic-import", - "original": "./langs/genie.mjs" + "original": "@shikijs/langs/graphql" }, { - "path": "node_modules/shiki/dist/langs/gherkin.mjs", + "path": "node_modules/@shikijs/langs/dist/groovy.mjs", "kind": "dynamic-import", - "original": "./langs/gherkin.mjs" + "original": "@shikijs/langs/groovy" }, { - "path": "node_modules/shiki/dist/langs/git-commit.mjs", + "path": "node_modules/@shikijs/langs/dist/hack.mjs", "kind": "dynamic-import", - "original": "./langs/git-commit.mjs" + "original": "@shikijs/langs/hack" }, { - "path": "node_modules/shiki/dist/langs/git-rebase.mjs", + "path": "node_modules/@shikijs/langs/dist/haml.mjs", "kind": "dynamic-import", - "original": "./langs/git-rebase.mjs" + "original": "@shikijs/langs/haml" }, { - "path": "node_modules/shiki/dist/langs/gleam.mjs", + "path": "node_modules/@shikijs/langs/dist/handlebars.mjs", "kind": "dynamic-import", - "original": "./langs/gleam.mjs" + "original": "@shikijs/langs/handlebars" }, { - "path": "node_modules/shiki/dist/langs/glimmer-js.mjs", + "path": "node_modules/@shikijs/langs/dist/haskell.mjs", "kind": "dynamic-import", - "original": "./langs/glimmer-js.mjs" + "original": "@shikijs/langs/haskell" }, { - "path": "node_modules/shiki/dist/langs/glimmer-ts.mjs", + "path": "node_modules/@shikijs/langs/dist/haxe.mjs", "kind": "dynamic-import", - "original": "./langs/glimmer-ts.mjs" + "original": "@shikijs/langs/haxe" }, { - "path": "node_modules/shiki/dist/langs/glsl.mjs", + "path": "node_modules/@shikijs/langs/dist/hcl.mjs", "kind": "dynamic-import", - "original": "./langs/glsl.mjs" + "original": "@shikijs/langs/hcl" }, { - "path": "node_modules/shiki/dist/langs/gnuplot.mjs", + "path": "node_modules/@shikijs/langs/dist/hjson.mjs", "kind": "dynamic-import", - "original": "./langs/gnuplot.mjs" + "original": "@shikijs/langs/hjson" }, { - "path": "node_modules/shiki/dist/langs/go.mjs", + "path": "node_modules/@shikijs/langs/dist/hlsl.mjs", "kind": "dynamic-import", - "original": "./langs/go.mjs" + "original": "@shikijs/langs/hlsl" }, { - "path": "node_modules/shiki/dist/langs/graphql.mjs", + "path": "node_modules/@shikijs/langs/dist/html.mjs", "kind": "dynamic-import", - "original": "./langs/graphql.mjs" + "original": "@shikijs/langs/html" }, { - "path": "node_modules/shiki/dist/langs/groovy.mjs", + "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", "kind": "dynamic-import", - "original": "./langs/groovy.mjs" + "original": "@shikijs/langs/html-derivative" }, { - "path": "node_modules/shiki/dist/langs/hack.mjs", + "path": "node_modules/@shikijs/langs/dist/http.mjs", "kind": "dynamic-import", - "original": "./langs/hack.mjs" + "original": "@shikijs/langs/http" }, { - "path": "node_modules/shiki/dist/langs/haml.mjs", + "path": "node_modules/@shikijs/langs/dist/hxml.mjs", "kind": "dynamic-import", - "original": "./langs/haml.mjs" + "original": "@shikijs/langs/hxml" }, { - "path": "node_modules/shiki/dist/langs/handlebars.mjs", + "path": "node_modules/@shikijs/langs/dist/hy.mjs", "kind": "dynamic-import", - "original": "./langs/handlebars.mjs" + "original": "@shikijs/langs/hy" }, { - "path": "node_modules/shiki/dist/langs/haskell.mjs", + "path": "node_modules/@shikijs/langs/dist/imba.mjs", "kind": "dynamic-import", - "original": "./langs/haskell.mjs" + "original": "@shikijs/langs/imba" }, { - "path": "node_modules/shiki/dist/langs/haxe.mjs", + "path": "node_modules/@shikijs/langs/dist/ini.mjs", "kind": "dynamic-import", - "original": "./langs/haxe.mjs" + "original": "@shikijs/langs/ini" }, { - "path": "node_modules/shiki/dist/langs/hcl.mjs", + "path": "node_modules/@shikijs/langs/dist/java.mjs", "kind": "dynamic-import", - "original": "./langs/hcl.mjs" + "original": "@shikijs/langs/java" }, { - "path": "node_modules/shiki/dist/langs/hjson.mjs", + "path": "node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "dynamic-import", - "original": "./langs/hjson.mjs" + "original": "@shikijs/langs/javascript" }, { - "path": "node_modules/shiki/dist/langs/hlsl.mjs", + "path": "node_modules/@shikijs/langs/dist/jinja.mjs", "kind": "dynamic-import", - "original": "./langs/hlsl.mjs" + "original": "@shikijs/langs/jinja" }, { - "path": "node_modules/shiki/dist/langs/html.mjs", + "path": "node_modules/@shikijs/langs/dist/jison.mjs", "kind": "dynamic-import", - "original": "./langs/html.mjs" + "original": "@shikijs/langs/jison" }, { - "path": "node_modules/shiki/dist/langs/html-derivative.mjs", + "path": "node_modules/@shikijs/langs/dist/json.mjs", "kind": "dynamic-import", - "original": "./langs/html-derivative.mjs" + "original": "@shikijs/langs/json" }, { - "path": "node_modules/shiki/dist/langs/http.mjs", + "path": "node_modules/@shikijs/langs/dist/json5.mjs", "kind": "dynamic-import", - "original": "./langs/http.mjs" + "original": "@shikijs/langs/json5" }, { - "path": "node_modules/shiki/dist/langs/hxml.mjs", + "path": "node_modules/@shikijs/langs/dist/jsonc.mjs", "kind": "dynamic-import", - "original": "./langs/hxml.mjs" + "original": "@shikijs/langs/jsonc" }, { - "path": "node_modules/shiki/dist/langs/hy.mjs", + "path": "node_modules/@shikijs/langs/dist/jsonl.mjs", "kind": "dynamic-import", - "original": "./langs/hy.mjs" + "original": "@shikijs/langs/jsonl" }, { - "path": "node_modules/shiki/dist/langs/imba.mjs", + "path": "node_modules/@shikijs/langs/dist/jsonnet.mjs", "kind": "dynamic-import", - "original": "./langs/imba.mjs" + "original": "@shikijs/langs/jsonnet" }, { - "path": "node_modules/shiki/dist/langs/ini.mjs", + "path": "node_modules/@shikijs/langs/dist/jssm.mjs", "kind": "dynamic-import", - "original": "./langs/ini.mjs" + "original": "@shikijs/langs/jssm" }, { - "path": "node_modules/shiki/dist/langs/java.mjs", + "path": "node_modules/@shikijs/langs/dist/jsx.mjs", "kind": "dynamic-import", - "original": "./langs/java.mjs" + "original": "@shikijs/langs/jsx" }, { - "path": "node_modules/shiki/dist/langs/javascript.mjs", + "path": "node_modules/@shikijs/langs/dist/julia.mjs", "kind": "dynamic-import", - "original": "./langs/javascript.mjs" + "original": "@shikijs/langs/julia" }, { - "path": "node_modules/shiki/dist/langs/jinja.mjs", + "path": "node_modules/@shikijs/langs/dist/kotlin.mjs", "kind": "dynamic-import", - "original": "./langs/jinja.mjs" + "original": "@shikijs/langs/kotlin" }, { - "path": "node_modules/shiki/dist/langs/jison.mjs", + "path": "node_modules/@shikijs/langs/dist/kusto.mjs", "kind": "dynamic-import", - "original": "./langs/jison.mjs" + "original": "@shikijs/langs/kusto" }, { - "path": "node_modules/shiki/dist/langs/json.mjs", + "path": "node_modules/@shikijs/langs/dist/latex.mjs", "kind": "dynamic-import", - "original": "./langs/json.mjs" + "original": "@shikijs/langs/latex" }, { - "path": "node_modules/shiki/dist/langs/json5.mjs", + "path": "node_modules/@shikijs/langs/dist/lean.mjs", "kind": "dynamic-import", - "original": "./langs/json5.mjs" + "original": "@shikijs/langs/lean" }, { - "path": "node_modules/shiki/dist/langs/jsonc.mjs", + "path": "node_modules/@shikijs/langs/dist/less.mjs", "kind": "dynamic-import", - "original": "./langs/jsonc.mjs" + "original": "@shikijs/langs/less" }, { - "path": "node_modules/shiki/dist/langs/jsonl.mjs", + "path": "node_modules/@shikijs/langs/dist/liquid.mjs", "kind": "dynamic-import", - "original": "./langs/jsonl.mjs" + "original": "@shikijs/langs/liquid" }, { - "path": "node_modules/shiki/dist/langs/jsonnet.mjs", + "path": "node_modules/@shikijs/langs/dist/llvm.mjs", "kind": "dynamic-import", - "original": "./langs/jsonnet.mjs" + "original": "@shikijs/langs/llvm" }, { - "path": "node_modules/shiki/dist/langs/jssm.mjs", + "path": "node_modules/@shikijs/langs/dist/log.mjs", "kind": "dynamic-import", - "original": "./langs/jssm.mjs" + "original": "@shikijs/langs/log" }, { - "path": "node_modules/shiki/dist/langs/jsx.mjs", + "path": "node_modules/@shikijs/langs/dist/logo.mjs", "kind": "dynamic-import", - "original": "./langs/jsx.mjs" + "original": "@shikijs/langs/logo" }, { - "path": "node_modules/shiki/dist/langs/julia.mjs", + "path": "node_modules/@shikijs/langs/dist/lua.mjs", "kind": "dynamic-import", - "original": "./langs/julia.mjs" + "original": "@shikijs/langs/lua" }, { - "path": "node_modules/shiki/dist/langs/kotlin.mjs", + "path": "node_modules/@shikijs/langs/dist/luau.mjs", "kind": "dynamic-import", - "original": "./langs/kotlin.mjs" + "original": "@shikijs/langs/luau" }, { - "path": "node_modules/shiki/dist/langs/kusto.mjs", + "path": "node_modules/@shikijs/langs/dist/make.mjs", "kind": "dynamic-import", - "original": "./langs/kusto.mjs" + "original": "@shikijs/langs/make" }, { - "path": "node_modules/shiki/dist/langs/latex.mjs", + "path": "node_modules/@shikijs/langs/dist/markdown.mjs", "kind": "dynamic-import", - "original": "./langs/latex.mjs" + "original": "@shikijs/langs/markdown" }, { - "path": "node_modules/shiki/dist/langs/less.mjs", + "path": "node_modules/@shikijs/langs/dist/marko.mjs", "kind": "dynamic-import", - "original": "./langs/less.mjs" + "original": "@shikijs/langs/marko" }, { - "path": "node_modules/shiki/dist/langs/liquid.mjs", + "path": "node_modules/@shikijs/langs/dist/matlab.mjs", "kind": "dynamic-import", - "original": "./langs/liquid.mjs" + "original": "@shikijs/langs/matlab" }, { - "path": "node_modules/shiki/dist/langs/log.mjs", + "path": "node_modules/@shikijs/langs/dist/mdc.mjs", "kind": "dynamic-import", - "original": "./langs/log.mjs" + "original": "@shikijs/langs/mdc" }, { - "path": "node_modules/shiki/dist/langs/logo.mjs", + "path": "node_modules/@shikijs/langs/dist/mdx.mjs", "kind": "dynamic-import", - "original": "./langs/logo.mjs" + "original": "@shikijs/langs/mdx" }, { - "path": "node_modules/shiki/dist/langs/lua.mjs", + "path": "node_modules/@shikijs/langs/dist/mermaid.mjs", "kind": "dynamic-import", - "original": "./langs/lua.mjs" + "original": "@shikijs/langs/mermaid" }, { - "path": "node_modules/shiki/dist/langs/luau.mjs", + "path": "node_modules/@shikijs/langs/dist/mipsasm.mjs", "kind": "dynamic-import", - "original": "./langs/luau.mjs" + "original": "@shikijs/langs/mipsasm" }, { - "path": "node_modules/shiki/dist/langs/make.mjs", + "path": "node_modules/@shikijs/langs/dist/mojo.mjs", "kind": "dynamic-import", - "original": "./langs/make.mjs" + "original": "@shikijs/langs/mojo" }, { - "path": "node_modules/shiki/dist/langs/markdown.mjs", + "path": "node_modules/@shikijs/langs/dist/move.mjs", "kind": "dynamic-import", - "original": "./langs/markdown.mjs" + "original": "@shikijs/langs/move" }, { - "path": "node_modules/shiki/dist/langs/marko.mjs", + "path": "node_modules/@shikijs/langs/dist/narrat.mjs", "kind": "dynamic-import", - "original": "./langs/marko.mjs" + "original": "@shikijs/langs/narrat" }, { - "path": "node_modules/shiki/dist/langs/matlab.mjs", + "path": "node_modules/@shikijs/langs/dist/nextflow.mjs", "kind": "dynamic-import", - "original": "./langs/matlab.mjs" + "original": "@shikijs/langs/nextflow" }, { - "path": "node_modules/shiki/dist/langs/mdc.mjs", + "path": "node_modules/@shikijs/langs/dist/nginx.mjs", "kind": "dynamic-import", - "original": "./langs/mdc.mjs" + "original": "@shikijs/langs/nginx" }, { - "path": "node_modules/shiki/dist/langs/mdx.mjs", + "path": "node_modules/@shikijs/langs/dist/nim.mjs", "kind": "dynamic-import", - "original": "./langs/mdx.mjs" + "original": "@shikijs/langs/nim" }, { - "path": "node_modules/shiki/dist/langs/mermaid.mjs", + "path": "node_modules/@shikijs/langs/dist/nix.mjs", "kind": "dynamic-import", - "original": "./langs/mermaid.mjs" + "original": "@shikijs/langs/nix" }, { - "path": "node_modules/shiki/dist/langs/mojo.mjs", + "path": "node_modules/@shikijs/langs/dist/nushell.mjs", "kind": "dynamic-import", - "original": "./langs/mojo.mjs" + "original": "@shikijs/langs/nushell" }, { - "path": "node_modules/shiki/dist/langs/move.mjs", + "path": "node_modules/@shikijs/langs/dist/objective-c.mjs", "kind": "dynamic-import", - "original": "./langs/move.mjs" + "original": "@shikijs/langs/objective-c" }, { - "path": "node_modules/shiki/dist/langs/narrat.mjs", + "path": "node_modules/@shikijs/langs/dist/objective-cpp.mjs", "kind": "dynamic-import", - "original": "./langs/narrat.mjs" + "original": "@shikijs/langs/objective-cpp" }, { - "path": "node_modules/shiki/dist/langs/nextflow.mjs", + "path": "node_modules/@shikijs/langs/dist/ocaml.mjs", "kind": "dynamic-import", - "original": "./langs/nextflow.mjs" + "original": "@shikijs/langs/ocaml" }, { - "path": "node_modules/shiki/dist/langs/nginx.mjs", + "path": "node_modules/@shikijs/langs/dist/pascal.mjs", "kind": "dynamic-import", - "original": "./langs/nginx.mjs" + "original": "@shikijs/langs/pascal" }, { - "path": "node_modules/shiki/dist/langs/nim.mjs", + "path": "node_modules/@shikijs/langs/dist/perl.mjs", "kind": "dynamic-import", - "original": "./langs/nim.mjs" + "original": "@shikijs/langs/perl" }, { - "path": "node_modules/shiki/dist/langs/nix.mjs", + "path": "node_modules/@shikijs/langs/dist/php.mjs", "kind": "dynamic-import", - "original": "./langs/nix.mjs" + "original": "@shikijs/langs/php" }, { - "path": "node_modules/shiki/dist/langs/nushell.mjs", + "path": "node_modules/@shikijs/langs/dist/plsql.mjs", "kind": "dynamic-import", - "original": "./langs/nushell.mjs" + "original": "@shikijs/langs/plsql" }, { - "path": "node_modules/shiki/dist/langs/objective-c.mjs", + "path": "node_modules/@shikijs/langs/dist/po.mjs", "kind": "dynamic-import", - "original": "./langs/objective-c.mjs" + "original": "@shikijs/langs/po" }, { - "path": "node_modules/shiki/dist/langs/objective-cpp.mjs", + "path": "node_modules/@shikijs/langs/dist/polar.mjs", "kind": "dynamic-import", - "original": "./langs/objective-cpp.mjs" + "original": "@shikijs/langs/polar" }, { - "path": "node_modules/shiki/dist/langs/ocaml.mjs", + "path": "node_modules/@shikijs/langs/dist/postcss.mjs", "kind": "dynamic-import", - "original": "./langs/ocaml.mjs" + "original": "@shikijs/langs/postcss" }, { - "path": "node_modules/shiki/dist/langs/pascal.mjs", + "path": "node_modules/@shikijs/langs/dist/powerquery.mjs", "kind": "dynamic-import", - "original": "./langs/pascal.mjs" + "original": "@shikijs/langs/powerquery" }, { - "path": "node_modules/shiki/dist/langs/perl.mjs", + "path": "node_modules/@shikijs/langs/dist/powershell.mjs", "kind": "dynamic-import", - "original": "./langs/perl.mjs" + "original": "@shikijs/langs/powershell" }, { - "path": "node_modules/shiki/dist/langs/php.mjs", + "path": "node_modules/@shikijs/langs/dist/prisma.mjs", "kind": "dynamic-import", - "original": "./langs/php.mjs" + "original": "@shikijs/langs/prisma" }, { - "path": "node_modules/shiki/dist/langs/plsql.mjs", + "path": "node_modules/@shikijs/langs/dist/prolog.mjs", "kind": "dynamic-import", - "original": "./langs/plsql.mjs" + "original": "@shikijs/langs/prolog" }, { - "path": "node_modules/shiki/dist/langs/po.mjs", + "path": "node_modules/@shikijs/langs/dist/proto.mjs", "kind": "dynamic-import", - "original": "./langs/po.mjs" + "original": "@shikijs/langs/proto" }, { - "path": "node_modules/shiki/dist/langs/postcss.mjs", + "path": "node_modules/@shikijs/langs/dist/pug.mjs", "kind": "dynamic-import", - "original": "./langs/postcss.mjs" + "original": "@shikijs/langs/pug" }, { - "path": "node_modules/shiki/dist/langs/powerquery.mjs", + "path": "node_modules/@shikijs/langs/dist/puppet.mjs", "kind": "dynamic-import", - "original": "./langs/powerquery.mjs" + "original": "@shikijs/langs/puppet" }, { - "path": "node_modules/shiki/dist/langs/powershell.mjs", + "path": "node_modules/@shikijs/langs/dist/purescript.mjs", "kind": "dynamic-import", - "original": "./langs/powershell.mjs" + "original": "@shikijs/langs/purescript" }, { - "path": "node_modules/shiki/dist/langs/prisma.mjs", + "path": "node_modules/@shikijs/langs/dist/python.mjs", "kind": "dynamic-import", - "original": "./langs/prisma.mjs" + "original": "@shikijs/langs/python" }, { - "path": "node_modules/shiki/dist/langs/prolog.mjs", + "path": "node_modules/@shikijs/langs/dist/qml.mjs", "kind": "dynamic-import", - "original": "./langs/prolog.mjs" + "original": "@shikijs/langs/qml" }, { - "path": "node_modules/shiki/dist/langs/proto.mjs", + "path": "node_modules/@shikijs/langs/dist/qmldir.mjs", "kind": "dynamic-import", - "original": "./langs/proto.mjs" + "original": "@shikijs/langs/qmldir" }, { - "path": "node_modules/shiki/dist/langs/pug.mjs", + "path": "node_modules/@shikijs/langs/dist/qss.mjs", "kind": "dynamic-import", - "original": "./langs/pug.mjs" + "original": "@shikijs/langs/qss" }, { - "path": "node_modules/shiki/dist/langs/puppet.mjs", + "path": "node_modules/@shikijs/langs/dist/r.mjs", "kind": "dynamic-import", - "original": "./langs/puppet.mjs" + "original": "@shikijs/langs/r" }, { - "path": "node_modules/shiki/dist/langs/purescript.mjs", + "path": "node_modules/@shikijs/langs/dist/racket.mjs", "kind": "dynamic-import", - "original": "./langs/purescript.mjs" + "original": "@shikijs/langs/racket" }, { - "path": "node_modules/shiki/dist/langs/python.mjs", + "path": "node_modules/@shikijs/langs/dist/raku.mjs", "kind": "dynamic-import", - "original": "./langs/python.mjs" + "original": "@shikijs/langs/raku" }, { - "path": "node_modules/shiki/dist/langs/qml.mjs", + "path": "node_modules/@shikijs/langs/dist/razor.mjs", "kind": "dynamic-import", - "original": "./langs/qml.mjs" + "original": "@shikijs/langs/razor" }, { - "path": "node_modules/shiki/dist/langs/qmldir.mjs", + "path": "node_modules/@shikijs/langs/dist/reg.mjs", "kind": "dynamic-import", - "original": "./langs/qmldir.mjs" + "original": "@shikijs/langs/reg" }, { - "path": "node_modules/shiki/dist/langs/qss.mjs", + "path": "node_modules/@shikijs/langs/dist/regexp.mjs", "kind": "dynamic-import", - "original": "./langs/qss.mjs" + "original": "@shikijs/langs/regexp" }, { - "path": "node_modules/shiki/dist/langs/r.mjs", + "path": "node_modules/@shikijs/langs/dist/rel.mjs", "kind": "dynamic-import", - "original": "./langs/r.mjs" + "original": "@shikijs/langs/rel" }, { - "path": "node_modules/shiki/dist/langs/racket.mjs", + "path": "node_modules/@shikijs/langs/dist/riscv.mjs", "kind": "dynamic-import", - "original": "./langs/racket.mjs" + "original": "@shikijs/langs/riscv" }, { - "path": "node_modules/shiki/dist/langs/raku.mjs", + "path": "node_modules/@shikijs/langs/dist/rst.mjs", "kind": "dynamic-import", - "original": "./langs/raku.mjs" + "original": "@shikijs/langs/rst" }, { - "path": "node_modules/shiki/dist/langs/razor.mjs", + "path": "node_modules/@shikijs/langs/dist/ruby.mjs", "kind": "dynamic-import", - "original": "./langs/razor.mjs" + "original": "@shikijs/langs/ruby" }, { - "path": "node_modules/shiki/dist/langs/reg.mjs", + "path": "node_modules/@shikijs/langs/dist/rust.mjs", "kind": "dynamic-import", - "original": "./langs/reg.mjs" + "original": "@shikijs/langs/rust" }, { - "path": "node_modules/shiki/dist/langs/regexp.mjs", + "path": "node_modules/@shikijs/langs/dist/sas.mjs", "kind": "dynamic-import", - "original": "./langs/regexp.mjs" + "original": "@shikijs/langs/sas" }, { - "path": "node_modules/shiki/dist/langs/rel.mjs", + "path": "node_modules/@shikijs/langs/dist/sass.mjs", "kind": "dynamic-import", - "original": "./langs/rel.mjs" + "original": "@shikijs/langs/sass" }, { - "path": "node_modules/shiki/dist/langs/riscv.mjs", + "path": "node_modules/@shikijs/langs/dist/scala.mjs", "kind": "dynamic-import", - "original": "./langs/riscv.mjs" + "original": "@shikijs/langs/scala" }, { - "path": "node_modules/shiki/dist/langs/rst.mjs", + "path": "node_modules/@shikijs/langs/dist/scheme.mjs", "kind": "dynamic-import", - "original": "./langs/rst.mjs" + "original": "@shikijs/langs/scheme" }, { - "path": "node_modules/shiki/dist/langs/ruby.mjs", + "path": "node_modules/@shikijs/langs/dist/scss.mjs", "kind": "dynamic-import", - "original": "./langs/ruby.mjs" + "original": "@shikijs/langs/scss" }, { - "path": "node_modules/shiki/dist/langs/rust.mjs", + "path": "node_modules/@shikijs/langs/dist/sdbl.mjs", "kind": "dynamic-import", - "original": "./langs/rust.mjs" + "original": "@shikijs/langs/sdbl" }, { - "path": "node_modules/shiki/dist/langs/sas.mjs", + "path": "node_modules/@shikijs/langs/dist/shaderlab.mjs", "kind": "dynamic-import", - "original": "./langs/sas.mjs" + "original": "@shikijs/langs/shaderlab" }, { - "path": "node_modules/shiki/dist/langs/sass.mjs", + "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "dynamic-import", - "original": "./langs/sass.mjs" + "original": "@shikijs/langs/shellscript" }, { - "path": "node_modules/shiki/dist/langs/scala.mjs", + "path": "node_modules/@shikijs/langs/dist/shellsession.mjs", "kind": "dynamic-import", - "original": "./langs/scala.mjs" + "original": "@shikijs/langs/shellsession" }, { - "path": "node_modules/shiki/dist/langs/scheme.mjs", + "path": "node_modules/@shikijs/langs/dist/smalltalk.mjs", "kind": "dynamic-import", - "original": "./langs/scheme.mjs" + "original": "@shikijs/langs/smalltalk" }, { - "path": "node_modules/shiki/dist/langs/scss.mjs", + "path": "node_modules/@shikijs/langs/dist/solidity.mjs", "kind": "dynamic-import", - "original": "./langs/scss.mjs" + "original": "@shikijs/langs/solidity" }, { - "path": "node_modules/shiki/dist/langs/shaderlab.mjs", + "path": "node_modules/@shikijs/langs/dist/soy.mjs", "kind": "dynamic-import", - "original": "./langs/shaderlab.mjs" + "original": "@shikijs/langs/soy" }, { - "path": "node_modules/shiki/dist/langs/shellscript.mjs", + "path": "node_modules/@shikijs/langs/dist/sparql.mjs", "kind": "dynamic-import", - "original": "./langs/shellscript.mjs" + "original": "@shikijs/langs/sparql" }, { - "path": "node_modules/shiki/dist/langs/shellsession.mjs", + "path": "node_modules/@shikijs/langs/dist/splunk.mjs", "kind": "dynamic-import", - "original": "./langs/shellsession.mjs" + "original": "@shikijs/langs/splunk" }, { - "path": "node_modules/shiki/dist/langs/smalltalk.mjs", + "path": "node_modules/@shikijs/langs/dist/sql.mjs", "kind": "dynamic-import", - "original": "./langs/smalltalk.mjs" + "original": "@shikijs/langs/sql" }, { - "path": "node_modules/shiki/dist/langs/solidity.mjs", + "path": "node_modules/@shikijs/langs/dist/ssh-config.mjs", "kind": "dynamic-import", - "original": "./langs/solidity.mjs" + "original": "@shikijs/langs/ssh-config" }, { - "path": "node_modules/shiki/dist/langs/soy.mjs", + "path": "node_modules/@shikijs/langs/dist/stata.mjs", "kind": "dynamic-import", - "original": "./langs/soy.mjs" + "original": "@shikijs/langs/stata" }, { - "path": "node_modules/shiki/dist/langs/sparql.mjs", + "path": "node_modules/@shikijs/langs/dist/stylus.mjs", "kind": "dynamic-import", - "original": "./langs/sparql.mjs" + "original": "@shikijs/langs/stylus" }, { - "path": "node_modules/shiki/dist/langs/splunk.mjs", + "path": "node_modules/@shikijs/langs/dist/svelte.mjs", "kind": "dynamic-import", - "original": "./langs/splunk.mjs" + "original": "@shikijs/langs/svelte" }, { - "path": "node_modules/shiki/dist/langs/sql.mjs", + "path": "node_modules/@shikijs/langs/dist/swift.mjs", "kind": "dynamic-import", - "original": "./langs/sql.mjs" + "original": "@shikijs/langs/swift" }, { - "path": "node_modules/shiki/dist/langs/ssh-config.mjs", + "path": "node_modules/@shikijs/langs/dist/system-verilog.mjs", "kind": "dynamic-import", - "original": "./langs/ssh-config.mjs" + "original": "@shikijs/langs/system-verilog" }, { - "path": "node_modules/shiki/dist/langs/stata.mjs", + "path": "node_modules/@shikijs/langs/dist/systemd.mjs", "kind": "dynamic-import", - "original": "./langs/stata.mjs" + "original": "@shikijs/langs/systemd" }, { - "path": "node_modules/shiki/dist/langs/stylus.mjs", + "path": "node_modules/@shikijs/langs/dist/talonscript.mjs", "kind": "dynamic-import", - "original": "./langs/stylus.mjs" + "original": "@shikijs/langs/talonscript" }, { - "path": "node_modules/shiki/dist/langs/svelte.mjs", + "path": "node_modules/@shikijs/langs/dist/tasl.mjs", "kind": "dynamic-import", - "original": "./langs/svelte.mjs" + "original": "@shikijs/langs/tasl" }, { - "path": "node_modules/shiki/dist/langs/swift.mjs", + "path": "node_modules/@shikijs/langs/dist/tcl.mjs", "kind": "dynamic-import", - "original": "./langs/swift.mjs" + "original": "@shikijs/langs/tcl" }, { - "path": "node_modules/shiki/dist/langs/system-verilog.mjs", + "path": "node_modules/@shikijs/langs/dist/templ.mjs", "kind": "dynamic-import", - "original": "./langs/system-verilog.mjs" + "original": "@shikijs/langs/templ" }, { - "path": "node_modules/shiki/dist/langs/systemd.mjs", + "path": "node_modules/@shikijs/langs/dist/terraform.mjs", "kind": "dynamic-import", - "original": "./langs/systemd.mjs" + "original": "@shikijs/langs/terraform" }, { - "path": "node_modules/shiki/dist/langs/tasl.mjs", + "path": "node_modules/@shikijs/langs/dist/tex.mjs", "kind": "dynamic-import", - "original": "./langs/tasl.mjs" + "original": "@shikijs/langs/tex" }, { - "path": "node_modules/shiki/dist/langs/tcl.mjs", + "path": "node_modules/@shikijs/langs/dist/toml.mjs", "kind": "dynamic-import", - "original": "./langs/tcl.mjs" + "original": "@shikijs/langs/toml" }, { - "path": "node_modules/shiki/dist/langs/templ.mjs", + "path": "node_modules/@shikijs/langs/dist/ts-tags.mjs", "kind": "dynamic-import", - "original": "./langs/templ.mjs" + "original": "@shikijs/langs/ts-tags" }, { - "path": "node_modules/shiki/dist/langs/terraform.mjs", + "path": "node_modules/@shikijs/langs/dist/tsv.mjs", "kind": "dynamic-import", - "original": "./langs/terraform.mjs" + "original": "@shikijs/langs/tsv" }, { - "path": "node_modules/shiki/dist/langs/tex.mjs", + "path": "node_modules/@shikijs/langs/dist/tsx.mjs", "kind": "dynamic-import", - "original": "./langs/tex.mjs" + "original": "@shikijs/langs/tsx" }, { - "path": "node_modules/shiki/dist/langs/toml.mjs", + "path": "node_modules/@shikijs/langs/dist/turtle.mjs", "kind": "dynamic-import", - "original": "./langs/toml.mjs" + "original": "@shikijs/langs/turtle" }, { - "path": "node_modules/shiki/dist/langs/tsv.mjs", + "path": "node_modules/@shikijs/langs/dist/twig.mjs", "kind": "dynamic-import", - "original": "./langs/tsv.mjs" + "original": "@shikijs/langs/twig" }, { - "path": "node_modules/shiki/dist/langs/tsx.mjs", + "path": "node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "dynamic-import", - "original": "./langs/tsx.mjs" + "original": "@shikijs/langs/typescript" }, { - "path": "node_modules/shiki/dist/langs/turtle.mjs", + "path": "node_modules/@shikijs/langs/dist/typespec.mjs", "kind": "dynamic-import", - "original": "./langs/turtle.mjs" + "original": "@shikijs/langs/typespec" }, { - "path": "node_modules/shiki/dist/langs/twig.mjs", + "path": "node_modules/@shikijs/langs/dist/typst.mjs", "kind": "dynamic-import", - "original": "./langs/twig.mjs" + "original": "@shikijs/langs/typst" }, { - "path": "node_modules/shiki/dist/langs/typescript.mjs", + "path": "node_modules/@shikijs/langs/dist/v.mjs", "kind": "dynamic-import", - "original": "./langs/typescript.mjs" + "original": "@shikijs/langs/v" }, { - "path": "node_modules/shiki/dist/langs/typespec.mjs", + "path": "node_modules/@shikijs/langs/dist/vala.mjs", "kind": "dynamic-import", - "original": "./langs/typespec.mjs" + "original": "@shikijs/langs/vala" }, { - "path": "node_modules/shiki/dist/langs/typst.mjs", + "path": "node_modules/@shikijs/langs/dist/vb.mjs", "kind": "dynamic-import", - "original": "./langs/typst.mjs" + "original": "@shikijs/langs/vb" }, { - "path": "node_modules/shiki/dist/langs/v.mjs", + "path": "node_modules/@shikijs/langs/dist/verilog.mjs", "kind": "dynamic-import", - "original": "./langs/v.mjs" + "original": "@shikijs/langs/verilog" }, { - "path": "node_modules/shiki/dist/langs/vala.mjs", + "path": "node_modules/@shikijs/langs/dist/vhdl.mjs", "kind": "dynamic-import", - "original": "./langs/vala.mjs" + "original": "@shikijs/langs/vhdl" }, { - "path": "node_modules/shiki/dist/langs/vb.mjs", + "path": "node_modules/@shikijs/langs/dist/viml.mjs", "kind": "dynamic-import", - "original": "./langs/vb.mjs" + "original": "@shikijs/langs/viml" }, { - "path": "node_modules/shiki/dist/langs/verilog.mjs", + "path": "node_modules/@shikijs/langs/dist/vue.mjs", "kind": "dynamic-import", - "original": "./langs/verilog.mjs" + "original": "@shikijs/langs/vue" }, { - "path": "node_modules/shiki/dist/langs/vhdl.mjs", + "path": "node_modules/@shikijs/langs/dist/vue-html.mjs", "kind": "dynamic-import", - "original": "./langs/vhdl.mjs" + "original": "@shikijs/langs/vue-html" }, { - "path": "node_modules/shiki/dist/langs/viml.mjs", + "path": "node_modules/@shikijs/langs/dist/vyper.mjs", "kind": "dynamic-import", - "original": "./langs/viml.mjs" + "original": "@shikijs/langs/vyper" }, { - "path": "node_modules/shiki/dist/langs/vue.mjs", + "path": "node_modules/@shikijs/langs/dist/wasm.mjs", "kind": "dynamic-import", - "original": "./langs/vue.mjs" + "original": "@shikijs/langs/wasm" }, { - "path": "node_modules/shiki/dist/langs/vue-html.mjs", + "path": "node_modules/@shikijs/langs/dist/wenyan.mjs", "kind": "dynamic-import", - "original": "./langs/vue-html.mjs" + "original": "@shikijs/langs/wenyan" }, { - "path": "node_modules/shiki/dist/langs/vyper.mjs", + "path": "node_modules/@shikijs/langs/dist/wgsl.mjs", "kind": "dynamic-import", - "original": "./langs/vyper.mjs" + "original": "@shikijs/langs/wgsl" }, { - "path": "node_modules/shiki/dist/langs/wasm.mjs", + "path": "node_modules/@shikijs/langs/dist/wikitext.mjs", "kind": "dynamic-import", - "original": "./langs/wasm.mjs" + "original": "@shikijs/langs/wikitext" }, { - "path": "node_modules/shiki/dist/langs/wenyan.mjs", + "path": "node_modules/@shikijs/langs/dist/wit.mjs", "kind": "dynamic-import", - "original": "./langs/wenyan.mjs" + "original": "@shikijs/langs/wit" }, { - "path": "node_modules/shiki/dist/langs/wgsl.mjs", + "path": "node_modules/@shikijs/langs/dist/wolfram.mjs", "kind": "dynamic-import", - "original": "./langs/wgsl.mjs" + "original": "@shikijs/langs/wolfram" }, { - "path": "node_modules/shiki/dist/langs/wikitext.mjs", + "path": "node_modules/@shikijs/langs/dist/xml.mjs", "kind": "dynamic-import", - "original": "./langs/wikitext.mjs" + "original": "@shikijs/langs/xml" }, { - "path": "node_modules/shiki/dist/langs/wolfram.mjs", + "path": "node_modules/@shikijs/langs/dist/xsl.mjs", "kind": "dynamic-import", - "original": "./langs/wolfram.mjs" + "original": "@shikijs/langs/xsl" }, { - "path": "node_modules/shiki/dist/langs/xml.mjs", + "path": "node_modules/@shikijs/langs/dist/yaml.mjs", "kind": "dynamic-import", - "original": "./langs/xml.mjs" + "original": "@shikijs/langs/yaml" }, { - "path": "node_modules/shiki/dist/langs/xsl.mjs", + "path": "node_modules/@shikijs/langs/dist/zenscript.mjs", "kind": "dynamic-import", - "original": "./langs/xsl.mjs" + "original": "@shikijs/langs/zenscript" }, { - "path": "node_modules/shiki/dist/langs/yaml.mjs", + "path": "node_modules/@shikijs/langs/dist/zig.mjs", "kind": "dynamic-import", - "original": "./langs/yaml.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/zenscript.mjs", - "kind": "dynamic-import", - "original": "./langs/zenscript.mjs" - }, - { - "path": "node_modules/shiki/dist/langs/zig.mjs", - "kind": "dynamic-import", - "original": "./langs/zig.mjs" + "original": "@shikijs/langs/zig" } ], "format": "esm" }, - "node_modules/@shikijs/core/dist/wasm-inlined.mjs": { - "bytes": 622499, + "node_modules/@shikijs/themes/dist/andromeeda.mjs": { + "bytes": 9740, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/wasm.mjs": { - "bytes": 54, - "imports": [ - { - "path": "node_modules/@shikijs/core/dist/wasm-inlined.mjs", - "kind": "import-statement", - "original": "@shikijs/core/wasm-inlined" - } - ], + "node_modules/@shikijs/themes/dist/aurora-x.mjs": { + "bytes": 14878, + "imports": [], "format": "esm" }, - "node_modules/shiki/dist/chunks/wasm-dynamic.mjs": { - "bytes": 143, - "imports": [ - { - "path": "node_modules/shiki/dist/wasm.mjs", - "kind": "dynamic-import", - "original": "shiki/wasm" - } - ], + "node_modules/@shikijs/themes/dist/ayu-dark.mjs": { + "bytes": 16638, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs": { + "bytes": 51632, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/catppuccin-latte.mjs": { + "bytes": 51629, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs": { + "bytes": 51640, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs": { + "bytes": 51628, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/dark-plus.mjs": { + "bytes": 10119, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/dracula.mjs": { + "bytes": 23122, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/dracula-soft.mjs": { + "bytes": 23137, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/everforest-dark.mjs": { + "bytes": 58495, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/everforest-light.mjs": { + "bytes": 58499, + "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/andromeeda.mjs": { - "bytes": 11180, + "node_modules/@shikijs/themes/dist/github-dark.mjs": { + "bytes": 12745, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/aurora-x.mjs": { - "bytes": 18563, + "node_modules/@shikijs/themes/dist/github-dark-default.mjs": { + "bytes": 16087, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/ayu-dark.mjs": { - "bytes": 20485, + "node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs": { + "bytes": 16084, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/catppuccin-frappe.mjs": { - "bytes": 60246, + "node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs": { + "bytes": 16269, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/catppuccin-latte.mjs": { - "bytes": 60240, + "node_modules/@shikijs/themes/dist/github-light.mjs": { + "bytes": 12509, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/catppuccin-macchiato.mjs": { - "bytes": 60255, + "node_modules/@shikijs/themes/dist/github-light-default.mjs": { + "bytes": 15775, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/catppuccin-mocha.mjs": { - "bytes": 60239, + "node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs": { + "bytes": 15912, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/dark-plus.mjs": { - "bytes": 13246, + "node_modules/@shikijs/themes/dist/gruvbox-dark-hard.mjs": { + "bytes": 24319, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/dracula.mjs": { - "bytes": 28896, + "node_modules/@shikijs/themes/dist/gruvbox-dark-medium.mjs": { + "bytes": 24325, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/dracula-soft.mjs": { - "bytes": 28914, + "node_modules/@shikijs/themes/dist/gruvbox-dark-soft.mjs": { + "bytes": 24319, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/github-dark.mjs": { - "bytes": 15191, + "node_modules/@shikijs/themes/dist/gruvbox-light-hard.mjs": { + "bytes": 24323, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/github-dark-default.mjs": { - "bytes": 18920, + "node_modules/@shikijs/themes/dist/gruvbox-light-medium.mjs": { + "bytes": 24329, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/github-dark-dimmed.mjs": { - "bytes": 18916, + "node_modules/@shikijs/themes/dist/gruvbox-light-soft.mjs": { + "bytes": 24323, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/github-light.mjs": { - "bytes": 14948, + "node_modules/@shikijs/themes/dist/houston.mjs": { + "bytes": 38990, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/github-light-default.mjs": { - "bytes": 18544, + "node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs": { + "bytes": 18759, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/houston.mjs": { - "bytes": 48750, + "node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs": { + "bytes": 18757, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/laserwave.mjs": { - "bytes": 15267, + "node_modules/@shikijs/themes/dist/kanagawa-wave.mjs": { + "bytes": 18753, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/light-plus.mjs": { - "bytes": 14343, + "node_modules/@shikijs/themes/dist/laserwave.mjs": { + "bytes": 12481, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/material-theme.mjs": { - "bytes": 23895, + "node_modules/@shikijs/themes/dist/light-plus.mjs": { + "bytes": 11014, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/material-theme-darker.mjs": { - "bytes": 23921, + "node_modules/@shikijs/themes/dist/material-theme.mjs": { + "bytes": 20362, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/material-theme-lighter.mjs": { - "bytes": 23928, + "node_modules/@shikijs/themes/dist/material-theme-darker.mjs": { + "bytes": 20383, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/material-theme-ocean.mjs": { - "bytes": 23919, + "node_modules/@shikijs/themes/dist/material-theme-lighter.mjs": { + "bytes": 20389, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/material-theme-palenight.mjs": { - "bytes": 23933, + "node_modules/@shikijs/themes/dist/material-theme-ocean.mjs": { + "bytes": 20382, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/min-dark.mjs": { - "bytes": 8461, + "node_modules/@shikijs/themes/dist/material-theme-palenight.mjs": { + "bytes": 20392, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/min-light.mjs": { - "bytes": 9256, + "node_modules/@shikijs/themes/dist/min-dark.mjs": { + "bytes": 6980, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/monokai.mjs": { - "bytes": 10923, + "node_modules/@shikijs/themes/dist/min-light.mjs": { + "bytes": 7739, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/night-owl.mjs": { - "bytes": 41448, + "node_modules/@shikijs/themes/dist/monokai.mjs": { + "bytes": 8870, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/nord.mjs": { - "bytes": 35732, + "node_modules/@shikijs/themes/dist/night-owl.mjs": { + "bytes": 32203, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/one-dark-pro.mjs": { - "bytes": 47624, + "node_modules/@shikijs/themes/dist/nord.mjs": { + "bytes": 29510, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/one-light.mjs": { - "bytes": 38764, + "node_modules/@shikijs/themes/dist/one-dark-pro.mjs": { + "bytes": 37268, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/poimandres.mjs": { - "bytes": 43145, + "node_modules/@shikijs/themes/dist/one-light.mjs": { + "bytes": 28042, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/red.mjs": { - "bytes": 8945, + "node_modules/@shikijs/themes/dist/plastic.mjs": { + "bytes": 10273, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/rose-pine.mjs": { - "bytes": 26233, + "node_modules/@shikijs/themes/dist/poimandres.mjs": { + "bytes": 36593, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/rose-pine-dawn.mjs": { - "bytes": 26252, + "node_modules/@shikijs/themes/dist/red.mjs": { + "bytes": 7048, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/rose-pine-moon.mjs": { - "bytes": 26251, + "node_modules/@shikijs/themes/dist/rose-pine.mjs": { + "bytes": 23997, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/slack-dark.mjs": { - "bytes": 13302, + "node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs": { + "bytes": 24013, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/slack-ochin.mjs": { - "bytes": 12790, + "node_modules/@shikijs/themes/dist/rose-pine-moon.mjs": { + "bytes": 24012, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/snazzy-light.mjs": { - "bytes": 31379, + "node_modules/@shikijs/themes/dist/slack-dark.mjs": { + "bytes": 10164, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/solarized-dark.mjs": { - "bytes": 9508, + "node_modules/@shikijs/themes/dist/slack-ochin.mjs": { + "bytes": 10571, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/solarized-light.mjs": { - "bytes": 9096, + "node_modules/@shikijs/themes/dist/snazzy-light.mjs": { + "bytes": 23098, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/synthwave-84.mjs": { - "bytes": 19880, + "node_modules/@shikijs/themes/dist/solarized-dark.mjs": { + "bytes": 7707, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/tokyo-night.mjs": { - "bytes": 43868, + "node_modules/@shikijs/themes/dist/solarized-light.mjs": { + "bytes": 7310, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/vesper.mjs": { - "bytes": 17359, + "node_modules/@shikijs/themes/dist/synthwave-84.mjs": { + "bytes": 15637, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/vitesse-black.mjs": { - "bytes": 18307, + "node_modules/@shikijs/themes/dist/tokyo-night.mjs": { + "bytes": 38801, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/vitesse-dark.mjs": { - "bytes": 18387, + "node_modules/@shikijs/themes/dist/vesper.mjs": { + "bytes": 13765, "imports": [], "format": "esm" }, - "node_modules/shiki/dist/themes/vitesse-light.mjs": { - "bytes": 18234, + "node_modules/@shikijs/themes/dist/vitesse-black.mjs": { + "bytes": 15243, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/vitesse-dark.mjs": { + "bytes": 15324, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/themes/dist/vitesse-light.mjs": { + "bytes": 15174, "imports": [], "format": "esm" }, "node_modules/shiki/dist/themes.mjs": { - "bytes": 6952, + "bytes": 9410, "imports": [ { - "path": "node_modules/shiki/dist/themes/andromeeda.mjs", + "path": "node_modules/@shikijs/themes/dist/andromeeda.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/andromeeda" + }, + { + "path": "node_modules/@shikijs/themes/dist/aurora-x.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/aurora-x" + }, + { + "path": "node_modules/@shikijs/themes/dist/ayu-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/ayu-dark" + }, + { + "path": "node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/catppuccin-frappe" + }, + { + "path": "node_modules/@shikijs/themes/dist/catppuccin-latte.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/catppuccin-latte" + }, + { + "path": "node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/catppuccin-macchiato" + }, + { + "path": "node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/catppuccin-mocha" + }, + { + "path": "node_modules/@shikijs/themes/dist/dark-plus.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/dark-plus" + }, + { + "path": "node_modules/@shikijs/themes/dist/dracula.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/dracula" + }, + { + "path": "node_modules/@shikijs/themes/dist/dracula-soft.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/dracula-soft" + }, + { + "path": "node_modules/@shikijs/themes/dist/everforest-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/everforest-dark" + }, + { + "path": "node_modules/@shikijs/themes/dist/everforest-light.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/everforest-light" + }, + { + "path": "node_modules/@shikijs/themes/dist/github-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-dark" + }, + { + "path": "node_modules/@shikijs/themes/dist/github-dark-default.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-dark-default" + }, + { + "path": "node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs", "kind": "dynamic-import", - "original": "./themes/andromeeda.mjs" + "original": "@shikijs/themes/github-dark-dimmed" }, { - "path": "node_modules/shiki/dist/themes/aurora-x.mjs", + "path": "node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs", "kind": "dynamic-import", - "original": "./themes/aurora-x.mjs" + "original": "@shikijs/themes/github-dark-high-contrast" }, { - "path": "node_modules/shiki/dist/themes/ayu-dark.mjs", + "path": "node_modules/@shikijs/themes/dist/github-light.mjs", "kind": "dynamic-import", - "original": "./themes/ayu-dark.mjs" + "original": "@shikijs/themes/github-light" }, { - "path": "node_modules/shiki/dist/themes/catppuccin-frappe.mjs", + "path": "node_modules/@shikijs/themes/dist/github-light-default.mjs", "kind": "dynamic-import", - "original": "./themes/catppuccin-frappe.mjs" + "original": "@shikijs/themes/github-light-default" }, { - "path": "node_modules/shiki/dist/themes/catppuccin-latte.mjs", + "path": "node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs", "kind": "dynamic-import", - "original": "./themes/catppuccin-latte.mjs" + "original": "@shikijs/themes/github-light-high-contrast" }, { - "path": "node_modules/shiki/dist/themes/catppuccin-macchiato.mjs", + "path": "node_modules/@shikijs/themes/dist/gruvbox-dark-hard.mjs", "kind": "dynamic-import", - "original": "./themes/catppuccin-macchiato.mjs" + "original": "@shikijs/themes/gruvbox-dark-hard" }, { - "path": "node_modules/shiki/dist/themes/catppuccin-mocha.mjs", + "path": "node_modules/@shikijs/themes/dist/gruvbox-dark-medium.mjs", "kind": "dynamic-import", - "original": "./themes/catppuccin-mocha.mjs" + "original": "@shikijs/themes/gruvbox-dark-medium" }, { - "path": "node_modules/shiki/dist/themes/dark-plus.mjs", + "path": "node_modules/@shikijs/themes/dist/gruvbox-dark-soft.mjs", "kind": "dynamic-import", - "original": "./themes/dark-plus.mjs" + "original": "@shikijs/themes/gruvbox-dark-soft" }, { - "path": "node_modules/shiki/dist/themes/dracula.mjs", + "path": "node_modules/@shikijs/themes/dist/gruvbox-light-hard.mjs", "kind": "dynamic-import", - "original": "./themes/dracula.mjs" + "original": "@shikijs/themes/gruvbox-light-hard" }, { - "path": "node_modules/shiki/dist/themes/dracula-soft.mjs", + "path": "node_modules/@shikijs/themes/dist/gruvbox-light-medium.mjs", "kind": "dynamic-import", - "original": "./themes/dracula-soft.mjs" + "original": "@shikijs/themes/gruvbox-light-medium" }, { - "path": "node_modules/shiki/dist/themes/github-dark.mjs", + "path": "node_modules/@shikijs/themes/dist/gruvbox-light-soft.mjs", "kind": "dynamic-import", - "original": "./themes/github-dark.mjs" + "original": "@shikijs/themes/gruvbox-light-soft" }, { - "path": "node_modules/shiki/dist/themes/github-dark-default.mjs", + "path": "node_modules/@shikijs/themes/dist/houston.mjs", "kind": "dynamic-import", - "original": "./themes/github-dark-default.mjs" + "original": "@shikijs/themes/houston" }, { - "path": "node_modules/shiki/dist/themes/github-dark-dimmed.mjs", + "path": "node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs", "kind": "dynamic-import", - "original": "./themes/github-dark-dimmed.mjs" + "original": "@shikijs/themes/kanagawa-dragon" }, { - "path": "node_modules/shiki/dist/themes/github-light.mjs", + "path": "node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs", "kind": "dynamic-import", - "original": "./themes/github-light.mjs" + "original": "@shikijs/themes/kanagawa-lotus" }, { - "path": "node_modules/shiki/dist/themes/github-light-default.mjs", + "path": "node_modules/@shikijs/themes/dist/kanagawa-wave.mjs", "kind": "dynamic-import", - "original": "./themes/github-light-default.mjs" + "original": "@shikijs/themes/kanagawa-wave" }, { - "path": "node_modules/shiki/dist/themes/houston.mjs", + "path": "node_modules/@shikijs/themes/dist/laserwave.mjs", "kind": "dynamic-import", - "original": "./themes/houston.mjs" + "original": "@shikijs/themes/laserwave" }, { - "path": "node_modules/shiki/dist/themes/laserwave.mjs", + "path": "node_modules/@shikijs/themes/dist/light-plus.mjs", "kind": "dynamic-import", - "original": "./themes/laserwave.mjs" + "original": "@shikijs/themes/light-plus" }, { - "path": "node_modules/shiki/dist/themes/light-plus.mjs", + "path": "node_modules/@shikijs/themes/dist/material-theme.mjs", "kind": "dynamic-import", - "original": "./themes/light-plus.mjs" + "original": "@shikijs/themes/material-theme" }, { - "path": "node_modules/shiki/dist/themes/material-theme.mjs", + "path": "node_modules/@shikijs/themes/dist/material-theme-darker.mjs", "kind": "dynamic-import", - "original": "./themes/material-theme.mjs" + "original": "@shikijs/themes/material-theme-darker" }, { - "path": "node_modules/shiki/dist/themes/material-theme-darker.mjs", + "path": "node_modules/@shikijs/themes/dist/material-theme-lighter.mjs", "kind": "dynamic-import", - "original": "./themes/material-theme-darker.mjs" + "original": "@shikijs/themes/material-theme-lighter" }, { - "path": "node_modules/shiki/dist/themes/material-theme-lighter.mjs", + "path": "node_modules/@shikijs/themes/dist/material-theme-ocean.mjs", "kind": "dynamic-import", - "original": "./themes/material-theme-lighter.mjs" + "original": "@shikijs/themes/material-theme-ocean" }, { - "path": "node_modules/shiki/dist/themes/material-theme-ocean.mjs", + "path": "node_modules/@shikijs/themes/dist/material-theme-palenight.mjs", "kind": "dynamic-import", - "original": "./themes/material-theme-ocean.mjs" + "original": "@shikijs/themes/material-theme-palenight" }, { - "path": "node_modules/shiki/dist/themes/material-theme-palenight.mjs", + "path": "node_modules/@shikijs/themes/dist/min-dark.mjs", "kind": "dynamic-import", - "original": "./themes/material-theme-palenight.mjs" + "original": "@shikijs/themes/min-dark" }, { - "path": "node_modules/shiki/dist/themes/min-dark.mjs", + "path": "node_modules/@shikijs/themes/dist/min-light.mjs", "kind": "dynamic-import", - "original": "./themes/min-dark.mjs" + "original": "@shikijs/themes/min-light" }, { - "path": "node_modules/shiki/dist/themes/min-light.mjs", + "path": "node_modules/@shikijs/themes/dist/monokai.mjs", "kind": "dynamic-import", - "original": "./themes/min-light.mjs" + "original": "@shikijs/themes/monokai" }, { - "path": "node_modules/shiki/dist/themes/monokai.mjs", + "path": "node_modules/@shikijs/themes/dist/night-owl.mjs", "kind": "dynamic-import", - "original": "./themes/monokai.mjs" + "original": "@shikijs/themes/night-owl" }, { - "path": "node_modules/shiki/dist/themes/night-owl.mjs", + "path": "node_modules/@shikijs/themes/dist/nord.mjs", "kind": "dynamic-import", - "original": "./themes/night-owl.mjs" + "original": "@shikijs/themes/nord" }, { - "path": "node_modules/shiki/dist/themes/nord.mjs", + "path": "node_modules/@shikijs/themes/dist/one-dark-pro.mjs", "kind": "dynamic-import", - "original": "./themes/nord.mjs" + "original": "@shikijs/themes/one-dark-pro" }, { - "path": "node_modules/shiki/dist/themes/one-dark-pro.mjs", + "path": "node_modules/@shikijs/themes/dist/one-light.mjs", "kind": "dynamic-import", - "original": "./themes/one-dark-pro.mjs" + "original": "@shikijs/themes/one-light" }, { - "path": "node_modules/shiki/dist/themes/one-light.mjs", + "path": "node_modules/@shikijs/themes/dist/plastic.mjs", "kind": "dynamic-import", - "original": "./themes/one-light.mjs" + "original": "@shikijs/themes/plastic" }, { - "path": "node_modules/shiki/dist/themes/poimandres.mjs", + "path": "node_modules/@shikijs/themes/dist/poimandres.mjs", "kind": "dynamic-import", - "original": "./themes/poimandres.mjs" + "original": "@shikijs/themes/poimandres" }, { - "path": "node_modules/shiki/dist/themes/red.mjs", + "path": "node_modules/@shikijs/themes/dist/red.mjs", "kind": "dynamic-import", - "original": "./themes/red.mjs" + "original": "@shikijs/themes/red" }, { - "path": "node_modules/shiki/dist/themes/rose-pine.mjs", + "path": "node_modules/@shikijs/themes/dist/rose-pine.mjs", "kind": "dynamic-import", - "original": "./themes/rose-pine.mjs" + "original": "@shikijs/themes/rose-pine" }, { - "path": "node_modules/shiki/dist/themes/rose-pine-dawn.mjs", + "path": "node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs", "kind": "dynamic-import", - "original": "./themes/rose-pine-dawn.mjs" + "original": "@shikijs/themes/rose-pine-dawn" }, { - "path": "node_modules/shiki/dist/themes/rose-pine-moon.mjs", + "path": "node_modules/@shikijs/themes/dist/rose-pine-moon.mjs", "kind": "dynamic-import", - "original": "./themes/rose-pine-moon.mjs" + "original": "@shikijs/themes/rose-pine-moon" }, { - "path": "node_modules/shiki/dist/themes/slack-dark.mjs", + "path": "node_modules/@shikijs/themes/dist/slack-dark.mjs", "kind": "dynamic-import", - "original": "./themes/slack-dark.mjs" + "original": "@shikijs/themes/slack-dark" }, { - "path": "node_modules/shiki/dist/themes/slack-ochin.mjs", + "path": "node_modules/@shikijs/themes/dist/slack-ochin.mjs", "kind": "dynamic-import", - "original": "./themes/slack-ochin.mjs" + "original": "@shikijs/themes/slack-ochin" }, { - "path": "node_modules/shiki/dist/themes/snazzy-light.mjs", + "path": "node_modules/@shikijs/themes/dist/snazzy-light.mjs", "kind": "dynamic-import", - "original": "./themes/snazzy-light.mjs" + "original": "@shikijs/themes/snazzy-light" }, { - "path": "node_modules/shiki/dist/themes/solarized-dark.mjs", + "path": "node_modules/@shikijs/themes/dist/solarized-dark.mjs", "kind": "dynamic-import", - "original": "./themes/solarized-dark.mjs" + "original": "@shikijs/themes/solarized-dark" }, { - "path": "node_modules/shiki/dist/themes/solarized-light.mjs", + "path": "node_modules/@shikijs/themes/dist/solarized-light.mjs", "kind": "dynamic-import", - "original": "./themes/solarized-light.mjs" + "original": "@shikijs/themes/solarized-light" }, { - "path": "node_modules/shiki/dist/themes/synthwave-84.mjs", + "path": "node_modules/@shikijs/themes/dist/synthwave-84.mjs", "kind": "dynamic-import", - "original": "./themes/synthwave-84.mjs" + "original": "@shikijs/themes/synthwave-84" }, { - "path": "node_modules/shiki/dist/themes/tokyo-night.mjs", + "path": "node_modules/@shikijs/themes/dist/tokyo-night.mjs", "kind": "dynamic-import", - "original": "./themes/tokyo-night.mjs" + "original": "@shikijs/themes/tokyo-night" }, { - "path": "node_modules/shiki/dist/themes/vesper.mjs", + "path": "node_modules/@shikijs/themes/dist/vesper.mjs", "kind": "dynamic-import", - "original": "./themes/vesper.mjs" + "original": "@shikijs/themes/vesper" }, { - "path": "node_modules/shiki/dist/themes/vitesse-black.mjs", + "path": "node_modules/@shikijs/themes/dist/vitesse-black.mjs", "kind": "dynamic-import", - "original": "./themes/vitesse-black.mjs" + "original": "@shikijs/themes/vitesse-black" }, { - "path": "node_modules/shiki/dist/themes/vitesse-dark.mjs", + "path": "node_modules/@shikijs/themes/dist/vitesse-dark.mjs", "kind": "dynamic-import", - "original": "./themes/vitesse-dark.mjs" + "original": "@shikijs/themes/vitesse-dark" }, { - "path": "node_modules/shiki/dist/themes/vitesse-light.mjs", + "path": "node_modules/@shikijs/themes/dist/vitesse-light.mjs", "kind": "dynamic-import", - "original": "./themes/vitesse-light.mjs" + "original": "@shikijs/themes/vitesse-light" } ], "format": "esm" }, - "node_modules/@shikijs/core/dist/types.mjs": { - "bytes": 351, + "node_modules/@shikijs/engine-oniguruma/dist/index.mjs": { + "bytes": 15970, + "imports": [], + "format": "esm" + }, + "node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs": { + "bytes": 622442, "imports": [], "format": "esm" }, - "node_modules/@shikijs/core/dist/textmate.mjs": { - "bytes": 119640, + "node_modules/shiki/dist/wasm.mjs": { + "bytes": 122, "imports": [ { - "path": "node_modules/@shikijs/core/dist/types.mjs", + "path": "node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", "kind": "import-statement", - "original": "./types.mjs" + "original": "@shikijs/engine-oniguruma/wasm-inlined" }, { - "path": "", + "path": "node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", "kind": "import-statement", - "external": true + "original": "@shikijs/engine-oniguruma/wasm-inlined" } ], "format": "esm" }, - "node_modules/@shikijs/core/dist/index.mjs": { - "bytes": 169274, + "node_modules/shiki/dist/bundle-full.mjs": { + "bytes": 1073, "imports": [ { - "path": "node_modules/@shikijs/core/dist/textmate.mjs", + "path": "node_modules/@shikijs/core/dist/index.mjs", "kind": "import-statement", - "original": "./textmate.mjs" + "original": "@shikijs/core" }, { - "path": "node_modules/@shikijs/core/dist/types.mjs", + "path": "node_modules/@shikijs/core/dist/index.mjs", "kind": "import-statement", - "original": "./types.mjs" + "original": "@shikijs/core" }, - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/theme-css-variables.mjs": { - "bytes": 6641, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/bundle-full.mjs": { - "bytes": 1136, - "imports": [ { "path": "node_modules/shiki/dist/langs.mjs", "kind": "import-statement", @@ -5065,11 +4866,6 @@ "kind": "import-statement", "original": "./langs.mjs" }, - { - "path": "node_modules/shiki/dist/chunks/wasm-dynamic.mjs", - "kind": "import-statement", - "original": "./chunks/wasm-dynamic.mjs" - }, { "path": "node_modules/shiki/dist/themes.mjs", "kind": "import-statement", @@ -5081,562 +4877,610 @@ "original": "./themes.mjs" }, { - "path": "node_modules/@shikijs/core/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/core" - }, - { - "path": "node_modules/@shikijs/core/dist/index.mjs", + "path": "node_modules/@shikijs/engine-oniguruma/dist/index.mjs", "kind": "import-statement", - "original": "@shikijs/core" + "original": "@shikijs/engine-oniguruma" }, { - "path": "node_modules/shiki/dist/theme-css-variables.mjs", - "kind": "import-statement", - "original": "./theme-css-variables.mjs" + "path": "node_modules/shiki/dist/wasm.mjs", + "kind": "dynamic-import", + "original": "shiki/wasm" } ], "format": "esm" }, - "node_modules/shiki/dist/index.mjs": { - "bytes": 542, + "node_modules/oniguruma-parser/dist/utils.js": { + "bytes": 523, + "imports": [], + "format": "esm" + }, + "node_modules/oniguruma-parser/dist/tokenizer/tokenize.js": { + "bytes": 11850, "imports": [ { - "path": "node_modules/shiki/dist/bundle-full.mjs", - "kind": "import-statement", - "original": "./bundle-full.mjs" - }, - { - "path": "node_modules/shiki/dist/theme-css-variables.mjs", - "kind": "import-statement", - "original": "./theme-css-variables.mjs" - }, - { - "path": "node_modules/@shikijs/core/dist/index.mjs", + "path": "node_modules/oniguruma-parser/dist/utils.js", "kind": "import-statement", - "original": "@shikijs/core" - }, + "original": "../utils.js" + } + ], + "format": "esm" + }, + "node_modules/oniguruma-parser/dist/parser/node-utils.js": { + "bytes": 675, + "imports": [], + "format": "esm" + }, + "node_modules/oniguruma-parser/dist/parser/parse.js": { + "bytes": 10609, + "imports": [ { - "path": "node_modules/shiki/dist/themes.mjs", + "path": "node_modules/oniguruma-parser/dist/tokenizer/tokenize.js", "kind": "import-statement", - "original": "./themes.mjs" + "original": "../tokenizer/tokenize.js" }, { - "path": "node_modules/shiki/dist/langs.mjs", + "path": "node_modules/oniguruma-parser/dist/utils.js", "kind": "import-statement", - "original": "./langs.mjs" + "original": "../utils.js" }, { - "path": "node_modules/shiki/dist/chunks/wasm-dynamic.mjs", + "path": "node_modules/oniguruma-parser/dist/parser/node-utils.js", "kind": "import-statement", - "original": "./chunks/wasm-dynamic.mjs" + "original": "./node-utils.js" } ], "format": "esm" }, - "node_modules/html-void-elements/index.js": { - "bytes": 316, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/schema.js": { - "bytes": 601, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/merge.js": { - "bytes": 601, + "node_modules/oniguruma-parser/dist/traverser/traverse.js": { + "bytes": 1699, "imports": [ { - "path": "node_modules/property-information/lib/util/schema.js", + "path": "node_modules/oniguruma-parser/dist/utils.js", "kind": "import-statement", - "original": "./schema.js" + "original": "../utils.js" } ], "format": "esm" }, - "node_modules/property-information/lib/normalize.js": { - "bytes": 120, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/info.js": { - "bytes": 649, + "node_modules/regex/src/utils-internals.js": { + "bytes": 772, "imports": [], "format": "esm" }, - "node_modules/property-information/lib/util/types.js": { - "bytes": 350, + "node_modules/regex-utilities/src/index.js": { + "bytes": 6094, "imports": [], "format": "esm" }, - "node_modules/property-information/lib/util/defined-info.js": { - "bytes": 982, + "node_modules/regex/src/atomic.js": { + "bytes": 7636, "imports": [ { - "path": "node_modules/property-information/lib/util/info.js", + "path": "node_modules/regex/src/utils-internals.js", "kind": "import-statement", - "original": "./info.js" + "original": "./utils-internals.js" }, { - "path": "node_modules/property-information/lib/util/types.js", + "path": "node_modules/regex-utilities/src/index.js", "kind": "import-statement", - "original": "./types.js" + "original": "regex-utilities" } ], "format": "esm" }, - "node_modules/property-information/lib/util/create.js": { - "bytes": 1473, + "node_modules/regex/src/subclass.js": { + "bytes": 2594, "imports": [ { - "path": "node_modules/property-information/lib/normalize.js", + "path": "", "kind": "import-statement", - "original": "../normalize.js" - }, + "external": true + } + ], + "format": "esm" + }, + "node_modules/regex/src/internals.js": { + "bytes": 94, + "imports": [ { - "path": "node_modules/property-information/lib/util/schema.js", + "path": "node_modules/regex/src/atomic.js", "kind": "import-statement", - "original": "./schema.js" + "original": "./atomic.js" }, { - "path": "node_modules/property-information/lib/util/defined-info.js", + "path": "node_modules/regex/src/subclass.js", "kind": "import-statement", - "original": "./defined-info.js" + "original": "./subclass.js" } ], "format": "esm" }, - "node_modules/property-information/lib/xlink.js": { - "bytes": 343, + "node_modules/regex-recursion/src/index.js": { + "bytes": 12749, "imports": [ { - "path": "node_modules/property-information/lib/util/create.js", + "path": "node_modules/regex-utilities/src/index.js", "kind": "import-statement", - "original": "./util/create.js" + "original": "regex-utilities" } ], "format": "esm" }, - "node_modules/property-information/lib/xml.js": { - "bytes": 225, + "node_modules/oniguruma-to-es/dist/esm/index.js": { + "bytes": 60749, "imports": [ { - "path": "node_modules/property-information/lib/util/create.js", + "path": "node_modules/oniguruma-parser/dist/parser/parse.js", "kind": "import-statement", - "original": "./util/create.js" + "original": "oniguruma-parser/parser" + }, + { + "path": "node_modules/oniguruma-parser/dist/parser/parse.js", + "kind": "import-statement", + "original": "oniguruma-parser/parser" + }, + { + "path": "node_modules/oniguruma-parser/dist/traverser/traverse.js", + "kind": "import-statement", + "original": "oniguruma-parser/traverser" + }, + { + "path": "node_modules/oniguruma-parser/dist/parser/parse.js", + "kind": "import-statement", + "original": "oniguruma-parser/parser" + }, + { + "path": "node_modules/oniguruma-parser/dist/traverser/traverse.js", + "kind": "import-statement", + "original": "oniguruma-parser/traverser" + }, + { + "path": "node_modules/oniguruma-parser/dist/parser/parse.js", + "kind": "import-statement", + "original": "oniguruma-parser/parser" + }, + { + "path": "node_modules/regex/src/internals.js", + "kind": "import-statement", + "original": "regex/internals" + }, + { + "path": "node_modules/regex-recursion/src/index.js", + "kind": "import-statement", + "original": "regex-recursion" + }, + { + "path": "", + "kind": "import-statement", + "external": true } ], "format": "esm" }, - "node_modules/property-information/lib/util/case-sensitive-transform.js": { - "bytes": 239, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/case-insensitive-transform.js": { - "bytes": 308, + "node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs": { + "bytes": 2324, "imports": [ { - "path": "node_modules/property-information/lib/util/case-sensitive-transform.js", + "path": "", "kind": "import-statement", - "original": "./case-sensitive-transform.js" + "external": true } ], "format": "esm" }, - "node_modules/property-information/lib/xmlns.js": { - "bytes": 298, + "node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs": { + "bytes": 1802, "imports": [ { - "path": "node_modules/property-information/lib/util/create.js", + "path": "node_modules/oniguruma-to-es/dist/esm/index.js", "kind": "import-statement", - "original": "./util/create.js" + "original": "oniguruma-to-es" }, { - "path": "node_modules/property-information/lib/util/case-insensitive-transform.js", + "path": "node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", "kind": "import-statement", - "original": "./util/case-insensitive-transform.js" + "original": "./shared/engine-javascript.hzpS1_41.mjs" } ], "format": "esm" }, - "node_modules/property-information/lib/aria.js": { - "bytes": 1616, + "node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs": { + "bytes": 521, "imports": [ { - "path": "node_modules/property-information/lib/util/types.js", + "path": "node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", "kind": "import-statement", - "original": "./util/types.js" - }, - { - "path": "node_modules/property-information/lib/util/create.js", - "kind": "import-statement", - "original": "./util/create.js" + "original": "./shared/engine-javascript.hzpS1_41.mjs" } ], "format": "esm" }, - "node_modules/property-information/lib/html.js": { - "bytes": 8639, + "node_modules/@shikijs/engine-javascript/dist/index.mjs": { + "bytes": 273, "imports": [ { - "path": "node_modules/property-information/lib/util/types.js", + "path": "node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs", "kind": "import-statement", - "original": "./util/types.js" + "original": "./engine-compile.mjs" }, { - "path": "node_modules/property-information/lib/util/create.js", + "path": "node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs", "kind": "import-statement", - "original": "./util/create.js" + "original": "./engine-raw.mjs" }, { - "path": "node_modules/property-information/lib/util/case-insensitive-transform.js", + "path": "node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", "kind": "import-statement", - "original": "./util/case-insensitive-transform.js" + "original": "./shared/engine-javascript.hzpS1_41.mjs" + }, + { + "path": "node_modules/oniguruma-to-es/dist/esm/index.js", + "kind": "import-statement", + "original": "oniguruma-to-es" } ], "format": "esm" }, - "node_modules/property-information/lib/svg.js": { - "bytes": 14350, + "node_modules/shiki/dist/index.mjs": { + "bytes": 578, "imports": [ { - "path": "node_modules/property-information/lib/util/types.js", + "path": "node_modules/shiki/dist/bundle-full.mjs", "kind": "import-statement", - "original": "./util/types.js" + "original": "./bundle-full.mjs" }, { - "path": "node_modules/property-information/lib/util/create.js", + "path": "node_modules/@shikijs/engine-javascript/dist/index.mjs", "kind": "import-statement", - "original": "./util/create.js" + "original": "@shikijs/engine-javascript" }, { - "path": "node_modules/property-information/lib/util/case-sensitive-transform.js", + "path": "node_modules/@shikijs/engine-oniguruma/dist/index.mjs", "kind": "import-statement", - "original": "./util/case-sensitive-transform.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/find.js": { - "bytes": 1426, - "imports": [ + "original": "@shikijs/engine-oniguruma" + }, { - "path": "node_modules/property-information/lib/normalize.js", + "path": "node_modules/@shikijs/core/dist/index.mjs", "kind": "import-statement", - "original": "./normalize.js" + "original": "@shikijs/core" }, { - "path": "node_modules/property-information/lib/util/defined-info.js", + "path": "node_modules/shiki/dist/langs.mjs", "kind": "import-statement", - "original": "./util/defined-info.js" + "original": "./langs.mjs" }, { - "path": "node_modules/property-information/lib/util/info.js", + "path": "node_modules/shiki/dist/themes.mjs", "kind": "import-statement", - "original": "./util/info.js" + "original": "./themes.mjs" } ], "format": "esm" }, - "node_modules/property-information/lib/hast-to-react.js": { - "bytes": 807, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/index.js": { - "bytes": 667, + "src/settings/SettingsTab.ts": { + "bytes": 5561, "imports": [ { - "path": "node_modules/property-information/lib/util/merge.js", - "kind": "import-statement", - "original": "./lib/util/merge.js" - }, - { - "path": "node_modules/property-information/lib/xlink.js", + "path": "obsidian", "kind": "import-statement", - "original": "./lib/xlink.js" + "external": true }, { - "path": "node_modules/property-information/lib/xml.js", + "path": "src/settings/StringSelectModal.ts", "kind": "import-statement", - "original": "./lib/xml.js" + "original": "src/settings/StringSelectModal" }, { - "path": "node_modules/property-information/lib/xmlns.js", + "path": "node_modules/shiki/dist/index.mjs", "kind": "import-statement", - "original": "./lib/xmlns.js" - }, + "original": "shiki" + } + ], + "format": "esm" + }, + "src/PrismPlugin.ts": { + "bytes": 3493, + "imports": [], + "format": "esm" + }, + "node_modules/unist-util-is/lib/index.js": { + "bytes": 8391, + "imports": [], + "format": "esm" + }, + "node_modules/unist-util-is/index.js": { + "bytes": 217, + "imports": [ { - "path": "node_modules/property-information/lib/aria.js", + "path": "node_modules/unist-util-is/lib/index.js", "kind": "import-statement", - "original": "./lib/aria.js" - }, + "original": "./lib/index.js" + } + ], + "format": "esm" + }, + "node_modules/unist-util-find-after/lib/index.js": { + "bytes": 3613, + "imports": [ { - "path": "node_modules/property-information/lib/html.js", + "path": "node_modules/unist-util-is/index.js", "kind": "import-statement", - "original": "./lib/html.js" - }, + "original": "unist-util-is" + } + ], + "format": "esm" + }, + "node_modules/unist-util-find-after/index.js": { + "bytes": 41, + "imports": [ { - "path": "node_modules/property-information/lib/svg.js", + "path": "node_modules/unist-util-find-after/lib/index.js", "kind": "import-statement", - "original": "./lib/svg.js" - }, + "original": "./lib/index.js" + } + ], + "format": "esm" + }, + "node_modules/hast-util-is-element/lib/index.js": { + "bytes": 7777, + "imports": [], + "format": "esm" + }, + "node_modules/hast-util-is-element/index.js": { + "bytes": 231, + "imports": [ { - "path": "node_modules/property-information/lib/find.js", + "path": "node_modules/hast-util-is-element/lib/index.js", "kind": "import-statement", - "original": "./lib/find.js" - }, + "original": "./lib/index.js" + } + ], + "format": "esm" + }, + "node_modules/hast-util-to-text/lib/index.js": { + "bytes": 19593, + "imports": [ { - "path": "node_modules/property-information/lib/hast-to-react.js", + "path": "node_modules/unist-util-find-after/index.js", "kind": "import-statement", - "original": "./lib/hast-to-react.js" + "original": "unist-util-find-after" }, { - "path": "node_modules/property-information/lib/normalize.js", + "path": "node_modules/hast-util-is-element/index.js", "kind": "import-statement", - "original": "./lib/normalize.js" + "original": "hast-util-is-element" } ], "format": "esm" }, - "node_modules/zwitch/index.js": { - "bytes": 3787, - "imports": [], - "format": "esm" - }, - "node_modules/stringify-entities/lib/core.js": { - "bytes": 3040, - "imports": [], - "format": "esm" - }, - "node_modules/stringify-entities/lib/util/to-hexadecimal.js": { - "bytes": 436, - "imports": [], + "node_modules/hast-util-to-text/index.js": { + "bytes": 163, + "imports": [ + { + "path": "node_modules/hast-util-to-text/lib/index.js", + "kind": "import-statement", + "original": "./lib/index.js" + } + ], "format": "esm" }, - "node_modules/stringify-entities/lib/util/to-decimal.js": { - "bytes": 392, + "node_modules/css-selector-parser/dist/mjs/indexes.js": { + "bytes": 1057, "imports": [], "format": "esm" }, - "node_modules/character-entities-legacy/index.js": { - "bytes": 1316, + "node_modules/css-selector-parser/dist/mjs/pseudo-signatures.js": { + "bytes": 2040, "imports": [], "format": "esm" }, - "node_modules/character-entities-html4/index.js": { - "bytes": 3908, + "node_modules/css-selector-parser/dist/mjs/syntax-definitions.js": { + "bytes": 16047, "imports": [], "format": "esm" }, - "node_modules/stringify-entities/lib/constant/dangerous.js": { - "bytes": 290, + "node_modules/css-selector-parser/dist/mjs/utils.js": { + "bytes": 3135, "imports": [], "format": "esm" }, - "node_modules/stringify-entities/lib/util/to-named.js": { - "bytes": 1290, + "node_modules/css-selector-parser/dist/mjs/parser.js": { + "bytes": 28941, "imports": [ { - "path": "node_modules/character-entities-legacy/index.js", + "path": "node_modules/css-selector-parser/dist/mjs/indexes.js", "kind": "import-statement", - "original": "character-entities-legacy" + "original": "./indexes.js" }, { - "path": "node_modules/character-entities-html4/index.js", + "path": "node_modules/css-selector-parser/dist/mjs/pseudo-signatures.js", "kind": "import-statement", - "original": "character-entities-html4" + "original": "./pseudo-signatures.js" }, { - "path": "node_modules/stringify-entities/lib/constant/dangerous.js", + "path": "node_modules/css-selector-parser/dist/mjs/syntax-definitions.js", "kind": "import-statement", - "original": "../constant/dangerous.js" + "original": "./syntax-definitions.js" + }, + { + "path": "node_modules/css-selector-parser/dist/mjs/utils.js", + "kind": "import-statement", + "original": "./utils.js" } ], "format": "esm" }, - "node_modules/stringify-entities/lib/util/format-smart.js": { - "bytes": 2478, + "node_modules/css-selector-parser/dist/mjs/render.js": { + "bytes": 5077, "imports": [ { - "path": "node_modules/stringify-entities/lib/util/to-hexadecimal.js", - "kind": "import-statement", - "original": "./to-hexadecimal.js" - }, - { - "path": "node_modules/stringify-entities/lib/util/to-decimal.js", - "kind": "import-statement", - "original": "./to-decimal.js" - }, - { - "path": "node_modules/stringify-entities/lib/util/to-named.js", + "path": "node_modules/css-selector-parser/dist/mjs/utils.js", "kind": "import-statement", - "original": "./to-named.js" + "original": "./utils.js" } ], "format": "esm" }, - "node_modules/stringify-entities/lib/util/format-basic.js": { - "bytes": 192, + "node_modules/css-selector-parser/dist/mjs/ast.js": { + "bytes": 3140, "imports": [], "format": "esm" }, - "node_modules/stringify-entities/lib/index.js": { - "bytes": 961, + "node_modules/css-selector-parser/dist/mjs/index.js": { + "bytes": 114, "imports": [ { - "path": "node_modules/stringify-entities/lib/core.js", + "path": "node_modules/css-selector-parser/dist/mjs/parser.js", "kind": "import-statement", - "original": "./core.js" + "original": "./parser.js" }, { - "path": "node_modules/stringify-entities/lib/util/format-smart.js", + "path": "node_modules/css-selector-parser/dist/mjs/render.js", "kind": "import-statement", - "original": "./util/format-smart.js" + "original": "./render.js" }, { - "path": "node_modules/stringify-entities/lib/util/format-basic.js", + "path": "node_modules/css-selector-parser/dist/mjs/ast.js", "kind": "import-statement", - "original": "./util/format-basic.js" + "original": "./ast.js" } ], "format": "esm" }, - "node_modules/stringify-entities/index.js": { - "bytes": 160, + "node_modules/hast-util-select/lib/parse.js": { + "bytes": 479, "imports": [ { - "path": "node_modules/stringify-entities/lib/index.js", + "path": "node_modules/css-selector-parser/dist/mjs/index.js", "kind": "import-statement", - "original": "./lib/index.js" + "original": "css-selector-parser" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/handle/comment.js": { - "bytes": 1389, - "imports": [ - { - "path": "node_modules/stringify-entities/index.js", - "kind": "import-statement", - "original": "stringify-entities" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/handle/doctype.js": { - "bytes": 717, - "imports": [], - "format": "esm" - }, - "node_modules/ccount/index.js": { - "bytes": 619, + "node_modules/direction/index.js": { + "bytes": 739, "imports": [], "format": "esm" }, - "node_modules/comma-separated-tokens/index.js": { - "bytes": 1592, + "node_modules/hast-util-to-string/lib/index.js": { + "bytes": 985, "imports": [], "format": "esm" }, - "node_modules/space-separated-tokens/index.js": { - "bytes": 551, - "imports": [], + "node_modules/hast-util-to-string/index.js": { + "bytes": 1122, + "imports": [ + { + "path": "node_modules/hast-util-to-string/lib/index.js", + "kind": "import-statement", + "original": "./lib/index.js" + } + ], "format": "esm" }, - "node_modules/hast-util-whitespace/lib/index.js": { - "bytes": 885, + "node_modules/unist-util-visit-parents/lib/color.js": { + "bytes": 90, "imports": [], "format": "esm" }, - "node_modules/hast-util-whitespace/index.js": { - "bytes": 42, + "node_modules/unist-util-visit-parents/lib/index.js": { + "bytes": 11714, "imports": [ { - "path": "node_modules/hast-util-whitespace/lib/index.js", + "path": "node_modules/unist-util-is/index.js", "kind": "import-statement", - "original": "./lib/index.js" + "original": "unist-util-is" + }, + { + "path": "node_modules/unist-util-visit-parents/lib/color.js", + "kind": "import-statement", + "original": "unist-util-visit-parents/do-not-use-color" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/omission/util/siblings.js": { - "bytes": 1317, + "node_modules/unist-util-visit-parents/index.js": { + "bytes": 108, "imports": [ { - "path": "node_modules/hast-util-whitespace/index.js", + "path": "node_modules/unist-util-visit-parents/lib/index.js", "kind": "import-statement", - "original": "hast-util-whitespace" + "original": "./lib/index.js" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/omission/omission.js": { - "bytes": 1026, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/omission/closing.js": { - "bytes": 8785, + "node_modules/unist-util-visit/lib/index.js": { + "bytes": 9624, "imports": [ { - "path": "node_modules/hast-util-whitespace/index.js", + "path": "node_modules/unist-util-visit-parents/index.js", "kind": "import-statement", - "original": "hast-util-whitespace" + "original": "unist-util-visit-parents" }, { - "path": "node_modules/hast-util-to-html/lib/omission/util/siblings.js", + "path": "node_modules/unist-util-visit-parents/index.js", "kind": "import-statement", - "original": "./util/siblings.js" - }, + "original": "unist-util-visit-parents" + } + ], + "format": "esm" + }, + "node_modules/unist-util-visit/index.js": { + "bytes": 101, + "imports": [ { - "path": "node_modules/hast-util-to-html/lib/omission/omission.js", + "path": "node_modules/unist-util-visit/lib/index.js", "kind": "import-statement", - "original": "./omission.js" + "original": "./lib/index.js" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/omission/opening.js": { - "bytes": 3459, + "node_modules/hast-util-select/lib/enter-state.js": { + "bytes": 4394, "imports": [ { - "path": "node_modules/hast-util-whitespace/index.js", + "path": "node_modules/direction/index.js", "kind": "import-statement", - "original": "hast-util-whitespace" + "original": "direction" }, { - "path": "node_modules/hast-util-to-html/lib/omission/util/siblings.js", + "path": "node_modules/hast-util-to-string/index.js", "kind": "import-statement", - "original": "./util/siblings.js" + "original": "hast-util-to-string" }, { - "path": "node_modules/hast-util-to-html/lib/omission/closing.js", + "path": "node_modules/property-information/index.js", "kind": "import-statement", - "original": "./closing.js" + "original": "property-information" }, { - "path": "node_modules/hast-util-to-html/lib/omission/omission.js", + "path": "node_modules/unist-util-visit/index.js", "kind": "import-statement", - "original": "./omission.js" + "original": "unist-util-visit" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/handle/element.js": { - "bytes": 7618, + "node_modules/devlop/lib/default.js": { + "bytes": 133, + "imports": [], + "format": "esm" + }, + "node_modules/hast-util-select/lib/attribute.js": { + "bytes": 2660, "imports": [ { - "path": "node_modules/ccount/index.js", + "path": "node_modules/comma-separated-tokens/index.js", "kind": "import-statement", - "original": "ccount" + "original": "comma-separated-tokens" }, { - "path": "node_modules/comma-separated-tokens/index.js", + "path": "node_modules/devlop/lib/default.js", "kind": "import-statement", - "original": "comma-separated-tokens" + "original": "devlop" }, { "path": "node_modules/property-information/index.js", @@ -5647,4197 +5491,8508 @@ "path": "node_modules/space-separated-tokens/index.js", "kind": "import-statement", "original": "space-separated-tokens" - }, - { - "path": "node_modules/stringify-entities/index.js", - "kind": "import-statement", - "original": "stringify-entities" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/closing.js", - "kind": "import-statement", - "original": "../omission/closing.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/opening.js", - "kind": "import-statement", - "original": "../omission/opening.js" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/handle/text.js": { - "bytes": 1087, + "node_modules/hast-util-select/lib/class-name.js": { + "bytes": 596, + "imports": [], + "format": "esm" + }, + "node_modules/hast-util-select/lib/id.js": { + "bytes": 379, + "imports": [], + "format": "esm" + }, + "node_modules/hast-util-select/lib/name.js": { + "bytes": 390, + "imports": [], + "format": "esm" + }, + "node_modules/bcp-47-match/index.js": { + "bytes": 5963, + "imports": [], + "format": "esm" + }, + "node_modules/hast-util-has-property/lib/index.js": { + "bytes": 870, + "imports": [], + "format": "esm" + }, + "node_modules/hast-util-has-property/index.js": { + "bytes": 43, "imports": [ { - "path": "node_modules/stringify-entities/index.js", + "path": "node_modules/hast-util-has-property/lib/index.js", "kind": "import-statement", - "original": "stringify-entities" + "original": "./lib/index.js" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/handle/raw.js": { - "bytes": 668, + "node_modules/nth-check/lib/esm/parse.js": { + "bytes": 2239, + "imports": [], + "format": "esm" + }, + "node_modules/boolbase/index.js": { + "bytes": 125, + "imports": [], + "format": "cjs" + }, + "node_modules/nth-check/lib/esm/compile.js": { + "bytes": 3320, "imports": [ { - "path": "node_modules/hast-util-to-html/lib/handle/text.js", + "path": "node_modules/boolbase/index.js", "kind": "import-statement", - "original": "./text.js" + "original": "boolbase" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/handle/root.js": { - "bytes": 586, - "imports": [], + "node_modules/nth-check/lib/esm/index.js": { + "bytes": 1655, + "imports": [ + { + "path": "node_modules/nth-check/lib/esm/parse.js", + "kind": "import-statement", + "original": "./parse.js" + }, + { + "path": "node_modules/nth-check/lib/esm/compile.js", + "kind": "import-statement", + "original": "./compile.js" + } + ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/handle/index.js": { - "bytes": 1163, + "node_modules/hast-util-select/lib/pseudo.js": { + "bytes": 18365, "imports": [ { - "path": "node_modules/zwitch/index.js", + "path": "node_modules/bcp-47-match/index.js", "kind": "import-statement", - "original": "zwitch" + "original": "bcp-47-match" }, { - "path": "node_modules/hast-util-to-html/lib/handle/comment.js", + "path": "node_modules/comma-separated-tokens/index.js", "kind": "import-statement", - "original": "./comment.js" + "original": "comma-separated-tokens" }, { - "path": "node_modules/hast-util-to-html/lib/handle/doctype.js", + "path": "node_modules/devlop/lib/default.js", "kind": "import-statement", - "original": "./doctype.js" + "original": "devlop" }, { - "path": "node_modules/hast-util-to-html/lib/handle/element.js", + "path": "node_modules/hast-util-has-property/index.js", "kind": "import-statement", - "original": "./element.js" + "original": "hast-util-has-property" }, { - "path": "node_modules/hast-util-to-html/lib/handle/raw.js", + "path": "node_modules/hast-util-whitespace/index.js", "kind": "import-statement", - "original": "./raw.js" + "original": "hast-util-whitespace" }, { - "path": "node_modules/hast-util-to-html/lib/handle/root.js", + "path": "node_modules/nth-check/lib/esm/index.js", "kind": "import-statement", - "original": "./root.js" + "original": "nth-check" }, { - "path": "node_modules/hast-util-to-html/lib/handle/text.js", + "path": "node_modules/zwitch/index.js", "kind": "import-statement", - "original": "./text.js" + "original": "zwitch" + }, + { + "path": "node_modules/hast-util-select/lib/walk.js", + "kind": "import-statement", + "original": "./walk.js" } ], "format": "esm" }, - "node_modules/hast-util-to-html/lib/index.js": { - "bytes": 9828, + "node_modules/hast-util-select/lib/test.js": { + "bytes": 1528, "imports": [ { - "path": "node_modules/html-void-elements/index.js", + "path": "node_modules/hast-util-select/lib/attribute.js", "kind": "import-statement", - "original": "html-void-elements" + "original": "./attribute.js" }, { - "path": "node_modules/property-information/index.js", + "path": "node_modules/hast-util-select/lib/class-name.js", "kind": "import-statement", - "original": "property-information" + "original": "./class-name.js" }, { - "path": "node_modules/hast-util-to-html/lib/handle/index.js", + "path": "node_modules/hast-util-select/lib/id.js", "kind": "import-statement", - "original": "./handle/index.js" + "original": "./id.js" + }, + { + "path": "node_modules/hast-util-select/lib/name.js", + "kind": "import-statement", + "original": "./name.js" + }, + { + "path": "node_modules/hast-util-select/lib/pseudo.js", + "kind": "import-statement", + "original": "./pseudo.js" } ], "format": "esm" }, - "node_modules/hast-util-to-html/index.js": { - "bytes": 283, + "node_modules/hast-util-select/lib/walk.js": { + "bytes": 7674, "imports": [ { - "path": "node_modules/hast-util-to-html/lib/index.js", + "path": "node_modules/hast-util-select/lib/enter-state.js", "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/unist-util-is/lib/index.js": { - "bytes": 8391, - "imports": [], - "format": "esm" - }, - "node_modules/unist-util-is/index.js": { - "bytes": 217, - "imports": [ + "original": "./enter-state.js" + }, { - "path": "node_modules/unist-util-is/lib/index.js", + "path": "node_modules/hast-util-select/lib/test.js", "kind": "import-statement", - "original": "./lib/index.js" + "original": "./test.js" } ], "format": "esm" }, - "node_modules/unist-util-find-after/lib/index.js": { - "bytes": 3613, + "node_modules/hast-util-select/lib/index.js": { + "bytes": 4608, "imports": [ { - "path": "node_modules/unist-util-is/index.js", + "path": "node_modules/property-information/index.js", "kind": "import-statement", - "original": "unist-util-is" + "original": "property-information" + }, + { + "path": "node_modules/hast-util-select/lib/parse.js", + "kind": "import-statement", + "original": "./parse.js" + }, + { + "path": "node_modules/hast-util-select/lib/walk.js", + "kind": "import-statement", + "original": "./walk.js" } ], "format": "esm" }, - "node_modules/unist-util-find-after/index.js": { - "bytes": 41, + "node_modules/hast-util-select/index.js": { + "bytes": 118, "imports": [ { - "path": "node_modules/unist-util-find-after/lib/index.js", + "path": "node_modules/hast-util-select/lib/index.js", "kind": "import-statement", "original": "./lib/index.js" } ], "format": "esm" }, - "node_modules/hast-util-is-element/lib/index.js": { - "bytes": 7777, + "node_modules/hast-util-parse-selector/lib/index.js": { + "bytes": 2405, "imports": [], "format": "esm" }, - "node_modules/hast-util-is-element/index.js": { - "bytes": 231, + "node_modules/hast-util-parse-selector/index.js": { + "bytes": 45, "imports": [ { - "path": "node_modules/hast-util-is-element/lib/index.js", + "path": "node_modules/hast-util-parse-selector/lib/index.js", "kind": "import-statement", "original": "./lib/index.js" } ], "format": "esm" }, - "node_modules/hast-util-to-text/lib/index.js": { - "bytes": 19593, + "node_modules/hastscript/lib/create-h.js": { + "bytes": 9032, "imports": [ { - "path": "node_modules/unist-util-find-after/index.js", + "path": "node_modules/comma-separated-tokens/index.js", "kind": "import-statement", - "original": "unist-util-find-after" + "original": "comma-separated-tokens" }, { - "path": "node_modules/hast-util-is-element/index.js", + "path": "node_modules/hast-util-parse-selector/index.js", "kind": "import-statement", - "original": "hast-util-is-element" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-text/index.js": { - "bytes": 163, - "imports": [ + "original": "hast-util-parse-selector" + }, { - "path": "node_modules/hast-util-to-text/lib/index.js", + "path": "node_modules/property-information/index.js", "kind": "import-statement", - "original": "./lib/index.js" + "original": "property-information" + }, + { + "path": "node_modules/space-separated-tokens/index.js", + "kind": "import-statement", + "original": "space-separated-tokens" } ], "format": "esm" }, - "node_modules/css-selector-parser/dist/mjs/indexes.js": { - "bytes": 1057, - "imports": [], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/pseudo-signatures.js": { - "bytes": 2040, - "imports": [], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/syntax-definitions.js": { - "bytes": 7336, - "imports": [], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/utils.js": { - "bytes": 3135, + "node_modules/hastscript/lib/svg-case-sensitive-tag-names.js": { + "bytes": 796, "imports": [], "format": "esm" }, - "node_modules/css-selector-parser/dist/mjs/parser.js": { - "bytes": 26944, + "node_modules/hastscript/lib/index.js": { + "bytes": 1233, "imports": [ { - "path": "node_modules/css-selector-parser/dist/mjs/indexes.js", - "kind": "import-statement", - "original": "./indexes.js" - }, - { - "path": "node_modules/css-selector-parser/dist/mjs/pseudo-signatures.js", + "path": "node_modules/property-information/index.js", "kind": "import-statement", - "original": "./pseudo-signatures.js" + "original": "property-information" }, { - "path": "node_modules/css-selector-parser/dist/mjs/syntax-definitions.js", + "path": "node_modules/hastscript/lib/create-h.js", "kind": "import-statement", - "original": "./syntax-definitions.js" + "original": "./create-h.js" }, { - "path": "node_modules/css-selector-parser/dist/mjs/utils.js", + "path": "node_modules/hastscript/lib/svg-case-sensitive-tag-names.js", "kind": "import-statement", - "original": "./utils.js" + "original": "./svg-case-sensitive-tag-names.js" } ], "format": "esm" }, - "node_modules/css-selector-parser/dist/mjs/render.js": { - "bytes": 5077, + "node_modules/hastscript/index.js": { + "bytes": 219, "imports": [ { - "path": "node_modules/css-selector-parser/dist/mjs/utils.js", + "path": "node_modules/hastscript/lib/index.js", "kind": "import-statement", - "original": "./utils.js" + "original": "./lib/index.js" } ], "format": "esm" }, - "node_modules/css-selector-parser/dist/mjs/ast.js": { - "bytes": 3140, + "node_modules/picocolors/picocolors.browser.js": { + "bytes": 598, "imports": [], - "format": "esm" + "format": "cjs" }, - "node_modules/css-selector-parser/dist/mjs/index.js": { - "bytes": 114, + "(disabled):node_modules/postcss/lib/terminal-highlight": { + "bytes": 0, + "imports": [] + }, + "node_modules/postcss/lib/css-syntax-error.js": { + "bytes": 3402, "imports": [ { - "path": "node_modules/css-selector-parser/dist/mjs/parser.js", - "kind": "import-statement", - "original": "./parser.js" - }, - { - "path": "node_modules/css-selector-parser/dist/mjs/render.js", - "kind": "import-statement", - "original": "./render.js" + "path": "node_modules/picocolors/picocolors.browser.js", + "kind": "require-call", + "original": "picocolors" }, { - "path": "node_modules/css-selector-parser/dist/mjs/ast.js", - "kind": "import-statement", - "original": "./ast.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/lib/parse.js": { - "bytes": 495, - "imports": [ - { - "path": "node_modules/css-selector-parser/dist/mjs/index.js", - "kind": "import-statement", - "original": "css-selector-parser" + "path": "(disabled):node_modules/postcss/lib/terminal-highlight", + "kind": "require-call", + "original": "./terminal-highlight" } ], - "format": "esm" - }, - "node_modules/direction/index.js": { - "bytes": 739, - "imports": [], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-to-string/lib/index.js": { - "bytes": 1031, + "node_modules/postcss/lib/stringifier.js": { + "bytes": 8220, "imports": [], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-to-string/index.js": { - "bytes": 1122, + "node_modules/postcss/lib/stringify.js": { + "bytes": 213, "imports": [ { - "path": "node_modules/hast-util-to-string/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" + "path": "node_modules/postcss/lib/stringifier.js", + "kind": "require-call", + "original": "./stringifier" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/unist-util-visit-parents/lib/color.js": { - "bytes": 90, + "node_modules/postcss/lib/symbols.js": { + "bytes": 91, "imports": [], - "format": "esm" + "format": "cjs" }, - "node_modules/unist-util-visit-parents/lib/index.js": { - "bytes": 11714, + "node_modules/postcss/lib/node.js": { + "bytes": 9930, "imports": [ { - "path": "node_modules/unist-util-is/index.js", - "kind": "import-statement", - "original": "unist-util-is" + "path": "node_modules/postcss/lib/css-syntax-error.js", + "kind": "require-call", + "original": "./css-syntax-error" }, { - "path": "node_modules/unist-util-visit-parents/lib/color.js", - "kind": "import-statement", - "original": "unist-util-visit-parents/do-not-use-color" - } - ], - "format": "esm" - }, - "node_modules/unist-util-visit-parents/index.js": { - "bytes": 108, - "imports": [ + "path": "node_modules/postcss/lib/stringifier.js", + "kind": "require-call", + "original": "./stringifier" + }, { - "path": "node_modules/unist-util-visit-parents/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" + "path": "node_modules/postcss/lib/stringify.js", + "kind": "require-call", + "original": "./stringify" + }, + { + "path": "node_modules/postcss/lib/symbols.js", + "kind": "require-call", + "original": "./symbols" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/unist-util-visit/lib/index.js": { - "bytes": 9624, + "node_modules/postcss/lib/comment.js": { + "bytes": 203, "imports": [ { - "path": "node_modules/unist-util-visit-parents/index.js", - "kind": "import-statement", - "original": "unist-util-visit-parents" - }, - { - "path": "node_modules/unist-util-visit-parents/index.js", - "kind": "import-statement", - "original": "unist-util-visit-parents" + "path": "node_modules/postcss/lib/node.js", + "kind": "require-call", + "original": "./node" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/unist-util-visit/index.js": { - "bytes": 101, + "node_modules/postcss/lib/declaration.js": { + "bytes": 495, "imports": [ { - "path": "node_modules/unist-util-visit/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" + "path": "node_modules/postcss/lib/node.js", + "kind": "require-call", + "original": "./node" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-select/lib/enter-state.js": { - "bytes": 4381, + "node_modules/postcss/lib/container.js": { + "bytes": 10647, "imports": [ { - "path": "node_modules/direction/index.js", - "kind": "import-statement", - "original": "direction" + "path": "node_modules/postcss/lib/comment.js", + "kind": "require-call", + "original": "./comment" }, { - "path": "node_modules/hast-util-to-string/index.js", - "kind": "import-statement", - "original": "hast-util-to-string" + "path": "node_modules/postcss/lib/declaration.js", + "kind": "require-call", + "original": "./declaration" }, { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" + "path": "node_modules/postcss/lib/node.js", + "kind": "require-call", + "original": "./node" }, { - "path": "node_modules/unist-util-visit/index.js", - "kind": "import-statement", - "original": "unist-util-visit" + "path": "node_modules/postcss/lib/symbols.js", + "kind": "require-call", + "original": "./symbols" } ], - "format": "esm" - }, - "node_modules/devlop/lib/default.js": { - "bytes": 133, - "imports": [], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-select/lib/attribute.js": { - "bytes": 2794, + "node_modules/postcss/lib/at-rule.js": { + "bytes": 471, "imports": [ { - "path": "node_modules/comma-separated-tokens/index.js", - "kind": "import-statement", - "original": "comma-separated-tokens" - }, - { - "path": "node_modules/devlop/lib/default.js", - "kind": "import-statement", - "original": "devlop" - }, - { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" - }, + "path": "node_modules/postcss/lib/container.js", + "kind": "require-call", + "original": "./container" + } + ], + "format": "cjs" + }, + "node_modules/postcss/lib/document.js": { + "bytes": 654, + "imports": [ { - "path": "node_modules/space-separated-tokens/index.js", - "kind": "import-statement", - "original": "space-separated-tokens" + "path": "node_modules/postcss/lib/container.js", + "kind": "require-call", + "original": "./container" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-select/lib/class-name.js": { - "bytes": 625, + "node_modules/nanoid/non-secure/index.cjs": { + "bytes": 1114, "imports": [], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-select/lib/id.js": { - "bytes": 468, + "node-modules-polyfills:path": { + "bytes": 19016, "imports": [], "format": "esm" }, - "node_modules/hast-util-select/lib/name.js": { - "bytes": 484, - "imports": [], + "node-modules-polyfills-commonjs:path": { + "bytes": 20, + "imports": [ + { + "path": "node-modules-polyfills:path", + "kind": "import-statement", + "original": "path" + } + ], "format": "esm" }, - "node_modules/bcp-47-match/index.js": { - "bytes": 5963, - "imports": [], - "format": "esm" + "(disabled):node_modules/source-map-js/source-map.js": { + "bytes": 0, + "imports": [] }, - "node_modules/hast-util-has-property/lib/index.js": { - "bytes": 870, + "node-modules-polyfills:url": { + "bytes": 121722, "imports": [], "format": "esm" }, - "node_modules/hast-util-has-property/index.js": { - "bytes": 43, + "node-modules-polyfills-commonjs:url": { + "bytes": 19, "imports": [ { - "path": "node_modules/hast-util-has-property/lib/index.js", + "path": "node-modules-polyfills:url", "kind": "import-statement", - "original": "./lib/index.js" + "original": "url" } ], "format": "esm" }, - "node_modules/nth-check/lib/esm/parse.js": { - "bytes": 2239, + "node-modules-polyfills:fs": { + "bytes": 635898, "imports": [], "format": "esm" }, - "node_modules/boolbase/index.js": { - "bytes": 125, - "imports": [], - "format": "cjs" - }, - "node_modules/nth-check/lib/esm/compile.js": { - "bytes": 3320, + "node-modules-polyfills-commonjs:fs": { + "bytes": 18, "imports": [ { - "path": "node_modules/boolbase/index.js", + "path": "node-modules-polyfills:fs", "kind": "import-statement", - "original": "boolbase" + "original": "fs" } ], "format": "esm" }, - "node_modules/nth-check/lib/esm/index.js": { - "bytes": 1655, + "node_modules/postcss/lib/previous-map.js": { + "bytes": 3984, "imports": [ { - "path": "node_modules/nth-check/lib/esm/parse.js", - "kind": "import-statement", - "original": "./parse.js" + "path": "node-modules-polyfills-commonjs:fs", + "kind": "require-call", + "original": "fs" }, { - "path": "node_modules/nth-check/lib/esm/compile.js", - "kind": "import-statement", - "original": "./compile.js" + "path": "node-modules-polyfills-commonjs:path", + "kind": "require-call", + "original": "path" + }, + { + "path": "(disabled):node_modules/source-map-js/source-map.js", + "kind": "require-call", + "original": "source-map-js" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-select/lib/pseudo.js": { - "bytes": 18236, + "node_modules/postcss/lib/input.js": { + "bytes": 6284, "imports": [ { - "path": "node_modules/bcp-47-match/index.js", - "kind": "import-statement", - "original": "bcp-47-match" - }, - { - "path": "node_modules/comma-separated-tokens/index.js", - "kind": "import-statement", - "original": "comma-separated-tokens" + "path": "node_modules/nanoid/non-secure/index.cjs", + "kind": "require-call", + "original": "nanoid/non-secure" }, { - "path": "node_modules/devlop/lib/default.js", - "kind": "import-statement", - "original": "devlop" + "path": "node-modules-polyfills-commonjs:path", + "kind": "require-call", + "original": "path" }, { - "path": "node_modules/hast-util-has-property/index.js", - "kind": "import-statement", - "original": "hast-util-has-property" + "path": "(disabled):node_modules/source-map-js/source-map.js", + "kind": "require-call", + "original": "source-map-js" }, { - "path": "node_modules/hast-util-whitespace/index.js", - "kind": "import-statement", - "original": "hast-util-whitespace" + "path": "node-modules-polyfills-commonjs:url", + "kind": "require-call", + "original": "url" }, { - "path": "node_modules/nth-check/lib/esm/index.js", - "kind": "import-statement", - "original": "nth-check" + "path": "node_modules/postcss/lib/css-syntax-error.js", + "kind": "require-call", + "original": "./css-syntax-error" }, { - "path": "node_modules/zwitch/index.js", - "kind": "import-statement", - "original": "zwitch" + "path": "node_modules/postcss/lib/previous-map.js", + "kind": "require-call", + "original": "./previous-map" }, { - "path": "node_modules/hast-util-select/lib/walk.js", - "kind": "import-statement", - "original": "./walk.js" + "path": "(disabled):node_modules/postcss/lib/terminal-highlight", + "kind": "require-call", + "original": "./terminal-highlight" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-select/lib/test.js": { - "bytes": 1604, + "node_modules/postcss/lib/root.js": { + "bytes": 1239, "imports": [ { - "path": "node_modules/hast-util-select/lib/attribute.js", - "kind": "import-statement", - "original": "./attribute.js" - }, - { - "path": "node_modules/hast-util-select/lib/class-name.js", - "kind": "import-statement", - "original": "./class-name.js" - }, - { - "path": "node_modules/hast-util-select/lib/id.js", - "kind": "import-statement", - "original": "./id.js" - }, - { - "path": "node_modules/hast-util-select/lib/name.js", - "kind": "import-statement", - "original": "./name.js" - }, - { - "path": "node_modules/hast-util-select/lib/pseudo.js", - "kind": "import-statement", - "original": "./pseudo.js" + "path": "node_modules/postcss/lib/container.js", + "kind": "require-call", + "original": "./container" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-select/lib/walk.js": { - "bytes": 7760, + "node_modules/postcss/lib/list.js": { + "bytes": 1227, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss/lib/rule.js": { + "bytes": 569, "imports": [ { - "path": "node_modules/hast-util-select/lib/enter-state.js", - "kind": "import-statement", - "original": "./enter-state.js" + "path": "node_modules/postcss/lib/container.js", + "kind": "require-call", + "original": "./container" }, { - "path": "node_modules/hast-util-select/lib/test.js", - "kind": "import-statement", - "original": "./test.js" + "path": "node_modules/postcss/lib/list.js", + "kind": "require-call", + "original": "./list" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/hast-util-select/lib/index.js": { - "bytes": 4727, + "node_modules/postcss/lib/fromJSON.js": { + "bytes": 1506, "imports": [ { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" + "path": "node_modules/postcss/lib/at-rule.js", + "kind": "require-call", + "original": "./at-rule" }, { - "path": "node_modules/hast-util-select/lib/parse.js", - "kind": "import-statement", - "original": "./parse.js" - }, + "path": "node_modules/postcss/lib/comment.js", + "kind": "require-call", + "original": "./comment" + }, { - "path": "node_modules/hast-util-select/lib/walk.js", - "kind": "import-statement", - "original": "./walk.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/index.js": { - "bytes": 118, - "imports": [ + "path": "node_modules/postcss/lib/declaration.js", + "kind": "require-call", + "original": "./declaration" + }, { - "path": "node_modules/hast-util-select/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-parse-selector/lib/index.js": { - "bytes": 2405, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-parse-selector/index.js": { - "bytes": 45, - "imports": [ + "path": "node_modules/postcss/lib/input.js", + "kind": "require-call", + "original": "./input" + }, { - "path": "node_modules/hast-util-parse-selector/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" + "path": "node_modules/postcss/lib/previous-map.js", + "kind": "require-call", + "original": "./previous-map" + }, + { + "path": "node_modules/postcss/lib/root.js", + "kind": "require-call", + "original": "./root" + }, + { + "path": "node_modules/postcss/lib/rule.js", + "kind": "require-call", + "original": "./rule" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/hastscript/lib/create-h.js": { - "bytes": 9357, + "node_modules/postcss/lib/map-generator.js": { + "bytes": 9721, "imports": [ { - "path": "node_modules/comma-separated-tokens/index.js", - "kind": "import-statement", - "original": "comma-separated-tokens" + "path": "node-modules-polyfills-commonjs:path", + "kind": "require-call", + "original": "path" }, { - "path": "node_modules/hast-util-parse-selector/index.js", - "kind": "import-statement", - "original": "hast-util-parse-selector" + "path": "(disabled):node_modules/source-map-js/source-map.js", + "kind": "require-call", + "original": "source-map-js" }, { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" + "path": "node-modules-polyfills-commonjs:url", + "kind": "require-call", + "original": "url" }, { - "path": "node_modules/space-separated-tokens/index.js", - "kind": "import-statement", - "original": "space-separated-tokens" + "path": "node_modules/postcss/lib/input.js", + "kind": "require-call", + "original": "./input" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/hastscript/lib/svg-case-sensitive-tag-names.js": { - "bytes": 711, + "node_modules/postcss/lib/tokenize.js": { + "bytes": 6538, "imports": [], - "format": "esm" + "format": "cjs" }, - "node_modules/hastscript/lib/index.js": { - "bytes": 1517, + "node_modules/postcss/lib/parser.js": { + "bytes": 14852, "imports": [ { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" + "path": "node_modules/postcss/lib/at-rule.js", + "kind": "require-call", + "original": "./at-rule" }, { - "path": "node_modules/hastscript/lib/create-h.js", - "kind": "import-statement", - "original": "./create-h.js" + "path": "node_modules/postcss/lib/comment.js", + "kind": "require-call", + "original": "./comment" }, { - "path": "node_modules/hastscript/lib/svg-case-sensitive-tag-names.js", - "kind": "import-statement", - "original": "./svg-case-sensitive-tag-names.js" - } - ], - "format": "esm" - }, - "node_modules/hastscript/index.js": { - "bytes": 210, - "imports": [ + "path": "node_modules/postcss/lib/declaration.js", + "kind": "require-call", + "original": "./declaration" + }, { - "path": "node_modules/hastscript/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" + "path": "node_modules/postcss/lib/root.js", + "kind": "require-call", + "original": "./root" + }, + { + "path": "node_modules/postcss/lib/rule.js", + "kind": "require-call", + "original": "./rule" + }, + { + "path": "node_modules/postcss/lib/tokenize.js", + "kind": "require-call", + "original": "./tokenize" } ], - "format": "esm" - }, - "node_modules/picocolors/picocolors.browser.js": { - "bytes": 360, - "imports": [], "format": "cjs" }, - "(disabled):node_modules/postcss/lib/terminal-highlight": { - "bytes": 0, - "imports": [] - }, - "node_modules/postcss/lib/css-syntax-error.js": { - "bytes": 2524, + "node_modules/postcss/lib/parse.js": { + "bytes": 1147, "imports": [ { - "path": "node_modules/picocolors/picocolors.browser.js", + "path": "node_modules/postcss/lib/container.js", "kind": "require-call", - "original": "picocolors" + "original": "./container" }, { - "path": "(disabled):node_modules/postcss/lib/terminal-highlight", + "path": "node_modules/postcss/lib/input.js", "kind": "require-call", - "original": "./terminal-highlight" + "original": "./input" + }, + { + "path": "node_modules/postcss/lib/parser.js", + "kind": "require-call", + "original": "./parser" } ], "format": "cjs" }, - "node_modules/postcss/lib/symbols.js": { - "bytes": 91, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/stringifier.js": { - "bytes": 8220, + "node_modules/postcss/lib/warning.js": { + "bytes": 739, "imports": [], "format": "cjs" }, - "node_modules/postcss/lib/stringify.js": { - "bytes": 213, + "node_modules/postcss/lib/result.js": { + "bytes": 745, "imports": [ { - "path": "node_modules/postcss/lib/stringifier.js", + "path": "node_modules/postcss/lib/warning.js", "kind": "require-call", - "original": "./stringifier" + "original": "./warning" } ], "format": "cjs" }, - "node_modules/postcss/lib/node.js": { - "bytes": 8753, + "node_modules/postcss/lib/warn-once.js": { + "bytes": 256, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss/lib/lazy-result.js": { + "bytes": 13562, "imports": [ { - "path": "node_modules/postcss/lib/symbols.js", + "path": "node_modules/postcss/lib/container.js", "kind": "require-call", - "original": "./symbols" + "original": "./container" }, { - "path": "node_modules/postcss/lib/css-syntax-error.js", + "path": "node_modules/postcss/lib/document.js", "kind": "require-call", - "original": "./css-syntax-error" + "original": "./document" }, { - "path": "node_modules/postcss/lib/stringifier.js", + "path": "node_modules/postcss/lib/map-generator.js", "kind": "require-call", - "original": "./stringifier" + "original": "./map-generator" + }, + { + "path": "node_modules/postcss/lib/parse.js", + "kind": "require-call", + "original": "./parse" + }, + { + "path": "node_modules/postcss/lib/result.js", + "kind": "require-call", + "original": "./result" + }, + { + "path": "node_modules/postcss/lib/root.js", + "kind": "require-call", + "original": "./root" }, { "path": "node_modules/postcss/lib/stringify.js", "kind": "require-call", "original": "./stringify" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/declaration.js": { - "bytes": 495, - "imports": [ + }, { - "path": "node_modules/postcss/lib/node.js", + "path": "node_modules/postcss/lib/symbols.js", "kind": "require-call", - "original": "./node" + "original": "./symbols" + }, + { + "path": "node_modules/postcss/lib/warn-once.js", + "kind": "require-call", + "original": "./warn-once" } ], "format": "cjs" }, - "(disabled):node_modules/source-map-js/source-map.js": { - "bytes": 0, - "imports": [] - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js": { - "bytes": 6174, - "imports": [], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js": { - "bytes": 16004, + "node_modules/postcss/lib/no-work-result.js": { + "bytes": 2624, "imports": [ { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js", - "kind": "import-statement", - "original": "./chunk-2eac56ff.js" - } - ], - "format": "esm" - }, - "node-modules-polyfills:path": { - "bytes": 752, - "imports": [ + "path": "node_modules/postcss/lib/map-generator.js", + "kind": "require-call", + "original": "./map-generator" + }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js", - "kind": "import-statement", - "original": "./chunk-23dbec7b.js" + "path": "node_modules/postcss/lib/parse.js", + "kind": "require-call", + "original": "./parse" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js", - "kind": "import-statement", - "original": "./chunk-23dbec7b.js" + "path": "node_modules/postcss/lib/result.js", + "kind": "require-call", + "original": "./result" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js", - "kind": "import-statement", - "original": "./chunk-2eac56ff.js" - } - ], - "format": "esm" - }, - "node-modules-polyfills-commonjs:path": { - "bytes": 20, - "imports": [ + "path": "node_modules/postcss/lib/stringify.js", + "kind": "require-call", + "original": "./stringify" + }, { - "path": "node-modules-polyfills:path", - "kind": "import-statement", - "original": "path" + "path": "node_modules/postcss/lib/warn-once.js", + "kind": "require-call", + "original": "./warn-once" } ], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-924bb2e1.js": { - "bytes": 2339, - "imports": [], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-b04e620d.js": { - "bytes": 1106, - "imports": [], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js": { - "bytes": 2022, - "imports": [], - "format": "esm" + "format": "cjs" }, - "node-modules-polyfills:url": { - "bytes": 32146, + "node_modules/postcss/lib/processor.js": { + "bytes": 1738, "imports": [ { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-924bb2e1.js", - "kind": "import-statement", - "original": "./chunk-924bb2e1.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b04e620d.js", - "kind": "import-statement", - "original": "./chunk-b04e620d.js" + "path": "node_modules/postcss/lib/document.js", + "kind": "require-call", + "original": "./document" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js", - "kind": "import-statement", - "original": "./chunk-5decc758.js" + "path": "node_modules/postcss/lib/lazy-result.js", + "kind": "require-call", + "original": "./lazy-result" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js", - "kind": "import-statement", - "original": "./chunk-23dbec7b.js" + "path": "node_modules/postcss/lib/no-work-result.js", + "kind": "require-call", + "original": "./no-work-result" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js", - "kind": "import-statement", - "original": "./chunk-2eac56ff.js" - } - ], - "format": "esm" - }, - "node-modules-polyfills-commonjs:url": { - "bytes": 19, - "imports": [ - { - "path": "node-modules-polyfills:url", - "kind": "import-statement", - "original": "url" + "path": "node_modules/postcss/lib/root.js", + "kind": "require-call", + "original": "./root" } ], - "format": "esm" - }, - "node_modules/nanoid/non-secure/index.cjs": { - "bytes": 499, - "imports": [], "format": "cjs" }, - "node_modules/@jspm/core/nodelibs/browser/chunk-4bd36a8f.js": { - "bytes": 5532, - "imports": [], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js": { - "bytes": 14114, - "imports": [ - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js", - "kind": "import-statement", - "original": "./chunk-5decc758.js" - } - ], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-ce0fbc82.js": { - "bytes": 1536, + "node_modules/postcss/lib/postcss.js": { + "bytes": 2898, "imports": [ { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js", - "kind": "import-statement", - "original": "./chunk-b4205b57.js" + "path": "node_modules/postcss/lib/at-rule.js", + "kind": "require-call", + "original": "./at-rule" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js", - "kind": "import-statement", - "original": "./chunk-5decc758.js" - } - ], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-4ccc3a29.js": { - "bytes": 27920, - "imports": [], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/chunk-44e51b61.js": { - "bytes": 165873, - "imports": [ + "path": "node_modules/postcss/lib/comment.js", + "kind": "require-call", + "original": "./comment" + }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4bd36a8f.js", - "kind": "import-statement", - "original": "./chunk-4bd36a8f.js" + "path": "node_modules/postcss/lib/container.js", + "kind": "require-call", + "original": "./container" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-ce0fbc82.js", - "kind": "import-statement", - "original": "./chunk-ce0fbc82.js" + "path": "node_modules/postcss/lib/css-syntax-error.js", + "kind": "require-call", + "original": "./css-syntax-error" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js", - "kind": "import-statement", - "original": "./chunk-b4205b57.js" + "path": "node_modules/postcss/lib/declaration.js", + "kind": "require-call", + "original": "./declaration" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js", - "kind": "import-statement", - "original": "./chunk-2eac56ff.js" + "path": "node_modules/postcss/lib/document.js", + "kind": "require-call", + "original": "./document" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4ccc3a29.js", - "kind": "import-statement", - "original": "./chunk-4ccc3a29.js" - } - ], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/assert.js": { - "bytes": 40099, - "imports": [ + "path": "node_modules/postcss/lib/fromJSON.js", + "kind": "require-call", + "original": "./fromJSON" + }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js", - "kind": "import-statement", - "original": "./chunk-b4205b57.js" + "path": "node_modules/postcss/lib/input.js", + "kind": "require-call", + "original": "./input" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js", - "kind": "import-statement", - "original": "./chunk-5decc758.js" - } - ], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/util.js": { - "bytes": 1280, - "imports": [ + "path": "node_modules/postcss/lib/lazy-result.js", + "kind": "require-call", + "original": "./lazy-result" + }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-ce0fbc82.js", - "kind": "import-statement", - "original": "./chunk-ce0fbc82.js" + "path": "node_modules/postcss/lib/list.js", + "kind": "require-call", + "original": "./list" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js", - "kind": "import-statement", - "original": "./chunk-b4205b57.js" + "path": "node_modules/postcss/lib/node.js", + "kind": "require-call", + "original": "./node" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js", - "kind": "import-statement", - "original": "./chunk-b4205b57.js" + "path": "node_modules/postcss/lib/parse.js", + "kind": "require-call", + "original": "./parse" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js", - "kind": "import-statement", - "original": "./chunk-5decc758.js" - } - ], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/path.js": { - "bytes": 752, - "imports": [ + "path": "node_modules/postcss/lib/processor.js", + "kind": "require-call", + "original": "./processor" + }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js", - "kind": "import-statement", - "original": "./chunk-23dbec7b.js" + "path": "node_modules/postcss/lib/result.js", + "kind": "require-call", + "original": "./result.js" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js", - "kind": "import-statement", - "original": "./chunk-23dbec7b.js" + "path": "node_modules/postcss/lib/root.js", + "kind": "require-call", + "original": "./root" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js", - "kind": "import-statement", - "original": "./chunk-2eac56ff.js" - } - ], - "format": "esm" - }, - "node_modules/@jspm/core/nodelibs/browser/events.js": { - "bytes": 2704, - "imports": [ + "path": "node_modules/postcss/lib/rule.js", + "kind": "require-call", + "original": "./rule" + }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4bd36a8f.js", - "kind": "import-statement", - "original": "./chunk-4bd36a8f.js" + "path": "node_modules/postcss/lib/stringify.js", + "kind": "require-call", + "original": "./stringify" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4bd36a8f.js", - "kind": "import-statement", - "original": "./chunk-4bd36a8f.js" + "path": "node_modules/postcss/lib/warning.js", + "kind": "require-call", + "original": "./warning" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/@jspm/core/nodelibs/browser/chunk-6c718bbe.js": { - "bytes": 4186, + "node_modules/postcss/lib/postcss.mjs": { + "bytes": 980, "imports": [ { - "path": "node_modules/@jspm/core/nodelibs/browser/events.js", - "kind": "import-statement", - "original": "./events.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-44e51b61.js", - "kind": "import-statement", - "original": "./chunk-44e51b61.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4bd36a8f.js", + "path": "node_modules/postcss/lib/postcss.js", "kind": "import-statement", - "original": "./chunk-4bd36a8f.js" + "original": "./postcss.js" } ], "format": "esm" }, - "node_modules/@jspm/core/nodelibs/browser/stream.js": { - "bytes": 1164, + "node_modules/postcss-selector-parser/dist/util/unesc.js": { + "bytes": 2318, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/util/getProp.js": { + "bytes": 437, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/util/ensureObject.js": { + "bytes": 431, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/util/stripComments.js": { + "bytes": 521, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/util/index.js": { + "bytes": 664, "imports": [ { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-6c718bbe.js", - "kind": "import-statement", - "original": "./chunk-6c718bbe.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-6c718bbe.js", - "kind": "import-statement", - "original": "./chunk-6c718bbe.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/util.js", - "kind": "import-statement", - "original": "./util.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/events.js", - "kind": "import-statement", - "original": "./events.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4bd36a8f.js", - "kind": "import-statement", - "original": "./chunk-4bd36a8f.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-44e51b61.js", - "kind": "import-statement", - "original": "./chunk-44e51b61.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-ce0fbc82.js", - "kind": "import-statement", - "original": "./chunk-ce0fbc82.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js", - "kind": "import-statement", - "original": "./chunk-b4205b57.js" + "path": "node_modules/postcss-selector-parser/dist/util/unesc.js", + "kind": "require-call", + "original": "./unesc" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js", - "kind": "import-statement", - "original": "./chunk-5decc758.js" + "path": "node_modules/postcss-selector-parser/dist/util/getProp.js", + "kind": "require-call", + "original": "./getProp" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js", - "kind": "import-statement", - "original": "./chunk-2eac56ff.js" + "path": "node_modules/postcss-selector-parser/dist/util/ensureObject.js", + "kind": "require-call", + "original": "./ensureObject" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4ccc3a29.js", - "kind": "import-statement", - "original": "./chunk-4ccc3a29.js" + "path": "node_modules/postcss-selector-parser/dist/util/stripComments.js", + "kind": "require-call", + "original": "./stripComments" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/@jspm/core/nodelibs/browser/url.js": { - "bytes": 32146, + "node_modules/postcss-selector-parser/dist/selectors/node.js": { + "bytes": 6690, "imports": [ { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-924bb2e1.js", - "kind": "import-statement", - "original": "./chunk-924bb2e1.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b04e620d.js", - "kind": "import-statement", - "original": "./chunk-b04e620d.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js", - "kind": "import-statement", - "original": "./chunk-5decc758.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js", - "kind": "import-statement", - "original": "./chunk-23dbec7b.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js", - "kind": "import-statement", - "original": "./chunk-2eac56ff.js" + "path": "node_modules/postcss-selector-parser/dist/util/index.js", + "kind": "require-call", + "original": "../util" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/@jspm/core/nodelibs/browser/buffer.js": { - "bytes": 68034, + "node_modules/postcss-selector-parser/dist/selectors/types.js": { + "bytes": 849, "imports": [], - "format": "esm" + "format": "cjs" }, - "node-modules-polyfills:fs": { - "bytes": 136604, + "node_modules/postcss-selector-parser/dist/selectors/container.js": { + "bytes": 11850, "imports": [ { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-44e51b61.js", - "kind": "import-statement", - "original": "./chunk-44e51b61.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/assert.js", - "kind": "import-statement", - "original": "./assert.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/util.js", - "kind": "import-statement", - "original": "./util.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js", - "kind": "import-statement", - "original": "./chunk-b4205b57.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/path.js", - "kind": "import-statement", - "original": "./path.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js", - "kind": "import-statement", - "original": "./chunk-2eac56ff.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/events.js", - "kind": "import-statement", - "original": "./events.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4bd36a8f.js", - "kind": "import-statement", - "original": "./chunk-4bd36a8f.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/stream.js", - "kind": "import-statement", - "original": "./stream.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/url.js", - "kind": "import-statement", - "original": "./url.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js", - "kind": "import-statement", - "original": "./chunk-23dbec7b.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-6c718bbe.js", - "kind": "import-statement", - "original": "./chunk-6c718bbe.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/buffer.js", - "kind": "import-statement", - "original": "./buffer.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-ce0fbc82.js", - "kind": "import-statement", - "original": "./chunk-ce0fbc82.js" - }, - { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js", - "kind": "import-statement", - "original": "./chunk-5decc758.js" + "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", + "kind": "require-call", + "original": "./node" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-4ccc3a29.js", - "kind": "import-statement", - "original": "./chunk-4ccc3a29.js" - }, + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", + "kind": "require-call", + "original": "./types" + } + ], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/selectors/root.js": { + "bytes": 2146, + "imports": [ { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-924bb2e1.js", - "kind": "import-statement", - "original": "./chunk-924bb2e1.js" + "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", + "kind": "require-call", + "original": "./container" }, { - "path": "node_modules/@jspm/core/nodelibs/browser/chunk-b04e620d.js", - "kind": "import-statement", - "original": "./chunk-b04e620d.js" + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", + "kind": "require-call", + "original": "./types" } ], - "format": "esm" + "format": "cjs" }, - "node-modules-polyfills-commonjs:fs": { - "bytes": 18, + "node_modules/postcss-selector-parser/dist/selectors/selector.js": { + "bytes": 1007, "imports": [ { - "path": "node-modules-polyfills:fs", - "kind": "import-statement", - "original": "fs" + "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", + "kind": "require-call", + "original": "./container" + }, + { + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", + "kind": "require-call", + "original": "./types" } ], - "format": "esm" + "format": "cjs" }, - "node_modules/postcss/lib/previous-map.js": { - "bytes": 3923, + "node_modules/cssesc/cssesc.js": { + "bytes": 3514, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/selectors/className.js": { + "bytes": 2346, "imports": [ { - "path": "(disabled):node_modules/source-map-js/source-map.js", + "path": "node_modules/cssesc/cssesc.js", "kind": "require-call", - "original": "source-map-js" + "original": "cssesc" }, { - "path": "node-modules-polyfills-commonjs:fs", + "path": "node_modules/postcss-selector-parser/dist/util/index.js", "kind": "require-call", - "original": "fs" + "original": "../util" }, { - "path": "node-modules-polyfills-commonjs:path", + "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", "kind": "require-call", - "original": "path" + "original": "./node" + }, + { + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", + "kind": "require-call", + "original": "./types" } ], "format": "cjs" }, - "node_modules/postcss/lib/input.js": { - "bytes": 6190, + "node_modules/postcss-selector-parser/dist/selectors/comment.js": { + "bytes": 971, "imports": [ { - "path": "(disabled):node_modules/source-map-js/source-map.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", "kind": "require-call", - "original": "source-map-js" + "original": "./node" }, { - "path": "node-modules-polyfills-commonjs:url", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "url" - }, + "original": "./types" + } + ], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/selectors/id.js": { + "bytes": 1086, + "imports": [ { - "path": "node-modules-polyfills-commonjs:path", + "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", "kind": "require-call", - "original": "path" + "original": "./node" }, { - "path": "node_modules/nanoid/non-secure/index.cjs", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "nanoid/non-secure" - }, + "original": "./types" + } + ], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/selectors/namespace.js": { + "bytes": 3061, + "imports": [ { - "path": "(disabled):node_modules/postcss/lib/terminal-highlight", + "path": "node_modules/cssesc/cssesc.js", "kind": "require-call", - "original": "./terminal-highlight" + "original": "cssesc" }, { - "path": "node_modules/postcss/lib/css-syntax-error.js", + "path": "node_modules/postcss-selector-parser/dist/util/index.js", "kind": "require-call", - "original": "./css-syntax-error" + "original": "../util" }, { - "path": "node_modules/postcss/lib/previous-map.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", "kind": "require-call", - "original": "./previous-map" + "original": "./node" } ], "format": "cjs" }, - "node_modules/postcss/lib/map-generator.js": { - "bytes": 9725, + "node_modules/postcss-selector-parser/dist/selectors/tag.js": { + "bytes": 977, "imports": [ { - "path": "(disabled):node_modules/source-map-js/source-map.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", "kind": "require-call", - "original": "source-map-js" + "original": "./namespace" }, { - "path": "node-modules-polyfills-commonjs:path", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "path" - }, + "original": "./types" + } + ], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/selectors/string.js": { + "bytes": 965, + "imports": [ { - "path": "node-modules-polyfills-commonjs:url", + "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", "kind": "require-call", - "original": "url" + "original": "./node" }, { - "path": "node_modules/postcss/lib/input.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "./input" + "original": "./types" } ], "format": "cjs" }, - "node_modules/postcss/lib/comment.js": { - "bytes": 203, + "node_modules/postcss-selector-parser/dist/selectors/pseudo.js": { + "bytes": 1255, "imports": [ { - "path": "node_modules/postcss/lib/node.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", "kind": "require-call", - "original": "./node" + "original": "./container" + }, + { + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", + "kind": "require-call", + "original": "./types" } ], "format": "cjs" }, - "node_modules/postcss/lib/container.js": { - "bytes": 10566, + "node_modules/util-deprecate/browser.js": { + "bytes": 1614, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/selectors/attribute.js": { + "bytes": 16847, "imports": [ { - "path": "node_modules/postcss/lib/symbols.js", + "path": "node_modules/cssesc/cssesc.js", "kind": "require-call", - "original": "./symbols" + "original": "cssesc" }, { - "path": "node_modules/postcss/lib/declaration.js", + "path": "node_modules/postcss-selector-parser/dist/util/unesc.js", "kind": "require-call", - "original": "./declaration" + "original": "../util/unesc" }, { - "path": "node_modules/postcss/lib/comment.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", "kind": "require-call", - "original": "./comment" + "original": "./namespace" }, { - "path": "node_modules/postcss/lib/node.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "./node" + "original": "./types" + }, + { + "path": "node_modules/util-deprecate/browser.js", + "kind": "require-call", + "original": "util-deprecate" } ], "format": "cjs" }, - "node_modules/postcss/lib/document.js": { - "bytes": 654, + "node_modules/postcss-selector-parser/dist/selectors/universal.js": { + "bytes": 1036, "imports": [ { - "path": "node_modules/postcss/lib/container.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", "kind": "require-call", - "original": "./container" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/warn-once.js": { - "bytes": 256, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/warning.js": { - "bytes": 739, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/result.js": { - "bytes": 745, - "imports": [ + "original": "./namespace" + }, { - "path": "node_modules/postcss/lib/warning.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "./warning" + "original": "./types" } ], "format": "cjs" }, - "node_modules/postcss/lib/tokenize.js": { - "bytes": 6538, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/at-rule.js": { - "bytes": 471, + "node_modules/postcss-selector-parser/dist/selectors/combinator.js": { + "bytes": 989, "imports": [ { - "path": "node_modules/postcss/lib/container.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", "kind": "require-call", - "original": "./container" + "original": "./node" + }, + { + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", + "kind": "require-call", + "original": "./types" } ], "format": "cjs" }, - "node_modules/postcss/lib/root.js": { - "bytes": 1239, + "node_modules/postcss-selector-parser/dist/selectors/nesting.js": { + "bytes": 994, "imports": [ { - "path": "node_modules/postcss/lib/container.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", "kind": "require-call", - "original": "./container" + "original": "./node" + }, + { + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", + "kind": "require-call", + "original": "./types" } ], "format": "cjs" }, - "node_modules/postcss/lib/list.js": { - "bytes": 1227, + "node_modules/postcss-selector-parser/dist/sortAscending.js": { + "bytes": 207, "imports": [], "format": "cjs" }, - "node_modules/postcss/lib/rule.js": { - "bytes": 569, + "node_modules/postcss-selector-parser/dist/tokenTypes.js": { + "bytes": 2698, + "imports": [], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/tokenize.js": { + "bytes": 8451, "imports": [ { - "path": "node_modules/postcss/lib/container.js", - "kind": "require-call", - "original": "./container" - }, - { - "path": "node_modules/postcss/lib/list.js", + "path": "node_modules/postcss-selector-parser/dist/tokenTypes.js", "kind": "require-call", - "original": "./list" + "original": "./tokenTypes" } ], "format": "cjs" }, - "node_modules/postcss/lib/parser.js": { - "bytes": 14725, + "node_modules/postcss-selector-parser/dist/parser.js": { + "bytes": 39081, "imports": [ { - "path": "node_modules/postcss/lib/declaration.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/root.js", "kind": "require-call", - "original": "./declaration" + "original": "./selectors/root" }, { - "path": "node_modules/postcss/lib/tokenize.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/selector.js", "kind": "require-call", - "original": "./tokenize" + "original": "./selectors/selector" }, { - "path": "node_modules/postcss/lib/comment.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/className.js", "kind": "require-call", - "original": "./comment" + "original": "./selectors/className" }, { - "path": "node_modules/postcss/lib/at-rule.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/comment.js", "kind": "require-call", - "original": "./at-rule" + "original": "./selectors/comment" }, { - "path": "node_modules/postcss/lib/root.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/id.js", "kind": "require-call", - "original": "./root" + "original": "./selectors/id" }, { - "path": "node_modules/postcss/lib/rule.js", - "kind": "require-call", - "original": "./rule" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/parse.js": { - "bytes": 1147, - "imports": [ - { - "path": "node_modules/postcss/lib/container.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/tag.js", "kind": "require-call", - "original": "./container" + "original": "./selectors/tag" }, { - "path": "node_modules/postcss/lib/parser.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/string.js", "kind": "require-call", - "original": "./parser" + "original": "./selectors/string" }, { - "path": "node_modules/postcss/lib/input.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/pseudo.js", "kind": "require-call", - "original": "./input" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/lazy-result.js": { - "bytes": 13562, - "imports": [ + "original": "./selectors/pseudo" + }, { - "path": "node_modules/postcss/lib/symbols.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/attribute.js", "kind": "require-call", - "original": "./symbols" + "original": "./selectors/attribute" }, { - "path": "node_modules/postcss/lib/map-generator.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/universal.js", "kind": "require-call", - "original": "./map-generator" + "original": "./selectors/universal" }, { - "path": "node_modules/postcss/lib/stringify.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/combinator.js", "kind": "require-call", - "original": "./stringify" + "original": "./selectors/combinator" }, { - "path": "node_modules/postcss/lib/container.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/nesting.js", "kind": "require-call", - "original": "./container" + "original": "./selectors/nesting" }, { - "path": "node_modules/postcss/lib/document.js", + "path": "node_modules/postcss-selector-parser/dist/sortAscending.js", "kind": "require-call", - "original": "./document" + "original": "./sortAscending" }, { - "path": "node_modules/postcss/lib/warn-once.js", + "path": "node_modules/postcss-selector-parser/dist/tokenize.js", "kind": "require-call", - "original": "./warn-once" + "original": "./tokenize" }, { - "path": "node_modules/postcss/lib/result.js", + "path": "node_modules/postcss-selector-parser/dist/tokenTypes.js", "kind": "require-call", - "original": "./result" + "original": "./tokenTypes" }, { - "path": "node_modules/postcss/lib/parse.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "./parse" + "original": "./selectors/types" }, { - "path": "node_modules/postcss/lib/root.js", + "path": "node_modules/postcss-selector-parser/dist/util/index.js", "kind": "require-call", - "original": "./root" + "original": "./util" } ], "format": "cjs" }, - "node_modules/postcss/lib/no-work-result.js": { - "bytes": 2624, + "node_modules/postcss-selector-parser/dist/processor.js": { + "bytes": 5210, "imports": [ { - "path": "node_modules/postcss/lib/map-generator.js", - "kind": "require-call", - "original": "./map-generator" - }, - { - "path": "node_modules/postcss/lib/stringify.js", - "kind": "require-call", - "original": "./stringify" - }, - { - "path": "node_modules/postcss/lib/warn-once.js", - "kind": "require-call", - "original": "./warn-once" - }, - { - "path": "node_modules/postcss/lib/parse.js", - "kind": "require-call", - "original": "./parse" - }, - { - "path": "node_modules/postcss/lib/result.js", + "path": "node_modules/postcss-selector-parser/dist/parser.js", "kind": "require-call", - "original": "./result" + "original": "./parser" } ], "format": "cjs" }, - "node_modules/postcss/lib/processor.js": { - "bytes": 1739, + "node_modules/postcss-selector-parser/dist/selectors/constructors.js": { + "bytes": 2371, "imports": [ { - "path": "node_modules/postcss/lib/no-work-result.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/attribute.js", "kind": "require-call", - "original": "./no-work-result" + "original": "./attribute" }, { - "path": "node_modules/postcss/lib/lazy-result.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/className.js", "kind": "require-call", - "original": "./lazy-result" + "original": "./className" }, { - "path": "node_modules/postcss/lib/document.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/combinator.js", "kind": "require-call", - "original": "./document" + "original": "./combinator" }, { - "path": "node_modules/postcss/lib/root.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/comment.js", "kind": "require-call", - "original": "./root" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/fromJSON.js": { - "bytes": 1506, - "imports": [ + "original": "./comment" + }, { - "path": "node_modules/postcss/lib/declaration.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/id.js", "kind": "require-call", - "original": "./declaration" + "original": "./id" }, { - "path": "node_modules/postcss/lib/previous-map.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/nesting.js", "kind": "require-call", - "original": "./previous-map" + "original": "./nesting" }, { - "path": "node_modules/postcss/lib/comment.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/pseudo.js", "kind": "require-call", - "original": "./comment" + "original": "./pseudo" }, { - "path": "node_modules/postcss/lib/at-rule.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/root.js", "kind": "require-call", - "original": "./at-rule" + "original": "./root" }, { - "path": "node_modules/postcss/lib/input.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/selector.js", "kind": "require-call", - "original": "./input" + "original": "./selector" }, { - "path": "node_modules/postcss/lib/root.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/string.js", "kind": "require-call", - "original": "./root" + "original": "./string" }, { - "path": "node_modules/postcss/lib/rule.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/tag.js", "kind": "require-call", - "original": "./rule" + "original": "./tag" + }, + { + "path": "node_modules/postcss-selector-parser/dist/selectors/universal.js", + "kind": "require-call", + "original": "./universal" } ], "format": "cjs" }, - "node_modules/postcss/lib/postcss.js": { - "bytes": 2898, + "node_modules/postcss-selector-parser/dist/selectors/guards.js": { + "bytes": 2691, "imports": [ { - "path": "node_modules/postcss/lib/css-syntax-error.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "./css-syntax-error" - }, + "original": "./types" + } + ], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/selectors/index.js": { + "bytes": 774, + "imports": [ { - "path": "node_modules/postcss/lib/declaration.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", "kind": "require-call", - "original": "./declaration" + "original": "./types" }, { - "path": "node_modules/postcss/lib/lazy-result.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/constructors.js", "kind": "require-call", - "original": "./lazy-result" + "original": "./constructors" }, { - "path": "node_modules/postcss/lib/container.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/guards.js", "kind": "require-call", - "original": "./container" - }, + "original": "./guards" + } + ], + "format": "cjs" + }, + "node_modules/postcss-selector-parser/dist/index.js": { + "bytes": 1684, + "imports": [ { - "path": "node_modules/postcss/lib/processor.js", + "path": "node_modules/postcss-selector-parser/dist/processor.js", "kind": "require-call", "original": "./processor" }, { - "path": "node_modules/postcss/lib/stringify.js", - "kind": "require-call", - "original": "./stringify" - }, - { - "path": "node_modules/postcss/lib/fromJSON.js", - "kind": "require-call", - "original": "./fromJSON" - }, - { - "path": "node_modules/postcss/lib/document.js", - "kind": "require-call", - "original": "./document" - }, - { - "path": "node_modules/postcss/lib/warning.js", - "kind": "require-call", - "original": "./warning" - }, - { - "path": "node_modules/postcss/lib/comment.js", - "kind": "require-call", - "original": "./comment" - }, - { - "path": "node_modules/postcss/lib/at-rule.js", - "kind": "require-call", - "original": "./at-rule" - }, - { - "path": "node_modules/postcss/lib/result.js", - "kind": "require-call", - "original": "./result.js" - }, - { - "path": "node_modules/postcss/lib/input.js", - "kind": "require-call", - "original": "./input" - }, - { - "path": "node_modules/postcss/lib/parse.js", - "kind": "require-call", - "original": "./parse" - }, - { - "path": "node_modules/postcss/lib/list.js", - "kind": "require-call", - "original": "./list" - }, - { - "path": "node_modules/postcss/lib/rule.js", + "path": "node_modules/postcss-selector-parser/dist/selectors/index.js", "kind": "require-call", - "original": "./rule" - }, + "original": "./selectors" + } + ], + "format": "cjs" + }, + "node_modules/postcss-nested/index.js": { + "bytes": 9058, + "imports": [ { - "path": "node_modules/postcss/lib/root.js", + "path": "node_modules/postcss/lib/postcss.js", "kind": "require-call", - "original": "./root" + "original": "postcss" }, { - "path": "node_modules/postcss/lib/node.js", + "path": "node_modules/postcss-selector-parser/dist/index.js", "kind": "require-call", - "original": "./node" + "original": "postcss-selector-parser" } ], "format": "cjs" }, - "node_modules/postcss/lib/postcss.mjs": { - "bytes": 980, + "node_modules/@ctrl/tinycolor/dist/module/util.js": { + "bytes": 2180, + "imports": [], + "format": "esm" + }, + "node_modules/@ctrl/tinycolor/dist/module/conversion.js": { + "bytes": 7419, "imports": [ { - "path": "node_modules/postcss/lib/postcss.js", + "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", "kind": "import-statement", - "original": "./postcss.js" + "original": "./util.js" } ], "format": "esm" }, - "node_modules/postcss-selector-parser/dist/util/unesc.js": { - "bytes": 2318, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/util/getProp.js": { - "bytes": 437, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/util/ensureObject.js": { - "bytes": 431, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/util/stripComments.js": { - "bytes": 521, + "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js": { + "bytes": 3964, "imports": [], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/util/index.js": { - "bytes": 664, + "node_modules/@ctrl/tinycolor/dist/module/format-input.js": { + "bytes": 7441, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/util/unesc.js", - "kind": "require-call", - "original": "./unesc" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/getProp.js", - "kind": "require-call", - "original": "./getProp" + "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", + "kind": "import-statement", + "original": "./conversion.js" }, { - "path": "node_modules/postcss-selector-parser/dist/util/ensureObject.js", - "kind": "require-call", - "original": "./ensureObject" + "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", + "kind": "import-statement", + "original": "./css-color-names.js" }, { - "path": "node_modules/postcss-selector-parser/dist/util/stripComments.js", - "kind": "require-call", - "original": "./stripComments" + "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", + "kind": "import-statement", + "original": "./util.js" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/node.js": { - "bytes": 6690, + "node_modules/@ctrl/tinycolor/dist/module/index.js": { + "bytes": 16270, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/util/index.js", - "kind": "require-call", - "original": "../util" + "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", + "kind": "import-statement", + "original": "./conversion.js" + }, + { + "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", + "kind": "import-statement", + "original": "./css-color-names.js" + }, + { + "path": "node_modules/@ctrl/tinycolor/dist/module/format-input.js", + "kind": "import-statement", + "original": "./format-input.js" + }, + { + "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", + "kind": "import-statement", + "original": "./util.js" } ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/types.js": { - "bytes": 849, - "imports": [], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/container.js": { - "bytes": 11850, + "node_modules/@ctrl/tinycolor/dist/module/readability.js": { + "bytes": 3217, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "kind": "import-statement", + "original": "./index.js" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/root.js": { - "bytes": 2146, + "node_modules/@ctrl/tinycolor/dist/module/to-ms-filter.js": { + "bytes": 752, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", - "kind": "require-call", - "original": "./container" + "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", + "kind": "import-statement", + "original": "./conversion.js" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "kind": "import-statement", + "original": "./index.js" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/selector.js": { - "bytes": 1007, + "node_modules/@ctrl/tinycolor/dist/module/from-ratio.js": { + "bytes": 725, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", - "kind": "require-call", - "original": "./container" + "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "kind": "import-statement", + "original": "./index.js" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", + "kind": "import-statement", + "original": "./util.js" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/cssesc/cssesc.js": { - "bytes": 3514, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/className.js": { - "bytes": 2346, + "node_modules/@ctrl/tinycolor/dist/module/random.js": { + "bytes": 7266, "imports": [ { - "path": "node_modules/cssesc/cssesc.js", - "kind": "require-call", - "original": "cssesc" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/index.js", - "kind": "require-call", - "original": "../util" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "kind": "import-statement", + "original": "./index.js" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/comment.js": { - "bytes": 971, + "node_modules/@ctrl/tinycolor/dist/module/interfaces.js": { + "bytes": 11, + "imports": [], + "format": "esm" + }, + "node_modules/@ctrl/tinycolor/dist/module/public_api.js": { + "bytes": 298, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" + "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "kind": "import-statement", + "original": "./index.js" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/id.js": { - "bytes": 1086, - "imports": [ + "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", + "kind": "import-statement", + "original": "./css-color-names.js" + }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" + "path": "node_modules/@ctrl/tinycolor/dist/module/readability.js", + "kind": "import-statement", + "original": "./readability.js" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/namespace.js": { - "bytes": 3061, - "imports": [ + "path": "node_modules/@ctrl/tinycolor/dist/module/to-ms-filter.js", + "kind": "import-statement", + "original": "./to-ms-filter.js" + }, { - "path": "node_modules/cssesc/cssesc.js", - "kind": "require-call", - "original": "cssesc" + "path": "node_modules/@ctrl/tinycolor/dist/module/from-ratio.js", + "kind": "import-statement", + "original": "./from-ratio.js" }, { - "path": "node_modules/postcss-selector-parser/dist/util/index.js", - "kind": "require-call", - "original": "../util" + "path": "node_modules/@ctrl/tinycolor/dist/module/format-input.js", + "kind": "import-statement", + "original": "./format-input.js" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/tag.js": { - "bytes": 977, - "imports": [ + "path": "node_modules/@ctrl/tinycolor/dist/module/random.js", + "kind": "import-statement", + "original": "./random.js" + }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", - "kind": "require-call", - "original": "./namespace" + "path": "node_modules/@ctrl/tinycolor/dist/module/interfaces.js", + "kind": "import-statement", + "original": "./interfaces.js" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", + "kind": "import-statement", + "original": "./conversion.js" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/string.js": { - "bytes": 965, + "node_modules/@expressive-code/core/dist/index.js": { + "bytes": 158236, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" + "path": "node_modules/hast-util-to-html/index.js", + "kind": "import-statement", + "original": "hast-util-to-html" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/pseudo.js": { - "bytes": 1255, - "imports": [ + "path": "node_modules/hast-util-to-text/index.js", + "kind": "import-statement", + "original": "hast-util-to-text" + }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", - "kind": "require-call", - "original": "./container" + "path": "node_modules/hast-util-select/index.js", + "kind": "import-statement", + "original": "hast-util-select" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/util-deprecate/browser.js": { - "bytes": 1614, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/attribute.js": { - "bytes": 16847, - "imports": [ + "path": "node_modules/unist-util-visit/index.js", + "kind": "import-statement", + "original": "unist-util-visit" + }, { - "path": "node_modules/cssesc/cssesc.js", - "kind": "require-call", - "original": "cssesc" + "path": "node_modules/unist-util-visit-parents/index.js", + "kind": "import-statement", + "original": "unist-util-visit-parents" }, { - "path": "node_modules/postcss-selector-parser/dist/util/unesc.js", - "kind": "require-call", - "original": "../util/unesc" + "path": "node_modules/hastscript/index.js", + "kind": "import-statement", + "original": "hastscript" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", - "kind": "require-call", - "original": "./namespace" + "path": "node_modules/postcss/lib/postcss.mjs", + "kind": "import-statement", + "original": "postcss" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "node_modules/postcss/lib/postcss.mjs", + "kind": "import-statement", + "original": "postcss" }, { - "path": "node_modules/util-deprecate/browser.js", - "kind": "require-call", - "original": "util-deprecate" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/universal.js": { - "bytes": 1036, - "imports": [ + "path": "node_modules/postcss-nested/index.js", + "kind": "import-statement", + "original": "postcss-nested" + }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", - "kind": "require-call", - "original": "./namespace" + "path": "node_modules/@ctrl/tinycolor/dist/module/public_api.js", + "kind": "import-statement", + "original": "@ctrl/tinycolor" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "", + "kind": "import-statement", + "external": true } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/combinator.js": { - "bytes": 989, + "src/themes/ObsidianTheme.ts": { + "bytes": 17553, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "shiki", + "kind": "import-statement", + "external": true } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/nesting.js": { - "bytes": 994, + "src/themes/ThemeMapper.ts": { + "bytes": 3045, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" + "path": "node_modules/shiki/dist/index.mjs", + "kind": "import-statement", + "original": "shiki" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" + "path": "src/themes/ObsidianTheme.ts", + "kind": "import-statement", + "original": "src/themes/ObsidianTheme" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/sortAscending.js": { - "bytes": 207, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/abap.mjs": { + "bytes": 19521, "imports": [], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/tokenTypes.js": { - "bytes": 2698, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/actionscript-3.mjs": { + "bytes": 16165, "imports": [], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/tokenize.js": { - "bytes": 8451, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ada.mjs": { + "bytes": 55035, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs": { + "bytes": 208066, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs": { + "bytes": 56971, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs": { + "bytes": 66052, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/tokenTypes.js", - "kind": "require-call", - "original": "./tokenTypes" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/parser.js": { - "bytes": 38998, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs": { + "bytes": 15146, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs": { + "bytes": 1182, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/root.js", - "kind": "require-call", - "original": "./selectors/root" - }, + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", + "kind": "import-statement", + "original": "./angular-expression.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs": { + "bytes": 728, + "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/selector.js", - "kind": "require-call", - "original": "./selectors/selector" - }, + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", + "kind": "import-statement", + "original": "./angular-expression.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs": { + "bytes": 1660, + "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/className.js", - "kind": "require-call", - "original": "./selectors/className" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", + "kind": "import-statement", + "original": "./angular-expression.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/comment.js", - "kind": "require-call", - "original": "./selectors/comment" - }, + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs", + "kind": "import-statement", + "original": "./angular-template.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-html.mjs": { + "bytes": 1437, + "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/id.js", - "kind": "require-call", - "original": "./selectors/id" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/tag.js", - "kind": "require-call", - "original": "./selectors/tag" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", + "kind": "import-statement", + "original": "./angular-expression.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/string.js", - "kind": "require-call", - "original": "./selectors/string" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", + "kind": "import-statement", + "original": "./angular-let-declaration.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/pseudo.js", - "kind": "require-call", - "original": "./selectors/pseudo" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs", + "kind": "import-statement", + "original": "./angular-template.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/attribute.js", - "kind": "require-call", - "original": "./selectors/attribute" - }, + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", + "kind": "import-statement", + "original": "./angular-template-blocks.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs": { + "bytes": 31296, + "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/universal.js", - "kind": "require-call", - "original": "./selectors/universal" - }, + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-style.mjs": { + "bytes": 1529, + "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/combinator.js", - "kind": "require-call", - "original": "./selectors/combinator" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs", + "kind": "import-statement", + "original": "./scss.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-template.mjs": { + "bytes": 1387, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-html.mjs", + "kind": "import-statement", + "original": "./angular-html.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/nesting.js", - "kind": "require-call", - "original": "./selectors/nesting" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs", + "kind": "import-statement", + "original": "./angular-template.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-ts.mjs": { + "bytes": 219312, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", + "kind": "import-statement", + "original": "./angular-expression.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/sortAscending.js", - "kind": "require-call", - "original": "./sortAscending" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-style.mjs", + "kind": "import-statement", + "original": "./angular-inline-style.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/tokenize.js", - "kind": "require-call", - "original": "./tokenize" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-template.mjs", + "kind": "import-statement", + "original": "./angular-inline-template.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/tokenTypes.js", - "kind": "require-call", - "original": "./tokenTypes" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", + "kind": "import-statement", + "original": "./angular-let-declaration.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./selectors/types" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs", + "kind": "import-statement", + "original": "./angular-template.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/util/index.js", - "kind": "require-call", - "original": "./util" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", + "kind": "import-statement", + "original": "./angular-template-blocks.mjs" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/processor.js": { - "bytes": 5210, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apache.mjs": { + "bytes": 14099, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apex.mjs": { + "bytes": 51893, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs": { + "bytes": 30651, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs": { + "bytes": 6097, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/parser.js", - "kind": "require-call", - "original": "./parser" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs", + "kind": "import-statement", + "original": "./java.mjs" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/constructors.js": { - "bytes": 2371, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs": { + "bytes": 3293, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apl.mjs": { + "bytes": 26881, "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/attribute.js", - "kind": "require-call", - "original": "./attribute" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/className.js", - "kind": "require-call", - "original": "./className" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", + "kind": "import-statement", + "original": "./xml.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/combinator.js", - "kind": "require-call", - "original": "./combinator" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/comment.js", - "kind": "require-call", - "original": "./comment" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/id.js", - "kind": "require-call", - "original": "./id" - }, + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", + "kind": "import-statement", + "original": "./json.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/applescript.mjs": { + "bytes": 33337, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ara.mjs": { + "bytes": 8023, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asciidoc.mjs": { + "bytes": 104840, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asm.mjs": { + "bytes": 43968, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs": { + "bytes": 218617, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs": { + "bytes": 7212, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/astro.mjs": { + "bytes": 25554, + "imports": [ { - "path": "node_modules/postcss-selector-parser/dist/selectors/nesting.js", - "kind": "require-call", - "original": "./nesting" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", + "kind": "import-statement", + "original": "./json.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/pseudo.js", - "kind": "require-call", - "original": "./pseudo" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/root.js", - "kind": "require-call", - "original": "./root" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/selector.js", - "kind": "require-call", - "original": "./selector" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" }, { - "path": "node_modules/postcss-selector-parser/dist/selectors/string.js", - "kind": "require-call", - "original": "./string" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/tag.js", - "kind": "require-call", - "original": "./tag" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/universal.js", - "kind": "require-call", - "original": "./universal" + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs", + "kind": "import-statement", + "original": "./postcss.mjs" } ], - "format": "cjs" + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/guards.js": { - "bytes": 2691, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/awk.mjs": { + "bytes": 6169, + "imports": [], + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/selectors/index.js": { - "bytes": 774, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/constructors.js", - "kind": "require-call", - "original": "./constructors" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/guards.js", - "kind": "require-call", - "original": "./guards" - } - ], - "format": "cjs" + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ballerina.mjs": { + "bytes": 67536, + "imports": [], + "format": "esm" }, - "node_modules/postcss-selector-parser/dist/index.js": { - "bytes": 1684, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/processor.js", - "kind": "require-call", - "original": "./processor" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/index.js", - "kind": "require-call", - "original": "./selectors" - } - ], - "format": "cjs" + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bat.mjs": { + "bytes": 14258, + "imports": [], + "format": "esm" }, - "node_modules/postcss-nested/index.js": { - "bytes": 9040, - "imports": [ - { - "path": "node_modules/postcss/lib/postcss.js", - "kind": "require-call", - "original": "postcss" - }, - { - "path": "node_modules/postcss-selector-parser/dist/index.js", - "kind": "require-call", - "original": "postcss-selector-parser" - } - ], - "format": "cjs" + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/beancount.mjs": { + "bytes": 12128, + "imports": [], + "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/util.js": { - "bytes": 2180, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/berry.mjs": { + "bytes": 2728, "imports": [], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/conversion.js": { - "bytes": 7419, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", - "kind": "import-statement", - "original": "./util.js" - } - ], + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bibtex.mjs": { + "bytes": 5627, + "imports": [], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js": { - "bytes": 3964, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bicep.mjs": { + "bytes": 4884, "imports": [], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/format-input.js": { - "bytes": 7441, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs": { + "bytes": 25420, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/blade.mjs": { + "bytes": 114868, "imports": [ { - "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "./conversion.js" + "original": "./html.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", - "original": "./css-color-names.js" + "original": "./xml.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", - "kind": "import-statement", - "original": "./util.js" - } - ], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/index.js": { - "bytes": 16270, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "./conversion.js" + "original": "./sql.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./css-color-names.js" + "original": "./javascript.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/format-input.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", "kind": "import-statement", - "original": "./format-input.js" + "original": "./json.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "./util.js" + "original": "./css.mjs" } ], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/readability.js": { - "bytes": 3217, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sdbl.mjs": { + "bytes": 5361, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bsl.mjs": { + "bytes": 39207, "imports": [ { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sdbl.mjs", "kind": "import-statement", - "original": "./index.js" + "original": "./sdbl.mjs" } ], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/to-ms-filter.js": { - "bytes": 752, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs": { + "bytes": 79974, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cadence.mjs": { + "bytes": 12314, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs": { + "bytes": 80837, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cairo.mjs": { + "bytes": 3334, "imports": [ { - "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", - "kind": "import-statement", - "original": "./conversion.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", "kind": "import-statement", - "original": "./index.js" + "original": "./python.mjs" } ], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/from-ratio.js": { - "bytes": 725, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clarity.mjs": { + "bytes": 16103, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clojure.mjs": { + "bytes": 7825, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cmake.mjs": { + "bytes": 10827, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cobol.mjs": { + "bytes": 42728, "imports": [ { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "./index.js" + "original": "./html.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs", "kind": "import-statement", - "original": "./util.js" + "original": "./java.mjs" } ], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/random.js": { - "bytes": 7266, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeowners.mjs": { + "bytes": 621, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeql.mjs": { + "bytes": 36275, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coffee.mjs": { + "bytes": 30030, "imports": [ { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "./index.js" + "original": "./javascript.mjs" } ], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/interfaces.js": { - "bytes": 11, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/common-lisp.mjs": { + "bytes": 29463, "imports": [], "format": "esm" }, - "node_modules/@ctrl/tinycolor/dist/module/public_api.js": { - "bytes": 298, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coq.mjs": { + "bytes": 6487, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs": { + "bytes": 8919, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs": { + "bytes": 4057, "imports": [ { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", - "kind": "import-statement", - "original": "./index.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", "kind": "import-statement", - "original": "./css-color-names.js" - }, + "original": "./c.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp-macro.mjs": { + "bytes": 265494, + "imports": [ { - "path": "node_modules/@ctrl/tinycolor/dist/module/readability.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs", "kind": "import-statement", - "original": "./readability.js" + "original": "./regexp.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/to-ms-filter.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", "kind": "import-statement", - "original": "./to-ms-filter.js" + "original": "./glsl.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/from-ratio.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "./from-ratio.js" - }, + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs": { + "bytes": 474557, + "imports": [ { - "path": "node_modules/@ctrl/tinycolor/dist/module/format-input.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp-macro.mjs", "kind": "import-statement", - "original": "./format-input.js" + "original": "./cpp-macro.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/random.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs", "kind": "import-statement", - "original": "./random.js" + "original": "./regexp.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/interfaces.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", "kind": "import-statement", - "original": "./interfaces.js" + "original": "./glsl.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "./conversion.js" + "original": "./sql.mjs" } ], "format": "esm" }, - "node_modules/@expressive-code/core/dist/index.js": { - "bytes": 165184, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs": { + "bytes": 46659, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/crystal.mjs": { + "bytes": 37165, "imports": [ { - "path": "node_modules/hast-util-to-html/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "hast-util-to-html" + "original": "./html.mjs" }, { - "path": "node_modules/hast-util-to-text/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "hast-util-to-text" + "original": "./sql.mjs" }, { - "path": "node_modules/hast-util-select/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "hast-util-select" + "original": "./css.mjs" }, { - "path": "node_modules/unist-util-visit/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", "kind": "import-statement", - "original": "unist-util-visit" + "original": "./c.mjs" }, { - "path": "node_modules/unist-util-visit-parents/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "unist-util-visit-parents" + "original": "./javascript.mjs" }, { - "path": "node_modules/hastscript/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", - "original": "hastscript" - }, - { - "path": "node_modules/postcss/lib/postcss.mjs", - "kind": "import-statement", - "original": "postcss" - }, + "original": "./shellscript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csharp.mjs": { + "bytes": 96478, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csv.mjs": { + "bytes": 1373, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cue.mjs": { + "bytes": 19327, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cypher.mjs": { + "bytes": 7434, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/d.mjs": { + "bytes": 47972, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dart.mjs": { + "bytes": 8822, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dax.mjs": { + "bytes": 5874, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/desktop.mjs": { + "bytes": 2215, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/diff.mjs": { + "bytes": 2940, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/docker.mjs": { + "bytes": 1954, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dotenv.mjs": { + "bytes": 1930, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dream-maker.mjs": { + "bytes": 11752, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs": { + "bytes": 994, + "imports": [ { - "path": "node_modules/postcss/lib/postcss.mjs", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "postcss" - }, + "original": "./html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/edge.mjs": { + "bytes": 2597, + "imports": [ { - "path": "node_modules/postcss-nested/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "original": "postcss-nested" + "original": "./typescript.mjs" }, { - "path": "node_modules/@ctrl/tinycolor/dist/module/public_api.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "@ctrl/tinycolor" + "original": "./html.mjs" }, { - "path": "", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", "kind": "import-statement", - "external": true + "original": "./html-derivative.mjs" } ], "format": "esm" }, - "node_modules/@expressive-code/plugin-shiki/dist/index.js": { - "bytes": 7661, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elixir.mjs": { + "bytes": 20159, "imports": [ { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/shiki/dist/index.mjs", - "kind": "import-statement", - "original": "shiki" - }, - { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "@expressive-code/core" - }, + "original": "./html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elm.mjs": { + "bytes": 12670, + "imports": [ { - "path": "node_modules/shiki/dist/index.mjs", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", "kind": "import-statement", - "original": "shiki" + "original": "./glsl.mjs" } ], "format": "esm" }, - "node_modules/@expressive-code/core/dist/hast.js": { - "bytes": 3266, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/emacs-lisp.mjs": { + "bytes": 807148, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haml.mjs": { + "bytes": 9553, "imports": [ { - "path": "node_modules/hast-util-to-html/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "hast-util-to-html" + "original": "./javascript.mjs" }, { - "path": "node_modules/hast-util-to-text/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "hast-util-to-text" - }, + "original": "./css.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsx.mjs": { + "bytes": 211039, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsx.mjs": { + "bytes": 208783, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs": { + "bytes": 20328, + "imports": [ { - "path": "node_modules/hast-util-select/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "hast-util-select" + "original": "./javascript.mjs" }, { - "path": "node_modules/unist-util-visit/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "original": "unist-util-visit" + "original": "./typescript.mjs" }, { - "path": "node_modules/unist-util-visit-parents/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsx.mjs", "kind": "import-statement", - "original": "unist-util-visit-parents" + "original": "./jsx.mjs" }, { - "path": "node_modules/hastscript/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsx.mjs", "kind": "import-statement", - "original": "hastscript" - }, + "original": "./tsx.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs": { + "bytes": 17279, + "imports": [ { - "path": "node_modules/postcss/lib/postcss.mjs", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", "kind": "import-statement", - "original": "postcss" + "original": "./c.mjs" } ], "format": "esm" }, - "node_modules/@expressive-code/plugin-text-markers/dist/index.js": { - "bytes": 22739, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs": { + "bytes": 11868, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs": { + "bytes": 57017, "imports": [ { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "@expressive-code/core" + "original": "./html.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haml.mjs", "kind": "import-statement", - "original": "@expressive-code/core" + "original": "./haml.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", "kind": "import-statement", - "original": "@expressive-code/core" + "original": "./xml.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/hast.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "@expressive-code/core/hast" + "original": "./sql.mjs" }, { - "path": "", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs", "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js": { - "bytes": 8584, - "imports": [ + "original": "./graphql.mjs" + }, { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "@expressive-code/core" + "original": "./css.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/hast.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs", "kind": "import-statement", - "original": "@expressive-code/core/hast" + "original": "./cpp.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", "kind": "import-statement", - "original": "@expressive-code/core" + "original": "./c.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/hast.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "@expressive-code/core/hast" + "original": "./javascript.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", - "original": "@expressive-code/core" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-line-numbers/dist/index.js": { - "bytes": 2085, - "imports": [ + "original": "./shellscript.mjs" + }, { - "path": "node_modules/@expressive-code/core/dist/hast.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs", "kind": "import-statement", - "original": "@expressive-code/core/hast" + "original": "./lua.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", "kind": "import-statement", - "original": "@expressive-code/core" + "original": "./yaml.mjs" } ], "format": "esm" }, - "node_modules/@expressive-code/plugin-frames/dist/index.js": { - "bytes": 23337, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erb.mjs": { + "bytes": 2401, "imports": [ { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/core/dist/hast.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "@expressive-code/core/hast" + "original": "./html.mjs" }, { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs", "kind": "import-statement", - "original": "@expressive-code/core" + "original": "./ruby.mjs" } ], "format": "esm" }, - "src/themes/ObsidianTheme.ts": { - "bytes": 17553, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erlang.mjs": { + "bytes": 40149, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fennel.mjs": { + "bytes": 5233, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fish.mjs": { + "bytes": 5775, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fluent.mjs": { + "bytes": 4018, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs": { + "bytes": 108403, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs": { + "bytes": 1276, "imports": [ { - "path": "shiki", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs", "kind": "import-statement", - "external": true + "original": "./fortran-free-form.mjs" } ], "format": "esm" }, - "src/themes/ThemeMapper.ts": { - "bytes": 2626, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs": { + "bytes": 62632, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fsharp.mjs": { + "bytes": 28796, "imports": [ { - "path": "node_modules/shiki/dist/index.mjs", - "kind": "import-statement", - "original": "shiki" - }, - { - "path": "src/themes/ObsidianTheme.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs", "kind": "import-statement", - "original": "src/themes/ObsidianTheme" + "original": "./markdown.mjs" } ], "format": "esm" }, - "src/CodeBlock.ts": { - "bytes": 2441, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdshader.mjs": { + "bytes": 7090, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdscript.mjs": { + "bytes": 20608, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdresource.mjs": { + "bytes": 6031, "imports": [ { - "path": "obsidian", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdshader.mjs", "kind": "import-statement", - "external": true + "original": "./gdshader.mjs" }, { - "path": "node_modules/hast-util-to-html/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdscript.mjs", "kind": "import-statement", - "original": "hast-util-to-html" + "original": "./gdscript.mjs" } ], "format": "esm" }, - "src/codemirror/Cm6_Util.ts": { - "bytes": 1334, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/genie.mjs": { + "bytes": 3714, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gherkin.mjs": { + "bytes": 12805, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-commit.mjs": { + "bytes": 1716, "imports": [ { - "path": "@codemirror/state", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/diff.mjs", "kind": "import-statement", - "external": true - }, + "original": "./diff.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-rebase.mjs": { + "bytes": 1099, + "imports": [ { - "path": "@codemirror/view", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", - "external": true + "original": "./shellscript.mjs" } ], "format": "esm" }, - "src/codemirror/Cm6_ViewPlugin.ts": { - "bytes": 7037, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gleam.mjs": { + "bytes": 3006, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-js.mjs": { + "bytes": 23111, "imports": [ { - "path": "src/main.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "src/main" + "original": "./javascript.mjs" }, { - "path": "@codemirror/view", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "external": true + "original": "./typescript.mjs" }, { - "path": "@codemirror/state", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "external": true + "original": "./css.mjs" }, { - "path": "@lezer/common", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "external": true - }, + "original": "./html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-ts.mjs": { + "bytes": 23111, + "imports": [ { - "path": "@codemirror/language", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "external": true + "original": "./typescript.mjs" }, { - "path": "src/codemirror/Cm6_Util.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "src/codemirror/Cm6_Util" + "original": "./css.mjs" }, { - "path": "shiki", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "external": true + "original": "./javascript.mjs" }, { - "path": "obsidian", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "external": true + "original": "./html.mjs" } ], "format": "esm" }, - "src/settings/Settings.ts": { - "bytes": 286, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gnuplot.mjs": { + "bytes": 16390, "imports": [], "format": "esm" }, - "src/settings/StringSelectModal.ts": { - "bytes": 596, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/go.mjs": { + "bytes": 57527, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/groovy.mjs": { + "bytes": 22001, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hack.mjs": { + "bytes": 89337, "imports": [ { - "path": "obsidian", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "external": true + "original": "./html.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" } ], "format": "esm" }, - "src/settings/SettingsTab.ts": { - "bytes": 2747, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/handlebars.mjs": { + "bytes": 13767, "imports": [ { - "path": "obsidian", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "external": true + "original": "./html.mjs" }, { - "path": "src/settings/StringSelectModal.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "src/settings/StringSelectModal" + "original": "./css.mjs" }, { - "path": "node_modules/shiki/dist/index.mjs", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "shiki" + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", + "kind": "import-statement", + "original": "./yaml.mjs" } ], "format": "esm" }, - "src/PrismPlugin.ts": { - "bytes": 3493, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haskell.mjs": { + "bytes": 47343, "imports": [], "format": "esm" }, - "src/LoadedLanguage.ts": { - "bytes": 971, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haxe.mjs": { + "bytes": 39459, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hcl.mjs": { + "bytes": 13419, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hjson.mjs": { + "bytes": 13752, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hlsl.mjs": { + "bytes": 8037, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/http.mjs": { + "bytes": 5066, "imports": [ { - "path": "shiki", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", "kind": "import-statement", - "external": true + "original": "./shellscript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", + "kind": "import-statement", + "original": "./json.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", + "kind": "import-statement", + "original": "./xml.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs", + "kind": "import-statement", + "original": "./graphql.mjs" } ], "format": "esm" }, - "src/themes/ECTheme.ts": { - "bytes": 5130, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hxml.mjs": { + "bytes": 1949, "imports": [ { - "path": "@expressive-code/core", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haxe.mjs", "kind": "import-statement", - "external": true - }, + "original": "./haxe.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hy.mjs": { + "bytes": 3011, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/imba.mjs": { + "bytes": 58375, + "imports": [ { - "path": "src/settings/Settings", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", "kind": "import-statement", - "external": true + "original": "./typescript.mjs" } ], "format": "esm" }, - "src/main.ts": { - "bytes": 9089, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ini.mjs": { + "bytes": 1733, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja-html.mjs": { + "bytes": 657, "imports": [ { - "path": "obsidian", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "external": true - }, + "original": "./html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja.mjs": { + "bytes": 5722, + "imports": [ { - "path": "node_modules/shiki/dist/index.mjs", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja-html.mjs", "kind": "import-statement", - "original": "shiki" - }, + "original": "./jinja-html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jison.mjs": { + "bytes": 10964, + "imports": [ { - "path": "node_modules/@expressive-code/core/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "@expressive-code/core" - }, + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json5.mjs": { + "bytes": 3987, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonc.mjs": { + "bytes": 3578, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonl.mjs": { + "bytes": 3480, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonnet.mjs": { + "bytes": 4014, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jssm.mjs": { + "bytes": 3354, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs": { + "bytes": 37941, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/julia.mjs": { + "bytes": 37572, + "imports": [ { - "path": "node_modules/@expressive-code/plugin-shiki/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs", "kind": "import-statement", - "original": "@expressive-code/plugin-shiki" + "original": "./cpp.mjs" }, { - "path": "node_modules/@expressive-code/plugin-text-markers/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", "kind": "import-statement", - "original": "@expressive-code/plugin-text-markers" + "original": "./python.mjs" }, { - "path": "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "@expressive-code/plugin-collapsible-sections" + "original": "./javascript.mjs" }, { - "path": "node_modules/@expressive-code/plugin-line-numbers/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs", "kind": "import-statement", - "original": "@expressive-code/plugin-line-numbers" + "original": "./r.mjs" }, { - "path": "node_modules/@expressive-code/plugin-frames/dist/index.js", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", "kind": "import-statement", - "original": "@expressive-code/plugin-frames" - }, + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kotlin.mjs": { + "bytes": 9850, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kusto.mjs": { + "bytes": 21913, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tex.mjs": { + "bytes": 9993, + "imports": [ { - "path": "src/themes/ThemeMapper.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs", "kind": "import-statement", - "original": "src/themes/ThemeMapper" - }, + "original": "./r.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/latex.mjs": { + "bytes": 65035, + "imports": [ { - "path": "src/CodeBlock.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tex.mjs", "kind": "import-statement", - "original": "src/CodeBlock" - }, + "original": "./tex.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lean.mjs": { + "bytes": 4753, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/less.mjs": { + "bytes": 112003, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/liquid.mjs": { + "bytes": 19029, + "imports": [ { - "path": "src/codemirror/Cm6_ViewPlugin.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", "kind": "import-statement", - "original": "src/codemirror/Cm6_ViewPlugin" + "original": "./html.mjs" }, { - "path": "src/settings/Settings.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", "kind": "import-statement", - "original": "src/settings/Settings" + "original": "./css.mjs" }, { - "path": "src/settings/SettingsTab.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", "kind": "import-statement", - "original": "src/settings/SettingsTab" + "original": "./json.mjs" }, { - "path": "src/PrismPlugin.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", "kind": "import-statement", - "original": "src/PrismPlugin" + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/log.mjs": { + "bytes": 3232, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/logo.mjs": { + "bytes": 3316, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/luau.mjs": { + "bytes": 14253, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/make.mjs": { + "bytes": 10046, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/marko.mjs": { + "bytes": 21686, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" }, { - "path": "src/LoadedLanguage.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/less.mjs", "kind": "import-statement", - "original": "src/LoadedLanguage" + "original": "./less.mjs" }, { - "path": "src/themes/ECTheme.ts", + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs", "kind": "import-statement", - "original": "src/themes/ECTheme" + "original": "./scss.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" } ], "format": "esm" - } - }, - "outputs": { - "main.js": { + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/matlab.mjs": { + "bytes": 22093, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdc.mjs": { + "bytes": 20563, "imports": [ { - "path": "obsidian", - "kind": "require-call", - "external": true + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs", + "kind": "import-statement", + "original": "./markdown.mjs" }, { - "path": "obsidian", - "kind": "require-call", - "external": true + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", + "kind": "import-statement", + "original": "./yaml.mjs" }, { - "path": "@codemirror/view", - "kind": "require-call", - "external": true + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", + "kind": "import-statement", + "original": "./html-derivative.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdx.mjs": { + "bytes": 150540, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mermaid.mjs": { + "bytes": 36977, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mipsasm.mjs": { + "bytes": 3657, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mojo.mjs": { + "bytes": 79768, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/move.mjs": { + "bytes": 23096, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/narrat.mjs": { + "bytes": 4100, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nextflow.mjs": { + "bytes": 4448, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nginx.mjs": { + "bytes": 39615, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs", + "kind": "import-statement", + "original": "./lua.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nim.mjs": { + "bytes": 26506, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", + "kind": "import-statement", + "original": "./c.mjs" }, { - "path": "@codemirror/language", - "kind": "require-call", - "external": true + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" }, { - "path": "obsidian", - "kind": "require-call", - "external": true + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", + "kind": "import-statement", + "original": "./xml.mjs" }, { - "path": "obsidian", - "kind": "require-call", - "external": true + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" }, { - "path": "obsidian", - "kind": "require-call", - "external": true + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", + "kind": "import-statement", + "original": "./glsl.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs", + "kind": "import-statement", + "original": "./markdown.mjs" } ], - "exports": [], - "entryPoint": "src/main.ts", - "inputs": { - "node_modules/shiki/dist/langs/abap.mjs": { - "bytesInOutput": 16079 + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nix.mjs": { + "bytes": 17468, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nushell.mjs": { + "bytes": 21589, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-c.mjs": { + "bytes": 114259, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-cpp.mjs": { + "bytes": 188038, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ocaml.mjs": { + "bytes": 70662, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pascal.mjs": { + "bytes": 4474, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/perl.mjs": { + "bytes": 49689, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", + "kind": "import-statement", + "original": "./xml.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" }, - "node_modules/shiki/dist/langs/actionscript-3.mjs": { - "bytesInOutput": 13280 + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/php.mjs": { + "bytes": 120771, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", + "kind": "import-statement", + "original": "./xml.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", + "kind": "import-statement", + "original": "./json.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/plsql.mjs": { + "bytes": 9054, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/po.mjs": { + "bytes": 3832, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/polar.mjs": { + "bytes": 5338, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powerquery.mjs": { + "bytes": 6566, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powershell.mjs": { + "bytes": 24098, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prisma.mjs": { + "bytes": 7172, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prolog.mjs": { + "bytes": 11937, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/proto.mjs": { + "bytes": 7465, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pug.mjs": { + "bytes": 16735, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/puppet.mjs": { + "bytes": 13094, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/purescript.mjs": { + "bytes": 18560, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qml.mjs": { + "bytes": 6151, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qmldir.mjs": { + "bytes": 1128, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qss.mjs": { + "bytes": 8290, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/racket.mjs": { + "bytes": 100260, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/raku.mjs": { + "bytes": 11201, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/razor.mjs": { + "bytes": 28751, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" }, - "node_modules/shiki/dist/langs/ada.mjs": { - "bytesInOutput": 42787 + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csharp.mjs", + "kind": "import-statement", + "original": "./csharp.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/reg.mjs": { + "bytes": 2637, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rel.mjs": { + "bytes": 3802, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/riscv.mjs": { + "bytes": 8288, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rst.mjs": { + "bytes": 11570, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", + "kind": "import-statement", + "original": "./html-derivative.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs", + "kind": "import-statement", + "original": "./cpp.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", + "kind": "import-statement", + "original": "./python.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", + "kind": "import-statement", + "original": "./shellscript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", + "kind": "import-statement", + "original": "./yaml.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cmake.mjs", + "kind": "import-statement", + "original": "./cmake.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs", + "kind": "import-statement", + "original": "./ruby.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rust.mjs": { + "bytes": 19766, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sas.mjs": { + "bytes": 10338, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sass.mjs": { + "bytes": 10519, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scala.mjs": { + "bytes": 32919, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scheme.mjs": { + "bytes": 9416, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shaderlab.mjs": { + "bytes": 6659, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hlsl.mjs", + "kind": "import-statement", + "original": "./hlsl.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellsession.mjs": { + "bytes": 800, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", + "kind": "import-statement", + "original": "./shellscript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/smalltalk.mjs": { + "bytes": 4638, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/solidity.mjs": { + "bytes": 18199, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/soy.mjs": { + "bytes": 7916, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/turtle.mjs": { + "bytes": 4178, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sparql.mjs": { + "bytes": 1607, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/turtle.mjs", + "kind": "import-statement", + "original": "./turtle.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/splunk.mjs": { + "bytes": 4139, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ssh-config.mjs": { + "bytes": 3772, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stata.mjs": { + "bytes": 66024, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stylus.mjs": { + "bytes": 33681, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/svelte.mjs": { + "bytes": 18929, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs", + "kind": "import-statement", + "original": "./postcss.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/swift.mjs": { + "bytes": 98166, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/system-verilog.mjs": { + "bytes": 29109, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/systemd.mjs": { + "bytes": 8671, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/talonscript.mjs": { + "bytes": 7607, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tasl.mjs": { + "bytes": 3880, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tcl.mjs": { + "bytes": 5544, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/templ.mjs": { + "bytes": 25966, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/go.mjs", + "kind": "import-statement", + "original": "./go.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/terraform.mjs": { + "bytes": 14868, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/toml.mjs": { + "bytes": 7303, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-css.mjs": { + "bytes": 2227, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-glsl.mjs": { + "bytes": 2110, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", + "kind": "import-statement", + "original": "./glsl.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-html.mjs": { + "bytes": 2461, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-sql.mjs": { + "bytes": 1947, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "import-statement", + "original": "./sql.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-xml.mjs": { + "bytes": 1409, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", + "kind": "import-statement", + "original": "./xml.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ts-tags.mjs": { + "bytes": 690, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-css.mjs", + "kind": "import-statement", + "original": "./es-tag-css.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-glsl.mjs", + "kind": "import-statement", + "original": "./es-tag-glsl.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-html.mjs", + "kind": "import-statement", + "original": "./es-tag-html.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-sql.mjs", + "kind": "import-statement", + "original": "./es-tag-sql.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-xml.mjs", + "kind": "import-statement", + "original": "./es-tag-xml.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsv.mjs": { + "bytes": 831, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/twig.mjs": { + "bytes": 24896, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs", + "kind": "import-statement", + "original": "./scss.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/php.mjs", + "kind": "import-statement", + "original": "./php.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", + "kind": "import-statement", + "original": "./python.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs", + "kind": "import-statement", + "original": "./ruby.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typespec.mjs": { + "bytes": 31064, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typst.mjs": { + "bytes": 9596, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/v.mjs": { + "bytes": 15390, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vala.mjs": { + "bytes": 3744, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vb.mjs": { + "bytes": 6704, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/verilog.mjs": { + "bytes": 6450, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vhdl.mjs": { + "bytes": 26207, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/viml.mjs": { + "bytes": 21822, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown-vue.mjs": { + "bytes": 850, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-directives.mjs": { + "bytes": 464, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-interpolations.mjs": { + "bytes": 447, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs": { + "bytes": 1052, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue.mjs": { + "bytes": 21764, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "import-statement", + "original": "./html.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "import-statement", + "original": "./css.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "import-statement", + "original": "./typescript.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", + "kind": "import-statement", + "original": "./json.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", + "kind": "import-statement", + "original": "./html-derivative.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown-vue.mjs", + "kind": "import-statement", + "original": "./markdown-vue.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-directives.mjs", + "kind": "import-statement", + "original": "./vue-directives.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-interpolations.mjs", + "kind": "import-statement", + "original": "./vue-interpolations.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs", + "kind": "import-statement", + "original": "./vue-sfc-style-variable-injection.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-html.mjs": { + "bytes": 9567, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue.mjs", + "kind": "import-statement", + "original": "./vue.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "import-statement", + "original": "./javascript.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vyper.mjs": { + "bytes": 85722, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wasm.mjs": { + "bytes": 17493, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wenyan.mjs": { + "bytes": 2461, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wgsl.mjs": { + "bytes": 7252, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wikitext.mjs": { + "bytes": 63046, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wolfram.mjs": { + "bytes": 273146, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xsl.mjs": { + "bytes": 1529, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", + "kind": "import-statement", + "original": "./xml.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zenscript.mjs": { + "bytes": 4886, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zig.mjs": { + "bytes": 6070, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs": { + "bytes": 25725, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/abap.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/abap" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/actionscript-3.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/actionscript-3" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ada.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ada" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-html.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/angular-html" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-ts.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/angular-ts" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apache.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/apache" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apex.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/apex" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/apl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/applescript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/applescript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ara.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ara" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asciidoc.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/asciidoc" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asm.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/asm" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/astro.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/astro" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/awk.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/awk" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ballerina.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ballerina" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bat.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/bat" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/beancount.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/beancount" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/berry.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/berry" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bibtex.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/bibtex" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bicep.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/bicep" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/blade.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/blade" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bsl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/bsl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/c" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cadence.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cadence" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cairo.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cairo" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clarity.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/clarity" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clojure.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/clojure" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cmake.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cmake" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cobol.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cobol" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeowners.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/codeowners" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeql.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/codeql" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coffee.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/coffee" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/common-lisp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/common-lisp" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coq.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/coq" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cpp" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/crystal.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/crystal" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csharp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/csharp" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/css" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csv.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/csv" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cue.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cue" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cypher.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/cypher" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/d.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/d" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dart.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/dart" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dax.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/dax" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/desktop.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/desktop" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/diff.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/diff" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/docker.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/docker" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dotenv.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/dotenv" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dream-maker.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/dream-maker" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/edge.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/edge" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elixir.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/elixir" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elm.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/elm" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/emacs-lisp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/emacs-lisp" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erb.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/erb" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erlang.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/erlang" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fennel.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fennel" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fish.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fish" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fluent.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fluent" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fortran-fixed-form" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fortran-free-form" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fsharp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/fsharp" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdresource.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gdresource" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdscript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gdscript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdshader.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gdshader" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/genie.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/genie" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gherkin.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gherkin" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-commit.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/git-commit" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-rebase.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/git-rebase" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gleam.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gleam" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-js.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/glimmer-js" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-ts.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/glimmer-ts" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/glsl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gnuplot.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/gnuplot" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/go.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/go" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/graphql" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/groovy.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/groovy" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hack.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/hack" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haml.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/haml" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/handlebars.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/handlebars" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haskell.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/haskell" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haxe.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/haxe" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hcl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/hcl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hjson.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/hjson" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hlsl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/hlsl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/html" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/html-derivative" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/http.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/http" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hxml.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/hxml" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hy.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/hy" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/imba.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/imba" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ini.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ini" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/java" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/javascript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/jinja" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jison.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/jison" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/json" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json5.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/json5" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonc.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/jsonc" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/jsonl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonnet.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/jsonnet" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jssm.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/jssm" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsx.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/jsx" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/julia.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/julia" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kotlin.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/kotlin" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kusto.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/kusto" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/latex.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/latex" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lean.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/lean" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/less.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/less" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/liquid.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/liquid" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/log.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/log" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/logo.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/logo" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/lua" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/luau.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/luau" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/make.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/make" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/markdown" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/marko.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/marko" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/matlab.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/matlab" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdc.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/mdc" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdx.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/mdx" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mermaid.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/mermaid" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mipsasm.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/mipsasm" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mojo.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/mojo" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/move.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/move" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/narrat.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/narrat" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nextflow.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/nextflow" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nginx.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/nginx" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nim.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/nim" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nix.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/nix" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nushell.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/nushell" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-c.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/objective-c" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-cpp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/objective-cpp" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ocaml.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ocaml" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pascal.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/pascal" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/perl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/perl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/php.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/php" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/plsql.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/plsql" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/po.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/po" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/polar.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/polar" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/postcss" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powerquery.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/powerquery" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powershell.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/powershell" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prisma.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/prisma" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prolog.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/prolog" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/proto.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/proto" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pug.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/pug" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/puppet.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/puppet" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/purescript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/purescript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/python" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qml.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/qml" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qmldir.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/qmldir" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qss.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/qss" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/r" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/racket.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/racket" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/raku.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/raku" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/razor.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/razor" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/reg.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/reg" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/regexp" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rel.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/rel" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/riscv.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/riscv" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rst.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/rst" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ruby" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rust.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/rust" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sas.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/sas" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sass.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/sass" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scala.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/scala" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scheme.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/scheme" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/scss" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sdbl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/sdbl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shaderlab.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/shaderlab" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/shellscript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellsession.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/shellsession" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/smalltalk.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/smalltalk" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/solidity.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/solidity" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/soy.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/soy" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sparql.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/sparql" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/splunk.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/splunk" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/sql" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ssh-config.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ssh-config" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stata.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/stata" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stylus.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/stylus" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/svelte.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/svelte" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/swift.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/swift" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/system-verilog.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/system-verilog" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/systemd.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/systemd" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/talonscript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/talonscript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tasl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/tasl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tcl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/tcl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/templ.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/templ" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/terraform.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/terraform" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tex.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/tex" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/toml.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/toml" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ts-tags.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/ts-tags" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsv.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/tsv" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsx.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/tsx" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/turtle.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/turtle" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/twig.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/twig" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/typescript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typespec.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/typespec" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typst.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/typst" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/v.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/v" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vala.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/vala" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vb.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/vb" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/verilog.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/verilog" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vhdl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/vhdl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/viml.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/viml" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/vue" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-html.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/vue-html" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vyper.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/vyper" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wasm.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/wasm" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wenyan.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/wenyan" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wgsl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/wgsl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wikitext.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/wikitext" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wolfram.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/wolfram" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/xml" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xsl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/xsl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/yaml" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zenscript.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/zenscript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zig.mjs", + "kind": "dynamic-import", + "original": "@shikijs/langs/zig" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/andromeeda.mjs": { + "bytes": 9740, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/aurora-x.mjs": { + "bytes": 14878, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/ayu-dark.mjs": { + "bytes": 16638, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs": { + "bytes": 50276, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-latte.mjs": { + "bytes": 50273, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs": { + "bytes": 50284, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs": { + "bytes": 50272, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dark-plus.mjs": { + "bytes": 10119, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula.mjs": { + "bytes": 23122, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula-soft.mjs": { + "bytes": 23137, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-dark.mjs": { + "bytes": 58495, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-light.mjs": { + "bytes": 58499, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark.mjs": { + "bytes": 12745, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-default.mjs": { + "bytes": 16087, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs": { + "bytes": 16084, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs": { + "bytes": 16269, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light.mjs": { + "bytes": 12509, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-default.mjs": { + "bytes": 15775, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs": { + "bytes": 15912, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/houston.mjs": { + "bytes": 38990, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs": { + "bytes": 18759, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs": { + "bytes": 18757, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-wave.mjs": { + "bytes": 18753, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/laserwave.mjs": { + "bytes": 12481, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/light-plus.mjs": { + "bytes": 11014, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme.mjs": { + "bytes": 20362, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-darker.mjs": { + "bytes": 20383, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-lighter.mjs": { + "bytes": 20389, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-ocean.mjs": { + "bytes": 20382, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-palenight.mjs": { + "bytes": 20392, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-dark.mjs": { + "bytes": 6980, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-light.mjs": { + "bytes": 7739, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/monokai.mjs": { + "bytes": 8870, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/night-owl.mjs": { + "bytes": 32203, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/nord.mjs": { + "bytes": 29510, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-dark-pro.mjs": { + "bytes": 37219, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-light.mjs": { + "bytes": 28042, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/plastic.mjs": { + "bytes": 10273, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/poimandres.mjs": { + "bytes": 36593, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/red.mjs": { + "bytes": 7048, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine.mjs": { + "bytes": 24017, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs": { + "bytes": 24033, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-moon.mjs": { + "bytes": 24032, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-dark.mjs": { + "bytes": 10164, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-ochin.mjs": { + "bytes": 10571, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/snazzy-light.mjs": { + "bytes": 23098, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-dark.mjs": { + "bytes": 7707, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-light.mjs": { + "bytes": 7310, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/synthwave-84.mjs": { + "bytes": 15637, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/tokyo-night.mjs": { + "bytes": 37393, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vesper.mjs": { + "bytes": 13732, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-black.mjs": { + "bytes": 15243, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-dark.mjs": { + "bytes": 15324, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-light.mjs": { + "bytes": 15174, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs": { + "bytes": 8402, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/andromeeda.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/andromeeda" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/aurora-x.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/aurora-x" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/ayu-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/ayu-dark" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/catppuccin-frappe" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-latte.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/catppuccin-latte" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/catppuccin-macchiato" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/catppuccin-mocha" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dark-plus.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/dark-plus" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/dracula" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula-soft.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/dracula-soft" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/everforest-dark" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-light.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/everforest-light" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-dark" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-default.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-dark-default" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-dark-dimmed" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-dark-high-contrast" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-light" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-default.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-light-default" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/github-light-high-contrast" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/houston.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/houston" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/kanagawa-dragon" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/kanagawa-lotus" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-wave.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/kanagawa-wave" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/laserwave.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/laserwave" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/light-plus.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/light-plus" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/material-theme" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-darker.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/material-theme-darker" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-lighter.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/material-theme-lighter" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-ocean.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/material-theme-ocean" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-palenight.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/material-theme-palenight" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/min-dark" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-light.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/min-light" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/monokai.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/monokai" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/night-owl.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/night-owl" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/nord.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/nord" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-dark-pro.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/one-dark-pro" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-light.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/one-light" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/plastic.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/plastic" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/poimandres.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/poimandres" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/red.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/red" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/rose-pine" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/rose-pine-dawn" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-moon.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/rose-pine-moon" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/slack-dark" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-ochin.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/slack-ochin" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/snazzy-light.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/snazzy-light" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/solarized-dark" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-light.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/solarized-light" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/synthwave-84.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/synthwave-84" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/tokyo-night.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/tokyo-night" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vesper.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/vesper" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-black.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/vitesse-black" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-dark.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/vitesse-dark" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-light.mjs", + "kind": "dynamic-import", + "original": "@shikijs/themes/vitesse-light" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types/dist/index.mjs": { + "bytes": 138, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs": { + "bytes": 16099, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs": { + "bytes": 579, + "imports": [], + "format": "esm" + }, + "node_modules/emoji-regex-xs/index.mjs": { + "bytes": 327, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/subclass.js": { + "bytes": 4753, + "imports": [ + { + "path": "node_modules/regex-utilities/src/index.js", + "kind": "import-statement", + "original": "regex-utilities" + }, + { + "path": "", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/utils-internals.js": { + "bytes": 449, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/atomic.js": { + "bytes": 6634, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/subclass.js", + "kind": "import-statement", + "original": "./subclass.js" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/utils-internals.js", + "kind": "import-statement", + "original": "./utils-internals.js" + }, + { + "path": "node_modules/regex-utilities/src/index.js", + "kind": "import-statement", + "original": "regex-utilities" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js": { + "bytes": 116, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/atomic.js", + "kind": "import-statement", + "original": "./atomic.js" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/subclass.js", + "kind": "import-statement", + "original": "./subclass.js" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/regex-recursion/src/index.js": { + "bytes": 8822, + "imports": [ + { + "path": "node_modules/regex-utilities/src/index.js", + "kind": "import-statement", + "original": "regex-utilities" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js", + "kind": "import-statement", + "original": "regex/internals" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/oniguruma-to-es/dist/esm/index.js": { + "bytes": 97517, + "imports": [ + { + "path": "node_modules/emoji-regex-xs/index.mjs", + "kind": "import-statement", + "original": "emoji-regex-xs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js", + "kind": "import-statement", + "original": "regex/internals" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js", + "kind": "import-statement", + "original": "regex/internals" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js", + "kind": "import-statement", + "original": "regex/internals" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex-recursion/src/index.js", + "kind": "import-statement", + "original": "regex-recursion" + }, + { + "path": "", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs": { + "bytes": 2324, + "imports": [ + { + "path": "", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs": { + "bytes": 1586, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/oniguruma-to-es/dist/esm/index.js", + "kind": "import-statement", + "original": "oniguruma-to-es" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", + "kind": "import-statement", + "original": "./shared/engine-javascript.hzpS1_41.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs": { + "bytes": 521, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", + "kind": "import-statement", + "original": "./shared/engine-javascript.hzpS1_41.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/index.mjs": { + "bytes": 273, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs", + "kind": "import-statement", + "original": "./engine-compile.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs", + "kind": "import-statement", + "original": "./engine-raw.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", + "kind": "import-statement", + "original": "./shared/engine-javascript.hzpS1_41.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/oniguruma-to-es/dist/esm/index.js", + "kind": "import-statement", + "original": "oniguruma-to-es" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs": { + "bytes": 72833, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/types" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/types" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/engine-oniguruma" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs", + "kind": "import-statement", + "original": "./shared/core.Bn_XU0Iv.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs", + "kind": "import-statement", + "original": "./shared/core.Bn_XU0Iv.mjs" + }, + { + "path": "node_modules/@shikijs/vscode-textmate/dist/index.js", + "kind": "import-statement", + "original": "@shikijs/vscode-textmate" + }, + { + "path": "node_modules/@shikijs/vscode-textmate/dist/index.js", + "kind": "import-statement", + "original": "@shikijs/vscode-textmate" + }, + { + "path": "node_modules/hast-util-to-html/index.js", + "kind": "import-statement", + "original": "hast-util-to-html" + }, + { + "path": "node_modules/hast-util-to-html/index.js", + "kind": "import-statement", + "original": "hast-util-to-html" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/engine-javascript" + }, + { + "path": "", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs": { + "bytes": 622442, + "imports": [], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm.mjs": { + "bytes": 122, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", + "kind": "import-statement", + "original": "@shikijs/engine-oniguruma/wasm-inlined" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", + "kind": "import-statement", + "original": "@shikijs/engine-oniguruma/wasm-inlined" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm-dynamic-K7LwWlz7.js": { + "bytes": 281, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/core" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm.mjs", + "kind": "dynamic-import", + "original": "shiki/wasm" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/bundle-full.mjs": { + "bytes": 1310, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs", + "kind": "import-statement", + "original": "./langs.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs", + "kind": "import-statement", + "original": "./langs.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs", + "kind": "import-statement", + "original": "./themes.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs", + "kind": "import-statement", + "original": "./themes.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm-dynamic-K7LwWlz7.js", + "kind": "import-statement", + "original": "./wasm-dynamic-K7LwWlz7.js" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/core" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/core" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/engine-oniguruma" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm.mjs", + "kind": "dynamic-import", + "original": "shiki/wasm" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/index.mjs": { + "bytes": 660, + "imports": [ + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/bundle-full.mjs", + "kind": "import-statement", + "original": "./bundle-full.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/engine-javascript" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/engine-oniguruma" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm-dynamic-K7LwWlz7.js", + "kind": "import-statement", + "original": "./wasm-dynamic-K7LwWlz7.js" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/core" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs", + "kind": "import-statement", + "original": "./langs.mjs" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs", + "kind": "import-statement", + "original": "./themes.mjs" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-shiki/dist/index.js": { + "bytes": 17949, + "imports": [ + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/index.mjs", + "kind": "import-statement", + "original": "shiki" + }, + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/index.mjs", + "kind": "import-statement", + "original": "shiki" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/core/dist/hast.js": { + "bytes": 3266, + "imports": [ + { + "path": "node_modules/hast-util-to-html/index.js", + "kind": "import-statement", + "original": "hast-util-to-html" + }, + { + "path": "node_modules/hast-util-to-text/index.js", + "kind": "import-statement", + "original": "hast-util-to-text" + }, + { + "path": "node_modules/hast-util-select/index.js", + "kind": "import-statement", + "original": "hast-util-select" + }, + { + "path": "node_modules/unist-util-visit/index.js", + "kind": "import-statement", + "original": "unist-util-visit" + }, + { + "path": "node_modules/unist-util-visit-parents/index.js", + "kind": "import-statement", + "original": "unist-util-visit-parents" + }, + { + "path": "node_modules/hastscript/index.js", + "kind": "import-statement", + "original": "hastscript" + }, + { + "path": "node_modules/postcss/lib/postcss.mjs", + "kind": "import-statement", + "original": "postcss" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js": { + "bytes": 8564, + "imports": [ + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/@expressive-code/core/dist/hast.js", + "kind": "import-statement", + "original": "@expressive-code/core/hast" + }, + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/@expressive-code/core/dist/hast.js", + "kind": "import-statement", + "original": "@expressive-code/core/hast" + }, + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-text-markers/dist/index.js": { + "bytes": 22739, + "imports": [ + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/@expressive-code/core/dist/hast.js", + "kind": "import-statement", + "original": "@expressive-code/core/hast" + }, + { + "path": "", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-line-numbers/dist/index.js": { + "bytes": 2112, + "imports": [ + { + "path": "node_modules/@expressive-code/core/dist/hast.js", + "kind": "import-statement", + "original": "@expressive-code/core/hast" + }, + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + } + ], + "format": "esm" + }, + "node_modules/@expressive-code/plugin-frames/dist/index.js": { + "bytes": 23440, + "imports": [ + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/@expressive-code/core/dist/hast.js", + "kind": "import-statement", + "original": "@expressive-code/core/hast" + }, + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + } + ], + "format": "esm" + }, + "src/themes/ECTheme.ts": { + "bytes": 5138, + "imports": [ + { + "path": "@expressive-code/core", + "kind": "import-statement", + "external": true + }, + { + "path": "src/settings/Settings", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, + "src/Highlighter.ts": { + "bytes": 8214, + "imports": [ + { + "path": "node_modules/@expressive-code/core/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/core" + }, + { + "path": "node_modules/shiki/dist/index.mjs", + "kind": "import-statement", + "original": "shiki" + }, + { + "path": "src/themes/ThemeMapper.ts", + "kind": "import-statement", + "original": "src/themes/ThemeMapper" + }, + { + "path": "node_modules/@expressive-code/plugin-shiki/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/plugin-shiki" + }, + { + "path": "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/plugin-collapsible-sections" + }, + { + "path": "node_modules/@expressive-code/plugin-text-markers/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/plugin-text-markers" + }, + { + "path": "node_modules/@expressive-code/plugin-line-numbers/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/plugin-line-numbers" + }, + { + "path": "node_modules/@expressive-code/plugin-frames/dist/index.js", + "kind": "import-statement", + "original": "@expressive-code/plugin-frames" + }, + { + "path": "src/themes/ECTheme.ts", + "kind": "import-statement", + "original": "src/themes/ECTheme" + }, + { + "path": "obsidian", + "kind": "import-statement", + "external": true + }, + { + "path": "src/settings/Settings.ts", + "kind": "import-statement", + "original": "src/settings/Settings" + }, + { + "path": "node_modules/@expressive-code/core/dist/hast.js", + "kind": "import-statement", + "original": "@expressive-code/core/hast" + } + ], + "format": "esm" + }, + "src/main.ts": { + "bytes": 5171, + "imports": [ + { + "path": "obsidian", + "kind": "import-statement", + "external": true + }, + { + "path": "src/CodeBlock.ts", + "kind": "import-statement", + "original": "src/CodeBlock" + }, + { + "path": "src/codemirror/Cm6_ViewPlugin.ts", + "kind": "import-statement", + "original": "src/codemirror/Cm6_ViewPlugin" + }, + { + "path": "src/settings/Settings.ts", + "kind": "import-statement", + "original": "src/settings/Settings" + }, + { + "path": "src/settings/SettingsTab.ts", + "kind": "import-statement", + "original": "src/settings/SettingsTab" + }, + { + "path": "src/PrismPlugin.ts", + "kind": "import-statement", + "original": "src/PrismPlugin" + }, + { + "path": "src/Highlighter.ts", + "kind": "import-statement", + "original": "src/Highlighter" + } + ], + "format": "esm" + } + }, + "outputs": { + "main.js": { + "imports": [ + { + "path": "obsidian", + "kind": "require-call", + "external": true + }, + { + "path": "obsidian", + "kind": "require-call", + "external": true + }, + { + "path": "@codemirror/view", + "kind": "require-call", + "external": true + }, + { + "path": "@codemirror/language", + "kind": "require-call", + "external": true + }, + { + "path": "obsidian", + "kind": "require-call", + "external": true + }, + { + "path": "obsidian", + "kind": "require-call", + "external": true + }, + { + "path": "obsidian", + "kind": "require-call", + "external": true + }, + { + "path": "obsidian", + "kind": "require-call", + "external": true + } + ], + "exports": [], + "entryPoint": "src/main.ts", + "inputs": { + "node_modules/@shikijs/langs/dist/abap.mjs": { + "bytesInOutput": 15882 + }, + "node_modules/@shikijs/langs/dist/actionscript-3.mjs": { + "bytesInOutput": 14079 + }, + "node_modules/@shikijs/langs/dist/ada.mjs": { + "bytesInOutput": 48112 + }, + "node_modules/@shikijs/langs/dist/javascript.mjs": { + "bytesInOutput": 174845 + }, + "node_modules/@shikijs/langs/dist/css.mjs": { + "bytesInOutput": 49053 + }, + "node_modules/@shikijs/langs/dist/html.mjs": { + "bytesInOutput": 57622 + }, + "node_modules/@shikijs/langs/dist/angular-expression.mjs": { + "bytesInOutput": 19675 + }, + "node_modules/@shikijs/langs/dist/angular-let-declaration.mjs": { + "bytesInOutput": 990 + }, + "node_modules/@shikijs/langs/dist/angular-template.mjs": { + "bytesInOutput": 592 + }, + "node_modules/@shikijs/langs/dist/angular-template-blocks.mjs": { + "bytesInOutput": 2075 + }, + "node_modules/@shikijs/langs/dist/angular-html.mjs": { + "bytesInOutput": 973 + }, + "node_modules/@shikijs/langs/dist/scss.mjs": { + "bytesInOutput": 27207 + }, + "node_modules/@shikijs/langs/dist/angular-inline-style.mjs": { + "bytesInOutput": 1317 + }, + "node_modules/@shikijs/langs/dist/angular-inline-template.mjs": { + "bytesInOutput": 1125 + }, + "node_modules/@shikijs/langs/dist/angular-ts.mjs": { + "bytesInOutput": 181317 + }, + "node_modules/@shikijs/langs/dist/apache.mjs": { + "bytesInOutput": 12486 + }, + "node_modules/@shikijs/langs/dist/apex.mjs": { + "bytesInOutput": 46110 + }, + "node_modules/@shikijs/langs/dist/java.mjs": { + "bytesInOutput": 27249 + }, + "node_modules/@shikijs/langs/dist/xml.mjs": { + "bytesInOutput": 5386 + }, + "node_modules/@shikijs/langs/dist/json.mjs": { + "bytesInOutput": 2854 + }, + "node_modules/@shikijs/langs/dist/apl.mjs": { + "bytesInOutput": 26194 + }, + "node_modules/@shikijs/langs/dist/applescript.mjs": { + "bytesInOutput": 29652 + }, + "node_modules/@shikijs/langs/dist/ara.mjs": { + "bytesInOutput": 6392 + }, + "node_modules/@shikijs/langs/dist/asciidoc.mjs": { + "bytesInOutput": 87097 + }, + "node_modules/@shikijs/langs/dist/asm.mjs": { + "bytesInOutput": 40747 + }, + "node_modules/@shikijs/langs/dist/typescript.mjs": { + "bytesInOutput": 181098 + }, + "node_modules/@shikijs/langs/dist/postcss.mjs": { + "bytesInOutput": 6447 + }, + "node_modules/@shikijs/langs/dist/astro.mjs": { + "bytesInOutput": 23846 + }, + "node_modules/@shikijs/langs/dist/awk.mjs": { + "bytesInOutput": 5491 + }, + "node_modules/@shikijs/langs/dist/ballerina.mjs": { + "bytesInOutput": 58723 + }, + "node_modules/@shikijs/langs/dist/bat.mjs": { + "bytesInOutput": 12918 + }, + "node_modules/@shikijs/langs/dist/beancount.mjs": { + "bytesInOutput": 10161 + }, + "node_modules/@shikijs/langs/dist/berry.mjs": { + "bytesInOutput": 2393 + }, + "node_modules/@shikijs/langs/dist/bibtex.mjs": { + "bytesInOutput": 4825 + }, + "node_modules/@shikijs/langs/dist/bicep.mjs": { + "bytesInOutput": 4336 + }, + "node_modules/@shikijs/langs/dist/html-derivative.mjs": { + "bytesInOutput": 843 + }, + "node_modules/@shikijs/langs/dist/sql.mjs": { + "bytesInOutput": 23446 + }, + "node_modules/@shikijs/langs/dist/blade.mjs": { + "bytesInOutput": 103866 + }, + "node_modules/@shikijs/langs/dist/sdbl.mjs": { + "bytesInOutput": 8232 + }, + "node_modules/@shikijs/langs/dist/bsl.mjs": { + "bytesInOutput": 70841 + }, + "node_modules/@shikijs/langs/dist/c.mjs": { + "bytesInOutput": 72143 + }, + "node_modules/@shikijs/langs/dist/cadence.mjs": { + "bytesInOutput": 10535 + }, + "node_modules/@shikijs/langs/dist/python.mjs": { + "bytesInOutput": 69982 + }, + "node_modules/@shikijs/langs/dist/cairo.mjs": { + "bytesInOutput": 2936 + }, + "node_modules/@shikijs/langs/dist/clarity.mjs": { + "bytesInOutput": 14131 + }, + "node_modules/@shikijs/langs/dist/clojure.mjs": { + "bytesInOutput": 6443 + }, + "node_modules/@shikijs/langs/dist/cmake.mjs": { + "bytesInOutput": 9885 + }, + "node_modules/@shikijs/langs/dist/cobol.mjs": { + "bytesInOutput": 39050 + }, + "node_modules/@shikijs/langs/dist/codeowners.mjs": { + "bytesInOutput": 577 + }, + "node_modules/@shikijs/langs/dist/codeql.mjs": { + "bytesInOutput": 26913 + }, + "node_modules/@shikijs/langs/dist/coffee.mjs": { + "bytesInOutput": 27418 + }, + "node_modules/@shikijs/langs/dist/common-lisp.mjs": { + "bytesInOutput": 22611 + }, + "node_modules/@shikijs/langs/dist/coq.mjs": { + "bytesInOutput": 5585 + }, + "node_modules/@shikijs/langs/dist/regexp.mjs": { + "bytesInOutput": 8018 + }, + "node_modules/@shikijs/langs/dist/glsl.mjs": { + "bytesInOutput": 3639 + }, + "node_modules/@shikijs/langs/dist/cpp-macro.mjs": { + "bytesInOutput": 224141 + }, + "node_modules/@shikijs/langs/dist/cpp.mjs": { + "bytesInOutput": 401910 + }, + "node_modules/@shikijs/langs/dist/shellscript.mjs": { + "bytesInOutput": 41509 + }, + "node_modules/@shikijs/langs/dist/crystal.mjs": { + "bytesInOutput": 29242 + }, + "node_modules/@shikijs/langs/dist/csharp.mjs": { + "bytesInOutput": 85618 + }, + "node_modules/@shikijs/langs/dist/csv.mjs": { + "bytesInOutput": 1173 + }, + "node_modules/@shikijs/langs/dist/cue.mjs": { + "bytesInOutput": 16234 + }, + "node_modules/@shikijs/langs/dist/cypher.mjs": { + "bytesInOutput": 5986 + }, + "node_modules/@shikijs/langs/dist/d.mjs": { + "bytesInOutput": 43825 + }, + "node_modules/@shikijs/langs/dist/dart.mjs": { + "bytesInOutput": 7842 + }, + "node_modules/@shikijs/langs/dist/dax.mjs": { + "bytesInOutput": 5395 + }, + "node_modules/@shikijs/langs/dist/desktop.mjs": { + "bytesInOutput": 1863 + }, + "node_modules/@shikijs/langs/dist/diff.mjs": { + "bytesInOutput": 2599 + }, + "node_modules/@shikijs/langs/dist/docker.mjs": { + "bytesInOutput": 1771 + }, + "node_modules/@shikijs/langs/dist/dotenv.mjs": { + "bytesInOutput": 1452 + }, + "node_modules/@shikijs/langs/dist/dream-maker.mjs": { + "bytesInOutput": 10499 + }, + "node_modules/@shikijs/langs/dist/edge.mjs": { + "bytesInOutput": 2233 + }, + "node_modules/@shikijs/langs/dist/elixir.mjs": { + "bytesInOutput": 16264 + }, + "node_modules/@shikijs/langs/dist/elm.mjs": { + "bytesInOutput": 10946 + }, + "node_modules/@shikijs/langs/dist/emacs-lisp.mjs": { + "bytesInOutput": 779886 + }, + "node_modules/@shikijs/langs/dist/haml.mjs": { + "bytesInOutput": 8232 + }, + "node_modules/@shikijs/langs/dist/jsx.mjs": { + "bytesInOutput": 177822 + }, + "node_modules/@shikijs/langs/dist/tsx.mjs": { + "bytesInOutput": 175566 + }, + "node_modules/@shikijs/langs/dist/graphql.mjs": { + "bytesInOutput": 17910 + }, + "node_modules/@shikijs/langs/dist/lua.mjs": { + "bytesInOutput": 15210 + }, + "node_modules/@shikijs/langs/dist/yaml.mjs": { + "bytesInOutput": 10536 + }, + "node_modules/@shikijs/langs/dist/ruby.mjs": { + "bytesInOutput": 45430 + }, + "node_modules/@shikijs/langs/dist/erb.mjs": { + "bytesInOutput": 2108 + }, + "node_modules/@shikijs/langs/dist/erlang.mjs": { + "bytesInOutput": 37460 + }, + "node_modules/@shikijs/langs/dist/fennel.mjs": { + "bytesInOutput": 4802 + }, + "node_modules/@shikijs/langs/dist/fish.mjs": { + "bytesInOutput": 4210 + }, + "node_modules/@shikijs/langs/dist/fluent.mjs": { + "bytesInOutput": 3640 + }, + "node_modules/@shikijs/langs/dist/fortran-free-form.mjs": { + "bytesInOutput": 87175 + }, + "node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs": { + "bytesInOutput": 1090 + }, + "node_modules/@shikijs/langs/dist/markdown.mjs": { + "bytesInOutput": 55941 + }, + "node_modules/@shikijs/langs/dist/fsharp.mjs": { + "bytesInOutput": 25291 + }, + "node_modules/@shikijs/langs/dist/gdshader.mjs": { + "bytesInOutput": 6356 + }, + "node_modules/@shikijs/langs/dist/gdscript.mjs": { + "bytesInOutput": 18866 + }, + "node_modules/@shikijs/langs/dist/gdresource.mjs": { + "bytesInOutput": 5225 + }, + "node_modules/@shikijs/langs/dist/genie.mjs": { + "bytesInOutput": 3386 + }, + "node_modules/@shikijs/langs/dist/gherkin.mjs": { + "bytesInOutput": 18774 + }, + "node_modules/@shikijs/langs/dist/git-commit.mjs": { + "bytesInOutput": 1232 + }, + "node_modules/@shikijs/langs/dist/git-rebase.mjs": { + "bytesInOutput": 978 + }, + "node_modules/@shikijs/langs/dist/gleam.mjs": { + "bytesInOutput": 2607 + }, + "node_modules/@shikijs/langs/dist/glimmer-js.mjs": { + "bytesInOutput": 19978 + }, + "node_modules/@shikijs/langs/dist/glimmer-ts.mjs": { + "bytesInOutput": 19978 + }, + "node_modules/@shikijs/langs/dist/gnuplot.mjs": { + "bytesInOutput": 14813 + }, + "node_modules/@shikijs/langs/dist/go.mjs": { + "bytesInOutput": 45159 + }, + "node_modules/@shikijs/langs/dist/groovy.mjs": { + "bytesInOutput": 19209 + }, + "node_modules/@shikijs/langs/dist/hack.mjs": { + "bytesInOutput": 80208 + }, + "node_modules/@shikijs/langs/dist/handlebars.mjs": { + "bytesInOutput": 12063 + }, + "node_modules/@shikijs/langs/dist/haskell.mjs": { + "bytesInOutput": 41612 + }, + "node_modules/@shikijs/langs/dist/haxe.mjs": { + "bytesInOutput": 35186 + }, + "node_modules/@shikijs/langs/dist/hcl.mjs": { + "bytesInOutput": 10083 + }, + "node_modules/@shikijs/langs/dist/hjson.mjs": { + "bytesInOutput": 12083 + }, + "node_modules/@shikijs/langs/dist/hlsl.mjs": { + "bytesInOutput": 7294 + }, + "node_modules/@shikijs/langs/dist/http.mjs": { + "bytesInOutput": 4313 + }, + "node_modules/@shikijs/langs/dist/hxml.mjs": { + "bytesInOutput": 1745 + }, + "node_modules/@shikijs/langs/dist/hy.mjs": { + "bytesInOutput": 2694 + }, + "node_modules/@shikijs/langs/dist/imba.mjs": { + "bytesInOutput": 49960 + }, + "node_modules/@shikijs/langs/dist/ini.mjs": { + "bytesInOutput": 1555 + }, + "node_modules/@shikijs/langs/dist/jinja-html.mjs": { + "bytesInOutput": 583 + }, + "node_modules/@shikijs/langs/dist/jinja.mjs": { + "bytesInOutput": 5076 + }, + "node_modules/@shikijs/langs/dist/jison.mjs": { + "bytesInOutput": 9705 + }, + "node_modules/@shikijs/langs/dist/json5.mjs": { + "bytesInOutput": 3284 + }, + "node_modules/@shikijs/langs/dist/jsonc.mjs": { + "bytesInOutput": 3139 + }, + "node_modules/@shikijs/langs/dist/jsonl.mjs": { + "bytesInOutput": 3041 + }, + "node_modules/@shikijs/langs/dist/jsonnet.mjs": { + "bytesInOutput": 3648 + }, + "node_modules/@shikijs/langs/dist/jssm.mjs": { + "bytesInOutput": 2268 + }, + "node_modules/@shikijs/langs/dist/r.mjs": { + "bytesInOutput": 39455 + }, + "node_modules/@shikijs/langs/dist/julia.mjs": { + "bytesInOutput": 39504 + }, + "node_modules/@shikijs/langs/dist/kotlin.mjs": { + "bytesInOutput": 8815 + }, + "node_modules/@shikijs/langs/dist/kusto.mjs": { + "bytesInOutput": 15195 + }, + "node_modules/@shikijs/langs/dist/tex.mjs": { + "bytesInOutput": 9528 + }, + "node_modules/@shikijs/langs/dist/latex.mjs": { + "bytesInOutput": 69381 + }, + "node_modules/@shikijs/langs/dist/lean.mjs": { + "bytesInOutput": 4157 + }, + "node_modules/@shikijs/langs/dist/less.mjs": { + "bytesInOutput": 98643 + }, + "node_modules/@shikijs/langs/dist/liquid.mjs": { + "bytesInOutput": 17629 + }, + "node_modules/@shikijs/langs/dist/llvm.mjs": { + "bytesInOutput": 5049 + }, + "node_modules/@shikijs/langs/dist/log.mjs": { + "bytesInOutput": 2872 + }, + "node_modules/@shikijs/langs/dist/logo.mjs": { + "bytesInOutput": 3157 + }, + "node_modules/@shikijs/langs/dist/luau.mjs": { + "bytesInOutput": 12719 + }, + "node_modules/@shikijs/langs/dist/make.mjs": { + "bytesInOutput": 8991 + }, + "node_modules/@shikijs/langs/dist/marko.mjs": { + "bytesInOutput": 16636 + }, + "node_modules/@shikijs/langs/dist/matlab.mjs": { + "bytesInOutput": 16116 + }, + "node_modules/@shikijs/langs/dist/mdc.mjs": { + "bytesInOutput": 19479 + }, + "node_modules/@shikijs/langs/dist/mdx.mjs": { + "bytesInOutput": 136144 + }, + "node_modules/@shikijs/langs/dist/mermaid.mjs": { + "bytesInOutput": 28315 + }, + "node_modules/@shikijs/langs/dist/mipsasm.mjs": { + "bytesInOutput": 3289 + }, + "node_modules/@shikijs/langs/dist/mojo.mjs": { + "bytesInOutput": 69320 + }, + "node_modules/@shikijs/langs/dist/move.mjs": { + "bytesInOutput": 17099 + }, + "node_modules/@shikijs/langs/dist/narrat.mjs": { + "bytesInOutput": 3702 + }, + "node_modules/@shikijs/langs/dist/nextflow.mjs": { + "bytesInOutput": 3965 + }, + "node_modules/@shikijs/langs/dist/nginx.mjs": { + "bytesInOutput": 35353 + }, + "node_modules/@shikijs/langs/dist/nim.mjs": { + "bytesInOutput": 22262 + }, + "node_modules/@shikijs/langs/dist/nix.mjs": { + "bytesInOutput": 14781 + }, + "node_modules/@shikijs/langs/dist/nushell.mjs": { + "bytesInOutput": 19836 + }, + "node_modules/@shikijs/langs/dist/objective-c.mjs": { + "bytesInOutput": 105443 + }, + "node_modules/@shikijs/langs/dist/objective-cpp.mjs": { + "bytesInOutput": 172002 + }, + "node_modules/@shikijs/langs/dist/ocaml.mjs": { + "bytesInOutput": 62479 + }, + "node_modules/@shikijs/langs/dist/pascal.mjs": { + "bytesInOutput": 4180 + }, + "node_modules/@shikijs/langs/dist/perl.mjs": { + "bytesInOutput": 43016 + }, + "node_modules/@shikijs/langs/dist/php.mjs": { + "bytesInOutput": 110831 + }, + "node_modules/@shikijs/langs/dist/plsql.mjs": { + "bytesInOutput": 8542 + }, + "node_modules/@shikijs/langs/dist/po.mjs": { + "bytesInOutput": 3269 + }, + "node_modules/@shikijs/langs/dist/polar.mjs": { + "bytesInOutput": 4701 + }, + "node_modules/@shikijs/langs/dist/powerquery.mjs": { + "bytesInOutput": 5933 + }, + "node_modules/@shikijs/langs/dist/powershell.mjs": { + "bytesInOutput": 20262 + }, + "node_modules/@shikijs/langs/dist/prisma.mjs": { + "bytesInOutput": 6360 + }, + "node_modules/@shikijs/langs/dist/prolog.mjs": { + "bytesInOutput": 11386 + }, + "node_modules/@shikijs/langs/dist/proto.mjs": { + "bytesInOutput": 6551 + }, + "node_modules/@shikijs/langs/dist/pug.mjs": { + "bytesInOutput": 13783 + }, + "node_modules/@shikijs/langs/dist/puppet.mjs": { + "bytesInOutput": 11471 + }, + "node_modules/@shikijs/langs/dist/purescript.mjs": { + "bytesInOutput": 23666 + }, + "node_modules/@shikijs/langs/dist/qml.mjs": { + "bytesInOutput": 5332 + }, + "node_modules/@shikijs/langs/dist/qmldir.mjs": { + "bytesInOutput": 1032 + }, + "node_modules/@shikijs/langs/dist/qss.mjs": { + "bytesInOutput": 7502 + }, + "node_modules/@shikijs/langs/dist/racket.mjs": { + "bytesInOutput": 92449 + }, + "node_modules/@shikijs/langs/dist/raku.mjs": { + "bytesInOutput": 10526 + }, + "node_modules/@shikijs/langs/dist/razor.mjs": { + "bytesInOutput": 25474 + }, + "node_modules/@shikijs/langs/dist/reg.mjs": { + "bytesInOutput": 2375 + }, + "node_modules/@shikijs/langs/dist/rel.mjs": { + "bytesInOutput": 3427 + }, + "node_modules/@shikijs/langs/dist/riscv.mjs": { + "bytesInOutput": 6944 + }, + "node_modules/@shikijs/langs/dist/rst.mjs": { + "bytesInOutput": 10073 + }, + "node_modules/@shikijs/langs/dist/rust.mjs": { + "bytesInOutput": 15099 + }, + "node_modules/@shikijs/langs/dist/sas.mjs": { + "bytesInOutput": 9071 + }, + "node_modules/@shikijs/langs/dist/sass.mjs": { + "bytesInOutput": 9319 + }, + "node_modules/@shikijs/langs/dist/scala.mjs": { + "bytesInOutput": 28914 + }, + "node_modules/@shikijs/langs/dist/scheme.mjs": { + "bytesInOutput": 7199 + }, + "node_modules/@shikijs/langs/dist/shaderlab.mjs": { + "bytesInOutput": 5924 + }, + "node_modules/@shikijs/langs/dist/shellsession.mjs": { + "bytesInOutput": 712 + }, + "node_modules/@shikijs/langs/dist/smalltalk.mjs": { + "bytesInOutput": 6617 + }, + "node_modules/@shikijs/langs/dist/solidity.mjs": { + "bytesInOutput": 16269 + }, + "node_modules/@shikijs/langs/dist/soy.mjs": { + "bytesInOutput": 6924 + }, + "node_modules/@shikijs/langs/dist/turtle.mjs": { + "bytesInOutput": 3730 + }, + "node_modules/@shikijs/langs/dist/sparql.mjs": { + "bytesInOutput": 1480 + }, + "node_modules/@shikijs/langs/dist/splunk.mjs": { + "bytesInOutput": 3466 + }, + "node_modules/@shikijs/langs/dist/ssh-config.mjs": { + "bytesInOutput": 3647 + }, + "node_modules/@shikijs/langs/dist/stata.mjs": { + "bytesInOutput": 56994 + }, + "node_modules/@shikijs/langs/dist/stylus.mjs": { + "bytesInOutput": 31104 + }, + "node_modules/@shikijs/langs/dist/svelte.mjs": { + "bytesInOutput": 17137 + }, + "node_modules/@shikijs/langs/dist/swift.mjs": { + "bytesInOutput": 87394 + }, + "node_modules/@shikijs/langs/dist/system-verilog.mjs": { + "bytesInOutput": 26233 + }, + "node_modules/@shikijs/langs/dist/systemd.mjs": { + "bytesInOutput": 7903 + }, + "node_modules/@shikijs/langs/dist/talonscript.mjs": { + "bytesInOutput": 6787 + }, + "node_modules/@shikijs/langs/dist/tasl.mjs": { + "bytesInOutput": 3318 + }, + "node_modules/@shikijs/langs/dist/tcl.mjs": { + "bytesInOutput": 4459 + }, + "node_modules/@shikijs/langs/dist/templ.mjs": { + "bytesInOutput": 23940 + }, + "node_modules/@shikijs/langs/dist/terraform.mjs": { + "bytesInOutput": 11419 + }, + "node_modules/@shikijs/langs/dist/toml.mjs": { + "bytesInOutput": 6456 + }, + "node_modules/@shikijs/langs/dist/es-tag-css.mjs": { + "bytesInOutput": 1868 + }, + "node_modules/@shikijs/langs/dist/es-tag-glsl.mjs": { + "bytesInOutput": 1745 + }, + "node_modules/@shikijs/langs/dist/es-tag-html.mjs": { + "bytesInOutput": 2062 + }, + "node_modules/@shikijs/langs/dist/es-tag-sql.mjs": { + "bytesInOutput": 1641 + }, + "node_modules/@shikijs/langs/dist/es-tag-xml.mjs": { + "bytesInOutput": 1198 + }, + "node_modules/@shikijs/langs/dist/ts-tags.mjs": { + "bytesInOutput": 399 + }, + "node_modules/@shikijs/langs/dist/tsv.mjs": { + "bytesInOutput": 769 + }, + "node_modules/@shikijs/langs/dist/twig.mjs": { + "bytesInOutput": 20814 + }, + "node_modules/@shikijs/langs/dist/typespec.mjs": { + "bytesInOutput": 23686 + }, + "node_modules/@shikijs/langs/dist/typst.mjs": { + "bytesInOutput": 8417 + }, + "node_modules/@shikijs/langs/dist/v.mjs": { + "bytesInOutput": 13258 + }, + "node_modules/@shikijs/langs/dist/vala.mjs": { + "bytesInOutput": 3400 + }, + "node_modules/@shikijs/langs/dist/vb.mjs": { + "bytesInOutput": 6123 + }, + "node_modules/@shikijs/langs/dist/verilog.mjs": { + "bytesInOutput": 5961 + }, + "node_modules/@shikijs/langs/dist/vhdl.mjs": { + "bytesInOutput": 24294 + }, + "node_modules/@shikijs/langs/dist/viml.mjs": { + "bytesInOutput": 20395 + }, + "node_modules/@shikijs/langs/dist/markdown-vue.mjs": { + "bytesInOutput": 760 + }, + "node_modules/@shikijs/langs/dist/vue-directives.mjs": { + "bytesInOutput": 429 + }, + "node_modules/@shikijs/langs/dist/vue-interpolations.mjs": { + "bytesInOutput": 412 + }, + "node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs": { + "bytesInOutput": 908 + }, + "node_modules/@shikijs/langs/dist/vue.mjs": { + "bytesInOutput": 18564 + }, + "node_modules/@shikijs/langs/dist/vue-html.mjs": { + "bytesInOutput": 8485 + }, + "node_modules/@shikijs/langs/dist/vyper.mjs": { + "bytesInOutput": 74678 + }, + "node_modules/@shikijs/langs/dist/wasm.mjs": { + "bytesInOutput": 12037 + }, + "node_modules/@shikijs/langs/dist/wenyan.mjs": { + "bytesInOutput": 2948 + }, + "node_modules/@shikijs/langs/dist/wgsl.mjs": { + "bytesInOutput": 5174 + }, + "node_modules/@shikijs/langs/dist/wikitext.mjs": { + "bytesInOutput": 55915 + }, + "node_modules/@shikijs/langs/dist/wit.mjs": { + "bytesInOutput": 21497 + }, + "node_modules/@shikijs/langs/dist/wolfram.mjs": { + "bytesInOutput": 262421 + }, + "node_modules/@shikijs/langs/dist/xsl.mjs": { + "bytesInOutput": 1361 + }, + "node_modules/@shikijs/langs/dist/zenscript.mjs": { + "bytesInOutput": 3942 + }, + "node_modules/@shikijs/langs/dist/zig.mjs": { + "bytesInOutput": 5397 + }, + "node_modules/@shikijs/themes/dist/andromeeda.mjs": { + "bytesInOutput": 8886 + }, + "node_modules/@shikijs/themes/dist/aurora-x.mjs": { + "bytesInOutput": 13684 + }, + "node_modules/@shikijs/themes/dist/ayu-dark.mjs": { + "bytesInOutput": 14974 + }, + "node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs": { + "bytesInOutput": 46873 + }, + "node_modules/@shikijs/themes/dist/catppuccin-latte.mjs": { + "bytesInOutput": 46869 + }, + "node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs": { + "bytesInOutput": 46876 + }, + "node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs": { + "bytesInOutput": 46868 + }, + "node_modules/@shikijs/themes/dist/dark-plus.mjs": { + "bytesInOutput": 9122 + }, + "node_modules/@shikijs/themes/dist/dracula.mjs": { + "bytesInOutput": 21091 + }, + "node_modules/@shikijs/themes/dist/dracula-soft.mjs": { + "bytesInOutput": 21101 + }, + "node_modules/@shikijs/themes/dist/everforest-dark.mjs": { + "bytesInOutput": 53770 + }, + "node_modules/@shikijs/themes/dist/everforest-light.mjs": { + "bytesInOutput": 53773 + }, + "node_modules/@shikijs/themes/dist/github-dark.mjs": { + "bytesInOutput": 11430 + }, + "node_modules/@shikijs/themes/dist/github-dark-default.mjs": { + "bytesInOutput": 14460 + }, + "node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs": { + "bytesInOutput": 14458 + }, + "node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs": { + "bytesInOutput": 14620 + }, + "node_modules/@shikijs/themes/dist/github-light.mjs": { + "bytesInOutput": 11209 + }, + "node_modules/@shikijs/themes/dist/github-light-default.mjs": { + "bytesInOutput": 14181 + }, + "node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs": { + "bytesInOutput": 14300 + }, + "node_modules/@shikijs/themes/dist/gruvbox-dark-hard.mjs": { + "bytesInOutput": 21880 + }, + "node_modules/@shikijs/themes/dist/gruvbox-dark-medium.mjs": { + "bytesInOutput": 21884 + }, + "node_modules/@shikijs/themes/dist/gruvbox-dark-soft.mjs": { + "bytesInOutput": 21880 + }, + "node_modules/@shikijs/themes/dist/gruvbox-light-hard.mjs": { + "bytesInOutput": 21883 + }, + "node_modules/@shikijs/themes/dist/gruvbox-light-medium.mjs": { + "bytesInOutput": 21887 + }, + "node_modules/@shikijs/themes/dist/gruvbox-light-soft.mjs": { + "bytesInOutput": 21883 + }, + "node_modules/@shikijs/themes/dist/houston.mjs": { + "bytesInOutput": 35447 + }, + "node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs": { + "bytesInOutput": 17152 + }, + "node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs": { + "bytesInOutput": 17151 + }, + "node_modules/@shikijs/themes/dist/kanagawa-wave.mjs": { + "bytesInOutput": 17148 + }, + "node_modules/@shikijs/themes/dist/laserwave.mjs": { + "bytesInOutput": 11524 + }, + "node_modules/@shikijs/themes/dist/light-plus.mjs": { + "bytesInOutput": 9966 + }, + "node_modules/@shikijs/themes/dist/material-theme.mjs": { + "bytesInOutput": 18640 + }, + "node_modules/@shikijs/themes/dist/material-theme-darker.mjs": { + "bytesInOutput": 18654 + }, + "node_modules/@shikijs/themes/dist/material-theme-lighter.mjs": { + "bytesInOutput": 18659 + }, + "node_modules/@shikijs/themes/dist/material-theme-ocean.mjs": { + "bytesInOutput": 18654 + }, + "node_modules/@shikijs/themes/dist/material-theme-palenight.mjs": { + "bytesInOutput": 18660 + }, + "node_modules/@shikijs/themes/dist/min-dark.mjs": { + "bytesInOutput": 6316 + }, + "node_modules/@shikijs/themes/dist/min-light.mjs": { + "bytesInOutput": 6994 + }, + "node_modules/@shikijs/themes/dist/monokai.mjs": { + "bytesInOutput": 7909 + }, + "node_modules/@shikijs/themes/dist/night-owl.mjs": { + "bytesInOutput": 28938 + }, + "node_modules/@shikijs/themes/dist/nord.mjs": { + "bytesInOutput": 26748 + }, + "node_modules/@shikijs/themes/dist/one-dark-pro.mjs": { + "bytesInOutput": 33812 + }, + "node_modules/@shikijs/themes/dist/one-light.mjs": { + "bytesInOutput": 25323 + }, + "node_modules/@shikijs/themes/dist/plastic.mjs": { + "bytesInOutput": 9320 + }, + "node_modules/@shikijs/themes/dist/poimandres.mjs": { + "bytesInOutput": 33519 + }, + "node_modules/@shikijs/themes/dist/red.mjs": { + "bytesInOutput": 6287 + }, + "node_modules/@shikijs/themes/dist/rose-pine.mjs": { + "bytesInOutput": 21770 + }, + "node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs": { + "bytesInOutput": 21781 + }, + "node_modules/@shikijs/themes/dist/rose-pine-moon.mjs": { + "bytesInOutput": 21780 + }, + "node_modules/@shikijs/themes/dist/slack-dark.mjs": { + "bytesInOutput": 9142 + }, + "node_modules/@shikijs/themes/dist/slack-ochin.mjs": { + "bytesInOutput": 9456 + }, + "node_modules/@shikijs/themes/dist/snazzy-light.mjs": { + "bytesInOutput": 20798 + }, + "node_modules/@shikijs/themes/dist/solarized-dark.mjs": { + "bytesInOutput": 6871 + }, + "node_modules/@shikijs/themes/dist/solarized-light.mjs": { + "bytesInOutput": 6505 + }, + "node_modules/@shikijs/themes/dist/synthwave-84.mjs": { + "bytesInOutput": 14061 + }, + "node_modules/@shikijs/themes/dist/tokyo-night.mjs": { + "bytesInOutput": 35690 + }, + "node_modules/@shikijs/themes/dist/vesper.mjs": { + "bytesInOutput": 12717 + }, + "node_modules/@shikijs/themes/dist/vitesse-black.mjs": { + "bytesInOutput": 13702 + }, + "node_modules/@shikijs/themes/dist/vitesse-dark.mjs": { + "bytesInOutput": 13784 + }, + "node_modules/@shikijs/themes/dist/vitesse-light.mjs": { + "bytesInOutput": 13641 + }, + "node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs": { + "bytesInOutput": 622297 + }, + "node_modules/shiki/dist/wasm.mjs": { + "bytesInOutput": 100 + }, + "node_modules/boolbase/index.js": { + "bytesInOutput": 97 + }, + "node_modules/picocolors/picocolors.browser.js": { + "bytesInOutput": 628 + }, + "(disabled):node_modules/postcss/lib/terminal-highlight": { + "bytesInOutput": 18 + }, + "node_modules/postcss/lib/css-syntax-error.js": { + "bytesInOutput": 1590 + }, + "node_modules/postcss/lib/stringifier.js": { + "bytesInOutput": 4286 + }, + "node_modules/postcss/lib/stringify.js": { + "bytesInOutput": 118 + }, + "node_modules/postcss/lib/symbols.js": { + "bytesInOutput": 100 + }, + "node_modules/postcss/lib/node.js": { + "bytesInOutput": 4725 + }, + "node_modules/postcss/lib/comment.js": { + "bytesInOutput": 144 + }, + "node_modules/postcss/lib/declaration.js": { + "bytesInOutput": 301 + }, + "node_modules/postcss/lib/container.js": { + "bytesInOutput": 5374 }, - "node_modules/shiki/dist/langs/javascript.mjs": { - "bytesInOutput": 167888 + "node_modules/postcss/lib/at-rule.js": { + "bytesInOutput": 315 }, - "node_modules/shiki/dist/langs/css.mjs": { - "bytesInOutput": 47395 + "node_modules/postcss/lib/document.js": { + "bytesInOutput": 298 }, - "node_modules/shiki/dist/langs/html.mjs": { - "bytesInOutput": 55101 + "node_modules/nanoid/non-secure/index.cjs": { + "bytesInOutput": 304 }, - "node_modules/shiki/dist/langs/angular-expression.mjs": { - "bytesInOutput": 12142 + "node-modules-polyfills:path": { + "bytesInOutput": 8176 }, - "node_modules/shiki/dist/langs/angular-template.mjs": { - "bytesInOutput": 530 + "node-modules-polyfills-commonjs:path": { + "bytesInOutput": 276 }, - "node_modules/shiki/dist/langs/angular-template-blocks.mjs": { - "bytesInOutput": 1243 + "(disabled):node_modules/source-map-js/source-map.js": { + "bytesInOutput": 18 }, - "node_modules/shiki/dist/langs/angular-html.mjs": { - "bytesInOutput": 941 + "node-modules-polyfills:url": { + "bytesInOutput": 59087 }, - "node_modules/shiki/dist/langs/scss.mjs": { - "bytesInOutput": 24911 + "node-modules-polyfills-commonjs:url": { + "bytesInOutput": 172 }, - "node_modules/shiki/dist/langs/angular-inline-style.mjs": { - "bytesInOutput": 1171 + "node-modules-polyfills:fs": { + "bytesInOutput": 338570 }, - "node_modules/shiki/dist/langs/angular-inline-template.mjs": { - "bytesInOutput": 1115 + "node-modules-polyfills-commonjs:fs": { + "bytesInOutput": 1743 }, - "node_modules/shiki/dist/langs/angular-ts.mjs": { - "bytesInOutput": 175184 + "node_modules/postcss/lib/previous-map.js": { + "bytesInOutput": 2321 }, - "node_modules/shiki/dist/langs/apache.mjs": { - "bytesInOutput": 12379 + "node_modules/postcss/lib/input.js": { + "bytesInOutput": 3037 }, - "node_modules/shiki/dist/langs/apex.mjs": { - "bytesInOutput": 42562 + "node_modules/postcss/lib/root.js": { + "bytesInOutput": 683 }, - "node_modules/shiki/dist/langs/java.mjs": { - "bytesInOutput": 24804 + "node_modules/postcss/lib/list.js": { + "bytesInOutput": 438 }, - "node_modules/shiki/dist/langs/xml.mjs": { - "bytesInOutput": 4910 + "node_modules/postcss/lib/rule.js": { + "bytesInOutput": 384 }, - "node_modules/shiki/dist/langs/json.mjs": { - "bytesInOutput": 2668 + "node_modules/postcss/lib/fromJSON.js": { + "bytesInOutput": 700 }, - "node_modules/shiki/dist/langs/apl.mjs": { - "bytesInOutput": 27439 + "node_modules/postcss/lib/map-generator.js": { + "bytesInOutput": 5682 }, - "node_modules/shiki/dist/langs/applescript.mjs": { - "bytesInOutput": 28019 + "node_modules/postcss/lib/tokenize.js": { + "bytesInOutput": 2090 }, - "node_modules/shiki/dist/langs/ara.mjs": { - "bytesInOutput": 6590 + "node_modules/postcss/lib/parser.js": { + "bytesInOutput": 7412 }, - "node_modules/shiki/dist/langs/yaml.mjs": { - "bytesInOutput": 10238 + "node_modules/postcss/lib/parse.js": { + "bytesInOutput": 211 }, - "node_modules/shiki/dist/langs/csv.mjs": { - "bytesInOutput": 1063 + "node_modules/postcss/lib/warning.js": { + "bytesInOutput": 476 }, - "node_modules/shiki/dist/langs/c.mjs": { - "bytesInOutput": 67620 + "node_modules/postcss/lib/result.js": { + "bytesInOutput": 478 }, - "node_modules/shiki/dist/langs/clojure.mjs": { - "bytesInOutput": 6161 + "node_modules/postcss/lib/warn-once.js": { + "bytesInOutput": 147 }, - "node_modules/shiki/dist/langs/coffee.mjs": { - "bytesInOutput": 25610 + "node_modules/postcss/lib/lazy-result.js": { + "bytesInOutput": 6485 }, - "node_modules/shiki/dist/langs/regexp.mjs": { - "bytesInOutput": 7487 + "node_modules/postcss/lib/no-work-result.js": { + "bytesInOutput": 1275 }, - "node_modules/shiki/dist/langs/glsl.mjs": { - "bytesInOutput": 3843 + "node_modules/postcss/lib/processor.js": { + "bytesInOutput": 782 }, - "node_modules/shiki/dist/langs/sql.mjs": { - "bytesInOutput": 22758 + "node_modules/postcss/lib/postcss.js": { + "bytesInOutput": 1320 }, - "node_modules/shiki/dist/langs/cpp-macro.mjs": { - "bytesInOutput": 225333 + "node_modules/postcss-selector-parser/dist/util/unesc.js": { + "bytesInOutput": 678 }, - "node_modules/shiki/dist/langs/cpp.mjs": { - "bytesInOutput": 402977 + "node_modules/postcss-selector-parser/dist/util/getProp.js": { + "bytesInOutput": 253 }, - "node_modules/shiki/dist/langs/csharp.mjs": { - "bytesInOutput": 79028 + "node_modules/postcss-selector-parser/dist/util/ensureObject.js": { + "bytesInOutput": 245 }, - "node_modules/shiki/dist/langs/diff.mjs": { - "bytesInOutput": 2407 + "node_modules/postcss-selector-parser/dist/util/stripComments.js": { + "bytesInOutput": 256 }, - "node_modules/shiki/dist/langs/docker.mjs": { - "bytesInOutput": 1543 + "node_modules/postcss-selector-parser/dist/util/index.js": { + "bytesInOutput": 329 }, - "node_modules/shiki/dist/langs/elixir.mjs": { - "bytesInOutput": 16267 + "node_modules/postcss-selector-parser/dist/selectors/node.js": { + "bytesInOutput": 2645 }, - "node_modules/shiki/dist/langs/elm.mjs": { - "bytesInOutput": 10064 + "node_modules/postcss-selector-parser/dist/selectors/types.js": { + "bytesInOutput": 558 }, - "node_modules/shiki/dist/langs/erlang.mjs": { - "bytesInOutput": 33108 + "node_modules/postcss-selector-parser/dist/selectors/container.js": { + "bytesInOutput": 5812 }, - "node_modules/shiki/dist/langs/go.mjs": { - "bytesInOutput": 43655 + "node_modules/postcss-selector-parser/dist/selectors/root.js": { + "bytesInOutput": 1085 }, - "node_modules/shiki/dist/langs/groovy.mjs": { - "bytesInOutput": 17726 + "node_modules/postcss-selector-parser/dist/selectors/selector.js": { + "bytesInOutput": 526 }, - "node_modules/shiki/dist/langs/haskell.mjs": { - "bytesInOutput": 39243 + "node_modules/cssesc/cssesc.js": { + "bytesInOutput": 1189 }, - "node_modules/shiki/dist/langs/jsx.mjs": { - "bytesInOutput": 170855 + "node_modules/postcss-selector-parser/dist/selectors/className.js": { + "bytesInOutput": 1181 }, - "node_modules/shiki/dist/langs/python.mjs": { - "bytesInOutput": 70786 + "node_modules/postcss-selector-parser/dist/selectors/comment.js": { + "bytesInOutput": 525 }, - "node_modules/shiki/dist/langs/r.mjs": { - "bytesInOutput": 34056 + "node_modules/postcss-selector-parser/dist/selectors/id.js": { + "bytesInOutput": 613 }, - "node_modules/shiki/dist/langs/julia.mjs": { - "bytesInOutput": 42245 + "node_modules/postcss-selector-parser/dist/selectors/namespace.js": { + "bytesInOutput": 1540 }, - "node_modules/shiki/dist/langs/kotlin.mjs": { - "bytesInOutput": 7947 + "node_modules/postcss-selector-parser/dist/selectors/tag.js": { + "bytesInOutput": 521 }, - "node_modules/shiki/dist/langs/less.mjs": { - "bytesInOutput": 76378 + "node_modules/postcss-selector-parser/dist/selectors/string.js": { + "bytesInOutput": 524 }, - "node_modules/shiki/dist/langs/make.mjs": { - "bytesInOutput": 8162 + "node_modules/postcss-selector-parser/dist/selectors/pseudo.js": { + "bytesInOutput": 711 }, - "node_modules/shiki/dist/langs/objective-c.mjs": { - "bytesInOutput": 102060 + "node_modules/util-deprecate/browser.js": { + "bytesInOutput": 422 }, - "node_modules/shiki/dist/langs/ocaml.mjs": { - "bytesInOutput": 60359 + "node_modules/postcss-selector-parser/dist/selectors/attribute.js": { + "bytesInOutput": 6077 }, - "node_modules/shiki/dist/langs/perl.mjs": { - "bytesInOutput": 39947 + "node_modules/postcss-selector-parser/dist/selectors/universal.js": { + "bytesInOutput": 539 }, - "node_modules/shiki/dist/langs/shellscript.mjs": { - "bytesInOutput": 38526 + "node_modules/postcss-selector-parser/dist/selectors/combinator.js": { + "bytesInOutput": 528 }, - "node_modules/shiki/dist/langs/lua.mjs": { - "bytesInOutput": 13854 + "node_modules/postcss-selector-parser/dist/selectors/nesting.js": { + "bytesInOutput": 537 }, - "node_modules/shiki/dist/langs/ruby.mjs": { - "bytesInOutput": 34268 + "node_modules/postcss-selector-parser/dist/sortAscending.js": { + "bytesInOutput": 146 }, - "node_modules/shiki/dist/langs/rust.mjs": { - "bytesInOutput": 16005 + "node_modules/postcss-selector-parser/dist/tokenTypes.js": { + "bytesInOutput": 1198 }, - "node_modules/shiki/dist/langs/sass.mjs": { - "bytesInOutput": 8543 + "node_modules/postcss-selector-parser/dist/tokenize.js": { + "bytesInOutput": 3217 }, - "node_modules/shiki/dist/langs/scala.mjs": { - "bytesInOutput": 26132 + "node_modules/postcss-selector-parser/dist/parser.js": { + "bytesInOutput": 18232 }, - "node_modules/shiki/dist/langs/swift.mjs": { - "bytesInOutput": 90654 + "node_modules/postcss-selector-parser/dist/processor.js": { + "bytesInOutput": 1804 }, - "node_modules/shiki/dist/langs/toml.mjs": { - "bytesInOutput": 5939 + "node_modules/postcss-selector-parser/dist/selectors/constructors.js": { + "bytesInOutput": 1134 }, - "node_modules/shiki/dist/langs/typescript.mjs": { - "bytesInOutput": 175002 + "node_modules/postcss-selector-parser/dist/selectors/guards.js": { + "bytesInOutput": 1588 }, - "node_modules/shiki/dist/langs/asciidoc.mjs": { - "bytesInOutput": 83951 + "node_modules/postcss-selector-parser/dist/selectors/index.js": { + "bytesInOutput": 410 }, - "node_modules/shiki/dist/langs/asm.mjs": { - "bytesInOutput": 37958 + "node_modules/postcss-selector-parser/dist/index.js": { + "bytesInOutput": 870 }, - "node_modules/shiki/dist/langs/stylus.mjs": { - "bytesInOutput": 29688 + "node_modules/postcss-nested/index.js": { + "bytesInOutput": 3414 }, - "node_modules/shiki/dist/langs/postcss.mjs": { - "bytesInOutput": 5982 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/abap.mjs": { + "bytesInOutput": 18856 }, - "node_modules/shiki/dist/langs/tsx.mjs": { - "bytesInOutput": 168608 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/actionscript-3.mjs": { + "bytesInOutput": 14593 }, - "node_modules/shiki/dist/langs/astro.mjs": { - "bytesInOutput": 22989 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ada.mjs": { + "bytesInOutput": 48566 }, - "node_modules/shiki/dist/langs/awk.mjs": { - "bytesInOutput": 4994 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs": { + "bytesInOutput": 198064 }, - "node_modules/shiki/dist/langs/ballerina.mjs": { - "bytesInOutput": 54359 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs": { + "bytesInOutput": 53832 }, - "node_modules/shiki/dist/langs/bat.mjs": { - "bytesInOutput": 11976 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs": { + "bytesInOutput": 61297 }, - "node_modules/shiki/dist/langs/beancount.mjs": { - "bytesInOutput": 9668 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs": { + "bytesInOutput": 13696 }, - "node_modules/shiki/dist/langs/berry.mjs": { - "bytesInOutput": 2102 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs": { + "bytesInOutput": 1001 }, - "node_modules/shiki/dist/langs/bibtex.mjs": { - "bytesInOutput": 4511 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs": { + "bytesInOutput": 587 }, - "node_modules/shiki/dist/langs/bicep.mjs": { - "bytesInOutput": 3895 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs": { + "bytesInOutput": 1363 }, - "node_modules/shiki/dist/langs/blade.mjs": { - "bytesInOutput": 98588 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-html.mjs": { + "bytesInOutput": 1047 }, - "node_modules/shiki/dist/langs/cadence.mjs": { - "bytesInOutput": 9919 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs": { + "bytesInOutput": 28132 }, - "node_modules/shiki/dist/langs/clarity.mjs": { - "bytesInOutput": 13340 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-style.mjs": { + "bytesInOutput": 1324 }, - "node_modules/shiki/dist/langs/cmake.mjs": { - "bytesInOutput": 10153 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-template.mjs": { + "bytesInOutput": 1128 }, - "node_modules/shiki/dist/langs/cobol.mjs": { - "bytesInOutput": 38226 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-ts.mjs": { + "bytesInOutput": 209279 }, - "node_modules/shiki/dist/langs/codeowners.mjs": { - "bytesInOutput": 509 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apache.mjs": { + "bytesInOutput": 13247 }, - "node_modules/shiki/dist/langs/codeql.mjs": { - "bytesInOutput": 32109 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apex.mjs": { + "bytesInOutput": 46848 }, - "node_modules/shiki/dist/langs/common-lisp.mjs": { - "bytesInOutput": 23276 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs": { + "bytesInOutput": 27518 }, - "node_modules/shiki/dist/langs/crystal.mjs": { - "bytesInOutput": 30495 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs": { + "bytesInOutput": 5413 }, - "node_modules/shiki/dist/langs/cue.mjs": { - "bytesInOutput": 15186 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs": { + "bytesInOutput": 2949 }, - "node_modules/shiki/dist/langs/cypher.mjs": { - "bytesInOutput": 6239 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apl.mjs": { + "bytesInOutput": 26513 }, - "node_modules/shiki/dist/langs/d.mjs": { - "bytesInOutput": 38513 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/applescript.mjs": { + "bytesInOutput": 30906 }, - "node_modules/shiki/dist/langs/dart.mjs": { - "bytesInOutput": 6670 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ara.mjs": { + "bytesInOutput": 7282 }, - "node_modules/shiki/dist/langs/dax.mjs": { - "bytesInOutput": 5346 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asciidoc.mjs": { + "bytesInOutput": 93541 }, - "node_modules/shiki/dist/langs/desktop.mjs": { - "bytesInOutput": 1831 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asm.mjs": { + "bytesInOutput": 40888 }, - "node_modules/shiki/dist/langs/dream-maker.mjs": { - "bytesInOutput": 9570 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs": { + "bytesInOutput": 209057 }, - "node_modules/shiki/dist/langs/html-derivative.mjs": { - "bytesInOutput": 847 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs": { + "bytesInOutput": 6549 }, - "node_modules/shiki/dist/langs/edge.mjs": { - "bytesInOutput": 2025 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/astro.mjs": { + "bytesInOutput": 23953 }, - "node_modules/shiki/dist/langs/emacs-lisp.mjs": { - "bytesInOutput": 807665 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/awk.mjs": { + "bytesInOutput": 5530 }, - "node_modules/shiki/dist/langs/erb.mjs": { - "bytesInOutput": 1912 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ballerina.mjs": { + "bytesInOutput": 61665 }, - "node_modules/shiki/dist/langs/fennel.mjs": { - "bytesInOutput": 4507 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bat.mjs": { + "bytesInOutput": 13028 }, - "node_modules/shiki/dist/langs/fish.mjs": { - "bytesInOutput": 5042 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/beancount.mjs": { + "bytesInOutput": 10792 }, - "node_modules/shiki/dist/langs/fluent.mjs": { - "bytesInOutput": 3344 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/berry.mjs": { + "bytesInOutput": 2484 }, - "node_modules/shiki/dist/langs/fortran-free-form.mjs": { - "bytesInOutput": 89212 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bibtex.mjs": { + "bytesInOutput": 5111 }, - "node_modules/shiki/dist/langs/fortran-fixed-form.mjs": { - "bytesInOutput": 992 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bicep.mjs": { + "bytesInOutput": 4490 }, - "node_modules/shiki/dist/langs/markdown.mjs": { - "bytesInOutput": 50844 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs": { + "bytesInOutput": 24356 }, - "node_modules/shiki/dist/langs/fsharp.mjs": { - "bytesInOutput": 23039 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/blade.mjs": { + "bytesInOutput": 107838 }, - "node_modules/shiki/dist/langs/gdshader.mjs": { - "bytesInOutput": 5754 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sdbl.mjs": { + "bytesInOutput": 9113 }, - "node_modules/shiki/dist/langs/gdscript.mjs": { - "bytesInOutput": 17048 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bsl.mjs": { + "bytesInOutput": 80905 }, - "node_modules/shiki/dist/langs/gdresource.mjs": { - "bytesInOutput": 4826 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs": { + "bytesInOutput": 74001 }, - "node_modules/shiki/dist/langs/genie.mjs": { - "bytesInOutput": 3076 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cadence.mjs": { + "bytesInOutput": 11067 }, - "node_modules/shiki/dist/langs/gherkin.mjs": { - "bytesInOutput": 19223 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs": { + "bytesInOutput": 73562 }, - "node_modules/shiki/dist/langs/git-commit.mjs": { - "bytesInOutput": 1415 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cairo.mjs": { + "bytesInOutput": 2960 }, - "node_modules/shiki/dist/langs/git-rebase.mjs": { - "bytesInOutput": 879 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clarity.mjs": { + "bytesInOutput": 14589 }, - "node_modules/shiki/dist/langs/gleam.mjs": { - "bytesInOutput": 2461 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clojure.mjs": { + "bytesInOutput": 7113 }, - "node_modules/shiki/dist/langs/glimmer-js.mjs": { - "bytesInOutput": 18218 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cmake.mjs": { + "bytesInOutput": 10536 }, - "node_modules/shiki/dist/langs/glimmer-ts.mjs": { - "bytesInOutput": 18218 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cobol.mjs": { + "bytesInOutput": 40505 }, - "node_modules/shiki/dist/langs/gnuplot.mjs": { - "bytesInOutput": 15757 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeowners.mjs": { + "bytesInOutput": 583 }, - "node_modules/shiki/dist/langs/graphql.mjs": { - "bytesInOutput": 16495 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeql.mjs": { + "bytesInOutput": 33630 }, - "node_modules/shiki/dist/langs/hack.mjs": { - "bytesInOutput": 79854 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coffee.mjs": { + "bytesInOutput": 27751 }, - "node_modules/shiki/dist/langs/haml.mjs": { - "bytesInOutput": 7461 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/common-lisp.mjs": { + "bytesInOutput": 28532 }, - "node_modules/shiki/dist/langs/handlebars.mjs": { - "bytesInOutput": 11033 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coq.mjs": { + "bytesInOutput": 6081 }, - "node_modules/shiki/dist/langs/haxe.mjs": { - "bytesInOutput": 32020 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs": { + "bytesInOutput": 8100 }, - "node_modules/shiki/dist/langs/hcl.mjs": { - "bytesInOutput": 10696 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs": { + "bytesInOutput": 3950 }, - "node_modules/shiki/dist/langs/hjson.mjs": { - "bytesInOutput": 11609 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp-macro.mjs": { + "bytesInOutput": 249834 }, - "node_modules/shiki/dist/langs/hlsl.mjs": { - "bytesInOutput": 7189 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs": { + "bytesInOutput": 447658 }, - "node_modules/shiki/dist/langs/http.mjs": { - "bytesInOutput": 3903 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs": { + "bytesInOutput": 42746 }, - "node_modules/shiki/dist/langs/hxml.mjs": { - "bytesInOutput": 1714 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/crystal.mjs": { + "bytesInOutput": 33607 }, - "node_modules/shiki/dist/langs/hy.mjs": { - "bytesInOutput": 3128 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csharp.mjs": { + "bytesInOutput": 87198 }, - "node_modules/shiki/dist/langs/imba.mjs": { - "bytesInOutput": 47147 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csv.mjs": { + "bytesInOutput": 1259 }, - "node_modules/shiki/dist/langs/ini.mjs": { - "bytesInOutput": 1389 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cue.mjs": { + "bytesInOutput": 17382 }, - "node_modules/shiki/dist/langs/jinja-html.mjs": { - "bytesInOutput": 532 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cypher.mjs": { + "bytesInOutput": 6850 }, - "node_modules/shiki/dist/langs/jinja.mjs": { - "bytesInOutput": 4566 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/d.mjs": { + "bytesInOutput": 43049 }, - "node_modules/shiki/dist/langs/jison.mjs": { - "bytesInOutput": 8776 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dart.mjs": { + "bytesInOutput": 7926 }, - "node_modules/shiki/dist/langs/json5.mjs": { - "bytesInOutput": 3227 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dax.mjs": { + "bytesInOutput": 5568 }, - "node_modules/shiki/dist/langs/jsonc.mjs": { - "bytesInOutput": 2953 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/desktop.mjs": { + "bytesInOutput": 2063 }, - "node_modules/shiki/dist/langs/jsonl.mjs": { - "bytesInOutput": 2855 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/diff.mjs": { + "bytesInOutput": 2676 }, - "node_modules/shiki/dist/langs/jsonnet.mjs": { - "bytesInOutput": 3274 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/docker.mjs": { + "bytesInOutput": 1802 }, - "node_modules/shiki/dist/langs/jssm.mjs": { - "bytesInOutput": 2765 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dotenv.mjs": { + "bytesInOutput": 1739 }, - "node_modules/shiki/dist/langs/kusto.mjs": { - "bytesInOutput": 19413 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dream-maker.mjs": { + "bytesInOutput": 10643 }, - "node_modules/shiki/dist/langs/tex.mjs": { - "bytesInOutput": 8709 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs": { + "bytesInOutput": 916 }, - "node_modules/shiki/dist/langs/latex.mjs": { - "bytesInOutput": 52072 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/edge.mjs": { + "bytesInOutput": 2235 }, - "node_modules/shiki/dist/langs/liquid.mjs": { - "bytesInOutput": 14764 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elixir.mjs": { + "bytesInOutput": 18249 }, - "node_modules/shiki/dist/langs/log.mjs": { - "bytesInOutput": 2524 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elm.mjs": { + "bytesInOutput": 11272 }, - "node_modules/shiki/dist/langs/logo.mjs": { - "bytesInOutput": 3119 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/emacs-lisp.mjs": { + "bytesInOutput": 804712 }, - "node_modules/shiki/dist/langs/luau.mjs": { - "bytesInOutput": 11591 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haml.mjs": { + "bytesInOutput": 8458 }, - "node_modules/shiki/dist/langs/marko.mjs": { - "bytesInOutput": 17521 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsx.mjs": { + "bytesInOutput": 201041 }, - "node_modules/shiki/dist/langs/matlab.mjs": { - "bytesInOutput": 18463 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsx.mjs": { + "bytesInOutput": 198785 }, - "node_modules/shiki/dist/langs/mdc.mjs": { - "bytesInOutput": 19005 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs": { + "bytesInOutput": 18111 }, - "node_modules/shiki/dist/langs/mdx.mjs": { - "bytesInOutput": 118326 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs": { + "bytesInOutput": 15630 }, - "node_modules/shiki/dist/langs/mermaid.mjs": { - "bytesInOutput": 26380 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs": { + "bytesInOutput": 10826 }, - "node_modules/shiki/dist/langs/mojo.mjs": { - "bytesInOutput": 69955 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs": { + "bytesInOutput": 50999 }, - "node_modules/shiki/dist/langs/move.mjs": { - "bytesInOutput": 17462 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erb.mjs": { + "bytesInOutput": 2114 }, - "node_modules/shiki/dist/langs/narrat.mjs": { - "bytesInOutput": 3356 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erlang.mjs": { + "bytesInOutput": 36346 }, - "node_modules/shiki/dist/langs/nextflow.mjs": { - "bytesInOutput": 4328 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fennel.mjs": { + "bytesInOutput": 4863 }, - "node_modules/shiki/dist/langs/nginx.mjs": { - "bytesInOutput": 32477 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fish.mjs": { + "bytesInOutput": 5428 }, - "node_modules/shiki/dist/langs/nim.mjs": { - "bytesInOutput": 20726 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fluent.mjs": { + "bytesInOutput": 3658 }, - "node_modules/shiki/dist/langs/nix.mjs": { - "bytesInOutput": 13665 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs": { + "bytesInOutput": 98225 }, - "node_modules/shiki/dist/langs/nushell.mjs": { - "bytesInOutput": 17769 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs": { + "bytesInOutput": 1100 }, - "node_modules/shiki/dist/langs/objective-cpp.mjs": { - "bytesInOutput": 164654 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs": { + "bytesInOutput": 57020 }, - "node_modules/shiki/dist/langs/pascal.mjs": { - "bytesInOutput": 3924 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fsharp.mjs": { + "bytesInOutput": 25837 }, - "node_modules/shiki/dist/langs/php.mjs": { - "bytesInOutput": 103153 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdshader.mjs": { + "bytesInOutput": 6407 }, - "node_modules/shiki/dist/langs/plsql.mjs": { - "bytesInOutput": 8005 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdscript.mjs": { + "bytesInOutput": 18687 }, - "node_modules/shiki/dist/langs/po.mjs": { - "bytesInOutput": 2993 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdresource.mjs": { + "bytesInOutput": 5448 }, - "node_modules/shiki/dist/langs/powerquery.mjs": { - "bytesInOutput": 5325 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/genie.mjs": { + "bytesInOutput": 3414 }, - "node_modules/shiki/dist/langs/powershell.mjs": { - "bytesInOutput": 20557 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gherkin.mjs": { + "bytesInOutput": 19457 }, - "node_modules/shiki/dist/langs/prisma.mjs": { - "bytesInOutput": 5537 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-commit.mjs": { + "bytesInOutput": 1553 }, - "node_modules/shiki/dist/langs/prolog.mjs": { - "bytesInOutput": 11067 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-rebase.mjs": { + "bytesInOutput": 981 }, - "node_modules/shiki/dist/langs/proto.mjs": { - "bytesInOutput": 5795 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gleam.mjs": { + "bytesInOutput": 2722 }, - "node_modules/shiki/dist/langs/pug.mjs": { - "bytesInOutput": 13215 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-js.mjs": { + "bytesInOutput": 20468 }, - "node_modules/shiki/dist/langs/puppet.mjs": { - "bytesInOutput": 10873 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-ts.mjs": { + "bytesInOutput": 20468 }, - "node_modules/shiki/dist/langs/purescript.mjs": { - "bytesInOutput": 15077 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gnuplot.mjs": { + "bytesInOutput": 14946 }, - "node_modules/shiki/dist/langs/qml.mjs": { - "bytesInOutput": 4784 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/go.mjs": { + "bytesInOutput": 52441 }, - "node_modules/shiki/dist/langs/qmldir.mjs": { - "bytesInOutput": 910 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/groovy.mjs": { + "bytesInOutput": 19681 }, - "node_modules/shiki/dist/langs/qss.mjs": { - "bytesInOutput": 7454 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hack.mjs": { + "bytesInOutput": 84591 }, - "node_modules/shiki/dist/langs/racket.mjs": { - "bytesInOutput": 101468 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/handlebars.mjs": { + "bytesInOutput": 12185 }, - "node_modules/shiki/dist/langs/raku.mjs": { - "bytesInOutput": 10050 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haskell.mjs": { + "bytesInOutput": 43398 }, - "node_modules/shiki/dist/langs/razor.mjs": { - "bytesInOutput": 23405 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haxe.mjs": { + "bytesInOutput": 35328 }, - "node_modules/shiki/dist/langs/reg.mjs": { - "bytesInOutput": 2171 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hcl.mjs": { + "bytesInOutput": 12008 }, - "node_modules/shiki/dist/langs/rel.mjs": { - "bytesInOutput": 3151 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hjson.mjs": { + "bytesInOutput": 12364 }, - "node_modules/shiki/dist/langs/riscv.mjs": { - "bytesInOutput": 6940 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hlsl.mjs": { + "bytesInOutput": 7638 }, - "node_modules/shiki/dist/langs/rst.mjs": { - "bytesInOutput": 8795 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/http.mjs": { + "bytesInOutput": 4424 }, - "node_modules/shiki/dist/langs/sas.mjs": { - "bytesInOutput": 9333 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hxml.mjs": { + "bytesInOutput": 1838 }, - "node_modules/shiki/dist/langs/scheme.mjs": { - "bytesInOutput": 7958 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hy.mjs": { + "bytesInOutput": 2880 }, - "node_modules/shiki/dist/langs/shaderlab.mjs": { - "bytesInOutput": 5901 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/imba.mjs": { + "bytesInOutput": 53464 }, - "node_modules/shiki/dist/langs/shellsession.mjs": { - "bytesInOutput": 682 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ini.mjs": { + "bytesInOutput": 1565 }, - "node_modules/shiki/dist/langs/smalltalk.mjs": { - "bytesInOutput": 3838 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja-html.mjs": { + "bytesInOutput": 585 }, - "node_modules/shiki/dist/langs/solidity.mjs": { - "bytesInOutput": 14505 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja.mjs": { + "bytesInOutput": 5122 }, - "node_modules/shiki/dist/langs/soy.mjs": { - "bytesInOutput": 6048 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jison.mjs": { + "bytesInOutput": 9749 }, - "node_modules/shiki/dist/langs/turtle.mjs": { - "bytesInOutput": 3387 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json5.mjs": { + "bytesInOutput": 3575 }, - "node_modules/shiki/dist/langs/sparql.mjs": { - "bytesInOutput": 1426 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonc.mjs": { + "bytesInOutput": 3237 }, - "node_modules/shiki/dist/langs/splunk.mjs": { - "bytesInOutput": 3680 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonl.mjs": { + "bytesInOutput": 3139 }, - "node_modules/shiki/dist/langs/ssh-config.mjs": { - "bytesInOutput": 3488 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonnet.mjs": { + "bytesInOutput": 3666 }, - "node_modules/shiki/dist/langs/stata.mjs": { - "bytesInOutput": 56541 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jssm.mjs": { + "bytesInOutput": 3010 }, - "node_modules/shiki/dist/langs/svelte.mjs": { - "bytesInOutput": 15270 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs": { + "bytesInOutput": 36905 }, - "node_modules/shiki/dist/langs/system-verilog.mjs": { - "bytesInOutput": 23869 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/julia.mjs": { + "bytesInOutput": 45928 }, - "node_modules/shiki/dist/langs/systemd.mjs": { - "bytesInOutput": 7291 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kotlin.mjs": { + "bytesInOutput": 8856 }, - "node_modules/shiki/dist/langs/tasl.mjs": { - "bytesInOutput": 3056 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kusto.mjs": { + "bytesInOutput": 20669 }, - "node_modules/shiki/dist/langs/tcl.mjs": { - "bytesInOutput": 4541 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tex.mjs": { + "bytesInOutput": 9376 }, - "node_modules/shiki/dist/langs/templ.mjs": { - "bytesInOutput": 22214 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/latex.mjs": { + "bytesInOutput": 59423 }, - "node_modules/shiki/dist/langs/terraform.mjs": { - "bytesInOutput": 12100 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lean.mjs": { + "bytesInOutput": 4373 }, - "node_modules/shiki/dist/langs/tsv.mjs": { - "bytesInOutput": 659 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/less.mjs": { + "bytesInOutput": 102492 }, - "node_modules/shiki/dist/langs/twig.mjs": { - "bytesInOutput": 19939 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/liquid.mjs": { + "bytesInOutput": 17087 }, - "node_modules/shiki/dist/langs/typespec.mjs": { - "bytesInOutput": 25248 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/log.mjs": { + "bytesInOutput": 3001 }, - "node_modules/shiki/dist/langs/typst.mjs": { - "bytesInOutput": 7645 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/logo.mjs": { + "bytesInOutput": 3247 }, - "node_modules/shiki/dist/langs/v.mjs": { - "bytesInOutput": 12160 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/luau.mjs": { + "bytesInOutput": 12955 }, - "node_modules/shiki/dist/langs/vala.mjs": { - "bytesInOutput": 3102 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/make.mjs": { + "bytesInOutput": 9050 }, - "node_modules/shiki/dist/langs/vb.mjs": { - "bytesInOutput": 5816 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/marko.mjs": { + "bytesInOutput": 19246 }, - "node_modules/shiki/dist/langs/verilog.mjs": { - "bytesInOutput": 5462 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/matlab.mjs": { + "bytesInOutput": 20172 }, - "node_modules/shiki/dist/langs/vhdl.mjs": { - "bytesInOutput": 22238 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdc.mjs": { + "bytesInOutput": 19551 }, - "node_modules/shiki/dist/langs/viml.mjs": { - "bytesInOutput": 20324 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdx.mjs": { + "bytesInOutput": 140396 }, - "node_modules/shiki/dist/langs/markdown-vue.mjs": { - "bytesInOutput": 673 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mermaid.mjs": { + "bytesInOutput": 33097 }, - "node_modules/shiki/dist/langs/vue-directives.mjs": { - "bytesInOutput": 401 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mipsasm.mjs": { + "bytesInOutput": 3455 }, - "node_modules/shiki/dist/langs/vue-interpolations.mjs": { - "bytesInOutput": 384 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mojo.mjs": { + "bytesInOutput": 72603 }, - "node_modules/shiki/dist/langs/vue-sfc-style-variable-injection.mjs": { - "bytesInOutput": 825 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/move.mjs": { + "bytesInOutput": 20275 }, - "node_modules/shiki/dist/langs/vue.mjs": { - "bytesInOutput": 16623 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/narrat.mjs": { + "bytesInOutput": 3730 }, - "node_modules/shiki/dist/langs/vue-html.mjs": { - "bytesInOutput": 7768 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nextflow.mjs": { + "bytesInOutput": 3994 }, - "node_modules/shiki/dist/langs/vyper.mjs": { - "bytesInOutput": 76268 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nginx.mjs": { + "bytesInOutput": 35711 }, - "node_modules/shiki/dist/langs/wasm.mjs": { - "bytesInOutput": 14532 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nim.mjs": { + "bytesInOutput": 23440 }, - "node_modules/shiki/dist/langs/wenyan.mjs": { - "bytesInOutput": 2868 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nix.mjs": { + "bytesInOutput": 15589 }, - "node_modules/shiki/dist/langs/wgsl.mjs": { - "bytesInOutput": 5924 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nushell.mjs": { + "bytesInOutput": 19781 }, - "node_modules/shiki/dist/langs/xsl.mjs": { - "bytesInOutput": 1235 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-c.mjs": { + "bytesInOutput": 107823 }, - "node_modules/shiki/dist/langs/wikitext.mjs": { - "bytesInOutput": 52015 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-cpp.mjs": { + "bytesInOutput": 175636 }, - "node_modules/shiki/dist/langs/wolfram.mjs": { - "bytesInOutput": 264359 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ocaml.mjs": { + "bytesInOutput": 65901 }, - "node_modules/shiki/dist/langs/zenscript.mjs": { - "bytesInOutput": 3958 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pascal.mjs": { + "bytesInOutput": 4214 }, - "node_modules/shiki/dist/langs/zig.mjs": { - "bytesInOutput": 4925 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/perl.mjs": { + "bytesInOutput": 44419 }, - "node_modules/@shikijs/core/dist/wasm-inlined.mjs": { - "bytesInOutput": 622297 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/php.mjs": { + "bytesInOutput": 113592 }, - "node_modules/shiki/dist/wasm.mjs": { - "bytesInOutput": 54 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/plsql.mjs": { + "bytesInOutput": 8605 }, - "node_modules/shiki/dist/themes/andromeeda.mjs": { - "bytesInOutput": 8778 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/po.mjs": { + "bytesInOutput": 3415 }, - "node_modules/shiki/dist/themes/aurora-x.mjs": { - "bytesInOutput": 13272 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/polar.mjs": { + "bytesInOutput": 4711 }, - "node_modules/shiki/dist/themes/ayu-dark.mjs": { - "bytesInOutput": 14532 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powerquery.mjs": { + "bytesInOutput": 5968 }, - "node_modules/shiki/dist/themes/catppuccin-frappe.mjs": { - "bytesInOutput": 44219 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powershell.mjs": { + "bytesInOutput": 22294 }, - "node_modules/shiki/dist/themes/catppuccin-latte.mjs": { - "bytesInOutput": 44215 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prisma.mjs": { + "bytesInOutput": 6422 }, - "node_modules/shiki/dist/themes/catppuccin-macchiato.mjs": { - "bytesInOutput": 44222 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prolog.mjs": { + "bytesInOutput": 11475 }, - "node_modules/shiki/dist/themes/catppuccin-mocha.mjs": { - "bytesInOutput": 44214 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/proto.mjs": { + "bytesInOutput": 6610 }, - "node_modules/shiki/dist/themes/dark-plus.mjs": { - "bytesInOutput": 8496 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pug.mjs": { + "bytesInOutput": 14839 }, - "node_modules/shiki/dist/themes/dracula.mjs": { - "bytesInOutput": 20493 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/puppet.mjs": { + "bytesInOutput": 11784 }, - "node_modules/shiki/dist/themes/dracula-soft.mjs": { - "bytesInOutput": 20503 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/purescript.mjs": { + "bytesInOutput": 17187 }, - "node_modules/shiki/dist/themes/github-dark.mjs": { - "bytesInOutput": 11088 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qml.mjs": { + "bytesInOutput": 5426 }, - "node_modules/shiki/dist/themes/github-dark-default.mjs": { - "bytesInOutput": 14057 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qmldir.mjs": { + "bytesInOutput": 1038 }, - "node_modules/shiki/dist/themes/github-dark-dimmed.mjs": { - "bytesInOutput": 14055 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qss.mjs": { + "bytesInOutput": 7854 }, - "node_modules/shiki/dist/themes/github-light.mjs": { - "bytesInOutput": 10867 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/racket.mjs": { + "bytesInOutput": 97689 }, - "node_modules/shiki/dist/themes/github-light-default.mjs": { - "bytesInOutput": 13778 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/raku.mjs": { + "bytesInOutput": 10646 }, - "node_modules/shiki/dist/themes/houston.mjs": { - "bytesInOutput": 33933 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/razor.mjs": { + "bytesInOutput": 25727 }, - "node_modules/shiki/dist/themes/laserwave.mjs": { - "bytesInOutput": 11372 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/reg.mjs": { + "bytesInOutput": 2405 }, - "node_modules/shiki/dist/themes/light-plus.mjs": { - "bytesInOutput": 9357 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rel.mjs": { + "bytesInOutput": 3513 }, - "node_modules/shiki/dist/themes/material-theme.mjs": { - "bytesInOutput": 18096 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/riscv.mjs": { + "bytesInOutput": 7743 }, - "node_modules/shiki/dist/themes/material-theme-darker.mjs": { - "bytesInOutput": 18110 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rst.mjs": { + "bytesInOutput": 10053 }, - "node_modules/shiki/dist/themes/material-theme-lighter.mjs": { - "bytesInOutput": 18115 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rust.mjs": { + "bytesInOutput": 17639 }, - "node_modules/shiki/dist/themes/material-theme-ocean.mjs": { - "bytesInOutput": 18110 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sas.mjs": { + "bytesInOutput": 9811 }, - "node_modules/shiki/dist/themes/material-theme-palenight.mjs": { - "bytesInOutput": 18116 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sass.mjs": { + "bytesInOutput": 9441 }, - "node_modules/shiki/dist/themes/min-dark.mjs": { - "bytesInOutput": 6144 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scala.mjs": { + "bytesInOutput": 30528 }, - "node_modules/shiki/dist/themes/min-light.mjs": { - "bytesInOutput": 6834 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scheme.mjs": { + "bytesInOutput": 8765 }, - "node_modules/shiki/dist/themes/monokai.mjs": { - "bytesInOutput": 7496 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shaderlab.mjs": { + "bytesInOutput": 6279 }, - "node_modules/shiki/dist/themes/night-owl.mjs": { - "bytesInOutput": 27505 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellsession.mjs": { + "bytesInOutput": 726 }, - "node_modules/shiki/dist/themes/nord.mjs": { - "bytesInOutput": 25852 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/smalltalk.mjs": { + "bytesInOutput": 4240 }, - "node_modules/shiki/dist/themes/one-dark-pro.mjs": { - "bytesInOutput": 31710 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/solidity.mjs": { + "bytesInOutput": 16265 }, - "node_modules/shiki/dist/themes/one-light.mjs": { - "bytesInOutput": 24017 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/soy.mjs": { + "bytesInOutput": 6900 }, - "node_modules/shiki/dist/themes/poimandres.mjs": { - "bytesInOutput": 32847 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/turtle.mjs": { + "bytesInOutput": 3747 }, - "node_modules/shiki/dist/themes/red.mjs": { - "bytesInOutput": 5924 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sparql.mjs": { + "bytesInOutput": 1518 }, - "node_modules/shiki/dist/themes/rose-pine.mjs": { - "bytesInOutput": 21248 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/splunk.mjs": { + "bytesInOutput": 3954 }, - "node_modules/shiki/dist/themes/rose-pine-dawn.mjs": { - "bytesInOutput": 21259 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ssh-config.mjs": { + "bytesInOutput": 3644 }, - "node_modules/shiki/dist/themes/rose-pine-moon.mjs": { - "bytesInOutput": 21258 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stata.mjs": { + "bytesInOutput": 61017 }, - "node_modules/shiki/dist/themes/slack-dark.mjs": { - "bytesInOutput": 8716 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stylus.mjs": { + "bytesInOutput": 31594 }, - "node_modules/shiki/dist/themes/slack-ochin.mjs": { - "bytesInOutput": 9120 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/svelte.mjs": { + "bytesInOutput": 16796 }, - "node_modules/shiki/dist/themes/snazzy-light.mjs": { - "bytesInOutput": 19778 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/swift.mjs": { + "bytesInOutput": 91029 }, - "node_modules/shiki/dist/themes/solarized-dark.mjs": { - "bytesInOutput": 6542 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/system-verilog.mjs": { + "bytesInOutput": 26809 }, - "node_modules/shiki/dist/themes/solarized-light.mjs": { - "bytesInOutput": 6178 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/systemd.mjs": { + "bytesInOutput": 8039 }, - "node_modules/shiki/dist/themes/synthwave-84.mjs": { - "bytesInOutput": 13471 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/talonscript.mjs": { + "bytesInOutput": 6741 }, - "node_modules/shiki/dist/themes/tokyo-night.mjs": { - "bytesInOutput": 32919 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tasl.mjs": { + "bytesInOutput": 3426 }, - "node_modules/shiki/dist/themes/vesper.mjs": { - "bytesInOutput": 12300 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tcl.mjs": { + "bytesInOutput": 5053 }, - "node_modules/shiki/dist/themes/vitesse-black.mjs": { - "bytesInOutput": 13064 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/templ.mjs": { + "bytesInOutput": 23920 }, - "node_modules/shiki/dist/themes/vitesse-dark.mjs": { - "bytesInOutput": 13146 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/terraform.mjs": { + "bytesInOutput": 13411 }, - "node_modules/shiki/dist/themes/vitesse-light.mjs": { - "bytesInOutput": 13003 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/toml.mjs": { + "bytesInOutput": 6569 }, - "node_modules/boolbase/index.js": { - "bytesInOutput": 97 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-css.mjs": { + "bytesInOutput": 1913 }, - "node_modules/picocolors/picocolors.browser.js": { - "bytesInOutput": 374 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-glsl.mjs": { + "bytesInOutput": 1793 }, - "(disabled):node_modules/postcss/lib/terminal-highlight": { - "bytesInOutput": 18 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-html.mjs": { + "bytesInOutput": 2110 }, - "node_modules/postcss/lib/css-syntax-error.js": { - "bytesInOutput": 1340 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-sql.mjs": { + "bytesInOutput": 1691 }, - "node_modules/postcss/lib/symbols.js": { - "bytesInOutput": 100 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-xml.mjs": { + "bytesInOutput": 1249 }, - "node_modules/postcss/lib/stringifier.js": { - "bytesInOutput": 4284 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ts-tags.mjs": { + "bytesInOutput": 405 }, - "node_modules/postcss/lib/stringify.js": { - "bytesInOutput": 116 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsv.mjs": { + "bytesInOutput": 775 }, - "node_modules/postcss/lib/node.js": { - "bytesInOutput": 4190 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/twig.mjs": { + "bytesInOutput": 22404 }, - "node_modules/postcss/lib/declaration.js": { - "bytesInOutput": 299 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typespec.mjs": { + "bytesInOutput": 28225 }, - "(disabled):node_modules/source-map-js/source-map.js": { - "bytesInOutput": 18 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typst.mjs": { + "bytesInOutput": 8590 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-2eac56ff.js": { - "bytesInOutput": 2150 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/v.mjs": { + "bytesInOutput": 13774 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-23dbec7b.js": { - "bytesInOutput": 4248 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vala.mjs": { + "bytesInOutput": 3440 }, - "node-modules-polyfills:path": { - "bytesInOutput": 283 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vb.mjs": { + "bytesInOutput": 6298 }, - "node-modules-polyfills-commonjs:path": { - "bytesInOutput": 261 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/verilog.mjs": { + "bytesInOutput": 5973 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-924bb2e1.js": { - "bytesInOutput": 2380 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vhdl.mjs": { + "bytesInOutput": 23820 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-b04e620d.js": { - "bytesInOutput": 1129 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/viml.mjs": { + "bytesInOutput": 21054 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-5decc758.js": { - "bytesInOutput": 2153 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown-vue.mjs": { + "bytesInOutput": 772 }, - "node-modules-polyfills:url": { - "bytesInOutput": 15649 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-directives.mjs": { + "bytesInOutput": 432 }, - "node-modules-polyfills-commonjs:url": { - "bytesInOutput": 166 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-interpolations.mjs": { + "bytesInOutput": 415 }, - "node_modules/nanoid/non-secure/index.cjs": { - "bytesInOutput": 294 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs": { + "bytesInOutput": 910 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-4bd36a8f.js": { - "bytesInOutput": 5598 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue.mjs": { + "bytesInOutput": 18938 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-b4205b57.js": { - "bytesInOutput": 14199 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-html.mjs": { + "bytesInOutput": 8521 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-ce0fbc82.js": { - "bytesInOutput": 828 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vyper.mjs": { + "bytesInOutput": 78266 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-4ccc3a29.js": { - "bytesInOutput": 27432 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wasm.mjs": { + "bytesInOutput": 15963 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-44e51b61.js": { - "bytesInOutput": 63340 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wenyan.mjs": { + "bytesInOutput": 3034 }, - "node_modules/@jspm/core/nodelibs/browser/assert.js": { - "bytesInOutput": 39577 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wgsl.mjs": { + "bytesInOutput": 6524 }, - "node_modules/@jspm/core/nodelibs/browser/util.js": { - "bytesInOutput": 604 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wikitext.mjs": { + "bytesInOutput": 56660 }, - "node_modules/@jspm/core/nodelibs/browser/path.js": { - "bytesInOutput": 313 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wolfram.mjs": { + "bytesInOutput": 268631 }, - "node_modules/@jspm/core/nodelibs/browser/events.js": { - "bytesInOutput": 1032 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xsl.mjs": { + "bytesInOutput": 1367 }, - "node_modules/@jspm/core/nodelibs/browser/chunk-6c718bbe.js": { - "bytesInOutput": 1176 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zenscript.mjs": { + "bytesInOutput": 4431 }, - "node_modules/@jspm/core/nodelibs/browser/stream.js": { - "bytesInOutput": 463 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zig.mjs": { + "bytesInOutput": 5499 }, - "node_modules/@jspm/core/nodelibs/browser/url.js": { - "bytesInOutput": 15661 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/andromeeda.mjs": { + "bytesInOutput": 8889 }, - "node_modules/@jspm/core/nodelibs/browser/buffer.js": { - "bytesInOutput": 27807 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/aurora-x.mjs": { + "bytesInOutput": 13687 }, - "node-modules-polyfills:fs": { - "bytesInOutput": 65289 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/ayu-dark.mjs": { + "bytesInOutput": 14977 }, - "node-modules-polyfills-commonjs:fs": { - "bytesInOutput": 1646 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs": { + "bytesInOutput": 45646 }, - "node_modules/postcss/lib/previous-map.js": { - "bytesInOutput": 2322 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-latte.mjs": { + "bytesInOutput": 45642 }, - "node_modules/postcss/lib/input.js": { - "bytesInOutput": 2954 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs": { + "bytesInOutput": 45649 }, - "node_modules/postcss/lib/map-generator.js": { - "bytesInOutput": 5678 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs": { + "bytesInOutput": 45641 }, - "node_modules/postcss/lib/comment.js": { - "bytesInOutput": 142 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dark-plus.mjs": { + "bytesInOutput": 9125 }, - "node_modules/postcss/lib/container.js": { - "bytesInOutput": 5338 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula.mjs": { + "bytesInOutput": 21094 }, - "node_modules/postcss/lib/document.js": { - "bytesInOutput": 296 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula-soft.mjs": { + "bytesInOutput": 21104 }, - "node_modules/postcss/lib/warn-once.js": { - "bytesInOutput": 147 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-dark.mjs": { + "bytesInOutput": 53773 }, - "node_modules/postcss/lib/warning.js": { - "bytesInOutput": 476 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-light.mjs": { + "bytesInOutput": 53776 }, - "node_modules/postcss/lib/result.js": { - "bytesInOutput": 476 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark.mjs": { + "bytesInOutput": 11433 }, - "node_modules/postcss/lib/tokenize.js": { - "bytesInOutput": 2091 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-default.mjs": { + "bytesInOutput": 14463 }, - "node_modules/postcss/lib/at-rule.js": { - "bytesInOutput": 315 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs": { + "bytesInOutput": 14461 }, - "node_modules/postcss/lib/root.js": { - "bytesInOutput": 683 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs": { + "bytesInOutput": 14623 }, - "node_modules/postcss/lib/list.js": { - "bytesInOutput": 438 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light.mjs": { + "bytesInOutput": 11212 }, - "node_modules/postcss/lib/rule.js": { - "bytesInOutput": 382 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-default.mjs": { + "bytesInOutput": 14184 }, - "node_modules/postcss/lib/parser.js": { - "bytesInOutput": 7309 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs": { + "bytesInOutput": 14303 }, - "node_modules/postcss/lib/parse.js": { - "bytesInOutput": 205 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/houston.mjs": { + "bytesInOutput": 35450 }, - "node_modules/postcss/lib/lazy-result.js": { - "bytesInOutput": 6464 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs": { + "bytesInOutput": 17155 }, - "node_modules/postcss/lib/no-work-result.js": { - "bytesInOutput": 1267 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs": { + "bytesInOutput": 17154 }, - "node_modules/postcss/lib/processor.js": { - "bytesInOutput": 775 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-wave.mjs": { + "bytesInOutput": 17151 }, - "node_modules/postcss/lib/fromJSON.js": { - "bytesInOutput": 686 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/laserwave.mjs": { + "bytesInOutput": 11527 }, - "node_modules/postcss/lib/postcss.js": { - "bytesInOutput": 1298 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/light-plus.mjs": { + "bytesInOutput": 9969 }, - "node_modules/postcss-selector-parser/dist/util/unesc.js": { - "bytesInOutput": 672 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme.mjs": { + "bytesInOutput": 18643 }, - "node_modules/postcss-selector-parser/dist/util/getProp.js": { - "bytesInOutput": 251 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-darker.mjs": { + "bytesInOutput": 18657 }, - "node_modules/postcss-selector-parser/dist/util/ensureObject.js": { - "bytesInOutput": 243 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-lighter.mjs": { + "bytesInOutput": 18662 }, - "node_modules/postcss-selector-parser/dist/util/stripComments.js": { - "bytesInOutput": 254 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-ocean.mjs": { + "bytesInOutput": 18657 }, - "node_modules/postcss-selector-parser/dist/util/index.js": { - "bytesInOutput": 321 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-palenight.mjs": { + "bytesInOutput": 18663 }, - "node_modules/postcss-selector-parser/dist/selectors/node.js": { - "bytesInOutput": 2639 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-dark.mjs": { + "bytesInOutput": 6319 }, - "node_modules/postcss-selector-parser/dist/selectors/types.js": { - "bytesInOutput": 534 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-light.mjs": { + "bytesInOutput": 6997 }, - "node_modules/postcss-selector-parser/dist/selectors/container.js": { - "bytesInOutput": 5796 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/monokai.mjs": { + "bytesInOutput": 7912 }, - "node_modules/postcss-selector-parser/dist/selectors/root.js": { - "bytesInOutput": 1073 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/night-owl.mjs": { + "bytesInOutput": 28941 }, - "node_modules/postcss-selector-parser/dist/selectors/selector.js": { - "bytesInOutput": 516 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/nord.mjs": { + "bytesInOutput": 26751 }, - "node_modules/cssesc/cssesc.js": { - "bytesInOutput": 1177 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-dark-pro.mjs": { + "bytesInOutput": 33770 }, - "node_modules/postcss-selector-parser/dist/selectors/className.js": { - "bytesInOutput": 1167 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-light.mjs": { + "bytesInOutput": 25326 }, - "node_modules/postcss-selector-parser/dist/selectors/comment.js": { - "bytesInOutput": 515 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/plastic.mjs": { + "bytesInOutput": 9323 }, - "node_modules/postcss-selector-parser/dist/selectors/id.js": { - "bytesInOutput": 603 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/poimandres.mjs": { + "bytesInOutput": 33522 }, - "node_modules/postcss-selector-parser/dist/selectors/namespace.js": { - "bytesInOutput": 1528 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/red.mjs": { + "bytesInOutput": 6290 }, - "node_modules/postcss-selector-parser/dist/selectors/tag.js": { - "bytesInOutput": 511 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine.mjs": { + "bytesInOutput": 21789 }, - "node_modules/postcss-selector-parser/dist/selectors/string.js": { - "bytesInOutput": 514 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs": { + "bytesInOutput": 21800 }, - "node_modules/postcss-selector-parser/dist/selectors/pseudo.js": { - "bytesInOutput": 701 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-moon.mjs": { + "bytesInOutput": 21799 }, - "node_modules/util-deprecate/browser.js": { - "bytesInOutput": 420 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-dark.mjs": { + "bytesInOutput": 9145 }, - "node_modules/postcss-selector-parser/dist/selectors/attribute.js": { - "bytesInOutput": 6057 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-ochin.mjs": { + "bytesInOutput": 9459 }, - "node_modules/postcss-selector-parser/dist/selectors/universal.js": { - "bytesInOutput": 529 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/snazzy-light.mjs": { + "bytesInOutput": 20801 }, - "node_modules/postcss-selector-parser/dist/selectors/combinator.js": { - "bytesInOutput": 518 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-dark.mjs": { + "bytesInOutput": 6874 }, - "node_modules/postcss-selector-parser/dist/selectors/nesting.js": { - "bytesInOutput": 527 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-light.mjs": { + "bytesInOutput": 6508 }, - "node_modules/postcss-selector-parser/dist/sortAscending.js": { - "bytesInOutput": 144 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/synthwave-84.mjs": { + "bytesInOutput": 14064 }, - "node_modules/postcss-selector-parser/dist/tokenTypes.js": { - "bytesInOutput": 1138 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/tokyo-night.mjs": { + "bytesInOutput": 34391 }, - "node_modules/postcss-selector-parser/dist/tokenize.js": { - "bytesInOutput": 3203 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vesper.mjs": { + "bytesInOutput": 12691 }, - "node_modules/postcss-selector-parser/dist/parser.js": { - "bytesInOutput": 18158 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-black.mjs": { + "bytesInOutput": 13705 }, - "node_modules/postcss-selector-parser/dist/processor.js": { - "bytesInOutput": 1798 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-dark.mjs": { + "bytesInOutput": 13787 }, - "node_modules/postcss-selector-parser/dist/selectors/constructors.js": { - "bytesInOutput": 1086 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-light.mjs": { + "bytesInOutput": 13644 }, - "node_modules/postcss-selector-parser/dist/selectors/guards.js": { - "bytesInOutput": 1562 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs": { + "bytesInOutput": 622300 }, - "node_modules/postcss-selector-parser/dist/selectors/index.js": { - "bytesInOutput": 410 + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm.mjs": { + "bytesInOutput": 100 }, - "node_modules/postcss-selector-parser/dist/index.js": { - "bytesInOutput": 860 + "src/main.ts": { + "bytesInOutput": 2585 }, - "node_modules/postcss-nested/index.js": { - "bytesInOutput": 3385 + "src/CodeBlock.ts": { + "bytesInOutput": 986 }, - "src/main.ts": { - "bytesInOutput": 4191 + "src/codemirror/Cm6_ViewPlugin.ts": { + "bytesInOutput": 2708 }, - "node_modules/shiki/dist/langs.mjs": { - "bytesInOutput": 17441 + "src/codemirror/Cm6_Util.ts": { + "bytesInOutput": 323 }, - "node_modules/shiki/dist/chunks/wasm-dynamic.mjs": { - "bytesInOutput": 76 + "src/settings/Settings.ts": { + "bytesInOutput": 141 }, - "node_modules/shiki/dist/themes.mjs": { - "bytesInOutput": 5082 + "src/settings/SettingsTab.ts": { + "bytesInOutput": 3859 }, - "node_modules/@shikijs/core/dist/types.mjs": { - "bytesInOutput": 149 + "src/settings/StringSelectModal.ts": { + "bytesInOutput": 216 }, - "node_modules/@shikijs/core/dist/textmate.mjs": { - "bytesInOutput": 45598 + "node_modules/@shikijs/types/dist/index.mjs": { + "bytesInOutput": 76 }, "node_modules/@shikijs/core/dist/index.mjs": { - "bytesInOutput": 66752 - }, - "node_modules/shiki/dist/bundle-full.mjs": { - "bytesInOutput": 181 + "bytesInOutput": 30952 }, - "node_modules/shiki/dist/index.mjs": { - "bytesInOutput": 0 + "node_modules/@shikijs/vscode-textmate/dist/index.js": { + "bytesInOutput": 44157 }, "node_modules/html-void-elements/index.js": { "bytesInOutput": 162 }, "node_modules/property-information/lib/util/schema.js": { - "bytesInOutput": 154 + "bytesInOutput": 156 }, "node_modules/property-information/lib/util/merge.js": { - "bytesInOutput": 136 + "bytesInOutput": 121 }, "node_modules/property-information/lib/normalize.js": { "bytesInOutput": 38 }, "node_modules/property-information/lib/util/info.js": { - "bytesInOutput": 353 + "bytesInOutput": 406 }, "node_modules/property-information/lib/util/types.js": { "bytesInOutput": 257 @@ -9846,13 +14001,10 @@ "bytesInOutput": 249 }, "node_modules/property-information/lib/util/create.js": { - "bytesInOutput": 321 - }, - "node_modules/property-information/lib/xlink.js": { - "bytesInOutput": 208 + "bytesInOutput": 271 }, - "node_modules/property-information/lib/xml.js": { - "bytesInOutput": 132 + "node_modules/property-information/lib/aria.js": { + "bytesInOutput": 912 }, "node_modules/property-information/lib/util/case-sensitive-transform.js": { "bytesInOutput": 38 @@ -9860,18 +14012,21 @@ "node_modules/property-information/lib/util/case-insensitive-transform.js": { "bytesInOutput": 46 }, - "node_modules/property-information/lib/xmlns.js": { - "bytesInOutput": 118 - }, - "node_modules/property-information/lib/aria.js": { - "bytesInOutput": 912 - }, "node_modules/property-information/lib/html.js": { "bytesInOutput": 4246 }, "node_modules/property-information/lib/svg.js": { "bytesInOutput": 10134 }, + "node_modules/property-information/lib/xlink.js": { + "bytesInOutput": 208 + }, + "node_modules/property-information/lib/xmlns.js": { + "bytesInOutput": 118 + }, + "node_modules/property-information/lib/xml.js": { + "bytesInOutput": 132 + }, "node_modules/property-information/lib/find.js": { "bytesInOutput": 500 }, @@ -9939,10 +14094,10 @@ "bytesInOutput": 2245 }, "node_modules/hast-util-to-html/lib/omission/opening.js": { - "bytesInOutput": 944 + "bytesInOutput": 948 }, "node_modules/hast-util-to-html/lib/handle/element.js": { - "bytesInOutput": 2274 + "bytesInOutput": 2301 }, "node_modules/hast-util-to-html/lib/handle/text.js": { "bytesInOutput": 193 @@ -9962,6 +14117,24 @@ "node_modules/hast-util-to-html/index.js": { "bytesInOutput": 0 }, + "node_modules/shiki/dist/bundle-full.mjs": { + "bytesInOutput": 262 + }, + "node_modules/shiki/dist/langs.mjs": { + "bytesInOutput": 18553 + }, + "node_modules/shiki/dist/themes.mjs": { + "bytesInOutput": 6756 + }, + "node_modules/@shikijs/engine-oniguruma/dist/index.mjs": { + "bytesInOutput": 6825 + }, + "node_modules/shiki/dist/index.mjs": { + "bytesInOutput": 0 + }, + "src/PrismPlugin.ts": { + "bytesInOutput": 909 + }, "node_modules/unist-util-is/lib/index.js": { "bytesInOutput": 764 }, @@ -9975,13 +14148,13 @@ "bytesInOutput": 771 }, "node_modules/css-selector-parser/dist/mjs/syntax-definitions.js": { - "bytesInOutput": 3185 + "bytesInOutput": 6346 }, "node_modules/css-selector-parser/dist/mjs/utils.js": { "bytesInOutput": 385 }, "node_modules/css-selector-parser/dist/mjs/parser.js": { - "bytesInOutput": 8873 + "bytesInOutput": 9554 }, "node_modules/css-selector-parser/dist/mjs/index.js": { "bytesInOutput": 0 @@ -10047,16 +14220,16 @@ "bytesInOutput": 32 }, "node_modules/hast-util-select/lib/pseudo.js": { - "bytesInOutput": 3758 + "bytesInOutput": 3782 }, "node_modules/hast-util-select/lib/test.js": { "bytesInOutput": 388 }, "node_modules/hast-util-select/lib/walk.js": { - "bytesInOutput": 1801 + "bytesInOutput": 1807 }, "node_modules/hast-util-select/lib/index.js": { - "bytesInOutput": 365 + "bytesInOutput": 367 }, "node_modules/hast-util-select/index.js": { "bytesInOutput": 0 @@ -10068,7 +14241,7 @@ "bytesInOutput": 0 }, "node_modules/hastscript/lib/create-h.js": { - "bytesInOutput": 2062 + "bytesInOutput": 1969 }, "node_modules/hastscript/lib/svg-case-sensitive-tag-names.js": { "bytesInOutput": 560 @@ -10083,19 +14256,19 @@ "bytesInOutput": 574 }, "node_modules/@expressive-code/core/dist/index.js": { - "bytesInOutput": 84548 + "bytesInOutput": 85751 }, "node_modules/@ctrl/tinycolor/dist/module/util.js": { - "bytesInOutput": 608 + "bytesInOutput": 612 }, "node_modules/@ctrl/tinycolor/dist/module/conversion.js": { - "bytesInOutput": 2350 + "bytesInOutput": 2352 }, "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js": { "bytesInOutput": 2959 }, "node_modules/@ctrl/tinycolor/dist/module/format-input.js": { - "bytesInOutput": 2304 + "bytesInOutput": 2310 }, "node_modules/@ctrl/tinycolor/dist/module/index.js": { "bytesInOutput": 5213 @@ -10103,59 +14276,62 @@ "node_modules/@ctrl/tinycolor/dist/module/readability.js": { "bytesInOutput": 151 }, - "node_modules/@expressive-code/plugin-shiki/dist/index.js": { - "bytesInOutput": 2889 + "src/themes/ObsidianTheme.ts": { + "bytesInOutput": 14123 }, - "node_modules/@expressive-code/core/dist/hast.js": { - "bytesInOutput": 1060 + "src/themes/ThemeMapper.ts": { + "bytesInOutput": 1532 }, - "node_modules/@expressive-code/plugin-text-markers/dist/index.js": { - "bytesInOutput": 11243 + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs": { + "bytesInOutput": 18382 }, - "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js": { - "bytesInOutput": 5345 + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs": { + "bytesInOutput": 6033 }, - "node_modules/@expressive-code/plugin-line-numbers/dist/index.js": { - "bytesInOutput": 1184 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types/dist/index.mjs": { + "bytesInOutput": 76 }, - "node_modules/@expressive-code/plugin-frames/dist/index.js": { - "bytesInOutput": 16262 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs": { + "bytesInOutput": 30259 }, - "src/themes/ObsidianTheme.ts": { - "bytesInOutput": 14123 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs": { + "bytesInOutput": 6887 }, - "src/themes/ThemeMapper.ts": { - "bytesInOutput": 1254 + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs": { + "bytesInOutput": 165 }, - "src/CodeBlock.ts": { - "bytesInOutput": 1030 + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/bundle-full.mjs": { + "bytesInOutput": 241 }, - "src/codemirror/Cm6_ViewPlugin.ts": { - "bytesInOutput": 2280 + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/index.mjs": { + "bytesInOutput": 0 }, - "src/codemirror/Cm6_Util.ts": { - "bytesInOutput": 323 + "node_modules/@expressive-code/plugin-shiki/dist/index.js": { + "bytesInOutput": 8333 }, - "src/settings/Settings.ts": { - "bytesInOutput": 96 + "node_modules/@expressive-code/core/dist/hast.js": { + "bytesInOutput": 1068 }, - "src/settings/SettingsTab.ts": { - "bytesInOutput": 1923 + "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js": { + "bytesInOutput": 5367 }, - "src/settings/StringSelectModal.ts": { - "bytesInOutput": 216 + "node_modules/@expressive-code/plugin-text-markers/dist/index.js": { + "bytesInOutput": 11273 }, - "src/PrismPlugin.ts": { - "bytesInOutput": 909 + "node_modules/@expressive-code/plugin-line-numbers/dist/index.js": { + "bytesInOutput": 1211 }, - "src/LoadedLanguage.ts": { - "bytesInOutput": 465 + "node_modules/@expressive-code/plugin-frames/dist/index.js": { + "bytesInOutput": 16379 }, "src/themes/ECTheme.ts": { "bytesInOutput": 3662 + }, + "src/Highlighter.ts": { + "bytesInOutput": 4050 } }, - "bytes": 8944946 + "bytes": 19037804 } } } \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..2e5cad9 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,6364 @@ +{ + "name": "shiki-highlighter", + "version": "0.5.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "shiki-highlighter", + "version": "0.5.0", + "license": "MIT", + "devDependencies": { + "@codemirror/language": "^6.10.6", + "@codemirror/state": "^6.4.1", + "@codemirror/view": "^6.35.0", + "@eslint/js": "^9.16.0", + "@expressive-code/core": "^0.38.3", + "@expressive-code/plugin-collapsible-sections": "^0.38.3", + "@expressive-code/plugin-frames": "^0.38.3", + "@expressive-code/plugin-line-numbers": "^0.38.3", + "@expressive-code/plugin-shiki": "^0.38.3", + "@expressive-code/plugin-text-markers": "^0.38.3", + "@happy-dom/global-registrator": "^17.4.7", + "@lemons_dev/parsinom": "^0.0.12", + "@lezer/common": "^1.2.3", + "@shikijs/transformers": "^3.4.2", + "@tsconfig/svelte": "^5.0.4", + "@types/bun": "^1.1.14", + "@types/eslint__js": "^8.42.3", + "builtin-modules": "^4.0.0", + "bun": "^1.2.13", + "esbuild": "^0.25.4", + "esbuild-plugin-copy-watch": "^2.3.1", + "esbuild-plugins-node-modules-polyfill": "^1.6.8", + "eslint": "^9.16.0", + "eslint-plugin-no-relative-import-paths": "^1.5.5", + "eslint-plugin-only-warn": "^1.1.0", + "itertools-ts": "^1.27.1", + "obsidian": "latest", + "prettier": "^3.4.2", + "shiki": "^3.4.2", + "string-argv": "^0.3.2", + "tslib": "^2.8.1", + "typescript": "^5.7.2", + "typescript-eslint": "^8.17.0" + } + }, + "node_modules/@codemirror/language": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.11.0.tgz", + "integrity": "sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ==", + "dev": true, + "dependencies": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.23.0", + "@lezer/common": "^1.1.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0", + "style-mod": "^4.0.0" + } + }, + "node_modules/@codemirror/state": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.5.2.tgz", + "integrity": "sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==", + "dev": true, + "dependencies": { + "@marijn/find-cluster-break": "^1.0.0" + } + }, + "node_modules/@codemirror/view": { + "version": "6.36.8", + "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.36.8.tgz", + "integrity": "sha512-yoRo4f+FdnD01fFt4XpfpMCcCAo9QvZOtbrXExn4SqzH32YC6LgzqxfLZw/r6Ge65xyY03mK/UfUqrVw1gFiFg==", + "dev": true, + "dependencies": { + "@codemirror/state": "^6.5.0", + "style-mod": "^4.1.0", + "w3c-keyname": "^2.2.4" + } + }, + "node_modules/@ctrl/tinycolor": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-4.1.0.tgz", + "integrity": "sha512-WyOx8cJQ+FQus4Mm4uPIZA64gbk3Wxh0so5Lcii0aJifqwoVOlfFtorjLE0Hen4OYyHZMXDWqMmaQemBhgxFRQ==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.4.tgz", + "integrity": "sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.4.tgz", + "integrity": "sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.4.tgz", + "integrity": "sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.4.tgz", + "integrity": "sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.4.tgz", + "integrity": "sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.4.tgz", + "integrity": "sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.4.tgz", + "integrity": "sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.4.tgz", + "integrity": "sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.4.tgz", + "integrity": "sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.4.tgz", + "integrity": "sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.4.tgz", + "integrity": "sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.4.tgz", + "integrity": "sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.4.tgz", + "integrity": "sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.4.tgz", + "integrity": "sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.4.tgz", + "integrity": "sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.4.tgz", + "integrity": "sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.4.tgz", + "integrity": "sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.4.tgz", + "integrity": "sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.4.tgz", + "integrity": "sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.4.tgz", + "integrity": "sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.4.tgz", + "integrity": "sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.4.tgz", + "integrity": "sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.4.tgz", + "integrity": "sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.4.tgz", + "integrity": "sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.4.tgz", + "integrity": "sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", + "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", + "dev": true, + "dependencies": { + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.2.tgz", + "integrity": "sha512-+GPzk8PlG0sPpzdU5ZvIRMPidzAnZDl/s9L+y13iodqvb8leL53bTannOrQ/Im7UkpsmFU5Ily5U60LWixnmLg==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz", + "integrity": "sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "9.27.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.27.0.tgz", + "integrity": "sha512-G5JD9Tu5HJEu4z2Uo4aHY2sLV64B7CDMXxFzqzjl3NKd6RVzSXNoE80jk7Y0lJkTTkjiIhBAqmlYwjuBY3tvpA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.1.tgz", + "integrity": "sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==", + "dev": true, + "dependencies": { + "@eslint/core": "^0.14.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@expressive-code/core": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/core/-/core-0.38.3.tgz", + "integrity": "sha512-s0/OtdRpBONwcn23O8nVwDNQqpBGKscysejkeBkwlIeHRLZWgiTVrusT5Idrdz1d8cW5wRk9iGsAIQmwDPXgJg==", + "dev": true, + "dependencies": { + "@ctrl/tinycolor": "^4.0.4", + "hast-util-select": "^6.0.2", + "hast-util-to-html": "^9.0.1", + "hast-util-to-text": "^4.0.1", + "hastscript": "^9.0.0", + "postcss": "^8.4.38", + "postcss-nested": "^6.0.1", + "unist-util-visit": "^5.0.0", + "unist-util-visit-parents": "^6.0.1" + } + }, + "node_modules/@expressive-code/plugin-collapsible-sections": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-collapsible-sections/-/plugin-collapsible-sections-0.38.3.tgz", + "integrity": "sha512-0r1k4k5S7GBLIRBYFkMKeIyD9iYcwM+LBrwoxZtd9TtBYJ3ziWBleFlCoOA3fo/Mj2YcaN7ZRIscMzYY9JBWrA==", + "dev": true, + "dependencies": { + "@expressive-code/core": "^0.38.3" + } + }, + "node_modules/@expressive-code/plugin-frames": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-frames/-/plugin-frames-0.38.3.tgz", + "integrity": "sha512-qL2oC6FplmHNQfZ8ZkTR64/wKo9x0c8uP2WDftR/ydwN/yhe1ed7ZWYb8r3dezxsls+tDokCnN4zYR594jbpvg==", + "dev": true, + "dependencies": { + "@expressive-code/core": "^0.38.3" + } + }, + "node_modules/@expressive-code/plugin-line-numbers": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-line-numbers/-/plugin-line-numbers-0.38.3.tgz", + "integrity": "sha512-QbK9NL44ST9w5ANVEu0a7fkjlq+fXgxyPqiSyFC4Nw/sAXd0MUwT1C8V0qlve4pZYLz53CR9tn4JQQbR0Z1tOg==", + "dev": true, + "dependencies": { + "@expressive-code/core": "^0.38.3" + } + }, + "node_modules/@expressive-code/plugin-shiki": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-shiki/-/plugin-shiki-0.38.3.tgz", + "integrity": "sha512-kqHnglZeesqG3UKrb6e9Fq5W36AZ05Y9tCREmSN2lw8LVTqENIeCIkLDdWtQ5VoHlKqwUEQFTVlRehdwoY7Gmw==", + "dev": true, + "dependencies": { + "@expressive-code/core": "^0.38.3", + "shiki": "^1.22.2" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.29.2.tgz", + "integrity": "sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/engine-javascript": "1.29.2", + "@shikijs/engine-oniguruma": "1.29.2", + "@shikijs/types": "1.29.2", + "@shikijs/vscode-textmate": "^10.0.1", + "@types/hast": "^3.0.4", + "hast-util-to-html": "^9.0.4" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.29.2.tgz", + "integrity": "sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "1.29.2", + "@shikijs/vscode-textmate": "^10.0.1", + "oniguruma-to-es": "^2.2.0" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz", + "integrity": "sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "1.29.2", + "@shikijs/vscode-textmate": "^10.0.1" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.2.tgz", + "integrity": "sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "1.29.2" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.2.tgz", + "integrity": "sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "1.29.2" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.29.2.tgz", + "integrity": "sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/vscode-textmate": "^10.0.1", + "@types/hast": "^3.0.4" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/oniguruma-to-es": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-2.3.0.tgz", + "integrity": "sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex-xs": "^1.0.0", + "regex": "^5.1.1", + "regex-recursion": "^5.1.1" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/regex": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/regex/-/regex-5.1.1.tgz", + "integrity": "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/regex-recursion": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.1.1.tgz", + "integrity": "sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "regex": "^5.1.1", + "regex-utilities": "^2.3.0" + } + }, + "node_modules/@expressive-code/plugin-shiki/node_modules/shiki": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.29.2.tgz", + "integrity": "sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/core": "1.29.2", + "@shikijs/engine-javascript": "1.29.2", + "@shikijs/engine-oniguruma": "1.29.2", + "@shikijs/langs": "1.29.2", + "@shikijs/themes": "1.29.2", + "@shikijs/types": "1.29.2", + "@shikijs/vscode-textmate": "^10.0.1", + "@types/hast": "^3.0.4" + } + }, + "node_modules/@expressive-code/plugin-text-markers": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-text-markers/-/plugin-text-markers-0.38.3.tgz", + "integrity": "sha512-dPK3+BVGTbTmGQGU3Fkj3jZ3OltWUAlxetMHI6limUGCWBCucZiwoZeFM/WmqQa71GyKRzhBT+iEov6kkz2xVA==", + "dev": true, + "dependencies": { + "@expressive-code/core": "^0.38.3" + } + }, + "node_modules/@happy-dom/global-registrator": { + "version": "17.4.7", + "resolved": "https://registry.npmjs.org/@happy-dom/global-registrator/-/global-registrator-17.4.7.tgz", + "integrity": "sha512-BsKWeI115LT0J/lKJ4Kz638oy4zO+nC4TLh3cYPY6BBypttPZg8Fg+EXL2If4KHMSy3Wx+yRiM+68Hr1iGgiWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "happy-dom": "^17.4.7" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "dev": true, + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@jspm/core": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@jspm/core/-/core-2.1.0.tgz", + "integrity": "sha512-3sRl+pkyFY/kLmHl0cgHiFp2xEqErA8N3ECjMs7serSUBmoJ70lBa0PG5t0IM6WJgdZNyyI0R8YFfi5wM8+mzg==", + "dev": true + }, + "node_modules/@lemons_dev/parsinom": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@lemons_dev/parsinom/-/parsinom-0.0.12.tgz", + "integrity": "sha512-i6oUfQfhw4ZStScMpPHy8ZmLrkn29RX/uK1SBKSKPuH0w9vOFQjZ0O4ev1hdk0K/eU196mk9mAlI1bjbO4n4sQ==", + "dev": true + }, + "node_modules/@lezer/common": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.2.3.tgz", + "integrity": "sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==", + "dev": true + }, + "node_modules/@lezer/highlight": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.2.1.tgz", + "integrity": "sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA==", + "dev": true, + "dependencies": { + "@lezer/common": "^1.0.0" + } + }, + "node_modules/@lezer/lr": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-1.4.2.tgz", + "integrity": "sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==", + "dev": true, + "dependencies": { + "@lezer/common": "^1.0.0" + } + }, + "node_modules/@marijn/find-cluster-break": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@marijn/find-cluster-break/-/find-cluster-break-1.0.2.tgz", + "integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==", + "dev": true + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@oven/bun-darwin-aarch64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-darwin-aarch64/-/bun-darwin-aarch64-1.2.13.tgz", + "integrity": "sha512-AOU4O9jxRp2TXeqoEfOjEaUNZb3+SUPBN8TIEnUjpnyLWPoYJGCeNdQuCDcUkmF3MJEmEuJdyF1IeOITozpC6A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@oven/bun-darwin-x64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-darwin-x64/-/bun-darwin-x64-1.2.13.tgz", + "integrity": "sha512-kJ2iOvxY8uz5/nu+8zIjKf4LmRIHBH9pJJM2q+tA47U04Tod6k6rtntDOI8SdmRe2M5c87RfbadWdxhpYHFIWQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@oven/bun-darwin-x64-baseline": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-darwin-x64-baseline/-/bun-darwin-x64-baseline-1.2.13.tgz", + "integrity": "sha512-bZpIUOvx9np07AmH5MVXGYHWZ40m2vCpNV74fma6sCzBlssJclS2V3BZgO+lLvtUKSqnW3HAyJBGsRF34wPbNw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@oven/bun-linux-aarch64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-aarch64/-/bun-linux-aarch64-1.2.13.tgz", + "integrity": "sha512-hocSJmblX4CCjP1HpaM64I65erB+CONUCCwKzGGOfLGLobVi+vn/G56UaYWsje1y/Z7WlVaUSgKYVWl7EJ6T9g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oven/bun-linux-aarch64-musl": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-aarch64-musl/-/bun-linux-aarch64-musl-1.2.13.tgz", + "integrity": "sha512-P56m718KXeyu4Vq5fsESFktfu+0Us1jhu/ZzgHYFRYJcm/hjs6AUA/RJtUAifFy5PNAM5IJdrYl3xPsE8Wa+pg==", + "cpu": [ + "aarch64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oven/bun-linux-x64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64/-/bun-linux-x64-1.2.13.tgz", + "integrity": "sha512-pf8+Kn2GLrFKLcb8JSLM6Z147Af6L9GQODpnOHM4gvXQv6E/GwQg47/o+7f1XCfzib3fdzOTJlDPvvO1rnXOTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oven/bun-linux-x64-baseline": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-baseline/-/bun-linux-x64-baseline-1.2.13.tgz", + "integrity": "sha512-9n1ai2ejEpxEMqpbHQMWFyvacq3MYsB7gh5mxRlFwhNFPCWu/Sv6gyrO+q2vkOYgcEIGhJb6dqJ6L9vBNaL61A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oven/bun-linux-x64-musl": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-musl/-/bun-linux-x64-musl-1.2.13.tgz", + "integrity": "sha512-w5Ob+GM3Ww4yRA6f1N845o6wEvuwHSmipFUGaRaVp4UELrFnIV9G3pmrlBbYHFnWhk13o8Q7H1/4ZphOkCRJmQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oven/bun-linux-x64-musl-baseline": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-musl-baseline/-/bun-linux-x64-musl-baseline-1.2.13.tgz", + "integrity": "sha512-VI8hVdfqk0QmbAbyrsIdo2O95n3fkbt72E0h3Wu69cHD1iKJqRXG28R8QoHdehoLSJnKVzRTwsUzHp764nefWQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@oven/bun-windows-x64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-windows-x64/-/bun-windows-x64-1.2.13.tgz", + "integrity": "sha512-sArgbRmT7V3mUdNFaAdUcuJsuS+oeMDZLPWFSg0gtQZpRrURs9nPzEnZMmVCFo4+kPF9Tb5ujQT9uDySh6/qVg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@oven/bun-windows-x64-baseline": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-windows-x64-baseline/-/bun-windows-x64-baseline-1.2.13.tgz", + "integrity": "sha512-Aiezu99fOUJJpzGuylOJryd6w9Syg2TBigHeXV2+RJsouBzvAnIEYIBA94ZspRq1ulD26Wmkk8Ae+jZ4edk9GA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@shikijs/core": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.4.2.tgz", + "integrity": "sha512-AG8vnSi1W2pbgR2B911EfGqtLE9c4hQBYkv/x7Z+Kt0VxhgQKcW7UNDVYsu9YxwV6u+OJrvdJrMq6DNWoBjihQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.4.2", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4", + "hast-util-to-html": "^9.0.5" + } + }, + "node_modules/@shikijs/engine-javascript": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.4.2.tgz", + "integrity": "sha512-1/adJbSMBOkpScCE/SB6XkjJU17ANln3Wky7lOmrnpl+zBdQ1qXUJg2GXTYVHRq+2j3hd1DesmElTXYDgtfSOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.4.2", + "@shikijs/vscode-textmate": "^10.0.2", + "oniguruma-to-es": "^4.3.3" + } + }, + "node_modules/@shikijs/engine-oniguruma": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.4.2.tgz", + "integrity": "sha512-zcZKMnNndgRa3ORja6Iemsr3DrLtkX3cAF7lTJkdMB6v9alhlBsX9uNiCpqofNrXOvpA3h6lHcLJxgCIhVOU5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.4.2", + "@shikijs/vscode-textmate": "^10.0.2" + } + }, + "node_modules/@shikijs/langs": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.4.2.tgz", + "integrity": "sha512-H6azIAM+OXD98yztIfs/KH5H4PU39t+SREhmM8LaNXyUrqj2mx+zVkr8MWYqjceSjDw9I1jawm1WdFqU806rMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.4.2" + } + }, + "node_modules/@shikijs/themes": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.4.2.tgz", + "integrity": "sha512-qAEuAQh+brd8Jyej2UDDf+b4V2g1Rm8aBIdvt32XhDPrHvDkEnpb7Kzc9hSuHUxz0Iuflmq7elaDuQAP9bHIhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.4.2" + } + }, + "node_modules/@shikijs/transformers": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.4.2.tgz", + "integrity": "sha512-I5baLVi/ynLEOZoWSAMlACHNnG+yw5HDmse0oe+GW6U1u+ULdEB3UHiVWaHoJSSONV7tlcVxuaMy74sREDkSvg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/core": "3.4.2", + "@shikijs/types": "3.4.2" + } + }, + "node_modules/@shikijs/types": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.4.2.tgz", + "integrity": "sha512-zHC1l7L+eQlDXLnxvM9R91Efh2V4+rN3oMVS2swCBssbj2U/FBwybD1eeLaq8yl/iwT+zih8iUbTBCgGZOYlVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + } + }, + "node_modules/@shikijs/vscode-textmate": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tsconfig/svelte": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/svelte/-/svelte-5.0.4.tgz", + "integrity": "sha512-BV9NplVgLmSi4mwKzD8BD/NQ8erOY/nUE/GpgWe2ckx+wIQF5RyRirn/QsSSCPeulVpc3RA/iJt6DpfTIZps0Q==", + "dev": true + }, + "node_modules/@types/bun": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@types/bun/-/bun-1.2.13.tgz", + "integrity": "sha512-u6vXep/i9VBxoJl3GjZsl/BFIsvML8DfVDO0RYLEwtSZSp981kEO1V5NwRcO1CPJ7AmvpbnDCiMKo3JvbDEjAg==", + "dev": true, + "dependencies": { + "bun-types": "1.2.13" + } + }, + "node_modules/@types/codemirror": { + "version": "5.60.8", + "resolved": "https://registry.npmjs.org/@types/codemirror/-/codemirror-5.60.8.tgz", + "integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==", + "dev": true, + "dependencies": { + "@types/tern": "*" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint__js": { + "version": "8.42.3", + "resolved": "https://registry.npmjs.org/@types/eslint__js/-/eslint__js-8.42.3.tgz", + "integrity": "sha512-alfG737uhmPdnvkrLdZLcEKJ/B8s9Y4hrZ+YAdzUeoArBlSUERA2E87ROfOaS4jd/C45fzOoZzidLc1IPwLqOw==", + "dev": true, + "dependencies": { + "@types/eslint": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "dev": true + }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dev": true, + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "dev": true, + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/node": { + "version": "22.15.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.18.tgz", + "integrity": "sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg==", + "dev": true, + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/tern": { + "version": "0.23.9", + "resolved": "https://registry.npmjs.org/@types/tern/-/tern-0.23.9.tgz", + "integrity": "sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==", + "dev": true, + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.32.1.tgz", + "integrity": "sha512-6u6Plg9nP/J1GRpe/vcjjabo6Uc5YQPAMxsgQyGC/I0RuukiG1wIe3+Vtg3IrSCVJDmqK3j8adrtzXSENRtFgg==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.32.1", + "@typescript-eslint/type-utils": "8.32.1", + "@typescript-eslint/utils": "8.32.1", + "@typescript-eslint/visitor-keys": "8.32.1", + "graphemer": "^1.4.0", + "ignore": "^7.0.0", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", + "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.32.1.tgz", + "integrity": "sha512-LKMrmwCPoLhM45Z00O1ulb6jwyVr2kr3XJp+G+tSEZcbauNnScewcQwtJqXDhXeYPDEjZ8C1SjXm015CirEmGg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "8.32.1", + "@typescript-eslint/types": "8.32.1", + "@typescript-eslint/typescript-estree": "8.32.1", + "@typescript-eslint/visitor-keys": "8.32.1", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.32.1.tgz", + "integrity": "sha512-7IsIaIDeZn7kffk7qXC3o6Z4UblZJKV3UBpkvRNpr5NSyLji7tvTcvmnMNYuYLyh26mN8W723xpo3i4MlD33vA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.32.1", + "@typescript-eslint/visitor-keys": "8.32.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.32.1.tgz", + "integrity": "sha512-mv9YpQGA8iIsl5KyUPi+FGLm7+bA4fgXaeRcFKRDRwDMu4iwrSHeDPipwueNXhdIIZltwCJv+NkxftECbIZWfA==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "8.32.1", + "@typescript-eslint/utils": "8.32.1", + "debug": "^4.3.4", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz", + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.32.1.tgz", + "integrity": "sha512-Y3AP9EIfYwBb4kWGb+simvPaqQoT5oJuzzj9m0i6FCY6SPvlomY2Ei4UEMm7+FXtlNJbor80ximyslzaQF6xhg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.32.1", + "@typescript-eslint/visitor-keys": "8.32.1", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.32.1.tgz", + "integrity": "sha512-DsSFNIgLSrc89gpq1LJB7Hm1YpuhK086DRDJSNrewcGvYloWW1vZLHBTIvarKZDcAORIy/uWNx8Gad+4oMpkSA==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.7.0", + "@typescript-eslint/scope-manager": "8.32.1", + "@typescript-eslint/types": "8.32.1", + "@typescript-eslint/typescript-estree": "8.32.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz", + "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.32.1", + "eslint-visitor-keys": "^4.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/bcp-47-match": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/bcp-47-match/-/bcp-47-match-2.0.3.tgz", + "integrity": "sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/builtin-modules": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-4.0.0.tgz", + "integrity": "sha512-p1n8zyCkt1BVrKNFymOHjcDSAl7oq/gUvfgULv2EblgpPVQlQr9yHnWjg9IJ2MhfwPqiYqMMrr01OY7yQoK2yA==", + "dev": true, + "engines": { + "node": ">=18.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bun": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/bun/-/bun-1.2.13.tgz", + "integrity": "sha512-EhP1MhFbicqtaRSFCbEZdkcFco8Ov47cNJcB9QmKS8U4cojKHfLU+dQR14lCvLYmtBvGgwv/Lp+9SSver2OPzQ==", + "cpu": [ + "arm64", + "x64", + "aarch64" + ], + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "os": [ + "darwin", + "linux", + "win32" + ], + "bin": { + "bun": "bin/bun.exe", + "bunx": "bin/bun.exe" + }, + "optionalDependencies": { + "@oven/bun-darwin-aarch64": "1.2.13", + "@oven/bun-darwin-x64": "1.2.13", + "@oven/bun-darwin-x64-baseline": "1.2.13", + "@oven/bun-linux-aarch64": "1.2.13", + "@oven/bun-linux-aarch64-musl": "1.2.13", + "@oven/bun-linux-x64": "1.2.13", + "@oven/bun-linux-x64-baseline": "1.2.13", + "@oven/bun-linux-x64-musl": "1.2.13", + "@oven/bun-linux-x64-musl-baseline": "1.2.13", + "@oven/bun-windows-x64": "1.2.13", + "@oven/bun-windows-x64-baseline": "1.2.13" + } + }, + "node_modules/bun-types": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/bun-types/-/bun-types-1.2.13.tgz", + "integrity": "sha512-rRjA1T6n7wto4gxhAO/ErZEtOXyEZEmnIHQfl0Dt1QQSB4QV0iP6BZ9/YB5fZaHFQ2dwHFrmPaRQ9GGMX01k9Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/confbox": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", + "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-3.1.2.tgz", + "integrity": "sha512-WfUcL99xWDs7b3eZPoRszWVfbNo8ErCF15PTvVROjkShGlAfjIkG6hlfj/sl6/rfo5Q9x9ryJ3VqVnAZDA+gcw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "dev": true, + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/direction": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/direction/-/direction-2.0.1.tgz", + "integrity": "sha512-9S6m9Sukh1cZNknO1CWAr2QAWsbKLafQiyM5gZ7VgXHeuaoUwffKN4q6NC4A/Mf9iiPlOXQEKW/Mv/mh9/3YFA==", + "dev": true, + "bin": { + "direction": "cli.js" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/emoji-regex-xs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", + "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==", + "dev": true, + "license": "MIT" + }, + "node_modules/esbuild": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.4.tgz", + "integrity": "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.4", + "@esbuild/android-arm": "0.25.4", + "@esbuild/android-arm64": "0.25.4", + "@esbuild/android-x64": "0.25.4", + "@esbuild/darwin-arm64": "0.25.4", + "@esbuild/darwin-x64": "0.25.4", + "@esbuild/freebsd-arm64": "0.25.4", + "@esbuild/freebsd-x64": "0.25.4", + "@esbuild/linux-arm": "0.25.4", + "@esbuild/linux-arm64": "0.25.4", + "@esbuild/linux-ia32": "0.25.4", + "@esbuild/linux-loong64": "0.25.4", + "@esbuild/linux-mips64el": "0.25.4", + "@esbuild/linux-ppc64": "0.25.4", + "@esbuild/linux-riscv64": "0.25.4", + "@esbuild/linux-s390x": "0.25.4", + "@esbuild/linux-x64": "0.25.4", + "@esbuild/netbsd-arm64": "0.25.4", + "@esbuild/netbsd-x64": "0.25.4", + "@esbuild/openbsd-arm64": "0.25.4", + "@esbuild/openbsd-x64": "0.25.4", + "@esbuild/sunos-x64": "0.25.4", + "@esbuild/win32-arm64": "0.25.4", + "@esbuild/win32-ia32": "0.25.4", + "@esbuild/win32-x64": "0.25.4" + } + }, + "node_modules/esbuild-plugin-copy-watch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/esbuild-plugin-copy-watch/-/esbuild-plugin-copy-watch-2.3.1.tgz", + "integrity": "sha512-uBa0aWLg6Vm7kVwefwcvrZ1XiRgEB2HsVyBkyxXFR7lZ0LU9crxLEVNvoli3DX9I7aJv9K9+AYvQ2h86f4yFbA==", + "dev": true, + "dependencies": { + "@types/node": "^20.14.2", + "anymatch": "^3.1.3", + "chokidar": "^3.6.0", + "fs-extra": "^11.2.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3" + } + }, + "node_modules/esbuild-plugin-copy-watch/node_modules/@types/node": { + "version": "20.17.47", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.47.tgz", + "integrity": "sha512-3dLX0Upo1v7RvUimvxLeXqwrfyKxUINk0EAM83swP2mlSUcwV73sZy8XhNz8bcZ3VbsfQyC/y6jRdL5tgCNpDQ==", + "dev": true, + "dependencies": { + "undici-types": "~6.19.2" + } + }, + "node_modules/esbuild-plugin-copy-watch/node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true + }, + "node_modules/esbuild-plugins-node-modules-polyfill": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esbuild-plugins-node-modules-polyfill/-/esbuild-plugins-node-modules-polyfill-1.7.0.tgz", + "integrity": "sha512-Z81w5ReugIBAgufGeGWee+Uxzgs5Na4LprUAK3XlJEh2ktY3LkNuEGMaZyBXxQxGK8SQDS5yKLW5QKGF5qLjYA==", + "dev": true, + "dependencies": { + "@jspm/core": "^2.1.0", + "local-pkg": "^1.0.0", + "resolve.exports": "^2.0.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "esbuild": ">=0.14.0 <=0.25.x" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.27.0.tgz", + "integrity": "sha512-ixRawFQuMB9DZ7fjU3iGGganFDp3+45bPOdaRurcFHSXO1e/sYwUX/FtQZpLZJR6SjMoJH8hR2pPEAfDyCoU2Q==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.20.0", + "@eslint/config-helpers": "^0.2.1", + "@eslint/core": "^0.14.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.27.0", + "@eslint/plugin-kit": "^0.3.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.3.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-no-relative-import-paths": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-relative-import-paths/-/eslint-plugin-no-relative-import-paths-1.6.1.tgz", + "integrity": "sha512-YZNeOnsOrJcwhFw0X29MXjIzu2P/f5X2BZDPWw1R3VUYBRFxNIh77lyoL/XrMU9ewZNQPcEvAgL/cBOT1P330A==", + "dev": true + }, + "node_modules/eslint-plugin-only-warn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-only-warn/-/eslint-plugin-only-warn-1.1.0.tgz", + "integrity": "sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-scope": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", + "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", + "dev": true, + "dependencies": { + "acorn": "^8.14.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/exsolve": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.5.tgz", + "integrity": "sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==", + "dev": true + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true + }, + "node_modules/fs-extra": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", + "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/happy-dom": { + "version": "17.4.7", + "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-17.4.7.tgz", + "integrity": "sha512-NZypxadhCiV5NT4A+Y86aQVVKQ05KDmueja3sz008uJfDRwz028wd0aTiJPwo4RQlvlz0fznkEEBBCHVNWc08g==", + "dev": true, + "license": "MIT", + "dependencies": { + "webidl-conversions": "^7.0.0", + "whatwg-mimetype": "^3.0.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/hast-util-has-property": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-has-property/-/hast-util-has-property-3.0.0.tgz", + "integrity": "sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-is-element": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", + "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-parse-selector": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", + "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-select": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/hast-util-select/-/hast-util-select-6.0.4.tgz", + "integrity": "sha512-RqGS1ZgI0MwxLaKLDxjprynNzINEkRHY2i8ln4DDjgv9ZhcYVIHN9rlpiYsqtFwrgpYU361SyWDQcGNIBVu3lw==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "bcp-47-match": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "css-selector-parser": "^3.0.0", + "devlop": "^1.0.0", + "direction": "^2.0.0", + "hast-util-has-property": "^3.0.0", + "hast-util-to-string": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "nth-check": "^2.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-html": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz", + "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-string": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", + "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-text": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", + "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "hast-util-is-element": "^3.0.0", + "unist-util-find-after": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-9.0.1.tgz", + "integrity": "sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^4.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/itertools-ts": { + "version": "1.29.1", + "resolved": "https://registry.npmjs.org/itertools-ts/-/itertools-ts-1.29.1.tgz", + "integrity": "sha512-mDvYXbhFg7+VobGBykzZw+FV3oUZ17mRWlelD9fRAONzSlGk3LtDMbC+f3YDLYDwpMqqz4JeaS6hrGoqrqHcAg==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/local-pkg": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.1.tgz", + "integrity": "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg==", + "dev": true, + "dependencies": { + "mlly": "^1.7.4", + "pkg-types": "^2.0.1", + "quansync": "^0.2.8" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/mdast-util-to-hast": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", + "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", + "dev": true, + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromark-util-character": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", + "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", + "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", + "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", + "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/mlly": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", + "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", + "dev": true, + "dependencies": { + "acorn": "^8.14.0", + "pathe": "^2.0.1", + "pkg-types": "^1.3.0", + "ufo": "^1.5.4" + } + }, + "node_modules/mlly/node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "dev": true + }, + "node_modules/mlly/node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "dev": true, + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, + "node_modules/moment": { + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/obsidian": { + "version": "1.8.7", + "resolved": "https://registry.npmjs.org/obsidian/-/obsidian-1.8.7.tgz", + "integrity": "sha512-h4bWwNFAGRXlMlMAzdEiIM2ppTGlrh7uGOJS6w4gClrsjc+ei/3YAtU2VdFUlCiPuTHpY4aBpFJJW75S1Tl/JA==", + "dev": true, + "dependencies": { + "@types/codemirror": "5.60.8", + "moment": "2.29.4" + }, + "peerDependencies": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0" + } + }, + "node_modules/oniguruma-parser": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/oniguruma-parser/-/oniguruma-parser-0.12.1.tgz", + "integrity": "sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/oniguruma-to-es": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.3.tgz", + "integrity": "sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg==", + "dev": true, + "license": "MIT", + "dependencies": { + "oniguruma-parser": "^0.12.1", + "regex": "^6.0.1", + "regex-recursion": "^6.0.2" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-types": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz", + "integrity": "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==", + "dev": true, + "dependencies": { + "confbox": "^0.2.1", + "exsolve": "^1.0.1", + "pathe": "^2.0.3" + } + }, + "node_modules/postcss": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.8", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", + "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", + "dev": true, + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/property-information": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", + "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/quansync": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.10.tgz", + "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ] + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/regex/-/regex-6.0.1.tgz", + "integrity": "sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/regex-recursion": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", + "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "regex-utilities": "^2.3.0" + } + }, + "node_modules/regex-utilities": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz", + "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==", + "dev": true, + "license": "MIT" + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shiki": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.4.2.tgz", + "integrity": "sha512-wuxzZzQG8kvZndD7nustrNFIKYJ1jJoWIPaBpVe2+KHSvtzMi4SBjOxrigs8qeqce/l3U0cwiC+VAkLKSunHQQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/core": "3.4.2", + "@shikijs/engine-javascript": "3.4.2", + "@shikijs/engine-oniguruma": "3.4.2", + "@shikijs/langs": "3.4.2", + "@shikijs/themes": "3.4.2", + "@shikijs/types": "3.4.2", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", + "dev": true, + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "dev": true, + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-mod": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.1.2.tgz", + "integrity": "sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==", + "dev": true + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-eslint": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.32.1.tgz", + "integrity": "sha512-D7el+eaDHAmXvrZBy1zpzSNIRqnCOrkwTgZxTu3MUqRWk8k0q9m9Ho4+vPf7iHtgUfrK/o8IZaEApsxPlHTFCg==", + "dev": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": "8.32.1", + "@typescript-eslint/parser": "8.32.1", + "@typescript-eslint/utils": "8.32.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" + } + }, + "node_modules/ufo": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", + "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", + "dev": true + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true + }, + "node_modules/unist-util-find-after": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", + "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/w3c-keyname": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", + "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==", + "dev": true + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-mimetype": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", + "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + }, + "dependencies": { + "@codemirror/language": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.11.0.tgz", + "integrity": "sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ==", + "dev": true, + "requires": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.23.0", + "@lezer/common": "^1.1.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0", + "style-mod": "^4.0.0" + } + }, + "@codemirror/state": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.5.2.tgz", + "integrity": "sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==", + "dev": true, + "requires": { + "@marijn/find-cluster-break": "^1.0.0" + } + }, + "@codemirror/view": { + "version": "6.36.8", + "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.36.8.tgz", + "integrity": "sha512-yoRo4f+FdnD01fFt4XpfpMCcCAo9QvZOtbrXExn4SqzH32YC6LgzqxfLZw/r6Ge65xyY03mK/UfUqrVw1gFiFg==", + "dev": true, + "requires": { + "@codemirror/state": "^6.5.0", + "style-mod": "^4.1.0", + "w3c-keyname": "^2.2.4" + } + }, + "@ctrl/tinycolor": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-4.1.0.tgz", + "integrity": "sha512-WyOx8cJQ+FQus4Mm4uPIZA64gbk3Wxh0so5Lcii0aJifqwoVOlfFtorjLE0Hen4OYyHZMXDWqMmaQemBhgxFRQ==", + "dev": true + }, + "@esbuild/aix-ppc64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.4.tgz", + "integrity": "sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.4.tgz", + "integrity": "sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.4.tgz", + "integrity": "sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==", + "dev": true, + "optional": true + }, + "@esbuild/android-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.4.tgz", + "integrity": "sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.4.tgz", + "integrity": "sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.4.tgz", + "integrity": "sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.4.tgz", + "integrity": "sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.4.tgz", + "integrity": "sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.4.tgz", + "integrity": "sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.4.tgz", + "integrity": "sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ia32": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.4.tgz", + "integrity": "sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-loong64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.4.tgz", + "integrity": "sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-mips64el": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.4.tgz", + "integrity": "sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ppc64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.4.tgz", + "integrity": "sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==", + "dev": true, + "optional": true + }, + "@esbuild/linux-riscv64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.4.tgz", + "integrity": "sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-s390x": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.4.tgz", + "integrity": "sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==", + "dev": true, + "optional": true + }, + "@esbuild/linux-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.4.tgz", + "integrity": "sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==", + "dev": true, + "optional": true + }, + "@esbuild/netbsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.4.tgz", + "integrity": "sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==", + "dev": true, + "optional": true + }, + "@esbuild/netbsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.4.tgz", + "integrity": "sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.4.tgz", + "integrity": "sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.4.tgz", + "integrity": "sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==", + "dev": true, + "optional": true + }, + "@esbuild/sunos-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.4.tgz", + "integrity": "sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==", + "dev": true, + "optional": true + }, + "@esbuild/win32-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.4.tgz", + "integrity": "sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==", + "dev": true, + "optional": true + }, + "@esbuild/win32-ia32": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.4.tgz", + "integrity": "sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==", + "dev": true, + "optional": true + }, + "@esbuild/win32-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.4.tgz", + "integrity": "sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==", + "dev": true, + "optional": true + }, + "@eslint-community/eslint-utils": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^3.4.3" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true + } + } + }, + "@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true + }, + "@eslint/config-array": { + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", + "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", + "dev": true, + "requires": { + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + } + }, + "@eslint/config-helpers": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.2.tgz", + "integrity": "sha512-+GPzk8PlG0sPpzdU5ZvIRMPidzAnZDl/s9L+y13iodqvb8leL53bTannOrQ/Im7UkpsmFU5Ily5U60LWixnmLg==", + "dev": true + }, + "@eslint/core": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz", + "integrity": "sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.15" + } + }, + "@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + } + }, + "@eslint/js": { + "version": "9.27.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.27.0.tgz", + "integrity": "sha512-G5JD9Tu5HJEu4z2Uo4aHY2sLV64B7CDMXxFzqzjl3NKd6RVzSXNoE80jk7Y0lJkTTkjiIhBAqmlYwjuBY3tvpA==", + "dev": true + }, + "@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "dev": true + }, + "@eslint/plugin-kit": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.1.tgz", + "integrity": "sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==", + "dev": true, + "requires": { + "@eslint/core": "^0.14.0", + "levn": "^0.4.1" + } + }, + "@expressive-code/core": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/core/-/core-0.38.3.tgz", + "integrity": "sha512-s0/OtdRpBONwcn23O8nVwDNQqpBGKscysejkeBkwlIeHRLZWgiTVrusT5Idrdz1d8cW5wRk9iGsAIQmwDPXgJg==", + "dev": true, + "requires": { + "@ctrl/tinycolor": "^4.0.4", + "hast-util-select": "^6.0.2", + "hast-util-to-html": "^9.0.1", + "hast-util-to-text": "^4.0.1", + "hastscript": "^9.0.0", + "postcss": "^8.4.38", + "postcss-nested": "^6.0.1", + "unist-util-visit": "^5.0.0", + "unist-util-visit-parents": "^6.0.1" + } + }, + "@expressive-code/plugin-collapsible-sections": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-collapsible-sections/-/plugin-collapsible-sections-0.38.3.tgz", + "integrity": "sha512-0r1k4k5S7GBLIRBYFkMKeIyD9iYcwM+LBrwoxZtd9TtBYJ3ziWBleFlCoOA3fo/Mj2YcaN7ZRIscMzYY9JBWrA==", + "dev": true, + "requires": { + "@expressive-code/core": "^0.38.3" + } + }, + "@expressive-code/plugin-frames": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-frames/-/plugin-frames-0.38.3.tgz", + "integrity": "sha512-qL2oC6FplmHNQfZ8ZkTR64/wKo9x0c8uP2WDftR/ydwN/yhe1ed7ZWYb8r3dezxsls+tDokCnN4zYR594jbpvg==", + "dev": true, + "requires": { + "@expressive-code/core": "^0.38.3" + } + }, + "@expressive-code/plugin-line-numbers": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-line-numbers/-/plugin-line-numbers-0.38.3.tgz", + "integrity": "sha512-QbK9NL44ST9w5ANVEu0a7fkjlq+fXgxyPqiSyFC4Nw/sAXd0MUwT1C8V0qlve4pZYLz53CR9tn4JQQbR0Z1tOg==", + "dev": true, + "requires": { + "@expressive-code/core": "^0.38.3" + } + }, + "@expressive-code/plugin-shiki": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-shiki/-/plugin-shiki-0.38.3.tgz", + "integrity": "sha512-kqHnglZeesqG3UKrb6e9Fq5W36AZ05Y9tCREmSN2lw8LVTqENIeCIkLDdWtQ5VoHlKqwUEQFTVlRehdwoY7Gmw==", + "dev": true, + "requires": { + "@expressive-code/core": "^0.38.3", + "shiki": "^1.22.2" + }, + "dependencies": { + "@shikijs/core": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.29.2.tgz", + "integrity": "sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==", + "dev": true, + "requires": { + "@shikijs/engine-javascript": "1.29.2", + "@shikijs/engine-oniguruma": "1.29.2", + "@shikijs/types": "1.29.2", + "@shikijs/vscode-textmate": "^10.0.1", + "@types/hast": "^3.0.4", + "hast-util-to-html": "^9.0.4" + } + }, + "@shikijs/engine-javascript": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.29.2.tgz", + "integrity": "sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==", + "dev": true, + "requires": { + "@shikijs/types": "1.29.2", + "@shikijs/vscode-textmate": "^10.0.1", + "oniguruma-to-es": "^2.2.0" + } + }, + "@shikijs/engine-oniguruma": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz", + "integrity": "sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==", + "dev": true, + "requires": { + "@shikijs/types": "1.29.2", + "@shikijs/vscode-textmate": "^10.0.1" + } + }, + "@shikijs/langs": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.2.tgz", + "integrity": "sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==", + "dev": true, + "requires": { + "@shikijs/types": "1.29.2" + } + }, + "@shikijs/themes": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.2.tgz", + "integrity": "sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==", + "dev": true, + "requires": { + "@shikijs/types": "1.29.2" + } + }, + "@shikijs/types": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.29.2.tgz", + "integrity": "sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==", + "dev": true, + "requires": { + "@shikijs/vscode-textmate": "^10.0.1", + "@types/hast": "^3.0.4" + } + }, + "oniguruma-to-es": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-2.3.0.tgz", + "integrity": "sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==", + "dev": true, + "requires": { + "emoji-regex-xs": "^1.0.0", + "regex": "^5.1.1", + "regex-recursion": "^5.1.1" + } + }, + "regex": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/regex/-/regex-5.1.1.tgz", + "integrity": "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==", + "dev": true, + "requires": { + "regex-utilities": "^2.3.0" + } + }, + "regex-recursion": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.1.1.tgz", + "integrity": "sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==", + "dev": true, + "requires": { + "regex": "^5.1.1", + "regex-utilities": "^2.3.0" + } + }, + "shiki": { + "version": "1.29.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.29.2.tgz", + "integrity": "sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==", + "dev": true, + "requires": { + "@shikijs/core": "1.29.2", + "@shikijs/engine-javascript": "1.29.2", + "@shikijs/engine-oniguruma": "1.29.2", + "@shikijs/langs": "1.29.2", + "@shikijs/themes": "1.29.2", + "@shikijs/types": "1.29.2", + "@shikijs/vscode-textmate": "^10.0.1", + "@types/hast": "^3.0.4" + } + } + } + }, + "@expressive-code/plugin-text-markers": { + "version": "0.38.3", + "resolved": "https://registry.npmjs.org/@expressive-code/plugin-text-markers/-/plugin-text-markers-0.38.3.tgz", + "integrity": "sha512-dPK3+BVGTbTmGQGU3Fkj3jZ3OltWUAlxetMHI6limUGCWBCucZiwoZeFM/WmqQa71GyKRzhBT+iEov6kkz2xVA==", + "dev": true, + "requires": { + "@expressive-code/core": "^0.38.3" + } + }, + "@happy-dom/global-registrator": { + "version": "17.4.7", + "resolved": "https://registry.npmjs.org/@happy-dom/global-registrator/-/global-registrator-17.4.7.tgz", + "integrity": "sha512-BsKWeI115LT0J/lKJ4Kz638oy4zO+nC4TLh3cYPY6BBypttPZg8Fg+EXL2If4KHMSy3Wx+yRiM+68Hr1iGgiWA==", + "dev": true, + "requires": { + "happy-dom": "^17.4.7" + } + }, + "@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true + }, + "@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "dev": true, + "requires": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" + }, + "dependencies": { + "@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true + } + } + }, + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true + }, + "@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true + }, + "@jspm/core": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@jspm/core/-/core-2.1.0.tgz", + "integrity": "sha512-3sRl+pkyFY/kLmHl0cgHiFp2xEqErA8N3ECjMs7serSUBmoJ70lBa0PG5t0IM6WJgdZNyyI0R8YFfi5wM8+mzg==", + "dev": true + }, + "@lemons_dev/parsinom": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@lemons_dev/parsinom/-/parsinom-0.0.12.tgz", + "integrity": "sha512-i6oUfQfhw4ZStScMpPHy8ZmLrkn29RX/uK1SBKSKPuH0w9vOFQjZ0O4ev1hdk0K/eU196mk9mAlI1bjbO4n4sQ==", + "dev": true + }, + "@lezer/common": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.2.3.tgz", + "integrity": "sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==", + "dev": true + }, + "@lezer/highlight": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.2.1.tgz", + "integrity": "sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA==", + "dev": true, + "requires": { + "@lezer/common": "^1.0.0" + } + }, + "@lezer/lr": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-1.4.2.tgz", + "integrity": "sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==", + "dev": true, + "requires": { + "@lezer/common": "^1.0.0" + } + }, + "@marijn/find-cluster-break": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@marijn/find-cluster-break/-/find-cluster-break-1.0.2.tgz", + "integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==", + "dev": true + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@oven/bun-darwin-aarch64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-darwin-aarch64/-/bun-darwin-aarch64-1.2.13.tgz", + "integrity": "sha512-AOU4O9jxRp2TXeqoEfOjEaUNZb3+SUPBN8TIEnUjpnyLWPoYJGCeNdQuCDcUkmF3MJEmEuJdyF1IeOITozpC6A==", + "dev": true, + "optional": true + }, + "@oven/bun-darwin-x64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-darwin-x64/-/bun-darwin-x64-1.2.13.tgz", + "integrity": "sha512-kJ2iOvxY8uz5/nu+8zIjKf4LmRIHBH9pJJM2q+tA47U04Tod6k6rtntDOI8SdmRe2M5c87RfbadWdxhpYHFIWQ==", + "dev": true, + "optional": true + }, + "@oven/bun-darwin-x64-baseline": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-darwin-x64-baseline/-/bun-darwin-x64-baseline-1.2.13.tgz", + "integrity": "sha512-bZpIUOvx9np07AmH5MVXGYHWZ40m2vCpNV74fma6sCzBlssJclS2V3BZgO+lLvtUKSqnW3HAyJBGsRF34wPbNw==", + "dev": true, + "optional": true + }, + "@oven/bun-linux-aarch64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-aarch64/-/bun-linux-aarch64-1.2.13.tgz", + "integrity": "sha512-hocSJmblX4CCjP1HpaM64I65erB+CONUCCwKzGGOfLGLobVi+vn/G56UaYWsje1y/Z7WlVaUSgKYVWl7EJ6T9g==", + "dev": true, + "optional": true + }, + "@oven/bun-linux-aarch64-musl": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-aarch64-musl/-/bun-linux-aarch64-musl-1.2.13.tgz", + "integrity": "sha512-P56m718KXeyu4Vq5fsESFktfu+0Us1jhu/ZzgHYFRYJcm/hjs6AUA/RJtUAifFy5PNAM5IJdrYl3xPsE8Wa+pg==", + "dev": true, + "optional": true + }, + "@oven/bun-linux-x64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64/-/bun-linux-x64-1.2.13.tgz", + "integrity": "sha512-pf8+Kn2GLrFKLcb8JSLM6Z147Af6L9GQODpnOHM4gvXQv6E/GwQg47/o+7f1XCfzib3fdzOTJlDPvvO1rnXOTA==", + "dev": true, + "optional": true + }, + "@oven/bun-linux-x64-baseline": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-baseline/-/bun-linux-x64-baseline-1.2.13.tgz", + "integrity": "sha512-9n1ai2ejEpxEMqpbHQMWFyvacq3MYsB7gh5mxRlFwhNFPCWu/Sv6gyrO+q2vkOYgcEIGhJb6dqJ6L9vBNaL61A==", + "dev": true, + "optional": true + }, + "@oven/bun-linux-x64-musl": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-musl/-/bun-linux-x64-musl-1.2.13.tgz", + "integrity": "sha512-w5Ob+GM3Ww4yRA6f1N845o6wEvuwHSmipFUGaRaVp4UELrFnIV9G3pmrlBbYHFnWhk13o8Q7H1/4ZphOkCRJmQ==", + "dev": true, + "optional": true + }, + "@oven/bun-linux-x64-musl-baseline": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-musl-baseline/-/bun-linux-x64-musl-baseline-1.2.13.tgz", + "integrity": "sha512-VI8hVdfqk0QmbAbyrsIdo2O95n3fkbt72E0h3Wu69cHD1iKJqRXG28R8QoHdehoLSJnKVzRTwsUzHp764nefWQ==", + "dev": true, + "optional": true + }, + "@oven/bun-windows-x64": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-windows-x64/-/bun-windows-x64-1.2.13.tgz", + "integrity": "sha512-sArgbRmT7V3mUdNFaAdUcuJsuS+oeMDZLPWFSg0gtQZpRrURs9nPzEnZMmVCFo4+kPF9Tb5ujQT9uDySh6/qVg==", + "dev": true, + "optional": true + }, + "@oven/bun-windows-x64-baseline": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@oven/bun-windows-x64-baseline/-/bun-windows-x64-baseline-1.2.13.tgz", + "integrity": "sha512-Aiezu99fOUJJpzGuylOJryd6w9Syg2TBigHeXV2+RJsouBzvAnIEYIBA94ZspRq1ulD26Wmkk8Ae+jZ4edk9GA==", + "dev": true, + "optional": true + }, + "@shikijs/core": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.4.2.tgz", + "integrity": "sha512-AG8vnSi1W2pbgR2B911EfGqtLE9c4hQBYkv/x7Z+Kt0VxhgQKcW7UNDVYsu9YxwV6u+OJrvdJrMq6DNWoBjihQ==", + "dev": true, + "requires": { + "@shikijs/types": "3.4.2", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4", + "hast-util-to-html": "^9.0.5" + } + }, + "@shikijs/engine-javascript": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.4.2.tgz", + "integrity": "sha512-1/adJbSMBOkpScCE/SB6XkjJU17ANln3Wky7lOmrnpl+zBdQ1qXUJg2GXTYVHRq+2j3hd1DesmElTXYDgtfSOQ==", + "dev": true, + "requires": { + "@shikijs/types": "3.4.2", + "@shikijs/vscode-textmate": "^10.0.2", + "oniguruma-to-es": "^4.3.3" + } + }, + "@shikijs/engine-oniguruma": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.4.2.tgz", + "integrity": "sha512-zcZKMnNndgRa3ORja6Iemsr3DrLtkX3cAF7lTJkdMB6v9alhlBsX9uNiCpqofNrXOvpA3h6lHcLJxgCIhVOU5Q==", + "dev": true, + "requires": { + "@shikijs/types": "3.4.2", + "@shikijs/vscode-textmate": "^10.0.2" + } + }, + "@shikijs/langs": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.4.2.tgz", + "integrity": "sha512-H6azIAM+OXD98yztIfs/KH5H4PU39t+SREhmM8LaNXyUrqj2mx+zVkr8MWYqjceSjDw9I1jawm1WdFqU806rMA==", + "dev": true, + "requires": { + "@shikijs/types": "3.4.2" + } + }, + "@shikijs/themes": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.4.2.tgz", + "integrity": "sha512-qAEuAQh+brd8Jyej2UDDf+b4V2g1Rm8aBIdvt32XhDPrHvDkEnpb7Kzc9hSuHUxz0Iuflmq7elaDuQAP9bHIhg==", + "dev": true, + "requires": { + "@shikijs/types": "3.4.2" + } + }, + "@shikijs/transformers": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.4.2.tgz", + "integrity": "sha512-I5baLVi/ynLEOZoWSAMlACHNnG+yw5HDmse0oe+GW6U1u+ULdEB3UHiVWaHoJSSONV7tlcVxuaMy74sREDkSvg==", + "dev": true, + "requires": { + "@shikijs/core": "3.4.2", + "@shikijs/types": "3.4.2" + } + }, + "@shikijs/types": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.4.2.tgz", + "integrity": "sha512-zHC1l7L+eQlDXLnxvM9R91Efh2V4+rN3oMVS2swCBssbj2U/FBwybD1eeLaq8yl/iwT+zih8iUbTBCgGZOYlVg==", + "dev": true, + "requires": { + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + } + }, + "@shikijs/vscode-textmate": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", + "dev": true + }, + "@tsconfig/svelte": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/svelte/-/svelte-5.0.4.tgz", + "integrity": "sha512-BV9NplVgLmSi4mwKzD8BD/NQ8erOY/nUE/GpgWe2ckx+wIQF5RyRirn/QsSSCPeulVpc3RA/iJt6DpfTIZps0Q==", + "dev": true + }, + "@types/bun": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/@types/bun/-/bun-1.2.13.tgz", + "integrity": "sha512-u6vXep/i9VBxoJl3GjZsl/BFIsvML8DfVDO0RYLEwtSZSp981kEO1V5NwRcO1CPJ7AmvpbnDCiMKo3JvbDEjAg==", + "dev": true, + "requires": { + "bun-types": "1.2.13" + } + }, + "@types/codemirror": { + "version": "5.60.8", + "resolved": "https://registry.npmjs.org/@types/codemirror/-/codemirror-5.60.8.tgz", + "integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==", + "dev": true, + "requires": { + "@types/tern": "*" + } + }, + "@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dev": true, + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint__js": { + "version": "8.42.3", + "resolved": "https://registry.npmjs.org/@types/eslint__js/-/eslint__js-8.42.3.tgz", + "integrity": "sha512-alfG737uhmPdnvkrLdZLcEKJ/B8s9Y4hrZ+YAdzUeoArBlSUERA2E87ROfOaS4jd/C45fzOoZzidLc1IPwLqOw==", + "dev": true, + "requires": { + "@types/eslint": "*" + } + }, + "@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "dev": true + }, + "@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dev": true, + "requires": { + "@types/unist": "*" + } + }, + "@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", + "dev": true, + "requires": { + "@types/unist": "*" + } + }, + "@types/node": { + "version": "22.15.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.18.tgz", + "integrity": "sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg==", + "dev": true, + "requires": { + "undici-types": "~6.21.0" + } + }, + "@types/tern": { + "version": "0.23.9", + "resolved": "https://registry.npmjs.org/@types/tern/-/tern-0.23.9.tgz", + "integrity": "sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==", + "dev": true, + "requires": { + "@types/estree": "*" + } + }, + "@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "dev": true + }, + "@typescript-eslint/eslint-plugin": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.32.1.tgz", + "integrity": "sha512-6u6Plg9nP/J1GRpe/vcjjabo6Uc5YQPAMxsgQyGC/I0RuukiG1wIe3+Vtg3IrSCVJDmqK3j8adrtzXSENRtFgg==", + "dev": true, + "requires": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.32.1", + "@typescript-eslint/type-utils": "8.32.1", + "@typescript-eslint/utils": "8.32.1", + "@typescript-eslint/visitor-keys": "8.32.1", + "graphemer": "^1.4.0", + "ignore": "^7.0.0", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.1.0" + }, + "dependencies": { + "ignore": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", + "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", + "dev": true + } + } + }, + "@typescript-eslint/parser": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.32.1.tgz", + "integrity": "sha512-LKMrmwCPoLhM45Z00O1ulb6jwyVr2kr3XJp+G+tSEZcbauNnScewcQwtJqXDhXeYPDEjZ8C1SjXm015CirEmGg==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "8.32.1", + "@typescript-eslint/types": "8.32.1", + "@typescript-eslint/typescript-estree": "8.32.1", + "@typescript-eslint/visitor-keys": "8.32.1", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.32.1.tgz", + "integrity": "sha512-7IsIaIDeZn7kffk7qXC3o6Z4UblZJKV3UBpkvRNpr5NSyLji7tvTcvmnMNYuYLyh26mN8W723xpo3i4MlD33vA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.32.1", + "@typescript-eslint/visitor-keys": "8.32.1" + } + }, + "@typescript-eslint/type-utils": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.32.1.tgz", + "integrity": "sha512-mv9YpQGA8iIsl5KyUPi+FGLm7+bA4fgXaeRcFKRDRwDMu4iwrSHeDPipwueNXhdIIZltwCJv+NkxftECbIZWfA==", + "dev": true, + "requires": { + "@typescript-eslint/typescript-estree": "8.32.1", + "@typescript-eslint/utils": "8.32.1", + "debug": "^4.3.4", + "ts-api-utils": "^2.1.0" + } + }, + "@typescript-eslint/types": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz", + "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.32.1.tgz", + "integrity": "sha512-Y3AP9EIfYwBb4kWGb+simvPaqQoT5oJuzzj9m0i6FCY6SPvlomY2Ei4UEMm7+FXtlNJbor80ximyslzaQF6xhg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.32.1", + "@typescript-eslint/visitor-keys": "8.32.1", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.1.0" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "@typescript-eslint/utils": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.32.1.tgz", + "integrity": "sha512-DsSFNIgLSrc89gpq1LJB7Hm1YpuhK086DRDJSNrewcGvYloWW1vZLHBTIvarKZDcAORIy/uWNx8Gad+4oMpkSA==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.7.0", + "@typescript-eslint/scope-manager": "8.32.1", + "@typescript-eslint/types": "8.32.1", + "@typescript-eslint/typescript-estree": "8.32.1" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz", + "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==", + "dev": true, + "requires": { + "@typescript-eslint/types": "8.32.1", + "eslint-visitor-keys": "^4.2.0" + } + }, + "@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true + }, + "acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "requires": {} + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "bcp-47-match": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/bcp-47-match/-/bcp-47-match-2.0.3.tgz", + "integrity": "sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==", + "dev": true + }, + "binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "requires": { + "fill-range": "^7.1.1" + } + }, + "builtin-modules": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-4.0.0.tgz", + "integrity": "sha512-p1n8zyCkt1BVrKNFymOHjcDSAl7oq/gUvfgULv2EblgpPVQlQr9yHnWjg9IJ2MhfwPqiYqMMrr01OY7yQoK2yA==", + "dev": true + }, + "bun": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/bun/-/bun-1.2.13.tgz", + "integrity": "sha512-EhP1MhFbicqtaRSFCbEZdkcFco8Ov47cNJcB9QmKS8U4cojKHfLU+dQR14lCvLYmtBvGgwv/Lp+9SSver2OPzQ==", + "dev": true, + "requires": { + "@oven/bun-darwin-aarch64": "1.2.13", + "@oven/bun-darwin-x64": "1.2.13", + "@oven/bun-darwin-x64-baseline": "1.2.13", + "@oven/bun-linux-aarch64": "1.2.13", + "@oven/bun-linux-aarch64-musl": "1.2.13", + "@oven/bun-linux-x64": "1.2.13", + "@oven/bun-linux-x64-baseline": "1.2.13", + "@oven/bun-linux-x64-musl": "1.2.13", + "@oven/bun-linux-x64-musl-baseline": "1.2.13", + "@oven/bun-windows-x64": "1.2.13", + "@oven/bun-windows-x64-baseline": "1.2.13" + } + }, + "bun-types": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/bun-types/-/bun-types-1.2.13.tgz", + "integrity": "sha512-rRjA1T6n7wto4gxhAO/ErZEtOXyEZEmnIHQfl0Dt1QQSB4QV0iP6BZ9/YB5fZaHFQ2dwHFrmPaRQ9GGMX01k9Q==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "dev": true + }, + "character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "dev": true + }, + "chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "confbox": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", + "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", + "dev": true + }, + "cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "css-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-3.1.2.tgz", + "integrity": "sha512-WfUcL99xWDs7b3eZPoRszWVfbNo8ErCF15PTvVROjkShGlAfjIkG6hlfj/sl6/rfo5Q9x9ryJ3VqVnAZDA+gcw==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "dev": true, + "requires": { + "ms": "^2.1.3" + } + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "dev": true + }, + "devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "dev": true, + "requires": { + "dequal": "^2.0.0" + } + }, + "direction": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/direction/-/direction-2.0.1.tgz", + "integrity": "sha512-9S6m9Sukh1cZNknO1CWAr2QAWsbKLafQiyM5gZ7VgXHeuaoUwffKN4q6NC4A/Mf9iiPlOXQEKW/Mv/mh9/3YFA==", + "dev": true + }, + "emoji-regex-xs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", + "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==", + "dev": true + }, + "esbuild": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.4.tgz", + "integrity": "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==", + "dev": true, + "requires": { + "@esbuild/aix-ppc64": "0.25.4", + "@esbuild/android-arm": "0.25.4", + "@esbuild/android-arm64": "0.25.4", + "@esbuild/android-x64": "0.25.4", + "@esbuild/darwin-arm64": "0.25.4", + "@esbuild/darwin-x64": "0.25.4", + "@esbuild/freebsd-arm64": "0.25.4", + "@esbuild/freebsd-x64": "0.25.4", + "@esbuild/linux-arm": "0.25.4", + "@esbuild/linux-arm64": "0.25.4", + "@esbuild/linux-ia32": "0.25.4", + "@esbuild/linux-loong64": "0.25.4", + "@esbuild/linux-mips64el": "0.25.4", + "@esbuild/linux-ppc64": "0.25.4", + "@esbuild/linux-riscv64": "0.25.4", + "@esbuild/linux-s390x": "0.25.4", + "@esbuild/linux-x64": "0.25.4", + "@esbuild/netbsd-arm64": "0.25.4", + "@esbuild/netbsd-x64": "0.25.4", + "@esbuild/openbsd-arm64": "0.25.4", + "@esbuild/openbsd-x64": "0.25.4", + "@esbuild/sunos-x64": "0.25.4", + "@esbuild/win32-arm64": "0.25.4", + "@esbuild/win32-ia32": "0.25.4", + "@esbuild/win32-x64": "0.25.4" + } + }, + "esbuild-plugin-copy-watch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/esbuild-plugin-copy-watch/-/esbuild-plugin-copy-watch-2.3.1.tgz", + "integrity": "sha512-uBa0aWLg6Vm7kVwefwcvrZ1XiRgEB2HsVyBkyxXFR7lZ0LU9crxLEVNvoli3DX9I7aJv9K9+AYvQ2h86f4yFbA==", + "dev": true, + "requires": { + "@types/node": "^20.14.2", + "anymatch": "^3.1.3", + "chokidar": "^3.6.0", + "fs-extra": "^11.2.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3" + }, + "dependencies": { + "@types/node": { + "version": "20.17.47", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.47.tgz", + "integrity": "sha512-3dLX0Upo1v7RvUimvxLeXqwrfyKxUINk0EAM83swP2mlSUcwV73sZy8XhNz8bcZ3VbsfQyC/y6jRdL5tgCNpDQ==", + "dev": true, + "requires": { + "undici-types": "~6.19.2" + } + }, + "undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true + } + } + }, + "esbuild-plugins-node-modules-polyfill": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esbuild-plugins-node-modules-polyfill/-/esbuild-plugins-node-modules-polyfill-1.7.0.tgz", + "integrity": "sha512-Z81w5ReugIBAgufGeGWee+Uxzgs5Na4LprUAK3XlJEh2ktY3LkNuEGMaZyBXxQxGK8SQDS5yKLW5QKGF5qLjYA==", + "dev": true, + "requires": { + "@jspm/core": "^2.1.0", + "local-pkg": "^1.0.0", + "resolve.exports": "^2.0.3" + } + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint": { + "version": "9.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.27.0.tgz", + "integrity": "sha512-ixRawFQuMB9DZ7fjU3iGGganFDp3+45bPOdaRurcFHSXO1e/sYwUX/FtQZpLZJR6SjMoJH8hR2pPEAfDyCoU2Q==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.20.0", + "@eslint/config-helpers": "^0.2.1", + "@eslint/core": "^0.14.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.27.0", + "@eslint/plugin-kit": "^0.3.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.3.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + } + }, + "eslint-plugin-no-relative-import-paths": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-relative-import-paths/-/eslint-plugin-no-relative-import-paths-1.6.1.tgz", + "integrity": "sha512-YZNeOnsOrJcwhFw0X29MXjIzu2P/f5X2BZDPWw1R3VUYBRFxNIh77lyoL/XrMU9ewZNQPcEvAgL/cBOT1P330A==", + "dev": true + }, + "eslint-plugin-only-warn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-only-warn/-/eslint-plugin-only-warn-1.1.0.tgz", + "integrity": "sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==", + "dev": true + }, + "eslint-scope": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", + "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", + "dev": true + }, + "espree": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", + "dev": true, + "requires": { + "acorn": "^8.14.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.0" + } + }, + "esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "exsolve": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.5.tgz", + "integrity": "sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==", + "dev": true + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "requires": { + "flat-cache": "^4.0.0" + } + }, + "fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "requires": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + } + }, + "flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true + }, + "fs-extra": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", + "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "optional": true + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true + }, + "graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "happy-dom": { + "version": "17.4.7", + "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-17.4.7.tgz", + "integrity": "sha512-NZypxadhCiV5NT4A+Y86aQVVKQ05KDmueja3sz008uJfDRwz028wd0aTiJPwo4RQlvlz0fznkEEBBCHVNWc08g==", + "dev": true, + "requires": { + "webidl-conversions": "^7.0.0", + "whatwg-mimetype": "^3.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "hast-util-has-property": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-has-property/-/hast-util-has-property-3.0.0.tgz", + "integrity": "sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0" + } + }, + "hast-util-is-element": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", + "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0" + } + }, + "hast-util-parse-selector": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", + "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0" + } + }, + "hast-util-select": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/hast-util-select/-/hast-util-select-6.0.4.tgz", + "integrity": "sha512-RqGS1ZgI0MwxLaKLDxjprynNzINEkRHY2i8ln4DDjgv9ZhcYVIHN9rlpiYsqtFwrgpYU361SyWDQcGNIBVu3lw==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "bcp-47-match": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "css-selector-parser": "^3.0.0", + "devlop": "^1.0.0", + "direction": "^2.0.0", + "hast-util-has-property": "^3.0.0", + "hast-util-to-string": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "nth-check": "^2.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + } + }, + "hast-util-to-html": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz", + "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" + } + }, + "hast-util-to-string": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", + "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0" + } + }, + "hast-util-to-text": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", + "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "hast-util-is-element": "^3.0.0", + "unist-util-find-after": "^5.0.0" + } + }, + "hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0" + } + }, + "hastscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-9.0.1.tgz", + "integrity": "sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^4.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0" + } + }, + "html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "dev": true + }, + "ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true + }, + "import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "itertools-ts": { + "version": "1.29.1", + "resolved": "https://registry.npmjs.org/itertools-ts/-/itertools-ts-1.29.1.tgz", + "integrity": "sha512-mDvYXbhFg7+VobGBykzZw+FV3oUZ17mRWlelD9fRAONzSlGk3LtDMbC+f3YDLYDwpMqqz4JeaS6hrGoqrqHcAg==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "requires": { + "json-buffer": "3.0.1" + } + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "local-pkg": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.1.tgz", + "integrity": "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg==", + "dev": true, + "requires": { + "mlly": "^1.7.4", + "pkg-types": "^2.0.1", + "quansync": "^0.2.8" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "mdast-util-to-hast": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", + "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", + "dev": true, + "requires": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + } + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "micromark-util-character": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", + "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", + "dev": true, + "requires": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "micromark-util-encode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", + "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", + "dev": true + }, + "micromark-util-sanitize-uri": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", + "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", + "dev": true, + "requires": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "micromark-util-symbol": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", + "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", + "dev": true + }, + "micromark-util-types": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", + "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", + "dev": true + }, + "micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "requires": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "mlly": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", + "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", + "dev": true, + "requires": { + "acorn": "^8.14.0", + "pathe": "^2.0.1", + "pkg-types": "^1.3.0", + "ufo": "^1.5.4" + }, + "dependencies": { + "confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "dev": true + }, + "pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "dev": true, + "requires": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + } + } + }, + "moment": { + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "dev": true + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, + "obsidian": { + "version": "1.8.7", + "resolved": "https://registry.npmjs.org/obsidian/-/obsidian-1.8.7.tgz", + "integrity": "sha512-h4bWwNFAGRXlMlMAzdEiIM2ppTGlrh7uGOJS6w4gClrsjc+ei/3YAtU2VdFUlCiPuTHpY4aBpFJJW75S1Tl/JA==", + "dev": true, + "requires": { + "@types/codemirror": "5.60.8", + "moment": "2.29.4" + } + }, + "oniguruma-parser": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/oniguruma-parser/-/oniguruma-parser-0.12.1.tgz", + "integrity": "sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==", + "dev": true + }, + "oniguruma-to-es": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.3.tgz", + "integrity": "sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg==", + "dev": true, + "requires": { + "oniguruma-parser": "^0.12.1", + "regex": "^6.0.1", + "regex-recursion": "^6.0.2" + } + }, + "optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "dev": true + }, + "picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "pkg-types": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz", + "integrity": "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==", + "dev": true, + "requires": { + "confbox": "^0.2.1", + "exsolve": "^1.0.1", + "pathe": "^2.0.3" + } + }, + "postcss": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "dev": true, + "requires": { + "nanoid": "^3.3.8", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + } + }, + "postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.1.1" + } + }, + "postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "prettier": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", + "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", + "dev": true + }, + "property-information": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", + "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", + "dev": true + }, + "punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true + }, + "quansync": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.10.tgz", + "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/regex/-/regex-6.0.1.tgz", + "integrity": "sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==", + "dev": true, + "requires": { + "regex-utilities": "^2.3.0" + } + }, + "regex-recursion": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", + "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", + "dev": true, + "requires": { + "regex-utilities": "^2.3.0" + } + }, + "regex-utilities": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz", + "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==", + "dev": true + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", + "dev": true + }, + "reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "shiki": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.4.2.tgz", + "integrity": "sha512-wuxzZzQG8kvZndD7nustrNFIKYJ1jJoWIPaBpVe2+KHSvtzMi4SBjOxrigs8qeqce/l3U0cwiC+VAkLKSunHQQ==", + "dev": true, + "requires": { + "@shikijs/core": "3.4.2", + "@shikijs/engine-javascript": "3.4.2", + "@shikijs/engine-oniguruma": "3.4.2", + "@shikijs/langs": "3.4.2", + "@shikijs/themes": "3.4.2", + "@shikijs/types": "3.4.2", + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" + } + }, + "source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true + }, + "space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "dev": true + }, + "string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", + "dev": true + }, + "stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "dev": true, + "requires": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + } + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "style-mod": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.1.2.tgz", + "integrity": "sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "dev": true + }, + "ts-api-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", + "dev": true, + "requires": {} + }, + "tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "typescript": { + "version": "5.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", + "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", + "dev": true + }, + "typescript-eslint": { + "version": "8.32.1", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.32.1.tgz", + "integrity": "sha512-D7el+eaDHAmXvrZBy1zpzSNIRqnCOrkwTgZxTu3MUqRWk8k0q9m9Ho4+vPf7iHtgUfrK/o8IZaEApsxPlHTFCg==", + "dev": true, + "requires": { + "@typescript-eslint/eslint-plugin": "8.32.1", + "@typescript-eslint/parser": "8.32.1", + "@typescript-eslint/utils": "8.32.1" + } + }, + "ufo": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", + "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", + "dev": true + }, + "undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true + }, + "unist-util-find-after": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", + "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", + "dev": true, + "requires": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + } + }, + "unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "dev": true, + "requires": { + "@types/unist": "^3.0.0" + } + }, + "unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dev": true, + "requires": { + "@types/unist": "^3.0.0" + } + }, + "unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dev": true, + "requires": { + "@types/unist": "^3.0.0" + } + }, + "unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "dev": true, + "requires": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + } + }, + "unist-util-visit-parents": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "dev": true, + "requires": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "dev": true, + "requires": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + } + }, + "vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dev": true, + "requires": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + } + }, + "w3c-keyname": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", + "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==", + "dev": true + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true + }, + "whatwg-mimetype": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", + "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + }, + "zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "dev": true + } + } +} diff --git a/package.json b/package.json index b9a22ca..c33e764 100644 --- a/package.json +++ b/package.json @@ -32,14 +32,16 @@ "@expressive-code/plugin-line-numbers": "^0.38.3", "@expressive-code/plugin-shiki": "^0.38.3", "@expressive-code/plugin-text-markers": "^0.38.3", - "@happy-dom/global-registrator": "^14.12.3", + "@happy-dom/global-registrator": "^17.4.7", "@lemons_dev/parsinom": "^0.0.12", "@lezer/common": "^1.2.3", + "@shikijs/transformers": "^3.4.2", "@tsconfig/svelte": "^5.0.4", "@types/bun": "^1.1.14", "@types/eslint__js": "^8.42.3", "builtin-modules": "^4.0.0", - "esbuild": "^0.24.0", + "bun": "^1.2.13", + "esbuild": "^0.25.4", "esbuild-plugin-copy-watch": "^2.3.1", "esbuild-plugins-node-modules-polyfill": "^1.6.8", "eslint": "^9.16.0", @@ -48,7 +50,7 @@ "itertools-ts": "^1.27.1", "obsidian": "latest", "prettier": "^3.4.2", - "shiki": "^1.24.0", + "shiki": "^3.4.2", "string-argv": "^0.3.2", "tslib": "^2.8.1", "typescript": "^5.7.2", diff --git a/src/Highlighter.ts b/src/Highlighter.ts index 508abe5..d77de89 100644 --- a/src/Highlighter.ts +++ b/src/Highlighter.ts @@ -8,7 +8,14 @@ import { type TokensResult, type BundledLanguage, type ThemedToken, -} from 'shiki/index.mjs'; +} from 'shiki'; +import { + transformerNotationDiff, + transformerNotationHighlight, + transformerNotationFocus, + transformerNotationErrorLevel, + transformerMetaHighlight, +} from '@shikijs/transformers'; import { ThemeMapper } from 'src/themes/ThemeMapper'; import { pluginShiki } from '@expressive-code/plugin-shiki'; import { pluginCollapsibleSections } from '@expressive-code/plugin-collapsible-sections'; @@ -179,6 +186,7 @@ export class CodeHighlighter { this.shiki = await createHighlighter({ themes: [await this.themeMapper.getTheme()], langs: this.customLanguages, + }); } @@ -218,6 +226,9 @@ export class CodeHighlighter { return this.shiki.codeToTokens(code, { lang: lang as BundledLanguage, theme: this.plugin.settings.theme, + // transformers: [ // TODO Error,codeToToken have no transformer method (code2Html have) + // transformerNotationDiff(), + // ] }); } From 0a7c48b8d40b0a4bc8b429298d41b79f61fc7e11 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Sun, 18 May 2025 08:46:52 +0000 Subject: [PATCH 02/66] style: add notation style --- meta.txt | 56 +++++++++-------- src/main.ts | 29 ++++++++- styles.css | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 233 insertions(+), 29 deletions(-) diff --git a/meta.txt b/meta.txt index ccb3d2d..48605bc 100644 --- a/meta.txt +++ b/meta.txt @@ -1,16 +1,5 @@ { "inputs": { - "src/CodeBlock.ts": { - "bytes": 2215, - "imports": [ - { - "path": "obsidian", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, "src/codemirror/Cm6_Util.ts": { "bytes": 1334, "imports": [ @@ -11812,7 +11801,7 @@ "format": "esm" }, "src/Highlighter.ts": { - "bytes": 8214, + "bytes": 8543, "imports": [ { "path": "node_modules/@expressive-code/core/dist/index.js", @@ -11824,6 +11813,11 @@ "kind": "import-statement", "original": "shiki" }, + { + "path": "@shikijs/transformers", + "kind": "import-statement", + "external": true + }, { "path": "src/themes/ThemeMapper.ts", "kind": "import-statement", @@ -11877,8 +11871,13 @@ ], "format": "esm" }, + "node_modules/@shikijs/transformers/dist/index.mjs": { + "bytes": 20611, + "imports": [], + "format": "esm" + }, "src/main.ts": { - "bytes": 5171, + "bytes": 5831, "imports": [ { "path": "obsidian", @@ -11886,9 +11885,9 @@ "external": true }, { - "path": "src/CodeBlock.ts", + "path": "src/CodeBlock", "kind": "import-statement", - "original": "src/CodeBlock" + "external": true }, { "path": "src/codemirror/Cm6_ViewPlugin.ts", @@ -11914,6 +11913,16 @@ "path": "src/Highlighter.ts", "kind": "import-statement", "original": "src/Highlighter" + }, + { + "path": "node_modules/@shikijs/transformers/dist/index.mjs", + "kind": "import-statement", + "original": "@shikijs/transformers" + }, + { + "path": "node_modules/shiki/dist/index.mjs", + "kind": "import-statement", + "original": "shiki" } ], "format": "esm" @@ -11922,11 +11931,6 @@ "outputs": { "main.js": { "imports": [ - { - "path": "obsidian", - "kind": "require-call", - "external": true - }, { "path": "obsidian", "kind": "require-call", @@ -13950,10 +13954,7 @@ "bytesInOutput": 100 }, "src/main.ts": { - "bytesInOutput": 2585 - }, - "src/CodeBlock.ts": { - "bytesInOutput": 986 + "bytesInOutput": 2677 }, "src/codemirror/Cm6_ViewPlugin.ts": { "bytesInOutput": 2708 @@ -14220,7 +14221,7 @@ "bytesInOutput": 32 }, "node_modules/hast-util-select/lib/pseudo.js": { - "bytesInOutput": 3782 + "bytesInOutput": 3796 }, "node_modules/hast-util-select/lib/test.js": { "bytesInOutput": 388 @@ -14329,9 +14330,12 @@ }, "src/Highlighter.ts": { "bytesInOutput": 4050 + }, + "node_modules/@shikijs/transformers/dist/index.mjs": { + "bytesInOutput": 4584 } }, - "bytes": 19037804 + "bytes": 19041508 } } } \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index 1c2a661..86cd470 100644 --- a/src/main.ts +++ b/src/main.ts @@ -6,6 +6,15 @@ import { ShikiSettingsTab } from 'src/settings/SettingsTab'; import { filterHighlightAllPlugin } from 'src/PrismPlugin'; import { CodeHighlighter } from 'src/Highlighter'; +import { + transformerNotationDiff, + transformerNotationHighlight, + transformerNotationFocus, + transformerNotationErrorLevel, + transformerMetaHighlight, +} from '@shikijs/transformers'; +import { codeToHtml } from 'shiki'; + export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` export default class ShikiPlugin extends Plugin { @@ -102,9 +111,23 @@ export default class ShikiPlugin extends Plugin { } } - const codeBlock = new CodeBlock(this, el, source, language, ctx); - - ctx.addChild(codeBlock); + const html:string = await codeToHtml(source, { + lang: language, + theme: this.settings.theme, + transformers: [ + transformerNotationDiff(), + transformerNotationDiff({ matchAlgorithm: 'v3' }), + transformerNotationHighlight(), + transformerNotationFocus(), + transformerNotationErrorLevel(), + transformerMetaHighlight(), + ], + }) + el.innerHTML = html + + // const codeBlock = new CodeBlock(this, el, source, language, ctx); + + // ctx.addChild(codeBlock); }, 1000, ); diff --git a/styles.css b/styles.css index 73aaaff..15f99c6 100644 --- a/styles.css +++ b/styles.css @@ -96,3 +96,180 @@ span.shiki-ul { .setting-item-control input.shiki-custom-theme-folder { min-width: 250px; } +/* + * shiki transformers style + * https://shiki.style/packages/transformers#unstyled + */ +/* color perset */ +:root { + --vp-c-gray-1: #dddde3; + --vp-c-gray-2: #e4e4e9; + --vp-c-gray-3: #ebebef; + --vp-c-gray-soft: rgba(142, 150, 170, .14); + --vp-c-indigo-1: #3451b2; + --vp-c-indigo-2: #3a5ccc; + --vp-c-indigo-3: #5672cd; + --vp-c-indigo-soft: rgba(100, 108, 255, .14); + --vp-c-purple-1: #6f42c1; + --vp-c-purple-2: #7e4cc9; + --vp-c-purple-3: #8e5cd9; + --vp-c-purple-soft: rgba(159, 122, 234, .14); + --vp-c-green-1: #18794e;; + --vp-c-green-2: #299764; + --vp-c-green-3: #30a46c; + --vp-c-green-soft: rgba(16, 185, 129, .14);; + --vp-c-yellow-1: #915930; + --vp-c-yellow-2: #946300; + --vp-c-yellow-3: #9f6a00; + --vp-c-yellow-soft: rgba(234, 179, 8, .14); + --vp-c-red-1: #b8272c; + --vp-c-red-2: #d5393e; + --vp-c-red-3: #e0575b; + --vp-c-red-soft: rgba(244, 63, 94, .14); +} +.dark { + --vp-c-gray-1: #515c67; + --vp-c-gray-2: #414853; + --vp-c-gray-3: #32363f; + --vp-c-gray-soft: rgba(101, 117, 133, .16); + --vp-c-indigo-1: #a8b1ff; + --vp-c-indigo-2: #5c73e7; + --vp-c-indigo-3: #3e63dd; + --vp-c-indigo-soft: rgba(100, 108, 255, .16); + --vp-c-purple-1: #c8abfa; + --vp-c-purple-2: #a879e6; + --vp-c-purple-3: #8e5cd9; + --vp-c-purple-soft: rgba(159, 122, 234, .16); + --vp-c-green-1: #3dd68c;; + --vp-c-green-2: #30a46c; + --vp-c-green-3: #298459; + --vp-c-green-soft: rgba(16, 185, 129, .16);; + --vp-c-yellow-1: #f9b44e; + --vp-c-yellow-2: #da8b17; + --vp-c-yellow-3: #a46a0a; + --vp-c-yellow-soft: rgba(234, 179, 8, .16); + --vp-c-red-1: #f66f81;; + --vp-c-red-2: #f14158; + --vp-c-red-3: #b62a3c; + --vp-c-red-soft: rgba(244, 63, 94, .16);; +} + +/* Adapt to color preset */ +:root { + --vp-c-default-1: var(--vp-c-gray-1); + --vp-c-default-2: var(--vp-c-gray-2); + --vp-c-default-3: var(--vp-c-gray-3); + --vp-c-default-soft: var(--vp-c-gray-soft);; + --vp-c-brand-1: var(--vp-c-indigo-1); + --vp-c-brand-2: var(--vp-c-indigo-2); + --vp-c-brand-3: var(--vp-c-indigo-3); + --vp-c-brand-soft: var(--vp-c-indigo-soft); + --vp-c-brand: var(--vp-c-brand-1); + --vp-c-tip-1: var(--vp-c-brand-1); + --vp-c-tip-2: var(--vp-c-brand-2); + --vp-c-tip-3: var(--vp-c-brand-3); + --vp-c-tip-soft: var(--vp-c-brand-soft); + --vp-c-note-1: var(--vp-c-brand-1); + --vp-c-note-2: var(--vp-c-brand-2); + --vp-c-note-3: var(--vp-c-brand-3); + --vp-c-note-soft: var(--vp-c-brand-soft); + --vp-c-success-1: var(--vp-c-green-1);; + --vp-c-success-2: var(--vp-c-green-2); + --vp-c-success-3: var(--vp-c-green-3); + --vp-c-success-soft: var(--vp-c-green-soft);; + --vp-c-important-1: var(--vp-c-purple-1); + --vp-c-important-2: var(--vp-c-purple-2); + --vp-c-important-3: var(--vp-c-purple-3); + --vp-c-important-soft: var(--vp-c-purple-soft); + --vp-c-warning-1: var(--vp-c-yellow-1); + --vp-c-warning-2: var(--vp-c-yellow-2); + --vp-c-warning-3: var(--vp-c-yellow-3); + --vp-c-warning-soft: var(--vp-c-yellow-soft);; + --vp-c-danger-1: var(--vp-c-red-1);; + --vp-c-danger-2: var(--vp-c-red-2); + --vp-c-danger-3: var(--vp-c-red-3); + --vp-c-danger-soft: var(--vp-c-red-soft);; + --vp-c-caution-1: var(--vp-c-red-1); + --vp-c-caution-2: var(--vp-c-red-2); + --vp-c-caution-3: var(--vp-c-red-3); + --vp-c-caution-soft: var(--vp-c-red-soft) +} + +/* Adapt to vuepress */ +:root { + --vp-code-line-height: 1.7; + --vp-code-font-size: .875em; + --vp-code-color: var(--vp-c-brand-1); + --vp-code-link-color: var(--vp-c-brand-1); + --vp-code-link-hover-color: var(--vp-c-brand-2); + --vp-code-bg: var(--vp-c-default-soft); + --vp-code-block-color: var(--vp-c-text-2); + --vp-code-block-bg: var(--vp-c-bg-alt); + --vp-code-block-divider-color: var(--vp-c-gutter); + --vp-code-lang-color: var(--vp-c-text-2); + --vp-code-line-highlight-color: var(--vp-c-default-soft);; + --vp-code-line-number-color: var(--vp-c-text-2); + --vp-code-line-diff-add-color: var(--vp-c-success-soft);; + --vp-code-line-diff-add-symbol-color: var(--vp-c-success-1);; + --vp-code-line-diff-remove-color: var(--vp-c-danger-soft);; + --vp-code-line-diff-remove-symbol-color: var(--vp-c-danger-1);; + --vp-code-line-warning-color: var(--vp-c-warning-soft);; + --vp-code-line-error-color: var(--vp-c-danger-soft);; + --vp-code-copy-code-border-color: var(--vp-c-divider); + --vp-code-copy-code-bg: var(--vp-c-bg-soft); + --vp-code-copy-code-hover-border-color: var(--vp-c-divider); + --vp-code-copy-code-hover-bg: var(--vp-c-bg); + --vp-code-copy-code-active-text: var(--vp-c-text-2); + --vp-code-copy-copied-text-content: "Copied"; + --vp-code-tab-divider: var(--vp-code-block-divider-color); + --vp-code-tab-text-color: var(--vp-c-text-2); + --vp-code-tab-bg: var(--vp-code-block-bg); + --vp-code-tab-hover-text-color: var(--vp-c-text-1); + --vp-code-tab-active-text-color: var(--vp-c-text-1); + --vp-code-tab-active-bar-color: var(--vp-c-brand-1) +} + +code>span.line.diff { + transition: background-color .5s; + margin: 0 -24px; + padding: 0 24px; + width: calc(100% + 48px); + display: inline-block +} +code>span.line.diff:before { + position: absolute; + left: 5px; /*old 10*/ +} +code>span.line.diff.add { + background-color: var(--vp-code-line-diff-add-color); +} +code>span.line.diff.add:before { + content: "+"; + color: var(--vp-code-line-diff-add-symbol-color) +} +code>span.line.diff.remove { + background-color: var(--vp-code-line-diff-remove-color); +} +code>span.line.diff.remove:before { + content: "-"; + color: var(--vp-code-line-diff-remove-symbol-color) +} +code>span.line.highlighted { + background-color: var(--vp-code-line-highlight-color); + transition: background-color .5s; + margin: 0 -24px; + padding: 0 24px; + width: calc(100% + 48px); + display: inline-block +} +code>span.line.highlighted.error { + background-color: var(--vp-code-line-error-color) +} +code>span.line.highlighted.warning { + background-color: var(--vp-code-line-warning-color) +} + +/* chore fix: keep color magin zero */ +code>span.line { + line-height: 24px; +} From 0bd01cea89f8bf6b899ac486b8a5be7bd2adbefc Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Sun, 18 May 2025 09:13:36 +0000 Subject: [PATCH 03/66] style: add focused styles --- styles.css | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/styles.css b/styles.css index 15f99c6..ebdbaf8 100644 --- a/styles.css +++ b/styles.css @@ -268,6 +268,22 @@ code>span.line.highlighted.error { code>span.line.highlighted.warning { background-color: var(--vp-code-line-warning-color) } +.has-focused code>span.line:not(.focused), +.has-focused-lines code>span.line:not(.has-focus) { + filter:blur(.095rem); + opacity:.4; + transition:filter .35s,opacity .35s +} +.has-focused code>span.line:not(.focused), +.has-focused-lines code>span.line:not(.has-focus) { + opacity:.7; + transition:filter .35s,opacity .35s +} +.has-focused:hover code>span.line:not(.focused), +.has-focused-lines:hover code>span.line:not(.has-focus) { + filter:blur(0); + opacity:1 +} /* chore fix: keep color magin zero */ code>span.line { From 3441347a6a8755597f24e8c7e574bc0662acc62b Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Mon, 19 May 2025 18:01:36 +0800 Subject: [PATCH 04/66] feat: editing in preview about: https://github.com/mProjectsCode/obsidian-shiki-plugin/pull/44 --- meta.txt | 51 +++++++++++++++++++++---------- src/main.ts | 87 ++++++++++++++++++++++++++++++++++++++++++----------- styles.css | 29 ++++++++++++++++++ 3 files changed, 134 insertions(+), 33 deletions(-) diff --git a/meta.txt b/meta.txt index 48605bc..76c6447 100644 --- a/meta.txt +++ b/meta.txt @@ -1,7 +1,18 @@ { "inputs": { + "src/CodeBlock.ts": { + "bytes": 2293, + "imports": [ + { + "path": "obsidian", + "kind": "import-statement", + "external": true + } + ], + "format": "esm" + }, "src/codemirror/Cm6_Util.ts": { - "bytes": 1334, + "bytes": 1392, "imports": [ { "path": "@codemirror/state", @@ -17,7 +28,7 @@ "format": "esm" }, "src/codemirror/Cm6_ViewPlugin.ts": { - "bytes": 8053, + "bytes": 8339, "imports": [ { "path": "src/main.ts", @@ -63,12 +74,12 @@ "format": "esm" }, "src/settings/Settings.ts": { - "bytes": 396, + "bytes": 413, "imports": [], "format": "esm" }, "src/settings/StringSelectModal.ts": { - "bytes": 596, + "bytes": 622, "imports": [ { "path": "obsidian", @@ -5147,7 +5158,7 @@ "format": "esm" }, "src/settings/SettingsTab.ts": { - "bytes": 5561, + "bytes": 5721, "imports": [ { "path": "obsidian", @@ -5168,7 +5179,7 @@ "format": "esm" }, "src/PrismPlugin.ts": { - "bytes": 3493, + "bytes": 3615, "imports": [], "format": "esm" }, @@ -7238,7 +7249,7 @@ "format": "esm" }, "src/themes/ObsidianTheme.ts": { - "bytes": 17553, + "bytes": 18247, "imports": [ { "path": "shiki", @@ -7249,7 +7260,7 @@ "format": "esm" }, "src/themes/ThemeMapper.ts": { - "bytes": 3045, + "bytes": 3151, "imports": [ { "path": "node_modules/shiki/dist/index.mjs", @@ -11785,7 +11796,7 @@ "format": "esm" }, "src/themes/ECTheme.ts": { - "bytes": 5138, + "bytes": 5236, "imports": [ { "path": "@expressive-code/core", @@ -11801,7 +11812,7 @@ "format": "esm" }, "src/Highlighter.ts": { - "bytes": 8543, + "bytes": 8799, "imports": [ { "path": "node_modules/@expressive-code/core/dist/index.js", @@ -11877,7 +11888,7 @@ "format": "esm" }, "src/main.ts": { - "bytes": 5831, + "bytes": 8132, "imports": [ { "path": "obsidian", @@ -11885,9 +11896,9 @@ "external": true }, { - "path": "src/CodeBlock", + "path": "src/CodeBlock.ts", "kind": "import-statement", - "external": true + "original": "src/CodeBlock" }, { "path": "src/codemirror/Cm6_ViewPlugin.ts", @@ -11931,6 +11942,11 @@ "outputs": { "main.js": { "imports": [ + { + "path": "obsidian", + "kind": "require-call", + "external": true + }, { "path": "obsidian", "kind": "require-call", @@ -13954,7 +13970,10 @@ "bytesInOutput": 100 }, "src/main.ts": { - "bytesInOutput": 2677 + "bytesInOutput": 3745 + }, + "src/CodeBlock.ts": { + "bytesInOutput": 986 }, "src/codemirror/Cm6_ViewPlugin.ts": { "bytesInOutput": 2708 @@ -14221,7 +14240,7 @@ "bytesInOutput": 32 }, "node_modules/hast-util-select/lib/pseudo.js": { - "bytesInOutput": 3796 + "bytesInOutput": 3800 }, "node_modules/hast-util-select/lib/test.js": { "bytesInOutput": 388 @@ -14335,7 +14354,7 @@ "bytesInOutput": 4584 } }, - "bytes": 19041508 + "bytes": 19043566 } } } \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index 86cd470..bfb3f4a 100644 --- a/src/main.ts +++ b/src/main.ts @@ -111,23 +111,60 @@ export default class ShikiPlugin extends Plugin { } } - const html:string = await codeToHtml(source, { - lang: language, - theme: this.settings.theme, - transformers: [ - transformerNotationDiff(), - transformerNotationDiff({ matchAlgorithm: 'v3' }), - transformerNotationHighlight(), - transformerNotationFocus(), - transformerNotationErrorLevel(), - transformerMetaHighlight(), - ], - }) - el.innerHTML = html - - // const codeBlock = new CodeBlock(this, el, source, language, ctx); - - // ctx.addChild(codeBlock); + let option: 'pre'|'old'|'area' = 'pre' // TODO as a new setting option + + // @ts-ignore + if (option === 'area') { + // - div + // - span + // - pre + // - textarea + const div = document.createElement('div'); el.appendChild(div); div.classList.add('obsidian-shiki-plugin') + div.setAttribute('relative', ''); div.setAttribute('min-h-100', ''); div.setAttribute('float-left', ''); div.setAttribute('min-w-full', ''); + const span = document.createElement('span'); div.appendChild(span); + const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); + // 这些属性很奇怪,我抄了shiki.style上的属性。但支撑这些的,是许多类似 `[absolute=""]` 这样选择器的css + // 也许是为了方便样式覆盖 + const attributes = { + 'whitespace-pre': '', + 'overflow-auto': '', + 'w-full': '', + 'h-full': '', + 'font-mono': '', + 'bg-transparent': '', + 'absolute': '', + 'inset-0': '', + 'py-20px': '', + 'px-24px': '', + 'text-transparent': '', + 'carent-gray': '', + 'tab-4': '', + 'resize-none': '', + 'z-10': '', + 'autocomplete': 'off', + 'autocorrect': 'off', + 'autocapitalize': 'none', + 'spellcheck': 'false', + }; + Object.entries(attributes).forEach(([key, val]) => { + textarea.setAttribute(key, val); + }); + // async part + this.getPre(language, source).then(pre => span.innerHTML = pre); + textarea.value = source; + textarea.oninput = (ev) => { + const newValue = (ev.target as HTMLTextAreaElement).value + this.getPre(language, newValue).then(pre => span.innerHTML = pre); + } + } + // @ts-ignore + else if (option === 'pre') { + this.getPre(language, source).then(pre => el.innerHTML = pre); + } + else { + const codeBlock = new CodeBlock(this, el, source, language, ctx); + ctx.addChild(codeBlock); + } }, 1000, ); @@ -137,6 +174,22 @@ export default class ShikiPlugin extends Plugin { } } + async getPre(language:string, source:string): Promise { + const pre:string = await codeToHtml(source, { + lang: language, + theme: this.settings.theme, + transformers: [ + transformerNotationDiff(), + transformerNotationDiff({ matchAlgorithm: 'v3' }), + transformerNotationHighlight(), + transformerNotationFocus(), + transformerNotationErrorLevel(), + transformerMetaHighlight(), + ], + }) + return pre + } + registerInlineCodeProcessor(): void { this.registerMarkdownPostProcessor(async (el, ctx) => { const inlineCodes = el.findAll(':not(pre) > code'); diff --git a/styles.css b/styles.css index ebdbaf8..60f5235 100644 --- a/styles.css +++ b/styles.css @@ -289,3 +289,32 @@ code>span.line.highlighted.warning { code>span.line { line-height: 24px; } + +/* shiki attr style */ +[absolute=""] { position: absolute; } +[relative=""] { position: relative; } +[min-w-full=""] { min-width: 100%; } +[min-h-100=""] { min-height: 25rem; } +[w-full=""] { width: 100%; } +[h-full=""] { height: 100%; } +[float-left=""] { float: left; } +[overflow-auto=""] { overflow: auto; } +[bg-transparent=""] { background-color: transparent; } +/* [text-transparent=""] { color: transparent; } */ +[text-transparent=""] { color: #ffffff33; } +[inset-0=""] { top: 0; right: 0; bottom: 0; left: 0; } +[py-20px=""] { padding-top: 20px; padding-bottom: 20px; } +[px-24px=""] { padding-top: 24px; padding-bottom: 24px; } +[resize-none=""] { resize: none; } +[z-10=""] { z-index: 10; } +[tab-4=""] {} +[carent-gray=""] {} +[font-mono=""] {} + +/* keep same: pre & textare */ +.obsidian-shiki-plugin code, .obsidian-shiki-plugin textarea { + line-height: 24px; + padding: 12px 16px; + margin: 0; + border: 0; +} From 93231856775883211b35c2945311d7ef2f96cefc Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Mon, 19 May 2025 18:46:27 +0800 Subject: [PATCH 05/66] feat: editing in preview2, enhance style --- src/main.ts | 4 ++-- styles.css | 25 +++++++++++++++++++------ 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/main.ts b/src/main.ts index bfb3f4a..bb04ac1 100644 --- a/src/main.ts +++ b/src/main.ts @@ -111,10 +111,10 @@ export default class ShikiPlugin extends Plugin { } } - let option: 'pre'|'old'|'area' = 'pre' // TODO as a new setting option + let option: 'pre'|'old'|'textarea' = 'textarea' // TODO as a new setting option // @ts-ignore - if (option === 'area') { + if (option === 'textarea') { // - div // - span // - pre diff --git a/styles.css b/styles.css index 60f5235..b34653b 100644 --- a/styles.css +++ b/styles.css @@ -301,7 +301,7 @@ code>span.line { [overflow-auto=""] { overflow: auto; } [bg-transparent=""] { background-color: transparent; } /* [text-transparent=""] { color: transparent; } */ -[text-transparent=""] { color: #ffffff33; } +[text-transparent=""] { color: #ffffff22; } [inset-0=""] { top: 0; right: 0; bottom: 0; left: 0; } [py-20px=""] { padding-top: 20px; padding-bottom: 20px; } [px-24px=""] { padding-top: 24px; padding-bottom: 24px; } @@ -311,10 +311,23 @@ code>span.line { [carent-gray=""] {} [font-mono=""] {} -/* keep same: pre & textare */ +/* + * keep same: pre & textare + * + * It is necessary to ensure that the style of this part is not overwritten, + * Otherwise, `textarea` and `code` won't align + */ .obsidian-shiki-plugin code, .obsidian-shiki-plugin textarea { - line-height: 24px; - padding: 12px 16px; - margin: 0; - border: 0; + line-height: 24px !important; + font-size: var(--code-size) !important; +} +.obsidian-shiki-plugin code { + margin: 0 !important; + padding: 0 !important; + border: 0 !important; +} +.obsidian-shiki-plugin pre, .obsidian-shiki-plugin textarea { + margin: 0 !important; + padding: 12px 16px !important; + border: 0 !important; } From 2196ed4bc8f9d3248c703ffb5b8a786214c7f255 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 13:14:52 +0800 Subject: [PATCH 06/66] feat: editing in preview3, save --- src/main.ts | 66 ++++++++++++++++++++++++++++++++++++++++++++++++----- styles.css | 31 +++++++++++++++++++------ 2 files changed, 84 insertions(+), 13 deletions(-) diff --git a/src/main.ts b/src/main.ts index bb04ac1..5b866b6 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,4 +1,4 @@ -import { loadPrism, Plugin, TFile, type MarkdownPostProcessor } from 'obsidian'; +import { loadPrism, Plugin, TFile, type MarkdownPostProcessor, MarkdownPostProcessorContext, Notice } from 'obsidian'; import { CodeBlock } from 'src/CodeBlock'; import { createCm6Plugin } from 'src/codemirror/Cm6_ViewPlugin'; import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; @@ -120,7 +120,7 @@ export default class ShikiPlugin extends Plugin { // - pre // - textarea const div = document.createElement('div'); el.appendChild(div); div.classList.add('obsidian-shiki-plugin') - div.setAttribute('relative', ''); div.setAttribute('min-h-100', ''); div.setAttribute('float-left', ''); div.setAttribute('min-w-full', ''); + div.setAttribute('relative', ''); div.setAttribute('float-left', ''); div.setAttribute('min-w-full', ''); // div.setAttribute('min-h-100', ''); const span = document.createElement('span'); div.appendChild(span); const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); // 这些属性很奇怪,我抄了shiki.style上的属性。但支撑这些的,是许多类似 `[absolute=""]` 这样选择器的css @@ -150,16 +150,25 @@ export default class ShikiPlugin extends Plugin { textarea.setAttribute(key, val); }); // async part - this.getPre(language, source).then(pre => span.innerHTML = pre); + this.codeblock_getPre(language, source).then(pre => span.innerHTML = pre); textarea.value = source; textarea.oninput = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value - this.getPre(language, newValue).then(pre => span.innerHTML = pre); + this.codeblock_getPre(language, newValue).then(pre => span.innerHTML = pre); } + textarea.onchange = (ev) => { + const newValue = (ev.target as HTMLTextAreaElement).value + // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + this.codeblock_saveContent(language, newValue, el, ctx) + } + + // This method is ineffective. When re-rendering the el, the div inside will be destroyed and cannot be retained! + // let cacheEl = el.querySelector('.obsidian-shiki-plugin'); + // if (!cacheEl) { } // @ts-ignore else if (option === 'pre') { - this.getPre(language, source).then(pre => el.innerHTML = pre); + this.codeblock_getPre(language, source).then(pre => el.innerHTML = pre); } else { const codeBlock = new CodeBlock(this, el, source, language, ctx); @@ -174,7 +183,7 @@ export default class ShikiPlugin extends Plugin { } } - async getPre(language:string, source:string): Promise { + async codeblock_getPre(language:string, source:string): Promise { const pre:string = await codeToHtml(source, { lang: language, theme: this.settings.theme, @@ -190,6 +199,51 @@ export default class ShikiPlugin extends Plugin { return pre } + /** + * Save textarea text content to codeBlock markdown source + * + * Data security (Importance) 数据安全 + * - Make sure `Ctrl+z` is normal: use transaction + * - Make sure check error: try-catch + * - Make sure to remind users of errors: use Notice + * - Avoid overwriting the original data with incorrect data, this is unacceptable + * + * 更新优化 + * - 我们需要确保在更新代码块内容时不会重新创建textarea元素,而应复用,避免光标位置改变 + * - 减少更新频率,减少事务次数 (500ms) + * + * 可复用模块 + * - 其他obsidian也需要这个模块,可以写通用些 + */ + async codeblock_saveContent(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { + // range + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) { + new Notice("Warning: whitout editor!", 3000) + return; + } + sectionInfo.lineStart; // index in (```) + sectionInfo.lineEnd; // index in (```), Let's not modify the fence part + + // editor + const editor = this.app.workspace.activeEditor?.editor; + if (!editor) { + new Notice("Warning: whitout editor!", 3000) + return; + } + + editor.transaction({ // EditorTransaction + // replaceSelection, + changes: [{ + from: {line: sectionInfo.lineStart+1, ch: 0}, + to: {line: sectionInfo.lineEnd, ch: 0}, + text: source + '\n' + }], + // selections, + // selection + }); + } + registerInlineCodeProcessor(): void { this.registerMarkdownPostProcessor(async (el, ctx) => { const inlineCodes = el.findAll(':not(pre) > code'); diff --git a/styles.css b/styles.css index b34653b..82f5a19 100644 --- a/styles.css +++ b/styles.css @@ -231,9 +231,9 @@ span.shiki-ul { code>span.line.diff { transition: background-color .5s; - margin: 0 -24px; - padding: 0 24px; - width: calc(100% + 48px); + margin: 0 calc(-1 * var(--shiki-x-padding)); + padding: 0 var(--shiki-x-padding); + width: calc(100% + 2 * var(--shiki-x-padding)); display: inline-block } code>span.line.diff:before { @@ -257,9 +257,9 @@ code>span.line.diff.remove:before { code>span.line.highlighted { background-color: var(--vp-code-line-highlight-color); transition: background-color .5s; - margin: 0 -24px; - padding: 0 24px; - width: calc(100% + 48px); + margin: 0 calc(-1 * var(--shiki-x-padding)); + padding: 0 var(--shiki-x-padding); + width: calc(100% + 2 * var(--shiki-x-padding)); display: inline-block } code>span.line.highlighted.error { @@ -317,6 +317,9 @@ code>span.line { * It is necessary to ensure that the style of this part is not overwritten, * Otherwise, `textarea` and `code` won't align */ + :root { + --shiki-x-padding: 16px; + } .obsidian-shiki-plugin code, .obsidian-shiki-plugin textarea { line-height: 24px !important; font-size: var(--code-size) !important; @@ -328,6 +331,20 @@ code>span.line { } .obsidian-shiki-plugin pre, .obsidian-shiki-plugin textarea { margin: 0 !important; - padding: 12px 16px !important; + padding: 12px var(--shiki-x-padding) !important; border: 0 !important; } +/* edit-block-button > textarea > pre */ +.obsidian-shiki-plugin pre { z-index: 0; } +.obsidian-shiki-plugin textarea { z-index: 0; } + +/* read mode / rendered */ +.markdown-preview-view .obsidian-shiki-plugin textarea, +.markdown-rendered:not(.cm-preview-code-block.cm-embed-block) .obsidian-shiki-plugin textarea { + display: none; +} +.markdown-preview-view .obsidian-shiki-plugin pre, +.markdown-rendered:not(.cm-preview-code-block.cm-embed-block) .obsidian-shiki-plugin pre { + margin-top: 16px !important; + margin-bottom: 16px !important; +} From 6169bf6b8a5051fbf8cf6ce71784c425df0ded94 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 13:54:43 +0800 Subject: [PATCH 07/66] ci: add workflow --- .github/workflows/build.yml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..cc52542 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,32 @@ +name: Node.js CI/CD Pipeline + +on: + push: + branches: [master] + pull_request: + branches: [master] + workflow_dispatch: + +jobs: + build-obsidian: + runs-on: ubuntu-latest + steps: + - name: checkout repo + uses: actions/checkout@v4 + - name: env use node.js + uses: actions/setup-node@v4 + with: + node-version: '22' + - name: build + run: | + npm ci + npm run build + - name: upload build artifact + if: always() + uses: actions/upload-artifact@v4 + with: + name: build-artifact + path: | + manifest.json + main.js + styles.css From 431eebc1aec572295bbed70d2abac016d831280d Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 15:07:06 +0800 Subject: [PATCH 08/66] update: new version --- manifest-beta.json | 2 +- manifest.json | 2 +- package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/manifest-beta.json b/manifest-beta.json index db10472..d32e614 100644 --- a/manifest-beta.json +++ b/manifest-beta.json @@ -1,7 +1,7 @@ { "id": "shiki-highlighter", "name": "Shiki Highlighter", - "version": "0.5.0", + "version": "0.5.1", "minAppVersion": "1.5.0", "description": "Highlight code blocks with Shiki.", "author": "Moritz Jung", diff --git a/manifest.json b/manifest.json index db10472..d32e614 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "shiki-highlighter", "name": "Shiki Highlighter", - "version": "0.5.0", + "version": "0.5.1", "minAppVersion": "1.5.0", "description": "Highlight code blocks with Shiki.", "author": "Moritz Jung", diff --git a/package.json b/package.json index c33e764..7702b30 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "shiki-highlighter", - "version": "0.5.0", + "version": "0.5.1", "description": "Highlight code blocks with Shiki.", "main": "main.js", "scripts": { From 21ce5e0ce83be0e26248a2e78e6c908f00662098 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 18:12:10 +0800 Subject: [PATCH 09/66] chore: resolve conflict --- bun.lockb | Bin 103405 -> 112061 bytes meta.txt | 14360 ------------------------------------------------- package.json | 44 +- 3 files changed, 21 insertions(+), 14383 deletions(-) delete mode 100644 meta.txt diff --git a/bun.lockb b/bun.lockb index b54126533fd61e0fd3f05cf61e955ff0373f1812..9b7d11ff2148642badbd75c94cd7e607ef3f416f 100755 GIT binary patch delta 32337 zcmeIbcU%^Zs|{=VeV*cUM8PvP;7N%_=_oMeZh zJl+IkBI)IHFr_Ch$1UM@AQv%L6RL@p)U1TU!jxp*z?9NrV*XCZNxoIcN6btqC@Rdz zD&VCQ3@S>=FXe3!O3I}anKUyYDL0?^VG`uT`Zy?oymk2y2(%$c zPDw0ELx$`EQXP+%3puH99IPT0-k>RdD8{VIc7e>9_=V@i-Kr&ho9G z#2HgyvkvHd@W@&|5|kLo1sUf>t^u5Ze>IFVSfW?lteESbt%zQ8QV}SrD9en;vj%NI zZMZG(iT_}8`9$!fC4Y_17f2`FyTU@^k=LMvPs~q9N^=(F;0SV1bB4obRzf(8Agg{k-)>>&0|2Q>k$gx$nG&OxIfC-rl| zUx-neh~CmeJ`yJd=@|nvz%R0s#E~B;kz3nKsb)U7D{rH6shdgjek-(RT}!G^i^m z@xw+ZN%%}+^7DS_UV zkQ2)>{tF8;Qu1>X3o?>35^|7@m2dHqxOxpJ=_1Ts>;#&fo1H=`N`Rb9tZ%#}`Bczl zBm&-15`#~GiftiSh8q;dU`Q;=$V%o35LaYWfAEup&K*$F@>8HhzC+3{1|=<{K}m=W z2PK0n3zX!G1tsO$gOYrXQeF>~c#QIc|4G6NUx|V%prpWIP@-U?l%ESq@=X9G6%~V$ ziV~&i;nH+(DQ^o($~U%?cyt>m>Ed;u#8c?FoPyGvq^lj_e28lTuQUn^l~` zOUlhjP0TIfWoKoTLd+{l%_W3)wWB0Imp%oaBcnXEz#*liFh3!yi^RnVpem4O7C;f= zGATWGU`BF6eriEVG5V&UC`2+^(t1j7I)qC4DnBJ5IXNRgFCnKiI|1XsM5?Gum_+di zR7hfFFeqt}hDc&i8h8>b-9dHeRf5lNAScauh0xk0p(Gk#D`-dC8p%% z78E8G6!4t8O2&sRD5)VQAtyH@na8_?e5BKQpr9Hk@}?9d@pwZaC;7PXXx5D#F5>cm zNFd?o-(6CXJt*m1ZlK2_otS*Fhs4mt+}y0hgo2bt@T8MhgOX0Km!{W9A=g zam86QgbegG(uP%on)2vfO3ERgxFuC^Bjb6DWaz;x)|9oelB(x}l6=eNggWco-*I31H;eGvng-eW^_v8hF3~g7;7WD;#yi?B}!><^zP+T6;H0D^Hj_=w)QM9 zTcfe`)2tcRyCUc%?`S0zbA2xR4GV*o%KmD6(X|m){)(SN=_xAS^eL6K&ILQ7SFGl% zzi#a9{84%0rpZsbA3Sm?WpQTbdDoXO(A)m0pX#oXl+h_LhZxo5RF)+u3P7BG(6ukgPyNpt~AOZ?O0Q* z{)Y4(jdcB{>Mwem6T1%||FM&Hi;Hc>?ykDGD*M^W)3lxD0HHr-Ed+VF68g-XKCRb= zF4t5N%3=M+EK)8HsS@4IP$G?h6q9B-hBVKJKCRn^-V-jM_*qJ{vQB_tB@D}FvsY_-@l6Hvc%1-#KLOpO6Cghmh6K=6TE5gJ zI#f4Mpo)PKfV>LyY2*!4rkivF1ks6JCNN;4p!dE3rk5Fe->oK}e4` z2oQv0H6$7NbhVBbHIfz>22%UzP(yeEDa4)1aIhEOPmOLe43HnM#^bf4BXoVKhjge> zpuiAgFbJ7QFL()(z+sYw4TPHm4$}oVG>v*rhZ+Y8%rMZ}LWb%LyaXa}#3DtyTT3s& zba2G=e6~GL!L(!K(4!Qjw)wqAmb;G)?y(i;L@TG=vy zAEir&Sq2EkW9F0QH1`r51xMO|a^Tc44g0WMHzO}$2sjUL%`qQjEKq`wbPAk>0@uJ{ zvXr{cTVK-OZ~;On2OM#Tq|uAPNy?G#`zhrRP%hp|Sm%g$;16vt`SIY|(Z}_C1&z4# zf?SRClJG0IaBw_a=tb$c>|)5{VS!_%+Q`R_R@Hh)!yx4&FRfwNmJDp_B^_!Dw;Azx z-I0WvF$U|6=qAko!4(LDAVjnqddnHZLB#p|cw@TBGLSN+m8}AmASGGQZbYoM2|eB> zfFEu`H`xRTrecv`t0NuCzX_pjfY8B|$LmFO!UoCgvd3Sbiaj_xtbPf}lrsg=e!pcU z(vOh#{F_u{E(zpjwa6=|hBOFy;TSzH{%Lc%$u2;kV!_2ciMnp!$oOGLEx*Bn9&aBY z|Ah$Y2oFzrD>L61pxJWkBM%%*FoEH7xk;iD{zt+BW7=DdC2KlX!_}IRy^?BqqwsVb<%x_HQcgNFZUh=#0ry%CU>A zz}%A?USvi~1qU!C?=E<3TDe_- zU_XQ;;^3S%UIGf~WTZ)!8((lF4K-lqD)pw7eFONbz3DKJ@80xy-vEIJ+Af_2U{Vpd zUTh7-ZAZZsvYck9mmm;&^I5Li*-Q8m90_CC$1}j@q)m;!KouX=I?Bq}-BEu?i9>$n zWTo|xhWt(X{2w*ApbdY|TM8-Zs$Y6*tOcr&{a)7|kw6vGM3`(w)_`b8|8DFINPnxU z#)d8bTSaVnhoHaYWTi!rlGW{(QFKsifhvT5SD=n1^>=X^@Zw9bx=Ro?KvBa!@ z%xRDD`1iVsApLt?+adkCW8^#hlLZlw{$1~kzvd-&LH3)ibWmr35+uX`L@CD3KyV0f za3sv?z>%26c+~OIya$eqN8&*~fVoh&6>);Vq?06{q*M$zGI}H$$AKdnp~KEgxLeAx zIxufZHstRi#k^8ZL5#VrWgFHoScQ2D1vRk)>;X<{in$lRsx#fxF+hGlgmLVOXV*ny zn+iJ@mVgVASfK4qb)lO&1qePuMusTHJ6h(1o+KRRdh7s3h0x)<6{11^-E#;$TD=+l;7eBE$bSrj0QM+C$oGxoGR z%x}&TzwUsPY%7103iPpPkRF%Jo&CU(@L_iV!sXxwfP)&I{jdH}#=t>D{w@{NLQ32P zkHUv9Bk8b+0C|7R-|cCkmajmJJF;%D!NWh&l~#@n5PXM_Ok)b{o+2TNd_)qg!Awpj zY>7d4!I5$TvJUaRy3tK;0fMpJB<+)I$Zvupox!ed^4+^*5n`9BMYwBT72bg(xdd!v z2lS8(9@OmPEe8f$B`i*cJtaMfowtp*5*RcJhII2}8Sql8-r<(SpJb(TjOH>Ts0Bm8 z1xeD#220AZ8)xA+aIoWd*9jxxg8_e&u7;G<$ivm_e0~g%m-knxWq2=&L`P5hxVEn_9(NdTY&wREWS1@23Mp1t^j5Wx7ynr-t=zM{ zSYE0egsp^Bgi*mGs^KU0B9w$Q{LUle7hS_%|B8})a0*)v4Q8)@pyFQ%qyQYrUjIZ% zI-JKUL_^q%P$KUwrEyXk4@xdVNqQfEG@u_qE<%aCKb|_WSAPkCpqVEb21t2ATL4K? zo=}pWEaeF$6{G@0o(7PMP{OAZ1{a}3&p?34vxvLNl_eo8B?;M5o=`shJzCF&NCyFg z<^$v+R1PR63@%wp(S3XA(OJEeIEaaXrEI?6DUp`}MDtK-I-vq!w3H{5q>qvEgpzWV zQl3zfK2FO20~NC^pD4{BONpXMfEBO~Ap8b^T!a$E8wrDpP-56l!r&s5cytdyu08Dk z5~_;(V}K%XmIMPScnu&G+yKZ$D5>D4l-`ok+n{7{JOD`kM*z79CHWsq=@UZfVX=B* zB7Fvs+%Kf`6)2Iv2FN8#iTn*K{hgBX?*IkhiX=fP<7efs(S$_>Xj$ zn^f*0m3vC57bv+1CHdM(d09#f@sr94CAa>p|H+LsflzWAAms@qw}Db#mXeCvLr!QX zX}-?Ve1wwQE>d2W5>JUBC*^4Kcx}3Eyb_?n+7cx#@K2N!?1^*(&}?bG|3fP2i~mD~ zF!Mh#R2mD!0OFcFX$uJ@e1VkzCrUg+zSAHVp(OthDNiUF73EU-D5+eQlGqqc{7*(f zl{AAaC89}EIicisGX5h4tEGGm5#o}iL_|x|Yo+Ogl5*3eJV(XkhR7Ich8fZfvXqEs z;y*H47E1HggOV06C5eBaq{8LWbXiJft2Gk2n7twQYw;g(=|)gea1$tzZ^nOQeD4EQ z2R$v7pCO632qm{?rSzOs{;w#}e}T=9{=XS!rSrY*+LJ2|uQtlr&DJ1^70p$8ul-Te;*rl*~$nJ&Y|EJ9f$w1^JoorIrwf6sR zmjaEr`b)@flvFrCDkqe9I0^N$BHXYRC9|Alw?g_TRVx1%OQLeZ+mm z<(;OJ0(N}-T3I%r+n1&vla*5Hc#Ds9tt~vDOs`7O7cYrPj9>J`>CC$q1%q~KslL!s z-9Of+&y&ClwnuNzS29d4-+a|3JR)Y4T3Fl@vn%&b?6C8fpLDsi)0p)B+t+Dgxe3~FdwM!Ln{`Ore78r*7(<06+U*8^ofPl)Fs}2HYubg3Z_Ms>6SWQc zzs?SxDN3##66R)SEw<>A*;PYv|KZl!m+8K#`m{-^2tT37NR6TO(}eVKaEi1+S`2*{ z+^{qeC7_RhD@hm94(TFFg)U8xq3tq+^mTAT+CC$Oz67o+Lqw_5m%&wL3TgjL5v56w z%Z#DD2MX!u;IwF;fid(WaB~KVC>{DSxanC!IwDI%>CrQ?V(5@;A^jbk0UeqhLw^Fd zDqBPu(VxLB%@NXlb3~L0y(}k&j?ER)!dww$M)%H*p_TH4^iFUVv>-2r-U2Q=PefVK zTfwCd64EAvM3fDkF$nF;NBh9Fq7CxVK5)bGMU*{#1YAjhFucCQpb5J=z1k->xH!I{ z`$l3*>2=CMr}#jIwQp;&u2L*EZERp=lYq28aG$1*Ytn;Z*23J`GHx-E}7kXR~+*AxVfpepMis2@3 zbBaZj2mKh_^uch`U=ig-&ln6hmB3BleCW^;xCz{<5)tJ~e+IX-6mBXNQU3I@Qn+ad z+%!Z)1=78Tz)fXv6S!bnPzE=Z3B$AdYK@#6c1Q1|;Bi3uo>p&rW-RKy=Bo9m;JbFA zv(|*mt>1I*Vb3Y$D{VVoieA3>jp4=>+j};O;(8Wou6)@`O^M@g|~;n+e1YWUATA!l{+5^Z>+zxh6&(b@G>5G?+Ie+#|?=@R$)Y_F7 ztWsLG{`&gB&T7|(98l?{eyi;D%|rb7H*3>+r!9YMJ*d1O`JIkxQU4VQ>#VNNtsG;2 zHoI8H@K9OfjA}Z(_uXn-?ReL}cHx+@Ndr}4R#VT+kM-9qSmAyD+L<|zbqYcY(hanZ zThW``YiDRhhTO5#2wI*IyU%w-Qd#aII(xW&_{h^mZ|5@=tU=OGqRUFi{GL=nD3z7MV&?NW{?8X=^omWv|rko?yr_bKTuz5l+E zNPUS{&-=3uciewxuydavnpw6wks*v@ z&!_D#OfY!hNM9eJFBThgzYwZ4*(_kUL(QaHBR-DbJmy^0>W7yi%4Y2|?^L=-F>83` zVn?s??wMDeCvIMNsAAmM>!mABU2bdVdu?<^MzBnyxKCQdLb;Aw=J$GvPF0z2m=pd( zrG_6MF6*b$VM0b~p)g)$RM*v$FOKxSHX+r(|BXRst)0U;=o!$mWsFe#S=**iVO_<{rG5AwfNEFEC4PTgH{=#|tYwj5>{!X)*c4#$9r47q*$j zn>>F@_}yuRr=I6b-L-JP&A=;RAN$N4ZuGRfCS#O&H!bwgT7yBV4z~6CM-QIv=VFz% zry2cF9vE@K_{X_go%CkW9>-kG>Y-SO&$w<~Y`oGtd5 zv~u>#@-JbBJB@sF!d&gq`t0hHn_~^kc3l}6US>8T*h}NdGrOCgDzEha>9!|&R|>te zQlCy4Euu2$b)zxqj}y{5V?@+II$;dP*?7bbxNKT;EXEnQqOl?>m);Ama)OYysT5Iz z=s}ejXA_0=d2j`^#W>8?;6{%VQAPA=aMPxcR#%4&Wo#O^FJ?f zzTh}uN8QzBRj+eC+%!zT;iy{c|8WOBXR^L{=FixAs{D;*Tc&1x)TdqAi4R^r*mL`n zUdFvX+KW1L;T_vvxptMs4b@M}_C2iXrx#)|BYTf!?x)Kx!%y?G#`GF0Xq*O<|7@1=D?N^uv$k zH8AUclnOfZ+4_3N$!;IJnT<^;`Lbc~`~%&u9OEk-HJY3fsBP?;<=?Ml)AG0W;t6s; zPS_0{*ZHiRokH>hn_e=ej;23P!rDq>p`R>@7%OY)+o5wu>J}f;Uvllzx05}>2fuB< z_290N2lY0nu2px8H~nT4yW64O-S${o?UupAv>h71n|E~mcBG4Zg>S$BgQx!O>76vz zR?3l58lJOxXscEWF9+=xKll`r?$J5dP;PAQ=3z{Q+f&n5_gW5#f41`42kq4+;RUBA z%$t_EeMqlSTY2j5*BzFfSjNd3XSR5Qd5Zv_yzg(@KDYQ9Xg9pet@mCZZq{@RNp;(I z#bapg>ZKoMnQbuW752>~wRP2@nu&h?R80K1#RxB5H z?OxKr1*S8bKB}#MUOns@uiyRf879uAYu+zQs5R32a5qtT=F*{8F1Gs;bi=gXWZ#j4 zyvor%YVXT9a)PXNyj-U_b`9~F@gqz|eC*qCXy&T6UHjb8rV>Rz4{aLW`nt|ReGU5q z+YO>loliWvGs#%z$;(N$+ppVhX#L2o*L?juqiK_=`r++VCKtDg|NP-lu#IWv=#~V3 z(Yil&Nqftj{y*PsG99cMx%RBFsO80`8*Nt{q52k;t(h{;=UlM)%3Al>8EWLQHN}&B zu%PMFQ2L0$zs3r6|aEHO^%oar~lkKRBALiI>oGAC$K6FpTck?0rLXPz4x5u;h$GGtA zwU1ZKoiY5FUety9bGE`UeLZzd40m1ezdbnW#`*-Ch~gF_FP`zCv*+oHSALo?)_L>Z zp>hu|Xt-!RDhhY*db;-_$~ zRKMc}5l18M^%yUwUfXp*SL@L;G9M@gEQnOiDa@x$=Ihftr-&j}$*SEp{{Helds@3r zNuz&MyAHhmaGZh7!1?Q!nr5!<9^hs&u=?I@u3MwFG&km^OqUPa)|I;y4c(iNVmI}x6XN{Fn zyq4ZNJBC_EYtD(G*3%jIe*?W2|8JxX=EhJB^dS7di9Uk=H`5mLVtQ|pHDqSV^oHq? zmun7;zi)MD;HDS9N(eEkm(fY;4od z)WOC*ICqDmYo)&%X`^Qr<+PBN^&V4mlc0hH2(82UI(^X`CW-%(rXU8dNv> z!GgO3WEAg^Rs3eUl|vWps>3ZtJ)d&xg5K;8kA8fB;JS(f zqpme{V+~f~5xu*JLg^(pAzt@u?5?_jr;gj1bvic4NSxtqb@`+3*={SGw7)!^pW#31 z=vEcq3%+|MeHguP=2$&b7qLaM>Mg?w4Y~%`JI4%?e4#7HD&Ea$1(lnm)T$G5fjk@(R@- zpSld$`5=D!_l75Znd!`^*lFL?mRE$;jypAO*#M=L+n!7HnnU4UPARBdBQ<8M)fDl& zr>W=5c6j(F4o!U6VxiaC*}b2%&7Zn^jYX$|T_1<&-%?p3*Cug$O2CAP%Wl35-C{a6 zU~EQj@2_jkBtuG$M-=aqRjhn{T3$DvXSWWU=A`wMKjW^o|By|<^8V>R#L1 z-ez`%V|lZxrmTH<TM0ddb%aayvus$xrMZUn%<0YUc&*O`Hhg|tKUH48UW+@Ay5aEQ+6>(h4+b9AO_3U`0bK_;#YFGp=f*pS zy0t6nWj$oq%p>Zr+`6xvKk$5mio)juj*N%>I7bT#~plkgy^2M`RG1u%(Hd!y_Ao()PLnvyihyREV=6N?dg_o>$_Y_ z_U&|cR>!AjqF95=$zQ?o4$JB_ezq}v3Pe#CPr{jF{8 zVccqPBessGM;oBp%B zPPSMzFK+Fqc+bj+l{@sdboiiV6u0f|u9Q4wjW(}Kda`p7P@JBQ`n{q{7)@b=EG!f!S^ zx35jw5@NtAmSYu@-zRaG+}D#m*U8=NdwHSdhwe{`T6y1j)UQ-K+$^C>Ew5zTsljeF zy=NT{k>AtM*ui9ACM61*`Qx%%^klL3!(f#19%y%UY-*9n(lrO` zSN!O%n_hII@AX}BU8i{0brJ^XS`c z7n550c735Sq-6bw`40!>3EFS$tax1gWUDXQ?R)0?)rDZl`XJgr0vqOb@+P%1Ex3PM_ z(A=_RKT3<9NDU^Dd`8ybh}gcp&ME2M&oHkjew+F{Z@{Mc$#$V1`cK#EF@Da>*|t*? z#7)ztPCYp2qOwJ(&9Gr>C$~?oy!R2B z*X2I5nQuFBM?$Z~v+avTC)Q#iKYduSGOoBWtYW3Q@LJG9*Avf%Y^+tt z6ub-#9@ydFgX>Ce_2Widh&XEL-sPbDaK}8ilZ#K#{%iEbagQ(6R82c~(PSurwNlt@Bm2lLu?Q?ydHqO&5(7E$$rM>oKI{MMuNiju(;@r`P1oi823}&@(vf^}-2Z ztT!beurA9Qx4A01a|ivL;5UMClXjbZ>1J^JZSYrm^t;;4!OjESzND7#TOT#Rq_4rG zsY7-QIc2Wt9;-cOxlu>c^*ejyU5FJsJ)@t)x_yaxEnZqyOkWo^qUk_QH+ia|ZnFNG zE1jL(Q^WSBZV0K0w>ZS_)qddC#jP#6UF@u$`t0YGh#~K$*Zi#oXL z*E{53p7P`ia)$X8rk`$wu8s0_xY6QBS*@jK>7Wyz^VYp=wK?0f@rA+2>4VI9uh!S@ z;%_SNc6VRvjZ-(iIWYP4(6{uQwfNR6pzp5E`u4&glek;H&SAape%d~wTW;|-)iay6 zHoa>%DsRAO@8E%gPiMUzt$*vI{o~{bA2-*rriL-&f=lPVv$K`)-E~>(&Yc=Ax4drS zrDd*7PIp@ddX}_rJuk-SY}}0TrT)El)JX$-ws*Uy3XU`iRTvgxbHmtJ4?iXvm zKHhz2(k0F9Kj$urK4YuDu)%qx;hg=w9ZTMQe=XUvNPKsb9B~^MWj($mS}CIL(&JX*)A9y9vIcjb_F08b%Ny~?dX)%&ru%qR z4E2Z(UL8X{rf00iW6cJ9MYLK(J*7j};IZZ=d_}ZIgg?*y4DJ%RzH3GJJIrNk@kn8_ zP@L20())or^^^API2;ygx-8Yc_x3Xn?+L}pqeqt>xE3`* zxZY9o(7v9&qx$#nZrr|~3HkLN_Yi^m9W3cCx$P@14w-l7ebk`&GX@)aW-+fiSsp#+ zwC83|w~d`fHtst&BW&K#3&Cmz=lezM)l)lXb>x{~P5svW%2vt?^K-LYtoXFU7X9#5 z`g_g?EP1Jten&Nd_p)(SwS&*lisaBG=7nZV(DUzE zf`zJo-JKdSKAjg|06rXlnShlzjm3o;KKsCna0) z)xt(m#7EgcRoFMJq^juN#&@kghqW5H;i=f}=)@CW^0tI;89ZpzrAHe1i?4P~RhJ)i zThA%c>{i_|k;8>U&#Eg=ZhJN4ePz03EbYHdKip&XvI9#Jlx<2q0(hS%x66=^wio)? z`K%t|xp{-X`4#cI+J@?iZ%n9vVv|#_+-7oVek44eU7hxVt4G-)-&Hb|FGI{ zVO}5OU>M`n`Oz6 z`cAuS#&e_{c;d8KME#_1gHzgxCr(>Le2SuLw)CR6fPD|P1x2^t+KW!#g=bD%MSOXR zegjs2H(FUM;ww^g*tTBuVX&*ViTDDF{sOjS4+g<@5nqL(Gi!SBRVjM;_FjA;Me}#` z;;T_~9Edtauiw#&(x3%9WAI&e0{(AFZ^i#wwC1iDN}JBu6(c6Ur{*rX#sIf{^R0!4 z^j5Umb#-{K*|g(l#a4;d6CK{SQF=U)@$0IZGN*CMy@vsgQD#>hKCRK{yQ;s{rjxca zSMEHq+^BGvOjqg3>OF8SJ@n}4-U^pmPNm1zZJ#nnr_H2AgE}1YJ1joEFmKFN`^y)$ zEwDDl9@OmZ zkbnDu<+I7*y%(ID86^Lr_2s3{YAmyd>ivjyR=G0W=VR?K>nrN3*M0uH==;>IE?0(F z7LYvxH}v&o6_2v>dpa>?%DULLK9TcZw=R%H(jlE zm?Jmo&f)6AMHL|(gHOijEuKHqDmJR^jr}qPlU+4;$u(7^-~KteIPcy0*V(s+^j{?2 zGh0d7zx{{EhHV$M3_gXeJajXa|7eTb3caIg>Q5h~ZF^`u{cP#@?_JI-}960x8b996G8lA^B9mfWz%s4qRJaYW% zE(Z7ZKmX$3xmX~s-ZcKfrhqFOWxqc$l2y!v41HbMThDS%pAiwmY?d{-uTpavyLaBX z7p;x*R`m(yeOveFnfJx029KU!`{;P}*t@?*-rmVI6Q28$hZ}>%C?sWM0 zbK8cr8Jp%`-`+2@Lh=J7$zU^~OZUW3ru6AOgX!eM+H}ZXRen&54KI#7;p2}4@nv(ay) zlKl3rq^fR>{g=su9tN0C2llosdL_t?C*(4E{x-?CId+tM#hE%2u z8JXybVoj-x{64%0_vB+=OQ}p1_ZI+iY1v4HLNH`YO%!WOWoxCblCxy`DO0vgxiU30 z;T95a19yOHz*T_!1b!AU8<+#k1?BwtZ`#>NI=nM1##N>DU zp=3p|Fb5*P%KzclO(bcXyk=pEo5a33Jw;yD6O za32Re2c7{h0kS`S1z&X7tjHS&X2$c;63mTcnffbkgp7g@!NqG0Qt^iD?q+kSqrQI zMgb&LMgV*OYI(y*7$xB*5g-Lg0*L_<3nb`>S4j+z{wKzD0m#Ve0JH~!fgr#a@Bo|u z2cRv`8fXRB0@i>PU;Pgdxo-p5NZ|?+J(g4!;h)gyJhk~X6WdIkTNw_DTNCmjGWSMl5HUuCskO`y%L@$@0 zk9*Q!!jtdE*x8W;&tRYc$Oi@i1A%NH3m~&-E|3Qh#U(%?K*|&W#Xu>*RYHs)m6C?Y z8b{KH1EfJjF6LTA`jp&{1x5qQfC<2OU>r~hQ~+H17%9)mI7-S+l%|n;l5Z)n1Xv8z z12j+rR1>F9!c7%01(*zwLW_WfKpij}m<7xP7@!s)N~cQcG$|#r8NhTYPwt6~U>-0R zm?On}&;`I4(&?l^(yHYEX~k+_6|e$WDa9tx24EwwPD(d`t_L;)B*HHN7l8}F4&Xd+ z4mb;(0Zs#_fRn%p;5cwh8~+^znt&s~Vc-zsqD8e4-@xq^;4*L>xCUGW$P_{7E#M|V z@)74*Ud>18o72&LE+pNIn%R zK!6xwg(QJ=r7~m!fZUTVCUP$ApW=+uF$wvqWb%@|FsX>_UF$$KK{Wuf4_*vjNWMAZ z3KPpoVKvCO3Q2260fcfO3n>>C=*43u=~CWeVi)&{NTj(T39U?nb4V+>mq;ST!x1)1{sx$|l6&1G(dX#u z=;Fq1U)7Pa|8iFsO||@!(lXANvZb%D)v)sKFj(>JW~4Yfx_Us}6tdwmK%wH}t+V=w zUra%gtD~Evi)628gOv1+Myp>A+diJHh&gRX>Db^_>e&-0Zi`G`i$}eV8Mbseo5_FoOi;U(L~=o*+dHDI=Mm`jmlqK2{at)Z3L; z3)e+9DeH4v;&*NU$T@XGndO(MfquJtY4|DGzj~i<-#HZoI0f}Ny zM^B!q9CONm()Z+E`u*;Tl}_EVyMb&DHbA-eng{gb?>P5T=_XPzZc&uiSB^0?q{0ok zx2i`C&)RWq-G-IOfw4$(Fpf5q9(h^X5N4hsWnjd;Vw`(PEOMf+&_3Qw#>I>>V4fLL zk<=>2*N8Hpb}-RKlpA%78Ar%PW+x$cnAb?-E6Ovf#+1G>_v&yn{+)i^UcAVILNu6+ zD`R;k2s!v|lFWrmtk;YQs1@U!hr6PMQ}cI8v>4G9e17Ur%g zuBVyAKHA>%vU!Jhf;y{<_2Jey4UE=61j2Mol zB!pRS27ixZD07HzFh=H-8(*g-6J-v^nYUyz&EdF5%p9chy|kDugk8lv1#7fYi`}%A zU#_(M5fEP~Kn28Cuyqe(WJHEwkH_GH@S(AuNE`o~oJ~ zsEo96MF!${WZ>SJ&%L-9DHzl1 z!T>$=l1Vc_)c#~bWBasyFZ7pJC}z*}N!mhb8c@jTt(9oLf$F3U^#Vj_KRo=Pz0NNK-`U z*8j~)HXkb*S;A5;2d7>y)$JdT2tm??wp3|tD)5T(*wpfoA4hS2iv$)AeNb2 zKYV_Drw`5A{$Mqk$NsPYGn1_;6DGula_7G=V}{#M`r?1+N{k$`kNR`Z{cjrh2aDuj ztYi)I__Nl(mkscD$M(jZH=K#E#Q>KqBgPXfBzwXM$+hctTscCPTnsfb&Cjx6X4_Kw zSQHy)jA<)OsocpJ{%`lJYtryYM?o)4SMWZ2Rt9X8i*@aJTwyuc z0g!DbQg~KORx2vplRG5ixN5|?xQ3VZe2UC;9?0-_bBHx0CES{MfqMDVtr;ad%GLeP zP5*PmkUfH-_|Kj6=VA39N7SDK3ZKV*9ZT}}aOVyJ;oepc=V4n((w|I zB81i__47SfUJcM|PLZBTQZAe=+P^^2d|-3RSd<|3GN^Pq)6APk~YiDZ#ugW9)!+i#t2!Q2C1U)7RBIp@ejABQ?pG zJG5ovv>sC%HytB6u<0ey&2wZb94J>$?pT=YfkR#wZ-_aH9ApMS4({L>1NEu>R5QoR zYIkIwp?-c>M@GRB_DCC!zZ{l?UPbie^!JMP`lB2jZVxfIQ4IGsYXt29EowMj}YGb>EYf*-}g^#ZbzyMGtmhe%3PQ|vUH*=bHzzw zJqbj<)Mw&92N!#!4eGGUxUC@ktnA5JkI!oVDmb`PZn$GBPzF;o`4q{WgQL;zd)eYn z5HUlisAc?6t2@l_p`4;11DwHvH6@zNf!bAccI=M|b@>CBchn?@W~& za|h`hP+e1GId}VIl*O)|l-=UR+<*%*xubMUU%V7AO&lG|r&=RY$o2P4C6~e-IwRDi zDhl*QY=lFFfD0xvcnpz+&MUh6{DEWkFxhQr*J3bbPqVy#@Ix2NplK!mX7|HFD~7iJX1)D zn0zYvjD`?Bk@k=0epsS-&JG)G~vbVVqcXrT%Wy3RHDA}B8PQmd) z>;W<>I%o9F4{SBNIfXlb=yaWiNu%B4uFWaj5k;+A+PP5^#CPkOleklivIZ>pd7*l1 zaB~WG&QYT7H-WmD_J`&a?j)p#(+c0z1%BAxoWh-z#2wJmoWh-^R4KPooZervT}gA& zVrh$9HHY=Oy{&s4WpfI5Xw%;N)l0SXx_oR-xdUz57_Emtl$#A* z6iqj$a0frNR?-Y;vxTZX)||wh4doerY*Ss$#vxqFGc2TFH;imNdog5nJszP2Wxm?zrdX>HB_PR zEdPo1`0&IndfXvWf?U6YPrA*-(mEUuG4YI(#~mZZo$AAfo#Lu&8~pKs zi<{T}u#fV=WccT;0Cy_Y01d~YZb#dlfpOC3#2>?%q283fHg{eXcZLu#pPA%M87Z=l zpu;1XwaDhlogVeByMdkhxZ`9gC5r<*_lF${JTx$p`GKLPq`!F ztj!FyzHd-AfG+a+0R4u=wH!J4mm-;&K2*3dcPLiDxR4(k>#c_p^Ch1#oVzmoc9g3z zcRbbtw+oT;>OXt2Ias^6U66F+V=O%=tGvy!r28L=7A{0i>DD8;4YP-AiMVYISCXUL z(r(|KF~=6bm^)$X{`ZG5Z>{%fG~3VR33GcWZWmb7gHiTFm(=%Q0?>3%?(nbKb2QJ*dU5JAN=SEZjXl^e;>-1} zCwb2vltlIz(iG`V(wI9?%(>unV~-!vq^xwu_E*PZfA-Fg3g>n<9A#>~DIHTb-2VE| zo~;c7j>qivr*!2=p1<7rvgPoV0{fwc`(_8_$TvF(seil4FnAs#`RKwOgN3q^4FmJu zpXzEnKUVSqd7jdRQ_+q}BYq|G*2Xde0uVQAyqF;YRCudO>6cH3e|-rh`Hh`pr;@^y z{G5cW9)Zcs}5@K3=DpgJT zk>A|U!x5hvn7F=Fup)T~UYIt7No`NH3))lhszjMXdP-Ivv~Pafp2}09+%_ji zQt=ARf<($<^R1qgH^rQbrdkVe4r+>%gA*YR&WuGQWzFRFqLfr&qk|I;5GCK?FfM~A zOD3-uWzqtV$Tv^vMWyi>r{0vjv9u0Wfo!D?7_-dnOv-{)#yIq*O!=Q^wM;@G z%r#A-gv{zbFxSnMNx*Bbn6>eg7AYbxL@U{zaUfq3NfJH!Quu~|IUPn>F}a;7-OXqF zQkL?6D=Wu1B~iM+i_4NIjb9SZ9rhHQJrK37PNLfBNKOq!wUQeL@_Egj366nt9wkx3 z<=M~VOja`G%*dxunhc#xIhkiA3ctW+obgbmf+8S<-6u#^G0XBnmXydXUJ{-_w|7$&?23HjUD5u7WKi8*CEe zyQEWb@*Zpi2j#2y1Dy6s=Xp(5REt(kU}YuM%qdn?UF({GO4MQr2+YJ zf*k_6IT>k1`9;|Y4(wsK`OLgjDqNmj)|gkRc*N_;Xhu_3c7M%>HvCnD@O5!zCgoFI zC=aHNjF^x4lpVhXrY=eMuu(d{2sRB5rUXoU5mgQKY`mxyQ&BC@Q%piJ<&NUhiYfmV z_!@Qdg<>j;YLSqi%{Z4(hlq&jHV$1quMB~GqXa!*S4!#plYB}ECC?O;QZ4_IxVDrs z_>0JI2yFWHcRi3>{3UDU5X$Ixk!4OwVPZkD18nqkhg)P>GNNTo7Bc6CP+Gs07c%-~ zh^pUn4Ji9dE!Ka@@U9Hg%I{^`5B*CSAv0;HtZUSVA-*mSMST4#2$6X+$NDsG*k3d& zG7E_7O5DG4W!l8g|%D z6;pA{nJ~Anz0Cx=yFPjn`S1JV@AB0M_KDh zxA!O`y>lQ79RhYFCRno(lopDxbMT&WN`rD|PM1>=OwV#W19oFWb+hRR%3hA?7KXW! zodLd&riALKlpRi3ejG5}Nu~?WF=z!bXI&g@Z!?ziCnHi|Dzl2g4B17kc}8%e;mw?} z)GB%QCk>26B^7AT-jZQII3+P7Im-bHAb!4Hkdd2HFgQJ-aB!MKc1CszssD61hX0#N zsxz~=k_u!!cNa;+PK~3?*j>ctx8o?~77TwN6~zpnOet?xtfI0hW<)w=!#v8v zvcd`rCsB9#zY0T>KC`r%Qf1~=<6BBjCo6vQH_7)vtWa?^l*O-%K?MjL{HBDAVsmC* z4c0Q9LQ2B|zd#`k3(8K&&&bSiV$V5G$|@?rrokZ*C)5sPZYNX5&VNjXBmZ8;!9_AJ hqf%97P9UY!64}VqTa=KN;(*T~==#l#HIzN|{{butSoZ(` delta 27661 zcmeIbcR&=|@-8|(49I|kAV`o520%e_Qb5c)pokL80-}Hf1(aYI%$UVi+N_``7;zg= z6a{lu%sJC0%dZstH-TU18e(&A)*XeUUs;kyowQAL>6}o#|yW*L~i!~Z^oa|3s zn|)~F_4~VuMwUK4-hc3xrP;&1DrT=q(vI78FmV3P`~6r(L|5Is2unp@sgmI(B0Z5P z$4)HbX>3|zd~&)-v`ZoqX+dtGE)wa2CdQ6TrrZYLNzSOKHmDT*pxD@9j`3-t^(a>l z{7O)g>(o*5si0JD5U7pu&2I3zJ8T6AAinQ;i@+9V&6oRS(V67^N_ zgX5D2IgS`6GKDru*HzJBj)^HTQR%QEF+M3iU8IXdN)JLgYCr)PGGK6GRCM9 zu~{RjMZvIwGWxN3jFC?#nKD~!+OX7ERO^7^`bgamIkhJ$CMA^|VF5Xr|5QgQ*JAH5 zMtVQhl)6k%BY7d2m5Q4xO5tE+%ZZChb42w+iojEine{~?sLeSHN~T36@CJ!OP+>#x ztw0SxN2JC(CZvf(!$u@$#iR_1eSum~BBqLLCtQK>_QMWv?28bD5s>|(5>exOw0Wl(Ykby!qlnkWr= zDBl23GUS|zNQAm`I)FD3DG*(_Ask|4 z&!K=k(cW6=iKU=a@e@$$$meohI92Hryfp= ziys;fz9S->dejG$%+Lg-bgw4LYF?x9q-PuCRGnp0B~4e+)Yu`hnId>n4+2tPg^c7l zeNgI=<95p7o1GD#9up@LEwfklbSDR8K4(y>AQy5&&~#Ahsc2Qck%QwCV_|4PbEUr5 zpwz$tpyZbWj#M5!S%w>`FbD|<&zv@(&TAE1dDC1gC8fE#a3^|~bo~Yt`gVJdK3>Q&Qy#%GM zdH_luDs8Q#!=lpTsPB^!6SF`>BL=4s5yhk=4~|aB6wQD~Opt$YnyzDPW_oH=bQ`7X zBHFNP>sTm;wpGStKNa<9r}T7cY}BAZ@u|b2lCzSc5S98U#!s~EmBq(EFWHp{Nmonm%Hy%m;&4AyIJ4{G$(HI_v6uDY*vR?=Wj+|@=&l@1I7p8jUcVVz zT3=KAPRwT8`HK%q*lc}&#);jjAHa-czvu^uSF5wW2L9r^>TI@wKV!k}GzefK*)IkG z(pefJ5h5{%VFL}k#OF2G><0dfIlHq#fOIrAHLZ{&V#mq7nL4bmp}+WB9X8w0U)l;4 zr}Cv3Loe}0P4+9&UTU(wM*iv!h;D!OyFp7Pj@@Y#AYDQ{@@lYwhF;RE;4o5i)Y);y zUQ81<%Q!$f2+^g?0hzQA93~584)Ikj*4M;eYO1ZwB4PtgyrjLrA?kB9*+5TkO)zAp zgoQ2AN8m`m8e3)Lg@$A`43I`5x=6no3d1-5Y^NRV)BY~6gbQ(u$Q5%t3)D&{EnCcVSB9=!S(2*lb&W@$Cj|xvjsnAtr`Eq@jOpyu^JB zSzr4A#*odn570ykxfsodi`_6oQEw=nF&iB9p@ff$gW$+f%BFk=r!0qNs)rkcm~EVo*^7*zYI@V12a|B)*iI7g^>3DEicXVJ%5w-gp|Uh zM(;2qsV0QfP&CNaOZpHT^&rNVzn9p?g3WI3FYRj~gco&kAvg+Ceu#)QELmSie|0&w zl5m7gOX(!sQO9DmAl~+aBYlV>a55`pOsVtH(i8?WJaAMFcEBM=z)_UJjs{+0 z4Qtl7g}*q`n$2$EFD{n-hSyS7;d-ruCX5D6D?1K#z|#BRf{=##!9_WUM7_Z&r=nfpBEgCI@uuHQ=?!og&qJEAUwimV z%OJ!)AxFj!*Az^6WUvNb(ME7I^e|j8^kj}AQ8Yg!Q*hS_a(+#aUI#~&pp37#rjxRW z1|MQ0!O*N^S-?3K&Fln71Yv8X#c2 zy(Ne)Z`RMPrMRyfo9*u}E^=eb{r#mMA*V1zGg`n3OJbG!ENK;i( z4Wwuy>YLKGLS~CFrbvdc)>!a`2Ppb}m5zm!kL6$T9)OfO_}9F3(X!t)gh2Xh-q(Io z%1S=|Rl$8of3M5|YtQd$lOg?8Ej4XBq`&JGBdUJS+XYezz8V|IFbIEFa39itFwF0t z)TToEySdwc%j?`gS{K6KE9-)g_`R|@kkSyZv6k9<71G~ZW`ha$cfHAw{+@R`q`#Rf z{R%1Bpd2l&TmQASGW3#-1c#2|Ey2X43`zB!BxT1Kw3NQX9YzLCV-37yjRQp@3`;&Z zu{SbBaJH3dLWsdmSsHqYCj_$PUHsK|LfD&Mu`DpD(0J75M`toPs3coxZ`y_}m-|a! zKy!Bb~e!^%KOg z-y60ROWLzvgZ;&w+q1r1{ne-8xv&FGbFwqIBh8v3yns_S4U3UA{Dvr`xj4{E))yS@ zXlQIQY?YaEY%W&i;iX7vtQ?yTQe7lqQs7mpBSH4ppw;iF^tu70b$Lb39i??4gx7K? zYeQk=OJ_k!(~3Gjc@1_ytaVIMxVkqOi2A!yUDhUz?@( zz#$`QrTv!+iudF>+O$ssN5g{;SLt4G%ADB#NM+ss3S}%p!77g5?aF3?Bdcn8&p}!j z!hydEG3o=5k1DK{6;c+`VZTY$dWb}b(;N+C*23^mE+A2mVqqc&yLpM{^(UiV-XdBd-;o~7(iP@6t!>wfBh#)`Otj69BkvS|3DSIVi?9>|3pb4+RZCOB=8qe zl1Hd$q>3WC`HLu}_Xel|eF3_NlDr==xccD@iRz|?QilFYmZxgCk5chODLq=n6Qv3U z0VIzF=pst|U}A6)B|Y%~$rAv&5)j7xMFL6~s$_Xeij!3GWR;vK!`|p))R{UiT_vqe zNy`Y8{QrcCS;xLc3M!SUDn(QZj8pMMDSf<(CrY+WRPjV9eUgg*CrXXaRi)Raq-Pqv zJ*Epc^cGGuAD}o~3}^x?0m@he&_$FgTulrvqQtLJ(PB__U;{wqHUV@IrF^9-x>-g4 z5W?UO2o2MbLta2FKMs(~ zP64Fg3_ulB19a7>F{rCSXZ532MC2}o8) zl|YnkHC6mSQ5qO^kxmuYQ|0?ll(OjJ4^cf;emzFjBQ*k%h!i(K24hf1RmT5olpm4* ze^gYfA=D);z?0`3T~!H0spXz3zBZ*$YDERuesM;DR6GzI4cX4B+_fo*x~Swt=~j+E zR4$l!wqk%0dp%B5L6YvO9P}!k_?{|0Ohv;%>H1HUvP9qyHK?~L|36Vm>VrQN^Mfe% zsKUXjg7K1aOf+UkOp`Ne?9`+PHaAJezDSZY>a0(41nZqFW0xk&@uB$%xX0jvQ{;@4 zU6>NVE=ZBF-@$3KorguRorcNS4a4O4KKTXQXK?+7%b9v?$?yoac({y}rOFvSwpVHd z8<{F&E5PZq(zFOxGfl=OrOBBF>`rhyz?rAZ86!46J%Wu(m$4_onXo1!B3R=QGIq=e zIb+Hm1$P9T<48GuO&%G+W{#AxH^5o4_8AeZU51REnIUJa*(=~KgY(OjGq&v1Otdc( z?E}}C^~pl}ve3RPIn$JV0`4)m;A}Z#&sI%C`?AqKaLw4xqtL!lXx}I~8*TQVB$8;$mjkuxrAuQ6!f7_<+Z8!H`)_KijR#>yEFb|<(U;LH_r#*2+tpnVFo z51bEcl7sf)`^=aeIn$Co3hoFv$8mDTkIfo~_KidPzy+}OAGmGcy0J_y+BZeU#^%bI?rhc!v@aL7KuZtSekR&CRmL8iDrdr2 zJ@{+~xS2EM!Sp6axFqJmU6>1HU2nOy>6qd<-e%^939g?)tL{WD&JCY(w{+s4j(eYp z7Y_dRQ8zc>=z7DH;0u$wU08mT=VuJu5BWa7nvIh##J?e9PEVPvPHQS*$){V4kGGGJh}$FrTgrX9V0%cN6% zeir&s?*}NoP7*FjlMIe96xM@y%?pn9Dn5BkmuT4gC6*yON| zkIAU)BJXCB;?^UNJzP@my=mvUNvrIi&e1*T#>%D}E6!)_3QB#_a=r5dbzjT(_Mf%a zckev*^y{3(8M4@=wr##P{baW!=Vf)(t-ZYl#XA>Xj#xV~^i!XX$=BbleW&?#Xm%~@ z`Us|hO2*A(BfK_^8vQl3yx{VbmRftqi+_}isgR6&w5#cSQP{we@YhGa_5WZ}dFk=I z+|{?c`%d!9(kt)PAk6lofAp;*m;166ux@(B4AVX5gDT%oS}?G^Q})%x-)`uZm$%E& zj+)^y#Q($PWmA5xta~c?!MHu{Bfj=LQ*Be}8U&C-c>E!@T-e*AI5dbouiB)q%D@t5@f? zb_~9I=9P6nhwRdz$9gW!4xXN};X~K%x$`_83_8^J?Y(!`50xK(qrnEV#)@@{#`B{i z{ce_RFgf~6BOq2Q_r%vKt+qE-O>ZduqIW~b@#eDiDKod9n!aMpn#`cEiqD-p8Ek8N zGOEzH&b5?3Kd!6g@wD2;C5d)x3~zL(V7Hmxw91rW{lgO`jIFk}HGcW?(wpvv_4akR zyqLAP*Ttl|dy4Zr1N%Cr?2575zWcB*MO}0yTbp(M$$n>z*&Cdk8NrTQfblv{#y(ge z56-AvN%7R1*~`v!tlK?fk&XFY+jz6Xm*y+vRT-OCa6Xq`x7%TNa_-Pa=6_@whios= zx!!Y2>sH3PA;#rRZ{HnvZ+XJz@u?2CnRW)$nQ2=i>dOfhTh&zC`EXPbuR-8%Kis%o_KLfPHU zMNi{K|2*xpG}`%jmq(X$#ui#lczv(>PU4LFC-%Q|9mb}Y8+QEG;eGPy10l6+9aGy@ zbHltT-TLZx(vvGnrzgJ2Zavm^?lb z>55A@&4EmOPQ zyW0Q7p_S&Fj%dquT&iB5Kk9T&WA3*_yGo8+Z~CM%WTju5=HF^rr(ip;!7y7OQ~coE zO#aAiQ|FvZgY^E+OvS10C(7q6*4o@WBP3yFUU1s|uM63}=CjXCo@YKK@>o}oE8|~> zOl_EXIIG+Jv~bDOrL~lftKDQrll~jG7_Z2A)~)z<(Zi8ZQxz?$oaP(6cxYf2-D;<3 z>Ye8!I0yR@lXVum6FOHJ=1sr$>PTv?{_yon8+B^fHKs&|J-NVGQUBrA;&anqjcj$b zd(Q2stbjY)zl2@-koB^MiB0Hpvx91f?`bvpTJ80*L%byHR_JqCjNaL~TQ{#VkG~s~ z*QaxFms-|MsBPWT#WyV56esArZQ8i|lU;i2rO&jO%-Lbj`{|w3yCZvi%B8W_nI~!& zO*Tfov%VC!z24?l^Xut;yL>Wd+NpfkNv^)8?3jhd?DxZRW)fSl1k=zWOiD}T%oMi! zQcOeOwt<_}GJCmS9p^E@x)4QOhw6fjbCpHmkP+)6h~(N-N|{ z9$N)2av3J20y)F7!wayyE|;+vz|Ci^3o%^5O)8W#99s=8ZiS5XSSe=~vg1}_`%r+P z3~n*&vI=1hZvHAcvy{C9F0&A}6v>(8Y+e!if2EB5P$Um7sO_3j=PasrwO@Is|K4Vs zm;Y$Cp|UbzgJz8WA*XkXi!|>J(ifeu?9?#v!IG5jLmUq_Sm&Rq?{xLGyVi*lS=Wm9 zbDegwCs!J?+luAPN|q_XbiE2wa*3QNVmE{HE<)?q%9%B6)LQrn+(B?9tlm2KX|*gU z%f6}HK`SQFEZq6V;e|=l60fOUQI}s%{?=2s@td@H-_HkDI9KX)pZ~|;bq_7FqWibF zl$`c9bCO#ACvo)HLPw8U{k@K@g3?ZFWQx$1OAR6dlYeIHZM{CMT5H(8YjxZ^&Ahwa z|KYjR3twJdZfa@R*VV7{;-hWV6C_>J-mvXtzWA;$*y9@pi^?ilO) zw}Nd;>>M--?TdEL&gsLxSYxa(yn8zPb%Ak9>v48VW;Lr{ILUqZlae1*T*p%$_2wRS zws;uaV|8iZbv45&Hyw^YQtTe+YSHt&Wvw#OBZhtAm9EpYUt`8|i` zExT(ovfT{rNAAAYc3bhy))bLq`miEgk_z>*$E)M!zjaD)s=svAlLcEnZ;#y8q16hF zncu$`-gk>{GOPXSK~d8C@!z@Sf0lVv-W#N0Gik9^)7y^=kI$Lmdz{xR;q~G}jp}_o zv`cc=v@+Iie6nHSv2)wMugu6uTzoCSC^+I|MB94}LpD3i3LO_ebAY9%?R&4dq@)J# z_o&6K=-I^Yh3n|;Bb|%dPp5AN_`har=n_8okkOKveQ%sPbmCFN$6FQo556aUUflC| znBjO2cj*sj*H4ODL6%LPseSnol*rtkO@{W>)pRW3!=aOuCuA+WwZqMnztz zI$5~j{x!=>_eNZF?Cn51}s^fWhsH{gx!DuU_bRFT=0>C)b?k zTBaszr=?Aw?^I;mO<`_br|_!H>Z^rw-4u29JdCPkad~aU6UT4rpA>Mb-j^@BFElx> z_)v#AGuPjpV9?O-=ZurOr;Ih3#_Nn+$3Jf!%hMZ^6sdBvK%Cw2>3K_$&*+N=q!940e8QsEO^I_I8E z<`(ToDK5{4o6MWm`(ePDCa-?J4|P*K%eH7-G~-oQgO6>V`#wGrWBT*s*@Ty4lie5a ziY2__irR{UyjS|ApUMor8Fy4KnsdFreVvUgV?>K#k?H-aCJs5(x3SvT_v{(N=c$r@jnn_UHAA{jn)~3MSMy zd*6G*F~^{FbGMX~O>$eLxNkEh-qDl)PD!8hp!h&-#oP`|fov&MN@lMv) z{d_u1ai_h{+9jEk1J6rx45#gAS*_pl!l2NZXSMwg`GkHqZ+mZWeD{yDtx6w^S>tG-tw;Z6 zS9r)j%9wAHw@$M1h*)<}=gXT%Q+v<{ zeL?ZD+KM-8ISf5i)Gh1qjG^qTyDNN0-CH@O@htiBk!MdVc`;q`^L0n<3HdXV@(Rq| zbn~WI=lQK^@v~*@VA1Ktga0&;PTWhs7!VZG&o_iivakM)$V1v!T4|m;GUVOI1g88# z_Ry`(FV1w&k9d_)CsUo(z1={HF?X>RyK$JG~S};dAMuaMHhYs z9C|jUvHp{{?VMakzb{+3Fn;%qe!<&Isl-dj)^burB2hOf@?df6uaa z@b?_+vnzr*&*tIp1@_4(AYC<`TPbH=ZuGW02E$`l{ zZCr!VBUcq`W_9+WuOzcKZ?$&+Tc2dXL9 z*{9nqd=&otvFn2&b!?_xU7Mc3n(s7L6wZ&#?Y^Pq;N{g)<{y(;{!Z9UgP2pW<`7%At#smmSzJ|FPGAf@@9JE4Mq!7io8DTc^D- zcJG>Tn^I3Vj_P$)+xgh$h412HmMARecXz*K#2qM(zLK}W&~}H(v;$p&O73pkx^|nc zS;Ff29oNK^^|iL$n3Kq!B5L|dCH_s$Shmz@ zdF5)-$RzW5Lq8vAmTfB08|KLMeDJEq(?s7c6-mX8Y3+i0!rKAbJI49_tLk8^u*u;qz>J0C`-uk$M2Z2d4~e%F(Y zT2xG2&?`&5Z;RZ~f6TT1bZ4);!QiLat7=*IfZe z)w5Eqi~V9hc`^&nx;&6Q^|Xzwo)dVi^um>8cg)b*00rPRFesg|S<`_q# zok!&pT`JeV7v~zCn|E)NKQ~d@`l7b2>2J$EH|P+&^`Qwf?|LuWo1PiIeZoVe z!?VxTu`P*S7&tyscjNE{r6vX3B)1Q%OEh+!Pn_1#JFwg1iG@E_v3{F-vM(x(gSK=# zwe5Vo|L;NRrpwQNG|>&VxJxgXN~t^x;iWu|0!Y@9S&!YfDJn$ z7k?MAg-62K%>8&Zb5t(=DPlv9hO>4D@NVX)oWVbYI)+!v;9`%_C$G)mau4F|#Bq7B z@bfkDqGWEtqw(SWvyV-_(PmxBnhL{>;kQ^)t4QZzy+^c)G(XfJ9hZeJrhl~}0e^j{d@$MWj?7mu9{TB^ie6h{nw7h@a zRR7|+M?!XZ)qBolq`L&^pKsCNY)Q(fX}t#S{&Kz1nC)Ywfg07-OOt$Sd5?CP!X+uL zDAq2B&yPA8_;K{$cGb^jzjl~Cy!y0LK*j6iZ#)OYe%qmY$*Vt`$aB;s6 zEdvKGeK&PrY-X=ED{gy@oqb~VV6!-E%BGvSc^bc;6TZHdb<*0_IqWh`w|}GGQXW>C z70}eMZ{OZq#_1gEcB@sLXFF}z)b)+ees4AP24^zl?&7A`_Kfyk74T`7OY-4X2Cstm zO6Sk5*v-y7Y|J{IqECxir!w>_o)K3!37G;w}9zKNS-{_pGLRvJQUX#YSB&BZ2G# zp7pduIDP?CcT3de(+pp3_jyhAaYp#Z(+~}1*w?2F*boD&EjbT5@#$J=u}LFiQ$?bO zHqd=YjaMc7yMF^Ws6qwrcuk{kXsR1~iA37aq%VPn*2)@g-_=xqC`S#*Nk7b%ux9r( z)z9F^)>@DpCy9>mud8DcV0DG0+5P3fKb;Qkalm+B0x%Jn z4BV!-W%p3{KJW-ggD@RP0tN#^fH+_f@D=Iwy)F{y1@r*uA%~uzf`CAv9nb;j1hfMD z0DmA9WgS7CfJwL?1kWB!_0qFq!3_l4-0OA4qhX(W=HXH~66y5Qs z8aNA_1C{{%cz`kn5Cb0|D+MM3DFFTJgb09syj={G0PBGDfCTwJf#OXl{kuy3{UW^z z+yT%VwlaVQW_uu)LTCg8VPKYnt_4;Dw{;-E)v5tM*vLtIAX3^&fZY2Mpa7*2uK|$v z$ZL-Qilv9Z1K>7r6QCXaM&LBC0T2UZFd0tu76Ju820)=ecJ%|G)`5=)Y7MoT3WfpH z=M-4vLF#KVssne&hS669;MNy#2b_TBKr_G|XaY0_Yylg<8ZZM4fd+s9pbzK)xMBxpa(!@D4pV%I)uul0~DHC6fbE&PaqYbpdSuUM(RZ>OoKp> z(+H+Ck`DvOQv-qi04Wsmk~ip{!eRhG-c17HfjD3Y5Cte=@FyA=1jGV^0aBU_Bmh)s zD3A!G073<1098oF3r0~Ig&Q?Mkd4NDHZTDg4`czE0LjNt|C2z-Gz$0QfE-{fK;9ux zdhL7@!Pizs6;Rm~z;a+2uoRdMOarC@lYvPftN~U7D~Vd+PZ6*RC;?gnM}Z^2VPGS- zvnkU|u^YF$fO23bumdOqwgcOMt-u!G4`4G;3Ty&S0LOq+s{7-hb^uY5p9HP}SAp}u z8K4262b=@W0@c(9_`@?4E|f?Gt^jesCEy}(0k{lMI1xy89k>Ow1_FRPz&+qDKo#Ey zo&e8*XTVe7B|vlYH&E*7FVst)aPt~?1yJvh_um5~dk4G)-T)tg4*+?4Iq(?}LV#oh z>Wx2vud4ez(AsJAPiv?wEhrQj4DAePcKr!LvGpAgl#($NS3dwj3AG>tASyuU@`sSo zPK`Ec)bqp>hS3%b*CE;k;L>W<$JMjn2ycHYS5NM?J>#V2?BvPmIWUHv?oKZJKZd1A zH|JR1SEI7%(6O3Ke@`bj4<~1SRo6m_p?WX#uI3YtBE`qa#gpsjz!)dGc{{oB104f6 zr+A{};P|2Dk;vif#HWxeERZ7W7{5}@Rz9~Tg~F*3Ql@{uv^ZhF!^t%%6e#9M*?QTt z?;6b_x4%-jJFwQ0*DIXS^me*kQ|7ze9(i2Q3|A*N&afHd-Je<_ocMz@G{eaqQAB=1 zig0ESm2$%W+(n5<(L;)Gx)4&lo!p_0-_6xS%Kj_eT=aBOPb0;hTi=W^Q+J1NW^gB) zF($@EDBc*E;@X*Rd^Kj*G+wc%lQ;LH8DkXc;)$HckfjN-{5f*Mn}{*RYxyi5P96w3 zq!=N^;FO;F|`+w{4z=8T(%aQNMF)!|IY;Nj#&MTJ8f_o+^ILW;MOix-McO>2|-T7EiWF~y3D4=NRo0Thmv;!`L=q~K0^Gj7amj`3kk#06@cnGa(u-l)dS zZ~{G{#)S}nTaBwE{)HNM)rkob|5W47`Y^7H7T2c*>bKx5eL)W zNEF2BIYWJ4?v*dd5H5?jRBnSaV`3(pGnxFw=W}pEs40wcck(3ft(0&B{ZQR{3HQwz zbeDvyY>Da^uCoiuYja~xZrsA6uLA?q7Mn~Rex4L<|!Co*{a zdj{bo%wBt6sxP_u!j3QM;^c*;mJ4=;rNR-JM`w=KF%noUCi@vc$2TMt78B9k0!%AIy)f*D=T+>IQp&3U^qL8ijdmPz&&(QD^LcM~&iDvh1E z3$i%8OvEPul0fRJ0gvt(8I}%oTKuxhC5T=wx`GDN+ z$c^edak5tMm6CAD?&um5uEHInWbTqX<0dZB7dUzwh*4p*F zp~_Wh+Tr?KI&vtx)=+}xx8kZipecmA<^fFz7F|!q*hF=>WzJdchtZ>0$0}&x!_bA> zDmqrK9#hYmsd9oqD9sTR9(x;(^j$V#koq&SmPP9QdAW}F} zjjxl&xJWqS@>GLPfvespJmyn)r>f$TQI6$0%CXE3!UmkKKO+e$Fjda8d1d?e$J@B% z3Zqvf63)>SU!OdB!Bn^8niSy#%VdjpdoNsW9H@qeE&beZp_+**IeYOruJ zXWq5W%pcVQrwHZ$Cw1aM#Z0+|l$hT*a^a8m9|di^HR`-I+yoWd+nA6d%I^1$hQjBV3U&jin ziv?o(pn02jUp;yYhEud-m_4`PUbbe8F?H1mM5KPR;93PDzS>xF!vYy&PyYN;6!d#n zx%rr`M;r=b@t}Yb4m6cSy7oM&vGyQRXpKZlcPnmBAZE|@)?D2-jIr78l~dhVwnR&< zxz@-beqzn_Zo{~`|9eCKJ)XEyf2N`7zx!PoycWvf{g2&kD+J%ao53$c244KQ`L{s+ z-vm`7p%&rD)toLiRxc_Po!~$p9k-VI8ZXH7UXwuSO?cwwH(J9jZwYPJtE9Qmje&Cu72u)(A(!+Q#3}kbTke zq*Z}dcs!%R1kB7izgP56>V9dPI@;#dglpb~F%A)qlobwigd-pu>mo(95~MffzCo*4MMM7Gl>ZmzC&7H-#M=obLrxrPI)Ekv zY&Edo6a9bNHOgo(7Q~))tVhdnnV3^doC8%X>zdoDYIarG1q=IuR{Y2@lUejqf^@I?O#NB17iS$AQ< z=Asrgx>Y8b31{YR&F?Y)!1fcA1F=bEb(?dA9kI*`r}8EZ&3-d-OT_US?QNQKuREdz z!a2S#13Zpqs&9)z4w^@xV?gu#UTANtPH3;H@n!{hNWhjMXJXjwxDR#g_tn%Wr=6LM%4js~`P`ASh7 zJt63A6;AHGd2{d5b*>dY5{!9FI|@`J z9PWFhP6*fGane3j5>j$d*bpSt|4cJ8bGgdX#Ztw|A%5ME~LTz>9J zOz)Z$;gDhHHj4(7Y19)_ib6T{;UHqZBAHRUC(AaDJX}*qII4J`=w-(yPsFWjQiQ{d z<9D_ycGpOHSd$_gcYJNa;0`YNSF37LgaeTaOU5R=)NFiKqENa4Z57T;Ue_VMUur

eII!^N#k`$?H7UZ`&C!P6 zr1dNn1|MsZRzO{SxcgCl`rCqlkGpD8gae>+CF|n`==o;WqzFeuyXuVzzf&F>U6Udl zBF(mZZksT3QEp9&aLjbogSxX9 zCu&lJMy7~d;lya+ zm|s2*Xt=waYqT6sz-7$Uz8qtP}?#|?x3IC~pWs`TcE&i^vTFi{~P};3~kF9hhk>%X~zYHV&u26R5m(n;Panf=R{#2idmR{tiw($2RTB7L#{__^jqvV zqX;`{VW#(MuRN4lIHwr3dD8Q+t4KJ|S~%(WxA{ak$p6R__w^%6Z$7WdAe?LukH8sYqG;m~EiNBC(_IAL2jmbu1DUpjFiJ+PdN@4+;v!@mK_ z=)x_7#B*{N<>vT(sEJ*@sV8Yop@&*T(7!D4h@ku~+;fx_uj#^R^u#(RoZQ`Oo$XWE zq>;N-I*?PjiqRsI+!F=VqfHqRak$+asK4?wnSApvR9eDy!Pg{M{FP z#{~VgCaW64<@912Sn%=j_xEB@g?R zC(UuZ27YfN9Fu+F1HWk-1I8mch<#(JJH+Y1e2-r1JA2`@i10NwOY}OTNiq7Yh3oJ57U$32KHl2 z^jfE94U0`{q5Q9|3>c7*#%1+mernR=l2iJSY;JRZMxSH*Gu=4v0gSIEy@=%H@(fJJ z3kEP=We)~0gS8pgvY??%9}TW+CS%PlOJ#J*E)HiL7;a7`GrDYB8WSVtnx`>!IlnBt zN68(@^yWerGPYdT45l7ukio3wK4&qbBvdVzkHL4Hg=10~ zGtO!hQ=hBMhHm@OOntG77w0kpHnh%$;V7prYvI^}Z=@r=bW|p;8qJtVU7YBVfg1U` zKNHA!ajpMAxri9XuJ*i z7>JzlM8=tmp2##&=k4GECNd4Vs7XvC&MJ>-BIJ_iF;3ixNqE_KdLko}P+8vC{7K9j zH9Q$AEnhbm87Aa0#y0#@7?~fNl#&qd$UiGNW~M1=YHZAiRBl`hW69mjLtFTVBTjuT z-bs0I1xbvp<*%jCj9&#@>r$pMH+m8yB_r!_Jts5fH8v>|mQ7~r3f6C$%=A`QdUN(1 zc(BnFCRNOh+`u#{E1$}=sl#2F%LH<1lNp<`RxD#DCSB-^e8j-*`RKdS`KW36d?pX} zZ7x7RTr6aCxPkdh8#Q_hUX;(cGw$5ge8x`=E-h=wF^LSfcmcBwQtI#gMJPXNA!Ayb zuUg2M*YGwqw^A;6QSBt2*W@-WVAQ$7MT|l1oOc%erIc&E1mT*on9)~dPznZ6vC73v z{a>VNOMWTWme%AbU5Yr*Uiz1D90b2K>HE@On*?5y z3ton|K($Dr=$i_Ky=vy-TJ%TnqlmsT*I(HkeeiXP zNkdJTA=J%UM2|>D8vZ)+3#~ipAP!@a%Nc=Je9hM|#=5k}sii%G8#jV6BlWTj8tWNk z0k$+8vzqZz!v>9e6O9%OUd@#nP;h5gQ#pDA5uB$rJqWEG<4InXi}|UV?86%}SUKM#7$l+Nb)@hd8>! z#r$Mf?+?Z}zaNItof5o#ck|}*GBL0$*J8}lGF8@kEu*Ez-I~m3m95&qBr#=uHZk|a te`VZTf*#u27v(4YQL8*JzVe&IaSP+2Dr&=}Y-McdJ7C$ot&BbMzW`V_@Ld1^ diff --git a/meta.txt b/meta.txt deleted file mode 100644 index 76c6447..0000000 --- a/meta.txt +++ /dev/null @@ -1,14360 +0,0 @@ -{ - "inputs": { - "src/CodeBlock.ts": { - "bytes": 2293, - "imports": [ - { - "path": "obsidian", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "src/codemirror/Cm6_Util.ts": { - "bytes": 1392, - "imports": [ - { - "path": "@codemirror/state", - "kind": "import-statement", - "external": true - }, - { - "path": "@codemirror/view", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "src/codemirror/Cm6_ViewPlugin.ts": { - "bytes": 8339, - "imports": [ - { - "path": "src/main.ts", - "kind": "import-statement", - "original": "src/main" - }, - { - "path": "@codemirror/view", - "kind": "import-statement", - "external": true - }, - { - "path": "@codemirror/state", - "kind": "import-statement", - "external": true - }, - { - "path": "@lezer/common", - "kind": "import-statement", - "external": true - }, - { - "path": "@codemirror/language", - "kind": "import-statement", - "external": true - }, - { - "path": "src/codemirror/Cm6_Util.ts", - "kind": "import-statement", - "original": "src/codemirror/Cm6_Util" - }, - { - "path": "shiki", - "kind": "import-statement", - "external": true - }, - { - "path": "obsidian", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "src/settings/Settings.ts": { - "bytes": 413, - "imports": [], - "format": "esm" - }, - "src/settings/StringSelectModal.ts": { - "bytes": 622, - "imports": [ - { - "path": "obsidian", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@shikijs/types/dist/index.mjs": { - "bytes": 138, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/vscode-textmate/dist/index.js": { - "bytes": 100008, - "imports": [ - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/html-void-elements/index.js": { - "bytes": 316, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/schema.js": { - "bytes": 587, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/merge.js": { - "bytes": 607, - "imports": [ - { - "path": "node_modules/property-information/lib/util/schema.js", - "kind": "import-statement", - "original": "./schema.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/normalize.js": { - "bytes": 326, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/info.js": { - "bytes": 769, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/types.js": { - "bytes": 350, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/defined-info.js": { - "bytes": 1198, - "imports": [ - { - "path": "node_modules/property-information/lib/util/info.js", - "kind": "import-statement", - "original": "./info.js" - }, - { - "path": "node_modules/property-information/lib/util/types.js", - "kind": "import-statement", - "original": "./types.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/util/create.js": { - "bytes": 1710, - "imports": [ - { - "path": "node_modules/property-information/lib/normalize.js", - "kind": "import-statement", - "original": "../normalize.js" - }, - { - "path": "node_modules/property-information/lib/util/defined-info.js", - "kind": "import-statement", - "original": "./defined-info.js" - }, - { - "path": "node_modules/property-information/lib/util/schema.js", - "kind": "import-statement", - "original": "./schema.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/aria.js": { - "bytes": 1644, - "imports": [ - { - "path": "node_modules/property-information/lib/util/create.js", - "kind": "import-statement", - "original": "./util/create.js" - }, - { - "path": "node_modules/property-information/lib/util/types.js", - "kind": "import-statement", - "original": "./util/types.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/util/case-sensitive-transform.js": { - "bytes": 300, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/util/case-insensitive-transform.js": { - "bytes": 367, - "imports": [ - { - "path": "node_modules/property-information/lib/util/case-sensitive-transform.js", - "kind": "import-statement", - "original": "./case-sensitive-transform.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/html.js": { - "bytes": 8649, - "imports": [ - { - "path": "node_modules/property-information/lib/util/case-insensitive-transform.js", - "kind": "import-statement", - "original": "./util/case-insensitive-transform.js" - }, - { - "path": "node_modules/property-information/lib/util/create.js", - "kind": "import-statement", - "original": "./util/create.js" - }, - { - "path": "node_modules/property-information/lib/util/types.js", - "kind": "import-statement", - "original": "./util/types.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/svg.js": { - "bytes": 14350, - "imports": [ - { - "path": "node_modules/property-information/lib/util/case-sensitive-transform.js", - "kind": "import-statement", - "original": "./util/case-sensitive-transform.js" - }, - { - "path": "node_modules/property-information/lib/util/create.js", - "kind": "import-statement", - "original": "./util/create.js" - }, - { - "path": "node_modules/property-information/lib/util/types.js", - "kind": "import-statement", - "original": "./util/types.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/xlink.js": { - "bytes": 351, - "imports": [ - { - "path": "node_modules/property-information/lib/util/create.js", - "kind": "import-statement", - "original": "./util/create.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/xmlns.js": { - "bytes": 298, - "imports": [ - { - "path": "node_modules/property-information/lib/util/create.js", - "kind": "import-statement", - "original": "./util/create.js" - }, - { - "path": "node_modules/property-information/lib/util/case-insensitive-transform.js", - "kind": "import-statement", - "original": "./util/case-insensitive-transform.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/xml.js": { - "bytes": 233, - "imports": [ - { - "path": "node_modules/property-information/lib/util/create.js", - "kind": "import-statement", - "original": "./util/create.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/lib/hast-to-react.js": { - "bytes": 859, - "imports": [], - "format": "esm" - }, - "node_modules/property-information/lib/find.js": { - "bytes": 2344, - "imports": [ - { - "path": "node_modules/property-information/lib/util/defined-info.js", - "kind": "import-statement", - "original": "./util/defined-info.js" - }, - { - "path": "node_modules/property-information/lib/util/info.js", - "kind": "import-statement", - "original": "./util/info.js" - }, - { - "path": "node_modules/property-information/lib/normalize.js", - "kind": "import-statement", - "original": "./normalize.js" - } - ], - "format": "esm" - }, - "node_modules/property-information/index.js": { - "bytes": 591, - "imports": [ - { - "path": "node_modules/property-information/lib/util/merge.js", - "kind": "import-statement", - "original": "./lib/util/merge.js" - }, - { - "path": "node_modules/property-information/lib/aria.js", - "kind": "import-statement", - "original": "./lib/aria.js" - }, - { - "path": "node_modules/property-information/lib/html.js", - "kind": "import-statement", - "original": "./lib/html.js" - }, - { - "path": "node_modules/property-information/lib/svg.js", - "kind": "import-statement", - "original": "./lib/svg.js" - }, - { - "path": "node_modules/property-information/lib/xlink.js", - "kind": "import-statement", - "original": "./lib/xlink.js" - }, - { - "path": "node_modules/property-information/lib/xmlns.js", - "kind": "import-statement", - "original": "./lib/xmlns.js" - }, - { - "path": "node_modules/property-information/lib/xml.js", - "kind": "import-statement", - "original": "./lib/xml.js" - }, - { - "path": "node_modules/property-information/lib/hast-to-react.js", - "kind": "import-statement", - "original": "./lib/hast-to-react.js" - }, - { - "path": "node_modules/property-information/lib/find.js", - "kind": "import-statement", - "original": "./lib/find.js" - }, - { - "path": "node_modules/property-information/lib/normalize.js", - "kind": "import-statement", - "original": "./lib/normalize.js" - } - ], - "format": "esm" - }, - "node_modules/zwitch/index.js": { - "bytes": 3787, - "imports": [], - "format": "esm" - }, - "node_modules/stringify-entities/lib/core.js": { - "bytes": 3040, - "imports": [], - "format": "esm" - }, - "node_modules/stringify-entities/lib/util/to-hexadecimal.js": { - "bytes": 436, - "imports": [], - "format": "esm" - }, - "node_modules/stringify-entities/lib/util/to-decimal.js": { - "bytes": 392, - "imports": [], - "format": "esm" - }, - "node_modules/character-entities-legacy/index.js": { - "bytes": 1316, - "imports": [], - "format": "esm" - }, - "node_modules/character-entities-html4/index.js": { - "bytes": 3908, - "imports": [], - "format": "esm" - }, - "node_modules/stringify-entities/lib/constant/dangerous.js": { - "bytes": 290, - "imports": [], - "format": "esm" - }, - "node_modules/stringify-entities/lib/util/to-named.js": { - "bytes": 1290, - "imports": [ - { - "path": "node_modules/character-entities-legacy/index.js", - "kind": "import-statement", - "original": "character-entities-legacy" - }, - { - "path": "node_modules/character-entities-html4/index.js", - "kind": "import-statement", - "original": "character-entities-html4" - }, - { - "path": "node_modules/stringify-entities/lib/constant/dangerous.js", - "kind": "import-statement", - "original": "../constant/dangerous.js" - } - ], - "format": "esm" - }, - "node_modules/stringify-entities/lib/util/format-smart.js": { - "bytes": 2478, - "imports": [ - { - "path": "node_modules/stringify-entities/lib/util/to-hexadecimal.js", - "kind": "import-statement", - "original": "./to-hexadecimal.js" - }, - { - "path": "node_modules/stringify-entities/lib/util/to-decimal.js", - "kind": "import-statement", - "original": "./to-decimal.js" - }, - { - "path": "node_modules/stringify-entities/lib/util/to-named.js", - "kind": "import-statement", - "original": "./to-named.js" - } - ], - "format": "esm" - }, - "node_modules/stringify-entities/lib/util/format-basic.js": { - "bytes": 192, - "imports": [], - "format": "esm" - }, - "node_modules/stringify-entities/lib/index.js": { - "bytes": 961, - "imports": [ - { - "path": "node_modules/stringify-entities/lib/core.js", - "kind": "import-statement", - "original": "./core.js" - }, - { - "path": "node_modules/stringify-entities/lib/util/format-smart.js", - "kind": "import-statement", - "original": "./util/format-smart.js" - }, - { - "path": "node_modules/stringify-entities/lib/util/format-basic.js", - "kind": "import-statement", - "original": "./util/format-basic.js" - } - ], - "format": "esm" - }, - "node_modules/stringify-entities/index.js": { - "bytes": 160, - "imports": [ - { - "path": "node_modules/stringify-entities/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/handle/comment.js": { - "bytes": 1328, - "imports": [ - { - "path": "node_modules/stringify-entities/index.js", - "kind": "import-statement", - "original": "stringify-entities" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/handle/doctype.js": { - "bytes": 601, - "imports": [], - "format": "esm" - }, - "node_modules/ccount/index.js": { - "bytes": 619, - "imports": [], - "format": "esm" - }, - "node_modules/comma-separated-tokens/index.js": { - "bytes": 1592, - "imports": [], - "format": "esm" - }, - "node_modules/space-separated-tokens/index.js": { - "bytes": 551, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-whitespace/lib/index.js": { - "bytes": 885, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-whitespace/index.js": { - "bytes": 42, - "imports": [ - { - "path": "node_modules/hast-util-whitespace/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/omission/util/siblings.js": { - "bytes": 1265, - "imports": [ - { - "path": "node_modules/hast-util-whitespace/index.js", - "kind": "import-statement", - "original": "hast-util-whitespace" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/omission/omission.js": { - "bytes": 978, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/omission/closing.js": { - "bytes": 8737, - "imports": [ - { - "path": "node_modules/hast-util-whitespace/index.js", - "kind": "import-statement", - "original": "hast-util-whitespace" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/util/siblings.js", - "kind": "import-statement", - "original": "./util/siblings.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/omission.js", - "kind": "import-statement", - "original": "./omission.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/omission/opening.js": { - "bytes": 3606, - "imports": [ - { - "path": "node_modules/hast-util-whitespace/index.js", - "kind": "import-statement", - "original": "hast-util-whitespace" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/util/siblings.js", - "kind": "import-statement", - "original": "./util/siblings.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/closing.js", - "kind": "import-statement", - "original": "./closing.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/omission.js", - "kind": "import-statement", - "original": "./omission.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/handle/element.js": { - "bytes": 7564, - "imports": [ - { - "path": "node_modules/ccount/index.js", - "kind": "import-statement", - "original": "ccount" - }, - { - "path": "node_modules/comma-separated-tokens/index.js", - "kind": "import-statement", - "original": "comma-separated-tokens" - }, - { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" - }, - { - "path": "node_modules/space-separated-tokens/index.js", - "kind": "import-statement", - "original": "space-separated-tokens" - }, - { - "path": "node_modules/stringify-entities/index.js", - "kind": "import-statement", - "original": "stringify-entities" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/closing.js", - "kind": "import-statement", - "original": "../omission/closing.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/omission/opening.js", - "kind": "import-statement", - "original": "../omission/opening.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/handle/text.js": { - "bytes": 1018, - "imports": [ - { - "path": "node_modules/stringify-entities/index.js", - "kind": "import-statement", - "original": "stringify-entities" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/handle/raw.js": { - "bytes": 632, - "imports": [ - { - "path": "node_modules/hast-util-to-html/lib/handle/text.js", - "kind": "import-statement", - "original": "./text.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/handle/root.js": { - "bytes": 473, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/handle/index.js": { - "bytes": 1104, - "imports": [ - { - "path": "node_modules/zwitch/index.js", - "kind": "import-statement", - "original": "zwitch" - }, - { - "path": "node_modules/hast-util-to-html/lib/handle/comment.js", - "kind": "import-statement", - "original": "./comment.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/handle/doctype.js", - "kind": "import-statement", - "original": "./doctype.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/handle/element.js", - "kind": "import-statement", - "original": "./element.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/handle/raw.js", - "kind": "import-statement", - "original": "./raw.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/handle/root.js", - "kind": "import-statement", - "original": "./root.js" - }, - { - "path": "node_modules/hast-util-to-html/lib/handle/text.js", - "kind": "import-statement", - "original": "./text.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/lib/index.js": { - "bytes": 9724, - "imports": [ - { - "path": "node_modules/html-void-elements/index.js", - "kind": "import-statement", - "original": "html-void-elements" - }, - { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" - }, - { - "path": "node_modules/hast-util-to-html/lib/handle/index.js", - "kind": "import-statement", - "original": "./handle/index.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-html/index.js": { - "bytes": 283, - "imports": [ - { - "path": "node_modules/hast-util-to-html/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/core/dist/index.mjs": { - "bytes": 72792, - "imports": [ - { - "path": "node_modules/@shikijs/types/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/types" - }, - { - "path": "node_modules/@shikijs/types/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/types" - }, - { - "path": "node_modules/@shikijs/vscode-textmate/dist/index.js", - "kind": "import-statement", - "original": "@shikijs/vscode-textmate" - }, - { - "path": "node_modules/hast-util-to-html/index.js", - "kind": "import-statement", - "original": "hast-util-to-html" - }, - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/abap.mjs": { - "bytes": 16553, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/actionscript-3.mjs": { - "bytes": 15649, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/ada.mjs": { - "bytes": 54587, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/javascript.mjs": { - "bytes": 184850, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/css.mjs": { - "bytes": 52193, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/html.mjs": { - "bytes": 61930, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/angular-expression.mjs": { - "bytes": 21347, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/angular-let-declaration.mjs": { - "bytes": 1174, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/angular-template.mjs": { - "bytes": 736, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/angular-template-blocks.mjs": { - "bytes": 2465, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-template.mjs", - "kind": "import-statement", - "original": "./angular-template.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/angular-html.mjs": { - "bytes": 1362, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", - "kind": "import-statement", - "original": "./angular-let-declaration.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-template.mjs", - "kind": "import-statement", - "original": "./angular-template.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", - "kind": "import-statement", - "original": "./angular-template-blocks.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/scss.mjs": { - "bytes": 30374, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/angular-inline-style.mjs": { - "bytes": 1525, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/angular-inline-template.mjs": { - "bytes": 1387, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/angular-html.mjs", - "kind": "import-statement", - "original": "./angular-html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-template.mjs", - "kind": "import-statement", - "original": "./angular-template.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/angular-ts.mjs": { - "bytes": 191357, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-inline-style.mjs", - "kind": "import-statement", - "original": "./angular-inline-style.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-inline-template.mjs", - "kind": "import-statement", - "original": "./angular-inline-template.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", - "kind": "import-statement", - "original": "./angular-let-declaration.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-template.mjs", - "kind": "import-statement", - "original": "./angular-template.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", - "kind": "import-statement", - "original": "./angular-template-blocks.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/apache.mjs": { - "bytes": 13344, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/apex.mjs": { - "bytes": 51161, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/java.mjs": { - "bytes": 30385, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/xml.mjs": { - "bytes": 6073, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/json.mjs": { - "bytes": 3193, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/apl.mjs": { - "bytes": 26688, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/applescript.mjs": { - "bytes": 32033, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/ara.mjs": { - "bytes": 7071, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/asciidoc.mjs": { - "bytes": 97731, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/asm.mjs": { - "bytes": 43849, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/typescript.mjs": { - "bytes": 190662, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/postcss.mjs": { - "bytes": 7113, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/astro.mjs": { - "bytes": 25453, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/postcss.mjs", - "kind": "import-statement", - "original": "./postcss.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/awk.mjs": { - "bytes": 6136, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/ballerina.mjs": { - "bytes": 64688, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/bat.mjs": { - "bytes": 14154, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/beancount.mjs": { - "bytes": 11447, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/berry.mjs": { - "bytes": 2643, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/bibtex.mjs": { - "bytes": 5371, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/bicep.mjs": { - "bytes": 4740, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/html-derivative.mjs": { - "bytes": 920, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/sql.mjs": { - "bytes": 24508, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/blade.mjs": { - "bytes": 110763, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/sdbl.mjs": { - "bytes": 4915, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/bsl.mjs": { - "bytes": 34781, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/sdbl.mjs", - "kind": "import-statement", - "original": "./sdbl.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/c.mjs": { - "bytes": 78119, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/cadence.mjs": { - "bytes": 11752, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/python.mjs": { - "bytes": 77130, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/cairo.mjs": { - "bytes": 3316, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/clarity.mjs": { - "bytes": 15615, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/clojure.mjs": { - "bytes": 7162, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/cmake.mjs": { - "bytes": 10107, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/cobol.mjs": { - "bytes": 41259, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/codeowners.mjs": { - "bytes": 621, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/codeql.mjs": { - "bytes": 29564, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/coffee.mjs": { - "bytes": 29703, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/common-lisp.mjs": { - "bytes": 23562, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/coq.mjs": { - "bytes": 5913, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/regexp.mjs": { - "bytes": 8836, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/glsl.mjs": { - "bytes": 3749, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/cpp-macro.mjs": { - "bytes": 239804, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/cpp.mjs": { - "bytes": 428812, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/cpp-macro.mjs", - "kind": "import-statement", - "original": "./cpp-macro.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/shellscript.mjs": { - "bytes": 45421, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/crystal.mjs": { - "bytes": 32542, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/csharp.mjs": { - "bytes": 94901, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/csv.mjs": { - "bytes": 1293, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/cue.mjs": { - "bytes": 18185, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/cypher.mjs": { - "bytes": 6548, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/d.mjs": { - "bytes": 48909, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/dart.mjs": { - "bytes": 8744, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/dax.mjs": { - "bytes": 5703, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/desktop.mjs": { - "bytes": 2021, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/diff.mjs": { - "bytes": 2861, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/docker.mjs": { - "bytes": 1925, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/dotenv.mjs": { - "bytes": 1613, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/dream-maker.mjs": { - "bytes": 11610, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/edge.mjs": { - "bytes": 2601, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/elixir.mjs": { - "bytes": 18067, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/elm.mjs": { - "bytes": 12342, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/emacs-lisp.mjs": { - "bytes": 782328, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/haml.mjs": { - "bytes": 9326, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/jsx.mjs": { - "bytes": 187823, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/tsx.mjs": { - "bytes": 185567, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/graphql.mjs": { - "bytes": 20119, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/jsx.mjs", - "kind": "import-statement", - "original": "./jsx.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/tsx.mjs", - "kind": "import-statement", - "original": "./tsx.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/lua.mjs": { - "bytes": 16862, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/yaml.mjs": { - "bytes": 11581, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/ruby.mjs": { - "bytes": 51135, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/haml.mjs", - "kind": "import-statement", - "original": "./haml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/graphql.mjs", - "kind": "import-statement", - "original": "./graphql.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/cpp.mjs", - "kind": "import-statement", - "original": "./cpp.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/lua.mjs", - "kind": "import-statement", - "original": "./lua.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/erb.mjs": { - "bytes": 2401, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/erlang.mjs": { - "bytes": 41454, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/fennel.mjs": { - "bytes": 5178, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/fish.mjs": { - "bytes": 4495, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/fluent.mjs": { - "bytes": 4006, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/fortran-free-form.mjs": { - "bytes": 96560, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs": { - "bytes": 1272, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/fortran-free-form.mjs", - "kind": "import-statement", - "original": "./fortran-free-form.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/markdown.mjs": { - "bytes": 61544, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/fsharp.mjs": { - "bytes": 28253, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/gdshader.mjs": { - "bytes": 7042, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/gdscript.mjs": { - "bytes": 20807, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/gdresource.mjs": { - "bytes": 5810, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/gdshader.mjs", - "kind": "import-statement", - "original": "./gdshader.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/gdscript.mjs", - "kind": "import-statement", - "original": "./gdscript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/genie.mjs": { - "bytes": 3692, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/gherkin.mjs": { - "bytes": 12208, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/git-commit.mjs": { - "bytes": 1381, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/diff.mjs", - "kind": "import-statement", - "original": "./diff.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/git-rebase.mjs": { - "bytes": 1102, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/gleam.mjs": { - "bytes": 2897, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/glimmer-js.mjs": { - "bytes": 22627, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/glimmer-ts.mjs": { - "bytes": 22627, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/gnuplot.mjs": { - "bytes": 16263, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/go.mjs": { - "bytes": 49958, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/groovy.mjs": { - "bytes": 21523, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/hack.mjs": { - "bytes": 84777, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/handlebars.mjs": { - "bytes": 13651, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/haskell.mjs": { - "bytes": 45539, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/haxe.mjs": { - "bytes": 39335, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/hcl.mjs": { - "bytes": 11358, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/hjson.mjs": { - "bytes": 13477, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/hlsl.mjs": { - "bytes": 7696, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/http.mjs": { - "bytes": 4961, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/graphql.mjs", - "kind": "import-statement", - "original": "./graphql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/hxml.mjs": { - "bytes": 1862, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/haxe.mjs", - "kind": "import-statement", - "original": "./haxe.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/hy.mjs": { - "bytes": 2831, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/imba.mjs": { - "bytes": 54818, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/ini.mjs": { - "bytes": 1729, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/jinja-html.mjs": { - "bytes": 658, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/jinja.mjs": { - "bytes": 5682, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/jinja-html.mjs", - "kind": "import-statement", - "original": "./jinja-html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/jison.mjs": { - "bytes": 10926, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/json5.mjs": { - "bytes": 3678, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/jsonc.mjs": { - "bytes": 3478, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/jsonl.mjs": { - "bytes": 3380, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/jsonnet.mjs": { - "bytes": 4002, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/jssm.mjs": { - "bytes": 2511, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/r.mjs": { - "bytes": 40868, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/julia.mjs": { - "bytes": 32900, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/cpp.mjs", - "kind": "import-statement", - "original": "./cpp.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/r.mjs", - "kind": "import-statement", - "original": "./r.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/kotlin.mjs": { - "bytes": 9815, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/kusto.mjs": { - "bytes": 16245, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/tex.mjs": { - "bytes": 10180, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/r.mjs", - "kind": "import-statement", - "original": "./r.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/latex.mjs": { - "bytes": 76405, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/tex.mjs", - "kind": "import-statement", - "original": "./tex.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/lean.mjs": { - "bytes": 4543, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/less.mjs": { - "bytes": 107097, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/liquid.mjs": { - "bytes": 19641, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/llvm.mjs": { - "bytes": 5255, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/log.mjs": { - "bytes": 3109, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/logo.mjs": { - "bytes": 3232, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/luau.mjs": { - "bytes": 14023, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/make.mjs": { - "bytes": 9993, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/marko.mjs": { - "bytes": 18842, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/less.mjs", - "kind": "import-statement", - "original": "./less.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/matlab.mjs": { - "bytes": 17923, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/mdc.mjs": { - "bytes": 20501, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/mdx.mjs": { - "bytes": 146296, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/mermaid.mjs": { - "bytes": 31809, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/mipsasm.mjs": { - "bytes": 3496, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/mojo.mjs": { - "bytes": 76365, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/move.mjs": { - "bytes": 19523, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/narrat.mjs": { - "bytes": 4078, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/nextflow.mjs": { - "bytes": 4425, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/nginx.mjs": { - "bytes": 39263, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/lua.mjs", - "kind": "import-statement", - "original": "./lua.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/nim.mjs": { - "bytes": 25240, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/nix.mjs": { - "bytes": 16666, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/nushell.mjs": { - "bytes": 21706, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/objective-c.mjs": { - "bytes": 111881, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/objective-cpp.mjs": { - "bytes": 184402, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/ocaml.mjs": { - "bytes": 67246, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/pascal.mjs": { - "bytes": 4448, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/perl.mjs": { - "bytes": 48246, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/php.mjs": { - "bytes": 118079, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/plsql.mjs": { - "bytes": 8997, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/po.mjs": { - "bytes": 3683, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/polar.mjs": { - "bytes": 5350, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/powerquery.mjs": { - "bytes": 6537, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/powershell.mjs": { - "bytes": 21907, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/prisma.mjs": { - "bytes": 7116, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/prolog.mjs": { - "bytes": 11854, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/proto.mjs": { - "bytes": 7412, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/pug.mjs": { - "bytes": 15621, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/puppet.mjs": { - "bytes": 12765, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/purescript.mjs": { - "bytes": 25537, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/qml.mjs": { - "bytes": 6063, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/qmldir.mjs": { - "bytes": 1128, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/qss.mjs": { - "bytes": 7944, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/racket.mjs": { - "bytes": 95026, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/raku.mjs": { - "bytes": 11063, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/razor.mjs": { - "bytes": 28504, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/csharp.mjs", - "kind": "import-statement", - "original": "./csharp.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/reg.mjs": { - "bytes": 2613, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/rel.mjs": { - "bytes": 3722, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/riscv.mjs": { - "bytes": 7470, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/rst.mjs": { - "bytes": 11596, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/cpp.mjs", - "kind": "import-statement", - "original": "./cpp.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/cmake.mjs", - "kind": "import-statement", - "original": "./cmake.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/rust.mjs": { - "bytes": 16908, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/sas.mjs": { - "bytes": 9564, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/sass.mjs": { - "bytes": 10403, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/scala.mjs": { - "bytes": 31287, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/scheme.mjs": { - "bytes": 7828, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/shaderlab.mjs": { - "bytes": 6310, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/hlsl.mjs", - "kind": "import-statement", - "original": "./hlsl.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/shellsession.mjs": { - "bytes": 792, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/smalltalk.mjs": { - "bytes": 7275, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/solidity.mjs": { - "bytes": 18223, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/soy.mjs": { - "bytes": 7946, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/turtle.mjs": { - "bytes": 4164, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/sparql.mjs": { - "bytes": 1575, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/turtle.mjs", - "kind": "import-statement", - "original": "./turtle.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/splunk.mjs": { - "bytes": 3613, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/ssh-config.mjs": { - "bytes": 3781, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/stata.mjs": { - "bytes": 61836, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/stylus.mjs": { - "bytes": 33189, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/svelte.mjs": { - "bytes": 19326, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/postcss.mjs", - "kind": "import-statement", - "original": "./postcss.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/swift.mjs": { - "bytes": 93140, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/system-verilog.mjs": { - "bytes": 28546, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/systemd.mjs": { - "bytes": 8541, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/talonscript.mjs": { - "bytes": 7683, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/tasl.mjs": { - "bytes": 3778, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/tcl.mjs": { - "bytes": 4920, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/templ.mjs": { - "bytes": 25992, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/go.mjs", - "kind": "import-statement", - "original": "./go.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/terraform.mjs": { - "bytes": 12736, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/toml.mjs": { - "bytes": 7192, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/es-tag-css.mjs": { - "bytes": 2185, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/es-tag-glsl.mjs": { - "bytes": 2065, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/es-tag-html.mjs": { - "bytes": 2416, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/es-tag-sql.mjs": { - "bytes": 1900, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/es-tag-xml.mjs": { - "bytes": 1361, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/ts-tags.mjs": { - "bytes": 690, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/es-tag-css.mjs", - "kind": "import-statement", - "original": "./es-tag-css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/es-tag-glsl.mjs", - "kind": "import-statement", - "original": "./es-tag-glsl.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/es-tag-html.mjs", - "kind": "import-statement", - "original": "./es-tag-html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/es-tag-sql.mjs", - "kind": "import-statement", - "original": "./es-tag-sql.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/es-tag-xml.mjs", - "kind": "import-statement", - "original": "./es-tag-xml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/tsv.mjs": { - "bytes": 831, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/twig.mjs": { - "bytes": 23232, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/php.mjs", - "kind": "import-statement", - "original": "./php.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/typespec.mjs": { - "bytes": 26145, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/typst.mjs": { - "bytes": 9409, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/v.mjs": { - "bytes": 14880, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vala.mjs": { - "bytes": 3710, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vb.mjs": { - "bytes": 6535, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/verilog.mjs": { - "bytes": 6444, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vhdl.mjs": { - "bytes": 26765, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/viml.mjs": { - "bytes": 21169, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/markdown-vue.mjs": { - "bytes": 841, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vue-directives.mjs": { - "bytes": 464, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vue-interpolations.mjs": { - "bytes": 447, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs": { - "bytes": 1053, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vue.mjs": { - "bytes": 21396, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/markdown-vue.mjs", - "kind": "import-statement", - "original": "./markdown-vue.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/vue-directives.mjs", - "kind": "import-statement", - "original": "./vue-directives.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/vue-interpolations.mjs", - "kind": "import-statement", - "original": "./vue-interpolations.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs", - "kind": "import-statement", - "original": "./vue-sfc-style-variable-injection.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vue-html.mjs": { - "bytes": 9537, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/vue.mjs", - "kind": "import-statement", - "original": "./vue.mjs" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/vyper.mjs": { - "bytes": 82010, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/wasm.mjs": { - "bytes": 13198, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/wenyan.mjs": { - "bytes": 2393, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/wgsl.mjs": { - "bytes": 5740, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/wikitext.mjs": { - "bytes": 62313, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/wit.mjs": { - "bytes": 23911, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/wolfram.mjs": { - "bytes": 266942, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/xsl.mjs": { - "bytes": 1529, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/zenscript.mjs": { - "bytes": 4335, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/langs/dist/zig.mjs": { - "bytes": 5970, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/langs.mjs": { - "bytes": 25943, - "imports": [ - { - "path": "node_modules/@shikijs/langs/dist/abap.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/abap" - }, - { - "path": "node_modules/@shikijs/langs/dist/actionscript-3.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/actionscript-3" - }, - { - "path": "node_modules/@shikijs/langs/dist/ada.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ada" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-html.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/angular-html" - }, - { - "path": "node_modules/@shikijs/langs/dist/angular-ts.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/angular-ts" - }, - { - "path": "node_modules/@shikijs/langs/dist/apache.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/apache" - }, - { - "path": "node_modules/@shikijs/langs/dist/apex.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/apex" - }, - { - "path": "node_modules/@shikijs/langs/dist/apl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/apl" - }, - { - "path": "node_modules/@shikijs/langs/dist/applescript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/applescript" - }, - { - "path": "node_modules/@shikijs/langs/dist/ara.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ara" - }, - { - "path": "node_modules/@shikijs/langs/dist/asciidoc.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/asciidoc" - }, - { - "path": "node_modules/@shikijs/langs/dist/asm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/asm" - }, - { - "path": "node_modules/@shikijs/langs/dist/astro.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/astro" - }, - { - "path": "node_modules/@shikijs/langs/dist/awk.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/awk" - }, - { - "path": "node_modules/@shikijs/langs/dist/ballerina.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ballerina" - }, - { - "path": "node_modules/@shikijs/langs/dist/bat.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/bat" - }, - { - "path": "node_modules/@shikijs/langs/dist/beancount.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/beancount" - }, - { - "path": "node_modules/@shikijs/langs/dist/berry.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/berry" - }, - { - "path": "node_modules/@shikijs/langs/dist/bibtex.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/bibtex" - }, - { - "path": "node_modules/@shikijs/langs/dist/bicep.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/bicep" - }, - { - "path": "node_modules/@shikijs/langs/dist/blade.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/blade" - }, - { - "path": "node_modules/@shikijs/langs/dist/bsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/bsl" - }, - { - "path": "node_modules/@shikijs/langs/dist/c.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/c" - }, - { - "path": "node_modules/@shikijs/langs/dist/cadence.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cadence" - }, - { - "path": "node_modules/@shikijs/langs/dist/cairo.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cairo" - }, - { - "path": "node_modules/@shikijs/langs/dist/clarity.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/clarity" - }, - { - "path": "node_modules/@shikijs/langs/dist/clojure.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/clojure" - }, - { - "path": "node_modules/@shikijs/langs/dist/cmake.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cmake" - }, - { - "path": "node_modules/@shikijs/langs/dist/cobol.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cobol" - }, - { - "path": "node_modules/@shikijs/langs/dist/codeowners.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/codeowners" - }, - { - "path": "node_modules/@shikijs/langs/dist/codeql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/codeql" - }, - { - "path": "node_modules/@shikijs/langs/dist/coffee.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/coffee" - }, - { - "path": "node_modules/@shikijs/langs/dist/common-lisp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/common-lisp" - }, - { - "path": "node_modules/@shikijs/langs/dist/coq.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/coq" - }, - { - "path": "node_modules/@shikijs/langs/dist/cpp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cpp" - }, - { - "path": "node_modules/@shikijs/langs/dist/crystal.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/crystal" - }, - { - "path": "node_modules/@shikijs/langs/dist/csharp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/csharp" - }, - { - "path": "node_modules/@shikijs/langs/dist/css.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/css" - }, - { - "path": "node_modules/@shikijs/langs/dist/csv.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/csv" - }, - { - "path": "node_modules/@shikijs/langs/dist/cue.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cue" - }, - { - "path": "node_modules/@shikijs/langs/dist/cypher.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cypher" - }, - { - "path": "node_modules/@shikijs/langs/dist/d.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/d" - }, - { - "path": "node_modules/@shikijs/langs/dist/dart.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/dart" - }, - { - "path": "node_modules/@shikijs/langs/dist/dax.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/dax" - }, - { - "path": "node_modules/@shikijs/langs/dist/desktop.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/desktop" - }, - { - "path": "node_modules/@shikijs/langs/dist/diff.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/diff" - }, - { - "path": "node_modules/@shikijs/langs/dist/docker.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/docker" - }, - { - "path": "node_modules/@shikijs/langs/dist/dotenv.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/dotenv" - }, - { - "path": "node_modules/@shikijs/langs/dist/dream-maker.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/dream-maker" - }, - { - "path": "node_modules/@shikijs/langs/dist/edge.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/edge" - }, - { - "path": "node_modules/@shikijs/langs/dist/elixir.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/elixir" - }, - { - "path": "node_modules/@shikijs/langs/dist/elm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/elm" - }, - { - "path": "node_modules/@shikijs/langs/dist/emacs-lisp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/emacs-lisp" - }, - { - "path": "node_modules/@shikijs/langs/dist/erb.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/erb" - }, - { - "path": "node_modules/@shikijs/langs/dist/erlang.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/erlang" - }, - { - "path": "node_modules/@shikijs/langs/dist/fennel.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fennel" - }, - { - "path": "node_modules/@shikijs/langs/dist/fish.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fish" - }, - { - "path": "node_modules/@shikijs/langs/dist/fluent.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fluent" - }, - { - "path": "node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fortran-fixed-form" - }, - { - "path": "node_modules/@shikijs/langs/dist/fortran-free-form.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fortran-free-form" - }, - { - "path": "node_modules/@shikijs/langs/dist/fsharp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fsharp" - }, - { - "path": "node_modules/@shikijs/langs/dist/gdresource.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gdresource" - }, - { - "path": "node_modules/@shikijs/langs/dist/gdscript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gdscript" - }, - { - "path": "node_modules/@shikijs/langs/dist/gdshader.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gdshader" - }, - { - "path": "node_modules/@shikijs/langs/dist/genie.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/genie" - }, - { - "path": "node_modules/@shikijs/langs/dist/gherkin.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gherkin" - }, - { - "path": "node_modules/@shikijs/langs/dist/git-commit.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/git-commit" - }, - { - "path": "node_modules/@shikijs/langs/dist/git-rebase.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/git-rebase" - }, - { - "path": "node_modules/@shikijs/langs/dist/gleam.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gleam" - }, - { - "path": "node_modules/@shikijs/langs/dist/glimmer-js.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/glimmer-js" - }, - { - "path": "node_modules/@shikijs/langs/dist/glimmer-ts.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/glimmer-ts" - }, - { - "path": "node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/glsl" - }, - { - "path": "node_modules/@shikijs/langs/dist/gnuplot.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gnuplot" - }, - { - "path": "node_modules/@shikijs/langs/dist/go.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/go" - }, - { - "path": "node_modules/@shikijs/langs/dist/graphql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/graphql" - }, - { - "path": "node_modules/@shikijs/langs/dist/groovy.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/groovy" - }, - { - "path": "node_modules/@shikijs/langs/dist/hack.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hack" - }, - { - "path": "node_modules/@shikijs/langs/dist/haml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/haml" - }, - { - "path": "node_modules/@shikijs/langs/dist/handlebars.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/handlebars" - }, - { - "path": "node_modules/@shikijs/langs/dist/haskell.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/haskell" - }, - { - "path": "node_modules/@shikijs/langs/dist/haxe.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/haxe" - }, - { - "path": "node_modules/@shikijs/langs/dist/hcl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hcl" - }, - { - "path": "node_modules/@shikijs/langs/dist/hjson.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hjson" - }, - { - "path": "node_modules/@shikijs/langs/dist/hlsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hlsl" - }, - { - "path": "node_modules/@shikijs/langs/dist/html.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/html" - }, - { - "path": "node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/html-derivative" - }, - { - "path": "node_modules/@shikijs/langs/dist/http.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/http" - }, - { - "path": "node_modules/@shikijs/langs/dist/hxml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hxml" - }, - { - "path": "node_modules/@shikijs/langs/dist/hy.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hy" - }, - { - "path": "node_modules/@shikijs/langs/dist/imba.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/imba" - }, - { - "path": "node_modules/@shikijs/langs/dist/ini.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ini" - }, - { - "path": "node_modules/@shikijs/langs/dist/java.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/java" - }, - { - "path": "node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/javascript" - }, - { - "path": "node_modules/@shikijs/langs/dist/jinja.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jinja" - }, - { - "path": "node_modules/@shikijs/langs/dist/jison.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jison" - }, - { - "path": "node_modules/@shikijs/langs/dist/json.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/json" - }, - { - "path": "node_modules/@shikijs/langs/dist/json5.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/json5" - }, - { - "path": "node_modules/@shikijs/langs/dist/jsonc.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jsonc" - }, - { - "path": "node_modules/@shikijs/langs/dist/jsonl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jsonl" - }, - { - "path": "node_modules/@shikijs/langs/dist/jsonnet.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jsonnet" - }, - { - "path": "node_modules/@shikijs/langs/dist/jssm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jssm" - }, - { - "path": "node_modules/@shikijs/langs/dist/jsx.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jsx" - }, - { - "path": "node_modules/@shikijs/langs/dist/julia.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/julia" - }, - { - "path": "node_modules/@shikijs/langs/dist/kotlin.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/kotlin" - }, - { - "path": "node_modules/@shikijs/langs/dist/kusto.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/kusto" - }, - { - "path": "node_modules/@shikijs/langs/dist/latex.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/latex" - }, - { - "path": "node_modules/@shikijs/langs/dist/lean.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/lean" - }, - { - "path": "node_modules/@shikijs/langs/dist/less.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/less" - }, - { - "path": "node_modules/@shikijs/langs/dist/liquid.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/liquid" - }, - { - "path": "node_modules/@shikijs/langs/dist/llvm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/llvm" - }, - { - "path": "node_modules/@shikijs/langs/dist/log.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/log" - }, - { - "path": "node_modules/@shikijs/langs/dist/logo.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/logo" - }, - { - "path": "node_modules/@shikijs/langs/dist/lua.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/lua" - }, - { - "path": "node_modules/@shikijs/langs/dist/luau.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/luau" - }, - { - "path": "node_modules/@shikijs/langs/dist/make.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/make" - }, - { - "path": "node_modules/@shikijs/langs/dist/markdown.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/markdown" - }, - { - "path": "node_modules/@shikijs/langs/dist/marko.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/marko" - }, - { - "path": "node_modules/@shikijs/langs/dist/matlab.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/matlab" - }, - { - "path": "node_modules/@shikijs/langs/dist/mdc.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mdc" - }, - { - "path": "node_modules/@shikijs/langs/dist/mdx.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mdx" - }, - { - "path": "node_modules/@shikijs/langs/dist/mermaid.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mermaid" - }, - { - "path": "node_modules/@shikijs/langs/dist/mipsasm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mipsasm" - }, - { - "path": "node_modules/@shikijs/langs/dist/mojo.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mojo" - }, - { - "path": "node_modules/@shikijs/langs/dist/move.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/move" - }, - { - "path": "node_modules/@shikijs/langs/dist/narrat.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/narrat" - }, - { - "path": "node_modules/@shikijs/langs/dist/nextflow.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nextflow" - }, - { - "path": "node_modules/@shikijs/langs/dist/nginx.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nginx" - }, - { - "path": "node_modules/@shikijs/langs/dist/nim.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nim" - }, - { - "path": "node_modules/@shikijs/langs/dist/nix.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nix" - }, - { - "path": "node_modules/@shikijs/langs/dist/nushell.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nushell" - }, - { - "path": "node_modules/@shikijs/langs/dist/objective-c.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/objective-c" - }, - { - "path": "node_modules/@shikijs/langs/dist/objective-cpp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/objective-cpp" - }, - { - "path": "node_modules/@shikijs/langs/dist/ocaml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ocaml" - }, - { - "path": "node_modules/@shikijs/langs/dist/pascal.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/pascal" - }, - { - "path": "node_modules/@shikijs/langs/dist/perl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/perl" - }, - { - "path": "node_modules/@shikijs/langs/dist/php.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/php" - }, - { - "path": "node_modules/@shikijs/langs/dist/plsql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/plsql" - }, - { - "path": "node_modules/@shikijs/langs/dist/po.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/po" - }, - { - "path": "node_modules/@shikijs/langs/dist/polar.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/polar" - }, - { - "path": "node_modules/@shikijs/langs/dist/postcss.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/postcss" - }, - { - "path": "node_modules/@shikijs/langs/dist/powerquery.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/powerquery" - }, - { - "path": "node_modules/@shikijs/langs/dist/powershell.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/powershell" - }, - { - "path": "node_modules/@shikijs/langs/dist/prisma.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/prisma" - }, - { - "path": "node_modules/@shikijs/langs/dist/prolog.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/prolog" - }, - { - "path": "node_modules/@shikijs/langs/dist/proto.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/proto" - }, - { - "path": "node_modules/@shikijs/langs/dist/pug.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/pug" - }, - { - "path": "node_modules/@shikijs/langs/dist/puppet.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/puppet" - }, - { - "path": "node_modules/@shikijs/langs/dist/purescript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/purescript" - }, - { - "path": "node_modules/@shikijs/langs/dist/python.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/python" - }, - { - "path": "node_modules/@shikijs/langs/dist/qml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/qml" - }, - { - "path": "node_modules/@shikijs/langs/dist/qmldir.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/qmldir" - }, - { - "path": "node_modules/@shikijs/langs/dist/qss.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/qss" - }, - { - "path": "node_modules/@shikijs/langs/dist/r.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/r" - }, - { - "path": "node_modules/@shikijs/langs/dist/racket.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/racket" - }, - { - "path": "node_modules/@shikijs/langs/dist/raku.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/raku" - }, - { - "path": "node_modules/@shikijs/langs/dist/razor.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/razor" - }, - { - "path": "node_modules/@shikijs/langs/dist/reg.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/reg" - }, - { - "path": "node_modules/@shikijs/langs/dist/regexp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/regexp" - }, - { - "path": "node_modules/@shikijs/langs/dist/rel.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/rel" - }, - { - "path": "node_modules/@shikijs/langs/dist/riscv.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/riscv" - }, - { - "path": "node_modules/@shikijs/langs/dist/rst.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/rst" - }, - { - "path": "node_modules/@shikijs/langs/dist/ruby.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ruby" - }, - { - "path": "node_modules/@shikijs/langs/dist/rust.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/rust" - }, - { - "path": "node_modules/@shikijs/langs/dist/sas.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sas" - }, - { - "path": "node_modules/@shikijs/langs/dist/sass.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sass" - }, - { - "path": "node_modules/@shikijs/langs/dist/scala.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/scala" - }, - { - "path": "node_modules/@shikijs/langs/dist/scheme.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/scheme" - }, - { - "path": "node_modules/@shikijs/langs/dist/scss.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/scss" - }, - { - "path": "node_modules/@shikijs/langs/dist/sdbl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sdbl" - }, - { - "path": "node_modules/@shikijs/langs/dist/shaderlab.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/shaderlab" - }, - { - "path": "node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/shellscript" - }, - { - "path": "node_modules/@shikijs/langs/dist/shellsession.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/shellsession" - }, - { - "path": "node_modules/@shikijs/langs/dist/smalltalk.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/smalltalk" - }, - { - "path": "node_modules/@shikijs/langs/dist/solidity.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/solidity" - }, - { - "path": "node_modules/@shikijs/langs/dist/soy.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/soy" - }, - { - "path": "node_modules/@shikijs/langs/dist/sparql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sparql" - }, - { - "path": "node_modules/@shikijs/langs/dist/splunk.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/splunk" - }, - { - "path": "node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sql" - }, - { - "path": "node_modules/@shikijs/langs/dist/ssh-config.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ssh-config" - }, - { - "path": "node_modules/@shikijs/langs/dist/stata.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/stata" - }, - { - "path": "node_modules/@shikijs/langs/dist/stylus.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/stylus" - }, - { - "path": "node_modules/@shikijs/langs/dist/svelte.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/svelte" - }, - { - "path": "node_modules/@shikijs/langs/dist/swift.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/swift" - }, - { - "path": "node_modules/@shikijs/langs/dist/system-verilog.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/system-verilog" - }, - { - "path": "node_modules/@shikijs/langs/dist/systemd.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/systemd" - }, - { - "path": "node_modules/@shikijs/langs/dist/talonscript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/talonscript" - }, - { - "path": "node_modules/@shikijs/langs/dist/tasl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tasl" - }, - { - "path": "node_modules/@shikijs/langs/dist/tcl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tcl" - }, - { - "path": "node_modules/@shikijs/langs/dist/templ.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/templ" - }, - { - "path": "node_modules/@shikijs/langs/dist/terraform.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/terraform" - }, - { - "path": "node_modules/@shikijs/langs/dist/tex.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tex" - }, - { - "path": "node_modules/@shikijs/langs/dist/toml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/toml" - }, - { - "path": "node_modules/@shikijs/langs/dist/ts-tags.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ts-tags" - }, - { - "path": "node_modules/@shikijs/langs/dist/tsv.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tsv" - }, - { - "path": "node_modules/@shikijs/langs/dist/tsx.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tsx" - }, - { - "path": "node_modules/@shikijs/langs/dist/turtle.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/turtle" - }, - { - "path": "node_modules/@shikijs/langs/dist/twig.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/twig" - }, - { - "path": "node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/typescript" - }, - { - "path": "node_modules/@shikijs/langs/dist/typespec.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/typespec" - }, - { - "path": "node_modules/@shikijs/langs/dist/typst.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/typst" - }, - { - "path": "node_modules/@shikijs/langs/dist/v.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/v" - }, - { - "path": "node_modules/@shikijs/langs/dist/vala.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vala" - }, - { - "path": "node_modules/@shikijs/langs/dist/vb.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vb" - }, - { - "path": "node_modules/@shikijs/langs/dist/verilog.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/verilog" - }, - { - "path": "node_modules/@shikijs/langs/dist/vhdl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vhdl" - }, - { - "path": "node_modules/@shikijs/langs/dist/viml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/viml" - }, - { - "path": "node_modules/@shikijs/langs/dist/vue.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vue" - }, - { - "path": "node_modules/@shikijs/langs/dist/vue-html.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vue-html" - }, - { - "path": "node_modules/@shikijs/langs/dist/vyper.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vyper" - }, - { - "path": "node_modules/@shikijs/langs/dist/wasm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wasm" - }, - { - "path": "node_modules/@shikijs/langs/dist/wenyan.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wenyan" - }, - { - "path": "node_modules/@shikijs/langs/dist/wgsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wgsl" - }, - { - "path": "node_modules/@shikijs/langs/dist/wikitext.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wikitext" - }, - { - "path": "node_modules/@shikijs/langs/dist/wit.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wit" - }, - { - "path": "node_modules/@shikijs/langs/dist/wolfram.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wolfram" - }, - { - "path": "node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/xml" - }, - { - "path": "node_modules/@shikijs/langs/dist/xsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/xsl" - }, - { - "path": "node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/yaml" - }, - { - "path": "node_modules/@shikijs/langs/dist/zenscript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/zenscript" - }, - { - "path": "node_modules/@shikijs/langs/dist/zig.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/zig" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/andromeeda.mjs": { - "bytes": 9740, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/aurora-x.mjs": { - "bytes": 14878, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/ayu-dark.mjs": { - "bytes": 16638, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs": { - "bytes": 51632, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/catppuccin-latte.mjs": { - "bytes": 51629, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs": { - "bytes": 51640, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs": { - "bytes": 51628, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/dark-plus.mjs": { - "bytes": 10119, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/dracula.mjs": { - "bytes": 23122, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/dracula-soft.mjs": { - "bytes": 23137, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/everforest-dark.mjs": { - "bytes": 58495, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/everforest-light.mjs": { - "bytes": 58499, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/github-dark.mjs": { - "bytes": 12745, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/github-dark-default.mjs": { - "bytes": 16087, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs": { - "bytes": 16084, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs": { - "bytes": 16269, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/github-light.mjs": { - "bytes": 12509, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/github-light-default.mjs": { - "bytes": 15775, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs": { - "bytes": 15912, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/gruvbox-dark-hard.mjs": { - "bytes": 24319, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/gruvbox-dark-medium.mjs": { - "bytes": 24325, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/gruvbox-dark-soft.mjs": { - "bytes": 24319, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/gruvbox-light-hard.mjs": { - "bytes": 24323, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/gruvbox-light-medium.mjs": { - "bytes": 24329, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/gruvbox-light-soft.mjs": { - "bytes": 24323, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/houston.mjs": { - "bytes": 38990, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs": { - "bytes": 18759, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs": { - "bytes": 18757, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/kanagawa-wave.mjs": { - "bytes": 18753, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/laserwave.mjs": { - "bytes": 12481, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/light-plus.mjs": { - "bytes": 11014, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/material-theme.mjs": { - "bytes": 20362, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/material-theme-darker.mjs": { - "bytes": 20383, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/material-theme-lighter.mjs": { - "bytes": 20389, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/material-theme-ocean.mjs": { - "bytes": 20382, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/material-theme-palenight.mjs": { - "bytes": 20392, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/min-dark.mjs": { - "bytes": 6980, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/min-light.mjs": { - "bytes": 7739, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/monokai.mjs": { - "bytes": 8870, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/night-owl.mjs": { - "bytes": 32203, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/nord.mjs": { - "bytes": 29510, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/one-dark-pro.mjs": { - "bytes": 37268, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/one-light.mjs": { - "bytes": 28042, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/plastic.mjs": { - "bytes": 10273, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/poimandres.mjs": { - "bytes": 36593, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/red.mjs": { - "bytes": 7048, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/rose-pine.mjs": { - "bytes": 23997, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs": { - "bytes": 24013, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/rose-pine-moon.mjs": { - "bytes": 24012, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/slack-dark.mjs": { - "bytes": 10164, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/slack-ochin.mjs": { - "bytes": 10571, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/snazzy-light.mjs": { - "bytes": 23098, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/solarized-dark.mjs": { - "bytes": 7707, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/solarized-light.mjs": { - "bytes": 7310, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/synthwave-84.mjs": { - "bytes": 15637, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/tokyo-night.mjs": { - "bytes": 38801, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/vesper.mjs": { - "bytes": 13765, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/vitesse-black.mjs": { - "bytes": 15243, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/vitesse-dark.mjs": { - "bytes": 15324, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/themes/dist/vitesse-light.mjs": { - "bytes": 15174, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/themes.mjs": { - "bytes": 9410, - "imports": [ - { - "path": "node_modules/@shikijs/themes/dist/andromeeda.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/andromeeda" - }, - { - "path": "node_modules/@shikijs/themes/dist/aurora-x.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/aurora-x" - }, - { - "path": "node_modules/@shikijs/themes/dist/ayu-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/ayu-dark" - }, - { - "path": "node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/catppuccin-frappe" - }, - { - "path": "node_modules/@shikijs/themes/dist/catppuccin-latte.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/catppuccin-latte" - }, - { - "path": "node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/catppuccin-macchiato" - }, - { - "path": "node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/catppuccin-mocha" - }, - { - "path": "node_modules/@shikijs/themes/dist/dark-plus.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/dark-plus" - }, - { - "path": "node_modules/@shikijs/themes/dist/dracula.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/dracula" - }, - { - "path": "node_modules/@shikijs/themes/dist/dracula-soft.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/dracula-soft" - }, - { - "path": "node_modules/@shikijs/themes/dist/everforest-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/everforest-dark" - }, - { - "path": "node_modules/@shikijs/themes/dist/everforest-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/everforest-light" - }, - { - "path": "node_modules/@shikijs/themes/dist/github-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-dark" - }, - { - "path": "node_modules/@shikijs/themes/dist/github-dark-default.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-dark-default" - }, - { - "path": "node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-dark-dimmed" - }, - { - "path": "node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-dark-high-contrast" - }, - { - "path": "node_modules/@shikijs/themes/dist/github-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-light" - }, - { - "path": "node_modules/@shikijs/themes/dist/github-light-default.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-light-default" - }, - { - "path": "node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-light-high-contrast" - }, - { - "path": "node_modules/@shikijs/themes/dist/gruvbox-dark-hard.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/gruvbox-dark-hard" - }, - { - "path": "node_modules/@shikijs/themes/dist/gruvbox-dark-medium.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/gruvbox-dark-medium" - }, - { - "path": "node_modules/@shikijs/themes/dist/gruvbox-dark-soft.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/gruvbox-dark-soft" - }, - { - "path": "node_modules/@shikijs/themes/dist/gruvbox-light-hard.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/gruvbox-light-hard" - }, - { - "path": "node_modules/@shikijs/themes/dist/gruvbox-light-medium.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/gruvbox-light-medium" - }, - { - "path": "node_modules/@shikijs/themes/dist/gruvbox-light-soft.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/gruvbox-light-soft" - }, - { - "path": "node_modules/@shikijs/themes/dist/houston.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/houston" - }, - { - "path": "node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/kanagawa-dragon" - }, - { - "path": "node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/kanagawa-lotus" - }, - { - "path": "node_modules/@shikijs/themes/dist/kanagawa-wave.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/kanagawa-wave" - }, - { - "path": "node_modules/@shikijs/themes/dist/laserwave.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/laserwave" - }, - { - "path": "node_modules/@shikijs/themes/dist/light-plus.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/light-plus" - }, - { - "path": "node_modules/@shikijs/themes/dist/material-theme.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme" - }, - { - "path": "node_modules/@shikijs/themes/dist/material-theme-darker.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme-darker" - }, - { - "path": "node_modules/@shikijs/themes/dist/material-theme-lighter.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme-lighter" - }, - { - "path": "node_modules/@shikijs/themes/dist/material-theme-ocean.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme-ocean" - }, - { - "path": "node_modules/@shikijs/themes/dist/material-theme-palenight.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme-palenight" - }, - { - "path": "node_modules/@shikijs/themes/dist/min-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/min-dark" - }, - { - "path": "node_modules/@shikijs/themes/dist/min-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/min-light" - }, - { - "path": "node_modules/@shikijs/themes/dist/monokai.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/monokai" - }, - { - "path": "node_modules/@shikijs/themes/dist/night-owl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/night-owl" - }, - { - "path": "node_modules/@shikijs/themes/dist/nord.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/nord" - }, - { - "path": "node_modules/@shikijs/themes/dist/one-dark-pro.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/one-dark-pro" - }, - { - "path": "node_modules/@shikijs/themes/dist/one-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/one-light" - }, - { - "path": "node_modules/@shikijs/themes/dist/plastic.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/plastic" - }, - { - "path": "node_modules/@shikijs/themes/dist/poimandres.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/poimandres" - }, - { - "path": "node_modules/@shikijs/themes/dist/red.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/red" - }, - { - "path": "node_modules/@shikijs/themes/dist/rose-pine.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/rose-pine" - }, - { - "path": "node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/rose-pine-dawn" - }, - { - "path": "node_modules/@shikijs/themes/dist/rose-pine-moon.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/rose-pine-moon" - }, - { - "path": "node_modules/@shikijs/themes/dist/slack-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/slack-dark" - }, - { - "path": "node_modules/@shikijs/themes/dist/slack-ochin.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/slack-ochin" - }, - { - "path": "node_modules/@shikijs/themes/dist/snazzy-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/snazzy-light" - }, - { - "path": "node_modules/@shikijs/themes/dist/solarized-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/solarized-dark" - }, - { - "path": "node_modules/@shikijs/themes/dist/solarized-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/solarized-light" - }, - { - "path": "node_modules/@shikijs/themes/dist/synthwave-84.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/synthwave-84" - }, - { - "path": "node_modules/@shikijs/themes/dist/tokyo-night.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/tokyo-night" - }, - { - "path": "node_modules/@shikijs/themes/dist/vesper.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/vesper" - }, - { - "path": "node_modules/@shikijs/themes/dist/vitesse-black.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/vitesse-black" - }, - { - "path": "node_modules/@shikijs/themes/dist/vitesse-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/vitesse-dark" - }, - { - "path": "node_modules/@shikijs/themes/dist/vitesse-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/vitesse-light" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/engine-oniguruma/dist/index.mjs": { - "bytes": 15970, - "imports": [], - "format": "esm" - }, - "node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs": { - "bytes": 622442, - "imports": [], - "format": "esm" - }, - "node_modules/shiki/dist/wasm.mjs": { - "bytes": 122, - "imports": [ - { - "path": "node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma/wasm-inlined" - }, - { - "path": "node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma/wasm-inlined" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/bundle-full.mjs": { - "bytes": 1073, - "imports": [ - { - "path": "node_modules/@shikijs/core/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/core" - }, - { - "path": "node_modules/@shikijs/core/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/core" - }, - { - "path": "node_modules/shiki/dist/langs.mjs", - "kind": "import-statement", - "original": "./langs.mjs" - }, - { - "path": "node_modules/shiki/dist/langs.mjs", - "kind": "import-statement", - "original": "./langs.mjs" - }, - { - "path": "node_modules/shiki/dist/themes.mjs", - "kind": "import-statement", - "original": "./themes.mjs" - }, - { - "path": "node_modules/shiki/dist/themes.mjs", - "kind": "import-statement", - "original": "./themes.mjs" - }, - { - "path": "node_modules/@shikijs/engine-oniguruma/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma" - }, - { - "path": "node_modules/shiki/dist/wasm.mjs", - "kind": "dynamic-import", - "original": "shiki/wasm" - } - ], - "format": "esm" - }, - "node_modules/oniguruma-parser/dist/utils.js": { - "bytes": 523, - "imports": [], - "format": "esm" - }, - "node_modules/oniguruma-parser/dist/tokenizer/tokenize.js": { - "bytes": 11850, - "imports": [ - { - "path": "node_modules/oniguruma-parser/dist/utils.js", - "kind": "import-statement", - "original": "../utils.js" - } - ], - "format": "esm" - }, - "node_modules/oniguruma-parser/dist/parser/node-utils.js": { - "bytes": 675, - "imports": [], - "format": "esm" - }, - "node_modules/oniguruma-parser/dist/parser/parse.js": { - "bytes": 10609, - "imports": [ - { - "path": "node_modules/oniguruma-parser/dist/tokenizer/tokenize.js", - "kind": "import-statement", - "original": "../tokenizer/tokenize.js" - }, - { - "path": "node_modules/oniguruma-parser/dist/utils.js", - "kind": "import-statement", - "original": "../utils.js" - }, - { - "path": "node_modules/oniguruma-parser/dist/parser/node-utils.js", - "kind": "import-statement", - "original": "./node-utils.js" - } - ], - "format": "esm" - }, - "node_modules/oniguruma-parser/dist/traverser/traverse.js": { - "bytes": 1699, - "imports": [ - { - "path": "node_modules/oniguruma-parser/dist/utils.js", - "kind": "import-statement", - "original": "../utils.js" - } - ], - "format": "esm" - }, - "node_modules/regex/src/utils-internals.js": { - "bytes": 772, - "imports": [], - "format": "esm" - }, - "node_modules/regex-utilities/src/index.js": { - "bytes": 6094, - "imports": [], - "format": "esm" - }, - "node_modules/regex/src/atomic.js": { - "bytes": 7636, - "imports": [ - { - "path": "node_modules/regex/src/utils-internals.js", - "kind": "import-statement", - "original": "./utils-internals.js" - }, - { - "path": "node_modules/regex-utilities/src/index.js", - "kind": "import-statement", - "original": "regex-utilities" - } - ], - "format": "esm" - }, - "node_modules/regex/src/subclass.js": { - "bytes": 2594, - "imports": [ - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/regex/src/internals.js": { - "bytes": 94, - "imports": [ - { - "path": "node_modules/regex/src/atomic.js", - "kind": "import-statement", - "original": "./atomic.js" - }, - { - "path": "node_modules/regex/src/subclass.js", - "kind": "import-statement", - "original": "./subclass.js" - } - ], - "format": "esm" - }, - "node_modules/regex-recursion/src/index.js": { - "bytes": 12749, - "imports": [ - { - "path": "node_modules/regex-utilities/src/index.js", - "kind": "import-statement", - "original": "regex-utilities" - } - ], - "format": "esm" - }, - "node_modules/oniguruma-to-es/dist/esm/index.js": { - "bytes": 60749, - "imports": [ - { - "path": "node_modules/oniguruma-parser/dist/parser/parse.js", - "kind": "import-statement", - "original": "oniguruma-parser/parser" - }, - { - "path": "node_modules/oniguruma-parser/dist/parser/parse.js", - "kind": "import-statement", - "original": "oniguruma-parser/parser" - }, - { - "path": "node_modules/oniguruma-parser/dist/traverser/traverse.js", - "kind": "import-statement", - "original": "oniguruma-parser/traverser" - }, - { - "path": "node_modules/oniguruma-parser/dist/parser/parse.js", - "kind": "import-statement", - "original": "oniguruma-parser/parser" - }, - { - "path": "node_modules/oniguruma-parser/dist/traverser/traverse.js", - "kind": "import-statement", - "original": "oniguruma-parser/traverser" - }, - { - "path": "node_modules/oniguruma-parser/dist/parser/parse.js", - "kind": "import-statement", - "original": "oniguruma-parser/parser" - }, - { - "path": "node_modules/regex/src/internals.js", - "kind": "import-statement", - "original": "regex/internals" - }, - { - "path": "node_modules/regex-recursion/src/index.js", - "kind": "import-statement", - "original": "regex-recursion" - }, - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs": { - "bytes": 2324, - "imports": [ - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs": { - "bytes": 1802, - "imports": [ - { - "path": "node_modules/oniguruma-to-es/dist/esm/index.js", - "kind": "import-statement", - "original": "oniguruma-to-es" - }, - { - "path": "node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", - "kind": "import-statement", - "original": "./shared/engine-javascript.hzpS1_41.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs": { - "bytes": 521, - "imports": [ - { - "path": "node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", - "kind": "import-statement", - "original": "./shared/engine-javascript.hzpS1_41.mjs" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/engine-javascript/dist/index.mjs": { - "bytes": 273, - "imports": [ - { - "path": "node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs", - "kind": "import-statement", - "original": "./engine-compile.mjs" - }, - { - "path": "node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs", - "kind": "import-statement", - "original": "./engine-raw.mjs" - }, - { - "path": "node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", - "kind": "import-statement", - "original": "./shared/engine-javascript.hzpS1_41.mjs" - }, - { - "path": "node_modules/oniguruma-to-es/dist/esm/index.js", - "kind": "import-statement", - "original": "oniguruma-to-es" - } - ], - "format": "esm" - }, - "node_modules/shiki/dist/index.mjs": { - "bytes": 578, - "imports": [ - { - "path": "node_modules/shiki/dist/bundle-full.mjs", - "kind": "import-statement", - "original": "./bundle-full.mjs" - }, - { - "path": "node_modules/@shikijs/engine-javascript/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-javascript" - }, - { - "path": "node_modules/@shikijs/engine-oniguruma/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma" - }, - { - "path": "node_modules/@shikijs/core/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/core" - }, - { - "path": "node_modules/shiki/dist/langs.mjs", - "kind": "import-statement", - "original": "./langs.mjs" - }, - { - "path": "node_modules/shiki/dist/themes.mjs", - "kind": "import-statement", - "original": "./themes.mjs" - } - ], - "format": "esm" - }, - "src/settings/SettingsTab.ts": { - "bytes": 5721, - "imports": [ - { - "path": "obsidian", - "kind": "import-statement", - "external": true - }, - { - "path": "src/settings/StringSelectModal.ts", - "kind": "import-statement", - "original": "src/settings/StringSelectModal" - }, - { - "path": "node_modules/shiki/dist/index.mjs", - "kind": "import-statement", - "original": "shiki" - } - ], - "format": "esm" - }, - "src/PrismPlugin.ts": { - "bytes": 3615, - "imports": [], - "format": "esm" - }, - "node_modules/unist-util-is/lib/index.js": { - "bytes": 8391, - "imports": [], - "format": "esm" - }, - "node_modules/unist-util-is/index.js": { - "bytes": 217, - "imports": [ - { - "path": "node_modules/unist-util-is/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/unist-util-find-after/lib/index.js": { - "bytes": 3613, - "imports": [ - { - "path": "node_modules/unist-util-is/index.js", - "kind": "import-statement", - "original": "unist-util-is" - } - ], - "format": "esm" - }, - "node_modules/unist-util-find-after/index.js": { - "bytes": 41, - "imports": [ - { - "path": "node_modules/unist-util-find-after/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-is-element/lib/index.js": { - "bytes": 7777, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-is-element/index.js": { - "bytes": 231, - "imports": [ - { - "path": "node_modules/hast-util-is-element/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-text/lib/index.js": { - "bytes": 19593, - "imports": [ - { - "path": "node_modules/unist-util-find-after/index.js", - "kind": "import-statement", - "original": "unist-util-find-after" - }, - { - "path": "node_modules/hast-util-is-element/index.js", - "kind": "import-statement", - "original": "hast-util-is-element" - } - ], - "format": "esm" - }, - "node_modules/hast-util-to-text/index.js": { - "bytes": 163, - "imports": [ - { - "path": "node_modules/hast-util-to-text/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/indexes.js": { - "bytes": 1057, - "imports": [], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/pseudo-signatures.js": { - "bytes": 2040, - "imports": [], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/syntax-definitions.js": { - "bytes": 16047, - "imports": [], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/utils.js": { - "bytes": 3135, - "imports": [], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/parser.js": { - "bytes": 28941, - "imports": [ - { - "path": "node_modules/css-selector-parser/dist/mjs/indexes.js", - "kind": "import-statement", - "original": "./indexes.js" - }, - { - "path": "node_modules/css-selector-parser/dist/mjs/pseudo-signatures.js", - "kind": "import-statement", - "original": "./pseudo-signatures.js" - }, - { - "path": "node_modules/css-selector-parser/dist/mjs/syntax-definitions.js", - "kind": "import-statement", - "original": "./syntax-definitions.js" - }, - { - "path": "node_modules/css-selector-parser/dist/mjs/utils.js", - "kind": "import-statement", - "original": "./utils.js" - } - ], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/render.js": { - "bytes": 5077, - "imports": [ - { - "path": "node_modules/css-selector-parser/dist/mjs/utils.js", - "kind": "import-statement", - "original": "./utils.js" - } - ], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/ast.js": { - "bytes": 3140, - "imports": [], - "format": "esm" - }, - "node_modules/css-selector-parser/dist/mjs/index.js": { - "bytes": 114, - "imports": [ - { - "path": "node_modules/css-selector-parser/dist/mjs/parser.js", - "kind": "import-statement", - "original": "./parser.js" - }, - { - "path": "node_modules/css-selector-parser/dist/mjs/render.js", - "kind": "import-statement", - "original": "./render.js" - }, - { - "path": "node_modules/css-selector-parser/dist/mjs/ast.js", - "kind": "import-statement", - "original": "./ast.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/lib/parse.js": { - "bytes": 479, - "imports": [ - { - "path": "node_modules/css-selector-parser/dist/mjs/index.js", - "kind": "import-statement", - "original": "css-selector-parser" - } - ], - "format": "esm" - }, - "node_modules/direction/index.js": { - "bytes": 739, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-to-string/lib/index.js": { - "bytes": 985, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-to-string/index.js": { - "bytes": 1122, - "imports": [ - { - "path": "node_modules/hast-util-to-string/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/unist-util-visit-parents/lib/color.js": { - "bytes": 90, - "imports": [], - "format": "esm" - }, - "node_modules/unist-util-visit-parents/lib/index.js": { - "bytes": 11714, - "imports": [ - { - "path": "node_modules/unist-util-is/index.js", - "kind": "import-statement", - "original": "unist-util-is" - }, - { - "path": "node_modules/unist-util-visit-parents/lib/color.js", - "kind": "import-statement", - "original": "unist-util-visit-parents/do-not-use-color" - } - ], - "format": "esm" - }, - "node_modules/unist-util-visit-parents/index.js": { - "bytes": 108, - "imports": [ - { - "path": "node_modules/unist-util-visit-parents/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/unist-util-visit/lib/index.js": { - "bytes": 9624, - "imports": [ - { - "path": "node_modules/unist-util-visit-parents/index.js", - "kind": "import-statement", - "original": "unist-util-visit-parents" - }, - { - "path": "node_modules/unist-util-visit-parents/index.js", - "kind": "import-statement", - "original": "unist-util-visit-parents" - } - ], - "format": "esm" - }, - "node_modules/unist-util-visit/index.js": { - "bytes": 101, - "imports": [ - { - "path": "node_modules/unist-util-visit/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/lib/enter-state.js": { - "bytes": 4394, - "imports": [ - { - "path": "node_modules/direction/index.js", - "kind": "import-statement", - "original": "direction" - }, - { - "path": "node_modules/hast-util-to-string/index.js", - "kind": "import-statement", - "original": "hast-util-to-string" - }, - { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" - }, - { - "path": "node_modules/unist-util-visit/index.js", - "kind": "import-statement", - "original": "unist-util-visit" - } - ], - "format": "esm" - }, - "node_modules/devlop/lib/default.js": { - "bytes": 133, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-select/lib/attribute.js": { - "bytes": 2660, - "imports": [ - { - "path": "node_modules/comma-separated-tokens/index.js", - "kind": "import-statement", - "original": "comma-separated-tokens" - }, - { - "path": "node_modules/devlop/lib/default.js", - "kind": "import-statement", - "original": "devlop" - }, - { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" - }, - { - "path": "node_modules/space-separated-tokens/index.js", - "kind": "import-statement", - "original": "space-separated-tokens" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/lib/class-name.js": { - "bytes": 596, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-select/lib/id.js": { - "bytes": 379, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-select/lib/name.js": { - "bytes": 390, - "imports": [], - "format": "esm" - }, - "node_modules/bcp-47-match/index.js": { - "bytes": 5963, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-has-property/lib/index.js": { - "bytes": 870, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-has-property/index.js": { - "bytes": 43, - "imports": [ - { - "path": "node_modules/hast-util-has-property/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/nth-check/lib/esm/parse.js": { - "bytes": 2239, - "imports": [], - "format": "esm" - }, - "node_modules/boolbase/index.js": { - "bytes": 125, - "imports": [], - "format": "cjs" - }, - "node_modules/nth-check/lib/esm/compile.js": { - "bytes": 3320, - "imports": [ - { - "path": "node_modules/boolbase/index.js", - "kind": "import-statement", - "original": "boolbase" - } - ], - "format": "esm" - }, - "node_modules/nth-check/lib/esm/index.js": { - "bytes": 1655, - "imports": [ - { - "path": "node_modules/nth-check/lib/esm/parse.js", - "kind": "import-statement", - "original": "./parse.js" - }, - { - "path": "node_modules/nth-check/lib/esm/compile.js", - "kind": "import-statement", - "original": "./compile.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/lib/pseudo.js": { - "bytes": 18365, - "imports": [ - { - "path": "node_modules/bcp-47-match/index.js", - "kind": "import-statement", - "original": "bcp-47-match" - }, - { - "path": "node_modules/comma-separated-tokens/index.js", - "kind": "import-statement", - "original": "comma-separated-tokens" - }, - { - "path": "node_modules/devlop/lib/default.js", - "kind": "import-statement", - "original": "devlop" - }, - { - "path": "node_modules/hast-util-has-property/index.js", - "kind": "import-statement", - "original": "hast-util-has-property" - }, - { - "path": "node_modules/hast-util-whitespace/index.js", - "kind": "import-statement", - "original": "hast-util-whitespace" - }, - { - "path": "node_modules/nth-check/lib/esm/index.js", - "kind": "import-statement", - "original": "nth-check" - }, - { - "path": "node_modules/zwitch/index.js", - "kind": "import-statement", - "original": "zwitch" - }, - { - "path": "node_modules/hast-util-select/lib/walk.js", - "kind": "import-statement", - "original": "./walk.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/lib/test.js": { - "bytes": 1528, - "imports": [ - { - "path": "node_modules/hast-util-select/lib/attribute.js", - "kind": "import-statement", - "original": "./attribute.js" - }, - { - "path": "node_modules/hast-util-select/lib/class-name.js", - "kind": "import-statement", - "original": "./class-name.js" - }, - { - "path": "node_modules/hast-util-select/lib/id.js", - "kind": "import-statement", - "original": "./id.js" - }, - { - "path": "node_modules/hast-util-select/lib/name.js", - "kind": "import-statement", - "original": "./name.js" - }, - { - "path": "node_modules/hast-util-select/lib/pseudo.js", - "kind": "import-statement", - "original": "./pseudo.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/lib/walk.js": { - "bytes": 7674, - "imports": [ - { - "path": "node_modules/hast-util-select/lib/enter-state.js", - "kind": "import-statement", - "original": "./enter-state.js" - }, - { - "path": "node_modules/hast-util-select/lib/test.js", - "kind": "import-statement", - "original": "./test.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/lib/index.js": { - "bytes": 4608, - "imports": [ - { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" - }, - { - "path": "node_modules/hast-util-select/lib/parse.js", - "kind": "import-statement", - "original": "./parse.js" - }, - { - "path": "node_modules/hast-util-select/lib/walk.js", - "kind": "import-statement", - "original": "./walk.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-select/index.js": { - "bytes": 118, - "imports": [ - { - "path": "node_modules/hast-util-select/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/hast-util-parse-selector/lib/index.js": { - "bytes": 2405, - "imports": [], - "format": "esm" - }, - "node_modules/hast-util-parse-selector/index.js": { - "bytes": 45, - "imports": [ - { - "path": "node_modules/hast-util-parse-selector/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/hastscript/lib/create-h.js": { - "bytes": 9032, - "imports": [ - { - "path": "node_modules/comma-separated-tokens/index.js", - "kind": "import-statement", - "original": "comma-separated-tokens" - }, - { - "path": "node_modules/hast-util-parse-selector/index.js", - "kind": "import-statement", - "original": "hast-util-parse-selector" - }, - { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" - }, - { - "path": "node_modules/space-separated-tokens/index.js", - "kind": "import-statement", - "original": "space-separated-tokens" - } - ], - "format": "esm" - }, - "node_modules/hastscript/lib/svg-case-sensitive-tag-names.js": { - "bytes": 796, - "imports": [], - "format": "esm" - }, - "node_modules/hastscript/lib/index.js": { - "bytes": 1233, - "imports": [ - { - "path": "node_modules/property-information/index.js", - "kind": "import-statement", - "original": "property-information" - }, - { - "path": "node_modules/hastscript/lib/create-h.js", - "kind": "import-statement", - "original": "./create-h.js" - }, - { - "path": "node_modules/hastscript/lib/svg-case-sensitive-tag-names.js", - "kind": "import-statement", - "original": "./svg-case-sensitive-tag-names.js" - } - ], - "format": "esm" - }, - "node_modules/hastscript/index.js": { - "bytes": 219, - "imports": [ - { - "path": "node_modules/hastscript/lib/index.js", - "kind": "import-statement", - "original": "./lib/index.js" - } - ], - "format": "esm" - }, - "node_modules/picocolors/picocolors.browser.js": { - "bytes": 598, - "imports": [], - "format": "cjs" - }, - "(disabled):node_modules/postcss/lib/terminal-highlight": { - "bytes": 0, - "imports": [] - }, - "node_modules/postcss/lib/css-syntax-error.js": { - "bytes": 3402, - "imports": [ - { - "path": "node_modules/picocolors/picocolors.browser.js", - "kind": "require-call", - "original": "picocolors" - }, - { - "path": "(disabled):node_modules/postcss/lib/terminal-highlight", - "kind": "require-call", - "original": "./terminal-highlight" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/stringifier.js": { - "bytes": 8220, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/stringify.js": { - "bytes": 213, - "imports": [ - { - "path": "node_modules/postcss/lib/stringifier.js", - "kind": "require-call", - "original": "./stringifier" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/symbols.js": { - "bytes": 91, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/node.js": { - "bytes": 9930, - "imports": [ - { - "path": "node_modules/postcss/lib/css-syntax-error.js", - "kind": "require-call", - "original": "./css-syntax-error" - }, - { - "path": "node_modules/postcss/lib/stringifier.js", - "kind": "require-call", - "original": "./stringifier" - }, - { - "path": "node_modules/postcss/lib/stringify.js", - "kind": "require-call", - "original": "./stringify" - }, - { - "path": "node_modules/postcss/lib/symbols.js", - "kind": "require-call", - "original": "./symbols" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/comment.js": { - "bytes": 203, - "imports": [ - { - "path": "node_modules/postcss/lib/node.js", - "kind": "require-call", - "original": "./node" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/declaration.js": { - "bytes": 495, - "imports": [ - { - "path": "node_modules/postcss/lib/node.js", - "kind": "require-call", - "original": "./node" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/container.js": { - "bytes": 10647, - "imports": [ - { - "path": "node_modules/postcss/lib/comment.js", - "kind": "require-call", - "original": "./comment" - }, - { - "path": "node_modules/postcss/lib/declaration.js", - "kind": "require-call", - "original": "./declaration" - }, - { - "path": "node_modules/postcss/lib/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss/lib/symbols.js", - "kind": "require-call", - "original": "./symbols" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/at-rule.js": { - "bytes": 471, - "imports": [ - { - "path": "node_modules/postcss/lib/container.js", - "kind": "require-call", - "original": "./container" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/document.js": { - "bytes": 654, - "imports": [ - { - "path": "node_modules/postcss/lib/container.js", - "kind": "require-call", - "original": "./container" - } - ], - "format": "cjs" - }, - "node_modules/nanoid/non-secure/index.cjs": { - "bytes": 1114, - "imports": [], - "format": "cjs" - }, - "node-modules-polyfills:path": { - "bytes": 19016, - "imports": [], - "format": "esm" - }, - "node-modules-polyfills-commonjs:path": { - "bytes": 20, - "imports": [ - { - "path": "node-modules-polyfills:path", - "kind": "import-statement", - "original": "path" - } - ], - "format": "esm" - }, - "(disabled):node_modules/source-map-js/source-map.js": { - "bytes": 0, - "imports": [] - }, - "node-modules-polyfills:url": { - "bytes": 121722, - "imports": [], - "format": "esm" - }, - "node-modules-polyfills-commonjs:url": { - "bytes": 19, - "imports": [ - { - "path": "node-modules-polyfills:url", - "kind": "import-statement", - "original": "url" - } - ], - "format": "esm" - }, - "node-modules-polyfills:fs": { - "bytes": 635898, - "imports": [], - "format": "esm" - }, - "node-modules-polyfills-commonjs:fs": { - "bytes": 18, - "imports": [ - { - "path": "node-modules-polyfills:fs", - "kind": "import-statement", - "original": "fs" - } - ], - "format": "esm" - }, - "node_modules/postcss/lib/previous-map.js": { - "bytes": 3984, - "imports": [ - { - "path": "node-modules-polyfills-commonjs:fs", - "kind": "require-call", - "original": "fs" - }, - { - "path": "node-modules-polyfills-commonjs:path", - "kind": "require-call", - "original": "path" - }, - { - "path": "(disabled):node_modules/source-map-js/source-map.js", - "kind": "require-call", - "original": "source-map-js" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/input.js": { - "bytes": 6284, - "imports": [ - { - "path": "node_modules/nanoid/non-secure/index.cjs", - "kind": "require-call", - "original": "nanoid/non-secure" - }, - { - "path": "node-modules-polyfills-commonjs:path", - "kind": "require-call", - "original": "path" - }, - { - "path": "(disabled):node_modules/source-map-js/source-map.js", - "kind": "require-call", - "original": "source-map-js" - }, - { - "path": "node-modules-polyfills-commonjs:url", - "kind": "require-call", - "original": "url" - }, - { - "path": "node_modules/postcss/lib/css-syntax-error.js", - "kind": "require-call", - "original": "./css-syntax-error" - }, - { - "path": "node_modules/postcss/lib/previous-map.js", - "kind": "require-call", - "original": "./previous-map" - }, - { - "path": "(disabled):node_modules/postcss/lib/terminal-highlight", - "kind": "require-call", - "original": "./terminal-highlight" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/root.js": { - "bytes": 1239, - "imports": [ - { - "path": "node_modules/postcss/lib/container.js", - "kind": "require-call", - "original": "./container" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/list.js": { - "bytes": 1227, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/rule.js": { - "bytes": 569, - "imports": [ - { - "path": "node_modules/postcss/lib/container.js", - "kind": "require-call", - "original": "./container" - }, - { - "path": "node_modules/postcss/lib/list.js", - "kind": "require-call", - "original": "./list" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/fromJSON.js": { - "bytes": 1506, - "imports": [ - { - "path": "node_modules/postcss/lib/at-rule.js", - "kind": "require-call", - "original": "./at-rule" - }, - { - "path": "node_modules/postcss/lib/comment.js", - "kind": "require-call", - "original": "./comment" - }, - { - "path": "node_modules/postcss/lib/declaration.js", - "kind": "require-call", - "original": "./declaration" - }, - { - "path": "node_modules/postcss/lib/input.js", - "kind": "require-call", - "original": "./input" - }, - { - "path": "node_modules/postcss/lib/previous-map.js", - "kind": "require-call", - "original": "./previous-map" - }, - { - "path": "node_modules/postcss/lib/root.js", - "kind": "require-call", - "original": "./root" - }, - { - "path": "node_modules/postcss/lib/rule.js", - "kind": "require-call", - "original": "./rule" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/map-generator.js": { - "bytes": 9721, - "imports": [ - { - "path": "node-modules-polyfills-commonjs:path", - "kind": "require-call", - "original": "path" - }, - { - "path": "(disabled):node_modules/source-map-js/source-map.js", - "kind": "require-call", - "original": "source-map-js" - }, - { - "path": "node-modules-polyfills-commonjs:url", - "kind": "require-call", - "original": "url" - }, - { - "path": "node_modules/postcss/lib/input.js", - "kind": "require-call", - "original": "./input" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/tokenize.js": { - "bytes": 6538, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/parser.js": { - "bytes": 14852, - "imports": [ - { - "path": "node_modules/postcss/lib/at-rule.js", - "kind": "require-call", - "original": "./at-rule" - }, - { - "path": "node_modules/postcss/lib/comment.js", - "kind": "require-call", - "original": "./comment" - }, - { - "path": "node_modules/postcss/lib/declaration.js", - "kind": "require-call", - "original": "./declaration" - }, - { - "path": "node_modules/postcss/lib/root.js", - "kind": "require-call", - "original": "./root" - }, - { - "path": "node_modules/postcss/lib/rule.js", - "kind": "require-call", - "original": "./rule" - }, - { - "path": "node_modules/postcss/lib/tokenize.js", - "kind": "require-call", - "original": "./tokenize" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/parse.js": { - "bytes": 1147, - "imports": [ - { - "path": "node_modules/postcss/lib/container.js", - "kind": "require-call", - "original": "./container" - }, - { - "path": "node_modules/postcss/lib/input.js", - "kind": "require-call", - "original": "./input" - }, - { - "path": "node_modules/postcss/lib/parser.js", - "kind": "require-call", - "original": "./parser" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/warning.js": { - "bytes": 739, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/result.js": { - "bytes": 745, - "imports": [ - { - "path": "node_modules/postcss/lib/warning.js", - "kind": "require-call", - "original": "./warning" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/warn-once.js": { - "bytes": 256, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss/lib/lazy-result.js": { - "bytes": 13562, - "imports": [ - { - "path": "node_modules/postcss/lib/container.js", - "kind": "require-call", - "original": "./container" - }, - { - "path": "node_modules/postcss/lib/document.js", - "kind": "require-call", - "original": "./document" - }, - { - "path": "node_modules/postcss/lib/map-generator.js", - "kind": "require-call", - "original": "./map-generator" - }, - { - "path": "node_modules/postcss/lib/parse.js", - "kind": "require-call", - "original": "./parse" - }, - { - "path": "node_modules/postcss/lib/result.js", - "kind": "require-call", - "original": "./result" - }, - { - "path": "node_modules/postcss/lib/root.js", - "kind": "require-call", - "original": "./root" - }, - { - "path": "node_modules/postcss/lib/stringify.js", - "kind": "require-call", - "original": "./stringify" - }, - { - "path": "node_modules/postcss/lib/symbols.js", - "kind": "require-call", - "original": "./symbols" - }, - { - "path": "node_modules/postcss/lib/warn-once.js", - "kind": "require-call", - "original": "./warn-once" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/no-work-result.js": { - "bytes": 2624, - "imports": [ - { - "path": "node_modules/postcss/lib/map-generator.js", - "kind": "require-call", - "original": "./map-generator" - }, - { - "path": "node_modules/postcss/lib/parse.js", - "kind": "require-call", - "original": "./parse" - }, - { - "path": "node_modules/postcss/lib/result.js", - "kind": "require-call", - "original": "./result" - }, - { - "path": "node_modules/postcss/lib/stringify.js", - "kind": "require-call", - "original": "./stringify" - }, - { - "path": "node_modules/postcss/lib/warn-once.js", - "kind": "require-call", - "original": "./warn-once" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/processor.js": { - "bytes": 1738, - "imports": [ - { - "path": "node_modules/postcss/lib/document.js", - "kind": "require-call", - "original": "./document" - }, - { - "path": "node_modules/postcss/lib/lazy-result.js", - "kind": "require-call", - "original": "./lazy-result" - }, - { - "path": "node_modules/postcss/lib/no-work-result.js", - "kind": "require-call", - "original": "./no-work-result" - }, - { - "path": "node_modules/postcss/lib/root.js", - "kind": "require-call", - "original": "./root" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/postcss.js": { - "bytes": 2898, - "imports": [ - { - "path": "node_modules/postcss/lib/at-rule.js", - "kind": "require-call", - "original": "./at-rule" - }, - { - "path": "node_modules/postcss/lib/comment.js", - "kind": "require-call", - "original": "./comment" - }, - { - "path": "node_modules/postcss/lib/container.js", - "kind": "require-call", - "original": "./container" - }, - { - "path": "node_modules/postcss/lib/css-syntax-error.js", - "kind": "require-call", - "original": "./css-syntax-error" - }, - { - "path": "node_modules/postcss/lib/declaration.js", - "kind": "require-call", - "original": "./declaration" - }, - { - "path": "node_modules/postcss/lib/document.js", - "kind": "require-call", - "original": "./document" - }, - { - "path": "node_modules/postcss/lib/fromJSON.js", - "kind": "require-call", - "original": "./fromJSON" - }, - { - "path": "node_modules/postcss/lib/input.js", - "kind": "require-call", - "original": "./input" - }, - { - "path": "node_modules/postcss/lib/lazy-result.js", - "kind": "require-call", - "original": "./lazy-result" - }, - { - "path": "node_modules/postcss/lib/list.js", - "kind": "require-call", - "original": "./list" - }, - { - "path": "node_modules/postcss/lib/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss/lib/parse.js", - "kind": "require-call", - "original": "./parse" - }, - { - "path": "node_modules/postcss/lib/processor.js", - "kind": "require-call", - "original": "./processor" - }, - { - "path": "node_modules/postcss/lib/result.js", - "kind": "require-call", - "original": "./result.js" - }, - { - "path": "node_modules/postcss/lib/root.js", - "kind": "require-call", - "original": "./root" - }, - { - "path": "node_modules/postcss/lib/rule.js", - "kind": "require-call", - "original": "./rule" - }, - { - "path": "node_modules/postcss/lib/stringify.js", - "kind": "require-call", - "original": "./stringify" - }, - { - "path": "node_modules/postcss/lib/warning.js", - "kind": "require-call", - "original": "./warning" - } - ], - "format": "cjs" - }, - "node_modules/postcss/lib/postcss.mjs": { - "bytes": 980, - "imports": [ - { - "path": "node_modules/postcss/lib/postcss.js", - "kind": "import-statement", - "original": "./postcss.js" - } - ], - "format": "esm" - }, - "node_modules/postcss-selector-parser/dist/util/unesc.js": { - "bytes": 2318, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/util/getProp.js": { - "bytes": 437, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/util/ensureObject.js": { - "bytes": 431, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/util/stripComments.js": { - "bytes": 521, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/util/index.js": { - "bytes": 664, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/util/unesc.js", - "kind": "require-call", - "original": "./unesc" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/getProp.js", - "kind": "require-call", - "original": "./getProp" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/ensureObject.js", - "kind": "require-call", - "original": "./ensureObject" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/stripComments.js", - "kind": "require-call", - "original": "./stripComments" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/node.js": { - "bytes": 6690, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/util/index.js", - "kind": "require-call", - "original": "../util" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/types.js": { - "bytes": 849, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/container.js": { - "bytes": 11850, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/root.js": { - "bytes": 2146, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", - "kind": "require-call", - "original": "./container" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/selector.js": { - "bytes": 1007, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", - "kind": "require-call", - "original": "./container" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/cssesc/cssesc.js": { - "bytes": 3514, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/className.js": { - "bytes": 2346, - "imports": [ - { - "path": "node_modules/cssesc/cssesc.js", - "kind": "require-call", - "original": "cssesc" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/index.js", - "kind": "require-call", - "original": "../util" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/comment.js": { - "bytes": 971, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/id.js": { - "bytes": 1086, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/namespace.js": { - "bytes": 3061, - "imports": [ - { - "path": "node_modules/cssesc/cssesc.js", - "kind": "require-call", - "original": "cssesc" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/index.js", - "kind": "require-call", - "original": "../util" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/tag.js": { - "bytes": 977, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", - "kind": "require-call", - "original": "./namespace" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/string.js": { - "bytes": 965, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/pseudo.js": { - "bytes": 1255, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/container.js", - "kind": "require-call", - "original": "./container" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/util-deprecate/browser.js": { - "bytes": 1614, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/attribute.js": { - "bytes": 16847, - "imports": [ - { - "path": "node_modules/cssesc/cssesc.js", - "kind": "require-call", - "original": "cssesc" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/unesc.js", - "kind": "require-call", - "original": "../util/unesc" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", - "kind": "require-call", - "original": "./namespace" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - }, - { - "path": "node_modules/util-deprecate/browser.js", - "kind": "require-call", - "original": "util-deprecate" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/universal.js": { - "bytes": 1036, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/namespace.js", - "kind": "require-call", - "original": "./namespace" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/combinator.js": { - "bytes": 989, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/nesting.js": { - "bytes": 994, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/node.js", - "kind": "require-call", - "original": "./node" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/sortAscending.js": { - "bytes": 207, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/tokenTypes.js": { - "bytes": 2698, - "imports": [], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/tokenize.js": { - "bytes": 8451, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/tokenTypes.js", - "kind": "require-call", - "original": "./tokenTypes" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/parser.js": { - "bytes": 39081, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/root.js", - "kind": "require-call", - "original": "./selectors/root" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/selector.js", - "kind": "require-call", - "original": "./selectors/selector" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/className.js", - "kind": "require-call", - "original": "./selectors/className" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/comment.js", - "kind": "require-call", - "original": "./selectors/comment" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/id.js", - "kind": "require-call", - "original": "./selectors/id" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/tag.js", - "kind": "require-call", - "original": "./selectors/tag" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/string.js", - "kind": "require-call", - "original": "./selectors/string" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/pseudo.js", - "kind": "require-call", - "original": "./selectors/pseudo" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/attribute.js", - "kind": "require-call", - "original": "./selectors/attribute" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/universal.js", - "kind": "require-call", - "original": "./selectors/universal" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/combinator.js", - "kind": "require-call", - "original": "./selectors/combinator" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/nesting.js", - "kind": "require-call", - "original": "./selectors/nesting" - }, - { - "path": "node_modules/postcss-selector-parser/dist/sortAscending.js", - "kind": "require-call", - "original": "./sortAscending" - }, - { - "path": "node_modules/postcss-selector-parser/dist/tokenize.js", - "kind": "require-call", - "original": "./tokenize" - }, - { - "path": "node_modules/postcss-selector-parser/dist/tokenTypes.js", - "kind": "require-call", - "original": "./tokenTypes" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./selectors/types" - }, - { - "path": "node_modules/postcss-selector-parser/dist/util/index.js", - "kind": "require-call", - "original": "./util" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/processor.js": { - "bytes": 5210, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/parser.js", - "kind": "require-call", - "original": "./parser" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/constructors.js": { - "bytes": 2371, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/attribute.js", - "kind": "require-call", - "original": "./attribute" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/className.js", - "kind": "require-call", - "original": "./className" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/combinator.js", - "kind": "require-call", - "original": "./combinator" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/comment.js", - "kind": "require-call", - "original": "./comment" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/id.js", - "kind": "require-call", - "original": "./id" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/nesting.js", - "kind": "require-call", - "original": "./nesting" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/pseudo.js", - "kind": "require-call", - "original": "./pseudo" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/root.js", - "kind": "require-call", - "original": "./root" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/selector.js", - "kind": "require-call", - "original": "./selector" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/string.js", - "kind": "require-call", - "original": "./string" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/tag.js", - "kind": "require-call", - "original": "./tag" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/universal.js", - "kind": "require-call", - "original": "./universal" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/guards.js": { - "bytes": 2691, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/selectors/index.js": { - "bytes": 774, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/selectors/types.js", - "kind": "require-call", - "original": "./types" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/constructors.js", - "kind": "require-call", - "original": "./constructors" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/guards.js", - "kind": "require-call", - "original": "./guards" - } - ], - "format": "cjs" - }, - "node_modules/postcss-selector-parser/dist/index.js": { - "bytes": 1684, - "imports": [ - { - "path": "node_modules/postcss-selector-parser/dist/processor.js", - "kind": "require-call", - "original": "./processor" - }, - { - "path": "node_modules/postcss-selector-parser/dist/selectors/index.js", - "kind": "require-call", - "original": "./selectors" - } - ], - "format": "cjs" - }, - "node_modules/postcss-nested/index.js": { - "bytes": 9058, - "imports": [ - { - "path": "node_modules/postcss/lib/postcss.js", - "kind": "require-call", - "original": "postcss" - }, - { - "path": "node_modules/postcss-selector-parser/dist/index.js", - "kind": "require-call", - "original": "postcss-selector-parser" - } - ], - "format": "cjs" - }, - "node_modules/@ctrl/tinycolor/dist/module/util.js": { - "bytes": 2180, - "imports": [], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/conversion.js": { - "bytes": 7419, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", - "kind": "import-statement", - "original": "./util.js" - } - ], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js": { - "bytes": 3964, - "imports": [], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/format-input.js": { - "bytes": 7441, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", - "kind": "import-statement", - "original": "./conversion.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", - "kind": "import-statement", - "original": "./css-color-names.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", - "kind": "import-statement", - "original": "./util.js" - } - ], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/index.js": { - "bytes": 16270, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", - "kind": "import-statement", - "original": "./conversion.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", - "kind": "import-statement", - "original": "./css-color-names.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/format-input.js", - "kind": "import-statement", - "original": "./format-input.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", - "kind": "import-statement", - "original": "./util.js" - } - ], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/readability.js": { - "bytes": 3217, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", - "kind": "import-statement", - "original": "./index.js" - } - ], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/to-ms-filter.js": { - "bytes": 752, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", - "kind": "import-statement", - "original": "./conversion.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", - "kind": "import-statement", - "original": "./index.js" - } - ], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/from-ratio.js": { - "bytes": 725, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", - "kind": "import-statement", - "original": "./index.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/util.js", - "kind": "import-statement", - "original": "./util.js" - } - ], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/random.js": { - "bytes": 7266, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", - "kind": "import-statement", - "original": "./index.js" - } - ], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/interfaces.js": { - "bytes": 11, - "imports": [], - "format": "esm" - }, - "node_modules/@ctrl/tinycolor/dist/module/public_api.js": { - "bytes": 298, - "imports": [ - { - "path": "node_modules/@ctrl/tinycolor/dist/module/index.js", - "kind": "import-statement", - "original": "./index.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js", - "kind": "import-statement", - "original": "./css-color-names.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/readability.js", - "kind": "import-statement", - "original": "./readability.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/to-ms-filter.js", - "kind": "import-statement", - "original": "./to-ms-filter.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/from-ratio.js", - "kind": "import-statement", - "original": "./from-ratio.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/format-input.js", - "kind": "import-statement", - "original": "./format-input.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/random.js", - "kind": "import-statement", - "original": "./random.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/interfaces.js", - "kind": "import-statement", - "original": "./interfaces.js" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/conversion.js", - "kind": "import-statement", - "original": "./conversion.js" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/core/dist/index.js": { - "bytes": 158236, - "imports": [ - { - "path": "node_modules/hast-util-to-html/index.js", - "kind": "import-statement", - "original": "hast-util-to-html" - }, - { - "path": "node_modules/hast-util-to-text/index.js", - "kind": "import-statement", - "original": "hast-util-to-text" - }, - { - "path": "node_modules/hast-util-select/index.js", - "kind": "import-statement", - "original": "hast-util-select" - }, - { - "path": "node_modules/unist-util-visit/index.js", - "kind": "import-statement", - "original": "unist-util-visit" - }, - { - "path": "node_modules/unist-util-visit-parents/index.js", - "kind": "import-statement", - "original": "unist-util-visit-parents" - }, - { - "path": "node_modules/hastscript/index.js", - "kind": "import-statement", - "original": "hastscript" - }, - { - "path": "node_modules/postcss/lib/postcss.mjs", - "kind": "import-statement", - "original": "postcss" - }, - { - "path": "node_modules/postcss/lib/postcss.mjs", - "kind": "import-statement", - "original": "postcss" - }, - { - "path": "node_modules/postcss-nested/index.js", - "kind": "import-statement", - "original": "postcss-nested" - }, - { - "path": "node_modules/@ctrl/tinycolor/dist/module/public_api.js", - "kind": "import-statement", - "original": "@ctrl/tinycolor" - }, - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "src/themes/ObsidianTheme.ts": { - "bytes": 18247, - "imports": [ - { - "path": "shiki", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "src/themes/ThemeMapper.ts": { - "bytes": 3151, - "imports": [ - { - "path": "node_modules/shiki/dist/index.mjs", - "kind": "import-statement", - "original": "shiki" - }, - { - "path": "src/themes/ObsidianTheme.ts", - "kind": "import-statement", - "original": "src/themes/ObsidianTheme" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/abap.mjs": { - "bytes": 19521, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/actionscript-3.mjs": { - "bytes": 16165, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ada.mjs": { - "bytes": 55035, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs": { - "bytes": 208066, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs": { - "bytes": 56971, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs": { - "bytes": 66052, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs": { - "bytes": 15146, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs": { - "bytes": 1182, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs": { - "bytes": 728, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs": { - "bytes": 1660, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs", - "kind": "import-statement", - "original": "./angular-template.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-html.mjs": { - "bytes": 1437, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", - "kind": "import-statement", - "original": "./angular-let-declaration.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs", - "kind": "import-statement", - "original": "./angular-template.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", - "kind": "import-statement", - "original": "./angular-template-blocks.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs": { - "bytes": 31296, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-style.mjs": { - "bytes": 1529, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-template.mjs": { - "bytes": 1387, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-html.mjs", - "kind": "import-statement", - "original": "./angular-html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs", - "kind": "import-statement", - "original": "./angular-template.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-ts.mjs": { - "bytes": 219312, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs", - "kind": "import-statement", - "original": "./angular-expression.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-style.mjs", - "kind": "import-statement", - "original": "./angular-inline-style.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-template.mjs", - "kind": "import-statement", - "original": "./angular-inline-template.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs", - "kind": "import-statement", - "original": "./angular-let-declaration.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs", - "kind": "import-statement", - "original": "./angular-template.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs", - "kind": "import-statement", - "original": "./angular-template-blocks.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apache.mjs": { - "bytes": 14099, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apex.mjs": { - "bytes": 51893, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs": { - "bytes": 30651, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs": { - "bytes": 6097, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs": { - "bytes": 3293, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apl.mjs": { - "bytes": 26881, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/applescript.mjs": { - "bytes": 33337, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ara.mjs": { - "bytes": 8023, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asciidoc.mjs": { - "bytes": 104840, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asm.mjs": { - "bytes": 43968, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs": { - "bytes": 218617, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs": { - "bytes": 7212, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/astro.mjs": { - "bytes": 25554, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs", - "kind": "import-statement", - "original": "./postcss.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/awk.mjs": { - "bytes": 6169, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ballerina.mjs": { - "bytes": 67536, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bat.mjs": { - "bytes": 14258, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/beancount.mjs": { - "bytes": 12128, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/berry.mjs": { - "bytes": 2728, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bibtex.mjs": { - "bytes": 5627, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bicep.mjs": { - "bytes": 4884, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs": { - "bytes": 25420, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/blade.mjs": { - "bytes": 114868, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sdbl.mjs": { - "bytes": 5361, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bsl.mjs": { - "bytes": 39207, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sdbl.mjs", - "kind": "import-statement", - "original": "./sdbl.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs": { - "bytes": 79974, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cadence.mjs": { - "bytes": 12314, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs": { - "bytes": 80837, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cairo.mjs": { - "bytes": 3334, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clarity.mjs": { - "bytes": 16103, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clojure.mjs": { - "bytes": 7825, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cmake.mjs": { - "bytes": 10827, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cobol.mjs": { - "bytes": 42728, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs", - "kind": "import-statement", - "original": "./java.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeowners.mjs": { - "bytes": 621, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeql.mjs": { - "bytes": 36275, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coffee.mjs": { - "bytes": 30030, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/common-lisp.mjs": { - "bytes": 29463, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coq.mjs": { - "bytes": 6487, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs": { - "bytes": 8919, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs": { - "bytes": 4057, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp-macro.mjs": { - "bytes": 265494, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs": { - "bytes": 474557, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp-macro.mjs", - "kind": "import-statement", - "original": "./cpp-macro.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs", - "kind": "import-statement", - "original": "./regexp.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs": { - "bytes": 46659, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/crystal.mjs": { - "bytes": 37165, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csharp.mjs": { - "bytes": 96478, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csv.mjs": { - "bytes": 1373, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cue.mjs": { - "bytes": 19327, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cypher.mjs": { - "bytes": 7434, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/d.mjs": { - "bytes": 47972, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dart.mjs": { - "bytes": 8822, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dax.mjs": { - "bytes": 5874, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/desktop.mjs": { - "bytes": 2215, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/diff.mjs": { - "bytes": 2940, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/docker.mjs": { - "bytes": 1954, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dotenv.mjs": { - "bytes": 1930, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dream-maker.mjs": { - "bytes": 11752, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs": { - "bytes": 994, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/edge.mjs": { - "bytes": 2597, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elixir.mjs": { - "bytes": 20159, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elm.mjs": { - "bytes": 12670, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/emacs-lisp.mjs": { - "bytes": 807148, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haml.mjs": { - "bytes": 9553, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsx.mjs": { - "bytes": 211039, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsx.mjs": { - "bytes": 208783, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs": { - "bytes": 20328, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsx.mjs", - "kind": "import-statement", - "original": "./jsx.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsx.mjs", - "kind": "import-statement", - "original": "./tsx.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs": { - "bytes": 17279, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs": { - "bytes": 11868, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs": { - "bytes": 57017, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haml.mjs", - "kind": "import-statement", - "original": "./haml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs", - "kind": "import-statement", - "original": "./graphql.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs", - "kind": "import-statement", - "original": "./cpp.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs", - "kind": "import-statement", - "original": "./lua.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erb.mjs": { - "bytes": 2401, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erlang.mjs": { - "bytes": 40149, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fennel.mjs": { - "bytes": 5233, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fish.mjs": { - "bytes": 5775, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fluent.mjs": { - "bytes": 4018, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs": { - "bytes": 108403, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs": { - "bytes": 1276, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs", - "kind": "import-statement", - "original": "./fortran-free-form.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs": { - "bytes": 62632, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fsharp.mjs": { - "bytes": 28796, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdshader.mjs": { - "bytes": 7090, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdscript.mjs": { - "bytes": 20608, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdresource.mjs": { - "bytes": 6031, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdshader.mjs", - "kind": "import-statement", - "original": "./gdshader.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdscript.mjs", - "kind": "import-statement", - "original": "./gdscript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/genie.mjs": { - "bytes": 3714, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gherkin.mjs": { - "bytes": 12805, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-commit.mjs": { - "bytes": 1716, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/diff.mjs", - "kind": "import-statement", - "original": "./diff.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-rebase.mjs": { - "bytes": 1099, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gleam.mjs": { - "bytes": 3006, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-js.mjs": { - "bytes": 23111, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-ts.mjs": { - "bytes": 23111, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gnuplot.mjs": { - "bytes": 16390, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/go.mjs": { - "bytes": 57527, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/groovy.mjs": { - "bytes": 22001, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hack.mjs": { - "bytes": 89337, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/handlebars.mjs": { - "bytes": 13767, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haskell.mjs": { - "bytes": 47343, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haxe.mjs": { - "bytes": 39459, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hcl.mjs": { - "bytes": 13419, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hjson.mjs": { - "bytes": 13752, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hlsl.mjs": { - "bytes": 8037, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/http.mjs": { - "bytes": 5066, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs", - "kind": "import-statement", - "original": "./graphql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hxml.mjs": { - "bytes": 1949, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haxe.mjs", - "kind": "import-statement", - "original": "./haxe.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hy.mjs": { - "bytes": 3011, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/imba.mjs": { - "bytes": 58375, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ini.mjs": { - "bytes": 1733, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja-html.mjs": { - "bytes": 657, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja.mjs": { - "bytes": 5722, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja-html.mjs", - "kind": "import-statement", - "original": "./jinja-html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jison.mjs": { - "bytes": 10964, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json5.mjs": { - "bytes": 3987, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonc.mjs": { - "bytes": 3578, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonl.mjs": { - "bytes": 3480, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonnet.mjs": { - "bytes": 4014, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jssm.mjs": { - "bytes": 3354, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs": { - "bytes": 37941, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/julia.mjs": { - "bytes": 37572, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs", - "kind": "import-statement", - "original": "./cpp.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs", - "kind": "import-statement", - "original": "./r.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kotlin.mjs": { - "bytes": 9850, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kusto.mjs": { - "bytes": 21913, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tex.mjs": { - "bytes": 9993, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs", - "kind": "import-statement", - "original": "./r.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/latex.mjs": { - "bytes": 65035, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tex.mjs", - "kind": "import-statement", - "original": "./tex.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lean.mjs": { - "bytes": 4753, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/less.mjs": { - "bytes": 112003, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/liquid.mjs": { - "bytes": 19029, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/log.mjs": { - "bytes": 3232, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/logo.mjs": { - "bytes": 3316, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/luau.mjs": { - "bytes": 14253, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/make.mjs": { - "bytes": 10046, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/marko.mjs": { - "bytes": 21686, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/less.mjs", - "kind": "import-statement", - "original": "./less.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/matlab.mjs": { - "bytes": 22093, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdc.mjs": { - "bytes": 20563, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdx.mjs": { - "bytes": 150540, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mermaid.mjs": { - "bytes": 36977, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mipsasm.mjs": { - "bytes": 3657, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mojo.mjs": { - "bytes": 79768, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/move.mjs": { - "bytes": 23096, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/narrat.mjs": { - "bytes": 4100, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nextflow.mjs": { - "bytes": 4448, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nginx.mjs": { - "bytes": 39615, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs", - "kind": "import-statement", - "original": "./lua.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nim.mjs": { - "bytes": 26506, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", - "kind": "import-statement", - "original": "./c.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs", - "kind": "import-statement", - "original": "./markdown.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nix.mjs": { - "bytes": 17468, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nushell.mjs": { - "bytes": 21589, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-c.mjs": { - "bytes": 114259, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-cpp.mjs": { - "bytes": 188038, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ocaml.mjs": { - "bytes": 70662, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pascal.mjs": { - "bytes": 4474, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/perl.mjs": { - "bytes": 49689, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/php.mjs": { - "bytes": 120771, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/plsql.mjs": { - "bytes": 9054, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/po.mjs": { - "bytes": 3832, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/polar.mjs": { - "bytes": 5338, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powerquery.mjs": { - "bytes": 6566, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powershell.mjs": { - "bytes": 24098, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prisma.mjs": { - "bytes": 7172, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prolog.mjs": { - "bytes": 11937, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/proto.mjs": { - "bytes": 7465, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pug.mjs": { - "bytes": 16735, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/puppet.mjs": { - "bytes": 13094, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/purescript.mjs": { - "bytes": 18560, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qml.mjs": { - "bytes": 6151, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qmldir.mjs": { - "bytes": 1128, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qss.mjs": { - "bytes": 8290, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/racket.mjs": { - "bytes": 100260, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/raku.mjs": { - "bytes": 11201, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/razor.mjs": { - "bytes": 28751, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csharp.mjs", - "kind": "import-statement", - "original": "./csharp.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/reg.mjs": { - "bytes": 2637, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rel.mjs": { - "bytes": 3802, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/riscv.mjs": { - "bytes": 8288, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rst.mjs": { - "bytes": 11570, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs", - "kind": "import-statement", - "original": "./cpp.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "import-statement", - "original": "./yaml.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cmake.mjs", - "kind": "import-statement", - "original": "./cmake.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rust.mjs": { - "bytes": 19766, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sas.mjs": { - "bytes": 10338, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sass.mjs": { - "bytes": 10519, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scala.mjs": { - "bytes": 32919, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scheme.mjs": { - "bytes": 9416, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shaderlab.mjs": { - "bytes": 6659, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hlsl.mjs", - "kind": "import-statement", - "original": "./hlsl.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellsession.mjs": { - "bytes": 800, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "import-statement", - "original": "./shellscript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/smalltalk.mjs": { - "bytes": 4638, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/solidity.mjs": { - "bytes": 18199, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/soy.mjs": { - "bytes": 7916, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/turtle.mjs": { - "bytes": 4178, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sparql.mjs": { - "bytes": 1607, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/turtle.mjs", - "kind": "import-statement", - "original": "./turtle.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/splunk.mjs": { - "bytes": 4139, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ssh-config.mjs": { - "bytes": 3772, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stata.mjs": { - "bytes": 66024, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stylus.mjs": { - "bytes": 33681, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/svelte.mjs": { - "bytes": 18929, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs", - "kind": "import-statement", - "original": "./postcss.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/swift.mjs": { - "bytes": 98166, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/system-verilog.mjs": { - "bytes": 29109, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/systemd.mjs": { - "bytes": 8671, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/talonscript.mjs": { - "bytes": 7607, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tasl.mjs": { - "bytes": 3880, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tcl.mjs": { - "bytes": 5544, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/templ.mjs": { - "bytes": 25966, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/go.mjs", - "kind": "import-statement", - "original": "./go.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/terraform.mjs": { - "bytes": 14868, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/toml.mjs": { - "bytes": 7303, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-css.mjs": { - "bytes": 2227, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-glsl.mjs": { - "bytes": 2110, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "import-statement", - "original": "./glsl.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-html.mjs": { - "bytes": 2461, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-sql.mjs": { - "bytes": 1947, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "import-statement", - "original": "./sql.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-xml.mjs": { - "bytes": 1409, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ts-tags.mjs": { - "bytes": 690, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-css.mjs", - "kind": "import-statement", - "original": "./es-tag-css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-glsl.mjs", - "kind": "import-statement", - "original": "./es-tag-glsl.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-html.mjs", - "kind": "import-statement", - "original": "./es-tag-html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-sql.mjs", - "kind": "import-statement", - "original": "./es-tag-sql.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-xml.mjs", - "kind": "import-statement", - "original": "./es-tag-xml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsv.mjs": { - "bytes": 831, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/twig.mjs": { - "bytes": 24896, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs", - "kind": "import-statement", - "original": "./scss.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/php.mjs", - "kind": "import-statement", - "original": "./php.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", - "kind": "import-statement", - "original": "./python.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs", - "kind": "import-statement", - "original": "./ruby.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typespec.mjs": { - "bytes": 31064, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typst.mjs": { - "bytes": 9596, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/v.mjs": { - "bytes": 15390, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vala.mjs": { - "bytes": 3744, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vb.mjs": { - "bytes": 6704, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/verilog.mjs": { - "bytes": 6450, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vhdl.mjs": { - "bytes": 26207, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/viml.mjs": { - "bytes": 21822, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown-vue.mjs": { - "bytes": 850, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-directives.mjs": { - "bytes": 464, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-interpolations.mjs": { - "bytes": 447, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs": { - "bytes": 1052, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue.mjs": { - "bytes": 21764, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "import-statement", - "original": "./html.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "import-statement", - "original": "./css.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "import-statement", - "original": "./typescript.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", - "kind": "import-statement", - "original": "./json.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "import-statement", - "original": "./html-derivative.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown-vue.mjs", - "kind": "import-statement", - "original": "./markdown-vue.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-directives.mjs", - "kind": "import-statement", - "original": "./vue-directives.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-interpolations.mjs", - "kind": "import-statement", - "original": "./vue-interpolations.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs", - "kind": "import-statement", - "original": "./vue-sfc-style-variable-injection.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-html.mjs": { - "bytes": 9567, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue.mjs", - "kind": "import-statement", - "original": "./vue.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "import-statement", - "original": "./javascript.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vyper.mjs": { - "bytes": 85722, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wasm.mjs": { - "bytes": 17493, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wenyan.mjs": { - "bytes": 2461, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wgsl.mjs": { - "bytes": 7252, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wikitext.mjs": { - "bytes": 63046, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wolfram.mjs": { - "bytes": 273146, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xsl.mjs": { - "bytes": 1529, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "import-statement", - "original": "./xml.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zenscript.mjs": { - "bytes": 4886, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zig.mjs": { - "bytes": 6070, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs": { - "bytes": 25725, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/abap.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/abap" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/actionscript-3.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/actionscript-3" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ada.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ada" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-html.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/angular-html" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-ts.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/angular-ts" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apache.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/apache" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apex.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/apex" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/apl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/applescript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/applescript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ara.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ara" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asciidoc.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/asciidoc" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/asm" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/astro.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/astro" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/awk.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/awk" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ballerina.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ballerina" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bat.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/bat" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/beancount.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/beancount" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/berry.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/berry" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bibtex.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/bibtex" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bicep.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/bicep" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/blade.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/blade" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/bsl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/c" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cadence.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cadence" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cairo.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cairo" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clarity.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/clarity" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clojure.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/clojure" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cmake.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cmake" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cobol.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cobol" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeowners.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/codeowners" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/codeql" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coffee.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/coffee" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/common-lisp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/common-lisp" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coq.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/coq" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cpp" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/crystal.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/crystal" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csharp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/csharp" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/css" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csv.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/csv" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cue.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cue" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cypher.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/cypher" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/d.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/d" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dart.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/dart" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dax.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/dax" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/desktop.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/desktop" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/diff.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/diff" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/docker.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/docker" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dotenv.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/dotenv" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dream-maker.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/dream-maker" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/edge.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/edge" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elixir.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/elixir" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/elm" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/emacs-lisp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/emacs-lisp" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erb.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/erb" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erlang.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/erlang" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fennel.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fennel" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fish.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fish" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fluent.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fluent" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fortran-fixed-form" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fortran-free-form" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fsharp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/fsharp" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdresource.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gdresource" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdscript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gdscript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdshader.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gdshader" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/genie.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/genie" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gherkin.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gherkin" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-commit.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/git-commit" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-rebase.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/git-rebase" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gleam.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gleam" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-js.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/glimmer-js" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-ts.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/glimmer-ts" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/glsl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gnuplot.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/gnuplot" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/go.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/go" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/graphql" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/groovy.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/groovy" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hack.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hack" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/haml" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/handlebars.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/handlebars" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haskell.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/haskell" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haxe.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/haxe" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hcl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hcl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hjson.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hjson" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hlsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hlsl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/html" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/html-derivative" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/http.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/http" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hxml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hxml" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hy.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/hy" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/imba.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/imba" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ini.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ini" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/java" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/javascript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jinja" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jison.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jison" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/json" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json5.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/json5" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonc.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jsonc" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jsonl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonnet.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jsonnet" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jssm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jssm" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsx.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/jsx" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/julia.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/julia" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kotlin.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/kotlin" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kusto.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/kusto" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/latex.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/latex" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lean.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/lean" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/less.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/less" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/liquid.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/liquid" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/log.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/log" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/logo.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/logo" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/lua" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/luau.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/luau" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/make.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/make" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/markdown" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/marko.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/marko" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/matlab.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/matlab" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdc.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mdc" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdx.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mdx" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mermaid.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mermaid" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mipsasm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mipsasm" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mojo.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/mojo" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/move.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/move" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/narrat.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/narrat" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nextflow.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nextflow" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nginx.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nginx" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nim.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nim" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nix.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nix" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nushell.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/nushell" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-c.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/objective-c" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-cpp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/objective-cpp" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ocaml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ocaml" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pascal.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/pascal" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/perl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/perl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/php.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/php" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/plsql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/plsql" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/po.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/po" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/polar.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/polar" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/postcss" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powerquery.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/powerquery" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powershell.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/powershell" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prisma.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/prisma" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prolog.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/prolog" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/proto.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/proto" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pug.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/pug" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/puppet.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/puppet" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/purescript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/purescript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/python" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/qml" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qmldir.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/qmldir" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qss.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/qss" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/r" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/racket.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/racket" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/raku.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/raku" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/razor.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/razor" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/reg.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/reg" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/regexp" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rel.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/rel" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/riscv.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/riscv" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rst.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/rst" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ruby" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rust.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/rust" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sas.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sas" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sass.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sass" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scala.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/scala" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scheme.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/scheme" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/scss" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sdbl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sdbl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shaderlab.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/shaderlab" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/shellscript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellsession.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/shellsession" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/smalltalk.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/smalltalk" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/solidity.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/solidity" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/soy.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/soy" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sparql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sparql" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/splunk.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/splunk" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/sql" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ssh-config.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ssh-config" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stata.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/stata" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stylus.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/stylus" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/svelte.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/svelte" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/swift.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/swift" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/system-verilog.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/system-verilog" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/systemd.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/systemd" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/talonscript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/talonscript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tasl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tasl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tcl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tcl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/templ.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/templ" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/terraform.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/terraform" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tex.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tex" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/toml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/toml" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ts-tags.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/ts-tags" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsv.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tsv" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsx.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/tsx" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/turtle.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/turtle" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/twig.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/twig" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/typescript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typespec.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/typespec" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typst.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/typst" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/v.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/v" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vala.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vala" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vb.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vb" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/verilog.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/verilog" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vhdl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vhdl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/viml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/viml" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vue" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-html.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vue-html" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vyper.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/vyper" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wasm.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wasm" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wenyan.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wenyan" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wgsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wgsl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wikitext.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wikitext" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wolfram.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/wolfram" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/xml" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xsl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/xsl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/yaml" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zenscript.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/zenscript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zig.mjs", - "kind": "dynamic-import", - "original": "@shikijs/langs/zig" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/andromeeda.mjs": { - "bytes": 9740, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/aurora-x.mjs": { - "bytes": 14878, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/ayu-dark.mjs": { - "bytes": 16638, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs": { - "bytes": 50276, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-latte.mjs": { - "bytes": 50273, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs": { - "bytes": 50284, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs": { - "bytes": 50272, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dark-plus.mjs": { - "bytes": 10119, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula.mjs": { - "bytes": 23122, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula-soft.mjs": { - "bytes": 23137, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-dark.mjs": { - "bytes": 58495, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-light.mjs": { - "bytes": 58499, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark.mjs": { - "bytes": 12745, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-default.mjs": { - "bytes": 16087, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs": { - "bytes": 16084, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs": { - "bytes": 16269, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light.mjs": { - "bytes": 12509, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-default.mjs": { - "bytes": 15775, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs": { - "bytes": 15912, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/houston.mjs": { - "bytes": 38990, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs": { - "bytes": 18759, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs": { - "bytes": 18757, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-wave.mjs": { - "bytes": 18753, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/laserwave.mjs": { - "bytes": 12481, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/light-plus.mjs": { - "bytes": 11014, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme.mjs": { - "bytes": 20362, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-darker.mjs": { - "bytes": 20383, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-lighter.mjs": { - "bytes": 20389, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-ocean.mjs": { - "bytes": 20382, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-palenight.mjs": { - "bytes": 20392, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-dark.mjs": { - "bytes": 6980, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-light.mjs": { - "bytes": 7739, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/monokai.mjs": { - "bytes": 8870, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/night-owl.mjs": { - "bytes": 32203, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/nord.mjs": { - "bytes": 29510, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-dark-pro.mjs": { - "bytes": 37219, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-light.mjs": { - "bytes": 28042, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/plastic.mjs": { - "bytes": 10273, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/poimandres.mjs": { - "bytes": 36593, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/red.mjs": { - "bytes": 7048, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine.mjs": { - "bytes": 24017, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs": { - "bytes": 24033, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-moon.mjs": { - "bytes": 24032, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-dark.mjs": { - "bytes": 10164, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-ochin.mjs": { - "bytes": 10571, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/snazzy-light.mjs": { - "bytes": 23098, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-dark.mjs": { - "bytes": 7707, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-light.mjs": { - "bytes": 7310, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/synthwave-84.mjs": { - "bytes": 15637, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/tokyo-night.mjs": { - "bytes": 37393, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vesper.mjs": { - "bytes": 13732, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-black.mjs": { - "bytes": 15243, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-dark.mjs": { - "bytes": 15324, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-light.mjs": { - "bytes": 15174, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs": { - "bytes": 8402, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/andromeeda.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/andromeeda" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/aurora-x.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/aurora-x" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/ayu-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/ayu-dark" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/catppuccin-frappe" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-latte.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/catppuccin-latte" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/catppuccin-macchiato" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/catppuccin-mocha" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dark-plus.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/dark-plus" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/dracula" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula-soft.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/dracula-soft" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/everforest-dark" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/everforest-light" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-dark" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-default.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-dark-default" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-dark-dimmed" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-dark-high-contrast" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-light" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-default.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-light-default" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/github-light-high-contrast" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/houston.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/houston" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/kanagawa-dragon" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/kanagawa-lotus" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-wave.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/kanagawa-wave" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/laserwave.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/laserwave" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/light-plus.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/light-plus" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-darker.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme-darker" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-lighter.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme-lighter" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-ocean.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme-ocean" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-palenight.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/material-theme-palenight" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/min-dark" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/min-light" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/monokai.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/monokai" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/night-owl.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/night-owl" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/nord.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/nord" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-dark-pro.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/one-dark-pro" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/one-light" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/plastic.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/plastic" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/poimandres.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/poimandres" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/red.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/red" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/rose-pine" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/rose-pine-dawn" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-moon.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/rose-pine-moon" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/slack-dark" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-ochin.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/slack-ochin" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/snazzy-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/snazzy-light" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/solarized-dark" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/solarized-light" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/synthwave-84.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/synthwave-84" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/tokyo-night.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/tokyo-night" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vesper.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/vesper" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-black.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/vitesse-black" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-dark.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/vitesse-dark" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-light.mjs", - "kind": "dynamic-import", - "original": "@shikijs/themes/vitesse-light" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types/dist/index.mjs": { - "bytes": 138, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs": { - "bytes": 16099, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs": { - "bytes": 579, - "imports": [], - "format": "esm" - }, - "node_modules/emoji-regex-xs/index.mjs": { - "bytes": 327, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/subclass.js": { - "bytes": 4753, - "imports": [ - { - "path": "node_modules/regex-utilities/src/index.js", - "kind": "import-statement", - "original": "regex-utilities" - }, - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/utils-internals.js": { - "bytes": 449, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/atomic.js": { - "bytes": 6634, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/subclass.js", - "kind": "import-statement", - "original": "./subclass.js" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/utils-internals.js", - "kind": "import-statement", - "original": "./utils-internals.js" - }, - { - "path": "node_modules/regex-utilities/src/index.js", - "kind": "import-statement", - "original": "regex-utilities" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js": { - "bytes": 116, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/atomic.js", - "kind": "import-statement", - "original": "./atomic.js" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/subclass.js", - "kind": "import-statement", - "original": "./subclass.js" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/regex-recursion/src/index.js": { - "bytes": 8822, - "imports": [ - { - "path": "node_modules/regex-utilities/src/index.js", - "kind": "import-statement", - "original": "regex-utilities" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js", - "kind": "import-statement", - "original": "regex/internals" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/oniguruma-to-es/dist/esm/index.js": { - "bytes": 97517, - "imports": [ - { - "path": "node_modules/emoji-regex-xs/index.mjs", - "kind": "import-statement", - "original": "emoji-regex-xs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js", - "kind": "import-statement", - "original": "regex/internals" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js", - "kind": "import-statement", - "original": "regex/internals" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex/src/internals.js", - "kind": "import-statement", - "original": "regex/internals" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/regex-recursion/src/index.js", - "kind": "import-statement", - "original": "regex-recursion" - }, - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs": { - "bytes": 2324, - "imports": [ - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs": { - "bytes": 1586, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/oniguruma-to-es/dist/esm/index.js", - "kind": "import-statement", - "original": "oniguruma-to-es" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", - "kind": "import-statement", - "original": "./shared/engine-javascript.hzpS1_41.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs": { - "bytes": 521, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", - "kind": "import-statement", - "original": "./shared/engine-javascript.hzpS1_41.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/index.mjs": { - "bytes": 273, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/engine-compile.mjs", - "kind": "import-statement", - "original": "./engine-compile.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/engine-raw.mjs", - "kind": "import-statement", - "original": "./engine-raw.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/shared/engine-javascript.hzpS1_41.mjs", - "kind": "import-statement", - "original": "./shared/engine-javascript.hzpS1_41.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/oniguruma-to-es/dist/esm/index.js", - "kind": "import-statement", - "original": "oniguruma-to-es" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs": { - "bytes": 72833, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/types" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/types" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs", - "kind": "import-statement", - "original": "./shared/core.Bn_XU0Iv.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs", - "kind": "import-statement", - "original": "./shared/core.Bn_XU0Iv.mjs" - }, - { - "path": "node_modules/@shikijs/vscode-textmate/dist/index.js", - "kind": "import-statement", - "original": "@shikijs/vscode-textmate" - }, - { - "path": "node_modules/@shikijs/vscode-textmate/dist/index.js", - "kind": "import-statement", - "original": "@shikijs/vscode-textmate" - }, - { - "path": "node_modules/hast-util-to-html/index.js", - "kind": "import-statement", - "original": "hast-util-to-html" - }, - { - "path": "node_modules/hast-util-to-html/index.js", - "kind": "import-statement", - "original": "hast-util-to-html" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-javascript" - }, - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs": { - "bytes": 622442, - "imports": [], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm.mjs": { - "bytes": 122, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma/wasm-inlined" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma/wasm-inlined" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm-dynamic-K7LwWlz7.js": { - "bytes": 281, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/core" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm.mjs", - "kind": "dynamic-import", - "original": "shiki/wasm" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/bundle-full.mjs": { - "bytes": 1310, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs", - "kind": "import-statement", - "original": "./langs.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs", - "kind": "import-statement", - "original": "./langs.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs", - "kind": "import-statement", - "original": "./themes.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs", - "kind": "import-statement", - "original": "./themes.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm-dynamic-K7LwWlz7.js", - "kind": "import-statement", - "original": "./wasm-dynamic-K7LwWlz7.js" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/core" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/core" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm.mjs", - "kind": "dynamic-import", - "original": "shiki/wasm" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/index.mjs": { - "bytes": 660, - "imports": [ - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/bundle-full.mjs", - "kind": "import-statement", - "original": "./bundle-full.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-javascript" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/engine-oniguruma" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm-dynamic-K7LwWlz7.js", - "kind": "import-statement", - "original": "./wasm-dynamic-K7LwWlz7.js" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/core" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs", - "kind": "import-statement", - "original": "./langs.mjs" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs", - "kind": "import-statement", - "original": "./themes.mjs" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-shiki/dist/index.js": { - "bytes": 17949, - "imports": [ - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/index.mjs", - "kind": "import-statement", - "original": "shiki" - }, - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/index.mjs", - "kind": "import-statement", - "original": "shiki" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/core/dist/hast.js": { - "bytes": 3266, - "imports": [ - { - "path": "node_modules/hast-util-to-html/index.js", - "kind": "import-statement", - "original": "hast-util-to-html" - }, - { - "path": "node_modules/hast-util-to-text/index.js", - "kind": "import-statement", - "original": "hast-util-to-text" - }, - { - "path": "node_modules/hast-util-select/index.js", - "kind": "import-statement", - "original": "hast-util-select" - }, - { - "path": "node_modules/unist-util-visit/index.js", - "kind": "import-statement", - "original": "unist-util-visit" - }, - { - "path": "node_modules/unist-util-visit-parents/index.js", - "kind": "import-statement", - "original": "unist-util-visit-parents" - }, - { - "path": "node_modules/hastscript/index.js", - "kind": "import-statement", - "original": "hastscript" - }, - { - "path": "node_modules/postcss/lib/postcss.mjs", - "kind": "import-statement", - "original": "postcss" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js": { - "bytes": 8564, - "imports": [ - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/core/dist/hast.js", - "kind": "import-statement", - "original": "@expressive-code/core/hast" - }, - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/core/dist/hast.js", - "kind": "import-statement", - "original": "@expressive-code/core/hast" - }, - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-text-markers/dist/index.js": { - "bytes": 22739, - "imports": [ - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/core/dist/hast.js", - "kind": "import-statement", - "original": "@expressive-code/core/hast" - }, - { - "path": "", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-line-numbers/dist/index.js": { - "bytes": 2112, - "imports": [ - { - "path": "node_modules/@expressive-code/core/dist/hast.js", - "kind": "import-statement", - "original": "@expressive-code/core/hast" - }, - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - } - ], - "format": "esm" - }, - "node_modules/@expressive-code/plugin-frames/dist/index.js": { - "bytes": 23440, - "imports": [ - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/@expressive-code/core/dist/hast.js", - "kind": "import-statement", - "original": "@expressive-code/core/hast" - }, - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - } - ], - "format": "esm" - }, - "src/themes/ECTheme.ts": { - "bytes": 5236, - "imports": [ - { - "path": "@expressive-code/core", - "kind": "import-statement", - "external": true - }, - { - "path": "src/settings/Settings", - "kind": "import-statement", - "external": true - } - ], - "format": "esm" - }, - "src/Highlighter.ts": { - "bytes": 8799, - "imports": [ - { - "path": "node_modules/@expressive-code/core/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/core" - }, - { - "path": "node_modules/shiki/dist/index.mjs", - "kind": "import-statement", - "original": "shiki" - }, - { - "path": "@shikijs/transformers", - "kind": "import-statement", - "external": true - }, - { - "path": "src/themes/ThemeMapper.ts", - "kind": "import-statement", - "original": "src/themes/ThemeMapper" - }, - { - "path": "node_modules/@expressive-code/plugin-shiki/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/plugin-shiki" - }, - { - "path": "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/plugin-collapsible-sections" - }, - { - "path": "node_modules/@expressive-code/plugin-text-markers/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/plugin-text-markers" - }, - { - "path": "node_modules/@expressive-code/plugin-line-numbers/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/plugin-line-numbers" - }, - { - "path": "node_modules/@expressive-code/plugin-frames/dist/index.js", - "kind": "import-statement", - "original": "@expressive-code/plugin-frames" - }, - { - "path": "src/themes/ECTheme.ts", - "kind": "import-statement", - "original": "src/themes/ECTheme" - }, - { - "path": "obsidian", - "kind": "import-statement", - "external": true - }, - { - "path": "src/settings/Settings.ts", - "kind": "import-statement", - "original": "src/settings/Settings" - }, - { - "path": "node_modules/@expressive-code/core/dist/hast.js", - "kind": "import-statement", - "original": "@expressive-code/core/hast" - } - ], - "format": "esm" - }, - "node_modules/@shikijs/transformers/dist/index.mjs": { - "bytes": 20611, - "imports": [], - "format": "esm" - }, - "src/main.ts": { - "bytes": 8132, - "imports": [ - { - "path": "obsidian", - "kind": "import-statement", - "external": true - }, - { - "path": "src/CodeBlock.ts", - "kind": "import-statement", - "original": "src/CodeBlock" - }, - { - "path": "src/codemirror/Cm6_ViewPlugin.ts", - "kind": "import-statement", - "original": "src/codemirror/Cm6_ViewPlugin" - }, - { - "path": "src/settings/Settings.ts", - "kind": "import-statement", - "original": "src/settings/Settings" - }, - { - "path": "src/settings/SettingsTab.ts", - "kind": "import-statement", - "original": "src/settings/SettingsTab" - }, - { - "path": "src/PrismPlugin.ts", - "kind": "import-statement", - "original": "src/PrismPlugin" - }, - { - "path": "src/Highlighter.ts", - "kind": "import-statement", - "original": "src/Highlighter" - }, - { - "path": "node_modules/@shikijs/transformers/dist/index.mjs", - "kind": "import-statement", - "original": "@shikijs/transformers" - }, - { - "path": "node_modules/shiki/dist/index.mjs", - "kind": "import-statement", - "original": "shiki" - } - ], - "format": "esm" - } - }, - "outputs": { - "main.js": { - "imports": [ - { - "path": "obsidian", - "kind": "require-call", - "external": true - }, - { - "path": "obsidian", - "kind": "require-call", - "external": true - }, - { - "path": "@codemirror/view", - "kind": "require-call", - "external": true - }, - { - "path": "@codemirror/language", - "kind": "require-call", - "external": true - }, - { - "path": "obsidian", - "kind": "require-call", - "external": true - }, - { - "path": "obsidian", - "kind": "require-call", - "external": true - }, - { - "path": "obsidian", - "kind": "require-call", - "external": true - }, - { - "path": "obsidian", - "kind": "require-call", - "external": true - } - ], - "exports": [], - "entryPoint": "src/main.ts", - "inputs": { - "node_modules/@shikijs/langs/dist/abap.mjs": { - "bytesInOutput": 15882 - }, - "node_modules/@shikijs/langs/dist/actionscript-3.mjs": { - "bytesInOutput": 14079 - }, - "node_modules/@shikijs/langs/dist/ada.mjs": { - "bytesInOutput": 48112 - }, - "node_modules/@shikijs/langs/dist/javascript.mjs": { - "bytesInOutput": 174845 - }, - "node_modules/@shikijs/langs/dist/css.mjs": { - "bytesInOutput": 49053 - }, - "node_modules/@shikijs/langs/dist/html.mjs": { - "bytesInOutput": 57622 - }, - "node_modules/@shikijs/langs/dist/angular-expression.mjs": { - "bytesInOutput": 19675 - }, - "node_modules/@shikijs/langs/dist/angular-let-declaration.mjs": { - "bytesInOutput": 990 - }, - "node_modules/@shikijs/langs/dist/angular-template.mjs": { - "bytesInOutput": 592 - }, - "node_modules/@shikijs/langs/dist/angular-template-blocks.mjs": { - "bytesInOutput": 2075 - }, - "node_modules/@shikijs/langs/dist/angular-html.mjs": { - "bytesInOutput": 973 - }, - "node_modules/@shikijs/langs/dist/scss.mjs": { - "bytesInOutput": 27207 - }, - "node_modules/@shikijs/langs/dist/angular-inline-style.mjs": { - "bytesInOutput": 1317 - }, - "node_modules/@shikijs/langs/dist/angular-inline-template.mjs": { - "bytesInOutput": 1125 - }, - "node_modules/@shikijs/langs/dist/angular-ts.mjs": { - "bytesInOutput": 181317 - }, - "node_modules/@shikijs/langs/dist/apache.mjs": { - "bytesInOutput": 12486 - }, - "node_modules/@shikijs/langs/dist/apex.mjs": { - "bytesInOutput": 46110 - }, - "node_modules/@shikijs/langs/dist/java.mjs": { - "bytesInOutput": 27249 - }, - "node_modules/@shikijs/langs/dist/xml.mjs": { - "bytesInOutput": 5386 - }, - "node_modules/@shikijs/langs/dist/json.mjs": { - "bytesInOutput": 2854 - }, - "node_modules/@shikijs/langs/dist/apl.mjs": { - "bytesInOutput": 26194 - }, - "node_modules/@shikijs/langs/dist/applescript.mjs": { - "bytesInOutput": 29652 - }, - "node_modules/@shikijs/langs/dist/ara.mjs": { - "bytesInOutput": 6392 - }, - "node_modules/@shikijs/langs/dist/asciidoc.mjs": { - "bytesInOutput": 87097 - }, - "node_modules/@shikijs/langs/dist/asm.mjs": { - "bytesInOutput": 40747 - }, - "node_modules/@shikijs/langs/dist/typescript.mjs": { - "bytesInOutput": 181098 - }, - "node_modules/@shikijs/langs/dist/postcss.mjs": { - "bytesInOutput": 6447 - }, - "node_modules/@shikijs/langs/dist/astro.mjs": { - "bytesInOutput": 23846 - }, - "node_modules/@shikijs/langs/dist/awk.mjs": { - "bytesInOutput": 5491 - }, - "node_modules/@shikijs/langs/dist/ballerina.mjs": { - "bytesInOutput": 58723 - }, - "node_modules/@shikijs/langs/dist/bat.mjs": { - "bytesInOutput": 12918 - }, - "node_modules/@shikijs/langs/dist/beancount.mjs": { - "bytesInOutput": 10161 - }, - "node_modules/@shikijs/langs/dist/berry.mjs": { - "bytesInOutput": 2393 - }, - "node_modules/@shikijs/langs/dist/bibtex.mjs": { - "bytesInOutput": 4825 - }, - "node_modules/@shikijs/langs/dist/bicep.mjs": { - "bytesInOutput": 4336 - }, - "node_modules/@shikijs/langs/dist/html-derivative.mjs": { - "bytesInOutput": 843 - }, - "node_modules/@shikijs/langs/dist/sql.mjs": { - "bytesInOutput": 23446 - }, - "node_modules/@shikijs/langs/dist/blade.mjs": { - "bytesInOutput": 103866 - }, - "node_modules/@shikijs/langs/dist/sdbl.mjs": { - "bytesInOutput": 8232 - }, - "node_modules/@shikijs/langs/dist/bsl.mjs": { - "bytesInOutput": 70841 - }, - "node_modules/@shikijs/langs/dist/c.mjs": { - "bytesInOutput": 72143 - }, - "node_modules/@shikijs/langs/dist/cadence.mjs": { - "bytesInOutput": 10535 - }, - "node_modules/@shikijs/langs/dist/python.mjs": { - "bytesInOutput": 69982 - }, - "node_modules/@shikijs/langs/dist/cairo.mjs": { - "bytesInOutput": 2936 - }, - "node_modules/@shikijs/langs/dist/clarity.mjs": { - "bytesInOutput": 14131 - }, - "node_modules/@shikijs/langs/dist/clojure.mjs": { - "bytesInOutput": 6443 - }, - "node_modules/@shikijs/langs/dist/cmake.mjs": { - "bytesInOutput": 9885 - }, - "node_modules/@shikijs/langs/dist/cobol.mjs": { - "bytesInOutput": 39050 - }, - "node_modules/@shikijs/langs/dist/codeowners.mjs": { - "bytesInOutput": 577 - }, - "node_modules/@shikijs/langs/dist/codeql.mjs": { - "bytesInOutput": 26913 - }, - "node_modules/@shikijs/langs/dist/coffee.mjs": { - "bytesInOutput": 27418 - }, - "node_modules/@shikijs/langs/dist/common-lisp.mjs": { - "bytesInOutput": 22611 - }, - "node_modules/@shikijs/langs/dist/coq.mjs": { - "bytesInOutput": 5585 - }, - "node_modules/@shikijs/langs/dist/regexp.mjs": { - "bytesInOutput": 8018 - }, - "node_modules/@shikijs/langs/dist/glsl.mjs": { - "bytesInOutput": 3639 - }, - "node_modules/@shikijs/langs/dist/cpp-macro.mjs": { - "bytesInOutput": 224141 - }, - "node_modules/@shikijs/langs/dist/cpp.mjs": { - "bytesInOutput": 401910 - }, - "node_modules/@shikijs/langs/dist/shellscript.mjs": { - "bytesInOutput": 41509 - }, - "node_modules/@shikijs/langs/dist/crystal.mjs": { - "bytesInOutput": 29242 - }, - "node_modules/@shikijs/langs/dist/csharp.mjs": { - "bytesInOutput": 85618 - }, - "node_modules/@shikijs/langs/dist/csv.mjs": { - "bytesInOutput": 1173 - }, - "node_modules/@shikijs/langs/dist/cue.mjs": { - "bytesInOutput": 16234 - }, - "node_modules/@shikijs/langs/dist/cypher.mjs": { - "bytesInOutput": 5986 - }, - "node_modules/@shikijs/langs/dist/d.mjs": { - "bytesInOutput": 43825 - }, - "node_modules/@shikijs/langs/dist/dart.mjs": { - "bytesInOutput": 7842 - }, - "node_modules/@shikijs/langs/dist/dax.mjs": { - "bytesInOutput": 5395 - }, - "node_modules/@shikijs/langs/dist/desktop.mjs": { - "bytesInOutput": 1863 - }, - "node_modules/@shikijs/langs/dist/diff.mjs": { - "bytesInOutput": 2599 - }, - "node_modules/@shikijs/langs/dist/docker.mjs": { - "bytesInOutput": 1771 - }, - "node_modules/@shikijs/langs/dist/dotenv.mjs": { - "bytesInOutput": 1452 - }, - "node_modules/@shikijs/langs/dist/dream-maker.mjs": { - "bytesInOutput": 10499 - }, - "node_modules/@shikijs/langs/dist/edge.mjs": { - "bytesInOutput": 2233 - }, - "node_modules/@shikijs/langs/dist/elixir.mjs": { - "bytesInOutput": 16264 - }, - "node_modules/@shikijs/langs/dist/elm.mjs": { - "bytesInOutput": 10946 - }, - "node_modules/@shikijs/langs/dist/emacs-lisp.mjs": { - "bytesInOutput": 779886 - }, - "node_modules/@shikijs/langs/dist/haml.mjs": { - "bytesInOutput": 8232 - }, - "node_modules/@shikijs/langs/dist/jsx.mjs": { - "bytesInOutput": 177822 - }, - "node_modules/@shikijs/langs/dist/tsx.mjs": { - "bytesInOutput": 175566 - }, - "node_modules/@shikijs/langs/dist/graphql.mjs": { - "bytesInOutput": 17910 - }, - "node_modules/@shikijs/langs/dist/lua.mjs": { - "bytesInOutput": 15210 - }, - "node_modules/@shikijs/langs/dist/yaml.mjs": { - "bytesInOutput": 10536 - }, - "node_modules/@shikijs/langs/dist/ruby.mjs": { - "bytesInOutput": 45430 - }, - "node_modules/@shikijs/langs/dist/erb.mjs": { - "bytesInOutput": 2108 - }, - "node_modules/@shikijs/langs/dist/erlang.mjs": { - "bytesInOutput": 37460 - }, - "node_modules/@shikijs/langs/dist/fennel.mjs": { - "bytesInOutput": 4802 - }, - "node_modules/@shikijs/langs/dist/fish.mjs": { - "bytesInOutput": 4210 - }, - "node_modules/@shikijs/langs/dist/fluent.mjs": { - "bytesInOutput": 3640 - }, - "node_modules/@shikijs/langs/dist/fortran-free-form.mjs": { - "bytesInOutput": 87175 - }, - "node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs": { - "bytesInOutput": 1090 - }, - "node_modules/@shikijs/langs/dist/markdown.mjs": { - "bytesInOutput": 55941 - }, - "node_modules/@shikijs/langs/dist/fsharp.mjs": { - "bytesInOutput": 25291 - }, - "node_modules/@shikijs/langs/dist/gdshader.mjs": { - "bytesInOutput": 6356 - }, - "node_modules/@shikijs/langs/dist/gdscript.mjs": { - "bytesInOutput": 18866 - }, - "node_modules/@shikijs/langs/dist/gdresource.mjs": { - "bytesInOutput": 5225 - }, - "node_modules/@shikijs/langs/dist/genie.mjs": { - "bytesInOutput": 3386 - }, - "node_modules/@shikijs/langs/dist/gherkin.mjs": { - "bytesInOutput": 18774 - }, - "node_modules/@shikijs/langs/dist/git-commit.mjs": { - "bytesInOutput": 1232 - }, - "node_modules/@shikijs/langs/dist/git-rebase.mjs": { - "bytesInOutput": 978 - }, - "node_modules/@shikijs/langs/dist/gleam.mjs": { - "bytesInOutput": 2607 - }, - "node_modules/@shikijs/langs/dist/glimmer-js.mjs": { - "bytesInOutput": 19978 - }, - "node_modules/@shikijs/langs/dist/glimmer-ts.mjs": { - "bytesInOutput": 19978 - }, - "node_modules/@shikijs/langs/dist/gnuplot.mjs": { - "bytesInOutput": 14813 - }, - "node_modules/@shikijs/langs/dist/go.mjs": { - "bytesInOutput": 45159 - }, - "node_modules/@shikijs/langs/dist/groovy.mjs": { - "bytesInOutput": 19209 - }, - "node_modules/@shikijs/langs/dist/hack.mjs": { - "bytesInOutput": 80208 - }, - "node_modules/@shikijs/langs/dist/handlebars.mjs": { - "bytesInOutput": 12063 - }, - "node_modules/@shikijs/langs/dist/haskell.mjs": { - "bytesInOutput": 41612 - }, - "node_modules/@shikijs/langs/dist/haxe.mjs": { - "bytesInOutput": 35186 - }, - "node_modules/@shikijs/langs/dist/hcl.mjs": { - "bytesInOutput": 10083 - }, - "node_modules/@shikijs/langs/dist/hjson.mjs": { - "bytesInOutput": 12083 - }, - "node_modules/@shikijs/langs/dist/hlsl.mjs": { - "bytesInOutput": 7294 - }, - "node_modules/@shikijs/langs/dist/http.mjs": { - "bytesInOutput": 4313 - }, - "node_modules/@shikijs/langs/dist/hxml.mjs": { - "bytesInOutput": 1745 - }, - "node_modules/@shikijs/langs/dist/hy.mjs": { - "bytesInOutput": 2694 - }, - "node_modules/@shikijs/langs/dist/imba.mjs": { - "bytesInOutput": 49960 - }, - "node_modules/@shikijs/langs/dist/ini.mjs": { - "bytesInOutput": 1555 - }, - "node_modules/@shikijs/langs/dist/jinja-html.mjs": { - "bytesInOutput": 583 - }, - "node_modules/@shikijs/langs/dist/jinja.mjs": { - "bytesInOutput": 5076 - }, - "node_modules/@shikijs/langs/dist/jison.mjs": { - "bytesInOutput": 9705 - }, - "node_modules/@shikijs/langs/dist/json5.mjs": { - "bytesInOutput": 3284 - }, - "node_modules/@shikijs/langs/dist/jsonc.mjs": { - "bytesInOutput": 3139 - }, - "node_modules/@shikijs/langs/dist/jsonl.mjs": { - "bytesInOutput": 3041 - }, - "node_modules/@shikijs/langs/dist/jsonnet.mjs": { - "bytesInOutput": 3648 - }, - "node_modules/@shikijs/langs/dist/jssm.mjs": { - "bytesInOutput": 2268 - }, - "node_modules/@shikijs/langs/dist/r.mjs": { - "bytesInOutput": 39455 - }, - "node_modules/@shikijs/langs/dist/julia.mjs": { - "bytesInOutput": 39504 - }, - "node_modules/@shikijs/langs/dist/kotlin.mjs": { - "bytesInOutput": 8815 - }, - "node_modules/@shikijs/langs/dist/kusto.mjs": { - "bytesInOutput": 15195 - }, - "node_modules/@shikijs/langs/dist/tex.mjs": { - "bytesInOutput": 9528 - }, - "node_modules/@shikijs/langs/dist/latex.mjs": { - "bytesInOutput": 69381 - }, - "node_modules/@shikijs/langs/dist/lean.mjs": { - "bytesInOutput": 4157 - }, - "node_modules/@shikijs/langs/dist/less.mjs": { - "bytesInOutput": 98643 - }, - "node_modules/@shikijs/langs/dist/liquid.mjs": { - "bytesInOutput": 17629 - }, - "node_modules/@shikijs/langs/dist/llvm.mjs": { - "bytesInOutput": 5049 - }, - "node_modules/@shikijs/langs/dist/log.mjs": { - "bytesInOutput": 2872 - }, - "node_modules/@shikijs/langs/dist/logo.mjs": { - "bytesInOutput": 3157 - }, - "node_modules/@shikijs/langs/dist/luau.mjs": { - "bytesInOutput": 12719 - }, - "node_modules/@shikijs/langs/dist/make.mjs": { - "bytesInOutput": 8991 - }, - "node_modules/@shikijs/langs/dist/marko.mjs": { - "bytesInOutput": 16636 - }, - "node_modules/@shikijs/langs/dist/matlab.mjs": { - "bytesInOutput": 16116 - }, - "node_modules/@shikijs/langs/dist/mdc.mjs": { - "bytesInOutput": 19479 - }, - "node_modules/@shikijs/langs/dist/mdx.mjs": { - "bytesInOutput": 136144 - }, - "node_modules/@shikijs/langs/dist/mermaid.mjs": { - "bytesInOutput": 28315 - }, - "node_modules/@shikijs/langs/dist/mipsasm.mjs": { - "bytesInOutput": 3289 - }, - "node_modules/@shikijs/langs/dist/mojo.mjs": { - "bytesInOutput": 69320 - }, - "node_modules/@shikijs/langs/dist/move.mjs": { - "bytesInOutput": 17099 - }, - "node_modules/@shikijs/langs/dist/narrat.mjs": { - "bytesInOutput": 3702 - }, - "node_modules/@shikijs/langs/dist/nextflow.mjs": { - "bytesInOutput": 3965 - }, - "node_modules/@shikijs/langs/dist/nginx.mjs": { - "bytesInOutput": 35353 - }, - "node_modules/@shikijs/langs/dist/nim.mjs": { - "bytesInOutput": 22262 - }, - "node_modules/@shikijs/langs/dist/nix.mjs": { - "bytesInOutput": 14781 - }, - "node_modules/@shikijs/langs/dist/nushell.mjs": { - "bytesInOutput": 19836 - }, - "node_modules/@shikijs/langs/dist/objective-c.mjs": { - "bytesInOutput": 105443 - }, - "node_modules/@shikijs/langs/dist/objective-cpp.mjs": { - "bytesInOutput": 172002 - }, - "node_modules/@shikijs/langs/dist/ocaml.mjs": { - "bytesInOutput": 62479 - }, - "node_modules/@shikijs/langs/dist/pascal.mjs": { - "bytesInOutput": 4180 - }, - "node_modules/@shikijs/langs/dist/perl.mjs": { - "bytesInOutput": 43016 - }, - "node_modules/@shikijs/langs/dist/php.mjs": { - "bytesInOutput": 110831 - }, - "node_modules/@shikijs/langs/dist/plsql.mjs": { - "bytesInOutput": 8542 - }, - "node_modules/@shikijs/langs/dist/po.mjs": { - "bytesInOutput": 3269 - }, - "node_modules/@shikijs/langs/dist/polar.mjs": { - "bytesInOutput": 4701 - }, - "node_modules/@shikijs/langs/dist/powerquery.mjs": { - "bytesInOutput": 5933 - }, - "node_modules/@shikijs/langs/dist/powershell.mjs": { - "bytesInOutput": 20262 - }, - "node_modules/@shikijs/langs/dist/prisma.mjs": { - "bytesInOutput": 6360 - }, - "node_modules/@shikijs/langs/dist/prolog.mjs": { - "bytesInOutput": 11386 - }, - "node_modules/@shikijs/langs/dist/proto.mjs": { - "bytesInOutput": 6551 - }, - "node_modules/@shikijs/langs/dist/pug.mjs": { - "bytesInOutput": 13783 - }, - "node_modules/@shikijs/langs/dist/puppet.mjs": { - "bytesInOutput": 11471 - }, - "node_modules/@shikijs/langs/dist/purescript.mjs": { - "bytesInOutput": 23666 - }, - "node_modules/@shikijs/langs/dist/qml.mjs": { - "bytesInOutput": 5332 - }, - "node_modules/@shikijs/langs/dist/qmldir.mjs": { - "bytesInOutput": 1032 - }, - "node_modules/@shikijs/langs/dist/qss.mjs": { - "bytesInOutput": 7502 - }, - "node_modules/@shikijs/langs/dist/racket.mjs": { - "bytesInOutput": 92449 - }, - "node_modules/@shikijs/langs/dist/raku.mjs": { - "bytesInOutput": 10526 - }, - "node_modules/@shikijs/langs/dist/razor.mjs": { - "bytesInOutput": 25474 - }, - "node_modules/@shikijs/langs/dist/reg.mjs": { - "bytesInOutput": 2375 - }, - "node_modules/@shikijs/langs/dist/rel.mjs": { - "bytesInOutput": 3427 - }, - "node_modules/@shikijs/langs/dist/riscv.mjs": { - "bytesInOutput": 6944 - }, - "node_modules/@shikijs/langs/dist/rst.mjs": { - "bytesInOutput": 10073 - }, - "node_modules/@shikijs/langs/dist/rust.mjs": { - "bytesInOutput": 15099 - }, - "node_modules/@shikijs/langs/dist/sas.mjs": { - "bytesInOutput": 9071 - }, - "node_modules/@shikijs/langs/dist/sass.mjs": { - "bytesInOutput": 9319 - }, - "node_modules/@shikijs/langs/dist/scala.mjs": { - "bytesInOutput": 28914 - }, - "node_modules/@shikijs/langs/dist/scheme.mjs": { - "bytesInOutput": 7199 - }, - "node_modules/@shikijs/langs/dist/shaderlab.mjs": { - "bytesInOutput": 5924 - }, - "node_modules/@shikijs/langs/dist/shellsession.mjs": { - "bytesInOutput": 712 - }, - "node_modules/@shikijs/langs/dist/smalltalk.mjs": { - "bytesInOutput": 6617 - }, - "node_modules/@shikijs/langs/dist/solidity.mjs": { - "bytesInOutput": 16269 - }, - "node_modules/@shikijs/langs/dist/soy.mjs": { - "bytesInOutput": 6924 - }, - "node_modules/@shikijs/langs/dist/turtle.mjs": { - "bytesInOutput": 3730 - }, - "node_modules/@shikijs/langs/dist/sparql.mjs": { - "bytesInOutput": 1480 - }, - "node_modules/@shikijs/langs/dist/splunk.mjs": { - "bytesInOutput": 3466 - }, - "node_modules/@shikijs/langs/dist/ssh-config.mjs": { - "bytesInOutput": 3647 - }, - "node_modules/@shikijs/langs/dist/stata.mjs": { - "bytesInOutput": 56994 - }, - "node_modules/@shikijs/langs/dist/stylus.mjs": { - "bytesInOutput": 31104 - }, - "node_modules/@shikijs/langs/dist/svelte.mjs": { - "bytesInOutput": 17137 - }, - "node_modules/@shikijs/langs/dist/swift.mjs": { - "bytesInOutput": 87394 - }, - "node_modules/@shikijs/langs/dist/system-verilog.mjs": { - "bytesInOutput": 26233 - }, - "node_modules/@shikijs/langs/dist/systemd.mjs": { - "bytesInOutput": 7903 - }, - "node_modules/@shikijs/langs/dist/talonscript.mjs": { - "bytesInOutput": 6787 - }, - "node_modules/@shikijs/langs/dist/tasl.mjs": { - "bytesInOutput": 3318 - }, - "node_modules/@shikijs/langs/dist/tcl.mjs": { - "bytesInOutput": 4459 - }, - "node_modules/@shikijs/langs/dist/templ.mjs": { - "bytesInOutput": 23940 - }, - "node_modules/@shikijs/langs/dist/terraform.mjs": { - "bytesInOutput": 11419 - }, - "node_modules/@shikijs/langs/dist/toml.mjs": { - "bytesInOutput": 6456 - }, - "node_modules/@shikijs/langs/dist/es-tag-css.mjs": { - "bytesInOutput": 1868 - }, - "node_modules/@shikijs/langs/dist/es-tag-glsl.mjs": { - "bytesInOutput": 1745 - }, - "node_modules/@shikijs/langs/dist/es-tag-html.mjs": { - "bytesInOutput": 2062 - }, - "node_modules/@shikijs/langs/dist/es-tag-sql.mjs": { - "bytesInOutput": 1641 - }, - "node_modules/@shikijs/langs/dist/es-tag-xml.mjs": { - "bytesInOutput": 1198 - }, - "node_modules/@shikijs/langs/dist/ts-tags.mjs": { - "bytesInOutput": 399 - }, - "node_modules/@shikijs/langs/dist/tsv.mjs": { - "bytesInOutput": 769 - }, - "node_modules/@shikijs/langs/dist/twig.mjs": { - "bytesInOutput": 20814 - }, - "node_modules/@shikijs/langs/dist/typespec.mjs": { - "bytesInOutput": 23686 - }, - "node_modules/@shikijs/langs/dist/typst.mjs": { - "bytesInOutput": 8417 - }, - "node_modules/@shikijs/langs/dist/v.mjs": { - "bytesInOutput": 13258 - }, - "node_modules/@shikijs/langs/dist/vala.mjs": { - "bytesInOutput": 3400 - }, - "node_modules/@shikijs/langs/dist/vb.mjs": { - "bytesInOutput": 6123 - }, - "node_modules/@shikijs/langs/dist/verilog.mjs": { - "bytesInOutput": 5961 - }, - "node_modules/@shikijs/langs/dist/vhdl.mjs": { - "bytesInOutput": 24294 - }, - "node_modules/@shikijs/langs/dist/viml.mjs": { - "bytesInOutput": 20395 - }, - "node_modules/@shikijs/langs/dist/markdown-vue.mjs": { - "bytesInOutput": 760 - }, - "node_modules/@shikijs/langs/dist/vue-directives.mjs": { - "bytesInOutput": 429 - }, - "node_modules/@shikijs/langs/dist/vue-interpolations.mjs": { - "bytesInOutput": 412 - }, - "node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs": { - "bytesInOutput": 908 - }, - "node_modules/@shikijs/langs/dist/vue.mjs": { - "bytesInOutput": 18564 - }, - "node_modules/@shikijs/langs/dist/vue-html.mjs": { - "bytesInOutput": 8485 - }, - "node_modules/@shikijs/langs/dist/vyper.mjs": { - "bytesInOutput": 74678 - }, - "node_modules/@shikijs/langs/dist/wasm.mjs": { - "bytesInOutput": 12037 - }, - "node_modules/@shikijs/langs/dist/wenyan.mjs": { - "bytesInOutput": 2948 - }, - "node_modules/@shikijs/langs/dist/wgsl.mjs": { - "bytesInOutput": 5174 - }, - "node_modules/@shikijs/langs/dist/wikitext.mjs": { - "bytesInOutput": 55915 - }, - "node_modules/@shikijs/langs/dist/wit.mjs": { - "bytesInOutput": 21497 - }, - "node_modules/@shikijs/langs/dist/wolfram.mjs": { - "bytesInOutput": 262421 - }, - "node_modules/@shikijs/langs/dist/xsl.mjs": { - "bytesInOutput": 1361 - }, - "node_modules/@shikijs/langs/dist/zenscript.mjs": { - "bytesInOutput": 3942 - }, - "node_modules/@shikijs/langs/dist/zig.mjs": { - "bytesInOutput": 5397 - }, - "node_modules/@shikijs/themes/dist/andromeeda.mjs": { - "bytesInOutput": 8886 - }, - "node_modules/@shikijs/themes/dist/aurora-x.mjs": { - "bytesInOutput": 13684 - }, - "node_modules/@shikijs/themes/dist/ayu-dark.mjs": { - "bytesInOutput": 14974 - }, - "node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs": { - "bytesInOutput": 46873 - }, - "node_modules/@shikijs/themes/dist/catppuccin-latte.mjs": { - "bytesInOutput": 46869 - }, - "node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs": { - "bytesInOutput": 46876 - }, - "node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs": { - "bytesInOutput": 46868 - }, - "node_modules/@shikijs/themes/dist/dark-plus.mjs": { - "bytesInOutput": 9122 - }, - "node_modules/@shikijs/themes/dist/dracula.mjs": { - "bytesInOutput": 21091 - }, - "node_modules/@shikijs/themes/dist/dracula-soft.mjs": { - "bytesInOutput": 21101 - }, - "node_modules/@shikijs/themes/dist/everforest-dark.mjs": { - "bytesInOutput": 53770 - }, - "node_modules/@shikijs/themes/dist/everforest-light.mjs": { - "bytesInOutput": 53773 - }, - "node_modules/@shikijs/themes/dist/github-dark.mjs": { - "bytesInOutput": 11430 - }, - "node_modules/@shikijs/themes/dist/github-dark-default.mjs": { - "bytesInOutput": 14460 - }, - "node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs": { - "bytesInOutput": 14458 - }, - "node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs": { - "bytesInOutput": 14620 - }, - "node_modules/@shikijs/themes/dist/github-light.mjs": { - "bytesInOutput": 11209 - }, - "node_modules/@shikijs/themes/dist/github-light-default.mjs": { - "bytesInOutput": 14181 - }, - "node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs": { - "bytesInOutput": 14300 - }, - "node_modules/@shikijs/themes/dist/gruvbox-dark-hard.mjs": { - "bytesInOutput": 21880 - }, - "node_modules/@shikijs/themes/dist/gruvbox-dark-medium.mjs": { - "bytesInOutput": 21884 - }, - "node_modules/@shikijs/themes/dist/gruvbox-dark-soft.mjs": { - "bytesInOutput": 21880 - }, - "node_modules/@shikijs/themes/dist/gruvbox-light-hard.mjs": { - "bytesInOutput": 21883 - }, - "node_modules/@shikijs/themes/dist/gruvbox-light-medium.mjs": { - "bytesInOutput": 21887 - }, - "node_modules/@shikijs/themes/dist/gruvbox-light-soft.mjs": { - "bytesInOutput": 21883 - }, - "node_modules/@shikijs/themes/dist/houston.mjs": { - "bytesInOutput": 35447 - }, - "node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs": { - "bytesInOutput": 17152 - }, - "node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs": { - "bytesInOutput": 17151 - }, - "node_modules/@shikijs/themes/dist/kanagawa-wave.mjs": { - "bytesInOutput": 17148 - }, - "node_modules/@shikijs/themes/dist/laserwave.mjs": { - "bytesInOutput": 11524 - }, - "node_modules/@shikijs/themes/dist/light-plus.mjs": { - "bytesInOutput": 9966 - }, - "node_modules/@shikijs/themes/dist/material-theme.mjs": { - "bytesInOutput": 18640 - }, - "node_modules/@shikijs/themes/dist/material-theme-darker.mjs": { - "bytesInOutput": 18654 - }, - "node_modules/@shikijs/themes/dist/material-theme-lighter.mjs": { - "bytesInOutput": 18659 - }, - "node_modules/@shikijs/themes/dist/material-theme-ocean.mjs": { - "bytesInOutput": 18654 - }, - "node_modules/@shikijs/themes/dist/material-theme-palenight.mjs": { - "bytesInOutput": 18660 - }, - "node_modules/@shikijs/themes/dist/min-dark.mjs": { - "bytesInOutput": 6316 - }, - "node_modules/@shikijs/themes/dist/min-light.mjs": { - "bytesInOutput": 6994 - }, - "node_modules/@shikijs/themes/dist/monokai.mjs": { - "bytesInOutput": 7909 - }, - "node_modules/@shikijs/themes/dist/night-owl.mjs": { - "bytesInOutput": 28938 - }, - "node_modules/@shikijs/themes/dist/nord.mjs": { - "bytesInOutput": 26748 - }, - "node_modules/@shikijs/themes/dist/one-dark-pro.mjs": { - "bytesInOutput": 33812 - }, - "node_modules/@shikijs/themes/dist/one-light.mjs": { - "bytesInOutput": 25323 - }, - "node_modules/@shikijs/themes/dist/plastic.mjs": { - "bytesInOutput": 9320 - }, - "node_modules/@shikijs/themes/dist/poimandres.mjs": { - "bytesInOutput": 33519 - }, - "node_modules/@shikijs/themes/dist/red.mjs": { - "bytesInOutput": 6287 - }, - "node_modules/@shikijs/themes/dist/rose-pine.mjs": { - "bytesInOutput": 21770 - }, - "node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs": { - "bytesInOutput": 21781 - }, - "node_modules/@shikijs/themes/dist/rose-pine-moon.mjs": { - "bytesInOutput": 21780 - }, - "node_modules/@shikijs/themes/dist/slack-dark.mjs": { - "bytesInOutput": 9142 - }, - "node_modules/@shikijs/themes/dist/slack-ochin.mjs": { - "bytesInOutput": 9456 - }, - "node_modules/@shikijs/themes/dist/snazzy-light.mjs": { - "bytesInOutput": 20798 - }, - "node_modules/@shikijs/themes/dist/solarized-dark.mjs": { - "bytesInOutput": 6871 - }, - "node_modules/@shikijs/themes/dist/solarized-light.mjs": { - "bytesInOutput": 6505 - }, - "node_modules/@shikijs/themes/dist/synthwave-84.mjs": { - "bytesInOutput": 14061 - }, - "node_modules/@shikijs/themes/dist/tokyo-night.mjs": { - "bytesInOutput": 35690 - }, - "node_modules/@shikijs/themes/dist/vesper.mjs": { - "bytesInOutput": 12717 - }, - "node_modules/@shikijs/themes/dist/vitesse-black.mjs": { - "bytesInOutput": 13702 - }, - "node_modules/@shikijs/themes/dist/vitesse-dark.mjs": { - "bytesInOutput": 13784 - }, - "node_modules/@shikijs/themes/dist/vitesse-light.mjs": { - "bytesInOutput": 13641 - }, - "node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs": { - "bytesInOutput": 622297 - }, - "node_modules/shiki/dist/wasm.mjs": { - "bytesInOutput": 100 - }, - "node_modules/boolbase/index.js": { - "bytesInOutput": 97 - }, - "node_modules/picocolors/picocolors.browser.js": { - "bytesInOutput": 628 - }, - "(disabled):node_modules/postcss/lib/terminal-highlight": { - "bytesInOutput": 18 - }, - "node_modules/postcss/lib/css-syntax-error.js": { - "bytesInOutput": 1590 - }, - "node_modules/postcss/lib/stringifier.js": { - "bytesInOutput": 4286 - }, - "node_modules/postcss/lib/stringify.js": { - "bytesInOutput": 118 - }, - "node_modules/postcss/lib/symbols.js": { - "bytesInOutput": 100 - }, - "node_modules/postcss/lib/node.js": { - "bytesInOutput": 4725 - }, - "node_modules/postcss/lib/comment.js": { - "bytesInOutput": 144 - }, - "node_modules/postcss/lib/declaration.js": { - "bytesInOutput": 301 - }, - "node_modules/postcss/lib/container.js": { - "bytesInOutput": 5374 - }, - "node_modules/postcss/lib/at-rule.js": { - "bytesInOutput": 315 - }, - "node_modules/postcss/lib/document.js": { - "bytesInOutput": 298 - }, - "node_modules/nanoid/non-secure/index.cjs": { - "bytesInOutput": 304 - }, - "node-modules-polyfills:path": { - "bytesInOutput": 8176 - }, - "node-modules-polyfills-commonjs:path": { - "bytesInOutput": 276 - }, - "(disabled):node_modules/source-map-js/source-map.js": { - "bytesInOutput": 18 - }, - "node-modules-polyfills:url": { - "bytesInOutput": 59087 - }, - "node-modules-polyfills-commonjs:url": { - "bytesInOutput": 172 - }, - "node-modules-polyfills:fs": { - "bytesInOutput": 338570 - }, - "node-modules-polyfills-commonjs:fs": { - "bytesInOutput": 1743 - }, - "node_modules/postcss/lib/previous-map.js": { - "bytesInOutput": 2321 - }, - "node_modules/postcss/lib/input.js": { - "bytesInOutput": 3037 - }, - "node_modules/postcss/lib/root.js": { - "bytesInOutput": 683 - }, - "node_modules/postcss/lib/list.js": { - "bytesInOutput": 438 - }, - "node_modules/postcss/lib/rule.js": { - "bytesInOutput": 384 - }, - "node_modules/postcss/lib/fromJSON.js": { - "bytesInOutput": 700 - }, - "node_modules/postcss/lib/map-generator.js": { - "bytesInOutput": 5682 - }, - "node_modules/postcss/lib/tokenize.js": { - "bytesInOutput": 2090 - }, - "node_modules/postcss/lib/parser.js": { - "bytesInOutput": 7412 - }, - "node_modules/postcss/lib/parse.js": { - "bytesInOutput": 211 - }, - "node_modules/postcss/lib/warning.js": { - "bytesInOutput": 476 - }, - "node_modules/postcss/lib/result.js": { - "bytesInOutput": 478 - }, - "node_modules/postcss/lib/warn-once.js": { - "bytesInOutput": 147 - }, - "node_modules/postcss/lib/lazy-result.js": { - "bytesInOutput": 6485 - }, - "node_modules/postcss/lib/no-work-result.js": { - "bytesInOutput": 1275 - }, - "node_modules/postcss/lib/processor.js": { - "bytesInOutput": 782 - }, - "node_modules/postcss/lib/postcss.js": { - "bytesInOutput": 1320 - }, - "node_modules/postcss-selector-parser/dist/util/unesc.js": { - "bytesInOutput": 678 - }, - "node_modules/postcss-selector-parser/dist/util/getProp.js": { - "bytesInOutput": 253 - }, - "node_modules/postcss-selector-parser/dist/util/ensureObject.js": { - "bytesInOutput": 245 - }, - "node_modules/postcss-selector-parser/dist/util/stripComments.js": { - "bytesInOutput": 256 - }, - "node_modules/postcss-selector-parser/dist/util/index.js": { - "bytesInOutput": 329 - }, - "node_modules/postcss-selector-parser/dist/selectors/node.js": { - "bytesInOutput": 2645 - }, - "node_modules/postcss-selector-parser/dist/selectors/types.js": { - "bytesInOutput": 558 - }, - "node_modules/postcss-selector-parser/dist/selectors/container.js": { - "bytesInOutput": 5812 - }, - "node_modules/postcss-selector-parser/dist/selectors/root.js": { - "bytesInOutput": 1085 - }, - "node_modules/postcss-selector-parser/dist/selectors/selector.js": { - "bytesInOutput": 526 - }, - "node_modules/cssesc/cssesc.js": { - "bytesInOutput": 1189 - }, - "node_modules/postcss-selector-parser/dist/selectors/className.js": { - "bytesInOutput": 1181 - }, - "node_modules/postcss-selector-parser/dist/selectors/comment.js": { - "bytesInOutput": 525 - }, - "node_modules/postcss-selector-parser/dist/selectors/id.js": { - "bytesInOutput": 613 - }, - "node_modules/postcss-selector-parser/dist/selectors/namespace.js": { - "bytesInOutput": 1540 - }, - "node_modules/postcss-selector-parser/dist/selectors/tag.js": { - "bytesInOutput": 521 - }, - "node_modules/postcss-selector-parser/dist/selectors/string.js": { - "bytesInOutput": 524 - }, - "node_modules/postcss-selector-parser/dist/selectors/pseudo.js": { - "bytesInOutput": 711 - }, - "node_modules/util-deprecate/browser.js": { - "bytesInOutput": 422 - }, - "node_modules/postcss-selector-parser/dist/selectors/attribute.js": { - "bytesInOutput": 6077 - }, - "node_modules/postcss-selector-parser/dist/selectors/universal.js": { - "bytesInOutput": 539 - }, - "node_modules/postcss-selector-parser/dist/selectors/combinator.js": { - "bytesInOutput": 528 - }, - "node_modules/postcss-selector-parser/dist/selectors/nesting.js": { - "bytesInOutput": 537 - }, - "node_modules/postcss-selector-parser/dist/sortAscending.js": { - "bytesInOutput": 146 - }, - "node_modules/postcss-selector-parser/dist/tokenTypes.js": { - "bytesInOutput": 1198 - }, - "node_modules/postcss-selector-parser/dist/tokenize.js": { - "bytesInOutput": 3217 - }, - "node_modules/postcss-selector-parser/dist/parser.js": { - "bytesInOutput": 18232 - }, - "node_modules/postcss-selector-parser/dist/processor.js": { - "bytesInOutput": 1804 - }, - "node_modules/postcss-selector-parser/dist/selectors/constructors.js": { - "bytesInOutput": 1134 - }, - "node_modules/postcss-selector-parser/dist/selectors/guards.js": { - "bytesInOutput": 1588 - }, - "node_modules/postcss-selector-parser/dist/selectors/index.js": { - "bytesInOutput": 410 - }, - "node_modules/postcss-selector-parser/dist/index.js": { - "bytesInOutput": 870 - }, - "node_modules/postcss-nested/index.js": { - "bytesInOutput": 3414 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/abap.mjs": { - "bytesInOutput": 18856 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/actionscript-3.mjs": { - "bytesInOutput": 14593 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ada.mjs": { - "bytesInOutput": 48566 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/javascript.mjs": { - "bytesInOutput": 198064 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/css.mjs": { - "bytesInOutput": 53832 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html.mjs": { - "bytesInOutput": 61297 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-expression.mjs": { - "bytesInOutput": 13696 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-let-declaration.mjs": { - "bytesInOutput": 1001 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template.mjs": { - "bytesInOutput": 587 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-template-blocks.mjs": { - "bytesInOutput": 1363 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-html.mjs": { - "bytesInOutput": 1047 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scss.mjs": { - "bytesInOutput": 28132 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-style.mjs": { - "bytesInOutput": 1324 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-inline-template.mjs": { - "bytesInOutput": 1128 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/angular-ts.mjs": { - "bytesInOutput": 209279 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apache.mjs": { - "bytesInOutput": 13247 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apex.mjs": { - "bytesInOutput": 46848 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/java.mjs": { - "bytesInOutput": 27518 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xml.mjs": { - "bytesInOutput": 5413 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json.mjs": { - "bytesInOutput": 2949 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/apl.mjs": { - "bytesInOutput": 26513 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/applescript.mjs": { - "bytesInOutput": 30906 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ara.mjs": { - "bytesInOutput": 7282 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asciidoc.mjs": { - "bytesInOutput": 93541 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/asm.mjs": { - "bytesInOutput": 40888 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typescript.mjs": { - "bytesInOutput": 209057 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/postcss.mjs": { - "bytesInOutput": 6549 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/astro.mjs": { - "bytesInOutput": 23953 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/awk.mjs": { - "bytesInOutput": 5530 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ballerina.mjs": { - "bytesInOutput": 61665 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bat.mjs": { - "bytesInOutput": 13028 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/beancount.mjs": { - "bytesInOutput": 10792 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/berry.mjs": { - "bytesInOutput": 2484 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bibtex.mjs": { - "bytesInOutput": 5111 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bicep.mjs": { - "bytesInOutput": 4490 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sql.mjs": { - "bytesInOutput": 24356 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/blade.mjs": { - "bytesInOutput": 107838 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sdbl.mjs": { - "bytesInOutput": 9113 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/bsl.mjs": { - "bytesInOutput": 80905 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/c.mjs": { - "bytesInOutput": 74001 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cadence.mjs": { - "bytesInOutput": 11067 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/python.mjs": { - "bytesInOutput": 73562 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cairo.mjs": { - "bytesInOutput": 2960 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clarity.mjs": { - "bytesInOutput": 14589 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/clojure.mjs": { - "bytesInOutput": 7113 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cmake.mjs": { - "bytesInOutput": 10536 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cobol.mjs": { - "bytesInOutput": 40505 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeowners.mjs": { - "bytesInOutput": 583 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/codeql.mjs": { - "bytesInOutput": 33630 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coffee.mjs": { - "bytesInOutput": 27751 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/common-lisp.mjs": { - "bytesInOutput": 28532 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/coq.mjs": { - "bytesInOutput": 6081 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/regexp.mjs": { - "bytesInOutput": 8100 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glsl.mjs": { - "bytesInOutput": 3950 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp-macro.mjs": { - "bytesInOutput": 249834 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cpp.mjs": { - "bytesInOutput": 447658 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellscript.mjs": { - "bytesInOutput": 42746 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/crystal.mjs": { - "bytesInOutput": 33607 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csharp.mjs": { - "bytesInOutput": 87198 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/csv.mjs": { - "bytesInOutput": 1259 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cue.mjs": { - "bytesInOutput": 17382 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/cypher.mjs": { - "bytesInOutput": 6850 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/d.mjs": { - "bytesInOutput": 43049 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dart.mjs": { - "bytesInOutput": 7926 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dax.mjs": { - "bytesInOutput": 5568 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/desktop.mjs": { - "bytesInOutput": 2063 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/diff.mjs": { - "bytesInOutput": 2676 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/docker.mjs": { - "bytesInOutput": 1802 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dotenv.mjs": { - "bytesInOutput": 1739 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/dream-maker.mjs": { - "bytesInOutput": 10643 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/html-derivative.mjs": { - "bytesInOutput": 916 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/edge.mjs": { - "bytesInOutput": 2235 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elixir.mjs": { - "bytesInOutput": 18249 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/elm.mjs": { - "bytesInOutput": 11272 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/emacs-lisp.mjs": { - "bytesInOutput": 804712 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haml.mjs": { - "bytesInOutput": 8458 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsx.mjs": { - "bytesInOutput": 201041 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsx.mjs": { - "bytesInOutput": 198785 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/graphql.mjs": { - "bytesInOutput": 18111 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lua.mjs": { - "bytesInOutput": 15630 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/yaml.mjs": { - "bytesInOutput": 10826 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ruby.mjs": { - "bytesInOutput": 50999 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erb.mjs": { - "bytesInOutput": 2114 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/erlang.mjs": { - "bytesInOutput": 36346 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fennel.mjs": { - "bytesInOutput": 4863 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fish.mjs": { - "bytesInOutput": 5428 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fluent.mjs": { - "bytesInOutput": 3658 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-free-form.mjs": { - "bytesInOutput": 98225 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fortran-fixed-form.mjs": { - "bytesInOutput": 1100 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown.mjs": { - "bytesInOutput": 57020 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/fsharp.mjs": { - "bytesInOutput": 25837 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdshader.mjs": { - "bytesInOutput": 6407 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdscript.mjs": { - "bytesInOutput": 18687 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gdresource.mjs": { - "bytesInOutput": 5448 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/genie.mjs": { - "bytesInOutput": 3414 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gherkin.mjs": { - "bytesInOutput": 19457 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-commit.mjs": { - "bytesInOutput": 1553 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/git-rebase.mjs": { - "bytesInOutput": 981 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gleam.mjs": { - "bytesInOutput": 2722 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-js.mjs": { - "bytesInOutput": 20468 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/glimmer-ts.mjs": { - "bytesInOutput": 20468 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/gnuplot.mjs": { - "bytesInOutput": 14946 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/go.mjs": { - "bytesInOutput": 52441 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/groovy.mjs": { - "bytesInOutput": 19681 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hack.mjs": { - "bytesInOutput": 84591 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/handlebars.mjs": { - "bytesInOutput": 12185 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haskell.mjs": { - "bytesInOutput": 43398 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/haxe.mjs": { - "bytesInOutput": 35328 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hcl.mjs": { - "bytesInOutput": 12008 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hjson.mjs": { - "bytesInOutput": 12364 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hlsl.mjs": { - "bytesInOutput": 7638 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/http.mjs": { - "bytesInOutput": 4424 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hxml.mjs": { - "bytesInOutput": 1838 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/hy.mjs": { - "bytesInOutput": 2880 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/imba.mjs": { - "bytesInOutput": 53464 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ini.mjs": { - "bytesInOutput": 1565 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja-html.mjs": { - "bytesInOutput": 585 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jinja.mjs": { - "bytesInOutput": 5122 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jison.mjs": { - "bytesInOutput": 9749 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/json5.mjs": { - "bytesInOutput": 3575 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonc.mjs": { - "bytesInOutput": 3237 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonl.mjs": { - "bytesInOutput": 3139 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jsonnet.mjs": { - "bytesInOutput": 3666 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/jssm.mjs": { - "bytesInOutput": 3010 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/r.mjs": { - "bytesInOutput": 36905 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/julia.mjs": { - "bytesInOutput": 45928 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kotlin.mjs": { - "bytesInOutput": 8856 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/kusto.mjs": { - "bytesInOutput": 20669 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tex.mjs": { - "bytesInOutput": 9376 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/latex.mjs": { - "bytesInOutput": 59423 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/lean.mjs": { - "bytesInOutput": 4373 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/less.mjs": { - "bytesInOutput": 102492 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/liquid.mjs": { - "bytesInOutput": 17087 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/log.mjs": { - "bytesInOutput": 3001 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/logo.mjs": { - "bytesInOutput": 3247 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/luau.mjs": { - "bytesInOutput": 12955 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/make.mjs": { - "bytesInOutput": 9050 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/marko.mjs": { - "bytesInOutput": 19246 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/matlab.mjs": { - "bytesInOutput": 20172 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdc.mjs": { - "bytesInOutput": 19551 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mdx.mjs": { - "bytesInOutput": 140396 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mermaid.mjs": { - "bytesInOutput": 33097 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mipsasm.mjs": { - "bytesInOutput": 3455 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/mojo.mjs": { - "bytesInOutput": 72603 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/move.mjs": { - "bytesInOutput": 20275 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/narrat.mjs": { - "bytesInOutput": 3730 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nextflow.mjs": { - "bytesInOutput": 3994 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nginx.mjs": { - "bytesInOutput": 35711 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nim.mjs": { - "bytesInOutput": 23440 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nix.mjs": { - "bytesInOutput": 15589 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/nushell.mjs": { - "bytesInOutput": 19781 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-c.mjs": { - "bytesInOutput": 107823 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/objective-cpp.mjs": { - "bytesInOutput": 175636 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ocaml.mjs": { - "bytesInOutput": 65901 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pascal.mjs": { - "bytesInOutput": 4214 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/perl.mjs": { - "bytesInOutput": 44419 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/php.mjs": { - "bytesInOutput": 113592 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/plsql.mjs": { - "bytesInOutput": 8605 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/po.mjs": { - "bytesInOutput": 3415 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/polar.mjs": { - "bytesInOutput": 4711 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powerquery.mjs": { - "bytesInOutput": 5968 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/powershell.mjs": { - "bytesInOutput": 22294 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prisma.mjs": { - "bytesInOutput": 6422 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/prolog.mjs": { - "bytesInOutput": 11475 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/proto.mjs": { - "bytesInOutput": 6610 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/pug.mjs": { - "bytesInOutput": 14839 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/puppet.mjs": { - "bytesInOutput": 11784 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/purescript.mjs": { - "bytesInOutput": 17187 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qml.mjs": { - "bytesInOutput": 5426 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qmldir.mjs": { - "bytesInOutput": 1038 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/qss.mjs": { - "bytesInOutput": 7854 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/racket.mjs": { - "bytesInOutput": 97689 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/raku.mjs": { - "bytesInOutput": 10646 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/razor.mjs": { - "bytesInOutput": 25727 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/reg.mjs": { - "bytesInOutput": 2405 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rel.mjs": { - "bytesInOutput": 3513 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/riscv.mjs": { - "bytesInOutput": 7743 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rst.mjs": { - "bytesInOutput": 10053 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/rust.mjs": { - "bytesInOutput": 17639 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sas.mjs": { - "bytesInOutput": 9811 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sass.mjs": { - "bytesInOutput": 9441 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scala.mjs": { - "bytesInOutput": 30528 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/scheme.mjs": { - "bytesInOutput": 8765 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shaderlab.mjs": { - "bytesInOutput": 6279 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/shellsession.mjs": { - "bytesInOutput": 726 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/smalltalk.mjs": { - "bytesInOutput": 4240 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/solidity.mjs": { - "bytesInOutput": 16265 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/soy.mjs": { - "bytesInOutput": 6900 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/turtle.mjs": { - "bytesInOutput": 3747 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/sparql.mjs": { - "bytesInOutput": 1518 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/splunk.mjs": { - "bytesInOutput": 3954 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ssh-config.mjs": { - "bytesInOutput": 3644 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stata.mjs": { - "bytesInOutput": 61017 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/stylus.mjs": { - "bytesInOutput": 31594 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/svelte.mjs": { - "bytesInOutput": 16796 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/swift.mjs": { - "bytesInOutput": 91029 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/system-verilog.mjs": { - "bytesInOutput": 26809 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/systemd.mjs": { - "bytesInOutput": 8039 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/talonscript.mjs": { - "bytesInOutput": 6741 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tasl.mjs": { - "bytesInOutput": 3426 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tcl.mjs": { - "bytesInOutput": 5053 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/templ.mjs": { - "bytesInOutput": 23920 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/terraform.mjs": { - "bytesInOutput": 13411 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/toml.mjs": { - "bytesInOutput": 6569 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-css.mjs": { - "bytesInOutput": 1913 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-glsl.mjs": { - "bytesInOutput": 1793 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-html.mjs": { - "bytesInOutput": 2110 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-sql.mjs": { - "bytesInOutput": 1691 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/es-tag-xml.mjs": { - "bytesInOutput": 1249 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/ts-tags.mjs": { - "bytesInOutput": 405 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/tsv.mjs": { - "bytesInOutput": 775 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/twig.mjs": { - "bytesInOutput": 22404 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typespec.mjs": { - "bytesInOutput": 28225 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/typst.mjs": { - "bytesInOutput": 8590 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/v.mjs": { - "bytesInOutput": 13774 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vala.mjs": { - "bytesInOutput": 3440 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vb.mjs": { - "bytesInOutput": 6298 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/verilog.mjs": { - "bytesInOutput": 5973 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vhdl.mjs": { - "bytesInOutput": 23820 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/viml.mjs": { - "bytesInOutput": 21054 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/markdown-vue.mjs": { - "bytesInOutput": 772 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-directives.mjs": { - "bytesInOutput": 432 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-interpolations.mjs": { - "bytesInOutput": 415 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.mjs": { - "bytesInOutput": 910 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue.mjs": { - "bytesInOutput": 18938 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vue-html.mjs": { - "bytesInOutput": 8521 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/vyper.mjs": { - "bytesInOutput": 78266 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wasm.mjs": { - "bytesInOutput": 15963 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wenyan.mjs": { - "bytesInOutput": 3034 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wgsl.mjs": { - "bytesInOutput": 6524 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wikitext.mjs": { - "bytesInOutput": 56660 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/wolfram.mjs": { - "bytesInOutput": 268631 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/xsl.mjs": { - "bytesInOutput": 1367 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zenscript.mjs": { - "bytesInOutput": 4431 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs/dist/zig.mjs": { - "bytesInOutput": 5499 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/andromeeda.mjs": { - "bytesInOutput": 8889 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/aurora-x.mjs": { - "bytesInOutput": 13687 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/ayu-dark.mjs": { - "bytesInOutput": 14977 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs": { - "bytesInOutput": 45646 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-latte.mjs": { - "bytesInOutput": 45642 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs": { - "bytesInOutput": 45649 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs": { - "bytesInOutput": 45641 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dark-plus.mjs": { - "bytesInOutput": 9125 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula.mjs": { - "bytesInOutput": 21094 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/dracula-soft.mjs": { - "bytesInOutput": 21104 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-dark.mjs": { - "bytesInOutput": 53773 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/everforest-light.mjs": { - "bytesInOutput": 53776 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark.mjs": { - "bytesInOutput": 11433 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-default.mjs": { - "bytesInOutput": 14463 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-dimmed.mjs": { - "bytesInOutput": 14461 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-dark-high-contrast.mjs": { - "bytesInOutput": 14623 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light.mjs": { - "bytesInOutput": 11212 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-default.mjs": { - "bytesInOutput": 14184 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/github-light-high-contrast.mjs": { - "bytesInOutput": 14303 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/houston.mjs": { - "bytesInOutput": 35450 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs": { - "bytesInOutput": 17155 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs": { - "bytesInOutput": 17154 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/kanagawa-wave.mjs": { - "bytesInOutput": 17151 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/laserwave.mjs": { - "bytesInOutput": 11527 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/light-plus.mjs": { - "bytesInOutput": 9969 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme.mjs": { - "bytesInOutput": 18643 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-darker.mjs": { - "bytesInOutput": 18657 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-lighter.mjs": { - "bytesInOutput": 18662 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-ocean.mjs": { - "bytesInOutput": 18657 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/material-theme-palenight.mjs": { - "bytesInOutput": 18663 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-dark.mjs": { - "bytesInOutput": 6319 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/min-light.mjs": { - "bytesInOutput": 6997 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/monokai.mjs": { - "bytesInOutput": 7912 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/night-owl.mjs": { - "bytesInOutput": 28941 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/nord.mjs": { - "bytesInOutput": 26751 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-dark-pro.mjs": { - "bytesInOutput": 33770 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/one-light.mjs": { - "bytesInOutput": 25326 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/plastic.mjs": { - "bytesInOutput": 9323 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/poimandres.mjs": { - "bytesInOutput": 33522 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/red.mjs": { - "bytesInOutput": 6290 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine.mjs": { - "bytesInOutput": 21789 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs": { - "bytesInOutput": 21800 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/rose-pine-moon.mjs": { - "bytesInOutput": 21799 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-dark.mjs": { - "bytesInOutput": 9145 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/slack-ochin.mjs": { - "bytesInOutput": 9459 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/snazzy-light.mjs": { - "bytesInOutput": 20801 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-dark.mjs": { - "bytesInOutput": 6874 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/solarized-light.mjs": { - "bytesInOutput": 6508 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/synthwave-84.mjs": { - "bytesInOutput": 14064 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/tokyo-night.mjs": { - "bytesInOutput": 34391 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vesper.mjs": { - "bytesInOutput": 12691 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-black.mjs": { - "bytesInOutput": 13705 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-dark.mjs": { - "bytesInOutput": 13787 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes/dist/vitesse-light.mjs": { - "bytesInOutput": 13644 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.mjs": { - "bytesInOutput": 622300 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/wasm.mjs": { - "bytesInOutput": 100 - }, - "src/main.ts": { - "bytesInOutput": 3745 - }, - "src/CodeBlock.ts": { - "bytesInOutput": 986 - }, - "src/codemirror/Cm6_ViewPlugin.ts": { - "bytesInOutput": 2708 - }, - "src/codemirror/Cm6_Util.ts": { - "bytesInOutput": 323 - }, - "src/settings/Settings.ts": { - "bytesInOutput": 141 - }, - "src/settings/SettingsTab.ts": { - "bytesInOutput": 3859 - }, - "src/settings/StringSelectModal.ts": { - "bytesInOutput": 216 - }, - "node_modules/@shikijs/types/dist/index.mjs": { - "bytesInOutput": 76 - }, - "node_modules/@shikijs/core/dist/index.mjs": { - "bytesInOutput": 30952 - }, - "node_modules/@shikijs/vscode-textmate/dist/index.js": { - "bytesInOutput": 44157 - }, - "node_modules/html-void-elements/index.js": { - "bytesInOutput": 162 - }, - "node_modules/property-information/lib/util/schema.js": { - "bytesInOutput": 156 - }, - "node_modules/property-information/lib/util/merge.js": { - "bytesInOutput": 121 - }, - "node_modules/property-information/lib/normalize.js": { - "bytesInOutput": 38 - }, - "node_modules/property-information/lib/util/info.js": { - "bytesInOutput": 406 - }, - "node_modules/property-information/lib/util/types.js": { - "bytesInOutput": 257 - }, - "node_modules/property-information/lib/util/defined-info.js": { - "bytesInOutput": 249 - }, - "node_modules/property-information/lib/util/create.js": { - "bytesInOutput": 271 - }, - "node_modules/property-information/lib/aria.js": { - "bytesInOutput": 912 - }, - "node_modules/property-information/lib/util/case-sensitive-transform.js": { - "bytesInOutput": 38 - }, - "node_modules/property-information/lib/util/case-insensitive-transform.js": { - "bytesInOutput": 46 - }, - "node_modules/property-information/lib/html.js": { - "bytesInOutput": 4246 - }, - "node_modules/property-information/lib/svg.js": { - "bytesInOutput": 10134 - }, - "node_modules/property-information/lib/xlink.js": { - "bytesInOutput": 208 - }, - "node_modules/property-information/lib/xmlns.js": { - "bytesInOutput": 118 - }, - "node_modules/property-information/lib/xml.js": { - "bytesInOutput": 132 - }, - "node_modules/property-information/lib/find.js": { - "bytesInOutput": 500 - }, - "node_modules/property-information/index.js": { - "bytesInOutput": 65 - }, - "node_modules/zwitch/index.js": { - "bytesInOutput": 278 - }, - "node_modules/stringify-entities/lib/core.js": { - "bytesInOutput": 663 - }, - "node_modules/stringify-entities/lib/util/to-hexadecimal.js": { - "bytesInOutput": 134 - }, - "node_modules/stringify-entities/lib/util/to-decimal.js": { - "bytesInOutput": 106 - }, - "node_modules/character-entities-legacy/index.js": { - "bytesInOutput": 839 - }, - "node_modules/character-entities-html4/index.js": { - "bytesInOutput": 3481 - }, - "node_modules/stringify-entities/lib/constant/dangerous.js": { - "bytesInOutput": 63 - }, - "node_modules/stringify-entities/lib/util/to-named.js": { - "bytesInOutput": 297 - }, - "node_modules/stringify-entities/lib/util/format-smart.js": { - "bytesInOutput": 341 - }, - "node_modules/stringify-entities/lib/index.js": { - "bytesInOutput": 59 - }, - "node_modules/hast-util-to-html/lib/handle/comment.js": { - "bytesInOutput": 317 - }, - "node_modules/hast-util-to-html/lib/handle/doctype.js": { - "bytesInOutput": 119 - }, - "node_modules/ccount/index.js": { - "bytesInOutput": 172 - }, - "node_modules/comma-separated-tokens/index.js": { - "bytesInOutput": 310 - }, - "node_modules/space-separated-tokens/index.js": { - "bytesInOutput": 120 - }, - "node_modules/hast-util-whitespace/lib/index.js": { - "bytesInOutput": 144 - }, - "node_modules/hast-util-whitespace/index.js": { - "bytesInOutput": 0 - }, - "node_modules/hast-util-to-html/lib/omission/util/siblings.js": { - "bytesInOutput": 154 - }, - "node_modules/hast-util-to-html/lib/omission/omission.js": { - "bytesInOutput": 117 - }, - "node_modules/hast-util-to-html/lib/omission/closing.js": { - "bytesInOutput": 2245 - }, - "node_modules/hast-util-to-html/lib/omission/opening.js": { - "bytesInOutput": 948 - }, - "node_modules/hast-util-to-html/lib/handle/element.js": { - "bytesInOutput": 2301 - }, - "node_modules/hast-util-to-html/lib/handle/text.js": { - "bytesInOutput": 193 - }, - "node_modules/hast-util-to-html/lib/handle/raw.js": { - "bytesInOutput": 78 - }, - "node_modules/hast-util-to-html/lib/handle/root.js": { - "bytesInOutput": 37 - }, - "node_modules/hast-util-to-html/lib/handle/index.js": { - "bytesInOutput": 253 - }, - "node_modules/hast-util-to-html/lib/index.js": { - "bytesInOutput": 1143 - }, - "node_modules/hast-util-to-html/index.js": { - "bytesInOutput": 0 - }, - "node_modules/shiki/dist/bundle-full.mjs": { - "bytesInOutput": 262 - }, - "node_modules/shiki/dist/langs.mjs": { - "bytesInOutput": 18553 - }, - "node_modules/shiki/dist/themes.mjs": { - "bytesInOutput": 6756 - }, - "node_modules/@shikijs/engine-oniguruma/dist/index.mjs": { - "bytesInOutput": 6825 - }, - "node_modules/shiki/dist/index.mjs": { - "bytesInOutput": 0 - }, - "src/PrismPlugin.ts": { - "bytesInOutput": 909 - }, - "node_modules/unist-util-is/lib/index.js": { - "bytesInOutput": 764 - }, - "node_modules/unist-util-is/index.js": { - "bytesInOutput": 0 - }, - "node_modules/css-selector-parser/dist/mjs/indexes.js": { - "bytesInOutput": 363 - }, - "node_modules/css-selector-parser/dist/mjs/pseudo-signatures.js": { - "bytesInOutput": 771 - }, - "node_modules/css-selector-parser/dist/mjs/syntax-definitions.js": { - "bytesInOutput": 6346 - }, - "node_modules/css-selector-parser/dist/mjs/utils.js": { - "bytesInOutput": 385 - }, - "node_modules/css-selector-parser/dist/mjs/parser.js": { - "bytesInOutput": 9554 - }, - "node_modules/css-selector-parser/dist/mjs/index.js": { - "bytesInOutput": 0 - }, - "node_modules/css-selector-parser/dist/mjs/ast.js": { - "bytesInOutput": 1182 - }, - "node_modules/hast-util-select/lib/parse.js": { - "bytesInOutput": 150 - }, - "node_modules/direction/index.js": { - "bytesInOutput": 321 - }, - "node_modules/hast-util-to-string/lib/index.js": { - "bytesInOutput": 233 - }, - "node_modules/hast-util-to-string/index.js": { - "bytesInOutput": 0 - }, - "node_modules/unist-util-visit-parents/lib/index.js": { - "bytesInOutput": 824 - }, - "node_modules/unist-util-visit-parents/index.js": { - "bytesInOutput": 0 - }, - "node_modules/unist-util-visit/lib/index.js": { - "bytesInOutput": 205 - }, - "node_modules/unist-util-visit/index.js": { - "bytesInOutput": 0 - }, - "node_modules/hast-util-select/lib/enter-state.js": { - "bytesInOutput": 1241 - }, - "node_modules/hast-util-select/lib/attribute.js": { - "bytesInOutput": 672 - }, - "node_modules/hast-util-select/lib/class-name.js": { - "bytesInOutput": 79 - }, - "node_modules/hast-util-select/lib/id.js": { - "bytesInOutput": 49 - }, - "node_modules/hast-util-select/lib/name.js": { - "bytesInOutput": 43 - }, - "node_modules/bcp-47-match/index.js": { - "bytesInOutput": 940 - }, - "node_modules/hast-util-has-property/lib/index.js": { - "bytesInOutput": 132 - }, - "node_modules/hast-util-has-property/index.js": { - "bytesInOutput": 0 - }, - "node_modules/nth-check/lib/esm/parse.js": { - "bytesInOutput": 618 - }, - "node_modules/nth-check/lib/esm/compile.js": { - "bytesInOutput": 267 - }, - "node_modules/nth-check/lib/esm/index.js": { - "bytesInOutput": 32 - }, - "node_modules/hast-util-select/lib/pseudo.js": { - "bytesInOutput": 3800 - }, - "node_modules/hast-util-select/lib/test.js": { - "bytesInOutput": 388 - }, - "node_modules/hast-util-select/lib/walk.js": { - "bytesInOutput": 1807 - }, - "node_modules/hast-util-select/lib/index.js": { - "bytesInOutput": 367 - }, - "node_modules/hast-util-select/index.js": { - "bytesInOutput": 0 - }, - "node_modules/hast-util-parse-selector/lib/index.js": { - "bytesInOutput": 324 - }, - "node_modules/hast-util-parse-selector/index.js": { - "bytesInOutput": 0 - }, - "node_modules/hastscript/lib/create-h.js": { - "bytesInOutput": 1969 - }, - "node_modules/hastscript/lib/svg-case-sensitive-tag-names.js": { - "bytesInOutput": 560 - }, - "node_modules/hastscript/lib/index.js": { - "bytesInOutput": 37 - }, - "node_modules/hastscript/index.js": { - "bytesInOutput": 0 - }, - "node_modules/postcss/lib/postcss.mjs": { - "bytesInOutput": 574 - }, - "node_modules/@expressive-code/core/dist/index.js": { - "bytesInOutput": 85751 - }, - "node_modules/@ctrl/tinycolor/dist/module/util.js": { - "bytesInOutput": 612 - }, - "node_modules/@ctrl/tinycolor/dist/module/conversion.js": { - "bytesInOutput": 2352 - }, - "node_modules/@ctrl/tinycolor/dist/module/css-color-names.js": { - "bytesInOutput": 2959 - }, - "node_modules/@ctrl/tinycolor/dist/module/format-input.js": { - "bytesInOutput": 2310 - }, - "node_modules/@ctrl/tinycolor/dist/module/index.js": { - "bytesInOutput": 5213 - }, - "node_modules/@ctrl/tinycolor/dist/module/readability.js": { - "bytesInOutput": 151 - }, - "src/themes/ObsidianTheme.ts": { - "bytesInOutput": 14123 - }, - "src/themes/ThemeMapper.ts": { - "bytesInOutput": 1532 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/langs.mjs": { - "bytesInOutput": 18382 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/themes.mjs": { - "bytesInOutput": 6033 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types/dist/index.mjs": { - "bytesInOutput": 76 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/index.mjs": { - "bytesInOutput": 30259 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma/dist/index.mjs": { - "bytesInOutput": 6887 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core/dist/shared/core.Bn_XU0Iv.mjs": { - "bytesInOutput": 165 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/bundle-full.mjs": { - "bytesInOutput": 241 - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki/dist/index.mjs": { - "bytesInOutput": 0 - }, - "node_modules/@expressive-code/plugin-shiki/dist/index.js": { - "bytesInOutput": 8333 - }, - "node_modules/@expressive-code/core/dist/hast.js": { - "bytesInOutput": 1068 - }, - "node_modules/@expressive-code/plugin-collapsible-sections/dist/index.js": { - "bytesInOutput": 5367 - }, - "node_modules/@expressive-code/plugin-text-markers/dist/index.js": { - "bytesInOutput": 11273 - }, - "node_modules/@expressive-code/plugin-line-numbers/dist/index.js": { - "bytesInOutput": 1211 - }, - "node_modules/@expressive-code/plugin-frames/dist/index.js": { - "bytesInOutput": 16379 - }, - "src/themes/ECTheme.ts": { - "bytesInOutput": 3662 - }, - "src/Highlighter.ts": { - "bytesInOutput": 4050 - }, - "node_modules/@shikijs/transformers/dist/index.mjs": { - "bytesInOutput": 4584 - } - }, - "bytes": 19043566 - } - } -} \ No newline at end of file diff --git a/package.json b/package.json index 7702b30..20055b3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "shiki-highlighter", - "version": "0.5.1", + "version": "0.5.0", "description": "Highlight code blocks with Shiki.", "main": "main.js", "scripts": { @@ -22,38 +22,36 @@ "author": "Moritz Jung", "license": "MIT", "devDependencies": { - "@codemirror/language": "^6.10.6", - "@codemirror/state": "^6.4.1", - "@codemirror/view": "^6.35.0", - "@eslint/js": "^9.16.0", - "@expressive-code/core": "^0.38.3", - "@expressive-code/plugin-collapsible-sections": "^0.38.3", - "@expressive-code/plugin-frames": "^0.38.3", - "@expressive-code/plugin-line-numbers": "^0.38.3", - "@expressive-code/plugin-shiki": "^0.38.3", - "@expressive-code/plugin-text-markers": "^0.38.3", + "@codemirror/language": "^6.11.0", + "@codemirror/state": "^6.5.2", + "@codemirror/view": "^6.36.8", + "@eslint/js": "^9.27.0", + "@expressive-code/core": "^0.41.2", + "@expressive-code/plugin-collapsible-sections": "^0.41.2", + "@expressive-code/plugin-frames": "^0.41.2", + "@expressive-code/plugin-line-numbers": "^0.41.2", + "@expressive-code/plugin-shiki": "^0.41.2", + "@expressive-code/plugin-text-markers": "^0.41.2", "@happy-dom/global-registrator": "^17.4.7", "@lemons_dev/parsinom": "^0.0.12", "@lezer/common": "^1.2.3", "@shikijs/transformers": "^3.4.2", "@tsconfig/svelte": "^5.0.4", - "@types/bun": "^1.1.14", - "@types/eslint__js": "^8.42.3", - "builtin-modules": "^4.0.0", - "bun": "^1.2.13", + "@types/bun": "^1.2.13", + "builtin-modules": "^5.0.0", "esbuild": "^0.25.4", "esbuild-plugin-copy-watch": "^2.3.1", - "esbuild-plugins-node-modules-polyfill": "^1.6.8", - "eslint": "^9.16.0", - "eslint-plugin-no-relative-import-paths": "^1.5.5", + "esbuild-plugins-node-modules-polyfill": "^1.7.0", + "eslint": "^9.27.0", + "eslint-plugin-no-relative-import-paths": "^1.6.1", "eslint-plugin-only-warn": "^1.1.0", - "itertools-ts": "^1.27.1", + "itertools-ts": "^2.2.0", "obsidian": "latest", - "prettier": "^3.4.2", + "prettier": "^3.5.3", "shiki": "^3.4.2", "string-argv": "^0.3.2", "tslib": "^2.8.1", - "typescript": "^5.7.2", - "typescript-eslint": "^8.17.0" + "typescript": "^5.8.3", + "typescript-eslint": "^8.32.1" } -} +} \ No newline at end of file From 1802d573d5987ed858a49fd90748771a495c8023 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 19:42:43 +0800 Subject: [PATCH 10/66] feat: add setting option: renderMode --- .github/workflows/build.yml | 8 ++++++-- src/Highlighter.ts | 7 ------- src/main.ts | 31 +++++++++++++++---------------- src/settings/Settings.ts | 2 ++ src/settings/SettingsTab.ts | 15 +++++++++++++++ 5 files changed, 38 insertions(+), 25 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index cc52542..249387a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -17,10 +17,14 @@ jobs: uses: actions/setup-node@v4 with: node-version: '22' + - name: Install Bun + uses: oven-sh/setup-bun@v1 + with: + bun-version: latest - name: build run: | - npm ci - npm run build + bun install + bun run build - name: upload build artifact if: always() uses: actions/upload-artifact@v4 diff --git a/src/Highlighter.ts b/src/Highlighter.ts index d77de89..13bf334 100644 --- a/src/Highlighter.ts +++ b/src/Highlighter.ts @@ -9,13 +9,6 @@ import { type BundledLanguage, type ThemedToken, } from 'shiki'; -import { - transformerNotationDiff, - transformerNotationHighlight, - transformerNotationFocus, - transformerNotationErrorLevel, - transformerMetaHighlight, -} from '@shikijs/transformers'; import { ThemeMapper } from 'src/themes/ThemeMapper'; import { pluginShiki } from '@expressive-code/plugin-shiki'; import { pluginCollapsibleSections } from '@expressive-code/plugin-collapsible-sections'; diff --git a/src/main.ts b/src/main.ts index 5b866b6..a3a3f57 100644 --- a/src/main.ts +++ b/src/main.ts @@ -7,11 +7,14 @@ import { filterHighlightAllPlugin } from 'src/PrismPlugin'; import { CodeHighlighter } from 'src/Highlighter'; import { - transformerNotationDiff, - transformerNotationHighlight, - transformerNotationFocus, - transformerNotationErrorLevel, - transformerMetaHighlight, + transformerNotationDiff, + transformerNotationHighlight, + transformerNotationFocus, + transformerNotationErrorLevel, + transformerNotationWordHighlight, + + transformerMetaHighlight, + transformerMetaWordHighlight, } from '@shikijs/transformers'; import { codeToHtml } from 'shiki'; @@ -110,11 +113,8 @@ export default class ShikiPlugin extends Plugin { return; } } - - let option: 'pre'|'old'|'textarea' = 'textarea' // TODO as a new setting option - // @ts-ignore - if (option === 'textarea') { + if (this.settings.renderMode === 'textarea') { // - div // - span // - pre @@ -161,13 +161,8 @@ export default class ShikiPlugin extends Plugin { // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) this.codeblock_saveContent(language, newValue, el, ctx) } - - // This method is ineffective. When re-rendering the el, the div inside will be destroyed and cannot be retained! - // let cacheEl = el.querySelector('.obsidian-shiki-plugin'); - // if (!cacheEl) { } - // @ts-ignore - else if (option === 'pre') { + else if (this.settings.renderMode === 'pre') { this.codeblock_getPre(language, source).then(pre => el.innerHTML = pre); } else { @@ -187,13 +182,16 @@ export default class ShikiPlugin extends Plugin { const pre:string = await codeToHtml(source, { lang: language, theme: this.settings.theme, + // https://shiki.style/packages/transformers transformers: [ - transformerNotationDiff(), transformerNotationDiff({ matchAlgorithm: 'v3' }), transformerNotationHighlight(), transformerNotationFocus(), transformerNotationErrorLevel(), + transformerNotationWordHighlight(), + transformerMetaHighlight(), + transformerMetaWordHighlight(), ], }) return pre @@ -232,6 +230,7 @@ export default class ShikiPlugin extends Plugin { return; } + // change editor.transaction({ // EditorTransaction // replaceSelection, changes: [{ diff --git a/src/settings/Settings.ts b/src/settings/Settings.ts index a4e3e13..1108940 100644 --- a/src/settings/Settings.ts +++ b/src/settings/Settings.ts @@ -3,6 +3,7 @@ export interface Settings { customThemeFolder: string; customLanguageFolder: string; theme: string; + renderMode: 'textarea'|'pre'|'codemirror'; preferThemeColors: boolean; inlineHighlighting: boolean; } @@ -12,6 +13,7 @@ export const DEFAULT_SETTINGS: Settings = { customThemeFolder: '', customLanguageFolder: '', theme: 'obsidian-theme', + renderMode: 'textarea', preferThemeColors: true, inlineHighlighting: true, }; diff --git a/src/settings/SettingsTab.ts b/src/settings/SettingsTab.ts index ce7044d..ce75ded 100644 --- a/src/settings/SettingsTab.ts +++ b/src/settings/SettingsTab.ts @@ -48,6 +48,21 @@ export class ShikiSettingsTab extends PluginSettingTab { }); }); + new Setting(this.containerEl) + .setName('RenderMode') + .setDesc('Select the renderMode for the code blocks.') + .addDropdown(dropdown => { + dropdown.addOptions({ + 'textarea': 'textarea', + 'pre': 'pre', + 'codemirror': 'codemirror', + }); + dropdown.setValue(this.plugin.settings.renderMode).onChange(async value => { + this.plugin.settings.renderMode = value as 'textarea'|'pre'|'codemirror'; + await this.plugin.saveSettings(); + }); + }); + const customThemeFolderSetting = new Setting(this.containerEl) .setName('Custom themes folder location') .setDesc('Folder relative to your Vault where custom JSON theme files are located.') From 5643821ead1c31428e43879ed793c9e18448e67b Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 20:08:22 +0800 Subject: [PATCH 11/66] feat: add metaHighlight --- src/main.ts | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/src/main.ts b/src/main.ts index a3a3f57..019af0d 100644 --- a/src/main.ts +++ b/src/main.ts @@ -150,11 +150,11 @@ export default class ShikiPlugin extends Plugin { textarea.setAttribute(key, val); }); // async part - this.codeblock_getPre(language, source).then(pre => span.innerHTML = pre); + this.codeblock_getPre(language, source, el, ctx).then(pre => span.innerHTML = pre); textarea.value = source; textarea.oninput = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value - this.codeblock_getPre(language, newValue).then(pre => span.innerHTML = pre); + this.codeblock_getPre(language, newValue, el, ctx).then(pre => span.innerHTML = pre); } textarea.onchange = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value @@ -163,7 +163,7 @@ export default class ShikiPlugin extends Plugin { } } else if (this.settings.renderMode === 'pre') { - this.codeblock_getPre(language, source).then(pre => el.innerHTML = pre); + this.codeblock_getPre(language, source, el, ctx).then(pre => el.innerHTML = pre); } else { const codeBlock = new CodeBlock(this, el, source, language, ctx); @@ -178,10 +178,26 @@ export default class ShikiPlugin extends Plugin { } } - async codeblock_getPre(language:string, source:string): Promise { + async codeblock_getPre(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { + // lanugageMeta (allow both ends space, allow null string) + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) { + new Notice("Warning: whitout editor!", 3000) + throw('Warning: whitout editor!') + } + const lines = sectionInfo.text.split('\n') + if (lines.length < sectionInfo.lineStart + 1) { + new Notice("Warning: el ctx error!", 3000) + throw('Warning: el ctx error!') + } + // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` + const languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') + + // pre html string const pre:string = await codeToHtml(source, { lang: language, theme: this.settings.theme, + meta: { __raw: languageMeta }, // https://shiki.style/packages/transformers transformers: [ transformerNotationDiff({ matchAlgorithm: 'v3' }), @@ -220,8 +236,8 @@ export default class ShikiPlugin extends Plugin { new Notice("Warning: whitout editor!", 3000) return; } - sectionInfo.lineStart; // index in (```) - sectionInfo.lineEnd; // index in (```), Let's not modify the fence part + // sectionInfo.lineStart; // index in (```) + // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part // editor const editor = this.app.workspace.activeEditor?.editor; From ea9f1e06b333fcb629d652816a809b953c78cb63 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 20:30:59 +0800 Subject: [PATCH 12/66] chore: code comment --- src/main.ts | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/src/main.ts b/src/main.ts index 019af0d..ef964c0 100644 --- a/src/main.ts +++ b/src/main.ts @@ -123,8 +123,12 @@ export default class ShikiPlugin extends Plugin { div.setAttribute('relative', ''); div.setAttribute('float-left', ''); div.setAttribute('min-w-full', ''); // div.setAttribute('min-h-100', ''); const span = document.createElement('span'); div.appendChild(span); const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); - // 这些属性很奇怪,我抄了shiki.style上的属性。但支撑这些的,是许多类似 `[absolute=""]` 这样选择器的css - // 也许是为了方便样式覆盖 + // TODO + // These attributes are very strange. I copied the attributes on `shiki.style`. + // But what supports all these are many css selectors like '[absolute=""]' + // Perhaps it is for the convenience of style overlay + // + // But in obsidian, I don't think it's necessary to do so. const attributes = { 'whitespace-pre': '', 'overflow-auto': '', @@ -216,18 +220,25 @@ export default class ShikiPlugin extends Plugin { /** * Save textarea text content to codeBlock markdown source * - * Data security (Importance) 数据安全 + * Data security (Importance) * - Make sure `Ctrl+z` is normal: use transaction * - Make sure check error: try-catch * - Make sure to remind users of errors: use Notice * - Avoid overwriting the original data with incorrect data, this is unacceptable * - * 更新优化 - * - 我们需要确保在更新代码块内容时不会重新创建textarea元素,而应复用,避免光标位置改变 - * - 减少更新频率,减少事务次数 (500ms) + * Refresh strategy1 (unable, todo): real-time, debounce + * - We need to ensure that the textarea element is not recreated when updating + * the content of the code block. It should be reused to avoid changes in the cursor position. + * - Reduce the update frequency and the number of transactions. + * Multiple calls within a certain period of time will only become one. (debounce) * - * 可复用模块 - * - 其他obsidian也需要这个模块,可以写通用些 + * Refresh strategy2 (enable): onchange emit + * - It is better implemented under the obsidian architecture. + * Strategy1 requires additional processing: cache el + * - **Disadvantage**: Can't use ctrl+z well in the code block. + * + * Universal + * - This should be a universal module. It has nothing to do with the logic of the plugin. */ async codeblock_saveContent(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { // range From 1e923826f3f6da515b24032dee8f5d91e2b61f37 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 20:39:53 +0800 Subject: [PATCH 13/66] chore: delete package-lock.json --- package-lock.json | 6364 --------------------------------------------- src/main.ts | 5 +- 2 files changed, 3 insertions(+), 6366 deletions(-) delete mode 100644 package-lock.json diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 2e5cad9..0000000 --- a/package-lock.json +++ /dev/null @@ -1,6364 +0,0 @@ -{ - "name": "shiki-highlighter", - "version": "0.5.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "shiki-highlighter", - "version": "0.5.0", - "license": "MIT", - "devDependencies": { - "@codemirror/language": "^6.10.6", - "@codemirror/state": "^6.4.1", - "@codemirror/view": "^6.35.0", - "@eslint/js": "^9.16.0", - "@expressive-code/core": "^0.38.3", - "@expressive-code/plugin-collapsible-sections": "^0.38.3", - "@expressive-code/plugin-frames": "^0.38.3", - "@expressive-code/plugin-line-numbers": "^0.38.3", - "@expressive-code/plugin-shiki": "^0.38.3", - "@expressive-code/plugin-text-markers": "^0.38.3", - "@happy-dom/global-registrator": "^17.4.7", - "@lemons_dev/parsinom": "^0.0.12", - "@lezer/common": "^1.2.3", - "@shikijs/transformers": "^3.4.2", - "@tsconfig/svelte": "^5.0.4", - "@types/bun": "^1.1.14", - "@types/eslint__js": "^8.42.3", - "builtin-modules": "^4.0.0", - "bun": "^1.2.13", - "esbuild": "^0.25.4", - "esbuild-plugin-copy-watch": "^2.3.1", - "esbuild-plugins-node-modules-polyfill": "^1.6.8", - "eslint": "^9.16.0", - "eslint-plugin-no-relative-import-paths": "^1.5.5", - "eslint-plugin-only-warn": "^1.1.0", - "itertools-ts": "^1.27.1", - "obsidian": "latest", - "prettier": "^3.4.2", - "shiki": "^3.4.2", - "string-argv": "^0.3.2", - "tslib": "^2.8.1", - "typescript": "^5.7.2", - "typescript-eslint": "^8.17.0" - } - }, - "node_modules/@codemirror/language": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.11.0.tgz", - "integrity": "sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ==", - "dev": true, - "dependencies": { - "@codemirror/state": "^6.0.0", - "@codemirror/view": "^6.23.0", - "@lezer/common": "^1.1.0", - "@lezer/highlight": "^1.0.0", - "@lezer/lr": "^1.0.0", - "style-mod": "^4.0.0" - } - }, - "node_modules/@codemirror/state": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.5.2.tgz", - "integrity": "sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==", - "dev": true, - "dependencies": { - "@marijn/find-cluster-break": "^1.0.0" - } - }, - "node_modules/@codemirror/view": { - "version": "6.36.8", - "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.36.8.tgz", - "integrity": "sha512-yoRo4f+FdnD01fFt4XpfpMCcCAo9QvZOtbrXExn4SqzH32YC6LgzqxfLZw/r6Ge65xyY03mK/UfUqrVw1gFiFg==", - "dev": true, - "dependencies": { - "@codemirror/state": "^6.5.0", - "style-mod": "^4.1.0", - "w3c-keyname": "^2.2.4" - } - }, - "node_modules/@ctrl/tinycolor": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-4.1.0.tgz", - "integrity": "sha512-WyOx8cJQ+FQus4Mm4uPIZA64gbk3Wxh0so5Lcii0aJifqwoVOlfFtorjLE0Hen4OYyHZMXDWqMmaQemBhgxFRQ==", - "dev": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.4.tgz", - "integrity": "sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.4.tgz", - "integrity": "sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.4.tgz", - "integrity": "sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.4.tgz", - "integrity": "sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.4.tgz", - "integrity": "sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.4.tgz", - "integrity": "sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.4.tgz", - "integrity": "sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.4.tgz", - "integrity": "sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.4.tgz", - "integrity": "sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.4.tgz", - "integrity": "sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.4.tgz", - "integrity": "sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.4.tgz", - "integrity": "sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.4.tgz", - "integrity": "sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.4.tgz", - "integrity": "sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.4.tgz", - "integrity": "sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.4.tgz", - "integrity": "sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.4.tgz", - "integrity": "sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.4.tgz", - "integrity": "sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.4.tgz", - "integrity": "sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.4.tgz", - "integrity": "sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.4.tgz", - "integrity": "sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.4.tgz", - "integrity": "sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.4.tgz", - "integrity": "sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.4.tgz", - "integrity": "sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.4.tgz", - "integrity": "sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", - "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", - "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/config-array": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", - "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", - "dev": true, - "dependencies": { - "@eslint/object-schema": "^2.1.6", - "debug": "^4.3.1", - "minimatch": "^3.1.2" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/config-helpers": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.2.tgz", - "integrity": "sha512-+GPzk8PlG0sPpzdU5ZvIRMPidzAnZDl/s9L+y13iodqvb8leL53bTannOrQ/Im7UkpsmFU5Ily5U60LWixnmLg==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/core": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz", - "integrity": "sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", - "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/js": { - "version": "9.27.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.27.0.tgz", - "integrity": "sha512-G5JD9Tu5HJEu4z2Uo4aHY2sLV64B7CDMXxFzqzjl3NKd6RVzSXNoE80jk7Y0lJkTTkjiIhBAqmlYwjuBY3tvpA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - } - }, - "node_modules/@eslint/object-schema": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", - "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@eslint/plugin-kit": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.1.tgz", - "integrity": "sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==", - "dev": true, - "dependencies": { - "@eslint/core": "^0.14.0", - "levn": "^0.4.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/@expressive-code/core": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/core/-/core-0.38.3.tgz", - "integrity": "sha512-s0/OtdRpBONwcn23O8nVwDNQqpBGKscysejkeBkwlIeHRLZWgiTVrusT5Idrdz1d8cW5wRk9iGsAIQmwDPXgJg==", - "dev": true, - "dependencies": { - "@ctrl/tinycolor": "^4.0.4", - "hast-util-select": "^6.0.2", - "hast-util-to-html": "^9.0.1", - "hast-util-to-text": "^4.0.1", - "hastscript": "^9.0.0", - "postcss": "^8.4.38", - "postcss-nested": "^6.0.1", - "unist-util-visit": "^5.0.0", - "unist-util-visit-parents": "^6.0.1" - } - }, - "node_modules/@expressive-code/plugin-collapsible-sections": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-collapsible-sections/-/plugin-collapsible-sections-0.38.3.tgz", - "integrity": "sha512-0r1k4k5S7GBLIRBYFkMKeIyD9iYcwM+LBrwoxZtd9TtBYJ3ziWBleFlCoOA3fo/Mj2YcaN7ZRIscMzYY9JBWrA==", - "dev": true, - "dependencies": { - "@expressive-code/core": "^0.38.3" - } - }, - "node_modules/@expressive-code/plugin-frames": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-frames/-/plugin-frames-0.38.3.tgz", - "integrity": "sha512-qL2oC6FplmHNQfZ8ZkTR64/wKo9x0c8uP2WDftR/ydwN/yhe1ed7ZWYb8r3dezxsls+tDokCnN4zYR594jbpvg==", - "dev": true, - "dependencies": { - "@expressive-code/core": "^0.38.3" - } - }, - "node_modules/@expressive-code/plugin-line-numbers": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-line-numbers/-/plugin-line-numbers-0.38.3.tgz", - "integrity": "sha512-QbK9NL44ST9w5ANVEu0a7fkjlq+fXgxyPqiSyFC4Nw/sAXd0MUwT1C8V0qlve4pZYLz53CR9tn4JQQbR0Z1tOg==", - "dev": true, - "dependencies": { - "@expressive-code/core": "^0.38.3" - } - }, - "node_modules/@expressive-code/plugin-shiki": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-shiki/-/plugin-shiki-0.38.3.tgz", - "integrity": "sha512-kqHnglZeesqG3UKrb6e9Fq5W36AZ05Y9tCREmSN2lw8LVTqENIeCIkLDdWtQ5VoHlKqwUEQFTVlRehdwoY7Gmw==", - "dev": true, - "dependencies": { - "@expressive-code/core": "^0.38.3", - "shiki": "^1.22.2" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/core": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.29.2.tgz", - "integrity": "sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/engine-javascript": "1.29.2", - "@shikijs/engine-oniguruma": "1.29.2", - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.4" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-javascript": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.29.2.tgz", - "integrity": "sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", - "oniguruma-to-es": "^2.2.0" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/engine-oniguruma": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz", - "integrity": "sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/langs": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.2.tgz", - "integrity": "sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "1.29.2" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/themes": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.2.tgz", - "integrity": "sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "1.29.2" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/@shikijs/types": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.29.2.tgz", - "integrity": "sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/oniguruma-to-es": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-2.3.0.tgz", - "integrity": "sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex-xs": "^1.0.0", - "regex": "^5.1.1", - "regex-recursion": "^5.1.1" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/regex": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex/-/regex-5.1.1.tgz", - "integrity": "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "regex-utilities": "^2.3.0" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/regex-recursion": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.1.1.tgz", - "integrity": "sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==", - "dev": true, - "license": "MIT", - "dependencies": { - "regex": "^5.1.1", - "regex-utilities": "^2.3.0" - } - }, - "node_modules/@expressive-code/plugin-shiki/node_modules/shiki": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.29.2.tgz", - "integrity": "sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/core": "1.29.2", - "@shikijs/engine-javascript": "1.29.2", - "@shikijs/engine-oniguruma": "1.29.2", - "@shikijs/langs": "1.29.2", - "@shikijs/themes": "1.29.2", - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4" - } - }, - "node_modules/@expressive-code/plugin-text-markers": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-text-markers/-/plugin-text-markers-0.38.3.tgz", - "integrity": "sha512-dPK3+BVGTbTmGQGU3Fkj3jZ3OltWUAlxetMHI6limUGCWBCucZiwoZeFM/WmqQa71GyKRzhBT+iEov6kkz2xVA==", - "dev": true, - "dependencies": { - "@expressive-code/core": "^0.38.3" - } - }, - "node_modules/@happy-dom/global-registrator": { - "version": "17.4.7", - "resolved": "https://registry.npmjs.org/@happy-dom/global-registrator/-/global-registrator-17.4.7.tgz", - "integrity": "sha512-BsKWeI115LT0J/lKJ4Kz638oy4zO+nC4TLh3cYPY6BBypttPZg8Fg+EXL2If4KHMSy3Wx+yRiM+68Hr1iGgiWA==", - "dev": true, - "license": "MIT", - "dependencies": { - "happy-dom": "^17.4.7" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", - "dev": true, - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node": { - "version": "0.16.6", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", - "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", - "dev": true, - "dependencies": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.3.0" - }, - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", - "dev": true, - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/retry": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", - "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", - "dev": true, - "engines": { - "node": ">=18.18" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@jspm/core": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@jspm/core/-/core-2.1.0.tgz", - "integrity": "sha512-3sRl+pkyFY/kLmHl0cgHiFp2xEqErA8N3ECjMs7serSUBmoJ70lBa0PG5t0IM6WJgdZNyyI0R8YFfi5wM8+mzg==", - "dev": true - }, - "node_modules/@lemons_dev/parsinom": { - "version": "0.0.12", - "resolved": "https://registry.npmjs.org/@lemons_dev/parsinom/-/parsinom-0.0.12.tgz", - "integrity": "sha512-i6oUfQfhw4ZStScMpPHy8ZmLrkn29RX/uK1SBKSKPuH0w9vOFQjZ0O4ev1hdk0K/eU196mk9mAlI1bjbO4n4sQ==", - "dev": true - }, - "node_modules/@lezer/common": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.2.3.tgz", - "integrity": "sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==", - "dev": true - }, - "node_modules/@lezer/highlight": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.2.1.tgz", - "integrity": "sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA==", - "dev": true, - "dependencies": { - "@lezer/common": "^1.0.0" - } - }, - "node_modules/@lezer/lr": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-1.4.2.tgz", - "integrity": "sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==", - "dev": true, - "dependencies": { - "@lezer/common": "^1.0.0" - } - }, - "node_modules/@marijn/find-cluster-break": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@marijn/find-cluster-break/-/find-cluster-break-1.0.2.tgz", - "integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==", - "dev": true - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@oven/bun-darwin-aarch64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-darwin-aarch64/-/bun-darwin-aarch64-1.2.13.tgz", - "integrity": "sha512-AOU4O9jxRp2TXeqoEfOjEaUNZb3+SUPBN8TIEnUjpnyLWPoYJGCeNdQuCDcUkmF3MJEmEuJdyF1IeOITozpC6A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@oven/bun-darwin-x64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-darwin-x64/-/bun-darwin-x64-1.2.13.tgz", - "integrity": "sha512-kJ2iOvxY8uz5/nu+8zIjKf4LmRIHBH9pJJM2q+tA47U04Tod6k6rtntDOI8SdmRe2M5c87RfbadWdxhpYHFIWQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@oven/bun-darwin-x64-baseline": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-darwin-x64-baseline/-/bun-darwin-x64-baseline-1.2.13.tgz", - "integrity": "sha512-bZpIUOvx9np07AmH5MVXGYHWZ40m2vCpNV74fma6sCzBlssJclS2V3BZgO+lLvtUKSqnW3HAyJBGsRF34wPbNw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@oven/bun-linux-aarch64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-aarch64/-/bun-linux-aarch64-1.2.13.tgz", - "integrity": "sha512-hocSJmblX4CCjP1HpaM64I65erB+CONUCCwKzGGOfLGLobVi+vn/G56UaYWsje1y/Z7WlVaUSgKYVWl7EJ6T9g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@oven/bun-linux-aarch64-musl": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-aarch64-musl/-/bun-linux-aarch64-musl-1.2.13.tgz", - "integrity": "sha512-P56m718KXeyu4Vq5fsESFktfu+0Us1jhu/ZzgHYFRYJcm/hjs6AUA/RJtUAifFy5PNAM5IJdrYl3xPsE8Wa+pg==", - "cpu": [ - "aarch64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@oven/bun-linux-x64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64/-/bun-linux-x64-1.2.13.tgz", - "integrity": "sha512-pf8+Kn2GLrFKLcb8JSLM6Z147Af6L9GQODpnOHM4gvXQv6E/GwQg47/o+7f1XCfzib3fdzOTJlDPvvO1rnXOTA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@oven/bun-linux-x64-baseline": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-baseline/-/bun-linux-x64-baseline-1.2.13.tgz", - "integrity": "sha512-9n1ai2ejEpxEMqpbHQMWFyvacq3MYsB7gh5mxRlFwhNFPCWu/Sv6gyrO+q2vkOYgcEIGhJb6dqJ6L9vBNaL61A==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@oven/bun-linux-x64-musl": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-musl/-/bun-linux-x64-musl-1.2.13.tgz", - "integrity": "sha512-w5Ob+GM3Ww4yRA6f1N845o6wEvuwHSmipFUGaRaVp4UELrFnIV9G3pmrlBbYHFnWhk13o8Q7H1/4ZphOkCRJmQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@oven/bun-linux-x64-musl-baseline": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-musl-baseline/-/bun-linux-x64-musl-baseline-1.2.13.tgz", - "integrity": "sha512-VI8hVdfqk0QmbAbyrsIdo2O95n3fkbt72E0h3Wu69cHD1iKJqRXG28R8QoHdehoLSJnKVzRTwsUzHp764nefWQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@oven/bun-windows-x64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-windows-x64/-/bun-windows-x64-1.2.13.tgz", - "integrity": "sha512-sArgbRmT7V3mUdNFaAdUcuJsuS+oeMDZLPWFSg0gtQZpRrURs9nPzEnZMmVCFo4+kPF9Tb5ujQT9uDySh6/qVg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@oven/bun-windows-x64-baseline": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-windows-x64-baseline/-/bun-windows-x64-baseline-1.2.13.tgz", - "integrity": "sha512-Aiezu99fOUJJpzGuylOJryd6w9Syg2TBigHeXV2+RJsouBzvAnIEYIBA94ZspRq1ulD26Wmkk8Ae+jZ4edk9GA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@shikijs/core": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.4.2.tgz", - "integrity": "sha512-AG8vnSi1W2pbgR2B911EfGqtLE9c4hQBYkv/x7Z+Kt0VxhgQKcW7UNDVYsu9YxwV6u+OJrvdJrMq6DNWoBjihQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.4.2", - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.5" - } - }, - "node_modules/@shikijs/engine-javascript": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.4.2.tgz", - "integrity": "sha512-1/adJbSMBOkpScCE/SB6XkjJU17ANln3Wky7lOmrnpl+zBdQ1qXUJg2GXTYVHRq+2j3hd1DesmElTXYDgtfSOQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.4.2", - "@shikijs/vscode-textmate": "^10.0.2", - "oniguruma-to-es": "^4.3.3" - } - }, - "node_modules/@shikijs/engine-oniguruma": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.4.2.tgz", - "integrity": "sha512-zcZKMnNndgRa3ORja6Iemsr3DrLtkX3cAF7lTJkdMB6v9alhlBsX9uNiCpqofNrXOvpA3h6lHcLJxgCIhVOU5Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.4.2", - "@shikijs/vscode-textmate": "^10.0.2" - } - }, - "node_modules/@shikijs/langs": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.4.2.tgz", - "integrity": "sha512-H6azIAM+OXD98yztIfs/KH5H4PU39t+SREhmM8LaNXyUrqj2mx+zVkr8MWYqjceSjDw9I1jawm1WdFqU806rMA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.4.2" - } - }, - "node_modules/@shikijs/themes": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.4.2.tgz", - "integrity": "sha512-qAEuAQh+brd8Jyej2UDDf+b4V2g1Rm8aBIdvt32XhDPrHvDkEnpb7Kzc9hSuHUxz0Iuflmq7elaDuQAP9bHIhg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.4.2" - } - }, - "node_modules/@shikijs/transformers": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.4.2.tgz", - "integrity": "sha512-I5baLVi/ynLEOZoWSAMlACHNnG+yw5HDmse0oe+GW6U1u+ULdEB3UHiVWaHoJSSONV7tlcVxuaMy74sREDkSvg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/core": "3.4.2", - "@shikijs/types": "3.4.2" - } - }, - "node_modules/@shikijs/types": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.4.2.tgz", - "integrity": "sha512-zHC1l7L+eQlDXLnxvM9R91Efh2V4+rN3oMVS2swCBssbj2U/FBwybD1eeLaq8yl/iwT+zih8iUbTBCgGZOYlVg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4" - } - }, - "node_modules/@shikijs/vscode-textmate": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", - "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@tsconfig/svelte": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/svelte/-/svelte-5.0.4.tgz", - "integrity": "sha512-BV9NplVgLmSi4mwKzD8BD/NQ8erOY/nUE/GpgWe2ckx+wIQF5RyRirn/QsSSCPeulVpc3RA/iJt6DpfTIZps0Q==", - "dev": true - }, - "node_modules/@types/bun": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@types/bun/-/bun-1.2.13.tgz", - "integrity": "sha512-u6vXep/i9VBxoJl3GjZsl/BFIsvML8DfVDO0RYLEwtSZSp981kEO1V5NwRcO1CPJ7AmvpbnDCiMKo3JvbDEjAg==", - "dev": true, - "dependencies": { - "bun-types": "1.2.13" - } - }, - "node_modules/@types/codemirror": { - "version": "5.60.8", - "resolved": "https://registry.npmjs.org/@types/codemirror/-/codemirror-5.60.8.tgz", - "integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==", - "dev": true, - "dependencies": { - "@types/tern": "*" - } - }, - "node_modules/@types/eslint": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", - "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint__js": { - "version": "8.42.3", - "resolved": "https://registry.npmjs.org/@types/eslint__js/-/eslint__js-8.42.3.tgz", - "integrity": "sha512-alfG737uhmPdnvkrLdZLcEKJ/B8s9Y4hrZ+YAdzUeoArBlSUERA2E87ROfOaS4jd/C45fzOoZzidLc1IPwLqOw==", - "dev": true, - "dependencies": { - "@types/eslint": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", - "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", - "dev": true - }, - "node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "dev": true, - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true - }, - "node_modules/@types/mdast": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", - "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", - "dev": true, - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/node": { - "version": "22.15.18", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.18.tgz", - "integrity": "sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg==", - "dev": true, - "dependencies": { - "undici-types": "~6.21.0" - } - }, - "node_modules/@types/tern": { - "version": "0.23.9", - "resolved": "https://registry.npmjs.org/@types/tern/-/tern-0.23.9.tgz", - "integrity": "sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==", - "dev": true, - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.32.1.tgz", - "integrity": "sha512-6u6Plg9nP/J1GRpe/vcjjabo6Uc5YQPAMxsgQyGC/I0RuukiG1wIe3+Vtg3IrSCVJDmqK3j8adrtzXSENRtFgg==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.32.1", - "@typescript-eslint/type-utils": "8.32.1", - "@typescript-eslint/utils": "8.32.1", - "@typescript-eslint/visitor-keys": "8.32.1", - "graphemer": "^1.4.0", - "ignore": "^7.0.0", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", - "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.32.1.tgz", - "integrity": "sha512-LKMrmwCPoLhM45Z00O1ulb6jwyVr2kr3XJp+G+tSEZcbauNnScewcQwtJqXDhXeYPDEjZ8C1SjXm015CirEmGg==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "8.32.1", - "@typescript-eslint/types": "8.32.1", - "@typescript-eslint/typescript-estree": "8.32.1", - "@typescript-eslint/visitor-keys": "8.32.1", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.32.1.tgz", - "integrity": "sha512-7IsIaIDeZn7kffk7qXC3o6Z4UblZJKV3UBpkvRNpr5NSyLji7tvTcvmnMNYuYLyh26mN8W723xpo3i4MlD33vA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.32.1", - "@typescript-eslint/visitor-keys": "8.32.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.32.1.tgz", - "integrity": "sha512-mv9YpQGA8iIsl5KyUPi+FGLm7+bA4fgXaeRcFKRDRwDMu4iwrSHeDPipwueNXhdIIZltwCJv+NkxftECbIZWfA==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "8.32.1", - "@typescript-eslint/utils": "8.32.1", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/types": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz", - "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.32.1.tgz", - "integrity": "sha512-Y3AP9EIfYwBb4kWGb+simvPaqQoT5oJuzzj9m0i6FCY6SPvlomY2Ei4UEMm7+FXtlNJbor80ximyslzaQF6xhg==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.32.1", - "@typescript-eslint/visitor-keys": "8.32.1", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.32.1.tgz", - "integrity": "sha512-DsSFNIgLSrc89gpq1LJB7Hm1YpuhK086DRDJSNrewcGvYloWW1vZLHBTIvarKZDcAORIy/uWNx8Gad+4oMpkSA==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.32.1", - "@typescript-eslint/types": "8.32.1", - "@typescript-eslint/typescript-estree": "8.32.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz", - "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "8.32.1", - "eslint-visitor-keys": "^4.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@ungap/structured-clone": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", - "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.14.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", - "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/bcp-47-match": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/bcp-47-match/-/bcp-47-match-2.0.3.tgz", - "integrity": "sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/builtin-modules": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-4.0.0.tgz", - "integrity": "sha512-p1n8zyCkt1BVrKNFymOHjcDSAl7oq/gUvfgULv2EblgpPVQlQr9yHnWjg9IJ2MhfwPqiYqMMrr01OY7yQoK2yA==", - "dev": true, - "engines": { - "node": ">=18.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/bun": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/bun/-/bun-1.2.13.tgz", - "integrity": "sha512-EhP1MhFbicqtaRSFCbEZdkcFco8Ov47cNJcB9QmKS8U4cojKHfLU+dQR14lCvLYmtBvGgwv/Lp+9SSver2OPzQ==", - "cpu": [ - "arm64", - "x64", - "aarch64" - ], - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "os": [ - "darwin", - "linux", - "win32" - ], - "bin": { - "bun": "bin/bun.exe", - "bunx": "bin/bun.exe" - }, - "optionalDependencies": { - "@oven/bun-darwin-aarch64": "1.2.13", - "@oven/bun-darwin-x64": "1.2.13", - "@oven/bun-darwin-x64-baseline": "1.2.13", - "@oven/bun-linux-aarch64": "1.2.13", - "@oven/bun-linux-aarch64-musl": "1.2.13", - "@oven/bun-linux-x64": "1.2.13", - "@oven/bun-linux-x64-baseline": "1.2.13", - "@oven/bun-linux-x64-musl": "1.2.13", - "@oven/bun-linux-x64-musl-baseline": "1.2.13", - "@oven/bun-windows-x64": "1.2.13", - "@oven/bun-windows-x64-baseline": "1.2.13" - } - }, - "node_modules/bun-types": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/bun-types/-/bun-types-1.2.13.tgz", - "integrity": "sha512-rRjA1T6n7wto4gxhAO/ErZEtOXyEZEmnIHQfl0Dt1QQSB4QV0iP6BZ9/YB5fZaHFQ2dwHFrmPaRQ9GGMX01k9Q==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/character-entities-html4": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", - "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", - "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/confbox": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", - "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", - "dev": true - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-3.1.2.tgz", - "integrity": "sha512-WfUcL99xWDs7b3eZPoRszWVfbNo8ErCF15PTvVROjkShGlAfjIkG6hlfj/sl6/rfo5Q9x9ryJ3VqVnAZDA+gcw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/mdevils" - }, - { - "type": "patreon", - "url": "https://patreon.com/mdevils" - } - ] - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/debug": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", - "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/devlop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", - "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", - "dev": true, - "dependencies": { - "dequal": "^2.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/direction": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/direction/-/direction-2.0.1.tgz", - "integrity": "sha512-9S6m9Sukh1cZNknO1CWAr2QAWsbKLafQiyM5gZ7VgXHeuaoUwffKN4q6NC4A/Mf9iiPlOXQEKW/Mv/mh9/3YFA==", - "dev": true, - "bin": { - "direction": "cli.js" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/emoji-regex-xs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", - "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==", - "dev": true, - "license": "MIT" - }, - "node_modules/esbuild": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.4.tgz", - "integrity": "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.4", - "@esbuild/android-arm": "0.25.4", - "@esbuild/android-arm64": "0.25.4", - "@esbuild/android-x64": "0.25.4", - "@esbuild/darwin-arm64": "0.25.4", - "@esbuild/darwin-x64": "0.25.4", - "@esbuild/freebsd-arm64": "0.25.4", - "@esbuild/freebsd-x64": "0.25.4", - "@esbuild/linux-arm": "0.25.4", - "@esbuild/linux-arm64": "0.25.4", - "@esbuild/linux-ia32": "0.25.4", - "@esbuild/linux-loong64": "0.25.4", - "@esbuild/linux-mips64el": "0.25.4", - "@esbuild/linux-ppc64": "0.25.4", - "@esbuild/linux-riscv64": "0.25.4", - "@esbuild/linux-s390x": "0.25.4", - "@esbuild/linux-x64": "0.25.4", - "@esbuild/netbsd-arm64": "0.25.4", - "@esbuild/netbsd-x64": "0.25.4", - "@esbuild/openbsd-arm64": "0.25.4", - "@esbuild/openbsd-x64": "0.25.4", - "@esbuild/sunos-x64": "0.25.4", - "@esbuild/win32-arm64": "0.25.4", - "@esbuild/win32-ia32": "0.25.4", - "@esbuild/win32-x64": "0.25.4" - } - }, - "node_modules/esbuild-plugin-copy-watch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/esbuild-plugin-copy-watch/-/esbuild-plugin-copy-watch-2.3.1.tgz", - "integrity": "sha512-uBa0aWLg6Vm7kVwefwcvrZ1XiRgEB2HsVyBkyxXFR7lZ0LU9crxLEVNvoli3DX9I7aJv9K9+AYvQ2h86f4yFbA==", - "dev": true, - "dependencies": { - "@types/node": "^20.14.2", - "anymatch": "^3.1.3", - "chokidar": "^3.6.0", - "fs-extra": "^11.2.0", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3" - } - }, - "node_modules/esbuild-plugin-copy-watch/node_modules/@types/node": { - "version": "20.17.47", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.47.tgz", - "integrity": "sha512-3dLX0Upo1v7RvUimvxLeXqwrfyKxUINk0EAM83swP2mlSUcwV73sZy8XhNz8bcZ3VbsfQyC/y6jRdL5tgCNpDQ==", - "dev": true, - "dependencies": { - "undici-types": "~6.19.2" - } - }, - "node_modules/esbuild-plugin-copy-watch/node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true - }, - "node_modules/esbuild-plugins-node-modules-polyfill": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/esbuild-plugins-node-modules-polyfill/-/esbuild-plugins-node-modules-polyfill-1.7.0.tgz", - "integrity": "sha512-Z81w5ReugIBAgufGeGWee+Uxzgs5Na4LprUAK3XlJEh2ktY3LkNuEGMaZyBXxQxGK8SQDS5yKLW5QKGF5qLjYA==", - "dev": true, - "dependencies": { - "@jspm/core": "^2.1.0", - "local-pkg": "^1.0.0", - "resolve.exports": "^2.0.3" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "esbuild": ">=0.14.0 <=0.25.x" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "9.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.27.0.tgz", - "integrity": "sha512-ixRawFQuMB9DZ7fjU3iGGganFDp3+45bPOdaRurcFHSXO1e/sYwUX/FtQZpLZJR6SjMoJH8hR2pPEAfDyCoU2Q==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.20.0", - "@eslint/config-helpers": "^0.2.1", - "@eslint/core": "^0.14.0", - "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.27.0", - "@eslint/plugin-kit": "^0.3.1", - "@humanfs/node": "^0.16.6", - "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.2", - "@types/estree": "^1.0.6", - "@types/json-schema": "^7.0.15", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.6", - "debug": "^4.3.2", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.3.0", - "eslint-visitor-keys": "^4.2.0", - "espree": "^10.3.0", - "esquery": "^1.5.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^8.0.0", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://eslint.org/donate" - }, - "peerDependencies": { - "jiti": "*" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-no-relative-import-paths": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-relative-import-paths/-/eslint-plugin-no-relative-import-paths-1.6.1.tgz", - "integrity": "sha512-YZNeOnsOrJcwhFw0X29MXjIzu2P/f5X2BZDPWw1R3VUYBRFxNIh77lyoL/XrMU9ewZNQPcEvAgL/cBOT1P330A==", - "dev": true - }, - "node_modules/eslint-plugin-only-warn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-only-warn/-/eslint-plugin-only-warn-1.1.0.tgz", - "integrity": "sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/eslint-scope": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", - "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", - "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", - "dev": true, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/espree": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", - "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", - "dev": true, - "dependencies": { - "acorn": "^8.14.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exsolve": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.5.tgz", - "integrity": "sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==", - "dev": true - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", - "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", - "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/file-entry-cache": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", - "dev": true, - "dependencies": { - "flat-cache": "^4.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", - "dev": true, - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.4" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/flatted": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", - "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", - "dev": true - }, - "node_modules/fs-extra": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", - "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "node_modules/happy-dom": { - "version": "17.4.7", - "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-17.4.7.tgz", - "integrity": "sha512-NZypxadhCiV5NT4A+Y86aQVVKQ05KDmueja3sz008uJfDRwz028wd0aTiJPwo4RQlvlz0fznkEEBBCHVNWc08g==", - "dev": true, - "license": "MIT", - "dependencies": { - "webidl-conversions": "^7.0.0", - "whatwg-mimetype": "^3.0.0" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/hast-util-has-property": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-has-property/-/hast-util-has-property-3.0.0.tgz", - "integrity": "sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-is-element": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", - "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-parse-selector": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", - "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-select": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/hast-util-select/-/hast-util-select-6.0.4.tgz", - "integrity": "sha512-RqGS1ZgI0MwxLaKLDxjprynNzINEkRHY2i8ln4DDjgv9ZhcYVIHN9rlpiYsqtFwrgpYU361SyWDQcGNIBVu3lw==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "bcp-47-match": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "css-selector-parser": "^3.0.0", - "devlop": "^1.0.0", - "direction": "^2.0.0", - "hast-util-has-property": "^3.0.0", - "hast-util-to-string": "^3.0.0", - "hast-util-whitespace": "^3.0.0", - "nth-check": "^2.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0", - "unist-util-visit": "^5.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-html": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz", - "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-whitespace": "^3.0.0", - "html-void-elements": "^3.0.0", - "mdast-util-to-hast": "^13.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0", - "stringify-entities": "^4.0.0", - "zwitch": "^2.0.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-string": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", - "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-text": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", - "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "hast-util-is-element": "^3.0.0", - "unist-util-find-after": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-whitespace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", - "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-9.0.1.tgz", - "integrity": "sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^4.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/html-void-elements": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", - "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", - "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/itertools-ts": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/itertools-ts/-/itertools-ts-1.29.1.tgz", - "integrity": "sha512-mDvYXbhFg7+VobGBykzZw+FV3oUZ17mRWlelD9fRAONzSlGk3LtDMbC+f3YDLYDwpMqqz4JeaS6hrGoqrqHcAg==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/local-pkg": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.1.tgz", - "integrity": "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg==", - "dev": true, - "dependencies": { - "mlly": "^1.7.4", - "pkg-types": "^2.0.1", - "quansync": "^0.2.8" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/mdast-util-to-hast": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", - "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@ungap/structured-clone": "^1.0.0", - "devlop": "^1.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "trim-lines": "^3.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromark-util-character": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", - "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/micromark-util-encode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", - "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/micromark-util-sanitize-uri": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", - "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/micromark-util-symbol": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", - "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/micromark-util-types": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", - "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/mlly": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", - "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", - "dev": true, - "dependencies": { - "acorn": "^8.14.0", - "pathe": "^2.0.1", - "pkg-types": "^1.3.0", - "ufo": "^1.5.4" - } - }, - "node_modules/mlly/node_modules/confbox": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", - "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", - "dev": true - }, - "node_modules/mlly/node_modules/pkg-types": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", - "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", - "dev": true, - "dependencies": { - "confbox": "^0.1.8", - "mlly": "^1.7.4", - "pathe": "^2.0.1" - } - }, - "node_modules/moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/obsidian": { - "version": "1.8.7", - "resolved": "https://registry.npmjs.org/obsidian/-/obsidian-1.8.7.tgz", - "integrity": "sha512-h4bWwNFAGRXlMlMAzdEiIM2ppTGlrh7uGOJS6w4gClrsjc+ei/3YAtU2VdFUlCiPuTHpY4aBpFJJW75S1Tl/JA==", - "dev": true, - "dependencies": { - "@types/codemirror": "5.60.8", - "moment": "2.29.4" - }, - "peerDependencies": { - "@codemirror/state": "^6.0.0", - "@codemirror/view": "^6.0.0" - } - }, - "node_modules/oniguruma-parser": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/oniguruma-parser/-/oniguruma-parser-0.12.1.tgz", - "integrity": "sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==", - "dev": true, - "license": "MIT" - }, - "node_modules/oniguruma-to-es": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.3.tgz", - "integrity": "sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg==", - "dev": true, - "license": "MIT", - "dependencies": { - "oniguruma-parser": "^0.12.1", - "regex": "^6.0.1", - "regex-recursion": "^6.0.2" - } - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pathe": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", - "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", - "dev": true - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pkg-types": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz", - "integrity": "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==", - "dev": true, - "dependencies": { - "confbox": "^0.2.1", - "exsolve": "^1.0.1", - "pathe": "^2.0.3" - } - }, - "node_modules/postcss": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", - "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.8", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-nested": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", - "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "postcss-selector-parser": "^6.1.1" - }, - "engines": { - "node": ">=12.0" - }, - "peerDependencies": { - "postcss": "^8.2.14" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", - "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prettier": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", - "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", - "dev": true, - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/property-information": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", - "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/quansync": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.10.tgz", - "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/antfu" - }, - { - "type": "individual", - "url": "https://github.com/sponsors/sxzz" - } - ] - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/regex/-/regex-6.0.1.tgz", - "integrity": "sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==", - "dev": true, - "license": "MIT", - "dependencies": { - "regex-utilities": "^2.3.0" - } - }, - "node_modules/regex-recursion": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", - "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", - "dev": true, - "license": "MIT", - "dependencies": { - "regex-utilities": "^2.3.0" - } - }, - "node_modules/regex-utilities": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz", - "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==", - "dev": true, - "license": "MIT" - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/resolve.exports": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", - "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/reusify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", - "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/shiki": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.4.2.tgz", - "integrity": "sha512-wuxzZzQG8kvZndD7nustrNFIKYJ1jJoWIPaBpVe2+KHSvtzMi4SBjOxrigs8qeqce/l3U0cwiC+VAkLKSunHQQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@shikijs/core": "3.4.2", - "@shikijs/engine-javascript": "3.4.2", - "@shikijs/engine-oniguruma": "3.4.2", - "@shikijs/langs": "3.4.2", - "@shikijs/themes": "3.4.2", - "@shikijs/types": "3.4.2", - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4" - } - }, - "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/string-argv": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", - "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", - "dev": true, - "engines": { - "node": ">=0.6.19" - } - }, - "node_modules/stringify-entities": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", - "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", - "dev": true, - "dependencies": { - "character-entities-html4": "^2.0.0", - "character-entities-legacy": "^3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/style-mod": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.1.2.tgz", - "integrity": "sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==", - "dev": true - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/trim-lines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", - "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "engines": { - "node": ">=18.12" - }, - "peerDependencies": { - "typescript": ">=4.8.4" - } - }, - "node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/typescript-eslint": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.32.1.tgz", - "integrity": "sha512-D7el+eaDHAmXvrZBy1zpzSNIRqnCOrkwTgZxTu3MUqRWk8k0q9m9Ho4+vPf7iHtgUfrK/o8IZaEApsxPlHTFCg==", - "dev": true, - "dependencies": { - "@typescript-eslint/eslint-plugin": "8.32.1", - "@typescript-eslint/parser": "8.32.1", - "@typescript-eslint/utils": "8.32.1" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" - } - }, - "node_modules/ufo": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", - "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", - "dev": true - }, - "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", - "dev": true - }, - "node_modules/unist-util-find-after": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", - "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/w3c-keyname": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", - "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==", - "dev": true - }, - "node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-mimetype": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - } - }, - "dependencies": { - "@codemirror/language": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.11.0.tgz", - "integrity": "sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ==", - "dev": true, - "requires": { - "@codemirror/state": "^6.0.0", - "@codemirror/view": "^6.23.0", - "@lezer/common": "^1.1.0", - "@lezer/highlight": "^1.0.0", - "@lezer/lr": "^1.0.0", - "style-mod": "^4.0.0" - } - }, - "@codemirror/state": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.5.2.tgz", - "integrity": "sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==", - "dev": true, - "requires": { - "@marijn/find-cluster-break": "^1.0.0" - } - }, - "@codemirror/view": { - "version": "6.36.8", - "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.36.8.tgz", - "integrity": "sha512-yoRo4f+FdnD01fFt4XpfpMCcCAo9QvZOtbrXExn4SqzH32YC6LgzqxfLZw/r6Ge65xyY03mK/UfUqrVw1gFiFg==", - "dev": true, - "requires": { - "@codemirror/state": "^6.5.0", - "style-mod": "^4.1.0", - "w3c-keyname": "^2.2.4" - } - }, - "@ctrl/tinycolor": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-4.1.0.tgz", - "integrity": "sha512-WyOx8cJQ+FQus4Mm4uPIZA64gbk3Wxh0so5Lcii0aJifqwoVOlfFtorjLE0Hen4OYyHZMXDWqMmaQemBhgxFRQ==", - "dev": true - }, - "@esbuild/aix-ppc64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.4.tgz", - "integrity": "sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==", - "dev": true, - "optional": true - }, - "@esbuild/android-arm": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.4.tgz", - "integrity": "sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==", - "dev": true, - "optional": true - }, - "@esbuild/android-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.4.tgz", - "integrity": "sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==", - "dev": true, - "optional": true - }, - "@esbuild/android-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.4.tgz", - "integrity": "sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==", - "dev": true, - "optional": true - }, - "@esbuild/darwin-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.4.tgz", - "integrity": "sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==", - "dev": true, - "optional": true - }, - "@esbuild/darwin-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.4.tgz", - "integrity": "sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==", - "dev": true, - "optional": true - }, - "@esbuild/freebsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.4.tgz", - "integrity": "sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==", - "dev": true, - "optional": true - }, - "@esbuild/freebsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.4.tgz", - "integrity": "sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-arm": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.4.tgz", - "integrity": "sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.4.tgz", - "integrity": "sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-ia32": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.4.tgz", - "integrity": "sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==", - "dev": true, - "optional": true - }, - "@esbuild/linux-loong64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.4.tgz", - "integrity": "sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==", - "dev": true, - "optional": true - }, - "@esbuild/linux-mips64el": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.4.tgz", - "integrity": "sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==", - "dev": true, - "optional": true - }, - "@esbuild/linux-ppc64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.4.tgz", - "integrity": "sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==", - "dev": true, - "optional": true - }, - "@esbuild/linux-riscv64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.4.tgz", - "integrity": "sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==", - "dev": true, - "optional": true - }, - "@esbuild/linux-s390x": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.4.tgz", - "integrity": "sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==", - "dev": true, - "optional": true - }, - "@esbuild/linux-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.4.tgz", - "integrity": "sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==", - "dev": true, - "optional": true - }, - "@esbuild/netbsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.4.tgz", - "integrity": "sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==", - "dev": true, - "optional": true - }, - "@esbuild/netbsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.4.tgz", - "integrity": "sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==", - "dev": true, - "optional": true - }, - "@esbuild/openbsd-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.4.tgz", - "integrity": "sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==", - "dev": true, - "optional": true - }, - "@esbuild/openbsd-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.4.tgz", - "integrity": "sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==", - "dev": true, - "optional": true - }, - "@esbuild/sunos-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.4.tgz", - "integrity": "sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==", - "dev": true, - "optional": true - }, - "@esbuild/win32-arm64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.4.tgz", - "integrity": "sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==", - "dev": true, - "optional": true - }, - "@esbuild/win32-ia32": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.4.tgz", - "integrity": "sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==", - "dev": true, - "optional": true - }, - "@esbuild/win32-x64": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.4.tgz", - "integrity": "sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==", - "dev": true, - "optional": true - }, - "@eslint-community/eslint-utils": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", - "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^3.4.3" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true - } - } - }, - "@eslint-community/regexpp": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", - "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", - "dev": true - }, - "@eslint/config-array": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", - "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", - "dev": true, - "requires": { - "@eslint/object-schema": "^2.1.6", - "debug": "^4.3.1", - "minimatch": "^3.1.2" - } - }, - "@eslint/config-helpers": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.2.tgz", - "integrity": "sha512-+GPzk8PlG0sPpzdU5ZvIRMPidzAnZDl/s9L+y13iodqvb8leL53bTannOrQ/Im7UkpsmFU5Ily5U60LWixnmLg==", - "dev": true - }, - "@eslint/core": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz", - "integrity": "sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.15" - } - }, - "@eslint/eslintrc": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", - "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^10.0.1", - "globals": "^14.0.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - } - }, - "@eslint/js": { - "version": "9.27.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.27.0.tgz", - "integrity": "sha512-G5JD9Tu5HJEu4z2Uo4aHY2sLV64B7CDMXxFzqzjl3NKd6RVzSXNoE80jk7Y0lJkTTkjiIhBAqmlYwjuBY3tvpA==", - "dev": true - }, - "@eslint/object-schema": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", - "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", - "dev": true - }, - "@eslint/plugin-kit": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.1.tgz", - "integrity": "sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==", - "dev": true, - "requires": { - "@eslint/core": "^0.14.0", - "levn": "^0.4.1" - } - }, - "@expressive-code/core": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/core/-/core-0.38.3.tgz", - "integrity": "sha512-s0/OtdRpBONwcn23O8nVwDNQqpBGKscysejkeBkwlIeHRLZWgiTVrusT5Idrdz1d8cW5wRk9iGsAIQmwDPXgJg==", - "dev": true, - "requires": { - "@ctrl/tinycolor": "^4.0.4", - "hast-util-select": "^6.0.2", - "hast-util-to-html": "^9.0.1", - "hast-util-to-text": "^4.0.1", - "hastscript": "^9.0.0", - "postcss": "^8.4.38", - "postcss-nested": "^6.0.1", - "unist-util-visit": "^5.0.0", - "unist-util-visit-parents": "^6.0.1" - } - }, - "@expressive-code/plugin-collapsible-sections": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-collapsible-sections/-/plugin-collapsible-sections-0.38.3.tgz", - "integrity": "sha512-0r1k4k5S7GBLIRBYFkMKeIyD9iYcwM+LBrwoxZtd9TtBYJ3ziWBleFlCoOA3fo/Mj2YcaN7ZRIscMzYY9JBWrA==", - "dev": true, - "requires": { - "@expressive-code/core": "^0.38.3" - } - }, - "@expressive-code/plugin-frames": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-frames/-/plugin-frames-0.38.3.tgz", - "integrity": "sha512-qL2oC6FplmHNQfZ8ZkTR64/wKo9x0c8uP2WDftR/ydwN/yhe1ed7ZWYb8r3dezxsls+tDokCnN4zYR594jbpvg==", - "dev": true, - "requires": { - "@expressive-code/core": "^0.38.3" - } - }, - "@expressive-code/plugin-line-numbers": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-line-numbers/-/plugin-line-numbers-0.38.3.tgz", - "integrity": "sha512-QbK9NL44ST9w5ANVEu0a7fkjlq+fXgxyPqiSyFC4Nw/sAXd0MUwT1C8V0qlve4pZYLz53CR9tn4JQQbR0Z1tOg==", - "dev": true, - "requires": { - "@expressive-code/core": "^0.38.3" - } - }, - "@expressive-code/plugin-shiki": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-shiki/-/plugin-shiki-0.38.3.tgz", - "integrity": "sha512-kqHnglZeesqG3UKrb6e9Fq5W36AZ05Y9tCREmSN2lw8LVTqENIeCIkLDdWtQ5VoHlKqwUEQFTVlRehdwoY7Gmw==", - "dev": true, - "requires": { - "@expressive-code/core": "^0.38.3", - "shiki": "^1.22.2" - }, - "dependencies": { - "@shikijs/core": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.29.2.tgz", - "integrity": "sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==", - "dev": true, - "requires": { - "@shikijs/engine-javascript": "1.29.2", - "@shikijs/engine-oniguruma": "1.29.2", - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.4" - } - }, - "@shikijs/engine-javascript": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.29.2.tgz", - "integrity": "sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==", - "dev": true, - "requires": { - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", - "oniguruma-to-es": "^2.2.0" - } - }, - "@shikijs/engine-oniguruma": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz", - "integrity": "sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==", - "dev": true, - "requires": { - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1" - } - }, - "@shikijs/langs": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.2.tgz", - "integrity": "sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==", - "dev": true, - "requires": { - "@shikijs/types": "1.29.2" - } - }, - "@shikijs/themes": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.2.tgz", - "integrity": "sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==", - "dev": true, - "requires": { - "@shikijs/types": "1.29.2" - } - }, - "@shikijs/types": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.29.2.tgz", - "integrity": "sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==", - "dev": true, - "requires": { - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4" - } - }, - "oniguruma-to-es": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-2.3.0.tgz", - "integrity": "sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==", - "dev": true, - "requires": { - "emoji-regex-xs": "^1.0.0", - "regex": "^5.1.1", - "regex-recursion": "^5.1.1" - } - }, - "regex": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex/-/regex-5.1.1.tgz", - "integrity": "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==", - "dev": true, - "requires": { - "regex-utilities": "^2.3.0" - } - }, - "regex-recursion": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.1.1.tgz", - "integrity": "sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==", - "dev": true, - "requires": { - "regex": "^5.1.1", - "regex-utilities": "^2.3.0" - } - }, - "shiki": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.29.2.tgz", - "integrity": "sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==", - "dev": true, - "requires": { - "@shikijs/core": "1.29.2", - "@shikijs/engine-javascript": "1.29.2", - "@shikijs/engine-oniguruma": "1.29.2", - "@shikijs/langs": "1.29.2", - "@shikijs/themes": "1.29.2", - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", - "@types/hast": "^3.0.4" - } - } - } - }, - "@expressive-code/plugin-text-markers": { - "version": "0.38.3", - "resolved": "https://registry.npmjs.org/@expressive-code/plugin-text-markers/-/plugin-text-markers-0.38.3.tgz", - "integrity": "sha512-dPK3+BVGTbTmGQGU3Fkj3jZ3OltWUAlxetMHI6limUGCWBCucZiwoZeFM/WmqQa71GyKRzhBT+iEov6kkz2xVA==", - "dev": true, - "requires": { - "@expressive-code/core": "^0.38.3" - } - }, - "@happy-dom/global-registrator": { - "version": "17.4.7", - "resolved": "https://registry.npmjs.org/@happy-dom/global-registrator/-/global-registrator-17.4.7.tgz", - "integrity": "sha512-BsKWeI115LT0J/lKJ4Kz638oy4zO+nC4TLh3cYPY6BBypttPZg8Fg+EXL2If4KHMSy3Wx+yRiM+68Hr1iGgiWA==", - "dev": true, - "requires": { - "happy-dom": "^17.4.7" - } - }, - "@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", - "dev": true - }, - "@humanfs/node": { - "version": "0.16.6", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", - "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", - "dev": true, - "requires": { - "@humanfs/core": "^0.19.1", - "@humanwhocodes/retry": "^0.3.0" - }, - "dependencies": { - "@humanwhocodes/retry": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", - "dev": true - } - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true - }, - "@humanwhocodes/retry": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", - "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", - "dev": true - }, - "@jspm/core": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@jspm/core/-/core-2.1.0.tgz", - "integrity": "sha512-3sRl+pkyFY/kLmHl0cgHiFp2xEqErA8N3ECjMs7serSUBmoJ70lBa0PG5t0IM6WJgdZNyyI0R8YFfi5wM8+mzg==", - "dev": true - }, - "@lemons_dev/parsinom": { - "version": "0.0.12", - "resolved": "https://registry.npmjs.org/@lemons_dev/parsinom/-/parsinom-0.0.12.tgz", - "integrity": "sha512-i6oUfQfhw4ZStScMpPHy8ZmLrkn29RX/uK1SBKSKPuH0w9vOFQjZ0O4ev1hdk0K/eU196mk9mAlI1bjbO4n4sQ==", - "dev": true - }, - "@lezer/common": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.2.3.tgz", - "integrity": "sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==", - "dev": true - }, - "@lezer/highlight": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.2.1.tgz", - "integrity": "sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA==", - "dev": true, - "requires": { - "@lezer/common": "^1.0.0" - } - }, - "@lezer/lr": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-1.4.2.tgz", - "integrity": "sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==", - "dev": true, - "requires": { - "@lezer/common": "^1.0.0" - } - }, - "@marijn/find-cluster-break": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@marijn/find-cluster-break/-/find-cluster-break-1.0.2.tgz", - "integrity": "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==", - "dev": true - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@oven/bun-darwin-aarch64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-darwin-aarch64/-/bun-darwin-aarch64-1.2.13.tgz", - "integrity": "sha512-AOU4O9jxRp2TXeqoEfOjEaUNZb3+SUPBN8TIEnUjpnyLWPoYJGCeNdQuCDcUkmF3MJEmEuJdyF1IeOITozpC6A==", - "dev": true, - "optional": true - }, - "@oven/bun-darwin-x64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-darwin-x64/-/bun-darwin-x64-1.2.13.tgz", - "integrity": "sha512-kJ2iOvxY8uz5/nu+8zIjKf4LmRIHBH9pJJM2q+tA47U04Tod6k6rtntDOI8SdmRe2M5c87RfbadWdxhpYHFIWQ==", - "dev": true, - "optional": true - }, - "@oven/bun-darwin-x64-baseline": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-darwin-x64-baseline/-/bun-darwin-x64-baseline-1.2.13.tgz", - "integrity": "sha512-bZpIUOvx9np07AmH5MVXGYHWZ40m2vCpNV74fma6sCzBlssJclS2V3BZgO+lLvtUKSqnW3HAyJBGsRF34wPbNw==", - "dev": true, - "optional": true - }, - "@oven/bun-linux-aarch64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-aarch64/-/bun-linux-aarch64-1.2.13.tgz", - "integrity": "sha512-hocSJmblX4CCjP1HpaM64I65erB+CONUCCwKzGGOfLGLobVi+vn/G56UaYWsje1y/Z7WlVaUSgKYVWl7EJ6T9g==", - "dev": true, - "optional": true - }, - "@oven/bun-linux-aarch64-musl": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-aarch64-musl/-/bun-linux-aarch64-musl-1.2.13.tgz", - "integrity": "sha512-P56m718KXeyu4Vq5fsESFktfu+0Us1jhu/ZzgHYFRYJcm/hjs6AUA/RJtUAifFy5PNAM5IJdrYl3xPsE8Wa+pg==", - "dev": true, - "optional": true - }, - "@oven/bun-linux-x64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64/-/bun-linux-x64-1.2.13.tgz", - "integrity": "sha512-pf8+Kn2GLrFKLcb8JSLM6Z147Af6L9GQODpnOHM4gvXQv6E/GwQg47/o+7f1XCfzib3fdzOTJlDPvvO1rnXOTA==", - "dev": true, - "optional": true - }, - "@oven/bun-linux-x64-baseline": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-baseline/-/bun-linux-x64-baseline-1.2.13.tgz", - "integrity": "sha512-9n1ai2ejEpxEMqpbHQMWFyvacq3MYsB7gh5mxRlFwhNFPCWu/Sv6gyrO+q2vkOYgcEIGhJb6dqJ6L9vBNaL61A==", - "dev": true, - "optional": true - }, - "@oven/bun-linux-x64-musl": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-musl/-/bun-linux-x64-musl-1.2.13.tgz", - "integrity": "sha512-w5Ob+GM3Ww4yRA6f1N845o6wEvuwHSmipFUGaRaVp4UELrFnIV9G3pmrlBbYHFnWhk13o8Q7H1/4ZphOkCRJmQ==", - "dev": true, - "optional": true - }, - "@oven/bun-linux-x64-musl-baseline": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-linux-x64-musl-baseline/-/bun-linux-x64-musl-baseline-1.2.13.tgz", - "integrity": "sha512-VI8hVdfqk0QmbAbyrsIdo2O95n3fkbt72E0h3Wu69cHD1iKJqRXG28R8QoHdehoLSJnKVzRTwsUzHp764nefWQ==", - "dev": true, - "optional": true - }, - "@oven/bun-windows-x64": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-windows-x64/-/bun-windows-x64-1.2.13.tgz", - "integrity": "sha512-sArgbRmT7V3mUdNFaAdUcuJsuS+oeMDZLPWFSg0gtQZpRrURs9nPzEnZMmVCFo4+kPF9Tb5ujQT9uDySh6/qVg==", - "dev": true, - "optional": true - }, - "@oven/bun-windows-x64-baseline": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@oven/bun-windows-x64-baseline/-/bun-windows-x64-baseline-1.2.13.tgz", - "integrity": "sha512-Aiezu99fOUJJpzGuylOJryd6w9Syg2TBigHeXV2+RJsouBzvAnIEYIBA94ZspRq1ulD26Wmkk8Ae+jZ4edk9GA==", - "dev": true, - "optional": true - }, - "@shikijs/core": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.4.2.tgz", - "integrity": "sha512-AG8vnSi1W2pbgR2B911EfGqtLE9c4hQBYkv/x7Z+Kt0VxhgQKcW7UNDVYsu9YxwV6u+OJrvdJrMq6DNWoBjihQ==", - "dev": true, - "requires": { - "@shikijs/types": "3.4.2", - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.5" - } - }, - "@shikijs/engine-javascript": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.4.2.tgz", - "integrity": "sha512-1/adJbSMBOkpScCE/SB6XkjJU17ANln3Wky7lOmrnpl+zBdQ1qXUJg2GXTYVHRq+2j3hd1DesmElTXYDgtfSOQ==", - "dev": true, - "requires": { - "@shikijs/types": "3.4.2", - "@shikijs/vscode-textmate": "^10.0.2", - "oniguruma-to-es": "^4.3.3" - } - }, - "@shikijs/engine-oniguruma": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.4.2.tgz", - "integrity": "sha512-zcZKMnNndgRa3ORja6Iemsr3DrLtkX3cAF7lTJkdMB6v9alhlBsX9uNiCpqofNrXOvpA3h6lHcLJxgCIhVOU5Q==", - "dev": true, - "requires": { - "@shikijs/types": "3.4.2", - "@shikijs/vscode-textmate": "^10.0.2" - } - }, - "@shikijs/langs": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.4.2.tgz", - "integrity": "sha512-H6azIAM+OXD98yztIfs/KH5H4PU39t+SREhmM8LaNXyUrqj2mx+zVkr8MWYqjceSjDw9I1jawm1WdFqU806rMA==", - "dev": true, - "requires": { - "@shikijs/types": "3.4.2" - } - }, - "@shikijs/themes": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.4.2.tgz", - "integrity": "sha512-qAEuAQh+brd8Jyej2UDDf+b4V2g1Rm8aBIdvt32XhDPrHvDkEnpb7Kzc9hSuHUxz0Iuflmq7elaDuQAP9bHIhg==", - "dev": true, - "requires": { - "@shikijs/types": "3.4.2" - } - }, - "@shikijs/transformers": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-3.4.2.tgz", - "integrity": "sha512-I5baLVi/ynLEOZoWSAMlACHNnG+yw5HDmse0oe+GW6U1u+ULdEB3UHiVWaHoJSSONV7tlcVxuaMy74sREDkSvg==", - "dev": true, - "requires": { - "@shikijs/core": "3.4.2", - "@shikijs/types": "3.4.2" - } - }, - "@shikijs/types": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.4.2.tgz", - "integrity": "sha512-zHC1l7L+eQlDXLnxvM9R91Efh2V4+rN3oMVS2swCBssbj2U/FBwybD1eeLaq8yl/iwT+zih8iUbTBCgGZOYlVg==", - "dev": true, - "requires": { - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4" - } - }, - "@shikijs/vscode-textmate": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", - "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", - "dev": true - }, - "@tsconfig/svelte": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/svelte/-/svelte-5.0.4.tgz", - "integrity": "sha512-BV9NplVgLmSi4mwKzD8BD/NQ8erOY/nUE/GpgWe2ckx+wIQF5RyRirn/QsSSCPeulVpc3RA/iJt6DpfTIZps0Q==", - "dev": true - }, - "@types/bun": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/@types/bun/-/bun-1.2.13.tgz", - "integrity": "sha512-u6vXep/i9VBxoJl3GjZsl/BFIsvML8DfVDO0RYLEwtSZSp981kEO1V5NwRcO1CPJ7AmvpbnDCiMKo3JvbDEjAg==", - "dev": true, - "requires": { - "bun-types": "1.2.13" - } - }, - "@types/codemirror": { - "version": "5.60.8", - "resolved": "https://registry.npmjs.org/@types/codemirror/-/codemirror-5.60.8.tgz", - "integrity": "sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==", - "dev": true, - "requires": { - "@types/tern": "*" - } - }, - "@types/eslint": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", - "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint__js": { - "version": "8.42.3", - "resolved": "https://registry.npmjs.org/@types/eslint__js/-/eslint__js-8.42.3.tgz", - "integrity": "sha512-alfG737uhmPdnvkrLdZLcEKJ/B8s9Y4hrZ+YAdzUeoArBlSUERA2E87ROfOaS4jd/C45fzOoZzidLc1IPwLqOw==", - "dev": true, - "requires": { - "@types/eslint": "*" - } - }, - "@types/estree": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", - "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", - "dev": true - }, - "@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "dev": true, - "requires": { - "@types/unist": "*" - } - }, - "@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true - }, - "@types/mdast": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", - "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", - "dev": true, - "requires": { - "@types/unist": "*" - } - }, - "@types/node": { - "version": "22.15.18", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.18.tgz", - "integrity": "sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg==", - "dev": true, - "requires": { - "undici-types": "~6.21.0" - } - }, - "@types/tern": { - "version": "0.23.9", - "resolved": "https://registry.npmjs.org/@types/tern/-/tern-0.23.9.tgz", - "integrity": "sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==", - "dev": true, - "requires": { - "@types/estree": "*" - } - }, - "@types/unist": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", - "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", - "dev": true - }, - "@typescript-eslint/eslint-plugin": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.32.1.tgz", - "integrity": "sha512-6u6Plg9nP/J1GRpe/vcjjabo6Uc5YQPAMxsgQyGC/I0RuukiG1wIe3+Vtg3IrSCVJDmqK3j8adrtzXSENRtFgg==", - "dev": true, - "requires": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.32.1", - "@typescript-eslint/type-utils": "8.32.1", - "@typescript-eslint/utils": "8.32.1", - "@typescript-eslint/visitor-keys": "8.32.1", - "graphemer": "^1.4.0", - "ignore": "^7.0.0", - "natural-compare": "^1.4.0", - "ts-api-utils": "^2.1.0" - }, - "dependencies": { - "ignore": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.4.tgz", - "integrity": "sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==", - "dev": true - } - } - }, - "@typescript-eslint/parser": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.32.1.tgz", - "integrity": "sha512-LKMrmwCPoLhM45Z00O1ulb6jwyVr2kr3XJp+G+tSEZcbauNnScewcQwtJqXDhXeYPDEjZ8C1SjXm015CirEmGg==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "8.32.1", - "@typescript-eslint/types": "8.32.1", - "@typescript-eslint/typescript-estree": "8.32.1", - "@typescript-eslint/visitor-keys": "8.32.1", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.32.1.tgz", - "integrity": "sha512-7IsIaIDeZn7kffk7qXC3o6Z4UblZJKV3UBpkvRNpr5NSyLji7tvTcvmnMNYuYLyh26mN8W723xpo3i4MlD33vA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.32.1", - "@typescript-eslint/visitor-keys": "8.32.1" - } - }, - "@typescript-eslint/type-utils": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.32.1.tgz", - "integrity": "sha512-mv9YpQGA8iIsl5KyUPi+FGLm7+bA4fgXaeRcFKRDRwDMu4iwrSHeDPipwueNXhdIIZltwCJv+NkxftECbIZWfA==", - "dev": true, - "requires": { - "@typescript-eslint/typescript-estree": "8.32.1", - "@typescript-eslint/utils": "8.32.1", - "debug": "^4.3.4", - "ts-api-utils": "^2.1.0" - } - }, - "@typescript-eslint/types": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.32.1.tgz", - "integrity": "sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.32.1.tgz", - "integrity": "sha512-Y3AP9EIfYwBb4kWGb+simvPaqQoT5oJuzzj9m0i6FCY6SPvlomY2Ei4UEMm7+FXtlNJbor80ximyslzaQF6xhg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.32.1", - "@typescript-eslint/visitor-keys": "8.32.1", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^2.1.0" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "@typescript-eslint/utils": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.32.1.tgz", - "integrity": "sha512-DsSFNIgLSrc89gpq1LJB7Hm1YpuhK086DRDJSNrewcGvYloWW1vZLHBTIvarKZDcAORIy/uWNx8Gad+4oMpkSA==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.32.1", - "@typescript-eslint/types": "8.32.1", - "@typescript-eslint/typescript-estree": "8.32.1" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz", - "integrity": "sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w==", - "dev": true, - "requires": { - "@typescript-eslint/types": "8.32.1", - "eslint-visitor-keys": "^4.2.0" - } - }, - "@ungap/structured-clone": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", - "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", - "dev": true - }, - "acorn": { - "version": "8.14.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", - "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "bcp-47-match": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/bcp-47-match/-/bcp-47-match-2.0.3.tgz", - "integrity": "sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==", - "dev": true - }, - "binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "requires": { - "fill-range": "^7.1.1" - } - }, - "builtin-modules": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-4.0.0.tgz", - "integrity": "sha512-p1n8zyCkt1BVrKNFymOHjcDSAl7oq/gUvfgULv2EblgpPVQlQr9yHnWjg9IJ2MhfwPqiYqMMrr01OY7yQoK2yA==", - "dev": true - }, - "bun": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/bun/-/bun-1.2.13.tgz", - "integrity": "sha512-EhP1MhFbicqtaRSFCbEZdkcFco8Ov47cNJcB9QmKS8U4cojKHfLU+dQR14lCvLYmtBvGgwv/Lp+9SSver2OPzQ==", - "dev": true, - "requires": { - "@oven/bun-darwin-aarch64": "1.2.13", - "@oven/bun-darwin-x64": "1.2.13", - "@oven/bun-darwin-x64-baseline": "1.2.13", - "@oven/bun-linux-aarch64": "1.2.13", - "@oven/bun-linux-aarch64-musl": "1.2.13", - "@oven/bun-linux-x64": "1.2.13", - "@oven/bun-linux-x64-baseline": "1.2.13", - "@oven/bun-linux-x64-musl": "1.2.13", - "@oven/bun-linux-x64-musl-baseline": "1.2.13", - "@oven/bun-windows-x64": "1.2.13", - "@oven/bun-windows-x64-baseline": "1.2.13" - } - }, - "bun-types": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/bun-types/-/bun-types-1.2.13.tgz", - "integrity": "sha512-rRjA1T6n7wto4gxhAO/ErZEtOXyEZEmnIHQfl0Dt1QQSB4QV0iP6BZ9/YB5fZaHFQ2dwHFrmPaRQ9GGMX01k9Q==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "character-entities-html4": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", - "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", - "dev": true - }, - "character-entities-legacy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", - "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", - "dev": true - }, - "chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "confbox": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", - "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "css-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-3.1.2.tgz", - "integrity": "sha512-WfUcL99xWDs7b3eZPoRszWVfbNo8ErCF15PTvVROjkShGlAfjIkG6hlfj/sl6/rfo5Q9x9ryJ3VqVnAZDA+gcw==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "debug": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", - "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", - "dev": true, - "requires": { - "ms": "^2.1.3" - } - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "dev": true - }, - "devlop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", - "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", - "dev": true, - "requires": { - "dequal": "^2.0.0" - } - }, - "direction": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/direction/-/direction-2.0.1.tgz", - "integrity": "sha512-9S6m9Sukh1cZNknO1CWAr2QAWsbKLafQiyM5gZ7VgXHeuaoUwffKN4q6NC4A/Mf9iiPlOXQEKW/Mv/mh9/3YFA==", - "dev": true - }, - "emoji-regex-xs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", - "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==", - "dev": true - }, - "esbuild": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.4.tgz", - "integrity": "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==", - "dev": true, - "requires": { - "@esbuild/aix-ppc64": "0.25.4", - "@esbuild/android-arm": "0.25.4", - "@esbuild/android-arm64": "0.25.4", - "@esbuild/android-x64": "0.25.4", - "@esbuild/darwin-arm64": "0.25.4", - "@esbuild/darwin-x64": "0.25.4", - "@esbuild/freebsd-arm64": "0.25.4", - "@esbuild/freebsd-x64": "0.25.4", - "@esbuild/linux-arm": "0.25.4", - "@esbuild/linux-arm64": "0.25.4", - "@esbuild/linux-ia32": "0.25.4", - "@esbuild/linux-loong64": "0.25.4", - "@esbuild/linux-mips64el": "0.25.4", - "@esbuild/linux-ppc64": "0.25.4", - "@esbuild/linux-riscv64": "0.25.4", - "@esbuild/linux-s390x": "0.25.4", - "@esbuild/linux-x64": "0.25.4", - "@esbuild/netbsd-arm64": "0.25.4", - "@esbuild/netbsd-x64": "0.25.4", - "@esbuild/openbsd-arm64": "0.25.4", - "@esbuild/openbsd-x64": "0.25.4", - "@esbuild/sunos-x64": "0.25.4", - "@esbuild/win32-arm64": "0.25.4", - "@esbuild/win32-ia32": "0.25.4", - "@esbuild/win32-x64": "0.25.4" - } - }, - "esbuild-plugin-copy-watch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/esbuild-plugin-copy-watch/-/esbuild-plugin-copy-watch-2.3.1.tgz", - "integrity": "sha512-uBa0aWLg6Vm7kVwefwcvrZ1XiRgEB2HsVyBkyxXFR7lZ0LU9crxLEVNvoli3DX9I7aJv9K9+AYvQ2h86f4yFbA==", - "dev": true, - "requires": { - "@types/node": "^20.14.2", - "anymatch": "^3.1.3", - "chokidar": "^3.6.0", - "fs-extra": "^11.2.0", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3" - }, - "dependencies": { - "@types/node": { - "version": "20.17.47", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.47.tgz", - "integrity": "sha512-3dLX0Upo1v7RvUimvxLeXqwrfyKxUINk0EAM83swP2mlSUcwV73sZy8XhNz8bcZ3VbsfQyC/y6jRdL5tgCNpDQ==", - "dev": true, - "requires": { - "undici-types": "~6.19.2" - } - }, - "undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true - } - } - }, - "esbuild-plugins-node-modules-polyfill": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/esbuild-plugins-node-modules-polyfill/-/esbuild-plugins-node-modules-polyfill-1.7.0.tgz", - "integrity": "sha512-Z81w5ReugIBAgufGeGWee+Uxzgs5Na4LprUAK3XlJEh2ktY3LkNuEGMaZyBXxQxGK8SQDS5yKLW5QKGF5qLjYA==", - "dev": true, - "requires": { - "@jspm/core": "^2.1.0", - "local-pkg": "^1.0.0", - "resolve.exports": "^2.0.3" - } - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "eslint": { - "version": "9.27.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.27.0.tgz", - "integrity": "sha512-ixRawFQuMB9DZ7fjU3iGGganFDp3+45bPOdaRurcFHSXO1e/sYwUX/FtQZpLZJR6SjMoJH8hR2pPEAfDyCoU2Q==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.20.0", - "@eslint/config-helpers": "^0.2.1", - "@eslint/core": "^0.14.0", - "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.27.0", - "@eslint/plugin-kit": "^0.3.1", - "@humanfs/node": "^0.16.6", - "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.2", - "@types/estree": "^1.0.6", - "@types/json-schema": "^7.0.15", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.6", - "debug": "^4.3.2", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.3.0", - "eslint-visitor-keys": "^4.2.0", - "espree": "^10.3.0", - "esquery": "^1.5.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^8.0.0", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3" - } - }, - "eslint-plugin-no-relative-import-paths": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-relative-import-paths/-/eslint-plugin-no-relative-import-paths-1.6.1.tgz", - "integrity": "sha512-YZNeOnsOrJcwhFw0X29MXjIzu2P/f5X2BZDPWw1R3VUYBRFxNIh77lyoL/XrMU9ewZNQPcEvAgL/cBOT1P330A==", - "dev": true - }, - "eslint-plugin-only-warn": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-only-warn/-/eslint-plugin-only-warn-1.1.0.tgz", - "integrity": "sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==", - "dev": true - }, - "eslint-scope": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", - "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-visitor-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", - "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", - "dev": true - }, - "espree": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", - "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", - "dev": true, - "requires": { - "acorn": "^8.14.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.2.0" - } - }, - "esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "exsolve": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.5.tgz", - "integrity": "sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", - "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "fastq": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", - "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "file-entry-cache": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", - "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", - "dev": true, - "requires": { - "flat-cache": "^4.0.0" - } - }, - "fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", - "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", - "dev": true, - "requires": { - "flatted": "^3.2.9", - "keyv": "^4.5.4" - } - }, - "flatted": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", - "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", - "dev": true - }, - "fs-extra": { - "version": "11.3.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", - "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "optional": true - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", - "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", - "dev": true - }, - "graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "happy-dom": { - "version": "17.4.7", - "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-17.4.7.tgz", - "integrity": "sha512-NZypxadhCiV5NT4A+Y86aQVVKQ05KDmueja3sz008uJfDRwz028wd0aTiJPwo4RQlvlz0fznkEEBBCHVNWc08g==", - "dev": true, - "requires": { - "webidl-conversions": "^7.0.0", - "whatwg-mimetype": "^3.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "hast-util-has-property": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-has-property/-/hast-util-has-property-3.0.0.tgz", - "integrity": "sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0" - } - }, - "hast-util-is-element": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", - "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0" - } - }, - "hast-util-parse-selector": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", - "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0" - } - }, - "hast-util-select": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/hast-util-select/-/hast-util-select-6.0.4.tgz", - "integrity": "sha512-RqGS1ZgI0MwxLaKLDxjprynNzINEkRHY2i8ln4DDjgv9ZhcYVIHN9rlpiYsqtFwrgpYU361SyWDQcGNIBVu3lw==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "bcp-47-match": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "css-selector-parser": "^3.0.0", - "devlop": "^1.0.0", - "direction": "^2.0.0", - "hast-util-has-property": "^3.0.0", - "hast-util-to-string": "^3.0.0", - "hast-util-whitespace": "^3.0.0", - "nth-check": "^2.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0", - "unist-util-visit": "^5.0.0", - "zwitch": "^2.0.0" - } - }, - "hast-util-to-html": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz", - "integrity": "sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-whitespace": "^3.0.0", - "html-void-elements": "^3.0.0", - "mdast-util-to-hast": "^13.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0", - "stringify-entities": "^4.0.0", - "zwitch": "^2.0.4" - } - }, - "hast-util-to-string": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", - "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0" - } - }, - "hast-util-to-text": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", - "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "hast-util-is-element": "^3.0.0", - "unist-util-find-after": "^5.0.0" - } - }, - "hast-util-whitespace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", - "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0" - } - }, - "hastscript": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-9.0.1.tgz", - "integrity": "sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^4.0.0", - "property-information": "^7.0.0", - "space-separated-tokens": "^2.0.0" - } - }, - "html-void-elements": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", - "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", - "dev": true - }, - "ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true - }, - "import-fresh": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", - "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "itertools-ts": { - "version": "1.29.1", - "resolved": "https://registry.npmjs.org/itertools-ts/-/itertools-ts-1.29.1.tgz", - "integrity": "sha512-mDvYXbhFg7+VobGBykzZw+FV3oUZ17mRWlelD9fRAONzSlGk3LtDMbC+f3YDLYDwpMqqz4JeaS6hrGoqrqHcAg==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "requires": { - "json-buffer": "3.0.1" - } - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "local-pkg": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.1.tgz", - "integrity": "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg==", - "dev": true, - "requires": { - "mlly": "^1.7.4", - "pkg-types": "^2.0.1", - "quansync": "^0.2.8" - } - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "mdast-util-to-hast": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", - "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", - "dev": true, - "requires": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@ungap/structured-clone": "^1.0.0", - "devlop": "^1.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "trim-lines": "^3.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0" - } - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "micromark-util-character": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz", - "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==", - "dev": true, - "requires": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "micromark-util-encode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz", - "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==", - "dev": true - }, - "micromark-util-sanitize-uri": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz", - "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==", - "dev": true, - "requires": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "micromark-util-symbol": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz", - "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==", - "dev": true - }, - "micromark-util-types": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz", - "integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==", - "dev": true - }, - "micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, - "requires": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "mlly": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", - "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", - "dev": true, - "requires": { - "acorn": "^8.14.0", - "pathe": "^2.0.1", - "pkg-types": "^1.3.0", - "ufo": "^1.5.4" - }, - "dependencies": { - "confbox": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", - "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", - "dev": true - }, - "pkg-types": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", - "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", - "dev": true, - "requires": { - "confbox": "^0.1.8", - "mlly": "^1.7.4", - "pathe": "^2.0.1" - } - } - } - }, - "moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", - "dev": true - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "obsidian": { - "version": "1.8.7", - "resolved": "https://registry.npmjs.org/obsidian/-/obsidian-1.8.7.tgz", - "integrity": "sha512-h4bWwNFAGRXlMlMAzdEiIM2ppTGlrh7uGOJS6w4gClrsjc+ei/3YAtU2VdFUlCiPuTHpY4aBpFJJW75S1Tl/JA==", - "dev": true, - "requires": { - "@types/codemirror": "5.60.8", - "moment": "2.29.4" - } - }, - "oniguruma-parser": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/oniguruma-parser/-/oniguruma-parser-0.12.1.tgz", - "integrity": "sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==", - "dev": true - }, - "oniguruma-to-es": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.3.tgz", - "integrity": "sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg==", - "dev": true, - "requires": { - "oniguruma-parser": "^0.12.1", - "regex": "^6.0.1", - "regex-recursion": "^6.0.2" - } - }, - "optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "requires": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "pathe": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", - "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", - "dev": true - }, - "picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pkg-types": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz", - "integrity": "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==", - "dev": true, - "requires": { - "confbox": "^0.2.1", - "exsolve": "^1.0.1", - "pathe": "^2.0.3" - } - }, - "postcss": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", - "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", - "dev": true, - "requires": { - "nanoid": "^3.3.8", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" - } - }, - "postcss-nested": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", - "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.1.1" - } - }, - "postcss-selector-parser": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", - "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "prettier": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", - "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", - "dev": true - }, - "property-information": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-7.1.0.tgz", - "integrity": "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==", - "dev": true - }, - "punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true - }, - "quansync": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.10.tgz", - "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==", - "dev": true - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/regex/-/regex-6.0.1.tgz", - "integrity": "sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==", - "dev": true, - "requires": { - "regex-utilities": "^2.3.0" - } - }, - "regex-recursion": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", - "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", - "dev": true, - "requires": { - "regex-utilities": "^2.3.0" - } - }, - "regex-utilities": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz", - "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==", - "dev": true - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "resolve.exports": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", - "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", - "dev": true - }, - "reusify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", - "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", - "dev": true - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "shiki": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.4.2.tgz", - "integrity": "sha512-wuxzZzQG8kvZndD7nustrNFIKYJ1jJoWIPaBpVe2+KHSvtzMi4SBjOxrigs8qeqce/l3U0cwiC+VAkLKSunHQQ==", - "dev": true, - "requires": { - "@shikijs/core": "3.4.2", - "@shikijs/engine-javascript": "3.4.2", - "@shikijs/engine-oniguruma": "3.4.2", - "@shikijs/langs": "3.4.2", - "@shikijs/themes": "3.4.2", - "@shikijs/types": "3.4.2", - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4" - } - }, - "source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", - "dev": true - }, - "space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", - "dev": true - }, - "string-argv": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", - "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", - "dev": true - }, - "stringify-entities": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", - "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", - "dev": true, - "requires": { - "character-entities-html4": "^2.0.0", - "character-entities-legacy": "^3.0.0" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "style-mod": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.1.2.tgz", - "integrity": "sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "trim-lines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", - "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", - "dev": true - }, - "ts-api-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", - "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", - "dev": true, - "requires": {} - }, - "tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "dev": true - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", - "dev": true - }, - "typescript-eslint": { - "version": "8.32.1", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.32.1.tgz", - "integrity": "sha512-D7el+eaDHAmXvrZBy1zpzSNIRqnCOrkwTgZxTu3MUqRWk8k0q9m9Ho4+vPf7iHtgUfrK/o8IZaEApsxPlHTFCg==", - "dev": true, - "requires": { - "@typescript-eslint/eslint-plugin": "8.32.1", - "@typescript-eslint/parser": "8.32.1", - "@typescript-eslint/utils": "8.32.1" - } - }, - "ufo": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", - "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", - "dev": true - }, - "undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", - "dev": true - }, - "unist-util-find-after": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", - "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", - "dev": true, - "requires": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - } - }, - "unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dev": true, - "requires": { - "@types/unist": "^3.0.0" - } - }, - "unist-util-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", - "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", - "dev": true, - "requires": { - "@types/unist": "^3.0.0" - } - }, - "unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dev": true, - "requires": { - "@types/unist": "^3.0.0" - } - }, - "unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", - "dev": true, - "requires": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - } - }, - "unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", - "dev": true, - "requires": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - } - }, - "universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "vfile": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", - "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", - "dev": true, - "requires": { - "@types/unist": "^3.0.0", - "vfile-message": "^4.0.0" - } - }, - "vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", - "dev": true, - "requires": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" - } - }, - "w3c-keyname": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", - "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==", - "dev": true - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true - }, - "whatwg-mimetype": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - }, - "zwitch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", - "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", - "dev": true - } - } -} diff --git a/src/main.ts b/src/main.ts index ef964c0..b4c6018 100644 --- a/src/main.ts +++ b/src/main.ts @@ -226,7 +226,7 @@ export default class ShikiPlugin extends Plugin { * - Make sure to remind users of errors: use Notice * - Avoid overwriting the original data with incorrect data, this is unacceptable * - * Refresh strategy1 (unable, todo): real-time, debounce + * Refresh strategy1 (unable): real-time save, debounce * - We need to ensure that the textarea element is not recreated when updating * the content of the code block. It should be reused to avoid changes in the cursor position. * - Reduce the update frequency and the number of transactions. @@ -235,7 +235,8 @@ export default class ShikiPlugin extends Plugin { * Refresh strategy2 (enable): onchange emit * - It is better implemented under the obsidian architecture. * Strategy1 requires additional processing: cache el - * - **Disadvantage**: Can't use ctrl+z well in the code block. + * - ~~Disadvantage: Can't use `ctrl+z` well in the code block.~~ + * textarea can be `ctrl+z` normally * * Universal * - This should be a universal module. It has nothing to do with the logic of the plugin. From 11ff5298b6a0fd84724713f3ac206fe2b375e85d Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Tue, 20 May 2025 20:41:07 +0800 Subject: [PATCH 14/66] revert: version --- manifest-beta.json | 2 +- manifest.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/manifest-beta.json b/manifest-beta.json index d32e614..db10472 100644 --- a/manifest-beta.json +++ b/manifest-beta.json @@ -1,7 +1,7 @@ { "id": "shiki-highlighter", "name": "Shiki Highlighter", - "version": "0.5.1", + "version": "0.5.0", "minAppVersion": "1.5.0", "description": "Highlight code blocks with Shiki.", "author": "Moritz Jung", diff --git a/manifest.json b/manifest.json index d32e614..db10472 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "shiki-highlighter", "name": "Shiki Highlighter", - "version": "0.5.1", + "version": "0.5.0", "minAppVersion": "1.5.0", "description": "Highlight code blocks with Shiki.", "author": "Moritz Jung", From 8964a5679e5606a9f15416c8a921ea5cfb7cc43d Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Wed, 21 May 2025 09:44:17 +0800 Subject: [PATCH 15/66] feat: add min version --- .github/workflows/build.yml | 28 ++ automation/build/esbuild.config.min.ts | 55 ++++ package.json | 1 + src/main.min.ts | 361 +++++++++++++++++++++++++ src/main.ts | 23 +- 5 files changed, 462 insertions(+), 6 deletions(-) create mode 100644 automation/build/esbuild.config.min.ts create mode 100644 src/main.min.ts diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 249387a..e718f89 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -34,3 +34,31 @@ jobs: manifest.json main.js styles.css + + build-obsidian-min: + runs-on: ubuntu-latest + steps: + - name: checkout repo + uses: actions/checkout@v4 + - name: env use node.js + uses: actions/setup-node@v4 + with: + node-version: '22' + - name: Install Bun + uses: oven-sh/setup-bun@v1 + with: + bun-version: latest + - name: build + run: | + bun install + bun run build-min + mv dist-min/main.js main.js + - name: upload build artifact + if: always() + uses: actions/upload-artifact@v4 + with: + name: build-artifact-min + path: | + manifest.json + main.js + styles.css diff --git a/automation/build/esbuild.config.min.ts b/automation/build/esbuild.config.min.ts new file mode 100644 index 0000000..ecc5657 --- /dev/null +++ b/automation/build/esbuild.config.min.ts @@ -0,0 +1,55 @@ +import builtins from 'builtin-modules'; +import esbuild from 'esbuild'; +import { getBuildBanner } from 'build/buildBanner'; +import { nodeModulesPolyfillPlugin } from 'esbuild-plugins-node-modules-polyfill'; + +const banner = getBuildBanner('Release Build', version => version); + +const build = await esbuild.build({ + banner: { + js: banner, + }, + entryPoints: ['src/main.min.ts'], + bundle: true, + external: [ + 'obsidian', + 'electron', + '@codemirror/autocomplete', + '@codemirror/collab', + '@codemirror/commands', + '@codemirror/language', + '@codemirror/lint', + '@codemirror/search', + '@codemirror/state', + '@codemirror/view', + '@lezer/common', + '@lezer/highlight', + '@lezer/lr', + ...builtins, + ], + format: 'cjs', + target: 'es2018', + logLevel: 'info', + sourcemap: false, + treeShaking: true, + outfile: 'dist-min/main.js', + minify: true, + metafile: true, + define: { + MB_GLOBAL_CONFIG_DEV_BUILD: 'false', + }, + plugins: [ + nodeModulesPolyfillPlugin({ + modules: { + fs: true, + path: true, + url: true, + }, + }), + ], +}); + +const file = Bun.file('meta.txt'); +await Bun.write(file, JSON.stringify(build.metafile, null, '\t')); + +process.exit(0); diff --git a/package.json b/package.json index 20055b3..3ae699d 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "scripts": { "dev": "bun run automation/build/esbuild.dev.config.ts", "build": "bun run tsc && bun run automation/build/esbuild.config.ts", + "build-min": "bun run tsc && bun run automation/build/esbuild.config.min.ts", "tsc": "tsc -noEmit -skipLibCheck", "test": "bun test", "test:log": "LOG_TESTS=true bun test", diff --git a/src/main.min.ts b/src/main.min.ts new file mode 100644 index 0000000..376436f --- /dev/null +++ b/src/main.min.ts @@ -0,0 +1,361 @@ +import { loadPrism, Plugin, TFile, type MarkdownPostProcessor, MarkdownPostProcessorContext, Notice } from 'obsidian'; +// import { CodeBlock } from 'src/CodeBlock'; +// import { createCm6Plugin } from 'src/codemirror/Cm6_ViewPlugin'; +import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; +// import { ShikiSettingsTab } from 'src/settings/SettingsTab'; +// import { filterHighlightAllPlugin } from 'src/PrismPlugin'; +// import { CodeHighlighter } from 'src/Highlighter'; + +// [!code ++:10] +// check obsidian env +// @ts-ignore +const Prism:any|null = window.Prism; +console.log('check prism', Prism) +document.addEventListener('DOMContentLoaded', () => { + // @ts-ignore + const Prism = window.Prism; + console.log('check prism2', Prism) +}); + +import { + transformerNotationDiff, + transformerNotationHighlight, + transformerNotationFocus, + transformerNotationErrorLevel, + transformerNotationWordHighlight, + + transformerMetaHighlight, + transformerMetaWordHighlight, +} from '@shikijs/transformers'; +// import { codeToHtml } from 'shiki'; // 8.6MB +// [!code ++:6] +// import { getHighlighter } from 'shiki'; +// const highlighter = await getHighlighter({ +// themes: ['github-dark'], // 只加载需要的主题 +// langs: ['javascript'], // 只加载需要的语言 +// }); +// const codeToHtml = highlighter.codeToHtml + +export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` + +export default class ShikiPlugin extends Plugin { + // highlighter!: CodeHighlighter; + // activeCodeBlocks!: Map; + settings!: Settings; + loadedSettings!: Settings; + // updateCm6Plugin!: () => Promise; + + codeBlockProcessors: MarkdownPostProcessor[] = []; + + async onload(): Promise { + await this.loadSettings(); + this.loadedSettings = structuredClone(this.settings); + // this.addSettingTab(new ShikiSettingsTab(this)); + + // this.highlighter = new CodeHighlighter(this); + // await this.highlighter.load(); + + // this.activeCodeBlocks = new Map(); + + // this.registerInlineCodeProcessor(); + this.registerCodeBlockProcessors(); + + // this.registerEditorExtension([createCm6Plugin(this)]); + + // this is a workaround for the fact that obsidian does not rerender the code block + // when the start line with the language changes, and we need that for the EC meta string + // this.registerEvent( + // this.app.vault.on('modify', async file => { + // // sleep 0 so that the code block context is updated before we rerender + // await sleep(100); + + // if (file instanceof TFile) { + // if (this.activeCodeBlocks.has(file.path)) { + // for (const codeBlock of this.activeCodeBlocks.get(file.path)!) { + // void codeBlock.rerenderOnNoteChange(); + // } + // } + // } + // }), + // ); + + // await this.registerPrismPlugin(); + } + + // async reloadHighlighter(): Promise { + // await this.highlighter.unload(); + + // this.loadedSettings = structuredClone(this.settings); + + // await this.highlighter.load(); + + // for (const [_, codeBlocks] of this.activeCodeBlocks) { + // for (const codeBlock of codeBlocks) { + // await codeBlock.forceRerender(); + // } + // } + + // await this.updateCm6Plugin(); + // } + + // async registerPrismPlugin(): Promise { + // /* eslint-disable */ + + // await loadPrism(); + + // const prism = await loadPrism(); + // // filterHighlightAllPlugin(prism); + // prism.plugins.filterHighlightAll.reject.addSelector('div.expressive-code pre code'); + // } + + registerCodeBlockProcessors(): void { + // const languages = this.highlighter.obsidianSafeLanguageNames(); + const languages = ['js', 'ts', 'rust', 'c', 'cpp', 'java', 'shell', 'bash'] // [!code ++] TODO + + for (const language of languages) { + try { + this.registerMarkdownCodeBlockProcessor( + language, + async (source, el, ctx) => { + // @ts-expect-error + const isReadingMode = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view'); + // this seems to indicate whether we are in the pdf export mode + // sadly there is no section info in this mode + // thus we can't check if the codeblock is at the start of the note and thus frontmatter + // const isPdfExport = ctx.displayMode === true; + + // this is so that we leave the hidden frontmatter code block in reading mode alone + if (language === 'yaml' && isReadingMode && ctx.frontmatter) { + const sectionInfo = ctx.getSectionInfo(el); + + if (sectionInfo && sectionInfo.lineStart === 0) { + return; + } + } + + { + // - div + // - span + // - pre + // - textarea + const div = document.createElement('div'); el.appendChild(div); div.classList.add('obsidian-shiki-plugin') + div.setAttribute('relative', ''); div.setAttribute('float-left', ''); div.setAttribute('min-w-full', ''); // div.setAttribute('min-h-100', ''); + const span = document.createElement('span'); div.appendChild(span); + const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); + // TODO + // These attributes are very strange. I copied the attributes on `shiki.style`. + // But what supports all these are many css selectors like '[absolute=""]' + // Perhaps it is for the convenience of style overlay + // + // But in obsidian, I don't think it's necessary to do so. + const attributes = { + 'whitespace-pre': '', + 'overflow-auto': '', + 'w-full': '', + 'h-full': '', + 'font-mono': '', + 'bg-transparent': '', + 'absolute': '', + 'inset-0': '', + 'py-20px': '', + 'px-24px': '', + 'text-transparent': '', + 'carent-gray': '', + 'tab-4': '', + 'resize-none': '', + 'z-10': '', + 'autocomplete': 'off', + 'autocorrect': 'off', + 'autocapitalize': 'none', + 'spellcheck': 'false', + }; + Object.entries(attributes).forEach(([key, val]) => { + textarea.setAttribute(key, val); + }); + // async part + this.codeblock_renderPre(language, source, el, ctx, span) + textarea.value = source; + textarea.oninput = (ev) => { + const newValue = (ev.target as HTMLTextAreaElement).value + this.codeblock_renderPre(language, newValue, el, ctx, span) + } + textarea.onchange = (ev) => { + const newValue = (ev.target as HTMLTextAreaElement).value + // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + this.codeblock_saveContent(language, newValue, el, ctx) + } + } + }, + 1000, + ); + } catch (e) { + console.warn(`Failed to register code block processor for ${language}.`, e); + } + } + } + + /** + * Render code to targetEl + * + * @param language (does not contain meta information) + * @param source same as registerMarkdownCodeBlockProcessor args + * @param el same as registerMarkdownCodeBlockProcessor args + * @param ctx same as registerMarkdownCodeBlockProcessor args + * @param targetEl in which element should the result be rendered + */ + async codeblock_renderPre(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { + // lanugageMeta (allow both ends space, allow null string) + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) { + new Notice("Warning: whitout editor!", 3000) + throw('Warning: whitout editor!') + } + const lines = sectionInfo.text.split('\n') + if (lines.length < sectionInfo.lineStart + 1) { + new Notice("Warning: el ctx error!", 3000) + throw('Warning: el ctx error!') + } + // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` + const languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') + + // pre html string + // const pre:string = await codeToHtml(source, { + // lang: language, + // theme: this.settings.theme, + // meta: { __raw: languageMeta }, + // // https://shiki.style/packages/transformers + // transformers: [ + // transformerNotationDiff({ matchAlgorithm: 'v3' }), + // transformerNotationHighlight(), + // transformerNotationFocus(), + // transformerNotationErrorLevel(), + // transformerNotationWordHighlight(), + // + // transformerMetaHighlight(), + // transformerMetaWordHighlight(), + // ], + // }) + // targetEl.innerHTML = pre + + // [!code ++:5] + console.log('prism min render', targetEl) + if (!Prism) { + new Notice('waring: withou Prism') + throw('waring: withou Prism') + } + targetEl.innerHTML = '' + const pre = document.createElement('pre'); targetEl.appendChild(pre); + const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+language); code.innerHTML = source; + Prism.highlightElement(code) + } + + /** + * Save textarea text content to codeBlock markdown source + * + * Data security (Importance) + * - Make sure `Ctrl+z` is normal: use transaction + * - Make sure check error: try-catch + * - Make sure to remind users of errors: use Notice + * - Avoid overwriting the original data with incorrect data, this is unacceptable + * + * Refresh strategy1 (unable): real-time save, debounce + * - We need to ensure that the textarea element is not recreated when updating + * the content of the code block. It should be reused to avoid changes in the cursor position. + * - Reduce the update frequency and the number of transactions. + * Multiple calls within a certain period of time will only become one. (debounce) + * + * Refresh strategy2 (enable): onchange emit + * - It is better implemented under the obsidian architecture. + * Strategy1 requires additional processing: cache el + * - ~~Disadvantage: Can't use `ctrl+z` well in the code block.~~ + * textarea can be `ctrl+z` normally + * + * Universal + * - This should be a universal module. It has nothing to do with the logic of the plugin. + */ + async codeblock_saveContent(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { + // range + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) { + new Notice("Warning: whitout editor!", 3000) + return; + } + // sectionInfo.lineStart; // index in (```) + // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part + + // editor + const editor = this.app.workspace.activeEditor?.editor; + if (!editor) { + new Notice("Warning: whitout editor!", 3000) + return; + } + + // change + editor.transaction({ // EditorTransaction + // replaceSelection, + changes: [{ + from: {line: sectionInfo.lineStart+1, ch: 0}, + to: {line: sectionInfo.lineEnd, ch: 0}, + text: source + '\n' + }], + // selections, + // selection + }); + } + + // registerInlineCodeProcessor(): void { + // this.registerMarkdownPostProcessor(async (el, ctx) => { + // const inlineCodes = el.findAll(':not(pre) > code'); + // for (let codeElm of inlineCodes) { + // let match = codeElm.textContent?.match(SHIKI_INLINE_REGEX); // format: `{lang} code` + // if (match) { + // const highlight = await this.highlighter.getHighlightTokens(match[2], match[1]); + // const tokens = highlight?.tokens.flat(1); + // if (!tokens?.length) { + // continue; + // } + + // codeElm.empty(); + // codeElm.addClass('shiki-inline'); + + // for (let token of tokens) { + // this.highlighter.tokenToSpan(token, codeElm); + // } + // } + // } + // }); + // } + + onunload(): void { + // this.highlighter.unload(); + } + + // addActiveCodeBlock(codeBlock: CodeBlock): void { + // const filePath = codeBlock.ctx.sourcePath; + + // if (!this.activeCodeBlocks.has(filePath)) { + // this.activeCodeBlocks.set(filePath, [codeBlock]); + // } else { + // this.activeCodeBlocks.get(filePath)!.push(codeBlock); + // } + // } + + // removeActiveCodeBlock(codeBlock: CodeBlock): void { + // const filePath = codeBlock.ctx.sourcePath; + + // if (this.activeCodeBlocks.has(filePath)) { + // const index = this.activeCodeBlocks.get(filePath)!.indexOf(codeBlock); + // if (index !== -1) { + // this.activeCodeBlocks.get(filePath)!.splice(index, 1); + // } + // } + // } + + async loadSettings(): Promise { + this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData()) as Settings; + } + + async saveSettings(): Promise { + await this.saveData(this.settings); + } +} diff --git a/src/main.ts b/src/main.ts index b4c6018..7d9e31e 100644 --- a/src/main.ts +++ b/src/main.ts @@ -16,7 +16,7 @@ import { transformerMetaHighlight, transformerMetaWordHighlight, } from '@shikijs/transformers'; -import { codeToHtml } from 'shiki'; +import { codeToHtml } from 'shiki'; // 8.6MB export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` @@ -114,6 +114,8 @@ export default class ShikiPlugin extends Plugin { } } + // able edit live + // disadvantage: First screen CLS (Page jitter) if (this.settings.renderMode === 'textarea') { // - div // - span @@ -154,11 +156,11 @@ export default class ShikiPlugin extends Plugin { textarea.setAttribute(key, val); }); // async part - this.codeblock_getPre(language, source, el, ctx).then(pre => span.innerHTML = pre); + this.codeblock_renderPre(language, source, el, ctx, span) textarea.value = source; textarea.oninput = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value - this.codeblock_getPre(language, newValue, el, ctx).then(pre => span.innerHTML = pre); + this.codeblock_renderPre(language, newValue, el, ctx, span) } textarea.onchange = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value @@ -167,7 +169,7 @@ export default class ShikiPlugin extends Plugin { } } else if (this.settings.renderMode === 'pre') { - this.codeblock_getPre(language, source, el, ctx).then(pre => el.innerHTML = pre); + this.codeblock_renderPre(language, source, el, ctx, el); } else { const codeBlock = new CodeBlock(this, el, source, language, ctx); @@ -182,7 +184,16 @@ export default class ShikiPlugin extends Plugin { } } - async codeblock_getPre(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { + /** + * Render code to targetEl + * + * @param language (does not contain meta information) + * @param source same as registerMarkdownCodeBlockProcessor args + * @param el same as registerMarkdownCodeBlockProcessor args + * @param ctx same as registerMarkdownCodeBlockProcessor args + * @param targetEl in which element should the result be rendered + */ + async codeblock_renderPre(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { // lanugageMeta (allow both ends space, allow null string) const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { @@ -214,7 +225,7 @@ export default class ShikiPlugin extends Plugin { transformerMetaWordHighlight(), ], }) - return pre + targetEl.innerHTML = pre } /** From 36c9636b3415750a34bbef76c37a64dfaed0b57d Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Wed, 21 May 2025 10:15:43 +0800 Subject: [PATCH 16/66] enhance: use loadPrism --- src/main.min.ts | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index 376436f..dbff831 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -6,17 +6,6 @@ import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; // import { filterHighlightAllPlugin } from 'src/PrismPlugin'; // import { CodeHighlighter } from 'src/Highlighter'; -// [!code ++:10] -// check obsidian env -// @ts-ignore -const Prism:any|null = window.Prism; -console.log('check prism', Prism) -document.addEventListener('DOMContentLoaded', () => { - // @ts-ignore - const Prism = window.Prism; - console.log('check prism2', Prism) -}); - import { transformerNotationDiff, transformerNotationHighlight, @@ -238,7 +227,7 @@ export default class ShikiPlugin extends Plugin { // targetEl.innerHTML = pre // [!code ++:5] - console.log('prism min render', targetEl) + const Prism = await loadPrism() if (!Prism) { new Notice('waring: withou Prism') throw('waring: withou Prism') From 12b21be8174e1197fa7f488fb8e9e5238070d8b2 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Wed, 21 May 2025 12:03:35 +0800 Subject: [PATCH 17/66] fix: allow render when without sectionInfo --- src/main.min.ts | 25 ++++++++++++------------- src/main.ts | 25 ++++++++++++------------- 2 files changed, 24 insertions(+), 26 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index dbff831..70b597b 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -194,18 +194,17 @@ export default class ShikiPlugin extends Plugin { */ async codeblock_renderPre(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { // lanugageMeta (allow both ends space, allow null string) - const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) { - new Notice("Warning: whitout editor!", 3000) - throw('Warning: whitout editor!') - } - const lines = sectionInfo.text.split('\n') - if (lines.length < sectionInfo.lineStart + 1) { - new Notice("Warning: el ctx error!", 3000) - throw('Warning: el ctx error!') + let languageMeta:string = '' + const sectionInfo = ctx.getSectionInfo(el); // rerender without + if (sectionInfo) { // allow without (when rerender) + const lines = sectionInfo.text.split('\n') + if (lines.length < sectionInfo.lineStart + 1) { + new Notice("Warning: el ctx error!", 3000) + throw('Warning: el ctx error!') + } + // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` + languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') } - // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` - const languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') // pre html string // const pre:string = await codeToHtml(source, { @@ -266,7 +265,7 @@ export default class ShikiPlugin extends Plugin { // range const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { - new Notice("Warning: whitout editor!", 3000) + new Notice("Warning: without el section!", 3000) return; } // sectionInfo.lineStart; // index in (```) @@ -275,7 +274,7 @@ export default class ShikiPlugin extends Plugin { // editor const editor = this.app.workspace.activeEditor?.editor; if (!editor) { - new Notice("Warning: whitout editor!", 3000) + new Notice("Warning: without editor!", 3000) return; } diff --git a/src/main.ts b/src/main.ts index 7d9e31e..64c417c 100644 --- a/src/main.ts +++ b/src/main.ts @@ -195,18 +195,17 @@ export default class ShikiPlugin extends Plugin { */ async codeblock_renderPre(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { // lanugageMeta (allow both ends space, allow null string) - const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) { - new Notice("Warning: whitout editor!", 3000) - throw('Warning: whitout editor!') - } - const lines = sectionInfo.text.split('\n') - if (lines.length < sectionInfo.lineStart + 1) { - new Notice("Warning: el ctx error!", 3000) - throw('Warning: el ctx error!') + let languageMeta:string = '' + const sectionInfo = ctx.getSectionInfo(el); // rerender without + if (sectionInfo) { // allow without (when rerender) + const lines = sectionInfo.text.split('\n') + if (lines.length < sectionInfo.lineStart + 1) { + new Notice("Warning: el ctx error!", 3000) + throw('Warning: el ctx error!') + } + // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` + languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') } - // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` - const languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') // pre html string const pre:string = await codeToHtml(source, { @@ -256,7 +255,7 @@ export default class ShikiPlugin extends Plugin { // range const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { - new Notice("Warning: whitout editor!", 3000) + new Notice("Warning: without el section!", 3000) return; } // sectionInfo.lineStart; // index in (```) @@ -265,7 +264,7 @@ export default class ShikiPlugin extends Plugin { // editor const editor = this.app.workspace.activeEditor?.editor; if (!editor) { - new Notice("Warning: whitout editor!", 3000) + new Notice("Warning: without editor!", 3000) return; } From 2a452d8edfa14a11d824a790aa094cf3802f2cf8 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Wed, 21 May 2025 12:10:26 +0800 Subject: [PATCH 18/66] fix: last blank line question --- src/main.min.ts | 8 +++++++- src/main.ts | 10 ++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index 70b597b..bb4cf51 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -206,7 +206,13 @@ export default class ShikiPlugin extends Plugin { languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') } - // pre html string + // source correct. + // When the last line of the source is blank (with no Spaces either), + // prismjs and shiki will both ignore the line, + // this causes `textarea` and `pre` to fail to align. + if (source.endsWith('\n')) source += '\n' + + // pre html string - shiki // const pre:string = await codeToHtml(source, { // lang: language, // theme: this.settings.theme, diff --git a/src/main.ts b/src/main.ts index 64c417c..5f8aa99 100644 --- a/src/main.ts +++ b/src/main.ts @@ -206,8 +206,14 @@ export default class ShikiPlugin extends Plugin { // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') } - - // pre html string + + // source correct. + // When the last line of the source is blank (with no Spaces either), + // prismjs and shiki will both ignore the line, + // this causes `textarea` and `pre` to fail to align. + if (source.endsWith('\n')) source += '\n' + + // pre html string - shiki const pre:string = await codeToHtml(source, { lang: language, theme: this.settings.theme, From 0f1897c3470892c44e3883227c261242da572a83 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Wed, 21 May 2025 15:05:46 +0800 Subject: [PATCH 19/66] feat: editable languageType --- src/main.min.ts | 117 +++++++++++++++++++++++++++++++++--------------- src/main.ts | 115 ++++++++++++++++++++++++++++++++--------------- styles.css | 35 ++++++++++++++- 3 files changed, 191 insertions(+), 76 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index bb4cf51..205e4a3 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -106,13 +106,14 @@ export default class ShikiPlugin extends Plugin { this.registerMarkdownCodeBlockProcessor( language, async (source, el, ctx) => { + // check env // @ts-expect-error const isReadingMode = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view'); // this seems to indicate whether we are in the pdf export mode // sadly there is no section info in this mode // thus we can't check if the codeblock is at the start of the note and thus frontmatter // const isPdfExport = ctx.displayMode === true; - + // // this is so that we leave the hidden frontmatter code block in reading mode alone if (language === 'yaml' && isReadingMode && ctx.frontmatter) { const sectionInfo = ctx.getSectionInfo(el); @@ -121,15 +122,39 @@ export default class ShikiPlugin extends Plugin { return; } } + + // lanugage info + language; + let languageAll:string = '' + const sectionInfo = ctx.getSectionInfo(el); // rerender without + if (sectionInfo) { // allow without (when rerender) + const lines = sectionInfo.text.split('\n') + if (lines.length < sectionInfo.lineStart + 1) { + new Notice("Warning: el ctx error!", 3000) + throw('Warning: el ctx error!') + } + languageAll = lines[sectionInfo.lineStart].replace(/^(~~~+|```+)/, '') + } + // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` + const languageMeta:string = languageAll.replace(/^\S*\s?/, '') + // able edit live + // disadvantage: First screen CLS (Page jitter) { - // - div - // - span - // - pre - // - textarea + // dom + // - div.obsidian-shiki-plugin + // - span > pre > code + // - textarea + // - div.language-edit + + // div const div = document.createElement('div'); el.appendChild(div); div.classList.add('obsidian-shiki-plugin') - div.setAttribute('relative', ''); div.setAttribute('float-left', ''); div.setAttribute('min-w-full', ''); // div.setAttribute('min-h-100', ''); + + // span const span = document.createElement('span'); div.appendChild(span); + this.codeblock_renderPre(language, languageMeta, source, el, ctx, span) + + // textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); // TODO // These attributes are very strange. I copied the attributes on `shiki.style`. @@ -161,17 +186,34 @@ export default class ShikiPlugin extends Plugin { Object.entries(attributes).forEach(([key, val]) => { textarea.setAttribute(key, val); }); - // async part - this.codeblock_renderPre(language, source, el, ctx, span) textarea.value = source; + // textarea - async part textarea.oninput = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value - this.codeblock_renderPre(language, newValue, el, ctx, span) + this.codeblock_renderPre(language, languageMeta, newValue, el, ctx, span) } textarea.onchange = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - this.codeblock_saveContent(language, newValue, el, ctx) + this.codeblock_saveContent(null, newValue, el, ctx) + } + + // language-edit + const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); + editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); + const editInput = document.createElement('input'); editEl.appendChild(editInput); + editInput.value = languageAll + // language-edit - async part + // editInput.oninput = (ev) => { + // const newValue = (ev.target as HTMLInputElement).value + // // TODO source is old data !!!!!!!!!!!!! + // // TODO newValue language is languageAll !!!!!!!!!!!!! + // this.codeblock_renderPre(newValue, languageMeta, source, el, ctx, span) + // } + editInput.onchange = (ev) => { + const newValue = (ev.target as HTMLInputElement).value + // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + this.codeblock_saveContent(newValue, null, el, ctx) } } }, @@ -192,20 +234,7 @@ export default class ShikiPlugin extends Plugin { * @param ctx same as registerMarkdownCodeBlockProcessor args * @param targetEl in which element should the result be rendered */ - async codeblock_renderPre(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { - // lanugageMeta (allow both ends space, allow null string) - let languageMeta:string = '' - const sectionInfo = ctx.getSectionInfo(el); // rerender without - if (sectionInfo) { // allow without (when rerender) - const lines = sectionInfo.text.split('\n') - if (lines.length < sectionInfo.lineStart + 1) { - new Notice("Warning: el ctx error!", 3000) - throw('Warning: el ctx error!') - } - // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` - languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') - } - + async codeblock_renderPre(language:string, languageMeta:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { // source correct. // When the last line of the source is blank (with no Spaces either), // prismjs and shiki will both ignore the line, @@ -224,7 +253,7 @@ export default class ShikiPlugin extends Plugin { // transformerNotationFocus(), // transformerNotationErrorLevel(), // transformerNotationWordHighlight(), - // + // transformerMetaHighlight(), // transformerMetaWordHighlight(), // ], @@ -267,7 +296,7 @@ export default class ShikiPlugin extends Plugin { * Universal * - This should be a universal module. It has nothing to do with the logic of the plugin. */ - async codeblock_saveContent(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { + async codeblock_saveContent(language:string|null, source:string|null, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { // range const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { @@ -284,17 +313,31 @@ export default class ShikiPlugin extends Plugin { return; } - // change - editor.transaction({ // EditorTransaction - // replaceSelection, - changes: [{ - from: {line: sectionInfo.lineStart+1, ch: 0}, - to: {line: sectionInfo.lineEnd, ch: 0}, - text: source + '\n' - }], - // selections, - // selection - }); + // change - language + if (language !== null) { + const fristLine = sectionInfo.text.split('\n')[sectionInfo.lineStart] + const match = fristLine.match(/^(~~~+|```+).*/) + if (match) { + editor.transaction({ + changes: [{ + from: {line: sectionInfo.lineStart, ch: 0}, + to: {line: sectionInfo.lineStart+1, ch: 0}, + text: match[1] + language + '\n' + }], + }); + } + } + + // change - source + if (source !== null) { + editor.transaction({ + changes: [{ + from: {line: sectionInfo.lineStart+1, ch: 0}, + to: {line: sectionInfo.lineEnd, ch: 0}, + text: source + '\n' + }], + }); + } } // registerInlineCodeProcessor(): void { diff --git a/src/main.ts b/src/main.ts index 5f8aa99..d8303c1 100644 --- a/src/main.ts +++ b/src/main.ts @@ -98,13 +98,14 @@ export default class ShikiPlugin extends Plugin { this.registerMarkdownCodeBlockProcessor( language, async (source, el, ctx) => { + // check env // @ts-expect-error const isReadingMode = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view'); // this seems to indicate whether we are in the pdf export mode // sadly there is no section info in this mode // thus we can't check if the codeblock is at the start of the note and thus frontmatter // const isPdfExport = ctx.displayMode === true; - + // // this is so that we leave the hidden frontmatter code block in reading mode alone if (language === 'yaml' && isReadingMode && ctx.frontmatter) { const sectionInfo = ctx.getSectionInfo(el); @@ -113,17 +114,39 @@ export default class ShikiPlugin extends Plugin { return; } } + + // lanugage info + language; + let languageAll:string = '' + const sectionInfo = ctx.getSectionInfo(el); // rerender without + if (sectionInfo) { // allow without (when rerender) + const lines = sectionInfo.text.split('\n') + if (lines.length < sectionInfo.lineStart + 1) { + new Notice("Warning: el ctx error!", 3000) + throw('Warning: el ctx error!') + } + languageAll = lines[sectionInfo.lineStart].replace(/^(~~~+|```+)/, '') + } + // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` + const languageMeta:string = languageAll.replace(/^\S*\s?/, '') // able edit live // disadvantage: First screen CLS (Page jitter) if (this.settings.renderMode === 'textarea') { - // - div - // - span - // - pre - // - textarea + // dom + // - div.obsidian-shiki-plugin + // - span > pre > code + // - textarea + // - div.language-edit + + // div const div = document.createElement('div'); el.appendChild(div); div.classList.add('obsidian-shiki-plugin') - div.setAttribute('relative', ''); div.setAttribute('float-left', ''); div.setAttribute('min-w-full', ''); // div.setAttribute('min-h-100', ''); + + // span const span = document.createElement('span'); div.appendChild(span); + this.codeblock_renderPre(language, languageMeta, source, el, ctx, span) + + // textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); // TODO // These attributes are very strange. I copied the attributes on `shiki.style`. @@ -155,21 +178,38 @@ export default class ShikiPlugin extends Plugin { Object.entries(attributes).forEach(([key, val]) => { textarea.setAttribute(key, val); }); - // async part - this.codeblock_renderPre(language, source, el, ctx, span) textarea.value = source; + // textarea - async part textarea.oninput = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value - this.codeblock_renderPre(language, newValue, el, ctx, span) + this.codeblock_renderPre(language, languageMeta, newValue, el, ctx, span) } textarea.onchange = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - this.codeblock_saveContent(language, newValue, el, ctx) + this.codeblock_saveContent(null, newValue, el, ctx) + } + + // language-edit + const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); + editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); + const editInput = document.createElement('input'); editEl.appendChild(editInput); + editInput.value = languageAll + // language-edit - async part + // editInput.oninput = (ev) => { + // const newValue = (ev.target as HTMLInputElement).value + // // TODO source is old data !!!!!!!!!!!!! + // // TODO newValue language is languageAll !!!!!!!!!!!!! + // this.codeblock_renderPre(newValue, languageMeta, source, el, ctx, span) + // } + editInput.onchange = (ev) => { + const newValue = (ev.target as HTMLInputElement).value + // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + this.codeblock_saveContent(newValue, null, el, ctx) } } else if (this.settings.renderMode === 'pre') { - this.codeblock_renderPre(language, source, el, ctx, el); + this.codeblock_renderPre(language, languageMeta, source, el, ctx, el); } else { const codeBlock = new CodeBlock(this, el, source, language, ctx); @@ -193,20 +233,7 @@ export default class ShikiPlugin extends Plugin { * @param ctx same as registerMarkdownCodeBlockProcessor args * @param targetEl in which element should the result be rendered */ - async codeblock_renderPre(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { - // lanugageMeta (allow both ends space, allow null string) - let languageMeta:string = '' - const sectionInfo = ctx.getSectionInfo(el); // rerender without - if (sectionInfo) { // allow without (when rerender) - const lines = sectionInfo.text.split('\n') - if (lines.length < sectionInfo.lineStart + 1) { - new Notice("Warning: el ctx error!", 3000) - throw('Warning: el ctx error!') - } - // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` - languageMeta = lines[sectionInfo.lineStart].replace(/^[`~]+\S*\s?/, '') - } - + async codeblock_renderPre(language:string, languageMeta:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { // source correct. // When the last line of the source is blank (with no Spaces either), // prismjs and shiki will both ignore the line, @@ -257,7 +284,7 @@ export default class ShikiPlugin extends Plugin { * Universal * - This should be a universal module. It has nothing to do with the logic of the plugin. */ - async codeblock_saveContent(language:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { + async codeblock_saveContent(language:string|null, source:string|null, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { // range const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { @@ -274,17 +301,31 @@ export default class ShikiPlugin extends Plugin { return; } - // change - editor.transaction({ // EditorTransaction - // replaceSelection, - changes: [{ - from: {line: sectionInfo.lineStart+1, ch: 0}, - to: {line: sectionInfo.lineEnd, ch: 0}, - text: source + '\n' - }], - // selections, - // selection - }); + // change - language + if (language !== null) { + const fristLine = sectionInfo.text.split('\n')[sectionInfo.lineStart] + const match = fristLine.match(/^(~~~+|```+).*/) + if (match) { + editor.transaction({ + changes: [{ + from: {line: sectionInfo.lineStart, ch: 0}, + to: {line: sectionInfo.lineStart+1, ch: 0}, + text: match[1] + language + '\n' + }], + }); + } + } + + // change - source + if (source !== null) { + editor.transaction({ + changes: [{ + from: {line: sectionInfo.lineStart+1, ch: 0}, + to: {line: sectionInfo.lineEnd, ch: 0}, + text: source + '\n' + }], + }); + } } registerInlineCodeProcessor(): void { diff --git a/styles.css b/styles.css index 82f5a19..c10f450 100644 --- a/styles.css +++ b/styles.css @@ -311,17 +311,23 @@ code>span.line { [carent-gray=""] {} [font-mono=""] {} +.obsidian-shiki-plugin { + position: relative; + min-width: 100%; +} + /* * keep same: pre & textare * * It is necessary to ensure that the style of this part is not overwritten, * Otherwise, `textarea` and `code` won't align */ - :root { +:root { --shiki-x-padding: 16px; + --shiki-line-height: 24px; } .obsidian-shiki-plugin code, .obsidian-shiki-plugin textarea { - line-height: 24px !important; + line-height: var(--shiki-line-height) !important; font-size: var(--code-size) !important; } .obsidian-shiki-plugin code { @@ -337,6 +343,11 @@ code>span.line { /* edit-block-button > textarea > pre */ .obsidian-shiki-plugin pre { z-index: 0; } .obsidian-shiki-plugin textarea { z-index: 0; } +/* fix black line zero height */ +.obsidian-shiki-plugin code > span { + vertical-align: top !important; + min-height: var(--shiki-line-height) !important; +} /* read mode / rendered */ .markdown-preview-view .obsidian-shiki-plugin textarea, @@ -348,3 +359,23 @@ code>span.line { margin-top: 16px !important; margin-bottom: 16px !important; } + +/* language-type-btn */ +.obsidian-shiki-plugin .language-edit { + position: absolute; + bottom: 1px; + right: 0; + margin: 0; + padding: 0; + line-height: var(--shiki-line-height); + min-height: var(--shiki-line-height); + font-size: 13px; +} +.obsidian-shiki-plugin .language-edit>input { + margin: 0; + padding: 0 14px; + border: none; + background: none; + box-shadow: none; + text-align: right; +} From 10930249f852c679078828658642b3f0f096ecd5 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Wed, 21 May 2025 21:22:05 +0800 Subject: [PATCH 20/66] refactor: add CodeblockInfo, feat: save lang type --- src/main.ts | 175 +++++++++++++++++++++++++++++++--------------------- styles.css | 1 + 2 files changed, 107 insertions(+), 69 deletions(-) diff --git a/src/main.ts b/src/main.ts index d8303c1..f645745 100644 --- a/src/main.ts +++ b/src/main.ts @@ -17,9 +17,25 @@ import { transformerMetaWordHighlight, } from '@shikijs/transformers'; import { codeToHtml } from 'shiki'; // 8.6MB +import { language } from '@codemirror/language'; export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` +// Codeblock Info. +// Life cycle: One codeblock has one. +// Pay attention to consistency. +interface CodeblockInfo { + // from ctx.getSectionInfo(el) // [!code warning] There may be indentation + flag: string, // (```+|~~~+) + language_meta: string, // allow both end space, allow blank + language_type: string, // source code, can be an alias + source: string, + + // from obsidian callback args // [!code warning] It might be old data in oninput/onchange method + language_old: string, // to lib, can't be an alias + source_old: string, +} + export default class ShikiPlugin extends Plugin { highlighter!: CodeHighlighter; activeCodeBlocks!: Map; @@ -115,20 +131,7 @@ export default class ShikiPlugin extends Plugin { } } - // lanugage info - language; - let languageAll:string = '' - const sectionInfo = ctx.getSectionInfo(el); // rerender without - if (sectionInfo) { // allow without (when rerender) - const lines = sectionInfo.text.split('\n') - if (lines.length < sectionInfo.lineStart + 1) { - new Notice("Warning: el ctx error!", 3000) - throw('Warning: el ctx error!') - } - languageAll = lines[sectionInfo.lineStart].replace(/^(~~~+|```+)/, '') - } - // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` - const languageMeta:string = languageAll.replace(/^\S*\s?/, '') + const codeblockInfo = this.codeblock_getCodeBlockInfo(language, source, el, ctx) // able edit live // disadvantage: First screen CLS (Page jitter) @@ -144,7 +147,8 @@ export default class ShikiPlugin extends Plugin { // span const span = document.createElement('span'); div.appendChild(span); - this.codeblock_renderPre(language, languageMeta, source, el, ctx, span) + codeblockInfo.source = source + this.codeblock_renderPre(codeblockInfo, el, ctx, span) // textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); @@ -155,25 +159,7 @@ export default class ShikiPlugin extends Plugin { // // But in obsidian, I don't think it's necessary to do so. const attributes = { - 'whitespace-pre': '', - 'overflow-auto': '', - 'w-full': '', - 'h-full': '', - 'font-mono': '', - 'bg-transparent': '', - 'absolute': '', - 'inset-0': '', - 'py-20px': '', - 'px-24px': '', - 'text-transparent': '', - 'carent-gray': '', - 'tab-4': '', - 'resize-none': '', - 'z-10': '', - 'autocomplete': 'off', - 'autocorrect': 'off', - 'autocapitalize': 'none', - 'spellcheck': 'false', + 'whitespace-pre': '', 'overflow-auto': '', 'w-full': '', 'h-full': '', 'font-mono': '', 'bg-transparent': '', 'absolute': '', 'inset-0': '', 'py-20px': '', 'px-24px': '', 'text-transparent': '', 'carent-gray': '', 'tab-4': '', 'resize-none': '', 'z-10': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', }; Object.entries(attributes).forEach(([key, val]) => { textarea.setAttribute(key, val); @@ -182,34 +168,40 @@ export default class ShikiPlugin extends Plugin { // textarea - async part textarea.oninput = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value - this.codeblock_renderPre(language, languageMeta, newValue, el, ctx, span) + codeblockInfo.source = newValue + this.codeblock_renderPre(codeblockInfo, el, ctx, span) } - textarea.onchange = (ev) => { + textarea.onchange = (ev) => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLTextAreaElement).value - // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - this.codeblock_saveContent(null, newValue, el, ctx) + codeblockInfo.source = newValue + this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) } // language-edit const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); const editInput = document.createElement('input'); editEl.appendChild(editInput); - editInput.value = languageAll + editInput.value = codeblockInfo.language_type + codeblockInfo.language_meta // language-edit - async part - // editInput.oninput = (ev) => { - // const newValue = (ev.target as HTMLInputElement).value - // // TODO source is old data !!!!!!!!!!!!! - // // TODO newValue language is languageAll !!!!!!!!!!!!! - // this.codeblock_renderPre(newValue, languageMeta, source, el, ctx, span) - // } - editInput.onchange = (ev) => { + editInput.oninput = (ev) => { + const newValue = (ev.target as HTMLInputElement).value + const match = newValue.match(/^(\S*)(\s?.*)$/) + if (!match) throw('This is not a regular expression matching that may fail') + codeblockInfo.language_type = match[1] + codeblockInfo.language_meta = match[2] + this.codeblock_renderPre(codeblockInfo, el, ctx, span) + } + editInput.onchange = (ev) => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLInputElement).value - // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - this.codeblock_saveContent(newValue, null, el, ctx) + const match = newValue.match(/^(\S*)(\s?.*)$/) + if (!match) throw('This is not a regular expression matching that may fail') + codeblockInfo.language_type = match[1] + codeblockInfo.language_meta = match[2] + this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) } } else if (this.settings.renderMode === 'pre') { - this.codeblock_renderPre(language, languageMeta, source, el, ctx, el); + this.codeblock_renderPre(codeblockInfo, el, ctx, el); } else { const codeBlock = new CodeBlock(this, el, source, language, ctx); @@ -224,6 +216,47 @@ export default class ShikiPlugin extends Plugin { } } + codeblock_getCodeBlockInfo(language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): CodeblockInfo { + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) { // allow without (when rerender) + const codeblockInfo:CodeblockInfo = { + flag: '', // null flag + language_meta: '', + language_type: language_old, + source: '', // null flag + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } + // sectionInfo.lineStart; // index in (```) + // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part + + const lines = sectionInfo.text.split('\n') + if (lines.length <= sectionInfo.lineStart + 1 || lines.length <= sectionInfo.lineEnd + 1) { // Must be correct. if incorrect, must be a problem with obsidian + new Notice("Warning: el ctx error!", 3000) + throw('Warning: el ctx error!') + } + const firstLine = lines[sectionInfo.lineStart] + const match = firstLine.match(/^(~~~+|```+)(\S*)(\s?.*)$/) // [!code error] TODO indent + if (!match) { + new Notice("Warning: match codeblock frist line error!", 3000) + throw('Warning: match codeblock frist line error!') + }11 + + const codeblockInfo:CodeblockInfo = { + flag: match[1], + language_meta: match[3], + language_type: match[2], + source: lines.slice(sectionInfo.lineStart + 1, sectionInfo.lineEnd).join('\n'), + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } + /** * Render code to targetEl * @@ -233,18 +266,19 @@ export default class ShikiPlugin extends Plugin { * @param ctx same as registerMarkdownCodeBlockProcessor args * @param targetEl in which element should the result be rendered */ - async codeblock_renderPre(language:string, languageMeta:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { + async codeblock_renderPre(codeblockInfo:CodeblockInfo, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { // source correct. // When the last line of the source is blank (with no Spaces either), // prismjs and shiki will both ignore the line, // this causes `textarea` and `pre` to fail to align. - if (source.endsWith('\n')) source += '\n' + let source: string = codeblockInfo.source + if (codeblockInfo.source.endsWith('\n')) source += '\n' // pre html string - shiki const pre:string = await codeToHtml(source, { - lang: language, + lang: codeblockInfo.language_old, theme: this.settings.theme, - meta: { __raw: languageMeta }, + meta: { __raw: codeblockInfo.language_meta }, // https://shiki.style/packages/transformers transformers: [ transformerNotationDiff({ matchAlgorithm: 'v3' }), @@ -280,11 +314,18 @@ export default class ShikiPlugin extends Plugin { * Strategy1 requires additional processing: cache el * - ~~Disadvantage: Can't use `ctrl+z` well in the code block.~~ * textarea can be `ctrl+z` normally + * - Afraid if the program crashes, the frequency of save is low * - * Universal + * Other / Universal * - This should be a universal module. It has nothing to do with the logic of the plugin. + * - Indent process + * + * @param isUpdateLanguage reduce modifications and minimize mistakes, can be used to increase stability + * @param isUpdateSource reduce modifications and minimize mistakes, can be used to increase stability */ - async codeblock_saveContent(language:string|null, source:string|null, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { + async codeblock_saveContent(codeblockInfo: CodeblockInfo, el:HTMLElement, ctx:MarkdownPostProcessorContext, + isUpdateLanguage: boolean = true, isUpdateSource: boolean = true + ): Promise { // range const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { @@ -302,27 +343,23 @@ export default class ShikiPlugin extends Plugin { } // change - language - if (language !== null) { - const fristLine = sectionInfo.text.split('\n')[sectionInfo.lineStart] - const match = fristLine.match(/^(~~~+|```+).*/) - if (match) { - editor.transaction({ - changes: [{ - from: {line: sectionInfo.lineStart, ch: 0}, - to: {line: sectionInfo.lineStart+1, ch: 0}, - text: match[1] + language + '\n' - }], - }); - } + if (isUpdateLanguage) { + editor.transaction({ + changes: [{ + from: {line: sectionInfo.lineStart, ch: 0}, + to: {line: sectionInfo.lineStart+1, ch: 0}, + text: codeblockInfo.flag + codeblockInfo.language_type + codeblockInfo.language_meta + '\n' + }], + }); } // change - source - if (source !== null) { + if (isUpdateSource) { editor.transaction({ changes: [{ from: {line: sectionInfo.lineStart+1, ch: 0}, to: {line: sectionInfo.lineEnd, ch: 0}, - text: source + '\n' + text: codeblockInfo.source + '\n' }], }); } diff --git a/styles.css b/styles.css index c10f450..b38a3ea 100644 --- a/styles.css +++ b/styles.css @@ -370,6 +370,7 @@ code>span.line { line-height: var(--shiki-line-height); min-height: var(--shiki-line-height); font-size: 13px; + opacity: 0.5; } .obsidian-shiki-plugin .language-edit>input { margin: 0; From 1ce4827d538f511938022e1fd89aae3d63857384 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Thu, 22 May 2025 08:37:02 +0800 Subject: [PATCH 21/66] enhance: indent recognition --- src/main.ts | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main.ts b/src/main.ts index f645745..c98228c 100644 --- a/src/main.ts +++ b/src/main.ts @@ -20,12 +20,15 @@ import { codeToHtml } from 'shiki'; // 8.6MB import { language } from '@codemirror/language'; export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` +const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/ +const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/ // Codeblock Info. // Life cycle: One codeblock has one. // Pay attention to consistency. interface CodeblockInfo { // from ctx.getSectionInfo(el) // [!code warning] There may be indentation + prefix: string, // `> - * + ` // [!code warning] Because of the list nest, first-line indentation is not equal to universal indentation. flag: string, // (```+|~~~+) language_meta: string, // allow both end space, allow blank language_type: string, // source code, can be an alias @@ -220,6 +223,7 @@ export default class ShikiPlugin extends Plugin { const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { // allow without (when rerender) const codeblockInfo:CodeblockInfo = { + prefix: '', flag: '', // null flag language_meta: '', language_type: language_old, @@ -239,16 +243,17 @@ export default class ShikiPlugin extends Plugin { throw('Warning: el ctx error!') } const firstLine = lines[sectionInfo.lineStart] - const match = firstLine.match(/^(~~~+|```+)(\S*)(\s?.*)$/) // [!code error] TODO indent + const match = firstLine.match(reg_code) if (!match) { new Notice("Warning: match codeblock frist line error!", 3000) throw('Warning: match codeblock frist line error!') }11 const codeblockInfo:CodeblockInfo = { - flag: match[1], - language_meta: match[3], - language_type: match[2], + prefix: match[1], + flag: match[3], + language_meta: match[5], + language_type: match[4], source: lines.slice(sectionInfo.lineStart + 1, sectionInfo.lineEnd).join('\n'), language_old: language_old, From 277ccc458472e34f6af81d8363a6056a7270e110 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Thu, 22 May 2025 18:42:22 +0800 Subject: [PATCH 22/66] fix: render error when readmode codeblock in nest --- src/main.ts | 36 ++++++++++++++++++++++++++---------- 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/src/main.ts b/src/main.ts index c98228c..f10600e 100644 --- a/src/main.ts +++ b/src/main.ts @@ -32,7 +32,7 @@ interface CodeblockInfo { flag: string, // (```+|~~~+) language_meta: string, // allow both end space, allow blank language_type: string, // source code, can be an alias - source: string, + source: string|null, // from obsidian callback args // [!code warning] It might be old data in oninput/onchange method language_old: string, // to lib, can't be an alias @@ -221,13 +221,14 @@ export default class ShikiPlugin extends Plugin { codeblock_getCodeBlockInfo(language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): CodeblockInfo { const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) { // allow without (when rerender) + if (!sectionInfo) { + // This is possible. when rerender const codeblockInfo:CodeblockInfo = { prefix: '', flag: '', // null flag language_meta: '', language_type: language_old, - source: '', // null flag + source: null, // null flag language_old: language_old, source_old: source_old, @@ -238,16 +239,31 @@ export default class ShikiPlugin extends Plugin { // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part const lines = sectionInfo.text.split('\n') - if (lines.length <= sectionInfo.lineStart + 1 || lines.length <= sectionInfo.lineEnd + 1) { // Must be correct. if incorrect, must be a problem with obsidian + if (lines.length <= sectionInfo.lineStart + 1 || lines.length <= sectionInfo.lineEnd + 1) { + // This is impossible. + // Unless obsidian makes a mistake. new Notice("Warning: el ctx error!", 3000) throw('Warning: el ctx error!') } + const firstLine = lines[sectionInfo.lineStart] const match = firstLine.match(reg_code) if (!match) { - new Notice("Warning: match codeblock frist line error!", 3000) - throw('Warning: match codeblock frist line error!') - }11 + // This is possible. + // When the code block is nested and the first line is not a code block + // (The smallest section of getSectionInfo is `markdown-preview-section>div`) + const codeblockInfo:CodeblockInfo = { + prefix: '', + flag: '', // null flag + language_meta: '', + language_type: language_old, + source: null, // null flag + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } const codeblockInfo:CodeblockInfo = { prefix: match[1], @@ -276,8 +292,8 @@ export default class ShikiPlugin extends Plugin { // When the last line of the source is blank (with no Spaces either), // prismjs and shiki will both ignore the line, // this causes `textarea` and `pre` to fail to align. - let source: string = codeblockInfo.source - if (codeblockInfo.source.endsWith('\n')) source += '\n' + let source: string = codeblockInfo.source ?? codeblockInfo.source_old + if (source.endsWith('\n')) source += '\n' // pre html string - shiki const pre:string = await codeToHtml(source, { @@ -364,7 +380,7 @@ export default class ShikiPlugin extends Plugin { changes: [{ from: {line: sectionInfo.lineStart+1, ch: 0}, to: {line: sectionInfo.lineEnd, ch: 0}, - text: codeblockInfo.source + '\n' + text: codeblockInfo.source ?? codeblockInfo.source_old + '\n' }], }); } From 84e7cd00e53d29cd489137fe1b8e1eaf5af53814 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Thu, 22 May 2025 19:05:14 +0800 Subject: [PATCH 23/66] chore: update min version --- src/main.min.ts | 222 ++++++++++++++++++++++++++++++------------------ src/main.ts | 12 +-- 2 files changed, 148 insertions(+), 86 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index 205e4a3..a688288 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -1,4 +1,5 @@ -import { loadPrism, Plugin, TFile, type MarkdownPostProcessor, MarkdownPostProcessorContext, Notice } from 'obsidian'; +import { language } from 'happy-dom/lib/PropertySymbol'; +import { loadPrism, Plugin, type MarkdownPostProcessor, type MarkdownPostProcessorContext, Notice } from 'obsidian'; // import { CodeBlock } from 'src/CodeBlock'; // import { createCm6Plugin } from 'src/codemirror/Cm6_ViewPlugin'; import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; @@ -6,16 +7,16 @@ import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; // import { filterHighlightAllPlugin } from 'src/PrismPlugin'; // import { CodeHighlighter } from 'src/Highlighter'; -import { - transformerNotationDiff, - transformerNotationHighlight, - transformerNotationFocus, - transformerNotationErrorLevel, - transformerNotationWordHighlight, - - transformerMetaHighlight, - transformerMetaWordHighlight, -} from '@shikijs/transformers'; +// import { +// transformerNotationDiff, +// transformerNotationHighlight, +// transformerNotationFocus, +// transformerNotationErrorLevel, +// transformerNotationWordHighlight, +// +// transformerMetaHighlight, +// transformerMetaWordHighlight, +// } from '@shikijs/transformers'; // import { codeToHtml } from 'shiki'; // 8.6MB // [!code ++:6] // import { getHighlighter } from 'shiki'; @@ -26,6 +27,26 @@ import { // const codeToHtml = highlighter.codeToHtml export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` +const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/ +// const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/ + +/** + * Codeblock Info. + * Life cycle: One codeblock has one. + * Pay attention to consistency. + */ +interface CodeblockInfo { + // from ctx.getSectionInfo(el) // [!code warning] There may be indentation + prefix: string, // `> - * + ` // [!code warning] Because of the list nest, first-line indentation is not equal to universal indentation. + flag: string, // (```+|~~~+) + language_meta: string, // allow both end space, allow blank + language_type: string, // source code, can be an alias + source: string|null, + + // from obsidian callback args // [!code warning] It might be old data in oninput/onchange method + language_old: string, // to lib, can't be an alias + source_old: string, +} export default class ShikiPlugin extends Plugin { // highlighter!: CodeHighlighter; @@ -123,20 +144,7 @@ export default class ShikiPlugin extends Plugin { } } - // lanugage info - language; - let languageAll:string = '' - const sectionInfo = ctx.getSectionInfo(el); // rerender without - if (sectionInfo) { // allow without (when rerender) - const lines = sectionInfo.text.split('\n') - if (lines.length < sectionInfo.lineStart + 1) { - new Notice("Warning: el ctx error!", 3000) - throw('Warning: el ctx error!') - } - languageAll = lines[sectionInfo.lineStart].replace(/^(~~~+|```+)/, '') - } - // If an alias is used, `lines[sectionInfo.lineStart]` may not necessarily contain `language` - const languageMeta:string = languageAll.replace(/^\S*\s?/, '') + const codeblockInfo = this.codeblock_getCodeBlockInfo(language, source, el, ctx) // able edit live // disadvantage: First screen CLS (Page jitter) @@ -152,7 +160,8 @@ export default class ShikiPlugin extends Plugin { // span const span = document.createElement('span'); div.appendChild(span); - this.codeblock_renderPre(language, languageMeta, source, el, ctx, span) + codeblockInfo.source = source + this.codeblock_renderPre(codeblockInfo, el, ctx, span) // textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); @@ -163,25 +172,7 @@ export default class ShikiPlugin extends Plugin { // // But in obsidian, I don't think it's necessary to do so. const attributes = { - 'whitespace-pre': '', - 'overflow-auto': '', - 'w-full': '', - 'h-full': '', - 'font-mono': '', - 'bg-transparent': '', - 'absolute': '', - 'inset-0': '', - 'py-20px': '', - 'px-24px': '', - 'text-transparent': '', - 'carent-gray': '', - 'tab-4': '', - 'resize-none': '', - 'z-10': '', - 'autocomplete': 'off', - 'autocorrect': 'off', - 'autocapitalize': 'none', - 'spellcheck': 'false', + 'whitespace-pre': '', 'overflow-auto': '', 'w-full': '', 'h-full': '', 'font-mono': '', 'bg-transparent': '', 'absolute': '', 'inset-0': '', 'py-20px': '', 'px-24px': '', 'text-transparent': '', 'carent-gray': '', 'tab-4': '', 'resize-none': '', 'z-10': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', }; Object.entries(attributes).forEach(([key, val]) => { textarea.setAttribute(key, val); @@ -190,30 +181,36 @@ export default class ShikiPlugin extends Plugin { // textarea - async part textarea.oninput = (ev) => { const newValue = (ev.target as HTMLTextAreaElement).value - this.codeblock_renderPre(language, languageMeta, newValue, el, ctx, span) + codeblockInfo.source = newValue + this.codeblock_renderPre(codeblockInfo, el, ctx, span) } - textarea.onchange = (ev) => { + textarea.onchange = (ev) => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLTextAreaElement).value - // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - this.codeblock_saveContent(null, newValue, el, ctx) + codeblockInfo.source = newValue + this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) } // language-edit const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); const editInput = document.createElement('input'); editEl.appendChild(editInput); - editInput.value = languageAll + editInput.value = codeblockInfo.language_type + codeblockInfo.language_meta // language-edit - async part - // editInput.oninput = (ev) => { - // const newValue = (ev.target as HTMLInputElement).value - // // TODO source is old data !!!!!!!!!!!!! - // // TODO newValue language is languageAll !!!!!!!!!!!!! - // this.codeblock_renderPre(newValue, languageMeta, source, el, ctx, span) - // } - editInput.onchange = (ev) => { + editInput.oninput = (ev) => { const newValue = (ev.target as HTMLInputElement).value - // on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - this.codeblock_saveContent(newValue, null, el, ctx) + const match = /^(\S*)(\s?.*)$/.exec(newValue) + if (!match) throw('This is not a regular expression matching that may fail') + codeblockInfo.language_type = match[1] + codeblockInfo.language_meta = match[2] + this.codeblock_renderPre(codeblockInfo, el, ctx, span) + } + editInput.onchange = (ev) => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + const newValue = (ev.target as HTMLInputElement).value + const match = /^(\S*)(\s?.*)$/.exec(newValue) + if (!match) throw('This is not a regular expression matching that may fail') + codeblockInfo.language_type = match[1] + codeblockInfo.language_meta = match[2] + this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) } } }, @@ -225,6 +222,65 @@ export default class ShikiPlugin extends Plugin { } } + codeblock_getCodeBlockInfo(language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): CodeblockInfo { + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) { + // This is possible. when rerender + const codeblockInfo:CodeblockInfo = { + prefix: '', + flag: '', // null flag + language_meta: '', + language_type: language_old, + source: null, // null flag + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } + // sectionInfo.lineStart; // index in (```) + // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part + + const lines = sectionInfo.text.split('\n') + if (lines.length <= sectionInfo.lineStart + 1 || lines.length <= sectionInfo.lineEnd + 1) { + // This is impossible. + // Unless obsidian makes a mistake. + new Notice("Warning: el ctx error!", 3000) + throw('Warning: el ctx error!') + } + + const firstLine = lines[sectionInfo.lineStart] + const match = reg_code.exec(firstLine) + if (!match) { + // This is possible. + // When the code block is nested and the first line is not a code block + // (The smallest section of getSectionInfo is `markdown-preview-section>div`) + const codeblockInfo:CodeblockInfo = { + prefix: '', + flag: '', // null flag + language_meta: '', + language_type: language_old, + source: null, // null flag + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } + + const codeblockInfo:CodeblockInfo = { + prefix: match[1], + flag: match[3], + language_meta: match[5], + language_type: match[4], + source: lines.slice(sectionInfo.lineStart + 1, sectionInfo.lineEnd).join('\n'), + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } + /** * Render code to targetEl * @@ -234,18 +290,19 @@ export default class ShikiPlugin extends Plugin { * @param ctx same as registerMarkdownCodeBlockProcessor args * @param targetEl in which element should the result be rendered */ - async codeblock_renderPre(language:string, languageMeta:string, source:string, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { + async codeblock_renderPre(codeblockInfo:CodeblockInfo, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { // source correct. // When the last line of the source is blank (with no Spaces either), // prismjs and shiki will both ignore the line, // this causes `textarea` and `pre` to fail to align. + let source: string = codeblockInfo.source ?? codeblockInfo.source_old if (source.endsWith('\n')) source += '\n' // pre html string - shiki // const pre:string = await codeToHtml(source, { - // lang: language, + // lang: codeblockInfo.language_old, // theme: this.settings.theme, - // meta: { __raw: languageMeta }, + // meta: { __raw: codeblockInfo.language_meta }, // // https://shiki.style/packages/transformers // transformers: [ // transformerNotationDiff({ matchAlgorithm: 'v3' }), @@ -253,14 +310,14 @@ export default class ShikiPlugin extends Plugin { // transformerNotationFocus(), // transformerNotationErrorLevel(), // transformerNotationWordHighlight(), - + // // transformerMetaHighlight(), // transformerMetaWordHighlight(), // ], // }) // targetEl.innerHTML = pre - // [!code ++:5] + // pre html string- prism // [!code ++] const Prism = await loadPrism() if (!Prism) { new Notice('waring: withou Prism') @@ -268,7 +325,7 @@ export default class ShikiPlugin extends Plugin { } targetEl.innerHTML = '' const pre = document.createElement('pre'); targetEl.appendChild(pre); - const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+language); code.innerHTML = source; + const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); code.innerHTML = source; Prism.highlightElement(code) } @@ -292,11 +349,18 @@ export default class ShikiPlugin extends Plugin { * Strategy1 requires additional processing: cache el * - ~~Disadvantage: Can't use `ctrl+z` well in the code block.~~ * textarea can be `ctrl+z` normally + * - Afraid if the program crashes, the frequency of save is low * - * Universal + * Other / Universal * - This should be a universal module. It has nothing to do with the logic of the plugin. + * - Indent process + * + * @param isUpdateLanguage reduce modifications and minimize mistakes, can be used to increase stability + * @param isUpdateSource reduce modifications and minimize mistakes, can be used to increase stability */ - async codeblock_saveContent(language:string|null, source:string|null, el:HTMLElement, ctx:MarkdownPostProcessorContext): Promise { + async codeblock_saveContent(codeblockInfo: CodeblockInfo, el:HTMLElement, ctx:MarkdownPostProcessorContext, + isUpdateLanguage: boolean = true, isUpdateSource: boolean = true + ): Promise { // range const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { @@ -314,27 +378,23 @@ export default class ShikiPlugin extends Plugin { } // change - language - if (language !== null) { - const fristLine = sectionInfo.text.split('\n')[sectionInfo.lineStart] - const match = fristLine.match(/^(~~~+|```+).*/) - if (match) { - editor.transaction({ - changes: [{ - from: {line: sectionInfo.lineStart, ch: 0}, - to: {line: sectionInfo.lineStart+1, ch: 0}, - text: match[1] + language + '\n' - }], - }); - } + if (isUpdateLanguage) { + editor.transaction({ + changes: [{ + from: {line: sectionInfo.lineStart, ch: 0}, + to: {line: sectionInfo.lineStart+1, ch: 0}, + text: codeblockInfo.flag + codeblockInfo.language_type + codeblockInfo.language_meta + '\n' + }], + }); } // change - source - if (source !== null) { + if (isUpdateSource) { editor.transaction({ changes: [{ from: {line: sectionInfo.lineStart+1, ch: 0}, to: {line: sectionInfo.lineEnd, ch: 0}, - text: source + '\n' + text: codeblockInfo.source ?? codeblockInfo.source_old + '\n' }], }); } diff --git a/src/main.ts b/src/main.ts index f10600e..ec3ae58 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,4 +1,4 @@ -import { loadPrism, Plugin, TFile, type MarkdownPostProcessor, MarkdownPostProcessorContext, Notice } from 'obsidian'; +import { loadPrism, Plugin, TFile, type MarkdownPostProcessor, type MarkdownPostProcessorContext, Notice } from 'obsidian'; import { CodeBlock } from 'src/CodeBlock'; import { createCm6Plugin } from 'src/codemirror/Cm6_ViewPlugin'; import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; @@ -21,11 +21,13 @@ import { language } from '@codemirror/language'; export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/ -const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/ +// const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/ -// Codeblock Info. -// Life cycle: One codeblock has one. -// Pay attention to consistency. +/** + * Codeblock Info. + * Life cycle: One codeblock has one. + * Pay attention to consistency. + */ interface CodeblockInfo { // from ctx.getSectionInfo(el) // [!code warning] There may be indentation prefix: string, // `> - * + ` // [!code warning] Because of the list nest, first-line indentation is not equal to universal indentation. From 98477cbc92ef27d84f5070ffb9c8de843435ca5b Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Thu, 22 May 2025 20:52:19 +0800 Subject: [PATCH 24/66] chore: lint code --- bun.lock | 6 ++++++ package.json | 1 + src/main.min.ts | 52 ++++++++++++++++++++++++------------------------- src/main.ts | 34 ++++++++++++++++++-------------- 4 files changed, 51 insertions(+), 42 deletions(-) diff --git a/bun.lock b/bun.lock index cc2e2ef..e64b3d7 100644 --- a/bun.lock +++ b/bun.lock @@ -17,8 +17,10 @@ "@happy-dom/global-registrator": "^17.4.7", "@lemons_dev/parsinom": "^0.0.12", "@lezer/common": "^1.2.3", + "@shikijs/transformers": "^3.4.2", "@tsconfig/svelte": "^5.0.4", "@types/bun": "^1.2.13", + "@types/prismjs": "^1.26.5", "builtin-modules": "^5.0.0", "esbuild": "^0.25.4", "esbuild-plugin-copy-watch": "^2.3.1", @@ -164,6 +166,8 @@ "@shikijs/themes": ["@shikijs/themes@3.4.2", "", { "dependencies": { "@shikijs/types": "3.4.2" } }, "sha512-qAEuAQh+brd8Jyej2UDDf+b4V2g1Rm8aBIdvt32XhDPrHvDkEnpb7Kzc9hSuHUxz0Iuflmq7elaDuQAP9bHIhg=="], + "@shikijs/transformers": ["@shikijs/transformers@3.4.2", "", { "dependencies": { "@shikijs/core": "3.4.2", "@shikijs/types": "3.4.2" } }, "sha512-I5baLVi/ynLEOZoWSAMlACHNnG+yw5HDmse0oe+GW6U1u+ULdEB3UHiVWaHoJSSONV7tlcVxuaMy74sREDkSvg=="], + "@shikijs/types": ["@shikijs/types@3.4.2", "", { "dependencies": { "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, "sha512-zHC1l7L+eQlDXLnxvM9R91Efh2V4+rN3oMVS2swCBssbj2U/FBwybD1eeLaq8yl/iwT+zih8iUbTBCgGZOYlVg=="], "@shikijs/vscode-textmate": ["@shikijs/vscode-textmate@10.0.2", "", {}, "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg=="], @@ -184,6 +188,8 @@ "@types/node": ["@types/node@20.17.48", "", { "dependencies": { "undici-types": "~6.19.2" } }, "sha512-KpSfKOHPsiSC4IkZeu2LsusFwExAIVGkhG1KkbaBMLwau0uMhj0fCrvyg9ddM2sAvd+gtiBJLir4LAw1MNMIaw=="], + "@types/prismjs": ["@types/prismjs@1.26.5", "", {}, "sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ=="], + "@types/tern": ["@types/tern@0.23.9", "", { "dependencies": { "@types/estree": "*" } }, "sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw=="], "@types/unist": ["@types/unist@3.0.3", "", {}, "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q=="], diff --git a/package.json b/package.json index 3ae699d..17f3622 100644 --- a/package.json +++ b/package.json @@ -39,6 +39,7 @@ "@shikijs/transformers": "^3.4.2", "@tsconfig/svelte": "^5.0.4", "@types/bun": "^1.2.13", + "@types/prismjs": "^1.26.5", "builtin-modules": "^5.0.0", "esbuild": "^0.25.4", "esbuild-plugin-copy-watch": "^2.3.1", diff --git a/src/main.min.ts b/src/main.min.ts index a688288..a5c5113 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -1,5 +1,5 @@ -import { language } from 'happy-dom/lib/PropertySymbol'; import { loadPrism, Plugin, type MarkdownPostProcessor, type MarkdownPostProcessorContext, Notice } from 'obsidian'; +import type Prism from 'prismjs' // [!code ++] // import { CodeBlock } from 'src/CodeBlock'; // import { createCm6Plugin } from 'src/codemirror/Cm6_ViewPlugin'; import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; @@ -18,13 +18,12 @@ import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; // transformerMetaWordHighlight, // } from '@shikijs/transformers'; // import { codeToHtml } from 'shiki'; // 8.6MB -// [!code ++:6] -// import { getHighlighter } from 'shiki'; -// const highlighter = await getHighlighter({ -// themes: ['github-dark'], // 只加载需要的主题 -// langs: ['javascript'], // 只加载需要的语言 -// }); -// const codeToHtml = highlighter.codeToHtml + +declare module 'obsidian' { + interface MarkdownPostProcessorContext { + containerEl: HTMLElement + } +} export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/ @@ -128,8 +127,7 @@ export default class ShikiPlugin extends Plugin { language, async (source, el, ctx) => { // check env - // @ts-expect-error - const isReadingMode = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view'); + const isReadingMode: boolean = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view'); // this seems to indicate whether we are in the pdf export mode // sadly there is no section info in this mode // thus we can't check if the codeblock is at the start of the note and thus frontmatter @@ -161,7 +159,7 @@ export default class ShikiPlugin extends Plugin { // span const span = document.createElement('span'); div.appendChild(span); codeblockInfo.source = source - this.codeblock_renderPre(codeblockInfo, el, ctx, span) + void this.codeblock_renderPre(codeblockInfo, el, ctx, span) // textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); @@ -179,15 +177,15 @@ export default class ShikiPlugin extends Plugin { }); textarea.value = source; // textarea - async part - textarea.oninput = (ev) => { + textarea.oninput = (ev): void => { const newValue = (ev.target as HTMLTextAreaElement).value codeblockInfo.source = newValue - this.codeblock_renderPre(codeblockInfo, el, ctx, span) + void this.codeblock_renderPre(codeblockInfo, el, ctx, span) } - textarea.onchange = (ev) => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLTextAreaElement).value codeblockInfo.source = newValue - this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) + void this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) } // language-edit @@ -196,21 +194,21 @@ export default class ShikiPlugin extends Plugin { const editInput = document.createElement('input'); editEl.appendChild(editInput); editInput.value = codeblockInfo.language_type + codeblockInfo.language_meta // language-edit - async part - editInput.oninput = (ev) => { + editInput.oninput = (ev): void => { const newValue = (ev.target as HTMLInputElement).value const match = /^(\S*)(\s?.*)$/.exec(newValue) - if (!match) throw('This is not a regular expression matching that may fail') + if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] - this.codeblock_renderPre(codeblockInfo, el, ctx, span) + void this.codeblock_renderPre(codeblockInfo, el, ctx, span) } - editInput.onchange = (ev) => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLInputElement).value const match = /^(\S*)(\s?.*)$/.exec(newValue) - if (!match) throw('This is not a regular expression matching that may fail') + if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] - this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) + void this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) } } }, @@ -246,7 +244,7 @@ export default class ShikiPlugin extends Plugin { // This is impossible. // Unless obsidian makes a mistake. new Notice("Warning: el ctx error!", 3000) - throw('Warning: el ctx error!') + throw new Error('Warning: el ctx error!') } const firstLine = lines[sectionInfo.lineStart] @@ -318,15 +316,15 @@ export default class ShikiPlugin extends Plugin { // targetEl.innerHTML = pre // pre html string- prism // [!code ++] - const Prism = await loadPrism() - if (!Prism) { - new Notice('waring: withou Prism') - throw('waring: withou Prism') + const prism = await loadPrism() as typeof Prism; + if (!prism) { + new Notice('warning: withou Prism') + throw new Error('warning: withou Prism') } targetEl.innerHTML = '' const pre = document.createElement('pre'); targetEl.appendChild(pre); const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); code.innerHTML = source; - Prism.highlightElement(code) + prism.highlightElement(code) } /** diff --git a/src/main.ts b/src/main.ts index ec3ae58..e997358 100644 --- a/src/main.ts +++ b/src/main.ts @@ -17,7 +17,12 @@ import { transformerMetaWordHighlight, } from '@shikijs/transformers'; import { codeToHtml } from 'shiki'; // 8.6MB -import { language } from '@codemirror/language'; + +declare module 'obsidian' { + interface MarkdownPostProcessorContext { + containerEl: HTMLElement + } +} export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/ @@ -120,8 +125,7 @@ export default class ShikiPlugin extends Plugin { language, async (source, el, ctx) => { // check env - // @ts-expect-error - const isReadingMode = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view'); + const isReadingMode: boolean = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view'); // this seems to indicate whether we are in the pdf export mode // sadly there is no section info in this mode // thus we can't check if the codeblock is at the start of the note and thus frontmatter @@ -153,7 +157,7 @@ export default class ShikiPlugin extends Plugin { // span const span = document.createElement('span'); div.appendChild(span); codeblockInfo.source = source - this.codeblock_renderPre(codeblockInfo, el, ctx, span) + this.codeblock_renderPre(codeblockInfo, el, ctx, span).then().catch() // textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); @@ -171,12 +175,12 @@ export default class ShikiPlugin extends Plugin { }); textarea.value = source; // textarea - async part - textarea.oninput = (ev) => { + textarea.oninput = (ev): void => { const newValue = (ev.target as HTMLTextAreaElement).value codeblockInfo.source = newValue - this.codeblock_renderPre(codeblockInfo, el, ctx, span) + void this.codeblock_renderPre(codeblockInfo, el, ctx, span) } - textarea.onchange = (ev) => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLTextAreaElement).value codeblockInfo.source = newValue this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) @@ -188,25 +192,25 @@ export default class ShikiPlugin extends Plugin { const editInput = document.createElement('input'); editEl.appendChild(editInput); editInput.value = codeblockInfo.language_type + codeblockInfo.language_meta // language-edit - async part - editInput.oninput = (ev) => { + editInput.oninput = (ev): void => { const newValue = (ev.target as HTMLInputElement).value const match = newValue.match(/^(\S*)(\s?.*)$/) - if (!match) throw('This is not a regular expression matching that may fail') + if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] - this.codeblock_renderPre(codeblockInfo, el, ctx, span) + void this.codeblock_renderPre(codeblockInfo, el, ctx, span) } - editInput.onchange = (ev) => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLInputElement).value const match = newValue.match(/^(\S*)(\s?.*)$/) - if (!match) throw('This is not a regular expression matching that may fail') + if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] - this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) + void this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) } } else if (this.settings.renderMode === 'pre') { - this.codeblock_renderPre(codeblockInfo, el, ctx, el); + void this.codeblock_renderPre(codeblockInfo, el, ctx, el) } else { const codeBlock = new CodeBlock(this, el, source, language, ctx); @@ -245,7 +249,7 @@ export default class ShikiPlugin extends Plugin { // This is impossible. // Unless obsidian makes a mistake. new Notice("Warning: el ctx error!", 3000) - throw('Warning: el ctx error!') + throw new Error('Warning: el ctx error!') } const firstLine = lines[sectionInfo.lineStart] From a6e1d360645ee059a20286b04509fa40d2ec86ac Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Thu, 22 May 2025 21:30:53 +0800 Subject: [PATCH 25/66] feat: add setting: renderEngine --- src/main.min.ts | 58 ++++++++++++++++++++----------------- src/main.ts | 49 ++++++++++++++++++++----------- src/settings/Settings.ts | 2 ++ src/settings/SettingsTab.ts | 20 +++++++++++-- 4 files changed, 82 insertions(+), 47 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index a5c5113..1038a11 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -297,34 +297,38 @@ export default class ShikiPlugin extends Plugin { if (source.endsWith('\n')) source += '\n' // pre html string - shiki - // const pre:string = await codeToHtml(source, { - // lang: codeblockInfo.language_old, - // theme: this.settings.theme, - // meta: { __raw: codeblockInfo.language_meta }, - // // https://shiki.style/packages/transformers - // transformers: [ - // transformerNotationDiff({ matchAlgorithm: 'v3' }), - // transformerNotationHighlight(), - // transformerNotationFocus(), - // transformerNotationErrorLevel(), - // transformerNotationWordHighlight(), - // - // transformerMetaHighlight(), - // transformerMetaWordHighlight(), - // ], - // }) - // targetEl.innerHTML = pre - - // pre html string- prism // [!code ++] - const prism = await loadPrism() as typeof Prism; - if (!prism) { - new Notice('warning: withou Prism') - throw new Error('warning: withou Prism') + // if (this.settings.renderEngine == 'shiki') { + // const pre:string = await codeToHtml(source, { + // lang: codeblockInfo.language_old, + // theme: this.settings.theme, + // meta: { __raw: codeblockInfo.language_meta }, + // // https://shiki.style/packages/transformers + // transformers: [ + // transformerNotationDiff({ matchAlgorithm: 'v3' }), + // transformerNotationHighlight(), + // transformerNotationFocus(), + // transformerNotationErrorLevel(), + // transformerNotationWordHighlight(), + // + // transformerMetaHighlight(), + // transformerMetaWordHighlight(), + // ], + // }) + // targetEl.innerHTML = pre + // } + + // pre html string - prism + { + const prism = await loadPrism() as typeof Prism; + if (!prism) { + new Notice('warning: withou Prism') + throw new Error('warning: withou Prism') + } + targetEl.innerHTML = '' + const pre = document.createElement('pre'); targetEl.appendChild(pre); + const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); code.innerHTML = source; + prism.highlightElement(code) } - targetEl.innerHTML = '' - const pre = document.createElement('pre'); targetEl.appendChild(pre); - const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); code.innerHTML = source; - prism.highlightElement(code) } /** diff --git a/src/main.ts b/src/main.ts index e997358..d9457b4 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,4 +1,5 @@ import { loadPrism, Plugin, TFile, type MarkdownPostProcessor, type MarkdownPostProcessorContext, Notice } from 'obsidian'; +import type Prism from 'prismjs' import { CodeBlock } from 'src/CodeBlock'; import { createCm6Plugin } from 'src/codemirror/Cm6_ViewPlugin'; import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; @@ -302,23 +303,37 @@ export default class ShikiPlugin extends Plugin { if (source.endsWith('\n')) source += '\n' // pre html string - shiki - const pre:string = await codeToHtml(source, { - lang: codeblockInfo.language_old, - theme: this.settings.theme, - meta: { __raw: codeblockInfo.language_meta }, - // https://shiki.style/packages/transformers - transformers: [ - transformerNotationDiff({ matchAlgorithm: 'v3' }), - transformerNotationHighlight(), - transformerNotationFocus(), - transformerNotationErrorLevel(), - transformerNotationWordHighlight(), - - transformerMetaHighlight(), - transformerMetaWordHighlight(), - ], - }) - targetEl.innerHTML = pre + if (this.settings.renderEngine == 'shiki') { + const pre:string = await codeToHtml(source, { + lang: codeblockInfo.language_old, + theme: this.settings.theme, + meta: { __raw: codeblockInfo.language_meta }, + // https://shiki.style/packages/transformers + transformers: [ + transformerNotationDiff({ matchAlgorithm: 'v3' }), + transformerNotationHighlight(), + transformerNotationFocus(), + transformerNotationErrorLevel(), + transformerNotationWordHighlight(), + + transformerMetaHighlight(), + transformerMetaWordHighlight(), + ], + }) + targetEl.innerHTML = pre + } + // pre html string - prism + else { + const prism = await loadPrism() as typeof Prism; + if (!prism) { + new Notice('warning: withou Prism') + throw new Error('warning: withou Prism') + } + targetEl.innerHTML = '' + const pre = document.createElement('pre'); targetEl.appendChild(pre); + const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); code.innerHTML = source; + prism.highlightElement(code) + } } /** diff --git a/src/settings/Settings.ts b/src/settings/Settings.ts index 1108940..bb94d03 100644 --- a/src/settings/Settings.ts +++ b/src/settings/Settings.ts @@ -4,6 +4,7 @@ export interface Settings { customLanguageFolder: string; theme: string; renderMode: 'textarea'|'pre'|'codemirror'; + renderEngine: 'shiki'|'prismjs'; preferThemeColors: boolean; inlineHighlighting: boolean; } @@ -14,6 +15,7 @@ export const DEFAULT_SETTINGS: Settings = { customLanguageFolder: '', theme: 'obsidian-theme', renderMode: 'textarea', + renderEngine: 'shiki', preferThemeColors: true, inlineHighlighting: true, }; diff --git a/src/settings/SettingsTab.ts b/src/settings/SettingsTab.ts index ce75ded..89b787a 100644 --- a/src/settings/SettingsTab.ts +++ b/src/settings/SettingsTab.ts @@ -39,7 +39,7 @@ export class ShikiSettingsTab extends PluginSettingTab { new Setting(this.containerEl) .setName('Theme') - .setDesc('Select the theme for the code blocks.') + .setDesc('Select the theme for the code blocks (shiki).') .addDropdown(dropdown => { dropdown.addOptions(themes); dropdown.setValue(this.plugin.settings.theme).onChange(async value => { @@ -49,8 +49,22 @@ export class ShikiSettingsTab extends PluginSettingTab { }); new Setting(this.containerEl) - .setName('RenderMode') - .setDesc('Select the renderMode for the code blocks.') + .setName('Render Engine') + .setDesc('Select the render engine for the code blocks.') + .addDropdown(dropdown => { + dropdown.addOptions({ + 'shiki': 'shiki', + 'prismjs': 'prismjs', + }); + dropdown.setValue(this.plugin.settings.renderEngine).onChange(async value => { + this.plugin.settings.renderEngine = value as 'shiki'|'prismjs'; + await this.plugin.saveSettings(); + }); + }); + + new Setting(this.containerEl) + .setName('Render Mode') + .setDesc('Select the render mode for the code blocks.') .addDropdown(dropdown => { dropdown.addOptions({ 'textarea': 'textarea', From 2a83c4ef49ba4df06562835ffea73dbb4851103d Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 12:14:49 +0800 Subject: [PATCH 26/66] feat: textarea support tab key --- src/main.min.ts | 51 ++++++++++++++++++++++++++++++++++++++++++++----- src/main.ts | 45 +++++++++++++++++++++++++++++++++++++++++-- styles.css | 1 + 3 files changed, 90 insertions(+), 7 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index 1038a11..0f822e8 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -23,6 +23,10 @@ declare module 'obsidian' { interface MarkdownPostProcessorContext { containerEl: HTMLElement } + interface Vault { + getConfig(arg: 'useTab'): boolean + getConfig(arg: 'tabSize'): number + } } export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` @@ -161,7 +165,7 @@ export default class ShikiPlugin extends Plugin { codeblockInfo.source = source void this.codeblock_renderPre(codeblockInfo, el, ctx, span) - // textarea + // #region textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); // TODO // These attributes are very strange. I copied the attributes on `shiki.style`. @@ -185,9 +189,45 @@ export default class ShikiPlugin extends Plugin { textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLTextAreaElement).value codeblockInfo.source = newValue - void this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) + this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) } - + // textarea - tab + textarea.addEventListener('keydown', (ev: KeyboardEvent) => { + console.log('textarea ev') + if (ev.key == 'Tab') { + console.log('textarea ev tab') + ev.preventDefault() + const value = textarea.value + const selectionStart: number = textarea.selectionStart + const selectionEnd: number = textarea.selectionEnd + const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1 + const lineEnd: number = value.indexOf('\n', selectionStart) + const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd) + + // get indent, auto indent + const configUseTab = this.app.vault.getConfig('useTab') + const configTabSize = this.app.vault.getConfig('tabSize') + const indent_space = ' '.repeat(configTabSize) + let indent = configUseTab ? '\t' : indent_space + if (lineCurrent.startsWith('\t')) indent = '\t' + else if (lineCurrent.startsWith(' ')) indent = indent_space + + // change + // new value: cursorBefore + tab + cusrorAfter + textarea.value = textarea.value.substring(0, selectionStart) + indent + textarea.value.substring(selectionEnd) + // new cursor pos + textarea.selectionStart = textarea.selectionEnd = selectionStart + indent.length; + textarea.dispatchEvent(new InputEvent('input', { + inputType: 'insertText', + data: indent, + bubbles: true, + cancelable: true + })) + } + }) + // #endregion + + // #region language-edit // language-edit const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); @@ -196,7 +236,7 @@ export default class ShikiPlugin extends Plugin { // language-edit - async part editInput.oninput = (ev): void => { const newValue = (ev.target as HTMLInputElement).value - const match = /^(\S*)(\s?.*)$/.exec(newValue) + const match = newValue.match(/^(\S*)(\s?.*)$/) if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] @@ -204,12 +244,13 @@ export default class ShikiPlugin extends Plugin { } editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLInputElement).value - const match = /^(\S*)(\s?.*)$/.exec(newValue) + const match = newValue.match(/^(\S*)(\s?.*)$/) if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] void this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) } + // #endregion } }, 1000, diff --git a/src/main.ts b/src/main.ts index d9457b4..8b28519 100644 --- a/src/main.ts +++ b/src/main.ts @@ -23,6 +23,10 @@ declare module 'obsidian' { interface MarkdownPostProcessorContext { containerEl: HTMLElement } + interface Vault { + getConfig(arg: 'useTab'): boolean + getConfig(arg: 'tabSize'): number + } } export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` @@ -160,7 +164,7 @@ export default class ShikiPlugin extends Plugin { codeblockInfo.source = source this.codeblock_renderPre(codeblockInfo, el, ctx, span).then().catch() - // textarea + // #region textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); // TODO // These attributes are very strange. I copied the attributes on `shiki.style`. @@ -186,7 +190,43 @@ export default class ShikiPlugin extends Plugin { codeblockInfo.source = newValue this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) } - + // textarea - tab + textarea.addEventListener('keydown', (ev: KeyboardEvent) => { + console.log('textarea ev') + if (ev.key == 'Tab') { + console.log('textarea ev tab') + ev.preventDefault() + const value = textarea.value + const selectionStart: number = textarea.selectionStart + const selectionEnd: number = textarea.selectionEnd + const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1 + const lineEnd: number = value.indexOf('\n', selectionStart) + const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd) + + // get indent, auto indent + const configUseTab = this.app.vault.getConfig('useTab') + const configTabSize = this.app.vault.getConfig('tabSize') + const indent_space = ' '.repeat(configTabSize) + let indent = configUseTab ? '\t' : indent_space + if (lineCurrent.startsWith('\t')) indent = '\t' + else if (lineCurrent.startsWith(' ')) indent = indent_space + + // change + // new value: cursorBefore + tab + cusrorAfter + textarea.value = textarea.value.substring(0, selectionStart) + indent + textarea.value.substring(selectionEnd) + // new cursor pos + textarea.selectionStart = textarea.selectionEnd = selectionStart + indent.length; + textarea.dispatchEvent(new InputEvent('input', { + inputType: 'insertText', + data: indent, + bubbles: true, + cancelable: true + })) + } + }) + // #endregion + + // #region language-edit // language-edit const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); @@ -209,6 +249,7 @@ export default class ShikiPlugin extends Plugin { codeblockInfo.language_meta = match[2] void this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) } + // #endregion } else if (this.settings.renderMode === 'pre') { void this.codeblock_renderPre(codeblockInfo, el, ctx, el) diff --git a/styles.css b/styles.css index b38a3ea..4f2cde2 100644 --- a/styles.css +++ b/styles.css @@ -339,6 +339,7 @@ code>span.line { margin: 0 !important; padding: 12px var(--shiki-x-padding) !important; border: 0 !important; + cursor: text; } /* edit-block-button > textarea > pre */ .obsidian-shiki-plugin pre { z-index: 0; } From e9f4bd8b3b8b9002c300e195608159b559d03843 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 12:45:19 +0800 Subject: [PATCH 27/66] docs: add more document --- docs/README.md | 43 +++++++++++++++++++++++++++++++++++++++++++ docs/README.zh.md | 43 +++++++++++++++++++++++++++++++++++++++++++ src/main.min.ts | 3 ++- src/main.ts | 1 + 4 files changed, 89 insertions(+), 1 deletion(-) create mode 100644 docs/README.md create mode 100644 docs/README.zh.md diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..e3f08a7 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,43 @@ +# More Document + +version: v0.5.1 + +## Setting panel document + +### Rendering engine + +Shiki, PrismJS, CodeMirror + +- Shiki: A powerful code highlighting engine. + - More powerful functions, more themes and plugins + - Plugins: meta annotations, annotated annotations. Line highlighting, word highlighting, differentiated annotation, warning/error annotation + - Theme: Nearly 80 color schemes: You can visually select them at https://textmate-grammars-themes.netlify.app +- PrismJS: The rendering engine that Obsidian uses by default in reading mode. + - When choosing this one, you can also select the min version of this plugin, which has a smaller plugin size and a faster loading speed + - It can be color-matched with code using obsidian themes and can be used in conjunction with some other obsidian stylization plugins +- CodeMirror: Obsidian is the default rendering engine used in real-time mode. The current plugin is not supported + +### Rendering method + +- textarea: Allows real-time editing and offers a Typora-like WYSIWYG experience +- pre: Real-time editing is not allowed. The rendering effect is more similar to the textarea method +- codemirror: The only supported method for V0.5.0 and earlier versions, which does not allow real-time editing + +## Shiki Extend Sytax + +see https://shiki.style/packages/transformers for detail + +This is a simple summary of grammar: + +- notaion + - diff: `// [!code ++]` `// [!code --]` + - highlight: `// [!code hl]` `// [!code highlight]` + - word highlight: `// [!code word::]` `// [!code word:Hello:1]` + - focus: `// [!code focus]` + - error level: `// [!code error]` `// [!code warning]` + - (mul line): `// [!code highlight:3]` +- meta + - highlight: `{1,3-4}` + - word highlight `//` `/Hello/` + +example: see [../README.md](../README.md) or [Shiki document](https://shiki.style/packages/transformers) diff --git a/docs/README.zh.md b/docs/README.zh.md new file mode 100644 index 0000000..5f1eea5 --- /dev/null +++ b/docs/README.zh.md @@ -0,0 +1,43 @@ +# 更多文档 + +version: v0.5.1 + +## 设置面板文档 + +### 渲染引擎 + +Shiki, PrismJS,CodeMirror + +- Shiki: 一个强大的代码高亮引擎。 + - 功能更加强大,更多主题和插件 + - 插件: meta标注、注释型标注。行高亮、单词高亮、差异化标注、警告/错误标注 + - 主题:近80种配色方案:你可以在 https://textmate-grammars-themes.netlify.app 中可视化选择 +- PrismJS: Obsidian默认在阅读模式中使用的渲染引擎。 + - 当选择这个的时候,你也可以选用min版本的本插件,拥有更小的插件体积和更快的加载速度 + - 可以与使用obsidian主题的代码配色,可以与一些其他的obsidian风格化插件配合 +- CodeMirror: Obsidian默认在实时模式中使用的渲染引擎。当前插件不支持 + +### 渲染方式 + +- textarea: 允许实时编辑,typora般的所见即所得的体验 +- pre: 不允许实时编辑 +- codemirror: V0.5.0及之前唯一支持的方式,不允许实时编辑 + +## Shiki扩展语法 + +详见: https://shiki.style/packages/transformers (可切换至中文) + +这是个简单的语法总结: + +- notaion 注释型标注 + - diff: `// [!code ++]` `// [!code --]` 差异化 + - highlight: `// [!code hl]` `// [!code highlight]` 高亮 + - word highlight: `// [!code word::]` `// [!code word:Hello:1]` 单词高亮 + - focus: `// [!code focus]` 聚焦 + - error level: `// [!code error]` `// [!code warning]` 警告/错误 + - (mul line): `// [!code highlight:3]` (多行) +- meta 元数据型标注 + - highlight: `{1,3-4}` + - word highlight `//` `/Hello/` + +示例: see [../README.md](../README.md) or [Shiki document](https://shiki.style/packages/transformers) diff --git a/src/main.min.ts b/src/main.min.ts index 0f822e8..05bebea 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -203,6 +203,7 @@ export default class ShikiPlugin extends Plugin { const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1 const lineEnd: number = value.indexOf('\n', selectionStart) const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd) + // TODO enhamce: determine whether to insert the tab directly or the entire line of tabs based on the cursor // get indent, auto indent const configUseTab = this.app.vault.getConfig('useTab') @@ -211,7 +212,7 @@ export default class ShikiPlugin extends Plugin { let indent = configUseTab ? '\t' : indent_space if (lineCurrent.startsWith('\t')) indent = '\t' else if (lineCurrent.startsWith(' ')) indent = indent_space - + // change // new value: cursorBefore + tab + cusrorAfter textarea.value = textarea.value.substring(0, selectionStart) + indent + textarea.value.substring(selectionEnd) diff --git a/src/main.ts b/src/main.ts index 8b28519..46ae32c 100644 --- a/src/main.ts +++ b/src/main.ts @@ -202,6 +202,7 @@ export default class ShikiPlugin extends Plugin { const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1 const lineEnd: number = value.indexOf('\n', selectionStart) const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd) + // TODO enhamce: determine whether to insert the tab directly or the entire line of tabs based on the cursor // get indent, auto indent const configUseTab = this.app.vault.getConfig('useTab') From cd59a8d36654ab0f784ce791a4a2b1676e046902 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 12:56:03 +0800 Subject: [PATCH 28/66] style: simplify --- src/main.min.ts | 10 +--------- src/main.ts | 12 ++---------- styles.css | 38 +++++++++++++++++--------------------- 3 files changed, 20 insertions(+), 40 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index 05bebea..34fc389 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -167,14 +167,8 @@ export default class ShikiPlugin extends Plugin { // #region textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); - // TODO - // These attributes are very strange. I copied the attributes on `shiki.style`. - // But what supports all these are many css selectors like '[absolute=""]' - // Perhaps it is for the convenience of style overlay - // - // But in obsidian, I don't think it's necessary to do so. const attributes = { - 'whitespace-pre': '', 'overflow-auto': '', 'w-full': '', 'h-full': '', 'font-mono': '', 'bg-transparent': '', 'absolute': '', 'inset-0': '', 'py-20px': '', 'px-24px': '', 'text-transparent': '', 'carent-gray': '', 'tab-4': '', 'resize-none': '', 'z-10': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', + 'resize-none': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', }; Object.entries(attributes).forEach(([key, val]) => { textarea.setAttribute(key, val); @@ -193,9 +187,7 @@ export default class ShikiPlugin extends Plugin { } // textarea - tab textarea.addEventListener('keydown', (ev: KeyboardEvent) => { - console.log('textarea ev') if (ev.key == 'Tab') { - console.log('textarea ev tab') ev.preventDefault() const value = textarea.value const selectionStart: number = textarea.selectionStart diff --git a/src/main.ts b/src/main.ts index 46ae32c..2d19f3c 100644 --- a/src/main.ts +++ b/src/main.ts @@ -165,15 +165,9 @@ export default class ShikiPlugin extends Plugin { this.codeblock_renderPre(codeblockInfo, el, ctx, span).then().catch() // #region textarea - const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); - // TODO - // These attributes are very strange. I copied the attributes on `shiki.style`. - // But what supports all these are many css selectors like '[absolute=""]' - // Perhaps it is for the convenience of style overlay - // - // But in obsidian, I don't think it's necessary to do so. + const textarea = document.createElement('textarea'); div.appendChild(textarea); const attributes = { - 'whitespace-pre': '', 'overflow-auto': '', 'w-full': '', 'h-full': '', 'font-mono': '', 'bg-transparent': '', 'absolute': '', 'inset-0': '', 'py-20px': '', 'px-24px': '', 'text-transparent': '', 'carent-gray': '', 'tab-4': '', 'resize-none': '', 'z-10': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', + 'resize-none': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', }; Object.entries(attributes).forEach(([key, val]) => { textarea.setAttribute(key, val); @@ -192,9 +186,7 @@ export default class ShikiPlugin extends Plugin { } // textarea - tab textarea.addEventListener('keydown', (ev: KeyboardEvent) => { - console.log('textarea ev') if (ev.key == 'Tab') { - console.log('textarea ev tab') ev.preventDefault() const value = textarea.value const selectionStart: number = textarea.selectionStart diff --git a/styles.css b/styles.css index 4f2cde2..8eb4511 100644 --- a/styles.css +++ b/styles.css @@ -290,32 +290,28 @@ code>span.line { line-height: 24px; } -/* shiki attr style */ -[absolute=""] { position: absolute; } -[relative=""] { position: relative; } -[min-w-full=""] { min-width: 100%; } -[min-h-100=""] { min-height: 25rem; } -[w-full=""] { width: 100%; } -[h-full=""] { height: 100%; } -[float-left=""] { float: left; } -[overflow-auto=""] { overflow: auto; } -[bg-transparent=""] { background-color: transparent; } -/* [text-transparent=""] { color: transparent; } */ -[text-transparent=""] { color: #ffffff22; } -[inset-0=""] { top: 0; right: 0; bottom: 0; left: 0; } -[py-20px=""] { padding-top: 20px; padding-bottom: 20px; } -[px-24px=""] { padding-top: 24px; padding-bottom: 24px; } -[resize-none=""] { resize: none; } -[z-10=""] { z-index: 10; } -[tab-4=""] {} -[carent-gray=""] {} -[font-mono=""] {} - .obsidian-shiki-plugin { position: relative; min-width: 100%; } +/* shiki attr style */ +.obsidian-shiki-plugin textarea { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + resize: none; + white-space: pre; + overflow: auto; + background-color: transparent; + /* color: transparent; */ + color: #ffffff22; +} + /* * keep same: pre & textare * From 0b18bff899853f8713ce7b83ca2aa164819eb905 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 13:09:43 +0800 Subject: [PATCH 29/66] chore: check lint --- src/main.min.ts | 6 +++--- src/main.ts | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index 34fc389..7fcdccf 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -183,7 +183,7 @@ export default class ShikiPlugin extends Plugin { textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLTextAreaElement).value codeblockInfo.source = newValue - this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) + void this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) } // textarea - tab textarea.addEventListener('keydown', (ev: KeyboardEvent) => { @@ -229,7 +229,7 @@ export default class ShikiPlugin extends Plugin { // language-edit - async part editInput.oninput = (ev): void => { const newValue = (ev.target as HTMLInputElement).value - const match = newValue.match(/^(\S*)(\s?.*)$/) + const match = /^(\S*)(\s?.*)$/.exec(newValue) if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] @@ -237,7 +237,7 @@ export default class ShikiPlugin extends Plugin { } editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLInputElement).value - const match = newValue.match(/^(\S*)(\s?.*)$/) + const match = /^(\S*)(\s?.*)$/.exec(newValue) if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] diff --git a/src/main.ts b/src/main.ts index 2d19f3c..eecbd2c 100644 --- a/src/main.ts +++ b/src/main.ts @@ -182,7 +182,7 @@ export default class ShikiPlugin extends Plugin { textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLTextAreaElement).value codeblockInfo.source = newValue - this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) + void this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) } // textarea - tab textarea.addEventListener('keydown', (ev: KeyboardEvent) => { @@ -228,7 +228,7 @@ export default class ShikiPlugin extends Plugin { // language-edit - async part editInput.oninput = (ev): void => { const newValue = (ev.target as HTMLInputElement).value - const match = newValue.match(/^(\S*)(\s?.*)$/) + const match = /^(\S*)(\s?.*)$/.exec(newValue) if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] @@ -236,7 +236,7 @@ export default class ShikiPlugin extends Plugin { } editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) const newValue = (ev.target as HTMLInputElement).value - const match = newValue.match(/^(\S*)(\s?.*)$/) + const match = /^(\S*)(\s?.*)$/.exec(newValue) if (!match) throw new Error('This is not a regular expression matching that may fail') codeblockInfo.language_type = match[1] codeblockInfo.language_meta = match[2] @@ -288,7 +288,7 @@ export default class ShikiPlugin extends Plugin { } const firstLine = lines[sectionInfo.lineStart] - const match = firstLine.match(reg_code) + const match = reg_code.exec(firstLine) if (!match) { // This is possible. // When the code block is nested and the first line is not a code block From 9dcbacde21f056df764fc29a59fea54d5609a736 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 13:18:33 +0800 Subject: [PATCH 30/66] docs: settingPanel docs, more docs --- docs/README.md | 3 ++- docs/README.zh.md | 1 + src/settings/SettingsTab.ts | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index e3f08a7..44342de 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,7 +2,7 @@ version: v0.5.1 -## Setting panel document +## SettingPanel Document ### Rendering engine @@ -20,6 +20,7 @@ Shiki, PrismJS, CodeMirror ### Rendering method - textarea: Allows real-time editing and offers a Typora-like WYSIWYG experience + - WARNING: Since this method allows for the editing of text content, it is best to use it when the warehouse is regularly backed up to avoid accidents - pre: Real-time editing is not allowed. The rendering effect is more similar to the textarea method - codemirror: The only supported method for V0.5.0 and earlier versions, which does not allow real-time editing diff --git a/docs/README.zh.md b/docs/README.zh.md index 5f1eea5..e9ea1d3 100644 --- a/docs/README.zh.md +++ b/docs/README.zh.md @@ -20,6 +20,7 @@ Shiki, PrismJS,CodeMirror ### 渲染方式 - textarea: 允许实时编辑,typora般的所见即所得的体验 + - WARNING: 由于该方式允许编辑文本内容,最好能在仓库定期备份的情况下使用,避免意外 - pre: 不允许实时编辑 - codemirror: V0.5.0及之前唯一支持的方式,不允许实时编辑 diff --git a/src/settings/SettingsTab.ts b/src/settings/SettingsTab.ts index 89b787a..101c71b 100644 --- a/src/settings/SettingsTab.ts +++ b/src/settings/SettingsTab.ts @@ -23,6 +23,11 @@ export class ShikiSettingsTab extends PluginSettingTab { ...builtInThemes, }; + this.containerEl.createEl('a', { + text: 'Settings Panel Docuemtn', + href: 'https://github.com/mProjectsCode/obsidian-shiki-plugin/blob/master/docs/README.md' + }); + new Setting(this.containerEl) .setName('Reload Highlighter') .setDesc('Reload the syntax highlighter. REQUIRED AFTER SETTINGS CHANGES.') From d84f8596dc2ed1153be2a46d253458b54f4df32a Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 14:56:06 +0800 Subject: [PATCH 31/66] fix: pdf show metadata, tab-size disunity --- docs/README.md | 2 ++ docs/README.zh.md | 2 ++ src/settings/SettingsTab.ts | 2 +- styles.css | 6 ++++++ 4 files changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/README.md b/docs/README.md index 44342de..bbebb80 100644 --- a/docs/README.md +++ b/docs/README.md @@ -16,6 +16,8 @@ Shiki, PrismJS, CodeMirror - When choosing this one, you can also select the min version of this plugin, which has a smaller plugin size and a faster loading speed - It can be color-matched with code using obsidian themes and can be used in conjunction with some other obsidian stylization plugins - CodeMirror: Obsidian is the default rendering engine used in real-time mode. The current plugin is not supported + - It is suitable for real-time rendering and has acceptable performance + - However, the code analysis is rather rough, with a small number of highlighting layers and a poor effect ### Rendering method diff --git a/docs/README.zh.md b/docs/README.zh.md index e9ea1d3..91bf4b0 100644 --- a/docs/README.zh.md +++ b/docs/README.zh.md @@ -16,6 +16,8 @@ Shiki, PrismJS,CodeMirror - 当选择这个的时候,你也可以选用min版本的本插件,拥有更小的插件体积和更快的加载速度 - 可以与使用obsidian主题的代码配色,可以与一些其他的obsidian风格化插件配合 - CodeMirror: Obsidian默认在实时模式中使用的渲染引擎。当前插件不支持 + - 适合实时渲染,性能尚可 + - 但代码分析比较粗糙,高亮层数少,效果较差 ### 渲染方式 diff --git a/src/settings/SettingsTab.ts b/src/settings/SettingsTab.ts index 101c71b..b3c8eca 100644 --- a/src/settings/SettingsTab.ts +++ b/src/settings/SettingsTab.ts @@ -24,7 +24,7 @@ export class ShikiSettingsTab extends PluginSettingTab { }; this.containerEl.createEl('a', { - text: 'Settings Panel Docuemtn', + text: 'Settings Panel Document', href: 'https://github.com/mProjectsCode/obsidian-shiki-plugin/blob/master/docs/README.md' }); diff --git a/styles.css b/styles.css index 8eb4511..688bfa8 100644 --- a/styles.css +++ b/styles.css @@ -335,6 +335,7 @@ code>span.line { margin: 0 !important; padding: 12px var(--shiki-x-padding) !important; border: 0 !important; + tab-size: var(--indent-size) !important; cursor: text; } /* edit-block-button > textarea > pre */ @@ -377,3 +378,8 @@ code>span.line { box-shadow: none; text-align: right; } + +/* pdf. Avoid displaying metadata in pdf exports. */ +.print .mod-frontmatter { + display: none !important; +} From d02349ff42663123714d825c61c3d792303f29d8 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 15:08:37 +0800 Subject: [PATCH 32/66] style: textarea selection color --- styles.css | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/styles.css b/styles.css index 688bfa8..c23bd06 100644 --- a/styles.css +++ b/styles.css @@ -287,7 +287,7 @@ code>span.line.highlighted.warning { /* chore fix: keep color magin zero */ code>span.line { - line-height: 24px; + line-height: var(--shiki-line-height); } .obsidian-shiki-plugin { @@ -325,6 +325,11 @@ code>span.line { .obsidian-shiki-plugin code, .obsidian-shiki-plugin textarea { line-height: var(--shiki-line-height) !important; font-size: var(--code-size) !important; + /* font-family: ???; There are no css variables, js needs to be used */ +} +.obsidian-shiki-plugin code::selection, .obsidian-shiki-plugin textarea::selection { + background-color: var(--main-node) !important; + color: var(--main-background) !important; } .obsidian-shiki-plugin code { margin: 0 !important; From b02166f13f4f2b012e505293517efb5fabbb0fdd Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 15:12:41 +0800 Subject: [PATCH 33/66] style: uniform font --- styles.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/styles.css b/styles.css index c23bd06..d5892c8 100644 --- a/styles.css +++ b/styles.css @@ -324,8 +324,9 @@ code>span.line { } .obsidian-shiki-plugin code, .obsidian-shiki-plugin textarea { line-height: var(--shiki-line-height) !important; + tab-size: var(--indent-size) !important; font-size: var(--code-size) !important; - /* font-family: ???; There are no css variables, js needs to be used */ + font-family: var(--font-monospace) !important; } .obsidian-shiki-plugin code::selection, .obsidian-shiki-plugin textarea::selection { background-color: var(--main-node) !important; @@ -340,7 +341,6 @@ code>span.line { margin: 0 !important; padding: 12px var(--shiki-x-padding) !important; border: 0 !important; - tab-size: var(--indent-size) !important; cursor: text; } /* edit-block-button > textarea > pre */ From 3a7e4c956f41bc6c62941fda2a442204ea0dc81e Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 18:33:52 +0800 Subject: [PATCH 34/66] fix: ! save lack '\n' The previous few commits cause --- src/main.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.ts b/src/main.ts index eecbd2c..71fa1f4 100644 --- a/src/main.ts +++ b/src/main.ts @@ -435,7 +435,7 @@ export default class ShikiPlugin extends Plugin { changes: [{ from: {line: sectionInfo.lineStart+1, ch: 0}, to: {line: sectionInfo.lineEnd, ch: 0}, - text: codeblockInfo.source ?? codeblockInfo.source_old + '\n' + text: (codeblockInfo.source ?? codeblockInfo.source_old) + '\n' }], }); } From 5c33a0bf858f3a951578cbec33cea15dd4e7ae5d Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 19:35:55 +0800 Subject: [PATCH 35/66] feat: arrow cursor from codeblock to root editor --- src/main.ts | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 52 insertions(+), 2 deletions(-) diff --git a/src/main.ts b/src/main.ts index 71fa1f4..f9eb94d 100644 --- a/src/main.ts +++ b/src/main.ts @@ -184,7 +184,7 @@ export default class ShikiPlugin extends Plugin { codeblockInfo.source = newValue void this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) } - // textarea - tab + // textarea - `tab` key、`arrow` key textarea.addEventListener('keydown', (ev: KeyboardEvent) => { if (ev.key == 'Tab') { ev.preventDefault() @@ -216,6 +216,56 @@ export default class ShikiPlugin extends Plugin { cancelable: true })) } + else if (ev.key == 'ArrowDown' || ev.key == 'ArrowRight') { + const value = textarea.value + const selectionEnd: number = textarea.selectionEnd + if (selectionEnd != value.length) return + + const editor = this.app.workspace.activeEditor?.editor; + if (!editor) return + + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) return + + ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange` + let toLine = sectionInfo.lineEnd + 1 + if (toLine > editor.lineCount() - 1) { // when codeblock on the last line + // strategy1: only move to end + // toLine-- + + // strategy2: insert a blank line + const lastLineIndex = editor.lineCount() - 1 + const lastLineContent = editor.getLine(lastLineIndex) + editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length }) + + } + editor.setCursor(toLine, 0) + editor.focus() + } + else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') { + const value = textarea.value + const selectionStart: number = textarea.selectionStart + if (selectionStart != 0) return + + const editor = this.app.workspace.activeEditor?.editor; + if (!editor) return + + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) return + + ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange` + let toLine = sectionInfo.lineStart - 1 + if (toLine < 0) { // when codeblock on the frist line + // strategy1: only move to start + // toLine = 0 + + // strategy2: insert a blank line + toLine = 0 + editor.replaceRange("\n", { line: 0, ch: 0 }) + } + editor.setCursor(toLine, 0) + editor.focus() + } }) // #endregion @@ -280,7 +330,7 @@ export default class ShikiPlugin extends Plugin { // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part const lines = sectionInfo.text.split('\n') - if (lines.length <= sectionInfo.lineStart + 1 || lines.length <= sectionInfo.lineEnd + 1) { + if (lines.length < sectionInfo.lineStart + 1 || lines.length < sectionInfo.lineEnd + 1) { // This is impossible. // Unless obsidian makes a mistake. new Notice("Warning: el ctx error!", 3000) From dfafe2ced789ba6a137fc5af53fad18accff1de7 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 20:59:11 +0800 Subject: [PATCH 36/66] style: optimize selection color --- styles.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/styles.css b/styles.css index d5892c8..a18c145 100644 --- a/styles.css +++ b/styles.css @@ -329,8 +329,8 @@ code>span.line { font-family: var(--font-monospace) !important; } .obsidian-shiki-plugin code::selection, .obsidian-shiki-plugin textarea::selection { - background-color: var(--main-node) !important; - color: var(--main-background) !important; + background-color: var(--text-selection) !important; + color: currentColor !important } .obsidian-shiki-plugin code { margin: 0 !important; From 000c01fd4714f25efd6d127720baea30b87cd464 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 21:33:05 +0800 Subject: [PATCH 37/66] fix: when code include tag --- src/main.min.ts | 5 +++-- src/main.ts | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main.min.ts b/src/main.min.ts index 7fcdccf..ccacd4d 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -348,7 +348,7 @@ export default class ShikiPlugin extends Plugin { // transformerMetaWordHighlight(), // ], // }) - // targetEl.innerHTML = pre + // targetEl.textContent = pre // don't use innerHTML. will deal with text // } // pre html string - prism @@ -360,7 +360,8 @@ export default class ShikiPlugin extends Plugin { } targetEl.innerHTML = '' const pre = document.createElement('pre'); targetEl.appendChild(pre); - const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); code.innerHTML = source; + const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); + code.textContent = source; // don't use innerHTML. will deal with text prism.highlightElement(code) } } diff --git a/src/main.ts b/src/main.ts index f9eb94d..d035acd 100644 --- a/src/main.ts +++ b/src/main.ts @@ -404,7 +404,7 @@ export default class ShikiPlugin extends Plugin { transformerMetaWordHighlight(), ], }) - targetEl.innerHTML = pre + targetEl.textContent = pre // don't use innerHTML. will deal with text } // pre html string - prism else { @@ -415,7 +415,8 @@ export default class ShikiPlugin extends Plugin { } targetEl.innerHTML = '' const pre = document.createElement('pre'); targetEl.appendChild(pre); - const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); code.innerHTML = source; + const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); + code.textContent = source; // don't use innerHTML. will deal with text prism.highlightElement(code) } } From 2a26acfd2fe0e9da99d3e4381900e786146be17c Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 22:13:06 +0800 Subject: [PATCH 38/66] fix: when code include tag2 --- src/Highlighter.ts | 3 --- src/main.min.ts | 4 ++-- src/main.ts | 4 ++-- 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/src/Highlighter.ts b/src/Highlighter.ts index 13bf334..c845bac 100644 --- a/src/Highlighter.ts +++ b/src/Highlighter.ts @@ -219,9 +219,6 @@ export class CodeHighlighter { return this.shiki.codeToTokens(code, { lang: lang as BundledLanguage, theme: this.plugin.settings.theme, - // transformers: [ // TODO Error,codeToToken have no transformer method (code2Html have) - // transformerNotationDiff(), - // ] }); } diff --git a/src/main.min.ts b/src/main.min.ts index ccacd4d..7399aed 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -348,7 +348,7 @@ export default class ShikiPlugin extends Plugin { // transformerMetaWordHighlight(), // ], // }) - // targetEl.textContent = pre // don't use innerHTML. will deal with text + // targetEl.innerHTML = pre // prism use textContent and shiki use innerHTML, Their escapes from `` are different // } // pre html string - prism @@ -361,7 +361,7 @@ export default class ShikiPlugin extends Plugin { targetEl.innerHTML = '' const pre = document.createElement('pre'); targetEl.appendChild(pre); const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); - code.textContent = source; // don't use innerHTML. will deal with text + code.textContent = source; // prism use textContent and shiki use innerHTML, Their escapes from `` are different prism.highlightElement(code) } } diff --git a/src/main.ts b/src/main.ts index d035acd..b9e2976 100644 --- a/src/main.ts +++ b/src/main.ts @@ -404,7 +404,7 @@ export default class ShikiPlugin extends Plugin { transformerMetaWordHighlight(), ], }) - targetEl.textContent = pre // don't use innerHTML. will deal with text + targetEl.innerHTML = pre // prism use textContent and shiki use innerHTML, Their escapes from `` are different } // pre html string - prism else { @@ -416,7 +416,7 @@ export default class ShikiPlugin extends Plugin { targetEl.innerHTML = '' const pre = document.createElement('pre'); targetEl.appendChild(pre); const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); - code.textContent = source; // don't use innerHTML. will deal with text + code.textContent = source; // prism use textContent and shiki use innerHTML, Their escapes from `` are different prism.highlightElement(code) } } From 3cd0282376c132c791cb46d523a90ca09cb7b152 Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Fri, 23 May 2025 22:16:19 +0800 Subject: [PATCH 39/66] fix: temp fix error when use custom theme --- src/main.ts | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main.ts b/src/main.ts index b9e2976..0068007 100644 --- a/src/main.ts +++ b/src/main.ts @@ -17,7 +17,7 @@ import { transformerMetaHighlight, transformerMetaWordHighlight, } from '@shikijs/transformers'; -import { codeToHtml } from 'shiki'; // 8.6MB +import { bundledThemesInfo, codeToHtml } from 'shiki'; // 8.6MB declare module 'obsidian' { interface MarkdownPostProcessorContext { @@ -388,9 +388,19 @@ export default class ShikiPlugin extends Plugin { // pre html string - shiki if (this.settings.renderEngine == 'shiki') { + // check theme, TODO: use more theme + let theme = '' + for (const item of bundledThemesInfo) { + if (item.id == this.settings.theme) { theme = this.settings.theme; break } + } + if (theme === '') { + theme = 'andromeeda' + console.warn(`no support theme '${this.settings.theme}' temp in this render mode`) + } + const pre:string = await codeToHtml(source, { lang: codeblockInfo.language_old, - theme: this.settings.theme, + theme: theme, meta: { __raw: codeblockInfo.language_meta }, // https://shiki.style/packages/transformers transformers: [ From dc6460ef5852c282e28ba7968c75f775004773ed Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Sat, 24 May 2025 11:11:07 +0800 Subject: [PATCH 40/66] refactor: add EditableCodeblock, optimize code --- automation/build/esbuild.config.min.ts | 3 +- src/EditableCodeblock.ts | 388 +++++++++++++++++++++++++ src/main.min.ts | 318 +------------------- src/main.ts | 378 +----------------------- 4 files changed, 401 insertions(+), 686 deletions(-) create mode 100644 src/EditableCodeblock.ts diff --git a/automation/build/esbuild.config.min.ts b/automation/build/esbuild.config.min.ts index ecc5657..c981461 100644 --- a/automation/build/esbuild.config.min.ts +++ b/automation/build/esbuild.config.min.ts @@ -26,13 +26,14 @@ const build = await esbuild.build({ '@lezer/highlight', '@lezer/lr', ...builtins, + 'shiki', // [!code hl] ], format: 'cjs', target: 'es2018', logLevel: 'info', sourcemap: false, treeShaking: true, - outfile: 'dist-min/main.js', + outfile: 'dist-min/main.js', // [!code hl] minify: true, metafile: true, define: { diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts new file mode 100644 index 0000000..c5f9677 --- /dev/null +++ b/src/EditableCodeblock.ts @@ -0,0 +1,388 @@ +/** + * General editable code blocks based on shiki/prismjs + * + * This will gradually be modified into a universal module that does not rely on obsidian + */ + +import { type App, loadPrism, type MarkdownPostProcessorContext, Notice } from 'obsidian'; +import { type Settings } from 'src/settings/Settings'; + +import { + transformerNotationDiff, + transformerNotationHighlight, + transformerNotationFocus, + transformerNotationErrorLevel, + transformerNotationWordHighlight, + + transformerMetaHighlight, + transformerMetaWordHighlight, +} from '@shikijs/transformers'; +import { bundledThemesInfo, codeToHtml } from 'shiki'; // 8.6MB +import type Prism from 'prismjs'; + +const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/ +// const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/ + +/** + * Codeblock Info. + * Life cycle: One codeblock has one. + * Pay attention to consistency. + */ +export interface CodeblockInfo { + // from ctx.getSectionInfo(el) // [!code warning] There may be indentation + prefix: string, // `> - * + ` // [!code warning] Because of the list nest, first-line indentation is not equal to universal indentation. + flag: string, // (```+|~~~+) + language_meta: string, // allow both end space, allow blank + language_type: string, // source code, can be an alias + source: string|null, + + // from obsidian callback args // [!code warning] It might be old data in oninput/onchange method + language_old: string, // to lib, can't be an alias + source_old: string, +} + +// Class definitions in rust style, The object is separated from the implementation +export class EditableCodeblock { + plugin: { app: App; settings: Settings }; + el: HTMLElement; + ctx: MarkdownPostProcessorContext; + codeblockInfo: CodeblockInfo; + + constructor(plugin: { app: App; settings: Settings }, language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext) { + this.plugin = plugin + this.el = el + this.ctx = ctx + this.codeblockInfo = EditableCodeblock.getCodeBlockInfo(language_old, source_old, el, ctx) + } + + // Data related to codeblock + static getCodeBlockInfo(language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): CodeblockInfo { + const sectionInfo = ctx.getSectionInfo(el); + if (!sectionInfo) { + // This is possible. when rerender + const codeblockInfo:CodeblockInfo = { + prefix: '', + flag: '', // null flag + language_meta: '', + language_type: language_old, + source: null, // null flag + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } + // sectionInfo.lineStart; // index in (```) + // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part + + const lines = sectionInfo.text.split('\n') + if (lines.length < sectionInfo.lineStart + 1 || lines.length < sectionInfo.lineEnd + 1) { + // This is impossible. + // Unless obsidian makes a mistake. + new Notice("Warning: el ctx error!", 3000) + throw new Error('Warning: el ctx error!') + } + + const firstLine = lines[sectionInfo.lineStart] + const match = reg_code.exec(firstLine) + if (!match) { + // This is possible. + // When the code block is nested and the first line is not a code block + // (The smallest section of getSectionInfo is `markdown-preview-section>div`) + const codeblockInfo:CodeblockInfo = { + prefix: '', + flag: '', // null flag + language_meta: '', + language_type: language_old, + source: null, // null flag + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } + + const codeblockInfo:CodeblockInfo = { + prefix: match[1], + flag: match[3], + language_meta: match[5], + language_type: match[4], + source: lines.slice(sectionInfo.lineStart + 1, sectionInfo.lineEnd).join('\n'), + + language_old: language_old, + source_old: source_old, + } + return codeblockInfo + } + + renderEditableCodeblock(): void { + // dom + // - div.obsidian-shiki-plugin + // - span > pre > code + // - textarea + // - div.language-edit + + // div + const div = document.createElement('div'); this.el.appendChild(div); div.classList.add('obsidian-shiki-plugin') + + // span + const span = document.createElement('span'); div.appendChild(span); + this.codeblockInfo.source = this.codeblockInfo.source_old + void this.renderPre(span).then().catch() + + // #region textarea + const textarea = document.createElement('textarea'); div.appendChild(textarea); + const attributes = { + 'resize-none': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', + }; + Object.entries(attributes).forEach(([key, val]) => { + textarea.setAttribute(key, val); + }); + textarea.value = this.codeblockInfo.source; + // textarea - async part + textarea.oninput = (ev): void => { + const newValue = (ev.target as HTMLTextAreaElement).value + this.codeblockInfo.source = newValue + void this.renderPre(span) + } + textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + const newValue = (ev.target as HTMLTextAreaElement).value + this.codeblockInfo.source = newValue + void this.saveContent(false, true) + } + // textarea - `tab` key、`arrow` key + textarea.addEventListener('keydown', (ev: KeyboardEvent) => { + if (ev.key == 'Tab') { + ev.preventDefault() + const value = textarea.value + const selectionStart: number = textarea.selectionStart + const selectionEnd: number = textarea.selectionEnd + const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1 + const lineEnd: number = value.indexOf('\n', selectionStart) + const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd) + // TODO enhamce: determine whether to insert the tab directly or the entire line of tabs based on the cursor + + // get indent, auto indent + const configUseTab = this.plugin.app.vault.getConfig('useTab') + const configTabSize = this.plugin.app.vault.getConfig('tabSize') + const indent_space = ' '.repeat(configTabSize) + let indent = configUseTab ? '\t' : indent_space + if (lineCurrent.startsWith('\t')) indent = '\t' + else if (lineCurrent.startsWith(' ')) indent = indent_space + + // change + // new value: cursorBefore + tab + cusrorAfter + textarea.value = textarea.value.substring(0, selectionStart) + indent + textarea.value.substring(selectionEnd) + // new cursor pos + textarea.selectionStart = textarea.selectionEnd = selectionStart + indent.length; + textarea.dispatchEvent(new InputEvent('input', { + inputType: 'insertText', + data: indent, + bubbles: true, + cancelable: true + })) + } + else if (ev.key == 'ArrowDown' || ev.key == 'ArrowRight') { + const selectionEnd: number = textarea.selectionEnd + if (selectionEnd != textarea.value.length) return + + const editor = this.plugin.app.workspace.activeEditor?.editor; + if (!editor) return + + const sectionInfo = this.ctx.getSectionInfo(this.el); + if (!sectionInfo) return + + ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange` + const toLine = sectionInfo.lineEnd + 1 + if (toLine > editor.lineCount() - 1) { // when codeblock on the last line + // strategy1: only move to end + // toLine-- + + // strategy2: insert a blank line + const lastLineIndex = editor.lineCount() - 1 + const lastLineContent = editor.getLine(lastLineIndex) + editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length }) + + } + editor.setCursor(toLine, 0) + editor.focus() + } + else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') { + const selectionStart: number = textarea.selectionStart + if (selectionStart != 0) return + + const editor = this.plugin.app.workspace.activeEditor?.editor; + if (!editor) return + + const sectionInfo = this.ctx.getSectionInfo(this.el); + if (!sectionInfo) return + + ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange` + let toLine = sectionInfo.lineStart - 1 + if (toLine < 0) { // when codeblock on the frist line + // strategy1: only move to start + // toLine = 0 + + // strategy2: insert a blank line + toLine = 0 + editor.replaceRange("\n", { line: 0, ch: 0 }) + } + editor.setCursor(toLine, 0) + editor.focus() + } + }) + // #endregion + + // #region language-edit + // language-edit + const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); + editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); + const editInput = document.createElement('input'); editEl.appendChild(editInput); + editInput.value = this.codeblockInfo.language_type + this.codeblockInfo.language_meta + // language-edit - async part + editInput.oninput = (ev): void => { + const newValue = (ev.target as HTMLInputElement).value + const match = /^(\S*)(\s?.*)$/.exec(newValue) + if (!match) throw new Error('This is not a regular expression matching that may fail') + this.codeblockInfo.language_type = match[1] + this.codeblockInfo.language_meta = match[2] + void this.renderPre(span) + } + editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + const newValue = (ev.target as HTMLInputElement).value + const match = /^(\S*)(\s?.*)$/.exec(newValue) + if (!match) throw new Error('This is not a regular expression matching that may fail') + this.codeblockInfo.language_type = match[1] + this.codeblockInfo.language_meta = match[2] + void this.saveContent(true, false) + } + // #endregion + } + + /** + * Render code to targetEl + * + * @param targetEl in which element should the result be rendered + */ + async renderPre(targetEl:HTMLElement): Promise { + // source correct. + // When the last line of the source is blank (with no Spaces either), + // prismjs and shiki will both ignore the line, + // this causes `textarea` and `pre` to fail to align. + let source: string = this.codeblockInfo.source ?? this.codeblockInfo.source_old + if (source.endsWith('\n')) source += '\n' + + // pre html string - shiki + if (this.plugin.settings.renderEngine == 'shiki') { + // check theme, TODO: use more theme + let theme = '' + for (const item of bundledThemesInfo) { + if (item.id == this.plugin.settings.theme) { theme = this.plugin.settings.theme; break } + } + if (theme === '') { + theme = 'andromeeda' + console.warn(`no support theme '${this.plugin.settings.theme}' temp in this render mode`) + } + + const pre:string = await codeToHtml(source, { + lang: this.codeblockInfo.language_old, + theme: theme, + meta: { __raw: this.codeblockInfo.language_meta }, + // https://shiki.style/packages/transformers + transformers: [ + transformerNotationDiff({ matchAlgorithm: 'v3' }), + transformerNotationHighlight(), + transformerNotationFocus(), + transformerNotationErrorLevel(), + transformerNotationWordHighlight(), + + transformerMetaHighlight(), + transformerMetaWordHighlight(), + ], + }) + targetEl.innerHTML = pre // prism use textContent and shiki use innerHTML, Their escapes from `` are different + } + // pre html string - prism + else { + const prism = await loadPrism() as typeof Prism; + if (!prism) { + new Notice('warning: withou Prism') + throw new Error('warning: withou Prism') + } + targetEl.innerHTML = '' + const pre = document.createElement('pre'); targetEl.appendChild(pre); + const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+this.codeblockInfo.language_type); + code.textContent = source; // prism use textContent and shiki use innerHTML, Their escapes from `` are different + prism.highlightElement(code) + } + } + + /** + * Save textarea text content to codeBlock markdown source + * + * Data security (Importance) + * - Make sure `Ctrl+z` is normal: use transaction + * - Make sure check error: try-catch + * - Make sure to remind users of errors: use Notice + * - Avoid overwriting the original data with incorrect data, this is unacceptable + * + * Refresh strategy1 (unable): real-time save, debounce + * - We need to ensure that the textarea element is not recreated when updating + * the content of the code block. It should be reused to avoid changes in the cursor position. + * - Reduce the update frequency and the number of transactions. + * Multiple calls within a certain period of time will only become one. (debounce) + * + * Refresh strategy2 (enable): onchange emit + * - It is better implemented under the obsidian architecture. + * Strategy1 requires additional processing: cache el + * - ~~Disadvantage: Can't use `ctrl+z` well in the code block.~~ + * textarea can be `ctrl+z` normally + * - Afraid if the program crashes, the frequency of save is low + * + * Other / Universal + * - This should be a universal module. It has nothing to do with the logic of the plugin. + * - Indent process + * + * @param isUpdateLanguage reduce modifications and minimize mistakes, can be used to increase stability + * @param isUpdateSource reduce modifications and minimize mistakes, can be used to increase stability + */ + async saveContent(isUpdateLanguage: boolean = true, isUpdateSource: boolean = true): Promise { + // range + const sectionInfo = this.ctx.getSectionInfo(this.el); + if (!sectionInfo) { + new Notice("Warning: without el section!", 3000) + return; + } + // sectionInfo.lineStart; // index in (```) + // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part + + // editor + const editor = this.plugin.app.workspace.activeEditor?.editor; + if (!editor) { + new Notice("Warning: without editor!", 3000) + return; + } + + // change - language + if (isUpdateLanguage) { + editor.transaction({ + changes: [{ + from: {line: sectionInfo.lineStart, ch: 0}, + to: {line: sectionInfo.lineStart+1, ch: 0}, + text: this.codeblockInfo.flag + this.codeblockInfo.language_type + this.codeblockInfo.language_meta + '\n' + }], + }); + } + + // change - source + if (isUpdateSource) { + editor.transaction({ + changes: [{ + from: {line: sectionInfo.lineStart+1, ch: 0}, + to: {line: sectionInfo.lineEnd, ch: 0}, + text: (this.codeblockInfo.source ?? this.codeblockInfo.source_old) + '\n' + }], + }); + } + } +} diff --git a/src/main.min.ts b/src/main.min.ts index 7399aed..28bed54 100644 --- a/src/main.min.ts +++ b/src/main.min.ts @@ -1,23 +1,11 @@ -import { loadPrism, Plugin, type MarkdownPostProcessor, type MarkdownPostProcessorContext, Notice } from 'obsidian'; -import type Prism from 'prismjs' // [!code ++] +import { Plugin, type MarkdownPostProcessor } from 'obsidian'; // import { CodeBlock } from 'src/CodeBlock'; // import { createCm6Plugin } from 'src/codemirror/Cm6_ViewPlugin'; import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; // import { ShikiSettingsTab } from 'src/settings/SettingsTab'; // import { filterHighlightAllPlugin } from 'src/PrismPlugin'; // import { CodeHighlighter } from 'src/Highlighter'; - -// import { -// transformerNotationDiff, -// transformerNotationHighlight, -// transformerNotationFocus, -// transformerNotationErrorLevel, -// transformerNotationWordHighlight, -// -// transformerMetaHighlight, -// transformerMetaWordHighlight, -// } from '@shikijs/transformers'; -// import { codeToHtml } from 'shiki'; // 8.6MB +import { EditableCodeblock } from 'src/EditableCodeblock' declare module 'obsidian' { interface MarkdownPostProcessorContext { @@ -30,26 +18,6 @@ declare module 'obsidian' { } export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` -const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/ -// const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/ - -/** - * Codeblock Info. - * Life cycle: One codeblock has one. - * Pay attention to consistency. - */ -interface CodeblockInfo { - // from ctx.getSectionInfo(el) // [!code warning] There may be indentation - prefix: string, // `> - * + ` // [!code warning] Because of the list nest, first-line indentation is not equal to universal indentation. - flag: string, // (```+|~~~+) - language_meta: string, // allow both end space, allow blank - language_type: string, // source code, can be an alias - source: string|null, - - // from obsidian callback args // [!code warning] It might be old data in oninput/onchange method - language_old: string, // to lib, can't be an alias - source_old: string, -} export default class ShikiPlugin extends Plugin { // highlighter!: CodeHighlighter; @@ -145,105 +113,12 @@ export default class ShikiPlugin extends Plugin { return; } } - - const codeblockInfo = this.codeblock_getCodeBlockInfo(language, source, el, ctx) // able edit live // disadvantage: First screen CLS (Page jitter) { - // dom - // - div.obsidian-shiki-plugin - // - span > pre > code - // - textarea - // - div.language-edit - - // div - const div = document.createElement('div'); el.appendChild(div); div.classList.add('obsidian-shiki-plugin') - - // span - const span = document.createElement('span'); div.appendChild(span); - codeblockInfo.source = source - void this.codeblock_renderPre(codeblockInfo, el, ctx, span) - - // #region textarea - const textarea = document.createElement('textarea'); div.appendChild(textarea); textarea.classList.add('line-height-$vp-code-line-height', 'font-$vp-font-family-mono', 'text-size-$vp-code-font-size'); - const attributes = { - 'resize-none': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', - }; - Object.entries(attributes).forEach(([key, val]) => { - textarea.setAttribute(key, val); - }); - textarea.value = source; - // textarea - async part - textarea.oninput = (ev): void => { - const newValue = (ev.target as HTMLTextAreaElement).value - codeblockInfo.source = newValue - void this.codeblock_renderPre(codeblockInfo, el, ctx, span) - } - textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - const newValue = (ev.target as HTMLTextAreaElement).value - codeblockInfo.source = newValue - void this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) - } - // textarea - tab - textarea.addEventListener('keydown', (ev: KeyboardEvent) => { - if (ev.key == 'Tab') { - ev.preventDefault() - const value = textarea.value - const selectionStart: number = textarea.selectionStart - const selectionEnd: number = textarea.selectionEnd - const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1 - const lineEnd: number = value.indexOf('\n', selectionStart) - const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd) - // TODO enhamce: determine whether to insert the tab directly or the entire line of tabs based on the cursor - - // get indent, auto indent - const configUseTab = this.app.vault.getConfig('useTab') - const configTabSize = this.app.vault.getConfig('tabSize') - const indent_space = ' '.repeat(configTabSize) - let indent = configUseTab ? '\t' : indent_space - if (lineCurrent.startsWith('\t')) indent = '\t' - else if (lineCurrent.startsWith(' ')) indent = indent_space - - // change - // new value: cursorBefore + tab + cusrorAfter - textarea.value = textarea.value.substring(0, selectionStart) + indent + textarea.value.substring(selectionEnd) - // new cursor pos - textarea.selectionStart = textarea.selectionEnd = selectionStart + indent.length; - textarea.dispatchEvent(new InputEvent('input', { - inputType: 'insertText', - data: indent, - bubbles: true, - cancelable: true - })) - } - }) - // #endregion - - // #region language-edit - // language-edit - const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); - editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); - const editInput = document.createElement('input'); editEl.appendChild(editInput); - editInput.value = codeblockInfo.language_type + codeblockInfo.language_meta - // language-edit - async part - editInput.oninput = (ev): void => { - const newValue = (ev.target as HTMLInputElement).value - const match = /^(\S*)(\s?.*)$/.exec(newValue) - if (!match) throw new Error('This is not a regular expression matching that may fail') - codeblockInfo.language_type = match[1] - codeblockInfo.language_meta = match[2] - void this.codeblock_renderPre(codeblockInfo, el, ctx, span) - } - editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - const newValue = (ev.target as HTMLInputElement).value - const match = /^(\S*)(\s?.*)$/.exec(newValue) - if (!match) throw new Error('This is not a regular expression matching that may fail') - codeblockInfo.language_type = match[1] - codeblockInfo.language_meta = match[2] - void this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) - } - // #endregion + const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx) + editableCodeblock.renderEditableCodeblock() } }, 1000, @@ -252,190 +127,7 @@ export default class ShikiPlugin extends Plugin { console.warn(`Failed to register code block processor for ${language}.`, e); } } - } - - codeblock_getCodeBlockInfo(language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): CodeblockInfo { - const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) { - // This is possible. when rerender - const codeblockInfo:CodeblockInfo = { - prefix: '', - flag: '', // null flag - language_meta: '', - language_type: language_old, - source: null, // null flag - - language_old: language_old, - source_old: source_old, - } - return codeblockInfo - } - // sectionInfo.lineStart; // index in (```) - // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part - - const lines = sectionInfo.text.split('\n') - if (lines.length <= sectionInfo.lineStart + 1 || lines.length <= sectionInfo.lineEnd + 1) { - // This is impossible. - // Unless obsidian makes a mistake. - new Notice("Warning: el ctx error!", 3000) - throw new Error('Warning: el ctx error!') - } - - const firstLine = lines[sectionInfo.lineStart] - const match = reg_code.exec(firstLine) - if (!match) { - // This is possible. - // When the code block is nested and the first line is not a code block - // (The smallest section of getSectionInfo is `markdown-preview-section>div`) - const codeblockInfo:CodeblockInfo = { - prefix: '', - flag: '', // null flag - language_meta: '', - language_type: language_old, - source: null, // null flag - - language_old: language_old, - source_old: source_old, - } - return codeblockInfo - } - - const codeblockInfo:CodeblockInfo = { - prefix: match[1], - flag: match[3], - language_meta: match[5], - language_type: match[4], - source: lines.slice(sectionInfo.lineStart + 1, sectionInfo.lineEnd).join('\n'), - - language_old: language_old, - source_old: source_old, - } - return codeblockInfo - } - - /** - * Render code to targetEl - * - * @param language (does not contain meta information) - * @param source same as registerMarkdownCodeBlockProcessor args - * @param el same as registerMarkdownCodeBlockProcessor args - * @param ctx same as registerMarkdownCodeBlockProcessor args - * @param targetEl in which element should the result be rendered - */ - async codeblock_renderPre(codeblockInfo:CodeblockInfo, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { - // source correct. - // When the last line of the source is blank (with no Spaces either), - // prismjs and shiki will both ignore the line, - // this causes `textarea` and `pre` to fail to align. - let source: string = codeblockInfo.source ?? codeblockInfo.source_old - if (source.endsWith('\n')) source += '\n' - - // pre html string - shiki - // if (this.settings.renderEngine == 'shiki') { - // const pre:string = await codeToHtml(source, { - // lang: codeblockInfo.language_old, - // theme: this.settings.theme, - // meta: { __raw: codeblockInfo.language_meta }, - // // https://shiki.style/packages/transformers - // transformers: [ - // transformerNotationDiff({ matchAlgorithm: 'v3' }), - // transformerNotationHighlight(), - // transformerNotationFocus(), - // transformerNotationErrorLevel(), - // transformerNotationWordHighlight(), - // - // transformerMetaHighlight(), - // transformerMetaWordHighlight(), - // ], - // }) - // targetEl.innerHTML = pre // prism use textContent and shiki use innerHTML, Their escapes from `` are different - // } - - // pre html string - prism - { - const prism = await loadPrism() as typeof Prism; - if (!prism) { - new Notice('warning: withou Prism') - throw new Error('warning: withou Prism') - } - targetEl.innerHTML = '' - const pre = document.createElement('pre'); targetEl.appendChild(pre); - const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); - code.textContent = source; // prism use textContent and shiki use innerHTML, Their escapes from `` are different - prism.highlightElement(code) - } - } - - /** - * Save textarea text content to codeBlock markdown source - * - * Data security (Importance) - * - Make sure `Ctrl+z` is normal: use transaction - * - Make sure check error: try-catch - * - Make sure to remind users of errors: use Notice - * - Avoid overwriting the original data with incorrect data, this is unacceptable - * - * Refresh strategy1 (unable): real-time save, debounce - * - We need to ensure that the textarea element is not recreated when updating - * the content of the code block. It should be reused to avoid changes in the cursor position. - * - Reduce the update frequency and the number of transactions. - * Multiple calls within a certain period of time will only become one. (debounce) - * - * Refresh strategy2 (enable): onchange emit - * - It is better implemented under the obsidian architecture. - * Strategy1 requires additional processing: cache el - * - ~~Disadvantage: Can't use `ctrl+z` well in the code block.~~ - * textarea can be `ctrl+z` normally - * - Afraid if the program crashes, the frequency of save is low - * - * Other / Universal - * - This should be a universal module. It has nothing to do with the logic of the plugin. - * - Indent process - * - * @param isUpdateLanguage reduce modifications and minimize mistakes, can be used to increase stability - * @param isUpdateSource reduce modifications and minimize mistakes, can be used to increase stability - */ - async codeblock_saveContent(codeblockInfo: CodeblockInfo, el:HTMLElement, ctx:MarkdownPostProcessorContext, - isUpdateLanguage: boolean = true, isUpdateSource: boolean = true - ): Promise { - // range - const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) { - new Notice("Warning: without el section!", 3000) - return; - } - // sectionInfo.lineStart; // index in (```) - // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part - - // editor - const editor = this.app.workspace.activeEditor?.editor; - if (!editor) { - new Notice("Warning: without editor!", 3000) - return; - } - - // change - language - if (isUpdateLanguage) { - editor.transaction({ - changes: [{ - from: {line: sectionInfo.lineStart, ch: 0}, - to: {line: sectionInfo.lineStart+1, ch: 0}, - text: codeblockInfo.flag + codeblockInfo.language_type + codeblockInfo.language_meta + '\n' - }], - }); - } - - // change - source - if (isUpdateSource) { - editor.transaction({ - changes: [{ - from: {line: sectionInfo.lineStart+1, ch: 0}, - to: {line: sectionInfo.lineEnd, ch: 0}, - text: codeblockInfo.source ?? codeblockInfo.source_old + '\n' - }], - }); - } - } + } // registerInlineCodeProcessor(): void { // this.registerMarkdownPostProcessor(async (el, ctx) => { diff --git a/src/main.ts b/src/main.ts index 0068007..9da340a 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,23 +1,11 @@ -import { loadPrism, Plugin, TFile, type MarkdownPostProcessor, type MarkdownPostProcessorContext, Notice } from 'obsidian'; -import type Prism from 'prismjs' +import { loadPrism, Plugin, TFile, type MarkdownPostProcessor } from 'obsidian'; import { CodeBlock } from 'src/CodeBlock'; import { createCm6Plugin } from 'src/codemirror/Cm6_ViewPlugin'; import { DEFAULT_SETTINGS, type Settings } from 'src/settings/Settings'; import { ShikiSettingsTab } from 'src/settings/SettingsTab'; import { filterHighlightAllPlugin } from 'src/PrismPlugin'; import { CodeHighlighter } from 'src/Highlighter'; - -import { - transformerNotationDiff, - transformerNotationHighlight, - transformerNotationFocus, - transformerNotationErrorLevel, - transformerNotationWordHighlight, - - transformerMetaHighlight, - transformerMetaWordHighlight, -} from '@shikijs/transformers'; -import { bundledThemesInfo, codeToHtml } from 'shiki'; // 8.6MB +import { EditableCodeblock } from 'src/EditableCodeblock' declare module 'obsidian' { interface MarkdownPostProcessorContext { @@ -30,26 +18,6 @@ declare module 'obsidian' { } export const SHIKI_INLINE_REGEX = /^\{([^\s]+)\} (.*)/i; // format: `{lang} code` -const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/ -// const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/ - -/** - * Codeblock Info. - * Life cycle: One codeblock has one. - * Pay attention to consistency. - */ -interface CodeblockInfo { - // from ctx.getSectionInfo(el) // [!code warning] There may be indentation - prefix: string, // `> - * + ` // [!code warning] Because of the list nest, first-line indentation is not equal to universal indentation. - flag: string, // (```+|~~~+) - language_meta: string, // allow both end space, allow blank - language_type: string, // source code, can be an alias - source: string|null, - - // from obsidian callback args // [!code warning] It might be old data in oninput/onchange method - language_old: string, // to lib, can't be an alias - source_old: string, -} export default class ShikiPlugin extends Plugin { highlighter!: CodeHighlighter; @@ -144,158 +112,16 @@ export default class ShikiPlugin extends Plugin { return; } } - - const codeblockInfo = this.codeblock_getCodeBlockInfo(language, source, el, ctx) // able edit live // disadvantage: First screen CLS (Page jitter) if (this.settings.renderMode === 'textarea') { - // dom - // - div.obsidian-shiki-plugin - // - span > pre > code - // - textarea - // - div.language-edit - - // div - const div = document.createElement('div'); el.appendChild(div); div.classList.add('obsidian-shiki-plugin') - - // span - const span = document.createElement('span'); div.appendChild(span); - codeblockInfo.source = source - this.codeblock_renderPre(codeblockInfo, el, ctx, span).then().catch() - - // #region textarea - const textarea = document.createElement('textarea'); div.appendChild(textarea); - const attributes = { - 'resize-none': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', - }; - Object.entries(attributes).forEach(([key, val]) => { - textarea.setAttribute(key, val); - }); - textarea.value = source; - // textarea - async part - textarea.oninput = (ev): void => { - const newValue = (ev.target as HTMLTextAreaElement).value - codeblockInfo.source = newValue - void this.codeblock_renderPre(codeblockInfo, el, ctx, span) - } - textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - const newValue = (ev.target as HTMLTextAreaElement).value - codeblockInfo.source = newValue - void this.codeblock_saveContent(codeblockInfo, el, ctx, false, true) - } - // textarea - `tab` key、`arrow` key - textarea.addEventListener('keydown', (ev: KeyboardEvent) => { - if (ev.key == 'Tab') { - ev.preventDefault() - const value = textarea.value - const selectionStart: number = textarea.selectionStart - const selectionEnd: number = textarea.selectionEnd - const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1 - const lineEnd: number = value.indexOf('\n', selectionStart) - const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd) - // TODO enhamce: determine whether to insert the tab directly or the entire line of tabs based on the cursor - - // get indent, auto indent - const configUseTab = this.app.vault.getConfig('useTab') - const configTabSize = this.app.vault.getConfig('tabSize') - const indent_space = ' '.repeat(configTabSize) - let indent = configUseTab ? '\t' : indent_space - if (lineCurrent.startsWith('\t')) indent = '\t' - else if (lineCurrent.startsWith(' ')) indent = indent_space - - // change - // new value: cursorBefore + tab + cusrorAfter - textarea.value = textarea.value.substring(0, selectionStart) + indent + textarea.value.substring(selectionEnd) - // new cursor pos - textarea.selectionStart = textarea.selectionEnd = selectionStart + indent.length; - textarea.dispatchEvent(new InputEvent('input', { - inputType: 'insertText', - data: indent, - bubbles: true, - cancelable: true - })) - } - else if (ev.key == 'ArrowDown' || ev.key == 'ArrowRight') { - const value = textarea.value - const selectionEnd: number = textarea.selectionEnd - if (selectionEnd != value.length) return - - const editor = this.app.workspace.activeEditor?.editor; - if (!editor) return - - const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) return - - ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange` - let toLine = sectionInfo.lineEnd + 1 - if (toLine > editor.lineCount() - 1) { // when codeblock on the last line - // strategy1: only move to end - // toLine-- - - // strategy2: insert a blank line - const lastLineIndex = editor.lineCount() - 1 - const lastLineContent = editor.getLine(lastLineIndex) - editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length }) - - } - editor.setCursor(toLine, 0) - editor.focus() - } - else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') { - const value = textarea.value - const selectionStart: number = textarea.selectionStart - if (selectionStart != 0) return - - const editor = this.app.workspace.activeEditor?.editor; - if (!editor) return - - const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) return - - ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange` - let toLine = sectionInfo.lineStart - 1 - if (toLine < 0) { // when codeblock on the frist line - // strategy1: only move to start - // toLine = 0 - - // strategy2: insert a blank line - toLine = 0 - editor.replaceRange("\n", { line: 0, ch: 0 }) - } - editor.setCursor(toLine, 0) - editor.focus() - } - }) - // #endregion - - // #region language-edit - // language-edit - const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit'); - editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', ''); - const editInput = document.createElement('input'); editEl.appendChild(editInput); - editInput.value = codeblockInfo.language_type + codeblockInfo.language_meta - // language-edit - async part - editInput.oninput = (ev): void => { - const newValue = (ev.target as HTMLInputElement).value - const match = /^(\S*)(\s?.*)$/.exec(newValue) - if (!match) throw new Error('This is not a regular expression matching that may fail') - codeblockInfo.language_type = match[1] - codeblockInfo.language_meta = match[2] - void this.codeblock_renderPre(codeblockInfo, el, ctx, span) - } - editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) - const newValue = (ev.target as HTMLInputElement).value - const match = /^(\S*)(\s?.*)$/.exec(newValue) - if (!match) throw new Error('This is not a regular expression matching that may fail') - codeblockInfo.language_type = match[1] - codeblockInfo.language_meta = match[2] - void this.codeblock_saveContent(codeblockInfo, el, ctx, true, false) - } - // #endregion + const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx) + editableCodeblock.renderEditableCodeblock() } else if (this.settings.renderMode === 'pre') { - void this.codeblock_renderPre(codeblockInfo, el, ctx, el) + const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx) + void editableCodeblock.renderPre(el) } else { const codeBlock = new CodeBlock(this, el, source, language, ctx); @@ -310,198 +136,6 @@ export default class ShikiPlugin extends Plugin { } } - codeblock_getCodeBlockInfo(language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): CodeblockInfo { - const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) { - // This is possible. when rerender - const codeblockInfo:CodeblockInfo = { - prefix: '', - flag: '', // null flag - language_meta: '', - language_type: language_old, - source: null, // null flag - - language_old: language_old, - source_old: source_old, - } - return codeblockInfo - } - // sectionInfo.lineStart; // index in (```) - // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part - - const lines = sectionInfo.text.split('\n') - if (lines.length < sectionInfo.lineStart + 1 || lines.length < sectionInfo.lineEnd + 1) { - // This is impossible. - // Unless obsidian makes a mistake. - new Notice("Warning: el ctx error!", 3000) - throw new Error('Warning: el ctx error!') - } - - const firstLine = lines[sectionInfo.lineStart] - const match = reg_code.exec(firstLine) - if (!match) { - // This is possible. - // When the code block is nested and the first line is not a code block - // (The smallest section of getSectionInfo is `markdown-preview-section>div`) - const codeblockInfo:CodeblockInfo = { - prefix: '', - flag: '', // null flag - language_meta: '', - language_type: language_old, - source: null, // null flag - - language_old: language_old, - source_old: source_old, - } - return codeblockInfo - } - - const codeblockInfo:CodeblockInfo = { - prefix: match[1], - flag: match[3], - language_meta: match[5], - language_type: match[4], - source: lines.slice(sectionInfo.lineStart + 1, sectionInfo.lineEnd).join('\n'), - - language_old: language_old, - source_old: source_old, - } - return codeblockInfo - } - - /** - * Render code to targetEl - * - * @param language (does not contain meta information) - * @param source same as registerMarkdownCodeBlockProcessor args - * @param el same as registerMarkdownCodeBlockProcessor args - * @param ctx same as registerMarkdownCodeBlockProcessor args - * @param targetEl in which element should the result be rendered - */ - async codeblock_renderPre(codeblockInfo:CodeblockInfo, el:HTMLElement, ctx:MarkdownPostProcessorContext, targetEl:HTMLElement): Promise { - // source correct. - // When the last line of the source is blank (with no Spaces either), - // prismjs and shiki will both ignore the line, - // this causes `textarea` and `pre` to fail to align. - let source: string = codeblockInfo.source ?? codeblockInfo.source_old - if (source.endsWith('\n')) source += '\n' - - // pre html string - shiki - if (this.settings.renderEngine == 'shiki') { - // check theme, TODO: use more theme - let theme = '' - for (const item of bundledThemesInfo) { - if (item.id == this.settings.theme) { theme = this.settings.theme; break } - } - if (theme === '') { - theme = 'andromeeda' - console.warn(`no support theme '${this.settings.theme}' temp in this render mode`) - } - - const pre:string = await codeToHtml(source, { - lang: codeblockInfo.language_old, - theme: theme, - meta: { __raw: codeblockInfo.language_meta }, - // https://shiki.style/packages/transformers - transformers: [ - transformerNotationDiff({ matchAlgorithm: 'v3' }), - transformerNotationHighlight(), - transformerNotationFocus(), - transformerNotationErrorLevel(), - transformerNotationWordHighlight(), - - transformerMetaHighlight(), - transformerMetaWordHighlight(), - ], - }) - targetEl.innerHTML = pre // prism use textContent and shiki use innerHTML, Their escapes from `` are different - } - // pre html string - prism - else { - const prism = await loadPrism() as typeof Prism; - if (!prism) { - new Notice('warning: withou Prism') - throw new Error('warning: withou Prism') - } - targetEl.innerHTML = '' - const pre = document.createElement('pre'); targetEl.appendChild(pre); - const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+codeblockInfo.language_type); - code.textContent = source; // prism use textContent and shiki use innerHTML, Their escapes from `` are different - prism.highlightElement(code) - } - } - - /** - * Save textarea text content to codeBlock markdown source - * - * Data security (Importance) - * - Make sure `Ctrl+z` is normal: use transaction - * - Make sure check error: try-catch - * - Make sure to remind users of errors: use Notice - * - Avoid overwriting the original data with incorrect data, this is unacceptable - * - * Refresh strategy1 (unable): real-time save, debounce - * - We need to ensure that the textarea element is not recreated when updating - * the content of the code block. It should be reused to avoid changes in the cursor position. - * - Reduce the update frequency and the number of transactions. - * Multiple calls within a certain period of time will only become one. (debounce) - * - * Refresh strategy2 (enable): onchange emit - * - It is better implemented under the obsidian architecture. - * Strategy1 requires additional processing: cache el - * - ~~Disadvantage: Can't use `ctrl+z` well in the code block.~~ - * textarea can be `ctrl+z` normally - * - Afraid if the program crashes, the frequency of save is low - * - * Other / Universal - * - This should be a universal module. It has nothing to do with the logic of the plugin. - * - Indent process - * - * @param isUpdateLanguage reduce modifications and minimize mistakes, can be used to increase stability - * @param isUpdateSource reduce modifications and minimize mistakes, can be used to increase stability - */ - async codeblock_saveContent(codeblockInfo: CodeblockInfo, el:HTMLElement, ctx:MarkdownPostProcessorContext, - isUpdateLanguage: boolean = true, isUpdateSource: boolean = true - ): Promise { - // range - const sectionInfo = ctx.getSectionInfo(el); - if (!sectionInfo) { - new Notice("Warning: without el section!", 3000) - return; - } - // sectionInfo.lineStart; // index in (```) - // sectionInfo.lineEnd; // index in (```), Let's not modify the fence part - - // editor - const editor = this.app.workspace.activeEditor?.editor; - if (!editor) { - new Notice("Warning: without editor!", 3000) - return; - } - - // change - language - if (isUpdateLanguage) { - editor.transaction({ - changes: [{ - from: {line: sectionInfo.lineStart, ch: 0}, - to: {line: sectionInfo.lineStart+1, ch: 0}, - text: codeblockInfo.flag + codeblockInfo.language_type + codeblockInfo.language_meta + '\n' - }], - }); - } - - // change - source - if (isUpdateSource) { - editor.transaction({ - changes: [{ - from: {line: sectionInfo.lineStart+1, ch: 0}, - to: {line: sectionInfo.lineEnd, ch: 0}, - text: (codeblockInfo.source ?? codeblockInfo.source_old) + '\n' - }], - }); - } - } - registerInlineCodeProcessor(): void { this.registerMarkdownPostProcessor(async (el, ctx) => { const inlineCodes = el.findAll(':not(pre) > code'); From e5d61a15f6eb24e3fb45eaf14b0cf8d2846b0efb Mon Sep 17 00:00:00 2001 From: Linc <762699299@qq.com> Date: Sat, 24 May 2025 18:10:15 +0800 Subject: [PATCH 41/66] feat: add new renderMode: editable pre --- src/EditableCodeblock.ts | 114 +++++++++++++++++++++++++++++++++--- src/main.ts | 4 ++ src/settings/Settings.ts | 2 +- src/settings/SettingsTab.ts | 7 ++- styles.css | 3 +- tsconfig.json | 2 +- 6 files changed, 117 insertions(+), 15 deletions(-) diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts index c5f9677..05b256f 100644 --- a/src/EditableCodeblock.ts +++ b/src/EditableCodeblock.ts @@ -52,11 +52,12 @@ export class EditableCodeblock { this.plugin = plugin this.el = el this.ctx = ctx - this.codeblockInfo = EditableCodeblock.getCodeBlockInfo(language_old, source_old, el, ctx) + this.codeblockInfo = EditableCodeblock.createCodeBlockInfo(language_old, source_old, el, ctx) + this.codeblockInfo.source = this.codeblockInfo.source_old } // Data related to codeblock - static getCodeBlockInfo(language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): CodeblockInfo { + static createCodeBlockInfo(language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext): CodeblockInfo { const sectionInfo = ctx.getSectionInfo(el); if (!sectionInfo) { // This is possible. when rerender @@ -121,7 +122,7 @@ export class EditableCodeblock { // - span > pre > code // - textarea // - div.language-edit - + // div const div = document.createElement('div'); this.el.appendChild(div); div.classList.add('obsidian-shiki-plugin') @@ -130,7 +131,7 @@ export class EditableCodeblock { this.codeblockInfo.source = this.codeblockInfo.source_old void this.renderPre(span).then().catch() - // #region textarea + // textarea const textarea = document.createElement('textarea'); div.appendChild(textarea); const attributes = { 'resize-none': '', 'autocomplete': 'off', 'autocorrect': 'off', 'autocapitalize': 'none', 'spellcheck': 'false', @@ -139,7 +140,8 @@ export class EditableCodeblock { textarea.setAttribute(key, val); }); textarea.value = this.codeblockInfo.source; - // textarea - async part + + // #region textarea - async part textarea.oninput = (ev): void => { const newValue = (ev.target as HTMLTextAreaElement).value this.codeblockInfo.source = newValue @@ -150,8 +152,7 @@ export class EditableCodeblock { this.codeblockInfo.source = newValue void this.saveContent(false, true) } - // textarea - `tab` key、`arrow` key - textarea.addEventListener('keydown', (ev: KeyboardEvent) => { + textarea.addEventListener('keydown', (ev: KeyboardEvent) => { // `tab` key、`arrow` key if (ev.key == 'Tab') { ev.preventDefault() const value = textarea.value @@ -259,6 +260,101 @@ export class EditableCodeblock { // #endregion } + async renderEditablePre(): Promise { + // dom + // - div.obsidian-shiki-plugin.editable-pre + // - pre + // - code.language- + + const prism = await loadPrism() as typeof Prism; + if (!prism) { + new Notice('warning: withou Prism') + throw new Error('warning: withou Prism') + } + + // div + const div = document.createElement('div'); this.el.appendChild(div); div.classList.add('obsidian-shiki-plugin', 'editable-pre') + + // pre + const pre = document.createElement('pre'); div.appendChild(pre); + + // code + const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-' + this.codeblockInfo.language_type) + code.setAttribute('contenteditable', 'true'); code.setAttribute('spellcheck', 'false'); + this.codeblockInfo.source = this.codeblockInfo.source_old + code.textContent = this.codeblockInfo.source // prism use textContent and shiki use innerHTML, Their escapes from `` are different + prism.highlightElement(code) + + // code - async part + code.oninput = (ev): void => { + const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no) + this.codeblockInfo.source = newValue + void Promise.resolve().then(() => { // like vue nextTick, ensure that the cursor is behind + const savedPos = this.renderEditablePre_saveCursorPosition(pre) + code.textContent = newValue + prism.highlightElement(code) // `prism.highlightElement()` will reset cursor position + if (savedPos) { this.renderEditablePre_restoreCursorPosition(pre, savedPos.start, savedPos.end) } + }) + } + // pre/code without onchange, use blur event + code.addEventListener('blur', (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position) + const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no) + this.codeblockInfo.source = newValue // prism use textContent and shiki use innerHTML, Their escapes from `` are different + void this.saveContent(false, true) + }) + } + + renderEditablePre_saveCursorPosition(container: Node): null|{start: number, end: number} { + const selection = window.getSelection() + if (!selection || selection.rangeCount === 0) return null + + const range: Range = selection.getRangeAt(0) + + // get start + const preRange: Range = document.createRange() + preRange.selectNodeContents(container) + preRange.setEnd(range.startContainer, range.startOffset) + const start = preRange.toString().length + + return { + start, + end: start + range.toString().length + } + } + + renderEditablePre_restoreCursorPosition(container: Node, start: number, end: number): void { + // get range + const range: Range = document.createRange() + let charIndex = 0 + let isFoundStart = false + let isFoundEnd = false + function traverse(node: Node): void { + if (node.nodeType === Node.TEXT_NODE) { // pre/code is Node.ELEMENT_NODE, not inconformity + const nextIndex = charIndex + (node.nodeValue?.length ?? 0) + if (!isFoundStart && start >= charIndex && start <= nextIndex) { // start + range.setStart(node, start - charIndex) + isFoundStart = true + } + if (isFoundStart && !isFoundEnd && end >= charIndex && end <= nextIndex) { // end + range.setEnd(node, end - charIndex) + isFoundEnd = true + } + charIndex = nextIndex + } + else { + for (const child of node.childNodes) { + traverse(child) + if (isFoundEnd) break + } + } + } + traverse(container) + + const selection = window.getSelection() + selection?.removeAllRanges() + selection?.addRange(range) + } + /** * Render code to targetEl * @@ -272,7 +368,7 @@ export class EditableCodeblock { let source: string = this.codeblockInfo.source ?? this.codeblockInfo.source_old if (source.endsWith('\n')) source += '\n' - // pre html string - shiki + // pre html string - shiki, insert `

...
`
 		if (this.plugin.settings.renderEngine == 'shiki') {
 			// check theme, TODO: use more theme
 			let theme = ''
@@ -302,7 +398,7 @@ export class EditableCodeblock {
 			})
 			targetEl.innerHTML = pre // prism use textContent and shiki use innerHTML, Their escapes from `` are different
 		}
-		// pre html string - prism
+		// pre html string - prism, insert `
...
`
 		else {
 			const prism = await loadPrism() as typeof Prism;
 			if (!prism) {
diff --git a/src/main.ts b/src/main.ts
index 9da340a..9e4bab0 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -123,6 +123,10 @@ export default class ShikiPlugin extends Plugin {
 							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
 							void editableCodeblock.renderPre(el)
 						}
+						else if (this.settings.renderMode === 'editablePre') {
+							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
+							void editableCodeblock.renderEditablePre()
+						}
 						else {
 							const codeBlock = new CodeBlock(this, el, source, language, ctx);
 							ctx.addChild(codeBlock);
diff --git a/src/settings/Settings.ts b/src/settings/Settings.ts
index bb94d03..b0ec655 100644
--- a/src/settings/Settings.ts
+++ b/src/settings/Settings.ts
@@ -3,7 +3,7 @@ export interface Settings {
 	customThemeFolder: string;
 	customLanguageFolder: string;
 	theme: string;
-	renderMode: 'textarea'|'pre'|'codemirror';
+	renderMode: 'textarea'|'pre'|'editablePre'|'codemirror';
 	renderEngine: 'shiki'|'prismjs';
 	preferThemeColors: boolean;
 	inlineHighlighting: boolean;
diff --git a/src/settings/SettingsTab.ts b/src/settings/SettingsTab.ts
index b3c8eca..8a8633c 100644
--- a/src/settings/SettingsTab.ts
+++ b/src/settings/SettingsTab.ts
@@ -58,8 +58,8 @@ export class ShikiSettingsTab extends PluginSettingTab {
 			.setDesc('Select the render engine for the code blocks.')
 			.addDropdown(dropdown => {
 				dropdown.addOptions({
-					'shiki': 'shiki',
-					'prismjs': 'prismjs',
+					'shiki': 'Shiki',
+					'prismjs': 'PrismJs',
 				});
 				dropdown.setValue(this.plugin.settings.renderEngine).onChange(async value => {
 					this.plugin.settings.renderEngine = value as 'shiki'|'prismjs';
@@ -74,10 +74,11 @@ export class ShikiSettingsTab extends PluginSettingTab {
 				dropdown.addOptions({
 					'textarea': 'textarea',
 					'pre': 'pre',
+					'editablePre': 'editable pre (beta)',
 					'codemirror': 'codemirror',
 				});
 				dropdown.setValue(this.plugin.settings.renderMode).onChange(async value => {
-					this.plugin.settings.renderMode = value as 'textarea'|'pre'|'codemirror';
+					this.plugin.settings.renderMode = value as 'textarea'|'pre'|'editablePre'|'codemirror';
 					await this.plugin.saveSettings();
 				});
 			});
diff --git a/styles.css b/styles.css
index a18c145..81b8efa 100644
--- a/styles.css
+++ b/styles.css
@@ -305,7 +305,6 @@ code>span.line {
 	width: 100%;
 	height: 100%;
 	resize: none;
-	white-space: pre;
 	overflow: auto;
 	background-color: transparent;
 	/* color: transparent; */
@@ -327,6 +326,7 @@ code>span.line {
 	tab-size: var(--indent-size) !important;
 	font-size: var(--code-size) !important;
 	font-family: var(--font-monospace) !important;
+	white-space: pre !important;
 }
 .obsidian-shiki-plugin code::selection, .obsidian-shiki-plugin textarea::selection {
 	background-color: var(--text-selection) !important;
@@ -341,6 +341,7 @@ code>span.line {
 	margin: 0 !important;
 	padding: 12px var(--shiki-x-padding) !important;
 	border: 0 !important;
+	white-space: pre !important;
 	cursor: text;
 }
 /* edit-block-button > textarea > pre */
diff --git a/tsconfig.json b/tsconfig.json
index fcdeefd..6873044 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -11,7 +11,7 @@
 		"moduleResolution": "node",
 		"importHelpers": true,
 		"isolatedModules": true,
-		"lib": ["DOM", "ESNext"],
+		"lib": ["DOM", "ESNext", "DOM.Iterable"],
 		"allowSyntheticDefaultImports": true
 	},
 	"include": ["src/**/*.ts", "tests/**/*.ts"]

From 822277a68851030b576e2fd978ca8b843ce86a5a Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 24 May 2025 18:45:55 +0800
Subject: [PATCH 42/66] feat: add languageType arrow event

like typora
---
 src/EditableCodeblock.ts | 52 ++++++++++++++++++++++++----------------
 1 file changed, 32 insertions(+), 20 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 05b256f..ce8b912 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -19,6 +19,7 @@ import {
 } from '@shikijs/transformers';
 import { bundledThemesInfo, codeToHtml } from 'shiki'; // 8.6MB
 import type Prism from 'prismjs';
+import { language } from '@codemirror/language';
 
 const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/
 // const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/
@@ -187,26 +188,8 @@ export class EditableCodeblock {
 				const selectionEnd: number = textarea.selectionEnd
 				if (selectionEnd != textarea.value.length) return
 
-				const editor = this.plugin.app.workspace.activeEditor?.editor;
-				if (!editor) return
-
-				const sectionInfo = this.ctx.getSectionInfo(this.el);
-				if (!sectionInfo) return
-
-				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
-				const toLine = sectionInfo.lineEnd + 1
-				if (toLine > editor.lineCount() - 1) { // when codeblock on the last line
-					// strategy1: only move to end
-					// toLine--
-
-					// strategy2: insert a blank line
-					const lastLineIndex = editor.lineCount() - 1
-					const lastLineContent = editor.getLine(lastLineIndex)
-					editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length })
-					
-				}
-				editor.setCursor(toLine, 0)
-				editor.focus()
+				editInput.setSelectionRange(0, 0)
+				editInput.focus()
 			}
 			else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') {
 				const selectionStart: number = textarea.selectionStart
@@ -257,6 +240,35 @@ export class EditableCodeblock {
 			this.codeblockInfo.language_meta = match[2]
 			void this.saveContent(true, false)
 		}
+		editInput.addEventListener('keydown', (ev: KeyboardEvent) => {
+			if (ev.key == 'ArrowUp') {
+				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange
+				const position = textarea.value.length
+				textarea.setSelectionRange(position, position)
+				textarea.focus()
+			}
+			else if (ev.key == 'ArrowDown') {
+				const editor = this.plugin.app.workspace.activeEditor?.editor;
+				if (!editor) return
+
+				const sectionInfo = this.ctx.getSectionInfo(this.el);
+				if (!sectionInfo) return
+
+				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
+				const toLine = sectionInfo.lineEnd + 1
+				if (toLine > editor.lineCount() - 1) { // when codeblock on the last line
+					// strategy1: only move to end
+					// toLine--
+
+					// strategy2: insert a blank line
+					const lastLineIndex = editor.lineCount() - 1
+					const lastLineContent = editor.getLine(lastLineIndex)
+					editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length })
+				}
+				editor.setCursor(toLine, 0)
+				editor.focus()
+			}
+		})
 		// #endregion
 	}
 

From 7d6d684a112c8f9b698882822b2fff8fd626d397 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 24 May 2025 21:13:04 +0800
Subject: [PATCH 43/66] feat: add a new save cache, debounce save version

fix: can't save when cursor in codeblock and use short-key switch to source mode
---
 src/EditableCodeblock.ts | 85 ++++++++++++++++++++++++++++++++++------
 1 file changed, 72 insertions(+), 13 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index ce8b912..8dcb71e 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -4,7 +4,7 @@
  * This will gradually be modified into a universal module that does not rely on obsidian
  */ 
 
-import { type App, loadPrism, type MarkdownPostProcessorContext, Notice } from 'obsidian';
+import { type App, loadPrism, type MarkdownPostProcessorContext, Notice, debounce } from 'obsidian';
 import { type Settings } from 'src/settings/Settings';
 
 import {
@@ -19,7 +19,6 @@ import {
 } from '@shikijs/transformers';
 import { bundledThemesInfo, codeToHtml } from 'shiki'; // 8.6MB
 import type Prism from 'prismjs';
-import { language } from '@codemirror/language';
 
 const reg_code = /^((\s|>\s|-\s|\*\s|\+\s)*)(```+|~~~+)(\S*)(\s?.*)/
 // const reg_code_noprefix = /^((\s)*)(```+|~~~+)(\S*)(\s?.*)/
@@ -42,6 +41,9 @@ export interface CodeblockInfo {
 	source_old: string,
 }
 
+// RAII, use: setValue -> refresh -> getValue -> reSetNull
+let global_refresh_cache: null|{start:number, end:number} = null
+
 // Class definitions in rust style, The object is separated from the implementation
 export class EditableCodeblock {
 	plugin: { app: App; settings: Settings };
@@ -142,17 +144,57 @@ export class EditableCodeblock {
 		});
 		textarea.value = this.codeblockInfo.source;
 
-		// #region textarea - async part
-		textarea.oninput = (ev): void => {
-			const newValue = (ev.target as HTMLTextAreaElement).value
-			this.codeblockInfo.source = newValue
-			void this.renderPre(span)
+		// #region textarea - async part - oninput/onchange
+		// strategy1: onchange save,
+		// - Advantage:
+		//   Great performance.
+		//   There is no need to manage the cursor position manually
+		// - Disadvantage:
+		//   Delay save, change will loss if the program crashes suddenly
+		if (true) {
+			textarea.oninput = (ev): void => {
+				const newValue = (ev.target as HTMLTextAreaElement).value
+				this.codeblockInfo.source = newValue
+				void this.renderPre(span)
+			}
+			textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
+				const newValue = (ev.target as HTMLTextAreaElement).value
+				this.codeblockInfo.source = newValue
+				void this.saveContent_debounced(false, true)
+			}
 		}
-		textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
-			const newValue = (ev.target as HTMLTextAreaElement).value
-			this.codeblockInfo.source = newValue
-			void this.saveContent(false, true)
+		// strategy2: cache and rebuild
+		// - Advantage:
+		//   Save immediately, data is more secure.
+		// - Disadvantage:
+		//   Worse performance?
+		//   The cursor position needs to be handled manually. Debounce manually.
+		else {
+			void Promise.resolve().then(() => {
+				if (global_refresh_cache) {
+					// this.el.appendChild(global_refresh_cache.el)
+					// const textarea: HTMLTextAreaElement|null = global_refresh_cache.el.querySelector('textarea')
+					textarea.setSelectionRange(global_refresh_cache.start, global_refresh_cache.end)
+					textarea.focus()
+					global_refresh_cache = null
+					// return
+				}
+			})
+			textarea.oninput = (ev): void => {
+				const newValue = (ev.target as HTMLTextAreaElement).value
+				this.codeblockInfo.source = newValue
+				void this.renderPre(span)
+
+				global_refresh_cache = {
+					start: textarea.selectionStart,
+					end: textarea.selectionEnd,
+				}
+				void this.saveContent_debounced(false, true)
+			}
 		}
+		// #endregion
+
+		// #region textarea - async part - keydwon
 		textarea.addEventListener('keydown', (ev: KeyboardEvent) => { // `tab` key、`arrow` key
 			if (ev.key == 'Tab') {
 				ev.preventDefault()
@@ -238,7 +280,7 @@ export class EditableCodeblock {
 			if (!match) throw new Error('This is not a regular expression matching that may fail')
 			this.codeblockInfo.language_type = match[1]
 			this.codeblockInfo.language_meta = match[2]
-			void this.saveContent(true, false)
+			void this.saveContent_debounced(true, false)
 		}
 		editInput.addEventListener('keydown', (ev: KeyboardEvent) => {
 			if (ev.key == 'ArrowUp') {
@@ -312,7 +354,7 @@ export class EditableCodeblock {
 		code.addEventListener('blur', (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
 			const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
 			this.codeblockInfo.source = newValue // prism use textContent and shiki use innerHTML, Their escapes from `` are different
-			void this.saveContent(false, true)
+			void this.saveContent_debounced(false, true)
 		})
 	}
 
@@ -367,6 +409,16 @@ export class EditableCodeblock {
 		selection?.addRange(range)
 	}
 
+	// There will be a strong sense of lag, and the experience is not good
+	/**
+	 * @deprecated There will be a strong sense of lag, and the experience is not good.
+	 * you should use `renderPre` version
+	 */
+	renderPre_debounced = debounce(async (targetEl:HTMLElement): Promise => {
+		void this.renderPre(targetEl)
+		console.log('debug renderPre debounced')
+	}, 200)
+
 	/**
 	 * Render code to targetEl
 	 * 
@@ -425,9 +477,16 @@ export class EditableCodeblock {
 		}
 	}
 
+	saveContent_debounced = debounce(async (isUpdateLanguage: boolean = true, isUpdateSource: boolean = true) => {
+		void this.saveContent(isUpdateLanguage, isUpdateSource)
+	}, 200)
+
 	/**
 	 * Save textarea text content to codeBlock markdown source
 	 * 
+	 * @deprecated can't save when cursor in codeblock and use short-key switch to source mode.
+	 * You should use `saveContent_debounced` version
+	 * 
 	 * Data security (Importance)
 	 * - Make sure `Ctrl+z` is normal: use transaction
 	 * - Make sure check error: try-catch

From 621e02f71abacd7527405b8900e0a252c31b519b Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 24 May 2025 21:32:07 +0800
Subject: [PATCH 44/66] enhance: ensure editor safe, saveContent faster

---
 src/EditableCodeblock.ts | 59 ++++++++++++++++++++++++++--------------
 1 file changed, 39 insertions(+), 20 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 8dcb71e..0fd9b08 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -4,7 +4,7 @@
  * This will gradually be modified into a universal module that does not rely on obsidian
  */ 
 
-import { type App, loadPrism, type MarkdownPostProcessorContext, Notice, debounce } from 'obsidian';
+import { type App, debounce, type Editor, loadPrism, type MarkdownPostProcessorContext, Notice } from 'obsidian';
 import { type Settings } from 'src/settings/Settings';
 
 import {
@@ -49,12 +49,15 @@ export class EditableCodeblock {
 	plugin: { app: App; settings: Settings };
 	el: HTMLElement;
 	ctx: MarkdownPostProcessorContext;
+	editor: Editor|undefined; // Cache to avoid focus changes. And the focus point may not be correct when creating the code block. It can be updated again when oninput
 	codeblockInfo: CodeblockInfo;
 
 	constructor(plugin: { app: App; settings: Settings }, language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext) {
 		this.plugin = plugin
 		this.el = el
 		this.ctx = ctx
+		this.editor = this.plugin.app.workspace.activeEditor?.editor;
+
 		this.codeblockInfo = EditableCodeblock.createCodeBlockInfo(language_old, source_old, el, ctx)
 		this.codeblockInfo.source = this.codeblockInfo.source_old
 	}
@@ -153,6 +156,8 @@ export class EditableCodeblock {
 		//   Delay save, change will loss if the program crashes suddenly
 		if (true) {
 			textarea.oninput = (ev): void => {
+				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+
 				const newValue = (ev.target as HTMLTextAreaElement).value
 				this.codeblockInfo.source = newValue
 				void this.renderPre(span)
@@ -181,6 +186,8 @@ export class EditableCodeblock {
 				}
 			})
 			textarea.oninput = (ev): void => {
+				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+
 				const newValue = (ev.target as HTMLTextAreaElement).value
 				this.codeblockInfo.source = newValue
 				void this.renderPre(span)
@@ -234,12 +241,11 @@ export class EditableCodeblock {
 				editInput.focus()
 			}
 			else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') {
+				if (!this.editor) return
+
 				const selectionStart: number = textarea.selectionStart
 				if (selectionStart != 0) return
 
-				const editor = this.plugin.app.workspace.activeEditor?.editor;
-				if (!editor) return
-
 				const sectionInfo = this.ctx.getSectionInfo(this.el);
 				if (!sectionInfo) return
 
@@ -251,10 +257,10 @@ export class EditableCodeblock {
 
 					// strategy2: insert a blank line
 					toLine = 0
-					editor.replaceRange("\n", { line: 0, ch: 0 })
+					this.editor.replaceRange("\n", { line: 0, ch: 0 })
 				}
-				editor.setCursor(toLine, 0)
-				editor.focus()
+				this.editor.setCursor(toLine, 0)
+				this.editor.focus()
 			}
 		})
 		// #endregion
@@ -267,6 +273,8 @@ export class EditableCodeblock {
 		editInput.value = this.codeblockInfo.language_type + this.codeblockInfo.language_meta
 		// language-edit - async part
 		editInput.oninput = (ev): void => {
+			this.editor = this.plugin.app.workspace.activeEditor?.editor;
+
 			const newValue = (ev.target as HTMLInputElement).value
 			const match = /^(\S*)(\s?.*)$/.exec(newValue)
 			if (!match) throw new Error('This is not a regular expression matching that may fail')
@@ -290,25 +298,24 @@ export class EditableCodeblock {
 				textarea.focus()
 			}
 			else if (ev.key == 'ArrowDown') {
-				const editor = this.plugin.app.workspace.activeEditor?.editor;
-				if (!editor) return
+				if (!this.editor) return
 
 				const sectionInfo = this.ctx.getSectionInfo(this.el);
 				if (!sectionInfo) return
 
 				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
 				const toLine = sectionInfo.lineEnd + 1
-				if (toLine > editor.lineCount() - 1) { // when codeblock on the last line
+				if (toLine > this.editor.lineCount() - 1) { // when codeblock on the last line
 					// strategy1: only move to end
 					// toLine--
 
 					// strategy2: insert a blank line
-					const lastLineIndex = editor.lineCount() - 1
-					const lastLineContent = editor.getLine(lastLineIndex)
-					editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length })
+					const lastLineIndex = this.editor.lineCount() - 1
+					const lastLineContent = this.editor.getLine(lastLineIndex)
+					this.editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length })
 				}
-				editor.setCursor(toLine, 0)
-				editor.focus()
+				this.editor.setCursor(toLine, 0)
+				this.editor.focus()
 			}
 		})
 		// #endregion
@@ -341,6 +348,8 @@ export class EditableCodeblock {
 		
 		// code - async part
 		code.oninput = (ev): void => {
+			this.editor = this.plugin.app.workspace.activeEditor?.editor;
+
 			const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
 			this.codeblockInfo.source = newValue
 			void Promise.resolve().then(() => { // like vue nextTick, ensure that the cursor is behind
@@ -477,6 +486,17 @@ export class EditableCodeblock {
 		}
 	}
 
+	async saveContent_safe(isUpdateLanguage: boolean = true, isUpdateSource: boolean = true): Promise {
+		try {
+			this.saveContent(isUpdateLanguage, isUpdateLanguage)
+		} catch (e) {
+			this.saveContent_debounced(isUpdateLanguage, isUpdateLanguage)
+		}
+	}
+
+	/**
+	 * @deprecated You should use `saveContent_safe` version
+	 */
 	saveContent_debounced = debounce(async (isUpdateLanguage: boolean = true, isUpdateSource: boolean = true) => {
 		void this.saveContent(isUpdateLanguage, isUpdateSource)
 	}, 200)
@@ -485,7 +505,7 @@ export class EditableCodeblock {
 	 * Save textarea text content to codeBlock markdown source
 	 * 
 	 * @deprecated can't save when cursor in codeblock and use short-key switch to source mode.
-	 * You should use `saveContent_debounced` version
+	 * You should use `saveContent_safe` version
 	 * 
 	 * Data security (Importance)
 	 * - Make sure `Ctrl+z` is normal: use transaction
@@ -524,15 +544,14 @@ export class EditableCodeblock {
 		// sectionInfo.lineEnd;   // index in (```), Let's not modify the fence part
 
 		// editor
-		const editor = this.plugin.app.workspace.activeEditor?.editor;
-		if (!editor) {
+		if (!this.editor) {
 			new Notice("Warning: without editor!", 3000)
 			return;
 		}
 
 		// change - language
 		if (isUpdateLanguage) {
-			editor.transaction({
+			this.editor.transaction({
 				changes: [{
 					from: {line: sectionInfo.lineStart, ch: 0},
 					to: {line: sectionInfo.lineStart+1, ch: 0},
@@ -543,7 +562,7 @@ export class EditableCodeblock {
 
 		// change - source
 		if (isUpdateSource) {
-			editor.transaction({
+			this.editor.transaction({
 				changes: [{
 					from: {line: sectionInfo.lineStart+1, ch: 0},
 					to: {line: sectionInfo.lineEnd, ch: 0},

From 029157247fc1040cad0a5daf90f3fb0d5213dcc4 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 24 May 2025 22:40:30 +0800
Subject: [PATCH 45/66] feat: new setting option: saveMode

---
 docs/README.md              | 25 ++++++++++++++++++++++++-
 docs/README.zh.md           | 25 ++++++++++++++++++++++++-
 src/EditableCodeblock.ts    | 35 ++++++++++++++---------------------
 src/settings/Settings.ts    |  2 ++
 src/settings/SettingsTab.ts | 14 ++++++++++++++
 5 files changed, 78 insertions(+), 23 deletions(-)

diff --git a/docs/README.md b/docs/README.md
index bbebb80..fe2de84 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -12,6 +12,7 @@ Shiki, PrismJS, CodeMirror
   - More powerful functions, more themes and plugins
   - Plugins: meta annotations, annotated annotations. Line highlighting, word highlighting, differentiated annotation, warning/error annotation
   - Theme: Nearly 80 color schemes: You can visually select them at https://textmate-grammars-themes.netlify.app
+  - *The min version does not include this library and the engine cannot be selected*
 - PrismJS: The rendering engine that Obsidian uses by default in reading mode.
   - When choosing this one, you can also select the min version of this plugin, which has a smaller plugin size and a faster loading speed
   - It can be color-matched with code using obsidian themes and can be used in conjunction with some other obsidian stylization plugins
@@ -22,10 +23,32 @@ Shiki, PrismJS, CodeMirror
 ### Rendering method
 
 - textarea: Allows real-time editing and offers a Typora-like WYSIWYG experience
-  - WARNING: Since this method allows for the editing of text content, it is best to use it when the warehouse is regularly backed up to avoid accidents
+  - In principle, textarea and pre are perfectly overlapped together, but they are prone to incomplete overlap due to the influence of themes and styles
 - pre: Real-time editing is not allowed. The rendering effect is more similar to the textarea method
+- editable pre: Allows real-time editing and offers a Typora-like WYSIWYG experience
+  - In principle, it is `code[contenteditable='true']`
+  - The cursor position needs to be handled manually in the program
 - codemirror: The only supported method for V0.5.0 and earlier versions, which does not allow real-time editing
 
+> [!warning]
+> 
+> If a real-time editable solution is chosen, it is best to use it when the warehouse is regularly backed up to avoid unexpected situations
+
+### AutoSave method
+
+- onchange
+  - Advantage:
+    Great performance.
+    There is no need to manage the cursor position manually
+  - Disadvantage:
+    Delay save, change will loss if: the program crashes suddenly. when cursor in codeblock, switch to readmode or close window/tab
+- oninput, 
+  - Advantage:
+    Save immediately, data is more secure.
+  - Disadvantage:
+    Worse performance? The code block needs to be recreated every time it is modified
+    The cursor position needs to be handled manually. Debounce manually.
+
 ## Shiki Extend Sytax
 
 see https://shiki.style/packages/transformers for detail
diff --git a/docs/README.zh.md b/docs/README.zh.md
index 91bf4b0..d7f4ce3 100644
--- a/docs/README.zh.md
+++ b/docs/README.zh.md
@@ -12,6 +12,7 @@ Shiki, PrismJS,CodeMirror
   - 功能更加强大,更多主题和插件
   - 插件: meta标注、注释型标注。行高亮、单词高亮、差异化标注、警告/错误标注
   - 主题:近80种配色方案:你可以在 https://textmate-grammars-themes.netlify.app 中可视化选择
+  - *min版不包含该库,无法选用该引擎*
 - PrismJS: Obsidian默认在阅读模式中使用的渲染引擎。
   - 当选择这个的时候,你也可以选用min版本的本插件,拥有更小的插件体积和更快的加载速度
   - 可以与使用obsidian主题的代码配色,可以与一些其他的obsidian风格化插件配合
@@ -22,10 +23,32 @@ Shiki, PrismJS,CodeMirror
 ### 渲染方式
 
 - textarea: 允许实时编辑,typora般的所见即所得的体验
-  - WARNING: 由于该方式允许编辑文本内容,最好能在仓库定期备份的情况下使用,避免意外
+  - 原理上是将textarea和pre完美重叠在一起,但容易受主题和样式影响导致不完全重叠
 - pre: 不允许实时编辑
+- editable pre: 允许实时编辑,typora般的所见即所得的体验
+  - 原理上是 `code[contenteditable='true']`
+  - 程序上需要手动处理光标位置
 - codemirror: V0.5.0及之前唯一支持的方式,不允许实时编辑
 
+> [!warning]
+> 
+> 如果选用了可实时编辑的方案,最好能在仓库定期备份的情况下使用,避免意外
+
+### 自动保存方式
+
+- onchange
+  - 优点:
+    更好的性能
+    程序实现简单更简单,无需手动管理光标位置
+  - 缺点:
+    延时保存,特殊场景可能不会保存修改: 程序突然崩溃。当光标在代码块中时,直接切换到阅读模式,或关闭当前窗口/标签页
+- oninput:
+  - 优点:
+    实时保存,数据更安全
+  - 缺点:
+    性能略差? 每次修改都要重新创建代码块
+    程序需要手动管理光标位置,手动防抖
+
 ## Shiki扩展语法
 
 详见: https://shiki.style/packages/transformers (可切换至中文)
diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 0fd9b08..1b195c0 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -148,13 +148,7 @@ export class EditableCodeblock {
 		textarea.value = this.codeblockInfo.source;
 
 		// #region textarea - async part - oninput/onchange
-		// strategy1: onchange save,
-		// - Advantage:
-		//   Great performance.
-		//   There is no need to manage the cursor position manually
-		// - Disadvantage:
-		//   Delay save, change will loss if the program crashes suddenly
-		if (true) {
+		if (this.plugin.settings.saveMode == 'onchange') {
 			textarea.oninput = (ev): void => {
 				this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
@@ -165,15 +159,10 @@ export class EditableCodeblock {
 			textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
 				const newValue = (ev.target as HTMLTextAreaElement).value
 				this.codeblockInfo.source = newValue
-				void this.saveContent_debounced(false, true)
+				void this.saveContent_safe(false, true)
 			}
 		}
-		// strategy2: cache and rebuild
-		// - Advantage:
-		//   Save immediately, data is more secure.
-		// - Disadvantage:
-		//   Worse performance?
-		//   The cursor position needs to be handled manually. Debounce manually.
+		// refresh/save strategy2: cache and rebuild
 		else {
 			void Promise.resolve().then(() => {
 				if (global_refresh_cache) {
@@ -196,7 +185,7 @@ export class EditableCodeblock {
 					start: textarea.selectionStart,
 					end: textarea.selectionEnd,
 				}
-				void this.saveContent_debounced(false, true)
+				void this.saveContent_safe(false, true)
 			}
 		}
 		// #endregion
@@ -288,7 +277,7 @@ export class EditableCodeblock {
 			if (!match) throw new Error('This is not a regular expression matching that may fail')
 			this.codeblockInfo.language_type = match[1]
 			this.codeblockInfo.language_meta = match[2]
-			void this.saveContent_debounced(true, false)
+			void this.saveContent_safe(true, false)
 		}
 		editInput.addEventListener('keydown', (ev: KeyboardEvent) => {
 			if (ev.key == 'ArrowUp') {
@@ -346,7 +335,10 @@ export class EditableCodeblock {
 		code.textContent = this.codeblockInfo.source // prism use textContent and shiki use innerHTML, Their escapes from `` are different
 		prism.highlightElement(code)
 		
-		// code - async part
+		// #region code - async part - oninput/onchange
+		if (this.plugin.settings.saveMode == 'oninput') {
+			console.warn('renderEditablePre no support oninput temp, force use onchange')
+		}
 		code.oninput = (ev): void => {
 			this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
@@ -363,8 +355,9 @@ export class EditableCodeblock {
 		code.addEventListener('blur', (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
 			const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
 			this.codeblockInfo.source = newValue // prism use textContent and shiki use innerHTML, Their escapes from `` are different
-			void this.saveContent_debounced(false, true)
+			void this.saveContent_safe(false, true)
 		})
+		// #endregion
 	}
 
 	renderEditablePre_saveCursorPosition(container: Node): null|{start: number, end: number} {
@@ -488,9 +481,9 @@ export class EditableCodeblock {
 
 	async saveContent_safe(isUpdateLanguage: boolean = true, isUpdateSource: boolean = true): Promise {
 		try {
-			this.saveContent(isUpdateLanguage, isUpdateLanguage)
-		} catch (e) {
-			this.saveContent_debounced(isUpdateLanguage, isUpdateLanguage)
+			void this.saveContent(isUpdateLanguage, isUpdateSource)
+		} catch {
+			void this.saveContent_debounced(isUpdateLanguage, isUpdateSource)
 		}
 	}
 
diff --git a/src/settings/Settings.ts b/src/settings/Settings.ts
index b0ec655..3d691cc 100644
--- a/src/settings/Settings.ts
+++ b/src/settings/Settings.ts
@@ -5,6 +5,7 @@ export interface Settings {
 	theme: string;
 	renderMode: 'textarea'|'pre'|'editablePre'|'codemirror';
 	renderEngine: 'shiki'|'prismjs';
+	saveMode: 'onchange'|'oninput',
 	preferThemeColors: boolean;
 	inlineHighlighting: boolean;
 }
@@ -16,6 +17,7 @@ export const DEFAULT_SETTINGS: Settings = {
 	theme: 'obsidian-theme',
 	renderMode: 'textarea',
 	renderEngine: 'shiki',
+	saveMode: 'onchange',
 	preferThemeColors: true,
 	inlineHighlighting: true,
 };
diff --git a/src/settings/SettingsTab.ts b/src/settings/SettingsTab.ts
index 8a8633c..ad48f0f 100644
--- a/src/settings/SettingsTab.ts
+++ b/src/settings/SettingsTab.ts
@@ -83,6 +83,20 @@ export class ShikiSettingsTab extends PluginSettingTab {
 				});
 			});
 
+		new Setting(this.containerEl)
+			.setName('Auto Save Mode')
+			.setDesc('Select the auto save mode for the code blocks.')
+			.addDropdown(dropdown => {
+				dropdown.addOptions({
+					'onchange': 'when change',
+					'oninput': 'when input',
+				});
+				dropdown.setValue(this.plugin.settings.saveMode).onChange(async value => {
+					this.plugin.settings.saveMode = value as 'onchange'|'oninput';
+					await this.plugin.saveSettings();
+				});
+			});
+
 		const customThemeFolderSetting = new Setting(this.containerEl)
 			.setName('Custom themes folder location')
 			.setDesc('Folder relative to your Vault where custom JSON theme files are located.')

From f5bd34996d3b9962b934687ef329a796be9ff467 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sun, 25 May 2025 14:48:41 +0800
Subject: [PATCH 46/66] fix: can't catch transaction fail error

---
 src/EditableCodeblock.ts | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 1b195c0..e3e53ed 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -480,11 +480,14 @@ export class EditableCodeblock {
 	}
 
 	async saveContent_safe(isUpdateLanguage: boolean = true, isUpdateSource: boolean = true): Promise {
-		try {
-			void this.saveContent(isUpdateLanguage, isUpdateSource)
-		} catch {
-			void this.saveContent_debounced(isUpdateLanguage, isUpdateSource)
-		}
+		// [!code warn:3] The exception caused by the transaction cannot be caught.
+		// If it fails here, there will be an error print
+		// so, use double save. Ensure both speed and safety at the same time.
+		// try {
+		void this.saveContent(isUpdateLanguage, isUpdateSource)
+		// } catch {
+		void this.saveContent_debounced(isUpdateLanguage, isUpdateSource)
+		// }
 	}
 
 	/**

From 4db8af98b9e3dade801ad280141c61e5a8afaaf5 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Thu, 29 May 2025 22:14:57 +0800
Subject: [PATCH 47/66] fix: readmode input should readonly

---
 src/EditableCodeblock.ts | 35 ++++++++++++++++++++++++++++-------
 src/main.min.ts          |  3 ++-
 src/main.ts              |  3 ++-
 3 files changed, 32 insertions(+), 9 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index e3e53ed..c0dd979 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -52,12 +52,19 @@ export class EditableCodeblock {
 	editor: Editor|undefined; // Cache to avoid focus changes. And the focus point may not be correct when creating the code block. It can be updated again when oninput
 	codeblockInfo: CodeblockInfo;
 
+	// redundancy
+	isReadingMode: boolean;
+	isMarkdownRendered: boolean;
+
 	constructor(plugin: { app: App; settings: Settings }, language_old:string, source_old:string, el:HTMLElement, ctx:MarkdownPostProcessorContext) {
 		this.plugin = plugin
 		this.el = el
 		this.ctx = ctx
 		this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
+		this.isReadingMode = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view');
+		this.isMarkdownRendered = !ctx.el.hasClass('.cm-preview-code-block') && ctx.el.hasClass('markdown-rednered')
+
 		this.codeblockInfo = EditableCodeblock.createCodeBlockInfo(language_old, source_old, el, ctx)
 		this.codeblockInfo.source = this.codeblockInfo.source_old
 	}
@@ -147,6 +154,20 @@ export class EditableCodeblock {
 		});
 		textarea.value = this.codeblockInfo.source;
 
+		// language-edit
+		const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit');
+		editEl.setAttribute('align', 'right');
+		const editInput = document.createElement('input'); editEl.appendChild(editInput);
+		editInput.value = this.codeblockInfo.language_type + this.codeblockInfo.language_meta
+
+		// readmode and markdown reRender not shouldn't change
+		if (this.isReadingMode || this.isMarkdownRendered) {
+			textarea.setAttribute('readonly', '')
+			textarea.setAttribute('display', '')
+			editInput.setAttribute('readonly', '')
+			return
+		}
+
 		// #region textarea - async part - oninput/onchange
 		if (this.plugin.settings.saveMode == 'onchange') {
 			textarea.oninput = (ev): void => {
@@ -254,13 +275,7 @@ export class EditableCodeblock {
 		})
 		// #endregion
 
-		// #region language-edit
-		// language-edit
-		const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit');
-		editEl.setAttribute('align', 'right'); editEl.setAttribute('contenteditable', '');
-		const editInput = document.createElement('input'); editEl.appendChild(editInput);
-		editInput.value = this.codeblockInfo.language_type + this.codeblockInfo.language_meta
-		// language-edit - async part
+		// #region language-edit - async part
 		editInput.oninput = (ev): void => {
 			this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
@@ -334,6 +349,12 @@ export class EditableCodeblock {
 		this.codeblockInfo.source = this.codeblockInfo.source_old
 		code.textContent = this.codeblockInfo.source // prism use textContent and shiki use innerHTML, Their escapes from `` are different
 		prism.highlightElement(code)
+
+		// readmode and markdown reRender not shouldn't change
+		if (this.isReadingMode || this.isMarkdownRendered) {
+			code.setAttribute('readonly', '')
+			return
+		}
 		
 		// #region code - async part - oninput/onchange
 		if (this.plugin.settings.saveMode == 'oninput') {
diff --git a/src/main.min.ts b/src/main.min.ts
index 28bed54..b17e8a5 100644
--- a/src/main.min.ts
+++ b/src/main.min.ts
@@ -9,7 +9,8 @@ import { EditableCodeblock } from 'src/EditableCodeblock'
 
 declare module 'obsidian' {
 	interface MarkdownPostProcessorContext {
-		containerEl: HTMLElement
+		containerEl: HTMLElement,
+		el: HTMLElement
 	}
 	interface Vault {
 		getConfig(arg: 'useTab'): boolean
diff --git a/src/main.ts b/src/main.ts
index 9e4bab0..2454967 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -9,7 +9,8 @@ import { EditableCodeblock } from 'src/EditableCodeblock'
 
 declare module 'obsidian' {
 	interface MarkdownPostProcessorContext {
-		containerEl: HTMLElement
+		containerEl: HTMLElement,
+		el: HTMLElement
 	}
 	interface Vault {
 		getConfig(arg: 'useTab'): boolean

From ea4a79d1dcaa5480cc0939dc67ae3e1042fcc73b Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Fri, 30 May 2025 23:58:16 +0800
Subject: [PATCH 48/66] fix: rerender will affect chinese input method

---
 docs/README.md           |  1 +
 docs/README.zh.md        |  3 ++-
 src/EditableCodeblock.ts | 32 ++++++++++++++++++++++++++++++++
 3 files changed, 35 insertions(+), 1 deletion(-)

diff --git a/docs/README.md b/docs/README.md
index fe2de84..4e80a10 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -48,6 +48,7 @@ Shiki, PrismJS, CodeMirror
   - Disadvantage:
     Worse performance? The code block needs to be recreated every time it is modified
     The cursor position needs to be handled manually. Debounce manually.
+    It is necessary to pay attention to the input method issue. The `oninput` will also be triggered during the input candidate stage
 
 ## Shiki Extend Sytax
 
diff --git a/docs/README.zh.md b/docs/README.zh.md
index d7f4ce3..049c77f 100644
--- a/docs/README.zh.md
+++ b/docs/README.zh.md
@@ -47,7 +47,8 @@ Shiki, PrismJS,CodeMirror
     实时保存,数据更安全
   - 缺点:
     性能略差? 每次修改都要重新创建代码块
-    程序需要手动管理光标位置,手动防抖
+    程序需要手动管理光标位置,手动防抖。
+    需要注意输入法问题,输入候选阶段也会触发 `oninput`
 
 ## Shiki扩展语法
 
diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index c0dd979..d977b48 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -168,9 +168,23 @@ export class EditableCodeblock {
 			return
 		}
 
+		// #region textarea - async part - composition start/end
+		let isComposing = false; // is in the input method combination stage, can fix chinese input method invalid
+		textarea.addEventListener('compositionstart', () => {
+			isComposing = true
+		});
+
+		textarea.addEventListener('compositionend', () => {
+			isComposing = false
+			// updateCursorPosition(); // (option)
+		});
+		// #endregion
+
 		// #region textarea - async part - oninput/onchange
 		if (this.plugin.settings.saveMode == 'onchange') {
 			textarea.oninput = (ev): void => {
+				if (isComposing) return
+
 				this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
 				const newValue = (ev.target as HTMLTextAreaElement).value
@@ -196,6 +210,8 @@ export class EditableCodeblock {
 				}
 			})
 			textarea.oninput = (ev): void => {
+				if (isComposing) return
+
 				this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
 				const newValue = (ev.target as HTMLTextAreaElement).value
@@ -277,6 +293,8 @@ export class EditableCodeblock {
 
 		// #region language-edit - async part
 		editInput.oninput = (ev): void => {
+			if (isComposing) return
+
 			this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
 			const newValue = (ev.target as HTMLInputElement).value
@@ -355,12 +373,26 @@ export class EditableCodeblock {
 			code.setAttribute('readonly', '')
 			return
 		}
+
+		// #region code - async part - composition start/end
+		let isComposing = false; // is in the input method combination stage, can fix chinese input method invalid
+		code.addEventListener('compositionstart', () => {
+			isComposing = true
+		});
+
+		code.addEventListener('compositionend', () => {
+			isComposing = false
+			// updateCursorPosition(); // (option)
+		});
+		// #endregion
 		
 		// #region code - async part - oninput/onchange
 		if (this.plugin.settings.saveMode == 'oninput') {
 			console.warn('renderEditablePre no support oninput temp, force use onchange')
 		}
 		code.oninput = (ev): void => {
+			if (isComposing) return
+
 			this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
 			const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)

From 04bb3145e94d65884274643289ac15b33e6717a8 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 31 May 2025 13:19:39 +0800
Subject: [PATCH 49/66] refactor: editablePre support shiki, oninput mode1

---
 src/EditableCodeblock.ts | 151 ++++++++++++++++++++++++++-------------
 1 file changed, 102 insertions(+), 49 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index d977b48..e1c293f 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -142,7 +142,7 @@ export class EditableCodeblock {
 		// span
 		const span = document.createElement('span'); div.appendChild(span);
 		this.codeblockInfo.source = this.codeblockInfo.source_old
-		void this.renderPre(span).then().catch()
+		void this.renderPre(span)
 
 		// textarea
 		const textarea = document.createElement('textarea'); div.appendChild(textarea);
@@ -181,6 +181,7 @@ export class EditableCodeblock {
 		// #endregion
 
 		// #region textarea - async part - oninput/onchange
+		// refresh/save strategy1: input no save
 		if (this.plugin.settings.saveMode == 'onchange') {
 			textarea.oninput = (ev): void => {
 				if (isComposing) return
@@ -200,14 +201,13 @@ export class EditableCodeblock {
 		// refresh/save strategy2: cache and rebuild
 		else {
 			void Promise.resolve().then(() => {
-				if (global_refresh_cache) {
-					// this.el.appendChild(global_refresh_cache.el)
-					// const textarea: HTMLTextAreaElement|null = global_refresh_cache.el.querySelector('textarea')
-					textarea.setSelectionRange(global_refresh_cache.start, global_refresh_cache.end)
-					textarea.focus()
-					global_refresh_cache = null
-					// return
-				}
+				if (!global_refresh_cache) return
+				// this.el.appendChild(global_refresh_cache.el)
+				// const textarea: HTMLTextAreaElement|null = global_refresh_cache.el.querySelector('textarea')
+				textarea.setSelectionRange(global_refresh_cache.start, global_refresh_cache.end)
+				textarea.focus()
+				global_refresh_cache = null
+				// return
 			})
 			textarea.oninput = (ev): void => {
 				if (isComposing) return
@@ -349,24 +349,16 @@ export class EditableCodeblock {
 		//   - pre
 		//     - code.language-
 
-		const prism = await loadPrism() as typeof Prism;
-		if (!prism) {
-			new Notice('warning: withou Prism')
-			throw new Error('warning: withou Prism')
-		}
-
 		// div
 		const div = document.createElement('div'); this.el.appendChild(div); div.classList.add('obsidian-shiki-plugin', 'editable-pre')
-
-		// pre
-		const pre = document.createElement('pre'); div.appendChild(pre);
-		
-		// code
-		const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-' + this.codeblockInfo.language_type)
-		code.setAttribute('contenteditable', 'true'); code.setAttribute('spellcheck', 'false');
 		this.codeblockInfo.source = this.codeblockInfo.source_old
-		code.textContent = this.codeblockInfo.source // prism use textContent and shiki use innerHTML, Their escapes from `` are different
-		prism.highlightElement(code)
+
+		// pre, code
+		await this.renderPre(div)
+		let pre: HTMLPreElement|null = div.querySelector(':scope>pre')
+		let code: HTMLPreElement|null = div.querySelector(':scope>pre>code')
+		if (!pre || !code) { console.error('render failed. can\'t find pre/code 1'); return }
+		code.setAttribute('contenteditable', 'true'); code.setAttribute('spellcheck', 'false')
 
 		// readmode and markdown reRender not shouldn't change
 		if (this.isReadingMode || this.isMarkdownRendered) {
@@ -387,29 +379,72 @@ export class EditableCodeblock {
 		// #endregion
 		
 		// #region code - async part - oninput/onchange
-		if (this.plugin.settings.saveMode == 'oninput') {
-			console.warn('renderEditablePre no support oninput temp, force use onchange')
-		}
-		code.oninput = (ev): void => {
-			if (isComposing) return
+		// refresh/save strategy1: input no save
+		if (this.plugin.settings.saveMode == 'onchange') {
+			void Promise.resolve().then(() => {
+				if (!global_refresh_cache) return
+				if (!pre || !code) { console.error('render failed. can\'t find pre/code 11'); global_refresh_cache = null; return }
+				this.renderEditablePre_restoreCursorPosition(pre, global_refresh_cache.start, global_refresh_cache.end)
+				global_refresh_cache = null
+			})
+			code.oninput = (ev): void => {
+				if (isComposing) return
+				if (!pre || !code) { console.error('render failed. can\'t find pre/code 12'); return }
 
-			this.editor = this.plugin.app.workspace.activeEditor?.editor;
+				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+
+				const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
+				this.codeblockInfo.source = newValue
+				
+				void Promise.resolve().then(async () => { // like vue nextTick, ensure that the cursor is behind
+					pre = div.querySelector(':scope>pre')
+					code = div.querySelector(':scope>pre>code')
+					if (!pre || !code) { console.error('render failed. can\'t find pre/code 13'); global_refresh_cache = null; return }
+
+					// save pos
+					global_refresh_cache = this.renderEditablePre_saveCursorPosition(pre)
+
+					// pre, code
+					await this.renderPre(div, code)
 
-			const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
-			this.codeblockInfo.source = newValue
-			void Promise.resolve().then(() => { // like vue nextTick, ensure that the cursor is behind
-				const savedPos = this.renderEditablePre_saveCursorPosition(pre)
-				code.textContent = newValue
-				prism.highlightElement(code) // `prism.highlightElement()` will reset cursor position
-				if (savedPos) { this.renderEditablePre_restoreCursorPosition(pre, savedPos.start, savedPos.end) }
+					// restore pos
+					code.setAttribute('contenteditable', 'true'); code.setAttribute('spellcheck', 'false')
+
+					if (!global_refresh_cache) return
+					this.renderEditablePre_restoreCursorPosition(pre, global_refresh_cache.start, global_refresh_cache.end)
+					global_refresh_cache = null
+				})
+			}
+			//   pre/code without onchange, use blur event
+			code.addEventListener('blur', (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
+				const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
+				this.codeblockInfo.source = newValue // prism use textContent and shiki use innerHTML, Their escapes from `` are different
+				void this.saveContent_safe(false, true)
 			})
 		}
-		//   pre/code without onchange, use blur event
-		code.addEventListener('blur', (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
-			const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
-			this.codeblockInfo.source = newValue // prism use textContent and shiki use innerHTML, Their escapes from `` are different
-			void this.saveContent_safe(false, true)
-		})
+		// refresh/save strategy2: cache and rebuild
+		else {
+			void Promise.resolve().then(() => {
+				if (!global_refresh_cache) return
+				if (!pre || !code) { console.error('render failed. can\'t find pre/code 21'); global_refresh_cache = null; return }
+				this.renderEditablePre_restoreCursorPosition(pre, global_refresh_cache.start, global_refresh_cache.end)
+				global_refresh_cache = null
+			})
+			code.oninput = (ev): void => {
+				if (isComposing) return
+				if (!pre || !code) { console.error('render failed. can\'t find pre/code 22'); return }
+
+				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+
+				const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
+				this.codeblockInfo.source = newValue
+				void this.renderPre(div)
+
+
+				global_refresh_cache = this.renderEditablePre_saveCursorPosition(pre)
+				void this.saveContent_safe(false, true)
+			}
+		}
 		// #endregion
 	}
 
@@ -478,8 +513,12 @@ export class EditableCodeblock {
 	 * Render code to targetEl
 	 * 
 	 * @param targetEl in which element should the result be rendered
+	 * - targetEl (usually a div)
+	 *   - pre
+	 *     - code
+	 * @param code (option) code element, can reduce the refresh rate, avoid code blur event
 	 */
-	async renderPre(targetEl:HTMLElement): Promise {
+	async renderPre(targetEl:HTMLElement, code?:HTMLElement): Promise {
 		// source correct.
 		// When the last line of the source is blank (with no Spaces either),
 		// prismjs and shiki will both ignore the line,
@@ -499,7 +538,7 @@ export class EditableCodeblock {
 				console.warn(`no support theme '${this.plugin.settings.theme}' temp in this render mode`)
 			}
 
-			const pre:string = await codeToHtml(source, {
+			const preStr:string = await codeToHtml(source, {
 				lang: this.codeblockInfo.language_old,
 				theme: theme,
 				meta: { __raw: this.codeblockInfo.language_meta },
@@ -515,7 +554,17 @@ export class EditableCodeblock {
 					transformerMetaWordHighlight(),
 				],
 			})
-			targetEl.innerHTML = pre // prism use textContent and shiki use innerHTML, Their escapes from `` are different
+
+			if (!code) {
+				targetEl.innerHTML = preStr // prism use textContent and shiki use innerHTML, Their escapes from `` are different
+			}
+			else {
+				const parser = new DOMParser();
+  				const doc = parser.parseFromString(preStr, 'text/html');
+				const codeElement = doc.querySelector(':scope>code')
+				if (!codeElement) { console.error('shiki return preStr without code tag', doc); return }
+				code.innerHTML = codeElement.innerHTML
+			}
 		}
 		// pre html string - prism, insert `
...
`
 		else {
@@ -524,9 +573,13 @@ export class EditableCodeblock {
 				new Notice('warning: withou Prism')
 				throw new Error('warning: withou Prism')
 			}
-			targetEl.innerHTML = ''
-			const pre = document.createElement('pre'); targetEl.appendChild(pre);
-			const code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+this.codeblockInfo.language_type);
+
+			if (!code) {
+				targetEl.innerHTML = ''
+				const pre = document.createElement('pre'); targetEl.appendChild(pre);
+				code = document.createElement('code'); pre.appendChild(code); code.classList.add('language-'+this.codeblockInfo.language_type);
+			}
+
 			code.textContent = source; // prism use textContent and shiki use innerHTML, Their escapes from `` are different
 			prism.highlightElement(code)
 		}

From 2b98541ba7659ecc95cc400054d9283576c459d1 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 31 May 2025 13:28:58 +0800
Subject: [PATCH 50/66] refactor: editablePre support shiki, oninput mode2

---
 src/EditableCodeblock.ts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index e1c293f..44ce1b0 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -561,7 +561,7 @@ export class EditableCodeblock {
 			else {
 				const parser = new DOMParser();
   				const doc = parser.parseFromString(preStr, 'text/html');
-				const codeElement = doc.querySelector(':scope>code')
+				const codeElement = doc.querySelector('pre>code')
 				if (!codeElement) { console.error('shiki return preStr without code tag', doc); return }
 				code.innerHTML = codeElement.innerHTML
 			}

From 898e1a83e8526363dd0c36df2a410a0c6ed0c647 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 31 May 2025 13:36:18 +0800
Subject: [PATCH 51/66] docs: add link: Visual select theme

---
 src/EditableCodeblock.ts    | 2 +-
 src/settings/SettingsTab.ts | 7 +++++++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 44ce1b0..da8a66e 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -535,7 +535,7 @@ export class EditableCodeblock {
 			}
 			if (theme === '') {
 				theme = 'andromeeda'
-				console.warn(`no support theme '${this.plugin.settings.theme}' temp in this render mode`)
+				// console.warn(`no support theme '${this.plugin.settings.theme}' temp in this render mode`) // [!code error] TODO fix
 			}
 
 			const preStr:string = await codeToHtml(source, {
diff --git a/src/settings/SettingsTab.ts b/src/settings/SettingsTab.ts
index ad48f0f..edce437 100644
--- a/src/settings/SettingsTab.ts
+++ b/src/settings/SettingsTab.ts
@@ -27,6 +27,13 @@ export class ShikiSettingsTab extends PluginSettingTab {
 			text: 'Settings Panel Document',
 			href: 'https://github.com/mProjectsCode/obsidian-shiki-plugin/blob/master/docs/README.md'
 		});
+		this.containerEl.createEl('span', {
+			text: ' | '
+		})
+		this.containerEl.createEl('a', {
+			text: 'Visual select theme',
+			href: 'https://textmate-grammars-themes.netlify.app'
+		});
 
 		new Setting(this.containerEl)
 			.setName('Reload Highlighter')

From 913a11f3311c2d532061fb453c537537cd05fa95 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 31 May 2025 19:35:37 +0800
Subject: [PATCH 52/66] docs: chore comment

---
 src/EditableCodeblock.ts | 49 ++++++++++++++++++++++++++--------------
 src/main.ts              |  3 +++
 2 files changed, 35 insertions(+), 17 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index da8a66e..93f6120 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -129,6 +129,9 @@ export class EditableCodeblock {
 		return codeblockInfo
 	}
 
+	/**
+	 * param this.plugin.settings.saveMode onchange/oninput
+	 */
 	renderEditableCodeblock(): void {
 		// dom
 		// - div.obsidian-shiki-plugin
@@ -292,26 +295,34 @@ export class EditableCodeblock {
 		// #endregion
 
 		// #region language-edit - async part
-		editInput.oninput = (ev): void => {
-			if (isComposing) return
+		if (this.plugin.settings.saveMode != 'oninput') {
+			// no support
+		}
+		{
+			editInput.oninput = (ev): void => {
+				if (isComposing) return
 
-			this.editor = this.plugin.app.workspace.activeEditor?.editor;
+				this.editor = this.plugin.app.workspace.activeEditor?.editor;
 
-			const newValue = (ev.target as HTMLInputElement).value
-			const match = /^(\S*)(\s?.*)$/.exec(newValue)
-			if (!match) throw new Error('This is not a regular expression matching that may fail')
-			this.codeblockInfo.language_type = match[1]
-			this.codeblockInfo.language_meta = match[2]
-			void this.renderPre(span)
-		}
-		editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
-			const newValue = (ev.target as HTMLInputElement).value
-			const match = /^(\S*)(\s?.*)$/.exec(newValue)
-			if (!match) throw new Error('This is not a regular expression matching that may fail')
-			this.codeblockInfo.language_type = match[1]
-			this.codeblockInfo.language_meta = match[2]
-			void this.saveContent_safe(true, false)
+				const newValue = (ev.target as HTMLInputElement).value
+				const match = /^(\S*)(\s?.*)$/.exec(newValue)
+				if (!match) throw new Error('This is not a regular expression matching that may fail')
+				this.codeblockInfo.language_type = match[1]
+				this.codeblockInfo.language_meta = match[2]
+				void this.renderPre(span)
+			}
+			editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
+				const newValue = (ev.target as HTMLInputElement).value
+				const match = /^(\S*)(\s?.*)$/.exec(newValue)
+				if (!match) throw new Error('This is not a regular expression matching that may fail')
+				this.codeblockInfo.language_type = match[1]
+				this.codeblockInfo.language_meta = match[2]
+				void this.saveContent_safe(true, false)
+			}
 		}
+		// #endregion
+
+		// #region language-edit - async part - keydwon
 		editInput.addEventListener('keydown', (ev: KeyboardEvent) => {
 			if (ev.key == 'ArrowUp') {
 				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange
@@ -343,6 +354,9 @@ export class EditableCodeblock {
 		// #endregion
 	}
 
+	/**
+	 * param this.plugin.settings.saveMode onchange/oninput
+	 */
 	async renderEditablePre(): Promise {
 		// dom
 		// - div.obsidian-shiki-plugin.editable-pre
@@ -512,6 +526,7 @@ export class EditableCodeblock {
 	/**
 	 * Render code to targetEl
 	 * 
+	 * param this.plugin.settings.renderEngine shiki/prism
 	 * @param targetEl in which element should the result be rendered
 	 * - targetEl (usually a div)
 	 *   - pre
diff --git a/src/main.ts b/src/main.ts
index 2454967..7ade47e 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -90,6 +90,9 @@ export default class ShikiPlugin extends Plugin {
 		prism.plugins.filterHighlightAll.reject.addSelector('div.expressive-code pre code');
 	}
 
+	/**
+	 * param this.settings.renderMode 'textarea'/'pre'/'editablePre'/'codemirror'
+	 */
 	registerCodeBlockProcessors(): void {
 		const languages = this.highlighter.obsidianSafeLanguageNames();
 

From 64bf58cfec272dcdf24b70639adaa5b4925b7a4d Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 31 May 2025 22:00:27 +0800
Subject: [PATCH 53/66] refactor: reuse keydown event1

---
 src/EditableCodeblock.ts | 254 +++++++++++++++++++++++++--------------
 1 file changed, 163 insertions(+), 91 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 93f6120..62f8830 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -230,70 +230,6 @@ export class EditableCodeblock {
 		}
 		// #endregion
 
-		// #region textarea - async part - keydwon
-		textarea.addEventListener('keydown', (ev: KeyboardEvent) => { // `tab` key、`arrow` key
-			if (ev.key == 'Tab') {
-				ev.preventDefault()
-				const value = textarea.value
-				const selectionStart: number = textarea.selectionStart
-				const selectionEnd: number = textarea.selectionEnd
-				const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1
-				const lineEnd: number = value.indexOf('\n', selectionStart)
-				const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd)
-				// TODO enhamce: determine whether to insert the tab directly or the entire line of tabs based on the cursor
-
-				// get indent, auto indent
-				const configUseTab = this.plugin.app.vault.getConfig('useTab')
-				const configTabSize = this.plugin.app.vault.getConfig('tabSize')
-				const indent_space = ' '.repeat(configTabSize)
-				let indent = configUseTab ? '\t' : indent_space
-				if (lineCurrent.startsWith('\t')) indent = '\t'
-				else if (lineCurrent.startsWith(' ')) indent = indent_space
-				
-				// change
-				// new value: cursorBefore + tab + cusrorAfter
-				textarea.value = textarea.value.substring(0, selectionStart) + indent + textarea.value.substring(selectionEnd)
-				// new cursor pos
-				textarea.selectionStart = textarea.selectionEnd = selectionStart + indent.length;
-				textarea.dispatchEvent(new InputEvent('input', {
-					inputType: 'insertText',
-					data: indent,
-					bubbles: true,
-					cancelable: true
-				}))
-			}
-			else if (ev.key == 'ArrowDown' || ev.key == 'ArrowRight') {
-				const selectionEnd: number = textarea.selectionEnd
-				if (selectionEnd != textarea.value.length) return
-
-				editInput.setSelectionRange(0, 0)
-				editInput.focus()
-			}
-			else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') {
-				if (!this.editor) return
-
-				const selectionStart: number = textarea.selectionStart
-				if (selectionStart != 0) return
-
-				const sectionInfo = this.ctx.getSectionInfo(this.el);
-				if (!sectionInfo) return
-
-				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
-				let toLine = sectionInfo.lineStart - 1
-				if (toLine < 0) { // when codeblock on the frist line
-					// strategy1: only move to start
-					// toLine = 0
-
-					// strategy2: insert a blank line
-					toLine = 0
-					this.editor.replaceRange("\n", { line: 0, ch: 0 })
-				}
-				this.editor.setCursor(toLine, 0)
-				this.editor.focus()
-			}
-		})
-		// #endregion
-
 		// #region language-edit - async part
 		if (this.plugin.settings.saveMode != 'oninput') {
 			// no support
@@ -322,36 +258,24 @@ export class EditableCodeblock {
 		}
 		// #endregion
 
-		// #region language-edit - async part - keydwon
-		editInput.addEventListener('keydown', (ev: KeyboardEvent) => {
-			if (ev.key == 'ArrowUp') {
-				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange
-				const position = textarea.value.length
-				textarea.setSelectionRange(position, position)
-				textarea.focus()
-			}
-			else if (ev.key == 'ArrowDown') {
-				if (!this.editor) return
+		// #region textarea - async part - keydown
+		this.enableTabEmitIndent(textarea, undefined, undefined, (ev)=>{
+			const selectionEnd: number = textarea.selectionEnd
+			if (selectionEnd != textarea.value.length) return
 
-				const sectionInfo = this.ctx.getSectionInfo(this.el);
-				if (!sectionInfo) return
-
-				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
-				const toLine = sectionInfo.lineEnd + 1
-				if (toLine > this.editor.lineCount() - 1) { // when codeblock on the last line
-					// strategy1: only move to end
-					// toLine--
-
-					// strategy2: insert a blank line
-					const lastLineIndex = this.editor.lineCount() - 1
-					const lastLineContent = this.editor.getLine(lastLineIndex)
-					this.editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length })
-				}
-				this.editor.setCursor(toLine, 0)
-				this.editor.focus()
-			}
+			editInput.setSelectionRange(0, 0)
+			editInput.focus()
 		})
 		// #endregion
+
+		// #region language-edit - async part - keydown
+		this.enableTabEmitIndent(editInput, undefined, (ev)=>{
+			ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange
+			const position = textarea.value.length
+			textarea.setSelectionRange(position, position)
+			textarea.focus()
+		}, undefined)
+		// #endregion
 	}
 
 	/**
@@ -460,6 +384,10 @@ export class EditableCodeblock {
 			}
 		}
 		// #endregion
+	
+		// #region code - async part - keydown
+		this.enableTabEmitIndent(code)
+		// #endregion
 	}
 
 	renderEditablePre_saveCursorPosition(container: Node): null|{start: number, end: number} {
@@ -600,6 +528,150 @@ export class EditableCodeblock {
 		}
 	}
 
+	// el: HTMLTextAreaElement|HTMLInputElement|HTMLPreElement
+	enableTabEmitIndent(el: HTMLElement, cb_tab?: (ev: KeyboardEvent)=>void, cb_up?: (ev: KeyboardEvent)=>void, cb_down?: (ev: KeyboardEvent)=>void) {
+		if (!(el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement || el.isContentEditable)) return
+
+		// #region textarea - async part - keydown
+		el.addEventListener('keydown', (ev: KeyboardEvent) => { // `tab` key、`arrow` key	
+			if (ev.key == 'Tab') {
+				if (cb_tab) return cb_tab(ev)
+				ev.preventDefault()
+
+				// get indent
+				const configUseTab = this.plugin.app.vault.getConfig('useTab')
+				const configTabSize = this.plugin.app.vault.getConfig('tabSize')
+				const indent_space = ' '.repeat(configTabSize)
+				let indent = configUseTab ? '\t' : indent_space
+				
+				if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
+					const value = el.value
+					const selectionStart: number = el.selectionStart || 0
+					const selectionEnd: number = el.selectionEnd || 0
+
+					// auto indent (otpion)
+					{
+						const lineStart: number = value.lastIndexOf('\n', selectionStart - 1) + 1
+						const lineEnd: number = value.indexOf('\n', selectionStart)
+						const lineCurrent: string = value.substring(lineStart, lineEnd === -1 ? value.length : lineEnd)
+						// TODO enhamce: determine whether to insert the tab directly or the entire line of tabs based on the cursor
+						if (lineCurrent.startsWith('\t')) indent = '\t'
+						else if (lineCurrent.startsWith(' ')) indent = indent_space
+					}
+					
+					// change
+					// new value: cursorBefore + tab + cusrorAfter
+					el.value = el.value.substring(0, selectionStart) + indent + el.value.substring(selectionEnd)
+					// new cursor pos
+					el.selectionStart = el.selectionEnd = selectionStart + indent.length;
+					el.dispatchEvent(new InputEvent('input', {
+						inputType: 'insertText',
+						data: indent,
+						bubbles: true,
+						cancelable: true
+					}))
+					return
+				}
+				else { // pre/code
+					const selection = window.getSelection();
+					if (!selection || selection.rangeCount === 0) return;
+					
+					// auto indent (otpion)
+					let range
+					{
+						range = selection.getRangeAt(0)
+						const container = range.startContainer
+						const lineText = container.textContent || ''
+						const lineStart = lineText.lastIndexOf('\n', range.startOffset - 1) + 1
+						const lineCurrent = lineText.slice(lineStart, range.startOffset)
+						if (lineCurrent.startsWith('\t')) indent = '\t'
+						else if (lineCurrent.startsWith(' ')) indent = indent_space
+					}
+					
+					// change
+					// new value
+					const textNode = document.createTextNode(indent)
+					range.deleteContents()
+					range.insertNode(textNode)
+					// new cursor pos
+					const newRange = document.createRange();
+					newRange.setStartAfter(textNode);
+					newRange.collapse(true);
+					selection.removeAllRanges();
+					selection.addRange(newRange);
+					el.dispatchEvent(new InputEvent('input', {
+						inputType: 'insertText',
+						data: indent,
+						bubbles: true,
+						cancelable: true
+					}));
+					return
+				}
+				return
+			}
+			else if (ev.key == 'ArrowDown' || ev.key == 'ArrowRight') {
+				if (cb_down) return cb_down(ev)
+				if (!this.editor) return
+
+				if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
+					const selectionEnd: number|null = el.selectionEnd
+					if (!selectionEnd || selectionEnd != el.value.length) return
+				} else {
+					// TODO
+					return
+				}
+				
+				const sectionInfo = this.ctx.getSectionInfo(this.el);
+				if (!sectionInfo) return
+
+				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
+				const toLine = sectionInfo.lineEnd + 1
+				if (toLine > this.editor.lineCount() - 1) { // when codeblock on the last line
+					// strategy1: only move to end
+					// toLine--
+
+					// strategy2: insert a blank line
+					const lastLineIndex = this.editor.lineCount() - 1
+					const lastLineContent = this.editor.getLine(lastLineIndex)
+					this.editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length })
+				}
+				this.editor.setCursor(toLine, 0)
+				this.editor.focus()
+				return
+			}
+			else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') {
+				if (cb_up) return cb_up(ev)
+				if (!this.editor) return
+
+				if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
+					const selectionStart: number|null = el.selectionStart
+					if (!selectionStart || selectionStart != 0) return
+				} else {
+					// TODO
+					return
+				}
+
+				const sectionInfo = this.ctx.getSectionInfo(this.el);
+				if (!sectionInfo) return
+
+				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
+				let toLine = sectionInfo.lineStart - 1
+				if (toLine < 0) { // when codeblock on the frist line
+					// strategy1: only move to start
+					// toLine = 0
+
+					// strategy2: insert a blank line
+					toLine = 0
+					this.editor.replaceRange("\n", { line: 0, ch: 0 })
+				}
+				this.editor.setCursor(toLine, 0)
+				this.editor.focus()
+				return
+			}
+		})
+		// #endregion
+	}
+
 	async saveContent_safe(isUpdateLanguage: boolean = true, isUpdateSource: boolean = true): Promise {
 		// [!code warn:3] The exception caused by the transaction cannot be caught.
 		// If it fails here, there will be an error print

From 2bd2c59bd3123f0d43253c05a16b112fa26fe533 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 31 May 2025 22:16:22 +0800
Subject: [PATCH 54/66] refactor: reuse keydown event2

and lint
---
 src/EditableCodeblock.ts | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 62f8830..a606cf7 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -263,6 +263,7 @@ export class EditableCodeblock {
 			const selectionEnd: number = textarea.selectionEnd
 			if (selectionEnd != textarea.value.length) return
 
+			ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange
 			editInput.setSelectionRange(0, 0)
 			editInput.focus()
 		})
@@ -270,6 +271,9 @@ export class EditableCodeblock {
 
 		// #region language-edit - async part - keydown
 		this.enableTabEmitIndent(editInput, undefined, (ev)=>{
+			const selectionStart: number|null = editInput.selectionStart
+			if (selectionStart === null || selectionStart != 0) return
+
 			ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange
 			const position = textarea.value.length
 			textarea.setSelectionRange(position, position)
@@ -529,13 +533,13 @@ export class EditableCodeblock {
 	}
 
 	// el: HTMLTextAreaElement|HTMLInputElement|HTMLPreElement
-	enableTabEmitIndent(el: HTMLElement, cb_tab?: (ev: KeyboardEvent)=>void, cb_up?: (ev: KeyboardEvent)=>void, cb_down?: (ev: KeyboardEvent)=>void) {
+	enableTabEmitIndent(el: HTMLElement, cb_tab?: (ev: KeyboardEvent)=>void, cb_up?: (ev: KeyboardEvent)=>void, cb_down?: (ev: KeyboardEvent)=>void): void {
 		if (!(el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement || el.isContentEditable)) return
 
 		// #region textarea - async part - keydown
 		el.addEventListener('keydown', (ev: KeyboardEvent) => { // `tab` key、`arrow` key	
 			if (ev.key == 'Tab') {
-				if (cb_tab) return cb_tab(ev)
+				if (cb_tab) { cb_tab(ev); return }
 				ev.preventDefault()
 
 				// get indent
@@ -546,8 +550,8 @@ export class EditableCodeblock {
 				
 				if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
 					const value = el.value
-					const selectionStart: number = el.selectionStart || 0
-					const selectionEnd: number = el.selectionEnd || 0
+					const selectionStart: number = el.selectionStart ?? 0
+					const selectionEnd: number = el.selectionEnd ?? 0
 
 					// auto indent (otpion)
 					{
@@ -581,7 +585,7 @@ export class EditableCodeblock {
 					{
 						range = selection.getRangeAt(0)
 						const container = range.startContainer
-						const lineText = container.textContent || ''
+						const lineText = container.textContent ?? ''
 						const lineStart = lineText.lastIndexOf('\n', range.startOffset - 1) + 1
 						const lineCurrent = lineText.slice(lineStart, range.startOffset)
 						if (lineCurrent.startsWith('\t')) indent = '\t'
@@ -610,12 +614,12 @@ export class EditableCodeblock {
 				return
 			}
 			else if (ev.key == 'ArrowDown' || ev.key == 'ArrowRight') {
-				if (cb_down) return cb_down(ev)
+				if (cb_down) { cb_down(ev); return }
 				if (!this.editor) return
 
 				if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
 					const selectionEnd: number|null = el.selectionEnd
-					if (!selectionEnd || selectionEnd != el.value.length) return
+					if (selectionEnd === null || selectionEnd != el.value.length) return
 				} else {
 					// TODO
 					return
@@ -640,12 +644,12 @@ export class EditableCodeblock {
 				return
 			}
 			else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') {
-				if (cb_up) return cb_up(ev)
+				if (cb_up) { cb_up(ev); return }
 				if (!this.editor) return
 
 				if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
 					const selectionStart: number|null = el.selectionStart
-					if (!selectionStart || selectionStart != 0) return
+					if (selectionStart === null || selectionStart != 0) return
 				} else {
 					// TODO
 					return

From 04f8b4a3251e0776aa4c909739cd04dfdfcb10fa Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sun, 1 Jun 2025 13:41:27 +0800
Subject: [PATCH 55/66] fix: double save cause error when edit last line

---
 src/EditableCodeblock.ts    | 13 +++++++++----
 src/main.min.ts             |  2 +-
 src/main.ts                 |  2 +-
 src/settings/SettingsTab.ts |  2 +-
 4 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index a606cf7..809cf0d 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -132,7 +132,7 @@ export class EditableCodeblock {
 	/**
 	 * param this.plugin.settings.saveMode onchange/oninput
 	 */
-	renderEditableCodeblock(): void {
+	renderTextareaPre(): void {
 		// dom
 		// - div.obsidian-shiki-plugin
 		//   - span > pre > code
@@ -679,12 +679,17 @@ export class EditableCodeblock {
 	async saveContent_safe(isUpdateLanguage: boolean = true, isUpdateSource: boolean = true): Promise {
 		// [!code warn:3] The exception caused by the transaction cannot be caught.
 		// If it fails here, there will be an error print
-		// so, use double save. Ensure both speed and safety at the same time.
+		// ~~so, use double save. Ensure both speed and safety at the same time.~~
+		// (When adding or deleting at the end, there will be bugs in double save)
 		// try {
-		void this.saveContent(isUpdateLanguage, isUpdateSource)
 		// } catch {
-		void this.saveContent_debounced(isUpdateLanguage, isUpdateSource)
 		// }
+		if (this.plugin.settings.saveMode == 'oninput') {
+			void this.saveContent(isUpdateLanguage, isUpdateSource)
+		}
+		else if (this.plugin.settings.saveMode == 'onchange') {
+			void this.saveContent_debounced(isUpdateLanguage, isUpdateSource)
+		}
 	}
 
 	/**
diff --git a/src/main.min.ts b/src/main.min.ts
index b17e8a5..3ea1159 100644
--- a/src/main.min.ts
+++ b/src/main.min.ts
@@ -119,7 +119,7 @@ export default class ShikiPlugin extends Plugin {
 						// disadvantage: First screen CLS (Page jitter)
 						{
 							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
-							editableCodeblock.renderEditableCodeblock()
+							editableCodeblock.renderTextareaPre()
 						}
 					},
 					1000,
diff --git a/src/main.ts b/src/main.ts
index 7ade47e..34aa033 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -121,7 +121,7 @@ export default class ShikiPlugin extends Plugin {
 						// disadvantage: First screen CLS (Page jitter)
 						if (this.settings.renderMode === 'textarea') {
 							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
-							editableCodeblock.renderEditableCodeblock()
+							editableCodeblock.renderTextareaPre()
 						}
 						else if (this.settings.renderMode === 'pre') {
 							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
diff --git a/src/settings/SettingsTab.ts b/src/settings/SettingsTab.ts
index edce437..f8c0ab8 100644
--- a/src/settings/SettingsTab.ts
+++ b/src/settings/SettingsTab.ts
@@ -79,7 +79,7 @@ export class ShikiSettingsTab extends PluginSettingTab {
 			.setDesc('Select the render mode for the code blocks.')
 			.addDropdown(dropdown => {
 				dropdown.addOptions({
-					'textarea': 'textarea',
+					'textarea': 'textarea pre',
 					'pre': 'pre',
 					'editablePre': 'editable pre (beta)',
 					'codemirror': 'codemirror',

From 28fc7cd7232961789ab12bcc4452ed63dafbe1ce Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Tue, 3 Jun 2025 16:51:19 +0800
Subject: [PATCH 56/66] enhance: cursor up/down move optimize

---
 docs/README.md           |  2 +
 docs/README.zh.md        |  2 +
 src/EditableCodeblock.ts | 84 ++++++++++++++++++++++++++++++++++++----
 3 files changed, 81 insertions(+), 7 deletions(-)

diff --git a/docs/README.md b/docs/README.md
index 4e80a10..a463eb3 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -24,10 +24,12 @@ Shiki, PrismJS, CodeMirror
 
 - textarea: Allows real-time editing and offers a Typora-like WYSIWYG experience
   - In principle, textarea and pre are perfectly overlapped together, but they are prone to incomplete overlap due to the influence of themes and styles
+  - Support editing annotation-type highlighting
 - pre: Real-time editing is not allowed. The rendering effect is more similar to the textarea method
 - editable pre: Allows real-time editing and offers a Typora-like WYSIWYG experience
   - In principle, it is `code[contenteditable='true']`
   - The cursor position needs to be handled manually in the program
+  - *No support editing annotation-type highlighting*
 - codemirror: The only supported method for V0.5.0 and earlier versions, which does not allow real-time editing
 
 > [!warning]
diff --git a/docs/README.zh.md b/docs/README.zh.md
index 049c77f..240d101 100644
--- a/docs/README.zh.md
+++ b/docs/README.zh.md
@@ -24,10 +24,12 @@ Shiki, PrismJS,CodeMirror
 
 - textarea: 允许实时编辑,typora般的所见即所得的体验
   - 原理上是将textarea和pre完美重叠在一起,但容易受主题和样式影响导致不完全重叠
+  - 支持编辑注释型高亮
 - pre: 不允许实时编辑
 - editable pre: 允许实时编辑,typora般的所见即所得的体验
   - 原理上是 `code[contenteditable='true']`
   - 程序上需要手动处理光标位置
+  - *不支持实时编辑注释型高亮*
 - codemirror: V0.5.0及之前唯一支持的方式,不允许实时编辑
 
 > [!warning]
diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 809cf0d..2e2533d 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -261,7 +261,9 @@ export class EditableCodeblock {
 		// #region textarea - async part - keydown
 		this.enableTabEmitIndent(textarea, undefined, undefined, (ev)=>{
 			const selectionEnd: number = textarea.selectionEnd
-			if (selectionEnd != textarea.value.length) return
+			const textBefore = textarea.value.substring(0, selectionEnd)
+			const linesBefore = textBefore.split('\n')
+			if (linesBefore.length !== textarea.value.split('\n').length) return
 
 			ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange
 			editInput.setSelectionRange(0, 0)
@@ -271,9 +273,6 @@ export class EditableCodeblock {
 
 		// #region language-edit - async part - keydown
 		this.enableTabEmitIndent(editInput, undefined, (ev)=>{
-			const selectionStart: number|null = editInput.selectionStart
-			if (selectionStart === null || selectionStart != 0) return
-
 			ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange
 			const position = textarea.value.length
 			textarea.setSelectionRange(position, position)
@@ -613,10 +612,80 @@ export class EditableCodeblock {
 				}
 				return
 			}
-			else if (ev.key == 'ArrowDown' || ev.key == 'ArrowRight') {
+			else if (ev.key == 'ArrowDown') {
 				if (cb_down) { cb_down(ev); return }
 				if (!this.editor) return
 
+				// check is the last line
+				if (el instanceof HTMLInputElement) {
+					// true
+				} else if (el instanceof HTMLTextAreaElement) {
+					const selectionEnd: number = el.selectionEnd
+					const textBefore = el.value.substring(0, selectionEnd)
+					const linesBefore = textBefore.split('\n')
+					if (linesBefore.length !== el.value.split('\n').length) return
+				} else {
+					// TODO
+					return
+				}
+				
+				const sectionInfo = this.ctx.getSectionInfo(this.el);
+				if (!sectionInfo) return
+
+				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
+				const toLine = sectionInfo.lineEnd + 1
+				if (toLine > this.editor.lineCount() - 1) { // when codeblock on the last line
+					// strategy1: only move to end
+					// toLine--
+
+					// strategy2: insert a blank line
+					const lastLineIndex = this.editor.lineCount() - 1
+					const lastLineContent = this.editor.getLine(lastLineIndex)
+					this.editor.replaceRange("\n", { line: lastLineIndex, ch: lastLineContent.length })
+				}
+				this.editor.setCursor(toLine, 0)
+				this.editor.focus()
+				return
+			}
+			else if (ev.key == 'ArrowUp') {
+				if (cb_up) { cb_up(ev); return }
+				if (!this.editor) return
+
+				// check is the first line
+				if (el instanceof HTMLInputElement) {
+					// true
+				} else if (el instanceof HTMLTextAreaElement) {
+					const selectionStart: number = el.selectionStart
+					const textBefore = el.value.substring(0, selectionStart)
+					const linesBefore = textBefore.split('\n')
+					if (linesBefore.length !== 1) return
+				} else {
+					// TODO
+					return
+				}
+
+				const sectionInfo = this.ctx.getSectionInfo(this.el);
+				if (!sectionInfo) return
+
+				ev.preventDefault() // safe: tested: `prevent` can still trigger `onChange`
+				let toLine = sectionInfo.lineStart - 1
+				if (toLine < 0) { // when codeblock on the frist line
+					// strategy1: only move to start
+					// toLine = 0
+
+					// strategy2: insert a blank line
+					toLine = 0
+					this.editor.replaceRange("\n", { line: 0, ch: 0 })
+				}
+				this.editor.setCursor(toLine, 0)
+				this.editor.focus()
+				return
+			}
+			/*else if (ev.key == 'ArrowRight') {
+				if (cb_down) { cb_down(ev); return }
+				if (!this.editor) return
+
+				// check is the last char
 				if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
 					const selectionEnd: number|null = el.selectionEnd
 					if (selectionEnd === null || selectionEnd != el.value.length) return
@@ -643,10 +712,11 @@ export class EditableCodeblock {
 				this.editor.focus()
 				return
 			}
-			else if (ev.key == 'ArrowUp' || ev.key == 'ArrowLeft') {
+			else if (ev.key == 'ArrowLeft') {
 				if (cb_up) { cb_up(ev); return }
 				if (!this.editor) return
 
+				// check is the first char
 				if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
 					const selectionStart: number|null = el.selectionStart
 					if (selectionStart === null || selectionStart != 0) return
@@ -671,7 +741,7 @@ export class EditableCodeblock {
 				this.editor.setCursor(toLine, 0)
 				this.editor.focus()
 				return
-			}
+			}*/
 		})
 		// #endregion
 	}

From b7dd8b42f3539f5e7ef501c6326a271b8220c3d2 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Wed, 4 Jun 2025 16:44:16 +0800
Subject: [PATCH 57/66] docs: update setting docs

---
 docs/README.md    | 32 ++++++++++++++++++++++----------
 docs/README.zh.md | 32 ++++++++++++++++++++++----------
 2 files changed, 44 insertions(+), 20 deletions(-)

diff --git a/docs/README.md b/docs/README.md
index a463eb3..98fafb6 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -22,15 +22,26 @@ Shiki, PrismJS, CodeMirror
 
 ### Rendering method
 
-- textarea: Allows real-time editing and offers a Typora-like WYSIWYG experience
-  - In principle, textarea and pre are perfectly overlapped together, but they are prone to incomplete overlap due to the influence of themes and styles
-  - Support editing annotation-type highlighting
-- pre: Real-time editing is not allowed. The rendering effect is more similar to the textarea method
-- editable pre: Allows real-time editing and offers a Typora-like WYSIWYG experience
-  - In principle, it is `code[contenteditable='true']`
-  - The cursor position needs to be handled manually in the program
-  - *No support editing annotation-type highlighting*
-- codemirror: The only supported method for V0.5.0 and earlier versions, which does not allow real-time editing
+- textarea (default)
+  - Advantage:
+    Allows real-time editing and offers a Typora-like WYSIWYG experience
+    Support editing annotation-type highlighting
+    The new version of Obsidian's md table within block editing uses this approach. (However, the ob table editing does not trigger a re-rendering.)
+  - Disadvantage:
+    In principle, textarea and pre are perfectly overlapped together, but they are prone to incomplete overlap due to the influence of themes and styles
+- pre
+  - Disadvantage:
+    Real-time editing is not allowed. The rendering effect is more similar to the textarea method
+- editable pre
+  - Advantage:
+    Allows real-time editing and offers a Typora-like WYSIWYG experience
+    In principle, it is `code[contenteditable='true']`
+  - Disadvantage:
+    The cursor position needs to be handled manually in the program
+    *No support editing annotation-type highlighting*
+- codemirror
+  - Disadvantage:
+    The only supported method for V0.5.0 and earlier versions, which does not allow real-time editing
 
 > [!warning]
 > 
@@ -44,9 +55,10 @@ Shiki, PrismJS, CodeMirror
     There is no need to manage the cursor position manually
   - Disadvantage:
     Delay save, change will loss if: the program crashes suddenly. when cursor in codeblock, switch to readmode or close window/tab
-- oninput, 
+- oninput
   - Advantage:
     Save immediately, data is more secure.
+    The new version of Obsidian's md table within block editing uses this approach.
   - Disadvantage:
     Worse performance? The code block needs to be recreated every time it is modified
     The cursor position needs to be handled manually. Debounce manually.
diff --git a/docs/README.zh.md b/docs/README.zh.md
index 240d101..76b6a81 100644
--- a/docs/README.zh.md
+++ b/docs/README.zh.md
@@ -22,15 +22,26 @@ Shiki, PrismJS,CodeMirror
 
 ### 渲染方式
 
-- textarea: 允许实时编辑,typora般的所见即所得的体验
-  - 原理上是将textarea和pre完美重叠在一起,但容易受主题和样式影响导致不完全重叠
-  - 支持编辑注释型高亮
-- pre: 不允许实时编辑
-- editable pre: 允许实时编辑,typora般的所见即所得的体验
-  - 原理上是 `code[contenteditable='true']`
-  - 程序上需要手动处理光标位置
-  - *不支持实时编辑注释型高亮*
-- codemirror: V0.5.0及之前唯一支持的方式,不允许实时编辑
+- textarea (默认)
+  - 优点:
+    允许实时编辑,typora般的所见即所得的体验
+    支持编辑注释型高亮
+    同为块内编辑的obsidian新版本md表格,采用的是这种方式 (但ob表格编辑时不触发重渲染)
+  - 缺点:
+    原理上是将textarea和pre完美重叠在一起,但容易受主题和样式影响导致不完全重叠
+- pre
+  - 缺点:
+    不允许实时编辑
+- editable pre
+  - 优点:
+    允许实时编辑,typora般的所见即所得的体验
+    原理上是 `code[contenteditable='true']`
+  - 缺点:
+    程序上需要手动处理光标位置
+    *不支持实时编辑注释型高亮*
+- codemirror
+  - 缺点:
+    V0.5.0及之前唯一支持的方式,不允许实时编辑
 
 > [!warning]
 > 
@@ -44,9 +55,10 @@ Shiki, PrismJS,CodeMirror
     程序实现简单更简单,无需手动管理光标位置
   - 缺点:
     延时保存,特殊场景可能不会保存修改: 程序突然崩溃。当光标在代码块中时,直接切换到阅读模式,或关闭当前窗口/标签页
-- oninput:
+- oninput
   - 优点:
     实时保存,数据更安全
+    同为块内编辑的obsidian新版本md表格,采用的是这种方式
   - 缺点:
     性能略差? 每次修改都要重新创建代码块
     程序需要手动管理光标位置,手动防抖。

From 2f9b2b680f75b774fd760dbb1ad084a77512f950 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Fri, 6 Jun 2025 15:29:32 +0800
Subject: [PATCH 58/66] feat: add renderCallout (beta)

editable callout
---
 bun.lock                 |  84 +++++++++++++++++++++++++
 package.json             |   2 +
 src/EditableCodeblock.ts | 128 +++++++++++++++++++++++++++++++++++++--
 src/main.ts              |  15 ++++-
 4 files changed, 222 insertions(+), 7 deletions(-)

diff --git a/bun.lock b/bun.lock
index e64b3d7..1ce7794 100644
--- a/bun.lock
+++ b/bun.lock
@@ -4,6 +4,8 @@
     "": {
       "name": "shiki-highlighter",
       "devDependencies": {
+        "@codemirror/basic-setup": "^0.20.0",
+        "@codemirror/lang-markdown": "^6.3.2",
         "@codemirror/language": "^6.11.0",
         "@codemirror/state": "^6.5.2",
         "@codemirror/view": "^6.36.8",
@@ -40,8 +42,26 @@
     },
   },
   "packages": {
+    "@codemirror/autocomplete": ["@codemirror/autocomplete@0.20.3", "", { "dependencies": { "@codemirror/language": "^0.20.0", "@codemirror/state": "^0.20.0", "@codemirror/view": "^0.20.0", "@lezer/common": "^0.16.0" } }, "sha512-lYB+NPGP+LEzAudkWhLfMxhTrxtLILGl938w+RcFrGdrIc54A+UgmCoz+McE3IYRFp4xyQcL4uFJwo+93YdgHw=="],
+
+    "@codemirror/basic-setup": ["@codemirror/basic-setup@0.20.0", "", { "dependencies": { "@codemirror/autocomplete": "^0.20.0", "@codemirror/commands": "^0.20.0", "@codemirror/language": "^0.20.0", "@codemirror/lint": "^0.20.0", "@codemirror/search": "^0.20.0", "@codemirror/state": "^0.20.0", "@codemirror/view": "^0.20.0" } }, "sha512-W/ERKMLErWkrVLyP5I8Yh8PXl4r+WFNkdYVSzkXYPQv2RMPSkWpr2BgggiSJ8AHF/q3GuApncDD8I4BZz65fyg=="],
+
+    "@codemirror/commands": ["@codemirror/commands@0.20.0", "", { "dependencies": { "@codemirror/language": "^0.20.0", "@codemirror/state": "^0.20.0", "@codemirror/view": "^0.20.0", "@lezer/common": "^0.16.0" } }, "sha512-v9L5NNVA+A9R6zaFvaTbxs30kc69F6BkOoiEbeFw4m4I0exmDEKBILN6mK+GksJtvTzGBxvhAPlVFTdQW8GB7Q=="],
+
+    "@codemirror/lang-css": ["@codemirror/lang-css@6.3.1", "", { "dependencies": { "@codemirror/autocomplete": "^6.0.0", "@codemirror/language": "^6.0.0", "@codemirror/state": "^6.0.0", "@lezer/common": "^1.0.2", "@lezer/css": "^1.1.7" } }, "sha512-kr5fwBGiGtmz6l0LSJIbno9QrifNMUusivHbnA1H6Dmqy4HZFte3UAICix1VuKo0lMPKQr2rqB+0BkKi/S3Ejg=="],
+
+    "@codemirror/lang-html": ["@codemirror/lang-html@6.4.9", "", { "dependencies": { "@codemirror/autocomplete": "^6.0.0", "@codemirror/lang-css": "^6.0.0", "@codemirror/lang-javascript": "^6.0.0", "@codemirror/language": "^6.4.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.17.0", "@lezer/common": "^1.0.0", "@lezer/css": "^1.1.0", "@lezer/html": "^1.3.0" } }, "sha512-aQv37pIMSlueybId/2PVSP6NPnmurFDVmZwzc7jszd2KAF8qd4VBbvNYPXWQq90WIARjsdVkPbw29pszmHws3Q=="],
+
+    "@codemirror/lang-javascript": ["@codemirror/lang-javascript@6.2.4", "", { "dependencies": { "@codemirror/autocomplete": "^6.0.0", "@codemirror/language": "^6.6.0", "@codemirror/lint": "^6.0.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.17.0", "@lezer/common": "^1.0.0", "@lezer/javascript": "^1.0.0" } }, "sha512-0WVmhp1QOqZ4Rt6GlVGwKJN3KW7Xh4H2q8ZZNGZaP6lRdxXJzmjm4FqvmOojVj6khWJHIb9sp7U/72W7xQgqAA=="],
+
+    "@codemirror/lang-markdown": ["@codemirror/lang-markdown@6.3.2", "", { "dependencies": { "@codemirror/autocomplete": "^6.7.1", "@codemirror/lang-html": "^6.0.0", "@codemirror/language": "^6.3.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.0.0", "@lezer/common": "^1.2.1", "@lezer/markdown": "^1.0.0" } }, "sha512-c/5MYinGbFxYl4itE9q/rgN/sMTjOr8XL5OWnC+EaRMLfCbVUmmubTJfdgpfcSS2SCaT7b+Q+xi3l6CgoE+BsA=="],
+
     "@codemirror/language": ["@codemirror/language@6.11.0", "", { "dependencies": { "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.23.0", "@lezer/common": "^1.1.0", "@lezer/highlight": "^1.0.0", "@lezer/lr": "^1.0.0", "style-mod": "^4.0.0" } }, "sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ=="],
 
+    "@codemirror/lint": ["@codemirror/lint@0.20.3", "", { "dependencies": { "@codemirror/state": "^0.20.0", "@codemirror/view": "^0.20.2", "crelt": "^1.0.5" } }, "sha512-06xUScbbspZ8mKoODQCEx6hz1bjaq9m8W8DxdycWARMiiX1wMtfCh/MoHpaL7ws/KUMwlsFFfp2qhm32oaCvVA=="],
+
+    "@codemirror/search": ["@codemirror/search@0.20.1", "", { "dependencies": { "@codemirror/state": "^0.20.0", "@codemirror/view": "^0.20.0", "crelt": "^1.0.5" } }, "sha512-ROe6gRboQU5E4z6GAkNa2kxhXqsGNbeLEisbvzbOeB7nuDYXUZ70vGIgmqPu0tB+1M3F9yWk6W8k2vrFpJaD4Q=="],
+
     "@codemirror/state": ["@codemirror/state@6.5.2", "", { "dependencies": { "@marijn/find-cluster-break": "^1.0.0" } }, "sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA=="],
 
     "@codemirror/view": ["@codemirror/view@6.36.8", "", { "dependencies": { "@codemirror/state": "^6.5.0", "style-mod": "^4.1.0", "w3c-keyname": "^2.2.4" } }, "sha512-yoRo4f+FdnD01fFt4XpfpMCcCAo9QvZOtbrXExn4SqzH32YC6LgzqxfLZw/r6Ge65xyY03mK/UfUqrVw1gFiFg=="],
@@ -144,10 +164,18 @@
 
     "@lezer/common": ["@lezer/common@1.2.3", "", {}, "sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA=="],
 
+    "@lezer/css": ["@lezer/css@1.2.1", "", { "dependencies": { "@lezer/common": "^1.2.0", "@lezer/highlight": "^1.0.0", "@lezer/lr": "^1.3.0" } }, "sha512-2F5tOqzKEKbCUNraIXc0f6HKeyKlmMWJnBB0i4XW6dJgssrZO/YlZ2pY5xgyqDleqqhiNJ3dQhbrV2aClZQMvg=="],
+
     "@lezer/highlight": ["@lezer/highlight@1.2.1", "", { "dependencies": { "@lezer/common": "^1.0.0" } }, "sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA=="],
 
+    "@lezer/html": ["@lezer/html@1.3.10", "", { "dependencies": { "@lezer/common": "^1.2.0", "@lezer/highlight": "^1.0.0", "@lezer/lr": "^1.0.0" } }, "sha512-dqpT8nISx/p9Do3AchvYGV3qYc4/rKr3IBZxlHmpIKam56P47RSHkSF5f13Vu9hebS1jM0HmtJIwLbWz1VIY6w=="],
+
+    "@lezer/javascript": ["@lezer/javascript@1.5.1", "", { "dependencies": { "@lezer/common": "^1.2.0", "@lezer/highlight": "^1.1.3", "@lezer/lr": "^1.3.0" } }, "sha512-ATOImjeVJuvgm3JQ/bpo2Tmv55HSScE2MTPnKRMRIPx2cLhHGyX2VnqpHhtIV1tVzIjZDbcWQm+NCTF40ggZVw=="],
+
     "@lezer/lr": ["@lezer/lr@1.4.2", "", { "dependencies": { "@lezer/common": "^1.0.0" } }, "sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA=="],
 
+    "@lezer/markdown": ["@lezer/markdown@1.4.3", "", { "dependencies": { "@lezer/common": "^1.0.0", "@lezer/highlight": "^1.0.0" } }, "sha512-kfw+2uMrQ/wy/+ONfrH83OkdFNM0ye5Xq96cLlaCy7h5UT9FO54DU4oRoIc0CSBh5NWmWuiIJA7NGLMJbQ+Oxg=="],
+
     "@marijn/find-cluster-break": ["@marijn/find-cluster-break@1.0.2", "", {}, "sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g=="],
 
     "@nodelib/fs.scandir": ["@nodelib/fs.scandir@2.1.5", "", { "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" } }, "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g=="],
@@ -262,6 +290,8 @@
 
     "confbox": ["confbox@0.2.2", "", {}, "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ=="],
 
+    "crelt": ["crelt@1.0.6", "", {}, "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g=="],
+
     "cross-spawn": ["cross-spawn@7.0.6", "", { "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" } }, "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA=="],
 
     "css-selector-parser": ["css-selector-parser@3.1.2", "", {}, "sha512-WfUcL99xWDs7b3eZPoRszWVfbNo8ErCF15PTvVROjkShGlAfjIkG6hlfj/sl6/rfo5Q9x9ryJ3VqVnAZDA+gcw=="],
@@ -570,6 +600,46 @@
 
     "zwitch": ["zwitch@2.0.4", "", {}, "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A=="],
 
+    "@codemirror/autocomplete/@codemirror/language": ["@codemirror/language@0.20.2", "", { "dependencies": { "@codemirror/state": "^0.20.0", "@codemirror/view": "^0.20.0", "@lezer/common": "^0.16.0", "@lezer/highlight": "^0.16.0", "@lezer/lr": "^0.16.0", "style-mod": "^4.0.0" } }, "sha512-WB3Bnuusw0xhVvhBocieYKwJm04SOk5bPoOEYksVHKHcGHFOaYaw+eZVxR4gIqMMcGzOIUil0FsCmFk8yrhHpw=="],
+
+    "@codemirror/autocomplete/@codemirror/state": ["@codemirror/state@0.20.1", "", {}, "sha512-ms0tlV5A02OK0pFvTtSUGMLkoarzh1F8mr6jy1cD7ucSC2X/VLHtQCxfhdSEGqTYlQF2hoZtmLv+amqhdgbwjQ=="],
+
+    "@codemirror/autocomplete/@codemirror/view": ["@codemirror/view@0.20.7", "", { "dependencies": { "@codemirror/state": "^0.20.0", "style-mod": "^4.0.0", "w3c-keyname": "^2.2.4" } }, "sha512-pqEPCb9QFTOtHgAH5XU/oVy9UR/Anj6r+tG5CRmkNVcqSKEPmBU05WtN/jxJCFZBXf6HumzWC9ydE4qstO3TxQ=="],
+
+    "@codemirror/autocomplete/@lezer/common": ["@lezer/common@0.16.1", "", {}, "sha512-qPmG7YTZ6lATyTOAWf8vXE+iRrt1NJd4cm2nJHK+v7X9TsOF6+HtuU/ctaZy2RCrluxDb89hI6KWQ5LfQGQWuA=="],
+
+    "@codemirror/basic-setup/@codemirror/language": ["@codemirror/language@0.20.2", "", { "dependencies": { "@codemirror/state": "^0.20.0", "@codemirror/view": "^0.20.0", "@lezer/common": "^0.16.0", "@lezer/highlight": "^0.16.0", "@lezer/lr": "^0.16.0", "style-mod": "^4.0.0" } }, "sha512-WB3Bnuusw0xhVvhBocieYKwJm04SOk5bPoOEYksVHKHcGHFOaYaw+eZVxR4gIqMMcGzOIUil0FsCmFk8yrhHpw=="],
+
+    "@codemirror/basic-setup/@codemirror/state": ["@codemirror/state@0.20.1", "", {}, "sha512-ms0tlV5A02OK0pFvTtSUGMLkoarzh1F8mr6jy1cD7ucSC2X/VLHtQCxfhdSEGqTYlQF2hoZtmLv+amqhdgbwjQ=="],
+
+    "@codemirror/basic-setup/@codemirror/view": ["@codemirror/view@0.20.7", "", { "dependencies": { "@codemirror/state": "^0.20.0", "style-mod": "^4.0.0", "w3c-keyname": "^2.2.4" } }, "sha512-pqEPCb9QFTOtHgAH5XU/oVy9UR/Anj6r+tG5CRmkNVcqSKEPmBU05WtN/jxJCFZBXf6HumzWC9ydE4qstO3TxQ=="],
+
+    "@codemirror/commands/@codemirror/language": ["@codemirror/language@0.20.2", "", { "dependencies": { "@codemirror/state": "^0.20.0", "@codemirror/view": "^0.20.0", "@lezer/common": "^0.16.0", "@lezer/highlight": "^0.16.0", "@lezer/lr": "^0.16.0", "style-mod": "^4.0.0" } }, "sha512-WB3Bnuusw0xhVvhBocieYKwJm04SOk5bPoOEYksVHKHcGHFOaYaw+eZVxR4gIqMMcGzOIUil0FsCmFk8yrhHpw=="],
+
+    "@codemirror/commands/@codemirror/state": ["@codemirror/state@0.20.1", "", {}, "sha512-ms0tlV5A02OK0pFvTtSUGMLkoarzh1F8mr6jy1cD7ucSC2X/VLHtQCxfhdSEGqTYlQF2hoZtmLv+amqhdgbwjQ=="],
+
+    "@codemirror/commands/@codemirror/view": ["@codemirror/view@0.20.7", "", { "dependencies": { "@codemirror/state": "^0.20.0", "style-mod": "^4.0.0", "w3c-keyname": "^2.2.4" } }, "sha512-pqEPCb9QFTOtHgAH5XU/oVy9UR/Anj6r+tG5CRmkNVcqSKEPmBU05WtN/jxJCFZBXf6HumzWC9ydE4qstO3TxQ=="],
+
+    "@codemirror/commands/@lezer/common": ["@lezer/common@0.16.1", "", {}, "sha512-qPmG7YTZ6lATyTOAWf8vXE+iRrt1NJd4cm2nJHK+v7X9TsOF6+HtuU/ctaZy2RCrluxDb89hI6KWQ5LfQGQWuA=="],
+
+    "@codemirror/lang-css/@codemirror/autocomplete": ["@codemirror/autocomplete@6.18.6", "", { "dependencies": { "@codemirror/language": "^6.0.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.17.0", "@lezer/common": "^1.0.0" } }, "sha512-PHHBXFomUs5DF+9tCOM/UoW6XQ4R44lLNNhRaW9PKPTU0D7lIjRg3ElxaJnTwsl/oHiR93WSXDBrekhoUGCPtg=="],
+
+    "@codemirror/lang-html/@codemirror/autocomplete": ["@codemirror/autocomplete@6.18.6", "", { "dependencies": { "@codemirror/language": "^6.0.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.17.0", "@lezer/common": "^1.0.0" } }, "sha512-PHHBXFomUs5DF+9tCOM/UoW6XQ4R44lLNNhRaW9PKPTU0D7lIjRg3ElxaJnTwsl/oHiR93WSXDBrekhoUGCPtg=="],
+
+    "@codemirror/lang-javascript/@codemirror/autocomplete": ["@codemirror/autocomplete@6.18.6", "", { "dependencies": { "@codemirror/language": "^6.0.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.17.0", "@lezer/common": "^1.0.0" } }, "sha512-PHHBXFomUs5DF+9tCOM/UoW6XQ4R44lLNNhRaW9PKPTU0D7lIjRg3ElxaJnTwsl/oHiR93WSXDBrekhoUGCPtg=="],
+
+    "@codemirror/lang-javascript/@codemirror/lint": ["@codemirror/lint@6.8.5", "", { "dependencies": { "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.35.0", "crelt": "^1.0.5" } }, "sha512-s3n3KisH7dx3vsoeGMxsbRAgKe4O1vbrnKBClm99PU0fWxmxsx5rR2PfqQgIt+2MMJBHbiJ5rfIdLYfB9NNvsA=="],
+
+    "@codemirror/lang-markdown/@codemirror/autocomplete": ["@codemirror/autocomplete@6.18.6", "", { "dependencies": { "@codemirror/language": "^6.0.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.17.0", "@lezer/common": "^1.0.0" } }, "sha512-PHHBXFomUs5DF+9tCOM/UoW6XQ4R44lLNNhRaW9PKPTU0D7lIjRg3ElxaJnTwsl/oHiR93WSXDBrekhoUGCPtg=="],
+
+    "@codemirror/lint/@codemirror/state": ["@codemirror/state@0.20.1", "", {}, "sha512-ms0tlV5A02OK0pFvTtSUGMLkoarzh1F8mr6jy1cD7ucSC2X/VLHtQCxfhdSEGqTYlQF2hoZtmLv+amqhdgbwjQ=="],
+
+    "@codemirror/lint/@codemirror/view": ["@codemirror/view@0.20.7", "", { "dependencies": { "@codemirror/state": "^0.20.0", "style-mod": "^4.0.0", "w3c-keyname": "^2.2.4" } }, "sha512-pqEPCb9QFTOtHgAH5XU/oVy9UR/Anj6r+tG5CRmkNVcqSKEPmBU05WtN/jxJCFZBXf6HumzWC9ydE4qstO3TxQ=="],
+
+    "@codemirror/search/@codemirror/state": ["@codemirror/state@0.20.1", "", {}, "sha512-ms0tlV5A02OK0pFvTtSUGMLkoarzh1F8mr6jy1cD7ucSC2X/VLHtQCxfhdSEGqTYlQF2hoZtmLv+amqhdgbwjQ=="],
+
+    "@codemirror/search/@codemirror/view": ["@codemirror/view@0.20.7", "", { "dependencies": { "@codemirror/state": "^0.20.0", "style-mod": "^4.0.0", "w3c-keyname": "^2.2.4" } }, "sha512-pqEPCb9QFTOtHgAH5XU/oVy9UR/Anj6r+tG5CRmkNVcqSKEPmBU05WtN/jxJCFZBXf6HumzWC9ydE4qstO3TxQ=="],
+
     "@eslint-community/eslint-utils/eslint-visitor-keys": ["eslint-visitor-keys@3.4.3", "", {}, "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag=="],
 
     "@humanfs/node/@humanwhocodes/retry": ["@humanwhocodes/retry@0.3.1", "", {}, "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA=="],
@@ -584,6 +654,20 @@
 
     "mlly/pkg-types": ["pkg-types@1.3.1", "", { "dependencies": { "confbox": "^0.1.8", "mlly": "^1.7.4", "pathe": "^2.0.1" } }, "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ=="],
 
+    "@codemirror/autocomplete/@codemirror/language/@lezer/highlight": ["@lezer/highlight@0.16.0", "", { "dependencies": { "@lezer/common": "^0.16.0" } }, "sha512-iE5f4flHlJ1g1clOStvXNLbORJoiW4Kytso6ubfYzHnaNo/eo5SKhxs4wv/rtvwZQeZrK3we8S9SyA7OGOoRKQ=="],
+
+    "@codemirror/autocomplete/@codemirror/language/@lezer/lr": ["@lezer/lr@0.16.3", "", { "dependencies": { "@lezer/common": "^0.16.0" } }, "sha512-pau7um4eAw94BEuuShUIeQDTf3k4Wt6oIUOYxMmkZgDHdqtIcxWND4LRxi8nI9KuT4I1bXQv67BCapkxt7Ywqw=="],
+
+    "@codemirror/basic-setup/@codemirror/language/@lezer/common": ["@lezer/common@0.16.1", "", {}, "sha512-qPmG7YTZ6lATyTOAWf8vXE+iRrt1NJd4cm2nJHK+v7X9TsOF6+HtuU/ctaZy2RCrluxDb89hI6KWQ5LfQGQWuA=="],
+
+    "@codemirror/basic-setup/@codemirror/language/@lezer/highlight": ["@lezer/highlight@0.16.0", "", { "dependencies": { "@lezer/common": "^0.16.0" } }, "sha512-iE5f4flHlJ1g1clOStvXNLbORJoiW4Kytso6ubfYzHnaNo/eo5SKhxs4wv/rtvwZQeZrK3we8S9SyA7OGOoRKQ=="],
+
+    "@codemirror/basic-setup/@codemirror/language/@lezer/lr": ["@lezer/lr@0.16.3", "", { "dependencies": { "@lezer/common": "^0.16.0" } }, "sha512-pau7um4eAw94BEuuShUIeQDTf3k4Wt6oIUOYxMmkZgDHdqtIcxWND4LRxi8nI9KuT4I1bXQv67BCapkxt7Ywqw=="],
+
+    "@codemirror/commands/@codemirror/language/@lezer/highlight": ["@lezer/highlight@0.16.0", "", { "dependencies": { "@lezer/common": "^0.16.0" } }, "sha512-iE5f4flHlJ1g1clOStvXNLbORJoiW4Kytso6ubfYzHnaNo/eo5SKhxs4wv/rtvwZQeZrK3we8S9SyA7OGOoRKQ=="],
+
+    "@codemirror/commands/@codemirror/language/@lezer/lr": ["@lezer/lr@0.16.3", "", { "dependencies": { "@lezer/common": "^0.16.0" } }, "sha512-pau7um4eAw94BEuuShUIeQDTf3k4Wt6oIUOYxMmkZgDHdqtIcxWND4LRxi8nI9KuT4I1bXQv67BCapkxt7Ywqw=="],
+
     "@typescript-eslint/typescript-estree/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="],
 
     "mlly/pkg-types/confbox": ["confbox@0.1.8", "", {}, "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w=="],
diff --git a/package.json b/package.json
index 17f3622..8e4c4f3 100644
--- a/package.json
+++ b/package.json
@@ -23,6 +23,8 @@
 	"author": "Moritz Jung",
 	"license": "MIT",
 	"devDependencies": {
+		"@codemirror/basic-setup": "^0.20.0",
+		"@codemirror/lang-markdown": "^6.3.2",
 		"@codemirror/language": "^6.11.0",
 		"@codemirror/state": "^6.5.2",
 		"@codemirror/view": "^6.36.8",
diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 2e2533d..31ea653 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -4,9 +4,28 @@
  * This will gradually be modified into a universal module that does not rely on obsidian
  */ 
 
-import { type App, debounce, type Editor, loadPrism, type MarkdownPostProcessorContext, Notice } from 'obsidian';
+import {
+	type App,
+	debounce,
+	type Editor,
+	loadPrism,
+	type MarkdownPostProcessorContext,
+	Notice,
+	MarkdownRenderer,
+	MarkdownRenderChild,
+	MarkdownView,
+} from 'obsidian';
 import { type Settings } from 'src/settings/Settings';
 
+// import {
+// 	WorkspaceLeaf, MarkdownView, MarkdownEditView,
+// 	ViewState, livePreviewState, editorEditorField
+// } from 'obsidian';
+import { EditorState } from '@codemirror/state';
+import { EditorView } from '@codemirror/view';
+import { markdown } from "@codemirror/lang-markdown";
+import { basicSetup } from "@codemirror/basic-setup";
+
 import {
 	transformerNotationDiff,
 	transformerNotationHighlight,
@@ -129,6 +148,109 @@ export class EditableCodeblock {
 		return codeblockInfo
 	}
 
+	renderCallout(): void {
+		// - divAd
+		//   - divCallout
+		//     - divTitle
+		//       - divIcon
+		//       - divInner
+		//     - divContent
+		//       - ( ) b1 .markdown-rednered
+		//       - ( ) b2 .cm-editor > .cm-scroller > div.contenteditable
+		//   - divEditBtn
+
+		// divAd
+		const divAd = document.createElement('div'); this.el.appendChild(divAd); divAd.classList.add(
+			'cm-preview-code-block', 'cm-embed-block', 'markdown-rendered', 'admonition-parent', 'admonition-tip-parent',
+		)
+
+		// divCallout
+		const divCallout = document.createElement('div'); divAd.appendChild(divCallout); divCallout.classList.add(
+			'callout', 'admonition', 'admonition-tip', 'admonition-plugin'
+		);
+		divCallout.setAttribute('data-callout', this.codeblockInfo.language_type.slice(3)); divCallout.setAttribute('data-callout-fold', ''); divCallout.setAttribute('data-callout-metadata', '')
+
+		// divTitle
+		const divTitle = document.createElement('div'); divCallout.appendChild(divTitle); divTitle.classList.add('callout-title', 'admonition-title');
+		const divIcon = document.createElement('div'); divTitle.appendChild(divIcon); divIcon.classList.add('callout-icon', 'admonition-title-icon');
+		divIcon.innerHTML = ``
+		const divInner = document.createElement('div'); divTitle.appendChild(divInner); divInner.classList.add('callout-title-inner', 'admonition-title-content');
+		divInner.textContent = this.codeblockInfo.language_type.slice(3)
+
+		// divContent
+		const divContent = document.createElement('div'); divCallout.appendChild(divContent); divContent.classList.add('callout-content', 'admonition-content');
+		{
+			divContent.innerHTML = ''
+			const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
+			const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
+			void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
+		}
+
+		// divEditBtn
+		const divEditBtn = document.createElement('div'); divAd.appendChild(divEditBtn); divEditBtn.classList.add('edit-block-button')
+		divEditBtn.innerHTML = ``
+
+		// #region divContent async part
+		if (!this.isReadingMode && !this.isMarkdownRendered) {
+			divContent.addEventListener('dblclick', () => {
+				divContent.innerHTML = ''
+
+				// Strategy 1 - import { EditorView } from '@codemirror/view';, but it is difficult get all ob extensions.
+				const cmState = EditorState.create({
+					doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
+					extensions: [
+						basicSetup,
+						// keymap.of(defaultKeymap),
+						markdown(),
+						EditorView.updateListener.of(update => {
+							if (update.docChanged) {
+								this.codeblockInfo.source = update.state.doc.toString();
+							}
+						})
+					]
+					// extensions: livePreviewState
+				})
+				// const cmView =
+				new EditorView({
+					state: cmState,
+					parent: divContent // targetEl
+				})
+				// async
+				const elCmEditor: HTMLElement|null = divContent.querySelector('div[contenteditable=true]')
+				if (!elCmEditor) {
+					console.warn('can\'t find elCmEditor')
+					return
+				}
+				elCmEditor.focus()
+				elCmEditor.addEventListener('blur', (): void => {
+					divContent.innerHTML = ''
+					const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
+					const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
+					void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
+
+					void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
+				})
+
+				// Strategy 1.2 - HyperMD, but need hyperMD and codemirror same orgin
+				// const divTextarea = document.createElement('textarea'); divContent.appendChild(divTextarea);
+				// divTextarea.textContent = this.codeblockInfo.source ?? this.codeblockInfo.source_old
+				// const editor = HyperMD.fromTextArea(divTextarea, {
+				// 	mode: 'text/x-hypermd',
+				// 	lineNumbers: false,
+				// })
+
+				// Strategy 2 - MarkdownEditView, but it is difficult to create within the specified div.
+				// const leaf = this.plugin.app.workspace.getLeaf(true);
+				// const mdView = new MarkdownView(leaf)
+				// const mdEditView = new MarkdownEditView(mdView)
+
+				// Strategy 3 - innerText, but without render
+				// divContent.innerText = this.codeblockInfo.source ?? this.codeblockInfo.source_old
+			})
+		}
+		// #endregion
+	}
+
 	/**
 	 * param this.plugin.settings.saveMode onchange/oninput
 	 */
@@ -144,7 +266,6 @@ export class EditableCodeblock {
 
 		// span
 		const span = document.createElement('span'); div.appendChild(span);
-		this.codeblockInfo.source = this.codeblockInfo.source_old
 		void this.renderPre(span)
 
 		// textarea
@@ -155,7 +276,7 @@ export class EditableCodeblock {
 		Object.entries(attributes).forEach(([key, val]) => {
 			textarea.setAttribute(key, val);
 		});
-		textarea.value = this.codeblockInfo.source;
+		textarea.value = this.codeblockInfo.source ?? this.codeblockInfo.source_old;
 
 		// language-edit
 		const editEl = document.createElement('div'); div.appendChild(editEl); editEl.classList.add('language-edit');
@@ -292,7 +413,6 @@ export class EditableCodeblock {
 
 		// div
 		const div = document.createElement('div'); this.el.appendChild(div); div.classList.add('obsidian-shiki-plugin', 'editable-pre')
-		this.codeblockInfo.source = this.codeblockInfo.source_old
 
 		// pre, code
 		await this.renderPre(div)
diff --git a/src/main.ts b/src/main.ts
index 34aa033..1b73c34 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -95,6 +95,7 @@ export default class ShikiPlugin extends Plugin {
 	 */
 	registerCodeBlockProcessors(): void {
 		const languages = this.highlighter.obsidianSafeLanguageNames();
+		languages.push('sk-tip', 'sk-note', 'sk-info', 'sk-warning', 'sk-error')
 
 		for (const language of languages) {
 			try {
@@ -118,22 +119,30 @@ export default class ShikiPlugin extends Plugin {
 						}
 						
 						// able edit live
-						// disadvantage: First screen CLS (Page jitter)
-						if (this.settings.renderMode === 'textarea') {
+						if (language.startsWith('sk-')) { // editable callout
+							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
+							editableCodeblock.renderCallout()
+							return
+						}
+						else if (this.settings.renderMode === 'textarea') { // disadvantage: First screen CLS (Page jitter)
 							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
 							editableCodeblock.renderTextareaPre()
+							return
 						}
 						else if (this.settings.renderMode === 'pre') {
 							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
 							void editableCodeblock.renderPre(el)
+							return
 						}
 						else if (this.settings.renderMode === 'editablePre') {
 							const editableCodeblock = new EditableCodeblock(this, language, source, el, ctx)
 							void editableCodeblock.renderEditablePre()
+							return
 						}
 						else {
 							const codeBlock = new CodeBlock(this, el, source, language, ctx);
-							ctx.addChild(codeBlock);
+							ctx.addChild(codeBlock)
+							return
 						}
 					},
 					1000,

From 6f34e6516fbeea3ea44d04b904e625946cdb1fd3 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sat, 7 Jun 2025 00:23:02 +0800
Subject: [PATCH 59/66] feat: add renderCallout (beta)2

---
 src/EditableCodeblock.ts | 121 ++++++++++++++++++++++++++---------
 src/EditableEditor.ts    | 135 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 226 insertions(+), 30 deletions(-)
 create mode 100644 src/EditableEditor.ts

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 31ea653..12a8d2b 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -18,13 +18,15 @@ import {
 import { type Settings } from 'src/settings/Settings';
 
 // import {
-// 	WorkspaceLeaf, MarkdownView, MarkdownEditView,
+// 	// ScrollableMarkdownEditor,
+// 	WorkspaceLeaf, MarkdownEditView,
 // 	ViewState, livePreviewState, editorEditorField
 // } from 'obsidian';
-import { EditorState } from '@codemirror/state';
+import { EditorState, Extension, StateField } from '@codemirror/state';
 import { EditorView } from '@codemirror/view';
 import { markdown } from "@codemirror/lang-markdown";
 import { basicSetup } from "@codemirror/basic-setup";
+import { getMyEditor, makeFakeController } from "./EditableEditor"
 
 import {
 	transformerNotationDiff,
@@ -68,7 +70,7 @@ export class EditableCodeblock {
 	plugin: { app: App; settings: Settings };
 	el: HTMLElement;
 	ctx: MarkdownPostProcessorContext;
-	editor: Editor|undefined; // Cache to avoid focus changes. And the focus point may not be correct when creating the code block. It can be updated again when oninput
+	editor: Editor|null; // Cache to avoid focus changes. And the focus point may not be correct when creating the code block. It can be updated again when oninput
 	codeblockInfo: CodeblockInfo;
 
 	// redundancy
@@ -79,7 +81,7 @@ export class EditableCodeblock {
 		this.plugin = plugin
 		this.el = el
 		this.ctx = ctx
-		this.editor = this.plugin.app.workspace.activeEditor?.editor;
+		this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null;
 
 		this.isReadingMode = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view');
 		this.isMarkdownRendered = !ctx.el.hasClass('.cm-preview-code-block') && ctx.el.hasClass('markdown-rednered')
@@ -192,30 +194,89 @@ export class EditableCodeblock {
 
 		// #region divContent async part
 		if (!this.isReadingMode && !this.isMarkdownRendered) {
+
+			this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null; // 这里,通常初始化和现在的activeEditor都拿不到editor,不知道为什么
+			const view = this.plugin.app.workspace.getActiveViewOfType(MarkdownView)
+			if (view) this.editor = view.editor
+
 			divContent.addEventListener('dblclick', () => {
 				divContent.innerHTML = ''
-
+				
 				// Strategy 1 - import { EditorView } from '@codemirror/view';, but it is difficult get all ob extensions.
-				const cmState = EditorState.create({
-					doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
-					extensions: [
-						basicSetup,
-						// keymap.of(defaultKeymap),
-						markdown(),
-						EditorView.updateListener.of(update => {
-							if (update.docChanged) {
-								this.codeblockInfo.source = update.state.doc.toString();
-							}
-						})
-					]
-					// extensions: livePreviewState
-				})
-				// const cmView =
-				new EditorView({
-					state: cmState,
-					parent: divContent // targetEl
-				})
-				// async
+				/*
+				 * thanks https://github.com/Fevol/obsidian-criticmarkup/blob/6f2e8ed3fcf3a548875f7bd2fe09b9df2870e4fd/src/ui/embeddable-editor.ts
+				 * thanks https://github.com/mgmeyers/obsidian-kanban/blob/main/src/components/Editor/MarkdownEditor.tsx#L134
+				 *   view: KanbanView
+				 *   plugin: KanbanPlugin https://github.com/mgmeyers/obsidian-kanban/blob/main/src/KanbanView.tsx
+				 *   MarkdownEditor = Object.getPrototypeOf(Object.getPrototypeOf(md.editMode)).constructor; https://github.com/mgmeyers/obsidian-kanban/blob/main/src/main.ts#L41
+				 *   
+				 */
+				const MyEditor = getMyEditor(this.plugin.app)
+				// console.log('extensionsC', MyEditor, this.editor, this.plugin.app.workspace.activeEditor, this.plugin.app.workspace.activeEditor?.editor)
+				if (false && MyEditor && this.editor) { // this.editor && 
+					// @ts-expect-error Editor without cm
+					const obCmView: EditorView = this.editor.cm
+					const obCmState: EditorState = obCmView.state
+					const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
+					
+					// 方案1:直接clone state,只改doc. bug: 无法加入修改检测
+					const cmState = obCmState.update({
+						changes: { from: 0, to: obCmState.doc.length, insert: this.codeblockInfo.source ?? this.codeblockInfo.source_old },
+					}).state
+					new EditorView({ // const cmView =
+						state: cmState,
+						parent: divContent // targetEl
+					})
+					
+					// 方案2:只取extensions,生成新state. bug: 很难拿到全部的extension,拿到的那个基本没用
+					// const containerEl = document.createElement("div")
+					// const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
+					// // @ts-expect-error
+					// const myEditor = new MyEditor(app, containerEl, controller)
+					// const extensions = myEditor.buildLocalExtensions()
+					// const cmState = EditorState.create({
+					// 	doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
+					// 	extensions: [
+					// 		basicSetup,
+					// 		markdown(),
+					// 		...obExtensions,
+					// 		EditorView.updateListener.of(update => {
+					// 			if (update.docChanged) {
+					// 				this.codeblockInfo.source = update.state.doc.toString();
+					// 			}
+					// 		})
+					// 	]
+					// })
+					// new EditorView({ // const cmView =
+					// 	state: cmState,
+					// 	parent: divContent // targetEl
+					// })
+
+					// 方案3: 使用overload后的MarkdownEditor对象
+					// const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
+					// const myEditor = new MyEditor(this.plugin.app, divContent, controller)
+				}
+				else {
+					const cmState = EditorState.create({
+						doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
+						extensions: [
+							basicSetup,
+							// keymap.of(defaultKeymap),
+							markdown(),
+							EditorView.updateListener.of(update => {
+								if (update.docChanged) {
+									this.codeblockInfo.source = update.state.doc.toString();
+								}
+							})
+						]
+					})
+					new EditorView({ // const cmView =
+						state: cmState,
+						parent: divContent // targetEl
+					})
+				}
+				
+				// async // Maybe todo: async check
 				const elCmEditor: HTMLElement|null = divContent.querySelector('div[contenteditable=true]')
 				if (!elCmEditor) {
 					console.warn('can\'t find elCmEditor')
@@ -310,7 +371,7 @@ export class EditableCodeblock {
 			textarea.oninput = (ev): void => {
 				if (isComposing) return
 
-				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+				this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null;
 
 				const newValue = (ev.target as HTMLTextAreaElement).value
 				this.codeblockInfo.source = newValue
@@ -336,7 +397,7 @@ export class EditableCodeblock {
 			textarea.oninput = (ev): void => {
 				if (isComposing) return
 
-				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+				this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null;
 
 				const newValue = (ev.target as HTMLTextAreaElement).value
 				this.codeblockInfo.source = newValue
@@ -359,7 +420,7 @@ export class EditableCodeblock {
 			editInput.oninput = (ev): void => {
 				if (isComposing) return
 
-				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+				this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null;
 
 				const newValue = (ev.target as HTMLInputElement).value
 				const match = /^(\S*)(\s?.*)$/.exec(newValue)
@@ -452,7 +513,7 @@ export class EditableCodeblock {
 				if (isComposing) return
 				if (!pre || !code) { console.error('render failed. can\'t find pre/code 12'); return }
 
-				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+				this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null;
 
 				const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
 				this.codeblockInfo.source = newValue
@@ -495,7 +556,7 @@ export class EditableCodeblock {
 				if (isComposing) return
 				if (!pre || !code) { console.error('render failed. can\'t find pre/code 22'); return }
 
-				this.editor = this.plugin.app.workspace.activeEditor?.editor;
+				this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null;
 
 				const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
 				this.codeblockInfo.source = newValue
diff --git a/src/EditableEditor.ts b/src/EditableEditor.ts
new file mode 100644
index 0000000..87aa889
--- /dev/null
+++ b/src/EditableEditor.ts
@@ -0,0 +1,135 @@
+import { EditorState, Extension } from "@codemirror/state";
+import { EditorView, ViewUpdate } from "@codemirror/view";
+import { App, Editor, MarkdownView } from "obsidian";
+
+function getEditorClass(app: App) {
+	// @ts-expect-error without embedRegistry
+	const md = app.embedRegistry.embedByExtension.md(
+		{ app: app, containerEl: createDiv(), state: {} },
+		null,
+		''
+	);
+
+	md.load();
+	md.editable = true;
+	md.showEditor();
+
+	const MarkdownEditor = Object.getPrototypeOf(Object.getPrototypeOf(md.editMode)).constructor;
+
+	md.unload();
+
+	return MarkdownEditor;
+}
+
+// 伪造 controller 对象
+export function makeFakeController(app: App, view: MarkdownView|null, getEditor: () => Editor|null): Record {
+	return {
+		app,
+		showSearch: () => { },
+		toggleMode: () => { },
+		onMarkdownScroll: () => { },
+		getMode: () => "source",
+		scroll: 0,
+		editMode: null,
+		get editor() { return getEditor(); },
+		get file() { return view?.file; },
+		get path() { return view?.file?.path ?? ""; }
+	}
+}
+
+// let extensions: any = null // global
+
+export function getMyEditor(app: App): any {
+	// if (extensions !== null) return extensions
+
+	const MarkdownEditor = getEditorClass(app)
+
+	class MyEditor extends MarkdownEditor {
+		buildLocalExtensions(): Extension[] {
+			const extensions = super.buildLocalExtensions();
+
+			// extensions.push(stateManagerField.init(() => stateManager));
+			// extensions.push(datePlugins);
+			/*extensions.push(
+				Prec.highest(
+					EditorView.domEventHandlers({
+						focus: (evt) => {
+							view.activeEditor = this.owner;
+							if (Platform.isMobile) {
+								view.contentEl.addClass('is-mobile-editing');
+							}
+
+							evt.win.setTimeout(() => {
+								this.app.workspace.activeEditor = this.owner;
+								if (Platform.isMobile) {
+									app.mobileToolbar.update();
+								}
+							});
+							return true;
+						},
+						blur: () => {
+							if (Platform.isMobile) {
+								view.contentEl.removeClass('is-mobile-editing');
+								app.mobileToolbar.update();
+							}
+							return true;
+						},
+					})
+				)
+			);
+
+			if (placeholder) extensions.push(placeholderExt(placeholder));
+			if (onPaste) {
+				extensions.push(
+					Prec.high(
+						EditorView.domEventHandlers({
+							paste: onPaste,
+						})
+					)
+				);
+			}
+
+			const makeEnterHandler = (mod: boolean, shift: boolean) => (cm: EditorView) => {
+				const didRun = onEnter(cm, mod, shift);
+				if (didRun) return true;
+				if (this.app.vault.getConfig('smartIndentList')) {
+					this.editor.newlineAndIndentContinueMarkdownList();
+				} else {
+					insertBlankLine(cm as any);
+				}
+				return true;
+			};
+
+			extensions.push(
+				Prec.highest(
+					keymap.of([
+						{
+							key: 'Enter',
+							run: makeEnterHandler(false, false),
+							shift: makeEnterHandler(false, true),
+							preventDefault: true,
+						},
+						{
+							key: 'Mod-Enter',
+							run: makeEnterHandler(true, false),
+							shift: makeEnterHandler(true, true),
+							preventDefault: true,
+						},
+						{
+							key: 'Escape',
+							run: (cm) => {
+								onEscape(cm);
+								return false;
+							},
+							preventDefault: true,
+						},
+					])
+				)
+			);*/
+
+			return extensions;
+		}
+	}
+
+	return MyEditor
+}

From 8c942551e364a410badffa2a734e4aa0722bd1ff Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sun, 8 Jun 2025 00:38:45 +0800
Subject: [PATCH 60/66] refactor: renderCallout1

---
 eslint.config.mjs        |   6 +-
 src/EditableCodeblock.ts |  90 +++++++++----------
 src/EditableEditor.ts    | 190 ++++++++++++++++++++-------------------
 3 files changed, 149 insertions(+), 137 deletions(-)

diff --git a/eslint.config.mjs b/eslint.config.mjs
index 7c0948d..b2b2bfb 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -29,7 +29,11 @@ export default tseslint.config(
 			'no-relative-import-paths': no_relative_import_paths,
 		},
 		rules: {
-			'@typescript-eslint/no-explicit-any': ['warn'],
+			'@typescript-eslint/no-explicit-any': 'off', // ['warn'],
+			'@typescript-eslint/no-unsafe-call': 'off',
+			'@typescript-eslint/no-unsafe-assignment': 'off',
+			'@typescript-eslint/no-unsafe-member-access': 'off',
+
 
 			'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_', destructuredArrayIgnorePattern: '^_' }],
 			'@typescript-eslint/consistent-type-imports': ['error', { prefer: 'type-imports', fixStyle: 'inline-type-imports' }],
diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 12a8d2b..8424c4c 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -194,7 +194,6 @@ export class EditableCodeblock {
 
 		// #region divContent async part
 		if (!this.isReadingMode && !this.isMarkdownRendered) {
-
 			this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null; // 这里,通常初始化和现在的activeEditor都拿不到editor,不知道为什么
 			const view = this.plugin.app.workspace.getActiveViewOfType(MarkdownView)
 			if (view) this.editor = view.editor
@@ -202,24 +201,25 @@ export class EditableCodeblock {
 			divContent.addEventListener('dblclick', () => {
 				divContent.innerHTML = ''
 				
-				// Strategy 1 - import { EditorView } from '@codemirror/view';, but it is difficult get all ob extensions.
-				/*
-				 * thanks https://github.com/Fevol/obsidian-criticmarkup/blob/6f2e8ed3fcf3a548875f7bd2fe09b9df2870e4fd/src/ui/embeddable-editor.ts
-				 * thanks https://github.com/mgmeyers/obsidian-kanban/blob/main/src/components/Editor/MarkdownEditor.tsx#L134
-				 *   view: KanbanView
-				 *   plugin: KanbanPlugin https://github.com/mgmeyers/obsidian-kanban/blob/main/src/KanbanView.tsx
-				 *   MarkdownEditor = Object.getPrototypeOf(Object.getPrototypeOf(md.editMode)).constructor; https://github.com/mgmeyers/obsidian-kanban/blob/main/src/main.ts#L41
-				 *   
-				 */
-				const MyEditor = getMyEditor(this.plugin.app)
+				const MyEditor: new (...args: any[]) => any = getMyEditor(this.plugin.app)
 				// console.log('extensionsC', MyEditor, this.editor, this.plugin.app.workspace.activeEditor, this.plugin.app.workspace.activeEditor?.editor)
-				if (false && MyEditor && this.editor) { // this.editor && 
+				if (false && MyEditor) {
+					// Strategy 1: 使用overload后的MarkdownEditor对象
+					const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
+					const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
+					const myEditor: Editor = new MyEditor(this.plugin.app, divContent, controller)
+					// @ts-expect-error without set, if no set, cm style invalid
+					myEditor.set(this.codeblockInfo.source ?? '')
+					// // @ts-expect-error without cm
+					// const obCmView: EditorView = myEditor.cm;
+					// console.log('myEditor child component cm', obCmView)
+				}
+				else if (false && this.editor) {
 					// @ts-expect-error Editor without cm
 					const obCmView: EditorView = this.editor.cm
 					const obCmState: EditorState = obCmView.state
-					const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
 					
-					// 方案1:直接clone state,只改doc. bug: 无法加入修改检测
+					// Strategy 2:直接clone state,只改doc. bug: 无法加入修改检测
 					const cmState = obCmState.update({
 						changes: { from: 0, to: obCmState.doc.length, insert: this.codeblockInfo.source ?? this.codeblockInfo.source_old },
 					}).state
@@ -227,36 +227,34 @@ export class EditableCodeblock {
 						state: cmState,
 						parent: divContent // targetEl
 					})
-					
-					// 方案2:只取extensions,生成新state. bug: 很难拿到全部的extension,拿到的那个基本没用
-					// const containerEl = document.createElement("div")
+
+					// Strategy 3:只取extensions,生成新state. bug: ~~很难拿到全部的extension,拿到的那个基本没用~~ 有extension也似乎不起作用
+					// const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
 					// const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
+					// const containerEl = document.createElement("div")
 					// // @ts-expect-error
-					// const myEditor = new MyEditor(app, containerEl, controller)
-					// const extensions = myEditor.buildLocalExtensions()
+					// const myEditor: MyEditor = new MyEditor(app, containerEl, controller)
+					// const obExtensions: any = myEditor.buildLocalExtensions()
 					// const cmState = EditorState.create({
 					// 	doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
 					// 	extensions: [
-					// 		basicSetup,
-					// 		markdown(),
+					// 		// basicSetup,
+					// 		// markdown(),
 					// 		...obExtensions,
-					// 		EditorView.updateListener.of(update => {
-					// 			if (update.docChanged) {
-					// 				this.codeblockInfo.source = update.state.doc.toString();
-					// 			}
-					// 		})
+					// 		// EditorView.updateListener.of(update => {
+					// 		// 	if (update.docChanged) {
+					// 		// 		this.codeblockInfo.source = update.state.doc.toString();
+					// 		// 	}
+					// 		// })
 					// 	]
 					// })
 					// new EditorView({ // const cmView =
 					// 	state: cmState,
 					// 	parent: divContent // targetEl
 					// })
-
-					// 方案3: 使用overload后的MarkdownEditor对象
-					// const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
-					// const myEditor = new MyEditor(this.plugin.app, divContent, controller)
 				}
 				else {
+					// Strategy 4 use ob extensions, but without ob style
 					const cmState = EditorState.create({
 						doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
 						extensions: [
@@ -274,6 +272,22 @@ export class EditableCodeblock {
 						state: cmState,
 						parent: divContent // targetEl
 					})
+
+					// Strategy 5 - HyperMD, but need hyperMD and codemirror same orgin
+					// const divTextarea = document.createElement('textarea'); divContent.appendChild(divTextarea);
+					// divTextarea.textContent = this.codeblockInfo.source ?? this.codeblockInfo.source_old
+					// const editor = HyperMD.fromTextArea(divTextarea, {
+					// 	mode: 'text/x-hypermd',
+					// 	lineNumbers: false,
+					// })
+
+					// Strategy 6 - MarkdownEditView, but it is difficult to create within the specified div.
+					// const leaf = this.plugin.app.workspace.getLeaf(true);
+					// const mdView = new MarkdownView(leaf)
+					// const mdEditView = new MarkdownEditView(mdView)
+
+					// Strategy 7 - innerText, but without render
+					// divContent.innerText = this.codeblockInfo.source ?? this.codeblockInfo.source_old
 				}
 				
 				// async // Maybe todo: async check
@@ -291,22 +305,6 @@ export class EditableCodeblock {
 
 					void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
 				})
-
-				// Strategy 1.2 - HyperMD, but need hyperMD and codemirror same orgin
-				// const divTextarea = document.createElement('textarea'); divContent.appendChild(divTextarea);
-				// divTextarea.textContent = this.codeblockInfo.source ?? this.codeblockInfo.source_old
-				// const editor = HyperMD.fromTextArea(divTextarea, {
-				// 	mode: 'text/x-hypermd',
-				// 	lineNumbers: false,
-				// })
-
-				// Strategy 2 - MarkdownEditView, but it is difficult to create within the specified div.
-				// const leaf = this.plugin.app.workspace.getLeaf(true);
-				// const mdView = new MarkdownView(leaf)
-				// const mdEditView = new MarkdownEditView(mdView)
-
-				// Strategy 3 - innerText, but without render
-				// divContent.innerText = this.codeblockInfo.source ?? this.codeblockInfo.source_old
 			})
 		}
 		// #endregion
diff --git a/src/EditableEditor.ts b/src/EditableEditor.ts
index 87aa889..e93f39a 100644
--- a/src/EditableEditor.ts
+++ b/src/EditableEditor.ts
@@ -1,10 +1,18 @@
-import { EditorState, Extension } from "@codemirror/state";
-import { EditorView, ViewUpdate } from "@codemirror/view";
-import { App, Editor, MarkdownView } from "obsidian";
-
-function getEditorClass(app: App) {
+/*
+ * thanks https://github.com/Fevol/obsidian-criticmarkup/blob/6f2e8ed3fcf3a548875f7bd2fe09b9df2870e4fd/src/ui/embeddable-editor.ts
+ * thanks https://github.com/mgmeyers/obsidian-kanban/blob/main/src/components/Editor/MarkdownEditor.tsx#L134
+ *   view: KanbanView
+ *   plugin: KanbanPlugin https://github.com/mgmeyers/obsidian-kanban/blob/main/src/KanbanView.tsx
+ *   MarkdownEditor = Object.getPrototypeOf(Object.getPrototypeOf(md.editMode)).constructor; https://github.com/mgmeyers/obsidian-kanban/blob/main/src/main.ts#L41
+ */
+
+import { Prec, type Extension } from "@codemirror/state";
+import { keymap, type EditorView } from "@codemirror/view";
+import { type App, type Editor, type TFile, type MarkdownView } from "obsidian";
+
+function getEditorClass(app: App): any {
 	// @ts-expect-error without embedRegistry
-	const md = app.embedRegistry.embedByExtension.md(
+	const md: any = app.embedRegistry.embedByExtension.md(
 		{ app: app, containerEl: createDiv(), state: {} },
 		null,
 		''
@@ -14,26 +22,26 @@ function getEditorClass(app: App) {
 	md.editable = true;
 	md.showEditor();
 
-	const MarkdownEditor = Object.getPrototypeOf(Object.getPrototypeOf(md.editMode)).constructor;
+	const MarkdownEditor: any = Object.getPrototypeOf(Object.getPrototypeOf(md.editMode)).constructor;
 
 	md.unload();
 
 	return MarkdownEditor;
 }
 
-// 伪造 controller 对象
+// 伪造 controller 对象 (构造错误不影响编辑功能,但影响保存功能)
 export function makeFakeController(app: App, view: MarkdownView|null, getEditor: () => Editor|null): Record {
 	return {
 		app,
-		showSearch: () => { },
-		toggleMode: () => { },
-		onMarkdownScroll: () => { },
+		showSearch: (): void => { },
+		toggleMode: (): void => { },
+		onMarkdownScroll: (): void => { },
 		getMode: () => "source",
 		scroll: 0,
 		editMode: null,
-		get editor() { return getEditor(); },
-		get file() { return view?.file; },
-		get path() { return view?.file?.path ?? ""; }
+		get editor(): Editor | null { return getEditor(); },
+		get file(): TFile | null | undefined { return view?.file; },
+		get path(): string { return view?.file?.path ?? ""; }
 	}
 }
 
@@ -46,86 +54,88 @@ export function getMyEditor(app: App): any {
 
 	class MyEditor extends MarkdownEditor {
 		buildLocalExtensions(): Extension[] {
+			// obsidian自带扩展 (无法兼容插件扩展的行为)
 			const extensions = super.buildLocalExtensions();
 
+			// 管理和同步看板的状态
 			// extensions.push(stateManagerField.init(() => stateManager));
+
+			// 日期插件
 			// extensions.push(datePlugins);
-			/*extensions.push(
-				Prec.highest(
-					EditorView.domEventHandlers({
-						focus: (evt) => {
-							view.activeEditor = this.owner;
-							if (Platform.isMobile) {
-								view.contentEl.addClass('is-mobile-editing');
-							}
-
-							evt.win.setTimeout(() => {
-								this.app.workspace.activeEditor = this.owner;
-								if (Platform.isMobile) {
-									app.mobileToolbar.update();
-								}
-							});
-							return true;
-						},
-						blur: () => {
-							if (Platform.isMobile) {
-								view.contentEl.removeClass('is-mobile-editing');
-								app.mobileToolbar.update();
-							}
-							return true;
-						},
-					})
-				)
-			);
-
-			if (placeholder) extensions.push(placeholderExt(placeholder));
-			if (onPaste) {
-				extensions.push(
-					Prec.high(
-						EditorView.domEventHandlers({
-							paste: onPaste,
-						})
-					)
-				);
-			}
-
-			const makeEnterHandler = (mod: boolean, shift: boolean) => (cm: EditorView) => {
-				const didRun = onEnter(cm, mod, shift);
-				if (didRun) return true;
-				if (this.app.vault.getConfig('smartIndentList')) {
-					this.editor.newlineAndIndentContinueMarkdownList();
-				} else {
-					insertBlankLine(cm as any);
-				}
-				return true;
-			};
-
-			extensions.push(
-				Prec.highest(
-					keymap.of([
-						{
-							key: 'Enter',
-							run: makeEnterHandler(false, false),
-							shift: makeEnterHandler(false, true),
-							preventDefault: true,
-						},
-						{
-							key: 'Mod-Enter',
-							run: makeEnterHandler(true, false),
-							shift: makeEnterHandler(true, true),
-							preventDefault: true,
-						},
-						{
-							key: 'Escape',
-							run: (cm) => {
-								onEscape(cm);
-								return false;
-							},
-							preventDefault: true,
-						},
-					])
-				)
-			);*/
+
+			// 为编辑器添加 focus 和 blur 事件的监听器
+			// extensions.push(
+			// 	Prec.highest(
+			// 		EditorView.domEventHandlers({
+			// 			focus: (evt) => {
+			// 				view.activeEditor = this.owner;
+			// 				if (Platform.isMobile) {
+			// 					view.contentEl.addClass('is-mobile-editing');
+			// 				}
+			// 
+			// 				evt.win.setTimeout(() => {
+			// 					this.app.workspace.activeEditor = this.owner;
+			// 					if (Platform.isMobile) {
+			// 						app.mobileToolbar.update();
+			// 					}
+			// 				});
+			// 				return true;
+			// 			},
+			// 			blur: () => {
+			// 				if (Platform.isMobile) {
+			// 					view.contentEl.removeClass('is-mobile-editing');
+			// 					app.mobileToolbar.update();
+			// 				}
+			// 				return true;
+			// 			},
+			// 		})
+			// 	)
+			// );
+
+			// 如果传入了 placeholder,则为编辑器设置输入占位符提示文字
+			// if (placeholder) extensions.push(placeholderExt(placeholder));
+
+			// 添加 paste 事件监听,如果传入了 onPaste,则处理粘贴事件,例如自定义内容粘贴行为
+			// if (onPaste) {
+			// 	extensions.push(
+			// 		Prec.high(
+			// 			EditorView.domEventHandlers({
+			// 				paste: onPaste,
+			// 			})
+			// 		)
+			// 	);
+			// }
+
+			// 监听按键 (Esc/Enter退出编辑,Mod(Shift)+Enter才是换行)
+			// extensions.push(
+			// 	Prec.highest(
+			// 		keymap.of([
+			// 			{
+			// 				key: 'Enter',
+			// 				run: (): boolean => {
+			// 					return true
+			// 				},
+			// 				shift: (): boolean => { return true },
+			// 				preventDefault: true,
+			// 			},
+			// 			{
+			// 				key: 'Mod-Enter',
+			// 				run: (): boolean => {
+			// 					this.editor.newlineAndIndentContinueMarkdownList();
+			// 					return false
+			// 				},
+			// 				shift: (): boolean => { return false },
+			// 				preventDefault: true,
+			// 			},
+			// 			{
+			// 				key: 'Escape',
+			// 				run: (): boolean => { return true },
+			// 				shift: (): boolean => { return false },
+			// 				preventDefault: true,
+			// 			},
+			// 		])
+			// 	)
+			// )
 
 			return extensions;
 		}

From 59962bb892e3cdecf6c73c1f93f199e6d8a42f9d Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sun, 8 Jun 2025 12:36:44 +0800
Subject: [PATCH 61/66] refactor: renderCallout2

---
 eslint.config.mjs        |   4 +-
 src/EditableCodeblock.ts | 125 +++++++++++++++++++++------------------
 src/EditableEditor.ts    |  90 ++++++++++++++++------------
 src/PrismPlugin.ts       |   2 -
 4 files changed, 123 insertions(+), 98 deletions(-)

diff --git a/eslint.config.mjs b/eslint.config.mjs
index b2b2bfb..f721456 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -29,11 +29,13 @@ export default tseslint.config(
 			'no-relative-import-paths': no_relative_import_paths,
 		},
 		rules: {
+			// `any` about
 			'@typescript-eslint/no-explicit-any': 'off', // ['warn'],
 			'@typescript-eslint/no-unsafe-call': 'off',
 			'@typescript-eslint/no-unsafe-assignment': 'off',
 			'@typescript-eslint/no-unsafe-member-access': 'off',
-
+			'@typescript-eslint/no-unsafe-return': 'off',
+			'@typescript-eslint/no-unsafe-argument': 'off',
 
 			'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_', destructuredArrayIgnorePattern: '^_' }],
 			'@typescript-eslint/consistent-type-imports': ['error', { prefer: 'type-imports', fixStyle: 'inline-type-imports' }],
diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 8424c4c..c1d9641 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -22,11 +22,11 @@ import { type Settings } from 'src/settings/Settings';
 // 	WorkspaceLeaf, MarkdownEditView,
 // 	ViewState, livePreviewState, editorEditorField
 // } from 'obsidian';
-import { EditorState, Extension, StateField } from '@codemirror/state';
+import { EditorState } from '@codemirror/state';
 import { EditorView } from '@codemirror/view';
 import { markdown } from "@codemirror/lang-markdown";
 import { basicSetup } from "@codemirror/basic-setup";
-import { getMyEditor, makeFakeController } from "./EditableEditor"
+import { getMyEditor, makeFakeController } from "src/EditableEditor"
 
 import {
 	transformerNotationDiff,
@@ -201,9 +201,21 @@ export class EditableCodeblock {
 			divContent.addEventListener('dblclick', () => {
 				divContent.innerHTML = ''
 				
-				const MyEditor: new (...args: any[]) => any = getMyEditor(this.plugin.app)
+				const MyEditor: new (...args: any[]) => any = getMyEditor(
+					this.plugin.app,
+					(cm: EditorView) => {
+						this.codeblockInfo.source = cm.state.doc.toString()
+						
+						divContent.innerHTML = ''
+						const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
+						const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
+						void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
+
+						void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
+					}
+				)
 				// console.log('extensionsC', MyEditor, this.editor, this.plugin.app.workspace.activeEditor, this.plugin.app.workspace.activeEditor?.editor)
-				if (false && MyEditor) {
+				if (MyEditor) {
 					// Strategy 1: 使用overload后的MarkdownEditor对象
 					const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
 					const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
@@ -214,45 +226,45 @@ export class EditableCodeblock {
 					// const obCmView: EditorView = myEditor.cm;
 					// console.log('myEditor child component cm', obCmView)
 				}
-				else if (false && this.editor) {
-					// @ts-expect-error Editor without cm
-					const obCmView: EditorView = this.editor.cm
-					const obCmState: EditorState = obCmView.state
+				// else if (this.editor) {
+				// 	// @ts-expect-error Editor without cm
+				// 	const obCmView: EditorView = this.editor.cm
+				// 	const obCmState: EditorState = obCmView.state
 					
-					// Strategy 2:直接clone state,只改doc. bug: 无法加入修改检测
-					const cmState = obCmState.update({
-						changes: { from: 0, to: obCmState.doc.length, insert: this.codeblockInfo.source ?? this.codeblockInfo.source_old },
-					}).state
-					new EditorView({ // const cmView =
-						state: cmState,
-						parent: divContent // targetEl
-					})
-
-					// Strategy 3:只取extensions,生成新state. bug: ~~很难拿到全部的extension,拿到的那个基本没用~~ 有extension也似乎不起作用
-					// const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
-					// const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
-					// const containerEl = document.createElement("div")
-					// // @ts-expect-error
-					// const myEditor: MyEditor = new MyEditor(app, containerEl, controller)
-					// const obExtensions: any = myEditor.buildLocalExtensions()
-					// const cmState = EditorState.create({
-					// 	doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
-					// 	extensions: [
-					// 		// basicSetup,
-					// 		// markdown(),
-					// 		...obExtensions,
-					// 		// EditorView.updateListener.of(update => {
-					// 		// 	if (update.docChanged) {
-					// 		// 		this.codeblockInfo.source = update.state.doc.toString();
-					// 		// 	}
-					// 		// })
-					// 	]
-					// })
-					// new EditorView({ // const cmView =
-					// 	state: cmState,
-					// 	parent: divContent // targetEl
-					// })
-				}
+				// 	// Strategy 2:直接clone state,只改doc. bug: 无法加入修改检测
+				// 	const cmState = obCmState.update({
+				// 		changes: { from: 0, to: obCmState.doc.length, insert: this.codeblockInfo.source ?? this.codeblockInfo.source_old },
+				// 	}).state
+				// 	new EditorView({ // const cmView =
+				// 		state: cmState,
+				// 		parent: divContent // targetEl
+				// 	})
+
+				// 	// Strategy 3:只取extensions,生成新state. bug: ~~很难拿到全部的extension,拿到的那个基本没用~~ 有extension也似乎不起作用
+				// 	// const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
+				// 	// const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
+				// 	// const containerEl = document.createElement("div")
+				// 	// // @ts-expect-error
+				// 	// const myEditor: MyEditor = new MyEditor(app, containerEl, controller)
+				// 	// const obExtensions: any = myEditor.buildLocalExtensions()
+				// 	// const cmState = EditorState.create({
+				// 	// 	doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
+				// 	// 	extensions: [
+				// 	// 		// basicSetup,
+				// 	// 		// markdown(),
+				// 	// 		...obExtensions,
+				// 	// 		// EditorView.updateListener.of(update => {
+				// 	// 		// 	if (update.docChanged) {
+				// 	// 		// 		this.codeblockInfo.source = update.state.doc.toString();
+				// 	// 		// 	}
+				// 	// 		// })
+				// 	// 	]
+				// 	// })
+				// 	// new EditorView({ // const cmView =
+				// 	// 	state: cmState,
+				// 	// 	parent: divContent // targetEl
+				// 	// })
+				// }
 				else {
 					// Strategy 4 use ob extensions, but without ob style
 					const cmState = EditorState.create({
@@ -290,21 +302,22 @@ export class EditableCodeblock {
 					// divContent.innerText = this.codeblockInfo.source ?? this.codeblockInfo.source_old
 				}
 				
+				// only use when no use extensions event
 				// async // Maybe todo: async check
-				const elCmEditor: HTMLElement|null = divContent.querySelector('div[contenteditable=true]')
-				if (!elCmEditor) {
-					console.warn('can\'t find elCmEditor')
-					return
-				}
-				elCmEditor.focus()
-				elCmEditor.addEventListener('blur', (): void => {
-					divContent.innerHTML = ''
-					const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
-					const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
-					void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
-
-					void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
-				})
+				// const elCmEditor: HTMLElement|null = divContent.querySelector('div[contenteditable=true]')
+				// if (!elCmEditor) {
+				// 	console.warn('can\'t find elCmEditor')
+				// 	return
+				// }
+				// elCmEditor.focus()
+				// elCmEditor.addEventListener('blur', (): void => {
+				// 	divContent.innerHTML = ''
+				// 	const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
+				// 	const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
+				// 	void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
+
+				// 	void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
+				// })
 			})
 		}
 		// #endregion
diff --git a/src/EditableEditor.ts b/src/EditableEditor.ts
index e93f39a..8f098e3 100644
--- a/src/EditableEditor.ts
+++ b/src/EditableEditor.ts
@@ -6,9 +6,10 @@
  *   MarkdownEditor = Object.getPrototypeOf(Object.getPrototypeOf(md.editMode)).constructor; https://github.com/mgmeyers/obsidian-kanban/blob/main/src/main.ts#L41
  */
 
-import { Prec, type Extension } from "@codemirror/state";
-import { keymap, type EditorView } from "@codemirror/view";
-import { type App, type Editor, type TFile, type MarkdownView } from "obsidian";
+import { insertBlankLine } from '@codemirror/commands'
+import { Prec, type Extension } from "@codemirror/state"
+import { keymap, type EditorView } from "@codemirror/view"
+import { type App, type Editor, type TFile, type MarkdownView } from "obsidian"
 
 function getEditorClass(app: App): any {
 	// @ts-expect-error without embedRegistry
@@ -16,17 +17,17 @@ function getEditorClass(app: App): any {
 		{ app: app, containerEl: createDiv(), state: {} },
 		null,
 		''
-	);
+	)
 
-	md.load();
-	md.editable = true;
-	md.showEditor();
+	md.load()
+	md.editable = true
+	md.showEditor()
 
 	const MarkdownEditor: any = Object.getPrototypeOf(Object.getPrototypeOf(md.editMode)).constructor;
 
-	md.unload();
+	md.unload()
 
-	return MarkdownEditor;
+	return MarkdownEditor
 }
 
 // 伪造 controller 对象 (构造错误不影响编辑功能,但影响保存功能)
@@ -47,7 +48,10 @@ export function makeFakeController(app: App, view: MarkdownView|null, getEditor:
 
 // let extensions: any = null // global
 
-export function getMyEditor(app: App): any {
+export function getMyEditor(
+	app: App,
+	emitSave: (cm: EditorView) => void,
+): any {
 	// if (extensions !== null) return extensions
 
 	const MarkdownEditor = getEditorClass(app)
@@ -107,35 +111,43 @@ export function getMyEditor(app: App): any {
 			// }
 
 			// 监听按键 (Esc/Enter退出编辑,Mod(Shift)+Enter才是换行)
-			// extensions.push(
-			// 	Prec.highest(
-			// 		keymap.of([
-			// 			{
-			// 				key: 'Enter',
-			// 				run: (): boolean => {
-			// 					return true
-			// 				},
-			// 				shift: (): boolean => { return true },
-			// 				preventDefault: true,
-			// 			},
-			// 			{
-			// 				key: 'Mod-Enter',
-			// 				run: (): boolean => {
-			// 					this.editor.newlineAndIndentContinueMarkdownList();
-			// 					return false
-			// 				},
-			// 				shift: (): boolean => { return false },
-			// 				preventDefault: true,
-			// 			},
-			// 			{
-			// 				key: 'Escape',
-			// 				run: (): boolean => { return true },
-			// 				shift: (): boolean => { return false },
-			// 				preventDefault: true,
-			// 			},
-			// 		])
-			// 	)
-			// )
+			extensions.push(
+				Prec.highest(
+					keymap.of([
+						{
+							key: 'Enter',
+							run: (cm: EditorView): boolean => {
+								emitSave(cm)
+								return true
+							},
+							shift: (): boolean => { return false },
+							preventDefault: true,
+						},
+						{
+							key: 'Mod-Enter',
+							run: (cm: EditorView): boolean => {
+								// 根据 Obsidian 的智能缩进配置,决定换行方式
+								if (this.app.vault.getConfig('smartIndentList')) {
+									this.editor.newlineAndIndentContinueMarkdownList()
+								} else {
+									insertBlankLine(cm as any);
+								}
+								return true
+							},
+							shift: (): boolean => { return true },
+							preventDefault: true,
+						},
+						{
+							key: 'Escape',
+							run: (cm: EditorView): boolean => {
+								emitSave(cm)
+								return false
+							},
+							preventDefault: true,
+						},
+					])
+				)
+			)
 
 			return extensions;
 		}
diff --git a/src/PrismPlugin.ts b/src/PrismPlugin.ts
index 1bdfae9..b25954b 100644
--- a/src/PrismPlugin.ts
+++ b/src/PrismPlugin.ts
@@ -1,5 +1,3 @@
-/* eslint-disable */
-
 /*
  * Taken from https://github.com/PrismJS/prism/blob/master/plugins/filter-highlight-all/prism-filter-highlight-all.js
  */

From c16e835fd36976eb0d53fbd8ece1a2d1132ab8ca Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sun, 8 Jun 2025 14:38:10 +0800
Subject: [PATCH 62/66] refactor: renderCallout3

rename, add global_isLiveMode_cache
---
 src/EditableCodeblock.ts | 42 ++++++++++++-------
 src/EditableEditor.ts    | 91 +++++++++++++++++++++++++---------------
 2 files changed, 85 insertions(+), 48 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index c1d9641..973c9c0 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -26,7 +26,7 @@ import { EditorState } from '@codemirror/state';
 import { EditorView } from '@codemirror/view';
 import { markdown } from "@codemirror/lang-markdown";
 import { basicSetup } from "@codemirror/basic-setup";
-import { getMyEditor, makeFakeController } from "src/EditableEditor"
+import { getEmbedEditor, makeFakeController } from "src/EditableEditor"
 
 import {
 	transformerNotationDiff,
@@ -64,6 +64,7 @@ export interface CodeblockInfo {
 
 // RAII, use: setValue -> refresh -> getValue -> reSetNull
 let global_refresh_cache: null|{start:number, end:number} = null
+let global_isLiveMode_cache: boolean = false
 
 // Class definitions in rust style, The object is separated from the implementation
 export class EditableCodeblock {
@@ -181,7 +182,7 @@ export class EditableCodeblock {
 
 		// divContent
 		const divContent = document.createElement('div'); divCallout.appendChild(divContent); divContent.classList.add('callout-content', 'admonition-content');
-		{
+		if (this.isReadingMode || this.isMarkdownRendered || !global_isLiveMode_cache) {
 			divContent.innerHTML = ''
 			const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
 			const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
@@ -197,11 +198,11 @@ export class EditableCodeblock {
 			this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null; // 这里,通常初始化和现在的activeEditor都拿不到editor,不知道为什么
 			const view = this.plugin.app.workspace.getActiveViewOfType(MarkdownView)
 			if (view) this.editor = view.editor
-
-			divContent.addEventListener('dblclick', () => {
+			
+			const embedEditor = (): void => {
 				divContent.innerHTML = ''
 				
-				const MyEditor: new (...args: any[]) => any = getMyEditor(
+				const EmbedEditor: new (...args: any[]) => any = getEmbedEditor(
 					this.plugin.app,
 					(cm: EditorView) => {
 						this.codeblockInfo.source = cm.state.doc.toString()
@@ -211,20 +212,27 @@ export class EditableCodeblock {
 						const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
 						void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
 
+						global_isLiveMode_cache = false
 						void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
+					},
+					(cm: EditorView) => {
+						this.codeblockInfo.source = cm.state.doc.toString()
+
+						global_isLiveMode_cache = true
+						void this.saveContent_safe(false, true)
 					}
 				)
-				// console.log('extensionsC', MyEditor, this.editor, this.plugin.app.workspace.activeEditor, this.plugin.app.workspace.activeEditor?.editor)
-				if (MyEditor) {
+				// console.log('extensionsC', EmbedEditor, this.editor, this.plugin.app.workspace.activeEditor, this.plugin.app.workspace.activeEditor?.editor)
+				if (EmbedEditor) {
 					// Strategy 1: 使用overload后的MarkdownEditor对象
 					const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
 					const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
-					const myEditor: Editor = new MyEditor(this.plugin.app, divContent, controller)
+					const embedEditor: Editor = new EmbedEditor(this.plugin.app, divContent, controller)
 					// @ts-expect-error without set, if no set, cm style invalid
-					myEditor.set(this.codeblockInfo.source ?? '')
+					embedEditor.set(this.codeblockInfo.source ?? '')
 					// // @ts-expect-error without cm
-					// const obCmView: EditorView = myEditor.cm;
-					// console.log('myEditor child component cm', obCmView)
+					// const obCmView: EditorView = embedEditor.cm;
+					// console.log('embedEditor child component cm', obCmView)
 				}
 				// else if (this.editor) {
 				// 	// @ts-expect-error Editor without cm
@@ -245,8 +253,8 @@ export class EditableCodeblock {
 				// 	// const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
 				// 	// const containerEl = document.createElement("div")
 				// 	// // @ts-expect-error
-				// 	// const myEditor: MyEditor = new MyEditor(app, containerEl, controller)
-				// 	// const obExtensions: any = myEditor.buildLocalExtensions()
+				// 	// const embedEditor: EmbedEditor = new EmbedEditor(app, containerEl, controller)
+				// 	// const obExtensions: any = embedEditor.buildLocalExtensions()
 				// 	// const cmState = EditorState.create({
 				// 	// 	doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
 				// 	// 	extensions: [
@@ -318,7 +326,13 @@ export class EditableCodeblock {
 
 				// 	void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
 				// })
-			})
+			}
+
+			if (global_isLiveMode_cache) {
+				global_isLiveMode_cache = false
+				embedEditor()
+			}
+			divContent.addEventListener('dblclick', () => { embedEditor() })
 		}
 		// #endregion
 	}
diff --git a/src/EditableEditor.ts b/src/EditableEditor.ts
index 8f098e3..1e2695b 100644
--- a/src/EditableEditor.ts
+++ b/src/EditableEditor.ts
@@ -1,5 +1,6 @@
 /*
- * thanks https://github.com/Fevol/obsidian-criticmarkup/blob/6f2e8ed3fcf3a548875f7bd2fe09b9df2870e4fd/src/ui/embeddable-editor.ts
+ * thanks ~~https://github.com/Fevol/obsidian-criticmarkup/blob/6f2e8ed3fcf3a548875f7bd2fe09b9df2870e4fd/src/ui/embeddable-editor.ts~~
+ *   https://github.com/Fevol/obsidian-criticmarkup/blob/6f2e8ed3fcf3a548875f7bd2fe09b9df2870e4fd/src/ui/embeddable-editor.ts
  * thanks https://github.com/mgmeyers/obsidian-kanban/blob/main/src/components/Editor/MarkdownEditor.tsx#L134
  *   view: KanbanView
  *   plugin: KanbanPlugin https://github.com/mgmeyers/obsidian-kanban/blob/main/src/KanbanView.tsx
@@ -8,7 +9,7 @@
 
 import { insertBlankLine } from '@codemirror/commands'
 import { Prec, type Extension } from "@codemirror/state"
-import { keymap, type EditorView } from "@codemirror/view"
+import { EditorView, keymap } from "@codemirror/view"
 import { type App, type Editor, type TFile, type MarkdownView } from "obsidian"
 
 function getEditorClass(app: App): any {
@@ -48,15 +49,23 @@ export function makeFakeController(app: App, view: MarkdownView|null, getEditor:
 
 // let extensions: any = null // global
 
-export function getMyEditor(
+/**
+ * event:
+ * - 'Enter'/'Shift Enter': newLine
+ * - 'Esc': (emitFinish) save and switch real-live-mode/read-mode
+ * - 'blur': (emitSave) save but no switch
+ * - 'update': no work
+ */
+export function getEmbedEditor(
 	app: App,
+	emitFinish: (cm: EditorView) => void,
 	emitSave: (cm: EditorView) => void,
 ): any {
 	// if (extensions !== null) return extensions
 
 	const MarkdownEditor = getEditorClass(app)
 
-	class MyEditor extends MarkdownEditor {
+	class EmbedEditor extends MarkdownEditor {
 		buildLocalExtensions(): Extension[] {
 			// obsidian自带扩展 (无法兼容插件扩展的行为)
 			const extensions = super.buildLocalExtensions();
@@ -68,33 +77,30 @@ export function getMyEditor(
 			// extensions.push(datePlugins);
 
 			// 为编辑器添加 focus 和 blur 事件的监听器
-			// extensions.push(
-			// 	Prec.highest(
-			// 		EditorView.domEventHandlers({
-			// 			focus: (evt) => {
-			// 				view.activeEditor = this.owner;
-			// 				if (Platform.isMobile) {
-			// 					view.contentEl.addClass('is-mobile-editing');
-			// 				}
-			// 
-			// 				evt.win.setTimeout(() => {
-			// 					this.app.workspace.activeEditor = this.owner;
-			// 					if (Platform.isMobile) {
-			// 						app.mobileToolbar.update();
-			// 					}
-			// 				});
-			// 				return true;
-			// 			},
-			// 			blur: () => {
-			// 				if (Platform.isMobile) {
-			// 					view.contentEl.removeClass('is-mobile-editing');
-			// 					app.mobileToolbar.update();
-			// 				}
-			// 				return true;
-			// 			},
-			// 		})
-			// 	)
-			// );
+			extensions.push(
+				Prec.highest(
+					EditorView.domEventHandlers({
+						// focus: (event: FocusEvent, view: EditorView) => {
+						// 	view.activeEditor = this.owner;
+						// 	if (Platform.isMobile) {
+						// 		view.contentEl.addClass('is-mobile-editing');
+						// 	}
+			
+						// 	evt.win.setTimeout(() => {
+						// 		this.app.workspace.activeEditor = this.owner;
+						// 		if (Platform.isMobile) {
+						// 			app.mobileToolbar.update();
+						// 		}
+						// 	});
+						// 	return true;
+						// },
+						blur: (event: FocusEvent, view: EditorView) => {
+							emitSave(view)
+							return true;
+						},
+					})
+				)
+			)
 
 			// 如果传入了 placeholder,则为编辑器设置输入占位符提示文字
 			// if (placeholder) extensions.push(placeholderExt(placeholder));
@@ -117,7 +123,12 @@ export function getMyEditor(
 						{
 							key: 'Enter',
 							run: (cm: EditorView): boolean => {
-								emitSave(cm)
+								// 根据 Obsidian 的智能缩进配置,决定换行方式
+								if (this.app.vault.getConfig('smartIndentList')) {
+									this.editor.newlineAndIndentContinueMarkdownList()
+								} else {
+									insertBlankLine(cm as any);
+								}
 								return true
 							},
 							shift: (): boolean => { return false },
@@ -140,7 +151,7 @@ export function getMyEditor(
 						{
 							key: 'Escape',
 							run: (cm: EditorView): boolean => {
-								emitSave(cm)
+								emitFinish(cm)
 								return false
 							},
 							preventDefault: true,
@@ -151,7 +162,19 @@ export function getMyEditor(
 
 			return extensions;
 		}
+
+		// onUpdate(update: ViewUpdate, changed: boolean): void {
+		// 	super.onUpdate(update, changed)
+		// 		onChange(update, changed)
+		// }
+		// (update: ViewUpdate, changed: boolean) => {
+		// 	if (!changed) return
+
+		// 	this.codeblockInfo.source = update.state.doc.toString()
+
+		// 	void this.saveContent_safe(false, true)
+		// }
 	}
 
-	return MyEditor
+	return EmbedEditor
 }

From dd863b16c7d5a30d66d8c9a7016dbdde72a9e371 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sun, 8 Jun 2025 14:52:22 +0800
Subject: [PATCH 63/66] chore: optimize code, comment

---
 src/EditableCodeblock.ts | 92 +++++++---------------------------------
 src/EditableEditor.ts    | 59 ++++++++++++++++++++++++++
 2 files changed, 75 insertions(+), 76 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 973c9c0..972fce3 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -222,57 +222,15 @@ export class EditableCodeblock {
 						void this.saveContent_safe(false, true)
 					}
 				)
-				// console.log('extensionsC', EmbedEditor, this.editor, this.plugin.app.workspace.activeEditor, this.plugin.app.workspace.activeEditor?.editor)
+
 				if (EmbedEditor) {
-					// Strategy 1: 使用overload后的MarkdownEditor对象
+					// Strategy 1: use `class EmbedEditor extends MarkdownEditor`
 					const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
 					const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
 					const embedEditor: Editor = new EmbedEditor(this.plugin.app, divContent, controller)
 					// @ts-expect-error without set, if no set, cm style invalid
 					embedEditor.set(this.codeblockInfo.source ?? '')
-					// // @ts-expect-error without cm
-					// const obCmView: EditorView = embedEditor.cm;
-					// console.log('embedEditor child component cm', obCmView)
 				}
-				// else if (this.editor) {
-				// 	// @ts-expect-error Editor without cm
-				// 	const obCmView: EditorView = this.editor.cm
-				// 	const obCmState: EditorState = obCmView.state
-					
-				// 	// Strategy 2:直接clone state,只改doc. bug: 无法加入修改检测
-				// 	const cmState = obCmState.update({
-				// 		changes: { from: 0, to: obCmState.doc.length, insert: this.codeblockInfo.source ?? this.codeblockInfo.source_old },
-				// 	}).state
-				// 	new EditorView({ // const cmView =
-				// 		state: cmState,
-				// 		parent: divContent // targetEl
-				// 	})
-
-				// 	// Strategy 3:只取extensions,生成新state. bug: ~~很难拿到全部的extension,拿到的那个基本没用~~ 有extension也似乎不起作用
-				// 	// const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
-				// 	// const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
-				// 	// const containerEl = document.createElement("div")
-				// 	// // @ts-expect-error
-				// 	// const embedEditor: EmbedEditor = new EmbedEditor(app, containerEl, controller)
-				// 	// const obExtensions: any = embedEditor.buildLocalExtensions()
-				// 	// const cmState = EditorState.create({
-				// 	// 	doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
-				// 	// 	extensions: [
-				// 	// 		// basicSetup,
-				// 	// 		// markdown(),
-				// 	// 		...obExtensions,
-				// 	// 		// EditorView.updateListener.of(update => {
-				// 	// 		// 	if (update.docChanged) {
-				// 	// 		// 		this.codeblockInfo.source = update.state.doc.toString();
-				// 	// 		// 	}
-				// 	// 		// })
-				// 	// 	]
-				// 	// })
-				// 	// new EditorView({ // const cmView =
-				// 	// 	state: cmState,
-				// 	// 	parent: divContent // targetEl
-				// 	// })
-				// }
 				else {
 					// Strategy 4 use ob extensions, but without ob style
 					const cmState = EditorState.create({
@@ -292,40 +250,22 @@ export class EditableCodeblock {
 						state: cmState,
 						parent: divContent // targetEl
 					})
+					// async
+					const elCmEditor: HTMLElement|null = divContent.querySelector('div[contenteditable=true]')
+					if (!elCmEditor) {
+						console.warn('can\'t find elCmEditor')
+						return
+					}
+					elCmEditor.focus()
+					elCmEditor.addEventListener('blur', (): void => {
+						divContent.innerHTML = ''
+						const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
+						const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
+						void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
 
-					// Strategy 5 - HyperMD, but need hyperMD and codemirror same orgin
-					// const divTextarea = document.createElement('textarea'); divContent.appendChild(divTextarea);
-					// divTextarea.textContent = this.codeblockInfo.source ?? this.codeblockInfo.source_old
-					// const editor = HyperMD.fromTextArea(divTextarea, {
-					// 	mode: 'text/x-hypermd',
-					// 	lineNumbers: false,
-					// })
-
-					// Strategy 6 - MarkdownEditView, but it is difficult to create within the specified div.
-					// const leaf = this.plugin.app.workspace.getLeaf(true);
-					// const mdView = new MarkdownView(leaf)
-					// const mdEditView = new MarkdownEditView(mdView)
-
-					// Strategy 7 - innerText, but without render
-					// divContent.innerText = this.codeblockInfo.source ?? this.codeblockInfo.source_old
+						void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
+					})
 				}
-				
-				// only use when no use extensions event
-				// async // Maybe todo: async check
-				// const elCmEditor: HTMLElement|null = divContent.querySelector('div[contenteditable=true]')
-				// if (!elCmEditor) {
-				// 	console.warn('can\'t find elCmEditor')
-				// 	return
-				// }
-				// elCmEditor.focus()
-				// elCmEditor.addEventListener('blur', (): void => {
-				// 	divContent.innerHTML = ''
-				// 	const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
-				// 	const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
-				// 	void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
-
-				// 	void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
-				// })
 			}
 
 			if (global_isLiveMode_cache) {
diff --git a/src/EditableEditor.ts b/src/EditableEditor.ts
index 1e2695b..a05331b 100644
--- a/src/EditableEditor.ts
+++ b/src/EditableEditor.ts
@@ -178,3 +178,62 @@ export function getEmbedEditor(
 
 	return EmbedEditor
 }
+
+// old strategy backup
+/*else if (this.editor) {
+	// // @ts-expect-error Editor without cm
+	const obCmView: EditorView = this.editor.cm
+	const obCmState: EditorState = obCmView.state
+	
+	// Strategy 2:直接clone state,只改doc. bug: 无法加入修改检测
+	const cmState = obCmState.update({
+		changes: { from: 0, to: obCmState.doc.length, insert: this.codeblockInfo.source ?? this.codeblockInfo.source_old },
+	}).state
+	new EditorView({ // const cmView =
+		state: cmState,
+		parent: divContent // targetEl
+	})
+
+	// Strategy 3:只取extensions,生成新state. bug: ~~很难拿到全部的extension,拿到的那个基本没用~~ 有extension也似乎不起作用
+	const obView: MarkdownView|null = this.plugin.app.workspace.getActiveViewOfType(MarkdownView);
+	const controller = makeFakeController(this.plugin.app, obView??null, () => this.editor)
+	const containerEl = document.createElement("div")
+	// // @ts-expect-error
+	const embedEditor: EmbedEditor = new EmbedEditor(app, containerEl, controller)
+	const obExtensions: any = embedEditor.buildLocalExtensions()
+	const cmState = EditorState.create({
+		doc: this.codeblockInfo.source ?? this.codeblockInfo.source_old,
+		extensions: [
+			// basicSetup,
+			// markdown(),
+			...obExtensions,
+			// EditorView.updateListener.of(update => {
+			// 	if (update.docChanged) {
+			// 		this.codeblockInfo.source = update.state.doc.toString();
+			// 	}
+			// })
+		]
+	})
+	new EditorView({ // const cmView =
+		state: cmState,
+		parent: divContent // targetEl
+	})
+}
+else {
+	Strategy 5 - HyperMD, but need hyperMD and codemirror same orgin
+	const divTextarea = document.createElement('textarea'); divContent.appendChild(divTextarea);
+	divTextarea.textContent = this.codeblockInfo.source ?? this.codeblockInfo.source_old
+	const editor = HyperMD.fromTextArea(divTextarea, {
+		mode: 'text/x-hypermd',
+		lineNumbers: false,
+	})
+
+	Strategy 6 - MarkdownEditView, but it is difficult to create within the specified div.
+	const leaf = this.plugin.app.workspace.getLeaf(true);
+	const mdView = new MarkdownView(leaf)
+	const mdEditView = new MarkdownEditView(mdView)
+
+	Strategy 7 - innerText, but without render
+	divContent.innerText = this.codeblockInfo.source ?? this.codeblockInfo.source_old
+}
+*/

From ea874d4894da8648c3997174c552cd7f062099e5 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sun, 8 Jun 2025 16:54:31 +0800
Subject: [PATCH 64/66] feat: add un save flag

default liveMode
---
 src/EditableCodeblock.ts | 48 +++++++++++++++++++++-------------------
 src/EditableEditor.ts    | 18 +++++----------
 styles.css               | 13 +++++++++++
 3 files changed, 44 insertions(+), 35 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index 972fce3..d11016c 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -23,7 +23,7 @@ import { type Settings } from 'src/settings/Settings';
 // 	ViewState, livePreviewState, editorEditorField
 // } from 'obsidian';
 import { EditorState } from '@codemirror/state';
-import { EditorView } from '@codemirror/view';
+import { EditorView, ViewUpdate } from '@codemirror/view';
 import { markdown } from "@codemirror/lang-markdown";
 import { basicSetup } from "@codemirror/basic-setup";
 import { getEmbedEditor, makeFakeController } from "src/EditableEditor"
@@ -64,7 +64,7 @@ export interface CodeblockInfo {
 
 // RAII, use: setValue -> refresh -> getValue -> reSetNull
 let global_refresh_cache: null|{start:number, end:number} = null
-let global_isLiveMode_cache: boolean = false
+let global_isLiveMode_cache: boolean = true // TODO can add option, default cm or readmode // TODO add a state show: isSaved
 
 // Class definitions in rust style, The object is separated from the implementation
 export class EditableCodeblock {
@@ -183,10 +183,7 @@ export class EditableCodeblock {
 		// divContent
 		const divContent = document.createElement('div'); divCallout.appendChild(divContent); divContent.classList.add('callout-content', 'admonition-content');
 		if (this.isReadingMode || this.isMarkdownRendered || !global_isLiveMode_cache) {
-			divContent.innerHTML = ''
-			const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
-			const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
-			void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
+			void this.renderMarkdown(divContent)
 		}
 
 		// divEditBtn
@@ -206,21 +203,21 @@ export class EditableCodeblock {
 					this.plugin.app,
 					(cm: EditorView) => {
 						this.codeblockInfo.source = cm.state.doc.toString()
-						
-						divContent.innerHTML = ''
-						const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
-						const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
-						void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
-
-						global_isLiveMode_cache = false
-						void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
+						void this.renderMarkdown(divContent) // if save but nochange, will not rerender. So it is needed.
+
+						// global_isLiveMode_cache = false // TODO can add option, default cm or readmode
+						divCallout.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
 					},
 					(cm: EditorView) => {
 						this.codeblockInfo.source = cm.state.doc.toString()
 
-						global_isLiveMode_cache = true
-						void this.saveContent_safe(false, true)
-					}
+						// global_isLiveMode_cache = true // TODO can add option, default cm or readmode
+						divCallout.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
+					},
+					(update: ViewUpdate, changed: boolean) => {
+						if (!changed) return
+						divCallout.classList.add('is-no-saved');
+					},
 				)
 
 				if (EmbedEditor) {
@@ -242,6 +239,7 @@ export class EditableCodeblock {
 							EditorView.updateListener.of(update => {
 								if (update.docChanged) {
 									this.codeblockInfo.source = update.state.doc.toString();
+									divCallout.classList.add('is-no-saved');
 								}
 							})
 						]
@@ -258,18 +256,15 @@ export class EditableCodeblock {
 					}
 					elCmEditor.focus()
 					elCmEditor.addEventListener('blur', (): void => {
-						divContent.innerHTML = ''
-						const divRender = document.createElement('div'); divContent.appendChild(divRender); divRender.classList.add('markdown-rednered');
-						const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
-						void MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
+						void this.renderMarkdown(divContent) // if save but nochange, will not rerender. So it is needed.
 
-						void this.saveContent_safe(false, true) // if nochange, will not rerender. So the above code is needed.
+						divCallout.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
 					})
 				}
 			}
 
 			if (global_isLiveMode_cache) {
-				global_isLiveMode_cache = false
+				// global_isLiveMode_cache = false // TODO can add option, default cm or readmode
 				embedEditor()
 			}
 			divContent.addEventListener('dblclick', () => { embedEditor() })
@@ -677,6 +672,13 @@ export class EditableCodeblock {
 		}
 	}
 
+	renderMarkdown(targetEl: HTMLElement): Promise {
+		targetEl.innerHTML = ''
+		const divRender = document.createElement('div'); targetEl.appendChild(divRender); divRender.classList.add('markdown-rednered');
+		const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
+		return MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
+	}
+
 	// el: HTMLTextAreaElement|HTMLInputElement|HTMLPreElement
 	enableTabEmitIndent(el: HTMLElement, cb_tab?: (ev: KeyboardEvent)=>void, cb_up?: (ev: KeyboardEvent)=>void, cb_down?: (ev: KeyboardEvent)=>void): void {
 		if (!(el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement || el.isContentEditable)) return
diff --git a/src/EditableEditor.ts b/src/EditableEditor.ts
index a05331b..1e4eea8 100644
--- a/src/EditableEditor.ts
+++ b/src/EditableEditor.ts
@@ -9,7 +9,7 @@
 
 import { insertBlankLine } from '@codemirror/commands'
 import { Prec, type Extension } from "@codemirror/state"
-import { EditorView, keymap } from "@codemirror/view"
+import { EditorView, keymap, ViewUpdate } from "@codemirror/view"
 import { type App, type Editor, type TFile, type MarkdownView } from "obsidian"
 
 function getEditorClass(app: App): any {
@@ -60,6 +60,7 @@ export function getEmbedEditor(
 	app: App,
 	emitFinish: (cm: EditorView) => void,
 	emitSave: (cm: EditorView) => void,
+	onChange: (cupdate: ViewUpdate, changed: boolean) => void,
 ): any {
 	// if (extensions !== null) return extensions
 
@@ -163,17 +164,10 @@ export function getEmbedEditor(
 			return extensions;
 		}
 
-		// onUpdate(update: ViewUpdate, changed: boolean): void {
-		// 	super.onUpdate(update, changed)
-		// 		onChange(update, changed)
-		// }
-		// (update: ViewUpdate, changed: boolean) => {
-		// 	if (!changed) return
-
-		// 	this.codeblockInfo.source = update.state.doc.toString()
-
-		// 	void this.saveContent_safe(false, true)
-		// }
+		onUpdate(update: ViewUpdate, changed: boolean): void {
+			super.onUpdate(update, changed)
+				onChange(update, changed)
+		}
 	}
 
 	return EmbedEditor
diff --git a/styles.css b/styles.css
index 81b8efa..347e3a7 100644
--- a/styles.css
+++ b/styles.css
@@ -389,3 +389,16 @@ code>span.line {
 .print .mod-frontmatter {
 	display: none !important;
 }
+
+.is-no-saved::before {
+	content: "";
+	position: absolute;
+	width: 2px;
+	height: 100%;
+	left: 0;
+	top: 0;
+	background-color: yellow;
+	opacity: 0.5;
+	
+	/* border-left: solid 2px yellow !important; */
+}

From 1f1bf6c56e29b72e845cd93ffc27790b6e2618b7 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Sun, 8 Jun 2025 19:30:45 +0800
Subject: [PATCH 65/66] fix: a print error

---
 src/EditableCodeblock.ts | 19 +++++++++----------
 src/EditableEditor.ts    |  1 +
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index d11016c..c5a91a5 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -23,7 +23,7 @@ import { type Settings } from 'src/settings/Settings';
 // 	ViewState, livePreviewState, editorEditorField
 // } from 'obsidian';
 import { EditorState } from '@codemirror/state';
-import { EditorView, ViewUpdate } from '@codemirror/view';
+import { EditorView, type ViewUpdate } from '@codemirror/view';
 import { markdown } from "@codemirror/lang-markdown";
 import { basicSetup } from "@codemirror/basic-setup";
 import { getEmbedEditor, makeFakeController } from "src/EditableEditor"
@@ -64,7 +64,7 @@ export interface CodeblockInfo {
 
 // RAII, use: setValue -> refresh -> getValue -> reSetNull
 let global_refresh_cache: null|{start:number, end:number} = null
-let global_isLiveMode_cache: boolean = true // TODO can add option, default cm or readmode // TODO add a state show: isSaved
+// let global_isLiveMode_cache: boolean = true // TODO can add option, default cm or readmode // TODO add a state show: isSaved
 
 // Class definitions in rust style, The object is separated from the implementation
 export class EditableCodeblock {
@@ -85,7 +85,7 @@ export class EditableCodeblock {
 		this.editor = this.plugin.app.workspace.activeEditor?.editor ?? null;
 
 		this.isReadingMode = ctx.containerEl.hasClass('markdown-preview-section') || ctx.containerEl.hasClass('markdown-preview-view');
-		this.isMarkdownRendered = !ctx.el.hasClass('.cm-preview-code-block') && ctx.el.hasClass('markdown-rednered')
+		this.isMarkdownRendered = !ctx.el.hasClass('.cm-preview-code-block') && ctx.el.hasClass('markdown-rendered') // TODO fix: can't check codeblock in Editor codeblock
 
 		this.codeblockInfo = EditableCodeblock.createCodeBlockInfo(language_old, source_old, el, ctx)
 		this.codeblockInfo.source = this.codeblockInfo.source_old
@@ -158,7 +158,7 @@ export class EditableCodeblock {
 		//       - divIcon
 		//       - divInner
 		//     - divContent
-		//       - ( ) b1 .markdown-rednered
+		//       - ( ) b1 .markdown-rendered
 		//       - ( ) b2 .cm-editor > .cm-scroller > div.contenteditable
 		//   - divEditBtn
 
@@ -182,7 +182,7 @@ export class EditableCodeblock {
 
 		// divContent
 		const divContent = document.createElement('div'); divCallout.appendChild(divContent); divContent.classList.add('callout-content', 'admonition-content');
-		if (this.isReadingMode || this.isMarkdownRendered || !global_isLiveMode_cache) {
+		if (this.isReadingMode || this.isMarkdownRendered) {
 			void this.renderMarkdown(divContent)
 		}
 
@@ -263,10 +263,9 @@ export class EditableCodeblock {
 				}
 			}
 
-			if (global_isLiveMode_cache) {
-				// global_isLiveMode_cache = false // TODO can add option, default cm or readmode
-				embedEditor()
-			}
+			// if (global_isLiveMode_cache) {
+			// global_isLiveMode_cache = false // TODO can add option, default cm or readmode
+			embedEditor()
 			divContent.addEventListener('dblclick', () => { embedEditor() })
 		}
 		// #endregion
@@ -674,7 +673,7 @@ export class EditableCodeblock {
 
 	renderMarkdown(targetEl: HTMLElement): Promise {
 		targetEl.innerHTML = ''
-		const divRender = document.createElement('div'); targetEl.appendChild(divRender); divRender.classList.add('markdown-rednered');
+		const divRender = document.createElement('div'); targetEl.appendChild(divRender); divRender.classList.add('markdown-rendered');
 		const mdrc: MarkdownRenderChild = new MarkdownRenderChild(divRender);
 		return MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
 	}
diff --git a/src/EditableEditor.ts b/src/EditableEditor.ts
index 1e4eea8..dcd163b 100644
--- a/src/EditableEditor.ts
+++ b/src/EditableEditor.ts
@@ -32,6 +32,7 @@ function getEditorClass(app: App): any {
 }
 
 // 伪造 controller 对象 (构造错误不影响编辑功能,但影响保存功能)
+// 对应 ctx.containerEl div.cm-scroller
 export function makeFakeController(app: App, view: MarkdownView|null, getEditor: () => Editor|null): Record {
 	return {
 		app,

From 5d2c46d0bafd99d29458fca1d2f59af89c9fd518 Mon Sep 17 00:00:00 2001
From: Linc <762699299@qq.com>
Date: Mon, 9 Jun 2025 17:31:25 +0800
Subject: [PATCH 66/66] enhance: code highlight add unsave flag

---
 src/EditableCodeblock.ts | 34 +++++++++++++++++++---------------
 styles.css               |  3 ++-
 2 files changed, 21 insertions(+), 16 deletions(-)

diff --git a/src/EditableCodeblock.ts b/src/EditableCodeblock.ts
index c5a91a5..9798f93 100644
--- a/src/EditableCodeblock.ts
+++ b/src/EditableCodeblock.ts
@@ -152,7 +152,7 @@ export class EditableCodeblock {
 	}
 
 	renderCallout(): void {
-		// - divAd
+		// - div
 		//   - divCallout
 		//     - divTitle
 		//       - divIcon
@@ -162,13 +162,13 @@ export class EditableCodeblock {
 		//       - ( ) b2 .cm-editor > .cm-scroller > div.contenteditable
 		//   - divEditBtn
 
-		// divAd
-		const divAd = document.createElement('div'); this.el.appendChild(divAd); divAd.classList.add(
+		// div
+		const div = document.createElement('div'); this.el.appendChild(div); div.classList.add(
 			'cm-preview-code-block', 'cm-embed-block', 'markdown-rendered', 'admonition-parent', 'admonition-tip-parent',
 		)
 
 		// divCallout
-		const divCallout = document.createElement('div'); divAd.appendChild(divCallout); divCallout.classList.add(
+		const divCallout = document.createElement('div'); div.appendChild(divCallout); divCallout.classList.add(
 			'callout', 'admonition', 'admonition-tip', 'admonition-plugin'
 		);
 		divCallout.setAttribute('data-callout', this.codeblockInfo.language_type.slice(3)); divCallout.setAttribute('data-callout-fold', ''); divCallout.setAttribute('data-callout-metadata', '')
@@ -187,7 +187,7 @@ export class EditableCodeblock {
 		}
 
 		// divEditBtn
-		const divEditBtn = document.createElement('div'); divAd.appendChild(divEditBtn); divEditBtn.classList.add('edit-block-button')
+		const divEditBtn = document.createElement('div'); div.appendChild(divEditBtn); divEditBtn.classList.add('edit-block-button')
 		divEditBtn.innerHTML = ``
 
 		// #region divContent async part
@@ -206,17 +206,17 @@ export class EditableCodeblock {
 						void this.renderMarkdown(divContent) // if save but nochange, will not rerender. So it is needed.
 
 						// global_isLiveMode_cache = false // TODO can add option, default cm or readmode
-						divCallout.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
+						div.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
 					},
 					(cm: EditorView) => {
 						this.codeblockInfo.source = cm.state.doc.toString()
 
 						// global_isLiveMode_cache = true // TODO can add option, default cm or readmode
-						divCallout.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
+						div.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
 					},
 					(update: ViewUpdate, changed: boolean) => {
 						if (!changed) return
-						divCallout.classList.add('is-no-saved');
+						div.classList.add('is-no-saved');
 					},
 				)
 
@@ -239,7 +239,7 @@ export class EditableCodeblock {
 							EditorView.updateListener.of(update => {
 								if (update.docChanged) {
 									this.codeblockInfo.source = update.state.doc.toString();
-									divCallout.classList.add('is-no-saved');
+									div.classList.add('is-no-saved');
 								}
 							})
 						]
@@ -258,7 +258,7 @@ export class EditableCodeblock {
 					elCmEditor.addEventListener('blur', (): void => {
 						void this.renderMarkdown(divContent) // if save but nochange, will not rerender. So it is needed.
 
-						divCallout.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
+						div.classList.remove('is-no-saved'); void this.saveContent_safe(false, true);
 					})
 				}
 			}
@@ -335,11 +335,12 @@ export class EditableCodeblock {
 				const newValue = (ev.target as HTMLTextAreaElement).value
 				this.codeblockInfo.source = newValue
 				void this.renderPre(span)
+				div.classList.add('is-no-saved');
 			}
 			textarea.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
 				const newValue = (ev.target as HTMLTextAreaElement).value
 				this.codeblockInfo.source = newValue
-				void this.saveContent_safe(false, true)
+				div.classList.remove('is-no-saved'); void this.saveContent_safe(false, true)
 			}
 		}
 		// refresh/save strategy2: cache and rebuild
@@ -366,7 +367,7 @@ export class EditableCodeblock {
 					start: textarea.selectionStart,
 					end: textarea.selectionEnd,
 				}
-				void this.saveContent_safe(false, true)
+				div.classList.remove('is-no-saved'); void this.saveContent_safe(false, true)
 			}
 		}
 		// #endregion
@@ -387,6 +388,7 @@ export class EditableCodeblock {
 				this.codeblockInfo.language_type = match[1]
 				this.codeblockInfo.language_meta = match[2]
 				void this.renderPre(span)
+				div.classList.add('is-no-saved'); 
 			}
 			editInput.onchange = (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
 				const newValue = (ev.target as HTMLInputElement).value
@@ -394,7 +396,7 @@ export class EditableCodeblock {
 				if (!match) throw new Error('This is not a regular expression matching that may fail')
 				this.codeblockInfo.language_type = match[1]
 				this.codeblockInfo.language_meta = match[2]
-				void this.saveContent_safe(true, false)
+				div.classList.remove('is-no-saved'); void this.saveContent_safe(true, false)
 			}
 		}
 		// #endregion
@@ -487,6 +489,7 @@ export class EditableCodeblock {
 
 					// pre, code
 					await this.renderPre(div, code)
+					div.classList.add('is-no-saved');
 
 					// restore pos
 					code.setAttribute('contenteditable', 'true'); code.setAttribute('spellcheck', 'false')
@@ -500,7 +503,7 @@ export class EditableCodeblock {
 			code.addEventListener('blur', (ev): void => { // save must on oninput: avoid: textarea --update--> source update --update--> textarea (lose curosr position)
 				const newValue = (ev.target as HTMLPreElement).innerText // .textContent more fast, but can't get new line by 'return' (\n yes, br no)
 				this.codeblockInfo.source = newValue // prism use textContent and shiki use innerHTML, Their escapes from `` are different
-				void this.saveContent_safe(false, true)
+				div.classList.remove('is-no-saved'); void this.saveContent_safe(false, true)
 			})
 		}
 		// refresh/save strategy2: cache and rebuild
@@ -523,7 +526,7 @@ export class EditableCodeblock {
 
 
 				global_refresh_cache = this.renderEditablePre_saveCursorPosition(pre)
-				void this.saveContent_safe(false, true)
+				div.classList.remove('is-no-saved'); void this.saveContent_safe(false, true)
 			}
 		}
 		// #endregion
@@ -678,6 +681,7 @@ export class EditableCodeblock {
 		return MarkdownRenderer.render(this.plugin.app, this.codeblockInfo.source ?? this.codeblockInfo.source_old, divRender, this.plugin.app.workspace.getActiveViewOfType(MarkdownView)?.file?.path??"", mdrc)
 	}
 
+	// TODO: fix: after edit, can't up/down to root editor
 	// el: HTMLTextAreaElement|HTMLInputElement|HTMLPreElement
 	enableTabEmitIndent(el: HTMLElement, cb_tab?: (ev: KeyboardEvent)=>void, cb_up?: (ev: KeyboardEvent)=>void, cb_down?: (ev: KeyboardEvent)=>void): void {
 		if (!(el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement || el.isContentEditable)) return
diff --git a/styles.css b/styles.css
index 347e3a7..f951759 100644
--- a/styles.css
+++ b/styles.css
@@ -397,8 +397,9 @@ code>span.line {
 	height: 100%;
 	left: 0;
 	top: 0;
-	background-color: yellow;
+	background-color: currentColor;
 	opacity: 0.5;
+	z-index: 10;
 	
 	/* border-left: solid 2px yellow !important; */
 }