@seanhogg/builderforce-webcontainers-core 2026.10.2 → 2026.10.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 (426) hide show
  1. package/dist/build.d.ts +42 -0
  2. package/dist/build.d.ts.map +1 -0
  3. package/dist/build.js +65 -0
  4. package/dist/build.js.map +1 -0
  5. package/dist/buildHost.d.ts +31 -0
  6. package/dist/buildHost.d.ts.map +1 -0
  7. package/dist/buildHost.js +125 -0
  8. package/dist/buildHost.js.map +1 -0
  9. package/dist/buildHtml.d.ts +28 -0
  10. package/dist/buildHtml.d.ts.map +1 -0
  11. package/dist/buildHtml.js +74 -0
  12. package/dist/buildHtml.js.map +1 -0
  13. package/dist/bundler.d.ts +129 -0
  14. package/dist/bundler.d.ts.map +1 -0
  15. package/dist/bundler.js +79 -0
  16. package/dist/bundler.js.map +1 -0
  17. package/dist/check/acquire.d.ts +46 -0
  18. package/dist/check/acquire.d.ts.map +1 -0
  19. package/dist/check/acquire.js +179 -0
  20. package/dist/check/acquire.js.map +1 -0
  21. package/dist/check/compilerHost.d.ts +22 -0
  22. package/dist/check/compilerHost.d.ts.map +1 -0
  23. package/dist/check/compilerHost.js +128 -0
  24. package/dist/check/compilerHost.js.map +1 -0
  25. package/dist/check/diagnostics.d.ts +23 -0
  26. package/dist/check/diagnostics.d.ts.map +1 -0
  27. package/dist/check/diagnostics.js +28 -0
  28. package/dist/check/diagnostics.js.map +1 -0
  29. package/dist/check/index.d.ts +19 -0
  30. package/dist/check/index.d.ts.map +1 -0
  31. package/dist/check/index.js +13 -0
  32. package/dist/check/index.js.map +1 -0
  33. package/dist/check/projects.d.ts +26 -0
  34. package/dist/check/projects.d.ts.map +1 -0
  35. package/dist/check/projects.js +124 -0
  36. package/dist/check/projects.js.map +1 -0
  37. package/dist/check/shims.d.ts +29 -0
  38. package/dist/check/shims.d.ts.map +1 -0
  39. package/dist/check/shims.js +76 -0
  40. package/dist/check/shims.js.map +1 -0
  41. package/dist/check/typeStore.d.ts +57 -0
  42. package/dist/check/typeStore.d.ts.map +1 -0
  43. package/dist/check/typeStore.js +89 -0
  44. package/dist/check/typeStore.js.map +1 -0
  45. package/dist/check/typecheck.d.ts +29 -0
  46. package/dist/check/typecheck.d.ts.map +1 -0
  47. package/dist/check/typecheck.js +91 -0
  48. package/dist/check/typecheck.js.map +1 -0
  49. package/dist/compileComponent.d.ts +8 -0
  50. package/dist/compileComponent.d.ts.map +1 -0
  51. package/dist/compileComponent.js +22 -0
  52. package/dist/compileComponent.js.map +1 -0
  53. package/dist/compileScript.d.ts +19 -4
  54. package/dist/compileScript.d.ts.map +1 -1
  55. package/dist/compileScript.js +37 -12
  56. package/dist/compileScript.js.map +1 -1
  57. package/dist/components.d.ts +41 -0
  58. package/dist/components.d.ts.map +1 -0
  59. package/dist/components.js +14 -0
  60. package/dist/components.js.map +1 -0
  61. package/dist/detectProject.d.ts +3 -0
  62. package/dist/detectProject.d.ts.map +1 -1
  63. package/dist/detectProject.js +16 -6
  64. package/dist/detectProject.js.map +1 -1
  65. package/dist/devServer.d.ts +5 -2
  66. package/dist/devServer.d.ts.map +1 -1
  67. package/dist/devServer.js +10 -6
  68. package/dist/devServer.js.map +1 -1
  69. package/dist/hash.d.ts +2 -0
  70. package/dist/hash.d.ts.map +1 -0
  71. package/dist/hash.js +22 -0
  72. package/dist/hash.js.map +1 -0
  73. package/dist/index.d.ts +24 -6
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +14 -3
  76. package/dist/index.js.map +1 -1
  77. package/dist/installer/bins.d.ts +24 -0
  78. package/dist/installer/bins.d.ts.map +1 -0
  79. package/dist/installer/bins.js +56 -0
  80. package/dist/installer/bins.js.map +1 -0
  81. package/dist/installer/index.d.ts +14 -0
  82. package/dist/installer/index.d.ts.map +1 -0
  83. package/dist/installer/index.js +9 -0
  84. package/dist/installer/index.js.map +1 -0
  85. package/dist/installer/install.d.ts +46 -0
  86. package/dist/installer/install.d.ts.map +1 -0
  87. package/dist/installer/install.js +245 -0
  88. package/dist/installer/install.js.map +1 -0
  89. package/dist/installer/lockfile.d.ts +49 -0
  90. package/dist/installer/lockfile.d.ts.map +1 -0
  91. package/dist/installer/lockfile.js +110 -0
  92. package/dist/installer/lockfile.js.map +1 -0
  93. package/dist/installer/registry.d.ts +84 -0
  94. package/dist/installer/registry.d.ts.map +1 -0
  95. package/dist/installer/registry.js +130 -0
  96. package/dist/installer/registry.js.map +1 -0
  97. package/dist/installer/semver.d.ts +38 -0
  98. package/dist/installer/semver.d.ts.map +1 -0
  99. package/dist/installer/semver.js +187 -0
  100. package/dist/installer/semver.js.map +1 -0
  101. package/dist/installer/spec.d.ts +30 -0
  102. package/dist/installer/spec.d.ts.map +1 -0
  103. package/dist/installer/spec.js +30 -0
  104. package/dist/installer/spec.js.map +1 -0
  105. package/dist/installer/tar.d.ts +17 -0
  106. package/dist/installer/tar.d.ts.map +1 -0
  107. package/dist/installer/tar.js +150 -0
  108. package/dist/installer/tar.js.map +1 -0
  109. package/dist/installer/tree.d.ts +48 -0
  110. package/dist/installer/tree.d.ts.map +1 -0
  111. package/dist/installer/tree.js +179 -0
  112. package/dist/installer/tree.js.map +1 -0
  113. package/dist/node/assert.d.ts +15 -0
  114. package/dist/node/assert.d.ts.map +1 -0
  115. package/dist/node/assert.js +137 -0
  116. package/dist/node/assert.js.map +1 -0
  117. package/dist/node/buffer.d.ts +84 -0
  118. package/dist/node/buffer.d.ts.map +1 -0
  119. package/dist/node/buffer.js +304 -0
  120. package/dist/node/buffer.js.map +1 -0
  121. package/dist/node/builtins.d.ts +25 -0
  122. package/dist/node/builtins.d.ts.map +1 -0
  123. package/dist/node/builtins.js +101 -0
  124. package/dist/node/builtins.js.map +1 -0
  125. package/dist/node/callable.d.ts +13 -0
  126. package/dist/node/callable.d.ts.map +1 -0
  127. package/dist/node/callable.js +26 -0
  128. package/dist/node/callable.js.map +1 -0
  129. package/dist/node/childProcess.d.ts +13 -0
  130. package/dist/node/childProcess.d.ts.map +1 -0
  131. package/dist/node/childProcess.js +143 -0
  132. package/dist/node/childProcess.js.map +1 -0
  133. package/dist/node/crypto.d.ts +3 -0
  134. package/dist/node/crypto.d.ts.map +1 -0
  135. package/dist/node/crypto.js +180 -0
  136. package/dist/node/crypto.js.map +1 -0
  137. package/dist/node/esm.d.ts +9 -0
  138. package/dist/node/esm.d.ts.map +1 -0
  139. package/dist/node/esm.js +202 -0
  140. package/dist/node/esm.js.map +1 -0
  141. package/dist/node/events.d.ts +40 -0
  142. package/dist/node/events.d.ts.map +1 -0
  143. package/dist/node/events.js +160 -0
  144. package/dist/node/events.js.map +1 -0
  145. package/dist/node/fs/index.d.ts +7 -0
  146. package/dist/node/fs/index.d.ts.map +1 -0
  147. package/dist/node/fs/index.js +270 -0
  148. package/dist/node/fs/index.js.map +1 -0
  149. package/dist/node/fs/stats.d.ts +93 -0
  150. package/dist/node/fs/stats.d.ts.map +1 -0
  151. package/dist/node/fs/stats.js +104 -0
  152. package/dist/node/fs/stats.js.map +1 -0
  153. package/dist/node/fs/sync.d.ts +98 -0
  154. package/dist/node/fs/sync.d.ts.map +1 -0
  155. package/dist/node/fs/sync.js +348 -0
  156. package/dist/node/fs/sync.js.map +1 -0
  157. package/dist/node/hashes.d.ts +15 -0
  158. package/dist/node/hashes.d.ts.map +1 -0
  159. package/dist/node/hashes.js +195 -0
  160. package/dist/node/hashes.js.map +1 -0
  161. package/dist/node/http/client.d.ts +35 -0
  162. package/dist/node/http/client.d.ts.map +1 -0
  163. package/dist/node/http/client.js +161 -0
  164. package/dist/node/http/client.js.map +1 -0
  165. package/dist/node/http/index.d.ts +5 -0
  166. package/dist/node/http/index.d.ts.map +1 -0
  167. package/dist/node/http/index.js +125 -0
  168. package/dist/node/http/index.js.map +1 -0
  169. package/dist/node/http/server.d.ts +135 -0
  170. package/dist/node/http/server.d.ts.map +1 -0
  171. package/dist/node/http/server.js +308 -0
  172. package/dist/node/http/server.js.map +1 -0
  173. package/dist/node/http/status.d.ts +3 -0
  174. package/dist/node/http/status.d.ts.map +1 -0
  175. package/dist/node/http/status.js +13 -0
  176. package/dist/node/http/status.js.map +1 -0
  177. package/dist/node/inspect.d.ts +22 -0
  178. package/dist/node/inspect.d.ts.map +1 -0
  179. package/dist/node/inspect.js +172 -0
  180. package/dist/node/inspect.js.map +1 -0
  181. package/dist/node/loader.d.ts +91 -0
  182. package/dist/node/loader.d.ts.map +1 -0
  183. package/dist/node/loader.js +265 -0
  184. package/dist/node/loader.js.map +1 -0
  185. package/dist/node/loop.d.ts +71 -0
  186. package/dist/node/loop.d.ts.map +1 -0
  187. package/dist/node/loop.js +189 -0
  188. package/dist/node/loop.js.map +1 -0
  189. package/dist/node/misc.d.ts +10 -0
  190. package/dist/node/misc.d.ts.map +1 -0
  191. package/dist/node/misc.js +256 -0
  192. package/dist/node/misc.js.map +1 -0
  193. package/dist/node/path.d.ts +14 -0
  194. package/dist/node/path.d.ts.map +1 -0
  195. package/dist/node/path.js +128 -0
  196. package/dist/node/path.js.map +1 -0
  197. package/dist/node/process.d.ts +31 -0
  198. package/dist/node/process.d.ts.map +1 -0
  199. package/dist/node/process.js +309 -0
  200. package/dist/node/process.js.map +1 -0
  201. package/dist/node/program.d.ts +19 -0
  202. package/dist/node/program.d.ts.map +1 -0
  203. package/dist/node/program.js +165 -0
  204. package/dist/node/program.js.map +1 -0
  205. package/dist/node/readline.d.ts +2 -0
  206. package/dist/node/readline.d.ts.map +1 -0
  207. package/dist/node/readline.js +155 -0
  208. package/dist/node/readline.js.map +1 -0
  209. package/dist/node/resolve.d.ts +45 -0
  210. package/dist/node/resolve.d.ts.map +1 -0
  211. package/dist/node/resolve.js +206 -0
  212. package/dist/node/resolve.js.map +1 -0
  213. package/dist/node/runtime.d.ts +40 -0
  214. package/dist/node/runtime.d.ts.map +1 -0
  215. package/dist/node/runtime.js +149 -0
  216. package/dist/node/runtime.js.map +1 -0
  217. package/dist/node/stream/index.d.ts +52 -0
  218. package/dist/node/stream/index.d.ts.map +1 -0
  219. package/dist/node/stream/index.js +184 -0
  220. package/dist/node/stream/index.js.map +1 -0
  221. package/dist/node/stream/readable.d.ts +83 -0
  222. package/dist/node/stream/readable.d.ts.map +1 -0
  223. package/dist/node/stream/readable.js +325 -0
  224. package/dist/node/stream/readable.js.map +1 -0
  225. package/dist/node/stream/writable.d.ts +80 -0
  226. package/dist/node/stream/writable.d.ts.map +1 -0
  227. package/dist/node/stream/writable.js +224 -0
  228. package/dist/node/stream/writable.js.map +1 -0
  229. package/dist/node/urlqs.d.ts +22 -0
  230. package/dist/node/urlqs.d.ts.map +1 -0
  231. package/dist/node/urlqs.js +165 -0
  232. package/dist/node/urlqs.js.map +1 -0
  233. package/dist/node/util.d.ts +37 -0
  234. package/dist/node/util.d.ts.map +1 -0
  235. package/dist/node/util.js +160 -0
  236. package/dist/node/util.js.map +1 -0
  237. package/dist/node/zlib.d.ts +2 -0
  238. package/dist/node/zlib.d.ts.map +1 -0
  239. package/dist/node/zlib.js +133 -0
  240. package/dist/node/zlib.js.map +1 -0
  241. package/dist/packageCdn.d.ts +12 -0
  242. package/dist/packageCdn.d.ts.map +1 -1
  243. package/dist/packageCdn.js +3 -1
  244. package/dist/packageCdn.js.map +1 -1
  245. package/dist/projectConfig.d.ts +6 -2
  246. package/dist/projectConfig.d.ts.map +1 -1
  247. package/dist/projectConfig.js +32 -8
  248. package/dist/projectConfig.js.map +1 -1
  249. package/dist/shell/builtins.d.ts +23 -0
  250. package/dist/shell/builtins.d.ts.map +1 -0
  251. package/dist/shell/builtins.js +131 -0
  252. package/dist/shell/builtins.js.map +1 -0
  253. package/dist/shell/context.d.ts +41 -0
  254. package/dist/shell/context.d.ts.map +1 -0
  255. package/dist/shell/context.js +65 -0
  256. package/dist/shell/context.js.map +1 -0
  257. package/dist/shell/devHandoff.d.ts +18 -0
  258. package/dist/shell/devHandoff.d.ts.map +1 -0
  259. package/dist/shell/devHandoff.js +36 -0
  260. package/dist/shell/devHandoff.js.map +1 -0
  261. package/dist/shell/exec.d.ts +67 -0
  262. package/dist/shell/exec.d.ts.map +1 -0
  263. package/dist/shell/exec.js +247 -0
  264. package/dist/shell/exec.js.map +1 -0
  265. package/dist/shell/expand.d.ts +28 -0
  266. package/dist/shell/expand.d.ts.map +1 -0
  267. package/dist/shell/expand.js +149 -0
  268. package/dist/shell/expand.js.map +1 -0
  269. package/dist/shell/fileCommands.d.ts +10 -0
  270. package/dist/shell/fileCommands.d.ts.map +1 -0
  271. package/dist/shell/fileCommands.js +208 -0
  272. package/dist/shell/fileCommands.js.map +1 -0
  273. package/dist/shell/lineEditor.d.ts +43 -0
  274. package/dist/shell/lineEditor.d.ts.map +1 -0
  275. package/dist/shell/lineEditor.js +234 -0
  276. package/dist/shell/lineEditor.js.map +1 -0
  277. package/dist/shell/npm.d.ts +6 -0
  278. package/dist/shell/npm.d.ts.map +1 -0
  279. package/dist/shell/npm.js +234 -0
  280. package/dist/shell/npm.js.map +1 -0
  281. package/dist/shell/parse.d.ts +73 -0
  282. package/dist/shell/parse.d.ts.map +1 -0
  283. package/dist/shell/parse.js +300 -0
  284. package/dist/shell/parse.js.map +1 -0
  285. package/dist/shell/program.d.ts +12 -0
  286. package/dist/shell/program.d.ts.map +1 -0
  287. package/dist/shell/program.js +219 -0
  288. package/dist/shell/program.js.map +1 -0
  289. package/dist/shell/textCommands.d.ts +15 -0
  290. package/dist/shell/textCommands.d.ts.map +1 -0
  291. package/dist/shell/textCommands.js +185 -0
  292. package/dist/shell/textCommands.js.map +1 -0
  293. package/dist/styleModules.d.ts +6 -0
  294. package/dist/styleModules.d.ts.map +1 -1
  295. package/dist/styleModules.js +14 -4
  296. package/dist/styleModules.js.map +1 -1
  297. package/dist/svelteCompiler.d.ts +28 -0
  298. package/dist/svelteCompiler.d.ts.map +1 -0
  299. package/dist/svelteCompiler.js +13 -0
  300. package/dist/svelteCompiler.js.map +1 -0
  301. package/dist/system/commands.d.ts +26 -0
  302. package/dist/system/commands.d.ts.map +1 -0
  303. package/dist/system/commands.js +53 -0
  304. package/dist/system/commands.js.map +1 -0
  305. package/dist/system/index.d.ts +23 -0
  306. package/dist/system/index.d.ts.map +1 -0
  307. package/dist/system/index.js +16 -0
  308. package/dist/system/index.js.map +1 -0
  309. package/dist/system/kernel.d.ts +54 -0
  310. package/dist/system/kernel.d.ts.map +1 -0
  311. package/dist/system/kernel.js +81 -0
  312. package/dist/system/kernel.js.map +1 -0
  313. package/dist/system/ports.d.ts +32 -0
  314. package/dist/system/ports.d.ts.map +1 -0
  315. package/dist/system/ports.js +57 -0
  316. package/dist/system/ports.js.map +1 -0
  317. package/dist/system/process.d.ts +32 -0
  318. package/dist/system/process.d.ts.map +1 -0
  319. package/dist/system/process.js +130 -0
  320. package/dist/system/process.js.map +1 -0
  321. package/dist/system/programs.d.ts +10 -0
  322. package/dist/system/programs.d.ts.map +1 -0
  323. package/dist/system/programs.js +22 -0
  324. package/dist/system/programs.js.map +1 -0
  325. package/dist/system/terminal.d.ts +45 -0
  326. package/dist/system/terminal.d.ts.map +1 -0
  327. package/dist/system/terminal.js +127 -0
  328. package/dist/system/terminal.js.map +1 -0
  329. package/dist/system/types.d.ts +100 -0
  330. package/dist/system/types.d.ts.map +1 -0
  331. package/dist/system/types.js +2 -0
  332. package/dist/system/types.js.map +1 -0
  333. package/dist/vfs.d.ts +28 -4
  334. package/dist/vfs.d.ts.map +1 -1
  335. package/dist/vfs.js +95 -32
  336. package/dist/vfs.js.map +1 -1
  337. package/dist/vueCompiler.d.ts +75 -0
  338. package/dist/vueCompiler.d.ts.map +1 -0
  339. package/dist/vueCompiler.js +67 -0
  340. package/dist/vueCompiler.js.map +1 -0
  341. package/package.json +18 -2
  342. package/src/build.ts +105 -0
  343. package/src/buildHost.ts +154 -0
  344. package/src/buildHtml.ts +101 -0
  345. package/src/bundler.ts +190 -0
  346. package/src/check/acquire.ts +212 -0
  347. package/src/check/compilerHost.ts +138 -0
  348. package/src/check/diagnostics.ts +48 -0
  349. package/src/check/index.ts +28 -0
  350. package/src/check/projects.ts +149 -0
  351. package/src/check/shims.ts +88 -0
  352. package/src/check/typeStore.ts +103 -0
  353. package/src/check/typecheck.ts +134 -0
  354. package/src/compileComponent.ts +21 -0
  355. package/src/compileScript.ts +42 -13
  356. package/src/components.ts +59 -0
  357. package/src/detectProject.ts +18 -6
  358. package/src/devServer.ts +13 -8
  359. package/src/hash.ts +22 -0
  360. package/src/index.ts +35 -6
  361. package/src/installer/bins.ts +64 -0
  362. package/src/installer/index.ts +13 -0
  363. package/src/installer/install.ts +275 -0
  364. package/src/installer/lockfile.ts +146 -0
  365. package/src/installer/registry.ts +175 -0
  366. package/src/installer/semver.ts +190 -0
  367. package/src/installer/spec.ts +53 -0
  368. package/src/installer/tar.ts +155 -0
  369. package/src/installer/tree.ts +236 -0
  370. package/src/node/assert.ts +127 -0
  371. package/src/node/buffer.ts +304 -0
  372. package/src/node/builtins.ts +123 -0
  373. package/src/node/callable.ts +25 -0
  374. package/src/node/childProcess.ts +164 -0
  375. package/src/node/crypto.ts +187 -0
  376. package/src/node/esm.ts +196 -0
  377. package/src/node/events.ts +176 -0
  378. package/src/node/fs/index.ts +277 -0
  379. package/src/node/fs/stats.ts +110 -0
  380. package/src/node/fs/sync.ts +335 -0
  381. package/src/node/hashes.ts +171 -0
  382. package/src/node/http/client.ts +173 -0
  383. package/src/node/http/index.ts +122 -0
  384. package/src/node/http/server.ts +308 -0
  385. package/src/node/http/status.ts +13 -0
  386. package/src/node/inspect.ts +166 -0
  387. package/src/node/loader.ts +293 -0
  388. package/src/node/loop.ts +193 -0
  389. package/src/node/misc.ts +250 -0
  390. package/src/node/path.ts +135 -0
  391. package/src/node/process.ts +324 -0
  392. package/src/node/program.ts +170 -0
  393. package/src/node/readline.ts +157 -0
  394. package/src/node/resolve.ts +216 -0
  395. package/src/node/runtime.ts +184 -0
  396. package/src/node/stream/index.ts +196 -0
  397. package/src/node/stream/readable.ts +345 -0
  398. package/src/node/stream/writable.ts +244 -0
  399. package/src/node/urlqs.ts +162 -0
  400. package/src/node/util.ts +145 -0
  401. package/src/node/zlib.ts +145 -0
  402. package/src/packageCdn.ts +11 -1
  403. package/src/projectConfig.ts +34 -7
  404. package/src/shell/builtins.ts +141 -0
  405. package/src/shell/context.ts +89 -0
  406. package/src/shell/devHandoff.ts +49 -0
  407. package/src/shell/exec.ts +268 -0
  408. package/src/shell/expand.ts +145 -0
  409. package/src/shell/fileCommands.ts +206 -0
  410. package/src/shell/lineEditor.ts +233 -0
  411. package/src/shell/npm.ts +229 -0
  412. package/src/shell/parse.ts +295 -0
  413. package/src/shell/program.ts +223 -0
  414. package/src/shell/textCommands.ts +177 -0
  415. package/src/styleModules.ts +15 -4
  416. package/src/svelteCompiler.ts +31 -0
  417. package/src/system/commands.ts +72 -0
  418. package/src/system/index.ts +22 -0
  419. package/src/system/kernel.ts +106 -0
  420. package/src/system/ports.ts +73 -0
  421. package/src/system/process.ts +158 -0
  422. package/src/system/programs.ts +31 -0
  423. package/src/system/terminal.ts +135 -0
  424. package/src/system/types.ts +103 -0
  425. package/src/vfs.ts +92 -28
  426. package/src/vueCompiler.ts +121 -0
@@ -0,0 +1,160 @@
1
+ /**
2
+ * Node's `util` module: formatting and inspection (inspect.ts), the classic
3
+ * helpers (`inherits`, `promisify`, `deprecate`, `callbackify`), `types` and
4
+ * `isDeepStrictEqual`.
5
+ */
6
+ import { format, inspect } from './inspect.js';
7
+ export const promisifyCustom = Symbol.for('nodejs.util.promisify.custom');
8
+ export function promisify(fn) {
9
+ if (typeof fn !== 'function')
10
+ throw new TypeError('The "original" argument must be of type function');
11
+ const custom = fn[promisifyCustom];
12
+ if (typeof custom === 'function')
13
+ return custom;
14
+ function promisified(...args) {
15
+ return new Promise((resolve, reject) => {
16
+ fn.call(this, ...args, (error, ...values) => {
17
+ if (error)
18
+ reject(error);
19
+ else
20
+ resolve(values.length > 1 ? values : values[0]);
21
+ });
22
+ });
23
+ }
24
+ Object.setPrototypeOf(promisified, Object.getPrototypeOf(fn));
25
+ return Object.defineProperties(promisified, Object.getOwnPropertyDescriptors(fn));
26
+ }
27
+ promisify.custom = promisifyCustom;
28
+ export function inherits(ctor, superCtor) {
29
+ if (!superCtor?.prototype)
30
+ throw new TypeError('The "superCtor.prototype" property must be of type object');
31
+ ctor.super_ = superCtor;
32
+ Object.setPrototypeOf(ctor.prototype, superCtor.prototype);
33
+ }
34
+ export function isDeepStrictEqual(a, b, seen = new Map()) {
35
+ if (Object.is(a, b))
36
+ return true;
37
+ if (typeof a !== 'object' || typeof b !== 'object' || a === null || b === null)
38
+ return false;
39
+ if (Object.getPrototypeOf(a) !== Object.getPrototypeOf(b))
40
+ return false;
41
+ if (seen.get(a) === b)
42
+ return true;
43
+ seen.set(a, b);
44
+ if (a instanceof Date)
45
+ return a.getTime() === b.getTime();
46
+ if (a instanceof RegExp)
47
+ return String(a) === String(b);
48
+ if (a instanceof Map) {
49
+ const m = b;
50
+ if (a.size !== m.size)
51
+ return false;
52
+ for (const [k, v] of a)
53
+ if (!m.has(k) || !isDeepStrictEqual(v, m.get(k), seen))
54
+ return false;
55
+ return true;
56
+ }
57
+ if (a instanceof Set) {
58
+ const s = b;
59
+ if (a.size !== s.size)
60
+ return false;
61
+ for (const v of a)
62
+ if (!s.has(v) && ![...s].some((w) => isDeepStrictEqual(v, w, seen)))
63
+ return false;
64
+ return true;
65
+ }
66
+ if (ArrayBuffer.isView(a)) {
67
+ const x = a;
68
+ const y = b;
69
+ if (x.length !== y.length)
70
+ return false;
71
+ for (let i = 0; i < x.length; i++)
72
+ if (!Object.is(x[i], y[i]))
73
+ return false;
74
+ return true;
75
+ }
76
+ const ka = Object.keys(a);
77
+ const kb = Object.keys(b);
78
+ if (ka.length !== kb.length)
79
+ return false;
80
+ return ka.every((k) => Object.prototype.hasOwnProperty.call(b, k) && isDeepStrictEqual(a[k], b[k], seen));
81
+ }
82
+ const tag = (v) => Object.prototype.toString.call(v).slice(8, -1);
83
+ export const types = {
84
+ isPromise: (v) => v instanceof Promise,
85
+ isDate: (v) => v instanceof Date,
86
+ isRegExp: (v) => v instanceof RegExp,
87
+ isMap: (v) => v instanceof Map,
88
+ isSet: (v) => v instanceof Set,
89
+ isWeakMap: (v) => v instanceof WeakMap,
90
+ isWeakSet: (v) => v instanceof WeakSet,
91
+ isNativeError: (v) => v instanceof Error,
92
+ isTypedArray: (v) => ArrayBuffer.isView(v) && !(v instanceof DataView),
93
+ isUint8Array: (v) => v instanceof Uint8Array,
94
+ isArrayBuffer: (v) => v instanceof ArrayBuffer,
95
+ isAnyArrayBuffer: (v) => v instanceof ArrayBuffer || tag(v) === 'SharedArrayBuffer',
96
+ isArrayBufferView: (v) => ArrayBuffer.isView(v),
97
+ isDataView: (v) => v instanceof DataView,
98
+ isAsyncFunction: (v) => tag(v) === 'AsyncFunction' || tag(v) === 'AsyncGeneratorFunction',
99
+ isGeneratorFunction: (v) => tag(v) === 'GeneratorFunction' || tag(v) === 'AsyncGeneratorFunction',
100
+ isGeneratorObject: (v) => tag(v) === 'Generator',
101
+ isBoxedPrimitive: (v) => v instanceof Number || v instanceof String || v instanceof Boolean,
102
+ isProxy: () => false,
103
+ isExternal: () => false,
104
+ isModuleNamespaceObject: (v) => tag(v) === 'Module',
105
+ };
106
+ export function createUtilModule(env, warn) {
107
+ const warned = new Set();
108
+ return {
109
+ format,
110
+ formatWithOptions: (_options, ...args) => format(...args),
111
+ inspect,
112
+ inherits,
113
+ promisify,
114
+ callbackify(fn) {
115
+ return function (...args) {
116
+ const callback = args.pop();
117
+ fn.apply(this, args).then((value) => callback(null, value), (error) => callback(error ?? new Error('Promise was rejected with a falsy value')));
118
+ };
119
+ },
120
+ deprecate(fn, message, code) {
121
+ return function (...args) {
122
+ const key = code ?? message;
123
+ if (!warned.has(key)) {
124
+ warned.add(key);
125
+ warn(`(node) [${code ?? 'DEP'}] DeprecationWarning: ${message}`);
126
+ }
127
+ return fn.apply(this, args);
128
+ };
129
+ },
130
+ debuglog(section) {
131
+ const enabled = new RegExp(`\\b${section}\\b`, 'i').test(env().NODE_DEBUG ?? '');
132
+ const log = (...args) => enabled && warn(`${section.toUpperCase()}: ${format(...args)}`);
133
+ log.enabled = enabled;
134
+ return log;
135
+ },
136
+ isDeepStrictEqual: (a, b) => isDeepStrictEqual(a, b),
137
+ types,
138
+ TextEncoder,
139
+ TextDecoder,
140
+ stripVTControlCharacters: (s) => s.replace(/\u001b\[[0-9;?]*[ -/]*[@-~]/g, ''),
141
+ styleText: (_style, text) => text,
142
+ toUSVString: (s) => s.replace(/[\uD800-\uDFFF]/g, '�'),
143
+ isArray: Array.isArray,
144
+ isBoolean: (v) => typeof v === 'boolean',
145
+ isNull: (v) => v === null,
146
+ isNullOrUndefined: (v) => v == null,
147
+ isNumber: (v) => typeof v === 'number',
148
+ isString: (v) => typeof v === 'string',
149
+ isSymbol: (v) => typeof v === 'symbol',
150
+ isUndefined: (v) => v === undefined,
151
+ isRegExp: types.isRegExp,
152
+ isObject: (v) => v !== null && typeof v === 'object',
153
+ isDate: types.isDate,
154
+ isError: types.isNativeError,
155
+ isFunction: (v) => typeof v === 'function',
156
+ isPrimitive: (v) => v === null || (typeof v !== 'object' && typeof v !== 'function'),
157
+ isBuffer: (v) => v?.constructor?.name === 'Buffer',
158
+ };
159
+ }
160
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/node/util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function createZlibModule(): Record<string, unknown>;
2
+ //# sourceMappingURL=zlib.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zlib.d.ts","sourceRoot":"","sources":["../../src/node/zlib.ts"],"names":[],"mappings":"AA4FA,wBAAgB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoD1D"}
@@ -0,0 +1,133 @@
1
+ /**
2
+ * `zlib` over fflate: gzip/deflate/raw deflate in sync, callback, promise-less
3
+ * and streaming forms (compression middleware pipes through `createGzip`).
4
+ * Brotli is not available and says so.
5
+ */
6
+ import * as fflate from 'fflate';
7
+ import { Buffer } from './buffer.js';
8
+ import { Transform } from './stream/index.js';
9
+ const bytes = (input) => typeof input === 'string' ? Buffer.from(input) : input instanceof ArrayBuffer ? new Uint8Array(input) : new Uint8Array(input.buffer, input.byteOffset, input.byteLength);
10
+ const level = (options) => (options?.level === undefined || options.level < 0 ? 6 : Math.min(9, options.level));
11
+ const SYNC = {
12
+ gzip: (d, o) => fflate.gzipSync(d, { level: level(o) }),
13
+ gunzip: (d) => fflate.gunzipSync(d),
14
+ deflate: (d, o) => fflate.zlibSync(d, { level: level(o) }),
15
+ inflate: (d) => fflate.unzlibSync(d),
16
+ deflateRaw: (d, o) => fflate.deflateSync(d, { level: level(o) }),
17
+ inflateRaw: (d) => fflate.inflateSync(d),
18
+ unzip: (d) => fflate.decompressSync(d),
19
+ };
20
+ const STREAMS = {
21
+ Gzip: (o) => new fflate.Gzip({ level: level(o) }),
22
+ Gunzip: () => new fflate.Gunzip(),
23
+ Deflate: (o) => new fflate.Zlib({ level: level(o) }),
24
+ Inflate: () => new fflate.Unzlib(),
25
+ DeflateRaw: (o) => new fflate.Deflate({ level: level(o) }),
26
+ InflateRaw: () => new fflate.Inflate(),
27
+ Unzip: () => new fflate.Decompress(),
28
+ };
29
+ function zlibError(error) {
30
+ const message = error instanceof Error ? error.message : String(error);
31
+ return Object.assign(new Error(message || 'invalid compressed data'), { code: 'Z_DATA_ERROR', errno: -3 });
32
+ }
33
+ class ZlibStream extends Transform {
34
+ engine;
35
+ bytesWritten = 0;
36
+ constructor(kind, options) {
37
+ super();
38
+ this.engine = STREAMS[kind](options);
39
+ this.engine.ondata = (data) => {
40
+ if (data.length)
41
+ this.push(Buffer.from(data));
42
+ };
43
+ }
44
+ _transform(chunk, _encoding, callback) {
45
+ try {
46
+ this.bytesWritten += chunk.length;
47
+ this.engine.push(chunk, false);
48
+ callback();
49
+ }
50
+ catch (error) {
51
+ callback(zlibError(error));
52
+ }
53
+ }
54
+ _flush(callback) {
55
+ try {
56
+ this.engine.push(new Uint8Array(0), true);
57
+ callback();
58
+ }
59
+ catch (error) {
60
+ callback(zlibError(error));
61
+ }
62
+ }
63
+ flush(_kind, callback) {
64
+ callback?.();
65
+ }
66
+ params(_level, _strategy, callback) {
67
+ callback?.();
68
+ }
69
+ close(callback) {
70
+ this.destroy();
71
+ callback?.();
72
+ }
73
+ }
74
+ const noBrotli = () => {
75
+ throw Object.assign(new Error('Brotli is not available in the browser runtime'), { code: 'ERR_FEATURE_UNAVAILABLE_ON_PLATFORM' });
76
+ };
77
+ export function createZlibModule() {
78
+ const mod = {
79
+ constants: {
80
+ Z_NO_FLUSH: 0, Z_PARTIAL_FLUSH: 1, Z_SYNC_FLUSH: 2, Z_FULL_FLUSH: 3, Z_FINISH: 4, Z_BLOCK: 5,
81
+ Z_OK: 0, Z_STREAM_END: 1, Z_NEED_DICT: 2, Z_ERRNO: -1, Z_STREAM_ERROR: -2, Z_DATA_ERROR: -3, Z_BUF_ERROR: -5,
82
+ Z_NO_COMPRESSION: 0, Z_BEST_SPEED: 1, Z_BEST_COMPRESSION: 9, Z_DEFAULT_COMPRESSION: -1,
83
+ Z_FILTERED: 1, Z_HUFFMAN_ONLY: 2, Z_RLE: 3, Z_FIXED: 4, Z_DEFAULT_STRATEGY: 0,
84
+ BROTLI_OPERATION_PROCESS: 0, BROTLI_OPERATION_FLUSH: 1, BROTLI_OPERATION_FINISH: 2, BROTLI_PARAM_QUALITY: 1,
85
+ },
86
+ brotliCompressSync: noBrotli,
87
+ brotliDecompressSync: noBrotli,
88
+ brotliCompress: noBrotli,
89
+ brotliDecompress: noBrotli,
90
+ createBrotliCompress: noBrotli,
91
+ createBrotliDecompress: noBrotli,
92
+ crc32: (data, value = 0) => {
93
+ let crc = ~value >>> 0;
94
+ for (const byte of bytes(data)) {
95
+ crc ^= byte;
96
+ for (let k = 0; k < 8; k++)
97
+ crc = crc & 1 ? (crc >>> 1) ^ 0xedb88320 : crc >>> 1;
98
+ }
99
+ return ~crc >>> 0;
100
+ },
101
+ };
102
+ for (const [name, fn] of Object.entries(SYNC)) {
103
+ mod[`${name}Sync`] = (input, options) => {
104
+ try {
105
+ return Buffer.from(fn(bytes(input), options));
106
+ }
107
+ catch (error) {
108
+ throw zlibError(error);
109
+ }
110
+ };
111
+ mod[name] = (input, options, callback) => {
112
+ const cb = (typeof options === 'function' ? options : callback);
113
+ queueMicrotask(() => {
114
+ try {
115
+ cb(null, Buffer.from(fn(bytes(input), typeof options === 'object' ? options : undefined)));
116
+ }
117
+ catch (error) {
118
+ cb(zlibError(error));
119
+ }
120
+ });
121
+ };
122
+ }
123
+ for (const kind of Object.keys(STREAMS)) {
124
+ mod[`create${kind}`] = (options) => new ZlibStream(kind, options);
125
+ mod[kind] = class extends ZlibStream {
126
+ constructor(options) {
127
+ super(kind, options);
128
+ }
129
+ };
130
+ }
131
+ return mod;
132
+ }
133
+ //# sourceMappingURL=zlib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zlib.js","sourceRoot":"","sources":["../../src/node/zlib.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,16 @@ export interface PackageCdn {
7
7
  /** The ES-module URL for `name` + `subpath` (`'' | '/client'`). */
8
8
  urlFor(name: string, subpath: string): string;
9
9
  }
10
+ /**
11
+ * Makes the CDN for one project, from its dependency ranges. `dev` is true for the
12
+ * dev server and false for a production build, so a factory can pick development
13
+ * or production package builds (React's readable errors vs its small bundle).
14
+ */
15
+ export type PackageCdnFactory = (dependencies: Record<string, string>, options: {
16
+ dev: boolean;
17
+ }) => PackageCdn;
18
+ /** esm.sh, pinned to the project's ranges. */
19
+ export declare const esmShCdnFactory: PackageCdnFactory;
10
20
  export interface EsmShOptions {
11
21
  /** Defaults to https://esm.sh. Any esm.sh-compatible server works. */
12
22
  origin?: string;
@@ -15,5 +25,7 @@ export interface EsmShOptions {
15
25
  /** Serve development builds (readable React errors). Default true. */
16
26
  dev?: boolean;
17
27
  }
28
+ /** A range the CDN can't fetch (`workspace:*`, `file:../x`, `link:`, git URLs). */
29
+ export declare function isRegistryRange(range: string): boolean;
18
30
  export declare function createEsmShCdn(options?: EsmShOptions): PackageCdn;
19
31
  //# sourceMappingURL=packageCdn.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"packageCdn.d.ts","sourceRoot":"","sources":["../src/packageCdn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,mEAAmE;IACnE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/C;AAED,MAAM,WAAW,YAAY;IAC3B,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,sEAAsE;IACtE,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAOD,wBAAgB,cAAc,CAAC,OAAO,GAAE,YAAiB,GAAG,UAAU,CAuBrE"}
1
+ {"version":3,"file":"packageCdn.d.ts","sourceRoot":"","sources":["../src/packageCdn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,mEAAmE;IACnE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,KAAK,UAAU,CAAC;AAEhH,8CAA8C;AAC9C,eAAO,MAAM,eAAe,EAAE,iBAAoF,CAAC;AAEnH,MAAM,WAAW,YAAY;IAC3B,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,sEAAsE;IACtE,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,mFAAmF;AACnF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,YAAiB,GAAG,UAAU,CAuBrE"}
@@ -1,5 +1,7 @@
1
+ /** esm.sh, pinned to the project's ranges. */
2
+ export const esmShCdnFactory = (dependencies, { dev }) => createEsmShCdn({ dependencies, dev });
1
3
  /** A range the CDN can't fetch (`workspace:*`, `file:../x`, `link:`, git URLs). */
2
- function isRegistryRange(range) {
4
+ export function isRegistryRange(range) {
3
5
  return !/^(workspace|file|link|portal|git\+|git:|github:|https?:)/.test(range) && !range.includes('/');
4
6
  }
5
7
  export function createEsmShCdn(options = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"packageCdn.js","sourceRoot":"","sources":["../src/packageCdn.ts"],"names":[],"mappings":"AAmBA,mFAAmF;AACnF,SAAS,eAAe,CAAC,KAAa;IACpC,OAAO,CAAC,0DAA0D,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACzG,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,UAAwB,EAAE;IACvD,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;IAChD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC;IAEhC,8EAA8E;IAC9E,iFAAiF;IACjF,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;SAC1C,IAAI,EAAE,CAAC;IAEV,OAAO;QACL,MAAM,CAAC,IAAI,EAAE,OAAO;YAClB,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9E,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;YACrE,IAAI,IAAI,CAAC,MAAM;gBAAE,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/E,IAAI,GAAG;gBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,GAAG,MAAM,IAAI,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC1F,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"packageCdn.js","sourceRoot":"","sources":["../src/packageCdn.ts"],"names":[],"mappings":"AAiBA,8CAA8C;AAC9C,MAAM,CAAC,MAAM,eAAe,GAAsB,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;AAWnH,mFAAmF;AACnF,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,OAAO,CAAC,0DAA0D,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACzG,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,UAAwB,EAAE;IACvD,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;IAChD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC;IAEhC,8EAA8E;IAC9E,iFAAiF;IACjF,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;SAC1C,IAAI,EAAE,CAAC;IAEV,OAAO;QACL,MAAM,CAAC,IAAI,EAAE,OAAO;YAClB,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9E,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;YACrE,IAAI,IAAI,CAAC,MAAM;gBAAE,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/E,IAAI,GAAG;gBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,GAAG,MAAM,IAAI,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC1F,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -7,7 +7,11 @@ import type { VirtualFileSystem } from './vfs.js';
7
7
  * Everything here is derived, so it is recomputed whenever one of
8
8
  * {@link CONFIG_FILES} changes and is otherwise read from the cache.
9
9
  */
10
- export declare const CONFIG_FILES: readonly ["/package.json", "/tsconfig.json", "/jsconfig.json", "/.env", "/.env.local", "/.env.development", "/.env.development.local"];
10
+ export declare const CONFIG_FILES: readonly ["/package.json", "/tsconfig.json", "/jsconfig.json", "/.env", "/.env.local", "/.env.development", "/.env.development.local", "/.env.production", "/.env.production.local"];
11
+ /** Which `.env.<mode>` files apply: the dev server reads development, a build production. */
12
+ export type BuildMode = 'development' | 'production';
13
+ /** Vite's load order — later files win. */
14
+ export declare function envFiles(mode: BuildMode): string[];
11
15
  export interface PathAlias {
12
16
  /** The specifier prefix, without the trailing `*` (`@/`). Exact when `wildcard` is false. */
13
17
  prefix: string;
@@ -30,7 +34,7 @@ export interface ProjectConfig {
30
34
  export declare function parseLooseJson(text: string): unknown;
31
35
  /** `KEY=value` lines; quotes stripped, `#` comments and blank lines ignored. */
32
36
  export declare function parseDotenv(text: string): Record<string, string>;
33
- export declare function readProjectConfig(fs: VirtualFileSystem): ProjectConfig;
37
+ export declare function readProjectConfig(fs: VirtualFileSystem, mode?: BuildMode): ProjectConfig;
34
38
  /** True when a change to `path` invalidates the derived {@link ProjectConfig}. */
35
39
  export declare function isConfigFile(path: string): boolean;
36
40
  //# sourceMappingURL=projectConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../src/projectConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGlD;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,wIAQf,CAAC;AAEX,MAAM,WAAW,SAAS;IACxB,6FAA6F;IAC7F,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,sEAAsE;IACtE,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,GAAG,EAAE;QAAE,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,oFAAoF;IACpF,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAkBpD;AA0DD,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAehE;AAYD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,iBAAiB,GAAG,aAAa,CAQtE;AAED,kFAAkF;AAClF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD"}
1
+ {"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../src/projectConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGlD;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,sLAUf,CAAC;AAEX,6FAA6F;AAC7F,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,YAAY,CAAC;AAErD,2CAA2C;AAC3C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,EAAE,CAElD;AAED,MAAM,WAAW,SAAS;IACxB,6FAA6F;IAC7F,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,sEAAsE;IACtE,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,GAAG,EAAE;QAAE,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,oFAAoF;IACpF,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAkBpD;AA0ED,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAehE;AAWD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,iBAAiB,EAAE,IAAI,GAAE,SAAyB,GAAG,aAAa,CAQvG;AAED,kFAAkF;AAClF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAIlD"}
@@ -15,7 +15,13 @@ export const CONFIG_FILES = [
15
15
  '/.env.local',
16
16
  '/.env.development',
17
17
  '/.env.development.local',
18
+ '/.env.production',
19
+ '/.env.production.local',
18
20
  ];
21
+ /** Vite's load order — later files win. */
22
+ export function envFiles(mode) {
23
+ return ['/.env', '/.env.local', `/.env.${mode}`, `/.env.${mode}.local`];
24
+ }
19
25
  /** JSON that tolerates the comments and trailing commas tsconfig files carry. */
20
26
  export function parseLooseJson(text) {
21
27
  let out = '';
@@ -81,9 +87,27 @@ function readDependencies(fs) {
81
87
  }
82
88
  return out;
83
89
  }
90
+ /**
91
+ * The root tsconfig's compiler options. Current Vite templates (React, Vue,
92
+ * Svelte) keep a root `tsconfig.json` with only `references`, and the app's real
93
+ * options — `paths` included — in `tsconfig.app.json`; options missing from the
94
+ * root are taken from the referenced configs, in order.
95
+ */
84
96
  function readCompilerOptions(fs) {
85
97
  const tsconfig = readJson(fs, '/tsconfig.json') ?? readJson(fs, '/jsconfig.json') ?? {};
86
- return asRecord(tsconfig.compilerOptions);
98
+ const options = { ...asRecord(tsconfig.compilerOptions) };
99
+ const references = Array.isArray(tsconfig.references) ? tsconfig.references : [];
100
+ for (const reference of references) {
101
+ const target = asRecord(reference).path;
102
+ if (typeof target !== 'string')
103
+ continue;
104
+ const file = target.endsWith('.json') ? join('/', target) : join('/', target, 'tsconfig.json');
105
+ for (const [key, value] of Object.entries(asRecord(readJson(fs, file)?.compilerOptions))) {
106
+ if (!(key in options))
107
+ options[key] = value;
108
+ }
109
+ }
110
+ return options;
87
111
  }
88
112
  function readAliases(options) {
89
113
  const baseUrl = typeof options.baseUrl === 'string' ? options.baseUrl : '.';
@@ -128,28 +152,28 @@ export function parseDotenv(text) {
128
152
  }
129
153
  return out;
130
154
  }
131
- function readEnv(fs) {
155
+ function readEnv(fs, mode) {
132
156
  const env = {};
133
- for (const file of CONFIG_FILES) {
134
- if (!file.startsWith('/.env'))
135
- continue;
157
+ for (const file of envFiles(mode)) {
136
158
  const text = fs.readText(file);
137
159
  if (text !== undefined)
138
160
  Object.assign(env, parseDotenv(text));
139
161
  }
140
162
  return env;
141
163
  }
142
- export function readProjectConfig(fs) {
164
+ export function readProjectConfig(fs, mode = 'development') {
143
165
  const options = readCompilerOptions(fs);
144
166
  return {
145
167
  dependencies: readDependencies(fs),
146
168
  aliases: readAliases(options),
147
169
  jsx: readJsx(options),
148
- env: readEnv(fs),
170
+ env: readEnv(fs, mode),
149
171
  };
150
172
  }
151
173
  /** True when a change to `path` invalidates the derived {@link ProjectConfig}. */
152
174
  export function isConfigFile(path) {
153
- return CONFIG_FILES.includes(normalizePath(path));
175
+ const normalized = normalizePath(path);
176
+ // Any root tsconfig: the root one may reference `tsconfig.app.json` and friends.
177
+ return CONFIG_FILES.includes(normalized) || /^\/tsconfig[^/]*\.json$/.test(normalized);
154
178
  }
155
179
  //# sourceMappingURL=projectConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"projectConfig.js","sourceRoot":"","sources":["../src/projectConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projectConfig.js","sourceRoot":"","sources":["../src/projectConfig.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Builtins that change or inspect the shell itself (cd, export, exit…), plus
3
+ * the command tables the executor dispatches on.
4
+ */
5
+ import type { CommandContext, Command } from './context.js';
6
+ /** The slice of the shell a builtin may change. */
7
+ export interface ShellState {
8
+ cwd: string;
9
+ env: Record<string, string>;
10
+ history: string[];
11
+ lastStatus: number;
12
+ /** Set by `exit`: the shell stops after the current command. */
13
+ exitRequested?: number;
14
+ /** Run a script in this shell (for `source`). */
15
+ run(source: string): Promise<number>;
16
+ }
17
+ export type Builtin = (ctx: CommandContext, shell: ShellState) => Promise<number>;
18
+ /** Coreutils: plain commands, also spawnable as standalone programs. */
19
+ export declare const COREUTILS: Record<string, Command>;
20
+ /** Programs the runtime provides besides coreutils (reported by `which`/`type`). */
21
+ export declare const SYSTEM_PROGRAMS: string[];
22
+ export declare const BUILTINS: Record<string, Builtin>;
23
+ //# sourceMappingURL=builtins.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../src/shell/builtins.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAK5D,mDAAmD;AACnD,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACtC;AAED,MAAM,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAElF,wEAAwE;AACxE,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAI7C,CAAC;AAEF,oFAAoF;AACpF,eAAO,MAAM,eAAe,UAA8C,CAAC;AAY3E,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CA4F5C,CAAC"}