@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.
Files changed (350) hide show
  1. package/assets/scripts/loader.js +1 -0
  2. package/assets/scripts/sidebar.js +29 -0
  3. package/assets/scripts/theme.js +25 -0
  4. package/assets/scripts/toc.js +41 -0
  5. package/assets/scripts/wc-loader.js +28 -0
  6. package/assets/styles/main.css +592 -0
  7. package/assets/styles/markdown.css +74 -0
  8. package/bin/astra.mjs +2 -0
  9. package/dist/abap-4DRkXMJR.js +1 -0
  10. package/dist/actionscript-3-h0lqWyGv.js +1 -0
  11. package/dist/ada-B4-fQi6R.js +1 -0
  12. package/dist/andromeeda-DnfMDO_Y.js +1 -0
  13. package/dist/angular-html-CgTXg5Z6.js +1 -0
  14. package/dist/angular-html-d-0S-zLW.js +1 -0
  15. package/dist/angular-ts-CHhlLyrZ.js +1 -0
  16. package/dist/apache-CjmdmrNd.js +1 -0
  17. package/dist/apex-BQCmYrYs.js +1 -0
  18. package/dist/apl-BS7gisDH.js +1 -0
  19. package/dist/applescript-DmuENMYc.js +1 -0
  20. package/dist/ara-DSUvK8h0.js +1 -0
  21. package/dist/asciidoc-DtiaLqcg.js +1 -0
  22. package/dist/asm-vw4b_i9u.js +1 -0
  23. package/dist/astro-Cy9wZvxd.js +1 -0
  24. package/dist/aurora-x-LGMiQelM.js +1 -0
  25. package/dist/awk-CN3ZPsCY.js +1 -0
  26. package/dist/ayu-dark-8Z6NAin8.js +1 -0
  27. package/dist/ballerina-B4Fqjiam.js +1 -0
  28. package/dist/bat-DQvEQ0oY.js +1 -0
  29. package/dist/beancount-aKEgevoR.js +1 -0
  30. package/dist/berry-BOM3vuC7.js +1 -0
  31. package/dist/bibtex-CMp7yDWH.js +1 -0
  32. package/dist/bicep-BebJh39J.js +1 -0
  33. package/dist/blade-j7hZXB64.js +1 -0
  34. package/dist/bsl-DgkNvZZe.js +1 -0
  35. package/dist/c-87QmhLAV.js +1 -0
  36. package/dist/c-wmv-cFo9.js +1 -0
  37. package/dist/cadence-Cgd84A_0.js +1 -0
  38. package/dist/cairo-Dcrxjodq.js +1 -0
  39. package/dist/catppuccin-frappe-BpQ1lU1w.js +1 -0
  40. package/dist/catppuccin-latte-Cp48KXmS.js +1 -0
  41. package/dist/catppuccin-macchiato-Bpp0X-sF.js +1 -0
  42. package/dist/catppuccin-mocha-C2yaN9uG.js +1 -0
  43. package/dist/chunk-C91IYPK5.js +1 -0
  44. package/dist/clarity-pyieEWy3.js +1 -0
  45. package/dist/cli-p_7F_GeF.js +435 -0
  46. package/dist/cli.d.ts +1 -0
  47. package/dist/cli.js +2 -0
  48. package/dist/clojure-D2WDer8_.js +1 -0
  49. package/dist/cmake-CK9_JPOP.js +1 -0
  50. package/dist/cmake-Cdf80Fup.js +1 -0
  51. package/dist/cobol-DHzxMIfc.js +1 -0
  52. package/dist/codeowners-b6uQw4Jm.js +1 -0
  53. package/dist/codeql-04zjaa8t.js +1 -0
  54. package/dist/coffee-DCpHmt37.js +1 -0
  55. package/dist/common-lisp-DJpZd9nc.js +1 -0
  56. package/dist/coq-CqrhdPuQ.js +1 -0
  57. package/dist/cpp-DJwL1bmY.js +1 -0
  58. package/dist/cpp-bXmEu2fj.js +1 -0
  59. package/dist/crystal-QrrnajAZ.js +1 -0
  60. package/dist/csharp-CCkaXaBl.js +1 -0
  61. package/dist/csharp-DF2IH6Io.js +1 -0
  62. package/dist/css-B782H9QQ.js +1 -0
  63. package/dist/css-C3GPUY5d.js +1 -0
  64. package/dist/csv--xFxOZnZ.js +1 -0
  65. package/dist/csv-DwE9d_vs.js +1 -0
  66. package/dist/cue-Boddp5ou.js +1 -0
  67. package/dist/cypher-CJ-77cgQ.js +1 -0
  68. package/dist/d-D0I1dM2T.js +1 -0
  69. package/dist/dark-plus-BU3QBz56.js +1 -0
  70. package/dist/dart-BJ8cdcjB.js +1 -0
  71. package/dist/dax-flGRwOMk.js +1 -0
  72. package/dist/desktop-CKJBoUCX.js +1 -0
  73. package/dist/diff-D0R8227a.js +1 -0
  74. package/dist/diff-JYRIHEgk.js +1 -0
  75. package/dist/dist-Bx67DuWk.js +12 -0
  76. package/dist/docker-CaPT0nh2.js +1 -0
  77. package/dist/dotenv-Cl6daHtc.js +1 -0
  78. package/dist/dracula-Cw9IWaSN.js +1 -0
  79. package/dist/dracula-soft-BqgovASh.js +1 -0
  80. package/dist/dream-maker-B43zqZ9J.js +1 -0
  81. package/dist/edge-Ceyc3rVg.js +1 -0
  82. package/dist/elixir-Gvbortfm.js +1 -0
  83. package/dist/elm-DjLt6yAp.js +1 -0
  84. package/dist/emacs-lisp-D80T64tz.js +1 -0
  85. package/dist/erb-CXoLzZh0.js +1 -0
  86. package/dist/erlang-BogW8nFy.js +1 -0
  87. package/dist/everforest-dark-ogfM6sNR.js +1 -0
  88. package/dist/everforest-light-D6fPa5N4.js +1 -0
  89. package/dist/fennel-B2Zn_N77.js +1 -0
  90. package/dist/fish-COSG8aRZ.js +1 -0
  91. package/dist/fluent-D8gvH-iE.js +1 -0
  92. package/dist/fortran-fixed-form-D7puVArr.js +1 -0
  93. package/dist/fortran-free-form-AdpHkc55.js +1 -0
  94. package/dist/fortran-free-form-B-rZjaen.js +1 -0
  95. package/dist/fsharp-CFCe56st.js +1 -0
  96. package/dist/gdresource-CkuXen0_.js +1 -0
  97. package/dist/gdscript-B2-VFJAr.js +1 -0
  98. package/dist/gdscript-BgjbTSgo.js +1 -0
  99. package/dist/gdshader-CW5dzS3z.js +1 -0
  100. package/dist/gdshader-WTsPyo0L.js +1 -0
  101. package/dist/genie-C4I2dHj5.js +1 -0
  102. package/dist/gherkin-BqdToCRC.js +1 -0
  103. package/dist/git-commit-CtQHrkj3.js +1 -0
  104. package/dist/git-rebase-DZ7KYW5J.js +1 -0
  105. package/dist/github-dark-Dhw01-x_.js +1 -0
  106. package/dist/github-dark-default-DWGCwC0m.js +1 -0
  107. package/dist/github-dark-dimmed-euk1ld1c.js +1 -0
  108. package/dist/github-dark-high-contrast-BEHPWBGW.js +1 -0
  109. package/dist/github-light-DIH3R0Pp.js +1 -0
  110. package/dist/github-light-default-joSRi-P5.js +1 -0
  111. package/dist/github-light-high-contrast-BeJxmE-G.js +1 -0
  112. package/dist/gleam-ybdQKAnL.js +1 -0
  113. package/dist/glimmer-js-C7QvVTe0.js +1 -0
  114. package/dist/glimmer-ts-BtNjgeMZ.js +1 -0
  115. package/dist/glsl-Bl2rgVkF.js +1 -0
  116. package/dist/glsl-DK2LO5Ai.js +1 -0
  117. package/dist/gnuplot-DuihR3pv.js +1 -0
  118. package/dist/go-CafkwwfM.js +1 -0
  119. package/dist/go-DJYwhvJ3.js +1 -0
  120. package/dist/graphql-CWPKPXc6.js +1 -0
  121. package/dist/graphql-t4luSV8n.js +1 -0
  122. package/dist/groovy-ge4S-gf0.js +1 -0
  123. package/dist/gruvbox-dark-hard-Bn5BzspA.js +1 -0
  124. package/dist/gruvbox-dark-medium-c5nt2GVa.js +1 -0
  125. package/dist/gruvbox-dark-soft-CDQxnYqs.js +1 -0
  126. package/dist/gruvbox-light-hard-CYnE9iXs.js +1 -0
  127. package/dist/gruvbox-light-medium-Bib7X0I1.js +1 -0
  128. package/dist/gruvbox-light-soft-uNsFDxv8.js +1 -0
  129. package/dist/hack-CuBlwJsx.js +1 -0
  130. package/dist/haml-B8bmXhBu.js +1 -0
  131. package/dist/haml-DwxcKQb3.js +1 -0
  132. package/dist/handlebars-0vCF10JB.js +1 -0
  133. package/dist/haskell-BNCSquDI.js +1 -0
  134. package/dist/haxe-DCnwBaYO.js +1 -0
  135. package/dist/haxe-G7UefS7i.js +1 -0
  136. package/dist/hcl-BFNNInwi.js +1 -0
  137. package/dist/hjson-Dvt_015e.js +1 -0
  138. package/dist/hlsl-B8f0y-cZ.js +1 -0
  139. package/dist/hlsl-BjMfZaun.js +1 -0
  140. package/dist/houston-pqjsYGpQ.js +1 -0
  141. package/dist/html-CMGi1hjb.js +1 -0
  142. package/dist/html-DmY_wHSX.js +1 -0
  143. package/dist/html-derivative-BqkAHwxw.js +1 -0
  144. package/dist/html-derivative-GfNAXNvy.js +1 -0
  145. package/dist/http-DSNmXPmD.js +1 -0
  146. package/dist/hurl-CkrB6eSq.js +1 -0
  147. package/dist/hxml-BqY1UbIj.js +1 -0
  148. package/dist/hy-D60OpFH3.js +1 -0
  149. package/dist/imba-ebgbSwGz.js +1 -0
  150. package/dist/index.d.ts +1 -0
  151. package/dist/index.js +1 -0
  152. package/dist/ini-BYj6RmKB.js +1 -0
  153. package/dist/java-Bi_Y8Bsw.js +1 -0
  154. package/dist/java-CaqIw_Rf.js +1 -0
  155. package/dist/javascript-CGOaYlKm.js +1 -0
  156. package/dist/javascript-u1vot5QS.js +1 -0
  157. package/dist/jinja-D4fgt2Cy.js +1 -0
  158. package/dist/jison-BupbRSBu.js +1 -0
  159. package/dist/json-DgrvHR2v.js +1 -0
  160. package/dist/json-IYFshA56.js +1 -0
  161. package/dist/json5-aE0VX-pu.js +1 -0
  162. package/dist/jsonc-CqRuzQuA.js +1 -0
  163. package/dist/jsonl-SOOkn7Sw.js +1 -0
  164. package/dist/jsonnet-DIfu6phf.js +1 -0
  165. package/dist/jssm-hV0pDTDQ.js +1 -0
  166. package/dist/jsx-C0SH37ly.js +1 -0
  167. package/dist/jsx-CaJZmrVS.js +1 -0
  168. package/dist/julia-BLM7eaiW.js +1 -0
  169. package/dist/kanagawa-dragon-CAUDhvmI.js +1 -0
  170. package/dist/kanagawa-lotus-Cw3RzpRs.js +1 -0
  171. package/dist/kanagawa-wave-CTd7QKuU.js +1 -0
  172. package/dist/kdl-3xrhyk5W.js +1 -0
  173. package/dist/kotlin-BHOgCkyf.js +1 -0
  174. package/dist/kusto-BM-oAYAb.js +1 -0
  175. package/dist/laserwave-CCurWjd8.js +1 -0
  176. package/dist/latex-Bvx9pcFA.js +1 -0
  177. package/dist/lean-D8IaoOiI.js +1 -0
  178. package/dist/less-CN_5Yw0a.js +1 -0
  179. package/dist/less-DV0aDiBa.js +1 -0
  180. package/dist/light-plus-D4kPJKWS.js +1 -0
  181. package/dist/liquid-sRlgGzf6.js +1 -0
  182. package/dist/llvm-CsnYorVw.js +1 -0
  183. package/dist/log-C_SMGL8n.js +1 -0
  184. package/dist/logo-CVzLzsP_.js +1 -0
  185. package/dist/lua-DOWHA_3v.js +1 -0
  186. package/dist/lua-DeAY9K4r.js +1 -0
  187. package/dist/luau-CzkleyTz.js +1 -0
  188. package/dist/make-B6JGcnpP.js +1 -0
  189. package/dist/markdown-CdC2l-IK.js +1 -0
  190. package/dist/markdown-DreHh8L0.js +1 -0
  191. package/dist/marko-BjGFov7R.js +1 -0
  192. package/dist/material-theme-DkzQiX4t.js +1 -0
  193. package/dist/material-theme-darker-DrS-0NxT.js +1 -0
  194. package/dist/material-theme-lighter-BwuKMVjk.js +1 -0
  195. package/dist/material-theme-ocean-9ZbppIGx.js +1 -0
  196. package/dist/material-theme-palenight-D-DAK9fg.js +1 -0
  197. package/dist/matlab-Dp2q9iPw.js +1 -0
  198. package/dist/mdc-CsADJoGH.js +1 -0
  199. package/dist/mdx-CLUcPDI-.js +1 -0
  200. package/dist/mermaid-DNEhkuYX.js +1 -0
  201. package/dist/min-dark-xNYg2MGl.js +1 -0
  202. package/dist/min-light-DUAH99TS.js +1 -0
  203. package/dist/mipsasm-DXT2tkbK.js +1 -0
  204. package/dist/mojo-COYWEKP9.js +1 -0
  205. package/dist/monokai-B-RSj3wm.js +1 -0
  206. package/dist/move-5RTvQ45f.js +1 -0
  207. package/dist/narrat-DuS5ChKX.js +1 -0
  208. package/dist/nextflow-dyA9sMUO.js +1 -0
  209. package/dist/nginx-dAQvnBBp.js +1 -0
  210. package/dist/night-owl-CKeRuZRJ.js +1 -0
  211. package/dist/nim-BUtsSKRR.js +1 -0
  212. package/dist/nix-BeX24OEZ.js +1 -0
  213. package/dist/nord-0qyAcvdD.js +1 -0
  214. package/dist/nushell-Du0Lbu-r.js +1 -0
  215. package/dist/objective-c-BDvn_PS7.js +1 -0
  216. package/dist/objective-cpp-BYVs_lNu.js +1 -0
  217. package/dist/ocaml-Buvqlhqm.js +1 -0
  218. package/dist/one-dark-pro-D9S4sFLi.js +1 -0
  219. package/dist/one-light-Bk0kqEFW.js +1 -0
  220. package/dist/openscad--GnqXwNf.js +1 -0
  221. package/dist/pascal-C9zC3WeM.js +1 -0
  222. package/dist/perl-BILVogJG.js +1 -0
  223. package/dist/php-Cmx4iIMY.js +1 -0
  224. package/dist/php-yQ5AQvPM.js +1 -0
  225. package/dist/pkl-D1JQCIjP.js +1 -0
  226. package/dist/plastic-5fWCgqtU.js +1 -0
  227. package/dist/plsql-DUnoIwFl.js +1 -0
  228. package/dist/po-C-FGioO2.js +1 -0
  229. package/dist/poimandres-DdrZqqhm.js +1 -0
  230. package/dist/polar-Chc9BaLJ.js +1 -0
  231. package/dist/postcss-Bnn_pAAb.js +1 -0
  232. package/dist/postcss-WBt22Dkz.js +1 -0
  233. package/dist/powerquery-DZe8qDfI.js +1 -0
  234. package/dist/powershell-B4WW0YF3.js +1 -0
  235. package/dist/prisma-Db0IWuIE.js +1 -0
  236. package/dist/prolog-CzOU4qVi.js +1 -0
  237. package/dist/proto-CnyvvDd1.js +1 -0
  238. package/dist/pug-XN1V80yZ.js +1 -0
  239. package/dist/puppet-Dts2NQhA.js +1 -0
  240. package/dist/purescript-pfjd9EKT.js +1 -0
  241. package/dist/python-CgkbEA7j.js +1 -0
  242. package/dist/python-DA5VdOjf.js +1 -0
  243. package/dist/qml-BUG6hecM.js +1 -0
  244. package/dist/qmldir-Btbp-SnF.js +1 -0
  245. package/dist/qss-NWGc7ENo.js +1 -0
  246. package/dist/r-ChmFPS6K.js +1 -0
  247. package/dist/r-DqnCeWey.js +1 -0
  248. package/dist/racket-BWT8W4iy.js +1 -0
  249. package/dist/raku-C4oZa0Mf.js +1 -0
  250. package/dist/razor-CwlmIXoZ.js +1 -0
  251. package/dist/red-CqUJW53F.js +1 -0
  252. package/dist/reg-TtWpd5d3.js +1 -0
  253. package/dist/regexp-BQ5u4y-4.js +1 -0
  254. package/dist/regexp-j35UYMaY.js +1 -0
  255. package/dist/rel-DIWiXQ72.js +1 -0
  256. package/dist/riscv-Dv-Wobwn.js +1 -0
  257. package/dist/rose-pine-DAkiUkt-.js +1 -0
  258. package/dist/rose-pine-dawn-C4hAh4xD.js +1 -0
  259. package/dist/rose-pine-moon-DLFvs1dY.js +1 -0
  260. package/dist/rosmsg-Dpq0E4Hf.js +1 -0
  261. package/dist/rst-ByEkqHpT.js +1 -0
  262. package/dist/ruby-BN2fsjPD.js +1 -0
  263. package/dist/ruby-CWJ7HOvL.js +1 -0
  264. package/dist/rust-DXMWrjIS.js +1 -0
  265. package/dist/sas-CFRgJxyH.js +1 -0
  266. package/dist/sass-Dkc8z2U_.js +1 -0
  267. package/dist/scala-Ccn4twDa.js +1 -0
  268. package/dist/scheme-ByS7Ufpv.js +1 -0
  269. package/dist/scss-B2HK8b_u.js +1 -0
  270. package/dist/scss-BtLJrQgO.js +1 -0
  271. package/dist/sdbl-CDZiUoGO.js +1 -0
  272. package/dist/sdbl-DWnpuOvU.js +1 -0
  273. package/dist/shaderlab-Bp6E8wU4.js +1 -0
  274. package/dist/shellscript-4OkiSN-h.js +1 -0
  275. package/dist/shellscript-C1F1sLPK.js +1 -0
  276. package/dist/shellsession-2D4oxU8o.js +1 -0
  277. package/dist/slack-dark-pkdzBKrI.js +1 -0
  278. package/dist/slack-ochin-CoDz9ko7.js +1 -0
  279. package/dist/smalltalk-Kx-oUZNN.js +1 -0
  280. package/dist/snazzy-light-CIl1jIJ6.js +1 -0
  281. package/dist/solarized-dark-DPAo1TQR.js +1 -0
  282. package/dist/solarized-light-ZikhFtV6.js +1 -0
  283. package/dist/solidity-B6e3Bet0.js +1 -0
  284. package/dist/soy-DzHQLVPv.js +1 -0
  285. package/dist/sparql-2EdL4sGD.js +1 -0
  286. package/dist/splunk-4bEiKJQJ.js +1 -0
  287. package/dist/sql-0D3m0WTO.js +1 -0
  288. package/dist/sql-COwkzdcc.js +1 -0
  289. package/dist/ssh-config-DNAYfpA0.js +1 -0
  290. package/dist/stata-Dc9CpOk_.js +1 -0
  291. package/dist/stylus-CU84eN7i.js +1 -0
  292. package/dist/stylus-DMy4Ib1_.js +1 -0
  293. package/dist/svelte-Dt1uHIEv.js +1 -0
  294. package/dist/swift-CAb5ZoTR.js +1 -0
  295. package/dist/synthwave-84-CGqBU60R.js +1 -0
  296. package/dist/system-verilog-D1zBPwIR.js +1 -0
  297. package/dist/systemd-CB-JNMU1.js +1 -0
  298. package/dist/talonscript-C44n0Z1I.js +1 -0
  299. package/dist/tasl-DFJ5DyKD.js +1 -0
  300. package/dist/tcl-Cn_vgD48.js +1 -0
  301. package/dist/templ-D6cgJQ93.js +1 -0
  302. package/dist/terraform-C0GDw5Yx.js +1 -0
  303. package/dist/tex--evcwRaO.js +1 -0
  304. package/dist/tex-DI7k1i5h.js +1 -0
  305. package/dist/tokyo-night-C9P-hOUs.js +1 -0
  306. package/dist/toml-DygwKWiG.js +1 -0
  307. package/dist/ts-tags-BMyJSDRW.js +1 -0
  308. package/dist/tsv-D1hoG1dc.js +1 -0
  309. package/dist/tsx-FaowoCNQ.js +1 -0
  310. package/dist/tsx-MSa_uj0f.js +1 -0
  311. package/dist/turtle-DTVOEVyA.js +1 -0
  312. package/dist/turtle-bFO7CguV.js +1 -0
  313. package/dist/twig-B5SDCRaG.js +1 -0
  314. package/dist/typescript-B56_2R5P.js +1 -0
  315. package/dist/typescript-C9arBFtN.js +1 -0
  316. package/dist/typespec-Xs3M-L3I.js +1 -0
  317. package/dist/typst-aZyRVVhS.js +1 -0
  318. package/dist/v-U-avXm9a.js +1 -0
  319. package/dist/vala-C9DtP-IN.js +1 -0
  320. package/dist/vb-BiBM73OI.js +1 -0
  321. package/dist/verilog-2KJ23lmQ.js +1 -0
  322. package/dist/vesper-QUZLl-KU.js +1 -0
  323. package/dist/vhdl-BM_G-wqS.js +1 -0
  324. package/dist/viml-D9Wfp7kC.js +1 -0
  325. package/dist/vitesse-black-DaRTa0zW.js +1 -0
  326. package/dist/vitesse-dark-CK3JAXrr.js +1 -0
  327. package/dist/vitesse-light-irHM-N9L.js +1 -0
  328. package/dist/vue-8Qq1O0KV.js +1 -0
  329. package/dist/vue-BhuSGEdZ.js +1 -0
  330. package/dist/vue-html-CjTCw3jB.js +1 -0
  331. package/dist/vue-vine-B8fLyaUV.js +1 -0
  332. package/dist/vyper-JxCydtCC.js +1 -0
  333. package/dist/wasm-CEYKmQJi.js +1 -0
  334. package/dist/wasm-CeIBK_Mv.js +1 -0
  335. package/dist/wenyan-C6IMLxb9.js +1 -0
  336. package/dist/wgsl-DcM0fO4C.js +1 -0
  337. package/dist/wikitext-CicqHi8l.js +1 -0
  338. package/dist/wit-DXZYezGF.js +1 -0
  339. package/dist/wolfram-LDaaEKo9.js +1 -0
  340. package/dist/worker.d.ts +1 -0
  341. package/dist/worker.js +188 -0
  342. package/dist/wrapper-DlUP6cCH.js +6 -0
  343. package/dist/xml-D4S4eOp-.js +1 -0
  344. package/dist/xml-DI-vKJVc.js +1 -0
  345. package/dist/xsl-BBtAEwui.js +1 -0
  346. package/dist/yaml-BYGefRa5.js +1 -0
  347. package/dist/yaml-ryeB2S83.js +1 -0
  348. package/dist/zenscript-C6nOigZg.js +1 -0
  349. package/dist/zig-BZAkN6e6.js +1 -0
  350. package/package.json +49 -0
@@ -0,0 +1,592 @@
1
+ /* Luna SSG Default Theme - Moon-inspired colors */
2
+ :root {
3
+ --primary-color: #b45309;
4
+ --text-color: #1f2937;
5
+ --text-muted: #4b5563;
6
+ --bg-color: #ffffff;
7
+ --sidebar-bg: #fafafa;
8
+ --border-color: #e5e7eb;
9
+ --code-bg: #f3f4f6;
10
+ --link-color: var(--primary-color);
11
+ --nav-link-color: var(--text-muted);
12
+ }
13
+
14
+ /* Dark mode - controlled by .dark class on html */
15
+ html.dark {
16
+ --primary-color: #fbbf24;
17
+ --text-color: #f3f4f6;
18
+ --text-muted: #d1d5db;
19
+ --bg-color: #0f0f0f;
20
+ --sidebar-bg: #171717;
21
+ --border-color: #2d2d2d;
22
+ --code-bg: #1f1f1f;
23
+ --nav-link-color: #e5e7eb;
24
+ }
25
+
26
+ /* Theme toggle button */
27
+ .theme-toggle {
28
+ display: flex;
29
+ align-items: center;
30
+ justify-content: center;
31
+ width: 36px;
32
+ height: 36px;
33
+ padding: 0;
34
+ border: 1px solid var(--border-color);
35
+ border-radius: 6px;
36
+ background: transparent;
37
+ color: var(--text-color);
38
+ cursor: pointer;
39
+ transition: background 0.2s, border-color 0.2s;
40
+ }
41
+ .theme-toggle:hover {
42
+ background: var(--sidebar-bg);
43
+ }
44
+
45
+ /* Theme icons - moon in light mode, sun in dark mode */
46
+ .theme-icon-dark { display: block; }
47
+ .theme-icon-light { display: none; }
48
+ html.dark .theme-icon-dark { display: none; }
49
+ html.dark .theme-icon-light { display: block; }
50
+
51
+ /* View Transition API (MPA) */
52
+ @view-transition {
53
+ navigation: auto;
54
+ }
55
+
56
+ /* Disable root transition, only transition main content */
57
+ ::view-transition-old(root),
58
+ ::view-transition-new(root) {
59
+ animation: none;
60
+ mix-blend-mode: normal;
61
+ }
62
+
63
+ /* Main content transition */
64
+ .doc-content {
65
+ view-transition-name: main-content;
66
+ }
67
+
68
+ ::view-transition-old(main-content),
69
+ ::view-transition-new(main-content) {
70
+ animation-duration: 0.2s;
71
+ animation-timing-function: ease-out;
72
+ }
73
+
74
+ /* Direction-based animations */
75
+ @keyframes slide-out-to-left {
76
+ from { transform: translateX(0); opacity: 1; }
77
+ to { transform: translateX(-5%); opacity: 0; }
78
+ }
79
+ @keyframes slide-in-from-right {
80
+ from { transform: translateX(5%); opacity: 0; }
81
+ to { transform: translateX(0); opacity: 1; }
82
+ }
83
+ @keyframes slide-out-to-right {
84
+ from { transform: translateX(0); opacity: 1; }
85
+ to { transform: translateX(5%); opacity: 0; }
86
+ }
87
+ @keyframes slide-in-from-left {
88
+ from { transform: translateX(-5%); opacity: 0; }
89
+ to { transform: translateX(0); opacity: 1; }
90
+ }
91
+
92
+ html:active-view-transition-type(forwards) {
93
+ &::view-transition-old(main-content) { animation-name: slide-out-to-right; }
94
+ &::view-transition-new(main-content) { animation-name: slide-in-from-left; }
95
+ }
96
+ html:active-view-transition-type(backwards) {
97
+ &::view-transition-old(main-content) { animation-name: slide-out-to-left; }
98
+ &::view-transition-new(main-content) { animation-name: slide-in-from-right; }
99
+ }
100
+
101
+ * { box-sizing: border-box; margin: 0; padding: 0; }
102
+
103
+ body {
104
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
105
+ color: var(--text-color);
106
+ background: var(--bg-color);
107
+ line-height: 1.6;
108
+ }
109
+
110
+ /* Navigation */
111
+ .nav-bar {
112
+ position: sticky;
113
+ top: 0;
114
+ z-index: 100;
115
+ background: var(--bg-color);
116
+ border-bottom: 1px solid var(--border-color);
117
+ padding: 0.75rem 1.5rem;
118
+ }
119
+
120
+ .nav-container {
121
+ max-width: 1400px;
122
+ margin: 0 auto;
123
+ display: flex;
124
+ justify-content: space-between;
125
+ align-items: center;
126
+ }
127
+
128
+ .nav-home { text-decoration: none; font-weight: 600; color: var(--text-color); }
129
+ .nav-logo { height: 32px; }
130
+ .nav-title { font-size: 1.25rem; }
131
+ .nav-links { display: flex; gap: 1.5rem; align-items: center; }
132
+ .nav-link { color: var(--text-color); text-decoration: none; }
133
+ .nav-link:hover { color: var(--primary-color); }
134
+
135
+ /* Language Switcher */
136
+ .lang-switcher {
137
+ position: relative;
138
+ margin-left: 0.5rem;
139
+ }
140
+ .lang-trigger {
141
+ cursor: pointer;
142
+ padding: 0.375rem 0.75rem;
143
+ border: 1px solid var(--border-color);
144
+ border-radius: 4px;
145
+ font-size: 0.875rem;
146
+ color: var(--text-color);
147
+ list-style: none;
148
+ display: flex;
149
+ align-items: center;
150
+ gap: 0.375rem;
151
+ }
152
+ .lang-trigger::-webkit-details-marker { display: none; }
153
+ .lang-trigger::after {
154
+ content: '';
155
+ border-left: 4px solid transparent;
156
+ border-right: 4px solid transparent;
157
+ border-top: 5px solid currentColor;
158
+ }
159
+ .lang-switcher[open] .lang-trigger::after {
160
+ border-top: none;
161
+ border-bottom: 5px solid currentColor;
162
+ }
163
+ .lang-menu {
164
+ position: absolute;
165
+ top: 100%;
166
+ right: 0;
167
+ margin-top: 0.25rem;
168
+ background: var(--bg-color);
169
+ border: 1px solid var(--border-color);
170
+ border-radius: 4px;
171
+ box-shadow: 0 2px 8px rgba(0,0,0,0.1);
172
+ min-width: 120px;
173
+ z-index: 200;
174
+ }
175
+ .lang-item {
176
+ display: block;
177
+ padding: 0.5rem 0.75rem;
178
+ color: var(--text-color);
179
+ text-decoration: none;
180
+ font-size: 0.875rem;
181
+ }
182
+ .lang-item:hover { background: var(--sidebar-bg); }
183
+ .lang-item-active {
184
+ color: var(--primary-color);
185
+ font-weight: 500;
186
+ }
187
+
188
+ /* Social Links */
189
+ .social-links {
190
+ display: flex;
191
+ align-items: center;
192
+ gap: 0.5rem;
193
+ }
194
+ .social-link {
195
+ display: flex;
196
+ align-items: center;
197
+ justify-content: center;
198
+ color: var(--text-muted);
199
+ padding: 0.375rem;
200
+ border-radius: 4px;
201
+ transition: color 0.2s, background 0.2s;
202
+ }
203
+ .social-link:hover {
204
+ color: var(--text-color);
205
+ background: var(--sidebar-bg);
206
+ }
207
+ .social-link svg {
208
+ display: block;
209
+ }
210
+
211
+ /* Layout */
212
+ .layout-doc { display: flex; flex-direction: column; min-height: 100vh; }
213
+ .doc-container { display: flex; flex: 1; width: 100%; }
214
+
215
+ /* Home Layout */
216
+ .layout-home { min-height: 100vh; display: flex; flex-direction: column; }
217
+ .home-content {
218
+ flex: 1;
219
+ max-width: 800px;
220
+ margin: 0 auto;
221
+ padding: 3rem 2rem;
222
+ width: 100%;
223
+ }
224
+ .home-content h1:first-child {
225
+ font-size: 2.5rem;
226
+ text-align: center;
227
+ margin-bottom: 1.5rem;
228
+ border: none;
229
+ }
230
+ .home-content > p:first-of-type {
231
+ font-size: 1.25rem;
232
+ text-align: center;
233
+ color: var(--text-muted);
234
+ margin-bottom: 2rem;
235
+ }
236
+
237
+ /* Sidebar */
238
+ .sidebar {
239
+ position: fixed;
240
+ left: 0;
241
+ top: 60px;
242
+ width: 260px;
243
+ height: calc(100vh - 60px);
244
+ background: var(--sidebar-bg);
245
+ border-right: 1px solid var(--border-color);
246
+ display: flex;
247
+ flex-direction: column;
248
+ transition: width 0.2s ease;
249
+ z-index: 10;
250
+ }
251
+ .sidebar-collapsed .sidebar {
252
+ width: 32px;
253
+ }
254
+ .sidebar-content {
255
+ flex: 1;
256
+ padding: 1rem 1.5rem;
257
+ overflow-y: auto;
258
+ }
259
+ .sidebar-collapse-btn {
260
+ display: flex;
261
+ align-items: center;
262
+ justify-content: center;
263
+ padding: 0.75rem;
264
+ border: none;
265
+ border-top: 1px solid var(--border-color);
266
+ background: transparent;
267
+ cursor: pointer;
268
+ color: var(--text-color);
269
+ opacity: 0.6;
270
+ transition: opacity 0.2s;
271
+ margin-top: auto;
272
+ }
273
+ .sidebar-collapse-btn:hover { opacity: 1; }
274
+ .collapse-icon::before {
275
+ content: '«';
276
+ font-size: 1.25rem;
277
+ font-weight: bold;
278
+ }
279
+ .sidebar-collapsed .sidebar-content { display: none; }
280
+ .sidebar-collapsed .sidebar .collapse-icon::before { content: '»'; }
281
+
282
+ .sidebar-group { margin-bottom: 1rem; }
283
+ .sidebar-group-title {
284
+ font-weight: 600;
285
+ margin-bottom: 0.5rem;
286
+ color: var(--text-color);
287
+ font-size: 0.875rem;
288
+ text-transform: uppercase;
289
+ letter-spacing: 0.05em;
290
+ }
291
+ .sidebar-items { list-style: none; margin: 0; padding: 0; }
292
+ .sidebar-items-inner { list-style: none; margin: 0; padding: 0; }
293
+ .sidebar-nested-group { list-style: none; }
294
+ .sidebar-link {
295
+ display: block;
296
+ padding: 0.5rem 0.75rem;
297
+ color: var(--text-color);
298
+ text-decoration: none;
299
+ font-size: 0.9375rem;
300
+ border-radius: 0.375rem;
301
+ transition: background-color 0.15s;
302
+ }
303
+ .sidebar-link:hover { background-color: var(--sidebar-bg); color: var(--primary-color); }
304
+ .sidebar-link.active { color: var(--primary-color); font-weight: 600; background-color: var(--sidebar-bg); }
305
+
306
+ /* Collapsible sidebar groups - Docusaurus style */
307
+ .sidebar-collapse {
308
+ border: none;
309
+ margin-bottom: 0.25rem;
310
+ }
311
+ .sidebar-collapse summary {
312
+ cursor: pointer;
313
+ list-style: none;
314
+ display: flex;
315
+ align-items: center;
316
+ justify-content: space-between;
317
+ padding: 0.5rem 0.75rem;
318
+ border-radius: 0.375rem;
319
+ transition: background-color 0.15s;
320
+ }
321
+ .sidebar-collapse summary:hover {
322
+ background-color: var(--sidebar-bg);
323
+ }
324
+ .sidebar-collapse summary::-webkit-details-marker { display: none; }
325
+ .sidebar-group-link {
326
+ color: var(--text-color);
327
+ text-decoration: none;
328
+ font-weight: 500;
329
+ font-size: 0.9375rem;
330
+ flex: 1;
331
+ }
332
+ .sidebar-group-link:hover { color: var(--primary-color); }
333
+ .sidebar-group-link.active { color: var(--primary-color); }
334
+ .sidebar-chevron {
335
+ width: 24px;
336
+ height: 24px;
337
+ display: flex;
338
+ align-items: center;
339
+ justify-content: center;
340
+ color: var(--nav-link-color);
341
+ transition: transform 0.2s;
342
+ flex-shrink: 0;
343
+ }
344
+ .sidebar-chevron::before {
345
+ content: '';
346
+ width: 0;
347
+ height: 0;
348
+ border-top: 5px solid transparent;
349
+ border-bottom: 5px solid transparent;
350
+ border-left: 6px solid currentColor;
351
+ }
352
+ .sidebar-collapse .sidebar-chevron {
353
+ transition: transform 0.2s ease;
354
+ }
355
+ .sidebar-collapse[open] .sidebar-chevron {
356
+ transform: rotate(90deg);
357
+ }
358
+ .sidebar-collapse.closing .sidebar-chevron {
359
+ transform: rotate(0deg);
360
+ }
361
+ .sidebar-collapse .sidebar-items {
362
+ display: grid;
363
+ grid-template-rows: 0fr;
364
+ transition: grid-template-rows 0.2s ease;
365
+ }
366
+ .sidebar-collapse[open] .sidebar-items {
367
+ grid-template-rows: 1fr;
368
+ }
369
+ .sidebar-collapse.closing .sidebar-items {
370
+ grid-template-rows: 0fr;
371
+ }
372
+ .sidebar-collapse .sidebar-items-inner {
373
+ overflow: hidden;
374
+ padding-left: 1rem;
375
+ }
376
+
377
+ /* Breadcrumb */
378
+ .breadcrumb {
379
+ display: flex;
380
+ align-items: center;
381
+ flex-wrap: wrap;
382
+ gap: 0.25rem;
383
+ font-size: 0.875rem;
384
+ color: var(--text-muted);
385
+ margin-bottom: 1rem;
386
+ }
387
+ .breadcrumb-link {
388
+ color: var(--text-muted);
389
+ text-decoration: none;
390
+ transition: color 0.15s;
391
+ }
392
+ .breadcrumb-link:hover { color: var(--primary-color); }
393
+ .breadcrumb-separator {
394
+ color: var(--text-muted);
395
+ opacity: 0.5;
396
+ margin: 0 0.25rem;
397
+ }
398
+ .breadcrumb-current { color: var(--text-color); }
399
+
400
+ /* Main Content */
401
+ .doc-main { flex: 1; padding: 2rem; max-width: 800px; margin-left: 260px; margin-right: 220px; }
402
+ .sidebar-collapsed .doc-main { margin-left: 32px; }
403
+ .toc-collapsed .doc-main { margin-right: 32px; }
404
+ .sidebar-collapsed.toc-collapsed .doc-main { margin-left: auto; margin-right: auto; padding-left: 48px; padding-right: 48px; }
405
+ .doc-content { line-height: 1.7; }
406
+
407
+ /* Typography */
408
+ .heading { margin: 1.5rem 0 1rem; font-weight: 600; }
409
+ .heading-1 { font-size: 2rem; border-bottom: 1px solid var(--border-color); padding-bottom: 0.5rem; }
410
+ .heading-2 { font-size: 1.5rem; }
411
+ .heading-3 { font-size: 1.25rem; }
412
+
413
+ p { margin: 1rem 0; }
414
+
415
+ a { color: var(--primary-color); }
416
+
417
+ /* Markdown body container */
418
+ .markdown-body {
419
+ box-sizing: border-box;
420
+ min-width: 200px;
421
+ max-width: 980px;
422
+ margin: 0 auto;
423
+ }
424
+
425
+ /* TOC */
426
+ .toc {
427
+ position: fixed;
428
+ right: 0;
429
+ top: 60px;
430
+ width: 220px;
431
+ height: calc(100vh - 60px);
432
+ display: flex;
433
+ flex-direction: column;
434
+ border-left: 1px solid var(--border-color);
435
+ background: var(--bg-color);
436
+ transition: width 0.2s ease;
437
+ }
438
+ .toc-collapsed .toc {
439
+ width: 32px;
440
+ }
441
+ .toc-content {
442
+ flex: 1;
443
+ padding: 1rem;
444
+ overflow-y: auto;
445
+ }
446
+ .toc-collapse-btn {
447
+ display: flex;
448
+ align-items: center;
449
+ justify-content: center;
450
+ padding: 0.75rem;
451
+ border: none;
452
+ border-top: 1px solid var(--border-color);
453
+ background: transparent;
454
+ cursor: pointer;
455
+ color: var(--text-color);
456
+ opacity: 0.6;
457
+ transition: opacity 0.2s;
458
+ margin-top: auto;
459
+ }
460
+ .toc-collapse-btn:hover { opacity: 1; }
461
+ .toc-collapse-icon::before { content: '»'; font-size: 1.25rem; font-weight: bold; }
462
+ .toc-collapsed .toc-content { display: none; }
463
+ .toc-collapsed .toc-collapse-icon::before { content: '«'; }
464
+ .toc-title { font-weight: 600; margin-bottom: 0.5rem; font-size: 0.875rem; }
465
+ .toc-list { list-style: none; font-size: 0.875rem; }
466
+ .toc-item { padding: 0.25rem 0; }
467
+ .toc-item a { color: var(--nav-link-color); text-decoration: none; transition: color 0.15s; }
468
+ .toc-item a:hover { color: var(--primary-color); }
469
+ .toc-item a.active { color: var(--primary-color); font-weight: 500; }
470
+ .toc-level-3 { padding-left: 0.75rem; }
471
+ .toc-level-4 { padding-left: 1.5rem; }
472
+
473
+ /* Prev/Next */
474
+ .prev-next {
475
+ display: flex;
476
+ justify-content: space-between;
477
+ margin-top: 2rem;
478
+ padding-top: 1rem;
479
+ border-top: 1px solid var(--border-color);
480
+ }
481
+
482
+ .prev-link, .next-link {
483
+ display: flex;
484
+ flex-direction: column;
485
+ text-decoration: none;
486
+ }
487
+
488
+ .prev-link .label, .next-link .label { font-size: 0.75rem; color: var(--text-muted); }
489
+ .prev-link .title, .next-link .title { color: var(--primary-color); font-weight: 500; }
490
+ .next-link { text-align: right; margin-left: auto; }
491
+
492
+ /* Footer */
493
+ .site-footer {
494
+ padding: 3rem 2rem 2rem;
495
+ border-top: 1px solid var(--border-color);
496
+ color: var(--text-muted);
497
+ font-size: 0.875rem;
498
+ background: var(--sidebar-bg);
499
+ }
500
+ .footer-columns {
501
+ display: grid;
502
+ grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
503
+ gap: 2rem;
504
+ max-width: 1200px;
505
+ margin: 0 auto 2rem;
506
+ padding: 0 1rem;
507
+ }
508
+ .footer-column-title {
509
+ font-size: 0.875rem;
510
+ font-weight: 600;
511
+ color: var(--text-color);
512
+ margin: 0 0 0.75rem;
513
+ text-transform: uppercase;
514
+ letter-spacing: 0.05em;
515
+ }
516
+ .footer-links {
517
+ list-style: none;
518
+ padding: 0;
519
+ margin: 0;
520
+ }
521
+ .footer-links li { margin: 0.5rem 0; }
522
+ .footer-link {
523
+ color: var(--text-muted);
524
+ text-decoration: none;
525
+ transition: color 0.2s;
526
+ }
527
+ .footer-link:hover { color: var(--primary-color); }
528
+ .footer-bottom {
529
+ text-align: center;
530
+ padding-top: 2rem;
531
+ border-top: 1px solid var(--border-color);
532
+ }
533
+ .footer-message, .footer-copyright { margin: 0.25rem 0; }
534
+
535
+ /* Ensure dark mode styles work with system preference */
536
+ @media (prefers-color-scheme: dark) {
537
+ :root:not(.light) {
538
+ --primary-color: #fbbf24;
539
+ --text-color: #f3f4f6;
540
+ --text-muted: #d1d5db;
541
+ --bg-color: #0f0f0f;
542
+ --sidebar-bg: #171717;
543
+ --border-color: #2d2d2d;
544
+ --code-bg: #1f1f1f;
545
+ --nav-link-color: #e5e7eb;
546
+ }
547
+ }
548
+
549
+ /* Mobile Sidebar Dropdown */
550
+ .mobile-sidebar {
551
+ display: none;
552
+ margin-bottom: 1rem;
553
+ border: 1px solid var(--border-color);
554
+ border-radius: 8px;
555
+ background: var(--sidebar-bg);
556
+ }
557
+ .mobile-sidebar-trigger {
558
+ display: flex;
559
+ justify-content: space-between;
560
+ align-items: center;
561
+ padding: 0.75rem 1rem;
562
+ cursor: pointer;
563
+ list-style: none;
564
+ font-weight: 500;
565
+ }
566
+ .mobile-sidebar-trigger::-webkit-details-marker { display: none; }
567
+ .mobile-sidebar-arrow {
568
+ border-left: 5px solid transparent;
569
+ border-right: 5px solid transparent;
570
+ border-top: 6px solid currentColor;
571
+ transition: transform 0.2s;
572
+ }
573
+ .mobile-sidebar[open] .mobile-sidebar-arrow {
574
+ transform: rotate(180deg);
575
+ }
576
+ .mobile-sidebar-content {
577
+ border-top: 1px solid var(--border-color);
578
+ padding: 0.5rem 0;
579
+ max-height: 60vh;
580
+ overflow-y: auto;
581
+ }
582
+ .mobile-sidebar-content .sidebar-collapse { border: none; }
583
+ .mobile-sidebar-content .sidebar-collapse summary { padding: 0.5rem 1rem; }
584
+ .mobile-sidebar-content .sidebar-items { padding-left: 1.5rem; }
585
+
586
+ /* Responsive */
587
+ @media (max-width: 960px) {
588
+ .sidebar-desktop { display: none; }
589
+ .mobile-sidebar { display: block; }
590
+ .toc { display: none; }
591
+ .doc-main { margin-left: 0; margin-right: 0; max-width: none; }
592
+ }
@@ -0,0 +1,74 @@
1
+ /* GitHub Markdown CSS - minimal subset for Astra */
2
+ .markdown-body {
3
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif;
4
+ font-size: 16px;
5
+ line-height: 1.5;
6
+ word-wrap: break-word;
7
+ }
8
+ .markdown-body h1, .markdown-body h2 {
9
+ padding-bottom: 0.3em;
10
+ border-bottom: 1px solid var(--border-color, #d0d7de);
11
+ }
12
+ .markdown-body h1 { font-size: 2em; }
13
+ .markdown-body h2 { font-size: 1.5em; }
14
+ .markdown-body h3 { font-size: 1.25em; }
15
+ .markdown-body h4 { font-size: 1em; }
16
+ .markdown-body code {
17
+ padding: 0.2em 0.4em;
18
+ margin: 0;
19
+ font-size: 85%;
20
+ background-color: var(--code-bg, rgba(175, 184, 193, 0.2));
21
+ border-radius: 6px;
22
+ font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
23
+ }
24
+ .markdown-body pre {
25
+ padding: 16px;
26
+ overflow: auto;
27
+ font-size: 85%;
28
+ line-height: 1.45;
29
+ background-color: var(--code-bg, #f6f8fa);
30
+ border-radius: 6px;
31
+ }
32
+ .markdown-body pre code {
33
+ padding: 0;
34
+ margin: 0;
35
+ background: transparent;
36
+ border: 0;
37
+ font-size: 100%;
38
+ }
39
+ .markdown-body blockquote {
40
+ padding: 0 1em;
41
+ color: #656d76;
42
+ border-left: 0.25em solid #d0d7de;
43
+ }
44
+ .markdown-body table {
45
+ border-spacing: 0;
46
+ border-collapse: collapse;
47
+ width: 100%;
48
+ overflow: auto;
49
+ }
50
+ .markdown-body td, .markdown-body th {
51
+ padding: 6px 13px;
52
+ border: 1px solid #d0d7de;
53
+ }
54
+ .markdown-body tr:nth-child(2n) {
55
+ background-color: var(--code-bg, #f6f8fa);
56
+ }
57
+ .markdown-body hr {
58
+ height: 0.25em;
59
+ padding: 0;
60
+ margin: 24px 0;
61
+ background-color: #d0d7de;
62
+ border: 0;
63
+ }
64
+ .markdown-body ul, .markdown-body ol {
65
+ padding-left: 2em;
66
+ }
67
+ .markdown-body li + li {
68
+ margin-top: 0.25em;
69
+ }
70
+ @media (prefers-color-scheme: dark) {
71
+ .markdown-body blockquote { color: #9198a1; border-left-color: #3d444d; }
72
+ .markdown-body td, .markdown-body th { border-color: #3d444d; }
73
+ .markdown-body hr { background-color: #3d444d; }
74
+ }
package/bin/astra.mjs ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import "../dist/cli.js";
@@ -0,0 +1 @@
1
+ var e=[Object.freeze(JSON.parse(`{"displayName":"ABAP","fileTypes":["abap","ABAP"],"foldingStartMarker":"/\\\\*\\\\*|\\\\{\\\\s*$","foldingStopMarker":"\\\\*\\\\*/|^\\\\s*}","name":"abap","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.abap"}},"match":"^\\\\*.*\\\\n?","name":"comment.line.full.abap"},{"captures":{"1":{"name":"punctuation.definition.comment.abap"}},"match":"\\".*\\\\n?","name":"comment.line.partial.abap"},{"match":"(?<!\\\\S)##.*?(?=([,.:\\\\s]))","name":"comment.line.pragma.abap"},{"match":"(?i)(?<=[-~\\\\s])(?<=[-=]>)([/_a-z][/-9_a-z]*)(?=\\\\s+(?:|[-*+/]|&&?)=\\\\s+)","name":"variable.other.abap"},{"match":"\\\\b[0-9]+(\\\\b|[,.])","name":"constant.numeric.abap"},{"match":"(?i)(^|\\\\s+)((P(?:UBLIC|RIVATE|ROTECTED))\\\\sSECTION)(?=\\\\s+|[.:])","name":"storage.modifier.class.abap"},{"begin":"(?<!\\\\\\\\)(\\\\|)(.*?)","beginCaptures":{"1":{"name":"constant.character.escape.abap"}},"end":"(?<!\\\\\\\\)(\\\\||(\\\\\\\\\\\\\\\\\\\\|))","endCaptures":{"1":{"name":"constant.character.escape.abap"}},"name":"string.interpolated.abap","patterns":[{"match":"(\\\\{ )|( })","name":"constant.character.escape"},{"match":"\\\\\\\\\\\\|","name":"constant.character.escape.abap"},{"match":"(?i)(?<=\\\\s)(align|alpha|case|country|currency|date|decimals|exponent|number|pad|sign|style|time|timestamp|timezone|width|xsd|zero)(?=\\\\s=)","name":"entity.name.property.stringtemplate.abap"},{"match":"(?i)(?<==\\\\s)(center|engineering|environment|in|iso|left|leftplus|leftspace|lower|no|out|raw|right|rightplus|rightspace|scale_preserving|scale_preserving_scientific|scientific|scientific_with_leading_zero|sign_as_postfix|simple|space|upper|user|yes)(?=\\\\s)","name":"entity.value.property.stringtemplate.abap"}]},{"begin":"'","end":"'","name":"string.quoted.single.abap","patterns":[{"match":"''","name":"constant.character.escape.abap"}]},{"begin":"\`","end":"\`","name":"string.quoted.single.abap","patterns":[{"match":"\`\`","name":"constant.character.escape.abap"}]},{"begin":"(?i)^\\\\s*(class)\\\\s([/_a-z][/-9_a-z]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.block.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","name":"meta.block.begin.implementation.abap","patterns":[{"match":"(?i)(^|\\\\s+)(definition|implementation|public|inheriting\\\\s+from|final|deferred|abstract|shared\\\\s+memory\\\\s+enabled|(global|local)*\\\\s*friends|(create\\\\s+(p(?:ublic|rotected|rivate)))|for\\\\s+behavior\\\\s+of|for\\\\s+testing|risk\\\\s+level\\\\s+(critical|dangerous|harmless))|duration\\\\s(short|medium|long)(?=\\\\s+|\\\\.)","name":"storage.modifier.class.abap"},{"begin":"(?=[A-Z_a-z][0-9A-Z_a-z]*)","contentName":"entity.name.type.block.abap","end":"(?![0-9A-Z_a-z])","patterns":[{"include":"#generic_names"}]}]},{"begin":"(?i)^\\\\s*(method)\\\\s(?:([/_a-z][/-9_a-z]*)~)?([/_a-z][/-9_a-z]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"},"3":{"name":"entity.name.function.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","patterns":[{"match":"(?i)(?<=^|\\\\s)(BY(?:\\\\s+DATABASE(\\\\s+PROCEDURE|\\\\s+FUNCTION|\\\\s+GRAPH\\\\s+WORKSPACE)|\\\\s+KERNEL\\\\s+MODULE))(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"},{"match":"(?i)(?<=^|\\\\s)(FOR\\\\s+(HDB|LLANG))(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"},{"match":"(?i)(?<=\\\\s)(OPTIONS\\\\s+(READ-ONLY|DETERMINISTIC|SUPPRESS\\\\s+SYNTAX\\\\s+ERRORS))(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"},{"match":"(?i)(?<=^|\\\\s)(LANGUAGE\\\\s+(SQLSCRIPT|SQL|GRAPH))(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"},{"captures":{"1":{"name":"storage.modifier.method.abap"}},"match":"(?i)(?<=\\\\s)(USING)\\\\s+([/_a-z][/-9=>_a-z]*)+(?=\\\\s+|\\\\.)"},{"begin":"(?=[A-Z_a-z][0-9A-Z_a-z]*)","end":"(?![0-9A-Z_a-z])","patterns":[{"include":"#generic_names"}]}]},{"begin":"(?i)^\\\\s*(INTERFACE)\\\\s([/_a-z][/-9_a-z]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","patterns":[{"match":"(?i)(?<=^|\\\\s)(DEFERRED|PUBLIC)(?=\\\\s+|\\\\.)","name":"storage.modifier.method.abap"}]},{"begin":"(?i)^\\\\s*(FORM)\\\\s([/_a-z][-/-9?_a-z]*)","beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}},"end":"\\\\s*\\\\.\\\\s*\\\\n?","patterns":[{"match":"(?i)(?<=^|\\\\s)(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\\\\s+|\\\\.)","name":"storage.modifier.form.abap"},{"include":"#abaptypes"},{"include":"#keywords_followed_by_braces"}]},{"match":"(?i)(end(?:class|method|form|interface))","name":"storage.type.block.end.abap"},{"match":"(?i)(<[A-Z_a-z][0-9A-Z_a-z]*>)","name":"variable.other.field.symbol.abap"},{"include":"#keywords"},{"include":"#abap_constants"},{"include":"#reserved_names"},{"include":"#operators"},{"include":"#builtin_functions"},{"include":"#abaptypes"},{"include":"#system_fields"},{"include":"#sql_functions"},{"include":"#sql_types"}],"repository":{"abap_constants":{"match":"(?i)(?<=\\\\s)(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|%_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|adabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=[,.\\\\s])","name":"constant.language.abap"},"abaptypes":{"patterns":[{"match":"(?i)\\\\s(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|[cdfinptx])(?=[,.\\\\s])","name":"support.type.abap"},{"match":"(?i)\\\\s(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=[,.\\\\s])","name":"keyword.control.simple.abap"}]},"arithmetic_operator":{"match":"(?i)(?<=\\\\s)([-*+]|\\\\*\\\\*|[%/]|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\\\s)","name":"keyword.control.simple.abap"},"builtin_functions":{"match":"(?i)(?<=\\\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\\\()","name":"entity.name.function.builtin.abap"},"comparison_operator":{"match":"(?i)(?<=\\\\s)([<>]|<=|>=|=|<>|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|[moz])(?=\\\\s)","name":"keyword.control.simple.abap"},"control_keywords":{"match":"(?i)(^|\\\\s)(at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=[.:\\\\s])","name":"keyword.control.flow.abap"},"generic_names":{"match":"[A-Z_a-z][0-9A-Z_a-z]*"},"keywords":{"patterns":[{"include":"#main_keywords"},{"include":"#text_symbols"},{"include":"#control_keywords"},{"include":"#keywords_followed_by_braces"}]},"keywords_followed_by_braces":{"captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"variable.other.abap"}},"match":"(?i)\\\\b(data|value|field-symbol|final|reference|resumable)\\\\((<?[/_a-z][/-9_a-z]*>?)\\\\)"},"logical_operator":{"match":"(?i)(?<=\\\\s)(not|or|and)(?=\\\\s)","name":"keyword.control.simple.abap"},"main_keywords":{"match":"(?i)(?<=^|\\\\s)(abap-source|abstract|accept|accepting|access|according|action|activation|actual|add|add-corresponding|adjacent|after|alias|aliases|all|allocate|amdp|analysis|analyzer|append|appending|application|archive|area|arithmetic|as|ascending|assert|assign|assigned|assigning|association|asynchronous|at|attributes|authority|authority-check|authorization|auto|back|background|backward|badi|base|before|begin|behavior|between|binary|bit|blanks??|blocks??|bound|boundaries|bounds|boxed|break|break-point|buffer|by|bypassing|byte|byte-order|call|calling|cast|casting|cds|centered|change|changing|channels|char-to-hex|character|check|checkbox|cid|circular|class|class-data|class-events|class-methods??|class-pool|cleanup|clear|clients??|clock|clone|close|cnt|code|collect|color|column|comments??|commit|common|communication|comparing|components??|compression|compute|concatenate|cond|condense|condition|connection|constants??|contexts??|controls??|conv|conversion|convert|copy|corresponding|count|country|cover|create|currency|current|cursor|customer-function|data|database|datainfo|dataset|date|daylight|ddl|deallocate|decimals|declarations|deep|default|deferred|define|delete|deleting|demand|descending|describe|destination|detail|determine|dialog|did|directory|discarding|display|display-mode|distance|distinct|divide|divide-corresponding|dummy|duplicates??|duration|during|dynpro|edit|editor-call|empty|enabled|enabling|encoding|end|end-enhancement-section|end-of-definition|end-of-page|end-of-selection|end-test-injection|end-test-seam|endenhancement|endexec|endfunction|endian|ending|endmodule|endprovide|endselect|endwith|enhancement|enhancement-point|enhancement-section|enhancements|entities|entity|entries|entry|enum|equiv|errors|escape|escaping|events??|exact|except|exception|exception-table|exceptions|excluding|exec|execute|exists|exit|exit-command|expanding|explicit|exponent|export|exporting|extended|extension|extract|fail|failed|features|fetch|field|field-groups|field-symbols|fields|file|fill|filters??|final|find|first|first-line|fixed-point|flush|following|for|format|forward|found|frames??|free|from|full|function|function-pool|generate|get|giving|graph|groups??|handler??|hashed|having|headers??|heading|help-id|help-request|hide|hint|hold|hotspot|icon|id|identification|identifier|ignore|ignoring|immediately|implemented|implicit|import|importing|in|inactive|incl|includes??|including|increment|index|index-line|indicators|infotypes|inheriting|init|initial|initialization|inner|input|insert|instances??|intensified|interface|interface-pool|interfaces|internal|intervals|into|inverse|inverted-date|is|job|join|keep|keeping|kernel|keys??|keywords|kind|language|last|late|layout|leading|leave|left|left-justified|legacy|length|let|levels??|like|line|line-count|line-selection|line-size|linefeed|lines|link|list|list-processing|listbox|load|load-of-program|locale??|locks??|log-point|logical|lower|mapped|mapping|margin|mark|mask|match|matchcode|maximum|members|memory|mesh|message|message-id|messages|messaging|methods??|mode|modif|modifier|modify|module|move|move-corresponding|multiply|multiply-corresponding|name|nametab|native|nested|nesting|new|new-line|new-page|new-section|next|no-display|no-extension|no-gaps??|no-grouping|no-heading|no-scrolling|no-sign|no-title|no-zero|nodes|non-unicode|non-unique|number|objects??|objmgr|obligatory|occurences??|occurrences??|occurs|of|offset|on|only|open|optional|options??|order|others|out|outer|output|output-length|overflow|overlay|pack|package|padding|page|parameter|parameter-table|parameters|part|partially|pcre|perform|performing|permissions|pf-status|places|pool|position|pragmas|preceding|precompiled|preferred|preserving|primary|print|print-control|private|privileged|procedure|process|program|property|protected|provide|push|pushbutton|put|query|queue-only|queueonly|quickinfo|radiobutton|raising|ranges??|read|read-only|received??|receiving|redefinition|reduce|ref|reference|refresh|regex|reject|renaming|replace|replacement|replacing|report|reported|request|requested|required|reserve|reset|resolution|respecting|response|restore|results??|resumable|resume|retry|return|returning|right|right-justified|rollback|rows|rp-provide-from-last|run|sap|sap-spool|save|saving|scan|screen|scroll|scroll-boundary|scrolling|search|seconds|section|select|select-options|selection|selection-screen|selection-sets??|selection-table|selections|send|separated??|session|set|shared|shift|shortdump|shortdump-id|sign|simple|simulation|single|size|skip|skipping|smart|some|sort|sortable|sorted|source|specified|split|spool|spots|sql|stable|stamp|standard|start-of-selection|starting|state|statements??|statics??|statusinfo|step|step-loop|stop|structures??|style|subkey|submatches|submit|subroutine|subscreen|substring|subtract|subtract-corresponding|suffix|sum|summary|supplied|supply|suppress|switch|symbol|syntax-check|syntax-trace|system-call|system-exceptions|tab|tabbed|tables??|tableview|tabstrip|target|tasks??|test|test-injection|test-seam|testing|text|textpool|then|throw|times??|title|titlebar|to|tokens|top-lines|top-of-page|trace-file|trace-table|trailing|transaction|transfer|transformation|translate|transporting|trmac|truncate|truncation|type|type-pools??|types|uline|unassign|unbounded|under|unicode|union|unique|unit|unix|unpack|until|unwind|up|update|upper|user|user-command|using|utf-8|uuid|valid|validate|value|value-request|values|vary|varying|version|via|visible|wait|when|where|windows??|with|with-heading|with-title|without|word|work|workspace|write|xml|zone)(?=[,.:\\\\s])","name":"keyword.control.simple.abap"},"operators":{"patterns":[{"include":"#other_operator"},{"include":"#arithmetic_operator"},{"include":"#comparison_operator"},{"include":"#logical_operator"}]},"other_operator":{"match":"(?<=\\\\s)(&&?|\\\\?=|\\\\+=|-=|/=|\\\\*=|&&=|&=)(?=\\\\s)","name":"keyword.control.simple.abap"},"reserved_names":{"match":"(?i)(?<=\\\\s)(me|super)(?=[,.\\\\s]|->)","name":"constant.language.abap"},"sql_functions":{"match":"(?i)(?<=\\\\s)(abap_system_timezone|abap_user_timezone|abs|add_days|add_months|allow_precision_loss|as_geo_json|avg|bintohex|cast|ceil|coalesce|concat_with_space|concat|corr_spearman|corr|count|currency_conversion|datn_add_days|datn_add_months|datn_days_between|dats_add_days|dats_add_months|dats_days_between|dats_from_datn|dats_is_valid|dats_tims_to_tstmp|dats_to_datn|dayname|days_between|dense_rank|division|div|extract_day|extract_hour|extract_minute|extract_month|extract_second|extract_year|first_value|floor|grouping|hextobin|initcap|instr|is_valid|lag|last_value|lead|left|length|like_regexpr|locate_regexpr_after|locate_regexpr|locate|lower|lpad|ltrim|max|median|min|mod|monthname|ntile|occurrences_regexpr|over|product|rank|replace_regexpr|replace|rigth|round|row_number|rpad|rtrim|stddev|string_agg|substring_regexpr|substring|sum|tims_from_timn|tims_is_valid|tims_to_timn|to_blob|to_clob|tstmp_add_seconds|tstmp_current_utctimestamp|tstmp_is_valid|tstmp_seconds_between|tstmp_to_dats|tstmp_to_dst|tstmp_to_tims|tstmpl_from_utcl|tstmpl_to_utcl|unit_conversion|upper|utcl_add_seconds|utcl_current|utcl_seconds_between|uuid|var|weekday)(?=\\\\()","name":"entity.name.function.sql.abap"},"sql_types":{"match":"(?i)(?<=\\\\s)(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=[()\\\\s])","name":"entity.name.type.sql.abap"},"system_fields":{"captures":{"1":{"name":"variable.language.abap"},"2":{"name":"variable.language.abap"}},"match":"(?i)\\\\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar[0-9]|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=[.\\\\s])"},"text_symbols":{"captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"constant.numeric.abap"}},"match":"(?i)(?<=^|\\\\s)(text)-([0-9A-Z]{1,3})(?=[,.:\\\\s])"}},"scopeName":"source.abap"}`))];export{e as default};