mulmoterminal 0.9.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/README.md +19 -1
  2. package/dist/assets/{abnfDiagram-VRR7QNED-6nNByj6v-CcrZYOgs.js → abnfDiagram-VRR7QNED-6nNByj6v-CVgYtC8A.js} +1 -1
  3. package/dist/assets/architecture-TIHT7OUA-CYMWc3UT-CcGK28Wb.js +1 -0
  4. package/dist/assets/{architectureDiagram-ZJ3FMSHR-Bgnyaj_i-CUuVwmX4.js → architectureDiagram-ZJ3FMSHR-Bgnyaj_i-DIwUJtFo.js} +1 -1
  5. package/dist/assets/{blockDiagram-677ZJIJ3-DQ35o5E4-CvxU8aZe.js → blockDiagram-677ZJIJ3-DQ35o5E4-BOstxdgY.js} +1 -1
  6. package/dist/assets/{c4Diagram-LMCZKHZV-ClWZeiWo-D8f1kYY_.js → c4Diagram-LMCZKHZV-ClWZeiWo-CJgnuXMJ.js} +1 -1
  7. package/dist/assets/channel-Di5rtkx0-CJv7O5cW.js +1 -0
  8. package/dist/assets/{chunk-32BRIVSS-CCt9wtYd-Db_FZIf1.js → chunk-32BRIVSS-CCt9wtYd-D-DAaeXJ.js} +1 -1
  9. package/dist/assets/{chunk-52WLFC77-FbBbR4uI-7n2yHJ2K.js → chunk-52WLFC77-FbBbR4uI-BgyQM603.js} +1 -1
  10. package/dist/assets/{chunk-C7G6YPKG-C87hlS9c-DpkxPQKG.js → chunk-C7G6YPKG-C87hlS9c-CNU64g__.js} +1 -1
  11. package/dist/assets/{chunk-EX3LRPZG-BqGqMXLN-BgqbD-Ak.js → chunk-EX3LRPZG-BqGqMXLN-BCZDGM-w.js} +1 -1
  12. package/dist/assets/{chunk-FWX5IMBZ-BkbSAAuW-BmYnGiYn.js → chunk-FWX5IMBZ-BkbSAAuW-Bq9OtrcX.js} +2 -2
  13. package/dist/assets/{chunk-HOUHSVGY-Cxu0eDlh-TqsiFF7j.js → chunk-HOUHSVGY-Cxu0eDlh-BIvtWbJ0.js} +1 -1
  14. package/dist/assets/{chunk-ICXQ74PX-hiraF_Xj-Cx0hIueU.js → chunk-ICXQ74PX-hiraF_Xj-Dx5twF_S.js} +1 -1
  15. package/dist/assets/{chunk-MOJQB5TN-CqxshQHA-pSbnAJ7U.js → chunk-MOJQB5TN-CqxshQHA-BV_RK3Vr.js} +1 -1
  16. package/dist/assets/{chunk-OGEWGWER-CjCr7ceX-C2qBJ2Pg.js → chunk-OGEWGWER-CjCr7ceX-DdaHiBxq.js} +1 -1
  17. package/dist/assets/{chunk-PUDLZKDR-Dx6M-vz1-DvP2VeJc.js → chunk-PUDLZKDR-Dx6M-vz1-DmN05gZD.js} +1 -1
  18. package/dist/assets/{chunk-Q4XR5HBZ-CZd-9lTB-B9gNYRb9.js → chunk-Q4XR5HBZ-CZd-9lTB-cw9QtxXY.js} +1 -1
  19. package/dist/assets/{chunk-V7JOEXUC-rI0xlC_O-W1oR2e7R.js → chunk-V7JOEXUC-rI0xlC_O-gsq823jB.js} +1 -1
  20. package/dist/assets/{chunk-VAUOI2AC-DrcykVNK-UQ8qJq-D.js → chunk-VAUOI2AC-DrcykVNK-D4zp9mNB.js} +1 -1
  21. package/dist/assets/{chunk-VR4S4FIN-O6iF8Yvf-BEZ-hkFq.js → chunk-VR4S4FIN-O6iF8Yvf-CNstNe-T.js} +1 -1
  22. package/dist/assets/{chunk-WYO6CB5R-B83L_z6I-zjc6vart.js → chunk-WYO6CB5R-B83L_z6I-BGsPsjAI.js} +1 -1
  23. package/dist/assets/{chunk-ZGVPDNZ5-BpFv9JSP-WgpTVFz9.js → chunk-ZGVPDNZ5-BpFv9JSP-IiKGkWvT.js} +1 -1
  24. package/dist/assets/classDiagram-OUVF2IWQ-BgAZMSbT-DdJSBc1F.js +1 -0
  25. package/dist/assets/classDiagram-v2-EOCWNBFH-DxHTyui1-DdJSBc1F.js +1 -0
  26. package/dist/assets/cynefin-VYW2F7L2-DqA3n9nY-BIulluQj.js +1 -0
  27. package/dist/assets/{cynefinDiagram-TSTJHNR4-x0-0sQ15-D6l6qqRO.js → cynefinDiagram-TSTJHNR4-x0-0sQ15-DKxBfSSe.js} +1 -1
  28. package/dist/assets/{dagre-VKFMJZFB-CQdfl-bx-BVKoii9B.js → dagre-VKFMJZFB-CQdfl-bx-xPr09wi6.js} +1 -1
  29. package/dist/assets/{diagram-FQU43EPY-BOSB6VUb-OjDjlvVc.js → diagram-FQU43EPY-BOSB6VUb-BhBLu_3q.js} +1 -1
  30. package/dist/assets/{diagram-G47NLZAW-DLXrcXsN-TSzEtHdz.js → diagram-G47NLZAW-DLXrcXsN-CFT5wbq3.js} +1 -1
  31. package/dist/assets/{diagram-NH7WQ7WH-BMQp1rkF-6YpHLSkw.js → diagram-NH7WQ7WH-BMQp1rkF-OnMtnXwo.js} +1 -1
  32. package/dist/assets/{diagram-OA4YK3LP-D1wQ0vUj-D080UfcD.js → diagram-OA4YK3LP-D1wQ0vUj-Buf7sHLb.js} +1 -1
  33. package/dist/assets/{diagram-WEI45ONY-RR0DpF8R-DAhnbGro.js → diagram-WEI45ONY-RR0DpF8R-CiKo8dEV.js} +1 -1
  34. package/dist/assets/{ebnfDiagram-CCIWWBDH-M123uVJ8-CgYjblvQ.js → ebnfDiagram-CCIWWBDH-M123uVJ8-BF7MJcAR.js} +1 -1
  35. package/dist/assets/{erDiagram-Q63AITRT-BWx_-PXG-B-9YiTfM.js → erDiagram-Q63AITRT-BWx_-PXG-CaNpcR0c.js} +1 -1
  36. package/dist/assets/eventmodeling-45OFAUF4-_BVSjAXf-D8Ivbop-.js +1 -0
  37. package/dist/assets/flowDiagram-23GEKE2U-BeOc_anm-Dk5wVlnP.js +1 -0
  38. package/dist/assets/{ganttDiagram-NO4QXBWP-BOoJ1eTw-DpUm7W4G.js → ganttDiagram-NO4QXBWP-BOoJ1eTw-D43vlPZo.js} +1 -1
  39. package/dist/assets/gitGraph-TEB2WS4Q-CH12KLTN-MW0ISpSx.js +1 -0
  40. package/dist/assets/{gitGraphDiagram-IHSO6WYX-B2CJhk_G-CXhq2YaR.js → gitGraphDiagram-IHSO6WYX-B2CJhk_G-Plj2BffT.js} +1 -1
  41. package/dist/assets/{index-BVNLkhp4.css → index-3f30jaT0.css} +1 -1
  42. package/dist/assets/index-De_Nmxpc.js +357 -0
  43. package/dist/assets/info-DKCQHKI2-Cbw3mbiK-_OUQv6WN.js +1 -0
  44. package/dist/assets/{infoDiagram-FWYZ7A6U-Mp1X3pBP-BH6ylmwo.js → infoDiagram-FWYZ7A6U-Mp1X3pBP-CuA1P6ZB.js} +1 -1
  45. package/dist/assets/{ishikawaDiagram-FXEZZL3T-BNG7tkJu-DKlrUTwv.js → ishikawaDiagram-FXEZZL3T-BNG7tkJu-BNMqzXxb.js} +1 -1
  46. package/dist/assets/{journeyDiagram-5HDEW3XC-Dbp_hY9X-B0zuSRxn.js → journeyDiagram-5HDEW3XC-Dbp_hY9X-NflQYiYP.js} +1 -1
  47. package/dist/assets/{kanban-definition-HUTT4EX6-DSTc5u3q-B2UMHQ_t.js → kanban-definition-HUTT4EX6-DSTc5u3q-DQm3IbIw.js} +1 -1
  48. package/dist/assets/{line-B1wBwzrY-NlyrzQ8H.js → line-B1wBwzrY-PYTdSGHu.js} +1 -1
  49. package/dist/assets/{marp-Ak2po4xM.js → marp-iErKCKYz.js} +1 -1
  50. package/dist/assets/{mermaid-parser.core-DC7NPJ_M-uogn_ZQO.js → mermaid-parser.core-DC7NPJ_M-DAhbeSgr.js} +2 -2
  51. package/dist/assets/{mermaid.core-DZM3Ha-E-CTwQuxp4.js → mermaid.core-DZM3Ha-E-BNwp1SSa.js} +3 -3
  52. package/dist/assets/{mindmap-definition-LN4V7U3C-DYtgcMsY-CF8BKsai.js → mindmap-definition-LN4V7U3C-DYtgcMsY-CdTgRgD3.js} +1 -1
  53. package/dist/assets/packet-7NZHBO7P-lwb58iYx-C10L-hFO.js +1 -0
  54. package/dist/assets/{pegDiagram-2B236MQR-C43eIpKM-Byur3AI9.js → pegDiagram-2B236MQR-C43eIpKM-BoY9YcBj.js} +1 -1
  55. package/dist/assets/pie-RZYD4A2V-B1UWb4Gu--5742Zz5.js +1 -0
  56. package/dist/assets/{pieDiagram-ENE6RG2P-BkTqgJyR-LmzmCqEK.js → pieDiagram-ENE6RG2P-BkTqgJyR-BvAMoz4E.js} +1 -1
  57. package/dist/assets/{quadrantDiagram-ABIIQ3AL-Bm1Zjm45-CvxrZG72.js → quadrantDiagram-ABIIQ3AL-Bm1Zjm45-CGzER_DL.js} +1 -1
  58. package/dist/assets/radar-I7S5WNFK-7CKcb_l--BHQOivQG.js +1 -0
  59. package/dist/assets/railroad-3IZDKUUU-gCySKdnW-BbRNCyKS.js +1 -0
  60. package/dist/assets/railroad-abnf-AHOZXSZD-BophH4r--D0SwiYgD.js +1 -0
  61. package/dist/assets/railroad-ebnf-EBAXGLYW-AZNjl_Zu-DdB_RBGP.js +1 -0
  62. package/dist/assets/railroad-peg-LSFZ7HO6-BSiEEyeb-CeDMAu58.js +1 -0
  63. package/dist/assets/{railroadDiagram-RFXS5EU6-BkfbdeAs-Dmaz7qwx.js → railroadDiagram-RFXS5EU6-BkfbdeAs-D3nWzhoi.js} +1 -1
  64. package/dist/assets/{requirementDiagram-TGXJPOKE-CrGTTjYg-DLd9Qy31.js → requirementDiagram-TGXJPOKE-CrGTTjYg-BXJOdcqX.js} +1 -1
  65. package/dist/assets/{sankeyDiagram-HTMAVEWB-rWXPf03Z-DuYt79nd.js → sankeyDiagram-HTMAVEWB-rWXPf03Z-BT7OPSSo.js} +1 -1
  66. package/dist/assets/{sequenceDiagram-DBY2YBRQ-nkJYWO2m-CN2BTBIe.js → sequenceDiagram-DBY2YBRQ-nkJYWO2m-DUQmimHp.js} +1 -1
  67. package/dist/assets/{stateDiagram-2N3HPSRC-T4-clK8b-CQkZXPtf.js → stateDiagram-2N3HPSRC-T4-clK8b-DLDU9NAl.js} +1 -1
  68. package/dist/assets/stateDiagram-v2-6OUMAXLB-DIp7nhRd-Bxnpzuaj.js +1 -0
  69. package/dist/assets/{swimlanes-5IMT3BWC-HmQNEntu-BxSqfUwA.js → swimlanes-5IMT3BWC-HmQNEntu-CiEjMDZR.js} +1 -1
  70. package/dist/assets/swimlanesDiagram-G3AALYLV-BeoZhwg7-CWfgjlGg.js +8 -0
  71. package/dist/assets/{timeline-definition-FHXFAJF6-CNc9jSTP-XW10LDWA.js → timeline-definition-FHXFAJF6-CNc9jSTP-qngINip4.js} +1 -1
  72. package/dist/assets/treeView-QDETBFTQ-nIQcG1h9-DswVl6Qi.js +1 -0
  73. package/dist/assets/treemap-6X3UGDF4-BnsvC8yL-JquGkPwZ.js +1 -0
  74. package/dist/assets/{vennDiagram-L72KCM5P-Dr3pTJ_0-BV8NVuqb.js → vennDiagram-L72KCM5P-Dr3pTJ_0-CI-qJgRs.js} +1 -1
  75. package/dist/assets/wardley-OPB4EBWU-8Odxkx6V-Cv0QuPfn.js +1 -0
  76. package/dist/assets/{wardleyDiagram-EHGQE667-DSFc7ZZa-CPdAgmn_.js → wardleyDiagram-EHGQE667-DSFc7ZZa-DlPPC65K.js} +1 -1
  77. package/dist/assets/{xychartDiagram-FW5EYKEG-BP0Nn4Pp-CJCoz2E2.js → xychartDiagram-FW5EYKEG-BP0Nn4Pp-BinlTtjN.js} +1 -1
  78. package/dist/index.html +2 -2
  79. package/package.json +1 -1
  80. package/server/activity-hook.spec.ts +37 -0
  81. package/server/activity-hook.ts +28 -0
  82. package/server/app-config.spec.ts +2 -2
  83. package/server/app-config.ts +3 -2
  84. package/server/config-routes.ts +11 -6
  85. package/server/config-schema.ts +13 -1
  86. package/server/dir-config.spec.ts +2 -2
  87. package/server/dir-config.ts +3 -2
  88. package/server/header-config.spec.ts +45 -6
  89. package/server/header-config.ts +29 -7
  90. package/server/header-context.ts +1 -0
  91. package/server/header-resolve.spec.ts +48 -1
  92. package/server/header-resolve.ts +18 -3
  93. package/server/header-title.spec.ts +26 -0
  94. package/server/header-title.ts +17 -0
  95. package/server/index.ts +191 -40
  96. package/server/pr-for-branch.spec.ts +50 -0
  97. package/server/pr-for-branch.ts +58 -0
  98. package/server/skills/mulmoterminal-config/SKILL.md +10 -2
  99. package/server/transcript.spec.ts +43 -0
  100. package/server/transcript.ts +16 -0
  101. package/server/waiting-state.spec.ts +50 -0
  102. package/server/waiting-state.ts +29 -0
  103. package/dist/assets/architecture-TIHT7OUA-CYMWc3UT-QInGApkV.js +0 -1
  104. package/dist/assets/channel-Di5rtkx0-DHqL817r.js +0 -1
  105. package/dist/assets/classDiagram-OUVF2IWQ-BgAZMSbT-VLjGJAJO.js +0 -1
  106. package/dist/assets/classDiagram-v2-EOCWNBFH-DxHTyui1-VLjGJAJO.js +0 -1
  107. package/dist/assets/cynefin-VYW2F7L2-DqA3n9nY-DeDS-5by.js +0 -1
  108. package/dist/assets/eventmodeling-45OFAUF4-_BVSjAXf-CF7wgGuX.js +0 -1
  109. package/dist/assets/flowDiagram-23GEKE2U-BeOc_anm-CfWH0Tbu.js +0 -1
  110. package/dist/assets/gitGraph-TEB2WS4Q-CH12KLTN-C2PnVeMX.js +0 -1
  111. package/dist/assets/index-83utxopd.js +0 -357
  112. package/dist/assets/info-DKCQHKI2-Cbw3mbiK-CLk5uJ5t.js +0 -1
  113. package/dist/assets/packet-7NZHBO7P-lwb58iYx-3tUu63Qj.js +0 -1
  114. package/dist/assets/pie-RZYD4A2V-B1UWb4Gu-DiT3qAWP.js +0 -1
  115. package/dist/assets/radar-I7S5WNFK-7CKcb_l--C_JwXiDu.js +0 -1
  116. package/dist/assets/railroad-3IZDKUUU-gCySKdnW-C30t7Eqd.js +0 -1
  117. package/dist/assets/railroad-abnf-AHOZXSZD-BophH4r--CGjr3zMY.js +0 -1
  118. package/dist/assets/railroad-ebnf-EBAXGLYW-AZNjl_Zu-BLsfAiEh.js +0 -1
  119. package/dist/assets/railroad-peg-LSFZ7HO6-BSiEEyeb-DpWrKO8r.js +0 -1
  120. package/dist/assets/stateDiagram-v2-6OUMAXLB-DIp7nhRd-TfY_5w1P.js +0 -1
  121. package/dist/assets/swimlanesDiagram-G3AALYLV-BeoZhwg7-BXdsLx4g.js +0 -8
  122. package/dist/assets/treeView-QDETBFTQ-nIQcG1h9-BbYxhc6_.js +0 -1
  123. package/dist/assets/treemap-6X3UGDF4-BnsvC8yL-C4IdHouD.js +0 -1
  124. package/dist/assets/wardley-OPB4EBWU-8Odxkx6V-BlJFib5h.js +0 -1
package/README.md CHANGED
@@ -300,6 +300,23 @@ The Settings modal (⚙) persists per-user UI choices to `~/.mulmoterminal/confi
300
300
  | `prRepos` | `owner/repo` entries whose open PRs/issues the cross-repo **PRs & Issues** view aggregates (via your `gh` login). |
301
301
  | `launchers` | `{ label, command }` entries offered in a grid cell's launcher besides Claude — a plain shell, `codex`, any interactive command. |
302
302
  | `userMcpServers` | `{ id, url }` HTTP MCP servers merged into the **single-view** Claude session's `--mcp-config` (a `localhost` URL is reached over `host.docker.internal` in the Docker sandbox). Takes effect on the next session. |
303
+ | `buttons` | Header action buttons — see [Header buttons](#header-buttons). Omit to keep the defaults; set to replace them. |
304
+ | `chips` | Header info chips. Omit to keep the default set; `[]` hides all built-ins. |
305
+
306
+ #### Header buttons
307
+
308
+ Each terminal header shows configurable **action buttons**. Omitting `buttons` (globally or per-dir)
309
+ keeps the built-in defaults — a **file-path picker** (📎) and an **OS file-manager reveal** (📂).
310
+ Setting `buttons` (at either level) **replaces** the defaults with your list, so you can drop, reorder,
311
+ or swap them — e.g. add the in-app **📁 file explorer** with `"open": { "files": "${dir}" }`.
312
+ A button has an `id`, `label`, and a `run` of `"shell"` (run a command), `"input"` (send text to the
313
+ agent), or `"open"`. An `open` button targets one of `url` / `reveal` (OS file manager) / `files`
314
+ (in-app explorer) / `view` (a built-in overlay) / `terminal` (a dir → a new cell running `$SHELL`,
315
+ opened next to the current one) / `pr: true` (open the current branch's PR — the button is hidden when
316
+ there's no open PR) / `pickFile: true` (OS file dialog → insert the path).
317
+ `${dir}`, `${branch}`, `${repo}`, … substitute live context, and `when` (e.g. `"isGitRepo"`) gates
318
+ visibility. The `/mulmoterminal-config` skill writes a valid config interactively; per-dir buttons
319
+ merge over the global ones by `id`.
303
320
 
304
321
  **Attention sound.** The default chime is generated with the Web Audio API — **no
305
322
  audio file is bundled**, so the npm package stays light and has no media-licensing
@@ -444,7 +461,8 @@ the last 32 KB of output. See
444
461
 
445
462
  ## Files view (browse & edit)
446
463
 
447
- Every terminal header has a **📁 Files** button that opens a full-screen file explorer
464
+ A terminal header can carry a **📁 Files** button add it as a [header button](#header-buttons)
465
+ (`"open": { "files": "${dir}" }`) — that opens a full-screen file explorer
448
466
  rooted at **that terminal's project directory** — so after Claude says "wrote `foo.md`"
449
467
  you can jump straight there to read or edit it. The left pane is a lazy-loaded directory
450
468
  tree; clicking a file opens it in a **CodeMirror** editor (Markdown / JS-TS / JSON
@@ -1 +1 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-Bdt8pFDJ-DsF7k-Jl.js";import{f as t}from"./src-Brzfja-q-ch1VcTiG.js";import{_ as n,g as r}from"./mermaid-parser.core-DC7NPJ_M-uogn_ZQO.js";import"./chunk-WYO6CB5R-B83L_z6I-zjc6vart.js";import"./chunk-VAUOI2AC-DrcykVNK-UQ8qJq-D.js";import{n as i,r as a,t as o}from"./chunk-MOJQB5TN-CqxshQHA-pSbnAJ7U.js";import{t as s}from"./chunk-JWPE2WC7-BQ3zXr2k-DSd3Ct95.js";var c=r().RailroadAbnf.parser.LangiumParser,l=e(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=e(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=e(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=e(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=e(e=>{switch(e.$type){case`AbnfStringLiteral`:return{type:`terminal`,value:e.value};case`AbnfNumVal`:return{type:`terminal`,value:e.value};case`AbnfRuleName`:return{type:`nonterminal`,name:e.name};case`AbnfGroup`:return l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=e(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=e(e=>{s(e,a),e.title&&a.setTitle(e.title),e.rules.map(e=>a.addRule(m(e)))},`populateDb`),g={parser:{parse:e(e=>{a.clear(),t.debug(`[ABNF Parser] Starting Langium parse`);let r=c.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new n(r);let i=r.value;t.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),t.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:a}},db:a,renderer:o,styles:i};export{g as diagram};
1
+ import{n as e}from"./chunk-Y2CYZVJY-Bdt8pFDJ-DsF7k-Jl.js";import{f as t}from"./src-Brzfja-q-ch1VcTiG.js";import{_ as n,g as r}from"./mermaid-parser.core-DC7NPJ_M-DAhbeSgr.js";import"./chunk-WYO6CB5R-B83L_z6I-BGsPsjAI.js";import"./chunk-VAUOI2AC-DrcykVNK-D4zp9mNB.js";import{n as i,r as a,t as o}from"./chunk-MOJQB5TN-CqxshQHA-BV_RK3Vr.js";import{t as s}from"./chunk-JWPE2WC7-BQ3zXr2k-DSd3Ct95.js";var c=r().RailroadAbnf.parser.LangiumParser,l=e(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=e(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=e(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=e(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=e(e=>{switch(e.$type){case`AbnfStringLiteral`:return{type:`terminal`,value:e.value};case`AbnfNumVal`:return{type:`terminal`,value:e.value};case`AbnfRuleName`:return{type:`nonterminal`,name:e.name};case`AbnfGroup`:return l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=e(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=e(e=>{s(e,a),e.title&&a.setTitle(e.title),e.rules.map(e=>a.addRule(m(e)))},`populateDb`),g={parser:{parse:e(e=>{a.clear(),t.debug(`[ABNF Parser] Starting Langium parse`);let r=c.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new n(r);let i=r.value;t.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),t.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:a}},db:a,renderer:o,styles:i};export{g as diagram};
@@ -0,0 +1 @@
1
+ import{f as e}from"./mermaid-parser.core-DC7NPJ_M-DAhbeSgr.js";export{e as createArchitectureServices};