@luutuankiet/gsd-reader 0.2.9 → 0.2.11

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 (56) hide show
  1. package/README.md +6 -4
  2. package/cli.cjs +111 -48
  3. package/dist/assets/{_baseUniq-CAxsECAU.js → _baseUniq-aGI9_DhB.js} +1 -1
  4. package/dist/assets/{arc--hCWNMtj.js → arc-C9UKAJtn.js} +1 -1
  5. package/dist/assets/{architectureDiagram-VXUJARFQ-Cue7VPN4.js → architectureDiagram-VXUJARFQ-CRD0ULZt.js} +1 -1
  6. package/dist/assets/{blockDiagram-VD42YOAC-D8tdc-Oh.js → blockDiagram-VD42YOAC-Wb_l0Iex.js} +1 -1
  7. package/dist/assets/{c4Diagram-YG6GDRKO-BVfpEVXF.js → c4Diagram-YG6GDRKO-DH4oSOae.js} +1 -1
  8. package/dist/assets/channel-BsRBciHH.js +1 -0
  9. package/dist/assets/{chunk-4BX2VUAB-sryqshFW.js → chunk-4BX2VUAB-SvMJI_zY.js} +1 -1
  10. package/dist/assets/{chunk-55IACEB6-CdVKFtJS.js → chunk-55IACEB6-DQiT0MId.js} +1 -1
  11. package/dist/assets/{chunk-B4BG7PRW-BzqhCfm_.js → chunk-B4BG7PRW-B1_-y9uC.js} +1 -1
  12. package/dist/assets/{chunk-DI55MBZ5-CMeNQ4zx.js → chunk-DI55MBZ5-CrZfOEF4.js} +1 -1
  13. package/dist/assets/{chunk-FMBD7UC4-DhpHQnC2.js → chunk-FMBD7UC4-DvOcXy-z.js} +1 -1
  14. package/dist/assets/{chunk-QN33PNHL-Bp9aQMig.js → chunk-QN33PNHL-4I5UUaOA.js} +1 -1
  15. package/dist/assets/{chunk-QZHKN3VN-Cv8H3m60.js → chunk-QZHKN3VN-Ga9M0i4r.js} +1 -1
  16. package/dist/assets/{chunk-TZMSLE5B-CfMQUbCb.js → chunk-TZMSLE5B-Dcmg8rey.js} +1 -1
  17. package/dist/assets/classDiagram-2ON5EDUG-Bj9r43W4.js +1 -0
  18. package/dist/assets/classDiagram-v2-WZHVMYZB-Bj9r43W4.js +1 -0
  19. package/dist/assets/clone-TaLAI51q.js +1 -0
  20. package/dist/assets/{cose-bilkent-S5V4N54A-4Pz2hynZ.js → cose-bilkent-S5V4N54A-Dcq3o5oY.js} +1 -1
  21. package/dist/assets/{dagre-6UL2VRFP-CuaQ2UbK.js → dagre-6UL2VRFP-BpDHHm36.js} +1 -1
  22. package/dist/assets/{diagram-PSM6KHXK-zvrXgnlI.js → diagram-PSM6KHXK-BpYME6ui.js} +1 -1
  23. package/dist/assets/{diagram-QEK2KX5R-CaV-fPrg.js → diagram-QEK2KX5R-CgISAdJK.js} +1 -1
  24. package/dist/assets/{diagram-S2PKOQOG-Df-mzRR0.js → diagram-S2PKOQOG-BuKA1NfZ.js} +1 -1
  25. package/dist/assets/{erDiagram-Q2GNP2WA-BHN4N5IV.js → erDiagram-Q2GNP2WA-Z6Sx__vC.js} +1 -1
  26. package/dist/assets/{flowDiagram-NV44I4VS-mEd3cOXH.js → flowDiagram-NV44I4VS-JOidSRqJ.js} +1 -1
  27. package/dist/assets/{ganttDiagram-JELNMOA3-CwmhCB9s.js → ganttDiagram-JELNMOA3-BFQAQYk8.js} +1 -1
  28. package/dist/assets/{gitGraphDiagram-NY62KEGX-DXhPyefk.js → gitGraphDiagram-NY62KEGX-31kl3IE3.js} +1 -1
  29. package/dist/assets/{graph-nhXmozHk.js → graph-DGK29sai.js} +1 -1
  30. package/dist/assets/index-D4LhVyUv.js +692 -0
  31. package/dist/assets/{infoDiagram-WHAUD3N6-DUcujpWE.js → infoDiagram-WHAUD3N6-CJpRZyVv.js} +1 -1
  32. package/dist/assets/{journeyDiagram-XKPGCS4Q-BR4LZFi2.js → journeyDiagram-XKPGCS4Q-CUVwYx2w.js} +1 -1
  33. package/dist/assets/{kanban-definition-3W4ZIXB7-EjlkWCMV.js → kanban-definition-3W4ZIXB7-_1WnO7iq.js} +1 -1
  34. package/dist/assets/{layout-B3mrchfj.js → layout-CY4PrZyj.js} +1 -1
  35. package/dist/assets/{linear-Ct-gwwhf.js → linear-4j9KyBLB.js} +1 -1
  36. package/dist/assets/{mermaid.core-BjP1GMmj.js → mermaid.core-BM6CC-A6.js} +4 -4
  37. package/dist/assets/{min-Duhe34sA.js → min-DW0-ouHL.js} +1 -1
  38. package/dist/assets/{mindmap-definition-VGOIOE7T-D1rcLjzw.js → mindmap-definition-VGOIOE7T-DTTAkdDI.js} +1 -1
  39. package/dist/assets/{pieDiagram-ADFJNKIX-D_f_57E8.js → pieDiagram-ADFJNKIX-D9M3Moao.js} +1 -1
  40. package/dist/assets/{quadrantDiagram-AYHSOK5B-BoVWO1DJ.js → quadrantDiagram-AYHSOK5B-B8p4nRBT.js} +1 -1
  41. package/dist/assets/{requirementDiagram-UZGBJVZJ-BpD1MSJ4.js → requirementDiagram-UZGBJVZJ-DP5M0LtN.js} +1 -1
  42. package/dist/assets/{sankeyDiagram-TZEHDZUN-B4WQ8rbG.js → sankeyDiagram-TZEHDZUN-nDEWjeeV.js} +1 -1
  43. package/dist/assets/{sequenceDiagram-WL72ISMW-Ds70GW_6.js → sequenceDiagram-WL72ISMW-CeYSXM0n.js} +1 -1
  44. package/dist/assets/{stateDiagram-FKZM4ZOC-BtwZjuZ2.js → stateDiagram-FKZM4ZOC-Cx3NYkkw.js} +1 -1
  45. package/dist/assets/stateDiagram-v2-4FDKWEC3-vQq6QPBk.js +1 -0
  46. package/dist/assets/{timeline-definition-IT6M3QCI-BzD-PpOn.js → timeline-definition-IT6M3QCI-jkkwPIAA.js} +1 -1
  47. package/dist/assets/{treemap-KMMF4GRG-Bc1dJLhK.js → treemap-KMMF4GRG-TRgdlFA4.js} +1 -1
  48. package/dist/assets/{xychartDiagram-PRI3JC2R-BkQNzhid.js → xychartDiagram-PRI3JC2R-D1lRj5eS.js} +1 -1
  49. package/dist/index.html +340 -10
  50. package/package.json +1 -1
  51. package/dist/assets/channel-DF_AatLX.js +0 -1
  52. package/dist/assets/classDiagram-2ON5EDUG-BDb3NBYL.js +0 -1
  53. package/dist/assets/classDiagram-v2-WZHVMYZB-BDb3NBYL.js +0 -1
  54. package/dist/assets/clone-DeRRbZtN.js +0 -1
  55. package/dist/assets/index-DKfT9XYb.js +0 -627
  56. package/dist/assets/stateDiagram-v2-4FDKWEC3-BE_THtTe.js +0 -1
package/README.md CHANGED
@@ -21,9 +21,11 @@ Then open http://localhost:3000 — the page auto-refreshes when WORK.md changes
21
21
 
22
22
  ## Features
23
23
 
24
- - 🔥 **Hot Reload** — Browser updates instantly when WORK.md changes (no manual refresh)
24
+ - 🔥 **Hot Reload** — Browser updates instantly when `WORK.md`, `PROJECT.md`, or `ARCHITECTURE.md` changes
25
25
  - 📊 **Mermaid Diagrams** — Native SVG rendering with error handling
26
26
  - 🎨 **Full Markdown** — Tables, code blocks, lists, links, strikethrough
27
+ - 🧩 **Multi-Doc View** — Single page sequence: `PROJECT.md` → `ARCHITECTURE.md` → `WORK.md`
28
+ - 📋 **Copy Selected Sections** — Select root sections/logs from outline and copy markdown for LLM prompts
27
29
  - 📱 **Mobile Ready** — Responsive layout, touch-friendly navigation
28
30
  - ⚡ **Fast** — Vite's instant HMR, sub-second rebuilds
29
31
 
@@ -31,9 +33,9 @@ Then open http://localhost:3000 — the page auto-refreshes when WORK.md changes
31
33
 
32
34
  The Vite plugin (`src/vite-plugin-worklog.ts`) does three things:
33
35
 
34
- 1. **Watches** — Uses chokidar to monitor the external WORK.md file
35
- 2. **Serves** — Exposes `/_worklog` endpoint that returns the file content
36
- 3. **Pushes** — Sends HMR events to the browser when the file changes
36
+ 1. **Watches** — Uses chokidar to monitor `WORK.md` and sibling `PROJECT.md` / `ARCHITECTURE.md`
37
+ 2. **Serves** — Exposes `/_worklog`, `/_project`, `/_architecture` endpoints
38
+ 3. **Pushes** — Sends HMR events to the browser when any of those files change
37
39
 
38
40
  ```
39
41
  ┌─────────────────┐ ┌──────────────────────┐ ┌─────────────┐
package/cli.cjs CHANGED
@@ -70,6 +70,8 @@ async function commandDump() {
70
70
  // Resolve paths
71
71
  const resolvedWorklog = path.resolve(worklogPath);
72
72
  const projectDir = path.dirname(resolvedWorklog);
73
+ const resolvedProject = path.join(projectDir, 'PROJECT.md');
74
+ const resolvedArchitecture = path.join(projectDir, 'ARCHITECTURE.md');
73
75
 
74
76
  // Derive project name from path (last 2 segments)
75
77
  const pathParts = projectDir.split(path.sep).filter(Boolean);
@@ -102,8 +104,10 @@ async function commandDump() {
102
104
  // Copy dist directory
103
105
  fs.cpSync(distDir, tempDist, { recursive: true });
104
106
 
105
- // Read worklog and inject into HTML
107
+ // Read markdown artifacts and inject into HTML
106
108
  const worklogContent = fs.readFileSync(resolvedWorklog, 'utf-8');
109
+ const projectContent = fs.existsSync(resolvedProject) ? fs.readFileSync(resolvedProject, 'utf-8') : '';
110
+ const architectureContent = fs.existsSync(resolvedArchitecture) ? fs.readFileSync(resolvedArchitecture, 'utf-8') : '';
107
111
  const indexPath = path.join(tempDist, 'index.html');
108
112
  let indexHtml = fs.readFileSync(indexPath, 'utf-8');
109
113
 
@@ -112,11 +116,11 @@ async function commandDump() {
112
116
  indexHtml = indexHtml.replace(/href="\//g, 'href="./');
113
117
  indexHtml = indexHtml.replace(/src="\//g, 'src="./');
114
118
 
115
- // Inject worklog content as a script tag (the app will read this instead of fetching)
116
- // Use Base64 encoding to avoid any escaping issues with special characters,
117
- // </script> sequences, or line breaks in the markdown content
118
- const base64Content = Buffer.from(worklogContent, 'utf-8').toString('base64');
119
- const injectScript = `<script>window.__WORKLOG_CONTENT_B64__ = "${base64Content}";</script>`;
119
+ // Inject content as Base64 to avoid escaping issues with markdown payloads
120
+ const worklogBase64 = Buffer.from(worklogContent, 'utf-8').toString('base64');
121
+ const projectBase64 = Buffer.from(projectContent, 'utf-8').toString('base64');
122
+ const architectureBase64 = Buffer.from(architectureContent, 'utf-8').toString('base64');
123
+ const injectScript = `<script>window.__WORKLOG_CONTENT_B64__ = "${worklogBase64}";window.__PROJECT_CONTENT_B64__ = "${projectBase64}";window.__ARCHITECTURE_CONTENT_B64__ = "${architectureBase64}";</script>`;
120
124
  indexHtml = indexHtml.replace('</head>', `${injectScript}\n</head>`);
121
125
  fs.writeFileSync(indexPath, indexHtml);
122
126
 
@@ -179,46 +183,61 @@ async function commandDump() {
179
183
 
180
184
  function promptPassword(prompt) {
181
185
  return new Promise((resolve) => {
182
- const rl = readline.createInterface({
183
- input: process.stdin,
184
- output: process.stdout,
185
- });
186
-
187
- // Hide input (works on most terminals)
188
- process.stdout.write(prompt);
189
-
190
- // For password masking, we need to handle raw mode
191
- if (process.stdin.isTTY) {
192
- process.stdin.setRawMode(true);
193
- }
194
-
186
+ const input = process.stdin;
187
+ const output = process.stdout;
188
+
189
+ const cleanup = () => {
190
+ if (input.isTTY) {
191
+ input.setRawMode(false);
192
+ }
193
+ input.pause();
194
+ input.removeListener('data', onData);
195
+ };
196
+
197
+ const finish = () => {
198
+ cleanup();
199
+ output.write('\n');
200
+ resolve(password);
201
+ };
202
+
203
+ output.write(prompt);
204
+
195
205
  let password = '';
196
-
197
- process.stdin.on('data', (char) => {
198
- char = char.toString();
199
-
200
- switch (char) {
201
- case '\n':
202
- case '\r':
203
- case '\u0004': // Ctrl+D
204
- if (process.stdin.isTTY) {
205
- process.stdin.setRawMode(false);
206
- }
207
- process.stdout.write('\n');
208
- rl.close();
209
- resolve(password);
210
- break;
211
- case '\u0003': // Ctrl+C
212
- process.exit(1);
213
- break;
214
- case '\u007F': // Backspace
206
+
207
+ if (input.isTTY) {
208
+ input.setRawMode(true);
209
+ }
210
+ input.resume();
211
+
212
+ const onData = (chunk) => {
213
+ const char = chunk.toString('utf8');
214
+
215
+ if (char === '\u0003') {
216
+ cleanup();
217
+ output.write('\n');
218
+ process.exit(1);
219
+ }
220
+
221
+ if (char === '\r' || char === '\n' || char === '\u0004') {
222
+ finish();
223
+ return;
224
+ }
225
+
226
+ if (char === '\u007f' || char === '\b') {
227
+ if (password.length > 0) {
215
228
  password = password.slice(0, -1);
216
- break;
217
- default:
218
- password += char;
219
- break;
229
+ output.write('\b \b');
230
+ }
231
+ return;
220
232
  }
221
- });
233
+
234
+ if (char >= ' ' && char <= '~') {
235
+ password += char;
236
+ output.write('*');
237
+ }
238
+ };
239
+
240
+ input.on('data', onData);
222
241
  });
223
242
  }
224
243
 
@@ -256,6 +275,9 @@ function commandServe() {
256
275
  const PORT = parseInt(portArg || process.env.PORT || '3000', 10);
257
276
  const WORKLOG = positionalArgs[0] || './gsd-lite/WORK.md';
258
277
  const WORKLOG_PATH = path.resolve(WORKLOG);
278
+ const ARTIFACT_DIR = path.dirname(WORKLOG_PATH);
279
+ const PROJECT_PATH = path.join(ARTIFACT_DIR, 'PROJECT.md');
280
+ const ARCHITECTURE_PATH = path.join(ARTIFACT_DIR, 'ARCHITECTURE.md');
259
281
 
260
282
  // Static assets directory (bundled with this package)
261
283
  const DIST = path.join(__dirname, 'dist');
@@ -296,6 +318,34 @@ function commandServe() {
296
318
  return;
297
319
  }
298
320
 
321
+ if (pathname === '/_project') {
322
+ try {
323
+ const content = fs.readFileSync(PROJECT_PATH, 'utf-8');
324
+ res.setHeader('Content-Type', 'text/plain; charset=utf-8');
325
+ res.setHeader('Cache-Control', 'no-cache');
326
+ res.end(content);
327
+ } catch (err) {
328
+ res.statusCode = 404;
329
+ res.setHeader('Content-Type', 'text/plain');
330
+ res.end(`PROJECT.md not found: ${PROJECT_PATH}\n\nError: ${err.message}`);
331
+ }
332
+ return;
333
+ }
334
+
335
+ if (pathname === '/_architecture') {
336
+ try {
337
+ const content = fs.readFileSync(ARCHITECTURE_PATH, 'utf-8');
338
+ res.setHeader('Content-Type', 'text/plain; charset=utf-8');
339
+ res.setHeader('Cache-Control', 'no-cache');
340
+ res.end(content);
341
+ } catch (err) {
342
+ res.statusCode = 404;
343
+ res.setHeader('Content-Type', 'text/plain');
344
+ res.end(`ARCHITECTURE.md not found: ${ARCHITECTURE_PATH}\n\nError: ${err.message}`);
345
+ }
346
+ return;
347
+ }
348
+
299
349
  // Static file serving from dist/
300
350
  let filePath = pathname === '/' ? '/index.html' : pathname;
301
351
  const fullPath = path.join(DIST, filePath);
@@ -327,11 +377,17 @@ function commandServe() {
327
377
 
328
378
  function serveFile(filePath, ext, res, mimeTypes) {
329
379
  const mimeType = mimeTypes[ext] || 'application/octet-stream';
330
-
380
+
331
381
  try {
332
382
  const content = fs.readFileSync(filePath);
333
383
  res.setHeader('Content-Type', mimeType);
334
- res.setHeader('Cache-Control', 'public, max-age=3600');
384
+
385
+ // Avoid stale UI when switching between CLI serve and Vite dev on same origin.
386
+ // Keep all assets non-cacheable in local serve mode for predictable reload behavior.
387
+ res.setHeader('Cache-Control', 'no-cache, no-store, must-revalidate');
388
+ res.setHeader('Pragma', 'no-cache');
389
+ res.setHeader('Expires', '0');
390
+
335
391
  res.end(content);
336
392
  } catch (err) {
337
393
  res.statusCode = 500;
@@ -373,8 +429,8 @@ function commandServe() {
373
429
  process.exit(1);
374
430
  }
375
431
 
376
- // Watch the worklog file
377
- const watcher = chokidar.watch(WORKLOG_PATH, {
432
+ // Watch markdown artifacts
433
+ const watcher = chokidar.watch([WORKLOG_PATH, PROJECT_PATH, ARCHITECTURE_PATH], {
378
434
  persistent: true,
379
435
  ignoreInitial: true,
380
436
  awaitWriteFinish: {
@@ -388,6 +444,11 @@ function commandServe() {
388
444
  broadcastReload();
389
445
  });
390
446
 
447
+ watcher.on('add', (filepath) => {
448
+ console.log(`[gsd-reader] ${path.basename(filepath)} created`);
449
+ broadcastReload();
450
+ });
451
+
391
452
  watcher.on('error', (error) => {
392
453
  console.error('[gsd-reader] Watcher error:', error.message);
393
454
  });
@@ -404,7 +465,9 @@ function commandServe() {
404
465
  console.log('│ Press Ctrl+C to stop │');
405
466
  console.log('└─────────────────────────────────────────────────────┘');
406
467
  console.log('');
407
- console.log(`[gsd-reader] Full path: ${WORKLOG_PATH}`);
468
+ console.log(`[gsd-reader] WORK path: ${WORKLOG_PATH}`);
469
+ console.log(`[gsd-reader] PROJECT path: ${PROJECT_PATH}`);
470
+ console.log(`[gsd-reader] ARCH path: ${ARCHITECTURE_PATH}`);
408
471
  });
409
472
 
410
473
  // Graceful shutdown
@@ -1 +1 @@
1
- import{aU as L,bq as ln,aE as A,aS as P,aD as z,br as gn,bs as dn,bt as hn,bu as W,bv as pn,bl as An,bw as m,aV as N,a_ as U,b1 as T,bx as _n,aY as on,by as wn,bo as On,aF as V,bm as vn,bz as I}from"./mermaid.core-BjP1GMmj.js";var Pn="[object Symbol]";function x(n){return typeof n=="symbol"||L(n)&&ln(n)==Pn}function yn(n,r){for(var e=-1,i=n==null?0:n.length,f=Array(i);++e<i;)f[e]=r(n[e],e,n);return f}var B=P?P.prototype:void 0,K=B?B.toString:void 0;function k(n){if(typeof n=="string")return n;if(A(n))return yn(n,k)+"";if(x(n))return K?K.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function En(){}function bn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i&&r(n[e],e,n)!==!1;);return n}function cn(n,r,e,i){for(var f=n.length,t=e+-1;++t<f;)if(r(n[t],t,n))return t;return-1}function Tn(n){return n!==n}function Rn(n,r,e){for(var i=e-1,f=n.length;++i<f;)if(n[i]===r)return i;return-1}function In(n,r,e){return r===r?Rn(n,r,e):cn(n,Tn,e)}function Sn(n,r){var e=n==null?0:n.length;return!!e&&In(n,r,0)>-1}function M(n){return z(n)?gn(n):dn(n)}var Ln=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xn=/^\w*$/;function $(n,r){if(A(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||x(n)?!0:xn.test(n)||!Ln.test(n)||r!=null&&n in Object(r)}var Mn=500;function $n(n){var r=hn(n,function(i){return e.size===Mn&&e.clear(),i}),e=r.cache;return r}var Cn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Dn=/\\(\\)?/g,Fn=$n(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(Cn,function(e,i,f,t){r.push(f?t.replace(Dn,"$1"):i||e)}),r});function Gn(n){return n==null?"":k(n)}function j(n,r){return A(n)?n:$(n,r)?[n]:Fn(Gn(n))}function R(n){if(typeof n=="string"||x(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function nn(n,r){r=j(r,n);for(var e=0,i=r.length;n!=null&&e<i;)n=n[R(r[e++])];return e&&e==i?n:void 0}function mn(n,r,e){var i=n==null?void 0:nn(n,r);return i===void 0?e:i}function rn(n,r){for(var e=-1,i=r.length,f=n.length;++e<i;)n[f+e]=r[e];return n}var H=P?P.isConcatSpreadable:void 0;function Nn(n){return A(n)||W(n)||!!(H&&n&&n[H])}function Hr(n,r,e,i,f){var t=-1,s=n.length;for(e||(e=Nn),f||(f=[]);++t<s;){var u=n[t];e(u)?rn(f,u):i||(f[f.length]=u)}return f}function Un(n,r,e,i){var f=-1,t=n==null?0:n.length;for(i&&t&&(e=n[++f]);++f<t;)e=r(e,n[f],f,n);return e}function en(n,r){for(var e=-1,i=n==null?0:n.length,f=0,t=[];++e<i;){var s=n[e];r(s,e,n)&&(t[f++]=s)}return t}function Bn(){return[]}var Kn=Object.prototype,Hn=Kn.propertyIsEnumerable,q=Object.getOwnPropertySymbols,qn=q?function(n){return n==null?[]:(n=Object(n),en(q(n),function(r){return Hn.call(n,r)}))}:Bn;function Yn(n,r,e){var i=r(n);return A(n)?i:rn(i,e(n))}function Y(n){return Yn(n,M,qn)}var Zn="__lodash_hash_undefined__";function Xn(n){return this.__data__.set(n,Zn),this}function Jn(n){return this.__data__.has(n)}function y(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new pn;++r<e;)this.add(n[r])}y.prototype.add=y.prototype.push=Xn;y.prototype.has=Jn;function Qn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i;)if(r(n[e],e,n))return!0;return!1}function tn(n,r){return n.has(r)}var zn=1,Wn=2;function fn(n,r,e,i,f,t){var s=e&zn,u=n.length,a=r.length;if(u!=a&&!(s&&a>u))return!1;var h=t.get(n),g=t.get(r);if(h&&g)return h==r&&g==n;var l=-1,d=!0,o=e&Wn?new y:void 0;for(t.set(n,r),t.set(r,n);++l<u;){var p=n[l],_=r[l];if(i)var w=s?i(_,p,l,r,n,t):i(p,_,l,n,r,t);if(w!==void 0){if(w)continue;d=!1;break}if(o){if(!Qn(r,function(O,v){if(!tn(o,v)&&(p===O||f(p,O,e,i,t)))return o.push(v)})){d=!1;break}}else if(!(p===_||f(p,_,e,i,t))){d=!1;break}}return t.delete(n),t.delete(r),d}function Vn(n){var r=-1,e=Array(n.size);return n.forEach(function(i,f){e[++r]=[f,i]}),e}function C(n){var r=-1,e=Array(n.size);return n.forEach(function(i){e[++r]=i}),e}var kn=1,jn=2,nr="[object Boolean]",rr="[object Date]",er="[object Error]",ir="[object Map]",tr="[object Number]",fr="[object RegExp]",sr="[object Set]",ur="[object String]",ar="[object Symbol]",lr="[object ArrayBuffer]",gr="[object DataView]",Z=P?P.prototype:void 0,S=Z?Z.valueOf:void 0;function dr(n,r,e,i,f,t,s){switch(e){case gr:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case lr:return!(n.byteLength!=r.byteLength||!t(new m(n),new m(r)));case nr:case rr:case tr:return An(+n,+r);case er:return n.name==r.name&&n.message==r.message;case fr:case ur:return n==r+"";case ir:var u=Vn;case sr:var a=i&kn;if(u||(u=C),n.size!=r.size&&!a)return!1;var h=s.get(n);if(h)return h==r;i|=jn,s.set(n,r);var g=fn(u(n),u(r),i,f,t,s);return s.delete(n),g;case ar:if(S)return S.call(n)==S.call(r)}return!1}var hr=1,pr=Object.prototype,Ar=pr.hasOwnProperty;function _r(n,r,e,i,f,t){var s=e&hr,u=Y(n),a=u.length,h=Y(r),g=h.length;if(a!=g&&!s)return!1;for(var l=a;l--;){var d=u[l];if(!(s?d in r:Ar.call(r,d)))return!1}var o=t.get(n),p=t.get(r);if(o&&p)return o==r&&p==n;var _=!0;t.set(n,r),t.set(r,n);for(var w=s;++l<a;){d=u[l];var O=n[d],v=r[d];if(i)var G=s?i(v,O,d,r,n,t):i(O,v,d,n,r,t);if(!(G===void 0?O===v||f(O,v,e,i,t):G)){_=!1;break}w||(w=d=="constructor")}if(_&&!w){var E=n.constructor,b=r.constructor;E!=b&&"constructor"in n&&"constructor"in r&&!(typeof E=="function"&&E instanceof E&&typeof b=="function"&&b instanceof b)&&(_=!1)}return t.delete(n),t.delete(r),_}var or=1,X="[object Arguments]",J="[object Array]",c="[object Object]",wr=Object.prototype,Q=wr.hasOwnProperty;function Or(n,r,e,i,f,t){var s=A(n),u=A(r),a=s?J:N(n),h=u?J:N(r);a=a==X?c:a,h=h==X?c:h;var g=a==c,l=h==c,d=a==h;if(d&&U(n)){if(!U(r))return!1;s=!0,g=!1}if(d&&!g)return t||(t=new T),s||_n(n)?fn(n,r,e,i,f,t):dr(n,r,a,e,i,f,t);if(!(e&or)){var o=g&&Q.call(n,"__wrapped__"),p=l&&Q.call(r,"__wrapped__");if(o||p){var _=o?n.value():n,w=p?r.value():r;return t||(t=new T),f(_,w,e,i,t)}}return d?(t||(t=new T),_r(n,r,e,i,f,t)):!1}function D(n,r,e,i,f){return n===r?!0:n==null||r==null||!L(n)&&!L(r)?n!==n&&r!==r:Or(n,r,e,i,D,f)}var vr=1,Pr=2;function yr(n,r,e,i){var f=e.length,t=f;if(n==null)return!t;for(n=Object(n);f--;){var s=e[f];if(s[2]?s[1]!==n[s[0]]:!(s[0]in n))return!1}for(;++f<t;){s=e[f];var u=s[0],a=n[u],h=s[1];if(s[2]){if(a===void 0&&!(u in n))return!1}else{var g=new T,l;if(!(l===void 0?D(h,a,vr|Pr,i,g):l))return!1}}return!0}function sn(n){return n===n&&!on(n)}function Er(n){for(var r=M(n),e=r.length;e--;){var i=r[e],f=n[i];r[e]=[i,f,sn(f)]}return r}function un(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function br(n){var r=Er(n);return r.length==1&&r[0][2]?un(r[0][0],r[0][1]):function(e){return e===n||yr(e,n,r)}}function cr(n,r){return n!=null&&r in Object(n)}function Tr(n,r,e){r=j(r,n);for(var i=-1,f=r.length,t=!1;++i<f;){var s=R(r[i]);if(!(t=n!=null&&e(n,s)))break;n=n[s]}return t||++i!=f?t:(f=n==null?0:n.length,!!f&&wn(f)&&On(s,f)&&(A(n)||W(n)))}function Rr(n,r){return n!=null&&Tr(n,r,cr)}var Ir=1,Sr=2;function Lr(n,r){return $(n)&&sn(r)?un(R(n),r):function(e){var i=mn(e,n);return i===void 0&&i===r?Rr(e,n):D(r,i,Ir|Sr)}}function xr(n){return function(r){return r==null?void 0:r[n]}}function Mr(n){return function(r){return nn(r,n)}}function $r(n){return $(n)?xr(R(n)):Mr(n)}function an(n){return typeof n=="function"?n:n==null?V:typeof n=="object"?A(n)?Lr(n[0],n[1]):br(n):$r(n)}function Cr(n,r){return n&&vn(n,r,M)}function Dr(n,r){return function(e,i){if(e==null)return e;if(!z(e))return n(e,i);for(var f=e.length,t=-1,s=Object(e);++t<f&&i(s[t],t,s)!==!1;);return e}}var F=Dr(Cr);function Fr(n){return typeof n=="function"?n:V}function qr(n,r){var e=A(n)?bn:F;return e(n,Fr(r))}function Gr(n,r){var e=[];return F(n,function(i,f,t){r(i,f,t)&&e.push(i)}),e}function Yr(n,r){var e=A(n)?en:Gr;return e(n,an(r))}function mr(n,r,e,i,f){return f(n,function(t,s,u){e=i?(i=!1,t):r(e,t,s,u)}),e}function Zr(n,r,e){var i=A(n)?Un:mr,f=arguments.length<3;return i(n,an(r),e,f,F)}var Nr=1/0,Ur=I&&1/C(new I([,-0]))[1]==Nr?function(n){return new I(n)}:En,Br=200;function Xr(n,r,e){var i=-1,f=Sn,t=n.length,s=!0,u=[],a=u;if(t>=Br){var h=r?null:Ur(n);if(h)return C(h);s=!1,f=tn,a=new y}else a=r?[]:u;n:for(;++i<t;){var g=n[i],l=r?r(g):g;if(g=g!==0?g:0,s&&l===l){for(var d=a.length;d--;)if(a[d]===l)continue n;r&&a.push(l),u.push(g)}else f(a,l,e)||(a!==u&&a.push(l),u.push(g))}return u}export{F as a,Hr as b,an as c,yn as d,rn as e,Yn as f,qn as g,bn as h,x as i,Y as j,M as k,Xr as l,Yr as m,qr as n,cn as o,Fr as p,Cr as q,Zr as r,Bn as s,Tr as t,j as u,R as v,nn as w,Rr as x,Gn as y};
1
+ import{aU as L,bq as ln,aE as A,aS as P,aD as z,br as gn,bs as dn,bt as hn,bu as W,bv as pn,bl as An,bw as m,aV as N,a_ as U,b1 as T,bx as _n,aY as on,by as wn,bo as On,aF as V,bm as vn,bz as I}from"./mermaid.core-BM6CC-A6.js";var Pn="[object Symbol]";function x(n){return typeof n=="symbol"||L(n)&&ln(n)==Pn}function yn(n,r){for(var e=-1,i=n==null?0:n.length,f=Array(i);++e<i;)f[e]=r(n[e],e,n);return f}var B=P?P.prototype:void 0,K=B?B.toString:void 0;function k(n){if(typeof n=="string")return n;if(A(n))return yn(n,k)+"";if(x(n))return K?K.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function En(){}function bn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i&&r(n[e],e,n)!==!1;);return n}function cn(n,r,e,i){for(var f=n.length,t=e+-1;++t<f;)if(r(n[t],t,n))return t;return-1}function Tn(n){return n!==n}function Rn(n,r,e){for(var i=e-1,f=n.length;++i<f;)if(n[i]===r)return i;return-1}function In(n,r,e){return r===r?Rn(n,r,e):cn(n,Tn,e)}function Sn(n,r){var e=n==null?0:n.length;return!!e&&In(n,r,0)>-1}function M(n){return z(n)?gn(n):dn(n)}var Ln=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xn=/^\w*$/;function $(n,r){if(A(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||x(n)?!0:xn.test(n)||!Ln.test(n)||r!=null&&n in Object(r)}var Mn=500;function $n(n){var r=hn(n,function(i){return e.size===Mn&&e.clear(),i}),e=r.cache;return r}var Cn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Dn=/\\(\\)?/g,Fn=$n(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(Cn,function(e,i,f,t){r.push(f?t.replace(Dn,"$1"):i||e)}),r});function Gn(n){return n==null?"":k(n)}function j(n,r){return A(n)?n:$(n,r)?[n]:Fn(Gn(n))}function R(n){if(typeof n=="string"||x(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function nn(n,r){r=j(r,n);for(var e=0,i=r.length;n!=null&&e<i;)n=n[R(r[e++])];return e&&e==i?n:void 0}function mn(n,r,e){var i=n==null?void 0:nn(n,r);return i===void 0?e:i}function rn(n,r){for(var e=-1,i=r.length,f=n.length;++e<i;)n[f+e]=r[e];return n}var H=P?P.isConcatSpreadable:void 0;function Nn(n){return A(n)||W(n)||!!(H&&n&&n[H])}function Hr(n,r,e,i,f){var t=-1,s=n.length;for(e||(e=Nn),f||(f=[]);++t<s;){var u=n[t];e(u)?rn(f,u):i||(f[f.length]=u)}return f}function Un(n,r,e,i){var f=-1,t=n==null?0:n.length;for(i&&t&&(e=n[++f]);++f<t;)e=r(e,n[f],f,n);return e}function en(n,r){for(var e=-1,i=n==null?0:n.length,f=0,t=[];++e<i;){var s=n[e];r(s,e,n)&&(t[f++]=s)}return t}function Bn(){return[]}var Kn=Object.prototype,Hn=Kn.propertyIsEnumerable,q=Object.getOwnPropertySymbols,qn=q?function(n){return n==null?[]:(n=Object(n),en(q(n),function(r){return Hn.call(n,r)}))}:Bn;function Yn(n,r,e){var i=r(n);return A(n)?i:rn(i,e(n))}function Y(n){return Yn(n,M,qn)}var Zn="__lodash_hash_undefined__";function Xn(n){return this.__data__.set(n,Zn),this}function Jn(n){return this.__data__.has(n)}function y(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new pn;++r<e;)this.add(n[r])}y.prototype.add=y.prototype.push=Xn;y.prototype.has=Jn;function Qn(n,r){for(var e=-1,i=n==null?0:n.length;++e<i;)if(r(n[e],e,n))return!0;return!1}function tn(n,r){return n.has(r)}var zn=1,Wn=2;function fn(n,r,e,i,f,t){var s=e&zn,u=n.length,a=r.length;if(u!=a&&!(s&&a>u))return!1;var h=t.get(n),g=t.get(r);if(h&&g)return h==r&&g==n;var l=-1,d=!0,o=e&Wn?new y:void 0;for(t.set(n,r),t.set(r,n);++l<u;){var p=n[l],_=r[l];if(i)var w=s?i(_,p,l,r,n,t):i(p,_,l,n,r,t);if(w!==void 0){if(w)continue;d=!1;break}if(o){if(!Qn(r,function(O,v){if(!tn(o,v)&&(p===O||f(p,O,e,i,t)))return o.push(v)})){d=!1;break}}else if(!(p===_||f(p,_,e,i,t))){d=!1;break}}return t.delete(n),t.delete(r),d}function Vn(n){var r=-1,e=Array(n.size);return n.forEach(function(i,f){e[++r]=[f,i]}),e}function C(n){var r=-1,e=Array(n.size);return n.forEach(function(i){e[++r]=i}),e}var kn=1,jn=2,nr="[object Boolean]",rr="[object Date]",er="[object Error]",ir="[object Map]",tr="[object Number]",fr="[object RegExp]",sr="[object Set]",ur="[object String]",ar="[object Symbol]",lr="[object ArrayBuffer]",gr="[object DataView]",Z=P?P.prototype:void 0,S=Z?Z.valueOf:void 0;function dr(n,r,e,i,f,t,s){switch(e){case gr:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case lr:return!(n.byteLength!=r.byteLength||!t(new m(n),new m(r)));case nr:case rr:case tr:return An(+n,+r);case er:return n.name==r.name&&n.message==r.message;case fr:case ur:return n==r+"";case ir:var u=Vn;case sr:var a=i&kn;if(u||(u=C),n.size!=r.size&&!a)return!1;var h=s.get(n);if(h)return h==r;i|=jn,s.set(n,r);var g=fn(u(n),u(r),i,f,t,s);return s.delete(n),g;case ar:if(S)return S.call(n)==S.call(r)}return!1}var hr=1,pr=Object.prototype,Ar=pr.hasOwnProperty;function _r(n,r,e,i,f,t){var s=e&hr,u=Y(n),a=u.length,h=Y(r),g=h.length;if(a!=g&&!s)return!1;for(var l=a;l--;){var d=u[l];if(!(s?d in r:Ar.call(r,d)))return!1}var o=t.get(n),p=t.get(r);if(o&&p)return o==r&&p==n;var _=!0;t.set(n,r),t.set(r,n);for(var w=s;++l<a;){d=u[l];var O=n[d],v=r[d];if(i)var G=s?i(v,O,d,r,n,t):i(O,v,d,n,r,t);if(!(G===void 0?O===v||f(O,v,e,i,t):G)){_=!1;break}w||(w=d=="constructor")}if(_&&!w){var E=n.constructor,b=r.constructor;E!=b&&"constructor"in n&&"constructor"in r&&!(typeof E=="function"&&E instanceof E&&typeof b=="function"&&b instanceof b)&&(_=!1)}return t.delete(n),t.delete(r),_}var or=1,X="[object Arguments]",J="[object Array]",c="[object Object]",wr=Object.prototype,Q=wr.hasOwnProperty;function Or(n,r,e,i,f,t){var s=A(n),u=A(r),a=s?J:N(n),h=u?J:N(r);a=a==X?c:a,h=h==X?c:h;var g=a==c,l=h==c,d=a==h;if(d&&U(n)){if(!U(r))return!1;s=!0,g=!1}if(d&&!g)return t||(t=new T),s||_n(n)?fn(n,r,e,i,f,t):dr(n,r,a,e,i,f,t);if(!(e&or)){var o=g&&Q.call(n,"__wrapped__"),p=l&&Q.call(r,"__wrapped__");if(o||p){var _=o?n.value():n,w=p?r.value():r;return t||(t=new T),f(_,w,e,i,t)}}return d?(t||(t=new T),_r(n,r,e,i,f,t)):!1}function D(n,r,e,i,f){return n===r?!0:n==null||r==null||!L(n)&&!L(r)?n!==n&&r!==r:Or(n,r,e,i,D,f)}var vr=1,Pr=2;function yr(n,r,e,i){var f=e.length,t=f;if(n==null)return!t;for(n=Object(n);f--;){var s=e[f];if(s[2]?s[1]!==n[s[0]]:!(s[0]in n))return!1}for(;++f<t;){s=e[f];var u=s[0],a=n[u],h=s[1];if(s[2]){if(a===void 0&&!(u in n))return!1}else{var g=new T,l;if(!(l===void 0?D(h,a,vr|Pr,i,g):l))return!1}}return!0}function sn(n){return n===n&&!on(n)}function Er(n){for(var r=M(n),e=r.length;e--;){var i=r[e],f=n[i];r[e]=[i,f,sn(f)]}return r}function un(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function br(n){var r=Er(n);return r.length==1&&r[0][2]?un(r[0][0],r[0][1]):function(e){return e===n||yr(e,n,r)}}function cr(n,r){return n!=null&&r in Object(n)}function Tr(n,r,e){r=j(r,n);for(var i=-1,f=r.length,t=!1;++i<f;){var s=R(r[i]);if(!(t=n!=null&&e(n,s)))break;n=n[s]}return t||++i!=f?t:(f=n==null?0:n.length,!!f&&wn(f)&&On(s,f)&&(A(n)||W(n)))}function Rr(n,r){return n!=null&&Tr(n,r,cr)}var Ir=1,Sr=2;function Lr(n,r){return $(n)&&sn(r)?un(R(n),r):function(e){var i=mn(e,n);return i===void 0&&i===r?Rr(e,n):D(r,i,Ir|Sr)}}function xr(n){return function(r){return r==null?void 0:r[n]}}function Mr(n){return function(r){return nn(r,n)}}function $r(n){return $(n)?xr(R(n)):Mr(n)}function an(n){return typeof n=="function"?n:n==null?V:typeof n=="object"?A(n)?Lr(n[0],n[1]):br(n):$r(n)}function Cr(n,r){return n&&vn(n,r,M)}function Dr(n,r){return function(e,i){if(e==null)return e;if(!z(e))return n(e,i);for(var f=e.length,t=-1,s=Object(e);++t<f&&i(s[t],t,s)!==!1;);return e}}var F=Dr(Cr);function Fr(n){return typeof n=="function"?n:V}function qr(n,r){var e=A(n)?bn:F;return e(n,Fr(r))}function Gr(n,r){var e=[];return F(n,function(i,f,t){r(i,f,t)&&e.push(i)}),e}function Yr(n,r){var e=A(n)?en:Gr;return e(n,an(r))}function mr(n,r,e,i,f){return f(n,function(t,s,u){e=i?(i=!1,t):r(e,t,s,u)}),e}function Zr(n,r,e){var i=A(n)?Un:mr,f=arguments.length<3;return i(n,an(r),e,f,F)}var Nr=1/0,Ur=I&&1/C(new I([,-0]))[1]==Nr?function(n){return new I(n)}:En,Br=200;function Xr(n,r,e){var i=-1,f=Sn,t=n.length,s=!0,u=[],a=u;if(t>=Br){var h=r?null:Ur(n);if(h)return C(h);s=!1,f=tn,a=new y}else a=r?[]:u;n:for(;++i<t;){var g=n[i],l=r?r(g):g;if(g=g!==0?g:0,s&&l===l){for(var d=a.length;d--;)if(a[d]===l)continue n;r&&a.push(l),u.push(g)}else f(a,l,e)||(a!==u&&a.push(l),u.push(g))}return u}export{F as a,Hr as b,an as c,yn as d,rn as e,Yn as f,qn as g,bn as h,x as i,Y as j,M as k,Xr as l,Yr as m,qr as n,cn as o,Fr as p,Cr as q,Zr as r,Bn as s,Tr as t,j as u,R as v,nn as w,Rr as x,Gn as y};
@@ -1 +1 @@
1
- import{a0 as ln,a1 as an,a2 as H,a3 as q,a4 as B,a5 as un,a6 as y,a7 as tn,a8 as L,a9 as _,aa as rn,ab as o,ac as on,ad as sn,ae as fn}from"./mermaid.core-BjP1GMmj.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,I,D,v,A,C,a){var O=I-l,i=D-h,n=C-v,d=a-A,u=d*O-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*O,h+u*i]}function W(l,h,I,D,v,A,C){var a=l-I,O=h-D,i=(C?A:-A)/L(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,F=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,S=(g<0?-1:1)*L(on(0,T*T*R-P*P)),j=(P*g-m*S)/R,z=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=j-F,e=z-t,r=w-F,G=p-t;return x*x+e*e>r*r+G*G&&(j=w,z=p),{cx:j,cy:z,x01:-n,y01:-d,x11:j*(v/T-1),y11:z*(v/T-1)}}function hn(){var l=cn,h=yn,I=B(0),D=null,v=gn,A=dn,C=mn,a=null,O=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,F=rn(c-f),t=c>f;if(a||(a=n=O()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(F>tn-y)a.moveTo(s*H(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*H(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=F,S=F,j=C.apply(this,arguments)/2,z=j>y&&(D?+D.apply(this,arguments):L(u*u+s*s)),w=_(rn(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if(z>y){var G=sn(z/u*q(j)),M=sn(z/s*q(j));(P-=G*2)>y?(G*=t?1:-1,R+=G,T-=G):(P=0,R=T=(f+c)/2),(S-=M*2)>y?(M*=t?1:-1,m+=M,g-=M):(S=0,m=g=(f+c)/2)}var J=s*H(m),K=s*q(m),N=u*H(T),Q=u*q(T);if(w>y){var U=s*H(g),V=s*q(g),X=u*H(R),Y=u*q(R),E;if(F<an)if(E=pn(J,K,X,Y,U,V,N,Q)){var Z=J-E[0],$=K-E[1],b=U-E[0],k=V-E[1],nn=1/q(fn((Z*b+$*k)/(L(Z*Z+$*$)*L(b*b+k*k)))/2),en=L(E[0]*E[0]+E[1]*E[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}S>y?x>y?(e=W(X,Y,J,K,s,x,t),r=W(U,V,N,Q,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(J,K),a.arc(0,0,s,m,g,!t)):a.moveTo(J,K),!(u>y)||!(P>y)?a.lineTo(N,Q):p>y?(e=W(N,Q,U,V,u,-p,t),r=W(J,K,X,Y,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-an/2;return[H(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:B(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:B(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:B(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:B(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:B(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:B(+n),i):A},i.padAngle=function(n){return arguments.length?(C=typeof n=="function"?n:B(+n),i):C},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
1
+ import{a0 as ln,a1 as an,a2 as H,a3 as q,a4 as B,a5 as un,a6 as y,a7 as tn,a8 as L,a9 as _,aa as rn,ab as o,ac as on,ad as sn,ae as fn}from"./mermaid.core-BM6CC-A6.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,I,D,v,A,C,a){var O=I-l,i=D-h,n=C-v,d=a-A,u=d*O-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*O,h+u*i]}function W(l,h,I,D,v,A,C){var a=l-I,O=h-D,i=(C?A:-A)/L(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,F=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,S=(g<0?-1:1)*L(on(0,T*T*R-P*P)),j=(P*g-m*S)/R,z=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=j-F,e=z-t,r=w-F,G=p-t;return x*x+e*e>r*r+G*G&&(j=w,z=p),{cx:j,cy:z,x01:-n,y01:-d,x11:j*(v/T-1),y11:z*(v/T-1)}}function hn(){var l=cn,h=yn,I=B(0),D=null,v=gn,A=dn,C=mn,a=null,O=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-un,c=A.apply(this,arguments)-un,F=rn(c-f),t=c>f;if(a||(a=n=O()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(F>tn-y)a.moveTo(s*H(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*H(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=F,S=F,j=C.apply(this,arguments)/2,z=j>y&&(D?+D.apply(this,arguments):L(u*u+s*s)),w=_(rn(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if(z>y){var G=sn(z/u*q(j)),M=sn(z/s*q(j));(P-=G*2)>y?(G*=t?1:-1,R+=G,T-=G):(P=0,R=T=(f+c)/2),(S-=M*2)>y?(M*=t?1:-1,m+=M,g-=M):(S=0,m=g=(f+c)/2)}var J=s*H(m),K=s*q(m),N=u*H(T),Q=u*q(T);if(w>y){var U=s*H(g),V=s*q(g),X=u*H(R),Y=u*q(R),E;if(F<an)if(E=pn(J,K,X,Y,U,V,N,Q)){var Z=J-E[0],$=K-E[1],b=U-E[0],k=V-E[1],nn=1/q(fn((Z*b+$*k)/(L(Z*Z+$*$)*L(b*b+k*k)))/2),en=L(E[0]*E[0]+E[1]*E[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}S>y?x>y?(e=W(X,Y,J,K,s,x,t),r=W(U,V,N,Q,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(J,K),a.arc(0,0,s,m,g,!t)):a.moveTo(J,K),!(u>y)||!(P>y)?a.lineTo(N,Q):p>y?(e=W(N,Q,U,V,u,-p,t),r=W(J,K,X,Y,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-an/2;return[H(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:B(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:B(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:B(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:B(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:B(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:B(+n),i):A},i.padAngle=function(n){return arguments.length?(C=typeof n=="function"?n:B(+n),i):C},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};