pilotswarm 0.5.74 → 0.5.75
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/package.json +2 -2
- package/ui/core/src/controller.js +37 -5
- package/web/dist/assets/{abnfDiagram-VRR7QNED-NbU-sJuP.js → abnfDiagram-VRR7QNED-CRN_CPXb.js} +1 -1
- package/web/dist/assets/{arc-CTgrgDMZ.js → arc-CXqBVBpG.js} +1 -1
- package/web/dist/assets/{architectureDiagram-ZJ3FMSHR-ChQoZV9O.js → architectureDiagram-ZJ3FMSHR-DOA41VEX.js} +1 -1
- package/web/dist/assets/{blockDiagram-677ZJIJ3-5PYV29Px.js → blockDiagram-677ZJIJ3-BCa9kQVE.js} +1 -1
- package/web/dist/assets/{c4Diagram-LMCZKHZV-Ck0NT3vh.js → c4Diagram-LMCZKHZV-CccO5uAf.js} +1 -1
- package/web/dist/assets/channel-Df1De1np.js +1 -0
- package/web/dist/assets/{chunk-2Q5K7J3B-c_yhgLFt.js → chunk-2Q5K7J3B-BOzOMW0c.js} +1 -1
- package/web/dist/assets/{chunk-32BRIVSS-C8dmvIWk.js → chunk-32BRIVSS-DyeNS6EA.js} +1 -1
- package/web/dist/assets/{chunk-5VM5RSS4-gU_WpVuN.js → chunk-5VM5RSS4-Cl2puolj.js} +1 -1
- package/web/dist/assets/{chunk-EX3LRPZG-BUI-N5DT.js → chunk-EX3LRPZG-CU792nsG.js} +1 -1
- package/web/dist/assets/{chunk-JWPE2WC7-B1dxrl_8.js → chunk-JWPE2WC7-DI-c4Jvn.js} +1 -1
- package/web/dist/assets/{chunk-MOJQB5TN-i6IlESZJ.js → chunk-MOJQB5TN-CVuPn9RU.js} +1 -1
- package/web/dist/assets/{chunk-RYQCIY6F-Dyjo-7_E.js → chunk-RYQCIY6F-CD34aFNh.js} +1 -1
- package/web/dist/assets/{chunk-V7JOEXUC-WKUXg6Wl.js → chunk-V7JOEXUC-BwQU46DX.js} +1 -1
- package/web/dist/assets/{chunk-VR4S4FIN-B0I7PCCm.js → chunk-VR4S4FIN-CL1JK1sJ.js} +1 -1
- package/web/dist/assets/{chunk-XXDRQBXY-CB7eqrC9.js → chunk-XXDRQBXY-UOxFbxIp.js} +1 -1
- package/web/dist/assets/classDiagram-OUVF2IWQ-ee52oYsq.js +1 -0
- package/web/dist/assets/classDiagram-v2-EOCWNBFH-ee52oYsq.js +1 -0
- package/web/dist/assets/{cose-bilkent-JH36ORCC-CRcAifyt.js → cose-bilkent-JH36ORCC-CfQP19CB.js} +1 -1
- package/web/dist/assets/{cynefin-VYW2F7L2-KpsZYLz7.js → cynefin-VYW2F7L2-C9ifcKtK.js} +1 -1
- package/web/dist/assets/{cynefinDiagram-TSTJHNR4-CUOwCgQT.js → cynefinDiagram-TSTJHNR4-IwcrpJT3.js} +1 -1
- package/web/dist/assets/{dagre-VKFMJZFB-CDmvCqlf.js → dagre-VKFMJZFB-BzTGLYBP.js} +1 -1
- package/web/dist/assets/{diagram-FQU43EPY-Bd-9Pin4.js → diagram-FQU43EPY-D9X1NgQz.js} +1 -1
- package/web/dist/assets/{diagram-G47NLZAW-C928DZyw.js → diagram-G47NLZAW-BkdiUvXU.js} +1 -1
- package/web/dist/assets/{diagram-NH7WQ7WH-CA9dPxkC.js → diagram-NH7WQ7WH-nCeiDJLN.js} +1 -1
- package/web/dist/assets/{diagram-OA4YK3LP-DTa7sqVK.js → diagram-OA4YK3LP-CXdSE6QP.js} +1 -1
- package/web/dist/assets/{diagram-WEI45ONY-BJBIP-D1.js → diagram-WEI45ONY-BNDoTBRl.js} +1 -1
- package/web/dist/assets/{ebnfDiagram-CCIWWBDH-Bt5TMBFP.js → ebnfDiagram-CCIWWBDH-BSsQ9Do8.js} +1 -1
- package/web/dist/assets/{erDiagram-Q63AITRT-CGCT386q.js → erDiagram-Q63AITRT-BTkFSkJi.js} +1 -1
- package/web/dist/assets/{flowDiagram-23GEKE2U-piGmqFTD.js → flowDiagram-23GEKE2U-BGEZ9wur.js} +1 -1
- package/web/dist/assets/{ganttDiagram-NO4QXBWP-sTZX4MDv.js → ganttDiagram-NO4QXBWP-WUAUhEpP.js} +1 -1
- package/web/dist/assets/{gitGraphDiagram-IHSO6WYX-CIX_plag.js → gitGraphDiagram-IHSO6WYX-BQZQl2ZR.js} +1 -1
- package/web/dist/assets/{index-DJdpW65K.js → index-DQFBdVYX.js} +4 -4
- package/web/dist/assets/{infoDiagram-FWYZ7A6U-BY6RX8Bs.js → infoDiagram-FWYZ7A6U-BP9xJx0Z.js} +1 -1
- package/web/dist/assets/{ishikawaDiagram-FXEZZL3T-B4g65LaR.js → ishikawaDiagram-FXEZZL3T-Kz3l0pEF.js} +1 -1
- package/web/dist/assets/{journeyDiagram-5HDEW3XC-DiwwLX0E.js → journeyDiagram-5HDEW3XC-KA8zfX2j.js} +1 -1
- package/web/dist/assets/{kanban-definition-HUTT4EX6-PV3grfRZ.js → kanban-definition-HUTT4EX6-Cvy5U2tj.js} +1 -1
- package/web/dist/assets/{linear-iVmwVooP.js → linear-DQ0Ynwre.js} +1 -1
- package/web/dist/assets/{mermaid.core-DA6LjVrx.js → mermaid.core-C_2W6ze2.js} +4 -4
- package/web/dist/assets/{mindmap-definition-LN4V7U3C-B8DdylnB.js → mindmap-definition-LN4V7U3C-CPkdv3pS.js} +1 -1
- package/web/dist/assets/{papaparse.min-Di5Rv4lz.js → papaparse.min-gRC4B4xh.js} +1 -1
- package/web/dist/assets/{pegDiagram-2B236MQR-DK6ek_Cq.js → pegDiagram-2B236MQR-BEmzoVBF.js} +1 -1
- package/web/dist/assets/{pieDiagram-ENE6RG2P-CwWXjXa0.js → pieDiagram-ENE6RG2P-Cs-r2GVr.js} +1 -1
- package/web/dist/assets/{pilotswarm-O-aSs9ka.js → pilotswarm-qQVUkWws.js} +62 -62
- package/web/dist/assets/{quadrantDiagram-ABIIQ3AL-MuZAfQD9.js → quadrantDiagram-ABIIQ3AL-D1SNNoOk.js} +1 -1
- package/web/dist/assets/{railroadDiagram-RFXS5EU6-YzlcnUR9.js → railroadDiagram-RFXS5EU6-BH9sxNL4.js} +1 -1
- package/web/dist/assets/{requirementDiagram-TGXJPOKE-DXaoYkWC.js → requirementDiagram-TGXJPOKE-ucbqSBch.js} +1 -1
- package/web/dist/assets/{sankeyDiagram-HTMAVEWB-e01Ywh1-.js → sankeyDiagram-HTMAVEWB-9LzvC1Q9.js} +1 -1
- package/web/dist/assets/{sequenceDiagram-DBY2YBRQ-Bejd9pkv.js → sequenceDiagram-DBY2YBRQ-yVbJ1mbs.js} +1 -1
- package/web/dist/assets/{sizeCapture-X5ZJPWSS-BH28GjqM.js → sizeCapture-X5ZJPWSS-aH-owuq8.js} +1 -1
- package/web/dist/assets/{stateDiagram-2N3HPSRC-BLxFqrZK.js → stateDiagram-2N3HPSRC-eNxPWwbu.js} +1 -1
- package/web/dist/assets/stateDiagram-v2-6OUMAXLB-B5tcxao1.js +1 -0
- package/web/dist/assets/{swimlanes-5IMT3BWC-DeRawRPH.js → swimlanes-5IMT3BWC-CUOaCY_Z.js} +2 -2
- package/web/dist/assets/swimlanesDiagram-G3AALYLV-Dz8gcrTg.js +8 -0
- package/web/dist/assets/{timeline-definition-FHXFAJF6-DebMYWDr.js → timeline-definition-FHXFAJF6-CP6SzyRW.js} +1 -1
- package/web/dist/assets/{vennDiagram-L72KCM5P-BNzkPXmx.js → vennDiagram-L72KCM5P-ByPylANx.js} +1 -1
- package/web/dist/assets/{wardleyDiagram-EHGQE667-Bd1oZn0h.js → wardleyDiagram-EHGQE667-QfPO6uUo.js} +1 -1
- package/web/dist/assets/{xychartDiagram-FW5EYKEG-BoBQQKWe.js → xychartDiagram-FW5EYKEG-CNvueYN7.js} +1 -1
- package/web/dist/index.html +2 -2
- package/web/runtime.js +15 -4
- package/web/dist/assets/channel-ClSHF2hk.js +0 -1
- package/web/dist/assets/classDiagram-OUVF2IWQ-2Il7FbX1.js +0 -1
- package/web/dist/assets/classDiagram-v2-EOCWNBFH-2Il7FbX1.js +0 -1
- package/web/dist/assets/stateDiagram-v2-6OUMAXLB-DRVfj4NC.js +0 -1
- package/web/dist/assets/swimlanesDiagram-G3AALYLV-CqI_LiFE.js +0 -8
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pilotswarm",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.75",
|
|
4
4
|
"description": "PilotSwarm application package: terminal UI, browser portal + Web API server, and MCP server — one install, three bins.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"ink": "^6.8.0",
|
|
82
82
|
"jose": "^6.2.2",
|
|
83
83
|
"mermaid": "^11.16.0",
|
|
84
|
-
"pilotswarm-sdk": "0.5.
|
|
84
|
+
"pilotswarm-sdk": "0.5.75",
|
|
85
85
|
"react": "^19.2.4",
|
|
86
86
|
"react-dom": "^19.2.4",
|
|
87
87
|
"ws": "^8.18.2"
|
|
@@ -96,7 +96,6 @@ const FLEET_STATS_DEFAULT_WINDOW_DAYS = 30;
|
|
|
96
96
|
const SESSION_REFRESH_FAILED_STATUS = "Session refresh failed";
|
|
97
97
|
const AUTO_HISTORY_SCROLL_PAGE_COUNT = 3;
|
|
98
98
|
const SESSION_REFRESH_PAGE_LIMIT = 200;
|
|
99
|
-
const SESSION_REFRESH_MAX_PAGES = 5;
|
|
100
99
|
const FULLSCREENABLE_PANES = new Set([
|
|
101
100
|
FOCUS_REGIONS.SESSIONS,
|
|
102
101
|
FOCUS_REGIONS.CHAT,
|
|
@@ -191,26 +190,59 @@ function isSessionGoneError(error) {
|
|
|
191
190
|
return status === 404 || status === 403 || code === "NOT_FOUND" || code === "FORBIDDEN";
|
|
192
191
|
}
|
|
193
192
|
|
|
194
|
-
async function
|
|
193
|
+
async function loadSessionCatalogPages(transport, systemFilter) {
|
|
195
194
|
if (typeof transport.listSessionsPage !== "function") {
|
|
196
195
|
return transport.listSessions();
|
|
197
196
|
}
|
|
198
197
|
|
|
199
198
|
const sessions = [];
|
|
200
199
|
let cursor = null;
|
|
201
|
-
|
|
200
|
+
const seenCursors = new Set();
|
|
201
|
+
for (;;) {
|
|
202
202
|
const page = await transport.listSessionsPage({
|
|
203
203
|
limit: SESSION_REFRESH_PAGE_LIMIT,
|
|
204
204
|
cursor,
|
|
205
|
+
systemFilter,
|
|
206
|
+
viewerOnly: true,
|
|
205
207
|
});
|
|
206
208
|
const pageSessions = Array.isArray(page?.sessions) ? page.sessions : [];
|
|
207
209
|
sessions.push(...pageSessions);
|
|
208
|
-
if (!page?.hasMore
|
|
210
|
+
if (!page?.hasMore) break;
|
|
211
|
+
if (!page?.nextCursor) {
|
|
212
|
+
throw new Error("Session catalog page reported more rows without a next cursor");
|
|
213
|
+
}
|
|
214
|
+
const cursorKey = `${Number(page.nextCursor.updatedAt)}\0${String(page.nextCursor.sessionId || "")}`;
|
|
215
|
+
if (seenCursors.has(cursorKey)) {
|
|
216
|
+
throw new Error("Session catalog page repeated its next cursor");
|
|
217
|
+
}
|
|
218
|
+
seenCursors.add(cursorKey);
|
|
209
219
|
cursor = page.nextCursor;
|
|
210
220
|
}
|
|
211
221
|
return sessions;
|
|
212
222
|
}
|
|
213
223
|
|
|
224
|
+
async function loadSessionCatalog(transport) {
|
|
225
|
+
if (typeof transport.listSessionsPage !== "function") {
|
|
226
|
+
return transport.listSessions();
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
// System roots must not depend on where they happen to fall in the main
|
|
230
|
+
// catalog's recency order. Fetch both server-filtered streams
|
|
231
|
+
// independently, then combine them without changing either stream's
|
|
232
|
+
// order. Every page still goes through the transport's viewer-scoped API.
|
|
233
|
+
const [systemSessions, regularSessions] = await Promise.all([
|
|
234
|
+
loadSessionCatalogPages(transport, "only"),
|
|
235
|
+
loadSessionCatalogPages(transport, "exclude"),
|
|
236
|
+
]);
|
|
237
|
+
const byId = new Set();
|
|
238
|
+
return [...systemSessions, ...regularSessions].filter((session) => {
|
|
239
|
+
const sessionId = String(session?.sessionId || "");
|
|
240
|
+
if (!sessionId || byId.has(sessionId)) return false;
|
|
241
|
+
byId.add(sessionId);
|
|
242
|
+
return true;
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
|
|
214
246
|
function groupModelsByProvider(models = []) {
|
|
215
247
|
const groups = [];
|
|
216
248
|
const byProvider = new Map();
|
|
@@ -2641,7 +2673,7 @@ export class PilotSwarmUiController {
|
|
|
2641
2673
|
return null;
|
|
2642
2674
|
})
|
|
2643
2675
|
: Promise.resolve(null);
|
|
2644
|
-
let sessions = (await
|
|
2676
|
+
let sessions = (await loadSessionCatalog(this.transport)).map(normalizeSessionListRow);
|
|
2645
2677
|
// Folders are NOT merged into the session payload any more: they live
|
|
2646
2678
|
// in their own state slice, so a session refresh cannot drop them. A
|
|
2647
2679
|
// failed fetch is "no news" and simply leaves the slice alone.
|
package/web/dist/assets/{abnfDiagram-VRR7QNED-NbU-sJuP.js → abnfDiagram-VRR7QNED-CRN_CPXb.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as p,r as u,d as a}from"./chunk-MOJQB5TN-
|
|
1
|
+
import{g as p,r as u,d as a}from"./chunk-MOJQB5TN-CVuPn9RU.js";import{p as f}from"./chunk-JWPE2WC7-DI-c4Jvn.js";import{_ as n,l as o}from"./mermaid.core-C_2W6ze2.js";import{M as c,b as d}from"./cynefin-VYW2F7L2-C9ifcKtK.js";import"./pilotswarm-qQVUkWws.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-C_2W6ze2.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};
|