@justscale/core 0.1.0

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 (784) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +261 -0
  3. package/bin/just.js +34 -0
  4. package/dist/app.d.ts +56 -0
  5. package/dist/app.d.ts.map +1 -0
  6. package/dist/app.js +182 -0
  7. package/dist/app.js.map +1 -0
  8. package/dist/builder/build-context.d.ts +8 -0
  9. package/dist/builder/build-context.d.ts.map +1 -0
  10. package/dist/builder/build-context.js +4 -0
  11. package/dist/builder/build-context.js.map +1 -0
  12. package/dist/builder/builder.d.ts +60 -0
  13. package/dist/builder/builder.d.ts.map +1 -0
  14. package/dist/builder/builder.js +72 -0
  15. package/dist/builder/builder.js.map +1 -0
  16. package/dist/builder/create-builder.d.ts +36 -0
  17. package/dist/builder/create-builder.d.ts.map +1 -0
  18. package/dist/builder/create-builder.js +66 -0
  19. package/dist/builder/create-builder.js.map +1 -0
  20. package/dist/builder/execute.d.ts +37 -0
  21. package/dist/builder/execute.d.ts.map +1 -0
  22. package/dist/builder/execute.js +62 -0
  23. package/dist/builder/execute.js.map +1 -0
  24. package/dist/builder/feature-builder.d.ts +147 -0
  25. package/dist/builder/feature-builder.d.ts.map +1 -0
  26. package/dist/builder/feature-builder.js +138 -0
  27. package/dist/builder/feature-builder.js.map +1 -0
  28. package/dist/builder/index.d.ts +35 -0
  29. package/dist/builder/index.d.ts.map +1 -0
  30. package/dist/builder/index.js +37 -0
  31. package/dist/builder/index.js.map +1 -0
  32. package/dist/builder/plugin.d.ts +90 -0
  33. package/dist/builder/plugin.d.ts.map +1 -0
  34. package/dist/builder/plugin.js +101 -0
  35. package/dist/builder/plugin.js.map +1 -0
  36. package/dist/builder/plugins/query.d.ts +31 -0
  37. package/dist/builder/plugins/query.d.ts.map +1 -0
  38. package/dist/builder/plugins/query.js +42 -0
  39. package/dist/builder/plugins/query.js.map +1 -0
  40. package/dist/builder/plugins/validation.d.ts +12 -0
  41. package/dist/builder/plugins/validation.d.ts.map +1 -0
  42. package/dist/builder/plugins/validation.js +12 -0
  43. package/dist/builder/plugins/validation.js.map +1 -0
  44. package/dist/builder/sort.d.ts +27 -0
  45. package/dist/builder/sort.d.ts.map +1 -0
  46. package/dist/builder/sort.js +210 -0
  47. package/dist/builder/sort.js.map +1 -0
  48. package/dist/builder/stop.d.ts +24 -0
  49. package/dist/builder/stop.d.ts.map +1 -0
  50. package/dist/builder/stop.js +27 -0
  51. package/dist/builder/stop.js.map +1 -0
  52. package/dist/builder/test/permits-type-spike.d.ts +8 -0
  53. package/dist/builder/test/permits-type-spike.d.ts.map +1 -0
  54. package/dist/builder/test/permits-type-spike.js +117 -0
  55. package/dist/builder/test/permits-type-spike.js.map +1 -0
  56. package/dist/builder/types.d.ts +678 -0
  57. package/dist/builder/types.d.ts.map +1 -0
  58. package/dist/builder/types.js +98 -0
  59. package/dist/builder/types.js.map +1 -0
  60. package/dist/builder/validation.d.ts +101 -0
  61. package/dist/builder/validation.d.ts.map +1 -0
  62. package/dist/builder/validation.js +335 -0
  63. package/dist/builder/validation.js.map +1 -0
  64. package/dist/cli/adapter.d.ts +23 -0
  65. package/dist/cli/adapter.d.ts.map +1 -0
  66. package/dist/cli/adapter.js +26 -0
  67. package/dist/cli/adapter.js.map +1 -0
  68. package/dist/cli/args.d.ts +150 -0
  69. package/dist/cli/args.d.ts.map +1 -0
  70. package/dist/cli/args.js +172 -0
  71. package/dist/cli/args.js.map +1 -0
  72. package/dist/cli/assemble.d.ts +20 -0
  73. package/dist/cli/assemble.d.ts.map +1 -0
  74. package/dist/cli/assemble.js +55 -0
  75. package/dist/cli/assemble.js.map +1 -0
  76. package/dist/cli/bin/main.d.ts +26 -0
  77. package/dist/cli/bin/main.d.ts.map +1 -0
  78. package/dist/cli/bin/main.js +475 -0
  79. package/dist/cli/bin/main.js.map +1 -0
  80. package/dist/cli/build/migrations-plugin.d.ts +21 -0
  81. package/dist/cli/build/migrations-plugin.d.ts.map +1 -0
  82. package/dist/cli/build/migrations-plugin.js +41 -0
  83. package/dist/cli/build/migrations-plugin.js.map +1 -0
  84. package/dist/cli/build/process-plugin.d.ts +29 -0
  85. package/dist/cli/build/process-plugin.d.ts.map +1 -0
  86. package/dist/cli/build/process-plugin.js +66 -0
  87. package/dist/cli/build/process-plugin.js.map +1 -0
  88. package/dist/cli/builder/create-cli-builder.d.ts +42 -0
  89. package/dist/cli/builder/create-cli-builder.d.ts.map +1 -0
  90. package/dist/cli/builder/create-cli-builder.js +104 -0
  91. package/dist/cli/builder/create-cli-builder.js.map +1 -0
  92. package/dist/cli/builder/index.d.ts +8 -0
  93. package/dist/cli/builder/index.d.ts.map +1 -0
  94. package/dist/cli/builder/index.js +7 -0
  95. package/dist/cli/builder/index.js.map +1 -0
  96. package/dist/cli/builder/types.d.ts +113 -0
  97. package/dist/cli/builder/types.d.ts.map +1 -0
  98. package/dist/cli/builder/types.js +7 -0
  99. package/dist/cli/builder/types.js.map +1 -0
  100. package/dist/cli/cluster.d.ts +8 -0
  101. package/dist/cli/cluster.d.ts.map +1 -0
  102. package/dist/cli/cluster.js +145 -0
  103. package/dist/cli/cluster.js.map +1 -0
  104. package/dist/cli/current-app.d.ts +36 -0
  105. package/dist/cli/current-app.d.ts.map +1 -0
  106. package/dist/cli/current-app.js +21 -0
  107. package/dist/cli/current-app.js.map +1 -0
  108. package/dist/cli/define-app.d.ts +35 -0
  109. package/dist/cli/define-app.d.ts.map +1 -0
  110. package/dist/cli/define-app.js +79 -0
  111. package/dist/cli/define-app.js.map +1 -0
  112. package/dist/cli/define-main.d.ts +33 -0
  113. package/dist/cli/define-main.d.ts.map +1 -0
  114. package/dist/cli/define-main.js +67 -0
  115. package/dist/cli/define-main.js.map +1 -0
  116. package/dist/cli/define-project.d.ts +93 -0
  117. package/dist/cli/define-project.d.ts.map +1 -0
  118. package/dist/cli/define-project.js +85 -0
  119. package/dist/cli/define-project.js.map +1 -0
  120. package/dist/cli/dev-server.d.ts +20 -0
  121. package/dist/cli/dev-server.d.ts.map +1 -0
  122. package/dist/cli/dev-server.js +131 -0
  123. package/dist/cli/dev-server.js.map +1 -0
  124. package/dist/cli/discovery.d.ts +29 -0
  125. package/dist/cli/discovery.d.ts.map +1 -0
  126. package/dist/cli/discovery.js +142 -0
  127. package/dist/cli/discovery.js.map +1 -0
  128. package/dist/cli/factory.d.ts +43 -0
  129. package/dist/cli/factory.d.ts.map +1 -0
  130. package/dist/cli/factory.js +52 -0
  131. package/dist/cli/factory.js.map +1 -0
  132. package/dist/cli/generators/ai.d.ts +3 -0
  133. package/dist/cli/generators/ai.d.ts.map +1 -0
  134. package/dist/cli/generators/ai.js +65 -0
  135. package/dist/cli/generators/ai.js.map +1 -0
  136. package/dist/cli/generators/ci.d.ts +5 -0
  137. package/dist/cli/generators/ci.d.ts.map +1 -0
  138. package/dist/cli/generators/ci.js +102 -0
  139. package/dist/cli/generators/ci.js.map +1 -0
  140. package/dist/cli/generators/detect.d.ts +15 -0
  141. package/dist/cli/generators/detect.d.ts.map +1 -0
  142. package/dist/cli/generators/detect.js +75 -0
  143. package/dist/cli/generators/detect.js.map +1 -0
  144. package/dist/cli/generators/ide.d.ts +3 -0
  145. package/dist/cli/generators/ide.d.ts.map +1 -0
  146. package/dist/cli/generators/ide.js +179 -0
  147. package/dist/cli/generators/ide.js.map +1 -0
  148. package/dist/cli/generators/index.d.ts +5 -0
  149. package/dist/cli/generators/index.d.ts.map +1 -0
  150. package/dist/cli/generators/index.js +5 -0
  151. package/dist/cli/generators/index.js.map +1 -0
  152. package/dist/cli/index.d.ts +81 -0
  153. package/dist/cli/index.d.ts.map +1 -0
  154. package/dist/cli/index.js +88 -0
  155. package/dist/cli/index.js.map +1 -0
  156. package/dist/cli/io.d.ts +131 -0
  157. package/dist/cli/io.d.ts.map +1 -0
  158. package/dist/cli/io.js +373 -0
  159. package/dist/cli/io.js.map +1 -0
  160. package/dist/cli/mcp/server.d.ts +23 -0
  161. package/dist/cli/mcp/server.d.ts.map +1 -0
  162. package/dist/cli/mcp/server.js +148 -0
  163. package/dist/cli/mcp/server.js.map +1 -0
  164. package/dist/cli/parser.d.ts +106 -0
  165. package/dist/cli/parser.d.ts.map +1 -0
  166. package/dist/cli/parser.js +520 -0
  167. package/dist/cli/parser.js.map +1 -0
  168. package/dist/cli/runner.d.ts +75 -0
  169. package/dist/cli/runner.d.ts.map +1 -0
  170. package/dist/cli/runner.js +422 -0
  171. package/dist/cli/runner.js.map +1 -0
  172. package/dist/cli/service.d.ts +61 -0
  173. package/dist/cli/service.d.ts.map +1 -0
  174. package/dist/cli/service.js +95 -0
  175. package/dist/cli/service.js.map +1 -0
  176. package/dist/cli/types.d.ts +47 -0
  177. package/dist/cli/types.d.ts.map +1 -0
  178. package/dist/cli/types.js +20 -0
  179. package/dist/cli/types.js.map +1 -0
  180. package/dist/cli/wizard.d.ts +11 -0
  181. package/dist/cli/wizard.d.ts.map +1 -0
  182. package/dist/cli/wizard.js +2 -0
  183. package/dist/cli/wizard.js.map +1 -0
  184. package/dist/cli/workspace-controller.d.ts +36 -0
  185. package/dist/cli/workspace-controller.d.ts.map +1 -0
  186. package/dist/cli/workspace-controller.js +896 -0
  187. package/dist/cli/workspace-controller.js.map +1 -0
  188. package/dist/cluster/client.d.ts +101 -0
  189. package/dist/cluster/client.d.ts.map +1 -0
  190. package/dist/cluster/client.js +256 -0
  191. package/dist/cluster/client.js.map +1 -0
  192. package/dist/cluster/cluster.d.ts +82 -0
  193. package/dist/cluster/cluster.d.ts.map +1 -0
  194. package/dist/cluster/cluster.js +27 -0
  195. package/dist/cluster/cluster.js.map +1 -0
  196. package/dist/cluster/coordinator/cluster-node.model.d.ts +14 -0
  197. package/dist/cluster/coordinator/cluster-node.model.d.ts.map +1 -0
  198. package/dist/cluster/coordinator/cluster-node.model.js +15 -0
  199. package/dist/cluster/coordinator/cluster-node.model.js.map +1 -0
  200. package/dist/cluster/coordinator/cluster-signals.d.ts +45 -0
  201. package/dist/cluster/coordinator/cluster-signals.d.ts.map +1 -0
  202. package/dist/cluster/coordinator/cluster-signals.js +24 -0
  203. package/dist/cluster/coordinator/cluster-signals.js.map +1 -0
  204. package/dist/cluster/coordinator/coordinator.process.d.ts +21 -0
  205. package/dist/cluster/coordinator/coordinator.process.d.ts.map +1 -0
  206. package/dist/cluster/coordinator/coordinator.process.js +221 -0
  207. package/dist/cluster/coordinator/coordinator.process.js.map +1 -0
  208. package/dist/cluster/coordinator/index.d.ts +13 -0
  209. package/dist/cluster/coordinator/index.d.ts.map +1 -0
  210. package/dist/cluster/coordinator/index.js +13 -0
  211. package/dist/cluster/coordinator/index.js.map +1 -0
  212. package/dist/cluster/coordinator/node-lifecycle.d.ts +31 -0
  213. package/dist/cluster/coordinator/node-lifecycle.d.ts.map +1 -0
  214. package/dist/cluster/coordinator/node-lifecycle.js +178 -0
  215. package/dist/cluster/coordinator/node-lifecycle.js.map +1 -0
  216. package/dist/cluster/index.d.ts +45 -0
  217. package/dist/cluster/index.d.ts.map +1 -0
  218. package/dist/cluster/index.js +57 -0
  219. package/dist/cluster/index.js.map +1 -0
  220. package/dist/cluster/protocol.d.ts +204 -0
  221. package/dist/cluster/protocol.d.ts.map +1 -0
  222. package/dist/cluster/protocol.js +274 -0
  223. package/dist/cluster/protocol.js.map +1 -0
  224. package/dist/cluster/scheduled-task/builder.d.ts +24 -0
  225. package/dist/cluster/scheduled-task/builder.d.ts.map +1 -0
  226. package/dist/cluster/scheduled-task/builder.js +63 -0
  227. package/dist/cluster/scheduled-task/builder.js.map +1 -0
  228. package/dist/cluster/scheduled-task/factory.d.ts +76 -0
  229. package/dist/cluster/scheduled-task/factory.d.ts.map +1 -0
  230. package/dist/cluster/scheduled-task/factory.js +64 -0
  231. package/dist/cluster/scheduled-task/factory.js.map +1 -0
  232. package/dist/cluster/scheduled-task/index.d.ts +43 -0
  233. package/dist/cluster/scheduled-task/index.d.ts.map +1 -0
  234. package/dist/cluster/scheduled-task/index.js +45 -0
  235. package/dist/cluster/scheduled-task/index.js.map +1 -0
  236. package/dist/cluster/scheduled-task/transport.d.ts +12 -0
  237. package/dist/cluster/scheduled-task/transport.d.ts.map +1 -0
  238. package/dist/cluster/scheduled-task/transport.js +146 -0
  239. package/dist/cluster/scheduled-task/transport.js.map +1 -0
  240. package/dist/cluster/scheduled-task/types.d.ts +89 -0
  241. package/dist/cluster/scheduled-task/types.d.ts.map +1 -0
  242. package/dist/cluster/scheduled-task/types.js +7 -0
  243. package/dist/cluster/scheduled-task/types.js.map +1 -0
  244. package/dist/cluster/server.d.ts +87 -0
  245. package/dist/cluster/server.d.ts.map +1 -0
  246. package/dist/cluster/server.js +290 -0
  247. package/dist/cluster/server.js.map +1 -0
  248. package/dist/cluster/transport.d.ts +86 -0
  249. package/dist/cluster/transport.d.ts.map +1 -0
  250. package/dist/cluster/transport.js +138 -0
  251. package/dist/cluster/transport.js.map +1 -0
  252. package/dist/core/container-hooks.d.ts +22 -0
  253. package/dist/core/container-hooks.d.ts.map +1 -0
  254. package/dist/core/container-hooks.js +29 -0
  255. package/dist/core/container-hooks.js.map +1 -0
  256. package/dist/core/container-reflection.d.ts +71 -0
  257. package/dist/core/container-reflection.d.ts.map +1 -0
  258. package/dist/core/container-reflection.js +60 -0
  259. package/dist/core/container-reflection.js.map +1 -0
  260. package/dist/core/context.d.ts +146 -0
  261. package/dist/core/context.d.ts.map +1 -0
  262. package/dist/core/context.js +155 -0
  263. package/dist/core/context.js.map +1 -0
  264. package/dist/core/contribution.d.ts +152 -0
  265. package/dist/core/contribution.d.ts.map +1 -0
  266. package/dist/core/contribution.js +213 -0
  267. package/dist/core/contribution.js.map +1 -0
  268. package/dist/core/controller.contextual.d.ts +193 -0
  269. package/dist/core/controller.contextual.d.ts.map +1 -0
  270. package/dist/core/controller.contextual.js +459 -0
  271. package/dist/core/controller.contextual.js.map +1 -0
  272. package/dist/core/controller.d.ts +510 -0
  273. package/dist/core/controller.d.ts.map +1 -0
  274. package/dist/core/controller.js +411 -0
  275. package/dist/core/controller.js.map +1 -0
  276. package/dist/core/controller.procedure.d.ts +147 -0
  277. package/dist/core/controller.procedure.d.ts.map +1 -0
  278. package/dist/core/controller.procedure.js +115 -0
  279. package/dist/core/controller.procedure.js.map +1 -0
  280. package/dist/core/disposable.d.ts +126 -0
  281. package/dist/core/disposable.d.ts.map +1 -0
  282. package/dist/core/disposable.js +179 -0
  283. package/dist/core/disposable.js.map +1 -0
  284. package/dist/core/hmr.d.ts +83 -0
  285. package/dist/core/hmr.d.ts.map +1 -0
  286. package/dist/core/hmr.js +211 -0
  287. package/dist/core/hmr.js.map +1 -0
  288. package/dist/core/index.d.ts +17 -0
  289. package/dist/core/index.d.ts.map +1 -0
  290. package/dist/core/index.js +25 -0
  291. package/dist/core/index.js.map +1 -0
  292. package/dist/core/internal/routes.d.ts +26 -0
  293. package/dist/core/internal/routes.d.ts.map +1 -0
  294. package/dist/core/internal/routes.js +48 -0
  295. package/dist/core/internal/routes.js.map +1 -0
  296. package/dist/core/lifecycle-impl.d.ts +45 -0
  297. package/dist/core/lifecycle-impl.d.ts.map +1 -0
  298. package/dist/core/lifecycle-impl.js +102 -0
  299. package/dist/core/lifecycle-impl.js.map +1 -0
  300. package/dist/core/lifecycle.d.ts +86 -0
  301. package/dist/core/lifecycle.d.ts.map +1 -0
  302. package/dist/core/lifecycle.js +38 -0
  303. package/dist/core/lifecycle.js.map +1 -0
  304. package/dist/core/logger.d.ts +282 -0
  305. package/dist/core/logger.d.ts.map +1 -0
  306. package/dist/core/logger.js +368 -0
  307. package/dist/core/logger.js.map +1 -0
  308. package/dist/core/middleware.d.ts +108 -0
  309. package/dist/core/middleware.d.ts.map +1 -0
  310. package/dist/core/middleware.js +60 -0
  311. package/dist/core/middleware.js.map +1 -0
  312. package/dist/core/openapi-methods.d.ts +61 -0
  313. package/dist/core/openapi-methods.d.ts.map +1 -0
  314. package/dist/core/openapi-methods.js +53 -0
  315. package/dist/core/openapi-methods.js.map +1 -0
  316. package/dist/core/plugin.d.ts +209 -0
  317. package/dist/core/plugin.d.ts.map +1 -0
  318. package/dist/core/plugin.js +36 -0
  319. package/dist/core/plugin.js.map +1 -0
  320. package/dist/core/scope-bridge.d.ts +19 -0
  321. package/dist/core/scope-bridge.d.ts.map +1 -0
  322. package/dist/core/scope-bridge.js +34 -0
  323. package/dist/core/scope-bridge.js.map +1 -0
  324. package/dist/core/service.d.ts +429 -0
  325. package/dist/core/service.d.ts.map +1 -0
  326. package/dist/core/service.js +875 -0
  327. package/dist/core/service.js.map +1 -0
  328. package/dist/features/channel/backend.d.ts +98 -0
  329. package/dist/features/channel/backend.d.ts.map +1 -0
  330. package/dist/features/channel/backend.js +75 -0
  331. package/dist/features/channel/backend.js.map +1 -0
  332. package/dist/features/channel/channel.d.ts +18 -0
  333. package/dist/features/channel/channel.d.ts.map +1 -0
  334. package/dist/features/channel/channel.js +219 -0
  335. package/dist/features/channel/channel.js.map +1 -0
  336. package/dist/features/channel/channels.d.ts +87 -0
  337. package/dist/features/channel/channels.d.ts.map +1 -0
  338. package/dist/features/channel/channels.js +252 -0
  339. package/dist/features/channel/channels.js.map +1 -0
  340. package/dist/features/channel/feature.d.ts +40 -0
  341. package/dist/features/channel/feature.d.ts.map +1 -0
  342. package/dist/features/channel/feature.js +44 -0
  343. package/dist/features/channel/feature.js.map +1 -0
  344. package/dist/features/channel/index.d.ts +41 -0
  345. package/dist/features/channel/index.d.ts.map +1 -0
  346. package/dist/features/channel/index.js +41 -0
  347. package/dist/features/channel/index.js.map +1 -0
  348. package/dist/features/channel/types.d.ts +165 -0
  349. package/dist/features/channel/types.d.ts.map +1 -0
  350. package/dist/features/channel/types.js +10 -0
  351. package/dist/features/channel/types.js.map +1 -0
  352. package/dist/features/config/cli/config-controller.d.ts +77 -0
  353. package/dist/features/config/cli/config-controller.d.ts.map +1 -0
  354. package/dist/features/config/cli/config-controller.js +209 -0
  355. package/dist/features/config/cli/config-controller.js.map +1 -0
  356. package/dist/features/config/cli/index.d.ts +9 -0
  357. package/dist/features/config/cli/index.d.ts.map +1 -0
  358. package/dist/features/config/cli/index.js +9 -0
  359. package/dist/features/config/cli/index.js.map +1 -0
  360. package/dist/features/config/cli/profile-controller.d.ts +87 -0
  361. package/dist/features/config/cli/profile-controller.d.ts.map +1 -0
  362. package/dist/features/config/cli/profile-controller.js +223 -0
  363. package/dist/features/config/cli/profile-controller.js.map +1 -0
  364. package/dist/features/config/cli/utils.d.ts +14 -0
  365. package/dist/features/config/cli/utils.d.ts.map +1 -0
  366. package/dist/features/config/cli/utils.js +29 -0
  367. package/dist/features/config/cli/utils.js.map +1 -0
  368. package/dist/features/config/config-of.d.ts +36 -0
  369. package/dist/features/config/config-of.d.ts.map +1 -0
  370. package/dist/features/config/config-of.js +36 -0
  371. package/dist/features/config/config-of.js.map +1 -0
  372. package/dist/features/config/config-service.d.ts +54 -0
  373. package/dist/features/config/config-service.d.ts.map +1 -0
  374. package/dist/features/config/config-service.js +184 -0
  375. package/dist/features/config/config-service.js.map +1 -0
  376. package/dist/features/config/create-config.d.ts +21 -0
  377. package/dist/features/config/create-config.d.ts.map +1 -0
  378. package/dist/features/config/create-config.js +16 -0
  379. package/dist/features/config/create-config.js.map +1 -0
  380. package/dist/features/config/define-config-partial.d.ts +13 -0
  381. package/dist/features/config/define-config-partial.d.ts.map +1 -0
  382. package/dist/features/config/define-config-partial.js +19 -0
  383. package/dist/features/config/define-config-partial.js.map +1 -0
  384. package/dist/features/config/env-service.d.ts +54 -0
  385. package/dist/features/config/env-service.d.ts.map +1 -0
  386. package/dist/features/config/env-service.js +115 -0
  387. package/dist/features/config/env-service.js.map +1 -0
  388. package/dist/features/config/file-watcher.d.ts +13 -0
  389. package/dist/features/config/file-watcher.d.ts.map +1 -0
  390. package/dist/features/config/file-watcher.js +98 -0
  391. package/dist/features/config/file-watcher.js.map +1 -0
  392. package/dist/features/config/index.d.ts +21 -0
  393. package/dist/features/config/index.d.ts.map +1 -0
  394. package/dist/features/config/index.js +24 -0
  395. package/dist/features/config/index.js.map +1 -0
  396. package/dist/features/config/profile-service.d.ts +59 -0
  397. package/dist/features/config/profile-service.d.ts.map +1 -0
  398. package/dist/features/config/profile-service.js +114 -0
  399. package/dist/features/config/profile-service.js.map +1 -0
  400. package/dist/features/config/types.d.ts +38 -0
  401. package/dist/features/config/types.d.ts.map +1 -0
  402. package/dist/features/config/types.js +17 -0
  403. package/dist/features/config/types.js.map +1 -0
  404. package/dist/features/contract/contract.d.ts +264 -0
  405. package/dist/features/contract/contract.d.ts.map +1 -0
  406. package/dist/features/contract/contract.js +183 -0
  407. package/dist/features/contract/contract.js.map +1 -0
  408. package/dist/features/contract/index.d.ts +2 -0
  409. package/dist/features/contract/index.d.ts.map +1 -0
  410. package/dist/features/contract/index.js +2 -0
  411. package/dist/features/contract/index.js.map +1 -0
  412. package/dist/features/env/contribute.d.ts +70 -0
  413. package/dist/features/env/contribute.d.ts.map +1 -0
  414. package/dist/features/env/contribute.js +195 -0
  415. package/dist/features/env/contribute.js.map +1 -0
  416. package/dist/features/environment/create-environment.d.ts +58 -0
  417. package/dist/features/environment/create-environment.d.ts.map +1 -0
  418. package/dist/features/environment/create-environment.js +22 -0
  419. package/dist/features/environment/create-environment.js.map +1 -0
  420. package/dist/features/environment/index.d.ts +12 -0
  421. package/dist/features/environment/index.d.ts.map +1 -0
  422. package/dist/features/environment/index.js +10 -0
  423. package/dist/features/environment/index.js.map +1 -0
  424. package/dist/features/environment/load.d.ts +59 -0
  425. package/dist/features/environment/load.d.ts.map +1 -0
  426. package/dist/features/environment/load.js +117 -0
  427. package/dist/features/environment/load.js.map +1 -0
  428. package/dist/features/environment/types.d.ts +165 -0
  429. package/dist/features/environment/types.d.ts.map +1 -0
  430. package/dist/features/environment/types.js +18 -0
  431. package/dist/features/environment/types.js.map +1 -0
  432. package/dist/features/feature-flags/create-feature-flag-provider.d.ts +21 -0
  433. package/dist/features/feature-flags/create-feature-flag-provider.d.ts.map +1 -0
  434. package/dist/features/feature-flags/create-feature-flag-provider.js +16 -0
  435. package/dist/features/feature-flags/create-feature-flag-provider.js.map +1 -0
  436. package/dist/features/feature-flags/define-feature-flag-partial.d.ts +20 -0
  437. package/dist/features/feature-flags/define-feature-flag-partial.d.ts.map +1 -0
  438. package/dist/features/feature-flags/define-feature-flag-partial.js +26 -0
  439. package/dist/features/feature-flags/define-feature-flag-partial.js.map +1 -0
  440. package/dist/features/feature-flags/feature-flag-of.d.ts +16 -0
  441. package/dist/features/feature-flags/feature-flag-of.d.ts.map +1 -0
  442. package/dist/features/feature-flags/feature-flag-of.js +16 -0
  443. package/dist/features/feature-flags/feature-flag-of.js.map +1 -0
  444. package/dist/features/feature-flags/feature-flag-service.d.ts +22 -0
  445. package/dist/features/feature-flags/feature-flag-service.d.ts.map +1 -0
  446. package/dist/features/feature-flags/feature-flag-service.js +112 -0
  447. package/dist/features/feature-flags/feature-flag-service.js.map +1 -0
  448. package/dist/features/feature-flags/index.d.ts +15 -0
  449. package/dist/features/feature-flags/index.d.ts.map +1 -0
  450. package/dist/features/feature-flags/index.js +12 -0
  451. package/dist/features/feature-flags/index.js.map +1 -0
  452. package/dist/features/feature-flags/types.d.ts +30 -0
  453. package/dist/features/feature-flags/types.d.ts.map +1 -0
  454. package/dist/features/feature-flags/types.js +8 -0
  455. package/dist/features/feature-flags/types.js.map +1 -0
  456. package/dist/features/index.d.ts +6 -0
  457. package/dist/features/index.d.ts.map +1 -0
  458. package/dist/features/index.js +7 -0
  459. package/dist/features/index.js.map +1 -0
  460. package/dist/features/lock/index.d.ts +4 -0
  461. package/dist/features/lock/index.d.ts.map +1 -0
  462. package/dist/features/lock/index.js +4 -0
  463. package/dist/features/lock/index.js.map +1 -0
  464. package/dist/features/lock/lock-service.d.ts +74 -0
  465. package/dist/features/lock/lock-service.d.ts.map +1 -0
  466. package/dist/features/lock/lock-service.js +210 -0
  467. package/dist/features/lock/lock-service.js.map +1 -0
  468. package/dist/features/lock/memory.d.ts +60 -0
  469. package/dist/features/lock/memory.d.ts.map +1 -0
  470. package/dist/features/lock/memory.js +194 -0
  471. package/dist/features/lock/memory.js.map +1 -0
  472. package/dist/features/lock/types.d.ts +151 -0
  473. package/dist/features/lock/types.d.ts.map +1 -0
  474. package/dist/features/lock/types.js +17 -0
  475. package/dist/features/lock/types.js.map +1 -0
  476. package/dist/features/memory/index.d.ts +18 -0
  477. package/dist/features/memory/index.d.ts.map +1 -0
  478. package/dist/features/memory/index.js +18 -0
  479. package/dist/features/memory/index.js.map +1 -0
  480. package/dist/features/memory/lock-feature.d.ts +21 -0
  481. package/dist/features/memory/lock-feature.d.ts.map +1 -0
  482. package/dist/features/memory/lock-feature.js +24 -0
  483. package/dist/features/memory/lock-feature.js.map +1 -0
  484. package/dist/features/secrets/create-secret-provider.d.ts +31 -0
  485. package/dist/features/secrets/create-secret-provider.d.ts.map +1 -0
  486. package/dist/features/secrets/create-secret-provider.js +26 -0
  487. package/dist/features/secrets/create-secret-provider.js.map +1 -0
  488. package/dist/features/secrets/define-secret-partial.d.ts +16 -0
  489. package/dist/features/secrets/define-secret-partial.d.ts.map +1 -0
  490. package/dist/features/secrets/define-secret-partial.js +26 -0
  491. package/dist/features/secrets/define-secret-partial.js.map +1 -0
  492. package/dist/features/secrets/index.d.ts +17 -0
  493. package/dist/features/secrets/index.d.ts.map +1 -0
  494. package/dist/features/secrets/index.js +14 -0
  495. package/dist/features/secrets/index.js.map +1 -0
  496. package/dist/features/secrets/secret-of.d.ts +19 -0
  497. package/dist/features/secrets/secret-of.d.ts.map +1 -0
  498. package/dist/features/secrets/secret-of.js +21 -0
  499. package/dist/features/secrets/secret-of.js.map +1 -0
  500. package/dist/features/secrets/secret-service.d.ts +21 -0
  501. package/dist/features/secrets/secret-service.d.ts.map +1 -0
  502. package/dist/features/secrets/secret-service.js +28 -0
  503. package/dist/features/secrets/secret-service.js.map +1 -0
  504. package/dist/features/secrets/types.d.ts +30 -0
  505. package/dist/features/secrets/types.d.ts.map +1 -0
  506. package/dist/features/secrets/types.js +8 -0
  507. package/dist/features/secrets/types.js.map +1 -0
  508. package/dist/features/vault/env-var-vault.d.ts +24 -0
  509. package/dist/features/vault/env-var-vault.d.ts.map +1 -0
  510. package/dist/features/vault/env-var-vault.js +43 -0
  511. package/dist/features/vault/env-var-vault.js.map +1 -0
  512. package/dist/features/vault/hardcoded-vault.d.ts +34 -0
  513. package/dist/features/vault/hardcoded-vault.d.ts.map +1 -0
  514. package/dist/features/vault/hardcoded-vault.js +46 -0
  515. package/dist/features/vault/hardcoded-vault.js.map +1 -0
  516. package/dist/features/vault/hashicorp-vault.d.ts +32 -0
  517. package/dist/features/vault/hashicorp-vault.d.ts.map +1 -0
  518. package/dist/features/vault/hashicorp-vault.js +69 -0
  519. package/dist/features/vault/hashicorp-vault.js.map +1 -0
  520. package/dist/features/vault/index.d.ts +13 -0
  521. package/dist/features/vault/index.d.ts.map +1 -0
  522. package/dist/features/vault/index.js +12 -0
  523. package/dist/features/vault/index.js.map +1 -0
  524. package/dist/features/vault/kubernetes-vault.d.ts +27 -0
  525. package/dist/features/vault/kubernetes-vault.d.ts.map +1 -0
  526. package/dist/features/vault/kubernetes-vault.js +51 -0
  527. package/dist/features/vault/kubernetes-vault.js.map +1 -0
  528. package/dist/features/vault/types.d.ts +41 -0
  529. package/dist/features/vault/types.d.ts.map +1 -0
  530. package/dist/features/vault/types.js +21 -0
  531. package/dist/features/vault/types.js.map +1 -0
  532. package/dist/index.d.ts +78 -0
  533. package/dist/index.d.ts.map +1 -0
  534. package/dist/index.js +48 -0
  535. package/dist/index.js.map +1 -0
  536. package/dist/justscale.d.ts +63 -0
  537. package/dist/justscale.d.ts.map +1 -0
  538. package/dist/justscale.js +501 -0
  539. package/dist/justscale.js.map +1 -0
  540. package/dist/kernel/adapter.d.ts +9 -0
  541. package/dist/kernel/adapter.d.ts.map +1 -0
  542. package/dist/kernel/adapter.js +2 -0
  543. package/dist/kernel/adapter.js.map +1 -0
  544. package/dist/kernel/kernel.d.ts +15 -0
  545. package/dist/kernel/kernel.d.ts.map +1 -0
  546. package/dist/kernel/kernel.js +134 -0
  547. package/dist/kernel/kernel.js.map +1 -0
  548. package/dist/models/access.d.ts +26 -0
  549. package/dist/models/access.d.ts.map +1 -0
  550. package/dist/models/access.js +126 -0
  551. package/dist/models/access.js.map +1 -0
  552. package/dist/models/apply-types-config.d.ts +52 -0
  553. package/dist/models/apply-types-config.d.ts.map +1 -0
  554. package/dist/models/apply-types-config.js +47 -0
  555. package/dist/models/apply-types-config.js.map +1 -0
  556. package/dist/models/define-model.d.ts +249 -0
  557. package/dist/models/define-model.d.ts.map +1 -0
  558. package/dist/models/define-model.js +388 -0
  559. package/dist/models/define-model.js.map +1 -0
  560. package/dist/models/field.d.ts +309 -0
  561. package/dist/models/field.d.ts.map +1 -0
  562. package/dist/models/field.js +312 -0
  563. package/dist/models/field.js.map +1 -0
  564. package/dist/models/in-memory/condition-evaluator.d.ts +53 -0
  565. package/dist/models/in-memory/condition-evaluator.d.ts.map +1 -0
  566. package/dist/models/in-memory/condition-evaluator.js +593 -0
  567. package/dist/models/in-memory/condition-evaluator.js.map +1 -0
  568. package/dist/models/in-memory/in-memory-model.d.ts +89 -0
  569. package/dist/models/in-memory/in-memory-model.d.ts.map +1 -0
  570. package/dist/models/in-memory/in-memory-model.js +101 -0
  571. package/dist/models/in-memory/in-memory-model.js.map +1 -0
  572. package/dist/models/in-memory/in-memory-repository.d.ts +208 -0
  573. package/dist/models/in-memory/in-memory-repository.d.ts.map +1 -0
  574. package/dist/models/in-memory/in-memory-repository.js +618 -0
  575. package/dist/models/in-memory/in-memory-repository.js.map +1 -0
  576. package/dist/models/in-memory/in-memory-scheduled-task.repository.d.ts +92 -0
  577. package/dist/models/in-memory/in-memory-scheduled-task.repository.d.ts.map +1 -0
  578. package/dist/models/in-memory/in-memory-scheduled-task.repository.js +395 -0
  579. package/dist/models/in-memory/in-memory-scheduled-task.repository.js.map +1 -0
  580. package/dist/models/in-memory/index.d.ts +35 -0
  581. package/dist/models/in-memory/index.d.ts.map +1 -0
  582. package/dist/models/in-memory/index.js +36 -0
  583. package/dist/models/in-memory/index.js.map +1 -0
  584. package/dist/models/index.d.ts +52 -0
  585. package/dist/models/index.d.ts.map +1 -0
  586. package/dist/models/index.js +86 -0
  587. package/dist/models/index.js.map +1 -0
  588. package/dist/models/model-name-registry.d.ts +16 -0
  589. package/dist/models/model-name-registry.d.ts.map +1 -0
  590. package/dist/models/model-name-registry.js +19 -0
  591. package/dist/models/model-name-registry.js.map +1 -0
  592. package/dist/models/model.d.ts +15 -0
  593. package/dist/models/model.d.ts.map +1 -0
  594. package/dist/models/model.js +114 -0
  595. package/dist/models/model.js.map +1 -0
  596. package/dist/models/model.repository.d.ts +318 -0
  597. package/dist/models/model.repository.d.ts.map +1 -0
  598. package/dist/models/model.repository.js +146 -0
  599. package/dist/models/model.repository.js.map +1 -0
  600. package/dist/models/observable.d.ts +15 -0
  601. package/dist/models/observable.d.ts.map +1 -0
  602. package/dist/models/observable.js +64 -0
  603. package/dist/models/observable.js.map +1 -0
  604. package/dist/models/proxy.d.ts +5 -0
  605. package/dist/models/proxy.d.ts.map +1 -0
  606. package/dist/models/proxy.js +407 -0
  607. package/dist/models/proxy.js.map +1 -0
  608. package/dist/models/query.d.ts +574 -0
  609. package/dist/models/query.d.ts.map +1 -0
  610. package/dist/models/query.js +701 -0
  611. package/dist/models/query.js.map +1 -0
  612. package/dist/models/reference/reference.d.ts +229 -0
  613. package/dist/models/reference/reference.d.ts.map +1 -0
  614. package/dist/models/reference/reference.js +331 -0
  615. package/dist/models/reference/reference.js.map +1 -0
  616. package/dist/models/reference/transient-ref.d.ts +123 -0
  617. package/dist/models/reference/transient-ref.d.ts.map +1 -0
  618. package/dist/models/reference/transient-ref.js +152 -0
  619. package/dist/models/reference/transient-ref.js.map +1 -0
  620. package/dist/models/repository.d.ts +53 -0
  621. package/dist/models/repository.d.ts.map +1 -0
  622. package/dist/models/repository.js +37 -0
  623. package/dist/models/repository.js.map +1 -0
  624. package/dist/models/scheduled-task/index.d.ts +13 -0
  625. package/dist/models/scheduled-task/index.d.ts.map +1 -0
  626. package/dist/models/scheduled-task/index.js +12 -0
  627. package/dist/models/scheduled-task/index.js.map +1 -0
  628. package/dist/models/scheduled-task/scheduled-task.d.ts +73 -0
  629. package/dist/models/scheduled-task/scheduled-task.d.ts.map +1 -0
  630. package/dist/models/scheduled-task/scheduled-task.js +95 -0
  631. package/dist/models/scheduled-task/scheduled-task.js.map +1 -0
  632. package/dist/models/scheduled-task/scheduled-task.repository.d.ts +150 -0
  633. package/dist/models/scheduled-task/scheduled-task.repository.d.ts.map +1 -0
  634. package/dist/models/scheduled-task/scheduled-task.repository.js +40 -0
  635. package/dist/models/scheduled-task/scheduled-task.repository.js.map +1 -0
  636. package/dist/models/stream.d.ts +139 -0
  637. package/dist/models/stream.d.ts.map +1 -0
  638. package/dist/models/stream.js +153 -0
  639. package/dist/models/stream.js.map +1 -0
  640. package/dist/models/symbols.d.ts +73 -0
  641. package/dist/models/symbols.d.ts.map +1 -0
  642. package/dist/models/symbols.js +97 -0
  643. package/dist/models/symbols.js.map +1 -0
  644. package/dist/models/types.d.ts +291 -0
  645. package/dist/models/types.d.ts.map +1 -0
  646. package/dist/models/types.js +50 -0
  647. package/dist/models/types.js.map +1 -0
  648. package/dist/models/watch.d.ts +27 -0
  649. package/dist/models/watch.d.ts.map +1 -0
  650. package/dist/models/watch.js +124 -0
  651. package/dist/models/watch.js.map +1 -0
  652. package/dist/models/zod-ref.d.ts +46 -0
  653. package/dist/models/zod-ref.d.ts.map +1 -0
  654. package/dist/models/zod-ref.js +31 -0
  655. package/dist/models/zod-ref.js.map +1 -0
  656. package/dist/process/builtin-serializers.d.ts +19 -0
  657. package/dist/process/builtin-serializers.d.ts.map +1 -0
  658. package/dist/process/builtin-serializers.js +213 -0
  659. package/dist/process/builtin-serializers.js.map +1 -0
  660. package/dist/process/cluster-plugin.d.ts +129 -0
  661. package/dist/process/cluster-plugin.d.ts.map +1 -0
  662. package/dist/process/cluster-plugin.js +175 -0
  663. package/dist/process/cluster-plugin.js.map +1 -0
  664. package/dist/process/createProcess.d.ts +67 -0
  665. package/dist/process/createProcess.d.ts.map +1 -0
  666. package/dist/process/createProcess.js +111 -0
  667. package/dist/process/createProcess.js.map +1 -0
  668. package/dist/process/define-signals.d.ts +113 -0
  669. package/dist/process/define-signals.d.ts.map +1 -0
  670. package/dist/process/define-signals.js +222 -0
  671. package/dist/process/define-signals.js.map +1 -0
  672. package/dist/process/delay-controller.d.ts +35 -0
  673. package/dist/process/delay-controller.d.ts.map +1 -0
  674. package/dist/process/delay-controller.js +55 -0
  675. package/dist/process/delay-controller.js.map +1 -0
  676. package/dist/process/index.d.ts +38 -0
  677. package/dist/process/index.d.ts.map +1 -0
  678. package/dist/process/index.js +47 -0
  679. package/dist/process/index.js.map +1 -0
  680. package/dist/process/primitives.d.ts +393 -0
  681. package/dist/process/primitives.d.ts.map +1 -0
  682. package/dist/process/primitives.js +325 -0
  683. package/dist/process/primitives.js.map +1 -0
  684. package/dist/process/serialization.d.ts +58 -0
  685. package/dist/process/serialization.d.ts.map +1 -0
  686. package/dist/process/serialization.js +220 -0
  687. package/dist/process/serialization.js.map +1 -0
  688. package/dist/process/stream-utils.d.ts +123 -0
  689. package/dist/process/stream-utils.d.ts.map +1 -0
  690. package/dist/process/stream-utils.js +247 -0
  691. package/dist/process/stream-utils.js.map +1 -0
  692. package/dist/process/testing/clock.d.ts +115 -0
  693. package/dist/process/testing/clock.d.ts.map +1 -0
  694. package/dist/process/testing/clock.js +166 -0
  695. package/dist/process/testing/clock.js.map +1 -0
  696. package/dist/process/testing/index.d.ts +9 -0
  697. package/dist/process/testing/index.d.ts.map +1 -0
  698. package/dist/process/testing/index.js +9 -0
  699. package/dist/process/testing/index.js.map +1 -0
  700. package/dist/process/testing.d.ts +50 -0
  701. package/dist/process/testing.d.ts.map +1 -0
  702. package/dist/process/testing.js +59 -0
  703. package/dist/process/testing.js.map +1 -0
  704. package/dist/process/types.d.ts +540 -0
  705. package/dist/process/types.d.ts.map +1 -0
  706. package/dist/process/types.js +21 -0
  707. package/dist/process/types.js.map +1 -0
  708. package/dist/queue/index.d.ts +2 -0
  709. package/dist/queue/index.d.ts.map +1 -0
  710. package/dist/queue/index.js +2 -0
  711. package/dist/queue/index.js.map +1 -0
  712. package/dist/queue/queue.d.ts +34 -0
  713. package/dist/queue/queue.d.ts.map +1 -0
  714. package/dist/queue/queue.js +108 -0
  715. package/dist/queue/queue.js.map +1 -0
  716. package/dist/runtime/process/compiled.d.ts +56 -0
  717. package/dist/runtime/process/compiled.d.ts.map +1 -0
  718. package/dist/runtime/process/compiled.js +221 -0
  719. package/dist/runtime/process/compiled.js.map +1 -0
  720. package/dist/runtime/process/executor.d.ts +279 -0
  721. package/dist/runtime/process/executor.d.ts.map +1 -0
  722. package/dist/runtime/process/executor.js +1941 -0
  723. package/dist/runtime/process/executor.js.map +1 -0
  724. package/dist/runtime/process/factory.d.ts +72 -0
  725. package/dist/runtime/process/factory.d.ts.map +1 -0
  726. package/dist/runtime/process/factory.js +78 -0
  727. package/dist/runtime/process/factory.js.map +1 -0
  728. package/dist/runtime/process/freeze.d.ts +5 -0
  729. package/dist/runtime/process/freeze.d.ts.map +1 -0
  730. package/dist/runtime/process/freeze.js +94 -0
  731. package/dist/runtime/process/freeze.js.map +1 -0
  732. package/dist/runtime/process/scheduled-task-timer.d.ts +52 -0
  733. package/dist/runtime/process/scheduled-task-timer.d.ts.map +1 -0
  734. package/dist/runtime/process/scheduled-task-timer.js +104 -0
  735. package/dist/runtime/process/scheduled-task-timer.js.map +1 -0
  736. package/dist/runtime/process/signal-bus.d.ts +186 -0
  737. package/dist/runtime/process/signal-bus.d.ts.map +1 -0
  738. package/dist/runtime/process/signal-bus.js +256 -0
  739. package/dist/runtime/process/signal-bus.js.map +1 -0
  740. package/dist/runtime/process/state-serializer.d.ts +30 -0
  741. package/dist/runtime/process/state-serializer.d.ts.map +1 -0
  742. package/dist/runtime/process/state-serializer.js +244 -0
  743. package/dist/runtime/process/state-serializer.js.map +1 -0
  744. package/dist/runtime/process/storage.d.ts +96 -0
  745. package/dist/runtime/process/storage.d.ts.map +1 -0
  746. package/dist/runtime/process/storage.js +165 -0
  747. package/dist/runtime/process/storage.js.map +1 -0
  748. package/dist/runtime/process/timer-scheduler.d.ts +115 -0
  749. package/dist/runtime/process/timer-scheduler.d.ts.map +1 -0
  750. package/dist/runtime/process/timer-scheduler.js +192 -0
  751. package/dist/runtime/process/timer-scheduler.js.map +1 -0
  752. package/dist/runtime/process/trace.d.ts +17 -0
  753. package/dist/runtime/process/trace.d.ts.map +1 -0
  754. package/dist/runtime/process/trace.js +26 -0
  755. package/dist/runtime/process/trace.js.map +1 -0
  756. package/dist/runtime/protobuf/encoding/index.d.ts +26 -0
  757. package/dist/runtime/protobuf/encoding/index.d.ts.map +1 -0
  758. package/dist/runtime/protobuf/encoding/index.js +30 -0
  759. package/dist/runtime/protobuf/encoding/index.js.map +1 -0
  760. package/dist/runtime/protobuf/encoding/reader.d.ts +182 -0
  761. package/dist/runtime/protobuf/encoding/reader.d.ts.map +1 -0
  762. package/dist/runtime/protobuf/encoding/reader.js +353 -0
  763. package/dist/runtime/protobuf/encoding/reader.js.map +1 -0
  764. package/dist/runtime/protobuf/encoding/varint.d.ts +67 -0
  765. package/dist/runtime/protobuf/encoding/varint.d.ts.map +1 -0
  766. package/dist/runtime/protobuf/encoding/varint.js +117 -0
  767. package/dist/runtime/protobuf/encoding/varint.js.map +1 -0
  768. package/dist/runtime/protobuf/encoding/wire-types.d.ts +62 -0
  769. package/dist/runtime/protobuf/encoding/wire-types.d.ts.map +1 -0
  770. package/dist/runtime/protobuf/encoding/wire-types.js +103 -0
  771. package/dist/runtime/protobuf/encoding/wire-types.js.map +1 -0
  772. package/dist/runtime/protobuf/encoding/writer.d.ts +147 -0
  773. package/dist/runtime/protobuf/encoding/writer.d.ts.map +1 -0
  774. package/dist/runtime/protobuf/encoding/writer.js +214 -0
  775. package/dist/runtime/protobuf/encoding/writer.js.map +1 -0
  776. package/dist/runtime/protobuf/index.d.ts +3 -0
  777. package/dist/runtime/protobuf/index.d.ts.map +1 -0
  778. package/dist/runtime/protobuf/index.js +3 -0
  779. package/dist/runtime/protobuf/index.js.map +1 -0
  780. package/dist/runtime/protobuf/serialized.d.ts +48 -0
  781. package/dist/runtime/protobuf/serialized.d.ts.map +1 -0
  782. package/dist/runtime/protobuf/serialized.js +517 -0
  783. package/dist/runtime/protobuf/serialized.js.map +1 -0
  784. package/package.json +209 -0
@@ -0,0 +1,66 @@
1
+ /**
2
+ * esbuild plugin that routes `.process.ts` files (and `.ts` files that
3
+ * contain `createProcess` against `@justscale/core/process`) through the
4
+ * JustScale process compiler before esbuild bundles them. Non-process
5
+ * TypeScript is left alone — esbuild's built-in TS support handles it.
6
+ *
7
+ * The plugin relies on `PtsCompiler` producing an inline base64 source
8
+ * map; esbuild auto-detects that and folds it into the final bundle's
9
+ * map when the build is configured with `sourcemap: true`.
10
+ *
11
+ * `@justscale/typescript` is loaded dynamically so apps that don't use
12
+ * process features (or don't build via `just build --env`) aren't forced
13
+ * to pull the TypeScript compiler into their dep tree.
14
+ */
15
+ import { readFileSync } from 'node:fs';
16
+ import { basename } from 'node:path';
17
+ function looksLikeProcessFile(filePath, source) {
18
+ if (basename(filePath).includes('.process.'))
19
+ return true;
20
+ return (source.includes('@justscale/core/process') &&
21
+ source.includes('createProcess'));
22
+ }
23
+ /**
24
+ * Create the esbuild plugin. Instantiate once per build — the plugin holds
25
+ * a `PtsCompiler` instance internally and reuses it across `onLoad` calls.
26
+ */
27
+ export function justscaleProcessPlugin(opts) {
28
+ return {
29
+ name: 'justscale-process',
30
+ async setup(build) {
31
+ let compiler = null;
32
+ async function getCompiler() {
33
+ if (compiler)
34
+ return compiler;
35
+ let mod;
36
+ try {
37
+ mod = await import('@justscale/typescript/loader');
38
+ }
39
+ catch (err) {
40
+ throw new Error("Process files were found but '@justscale/typescript' is not installed. " +
41
+ "Install it to bundle apps that use '@justscale/core/process': " +
42
+ 'pnpm add -D @justscale/typescript\n' +
43
+ `Underlying error: ${err.message}`, { cause: err });
44
+ }
45
+ compiler = new mod.PtsCompiler({
46
+ rootDir: opts.rootDir,
47
+ sourceMap: opts.sourceMap ?? true,
48
+ verbose: opts.verbose ?? false,
49
+ });
50
+ return compiler;
51
+ }
52
+ build.onLoad({ filter: /\.ts$/, namespace: 'file' }, async (args) => {
53
+ const source = readFileSync(args.path, 'utf-8');
54
+ if (!looksLikeProcessFile(args.path, source))
55
+ return null;
56
+ const c = await getCompiler();
57
+ const { code } = c.compile(args.path);
58
+ // Return as JS so esbuild doesn't reapply TS transforms on our
59
+ // already-compiled output. The inline sourceMappingURL in `code`
60
+ // threads through to the final bundle map automatically.
61
+ return { contents: code, loader: 'js' };
62
+ });
63
+ },
64
+ };
65
+ }
66
+ //# sourceMappingURL=process-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-plugin.js","sourceRoot":"","sources":["../../../src/cli/build/process-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,SAAS,oBAAoB,CAAC,QAAgB,EAAE,MAAc;IAC5D,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,OAAO,CACL,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QAC1C,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CACjC,CAAC;AACJ,CAAC;AAWD;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAA0B;IAC/D,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,KAAK,CAAC,KAAK,CAAC,KAAK;YACf,IAAI,QAAQ,GAAuD,IAAI,CAAC;YAExE,KAAK,UAAU,WAAW;gBACxB,IAAI,QAAQ;oBAAE,OAAO,QAAQ,CAAC;gBAC9B,IAAI,GAAkD,CAAC;gBACvD,IAAI,CAAC;oBACH,GAAG,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;gBACrD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CACb,yEAAyE;wBACzE,gEAAgE;wBAChE,qCAAqC;wBACrC,qBAAsB,GAAa,CAAC,OAAO,EAAE,EAC7C,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;gBACJ,CAAC;gBACD,QAAQ,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC;oBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;oBACjC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK;iBAC/B,CAAC,CAAC;gBACH,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAClE,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAChD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;oBAAE,OAAO,IAAI,CAAC;gBAE1D,MAAM,CAAC,GAAG,MAAM,WAAW,EAAE,CAAC;gBAC9B,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtC,+DAA+D;gBAC/D,iEAAiE;gBACjE,yDAAyD;gBACzD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YAC1C,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * CLI Route Builder Factory
3
+ *
4
+ * Creates CLI route builders that extend the core builder with CLI-specific methods.
5
+ */
6
+ import type { z } from 'zod';
7
+ import type { CliBaseContext, CliRouteBuilder } from './types.js';
8
+ /** Symbol to store input schema on route */
9
+ export declare const INPUT_SCHEMA: unique symbol;
10
+ /** Symbol to store one-line description on route (for top-level `--help`). */
11
+ export declare const CLI_DESCRIPTION: unique symbol;
12
+ /** Read the input schema from a route definition. */
13
+ export declare function getInputSchema(route: unknown): z.ZodType | undefined;
14
+ /** Read the one-line command description from a route definition. */
15
+ export declare function getCliDescription(route: unknown): string | undefined;
16
+ /**
17
+ * Create a CLI route builder.
18
+ * Extends the core builder with CLI-specific methods.
19
+ */
20
+ export declare function createCliRouteBuilder<TCommand extends string>(command: TCommand): CliRouteBuilder<CliBaseContext, never, {}, TCommand>;
21
+ /**
22
+ * CLI command factory.
23
+ * Creates a builder for the given command name.
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * const buildRoute = Cli('build')
28
+ * .input(z.object({ src: z.string() }))
29
+ * .use(ctx => ({ srcPath: resolve(ctx.args.src) }))
30
+ * .guard(ctx => {
31
+ * if (!existsSync(ctx.srcPath)) {
32
+ * ctx.io.error('Source not found')
33
+ * return ctx.stop()
34
+ * }
35
+ * })
36
+ * .handle(ctx => {
37
+ * ctx.io.log(`Building from ${ctx.srcPath}`)
38
+ * })
39
+ * ```
40
+ */
41
+ export declare const Cli: <TCommand extends string>(command: TCommand) => CliRouteBuilder<CliBaseContext<Record<string, unknown>, void>, never, {}, TCommand>;
42
+ //# sourceMappingURL=create-cli-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-cli-builder.d.ts","sourceRoot":"","sources":["../../../src/cli/builder/create-cli-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAe,MAAM,YAAY,CAAC;AAE/E,4CAA4C;AAC5C,eAAO,MAAM,YAAY,eAA4B,CAAC;AAEtD,8EAA8E;AAC9E,eAAO,MAAM,eAAe,eAA4B,CAAC;AAEzD,qDAAqD;AACrD,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC,OAAO,GAAG,SAAS,CAEpE;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEpE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,SAAS,MAAM,EAC3D,OAAO,EAAE,QAAQ,GAChB,eAAe,CAAC,cAAc,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CA+DtD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,GAAG,GAAI,QAAQ,SAAS,MAAM,EAAE,SAAS,QAAQ,wFAC9B,CAAC"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * CLI Route Builder Factory
3
+ *
4
+ * Creates CLI route builders that extend the core builder with CLI-specific methods.
5
+ */
6
+ // Import from the leaf builder module rather than the package barrel
7
+ // `../../index.js` — the barrel re-exports features/config/cli, which
8
+ // pulls in Cli from cli/index.ts. Going through it here would put
9
+ // cli/service.ts back into the TDZ by the time cluster.ts reads
10
+ // CliService.
11
+ import { createBaseBuilder, createBuilderState } from '../../builder/create-builder.js';
12
+ /** Symbol to store input schema on route */
13
+ export const INPUT_SCHEMA = Symbol('cli.inputSchema');
14
+ /** Symbol to store one-line description on route (for top-level `--help`). */
15
+ export const CLI_DESCRIPTION = Symbol('cli.description');
16
+ /** Read the input schema from a route definition. */
17
+ export function getInputSchema(route) {
18
+ return route?.[INPUT_SCHEMA];
19
+ }
20
+ /** Read the one-line command description from a route definition. */
21
+ export function getCliDescription(route) {
22
+ return route?.[CLI_DESCRIPTION];
23
+ }
24
+ /**
25
+ * Create a CLI route builder.
26
+ * Extends the core builder with CLI-specific methods.
27
+ */
28
+ export function createCliRouteBuilder(command) {
29
+ const state = createBuilderState();
30
+ const base = createBaseBuilder(state, command);
31
+ // Track input schema + optional description
32
+ let inputSchema;
33
+ let description;
34
+ const builder = {
35
+ // Delegate core methods to base builder
36
+ use(middleware) {
37
+ base.use(middleware);
38
+ return builder;
39
+ },
40
+ guard(check) {
41
+ base.guard(check);
42
+ return builder;
43
+ },
44
+ apply(plugin) {
45
+ // Plugin transforms builder
46
+ return plugin(builder);
47
+ },
48
+ returns(status, schema, permission) {
49
+ base.returns(status, schema, permission);
50
+ return builder;
51
+ },
52
+ types(types) {
53
+ base.types(types);
54
+ return builder;
55
+ },
56
+ // CLI-specific: input schema for arguments
57
+ input(schema) {
58
+ inputSchema = schema;
59
+ return builder;
60
+ },
61
+ // One-line summary shown by top-level `--help` and the per-command
62
+ // help header. Keep it short — a usage sentence, not a paragraph.
63
+ describe(text) {
64
+ description = text;
65
+ return builder;
66
+ },
67
+ handle(handler) {
68
+ const routeDef = base.handle(handler);
69
+ const cliRouteDef = {
70
+ ...routeDef,
71
+ method: 'CLI',
72
+ inputSchema,
73
+ description,
74
+ };
75
+ cliRouteDef[INPUT_SCHEMA] = inputSchema;
76
+ ;
77
+ cliRouteDef[CLI_DESCRIPTION] = description;
78
+ return cliRouteDef;
79
+ },
80
+ };
81
+ return builder;
82
+ }
83
+ /**
84
+ * CLI command factory.
85
+ * Creates a builder for the given command name.
86
+ *
87
+ * @example
88
+ * ```typescript
89
+ * const buildRoute = Cli('build')
90
+ * .input(z.object({ src: z.string() }))
91
+ * .use(ctx => ({ srcPath: resolve(ctx.args.src) }))
92
+ * .guard(ctx => {
93
+ * if (!existsSync(ctx.srcPath)) {
94
+ * ctx.io.error('Source not found')
95
+ * return ctx.stop()
96
+ * }
97
+ * })
98
+ * .handle(ctx => {
99
+ * ctx.io.log(`Building from ${ctx.srcPath}`)
100
+ * })
101
+ * ```
102
+ */
103
+ export const Cli = (command) => createCliRouteBuilder(command);
104
+ //# sourceMappingURL=create-cli-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-cli-builder.js","sourceRoot":"","sources":["../../../src/cli/builder/create-cli-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,qEAAqE;AACrE,sEAAsE;AACtE,kEAAkE;AAClE,gEAAgE;AAChE,cAAc;AACd,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAIxF,4CAA4C;AAC5C,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAEtD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAEzD,qDAAqD;AACrD,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,OAAQ,KAAiC,EAAE,CAAC,YAAY,CAA0B,CAAC;AACrF,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAQ,KAAiC,EAAE,CAAC,eAAe,CAAuB,CAAC;AACrF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAiB;IAEjB,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACnC,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAE/C,4CAA4C;IAC5C,IAAI,WAAkC,CAAC;IACvC,IAAI,WAA+B,CAAC;IAEpC,MAAM,OAAO,GAAwC;QACnD,wCAAwC;QACxC,GAAG,CAAC,UAAU;YACZ,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACrB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,CAAC,KAAK;YACT,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,CAAC,MAAM;YACV,4BAA4B;YAC5B,OAAO,MAAM,CAAC,OAAc,CAAQ,CAAC;QACvC,CAAC;QAED,OAAO,CAAC,MAAc,EAAE,MAAkB,EAAE,UAAgB;YAC1D,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAa,EAAE,UAAU,CAAC,CAAC;YAChD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,CAAC,KAAK;YACT,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,2CAA2C;QAC3C,KAAK,CAAC,MAAM;YACV,WAAW,GAAG,MAAM,CAAC;YACrB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,mEAAmE;QACnE,kEAAkE;QAClE,QAAQ,CAAC,IAAI;YACX,WAAW,GAAG,IAAI,CAAC;YACnB,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,CAAC,OAAO;YACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,WAAW,GAAoC;gBACnD,GAAG,QAAQ;gBACX,MAAM,EAAE,KAAK;gBACb,WAAW;gBACX,WAAW;aACZ,CACA;YAAC,WAAmB,CAAC,YAAY,CAAC,GAAG,WAAW,CAAC;YAClD,CAAC;YAAC,WAAmB,CAAC,eAAe,CAAC,GAAG,WAAW,CAAC;YACrD,OAAO,WAAW,CAAC;QACrB,CAAC;KACF,CAAC;IAEF,OAAO,OAAc,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,CAA0B,OAAiB,EAAE,EAAE,CAChE,qBAAqB,CAAC,OAAO,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * CLI Builder Module
3
+ *
4
+ * Exports CLI-specific route builder types and factories.
5
+ */
6
+ export type { CliRouteBuilder, CliRouteDef, CliMethod, CliBaseContext, } from './types.js';
7
+ export { createCliRouteBuilder, Cli, INPUT_SCHEMA, getInputSchema, } from './create-cli-builder.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/builder/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EACV,eAAe,EACf,WAAW,EACX,SAAS,EACT,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,GAAG,EACH,YAAY,EACZ,cAAc,GACf,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * CLI Builder Module
3
+ *
4
+ * Exports CLI-specific route builder types and factories.
5
+ */
6
+ export { createCliRouteBuilder, Cli, INPUT_SCHEMA, getInputSchema, } from './create-cli-builder.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/builder/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EACL,qBAAqB,EACrB,GAAG,EACH,YAAY,EACZ,cAAc,GACf,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,113 @@
1
+ /**
2
+ * CLI Route Builder Types
3
+ *
4
+ * Extends core RouteBuilder with CLI-specific methods.
5
+ */
6
+ import type { BuilderPlugin, ExtractAddedFromMiddleware, ExtractStepDeps, ResponseEntry, RouteBuilderV2 as RouteBuilder, RouteDefV2 as RouteDef, Stop } from '../../index.js';
7
+ import type { GuardDef, MiddlewareDef } from '../../core/middleware.js';
8
+ import type { ServiceToken } from '../../core/service.js';
9
+ import type { z } from 'zod';
10
+ import type { CliIO } from '../io.js';
11
+ /**
12
+ * CLI method type - used as route method identifier.
13
+ */
14
+ export type CliMethod = 'CLI';
15
+ /**
16
+ * CLI-specific base context provided by the protocol.
17
+ * This is what the runner injects before route execution.
18
+ */
19
+ export interface CliBaseContext<TArgs = Record<string, unknown>, TResult = void> {
20
+ /** Parsed command arguments */
21
+ args: TArgs;
22
+ /** CLI I/O interface for input/output */
23
+ io: CliIO<TResult>;
24
+ }
25
+ /**
26
+ * CLI Route Builder - extends core RouteBuilder with CLI-specific methods.
27
+ *
28
+ * @typeParam TContext - Accumulated context from middleware
29
+ * @typeParam TReturns - Union of possible responses (ResponseEntry union)
30
+ * @typeParam TRequirements - Accumulated DI requirements from plugins
31
+ * @typeParam TCommand - Command name literal
32
+ */
33
+ export interface CliRouteBuilder<TContext, TReturns, TRequirements, TCommand extends string> extends RouteBuilder<TContext, TReturns, TRequirements, TCommand> {
34
+ /**
35
+ * Add middleware that extends context.
36
+ * Cannot stop execution - always returns additions.
37
+ * Accepts either a plain function or a MiddlewareDef (with DI).
38
+ * DI-aware middleware accumulates its inject deps into TRequirements,
39
+ * which flows through `RequiresOf<ControllerDef>` for type-level check.
40
+ */
41
+ use<TMw extends ((ctx: TContext) => object | Promise<object>) | MiddlewareDef<object, any>>(middleware: TMw): CliRouteBuilder<TContext & ExtractAddedFromMiddleware<TMw>, TReturns, TRequirements | ExtractStepDeps<TMw>, TCommand>;
42
+ /**
43
+ * Add guard that can stop execution.
44
+ * Cannot add to context - only checks and potentially stops.
45
+ * Accepts a guard function, a GuardDef (with DI), or an array of
46
+ * GuardDefs (any-match semantics).
47
+ */
48
+ guard<TG extends ((ctx: TContext & {
49
+ stop(): Stop;
50
+ }) => void | Stop | boolean | Promise<void | Stop | boolean>) | GuardDef<Record<string, ServiceToken>> | readonly GuardDef<Record<string, ServiceToken>>[]>(check: TG): CliRouteBuilder<TContext, TReturns, TRequirements | ExtractStepDeps<TG>, TCommand>;
51
+ /**
52
+ * Apply a plugin that can chain multiple operations.
53
+ * Plugins can add use/guard/returns in any combination.
54
+ */
55
+ apply<TCtxOut, TRetOut, TReqOut>(plugin: BuilderPlugin<TContext, TCtxOut, TReturns, TRetOut, TRequirements, TReqOut, TCommand>): CliRouteBuilder<TCtxOut, TRetOut, TReqOut, TCommand>;
56
+ /**
57
+ * Declare a possible response with schema.
58
+ */
59
+ returns<TStatus extends number, TSchema extends z.ZodType>(status: TStatus, schema: TSchema): CliRouteBuilder<TContext, TReturns | ResponseEntry<TStatus, z.infer<TSchema>>, TRequirements, TCommand>;
60
+ /**
61
+ * Declare a possible response without body.
62
+ */
63
+ returns<TStatus extends number>(status: TStatus): CliRouteBuilder<TContext, TReturns | ResponseEntry<TStatus, void>, TRequirements, TCommand>;
64
+ /**
65
+ * Specify the input schema for arguments.
66
+ * Uses convention-based parsing:
67
+ * - Required fields = positional args (in declaration order)
68
+ * - Optional/defaulted fields = named flags
69
+ *
70
+ * @example
71
+ * ```typescript
72
+ * Cli('build')
73
+ * .input(z.object({
74
+ * src: z.string(), // positional: build <src>
75
+ * verbose: z.boolean().default(false) // flag: --verbose
76
+ * }))
77
+ * .handle(({ args }) => {
78
+ * // args is typed as { src: string, verbose: boolean }
79
+ * })
80
+ * ```
81
+ */
82
+ input<TSchema extends z.ZodType>(schema: TSchema): CliRouteBuilder<Omit<TContext, 'args'> & {
83
+ args: z.infer<TSchema>;
84
+ }, TReturns, TRequirements, TCommand>;
85
+ /**
86
+ * One-line summary surfaced by `just --help` and prefixed to the
87
+ * per-command `--help` output.
88
+ *
89
+ * @example
90
+ * ```typescript
91
+ * Cli('user add')
92
+ * .describe('Create a new user account')
93
+ * .input(...)
94
+ * ```
95
+ */
96
+ describe(text: string): CliRouteBuilder<TContext, TReturns, TRequirements, TCommand>;
97
+ /**
98
+ * Set final handler.
99
+ */
100
+ handle(handler: (ctx: TContext) => void | Promise<void>): CliRouteDef<TCommand, TReturns, TRequirements>;
101
+ }
102
+ /**
103
+ * CLI-specific route definition.
104
+ * Extends core RouteDef with CLI method and optional input schema.
105
+ */
106
+ export interface CliRouteDef<TCommand extends string, TReturns, TRequirements> extends RouteDef<TCommand, TReturns, TRequirements> {
107
+ method: CliMethod;
108
+ /** Input schema for argument validation */
109
+ inputSchema?: z.ZodType;
110
+ /** One-line summary from `.describe()` — surfaced in `--help`. */
111
+ description?: string;
112
+ }
113
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/cli/builder/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * CLI Route Builder Types
3
+ *
4
+ * Extends core RouteBuilder with CLI-specific methods.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/cli/builder/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Registers CLI method handlers on the cluster server.
3
+ * Auto-registers as a transport plugin when imported.
4
+ */
5
+ import type { ClusterServer } from '../cluster/index.js';
6
+ /** Register CLI method handlers on a cluster server. */
7
+ export declare function registerCliHandlers(server: ClusterServer): void;
8
+ //# sourceMappingURL=cluster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cluster.d.ts","sourceRoot":"","sources":["../../src/cli/cluster.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,aAAa,EAGd,MAAM,qBAAqB,CAAC;AAW7B,wDAAwD;AACxD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAqE/D"}
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Registers CLI method handlers on the cluster server.
3
+ * Auto-registers as a transport plugin when imported.
4
+ */
5
+ import { Methods, registerTransport, } from '../cluster/index.js';
6
+ import { CliService, LazyCliService, createCliService } from './service.js';
7
+ /** @internal */
8
+ let lazyCliService = null;
9
+ /** Register CLI method handlers on a cluster server. */
10
+ export function registerCliHandlers(server) {
11
+ server.handle(Methods.CLI_LIST, async (_, { app }) => {
12
+ if (!app) {
13
+ throw new Error('No app attached to cluster server');
14
+ }
15
+ const commands = [];
16
+ for (const controller of app.controllers) {
17
+ for (const route of controller.routes) {
18
+ if (route.method === 'CLI') {
19
+ const command = route.path.replace(/\//g, ' ').trim();
20
+ commands.push(command);
21
+ }
22
+ }
23
+ }
24
+ return { commands };
25
+ });
26
+ server.handle(Methods.CLI_INVOKE, async (params, ctx) => {
27
+ const { app, stream, prompt } = ctx;
28
+ if (!app) {
29
+ throw new Error('No app attached to cluster server');
30
+ }
31
+ const { command, args = {} } = params;
32
+ if (!command) {
33
+ throw new Error('Missing command parameter');
34
+ }
35
+ const commandAsPath = command.replace(/ /g, '/');
36
+ let targetRoute = null;
37
+ let targetDeps = {};
38
+ for (const controller of app.controllers) {
39
+ for (const route of controller.routes) {
40
+ if (route.method !== 'CLI')
41
+ continue;
42
+ if (route.path === commandAsPath) {
43
+ targetRoute = route;
44
+ targetDeps = controller.deps;
45
+ break;
46
+ }
47
+ }
48
+ if (targetRoute)
49
+ break;
50
+ }
51
+ if (!targetRoute) {
52
+ throw new Error(`Unknown command: ${command}`);
53
+ }
54
+ let result;
55
+ const io = createStreamingIO(stream, prompt, (data) => {
56
+ result = data;
57
+ });
58
+ const context = { args, io };
59
+ await app.execute({ route: targetRoute, deps: targetDeps, params: {} }, context);
60
+ return result;
61
+ });
62
+ }
63
+ /**
64
+ * Create a CLI IO implementation that streams output over cluster.
65
+ */
66
+ function createStreamingIO(stream, prompt, onResult) {
67
+ return {
68
+ log: (msg) => stream('stdout', msg),
69
+ error: (msg) => stream('stderr', msg),
70
+ warn: (msg) => stream('stderr', msg),
71
+ result: onResult,
72
+ prompt: async (message, defaultValue) => {
73
+ const result = await prompt('text', message, { defaultValue });
74
+ if (result === null) {
75
+ throw new Error('Prompt cancelled');
76
+ }
77
+ return result;
78
+ },
79
+ confirm: async (message) => {
80
+ const result = await prompt('confirm', message);
81
+ if (result === null) {
82
+ return false; // Cancelled = no
83
+ }
84
+ return result;
85
+ },
86
+ select: async (message, choices) => {
87
+ const choicesForPrompt = choices.map((c) => ({
88
+ label: c.label,
89
+ value: String(c.value),
90
+ }));
91
+ const result = await prompt('select', message, {
92
+ choices: choicesForPrompt,
93
+ });
94
+ if (result === null) {
95
+ throw new Error('Selection cancelled');
96
+ }
97
+ const selected = choices.find((c) => String(c.value) === result);
98
+ if (!selected) {
99
+ throw new Error('Invalid selection');
100
+ }
101
+ return selected.value;
102
+ },
103
+ spinner: (message) => {
104
+ stream('spinner', { action: 'start', message });
105
+ return {
106
+ start: () => stream('spinner', { action: 'start', message }),
107
+ stop: () => stream('spinner', { action: 'stop' }),
108
+ success: (msg) => stream('spinner', { action: 'success', message: msg }),
109
+ fail: (msg) => stream('spinner', { action: 'fail', message: msg }),
110
+ };
111
+ },
112
+ progress: (total, message) => {
113
+ stream('progress', { action: 'start', total, message });
114
+ return {
115
+ update: (current) => stream('progress', { action: 'update', current }),
116
+ finish: () => stream('progress', { action: 'finish' }),
117
+ };
118
+ },
119
+ table: (data, columns) => {
120
+ stream('table', { data, columns });
121
+ },
122
+ };
123
+ }
124
+ /** CLI transport plugin - auto-registers CLI handlers on serve(). */
125
+ const cliTransportPlugin = {
126
+ name: 'cli',
127
+ provides: [CliService],
128
+ beforeControllerResolution(container, _controllers) {
129
+ lazyCliService = new LazyCliService();
130
+ container.registerInstance(CliService, lazyCliService);
131
+ },
132
+ onAppCreated(app) {
133
+ const cliServiceImpl = createCliService(app);
134
+ if (lazyCliService) {
135
+ lazyCliService.setImplementation(cliServiceImpl);
136
+ }
137
+ },
138
+ registerHandlers(server, _app) {
139
+ registerCliHandlers(server);
140
+ },
141
+ };
142
+ registerTransport(cliTransportPlugin);
143
+ import { registerPluginProvides } from '../builder/validation.js';
144
+ registerPluginProvides(CliService);
145
+ //# sourceMappingURL=cluster.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../src/cli/cluster.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Runtime registry for the currently-running `defineApp` callable.
3
+ *
4
+ * `defineApp(meta, factory)` stashes its callable + the env it was
5
+ * invoked with here, after the kernel has successfully booted the
6
+ * app. Dev-mode packages (e.g. `@justscale/hmr`) read this to
7
+ * re-invoke the factory on file changes — rebuilding the app in a
8
+ * throwaway graph, diffing against the live container, and applying
9
+ * targeted replacements.
10
+ *
11
+ * Only one app is tracked per process. If several `defineApp`
12
+ * callables run (rare outside tests), the latest wins.
13
+ */
14
+ import type { Environment } from '../features/environment/types.js';
15
+ import type { App } from '../app.js';
16
+ export interface CurrentApp {
17
+ /** The defineApp callable — invoke with the same env to rebuild. */
18
+ readonly callable: (env: Environment) => Promise<unknown>;
19
+ /** The env the app was last built with. */
20
+ readonly env: Environment;
21
+ /** File-URL of the entry module (from `defineApp(meta, ...)`); dev
22
+ * tooling re-imports this URL with a cache-bust to force re-linking
23
+ * of the entry's static imports when upstream files have changed. */
24
+ readonly entryUrl: string;
25
+ /**
26
+ * The live App instance. HMR reads this to push newly-appeared
27
+ * controllers into `app.controllers` after it has resolved them
28
+ * against the live container, so routes added via a new `.add()` in
29
+ * the user's factory light up without a process restart. Not set
30
+ * until the kernel has booted successfully.
31
+ */
32
+ readonly app: App;
33
+ }
34
+ export declare function setCurrentApp(app: CurrentApp): void;
35
+ export declare function getCurrentApp(): CurrentApp | null;
36
+ //# sourceMappingURL=current-app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"current-app.d.ts","sourceRoot":"","sources":["../../src/cli/current-app.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAErC,MAAM,WAAW,UAAU;IACzB,oEAAoE;IACpE,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACzD,2CAA2C;IAC3C,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAA;IACzB;;yEAEqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;CAClB;AAID,wBAAgB,aAAa,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,CAEnD;AAED,wBAAgB,aAAa,IAAI,UAAU,GAAG,IAAI,CAEjD"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Runtime registry for the currently-running `defineApp` callable.
3
+ *
4
+ * `defineApp(meta, factory)` stashes its callable + the env it was
5
+ * invoked with here, after the kernel has successfully booted the
6
+ * app. Dev-mode packages (e.g. `@justscale/hmr`) read this to
7
+ * re-invoke the factory on file changes — rebuilding the app in a
8
+ * throwaway graph, diffing against the live container, and applying
9
+ * targeted replacements.
10
+ *
11
+ * Only one app is tracked per process. If several `defineApp`
12
+ * callables run (rare outside tests), the latest wins.
13
+ */
14
+ let current = null;
15
+ export function setCurrentApp(app) {
16
+ current = app;
17
+ }
18
+ export function getCurrentApp() {
19
+ return current;
20
+ }
21
+ //# sourceMappingURL=current-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"current-app.js","sourceRoot":"","sources":["../../src/cli/current-app.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAwBH,IAAI,OAAO,GAAsB,IAAI,CAAC;AAEtC,MAAM,UAAU,aAAa,CAAC,GAAe;IAC3C,OAAO,GAAG,GAAG,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,OAAO,CAAC;AACjB,CAAC"}