yanki 2.0.2 → 2.0.4
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/dist/.DS_Store +0 -0
- package/dist/bin/angular-html-BMgm7jKv.js +1 -0
- package/dist/bin/{angular-html-qzs4hSq7.js → angular-html-DaLgCdY4.js} +1 -1
- package/dist/bin/{angular-ts-CugMBDjk.js → angular-ts-_FOddbkN.js} +1 -1
- package/dist/{standalone/apl-B3nAIz3U.js → bin/apl-Ct_wGLTZ.js} +1 -1
- package/dist/bin/{astro-Cm_dHcy3.js → astro-ZcVfwsPl.js} +1 -1
- package/dist/bin/bird2-CFa4jX8R.js +1 -0
- package/dist/bin/{blade-U1S3oe2k.js → blade-CxETtqpr.js} +1 -1
- package/dist/bin/{bsl-0ORkkYmh.js → bsl-C-_RJCQ1.js} +1 -1
- package/dist/bin/c-24YQ-N5y.js +1 -0
- package/dist/bin/{cairo-kiUMtAsX.js → cairo-Cud9ep5K.js} +1 -1
- package/dist/bin/cli.js +116 -99
- package/dist/bin/cmake-CmanohFH.js +1 -0
- package/dist/bin/cobol-D6VccPzE.js +1 -0
- package/dist/{standalone/coffee-CWthmHqg.js → bin/coffee-C_ytDHuo.js} +1 -1
- package/dist/bin/{cpp-5C3nn41J.js → cpp-BGpKj3Ti.js} +1 -1
- package/dist/bin/cpp-BuOb9E77.js +1 -0
- package/dist/{standalone/crystal-BP8Y_JHu.js → bin/crystal-D7hCMRTO.js} +1 -1
- package/dist/bin/csharp-iOHJHJRL.js +1 -0
- package/dist/bin/css-CLlsZvz0.js +1 -0
- package/dist/bin/{css-C-sfFA03.js → css-OMa7meLh.js} +1 -1
- package/dist/bin/csv-BPqpBVRL.js +1 -0
- package/dist/bin/dart-DIQ3D60A.js +1 -0
- package/dist/bin/diff-B1zQwqWC.js +1 -0
- package/dist/bin/{edge-DetFnTa9.js → edge-BJ5yEaU_.js} +1 -1
- package/dist/{standalone/elixir-DaqZx2n-.js → bin/elixir-DQ_HZ35Z.js} +1 -1
- package/dist/bin/{elm-CD-7RX5d.js → elm-BPdX9LvI.js} +1 -1
- package/dist/bin/emacs-lisp-OLcd4D2Y.js +1 -0
- package/dist/bin/{erb-KO-P0SR0.js → erb-DTravkov.js} +1 -1
- package/dist/bin/{erlang-BFKCgnPw.js → erlang-CkFToG4V.js} +1 -1
- package/dist/bin/{fortran-fixed-form-t-oisds5.js → fortran-fixed-form-CIezU5eM.js} +1 -1
- package/dist/bin/fortran-free-form-C04P-dlU.js +1 -0
- package/dist/bin/{fsharp-Dq5iPDb2.js → fsharp-Dm-_SWJW.js} +1 -1
- package/dist/bin/{gdresource-BNzPbQHR.js → gdresource-fnofKreT.js} +1 -1
- package/dist/bin/gdscript-BtzCMxvf.js +1 -0
- package/dist/bin/gdshader-1gA3GZ5B.js +1 -0
- package/dist/bin/{git-commit-Bkc1RnxN.js → git-commit-_8RqjgP7.js} +1 -1
- package/dist/bin/{git-rebase-BfAeU5XI.js → git-rebase-Z73Q-A3B.js} +1 -1
- package/dist/bin/{glimmer-js-BZd4ZfVU.js → glimmer-js-DIMbe603.js} +1 -1
- package/dist/bin/{glimmer-ts-UFNn11p7.js → glimmer-ts-B2T7GOhV.js} +1 -1
- package/dist/bin/glsl-CGmNjIir.js +1 -0
- package/dist/bin/{glsl-r9XJn22U.js → glsl-DEYttXt8.js} +1 -1
- package/dist/bin/{go-b5i9ZOwA.js → go-Ci0dAgBY.js} +1 -1
- package/dist/bin/go-DN89cYst.js +1 -0
- package/dist/bin/{graphql-J1xs8wG6.js → graphql-CCYPSk-D.js} +1 -1
- package/dist/bin/graphql-DOCOrfKm.js +1 -0
- package/dist/bin/{hack-DTChbFem.js → hack-DZ-_iRCj.js} +1 -1
- package/dist/bin/{haml-lACpmly2.js → haml-DfH0AzHT.js} +1 -1
- package/dist/bin/haml-DvXbkT9I.js +1 -0
- package/dist/bin/{handlebars-B7ppocUa.js → handlebars-CF9TGn7D.js} +1 -1
- package/dist/bin/haxe-DTUNnskd.js +1 -0
- package/dist/bin/hlsl-BJTcBv8Y.js +1 -0
- package/dist/bin/{horizon-bright-yXhu6egb.js → horizon-bright-B9AmrisQ.js} +1 -1
- package/dist/bin/html-Cuf7VAVg.js +1 -0
- package/dist/bin/{html-JSn89dCS.js → html-RMei9Tro.js} +1 -1
- package/dist/bin/{html-derivative-DhivRM2V.js → html-derivative-BTT60mrv.js} +1 -1
- package/dist/bin/html-derivative-D-Zlk8m5.js +1 -0
- package/dist/bin/{http-CfCri10f.js → http-bTeAg4ti.js} +1 -1
- package/dist/{standalone/hurl-DLBSghyU.js → bin/hurl-DNDYXzGk.js} +1 -1
- package/dist/bin/{hxml-BY0JJAFc.js → hxml-DRC8Rsp0.js} +1 -1
- package/dist/bin/java-CQDUhPYw.js +1 -0
- package/dist/bin/javascript-DPhXM0a6.js +1 -0
- package/dist/bin/{jinja-D4pZPcl3.js → jinja-B64tWnuH.js} +1 -1
- package/dist/bin/{jison-CU_JndNM.js → jison-DzJXWpYr.js} +1 -1
- package/dist/bin/json-CJDJkUtd.js +1 -0
- package/dist/bin/jsx-nttEtUui.js +1 -0
- package/dist/bin/{julia-DjiOTm9M.js → julia-CdOV4Bps.js} +1 -1
- package/dist/bin/{just-oDTZGZbN.js → just--5xSNTPr.js} +1 -1
- package/dist/{standalone/kusto-SD8_YGH-.js → bin/kusto-CrSJ-cBg.js} +1 -1
- package/dist/bin/{latex-B8d5LcJ8.js → latex-BAAvcuYp.js} +1 -1
- package/dist/bin/less-EIhUe2O9.js +1 -0
- package/dist/bin/{liquid-DuGPT5mZ.js → liquid-Bqh7lbg7.js} +1 -1
- package/dist/bin/lua-BMcOOLRU.js +1 -0
- package/dist/bin/{lua-mUj-7rV8.js → lua-yurtT0y-.js} +1 -1
- package/dist/bin/markdown-DVKCeKaE.js +1 -0
- package/dist/bin/{marko-CEM61Zib.js → marko-R0Qz5H3f.js} +1 -1
- package/dist/bin/{mdc-Dya9Bdmr.js → mdc-K4Wa14qY.js} +1 -1
- package/dist/bin/{nextflow-hLaJXrFj.js → nextflow-BFCLGvvZ.js} +1 -1
- package/dist/bin/nextflow-groovy-BXH4qERK.js +1 -0
- package/dist/bin/nextflow-groovy-CkcyVHVG.js +1 -0
- package/dist/bin/{nginx-CR6uKwZy.js → nginx-Dbalglmi.js} +1 -1
- package/dist/bin/{nim-DceKa9Nn.js → nim-z_s042OS.js} +1 -1
- package/dist/bin/perl-2YKQo-0l.js +1 -0
- package/dist/bin/{perl-B6GAvvHF.js → perl-Fl9SoTWs.js} +1 -1
- package/dist/bin/php-Bo9TDZJt.js +1 -0
- package/dist/bin/php-C0eWpkIO.js +1 -0
- package/dist/bin/postcss-CCUr_tF-.js +1 -0
- package/dist/{standalone/pug-DJ5mt9QE.js → bin/pug-DUGDf_q9.js} +1 -1
- package/dist/bin/python-Db-ndmZZ.js +1 -0
- package/dist/{standalone/qml-BxVojlB6.js → bin/qml-CPQoc4lh.js} +1 -1
- package/dist/bin/r-fQq-2_SC.js +1 -0
- package/dist/{standalone/razor-Dp2BNdgE.js → bin/razor-DNawYG-W.js} +1 -1
- package/dist/bin/regexp-YxswBMQR.js +1 -0
- package/dist/bin/{rst-BHI_EFqA.js → rst-DYfDFbA3.js} +1 -1
- package/dist/bin/ruby-DucPskDY.js +1 -0
- package/dist/bin/ruby-WBenXl3j.js +1 -0
- package/dist/bin/{sas-Dx90SbnG.js → sas-CAA8PJ6W.js} +1 -1
- package/dist/bin/scss-DsPnGUE-.js +1 -0
- package/dist/bin/{scss-ByAjeRJP.js → scss-gssODMF6.js} +1 -1
- package/dist/bin/sdbl-xOqMdGXn.js +1 -0
- package/dist/bin/{shaderlab-8CiQ7btM.js → shaderlab-DgQHun4U.js} +1 -1
- package/dist/bin/shellscript-CE_I727X.js +1 -0
- package/dist/bin/{shellsession-xr72W2pP.js → shellsession-lr0Ayolf.js} +1 -1
- package/dist/{standalone/soy-BExHEi9F.js → bin/soy-CvtaBVSX.js} +1 -1
- package/dist/bin/{sparql-Bq74Yvwh.js → sparql-C2NKB4nB.js} +1 -1
- package/dist/bin/sql-k-FO79OG.js +1 -0
- package/dist/{standalone/stata-XyxwKkW7.js → bin/stata-CxUtssUq.js} +1 -1
- package/dist/bin/stylus-BjHmFbLS.js +1 -0
- package/dist/{standalone/surrealql-DeE9iwmm.js → bin/surrealql-UeEcHssQ.js} +1 -1
- package/dist/bin/{svelte-CHomAVJT.js → svelte-biVT5zcD.js} +1 -1
- package/dist/bin/{templ-BRBP2pJf.js → templ-BYYVc90I.js} +1 -1
- package/dist/bin/tex-C2t_GUxi.js +1 -0
- package/dist/bin/{tex-5doNg0Ig.js → tex-bdKBkGZu.js} +1 -1
- package/dist/bin/ts-tags-BfYDhMLE.js +1 -0
- package/dist/bin/tsx-BVj7RLM1.js +1 -0
- package/dist/bin/turtle-D8pw025F.js +1 -0
- package/dist/bin/{twig-D5Nfm9La.js → twig-CwzAgcmH.js} +1 -1
- package/dist/bin/typescript-DNgWo8f4.js +1 -0
- package/dist/bin/typespec-Cl5YolbG.js +1 -0
- package/dist/bin/{vue-zYUVH6uJ.js → vue-DRO7KWbH.js} +1 -1
- package/dist/bin/{vue-html-D7v7uXO6.js → vue-html-BpQ6tiBD.js} +1 -1
- package/dist/bin/{vue-vine-lH9fGYq_.js → vue-vine-BoHGuuLM.js} +1 -1
- package/dist/bin/xml-CfpLAPLz.js +1 -0
- package/dist/bin/{xml-CGrMwkeu.js → xml-DDPMLAMm.js} +1 -1
- package/dist/bin/{xsl-C-lr_lSi.js → xsl-BEetQfvy.js} +1 -1
- package/dist/bin/yaml-OQyYPsei.js +1 -0
- package/dist/lib/index.d.ts +6 -1
- package/dist/lib/index.js +188 -189
- package/dist/standalone/{angular-html-BDfh9ICS.js → angular-html-WQX9Y2mw.js} +1 -1
- package/dist/standalone/{angular-ts-WiBasIpj.js → angular-ts-Bnj08IE9.js} +1 -1
- package/dist/{bin/apl-BOFh_hoE.js → standalone/apl-Dqn1qSR2.js} +1 -1
- package/dist/standalone/{astro-C0A5Ee0R.js → astro-CQ8up1JW.js} +1 -1
- package/dist/standalone/bird2-DqiG7xuw.js +1 -0
- package/dist/standalone/{blade-Bh52-e5e.js → blade-CygzwZSe.js} +1 -1
- package/dist/standalone/{bsl-DrHuh5kR.js → bsl-BpGgGeZC.js} +1 -1
- package/dist/standalone/{cairo-D055eoAu.js → cairo-r1f5WYPg.js} +1 -1
- package/dist/standalone/cobol-B8Vke0Of.js +1 -0
- package/dist/{bin/coffee-7hoZPzSj.js → standalone/coffee-Cc6XxMHI.js} +1 -1
- package/dist/standalone/{cpp-BP_mYM2q.js → cpp-COjeSwn8.js} +1 -1
- package/dist/{bin/crystal-Cc66vuxC.js → standalone/crystal-14bSZvxG.js} +1 -1
- package/dist/standalone/{css-DZpGhzjZ.js → css-0fme0D-h.js} +1 -1
- package/dist/standalone/dart-WAvmL6i0.js +1 -0
- package/dist/standalone/{edge-C7ZV1b67.js → edge-C4RY6CZu.js} +1 -1
- package/dist/{bin/elixir-CrM98V7h.js → standalone/elixir-BpoXFRn8.js} +1 -1
- package/dist/standalone/{elm-Dop4RWjQ.js → elm-B6bFr4e_.js} +1 -1
- package/dist/standalone/emacs-lisp-BYwwOo2e.js +1 -0
- package/dist/standalone/{erb-CYhomfpC.js → erb-CJHKFDY_.js} +1 -1
- package/dist/standalone/{erlang-DX8GMz3W.js → erlang-CI6aeixR.js} +1 -1
- package/dist/standalone/{fortran-fixed-form-Q6JIc71r.js → fortran-fixed-form-uKGwTJjf.js} +1 -1
- package/dist/standalone/{fsharp-BNMUC2iW.js → fsharp-CASMX8mg.js} +1 -1
- package/dist/standalone/{gdresource-BlhCtIAh.js → gdresource-CJ9IjTdR.js} +1 -1
- package/dist/standalone/{git-commit-BmPljjxo.js → git-commit-CzSqi32T.js} +1 -1
- package/dist/standalone/{git-rebase-DVpnhtFe.js → git-rebase-8fT5ziFE.js} +1 -1
- package/dist/standalone/{glimmer-js-BxvF_2QK.js → glimmer-js-DWfa8dIU.js} +1 -1
- package/dist/standalone/{glimmer-ts-AM8hgR0M.js → glimmer-ts-DnQuWFQ4.js} +1 -1
- package/dist/standalone/{glsl-CeERM8Pu.js → glsl-BL_YD74S.js} +1 -1
- package/dist/standalone/{go-s39PxAzr.js → go-ChiWKuTz.js} +1 -1
- package/dist/standalone/{graphql-B_NxG4GM.js → graphql-Clgp8jU8.js} +1 -1
- package/dist/standalone/{hack-DOi7Q-_3.js → hack-C9FDVZ3F.js} +1 -1
- package/dist/standalone/{haml-DqnJGs3l.js → haml-Bzme-jHN.js} +1 -1
- package/dist/standalone/{handlebars-BD-GTNyX.js → handlebars-CBJ4eJ41.js} +1 -1
- package/dist/standalone/{horizon-bright-CHsP19AA.js → horizon-bright-DI78Rvup.js} +1 -1
- package/dist/standalone/{html-Dg4T4CWG.js → html-CdYAzs3O.js} +1 -1
- package/dist/standalone/{html-derivative-Dy01fcFN.js → html-derivative-CTfvg-k9.js} +1 -1
- package/dist/standalone/{http-Dcg4Y0LN.js → http-DtJ6xqmi.js} +1 -1
- package/dist/{bin/hurl-C4sIrBP8.js → standalone/hurl-DVOcDWDo.js} +1 -1
- package/dist/standalone/{hxml-CkY94ZZG.js → hxml-CUgBPRa1.js} +1 -1
- package/dist/standalone/index.d.ts +47 -17
- package/dist/standalone/index.js +97 -96
- package/dist/standalone/{jinja-rn3l-epj.js → jinja-SiVN3EPo.js} +1 -1
- package/dist/standalone/{jison-Bb1qcUQw.js → jison-Cxwzm23V.js} +1 -1
- package/dist/standalone/{julia-Bf0YFlEW.js → julia-BOYqvvvj.js} +1 -1
- package/dist/standalone/{just-CgnMO4TC.js → just-IvSacbqb.js} +1 -1
- package/dist/{bin/kusto-D9rJ_wbq.js → standalone/kusto-DD1r27tX.js} +1 -1
- package/dist/standalone/{latex-CHYOx8yi.js → latex-DGWWRHT_.js} +1 -1
- package/dist/standalone/{liquid-BTKRZY_L.js → liquid-LYfo5SDA.js} +1 -1
- package/dist/standalone/{lua-RcKjZiH7.js → lua-2gNjm8zw.js} +1 -1
- package/dist/standalone/{marko-CLH1Sh4A.js → marko-U21Fnozx.js} +1 -1
- package/dist/standalone/{mdc-C1ZFsTbz.js → mdc-C13-zRpl.js} +1 -1
- package/dist/standalone/{nextflow-CE20fCoX.js → nextflow-ClSSDbXV.js} +1 -1
- package/dist/standalone/nextflow-groovy-BmdTtAtJ.js +1 -0
- package/dist/standalone/{nginx-CJQ7hxI6.js → nginx-DphzlDyZ.js} +1 -1
- package/dist/standalone/{nim-Czafvbe4.js → nim-D01gBmZb.js} +1 -1
- package/dist/standalone/{perl-CChoGwxr.js → perl-CuZPLwLm.js} +1 -1
- package/dist/standalone/php-c2mqHOa5.js +1 -0
- package/dist/{bin/pug-F80Qp1DF.js → standalone/pug-C3IdK9Vd.js} +1 -1
- package/dist/{bin/qml-Brw1WH4u.js → standalone/qml-CGE-rgGq.js} +1 -1
- package/dist/{bin/razor-DKKN_syA.js → standalone/razor-DjuaA8CM.js} +1 -1
- package/dist/standalone/{rst-DL5K0SsC.js → rst-CYE4T0LV.js} +1 -1
- package/dist/standalone/ruby-Cs80OLeO.js +1 -0
- package/dist/standalone/{sas-CgrIRNnH.js → sas-CrQDddD2.js} +1 -1
- package/dist/standalone/{scss-B5Q0dl0C.js → scss-C9pn4GwM.js} +1 -1
- package/dist/standalone/{shaderlab-B3x1KxeX.js → shaderlab-DhVgk0F4.js} +1 -1
- package/dist/standalone/{shellsession-iw5paaXf.js → shellsession-B3JdqBVn.js} +1 -1
- package/dist/{bin/soy-Cy2jSWuh.js → standalone/soy-BezrirVf.js} +1 -1
- package/dist/standalone/{sparql-38UvPuKm.js → sparql-BVgWJlnd.js} +1 -1
- package/dist/{bin/stata-DawaFFYJ.js → standalone/stata-H0pnFm1o.js} +1 -1
- package/dist/{bin/surrealql-B1iahgCh.js → standalone/surrealql-DIXH8vKD.js} +1 -1
- package/dist/standalone/{svelte-DbSBwS6o.js → svelte-BTt1OQ0v.js} +1 -1
- package/dist/standalone/{templ-hC3Z5CVs.js → templ-BSHIRmzI.js} +1 -1
- package/dist/standalone/{tex-CpSHM71U.js → tex-BjwG_oxA.js} +1 -1
- package/dist/standalone/ts-tags-Cp9pA_As.js +1 -0
- package/dist/standalone/{twig-BGs9c0m6.js → twig-BX08EwMF.js} +1 -1
- package/dist/standalone/typespec-BM547vOZ.js +1 -0
- package/dist/standalone/{vue-HXXkW9Ol.js → vue-BRMpKK6E.js} +1 -1
- package/dist/standalone/{vue-html-DMGAGeUM.js → vue-html-BZjQbgy2.js} +1 -1
- package/dist/standalone/{vue-vine-CumWe8dY.js → vue-vine-G3wsxe4j.js} +1 -1
- package/dist/standalone/{xml-OYKGlsbQ.js → xml-D0UfBFEi.js} +1 -1
- package/dist/standalone/{xsl-B9zh_nzP.js → xsl-DB3rrNcL.js} +1 -1
- package/package.json +19 -19
- package/readme.md +46 -12
- package/dist/bin/angular-html-CAOiQ-Sh.js +0 -1
- package/dist/bin/bird2-_hZ3FStw.js +0 -1
- package/dist/bin/c-CdETmdiZ.js +0 -1
- package/dist/bin/cmake-D8YNkuR-.js +0 -1
- package/dist/bin/cobol-0fKuGiZv.js +0 -1
- package/dist/bin/cpp-gdwUInvu.js +0 -1
- package/dist/bin/csharp-CIll8D6u.js +0 -1
- package/dist/bin/css-CWs_acR3.js +0 -1
- package/dist/bin/csv-DxS-HYUf.js +0 -1
- package/dist/bin/dart-C2ROqx0Z.js +0 -1
- package/dist/bin/diff-DP2jXnqp.js +0 -1
- package/dist/bin/emacs-lisp-Cj_Ixk9i.js +0 -1
- package/dist/bin/fortran-free-form-C3X_sfp9.js +0 -1
- package/dist/bin/gdscript-bYJURCOy.js +0 -1
- package/dist/bin/gdshader-KOuf2xVk.js +0 -1
- package/dist/bin/glsl-DFAnV4bR.js +0 -1
- package/dist/bin/go-GcrXPybz.js +0 -1
- package/dist/bin/graphql-AasBDd3n.js +0 -1
- package/dist/bin/haml-Dz37fDMr.js +0 -1
- package/dist/bin/haxe-B4EsxHyL.js +0 -1
- package/dist/bin/hlsl-CxhYg9sd.js +0 -1
- package/dist/bin/html-Crjq5rc3.js +0 -1
- package/dist/bin/html-derivative-CsguVNJC.js +0 -1
- package/dist/bin/java-BGzTmoXK.js +0 -1
- package/dist/bin/javascript-DTXNtrg0.js +0 -1
- package/dist/bin/json-BadQRMks.js +0 -1
- package/dist/bin/jsx-CoE327E5.js +0 -1
- package/dist/bin/less-BrjQyxTC.js +0 -1
- package/dist/bin/lua-BTFYnP6K.js +0 -1
- package/dist/bin/markdown-dl1m7YAL.js +0 -1
- package/dist/bin/nextflow-groovy-COoKx28o.js +0 -1
- package/dist/bin/nextflow-groovy-CpiNfI-c.js +0 -1
- package/dist/bin/perl-B-LgtJc7.js +0 -1
- package/dist/bin/php-BAXKJjQn.js +0 -1
- package/dist/bin/php-D9zsHNF7.js +0 -1
- package/dist/bin/postcss-D_yqFB4d.js +0 -1
- package/dist/bin/python-BLuJ3b5I.js +0 -1
- package/dist/bin/r-1QWtk6BQ.js +0 -1
- package/dist/bin/regexp-WPJh6EdZ.js +0 -1
- package/dist/bin/ruby-DME9-fO-.js +0 -1
- package/dist/bin/ruby-Go_q6-3o.js +0 -1
- package/dist/bin/scss-D8wnyi0z.js +0 -1
- package/dist/bin/sdbl-CSGqAXn4.js +0 -1
- package/dist/bin/shellscript-DhB4mnQ-.js +0 -1
- package/dist/bin/sql-BfsqdN68.js +0 -1
- package/dist/bin/stylus-CtR9dQIO.js +0 -1
- package/dist/bin/tex-BLh5zE4g.js +0 -1
- package/dist/bin/ts-tags-C0IwWXwE.js +0 -1
- package/dist/bin/tsx-BMmbqG-q.js +0 -1
- package/dist/bin/turtle-BFrhIdAM.js +0 -1
- package/dist/bin/typescript-CPs8nV3S.js +0 -1
- package/dist/bin/typespec-CJG5em1O.js +0 -1
- package/dist/bin/xml-CCj7o04Q.js +0 -1
- package/dist/bin/yaml-Dg2Msz_B.js +0 -1
- package/dist/standalone/bird2-B05GFxQw.js +0 -1
- package/dist/standalone/cobol-C9xdim3W.js +0 -1
- package/dist/standalone/dart-CcoouBGm.js +0 -1
- package/dist/standalone/emacs-lisp-C1K9lKmb.js +0 -1
- package/dist/standalone/nextflow-groovy-Brjjw2F-.js +0 -1
- package/dist/standalone/php-BW6t2_Q8.js +0 -1
- package/dist/standalone/ruby-DuNhMjQX.js +0 -1
- package/dist/standalone/ts-tags-BiWG72vW.js +0 -1
- package/dist/standalone/typespec-oIccER07.js +0 -1
- /package/dist/bin/{actionscript-3-WtXz7Nc9.js → actionscript-3-BaFy4IUl.js} +0 -0
- /package/dist/bin/{ada-CxieIYPC.js → ada-HceTT-Hk.js} +0 -0
- /package/dist/bin/{andromeeda-CEVX-4Db.js → andromeeda-DSb5DuLX.js} +0 -0
- /package/dist/bin/{apache-zgaAodRu.js → apache-MxcCclyI.js} +0 -0
- /package/dist/bin/{apex-BNA6bSzI.js → apex-Dt1yk6kE.js} +0 -0
- /package/dist/bin/{applescript-D9ApUiQg.js → applescript-CByslqpM.js} +0 -0
- /package/dist/bin/{ara-Xn981wPy.js → ara-BM6jOAfW.js} +0 -0
- /package/dist/bin/{asciidoc-C90J3qhX.js → asciidoc-BlA3UgbV.js} +0 -0
- /package/dist/bin/{asm-Cvg1-8xg.js → asm-VlQVLZc1.js} +0 -0
- /package/dist/bin/{aurora-x-BLDZZUdf.js → aurora-x-CeJL9O0f.js} +0 -0
- /package/dist/bin/{awk-BjDw91sP.js → awk-UE5FuWyB.js} +0 -0
- /package/dist/bin/{ayu-dark-CV3szcXN.js → ayu-dark-BZ1fKSke.js} +0 -0
- /package/dist/bin/{ayu-light-VFwhcb7b.js → ayu-light-Ck_aK9Yx.js} +0 -0
- /package/dist/bin/{ayu-mirage-jd_AuG1F.js → ayu-mirage-BbZPk566.js} +0 -0
- /package/dist/bin/{ballerina-vBN0WIlg.js → ballerina-Bd4N5CqQ.js} +0 -0
- /package/dist/bin/{bat-C7p6Ubpb.js → bat-nOz1h7iR.js} +0 -0
- /package/dist/bin/{beancount-zb-3xb6T.js → beancount-DYpPd8NJ.js} +0 -0
- /package/dist/bin/{berry-B_fAwMGD.js → berry-D6DSNBWg.js} +0 -0
- /package/dist/bin/{bibtex-AJFrnpSy.js → bibtex-8WxC_vKc.js} +0 -0
- /package/dist/bin/{bicep-ZTMcEuYT.js → bicep-Dr_R0619.js} +0 -0
- /package/dist/bin/{c-DIXYfOSP.js → c-DZllpasP.js} +0 -0
- /package/dist/bin/{c3-CF_7Rl_o.js → c3-BzjQIVCp.js} +0 -0
- /package/dist/bin/{cadence-BoKQX0Lv.js → cadence-QJ1AGP7V.js} +0 -0
- /package/dist/bin/{catppuccin-frappe-CHSjY7K5.js → catppuccin-frappe-C74znM78.js} +0 -0
- /package/dist/bin/{catppuccin-latte-BIei23jc.js → catppuccin-latte-yc8K1O2M.js} +0 -0
- /package/dist/bin/{catppuccin-macchiato-stEzqrNw.js → catppuccin-macchiato-DfzJUoQE.js} +0 -0
- /package/dist/bin/{catppuccin-mocha-Csibodaz.js → catppuccin-mocha-CV-OB_YP.js} +0 -0
- /package/dist/bin/{clarity-CF2X0I3d.js → clarity-CP8m4qdU.js} +0 -0
- /package/dist/bin/{clojure-D4EmLgj3.js → clojure-Du7V1e4x.js} +0 -0
- /package/dist/bin/{cmake-BADnWbaq.js → cmake-DirU205C.js} +0 -0
- /package/dist/bin/{codeowners-CKcVmpS-.js → codeowners-C-jlmeHU.js} +0 -0
- /package/dist/bin/{codeql-aBgygx2C.js → codeql-DQHv5NBs.js} +0 -0
- /package/dist/bin/{common-lisp-C0AzPNil.js → common-lisp-BsVO-SvL.js} +0 -0
- /package/dist/bin/{coq-FNCdvNHe.js → coq-Bl0U720i.js} +0 -0
- /package/dist/bin/{csharp-2Bjq_Rxi.js → csharp-DJUgEWNf.js} +0 -0
- /package/dist/bin/{csv-BU_TMxAS.js → csv-naVBPhrS.js} +0 -0
- /package/dist/bin/{cue-DV_1hEYT.js → cue-C3D0yAYi.js} +0 -0
- /package/dist/bin/{cypher-DrvyYDIr.js → cypher-CeWowZt9.js} +0 -0
- /package/dist/bin/{d-Dly9ufdX.js → d-DYrc22cP.js} +0 -0
- /package/dist/bin/{dark-plus-B42qAV4C.js → dark-plus-Comjg6US.js} +0 -0
- /package/dist/bin/{dax-vDoOL-fx.js → dax-B0jXJO6E.js} +0 -0
- /package/dist/bin/{desktop-DoZVZZ4h.js → desktop-DW6_MitS.js} +0 -0
- /package/dist/bin/{diff-By4RszRJ.js → diff-swkNtDFu.js} +0 -0
- /package/dist/bin/{docker-Bp8c7Dqi.js → docker-otzKDcRB.js} +0 -0
- /package/dist/bin/{dotenv-CEJeNbhS.js → dotenv-DK8FyOTY.js} +0 -0
- /package/dist/bin/{dracula-soft-CMTkd8vI.js → dracula-soft-srQhJYut.js} +0 -0
- /package/dist/bin/{dracula-DmN2zRHi.js → dracula-tZpPjTpX.js} +0 -0
- /package/dist/bin/{dream-maker-D3zsoW7J.js → dream-maker-CNbVmTq1.js} +0 -0
- /package/dist/bin/{everforest-dark-C1ZUi0Ki.js → everforest-dark-Bu3gFA-8.js} +0 -0
- /package/dist/bin/{everforest-light-BiIEIFyN.js → everforest-light-Cf0fR5Ti.js} +0 -0
- /package/dist/bin/{fennel-DAD8VWfy.js → fennel-Bbo-EUQE.js} +0 -0
- /package/dist/bin/{fish-G6fwZxok.js → fish-DrrKatD-.js} +0 -0
- /package/dist/bin/{fluent-BOBTNP2g.js → fluent-BWbo2JQ_.js} +0 -0
- /package/dist/bin/{fortran-free-form-By4p5LLA.js → fortran-free-form-BqeOewcz.js} +0 -0
- /package/dist/bin/{gdscript-DF4DHgCD.js → gdscript-CQy5Em6X.js} +0 -0
- /package/dist/bin/{gdshader-BPirqxsQ.js → gdshader-DuGt6i2A.js} +0 -0
- /package/dist/bin/{genie-DHT45pJu.js → genie-BtQYZNKR.js} +0 -0
- /package/dist/bin/{gherkin-BOftJ3Qu.js → gherkin-CIadD1ZT.js} +0 -0
- /package/dist/bin/{github-dark-Dhlw38v_.js → github-dark-9m5hPMlo.js} +0 -0
- /package/dist/bin/{github-dark-default-ChurEZVr.js → github-dark-default-DlN5M7CE.js} +0 -0
- /package/dist/bin/{github-dark-dimmed-Bg8moaOR.js → github-dark-dimmed-nV3axXTC.js} +0 -0
- /package/dist/bin/{github-dark-high-contrast-BuMAw1v5.js → github-dark-high-contrast-MfTMaKuJ.js} +0 -0
- /package/dist/bin/{github-light-DUFhx0nQ.js → github-light-C9MFANg3.js} +0 -0
- /package/dist/bin/{github-light-default-DhNuYLfL.js → github-light-default-Cfefjxfr.js} +0 -0
- /package/dist/bin/{github-light-high-contrast-VDpphmUr.js → github-light-high-contrast-BW7U_oJF.js} +0 -0
- /package/dist/bin/{gleam-BQORp6Ww.js → gleam-Bnawsb2X.js} +0 -0
- /package/dist/bin/{gn-BUvkHyO2.js → gn-Bc2dAhdc.js} +0 -0
- /package/dist/bin/{gnuplot-BiNqzIdJ.js → gnuplot-X12GawsY.js} +0 -0
- /package/dist/bin/{groovy-DZM0Oins.js → groovy-eavxb_aL.js} +0 -0
- /package/dist/bin/{gruvbox-dark-hard-B0-6V_Sa.js → gruvbox-dark-hard-Ckkb-ckr.js} +0 -0
- /package/dist/bin/{gruvbox-dark-medium-B2kDYkf7.js → gruvbox-dark-medium-DveV0NZQ.js} +0 -0
- /package/dist/bin/{gruvbox-dark-soft-D80qdOIx.js → gruvbox-dark-soft-BnCoejWh.js} +0 -0
- /package/dist/bin/{gruvbox-light-hard-np83Fhw4.js → gruvbox-light-hard-alFf9nMB.js} +0 -0
- /package/dist/bin/{gruvbox-light-medium--BtU_nk6.js → gruvbox-light-medium-DXv1IAoL.js} +0 -0
- /package/dist/bin/{gruvbox-light-soft-BQQJZmHA.js → gruvbox-light-soft-DE2R_dXV.js} +0 -0
- /package/dist/bin/{haskell-ChFomDou.js → haskell-D52N8aee.js} +0 -0
- /package/dist/bin/{haxe-Bgb4tX8C.js → haxe-lcHdXErF.js} +0 -0
- /package/dist/bin/{hcl-B_oQREVc.js → hcl-CohGLpsg.js} +0 -0
- /package/dist/bin/{hjson-B6rsoOCm.js → hjson-kJZd-7Uv.js} +0 -0
- /package/dist/bin/{hlsl-Dzk9GcSJ.js → hlsl-Bed0H4CN.js} +0 -0
- /package/dist/bin/{horizon-DC2iZgoY.js → horizon-BjlQhBS5.js} +0 -0
- /package/dist/bin/{houston-CAkU4Xzv.js → houston-BRgUYlu1.js} +0 -0
- /package/dist/bin/{hy-BzSjeCAF.js → hy-ClHGi00q.js} +0 -0
- /package/dist/bin/{imba-BCVM_gFu.js → imba-BwxhzLVj.js} +0 -0
- /package/dist/bin/{ini-CK7-QP3O.js → ini-BF8qU-L3.js} +0 -0
- /package/dist/bin/{java-Dgsz0B-P.js → java-DGXJx_7v.js} +0 -0
- /package/dist/bin/{javascript-BNwJ9fBE.js → javascript-DRicMqJx.js} +0 -0
- /package/dist/bin/{json-Dttibclf.js → json-ci7zycrx.js} +0 -0
- /package/dist/bin/{json5-D-uNcxgL.js → json5-5ueAesZq.js} +0 -0
- /package/dist/bin/{jsonc-Mhn2hM5D.js → jsonc-DLUxDCmI.js} +0 -0
- /package/dist/bin/{jsonl-DEwECwXy.js → jsonl-CcfJT6c3.js} +0 -0
- /package/dist/bin/{jsonnet-aP9lctbz.js → jsonnet-BfXfyZk_.js} +0 -0
- /package/dist/bin/{jssm-Bzk9BSR5.js → jssm-CG0kgLyz.js} +0 -0
- /package/dist/bin/{jsx-YopGa7XH.js → jsx-BVfyPJhl.js} +0 -0
- /package/dist/bin/{kanagawa-dragon-DRuqSBxu.js → kanagawa-dragon-CbwGXU96.js} +0 -0
- /package/dist/bin/{kanagawa-lotus-DFk8eUao.js → kanagawa-lotus-DvItD0v_.js} +0 -0
- /package/dist/bin/{kanagawa-wave-wqQYYPW0.js → kanagawa-wave-7BIcQNHD.js} +0 -0
- /package/dist/bin/{kdl-BBdrnnFN.js → kdl-CGCQY1-0.js} +0 -0
- /package/dist/bin/{kotlin-BOAeJ3Zn.js → kotlin-Babw_olw.js} +0 -0
- /package/dist/bin/{laserwave-po4bDaOp.js → laserwave-D7dCmej9.js} +0 -0
- /package/dist/bin/{lean--6SzPv5H.js → lean-BHhNV2FE.js} +0 -0
- /package/dist/bin/{less-DRwZNTsh.js → less-CwsIRTz2.js} +0 -0
- /package/dist/bin/{light-plus-B1SMNL2F.js → light-plus-DY08IP0P.js} +0 -0
- /package/dist/bin/{llvm-7RtiJHjj.js → llvm-CnTFl-xP.js} +0 -0
- /package/dist/bin/{log-KNtIq3vN.js → log-DWm71oiG.js} +0 -0
- /package/dist/bin/{logo-BhWYf_9m.js → logo-CSNcrIVD.js} +0 -0
- /package/dist/bin/{luau-CmcVV_DK.js → luau-D1AKCLXr.js} +0 -0
- /package/dist/bin/{make-Df5gTOt9.js → make-BcNpqY4E.js} +0 -0
- /package/dist/bin/{markdown-BtUDO16i.js → markdown-BWnBsa8n.js} +0 -0
- /package/dist/bin/{material-theme-BhPjDEOe.js → material-theme-CE5_eJON.js} +0 -0
- /package/dist/bin/{material-theme-darker-LB0WiHs5.js → material-theme-darker-D9dePcxU.js} +0 -0
- /package/dist/bin/{material-theme-lighter-b9Tsrc9R.js → material-theme-lighter-mNHXfMW6.js} +0 -0
- /package/dist/bin/{material-theme-ocean-B1e0t2_i.js → material-theme-ocean-FUMkFnrk.js} +0 -0
- /package/dist/bin/{material-theme-palenight-1CdY1ykl.js → material-theme-palenight-Byjl0ziV.js} +0 -0
- /package/dist/bin/{matlab-Qa9-GHKp.js → matlab-DLY1DdfV.js} +0 -0
- /package/dist/bin/{mdx-DrGeQtwF.js → mdx-C15-rtcb.js} +0 -0
- /package/dist/bin/{mermaid-CcPTwP9f.js → mermaid-BjiOJq8q.js} +0 -0
- /package/dist/bin/{min-dark-Dujx5q9i.js → min-dark-DmJdERaK.js} +0 -0
- /package/dist/bin/{min-light-wZS1kyfV.js → min-light-QnTJyXug.js} +0 -0
- /package/dist/bin/{mipsasm-BfvsshAY.js → mipsasm-CKHxalY6.js} +0 -0
- /package/dist/bin/{mojo-C2BYzC14.js → mojo-C2AiLnrb.js} +0 -0
- /package/dist/bin/{monokai-w9z2AnJS.js → monokai-BlWWERvb.js} +0 -0
- /package/dist/bin/{moonbit-DjpzDFB5.js → moonbit-CyDpODU8.js} +0 -0
- /package/dist/bin/{move-Bxr9ef96.js → move-DCXtz79I.js} +0 -0
- /package/dist/bin/{narrat-DcRshums.js → narrat-BEsur76A.js} +0 -0
- /package/dist/bin/{night-owl-CplppJJB.js → night-owl-CQ_y355d.js} +0 -0
- /package/dist/bin/{night-owl-light-BpOQXyuL.js → night-owl-light-9on5aClC.js} +0 -0
- /package/dist/bin/{nix-CtTYb1HK.js → nix-BlkifsNW.js} +0 -0
- /package/dist/bin/{nord-hoPJ5Dy3.js → nord-CHhLQxrx.js} +0 -0
- /package/dist/bin/{nushell-Cn3fXdgH.js → nushell-CGbyWjqd.js} +0 -0
- /package/dist/bin/{objective-c-BkduaOlQ.js → objective-c-DnEgp4sH.js} +0 -0
- /package/dist/bin/{objective-cpp-Cn2j-b6G.js → objective-cpp-DA1zjGUh.js} +0 -0
- /package/dist/bin/{ocaml-DqvuWcoq.js → ocaml-XKrHblGZ.js} +0 -0
- /package/dist/bin/{odin-D7ha6-Ni.js → odin-CUQeabzv.js} +0 -0
- /package/dist/bin/{one-dark-pro-eMAAhFAk.js → one-dark-pro-CPor5xCJ.js} +0 -0
- /package/dist/bin/{one-light-CSbFTW4a.js → one-light-Cs4MmHBp.js} +0 -0
- /package/dist/bin/{open-8AenGr4K.js → open-B4GJGp_X.js} +0 -0
- /package/dist/bin/{openscad-Dy0BqjE1.js → openscad-C-pyoaHZ.js} +0 -0
- /package/dist/bin/{pascal-HLRSlJ2v.js → pascal-DTg8yr2K.js} +0 -0
- /package/dist/bin/{pkl-D0LsOQD5.js → pkl-Dmk952a-.js} +0 -0
- /package/dist/bin/{plastic-DH0ROn14.js → plastic-CKy4gKei.js} +0 -0
- /package/dist/bin/{plsql-Ckotkn8G.js → plsql-DlmRLiy4.js} +0 -0
- /package/dist/bin/{po-Qix2N2fA.js → po-nqc2dSM7.js} +0 -0
- /package/dist/bin/{poimandres-HErFvNSF.js → poimandres-BcnQgoA4.js} +0 -0
- /package/dist/bin/{polar-DHAM8Rqb.js → polar-CUas3-Ed.js} +0 -0
- /package/dist/bin/{postcss-hgbxLNuF.js → postcss-DsLOvYd_.js} +0 -0
- /package/dist/bin/{powerquery-sXjCytsm.js → powerquery-o8pQIha0.js} +0 -0
- /package/dist/bin/{powershell-Br9y9LlC.js → powershell-DnB_d8z7.js} +0 -0
- /package/dist/bin/{prisma-COBUUaqE.js → prisma-BhG3Ia_M.js} +0 -0
- /package/dist/bin/{prolog-BbJTvtA-.js → prolog-CxNOQvhU.js} +0 -0
- /package/dist/bin/{proto-DiR3FLO1.js → proto-CxYQsozc.js} +0 -0
- /package/dist/bin/{puppet-CNdK406T.js → puppet-CYAa5kR2.js} +0 -0
- /package/dist/bin/{purescript-Cgw06S43.js → purescript-CN27zoMM.js} +0 -0
- /package/dist/bin/{python-DRu0B6X_.js → python-DAHUwdu1.js} +0 -0
- /package/dist/bin/{qmldir-tOWyMniz.js → qmldir-DK51keAu.js} +0 -0
- /package/dist/bin/{qss-CQ_tB_vx.js → qss-Dz7u-rR1.js} +0 -0
- /package/dist/bin/{r-CeXuGenk.js → r-CqHWlSSM.js} +0 -0
- /package/dist/bin/{racket-xM_JlWdJ.js → racket-COiCIaTN.js} +0 -0
- /package/dist/bin/{raku-CsjbV0q-.js → raku-0kOHw_dw.js} +0 -0
- /package/dist/bin/{red-2s42RJtx.js → red-m6Euu7mt.js} +0 -0
- /package/dist/bin/{reg-CDO-JwKW.js → reg-qVlCOoBm.js} +0 -0
- /package/dist/bin/{regexp-Aby82bH7.js → regexp-D7f8yhPZ.js} +0 -0
- /package/dist/bin/{rel-Lnk3efq_.js → rel-CWou97ke.js} +0 -0
- /package/dist/bin/{riscv-B6rT4cSG.js → riscv-DsFkdmj1.js} +0 -0
- /package/dist/bin/{ron-BiBOkEWn.js → ron-BiFFIB8X.js} +0 -0
- /package/dist/bin/{rose-pine-CxwcSun-.js → rose-pine-P4OLTmk8.js} +0 -0
- /package/dist/bin/{rose-pine-dawn-DkCSMZNl.js → rose-pine-dawn-Bjp9OAsX.js} +0 -0
- /package/dist/bin/{rose-pine-moon-CRcpU7ID.js → rose-pine-moon-BDOjeUMF.js} +0 -0
- /package/dist/bin/{rosmsg-_EpaFX4E.js → rosmsg-C8-G6Zy3.js} +0 -0
- /package/dist/bin/{rust-Dzeg0wAa.js → rust-8VLxkvbI.js} +0 -0
- /package/dist/bin/{sass-CfSmloHa.js → sass-CAZlzDYO.js} +0 -0
- /package/dist/bin/{scala-BzM4CFnq.js → scala-CNeLcgeU.js} +0 -0
- /package/dist/bin/{scheme-BqJLyHNb.js → scheme-DM0dV7X-.js} +0 -0
- /package/dist/bin/{sdbl-CVVKgb7O.js → sdbl-D91Q0-P-.js} +0 -0
- /package/dist/bin/{shellscript-CED9H1ao.js → shellscript-C3cZBHq3.js} +0 -0
- /package/dist/bin/{slack-dark-BLjlSbC0.js → slack-dark-D3icvwba.js} +0 -0
- /package/dist/bin/{slack-ochin-BeSJq7AY.js → slack-ochin-HRbhvypv.js} +0 -0
- /package/dist/bin/{smalltalk-DrKePzpE.js → smalltalk-CaV7xkpe.js} +0 -0
- /package/dist/bin/{snazzy-light-hGizAcbG.js → snazzy-light-DH6eOZ8E.js} +0 -0
- /package/dist/bin/{solarized-dark-B47oUJnZ.js → solarized-dark-CyUppETu.js} +0 -0
- /package/dist/bin/{solarized-light-COfgMzjY.js → solarized-light-CUG32Y3B.js} +0 -0
- /package/dist/bin/{solidity-93cGmCAT.js → solidity-CUUGhfh7.js} +0 -0
- /package/dist/bin/{splunk-C1Hlgf0c.js → splunk-D3BNLPbA.js} +0 -0
- /package/dist/bin/{sql-CWYhyc-w.js → sql-BBjVgCWI.js} +0 -0
- /package/dist/bin/{ssh-config-mSCJO_Nw.js → ssh-config-DSA-oRqW.js} +0 -0
- /package/dist/bin/{stylus-Dxd5rS5f.js → stylus-B8GmhT3T.js} +0 -0
- /package/dist/bin/{swift-CmhdkGbJ.js → swift-B3Og23RF.js} +0 -0
- /package/dist/bin/{synthwave-84-C8lHUQgz.js → synthwave-84-BQqBrmUY.js} +0 -0
- /package/dist/bin/{system-verilog-C5NPuZ4w.js → system-verilog-lZv4orfV.js} +0 -0
- /package/dist/bin/{systemd-DWf13jtC.js → systemd-C_lHKyyv.js} +0 -0
- /package/dist/bin/{talonscript-BHUwvink.js → talonscript-BgSK8iKj.js} +0 -0
- /package/dist/bin/{tasl-BqepUa6R.js → tasl-CfJEvNyg.js} +0 -0
- /package/dist/bin/{tcl-Cq_3s_LD.js → tcl-_6WfXxa8.js} +0 -0
- /package/dist/bin/{terraform-CJUb39F2.js → terraform-CvaKdwhe.js} +0 -0
- /package/dist/bin/{tokyo-night-DToTZO1M.js → tokyo-night-Dxn9nxCt.js} +0 -0
- /package/dist/bin/{toml-CcAy-xez.js → toml-C2IeULXW.js} +0 -0
- /package/dist/bin/{tsv-2LD76W9Y.js → tsv-upWrMxDX.js} +0 -0
- /package/dist/bin/{tsx-BTd5Sf56.js → tsx-CqFEeXnl.js} +0 -0
- /package/dist/bin/{turtle-D-xcuGf_.js → turtle-OfMAFnDU.js} +0 -0
- /package/dist/bin/{typescript-DcBfMx29.js → typescript-QhLgbiI3.js} +0 -0
- /package/dist/bin/{typst-CdguKrlh.js → typst-B0bxD-3R.js} +0 -0
- /package/dist/bin/{v-VnqxfSIy.js → v-DgtEGhmc.js} +0 -0
- /package/dist/bin/{vala-CPlxddOG.js → vala-X9RAnsG9.js} +0 -0
- /package/dist/bin/{vb-Do7lrS7D.js → vb-B8fi0ef3.js} +0 -0
- /package/dist/bin/{verilog-OGZUphCy.js → verilog-9KNl_vs0.js} +0 -0
- /package/dist/bin/{vesper-D6bcMq-9.js → vesper-BUDildQy.js} +0 -0
- /package/dist/bin/{vhdl-vQqxP3uc.js → vhdl-Ex4Tk_Q4.js} +0 -0
- /package/dist/bin/{viml-CRzBk174.js → viml-9TyT6AIR.js} +0 -0
- /package/dist/bin/{vitesse-black-DZPzP4WR.js → vitesse-black-BLDFwo2e.js} +0 -0
- /package/dist/bin/{vitesse-dark-Dn_i46a6.js → vitesse-dark-B7cKn6BQ.js} +0 -0
- /package/dist/bin/{vitesse-light-BYktrL59.js → vitesse-light-Cxpku45l.js} +0 -0
- /package/dist/bin/{vyper-CxG5w_hf.js → vyper-DlDvdFHA.js} +0 -0
- /package/dist/bin/{wasm-DfcgBtd_.js → wasm-BJM1CVhc.js} +0 -0
- /package/dist/bin/{wasm-C2OXzu0D.js → wasm-CgH-dZ_Q.js} +0 -0
- /package/dist/bin/{wenyan-CeYhWKkN.js → wenyan-cHQHBRol.js} +0 -0
- /package/dist/bin/{wgsl-gGAb2oSq.js → wgsl-BGXNRVfe.js} +0 -0
- /package/dist/bin/{wikitext-BNkXva03.js → wikitext-B_NAdate.js} +0 -0
- /package/dist/bin/{wit-snpmR1aT.js → wit-DpEeRzSj.js} +0 -0
- /package/dist/bin/{wolfram-BUWAXgpt.js → wolfram-FezxoFHC.js} +0 -0
- /package/dist/bin/{yaml-Brl8JesV.js → yaml-IgZurznZ.js} +0 -0
- /package/dist/bin/{zenscript-DAB1FI6O.js → zenscript-BSSNIKM2.js} +0 -0
- /package/dist/bin/{zig-DZTxXyCC.js → zig-DO_pxwRi.js} +0 -0
- /package/dist/standalone/{actionscript-3-WtXz7Nc9.js → actionscript-3-BaFy4IUl.js} +0 -0
- /package/dist/standalone/{ada-CxieIYPC.js → ada-HceTT-Hk.js} +0 -0
- /package/dist/standalone/{andromeeda-BylpTWnC.js → andromeeda-Drn3I52d.js} +0 -0
- /package/dist/standalone/{apache-zgaAodRu.js → apache-UvT67k7r.js} +0 -0
- /package/dist/standalone/{apex-BNA6bSzI.js → apex-C-zVKAtI.js} +0 -0
- /package/dist/standalone/{applescript-D9ApUiQg.js → applescript-CUUTxpqG.js} +0 -0
- /package/dist/standalone/{ara-Xn981wPy.js → ara-DXe565Eb.js} +0 -0
- /package/dist/standalone/{asciidoc-C90J3qhX.js → asciidoc-y8iYfg5t.js} +0 -0
- /package/dist/standalone/{asm-Cvg1-8xg.js → asm-FONT_MzT.js} +0 -0
- /package/dist/standalone/{aurora-x-z2QLMo08.js → aurora-x-CbSRhEG_.js} +0 -0
- /package/dist/standalone/{awk-L1WqJyjl.js → awk-C1Xf3NCS.js} +0 -0
- /package/dist/standalone/{ayu-dark-DFAYKmY8.js → ayu-dark-DUKhGG9M.js} +0 -0
- /package/dist/standalone/{ayu-light-ChPCIrww.js → ayu-light-zq1IImlB.js} +0 -0
- /package/dist/standalone/{ayu-mirage-Be8UDvXu.js → ayu-mirage-C0t0AhQz.js} +0 -0
- /package/dist/standalone/{ballerina-DOw61Yuq.js → ballerina-CtqZ90g_.js} +0 -0
- /package/dist/standalone/{bat-BJGaXoOz.js → bat-u_XFPZwF.js} +0 -0
- /package/dist/standalone/{beancount-Cu6FxzuA.js → beancount-gCaRbBDP.js} +0 -0
- /package/dist/standalone/{berry-DiPZpURY.js → berry-v4FqJ4ET.js} +0 -0
- /package/dist/standalone/{bibtex-Dp74FGRo.js → bibtex-6NwGpUZD.js} +0 -0
- /package/dist/standalone/{bicep-BwSAodHP.js → bicep-CA2puXK8.js} +0 -0
- /package/dist/standalone/{c-C-hboKX2.js → c-CUtwC4Mj.js} +0 -0
- /package/dist/standalone/{c3-BS3NJrFe.js → c3-Ce3JALMQ.js} +0 -0
- /package/dist/standalone/{cadence-DKUaB06W.js → cadence-bRc3mSPd.js} +0 -0
- /package/dist/standalone/{catppuccin-frappe-Dq9QR7eZ.js → catppuccin-frappe-Ck2c3Ir7.js} +0 -0
- /package/dist/standalone/{catppuccin-latte-yUwHFQst.js → catppuccin-latte-vbplB5Zo.js} +0 -0
- /package/dist/standalone/{catppuccin-macchiato-KYmbHQyq.js → catppuccin-macchiato-Bl8WMzwO.js} +0 -0
- /package/dist/standalone/{catppuccin-mocha-DFrUhns1.js → catppuccin-mocha-kN0Ta6g1.js} +0 -0
- /package/dist/standalone/{clarity-DKB_EYUy.js → clarity-BFCwqYZP.js} +0 -0
- /package/dist/standalone/{clojure-D7D2Zxsu.js → clojure-VpUVxvc9.js} +0 -0
- /package/dist/standalone/{cmake-Bju7ahwU.js → cmake-C9OlSQmP.js} +0 -0
- /package/dist/standalone/{codeowners-Di1OvpcW.js → codeowners-BRS2WD7U.js} +0 -0
- /package/dist/standalone/{codeql-KhL_IfCA.js → codeql-Bbt3c-53.js} +0 -0
- /package/dist/standalone/{common-lisp-DL0ShAR3.js → common-lisp-BvU0WGaz.js} +0 -0
- /package/dist/standalone/{coq-YuXzTVD8.js → coq-CYNX735i.js} +0 -0
- /package/dist/standalone/{csharp-X4m7dqIW.js → csharp-DEz-wF3L.js} +0 -0
- /package/dist/standalone/{csv-D_FJD-_L.js → csv-CwVLIGRx.js} +0 -0
- /package/dist/standalone/{cue-Brrvnugl.js → cue-BAFnez9U.js} +0 -0
- /package/dist/standalone/{cypher-CieA2-Ow.js → cypher-ByMDbfJE.js} +0 -0
- /package/dist/standalone/{d-BeWU-E1F.js → d-Bj_XxJbi.js} +0 -0
- /package/dist/standalone/{dark-plus-t8phC8vs.js → dark-plus-BxwPW2PO.js} +0 -0
- /package/dist/standalone/{dax-DZs9015r.js → dax-CN15Ir6v.js} +0 -0
- /package/dist/standalone/{desktop-Bmf3DIqD.js → desktop-Blw5nWNd.js} +0 -0
- /package/dist/standalone/{diff-M4XuV4o4.js → diff-DnSAa7YV.js} +0 -0
- /package/dist/standalone/{docker-Bf7rtiym.js → docker-CrBT4uQ5.js} +0 -0
- /package/dist/standalone/{dotenv-BwfGDw9z.js → dotenv-B3TKMiE2.js} +0 -0
- /package/dist/standalone/{dracula-__iKjS5Q.js → dracula-DDAawnm1.js} +0 -0
- /package/dist/standalone/{dracula-soft-Cn3YGlZ1.js → dracula-soft-B6l93y6r.js} +0 -0
- /package/dist/standalone/{dream-maker-BOxs3X-U.js → dream-maker-0xoAwu9F.js} +0 -0
- /package/dist/standalone/{everforest-dark-CG-xS58q.js → everforest-dark-uqvKxCLa.js} +0 -0
- /package/dist/standalone/{everforest-light-VnlgGH1r.js → everforest-light-Bgi4okNs.js} +0 -0
- /package/dist/standalone/{fennel-Bkp2zi6e.js → fennel-CDz99RXZ.js} +0 -0
- /package/dist/standalone/{fish-BSydEoPu.js → fish-BWVO9Ijr.js} +0 -0
- /package/dist/standalone/{fluent-CdeSNonp.js → fluent-SYyPuB0x.js} +0 -0
- /package/dist/standalone/{fortran-free-form-uMmrusbk.js → fortran-free-form-Cvm5N8AW.js} +0 -0
- /package/dist/standalone/{gdscript-CjXE_VF4.js → gdscript-DVPR-jwA.js} +0 -0
- /package/dist/standalone/{gdshader-D3GnIQMO.js → gdshader-DKg6VZob.js} +0 -0
- /package/dist/standalone/{genie-DjRp0HIF.js → genie-CnxW4Aei.js} +0 -0
- /package/dist/standalone/{gherkin-CO-9Xf3O.js → gherkin-Ba85ScdA.js} +0 -0
- /package/dist/standalone/{github-dark-DW2tvKKC.js → github-dark-CUBA-q-0.js} +0 -0
- /package/dist/standalone/{github-dark-default-ChsP8enW.js → github-dark-default-C6xZFMUm.js} +0 -0
- /package/dist/standalone/{github-dark-dimmed-DbObBUjn.js → github-dark-dimmed-BrWMwSTm.js} +0 -0
- /package/dist/standalone/{github-dark-high-contrast-DGQlFkmA.js → github-dark-high-contrast-BwsS_67p.js} +0 -0
- /package/dist/standalone/{github-light-JgN_--pJ.js → github-light-C3_GirKd.js} +0 -0
- /package/dist/standalone/{github-light-default-Dyse0wyU.js → github-light-default-DSvSOSFj.js} +0 -0
- /package/dist/standalone/{github-light-high-contrast-CeZ5HGZn.js → github-light-high-contrast-D-cuyaxK.js} +0 -0
- /package/dist/standalone/{gleam-BIhdqQ3b.js → gleam-BK_CIoct.js} +0 -0
- /package/dist/standalone/{gn--jXLY5_N.js → gn-C_iz9Wbo.js} +0 -0
- /package/dist/standalone/{gnuplot-Bxet1c3v.js → gnuplot-DXHAMx9j.js} +0 -0
- /package/dist/standalone/{groovy-CzT_Iae7.js → groovy-CPhve-3q.js} +0 -0
- /package/dist/standalone/{gruvbox-dark-hard-C1uR-pvB.js → gruvbox-dark-hard-DwraziE-.js} +0 -0
- /package/dist/standalone/{gruvbox-dark-medium-C_NCtEMg.js → gruvbox-dark-medium-tN06WFx5.js} +0 -0
- /package/dist/standalone/{gruvbox-dark-soft-DbASFM7u.js → gruvbox-dark-soft-BRDrk-Jk.js} +0 -0
- /package/dist/standalone/{gruvbox-light-hard-BisBk_cZ.js → gruvbox-light-hard-BUtBEr5w.js} +0 -0
- /package/dist/standalone/{gruvbox-light-medium-Cqf5GdYM.js → gruvbox-light-medium-BDydPOJI.js} +0 -0
- /package/dist/standalone/{gruvbox-light-soft-R3xWeYua.js → gruvbox-light-soft-B6sZTVCC.js} +0 -0
- /package/dist/standalone/{haskell-BU_KScmc.js → haskell-BZidAwBv.js} +0 -0
- /package/dist/standalone/{haxe-Dq20ysgQ.js → haxe-7LrSSm24.js} +0 -0
- /package/dist/standalone/{hcl-C-NSNXCz.js → hcl-B89HlRT6.js} +0 -0
- /package/dist/standalone/{hjson-C1slXyS7.js → hjson--1iec2mk.js} +0 -0
- /package/dist/standalone/{hlsl-nviGPNKF.js → hlsl-ys6eD8k3.js} +0 -0
- /package/dist/standalone/{horizon-pIEktodb.js → horizon-DHDEy49h.js} +0 -0
- /package/dist/standalone/{houston-DM-vL-Qy.js → houston-C2UUgkcj.js} +0 -0
- /package/dist/standalone/{hy-CNbyPkG-.js → hy-DfDp0LOu.js} +0 -0
- /package/dist/standalone/{imba-C3JgZFAu.js → imba-5rlinXsS.js} +0 -0
- /package/dist/standalone/{ini-CnSxfbfK.js → ini-Dvl7p4fh.js} +0 -0
- /package/dist/standalone/{java-CzlXKE3t.js → java-De0U3342.js} +0 -0
- /package/dist/standalone/{javascript-FKiEkpOl.js → javascript-CnBrVnUh.js} +0 -0
- /package/dist/standalone/{json-E5qb7BD2.js → json-DW5QMcCj.js} +0 -0
- /package/dist/standalone/{json5-BlfBFW_Y.js → json5-B92atw3l.js} +0 -0
- /package/dist/standalone/{jsonc-BRJexVfP.js → jsonc-BQ8btgHR.js} +0 -0
- /package/dist/standalone/{jsonl-D859SsoH.js → jsonl-Sr_oGeX-.js} +0 -0
- /package/dist/standalone/{jsonnet-sFIVPoTa.js → jsonnet-CLmJlxUC.js} +0 -0
- /package/dist/standalone/{jssm-BKvxMEP9.js → jssm-DnM8i8ut.js} +0 -0
- /package/dist/standalone/{jsx-D6UqkuWx.js → jsx-BLpri0NB.js} +0 -0
- /package/dist/standalone/{kanagawa-dragon-BVeOdnTJ.js → kanagawa-dragon-Rl17Vq_C.js} +0 -0
- /package/dist/standalone/{kanagawa-lotus-BPxif4UL.js → kanagawa-lotus-CEfzoMAY.js} +0 -0
- /package/dist/standalone/{kanagawa-wave-yTBcVIG8.js → kanagawa-wave-Dl5jL6TY.js} +0 -0
- /package/dist/standalone/{kdl-DHueRo8f.js → kdl-ByebaTOR.js} +0 -0
- /package/dist/standalone/{kotlin-Dq1wwHQP.js → kotlin-CO_7ebqK.js} +0 -0
- /package/dist/standalone/{laserwave-x5LKCxGn.js → laserwave-BymGJYS7.js} +0 -0
- /package/dist/standalone/{lean-xWP4NbYS.js → lean-D7q_Kpgv.js} +0 -0
- /package/dist/standalone/{less-To8q_Luw.js → less-DfGpr34i.js} +0 -0
- /package/dist/standalone/{light-plus-B9N5DQI_.js → light-plus-rCHX6NNy.js} +0 -0
- /package/dist/standalone/{llvm-DSlzjbDz.js → llvm-DI83sH5G.js} +0 -0
- /package/dist/standalone/{log-BUZNzUKc.js → log-GjieA_Fi.js} +0 -0
- /package/dist/standalone/{logo-Cdvy4UIe.js → logo-Z-Po9cqr.js} +0 -0
- /package/dist/standalone/{luau-ChD5_OIQ.js → luau-CHFvY7vV.js} +0 -0
- /package/dist/standalone/{make-PTqunrmv.js → make-pEFeZerG.js} +0 -0
- /package/dist/standalone/{markdown-tUO1dt9m.js → markdown-BLxfK9DH.js} +0 -0
- /package/dist/standalone/{material-theme-CZJ_pRWf.js → material-theme-_mO8dGF4.js} +0 -0
- /package/dist/standalone/{material-theme-darker-NnzT0yiw.js → material-theme-darker-CW8WbBMR.js} +0 -0
- /package/dist/standalone/{material-theme-lighter-B-3DgVxS.js → material-theme-lighter-DWGtW3Sj.js} +0 -0
- /package/dist/standalone/{material-theme-ocean-BZZHghfO.js → material-theme-ocean-VhkfqVVF.js} +0 -0
- /package/dist/standalone/{material-theme-palenight-B9O9JO4H.js → material-theme-palenight-cApQ4-KF.js} +0 -0
- /package/dist/standalone/{matlab-Co_sDlVB.js → matlab-L7fpDsTl.js} +0 -0
- /package/dist/standalone/{mdx-B4AGJXox.js → mdx-G_CG82jO.js} +0 -0
- /package/dist/standalone/{mermaid-4pySd3sl.js → mermaid-QCKf3Ptj.js} +0 -0
- /package/dist/standalone/{min-dark-DSigFwoh.js → min-dark-C7ciBb2i.js} +0 -0
- /package/dist/standalone/{min-light-b8nqGai7.js → min-light-DC6qyE0O.js} +0 -0
- /package/dist/standalone/{mipsasm-DbZprEQm.js → mipsasm-Ch_J_goG.js} +0 -0
- /package/dist/standalone/{mojo-4kIBaoam.js → mojo-BUTjyOde.js} +0 -0
- /package/dist/standalone/{monokai-BKSWoNnW.js → monokai-D99JixW5.js} +0 -0
- /package/dist/standalone/{moonbit-ZcSH7VpN.js → moonbit-v_Wmuq4r.js} +0 -0
- /package/dist/standalone/{move-BAMKTWoZ.js → move-CujRAOrk.js} +0 -0
- /package/dist/standalone/{narrat-DYLRa4xG.js → narrat-BUFChaaW.js} +0 -0
- /package/dist/standalone/{night-owl-light-fbFrWwTF.js → night-owl-light-ZvY_o4AV.js} +0 -0
- /package/dist/standalone/{night-owl-BtS72I6-.js → night-owl-zFbR0iUq.js} +0 -0
- /package/dist/standalone/{nix-DlQjHQ1N.js → nix-DVHO39rw.js} +0 -0
- /package/dist/standalone/{nord-Kzx5CafP.js → nord-CSYW7zq7.js} +0 -0
- /package/dist/standalone/{nushell-B04C_1w9.js → nushell-wvafmaI1.js} +0 -0
- /package/dist/standalone/{objective-c-DO0dC44X.js → objective-c-BJMjPSKt.js} +0 -0
- /package/dist/standalone/{objective-cpp-C6jZz_vb.js → objective-cpp-COwkzZNW.js} +0 -0
- /package/dist/standalone/{ocaml-D9wp3EJd.js → ocaml-BugjlZwQ.js} +0 -0
- /package/dist/standalone/{odin-u5wG6Qd6.js → odin-BbI_ip3y.js} +0 -0
- /package/dist/standalone/{one-dark-pro-x1jnl7Dq.js → one-dark-pro-O7XwserV.js} +0 -0
- /package/dist/standalone/{one-light-CHHJSb-V.js → one-light-Bv2B3pGW.js} +0 -0
- /package/dist/standalone/{open-CGQvvIUq.js → open-BpEGCZtV.js} +0 -0
- /package/dist/standalone/{openscad-H5hW1BA6.js → openscad-CYP3kDCW.js} +0 -0
- /package/dist/standalone/{pascal-h7T9h7AG.js → pascal-DzRWzYc7.js} +0 -0
- /package/dist/standalone/{pkl-Bs_8OmWM.js → pkl-Csk3Pz3F.js} +0 -0
- /package/dist/standalone/{plastic-MRrPKBd1.js → plastic-B8sPQcwq.js} +0 -0
- /package/dist/standalone/{plsql-BrbZPaQW.js → plsql-DHpuTJ3X.js} +0 -0
- /package/dist/standalone/{po-Diz0LmjW.js → po-BlTn26iX.js} +0 -0
- /package/dist/standalone/{poimandres-D3Al1iQC.js → poimandres-Nn-UO8qp.js} +0 -0
- /package/dist/standalone/{polar-BCwHILUV.js → polar-DEMP0iHG.js} +0 -0
- /package/dist/standalone/{postcss-D6Lmyt9A.js → postcss-B3SVlKZw.js} +0 -0
- /package/dist/standalone/{powerquery-CQr4BVoo.js → powerquery-DuUdfu4q.js} +0 -0
- /package/dist/standalone/{powershell-B6zzL9QO.js → powershell-CB3_ElnE.js} +0 -0
- /package/dist/standalone/{prisma-yySgczME.js → prisma-BxeT-Y5M.js} +0 -0
- /package/dist/standalone/{prolog-CZTkGNiW.js → prolog-BxrMgyN9.js} +0 -0
- /package/dist/standalone/{proto-Bu_Nhf7u.js → proto-Dek-exro.js} +0 -0
- /package/dist/standalone/{puppet-CJffH6Q6.js → puppet-C16HFbnX.js} +0 -0
- /package/dist/standalone/{purescript-CC7chrMM.js → purescript-C73JvxLF.js} +0 -0
- /package/dist/standalone/{python-C0zrVFze.js → python-DFvGjTfU.js} +0 -0
- /package/dist/standalone/{qmldir-C14XBFWV.js → qmldir-D2UzrXvk.js} +0 -0
- /package/dist/standalone/{qss-B5Hlft_e.js → qss-CyPgAzDy.js} +0 -0
- /package/dist/standalone/{r-BJ2VNcvN.js → r-BTPLa6iH.js} +0 -0
- /package/dist/standalone/{racket-BhgskJzI.js → racket-BaoaiPkO.js} +0 -0
- /package/dist/standalone/{raku-DsquHgLn.js → raku-BsUkgPqO.js} +0 -0
- /package/dist/standalone/{red-B7RxoP7i.js → red-CCJAPkdg.js} +0 -0
- /package/dist/standalone/{reg-Bax0jtzQ.js → reg-DOi1ALwl.js} +0 -0
- /package/dist/standalone/{regexp-BTh6yLg7.js → regexp-cogjKOiz.js} +0 -0
- /package/dist/standalone/{rel-BJ9pN2G2.js → rel-Y9vyrCmO.js} +0 -0
- /package/dist/standalone/{riscv-C3I2jhjQ.js → riscv-C9NE9rlt.js} +0 -0
- /package/dist/standalone/{ron-B4yZ2p1h.js → ron-uMa_rbSR.js} +0 -0
- /package/dist/standalone/{rose-pine-CesGHTut.js → rose-pine-B6wSIDAC.js} +0 -0
- /package/dist/standalone/{rose-pine-dawn-H7rm9o-e.js → rose-pine-dawn-CalFuemK.js} +0 -0
- /package/dist/standalone/{rose-pine-moon-BLFdnJwM.js → rose-pine-moon-BS44sctL.js} +0 -0
- /package/dist/standalone/{rosmsg-xA4_Syxo.js → rosmsg-ncCRrAah.js} +0 -0
- /package/dist/standalone/{rust-BwguOFUq.js → rust-D__ScB18.js} +0 -0
- /package/dist/standalone/{sass-BZyNoloZ.js → sass-Dcwwxgkc.js} +0 -0
- /package/dist/standalone/{scala-CekfPUXd.js → scala-qMGqTQGj.js} +0 -0
- /package/dist/standalone/{scheme-B2vB2nlX.js → scheme-BUvagZbg.js} +0 -0
- /package/dist/standalone/{sdbl-B-nwTmgB.js → sdbl-CdI9Io2f.js} +0 -0
- /package/dist/standalone/{shellscript-BUzexP2h.js → shellscript-CLNzcEEH.js} +0 -0
- /package/dist/standalone/{slack-dark-DCR6M5dd.js → slack-dark-CZWNFbAj.js} +0 -0
- /package/dist/standalone/{slack-ochin-BxQ3FsyT.js → slack-ochin-CcsRSPGb.js} +0 -0
- /package/dist/standalone/{smalltalk-Cy1j24XO.js → smalltalk-CkHsb-ck.js} +0 -0
- /package/dist/standalone/{snazzy-light-CjEw4xHM.js → snazzy-light-Cm_pY2Ne.js} +0 -0
- /package/dist/standalone/{solarized-dark-XlQ9gXgZ.js → solarized-dark-EVcpLOPz.js} +0 -0
- /package/dist/standalone/{solarized-light-isNaysOv.js → solarized-light-BGmOwKbi.js} +0 -0
- /package/dist/standalone/{solidity-C1mh1SRB.js → solidity-DcmwFsmZ.js} +0 -0
- /package/dist/standalone/{splunk-oM69IznW.js → splunk-BAf42Kh3.js} +0 -0
- /package/dist/standalone/{sql-CqT9Lw7j.js → sql-OpUJ1H7b.js} +0 -0
- /package/dist/standalone/{ssh-config-B0ZrS7Sv.js → ssh-config-DTZY5LJQ.js} +0 -0
- /package/dist/standalone/{stylus-B9JQrvWs.js → stylus-CHp-rBJx.js} +0 -0
- /package/dist/standalone/{swift-CaafmPxt.js → swift-DjfAKDlq.js} +0 -0
- /package/dist/standalone/{synthwave-84-BX-qCxDD.js → synthwave-84-B5y6dw6I.js} +0 -0
- /package/dist/standalone/{system-verilog-J8T_iWHG.js → system-verilog-CstGBDHm.js} +0 -0
- /package/dist/standalone/{systemd-DVL5CBpd.js → systemd-CV0H8W0r.js} +0 -0
- /package/dist/standalone/{talonscript-JJfmMcGp.js → talonscript-BfJo0mzd.js} +0 -0
- /package/dist/standalone/{tasl-B1QiBRw2.js → tasl-CbFmChTU.js} +0 -0
- /package/dist/standalone/{tcl-CqllcB5H.js → tcl-DNn0b4Xi.js} +0 -0
- /package/dist/standalone/{terraform-wW0EQRMO.js → terraform-C-5xJLZK.js} +0 -0
- /package/dist/standalone/{tokyo-night-D6xJgjfK.js → tokyo-night-DwP487HJ.js} +0 -0
- /package/dist/standalone/{toml-BHrgvSPm.js → toml-BUQbhfId.js} +0 -0
- /package/dist/standalone/{tsv-D73M_gRj.js → tsv-DboMNYlp.js} +0 -0
- /package/dist/standalone/{tsx-D6awiul2.js → tsx-D_ZL21a1.js} +0 -0
- /package/dist/standalone/{turtle-C6QRqIYF.js → turtle-ep-yDHHJ.js} +0 -0
- /package/dist/standalone/{typescript-CWgyaUtY.js → typescript-DLmRjE2H.js} +0 -0
- /package/dist/standalone/{typst-63_R-dcN.js → typst-OK3ZsbAS.js} +0 -0
- /package/dist/standalone/{v-DNh9rpzt.js → v-BRzbo0xa.js} +0 -0
- /package/dist/standalone/{vala-yZrEMgbl.js → vala-DajMRXrp.js} +0 -0
- /package/dist/standalone/{vb-CWiXLMNc.js → vb-Cp5p1BHA.js} +0 -0
- /package/dist/standalone/{verilog-D_YgnmVW.js → verilog-Karwuy7m.js} +0 -0
- /package/dist/standalone/{vesper-BoY7BUOC.js → vesper-D8EI4h-P.js} +0 -0
- /package/dist/standalone/{vhdl-CIOMuzRr.js → vhdl-BWVkbJap.js} +0 -0
- /package/dist/standalone/{viml-KvIzNj-z.js → viml-D006eITo.js} +0 -0
- /package/dist/standalone/{vitesse-black-BC5aDvua.js → vitesse-black-CiyuYPYv.js} +0 -0
- /package/dist/standalone/{vitesse-dark-C_RcLVAX.js → vitesse-dark-DF1BoauX.js} +0 -0
- /package/dist/standalone/{vitesse-light-CbYhMxH_.js → vitesse-light-BkWBILrw.js} +0 -0
- /package/dist/standalone/{vyper-DQ6Iue0m.js → vyper-pqGBEKo6.js} +0 -0
- /package/dist/standalone/{wasm-BVujMf4j.js → wasm-BNcVSub7.js} +0 -0
- /package/dist/standalone/{wasm-CttxofWT.js → wasm-BoWtZ2Hg.js} +0 -0
- /package/dist/standalone/{wenyan-sFr85_Wa.js → wenyan-B1aPQ0e8.js} +0 -0
- /package/dist/standalone/{wgsl-C8sJ4ScM.js → wgsl-MFrJo5Av.js} +0 -0
- /package/dist/standalone/{wikitext-BHbI4LrJ.js → wikitext-Bam7iWkE.js} +0 -0
- /package/dist/standalone/{wit-BrulQYCT.js → wit-RYUlqdwx.js} +0 -0
- /package/dist/standalone/{wolfram-CkTHL-YU.js → wolfram-BAx02ysC.js} +0 -0
- /package/dist/standalone/{yaml-C2UdUGt-.js → yaml-BipAacI9.js} +0 -0
- /package/dist/standalone/{zenscript-CvnF8pfB.js → zenscript-BidEsPSr.js} +0 -0
- /package/dist/standalone/{zig-DrTOhqiK.js → zig-DRQ1gulu.js} +0 -0
package/dist/lib/index.js
CHANGED
|
@@ -31,7 +31,6 @@ import remarkMath from "remark-math";
|
|
|
31
31
|
import remarkParse from "remark-parse";
|
|
32
32
|
import { parse, stringify } from "yaml";
|
|
33
33
|
import { sanitizeUri } from "micromark-util-sanitize-uri";
|
|
34
|
-
|
|
35
34
|
//#region src/lib/utilities/string.ts
|
|
36
35
|
function getHash(text, length) {
|
|
37
36
|
return fnv1a(text, { size: length === 8 ? 32 : 64 }).toString(16).padStart(length, "0");
|
|
@@ -70,9 +69,11 @@ function emptyIsUndefined(text) {
|
|
|
70
69
|
function css(strings, ...values) {
|
|
71
70
|
return trimLeadingIndentation(strings, ...values);
|
|
72
71
|
}
|
|
72
|
+
const NEWLINE_REGEX$1 = /\r?\n/;
|
|
73
|
+
const LEADING_WHITESPACE_REGEX = /^(\s+)/;
|
|
73
74
|
function trimLeadingIndentation(strings, ...values) {
|
|
74
|
-
const lines = strings.reduce((result, text, i) => `${result}${text}${String(values[i] ?? "")}`, "").split(
|
|
75
|
-
const leadingSpace =
|
|
75
|
+
const lines = strings.reduce((result, text, i) => `${result}${text}${String(values[i] ?? "")}`, "").split(NEWLINE_REGEX$1).filter((line) => line.trim() !== "");
|
|
76
|
+
const leadingSpace = LEADING_WHITESPACE_REGEX.exec(lines[0])?.[0] ?? "";
|
|
76
77
|
const leadingSpaceRegex = new RegExp(`^${leadingSpace}`);
|
|
77
78
|
return lines.map((line) => line.replace(leadingSpaceRegex, "").trimEnd()).join("\n");
|
|
78
79
|
}
|
|
@@ -82,16 +83,17 @@ function splitAtFirstMatch(text, regex) {
|
|
|
82
83
|
const { index } = match;
|
|
83
84
|
return [text.slice(0, index), text.slice(index)];
|
|
84
85
|
}
|
|
85
|
-
|
|
86
86
|
//#endregion
|
|
87
87
|
//#region src/lib/shared/constants.ts
|
|
88
88
|
/**
|
|
89
89
|
* The default CSS to use for cards. This matches Anki's default. Stored in the Yanki card models and shared across all Yanki-managed notes regardless of namespace.
|
|
90
|
+
* It does change occasionally, see https://github.com/ankitects/anki/blob/main/rslib/src/notetype/styling.css
|
|
90
91
|
*/
|
|
91
92
|
const CSS_DEFAULT_STYLE = css`
|
|
92
93
|
.card {
|
|
93
94
|
font-family: arial;
|
|
94
95
|
font-size: 20px;
|
|
96
|
+
line-height: 1.5;
|
|
95
97
|
text-align: center;
|
|
96
98
|
color: black;
|
|
97
99
|
background-color: white;
|
|
@@ -102,22 +104,6 @@ const CSS_DEFAULT_STYLE = css`
|
|
|
102
104
|
*/
|
|
103
105
|
const CSS_DEFAULT_CLASS_NAME = "yanki";
|
|
104
106
|
/**
|
|
105
|
-
* Whether to require changes to notes, models, or decks before invoking an
|
|
106
|
-
* AnkiWeb sync. Seems like a good idea, but this is tricky... because if you
|
|
107
|
-
* change the AnkiWeb flag after doing a sync, and haven't changed any files,
|
|
108
|
-
* you won't end up pushing changes to AnkiWeb, which seems to contradict
|
|
109
|
-
* expectations even though it would be more performant in the typical case.
|
|
110
|
-
*
|
|
111
|
-
* Only applies if the `ankiWeb` flag is true.
|
|
112
|
-
*/
|
|
113
|
-
const SYNC_TO_ANKI_WEB_EVEN_IF_UNCHANGED = true;
|
|
114
|
-
/**
|
|
115
|
-
* The maximum length of a namespace. This is used to ensure that the namespace
|
|
116
|
-
* is easy to type in CLI commands and doesn't hog too much semantic space in
|
|
117
|
-
* Media filenames.
|
|
118
|
-
*/
|
|
119
|
-
const NOTE_NAMESPACE_MAX_LENGTH = 60;
|
|
120
|
-
/**
|
|
121
107
|
* The default deck to put a card in if the deck deck can not be inferred from
|
|
122
108
|
* the file path, e.g. when the `sync` command is used directly instead of
|
|
123
109
|
* `syncFiles`.
|
|
@@ -140,7 +126,6 @@ const NOTE_DEFAULT_EMPTY_HAST = u("element", {
|
|
|
140
126
|
}, [u("text", NOTE_DEFAULT_EMPTY_TEXT)])]);
|
|
141
127
|
const MEDIA_DEFAULT_HASH_MODE_FILE = "metadata";
|
|
142
128
|
const MEDIA_DEFAULT_HASH_MODE_URL = "metadata";
|
|
143
|
-
const MEDIA_INCLUDE_LEGIBLE_FILENAME = false;
|
|
144
129
|
/**
|
|
145
130
|
* How to first attempt to infer the asset type behind a URL.
|
|
146
131
|
*
|
|
@@ -149,11 +134,6 @@ const MEDIA_INCLUDE_LEGIBLE_FILENAME = false;
|
|
|
149
134
|
*/
|
|
150
135
|
const MEDIA_URL_CONTENT_TYPE_MODE = "metadata";
|
|
151
136
|
/**
|
|
152
|
-
* Anki enforces limits on media asset filenames. Older versions allowed up to 255, but it will be 120 moving forward.
|
|
153
|
-
* https://github.com/ankitects/anki/blob/e41c4573d789afe8b020fab5d9d1eede50c3fa3d/rslib/src/sync/media/mod.rs#L20
|
|
154
|
-
*/
|
|
155
|
-
const MEDIA_FILENAME_MAX_LENGTH = 120;
|
|
156
|
-
/**
|
|
157
137
|
* Filename to use when a media asset has no name. Will be appended with counter parenthetical as needed.
|
|
158
138
|
*/
|
|
159
139
|
const MEDIA_DEFAULT_EMPTY_FILENAME = "Untitled";
|
|
@@ -219,12 +199,10 @@ const MEDIA_SUPPORTED_EXTENSIONS = [
|
|
|
219
199
|
...MEDIA_SUPPORTED_IMAGE_EXTENSIONS,
|
|
220
200
|
...MEDIA_SUPPORTED_FILE_EXTENSIONS
|
|
221
201
|
];
|
|
222
|
-
|
|
223
202
|
//#endregion
|
|
224
203
|
//#region src/lib/utilities/platform.ts
|
|
225
204
|
const ENVIRONMENT = typeof window === "undefined" ? typeof process === "undefined" ? "other" : "node" : "browser";
|
|
226
|
-
|
|
227
|
-
|
|
205
|
+
ENVIRONMENT === "browser" ? /windows/i.test(navigator.userAgent) || /mac/i.test(navigator.userAgent) || /linux/i.test(navigator.userAgent) || /ubuntu/i.test(navigator.userAgent) : ENVIRONMENT === "node" && (process.platform === "win32" || process.platform === "darwin" || process.platform);
|
|
228
206
|
//#endregion
|
|
229
207
|
//#region src/lib/shared/types.ts
|
|
230
208
|
const defaultGlobalOptions = {
|
|
@@ -273,7 +251,6 @@ async function getDefaultFileAdapter() {
|
|
|
273
251
|
function getDefaultFetchAdapter() {
|
|
274
252
|
return fetch.bind(globalThis);
|
|
275
253
|
}
|
|
276
|
-
|
|
277
254
|
//#endregion
|
|
278
255
|
//#region src/lib/utilities/file.ts
|
|
279
256
|
async function fileExists(absoluteFilePath, fileAdapter) {
|
|
@@ -296,9 +273,91 @@ async function getFileContentHash(absoluteFilePath, fileAdapter, mode = MEDIA_DE
|
|
|
296
273
|
case "name": return getHash(absoluteFilePath, 16);
|
|
297
274
|
}
|
|
298
275
|
}
|
|
299
|
-
|
|
300
276
|
//#endregion
|
|
301
277
|
//#region src/lib/utilities/namespace.ts
|
|
278
|
+
const CONSECUTIVE_HYPHENS_REGEX = /-+/g;
|
|
279
|
+
const ASTERISK_REGEX = /\*/;
|
|
280
|
+
const FORBIDDEN_CHARACTERS = [
|
|
281
|
+
[/:/, "Colon"],
|
|
282
|
+
[/\u0000/, "Null"],
|
|
283
|
+
[/\u0001/, "Start of Heading"],
|
|
284
|
+
[/\u0002/, "Start of Text"],
|
|
285
|
+
[/\u0003/, "End of Text"],
|
|
286
|
+
[/\u0004/, "End of Transmission"],
|
|
287
|
+
[/\u0005/, "Enquiry"],
|
|
288
|
+
[/\u0006/, "Acknowledge"],
|
|
289
|
+
[/\u0007/, "Bell"],
|
|
290
|
+
[/\u0008/, "Backspace"],
|
|
291
|
+
[/\u0009/, "Horizontal Tab"],
|
|
292
|
+
[/\u000A/, "Line Feed"],
|
|
293
|
+
[/\u000B/, "Vertical Tab"],
|
|
294
|
+
[/\u000C/, "Form Feed"],
|
|
295
|
+
[/\u000D/, "Carriage Return"],
|
|
296
|
+
[/\u000E/, "Shift Out"],
|
|
297
|
+
[/\u000F/, "Shift In"],
|
|
298
|
+
[/\u0010/, "Data Link Escape"],
|
|
299
|
+
[/\u0011/, "Device Control 1"],
|
|
300
|
+
[/\u0012/, "Device Control 2"],
|
|
301
|
+
[/\u0013/, "Device Control 3"],
|
|
302
|
+
[/\u0014/, "Device Control 4"],
|
|
303
|
+
[/\u0015/, "Negative Acknowledge"],
|
|
304
|
+
[/\u0016/, "Synchronous Idle"],
|
|
305
|
+
[/\u0017/, "End of Transmission Block"],
|
|
306
|
+
[/\u0018/, "Cancel"],
|
|
307
|
+
[/\u0019/, "End of Medium"],
|
|
308
|
+
[/\u001A/, "Substitute"],
|
|
309
|
+
[/\u001B/, "Escape"],
|
|
310
|
+
[/\u001C/, "File Separator"],
|
|
311
|
+
[/\u001D/, "Group Separator"],
|
|
312
|
+
[/\u001E/, "Record Separator"],
|
|
313
|
+
[/\u001F/, "Unit Separator"],
|
|
314
|
+
[/\u007F/, "Delete"],
|
|
315
|
+
[/\u0080/, "Padding Character"],
|
|
316
|
+
[/\u0081/, "High Octet Preset"],
|
|
317
|
+
[/\u0082/, "Break Permitted Here"],
|
|
318
|
+
[/\u0083/, "No Break Here"],
|
|
319
|
+
[/\u0084/, "Index"],
|
|
320
|
+
[/\u0085/, "Next Line"],
|
|
321
|
+
[/\u0086/, "Start of Selected Area"],
|
|
322
|
+
[/\u0087/, "End of Selected Area"],
|
|
323
|
+
[/\u0088/, "Character Tabulation Set"],
|
|
324
|
+
[/\u0089/, "Character Tabulation with Justification"],
|
|
325
|
+
[/\u008A/, "Line Tabulation Set"],
|
|
326
|
+
[/\u008B/, "Partial Line Forward"],
|
|
327
|
+
[/\u008C/, "Partial Line Backward"],
|
|
328
|
+
[/\u008D/, "Reverse Line Feed"],
|
|
329
|
+
[/\u008E/, "Single Shift Two"],
|
|
330
|
+
[/\u008F/, "Single Shift Three"],
|
|
331
|
+
[/\u0090/, "Device Control String"],
|
|
332
|
+
[/\u0091/, "Private Use One"],
|
|
333
|
+
[/\u0092/, "Private Use Two"],
|
|
334
|
+
[/\u0093/, "Set Transmit State"],
|
|
335
|
+
[/\u0094/, "Cancel Character"],
|
|
336
|
+
[/\u0095/, "Message Waiting"],
|
|
337
|
+
[/\u0096/, "Start of Protected Area"],
|
|
338
|
+
[/\u0097/, "End of Protected Area"],
|
|
339
|
+
[/\u0098/, "Start of String"],
|
|
340
|
+
[/\u0099/, "Single Graphic Character Introducer"],
|
|
341
|
+
[/\u009A/, "Single Character Introducer"],
|
|
342
|
+
[/\u009B/, "Control Sequence Introducer"],
|
|
343
|
+
[/\u009C/, "String Terminator"],
|
|
344
|
+
[/\u009D/, "Operating System Command"],
|
|
345
|
+
[/\u009E/, "Privacy Message"],
|
|
346
|
+
[/\u009F/, "Application Program Command"],
|
|
347
|
+
[/\u00A0/, "Non-breaking Space"],
|
|
348
|
+
[/\u00AD/, "Soft Hyphen"],
|
|
349
|
+
[/\u200B/, "Zero-width Space"],
|
|
350
|
+
[/\u200C/, "Zero-width Non-joiner"],
|
|
351
|
+
[/\u200D/, "Zero-width Joiner"],
|
|
352
|
+
[/\u200E/, "Left-to-right Mark"],
|
|
353
|
+
[/\u200F/, "Right-to-left Mark"],
|
|
354
|
+
[/\u202A/, "Left-to-right Embedding"],
|
|
355
|
+
[/\u202B/, "Right-to-left Embedding"],
|
|
356
|
+
[/\u202C/, "Pop Directional Formatting"],
|
|
357
|
+
[/\u202D/, "Left-to-right Override"],
|
|
358
|
+
[/\u202E/, "Right-to-left Override"],
|
|
359
|
+
[/\uFEFF/, "Byte Order Mark (BOM)"]
|
|
360
|
+
];
|
|
302
361
|
/**
|
|
303
362
|
* Convenience
|
|
304
363
|
* @returns sanitized valid namespace
|
|
@@ -334,89 +393,8 @@ function sanitizeNamespace(namespace) {
|
|
|
334
393
|
function validateNamespace(namespace, allowAsterisk = false) {
|
|
335
394
|
const errorMessages = [];
|
|
336
395
|
if (namespace.trim().length === 0) errorMessages.push("Cannot be empty");
|
|
337
|
-
if (namespace.trim().length >
|
|
338
|
-
const forbiddenCharacters = [
|
|
339
|
-
[/:/, "Colon"],
|
|
340
|
-
[/\u0000/, "Null"],
|
|
341
|
-
[/\u0001/, "Start of Heading"],
|
|
342
|
-
[/\u0002/, "Start of Text"],
|
|
343
|
-
[/\u0003/, "End of Text"],
|
|
344
|
-
[/\u0004/, "End of Transmission"],
|
|
345
|
-
[/\u0005/, "Enquiry"],
|
|
346
|
-
[/\u0006/, "Acknowledge"],
|
|
347
|
-
[/\u0007/, "Bell"],
|
|
348
|
-
[/\u0008/, "Backspace"],
|
|
349
|
-
[/\u0009/, "Horizontal Tab"],
|
|
350
|
-
[/\u000A/, "Line Feed"],
|
|
351
|
-
[/\u000B/, "Vertical Tab"],
|
|
352
|
-
[/\u000C/, "Form Feed"],
|
|
353
|
-
[/\u000D/, "Carriage Return"],
|
|
354
|
-
[/\u000E/, "Shift Out"],
|
|
355
|
-
[/\u000F/, "Shift In"],
|
|
356
|
-
[/\u0010/, "Data Link Escape"],
|
|
357
|
-
[/\u0011/, "Device Control 1"],
|
|
358
|
-
[/\u0012/, "Device Control 2"],
|
|
359
|
-
[/\u0013/, "Device Control 3"],
|
|
360
|
-
[/\u0014/, "Device Control 4"],
|
|
361
|
-
[/\u0015/, "Negative Acknowledge"],
|
|
362
|
-
[/\u0016/, "Synchronous Idle"],
|
|
363
|
-
[/\u0017/, "End of Transmission Block"],
|
|
364
|
-
[/\u0018/, "Cancel"],
|
|
365
|
-
[/\u0019/, "End of Medium"],
|
|
366
|
-
[/\u001A/, "Substitute"],
|
|
367
|
-
[/\u001B/, "Escape"],
|
|
368
|
-
[/\u001C/, "File Separator"],
|
|
369
|
-
[/\u001D/, "Group Separator"],
|
|
370
|
-
[/\u001E/, "Record Separator"],
|
|
371
|
-
[/\u001F/, "Unit Separator"],
|
|
372
|
-
[/\u007F/, "Delete"],
|
|
373
|
-
[/\u0080/, "Padding Character"],
|
|
374
|
-
[/\u0081/, "High Octet Preset"],
|
|
375
|
-
[/\u0082/, "Break Permitted Here"],
|
|
376
|
-
[/\u0083/, "No Break Here"],
|
|
377
|
-
[/\u0084/, "Index"],
|
|
378
|
-
[/\u0085/, "Next Line"],
|
|
379
|
-
[/\u0086/, "Start of Selected Area"],
|
|
380
|
-
[/\u0087/, "End of Selected Area"],
|
|
381
|
-
[/\u0088/, "Character Tabulation Set"],
|
|
382
|
-
[/\u0089/, "Character Tabulation with Justification"],
|
|
383
|
-
[/\u008A/, "Line Tabulation Set"],
|
|
384
|
-
[/\u008B/, "Partial Line Forward"],
|
|
385
|
-
[/\u008C/, "Partial Line Backward"],
|
|
386
|
-
[/\u008D/, "Reverse Line Feed"],
|
|
387
|
-
[/\u008E/, "Single Shift Two"],
|
|
388
|
-
[/\u008F/, "Single Shift Three"],
|
|
389
|
-
[/\u0090/, "Device Control String"],
|
|
390
|
-
[/\u0091/, "Private Use One"],
|
|
391
|
-
[/\u0092/, "Private Use Two"],
|
|
392
|
-
[/\u0093/, "Set Transmit State"],
|
|
393
|
-
[/\u0094/, "Cancel Character"],
|
|
394
|
-
[/\u0095/, "Message Waiting"],
|
|
395
|
-
[/\u0096/, "Start of Protected Area"],
|
|
396
|
-
[/\u0097/, "End of Protected Area"],
|
|
397
|
-
[/\u0098/, "Start of String"],
|
|
398
|
-
[/\u0099/, "Single Graphic Character Introducer"],
|
|
399
|
-
[/\u009A/, "Single Character Introducer"],
|
|
400
|
-
[/\u009B/, "Control Sequence Introducer"],
|
|
401
|
-
[/\u009C/, "String Terminator"],
|
|
402
|
-
[/\u009D/, "Operating System Command"],
|
|
403
|
-
[/\u009E/, "Privacy Message"],
|
|
404
|
-
[/\u009F/, "Application Program Command"],
|
|
405
|
-
[/\u00A0/, "Non-breaking Space"],
|
|
406
|
-
[/\u00AD/, "Soft Hyphen"],
|
|
407
|
-
[/\u200B/, "Zero-width Space"],
|
|
408
|
-
[/\u200C/, "Zero-width Non-joiner"],
|
|
409
|
-
[/\u200D/, "Zero-width Joiner"],
|
|
410
|
-
[/\u200E/, "Left-to-right Mark"],
|
|
411
|
-
[/\u200F/, "Right-to-left Mark"],
|
|
412
|
-
[/\u202A/, "Left-to-right Embedding"],
|
|
413
|
-
[/\u202B/, "Right-to-left Embedding"],
|
|
414
|
-
[/\u202C/, "Pop Directional Formatting"],
|
|
415
|
-
[/\u202D/, "Left-to-right Override"],
|
|
416
|
-
[/\u202E/, "Right-to-left Override"],
|
|
417
|
-
[/\uFEFF/, "Byte Order Mark (BOM)"]
|
|
418
|
-
];
|
|
419
|
-
if (!allowAsterisk) forbiddenCharacters.push([/\*/, "Asterisk"]);
|
|
396
|
+
if (namespace.trim().length > 60) errorMessages.push(`Cannot be longer than 60 characters`);
|
|
397
|
+
const forbiddenCharacters = allowAsterisk ? FORBIDDEN_CHARACTERS : [...FORBIDDEN_CHARACTERS, [ASTERISK_REGEX, "Asterisk"]];
|
|
420
398
|
for (const [regex, description] of forbiddenCharacters) {
|
|
421
399
|
const match = namespace.match(regex);
|
|
422
400
|
if (match) {
|
|
@@ -430,9 +408,8 @@ function validateNamespace(namespace, allowAsterisk = false) {
|
|
|
430
408
|
* Get sanitized namespace with yanki-media- prefix (for ease of searching)
|
|
431
409
|
*/
|
|
432
410
|
function getSlugifiedNamespace(namespace) {
|
|
433
|
-
return `yanki-media-${slugify(sanitizeNamespace(namespace)).replaceAll(
|
|
411
|
+
return `yanki-media-${slugify(sanitizeNamespace(namespace)).replaceAll(CONSECUTIVE_HYPHENS_REGEX, "-")}`;
|
|
434
412
|
}
|
|
435
|
-
|
|
436
413
|
//#endregion
|
|
437
414
|
//#region src/lib/utilities/mime.ts
|
|
438
415
|
/**
|
|
@@ -479,9 +456,10 @@ function getFileExtensionForMimeType(mimeType) {
|
|
|
479
456
|
if (result === void 0) return;
|
|
480
457
|
return result;
|
|
481
458
|
}
|
|
482
|
-
|
|
483
459
|
//#endregion
|
|
484
460
|
//#region src/lib/utilities/path.ts
|
|
461
|
+
const WINDOWS_DRIVE_LETTER_REGEX = /^[A-Z]:/i;
|
|
462
|
+
const QUERY_FRAGMENT_START_REGEX = /[#?^]/;
|
|
485
463
|
/**
|
|
486
464
|
* The browserify polyfill doesn't implement win32 absolute path detection...
|
|
487
465
|
* @param filePath Normalized path
|
|
@@ -528,18 +506,18 @@ function resolveWithBasePath(filePath, options) {
|
|
|
528
506
|
}
|
|
529
507
|
if (!isAbsolute(cwd)) console.warn(`CWD "${cwd}" is not absolute`);
|
|
530
508
|
if (isAbsolute(filePath)) {
|
|
531
|
-
if (basePath === void 0 ||
|
|
509
|
+
if (basePath === void 0 || WINDOWS_DRIVE_LETTER_REGEX.test(filePath) || !compoundBase && filePath.startsWith(basePath)) return filePath;
|
|
532
510
|
return path.join(basePath, filePath);
|
|
533
511
|
}
|
|
534
512
|
return path.join(cwd, filePath);
|
|
535
513
|
}
|
|
536
514
|
function stripBasePath(filePath, basePath) {
|
|
537
|
-
|
|
538
|
-
return filePath
|
|
515
|
+
if (filePath.toLowerCase().startsWith(basePath.toLowerCase())) return filePath.slice(basePath.length);
|
|
516
|
+
return filePath;
|
|
539
517
|
}
|
|
540
518
|
function getBaseAndQueryParts(filePath) {
|
|
541
519
|
const directoryPath = path.dirname(filePath);
|
|
542
|
-
const [base, query] = splitAtFirstMatch(path.basename(filePath),
|
|
520
|
+
const [base, query] = splitAtFirstMatch(path.basename(filePath), QUERY_FRAGMENT_START_REGEX);
|
|
543
521
|
return [path.join(directoryPath, base), query];
|
|
544
522
|
}
|
|
545
523
|
function getBase(filePath) {
|
|
@@ -562,9 +540,10 @@ function addExtension(filePath, extension) {
|
|
|
562
540
|
const [base, query] = getBaseAndQueryParts(filePath);
|
|
563
541
|
return `${base}.${extension}${query ?? ""}`;
|
|
564
542
|
}
|
|
565
|
-
|
|
566
543
|
//#endregion
|
|
567
544
|
//#region src/lib/utilities/url.ts
|
|
545
|
+
const DRIVE_LETTER_REGEX = /^[a-z]:/i;
|
|
546
|
+
const FILE_PREFIX_REGEX = /^file:/i;
|
|
568
547
|
function safeDecodeURI(text) {
|
|
569
548
|
try {
|
|
570
549
|
return decodeURI(text);
|
|
@@ -581,9 +560,7 @@ function safeDecodeURI(text) {
|
|
|
581
560
|
function safeParseUrl(text) {
|
|
582
561
|
try {
|
|
583
562
|
const url = new URL(text);
|
|
584
|
-
|
|
585
|
-
const filePrefixPattern = /^file:/i;
|
|
586
|
-
if ((filePrefixPattern.test(url.protocol) || driveLetterPattern.test(url.protocol)) && !filePrefixPattern.test(text)) return;
|
|
563
|
+
if ((FILE_PREFIX_REGEX.test(url.protocol) || DRIVE_LETTER_REGEX.test(url.protocol)) && !FILE_PREFIX_REGEX.test(text)) return;
|
|
587
564
|
return url;
|
|
588
565
|
} catch {
|
|
589
566
|
return;
|
|
@@ -706,7 +683,6 @@ function urlToHostAndPort(url) {
|
|
|
706
683
|
function hostAndPortToUrl(host, port) {
|
|
707
684
|
return `${host}:${port}`;
|
|
708
685
|
}
|
|
709
|
-
|
|
710
686
|
//#endregion
|
|
711
687
|
//#region src/lib/utilities/media.ts
|
|
712
688
|
/**
|
|
@@ -720,16 +696,6 @@ async function getAnkiMediaFilenameExtension(pathOrUrl, fetchAdapter) {
|
|
|
720
696
|
if (extensionCandidate === void 0 || !MEDIA_SUPPORTED_EXTENSIONS.includes(extensionCandidate)) return;
|
|
721
697
|
return extensionCandidate;
|
|
722
698
|
}
|
|
723
|
-
function getLegibleFilename(pathOrUrl, maxLength) {
|
|
724
|
-
let legibleFilename;
|
|
725
|
-
const parsedUrl = safeParseUrl(pathOrUrl);
|
|
726
|
-
if (parsedUrl === void 0) {
|
|
727
|
-
const filePath = pathOrUrl;
|
|
728
|
-
legibleFilename = path.basename(filePath, path.extname(filePath));
|
|
729
|
-
} else legibleFilename = path.basename(parsedUrl.pathname, path.extname(parsedUrl.pathname));
|
|
730
|
-
if (legibleFilename === void 0) throw new Error(`Could not create a legible file name for: ${pathOrUrl}`);
|
|
731
|
-
return truncateOnWordBoundary(slugify(legibleFilename.trim()).replaceAll(/-+/g, "-"), maxLength, "...", "-");
|
|
732
|
-
}
|
|
733
699
|
/**
|
|
734
700
|
* Check if a media asset exists
|
|
735
701
|
*/
|
|
@@ -747,15 +713,13 @@ async function getSafeAnkiMediaFilename(absolutePathOrUrl, namespace, fileExtens
|
|
|
747
713
|
const assetHash = await getContentHash(absolutePathOrUrl, fileAdapter, fetchAdapter);
|
|
748
714
|
const resolvedFileExtension = fileExtension === void 0 ? "" : `.${fileExtension}`;
|
|
749
715
|
let safeFilename;
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
if (safeFilename.length > MEDIA_FILENAME_MAX_LENGTH) throw new Error(`Filename too long: ${safeFilename}`);
|
|
716
|
+
safeFilename = `${safeNamespace}-${assetHash}${resolvedFileExtension}`;
|
|
717
|
+
if (safeFilename.length > 120) throw new Error(`Filename too long: ${safeFilename}`);
|
|
753
718
|
return safeFilename;
|
|
754
719
|
}
|
|
755
720
|
async function getContentHash(absolutePathOrUrl, fileAdapter, fetchAdapter) {
|
|
756
721
|
return isUrl(absolutePathOrUrl) ? getUrlContentHash(absolutePathOrUrl, fetchAdapter) : getFileContentHash(absolutePathOrUrl, fileAdapter);
|
|
757
722
|
}
|
|
758
|
-
|
|
759
723
|
//#endregion
|
|
760
724
|
//#region src/lib/parse/rehype-mathjax-anki.ts
|
|
761
725
|
/**
|
|
@@ -792,7 +756,6 @@ const plugin$3 = function() {
|
|
|
792
756
|
});
|
|
793
757
|
};
|
|
794
758
|
};
|
|
795
|
-
|
|
796
759
|
//#endregion
|
|
797
760
|
//#region src/lib/parse/remark-conditional-breaks.ts
|
|
798
761
|
const plugin$2 = function() {
|
|
@@ -804,9 +767,9 @@ const plugin$2 = function() {
|
|
|
804
767
|
return tree;
|
|
805
768
|
};
|
|
806
769
|
};
|
|
807
|
-
|
|
808
770
|
//#endregion
|
|
809
771
|
//#region src/lib/parse/rehype-utilities.ts
|
|
772
|
+
const DIMENSION_CHARS_REGEX = /^[\dx]+$/;
|
|
810
773
|
const processor = unified().use(plugin$2).use(remarkRehype, { allowDangerousHtml: true }).use(rehypeRaw).use(plugin$3).use(rehypeShiki, {
|
|
811
774
|
defaultLanguage: "plaintext",
|
|
812
775
|
fallbackLanguage: "plaintext",
|
|
@@ -957,7 +920,7 @@ function parseDimensionsFromAltText(alt) {
|
|
|
957
920
|
};
|
|
958
921
|
}
|
|
959
922
|
function parseDimensions(dimensions) {
|
|
960
|
-
if (
|
|
923
|
+
if (!DIMENSION_CHARS_REGEX.test(dimensions)) return {
|
|
961
924
|
width: void 0,
|
|
962
925
|
height: void 0
|
|
963
926
|
};
|
|
@@ -1028,7 +991,6 @@ function addFirstChildToFirstDiv(tree, newChild) {
|
|
|
1028
991
|
});
|
|
1029
992
|
return tree;
|
|
1030
993
|
}
|
|
1031
|
-
|
|
1032
994
|
//#endregion
|
|
1033
995
|
//#region src/lib/model/model.ts
|
|
1034
996
|
const yankiModels = [
|
|
@@ -1093,7 +1055,6 @@ const yankiModels = [
|
|
|
1093
1055
|
];
|
|
1094
1056
|
const yankiModelNames = yankiModels.map((model) => model.modelName);
|
|
1095
1057
|
const legacyYankiModelNames = ["Yanki - Basic (and reversed card)"];
|
|
1096
|
-
|
|
1097
1058
|
//#endregion
|
|
1098
1059
|
//#region src/lib/utilities/anki-connect.ts
|
|
1099
1060
|
async function deleteNotes(client, notes, dryRun = false) {
|
|
@@ -1409,21 +1370,49 @@ async function uploadMediaForNote(client, note, dryRun, fileAdapter) {
|
|
|
1409
1370
|
}
|
|
1410
1371
|
return uploadedMedia;
|
|
1411
1372
|
}
|
|
1412
|
-
async function
|
|
1413
|
-
if (dryRun) return
|
|
1373
|
+
async function reconcileMedia(client, liveNotes, namespace, dryRun, fileAdapter) {
|
|
1374
|
+
if (dryRun) return {
|
|
1375
|
+
deleted: [],
|
|
1376
|
+
reuploaded: []
|
|
1377
|
+
};
|
|
1414
1378
|
const slugifiedNamespace = getSlugifiedNamespace(namespace);
|
|
1415
|
-
const
|
|
1379
|
+
const expectedMedia = [];
|
|
1416
1380
|
for (const note of liveNotes) {
|
|
1417
1381
|
const mediaPaths = extractMediaFromHtml(`${note.fields.Front}\n${note.fields.Back}\n${note.fields.Extra}`);
|
|
1418
|
-
for (const
|
|
1382
|
+
for (const media of mediaPaths) expectedMedia.push(media);
|
|
1419
1383
|
}
|
|
1384
|
+
const activeMediaFilenames = new Set(expectedMedia.map(({ filename }) => filename));
|
|
1420
1385
|
const allMediaInNamespace = await client.media.getMediaFilesNames({ pattern: `${slugifiedNamespace}-*` });
|
|
1421
1386
|
const deletedMediaFilenames = [];
|
|
1422
|
-
for (const remoteMediaFilename of allMediaInNamespace) if (!activeMediaFilenames.
|
|
1387
|
+
for (const remoteMediaFilename of allMediaInNamespace) if (!activeMediaFilenames.has(remoteMediaFilename)) {
|
|
1423
1388
|
await client.media.deleteMediaFile({ filename: remoteMediaFilename });
|
|
1424
1389
|
deletedMediaFilenames.push(remoteMediaFilename);
|
|
1425
1390
|
}
|
|
1426
|
-
|
|
1391
|
+
const reuploadedMediaFilenames = [];
|
|
1392
|
+
for (const { filename, originalSrc } of expectedMedia) if (!allMediaInNamespace.includes(filename)) try {
|
|
1393
|
+
if (isUrl(originalSrc)) {
|
|
1394
|
+
await client.media.storeMediaFile({
|
|
1395
|
+
deleteExisting: true,
|
|
1396
|
+
filename,
|
|
1397
|
+
url: originalSrc
|
|
1398
|
+
});
|
|
1399
|
+
reuploadedMediaFilenames.push(filename);
|
|
1400
|
+
} else if (fileAdapter === void 0) console.warn(`Could not re-upload local media file "${filename}": no file adapter provided`);
|
|
1401
|
+
else {
|
|
1402
|
+
await client.media.storeMediaFile({
|
|
1403
|
+
data: uint8ArrayToBase64(await fileAdapter.readFileBuffer(originalSrc)),
|
|
1404
|
+
deleteExisting: true,
|
|
1405
|
+
filename
|
|
1406
|
+
});
|
|
1407
|
+
reuploadedMediaFilenames.push(filename);
|
|
1408
|
+
}
|
|
1409
|
+
} catch (error) {
|
|
1410
|
+
console.warn(`Anki could not re-upload media file: "${filename}"\n${String(error)}`);
|
|
1411
|
+
}
|
|
1412
|
+
return {
|
|
1413
|
+
deleted: deletedMediaFilenames,
|
|
1414
|
+
reuploaded: reuploadedMediaFilenames
|
|
1415
|
+
};
|
|
1427
1416
|
}
|
|
1428
1417
|
/**
|
|
1429
1418
|
* Request permission to access Anki through Anki-Connect.
|
|
@@ -1447,7 +1436,6 @@ async function syncToAnkiWeb(client) {
|
|
|
1447
1436
|
console.warn("Could not sync to AnkiWeb.");
|
|
1448
1437
|
}
|
|
1449
1438
|
}
|
|
1450
|
-
|
|
1451
1439
|
//#endregion
|
|
1452
1440
|
//#region src/lib/actions/clean.ts
|
|
1453
1441
|
const defaultCleanOptions = { ...defaultGlobalOptions };
|
|
@@ -1467,9 +1455,9 @@ async function cleanNotes(options) {
|
|
|
1467
1455
|
const remoteNotes = await getRemoteNotes(client, sanitizedNamespace);
|
|
1468
1456
|
await deleteNotes(client, remoteNotes, dryRun);
|
|
1469
1457
|
const deletedDecks = await deleteOrphanedDecks(client, [], remoteNotes, dryRun);
|
|
1470
|
-
const deletedMedia = await
|
|
1458
|
+
const { deleted: deletedMedia } = await reconcileMedia(client, [], sanitizedNamespace, dryRun);
|
|
1471
1459
|
const isChanged = remoteNotes.length > 0 || deletedDecks.length > 0;
|
|
1472
|
-
if (!dryRun && ankiWeb && (isChanged ||
|
|
1460
|
+
if (!dryRun && ankiWeb && (isChanged || true)) await syncToAnkiWeb(client);
|
|
1473
1461
|
return {
|
|
1474
1462
|
ankiWeb,
|
|
1475
1463
|
deletedDecks,
|
|
@@ -1505,7 +1493,6 @@ function formatCleanResult(result, verbose = false) {
|
|
|
1505
1493
|
}
|
|
1506
1494
|
return lines.join("\n");
|
|
1507
1495
|
}
|
|
1508
|
-
|
|
1509
1496
|
//#endregion
|
|
1510
1497
|
//#region src/lib/actions/list.ts
|
|
1511
1498
|
const defaultListOptions = { ...defaultGlobalOptions };
|
|
@@ -1534,9 +1521,10 @@ function formatListResult(result) {
|
|
|
1534
1521
|
}
|
|
1535
1522
|
return lines.join("\n");
|
|
1536
1523
|
}
|
|
1537
|
-
|
|
1538
1524
|
//#endregion
|
|
1539
1525
|
//#region src/lib/utilities/filenames.ts
|
|
1526
|
+
const CLOZE_CONTENT_REGEX = /\{\{\w\d*\s?:{0,2}([^:}]+)/;
|
|
1527
|
+
const FILENAME_INCREMENT_SUFFIX_REGEX = /\s\(\d+\)$/;
|
|
1540
1528
|
function getSafeTitleForNote(note, manageFilenames, maxLength) {
|
|
1541
1529
|
if (manageFilenames === "off") throw new Error("manageFilenames must not be off");
|
|
1542
1530
|
switch (note.modelName) {
|
|
@@ -1553,7 +1541,7 @@ function getSafeTitleForNote(note, manageFilenames, maxLength) {
|
|
|
1553
1541
|
case "Yanki - Cloze": {
|
|
1554
1542
|
const cleanFront = getAllLinesOfHtmlAsPlainText(note.fields.Front);
|
|
1555
1543
|
const textBeforeCloze = emptyIsUndefined(cleanFront.split("{{").at(0) ?? "");
|
|
1556
|
-
const firstClozeText = emptyIsUndefined(
|
|
1544
|
+
const firstClozeText = emptyIsUndefined(CLOZE_CONTENT_REGEX.exec(cleanFront)?.at(1));
|
|
1557
1545
|
const textAfterCloze = emptyIsUndefined(cleanFront.split("}}").at(1)?.split("{{").at(0) ?? "");
|
|
1558
1546
|
switch (manageFilenames) {
|
|
1559
1547
|
case "prompt": return getSafeFilename(textBeforeCloze ?? textAfterCloze ?? firstClozeText ?? "", maxLength);
|
|
@@ -1576,8 +1564,7 @@ function getSafeFilename(text, maxLength) {
|
|
|
1576
1564
|
if (basicSafeFilename.length === 0) basicSafeFilename = MEDIA_DEFAULT_EMPTY_FILENAME;
|
|
1577
1565
|
basicSafeFilename = basicSafeFilename.normalize("NFC");
|
|
1578
1566
|
if (maxLength === void 0) return basicSafeFilename;
|
|
1579
|
-
|
|
1580
|
-
return truncateOnWordBoundary(basicSafeFilename, safeMaxLength);
|
|
1567
|
+
return truncateOnWordBoundary(basicSafeFilename, Math.min(maxLength, 108));
|
|
1581
1568
|
}
|
|
1582
1569
|
function getUniqueFilePath(filePath, existingFilenames) {
|
|
1583
1570
|
let newFilePath = appendFilenameIncrement(filePath, 1);
|
|
@@ -1600,7 +1587,7 @@ function auditUniqueFilePath(filePath, existingFilenames) {
|
|
|
1600
1587
|
*/
|
|
1601
1588
|
function stripFilenameIncrement(filename) {
|
|
1602
1589
|
const validExtension = filename.endsWith(".") || filename.endsWith(")") ? void 0 : path.extname(filename);
|
|
1603
|
-
const strippedBaseNameWithoutExtension = path.basename(filename, validExtension).replace(
|
|
1590
|
+
const strippedBaseNameWithoutExtension = path.basename(filename, validExtension).replace(FILENAME_INCREMENT_SUFFIX_REGEX, "");
|
|
1604
1591
|
return path.join(path.dirname(filename), `${strippedBaseNameWithoutExtension}${validExtension ?? ""}`);
|
|
1605
1592
|
}
|
|
1606
1593
|
function appendFilenameIncrement(filename, value) {
|
|
@@ -1611,9 +1598,9 @@ function appendFilenameIncrement(filename, value) {
|
|
|
1611
1598
|
function getTemporarilyUniqueFilePath(filePath) {
|
|
1612
1599
|
return `${filePath}-${nanoid(8)}`;
|
|
1613
1600
|
}
|
|
1614
|
-
|
|
1615
1601
|
//#endregion
|
|
1616
1602
|
//#region src/lib/utilities/resolve-link.ts
|
|
1603
|
+
const MD_EXTENSION_REGEX = /\.md$/;
|
|
1617
1604
|
const defaultResolveLinkOptions = {
|
|
1618
1605
|
allFilePaths: [],
|
|
1619
1606
|
basePath: void 0,
|
|
@@ -1722,13 +1709,13 @@ function resolveLink(filePathOrUrl, options) {
|
|
|
1722
1709
|
function resolveNameLink(name, cwd, allFilePaths) {
|
|
1723
1710
|
if (allFilePaths.length === 0) return;
|
|
1724
1711
|
const [base, query] = getBaseAndQueryParts(name);
|
|
1725
|
-
const baseWithoutMd = base.replace(
|
|
1712
|
+
const baseWithoutMd = base.replace(MD_EXTENSION_REGEX, "").toLowerCase();
|
|
1726
1713
|
const pathsToName = allFilePaths.filter((filePath) => {
|
|
1727
|
-
return filePath.replace(
|
|
1714
|
+
return filePath.replace(MD_EXTENSION_REGEX, "").toLowerCase().endsWith(baseWithoutMd);
|
|
1728
1715
|
});
|
|
1729
1716
|
if (pathsToName.length === 0) return;
|
|
1730
1717
|
if (pathsToName.length === 1) return `${pathsToName[0]}${query ?? ""}`;
|
|
1731
|
-
return `${
|
|
1718
|
+
return `${pathsToName.toSorted((a, b) => {
|
|
1732
1719
|
if (!base.endsWith(".md") || base.includes(path.sep)) {
|
|
1733
1720
|
const aHasCwd = a.startsWith(cwd);
|
|
1734
1721
|
if (aHasCwd !== b.startsWith(cwd)) return aHasCwd ? -1 : 1;
|
|
@@ -1758,7 +1745,6 @@ function createObsidianVaultLink(absolutePath, basePath, obsidianVault) {
|
|
|
1758
1745
|
const relativePath = stripBasePath(absolutePath, basePath);
|
|
1759
1746
|
return `obsidian://open?vault=${encodeURIComponent(obsidianVault)}&file=${encodeURIComponent(relativePath)}`;
|
|
1760
1747
|
}
|
|
1761
|
-
|
|
1762
1748
|
//#endregion
|
|
1763
1749
|
//#region src/lib/parse/remark-resolve-links.ts
|
|
1764
1750
|
const plugin$1 = function(options) {
|
|
@@ -1799,7 +1785,6 @@ const plugin$1 = function(options) {
|
|
|
1799
1785
|
});
|
|
1800
1786
|
};
|
|
1801
1787
|
};
|
|
1802
|
-
|
|
1803
1788
|
//#endregion
|
|
1804
1789
|
//#region src/lib/parse/wiki-basic/mdast-util-wiki-basic.ts
|
|
1805
1790
|
function wikiBasicFromMarkdown() {
|
|
@@ -1865,7 +1850,6 @@ function wikiBasicFromMarkdown() {
|
|
|
1865
1850
|
this.exit(token);
|
|
1866
1851
|
}
|
|
1867
1852
|
}
|
|
1868
|
-
|
|
1869
1853
|
//#endregion
|
|
1870
1854
|
//#region src/lib/parse/wiki-basic/micromark-extension-wiki-basic.ts
|
|
1871
1855
|
function wikiBasic() {
|
|
@@ -2067,7 +2051,6 @@ function wikiBasic() {
|
|
|
2067
2051
|
}
|
|
2068
2052
|
}
|
|
2069
2053
|
}
|
|
2070
|
-
|
|
2071
2054
|
//#endregion
|
|
2072
2055
|
//#region src/lib/parse/wiki-basic/remark-wiki-basic.ts
|
|
2073
2056
|
/**
|
|
@@ -2096,9 +2079,9 @@ const plugin = function() {
|
|
|
2096
2079
|
data.micromarkExtensions = [...data.micromarkExtensions ?? [], wikiBasic()];
|
|
2097
2080
|
data.fromMarkdownExtensions = [...data.fromMarkdownExtensions ?? [], wikiBasicFromMarkdown()];
|
|
2098
2081
|
};
|
|
2099
|
-
|
|
2100
2082
|
//#endregion
|
|
2101
2083
|
//#region src/lib/parse/remark-utilities.ts
|
|
2084
|
+
const CLOZE_NUMBER_PREFIX_REGEX = /^[(|]?(\d{1,2})(?:[\s).|]|$)(.*)$/;
|
|
2102
2085
|
const defaultAstFromMarkdownOptions = { ...defaultGlobalOptions };
|
|
2103
2086
|
async function getAstFromMarkdown(markdown, options) {
|
|
2104
2087
|
const { allFilePaths, basePath, cwd, obsidianVault, resolveUrls } = deepmerge(defaultAstFromMarkdownOptions, options ?? {});
|
|
@@ -2128,13 +2111,16 @@ function deleteFirstNodeOfType(tree, nodeType) {
|
|
|
2128
2111
|
return tree;
|
|
2129
2112
|
}
|
|
2130
2113
|
/**
|
|
2131
|
-
* Trims all leading spaces from the first text node and all trailing spaces
|
|
2132
|
-
* the last text node in an array of phrasing content nodes.
|
|
2114
|
+
* Trims all leading spaces from the first text node and all trailing spaces
|
|
2115
|
+
* from the last text node in an array of phrasing content nodes.
|
|
2133
2116
|
*
|
|
2134
2117
|
* This is useful in cases where surrounding white space in text nodes is not
|
|
2135
2118
|
* necessary and should be removed to clean up the content.
|
|
2119
|
+
*
|
|
2136
2120
|
* @param nodes - An array of phrasing content nodes.
|
|
2137
|
-
*
|
|
2121
|
+
*
|
|
2122
|
+
* @returns The modified array of nodes with leading and trailing spaces
|
|
2123
|
+
* trimmed.
|
|
2138
2124
|
*/
|
|
2139
2125
|
function trimLeadingAndTrailingSpaces(nodes) {
|
|
2140
2126
|
const firstNode = nodes.at(0);
|
|
@@ -2154,7 +2140,7 @@ function replaceDeleteNodesWithClozeMarkup(ast) {
|
|
|
2154
2140
|
visit(ast, "delete", (node, index, parent) => {
|
|
2155
2141
|
if (parent === void 0 || index === void 0 || !("children" in node) || node.children.length === 0) return CONTINUE;
|
|
2156
2142
|
if (node.children.length > 0 && isText(node.children[0])) {
|
|
2157
|
-
const result =
|
|
2143
|
+
const result = CLOZE_NUMBER_PREFIX_REGEX.exec(node.children[0].value);
|
|
2158
2144
|
if (result !== null && (node.children.length > 1 || (result.at(2) ?? "").length > 0)) {
|
|
2159
2145
|
const possibleClozeIndex = Number.parseInt(result.at(1) ?? "", 10);
|
|
2160
2146
|
if (!Number.isNaN(possibleClozeIndex)) {
|
|
@@ -2276,7 +2262,6 @@ function removeLastEmphasis(ast) {
|
|
|
2276
2262
|
return lastEmphasisNode;
|
|
2277
2263
|
}
|
|
2278
2264
|
}
|
|
2279
|
-
|
|
2280
2265
|
//#endregion
|
|
2281
2266
|
//#region src/lib/parse/parse.ts
|
|
2282
2267
|
const defaultGetNoteFromMarkdownOptions = {
|
|
@@ -2435,10 +2420,24 @@ async function getNoteFromMarkdown(markdown, options) {
|
|
|
2435
2420
|
tags: obsidianTagsToAnkiTags(frontmatter.tags)
|
|
2436
2421
|
};
|
|
2437
2422
|
}
|
|
2423
|
+
/**
|
|
2424
|
+
* Obsidian delimits nested tags with a `/`
|
|
2425
|
+
*
|
|
2426
|
+
* Anki delimits nested tags with `::`
|
|
2427
|
+
*
|
|
2428
|
+
* '' and `:` are not permitted in Obsidian tags
|
|
2429
|
+
*
|
|
2430
|
+
* Curiously, Obsidian allows just `/` and `this//////that` as valid tags,
|
|
2431
|
+
* though `/` tags are broken. Fixes
|
|
2432
|
+
* https://github.com/kitschpatrol/yanki-obsidian/issues/20
|
|
2433
|
+
*
|
|
2434
|
+
* We also force coercion to an array of strings (even though non-string tag
|
|
2435
|
+
* values shouldn't really be allowed in the first place) to handle edge cases
|
|
2436
|
+
* like https://github.com/kitschpatrol/yanki/issues/12
|
|
2437
|
+
*/
|
|
2438
2438
|
function obsidianTagsToAnkiTags(tags) {
|
|
2439
|
-
return (
|
|
2439
|
+
return (Array.isArray(tags) ? tags : tags === void 0 ? [] : [tags]).map((tag) => String(tag).replaceAll("/", "::"));
|
|
2440
2440
|
}
|
|
2441
|
-
|
|
2442
2441
|
//#endregion
|
|
2443
2442
|
//#region src/lib/actions/load-local-notes.ts
|
|
2444
2443
|
const defaultLoadOptions = { ...defaultGlobalOptions };
|
|
@@ -2507,7 +2506,6 @@ function getDeckNamesFromFilePaths(absoluteFilePaths, options) {
|
|
|
2507
2506
|
const offset = mode === "common-parent" ? lastSegmentHasFile ? 1 : 1 : lastSegmentHasFile ? 1 : 0;
|
|
2508
2507
|
return filePathSegments.map((pathSegments) => pathSegments.slice(commonPathSegments.length - offset).join("::"));
|
|
2509
2508
|
}
|
|
2510
|
-
|
|
2511
2509
|
//#endregion
|
|
2512
2510
|
//#region src/lib/actions/rename.ts
|
|
2513
2511
|
const defaultRenameNotesOptions = { ...defaultGlobalOptions };
|
|
@@ -2573,7 +2571,6 @@ async function renameFiles(allLocalFilePaths, options) {
|
|
|
2573
2571
|
})
|
|
2574
2572
|
};
|
|
2575
2573
|
}
|
|
2576
|
-
|
|
2577
2574
|
//#endregion
|
|
2578
2575
|
//#region src/lib/actions/style.ts
|
|
2579
2576
|
const defaultSetStyleOptions = {
|
|
@@ -2608,7 +2605,7 @@ async function setStyle(options) {
|
|
|
2608
2605
|
});
|
|
2609
2606
|
}
|
|
2610
2607
|
const isChanged = modelsReport.some((model) => model.action !== "unchanged");
|
|
2611
|
-
if (!dryRun && ankiWeb && (isChanged ||
|
|
2608
|
+
if (!dryRun && ankiWeb && (isChanged || true)) await syncToAnkiWeb(client);
|
|
2612
2609
|
return {
|
|
2613
2610
|
ankiWeb,
|
|
2614
2611
|
dryRun,
|
|
@@ -2633,9 +2630,9 @@ function formatSetStyleResult(result, verbose = false) {
|
|
|
2633
2630
|
}
|
|
2634
2631
|
return lines.join("\n");
|
|
2635
2632
|
}
|
|
2636
|
-
|
|
2637
2633
|
//#endregion
|
|
2638
2634
|
//#region src/lib/model/frontmatter.ts
|
|
2635
|
+
const NEWLINE_REGEX = /\r?\n/;
|
|
2639
2636
|
/**
|
|
2640
2637
|
* Update the noteId in the frontmatter of a markdown string.
|
|
2641
2638
|
*
|
|
@@ -2652,7 +2649,7 @@ function formatSetStyleResult(result, verbose = false) {
|
|
|
2652
2649
|
*/
|
|
2653
2650
|
async function setNoteIdInFrontmatter(markdown, noteId) {
|
|
2654
2651
|
const [frontmatterStart, frontmatterEnd] = getFrontmatterRange(markdown);
|
|
2655
|
-
const lines = markdown.split(
|
|
2652
|
+
const lines = markdown.split(NEWLINE_REGEX);
|
|
2656
2653
|
if (frontmatterStart === void 0 || frontmatterEnd === void 0) {
|
|
2657
2654
|
if (noteId === void 0) return markdown;
|
|
2658
2655
|
return [
|
|
@@ -2679,14 +2676,13 @@ async function setNoteIdInFrontmatter(markdown, noteId) {
|
|
|
2679
2676
|
].join("\n");
|
|
2680
2677
|
}
|
|
2681
2678
|
function getFrontmatterRange(markdown) {
|
|
2682
|
-
const lines = markdown.split(
|
|
2679
|
+
const lines = markdown.split(NEWLINE_REGEX);
|
|
2683
2680
|
if (!lines.join("").trim().startsWith("---")) return [void 0, void 0];
|
|
2684
2681
|
const frontmatterStart = lines.findIndex((line) => line.startsWith("---"));
|
|
2685
2682
|
const frontmatterEnd = lines.findIndex((line, index) => index > frontmatterStart && line.startsWith("---"));
|
|
2686
2683
|
if (frontmatterStart === -1 || frontmatterEnd === -1) return [void 0, void 0];
|
|
2687
2684
|
return [frontmatterStart, frontmatterEnd];
|
|
2688
2685
|
}
|
|
2689
|
-
|
|
2690
2686
|
//#endregion
|
|
2691
2687
|
//#region src/lib/actions/sync-notes.ts
|
|
2692
2688
|
const defaultSyncNotesOptions = { ...defaultGlobalOptions };
|
|
@@ -2712,6 +2708,7 @@ async function syncNotes(allLocalNotes, options) {
|
|
|
2712
2708
|
duration: performance.now() - startTime,
|
|
2713
2709
|
fixedDatabase: false,
|
|
2714
2710
|
namespace: sanitizedNamespace,
|
|
2711
|
+
reuploadedMedia: [],
|
|
2715
2712
|
synced: allLocalNotesCopy.map((note) => ({
|
|
2716
2713
|
action: "ankiUnreachable",
|
|
2717
2714
|
note
|
|
@@ -2781,12 +2778,13 @@ async function syncNotes(allLocalNotes, options) {
|
|
|
2781
2778
|
} catch {
|
|
2782
2779
|
fixedDatabase = true;
|
|
2783
2780
|
await client.graphical.guiCheckDatabase();
|
|
2781
|
+
await client.miscellaneous.reloadCollection();
|
|
2784
2782
|
}
|
|
2785
2783
|
}
|
|
2786
2784
|
}
|
|
2787
|
-
const deletedMedia = await
|
|
2785
|
+
const { deleted: deletedMedia, reuploaded: reuploadedMedia } = await reconcileMedia(client, liveNotes, sanitizedNamespace, dryRun, fileAdapter ?? void 0);
|
|
2788
2786
|
const isChanged = deletedDecks.length > 0 || synced.some((note) => note.action !== "unchanged");
|
|
2789
|
-
if (!dryRun && ankiWeb && (isChanged ||
|
|
2787
|
+
if (!dryRun && ankiWeb && (isChanged || true)) await syncToAnkiWeb(client);
|
|
2790
2788
|
return {
|
|
2791
2789
|
ankiWeb,
|
|
2792
2790
|
deletedDecks,
|
|
@@ -2795,6 +2793,7 @@ async function syncNotes(allLocalNotes, options) {
|
|
|
2795
2793
|
duration: performance.now() - startTime,
|
|
2796
2794
|
fixedDatabase,
|
|
2797
2795
|
namespace: sanitizedNamespace,
|
|
2796
|
+
reuploadedMedia,
|
|
2798
2797
|
synced
|
|
2799
2798
|
};
|
|
2800
2799
|
}
|
|
@@ -2807,7 +2806,6 @@ function selectNoteToKeep(duplicates, remoteNote) {
|
|
|
2807
2806
|
function findRemoteContentMatchId(localNote, remoteNotes, matchedIds) {
|
|
2808
2807
|
return remoteNotes.find((remoteNote) => remoteNote.noteId !== void 0 && !matchedIds.has(remoteNote.noteId) && areNotesEqual(localNote, remoteNote, false))?.noteId ?? void 0;
|
|
2809
2808
|
}
|
|
2810
|
-
|
|
2811
2809
|
//#endregion
|
|
2812
2810
|
//#region src/lib/actions/sync-files.ts
|
|
2813
2811
|
const defaultSyncFilesOptions = {
|
|
@@ -2866,7 +2864,7 @@ async function syncFiles(allLocalFilePaths, options) {
|
|
|
2866
2864
|
for (const [index, renamedNote] of renamedLocalNotes.entries()) renamedNote.note = reloadedLocalNotes[index].note;
|
|
2867
2865
|
}
|
|
2868
2866
|
}
|
|
2869
|
-
const { deletedDecks, deletedMedia, fixedDatabase, synced } = await syncNotes(renamedLocalNotes.map((note) => note.note), {
|
|
2867
|
+
const { deletedDecks, deletedMedia, fixedDatabase, reuploadedMedia, synced } = await syncNotes(renamedLocalNotes.map((note) => note.note), {
|
|
2870
2868
|
ankiConnectOptions,
|
|
2871
2869
|
ankiWeb,
|
|
2872
2870
|
checkDatabase,
|
|
@@ -2899,6 +2897,7 @@ async function syncFiles(allLocalFilePaths, options) {
|
|
|
2899
2897
|
duration: performance.now() - startTime,
|
|
2900
2898
|
fixedDatabase,
|
|
2901
2899
|
namespace,
|
|
2900
|
+
reuploadedMedia,
|
|
2902
2901
|
synced: syncedAndSorted
|
|
2903
2902
|
};
|
|
2904
2903
|
}
|
|
@@ -2919,6 +2918,7 @@ function formatSyncFilesResult(result, verbose = false) {
|
|
|
2919
2918
|
if (totalRenamed > 0) lines.push("", `Local notes renamed: ${totalRenamed}`);
|
|
2920
2919
|
if (result.deletedDecks.length > 0) lines.push("", `Decks pruned: ${result.deletedDecks.length}`);
|
|
2921
2920
|
if (result.deletedMedia.length > 0) lines.push("", `Media assets deleted: ${result.deletedMedia.length}`);
|
|
2921
|
+
if (result.reuploadedMedia.length > 0) lines.push("", `Media assets re-uploaded: ${result.reuploadedMedia.length}`);
|
|
2922
2922
|
if (!result.dryRun) lines.push("", `Database automatically fixed: ${result.fixedDatabase ? "Yes" : "No"}`);
|
|
2923
2923
|
lines.push("", result.dryRun ? "Sync Plan Details:" : "Sync Details:");
|
|
2924
2924
|
for (const { action, filePath, note } of synced) if (filePath === void 0) lines.push(` Note ID ${note.noteId} ${capitalize(action)} (From Anki)`);
|
|
@@ -2926,6 +2926,5 @@ function formatSyncFilesResult(result, verbose = false) {
|
|
|
2926
2926
|
}
|
|
2927
2927
|
return lines.join("\n");
|
|
2928
2928
|
}
|
|
2929
|
-
|
|
2930
2929
|
//#endregion
|
|
2931
|
-
export { cleanNotes, defaultCleanOptions, defaultGetNoteFromMarkdownOptions, defaultGetStyleOptions, defaultListOptions, defaultRenameFilesOptions, defaultSetStyleOptions, defaultSyncFilesOptions, defaultSyncNotesOptions, formatCleanResult, formatListResult, formatSetStyleResult, formatSyncFilesResult, getNoteFromMarkdown, getStyle, hostAndPortToUrl, listNotes, renameFiles, setStyle, syncFiles, syncNotes, urlToHostAndPort };
|
|
2930
|
+
export { cleanNotes, defaultCleanOptions, defaultGetNoteFromMarkdownOptions, defaultGetStyleOptions, defaultListOptions, defaultRenameFilesOptions, defaultSetStyleOptions, defaultSyncFilesOptions, defaultSyncNotesOptions, formatCleanResult, formatListResult, formatSetStyleResult, formatSyncFilesResult, getNoteFromMarkdown, getStyle, hostAndPortToUrl, listNotes, renameFiles, setStyle, syncFiles, syncNotes, urlToHostAndPort };
|