vibe64 0.1.42 → 0.1.44
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/bin/run.js +133 -133
- package/bin/upgrade-state.js +287 -286
- package/dist/assets/{GithubBrowserTabs-YvIe2BdE.js → GithubBrowserTabs-CxeMBH6W.js} +1 -1
- package/dist/assets/{Vibe64AuthSettingsButton-DLdfT68V.js → Vibe64AuthSettingsButton-BuAidNAq.js} +1 -1
- package/dist/assets/{Vibe64DashboardShell-DMPz6fIx.js → Vibe64DashboardShell-uWi4NB4y.js} +1 -1
- package/dist/assets/{Vibe64DatabaseWorkspace-BCEIOlSg.js → Vibe64DatabaseWorkspace-CCpDbiGK.js} +1 -1
- package/dist/assets/{Vibe64OutputControls-DMoqL0VD.js → Vibe64OutputControls-ttqEP46v.js} +1 -1
- package/dist/assets/{Vibe64RepositoryWorkspace-BdwRwbxp.js → Vibe64RepositoryWorkspace-Bq37tlM9.js} +1 -1
- package/dist/assets/{Vibe64SessionFiles-ChJWUOqm.js → Vibe64SessionFiles-BhNCbnUP.js} +1 -1
- package/dist/assets/{_sessionId_-Bw0KfJeR.js → _sessionId_-wrEZX5JX.js} +1 -1
- package/dist/assets/{_slug_-q9prK_gX.js → _slug_-pVQuRCsN.js} +4 -4
- package/dist/assets/{access-C05Nkq6r.js → access-CwTmMeFU.js} +1 -1
- package/dist/assets/{app-D1CGY9Xm.js → app-BSNXOpH-.js} +1 -1
- package/dist/assets/{changes-D17XpgGz.js → changes-BHk1r-xi.js} +1 -1
- package/dist/assets/{dashboard-BXXgeQ0Q.js → dashboard-CtPZicHO.js} +1 -1
- package/dist/assets/{definitions-SNvFDEFS.js → definitions-Cfy1CWRi.js} +1 -1
- package/dist/assets/{env-sXAQqKWk.js → env-vkfe7Ud2.js} +1 -1
- package/dist/assets/{history-N1iRZaab.js → history-lzQXJSu7.js} +1 -1
- package/dist/assets/{index-Mxalhei8.js → index-BnZ5igE0.js} +5 -5
- package/dist/assets/{integrations-BmwFvHgZ.js → integrations-CefYdMOC.js} +1 -1
- package/dist/assets/{issues-BbiG7dCV.js → issues-CiGWy5Cv.js} +1 -1
- package/dist/assets/{learning-CUCuuoHM.js → learning-BfyUAtaJ.js} +1 -1
- package/dist/assets/{placement-CQy46H3H.js → placement-BxRjNrZ1.js} +1 -1
- package/dist/assets/{publish-4r_4K5IY.js → publish-W5aA6JkR.js} +1 -1
- package/dist/assets/{pull-requests-DY9jg3cE.js → pull-requests-BrtOgprU.js} +1 -1
- package/dist/assets/{repository-DhXdoMP6.js → repository-BsSO4tkZ.js} +1 -1
- package/dist/assets/{settings-Cj4u-76p.js → settings-Ck7lEre8.js} +1 -1
- package/dist/assets/{useArchivedVibe64Sessions-BXNg8oES.js → useArchivedVibe64Sessions-DBSnMGIY.js} +1 -1
- package/dist/assets/{useVibe64ConversationLog-C1xjhFtS.js → useVibe64ConversationLog-DQUm75XZ.js} +1 -1
- package/dist/assets/{useVibe64SessionData-CnDOFFHb.js → useVibe64SessionData-t_rs_q6g.js} +1 -1
- package/dist/assets/{useVibe64SessionSelection-J87nJ9p5.js → useVibe64SessionSelection-gAUaIEs7.js} +1 -1
- package/dist/assets/{vibe64SessionFocus-DlN8NwcE.js → vibe64SessionFocus-BZFoISVS.js} +1 -1
- package/dist/index.html +1 -1
- package/docs/colleague-usage/ai-model-setups.md +2 -1
- package/docs/colleague-usage/coding-agent-goal-pause.md +1 -1
- package/docs/colleague-usage/colleague.md +2 -2
- package/docs/colleague-usage/dashboard-navigation.md +4 -3
- package/docs/colleague-usage/publishing.md +2 -1
- package/node_modules/@local/vibe64-genesis/src/server/index.js +122 -125
- package/node_modules/@local/vibe64-genesis/src/server/promptContext.js +10 -13
- package/package.json +1 -1
- package/server.bundle.mjs +19535 -19510
package/bin/run.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire as __vibe64CreateRequire } from 'node:module';const require=__vibe64CreateRequire(import.meta.url);
|
|
3
|
-
var UE=Object.create;var is=Object.defineProperty;var VE=Object.getOwnPropertyDescriptor;var FE=Object.getOwnPropertyNames;var zE=Object.getPrototypeOf,GE=Object.prototype.hasOwnProperty;var
|
|
3
|
+
var UE=Object.create;var is=Object.defineProperty;var VE=Object.getOwnPropertyDescriptor;var FE=Object.getOwnPropertyNames;var zE=Object.getPrototypeOf,GE=Object.prototype.hasOwnProperty;var Ge=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){
|
|
4
4
|
if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var d=(e,t,r)=>()=>{if(r)throw r[0];try{return e&&(t=e(e=0)),t}catch(n){throw r=[n],n}};var se=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(r){throw t=0,r}},cu=(e,t)=>{for(var r in t)
|
|
5
5
|
is(e,r,{get:t[r],enumerable:!0})},HE=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of FE(t))!GE.call(
|
|
6
6
|
e,o)&&o!==r&&is(e,o,{get:()=>t[o],enumerable:!(n=VE(t,o))||n.enumerable});return e};var qE=(e,t,r)=>(r=e!=null?UE(zE(e)):{},HE(t||!e||!e.__esModule?is(r,"default",{value:e,enumerable:!0}):r,e));import{readFile as YE}from"node:fs/promises";var WE,lu,uu,du=d(()=>{WE=new URL("./../node_modules/@local/vibe64-source-e\
|
|
@@ -9,21 +9,21 @@ ditor/src/server/agentSpecs.js",import.meta.url).href,lu=e=>()=>YE(new URL(`../.
|
|
|
9
9
|
-integration-setup.md")},{name:"integration-payments-laravel",title:"Implementing the integration setup payment operatio\
|
|
10
10
|
ns in Laravel",text:lu("application-payments-laravel.md")}])});import KE from"node:crypto";import{readFileSync as JE}from"node:fs";function sS(e=""){let t=String(e||"").trim();if(!/^[a-f0-9]{64}$/u.
|
|
11
11
|
test(t))throw new Error("Preview auth secret is missing or invalid.");return t}function aS(e=[]){let t=Array.isArray(e)?
|
|
12
|
-
e:[];return[...new Set(t.map(r=>String(r||"").trim()).filter(r=>vr.includes(r)))]}function
|
|
12
|
+
e:[];return[...new Set(t.map(r=>String(r||"").trim()).filter(r=>vr.includes(r)))]}function He(e=""){let t=new Error(e||"\
|
|
13
13
|
Preview identity command capability is invalid.");return t.code="vibe64_preview_identity_command_invalid",t}function pu(e="",t="\
|
|
14
|
-
environment variable"){let r=String(e||"").trim();if(!r)return"";if(!nS.test(r)||oS.has(r)||r.startsWith("XDG_"))throw
|
|
14
|
+
environment variable"){let r=String(e||"").trim();if(!r)return"";if(!nS.test(r)||oS.has(r)||r.startsWith("XDG_"))throw He(
|
|
15
15
|
`Preview identity command ${t} is invalid.`);return r}function cS(e=""){let t=String(e||"");return t.includes("/")&&!t.includes(
|
|
16
16
|
"\\")&&!/[\0\r\n]/u.test(t)&&t.split("/").every(r=>r&&![".",".."].includes(r))}function wu(e=null){if(!e)return null;if(typeof e!=
|
|
17
|
-
"object"||Array.isArray(e))throw
|
|
18
|
-
IdentityTypes"))throw
|
|
19
|
-
re named application identities in Vibe64 instead.");let t=String(e.protocol||"").trim();if(t!==
|
|
20
|
-
ntity command protocol must be ${
|
|
21
|
-
1||r.length>64||r.some(l=>!l.trim()||l.length>4096||/[\0\r\n]/u.test(l)))throw
|
|
22
|
-
between 1 and 64 non-empty arguments.");if(!cS(r[0]))throw
|
|
23
|
-
d project-relative file.");let n=aS(e.identityTypes);if(n.length<1)throw
|
|
17
|
+
"object"||Array.isArray(e))throw He("Preview identity command capability must be an object.");if(Object.hasOwn(e,"viewer\
|
|
18
|
+
IdentityTypes"))throw He("Preview identity commands cannot derive application identities from the Vibe64 viewer. Configu\
|
|
19
|
+
re named application identities in Vibe64 instead.");let t=String(e.protocol||"").trim();if(t!==qe)throw He(`Preview ide\
|
|
20
|
+
ntity command protocol must be ${qe}.`);let r=(Array.isArray(e.command)?e.command:[]).map(l=>String(l??""));if(r.length<
|
|
21
|
+
1||r.length>64||r.some(l=>!l.trim()||l.length>4096||/[\0\r\n]/u.test(l)))throw He("Preview identity command must contain\
|
|
22
|
+
between 1 and 64 non-empty arguments.");if(!cS(r[0]))throw He("Preview identity executable must be a committed app-owne\
|
|
23
|
+
d project-relative file.");let n=aS(e.identityTypes);if(n.length<1)throw He("Preview identity command must advertise at \
|
|
24
24
|
least one supported application user identifier.");let o=e.environment&&typeof e.environment=="object"&&!Array.isArray(e.
|
|
25
25
|
environment)?e.environment:{},i=pu(o.enabled,"enabled environment variable"),s=pu(o.secret,"secret environment variable");
|
|
26
|
-
if(i&&i===s)throw
|
|
26
|
+
if(i&&i===s)throw He("Preview identity enabled and secret environment variables must be different.");let a=Number(e.timeoutMs),
|
|
27
27
|
c=Number.isSafeInteger(a)&&a>0?Math.min(a,rS):tS;return{command:r,environment:{enabled:i,secret:s},identityTypes:n,protocol:t,
|
|
28
28
|
runtimes:[...new Set((Array.isArray(e.runtimes)?e.runtimes:[]).map(l=>String(l||"").trim()).filter(Boolean))],timeoutMs:c}}
|
|
29
29
|
function lS({previewIdentity:e=null,secret:t=""}={}){let r=wu(e);if(!r)return{};let n=sS(t);return{...r.environment.enabled?
|
|
@@ -55,9 +55,9 @@ if(r.length===0)throw new Error("Cookie preview auth profile requires at least o
|
|
|
55
55
|
if(!e||typeof e!="object"||Array.isArray(e))throw new Error(`Cookie preview auth profile cookie ${t+1} must be an object\
|
|
56
56
|
.`);let r=String(e.name||"").trim(),n=String(e.value??"").trim();if(!iS.test(r))throw new Error(`Cookie preview auth pro\
|
|
57
57
|
file cookie ${t+1} has an invalid name.`);if(!n)throw new Error(`Cookie preview auth profile cookie ${t+1} requires a va\
|
|
58
|
-
lue.`);return{name:r,value:n}}var XE,ZE,QE,b$,ve,_r,Sn,ss,eS,mu,hu,gu,vr,
|
|
58
|
+
lue.`);return{name:r,value:n}}var XE,ZE,QE,b$,ve,_r,Sn,ss,eS,mu,hu,gu,vr,qe,tS,rS,nS,oS,E$,iS,S$,as=d(()=>{XE="applicati\
|
|
59
59
|
on-command",ZE="cookie-profile",QE="vibe64-self",b$=KE.randomBytes(32),ve="login-as",_r="logout",Sn="email",ss="login",eS=
|
|
60
|
-
"user-id",mu="selector",hu=new Set(["default","guest","you"]),gu=32,vr=Object.freeze([Sn,ss,eS]),
|
|
60
|
+
"user-id",mu="selector",hu=new Set(["default","guest","you"]),gu=32,vr=Object.freeze([Sn,ss,eS]),qe="vibe64.preview-iden\
|
|
61
61
|
tity.command.v1",tS=1e4,rS=3e4,nS=/^[A-Z_][A-Z0-9_]*$/u,oS=new Set(["HOME","LOGNAME","NODE_OPTIONS","PATH","TMPDIR","USE\
|
|
62
62
|
R"]),E$=Object.freeze(["projectScope","sessionSourceRoot","sessionId","targetHref","terminalSessionId"]),iS=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/u;
|
|
63
63
|
S$=Object.freeze({[XE]:Object.freeze({cookieHeader:dS,cookieNames:uS,environment:lS,identityCommand:!0,identityTypes:vr,
|
|
@@ -66,15 +66,15 @@ freeze({cookieHeader:fS,cookieNames:pS,environment:fu,usesProfile:!0})})});impor
|
|
|
66
66
|
e||"Application preview identity command failed.");return n.code=t,n.statusCode=r,n}function _S(e={}){return{kind:mu,selector:e.
|
|
67
67
|
selector}}function Iu(e={},{requestId:t=ES(),targetHref:r=""}={}){let n=yu(e),o=String(r||"").trim(),i=new URL(o);if(!["\
|
|
68
68
|
http:","https:"].includes(i.protocol))throw SS("Application preview identity target must use HTTP.","vibe64_preview_iden\
|
|
69
|
-
tity_command_target_invalid",500);return{operation:n.operation,protocol:
|
|
69
|
+
tity_command_target_invalid",500);return{operation:n.operation,protocol:qe,requestId:String(t),...n.operation===ve?{subject:_S(
|
|
70
70
|
n)}:{},target:{href:i.toString(),origin:i.origin}}}var _u,vu,Tu,cs,Au=d(()=>{as();_u=512*1024,vu=64,Tu=16*1024,cs="vibe6\
|
|
71
71
|
4_preview_token"});var ls,Ou,us,Pu,xu,Ru,Cu,Nu=d(()=>{as();Au();ls=e=>JSON.stringify(e,null,2),Ou=vr.map(e=>`\`${e}\``).join(", "),us="6f1c\
|
|
72
72
|
2a7e-3d4b-4c55-9a10-2b7d8e9f0a11",Pu=Iu({operation:ve,selector:{type:"email",value:"admin@example.com"}},{requestId:us,targetHref:"\
|
|
73
|
-
http://127.0.0.1:5173/"}),xu=Object.freeze({protocol:
|
|
74
|
-
nly; SameSite=Lax"],identity:{displayName:"Admin",email:"admin@example.com",userId:"1"}}),Ru=Object.freeze({protocol:
|
|
73
|
+
http://127.0.0.1:5173/"}),xu=Object.freeze({protocol:qe,requestId:us,ok:!0,setCookie:["app_session=abc123; Path=/; HttpO\
|
|
74
|
+
nly; SameSite=Lax"],identity:{displayName:"Admin",email:"admin@example.com",userId:"1"}}),Ru=Object.freeze({protocol:qe,
|
|
75
75
|
requestId:us,ok:!1,code:"user_not_found",error:"No active user has that email.",statusCode:404,setCookie:[]}),Cu=Object.
|
|
76
76
|
freeze([{name:"preview-identity-command",title:"Preview identity command protocol",exampleRequest:Pu,exampleResponses:[xu,
|
|
77
|
-
Ru],text:()=>`# Preview identity command protocol (\`${
|
|
77
|
+
Ru],text:()=>`# Preview identity command protocol (\`${qe}\`)
|
|
78
78
|
|
|
79
79
|
An application-owned executable, declared under an Outputs web target's \`#### Preview identity\` block (grammar: \`vibe64-\
|
|
80
80
|
helper spec outputs\`), that signs the Preview browser in as an existing application account or signs it out. Vibe64 neve\
|
|
@@ -192,10 +192,10 @@ has(e))throw new Error(`${t}() received unsafe path segment "${e}".`)}function L
|
|
|
192
192
|
let o=r?LS(e):e;if(typeof o!="string"||o.trim()===""){if(n&&o==="")return[];throw new Error(`${t}() expects a non-empty \
|
|
193
193
|
dotted path string.`)}let i=o.split(".");if(i.some(s=>s===""))throw new Error(`${t}() received an invalid path "${o}".`);
|
|
194
194
|
for(let s of i)jS(s,t);return i}var MS,Or=d(()=>{MS=new Set(["__proto__","prototype","constructor"])});function Zu(e){return{anyOf:[{type:"integer",minimum:-e,maximum:e},{type:"string",pattern:ms}]}}function it(e,t){return{
|
|
195
|
-
[
|
|
195
|
+
[We]:{[e]:t}}}function vs(e,t){for(let r of Object.keys(t)){let n=t[r],o=e[r];if(n&&o&&typeof n=="object"&&typeof o=="ob\
|
|
196
196
|
ject"&&!Array.isArray(n)&&!Array.isArray(o)){vs(o,n);continue}e[r]=n}}function zS(e,t){if(!t||typeof t!="object"||Array.
|
|
197
197
|
isArray(t))throw new Error("JSON Schema export hooks must return an object or null.");for(let r of Object.keys(t)){if(r===
|
|
198
|
-
|
|
198
|
+
We&&e[r]&&typeof e[r]=="object"&&typeof t[r]=="object"&&!Array.isArray(e[r])&&!Array.isArray(t[r])){vs(e[r],t[r]);continue}
|
|
199
199
|
e[r]=t[r]}}function GS(e,t){let n=[...Array.isArray(e.anyOf)&&Object.keys(e).length===1?e.anyOf:[e],...t];return n.length===
|
|
200
200
|
1?e:{anyOf:n}}function HS(e,t){if(!Object.hasOwn(e.types,t.type))throw new Error(`No casting function for type: ${t.type}`);
|
|
201
201
|
let r=e.types[t.type];if(typeof r.toJsonSchema=="function")return r.toJsonSchema;let n=VS[t.type];if(!n)throw new Error(
|
|
@@ -224,10 +224,10 @@ let i=On(t),s=ed(e,t,r,n,o);return i.rootNode===s?{$ref:"#"}:td(s,t)}function Pr
|
|
|
224
224
|
referenceBacked:t}}function QS(e,t,r,n,o=!1){let i={},s=[];for(let[c,l]of Object.entries(e.structure))P(i,c,Is(e,c,l,t,r,
|
|
225
225
|
n)),n.enforceRequired&&l.required===!0&&s.push(c);let a={type:"object",properties:i,additionalProperties:o};return s.length>
|
|
226
226
|
0&&(a.required=s),a}function e_(e,t,r,n,o,i){let s=vn(t,r);if(!s)return null;if(s.kind==="schema")return{...An(Ts(s.schema,
|
|
227
|
-
n,"replace",s.schema.operations.replace,!1)),[
|
|
227
|
+
n,"replace",s.schema.operations.replace,!1)),[We]:{castType:"object"}};let a=r.items.type==="object"&&Object.hasOwn(r.items,
|
|
228
228
|
"schema")?"replace":o,c=a==="replace"?e.operations.replace:i;return Is(e,`${t}[]`,r.items,n,a,c)}function t_(e,t,r,n,o,i){
|
|
229
229
|
let s=Ir(t,r);if(!s)return null;if(s.kind==="schema")return{...An(Ts(s.schema,n,"replace",s.schema.operations.replace,!1)),
|
|
230
|
-
[
|
|
230
|
+
[We]:{castType:"object"}};let a=s.definition.type==="object"&&Object.hasOwn(s.definition,"schema")?"replace":o,c=a==="re\
|
|
231
231
|
place"?e.operations.replace:i;return Is(e,`${t}.*`,s.definition,n,a,c)}function r_(e,t,r,n,o,i){if(r.type==="object"){let a=Tn(
|
|
232
232
|
t,r);if(a.kind==="nested")return Pr(Ts(a.schema,n,o,i,a.allowAdditionalProperties===!0),{referenceBacked:!0});if(a.kind===
|
|
233
233
|
"opaque")return Pr({type:"object",additionalProperties:!0});if(a.kind==="map")return Pr({type:"object",additionalProperties:t_(
|
|
@@ -237,14 +237,14 @@ Array.isArray(s))throw new Error(`Type '${r.type}' on field '${t}' returned an i
|
|
|
237
237
|
function Is(e,t,r,n,o,i){let s={schema:e,fieldName:t,definition:r,operation:o,mode:o,options:n},a=r_(e,t,r,n,o,i),c=a.referenceBacked?
|
|
238
238
|
An(a.schema):{...a.schema},l={castType:r.type};for(let h of Object.keys(r)){if(h==="type"||!Object.hasOwn(e.validators,h))
|
|
239
239
|
continue;let p=qS(e,h,t);if(!p)continue;let g=p({...s,parameterName:h,parameterValue:r[h],fieldSchema:{...c}});g&&zS(c,g)}
|
|
240
|
-
c[
|
|
240
|
+
c[We]&&(vs(l,c[We]),delete c[We]);let u=[];r.nullable===!0&&u.push({type:"null"}),r.nullOnEmpty===!0&&u.push({const:""});
|
|
241
241
|
let m=An(GS(c,u));if(r.defaultTo!==void 0&&i.applyDefaults)if(typeof r.defaultTo!="function"){let h=e._normalizeDefault(
|
|
242
242
|
r,r.defaultTo,{fieldPath:t,currentObject:{},containerKey:t,objectBeforeCast:{},options:{},settings:e._buildOperationSettings(
|
|
243
243
|
o,i,{})});if(Object.keys(h.errors).length>0){let p=Object.values(h.errors)[0];throw new Error(`defaultTo for "${t}" is i\
|
|
244
|
-
nvalid (${p.code}).`)}m.default=h.value}else l.defaults={providedByFunction:!0};return m[
|
|
244
|
+
nvalid (${p.code}).`)}m.default=h.value}else l.defaults={providedByFunction:!0};return m[We]=l,m}function rd(e,t={}){let r=KS(
|
|
245
245
|
t),{operationName:n,operation:o}=YS(e,r),i=r.additionalProperties===void 0?!1:r.additionalProperties,s=On(r),a=ed(e,r,n,
|
|
246
246
|
o,i,{root:!0}),c={$schema:DS,...td(a,r)};return Object.keys(s.definitions).length>0&&(c.definitions=s.definitions),c}var DS,
|
|
247
|
-
|
|
247
|
+
We,ys,bs,BS,US,VS,FS,nd=d(()=>{ps();fs();gs();Tr();Or();DS="http://json-schema.org/draft-07/schema#",We="x-json-rest-sch\
|
|
248
248
|
ema",ys=["object","array","string","number","boolean"],bs=Symbol("json-rest-schema.exportContext"),BS=["true","1","yes",
|
|
249
249
|
"y","on"],US=["false","0","no","n","off"];VS={none:()=>({type:ys}),blob:()=>({type:ys}),serialize:()=>({type:ys}),object:()=>({
|
|
250
250
|
type:"object"}),array:()=>({type:"array"}),file:()=>({type:"string"}),string:()=>({type:"string"}),number:()=>({type:["n\
|
|
@@ -549,29 +549,29 @@ title:R,release:R,status:{...R,enum:["preview","released"]},topics:V(M({topicId:
|
|
|
549
549
|
Wd=M({schemaVersion:jn,id:D,title:R,svg:R,controller:R,assets:{...V(R,32),required:!1},initialState:D,states:V(D,32),description:{
|
|
550
550
|
...R,maxLength:2e3},commands:V(M({name:D,parameters:V(M({name:D,required:{type:"boolean",required:!0},maxLength:{type:"i\
|
|
551
551
|
nteger",required:!0,min:1,max:256}}),8),completionState:D,description:{...R,maxLength:2e3}}),32)})});function ne(e){return Object.assign(new Error(e),{code:"VIBE64_TRAINING_VOCABULARY_INVALID"})}function J_(e){if(!Ds(e)||
|
|
552
|
-
|
|
552
|
+
!Me.test(e.id||""))throw ne("A place needs a lowercase id.");let t=`Place ${e.id}`;if(!Jd(e.label))throw ne(`${t} needs \
|
|
553
553
|
a label.`);if(!H_.has(e.scope))throw ne(`${t} scope is studio or project.`);let r=e.who??"everyone";if(!q_.has(r))throw ne(
|
|
554
554
|
`${t} who is everyone or owner.`);let n=e.open??null;if(n!==null){let i=Object.keys(n||{}).sort().join(",");if(!(i==="pa\
|
|
555
|
-
ne"||i==="databaseView,pane"?e.scope==="project"
|
|
555
|
+
ne"||i==="databaseView,pane"?e.scope==="project"&&Me.test(n.pane):i==="route"?e.scope==="studio"&&typeof n.route=="strin\
|
|
556
556
|
g"&&/^\/app(?:\/[a-z0-9-]+)*$/u.test(n.route):i==="learning"&&n.learning===!0))throw ne(`${t} opens a project pane, a st\
|
|
557
|
-
udio /app route, Courses, or nothing.`)}if(!Array.isArray(e.steps)||!e.steps.length||e.steps.length>6||e.steps.some(i
|
|
557
|
+
udio /app route, Courses, or nothing.`)}if(!Array.isArray(e.steps)||!e.steps.length||e.steps.length>6||e.steps.some(i=>!Me.
|
|
558
558
|
test(i?.id||"")||!Jd(i.label))||e.steps.at(-1).id!==e.id)throw ne(`${t} needs 1 to 6 labelled steps ending with itself.`);
|
|
559
559
|
let o=e.shown??(n?.pane?[{pane:n.pane,...n.databaseView?{databaseView:n.databaseView}:{}}]:n?.route?[{route:n.route}]:[]);
|
|
560
560
|
if(!Array.isArray(o)||o.some(i=>!Ds(i)||!Object.keys(i).length))throw ne(`${t} shown is a list of page focus matchers.`);
|
|
561
|
-
if(e.event!==void 0
|
|
562
|
-
label:e.label,scope:e.scope,who:r,open:n&&Object.freeze({...n}),steps:Object.freeze(e.steps.map(i=>
|
|
563
|
-
freeze(o.map(i=>Object.freeze({...i}))),...e.event?{event:e.event}:{}})}function X_(e){if(!Ds(e)
|
|
564
|
-
"An activity needs a lowercase id.");if(
|
|
565
|
-
if(e.place!==void 0
|
|
561
|
+
if(e.event!==void 0&&!Me.test(e.event))throw ne(`${t} event is a lowercase activity name.`);return Object.freeze({id:e.id,
|
|
562
|
+
label:e.label,scope:e.scope,who:r,open:n&&Object.freeze({...n}),steps:Object.freeze(e.steps.map(i=>F(i.id,i.label))),shown:Object.
|
|
563
|
+
freeze(o.map(i=>Object.freeze({...i}))),...e.event?{event:e.event}:{}})}function X_(e){if(!Ds(e)||!Me.test(e.id||""))throw ne(
|
|
564
|
+
"An activity needs a lowercase id.");if(!Me.test(e.event||""))throw ne(`Activity ${e.id} needs its page activity event.`);
|
|
565
|
+
if(e.place!==void 0&&!Me.test(e.place))throw ne(`Activity ${e.id} place is a place id.`);return Object.freeze({id:e.id,event:e.
|
|
566
566
|
event,...e.place?{place:e.place}:{}})}function Zd({places:e=W_,activities:t=Y_,facts:r=K_}={}){let n=new Map,o=new Map,i=new Set,
|
|
567
567
|
s=(c,l)=>JSON.stringify(c)===JSON.stringify(l);function a({places:c=[],activities:l=[],facts:u=[]}={}){let m=c.map(J_),h=l.
|
|
568
568
|
map(X_);for(let p of[...m,...h])if(n.has(p.id)&&!s(n.get(p.id),p)||o.has(p.id)&&!s(o.get(p.id),p)||m.includes(p)&&o.has(
|
|
569
|
-
p.id)||h.includes(p)&&n.has(p.id))throw ne(`${p.id} is already registered with another meaning.`);for(let p of u)if(
|
|
569
|
+
p.id)||h.includes(p)&&n.has(p.id))throw ne(`${p.id} is already registered with another meaning.`);for(let p of u)if(!Me.
|
|
570
570
|
test(p||""))throw ne("A fact needs a lowercase id.");for(let p of m)n.set(p.id,p);for(let p of h)o.set(p.id,p);for(let p of u)
|
|
571
571
|
i.add(p)}return a({places:e,activities:t,facts:r}),Object.freeze({register:a,place:c=>n.get(c)||null,activity:c=>o.get(c)||
|
|
572
572
|
null,hasFact:c=>i.has(c),places:()=>[...n.values()],events:()=>new Set([...[...o.values()].map(c=>c.event),...[...n.values()].
|
|
573
573
|
filter(c=>c.event).map(c=>c.event)])})}function Un({places:e=[],activities:t=[],facts:r=[]}={}){let n=Zd(),o=new Set(n.places().
|
|
574
|
-
map(a=>a.id));for(let a of[...e,...t,...r])if(
|
|
574
|
+
map(a=>a.id));for(let a of[...e,...t,...r])if(!Me.test(a||""))throw ne(`Declared name ${a} is not a lowercase id.`);let i=new Set(
|
|
575
575
|
e.filter(a=>!o.has(a))),s=new Set(t.filter(a=>!n.activity(a)));return Object.freeze({...n,declared:a=>i.has(a)||s.has(a),
|
|
576
576
|
declaredPlace:a=>i.has(a),declaredActivity:a=>s.has(a),hasFact:a=>n.hasFact(a)||r.includes(a)})}function Ye(e){return Object.
|
|
577
577
|
assign(new Error(e),{code:"VIBE64_TRAINING_GUIDE_INVALID",statusCode:422})}function Qd(e={},t=Mt){let r=typeof e.target==
|
|
@@ -585,33 +585,33 @@ void 0){if(o!=="files")throw Ye("filePath is only for the files place.");if(type
|
|
|
585
585
|
throw Ye("Use a relative practice project file path without '..'.");a.filePath=e.filePath}if(e.caption!==void 0){if(typeof e.
|
|
586
586
|
caption!="string"||!e.caption.trim()||e.caption.length>Xd)throw Ye(`Use a caption of 1 to ${Xd} characters.`);a.caption=
|
|
587
587
|
e.caption.trim()}return a}function ep(e,t={},r=Mt){let n=r.place(e);return n?.shown.length?n.shown.some(o=>Object.entries(
|
|
588
|
-
o).every(([i,s])=>i==="route"?typeof t.route=="string"&&(t.route===s||t.route.startsWith(`${s}/`)):t[i]===s)):null}var
|
|
589
|
-
H_,q_,
|
|
590
|
-
new Set(["everyone","owner"]),
|
|
591
|
-
rd"),Kd=
|
|
592
|
-
pane:"preview"},steps:[Yd]},{id:"dashboard",label:"Dashboard",scope:"project",open:null,steps:[
|
|
593
|
-
ERD",scope:"project",open:{pane:"database",databaseView:"erd"},steps:[
|
|
594
|
-
label:"Data",scope:"project",open:{pane:"database",databaseView:"data"},steps:[
|
|
595
|
-
les",label:"Files",scope:"project",open:{pane:"files"},steps:[
|
|
596
|
-
es",scope:"project",open:{pane:"changes"},steps:[
|
|
597
|
-
project",open:{pane:"repository"},steps:[
|
|
598
|
-
ect",open:{pane:"session"},steps:[
|
|
599
|
-
roject",open:{pane:"system"},steps:[
|
|
600
|
-
open:
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
e.trim().length>0&&e.
|
|
614
|
-
Z_=e=>!!e?.open});function oe(e){return Object.assign(new Error(e),{code:"VIBE64_TRAINING_BEATS_INVALID"})}function sv(e,t,r){let n=rv.exec(
|
|
588
|
+
o).every(([i,s])=>i==="route"?typeof t.route=="string"&&(t.route===s||t.route.startsWith(`${s}/`)):t[i]===s)):null}var Me,
|
|
589
|
+
H_,q_,F,Yd,$e,Kd,Ls,W_,Y_,K_,Ds,Jd,Mt,Bs,Xd,Z_,Vn=d(()=>{Me=/^[a-z][a-z0-9-]{0,63}$/u,H_=new Set(["studio","project"]),q_=
|
|
590
|
+
new Set(["everyone","owner"]),F=(e,t)=>Object.freeze({id:e,label:t}),Yd=F("preview","Preview"),$e=F("dashboard","Dashboa\
|
|
591
|
+
rd"),Kd=F("database","Database"),Ls=F("account-menu","Account menu"),W_=[{id:"preview",label:"Preview",scope:"project",open:{
|
|
592
|
+
pane:"preview"},steps:[Yd]},{id:"dashboard",label:"Dashboard",scope:"project",open:null,steps:[$e]},{id:"database-erd",label:"\
|
|
593
|
+
ERD",scope:"project",open:{pane:"database",databaseView:"erd"},steps:[$e,Kd,F("database-erd","ERD")]},{id:"database-data",
|
|
594
|
+
label:"Data",scope:"project",open:{pane:"database",databaseView:"data"},steps:[$e,Kd,F("database-data","Data")]},{id:"fi\
|
|
595
|
+
les",label:"Files",scope:"project",open:{pane:"files"},steps:[$e,F("files","Files")]},{id:"changes",label:"Current chang\
|
|
596
|
+
es",scope:"project",open:{pane:"changes"},steps:[$e,F("changes","Current changes")]},{id:"git-log",label:"Git log",scope:"\
|
|
597
|
+
project",open:{pane:"repository"},steps:[$e,F("git-log","Git log")]},{id:"session-info",label:"Session info",scope:"proj\
|
|
598
|
+
ect",open:{pane:"session"},steps:[$e,F("session-info","Session info")]},{id:"architecture",label:"Architecture",scope:"p\
|
|
599
|
+
roject",open:{pane:"system"},steps:[$e,F("architecture","Architecture")]},{id:"publish",label:"Publish",scope:"project",
|
|
600
|
+
open:{pane:"publish"},steps:[$e,F("publish","Publish")]},{id:"chat",label:"Coding chat",scope:"project",open:null,shown:[
|
|
601
|
+
{pane:"chat"},{chatVisible:!0}],steps:[F("chat","Coding chat")]},{id:"save",label:"Save",scope:"project",open:null,event:"\
|
|
602
|
+
saved",steps:[F("save","Save")]},{id:"reload-preview",label:"Reload preview",scope:"project",open:null,event:"preview-re\
|
|
603
|
+
loaded",steps:[Yd,F("reload-preview","Reload preview")]},{id:"learning",label:"Learning",scope:"studio",open:{learning:!0},
|
|
604
|
+
shown:[],event:"learn-toggled",steps:[F("learning","Learning")]},{id:"lesson",label:"Lesson",scope:"studio",open:null,shown:[
|
|
605
|
+
{pane:"lesson"}],steps:[F("lesson","Lesson")]},{id:"lesson-bar",label:"Lesson step bar",scope:"studio",open:null,steps:[
|
|
606
|
+
F("lesson-bar","Lesson step bar")]},{id:"courses",label:"Courses",scope:"studio",open:null,shown:[{learningOpen:!0}],steps:[
|
|
607
|
+
F("courses","Courses")]},{id:"colleague",label:"Colleague",scope:"studio",open:null,event:"colleague-opened",steps:[F("c\
|
|
608
|
+
olleague","Colleague")]},{id:"account-menu",label:"Account menu",scope:"studio",open:null,steps:[Ls]},{id:"account-setti\
|
|
609
|
+
ngs",label:"Account settings",scope:"studio",open:null,steps:[Ls,F("account-settings","Account settings")]},{id:"ai-setu\
|
|
610
|
+
p",label:"AI setup",scope:"studio",open:null,steps:[Ls,F("ai-setup","AI setup")]}],Y_=[{id:"send-message",event:"message\
|
|
611
|
+
-sent",place:"chat"},{id:"agent-finished",event:"agent-finished"},{id:"file-opened",event:"file-opened",place:"files"},{
|
|
612
|
+
id:"app-pressed",event:"app-pressed",place:"preview"},{id:"colleague-minimised",event:"colleague-minimised",place:"colle\
|
|
613
|
+
ague"}],K_=["ai-ready"];Ds=e=>!!e&&typeof e=="object"&&!Array.isArray(e),Jd=e=>typeof e=="string"&&e.trim().length>0&&e.
|
|
614
|
+
length<=64;Mt=Zd({facts:[]});Bs=/^(?!\/)(?!.*(?:^|\/)\.\.(?:\/|$))[^\u0000-\u001f\\]{1,512}$/u,Xd=256;Z_=e=>!!e?.open});function oe(e){return Object.assign(new Error(e),{code:"VIBE64_TRAINING_BEATS_INVALID"})}function sv(e,t,r){let n=rv.exec(
|
|
615
615
|
e);if(!n)throw oe(`beat ${t} must read "<show|do|check> <target>: <text>".`);let[,o,i,s,a=""]=n,c=`beat ${t} (${o} ${i})`;
|
|
616
616
|
if(o==="check"&&i==="review"){if(a.trim()||s!==void 0)throw oe(`${c} takes no text: the bar shows the step's check.rubri\
|
|
617
617
|
c.`);return{kind:o,target:i,text:""}}if(!a.trim())throw oe(`${c} needs its text after the colon.`);let l={kind:o,target:i,
|
|
@@ -760,25 +760,25 @@ var Sv,Wn=d(()=>{Sv=Ev(wv)});var up=d(()=>{Wn()});import vv from"node:path";func
|
|
|
760
760
|
isSafeInteger(t)&&t>=0?t:null}function C(e=""){let t=N(e);return t?vv.resolve(t):""}function ie(e={}){return e&&typeof e==
|
|
761
761
|
"object"&&!Array.isArray(e)?e:{}}function ee(e={}){return Object.fromEntries(Object.entries(ie(e)).map(([t,r])=>[N(t),String(
|
|
762
762
|
r??"")]).filter(([t])=>!!t))}function ut(e=[]){let t=[],r=new Set;for(let n of Array.isArray(e)?e:[e]){let o=N(n);!o||r.
|
|
763
|
-
has(o)||(r.add(o),t.push(o))}return t}function
|
|
763
|
+
has(o)||(r.add(o),t.push(o))}return t}function je(...e){for(let t of e){let r=N(t);if(r)return r}return""}var G=d(()=>{});import Tv from"node:os";import Hs from"node:path";function Yn(e={}){let t=N(e.username),r=C(e.home||(t?`/home/${t}`:Tv.homedir()));
|
|
764
764
|
return{displayName:N(e.displayName||t),gid:Gs(e.gid),home:r,shell:N(e.shell),uid:Gs(e.uid),username:t}}function qs(){return Yn(
|
|
765
765
|
Rr())}async function Ws(e="",t={}){return Yn(await qn(e,t))}function Ys(e={},t={}){let r=Yn(e);return{...t,HOME:r.home,LOGNAME:r.
|
|
766
766
|
username,USER:r.username,XDG_CACHE_HOME:Hs.join(r.home,".cache"),XDG_CONFIG_HOME:Hs.join(r.home,".config"),XDG_DATA_HOME:Hs.
|
|
767
767
|
join(r.home,".local","share")}}function Ks(e={},t={}){return Ys(e,t)}function Js(){return{gid:typeof process.getgid=="fu\
|
|
768
768
|
nction"?process.getgid():null,uid:typeof process.getuid=="function"?process.getuid():null}}var Lt=d(()=>{Wn();G()});function H(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||
|
|
769
|
-
Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var
|
|
769
|
+
Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}var Le=d(()=>{});import{fileURLToPath as Iv}from"node:url";var Dt,Av,Xs,Zs,Bt=d(()=>{Dt=(e,t)=>{let r=Zs(Av(e));if(typeof r!="string")throw new TypeError(
|
|
770
770
|
`${t} must be a string or a file URL: ${r}.`);return r},Av=e=>Xs(e)?e.toString():e,Xs=e=>typeof e!="string"&&e&&Object.getPrototypeOf(
|
|
771
|
-
e)===String.prototype,Zs=e=>e instanceof URL?Iv(e):e});var Kn,Qs=d(()=>{
|
|
771
|
+
e)===String.prototype,Zs=e=>e instanceof URL?Iv(e):e});var Kn,Qs=d(()=>{Le();Bt();Kn=(e,t=[],r={})=>{let n=Dt(e,"First argument"),[o,i]=H(t)?[[],t]:[t,r];if(!Array.isArray(o))
|
|
772
772
|
throw new TypeError(`Second argument must be either an array of arguments or an options object: ${o}`);if(o.some(c=>typeof c==
|
|
773
773
|
"object"&&c!==null))throw new TypeError(`Second argument must be an array of strings: ${o}`);let s=o.map(String),a=s.find(
|
|
774
774
|
c=>c.includes("\0"));if(a!==void 0)throw new TypeError(`Arguments cannot contain null bytes ("\\0"): ${a}`);if(!H(i))throw new TypeError(
|
|
775
|
-
`Last argument must be an options object: ${i}`);return[n,s,i]}});import{StringDecoder as Ov}from"node:string_decoder";var dp,pp,W,
|
|
776
|
-
Object.prototype),pp=e=>dp.call(e)==="[object ArrayBuffer]",W=e=>dp.call(e)==="[object Uint8Array]",
|
|
775
|
+
`Last argument must be an options object: ${i}`);return[n,s,i]}});import{StringDecoder as Ov}from"node:string_decoder";var dp,pp,W,De,Pv,fp,xv,Jn,mp,Rv,Cr,Cv,ea,Nv,ce=d(()=>{({toString:dp}=
|
|
776
|
+
Object.prototype),pp=e=>dp.call(e)==="[object ArrayBuffer]",W=e=>dp.call(e)==="[object Uint8Array]",De=e=>new Uint8Array(
|
|
777
777
|
e.buffer,e.byteOffset,e.byteLength),Pv=new TextEncoder,fp=e=>Pv.encode(e),xv=new TextDecoder,Jn=e=>xv.decode(e),mp=(e,t)=>Rv(
|
|
778
778
|
e,t).join(""),Rv=(e,t)=>{if(t==="utf8"&&e.every(i=>typeof i=="string"))return e;let r=new Ov(t),n=e.map(i=>typeof i=="st\
|
|
779
779
|
ring"?fp(i):i).map(i=>r.write(i)),o=r.end();return o===""?n:[...n,o]},Cr=e=>e.length===1&&W(e[0])?e[0]:ea(Cv(e)),Cv=e=>e.
|
|
780
780
|
map(t=>typeof t=="string"?fp(t):t),ea=e=>{let t=new Uint8Array(Nv(e)),r=0;for(let n of e)t.set(n,r),r+=n.length;return t},
|
|
781
|
-
Nv=e=>{let t=0;for(let r of e)t+=r.length;return t}});import{ChildProcess as kv}from"node:child_process";var yp,bp,$v,Mv,hp,jv,gp,wp,Lv,Ep=d(()=>{
|
|
781
|
+
Nv=e=>{let t=0;for(let r of e)t+=r.length;return t}});import{ChildProcess as kv}from"node:child_process";var yp,bp,$v,Mv,hp,jv,gp,wp,Lv,Ep=d(()=>{Le();ce();yp=e=>Array.isArray(
|
|
782
782
|
e)&&Array.isArray(e.raw),bp=(e,t)=>{let r=[];for(let[i,s]of e.entries())r=$v({templates:e,expressions:t,tokens:r,index:i,
|
|
783
783
|
template:s});if(r.length===0)throw new TypeError("Template script must not be empty");let[n,...o]=r;return[n,o,{}]},$v=({
|
|
784
784
|
templates:e,expressions:t,tokens:r,index:n,template:o})=>{if(o===void 0)throw new TypeError(`Invalid backslash sequence:\
|
|
@@ -794,8 +794,8 @@ e))return Lv(e);throw e instanceof kv||Object.prototype.toString.call(e)==="[obj
|
|
|
794
794
|
subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}."):new TypeError(`Unexpected \
|
|
795
795
|
"${t}" in template expression`)},Lv=({stdout:e})=>{if(typeof e=="string")return e;if(W(e))return Jn(e);throw e===void 0?
|
|
796
796
|
new TypeError(`Missing result.stdout in template expression. This is probably due to the previous subprocess' "stdout" o\
|
|
797
|
-
ption.`):new TypeError(`Unexpected "${typeof e}" stdout in template expression`)}});import ta from"node:process";var ye,Xn,fe,Zn,
|
|
798
|
-
"stdout","stderr"],Zn=e=>fe[e]??`stdio[${e}]`});import{debuglog as Dv}from"node:util";var _p,ra,Bv,Uv,Vv,Fv,Sp,zv,na,Gv,Hv,qv,Wv,oa,
|
|
797
|
+
ption.`):new TypeError(`Unexpected "${typeof e}" stdout in template expression`)}});import ta from"node:process";var ye,Xn,fe,Zn,Be=d(()=>{ye=e=>Xn.includes(e),Xn=[ta.stdin,ta.stdout,ta.stderr],fe=["stdin",
|
|
798
|
+
"stdout","stderr"],Zn=e=>fe[e]??`stdio[${e}]`});import{debuglog as Dv}from"node:util";var _p,ra,Bv,Uv,Vv,Fv,Sp,zv,na,Gv,Hv,qv,Wv,oa,Ue,Ve=d(()=>{Le();Be();_p=e=>{let t={
|
|
799
799
|
...e};for(let r of oa)t[r]=ra(e,r);return t},ra=(e,t)=>{let r=Array.from({length:Bv(e)+1}),n=Uv(e[t],r,t);return Hv(n,t)},
|
|
800
800
|
Bv=({stdio:e})=>Array.isArray(e)?Math.max(e.length,fe.length):fe.length,Uv=(e,t,r)=>H(e)?Vv(e,t,r):t.fill(e),Vv=(e,t,r)=>{
|
|
801
801
|
for(let n of Object.keys(e).sort(Fv))for(let o of zv(n,r,t))t[o]=e[n];return t},Fv=(e,t)=>Sp(e)<Sp(t)?1:-1,Sp=e=>e==="st\
|
|
@@ -806,8 +806,8 @@ throw new TypeError(`"${t}.${e}" is invalid: that file descriptor does not exist
|
|
|
806
806
|
Please set the "stdio" option to ensure that file descriptor exists.`);return n==="all"?[1,2]:[n]},na=e=>{if(e==="all")return e;
|
|
807
807
|
if(fe.includes(e))return fe.indexOf(e);let t=Gv.exec(e);if(t!==null)return Number(t[1])},Gv=/^fd(\d+)$/,Hv=(e,t)=>e.map(
|
|
808
808
|
r=>r===void 0?Wv[t]:r),qv=Dv("execa").enabled?"full":"none",Wv={lines:!1,buffer:!0,maxBuffer:1e3*1e3*100,verbose:qv,stripFinalNewline:!0},
|
|
809
|
-
oa=["lines","buffer","maxBuffer","verbose","stripFinalNewline"],
|
|
810
|
-
ia(e,t)),vp=({verbose:e},t)=>{let r=ia(e,t);return Qn(r)?r:void 0},ia=(e,t)=>t===void 0?Yv(e):
|
|
809
|
+
oa=["lines","buffer","maxBuffer","verbose","stripFinalNewline"],Ue=(e,t)=>t==="ipc"?e.at(-1):e[t]});var Ut,Vt,vp,ia,Yv,Qn,eo,Ke=d(()=>{Ve();Ut=({verbose:e},t)=>ia(e,t)!=="none",Vt=({verbose:e},t)=>!["none","short"].includes(
|
|
810
|
+
ia(e,t)),vp=({verbose:e},t)=>{let r=ia(e,t);return Qn(r)?r:void 0},ia=(e,t)=>t===void 0?Yv(e):Ue(e,t),Yv=e=>e.find(t=>Qn(
|
|
811
811
|
t))??eo.findLast(t=>e.includes(t)),Qn=e=>typeof e=="function",eo=["none","short","full"]});import{platform as Kv}from"node:process";import{stripVTControlCharacters as Jv}from"node:util";var Tp,Nr,Ip,Xv,Zv,Qv,eT,
|
|
812
812
|
tT,rT,nT,to=d(()=>{Tp=(e,t)=>{let r=[e,...t],n=r.join(" "),o=r.map(i=>rT(Ip(i))).join(" ");return{command:n,escapedCommand:o}},
|
|
813
813
|
Nr=e=>Jv(e).split(`
|
|
@@ -899,18 +899,18 @@ t).replaceAll(" "," ".repeat(ST))},ST=2});var Vp,Fp=d(()=>{Ke();Ft();Vp=(e,t)=>{
|
|
|
899
899
|
_T=e=>Ut({verbose:e})?vT++:void 0,vT=0n,TT=e=>{for(let t of e){if(t===!1)throw new TypeError(`The "verbose: false" optio\
|
|
900
900
|
n was renamed to "verbose: 'none'".`);if(t===!0)throw new TypeError(`The "verbose: true" option was renamed to "verbose:\
|
|
901
901
|
'short'".`);if(!eo.includes(t)&&!Qn(t)){let r=eo.map(n=>`'${n}'`).join(", ");throw new TypeError(`The "verbose" option \
|
|
902
|
-
must not be ${t}. Allowed values are: ${r} or a function.`)}}}});import{hrtime as Hp}from"node:process";var so,ca,ao=d(()=>{so=()=>Hp.bigint(),ca=e=>Number(Hp.bigint()-e)/1e6});var co,la=d(()=>{Fp();Gp();ao();to();
|
|
903
|
-
a=zp(s,i,{...r});return Vp(i,a),{command:o,escapedCommand:i,startTime:n,verboseInfo:a}}});var Jp=se((JL,Kp)=>{Kp.exports=Yp;Yp.sync=AT;var qp=
|
|
902
|
+
must not be ${t}. Allowed values are: ${r} or a function.`)}}}});import{hrtime as Hp}from"node:process";var so,ca,ao=d(()=>{so=()=>Hp.bigint(),ca=e=>Number(Hp.bigint()-e)/1e6});var co,la=d(()=>{Fp();Gp();ao();to();Ve();co=(e,t,r)=>{let n=so(),{command:o,escapedCommand:i}=Tp(e,t),s=ra(r,"verbose"),
|
|
903
|
+
a=zp(s,i,{...r});return Vp(i,a),{command:o,escapedCommand:i,startTime:n,verboseInfo:a}}});var Jp=se((JL,Kp)=>{Kp.exports=Yp;Yp.sync=AT;var qp=Ge("fs");function IT(e,t){var r=t.pathExt!==void 0?t.pathExt:process.
|
|
904
904
|
env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n<r.length;n++){var o=r[n].toLowerCase();if(o&&
|
|
905
905
|
e.substr(-o.length).toLowerCase()===o)return!0}return!1}function Wp(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:IT(
|
|
906
|
-
t,r)}function Yp(e,t,r){qp.stat(e,function(n,o){r(n,n?!1:Wp(o,e,t))})}function AT(e,t){return Wp(qp.statSync(e),e,t)}});var tf=se((XL,ef)=>{ef.exports=Zp;Zp.sync=OT;var Xp=
|
|
906
|
+
t,r)}function Yp(e,t,r){qp.stat(e,function(n,o){r(n,n?!1:Wp(o,e,t))})}function AT(e,t){return Wp(qp.statSync(e),e,t)}});var tf=se((XL,ef)=>{ef.exports=Zp;Zp.sync=OT;var Xp=Ge("fs");function Zp(e,t,r){Xp.stat(e,function(n,o){r(n,n?!1:Qp(o,t))})}
|
|
907
907
|
function OT(e,t){return Qp(Xp.statSync(e),t)}function Qp(e,t){return e.isFile()&&PT(e,t)}function PT(e,t){var r=e.mode,n=e.
|
|
908
908
|
uid,o=e.gid,i=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),s=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),
|
|
909
|
-
a=parseInt("100",8),c=parseInt("010",8),l=parseInt("001",8),u=a|c,m=r&l||r&c&&o===s||r&a&&n===i||r&u&&i===0;return m}});var nf=se((QL,rf)=>{var ZL=
|
|
909
|
+
a=parseInt("100",8),c=parseInt("010",8),l=parseInt("001",8),u=a|c,m=r&l||r&c&&o===s||r&a&&n===i||r&u&&i===0;return m}});var nf=se((QL,rf)=>{var ZL=Ge("fs"),lo;process.platform==="win32"||global.TESTING_WINDOWS?lo=Jp():lo=tf();rf.exports=ua;
|
|
910
910
|
ua.sync=xT;function ua(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError(
|
|
911
911
|
"callback not provided");return new Promise(function(n,o){ua(e,t||{},function(i,s){i?o(i):n(s)})})}lo(e,t||{},function(n,o){
|
|
912
912
|
n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,o=!1),r(n,o)})}function xT(e,t){try{return lo.sync(e,t||{})}catch(r){
|
|
913
|
-
if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var df=se((eD,uf)=>{var zt=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",of=
|
|
913
|
+
if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var df=se((eD,uf)=>{var zt=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",of=Ge("path"),
|
|
914
914
|
RT=zt?";":":",sf=nf(),af=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),cf=(e,t)=>{let r=t.colon||RT,n=e.
|
|
915
915
|
match(/\//)||zt&&e.match(/\\/)?[""]:[...zt?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],o=zt?t.pathExt||
|
|
916
916
|
process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=zt?o.split(r):[""];return zt&&e.indexOf(".")!==-1&&i[0]!==""&&i.unshift(
|
|
@@ -922,14 +922,14 @@ return h(c(l,u,m+1))})});return r?a(0).then(l=>r(null,l),r):a(0)},CT=(e,t)=>{t=t
|
|
|
922
922
|
e,t),i=[];for(let s=0;s<r.length;s++){let a=r[s],c=/^".*"$/.test(a)?a.slice(1,-1):a,l=of.join(c,e),u=!c&&/^\.[\\\/]/.test(
|
|
923
923
|
e)?e.slice(0,2)+l:l;for(let m=0;m<n.length;m++){let h=u+n[m];try{if(sf.sync(h,{pathExt:o}))if(t.all)i.push(h);else return h}catch{}}}
|
|
924
924
|
if(t.all&&i.length)return i;if(t.nothrow)return null;throw af(e)};uf.exports=lf;lf.sync=CT});var ff=se((tD,da)=>{"use strict";var pf=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?
|
|
925
|
-
"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};da.exports=pf;da.exports.default=pf});var wf=se((rD,gf)=>{"use strict";var mf=
|
|
925
|
+
"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};da.exports=pf;da.exports.default=pf});var wf=se((rD,gf)=>{"use strict";var mf=Ge("path"),NT=df(),kT=ff();function hf(e,t){let r=e.options.env||process.env,n=process.
|
|
926
926
|
cwd(),o=e.options.cwd!=null,i=o&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(e.options.cwd)}catch{}
|
|
927
927
|
let s;try{s=NT.sync(e.command,{path:r[kT({env:r})],pathExt:t?mf.delimiter:void 0})}catch{}finally{i&&process.chdir(n)}return s&&
|
|
928
928
|
(s=mf.resolve(o?e.options.cwd:"",s)),s}function $T(e){return hf(e)||hf(e,!0)}gf.exports=$T});var yf=se((nD,fa)=>{"use strict";var pa=/([()\][%!^"`<>&|;, *?])/g;function MT(e){return e=e.replace(pa,"^$1"),e}function jT(e,t){
|
|
929
929
|
return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),e=e.replace(/(?=(\\+?)?)\1$/,"$1$1"),e=`"${e}"`,e=e.replace(pa,
|
|
930
930
|
"^$1"),t&&(e=e.replace(pa,"^$1")),e}fa.exports.command=MT;fa.exports.argument=jT});var Ef=se((oD,bf)=>{"use strict";bf.exports=/^#!(.*)/});var _f=se((iD,Sf)=>{"use strict";var LT=Ef();Sf.exports=(e="")=>{let t=e.match(LT);if(!t)return null;let[r,n]=t[0].replace(
|
|
931
|
-
/#! ?/,"").split(" "),o=r.split("/").pop();return o==="env"?n:n?`${o} ${n}`:o}});var Tf=se((sD,vf)=>{"use strict";var ma=
|
|
932
|
-
ma.readSync(n,r,0,150,0),ma.closeSync(n)}catch{}return DT(r.toString())}vf.exports=BT});var Pf=se((aD,Of)=>{"use strict";var UT=
|
|
931
|
+
/#! ?/,"").split(" "),o=r.split("/").pop();return o==="env"?n:n?`${o} ${n}`:o}});var Tf=se((sD,vf)=>{"use strict";var ma=Ge("fs"),DT=_f();function BT(e){let r=Buffer.alloc(150),n;try{n=ma.openSync(e,"r"),
|
|
932
|
+
ma.readSync(n,r,0,150,0),ma.closeSync(n)}catch{}return DT(r.toString())}vf.exports=BT});var Pf=se((aD,Of)=>{"use strict";var UT=Ge("path"),If=wf(),Af=yf(),VT=Tf(),FT=process.platform==="win32",zT=/\.(?:com|exe)$/i,
|
|
933
933
|
GT=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function HT(e){e.file=If(e);let t=e.file&&VT(e.file);return t?(e.args.unshift(
|
|
934
934
|
e.file),e.command=t,If(e)):e.file}function qT(e){if(!FT)return e;let t=HT(e),r=!zT.test(t);if(e.options.forceShell||r){let n=GT.
|
|
935
935
|
test(t);e.command=UT.normalize(e.command),e.command=Af.command(e.command),e.args=e.args.map(i=>Af.argument(i,n));let o=[
|
|
@@ -939,7 +939,7 @@ windowsVerbatimArguments=!0}return e}function WT(e,t,r){t&&!Array.isArray(t)&&(r
|
|
|
939
939
|
${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function YT(e,t){
|
|
940
940
|
if(!ha)return;let r=e.emit;e.emit=function(n,o){if(n==="exit"){let i=xf(o,t);if(i)return r.call(e,"error",i)}return r.apply(
|
|
941
941
|
e,arguments)}}function xf(e,t){return ha&&e===1&&!t.file?ga(t.original,"spawn"):null}function KT(e,t){return ha&&e===1&&
|
|
942
|
-
!t.file?ga(t.original,"spawnSync"):null}Rf.exports={hookChildProcess:YT,verifyENOENT:xf,verifyENOENTSync:KT,notFoundError:ga}});var $f=se((lD,Gt)=>{"use strict";var Nf=
|
|
942
|
+
!t.file?ga(t.original,"spawnSync"):null}Rf.exports={hookChildProcess:YT,verifyENOENT:xf,verifyENOENTSync:KT,notFoundError:ga}});var $f=se((lD,Gt)=>{"use strict";var Nf=Ge("child_process"),wa=Pf(),ya=Cf();function kf(e,t,r){let n=wa(e,t,r),o=Nf.spawn(
|
|
943
943
|
n.command,n.args,n.options);return ya.hookChildProcess(o,n),o}function JT(e,t,r){let n=wa(e,t,r),o=Nf.spawnSync(n.command,
|
|
944
944
|
n.args,n.options);return o.error=o.error||ya.verifyENOENTSync(o.status,n),o}Gt.exports=kf;Gt.exports.spawn=kf;Gt.exports.
|
|
945
945
|
sync=JT;Gt.exports._parse=wa;Gt.exports._enoent=ya});function uo(e={}){let{env:t=process.env,platform:r=process.platform}=e;return r!=="win32"?"PATH":Object.keys(t).reverse().
|
|
@@ -1038,7 +1038,7 @@ if(II(e))throw new Error(`${Ee(t,r)}'s argument type is invalid: the message can
|
|
|
1038
1038
|
II=({code:e,message:t})=>AI.has(e)||OI.some(r=>t.includes(r)),AI=new Set(["ERR_MISSING_ARGS","ERR_INVALID_ARG_TYPE"]),OI=
|
|
1039
1039
|
["could not be cloned","circular structure","call stack size exceeded"],Ee=(e,t,r="")=>e==="cancelSignal"?"`cancelSignal\
|
|
1040
1040
|
`'s `controller.abort()`":`${PI(t)}${e}(${r})`,PI=e=>e?"":"subprocess.",Je=e=>e?"parent process":"subprocess",qt=e=>{e.connected&&
|
|
1041
|
-
e.disconnect()}});var Oe,Yt=d(()=>{Oe=()=>{let e={},t=new Promise((r,n)=>{Object.assign(e,{resolve:r,reject:n})});return Object.assign(t,e)}});var Eo,Kt,Pe,wm,xI,RI,ym,CI,bm,Lr,bo,Xe=d(()=>{
|
|
1041
|
+
e.disconnect()}});var Oe,Yt=d(()=>{Oe=()=>{let e={},t=new Promise((r,n)=>{Object.assign(e,{resolve:r,reject:n})});return Object.assign(t,e)}});var Eo,Kt,Pe,wm,xI,RI,ym,CI,bm,Lr,bo,Xe=d(()=>{Ve();Eo=(e,t="stdin")=>{let{options:n,fileDescriptors:o}=Pe.get(e),i=wm(o,
|
|
1042
1042
|
t,!0),s=e.stdio[i];if(s===null)throw new TypeError(ym(i,t,n,!0));return s},Kt=(e,t="stdout")=>{let{options:n,fileDescriptors:o}=Pe.
|
|
1043
1043
|
get(e),i=wm(o,t,!1),s=i==="all"?e.all:e.stdio[i];if(s==null)throw new TypeError(ym(i,t,n,!1));return s},Pe=new WeakMap,wm=
|
|
1044
1044
|
(e,t,r)=>{let n=xI(t,r);return RI(n,t,r,e),n},xI=(e,t)=>{let r=na(e);if(r!==void 0)return r;let{validOptions:n,defaultValue:o}=t?
|
|
@@ -1075,11 +1075,11 @@ ipc:!0},a)}catch(c){o.emit("strict:error",c)}return s},Am=e=>{if(e?.type!==Nm)re
|
|
|
1075
1075
|
resolve({isDeadlock:!1,hasListeners:r}),!0},Cm=async(e,t,r)=>{if(e?.type!==Co)return;let n=Oe();Ro[e.id]=n;let o=new AbortController;
|
|
1076
1076
|
try{let{isDeadlock:i,hasListeners:s}=await Promise.race([n,BI(t,r,o)]);i&&um(r),s||dm(r)}finally{o.abort(),delete Ro[e.id]}},
|
|
1077
1077
|
Ro={},BI=async(e,t,{signal:r})=>{ft(e,1,r),await LI(e,"disconnect",{signal:r}),pm(t)},Co="execa:ipc:request",Nm="execa:i\
|
|
1078
|
-
pc:response"});var km,$m,Om,Ur,No,UI,Ao=d(()=>{Yt();
|
|
1078
|
+
pc:response"});var km,$m,Om,Ur,No,UI,Ao=d(()=>{Yt();Ve();Xe();Io();km=(e,t,r)=>{Ur.has(e)||Ur.set(e,new Set);let n=Ur.get(e),o=Oe(),i=r?
|
|
1079
1079
|
t.id:void 0,s={onMessageSent:o,id:i};return n.add(s),{outgoingMessages:n,outgoingMessage:s}},$m=({outgoingMessages:e,outgoingMessage:t})=>{
|
|
1080
1080
|
e.delete(t),t.onMessageSent.resolve()},Om=async(e,t,r)=>{for(;!No(e,t)&&Ur.get(e)?.size>0;){let n=[...Ur.get(e)];Rm(n,r),
|
|
1081
1081
|
await Promise.all(n.map(({onMessageSent:o})=>o))}},Ur=new WeakMap,No=(e,t)=>t.listenerCount("message")>UI(e),UI=e=>Pe.has(
|
|
1082
|
-
e)&&!
|
|
1082
|
+
e)&&!Ue(Pe.get(e).options.buffer,"ipc")?1:0});import{promisify as VI}from"node:util";var ko,FI,xa,zI,Pa,$o=d(()=>{Wt();Ao();Io();ko=({anyProcess:e,channel:t,isSubprocess:r,
|
|
1083
1083
|
ipc:n},o,{strict:i=!1}={})=>{let s="sendMessage";return Ht({methodName:s,isSubprocess:r,ipc:n,isConnected:e.connected}),
|
|
1084
1084
|
FI({anyProcess:e,channel:t,methodName:s,isSubprocess:r,message:o,strict:i})},FI=async({anyProcess:e,channel:t,methodName:r,
|
|
1085
1085
|
isSubprocess:n,message:o,strict:i})=>{let s=xm({anyProcess:e,channel:t,isSubprocess:n,message:o,strict:i}),a=km(e,s,i);try{
|
|
@@ -1126,7 +1126,7 @@ ${e.message}`,e}},Zm=(e,t)=>{if(t===Xm())return e;let r;try{r=oA(t)}catch(n){ret
|
|
|
1126
1126
|
${n.message}
|
|
1127
1127
|
${e}`}return r.isDirectory()?e:`The "cwd" option is not a directory: ${t}.
|
|
1128
1128
|
${e}`}});import aA from"node:path";import Qm from"node:process";var eh,jo,cA,lA,La=d(()=>{eh=qE($f(),1);Vf();go();jr();va();Ca();
|
|
1129
|
-
Na();ka();$a();mt();ja();Bt();
|
|
1129
|
+
Na();ka();$a();mt();ja();Bt();Ve();jo=(e,t,r)=>{r.cwd=Jm(r.cwd);let[n,o,i]=Hm(e,t,r),{command:s,args:a,options:c}=eh.default.
|
|
1130
1130
|
_parse(n,o,i),l=_p(c),u=cA(l);return Vm(u),Km(u),qm(u),am(u),Bm(u),u.shell=Zs(u.shell),u.env=lA(u),u.killSignal=rm(u.killSignal),
|
|
1131
1131
|
u.forceKillAfterDelay=im(u.forceKillAfterDelay),u.lines=u.lines.map((m,h)=>m&&!le.has(u.encoding)&&u.buffer[h]),Qm.platform===
|
|
1132
1132
|
"win32"&&aA.basename(s,".exe")==="cmd"&&a.unshift("/q"),{file:s,commandArguments:a,options:u}},cA=({extendEnv:e=!0,preferLocal:t=!1,
|
|
@@ -1167,9 +1167,9 @@ throw c!==void 0&&lh(c,t,o,i),new xe},lh=(e,t,r,n)=>{t.contents=r(e,t,n),t.lengt
|
|
|
1167
1167
|
g")return"string";if(t!=="object"||e===null)return"others";if(globalThis.Buffer?.isBuffer(e))return"buffer";let r=uh.call(
|
|
1168
1168
|
e);return r==="[object ArrayBuffer]"?"arrayBuffer":r==="[object DataView]"?"dataView":Number.isInteger(e.byteLength)&&Number.
|
|
1169
1169
|
isInteger(e.byteOffset)&&uh.call(e.buffer)==="[object ArrayBuffer]"?"typedArray":"others"},{toString:uh}=Object.prototype,
|
|
1170
|
-
xe=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}}});var
|
|
1170
|
+
xe=class extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}}});var Fe,zr,Do,Bo,Uo,Vo=d(()=>{Fe=e=>e,zr=()=>{},Do=({contents:e})=>e,Bo=e=>{throw new Error(`Streams in object mode are n\
|
|
1171
1171
|
ot supported: ${String(e)}`)},Uo=e=>e.length});async function Fo(e,t){return Xt(e,TA,t)}var SA,_A,vA,TA,ph=d(()=>{Fr();Vo();SA=()=>({contents:[]}),_A=()=>1,vA=(e,{contents:t})=>(t.
|
|
1172
|
-
push(e),t),TA={init:SA,convertChunk:{string:
|
|
1172
|
+
push(e),t),TA={init:SA,convertChunk:{string:Fe,buffer:Fe,arrayBuffer:Fe,dataView:Fe,typedArray:Fe,others:Fe},getSize:_A,
|
|
1173
1173
|
truncateChunk:zr,addChunk:vA,getFinalChunk:zr,finalize:Do}});async function zo(e,t){return Xt(e,kA,t)}var IA,AA,OA,fh,mh,PA,xA,RA,CA,gh,hh,NA,wh,kA,yh=d(()=>{Fr();Vo();IA=()=>({contents:new ArrayBuffer(
|
|
1174
1174
|
0)}),AA=e=>OA.encode(e),OA=new TextEncoder,fh=e=>new Uint8Array(e),mh=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),
|
|
1175
1175
|
PA=(e,t)=>e.slice(0,t),xA=(e,{contents:t,length:r},n)=>{let o=wh()?CA(t,n):RA(t,n);return new Uint8Array(o).set(e,r),o},
|
|
@@ -1179,14 +1179,14 @@ r).set(new Uint8Array(e),0),r},gh=e=>hh**Math.ceil(Math.log(e)/Math.log(hh)),hh=
|
|
|
1179
1179
|
0,t),wh=()=>"resize"in ArrayBuffer.prototype,kA={init:IA,convertChunk:{string:AA,buffer:fh,arrayBuffer:fh,dataView:mh,typedArray:mh,
|
|
1180
1180
|
others:Bo},getSize:Uo,truncateChunk:PA,addChunk:xA,getFinalChunk:zr,finalize:NA}});async function Ho(e,t){return Xt(e,DA,t)}var $A,Go,MA,jA,LA,DA,bh=d(()=>{Fr();Vo();$A=()=>({contents:"",textDecoder:new TextDecoder}),
|
|
1181
1181
|
Go=(e,{textDecoder:t})=>t.decode(e,{stream:!0}),MA=(e,{contents:t})=>t+e,jA=(e,t)=>e.slice(0,t),LA=({textDecoder:e})=>{let t=e.
|
|
1182
|
-
decode();return t===""?void 0:t},DA={init:$A,convertChunk:{string:
|
|
1182
|
+
decode();return t===""?void 0:t},DA={init:$A,convertChunk:{string:Fe,buffer:Go,arrayBuffer:Go,dataView:Go,typedArray:Go,
|
|
1183
1183
|
others:Bo},getSize:Uo,truncateChunk:jA,addChunk:MA,getFinalChunk:LA,finalize:Do}});var Eh=d(()=>{ph();yh();bh();Fr()});import{on as BA}from"node:events";import{finished as UA}from"node:stream/promises";var qo=d(()=>{Ha();Eh();Object.assign(
|
|
1184
|
-
Vr,{on:BA,finished:UA})});var Sh,VA,_h,vh,FA,Th,Ih,Wo,wt=d(()=>{qo();
|
|
1184
|
+
Vr,{on:BA,finished:UA})});var Sh,VA,_h,vh,FA,Th,Ih,Wo,wt=d(()=>{qo();Be();Ve();Sh=({error:e,stream:t,readableObjectMode:r,lines:n,encoding:o,fdNumber:i})=>{
|
|
1185
1185
|
if(!(e instanceof xe))throw e;if(i==="all")return e;let s=VA(r,n,o);throw e.maxBufferInfo={fdNumber:i,unit:s},t.destroy(),
|
|
1186
1186
|
e},VA=(e,t,r)=>e?"objects":t?"lines":r==="buffer"?"bytes":"characters",_h=(e,t,r)=>{if(t.length!==r)return;let n=new xe;
|
|
1187
1187
|
throw n.maxBufferInfo={fdNumber:"ipc"},n},vh=(e,t)=>{let{streamName:r,threshold:n,unit:o}=FA(e,t);return`Command's ${r} \
|
|
1188
1188
|
was larger than ${n} ${o}`},FA=(e,t)=>{if(e?.maxBufferInfo===void 0)return{streamName:"output",threshold:t[1],unit:"byte\
|
|
1189
|
-
s"};let{maxBufferInfo:{fdNumber:r,unit:n}}=e;delete e.maxBufferInfo;let o=
|
|
1189
|
+
s"};let{maxBufferInfo:{fdNumber:r,unit:n}}=e;delete e.maxBufferInfo;let o=Ue(t,r);return r==="ipc"?{streamName:"IPC outp\
|
|
1190
1190
|
ut",threshold:o,unit:"messages"}:{streamName:Zn(r),threshold:o,unit:n}},Th=(e,t,r)=>e?.code==="ENOBUFS"&&t!==null&&t.some(
|
|
1191
1191
|
n=>n!==null&&n.length>Wo(r)),Ih=(e,t,r)=>{if(!t)return e;let n=Wo(r);return e.length>n?e.slice(0,n):e},Wo=([,e])=>e});import{inspect as zA}from"node:util";var Oh,GA,HA,qA,WA,YA,Ah,Ph=d(()=>{Ba();ce();ja();to();wt();jr();pt();Oh=({stdio:e,
|
|
1192
1192
|
all:t,ipcOutput:r,originalError:n,signal:o,signalDescription:i,exitCode:s,escapedCommand:a,timedOut:c,isCanceled:l,isGracefullyCanceled:u,
|
|
@@ -1245,7 +1245,7 @@ isecond","ms",w)}}else{let u=(r?Number(e%rO):e)/1e3%60,m=typeof t.secondsDecimal
|
|
|
1245
1245
|
return n+"0"+(t.verbose?" milliseconds":"ms");let l=t.colonNotation?":":" ";return typeof t.unitCount=="number"&&(o=o.slice(
|
|
1246
1246
|
0,Math.max(t.unitCount,1))),n+o.join(l)}var QA,eO,tO,rO,Nh=d(()=>{Ch();QA=e=>e===0||e===0n,eO=(e,t)=>t===1||t===1n?e:`${e}\
|
|
1247
1247
|
s`,tO=1e-7,rO=24n*60n*60n*1000n});var kh,$h=d(()=>{Ft();kh=(e,t)=>{e.failed&&Ae({type:"error",verboseMessage:e.shortMessage,verboseInfo:t,result:e})}});var Mh,nO,jh=d(()=>{Nh();Ke();Ft();$h();Mh=(e,t)=>{Ut(t)&&(kh(e,t),nO(e,t))},nO=(e,t)=>{let r=`(done in ${Wa(e.durationMs)}\
|
|
1248
|
-
)`;Ae({type:"duration",verboseMessage:r,verboseInfo:t,result:e})}});var Qt,Ko=d(()=>{jh();Qt=(e,t,{reject:r})=>{if(Mh(e,t),e.failed&&r)throw e;return e}});var Bh,oO,iO,Uh,Vh,Lh,sO,Ya,Dh,yt,Fh,aO,Jo,zh,cO,lO,Ka,Gh,uO,Hh,Xo,dO,Ja,pO,fO,qh,me,Zo,Xa,Wh,Yh,Qe,te=d(()=>{gt();
|
|
1248
|
+
)`;Ae({type:"duration",verboseMessage:r,verboseInfo:t,result:e})}});var Qt,Ko=d(()=>{jh();Qt=(e,t,{reject:r})=>{if(Mh(e,t),e.failed&&r)throw e;return e}});var Bh,oO,iO,Uh,Vh,Lh,sO,Ya,Dh,yt,Fh,aO,Jo,zh,cO,lO,Ka,Gh,uO,Hh,Xo,dO,Ja,pO,fO,qh,me,Zo,Xa,Wh,Yh,Qe,te=d(()=>{gt();Le();
|
|
1249
1249
|
ce();Bh=(e,t)=>yt(e)?"asyncGenerator":Fh(e)?"generator":Jo(e)?"fileUrl":cO(e)?"filePath":dO(e)?"webStream":Se(e,{checkOpen:!1})?
|
|
1250
1250
|
"native":W(e)?"uint8Array":pO(e)?"asyncIterable":fO(e)?"iterable":Ja(e)?Uh({transform:e},t):aO(e)?oO(e,t):"native",oO=(e,t)=>Va(
|
|
1251
1251
|
e.transform,{checkOpen:!1})?iO(e,t):Ja(e.transform)?Uh(e,t):sO(e,t),iO=(e,t)=>(Vh(e,t,"Duplex stream"),"duplex"),Uh=(e,t)=>(Vh(
|
|
@@ -1272,7 +1272,7 @@ a web TransformStream",duplex:"a Duplex stream",native:"any value",iterable:"an
|
|
|
1272
1272
|
le",string:"a string",uint8Array:"a Uint8Array"}});var Za,mO,hO,Kh,Qa=d(()=>{te();Za=(e,t,r,n)=>n==="output"?mO(e,t,r):hO(e,t,r),mO=(e,t,r)=>{let n=t!==0&&r[t-1].value.readableObjectMode;
|
|
1273
1273
|
return{writableObjectMode:n,readableObjectMode:e??n}},hO=(e,t,r)=>{let n=t===0?e===!0:r[t-1].value.readableObjectMode,o=t!==
|
|
1274
1274
|
r.length-1&&(e??n);return{writableObjectMode:n,readableObjectMode:o}},Kh=(e,t)=>{let r=e.findLast(({type:n})=>me.has(n));
|
|
1275
|
-
return r===void 0?!1:t==="input"?r.value.writableObjectMode:r.value.readableObjectMode}});var Jh,gO,wO,yO,bO,EO,SO,Xh=d(()=>{
|
|
1275
|
+
return r===void 0?!1:t==="input"?r.value.writableObjectMode:r.value.readableObjectMode}});var Jh,gO,wO,yO,bO,EO,SO,Xh=d(()=>{Le();mt();te();Qa();Jh=(e,t,r,n)=>[...e.filter(({type:o})=>!me.has(o)),...gO(e,t,r,n)],
|
|
1276
1276
|
gO=(e,t,r,{encoding:n})=>{let o=e.filter(({type:s})=>me.has(s)),i=Array.from({length:o.length});for(let[s,a]of Object.entries(
|
|
1277
1277
|
o))i[s]=wO({stdioItem:a,index:Number(s),newTransforms:i,optionName:t,direction:r,encoding:n});return SO(i,r)},wO=({stdioItem:e,
|
|
1278
1278
|
stdioItem:{type:t},index:r,newTransforms:n,optionName:o,direction:i,encoding:s})=>t==="duplex"?yO({stdioItem:e,optionName:o}):
|
|
@@ -1292,20 +1292,20 @@ e values.`);return n.find(Boolean)??IO},_O=({type:e,value:t},r)=>vO[r]??Qh[e](t)
|
|
|
1292
1292
|
tc=()=>"input",Qh={generator:er,asyncGenerator:er,fileUrl:er,filePath:er,iterable:tc,asyncIterable:tc,uint8Array:tc,webStream:e=>Xo(
|
|
1293
1293
|
e)?"output":"input",nodeStream(e){return ht(e,{checkOpen:!1})?Ua(e,{checkOpen:!1})?void 0:"input":"output"},webTransform:er,
|
|
1294
1294
|
duplex:er,native(e){let t=TO(e);if(t!==void 0)return t;if(Se(e,{checkOpen:!1}))return Qh.nodeStream(e)}},TO=e=>{if([0,ec.
|
|
1295
|
-
stdin].includes(e))return"input";if([1,2,ec.stdout,ec.stderr].includes(e))return"output"},IO="output"});var tg,rg=d(()=>{tg=(e,t)=>t&&!e.includes("ipc")?[...e,"ipc"]:e});var ng,AO,OO,og,PO,xO,ig=d(()=>{
|
|
1295
|
+
stdin].includes(e))return"input";if([1,2,ec.stdout,ec.stderr].includes(e))return"output"},IO="output"});var tg,rg=d(()=>{tg=(e,t)=>t&&!e.includes("ipc")?[...e,"ipc"]:e});var ng,AO,OO,og,PO,xO,ig=d(()=>{Be();rg();Ke();ng=({stdio:e,ipc:t,buffer:r,...n},o,i)=>{let s=AO(e,n).map((a,c)=>og(a,c));
|
|
1296
1296
|
return i?PO(s,r,o):tg(s,t)},AO=(e,t)=>{if(e===void 0)return fe.map(n=>t[n]);if(OO(t))throw new Error(`It's not possible \
|
|
1297
1297
|
to provide \`stdio\` in combination with one of ${fe.map(n=>`\`${n}\``).join(", ")}`);if(typeof e=="string")return[e,e,e];
|
|
1298
1298
|
if(!Array.isArray(e))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof e}\``);
|
|
1299
1299
|
let r=Math.max(e.length,fe.length);return Array.from({length:r},(n,o)=>e[o])},OO=e=>fe.some(t=>e[t]!==void 0),og=(e,t)=>Array.
|
|
1300
1300
|
isArray(e)?e.map(r=>og(r,t)):e??(t>=fe.length?"ignore":"pipe"),PO=(e,t,r)=>e.map((n,o)=>!t[o]&&o!==0&&!Vt(r,o)&&xO(n)?"i\
|
|
1301
|
-
gnore":n),xO=e=>e==="pipe"||Array.isArray(e)&&e.every(t=>t==="pipe")});import{readFileSync as RO}from"node:fs";import CO from"node:tty";var ag,NO,kO,$O,MO,sg,cg=d(()=>{gt();
|
|
1301
|
+
gnore":n),xO=e=>e==="pipe"||Array.isArray(e)&&e.every(t=>t==="pipe")});import{readFileSync as RO}from"node:fs";import CO from"node:tty";var ag,NO,kO,$O,MO,sg,cg=d(()=>{gt();Be();ce();Xe();ag=
|
|
1302
1302
|
({stdioItem:e,stdioItem:{type:t},isStdioArray:r,fdNumber:n,direction:o,isSync:i})=>!r||t!=="native"?e:i?NO({stdioItem:e,
|
|
1303
1303
|
fdNumber:n,direction:o}):MO({stdioItem:e,fdNumber:n}),NO=({stdioItem:e,stdioItem:{value:t,optionName:r},fdNumber:n,direction:o})=>{
|
|
1304
1304
|
let i=kO({value:t,optionName:r,fdNumber:n,direction:o});if(i!==void 0)return i;if(Se(t,{checkOpen:!1}))throw new TypeError(
|
|
1305
1305
|
`The \`${r}: Stream\` option cannot both be an array and include a stream with synchronous methods.`);return e},kO=({value:e,
|
|
1306
1306
|
optionName:t,fdNumber:r,direction:n})=>{let o=$O(e,r);if(o!==void 0){if(n==="output")return{type:"fileNumber",value:o,optionName:t};
|
|
1307
1307
|
if(CO.isatty(o))throw new TypeError(`The \`${t}: ${bo(e)}\` option is invalid: it cannot be a TTY with synchronous method\
|
|
1308
|
-
s.`);return{type:"uint8Array",value:
|
|
1308
|
+
s.`);return{type:"uint8Array",value:De(RO(o)),optionName:t}}},$O=(e,t)=>{if(e==="inherit")return t;if(typeof e=="number")
|
|
1309
1309
|
return e;let r=Xn.indexOf(e);if(r!==-1)return r},MO=({stdioItem:e,stdioItem:{value:t,optionName:r},fdNumber:n})=>t==="in\
|
|
1310
1310
|
herit"?{type:"nodeStream",value:sg(n,t,r),optionName:r}:typeof t=="number"?{type:"nodeStream",value:sg(t,t,r),optionName:r}:
|
|
1311
1311
|
Se(t,{checkOpen:!1})?{type:"nodeStream",value:t,optionName:r}:e,sg=(e,t,r)=>{let n=Xn[e];if(n===void 0)throw new TypeError(
|
|
@@ -1324,7 +1324,7 @@ fg=({otherStdioItems:e,type:t,value:r,optionName:n,direction:o})=>{let i=e.filte
|
|
|
1324
1324
|
find(a=>a.direction!==o);return mg(s,n,t),o==="output"?i[0].stream:void 0},FO=({type:e,value:t},r)=>e==="filePath"?t.file===
|
|
1325
1325
|
r.file:e==="fileUrl"?t.href===r.href:t===r,zO=({otherStdioItems:e,type:t,value:r,optionName:n})=>{let o=e.find(({value:{
|
|
1326
1326
|
transform:i}})=>i===r.transform);mg(o,n,t)},mg=(e,t,r)=>{if(e!==void 0)throw new TypeError(`The \`${e.optionName}\` and \`${t}\
|
|
1327
|
-
\` options must not target ${Qe[r]} that is the same.`)}});var Qo,GO,HO,qO,WO,YO,KO,JO,XO,ZO,QO,eP,rc,tP,ei=d(()=>{
|
|
1327
|
+
\` options must not target ${Qe[r]} that is the same.`)}});var Qo,GO,HO,qO,WO,YO,KO,JO,XO,ZO,QO,eP,rc,tP,ei=d(()=>{Be();Xh();Qa();te();eg();ig();cg();ug();hg();Qo=(e,t,r,n)=>{let i=ng(
|
|
1328
1328
|
t,r,n).map((a,c)=>GO({stdioOption:a,fdNumber:c,options:t,isSync:n})),s=ZO({initialFileDescriptors:i,addProperties:e,options:t,
|
|
1329
1329
|
isSync:n});return t.stdio=s.map(({stdioItems:a})=>tP(a)),s},GO=({stdioOption:e,fdNumber:t,options:r,isSync:n})=>{let o=Zn(
|
|
1330
1330
|
t),{stdioItems:i,isStdioArray:s}=HO({stdioOption:e,fdNumber:t,options:r,optionName:o}),a=Zh(i,t,o),c=i.map(m=>ag({stdioItem:m,
|
|
@@ -1349,10 +1349,10 @@ return t==="native"?r:"pipe"}});import{readFileSync as gg}from"node:fs";var yg,R
|
|
|
1349
1349
|
optionName:t})=>{bg(t,Qe[e])},rP=({optionName:e,value:t})=>((t==="ipc"||t==="overlapped")&&bg(e,`"${t}"`),{}),bg=(e,t)=>{
|
|
1350
1350
|
throw new TypeError(`The \`${e}\` option cannot be ${t} with synchronous methods.`)},wg={generator(){},asyncGenerator:Re,
|
|
1351
1351
|
webStream:Re,nodeStream:Re,webTransform:Re,duplex:Re,asyncIterable:Re,native:rP},nP={input:{...wg,fileUrl:({value:e})=>({
|
|
1352
|
-
contents:[
|
|
1352
|
+
contents:[De(gg(e))]}),filePath:({value:{file:e}})=>({contents:[De(gg(e))]}),fileNumber:Re,iterable:({value:e})=>({contents:[
|
|
1353
1353
|
...e]}),string:({value:e})=>({contents:[e]}),uint8Array:({value:e})=>({contents:[e]})},output:{...wg,fileUrl:({value:e})=>({
|
|
1354
1354
|
path:e}),filePath:({value:{file:e,append:t}})=>({path:e,append:t}),fileNumber:({value:e})=>({path:e}),iterable:Re,string:Re,
|
|
1355
|
-
uint8Array:Re}}});var
|
|
1355
|
+
uint8Array:Re}}});var ze,nc,qr=d(()=>{Ba();ze=(e,{stripFinalNewline:t},r)=>nc(t,r)&&e!==void 0&&!Array.isArray(e)?Jt(e):e,nc=(e,t)=>t==="a\
|
|
1356
1356
|
ll"?e[1]||e[2]:e[t]});var ti,ic,Sg,_g,oP,iP,sP,vg,aP,oc,cP,lP,uP,ri=d(()=>{ti=(e,t,r,n)=>e||r?void 0:_g(t,n),ic=(e,t,r)=>r?e.flatMap(n=>Sg(n,t)):
|
|
1357
1357
|
Sg(e,t),Sg=(e,t)=>{let{transform:r,final:n}=_g(t,{});return[...r(e),...n()]},_g=(e,t)=>(t.previousChunks="",{transform:oP.
|
|
1358
1358
|
bind(void 0,t,e),final:sP.bind(void 0,t)}),oP=function*(e,t,r){if(typeof r!="string"){yield r;return}let{previousChunks:n}=e,
|
|
@@ -1374,7 +1374,7 @@ must yield a string or an Uint8Array, not ${typeof t}.`);yield t},Ag=(e,t)=>{if(
|
|
|
1374
1374
|
Instead, \`yield\` should either be called with a value, or not be called at all. For example:
|
|
1375
1375
|
if (condition) { yield value; }`)}});import{Buffer as hP}from"node:buffer";import{StringDecoder as gP}from"node:string_decoder";var ni,wP,yP,bP,sc=d(()=>{ce();
|
|
1376
1376
|
ni=(e,t,r)=>{if(r)return;if(e)return{transform:wP.bind(void 0,new TextEncoder)};let n=new gP(t);return{transform:yP.bind(
|
|
1377
|
-
void 0,n),final:bP.bind(void 0,n)}},wP=function*(e,t){hP.isBuffer(t)?yield
|
|
1377
|
+
void 0,n),final:bP.bind(void 0,n)}},wP=function*(e,t){hP.isBuffer(t)?yield De(t):typeof t=="string"?yield e.encode(t):yield t},
|
|
1378
1378
|
yP=function*(e,t){yield W(t)?e.write(t):t},bP=function*(e){let t=e.end();t!==""&&(yield t)}});import{callbackify as Pg}from"node:util";var ac,oi,xg,EP,Rg,SP,Cg=d(()=>{ac=Pg(async(e,t,r,n)=>{t.currentIterable=e(...r);
|
|
1379
1379
|
try{for await(let o of t.currentIterable)n.push(o)}finally{delete t.currentIterable}}),oi=async function*(e,t,r){if(r===
|
|
1380
1380
|
t.length){yield e;return}let{transform:n=SP}=t[r];for await(let o of n(e))yield*oi(o,t,r+1)},xg=async function*(e){for(let[
|
|
@@ -1405,7 +1405,7 @@ verboseInfo:r})}});import{writeFileSync as NP,appendFileSync as kP}from"node:fs"
|
|
|
1405
1405
|
Ug=({fileDescriptors:e,syncResult:{output:t},options:r,isMaxBuffer:n,verboseInfo:o})=>{if(t===null)return{output:Array.from(
|
|
1406
1406
|
{length:3})};let i={},s=new Set([]);return{output:t.map((c,l)=>$P({result:c,fileDescriptors:e,fdNumber:l,state:i,outputFiles:s,
|
|
1407
1407
|
isMaxBuffer:n,verboseInfo:o},r)),...i}},$P=({result:e,fileDescriptors:t,fdNumber:r,state:n,outputFiles:o,isMaxBuffer:i,verboseInfo:s},{
|
|
1408
|
-
buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:m})=>{if(e===null)return;let h=Ih(e,i,m),p=
|
|
1408
|
+
buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:m})=>{if(e===null)return;let h=Ih(e,i,m),p=De(h),{stdioItems:g,
|
|
1409
1409
|
objectMode:y}=t[r],S=MP([p],g,c,n),{serializedResult:f,finalResult:w=f}=jP({chunks:S,objectMode:y,encoding:c,lines:l,stripFinalNewline:u,
|
|
1410
1410
|
fdNumber:r});LP({serializedResult:f,fdNumber:r,state:n,verboseInfo:s,encoding:c,stdioItems:g,objectMode:y});let b=a[r]?w:
|
|
1411
1411
|
void 0;try{return n.error===void 0&&DP(f,g,o),b}catch(E){return n.error=E,b}},MP=(e,t,r,n)=>{try{return ii(e,t,r,!1)}catch(o){
|
|
@@ -1415,7 +1415,7 @@ if(r==="buffer")return{serializedResult:Cr(e)};let s=mp(e,r);return n[i]?{serial
|
|
|
1415
1415
|
if(!ai({stdioItems:i,encoding:o,verboseInfo:n,fdNumber:t}))return;let a=ic(e,!1,s);try{Dg(a,t,n)}catch(c){r.error??=c}},
|
|
1416
1416
|
DP=(e,t,r)=>{for(let{path:n,append:o}of t.filter(({type:i})=>Zo.has(i))){let i=typeof n=="string"?n:n.toString();o||r.has(
|
|
1417
1417
|
i)?kP(n,e):(r.add(i),NP(n,e))}}});var Fg,zg=d(()=>{ce();qr();Fg=([,e,t],r)=>{if(r.all)return e===void 0?t:t===void 0?e:Array.isArray(e)?Array.isArray(t)?[
|
|
1418
|
-
...e,...t]:[...e,
|
|
1418
|
+
...e,...t]:[...e,ze(t,r,"all")]:Array.isArray(t)?[ze(e,r,"all"),...t]:W(e)&&W(t)?ea([e,t]):`${e}${t}`}});import{once as pc}from"node:events";var Gg,BP,Hg,qg,UP,fc,mc=d(()=>{pt();Gg=async(e,t)=>{let[r,n]=await BP(e);return t.isForcefullyTerminated??=
|
|
1419
1419
|
!1,[r,n]},BP=async e=>{let[t,r]=await Promise.allSettled([pc(e,"spawn"),pc(e,"exit")]);return t.status==="rejected"?[]:r.
|
|
1420
1420
|
status==="rejected"?Hg(e):r.value},Hg=async e=>{try{return await pc(e,"exit")}catch{return Hg(e)}},qg=async e=>{let[t,r]=await e;
|
|
1421
1421
|
if(!UP(t,r)&&fc(t,r))throw new be;return[t,r]},UP=(e,t)=>e===void 0&&t===void 0,fc=(e,t)=>e!==0||t!==null});var Wg,VP,Yg=d(()=>{pt();wt();mc();Wg=({error:e,status:t,signal:r,output:n},{maxBuffer:o})=>{let i=VP(e,t,r),s=i?.code===
|
|
@@ -1431,7 +1431,7 @@ l")},ci=e=>{throw new TypeError(`The "${e}" option cannot be used with synchrono
|
|
|
1431
1431
|
options:r,command:n,escapedCommand:o,verboseInfo:i,fileDescriptors:s,startTime:a})=>{let c=WP({file:e,commandArguments:t,
|
|
1432
1432
|
options:r,command:n,escapedCommand:o,fileDescriptors:s,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:m,
|
|
1433
1433
|
timedOut:h,isMaxBuffer:p}=Wg(c,r),{output:g,error:y=l}=Ug({fileDescriptors:s,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:i}),
|
|
1434
|
-
S=g.map((w,b)=>
|
|
1434
|
+
S=g.map((w,b)=>ze(w,r,b)),f=ze(Fg(g,r),r,"all");return KP({error:y,exitCode:u,signal:m,timedOut:h,isMaxBuffer:p,stdio:S,
|
|
1435
1435
|
all:f,options:r,command:n,escapedCommand:o,startTime:a})},WP=({file:e,commandArguments:t,options:r,command:n,escapedCommand:o,
|
|
1436
1436
|
fileDescriptors:i,startTime:s})=>{try{Mg(i,r);let a=YP(r);return FP(...Lo(e,t,a))}catch(a){return Zt({error:a,command:n,
|
|
1437
1437
|
escapedCommand:o,fileDescriptors:i,options:r,startTime:s,isSync:!0})}},YP=({encoding:e,maxBuffer:t,...r})=>({...r,encoding:"\
|
|
@@ -1494,10 +1494,10 @@ aborted||!r.has(t))return;yw(s)?o.add(t):bw(e,s)}},xx=async({stream:e,streams:t,
|
|
|
1494
1494
|
signal:i}})=>{if(await fw(e,o,{signal:i}),!e.readable)return fw(i,"abort",{signal:i});t.delete(e),r.delete(e),n.delete(e)},
|
|
1495
1495
|
Rx=e=>{e.writable&&e.end()},ww=(e,t)=>{yw(t)?Sc(e):bw(e,t)},yw=e=>e?.code==="ERR_STREAM_PREMATURE_CLOSE",Sc=e=>{(e.readable||
|
|
1496
1496
|
e.writable)&&e.destroy()},bw=(e,t)=>{e.destroyed||(e.once("error",Cx),e.destroy(t))},Cx=()=>{},li=(e,t)=>{let r=e.getMaxListeners();
|
|
1497
|
-
r!==0&&r!==Number.POSITIVE_INFINITY&&e.setMaxListeners(r+t)},mw=2,hw=1});import{finished as Ew}from"node:stream/promises";var tr,Nx,_c,kx,vc,di=d(()=>{
|
|
1497
|
+
r!==0&&r!==Number.POSITIVE_INFINITY&&e.setMaxListeners(r+t)},mw=2,hw=1});import{finished as Ew}from"node:stream/promises";var tr,Nx,_c,kx,vc,di=d(()=>{Be();tr=(e,t)=>{e.pipe(t),Nx(e,t),kx(e,t)},
|
|
1498
1498
|
Nx=async(e,t)=>{if(!(ye(e)||ye(t))){try{await Ew(e,{cleanup:!0,readable:!0,writable:!1})}catch{}_c(t)}},_c=e=>{e.writable&&
|
|
1499
1499
|
e.end()},kx=async(e,t)=>{if(!(ye(e)||ye(t))){try{await Ew(t,{cleanup:!0,readable:!1,writable:!0})}catch{}vc(e)}},vc=e=>{
|
|
1500
|
-
e.readable&&e.destroy()}});var Sw,$x,Mx,jx,Lx,Dx,_w=d(()=>{ui();
|
|
1500
|
+
e.readable&&e.destroy()}});var Sw,$x,Mx,jx,Lx,Dx,_w=d(()=>{ui();Be();So();te();di();Sw=(e,t,r)=>{let n=new Map;for(let[o,{stdioItems:i,direction:s}]of Object.
|
|
1501
1501
|
entries(t)){for(let{stream:a}of i.filter(({type:c})=>me.has(c)))$x(e,a,s,o);for(let{stream:a}of i.filter(({type:c})=>!me.
|
|
1502
1502
|
has(c)))jx({subprocess:e,stream:a,direction:s,fdNumber:o,pipeGroups:n,controller:r})}for(let[o,i]of n.entries()){let s=i.
|
|
1503
1503
|
length===1?i[0]:Et(i);tr(s,o)}},$x=(e,t,r,n)=>{r==="output"?tr(e.stdio[n],t):tr(t,e.stdio[n]);let o=Mx[n];o!==void 0&&(e[o]=
|
|
@@ -1549,7 +1549,7 @@ has(t)?Yx(e,t):Wx(e,t);return ft(e,Jx,r.signal),ft(t,Xx,r.signal),Kx(t),n},Wx=(e
|
|
|
1549
1549
|
t,r),r},Yx=(e,t)=>{let r=mi.get(t);return r.add(e),r},Kx=async e=>{try{await qx(e,{cleanup:!0,readable:!1,writable:!0})}catch{}
|
|
1550
1550
|
mi.delete(e)},mi=new WeakMap,Jx=2,Xx=1});import{aborted as Zx}from"node:util";var Lw,Qx,Dw=d(()=>{Cc();Lw=(e,t)=>e===void 0?[]:[Qx(e,t)],Qx=async(e,{sourceStream:t,
|
|
1551
1551
|
mergedStream:r,fileDescriptors:n,sourceOptions:o,startTime:i})=>{await Zx(e,t),await r.remove(t);let s=new Error("Pipe c\
|
|
1552
|
-
anceled by `unpipeSignal` option.");throw Rc({error:s,fileDescriptors:n,sourceOptions:o,startTime:i})}});var hi,eR,tR,Bw=d(()=>{
|
|
1552
|
+
anceled by `unpipeSignal` option.");throw Rc({error:s,fileDescriptors:n,sourceOptions:o,startTime:i})}});var hi,eR,tR,Bw=d(()=>{Le();Rw();Cc();$w();jw();Dw();hi=(e,...t)=>{if(H(t[0]))return hi.bind(void 0,{...e,boundOptions:{
|
|
1553
1553
|
...e.boundOptions,...t[0]}});let{destination:r,...n}=xw(e,...t),o=eR({...n,destination:r});return o.pipe=hi.bind(void 0,
|
|
1554
1554
|
{...e,source:r,sourcePromise:o,boundOptions:{}}),o},eR=async({sourcePromise:e,sourceStream:t,sourceOptions:r,sourceError:n,
|
|
1555
1555
|
destination:o,destinationStream:i,destinationError:s,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=tR(e,o);Nw({
|
|
@@ -1593,10 +1593,10 @@ verboseInfo:c,streamInfo:l}),u]);return m}});var qw,Ww,yR,bR,Bc=d(()=>{ui();Dc()
|
|
|
1593
1593
|
encoding:t,buffer:r,maxBuffer:n,lines:o,stripFinalNewline:i,verboseInfo:s,streamInfo:a})=>Lc({...yR(e,r),fdNumber:"all",
|
|
1594
1594
|
encoding:t,maxBuffer:n[1]+n[2],lines:o[1]||o[2],allMixed:bR(e),stripFinalNewline:i,verboseInfo:s,streamInfo:a}),yR=({stdout:e,
|
|
1595
1595
|
stderr:t,all:r},[,n,o])=>{let i=n||o;return i?n?o?{stream:r,buffer:i}:{stream:e,buffer:i}:{stream:t,buffer:i}:{stream:r,
|
|
1596
|
-
buffer:i}},bR=({all:e,stdout:t,stderr:r})=>e&&t&&r&&t.readableObjectMode!==r.readableObjectMode});var Yw,Kw,Jw=d(()=>{Ft();Ke();Yw=e=>Vt(e,"ipc"),Kw=(e,t)=>{let r=io(e);Ae({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:t})}});var Xw,Zw,Qw=d(()=>{wt();Jw();
|
|
1597
|
-
if(!n)return o;let s=Yw(i),a=
|
|
1596
|
+
buffer:i}},bR=({all:e,stdout:t,stderr:r})=>e&&t&&r&&t.readableObjectMode!==r.readableObjectMode});var Yw,Kw,Jw=d(()=>{Ft();Ke();Yw=e=>Vt(e,"ipc"),Kw=(e,t)=>{let r=io(e);Ae({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:t})}});var Xw,Zw,Qw=d(()=>{wt();Jw();Ve();wc();Xw=async({subprocess:e,buffer:t,maxBuffer:r,ipc:n,ipcOutput:o,verboseInfo:i})=>{
|
|
1597
|
+
if(!n)return o;let s=Yw(i),a=Ue(t,"ipc"),c=Ue(r,"ipc");for await(let l of gc({anyProcess:e,channel:e.channel,isSubprocess:!1,
|
|
1598
1598
|
ipc:n,shouldAwait:!1,reference:!0}))a&&(_h(e,o,c),o.push(l)),s&&Kw(l,i);return o},Zw=async(e,t)=>(await Promise.allSettled(
|
|
1599
|
-
[e]),t)});import{once as ER}from"node:events";var ey,SR,_R,vR,ty=d(()=>{gt();Na();va();Ca();
|
|
1599
|
+
[e]),t)});import{once as ER}from"node:events";var ey,SR,_R,vR,ty=d(()=>{gt();Na();va();Ca();Be();te();Mc();Qw();$a();Bc();Dc();mc();
|
|
1600
1600
|
bi();ey=async({subprocess:e,options:{encoding:t,buffer:r,maxBuffer:n,lines:o,timeoutDuration:i,cancelSignal:s,gracefulCancel:a,
|
|
1601
1601
|
forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:m},context:h,verboseInfo:p,fileDescriptors:g,originalStreams:y,
|
|
1602
1602
|
onInternalError:S,controller:f})=>{let w=Gg(e,h),b={originalStreams:y,fileDescriptors:g,subprocess:e,exitPromise:w,propagating:!1},
|
|
@@ -1665,14 +1665,14 @@ context:m,controller:l}),c.all=qw(c,r),fy(c,r),nw(c,r);let p=VR({subprocess:c,op
|
|
|
1665
1665
|
originalStreams:u,command:i,escapedCommand:s,context:m,onInternalError:h,controller:l});return{subprocess:c,promise:p}},
|
|
1666
1666
|
VR=async({subprocess:e,options:t,startTime:r,verboseInfo:n,fileDescriptors:o,originalStreams:i,command:s,escapedCommand:a,
|
|
1667
1667
|
context:c,onInternalError:l,controller:u})=>{let[m,[h,p],g,y,S]=await ey({subprocess:e,options:t,context:c,verboseInfo:n,
|
|
1668
|
-
fileDescriptors:o,originalStreams:i,onInternalError:l,controller:u});u.abort(),l.resolve();let f=g.map((E,v)=>
|
|
1669
|
-
w=
|
|
1668
|
+
fileDescriptors:o,originalStreams:i,onInternalError:l,controller:u});u.abort(),l.resolve();let f=g.map((E,v)=>ze(E,t,v)),
|
|
1669
|
+
w=ze(y,t,"all"),b=FR({errorInfo:m,exitCode:h,signal:p,stdio:f,all:w,ipcOutput:S,context:c,options:t,command:s,escapedCommand:a,
|
|
1670
1670
|
startTime:r});return Qt(b,n,t)},FR=({errorInfo:e,exitCode:t,signal:r,stdio:n,all:o,ipcOutput:i,context:s,options:a,command:c,
|
|
1671
1671
|
escapedCommand:l,startTime:u})=>"error"in e?Gr({error:e.error,command:c,escapedCommand:l,timedOut:s.terminationReason===
|
|
1672
1672
|
"timeout",isCanceled:s.terminationReason==="cancel"||s.terminationReason==="gracefulCancel",isGracefullyCanceled:s.terminationReason===
|
|
1673
1673
|
"gracefulCancel",isMaxBuffer:e.error instanceof xe,isForcefullyTerminated:s.isForcefullyTerminated,exitCode:t,signal:r,stdio:n,
|
|
1674
|
-
all:o,ipcOutput:i,options:a,startTime:u,isSync:!1}):Yo({command:c,escapedCommand:l,stdio:n,all:o,ipcOutput:i,options:a,startTime:u})});var vi,zR,GR,by=d(()=>{
|
|
1675
|
-
...e,...r}},zR=(e,t,r)=>GR.has(e)&&H(t)&&H(r)?{...t,...r}:r,GR=new Set(["env",...oa])});var et,HR,qR,Ey=d(()=>{
|
|
1674
|
+
all:o,ipcOutput:i,options:a,startTime:u,isSync:!1}):Yo({command:c,escapedCommand:l,stdio:n,all:o,ipcOutput:i,options:a,startTime:u})});var vi,zR,GR,by=d(()=>{Le();Ve();vi=(e,t)=>{let r=Object.fromEntries(Object.entries(t).map(([n,o])=>[n,zR(n,e[n],o)]));return{
|
|
1675
|
+
...e,...r}},zR=(e,t,r)=>GR.has(e)&&H(t)&&H(r)?{...t,...r}:r,GR=new Set(["env",...oa])});var et,HR,qR,Ey=d(()=>{Le();Qs();Ep();Jg();yy();by();et=(e,t,r,n)=>{let o=(s,a,c)=>et(s,a,r,c),i=(...s)=>HR({mapArguments:e,
|
|
1676
1676
|
deepOptions:r,boundOptions:t,setBoundExeca:n,createNested:o},...s);return n!==void 0&&n(i,o,t),i},HR=({mapArguments:e,deepOptions:t={},
|
|
1677
1677
|
boundOptions:r={},setBoundExeca:n,createNested:o},i,...s)=>{if(H(i))return o(e,vi(r,i),n);let{file:a,commandArguments:c,
|
|
1678
1678
|
options:l,isSync:u}=qR({mapArguments:e,firstArgument:i,nextArguments:s,deepOptions:t,boundOptions:r});return u?Kg(a,c,l):
|
|
@@ -1754,7 +1754,7 @@ data",S=>{a=`${a}${String(S||"")}`.slice(-4096)}),s.stdout.on("data",S=>{p+=Stri
|
|
|
1754
1754
|
."}`,r))})}))return await i.close(),null;let u=!1;return async()=>{if(!u){u=!0;try{if(s.stdin.end(`release
|
|
1755
1755
|
`),(await c).code!==0)throw xi(`Exclusive file lock process exited unexpectedly${a?`: ${a.trim()}`:"."}`,r)}finally{await i.
|
|
1756
1756
|
close()}}}}catch(l){throw s?.stdin?.destroy(),s?.kill?.("SIGTERM"),await c,await i.close().catch(()=>null),l?.code===r?l:
|
|
1757
|
-
xi(l?.message||String(l||"Exclusive file lock failed."),r)}}var hl,Jy=d(()=>{hl="file_lock_failed"});var Ri=d(()=>{By();Vy();al();sl();cl();Pi();Yy();pl();Jy()});var Xy=d(()=>{Ri()});function _C(e={}){return
|
|
1757
|
+
xi(l?.message||String(l||"Exclusive file lock failed."),r)}}var hl,Jy=d(()=>{hl="file_lock_failed"});var Ri=d(()=>{By();Vy();al();sl();cl();Pi();Yy();pl();Jy()});var Xy=d(()=>{Ri()});function _C(e={}){return je(e.userKey,e.project?.ownerUserKey,e.project?.ownerUsername,e.project?.ownerUser?.username,e.
|
|
1758
1758
|
session?.metadata?.session_git_command_actor_user_key)}async function Zy(e={}){let t=N(e.actor)||"daemon";if(t==="daemon"||
|
|
1759
1759
|
t==="app")return{actor:t,credentialScope:t,requiresRealUser:!1,user:qs()};let r=_C(e);if(!r){let n=new Error("A user key\
|
|
1760
1760
|
is required for real-user command execution.");throw n.code="vibe64_command_actor_user_required",n}return{actor:t,credentialScope:"\
|
|
@@ -1771,10 +1771,10 @@ G();ar=Object.freeze(["DATABASE_URL","DB_CLIENT","DB_DATABASE","DB_HOST","DB_NAM
|
|
|
1771
1771
|
_USERNAME","MYSQL_DATABASE","MYSQL_HOST","MYSQL_PWD","MYSQL_TCP_PORT","PGDATABASE","PGHOST","PGPASSWORD","PGPORT","PGUSE\
|
|
1772
1772
|
R","VIBE64_MYSQL_USER"])});import{spawnSync as vC}from"node:child_process";import{statSync as TC}from"node:fs";import IC from"node:path";function gl(e="",t="\
|
|
1773
1773
|
vibe64"){return N(e).toLowerCase().replace(/[^a-z0-9-]+/gu,"-").replace(/^-+|-+$/gu,"").slice(0,63)||t}function PC(...e){
|
|
1774
|
-
for(let t of e){let r=ie(t),n=ie(r.user),o=
|
|
1775
|
-
n.user_name),i=
|
|
1774
|
+
for(let t of e){let r=ie(t),n=ie(r.user),o=je(r.name,r.userName,r.user_name,r.gitUserName,r.git_user_name,n.name,n.userName,
|
|
1775
|
+
n.user_name),i=je(r.email,r.userEmail,r.user_email,r.gitUserEmail,r.git_user_email,n.email,n.userEmail,n.user_email);if(o&&
|
|
1776
1776
|
i)return{authorEmail:i,authorName:o,committerEmail:i,committerName:o,source:"configured"}}return null}function xC(e={}){
|
|
1777
|
-
let t=ie(e),r=
|
|
1777
|
+
let t=ie(e),r=je(t.name,t.displayName,t.login,t.username),n=je(t.email,t.publicEmail,t.verifiedEmail);return!r||!n?null:
|
|
1778
1778
|
{authorEmail:n,authorName:r,committerEmail:n,committerName:r,source:"github"}}function ib({workspace:e="",userKey:t=""}={}){
|
|
1779
1779
|
let r=gl(t,"user"),n=gl(e,"local");return{authorEmail:`${r}@${n}${rb}`,authorName:`${r} via Vibe64`,committerEmail:`vibe\
|
|
1780
1780
|
64@${n}${rb}`,committerName:"Vibe64",source:"fallback"}}function nb(e=""){let t=N(e);if(!t||!IC.isAbsolute(t))return"";try{
|
|
@@ -1786,8 +1786,8 @@ if(!t||typeof t!="object")return null;let r={...t,PATH:process.env.PATH||t.PATH}
|
|
|
1786
1786
|
{};return!o.name||!o.email?null:{authorEmail:o.email,authorName:o.name,committerEmail:o.email,committerName:o.name,source:"\
|
|
1787
1787
|
git-config"}}function ab({actor:e={},env:t=process.env,gitConfig:r=null,project:n={},session:o={},userKey:i=""}={}){let s=ie(
|
|
1788
1788
|
o.metadata);return PC(n.gitIdentity,n.config?.git,o.gitIdentity,s.git_identity,{name:t.VIBE64_GIT_USER_NAME,email:t.VIBE64_GIT_USER_EMAIL})||
|
|
1789
|
-
sb(r||{})||xC(n.githubUser||o.githubUser||s.github_user)||ib({workspace:
|
|
1790
|
-
userKey:
|
|
1789
|
+
sb(r||{})||xC(n.githubUser||o.githubUser||s.github_user)||ib({workspace:je(n.workspace,t.VIBE64_WORKSPACE,t.VIBE64_RUNTIME_NAMESPACE),
|
|
1790
|
+
userKey:je(i,e.user?.username,t.VIBE64_GIT_USER_KEY,t.VIBE64_USER_KEY,t.VIBE64_USER,t.USER,t.LOGNAME)})}function RC(e){return{
|
|
1791
1791
|
[lr]:e.authorEmail,[cr]:e.authorName,[dr]:e.committerEmail,[ur]:e.committerName}}function wl(e={}){return RC(ab(e))}var cr,
|
|
1792
1792
|
lr,ur,dr,rb,AC,OC,cn=d(()=>{G();cr="GIT_AUTHOR_NAME",lr="GIT_AUTHOR_EMAIL",ur="GIT_COMMITTER_NAME",dr="GIT_COMMITTER_EMA\
|
|
1793
1793
|
IL",rb=".users.vibe64.invalid",AC=2e3,OC=['git config --global user.name "Your Name"','git config --global user.email "y\
|
|
@@ -1945,21 +1945,21 @@ scopeDrainCompletion}catch(t){gr(e,t)}try{await Promise.all([$b(e,e.stopReason||
|
|
|
1945
1945
|
gr(e,t)}Mb(e)}function Lb({args:e,command:t,commandPreview:r,cwd:n=process.cwd(),env:o={},maxRunning:i=0,metadata:s=null,
|
|
1946
1946
|
namespace:a="default",namespaceLimitPrefix:c="",runningLimitFilter:l=null,onClose:u=null,onOutput:m=null,onStop:h=null,reuseRunning:p=!1,
|
|
1947
1947
|
detachedIdleTimeoutMs:g=0}){let y=aN(a);if(y)return y;let S=Hi(a),f=QC.randomUUID(),w=typeof p=="function"?p:()=>!!p,b=p?
|
|
1948
|
-
[...S.values()].find(
|
|
1948
|
+
[...S.values()].find(z=>Fl(z)&&w(z)):null;if(b)return hr(b);let E=Number(i||0),v=c||a;if(E>0&&bN({filter:l,namespacePrefix:v})>=
|
|
1949
1949
|
E)return{ok:!1,code:"terminal_limit",error:`Terminal limit reached (${E}).`};let _=typeof o=="function"?o({id:f,namespace:a}):
|
|
1950
1950
|
o,T=typeof e=="function"?e({env:_,id:f,namespace:a}):e,A=typeof r=="function"?r({args:T,env:_,id:f,namespace:a}):r,I=typeof s==
|
|
1951
1951
|
"function"?s({args:T,env:_,id:f,namespace:a}):s,x=nN("node-pty").spawn(t,T,{cols:Dl,cwd:n,env:{...process.env,..._&&typeof _==
|
|
1952
|
-
"object"&&!Array.isArray(_)?_:{}},name:"xterm-color",rows:Bl}),B,j=new Promise(
|
|
1952
|
+
"object"&&!Array.isArray(_)?_:{}},name:"xterm-color",rows:Bl}),B,j=new Promise(z=>{B=z}),k={id:f,closeHookCompletion:null,
|
|
1953
1953
|
closePromise:null,commandPreview:A,cols:Dl,createdAt:new Date().toISOString(),cwd:n,detachedCleanupTimer:null,detachedIdleTimeoutMs:Gi(
|
|
1954
1954
|
g),exitCompletion:j,exitCode:null,lastSubscriberAttachedAt:"",lastSubscriberDetachedAt:new Date().toISOString(),metadata:I&&
|
|
1955
1955
|
typeof I=="object"&&!Array.isArray(I)?I:{},onClose:u,onStop:h,inputVersion:0,lastInputAt:"",lastInputBytes:0,lastOutputAt:"",
|
|
1956
1956
|
lastOutputBytes:0,lastWriteError:"",lastWriteErrorAt:"",lastWriteErrorCode:"",output:"",outputVersion:0,processExited:!1,
|
|
1957
1957
|
killStarted:!1,reportedLifecycleFailures:new Set,resolveExitCompletion:B,rows:Bl,status:"running",stopHookCompletion:null,
|
|
1958
|
-
scopeDrainCompletion:null,namespace:a,subscribers:new Set,terminal:x};return yN(k),x.onData(
|
|
1959
|
-
output+
|
|
1960
|
-
m({chunk:
|
|
1961
|
-
inal output hook failed.");ue(k,{error:_e,type:"error"})}Ul(k,a)}),x.onExit(({exitCode:
|
|
1962
|
-
|
|
1958
|
+
scopeDrainCompletion:null,namespace:a,subscribers:new Set,terminal:x};return yN(k),x.onData(z=>{if(hN(k,z),k.output=qi(k.
|
|
1959
|
+
output+z),ue(k,{chunk:z,lastOutputAt:k.lastOutputAt,outputVersion:k.outputVersion,type:"output"}),typeof m=="function")try{
|
|
1960
|
+
m({chunk:z,output:k.output,session:hr(k),updateMetadata(Z){return pN(k,Z)}})}catch(Z){let _e=String(Z?.message||Z||"Term\
|
|
1961
|
+
inal output hook failed.");ue(k,{error:_e,type:"error"})}Ul(k,a)}),x.onExit(({exitCode:z})=>{k.processExited=!0,k.exitCode=
|
|
1962
|
+
z,k.status="closing",jb(k),ue(k,{exitCode:z,status:k.status,type:"status"}),$b(k,k.stopReason||"exit"),k.resolveExitCompletion(),
|
|
1963
1963
|
vN(k)}),S.set(f,k),Ul(k,a),TN(f,{namespace:a})}function TN(e,{namespace:t="default",outputLimit:r=0}={}){let o=Hi(t).get(
|
|
1964
1964
|
e);return o?hr(o,{outputLimit:r}):iN()}async function IN(e,t="stop"){if(!e||e.processExited)return{failures:[]};e.stopReason||=
|
|
1965
1965
|
String(t||"stop"),e.status==="running"&&(e.status="closing",ue(e,{exitCode:e.exitCode,status:e.status,type:"status"}));let r=[];
|
|
@@ -2299,9 +2299,9 @@ x=U.join(T,"files"),B=await Ik(x),j=await lt(x,{installed:!0}),k={schemaVersion:
|
|
|
2299
2299
|
topicHash,topicManifest:j.topicManifest,lessons:j.bundles.map(({lesson:de,hash:ke,status:LE,required:DE,manifest:BE})=>({
|
|
2300
2300
|
code:de.code,hash:ke,status:LE,required:DE,manifest:BE}))};if(L(I)!==L(k))throw new Error("Installed bundle is incomplet\
|
|
2301
2301
|
e, reordered, unsupported or changed from its source files.");if(j.topic.topicId!==A.topicId||j.release!==A.release||j.topicHash!==
|
|
2302
|
-
A.topicHash)throw new Error("Installed topic identity differs from its pin.");let
|
|
2303
|
-
de=>de.manifest)]);if(L(B)!==L(
|
|
2304
|
-
files.");let Z=await br(U.join(x,"package.json"),1024*1024),_e=
|
|
2302
|
+
A.topicHash)throw new Error("Installed topic identity differs from its pin.");let z=ct([j.topicManifest,...j.bundles.map(
|
|
2303
|
+
de=>de.manifest)]);if(L(B)!==L(z.map(de=>de.path).sort()))throw new Error("Installed snapshot has missing or unrecorded \
|
|
2304
|
+
files.");let Z=await br(U.join(x,"package.json"),1024*1024),_e=z.find(de=>de.path==="package.json");if(Z.length!==_e.bytes||
|
|
2305
2305
|
Zi(Z)!==_e.sha256)throw new Error("Installed source changed during reading.");if(JSON.parse(Z.toString("utf8")).repository?.
|
|
2306
2306
|
url!==`https://github.com/${A.repository}.git`)throw new Error("Installed package repository URL differs from its canoni\
|
|
2307
2307
|
cal pin.");return{pin:A,...j}}catch(E){let v=["ENOENT","ENOTDIR"].includes(E.code),_=new Error(v?`Pinned teaching conten\
|
|
@@ -2317,11 +2317,11 @@ test(w)||typeof b!="string"||!wn.test(b)||typeof E!="string"||!nt.test(E)||typeo
|
|
|
2317
2317
|
I=U.join(A,w);for(let ke of[r,_,T,A,I])await yn(ke,!0);let x=vt(JSON.parse((await br(U.join(I,"pin.json"),4096)).toString(
|
|
2318
2318
|
"utf8")),{topicId:f,commit:w,topicHash:b}),B=JSON.parse((await br(U.join(I,"bundle.json"),32*1024*1024)).toString("utf8")),
|
|
2319
2319
|
j=B.topicManifest;if(!j||Zi(L(j))!==b||j.topic.topicId!==f||j.release!==x.release)throw new Error("Installed topic manif\
|
|
2320
|
-
est differs from the trusted identity.");let k=j.lessons.find(ke=>ke.code===E),
|
|
2321
|
-
lessons.find(ke=>ke.code===E);if(!k||!
|
|
2320
|
+
est differs from the trusted identity.");let k=j.lessons.find(ke=>ke.code===E),z=j.topic.lessons.find(ke=>ke.code===E),Z=B.
|
|
2321
|
+
lessons.find(ke=>ke.code===E);if(!k||!z||!Z||k.hash!==v||Zi(L(Z.manifest))!==v)throw new Error("Installed lesson manifes\
|
|
2322
2322
|
t differs from the trusted content hash.");if(k.status!=="published"&&!t)throw new Error(`Lesson ${E} is draft and canno\
|
|
2323
|
-
t be taught. Choose a published lesson.`);let _e={pin:x,manifest:Z.manifest,hash:v,descriptorPath:
|
|
2324
|
-
_e,".",
|
|
2323
|
+
t be taught. Choose a published lesson.`);let _e={pin:x,manifest:Z.manifest,hash:v,descriptorPath:z.descriptor},En=await c(
|
|
2324
|
+
_e,".",z.descriptor),de=Ln(JSON.parse(En.bytes.toString("utf8")),E);if(de.code!==E)throw new Error("Installed lesson des\
|
|
2325
2325
|
criptor identity changed.");return{..._e,lesson:Xl(de)}}catch(_){let T=new Error(`Pinned teaching identity ${f}@${w} is \
|
|
2326
2326
|
invalid: ${_.message} Ask the owner to restore the exact snapshot.`,{cause:_});throw T.code=["ENOENT","ENOTDIR"].includes(
|
|
2327
2327
|
_.code)?"VIBE64_TRAINING_CONTENT_MISSING":"VIBE64_TRAINING_CONTENT_INVALID",T}}async function u(f={}){let w=await m(f);return{
|
|
@@ -2359,8 +2359,8 @@ admissionOnly:T=!1}={}){if(T===!0&&_!==!0)throw new TypeError("Admission reads c
|
|
|
2359
2359
|
!0?l:_===!0?u:h)({topicId:f,commit:w,topicHash:b,lessonCode:E,lessonHash:v}),x=I.lesson.exercise;if(!x)throw Object.assign(
|
|
2360
2360
|
new Error(`Lesson ${E} has no declared bundled exercise.`),{code:"VIBE64_TRAINING_EXERCISE_MISSING"});let B=U.posix.join(
|
|
2361
2361
|
U.posix.dirname(I.descriptorPath),x.source),j={pin:I.pin,lessonCode:I.lesson.code,lessonHash:I.hash,exercise:x,sourcePath:B};
|
|
2362
|
-
if(_===!0)return j;let k=B==="."?"":`${B}/`,
|
|
2363
|
-
path.slice(k.length),En=await c(I,B,_e);
|
|
2362
|
+
if(_===!0)return j;let k=B==="."?"":`${B}/`,z=[];for(let Z of I.manifest.files){if(!Z.path.startsWith(k))continue;let _e=Z.
|
|
2363
|
+
path.slice(k.length),En=await c(I,B,_e);z.push({path:_e,bytes:En.bytes})}return{...j,files:z}}return{readTopic:i,readLesson:h,
|
|
2364
2364
|
readAdmissionIdentity:l,readVisual:g,readCheck:y,readExercise:S,readChoiceAnswer:p}}var nt,Zl,wn,vk,gn,Tk,Zi,Ql=d(()=>{Mn();
|
|
2365
2365
|
jt();$t();Vs();Vn();nt=/^[a-zA-Z][a-zA-Z0-9-]{0,63}$/u,Zl=/^[a-f0-9]{40}$/u,wn=/^[a-f0-9]{64}$/u,vk=/^[a-zA-Z0-9_.-]+\/learn-[a-zA-Z0-9_.-]+$/u,
|
|
2366
2366
|
gn={type:"string",required:!0,noTrim:!0,minLength:1,maxLength:256},Tk=M({schemaVersion:{type:"integer",required:!0,enum:[
|