@luna_ui/astra 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/scripts/loader.js +1 -0
- package/assets/scripts/sidebar.js +29 -0
- package/assets/scripts/theme.js +25 -0
- package/assets/scripts/toc.js +41 -0
- package/assets/scripts/wc-loader.js +28 -0
- package/assets/styles/main.css +592 -0
- package/assets/styles/markdown.css +74 -0
- package/bin/astra.mjs +2 -0
- package/dist/abap-4DRkXMJR.js +1 -0
- package/dist/actionscript-3-h0lqWyGv.js +1 -0
- package/dist/ada-B4-fQi6R.js +1 -0
- package/dist/andromeeda-DnfMDO_Y.js +1 -0
- package/dist/angular-html-CgTXg5Z6.js +1 -0
- package/dist/angular-html-d-0S-zLW.js +1 -0
- package/dist/angular-ts-CHhlLyrZ.js +1 -0
- package/dist/apache-CjmdmrNd.js +1 -0
- package/dist/apex-BQCmYrYs.js +1 -0
- package/dist/apl-BS7gisDH.js +1 -0
- package/dist/applescript-DmuENMYc.js +1 -0
- package/dist/ara-DSUvK8h0.js +1 -0
- package/dist/asciidoc-DtiaLqcg.js +1 -0
- package/dist/asm-vw4b_i9u.js +1 -0
- package/dist/astro-Cy9wZvxd.js +1 -0
- package/dist/aurora-x-LGMiQelM.js +1 -0
- package/dist/awk-CN3ZPsCY.js +1 -0
- package/dist/ayu-dark-8Z6NAin8.js +1 -0
- package/dist/ballerina-B4Fqjiam.js +1 -0
- package/dist/bat-DQvEQ0oY.js +1 -0
- package/dist/beancount-aKEgevoR.js +1 -0
- package/dist/berry-BOM3vuC7.js +1 -0
- package/dist/bibtex-CMp7yDWH.js +1 -0
- package/dist/bicep-BebJh39J.js +1 -0
- package/dist/blade-j7hZXB64.js +1 -0
- package/dist/bsl-DgkNvZZe.js +1 -0
- package/dist/c-87QmhLAV.js +1 -0
- package/dist/c-wmv-cFo9.js +1 -0
- package/dist/cadence-Cgd84A_0.js +1 -0
- package/dist/cairo-Dcrxjodq.js +1 -0
- package/dist/catppuccin-frappe-BpQ1lU1w.js +1 -0
- package/dist/catppuccin-latte-Cp48KXmS.js +1 -0
- package/dist/catppuccin-macchiato-Bpp0X-sF.js +1 -0
- package/dist/catppuccin-mocha-C2yaN9uG.js +1 -0
- package/dist/chunk-C91IYPK5.js +1 -0
- package/dist/clarity-pyieEWy3.js +1 -0
- package/dist/cli-p_7F_GeF.js +435 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +2 -0
- package/dist/clojure-D2WDer8_.js +1 -0
- package/dist/cmake-CK9_JPOP.js +1 -0
- package/dist/cmake-Cdf80Fup.js +1 -0
- package/dist/cobol-DHzxMIfc.js +1 -0
- package/dist/codeowners-b6uQw4Jm.js +1 -0
- package/dist/codeql-04zjaa8t.js +1 -0
- package/dist/coffee-DCpHmt37.js +1 -0
- package/dist/common-lisp-DJpZd9nc.js +1 -0
- package/dist/coq-CqrhdPuQ.js +1 -0
- package/dist/cpp-DJwL1bmY.js +1 -0
- package/dist/cpp-bXmEu2fj.js +1 -0
- package/dist/crystal-QrrnajAZ.js +1 -0
- package/dist/csharp-CCkaXaBl.js +1 -0
- package/dist/csharp-DF2IH6Io.js +1 -0
- package/dist/css-B782H9QQ.js +1 -0
- package/dist/css-C3GPUY5d.js +1 -0
- package/dist/csv--xFxOZnZ.js +1 -0
- package/dist/csv-DwE9d_vs.js +1 -0
- package/dist/cue-Boddp5ou.js +1 -0
- package/dist/cypher-CJ-77cgQ.js +1 -0
- package/dist/d-D0I1dM2T.js +1 -0
- package/dist/dark-plus-BU3QBz56.js +1 -0
- package/dist/dart-BJ8cdcjB.js +1 -0
- package/dist/dax-flGRwOMk.js +1 -0
- package/dist/desktop-CKJBoUCX.js +1 -0
- package/dist/diff-D0R8227a.js +1 -0
- package/dist/diff-JYRIHEgk.js +1 -0
- package/dist/dist-Bx67DuWk.js +12 -0
- package/dist/docker-CaPT0nh2.js +1 -0
- package/dist/dotenv-Cl6daHtc.js +1 -0
- package/dist/dracula-Cw9IWaSN.js +1 -0
- package/dist/dracula-soft-BqgovASh.js +1 -0
- package/dist/dream-maker-B43zqZ9J.js +1 -0
- package/dist/edge-Ceyc3rVg.js +1 -0
- package/dist/elixir-Gvbortfm.js +1 -0
- package/dist/elm-DjLt6yAp.js +1 -0
- package/dist/emacs-lisp-D80T64tz.js +1 -0
- package/dist/erb-CXoLzZh0.js +1 -0
- package/dist/erlang-BogW8nFy.js +1 -0
- package/dist/everforest-dark-ogfM6sNR.js +1 -0
- package/dist/everforest-light-D6fPa5N4.js +1 -0
- package/dist/fennel-B2Zn_N77.js +1 -0
- package/dist/fish-COSG8aRZ.js +1 -0
- package/dist/fluent-D8gvH-iE.js +1 -0
- package/dist/fortran-fixed-form-D7puVArr.js +1 -0
- package/dist/fortran-free-form-AdpHkc55.js +1 -0
- package/dist/fortran-free-form-B-rZjaen.js +1 -0
- package/dist/fsharp-CFCe56st.js +1 -0
- package/dist/gdresource-CkuXen0_.js +1 -0
- package/dist/gdscript-B2-VFJAr.js +1 -0
- package/dist/gdscript-BgjbTSgo.js +1 -0
- package/dist/gdshader-CW5dzS3z.js +1 -0
- package/dist/gdshader-WTsPyo0L.js +1 -0
- package/dist/genie-C4I2dHj5.js +1 -0
- package/dist/gherkin-BqdToCRC.js +1 -0
- package/dist/git-commit-CtQHrkj3.js +1 -0
- package/dist/git-rebase-DZ7KYW5J.js +1 -0
- package/dist/github-dark-Dhw01-x_.js +1 -0
- package/dist/github-dark-default-DWGCwC0m.js +1 -0
- package/dist/github-dark-dimmed-euk1ld1c.js +1 -0
- package/dist/github-dark-high-contrast-BEHPWBGW.js +1 -0
- package/dist/github-light-DIH3R0Pp.js +1 -0
- package/dist/github-light-default-joSRi-P5.js +1 -0
- package/dist/github-light-high-contrast-BeJxmE-G.js +1 -0
- package/dist/gleam-ybdQKAnL.js +1 -0
- package/dist/glimmer-js-C7QvVTe0.js +1 -0
- package/dist/glimmer-ts-BtNjgeMZ.js +1 -0
- package/dist/glsl-Bl2rgVkF.js +1 -0
- package/dist/glsl-DK2LO5Ai.js +1 -0
- package/dist/gnuplot-DuihR3pv.js +1 -0
- package/dist/go-CafkwwfM.js +1 -0
- package/dist/go-DJYwhvJ3.js +1 -0
- package/dist/graphql-CWPKPXc6.js +1 -0
- package/dist/graphql-t4luSV8n.js +1 -0
- package/dist/groovy-ge4S-gf0.js +1 -0
- package/dist/gruvbox-dark-hard-Bn5BzspA.js +1 -0
- package/dist/gruvbox-dark-medium-c5nt2GVa.js +1 -0
- package/dist/gruvbox-dark-soft-CDQxnYqs.js +1 -0
- package/dist/gruvbox-light-hard-CYnE9iXs.js +1 -0
- package/dist/gruvbox-light-medium-Bib7X0I1.js +1 -0
- package/dist/gruvbox-light-soft-uNsFDxv8.js +1 -0
- package/dist/hack-CuBlwJsx.js +1 -0
- package/dist/haml-B8bmXhBu.js +1 -0
- package/dist/haml-DwxcKQb3.js +1 -0
- package/dist/handlebars-0vCF10JB.js +1 -0
- package/dist/haskell-BNCSquDI.js +1 -0
- package/dist/haxe-DCnwBaYO.js +1 -0
- package/dist/haxe-G7UefS7i.js +1 -0
- package/dist/hcl-BFNNInwi.js +1 -0
- package/dist/hjson-Dvt_015e.js +1 -0
- package/dist/hlsl-B8f0y-cZ.js +1 -0
- package/dist/hlsl-BjMfZaun.js +1 -0
- package/dist/houston-pqjsYGpQ.js +1 -0
- package/dist/html-CMGi1hjb.js +1 -0
- package/dist/html-DmY_wHSX.js +1 -0
- package/dist/html-derivative-BqkAHwxw.js +1 -0
- package/dist/html-derivative-GfNAXNvy.js +1 -0
- package/dist/http-DSNmXPmD.js +1 -0
- package/dist/hurl-CkrB6eSq.js +1 -0
- package/dist/hxml-BqY1UbIj.js +1 -0
- package/dist/hy-D60OpFH3.js +1 -0
- package/dist/imba-ebgbSwGz.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/ini-BYj6RmKB.js +1 -0
- package/dist/java-Bi_Y8Bsw.js +1 -0
- package/dist/java-CaqIw_Rf.js +1 -0
- package/dist/javascript-CGOaYlKm.js +1 -0
- package/dist/javascript-u1vot5QS.js +1 -0
- package/dist/jinja-D4fgt2Cy.js +1 -0
- package/dist/jison-BupbRSBu.js +1 -0
- package/dist/json-DgrvHR2v.js +1 -0
- package/dist/json-IYFshA56.js +1 -0
- package/dist/json5-aE0VX-pu.js +1 -0
- package/dist/jsonc-CqRuzQuA.js +1 -0
- package/dist/jsonl-SOOkn7Sw.js +1 -0
- package/dist/jsonnet-DIfu6phf.js +1 -0
- package/dist/jssm-hV0pDTDQ.js +1 -0
- package/dist/jsx-C0SH37ly.js +1 -0
- package/dist/jsx-CaJZmrVS.js +1 -0
- package/dist/julia-BLM7eaiW.js +1 -0
- package/dist/kanagawa-dragon-CAUDhvmI.js +1 -0
- package/dist/kanagawa-lotus-Cw3RzpRs.js +1 -0
- package/dist/kanagawa-wave-CTd7QKuU.js +1 -0
- package/dist/kdl-3xrhyk5W.js +1 -0
- package/dist/kotlin-BHOgCkyf.js +1 -0
- package/dist/kusto-BM-oAYAb.js +1 -0
- package/dist/laserwave-CCurWjd8.js +1 -0
- package/dist/latex-Bvx9pcFA.js +1 -0
- package/dist/lean-D8IaoOiI.js +1 -0
- package/dist/less-CN_5Yw0a.js +1 -0
- package/dist/less-DV0aDiBa.js +1 -0
- package/dist/light-plus-D4kPJKWS.js +1 -0
- package/dist/liquid-sRlgGzf6.js +1 -0
- package/dist/llvm-CsnYorVw.js +1 -0
- package/dist/log-C_SMGL8n.js +1 -0
- package/dist/logo-CVzLzsP_.js +1 -0
- package/dist/lua-DOWHA_3v.js +1 -0
- package/dist/lua-DeAY9K4r.js +1 -0
- package/dist/luau-CzkleyTz.js +1 -0
- package/dist/make-B6JGcnpP.js +1 -0
- package/dist/markdown-CdC2l-IK.js +1 -0
- package/dist/markdown-DreHh8L0.js +1 -0
- package/dist/marko-BjGFov7R.js +1 -0
- package/dist/material-theme-DkzQiX4t.js +1 -0
- package/dist/material-theme-darker-DrS-0NxT.js +1 -0
- package/dist/material-theme-lighter-BwuKMVjk.js +1 -0
- package/dist/material-theme-ocean-9ZbppIGx.js +1 -0
- package/dist/material-theme-palenight-D-DAK9fg.js +1 -0
- package/dist/matlab-Dp2q9iPw.js +1 -0
- package/dist/mdc-CsADJoGH.js +1 -0
- package/dist/mdx-CLUcPDI-.js +1 -0
- package/dist/mermaid-DNEhkuYX.js +1 -0
- package/dist/min-dark-xNYg2MGl.js +1 -0
- package/dist/min-light-DUAH99TS.js +1 -0
- package/dist/mipsasm-DXT2tkbK.js +1 -0
- package/dist/mojo-COYWEKP9.js +1 -0
- package/dist/monokai-B-RSj3wm.js +1 -0
- package/dist/move-5RTvQ45f.js +1 -0
- package/dist/narrat-DuS5ChKX.js +1 -0
- package/dist/nextflow-dyA9sMUO.js +1 -0
- package/dist/nginx-dAQvnBBp.js +1 -0
- package/dist/night-owl-CKeRuZRJ.js +1 -0
- package/dist/nim-BUtsSKRR.js +1 -0
- package/dist/nix-BeX24OEZ.js +1 -0
- package/dist/nord-0qyAcvdD.js +1 -0
- package/dist/nushell-Du0Lbu-r.js +1 -0
- package/dist/objective-c-BDvn_PS7.js +1 -0
- package/dist/objective-cpp-BYVs_lNu.js +1 -0
- package/dist/ocaml-Buvqlhqm.js +1 -0
- package/dist/one-dark-pro-D9S4sFLi.js +1 -0
- package/dist/one-light-Bk0kqEFW.js +1 -0
- package/dist/openscad--GnqXwNf.js +1 -0
- package/dist/pascal-C9zC3WeM.js +1 -0
- package/dist/perl-BILVogJG.js +1 -0
- package/dist/php-Cmx4iIMY.js +1 -0
- package/dist/php-yQ5AQvPM.js +1 -0
- package/dist/pkl-D1JQCIjP.js +1 -0
- package/dist/plastic-5fWCgqtU.js +1 -0
- package/dist/plsql-DUnoIwFl.js +1 -0
- package/dist/po-C-FGioO2.js +1 -0
- package/dist/poimandres-DdrZqqhm.js +1 -0
- package/dist/polar-Chc9BaLJ.js +1 -0
- package/dist/postcss-Bnn_pAAb.js +1 -0
- package/dist/postcss-WBt22Dkz.js +1 -0
- package/dist/powerquery-DZe8qDfI.js +1 -0
- package/dist/powershell-B4WW0YF3.js +1 -0
- package/dist/prisma-Db0IWuIE.js +1 -0
- package/dist/prolog-CzOU4qVi.js +1 -0
- package/dist/proto-CnyvvDd1.js +1 -0
- package/dist/pug-XN1V80yZ.js +1 -0
- package/dist/puppet-Dts2NQhA.js +1 -0
- package/dist/purescript-pfjd9EKT.js +1 -0
- package/dist/python-CgkbEA7j.js +1 -0
- package/dist/python-DA5VdOjf.js +1 -0
- package/dist/qml-BUG6hecM.js +1 -0
- package/dist/qmldir-Btbp-SnF.js +1 -0
- package/dist/qss-NWGc7ENo.js +1 -0
- package/dist/r-ChmFPS6K.js +1 -0
- package/dist/r-DqnCeWey.js +1 -0
- package/dist/racket-BWT8W4iy.js +1 -0
- package/dist/raku-C4oZa0Mf.js +1 -0
- package/dist/razor-CwlmIXoZ.js +1 -0
- package/dist/red-CqUJW53F.js +1 -0
- package/dist/reg-TtWpd5d3.js +1 -0
- package/dist/regexp-BQ5u4y-4.js +1 -0
- package/dist/regexp-j35UYMaY.js +1 -0
- package/dist/rel-DIWiXQ72.js +1 -0
- package/dist/riscv-Dv-Wobwn.js +1 -0
- package/dist/rose-pine-DAkiUkt-.js +1 -0
- package/dist/rose-pine-dawn-C4hAh4xD.js +1 -0
- package/dist/rose-pine-moon-DLFvs1dY.js +1 -0
- package/dist/rosmsg-Dpq0E4Hf.js +1 -0
- package/dist/rst-ByEkqHpT.js +1 -0
- package/dist/ruby-BN2fsjPD.js +1 -0
- package/dist/ruby-CWJ7HOvL.js +1 -0
- package/dist/rust-DXMWrjIS.js +1 -0
- package/dist/sas-CFRgJxyH.js +1 -0
- package/dist/sass-Dkc8z2U_.js +1 -0
- package/dist/scala-Ccn4twDa.js +1 -0
- package/dist/scheme-ByS7Ufpv.js +1 -0
- package/dist/scss-B2HK8b_u.js +1 -0
- package/dist/scss-BtLJrQgO.js +1 -0
- package/dist/sdbl-CDZiUoGO.js +1 -0
- package/dist/sdbl-DWnpuOvU.js +1 -0
- package/dist/shaderlab-Bp6E8wU4.js +1 -0
- package/dist/shellscript-4OkiSN-h.js +1 -0
- package/dist/shellscript-C1F1sLPK.js +1 -0
- package/dist/shellsession-2D4oxU8o.js +1 -0
- package/dist/slack-dark-pkdzBKrI.js +1 -0
- package/dist/slack-ochin-CoDz9ko7.js +1 -0
- package/dist/smalltalk-Kx-oUZNN.js +1 -0
- package/dist/snazzy-light-CIl1jIJ6.js +1 -0
- package/dist/solarized-dark-DPAo1TQR.js +1 -0
- package/dist/solarized-light-ZikhFtV6.js +1 -0
- package/dist/solidity-B6e3Bet0.js +1 -0
- package/dist/soy-DzHQLVPv.js +1 -0
- package/dist/sparql-2EdL4sGD.js +1 -0
- package/dist/splunk-4bEiKJQJ.js +1 -0
- package/dist/sql-0D3m0WTO.js +1 -0
- package/dist/sql-COwkzdcc.js +1 -0
- package/dist/ssh-config-DNAYfpA0.js +1 -0
- package/dist/stata-Dc9CpOk_.js +1 -0
- package/dist/stylus-CU84eN7i.js +1 -0
- package/dist/stylus-DMy4Ib1_.js +1 -0
- package/dist/svelte-Dt1uHIEv.js +1 -0
- package/dist/swift-CAb5ZoTR.js +1 -0
- package/dist/synthwave-84-CGqBU60R.js +1 -0
- package/dist/system-verilog-D1zBPwIR.js +1 -0
- package/dist/systemd-CB-JNMU1.js +1 -0
- package/dist/talonscript-C44n0Z1I.js +1 -0
- package/dist/tasl-DFJ5DyKD.js +1 -0
- package/dist/tcl-Cn_vgD48.js +1 -0
- package/dist/templ-D6cgJQ93.js +1 -0
- package/dist/terraform-C0GDw5Yx.js +1 -0
- package/dist/tex--evcwRaO.js +1 -0
- package/dist/tex-DI7k1i5h.js +1 -0
- package/dist/tokyo-night-C9P-hOUs.js +1 -0
- package/dist/toml-DygwKWiG.js +1 -0
- package/dist/ts-tags-BMyJSDRW.js +1 -0
- package/dist/tsv-D1hoG1dc.js +1 -0
- package/dist/tsx-FaowoCNQ.js +1 -0
- package/dist/tsx-MSa_uj0f.js +1 -0
- package/dist/turtle-DTVOEVyA.js +1 -0
- package/dist/turtle-bFO7CguV.js +1 -0
- package/dist/twig-B5SDCRaG.js +1 -0
- package/dist/typescript-B56_2R5P.js +1 -0
- package/dist/typescript-C9arBFtN.js +1 -0
- package/dist/typespec-Xs3M-L3I.js +1 -0
- package/dist/typst-aZyRVVhS.js +1 -0
- package/dist/v-U-avXm9a.js +1 -0
- package/dist/vala-C9DtP-IN.js +1 -0
- package/dist/vb-BiBM73OI.js +1 -0
- package/dist/verilog-2KJ23lmQ.js +1 -0
- package/dist/vesper-QUZLl-KU.js +1 -0
- package/dist/vhdl-BM_G-wqS.js +1 -0
- package/dist/viml-D9Wfp7kC.js +1 -0
- package/dist/vitesse-black-DaRTa0zW.js +1 -0
- package/dist/vitesse-dark-CK3JAXrr.js +1 -0
- package/dist/vitesse-light-irHM-N9L.js +1 -0
- package/dist/vue-8Qq1O0KV.js +1 -0
- package/dist/vue-BhuSGEdZ.js +1 -0
- package/dist/vue-html-CjTCw3jB.js +1 -0
- package/dist/vue-vine-B8fLyaUV.js +1 -0
- package/dist/vyper-JxCydtCC.js +1 -0
- package/dist/wasm-CEYKmQJi.js +1 -0
- package/dist/wasm-CeIBK_Mv.js +1 -0
- package/dist/wenyan-C6IMLxb9.js +1 -0
- package/dist/wgsl-DcM0fO4C.js +1 -0
- package/dist/wikitext-CicqHi8l.js +1 -0
- package/dist/wit-DXZYezGF.js +1 -0
- package/dist/wolfram-LDaaEKo9.js +1 -0
- package/dist/worker.d.ts +1 -0
- package/dist/worker.js +188 -0
- package/dist/wrapper-DlUP6cCH.js +6 -0
- package/dist/xml-D4S4eOp-.js +1 -0
- package/dist/xml-DI-vKJVc.js +1 -0
- package/dist/xsl-BBtAEwui.js +1 -0
- package/dist/yaml-BYGefRa5.js +1 -0
- package/dist/yaml-ryeB2S83.js +1 -0
- package/dist/zenscript-C6nOigZg.js +1 -0
- package/dist/zig-BZAkN6e6.js +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(){function setupTrigger(e,t,n){if(t==="load")document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>n(),{once:true}):n();else if(t==="idle")requestIdleCallback(()=>n());else if(t[0]==="v")new IntersectionObserver((r,o)=>{r.some(i=>i.isIntersecting)&&(o.disconnect(),n())},{rootMargin:"50px"}).observe(e);else if(t[0]==="m"){const r=matchMedia(t.slice(6)),o=()=>{r.matches&&(r.removeEventListener("change",o),n())};r.matches?n():r.addEventListener("change",o)}}function onReady(e){document.readyState==="loading"?document.addEventListener("DOMContentLoaded",e,{once:true}):e()}function observeAdditions(e,t){new MutationObserver(n=>n.forEach(r=>r.addedNodes.forEach(o=>{o.nodeType===1&&e(o)&&t(o)}))).observe(document.body??document.documentElement,{childList:true,subtree:true})}function createLoadedTracker(){const e=new Set;return{loaded:e,unload:t=>e.delete(t),clear:()=>e.clear()}}const d=document,w=window,S={},{loaded,unload,clear}=createLoadedTracker(),parseState=async e=>{const t=e.getAttribute("luna:state");if(t){if(t[0]==="#")return JSON.parse(d.getElementById(t.slice(1))?.textContent??"null");try{return JSON.parse(t)}catch{}}},hydrate=async e=>{const t=e.getAttribute("luna:id");if(!t||loaded.has(t))return;loaded.add(t);const n=e.getAttribute("luna:url");if(!n)return;S[t]=await parseState(e);const r=await import(n),o=e.getAttribute("luna:export");(o?r[o]:r.hydrate??r.default)?.(e,S[t],t)},setup=e=>{setupTrigger(e,e.getAttribute("luna:client-trigger")??"load",()=>hydrate(e))},scan=()=>{d.querySelectorAll("[luna\\:id]").forEach(setup)};d.querySelectorAll('script[type="luna/json"]').forEach(e=>{e.id&&(S[e.id]=JSON.parse(e.textContent??"{}"))});onReady(scan);observeAdditions(e=>e.hasAttribute("luna:id"),setup);const unloadAll=(e=d.body)=>{e.querySelectorAll("[luna\\:id]").forEach(t=>{const n=t.getAttribute("luna:id");n&&loaded.delete(n)})};w.__LUNA_STATE__=S;w.__LUNA_HYDRATE__=hydrate;w.__LUNA_SCAN__=scan;w.__LUNA_UNLOAD__=unload;w.__LUNA_UNLOAD_ALL__=unloadAll;w.__LUNA_CLEAR_LOADED__=clear})();
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
(function(){
|
|
2
|
+
var STORAGE_KEY = 'astra-sidebar-state';
|
|
3
|
+
function loadState() {
|
|
4
|
+
try { return JSON.parse(localStorage.getItem(STORAGE_KEY)) || {}; } catch { return {}; }
|
|
5
|
+
}
|
|
6
|
+
function saveState(state) {
|
|
7
|
+
try { localStorage.setItem(STORAGE_KEY, JSON.stringify(state)); } catch {}
|
|
8
|
+
}
|
|
9
|
+
function initSidebar() {
|
|
10
|
+
var state = loadState();
|
|
11
|
+
document.querySelectorAll('[data-sidebar-group]').forEach(function(el) {
|
|
12
|
+
var key = el.dataset.sidebarGroup;
|
|
13
|
+
if (key && state[key] !== undefined) {
|
|
14
|
+
el.open = state[key];
|
|
15
|
+
}
|
|
16
|
+
el.addEventListener('toggle', function() {
|
|
17
|
+
var s = loadState();
|
|
18
|
+
s[key] = el.open;
|
|
19
|
+
saveState(s);
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
if (document.readyState === 'loading') {
|
|
24
|
+
document.addEventListener('DOMContentLoaded', initSidebar);
|
|
25
|
+
} else {
|
|
26
|
+
initSidebar();
|
|
27
|
+
}
|
|
28
|
+
window.__ASTRA_INIT_SIDEBAR__ = initSidebar;
|
|
29
|
+
})();
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
(function(){
|
|
2
|
+
var theme = localStorage.getItem('theme');
|
|
3
|
+
var prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
4
|
+
var isDark = theme === 'dark' || (theme !== 'light' && prefersDark);
|
|
5
|
+
if (isDark) {
|
|
6
|
+
document.documentElement.classList.add('dark');
|
|
7
|
+
document.documentElement.classList.remove('light');
|
|
8
|
+
} else {
|
|
9
|
+
document.documentElement.classList.add('light');
|
|
10
|
+
document.documentElement.classList.remove('dark');
|
|
11
|
+
}
|
|
12
|
+
window.toggleTheme = function() {
|
|
13
|
+
var html = document.documentElement;
|
|
14
|
+
var wasDark = html.classList.contains('dark');
|
|
15
|
+
if (wasDark) {
|
|
16
|
+
html.classList.remove('dark');
|
|
17
|
+
html.classList.add('light');
|
|
18
|
+
localStorage.setItem('theme', 'light');
|
|
19
|
+
} else {
|
|
20
|
+
html.classList.add('dark');
|
|
21
|
+
html.classList.remove('light');
|
|
22
|
+
localStorage.setItem('theme', 'dark');
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
})();
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
(function(){
|
|
2
|
+
var observer = null;
|
|
3
|
+
var tocLinks = [];
|
|
4
|
+
var headings = [];
|
|
5
|
+
function initTocSpy() {
|
|
6
|
+
if (observer) observer.disconnect();
|
|
7
|
+
tocLinks = Array.from(document.querySelectorAll('.toc-item a'));
|
|
8
|
+
headings = tocLinks.map(function(link) {
|
|
9
|
+
var id = link.getAttribute('href')?.slice(1);
|
|
10
|
+
return id ? document.getElementById(id) : null;
|
|
11
|
+
}).filter(Boolean);
|
|
12
|
+
if (!headings.length) return;
|
|
13
|
+
var current = null;
|
|
14
|
+
observer = new IntersectionObserver(function(entries) {
|
|
15
|
+
entries.forEach(function(entry) {
|
|
16
|
+
if (entry.isIntersecting) current = entry.target;
|
|
17
|
+
});
|
|
18
|
+
if (!current) {
|
|
19
|
+
var scrollY = window.scrollY + 100;
|
|
20
|
+
for (var i = headings.length - 1; i >= 0; i--) {
|
|
21
|
+
if (headings[i].offsetTop <= scrollY) { current = headings[i]; break; }
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
tocLinks.forEach(function(link) {
|
|
25
|
+
var id = link.getAttribute('href')?.slice(1);
|
|
26
|
+
if (current && id === current.id) {
|
|
27
|
+
link.classList.add('active');
|
|
28
|
+
} else {
|
|
29
|
+
link.classList.remove('active');
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}, { rootMargin: '-60px 0px -70% 0px', threshold: 0 });
|
|
33
|
+
headings.forEach(function(h) { observer.observe(h); });
|
|
34
|
+
}
|
|
35
|
+
if (document.readyState === 'loading') {
|
|
36
|
+
document.addEventListener('DOMContentLoaded', initTocSpy);
|
|
37
|
+
} else {
|
|
38
|
+
initTocSpy();
|
|
39
|
+
}
|
|
40
|
+
window.__ASTRA_INIT_TOC_SPY__ = initTocSpy;
|
|
41
|
+
})();
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
(function(){
|
|
2
|
+
function setupTrigger(el, t, cb) {
|
|
3
|
+
if (t === 'load') document.readyState === 'loading' ? document.addEventListener('DOMContentLoaded', cb, {once:true}) : cb();
|
|
4
|
+
else if (t === 'idle') requestIdleCallback(cb);
|
|
5
|
+
else if (t[0] === 'v') new IntersectionObserver((e,o) => { if(e.some(x=>x.isIntersecting)){o.disconnect();cb();}}, {rootMargin:'50px'}).observe(el);
|
|
6
|
+
else if (t[0] === 'm') { var mq = matchMedia(t.slice(6)); var h = () => { if(mq.matches){mq.removeEventListener('change',h);cb();}}; mq.matches ? cb() : mq.addEventListener('change',h);}
|
|
7
|
+
}
|
|
8
|
+
var loaded = new Set();
|
|
9
|
+
async function hydrate(el) {
|
|
10
|
+
var name = el.tagName.toLowerCase();
|
|
11
|
+
if (loaded.has(name)) return;
|
|
12
|
+
var url = el.getAttribute('luna:wc-url');
|
|
13
|
+
if (!url) return;
|
|
14
|
+
loaded.add(name);
|
|
15
|
+
try {
|
|
16
|
+
var mod = await import(url);
|
|
17
|
+
var fn = mod.hydrate || mod.default;
|
|
18
|
+
if (typeof fn === 'function') fn(el, {}, name);
|
|
19
|
+
} catch(e) { console.error('[wc] Failed:', name, e); }
|
|
20
|
+
}
|
|
21
|
+
function setup(el) { setupTrigger(el, el.getAttribute('luna:wc-trigger') || 'load', () => hydrate(el)); }
|
|
22
|
+
function scan() { document.querySelectorAll('[luna\\:wc-url]').forEach(setup); }
|
|
23
|
+
if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', scan, {once:true});
|
|
24
|
+
else scan();
|
|
25
|
+
new MutationObserver(m => m.forEach(x => x.addedNodes.forEach(n => { if(n.nodeType === 1 && n.hasAttribute('luna:wc-url')) setup(n); }))).observe(document.body || document.documentElement, {childList:true,subtree:true});
|
|
26
|
+
window.__LUNA_WC_SCAN__ = scan;
|
|
27
|
+
window.__LUNA_WC_CLEAR_LOADED__ = () => loaded.clear();
|
|
28
|
+
})();
|