bridgerte 0.9.22 → 0.9.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -9
- package/dist/assets/abap-5JJ_uXwM.js +8 -0
- package/dist/assets/abap-5JJ_uXwM.js.map +1 -0
- package/dist/assets/actionscript-3-DE1C41bY.js +8 -0
- package/dist/assets/actionscript-3-DE1C41bY.js.map +1 -0
- package/dist/assets/ada-BG05PpOB.js +8 -0
- package/dist/assets/ada-BG05PpOB.js.map +1 -0
- package/dist/assets/andromeeda-BY_rNuBQ.js +5 -0
- package/dist/assets/andromeeda-BY_rNuBQ.js.map +1 -0
- package/dist/assets/angular-html-aal4wZP4.js +42 -0
- package/dist/assets/angular-html-aal4wZP4.js.map +1 -0
- package/dist/assets/angular-ts-DAE48Xv3.js +30 -0
- package/dist/assets/angular-ts-DAE48Xv3.js.map +1 -0
- package/dist/assets/apache-D7jlTOw0.js +8 -0
- package/dist/assets/apache-D7jlTOw0.js.map +1 -0
- package/dist/assets/apex-B5cHO7Zb.js +8 -0
- package/dist/assets/apex-B5cHO7Zb.js.map +1 -0
- package/dist/assets/apl-KqhKRlqN.js +19 -0
- package/dist/assets/apl-KqhKRlqN.js.map +1 -0
- package/dist/assets/applescript-guFn5j4s.js +8 -0
- package/dist/assets/applescript-guFn5j4s.js.map +1 -0
- package/dist/assets/ara-D87wAYhe.js +8 -0
- package/dist/assets/ara-D87wAYhe.js.map +1 -0
- package/dist/assets/asciidoc-DHU272__.js +8 -0
- package/dist/assets/asciidoc-DHU272__.js.map +1 -0
- package/dist/assets/asm-BIl1E4lX.js +8 -0
- package/dist/assets/asm-BIl1E4lX.js.map +1 -0
- package/dist/assets/astro-CoyRAbIC.js +20 -0
- package/dist/assets/astro-CoyRAbIC.js.map +1 -0
- package/dist/assets/aurora-x-C6DmnWDt.js +5 -0
- package/dist/assets/aurora-x-C6DmnWDt.js.map +1 -0
- package/dist/assets/awk-x1P7Yy6J.js +8 -0
- package/dist/assets/awk-x1P7Yy6J.js.map +1 -0
- package/dist/assets/ayu-dark-DwU3UN-n.js +5 -0
- package/dist/assets/ayu-dark-DwU3UN-n.js.map +1 -0
- package/dist/assets/ayu-light-BeSY2ZJx.js +5 -0
- package/dist/assets/ayu-light-BeSY2ZJx.js.map +1 -0
- package/dist/assets/ayu-mirage-EiPwM0mG.js +5 -0
- package/dist/assets/ayu-mirage-EiPwM0mG.js.map +1 -0
- package/dist/assets/ballerina-D1k6pTDA.js +8 -0
- package/dist/assets/ballerina-D1k6pTDA.js.map +1 -0
- package/dist/assets/bat-CKn1WSW3.js +8 -0
- package/dist/assets/bat-CKn1WSW3.js.map +1 -0
- package/dist/assets/beancount-1v_PY4BB.js +8 -0
- package/dist/assets/beancount-1v_PY4BB.js.map +1 -0
- package/dist/assets/berry-ChXc1sMd.js +8 -0
- package/dist/assets/berry-ChXc1sMd.js.map +1 -0
- package/dist/assets/bibtex-YjwILF7F.js +8 -0
- package/dist/assets/bibtex-YjwILF7F.js.map +1 -0
- package/dist/assets/bicep-C0D_R8_K.js +8 -0
- package/dist/assets/bicep-C0D_R8_K.js.map +1 -0
- package/dist/assets/bird2-DDRneDX_.js +8 -0
- package/dist/assets/bird2-DDRneDX_.js.map +1 -0
- package/dist/assets/blade-FnIjT1E3.js +23 -0
- package/dist/assets/blade-FnIjT1E3.js.map +1 -0
- package/dist/assets/bsl-DJzmyrer.js +10 -0
- package/dist/assets/bsl-DJzmyrer.js.map +1 -0
- package/dist/assets/c-xjDmHeY4.js +8 -0
- package/dist/assets/c-xjDmHeY4.js.map +1 -0
- package/dist/assets/c3-ifVI-lyl.js +8 -0
- package/dist/assets/c3-ifVI-lyl.js.map +1 -0
- package/dist/assets/cadence-4_3YDhNk.js +8 -0
- package/dist/assets/cadence-4_3YDhNk.js.map +1 -0
- package/dist/assets/cairo-CckC4pbv.js +10 -0
- package/dist/assets/cairo-CckC4pbv.js.map +1 -0
- package/dist/assets/catppuccin-frappe-B5VVdV_e.js +5 -0
- package/dist/assets/catppuccin-frappe-B5VVdV_e.js.map +1 -0
- package/dist/assets/catppuccin-latte-D8pvGdu1.js +5 -0
- package/dist/assets/catppuccin-latte-D8pvGdu1.js.map +1 -0
- package/dist/assets/catppuccin-macchiato-HRcjrIrY.js +5 -0
- package/dist/assets/catppuccin-macchiato-HRcjrIrY.js.map +1 -0
- package/dist/assets/catppuccin-mocha-CIwIEnSB.js +5 -0
- package/dist/assets/catppuccin-mocha-CIwIEnSB.js.map +1 -0
- package/dist/assets/clarity-LYkNoMZG.js +8 -0
- package/dist/assets/clarity-LYkNoMZG.js.map +1 -0
- package/dist/assets/clojure-BKPgNuET.js +8 -0
- package/dist/assets/clojure-BKPgNuET.js.map +1 -0
- package/dist/assets/cmake-DKfc4EHO.js +8 -0
- package/dist/assets/cmake-DKfc4EHO.js.map +1 -0
- package/dist/assets/cobol-BitaBRgT.js +14 -0
- package/dist/assets/cobol-BitaBRgT.js.map +1 -0
- package/dist/assets/codeowners-CGzOUqRt.js +8 -0
- package/dist/assets/codeowners-CGzOUqRt.js.map +1 -0
- package/dist/assets/codeql-CB2tU2yr.js +8 -0
- package/dist/assets/codeql-CB2tU2yr.js.map +1 -0
- package/dist/assets/coffee-CZwg37T3.js +10 -0
- package/dist/assets/coffee-CZwg37T3.js.map +1 -0
- package/dist/assets/common-lisp-Dpa6SDDF.js +8 -0
- package/dist/assets/common-lisp-Dpa6SDDF.js.map +1 -0
- package/dist/assets/coq-BcttDLdJ.js +8 -0
- package/dist/assets/coq-BcttDLdJ.js.map +1 -0
- package/dist/assets/cpp-BlAh3S4C.js +23 -0
- package/dist/assets/cpp-BlAh3S4C.js.map +1 -0
- package/dist/assets/crystal-Bs9TFo_P.js +20 -0
- package/dist/assets/crystal-Bs9TFo_P.js.map +1 -0
- package/dist/assets/csharp-DSxyDUiT.js +8 -0
- package/dist/assets/csharp-DSxyDUiT.js.map +1 -0
- package/dist/assets/css-C_jsWB7w.js +8 -0
- package/dist/assets/css-C_jsWB7w.js.map +1 -0
- package/dist/assets/csv-DH-1IWvI.js +8 -0
- package/dist/assets/csv-DH-1IWvI.js.map +1 -0
- package/dist/assets/cue-HSbRnhKw.js +8 -0
- package/dist/assets/cue-HSbRnhKw.js.map +1 -0
- package/dist/assets/cypher-DoZ7GUDp.js +8 -0
- package/dist/assets/cypher-DoZ7GUDp.js.map +1 -0
- package/dist/assets/d-CeeVpqRv.js +8 -0
- package/dist/assets/d-CeeVpqRv.js.map +1 -0
- package/dist/assets/dark-plus-BZtx1JS2.js +5 -0
- package/dist/assets/dark-plus-BZtx1JS2.js.map +1 -0
- package/dist/assets/dart-CfpH2ytW.js +8 -0
- package/dist/assets/dart-CfpH2ytW.js.map +1 -0
- package/dist/assets/dax-B2DK8VnI.js +8 -0
- package/dist/assets/dax-B2DK8VnI.js.map +1 -0
- package/dist/assets/desktop-C_92N0gp.js +8 -0
- package/dist/assets/desktop-C_92N0gp.js.map +1 -0
- package/dist/assets/diff-CIoVq7iw.js +8 -0
- package/dist/assets/diff-CIoVq7iw.js.map +1 -0
- package/dist/assets/docker-C_b4d5MG.js +8 -0
- package/dist/assets/docker-C_b4d5MG.js.map +1 -0
- package/dist/assets/dotenv-CTk-83yR.js +8 -0
- package/dist/assets/dotenv-CTk-83yR.js.map +1 -0
- package/dist/assets/dracula-C90mcX-J.js +5 -0
- package/dist/assets/dracula-C90mcX-J.js.map +1 -0
- package/dist/assets/dracula-soft-CfxSDbho.js +5 -0
- package/dist/assets/dracula-soft-CfxSDbho.js.map +1 -0
- package/dist/assets/dream-maker-BRhjIgJd.js +8 -0
- package/dist/assets/dream-maker-BRhjIgJd.js.map +1 -0
- package/dist/assets/edge-ChLL70qB.js +16 -0
- package/dist/assets/edge-ChLL70qB.js.map +1 -0
- package/dist/assets/elixir-Cn03DtOX.js +12 -0
- package/dist/assets/elixir-Cn03DtOX.js.map +1 -0
- package/dist/assets/elm-BIz5FEly.js +11 -0
- package/dist/assets/elm-BIz5FEly.js.map +1 -0
- package/dist/assets/emacs-lisp-BPa43G0X.js +8 -0
- package/dist/assets/emacs-lisp-BPa43G0X.js.map +1 -0
- package/dist/assets/erb-DnDXmOFA.js +29 -0
- package/dist/assets/erb-DnDXmOFA.js.map +1 -0
- package/dist/assets/erlang-Bs5tgDCH.js +10 -0
- package/dist/assets/erlang-Bs5tgDCH.js.map +1 -0
- package/dist/assets/everforest-dark-WkkMlVdr.js +5 -0
- package/dist/assets/everforest-dark-WkkMlVdr.js.map +1 -0
- package/dist/assets/everforest-light-BnEIoJmx.js +5 -0
- package/dist/assets/everforest-light-BnEIoJmx.js.map +1 -0
- package/dist/assets/fennel-Bcsiz5ip.js +8 -0
- package/dist/assets/fennel-Bcsiz5ip.js.map +1 -0
- package/dist/assets/fish-DHyTDlfQ.js +8 -0
- package/dist/assets/fish-DHyTDlfQ.js.map +1 -0
- package/dist/assets/fluent-4neBKDDj.js +8 -0
- package/dist/assets/fluent-4neBKDDj.js.map +1 -0
- package/dist/assets/fortran-fixed-form-CzBifAhA.js +10 -0
- package/dist/assets/fortran-fixed-form-CzBifAhA.js.map +1 -0
- package/dist/assets/fortran-free-form-CgyZ4k0y.js +8 -0
- package/dist/assets/fortran-free-form-CgyZ4k0y.js.map +1 -0
- package/dist/assets/fsharp-9GbbySMJ.js +10 -0
- package/dist/assets/fsharp-9GbbySMJ.js.map +1 -0
- package/dist/assets/gdresource-DNKHowPg.js +12 -0
- package/dist/assets/gdresource-DNKHowPg.js.map +1 -0
- package/dist/assets/gdscript-BsvbToqr.js +8 -0
- package/dist/assets/gdscript-BsvbToqr.js.map +1 -0
- package/dist/assets/gdshader-OUoLz6Pt.js +8 -0
- package/dist/assets/gdshader-OUoLz6Pt.js.map +1 -0
- package/dist/assets/genie-CCD_4Lwj.js +8 -0
- package/dist/assets/genie-CCD_4Lwj.js.map +1 -0
- package/dist/assets/gherkin-DtBWBYmY.js +8 -0
- package/dist/assets/gherkin-DtBWBYmY.js.map +1 -0
- package/dist/assets/git-commit-CIBsd3Oe.js +10 -0
- package/dist/assets/git-commit-CIBsd3Oe.js.map +1 -0
- package/dist/assets/git-rebase-Bsia5skB.js +10 -0
- package/dist/assets/git-rebase-Bsia5skB.js.map +1 -0
- package/dist/assets/github-dark-Crb_T9c1.js +5 -0
- package/dist/assets/github-dark-Crb_T9c1.js.map +1 -0
- package/dist/assets/github-dark-default-CrymNA3e.js +5 -0
- package/dist/assets/github-dark-default-CrymNA3e.js.map +1 -0
- package/dist/assets/github-dark-dimmed-DVypsQQ6.js +5 -0
- package/dist/assets/github-dark-dimmed-DVypsQQ6.js.map +1 -0
- package/dist/assets/github-dark-high-contrast-oosJriQF.js +5 -0
- package/dist/assets/github-dark-high-contrast-oosJriQF.js.map +1 -0
- package/dist/assets/github-light-DzgloXIJ.js +5 -0
- package/dist/assets/github-light-DzgloXIJ.js.map +1 -0
- package/dist/assets/github-light-default-BUaqj3Kk.js +5 -0
- package/dist/assets/github-light-default-BUaqj3Kk.js.map +1 -0
- package/dist/assets/github-light-high-contrast-Be7TuOaG.js +5 -0
- package/dist/assets/github-light-high-contrast-Be7TuOaG.js.map +1 -0
- package/dist/assets/gleam-Bby7sLtj.js +8 -0
- package/dist/assets/gleam-Bby7sLtj.js.map +1 -0
- package/dist/assets/glimmer-js-K1ky8h51.js +16 -0
- package/dist/assets/glimmer-js-K1ky8h51.js.map +1 -0
- package/dist/assets/glimmer-ts-Glf2iriO.js +16 -0
- package/dist/assets/glimmer-ts-Glf2iriO.js.map +1 -0
- package/dist/assets/glsl-B7qnt91l.js +10 -0
- package/dist/assets/glsl-B7qnt91l.js.map +1 -0
- package/dist/assets/gn-BZhHIoL6.js +8 -0
- package/dist/assets/gn-BZhHIoL6.js.map +1 -0
- package/dist/assets/gnuplot-ko8wwdty.js +8 -0
- package/dist/assets/gnuplot-ko8wwdty.js.map +1 -0
- package/dist/assets/go-bOxRwq8F.js +8 -0
- package/dist/assets/go-bOxRwq8F.js.map +1 -0
- package/dist/assets/graphql-DkLU_y6F.js +16 -0
- package/dist/assets/graphql-DkLU_y6F.js.map +1 -0
- package/dist/assets/groovy-CnONGBTg.js +8 -0
- package/dist/assets/groovy-CnONGBTg.js.map +1 -0
- package/dist/assets/gruvbox-dark-hard-w2v6PtUq.js +5 -0
- package/dist/assets/gruvbox-dark-hard-w2v6PtUq.js.map +1 -0
- package/dist/assets/gruvbox-dark-medium-BkadlV_U.js +5 -0
- package/dist/assets/gruvbox-dark-medium-BkadlV_U.js.map +1 -0
- package/dist/assets/gruvbox-dark-soft-BHFO6CEk.js +5 -0
- package/dist/assets/gruvbox-dark-soft-BHFO6CEk.js.map +1 -0
- package/dist/assets/gruvbox-light-hard-9A_pD-e-.js +5 -0
- package/dist/assets/gruvbox-light-hard-9A_pD-e-.js.map +1 -0
- package/dist/assets/gruvbox-light-medium-DS4uqfa1.js +5 -0
- package/dist/assets/gruvbox-light-medium-DS4uqfa1.js.map +1 -0
- package/dist/assets/gruvbox-light-soft-qMWiTKK4.js +5 -0
- package/dist/assets/gruvbox-light-soft-qMWiTKK4.js.map +1 -0
- package/dist/assets/hack-gfrPUlig.js +14 -0
- package/dist/assets/hack-gfrPUlig.js.map +1 -0
- package/dist/assets/haml-B4EqXRg_.js +12 -0
- package/dist/assets/haml-B4EqXRg_.js.map +1 -0
- package/dist/assets/handlebars-YxgQMD1d.js +16 -0
- package/dist/assets/handlebars-YxgQMD1d.js.map +1 -0
- package/dist/assets/haskell-2dsAc57b.js +8 -0
- package/dist/assets/haskell-2dsAc57b.js.map +1 -0
- package/dist/assets/haxe-OKRacM9E.js +8 -0
- package/dist/assets/haxe-OKRacM9E.js.map +1 -0
- package/dist/assets/hcl-DWQu2dqK.js +8 -0
- package/dist/assets/hcl-DWQu2dqK.js.map +1 -0
- package/dist/assets/hjson-By_UsfXI.js +8 -0
- package/dist/assets/hjson-By_UsfXI.js.map +1 -0
- package/dist/assets/hlsl-DA61eaD3.js +8 -0
- package/dist/assets/hlsl-DA61eaD3.js.map +1 -0
- package/dist/assets/horizon-BAcSmUQx.js +5 -0
- package/dist/assets/horizon-BAcSmUQx.js.map +1 -0
- package/dist/assets/horizon-bright-BIr1qV5K.js +5 -0
- package/dist/assets/horizon-bright-BIr1qV5K.js.map +1 -0
- package/dist/assets/houston-CK0N9cPp.js +5 -0
- package/dist/assets/houston-CK0N9cPp.js.map +1 -0
- package/dist/assets/html-derivative-DNVkVN8y.js +12 -0
- package/dist/assets/html-derivative-DNVkVN8y.js.map +1 -0
- package/dist/assets/html-hx4Wfyw6.js +12 -0
- package/dist/assets/html-hx4Wfyw6.js.map +1 -0
- package/dist/assets/http-CVXrBmpc.js +21 -0
- package/dist/assets/http-CVXrBmpc.js.map +1 -0
- package/dist/assets/hurl-B08iSRaK.js +19 -0
- package/dist/assets/hurl-B08iSRaK.js.map +1 -0
- package/dist/assets/hxml-CwhzGRqU.js +10 -0
- package/dist/assets/hxml-CwhzGRqU.js.map +1 -0
- package/dist/assets/hy-B23VqsRP.js +8 -0
- package/dist/assets/hy-B23VqsRP.js.map +1 -0
- package/dist/assets/imba-C1GSCVFf.js +8 -0
- package/dist/assets/imba-C1GSCVFf.js.map +1 -0
- package/dist/assets/ini-r1O4-awP.js +8 -0
- package/dist/assets/ini-r1O4-awP.js.map +1 -0
- package/dist/assets/java-Bl-5EZmB.js +8 -0
- package/dist/assets/java-Bl-5EZmB.js.map +1 -0
- package/dist/assets/javascript-Cq55jE6w.js +8 -0
- package/dist/assets/javascript-Cq55jE6w.js.map +1 -0
- package/dist/assets/jinja-hp_3bha4.js +17 -0
- package/dist/assets/jinja-hp_3bha4.js.map +1 -0
- package/dist/assets/jison-9WPWo0xg.js +10 -0
- package/dist/assets/jison-9WPWo0xg.js.map +1 -0
- package/dist/assets/json-CndaR9w5.js +8 -0
- package/dist/assets/json-CndaR9w5.js.map +1 -0
- package/dist/assets/json5-C8Jm9K5X.js +8 -0
- package/dist/assets/json5-C8Jm9K5X.js.map +1 -0
- package/dist/assets/jsonc-mlgADggJ.js +8 -0
- package/dist/assets/jsonc-mlgADggJ.js.map +1 -0
- package/dist/assets/jsonl-CBj3pbR_.js +8 -0
- package/dist/assets/jsonl-CBj3pbR_.js.map +1 -0
- package/dist/assets/jsonnet-B_sZ3RZB.js +8 -0
- package/dist/assets/jsonnet-B_sZ3RZB.js.map +1 -0
- package/dist/assets/jssm-CvtepJVU.js +8 -0
- package/dist/assets/jssm-CvtepJVU.js.map +1 -0
- package/dist/assets/jsx-BfjkQ0v5.js +8 -0
- package/dist/assets/jsx-BfjkQ0v5.js.map +1 -0
- package/dist/assets/julia-Dnhsueg9.js +21 -0
- package/dist/assets/julia-Dnhsueg9.js.map +1 -0
- package/dist/assets/just-6vIP7wP9.js +35 -0
- package/dist/assets/just-6vIP7wP9.js.map +1 -0
- package/dist/assets/kanagawa-dragon-Dgsvhj-I.js +5 -0
- package/dist/assets/kanagawa-dragon-Dgsvhj-I.js.map +1 -0
- package/dist/assets/kanagawa-lotus-bk4_W8LM.js +5 -0
- package/dist/assets/kanagawa-lotus-bk4_W8LM.js.map +1 -0
- package/dist/assets/kanagawa-wave-CVNUZ7bU.js +5 -0
- package/dist/assets/kanagawa-wave-CVNUZ7bU.js.map +1 -0
- package/dist/assets/kdl-CwdrBlJU.js +8 -0
- package/dist/assets/kdl-CwdrBlJU.js.map +1 -0
- package/dist/assets/kotlin-K4QQzEsQ.js +8 -0
- package/dist/assets/kotlin-K4QQzEsQ.js.map +1 -0
- package/dist/assets/kusto-CgER6Sxt.js +8 -0
- package/dist/assets/kusto-CgER6Sxt.js.map +1 -0
- package/dist/assets/laserwave-BU7zaG-q.js +5 -0
- package/dist/assets/laserwave-BU7zaG-q.js.map +1 -0
- package/dist/assets/latex-vw5kx6SC.js +11 -0
- package/dist/assets/latex-vw5kx6SC.js.map +1 -0
- package/dist/assets/lean-Cp_iMYZj.js +8 -0
- package/dist/assets/lean-Cp_iMYZj.js.map +1 -0
- package/dist/assets/less-CFxJbkOX.js +8 -0
- package/dist/assets/less-CFxJbkOX.js.map +1 -0
- package/dist/assets/light-plus-CCnaaxEe.js +5 -0
- package/dist/assets/light-plus-CCnaaxEe.js.map +1 -0
- package/dist/assets/liquid-ME1IH2EZ.js +16 -0
- package/dist/assets/liquid-ME1IH2EZ.js.map +1 -0
- package/dist/assets/llvm-DXF2zqxJ.js +8 -0
- package/dist/assets/llvm-DXF2zqxJ.js.map +1 -0
- package/dist/assets/log-BhdudKf6.js +8 -0
- package/dist/assets/log-BhdudKf6.js.map +1 -0
- package/dist/assets/logo-DdZuFRsA.js +8 -0
- package/dist/assets/logo-DdZuFRsA.js.map +1 -0
- package/dist/assets/lua-CNzUJNrS.js +10 -0
- package/dist/assets/lua-CNzUJNrS.js.map +1 -0
- package/dist/assets/luau-BbRxrK_-.js +8 -0
- package/dist/assets/luau-BbRxrK_-.js.map +1 -0
- package/dist/assets/make-CzMpGB61.js +8 -0
- package/dist/assets/make-CzMpGB61.js.map +1 -0
- package/dist/assets/markdown-BIyFz8QW.js +8 -0
- package/dist/assets/markdown-BIyFz8QW.js.map +1 -0
- package/dist/assets/marko-CDeO252B.js +16 -0
- package/dist/assets/marko-CDeO252B.js.map +1 -0
- package/dist/assets/material-theme-B-3T0qQC.js +5 -0
- package/dist/assets/material-theme-B-3T0qQC.js.map +1 -0
- package/dist/assets/material-theme-darker-DMHCIvq5.js +5 -0
- package/dist/assets/material-theme-darker-DMHCIvq5.js.map +1 -0
- package/dist/assets/material-theme-lighter-CnKSyNS5.js +5 -0
- package/dist/assets/material-theme-lighter-CnKSyNS5.js.map +1 -0
- package/dist/assets/material-theme-ocean-BKq6ZsFv.js +5 -0
- package/dist/assets/material-theme-ocean-BKq6ZsFv.js.map +1 -0
- package/dist/assets/material-theme-palenight-BaYUoLXq.js +5 -0
- package/dist/assets/material-theme-palenight-BaYUoLXq.js.map +1 -0
- package/dist/assets/matlab-CJkuh4eh.js +8 -0
- package/dist/assets/matlab-CJkuh4eh.js.map +1 -0
- package/dist/assets/mdc-DmwRfDxK.js +17 -0
- package/dist/assets/mdc-DmwRfDxK.js.map +1 -0
- package/dist/assets/mdx-DBtujtWe.js +8 -0
- package/dist/assets/mdx-DBtujtWe.js.map +1 -0
- package/dist/assets/mermaid-HX_erI9P.js +8 -0
- package/dist/assets/mermaid-HX_erI9P.js.map +1 -0
- package/dist/assets/min-dark-YawBJZLm.js +5 -0
- package/dist/assets/min-dark-YawBJZLm.js.map +1 -0
- package/dist/assets/min-light-CqsTzpMg.js +5 -0
- package/dist/assets/min-light-CqsTzpMg.js.map +1 -0
- package/dist/assets/mipsasm-CCIl-TEQ.js +8 -0
- package/dist/assets/mipsasm-CCIl-TEQ.js.map +1 -0
- package/dist/assets/mojo-0bwzCFgd.js +8 -0
- package/dist/assets/mojo-0bwzCFgd.js.map +1 -0
- package/dist/assets/monokai-DaNL4wHF.js +5 -0
- package/dist/assets/monokai-DaNL4wHF.js.map +1 -0
- package/dist/assets/moonbit-h33aWjYl.js +8 -0
- package/dist/assets/moonbit-h33aWjYl.js.map +1 -0
- package/dist/assets/move-B0UfBCDq.js +8 -0
- package/dist/assets/move-B0UfBCDq.js.map +1 -0
- package/dist/assets/narrat-yNVO4v0G.js +8 -0
- package/dist/assets/narrat-yNVO4v0G.js.map +1 -0
- package/dist/assets/nextflow-1-7NB-ni.js +10 -0
- package/dist/assets/nextflow-1-7NB-ni.js.map +1 -0
- package/dist/assets/nextflow-groovy-TPtoW2P_.js +8 -0
- package/dist/assets/nextflow-groovy-TPtoW2P_.js.map +1 -0
- package/dist/assets/nginx-C98jlNwk.js +11 -0
- package/dist/assets/nginx-C98jlNwk.js.map +1 -0
- package/dist/assets/night-owl-DEYddbGH.js +5 -0
- package/dist/assets/night-owl-DEYddbGH.js.map +1 -0
- package/dist/assets/night-owl-light-CgPgLhZe.js +5 -0
- package/dist/assets/night-owl-light-CgPgLhZe.js.map +1 -0
- package/dist/assets/nim-C-XJ5M42.js +23 -0
- package/dist/assets/nim-C-XJ5M42.js.map +1 -0
- package/dist/assets/nix-DPigNF-w.js +13 -0
- package/dist/assets/nix-DPigNF-w.js.map +1 -0
- package/dist/assets/nord-CUKU048J.js +5 -0
- package/dist/assets/nord-CUKU048J.js.map +1 -0
- package/dist/assets/nushell-TxwY6Pb5.js +8 -0
- package/dist/assets/nushell-TxwY6Pb5.js.map +1 -0
- package/dist/assets/objective-c-CGXCwEak.js +8 -0
- package/dist/assets/objective-c-CGXCwEak.js.map +1 -0
- package/dist/assets/objective-cpp-C6Ou-DLk.js +8 -0
- package/dist/assets/objective-cpp-C6Ou-DLk.js.map +1 -0
- package/dist/assets/ocaml-B8c2W4N8.js +8 -0
- package/dist/assets/ocaml-B8c2W4N8.js.map +1 -0
- package/dist/assets/odin-CZ4skJts.js +8 -0
- package/dist/assets/odin-CZ4skJts.js.map +1 -0
- package/dist/assets/one-dark-pro-XdKxImzj.js +5 -0
- package/dist/assets/one-dark-pro-XdKxImzj.js.map +1 -0
- package/dist/assets/one-light-BgKiLWqC.js +5 -0
- package/dist/assets/one-light-BgKiLWqC.js.map +1 -0
- package/dist/assets/openscad-jtaZZ0ry.js +8 -0
- package/dist/assets/openscad-jtaZZ0ry.js.map +1 -0
- package/dist/assets/pascal-Dyzoiklv.js +8 -0
- package/dist/assets/pascal-Dyzoiklv.js.map +1 -0
- package/dist/assets/perl-DZBQ1fP7.js +19 -0
- package/dist/assets/perl-DZBQ1fP7.js.map +1 -0
- package/dist/assets/php-B6rqs9dC.js +21 -0
- package/dist/assets/php-B6rqs9dC.js.map +1 -0
- package/dist/assets/pkl-B7NRYePu.js +8 -0
- package/dist/assets/pkl-B7NRYePu.js.map +1 -0
- package/dist/assets/plastic-lmGvlDWy.js +5 -0
- package/dist/assets/plastic-lmGvlDWy.js.map +1 -0
- package/dist/assets/plsql-ZYRyC0wP.js +8 -0
- package/dist/assets/plsql-ZYRyC0wP.js.map +1 -0
- package/dist/assets/po-CHOVNvtJ.js +8 -0
- package/dist/assets/po-CHOVNvtJ.js.map +1 -0
- package/dist/assets/poimandres-C_MUMTwG.js +5 -0
- package/dist/assets/poimandres-C_MUMTwG.js.map +1 -0
- package/dist/assets/polar-CElS9PCS.js +8 -0
- package/dist/assets/polar-CElS9PCS.js.map +1 -0
- package/dist/assets/postcss-DgldbzUq.js +8 -0
- package/dist/assets/postcss-DgldbzUq.js.map +1 -0
- package/dist/assets/powerquery-B6VmGZs1.js +8 -0
- package/dist/assets/powerquery-B6VmGZs1.js.map +1 -0
- package/dist/assets/powershell-Dp4oaXtH.js +8 -0
- package/dist/assets/powershell-Dp4oaXtH.js.map +1 -0
- package/dist/assets/prisma-CPG4K8GD.js +8 -0
- package/dist/assets/prisma-CPG4K8GD.js.map +1 -0
- package/dist/assets/prolog-BfH16pdb.js +8 -0
- package/dist/assets/prolog-BfH16pdb.js.map +1 -0
- package/dist/assets/proto-DRhBl2v_.js +8 -0
- package/dist/assets/proto-DRhBl2v_.js.map +1 -0
- package/dist/assets/pug-B5ZJTPhc.js +14 -0
- package/dist/assets/pug-B5ZJTPhc.js.map +1 -0
- package/dist/assets/puppet-D93mTCzv.js +8 -0
- package/dist/assets/puppet-D93mTCzv.js.map +1 -0
- package/dist/assets/purescript-BwFPZeJE.js +8 -0
- package/dist/assets/purescript-BwFPZeJE.js.map +1 -0
- package/dist/assets/python-hNCB2wYL.js +8 -0
- package/dist/assets/python-hNCB2wYL.js.map +1 -0
- package/dist/assets/qml-B7tPv6LL.js +10 -0
- package/dist/assets/qml-B7tPv6LL.js.map +1 -0
- package/dist/assets/qmldir-C_cCg2m9.js +8 -0
- package/dist/assets/qmldir-C_cCg2m9.js.map +1 -0
- package/dist/assets/qss-CXFHvGeG.js +8 -0
- package/dist/assets/qss-CXFHvGeG.js.map +1 -0
- package/dist/assets/r-DW2dRJNU.js +8 -0
- package/dist/assets/r-DW2dRJNU.js.map +1 -0
- package/dist/assets/racket-CElNGJsF.js +8 -0
- package/dist/assets/racket-CElNGJsF.js.map +1 -0
- package/dist/assets/raku-BGNf9XOF.js +8 -0
- package/dist/assets/raku-BGNf9XOF.js.map +1 -0
- package/dist/assets/razor-_hEMrIZE.js +14 -0
- package/dist/assets/razor-_hEMrIZE.js.map +1 -0
- package/dist/assets/red-AJNT05eU.js +5 -0
- package/dist/assets/red-AJNT05eU.js.map +1 -0
- package/dist/assets/reg-B1yGSPeX.js +8 -0
- package/dist/assets/reg-B1yGSPeX.js.map +1 -0
- package/dist/assets/regexp-DpBcpYls.js +8 -0
- package/dist/assets/regexp-DpBcpYls.js.map +1 -0
- package/dist/assets/rel-COHg19E9.js +8 -0
- package/dist/assets/rel-COHg19E9.js.map +1 -0
- package/dist/assets/riscv-DGE7iFEu.js +8 -0
- package/dist/assets/riscv-DGE7iFEu.js.map +1 -0
- package/dist/assets/ron-BU8eWRkc.js +8 -0
- package/dist/assets/ron-BU8eWRkc.js.map +1 -0
- package/dist/assets/rose-pine-BpSSTpDl.js +5 -0
- package/dist/assets/rose-pine-BpSSTpDl.js.map +1 -0
- package/dist/assets/rose-pine-dawn-JuXMWM7e.js +5 -0
- package/dist/assets/rose-pine-dawn-JuXMWM7e.js.map +1 -0
- package/dist/assets/rose-pine-moon-DfNEd67D.js +5 -0
- package/dist/assets/rose-pine-moon-DfNEd67D.js.map +1 -0
- package/dist/assets/rosmsg-DV4uqfTE.js +8 -0
- package/dist/assets/rosmsg-DV4uqfTE.js.map +1 -0
- package/dist/assets/rst-Dwts34Vp.js +38 -0
- package/dist/assets/rst-Dwts34Vp.js.map +1 -0
- package/dist/assets/ruby-BQIBxl9d.js +38 -0
- package/dist/assets/ruby-BQIBxl9d.js.map +1 -0
- package/dist/assets/rust-eyDPxu_F.js +8 -0
- package/dist/assets/rust-eyDPxu_F.js.map +1 -0
- package/dist/assets/sas-D42O7b-h.js +10 -0
- package/dist/assets/sas-D42O7b-h.js.map +1 -0
- package/dist/assets/sass-DgfD_AjS.js +8 -0
- package/dist/assets/sass-DgfD_AjS.js.map +1 -0
- package/dist/assets/scala-Bk1H2mSp.js +8 -0
- package/dist/assets/scala-Bk1H2mSp.js.map +1 -0
- package/dist/assets/scheme-CvUmbwed.js +8 -0
- package/dist/assets/scheme-CvUmbwed.js.map +1 -0
- package/dist/assets/scss-CuhcKk0L.js +10 -0
- package/dist/assets/scss-CuhcKk0L.js.map +1 -0
- package/dist/assets/sdbl-CsDj0b2n.js +8 -0
- package/dist/assets/sdbl-CsDj0b2n.js.map +1 -0
- package/dist/assets/shaderlab-BR6dybZt.js +10 -0
- package/dist/assets/shaderlab-BR6dybZt.js.map +1 -0
- package/dist/assets/shellscript-BFESB3IN.js +8 -0
- package/dist/assets/shellscript-BFESB3IN.js.map +1 -0
- package/dist/assets/shellsession-BUDs6Lj1.js +10 -0
- package/dist/assets/shellsession-BUDs6Lj1.js.map +1 -0
- package/dist/assets/shikiTokenizerWorker-BtjW_v9G.js +9878 -0
- package/dist/assets/shikiTokenizerWorker-BtjW_v9G.js.map +1 -0
- package/dist/assets/slack-dark-DWWJ5rYK.js +5 -0
- package/dist/assets/slack-dark-DWWJ5rYK.js.map +1 -0
- package/dist/assets/slack-ochin-Bq5JRIP5.js +5 -0
- package/dist/assets/slack-ochin-Bq5JRIP5.js.map +1 -0
- package/dist/assets/smalltalk-CepYz02F.js +8 -0
- package/dist/assets/smalltalk-CepYz02F.js.map +1 -0
- package/dist/assets/snazzy-light-CI6w30cq.js +5 -0
- package/dist/assets/snazzy-light-CI6w30cq.js.map +1 -0
- package/dist/assets/solarized-dark-Bgqg9546.js +5 -0
- package/dist/assets/solarized-dark-Bgqg9546.js.map +1 -0
- package/dist/assets/solarized-light-Cfhyx18w.js +5 -0
- package/dist/assets/solarized-light-Cfhyx18w.js.map +1 -0
- package/dist/assets/solidity-Dy7cwWHW.js +8 -0
- package/dist/assets/solidity-Dy7cwWHW.js.map +1 -0
- package/dist/assets/soy-CATG-zBT.js +12 -0
- package/dist/assets/soy-CATG-zBT.js.map +1 -0
- package/dist/assets/sparql-xS45ySCY.js +10 -0
- package/dist/assets/sparql-xS45ySCY.js.map +1 -0
- package/dist/assets/splunk-xsP0MVkt.js +8 -0
- package/dist/assets/splunk-xsP0MVkt.js.map +1 -0
- package/dist/assets/sql-kPnl9bgi.js +8 -0
- package/dist/assets/sql-kPnl9bgi.js.map +1 -0
- package/dist/assets/ssh-config-ehSXrtEV.js +8 -0
- package/dist/assets/ssh-config-ehSXrtEV.js.map +1 -0
- package/dist/assets/stata-CQNu_FgQ.js +10 -0
- package/dist/assets/stata-CQNu_FgQ.js.map +1 -0
- package/dist/assets/stylus-BoZJ_eV7.js +8 -0
- package/dist/assets/stylus-BoZJ_eV7.js.map +1 -0
- package/dist/assets/surrealql-BuAG2s0L.js +10 -0
- package/dist/assets/surrealql-BuAG2s0L.js.map +1 -0
- package/dist/assets/svelte-CnoxkKF2.js +16 -0
- package/dist/assets/svelte-CnoxkKF2.js.map +1 -0
- package/dist/assets/swift--o4OYIXX.js +8 -0
- package/dist/assets/swift--o4OYIXX.js.map +1 -0
- package/dist/assets/synthwave-84-DXKOZPq5.js +5 -0
- package/dist/assets/synthwave-84-DXKOZPq5.js.map +1 -0
- package/dist/assets/system-verilog-BEcmvm6Z.js +8 -0
- package/dist/assets/system-verilog-BEcmvm6Z.js.map +1 -0
- package/dist/assets/systemd-DJzDbKrW.js +8 -0
- package/dist/assets/systemd-DJzDbKrW.js.map +1 -0
- package/dist/assets/talonscript-Djb-VPry.js +8 -0
- package/dist/assets/talonscript-Djb-VPry.js.map +1 -0
- package/dist/assets/tasl-p9F3iH-j.js +8 -0
- package/dist/assets/tasl-p9F3iH-j.js.map +1 -0
- package/dist/assets/tcl-3f-uwoUo.js +8 -0
- package/dist/assets/tcl-3f-uwoUo.js.map +1 -0
- package/dist/assets/templ-B5LeC0kQ.js +14 -0
- package/dist/assets/templ-B5LeC0kQ.js.map +1 -0
- package/dist/assets/terraform-DgWhF4Yd.js +8 -0
- package/dist/assets/terraform-DgWhF4Yd.js.map +1 -0
- package/dist/assets/tex-CxL9S8Wd.js +10 -0
- package/dist/assets/tex-CxL9S8Wd.js.map +1 -0
- package/dist/assets/tokyo-night-BAQ_Myi4.js +5 -0
- package/dist/assets/tokyo-night-BAQ_Myi4.js.map +1 -0
- package/dist/assets/toml-BnyEyEPT.js +8 -0
- package/dist/assets/toml-BnyEyEPT.js.map +1 -0
- package/dist/assets/ts-tags-Bvk0ykl-.js +55 -0
- package/dist/assets/ts-tags-Bvk0ykl-.js.map +1 -0
- package/dist/assets/tsv-DY-yErdv.js +8 -0
- package/dist/assets/tsv-DY-yErdv.js.map +1 -0
- package/dist/assets/tsx-42HYAIDq.js +8 -0
- package/dist/assets/tsx-42HYAIDq.js.map +1 -0
- package/dist/assets/turtle-zqT8DlFI.js +8 -0
- package/dist/assets/turtle-zqT8DlFI.js.map +1 -0
- package/dist/assets/twig-uAs39d9k.js +37 -0
- package/dist/assets/twig-uAs39d9k.js.map +1 -0
- package/dist/assets/typescript-B2_-ihnN.js +8 -0
- package/dist/assets/typescript-B2_-ihnN.js.map +1 -0
- package/dist/assets/typespec-Kj54qpoq.js +8 -0
- package/dist/assets/typespec-Kj54qpoq.js.map +1 -0
- package/dist/assets/typst-BW5EogfV.js +8 -0
- package/dist/assets/typst-BW5EogfV.js.map +1 -0
- package/dist/assets/v-BMYuw6y3.js +8 -0
- package/dist/assets/v-BMYuw6y3.js.map +1 -0
- package/dist/assets/vala-DZNmMJCf.js +8 -0
- package/dist/assets/vala-DZNmMJCf.js.map +1 -0
- package/dist/assets/vb-6IyLx8lg.js +8 -0
- package/dist/assets/vb-6IyLx8lg.js.map +1 -0
- package/dist/assets/verilog-CBEeotQw.js +8 -0
- package/dist/assets/verilog-CBEeotQw.js.map +1 -0
- package/dist/assets/vesper-B_lKdhLz.js +5 -0
- package/dist/assets/vesper-B_lKdhLz.js.map +1 -0
- package/dist/assets/vhdl-Qbjr_6hW.js +8 -0
- package/dist/assets/vhdl-Qbjr_6hW.js.map +1 -0
- package/dist/assets/viml-Ce8qq_0D.js +8 -0
- package/dist/assets/viml-Ce8qq_0D.js.map +1 -0
- package/dist/assets/vitesse-black-BiRwe6jA.js +5 -0
- package/dist/assets/vitesse-black-BiRwe6jA.js.map +1 -0
- package/dist/assets/vitesse-dark-44qkAq30.js +5 -0
- package/dist/assets/vitesse-dark-44qkAq30.js.map +1 -0
- package/dist/assets/vitesse-light-KXY5XYnn.js +5 -0
- package/dist/assets/vitesse-light-KXY5XYnn.js.map +1 -0
- package/dist/assets/vue-DQvlk87_.js +41 -0
- package/dist/assets/vue-DQvlk87_.js.map +1 -0
- package/dist/assets/vue-html-DiaQkc4E.js +10 -0
- package/dist/assets/vue-html-DiaQkc4E.js.map +1 -0
- package/dist/assets/vue-vine-DgWfDcNr.js +20 -0
- package/dist/assets/vue-vine-DgWfDcNr.js.map +1 -0
- package/dist/assets/vyper-Bq7Z2-Ss.js +8 -0
- package/dist/assets/vyper-Bq7Z2-Ss.js.map +1 -0
- package/dist/assets/wasm-BdTJGc7T.js +8 -0
- package/dist/assets/wasm-BdTJGc7T.js.map +1 -0
- package/dist/assets/wenyan-ZWlLIQIr.js +8 -0
- package/dist/assets/wenyan-ZWlLIQIr.js.map +1 -0
- package/dist/assets/wgsl-C7jKgLAu.js +8 -0
- package/dist/assets/wgsl-C7jKgLAu.js.map +1 -0
- package/dist/assets/wikitext-Bd2wE6rj.js +8 -0
- package/dist/assets/wikitext-Bd2wE6rj.js.map +1 -0
- package/dist/assets/wit-14OfqCWW.js +8 -0
- package/dist/assets/wit-14OfqCWW.js.map +1 -0
- package/dist/assets/wolfram-RapNeSab.js +8 -0
- package/dist/assets/wolfram-RapNeSab.js.map +1 -0
- package/dist/assets/xml-Du1cw7kN.js +10 -0
- package/dist/assets/xml-Du1cw7kN.js.map +1 -0
- package/dist/assets/xsl-CfczXwS3.js +11 -0
- package/dist/assets/xsl-CfczXwS3.js.map +1 -0
- package/dist/assets/yaml-D_xpd4DU.js +8 -0
- package/dist/assets/yaml-D_xpd4DU.js.map +1 -0
- package/dist/assets/zenscript-DaonNBty.js +8 -0
- package/dist/assets/zenscript-DaonNBty.js.map +1 -0
- package/dist/assets/zig-DWvk_5e3.js +8 -0
- package/dist/assets/zig-DWvk_5e3.js.map +1 -0
- package/dist/bridge.cjs +1 -1
- package/dist/bridge.cjs.map +1 -1
- package/dist/bridge.d.ts +185 -2
- package/dist/bridge.js +3 -0
- package/dist/bridge.js.map +1 -1
- package/dist/core.d.ts +122 -2
- package/dist/dom.cjs +1 -1
- package/dist/dom.d.ts +122 -2
- package/dist/dom.js +2 -2
- package/dist/{index-McnGKzmi.cjs → index-79mXjylo.cjs} +2 -2
- package/dist/{index-McnGKzmi.cjs.map → index-79mXjylo.cjs.map} +1 -1
- package/dist/{index-DARGQA9p.js → index-BHrFfZ7O.js} +2 -2
- package/dist/{index-DARGQA9p.js.map → index-BHrFfZ7O.js.map} +1 -1
- package/dist/{index-BiehJaHJ.js → index-CCAOnvex.js} +2666 -2023
- package/dist/index-CCAOnvex.js.map +1 -0
- package/dist/index-CQx3NGKY.cjs +7 -0
- package/dist/index-CQx3NGKY.cjs.map +1 -0
- package/dist/index-DF8OhKI4.cjs.map +1 -1
- package/dist/index-sbZNOcCB.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +189 -2
- package/dist/index.js +2 -2
- package/dist/native-spec.d.ts +122 -2
- package/dist/shikiHighlightData-DU78Iupf.cjs +2 -0
- package/dist/shikiHighlightData-DU78Iupf.cjs.map +1 -0
- package/dist/shikiHighlightData-Dn-hlfiF.js +28 -0
- package/dist/shikiHighlightData-Dn-hlfiF.js.map +1 -0
- package/dist/shikiTokenizerRuntime.cjs +3 -0
- package/dist/shikiTokenizerRuntime.cjs.map +1 -0
- package/dist/shikiTokenizerRuntime.js +72 -0
- package/dist/shikiTokenizerRuntime.js.map +1 -0
- package/dist/style.css +1 -1
- package/dist/webview.cjs +1 -1
- package/dist/webview.d.ts +189 -2
- package/dist/webview.js +1 -1
- package/package.json +7 -3
- package/dist/index-BiehJaHJ.js.map +0 -1
- package/dist/index-DL8eNafR.cjs +0 -4
- package/dist/index-DL8eNafR.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-DF8OhKI4.cjs","sources":["../../core/src/payloadPanel/index.ts"],"sourcesContent":["import type {\n PayloadPanelConfig,\n PayloadPanelField,\n PayloadPanelFieldConfig,\n PayloadPanelOption,\n PayloadPanelSchema\n} from './type';\n\nexport type * from './type';\n\nconst hasOwnConfigKeys = (config: object | undefined) => (\n config !== undefined && Object.keys(config).length > 0\n);\n\nconst resolveOptionList = (\n options: PayloadPanelOption[],\n config: PayloadPanelFieldConfig\n) => {\n const baseOptions = config.options?.length ? config.options : options;\n const optionByValue = new Map(baseOptions.map((option) => [option.value, option]));\n const includedOptions = config.includeValues?.length\n ? config.includeValues.flatMap((value) => {\n const option = optionByValue.get(value);\n\n return option ? [option] : [];\n })\n : baseOptions;\n const excludeValues = new Set(config.excludeValues ?? []);\n const filteredOptions = includedOptions.filter((option) => !excludeValues.has(option.value));\n const nextOptions = filteredOptions.map((option) => ({\n ...option,\n label: config.optionLabels?.[option.value] ?? option.label,\n value: config.optionValues?.[option.value] ?? option.value\n }));\n\n /*\n * 配置写错时不返回空候选,避免默认 DOM 面板、自绘 request 和原生菜单拿到\n * 无法操作的空列表;业务真要完全隐藏菜单应通过菜单 config 排除入口。\n */\n return nextOptions.length > 0 ? nextOptions : baseOptions;\n};\n\nconst resolveFieldBaseOverride = (\n field: PayloadPanelField,\n config: PayloadPanelFieldConfig\n) => ({\n label: config.label ?? field.label,\n defaultValue: config.defaultValue ?? field.defaultValue,\n placeholder: config.placeholder ?? field.placeholder\n});\n\nconst resolvePayloadPanelField = (\n field: PayloadPanelField,\n config: PayloadPanelFieldConfig | undefined\n): PayloadPanelField => {\n if (!config || !hasOwnConfigKeys(config)) return field;\n\n if (field.type === 'select') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n options: resolveOptionList(field.options, config)\n };\n }\n\n if (field.type === 'color') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n options: resolveOptionList(field.options ?? [], config)\n };\n }\n\n if (field.type === 'number') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n min: config.min ?? field.min,\n max: config.max ?? field.max,\n step: config.step ?? field.step\n };\n }\n\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config)\n };\n};\n\n/**\n * 解析参数面板 schema。\n *\n * 这个纯函数只处理 schema 数据,不理解 DOM、Lexical 或具体命令;toolbar、hoverbar、\n * code block
|
|
1
|
+
{"version":3,"file":"index-DF8OhKI4.cjs","sources":["../../core/src/payloadPanel/index.ts"],"sourcesContent":["import type {\n PayloadPanelConfig,\n PayloadPanelField,\n PayloadPanelFieldConfig,\n PayloadPanelOption,\n PayloadPanelSchema\n} from './type';\n\nexport type * from './type';\n\nconst hasOwnConfigKeys = (config: object | undefined) => (\n config !== undefined && Object.keys(config).length > 0\n);\n\nconst resolveOptionList = (\n options: PayloadPanelOption[],\n config: PayloadPanelFieldConfig\n) => {\n const baseOptions = config.options?.length ? config.options : options;\n const optionByValue = new Map(baseOptions.map((option) => [option.value, option]));\n const includedOptions = config.includeValues?.length\n ? config.includeValues.flatMap((value) => {\n const option = optionByValue.get(value);\n\n return option ? [option] : [];\n })\n : baseOptions;\n const excludeValues = new Set(config.excludeValues ?? []);\n const filteredOptions = includedOptions.filter((option) => !excludeValues.has(option.value));\n const nextOptions = filteredOptions.map((option) => ({\n ...option,\n label: config.optionLabels?.[option.value] ?? option.label,\n value: config.optionValues?.[option.value] ?? option.value\n }));\n\n /*\n * 配置写错时不返回空候选,避免默认 DOM 面板、自绘 request 和原生菜单拿到\n * 无法操作的空列表;业务真要完全隐藏菜单应通过菜单 config 排除入口。\n */\n return nextOptions.length > 0 ? nextOptions : baseOptions;\n};\n\nconst resolveFieldBaseOverride = (\n field: PayloadPanelField,\n config: PayloadPanelFieldConfig\n) => ({\n label: config.label ?? field.label,\n defaultValue: config.defaultValue ?? field.defaultValue,\n placeholder: config.placeholder ?? field.placeholder\n});\n\nconst resolvePayloadPanelField = (\n field: PayloadPanelField,\n config: PayloadPanelFieldConfig | undefined\n): PayloadPanelField => {\n if (!config || !hasOwnConfigKeys(config)) return field;\n\n if (field.type === 'select') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n options: resolveOptionList(field.options, config)\n };\n }\n\n if (field.type === 'color') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n options: resolveOptionList(field.options ?? [], config)\n };\n }\n\n if (field.type === 'number') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n min: config.min ?? field.min,\n max: config.max ?? field.max,\n step: config.step ?? field.step\n };\n }\n\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config)\n };\n};\n\n/**\n * 解析参数面板 schema。\n *\n * 这个纯函数只处理 schema 数据,不理解 DOM、Lexical 或具体命令;toolbar、hoverbar、\n * code block 语言 controls 和 WebView host request 都应先走这里,保证默认 UI 和业务自绘同源。\n */\nexport const resolvePayloadPanelSchema = (\n panel: PayloadPanelSchema,\n config?: PayloadPanelConfig\n): PayloadPanelSchema => {\n const panelConfig = config?.[panel.id];\n\n if (!panelConfig || !hasOwnConfigKeys(panelConfig)) return panel;\n\n return {\n ...panel,\n title: panelConfig.title ?? panel.title,\n description: panelConfig.description ?? panel.description,\n fields: panel.fields.map((field) => resolvePayloadPanelField(\n field,\n panelConfig.fields?.[field.name]\n ))\n };\n};\n"],"names":["hasOwnConfigKeys","config","resolveOptionList","options","baseOptions","_a","optionByValue","option","includedOptions","_b","value","excludeValues","nextOptions","resolveFieldBaseOverride","field","resolvePayloadPanelField","resolvePayloadPanelSchema","panel","panelConfig"],"mappings":"aAUA,MAAMA,EAAoBC,GACxBA,IAAW,QAAa,OAAO,KAAKA,CAAM,EAAE,OAAS,EAGjDC,EAAoB,CACxBC,EACAF,IACG,SACH,MAAMG,GAAcC,EAAAJ,EAAO,UAAP,MAAAI,EAAgB,OAASJ,EAAO,QAAUE,EACxDG,EAAgB,IAAI,IAAIF,EAAY,IAAKG,GAAW,CAACA,EAAO,MAAOA,CAAM,CAAC,CAAC,EAC3EC,GAAkBC,EAAAR,EAAO,gBAAP,MAAAQ,EAAsB,OAC1CR,EAAO,cAAc,QAASS,GAAU,CACxC,MAAMH,EAASD,EAAc,IAAII,CAAK,EAEtC,OAAOH,EAAS,CAACA,CAAM,EAAI,CAAA,CAC7B,CAAC,EACCH,EACEO,EAAgB,IAAI,IAAIV,EAAO,eAAiB,CAAA,CAAE,EAElDW,EADkBJ,EAAgB,OAAQD,GAAW,CAACI,EAAc,IAAIJ,EAAO,KAAK,CAAC,EACvD,IAAKA,GAAA,SAAY,OACnD,GAAGA,EACH,QAAOF,EAAAJ,EAAO,eAAP,YAAAI,EAAsBE,EAAO,SAAUA,EAAO,MACrD,QAAOE,EAAAR,EAAO,eAAP,YAAAQ,EAAsBF,EAAO,SAAUA,EAAO,KAAA,EACrD,EAMF,OAAOK,EAAY,OAAS,EAAIA,EAAcR,CAChD,EAEMS,EAA2B,CAC/BC,EACAb,KACI,CACJ,MAAOA,EAAO,OAASa,EAAM,MAC7B,aAAcb,EAAO,cAAgBa,EAAM,aAC3C,YAAab,EAAO,aAAea,EAAM,WAC3C,GAEMC,EAA2B,CAC/BD,EACAb,IAEI,CAACA,GAAU,CAACD,EAAiBC,CAAM,EAAUa,EAE7CA,EAAM,OAAS,SACV,CACL,GAAGA,EACH,GAAGD,EAAyBC,EAAOb,CAAM,EACzC,QAASC,EAAkBY,EAAM,QAASb,CAAM,CAAA,EAIhDa,EAAM,OAAS,QACV,CACL,GAAGA,EACH,GAAGD,EAAyBC,EAAOb,CAAM,EACzC,QAASC,EAAkBY,EAAM,SAAW,CAAA,EAAIb,CAAM,CAAA,EAItDa,EAAM,OAAS,SACV,CACL,GAAGA,EACH,GAAGD,EAAyBC,EAAOb,CAAM,EACzC,IAAKA,EAAO,KAAOa,EAAM,IACzB,IAAKb,EAAO,KAAOa,EAAM,IACzB,KAAMb,EAAO,MAAQa,EAAM,IAAA,EAIxB,CACL,GAAGA,EACH,GAAGD,EAAyBC,EAAOb,CAAM,CAAA,EAUhCe,EAA4B,CACvCC,EACAhB,IACuB,CACvB,MAAMiB,EAAcjB,GAAA,YAAAA,EAASgB,EAAM,IAEnC,MAAI,CAACC,GAAe,CAAClB,EAAiBkB,CAAW,EAAUD,EAEpD,CACL,GAAGA,EACH,MAAOC,EAAY,OAASD,EAAM,MAClC,YAAaC,EAAY,aAAeD,EAAM,YAC9C,OAAQA,EAAM,OAAO,IAAKH,GAAA,OAAU,OAAAC,EAClCD,GACAT,EAAAa,EAAY,SAAZ,YAAAb,EAAqBS,EAAM,KAAI,EAChC,CAAA,CAEL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-sbZNOcCB.js","sources":["../../core/src/payloadPanel/index.ts"],"sourcesContent":["import type {\n PayloadPanelConfig,\n PayloadPanelField,\n PayloadPanelFieldConfig,\n PayloadPanelOption,\n PayloadPanelSchema\n} from './type';\n\nexport type * from './type';\n\nconst hasOwnConfigKeys = (config: object | undefined) => (\n config !== undefined && Object.keys(config).length > 0\n);\n\nconst resolveOptionList = (\n options: PayloadPanelOption[],\n config: PayloadPanelFieldConfig\n) => {\n const baseOptions = config.options?.length ? config.options : options;\n const optionByValue = new Map(baseOptions.map((option) => [option.value, option]));\n const includedOptions = config.includeValues?.length\n ? config.includeValues.flatMap((value) => {\n const option = optionByValue.get(value);\n\n return option ? [option] : [];\n })\n : baseOptions;\n const excludeValues = new Set(config.excludeValues ?? []);\n const filteredOptions = includedOptions.filter((option) => !excludeValues.has(option.value));\n const nextOptions = filteredOptions.map((option) => ({\n ...option,\n label: config.optionLabels?.[option.value] ?? option.label,\n value: config.optionValues?.[option.value] ?? option.value\n }));\n\n /*\n * 配置写错时不返回空候选,避免默认 DOM 面板、自绘 request 和原生菜单拿到\n * 无法操作的空列表;业务真要完全隐藏菜单应通过菜单 config 排除入口。\n */\n return nextOptions.length > 0 ? nextOptions : baseOptions;\n};\n\nconst resolveFieldBaseOverride = (\n field: PayloadPanelField,\n config: PayloadPanelFieldConfig\n) => ({\n label: config.label ?? field.label,\n defaultValue: config.defaultValue ?? field.defaultValue,\n placeholder: config.placeholder ?? field.placeholder\n});\n\nconst resolvePayloadPanelField = (\n field: PayloadPanelField,\n config: PayloadPanelFieldConfig | undefined\n): PayloadPanelField => {\n if (!config || !hasOwnConfigKeys(config)) return field;\n\n if (field.type === 'select') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n options: resolveOptionList(field.options, config)\n };\n }\n\n if (field.type === 'color') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n options: resolveOptionList(field.options ?? [], config)\n };\n }\n\n if (field.type === 'number') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n min: config.min ?? field.min,\n max: config.max ?? field.max,\n step: config.step ?? field.step\n };\n }\n\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config)\n };\n};\n\n/**\n * 解析参数面板 schema。\n *\n * 这个纯函数只处理 schema 数据,不理解 DOM、Lexical 或具体命令;toolbar、hoverbar、\n * code block
|
|
1
|
+
{"version":3,"file":"index-sbZNOcCB.js","sources":["../../core/src/payloadPanel/index.ts"],"sourcesContent":["import type {\n PayloadPanelConfig,\n PayloadPanelField,\n PayloadPanelFieldConfig,\n PayloadPanelOption,\n PayloadPanelSchema\n} from './type';\n\nexport type * from './type';\n\nconst hasOwnConfigKeys = (config: object | undefined) => (\n config !== undefined && Object.keys(config).length > 0\n);\n\nconst resolveOptionList = (\n options: PayloadPanelOption[],\n config: PayloadPanelFieldConfig\n) => {\n const baseOptions = config.options?.length ? config.options : options;\n const optionByValue = new Map(baseOptions.map((option) => [option.value, option]));\n const includedOptions = config.includeValues?.length\n ? config.includeValues.flatMap((value) => {\n const option = optionByValue.get(value);\n\n return option ? [option] : [];\n })\n : baseOptions;\n const excludeValues = new Set(config.excludeValues ?? []);\n const filteredOptions = includedOptions.filter((option) => !excludeValues.has(option.value));\n const nextOptions = filteredOptions.map((option) => ({\n ...option,\n label: config.optionLabels?.[option.value] ?? option.label,\n value: config.optionValues?.[option.value] ?? option.value\n }));\n\n /*\n * 配置写错时不返回空候选,避免默认 DOM 面板、自绘 request 和原生菜单拿到\n * 无法操作的空列表;业务真要完全隐藏菜单应通过菜单 config 排除入口。\n */\n return nextOptions.length > 0 ? nextOptions : baseOptions;\n};\n\nconst resolveFieldBaseOverride = (\n field: PayloadPanelField,\n config: PayloadPanelFieldConfig\n) => ({\n label: config.label ?? field.label,\n defaultValue: config.defaultValue ?? field.defaultValue,\n placeholder: config.placeholder ?? field.placeholder\n});\n\nconst resolvePayloadPanelField = (\n field: PayloadPanelField,\n config: PayloadPanelFieldConfig | undefined\n): PayloadPanelField => {\n if (!config || !hasOwnConfigKeys(config)) return field;\n\n if (field.type === 'select') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n options: resolveOptionList(field.options, config)\n };\n }\n\n if (field.type === 'color') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n options: resolveOptionList(field.options ?? [], config)\n };\n }\n\n if (field.type === 'number') {\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config),\n min: config.min ?? field.min,\n max: config.max ?? field.max,\n step: config.step ?? field.step\n };\n }\n\n return {\n ...field,\n ...resolveFieldBaseOverride(field, config)\n };\n};\n\n/**\n * 解析参数面板 schema。\n *\n * 这个纯函数只处理 schema 数据,不理解 DOM、Lexical 或具体命令;toolbar、hoverbar、\n * code block 语言 controls 和 WebView host request 都应先走这里,保证默认 UI 和业务自绘同源。\n */\nexport const resolvePayloadPanelSchema = (\n panel: PayloadPanelSchema,\n config?: PayloadPanelConfig\n): PayloadPanelSchema => {\n const panelConfig = config?.[panel.id];\n\n if (!panelConfig || !hasOwnConfigKeys(panelConfig)) return panel;\n\n return {\n ...panel,\n title: panelConfig.title ?? panel.title,\n description: panelConfig.description ?? panel.description,\n fields: panel.fields.map((field) => resolvePayloadPanelField(\n field,\n panelConfig.fields?.[field.name]\n ))\n };\n};\n"],"names":["hasOwnConfigKeys","config","resolveOptionList","options","_a","_b","baseOptions","optionByValue","option","includedOptions","value","excludeValues","nextOptions","resolveFieldBaseOverride","field","resolvePayloadPanelField","resolvePayloadPanelSchema","panel","panelConfig"],"mappings":"AAUA,MAAMA,IAAmB,CAACC,MACxBA,MAAW,UAAa,OAAO,KAAKA,CAAM,EAAE,SAAS,GAGjDC,IAAoB,CACxBC,GACAF,MACG;AAPL,MAAAG,GAAAC;AAQE,QAAMC,KAAcF,IAAAH,EAAO,YAAP,QAAAG,EAAgB,SAASH,EAAO,UAAUE,GACxDI,IAAgB,IAAI,IAAID,EAAY,IAAI,CAACE,MAAW,CAACA,EAAO,OAAOA,CAAM,CAAC,CAAC,GAC3EC,KAAkBJ,IAAAJ,EAAO,kBAAP,QAAAI,EAAsB,SAC1CJ,EAAO,cAAc,QAAQ,CAACS,MAAU;AACxC,UAAMF,IAASD,EAAc,IAAIG,CAAK;AAEtC,WAAOF,IAAS,CAACA,CAAM,IAAI,CAAA;AAAA,EAC7B,CAAC,IACCF,GACEK,IAAgB,IAAI,IAAIV,EAAO,iBAAiB,CAAA,CAAE,GAElDW,IADkBH,EAAgB,OAAO,CAACD,MAAW,CAACG,EAAc,IAAIH,EAAO,KAAK,CAAC,EACvD,IAAI,CAACA,MAAA;AAnB3C,QAAAJ,GAAAC;AAmBuD;AAAA,MACnD,GAAGG;AAAA,MACH,SAAOJ,IAAAH,EAAO,iBAAP,gBAAAG,EAAsBI,EAAO,WAAUA,EAAO;AAAA,MACrD,SAAOH,IAAAJ,EAAO,iBAAP,gBAAAI,EAAsBG,EAAO,WAAUA,EAAO;AAAA,IAAA;AAAA,GACrD;AAMF,SAAOI,EAAY,SAAS,IAAIA,IAAcN;AAChD,GAEMO,IAA2B,CAC/BC,GACAb,OACI;AAAA,EACJ,OAAOA,EAAO,SAASa,EAAM;AAAA,EAC7B,cAAcb,EAAO,gBAAgBa,EAAM;AAAA,EAC3C,aAAab,EAAO,eAAea,EAAM;AAC3C,IAEMC,IAA2B,CAC/BD,GACAb,MAEI,CAACA,KAAU,CAACD,EAAiBC,CAAM,IAAUa,IAE7CA,EAAM,SAAS,WACV;AAAA,EACL,GAAGA;AAAA,EACH,GAAGD,EAAyBC,GAAOb,CAAM;AAAA,EACzC,SAASC,EAAkBY,EAAM,SAASb,CAAM;AAAA,IAIhDa,EAAM,SAAS,UACV;AAAA,EACL,GAAGA;AAAA,EACH,GAAGD,EAAyBC,GAAOb,CAAM;AAAA,EACzC,SAASC,EAAkBY,EAAM,WAAW,CAAA,GAAIb,CAAM;AAAA,IAItDa,EAAM,SAAS,WACV;AAAA,EACL,GAAGA;AAAA,EACH,GAAGD,EAAyBC,GAAOb,CAAM;AAAA,EACzC,KAAKA,EAAO,OAAOa,EAAM;AAAA,EACzB,KAAKb,EAAO,OAAOa,EAAM;AAAA,EACzB,MAAMb,EAAO,QAAQa,EAAM;AAAA,IAIxB;AAAA,EACL,GAAGA;AAAA,EACH,GAAGD,EAAyBC,GAAOb,CAAM;AAAA,GAUhCe,IAA4B,CACvCC,GACAhB,MACuB;AACvB,QAAMiB,IAAcjB,KAAA,gBAAAA,EAASgB,EAAM;AAEnC,SAAI,CAACC,KAAe,CAAClB,EAAiBkB,CAAW,IAAUD,IAEpD;AAAA,IACL,GAAGA;AAAA,IACH,OAAOC,EAAY,SAASD,EAAM;AAAA,IAClC,aAAaC,EAAY,eAAeD,EAAM;AAAA,IAC9C,QAAQA,EAAM,OAAO,IAAI,CAACH,MAAA;AAjG9B,UAAAV;AAiGwC,aAAAW;AAAA,QAClCD;AAAA,SACAV,IAAAc,EAAY,WAAZ,gBAAAd,EAAqBU,EAAM;AAAA,MAAI;AAAA,KAChC;AAAA,EAAA;AAEL;"}
|
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-GaS65GL0.cjs"),a=require("./bridge.cjs"),e=require("./native-spec.cjs"),n=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-GaS65GL0.cjs"),a=require("./bridge.cjs"),e=require("./native-spec.cjs"),n=require("./index-CQx3NGKY.cjs"),o=require("./index-79mXjylo.cjs"),r=require("./core.cjs"),i=require("./index-DF8OhKI4.cjs");exports.BRIDGERTE_CONTENT_VERSION=t.BRIDGERTE_CONTENT_VERSION;exports.BRIDGERTE_TABLE_INSERT_MAX_COLS=t.BRIDGERTE_TABLE_INSERT_MAX_COLS;exports.BRIDGERTE_TABLE_INSERT_MAX_ROWS=t.BRIDGERTE_TABLE_INSERT_MAX_ROWS;exports.BRIDGE_CONTENT_CHANGE_DEBOUNCE_MS=a.BRIDGE_CONTENT_CHANGE_DEBOUNCE_MS;exports.BRIDGE_HEIGHT_CHANGE_THROTTLE_MS=a.BRIDGE_HEIGHT_CHANGE_THROTTLE_MS;exports.defaultBridgeEventTiming=a.defaultBridgeEventTiming;exports.isBridgeMessage=a.isBridgeMessage;exports.codeBlockLanguagePanel=e.codeBlockLanguagePanel;exports.codeBlockLanguagePayloadPanel=e.codeBlockLanguagePayloadPanel;exports.createDisabledCommandStates=e.createDisabledCommandStates;exports.defaultMenuSchema=e.defaultMenuSchema;exports.defaultToolbarConfig=e.defaultToolbarConfig;exports.getCommandStateMatchValue=e.getCommandStateMatchValue;exports.isCommandStateForCommand=e.isCommandStateForCommand;exports.isMenuItemCommandState=e.isMenuItemCommandState;exports.resolveToolbarMenu=e.resolveToolbarMenu;exports.tableHeaderMenuItems=e.tableHeaderMenuItems;exports.createFloatingLayer=n.createFloatingLayer;exports.createRichTextEditor=n.createRichTextEditor;exports.createWebViewBridgeRuntime=n.createWebViewBridgeRuntime;exports.createRichTextToolbar=o.createRichTextToolbar;exports.hasMeaningfulHtmlContent=o.hasMeaningfulHtmlContent;exports.isEditorContentEmpty=r.isEditorContentEmpty;exports.resolvePayloadPanelSchema=i.resolvePayloadPanelSchema;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.d.ts
CHANGED
|
@@ -455,6 +455,9 @@ export type EditorCommand = {
|
|
|
455
455
|
type: 'media.pickImage';
|
|
456
456
|
} | {
|
|
457
457
|
type: 'media.pickVideo';
|
|
458
|
+
} | {
|
|
459
|
+
type: 'media.view';
|
|
460
|
+
assetId: string;
|
|
458
461
|
} | {
|
|
459
462
|
type: 'media.retry';
|
|
460
463
|
assetId: string;
|
|
@@ -677,7 +680,7 @@ export type PayloadPanelSchemaConfig = {
|
|
|
677
680
|
/**
|
|
678
681
|
* 参数面板配置表。
|
|
679
682
|
*
|
|
680
|
-
* 第一层 key 使用 `PayloadPanelSchema.id`,让 toolbar、hoverbar、code block
|
|
683
|
+
* 第一层 key 使用 `PayloadPanelSchema.id`,让 toolbar、hoverbar、code block 语言 controls、
|
|
681
684
|
* WebView 和业务自绘都能对同一份 panel schema 做一致裁剪。
|
|
682
685
|
*/
|
|
683
686
|
export type PayloadPanelConfig = Record<string, PayloadPanelSchemaConfig>;
|
|
@@ -723,7 +726,7 @@ export type PayloadPanelRequest = PayloadPanelOpenRequest & {
|
|
|
723
726
|
* 解析参数面板 schema。
|
|
724
727
|
*
|
|
725
728
|
* 这个纯函数只处理 schema 数据,不理解 DOM、Lexical 或具体命令;toolbar、hoverbar、
|
|
726
|
-
* code block
|
|
729
|
+
* code block 语言 controls 和 WebView host request 都应先走这里,保证默认 UI 和业务自绘同源。
|
|
727
730
|
*/
|
|
728
731
|
export declare const resolvePayloadPanelSchema: (panel: PayloadPanelSchema, config?: PayloadPanelConfig) => PayloadPanelSchema;
|
|
729
732
|
|
|
@@ -758,6 +761,103 @@ export type FloatingMenusConfig = {
|
|
|
758
761
|
* 原生菜单可以忽略这个字段并用同一个 key 映射平台 icon。
|
|
759
762
|
*/
|
|
760
763
|
export type RichTextEditorIcons = Partial<Record<string, string>>;
|
|
764
|
+
/**
|
|
765
|
+
* 自绘菜单提交目标。
|
|
766
|
+
*
|
|
767
|
+
* 业务侧通常只需要回传 `MenuItem.id`;保留完整 `MenuItem` 是为了 PC/H5 自绘层在同进程内
|
|
768
|
+
* 直接复用 request.items 中的对象,WebView bridge 仍只通过 id 回传。
|
|
769
|
+
*/
|
|
770
|
+
export type MenuControlSubmitTarget = string | MenuItem;
|
|
771
|
+
export type MenuControlButtonItem = {
|
|
772
|
+
type: 'button';
|
|
773
|
+
item: MenuItem;
|
|
774
|
+
active: boolean;
|
|
775
|
+
disabled: boolean;
|
|
776
|
+
};
|
|
777
|
+
export type MenuControlSeparatorItem = {
|
|
778
|
+
type: 'separator';
|
|
779
|
+
key: string;
|
|
780
|
+
};
|
|
781
|
+
export type MenuControlGroupItem = {
|
|
782
|
+
type: 'group';
|
|
783
|
+
key: string;
|
|
784
|
+
title: string;
|
|
785
|
+
icon?: string;
|
|
786
|
+
items: MenuControlButtonItem[];
|
|
787
|
+
};
|
|
788
|
+
/**
|
|
789
|
+
* 自绘菜单的跨端显示协议。
|
|
790
|
+
*
|
|
791
|
+
* DOM 默认 UI、PC/H5 自绘和 RN/Flutter 原生菜单都消费解析后的同一份结构;
|
|
792
|
+
* 这里不携带 DOM 节点、SVG 字符串或定位实现,只保留 schema/config 解析结果和状态。
|
|
793
|
+
*/
|
|
794
|
+
export type MenuControlDisplayItem = MenuControlButtonItem | MenuControlSeparatorItem | MenuControlGroupItem;
|
|
795
|
+
export type HoverbarMenuRequest = {
|
|
796
|
+
id: string;
|
|
797
|
+
items: MenuControlDisplayItem[];
|
|
798
|
+
commandStates: CommandState[];
|
|
799
|
+
readonly: boolean;
|
|
800
|
+
anchorRect?: PayloadPanelOpenRequest['anchorRect'];
|
|
801
|
+
/**
|
|
802
|
+
* 订阅这次菜单请求被编辑器侧关闭或替换。
|
|
803
|
+
*
|
|
804
|
+
* 宿主自绘菜单可以据此清理自己的浮层;WebView runtime 也用它通知 RN/Flutter
|
|
805
|
+
* 旧 request 已失效,避免晚到提交命中悬空菜单。
|
|
806
|
+
*/
|
|
807
|
+
subscribeDismiss(listener: () => void): () => void;
|
|
808
|
+
submit(target: MenuControlSubmitTarget): void;
|
|
809
|
+
cancel(): void;
|
|
810
|
+
};
|
|
811
|
+
export type MediaControlsRequest = {
|
|
812
|
+
id: string;
|
|
813
|
+
assetId: string;
|
|
814
|
+
mediaType: 'image' | 'video';
|
|
815
|
+
status: string;
|
|
816
|
+
displayWidthPercent: MediaDisplayWidthPercent;
|
|
817
|
+
align: MediaAlign;
|
|
818
|
+
items: MenuControlDisplayItem[];
|
|
819
|
+
readonly: boolean;
|
|
820
|
+
anchorRect?: PayloadPanelOpenRequest['anchorRect'];
|
|
821
|
+
/**
|
|
822
|
+
* 媒体资源 URL。
|
|
823
|
+
*
|
|
824
|
+
* 从 DOM 读取,可用于业务自绘层的预览、下载或分享。
|
|
825
|
+
*/
|
|
826
|
+
url?: string;
|
|
827
|
+
title?: string;
|
|
828
|
+
alt?: string;
|
|
829
|
+
poster?: string;
|
|
830
|
+
width?: number;
|
|
831
|
+
height?: number;
|
|
832
|
+
/** 视频时长(秒),仅 video 节点 loadedmetadata 后可读。 */
|
|
833
|
+
duration?: number;
|
|
834
|
+
/** 媒体 MIME 类型,DOM 不保证一定可读。 */
|
|
835
|
+
mimeType?: string;
|
|
836
|
+
/** 文件大小(字节),DOM 不保证一定可读。 */
|
|
837
|
+
size?: number;
|
|
838
|
+
/**
|
|
839
|
+
* 订阅这次菜单请求被编辑器侧关闭或替换。
|
|
840
|
+
*
|
|
841
|
+
* 媒体节点切换、点击正文或节点销毁都会让旧自绘菜单失效;监听方需要同步关闭外部 UI。
|
|
842
|
+
*/
|
|
843
|
+
subscribeDismiss(listener: () => void): () => void;
|
|
844
|
+
submit(target: MenuControlSubmitTarget): void;
|
|
845
|
+
cancel(): void;
|
|
846
|
+
};
|
|
847
|
+
export type TableControlsRequest = {
|
|
848
|
+
id: string;
|
|
849
|
+
items: MenuControlDisplayItem[];
|
|
850
|
+
readonly: boolean;
|
|
851
|
+
anchorRect?: PayloadPanelOpenRequest['anchorRect'];
|
|
852
|
+
/**
|
|
853
|
+
* 订阅这次菜单请求被编辑器侧关闭或替换。
|
|
854
|
+
*
|
|
855
|
+
* 表格激活态变化时会触发 dismiss,保证业务自绘和 DOM 内部 controls 生命周期一致。
|
|
856
|
+
*/
|
|
857
|
+
subscribeDismiss(listener: () => void): () => void;
|
|
858
|
+
submit(target: MenuControlSubmitTarget): void;
|
|
859
|
+
cancel(): void;
|
|
860
|
+
};
|
|
761
861
|
export type RichTextEditorOptions = {
|
|
762
862
|
value?: Partial<EditorContent>;
|
|
763
863
|
readonly?: boolean;
|
|
@@ -847,6 +947,26 @@ export type RichTextEditorOptions = {
|
|
|
847
947
|
slashCommandProvider?: SlashCommandProvider;
|
|
848
948
|
slashCommandMenuConfig?: SlashCommandMenuConfig;
|
|
849
949
|
onSlashCommandMenuRequest?: (request: SlashCommandMenuRequest) => boolean | void;
|
|
950
|
+
/**
|
|
951
|
+
* 选中文本 hoverbar 自绘接管。
|
|
952
|
+
*
|
|
953
|
+
* 返回 true 时 DOM 不渲染默认 hoverbar;业务侧需要调用 request.submit(id) 执行菜单,
|
|
954
|
+
* 或调用 request.cancel() 关闭这次自绘菜单。
|
|
955
|
+
*/
|
|
956
|
+
onHoverbarMenuRequest?: (request: HoverbarMenuRequest) => boolean | void;
|
|
957
|
+
/**
|
|
958
|
+
* 图片/视频 overlay controls 自绘接管。
|
|
959
|
+
*
|
|
960
|
+
* 返回 true 时 DOM 不渲染默认媒体浮条;同一份 items 可用于 PC/H5 浮窗或 RN/Flutter
|
|
961
|
+
* 原生面板,提交时回传菜单 id 即可。
|
|
962
|
+
*/
|
|
963
|
+
onMediaControlsRequest?: (request: MediaControlsRequest) => boolean | void;
|
|
964
|
+
/**
|
|
965
|
+
* 表格 controls 自绘接管。
|
|
966
|
+
*
|
|
967
|
+
* 返回 true 时 DOM 不渲染默认表格浮条,业务菜单提交后仍复用 BridgeRTE 内部表格命令执行。
|
|
968
|
+
*/
|
|
969
|
+
onTableControlsRequest?: (request: TableControlsRequest) => boolean | void;
|
|
850
970
|
placeholder?: string;
|
|
851
971
|
maxLength?: number;
|
|
852
972
|
/**
|
|
@@ -1052,6 +1172,53 @@ export type PayloadPanelRequestPayload = PayloadPanelOpenRequest & {
|
|
|
1052
1172
|
id: string;
|
|
1053
1173
|
readonly: boolean;
|
|
1054
1174
|
};
|
|
1175
|
+
export type MenuRequestKind = 'hoverbar' | 'mediaControls' | 'tableControls';
|
|
1176
|
+
export type BaseMenuRequestPayload = {
|
|
1177
|
+
id: string;
|
|
1178
|
+
kind: MenuRequestKind;
|
|
1179
|
+
items: MenuControlDisplayItem[];
|
|
1180
|
+
readonly: boolean;
|
|
1181
|
+
anchorRect?: PayloadPanelOpenRequest['anchorRect'];
|
|
1182
|
+
};
|
|
1183
|
+
export type HoverbarMenuRequestPayload = BaseMenuRequestPayload & {
|
|
1184
|
+
kind: 'hoverbar';
|
|
1185
|
+
commandStates: HoverbarMenuRequest['commandStates'];
|
|
1186
|
+
};
|
|
1187
|
+
export type MediaControlsRequestPayload = BaseMenuRequestPayload & {
|
|
1188
|
+
kind: 'mediaControls';
|
|
1189
|
+
assetId: string;
|
|
1190
|
+
mediaType: MediaControlsRequest['mediaType'];
|
|
1191
|
+
status: string;
|
|
1192
|
+
displayWidthPercent: MediaControlsRequest['displayWidthPercent'];
|
|
1193
|
+
align: MediaControlsRequest['align'];
|
|
1194
|
+
/** 媒体资源 URL,可用于原生侧预览、下载或分享。 */
|
|
1195
|
+
url?: string;
|
|
1196
|
+
title?: string;
|
|
1197
|
+
alt?: string;
|
|
1198
|
+
poster?: string;
|
|
1199
|
+
width?: number;
|
|
1200
|
+
height?: number;
|
|
1201
|
+
duration?: number;
|
|
1202
|
+
mimeType?: string;
|
|
1203
|
+
size?: number;
|
|
1204
|
+
};
|
|
1205
|
+
export type TableControlsRequestPayload = BaseMenuRequestPayload & {
|
|
1206
|
+
kind: 'tableControls';
|
|
1207
|
+
};
|
|
1208
|
+
/**
|
|
1209
|
+
* 编辑器请求原生侧自绘的菜单。
|
|
1210
|
+
*
|
|
1211
|
+
* payload 不携带 submit/cancel 函数;RN/Flutter 通过 editor.menuResolved 或
|
|
1212
|
+
* editor.menuCanceled 把结果回传给 WebView runtime。
|
|
1213
|
+
*/
|
|
1214
|
+
export type MenuRequestPayload = HoverbarMenuRequestPayload | MediaControlsRequestPayload | TableControlsRequestPayload;
|
|
1215
|
+
export type MenuResolvedPayload = {
|
|
1216
|
+
requestId: string;
|
|
1217
|
+
menuItemId: string;
|
|
1218
|
+
};
|
|
1219
|
+
export type MenuCanceledPayload = {
|
|
1220
|
+
requestId: string;
|
|
1221
|
+
};
|
|
1055
1222
|
/**
|
|
1056
1223
|
* 编辑器 ready 后回传给原生侧的初始化结果。
|
|
1057
1224
|
*/
|
|
@@ -1092,6 +1259,14 @@ export type NativeToEditorMessage = {
|
|
|
1092
1259
|
id: string;
|
|
1093
1260
|
type: 'editor.payloadPanelCanceled';
|
|
1094
1261
|
payload: PayloadPanelCanceledPayload;
|
|
1262
|
+
} | {
|
|
1263
|
+
id: string;
|
|
1264
|
+
type: 'editor.menuResolved';
|
|
1265
|
+
payload: MenuResolvedPayload;
|
|
1266
|
+
} | {
|
|
1267
|
+
id: string;
|
|
1268
|
+
type: 'editor.menuCanceled';
|
|
1269
|
+
payload: MenuCanceledPayload;
|
|
1095
1270
|
} | {
|
|
1096
1271
|
id: string;
|
|
1097
1272
|
type: 'editor.uploadResolved';
|
|
@@ -1128,6 +1303,14 @@ export type EditorToNativeMessage = {
|
|
|
1128
1303
|
id?: string;
|
|
1129
1304
|
type: 'editor.payloadPanelRequest';
|
|
1130
1305
|
payload: PayloadPanelRequestPayload;
|
|
1306
|
+
} | {
|
|
1307
|
+
id?: string;
|
|
1308
|
+
type: 'editor.menuRequest';
|
|
1309
|
+
payload: MenuRequestPayload;
|
|
1310
|
+
} | {
|
|
1311
|
+
id?: string;
|
|
1312
|
+
type: 'editor.menuCanceled';
|
|
1313
|
+
payload: MenuCanceledPayload;
|
|
1131
1314
|
} | {
|
|
1132
1315
|
id?: string;
|
|
1133
1316
|
type: 'editor.uploadRequest';
|
|
@@ -1324,6 +1507,10 @@ export type PendingNativeUpload = {
|
|
|
1324
1507
|
export type PendingNativePayloadPanelRequest = {
|
|
1325
1508
|
request: PayloadPanelRequest;
|
|
1326
1509
|
};
|
|
1510
|
+
export type PendingNativeMenuRequest = {
|
|
1511
|
+
request: HoverbarMenuRequest | MediaControlsRequest | TableControlsRequest;
|
|
1512
|
+
unsubscribeDismiss: () => void;
|
|
1513
|
+
};
|
|
1327
1514
|
/**
|
|
1328
1515
|
* 原生上传完成消息。
|
|
1329
1516
|
*
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { B as t, a as o, b as r } from "./index-CuNKUHed.js";
|
|
2
2
|
import { BRIDGE_CONTENT_CHANGE_DEBOUNCE_MS as n, BRIDGE_HEIGHT_CHANGE_THROTTLE_MS as E, defaultBridgeEventTiming as l, isBridgeMessage as s } from "./bridge.js";
|
|
3
3
|
import { codeBlockLanguagePanel as d, codeBlockLanguagePayloadPanel as i, createDisabledCommandStates as _, defaultMenuSchema as c, defaultToolbarConfig as R, getCommandStateMatchValue as B, isCommandStateForCommand as C, isMenuItemCommandState as g, resolveToolbarMenu as S, tableHeaderMenuItems as f } from "./native-spec.js";
|
|
4
|
-
import { c as I, a as M, b as N } from "./index-
|
|
5
|
-
import { c as b, h as p } from "./index-
|
|
4
|
+
import { c as I, a as M, b as N } from "./index-CCAOnvex.js";
|
|
5
|
+
import { c as b, h as p } from "./index-BHrFfZ7O.js";
|
|
6
6
|
import { isEditorContentEmpty as h } from "./core.js";
|
|
7
7
|
import { r as H } from "./index-sbZNOcCB.js";
|
|
8
8
|
export {
|
package/dist/native-spec.d.ts
CHANGED
|
@@ -455,6 +455,9 @@ export type EditorCommand = {
|
|
|
455
455
|
type: 'media.pickImage';
|
|
456
456
|
} | {
|
|
457
457
|
type: 'media.pickVideo';
|
|
458
|
+
} | {
|
|
459
|
+
type: 'media.view';
|
|
460
|
+
assetId: string;
|
|
458
461
|
} | {
|
|
459
462
|
type: 'media.retry';
|
|
460
463
|
assetId: string;
|
|
@@ -677,7 +680,7 @@ export type PayloadPanelSchemaConfig = {
|
|
|
677
680
|
/**
|
|
678
681
|
* 参数面板配置表。
|
|
679
682
|
*
|
|
680
|
-
* 第一层 key 使用 `PayloadPanelSchema.id`,让 toolbar、hoverbar、code block
|
|
683
|
+
* 第一层 key 使用 `PayloadPanelSchema.id`,让 toolbar、hoverbar、code block 语言 controls、
|
|
681
684
|
* WebView 和业务自绘都能对同一份 panel schema 做一致裁剪。
|
|
682
685
|
*/
|
|
683
686
|
export type PayloadPanelConfig = Record<string, PayloadPanelSchemaConfig>;
|
|
@@ -723,7 +726,7 @@ export type PayloadPanelRequest = PayloadPanelOpenRequest & {
|
|
|
723
726
|
* 解析参数面板 schema。
|
|
724
727
|
*
|
|
725
728
|
* 这个纯函数只处理 schema 数据,不理解 DOM、Lexical 或具体命令;toolbar、hoverbar、
|
|
726
|
-
* code block
|
|
729
|
+
* code block 语言 controls 和 WebView host request 都应先走这里,保证默认 UI 和业务自绘同源。
|
|
727
730
|
*/
|
|
728
731
|
export declare const resolvePayloadPanelSchema: (panel: PayloadPanelSchema, config?: PayloadPanelConfig) => PayloadPanelSchema;
|
|
729
732
|
|
|
@@ -758,6 +761,103 @@ export type FloatingMenusConfig = {
|
|
|
758
761
|
* 原生菜单可以忽略这个字段并用同一个 key 映射平台 icon。
|
|
759
762
|
*/
|
|
760
763
|
export type RichTextEditorIcons = Partial<Record<string, string>>;
|
|
764
|
+
/**
|
|
765
|
+
* 自绘菜单提交目标。
|
|
766
|
+
*
|
|
767
|
+
* 业务侧通常只需要回传 `MenuItem.id`;保留完整 `MenuItem` 是为了 PC/H5 自绘层在同进程内
|
|
768
|
+
* 直接复用 request.items 中的对象,WebView bridge 仍只通过 id 回传。
|
|
769
|
+
*/
|
|
770
|
+
export type MenuControlSubmitTarget = string | MenuItem;
|
|
771
|
+
export type MenuControlButtonItem = {
|
|
772
|
+
type: 'button';
|
|
773
|
+
item: MenuItem;
|
|
774
|
+
active: boolean;
|
|
775
|
+
disabled: boolean;
|
|
776
|
+
};
|
|
777
|
+
export type MenuControlSeparatorItem = {
|
|
778
|
+
type: 'separator';
|
|
779
|
+
key: string;
|
|
780
|
+
};
|
|
781
|
+
export type MenuControlGroupItem = {
|
|
782
|
+
type: 'group';
|
|
783
|
+
key: string;
|
|
784
|
+
title: string;
|
|
785
|
+
icon?: string;
|
|
786
|
+
items: MenuControlButtonItem[];
|
|
787
|
+
};
|
|
788
|
+
/**
|
|
789
|
+
* 自绘菜单的跨端显示协议。
|
|
790
|
+
*
|
|
791
|
+
* DOM 默认 UI、PC/H5 自绘和 RN/Flutter 原生菜单都消费解析后的同一份结构;
|
|
792
|
+
* 这里不携带 DOM 节点、SVG 字符串或定位实现,只保留 schema/config 解析结果和状态。
|
|
793
|
+
*/
|
|
794
|
+
export type MenuControlDisplayItem = MenuControlButtonItem | MenuControlSeparatorItem | MenuControlGroupItem;
|
|
795
|
+
export type HoverbarMenuRequest = {
|
|
796
|
+
id: string;
|
|
797
|
+
items: MenuControlDisplayItem[];
|
|
798
|
+
commandStates: CommandState[];
|
|
799
|
+
readonly: boolean;
|
|
800
|
+
anchorRect?: PayloadPanelOpenRequest['anchorRect'];
|
|
801
|
+
/**
|
|
802
|
+
* 订阅这次菜单请求被编辑器侧关闭或替换。
|
|
803
|
+
*
|
|
804
|
+
* 宿主自绘菜单可以据此清理自己的浮层;WebView runtime 也用它通知 RN/Flutter
|
|
805
|
+
* 旧 request 已失效,避免晚到提交命中悬空菜单。
|
|
806
|
+
*/
|
|
807
|
+
subscribeDismiss(listener: () => void): () => void;
|
|
808
|
+
submit(target: MenuControlSubmitTarget): void;
|
|
809
|
+
cancel(): void;
|
|
810
|
+
};
|
|
811
|
+
export type MediaControlsRequest = {
|
|
812
|
+
id: string;
|
|
813
|
+
assetId: string;
|
|
814
|
+
mediaType: 'image' | 'video';
|
|
815
|
+
status: string;
|
|
816
|
+
displayWidthPercent: MediaDisplayWidthPercent;
|
|
817
|
+
align: MediaAlign;
|
|
818
|
+
items: MenuControlDisplayItem[];
|
|
819
|
+
readonly: boolean;
|
|
820
|
+
anchorRect?: PayloadPanelOpenRequest['anchorRect'];
|
|
821
|
+
/**
|
|
822
|
+
* 媒体资源 URL。
|
|
823
|
+
*
|
|
824
|
+
* 从 DOM 读取,可用于业务自绘层的预览、下载或分享。
|
|
825
|
+
*/
|
|
826
|
+
url?: string;
|
|
827
|
+
title?: string;
|
|
828
|
+
alt?: string;
|
|
829
|
+
poster?: string;
|
|
830
|
+
width?: number;
|
|
831
|
+
height?: number;
|
|
832
|
+
/** 视频时长(秒),仅 video 节点 loadedmetadata 后可读。 */
|
|
833
|
+
duration?: number;
|
|
834
|
+
/** 媒体 MIME 类型,DOM 不保证一定可读。 */
|
|
835
|
+
mimeType?: string;
|
|
836
|
+
/** 文件大小(字节),DOM 不保证一定可读。 */
|
|
837
|
+
size?: number;
|
|
838
|
+
/**
|
|
839
|
+
* 订阅这次菜单请求被编辑器侧关闭或替换。
|
|
840
|
+
*
|
|
841
|
+
* 媒体节点切换、点击正文或节点销毁都会让旧自绘菜单失效;监听方需要同步关闭外部 UI。
|
|
842
|
+
*/
|
|
843
|
+
subscribeDismiss(listener: () => void): () => void;
|
|
844
|
+
submit(target: MenuControlSubmitTarget): void;
|
|
845
|
+
cancel(): void;
|
|
846
|
+
};
|
|
847
|
+
export type TableControlsRequest = {
|
|
848
|
+
id: string;
|
|
849
|
+
items: MenuControlDisplayItem[];
|
|
850
|
+
readonly: boolean;
|
|
851
|
+
anchorRect?: PayloadPanelOpenRequest['anchorRect'];
|
|
852
|
+
/**
|
|
853
|
+
* 订阅这次菜单请求被编辑器侧关闭或替换。
|
|
854
|
+
*
|
|
855
|
+
* 表格激活态变化时会触发 dismiss,保证业务自绘和 DOM 内部 controls 生命周期一致。
|
|
856
|
+
*/
|
|
857
|
+
subscribeDismiss(listener: () => void): () => void;
|
|
858
|
+
submit(target: MenuControlSubmitTarget): void;
|
|
859
|
+
cancel(): void;
|
|
860
|
+
};
|
|
761
861
|
export type RichTextEditorOptions = {
|
|
762
862
|
value?: Partial<EditorContent>;
|
|
763
863
|
readonly?: boolean;
|
|
@@ -847,6 +947,26 @@ export type RichTextEditorOptions = {
|
|
|
847
947
|
slashCommandProvider?: SlashCommandProvider;
|
|
848
948
|
slashCommandMenuConfig?: SlashCommandMenuConfig;
|
|
849
949
|
onSlashCommandMenuRequest?: (request: SlashCommandMenuRequest) => boolean | void;
|
|
950
|
+
/**
|
|
951
|
+
* 选中文本 hoverbar 自绘接管。
|
|
952
|
+
*
|
|
953
|
+
* 返回 true 时 DOM 不渲染默认 hoverbar;业务侧需要调用 request.submit(id) 执行菜单,
|
|
954
|
+
* 或调用 request.cancel() 关闭这次自绘菜单。
|
|
955
|
+
*/
|
|
956
|
+
onHoverbarMenuRequest?: (request: HoverbarMenuRequest) => boolean | void;
|
|
957
|
+
/**
|
|
958
|
+
* 图片/视频 overlay controls 自绘接管。
|
|
959
|
+
*
|
|
960
|
+
* 返回 true 时 DOM 不渲染默认媒体浮条;同一份 items 可用于 PC/H5 浮窗或 RN/Flutter
|
|
961
|
+
* 原生面板,提交时回传菜单 id 即可。
|
|
962
|
+
*/
|
|
963
|
+
onMediaControlsRequest?: (request: MediaControlsRequest) => boolean | void;
|
|
964
|
+
/**
|
|
965
|
+
* 表格 controls 自绘接管。
|
|
966
|
+
*
|
|
967
|
+
* 返回 true 时 DOM 不渲染默认表格浮条,业务菜单提交后仍复用 BridgeRTE 内部表格命令执行。
|
|
968
|
+
*/
|
|
969
|
+
onTableControlsRequest?: (request: TableControlsRequest) => boolean | void;
|
|
850
970
|
placeholder?: string;
|
|
851
971
|
maxLength?: number;
|
|
852
972
|
/**
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const g="one-light",t={keyword:"#a626a4",function:"#4078f2",operator:"#0184bc",tag:"#c18401",property:"#e45649",string:"#50a14f",attrName:"#986801"},i={[t.keyword]:"keyword",[t.function]:"function",[t.operator]:"operator",[t.tag]:"tag",[t.property]:"property",[t.string]:"string",[t.attrName]:"attr-name"},h=e=>e?i[e.toLowerCase()]:void 0,n=e=>{let o=0;for(let r=0;r<e.length;r+=1)o=Math.imul(o^e.charCodeAt(r),16777619);return(o>>>0).toString(36)};exports.bridgeCodeHighlightTheme=g;exports.getCodeHighlightCodeHash=n;exports.getHighlightTypeFromColor=h;
|
|
2
|
+
//# sourceMappingURL=shikiHighlightData-DU78Iupf.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shikiHighlightData-DU78Iupf.cjs","sources":["../../dom/src/codeHighlight/shikiHighlightData.ts"],"sourcesContent":["export const bridgeCodeHighlightTheme = 'one-light';\n\n/*\n * Shiki one-light 输出的是主题色 inline style;这里把色值集中为语义常量,\n * 避免导出 HTML 时把主题色 inline style 当成内容协议持久化。\n */\nconst oneLightColorByHighlightType = {\n keyword: '#a626a4',\n function: '#4078f2',\n operator: '#0184bc',\n tag: '#c18401',\n property: '#e45649',\n string: '#50a14f',\n attrName: '#986801'\n} as const;\n\nconst codeHighlightTypeByOneLightColor: Record<string, string | undefined> = {\n [oneLightColorByHighlightType.keyword]: 'keyword',\n [oneLightColorByHighlightType.function]: 'function',\n [oneLightColorByHighlightType.operator]: 'operator',\n [oneLightColorByHighlightType.tag]: 'tag',\n [oneLightColorByHighlightType.property]: 'property',\n [oneLightColorByHighlightType.string]: 'string',\n [oneLightColorByHighlightType.attrName]: 'attr-name'\n};\n\nexport const getHighlightTypeFromColor = (color: string | undefined) => (\n color ? codeHighlightTypeByOneLightColor[color.toLowerCase()] : undefined\n);\n\nexport const getHighlightTypeFromStyle = (style: string) => {\n const [, color] = style.match(/(?:^|;)color:\\s*(#[0-9a-f]{3,8})/i) ?? [];\n\n return getHighlightTypeFromColor(color);\n};\n\n/*\n * code hash 只用于长代码任务签名去重,不承担安全用途。这里用稳定的 32 位滚动 hash,\n * 避免把完整 code 拼进 pending task signature 造成重复大字符串分配。\n */\nexport const getCodeHighlightCodeHash = (code: string) => {\n let hash = 0;\n\n for (let index = 0; index < code.length; index += 1) {\n hash = Math.imul(hash ^ code.charCodeAt(index), 16777619);\n }\n\n return (hash >>> 0).toString(36);\n};\n"],"names":["bridgeCodeHighlightTheme","oneLightColorByHighlightType","codeHighlightTypeByOneLightColor","getHighlightTypeFromColor","color","getCodeHighlightCodeHash","code","hash","index"],"mappings":"aAAO,MAAMA,EAA2B,YAMlCC,EAA+B,CACnC,QAAS,UACT,SAAU,UACV,SAAU,UACV,IAAK,UACL,SAAU,UACV,OAAQ,UACR,SAAU,SACZ,EAEMC,EAAuE,CAC3E,CAACD,EAA6B,OAAO,EAAG,UACxC,CAACA,EAA6B,QAAQ,EAAG,WACzC,CAACA,EAA6B,QAAQ,EAAG,WACzC,CAACA,EAA6B,GAAG,EAAG,MACpC,CAACA,EAA6B,QAAQ,EAAG,WACzC,CAACA,EAA6B,MAAM,EAAG,SACvC,CAACA,EAA6B,QAAQ,EAAG,WAC3C,EAEaE,EAA6BC,GACxCA,EAAQF,EAAiCE,EAAM,YAAA,CAAa,EAAI,OAarDC,EAA4BC,GAAiB,CACxD,IAAIC,EAAO,EAEX,QAASC,EAAQ,EAAGA,EAAQF,EAAK,OAAQE,GAAS,EAChDD,EAAO,KAAK,KAAKA,EAAOD,EAAK,WAAWE,CAAK,EAAG,QAAQ,EAG1D,OAAQD,IAAS,GAAG,SAAS,EAAE,CACjC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
const a = "one-light", t = {
|
|
2
|
+
keyword: "#a626a4",
|
|
3
|
+
function: "#4078f2",
|
|
4
|
+
operator: "#0184bc",
|
|
5
|
+
tag: "#c18401",
|
|
6
|
+
property: "#e45649",
|
|
7
|
+
string: "#50a14f",
|
|
8
|
+
attrName: "#986801"
|
|
9
|
+
}, g = {
|
|
10
|
+
[t.keyword]: "keyword",
|
|
11
|
+
[t.function]: "function",
|
|
12
|
+
[t.operator]: "operator",
|
|
13
|
+
[t.tag]: "tag",
|
|
14
|
+
[t.property]: "property",
|
|
15
|
+
[t.string]: "string",
|
|
16
|
+
[t.attrName]: "attr-name"
|
|
17
|
+
}, i = (o) => o ? g[o.toLowerCase()] : void 0, n = (o) => {
|
|
18
|
+
let e = 0;
|
|
19
|
+
for (let r = 0; r < o.length; r += 1)
|
|
20
|
+
e = Math.imul(e ^ o.charCodeAt(r), 16777619);
|
|
21
|
+
return (e >>> 0).toString(36);
|
|
22
|
+
};
|
|
23
|
+
export {
|
|
24
|
+
n as a,
|
|
25
|
+
a as b,
|
|
26
|
+
i as g
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=shikiHighlightData-Dn-hlfiF.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shikiHighlightData-Dn-hlfiF.js","sources":["../../dom/src/codeHighlight/shikiHighlightData.ts"],"sourcesContent":["export const bridgeCodeHighlightTheme = 'one-light';\n\n/*\n * Shiki one-light 输出的是主题色 inline style;这里把色值集中为语义常量,\n * 避免导出 HTML 时把主题色 inline style 当成内容协议持久化。\n */\nconst oneLightColorByHighlightType = {\n keyword: '#a626a4',\n function: '#4078f2',\n operator: '#0184bc',\n tag: '#c18401',\n property: '#e45649',\n string: '#50a14f',\n attrName: '#986801'\n} as const;\n\nconst codeHighlightTypeByOneLightColor: Record<string, string | undefined> = {\n [oneLightColorByHighlightType.keyword]: 'keyword',\n [oneLightColorByHighlightType.function]: 'function',\n [oneLightColorByHighlightType.operator]: 'operator',\n [oneLightColorByHighlightType.tag]: 'tag',\n [oneLightColorByHighlightType.property]: 'property',\n [oneLightColorByHighlightType.string]: 'string',\n [oneLightColorByHighlightType.attrName]: 'attr-name'\n};\n\nexport const getHighlightTypeFromColor = (color: string | undefined) => (\n color ? codeHighlightTypeByOneLightColor[color.toLowerCase()] : undefined\n);\n\nexport const getHighlightTypeFromStyle = (style: string) => {\n const [, color] = style.match(/(?:^|;)color:\\s*(#[0-9a-f]{3,8})/i) ?? [];\n\n return getHighlightTypeFromColor(color);\n};\n\n/*\n * code hash 只用于长代码任务签名去重,不承担安全用途。这里用稳定的 32 位滚动 hash,\n * 避免把完整 code 拼进 pending task signature 造成重复大字符串分配。\n */\nexport const getCodeHighlightCodeHash = (code: string) => {\n let hash = 0;\n\n for (let index = 0; index < code.length; index += 1) {\n hash = Math.imul(hash ^ code.charCodeAt(index), 16777619);\n }\n\n return (hash >>> 0).toString(36);\n};\n"],"names":["bridgeCodeHighlightTheme","oneLightColorByHighlightType","codeHighlightTypeByOneLightColor","getHighlightTypeFromColor","color","getCodeHighlightCodeHash","code","hash","index"],"mappings":"AAAO,MAAMA,IAA2B,aAMlCC,IAA+B;AAAA,EACnC,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,KAAK;AAAA,EACL,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,UAAU;AACZ,GAEMC,IAAuE;AAAA,EAC3E,CAACD,EAA6B,OAAO,GAAG;AAAA,EACxC,CAACA,EAA6B,QAAQ,GAAG;AAAA,EACzC,CAACA,EAA6B,QAAQ,GAAG;AAAA,EACzC,CAACA,EAA6B,GAAG,GAAG;AAAA,EACpC,CAACA,EAA6B,QAAQ,GAAG;AAAA,EACzC,CAACA,EAA6B,MAAM,GAAG;AAAA,EACvC,CAACA,EAA6B,QAAQ,GAAG;AAC3C,GAEaE,IAA4B,CAACC,MACxCA,IAAQF,EAAiCE,EAAM,YAAA,CAAa,IAAI,QAarDC,IAA2B,CAACC,MAAiB;AACxD,MAAIC,IAAO;AAEX,WAASC,IAAQ,GAAGA,IAAQF,EAAK,QAAQE,KAAS;AAChD,IAAAD,IAAO,KAAK,KAAKA,IAAOD,EAAK,WAAWE,CAAK,GAAG,QAAQ;AAG1D,UAAQD,MAAS,GAAG,SAAS,EAAE;AACjC;"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("@shikijs/core"),m=require("@shikijs/engine-javascript"),w=require("shiki/langs"),x=require("shiki/themes"),y=require("./shikiHighlightData-DU78Iupf.cjs"),L=/^diff-([\w-]+)/i;let r=null;const g=new Set,u=new Set,c=()=>(r||(r=f.createHighlighterCoreSync({engine:m.createJavaScriptRegexEngine(),langs:[],themes:[]})),r),p=e=>{var i;const n=(i=L.exec(e))==null?void 0:i[1];return{isDiff:n!==void 0,languageId:n??e}},I=async e=>{if(u.has(e))return;const n=x.bundledThemesInfo.find(t=>t.id===e);if(!n)throw new Error(`Unsupported Shiki theme: ${e}`);await c().loadTheme(n.import()),u.add(e)},S=async e=>{const{languageId:n}=p(e);if(g.has(n)||f.isSpecialLang(n)){g.add(n);return}const t=w.bundledLanguagesInfo.find(i=>{var s;return i.id===n||((s=i.aliases)==null?void 0:s.includes(n))});if(!t)throw new Error(`Unsupported Shiki language: ${e}`);await c().loadLanguage(t.import()),g.add(n)},k=e=>e===""?[]:[{text:e}],q=(e,n)=>{const t=[];return e.forEach((i,s)=>{let o=i.content;if(n&&s===0&&o.length>0){const d=["+","-",">","<"," "],T=["inserted","deleted","inserted","deleted","unchanged"],a=d.indexOf(o.slice(0,1));if(a!==-1){const l=d[a],h=T[a];if(!l||!h)return;t.push({highlightType:h,text:l}),o=o.slice(1)}}o!==""&&t.push({highlightType:y.getHighlightTypeFromColor(i.color),text:o})}),t},H=async({code:e,language:n,theme:t})=>{if(!n)return e.split(`
|
|
2
|
+
`).map(k);const{isDiff:i,languageId:s}=p(n);return await I(t),await S(n),c().codeToTokens(e,{lang:s,theme:t}).tokens.map(o=>q(o,i))};exports.tokenizeCodeHighlightRequest=H;
|
|
3
|
+
//# sourceMappingURL=shikiTokenizerRuntime.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shikiTokenizerRuntime.cjs","sources":["../../dom/src/codeHighlight/shikiTokenizerRuntime.ts"],"sourcesContent":["import {\n createHighlighterCoreSync,\n isSpecialLang,\n type HighlighterCore\n} from '@shikijs/core';\nimport { createJavaScriptRegexEngine } from '@shikijs/engine-javascript';\nimport { bundledLanguagesInfo } from 'shiki/langs';\nimport { bundledThemesInfo } from 'shiki/themes';\nimport type { ThemedToken } from '@shikijs/types';\nimport type {\n CodeHighlightWorkerLine,\n CodeHighlightWorkerRequest\n} from './runtime/type';\nimport { getHighlightTypeFromColor } from './shikiHighlightData';\n\nconst diffLanguageRegex = /^diff-([\\w-]+)/i;\n\nlet highlighter: HighlighterCore | null = null;\nconst loadedLanguages = new Set<string>();\nconst loadedThemes = new Set<string>();\n\nconst getHighlighter = () => {\n if (!highlighter) {\n /*\n * Shiki runtime 可以在 worker 或 worker 失败后的 fallback chunk 中运行。\n * 主编辑器入口不静态 import 这个模块,避免普通编辑器初始化就拉 grammar/theme 运行时。\n */\n highlighter = createHighlighterCoreSync({\n engine: createJavaScriptRegexEngine(),\n langs: [],\n themes: []\n });\n }\n\n return highlighter;\n};\n\nconst resolveLanguage = (language: string) => {\n const diffedLanguage = diffLanguageRegex.exec(language)?.[1];\n const languageId = diffedLanguage ?? language;\n\n return {\n isDiff: diffedLanguage !== undefined,\n languageId\n };\n};\n\nconst loadTheme = async (theme: string) => {\n if (loadedThemes.has(theme)) return;\n\n const themeInfo = bundledThemesInfo.find((info) => info.id === theme);\n if (!themeInfo) throw new Error(`Unsupported Shiki theme: ${theme}`);\n\n await getHighlighter().loadTheme(themeInfo.import());\n loadedThemes.add(theme);\n};\n\nconst loadLanguage = async (language: string) => {\n const { languageId } = resolveLanguage(language);\n\n if (loadedLanguages.has(languageId) || isSpecialLang(languageId)) {\n loadedLanguages.add(languageId);\n return;\n }\n\n const languageInfo = bundledLanguagesInfo.find((info) => (\n info.id === languageId || info.aliases?.includes(languageId)\n ));\n\n if (!languageInfo) throw new Error(`Unsupported Shiki language: ${language}`);\n\n await getHighlighter().loadLanguage(languageInfo.import());\n loadedLanguages.add(languageId);\n};\n\nconst createPlainTokenLine = (text: string): CodeHighlightWorkerLine => (\n text === '' ? [] : [{ text }]\n);\n\nconst mapTokenLine = (\n line: ThemedToken[],\n isDiff: boolean\n): CodeHighlightWorkerLine => {\n const result: CodeHighlightWorkerLine = [];\n\n line.forEach((token, tokenIndex) => {\n let text = token.content;\n\n if (isDiff && tokenIndex === 0 && text.length > 0) {\n const prefixes = ['+', '-', '>', '<', ' '];\n const prefixTypes = ['inserted', 'deleted', 'inserted', 'deleted', 'unchanged'];\n const prefixIndex = prefixes.indexOf(text.slice(0, 1));\n\n if (prefixIndex !== -1) {\n const prefix = prefixes[prefixIndex];\n const highlightType = prefixTypes[prefixIndex];\n\n if (!prefix || !highlightType) return;\n\n result.push({\n highlightType,\n text: prefix\n });\n text = text.slice(1);\n }\n }\n\n if (text !== '') {\n result.push({\n highlightType: getHighlightTypeFromColor(token.color),\n text\n });\n }\n });\n\n return result;\n};\n\nexport const tokenizeCodeHighlightRequest = async ({\n code,\n language,\n theme\n}: CodeHighlightWorkerRequest): Promise<CodeHighlightWorkerLine[]> => {\n if (!language) return code.split('\\n').map(createPlainTokenLine);\n\n const { isDiff, languageId } = resolveLanguage(language);\n\n await loadTheme(theme);\n await loadLanguage(language);\n\n return getHighlighter().codeToTokens(code, {\n lang: languageId,\n theme\n }).tokens.map((line) => mapTokenLine(line, isDiff));\n};\n"],"names":["diffLanguageRegex","highlighter","loadedLanguages","loadedThemes","getHighlighter","createHighlighterCoreSync","createJavaScriptRegexEngine","resolveLanguage","language","diffedLanguage","_a","loadTheme","theme","themeInfo","bundledThemesInfo","info","loadLanguage","languageId","isSpecialLang","languageInfo","bundledLanguagesInfo","createPlainTokenLine","text","mapTokenLine","line","isDiff","result","token","tokenIndex","prefixes","prefixTypes","prefixIndex","prefix","highlightType","getHighlightTypeFromColor","tokenizeCodeHighlightRequest","code"],"mappings":"2PAeMA,EAAoB,kBAE1B,IAAIC,EAAsC,KAC1C,MAAMC,MAAsB,IACtBC,MAAmB,IAEnBC,EAAiB,KAChBH,IAKHA,EAAcI,EAAAA,0BAA0B,CACtC,OAAQC,EAAAA,4BAAA,EACR,MAAO,CAAA,EACP,OAAQ,CAAA,CAAC,CACV,GAGIL,GAGHM,EAAmBC,GAAqB,OAC5C,MAAMC,GAAiBC,EAAAV,EAAkB,KAAKQ,CAAQ,IAA/B,YAAAE,EAAmC,GAG1D,MAAO,CACL,OAAQD,IAAmB,OAC3B,WAJiBA,GAAkBD,CAInC,CAEJ,EAEMG,EAAY,MAAOC,GAAkB,CACzC,GAAIT,EAAa,IAAIS,CAAK,EAAG,OAE7B,MAAMC,EAAYC,EAAAA,kBAAkB,KAAMC,GAASA,EAAK,KAAOH,CAAK,EACpE,GAAI,CAACC,EAAW,MAAM,IAAI,MAAM,4BAA4BD,CAAK,EAAE,EAEnE,MAAMR,EAAA,EAAiB,UAAUS,EAAU,QAAQ,EACnDV,EAAa,IAAIS,CAAK,CACxB,EAEMI,EAAe,MAAOR,GAAqB,CAC/C,KAAM,CAAE,WAAAS,CAAA,EAAeV,EAAgBC,CAAQ,EAE/C,GAAIN,EAAgB,IAAIe,CAAU,GAAKC,EAAAA,cAAcD,CAAU,EAAG,CAChEf,EAAgB,IAAIe,CAAU,EAC9B,MACF,CAEA,MAAME,EAAeC,EAAAA,qBAAqB,KAAML,GAAA,OAC9C,OAAAA,EAAK,KAAOE,KAAcP,EAAAK,EAAK,UAAL,YAAAL,EAAc,SAASO,IAClD,EAED,GAAI,CAACE,EAAc,MAAM,IAAI,MAAM,+BAA+BX,CAAQ,EAAE,EAE5E,MAAMJ,EAAA,EAAiB,aAAae,EAAa,QAAQ,EACzDjB,EAAgB,IAAIe,CAAU,CAChC,EAEMI,EAAwBC,GAC5BA,IAAS,GAAK,GAAK,CAAC,CAAE,KAAAA,EAAM,EAGxBC,EAAe,CACnBC,EACAC,IAC4B,CAC5B,MAAMC,EAAkC,CAAA,EAExC,OAAAF,EAAK,QAAQ,CAACG,EAAOC,IAAe,CAClC,IAAIN,EAAOK,EAAM,QAEjB,GAAIF,GAAUG,IAAe,GAAKN,EAAK,OAAS,EAAG,CACjD,MAAMO,EAAW,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EACnCC,EAAc,CAAC,WAAY,UAAW,WAAY,UAAW,WAAW,EACxEC,EAAcF,EAAS,QAAQP,EAAK,MAAM,EAAG,CAAC,CAAC,EAErD,GAAIS,IAAgB,GAAI,CACtB,MAAMC,EAASH,EAASE,CAAW,EAC7BE,EAAgBH,EAAYC,CAAW,EAE7C,GAAI,CAACC,GAAU,CAACC,EAAe,OAE/BP,EAAO,KAAK,CACV,cAAAO,EACA,KAAMD,CAAA,CACP,EACDV,EAAOA,EAAK,MAAM,CAAC,CACrB,CACF,CAEIA,IAAS,IACXI,EAAO,KAAK,CACV,cAAeQ,EAAAA,0BAA0BP,EAAM,KAAK,EACpD,KAAAL,CAAA,CACD,CAEL,CAAC,EAEMI,CACT,EAEaS,EAA+B,MAAO,CACjD,KAAAC,EACA,SAAA5B,EACA,MAAAI,CACF,IAAsE,CACpE,GAAI,CAACJ,EAAU,OAAO4B,EAAK,MAAM;AAAA,CAAI,EAAE,IAAIf,CAAoB,EAE/D,KAAM,CAAE,OAAAI,EAAQ,WAAAR,GAAeV,EAAgBC,CAAQ,EAEvD,aAAMG,EAAUC,CAAK,EACrB,MAAMI,EAAaR,CAAQ,EAEpBJ,EAAA,EAAiB,aAAagC,EAAM,CACzC,KAAMnB,EACN,MAAAL,CAAA,CACD,EAAE,OAAO,IAAKY,GAASD,EAAaC,EAAMC,CAAM,CAAC,CACpD"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { isSpecialLang as m, createHighlighterCoreSync as T } from "@shikijs/core";
|
|
2
|
+
import { createJavaScriptRegexEngine as w } from "@shikijs/engine-javascript";
|
|
3
|
+
import { bundledLanguagesInfo as x } from "shiki/langs";
|
|
4
|
+
import { bundledThemesInfo as L } from "shiki/themes";
|
|
5
|
+
import { g as I } from "./shikiHighlightData-Dn-hlfiF.js";
|
|
6
|
+
const y = /^diff-([\w-]+)/i;
|
|
7
|
+
let s = null;
|
|
8
|
+
const d = /* @__PURE__ */ new Set(), h = /* @__PURE__ */ new Set(), g = () => (s || (s = T({
|
|
9
|
+
engine: w(),
|
|
10
|
+
langs: [],
|
|
11
|
+
themes: []
|
|
12
|
+
})), s), p = (e) => {
|
|
13
|
+
var i;
|
|
14
|
+
const n = (i = y.exec(e)) == null ? void 0 : i[1];
|
|
15
|
+
return {
|
|
16
|
+
isDiff: n !== void 0,
|
|
17
|
+
languageId: n ?? e
|
|
18
|
+
};
|
|
19
|
+
}, S = async (e) => {
|
|
20
|
+
if (h.has(e)) return;
|
|
21
|
+
const n = L.find((t) => t.id === e);
|
|
22
|
+
if (!n) throw new Error(`Unsupported Shiki theme: ${e}`);
|
|
23
|
+
await g().loadTheme(n.import()), h.add(e);
|
|
24
|
+
}, k = async (e) => {
|
|
25
|
+
const { languageId: n } = p(e);
|
|
26
|
+
if (d.has(n) || m(n)) {
|
|
27
|
+
d.add(n);
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
const t = x.find((i) => {
|
|
31
|
+
var r;
|
|
32
|
+
return i.id === n || ((r = i.aliases) == null ? void 0 : r.includes(n));
|
|
33
|
+
});
|
|
34
|
+
if (!t) throw new Error(`Unsupported Shiki language: ${e}`);
|
|
35
|
+
await g().loadLanguage(t.import()), d.add(n);
|
|
36
|
+
}, E = (e) => e === "" ? [] : [{ text: e }], H = (e, n) => {
|
|
37
|
+
const t = [];
|
|
38
|
+
return e.forEach((i, r) => {
|
|
39
|
+
let o = i.content;
|
|
40
|
+
if (n && r === 0 && o.length > 0) {
|
|
41
|
+
const c = ["+", "-", ">", "<", " "], u = ["inserted", "deleted", "inserted", "deleted", "unchanged"], a = c.indexOf(o.slice(0, 1));
|
|
42
|
+
if (a !== -1) {
|
|
43
|
+
const l = c[a], f = u[a];
|
|
44
|
+
if (!l || !f) return;
|
|
45
|
+
t.push({
|
|
46
|
+
highlightType: f,
|
|
47
|
+
text: l
|
|
48
|
+
}), o = o.slice(1);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
o !== "" && t.push({
|
|
52
|
+
highlightType: I(i.color),
|
|
53
|
+
text: o
|
|
54
|
+
});
|
|
55
|
+
}), t;
|
|
56
|
+
}, U = async ({
|
|
57
|
+
code: e,
|
|
58
|
+
language: n,
|
|
59
|
+
theme: t
|
|
60
|
+
}) => {
|
|
61
|
+
if (!n) return e.split(`
|
|
62
|
+
`).map(E);
|
|
63
|
+
const { isDiff: i, languageId: r } = p(n);
|
|
64
|
+
return await S(t), await k(n), g().codeToTokens(e, {
|
|
65
|
+
lang: r,
|
|
66
|
+
theme: t
|
|
67
|
+
}).tokens.map((o) => H(o, i));
|
|
68
|
+
};
|
|
69
|
+
export {
|
|
70
|
+
U as tokenizeCodeHighlightRequest
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=shikiTokenizerRuntime.js.map
|