@luutuankiet/gsd-reader 0.2.10 → 0.2.12

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 +59 -11
  3. package/dist/assets/{_baseUniq-CAxsECAU.js → _baseUniq-C9oW8mR3.js} +1 -1
  4. package/dist/assets/{arc--hCWNMtj.js → arc-B37DU0aP.js} +1 -1
  5. package/dist/assets/{architectureDiagram-VXUJARFQ-Cue7VPN4.js → architectureDiagram-VXUJARFQ-DTSVYevP.js} +1 -1
  6. package/dist/assets/{blockDiagram-VD42YOAC-D8tdc-Oh.js → blockDiagram-VD42YOAC-BOSMSoLX.js} +1 -1
  7. package/dist/assets/{c4Diagram-YG6GDRKO-BVfpEVXF.js → c4Diagram-YG6GDRKO-glLQB3Bx.js} +1 -1
  8. package/dist/assets/channel-TxvyPttL.js +1 -0
  9. package/dist/assets/{chunk-4BX2VUAB-sryqshFW.js → chunk-4BX2VUAB-BIM1hJ4q.js} +1 -1
  10. package/dist/assets/{chunk-55IACEB6-CdVKFtJS.js → chunk-55IACEB6-RRYgRmVt.js} +1 -1
  11. package/dist/assets/{chunk-B4BG7PRW-BzqhCfm_.js → chunk-B4BG7PRW-DUIrC1wc.js} +1 -1
  12. package/dist/assets/{chunk-DI55MBZ5-CMeNQ4zx.js → chunk-DI55MBZ5-SE-WNnkR.js} +1 -1
  13. package/dist/assets/{chunk-FMBD7UC4-DhpHQnC2.js → chunk-FMBD7UC4-CPkrNRVE.js} +1 -1
  14. package/dist/assets/{chunk-QN33PNHL-Bp9aQMig.js → chunk-QN33PNHL-CG2AutYO.js} +1 -1
  15. package/dist/assets/{chunk-QZHKN3VN-Cv8H3m60.js → chunk-QZHKN3VN-CCs_0hnG.js} +1 -1
  16. package/dist/assets/{chunk-TZMSLE5B-CfMQUbCb.js → chunk-TZMSLE5B-Erdls7P0.js} +1 -1
  17. package/dist/assets/classDiagram-2ON5EDUG-P_jBP67F.js +1 -0
  18. package/dist/assets/classDiagram-v2-WZHVMYZB-P_jBP67F.js +1 -0
  19. package/dist/assets/clone-CAbiaFkm.js +1 -0
  20. package/dist/assets/{cose-bilkent-S5V4N54A-4Pz2hynZ.js → cose-bilkent-S5V4N54A-bS3wqY7Q.js} +1 -1
  21. package/dist/assets/{dagre-6UL2VRFP-CuaQ2UbK.js → dagre-6UL2VRFP-BJqxPuP3.js} +1 -1
  22. package/dist/assets/{diagram-PSM6KHXK-zvrXgnlI.js → diagram-PSM6KHXK-B7VhMoCy.js} +1 -1
  23. package/dist/assets/{diagram-QEK2KX5R-CaV-fPrg.js → diagram-QEK2KX5R-CMVmSAmJ.js} +1 -1
  24. package/dist/assets/{diagram-S2PKOQOG-Df-mzRR0.js → diagram-S2PKOQOG-D7Agf84z.js} +1 -1
  25. package/dist/assets/{erDiagram-Q2GNP2WA-BHN4N5IV.js → erDiagram-Q2GNP2WA-CUdnuHdK.js} +1 -1
  26. package/dist/assets/{flowDiagram-NV44I4VS-mEd3cOXH.js → flowDiagram-NV44I4VS-b22HI4uM.js} +1 -1
  27. package/dist/assets/{ganttDiagram-JELNMOA3-CwmhCB9s.js → ganttDiagram-JELNMOA3-D-rZkQqp.js} +1 -1
  28. package/dist/assets/{gitGraphDiagram-NY62KEGX-DXhPyefk.js → gitGraphDiagram-NY62KEGX-DEzN_c8z.js} +1 -1
  29. package/dist/assets/{graph-nhXmozHk.js → graph-Yqic_Un4.js} +1 -1
  30. package/dist/assets/index-CnpN22Sq.js +693 -0
  31. package/dist/assets/{infoDiagram-WHAUD3N6-DUcujpWE.js → infoDiagram-WHAUD3N6-XVXf48XB.js} +1 -1
  32. package/dist/assets/{journeyDiagram-XKPGCS4Q-BR4LZFi2.js → journeyDiagram-XKPGCS4Q-DO6OkfHP.js} +1 -1
  33. package/dist/assets/{kanban-definition-3W4ZIXB7-EjlkWCMV.js → kanban-definition-3W4ZIXB7-444Mizdi.js} +1 -1
  34. package/dist/assets/{layout-B3mrchfj.js → layout-DOt6UinM.js} +1 -1
  35. package/dist/assets/{linear-Ct-gwwhf.js → linear-BmZ4vjPP.js} +1 -1
  36. package/dist/assets/{mermaid.core-BjP1GMmj.js → mermaid.core-Dfaj_znm.js} +4 -4
  37. package/dist/assets/{min-Duhe34sA.js → min-B-MFLDJ5.js} +1 -1
  38. package/dist/assets/{mindmap-definition-VGOIOE7T-D1rcLjzw.js → mindmap-definition-VGOIOE7T-CXmXrRtH.js} +1 -1
  39. package/dist/assets/{pieDiagram-ADFJNKIX-D_f_57E8.js → pieDiagram-ADFJNKIX-C8wXbkYl.js} +1 -1
  40. package/dist/assets/{quadrantDiagram-AYHSOK5B-BoVWO1DJ.js → quadrantDiagram-AYHSOK5B-Dz2ZIK2s.js} +1 -1
  41. package/dist/assets/{requirementDiagram-UZGBJVZJ-BpD1MSJ4.js → requirementDiagram-UZGBJVZJ-3SGWQu1s.js} +1 -1
  42. package/dist/assets/{sankeyDiagram-TZEHDZUN-B4WQ8rbG.js → sankeyDiagram-TZEHDZUN-BvLgk5Nc.js} +1 -1
  43. package/dist/assets/{sequenceDiagram-WL72ISMW-Ds70GW_6.js → sequenceDiagram-WL72ISMW-BAPpiPJT.js} +1 -1
  44. package/dist/assets/{stateDiagram-FKZM4ZOC-BtwZjuZ2.js → stateDiagram-FKZM4ZOC-BDfvxKFu.js} +1 -1
  45. package/dist/assets/stateDiagram-v2-4FDKWEC3-BFLNsHl0.js +1 -0
  46. package/dist/assets/{timeline-definition-IT6M3QCI-BzD-PpOn.js → timeline-definition-IT6M3QCI-BMTCcycB.js} +1 -1
  47. package/dist/assets/{treemap-KMMF4GRG-Bc1dJLhK.js → treemap-KMMF4GRG-DMK1wUmh.js} +1 -1
  48. package/dist/assets/{xychartDiagram-PRI3JC2R-BkQNzhid.js → xychartDiagram-PRI3JC2R-Dq1YcETQ.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
 
@@ -271,6 +275,9 @@ function commandServe() {
271
275
  const PORT = parseInt(portArg || process.env.PORT || '3000', 10);
272
276
  const WORKLOG = positionalArgs[0] || './gsd-lite/WORK.md';
273
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');
274
281
 
275
282
  // Static assets directory (bundled with this package)
276
283
  const DIST = path.join(__dirname, 'dist');
@@ -311,6 +318,34 @@ function commandServe() {
311
318
  return;
312
319
  }
313
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
+
314
349
  // Static file serving from dist/
315
350
  let filePath = pathname === '/' ? '/index.html' : pathname;
316
351
  const fullPath = path.join(DIST, filePath);
@@ -342,11 +377,17 @@ function commandServe() {
342
377
 
343
378
  function serveFile(filePath, ext, res, mimeTypes) {
344
379
  const mimeType = mimeTypes[ext] || 'application/octet-stream';
345
-
380
+
346
381
  try {
347
382
  const content = fs.readFileSync(filePath);
348
383
  res.setHeader('Content-Type', mimeType);
349
- 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
+
350
391
  res.end(content);
351
392
  } catch (err) {
352
393
  res.statusCode = 500;
@@ -388,8 +429,8 @@ function commandServe() {
388
429
  process.exit(1);
389
430
  }
390
431
 
391
- // Watch the worklog file
392
- const watcher = chokidar.watch(WORKLOG_PATH, {
432
+ // Watch markdown artifacts
433
+ const watcher = chokidar.watch([WORKLOG_PATH, PROJECT_PATH, ARCHITECTURE_PATH], {
393
434
  persistent: true,
394
435
  ignoreInitial: true,
395
436
  awaitWriteFinish: {
@@ -403,6 +444,11 @@ function commandServe() {
403
444
  broadcastReload();
404
445
  });
405
446
 
447
+ watcher.on('add', (filepath) => {
448
+ console.log(`[gsd-reader] ${path.basename(filepath)} created`);
449
+ broadcastReload();
450
+ });
451
+
406
452
  watcher.on('error', (error) => {
407
453
  console.error('[gsd-reader] Watcher error:', error.message);
408
454
  });
@@ -419,7 +465,9 @@ function commandServe() {
419
465
  console.log('│ Press Ctrl+C to stop │');
420
466
  console.log('└─────────────────────────────────────────────────────┘');
421
467
  console.log('');
422
- 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}`);
423
471
  });
424
472
 
425
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-Dfaj_znm.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-Dfaj_znm.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};