@rashidee/co2 1.3.2 → 1.3.3

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 (68) hide show
  1. package/dist/index.js +42 -4
  2. package/package.json +1 -1
  3. package/plugin/skills/conductor-feature-prepare/SKILL.md +7 -1
  4. package/static/assets/{abnfDiagram-VRR7QNED-CN4J6j_u.js → abnfDiagram-VRR7QNED-BwxjNDj8.js} +1 -1
  5. package/static/assets/{arc-N4fM3ZWM.js → arc-Bf00Zylw.js} +1 -1
  6. package/static/assets/{architectureDiagram-ZJ3FMSHR-uch_sUft.js → architectureDiagram-ZJ3FMSHR-CRUg8Wt3.js} +1 -1
  7. package/static/assets/{blockDiagram-677ZJIJ3-B8ciSHmI.js → blockDiagram-677ZJIJ3-Dy-JP_0N.js} +1 -1
  8. package/static/assets/{c4Diagram-LMCZKHZV-CQcm-uRR.js → c4Diagram-LMCZKHZV-obM4PBxI.js} +1 -1
  9. package/static/assets/channel-BeHa2ubV.js +1 -0
  10. package/static/assets/{chunk-2Q5K7J3B-CKyyGyMe.js → chunk-2Q5K7J3B-DoXzquQ1.js} +1 -1
  11. package/static/assets/{chunk-32BRIVSS-BUvhUzbF.js → chunk-32BRIVSS-B6VgB7K8.js} +1 -1
  12. package/static/assets/{chunk-5VM5RSS4-DeYPG9gz.js → chunk-5VM5RSS4-BmZS0Ftn.js} +1 -1
  13. package/static/assets/{chunk-EX3LRPZG-M5DW3NIE.js → chunk-EX3LRPZG-DdOLrDUP.js} +1 -1
  14. package/static/assets/{chunk-JWPE2WC7-DdUQGRCV.js → chunk-JWPE2WC7-RVdgT8k5.js} +1 -1
  15. package/static/assets/{chunk-MOJQB5TN-BjTWQfa-.js → chunk-MOJQB5TN-BbMHSSXk.js} +1 -1
  16. package/static/assets/{chunk-RYQCIY6F-B6eqE68w.js → chunk-RYQCIY6F-CBOyejV-.js} +1 -1
  17. package/static/assets/{chunk-V7JOEXUC-31fpjmeh.js → chunk-V7JOEXUC-DVvl5ZDu.js} +1 -1
  18. package/static/assets/{chunk-VR4S4FIN-DIdhgHxJ.js → chunk-VR4S4FIN-TKs-_Nin.js} +1 -1
  19. package/static/assets/{chunk-XXDRQBXY-CwmvQsRd.js → chunk-XXDRQBXY-BuwUqVAV.js} +1 -1
  20. package/static/assets/classDiagram-OUVF2IWQ-B0BHpjWc.js +1 -0
  21. package/static/assets/classDiagram-v2-EOCWNBFH-B0BHpjWc.js +1 -0
  22. package/static/assets/{cose-bilkent-JH36ORCC-0fxMNvxl.js → cose-bilkent-JH36ORCC-bVLOVjVk.js} +1 -1
  23. package/static/assets/{cynefin-VYW2F7L2-CykGMMcJ.js → cynefin-VYW2F7L2-B7HPqh-Z.js} +1 -1
  24. package/static/assets/{cynefinDiagram-TSTJHNR4-CXA1U39p.js → cynefinDiagram-TSTJHNR4-0d2yxXQG.js} +1 -1
  25. package/static/assets/{dagre-VKFMJZFB-Bw5XMtDI.js → dagre-VKFMJZFB-D7ErrCay.js} +1 -1
  26. package/static/assets/{diagram-FQU43EPY-xte6N075.js → diagram-FQU43EPY-C36bU8jh.js} +1 -1
  27. package/static/assets/{diagram-G47NLZAW-CHoRtp3z.js → diagram-G47NLZAW-BzaLh10R.js} +1 -1
  28. package/static/assets/{diagram-NH7WQ7WH-CEFlTlPg.js → diagram-NH7WQ7WH-v-Zsf5gF.js} +1 -1
  29. package/static/assets/{diagram-OA4YK3LP-DJ0JX9s2.js → diagram-OA4YK3LP-CRbJBq_k.js} +1 -1
  30. package/static/assets/{diagram-WEI45ONY-BRfCVtnm.js → diagram-WEI45ONY-8fV5Plo4.js} +1 -1
  31. package/static/assets/{ebnfDiagram-CCIWWBDH-Cc-dcKTE.js → ebnfDiagram-CCIWWBDH-5gIe63LE.js} +1 -1
  32. package/static/assets/{erDiagram-Q63AITRT-DLZsu__O.js → erDiagram-Q63AITRT-C3IcAHjG.js} +1 -1
  33. package/static/assets/{flowDiagram-23GEKE2U-Cczq8RCz.js → flowDiagram-23GEKE2U-KQjlOZK9.js} +1 -1
  34. package/static/assets/{ganttDiagram-NO4QXBWP-DOXGNB5h.js → ganttDiagram-NO4QXBWP-Dq3c2GZf.js} +1 -1
  35. package/static/assets/{gitGraphDiagram-IHSO6WYX-BM-SCSXa.js → gitGraphDiagram-IHSO6WYX-BYtnaU27.js} +1 -1
  36. package/static/assets/{index-CBLEvyTD.js → index-CgNepcKp.js} +73 -73
  37. package/static/assets/{infoDiagram-FWYZ7A6U-dJDRFcA8.js → infoDiagram-FWYZ7A6U-CxqBig2C.js} +1 -1
  38. package/static/assets/{ishikawaDiagram-FXEZZL3T-VxLIIU05.js → ishikawaDiagram-FXEZZL3T-0HfzC1wj.js} +1 -1
  39. package/static/assets/{journeyDiagram-5HDEW3XC-EvtzKlzP.js → journeyDiagram-5HDEW3XC-umkaBeJl.js} +1 -1
  40. package/static/assets/{kanban-definition-HUTT4EX6-yO62k9Tr.js → kanban-definition-HUTT4EX6-DsBos3y7.js} +1 -1
  41. package/static/assets/{linear-DZzMubPw.js → linear-DtNdgaOB.js} +1 -1
  42. package/static/assets/{mindmap-definition-LN4V7U3C-BRO6imMR.js → mindmap-definition-LN4V7U3C-BThlwYQu.js} +1 -1
  43. package/static/assets/{pegDiagram-2B236MQR-DJR3fTw9.js → pegDiagram-2B236MQR-DoxrNvw3.js} +1 -1
  44. package/static/assets/{pieDiagram-ENE6RG2P-9mFM-_RT.js → pieDiagram-ENE6RG2P-BqCJUG4Q.js} +1 -1
  45. package/static/assets/{quadrantDiagram-ABIIQ3AL-BEsVn0Kx.js → quadrantDiagram-ABIIQ3AL-4GVp_BSP.js} +1 -1
  46. package/static/assets/{railroadDiagram-RFXS5EU6-D9Mp7Mil.js → railroadDiagram-RFXS5EU6-CU341ElP.js} +1 -1
  47. package/static/assets/{requirementDiagram-TGXJPOKE-CRYcxiHN.js → requirementDiagram-TGXJPOKE-DoBSr-cX.js} +1 -1
  48. package/static/assets/{sankeyDiagram-HTMAVEWB-9MJPBNY-.js → sankeyDiagram-HTMAVEWB-CJ__IqT6.js} +1 -1
  49. package/static/assets/{sequenceDiagram-DBY2YBRQ-CSAt7g1a.js → sequenceDiagram-DBY2YBRQ-BkNwP7Io.js} +1 -1
  50. package/static/assets/{sizeCapture-X5ZJPWSS-DQ7t3sAl.js → sizeCapture-X5ZJPWSS-B-2Xu5n9.js} +1 -1
  51. package/static/assets/{stateDiagram-2N3HPSRC-B314IVUq.js → stateDiagram-2N3HPSRC-DPbpX5_5.js} +1 -1
  52. package/static/assets/stateDiagram-v2-6OUMAXLB-1Opbis3l.js +1 -0
  53. package/static/assets/{swimlanes-5IMT3BWC-gCXbGpn-.js → swimlanes-5IMT3BWC-CnBZNoN8.js} +2 -2
  54. package/static/assets/swimlanesDiagram-G3AALYLV-aoTIjn7w.js +8 -0
  55. package/static/assets/{timeline-definition-FHXFAJF6-Ypa-zz8f.js → timeline-definition-FHXFAJF6-iVUc1pZx.js} +1 -1
  56. package/static/assets/{vennDiagram-L72KCM5P-C07T1tIJ.js → vennDiagram-L72KCM5P-CL66_DTK.js} +1 -1
  57. package/static/assets/{wardleyDiagram-EHGQE667-DwsMVlwx.js → wardleyDiagram-EHGQE667-DQHcCKUc.js} +1 -1
  58. package/static/assets/{xychartDiagram-FW5EYKEG-BCtXbdXL.js → xychartDiagram-FW5EYKEG-B8thIce8.js} +1 -1
  59. package/static/index.html +1 -1
  60. package/dist/.co2-dat/app.db +0 -0
  61. package/dist/.co2-dat/app.db-shm +0 -0
  62. package/dist/.co2-dat/app.db-wal +0 -0
  63. package/dist/.co2-dat/config.json +0 -4
  64. package/static/assets/channel-D1lJ_RG1.js +0 -1
  65. package/static/assets/classDiagram-OUVF2IWQ-B2LV6Dty.js +0 -1
  66. package/static/assets/classDiagram-v2-EOCWNBFH-B2LV6Dty.js +0 -1
  67. package/static/assets/stateDiagram-v2-6OUMAXLB-C5_r7hRR.js +0 -1
  68. package/static/assets/swimlanesDiagram-G3AALYLV-BkEgKJGN.js +0 -8
package/dist/index.js CHANGED
@@ -6809,7 +6809,7 @@ var {
6809
6809
  // package.json
6810
6810
  var package_default = {
6811
6811
  name: "@rashidee/co2",
6812
- version: "1.3.2",
6812
+ version: "1.3.3",
6813
6813
  description: "Compound Context Studio \u2014 self-hosted team context authoring for CO2 projects",
6814
6814
  type: "module",
6815
6815
  license: "MIT",
@@ -21951,9 +21951,9 @@ function parseTrackingStatus(filePath) {
21951
21951
  return "unknown";
21952
21952
  }
21953
21953
  var activeWatchers = /* @__PURE__ */ new Map();
21954
- function pollConductorRun(db, runId, trackingFilePath, notifyUserId) {
21954
+ function pollConductorRun(db, runId, trackingFilePath, notifyUserId, opts = {}) {
21955
21955
  try {
21956
- if (existsSync11(trackingFilePath)) {
21956
+ if (!opts.ignoreStaleMtime && existsSync11(trackingFilePath)) {
21957
21957
  const createdAt = db.select({ createdAt: conductorRuns.createdAt }).from(conductorRuns).where(eq(conductorRuns.id, runId)).get()?.createdAt;
21958
21958
  if (createdAt && statSync3(trackingFilePath).mtimeMs < Date.parse(createdAt)) {
21959
21959
  return "unknown";
@@ -24792,7 +24792,9 @@ function rescanWorkflowRun(db, workspacePath, workflowMarkdownId, watcherInterva
24792
24792
  db.update(conductorRuns).set({ trackingFilePath: freshPath }).where(eq(conductorRuns.id, run.id)).run();
24793
24793
  }
24794
24794
  stopWatcher(run.id);
24795
- const status = pollConductorRun(db, run.id, freshPath, run.startedBy ?? 1);
24795
+ const status = pollConductorRun(db, run.id, freshPath, run.startedBy ?? 1, {
24796
+ ignoreStaleMtime: true
24797
+ });
24796
24798
  if (status === "COMPLETED") {
24797
24799
  lastArtifactSweepAt.delete(run.id);
24798
24800
  try {
@@ -24844,6 +24846,31 @@ function getWorkflowRunFileContent(db, workspacePath, workflowMarkdownId) {
24844
24846
  if (!existsSync18(absolute)) throw svcError14("FILE_NOT_FOUND", 404);
24845
24847
  return { filePath: wfm.filePath, content: readFileSync13(absolute, "utf-8") };
24846
24848
  }
24849
+ function getRunApplicationChangelog(db, workspacePath, workflowMarkdownId, appName) {
24850
+ const wfm = db.select().from(workflowMarkdowns).where(eq(workflowMarkdowns.id, workflowMarkdownId)).get();
24851
+ if (!wfm) throw svcError14("RUN_NOT_FOUND", 404);
24852
+ const project = db.select().from(projects).where(eq(projects.id, wfm.projectId)).get();
24853
+ if (!project) throw svcError14("PROJECT_NOT_FOUND", 404);
24854
+ let runAppNames;
24855
+ if (wfm.importedAppName) {
24856
+ runAppNames = [wfm.importedAppName];
24857
+ } else {
24858
+ const appIds = db.select({ applicationId: conductorRuns.applicationId }).from(conductorRuns).where(eq(conductorRuns.workflowMarkdownId, wfm.id)).all().map((r) => r.applicationId);
24859
+ runAppNames = appIds.length > 0 ? db.select({ name: applications.name }).from(applications).where(inArray(applications.id, appIds)).all().map((a) => a.name) : [];
24860
+ }
24861
+ if (!runAppNames.includes(appName)) throw svcError14("APP_NOT_IN_RUN", 404);
24862
+ const projectDir = resolve2(workspacePath, project.workspaceFolderName);
24863
+ const appFolder = resolveAppFolderName(projectDir, appName);
24864
+ const absolute = resolve2(projectDir, appFolder, "CHANGELOG.md");
24865
+ if (absolute !== projectDir && !absolute.startsWith(projectDir + sep))
24866
+ throw svcError14("INVALID_PATH", 400);
24867
+ if (!existsSync18(absolute)) throw svcError14("CHANGELOG_NOT_FOUND", 404);
24868
+ return {
24869
+ applicationName: appName,
24870
+ filePath: relative(workspacePath, absolute).replace(/\\/g, "/"),
24871
+ content: readFileSync13(absolute, "utf-8")
24872
+ };
24873
+ }
24847
24874
  function toDetail(db, projectFolder, wfm, workspacePath) {
24848
24875
  if (wfm.importedAppName) {
24849
24876
  return {
@@ -26056,6 +26083,17 @@ function workflowRoutes(db, workspacePath) {
26056
26083
  return errorResponse15(c, e);
26057
26084
  }
26058
26085
  });
26086
+ app.get("/runs/:id/changelog", (c) => {
26087
+ const id = Number(c.req.param("id"));
26088
+ if (Number.isNaN(id)) return c.json({ code: "INVALID_ID" }, 400);
26089
+ const appName = c.req.query("app");
26090
+ if (!appName) return c.json({ code: "APP_REQUIRED" }, 400);
26091
+ try {
26092
+ return c.json(getRunApplicationChangelog(db, workspacePath, id, appName));
26093
+ } catch (e) {
26094
+ return errorResponse15(c, e);
26095
+ }
26096
+ });
26059
26097
  app.post("/runs/:id/force-stop", (c) => {
26060
26098
  const id = Number(c.req.param("id"));
26061
26099
  if (Number.isNaN(id)) return c.json({ code: "INVALID_ID" }, 400);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rashidee/co2",
3
- "version": "1.3.2",
3
+ "version": "1.3.3",
4
4
  "description": "Compound Context Studio — self-hosted team context authoring for CO2 projects",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -232,7 +232,13 @@ to understand what has already been completed.
232
232
  - Check `<app_folder>/context/test/` for test spec files
233
233
  4. If the tracker's top-level status is COMPLETED (all steps for all resolved versions done)
234
234
  AND the artifacts still exist:
235
- - Output `<promise>ALL ARTIFACTS GENERATED</promise>` and stop
235
+ - **First ensure the CHANGELOG umbrella row exists** (do NOT skip this on a resume): for each
236
+ resolved version, check `<app_folder>/CHANGELOG.md` for a `conductor-feature-prepare` row
237
+ under that version's `## {version}` section. If it is missing, append it now per the
238
+ **Phase 1 Completion** CHANGELOG rules below. A prior run may have marked the tracker
239
+ COMPLETED without writing the CHANGELOG (e.g. it was interrupted, or artifacts were already
240
+ present), so this back-fills the missing summary row instead of leaving it absent.
241
+ - Then output `<promise>ALL ARTIFACTS GENERATED</promise>` and stop
236
242
  5. If multiple versions were resolved, proceed to Phase 1 — the version loop will determine
237
243
  which versions still need processing (see Phase 1 Sequential Version Loop)
238
244
  6. Otherwise, proceed to Phase 1, starting from the first step not marked COMPLETED in the tracker
@@ -1 +1 @@
1
- import{g as p,r as u,d as a}from"./chunk-MOJQB5TN-BjTWQfa-.js";import{p as f}from"./chunk-JWPE2WC7-DdUQGRCV.js";import{_ as n,l as o}from"./index-CBLEvyTD.js";import{M as c,b as d}from"./cynefin-VYW2F7L2-CykGMMcJ.js";var v=d().RailroadAbnf.parser.LangiumParser,l=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),i=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:i,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return l(e.element);case"AbnfOptionalGroup":return{type:"optional",element:l(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:l(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},w={parser:R,db:a,renderer:u,styles:p};export{w as diagram};
1
+ import{g as p,r as u,d as a}from"./chunk-MOJQB5TN-BbMHSSXk.js";import{p as f}from"./chunk-JWPE2WC7-RVdgT8k5.js";import{_ as n,l as o}from"./index-CgNepcKp.js";import{M as c,b as d}from"./cynefin-VYW2F7L2-B7HPqh-Z.js";var v=d().RailroadAbnf.parser.LangiumParser,l=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),i=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:i,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return l(e.element);case"AbnfOptionalGroup":return{type:"optional",element:l(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:l(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},w={parser:R,db:a,renderer:u,styles:p};export{w as diagram};
@@ -1 +1 @@
1
- import{Y as ln,$ as an,a0 as y,a1 as tn,a2 as F,a3 as q,a4 as _,a5 as un,a6 as rn,a7 as J,a8 as o,a9 as j,aa as sn,ab as on,ac as fn}from"./index-CBLEvyTD.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,z,a){var O=I-l,i=D-h,n=z-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 U(l,h,I,D,v,A,z){var a=l-I,O=h-D,i=(z?A:-A)/J(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,B=(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)*J(fn(0,T*T*R-P*P)),Y=(P*g-m*S)/R,$=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=Y-B,e=$-t,r=w-B,C=p-t;return x*x+e*e>r*r+C*C&&(Y=w,$=p),{cx:Y,cy:$,x01:-n,y01:-d,x11:Y*(v/T-1),y11:$*(v/T-1)}}function hn(){var l=cn,h=yn,I=j(0),D=null,v=gn,A=dn,z=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)-an,c=A.apply(this,arguments)-an,B=un(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(B>tn-y)a.moveTo(s*F(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*F(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=B,S=B,Y=z.apply(this,arguments)/2,$=Y>y&&(D?+D.apply(this,arguments):J(u*u+s*s)),w=_(un(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if($>y){var C=sn($/u*q(Y)),K=sn($/s*q(Y));(P-=C*2)>y?(C*=t?1:-1,R+=C,T-=C):(P=0,R=T=(f+c)/2),(S-=K*2)>y?(K*=t?1:-1,m+=K,g-=K):(S=0,m=g=(f+c)/2)}var G=s*F(m),H=s*q(m),L=u*F(T),M=u*q(T);if(w>y){var N=s*F(g),Q=s*q(g),V=u*F(R),W=u*q(R),E;if(B<rn)if(E=pn(G,H,V,W,N,Q,L,M)){var X=G-E[0],Z=H-E[1],b=N-E[0],k=Q-E[1],nn=1/q(on((X*b+Z*k)/(J(X*X+Z*Z)*J(b*b+k*k)))/2),en=J(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=U(V,W,G,H,s,x,t),r=U(N,Q,L,M,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(G,H),a.arc(0,0,s,m,g,!t)):a.moveTo(G,H),!(u>y)||!(P>y)?a.lineTo(L,M):p>y?(e=U(L,M,N,Q,u,-p,t),r=U(G,H,V,W,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-rn/2;return[F(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:j(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:j(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:j(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:j(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:j(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:j(+n),i):A},i.padAngle=function(n){return arguments.length?(z=typeof n=="function"?n:j(+n),i):z},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
1
+ import{Y as ln,$ as an,a0 as y,a1 as tn,a2 as F,a3 as q,a4 as _,a5 as un,a6 as rn,a7 as J,a8 as o,a9 as j,aa as sn,ab as on,ac as fn}from"./index-CgNepcKp.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,z,a){var O=I-l,i=D-h,n=z-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 U(l,h,I,D,v,A,z){var a=l-I,O=h-D,i=(z?A:-A)/J(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,B=(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)*J(fn(0,T*T*R-P*P)),Y=(P*g-m*S)/R,$=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=Y-B,e=$-t,r=w-B,C=p-t;return x*x+e*e>r*r+C*C&&(Y=w,$=p),{cx:Y,cy:$,x01:-n,y01:-d,x11:Y*(v/T-1),y11:$*(v/T-1)}}function hn(){var l=cn,h=yn,I=j(0),D=null,v=gn,A=dn,z=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)-an,c=A.apply(this,arguments)-an,B=un(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(B>tn-y)a.moveTo(s*F(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*F(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=B,S=B,Y=z.apply(this,arguments)/2,$=Y>y&&(D?+D.apply(this,arguments):J(u*u+s*s)),w=_(un(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if($>y){var C=sn($/u*q(Y)),K=sn($/s*q(Y));(P-=C*2)>y?(C*=t?1:-1,R+=C,T-=C):(P=0,R=T=(f+c)/2),(S-=K*2)>y?(K*=t?1:-1,m+=K,g-=K):(S=0,m=g=(f+c)/2)}var G=s*F(m),H=s*q(m),L=u*F(T),M=u*q(T);if(w>y){var N=s*F(g),Q=s*q(g),V=u*F(R),W=u*q(R),E;if(B<rn)if(E=pn(G,H,V,W,N,Q,L,M)){var X=G-E[0],Z=H-E[1],b=N-E[0],k=Q-E[1],nn=1/q(on((X*b+Z*k)/(J(X*X+Z*Z)*J(b*b+k*k)))/2),en=J(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=U(V,W,G,H,s,x,t),r=U(N,Q,L,M,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(G,H),a.arc(0,0,s,m,g,!t)):a.moveTo(G,H),!(u>y)||!(P>y)?a.lineTo(L,M):p>y?(e=U(L,M,N,Q,u,-p,t),r=U(G,H,V,W,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-rn/2;return[F(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:j(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:j(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:j(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:j(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:j(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:j(+n),i):A},i.padAngle=function(n){return arguments.length?(z=typeof n=="function"?n:j(+n),i):z},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};