@a9n-shoji/rvw 0.1.0

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 (442) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/LICENSE +21 -0
  3. package/README.md +305 -0
  4. package/SECURITY.md +27 -0
  5. package/dist/cli-THIRD_PARTY_NOTICES.txt +1073 -0
  6. package/dist/cli.mjs +34989 -0
  7. package/dist/cli.mjs.map +7 -0
  8. package/dist/web/THIRD_PARTY_NOTICES.txt +5302 -0
  9. package/dist/web/assets/DocumentViewer-Bpo61duW.js +1560 -0
  10. package/dist/web/assets/MarkdownImagePlaceholder-6RCNwzwM.js +36 -0
  11. package/dist/web/assets/WalkthroughViewer-B5mozyWo.js +2 -0
  12. package/dist/web/assets/abap-CLvhMVsD.js +1 -0
  13. package/dist/web/assets/abnfDiagram-N423BO3Z-BK5Jn86N.js +1 -0
  14. package/dist/web/assets/actionscript-3-Cs6JJXT5.js +1 -0
  15. package/dist/web/assets/ada-C5qYipkI.js +1 -0
  16. package/dist/web/assets/ahk-CA9gdOdF.js +1 -0
  17. package/dist/web/assets/ahk2-_6rzW9BS.js +1 -0
  18. package/dist/web/assets/andromeeda-vGVdxbeo.js +1 -0
  19. package/dist/web/assets/angular-html-B8mrqUL5.js +1 -0
  20. package/dist/web/assets/angular-ts-Bzix210W.js +1 -0
  21. package/dist/web/assets/apache-U0d_L8uA.js +1 -0
  22. package/dist/web/assets/apex-KFGFyKwG.js +1 -0
  23. package/dist/web/assets/apl-Dhin1L29.js +1 -0
  24. package/dist/web/assets/applescript-CCn79oCD.js +1 -0
  25. package/dist/web/assets/ara-4CJ0cIlV.js +1 -0
  26. package/dist/web/assets/arc-Pry-7G1_.js +1 -0
  27. package/dist/web/assets/architecture-TIHT7OUA-CNniK53V.js +1 -0
  28. package/dist/web/assets/architectureDiagram-T3A2C74G-C4e8BOKi.js +36 -0
  29. package/dist/web/assets/array-BifhSqXX.js +1 -0
  30. package/dist/web/assets/asciidoc-SCjQUq34.js +1 -0
  31. package/dist/web/assets/asm-Cmm7eHzH.js +1 -0
  32. package/dist/web/assets/astro-B-4NNgOP.js +1 -0
  33. package/dist/web/assets/aurora-x-CDeNXAV0.js +1 -0
  34. package/dist/web/assets/awk-BWXHIvNe.js +1 -0
  35. package/dist/web/assets/ayu-dark-DluEY0Gj.js +1 -0
  36. package/dist/web/assets/ayu-light-C3h-C4tm.js +1 -0
  37. package/dist/web/assets/ayu-mirage-Bqwy1Gya.js +1 -0
  38. package/dist/web/assets/ballerina-B7ZEbQpA.js +1 -0
  39. package/dist/web/assets/bat-qdxAdBWQ.js +1 -0
  40. package/dist/web/assets/beancount-D-usSTwE.js +1 -0
  41. package/dist/web/assets/berry-DKpUyyne.js +1 -0
  42. package/dist/web/assets/bibtex-Ci_nEsc7.js +1 -0
  43. package/dist/web/assets/bicep-CUHmPFLl.js +1 -0
  44. package/dist/web/assets/bird2-CYIUgYqB.js +1 -0
  45. package/dist/web/assets/blade-C6Gedziy.js +1 -0
  46. package/dist/web/assets/blockDiagram-VBNYF7ZC-vGkPzqEX.js +132 -0
  47. package/dist/web/assets/bsl-_VjlB9mv.js +1 -0
  48. package/dist/web/assets/c-iCihek07.js +1 -0
  49. package/dist/web/assets/c3-D0apG41V.js +1 -0
  50. package/dist/web/assets/c4Diagram-5PPSVZJV-CFw7KfN7.js +10 -0
  51. package/dist/web/assets/cadence-CQ2zXKGN.js +1 -0
  52. package/dist/web/assets/cairo-DLTphjLi.js +1 -0
  53. package/dist/web/assets/catppuccin-frappe-C9Q5zVZY.js +1 -0
  54. package/dist/web/assets/catppuccin-latte-CtsyrtPq.js +1 -0
  55. package/dist/web/assets/catppuccin-macchiato-R8nAf1vR.js +1 -0
  56. package/dist/web/assets/catppuccin-mocha-DjuaAJKi.js +1 -0
  57. package/dist/web/assets/channel-D9mpRLqV.js +1 -0
  58. package/dist/web/assets/chapel-DmtgEXO_.js +1 -0
  59. package/dist/web/assets/chunk-2GRJ4B5K-CGyf7P1B.js +1 -0
  60. package/dist/web/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
  61. package/dist/web/assets/chunk-4I5QYGJK-B9gVU0IX.js +1 -0
  62. package/dist/web/assets/chunk-5RXB4S5H-CxKRHj4A.js +231 -0
  63. package/dist/web/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
  64. package/dist/web/assets/chunk-6Q2QTUOP-wTr3poCO.js +88 -0
  65. package/dist/web/assets/chunk-7BUUIJ7U-Bb538aSH.js +1 -0
  66. package/dist/web/assets/chunk-7Z6QIM7H-DO3-rKs9.js +10 -0
  67. package/dist/web/assets/chunk-GF5L2VYU-Hf7UNoHx.js +206 -0
  68. package/dist/web/assets/chunk-I66GZJ75-BsgBf6m-.js +127 -0
  69. package/dist/web/assets/chunk-JQJVKLGR-C8FDquLg.js +156 -0
  70. package/dist/web/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
  71. package/dist/web/assets/chunk-KBJHAD2P-32ugraBx.js +1 -0
  72. package/dist/web/assets/chunk-KEIR6QF5-BICK3FdT.js +161 -0
  73. package/dist/web/assets/chunk-NSK5VX7P-BRGpsxOZ.js +2 -0
  74. package/dist/web/assets/chunk-QR6OTTB3-C1LfXMA9.js +62 -0
  75. package/dist/web/assets/chunk-RYQCIY6F-BsoV8yK2.js +1 -0
  76. package/dist/web/assets/chunk-UBXNYLIW-CjykxAbY.js +1 -0
  77. package/dist/web/assets/chunk-W5SLKNZC-DTzd_oWg.js +1 -0
  78. package/dist/web/assets/chunk-WRU74C26-BOKlupGY.js +70 -0
  79. package/dist/web/assets/chunk-XXDRQBXY-DqAYeljN.js +1 -0
  80. package/dist/web/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
  81. package/dist/web/assets/clarity-CtfBBspg.js +1 -0
  82. package/dist/web/assets/classDiagram-JCYQIIEL-1i-imYTn.js +1 -0
  83. package/dist/web/assets/classDiagram-v2-OCEON4UE-1i-imYTn.js +1 -0
  84. package/dist/web/assets/clojure-DqKBuwfJ.js +1 -0
  85. package/dist/web/assets/cmake-Bj61d0ZC.js +1 -0
  86. package/dist/web/assets/cobol-Cw2-KvLW.js +1 -0
  87. package/dist/web/assets/codeowners-C8r90Shi.js +1 -0
  88. package/dist/web/assets/codeql-oeQT6MSM.js +1 -0
  89. package/dist/web/assets/coffee-CiiSLhB6.js +1 -0
  90. package/dist/web/assets/common-lisp-Cv5bFMCO.js +1 -0
  91. package/dist/web/assets/coq-DuBRPxYg.js +1 -0
  92. package/dist/web/assets/cose-bilkent-JH36ORCC-lJEhNiw_.js +1 -0
  93. package/dist/web/assets/cpp-71xkOQct.js +1 -0
  94. package/dist/web/assets/crystal-DGPAtLeY.js +1 -0
  95. package/dist/web/assets/csharp-oqKa8noW.js +1 -0
  96. package/dist/web/assets/css-CNuuLpMC.js +1 -0
  97. package/dist/web/assets/csv-Dx-8-gkx.js +1 -0
  98. package/dist/web/assets/cue-CE9AQfxI.js +1 -0
  99. package/dist/web/assets/cynefin-VYW2F7L2-FyhSpENE.js +1 -0
  100. package/dist/web/assets/cynefinDiagram-MW4NZA55-uFUTQ3i8.js +62 -0
  101. package/dist/web/assets/cypher-ClKdZ_lG.js +1 -0
  102. package/dist/web/assets/cytoscape.esm-B-NFISlW.js +321 -0
  103. package/dist/web/assets/d-qD-0Kul2.js +1 -0
  104. package/dist/web/assets/dagre-Buvkdvvj.js +1 -0
  105. package/dist/web/assets/dagre-VZM6K2ZE-BlESSHVb.js +4 -0
  106. package/dist/web/assets/dark-plus-Cs2F2srj.js +1 -0
  107. package/dist/web/assets/dart-CnvKMtbv.js +1 -0
  108. package/dist/web/assets/dax-BkyTk9wS.js +1 -0
  109. package/dist/web/assets/defaultLocale-BFoDCU3G.js +1 -0
  110. package/dist/web/assets/desktop-Dlh5hvp9.js +1 -0
  111. package/dist/web/assets/diagram-7IWD3JNH-CVtjyPlA.js +30 -0
  112. package/dist/web/assets/diagram-B4RE2ZJO-B3alEF-G.js +3 -0
  113. package/dist/web/assets/diagram-LBJQPF4R-Dz-CRzSx.js +24 -0
  114. package/dist/web/assets/diagram-Q27KOJAE-B7x_WZC5.js +24 -0
  115. package/dist/web/assets/diagram-UB23O5K3-Di7vh04u.js +41 -0
  116. package/dist/web/assets/diff-woXpYk--.js +1 -0
  117. package/dist/web/assets/dist-v5Q1xZ2K.js +1 -0
  118. package/dist/web/assets/docker-IyjqRm3v.js +1 -0
  119. package/dist/web/assets/dotenv-_5a1GRtc.js +1 -0
  120. package/dist/web/assets/dracula-BHWKrbxM.js +1 -0
  121. package/dist/web/assets/dracula-soft-5eyTD99u.js +1 -0
  122. package/dist/web/assets/dream-maker-DW3nJb8Q.js +1 -0
  123. package/dist/web/assets/ebnfDiagram-BXEA7PRR-CVXtwzOH.js +1 -0
  124. package/dist/web/assets/edge-DCY0a-ow.js +1 -0
  125. package/dist/web/assets/elixir-DP304Xio.js +1 -0
  126. package/dist/web/assets/elm-o4NJxfws.js +1 -0
  127. package/dist/web/assets/emacs-lisp-c_oH4hRZ.js +1 -0
  128. package/dist/web/assets/erDiagram-JOGREHBK-C73ySvzv.js +85 -0
  129. package/dist/web/assets/erb-C7MPl934.js +1 -0
  130. package/dist/web/assets/erlang-Cphh6RMH.js +1 -0
  131. package/dist/web/assets/eventmodeling-45OFAUF4-lqF-K7-h.js +1 -0
  132. package/dist/web/assets/everforest-dark-sB-x3p7T.js +1 -0
  133. package/dist/web/assets/everforest-light-Df2xbC6M.js +1 -0
  134. package/dist/web/assets/fennel-DQxkIbk2.js +1 -0
  135. package/dist/web/assets/fish-BJitypiv.js +1 -0
  136. package/dist/web/assets/flowDiagram-UKHOOZJN-BjY-fuKE.js +1 -0
  137. package/dist/web/assets/fluent-C03EYrpw.js +1 -0
  138. package/dist/web/assets/fortran-fixed-form-DEKoE2YW.js +1 -0
  139. package/dist/web/assets/fortran-free-form-CYNrtFtB.js +1 -0
  140. package/dist/web/assets/fsharp-D13ZGOAj.js +1 -0
  141. package/dist/web/assets/ganttDiagram-PKOTCBZU-DnFdkwyo.js +292 -0
  142. package/dist/web/assets/gdresource-xMC7jr7x.js +1 -0
  143. package/dist/web/assets/gdscript-DYvRD3hg.js +1 -0
  144. package/dist/web/assets/gdshader-CBce3t8t.js +1 -0
  145. package/dist/web/assets/genie-CV2tkWYe.js +1 -0
  146. package/dist/web/assets/gherkin-DExj1W_8.js +1 -0
  147. package/dist/web/assets/git-commit-BSykSTBG.js +1 -0
  148. package/dist/web/assets/git-rebase-BDPpS8w6.js +1 -0
  149. package/dist/web/assets/gitGraph-TEB2WS4Q-D9IlUiGc.js +1 -0
  150. package/dist/web/assets/gitGraphDiagram-DS77QQ5N-C8RcHadx.js +106 -0
  151. package/dist/web/assets/github-dark-C-LZuMrd.js +1 -0
  152. package/dist/web/assets/github-dark-default-DXG-b-1a.js +1 -0
  153. package/dist/web/assets/github-dark-dimmed-Bx1FflLF.js +1 -0
  154. package/dist/web/assets/github-dark-high-contrast-B_tTalzw.js +1 -0
  155. package/dist/web/assets/github-light-EUqPIrTm.js +1 -0
  156. package/dist/web/assets/github-light-default-BXViO-2h.js +1 -0
  157. package/dist/web/assets/github-light-high-contrast-B68TUdTA.js +1 -0
  158. package/dist/web/assets/gleam-CSRkHgEL.js +1 -0
  159. package/dist/web/assets/glimmer-js-BONyzAsu.js +1 -0
  160. package/dist/web/assets/glimmer-ts-f9c0GCOe.js +1 -0
  161. package/dist/web/assets/glsl-D5MA2a_X.js +1 -0
  162. package/dist/web/assets/gn-ilITqXS6.js +1 -0
  163. package/dist/web/assets/gnuplot-7GGW24-e.js +1 -0
  164. package/dist/web/assets/go-rLFTqkRN.js +1 -0
  165. package/dist/web/assets/graphlib-DS17s2tU.js +1 -0
  166. package/dist/web/assets/graphql-Ctjuxyvl.js +1 -0
  167. package/dist/web/assets/groovy-CacY0gHj.js +1 -0
  168. package/dist/web/assets/gruvbox-dark-hard-C820rvS2.js +1 -0
  169. package/dist/web/assets/gruvbox-dark-medium-BPjhmG05.js +1 -0
  170. package/dist/web/assets/gruvbox-dark-soft-MrdJrrXF.js +1 -0
  171. package/dist/web/assets/gruvbox-light-hard-BC_s9l72.js +1 -0
  172. package/dist/web/assets/gruvbox-light-medium-BAWPOn9u.js +1 -0
  173. package/dist/web/assets/gruvbox-light-soft-BSMLrYjP.js +1 -0
  174. package/dist/web/assets/hack-Dh_ZLRbs.js +1 -0
  175. package/dist/web/assets/haml-CwEpbK1d.js +1 -0
  176. package/dist/web/assets/handlebars-ryMP1rBR.js +1 -0
  177. package/dist/web/assets/haskell-D8IpX4py.js +1 -0
  178. package/dist/web/assets/haxe-C8oCnwJJ.js +1 -0
  179. package/dist/web/assets/hcl-Dh228itO.js +1 -0
  180. package/dist/web/assets/hjson-CxZEssPk.js +1 -0
  181. package/dist/web/assets/hlsl-Cvrh5tZx.js +1 -0
  182. package/dist/web/assets/horizon-CE9ld1lL.js +1 -0
  183. package/dist/web/assets/horizon-bright-DSNQnXHK.js +1 -0
  184. package/dist/web/assets/houston-CsvMBhTu.js +1 -0
  185. package/dist/web/assets/html-XwrE-1r6.js +1 -0
  186. package/dist/web/assets/html-derivative-i4STDFnl.js +1 -0
  187. package/dist/web/assets/http-kmH8AyfE.js +1 -0
  188. package/dist/web/assets/hurl-DCZHXKU4.js +1 -0
  189. package/dist/web/assets/hxml-Dcm88srW.js +1 -0
  190. package/dist/web/assets/hy-CZbG8q4J.js +1 -0
  191. package/dist/web/assets/imba-DsUTQ-LC.js +1 -0
  192. package/dist/web/assets/index-B8_aim9s.css +1 -0
  193. package/dist/web/assets/index-BWaG4LjN.js +355 -0
  194. package/dist/web/assets/info-DKCQHKI2-D8vjRWaN.js +1 -0
  195. package/dist/web/assets/infoDiagram-6WML65LV-JfN0KNPZ.js +2 -0
  196. package/dist/web/assets/ini-B5eOa1yu.js +1 -0
  197. package/dist/web/assets/init-C-OQMol4.js +1 -0
  198. package/dist/web/assets/ishikawaDiagram-WSZJBQD7-C2AwcyHY.js +70 -0
  199. package/dist/web/assets/java-DdHNQ9hk.js +1 -0
  200. package/dist/web/assets/javascript-obGGvMPs.js +1 -0
  201. package/dist/web/assets/jinja-B-tLrNsM.js +1 -0
  202. package/dist/web/assets/jison-CBjhYtSs.js +1 -0
  203. package/dist/web/assets/journeyDiagram-NVQOT4AX-spVPyB4C.js +139 -0
  204. package/dist/web/assets/json-DAgxKhMr.js +1 -0
  205. package/dist/web/assets/json5-BR5RXkoi.js +1 -0
  206. package/dist/web/assets/jsonc-CYpm1nAK.js +1 -0
  207. package/dist/web/assets/jsonl-CmCQp5Yx.js +1 -0
  208. package/dist/web/assets/jsonnet-CJTPZ8u_.js +1 -0
  209. package/dist/web/assets/jssm-DXw9l8Rf.js +1 -0
  210. package/dist/web/assets/jsx-gTgmArGx.js +1 -0
  211. package/dist/web/assets/julia-CXJVy74_.js +1 -0
  212. package/dist/web/assets/just-B9Xn_Dp4.js +1 -0
  213. package/dist/web/assets/kanagawa-dragon-Bozd7klA.js +1 -0
  214. package/dist/web/assets/kanagawa-lotus-BmuOG9ZW.js +1 -0
  215. package/dist/web/assets/kanagawa-wave-BML5mF2J.js +1 -0
  216. package/dist/web/assets/kanban-definition-27J2QSJJ-DovZ9YwS.js +89 -0
  217. package/dist/web/assets/katex-CXMH3UgJ.js +257 -0
  218. package/dist/web/assets/kdl-CsD5j6eV.js +1 -0
  219. package/dist/web/assets/kotlin-DhhofPvG.js +1 -0
  220. package/dist/web/assets/kusto-C7mF5XQf.js +1 -0
  221. package/dist/web/assets/laserwave-C_8bwKvT.js +1 -0
  222. package/dist/web/assets/latex-o9DRzaEe.js +1 -0
  223. package/dist/web/assets/lean-CewbzKMR.js +1 -0
  224. package/dist/web/assets/less-DVTAwKKz.js +1 -0
  225. package/dist/web/assets/light-plus-DVQuIRkW.js +1 -0
  226. package/dist/web/assets/line-CLgOPnWr.js +1 -0
  227. package/dist/web/assets/linear-DmucvK78.js +1 -0
  228. package/dist/web/assets/liquid-G0MH4h_m.js +1 -0
  229. package/dist/web/assets/llvm-DqHOMS-s.js +1 -0
  230. package/dist/web/assets/log-BNLmms1o.js +1 -0
  231. package/dist/web/assets/logo-Cluzi2Zq.js +1 -0
  232. package/dist/web/assets/lua-FONpmTUP.js +1 -0
  233. package/dist/web/assets/luau-C2pBCSgt.js +1 -0
  234. package/dist/web/assets/make-Dixweg8N.js +1 -0
  235. package/dist/web/assets/map-BaFkSB1l.js +1 -0
  236. package/dist/web/assets/markdown-BYOwaDjH.js +1 -0
  237. package/dist/web/assets/marko-DV5GrDmo.js +1 -0
  238. package/dist/web/assets/material-theme-Bm3Qr25_.js +1 -0
  239. package/dist/web/assets/material-theme-darker-2IIEA8gg.js +1 -0
  240. package/dist/web/assets/material-theme-lighter-uhdI0v04.js +1 -0
  241. package/dist/web/assets/material-theme-ocean-CHQ94UKr.js +1 -0
  242. package/dist/web/assets/material-theme-palenight-B5W6OYN7.js +1 -0
  243. package/dist/web/assets/matlab-D7qyCx1q.js +1 -0
  244. package/dist/web/assets/mdc-BKfPFPZw.js +1 -0
  245. package/dist/web/assets/mdx-DQZ5AkYe.js +1 -0
  246. package/dist/web/assets/mermaid-BxpfTIzt.js +1 -0
  247. package/dist/web/assets/mermaid-parser.core-DyixRB1x.js +7 -0
  248. package/dist/web/assets/mermaid.core-BqpBcETK.js +42 -0
  249. package/dist/web/assets/min-dark-BSWPekZh.js +1 -0
  250. package/dist/web/assets/min-light-DDpmG2fV.js +1 -0
  251. package/dist/web/assets/mindmap-definition-FAOFIHXS-BbPO8pns.js +96 -0
  252. package/dist/web/assets/mipsasm-BMqwQI7S.js +1 -0
  253. package/dist/web/assets/mojo-CFuIV2fl.js +1 -0
  254. package/dist/web/assets/monokai-B_bV9PQ9.js +1 -0
  255. package/dist/web/assets/moonbit-DgjMoLWr.js +1 -0
  256. package/dist/web/assets/move-BYnGhZoM.js +1 -0
  257. package/dist/web/assets/narrat-_X_XdTYD.js +1 -0
  258. package/dist/web/assets/nextflow-BJtWHP5T.js +1 -0
  259. package/dist/web/assets/nextflow-groovy-DJMQeKeT.js +1 -0
  260. package/dist/web/assets/nginx-BTMw9COX.js +1 -0
  261. package/dist/web/assets/night-owl-DhmEMT88.js +1 -0
  262. package/dist/web/assets/night-owl-light-eJ-hLW7d.js +1 -0
  263. package/dist/web/assets/nim-B6yJ_yaC.js +1 -0
  264. package/dist/web/assets/nix-IvuFDN5E.js +1 -0
  265. package/dist/web/assets/nord-Cb4Vim4T.js +1 -0
  266. package/dist/web/assets/nsis-CjNLYCLg.js +1 -0
  267. package/dist/web/assets/nushell-DHYfO66s.js +1 -0
  268. package/dist/web/assets/objective-c-D1A_Heim.js +1 -0
  269. package/dist/web/assets/objective-cpp-BsSzOQcm.js +1 -0
  270. package/dist/web/assets/ocaml-O90oeIOV.js +1 -0
  271. package/dist/web/assets/odin-B1RWQWA5.js +1 -0
  272. package/dist/web/assets/one-dark-pro-CLwyXe_n.js +1 -0
  273. package/dist/web/assets/one-light-D7Lr4KcI.js +1 -0
  274. package/dist/web/assets/openscad-BUDT5pXO.js +1 -0
  275. package/dist/web/assets/ordinal-BDEzSJ7C.js +1 -0
  276. package/dist/web/assets/org-Ddi8Gs6E.js +1 -0
  277. package/dist/web/assets/packet-7NZHBO7P-aNovgfCM.js +1 -0
  278. package/dist/web/assets/pascal-4ZHwLPI5.js +1 -0
  279. package/dist/web/assets/path-fybaL0A-.js +1 -0
  280. package/dist/web/assets/pegDiagram-VL7TDLO6-2e4z4Op-.js +1 -0
  281. package/dist/web/assets/perl-DEgXgjuC.js +1 -0
  282. package/dist/web/assets/php-B9UPq-vz.js +1 -0
  283. package/dist/web/assets/pie-RZYD4A2V-DNId-ti0.js +1 -0
  284. package/dist/web/assets/pieDiagram-7S7Q4E2Y-D5ZE6kTv.js +39 -0
  285. package/dist/web/assets/pierre-dark-CpLgRqie.js +1 -0
  286. package/dist/web/assets/pierre-dark-protanopia-deuteranopia-B35FxJx-.js +1 -0
  287. package/dist/web/assets/pierre-dark-soft-kZQmAZld.js +1 -0
  288. package/dist/web/assets/pierre-dark-tritanopia-CpjhbsIL.js +1 -0
  289. package/dist/web/assets/pierre-dark-vibrant-CpQYzh95.js +1 -0
  290. package/dist/web/assets/pierre-light-CoaEpmwp.js +1 -0
  291. package/dist/web/assets/pierre-light-protanopia-deuteranopia-0fSaH845.js +1 -0
  292. package/dist/web/assets/pierre-light-soft-lWLdNTOI.js +1 -0
  293. package/dist/web/assets/pierre-light-tritanopia-CEbqgOJL.js +1 -0
  294. package/dist/web/assets/pierre-light-vibrant-D80Fkn33.js +1 -0
  295. package/dist/web/assets/pkl-ot-7Btpt.js +1 -0
  296. package/dist/web/assets/plastic-DQwYfKfQ.js +1 -0
  297. package/dist/web/assets/plsql-DGHpHOYJ.js +1 -0
  298. package/dist/web/assets/po-BiJDBrnU.js +1 -0
  299. package/dist/web/assets/poimandres-DRFjx7u4.js +1 -0
  300. package/dist/web/assets/polar-C7UOKdEL.js +1 -0
  301. package/dist/web/assets/postcss-BXeXVLqQ.js +1 -0
  302. package/dist/web/assets/powerquery-DNMTfnFr.js +1 -0
  303. package/dist/web/assets/powershell-CCSX75yM.js +1 -0
  304. package/dist/web/assets/prisma-DMgNhnYS.js +1 -0
  305. package/dist/web/assets/prolog-iXnhIJG7.js +1 -0
  306. package/dist/web/assets/proto-DB4EqR-F.js +1 -0
  307. package/dist/web/assets/pug-DkgDHZci.js +1 -0
  308. package/dist/web/assets/puppet-CDv2pdJW.js +1 -0
  309. package/dist/web/assets/purescript-9MfHhQsQ.js +1 -0
  310. package/dist/web/assets/python-gzcpVVnB.js +1 -0
  311. package/dist/web/assets/qml-_a-QhfPD.js +1 -0
  312. package/dist/web/assets/qmldir-DCQb3MpD.js +1 -0
  313. package/dist/web/assets/qss-Fe1Jh2GI.js +1 -0
  314. package/dist/web/assets/quadrantDiagram-CIZ2JOQS-BwxDvFqg.js +7 -0
  315. package/dist/web/assets/r-BHcO8Vjq.js +1 -0
  316. package/dist/web/assets/racket-DcIDlBhZ.js +1 -0
  317. package/dist/web/assets/radar-I7S5WNFK-C2R9CqOg.js +1 -0
  318. package/dist/web/assets/railroad-3IZDKUUU-BcNatsBm.js +1 -0
  319. package/dist/web/assets/railroad-abnf-AHOZXSZD-BZPZwTjc.js +1 -0
  320. package/dist/web/assets/railroad-ebnf-EBAXGLYW-CpdNBsnS.js +1 -0
  321. package/dist/web/assets/railroad-peg-LSFZ7HO6-R8jDubES.js +1 -0
  322. package/dist/web/assets/railroadDiagram-AXF67PYL-CGJ_SZmV.js +1 -0
  323. package/dist/web/assets/raku-B3gFvitq.js +1 -0
  324. package/dist/web/assets/razor-BMJ0eI3p.js +1 -0
  325. package/dist/web/assets/rbs-C0MpOrj4.js +1 -0
  326. package/dist/web/assets/red-DX1BQOs8.js +1 -0
  327. package/dist/web/assets/reg-CRGYupPL.js +1 -0
  328. package/dist/web/assets/regexp-DR20uMnK.js +1 -0
  329. package/dist/web/assets/rel-BtDbiS_P.js +1 -0
  330. package/dist/web/assets/requirementDiagram-LRYGKXZP-BedGrIx6.js +84 -0
  331. package/dist/web/assets/riscv-Ckw8ddFX.js +1 -0
  332. package/dist/web/assets/rolldown-runtime-hePW80VL.js +1 -0
  333. package/dist/web/assets/ron-VUp2lXgN.js +1 -0
  334. package/dist/web/assets/rose-pine-aMsaMD1D.js +1 -0
  335. package/dist/web/assets/rose-pine-dawn-8PwUyIlP.js +1 -0
  336. package/dist/web/assets/rose-pine-moon-DO-qXg-I.js +1 -0
  337. package/dist/web/assets/rosmsg-CAekHB0j.js +1 -0
  338. package/dist/web/assets/rough.esm-Dy-Kn_BL.js +1 -0
  339. package/dist/web/assets/rst-BQCbfb9V.js +1 -0
  340. package/dist/web/assets/ruby-B8JcIHv0.js +1 -0
  341. package/dist/web/assets/rust-Cfkwpbl8.js +1 -0
  342. package/dist/web/assets/sankeyDiagram-W5VNT64P-zK0XX_8d.js +40 -0
  343. package/dist/web/assets/sas-CBpMWA2M.js +1 -0
  344. package/dist/web/assets/sass-DXrisJhu.js +1 -0
  345. package/dist/web/assets/scala-BiFt_7mu.js +1 -0
  346. package/dist/web/assets/scheme-DQCgrYNe.js +1 -0
  347. package/dist/web/assets/scss-YesllqfO.js +1 -0
  348. package/dist/web/assets/sdbl-bTVj8UrX.js +1 -0
  349. package/dist/web/assets/sequenceDiagram-SI44F4Z6-DbI4quME.js +162 -0
  350. package/dist/web/assets/shaderlab-TOUzSsQk.js +1 -0
  351. package/dist/web/assets/shellscript-Da78Ox-3.js +1 -0
  352. package/dist/web/assets/shellsession-CVsQGYfZ.js +1 -0
  353. package/dist/web/assets/sizeCapture-X5ZJPWSS-B0uUizjq.js +1 -0
  354. package/dist/web/assets/slack-dark-DnToyrRv.js +1 -0
  355. package/dist/web/assets/slack-ochin-B2OO5cIa.js +1 -0
  356. package/dist/web/assets/smalltalk-BHpQb5nM.js +1 -0
  357. package/dist/web/assets/smithy-Dgaz7aur.js +1 -0
  358. package/dist/web/assets/snazzy-light-4G7pJPwS.js +1 -0
  359. package/dist/web/assets/solarized-dark-UdsmMDCL.js +1 -0
  360. package/dist/web/assets/solarized-light-C1IUL_tW.js +1 -0
  361. package/dist/web/assets/solidity-Bj7E1mRn.js +1 -0
  362. package/dist/web/assets/soy-DEd-qcad.js +1 -0
  363. package/dist/web/assets/sparql-D_iOobhT.js +1 -0
  364. package/dist/web/assets/splunk-BC2Px7Mm.js +1 -0
  365. package/dist/web/assets/sql-DdD7vxS4.js +1 -0
  366. package/dist/web/assets/src-B6xuSHsQ.js +1 -0
  367. package/dist/web/assets/ssh-config-BgfXC-Er.js +1 -0
  368. package/dist/web/assets/stata-CMv7m7Gi.js +1 -0
  369. package/dist/web/assets/stateDiagram-OKZ733FA-5dL9K4ba.js +1 -0
  370. package/dist/web/assets/stateDiagram-v2-UEYNNEHI-ChRa8APT.js +1 -0
  371. package/dist/web/assets/stylus-B6D30XZt.js +1 -0
  372. package/dist/web/assets/surrealql-BZoq2lXR.js +1 -0
  373. package/dist/web/assets/svelte-Bj3Hmc9F.js +1 -0
  374. package/dist/web/assets/swift-CyEgAFGc.js +1 -0
  375. package/dist/web/assets/swimlanes-SLNWSIFB-CnNbnSFl.js +2 -0
  376. package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-QmkQO3yp.js +8 -0
  377. package/dist/web/assets/synthwave-84-nFMaYfgc.js +1 -0
  378. package/dist/web/assets/system-verilog-Dh5ihWbf.js +1 -0
  379. package/dist/web/assets/systemd-BxMlprV5.js +1 -0
  380. package/dist/web/assets/talonscript-CohzipZa.js +1 -0
  381. package/dist/web/assets/tasl-DMoTqEGO.js +1 -0
  382. package/dist/web/assets/tcl-CZd0xW_V.js +1 -0
  383. package/dist/web/assets/templ-TjxbArHn.js +1 -0
  384. package/dist/web/assets/terraform-DswuEJGm.js +1 -0
  385. package/dist/web/assets/tex-BK-H2Wn4.js +1 -0
  386. package/dist/web/assets/timeline-definition-Z64GVDOM-ht7Pc9Lh.js +120 -0
  387. package/dist/web/assets/tokyo-night-oM2G3aXe.js +1 -0
  388. package/dist/web/assets/toml-CcmNWLt0.js +1 -0
  389. package/dist/web/assets/treeView-QDETBFTQ-B-GVm6gh.js +1 -0
  390. package/dist/web/assets/treemap-6X3UGDF4-DZ5ImJjV.js +1 -0
  391. package/dist/web/assets/ts-tags-Cc5do7zu.js +1 -0
  392. package/dist/web/assets/tsv-sltzmVWM.js +1 -0
  393. package/dist/web/assets/tsx-CUOciP0b.js +1 -0
  394. package/dist/web/assets/turtle-ByJddavk.js +1 -0
  395. package/dist/web/assets/twig-BVSnuTf-.js +1 -0
  396. package/dist/web/assets/typescript-BydbNFcO.js +1 -0
  397. package/dist/web/assets/typespec-BRdr0IET.js +1 -0
  398. package/dist/web/assets/typst-DI99ib-x.js +1 -0
  399. package/dist/web/assets/v-DBj4K9d_.js +1 -0
  400. package/dist/web/assets/vala-zf12oZj6.js +1 -0
  401. package/dist/web/assets/vb-DOwzaHZ0.js +1 -0
  402. package/dist/web/assets/vennDiagram-T6HMQDX7-DVnsZuuc.js +34 -0
  403. package/dist/web/assets/verilog-B2gwz-sJ.js +1 -0
  404. package/dist/web/assets/vesper-DdrHHSXu.js +1 -0
  405. package/dist/web/assets/vhdl-BroJfC0k.js +1 -0
  406. package/dist/web/assets/viml-DvXPmvsu.js +1 -0
  407. package/dist/web/assets/vitesse-black-fwtXNY1n.js +1 -0
  408. package/dist/web/assets/vitesse-dark-BZCL-v6S.js +1 -0
  409. package/dist/web/assets/vitesse-light-VbXTXTou.js +1 -0
  410. package/dist/web/assets/vue-BNQF7r6F.js +1 -0
  411. package/dist/web/assets/vue-html-DkKkQnZL.js +1 -0
  412. package/dist/web/assets/vue-vine-DFaKYU4X.js +1 -0
  413. package/dist/web/assets/vyper-CgoNMtux.js +1 -0
  414. package/dist/web/assets/wardley-OPB4EBWU-CLk0x8RD.js +1 -0
  415. package/dist/web/assets/wardleyDiagram-T6FBY63Y-BgtlhJqk.js +78 -0
  416. package/dist/web/assets/wasm-BnjxR4X6.js +1 -0
  417. package/dist/web/assets/wasm-ByWQv1Qj.js +1 -0
  418. package/dist/web/assets/wenyan-C8pVoKbM.js +1 -0
  419. package/dist/web/assets/wgsl-BsKzXJz4.js +1 -0
  420. package/dist/web/assets/wikitext-ClFFjSW2.js +1 -0
  421. package/dist/web/assets/wit-DdvCle-K.js +1 -0
  422. package/dist/web/assets/wolfram-DLL8P-h_.js +1 -0
  423. package/dist/web/assets/xml-BlnrEAEy.js +1 -0
  424. package/dist/web/assets/xsl-BOPS8gLt.js +1 -0
  425. package/dist/web/assets/xychartDiagram-ELKLHX3M-CXEN46LP.js +7 -0
  426. package/dist/web/assets/yaml-Du_6cdrH.js +1 -0
  427. package/dist/web/assets/zenscript-BnlCZFoB.js +1 -0
  428. package/dist/web/assets/zig-CMLA9XwU.js +1 -0
  429. package/dist/web/index.html +15 -0
  430. package/migrations/001_initial.sql +96 -0
  431. package/migrations/002_commit_model.sql +120 -0
  432. package/migrations/003_editable_comment_posts.sql +36 -0
  433. package/migrations/004_walkthroughs.sql +25 -0
  434. package/migrations/005_walkthrough_comments.sql +53 -0
  435. package/migrations/006_theme_preference.sql +2 -0
  436. package/migrations/007_file_level_walkthrough_references.sql +24 -0
  437. package/migrations/008_walkthrough_line_comments.sql +62 -0
  438. package/package.json +92 -0
  439. package/skills/rvw/SKILL.md +133 -0
  440. package/skills/rvw/agents/openai.yaml +4 -0
  441. package/skills/rvw-walkthrough/SKILL.md +106 -0
  442. package/skills/rvw-walkthrough/agents/openai.yaml +4 -0
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./java-DdHNQ9hk.js";var n=e({default:()=>i}),r=Object.freeze(JSON.parse(`{"displayName":"XML","name":"xml","patterns":[{"begin":"(<\\\\?)\\\\s*([-0-9A-Z_a-z]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"}},"end":"(\\\\?>)","name":"meta.tag.preprocessor.xml","patterns":[{"match":" ([-A-Za-z]+)","name":"entity.other.attribute-name.xml"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"begin":"(<!)(DOCTYPE)\\\\s+([:A-Z_a-z][-.0-:A-Z_a-z]*)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.doctype.xml"},"3":{"name":"variable.language.documentroot.xml"}},"end":"\\\\s*(>)","name":"meta.tag.sgml.doctype.xml","patterns":[{"include":"#internalSubset"}]},{"include":"#comments"},{"begin":"(<)((?:([-0-9A-Z_a-z]+)(:))?([-0-:A-Z_a-z]+))(?=(\\\\s[^>]*)?></\\\\2>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.xml"},"3":{"name":"entity.name.tag.namespace.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)(</)((?:([-0-9A-Z_a-z]+)(:))?([-0-:A-Z_a-z]+))(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"punctuation.definition.tag.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"entity.name.tag.namespace.xml"},"5":{"name":"punctuation.separator.namespace.xml"},"6":{"name":"entity.name.tag.localname.xml"},"7":{"name":"punctuation.definition.tag.xml"}},"name":"meta.tag.no-content.xml","patterns":[{"include":"#tagStuff"}]},{"begin":"(</?)(?:([-.\\\\w]+)((:)))?([-.:\\\\w]+)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(/?>)","name":"meta.tag.xml","patterns":[{"include":"#tagStuff"}]},{"include":"#entity"},{"include":"#bare-ampersand"},{"begin":"<%@","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java-props.embedded.xml","patterns":[{"match":"page|include|taglib","name":"keyword.other.page-props.xml"}]},{"begin":"<%[!=]?(?!--)","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.xml"}},"end":"(?!--)%>","endCaptures":{"0":{"name":"punctuation.section.embedded.end.xml"}},"name":"source.java.embedded.xml","patterns":[{"include":"source.java"}]},{"begin":"<!\\\\[CDATA\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"]]>","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.unquoted.cdata.xml"}],"repository":{"EntityDecl":{"begin":"(<!)(ENTITY)\\\\s+(%\\\\s+)?([:A-Z_a-z][-.0-:A-Z_a-z]*)(\\\\s+(?:SYSTEM|PUBLIC)\\\\s+)?","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"keyword.other.entity.xml"},"3":{"name":"punctuation.definition.entity.xml"},"4":{"name":"variable.language.entity.xml"},"5":{"name":"keyword.other.entitytype.xml"}},"end":"(>)","patterns":[{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},"bare-ampersand":{"match":"&","name":"invalid.illegal.bad-ampersand.xml"},"comments":{"patterns":[{"begin":"<%--","captures":{"0":{"name":"punctuation.definition.comment.xml"},"end":"--%>","name":"comment.block.xml"}},{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.xml"}},"end":"-->","name":"comment.block.xml","patterns":[{"begin":"--(?!>)","captures":{"0":{"name":"invalid.illegal.bad-comments-or-CDATA.xml"}}}]}]},"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"entity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(&)([:A-Z_a-z][-.0-:A-Z_a-z]*|#[0-9]+|#x\\\\h+)(;)","name":"constant.character.entity.xml"},"internalSubset":{"begin":"(\\\\[)","captures":{"1":{"name":"punctuation.definition.constant.xml"}},"end":"(])","name":"meta.internalsubset.xml","patterns":[{"include":"#EntityDecl"},{"include":"#parameterEntity"},{"include":"#comments"}]},"parameterEntity":{"captures":{"1":{"name":"punctuation.definition.constant.xml"},"3":{"name":"punctuation.definition.constant.xml"}},"match":"(%)([:A-Z_a-z][-.0-:A-Z_a-z]*)(;)","name":"constant.character.parameter-entity.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml","patterns":[{"include":"#entity"},{"include":"#bare-ampersand"}]},"tagStuff":{"patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":"(?:^|\\\\s+)(?:([-.\\\\w]+)((:)))?([-.:\\\\w]+)\\\\s*="},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]}},"scopeName":"text.xml","embeddedLangs":["java"]}`)),i=[...t,r];export{n,i as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./xml-BlnrEAEy.js";var t=Object.freeze(JSON.parse(`{"displayName":"XSL","name":"xsl","patterns":[{"begin":"(<)(xsl)((:))(template)","captures":{"1":{"name":"punctuation.definition.tag.xml"},"2":{"name":"entity.name.tag.namespace.xml"},"3":{"name":"entity.name.tag.xml"},"4":{"name":"punctuation.separator.namespace.xml"},"5":{"name":"entity.name.tag.localname.xml"}},"end":"(>)","name":"meta.tag.xml.template","patterns":[{"captures":{"1":{"name":"entity.other.attribute-name.namespace.xml"},"2":{"name":"entity.other.attribute-name.xml"},"3":{"name":"punctuation.separator.namespace.xml"},"4":{"name":"entity.other.attribute-name.localname.xml"}},"match":" (?:([-0-9A-Z_a-z]+)((:)))?([-A-Za-z]+)"},{"include":"#doublequotedString"},{"include":"#singlequotedString"}]},{"include":"text.xml"}],"repository":{"doublequotedString":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.double.xml"},"singlequotedString":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.xml"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.xml"}},"name":"string.quoted.single.xml"}},"scopeName":"text.xml.xsl","embeddedLangs":["xml"]}`)),n=[...e,t];export{n as default};
@@ -0,0 +1,7 @@
1
+ import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as t}from"./src-B6xuSHsQ.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,f as l,v as u,w as d,y as f,z as p}from"./chunk-I66GZJ75-BsgBf6m-.js";import{t as m}from"./linear-DmucvK78.js";import{t as h}from"./ordinal-BDEzSJ7C.js";import{t as g}from"./init-C-OQMol4.js";import{i as _}from"./chunk-NSK5VX7P-BRGpsxOZ.js";import{t as v}from"./line-CLgOPnWr.js";import"./chunk-4I5QYGJK-B9gVU0IX.js";import{t as y}from"./chunk-WRU74C26-BOKlupGY.js";import{a as b}from"./mermaid.core-BqpBcETK.js";function x(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function S(){var e=h().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=x(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return S(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},g.apply(d(),arguments)}var C=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,10,12,14,16,18,19,21,23],r=[2,6],i=[1,3],a=[1,5],o=[1,6],s=[1,7],c=[1,5,10,12,14,16,18,19,21,23,36,37,38],l=[1,25],u=[1,26],d=[1,28],f=[1,29],p=[1,30],m=[1,31],h=[1,32],g=[1,33],_=[1,34],v=[1,35],y=[1,36],b=[1,37],x=[1,43],S=[1,42],C=[1,47],w=[1,50],T=[1,10,12,14,16,18,19,21,23,36,37,38],E=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38],D=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38,42,43,44,45,46,47,48,49,50,51],O=[1,65],k=[26,28],A={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,dataPoints:25,SQUARE_BRACES_END:26,dataPoint:27,COMMA:28,NUMBER_WITH_DECIMAL:29,STR:30,xAxisData:31,bandData:32,ARROW_DELIMITER:33,commaSeparatedTexts:34,yAxisData:35,NEWLINE:36,SEMI:37,EOF:38,alphaNum:39,MD_STR:40,alphaNumToken:41,AMP:42,NUM:43,ALPHA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,MINUS:50,UNDERSCORE:51,$accept:0,$end:1},terminals_:{2:`error`,5:`XYCHART`,8:`CHART_ORIENTATION`,10:`title`,12:`X_AXIS`,14:`Y_AXIS`,16:`LINE`,18:`BAR`,19:`acc_title`,20:`acc_title_value`,21:`acc_descr`,22:`acc_descr_value`,23:`acc_descr_multiline_value`,24:`SQUARE_BRACES_START`,26:`SQUARE_BRACES_END`,28:`COMMA`,29:`NUMBER_WITH_DECIMAL`,30:`STR`,33:`ARROW_DELIMITER`,36:`NEWLINE`,37:`SEMI`,38:`EOF`,40:`MD_STR`,42:`AMP`,43:`NUM`,44:`ALPHA`,45:`PLUS`,46:`EQUALS`,47:`MULT`,48:`DOT`,49:`BRKT`,50:`MINUS`,51:`UNDERSCORE`},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[27,2],[27,1],[13,1],[13,2],[13,1],[31,1],[31,3],[32,3],[34,3],[34,1],[15,1],[15,2],[15,1],[35,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[39,1],[39,2],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setOrientation(a[s]);break;case 9:r.setDiagramTitle(a[s].text.trim());break;case 12:r.setLineData({text:``,type:`text`},a[s]);break;case 13:r.setLineData(a[s-1],a[s]);break;case 14:r.setBarData({text:``,type:`text`},a[s]);break;case 15:r.setBarData(a[s-1],a[s]);break;case 16:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 17:case 18:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 19:this.$=a[s-1];break;case 20:case 30:this.$=[a[s-2],...a[s]];break;case 21:case 31:this.$=[a[s]];break;case 22:this.$={value:Number(a[s-1]),label:a[s]};break;case 23:this.$={value:Number(a[s]),label:``};break;case 24:r.setXAxisTitle(a[s]);break;case 25:r.setXAxisTitle(a[s-1]);break;case 26:r.setXAxisTitle({type:`text`,text:``});break;case 27:r.setXAxisBand(a[s]);break;case 28:r.setXAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 29:this.$=a[s-1];break;case 32:r.setYAxisTitle(a[s]);break;case 33:r.setYAxisTitle(a[s-1]);break;case 34:r.setYAxisTitle({type:`text`,text:``});break;case 35:r.setYAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 39:this.$={text:a[s],type:`text`};break;case 40:this.$={text:a[s],type:`text`};break;case 41:this.$={text:a[s],type:`markdown`};break;case 42:this.$=a[s];break;case 43:this.$=a[s-1]+``+a[s]}},`anonymous`),table:[t(n,r,{3:1,4:2,7:4,5:i,36:a,37:o,38:s}),{1:[3]},t(n,r,{4:2,7:4,3:8,5:i,36:a,37:o,38:s}),t(n,r,{4:2,7:4,6:9,3:10,5:i,8:[1,11],36:a,37:o,38:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(c,[2,36]),t(c,[2,37]),t(c,[2,38]),{1:[2,1]},t(n,r,{4:2,7:4,3:21,5:i,36:a,37:o,38:s}),{1:[2,3]},t(c,[2,5]),t(n,[2,7],{4:22,36:a,37:o,38:s}),{11:23,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:39,13:38,24:x,29:S,30:l,31:40,32:41,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:45,15:44,29:C,30:l,35:46,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:49,17:48,24:w,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:52,17:51,24:w,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{20:[1,53]},{22:[1,54]},t(T,[2,18]),{1:[2,2]},t(T,[2,8]),t(T,[2,9]),t(E,[2,39],{41:55,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b}),t(E,[2,40]),t(E,[2,41]),t(D,[2,42]),t(D,[2,44]),t(D,[2,45]),t(D,[2,46]),t(D,[2,47]),t(D,[2,48]),t(D,[2,49]),t(D,[2,50]),t(D,[2,51]),t(D,[2,52]),t(D,[2,53]),t(T,[2,10]),t(T,[2,24],{32:41,31:56,24:x,29:S}),t(T,[2,26]),t(T,[2,27]),{33:[1,57]},{11:59,30:l,34:58,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},t(T,[2,11]),t(T,[2,32],{35:60,29:C}),t(T,[2,34]),{33:[1,61]},t(T,[2,12]),{17:62,24:w},{25:63,27:64,29:O},t(T,[2,14]),{17:66,24:w},t(T,[2,16]),t(T,[2,17]),t(D,[2,43]),t(T,[2,25]),{29:[1,67]},{26:[1,68]},{26:[2,31],28:[1,69]},t(T,[2,33]),{29:[1,70]},t(T,[2,13]),{26:[1,71]},{26:[2,21],28:[1,72]},t(k,[2,23],{30:[1,73]}),t(T,[2,15]),t(T,[2,28]),t(T,[2,29]),{11:59,30:l,34:74,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},t(T,[2,35]),t(T,[2,19]),{25:75,27:64,29:O},t(k,[2,22]),{26:[2,30]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],74:[2,30],75:[2,20]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(t,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;this.parseError=typeof g.yy.parseError==`function`?g.yy.parseError:Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
2
+ `+h.showPosition()+`
3
+ Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),A=s[r[r.length-2]][r[r.length-1]],r.push(A);break;case 3:return!0}}return!0},`parse`)};A.lexer=(function(){return{EOF:1,parseError:e(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:e(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},`setInput`),input:e(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:e(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:e(function(){return this._more=!0,this},`more`),reject:e(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(`Lexical error on line `+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:e(function(e){this.unput(this.match.slice(e))},`less`),pastInput:e(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:e(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:e(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
5
+ `+t+`^`},`showPosition`),test_match:e(function(e,t){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=e[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},`test_match`),next:e(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r;this._more||(this.yytext=``,this.match=``);for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!t||n[0].length>t[0].length)){if(t=n,r=a,this.options.backtrack_lexer){if(e=this.test_match(n,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[r]),e!==!1&&e):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
6
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:e(function(){return this.next()||this.lex()},`lex`),begin:e(function(e){this.conditionStack.push(e)},`begin`),popState:e(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:e(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},`_currentRules`),topState:e(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:e(function(e){this.begin(e)},`pushState`),stateStackSize:e(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:e(function(e,t,n,r){switch(n){case 0:break;case 1:break;case 2:return this.popState(),36;case 3:return this.popState(),36;case 4:return 36;case 5:break;case 6:return 10;case 7:return this.pushState(`acc_title`),19;case 8:return this.popState(),`acc_title_value`;case 9:return this.pushState(`acc_descr`),21;case 10:return this.popState(),`acc_descr_value`;case 11:this.pushState(`acc_descr_multiline`);break;case 12:this.popState();break;case 13:return`acc_descr_multiline_value`;case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState(`axis_data`),`X_AXIS`;case 18:return this.pushState(`axis_data`),`Y_AXIS`;case 19:return this.pushState(`axis_band_data`),24;case 20:return 33;case 21:return this.pushState(`data`),16;case 22:return this.pushState(`data`),18;case 23:return this.pushState(`data_inner`),24;case 24:return 29;case 25:return this.popState(),26;case 26:this.popState();break;case 27:this.pushState(`string`);break;case 28:this.popState();break;case 29:return`STR`;case 30:return 24;case 31:return 26;case 32:return 44;case 33:return`COLON`;case 34:return 45;case 35:return 28;case 36:return 46;case 37:return 47;case 38:return 49;case 39:return 51;case 40:return 48;case 41:return 42;case 42:return 50;case 43:return 43;case 44:break;case 45:return 37;case 46:return 38}},`anonymous`),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\})/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n<md_string>\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n<md_string>\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}}})();function j(){this.yy={}}return e(j,`Parser`),j.prototype=A,A.Parser=j,new j})();C.parser=C;var w=C;function T(e){return e.type===`bar`}e(T,`isBarPlot`);function E(e){return e.type===`band`}e(E,`isBandAxisData`);function D(e){return e.type===`linear`}e(D,`isLinearAxisData`);var O=class{constructor(e){this.parentGroup=e}static{e(this,`TextDimensionCalculatorWithFont`)}getMaxDimension(e,t){if(!this.parentGroup)return{width:e.reduce((e,t)=>Math.max(t.length,e),0)*t,height:t};let n={width:0,height:0},r=this.parentGroup.append(`g`).attr(`visibility`,`hidden`).attr(`font-size`,t);for(let i of e){let e=y(r,1,i),a=e?e.width:i.length*t,o=e?e.height:t;n.width=Math.max(n.width,a),n.height=Math.max(n.height,o)}return r.remove(),n}},k=.7,A=.2,j=class{constructor(e,t,n,r){this.axisConfig=e,this.title=t,this.textDimensionCalculator=n,this.axisThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition=`left`,this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.normalizedLabelRotationInRad=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition=`left`,this.normalizedLabelRotationInRad=this.axisConfig.labelRotation>=-90&&this.axisConfig.labelRotation<=90?this.axisConfig.labelRotation*Math.PI/180:0}static{e(this,`BaseAxis`)}setRange(e){this.range=e,this.axisPosition===`left`||this.axisPosition===`right`?this.boundingRect.height=e[1]-e[0]:this.boundingRect.width=e[1]-e[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(e){this.axisPosition=e,this.setRange(this.range)}getTickDistance(){let e=this.getRange();return Math.abs(e[0]-e[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(e=>e.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){k*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(k*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(e){let t=e.height;if(this.axisConfig.showAxisLine&&t>this.axisConfig.axisLineWidth&&(t-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),r=A*e.width;this.outerPadding=Math.min(n.width/2,r);let i=n.height;this.axisPosition===`bottom`&&this.normalizedLabelRotationInRad!==0&&(i=Math.max(i,Math.abs(Math.sin(this.normalizedLabelRotationInRad)*n.width)+Math.abs(Math.cos(this.normalizedLabelRotationInRad)*n.height))),i+=this.axisConfig.labelPadding*2,this.labelTextHeight=n.height,i<=t&&(t-=i,this.showLabel=!0)}if(this.axisConfig.showTick&&t>=this.axisConfig.tickLength&&(this.showTick=!0,t-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),n=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,n<=t&&(t-=n,this.showTitle=!0)}this.boundingRect.width=e.width,this.boundingRect.height=e.height-t}calculateSpaceIfDrawnVertical(e){let t=e.width;if(this.axisConfig.showAxisLine&&t>this.axisConfig.axisLineWidth&&(t-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),r=A*e.height;this.outerPadding=Math.min(n.height/2,r);let i=n.width+this.axisConfig.labelPadding*2;i<=t&&(t-=i,this.showLabel=!0)}if(this.axisConfig.showTick&&t>=this.axisConfig.tickLength&&(this.showTick=!0,t-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),n=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,n<=t&&(t-=n,this.showTitle=!0)}this.boundingRect.width=e.width-t,this.boundingRect.height=e.height}calculateSpace(e){return this.axisPosition===`left`||this.axisPosition===`right`?this.calculateSpaceIfDrawnVertical(e):this.calculateSpaceIfDrawnHorizontally(e),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateOffsetByRotation(e){let t=this.normalizedLabelRotationInRad;return t===0?0:Math.sin(t)*this.getLabelDimension()[e]/2}getDrawableElementsForLeftAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`left-axis`,`axisl-line`],data:[{path:`M ${t},${this.boundingRect.y} L ${t},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`left-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(e),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:`middle`,horizontalPos:`right`}))}),this.showTick){let t=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:`path`,groupTexts:[`left-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${t},${this.getScaleValue(e)} L ${t-this.axisConfig.tickLength},${this.getScaleValue(e)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`left-axis`,`title`],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElementsForBottomAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.y+this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`bottom-axis`,`axis-line`],data:[{path:`M ${this.boundingRect.x},${t} L ${this.boundingRect.x+this.boundingRect.width},${t}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`bottom-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.getScaleValue(e)+this.calculateOffsetByRotation(`height`),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0)+Math.abs(this.calculateOffsetByRotation(`width`)),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:this.normalizedLabelRotationInRad*180/Math.PI,verticalPos:`top`,horizontalPos:`center`}))}),this.showTick){let t=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:`path`,groupTexts:[`bottom-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${t} L ${this.getScaleValue(e)},${t+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`bottom-axis`,`title`],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElementsForTopAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`top-axis`,`axis-line`],data:[{path:`M ${this.boundingRect.x},${t} L ${this.boundingRect.x+this.boundingRect.width},${t}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`top-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.getScaleValue(e),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}))}),this.showTick){let t=this.boundingRect.y;e.push({type:`path`,groupTexts:[`top-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${t+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(e)},${t+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`top-axis`,`title`],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElements(){if(this.axisPosition===`left`)return this.getDrawableElementsForLeftAxis();if(this.axisPosition===`right`)throw Error(`Drawing of right axis is not implemented`);return this.axisPosition===`bottom`?this.getDrawableElementsForBottomAxis():this.axisPosition===`top`?this.getDrawableElementsForTopAxis():[]}},M=class extends j{static{e(this,`BandAxis`)}constructor(e,t,n,r,i){super(e,r,i,t),this.categories=n,this.scale=S().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=S().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),t.trace(`BandAxis axis final categories, range: `,this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(e){return this.scale(e)??this.getRange()[0]}},ee=class extends j{static{e(this,`LinearAxis`)}constructor(e,t,n,r,i){super(e,r,i,t),this.domain=n,this.scale=m().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition===`left`&&e.reverse(),this.scale=m().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}};function N(e,t,n,r){let i=new O(r);return E(e)?new M(t,n,e.categories,e.title,i):new ee(t,n,[e.min,e.max],e.title,i)}e(N,`getAxis`);var te=class{constructor(e,t,n,r){this.textDimensionCalculator=e,this.chartConfig=t,this.chartData=n,this.chartThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{e(this,`ChartTitle`)}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){let t=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(t.width,e.width),r=t.height+2*this.chartConfig.titlePadding;return t.width<=n&&t.height<=r&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=r,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let e=[];return this.showChartTitle&&e.push({groupTexts:[`chart-title`],type:`text`,data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:`middle`,horizontalPos:`center`,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),e}};function ne(e,t,n,r){return new te(new O(r),e,t,n)}e(ne,`getChartTitleComponent`);var re=class{constructor(e,t,n,r,i){this.plotData=e,this.xAxis=t,this.yAxis=n,this.orientation=r,this.plotIndex=i}static{e(this,`LinePlot`)}getDrawableElement(){let e=this.plotData.data.map(e=>[this.xAxis.getScaleValue(e[0]),this.yAxis.getScaleValue(e[1])]),t;if(t=this.orientation===`horizontal`?v().y(e=>e[0]).x(e=>e[1])(e):v().x(e=>e[0]).y(e=>e[1])(e),!t)return[];let n=[{groupTexts:[`plot`,`line-plot-${this.plotIndex}`],type:`path`,data:[{path:t,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}];if(this.plotData.pointLabels&&this.plotData.pointLabels.length>0){let t=[];for(let[n,[r,i]]of e.entries()){let e=this.plotData.pointLabels[n];e&&(this.orientation===`horizontal`?t.push({x:i+10,y:r,text:e,fill:this.plotData.strokeFill,verticalPos:`middle`,horizontalPos:`left`,fontSize:12,rotation:0}):t.push({x:r,y:i-10,text:e,fill:this.plotData.strokeFill,verticalPos:`middle`,horizontalPos:`center`,fontSize:12,rotation:0}))}t.length>0&&n.push({groupTexts:[`plot`,`line-plot-${this.plotIndex}`,`labels`],type:`text`,data:t})}return n}},ie=class{constructor(e,t,n,r,i,a){this.barData=e,this.boundingRect=t,this.xAxis=n,this.yAxis=r,this.orientation=i,this.plotIndex=a}static{e(this,`BarPlot`)}getDrawableElement(){let e=this.barData.data.map(e=>[this.xAxis.getScaleValue(e[0]),this.yAxis.getScaleValue(e[1])]),t=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*.95,n=t/2;return this.orientation===`horizontal`?[{groupTexts:[`plot`,`bar-plot-${this.plotIndex}`],type:`rect`,data:e.map(e=>({x:this.boundingRect.x,y:e[0]-n,height:t,width:e[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:[`plot`,`bar-plot-${this.plotIndex}`],type:`rect`,data:e.map(e=>({x:e[0]-n,y:e[1],width:t,height:this.boundingRect.y+this.boundingRect.height-e[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}},ae=class{constructor(e,t,n){this.chartConfig=e,this.chartData=t,this.chartThemeConfig=n,this.boundingRect={x:0,y:0,width:0,height:0}}static{e(this,`BasePlot`)}setAxes(e,t){this.xAxis=e,this.yAxis=t}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){return this.boundingRect.width=e.width,this.boundingRect.height=e.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error(`Axes must be passed to render Plots`);let e=[];for(let[t,n]of this.chartData.plots.entries())switch(n.type){case`line`:{let r=new re(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,t);e.push(...r.getDrawableElement())}break;case`bar`:{let r=new ie(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,t);e.push(...r.getDrawableElement())}}return e}};function P(e,t,n){return new ae(e,t,n)}e(P,`getPlotComponent`);var oe=class{constructor(e,t,n,r){this.chartConfig=e,this.chartData=t,this.componentStore={title:ne(e,t,n,r),plot:P(e,t,n),xAxis:N(t.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},r),yAxis:N(t.yAxis,e.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},r)}}static{e(this,`Orchestrator`)}calculateVerticalSpace(){let e=this.chartConfig.width,t=this.chartConfig.height,n=0,r=0,i=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),a=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),o=this.componentStore.plot.calculateSpace({width:i,height:a});e-=o.width,t-=o.height,o=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:t}),r=o.height,t-=o.height,this.componentStore.xAxis.setAxisPosition(`bottom`),o=this.componentStore.xAxis.calculateSpace({width:e,height:t}),t-=o.height,this.componentStore.yAxis.setAxisPosition(`left`),o=this.componentStore.yAxis.calculateSpace({width:e,height:t}),n=o.width,e-=o.width,e>0&&(i+=e,e=0),t>0&&(a+=t,t=0),this.componentStore.plot.calculateSpace({width:i,height:a}),this.componentStore.plot.setBoundingBoxXY({x:n,y:r}),this.componentStore.xAxis.setRange([n,n+i]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:r+a}),this.componentStore.yAxis.setRange([r,r+a]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:r}),this.chartData.plots.some(e=>T(e))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let e=this.chartConfig.width,t=this.chartConfig.height,n=0,r=0,i=0,a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),o=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),s=this.componentStore.plot.calculateSpace({width:a,height:o});e-=s.width,t-=s.height,s=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:t}),n=s.height,t-=s.height,this.componentStore.xAxis.setAxisPosition(`left`),s=this.componentStore.xAxis.calculateSpace({width:e,height:t}),e-=s.width,r=s.width,this.componentStore.yAxis.setAxisPosition(`top`),s=this.componentStore.yAxis.calculateSpace({width:e,height:t}),t-=s.height,i=n+s.height,e>0&&(a+=e,e=0),t>0&&(o+=t,t=0),this.componentStore.plot.calculateSpace({width:a,height:o}),this.componentStore.plot.setBoundingBoxXY({x:r,y:i}),this.componentStore.yAxis.setRange([r,r+a]),this.componentStore.yAxis.setBoundingBoxXY({x:r,y:n}),this.componentStore.xAxis.setRange([i,i+o]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(e=>T(e))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation===`horizontal`?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let e=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let t of Object.values(this.componentStore))e.push(...t.getDrawableElements());return e}},se=class{static{e(this,`XYChartBuilder`)}static build(e,t,n,r){return new oe(e,t,n,r).getDrawableElement()}},F=0,I,L=W(),R=U(),z=G(),B=R.plotColorPalette.split(`,`).map(e=>e.trim()),V=!1,H=!1;function U(){let e=n(),t=s();return _(e.xyChart,t.themeVariables.xyChart)}e(U,`getChartDefaultThemeConfig`);function W(){let e=s();return _(l.xyChart,e.xyChart)}e(W,`getChartDefaultConfig`);function G(){return{yAxis:{type:`linear`,title:``,min:1/0,max:-1/0},xAxis:{type:`band`,title:``,categories:[]},title:``,plots:[]}}e(G,`getChartDefaultData`);function K(e){let t=s();return p(e.trim(),t)}e(K,`textSanitizer`);function q(e){I=e}e(q,`setTmpSVGG`);function J(e){e===`horizontal`?L.chartOrientation=`horizontal`:L.chartOrientation=`vertical`}e(J,`setOrientation`);function Y(e){z.xAxis.title=K(e.text)}e(Y,`setXAxisTitle`);function X(e,t){z.xAxis={type:`linear`,title:z.xAxis.title,min:e,max:t},V=!0}e(X,`setXAxisRangeData`);function ce(e){z.xAxis={type:`band`,title:z.xAxis.title,categories:e.map(e=>K(e.text))},V=!0}e(ce,`setXAxisBand`);function le(e){z.yAxis.title=K(e.text)}e(le,`setYAxisTitle`);function ue(e,t){z.yAxis={type:`linear`,title:z.yAxis.title,min:e,max:t},H=!0}e(ue,`setYAxisRangeData`);function de(e){let t=Math.min(...e),n=Math.max(...e),r=D(z.yAxis)?z.yAxis.min:1/0,i=D(z.yAxis)?z.yAxis.max:-1/0;z.yAxis={type:`linear`,title:z.yAxis.title,min:Math.min(r,t),max:Math.max(i,n)}}e(de,`setYAxisRangeFromPlotData`);function Z(e){let t=[];if(e.length===0)return t;if(!V){let t=D(z.xAxis)?z.xAxis.min:1/0,n=D(z.xAxis)?z.xAxis.max:-1/0;X(Math.min(t,1),Math.max(n,e.length))}if(E(z.xAxis)&&e.length>z.xAxis.categories.length&&(e=e.slice(0,z.xAxis.categories.length)),H||de(e),E(z.xAxis)&&(t=z.xAxis.categories.map((t,n)=>[t,e[n]])),D(z.xAxis)){let n=z.xAxis.min,r=z.xAxis.max;if(e.length===1)t=[[`${n}`,e[0]]];else{let i=(r-n)/(e.length-1);t=e.map((e,t)=>[`${n+t*i}`,e])}}return t}e(Z,`transformDataWithoutCategory`);function Q(e){return B[e===0?0:e%B.length]}e(Q,`getPlotColorFromPalette`);function fe(e,t){let n=t.map(e=>e.value),r=t.map(e=>e.label?K(e.label):``),i=Z(n),a=r.some(e=>e!==``);z.plots.push({type:`line`,strokeFill:Q(F),strokeWidth:2,data:i,...a?{pointLabels:r}:{}}),F++}e(fe,`setLineData`);function pe(e,t){let n=Z(t.map(e=>e.value));z.plots.push({type:`bar`,fill:Q(F),data:n}),F++}e(pe,`setBarData`);function me(){if(z.plots.length===0)throw Error(`No Plot to render, please provide a plot with some data`);return z.title=d(),se.build(L,z,R,I)}e(me,`getDrawableElem`);function he(){return R}e(he,`getChartThemeConfig`);function ge(){return L}e(ge,`getChartConfig`);function $(){return z}e($,`getXYChartData`);var _e={parser:w,db:{getDrawableElem:me,clear:e(function(){o(),F=0,L=W(),z=G(),R=U(),B=R.plotColorPalette.split(`,`).map(e=>e.trim()),V=!1,H=!1},`clear`),setAccTitle:a,getAccTitle:f,setDiagramTitle:i,getDiagramTitle:d,getAccDescription:u,setAccDescription:r,setOrientation:J,setXAxisTitle:Y,setXAxisRangeData:X,setXAxisBand:ce,setYAxisTitle:le,setYAxisRangeData:ue,setLineData:fe,setBarData:pe,setTmpSVGG:q,getChartThemeConfig:he,getChartConfig:ge,getXYChartData:$},renderer:{draw:e((n,r,i,a)=>{let o=a.db,s=o.getChartThemeConfig(),l=o.getChartConfig(),u=o.getXYChartData().plots[0].data.map(e=>e[1]);function d(e){return e===`top`?`text-before-edge`:`middle`}e(d,`getDominantBaseLine`);function f(e){return e===`left`?`start`:e===`right`?`end`:`middle`}e(f,`getTextAnchor`);function p(e){return`translate(${e.x}, ${e.y}) rotate(${e.rotation||0})`}e(p,`getTextTransformation`),t.debug(`Rendering xychart chart
7
+ `+n);let m=b(r),h=m.append(`g`).attr(`class`,`main`),g=h.append(`rect`).attr(`width`,l.width).attr(`height`,l.height).attr(`class`,`background`);c(m,l.height,l.width,!0),m.attr(`viewBox`,`0 0 ${l.width} ${l.height}`),g.attr(`fill`,s.backgroundColor),o.setTmpSVGG(m.append(`g`).attr(`class`,`mermaid-tmp-group`));let _=o.getDrawableElem(),v={};function y(e){let t=h,n=``;for(let[r]of e.entries()){let i=h;r>0&&v[n]&&(i=v[n]),n+=e[r],t=v[n],t||=v[n]=i.append(`g`).attr(`class`,e[r])}return t}e(y,`getGroup`);for(let t of _){if(t.data.length===0)continue;let n=y(t.groupTexts);switch(t.type){case`rect`:if(n.selectAll(`rect`).data(t.data).enter().append(`rect`).attr(`x`,e=>e.x).attr(`y`,e=>e.y).attr(`width`,e=>e.width).attr(`height`,e=>e.height).attr(`fill`,e=>e.fill).attr(`stroke`,e=>e.strokeFill).attr(`stroke-width`,e=>e.strokeWidth),l.showDataLabel){let r=l.showDataLabelOutsideBar;if(l.chartOrientation===`horizontal`){let i=function(e,t){let{data:n,label:r}=e;return t*r.length*a<=n.width-o};e(i,`fitsHorizontally`);let a=.7,o=10,c=t.data.map((e,t)=>({data:e,label:u[t].toString()})).filter(e=>e.data.width>0&&e.data.height>0),l=c.map(e=>{let{data:t}=e,n=t.height*.7;for(;!i(e,n)&&n>0;)--n;return n}),d=Math.floor(Math.min(...l)),f=e(e=>r?e.data.x+e.data.width+10:e.data.x+e.data.width-10,`determineLabelXPosition`);n.selectAll(`text`).data(c).enter().append(`text`).attr(`x`,f).attr(`y`,e=>e.data.y+e.data.height/2).attr(`text-anchor`,r?`start`:`end`).attr(`dominant-baseline`,`middle`).attr(`fill`,s.dataLabelColor).attr(`font-size`,`${d}px`).text(e=>e.label)}else{let i=function(e,t,n){let{data:r,label:i}=e,a=t*i.length*.7,o=r.x+r.width/2,s=o-a/2,c=o+a/2,l=s>=r.x&&c<=r.x+r.width,u=r.y+n+t<=r.y+r.height;return l&&u};e(i,`fitsInBar`);let a=t.data.map((e,t)=>({data:e,label:u[t].toString()})).filter(e=>e.data.width>0&&e.data.height>0),o=a.map(e=>{let{data:t,label:n}=e,r=t.width/(n.length*.7);for(;!i(e,r,10)&&r>0;)--r;return r}),c=Math.floor(Math.min(...o)),l=e(e=>r?e.data.y-10:e.data.y+10,`determineLabelYPosition`);n.selectAll(`text`).data(a).enter().append(`text`).attr(`x`,e=>e.data.x+e.data.width/2).attr(`y`,l).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,r?`auto`:`hanging`).attr(`fill`,s.dataLabelColor).attr(`font-size`,`${c}px`).text(e=>e.label)}}break;case`text`:n.selectAll(`text`).data(t.data).enter().append(`text`).attr(`x`,0).attr(`y`,0).attr(`fill`,e=>e.fill).attr(`font-size`,e=>e.fontSize).attr(`dominant-baseline`,e=>d(e.verticalPos)).attr(`text-anchor`,e=>f(e.horizontalPos)).attr(`transform`,e=>p(e)).text(e=>e.text);break;case`path`:n.selectAll(`path`).data(t.data).enter().append(`path`).attr(`d`,e=>e.path).attr(`fill`,e=>e.fill?e.fill:`none`).attr(`stroke`,e=>e.strokeFill).attr(`stroke-width`,e=>e.strokeWidth)}}},`draw`)}};export{_e as diagram};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-hePW80VL.js";var t=e({default:()=>n}),n=[Object.freeze(JSON.parse(`{"displayName":"YAML","fileTypes":["yaml","yml","rviz","reek","clang-format","yaml-tmlanguage","syntax","sublime-syntax"],"firstLineMatch":"^%YAML( ?1.\\\\d+)?","name":"yaml","patterns":[{"include":"#comment"},{"include":"#property"},{"include":"#directive"},{"match":"^---","name":"entity.other.document.begin.yaml"},{"match":"^\\\\.{3}","name":"entity.other.document.end.yaml"},{"include":"#node"}],"repository":{"block-collection":{"patterns":[{"include":"#block-sequence"},{"include":"#block-mapping"}]},"block-mapping":{"patterns":[{"include":"#block-pair"}]},"block-node":{"patterns":[{"include":"#prototype"},{"include":"#block-scalar"},{"include":"#block-collection"},{"include":"#flow-scalar-plain-out"},{"include":"#flow-node"}]},"block-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"1":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=\\\\?)|^ *(:)|(:)","endCaptures":{"1":{"name":"punctuation.separator.key-value.mapping.yaml"},"2":{"name":"invalid.illegal.expected-newline.yaml"}},"name":"meta.block-mapping.yaml","patterns":[{"include":"#block-node"}]},{"begin":"(?=(?:[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S)([^:\\\\s]|:\\\\S|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},{"match":":(?=\\\\s|$)","name":"punctuation.separator.key-value.mapping.yaml"}]},"block-scalar":{"begin":"(?:(\\\\|)|(>))([1-9])?([-+])?(.*\\\\n?)","beginCaptures":{"1":{"name":"keyword.control.flow.block-scalar.literal.yaml"},"2":{"name":"keyword.control.flow.block-scalar.folded.yaml"},"3":{"name":"constant.numeric.indentation-indicator.yaml"},"4":{"name":"storage.modifier.chomping-indicator.yaml"},"5":{"patterns":[{"include":"#comment"},{"match":".+","name":"invalid.illegal.expected-comment-or-newline.yaml"}]}},"end":"^(?=\\\\S)|(?!\\\\G)","patterns":[{"begin":"^( +)(?! )","end":"^(?!\\\\1|\\\\s*$)","name":"string.unquoted.block.yaml"}]},"block-sequence":{"match":"(-)(?!\\\\S)","name":"punctuation.definition.block.sequence.item.yaml"},"comment":{"begin":"(?:^([\\\\t ]*)|[\\\\t ]+)(?=#\\\\p{print}*$)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.yaml"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.yaml"}},"end":"\\\\n","name":"comment.line.number-sign.yaml"}]},"directive":{"begin":"^%","beginCaptures":{"0":{"name":"punctuation.definition.directive.begin.yaml"}},"end":"(?=$|[\\\\t ]+($|#))","name":"meta.directive.yaml","patterns":[{"captures":{"1":{"name":"keyword.other.directive.yaml.yaml"},"2":{"name":"constant.numeric.yaml-version.yaml"}},"match":"\\\\G(YAML)[\\\\t ]+(\\\\d+\\\\.\\\\d+)"},{"captures":{"1":{"name":"keyword.other.directive.tag.yaml"},"2":{"name":"storage.type.tag-handle.yaml"},"3":{"name":"support.type.tag-prefix.yaml"}},"match":"\\\\G(TAG)(?:[\\\\t ]+(!(?:[-0-9A-Za-z]*!)?)(?:[\\\\t ]+(!(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])*|(?![]!,\\\\[{}])(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])+))?)?"},{"captures":{"1":{"name":"support.other.directive.reserved.yaml"},"2":{"name":"string.unquoted.directive-name.yaml"},"3":{"name":"string.unquoted.directive-parameter.yaml"}},"match":"\\\\G(\\\\w+)(?:[\\\\t ]+(\\\\w+)(?:[\\\\t ]+(\\\\w+))?)?"},{"match":"\\\\S+","name":"invalid.illegal.unrecognized.yaml"}]},"flow-alias":{"captures":{"1":{"name":"keyword.control.flow.alias.yaml"},"2":{"name":"punctuation.definition.alias.yaml"},"3":{"name":"variable.other.alias.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"((\\\\*))([^],/\\\\[{}\\\\s]+)([^],}\\\\s]\\\\S*)?"},"flow-collection":{"patterns":[{"include":"#flow-sequence"},{"include":"#flow-mapping"}]},"flow-mapping":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.mapping.begin.yaml"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.mapping.end.yaml"}},"name":"meta.flow-mapping.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.mapping.yaml"},{"include":"#flow-pair"}]},"flow-node":{"patterns":[{"include":"#prototype"},{"include":"#flow-alias"},{"include":"#flow-collection"},{"include":"#flow-scalar"}]},"flow-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=[],}])","name":"meta.flow-pair.explicit.yaml","patterns":[{"include":"#prototype"},{"include":"#flow-pair"},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[],\\\\[{}])","beginCaptures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[],}])","patterns":[{"include":"#flow-value"}]}]},{"begin":"(?=(?:[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s])([^],:\\\\[{}\\\\s]|:[^],\\\\[{}\\\\s]|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"meta.flow-pair.key.yaml","patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s]","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"string.unquoted.plain.in.yaml"}]},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[],\\\\[{}])","captures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[],}])","name":"meta.flow-pair.yaml","patterns":[{"include":"#flow-value"}]}]},"flow-scalar":{"patterns":[{"include":"#flow-scalar-double-quoted"},{"include":"#flow-scalar-single-quoted"},{"include":"#flow-scalar-plain-in"}]},"flow-scalar-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.double.yaml","patterns":[{"match":"\\\\\\\\([ \\"/0LN\\\\\\\\_abefnprtv]|x\\\\d\\\\d|u\\\\d{4}|U\\\\d{8})","name":"constant.character.escape.yaml"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.double-quoted.newline.yaml"}]},"flow-scalar-plain-in":{"patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?][^],\\\\[{}\\\\s]","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])","name":"string.unquoted.plain.in.yaml"}]},"flow-scalar-plain-in-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|([Yy]|yes|Yes|YES|[Nn]|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|([-+]?0b[01_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[_\\\\h]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)|([-+]?(?:[0-9][0-9_]*)?\\\\.[.0-9]*(?:[Ee][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))|(\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[\\\\t ]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[\\\\t ]*Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?)|(=)|(<<))(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$)|\\\\s*:[],\\\\[{}]|\\\\s*[],\\\\[{}])"}]},"flow-scalar-plain-out":{"patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^-\\\\]!\\"#%\\\\&'*,:>?@\\\\[\`{|}\\\\s]|[-:?]\\\\S","end":"(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},"flow-scalar-plain-out-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|([Yy]|yes|Yes|YES|[Nn]|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|([-+]?0b[01_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[_\\\\h]+|[-+]?[1-9][0-9_]*(?::[0-5]?[0-9])+)|([-+]?(?:[0-9][0-9_]*)?\\\\.[.0-9]*(?:[Ee][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN))|(\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[\\\\t ]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[\\\\t ]*Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?)|(=)|(<<))(?=\\\\s*$|\\\\s+#|\\\\s*:(\\\\s|$))"}]},"flow-scalar-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"'(?!')","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.single.yaml","patterns":[{"match":"''","name":"constant.character.escape.single-quoted.yaml"}]},"flow-sequence":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.sequence.begin.yaml"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.sequence.end.yaml"}},"name":"meta.flow-sequence.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.sequence.yaml"},{"include":"#flow-pair"},{"include":"#flow-node"}]},"flow-value":{"patterns":[{"begin":"\\\\G(?![],}])","end":"(?=[],}])","name":"meta.flow-pair.value.yaml","patterns":[{"include":"#flow-node"}]}]},"node":{"patterns":[{"include":"#block-node"}]},"property":{"begin":"(?=[!\\\\&])","end":"(?!\\\\G)","name":"meta.property.yaml","patterns":[{"captures":{"1":{"name":"keyword.control.property.anchor.yaml"},"2":{"name":"punctuation.definition.anchor.yaml"},"3":{"name":"entity.name.type.anchor.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"\\\\G((&))([^],/\\\\[{}\\\\s]+)(\\\\S+)?"},{"match":"\\\\G!(?:<(?:%\\\\h{2}|[]!#$\\\\&-;=?-\\\\[_a-z~])+>|(?:[-0-9A-Za-z]*!)?(?:%\\\\h{2}|[#$\\\\&-+\\\\--;=?-Z_a-z~])+|)(?=[\\\\t ]|$)","name":"storage.type.tag-handle.yaml"},{"match":"\\\\S+","name":"invalid.illegal.tag-handle.yaml"}]},"prototype":{"patterns":[{"include":"#comment"},{"include":"#property"}]}},"scopeName":"source.yaml","aliases":["yml"]}`))];export{t as n,n as t};
@@ -0,0 +1 @@
1
+ var e=[Object.freeze(JSON.parse(`{"displayName":"ZenScript","fileTypes":["zs"],"name":"zenscript","patterns":[{"match":"\\\\b((0([Xx])\\\\h*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))(([Ee])([-+])?[0-9]+)?)([DFLUdflu]|UL|ul)?\\\\b","name":"constant.numeric.zenscript"},{"match":"\\\\b-?(0[BOXbox])(0|[1-9A-Fa-f][_\\\\h]*)[A-Z_a-z]*\\\\b","name":"constant.numeric.zenscript"},{"include":"#code"},{"match":"\\\\b((?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*)(?=\\\\[)","name":"storage.type.object.array.zenscript"}],"repository":{"brackets":{"patterns":[{"captures":{"1":{"name":"keyword.control.zenscript"},"2":{"name":"keyword.other.zenscript"},"3":{"name":"keyword.control.zenscript"},"4":{"name":"variable.other.zenscript"},"5":{"name":"keyword.control.zenscript"},"6":{"name":"constant.numeric.zenscript"},"7":{"name":"keyword.control.zenscript"}},"match":"(<)\\\\b(.*?)(:(.*?(:(\\\\*|\\\\d+)?)?)?)(>)","name":"keyword.other.zenscript"}]},"class":{"captures":{"1":{"name":"storage.type.zenscript"},"2":{"name":"entity.name.type.class.zenscript"}},"match":"(zenClass)\\\\s+(\\\\w+)","name":"meta.class.zenscript"},"code":{"patterns":[{"include":"#class"},{"include":"#functions"},{"include":"#dots"},{"include":"#quotes"},{"include":"#brackets"},{"include":"#comments"},{"include":"#var"},{"include":"#keywords"},{"include":"#constants"},{"include":"#operators"}]},"comments":{"patterns":[{"match":"//[^\\\\n]*","name":"comment.line.double=slash"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"comment.block"}},"end":"\\\\*/","endCaptures":{"0":{"name":"comment.block"}},"name":"comment.block"}]},"dots":{"captures":{"1":{"name":"storage.type.zenscript"},"2":{"name":"keyword.control.zenscript"},"5":{"name":"keyword.control.zenscript"}},"match":"\\\\b(\\\\w+)(\\\\.)(\\\\w+)((\\\\.)(\\\\w+))*","name":"plain.text.zenscript"},"functions":{"captures":{"0":{"name":"storage.type.function.zenscript"},"1":{"name":"entity.name.function.zenscript"}},"match":"function\\\\s+([$A-Z_a-z][$\\\\w]*)\\\\s*(?=\\\\()","name":"meta.function.zenscript"},"keywords":{"patterns":[{"match":"\\\\b(instanceof|get|implements|set|import|function|override|const|if|else|do|while|for|throw|panic|lock|try|catch|finally|return|break|continue|switch|case|default|in|is|as|match|throws|super|new)\\\\b","name":"keyword.control.zenscript"},{"match":"\\\\b(zenClass|zenConstructor|alias|class|interface|enum|struct|expand|variant|set|void|bool|byte|sbyte|short|ushort|int|uint|long|ulong|usize|float|double|char|string)\\\\b","name":"storage.type.zenscript"},{"match":"\\\\b(variant|abstract|final|private|public|export|internal|static|protected|implicit|virtual|extern|immutable)\\\\b","name":"storage.modifier.zenscript"},{"match":"\\\\b(Native|Precondition)\\\\b","name":"entity.other.attribute-name"},{"match":"\\\\b(null|true|false)\\\\b","name":"constant.language"}]},"operators":{"patterns":[{"match":"\\\\b(\\\\.\\\\.??|\\\\.\\\\.\\\\.|[+,]|\\\\+=|\\\\+\\\\+|-=??|--|~=??|\\\\*=??|/=??|%=??|\\\\|=??|\\\\|\\\\||&=??|&&|\\\\^=??|\\\\?\\\\.??|\\\\?\\\\?|<=??|<<=??|>=??|>>=??|>>>=??|=>?|===??|!=??|!==|[$\`])\\\\b","name":"keyword.control"},{"match":"\\\\b([:;])\\\\b","name":"keyword.control"}]},"quotes":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.zenscript"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.zenscript"}},"name":"string.quoted.double.zenscript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.zenscript"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.zenscript"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.zenscript"}},"name":"string.quoted.single.zenscript","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.zenscript"}]}]},"var":{"match":"\\\\b(va[lr])\\\\b","name":"storage.type"}},"scopeName":"source.zenscript"}`))];export{e as default};
@@ -0,0 +1 @@
1
+ var e=[Object.freeze(JSON.parse(`{"displayName":"Zig","fileTypes":["zig","zon"],"name":"zig","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#keywords"},{"include":"#operators"},{"include":"#punctuation"},{"include":"#numbers"},{"include":"#support"},{"include":"#variables"}],"repository":{"commentContents":{"patterns":[{"match":"\\\\b(TODO|FIXME|XXX|NOTE)\\\\b:?","name":"keyword.todo.zig"}]},"comments":{"patterns":[{"begin":"//[!/](?=[^/])","end":"$","name":"comment.line.documentation.zig","patterns":[{"include":"#commentContents"}]},{"begin":"//","end":"$","name":"comment.line.double-slash.zig","patterns":[{"include":"#commentContents"}]}]},"keywords":{"patterns":[{"match":"\\\\binline\\\\b(?!\\\\s*\\\\bfn\\\\b)","name":"keyword.control.repeat.zig"},{"match":"\\\\b(while|for)\\\\b","name":"keyword.control.repeat.zig"},{"match":"\\\\b(extern|packed|export|pub|noalias|inline|comptime|volatile|align|linksection|threadlocal|allowzero|noinline|callconv)\\\\b","name":"keyword.storage.zig"},{"match":"\\\\b(struct|enum|union|opaque)\\\\b","name":"keyword.structure.zig"},{"match":"\\\\b(asm|unreachable)\\\\b","name":"keyword.statement.zig"},{"match":"\\\\b(break|return|continue|defer|errdefer)\\\\b","name":"keyword.control.flow.zig"},{"match":"\\\\b(resume|suspend|nosuspend)\\\\b","name":"keyword.control.async.zig"},{"match":"\\\\b(try|catch)\\\\b","name":"keyword.control.trycatch.zig"},{"match":"\\\\b(if|else|switch|orelse)\\\\b","name":"keyword.control.conditional.zig"},{"match":"\\\\b(null|undefined)\\\\b","name":"keyword.constant.default.zig"},{"match":"\\\\b(true|false)\\\\b","name":"keyword.constant.bool.zig"},{"match":"\\\\b(test|and|or)\\\\b","name":"keyword.default.zig"},{"match":"\\\\b(bool|void|noreturn|type|error|anyerror|anyframe|anytype|anyopaque)\\\\b","name":"keyword.type.zig"},{"match":"\\\\b(f16|f32|f64|f80|f128|u\\\\d+|i\\\\d+|isize|usize|comptime_int|comptime_float)\\\\b","name":"keyword.type.integer.zig"},{"match":"\\\\b(c_(?:char|short|ushort|int|uint|long|ulong|longlong|ulonglong|longdouble))\\\\b","name":"keyword.type.c.zig"}]},"numbers":{"patterns":[{"match":"\\\\b0x\\\\h[_\\\\h]*(\\\\.\\\\h[_\\\\h]*)?([Pp][-+]?[_\\\\h]+)?\\\\b","name":"constant.numeric.hexfloat.zig"},{"match":"\\\\b[0-9][0-9_]*(\\\\.[0-9][0-9_]*)?([Ee][-+]?[0-9_]+)?\\\\b","name":"constant.numeric.float.zig"},{"match":"\\\\b[0-9][0-9_]*\\\\b","name":"constant.numeric.decimal.zig"},{"match":"\\\\b0x[_\\\\h]+\\\\b","name":"constant.numeric.hexadecimal.zig"},{"match":"\\\\b0o[0-7_]+\\\\b","name":"constant.numeric.octal.zig"},{"match":"\\\\b0b[01_]+\\\\b","name":"constant.numeric.binary.zig"},{"match":"\\\\b[0-9](([EPep][-+])|[0-9A-Z_a-z])*(\\\\.(([EPep][-+])|[0-9A-Z_a-z])*)?([EPep][-+])?[0-9A-Z_a-z]*\\\\b","name":"constant.numeric.invalid.zig"}]},"operators":{"patterns":[{"match":"(?<=\\\\[)\\\\*c(?=])","name":"keyword.operator.c-pointer.zig"},{"match":"\\\\b((and|or))\\\\b|(==|!=|<=|>=|[<>])","name":"keyword.operator.comparison.zig"},{"match":"(-%?|\\\\+%?|\\\\*%?|[%/])=?","name":"keyword.operator.arithmetic.zig"},{"match":"(<<%?|>>|[!\\\\&^|~])=?","name":"keyword.operator.bitwise.zig"},{"match":"(==|\\\\+\\\\+|\\\\*\\\\*|->)","name":"keyword.operator.special.zig"},{"match":"=","name":"keyword.operator.assignment.zig"},{"match":"\\\\?","name":"keyword.operator.question.zig"}]},"punctuation":{"patterns":[{"match":"\\\\.","name":"punctuation.accessor.zig"},{"match":",","name":"punctuation.comma.zig"},{"match":":","name":"punctuation.separator.key-value.zig"},{"match":";","name":"punctuation.terminator.statement.zig"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\([\\"'\\\\\\\\nrt]|(x\\\\h{2})|(u\\\\{\\\\h+}))","name":"constant.character.escape.zig"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.zig"}]},"strings":{"patterns":[{"begin":"\\"","end":"\\"","name":"string.quoted.double.zig","patterns":[{"include":"#stringcontent"}]},{"begin":"\\\\\\\\\\\\\\\\","end":"$","name":"string.multiline.zig"},{"match":"'([^'\\\\\\\\]|\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.))'","name":"string.quoted.single.zig"}]},"support":{"patterns":[{"match":"@[A-Z_a-z][0-9A-Z_a-z]*","name":"support.function.builtin.zig"}]},"variables":{"patterns":[{"name":"meta.function.declaration.zig","patterns":[{"captures":{"1":{"name":"storage.type.function.zig"},"2":{"name":"entity.name.type.zig"}},"match":"\\\\b(fn)\\\\s+([A-Z][0-9A-Za-z]*)\\\\b"},{"captures":{"1":{"name":"storage.type.function.zig"},"2":{"name":"entity.name.function.zig"}},"match":"\\\\b(fn)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\b"},{"begin":"\\\\b(fn)\\\\s+@\\"","beginCaptures":{"1":{"name":"storage.type.function.zig"}},"end":"\\"","name":"entity.name.function.string.zig","patterns":[{"include":"#stringcontent"}]},{"match":"\\\\b(const|var|fn)\\\\b","name":"keyword.default.zig"}]},{"name":"meta.function.call.zig","patterns":[{"match":"([A-Z][0-9A-Za-z]*)(?=\\\\s*\\\\()","name":"entity.name.type.zig"},{"match":"([A-Z_a-z][0-9A-Z_a-z]*)(?=\\\\s*\\\\()","name":"entity.name.function.zig"}]},{"name":"meta.variable.zig","patterns":[{"match":"\\\\b[A-Z_a-z][0-9A-Z_a-z]*\\\\b","name":"variable.zig"},{"begin":"@\\"","end":"\\"","name":"variable.string.zig","patterns":[{"include":"#stringcontent"}]}]}]}},"scopeName":"source.zig"}`))];export{e as default};
@@ -0,0 +1,15 @@
1
+ <!doctype html>
2
+ <html lang="ja">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <meta name="color-scheme" content="light dark" />
7
+ <title>rvw</title>
8
+ <script type="module" crossorigin src="/assets/index-BWaG4LjN.js"></script>
9
+ <link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-hePW80VL.js">
10
+ <link rel="stylesheet" crossorigin href="/assets/index-B8_aim9s.css">
11
+ </head>
12
+ <body>
13
+ <div id="root"></div>
14
+ </body>
15
+ </html>
@@ -0,0 +1,96 @@
1
+ CREATE TABLE schema_migrations (
2
+ version INTEGER PRIMARY KEY,
3
+ applied_at TEXT NOT NULL
4
+ );
5
+
6
+ CREATE TABLE app_meta (
7
+ key TEXT PRIMARY KEY,
8
+ value TEXT NOT NULL
9
+ );
10
+
11
+ INSERT INTO app_meta(key, value) VALUES ('change_sequence', '0');
12
+
13
+ CREATE TABLE pull_requests (
14
+ id TEXT PRIMARY KEY,
15
+ host TEXT NOT NULL,
16
+ owner TEXT NOT NULL,
17
+ repository TEXT NOT NULL,
18
+ number INTEGER NOT NULL,
19
+ github_url TEXT NOT NULL,
20
+ local_repository_path TEXT NOT NULL,
21
+ git_common_dir TEXT NOT NULL,
22
+ latest_title TEXT NOT NULL,
23
+ latest_body TEXT NOT NULL,
24
+ latest_base_ref_name TEXT NOT NULL,
25
+ latest_head_ref_name TEXT NOT NULL,
26
+ latest_base_oid TEXT NOT NULL,
27
+ latest_head_oid TEXT NOT NULL,
28
+ github_updated_at TEXT NOT NULL,
29
+ fetched_at TEXT NOT NULL,
30
+ created_at TEXT NOT NULL,
31
+ updated_at TEXT NOT NULL,
32
+ UNIQUE(host, owner, repository, number)
33
+ );
34
+
35
+ CREATE TABLE review_versions (
36
+ id TEXT PRIMARY KEY,
37
+ pull_request_id TEXT NOT NULL REFERENCES pull_requests(id) ON DELETE CASCADE,
38
+ sequence INTEGER NOT NULL,
39
+ previous_review_version_id TEXT REFERENCES review_versions(id),
40
+ base_tip_oid TEXT NOT NULL,
41
+ comparison_base_oid TEXT NOT NULL,
42
+ head_oid TEXT NOT NULL,
43
+ comparison_base_git_ref TEXT NOT NULL,
44
+ head_git_ref TEXT NOT NULL,
45
+ pr_title TEXT NOT NULL,
46
+ pr_body TEXT NOT NULL,
47
+ pr_markdown TEXT NOT NULL,
48
+ pr_markdown_format_version INTEGER NOT NULL DEFAULT 1,
49
+ summary TEXT,
50
+ captured_at TEXT NOT NULL,
51
+ UNIQUE(pull_request_id, sequence)
52
+ );
53
+
54
+ CREATE TABLE comments (
55
+ id TEXT PRIMARY KEY,
56
+ pull_request_id TEXT NOT NULL REFERENCES pull_requests(id) ON DELETE CASCADE,
57
+ created_review_version_id TEXT NOT NULL REFERENCES review_versions(id),
58
+ resolved_at TEXT,
59
+ created_at TEXT NOT NULL,
60
+ updated_at TEXT NOT NULL
61
+ );
62
+
63
+ CREATE TABLE comment_targets (
64
+ comment_id TEXT PRIMARY KEY REFERENCES comments(id) ON DELETE CASCADE,
65
+ target_kind TEXT NOT NULL CHECK(target_kind IN ('pull_request', 'document')),
66
+ document_kind TEXT CHECK(document_kind IN ('pull_request_markdown', 'repository_file')),
67
+ document_review_version_id TEXT REFERENCES review_versions(id),
68
+ source_oid TEXT,
69
+ file_path TEXT,
70
+ start_line INTEGER,
71
+ end_line INTEGER,
72
+ CHECK(start_line IS NULL OR start_line >= 1),
73
+ CHECK(end_line IS NULL OR end_line >= start_line),
74
+ CHECK(
75
+ (target_kind = 'pull_request' AND document_kind IS NULL AND document_review_version_id IS NULL AND source_oid IS NULL AND file_path IS NULL AND start_line IS NULL AND end_line IS NULL)
76
+ OR
77
+ (target_kind = 'document' AND document_kind = 'pull_request_markdown' AND document_review_version_id IS NOT NULL AND source_oid IS NULL AND file_path IS NULL)
78
+ OR
79
+ (target_kind = 'document' AND document_kind = 'repository_file' AND document_review_version_id IS NOT NULL AND source_oid IS NOT NULL AND file_path IS NOT NULL)
80
+ ),
81
+ CHECK((start_line IS NULL AND end_line IS NULL) OR (start_line IS NOT NULL AND end_line IS NOT NULL))
82
+ );
83
+
84
+ CREATE TABLE comment_posts (
85
+ id TEXT PRIMARY KEY,
86
+ comment_id TEXT NOT NULL REFERENCES comments(id) ON DELETE CASCADE,
87
+ body TEXT NOT NULL CHECK(length(body) > 0),
88
+ related_review_version_id TEXT REFERENCES review_versions(id),
89
+ author_label TEXT,
90
+ created_at TEXT NOT NULL
91
+ );
92
+
93
+ CREATE INDEX review_versions_pr_sequence ON review_versions(pull_request_id, sequence);
94
+ CREATE INDEX comments_pr_state_updated ON comments(pull_request_id, resolved_at, updated_at);
95
+ CREATE INDEX comment_posts_comment_created ON comment_posts(comment_id, created_at);
96
+ CREATE INDEX comment_targets_document ON comment_targets(document_review_version_id, file_path);
@@ -0,0 +1,120 @@
1
+ ALTER TABLE pull_requests
2
+ ADD COLUMN latest_comparison_base_oid TEXT NOT NULL DEFAULT '';
3
+
4
+ UPDATE pull_requests
5
+ SET latest_comparison_base_oid = COALESCE(
6
+ (
7
+ SELECT comparison_base_oid
8
+ FROM review_versions
9
+ WHERE review_versions.pull_request_id = pull_requests.id
10
+ ORDER BY sequence DESC
11
+ LIMIT 1
12
+ ),
13
+ latest_base_oid
14
+ );
15
+
16
+ CREATE TABLE comments_v2 (
17
+ id TEXT PRIMARY KEY,
18
+ pull_request_id TEXT NOT NULL REFERENCES pull_requests(id) ON DELETE CASCADE,
19
+ created_head_oid TEXT NOT NULL,
20
+ resolved_at TEXT,
21
+ created_at TEXT NOT NULL,
22
+ updated_at TEXT NOT NULL
23
+ );
24
+
25
+ INSERT INTO comments_v2(
26
+ id, pull_request_id, created_head_oid, resolved_at, created_at, updated_at
27
+ )
28
+ SELECT
29
+ comments.id,
30
+ comments.pull_request_id,
31
+ review_versions.head_oid,
32
+ comments.resolved_at,
33
+ comments.created_at,
34
+ comments.updated_at
35
+ FROM comments
36
+ JOIN review_versions ON review_versions.id = comments.created_review_version_id;
37
+
38
+ CREATE TABLE comment_targets_v2 (
39
+ comment_id TEXT PRIMARY KEY REFERENCES comments_v2(id) ON DELETE CASCADE,
40
+ target_kind TEXT NOT NULL CHECK(target_kind IN ('pull_request', 'document')),
41
+ document_kind TEXT CHECK(document_kind IN ('pull_request_markdown', 'repository_file')),
42
+ source_oid TEXT,
43
+ file_path TEXT,
44
+ source_document_hash TEXT,
45
+ quoted_text TEXT,
46
+ start_line INTEGER,
47
+ end_line INTEGER,
48
+ CHECK(start_line IS NULL OR start_line >= 1),
49
+ CHECK(end_line IS NULL OR end_line >= start_line),
50
+ CHECK(
51
+ (target_kind = 'pull_request' AND document_kind IS NULL AND source_oid IS NULL AND file_path IS NULL AND source_document_hash IS NULL AND quoted_text IS NULL AND start_line IS NULL AND end_line IS NULL)
52
+ OR
53
+ (target_kind = 'document' AND document_kind = 'pull_request_markdown' AND source_oid IS NULL AND file_path IS NULL AND source_document_hash IS NOT NULL)
54
+ OR
55
+ (target_kind = 'document' AND document_kind = 'repository_file' AND source_oid IS NOT NULL AND file_path IS NOT NULL AND source_document_hash IS NULL AND quoted_text IS NULL)
56
+ ),
57
+ CHECK((start_line IS NULL AND end_line IS NULL) OR (start_line IS NOT NULL AND end_line IS NOT NULL))
58
+ );
59
+
60
+ INSERT INTO comment_targets_v2(
61
+ comment_id,
62
+ target_kind,
63
+ document_kind,
64
+ source_oid,
65
+ file_path,
66
+ source_document_hash,
67
+ quoted_text,
68
+ start_line,
69
+ end_line
70
+ )
71
+ SELECT
72
+ comment_id,
73
+ target_kind,
74
+ document_kind,
75
+ source_oid,
76
+ file_path,
77
+ CASE
78
+ WHEN document_kind = 'pull_request_markdown'
79
+ THEN 'legacy:' || document_review_version_id
80
+ ELSE NULL
81
+ END,
82
+ NULL,
83
+ start_line,
84
+ end_line
85
+ FROM comment_targets;
86
+
87
+ CREATE TABLE comment_posts_v2 (
88
+ id TEXT PRIMARY KEY,
89
+ comment_id TEXT NOT NULL REFERENCES comments_v2(id) ON DELETE CASCADE,
90
+ body TEXT NOT NULL CHECK(length(body) > 0),
91
+ related_commit_oid TEXT,
92
+ author_label TEXT,
93
+ created_at TEXT NOT NULL
94
+ );
95
+
96
+ INSERT INTO comment_posts_v2(
97
+ id, comment_id, body, related_commit_oid, author_label, created_at
98
+ )
99
+ SELECT
100
+ comment_posts.id,
101
+ comment_posts.comment_id,
102
+ comment_posts.body,
103
+ review_versions.head_oid,
104
+ comment_posts.author_label,
105
+ comment_posts.created_at
106
+ FROM comment_posts
107
+ LEFT JOIN review_versions ON review_versions.id = comment_posts.related_review_version_id;
108
+
109
+ DROP TABLE comment_posts;
110
+ DROP TABLE comment_targets;
111
+ DROP TABLE comments;
112
+ DROP TABLE review_versions;
113
+
114
+ ALTER TABLE comments_v2 RENAME TO comments;
115
+ ALTER TABLE comment_targets_v2 RENAME TO comment_targets;
116
+ ALTER TABLE comment_posts_v2 RENAME TO comment_posts;
117
+
118
+ CREATE INDEX comments_pr_state_updated ON comments(pull_request_id, resolved_at, updated_at);
119
+ CREATE INDEX comment_posts_comment_created ON comment_posts(comment_id, created_at);
120
+ CREATE INDEX comment_targets_document ON comment_targets(document_kind, source_oid, file_path);
@@ -0,0 +1,36 @@
1
+ CREATE TABLE comment_posts_v3 (
2
+ id TEXT PRIMARY KEY,
3
+ comment_id TEXT NOT NULL REFERENCES comments(id) ON DELETE CASCADE,
4
+ body TEXT NOT NULL CHECK(length(body) > 0),
5
+ related_commit_oid TEXT,
6
+ author_label TEXT,
7
+ is_root INTEGER NOT NULL CHECK(is_root IN (0, 1)),
8
+ created_at TEXT NOT NULL,
9
+ updated_at TEXT NOT NULL
10
+ );
11
+
12
+ INSERT INTO comment_posts_v3(
13
+ id, comment_id, body, related_commit_oid, author_label, is_root, created_at, updated_at
14
+ )
15
+ SELECT
16
+ posts.id,
17
+ posts.comment_id,
18
+ posts.body,
19
+ posts.related_commit_oid,
20
+ posts.author_label,
21
+ CASE WHEN posts.id = (
22
+ SELECT root.id
23
+ FROM comment_posts AS root
24
+ WHERE root.comment_id = posts.comment_id
25
+ ORDER BY root.created_at ASC, root.id ASC
26
+ LIMIT 1
27
+ ) THEN 1 ELSE 0 END,
28
+ posts.created_at,
29
+ posts.created_at
30
+ FROM comment_posts AS posts;
31
+
32
+ DROP TABLE comment_posts;
33
+ ALTER TABLE comment_posts_v3 RENAME TO comment_posts;
34
+
35
+ CREATE INDEX comment_posts_comment_created ON comment_posts(comment_id, created_at);
36
+ CREATE UNIQUE INDEX comment_posts_one_root ON comment_posts(comment_id) WHERE is_root = 1;
@@ -0,0 +1,25 @@
1
+ CREATE TABLE walkthroughs (
2
+ id TEXT PRIMARY KEY,
3
+ pull_request_id TEXT NOT NULL REFERENCES pull_requests(id) ON DELETE CASCADE,
4
+ source_oid TEXT NOT NULL,
5
+ title TEXT NOT NULL CHECK(length(title) > 0),
6
+ body TEXT NOT NULL CHECK(length(body) > 0),
7
+ author_label TEXT,
8
+ diagram_bindings_json TEXT NOT NULL DEFAULT '{}',
9
+ created_at TEXT NOT NULL
10
+ );
11
+
12
+ CREATE TABLE walkthrough_references (
13
+ walkthrough_id TEXT NOT NULL REFERENCES walkthroughs(id) ON DELETE CASCADE,
14
+ reference_id TEXT NOT NULL,
15
+ label TEXT NOT NULL CHECK(length(label) > 0),
16
+ file_path TEXT NOT NULL CHECK(length(file_path) > 0),
17
+ start_line INTEGER NOT NULL CHECK(start_line > 0),
18
+ end_line INTEGER NOT NULL CHECK(end_line >= start_line),
19
+ description TEXT,
20
+ sort_order INTEGER NOT NULL CHECK(sort_order >= 0),
21
+ PRIMARY KEY(walkthrough_id, reference_id)
22
+ );
23
+
24
+ CREATE INDEX walkthroughs_pull_request_created
25
+ ON walkthroughs(pull_request_id, created_at DESC);
@@ -0,0 +1,53 @@
1
+ CREATE TABLE comment_targets_v3 (
2
+ comment_id TEXT PRIMARY KEY REFERENCES comments(id) ON DELETE CASCADE,
3
+ target_kind TEXT NOT NULL CHECK(target_kind IN ('pull_request', 'document', 'walkthrough')),
4
+ document_kind TEXT CHECK(document_kind IN ('pull_request_markdown', 'repository_file')),
5
+ source_oid TEXT,
6
+ file_path TEXT,
7
+ source_document_hash TEXT,
8
+ quoted_text TEXT,
9
+ walkthrough_id TEXT REFERENCES walkthroughs(id),
10
+ start_line INTEGER,
11
+ end_line INTEGER,
12
+ CHECK(start_line IS NULL OR start_line >= 1),
13
+ CHECK(end_line IS NULL OR end_line >= start_line),
14
+ CHECK(
15
+ (target_kind = 'pull_request' AND document_kind IS NULL AND source_oid IS NULL AND file_path IS NULL AND source_document_hash IS NULL AND quoted_text IS NULL AND walkthrough_id IS NULL AND start_line IS NULL AND end_line IS NULL)
16
+ OR
17
+ (target_kind = 'document' AND document_kind = 'pull_request_markdown' AND source_oid IS NULL AND file_path IS NULL AND source_document_hash IS NOT NULL AND walkthrough_id IS NULL)
18
+ OR
19
+ (target_kind = 'document' AND document_kind = 'repository_file' AND source_oid IS NOT NULL AND file_path IS NOT NULL AND source_document_hash IS NULL AND quoted_text IS NULL AND walkthrough_id IS NULL)
20
+ OR
21
+ (target_kind = 'walkthrough' AND document_kind IS NULL AND source_oid IS NULL AND file_path IS NULL AND source_document_hash IS NULL AND quoted_text IS NULL AND walkthrough_id IS NOT NULL AND start_line IS NULL AND end_line IS NULL)
22
+ ),
23
+ CHECK((start_line IS NULL AND end_line IS NULL) OR (start_line IS NOT NULL AND end_line IS NOT NULL))
24
+ );
25
+
26
+ INSERT INTO comment_targets_v3(
27
+ comment_id,
28
+ target_kind,
29
+ document_kind,
30
+ source_oid,
31
+ file_path,
32
+ source_document_hash,
33
+ quoted_text,
34
+ start_line,
35
+ end_line
36
+ )
37
+ SELECT
38
+ comment_id,
39
+ target_kind,
40
+ document_kind,
41
+ source_oid,
42
+ file_path,
43
+ source_document_hash,
44
+ quoted_text,
45
+ start_line,
46
+ end_line
47
+ FROM comment_targets;
48
+
49
+ DROP TABLE comment_targets;
50
+ ALTER TABLE comment_targets_v3 RENAME TO comment_targets;
51
+
52
+ CREATE INDEX comment_targets_document ON comment_targets(document_kind, source_oid, file_path);
53
+ CREATE INDEX comment_targets_walkthrough ON comment_targets(walkthrough_id);
@@ -0,0 +1,2 @@
1
+ INSERT INTO app_meta(key, value) VALUES ('theme_preference', 'system')
2
+ ON CONFLICT(key) DO NOTHING;
@@ -0,0 +1,24 @@
1
+ CREATE TABLE walkthrough_references_v2 (
2
+ walkthrough_id TEXT NOT NULL REFERENCES walkthroughs(id) ON DELETE CASCADE,
3
+ reference_id TEXT NOT NULL,
4
+ label TEXT NOT NULL CHECK(length(label) > 0),
5
+ file_path TEXT NOT NULL CHECK(length(file_path) > 0),
6
+ start_line INTEGER,
7
+ end_line INTEGER,
8
+ description TEXT,
9
+ sort_order INTEGER NOT NULL CHECK(sort_order >= 0),
10
+ CHECK(start_line IS NULL OR start_line > 0),
11
+ CHECK(end_line IS NULL OR end_line >= start_line),
12
+ CHECK((start_line IS NULL AND end_line IS NULL) OR (start_line IS NOT NULL AND end_line IS NOT NULL)),
13
+ PRIMARY KEY(walkthrough_id, reference_id)
14
+ );
15
+
16
+ INSERT INTO walkthrough_references_v2(
17
+ walkthrough_id, reference_id, label, file_path, start_line, end_line, description, sort_order
18
+ )
19
+ SELECT
20
+ walkthrough_id, reference_id, label, file_path, start_line, end_line, description, sort_order
21
+ FROM walkthrough_references;
22
+
23
+ DROP TABLE walkthrough_references;
24
+ ALTER TABLE walkthrough_references_v2 RENAME TO walkthrough_references;