experimental-ash 0.24.0 → 0.24.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/src/chunks/authored-module-loader-DcCfCiBm.js +4 -0
  3. package/dist/src/chunks/client-DLHAGI2g.js +4 -0
  4. package/dist/src/chunks/dev-authored-source-watcher-CBID_Dwh.js +1 -0
  5. package/dist/src/chunks/{errors-DsO9xmQL.js → errors-HYWjHxV6.js} +1 -1
  6. package/dist/src/chunks/{gray-matter-BxS7ZG-J.js → gray-matter-D-9jHwOT.js} +4 -4
  7. package/dist/src/chunks/host-zBy9FyyX.js +70 -0
  8. package/dist/src/chunks/{jsdist-M7JFZoA4.js → jsdist-BkeWZ7EZ.js} +61 -61
  9. package/dist/src/chunks/package-HUaeub_D.js +1 -0
  10. package/dist/src/chunks/paths-CebY5GCi.js +89 -0
  11. package/dist/src/chunks/{picocolors-Bq-tZK9u.js → picocolors-aAkqW4On.js} +1 -1
  12. package/dist/src/chunks/token-D98SQdvs.js +1 -0
  13. package/dist/src/chunks/{url-BVRhVE2O.js → url-JdCGA634.js} +1 -1
  14. package/dist/src/cli/commands/info.js +1 -1
  15. package/dist/src/cli/dev/environment.d.ts +16 -2
  16. package/dist/src/cli/dev/environment.js +1 -1
  17. package/dist/src/cli/dev/input-requests.js +1 -1
  18. package/dist/src/cli/dev/repl.js +3 -3
  19. package/dist/src/cli/dev/url.js +1 -1
  20. package/dist/src/cli/run.js +1 -1
  21. package/dist/src/cli/ui/output.js +1 -1
  22. package/dist/src/client/index.d.ts +1 -0
  23. package/dist/src/client/index.js +1 -0
  24. package/dist/src/compiled/.vendor-stamp.json +7 -6
  25. package/dist/src/compiled/@ai-sdk/anthropic/index.js +1 -1
  26. package/dist/src/compiled/@ai-sdk/google/index.js +1 -1
  27. package/dist/src/compiled/@ai-sdk/mcp/index.js +1 -1
  28. package/dist/src/compiled/@ai-sdk/openai/index.js +1 -1
  29. package/dist/src/compiled/@ai-sdk/otel/index.js +1 -1
  30. package/dist/src/compiled/@chat-adapter/slack/_slack-web-api.d.ts +7 -0
  31. package/dist/src/compiled/@chat-adapter/slack/index.d.ts +418 -109
  32. package/dist/src/compiled/@chat-adapter/slack/index.js +31 -27
  33. package/dist/src/compiled/@chat-adapter/slack/package.json +1 -1
  34. package/dist/src/compiled/@chat-adapter/state-memory/index.d.ts +8 -2
  35. package/dist/src/compiled/@chat-adapter/state-memory/index.js +1 -1
  36. package/dist/src/compiled/@chat-adapter/state-memory/package.json +1 -1
  37. package/dist/src/compiled/@opentelemetry/api/index.js +1 -1
  38. package/dist/src/compiled/@vercel/sandbox/index.js +19 -17
  39. package/dist/src/compiled/@vercel/sandbox/package.json +1 -1
  40. package/dist/src/compiled/@workflow/core/index.js +2 -2
  41. package/dist/src/compiled/@workflow/core/runtime.js +22 -22
  42. package/dist/src/compiled/@workflow/core/workflow.js +1 -1
  43. package/dist/src/compiled/@workflow/errors/index.js +1 -1
  44. package/dist/src/compiled/_chunks/node/auth-ZhCJAHxl.js +2 -0
  45. package/dist/src/compiled/_chunks/node/{dist-BdWHjlRQ.js → dist-BQYUcBqu.js} +31 -31
  46. package/dist/src/compiled/_chunks/node/{chunk-Dd2tEFlW.js → dist-BdTs18CF.js} +1 -1
  47. package/dist/src/compiled/_chunks/node/retry-DkR2H1Y0.js +1 -0
  48. package/dist/src/compiled/_chunks/node/token-CoIbMZkq.js +1 -0
  49. package/dist/src/compiled/_chunks/node/{version-BMyZn3Y2.js → version-D4IYmfaS.js} +1 -1
  50. package/dist/src/compiled/_chunks/workflow/coerce-BhzIW-Hm.js +1 -0
  51. package/dist/src/compiled/_chunks/workflow/{compat-CIROS3w4.js → compat-DcEvieoj.js} +1 -1
  52. package/dist/src/compiled/_chunks/workflow/{core-DOVmxHH8.js → core-XWIi7wKc.js} +3 -3
  53. package/dist/src/compiled/_chunks/workflow/{dist-C7wPwOI9.js → dist-DO14ZaQj.js} +1 -1
  54. package/dist/src/compiled/_chunks/workflow/{dist-CpUQh3NH.js → dist-DZZY3Zyp.js} +1 -1
  55. package/dist/src/compiled/_chunks/workflow/resume-hook-DOMbNs-S.js +51 -0
  56. package/dist/src/compiled/_chunks/workflow/{schemas-DFZoEyCn.js → schemas-DmgDnhW3.js} +1 -1
  57. package/dist/src/compiled/_chunks/workflow/sleep-CRjce49s.js +1 -0
  58. package/dist/src/compiled/_chunks/workflow/{src-ClRYdO4-.js → src-B54rYDvB.js} +1 -1
  59. package/dist/src/compiled/_chunks/workflow/symbols-D8paKc8P.js +9 -0
  60. package/dist/src/compiled/_chunks/workflow/{token-CsNmv7KW.js → token-D9z1dMB6.js} +1 -1
  61. package/dist/src/compiled/_chunks/workflow/{token-j5Cl4rrs.js → token-DV7rQw_t.js} +1 -1
  62. package/dist/src/compiled/chat/index.d.ts +6 -3143
  63. package/dist/src/compiled/chat/index.js +1 -1
  64. package/dist/src/compiled/chat/{jsx-runtime-DxGwoLu2.d.ts → jsx-runtime-CFq1K_Ve.d.ts} +1 -1
  65. package/dist/src/compiled/chat/package.json +1 -1
  66. package/dist/src/compiled/jose/index.js +2 -2
  67. package/dist/src/compiled/jsonc-parser/LICENSE.md +21 -0
  68. package/dist/src/compiled/jsonc-parser/index.d.ts +13 -0
  69. package/dist/src/compiled/jsonc-parser/index.js +15 -0
  70. package/dist/src/compiled/jsonc-parser/package.json +7 -0
  71. package/dist/src/compiled/just-bash/index.js +773 -773
  72. package/dist/src/compiled/just-bash/package.json +1 -1
  73. package/dist/src/compiled/turndown/index.js +1 -1
  74. package/dist/src/compiled/zod/index.js +1 -1
  75. package/dist/src/compiled/zod-validation-error/index.js +1 -1
  76. package/dist/src/compiler/manifest.d.ts +36 -3
  77. package/dist/src/compiler/manifest.js +5 -1
  78. package/dist/src/compiler/module-map.js +8 -0
  79. package/dist/src/compiler/normalize-manifest.js +1 -0
  80. package/dist/src/compiler/normalize-subagent.d.ts +3 -2
  81. package/dist/src/compiler/normalize-subagent.js +112 -3
  82. package/dist/src/compiler/remote-agent-node.d.ts +20 -0
  83. package/dist/src/compiler/remote-agent-node.js +19 -0
  84. package/dist/src/discover/discover-subagent.js +35 -2
  85. package/dist/src/discover/grammar.d.ts +1 -0
  86. package/dist/src/discover/grammar.js +5 -0
  87. package/dist/src/evals/cli/eval.js +1 -1
  88. package/dist/src/evals/loaders/yaml.js +1 -1
  89. package/dist/src/evals/runner/discover.js +1 -1
  90. package/dist/src/evals/runner/execute-suite.js +1 -1
  91. package/dist/src/evals/runner/reporters/console.js +1 -1
  92. package/dist/src/evals/scorers/autoevals-client.js +1 -1
  93. package/dist/src/evals/scorers/autoevals.js +1 -1
  94. package/dist/src/evals/scorers/json.js +1 -1
  95. package/dist/src/evals/scorers/run.js +1 -1
  96. package/dist/src/evals/scorers/sql.js +1 -1
  97. package/dist/src/evals/scorers/text.js +1 -1
  98. package/dist/src/execution/connection-auth-steps.js +2 -0
  99. package/dist/src/internal/application/package.js +1 -1
  100. package/dist/src/internal/authored-asset-import-plugin.d.ts +5 -0
  101. package/dist/src/internal/authored-asset-import-plugin.js +141 -0
  102. package/dist/src/internal/authored-module-bundle.d.ts +4 -0
  103. package/dist/src/internal/authored-module-bundle.js +19 -0
  104. package/dist/src/internal/authored-module-loader.d.ts +6 -0
  105. package/dist/src/internal/authored-module-loader.js +114 -125
  106. package/dist/src/internal/authored-package-tsconfig-paths.d.ts +9 -0
  107. package/dist/src/internal/authored-package-tsconfig-paths.js +209 -0
  108. package/dist/src/internal/nitro/host/channel-routes.d.ts +9 -2
  109. package/dist/src/internal/nitro/host/dev-authored-source-watcher.d.ts +12 -1
  110. package/dist/src/internal/nitro/host/dev-authored-source-watcher.js +19 -3
  111. package/dist/src/internal/nitro/host/schedule-task-routes.d.ts +7 -3
  112. package/dist/src/internal/nitro/host/start-development-server.js +2 -0
  113. package/dist/src/internal/workflow-bundle/builder-support.js +1 -33
  114. package/dist/src/public/agents/auth.d.ts +30 -0
  115. package/dist/src/public/agents/auth.js +37 -0
  116. package/dist/src/public/definitions/remote-agent.d.ts +25 -0
  117. package/dist/src/public/definitions/remote-agent.js +11 -0
  118. package/dist/src/public/index.d.ts +1 -0
  119. package/dist/src/public/index.js +1 -0
  120. package/dist/src/public/next/index.d.ts +4 -4
  121. package/dist/src/public/next/index.js +16 -25
  122. package/dist/src/runtime/connections/mcp-client.js +3 -2
  123. package/dist/src/runtime/connections/types.d.ts +24 -0
  124. package/dist/src/runtime/resolve-agent-graph.js +57 -0
  125. package/dist/src/runtime/sessions/turn.d.ts +17 -5
  126. package/dist/src/runtime/subagents/registry.d.ts +6 -6
  127. package/dist/src/runtime/subagents/registry.js +1 -1
  128. package/dist/src/runtime/types.d.ts +20 -0
  129. package/package.json +22 -17
  130. package/dist/src/chunks/authored-module-loader-XcFLnl49.js +0 -2
  131. package/dist/src/chunks/client-nshDsWNF.js +0 -4
  132. package/dist/src/chunks/dev-authored-source-watcher-B4PaZGUr.js +0 -7
  133. package/dist/src/chunks/host-DsW72Q-w.js +0 -65
  134. package/dist/src/chunks/package-DmsQgn4v.js +0 -1
  135. package/dist/src/chunks/paths-OknjaYR8.js +0 -89
  136. package/dist/src/chunks/prewarm-B4YblQ5m.js +0 -6
  137. package/dist/src/chunks/token-DtoyQZy2.js +0 -1
  138. package/dist/src/chunks/token-util-CHjOk3A7.js +0 -1
  139. package/dist/src/compiled/_chunks/node/auth-vbe4XEEK.js +0 -2
  140. package/dist/src/compiled/_chunks/node/dist-DMSq2ehP.js +0 -1
  141. package/dist/src/compiled/_chunks/node/retry-BOcy5BbJ.js +0 -1
  142. package/dist/src/compiled/_chunks/node/token-D-BTJHoU.js +0 -1
  143. package/dist/src/compiled/_chunks/workflow/coerce-Dh0wa7P9.js +0 -1
  144. package/dist/src/compiled/_chunks/workflow/context-errors-Bbvvp-li.js +0 -6
  145. package/dist/src/compiled/_chunks/workflow/dist-C_oiE-l7.js +0 -40
  146. package/dist/src/compiled/_chunks/workflow/resume-hook-C3VWUPii.js +0 -12
  147. package/dist/src/compiled/_chunks/workflow/sleep-QTkC1VFe.js +0 -1
  148. package/dist/src/compiled/_chunks/workflow/symbols-QezhMuLg.js +0 -4
  149. package/dist/src/compiled/chat/_workflow-serde.d.ts +0 -5
  150. /package/dist/src/chunks/{chunk-8L7ocgPr.js → chunk-DSjMdhoD.js} +0 -0
  151. /package/dist/src/chunks/{guards-CjJ3lmju.js → guards-26p6sOw3.js} +0 -0
  152. /package/dist/src/chunks/{input-requests-BsBi7_5K.js → input-requests-DJiy6dG9.js} +0 -0
  153. /package/dist/src/chunks/{runtime-model-BWu6M_hq.js → runtime-model-Dh0Nz64z.js} +0 -0
  154. /package/dist/src/chunks/{types-MZUhN0Zy.js → types-DDA2QUED.js} +0 -0
  155. /package/dist/src/compiled/_chunks/workflow/{chunk-DHhdAPOb.js → chunk-DSjMdhoD.js} +0 -0
@@ -1,65 +0,0 @@
1
- import{n as e}from"./chunk-8L7ocgPr.js";import{E as t,T as n,i as r,o as i,r as a,w as o}from"./paths-OknjaYR8.js";import{a as s,i as c,n as l,r as u}from"./authored-module-loader-XcFLnl49.js";import{a as d,i as f,n as p,o as ee,r as te,t as m}from"./package-DmsQgn4v.js";import{g as h,m as ne,p as re}from"./types-MZUhN0Zy.js";import{a as ie,c as ae,n as oe,o as se,r as ce,t as le}from"./prewarm-B4YblQ5m.js";import{builtinModules as ue}from"node:module";import{dirname as g,extname as de,isAbsolute as fe,join as _,relative as v,resolve as y,sep as pe}from"node:path";import{cp as b,mkdir as x,readFile as S,readdir as me,realpath as he,rename as C,rm as w,symlink as ge,writeFile as T}from"node:fs/promises";import{randomUUID as _e}from"node:crypto";import{existsSync as ve,readFileSync as ye}from"node:fs";import{fileURLToPath as be}from"node:url";import{Buffer as xe}from"node:buffer";import{build as Se,copyPublicAssets as Ce,createDevServer as we,createNitro as Te,prepare as Ee,prerender as De}from"nitro/builder";const Oe=`ash-cache.json`;async function E(e){let t=await ke(e),n=m().version;t!==null&&t===n||await w(e,{force:!0,recursive:!0})}async function D(e){await x(e,{recursive:!0}),await T(_(e,Oe),`${JSON.stringify({ashVersion:m().version},null,2)}\n`)}async function ke(e){try{let t=JSON.parse(await S(_(e,Oe),`utf8`));return typeof t.ashVersion==`string`?t.ashVersion:null}catch(e){return e instanceof Error&&`code`in e&&e.code,null}}const Ae=new Set([`__builtin_response_array_buffer`,`__builtin_response_json`,`__builtin_response_text`]);async function je(e){if(e.mode===!1)return{code:e.source,workflowManifest:{}};let t=await Me(e.filename,e.source),n=Pe(t);if(n.length===0)return{code:e.source,workflowManifest:{}};let r=e.moduleSpecifier??`./${Ye(e.filename)}`,i=e.stableModuleSpecifier??r,a={},o=[],s=[],c=!1;for(let t of n){if(t.directive===`use step`){let n=Xe(r,t.name);a.steps??={};let i=a.steps[e.filename]??={};if(i[t.name]={stepId:n},e.mode===`workflow`){let e=t.exportPrefix.length>0?`export `:``;o.push({end:t.rangeEnd,start:t.rangeStart,text:`${e}var ${t.name} = globalThis[Symbol.for("WORKFLOW_USE_STEP")](${JSON.stringify(n)});`})}else o.push({end:t.directiveEnd,start:t.directiveStart,text:``}),e.mode===`step`?(c=!0,s.push(`registerStepFunction(${JSON.stringify(n)}, ${t.name});`)):s.push(`${t.name}.stepId = ${JSON.stringify(n)};`);continue}let n=`workflow//${e.stableWorkflowNames?.has(t.name)===!0?i:r}//${t.name}`;a.workflows??={};let l=a.workflows[e.filename]??={};l[t.name]={workflowId:n},e.mode===`workflow`?(o.push({end:t.directiveEnd,start:t.directiveStart,text:``}),s.push(`${t.name}.workflowId = ${JSON.stringify(n)};`),s.push(`globalThis.__private_workflows.set(${JSON.stringify(n)}, ${t.name});`)):(o.push({end:t.directiveEnd,start:t.directiveStart,text:`throw new Error(${JSON.stringify(`You attempted to execute workflow ${t.name} function directly. To start a workflow, use start(${t.name}) from workflow/api`)});`}),s.push(`${t.name}.workflowId = ${JSON.stringify(n)};`))}let l=`/**__internal_workflows${JSON.stringify(a)}*/;`,u=n.some(e=>e.directive===`use workflow`);if(e.mode===`workflow`&&!u)return{code:`${l}\n${Ne(e.source,t,n,r)}`,workflowManifest:a};let d=ze(e.source,o),f=e.mode===`workflow`?await Be(e.filename,d):d;return{code:`${c?`import { registerStepFunction } from "workflow/internal/private";\n${l}\n`:`${l}\n`}${f}${s.length>0?`\n${s.join(`
2
- `)}\n`:``}`,workflowManifest:a}}async function Me(e,t){let{parseAst:n}=await s();return n(t,{astType:`ts`,lang:Je(e),range:!0,sourceType:`module`},e)}function Ne(e,t,n,r){let i=Ve(e,t),a=n.filter(e=>e.directive===`use step`).map(e=>{let t=e.exportPrefix.length>0?`export `:``,n=Xe(r,e.name);return`${t}var ${e.name} = globalThis[Symbol.for("WORKFLOW_USE_STEP")](${JSON.stringify(n)});`}),o=[...i,...a];return o.length>0?`${o.join(`
3
- `)}\n`:``}function Pe(e){let t=[];for(let n of e.body??[]){let e=Fe(n);if(e===null)continue;let r=e.fn,i=r.id?.name,a=Le(r.body);if(r.async!==!0||i===void 0||a===void 0)continue;let o=Re(a[0]);o!==null&&t.push({directive:o.value,directiveEnd:o.end,directiveStart:o.start,exportPrefix:e.exported?`export `:``,name:i,rangeEnd:e.end,rangeStart:e.start})}return t}function Fe(e){return e.type===`FunctionDeclaration`?Ie(e,!1,e):e.type!==`ExportNamedDeclaration`||e.declaration?.type!==`FunctionDeclaration`?null:Ie(e.declaration,!0,e)}function Ie(e,t,n){return e.start===void 0||e.end===void 0||n.start===void 0||n.end===void 0?null:{end:n.end,exported:t,fn:e,start:n.start}}function Le(e){return e===void 0||Array.isArray(e)?e:e.body}function Re(e){let t=e?.directive??(e?.type===`ExpressionStatement`&&e.expression?.type===`Literal`?e.expression.value:void 0);return t!==`use workflow`&&t!==`use step`||e?.start===void 0||e.end===void 0?null:{end:e.end,start:e.start,value:t}}function ze(e,t){let n=``,r=0;for(let i of[...t].sort((e,t)=>e.start-t.start))n+=e.slice(r,i.start),n+=i.text,r=i.end;return n+e.slice(r)}async function Be(e,t){let n=await Me(e,t),r=Ge(n),i=[];for(let e of n.body??[]){if(e.type!==`ImportDeclaration`||e.start===void 0||e.end===void 0)continue;let n=We(e);n.length>0&&n.every(e=>!r.has(e))&&i.push({end:qe(t,e.end),start:e.start,text:``})}return i.length>0?ze(t,i):t}function Ve(e,t){let n=[];for(let r of t.body??[])r.type===`ExportNamedDeclaration`&&r.declaration?.type===`VariableDeclaration`&&r.declaration.kind===`const`&&r.start!==void 0&&r.end!==void 0&&(r.declaration.declarations??[]).every(He)&&n.push(e.slice(r.start,r.end).trim());return n}function He(e){return Ue(e.init)}function Ue(e){return e==null?!1:e.type===`Literal`?e.value===null||typeof e.value==`boolean`||typeof e.value==`number`||typeof e.value==`string`:e.type===`TSAsExpression`||e.type===`TSSatisfiesExpression`||e.type===`TSNonNullExpression`||e.type===`TSTypeAssertion`?Ue(e.expression):e.type===`UnaryExpression`&&e.argument?.type===`Literal`?typeof e.argument.value==`number`:!1}function We(e){return e.importKind===`type`?[]:(e.specifiers??[]).filter(e=>e.importKind!==`type`).map(e=>e.local?.name).filter(e=>e!==void 0)}function Ge(e){let t=new Set;return O(e,e=>{e.type===`Identifier`&&typeof e.name==`string`&&t.add(e.name)}),t}function O(e,t){if(!(e.type===`ImportDeclaration`||e.type?.startsWith(`TS`))){t(e);for(let n of Object.values(e))if(Array.isArray(n))for(let e of n)Ke(e)&&O(e,t);else Ke(n)&&O(n,t)}}function Ke(e){return typeof e==`object`&&!!e&&typeof e.type==`string`}function qe(e,t){let n=t;for(;n<e.length&&(e[n]===` `||e[n]===` `);)n+=1;return e[n]===`\r`&&e[n+1]===`
4
- `?n+2:e[n]===`
5
- `?n+1:n}function Je(e){return e.endsWith(`.tsx`)?`tsx`:e.endsWith(`.jsx`)?`jsx`:/\.[cm]?ts$/.test(e)?`ts`:`js`}function Ye(e){return e.replace(/\.(?:[cm]?[jt]sx?)$/,``)}function Xe(e,t){return Ae.has(t)?t:`step//${e}//${t}`}const Ze={type:`queue/v2beta`,topic:`__wkf_workflow_*`,consumer:`default`,retryAfterSeconds:5,initialDelaySeconds:0},k=new Map,Qe=new Map;async function A(e,t,n,r,a,o=i){let s=a??process.cwd(),{moduleSpecifier:c,stableModuleSpecifier:l}=tt(r===void 0?fe(e)?e:_(s,e):r,s);return je({filename:e,mode:n,moduleSpecifier:c,source:t,stableModuleSpecifier:l,stableWorkflowNames:o})}function $e(e){return{hasSerde:e.includes(`workflow.serde`)||e.includes(`@serde`)||e.includes(`workflowSerde`)||e.includes(`__workflow_serde`),hasUseStep:/["']use step["']/.test(e),hasUseWorkflow:/["']use workflow["']/.test(e)}}function et(e,t){let n=N(e),r=!n&&at(e,t);if(n||r){let n=j(e);if(n!==null){let i=it(t).has(n.name);if(!(r||i))return{importPath:P(e,t),isPackage:!1};let a=nt(e,n);return a?{importPath:`${n.name}${a}`,isPackage:!0}:ct(e,n)?{importPath:n.name,isPackage:!0}:{importPath:P(e,t),isPackage:!1}}}return{importPath:P(e,t),isPackage:!1}}function tt(e,t){let n=N(e),r=!n&&at(e,t);if(!n&&!r)return{moduleSpecifier:void 0,stableModuleSpecifier:void 0};let i=j(e);if(i===null)return{moduleSpecifier:void 0,stableModuleSpecifier:void 0};let a=nt(e,i),o=a?`${i.name}${a}`:i.name;return{moduleSpecifier:`${o}@${i.version}`,stableModuleSpecifier:o}}function j(e){let t=g(e),n=[];for(;t!==g(t);){let e=k.get(t);if(e!==void 0){for(let t of n)k.set(t,e);return e}n.push(t);let r=_(t,`package.json`);if(ve(r))try{let e=JSON.parse(ye(r,`utf8`));if(typeof e.name==`string`&&typeof e.version==`string`){let r={dir:t,exports:e.exports,main:e.main,module:e.module,name:e.name,version:e.version};k.set(t,r);for(let e of n)k.set(e,r);return r}}catch{}t=g(t)}for(let e of n)k.set(e,null);return null}function nt(e,t){if(t.exports===null||typeof t.exports!=`object`||Array.isArray(t.exports))return``;let n=e.replace(/\\/g,`/`),r=t.dir.replace(/\\/g,`/`),i=n.startsWith(`${r}/`)?`./${n.substring(r.length+1)}`:null;if(i===null)return``;for(let[e,n]of Object.entries(t.exports)){let t=M(n);if(t!==null&&rt(t)===i)return e===`.`?``:e.substring(1)}return``}function M(e){if(typeof e==`string`)return e;if(Array.isArray(e)){for(let t of e){let e=M(t);if(e!==null)return e}return null}if(typeof e==`object`&&e)for(let t of[`workflow`,`default`,`require`,`import`,`node`]){let n=e[t],r=M(n);if(r!==null)return r}return null}function rt(e){return e.startsWith(`./`)?e:`./${e}`}function N(e){return e.split(pe).join(`/`).includes(`/node_modules/`)}function it(e){let t=Qe.get(e);if(t!==void 0)return t;let n=new Set,r=_(e,`package.json`);if(ve(r))try{let e=JSON.parse(ye(r,`utf8`));for(let t of[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`]){let r=e[t];if(typeof r==`object`&&r&&!Array.isArray(r))for(let e of Object.keys(r))n.add(e)}}catch{}return Qe.set(e,n),n}function at(e,t){if(N(e))return!1;let n=j(e);return n===null||y(n.dir)===y(t)?!1:it(t).has(n.name)}function P(e,t){let n=t.replace(/\\/g,`/`),r=e.replace(/\\/g,`/`),i=r.startsWith(`${n}/`)?r.substring(n.length+1):v(t,e).replace(/\\/g,`/`);return i.startsWith(`.`)||(i=`./${i}`),i}function ot(e){if(typeof e==`string`||Array.isArray(e))return!0;if(typeof e!=`object`||!e)return!1;let t=Object.keys(e);return t.length>0&&t.every(e=>!e.startsWith(`.`))?!0:`.`in e}function st(e){let t=e.replace(/\\/g,`/`);return t.startsWith(`./`)?t.substring(2):t.startsWith(`/`)?t.substring(1):t}function ct(e,t){let n=e.replace(/\\/g,`/`),r=t.dir.replace(/\\/g,`/`);if(!n.startsWith(`${r}/`))return!1;let i=n.substring(r.length+1);if(t.exports!==void 0){let e;if(t.exports!==null&&typeof t.exports==`object`&&`.`in t.exports)e=t.exports[`.`];else if(ot(t.exports))e=t.exports;else return!1;let n=M(e);return n!==null&&st(n)===i}return[t.module,t.main,`index.js`,`index.mjs`,`index.cjs`,`index.ts`,`index.mts`,`index.cts`].flatMap(e=>typeof e==`string`?[st(e)]:[]).includes(i)}const lt=`\0ash-workflow-entry`,ut=new Set([`server-only`,`client-only`,`next/dist/compiled/server-only`,`next/dist/compiled/client-only`]);new Set([...ue,...ue.map(e=>`node:${e}`)]);const dt=new Set([`.ts`,`.tsx`,`.mts`,`.cts`,`.js`,`.jsx`,`.mjs`,`.cjs`]),ft=new Set([`node_modules`,`.git`,`.next`,`.nuxt`,`.output`,`.vercel`,`.workflow-data`,`.workflow-vitest`,`.well-known`,`.svelte-kit`,`.turbo`,`.cache`,`.yarn`,`.pnpm-store`]);async function pt(e){let t=[];async function n(e){let r;try{r=await me(e,{withFileTypes:!0})}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}for(let i of r){if(i.isDirectory()){ft.has(i.name)||await n(_(e,i.name));continue}if(!i.isFile())continue;let r=i.name.match(/\.[^.]+$/)?.[0];r!==void 0&&dt.has(r)&&t.push(_(e,i.name))}}return await n(e),t}function mt(e,t){let{importPath:n,isPackage:r}=et(e,t);return r?`import ${JSON.stringify(n)};`:`import ${JSON.stringify(Ct(t,e))};`}function ht(e){return{name:`ash-workflow-virtual-entry`,resolveId(e){if(e===`\0ash-workflow-entry`)return{id:e}},load(t){if(t===`\0ash-workflow-entry`)return{code:e,moduleSideEffects:!0,moduleType:`js`}}}}function gt(){return{name:`ash-workflow-pseudo-packages`,resolveId(e){if(ut.has(e))return{id:`\0ash-workflow-pseudo-package:${e}`}},load(e){if(e.startsWith(`\0ash-workflow-pseudo-package:`))return{code:``,moduleType:`js`}}}}function _t(e,t={}){return{name:`ash-package-imports`,resolveId(n){let r=n.match(/^#compiled\/(.+)$/)?.[1];if(r!==void 0)return t.workflowCondition===!0&&r===`@workflow/core/index.js`?F([_(e,`src`,`internal`,`workflow-bundle`,`workflow-core-shim.ts`),_(e,`dist`,`src`,`internal`,`workflow-bundle`,`workflow-core-shim.js`)]):F([_(e,`.generated`,`compiled`,r),_(e,`dist`,`src`,`compiled`,r)]);let i=n.match(/^#(.+)\.js$/)?.[1];if(i!==void 0)return F([`.ts`,`.tsx`,`.mts`,`.cts`,`.js`,`.jsx`,`.mjs`,`.cjs`].flatMap(t=>[_(e,`src`,`${i}${t}`),_(e,`dist`,`src`,`${i}${t}`)]))}}}function vt(e){let t=new Set(e.sideEffectFiles?.map(e=>e.replaceAll(`\\`,`/`))??[]);return{name:`ash-workflow-transform`,async load(n){if(!Dt(n))return;let r=await S(n,`utf8`),i=await A(Et(e.workingDir,n),r.replace(/require\(\s*(['"])server-only\1\s*\)/g,`void 0`).replace(/require\(\s*(['"])client-only\1\s*\)/g,`void 0`),e.mode??`workflow`,n,e.projectRoot);return Tt(e.manifest,i.workflowManifest),{code:i.code,map:null,moduleSideEffects:t.has(n.replaceAll(`\\`,`/`))||void 0}}}}async function yt(e){let t=`// biome-ignore-all lint: generated file
6
- /* eslint-disable */
7
- import { workflowEntrypoint } from 'workflow/runtime';
8
-
9
- const workflowCode = \`${(e.code.endsWith(`
10
- `)?e.code:`${e.code}\n`).replace(/[\\`$]/g,`\\$&`)}\`;
11
-
12
- export const POST = workflowEntrypoint(workflowCode);`;if(!e.bundleFinalOutput){await wt(e.outfile,t);return}let n=c(await u({cwd:e.workingDir,input:lt,external:e=>e===`@aws-sdk/credential-provider-web-identity`,platform:`node`,plugins:[ht(t)],write:!1,output:{comments:!1,format:e.format,sourcemap:!1}}),`final workflow bundle for "${e.outfile}"`);await wt(e.outfile,n.code)}function bt(e){let t={};for(let[n,r]of Object.entries(e??{})){t[n]={};for(let[e,i]of Object.entries(r))t[n][e]={stepId:i.stepId}}return t}function xt(e){let t={};for(let[n,r]of Object.entries(e??{})){t[n]={};for(let[e,i]of Object.entries(r))t[n][e]={graph:{edges:[],nodes:[]},workflowId:i.workflowId}}return t}function St(e){let t={};for(let[n,r]of Object.entries(e??{})){t[n]={};for(let[e,i]of Object.entries(r))t[n][e]={classId:i.classId}}return t}function Ct(e,t){let n=v(e,t).replaceAll(`\\`,`/`);return n.startsWith(`./`)||n.startsWith(`../`)?n:`./${n}`}function F(e){for(let t of e)if(ve(t))return{id:y(t)}}async function wt(e,t){await x(g(e),{recursive:!0});let n=`${e}.${process.pid}.${Date.now()}.tmp`;await T(n,t),await C(n,e)}function Tt(e,t){e.steps=I(e.steps,t.steps),e.workflows=I(e.workflows,t.workflows),e.classes=I(e.classes,t.classes)}function I(e,t){if(t===void 0)return e;let n={...e};for(let[e,r]of Object.entries(t))n[e]={...n[e],...r};return n}function Et(e,t){let n=t.replaceAll(`\\`,`/`),r=v(e.replaceAll(`\\`,`/`),n).replaceAll(`\\`,`/`);return r.startsWith(`../`)&&(r=r.split(`/`).filter(e=>e!==`..`).join(`/`)),r}function Dt(e){return/\.(?:[cm]?[jt]sx?)$/.test(e)}async function L(e,t){let n=`${e}.tmp-${process.pid}-${Date.now().toString(36)}`;await T(n,t),await Ot(n,e)}async function Ot(e,t){if(process.platform!==`win32`){await C(e,t);return}for(let n=0;n<10;n+=1)try{await C(e,t);return}catch(e){if(!(e instanceof Error&&`code`in e&&(e.code===`EPERM`||e.code===`EACCES`||e.code===`EBUSY`))||n===9)throw e;await new Promise(e=>setTimeout(e,10*(n+1)))}}async function kt(e){let t=[...e.discoveredEntries.discoveredSteps].sort(),n=new Set(t),r=[...e.discoveredEntries.discoveredSerdeFiles].sort().filter(e=>!n.has(e)),i=await jt({projectRoot:e.projectRoot,stepFiles:t,serdeOnlyFiles:r,workingDir:e.workingDir}),a=g(e.outfile),o=[`// Generated by Ash. Do not edit by hand.`,...At({builtinsImportSpecifier:e.builtinsPath===void 0?`workflow/internal/builtins`:R({outfileDirectory:a,preferAbsoluteFileImports:e.preferAbsoluteFileImports??!1,targetPath:e.builtinsPath}),outfileDirectory:a,preferAbsoluteFileImports:e.preferAbsoluteFileImports??!1,serdeOnlyFiles:r,stepFiles:t}),`export const __steps_registered = true;`,``].join(`
13
- `);return await x(a,{recursive:!0}),await Ft(e.outfile)!==o&&await T(e.outfile,o),i}function At(e){return[e.builtinsImportSpecifier,...e.stepFiles.map(t=>R({outfileDirectory:e.outfileDirectory,preferAbsoluteFileImports:e.preferAbsoluteFileImports,targetPath:t})),...e.serdeOnlyFiles.map(t=>R({outfileDirectory:e.outfileDirectory,preferAbsoluteFileImports:e.preferAbsoluteFileImports,targetPath:t}))].map(e=>`import ${JSON.stringify(e)};`)}function R(e){return e.preferAbsoluteFileImports?o(e.targetPath):Pt(e.outfileDirectory,e.targetPath)}async function jt(e){let t={},n=[...e.stepFiles,...e.serdeOnlyFiles];for(let r of n){let n=await S(r,`utf8`);Mt(t,(await A(Nt(e.workingDir,r),n,`step`,r,e.projectRoot)).workflowManifest)}return t}function Mt(e,t){e.steps=z(e.steps,t.steps),e.workflows=z(e.workflows,t.workflows),e.classes=z(e.classes,t.classes)}function z(e,t){if(t===void 0)return e;let n={...e};for(let[e,r]of Object.entries(t))n[e]={...n[e],...r};return n}function Nt(e,t){let n=t.replaceAll(`\\`,`/`),r=v(e.replaceAll(`\\`,`/`),n).replaceAll(`\\`,`/`);return r.startsWith(`../`)&&(r=r.split(`/`).filter(e=>e!==`..`).join(`/`)),r}function Pt(e,t){let n=v(e,t).replaceAll(`\\`,`/`);return n.startsWith(`.`)?n:`./${n}`}async function Ft(e){try{return await S(e,`utf8`)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return null;throw e}}const It=`index.__ash_service_route_prefix.mjs`,Lt=[`ash/`,`.well-known/workflow/`];function B(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Rt(e){return Lt.some(t=>e.startsWith(t))}function zt(e,t){return e.filter(Bt).map(e=>Ht(e,t))}function Bt(e){if(!B(e)||`handle`in e)return!0;let t=typeof e.src==`string`?e.src:``,n=typeof e.dest==`string`?e.dest:``;return V(t)||V(n)}function V(e){return e.includes(`/ash/v1`)||e.includes(`/.well-known/workflow/`)}function Vt(e){return e.includes(`/ash/v1`)}function Ht(e,t){if(!B(e)||`handle`in e||typeof e.src!=`string`)return e;let n=Vt(e.src)||typeof e.dest==`string`&&Vt(e.dest),r={...e,src:Ut(e.src,t)};return n&&(r.dest=`/ash/__server`),r}function Ut(e,t){if(t===void 0||t===`/`||!V(e)||e.includes(t))return e;let n=t.endsWith(`/`)?t.slice(0,-1):t,r=n.replaceAll(`/`,`\\/`);return e.includes(r)?e:e.startsWith(`^(?:/`)?`^(?:${n}${e.slice(4)}`:e.startsWith(`^/`)?`^${n}${e.slice(1)}`:e.startsWith(`/`)?`${n}${e}`:e}async function Wt(e,t){let n=_(e,`.vc-config.json`),r=_(e,It),i=JSON.parse(await S(n,`utf8`)),a=B(i)?i:{};await T(r,Gt(t)),await T(n,`${JSON.stringify({...a,handler:It},null,2)}\n`)}function Gt(e){return`
14
- import { Server } from "node:http";
15
-
16
- const SERVICE_PREFIX = ${JSON.stringify(Kt(e))};
17
- const PATCH_SYMBOL = Symbol.for("ash.service.route-prefix-strip.patch");
18
-
19
- function stripServiceRoutePrefix(requestUrl) {
20
- if (typeof requestUrl !== "string" || requestUrl === "*") {
21
- return requestUrl;
22
- }
23
-
24
- const queryIndex = requestUrl.indexOf("?");
25
- const rawPath = queryIndex === -1 ? requestUrl : requestUrl.slice(0, queryIndex);
26
- const query = queryIndex === -1 ? "" : requestUrl.slice(queryIndex);
27
- const path = rawPath.startsWith("/") ? rawPath : \`/\${rawPath}\`;
28
-
29
- if (path === SERVICE_PREFIX) {
30
- return \`/\${query}\`;
31
- }
32
-
33
- if (path.startsWith(\`\${SERVICE_PREFIX}/\`)) {
34
- return path.slice(SERVICE_PREFIX.length) + query;
35
- }
36
-
37
- return path + query;
38
- }
39
-
40
- if (!globalThis[PATCH_SYMBOL]) {
41
- globalThis[PATCH_SYMBOL] = true;
42
- const originalEmit = Server.prototype.emit;
43
- Server.prototype.emit = function patchedEmit(event, request, ...args) {
44
- if (event === "request" && request && typeof request.url === "string") {
45
- request.url = stripServiceRoutePrefix(request.url);
46
- }
47
-
48
- return originalEmit.call(this, event, request, ...args);
49
- };
50
- }
51
-
52
- const originalModule = await import("./index.mjs");
53
- const entrypoint = originalModule?.default ?? originalModule;
54
-
55
- export default entrypoint;
56
- `.trimStart()}function Kt(e){let t=(e.startsWith(`/`)?e:`/${e}`).replace(/\/+$/,``);return t.length===0?`/`:t}const qt=[`@mongodb-js/zstd`,`node-liblzma`],Jt=[`@chat-adapter/slack`,`chat`];function Yt(e){let t={};return Xt(e)&&Object.assign(t,e),t.NODE_OPTIONS=`--experimental-require-module`,t}function Xt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}async function Zt(e){await w(e,{force:!0,recursive:!0}),await x(e,{recursive:!0})}async function Qt(e){try{return await he(e.sourcePath)}catch{return await he(e.fallbackPath)}}async function $t(e){let t=await Qt({fallbackPath:e.fallbackPath,sourcePath:e.sourcePath});await Zt(e.targetPath),await b(t,e.targetPath,{dereference:!0,recursive:!0})}async function en(e,t={}){let n=_(e,`functions`),r=await tn(n);r!==null&&(t.servicePrefix!==void 0&&await Wt(r,t.servicePrefix),await nn(n,r)),await an(n,n),await on(e,t.servicePrefix)}async function tn(e){let t=_(e,`__server.func`),n=_(e,`ash/__server.func`),r;try{r=await he(t)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return null;throw e}let i=`${n}.ash-staging`;return await x(g(n),{recursive:!0}),await w(i,{force:!0,recursive:!0}),await b(r,i,{dereference:!0,recursive:!0}),await w(n,{force:!0,recursive:!0}),await C(i,n),n}async function nn(e,t,n=e){let r;try{r=await me(e,{withFileTypes:!0})}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}await Promise.all(r.map(async r=>{let i=_(e,r.name),a=H(v(n,i));if(r.isSymbolicLink()){r.name.endsWith(`.func`)&&Rt(a)&&await rn(i,t);return}r.isDirectory()&&!r.name.endsWith(`.func`)&&await nn(i,t,n)}))}async function rn(e,t){await w(e,{force:!0,recursive:!0}),await ge(H(v(g(e),t)),e,`dir`)}async function an(e,t){let n;try{n=await me(t,{withFileTypes:!0})}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}await Promise.all(n.map(async n=>{let r=_(t,n.name),i=H(v(e,r));if(n.name.endsWith(`.func`)){Rt(i)||await w(r,{force:!0,recursive:!0});return}n.isDirectory()&&await an(e,r)}))}async function on(e,t){let n=_(e,`config.json`),r;try{r=JSON.parse(await S(n,`utf8`))}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}!Xt(r)||!Array.isArray(r.routes)||(r.routes=zt(r.routes,t),await T(n,`${JSON.stringify(r,null,2)}\n`))}function H(e){return e.replaceAll(`\\`,`/`)}function sn(e){let t=v(e.fromDirectoryPath,e.toFilePath).replaceAll(`\\`,`/`);return t.startsWith(`.`)?t:`./${t}`}function cn(e){return[`import nitroHandler from ${JSON.stringify(e.delegateImportPath)};`,``,`function invokeNitroHandler(request, context) {`,` if (typeof nitroHandler === "function") {`,` return nitroHandler(request, context);`,` }`,``,` if (nitroHandler !== null && typeof nitroHandler === "object" && "fetch" in nitroHandler) {`,` const fetch = nitroHandler.fetch;`,` if (typeof fetch === "function") {`,` return fetch.call(nitroHandler, request, context);`,` }`,` }`,``,` throw new TypeError("Expected Nitro handler to export a function or an object with fetch(request, context).");`,`}`,``,`const workflowRoutePath = ${JSON.stringify(e.workflowRoutePath)};`,``,`function rewriteRequestToWorkflowRoute(request) {`,` const sourceUrl = new URL(request.url);`,` const routedUrl = new URL(workflowRoutePath, sourceUrl);`,` routedUrl.search = sourceUrl.search;`,` return new Request(routedUrl, request);`,`}`,``,`export default {`,` fetch(request, context) {`,` return invokeNitroHandler(rewriteRequestToWorkflowRoute(request), context);`,` },`,`};`,``].join(`
57
- `)}async function ln(e){try{let t=JSON.parse(await S(_(e,`.vc-config.json`),`utf8`));if(typeof t.handler==`string`&&t.handler.length>0)return t.handler}catch{}return`index.mjs`}async function un(e){let t=await ln(e.functionDirectoryPath),n=_(e.functionDirectoryPath,t),r=g(n),i=de(t),a=_(r,`__ash_nitro_handler__${i.length>0?i:`.mjs`}`),o=sn({fromDirectoryPath:r,toFilePath:a});await C(n,a),await T(n,cn({delegateImportPath:o,workflowRoutePath:e.workflowRoutePath}))}const dn=new Map;var fn=class{#e;#t;config;#n=new WeakMap;constructor(e){this.config={buildTarget:`standalone`,dirs:[te(`src/execution`)],externalPackages:[...qt,...Jt],projectRoot:e.appRoot,watch:e.watch,workingDir:e.rootDir},this.#e=e.compiledArtifactsBootstrapPath,this.#t=e.outDir}async build(e={}){let t=(dn.get(this.#t)??Promise.resolve()).then(()=>this.#r(e));dn.set(this.#t,t.catch(()=>{})),await t}async#r(e){await E(this.#t);let t=await this.#i();if(t.length===0)throw Error(`Expected the execution workflow source file under "${te(`src/execution`)}".`);let n=await this.findTsConfigPath();await x(this.#t,{recursive:!0});let r=await this.discoverEntries(t,this.#t,n),i=_(this.#t,`workflows.mjs`),{manifest:a}=await this.createWorkflowsBundle({discoveredEntries:r,keepInterimBundleContext:!1,outfile:i,bundleFinalOutput:!1,format:`esm`,inputFiles:t,tsconfigPath:n}),o=_(this.#t,`steps.mjs`),s=await kt({builtinsPath:d(`workflow/internal/builtins`),discoveredEntries:r,outfile:o,preferAbsoluteFileImports:!0,projectRoot:this.config.projectRoot??this.config.workingDir,workingDir:this.config.workingDir}),c=e.nitroStepOutfile;c!==void 0&&c!==o&&await kt({builtinsPath:d(`workflow/internal/builtins`),discoveredEntries:r,outfile:c,preferAbsoluteFileImports:!0,projectRoot:this.config.projectRoot??this.config.workingDir,workingDir:this.config.workingDir}),await pn(i,o),await mn(i),await hn(i);let l=e.nitroWorkflowOutfile;l!==void 0&&l!==i&&(await x(g(l),{recursive:!0}),await Sn(i,l),c!==void 0&&(await pn(l,c),await mn(l),await hn(l))),await this.createManifest({workflowBundlePath:_(this.#t,`workflows.mjs`),manifestDir:this.#t,manifest:{steps:{...s.steps,...a.steps},workflows:{...s.workflows,...a.workflows},classes:{...s.classes,...a.classes}}}),await D(this.#t)}get transformProjectRoot(){return this.config.projectRoot??this.config.workingDir}async findTsConfigPath(){let e=this.config.workingDir;for(;;){for(let t of[`tsconfig.json`,`jsconfig.json`]){let n=_(e,t);try{return await S(n),n}catch(e){if(!(e instanceof Error&&`code`in e&&e.code===`ENOENT`))throw e}}let t=g(e);if(t===e)return;e=t}}async getInputFiles(){let e=this.config.dirs.map(e=>y(this.config.workingDir,e));return(await Promise.all(e.map(e=>pt(e)))).flat()}async discoverEntries(e,t,n){let r=this.#n.get(e);if(r!==void 0)return r;let i={discoveredSerdeFiles:[],discoveredSteps:[],discoveredWorkflows:[]};for(let t of e){let e=$e(await S(t,`utf8`));e.hasUseStep&&i.discoveredSteps.push(t),e.hasUseWorkflow&&i.discoveredWorkflows.push(t),e.hasSerde&&i.discoveredSerdeFiles.push(t)}return this.#n.set(e,i),i}async createWorkflowsBundle({bundleFinalOutput:e=!0,discoveredEntries:t,format:n=`cjs`,inputFiles:r,keepInterimBundleContext:i=this.config.watch,outfile:a,tsconfigPath:o}){let s=t??await this.discoverEntries(r,g(a),o),l=[...s.discoveredWorkflows].sort(),d=new Set(l),f=[...s.discoveredSerdeFiles].sort().filter(e=>!d.has(e)),p={},ee=[...l.map(e=>mt(e,this.config.workingDir)),...f.map(e=>mt(e,this.config.workingDir))].join(`
58
- `);return await yt({bundleFinalOutput:e,code:c(await u({cwd:this.config.workingDir,input:lt,platform:`neutral`,plugins:[ht(ee),gt(),_t(this.config.workingDir,{workflowCondition:!0}),vt({manifest:p,projectRoot:this.transformProjectRoot,sideEffectFiles:[...l,...f],workingDir:this.config.workingDir})],resolve:{conditionNames:[`ash-source`,`workflow`,`node`,`import`,`default`],extensions:[`.ts`,`.tsx`,`.mts`,`.cts`,`.js`,`.jsx`,`.mjs`,`.cjs`],mainFields:[`module`,`main`]},tsconfig:o??!1,write:!1,output:{banner:`globalThis.__private_workflows = new Map();`,codeSplitting:!1,comments:!1,format:`cjs`,sourcemap:`inline`}}),`intermediate workflow bundle for "${a}"`).code,format:n,outfile:a,workingDir:this.config.workingDir}),i?{bundleFinal:async t=>{await yt({bundleFinalOutput:e,code:t,format:n,outfile:a,workingDir:this.config.workingDir})},interimBundleCtx:void 0,manifest:p}:{manifest:p}}async createManifest({manifest:e,manifestDir:t}){let n={version:`1.0.0`,steps:bt(e.steps),workflows:xt(e.workflows),classes:St(e.classes)},r=JSON.stringify(n,null,2);return await x(t,{recursive:!0}),await T(_(t,`manifest.json`),r),r}async buildVercelOutput(e){await this.build();let t=_(this.#t,`vercel-build-output`,`functions`,`.well-known`,`workflow`,`v1`),n=_(t,`flow.func`),r=_(e.outputDir,`functions`,`.well-known`,`workflow`,`v1`),i=_(e.flowNitroOutputDir,`functions`,`__server.func`),a=_(e.flowNitroOutputDir,`functions`,`.well-known`,`workflow`,`v1`,`flow.func`),o=_(r,`flow.func`),s=_(r,`step.func`),c=_(r,`webhook`,`[token].func`);await $t({fallbackPath:i,sourcePath:a,targetPath:n}),await Promise.all([this.#a(n,{experimentalTriggers:Array.from([Ze]),maxDuration:`max`,runtime:e.runtime??null,shouldAddHelpers:!1}),b(_(this.#t,`manifest.json`),_(t,`manifest.json`))]),await un({functionDirectoryPath:n,workflowRoutePath:`/.well-known/workflow/v1/flow`}),await Promise.all([w(o,{force:!0,recursive:!0}),w(s,{force:!0,recursive:!0}),w(c,{force:!0,recursive:!0})]),await x(r,{recursive:!0}),await Promise.all([b(n,o,{recursive:!0}),b(_(t,`manifest.json`),_(r,`manifest.json`))])}async#i(){return[...await this.getInputFiles(),this.#e]}async#a(e,t){let n=_(e,`.vc-config.json`),r=await this.#o(n),i={...r};i.environment=Yt(r.environment),t.runtime!==null&&(i.runtime=t.runtime),t.maxDuration!==void 0&&(i.maxDuration=t.maxDuration),t.shouldAddHelpers!==void 0&&(i.shouldAddHelpers=t.shouldAddHelpers),t.shouldAddSourcemapSupport!==void 0&&(i.shouldAddSourcemapSupport=t.shouldAddSourcemapSupport),t.experimentalTriggers!==void 0&&(i.experimentalTriggers=[...t.experimentalTriggers]),await T(n,`${JSON.stringify(i,null,2)}\n`)}async#o(e){try{let t=JSON.parse(await S(e,`utf8`));if(typeof t==`object`&&t)return t}catch{}return{}}};async function pn(e,t){let n=await U(e);if(n===null||n.includes(`__ashWorkflowStepsRegistered`))return;let r=bn(g(e),t),i=[`import { __steps_registered as __ashWorkflowStepsRegistered } from ${JSON.stringify(r)};`,`void __ashWorkflowStepsRegistered;`,``].join(`
59
- `),a=n.match(/^import\s.+?;\n/m);if(a===null||a.index===void 0){await L(e,`${i}${n}`);return}let o=a.index+a[0].length;await L(e,`${n.slice(0,o)}${i}${n.slice(o)}`)}async function mn(e){let t=await U(e);if(t===null)return;let n=t;for(let e of[`workflow`,`workflow/api`,`workflow/internal/builtins`,`workflow/internal/private`,`workflow/runtime`]){let t=yn(d(e));n=vn(n,e,t)}n!==t&&await L(e,n)}async function hn(e){let t=await U(e);if(t===null)return;let n=t.indexOf(`const workflowCode = `),r=t.lastIndexOf(`;
60
-
61
- export const POST = workflowEntrypoint(workflowCode);`);if(n===-1||r===-1||r<=n)return;let i=n+21,a=t.slice(i,r);if(!a.trimStart().startsWith("`"))return;let o=_n(a,e),s=`${t.slice(0,i)}${gn(o)}${t.slice(r)}`;s!==t&&await L(e,s)}function gn(e){let t=xe.from(e,`utf8`).toString(`base64`).match(/.{1,16384}/g)??[``];return`Buffer.from(${JSON.stringify(t)}.join(""), "base64").toString("utf8")`}function _n(e,t){let n=e.trim();if(!n.startsWith("`")||!n.endsWith("`"))throw Error(`Expected generated workflow code literal in "${t}" to be a template.`);let r=n.slice(1,-1),i=``;for(let e=0;e<r.length;e+=1){let t=r[e];if(t!==`\\`){i+=t;continue}let n=r[e+1];if(n===`\\`||n==="`"||n===`$`){i+=n,e+=1;continue}i+=t}return i}function vn(e,t,n){return e.replaceAll(JSON.stringify(t),JSON.stringify(n)).replaceAll(`'${t}'`,JSON.stringify(n))}function yn(e){return o(e)}function bn(e,t){let n=v(e,t).replaceAll(`\\`,`/`);return n.startsWith(`.`)?n:`./${n}`}async function U(e){try{return await S(e,`utf8`)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return null;throw e}}async function xn(e){try{return await S(e)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return null;throw e}}async function Sn(e,t){let n=await S(e),r=await xn(t);r!==null&&r.equals(n)||await L(t,n)}const Cn=`\0ash-pruned-local-sandbox-backend`,wn=/[/\\]bindings[/\\]local\.js$/;function Tn(){return{name:`ash-hosted-sandbox-backend-prune`,load(e){return e===Cn?[`export function createLocalSandboxBackend() {`,` throw new Error("The local sandbox backend is pruned from hosted server bundles.");`,`}`,``].join(`
62
- `):null},resolveId(e){return wn.test(e)?Cn:null}}}const En=`${h}/runs`,Dn=`${h}/runs/:runId`,On=`${h}/runs/:runId/steps`,kn=`${h}/runs/:runId/events`;function An(e){return e===`all`||e===`app`}function jn(e){return W(e)}function W(e){return e===`all`||e===`flow`}function G(e,n){let r=`#ash-route-handler/${n.method??`ALL`} ${n.route}`,i=t(n.handlerPath);e.options.handlers.push({handler:r,method:n.method,route:n.route}),e.options.virtual[r]=[`import handler from ${i};`,`export default handler;`].join(`
63
- `)}function K(e){return _(e.options.buildDir,`workflow`)}function Mn(e,t){let n=v(e,t).replaceAll(`\\`,`/`);return n.startsWith(`.`)?n:`./${n}`}async function Nn(e,t){let n=_(K(e),`${t.bundleName}-handler.mjs`),r=g(n),i=Mn(r,t.bundlePath),a=(t.directHandlers??[]).map(e=>{let t=Mn(r,e.bundlePath);return{importSpecifier:t,isOwnBundle:t===i,queuePrefix:e.queuePrefix}});await x(r,{recursive:!0}),await T(n,Pn({bundlePath:i,directHandlers:a,runtimeImportSpecifier:t.runtimeImportSpecifier})),e.options.handlers.push({handler:n,route:t.route})}function Pn(e){let t=[`// Generated by Ash. Do not edit by hand.`,`import { POST } from ${JSON.stringify(e.bundlePath)};`];if(e.directHandlers.length>0&&e.runtimeImportSpecifier!==void 0){let n=0,r=e.directHandlers.map(e=>{if(e.isOwnBundle)return{...e,binding:`POST`};let t=`__ashWorkflowDirectHandler${n}`;return n+=1,{...e,binding:t}});for(let e of r)e.isOwnBundle||t.push(`import { POST as ${e.binding} } from ${JSON.stringify(e.importSpecifier)};`);t.push(`import { getWorld as __ashGetWorkflowWorld } from ${JSON.stringify(e.runtimeImportSpecifier)};`,``,`try {`,` const __ashWorkflowWorld = await __ashGetWorkflowWorld();`,` if (typeof __ashWorkflowWorld?.registerHandler === "function") {`);for(let e of r)t.push(` __ashWorkflowWorld.registerHandler(${JSON.stringify(e.queuePrefix)}, ${e.binding});`);t.push(` }`,`} catch (err) {`,` console.warn("[ash] Failed to register direct workflow queue handlers:", err);`,`}`)}return t.push(``,`export default async ({ req }) => {`,` return await POST(req);`,`};`,``),t.join(`
64
- `)}function Fn(e,n){let r=`#ash-route${n.route}`,i=t(n.modulePath);e.options.handlers.push({handler:r,method:n.method,route:n.route}),e.options.virtual[r]=[`import { ${n.handlerExport} } from ${i};`,`export default async (event) => ${n.handlerExport}(${n.args}, event.req);`].join(`
65
- `)}async function In(e,t,n){if(jn(n.surface)){let r=p(),i=new fn({appRoot:t.appRoot,compiledArtifactsBootstrapPath:t.compiledArtifacts.bootstrapPath,outDir:t.workflowBuildDir,rootDir:r,watch:e.options.dev}),a=Promise.resolve(),o=async()=>{await i.build({nitroStepOutfile:W(n.surface)?_(K(e),`steps.mjs`):void 0,nitroWorkflowOutfile:e.options.dev&&W(n.surface)?_(K(e),`workflows.mjs`):void 0})},s=async()=>{let e=a.then(o);a=e.catch(()=>{}),await e},c=!0;await s(),e.hooks.hook(`build:before`,async()=>{if(c){c=!1;return}await s()}),e.options.dev&&e.hooks.hook(`dev:reload`,async()=>{await s()})}let r=ae({appRoot:t.appRoot,dev:e.options.dev});An(n.surface)&&(G(e,{handlerPath:f(`src/internal/nitro/routes/index.ts`),method:`GET`,route:`/`}),G(e,{handlerPath:f(`src/internal/nitro/routes/health.ts`),method:`GET`,route:re}),Fn(e,{args:JSON.stringify({appRoot:r.appRoot}),handlerExport:`handleAgentInfoRequest`,method:`GET`,modulePath:f(`src/internal/nitro/routes/info.ts`),route:ne}),G(e,{handlerPath:f(`src/internal/nitro/routes/workflow-runs.ts`),method:`GET`,route:En}),G(e,{handlerPath:f(`src/internal/nitro/routes/workflow-run.ts`),method:`GET`,route:Dn}),G(e,{handlerPath:f(`src/internal/nitro/routes/workflow-run-steps.ts`),method:`GET`,route:On}),G(e,{handlerPath:f(`src/internal/nitro/routes/workflow-run-events.ts`),method:`GET`,route:kn}),se(e,{artifactsConfig:r,registrations:ie(t)}));let i=K(e),a=W(n.surface)?e.options.dev?_(i,`workflows.mjs`):_(t.workflowBuildDir,`workflows.mjs`):void 0,s=e.options.dev&&a!==void 0?[{bundlePath:a,queuePrefix:`__wkf_workflow_`}]:[],c=s.length>0?o(d(`workflow/runtime`)):void 0;a&&await Nn(e,{bundleName:`workflows`,bundlePath:a,directHandlers:s,route:`/.well-known/workflow/v1/flow`,runtimeImportSpecifier:c}),e.routing.sync()}function Ln(){return`${h}/cron/${_e()}`}function Rn(e){e.options.vercel!==void 0&&(e.options.vercel.cronHandlerRoute=Ln())}function zn(e){return{plugins:[l(),...e]}}function Bn(e){e.hooks.hook(`rollup:before`,(e,t)=>{Array.isArray(t.plugins)&&t.plugins.unshift({name:`ash:nitro-routing-import-specifiers`,transform(e,t){if(t!==`#nitro/virtual/routing`&&t!==`#nitro/virtual/routing-meta`)return null;let r=n(e);return r===e?null:{code:r,map:null}}})})}const Vn=`@alinea/generated.@appsignal/nodejs.@aws-sdk/client-s3.@aws-sdk/s3-presigned-post.@blockfrost/blockfrost-js.@highlight-run/node.@huggingface/transformers.@jpg-store/lucid-cardano.@libsql/client.@mikro-orm/core.@mikro-orm/knex.@node-rs/argon2.@node-rs/bcrypt.@prisma/client.@react-pdf/renderer.@sentry/profiling-node.@sparticuz/chromium.@sparticuz/chromium-min.@statsig/statsig-node-core.@swc/core.@xenova/transformers.@zenstackhq/runtime.argon2.autoprefixer.aws-crt.bcrypt.better-sqlite3.canvas.chromadb-default-embed.config.cpu-features.cypress.dd-trace.eslint.express.firebase-admin.htmlrewriter.import-in-the-middle.isolated-vm.jest.jsdom.keyv.libsql.mdx-bundler.mongodb.mongoose.newrelic.next-mdx-remote.next-seo.node-cron.node-pty.node-web-audio-api.onnxruntime-node.oslo.pg.pino.pino-pretty.pino-roll.playwright.playwright-core.postcss.prettier.prisma.puppeteer.puppeteer-core.ravendb.require-in-the-middle.rimraf.sharp.shiki.sqlite3.thread-stream.ts-morph.ts-node.typescript.vscode-oniguruma.webpack.websocket.zeromq`.split(`.`);function Hn(e){if(e)return{config:{version:3,framework:{version:m().version}}}}const Un=[`workflow`,`workflow/api`,`workflow/errors`,`workflow/internal/builtins`,`workflow/internal/private`,`workflow/runtime`],Wn=Symbol(`ash.workflow-transform-patched`),Gn=[`@napi-rs/keyring`];function Kn(){let e={};for(let t of Un)e[t]=d(t);return e}function qn(e){if(!e&&process.env.VERCEL)return`vercel`}function Jn(e){return e===`all`||e===`app`}function Yn(e){return e===`all`||e===`flow`}function Xn(e){return Yn(e)}function Zn(e,t){return e.options.dev?_(e.options.buildDir,`workflow`,`steps.mjs`):_(t.workflowBuildDir,`steps.mjs`)}function Qn(e){let t=e.compileResult.manifest.config.build;return[...new Set([...Gn,...Vn,...t?.externalDependencies??[]])].filter(e=>e!==ee)}function q(e){return e.replaceAll(`\\`,`/`)}function $n(e){let t=e.indexOf(`?`),n=e.indexOf(`#`),r=t===-1?n:n===-1?t:Math.min(t,n);return r===-1?e:e.slice(0,r)}function J(e){return e.startsWith(`/@fs/`)?e.slice(4):e}function Y(e,t){return t.startsWith(`file://`)?q(J($n(be(t)))):fe(t)?q(J($n(t))):q(J($n(y(e,t))))}function er(e,t){let n=q(e);return n.startsWith(t)||n.includes(`/.ash/workflow-cache/`)}function tr(e){let t=q(e);return process.platform===`win32`?t.toLowerCase():t}function nr(e){let t=/^\s*import\s+(?:.+?\s+from\s+)?["']([^"']+)["'];?\s*$/gm,n=[];for(let r of e.matchAll(t)){let e=r[1];e!==void 0&&n.push(e)}return n}function rr(e,t,n){return t.startsWith(`workflow`)?d(t):t.startsWith(`.`)||t.startsWith(`/`)||t.startsWith(`file://`)?Y(n===void 0?e:g(Y(e,n)),t):null}async function ir(e,t){let n=await S(e,`utf8`),r=new Set;for(let i of nr(n)){let n=rr(t,i,e);n!==null&&r.add(tr(n))}return r}async function ar(e,t){if(e.options.noExternals===!0)return;let n;try{n=await ir(t,e.options.rootDir)}catch(e){if(e instanceof Error&&`code`in e&&e.code===`ENOENT`)return;throw e}let r=Array.isArray(e.options.noExternals)?[...e.options.noExternals]:[];e.options.noExternals=[...new Set([...r,...n])]}function or(e,t){let n=q(e).replace(/\/$/,``),r=q(t),i=n.toLowerCase(),a=r.toLowerCase();if(a.startsWith(`${i}/`))return r.slice(n.length+1);if(a===i)return`.`;let o=v(n,r).replaceAll(`\\`,`/`);if(o.startsWith(`../`)&&(o=o.split(`/`).filter(e=>e!==`..`).join(`/`)),o.includes(`:`)||o.startsWith(`/`)){let e=r.split(`/`).pop();return e===void 0||e.length===0?`unknown.ts`:e}return o}function sr(e,t){let n=[t,_(e.options.buildDir,`workflow`)].map(t=>Y(e.options.rootDir,t));e.hooks.hook(`rollup:before`,(t,r)=>{Array.isArray(r.plugins)&&r.plugins.unshift({name:`ash:workflow-module-side-effects`,resolveId(t,r){let i=rr(e.options.rootDir,t,r)??Y(e.options.rootDir,t);return n.some(e=>er(i,e))?{id:i,moduleSideEffects:`no-treeshake`}:null}})})}function cr(e,t){let n=null,r=async()=>(n===null&&(n=await ir(t.stepEntrypointPath,e.options.rootDir)),n);e.hooks.hook(`build:before`,()=>{n=null}),e.options.dev&&e.hooks.hook(`dev:reload`,()=>{n=null}),e.hooks.hook(`rollup:before`,(t,n)=>{Array.isArray(n.plugins)&&n.plugins.unshift({name:`ash:workflow-step-module-side-effects`,async resolveId(t,n){let i=rr(e.options.rootDir,t,n);return i===null||!(await r()).has(tr(i))?null:{id:i,moduleSideEffects:`no-treeshake`}}})})}function lr(e,t){let n=null,r=async()=>(n===null&&(n=await ir(t.stepEntrypointPath,e.options.rootDir)),n);e.hooks.hook(`build:before`,()=>{n=null}),e.options.dev&&e.hooks.hook(`dev:reload`,()=>{n=null}),e.hooks.hook(`rollup:before`,(t,n)=>{Array.isArray(n.plugins)&&n.plugins.unshift({async transform(t,n){let i=await r(),a=Y(e.options.rootDir,n);return i.has(tr(a))?{code:(await A(or(e.options.rootDir,a),t,`step`,a,e.options.rootDir)).code,map:null}:null},name:`ash:workflow-step-transform`})})}function ur(e,t){let n=q(t);e.hooks.hook(`rollup:before`,(e,t)=>{Array.isArray(t.plugins)&&t.plugins.unshift({name:`ash:instrumentation-module-side-effects`,resolveId(e){return q(e)===n?{id:e,moduleSideEffects:`no-treeshake`}:null}})})}function dr(e,t){let n=q(t);e.hooks.hook(`rollup:before`,(e,t)=>{if(Array.isArray(t.plugins))for(let e of t.plugins){if(typeof e!=`object`||!e)continue;let t=e;if(t.name!==`workflow:transform`||t[Wn]===!0||typeof t.transform!=`function`)continue;let r=t.transform;t.transform=function(e,t,...i){return er(t,n)?null:r.call(this,e,t,...i)},t[Wn]=!0}})}async function X(e,t,n={}){let r=n.surface??`all`,i=(!t||n.schedules===!0)&&Jn(r)&&e.scheduleRegistrations.length>0,o=qn(t),s=o===`vercel`?Tn():null,c=s===null?[]:[s],l=zn(c),u=zn(c),d=Qn(e),p=a(e.appRoot,r),ee=e.compiledArtifacts.instrumentationPluginPath===void 0?[e.compiledArtifacts.bootstrapPath]:[e.compiledArtifacts.instrumentationPluginPath,e.compiledArtifacts.bootstrapPath];await E(p);let m=await Te({_cli:{command:t?`dev`:`build`},buildDir:p,dev:t,logLevel:t?1:void 0,output:n.outputDir===void 0?void 0:{dir:n.outputDir},preset:o,plugins:ee,publicAssets:[],scanDirs:Xn(r)?[te(`src/execution`)]:void 0,rolldownConfig:l,rollupConfig:u,rootDir:e.appRoot,serverDir:!1,traceDeps:d,vercel:Hn(o===`vercel`&&Jn(r))},t?{watch:!0}:void 0);if(await D(p),Bn(m),Yn(r)){let t=Kn();for(let[e,n]of Object.entries(t))m.options.alias[e]=n;sr(m,e.workflowBuildDir),dr(m,e.workflowBuildDir)}if(Xn(r)){let t=Zn(m,e);cr(m,{stepEntrypointPath:t}),lr(m,{stepEntrypointPath:t})}if(e.compiledArtifacts.instrumentationSourcePath!==void 0&&ur(m,e.compiledArtifacts.instrumentationSourcePath),t&&Yn(r)){let t=e.workflowBuildDir,n=new Set([q(_(t,`workflows.mjs`))]);m.hooks.hook(`rollup:before`,(e,t)=>{let r=t.external;t.external=(e,...t)=>{if(n.has(q(e)))return!0;if(typeof r==`function`)return r(e,...t)}})}return i&&(Rn(m),ce(m,{artifactsConfig:ae({appRoot:e.appRoot,dev:m.options.dev}),dispatchModulePath:f(`src/internal/nitro/routes/schedule-task.ts`),registrations:e.scheduleRegistrations})),await In(m,e,{surface:r}),Xn(r)&&await ar(m,Zn(m,e)),m}function fr(e){if(typeof e!=`string`||e.length===0)return`unknown`;let t=e.toLowerCase();return t===`slack`||t.includes(`slack`)?`slack`:t===`http`?`http`:t.includes(`webhook`)?`webhook`:`unknown`}function pr(e){let{manifest:t}=e;return{kind:`vercel-ash-agent-summary`,schemaVersion:2,generatorVersion:e.generatorVersion??m().version,agent:{name:t.config.name,description:t.config.description,modelId:t.config.model.id},instructions:t.instructions?gr(t.instructions):null,schedules:t.schedules.map(_r),tools:t.tools.map(vr),skills:t.skills.map(yr),connections:t.connections.map(br),channels:t.channels.filter(hr).map(xr),sandbox:t.sandbox===null?null:{logicalPath:t.sandbox.logicalPath},subagents:t.subagents.map(Sr),diagnostics:{errors:t.diagnosticsSummary.errors,warnings:t.diagnosticsSummary.warnings}}}async function mr(e){let t=pr({generatorVersion:e.generatorVersion,manifest:e.manifest}),n=_(e.appRoot,`.ash/agent-summary.json`);return await x(g(n),{recursive:!0}),await T(n,`${JSON.stringify(t,null,2)}\n`),n}function hr(e){return e.kind===`channel`}function gr(e){return{logicalPath:e.logicalPath,sourceKind:e.sourceKind,markdown:e.markdown}}function _r(e){return{name:e.name,cron:e.cron,logicalPath:e.logicalPath}}function vr(e){return{name:e.name,description:e.description,logicalPath:e.logicalPath}}function yr(e){return{name:e.name,description:e.description,logicalPath:e.logicalPath,sourceKind:e.sourceKind}}function br(e){let t={name:e.connectionName,description:e.description,url:e.url,logicalPath:e.logicalPath,type:`mcp`};return e.vercelConnect===void 0?t:{...t,vercelConnect:{connector:e.vercelConnect.connector}}}function xr(e){let t={name:e.name,method:e.method,urlPath:e.urlPath,type:fr(e.adapterKind),logicalPath:e.logicalPath};return e.adapterKind===void 0?t:{...t,adapterKind:e.adapterKind}}function Sr(e){return{name:e.name,description:e.description,logicalPath:e.logicalPath}}function Cr(){let e=process.env.VERCEL?.trim(),t=process.env.VERCEL_DEPLOYMENT_ID?.trim();return typeof e==`string`&&e.length>0&&typeof t==`string`&&t.length>0}async function wr(e){return Cr()?(await le(e),!0):!1}function Tr(e){return e.replace(/[\\/]+$/,``)}function Er(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Dr(e,t){return typeof t!=`string`||t.trim().length===0?null:y(e,t)}function Or(e){if(!Er(e.config)||!Er(e.config.experimentalServices))return;let t=!1,n;for(let r of Object.values(e.config.experimentalServices)){if(!Er(r))continue;if(r.framework===`nextjs`){t=!0;continue}if(r.framework!==`ash`)continue;let i=Dr(e.configRoot,r.entrypoint),a=typeof r.routePrefix==`string`?r.routePrefix.trim():``;i===e.appRoot&&a.length>0&&a!==`/`&&(n=a)}return t?n:void 0}async function kr(e){let t=e;for(;;){try{let n=_(t,`vercel.json`),r=JSON.parse(await S(n,`utf8`)),i=Or({appRoot:e,configRoot:t,config:r});if(i!==void 0)return i}catch(e){if(!(e instanceof Error&&`code`in e&&e.code===`ENOENT`))throw e}let n=g(t);if(n===t)return;t=n}}async function Ar(e){try{return JSON.parse(await S(_(e,`functions`,`__server.func`,`.vc-config.json`),`utf8`)).runtime}catch{return}}async function jr(e){let t=new fn({appRoot:e.appRoot,compiledArtifactsBootstrapPath:e.compiledArtifactsBootstrapPath,outDir:e.workflowBuildDir,rootDir:p(),watch:!1}),n=await Ar(e.outputDir);await t.buildVercelOutput({flowNitroOutputDir:e.flowNitroOutputDir,outputDir:e.outputDir,runtime:n})}async function Mr(e){let t=Tr(e.options.output.dir);return await E(t),await Ee(e),await Ce(e),await De(e),await Se(e),await D(t),t}async function Nr(e,t){let n=await X(e,!1,{outputDir:r(e.appRoot,t),surface:t});try{return await Mr(n)}finally{await n.close()}}async function Pr(e){let t=await oe(e);if(!process.env.VERCEL){let e=await X(t,!1);try{let n=await Mr(e);return await mr({manifest:t.compileResult.manifest,appRoot:t.appRoot}),n}finally{await e.close()}}let n=await X(t,!1,{surface:`app`});try{let e=await Mr(n);await wr({appRoot:t.appRoot,log(e){console.log(e)}});let r=await Nr(t,`flow`);await jr({appRoot:t.appRoot,compiledArtifactsBootstrapPath:t.compiledArtifacts.bootstrapPath,flowNitroOutputDir:r,outputDir:e,workflowBuildDir:t.workflowBuildDir});let i=await kr(t.appRoot);return i!==void 0&&await en(e,{servicePrefix:i}),await mr({manifest:t.compileResult.manifest,appRoot:t.appRoot}),e}finally{await n.close()}}const Z=65535,Q=`WORKFLOW_LOCAL_BASE_URL`,$=`PORT`,Fr=new Set([`[::]`,`::`,`0.0.0.0`]);function Ir(e){let t=new URL(e);return Fr.has(t.hostname)?(t.hostname=`127.0.0.1`,t.toString()):e}function Lr(e){return e instanceof Error&&`code`in e&&e.code===`EADDRINUSE`}function Rr(e){let t=typeof e==`string`?Number(e):e??3e3;if(!Number.isInteger(t)||t<0||t>Z)throw Error(`Invalid development server port "${String(e)}". Expected an integer between 0 and ${Z}.`);return t}function zr(){let e=process.env[$];if(e===void 0||e.trim()===``)return;let t=Number(e);if(!Number.isInteger(t)||t<0||t>Z)throw Error(`Invalid ${$} environment variable "${e}". Expected an integer between 0 and ${Z}.`);return t}function Br(e){let t=Rr(e.port);if(t===0||!e.retryOnAddressInUse)return[t];let n=[];for(let e=0;e<10;e+=1){let r=t+e;if(r>65535)break;n.push(r)}return n}function Vr(e){let t=process.env[Q],n=process.env[$],r=new URL(Ir(e));return process.env[Q]=r.origin,r.port&&(process.env[$]=r.port),()=>{t===void 0?delete process.env[Q]:process.env[Q]=t,n===void 0?delete process.env[$]:process.env[$]=n}}function Hr(e){let t=()=>{};return e.once(`error`,t),()=>{e.off(`error`,t)}}function Ur(e){let t=e.upgrade.bind(e);e.upgrade=async(e,n,r)=>{let i=Hr(n);try{await t(e,n,r)}catch{n.destroyed||n.destroy()}finally{i()}}}async function Wr(e){let t=Br({port:e.port,retryOnAddressInUse:e.retryOnAddressInUse}),n;for(let r of t){let t=e.devServer.listen({hostname:e.host,port:r,silent:!0});try{return await t.ready(),t}catch(r){if(n=r,await t.close().catch(()=>{}),!Lr(r)||!e.retryOnAddressInUse)throw r}}throw Error(`Failed to start Nitro dev server after ${t.length} attempts. Tried ports ${t.join(`, `)}.`,{cause:n})}async function Gr(e,t={}){let n=t.schedules===!0,r=await oe(e);await le({appRoot:r.appRoot,log:e=>console.log(e)});let i=await X(r,!0,{schedules:n}),a=we(i);Ur(a);let o=t.host??i.options.devServer.hostname,s=t.port??zr(),c=s??i.options.devServer.port,l=s===void 0,u;try{let e=await Wr({devServer:a,host:o,port:c,retryOnAddressInUse:l});if(!e.url)throw Error(`Nitro dev server did not expose a URL.`);u=Vr(e.url),await Ee(i),await Se(i);let{startAuthoredSourceWatcher:t}=await import(`./dev-authored-source-watcher-B4PaZGUr.js`),s=await t({nitro:i,preparedHost:r,schedulesEnabled:n}),d=u;if(d===void 0)throw Error(`Workflow local queue environment was not initialized.`);return{async close(){try{await s.close(),await a.close(),await i.close()}finally{d()}},url:Ir(e.url)}}catch(e){throw u?.(),await a.close().catch(()=>{}),await i.close().catch(()=>{}),e}}var Kr=e({buildHost:()=>qr,startHost:()=>Jr});async function qr(e){return await Pr(e)}async function Jr(e,t={}){return await Gr(e,t)}export{Jr as n,Kr as t};
@@ -1 +0,0 @@
1
- import{createRequire as e}from"node:module";import{basename as t,dirname as n,join as r}from"node:path";import{existsSync as i,readFileSync as a,realpathSync as o}from"node:fs";import{fileURLToPath as s}from"node:url";const c=`experimental-ash`;let l;const u=`__ASH_PACKAGE_VERSION__`,d={"workflow/api":`src/compiled/@workflow/core/runtime.js`,"workflow/errors":`src/compiled/@workflow/errors/index.js`,"workflow/internal/private":`src/compiled/@workflow/core/private.js`,"workflow/runtime":`src/compiled/@workflow/core/runtime.js`};function f(){return u===`__ASH_PACKAGE_VERSION_PLACEHOLDER__`?`0.0.0`:u}const p={name:c,version:f()};function m(){return typeof __filename==`string`?__filename:h()}function h(){let e=Error.prepareStackTrace;try{Error.prepareStackTrace=(e,t)=>t;let e=Error().stack?.[0]?.getFileName();if(typeof e!=`string`||e.length===0)throw Error(`Failed to resolve the current module path from the stack trace.`);return e.startsWith(`file:`)?s(e):e}finally{Error.prepareStackTrace=e}}const g=e(m());function _(e){return t(e)===`dist`&&i(r(n(e),`package.json`))}function v(){let e=n(o(m()));for(;;){if(_(e))return e;let t=n(e);if(t===e)return null;e=t}}function y(e){let t=e;for(;;){if(i(r(t,`package.json`))&&!_(t))return t;let a=n(t);if(a===t)throw Error(`Failed to resolve package root from "${e}".`);t=a}}function b(){return y(n(o(m())))}function x(){try{return b()}catch{return}}function S(e){return e.replace(/\.[cm]?tsx?$/,`.js`)}function C(e){let t=v();return t===null?r(b(),e):r(t,S(e))}function w(e){let t=v();return r(t===null?b():t,e)}function T(e){let t=v();return t===null?r(b(),`.generated`,`compiled`,e.replace(/^src\/compiled\//,``)):r(t,e)}function E(e){let t=e;if(!(typeof t.name!=`string`||typeof t.version!=`string`))return{name:t.name,version:t.version}}function D(e,t){let n=E(JSON.parse(a(e,`utf8`)));if(n?.name===t)return n}function O(){if(l)return l;let e=x(),t=e===void 0?void 0:D(r(e,`package.json`),c);if(t)return l=t,l;try{let e=D(g.resolve(`${c}/package.json`),c);if(e)return l=e,l}catch{}return l={...p},l}function k(e){if(e===`workflow`)return C(`src/internal/workflow/index.ts`);if(e===`workflow/internal/builtins`)return C(`src/internal/workflow/builtins.ts`);let t=d[e];return t===void 0?g.resolve(e):T(t)}export{k as a,C as i,b as n,c as o,w as r,O as t};