@kodycodes/cli 1.26.1 → 1.26.3

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 (271) hide show
  1. package/dist/auth-4FW6GCLG.js +26 -0
  2. package/dist/auth-4FW6GCLG.js.map +6 -0
  3. package/dist/bin.js +27 -3
  4. package/dist/bin.js.map +6 -1
  5. package/dist/chunk-46IJPEID.js +30 -0
  6. package/dist/chunk-46IJPEID.js.map +6 -0
  7. package/dist/chunk-4D6ORNXY.js +24404 -0
  8. package/dist/chunk-4D6ORNXY.js.map +6 -0
  9. package/dist/chunk-64IM6G4Z.js +341 -0
  10. package/dist/chunk-64IM6G4Z.js.map +6 -0
  11. package/dist/{package-local-runtime-source.js → chunk-64XN367G.js} +373 -52
  12. package/dist/chunk-64XN367G.js.map +6 -0
  13. package/dist/chunk-6XQP5SWX.js +26 -0
  14. package/dist/chunk-6XQP5SWX.js.map +6 -0
  15. package/dist/chunk-75RZUXQL.js +62 -0
  16. package/dist/chunk-75RZUXQL.js.map +6 -0
  17. package/dist/chunk-BISUL7CE.js +106 -0
  18. package/dist/chunk-BISUL7CE.js.map +6 -0
  19. package/dist/chunk-BPGY4IE7.js +57 -0
  20. package/dist/chunk-BPGY4IE7.js.map +6 -0
  21. package/dist/chunk-CASGRYOF.js +21 -0
  22. package/dist/chunk-CASGRYOF.js.map +6 -0
  23. package/dist/chunk-CWWHR4FH.js +19 -0
  24. package/dist/chunk-CWWHR4FH.js.map +6 -0
  25. package/dist/chunk-D55XPY3T.js +1382 -0
  26. package/dist/chunk-D55XPY3T.js.map +6 -0
  27. package/dist/chunk-EOCV74B2.js +948 -0
  28. package/dist/chunk-EOCV74B2.js.map +6 -0
  29. package/dist/chunk-FBVNFWR6.js +437 -0
  30. package/dist/chunk-FBVNFWR6.js.map +6 -0
  31. package/dist/chunk-G4YN6XP5.js +14 -0
  32. package/dist/chunk-G4YN6XP5.js.map +6 -0
  33. package/dist/chunk-G6LJWROP.js +18 -0
  34. package/dist/chunk-G6LJWROP.js.map +6 -0
  35. package/dist/chunk-IHP6PV6X.js +49 -0
  36. package/dist/chunk-IHP6PV6X.js.map +6 -0
  37. package/dist/chunk-JWEFKKAD.js +24 -0
  38. package/dist/chunk-JWEFKKAD.js.map +6 -0
  39. package/dist/chunk-LWNB26KO.js +147 -0
  40. package/dist/chunk-LWNB26KO.js.map +6 -0
  41. package/dist/chunk-OVGXPRSY.js +20 -0
  42. package/dist/chunk-OVGXPRSY.js.map +6 -0
  43. package/dist/chunk-PDWCKWQF.js +453 -0
  44. package/dist/chunk-PDWCKWQF.js.map +6 -0
  45. package/dist/chunk-QHBCP4OB.js +44 -0
  46. package/dist/chunk-QHBCP4OB.js.map +6 -0
  47. package/dist/chunk-R4IUV5P5.js +664 -0
  48. package/dist/chunk-R4IUV5P5.js.map +6 -0
  49. package/dist/chunk-RM34N3KI.js +525 -0
  50. package/dist/chunk-RM34N3KI.js.map +6 -0
  51. package/dist/chunk-RTWUNV76.js +309 -0
  52. package/dist/chunk-RTWUNV76.js.map +6 -0
  53. package/dist/chunk-SMURF26I.js +23 -0
  54. package/dist/chunk-SMURF26I.js.map +6 -0
  55. package/dist/chunk-SXHULGL4.js +426 -0
  56. package/dist/chunk-SXHULGL4.js.map +6 -0
  57. package/dist/chunk-TIL35OWA.js +1959 -0
  58. package/dist/chunk-TIL35OWA.js.map +6 -0
  59. package/dist/chunk-VQS5YSCI.js +54 -0
  60. package/dist/chunk-VQS5YSCI.js.map +6 -0
  61. package/dist/chunk-XDCOWU5R.js +696 -0
  62. package/dist/chunk-XDCOWU5R.js.map +6 -0
  63. package/dist/chunk-XOPPGRUP.js +605 -0
  64. package/dist/chunk-XOPPGRUP.js.map +6 -0
  65. package/dist/cli.js +74 -1500
  66. package/dist/cli.js.map +6 -1
  67. package/dist/dev/dev-watcher.d.ts +5 -1
  68. package/dist/dev-command-3LX234N6.js +4900 -0
  69. package/dist/dev-command-3LX234N6.js.map +6 -0
  70. package/dist/git-credential-FUE3JE3T.js +163 -0
  71. package/dist/git-credential-FUE3JE3T.js.map +6 -0
  72. package/dist/install-ZML2TCDG.js +10694 -0
  73. package/dist/install-ZML2TCDG.js.map +6 -0
  74. package/dist/local-execute-SZV6XN4T.js +368 -0
  75. package/dist/local-execute-SZV6XN4T.js.map +6 -0
  76. package/dist/local-package-run-2TMCAZZ2.js +23 -0
  77. package/dist/local-package-run-2TMCAZZ2.js.map +6 -0
  78. package/dist/mcp-G2AWTIXR.js +21 -0
  79. package/dist/mcp-G2AWTIXR.js.map +6 -0
  80. package/dist/mock-dep-resolve-TVABDNR7.js +52 -0
  81. package/dist/mock-dep-resolve-TVABDNR7.js.map +6 -0
  82. package/dist/mock-fetch-gateway-B5TFGGQS.js +34 -0
  83. package/dist/mock-fetch-gateway-B5TFGGQS.js.map +6 -0
  84. package/dist/mock-local-deps-5SZT3PWT.js +197 -0
  85. package/dist/mock-local-deps-5SZT3PWT.js.map +6 -0
  86. package/dist/mock-server-SV2IKC4I.js +21 -0
  87. package/dist/mock-server-SV2IKC4I.js.map +6 -0
  88. package/dist/open-api-client-DVVMLY7P.js +42 -0
  89. package/dist/open-api-client-DVVMLY7P.js.map +6 -0
  90. package/dist/org-X7B5BI4R.js +132 -0
  91. package/dist/org-X7B5BI4R.js.map +6 -0
  92. package/dist/package-manifest-QH2RU64C.js +14 -0
  93. package/dist/package-manifest-QH2RU64C.js.map +6 -0
  94. package/dist/remote-execute-QMQDVHOY.js +110 -0
  95. package/dist/remote-execute-QMQDVHOY.js.map +6 -0
  96. package/dist/setup-git-5KCUBYPB.js +88 -0
  97. package/dist/setup-git-5KCUBYPB.js.map +6 -0
  98. package/dist/skill-ENPATRIW.js +43 -0
  99. package/dist/skill-ENPATRIW.js.map +6 -0
  100. package/dist/store-WTMRH527.js +48 -0
  101. package/dist/store-WTMRH527.js.map +6 -0
  102. package/dist/structured-error-C65GQ53Z.js +13 -0
  103. package/dist/structured-error-C65GQ53Z.js.map +6 -0
  104. package/dist/target-3QHY7JT4.js +45 -0
  105. package/dist/target-3QHY7JT4.js.map +6 -0
  106. package/dist/webapi-NTVP4BO3.js +2482 -0
  107. package/dist/webapi-NTVP4BO3.js.map +6 -0
  108. package/package.json +8 -8
  109. package/dist/add-mcp-install.js +0 -59
  110. package/dist/add-mcp-install.js.map +0 -1
  111. package/dist/api-token-store.js +0 -120
  112. package/dist/api-token-store.js.map +0 -1
  113. package/dist/api-token.js +0 -238
  114. package/dist/api-token.js.map +0 -1
  115. package/dist/auth-bootstrap.js +0 -373
  116. package/dist/auth-bootstrap.js.map +0 -1
  117. package/dist/auth.js +0 -386
  118. package/dist/auth.js.map +0 -1
  119. package/dist/capability-proxy.js +0 -527
  120. package/dist/capability-proxy.js.map +0 -1
  121. package/dist/credential-call-map.js +0 -155
  122. package/dist/credential-call-map.js.map +0 -1
  123. package/dist/credential-client-runtime-source.js +0 -9
  124. package/dist/credential-client-runtime-source.js.map +0 -1
  125. package/dist/credentialed-fetch-scan.js +0 -98
  126. package/dist/credentialed-fetch-scan.js.map +0 -1
  127. package/dist/defaults.js +0 -34
  128. package/dist/defaults.js.map +0 -1
  129. package/dist/detect-running-hosts.js +0 -13
  130. package/dist/detect-running-hosts.js.map +0 -1
  131. package/dist/dev/dev-assets.js +0 -202
  132. package/dist/dev/dev-assets.js.map +0 -1
  133. package/dist/dev/dev-bundler.js +0 -65
  134. package/dist/dev/dev-bundler.js.map +0 -1
  135. package/dist/dev/dev-events.js +0 -94
  136. package/dist/dev/dev-events.js.map +0 -1
  137. package/dist/dev/dev-port.js +0 -80
  138. package/dist/dev/dev-port.js.map +0 -1
  139. package/dist/dev/dev-protocol.js +0 -14
  140. package/dist/dev/dev-protocol.js.map +0 -1
  141. package/dist/dev/dev-registry.js +0 -95
  142. package/dist/dev/dev-registry.js.map +0 -1
  143. package/dist/dev/dev-watcher.js +0 -156
  144. package/dist/dev/dev-watcher.js.map +0 -1
  145. package/dist/dev/error-page.js +0 -64
  146. package/dist/dev/error-page.js.map +0 -1
  147. package/dist/dev/live-reload.js +0 -148
  148. package/dist/dev/live-reload.js.map +0 -1
  149. package/dist/dev/prebuild.js +0 -102
  150. package/dist/dev/prebuild.js.map +0 -1
  151. package/dist/dev/process-reaper.js +0 -151
  152. package/dist/dev/process-reaper.js.map +0 -1
  153. package/dist/dev/stack-trace.js +0 -56
  154. package/dist/dev/stack-trace.js.map +0 -1
  155. package/dist/dev/workerd-process.js +0 -118
  156. package/dist/dev/workerd-process.js.map +0 -1
  157. package/dist/dev-command.js +0 -672
  158. package/dist/dev-command.js.map +0 -1
  159. package/dist/discover-login-identity.js +0 -77
  160. package/dist/discover-login-identity.js.map +0 -1
  161. package/dist/discover-org.js +0 -62
  162. package/dist/discover-org.js.map +0 -1
  163. package/dist/git-credential.js +0 -147
  164. package/dist/git-credential.js.map +0 -1
  165. package/dist/help.js +0 -333
  166. package/dist/help.js.map +0 -1
  167. package/dist/host-catalog.js +0 -427
  168. package/dist/host-catalog.js.map +0 -1
  169. package/dist/host-config.js +0 -80
  170. package/dist/host-config.js.map +0 -1
  171. package/dist/http-error-body.js +0 -35
  172. package/dist/http-error-body.js.map +0 -1
  173. package/dist/install-hosts.js +0 -328
  174. package/dist/install-hosts.js.map +0 -1
  175. package/dist/install.js +0 -120
  176. package/dist/install.js.map +0 -1
  177. package/dist/invoke-passthrough.js +0 -60
  178. package/dist/invoke-passthrough.js.map +0 -1
  179. package/dist/local-bundle.js +0 -200
  180. package/dist/local-bundle.js.map +0 -1
  181. package/dist/local-execute-auth.js +0 -53
  182. package/dist/local-execute-auth.js.map +0 -1
  183. package/dist/local-execute.js +0 -338
  184. package/dist/local-execute.js.map +0 -1
  185. package/dist/local-gateway-fetch-forward.js +0 -135
  186. package/dist/local-gateway-fetch-forward.js.map +0 -1
  187. package/dist/local-host-runtime-surface.js +0 -75
  188. package/dist/local-host-runtime-surface.js.map +0 -1
  189. package/dist/local-package-graph.js +0 -405
  190. package/dist/local-package-graph.js.map +0 -1
  191. package/dist/local-package-run.js +0 -307
  192. package/dist/local-package-run.js.map +0 -1
  193. package/dist/local-runtime-bridge.js +0 -132
  194. package/dist/local-runtime-bridge.js.map +0 -1
  195. package/dist/local-runtime-source.js +0 -541
  196. package/dist/local-runtime-source.js.map +0 -1
  197. package/dist/login-callback-assets.js +0 -10
  198. package/dist/login-callback-assets.js.map +0 -1
  199. package/dist/login-callback-page.js +0 -362
  200. package/dist/login-callback-page.js.map +0 -1
  201. package/dist/mcp.js +0 -134
  202. package/dist/mcp.js.map +0 -1
  203. package/dist/mock/ensure-msw.js +0 -215
  204. package/dist/mock/ensure-msw.js.map +0 -1
  205. package/dist/mock/install-mock-fetch-shim.js +0 -36
  206. package/dist/mock/install-mock-fetch-shim.js.map +0 -1
  207. package/dist/mock/load-package-mocks.js +0 -136
  208. package/dist/mock/load-package-mocks.js.map +0 -1
  209. package/dist/mock/mock-fetch-gateway.js +0 -343
  210. package/dist/mock/mock-fetch-gateway.js.map +0 -1
  211. package/dist/mock/mock-gateway-fetch-shim.js +0 -104
  212. package/dist/mock/mock-gateway-fetch-shim.js.map +0 -1
  213. package/dist/mock/mock-server.js +0 -499
  214. package/dist/mock/mock-server.js.map +0 -1
  215. package/dist/mock/mock-storage.js +0 -186
  216. package/dist/mock/mock-storage.js.map +0 -1
  217. package/dist/mock/mock-supported.js +0 -63
  218. package/dist/mock/mock-supported.js.map +0 -1
  219. package/dist/mock-dep-resolve.js +0 -47
  220. package/dist/mock-dep-resolve.js.map +0 -1
  221. package/dist/mock-local-deps.js +0 -207
  222. package/dist/mock-local-deps.js.map +0 -1
  223. package/dist/network-error.js +0 -11
  224. package/dist/network-error.js.map +0 -1
  225. package/dist/node-engine.js +0 -21
  226. package/dist/node-engine.js.map +0 -1
  227. package/dist/oauth-provider.js +0 -107
  228. package/dist/oauth-provider.js.map +0 -1
  229. package/dist/onboarding-prompt.js +0 -15
  230. package/dist/onboarding-prompt.js.map +0 -1
  231. package/dist/open-api-client.js +0 -432
  232. package/dist/open-api-client.js.map +0 -1
  233. package/dist/open-url.js +0 -21
  234. package/dist/open-url.js.map +0 -1
  235. package/dist/org-resolve.js +0 -16
  236. package/dist/org-resolve.js.map +0 -1
  237. package/dist/org-slug.js +0 -11
  238. package/dist/org-slug.js.map +0 -1
  239. package/dist/org.js +0 -100
  240. package/dist/org.js.map +0 -1
  241. package/dist/package-app-dev.js +0 -905
  242. package/dist/package-app-dev.js.map +0 -1
  243. package/dist/package-collaborators.js +0 -179
  244. package/dist/package-collaborators.js.map +0 -1
  245. package/dist/package-info.js +0 -19
  246. package/dist/package-info.js.map +0 -1
  247. package/dist/package-local-runtime-source.js.map +0 -1
  248. package/dist/package-manifest.js +0 -364
  249. package/dist/package-manifest.js.map +0 -1
  250. package/dist/process-info.js +0 -14
  251. package/dist/process-info.js.map +0 -1
  252. package/dist/redact.js +0 -16
  253. package/dist/redact.js.map +0 -1
  254. package/dist/remote-execute.js +0 -108
  255. package/dist/remote-execute.js.map +0 -1
  256. package/dist/setup-git.js +0 -676
  257. package/dist/setup-git.js.map +0 -1
  258. package/dist/skill.js +0 -35
  259. package/dist/skill.js.map +0 -1
  260. package/dist/store.js +0 -597
  261. package/dist/store.js.map +0 -1
  262. package/dist/structured-error.js +0 -57
  263. package/dist/structured-error.js.map +0 -1
  264. package/dist/target.js +0 -52
  265. package/dist/target.js.map +0 -1
  266. package/dist/tool-result.js +0 -19
  267. package/dist/tool-result.js.map +0 -1
  268. package/dist/which.js +0 -22
  269. package/dist/which.js.map +0 -1
  270. package/dist/workerd-binary.js +0 -98
  271. package/dist/workerd-binary.js.map +0 -1
@@ -0,0 +1,426 @@
1
+ import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);
2
+ import {
3
+ localExecuteGatewayFetchShimModuleName,
4
+ localWorkerModuleNames,
5
+ runSecretHeader
6
+ } from "./chunk-D55XPY3T.js";
7
+ import {
8
+ callCapabilityProxyGatewayFetchStream,
9
+ gatewayFetchHeadersHeaderName,
10
+ gatewayFetchMethodHeaderName,
11
+ gatewayFetchPackageIdHeaderName,
12
+ gatewayFetchUrlHeaderName,
13
+ secretResolutionHeaderName
14
+ } from "./chunk-R4IUV5P5.js";
15
+ import {
16
+ redact
17
+ } from "./chunk-CASGRYOF.js";
18
+
19
+ // src/local-runtime-bridge.ts
20
+ import {
21
+ createServer
22
+ } from "node:http";
23
+ import { Readable } from "node:stream";
24
+ var localBridgeCallPath = "/call";
25
+ var localBridgeGatewayFetchPath = "/gateway-fetch";
26
+ async function startLocalRuntimeBridge(input) {
27
+ const inFlight = new AbortController();
28
+ const server = createServer(async (request, response) => {
29
+ const replyJson = (status, body, headers = {}) => {
30
+ response.writeHead(status, {
31
+ "content-type": "application/json",
32
+ ...headers
33
+ });
34
+ response.end(JSON.stringify(body));
35
+ };
36
+ const replyGatewayFetchError = (status, message, code) => {
37
+ replyJson(
38
+ status,
39
+ { error: { code, message } },
40
+ { "Cache-Control": "no-store" }
41
+ );
42
+ };
43
+ if (request.headers[runSecretHeader] !== input.runSecret) {
44
+ replyJson(403, {
45
+ error: "Forbidden: missing run secret. Only the workerd started by this kody process may call its bridge."
46
+ });
47
+ return;
48
+ }
49
+ if (request.method === "POST" && request.url === localBridgeCallPath) {
50
+ try {
51
+ const call = parseBridgeCall(await readBodyText(request));
52
+ const result = await input.forwardCall(call, inFlight.signal);
53
+ replyJson(200, { result });
54
+ } catch (error) {
55
+ replyJson(200, {
56
+ error: redact(error instanceof Error ? error.message : String(error))
57
+ });
58
+ }
59
+ return;
60
+ }
61
+ if (request.method === "POST" && request.url === localBridgeGatewayFetchPath) {
62
+ try {
63
+ await input.forwardGatewayFetchStream({
64
+ request,
65
+ response,
66
+ signal: inFlight.signal
67
+ });
68
+ } catch (error) {
69
+ if (response.headersSent) {
70
+ response.destroy(
71
+ error instanceof Error ? error : new Error(String(error))
72
+ );
73
+ return;
74
+ }
75
+ replyGatewayFetchError(
76
+ 502,
77
+ redact(error instanceof Error ? error.message : String(error)),
78
+ "gateway_fetch_failed"
79
+ );
80
+ }
81
+ return;
82
+ }
83
+ replyJson(404, {
84
+ error: "Not found: the kody bridge only accepts POST /call and POST /gateway-fetch."
85
+ });
86
+ });
87
+ await new Promise((resolve, reject) => {
88
+ server.once("error", reject);
89
+ server.listen(0, "127.0.0.1", () => resolve());
90
+ });
91
+ return {
92
+ port: server.address().port,
93
+ close: () => new Promise((resolve) => {
94
+ inFlight.abort();
95
+ server.closeAllConnections();
96
+ server.close(() => resolve());
97
+ })
98
+ };
99
+ }
100
+ function parseBridgeCall(body) {
101
+ const parsed = JSON.parse(body);
102
+ if (!Array.isArray(parsed.path) || parsed.path.length === 0 || !parsed.path.every((segment) => typeof segment === "string")) {
103
+ throw new Error("Invalid kody:runtime call path.");
104
+ }
105
+ return {
106
+ path: parsed.path,
107
+ args: Array.isArray(parsed.args) ? parsed.args : []
108
+ };
109
+ }
110
+ async function readBodyText(stream) {
111
+ const chunks = [];
112
+ for await (const chunk of stream) {
113
+ chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
114
+ }
115
+ return Buffer.concat(chunks).toString("utf8");
116
+ }
117
+ async function readBodyBuffer(stream) {
118
+ const chunks = [];
119
+ for await (const chunk of stream) {
120
+ chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
121
+ }
122
+ return Buffer.concat(chunks);
123
+ }
124
+ async function writeWebResponse(response, web) {
125
+ const headers = {};
126
+ web.headers.forEach((value, name) => {
127
+ const existing = headers[name];
128
+ if (existing === void 0) {
129
+ headers[name] = value;
130
+ return;
131
+ }
132
+ headers[name] = Array.isArray(existing) ? [...existing, value] : [existing, value];
133
+ });
134
+ response.writeHead(web.status, web.statusText, headers);
135
+ if (!web.body) {
136
+ response.end();
137
+ return;
138
+ }
139
+ const nodeStream = Readable.fromWeb(
140
+ web.body
141
+ );
142
+ await new Promise((resolve, reject) => {
143
+ nodeStream.on("error", reject);
144
+ response.on("error", reject);
145
+ response.on("finish", () => resolve());
146
+ nodeStream.pipe(response);
147
+ });
148
+ }
149
+
150
+ // src/local-gateway-fetch-forward.ts
151
+ function headerValue(headers, name) {
152
+ const value = headers[name.toLowerCase()];
153
+ if (Array.isArray(value)) return value[0];
154
+ return value;
155
+ }
156
+ async function forwardLocalGatewayFetchStream(input) {
157
+ const url = headerValue(input.request.headers, gatewayFetchUrlHeaderName)?.trim();
158
+ if (!url) {
159
+ await writeWebResponse(
160
+ input.response,
161
+ Response.json(
162
+ {
163
+ error: {
164
+ code: "invalid_request",
165
+ message: "X-Kody-Gateway-Url is required and must be a non-empty absolute URL."
166
+ }
167
+ },
168
+ { status: 400, headers: { "Cache-Control": "no-store" } }
169
+ )
170
+ );
171
+ return;
172
+ }
173
+ if (input.mockFetchGateway) {
174
+ const body = await readBodyBuffer(input.request);
175
+ const method2 = headerValue(input.request.headers, gatewayFetchMethodHeaderName)?.trim() || "GET";
176
+ const packageId2 = headerValue(
177
+ input.request.headers,
178
+ gatewayFetchPackageIdHeaderName
179
+ )?.trim();
180
+ const rawHeaders2 = headerValue(
181
+ input.request.headers,
182
+ gatewayFetchHeadersHeaderName
183
+ );
184
+ let headers = {};
185
+ if (rawHeaders2) {
186
+ try {
187
+ const parsed = JSON.parse(rawHeaders2);
188
+ if (parsed != null && typeof parsed === "object" && !Array.isArray(parsed)) {
189
+ headers = Object.fromEntries(
190
+ Object.entries(parsed).flatMap(
191
+ ([key, value]) => typeof value === "string" ? [[key, value]] : []
192
+ )
193
+ );
194
+ }
195
+ } catch {
196
+ await writeWebResponse(
197
+ input.response,
198
+ Response.json(
199
+ {
200
+ error: {
201
+ code: "invalid_request",
202
+ message: "X-Kody-Gateway-Headers must be valid JSON: an object of header names to string values."
203
+ }
204
+ },
205
+ { status: 400, headers: { "Cache-Control": "no-store" } }
206
+ )
207
+ );
208
+ return;
209
+ }
210
+ }
211
+ const contentType2 = headerValue(input.request.headers, "content-type");
212
+ if (contentType2) headers["content-type"] = contentType2;
213
+ const resolution = headerValue(
214
+ input.request.headers,
215
+ secretResolutionHeaderName
216
+ );
217
+ if (resolution) headers[secretResolutionHeaderName] = resolution;
218
+ const result = await input.mockFetchGateway.handle(
219
+ {
220
+ ...packageId2 ? { packageId: packageId2 } : {},
221
+ request: {
222
+ url,
223
+ method: method2,
224
+ headers,
225
+ ...body.byteLength > 0 ? { bodyBase64: body.toString("base64") } : {}
226
+ }
227
+ },
228
+ input.signal
229
+ );
230
+ const nullBody = result.status === 101 || result.status === 103 || result.status === 204 || result.status === 205 || result.status === 304;
231
+ const bytes = Buffer.from(result.bodyBase64 ?? "", "base64");
232
+ await writeWebResponse(
233
+ input.response,
234
+ new Response(nullBody ? null : bytes, {
235
+ status: result.status,
236
+ statusText: result.statusText,
237
+ headers: result.headers
238
+ })
239
+ );
240
+ return;
241
+ }
242
+ const method = headerValue(input.request.headers, gatewayFetchMethodHeaderName);
243
+ const packageId = headerValue(
244
+ input.request.headers,
245
+ gatewayFetchPackageIdHeaderName
246
+ );
247
+ const rawHeaders = headerValue(
248
+ input.request.headers,
249
+ gatewayFetchHeadersHeaderName
250
+ );
251
+ let outboundHeaders;
252
+ if (rawHeaders) {
253
+ try {
254
+ const parsed = JSON.parse(rawHeaders);
255
+ if (parsed != null && typeof parsed === "object" && !Array.isArray(parsed)) {
256
+ outboundHeaders = Object.fromEntries(
257
+ Object.entries(parsed).flatMap(
258
+ ([key, value]) => typeof value === "string" ? [[key, value]] : []
259
+ )
260
+ );
261
+ }
262
+ } catch {
263
+ await writeWebResponse(
264
+ input.response,
265
+ Response.json(
266
+ {
267
+ error: {
268
+ code: "invalid_request",
269
+ message: "X-Kody-Gateway-Headers must be valid JSON: an object of header names to string values."
270
+ }
271
+ },
272
+ { status: 400, headers: { "Cache-Control": "no-store" } }
273
+ )
274
+ );
275
+ return;
276
+ }
277
+ }
278
+ const contentType = headerValue(input.request.headers, "content-type");
279
+ const secretResolution = headerValue(
280
+ input.request.headers,
281
+ secretResolutionHeaderName
282
+ );
283
+ const contentLength = headerValue(input.request.headers, "content-length");
284
+ const upstream = await callCapabilityProxyGatewayFetchStream({
285
+ ...input.client,
286
+ signal: input.signal,
287
+ gateway: {
288
+ url,
289
+ ...method ? { method } : {},
290
+ ...packageId ? { packageId } : {},
291
+ ...outboundHeaders ? { headers: outboundHeaders } : {},
292
+ ...contentType ? { contentType } : {},
293
+ ...secretResolution ? { secretResolution } : {}
294
+ },
295
+ body: input.request,
296
+ ...contentLength ? { contentLength } : {}
297
+ });
298
+ await writeWebResponse(input.response, upstream);
299
+ }
300
+
301
+ // src/mock/install-mock-fetch-shim.ts
302
+ import { writeFile } from "node:fs/promises";
303
+ import { join } from "node:path";
304
+
305
+ // src/mock/mock-gateway-fetch-shim.ts
306
+ function createMockGatewayFetchShimSource() {
307
+ return `
308
+ import { kody } from ${JSON.stringify(localWorkerModuleNames.runtime)};
309
+
310
+ const __kodyNativeFetch = globalThis.fetch.bind(globalThis);
311
+ const __kodyNullBodyStatuses = new Set([101, 103, 204, 205, 304]);
312
+
313
+ function __kodyBytesToBase64(bytes) {
314
+ let binary = '';
315
+ for (let i = 0; i < bytes.length; i++) binary += String.fromCharCode(bytes[i]);
316
+ return btoa(binary);
317
+ }
318
+
319
+ function __kodyBase64ToBytes(value) {
320
+ const binary = atob(String(value ?? ''));
321
+ const bytes = new Uint8Array(binary.length);
322
+ for (let i = 0; i < binary.length; i++) bytes[i] = binary.charCodeAt(i);
323
+ return bytes;
324
+ }
325
+
326
+ async function __kodyBodyToBytes(body) {
327
+ if (body == null) return null;
328
+ if (typeof body === 'string') return new TextEncoder().encode(body);
329
+ if (body instanceof Uint8Array) return body;
330
+ if (body instanceof ArrayBuffer) return new Uint8Array(body);
331
+ if (ArrayBuffer.isView(body)) {
332
+ return new Uint8Array(body.buffer, body.byteOffset, body.byteLength);
333
+ }
334
+ if (typeof Blob !== 'undefined' && body instanceof Blob) {
335
+ return new Uint8Array(await body.arrayBuffer());
336
+ }
337
+ if (typeof URLSearchParams !== 'undefined' && body instanceof URLSearchParams) {
338
+ return new TextEncoder().encode(body.toString());
339
+ }
340
+ if (body && typeof body.getReader === 'function') {
341
+ return new Uint8Array(await new Response(body).arrayBuffer());
342
+ }
343
+ if (typeof FormData !== 'undefined' && body instanceof FormData) {
344
+ throw new Error(
345
+ 'Mock fetch gateway does not support FormData bodies yet; use Uint8Array, Blob, or string.',
346
+ );
347
+ }
348
+ throw new Error('Mock fetch gateway could not serialize the request body.');
349
+ }
350
+
351
+ globalThis.fetch = async (input, init) => {
352
+ let url;
353
+ let method = 'GET';
354
+ let headers = {};
355
+ let bodyBytes = null;
356
+ if (typeof input === 'string' || input instanceof URL) {
357
+ url = String(input);
358
+ method = String(init?.method ?? 'GET');
359
+ headers = Object.fromEntries(new Headers(init?.headers).entries());
360
+ if (init?.body != null) bodyBytes = await __kodyBodyToBytes(init.body);
361
+ } else {
362
+ const merged = new Request(input, init);
363
+ url = merged.url;
364
+ method = merged.method;
365
+ headers = Object.fromEntries(merged.headers.entries());
366
+ if (method !== 'GET' && method !== 'HEAD') {
367
+ bodyBytes = new Uint8Array(await merged.arrayBuffer());
368
+ }
369
+ }
370
+ const result = await kody.gatewayFetch({
371
+ request: {
372
+ url,
373
+ method,
374
+ headers,
375
+ ...(bodyBytes != null ? { bodyBase64: __kodyBytesToBase64(bodyBytes) } : {}),
376
+ },
377
+ });
378
+ const bytes = __kodyBase64ToBytes(result.bodyBase64 ?? '');
379
+ return new Response(
380
+ __kodyNullBodyStatuses.has(result.status) ? null : bytes,
381
+ {
382
+ status: result.status,
383
+ statusText: result.statusText ?? '',
384
+ headers: result.headers ?? {},
385
+ },
386
+ );
387
+ };
388
+
389
+ // Retain a reference so workerd keeps the binding available for debugging.
390
+ void __kodyNativeFetch;
391
+ export {};
392
+ `.trimStart();
393
+ }
394
+
395
+ // src/mock/install-mock-fetch-shim.ts
396
+ var mockShimFileName = "mock-gateway-fetch-shim.js";
397
+ var mockGatewayFetchShimModuleName = ".__kody_mock_gateway_fetch__.js";
398
+ async function installMockFetchShimModules(input) {
399
+ const withoutDup = input.packageModules.filter(
400
+ (module) => module.name !== mockGatewayFetchShimModuleName
401
+ );
402
+ await writeFile(
403
+ join(input.workDir, mockShimFileName),
404
+ createMockGatewayFetchShimSource()
405
+ );
406
+ const originShimNames = withoutDup.map((module) => module.name).filter((name) => name === localExecuteGatewayFetchShimModuleName);
407
+ return {
408
+ packageModules: [
409
+ ...withoutDup,
410
+ {
411
+ name: mockGatewayFetchShimModuleName,
412
+ file: mockShimFileName
413
+ }
414
+ ],
415
+ // Origin first (runtime re-exports + secret wrap), mock last so ambient
416
+ // fetch is fail-closed through the Node MSW gateway.
417
+ sideEffectModules: [...originShimNames, mockGatewayFetchShimModuleName]
418
+ };
419
+ }
420
+
421
+ export {
422
+ startLocalRuntimeBridge,
423
+ forwardLocalGatewayFetchStream,
424
+ installMockFetchShimModules
425
+ };
426
+ //# sourceMappingURL=chunk-SXHULGL4.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/local-runtime-bridge.ts", "../src/local-gateway-fetch-forward.ts", "../src/mock/install-mock-fetch-shim.ts", "../src/mock/mock-gateway-fetch-shim.ts"],
4
+ "mappings": "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",
5
+ "names": ["method", "packageId", "rawHeaders", "contentType"]
6
+ }