@markee/diagrams 0.1.0 → 0.2.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 (108) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +39 -0
  3. package/_assets/_head/assets/{_api-BbxJBqLU.js → _api-m6XYvA-0.js} +1 -1
  4. package/_assets/_head/assets/_architecture-PBZL5I3N-xnhut1Pa.js +1 -0
  5. package/_assets/_head/assets/{_architectureDiagram-2XIMDMQ5-B6NKHtRx.js → _architectureDiagram-2XIMDMQ5-CmZPhLbM.js} +1 -1
  6. package/_assets/_head/assets/{_blockDiagram-WCTKOSBZ-Dqnb6UUE.js → _blockDiagram-WCTKOSBZ-C3Asu6Kw.js} +1 -1
  7. package/_assets/_head/assets/{_c4Diagram-IC4MRINW-BZcM5On4.js → _c4Diagram-IC4MRINW-BK3_s_bR.js} +1 -1
  8. package/_assets/_head/assets/_channel-DT33mbtw.js +1 -0
  9. package/_assets/_head/assets/{_chunk-4BX2VUAB-zqTDmcBB.js → _chunk-4BX2VUAB-u7GuGTlH.js} +1 -1
  10. package/_assets/_head/assets/_chunk-55IACEB6-BhegayeB.js +1 -0
  11. package/_assets/_head/assets/{_chunk-7E7YKBS2-BfdwzEwB.js → _chunk-7E7YKBS2-DRw7IFmq.js} +1 -1
  12. package/_assets/_head/assets/{_chunk-7R4GIKGN-CixjX2hF.js → _chunk-7R4GIKGN-CEEB8leR.js} +1 -1
  13. package/_assets/_head/assets/{_chunk-C72U2L5F-Ju1rEIdN.js → _chunk-C72U2L5F-q7txozuq.js} +1 -1
  14. package/_assets/_head/assets/{_chunk-EGIJ26TM-CCUYcH6V.js → _chunk-EGIJ26TM-yYSCEksb.js} +1 -1
  15. package/_assets/_head/assets/{_chunk-FMBD7UC4-D6coRtDw.js → _chunk-FMBD7UC4-Dm6s76j7.js} +1 -1
  16. package/_assets/_head/assets/{_chunk-GEFDOKGD-hedaaI_B.js → _chunk-GEFDOKGD-DinyCumL.js} +1 -1
  17. package/_assets/_head/assets/_chunk-GLR3WWYH-BnCkIl1j.js +2 -0
  18. package/_assets/_head/assets/_chunk-HHEYEP7N-2k_uWfJ-.js +1 -0
  19. package/_assets/_head/assets/{_chunk-JSJVCQXG-CJ2rQuP0.js → _chunk-JSJVCQXG-BwRzsZaf.js} +1 -1
  20. package/_assets/_head/assets/{_chunk-KX2RTZJC-C6_Rew8h.js → _chunk-KX2RTZJC-CU2wfNBA.js} +1 -1
  21. package/_assets/_head/assets/{_chunk-KYZI473N-HFloJmj0.js → _chunk-KYZI473N-DFGZfQqH.js} +1 -1
  22. package/_assets/_head/assets/{_chunk-L3YUKLVL-BZnSrFqZ.js → _chunk-L3YUKLVL-8ZFAhWTa.js} +1 -1
  23. package/_assets/_head/assets/{_chunk-MX3YWQON-DTYOrezi.js → _chunk-MX3YWQON-OBQAAB3N.js} +1 -1
  24. package/_assets/_head/assets/{_chunk-NQ4KR5QH-BUplpEk2.js → _chunk-NQ4KR5QH-DJwRvUSa.js} +1 -1
  25. package/_assets/_head/assets/{_chunk-O4XLMI2P-Dmj7UqP5.js → _chunk-O4XLMI2P-C5stF2lf.js} +1 -1
  26. package/_assets/_head/assets/{_chunk-OZEHJAEY-BSk-0ei6.js → _chunk-OZEHJAEY-C-6Mr0rV.js} +1 -1
  27. package/_assets/_head/assets/{_chunk-PQ6SQG4A-d07SUR0W.js → _chunk-PQ6SQG4A-Ce4yqK2U.js} +1 -1
  28. package/_assets/_head/assets/{_chunk-PU5JKC2W-B7Fh0LIt.js → _chunk-PU5JKC2W-DjhZtVq8.js} +1 -1
  29. package/_assets/_head/assets/_chunk-QZHKN3VN-Bhpn6rDK.js +1 -0
  30. package/_assets/_head/assets/{_chunk-R5LLSJPH-CoKBj2D6.js → _chunk-R5LLSJPH-DzG3FAck.js} +1 -1
  31. package/_assets/_head/assets/{_chunk-WL4C6EOR-bOFxg0ID.js → _chunk-WL4C6EOR-DjvVjER2.js} +1 -1
  32. package/_assets/_head/assets/{_chunk-XIRO2GV7-COC85g2g.js → _chunk-XIRO2GV7-DYEpFn3-.js} +1 -1
  33. package/_assets/_head/assets/{_chunk-XPW4576I-CW6DI-1k.js → _chunk-XPW4576I-CRDcKYn5.js} +1 -1
  34. package/_assets/_head/assets/{_chunk-XZSTWKYB-DNV9pfMo.js → _chunk-XZSTWKYB-Dnmcdxn2.js} +1 -1
  35. package/_assets/_head/assets/{_chunk-YBOYWFTD-nZYHIeRV.js → _chunk-YBOYWFTD-C0sy-tkc.js} +1 -1
  36. package/_assets/_head/assets/_classDiagram-VBA2DB6C-DDvYM7vU.js +1 -0
  37. package/_assets/_head/assets/_classDiagram-v2-RAHNMMFH-BPF9HrXj.js +1 -0
  38. package/_assets/_head/assets/{_cose-bilkent-S5V4N54A-DzNIP-ES.js → _cose-bilkent-S5V4N54A-pwuuIbv2.js} +1 -1
  39. package/_assets/_head/assets/{_d3-graphviz-D-OeP-Hi.js → _d3-graphviz-DcMtfIhp.js} +1 -1
  40. package/_assets/_head/assets/{_dagre-D4f1FF8i.js → _dagre-CA4z7MrA.js} +1 -1
  41. package/_assets/_head/assets/{_dagre-KLK3FWXG-BkNMp9M0.js → _dagre-KLK3FWXG-CoqulaDf.js} +1 -1
  42. package/_assets/_head/assets/{_diagram-E7M64L7V-D6PZVOLB.js → _diagram-E7M64L7V-B-3RYN0e.js} +1 -1
  43. package/_assets/_head/assets/{_diagram-IFDJBPK2-QApacJ5c.js → _diagram-IFDJBPK2-BeCxbGXv.js} +1 -1
  44. package/_assets/_head/assets/{_diagram-P4PSJMXO-CNMUKotv.js → _diagram-P4PSJMXO-CvQRbCi5.js} +1 -1
  45. package/_assets/_head/assets/{_dist-Dk49gvBM.js → _dist-BO11r0fr.js} +1 -1
  46. package/_assets/_head/assets/{_erDiagram-INFDFZHY-Bpnx05jC.js → _erDiagram-INFDFZHY-Zh2XbqbT.js} +1 -1
  47. package/_assets/_head/assets/{_flowDiagram-PKNHOUZH-BdAdScRO.js → _flowDiagram-PKNHOUZH-DrDi74q1.js} +1 -1
  48. package/_assets/_head/assets/{_ganttDiagram-A5KZAMGK-DzEPJRcF.js → _ganttDiagram-A5KZAMGK-DZA6377B.js} +1 -1
  49. package/_assets/_head/assets/_gitGraph-HDMCJU4V-Ec_hDt6_.js +1 -0
  50. package/_assets/_head/assets/{_gitGraphDiagram-K3NZZRJ6-BMvgx1jL.js → _gitGraphDiagram-K3NZZRJ6-Br5Sirqq.js} +1 -1
  51. package/_assets/_head/assets/_info-3K5VOQVL-CENtZRFH.js +1 -0
  52. package/_assets/_head/assets/_infoDiagram-LFFYTUFH-C2swHr78.js +2 -0
  53. package/_assets/_head/assets/{_ishikawaDiagram-PHBUUO56-ye8wu7pU.js → _ishikawaDiagram-PHBUUO56-ETOK-LOw.js} +1 -1
  54. package/_assets/_head/assets/{_journeyDiagram-4ABVD52K-D5OtlO2S.js → _journeyDiagram-4ABVD52K-3Odci6Ma.js} +1 -1
  55. package/_assets/_head/assets/{_kanban-definition-K7BYSVSG-DtUEcx7s.js → _kanban-definition-K7BYSVSG-C-x5I47z.js} +1 -1
  56. package/_assets/_head/assets/{_line-Bn73e1DS.js → _line-BMsgmPE5.js} +1 -1
  57. package/_assets/_head/assets/{_linear-DLy__jWx.js → _linear-D1vf9RD0.js} +1 -1
  58. package/_assets/_head/assets/{_mermaid-parser.core-_H6Clr87.js → _mermaid-parser.core-DZbZ9Nt1.js} +2 -2
  59. package/_assets/_head/assets/{_mermaid.core-CN_dW3wB.js → _mermaid.core-B6JDNx3m.js} +3 -3
  60. package/_assets/_head/assets/{_mindmap-definition-YRQLILUH-Bj6WNjT2.js → _mindmap-definition-YRQLILUH-CY8Mkbyf.js} +1 -1
  61. package/_assets/_head/assets/_packet-RMMSAZCW-HsVTCE5M.js +1 -0
  62. package/_assets/_head/assets/_pie-UPGHQEXC-ClCegNAN.js +1 -0
  63. package/_assets/_head/assets/{_pieDiagram-SKSYHLDU-B7n7B95W.js → _pieDiagram-SKSYHLDU-CYJI9Scd.js} +1 -1
  64. package/_assets/_head/assets/{_quadrantDiagram-337W2JSQ-C_OD8wEG.js → _quadrantDiagram-337W2JSQ-BGW8PhOJ.js} +1 -1
  65. package/_assets/_head/assets/_radar-KQ55EAFF-ugGxOkwG.js +1 -0
  66. package/_assets/_head/assets/{_requirementDiagram-Z7DCOOCP-C8HzXf-7.js → _requirementDiagram-Z7DCOOCP-BbV78NhX.js} +1 -1
  67. package/_assets/_head/assets/{_sankeyDiagram-WA2Y5GQK-Ctpgy26F.js → _sankeyDiagram-WA2Y5GQK-ByyrJf1U.js} +1 -1
  68. package/_assets/_head/assets/{_sequenceDiagram-2WXFIKYE-BrWWYecj.js → _sequenceDiagram-2WXFIKYE-CUwOGuhQ.js} +1 -1
  69. package/_assets/_head/assets/{_src-COkbRRdF.js → _src-Bi8wryCV.js} +1 -1
  70. package/_assets/_head/assets/{_src-EY2faTVt.js → _src-D_0f55rL.js} +1 -1
  71. package/_assets/_head/assets/{_src-DGaYM9rN.js → _src-SNUCTSwP.js} +1 -1
  72. package/_assets/_head/assets/{_stateDiagram-RAJIS63D-DHDYVq4g.js → _stateDiagram-RAJIS63D-Dxv3HBdz.js} +1 -1
  73. package/_assets/_head/assets/_stateDiagram-v2-FVOUBMTO-brNar02G.js +1 -0
  74. package/_assets/_head/assets/{_timeline-definition-YZTLITO2-Baqh8Zr3.js → _timeline-definition-YZTLITO2-COgTpWBR.js} +1 -1
  75. package/_assets/_head/assets/_treemap-KZPCXAKY-CXR7h5hT.js +1 -0
  76. package/_assets/_head/assets/{_value-BHMRaafc.js → _value-NcYKFvkN.js} +1 -1
  77. package/_assets/_head/assets/{_vennDiagram-LZ73GAT5-DT2MLRvW.js → _vennDiagram-LZ73GAT5-CFvtr6ch.js} +1 -1
  78. package/_assets/_head/assets/{_xychartDiagram-JWTSCODW-B4O2dc9N.js → _xychartDiagram-JWTSCODW-DtHVB6Xo.js} +1 -1
  79. package/_assets/_head/assets/{main-GvJmWKsI.js → main-Bgz5KRxr.js} +3 -3
  80. package/_assets/_head/assets/main-DTgc_eyw.css +1 -0
  81. package/package.json +13 -4
  82. package/src/element.test.ts +319 -0
  83. package/src/helpers.test.ts +51 -0
  84. package/src/index.css +4 -4
  85. package/src/main.test.ts +29 -0
  86. package/src/remark.test.ts +196 -0
  87. package/src/remark.ts +4 -5
  88. package/src/runtime.test.ts +78 -0
  89. package/tsconfig.json +3 -10
  90. package/vitest.config.ts +4 -0
  91. package/vitest.setup.ts +6 -0
  92. package/_assets/_head/assets/_architecture-PBZL5I3N-BPxfLoEK.js +0 -1
  93. package/_assets/_head/assets/_channel-CfD3KTsT.js +0 -1
  94. package/_assets/_head/assets/_chunk-55IACEB6-x7bSLf7B.js +0 -1
  95. package/_assets/_head/assets/_chunk-GLR3WWYH-CADHj0Af.js +0 -2
  96. package/_assets/_head/assets/_chunk-HHEYEP7N-yDnzeL6u.js +0 -1
  97. package/_assets/_head/assets/_chunk-QZHKN3VN-OrU_cr5J.js +0 -1
  98. package/_assets/_head/assets/_classDiagram-VBA2DB6C-C9oLPafD.js +0 -1
  99. package/_assets/_head/assets/_classDiagram-v2-RAHNMMFH-Dgh8T6Nh.js +0 -1
  100. package/_assets/_head/assets/_gitGraph-HDMCJU4V-bzhcDRU8.js +0 -1
  101. package/_assets/_head/assets/_info-3K5VOQVL-DO8S_2BK.js +0 -1
  102. package/_assets/_head/assets/_infoDiagram-LFFYTUFH-V27XJ0e-.js +0 -2
  103. package/_assets/_head/assets/_packet-RMMSAZCW-BQu67kO8.js +0 -1
  104. package/_assets/_head/assets/_pie-UPGHQEXC-Bq1eDF5N.js +0 -1
  105. package/_assets/_head/assets/_radar-KQ55EAFF-BVJblTdI.js +0 -1
  106. package/_assets/_head/assets/_stateDiagram-v2-FVOUBMTO-C3RKEofw.js +0 -1
  107. package/_assets/_head/assets/_treemap-KZPCXAKY-DnDBABML.js +0 -1
  108. package/_assets/_head/assets/main-CSvXzq1b.css +0 -1
@@ -0,0 +1,196 @@
1
+ import { describe, expect, it, vi } from 'vitest'
2
+
3
+ async function importRemark() {
4
+ vi.resetModules()
5
+
6
+ const remark = vi.fn()
7
+ const visit = vi.fn((tree: any, _type: string, callback: Function) => {
8
+ tree.children.forEach((node: any, index: number) =>
9
+ callback(node, index, tree),
10
+ )
11
+ })
12
+ const parseAttrs = vi.fn((meta: string) => {
13
+ if (meta.includes('off-glb')) {
14
+ return {
15
+ class: 'mermaid compact off-glb',
16
+ id: 'chart-a',
17
+ lightbox: 'true',
18
+ }
19
+ }
20
+ if (meta.includes('on-glb')) {
21
+ return { class: 'dbml roomy on-glb', lightbox: 'false' }
22
+ }
23
+ if (meta.includes('meta-id')) {
24
+ return { id: 'meta-id', class: 'mermaid compact' }
25
+ }
26
+ return {}
27
+ })
28
+
29
+ vi.doMock('@markee/runtime', () => ({
30
+ extend: {
31
+ markdownPipeline: {
32
+ remark,
33
+ visit,
34
+ },
35
+ },
36
+ }))
37
+ vi.doMock('attributes-parser', () => ({
38
+ default: parseAttrs,
39
+ }))
40
+
41
+ return {
42
+ ...(await import('./remark.js')),
43
+ remark,
44
+ visit,
45
+ }
46
+ }
47
+
48
+ describe('@markee/diagrams remark', () => {
49
+ it('rewrites mermaid and dbml fences with lightbox overrides', async () => {
50
+ const { registerDiagramsRemark, remark } = await importRemark()
51
+
52
+ registerDiagramsRemark()
53
+
54
+ const transform = remark.mock.calls[0]?.[1].call({
55
+ data: () => ({
56
+ pluginConfig: () => ({ enabled: false }),
57
+ }),
58
+ })
59
+
60
+ const tree = {
61
+ children: [
62
+ {
63
+ lang: 'mermaid',
64
+ meta: 'off-glb',
65
+ value: 'graph TD;A-->B',
66
+ data: { hProperties: { id: 'node-id' } },
67
+ },
68
+ {
69
+ lang: 'dbml',
70
+ meta: 'on-glb',
71
+ value: 'Table users {}',
72
+ data: {},
73
+ },
74
+ {
75
+ lang: 'mermaid',
76
+ meta: 'kroki',
77
+ value: 'skip',
78
+ data: {},
79
+ },
80
+ ],
81
+ }
82
+
83
+ transform(tree)
84
+
85
+ expect((tree.children[0] as any).value).toContain('<markee-diagram')
86
+ expect((tree.children[0] as any).value).not.toContain('glightbox')
87
+ expect((tree.children[0] as any).value).toContain('id="node-id"')
88
+ expect((tree.children[0] as any).value).toContain(
89
+ 'class="mermaid diagram compact off-glb"',
90
+ )
91
+
92
+ expect((tree.children[1] as any).value).toContain("class='glightbox'")
93
+ expect((tree.children[1] as any).value).toContain('markee-diagram-0')
94
+ expect((tree.children[1] as any).value).toContain(
95
+ 'class="dbml diagram roomy on-glb"',
96
+ )
97
+
98
+ expect(tree.children[2]).toMatchObject({
99
+ lang: 'mermaid',
100
+ meta: 'kroki',
101
+ })
102
+ })
103
+
104
+ it('defaults lightbox behavior and ignores incomplete or unsupported nodes', async () => {
105
+ const { registerDiagramsRemark, remark, visit } = await importRemark()
106
+
107
+ registerDiagramsRemark()
108
+
109
+ const transform = remark.mock.calls[0]?.[1].call({
110
+ data: () => ({
111
+ pluginConfig: () => undefined,
112
+ }),
113
+ })
114
+
115
+ transform({ children: [] })
116
+ const callback = visit.mock.calls[0]?.[2] as Function
117
+
118
+ expect(() =>
119
+ callback(
120
+ { lang: 'mermaid', value: 'graph TD;A-->B' },
121
+ undefined,
122
+ undefined,
123
+ ),
124
+ ).not.toThrow()
125
+
126
+ const detached = {
127
+ lang: 'mermaid',
128
+ meta: 'meta-id',
129
+ value: 'graph TD;A-->B',
130
+ data: {},
131
+ }
132
+ const tree = {
133
+ children: [
134
+ detached,
135
+ {
136
+ lang: 'bash',
137
+ meta: '',
138
+ value: 'echo nope',
139
+ data: {},
140
+ },
141
+ {
142
+ lang: ' mermaid ',
143
+ meta: 'meta-id',
144
+ value: 'graph TD;A-->B',
145
+ data: {},
146
+ },
147
+ {
148
+ lang: 'mermaid',
149
+ data: {},
150
+ },
151
+ ],
152
+ }
153
+
154
+ transform({
155
+ children: tree.children,
156
+ })
157
+
158
+ expect((tree.children[0] as any).value).toContain("class='glightbox'")
159
+ expect((tree.children[0] as any).value).toContain('id="meta-id"')
160
+ expect(tree.children[1]).toMatchObject({
161
+ lang: 'bash',
162
+ })
163
+ expect(tree.children[2]).toMatchObject({
164
+ type: 'html',
165
+ value: expect.stringContaining('data-kind="mermaid"'),
166
+ })
167
+ expect((tree.children[3] as any).value).toContain('data-source=""')
168
+ })
169
+
170
+ it('supports boolean lightbox configuration values', async () => {
171
+ const { registerDiagramsRemark, remark } = await importRemark()
172
+
173
+ registerDiagramsRemark()
174
+
175
+ const transform = remark.mock.calls[0]?.[1].call({
176
+ data: () => ({
177
+ pluginConfig: () => true,
178
+ }),
179
+ })
180
+
181
+ const tree = {
182
+ children: [
183
+ {
184
+ lang: 'dbml',
185
+ meta: '',
186
+ value: 'Table users {}',
187
+ data: {},
188
+ },
189
+ ],
190
+ }
191
+
192
+ transform(tree)
193
+
194
+ expect((tree.children[0] as any).value).toContain("class='glightbox'")
195
+ })
196
+ })
package/src/remark.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { Processor } from 'unified'
1
2
  import parseAttrs from 'attributes-parser'
2
3
  import { extend } from '@markee/runtime'
3
4
  import {
@@ -10,12 +11,10 @@ import {
10
11
  } from './helpers'
11
12
 
12
13
  export function registerDiagramsRemark() {
13
- extend.markdownPipeline.remark('markee-diagrams', function (this: any) {
14
+ extend.markdownPipeline.remark('markee-diagrams', function (this: Processor) {
14
15
  return (tree: any) => {
15
- const resolved = this.data().pluginConfig('lightbox') as
16
- | boolean
17
- | { enabled: boolean }
18
- | undefined
16
+ const { pluginConfig } = this.data()
17
+ const resolved = pluginConfig<boolean | { enabled: boolean }>('lightbox')
19
18
  const lightboxEnabled =
20
19
  typeof resolved === 'boolean' ? resolved : (resolved?.enabled ?? true)
21
20
 
@@ -0,0 +1,78 @@
1
+ import { describe, expect, it, vi } from 'vitest'
2
+
3
+ async function importRuntime({
4
+ mermaidModule,
5
+ dbmlRenderer,
6
+ d3Selection,
7
+ }: {
8
+ mermaidModule?: any
9
+ dbmlRenderer?: any
10
+ d3Selection?: any
11
+ } = {}) {
12
+ vi.resetModules()
13
+
14
+ vi.doMock('mermaid', () => ({
15
+ default: mermaidModule ?? {
16
+ initialize: vi.fn(),
17
+ },
18
+ }))
19
+ vi.doMock(
20
+ '@softwaretechnik/dbml-renderer',
21
+ () =>
22
+ dbmlRenderer ?? {
23
+ run: vi.fn(),
24
+ },
25
+ )
26
+ vi.doMock(
27
+ 'd3-selection',
28
+ () =>
29
+ d3Selection ?? {
30
+ select: vi.fn(),
31
+ default: { select: vi.fn() },
32
+ },
33
+ )
34
+ vi.doMock('d3-graphviz', () => ({}))
35
+
36
+ return await import('./runtime.js')
37
+ }
38
+
39
+ describe('@markee/diagrams runtime', () => {
40
+ it('loads mermaid once and initializes it', async () => {
41
+ const initialize = vi.fn()
42
+ const { loadMermaid } = await importRuntime({
43
+ mermaidModule: { initialize },
44
+ })
45
+
46
+ const first = await loadMermaid()
47
+ const second = await loadMermaid()
48
+
49
+ expect(first).toBe(second)
50
+ expect(initialize).toHaveBeenCalledWith({ startOnLoad: false })
51
+ })
52
+
53
+ it('loads and caches the dbml runtime helpers', async () => {
54
+ const run = vi.fn()
55
+ const select = vi.fn()
56
+ const { loadDiagramRuntime } = await importRuntime({
57
+ dbmlRenderer: { run },
58
+ d3Selection: { select, default: { select } },
59
+ })
60
+
61
+ const first = await loadDiagramRuntime()
62
+ const second = await loadDiagramRuntime()
63
+
64
+ expect(first).toBe(second)
65
+ expect(first.dbmlRun).toBe(run)
66
+ expect(first.select).toBe(select)
67
+ })
68
+
69
+ it('throws when d3-selection does not expose a select function', async () => {
70
+ const { loadDiagramRuntime } = await importRuntime({
71
+ d3Selection: { select: undefined, default: {} },
72
+ })
73
+
74
+ await expect(loadDiagramRuntime()).rejects.toThrow(
75
+ 'Could not load d3-selection runtime.',
76
+ )
77
+ })
78
+ })
package/tsconfig.json CHANGED
@@ -1,15 +1,8 @@
1
1
  {
2
+ "extends": "@markee/tsconfig/bundler.json",
2
3
  "compilerOptions": {
3
- "strict": true,
4
- "skipLibCheck": true,
5
- "module": "ESNext",
6
- "target": "ESNext",
7
- "moduleResolution": "bundler",
8
- "esModuleInterop": true,
9
- "allowSyntheticDefaultImports": true,
10
- "lib": ["ES2022", "dom"],
11
- "outDir": "dist",
12
4
  "baseUrl": "."
13
5
  },
14
- "include": ["src"]
6
+ "include": ["*.ts", "**/*.ts"],
7
+ "exclude": ["node_modules", "dist"]
15
8
  }
@@ -0,0 +1,4 @@
1
+ import { defineConfig } from 'vitest/config'
2
+ import { createMarkeeVitestConfig } from '@markee/vitest'
3
+
4
+ export default defineConfig(createMarkeeVitestConfig())
@@ -0,0 +1,6 @@
1
+ import { installMarkeeVitestSetup } from '@markee/vitest/setup'
2
+
3
+ installMarkeeVitestSetup({
4
+ protectCustomElements: true,
5
+ restoreMocks: true,
6
+ })
@@ -1 +0,0 @@
1
- import"./_chunk-XZSTWKYB-DNV9pfMo.js";import{n as e}from"./_chunk-R5LLSJPH-CoKBj2D6.js";export{e as createArchitectureServices};
@@ -1 +0,0 @@
1
- import{it as e,rt as t}from"./_chunk-7R4GIKGN-CixjX2hF.js";var n=(n,r)=>e.lang.round(t.parse(n)[r]);export{n as t};
@@ -1 +0,0 @@
1
- import{i as e}from"./_src-COkbRRdF.js";import{n as t}from"./_src-DGaYM9rN.js";var n=t((t,n)=>{let r;return n===`sandbox`&&(r=e(`#i`+t)),e(n===`sandbox`?r.nodes()[0].contentDocument.body:`body`).select(`[id="${t}"]`)},`getDiagramElement`);export{n as t};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./_dagre-KLK3FWXG-BkNMp9M0.js","./_dist-Dk49gvBM.js","./main-GvJmWKsI.js","./main-CSvXzq1b.css","./_chunk-PU5JKC2W-B7Fh0LIt.js","./_src-DGaYM9rN.js","./_src-COkbRRdF.js","./_chunk-GEFDOKGD-hedaaI_B.js","./_math-CyywJguE.js","./_chunk-7R4GIKGN-CixjX2hF.js","./_isArrayLikeObject-B62EgjVm.js","./_src-EY2faTVt.js","./_dagre-D4f1FF8i.js","./_graphlib-CWZwVoL0.js","./_isEmpty-DwnoWLeP.js","./__baseUniq-BbfvCSQ0.js","./__basePickBy-seJymvZv.js","./_clone-C4VI7IwW.js","./_chunk-KYZI473N-HFloJmj0.js","./_chunk-PQ6SQG4A-d07SUR0W.js","./_chunk-YBOYWFTD-nZYHIeRV.js","./_rough.esm-B-x7cSr_.js","./_chunk-MX3YWQON-DTYOrezi.js","./_chunk-O4XLMI2P-Dmj7UqP5.js","./_line-Bn73e1DS.js","./_array-1ZLHT4IW.js","./_path-DqxJfpv2.js","./_path-e1ZUMOO_.js","./_cose-bilkent-S5V4N54A-DzNIP-ES.js","./_cytoscape.esm-p1aMD8pk.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./main-GvJmWKsI.js";import{u as t}from"./_chunk-GEFDOKGD-hedaaI_B.js";import{n,r}from"./_src-DGaYM9rN.js";import{s as i,y as a}from"./_chunk-7R4GIKGN-CixjX2hF.js";import{a as o,i as s,s as c}from"./_chunk-KYZI473N-HFloJmj0.js";import{a as l,i as u,n as d,r as f}from"./_chunk-O4XLMI2P-Dmj7UqP5.js";var p={common:i,getConfig:a,insertCluster:s,insertEdge:d,insertEdgeLabel:f,insertMarkers:u,insertNode:o,interpolateToCurve:t,labelHelper:c,log:r,positionEdgeLabel:l},m={},h=n(e=>{for(let t of e)m[t.name]=t},`registerLayoutLoaders`);n(()=>{h([{name:`dagre`,loader:n(async()=>await e(()=>import(`./_dagre-KLK3FWXG-BkNMp9M0.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]),import.meta.url),`loader`)},...[{name:`cose-bilkent`,loader:n(async()=>await e(()=>import(`./_cose-bilkent-S5V4N54A-DzNIP-ES.js`),__vite__mapDeps([28,2,3,29,5,11,6]),import.meta.url),`loader`)}]])},`registerDefaultLayoutLoaders`)();var g=n(async(e,t)=>{if(!(e.layoutAlgorithm in m))throw Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);let n=m[e.layoutAlgorithm];return(await n.loader()).render(e,t,p,{algorithm:n.algorithm})},`render`),_=n((e=``,{fallback:t=`dagre`}={})=>{if(e in m)return e;if(t in m)return r.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw Error(`Both layout algorithms ${e} and ${t} are not registered.`)},`getRegisteredLayoutAlgorithm`);export{h as n,g as r,_ as t};
@@ -1 +0,0 @@
1
- import{i as e}from"./_src-COkbRRdF.js";import{n as t}from"./_src-DGaYM9rN.js";import{b as n}from"./_chunk-7R4GIKGN-CixjX2hF.js";var r=t(t=>{let{securityLevel:r}=n(),i=e(`body`);return r===`sandbox`&&(i=e((e(`#i${t}`).node()?.contentDocument??document).body)),i.select(`#${t}`)},`selectSvgElement`);export{r as t};
@@ -1 +0,0 @@
1
- import{n as e}from"./_src-DGaYM9rN.js";var t=class{constructor(e){this.init=e,this.records=this.init()}static{e(this,`ImperativeState`)}reset(){this.records=this.init()}};export{t};
@@ -1 +0,0 @@
1
- import"./_chunk-GEFDOKGD-hedaaI_B.js";import"./_src-EY2faTVt.js";import{n as e}from"./_src-DGaYM9rN.js";import"./_chunk-7R4GIKGN-CixjX2hF.js";import"./_dist-Dk49gvBM.js";import"./_chunk-PU5JKC2W-B7Fh0LIt.js";import"./_chunk-FMBD7UC4-D6coRtDw.js";import"./_chunk-MX3YWQON-DTYOrezi.js";import"./_chunk-YBOYWFTD-nZYHIeRV.js";import"./_chunk-JSJVCQXG-CJ2rQuP0.js";import"./_chunk-55IACEB6-x7bSLf7B.js";import"./_chunk-KX2RTZJC-C6_Rew8h.js";import"./_chunk-PQ6SQG4A-d07SUR0W.js";import"./_chunk-KYZI473N-HFloJmj0.js";import"./_chunk-O4XLMI2P-Dmj7UqP5.js";import"./_chunk-GLR3WWYH-CADHj0Af.js";import{i as t,n,r,t as i}from"./_chunk-WL4C6EOR-bOFxg0ID.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1 +0,0 @@
1
- import"./_chunk-GEFDOKGD-hedaaI_B.js";import"./_src-EY2faTVt.js";import{n as e}from"./_src-DGaYM9rN.js";import"./_chunk-7R4GIKGN-CixjX2hF.js";import"./_dist-Dk49gvBM.js";import"./_chunk-PU5JKC2W-B7Fh0LIt.js";import"./_chunk-FMBD7UC4-D6coRtDw.js";import"./_chunk-MX3YWQON-DTYOrezi.js";import"./_chunk-YBOYWFTD-nZYHIeRV.js";import"./_chunk-JSJVCQXG-CJ2rQuP0.js";import"./_chunk-55IACEB6-x7bSLf7B.js";import"./_chunk-KX2RTZJC-C6_Rew8h.js";import"./_chunk-PQ6SQG4A-d07SUR0W.js";import"./_chunk-KYZI473N-HFloJmj0.js";import"./_chunk-O4XLMI2P-Dmj7UqP5.js";import"./_chunk-GLR3WWYH-CADHj0Af.js";import{i as t,n,r,t as i}from"./_chunk-WL4C6EOR-bOFxg0ID.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1 +0,0 @@
1
- import"./_chunk-XZSTWKYB-DNV9pfMo.js";import{n as e}from"./_chunk-7E7YKBS2-BfdwzEwB.js";export{e as createGitGraphServices};
@@ -1 +0,0 @@
1
- import"./_chunk-XZSTWKYB-DNV9pfMo.js";import{n as e}from"./_chunk-EGIJ26TM-CCUYcH6V.js";export{e as createInfoServices};
@@ -1,2 +0,0 @@
1
- import"./_chunk-XZSTWKYB-DNV9pfMo.js";import"./_chunk-R5LLSJPH-CoKBj2D6.js";import"./_chunk-7E7YKBS2-BfdwzEwB.js";import"./_chunk-EGIJ26TM-CCUYcH6V.js";import"./_chunk-C72U2L5F-Ju1rEIdN.js";import"./_chunk-XIRO2GV7-COC85g2g.js";import"./_chunk-L3YUKLVL-BZnSrFqZ.js";import"./_chunk-OZEHJAEY-BSk-0ei6.js";import"./_src-EY2faTVt.js";import{n as e,r as t}from"./_src-DGaYM9rN.js";import{c as n}from"./_chunk-7R4GIKGN-CixjX2hF.js";import{t as r}from"./_chunk-HHEYEP7N-yDnzeL6u.js";import{t as i}from"./_mermaid-parser.core-_H6Clr87.js";var a={parse:e(async e=>{let n=await i(`info`,e);t.debug(n)},`parse`)},o={version:`11.13.0`},s={parser:a,db:{getVersion:e(()=>o.version,`getVersion`)},renderer:{draw:e((e,i,a)=>{t.debug(`rendering info diagram
2
- `+e);let o=r(i);n(o,100,400,!0),o.append(`g`).append(`text`).attr(`x`,100).attr(`y`,40).attr(`class`,`version`).attr(`font-size`,32).style(`text-anchor`,`middle`).text(`v${a}`)},`draw`)}};export{s as diagram};
@@ -1 +0,0 @@
1
- import"./_chunk-XZSTWKYB-DNV9pfMo.js";import{n as e}from"./_chunk-C72U2L5F-Ju1rEIdN.js";export{e as createPacketServices};
@@ -1 +0,0 @@
1
- import"./_chunk-XZSTWKYB-DNV9pfMo.js";import{n as e}from"./_chunk-XIRO2GV7-COC85g2g.js";export{e as createPieServices};
@@ -1 +0,0 @@
1
- import"./_chunk-XZSTWKYB-DNV9pfMo.js";import{n as e}from"./_chunk-L3YUKLVL-BZnSrFqZ.js";export{e as createRadarServices};
@@ -1 +0,0 @@
1
- import"./_chunk-GEFDOKGD-hedaaI_B.js";import"./_src-EY2faTVt.js";import{n as e}from"./_src-DGaYM9rN.js";import"./_chunk-7R4GIKGN-CixjX2hF.js";import"./_dist-Dk49gvBM.js";import"./_chunk-PU5JKC2W-B7Fh0LIt.js";import"./_chunk-MX3YWQON-DTYOrezi.js";import"./_chunk-YBOYWFTD-nZYHIeRV.js";import"./_chunk-55IACEB6-x7bSLf7B.js";import"./_chunk-KX2RTZJC-C6_Rew8h.js";import"./_chunk-PQ6SQG4A-d07SUR0W.js";import"./_chunk-KYZI473N-HFloJmj0.js";import"./_chunk-O4XLMI2P-Dmj7UqP5.js";import"./_chunk-GLR3WWYH-CADHj0Af.js";import{i as t,n,r,t as i}from"./_chunk-NQ4KR5QH-BUplpEk2.js";var a={parser:n,get db(){return new i(2)},renderer:r,styles:t,init:e(e=>{e.state||={},e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1 +0,0 @@
1
- import"./_chunk-XZSTWKYB-DNV9pfMo.js";import{n as e}from"./_chunk-OZEHJAEY-BSk-0ei6.js";export{e as createTreemapServices};
@@ -1 +0,0 @@
1
- @layer markee-extension{markee-diagram{margin:1.2rem 0;display:block}a.glightbox>markee-diagram{position:relative}a.glightbox>markee-diagram:after{content:"";z-index:1;cursor:pointer;background:0 0;position:absolute;inset:0}.ginlined-content.diagram{text-align:center;min-width:100vw;padding:1rem 6rem}markee-diagram .markee-diagram-status,markee-diagram .markee-diagram-error{border:1px solid var(--mk-color-border,#d9d9d9);background:var(--mk-color-background,#fafafa);color:var(--mk-color-text,#333);border-radius:.5rem;padding:.75rem .9rem}markee-diagram .markee-diagram-status{font-style:italic}markee-diagram .markee-diagram-error{border-left:4px solid var(--mk-admonition-color-danger)}markee-diagram .markee-diagram-error pre{white-space:pre-wrap;margin:.6rem 0 0;font-size:.875rem;overflow:auto}markee-diagram .markee-diagram-mermaid,markee-diagram .markee-diagram-dbml{overflow-x:auto}markee-diagram .markee-diagram-mermaid>svg,markee-diagram .markee-diagram-dbml>svg{max-width:100%;height:auto;margin:0 auto;display:block}markee-diagram .markee-diagram-dbml,markee-diagram .markee-diagram-dbml *{pointer-events:none!important}[data-color-scheme=dark] markee-diagram{filter:invert(88%)hue-rotate(180deg)}}