veryfront 0.1.215 → 0.1.217

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 (305) hide show
  1. package/README.md +1 -1
  2. package/esm/cli/commands/extension/command-help.d.ts +3 -0
  3. package/esm/cli/commands/extension/command-help.d.ts.map +1 -0
  4. package/esm/cli/commands/extension/command-help.js +16 -0
  5. package/esm/cli/commands/extension/handler.d.ts +3 -0
  6. package/esm/cli/commands/extension/handler.d.ts.map +1 -0
  7. package/esm/cli/commands/extension/handler.js +36 -0
  8. package/esm/cli/commands/extension/init-command.d.ts +19 -0
  9. package/esm/cli/commands/extension/init-command.d.ts.map +1 -0
  10. package/esm/cli/commands/extension/init-command.js +122 -0
  11. package/esm/cli/commands/extension/validate-command.d.ts +13 -0
  12. package/esm/cli/commands/extension/validate-command.d.ts.map +1 -0
  13. package/esm/cli/commands/extension/validate-command.js +62 -0
  14. package/esm/cli/commands/generate/integration-generator-helpers.d.ts +35 -0
  15. package/esm/cli/commands/generate/integration-generator-helpers.d.ts.map +1 -0
  16. package/esm/cli/commands/generate/integration-generator-helpers.js +123 -0
  17. package/esm/cli/commands/generate/integration-generator.d.ts +1 -2
  18. package/esm/cli/commands/generate/integration-generator.d.ts.map +1 -1
  19. package/esm/cli/commands/generate/integration-generator.js +1 -123
  20. package/esm/cli/commands/knowledge/command-helpers.d.ts +48 -0
  21. package/esm/cli/commands/knowledge/command-helpers.d.ts.map +1 -0
  22. package/esm/cli/commands/knowledge/command-helpers.js +216 -0
  23. package/esm/cli/commands/knowledge/command.d.ts +12 -17
  24. package/esm/cli/commands/knowledge/command.d.ts.map +1 -1
  25. package/esm/cli/commands/knowledge/command.js +26 -214
  26. package/esm/cli/help/command-definitions.d.ts.map +1 -1
  27. package/esm/cli/help/command-definitions.js +2 -0
  28. package/esm/cli/mcp/remote-file-tool-helpers.d.ts +5 -0
  29. package/esm/cli/mcp/remote-file-tool-helpers.d.ts.map +1 -0
  30. package/esm/cli/mcp/remote-file-tool-helpers.js +22 -0
  31. package/esm/cli/mcp/remote-file-tools.d.ts.map +1 -1
  32. package/esm/cli/mcp/remote-file-tools.js +1 -22
  33. package/esm/cli/router.d.ts.map +1 -1
  34. package/esm/cli/router.js +2 -0
  35. package/esm/cli/templates/integration-loader-helpers.d.ts +8 -0
  36. package/esm/cli/templates/integration-loader-helpers.d.ts.map +1 -0
  37. package/esm/cli/templates/integration-loader-helpers.js +29 -0
  38. package/esm/cli/templates/integration-loader.d.ts.map +1 -1
  39. package/esm/cli/templates/integration-loader.js +5 -21
  40. package/esm/cli/templates/manifest.d.ts +1 -0
  41. package/esm/cli/templates/manifest.js +2 -1
  42. package/esm/deno.d.ts +3 -0
  43. package/esm/deno.js +5 -2
  44. package/esm/src/agent/runtime/index.d.ts.map +1 -1
  45. package/esm/src/agent/runtime/index.js +48 -90
  46. package/esm/src/chat/ag-ui-helpers.d.ts +17 -0
  47. package/esm/src/chat/ag-ui-helpers.d.ts.map +1 -0
  48. package/esm/src/chat/ag-ui-helpers.js +111 -0
  49. package/esm/src/chat/ag-ui.d.ts.map +1 -1
  50. package/esm/src/chat/ag-ui.js +1 -111
  51. package/esm/src/config/schemas/config.schema.d.ts +1 -0
  52. package/esm/src/config/schemas/config.schema.d.ts.map +1 -1
  53. package/esm/src/config/schemas/config.schema.js +11 -0
  54. package/esm/src/config/schemas/index.d.ts +11 -1
  55. package/esm/src/config/schemas/index.d.ts.map +1 -1
  56. package/esm/src/errors/error-registry-helpers.d.ts +6 -0
  57. package/esm/src/errors/error-registry-helpers.d.ts.map +1 -0
  58. package/esm/src/errors/error-registry-helpers.js +9 -0
  59. package/esm/src/errors/error-registry.d.ts.map +1 -1
  60. package/esm/src/errors/error-registry.js +4 -3
  61. package/esm/src/extensions/capabilities.d.ts +20 -0
  62. package/esm/src/extensions/capabilities.d.ts.map +1 -0
  63. package/esm/src/extensions/capabilities.js +77 -0
  64. package/esm/src/extensions/contracts.d.ts +10 -0
  65. package/esm/src/extensions/contracts.d.ts.map +1 -0
  66. package/esm/src/extensions/contracts.js +28 -0
  67. package/esm/src/extensions/discovery.d.ts +48 -0
  68. package/esm/src/extensions/discovery.d.ts.map +1 -0
  69. package/esm/src/extensions/discovery.js +179 -0
  70. package/esm/src/extensions/errors.d.ts +10 -0
  71. package/esm/src/extensions/errors.d.ts.map +1 -0
  72. package/esm/src/extensions/errors.js +34 -0
  73. package/esm/src/extensions/factory-loader.d.ts +29 -0
  74. package/esm/src/extensions/factory-loader.d.ts.map +1 -0
  75. package/esm/src/extensions/factory-loader.js +63 -0
  76. package/esm/src/extensions/index.d.ts +37 -0
  77. package/esm/src/extensions/index.d.ts.map +1 -0
  78. package/esm/src/extensions/index.js +41 -0
  79. package/esm/src/extensions/interfaces/ai-model-provider.d.ts +94 -0
  80. package/esm/src/extensions/interfaces/ai-model-provider.d.ts.map +1 -0
  81. package/esm/src/extensions/interfaces/ai-model-provider.js +8 -0
  82. package/esm/src/extensions/interfaces/auth-provider.d.ts +49 -0
  83. package/esm/src/extensions/interfaces/auth-provider.d.ts.map +1 -0
  84. package/esm/src/extensions/interfaces/auth-provider.js +8 -0
  85. package/esm/src/extensions/interfaces/bundler.d.ts +118 -0
  86. package/esm/src/extensions/interfaces/bundler.d.ts.map +1 -0
  87. package/esm/src/extensions/interfaces/bundler.js +8 -0
  88. package/esm/src/extensions/interfaces/cache-store.d.ts +27 -0
  89. package/esm/src/extensions/interfaces/cache-store.d.ts.map +1 -0
  90. package/esm/src/extensions/interfaces/cache-store.js +8 -0
  91. package/esm/src/extensions/interfaces/code-parser.d.ts +76 -0
  92. package/esm/src/extensions/interfaces/code-parser.d.ts.map +1 -0
  93. package/esm/src/extensions/interfaces/code-parser.js +8 -0
  94. package/esm/src/extensions/interfaces/content-transformer.d.ts +40 -0
  95. package/esm/src/extensions/interfaces/content-transformer.d.ts.map +1 -0
  96. package/esm/src/extensions/interfaces/content-transformer.js +8 -0
  97. package/esm/src/extensions/interfaces/css-processor.d.ts +38 -0
  98. package/esm/src/extensions/interfaces/css-processor.d.ts.map +1 -0
  99. package/esm/src/extensions/interfaces/css-processor.js +8 -0
  100. package/esm/src/extensions/interfaces/database-client.d.ts +31 -0
  101. package/esm/src/extensions/interfaces/database-client.d.ts.map +1 -0
  102. package/esm/src/extensions/interfaces/database-client.js +8 -0
  103. package/esm/src/extensions/interfaces/embedding-provider.d.ts +37 -0
  104. package/esm/src/extensions/interfaces/embedding-provider.d.ts.map +1 -0
  105. package/esm/src/extensions/interfaces/embedding-provider.js +8 -0
  106. package/esm/src/extensions/interfaces/index.d.ts +21 -0
  107. package/esm/src/extensions/interfaces/index.d.ts.map +1 -0
  108. package/esm/src/extensions/interfaces/index.js +9 -0
  109. package/esm/src/extensions/interfaces/node-compat.d.ts +25 -0
  110. package/esm/src/extensions/interfaces/node-compat.d.ts.map +1 -0
  111. package/esm/src/extensions/interfaces/node-compat.js +8 -0
  112. package/esm/src/extensions/interfaces/schema-validator.d.ts +46 -0
  113. package/esm/src/extensions/interfaces/schema-validator.d.ts.map +1 -0
  114. package/esm/src/extensions/interfaces/schema-validator.js +8 -0
  115. package/esm/src/extensions/interfaces/tracing-exporter.d.ts +44 -0
  116. package/esm/src/extensions/interfaces/tracing-exporter.d.ts.map +1 -0
  117. package/esm/src/extensions/interfaces/tracing-exporter.js +8 -0
  118. package/esm/src/extensions/loader.d.ts +33 -0
  119. package/esm/src/extensions/loader.d.ts.map +1 -0
  120. package/esm/src/extensions/loader.js +209 -0
  121. package/esm/src/extensions/orchestrate.d.ts +54 -0
  122. package/esm/src/extensions/orchestrate.d.ts.map +1 -0
  123. package/esm/src/extensions/orchestrate.js +116 -0
  124. package/esm/src/extensions/recommendations.d.ts +7 -0
  125. package/esm/src/extensions/recommendations.d.ts.map +1 -0
  126. package/esm/src/extensions/recommendations.js +22 -0
  127. package/esm/src/extensions/types.d.ts +47 -0
  128. package/esm/src/extensions/types.d.ts.map +1 -0
  129. package/esm/src/extensions/types.js +6 -0
  130. package/esm/src/extensions/validation.d.ts +44 -0
  131. package/esm/src/extensions/validation.d.ts.map +1 -0
  132. package/esm/src/extensions/validation.js +115 -0
  133. package/esm/src/html/styles-builder/plugin-loader.d.ts.map +1 -1
  134. package/esm/src/html/styles-builder/plugin-loader.js +23 -0
  135. package/esm/src/html/styles-builder/tailwind-plugin-allowlist.d.ts +29 -0
  136. package/esm/src/html/styles-builder/tailwind-plugin-allowlist.d.ts.map +1 -0
  137. package/esm/src/html/styles-builder/tailwind-plugin-allowlist.js +48 -0
  138. package/esm/src/modules/react-loader/ssr-module-loader/loader-helpers.d.ts +15 -0
  139. package/esm/src/modules/react-loader/ssr-module-loader/loader-helpers.d.ts.map +1 -0
  140. package/esm/src/modules/react-loader/ssr-module-loader/loader-helpers.js +22 -0
  141. package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts +0 -2
  142. package/esm/src/modules/react-loader/ssr-module-loader/loader.d.ts.map +1 -1
  143. package/esm/src/modules/react-loader/ssr-module-loader/loader.js +4 -24
  144. package/esm/src/platform/adapters/fs/veryfront/adapter-helpers.d.ts +19 -0
  145. package/esm/src/platform/adapters/fs/veryfront/adapter-helpers.d.ts.map +1 -0
  146. package/esm/src/platform/adapters/fs/veryfront/adapter-helpers.js +26 -0
  147. package/esm/src/platform/adapters/fs/veryfront/adapter.d.ts.map +1 -1
  148. package/esm/src/platform/adapters/fs/veryfront/adapter.js +4 -20
  149. package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.d.ts +1 -0
  150. package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.d.ts.map +1 -1
  151. package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.js +3 -0
  152. package/esm/src/platform/adapters/fs/veryfront/read-operations.d.ts.map +1 -1
  153. package/esm/src/platform/adapters/fs/veryfront/read-operations.js +4 -7
  154. package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.d.ts +28 -0
  155. package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.d.ts.map +1 -0
  156. package/esm/src/platform/adapters/fs/veryfront/websocket-manager-helpers.js +41 -0
  157. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts +1 -4
  158. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts.map +1 -1
  159. package/esm/src/platform/adapters/fs/veryfront/websocket-manager.js +7 -40
  160. package/esm/src/platform/compat/process/command.d.ts +31 -0
  161. package/esm/src/platform/compat/process/command.d.ts.map +1 -0
  162. package/esm/src/platform/compat/process/command.js +193 -0
  163. package/esm/src/platform/compat/process/env.d.ts +31 -0
  164. package/esm/src/platform/compat/process/env.d.ts.map +1 -0
  165. package/esm/src/platform/compat/process/env.js +175 -0
  166. package/esm/src/platform/compat/process/lifecycle.d.ts +98 -0
  167. package/esm/src/platform/compat/process/lifecycle.d.ts.map +1 -0
  168. package/esm/src/platform/compat/process/lifecycle.js +305 -0
  169. package/esm/src/platform/compat/process/runtime-process.d.ts +10 -0
  170. package/esm/src/platform/compat/process/runtime-process.d.ts.map +1 -0
  171. package/esm/src/platform/compat/process/runtime-process.js +24 -0
  172. package/esm/src/platform/compat/process.d.ts +4 -165
  173. package/esm/src/platform/compat/process.d.ts.map +1 -1
  174. package/esm/src/platform/compat/process.js +4 -682
  175. package/esm/src/platform/index.d.ts +1 -1
  176. package/esm/src/platform/index.d.ts.map +1 -1
  177. package/esm/src/provider/runtime-loader/provider-endpoints.d.ts +8 -0
  178. package/esm/src/provider/runtime-loader/provider-endpoints.d.ts.map +1 -0
  179. package/esm/src/provider/runtime-loader/provider-endpoints.js +27 -0
  180. package/esm/src/provider/runtime-loader/provider-request-init.d.ts +32 -0
  181. package/esm/src/provider/runtime-loader/provider-request-init.d.ts.map +1 -0
  182. package/esm/src/provider/runtime-loader/provider-request-init.js +67 -0
  183. package/esm/src/provider/runtime-loader/tool-input-status.d.ts +17 -0
  184. package/esm/src/provider/runtime-loader/tool-input-status.d.ts.map +1 -0
  185. package/esm/src/provider/runtime-loader/tool-input-status.js +155 -0
  186. package/esm/src/provider/runtime-loader.d.ts +2 -3
  187. package/esm/src/provider/runtime-loader.d.ts.map +1 -1
  188. package/esm/src/provider/runtime-loader.js +92 -291
  189. package/esm/src/proxy/handler.d.ts.map +1 -1
  190. package/esm/src/proxy/handler.js +14 -0
  191. package/esm/src/rendering/orchestrator/pipeline-helpers.d.ts +8 -0
  192. package/esm/src/rendering/orchestrator/pipeline-helpers.d.ts.map +1 -0
  193. package/esm/src/rendering/orchestrator/pipeline-helpers.js +20 -0
  194. package/esm/src/rendering/orchestrator/pipeline.d.ts +0 -3
  195. package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
  196. package/esm/src/rendering/orchestrator/pipeline.js +4 -22
  197. package/esm/src/routing/api/module-loader/loader-helpers.d.ts +10 -0
  198. package/esm/src/routing/api/module-loader/loader-helpers.d.ts.map +1 -0
  199. package/esm/src/routing/api/module-loader/loader-helpers.js +62 -0
  200. package/esm/src/routing/api/module-loader/loader.d.ts +1 -1
  201. package/esm/src/routing/api/module-loader/loader.d.ts.map +1 -1
  202. package/esm/src/routing/api/module-loader/loader.js +2 -60
  203. package/esm/src/server/bootstrap.d.ts +22 -2
  204. package/esm/src/server/bootstrap.d.ts.map +1 -1
  205. package/esm/src/server/bootstrap.js +67 -5
  206. package/esm/src/server/dev-ui/manifest.d.ts +2 -0
  207. package/esm/src/server/dev-ui/manifest.js +3 -1
  208. package/esm/src/server/handlers/request/api/project-discovery.d.ts.map +1 -1
  209. package/esm/src/server/handlers/request/api/project-discovery.js +14 -8
  210. package/esm/src/server/production-server.js +1 -1
  211. package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.d.ts.map +1 -1
  212. package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.js +2 -2
  213. package/esm/src/server/utils/domain-parser.d.ts.map +1 -1
  214. package/esm/src/server/utils/domain-parser.js +4 -0
  215. package/esm/src/studio/bridge/bridge-bundle.generated.d.ts.map +1 -1
  216. package/esm/src/studio/bridge/bridge-bundle.generated.js +1 -1
  217. package/esm/src/tool/index.d.ts +1 -1
  218. package/esm/src/tool/index.d.ts.map +1 -1
  219. package/esm/src/tool/types.d.ts +20 -0
  220. package/esm/src/tool/types.d.ts.map +1 -1
  221. package/esm/src/utils/version-constant.d.ts +1 -1
  222. package/esm/src/utils/version-constant.js +1 -1
  223. package/package.json +7 -1
  224. package/src/cli/commands/extension/command-help.ts +18 -0
  225. package/src/cli/commands/extension/handler.ts +41 -0
  226. package/src/cli/commands/extension/init-command.ts +140 -0
  227. package/src/cli/commands/extension/validate-command.ts +78 -0
  228. package/src/cli/commands/generate/integration-generator-helpers.ts +185 -0
  229. package/src/cli/commands/generate/integration-generator.ts +12 -168
  230. package/src/cli/commands/knowledge/command-helpers.ts +295 -0
  231. package/src/cli/commands/knowledge/command.ts +34 -261
  232. package/src/cli/help/command-definitions.ts +2 -0
  233. package/src/cli/mcp/remote-file-tool-helpers.ts +27 -0
  234. package/src/cli/mcp/remote-file-tools.ts +6 -28
  235. package/src/cli/router.ts +2 -0
  236. package/src/cli/templates/integration-loader-helpers.ts +49 -0
  237. package/src/cli/templates/integration-loader.ts +10 -28
  238. package/src/cli/templates/manifest.js +2 -1
  239. package/src/deno.js +5 -2
  240. package/src/src/agent/runtime/index.ts +77 -94
  241. package/src/src/chat/ag-ui-helpers.ts +139 -0
  242. package/src/src/chat/ag-ui.ts +11 -139
  243. package/src/src/config/schemas/config.schema.ts +11 -0
  244. package/src/src/config/schemas/index.ts +15 -1
  245. package/src/src/errors/error-registry-helpers.ts +23 -0
  246. package/src/src/errors/error-registry.ts +8 -3
  247. package/src/src/extensions/capabilities.ts +97 -0
  248. package/src/src/extensions/contracts.ts +36 -0
  249. package/src/src/extensions/discovery.ts +221 -0
  250. package/src/src/extensions/errors.ts +39 -0
  251. package/src/src/extensions/factory-loader.ts +76 -0
  252. package/src/src/extensions/index.ts +79 -0
  253. package/src/src/extensions/interfaces/ai-model-provider.ts +100 -0
  254. package/src/src/extensions/interfaces/auth-provider.ts +52 -0
  255. package/src/src/extensions/interfaces/bundler.ts +116 -0
  256. package/src/src/extensions/interfaces/cache-store.ts +27 -0
  257. package/src/src/extensions/interfaces/code-parser.ts +84 -0
  258. package/src/src/extensions/interfaces/content-transformer.ts +38 -0
  259. package/src/src/extensions/interfaces/css-processor.ts +40 -0
  260. package/src/src/extensions/interfaces/database-client.ts +35 -0
  261. package/src/src/extensions/interfaces/embedding-provider.ts +39 -0
  262. package/src/src/extensions/interfaces/index.ts +81 -0
  263. package/src/src/extensions/interfaces/node-compat.ts +25 -0
  264. package/src/src/extensions/interfaces/schema-validator.ts +51 -0
  265. package/src/src/extensions/interfaces/tracing-exporter.ts +42 -0
  266. package/src/src/extensions/loader.ts +245 -0
  267. package/src/src/extensions/orchestrate.ts +184 -0
  268. package/src/src/extensions/recommendations.ts +24 -0
  269. package/src/src/extensions/types.ts +57 -0
  270. package/src/src/extensions/validation.ts +147 -0
  271. package/src/src/html/styles-builder/plugin-loader.ts +32 -0
  272. package/src/src/html/styles-builder/tailwind-plugin-allowlist.ts +51 -0
  273. package/src/src/modules/react-loader/ssr-module-loader/loader-helpers.ts +37 -0
  274. package/src/src/modules/react-loader/ssr-module-loader/loader.ts +8 -39
  275. package/src/src/platform/adapters/fs/veryfront/adapter-helpers.ts +43 -0
  276. package/src/src/platform/adapters/fs/veryfront/adapter.ts +8 -22
  277. package/src/src/platform/adapters/fs/veryfront/read-operations-helpers.ts +4 -0
  278. package/src/src/platform/adapters/fs/veryfront/read-operations.ts +4 -7
  279. package/src/src/platform/adapters/fs/veryfront/websocket-manager-helpers.ts +73 -0
  280. package/src/src/platform/adapters/fs/veryfront/websocket-manager.ts +29 -44
  281. package/src/src/platform/compat/process/command.ts +297 -0
  282. package/src/src/platform/compat/process/env.ts +227 -0
  283. package/src/src/platform/compat/process/lifecycle.ts +330 -0
  284. package/src/src/platform/compat/process/runtime-process.ts +27 -0
  285. package/src/src/platform/compat/process.ts +37 -870
  286. package/src/src/platform/index.ts +1 -0
  287. package/src/src/provider/runtime-loader/provider-endpoints.ts +50 -0
  288. package/src/src/provider/runtime-loader/provider-request-init.ts +101 -0
  289. package/src/src/provider/runtime-loader/tool-input-status.ts +210 -0
  290. package/src/src/provider/runtime-loader.ts +113 -368
  291. package/src/src/proxy/handler.ts +16 -0
  292. package/src/src/rendering/orchestrator/pipeline-helpers.ts +35 -0
  293. package/src/src/rendering/orchestrator/pipeline.ts +8 -35
  294. package/src/src/routing/api/module-loader/loader-helpers.ts +68 -0
  295. package/src/src/routing/api/module-loader/loader.ts +8 -65
  296. package/src/src/server/bootstrap.ts +88 -7
  297. package/src/src/server/dev-ui/manifest.js +3 -1
  298. package/src/src/server/handlers/request/api/project-discovery.ts +19 -8
  299. package/src/src/server/production-server.ts +1 -1
  300. package/src/src/server/services/rsc/endpoints/rsc-bundles.generated.ts +2 -2
  301. package/src/src/server/utils/domain-parser.ts +4 -0
  302. package/src/src/studio/bridge/bridge-bundle.generated.ts +1 -1
  303. package/src/src/tool/index.ts +1 -0
  304. package/src/src/tool/types.ts +21 -0
  305. package/src/src/utils/version-constant.ts +1 -1
@@ -1,682 +1,4 @@
1
- import * as dntShim from "../../../_dnt.shims.js";
2
- import { isBun as IS_BUN, isDeno as IS_DENO } from "./runtime.js";
3
- import { dynamicImport } from "./dynamic-import.js";
4
- const nodeProcess = dntShim.dntGlobalThis.process;
5
- /**
6
- * Detect a real Node/Bun process object.
7
- * Browser bundles may inject `window.process = { env: {} }`, which is not enough
8
- * to safely call process APIs like cwd(), exit(), or on().
9
- */
10
- export function testHasRuntimeProcess(processLike) {
11
- if (!processLike || typeof processLike !== "object")
12
- return false;
13
- const versions = processLike.versions;
14
- return typeof versions?.node === "string" && versions.node.length > 0;
15
- }
16
- const runtimeProcess = testHasRuntimeProcess(nodeProcess) ? nodeProcess : null;
17
- function isWindowsPlatform() {
18
- if (IS_DENO)
19
- return dntShim.Deno.build.os === "windows";
20
- const platform = runtimeProcess?.platform ??
21
- dntShim.dntGlobalThis.process?.platform;
22
- return platform === "win32";
23
- }
24
- /** Get command-line arguments (cross-runtime: Deno.args or process.argv). */
25
- export function getArgs() {
26
- if (IS_DENO)
27
- return dntShim.Deno.args;
28
- if (runtimeProcess)
29
- return runtimeProcess.argv.slice(2);
30
- return [];
31
- }
32
- /** Exit the process with an optional code (cross-runtime: Deno.exit or process.exit). */
33
- export function exit(code) {
34
- if (IS_DENO)
35
- dntShim.Deno.exit(code);
36
- if (runtimeProcess)
37
- runtimeProcess.exit(code);
38
- throw new Error("exit() is not supported in this runtime");
39
- }
40
- export function cwd() {
41
- if (IS_DENO)
42
- return dntShim.Deno.cwd();
43
- if (runtimeProcess)
44
- return runtimeProcess.cwd();
45
- throw new Error("cwd() is not supported in this runtime");
46
- }
47
- export function chdir(directory) {
48
- if (IS_DENO) {
49
- dntShim.Deno.chdir(directory);
50
- return;
51
- }
52
- if (runtimeProcess) {
53
- runtimeProcess.chdir(directory);
54
- return;
55
- }
56
- throw new Error("chdir() is not supported in this runtime");
57
- }
58
- function getEnvOverlayStore() {
59
- const storage = getEnvOverlayStorage();
60
- const store = storage?.getStore();
61
- return store instanceof Map ? store : null;
62
- }
63
- function getOverlayEnvValue(store, key) {
64
- if (!store?.has(key)) {
65
- return { hasValue: false, value: undefined };
66
- }
67
- const value = store.get(key);
68
- return { hasValue: true, value: value ?? undefined };
69
- }
70
- export function env() {
71
- const base = IS_DENO
72
- ? dntShim.Deno.env.toObject()
73
- : runtimeProcess
74
- ? { ...runtimeProcess.env }
75
- : {};
76
- const overlay = getEnvOverlayStore();
77
- if (!overlay)
78
- return base;
79
- for (const [key, value] of overlay.entries()) {
80
- if (value === null) {
81
- delete base[key];
82
- continue;
83
- }
84
- base[key] = value;
85
- }
86
- return base;
87
- }
88
- /**
89
- * Read a host-level environment variable without consulting any project env overlay.
90
- * Use this for framework-owned runtime configuration that should not be shadowed by tenant env.
91
- */
92
- export function getHostEnv(key) {
93
- const overlayResult = getOverlayEnvValue(getEnvOverlayStore(), key);
94
- if (overlayResult.hasValue) {
95
- return overlayResult.value;
96
- }
97
- if (IS_DENO)
98
- return dntShim.Deno.env.get(key);
99
- if (runtimeProcess)
100
- return runtimeProcess.env[key];
101
- return undefined;
102
- }
103
- // Lazy-loaded references to project-env/storage.ts functions.
104
- // Uses globalThis to avoid circular imports (process.ts is low-level, project-env is high-level).
105
- // IMPORTANT: Only cache when the real getter is found. If storage.ts hasn't loaded yet,
106
- // re-check globalThis on every call to avoid permanently caching the fallback.
107
- let _getProjectEnv = null;
108
- let _isProjectEnvActive = null;
109
- function getProjectEnvSafe(key) {
110
- if (_getProjectEnv === null) {
111
- const mod = dntShim.dntGlobalThis.__vfProjectEnvGetter;
112
- if (mod) {
113
- _getProjectEnv = mod;
114
- }
115
- else {
116
- return undefined;
117
- }
118
- }
119
- return _getProjectEnv(key);
120
- }
121
- function isProjectEnvActiveSafe() {
122
- if (_isProjectEnvActive === null) {
123
- const mod = dntShim.dntGlobalThis.__vfProjectEnvActiveChecker;
124
- if (mod) {
125
- _isProjectEnvActive = mod;
126
- }
127
- else {
128
- return false;
129
- }
130
- }
131
- return _isProjectEnvActive();
132
- }
133
- export function getEnv(key) {
134
- // Check per-request project env overlay first (AsyncLocalStorage)
135
- const projectValue = getProjectEnvSafe(key);
136
- if (projectValue !== undefined)
137
- return projectValue;
138
- // When a project env overlay is active (remote project request), do NOT
139
- // fall through to host process env. This prevents remote projects from
140
- // reading host-level secrets like AWS_SECRET_ACCESS_KEY, DATABASE_URL, etc.
141
- if (isProjectEnvActiveSafe())
142
- return undefined;
143
- return getHostEnv(key);
144
- }
145
- const DEFAULT_ENV_TRUE_VALUES = ["1", "true", "yes"];
146
- const DEFAULT_ENV_FALSE_VALUES = ["0", "false", "no"];
147
- function normalizeEnvToken(value, options) {
148
- const normalized = options.trim ? value.trim() : value;
149
- return options.caseSensitive ? normalized : normalized.toLowerCase();
150
- }
151
- export function getEnvString(key, fallback) {
152
- const value = getEnv(key);
153
- if (value === undefined)
154
- return fallback;
155
- return value;
156
- }
157
- export function getEnvNumber(key, fallback) {
158
- const value = getEnvString(key);
159
- if (value === undefined)
160
- return fallback;
161
- const parsed = Number.parseInt(value, 10);
162
- if (Number.isNaN(parsed))
163
- return fallback ?? Number.NaN;
164
- return parsed;
165
- }
166
- export function getEnvBoolean(key, fallback = false, options = {}) {
167
- const value = getEnvString(key);
168
- if (value === undefined)
169
- return fallback;
170
- const trim = options.trim ?? true;
171
- const caseSensitive = options.caseSensitive ?? false;
172
- const normalized = normalizeEnvToken(value, { trim, caseSensitive });
173
- const trueValues = options.trueValues ?? DEFAULT_ENV_TRUE_VALUES;
174
- for (const trueValue of trueValues) {
175
- if (normalized === normalizeEnvToken(trueValue, { trim, caseSensitive }))
176
- return true;
177
- }
178
- const falseValues = options.falseValues ?? DEFAULT_ENV_FALSE_VALUES;
179
- for (const falseValue of falseValues) {
180
- if (normalized === normalizeEnvToken(falseValue, { trim, caseSensitive }))
181
- return false;
182
- }
183
- return fallback;
184
- }
185
- export function setEnv(key, value) {
186
- const overlay = getEnvOverlayStore();
187
- if (overlay) {
188
- overlay.set(key, value);
189
- return;
190
- }
191
- if (IS_DENO) {
192
- dntShim.Deno.env.set(key, value);
193
- return;
194
- }
195
- if (runtimeProcess) {
196
- runtimeProcess.env[key] = value;
197
- return;
198
- }
199
- throw new Error("setEnv() is not supported in this runtime");
200
- }
201
- export function deleteEnv(key) {
202
- const overlay = getEnvOverlayStore();
203
- if (overlay) {
204
- overlay.set(key, null);
205
- return;
206
- }
207
- if (IS_DENO) {
208
- dntShim.Deno.env.delete(key);
209
- return;
210
- }
211
- if (runtimeProcess) {
212
- delete runtimeProcess.env[key];
213
- return;
214
- }
215
- throw new Error("deleteEnv() is not supported in this runtime");
216
- }
217
- /**
218
- * Get an AsyncLocalStorage-based env overlay storage if installed.
219
- * This enables per-async-context env isolation (e.g., in tests).
220
- */
221
- export function getEnvOverlayStorage() {
222
- const globalAny = dntShim.dntGlobalThis;
223
- const overlay = globalAny["__vfTestDenoEnvOverlay"] ??
224
- globalAny["__vfTestEnvOverlay"];
225
- const storage = overlay?.storage;
226
- if (!storage || typeof storage.getStore !== "function")
227
- return null;
228
- return storage;
229
- }
230
- export function pid() {
231
- if (IS_DENO)
232
- return dntShim.Deno.pid;
233
- if (runtimeProcess)
234
- return runtimeProcess.pid;
235
- return 0;
236
- }
237
- export function memoryUsage() {
238
- if (IS_DENO) {
239
- const { rss, heapTotal, heapUsed, external } = dntShim.Deno.memoryUsage();
240
- return { rss, heapTotal, heapUsed, external };
241
- }
242
- if (!runtimeProcess) {
243
- throw new Error("memoryUsage() is not supported in this runtime");
244
- }
245
- const { rss, heapTotal, heapUsed, external } = runtimeProcess.memoryUsage();
246
- return { rss, heapTotal, heapUsed, external: external || 0 };
247
- }
248
- /**
249
- * Check if stdin is a TTY (terminal)
250
- */
251
- export function isInteractive() {
252
- if (IS_DENO)
253
- return dntShim.Deno.stdin.isTerminal();
254
- if (runtimeProcess)
255
- return runtimeProcess.stdin.isTTY ?? false;
256
- return false;
257
- }
258
- /**
259
- * Check if stdout is a TTY (terminal)
260
- */
261
- export function isStdoutTTY() {
262
- if (IS_DENO)
263
- return dntShim.Deno.stdout.isTerminal();
264
- if (runtimeProcess)
265
- return runtimeProcess.stdout.isTTY ?? false;
266
- return false;
267
- }
268
- /**
269
- * Get terminal size (columns and rows)
270
- * Returns default fallback values if terminal size cannot be determined
271
- */
272
- export function getTerminalSize() {
273
- const defaultSize = { columns: 80, rows: 24 };
274
- if (IS_DENO) {
275
- try {
276
- const { columns, rows } = dntShim.Deno.consoleSize();
277
- return { columns, rows };
278
- }
279
- catch (_) {
280
- /* expected: Deno.consoleSize() fails when not attached to a terminal */
281
- return defaultSize;
282
- }
283
- }
284
- if (!runtimeProcess)
285
- return defaultSize;
286
- const columns = runtimeProcess.stdout?.columns;
287
- const rows = runtimeProcess.stdout?.rows;
288
- if (columns && rows)
289
- return { columns, rows };
290
- return defaultSize;
291
- }
292
- /**
293
- * Get runtime version string
294
- */
295
- export function getRuntimeVersion() {
296
- if (IS_DENO)
297
- return `Deno ${dntShim.Deno.version.deno}`;
298
- if ("Bun" in dntShim.dntGlobalThis) {
299
- return `Bun ${dntShim.dntGlobalThis.Bun.version}`;
300
- }
301
- if (runtimeProcess)
302
- return `Node.js ${runtimeProcess.version}`;
303
- return "unknown";
304
- }
305
- /**
306
- * Get the operating system type
307
- * Returns: "darwin" (macOS), "linux", "windows", or the raw platform string
308
- */
309
- export function getOsType() {
310
- if (IS_DENO)
311
- return dntShim.Deno.build.os;
312
- if (runtimeProcess) {
313
- // Node/Bun uses process.platform which returns "win32" for Windows
314
- const platform = runtimeProcess.platform;
315
- return platform === "win32" ? "windows" : platform;
316
- }
317
- return "unknown";
318
- }
319
- /**
320
- * Register a signal handler (SIGINT, SIGTERM) for graceful shutdown
321
- */
322
- export function onSignal(signal, handler) {
323
- if (IS_DENO) {
324
- dntShim.Deno.addSignalListener(signal, handler);
325
- return;
326
- }
327
- if (runtimeProcess)
328
- runtimeProcess.on(signal, handler);
329
- }
330
- /**
331
- * Register global error handlers for uncaught exceptions and unhandled promise rejections.
332
- * These handlers prevent the process from crashing due to application code errors.
333
- *
334
- * IMPORTANT: These handlers should be registered early in the application lifecycle
335
- * to catch errors that escape try/catch blocks.
336
- *
337
- * @param onError - Callback invoked with the error. Return true to prevent process exit.
338
- */
339
- export function onGlobalError(onError) {
340
- if (IS_DENO) {
341
- // Intentionally permanent: process-level handlers must persist for the entire runtime
342
- globalThis.addEventListener("error", (event) => {
343
- const error = event.error instanceof Error ? event.error : new Error(String(event.error));
344
- if (onError(error, "uncaughtException"))
345
- event.preventDefault();
346
- });
347
- globalThis.addEventListener("unhandledrejection", (event) => {
348
- const error = event.reason instanceof Error ? event.reason : new Error(String(event.reason));
349
- if (onError(error, "unhandledRejection"))
350
- event.preventDefault();
351
- });
352
- return;
353
- }
354
- if (!runtimeProcess)
355
- return;
356
- const handleNodeGlobalError = (error, type) => {
357
- let shouldPreventExit = false;
358
- try {
359
- shouldPreventExit = onError(error, type) === true;
360
- }
361
- catch (handlerError) {
362
- const handlerException = handlerError instanceof Error
363
- ? handlerError
364
- : new Error(String(handlerError));
365
- console.error("Global error handler threw while processing", type, handlerException);
366
- }
367
- if (shouldPreventExit)
368
- return;
369
- // Node/Bun suppress default fatal behavior when a listener is registered.
370
- // If the callback did not explicitly handle the error, exit to preserve
371
- // expected fatal semantics for uncaught exceptions and unhandled rejections.
372
- runtimeProcess.exit(1);
373
- };
374
- runtimeProcess.on("uncaughtException", (error) => {
375
- handleNodeGlobalError(error, "uncaughtException");
376
- });
377
- runtimeProcess.on("unhandledRejection", (reason) => {
378
- const error = reason instanceof Error ? reason : new Error(String(reason));
379
- handleNodeGlobalError(error, "unhandledRejection");
380
- });
381
- }
382
- /**
383
- * Unreference a timer to prevent it from keeping the process alive
384
- */
385
- export function unrefTimer(timerId) {
386
- if (IS_DENO && typeof dntShim.Deno.unrefTimer === "function") {
387
- dntShim.Deno.unrefTimer(timerId);
388
- return;
389
- }
390
- if (timerId && typeof timerId === "object" && "unref" in timerId) {
391
- timerId.unref();
392
- }
393
- }
394
- /**
395
- * Get the executable path of the current runtime
396
- */
397
- export function execPath() {
398
- if (IS_DENO)
399
- return dntShim.Deno.execPath();
400
- if (runtimeProcess)
401
- return runtimeProcess.execPath;
402
- return "";
403
- }
404
- /**
405
- * Get process uptime in seconds
406
- * Returns OS uptime on Deno, process uptime on Node.js
407
- */
408
- export function uptime() {
409
- if (IS_DENO) {
410
- // Deno.osUptime() returns system uptime in seconds
411
- return dntShim.Deno.osUptime?.() ?? 0;
412
- }
413
- if (runtimeProcess) {
414
- // process.uptime() returns process uptime in seconds
415
- return runtimeProcess.uptime?.() ?? 0;
416
- }
417
- return 0;
418
- }
419
- /**
420
- * Get stdout stream for writing
421
- * Returns null if not available (e.g., in browser/workers)
422
- */
423
- export function getStdout() {
424
- if (IS_DENO) {
425
- const encoder = new TextEncoder();
426
- return { write: (data) => dntShim.Deno.stdout.writeSync(encoder.encode(data)) };
427
- }
428
- if (runtimeProcess?.stdout) {
429
- return { write: (data) => runtimeProcess.stdout.write(data) };
430
- }
431
- return null;
432
- }
433
- /**
434
- * Write text directly to stdout (sync)
435
- * No-op if stdout is not available
436
- */
437
- export function writeStdout(text) {
438
- getStdout()?.write(text);
439
- }
440
- /**
441
- * Write data to stdout asynchronously
442
- * Returns a promise that resolves when the write is complete
443
- */
444
- export async function writeStdoutAsync(data) {
445
- if (IS_DENO)
446
- return await dntShim.Deno.stdout.write(data);
447
- if (runtimeProcess?.stdout) {
448
- return await new Promise((resolve, reject) => {
449
- runtimeProcess.stdout.write(data, (error) => {
450
- if (error)
451
- reject(error);
452
- else
453
- resolve(data.length);
454
- });
455
- });
456
- }
457
- return 0;
458
- }
459
- /**
460
- * Synchronous prompt function that works across Deno and Bun.
461
- * Displays a message and reads user input from stdin.
462
- *
463
- * Note: This relies on globalThis.prompt which is available in Deno and Bun.
464
- * Returns null in environments where prompt is not available (e.g., Node.js ESM).
465
- */
466
- export function promptSync(message) {
467
- if (typeof globalThis.prompt !== "function")
468
- return null;
469
- return globalThis.prompt(message ?? "") ?? null;
470
- }
471
- /**
472
- * Read a single byte from stdin synchronously.
473
- * Requires raw mode to be enabled for character-by-character reading.
474
- * Returns null on EOF or if stdin is not available.
475
- */
476
- export function readStdinByteSync() {
477
- const buf = new Uint8Array(1);
478
- if (IS_DENO) {
479
- const n = dntShim.Deno.stdin.readSync(buf);
480
- return n ? buf[0] ?? null : null;
481
- }
482
- if (IS_BUN) {
483
- // Bun: read one byte from the file descriptor directly
484
- const BunGlobal = dntShim.dntGlobalThis
485
- .Bun;
486
- const chunk = BunGlobal?.stdin?.read?.(1);
487
- if (chunk && chunk.length > 0) {
488
- const first = chunk.at(0);
489
- return first ?? null;
490
- }
491
- return null;
492
- }
493
- return null;
494
- }
495
- const COMMAND_TIMEOUT_EXIT_CODE = 124;
496
- const FORCE_KILL_GRACE_MS = 250;
497
- function createTimeoutResult(timeoutMs, stdout, stderr) {
498
- return {
499
- success: false,
500
- code: COMMAND_TIMEOUT_EXIT_CODE,
501
- stdout,
502
- stderr: `${stderr ?? ""}\nCommand timed out after ${timeoutMs}ms`.trim(),
503
- };
504
- }
505
- function createProcessTimeout(timeoutMs, terminate, forceTerminate) {
506
- let timedOut = false;
507
- let timeoutId;
508
- let forceKillId;
509
- if (timeoutMs && timeoutMs > 0) {
510
- timeoutId = dntShim.setTimeout(() => {
511
- timedOut = true;
512
- try {
513
- terminate();
514
- }
515
- catch (_) {
516
- /* expected: best-effort terminate may fail if process already exited */
517
- }
518
- forceKillId = dntShim.setTimeout(() => {
519
- try {
520
- forceTerminate();
521
- }
522
- catch (_) {
523
- /* expected: best-effort force terminate may fail if process already exited */
524
- }
525
- }, FORCE_KILL_GRACE_MS);
526
- }, timeoutMs);
527
- }
528
- return {
529
- hasTimedOut: () => timedOut,
530
- clear: () => {
531
- if (timeoutId)
532
- clearTimeout(timeoutId);
533
- if (forceKillId)
534
- clearTimeout(forceKillId);
535
- },
536
- };
537
- }
538
- async function readStreamToString(stream) {
539
- const reader = stream.getReader();
540
- const chunks = [];
541
- while (true) {
542
- const { done, value } = await reader.read();
543
- if (done)
544
- break;
545
- if (value)
546
- chunks.push(value);
547
- }
548
- const total = chunks.reduce((acc, c) => acc + c.length, 0);
549
- const merged = new Uint8Array(total);
550
- let offset = 0;
551
- for (const chunk of chunks) {
552
- merged.set(chunk, offset);
553
- offset += chunk.length;
554
- }
555
- return new TextDecoder().decode(merged);
556
- }
557
- /**
558
- * Run a command and return the result.
559
- * Works across Deno, Node.js, and Bun.
560
- *
561
- * @param cmd - Command to run
562
- * @param options - Command options
563
- * @param options.capture - Capture stdout/stderr to return in result
564
- * @param options.inherit - Inherit stdio from parent (shows output in terminal)
565
- * @param options.shell - Use shell to run command (needed for .cmd on Windows)
566
- */
567
- export async function runCommand(cmd, options = {}) {
568
- const { args = [], cwd: cmdCwd, env: cmdEnv, capture = false, inherit = false, shell = false, timeoutMs, } = options;
569
- const effectiveTimeoutMs = timeoutMs && timeoutMs > 0 ? Math.floor(timeoutMs) : undefined;
570
- // Determine stdio mode: inherit > capture > null
571
- const stdioMode = inherit ? "inherit" : capture ? "piped" : "null";
572
- if (IS_DENO) {
573
- const command = new dntShim.Deno.Command(cmd, {
574
- args,
575
- cwd: cmdCwd,
576
- env: cmdEnv,
577
- stdin: inherit ? "inherit" : "null",
578
- stdout: stdioMode,
579
- stderr: stdioMode,
580
- });
581
- const child = command.spawn();
582
- const timeout = createProcessTimeout(effectiveTimeoutMs, () => child.kill("SIGTERM"), () => child.kill("SIGKILL"));
583
- try {
584
- const [status, stdout, stderr] = await Promise.all([
585
- child.status,
586
- capture && child.stdout ? readStreamToString(child.stdout) : Promise.resolve(undefined),
587
- capture && child.stderr ? readStreamToString(child.stderr) : Promise.resolve(undefined),
588
- ]);
589
- if (timeout.hasTimedOut()) {
590
- return createTimeoutResult(effectiveTimeoutMs ?? 0, stdout, stderr);
591
- }
592
- return {
593
- success: status.success,
594
- code: status.code,
595
- stdout,
596
- stderr,
597
- };
598
- }
599
- finally {
600
- timeout.clear();
601
- }
602
- }
603
- if (IS_BUN) {
604
- const bunGlobal = dntShim.dntGlobalThis;
605
- const bunStdio = inherit ? "inherit" : capture ? "pipe" : "ignore";
606
- const isWindows = isWindowsPlatform();
607
- const bunCmd = shell
608
- ? args.length === 0
609
- ? isWindows ? ["cmd", "/c", cmd] : ["sh", "-c", cmd]
610
- : isWindows
611
- ? ["cmd", "/c", cmd, ...args]
612
- : ["sh", "-c", 'exec "$@"', "sh", cmd, ...args]
613
- : [cmd, ...args];
614
- const proc = bunGlobal.Bun.spawn({
615
- cmd: bunCmd,
616
- cwd: cmdCwd,
617
- env: cmdEnv,
618
- stdout: bunStdio,
619
- stderr: bunStdio,
620
- });
621
- const timeout = createProcessTimeout(effectiveTimeoutMs, () => proc.kill?.("SIGTERM"), () => proc.kill?.("SIGKILL"));
622
- try {
623
- const [code, stdout, stderr] = await Promise.all([
624
- proc.exited,
625
- capture && proc.stdout ? readStreamToString(proc.stdout) : Promise.resolve(undefined),
626
- capture && proc.stderr ? readStreamToString(proc.stderr) : Promise.resolve(undefined),
627
- ]);
628
- if (timeout.hasTimedOut()) {
629
- return createTimeoutResult(effectiveTimeoutMs ?? 0, stdout, stderr);
630
- }
631
- return { success: code === 0, code, stdout, stderr };
632
- }
633
- finally {
634
- timeout.clear();
635
- }
636
- }
637
- if (!runtimeProcess)
638
- return { success: false, code: 1 };
639
- const { spawn } = await dynamicImport("node:child_process");
640
- const nodeStdio = inherit
641
- ? ["inherit", "inherit", "inherit"]
642
- : capture
643
- ? ["ignore", "pipe", "pipe"]
644
- : ["ignore", "ignore", "ignore"];
645
- return await new Promise((resolve) => {
646
- const child = spawn(cmd, args, {
647
- cwd: cmdCwd,
648
- env: cmdEnv ? { ...runtimeProcess.env, ...cmdEnv } : undefined,
649
- stdio: nodeStdio,
650
- shell,
651
- });
652
- let stdout = "";
653
- let stderr = "";
654
- const decoder = new TextDecoder();
655
- const timeout = createProcessTimeout(effectiveTimeoutMs, () => child.kill("SIGTERM"), () => child.kill("SIGKILL"));
656
- if (capture) {
657
- child.stdout?.on("data", (data) => {
658
- stdout += decoder.decode(data);
659
- });
660
- child.stderr?.on("data", (data) => {
661
- stderr += decoder.decode(data);
662
- });
663
- }
664
- child.on("close", (code) => {
665
- timeout.clear();
666
- if (timeout.hasTimedOut()) {
667
- resolve(createTimeoutResult(effectiveTimeoutMs ?? 0, capture ? stdout : undefined, capture ? stderr : undefined));
668
- return;
669
- }
670
- resolve({
671
- success: code === 0,
672
- code: code ?? 1,
673
- stdout: capture ? stdout : undefined,
674
- stderr: capture ? stderr : undefined,
675
- });
676
- });
677
- child.on("error", () => {
678
- timeout.clear();
679
- resolve({ success: false, code: 1 });
680
- });
681
- });
682
- }
1
+ export { deleteEnv, env, getEnv, getEnvBoolean, getEnvNumber, getEnvOverlayStorage, getEnvString, getHostEnv, setEnv, } from "./process/env.js";
2
+ export { chdir, cwd, execPath, exit, getArgs, getOsType, getRuntimeVersion, getStdout, getTerminalSize, isInteractive, isStdoutTTY, memoryUsage, onGlobalError, onSignal, pid, promptSync, readStdinByteSync, unrefTimer, uptime, writeStdout, writeStdoutAsync, } from "./process/lifecycle.js";
3
+ export { testHasRuntimeProcess } from "./process/runtime-process.js";
4
+ export { runCommand } from "./process/command.js";
@@ -8,7 +8,7 @@ export { getAdapter } from "./adapters/detect.js";
8
8
  export { getLocalAdapter, runtime } from "./adapters/registry.js";
9
9
  export { createMockAdapter } from "./adapters/mock.js";
10
10
  export type { RuntimeAdapter } from "./adapters/base.js";
11
- export { chdir, cwd, env, exit, getArgs, getEnv, getOsType, getRuntimeVersion, getStdout, getTerminalSize, isInteractive, isStdoutTTY, onGlobalError, onSignal, promptSync, readStdinByteSync, runCommand, setEnv, writeStdout, writeStdoutAsync, } from "./compat/process.js";
11
+ export { chdir, type CommandResult, cwd, env, exit, getArgs, getEnv, getOsType, getRuntimeVersion, getStdout, getTerminalSize, isInteractive, isStdoutTTY, onGlobalError, onSignal, promptSync, readStdinByteSync, runCommand, setEnv, writeStdout, writeStdoutAsync, } from "./compat/process.js";
12
12
  export { createFileSystem, exists, type FileSystem, mkdir, readDir, readTextFile, remove, writeTextFile, } from "./compat/fs.js";
13
13
  export { createEscapeBuffer, getStdinReader, setRawMode, type StdinReader, } from "./compat/stdin.js";
14
14
  export { lookup as lookupMimeType } from "./compat/media-types.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/platform/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,EACL,KAAK,EACL,GAAG,EACH,GAAG,EACH,IAAI,EACJ,OAAO,EACP,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,aAAa,EACb,WAAW,EACX,aAAa,EACb,QAAQ,EACR,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,MAAM,EACN,WAAW,EACX,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,KAAK,UAAU,EACf,KAAK,EACL,OAAO,EACP,YAAY,EACZ,MAAM,EACN,aAAa,GACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGnE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAG/D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAG7C,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/platform/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,EACL,KAAK,EACL,KAAK,aAAa,EAClB,GAAG,EACH,GAAG,EACH,IAAI,EACJ,OAAO,EACP,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,aAAa,EACb,WAAW,EACX,aAAa,EACb,QAAQ,EACR,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,MAAM,EACN,WAAW,EACX,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,KAAK,UAAU,EACf,KAAK,EACL,OAAO,EACP,YAAY,EACZ,MAAM,EACN,aAAa,GACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,KAAK,WAAW,GACjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGnE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAG/D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAG7C,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC"}