blade-code 0.10.65 → 0.10.66
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/dist/blade.js +2 -2
- package/dist/{chunk-czb954vz.js → chunk-0j22w4wh.js} +1 -1
- package/dist/{chunk-tb4jmrkp.js → chunk-0qtrv97b.js} +1 -1
- package/dist/chunk-0scxrkcf.js +1 -0
- package/dist/{chunk-eg5mh9m9.js → chunk-0wxkymqv.js} +1 -1
- package/dist/{chunk-s16x4qkb.js → chunk-1c69c4rd.js} +1 -1
- package/dist/{chunk-ca5mm1gk.js → chunk-1z9wct9w.js} +1 -1
- package/dist/chunk-2eq5dyga.js +1 -0
- package/dist/{chunk-h127mgg2.js → chunk-2kkpn41a.js} +2 -2
- package/dist/{chunk-j6w1vf2q.js → chunk-2xk6m4fc.js} +12 -3
- package/dist/{chunk-ka2kn5bs.js → chunk-30kmydfj.js} +2 -2
- package/dist/{chunk-yrtmkb4a.js → chunk-4sztphe9.js} +1 -1
- package/dist/{chunk-5qaacj3x.js → chunk-50jthhfq.js} +1 -1
- package/dist/{chunk-ky32s7az.js → chunk-5147jh26.js} +1 -1
- package/dist/{chunk-aphcj8rz.js → chunk-5d2cdvdy.js} +1 -1
- package/dist/chunk-69j98a7j.js +166 -0
- package/dist/{chunk-ngmajm4h.js → chunk-6pyktfa4.js} +1 -1
- package/dist/chunk-89090tyx.js +1 -0
- package/dist/chunk-8c677xtx.js +1 -0
- package/dist/{chunk-zxwdtn6q.js → chunk-8nmwft1y.js} +9 -9
- package/dist/{chunk-1vt7e9e7.js → chunk-98n2rxmq.js} +2 -2
- package/dist/{chunk-57gp2px5.js → chunk-a2594p5r.js} +1 -1
- package/dist/{chunk-wzkr0p09.js → chunk-a3xnd8cg.js} +2 -2
- package/dist/{chunk-svczh6hn.js → chunk-abef6dq1.js} +2 -2
- package/dist/chunk-ax9ftraa.js +1 -0
- package/dist/{chunk-sbpb7pcc.js → chunk-b66veqye.js} +2 -2
- package/dist/{chunk-a1m7wr7r.js → chunk-bbcb9jzb.js} +1 -1
- package/dist/{chunk-5gjqdbxb.js → chunk-bjqjdw34.js} +2 -2
- package/dist/chunk-c8zcyvss.js +1 -0
- package/dist/{chunk-hbbpe5f0.js → chunk-cdy9efgm.js} +1 -1
- package/dist/chunk-dc64v4sa.js +1 -0
- package/dist/{chunk-s1xp6g8m.js → chunk-dktrankr.js} +1 -1
- package/dist/chunk-e7pssnr9.js +1 -0
- package/dist/chunk-eq99gcj8.js +1 -0
- package/dist/{chunk-y51v2jvh.js → chunk-f99n8812.js} +2 -2
- package/dist/{chunk-015t2dey.js → chunk-gezg1mpa.js} +1 -1
- package/dist/{chunk-1jm8njkw.js → chunk-h0ft81a3.js} +1 -1
- package/dist/{chunk-5ntrhs8k.js → chunk-ha50z8dp.js} +1 -1
- package/dist/{chunk-k4t45b64.js → chunk-hat9v5c5.js} +1 -1
- package/dist/{chunk-arzhhj0e.js → chunk-hcv17986.js} +1 -1
- package/dist/{chunk-zpwasxzh.js → chunk-j38jh128.js} +2 -2
- package/dist/chunk-jmjn6zcc.js +1 -0
- package/dist/{chunk-d39xaa7w.js → chunk-k0pa8874.js} +1 -1
- package/dist/{chunk-pfmmvpfh.js → chunk-k99r5c4v.js} +3 -3
- package/dist/chunk-kmarzy98.js +1 -0
- package/dist/{chunk-m6a1c1tg.js → chunk-kv0bkxhd.js} +1 -1
- package/dist/{chunk-2yxdneb9.js → chunk-m57w4p91.js} +1 -1
- package/dist/{chunk-4t89y8nj.js → chunk-nt55nz8d.js} +40 -40
- package/dist/chunk-p0b4mv7e.js +10 -0
- package/dist/{chunk-6tacv9rs.js → chunk-ppsvzgs5.js} +2 -2
- package/dist/{chunk-e11kmyt3.js → chunk-pzb5sqwd.js} +1 -1
- package/dist/{chunk-9yvw5xy3.js → chunk-q3mfescm.js} +2 -2
- package/dist/{chunk-98qmtexa.js → chunk-qdah5kkc.js} +243 -243
- package/dist/{chunk-rd7jwwse.js → chunk-rf01e14b.js} +1 -1
- package/dist/chunk-rhs1dv6w.js +1 -0
- package/dist/{chunk-53tb8vvv.js → chunk-s7jsadnc.js} +2 -2
- package/dist/{chunk-793067rd.js → chunk-t2gq918a.js} +2 -2
- package/dist/chunk-t89q7d03.js +22 -0
- package/dist/{chunk-gafk33py.js → chunk-t8xmh4w2.js} +1 -1
- package/dist/{chunk-9ebwtazz.js → chunk-te21eb71.js} +1 -1
- package/dist/{chunk-edd8n5r0.js → chunk-th4jjfgm.js} +1 -1
- package/dist/{chunk-7mdbwjxj.js → chunk-v0rsz1rt.js} +1 -1
- package/dist/{chunk-z228cmc5.js → chunk-w6p2hcfw.js} +1 -1
- package/dist/{chunk-ejsggxs4.js → chunk-xny9q252.js} +2 -2
- package/dist/chunk-xz6y0w4n.js +2 -0
- package/dist/{chunk-rabt8yyf.js → chunk-ybv6stfh.js} +2 -2
- package/dist/{chunk-5ha0vf37.js → chunk-yn51162x.js} +1 -1
- package/dist/{chunk-eharmsjt.js → chunk-ypqp368c.js} +2 -2
- package/dist/{chunk-r94jtbd2.js → chunk-yvg961q3.js} +1 -1
- package/dist/chunk-yy6h97k0.js +1 -0
- package/dist/{chunk-a49dy92d.js → chunk-zdxxqchm.js} +2 -2
- package/dist/chunk-zk42hrdh.js +1 -0
- package/dist/{chunk-bnp9asmd.js → chunk-zvz2cnt4.js} +1 -1
- package/dist/web/assets/{ChatView-Jfq-sqKG.js → ChatView-BVrhnE2j.js} +6 -6
- package/dist/web/assets/{CodeBlockHighlighter-C9DvlG-V.js → CodeBlockHighlighter-Dy7QpAmC.js} +1 -1
- package/dist/web/assets/{FilePreview-YPtQcXr3.js → FilePreview-BI3nkxz1.js} +2 -2
- package/dist/web/assets/KanbanBoard-D5dYOyPH.js +1 -0
- package/dist/web/assets/{MarkdownRenderer-CpUKw2Gk.js → MarkdownRenderer-Da1vB81L.js} +12 -12
- package/dist/web/assets/{SettingsModal-BfDHa4xn.js → SettingsModal-jcCFqLqS.js} +2 -2
- package/dist/web/assets/TaskSwitcher-CQ--jOLB.js +1 -0
- package/dist/web/assets/{TerminalPanel-CDq3_gCr.js → TerminalPanel-CWzjEXOb.js} +1 -1
- package/dist/web/assets/index-BOgOL4hG.js +11 -0
- package/dist/web/assets/index-DbWgTuT3.css +1 -0
- package/dist/web/assets/{vendor-icons-ICv1v-tf.js → vendor-icons-B63aW_OM.js} +82 -62
- package/dist/web/index.html +3 -3
- package/package.json +2 -2
- package/dist/chunk-0h74p1h8.js +0 -1
- package/dist/chunk-18nkg8hr.js +0 -1
- package/dist/chunk-197qz36b.js +0 -1
- package/dist/chunk-2vdq0fav.js +0 -1
- package/dist/chunk-4a75gwa1.js +0 -1
- package/dist/chunk-76ks3ygm.js +0 -10
- package/dist/chunk-8wvk5rgg.js +0 -1
- package/dist/chunk-98vestg4.js +0 -22
- package/dist/chunk-b7p7ywe6.js +0 -1
- package/dist/chunk-cxc2q3yy.js +0 -1
- package/dist/chunk-fv3aggr5.js +0 -1
- package/dist/chunk-fz60jh3y.js +0 -2
- package/dist/chunk-m19xed90.js +0 -1
- package/dist/chunk-mr5c4yzr.js +0 -1
- package/dist/chunk-pr8a6xfm.js +0 -1
- package/dist/chunk-pwehsv52.js +0 -159
- package/dist/chunk-w4eskwzj.js +0 -1
- package/dist/chunk-y8zk4r3y.js +0 -1
- package/dist/web/assets/TaskSwitcher-DacXxQcV.js +0 -1
- package/dist/web/assets/index-Dxdnbd79.css +0 -1
- package/dist/web/assets/index-t4mGaG1Z.js +0 -11
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{bd as a,cd as b,dd as c,ed as d,fd as e,gd as f,hd as g,id as h}from"./chunk-zdxxqchm.js";import"./chunk-98n2rxmq.js";import"./chunk-ppsvzgs5.js";import"./chunk-hcv17986.js";export{d as syncSession,e as syncAll,h as searchProjectionText,c as resetProjectionDbCache,f as removeSessionFromProjection,g as rebuildProjectionIndex,b as getProjectionDb,a as getIndexDbPath};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as X4,k as V4}from"./chunk-
|
|
1
|
+
import{j as X4,k as V4}from"./chunk-dktrankr.js";import{l as tO}from"./chunk-yvg961q3.js";import{s as QO,t as g1}from"./chunk-a2594p5r.js";import{u as a0}from"./chunk-1c69c4rd.js";import{A as a$,v as S1,w as l$,x as c$,y as i$,z as $O}from"./chunk-0qtrv97b.js";import{$ as e1,C as w4,F as R1,G as VO,H as A$,I as iO,J as W$,K as E0,L as F$,M as f0,N as TO,Q as IO,R as SO,T as q1,U as k1,V as I1,W as o1,X as n1,Y as t1,Z as s1,_ as r1,aa as O4,ba as $4,ca as x4,fa as G4,ia as y4,na as M4}from"./chunk-qdah5kkc.js";import{qa as Q1,wa as U0}from"./chunk-pzb5sqwd.js";import{Ba as j4,Ca as j$,Da as P1,Ea as f1,Fa as T4,Ga as C4,Ha as T$,Ia as b4,Ja as t0,Ka as K4,La as W4,Ma as F4,Na as y1,Oa as m1,Pa as h1,Qa as u$,Ra as q$,ya as x$}from"./chunk-5147jh26.js";import{ab as m0,bb as g,db as R,eb as E1,pb as K$,yb as o0}from"./chunk-69j98a7j.js";import{Hb as M1}from"./chunk-th4jjfgm.js";import{Ac as C1,Cc as YO,Fc as X$,Kc as b1,Lc as V$,Mc as N$,Nc as E,_b as A1,jc as aO,pc as qO,qc as D$,rc as kO,tc as j1,zc as T1}from"./chunk-8nmwft1y.js";import{Ld as J0,Pd as G1,Wd as L0}from"./chunk-a3xnd8cg.js";import{Xd as G$}from"./chunk-0j22w4wh.js";import{je as L1}from"./chunk-yn51162x.js";import{le as cO}from"./chunk-b66veqye.js";import{Be as MO,Ce as AO,Ge as d4,Je as T0,Ke as jO,Ne as l4,ue as D4,xe as a1}from"./chunk-2xk6m4fc.js";import{Ve as X1,We as w1}from"./chunk-cdy9efgm.js";import{$e as JO,_e as O1}from"./chunk-k99r5c4v.js";import{Lf as D1,Of as H1,Qf as B1,bg as $1,gg as wO,rf as J1}from"./chunk-abef6dq1.js";import{jg as z$}from"./chunk-h0ft81a3.js";import{kg as P,mg as U,pg as F0}from"./chunk-v0rsz1rt.js";import{rg as oO}from"./chunk-xz6y0w4n.js";import{wg as c}from"./chunk-k0pa8874.js";import{Xg as a}from"./chunk-98n2rxmq.js";import{bh as c0}from"./chunk-ypqp368c.js";import{dh as Y1,eh as U1,gh as z1,hh as _1}from"./chunk-t8xmh4w2.js";import{jh as xO}from"./chunk-j38jh128.js";import{ph as E$}from"./chunk-t2gq918a.js";import{uh as pO,yh as n$}from"./chunk-ppsvzgs5.js";import{Bh as C$}from"./chunk-hcv17986.js";var a5={port:{type:"number",describe:"Port to listen on (0 for auto)",default:0},hostname:{type:"string",describe:"Hostname to listen on",default:"127.0.0.1"},cors:{type:"array",describe:"Additional domains to allow for CORS",default:[]}};function o5(O){return{port:O.port??0,hostname:O.hostname??"127.0.0.1",cors:O.cors??[]}}import{existsSync as k$,readFileSync as yO}from"node:fs";import{createServer as j5}from"node:http";import{networkInterfaces as T5}from"node:os";import{dirname as C5,extname as b5,join as u0}from"node:path";import{fileURLToPath as R5}from"node:url";import{brotliCompressSync as E5,gzipSync as q5,constants as k5}from"node:zlib";import{Hono as I5}from"hono";import{cors as S5}from"hono/cors";import{WebSocketServer as P5}from"ws";var OO=a("Service"),a4=30000,o4=new Set(["completed","failed","cancelled","interrupted"]);class J${dispatch;store;tickMs;timer;unsubscribeBus;ticking=!1;inFlight=new Set;constructor(O){this.dispatch=O.dispatch,this.store=O.store??u$.getInstance(),this.tickMs=O.tickMs??a4}start(){if(this.timer)return;OO.info("[TaskScheduler] Starting scheduler tick loop"),this.timer=setInterval(()=>{this.tick()},this.tickMs),this.timer.unref?.(),this.unsubscribeBus=R.subscribe((O)=>{if(O.type!=="task.status")return;let $=O.properties.taskStatus;if(typeof $!=="string"||!o4.has($))return;this.recordTerminalStatus(O.sessionId,$,typeof O.properties.taskStatusReason==="string"?O.properties.taskStatusReason:void 0)}),this.tick()}stop(){if(this.timer)clearInterval(this.timer),this.timer=void 0,this.unsubscribeBus?.(),this.unsubscribeBus=void 0,OO.info("[TaskScheduler] Stopped scheduler tick loop")}async tick(O=new Date){if(this.ticking)return;this.ticking=!0;try{let $=await this.store.list();for(let x of $)await this.evaluate(x,O)}catch($){OO.warn("[TaskScheduler] Tick failed:",$)}finally{this.ticking=!1}}async evaluate(O,$){if(!O.enabled)return;if(this.inFlight.has(O.id))return;if(O.expiresAt&&new Date(O.expiresAt).getTime()<=$.getTime()){await this.store.update(O.id,{enabled:!1,nextRunAt:null}),OO.info(`[TaskScheduler] Schedule ${O.id} expired; disabled`);return}if(!O.nextRunAt)return;if(!(new Date(O.nextRunAt).getTime()<=$.getTime()))return;await this.fire(O,$)}async fire(O,$=new Date,x={}){if(this.inFlight.has(O.id))throw Error(`Schedule ${O.id} is already dispatching`);this.inFlight.add(O.id);let J=$.toISOString();try{let Q=await this.dispatch({prompt:O.prompt,title:O.title??n4(O),sourceProjectPath:O.projectPath,isolation:O.dispatch.isolation??"worktree",permissionMode:O.dispatch.permissionMode??"default",modelId:O.dispatch.modelId,reasoningEffort:O.dispatch.reasoningEffort,serviceTier:O.dispatch.serviceTier,responseVerbosity:O.dispatch.responseVerbosity,communicationStyle:O.dispatch.communicationStyle}),z=O.trigger.kind==="once"?null:x.manual?O.nextRunAt?new Date(O.nextRunAt):null:x$(O.trigger,$,$);await this.store.update(O.id,{lastRunAt:J,lastRunSessionId:Q.session.sessionId,lastStatus:Q.status,lastError:void 0,runCount:O.runCount+1,nextRunAt:z?z.toISOString():null,enabled:O.trigger.kind==="once"?!1:O.enabled}),R.publish({sessionId:Q.session.sessionId,projectPath:O.projectPath},"schedule.fired",{scheduleId:O.id,firedAt:J,sessionId:Q.session.sessionId,runId:Q.runId,status:Q.status}),OO.info(`[TaskScheduler] Fired schedule ${O.id} -> session ${Q.session.sessionId} (${Q.status})`)}catch(Q){let z=Q instanceof Error?Q.message:String(Q);OO.warn(`[TaskScheduler] Schedule ${O.id} dispatch failed:`,Q);let Y=O.trigger.kind==="once"?null:x.manual?O.nextRunAt?new Date(O.nextRunAt):null:x$(O.trigger,$,$);await this.store.update(O.id,{lastRunAt:J,lastStatus:"error",lastError:z,nextRunAt:Y?Y.toISOString():null,enabled:O.trigger.kind==="once"?!1:O.enabled})}finally{this.inFlight.delete(O.id)}}async recordTerminalStatus(O,$,x){let Q=(await this.store.list()).find((z)=>z.lastRunSessionId===O);if(!Q)return;await this.store.update(Q.id,{lastStatus:$,...x?{lastError:x}:{lastError:void 0}})}}function n4(O){return`Scheduled: ${O.prompt.trim().replace(/\s+/g," ").slice(0,60)}`}class Z0 extends Error{code;statusCode;details;constructor(O,$,x=500,J){super($);this.code=O;this.statusCode=x;this.details=J;this.name="BladeServerError"}toObject(){return{error:{code:this.code,message:this.message,...this.details?{details:this.details}:{}}}}}class S extends Z0{constructor(O,$){super("NOT_FOUND",$?`${O} not found: ${$}`:`${O} not found`,404)}}class H extends Z0{constructor(O){super("BAD_REQUEST",O,400)}}class q extends Z0{constructor(O){super("CONFLICT",O,409)}}class k0 extends Z0{constructor(O,$){super("TOO_MANY_REQUESTS",O,429,$)}}class l0 extends Z0{constructor(O="Server is shutting down"){super("SERVICE_UNAVAILABLE",O,503)}}class B0 extends Z0{constructor(){super("AMBIGUOUS_SESSION","Multiple workspaces contain this session ID; projectPath is required",409)}}class r extends Z0{constructor(O="Internal server error"){super("INTERNAL_ERROR",O,500)}}var x3=U.Object({error:U.Object({code:U.String(),message:U.String(),details:U.Optional(U.Record(U.String(),U.Unknown()))})});import{Hono as t4}from"hono";var Q$=a("Service"),s4=U.Object({updates:U.Record(U.String(),U.Any()),options:U.Optional(U.Object({scope:U.Optional(F0(["local","project","global"])),immediate:U.Optional(U.Boolean())}))});function r4(O){return{currentModelId:O.currentModelId,permissionMode:O.permissionMode,language:O.language,codeTheme:O.codeTheme,uiTheme:O.uiTheme,autoSaveSessions:O.autoSaveSessions,notifyBuild:O.notifyBuild,notifyErrors:O.notifyErrors,notifySounds:O.notifySounds,privacyTelemetry:O.privacyTelemetry,privacyCrash:O.privacyCrash,communicationStyle:O.communicationStyle,maxConcurrentTasks:O.maxConcurrentTasks,maxQueuedTasks:O.maxQueuedTasks,maxQueuedTaskBytes:O.maxQueuedTaskBytes,maxResidentSessionRuntimes:O.maxResidentSessionRuntimes,sessionRuntimeIdleMs:O.sessionRuntimeIdleMs}}var p$=()=>{let O=new t4;return O.get("/",async($)=>{try{let x=J0();return $.json(x?r4(x):{})}catch(x){return Q$.error("[ConfigRoutes] Failed to get config:",x),$.json({})}}),O.put("/",async($)=>{try{let x=await $.req.json(),J=P(s4,x);if(!J.success)throw new H("Invalid config update format");let{updates:Q,options:z}=J.data;return await L0().updateConfig(Q,z),$.json({success:!0,updates:Q})}catch(x){throw Q$.error("[ConfigRoutes] Failed to update config:",x),x}}),O.get("/permissions",async($)=>{try{let x=J0();return $.json(x?.permissions||{})}catch(x){return Q$.error("[ConfigRoutes] Failed to get permissions:",x),$.json({})}}),O};import{Hono as e4}from"hono";import{streamSSE as O2}from"hono/streaming";function d$(O){let $="";if(O.id!==void 0)$+=`id: ${O.id}
|
|
2
2
|
`;if(O.event!==void 0)$+=`event: ${O.event}
|
|
3
3
|
`;for(let x of O.data.split(/\r\n|\r|\n/))$+=`data: ${x}
|
|
4
4
|
`;if(O.retry!==void 0)$+=`retry: ${O.retry}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import{spawn as I}from"node:child_process";var X=500;function x(j){return new Promise((q)=>setTimeout(q,j))}function Z(j){return j&&typeof j==="object"&&"code"in j?String(j.code):void 0}function L(j){return j()||j()}function G(j,q=process.platform,y=process.kill.bind(process)){if(q==="win32"||!Number.isInteger(j)||j<=1||j===process.pid)return!1;try{return y(-j,0),!0}catch(z){let B=Z(z);if(B==="ESRCH")return!1;if(B==="EPERM")return!0;throw z}}function N(j,q){return new Promise((y)=>{let z=["/PID",String(j),"/T"];if(q)z.push("/F");let B=I("taskkill",z,{stdio:"ignore",windowsHide:!0}),K=!1,J=(H)=>{if(K)return;K=!0,y(H)};B.once("error",()=>J(!1)),B.once("close",(H)=>J(H===0))})}async function F(j,q={}){if(!Number.isInteger(j)||j<=1||j===process.pid)return{success:!1,alreadyExited:!1,forced:!1};let y=q.platform??process.platform,z=q.gracePeriodMs??X,B=q.killProcess??process.kill.bind(process),K=q.taskkill??N,J=q.wait??x,H=q.validatePidOwnership??(()=>!0);if(!L(H))return{success:!1,alreadyExited:!1,forced:!1};if(y==="win32"){let V=await K(j,!1);if(await J(z),!H())return{success:V,alreadyExited:!1,forced:!1};let Y=await K(j,!0);return{success:V||Y,alreadyExited:!V&&!Y,forced:Y}}let Q=(V,Y)=>{try{return B(V,Y)}catch(D){return Z(D)==="ESRCH"}},W=Q(-j,"SIGTERM")||Q(j,"SIGTERM");if(await J(z),!H())return{success:W,alreadyExited:!1,forced:!1};let $=Q(-j,"SIGKILL")||Q(j,"SIGKILL");return{success:W||$,alreadyExited:!1,forced:$}}async function R(j,q={}){if(!Number.isInteger(j)||j<=1||j===process.pid)return{success:!1,alreadyExited:!1,forced:!1};if((q.platform??process.platform)==="win32")return{success:!1,alreadyExited:!1,forced:!1};let z=q.gracePeriodMs??X,B=q.killProcess??process.kill.bind(process),K=q.wait??x,J=q.validatePidOwnership??(()=>!0);if(!J())return{success:!1,alreadyExited:!1,forced:!1};let H=($)=>{try{return B(-j,$),"sent"}catch(V){return Z(V)==="ESRCH"?"missing":"failed"}},Q=H("SIGTERM");if(Q==="missing")return{success:!0,alreadyExited:!0,forced:!1};if(Q==="failed")return{success:!1,alreadyExited:!1,forced:!1};if(await K(z),!J())return{success:!1,alreadyExited:!1,forced:!1};let W=H("SIGKILL");return{success:W!=="failed",alreadyExited:W==="missing",forced:W==="sent"}}class b{child;state="owned";terminationPromise;terminationResult;platform;gracePeriodMs;killProcess;taskkill;wait;constructor(j,q={}){this.child=j;if(this.platform=q.platform??process.platform,this.gracePeriodMs=q.gracePeriodMs??X,this.killProcess=q.killProcess??process.kill.bind(process),this.taskkill=q.taskkill??N,this.wait=q.wait??x,q.releaseOnExit!==!1){let y=()=>{if(this.state==="owned")this.state="released"};j.once("close",y),j.once("error",y)}}release(){if(this.state==="owned")this.state="released"}terminate(){if(this.terminationPromise)return this.terminationPromise;if(this.terminationResult)return Promise.resolve(this.terminationResult);if(this.state==="released")return this.terminationResult={success:!0,alreadyExited:!0,forced:!1},Promise.resolve(this.terminationResult);return this.state="terminating",this.terminationPromise=this.terminateOwnedTree().then((j)=>{return this.state="released",this.terminationResult=j,j}),this.terminationPromise}async terminateOwnedTree(){let j=this.child.pid;if(!j)return{success:!1,alreadyExited:!0,forced:!1};if(this.platform==="win32"){let z=await this.taskkill(j,!1);await this.wait(this.gracePeriodMs);let B=await this.taskkill(j,!0);if(!z&&!B)return{success:this.signalDirectChild("SIGKILL"),alreadyExited:!1,forced:!0};return{success:!0,alreadyExited:!1,forced:!0}}let q=this.signalPosixTree(j,"SIGTERM");await this.wait(this.gracePeriodMs);let y=this.signalPosixTree(j,"SIGKILL");return{success:q||y,alreadyExited:!1,forced:y}}signalPosixTree(j,q){if(j<=1||j===process.pid)return this.signalDirectChild(q);try{return this.killProcess(-j,q)}catch(y){if(Z(y)==="ESRCH")return!0;return this.signalDirectChild(q)}}signalDirectChild(j){try{return this.child.kill(j)}catch(q){return Z(q)==="ESRCH"}}}function v(j,q,y={},z={}){let B=I(j,q,{...y,detached:process.platform==="win32"?y.detached:!0,windowsHide:y.windowsHide??!0});return{child:B,processTree:new b(B,z)}}
|
|
2
|
-
export{G as
|
|
2
|
+
export{G as af,F as bf,R as cf,v as df};
|