@tea-agent/loop-agent 0.39.0-next.17 → 0.39.0-next.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -0
- package/dist/build-stamp.json +2 -2
- package/dist/commands/init.js +2 -14
- package/dist/governance/manifest-types.js +0 -2
- package/dist/worker/console/harness-pi-model-matrix.js +2 -11
- package/dist/worker/console/pi-readiness.js +1 -0
- package/dist/worker/console/static/assets/{abnfDiagram-N423BO3Z-B_oUmMOh.js → abnfDiagram-N423BO3Z-DwiNHTdC.js} +1 -1
- package/dist/worker/console/static/assets/{arc-ftlOud1c.js → arc-CqaEjHku.js} +1 -1
- package/dist/worker/console/static/assets/{architectureDiagram-T3A2C74G-DjW1pNpm.js → architectureDiagram-T3A2C74G-BoztYl-Q.js} +1 -1
- package/dist/worker/console/static/assets/{blockDiagram-VBNYF7ZC-BIKIhuQ2.js → blockDiagram-VBNYF7ZC-BR6kEDU-.js} +1 -1
- package/dist/worker/console/static/assets/{c4Diagram-5PPSVZJV-gQPyScnQ.js → c4Diagram-5PPSVZJV-x8RjYRwv.js} +1 -1
- package/dist/worker/console/static/assets/channel-1N7RyL5T.js +1 -0
- package/dist/worker/console/static/assets/{chunk-2GRJ4B5K-DbYJpklA.js → chunk-2GRJ4B5K-_HKgW9Gv.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-2Q5K7J3B-B2EimXhx.js → chunk-2Q5K7J3B-BF0MICQ6.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-5RXB4S5H-CRl4qEu8.js → chunk-5RXB4S5H-CwMHVJ8a.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-5VM5RSS4-aCdt3uIm.js → chunk-5VM5RSS4-BsAqLAeh.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-6Q2QTUOP-upQU37XN.js → chunk-6Q2QTUOP-IdBfnQF8.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-GF5L2VYU-CTNubrNg.js → chunk-GF5L2VYU-CmnTA6PM.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-JWPE2WC7-CzhqBe80.js → chunk-JWPE2WC7-DDC1y-tm.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-KBJHAD2P-51xTGTO2.js → chunk-KBJHAD2P-Df-jjFHX.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-RYQCIY6F-CCYvtwPn.js → chunk-RYQCIY6F-DXHlHej7.js} +1 -1
- package/dist/worker/console/static/assets/{chunk-XXDRQBXY-Ct6GraPo.js → chunk-XXDRQBXY-BJUMTtaD.js} +1 -1
- package/dist/worker/console/static/assets/classDiagram-JCYQIIEL-BEne8l1a.js +1 -0
- package/dist/worker/console/static/assets/classDiagram-v2-OCEON4UE-BEne8l1a.js +1 -0
- package/dist/worker/console/static/assets/{cose-bilkent-JH36ORCC-DB-ntLzq.js → cose-bilkent-JH36ORCC-DvfSBnQA.js} +1 -1
- package/dist/worker/console/static/assets/{cynefin-VYW2F7L2-BHujm5FN.js → cynefin-VYW2F7L2-BXe-YrAg.js} +1 -1
- package/dist/worker/console/static/assets/{cynefinDiagram-MW4NZA55-Cx5wZ3Lb.js → cynefinDiagram-MW4NZA55-C25KAXmE.js} +1 -1
- package/dist/worker/console/static/assets/{dagre-VZM6K2ZE-CZspWvZB.js → dagre-VZM6K2ZE-DvTVWxGT.js} +1 -1
- package/dist/worker/console/static/assets/{diagram-7IWD3JNH-B8eB7kJZ.js → diagram-7IWD3JNH-e_4e-pmQ.js} +1 -1
- package/dist/worker/console/static/assets/{diagram-B4RE2ZJO-IPXv9g8R.js → diagram-B4RE2ZJO-vG09145o.js} +1 -1
- package/dist/worker/console/static/assets/{diagram-LBJQPF4R-BGnjGtYW.js → diagram-LBJQPF4R-DlqSYoTs.js} +1 -1
- package/dist/worker/console/static/assets/{diagram-Q27KOJAE-hEQoyS1K.js → diagram-Q27KOJAE-BI-4PyfE.js} +1 -1
- package/dist/worker/console/static/assets/{diagram-UB23O5K3-C5mG8Xwz.js → diagram-UB23O5K3-C9dLNlyM.js} +1 -1
- package/dist/worker/console/static/assets/{ebnfDiagram-BXEA7PRR-D3xfcbnF.js → ebnfDiagram-BXEA7PRR-CuqayYwb.js} +1 -1
- package/dist/worker/console/static/assets/{erDiagram-JOGREHBK-CcLL1SM0.js → erDiagram-JOGREHBK-Cjt_WoXR.js} +1 -1
- package/dist/worker/console/static/assets/{flowDiagram-UKHOOZJN-CSuAfPiR.js → flowDiagram-UKHOOZJN-DI5LAkdd.js} +1 -1
- package/dist/worker/console/static/assets/{ganttDiagram-PKOTCBZU-DLqDAAke.js → ganttDiagram-PKOTCBZU-BNulKWJe.js} +1 -1
- package/dist/worker/console/static/assets/{gitGraphDiagram-DS77QQ5N-DAZsLAah.js → gitGraphDiagram-DS77QQ5N-BjWpiSad.js} +1 -1
- package/dist/worker/console/static/assets/{index-BTNvk20w.js → index-DAAlqKAz.js} +57 -57
- package/dist/worker/console/static/assets/{infoDiagram-6WML65LV-DXSlZAx8.js → infoDiagram-6WML65LV-C2z-HyGf.js} +1 -1
- package/dist/worker/console/static/assets/{ishikawaDiagram-WSZJBQD7-DhBkRCya.js → ishikawaDiagram-WSZJBQD7-BqiVeYz0.js} +1 -1
- package/dist/worker/console/static/assets/{journeyDiagram-NVQOT4AX-C-RZUWu7.js → journeyDiagram-NVQOT4AX-jEOZ2ROo.js} +1 -1
- package/dist/worker/console/static/assets/{kanban-definition-27J2QSJJ-B2kKlMxE.js → kanban-definition-27J2QSJJ-CArokfSN.js} +1 -1
- package/dist/worker/console/static/assets/{linear-DMke1BBn.js → linear-Bq9c9mgI.js} +1 -1
- package/dist/worker/console/static/assets/{mermaid.core-DeA6yB6l.js → mermaid.core-CD1Q-FZj.js} +5 -5
- package/dist/worker/console/static/assets/{mindmap-definition-FAOFIHXS-BZ6xfhel.js → mindmap-definition-FAOFIHXS-C3_TRMVq.js} +1 -1
- package/dist/worker/console/static/assets/{pegDiagram-VL7TDLO6-DTAzpGRC.js → pegDiagram-VL7TDLO6-d6-3C5eP.js} +1 -1
- package/dist/worker/console/static/assets/{pieDiagram-7S7Q4E2Y-BX_T9L06.js → pieDiagram-7S7Q4E2Y-rBMZEugn.js} +1 -1
- package/dist/worker/console/static/assets/{quadrantDiagram-CIZ2JOQS-Cj4UGUTS.js → quadrantDiagram-CIZ2JOQS-B1oYGuOW.js} +1 -1
- package/dist/worker/console/static/assets/{railroadDiagram-AXF67PYL-Hcvjh9D4.js → railroadDiagram-AXF67PYL-CduEVeL8.js} +1 -1
- package/dist/worker/console/static/assets/{requirementDiagram-LRYGKXZP-PEuuqrN2.js → requirementDiagram-LRYGKXZP-BX1CnUrJ.js} +1 -1
- package/dist/worker/console/static/assets/{sankeyDiagram-W5VNT64P-Mb_IOENk.js → sankeyDiagram-W5VNT64P-Cf5q1crB.js} +1 -1
- package/dist/worker/console/static/assets/{sequenceDiagram-SI44F4Z6-DGbthBV4.js → sequenceDiagram-SI44F4Z6-D84Udu8j.js} +1 -1
- package/dist/worker/console/static/assets/{sizeCapture-X5ZJPWSS-Ctp2tKYQ.js → sizeCapture-X5ZJPWSS-BGbReoBj.js} +1 -1
- package/dist/worker/console/static/assets/{stateDiagram-OKZ733FA-CHTwWXQq.js → stateDiagram-OKZ733FA-CW1DYgTf.js} +1 -1
- package/dist/worker/console/static/assets/stateDiagram-v2-UEYNNEHI-BPT5G0Dj.js +1 -0
- package/dist/worker/console/static/assets/{swimlanes-SLNWSIFB-MfdGy8FB.js → swimlanes-SLNWSIFB-B0Ps2tSZ.js} +2 -2
- package/dist/worker/console/static/assets/swimlanesDiagram-ULZ7WXOC-BGMpptSy.js +8 -0
- package/dist/worker/console/static/assets/{timeline-definition-Z64GVDOM-oVHobrn4.js → timeline-definition-Z64GVDOM-CAvdUBWu.js} +1 -1
- package/dist/worker/console/static/assets/{vennDiagram-T6HMQDX7-CJ-FRNVZ.js → vennDiagram-T6HMQDX7-Cc5Qi527.js} +1 -1
- package/dist/worker/console/static/assets/{wardleyDiagram-T6FBY63Y-HTiTkCdT.js → wardleyDiagram-T6FBY63Y-m_CGFXYN.js} +1 -1
- package/dist/worker/console/static/assets/{xychartDiagram-ELKLHX3M-DiuS-VLK.js → xychartDiagram-ELKLHX3M-DNfoFR4W.js} +1 -1
- package/dist/worker/console/static/index.html +1 -1
- package/dist/worker/console/static-src/app/console-types.js +0 -12
- package/dist/workflows/dag/dynamic-runtime/shared.js +1 -1
- package/dist/workflows/dag/frontend-prewrite-gate.js +89 -32
- package/docs/templates/harness.schema.json +0 -8
- package/harness.json +1 -8
- package/package.json +1 -1
- package/dist/worker/console/static/assets/channel-Kf0dWmvg.js +0 -1
- package/dist/worker/console/static/assets/classDiagram-JCYQIIEL-DvMFMDx0.js +0 -1
- package/dist/worker/console/static/assets/classDiagram-v2-OCEON4UE-DvMFMDx0.js +0 -1
- package/dist/worker/console/static/assets/stateDiagram-v2-UEYNNEHI-GwsFii7W.js +0 -1
- package/dist/worker/console/static/assets/swimlanesDiagram-ULZ7WXOC-D603UkUt.js +0 -8
package/CHANGELOG.md
CHANGED
|
@@ -43,6 +43,7 @@
|
|
|
43
43
|
- scenario-param 确定性 rewrite 的 Python 语法校验:Windows 优先 `python`,并把 Microsoft Store `python3` 空壳(非 0 且无语法诊断)视为解释器不可用后回退,避免误回滚合法 rewrite。
|
|
44
44
|
- `frontend-plan-revision-pi` 节点级校验与 merge-patch 输出协议矛盾修复:新增 schemaId `frontend-implementation-contract-revision-patch-v1` 与格式级宽松校验 `validateFrontendRevisionPatchNodeOutput`(至少一个 `openspec-citations` 块 + 剥离引用块后恰好一个 JSON 对象,不做完整契约 schema 校验),revision 节点 `structuredContractOutput.schemaId` 切换(plan-pi 仍为 v1);node-execution 的 invalid-output retry 指令按 schemaId 分支,patch 协议提示 merge-patch delta + 引用块,消除「prompt 要求 patch、retry 要求完整契约」的 retryable 死循环;gate 仍是唯一权威合并/校验点(零改动)。ADR 0015 补「节点级校验」决策 7
|
|
45
45
|
- `frontend-implementation-contract.schema.json` 的 `uiComponentChoices` items 补 `if/then` 决策语义(`specified` ⇒ `specReference` 必填非 null;`new` ⇒ `specReference` 为 null/缺失);`frontend-plan-render.ts` 空 `section` 不再渲染尾随 `#`;ADR 0016 增补「门禁边界」小节
|
|
46
|
+
- 前端 gate 内容驱动 revisionPatch 兼容 + verdict 归一化统一:旧 DAG(缺 `revisionPatch` 字段)但 revision 节点按协议输出 merge-patch 时,gate 按内容判定自动合并原始契约并走既有校验(不再因 `missing targets.files` 进入 retryable 死循环);patch 形态但无法合并(fallback 缺失/自身、原始节点不可读或非完整契约、apply 失败)→ `blocked` + 新增 `revision-patch-unmergeable`(错误信息含重新生成 DAG 指引);`normalizeVerdictCandidateLine` 增强 backtick 强调剥离,gate 的 `firstNonEmptyVerdictLine` 复用共享 normalize,runIf / output-protocol / gate 三处一致
|
|
46
47
|
|
|
47
48
|
### 文档
|
|
48
49
|
|
package/dist/build-stamp.json
CHANGED
package/dist/commands/init.js
CHANGED
|
@@ -1362,13 +1362,7 @@ async function readExistingSurfaceState(repoRoot) {
|
|
|
1362
1362
|
}
|
|
1363
1363
|
/** The IDE schema reference remains a structural update signal. */
|
|
1364
1364
|
const HARNESS_STRUCTURAL_VALUE_KEYS = new Set(["$schema"]);
|
|
1365
|
-
const PI_MODEL_ROUTING_KEYS = new Set([
|
|
1366
|
-
"LOW",
|
|
1367
|
-
"MED",
|
|
1368
|
-
"HIGH",
|
|
1369
|
-
"defaultModel",
|
|
1370
|
-
"modelOptions",
|
|
1371
|
-
]);
|
|
1365
|
+
const PI_MODEL_ROUTING_KEYS = new Set(["LOW", "MED", "HIGH", "defaultModel"]);
|
|
1372
1366
|
function isPiModelRoutingPath(path) {
|
|
1373
1367
|
return path.length === 2 && path[0] === "executors" && path[1] === "pi";
|
|
1374
1368
|
}
|
|
@@ -1733,13 +1727,7 @@ function assessHarnessModelMigration(harness) {
|
|
|
1733
1727
|
const hasDefaultModel = "defaultModel" in pi;
|
|
1734
1728
|
const hasTier = PI_MODEL_TIERS.some((tier) => tier in pi);
|
|
1735
1729
|
if (["requiresApiKey", "provider", "model"].some((field) => field in pi) ||
|
|
1736
|
-
Object.keys(pi).some((field) => ![
|
|
1737
|
-
"description",
|
|
1738
|
-
"enabled",
|
|
1739
|
-
"defaultModel",
|
|
1740
|
-
"modelOptions",
|
|
1741
|
-
...PI_MODEL_TIERS,
|
|
1742
|
-
].includes(field))) {
|
|
1730
|
+
Object.keys(pi).some((field) => !["description", "enabled", "defaultModel", ...PI_MODEL_TIERS].includes(field))) {
|
|
1743
1731
|
return {
|
|
1744
1732
|
kind: "ambiguous",
|
|
1745
1733
|
reason: "executors.pi contains unknown or deprecated model semantics",
|
|
@@ -78,8 +78,6 @@ export const executorManifestSchema = z
|
|
|
78
78
|
LOW: executorTierModelSchema.optional(),
|
|
79
79
|
MED: executorTierModelSchema.optional(),
|
|
80
80
|
HIGH: executorTierModelSchema.optional(),
|
|
81
|
-
/** Console 模型矩阵下拉专用列表;仅供 UI 使用,不参与 DAG 模型路由。 */
|
|
82
|
-
modelOptions: z.array(z.string().min(1)).optional(),
|
|
83
81
|
})
|
|
84
82
|
.strict();
|
|
85
83
|
export const workflowPolicyProfileNameSchema = z.enum([
|
|
@@ -82,16 +82,8 @@ export async function readPiModelMatrixProjection(repoRoot) {
|
|
|
82
82
|
const manifest = await readHarnessJson(repoRoot);
|
|
83
83
|
const pi = manifest?.executors?.pi;
|
|
84
84
|
const projection = {};
|
|
85
|
-
const options = new Set();
|
|
86
85
|
if (!pi || typeof pi !== "object")
|
|
87
|
-
return
|
|
88
|
-
const configuredOptions = Array.isArray(pi.modelOptions)
|
|
89
|
-
? pi.modelOptions.filter((item) => typeof item === "string" &&
|
|
90
|
-
item.trim().length > 0 &&
|
|
91
|
-
item.trim() === item)
|
|
92
|
-
: [];
|
|
93
|
-
for (const option of configuredOptions)
|
|
94
|
-
options.add(option);
|
|
86
|
+
return projection;
|
|
95
87
|
for (const tier of PI_MODEL_TIERS) {
|
|
96
88
|
const selection = normalizeExecutorTierValue(pi[tier]);
|
|
97
89
|
if (!selection)
|
|
@@ -103,9 +95,8 @@ export async function readPiModelMatrixProjection(repoRoot) {
|
|
|
103
95
|
? `${selection.provider}/${selection.model}`
|
|
104
96
|
: selection.model,
|
|
105
97
|
};
|
|
106
|
-
options.add(projection[tier].value);
|
|
107
98
|
}
|
|
108
|
-
return
|
|
99
|
+
return projection;
|
|
109
100
|
}
|
|
110
101
|
/**
|
|
111
102
|
* 原子更新 harness.json executors.pi.LOW/MED/HIGH:
|
|
@@ -222,6 +222,7 @@ export async function discoverPiReadinessProbe(options) {
|
|
|
222
222
|
authReady,
|
|
223
223
|
modelsAvailable,
|
|
224
224
|
interviewSessionOk,
|
|
225
|
+
piAvailableModels: availableModels,
|
|
225
226
|
details: {
|
|
226
227
|
sdkMessage: `Pi SDK 0.80.10 contract available (agentDir=${agentDir})`,
|
|
227
228
|
authMessage: authReady
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as p,r as u,d as a}from"./chunk-6Q2QTUOP-
|
|
1
|
+
import{g as p,r as u,d as a}from"./chunk-6Q2QTUOP-IdBfnQF8.js";import{p as f}from"./chunk-JWPE2WC7-DDC1y-tm.js";import{_ as n,l as o}from"./mermaid.core-CD1Q-FZj.js";import{M as c,b as d}from"./cynefin-VYW2F7L2-BXe-YrAg.js";import"./index-DAAlqKAz.js";var v=d().RailroadAbnf.parser.LangiumParser,i=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("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,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 i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(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}},B={parser:R,db:a,renderer:u,styles:p};export{B as diagram};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Y as ln,$ as an,a0 as F,a1 as q,a2 as j,a3 as un,a4 as y,a5 as tn,a6 as J,a7 as _,a8 as rn,a9 as o,aa as on,ab as sn,ac as fn}from"./mermaid.core-
|
|
1
|
+
import{Y as ln,$ as an,a0 as F,a1 as q,a2 as j,a3 as un,a4 as y,a5 as tn,a6 as J,a7 as _,a8 as rn,a9 as o,aa as on,ab as sn,ac as fn}from"./mermaid.core-CD1Q-FZj.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(on(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)-un,c=A.apply(this,arguments)-un,B=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(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=_(rn(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<an)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(fn((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-an/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};
|