docmedown 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +69 -20
- package/dist/abnfDiagram-VCTEODGH-CtQBp0Qv.mjs +89 -0
- package/dist/abnfDiagram-VCTEODGH-mccrzlD_.js +1 -0
- package/dist/arc-DgPKXEdT.mjs +82 -0
- package/dist/arc-n7TW7Bis.js +1 -0
- package/dist/architecture-7GRP2DOG-B7myQ46f.js +1 -0
- package/dist/architecture-7GRP2DOG-Cxj1ussQ.mjs +3 -0
- package/dist/architectureDiagram-5GKGNRK7-BdTCu5T3.js +36 -0
- package/dist/architectureDiagram-5GKGNRK7-CkgZa-G1.mjs +4154 -0
- package/dist/array-CApNbSU9.mjs +6 -0
- package/dist/array-DZSRzHA_.js +1 -0
- package/dist/blockDiagram-I7D4REHJ-CSYvpxQw.js +129 -0
- package/dist/blockDiagram-I7D4REHJ-CYngfPD9.mjs +1922 -0
- package/dist/c4Diagram-7LVT6UL2-B-sz5MUK.js +38 -0
- package/dist/c4Diagram-7LVT6UL2-DEzxFf2b.mjs +3010 -0
- package/dist/channel-LgHproiI.mjs +5 -0
- package/dist/channel-yqu0m4cl.js +1 -0
- package/dist/chunk-2E4U76K2-BOyeRQsI.js +1 -0
- package/dist/chunk-2E4U76K2-CoTrgtfg.mjs +348 -0
- package/dist/chunk-2Q5K7J3B-D4EgYPOq.mjs +15 -0
- package/dist/chunk-2Q5K7J3B-DhjCNjaM.js +1 -0
- package/dist/chunk-4HAMMTFA-GFyfmcSO.js +62 -0
- package/dist/chunk-4HAMMTFA-VgWPe1ng.mjs +4188 -0
- package/dist/chunk-5VM5RSS4-GINalzIv.js +15 -0
- package/dist/chunk-5VM5RSS4-TqxtqrwE.mjs +5 -0
- package/dist/chunk-75Z2AOVW-DYouz5MZ.js +2 -0
- package/dist/chunk-75Z2AOVW-Dz0Sko9Y.mjs +1330 -0
- package/dist/chunk-CLGD4ZFX-C5J-e2io.js +1 -0
- package/dist/chunk-CLGD4ZFX-DBkwyMMv.mjs +14 -0
- package/dist/chunk-DU6HZSFF-BEQZSmUu.mjs +3836 -0
- package/dist/chunk-DU6HZSFF-CWc5ewtb.js +127 -0
- package/dist/chunk-F27PBJKO-8jvY_jJK.js +1 -0
- package/dist/chunk-F27PBJKO-DFH3sRZG.mjs +61 -0
- package/dist/chunk-FOHPRMQF-LRqOLsSw.mjs +21456 -0
- package/dist/chunk-FOHPRMQF-tmTlwTeH.js +161 -0
- package/dist/chunk-GMAD6QVW-BZeZ4fdb.mjs +1863 -0
- package/dist/chunk-GMAD6QVW-DEQiTa0c.js +72 -0
- package/dist/chunk-GVQU2GXP-B1D3J05J.mjs +37 -0
- package/dist/chunk-GVQU2GXP-CdJIWN41.js +1 -0
- package/dist/chunk-IMKFNOWR-BmZb9U1f.mjs +2042 -0
- package/dist/chunk-IMKFNOWR-CPJsszGN.js +231 -0
- package/dist/chunk-JWPE2WC7-DIKiF5cm.mjs +8 -0
- package/dist/chunk-JWPE2WC7-p1fYVdYc.js +1 -0
- package/dist/chunk-L3NEJ4N5-TzDiVs78.js +1 -0
- package/dist/chunk-L3NEJ4N5-lal8wUID.mjs +245 -0
- package/dist/chunk-LNGE3PJU-BQX75wkM.js +34 -0
- package/dist/chunk-LNGE3PJU-DJ9JuXV6.mjs +1521 -0
- package/dist/chunk-OSK3NFVY-9AWK88m1.mjs +672 -0
- package/dist/chunk-OSK3NFVY-CHzvVe8m.js +10 -0
- package/dist/chunk-P2QGCYS3-6q3AXPt5.mjs +67 -0
- package/dist/chunk-P2QGCYS3-DKZzpRQW.js +1 -0
- package/dist/chunk-POPQ4Y6H-Dd7J9tx3.mjs +26 -0
- package/dist/chunk-POPQ4Y6H-T5C7wpjf.js +1 -0
- package/dist/chunk-PWAF6VOD-BYG76tEe.mjs +275 -0
- package/dist/chunk-PWAF6VOD-DxZLuCEw.js +1 -0
- package/dist/chunk-SHT3W25Y-B2Wes8jn.mjs +4183 -0
- package/dist/chunk-SHT3W25Y-BQjHSn5K.js +168 -0
- package/dist/chunk-SVP7TREG-BFMd615E.js +88 -0
- package/dist/chunk-SVP7TREG-CynckzeF.mjs +490 -0
- package/dist/chunk-TICWLB2K-BfCuoR1V.mjs +3357 -0
- package/dist/chunk-TICWLB2K-agcyBfUp.js +206 -0
- package/dist/chunk-TLUHSLCS-CUrWaKDG.mjs +59 -0
- package/dist/chunk-TLUHSLCS-Drx_a7am.js +1 -0
- package/dist/chunk-XXDRQBXY-AAk1-Cyg.js +1 -0
- package/dist/chunk-XXDRQBXY-DpR8eYzz.mjs +9 -0
- package/dist/chunk-Y2CYZVJY-CnmLqFtv.js +1 -0
- package/dist/chunk-Y2CYZVJY-i11wjrBe.mjs +12 -0
- package/dist/classDiagram-ZZMXUADV-B7IN9zcX.js +1 -0
- package/dist/classDiagram-ZZMXUADV-tcy6gxSB.mjs +30 -0
- package/dist/classDiagram-v2-VYDZK3BY-B7IN9zcX.js +1 -0
- package/dist/classDiagram-v2-VYDZK3BY-D5wM6Acp.mjs +30 -0
- package/dist/cli.js +719 -532
- package/dist/cose-bilkent-JH36ORCC-DBUPO3qJ.js +1 -0
- package/dist/cose-bilkent-JH36ORCC-Slpx4WIt.mjs +2253 -0
- package/dist/cynefin-OW5HDTMX--QVnfGi1.mjs +3 -0
- package/dist/cynefin-OW5HDTMX-lNKysi7S.js +1 -0
- package/dist/cynefinDiagram-5FMLGOSQ-CsFONYqx.js +62 -0
- package/dist/cynefinDiagram-5FMLGOSQ-DsrxYBcg.mjs +355 -0
- package/dist/cytoscape.esm-C5TvPYYm.mjs +18148 -0
- package/dist/cytoscape.esm-CBmWJr5M.js +321 -0
- package/dist/dagre-CZ6P9L_h.js +1 -0
- package/dist/dagre-GXQ25YYZ-CQszk-7P.js +4 -0
- package/dist/dagre-GXQ25YYZ-ecYByRSn.mjs +425 -0
- package/dist/dagre-J_1oH0eY.mjs +1934 -0
- package/dist/defaultLocale-N-0uLSyg.mjs +198 -0
- package/dist/defaultLocale-ybN1Vtvg.js +1 -0
- package/dist/diagram-S7CK7UJ4-CTMvxX__.js +30 -0
- package/dist/diagram-S7CK7UJ4-DxCghfa-.mjs +301 -0
- package/dist/diagram-UQ7AKVKN-1viEkqlG.js +41 -0
- package/dist/diagram-UQ7AKVKN-BA7Z_oB7.mjs +214 -0
- package/dist/diagram-VSXAHHWV-DgVT19mq.js +3 -0
- package/dist/diagram-VSXAHHWV-Dtqo03M5.mjs +432 -0
- package/dist/diagram-VX7I27RA-CNw0pOX_.js +24 -0
- package/dist/diagram-VX7I27RA-GMPRt8Zh.mjs +527 -0
- package/dist/diagram-Z3DM3KII-C6XdQK_Q.mjs +134 -0
- package/dist/diagram-Z3DM3KII-CPkBr3FT.js +24 -0
- package/dist/dist-CXWJafG_.js +1 -0
- package/dist/dist-DNdLIC8h.mjs +59 -0
- package/dist/docmedown.cjs +125 -44
- package/dist/docmedown.iife.js +3477 -72
- package/dist/docmedown.mjs +10003 -4807
- package/dist/ebnfDiagram-PWID7BFC-CseVsyL3.js +1 -0
- package/dist/ebnfDiagram-PWID7BFC-D_dBDXWC.mjs +100 -0
- package/dist/erDiagram-RLTQ6QDP-DFwfQTRS.js +99 -0
- package/dist/erDiagram-RLTQ6QDP-DP7ddGMH.mjs +1966 -0
- package/dist/eventmodeling-NTZA5JFV-CzxVg0l5.js +1 -0
- package/dist/eventmodeling-NTZA5JFV-Djsy__5n.mjs +3 -0
- package/dist/flowDiagram-HODETNUW-7hSJfI3W.js +1 -0
- package/dist/flowDiagram-HODETNUW-Dqu5Lr19.mjs +17 -0
- package/dist/ganttDiagram-EL5Y4UJY-KNL3tzTD.mjs +3072 -0
- package/dist/ganttDiagram-EL5Y4UJY-aiLqNWgi.js +292 -0
- package/dist/gitGraph-4MIJSDKK-DnElfqX7.js +1 -0
- package/dist/gitGraph-4MIJSDKK-xuKJBT2e.mjs +3 -0
- package/dist/gitGraphDiagram-WWUBYQGX-D4gSo_-e.js +106 -0
- package/dist/gitGraphDiagram-WWUBYQGX-Dooss5fG.mjs +733 -0
- package/dist/graphlib-BaETKKSa.js +1 -0
- package/dist/graphlib-XW-Jr8pF.mjs +1267 -0
- package/dist/info-A6RAGUB7-ClYskpn6.mjs +3 -0
- package/dist/info-A6RAGUB7-DDvvt-fW.js +1 -0
- package/dist/infoDiagram-27XIBGKW-B2-y2mdQ.mjs +20 -0
- package/dist/infoDiagram-27XIBGKW-DYQ9NzfL.js +2 -0
- package/dist/init-BJdqMO10.js +1 -0
- package/dist/init-CsQUQz36.mjs +13 -0
- package/dist/ishikawaDiagram-5VMMS53U-ULIhoYO5.js +70 -0
- package/dist/ishikawaDiagram-5VMMS53U-xAArNh-1.mjs +719 -0
- package/dist/journeyDiagram-3NMN7TZE-BBMYNZRL.js +139 -0
- package/dist/journeyDiagram-3NMN7TZE-BH-uKqP7.mjs +884 -0
- package/dist/kanban-definition-UXKFOSKX-Be49llXr.mjs +976 -0
- package/dist/kanban-definition-UXKFOSKX-CDL5yJkq.js +89 -0
- package/dist/line-BEwhHSLl.js +1 -0
- package/dist/line-CiXRog8O.mjs +34 -0
- package/dist/linear-75tfjrny.js +1 -0
- package/dist/linear-Ncx_RuON.mjs +288 -0
- package/dist/mermaid-parser.core-BBApyu_y.js +6 -0
- package/dist/mermaid-parser.core-BRHibdUE.mjs +638 -0
- package/dist/mindmap-definition-YA3MSWOX-Chy7XP_5.mjs +1006 -0
- package/dist/mindmap-definition-YA3MSWOX-DOda-fkL.js +96 -0
- package/dist/ordinal-B1BNQwUR.mjs +65 -0
- package/dist/ordinal-B9aFWmF9.js +1 -0
- package/dist/packet-AYTQ26CC-CorIy9Ul.js +1 -0
- package/dist/packet-AYTQ26CC-DWH8gXJK.mjs +3 -0
- package/dist/path-CnWkkRiY.mjs +84 -0
- package/dist/path-DIS6ck99.js +1 -0
- package/dist/pegDiagram-XKGWAZYB-Cdw6MeON.js +1 -0
- package/dist/pegDiagram-XKGWAZYB-uNfxRaq1.mjs +94 -0
- package/dist/pie-WAS4IAKB-Cn5eK-5P.mjs +3 -0
- package/dist/pie-WAS4IAKB-D84xrSoY.js +1 -0
- package/dist/pieDiagram-E7YTZNPT-Bd6mvpJw.js +39 -0
- package/dist/pieDiagram-E7YTZNPT-Cczo96a2.mjs +203 -0
- package/dist/quadrantDiagram-AXDQQJYC-BPfgvMsS.js +7 -0
- package/dist/quadrantDiagram-AXDQQJYC-eqRNtVRl.mjs +2001 -0
- package/dist/radar-RG4KPBEZ-DvkxGdO6.mjs +3 -0
- package/dist/radar-RG4KPBEZ-R2sQOLL9.js +1 -0
- package/dist/railroad-74A4TZTK-BOZIf6ts.js +1 -0
- package/dist/railroad-74A4TZTK-CrQzn8Nm.mjs +3 -0
- package/dist/railroad-abnf-HS5TGJTU-BZYetxLz.mjs +3 -0
- package/dist/railroad-abnf-HS5TGJTU-CXU1aC4B.js +1 -0
- package/dist/railroad-ebnf-LZEXJU2U-D29kI3YW.js +1 -0
- package/dist/railroad-ebnf-LZEXJU2U-qgzTOmN6.mjs +3 -0
- package/dist/railroad-peg-WCYAUIDC-Bjs9Ws3P.mjs +3 -0
- package/dist/railroad-peg-WCYAUIDC-CXviP0hz.js +1 -0
- package/dist/railroadDiagram-O6MQD6OU-58kvwt7H.mjs +76 -0
- package/dist/railroadDiagram-O6MQD6OU-CKY3uzTc.js +1 -0
- package/dist/requirementDiagram-BXWQKSXE-0hZ04Q6h.js +84 -0
- package/dist/requirementDiagram-BXWQKSXE-CS673B5n.mjs +2224 -0
- package/dist/rough.esm-ChRLLRha.js +1 -0
- package/dist/rough.esm-DXYGHN3m.mjs +1361 -0
- package/dist/sankeyDiagram-P5KCCOFB-D1D6HfAM.mjs +972 -0
- package/dist/sankeyDiagram-P5KCCOFB-ciJb9Zr8.js +40 -0
- package/dist/sequenceDiagram-WJ2MYXX4-BXEznuI6.js +162 -0
- package/dist/sequenceDiagram-WJ2MYXX4-CI1VT8AG.mjs +4156 -0
- package/dist/sizeCapture-INFHLROL-BihkCH-7.js +1 -0
- package/dist/sizeCapture-INFHLROL-BmxqyOLj.mjs +46 -0
- package/dist/src-B4mN2BMl.js +1 -0
- package/dist/src-D_hsMyeP.mjs +2154 -0
- package/dist/stateDiagram-D77RDMKH-BQrSs72W.mjs +220 -0
- package/dist/stateDiagram-D77RDMKH-D2PtkW2U.js +1 -0
- package/dist/stateDiagram-v2-MP3YSRHH-CCbvNfk-.mjs +30 -0
- package/dist/stateDiagram-v2-MP3YSRHH-Dq1QuPeN.js +1 -0
- package/dist/swimlanes-42K2YHIH-CA316NPm.mjs +4979 -0
- package/dist/swimlanes-42K2YHIH-DlggBCTy.js +1 -0
- package/dist/swimlanesDiagram-VR7AAH4N-BV9PEIoG.js +8 -0
- package/dist/swimlanesDiagram-VR7AAH4N-BfrOCfdf.mjs +31 -0
- package/dist/timeline-definition-24CTP7MA-Bkd8rWNJ.js +120 -0
- package/dist/timeline-definition-24CTP7MA-BvkqNYt1.mjs +1069 -0
- package/dist/treeView-Q6P3EWNA-Aof3Cp1M.mjs +3 -0
- package/dist/treeView-Q6P3EWNA-BTzvdwbb.js +1 -0
- package/dist/treemap-WGGIJYW6-BNXGg99p.mjs +3 -0
- package/dist/treemap-WGGIJYW6-DfR4P2Hh.js +1 -0
- package/dist/types/runtime/app.d.ts +3 -3
- package/dist/types/runtime/components/AppearanceMenu.d.ts +2 -0
- package/dist/types/runtime/components/Builtins.d.ts +3 -3
- package/dist/types/runtime/components/Content.d.ts +1 -1
- package/dist/types/runtime/components/DmdRegistry.d.ts +4 -2
- package/dist/types/runtime/components/Layout.d.ts +1 -1
- package/dist/types/runtime/components/MermaidDiagram.d.ts +16 -0
- package/dist/types/runtime/components/Navbar.d.ts +1 -1
- package/dist/types/runtime/components/OfflineDownloadButton.d.ts +2 -0
- package/dist/types/runtime/components/Sidebar.d.ts +1 -1
- package/dist/types/runtime/components/TableOfContents.d.ts +2 -2
- package/dist/types/runtime/config-schema.d.ts +386 -0
- package/dist/types/runtime/config.d.ts +10 -3
- package/dist/types/runtime/index.d.ts +7 -5
- package/dist/types/runtime/loader/auto-indexer.d.ts +1 -1
- package/dist/types/runtime/loader/local-loader.d.ts +1 -1
- package/dist/types/runtime/loader/remote-github.d.ts +2 -2
- package/dist/types/runtime/loader/remote-gitlab.d.ts +2 -2
- package/dist/types/runtime/markdown/callouts.d.ts +1 -1
- package/dist/types/runtime/markdown/highlighter.d.ts +16 -16
- package/dist/types/runtime/markdown/mermaid.d.ts +82 -1
- package/dist/types/runtime/markdown/parser.d.ts +1 -1
- package/dist/types/runtime/markdown/renderer.d.ts +1 -1
- package/dist/types/runtime/offline-export.d.ts +26 -0
- package/dist/types/runtime/provider/DocProvider.d.ts +5 -5
- package/dist/types/runtime/provider/ThemeProvider.d.ts +13 -6
- package/dist/types/runtime/search/SearchModal.d.ts +2 -2
- package/dist/types/runtime/search/search-index.d.ts +1 -1
- package/dist/types/runtime/types.d.ts +28 -99
- package/dist/vennDiagram-4TSXK5OY-BOUFXjso.js +34 -0
- package/dist/vennDiagram-4TSXK5OY-CeOg3-hU.mjs +1880 -0
- package/dist/wardley-WFR3VGLG-BOYcSLd1.mjs +3 -0
- package/dist/wardley-WFR3VGLG-DWDqJSgm.js +1 -0
- package/dist/wardleyDiagram-VM6X3IG4-BhWgMjFr.js +78 -0
- package/dist/wardleyDiagram-VM6X3IG4-C31KoRmF.mjs +645 -0
- package/dist/xychartDiagram-S5SC5T6Z-1yU8zz6I.js +7 -0
- package/dist/xychartDiagram-S5SC5T6Z-BK7upFom.mjs +2210 -0
- package/package.json +15 -4
- package/schemas/docs.schema.json +166 -0
- package/templates/README.md +4 -4
- package/templates/docs.json +5 -2
- package/templates/getting-started.md +1 -1
- package/templates/guides/custom-components.md +2 -0
- package/templates/index.html +2 -4
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
Source code, issues, and releases live at [github.com/gabrielmsilva00/docmedown](https://github.com/gabrielmsilva00/docmedown).
|
|
12
12
|
|
|
13
|
-
Drop a single `index.html` file into any directory of `.md` files, and you have a
|
|
13
|
+
Drop a single `index.html` file into any directory of `.md` files, and you have a fast, responsive documentation website with a complete reading interface.
|
|
14
14
|
|
|
15
15
|
---
|
|
16
16
|
|
|
@@ -21,11 +21,11 @@ Drop a single `index.html` file into any directory of `.md` files, and you have
|
|
|
21
21
|
- Run via single-line CLI: `npx docmedown ./docs`
|
|
22
22
|
- Or drop `<script src="docmedown.js"></script>` into an `index.html` on any static host.
|
|
23
23
|
- ⚡ **Dynamic Remote GitHub / GitLab Mode**: Document any GitHub or GitLab repository *live* without hosting markdown files statically! Changes pushed to your repo dynamically update the documentation website immediately.
|
|
24
|
-
- 📦 **
|
|
25
|
-
- 🎨 **
|
|
24
|
+
- 📦 **Compressed Offline Copies**: Generate or download a minified, self-extracting `index.html` containing the complete documentation corpus, custom components, Mermaid renderer, styles, and runtime. Double-click it under `file:///` without a web server.
|
|
25
|
+
- 🎨 **Four Complete Theme Families**: Atlas, Blueprint, Terminal, and Editorial each redefine surfaces, geometry, typography, spacing, and diagram palettes—not merely the accent color. Every family supports light, dark, automatic mode, and comfortable or compact density.
|
|
26
26
|
- 🔍 **Instant Fuzzy Search**: Keyboard-driven command palette (`⌘K` / `Ctrl+K`) with real-time in-browser indexing.
|
|
27
27
|
- ⚛️ **React Custom Components (.dmd)**: Support for custom React components inside `.dmd/` or built-in components (`<Tabs>`, `<CardGrid>`, `<Badge>`, `<Steps>`).
|
|
28
|
-
- 📊 **Mermaid Diagrams & KaTeX Math**:
|
|
28
|
+
- 📊 **Mermaid Diagrams & KaTeX Math**: Theme-aware diagrams with automatic Fit, zoom, 1:1 view, SVG export, expanded review, and offline parity, plus native LaTeX equations.
|
|
29
29
|
- 💡 **GitHub-Style Callouts**: Full support for `[!NOTE]`, `[!TIP]`, `[!IMPORTANT]`, `[!WARNING]`, and `[!CAUTION]`.
|
|
30
30
|
|
|
31
31
|
---
|
|
@@ -90,7 +90,7 @@ Then mount it into a specific element. `init` resolves to an instance with a `de
|
|
|
90
90
|
basePath: '/help',
|
|
91
91
|
config: {
|
|
92
92
|
name: 'Project help',
|
|
93
|
-
theme: {
|
|
93
|
+
theme: { family: 'terminal', density: 'compact', defaultMode: 'auto' }
|
|
94
94
|
}
|
|
95
95
|
});
|
|
96
96
|
|
|
@@ -121,7 +121,8 @@ Simply create `docs.json`:
|
|
|
121
121
|
"docsDir": "docs"
|
|
122
122
|
},
|
|
123
123
|
"theme": {
|
|
124
|
-
"
|
|
124
|
+
"family": "blueprint",
|
|
125
|
+
"density": "comfortable",
|
|
125
126
|
"defaultMode": "auto"
|
|
126
127
|
}
|
|
127
128
|
}
|
|
@@ -139,7 +140,9 @@ Every standard build produces both your serveable documentation files and a **10
|
|
|
139
140
|
npx docmedown build ./docs
|
|
140
141
|
```
|
|
141
142
|
|
|
142
|
-
The serveable manifest and runtime remain in `./docs`. The offline artifact is written to `./docs/.dist/index.html`; dot-prefixed directories are excluded from document discovery. Open that file directly in a browser (`file:///.../.dist/index.html`) on air-gapped machines, send it via email, or distribute it with offline desktop applications. Use `--no-single-file` to skip the offline artifact, or `--out-dir <path>` to place it elsewhere.
|
|
143
|
+
The serveable manifest and runtime remain in `./docs`. The offline artifact is written to `./docs/.dist/index.html`; dot-prefixed directories are excluded from document discovery. The artifact stores compact JSON and the production runtime in a gzip-compressed, base64-encoded envelope with a minified self-extractor. Open that file directly in a browser (`file:///.../.dist/index.html`) on air-gapped machines, send it via email, or distribute it with offline desktop applications. Use `--no-single-file` to skip the offline artifact, or `--out-dir <path>` to place it elsewhere.
|
|
144
|
+
|
|
145
|
+
Serveable DocMeDown sites also include a **Download** action in the navbar. It reads the already-loaded documentation corpus and current runtime, compresses them locally with the browser's native gzip stream, and downloads the same self-contained format without requesting `.dist/index.html`. In a downloaded or CLI-built offline copy, the control is greyed out as **Offline copy** because the page is already portable.
|
|
143
146
|
|
|
144
147
|
`docmedown serve ./docs` and `docmedown dev ./docs` also run this standard build at startup. While the server is running, Markdown and `docs.json` changes are debounced, then rebuild the serveable artifacts and `./docs/.dist/index.html` before the browser reloads.
|
|
145
148
|
|
|
@@ -153,6 +156,20 @@ Within this repository, the equivalent command is `npm run build:docs:watch`.
|
|
|
153
156
|
|
|
154
157
|
---
|
|
155
158
|
|
|
159
|
+
## 🚢 GitHub Pages Hosting
|
|
160
|
+
|
|
161
|
+
The repository includes `.github/workflows/pages.yml`, which builds the production runtime and generated documentation assets before publishing `./docs/` through GitHub Pages. This is required because `_docs.js`, `_manifest.json`, and `docmedown.iife.js` are generated files and intentionally ignored by Git.
|
|
162
|
+
|
|
163
|
+
To enable it for a repository fork or project site:
|
|
164
|
+
|
|
165
|
+
1. Push the workflow to the `main` branch.
|
|
166
|
+
2. In **Settings → Pages**, set the source to **GitHub Actions**.
|
|
167
|
+
3. Push documentation or runtime changes; the workflow runs `npm ci`, `npm run build`, and `npm run build:docs`, then uploads the complete `docs/` directory.
|
|
168
|
+
|
|
169
|
+
The generated entrypoint uses same-directory relative URLs (`./_docs.js` and `./docmedown.iife.js`), so it works at both a custom domain and a project URL such as `/repository-name/`. The Pages workflow verifies those generated files before upload and includes `.nojekyll` for direct static-file compatibility. Hash routing keeps document navigation client-side without requiring server rewrites.
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
156
173
|
## ⚛️ Custom React Components (.dmd)
|
|
157
174
|
|
|
158
175
|
Define global React components in a browser-loadable `.dmd/components.js` module. React is available as `window.React` in that module:
|
|
@@ -197,8 +214,8 @@ The standard build embeds `.dmd/components.js` in `docs/.dist/index.html`, so th
|
|
|
197
214
|
badgeType="success"
|
|
198
215
|
/>
|
|
199
216
|
<Card
|
|
200
|
-
title="
|
|
201
|
-
description="
|
|
217
|
+
title="Complete Theme Families"
|
|
218
|
+
description="Atlas, Blueprint, Terminal, and Editorial change the entire reading system."
|
|
202
219
|
badge="New"
|
|
203
220
|
badgeType="new"
|
|
204
221
|
/>
|
|
@@ -216,15 +233,20 @@ The standard build embeds `.dmd/components.js` in `docs/.dist/index.html`, so th
|
|
|
216
233
|
|
|
217
234
|
## ⚙️ Configuration Reference (`docs.json`)
|
|
218
235
|
|
|
236
|
+
DocMeDown validates configuration from `docs.json`, `dmd.json`, inline `#dmd-config` JSON, and embedded manifests before applying defaults. Add the published JSON Schema reference for editor completion and immediate feedback:
|
|
237
|
+
|
|
219
238
|
```json
|
|
220
239
|
{
|
|
240
|
+
"$schema": "https://raw.githubusercontent.com/gabrielmsilva00/docmedown/main/schemas/docs.schema.json",
|
|
221
241
|
"name": "My Documentation",
|
|
222
242
|
"tagline": "The simplest Markdown documenter yet",
|
|
223
243
|
"version": "1.0.0",
|
|
224
244
|
"rootDoc": "README.md",
|
|
225
245
|
"theme": {
|
|
226
|
-
"
|
|
227
|
-
"
|
|
246
|
+
"family": "atlas",
|
|
247
|
+
"density": "comfortable",
|
|
248
|
+
"defaultMode": "auto",
|
|
249
|
+
"codeTheme": "github"
|
|
228
250
|
},
|
|
229
251
|
"nav": [
|
|
230
252
|
{ "label": "Overview", "href": "#/README" },
|
|
@@ -245,17 +267,18 @@ The standard build embeds `.dmd/components.js` in `docs/.dist/index.html`, so th
|
|
|
245
267
|
}
|
|
246
268
|
```
|
|
247
269
|
|
|
248
|
-
|
|
270
|
+
Unknown keys are rejected. The npm package also ships the portable schema at `schemas/docs.schema.json`; TypeScript consumers can import `docConfigSchema` and `parseDocConfig` from `docmedown`. See the full [configuration reference](./docs/configuration.md) for every field and validation rule.
|
|
249
271
|
|
|
250
|
-
|
|
272
|
+
### Theme Families
|
|
273
|
+
|
|
274
|
+
| Family | Best suited for | Visual system |
|
|
251
275
|
| :--- | :--- | :--- |
|
|
252
|
-
| `
|
|
253
|
-
| `
|
|
254
|
-
| `
|
|
255
|
-
| `
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
| `cyberpunk` | `#00f0ff` | Glowing neon aesthetic |
|
|
276
|
+
| `atlas` *(default)* | General product and API documentation | Neutral mineral canvas, cobalt actions, balanced spacing |
|
|
277
|
+
| `blueprint` | Architecture and technical specifications | Squared geometry, drafting rules, coral signals |
|
|
278
|
+
| `terminal` | CLI, operations, and infrastructure manuals | Dark-first console character, compact rhythm, monospace utilities |
|
|
279
|
+
| `editorial` | Guides, handbooks, and long-form reading | Warm paper surfaces, serif display type, generous article rhythm |
|
|
280
|
+
|
|
281
|
+
Use the **Appearance** menu to switch family, color mode, and reading density at runtime. Set `accentColor` and `accentColorDark` only when a brand color must override the family default. Legacy accent-only presets remain accepted temporarily for migration but should not be used in new configurations.
|
|
259
282
|
|
|
260
283
|
---
|
|
261
284
|
|
|
@@ -275,3 +298,29 @@ The standard build embeds `.dmd/components.js` in `docs/.dist/index.html`, so th
|
|
|
275
298
|
## 📄 License
|
|
276
299
|
|
|
277
300
|
MIT © DocMeDown Contributors
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
|
|
304
|
+
## 🚀 Maintainer release command
|
|
305
|
+
|
|
306
|
+
Maintainers publish a prepared version with one command:
|
|
307
|
+
|
|
308
|
+
```bash
|
|
309
|
+
npm run deploy
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
It validates the release, pushes `main` and `v<version>` to GitHub, publishes to npm, and verifies the npm registry. Run `npm run deploy:dry-run` to validate without changing GitHub or npm.
|
|
313
|
+
|
|
314
|
+
## 🧹 Quality checks
|
|
315
|
+
|
|
316
|
+
DocMeDown uses [Biome](https://biomejs.dev/) for formatting, import organization, and linting, and Zod for runtime configuration validation.
|
|
317
|
+
|
|
318
|
+
```bash
|
|
319
|
+
npm run lint # check formatting, imports, and lint rules
|
|
320
|
+
npm run lint:fix # apply Biome fixes
|
|
321
|
+
npm run format # format maintained source files
|
|
322
|
+
npm run typecheck
|
|
323
|
+
npm test
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
`npm run test:release` runs all of these checks plus production, documentation, and package smoke builds.
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { m as e } from "./src-D_hsMyeP.mjs";
|
|
2
|
+
import { n as t } from "./chunk-Y2CYZVJY-i11wjrBe.mjs";
|
|
3
|
+
import "./chunk-DU6HZSFF-BEQZSmUu.mjs";
|
|
4
|
+
import "./chunk-CLGD4ZFX-DBkwyMMv.mjs";
|
|
5
|
+
import { m as n, t as r } from "./mermaid-parser.core-BRHibdUE.mjs";
|
|
6
|
+
import { n as i, r as a, t as o } from "./chunk-SVP7TREG-CynckzeF.mjs";
|
|
7
|
+
import { t as s } from "./chunk-JWPE2WC7-DIKiF5cm.mjs";
|
|
8
|
+
//#region node_modules/mermaid/dist/chunks/mermaid.core/abnfDiagram-VCTEODGH.mjs
|
|
9
|
+
var c = n().RailroadAbnf.parser.LangiumParser, l = /* @__PURE__ */ t((e) => {
|
|
10
|
+
let t = e.alternatives.map(u);
|
|
11
|
+
return t.length === 1 ? t[0] : {
|
|
12
|
+
type: "choice",
|
|
13
|
+
alternatives: t
|
|
14
|
+
};
|
|
15
|
+
}, "transformAlternation"), u = /* @__PURE__ */ t((e) => {
|
|
16
|
+
let t = e.elements.map(f);
|
|
17
|
+
return t.length === 1 ? t[0] : {
|
|
18
|
+
type: "sequence",
|
|
19
|
+
elements: t
|
|
20
|
+
};
|
|
21
|
+
}, "transformConcatenation"), d = /* @__PURE__ */ t((e) => {
|
|
22
|
+
if (e.includes("*")) {
|
|
23
|
+
let [t, n] = e.split("*");
|
|
24
|
+
return {
|
|
25
|
+
min: t ? parseInt(t, 10) : 0,
|
|
26
|
+
max: n ? parseInt(n, 10) : Infinity
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
let t = parseInt(e, 10);
|
|
30
|
+
return {
|
|
31
|
+
min: t,
|
|
32
|
+
max: t
|
|
33
|
+
};
|
|
34
|
+
}, "parseRepeat"), f = /* @__PURE__ */ t((e) => {
|
|
35
|
+
let t = p(e.primary);
|
|
36
|
+
if (!e.repeat) return t;
|
|
37
|
+
let { min: n, max: r } = d(e.repeat);
|
|
38
|
+
return n === 0 && r === 1 ? {
|
|
39
|
+
type: "optional",
|
|
40
|
+
element: t
|
|
41
|
+
} : {
|
|
42
|
+
type: "repetition",
|
|
43
|
+
element: t,
|
|
44
|
+
min: n,
|
|
45
|
+
max: r
|
|
46
|
+
};
|
|
47
|
+
}, "transformElement"), p = /* @__PURE__ */ t((e) => {
|
|
48
|
+
switch (e.$type) {
|
|
49
|
+
case "AbnfStringLiteral": return {
|
|
50
|
+
type: "terminal",
|
|
51
|
+
value: e.value
|
|
52
|
+
};
|
|
53
|
+
case "AbnfNumVal": return {
|
|
54
|
+
type: "terminal",
|
|
55
|
+
value: e.value
|
|
56
|
+
};
|
|
57
|
+
case "AbnfRuleName": return {
|
|
58
|
+
type: "nonterminal",
|
|
59
|
+
name: e.name
|
|
60
|
+
};
|
|
61
|
+
case "AbnfGroup": return l(e.element);
|
|
62
|
+
case "AbnfOptionalGroup": return {
|
|
63
|
+
type: "optional",
|
|
64
|
+
element: l(e.element)
|
|
65
|
+
};
|
|
66
|
+
default: throw Error(`Unsupported ABNF primary node: ${e.$type}`);
|
|
67
|
+
}
|
|
68
|
+
}, "transformPrimary"), m = /* @__PURE__ */ t((e) => ({
|
|
69
|
+
name: e.name,
|
|
70
|
+
definition: l(e.definition)
|
|
71
|
+
}), "transformRule"), h = /* @__PURE__ */ t((e) => {
|
|
72
|
+
s(e, o), e.title && o.setTitle(e.title), e.rules.map((e) => o.addRule(m(e)));
|
|
73
|
+
}, "populateDb"), g = {
|
|
74
|
+
parser: {
|
|
75
|
+
parse: /* @__PURE__ */ t((t) => {
|
|
76
|
+
o.clear(), e.debug("[ABNF Parser] Starting Langium parse");
|
|
77
|
+
let n = c.parse(t);
|
|
78
|
+
if (n.lexerErrors.length > 0 || n.parserErrors.length > 0) throw new r(n);
|
|
79
|
+
let i = n.value;
|
|
80
|
+
e.debug("[ABNF Parser] Parsed rules:", i.rules.length), h(i), e.debug("[ABNF Parser] Parse complete");
|
|
81
|
+
}, "parse"),
|
|
82
|
+
parser: { yy: o }
|
|
83
|
+
},
|
|
84
|
+
db: o,
|
|
85
|
+
renderer: a,
|
|
86
|
+
styles: i
|
|
87
|
+
};
|
|
88
|
+
//#endregion
|
|
89
|
+
export { g as diagram };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./src-B4mN2BMl.js"),t=require("./chunk-Y2CYZVJY-CnmLqFtv.js");require("./chunk-DU6HZSFF-CWc5ewtb.js"),require("./chunk-CLGD4ZFX-C5J-e2io.js");const n=require("./mermaid-parser.core-BBApyu_y.js"),r=require("./chunk-SVP7TREG-BFMd615E.js"),i=require("./chunk-JWPE2WC7-p1fYVdYc.js");var a=n.m().RailroadAbnf.parser.LangiumParser,o=t.n(e=>{let t=e.alternatives.map(s);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),s=t.n(e=>{let t=e.elements.map(l);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),c=t.n(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`),l=t.n(e=>{let t=u(e.primary);if(!e.repeat)return t;let{min:n,max:r}=c(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),u=t.n(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 o(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:o(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),d=t.n(e=>({name:e.name,definition:o(e.definition)}),`transformRule`),f=t.n(e=>{i.t(e,r.t),e.title&&r.t.setTitle(e.title),e.rules.map(e=>r.t.addRule(d(e)))},`populateDb`),p={parser:{parse:t.n(t=>{r.t.clear(),e.m.debug(`[ABNF Parser] Starting Langium parse`);let i=a.parse(t);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new n.t(i);let o=i.value;e.m.debug(`[ABNF Parser] Parsed rules:`,o.rules.length),f(o),e.m.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:r.t}},db:r.t,renderer:r.r,styles:r.n};exports.diagram=p;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { n as e, t } from "./path-CnWkkRiY.mjs";
|
|
2
|
+
import { a as n, c as r, d as i, f as a, i as o, l as s, m as c, n as l, o as u, p as d, r as f, u as p } from "./dist-DNdLIC8h.mjs";
|
|
3
|
+
//#region node_modules/d3-shape/src/arc.js
|
|
4
|
+
function m(e) {
|
|
5
|
+
return e.innerRadius;
|
|
6
|
+
}
|
|
7
|
+
function h(e) {
|
|
8
|
+
return e.outerRadius;
|
|
9
|
+
}
|
|
10
|
+
function g(e) {
|
|
11
|
+
return e.startAngle;
|
|
12
|
+
}
|
|
13
|
+
function _(e) {
|
|
14
|
+
return e.endAngle;
|
|
15
|
+
}
|
|
16
|
+
function v(e) {
|
|
17
|
+
return e && e.padAngle;
|
|
18
|
+
}
|
|
19
|
+
function y(e, t, n, r, i, a, o, s) {
|
|
20
|
+
var c = n - e, l = r - t, u = o - i, d = s - a, f = d * c - u * l;
|
|
21
|
+
if (!(f * f < 1e-12)) return f = (u * (t - a) - d * (e - i)) / f, [e + f * c, t + f * l];
|
|
22
|
+
}
|
|
23
|
+
function b(e, t, n, r, i, a, o) {
|
|
24
|
+
var c = e - n, l = t - r, u = (o ? a : -a) / d(c * c + l * l), f = u * l, p = -u * c, m = e + f, h = t + p, g = n + f, _ = r + p, v = (m + g) / 2, y = (h + _) / 2, b = g - m, x = _ - h, S = b * b + x * x, C = i - a, w = m * _ - g * h, T = (x < 0 ? -1 : 1) * d(s(0, C * C * S - w * w)), E = (w * x - b * T) / S, D = (-w * b - x * T) / S, O = (w * x + b * T) / S, k = (-w * b + x * T) / S, A = E - v, j = D - y, M = O - v, N = k - y;
|
|
25
|
+
return A * A + j * j > M * M + N * N && (E = O, D = k), {
|
|
26
|
+
cx: E,
|
|
27
|
+
cy: D,
|
|
28
|
+
x01: -f,
|
|
29
|
+
y01: -p,
|
|
30
|
+
x11: E * (i / C - 1),
|
|
31
|
+
y11: D * (i / C - 1)
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
function x() {
|
|
35
|
+
var s = m, x = h, S = e(0), C = null, w = g, T = _, E = v, D = null, O = t(k);
|
|
36
|
+
function k() {
|
|
37
|
+
var e, t, m = +s.apply(this, arguments), h = +x.apply(this, arguments), g = w.apply(this, arguments) - r, _ = T.apply(this, arguments) - r, v = l(_ - g), k = _ > g;
|
|
38
|
+
if (D ||= e = O(), h < m && (t = h, h = m, m = t), !(h > 1e-12)) D.moveTo(0, 0);
|
|
39
|
+
else if (v > c - 1e-12) D.moveTo(h * u(g), h * a(g)), D.arc(0, 0, h, g, _, !k), m > 1e-12 && (D.moveTo(m * u(_), m * a(_)), D.arc(0, 0, m, _, g, k));
|
|
40
|
+
else {
|
|
41
|
+
var A = g, j = _, M = g, N = _, P = v, F = v, I = E.apply(this, arguments) / 2, L = I > 1e-12 && (C ? +C.apply(this, arguments) : d(m * m + h * h)), R = p(l(h - m) / 2, +S.apply(this, arguments)), z = R, B = R, V, H;
|
|
42
|
+
if (L > 1e-12) {
|
|
43
|
+
var U = o(L / m * a(I)), W = o(L / h * a(I));
|
|
44
|
+
(P -= U * 2) > 1e-12 ? (U *= k ? 1 : -1, M += U, N -= U) : (P = 0, M = N = (g + _) / 2), (F -= W * 2) > 1e-12 ? (W *= k ? 1 : -1, A += W, j -= W) : (F = 0, A = j = (g + _) / 2);
|
|
45
|
+
}
|
|
46
|
+
var G = h * u(A), K = h * a(A), q = m * u(N), J = m * a(N);
|
|
47
|
+
if (R > 1e-12) {
|
|
48
|
+
var Y = h * u(j), X = h * a(j), Z = m * u(M), Q = m * a(M), $;
|
|
49
|
+
if (v < i) {
|
|
50
|
+
if ($ = y(G, K, Z, Q, Y, X, q, J)) {
|
|
51
|
+
var ee = G - $[0], te = K - $[1], ne = Y - $[0], re = X - $[1], ie = 1 / a(f((ee * ne + te * re) / (d(ee * ee + te * te) * d(ne * ne + re * re))) / 2), ae = d($[0] * $[0] + $[1] * $[1]);
|
|
52
|
+
z = p(R, (m - ae) / (ie - 1)), B = p(R, (h - ae) / (ie + 1));
|
|
53
|
+
} else z = B = 0;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
F > 1e-12 ? B > 1e-12 ? (V = b(Z, Q, G, K, h, B, k), H = b(Y, X, q, J, h, B, k), D.moveTo(V.cx + V.x01, V.cy + V.y01), B < R ? D.arc(V.cx, V.cy, B, n(V.y01, V.x01), n(H.y01, H.x01), !k) : (D.arc(V.cx, V.cy, B, n(V.y01, V.x01), n(V.y11, V.x11), !k), D.arc(0, 0, h, n(V.cy + V.y11, V.cx + V.x11), n(H.cy + H.y11, H.cx + H.x11), !k), D.arc(H.cx, H.cy, B, n(H.y11, H.x11), n(H.y01, H.x01), !k))) : (D.moveTo(G, K), D.arc(0, 0, h, A, j, !k)) : D.moveTo(G, K), !(m > 1e-12) || !(P > 1e-12) ? D.lineTo(q, J) : z > 1e-12 ? (V = b(q, J, Y, X, m, -z, k), H = b(G, K, Z, Q, m, -z, k), D.lineTo(V.cx + V.x01, V.cy + V.y01), z < R ? D.arc(V.cx, V.cy, z, n(V.y01, V.x01), n(H.y01, H.x01), !k) : (D.arc(V.cx, V.cy, z, n(V.y01, V.x01), n(V.y11, V.x11), !k), D.arc(0, 0, m, n(V.cy + V.y11, V.cx + V.x11), n(H.cy + H.y11, H.cx + H.x11), k), D.arc(H.cx, H.cy, z, n(H.y11, H.x11), n(H.y01, H.x01), !k))) : D.arc(0, 0, m, N, M, k);
|
|
57
|
+
}
|
|
58
|
+
if (D.closePath(), e) return D = null, e + "" || null;
|
|
59
|
+
}
|
|
60
|
+
return k.centroid = function() {
|
|
61
|
+
var e = (+s.apply(this, arguments) + +x.apply(this, arguments)) / 2, t = (+w.apply(this, arguments) + +T.apply(this, arguments)) / 2 - i / 2;
|
|
62
|
+
return [u(t) * e, a(t) * e];
|
|
63
|
+
}, k.innerRadius = function(t) {
|
|
64
|
+
return arguments.length ? (s = typeof t == "function" ? t : e(+t), k) : s;
|
|
65
|
+
}, k.outerRadius = function(t) {
|
|
66
|
+
return arguments.length ? (x = typeof t == "function" ? t : e(+t), k) : x;
|
|
67
|
+
}, k.cornerRadius = function(t) {
|
|
68
|
+
return arguments.length ? (S = typeof t == "function" ? t : e(+t), k) : S;
|
|
69
|
+
}, k.padRadius = function(t) {
|
|
70
|
+
return arguments.length ? (C = t == null ? null : typeof t == "function" ? t : e(+t), k) : C;
|
|
71
|
+
}, k.startAngle = function(t) {
|
|
72
|
+
return arguments.length ? (w = typeof t == "function" ? t : e(+t), k) : w;
|
|
73
|
+
}, k.endAngle = function(t) {
|
|
74
|
+
return arguments.length ? (T = typeof t == "function" ? t : e(+t), k) : T;
|
|
75
|
+
}, k.padAngle = function(t) {
|
|
76
|
+
return arguments.length ? (E = typeof t == "function" ? t : e(+t), k) : E;
|
|
77
|
+
}, k.context = function(e) {
|
|
78
|
+
return arguments.length ? (D = e ?? null, k) : D;
|
|
79
|
+
}, k;
|
|
80
|
+
}
|
|
81
|
+
//#endregion
|
|
82
|
+
export { x as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./path-DIS6ck99.js"),t=require("./dist-CXWJafG_.js");function n(e){return e.innerRadius}function r(e){return e.outerRadius}function i(e){return e.startAngle}function a(e){return e.endAngle}function o(e){return e&&e.padAngle}function s(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function c(e,n,r,i,a,o,s){var c=e-r,l=n-i,u=(s?o:-o)/t.p(c*c+l*l),d=u*l,f=-u*c,p=e+d,m=n+f,h=r+d,g=i+f,_=(p+h)/2,v=(m+g)/2,y=h-p,b=g-m,x=y*y+b*b,S=a-o,C=p*g-h*m,w=(b<0?-1:1)*t.p(t.l(0,S*S*x-C*C)),T=(C*b-y*w)/x,E=(-C*y-b*w)/x,D=(C*b+y*w)/x,O=(-C*y+b*w)/x,k=T-_,A=E-v,j=D-_,M=O-v;return k*k+A*A>j*j+M*M&&(T=D,E=O),{cx:T,cy:E,x01:-d,y01:-f,x11:T*(a/S-1),y11:E*(a/S-1)}}function l(){var l=n,u=r,d=e.n(0),f=null,p=i,m=a,h=o,g=null,_=e.t(v);function v(){var e,n,r=+l.apply(this,arguments),i=+u.apply(this,arguments),a=p.apply(this,arguments)-t.c,o=m.apply(this,arguments)-t.c,v=t.n(o-a),y=o>a;if(g||=e=_(),i<r&&(n=i,i=r,r=n),!(i>1e-12))g.moveTo(0,0);else if(v>t.m-1e-12)g.moveTo(i*t.o(a),i*t.f(a)),g.arc(0,0,i,a,o,!y),r>1e-12&&(g.moveTo(r*t.o(o),r*t.f(o)),g.arc(0,0,r,o,a,y));else{var b=a,x=o,S=a,C=o,w=v,T=v,E=h.apply(this,arguments)/2,D=E>1e-12&&(f?+f.apply(this,arguments):t.p(r*r+i*i)),O=t.u(t.n(i-r)/2,+d.apply(this,arguments)),k=O,A=O,j,M;if(D>1e-12){var N=t.i(D/r*t.f(E)),P=t.i(D/i*t.f(E));(w-=N*2)>1e-12?(N*=y?1:-1,S+=N,C-=N):(w=0,S=C=(a+o)/2),(T-=P*2)>1e-12?(P*=y?1:-1,b+=P,x-=P):(T=0,b=x=(a+o)/2)}var F=i*t.o(b),I=i*t.f(b),L=r*t.o(C),R=r*t.f(C);if(O>1e-12){var z=i*t.o(x),B=i*t.f(x),V=r*t.o(S),H=r*t.f(S),U;if(v<t.d){if(U=s(F,I,V,H,z,B,L,R)){var W=F-U[0],G=I-U[1],K=z-U[0],q=B-U[1],J=1/t.f(t.r((W*K+G*q)/(t.p(W*W+G*G)*t.p(K*K+q*q)))/2),Y=t.p(U[0]*U[0]+U[1]*U[1]);k=t.u(O,(r-Y)/(J-1)),A=t.u(O,(i-Y)/(J+1))}else k=A=0}}T>1e-12?A>1e-12?(j=c(V,H,F,I,i,A,y),M=c(z,B,L,R,i,A,y),g.moveTo(j.cx+j.x01,j.cy+j.y01),A<O?g.arc(j.cx,j.cy,A,t.a(j.y01,j.x01),t.a(M.y01,M.x01),!y):(g.arc(j.cx,j.cy,A,t.a(j.y01,j.x01),t.a(j.y11,j.x11),!y),g.arc(0,0,i,t.a(j.cy+j.y11,j.cx+j.x11),t.a(M.cy+M.y11,M.cx+M.x11),!y),g.arc(M.cx,M.cy,A,t.a(M.y11,M.x11),t.a(M.y01,M.x01),!y))):(g.moveTo(F,I),g.arc(0,0,i,b,x,!y)):g.moveTo(F,I),!(r>1e-12)||!(w>1e-12)?g.lineTo(L,R):k>1e-12?(j=c(L,R,z,B,r,-k,y),M=c(F,I,V,H,r,-k,y),g.lineTo(j.cx+j.x01,j.cy+j.y01),k<O?g.arc(j.cx,j.cy,k,t.a(j.y01,j.x01),t.a(M.y01,M.x01),!y):(g.arc(j.cx,j.cy,k,t.a(j.y01,j.x01),t.a(j.y11,j.x11),!y),g.arc(0,0,r,t.a(j.cy+j.y11,j.cx+j.x11),t.a(M.cy+M.y11,M.cx+M.x11),y),g.arc(M.cx,M.cy,k,t.a(M.y11,M.x11),t.a(M.y01,M.x01),!y))):g.arc(0,0,r,C,S,y)}if(g.closePath(),e)return g=null,e+``||null}return v.centroid=function(){var e=(+l.apply(this,arguments)+ +u.apply(this,arguments))/2,n=(+p.apply(this,arguments)+ +m.apply(this,arguments))/2-t.d/2;return[t.o(n)*e,t.f(n)*e]},v.innerRadius=function(t){return arguments.length?(l=typeof t==`function`?t:e.n(+t),v):l},v.outerRadius=function(t){return arguments.length?(u=typeof t==`function`?t:e.n(+t),v):u},v.cornerRadius=function(t){return arguments.length?(d=typeof t==`function`?t:e.n(+t),v):d},v.padRadius=function(t){return arguments.length?(f=t==null?null:typeof t==`function`?t:e.n(+t),v):f},v.startAngle=function(t){return arguments.length?(p=typeof t==`function`?t:e.n(+t),v):p},v.endAngle=function(t){return arguments.length?(m=typeof t==`function`?t:e.n(+t),v):m},v.padAngle=function(t){return arguments.length?(h=typeof t==`function`?t:e.n(+t),v):h},v.context=function(e){return arguments.length?(g=e??null,v):g},v}Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return l}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require("./chunk-FOHPRMQF-tmTlwTeH.js");const e=require("./mermaid-parser.core-BBApyu_y.js");exports.createArchitectureServices=e.M;
|