@pikku/cli 0.11.3 → 0.12.1

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 (587) hide show
  1. package/cli.schema.json +1 -1
  2. package/console-app/android-chrome-192x192.png +0 -0
  3. package/console-app/android-chrome-512x512.png +0 -0
  4. package/console-app/apple-touch-icon.png +0 -0
  5. package/console-app/assets/index-0Ui5UudO.css +1 -0
  6. package/console-app/assets/index-DiYPTQU_.js +676 -0
  7. package/console-app/favicon-16x16.png +0 -0
  8. package/console-app/favicon-32x32.png +0 -0
  9. package/console-app/favicon.ico +0 -0
  10. package/console-app/index.html +34 -0
  11. package/console-app/pikku-console-logo.png +0 -0
  12. package/console-app/site.webmanifest +19 -0
  13. package/console-app/wiring-icons/cron.svg +6 -0
  14. package/console-app/wiring-icons/function.png +0 -0
  15. package/console-app/wiring-icons/http.svg +2 -0
  16. package/console-app/wiring-icons/mcp.svg +1 -0
  17. package/console-app/wiring-icons/queue.svg +18 -0
  18. package/console-app/wiring-icons/sse.svg +5 -0
  19. package/console-app/wiring-icons/websocket.svg +8 -0
  20. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +46 -0
  21. package/dist/.pikku/agent/pikku-agent-types.gen.js +17 -0
  22. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.d.ts +1 -0
  23. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.js +6 -0
  24. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.json +3 -0
  25. package/dist/.pikku/agent/pikku-agent-wirings.gen.d.ts +4 -0
  26. package/dist/.pikku/agent/pikku-agent-wirings.gen.js +4 -0
  27. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +27 -14
  28. package/dist/.pikku/channel/pikku-channel-types.gen.js +21 -4
  29. package/dist/.pikku/channel/pikku-channels-meta.gen.js +2 -2
  30. package/dist/.pikku/channel/pikku-channels.gen.d.ts +1 -1
  31. package/dist/.pikku/channel/pikku-channels.gen.js +1 -1
  32. package/dist/.pikku/cli/pikku-cli-channel.js +72 -3
  33. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  34. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  35. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +9 -1
  36. package/dist/.pikku/cli/pikku-cli-types.gen.js +12 -2
  37. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +2 -2
  38. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +261 -11
  39. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
  40. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
  41. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -5
  42. package/dist/.pikku/cli/pikku-cli.gen.js +1 -5
  43. package/dist/.pikku/console/pikku-node-types.gen.d.ts +6 -0
  44. package/dist/.pikku/console/pikku-node-types.gen.js +1 -0
  45. package/dist/.pikku/function/pikku-function-types.gen.d.ts +83 -29
  46. package/dist/.pikku/function/pikku-function-types.gen.js +51 -15
  47. package/dist/.pikku/function/pikku-functions-meta.gen.js +2 -2
  48. package/dist/.pikku/function/pikku-functions-meta.gen.json +896 -192
  49. package/dist/.pikku/function/pikku-functions.gen.d.ts +1 -0
  50. package/dist/.pikku/function/pikku-functions.gen.js +119 -0
  51. package/dist/.pikku/http/pikku-http-types.gen.d.ts +55 -19
  52. package/dist/.pikku/http/pikku-http-types.gen.js +11 -2
  53. package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +2 -2
  54. package/dist/.pikku/http/pikku-http-wirings.gen.d.ts +1 -1
  55. package/dist/.pikku/http/pikku-http-wirings.gen.js +1 -1
  56. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +26 -27
  57. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +2 -12
  58. package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +2 -2
  59. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.d.ts +1 -1
  60. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.js +2 -2
  61. package/dist/.pikku/node/pikku-node-types.gen.d.ts +1 -0
  62. package/dist/.pikku/node/pikku-node-types.gen.js +1 -0
  63. package/dist/.pikku/pikku-bootstrap.gen.d.ts +5 -4
  64. package/dist/.pikku/pikku-bootstrap.gen.js +13 -2
  65. package/dist/.pikku/pikku-services.gen.d.ts +6 -1
  66. package/dist/.pikku/pikku-services.gen.js +5 -0
  67. package/dist/.pikku/pikku-types.gen.d.ts +4 -2
  68. package/dist/.pikku/pikku-types.gen.js +7 -3
  69. package/dist/.pikku/pikku-websocket.gen.d.ts +1 -1
  70. package/dist/.pikku/pikku-websocket.gen.js +1 -1
  71. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
  72. package/dist/.pikku/queue/pikku-queue-types.gen.js +2 -2
  73. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +2 -2
  74. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
  75. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
  76. package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.d.ts +3 -3
  77. package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.js +3 -3
  78. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.d.ts +1 -0
  79. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +6 -0
  80. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +70 -0
  81. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
  82. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +2 -2
  83. package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.js +2 -2
  84. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.d.ts +1 -1
  85. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.js +1 -1
  86. package/dist/.pikku/schemas/register.gen.js +43 -19
  87. package/dist/.pikku/schemas/schemas/BootstrapInput.schema.json +1 -0
  88. package/dist/.pikku/schemas/schemas/ConsoleCommandInput.schema.json +1 -0
  89. package/dist/.pikku/schemas/schemas/PikkuAIAgentOutput.schema.json +1 -0
  90. package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
  91. package/dist/.pikku/schemas/schemas/PikkuCLIOutput.schema.json +1 -1
  92. package/dist/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +1 -1
  93. package/dist/.pikku/schemas/schemas/PikkuConsoleFunctionsOutput.schema.json +1 -0
  94. package/dist/.pikku/schemas/schemas/PikkuFunctionsOutput.schema.json +1 -1
  95. package/dist/.pikku/schemas/schemas/PikkuHTTPOutput.schema.json +1 -1
  96. package/dist/.pikku/schemas/schemas/PikkuMCPOutput.schema.json +1 -1
  97. package/dist/.pikku/schemas/schemas/PikkuMiddlewareOutput.schema.json +1 -1
  98. package/dist/.pikku/schemas/schemas/PikkuNewAddonInput.schema.json +1 -0
  99. package/dist/.pikku/schemas/schemas/PikkuNewFunctionInput.schema.json +1 -0
  100. package/dist/.pikku/schemas/schemas/PikkuNewMiddlewareInput.schema.json +1 -0
  101. package/dist/.pikku/schemas/schemas/PikkuNewPermissionInput.schema.json +1 -0
  102. package/dist/.pikku/schemas/schemas/PikkuNewWiringInput.schema.json +1 -0
  103. package/dist/.pikku/schemas/schemas/PikkuNodesMetaOutput.schema.json +1 -0
  104. package/dist/.pikku/schemas/schemas/PikkuPackageOutput.schema.json +1 -1
  105. package/dist/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +1 -1
  106. package/dist/.pikku/schemas/schemas/PikkuPublicAgentOutput.schema.json +1 -0
  107. package/dist/.pikku/schemas/schemas/PikkuPublicRPCOutput.schema.json +1 -1
  108. package/dist/.pikku/schemas/schemas/PikkuQueueOutput.schema.json +1 -1
  109. package/dist/.pikku/schemas/schemas/PikkuRPCOutput.schema.json +1 -1
  110. package/dist/.pikku/schemas/schemas/PikkuRemoteRPCOutput.schema.json +1 -1
  111. package/dist/.pikku/schemas/schemas/PikkuSchedulerOutput.schema.json +1 -1
  112. package/dist/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
  113. package/dist/.pikku/schemas/schemas/PikkuTriggerOutput.schema.json +1 -0
  114. package/dist/.pikku/schemas/schemas/PikkuVersionsInitInput.schema.json +1 -0
  115. package/dist/.pikku/schemas/schemas/PikkuWorkflowOutput.schema.json +1 -1
  116. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +5 -0
  117. package/dist/.pikku/secrets/pikku-secret-types.gen.js +4 -0
  118. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +11 -0
  119. package/dist/.pikku/secrets/pikku-secrets.gen.js +10 -0
  120. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +113 -0
  121. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +33 -0
  122. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +5 -0
  123. package/dist/.pikku/variables/pikku-variable-types.gen.js +4 -0
  124. package/dist/.pikku/variables/pikku-variables.gen.d.ts +11 -0
  125. package/dist/.pikku/variables/pikku-variables.gen.js +10 -0
  126. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +28 -180
  127. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +18 -106
  128. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +2 -2
  129. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +1 -1
  130. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  131. package/dist/bin/pikku.js +20 -47
  132. package/dist/src/cli.wiring.js +210 -2
  133. package/dist/src/functions/commands/all.d.ts +1 -1
  134. package/dist/src/functions/commands/all.js +83 -180
  135. package/dist/src/functions/commands/bootstrap.d.ts +1 -1
  136. package/dist/src/functions/commands/bootstrap.js +13 -22
  137. package/dist/src/functions/commands/console.d.ts +7 -0
  138. package/dist/src/functions/commands/console.js +106 -0
  139. package/dist/src/functions/commands/info.d.ts +9 -0
  140. package/dist/src/functions/commands/info.js +283 -0
  141. package/dist/src/functions/commands/new-addon.d.ts +34 -0
  142. package/dist/src/functions/commands/new-addon.js +636 -0
  143. package/dist/src/functions/commands/new-function.d.ts +10 -0
  144. package/dist/src/functions/commands/new-function.js +79 -0
  145. package/dist/src/functions/commands/new-middleware.d.ts +10 -0
  146. package/dist/src/functions/commands/new-middleware.js +48 -0
  147. package/dist/src/functions/commands/new-permission.d.ts +10 -0
  148. package/dist/src/functions/commands/new-permission.js +45 -0
  149. package/dist/src/functions/commands/new-wiring.d.ts +10 -0
  150. package/dist/src/functions/commands/new-wiring.js +102 -0
  151. package/dist/src/functions/commands/pikku-command-bootstrap.d.ts +4 -0
  152. package/dist/src/functions/commands/pikku-command-bootstrap.js +38 -0
  153. package/dist/src/functions/commands/pikku-command-summary.d.ts +1 -0
  154. package/dist/src/functions/commands/pikku-command-summary.js +55 -0
  155. package/dist/src/functions/commands/versions-check.d.ts +1 -0
  156. package/dist/src/functions/commands/versions-check.js +99 -0
  157. package/dist/src/functions/commands/versions-init.d.ts +7 -0
  158. package/dist/src/functions/commands/versions-init.js +15 -0
  159. package/dist/src/functions/commands/versions-update.d.ts +1 -0
  160. package/dist/src/functions/commands/versions-update.js +20 -0
  161. package/dist/src/functions/commands/watch.d.ts +1 -1
  162. package/dist/src/functions/commands/watch.js +4 -5
  163. package/dist/src/functions/runtimes/fetch/index.d.ts +1 -0
  164. package/dist/src/functions/{wirings → runtimes}/fetch/index.js +3 -3
  165. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.d.ts +1 -1
  166. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +6 -7
  167. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.d.ts +1 -1
  168. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.js +4 -16
  169. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.js +4 -8
  170. package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.d.ts +1 -0
  171. package/dist/src/functions/{wirings/channels → runtimes/websocket}/pikku-command-websocket-typed.js +2 -2
  172. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.d.ts +1 -0
  173. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.js +20 -0
  174. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.d.ts +1 -0
  175. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.js +68 -0
  176. package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.d.ts +1 -0
  177. package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.js +23 -0
  178. package/dist/src/functions/wirings/ai-agent/serialize-agent-map.d.ts +4 -0
  179. package/dist/src/functions/wirings/ai-agent/serialize-agent-map.js +48 -0
  180. package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.d.ts +1 -0
  181. package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.js +76 -0
  182. package/dist/src/functions/wirings/ai-agent/serialize-public-agent.d.ts +1 -0
  183. package/dist/src/functions/wirings/ai-agent/serialize-public-agent.js +68 -0
  184. package/dist/src/functions/wirings/channels/pikku-channels.d.ts +1 -1
  185. package/dist/src/functions/wirings/channels/pikku-channels.js +2 -2
  186. package/dist/src/functions/wirings/channels/pikku-command-channel-types.d.ts +1 -1
  187. package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +3 -3
  188. package/dist/src/functions/wirings/channels/pikku-command-channels-map.d.ts +1 -1
  189. package/dist/src/functions/wirings/channels/pikku-command-channels-map.js +2 -2
  190. package/dist/src/functions/wirings/channels/pikku-command-channels.d.ts +1 -1
  191. package/dist/src/functions/wirings/channels/pikku-command-channels.js +2 -2
  192. package/dist/src/functions/wirings/channels/serialize-channel-types.d.ts +1 -1
  193. package/dist/src/functions/wirings/channels/serialize-channel-types.js +47 -17
  194. package/dist/src/functions/wirings/channels/serialize-typed-channel-map.d.ts +5 -4
  195. package/dist/src/functions/wirings/channels/serialize-typed-channel-map.js +8 -8
  196. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.d.ts +1 -1
  197. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +3 -7
  198. package/dist/src/functions/wirings/cli/pikku-command-cli-types.d.ts +1 -1
  199. package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +1 -1
  200. package/dist/src/functions/wirings/cli/pikku-command-cli.d.ts +1 -1
  201. package/dist/src/functions/wirings/cli/pikku-command-cli.js +2 -2
  202. package/dist/src/functions/wirings/cli/serialize-channel-cli-client.d.ts +2 -2
  203. package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +1 -1
  204. package/dist/src/functions/wirings/cli/serialize-channel-cli.js +8 -8
  205. package/dist/src/functions/wirings/cli/serialize-cli-types.js +14 -1
  206. package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.d.ts +3 -3
  207. package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.js +10 -11
  208. package/dist/src/functions/wirings/console/pikku-command-console-functions.d.ts +1 -0
  209. package/dist/src/functions/wirings/console/pikku-command-console-functions.js +24 -0
  210. package/dist/src/functions/wirings/console/pikku-command-node-types.d.ts +1 -0
  211. package/dist/src/functions/wirings/console/pikku-command-node-types.js +21 -0
  212. package/dist/src/functions/wirings/console/pikku-command-nodes-meta.d.ts +1 -0
  213. package/dist/src/functions/wirings/console/pikku-command-nodes-meta.js +79 -0
  214. package/dist/src/functions/wirings/console/serialize-console-functions.d.ts +1 -0
  215. package/dist/src/functions/wirings/console/serialize-console-functions.js +90 -0
  216. package/dist/src/functions/wirings/console/serialize-node-types.d.ts +1 -0
  217. package/dist/src/functions/wirings/console/serialize-node-types.js +11 -0
  218. package/dist/src/functions/wirings/functions/pikku-command-addon-types.d.ts +1 -0
  219. package/dist/src/functions/wirings/functions/pikku-command-addon-types.js +33 -0
  220. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.d.ts +1 -1
  221. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +2 -2
  222. package/dist/src/functions/wirings/functions/pikku-command-function-types.d.ts +1 -1
  223. package/dist/src/functions/wirings/functions/pikku-command-function-types.js +6 -6
  224. package/dist/src/functions/wirings/functions/pikku-command-functions.d.ts +1 -1
  225. package/dist/src/functions/wirings/functions/pikku-command-functions.js +9 -15
  226. package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
  227. package/dist/src/functions/wirings/functions/pikku-command-services.js +1 -1
  228. package/dist/src/functions/wirings/functions/schemas.d.ts +1 -4
  229. package/dist/src/functions/wirings/functions/schemas.js +8 -10
  230. package/dist/src/functions/wirings/functions/serialize-addon-types.d.ts +1 -0
  231. package/dist/src/functions/wirings/functions/serialize-addon-types.js +78 -0
  232. package/dist/src/functions/wirings/functions/serialize-function-imports.d.ts +3 -4
  233. package/dist/src/functions/wirings/functions/serialize-function-imports.js +13 -20
  234. package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +1 -1
  235. package/dist/src/functions/wirings/functions/serialize-function-types.js +126 -45
  236. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.d.ts +1 -1
  237. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +5 -2
  238. package/dist/src/functions/wirings/http/pikku-command-http-map.d.ts +1 -1
  239. package/dist/src/functions/wirings/http/pikku-command-http-map.js +4 -4
  240. package/dist/src/functions/wirings/http/pikku-command-http-routes.d.ts +1 -1
  241. package/dist/src/functions/wirings/http/pikku-command-http-routes.js +2 -2
  242. package/dist/src/functions/wirings/http/pikku-command-http-types.d.ts +1 -1
  243. package/dist/src/functions/wirings/http/pikku-command-http-types.js +1 -1
  244. package/dist/src/functions/wirings/http/pikku-command-openapi.d.ts +1 -1
  245. package/dist/src/functions/wirings/http/pikku-command-openapi.js +11 -9
  246. package/dist/src/functions/wirings/http/pikku-http-routes.d.ts +1 -1
  247. package/dist/src/functions/wirings/http/pikku-http-routes.js +2 -2
  248. package/dist/src/functions/wirings/http/serialize-http-types.js +65 -20
  249. package/dist/src/functions/wirings/http/serialize-typed-http-map.d.ts +7 -4
  250. package/dist/src/functions/wirings/http/serialize-typed-http-map.js +33 -46
  251. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.d.ts +1 -1
  252. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +5 -6
  253. package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.d.ts +1 -1
  254. package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.js +1 -1
  255. package/dist/src/functions/wirings/mcp/pikku-command-mcp.d.ts +1 -1
  256. package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +14 -5
  257. package/dist/src/functions/wirings/mcp/serialize-mcp-types.js +27 -36
  258. package/dist/src/functions/wirings/middleware/pikku-command-middleware.d.ts +1 -1
  259. package/dist/src/functions/wirings/middleware/pikku-command-middleware.js +11 -34
  260. package/dist/src/functions/wirings/middleware/serialize-middleware-imports.js +19 -24
  261. package/dist/src/functions/wirings/package/pikku-command-package-types.d.ts +2 -0
  262. package/dist/src/functions/wirings/package/pikku-command-package-types.js +30 -0
  263. package/dist/src/functions/wirings/package/pikku-command-package.d.ts +1 -1
  264. package/dist/src/functions/wirings/package/pikku-command-package.js +8 -8
  265. package/dist/src/functions/wirings/package/serialize-package-types.d.ts +2 -0
  266. package/dist/src/functions/wirings/package/serialize-package-types.js +10 -0
  267. package/dist/src/functions/wirings/package/serialize-package.js +2 -2
  268. package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -1
  269. package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +7 -7
  270. package/dist/src/functions/wirings/queue/pikku-command-queue-map.d.ts +1 -1
  271. package/dist/src/functions/wirings/queue/pikku-command-queue-map.js +3 -3
  272. package/dist/src/functions/wirings/queue/pikku-command-queue-service.d.ts +1 -1
  273. package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +2 -2
  274. package/dist/src/functions/wirings/queue/pikku-command-queue-types.d.ts +1 -1
  275. package/dist/src/functions/wirings/queue/pikku-command-queue-types.js +1 -1
  276. package/dist/src/functions/wirings/queue/pikku-command-queue.d.ts +1 -1
  277. package/dist/src/functions/wirings/queue/pikku-command-queue.js +1 -1
  278. package/dist/src/functions/wirings/queue/pikku-queue-map.d.ts +1 -1
  279. package/dist/src/functions/wirings/queue/pikku-queue-map.js +3 -3
  280. package/dist/src/functions/wirings/queue/pikku-queue.d.ts +1 -1
  281. package/dist/src/functions/wirings/queue/pikku-queue.js +1 -1
  282. package/dist/src/functions/wirings/queue/serialize-queue-map.d.ts +6 -3
  283. package/dist/src/functions/wirings/queue/serialize-queue-map.js +12 -40
  284. package/dist/src/functions/wirings/queue/serialize-queue-meta.d.ts +1 -1
  285. package/dist/src/functions/wirings/queue/serialize-queue-meta.js +9 -10
  286. package/dist/src/functions/wirings/queue/serialize-queue-types.js +1 -1
  287. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.d.ts +1 -1
  288. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +2 -2
  289. package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.d.ts +1 -1
  290. package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.js +1 -1
  291. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.d.ts +1 -1
  292. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +2 -2
  293. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.d.ts +2 -2
  294. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +14 -9
  295. package/dist/src/functions/wirings/rpc/pikku-command-rpc.d.ts +1 -1
  296. package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +3 -2
  297. package/dist/src/functions/wirings/rpc/serialize-public-rpc.d.ts +1 -1
  298. package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +34 -20
  299. package/dist/src/functions/wirings/rpc/serialize-remote-rpc.js +2 -2
  300. package/dist/src/functions/wirings/rpc/serialize-rpc-wrapper.js +55 -8
  301. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.d.ts +11 -3
  302. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +106 -71
  303. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.d.ts +1 -1
  304. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.js +1 -1
  305. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.d.ts +1 -1
  306. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.js +1 -1
  307. package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.d.ts +2 -2
  308. package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.js +13 -12
  309. package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.js +1 -1
  310. package/dist/src/functions/wirings/secrets/pikku-command-secrets.d.ts +1 -0
  311. package/dist/src/functions/wirings/secrets/pikku-command-secrets.js +31 -0
  312. package/dist/src/functions/wirings/secrets/serialize-secrets-types.d.ts +9 -0
  313. package/dist/src/functions/wirings/secrets/serialize-secrets-types.js +64 -0
  314. package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.d.ts +1 -0
  315. package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.js +24 -0
  316. package/dist/src/functions/wirings/triggers/pikku-command-trigger.d.ts +1 -0
  317. package/dist/src/functions/wirings/triggers/pikku-command-trigger.js +40 -0
  318. package/dist/src/functions/wirings/triggers/serialize-trigger-meta.d.ts +5 -0
  319. package/dist/src/functions/wirings/triggers/serialize-trigger-meta.js +35 -0
  320. package/dist/src/functions/wirings/triggers/serialize-trigger-types.d.ts +4 -0
  321. package/dist/src/functions/wirings/triggers/serialize-trigger-types.js +163 -0
  322. package/dist/src/functions/wirings/variables/pikku-command-variables.d.ts +1 -0
  323. package/dist/src/functions/wirings/variables/pikku-command-variables.js +31 -0
  324. package/dist/src/functions/wirings/variables/serialize-variables-types.d.ts +9 -0
  325. package/dist/src/functions/wirings/variables/serialize-variables-types.js +53 -0
  326. package/dist/src/functions/wirings/workflow/pikku-command-workflow.d.ts +1 -1
  327. package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +8 -37
  328. package/dist/src/functions/wirings/workflow/serialize-workflow-map.d.ts +5 -3
  329. package/dist/src/functions/wirings/workflow/serialize-workflow-map.js +63 -12
  330. package/dist/src/functions/wirings/workflow/serialize-workflow-meta.js +32 -33
  331. package/dist/src/functions/wirings/workflow/serialize-workflow-registration.d.ts +1 -1
  332. package/dist/src/functions/wirings/workflow/serialize-workflow-registration.js +4 -31
  333. package/dist/src/functions/wirings/workflow/serialize-workflow-types.d.ts +1 -6
  334. package/dist/src/functions/wirings/workflow/serialize-workflow-types.js +60 -256
  335. package/dist/src/functions/wirings/workflow/serialize-workflow-workers.js +5 -5
  336. package/dist/src/services/cli-logger-forwarder.service.d.ts +4 -3
  337. package/dist/src/services/cli-logger-forwarder.service.js +1 -1
  338. package/dist/src/services/cli-logger.service.d.ts +3 -2
  339. package/dist/src/services/cli-logger.service.js +1 -1
  340. package/dist/src/services.d.ts +5 -4
  341. package/dist/src/services.js +53 -7
  342. package/dist/src/utils/check-required-types.d.ts +1 -1
  343. package/dist/src/utils/command-summary.d.ts +2 -1
  344. package/dist/src/utils/command-summary.js +2 -1
  345. package/dist/src/utils/contract-versions.d.ts +6 -0
  346. package/dist/src/utils/contract-versions.js +25 -0
  347. package/dist/src/utils/file-import-path.js +20 -6
  348. package/dist/src/utils/file-writer.d.ts +6 -1
  349. package/dist/src/utils/file-writer.js +14 -1
  350. package/dist/src/utils/generate-bootstrap-file.d.ts +2 -2
  351. package/dist/src/utils/openapi/codegen.d.ts +19 -0
  352. package/dist/src/utils/openapi/codegen.js +288 -0
  353. package/dist/src/utils/openapi/naming.d.ts +30 -0
  354. package/dist/src/utils/openapi/naming.js +167 -0
  355. package/dist/src/utils/openapi/parse-openapi.d.ts +36 -0
  356. package/dist/src/utils/openapi/parse-openapi.js +196 -0
  357. package/dist/src/utils/openapi/zod-codegen.d.ts +53 -0
  358. package/dist/src/utils/openapi/zod-codegen.js +251 -0
  359. package/dist/src/utils/pikku-cli-config.d.ts +2 -2
  360. package/dist/src/utils/pikku-cli-config.js +80 -23
  361. package/dist/src/utils/pikku-files-and-methods.d.ts +1 -2
  362. package/dist/src/utils/pikku-files-and-methods.js +15 -60
  363. package/dist/src/utils/serialize-import-map.d.ts +3 -2
  364. package/dist/src/utils/serialize-import-map.js +4 -55
  365. package/dist/src/utils/serialize-meta-ts.d.ts +8 -0
  366. package/dist/src/utils/serialize-meta-ts.js +12 -0
  367. package/dist/src/utils/serialize-schemas.d.ts +3 -0
  368. package/dist/src/utils/serialize-schemas.js +38 -0
  369. package/dist/src/utils/strip-verbose-meta.d.ts +5 -5
  370. package/dist/src/utils/strip-verbose-meta.js +15 -15
  371. package/dist/tsconfig.tsbuildinfo +1 -1
  372. package/package.json +19 -10
  373. package/.pikku/channel/pikku-channel-types.gen.ts +0 -148
  374. package/.pikku/channel/pikku-channels-map.gen.d.ts +0 -47
  375. package/.pikku/channel/pikku-channels-meta.gen.json +0 -1
  376. package/.pikku/channel/pikku-channels-meta.gen.ts +0 -7
  377. package/.pikku/channel/pikku-channels.gen.ts +0 -4
  378. package/.pikku/cli/pikku-cli-channel.ts +0 -92
  379. package/.pikku/cli/pikku-cli-client.gen.ts +0 -54
  380. package/.pikku/cli/pikku-cli-types.gen.ts +0 -92
  381. package/.pikku/cli/pikku-cli-wirings-meta.gen.json +0 -147
  382. package/.pikku/cli/pikku-cli-wirings-meta.gen.ts +0 -7
  383. package/.pikku/cli/pikku-cli-wirings.gen.ts +0 -6
  384. package/.pikku/cli/pikku-cli.gen.ts +0 -41
  385. package/.pikku/forge/pikku-forge-types.gen.ts +0 -83
  386. package/.pikku/function/pikku-function-types.gen.ts +0 -572
  387. package/.pikku/function/pikku-functions-meta-verbose.gen.json +0 -1030
  388. package/.pikku/function/pikku-functions-meta.gen.json +0 -656
  389. package/.pikku/function/pikku-functions-meta.gen.ts +0 -6
  390. package/.pikku/http/pikku-http-types.gen.ts +0 -102
  391. package/.pikku/http/pikku-http-wirings-map.gen.d.ts +0 -46
  392. package/.pikku/http/pikku-http-wirings-meta.gen.json +0 -9
  393. package/.pikku/http/pikku-http-wirings-meta.gen.ts +0 -7
  394. package/.pikku/http/pikku-http-wirings.gen.ts +0 -4
  395. package/.pikku/mcp/pikku-mcp-types.gen.ts +0 -192
  396. package/.pikku/mcp/pikku-mcp-wirings-meta.gen.json +0 -5
  397. package/.pikku/mcp/pikku-mcp-wirings-meta.gen.ts +0 -9
  398. package/.pikku/mcp/pikku-mcp-wirings.gen.ts +0 -4
  399. package/.pikku/mcp/pikku-mcp.gen.json +0 -5
  400. package/.pikku/pikku-bootstrap.gen.ts +0 -17
  401. package/.pikku/pikku-services.gen.ts +0 -28
  402. package/.pikku/pikku-types.gen.ts +0 -30
  403. package/.pikku/pikku-websocket.gen.ts +0 -90
  404. package/.pikku/queue/pikku-queue-types.gen.ts +0 -27
  405. package/.pikku/queue/pikku-queue-workers-wirings-map.gen.d.ts +0 -60
  406. package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.json +0 -1
  407. package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.ts +0 -8
  408. package/.pikku/queue/pikku-queue-workers-wirings.gen.ts +0 -4
  409. package/.pikku/rpc/pikku-remote-rpc-workers.gen.ts +0 -30
  410. package/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +0 -62
  411. package/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +0 -105
  412. package/.pikku/scheduler/pikku-scheduler-types.gen.ts +0 -25
  413. package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.json +0 -1
  414. package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.ts +0 -8
  415. package/.pikku/scheduler/pikku-schedulers-wirings.gen.ts +0 -4
  416. package/.pikku/schemas/register.gen.ts +0 -71
  417. package/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +0 -1
  418. package/.pikku/schemas/schemas/PikkuCLIOutput.schema.json +0 -1
  419. package/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +0 -1
  420. package/.pikku/schemas/schemas/PikkuForgeNodesOutput.schema.json +0 -1
  421. package/.pikku/schemas/schemas/PikkuFunctionsOutput.schema.json +0 -1
  422. package/.pikku/schemas/schemas/PikkuHTTPOutput.schema.json +0 -1
  423. package/.pikku/schemas/schemas/PikkuMCPOutput.schema.json +0 -1
  424. package/.pikku/schemas/schemas/PikkuMiddlewareOutput.schema.json +0 -1
  425. package/.pikku/schemas/schemas/PikkuPackageOutput.schema.json +0 -1
  426. package/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +0 -1
  427. package/.pikku/schemas/schemas/PikkuPublicRPCOutput.schema.json +0 -1
  428. package/.pikku/schemas/schemas/PikkuQueueOutput.schema.json +0 -1
  429. package/.pikku/schemas/schemas/PikkuRPCOutput.schema.json +0 -1
  430. package/.pikku/schemas/schemas/PikkuRemoteRPCOutput.schema.json +0 -1
  431. package/.pikku/schemas/schemas/PikkuSchedulerOutput.schema.json +0 -1
  432. package/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +0 -1
  433. package/.pikku/schemas/schemas/PikkuWorkflowOutput.schema.json +0 -1
  434. package/.pikku/services/config.gen.json +0 -104
  435. package/.pikku/services/getInspectorState.gen.json +0 -10
  436. package/.pikku/services/jwt.gen.json +0 -13
  437. package/.pikku/services/logger.gen.json +0 -25
  438. package/.pikku/services/queueService.gen.json +0 -14
  439. package/.pikku/services/schedulerService.gen.json +0 -17
  440. package/.pikku/services/schema.gen.json +0 -14
  441. package/.pikku/services/secrets.gen.json +0 -13
  442. package/.pikku/services/variables.gen.json +0 -13
  443. package/.pikku/services/workflowService.gen.json +0 -31
  444. package/.pikku/workflow/pikku-workflow-map.gen.d.ts +0 -28
  445. package/.pikku/workflow/pikku-workflow-types.gen.ts +0 -349
  446. package/.pikku/workflow/pikku-workflow-wirings-meta.gen.ts +0 -9
  447. package/.pikku/workflow/pikku-workflow-wirings.gen.ts +0 -3
  448. package/CHANGELOG.md +0 -957
  449. package/bin/pikku.ts +0 -88
  450. package/build.sh +0 -75
  451. package/dist/.pikku/forge/pikku-forge-types.gen.d.ts +0 -72
  452. package/dist/.pikku/forge/pikku-forge-types.gen.js +0 -55
  453. package/dist/.pikku/schemas/schemas/PikkuForgeNodesOutput.schema.json +0 -1
  454. package/dist/src/functions/wirings/channels/pikku-command-websocket-typed.d.ts +0 -1
  455. package/dist/src/functions/wirings/fetch/index.d.ts +0 -1
  456. package/dist/src/functions/wirings/forge/pikku-command-forge-nodes.d.ts +0 -1
  457. package/dist/src/functions/wirings/forge/pikku-command-forge-nodes.js +0 -90
  458. package/dist/src/functions/wirings/forge/pikku-command-forge-types.d.ts +0 -1
  459. package/dist/src/functions/wirings/forge/pikku-command-forge-types.js +0 -26
  460. package/dist/src/functions/wirings/forge/serialize-forge-types.d.ts +0 -4
  461. package/dist/src/functions/wirings/forge/serialize-forge-types.js +0 -90
  462. package/dist/src/functions/wirings/functions/pikku-function-types.d.ts +0 -1
  463. package/dist/src/functions/wirings/functions/pikku-function-types.js +0 -18
  464. package/dist/src/functions/wirings/http/openapi-spec-generator.d.ts +0 -81
  465. package/dist/src/functions/wirings/http/openapi-spec-generator.js +0 -152
  466. package/dist/src/functions/wirings/mcp/serialize-mcp-json.d.ts +0 -5
  467. package/dist/src/functions/wirings/mcp/serialize-mcp-json.js +0 -102
  468. package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.d.ts +0 -11
  469. package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.js +0 -36
  470. package/dist/src/functions/wirings/services/pikku-command-service-metadata.d.ts +0 -1
  471. package/dist/src/functions/wirings/services/pikku-command-service-metadata.js +0 -22
  472. package/dist/src/utils/custom-types-generator.d.ts +0 -2
  473. package/dist/src/utils/custom-types-generator.js +0 -41
  474. package/dist/src/utils/schema-generator.d.ts +0 -7
  475. package/dist/src/utils/schema-generator.js +0 -238
  476. package/pikku.config.json +0 -29
  477. package/run-tests.sh +0 -53
  478. package/src/cli.wiring.ts +0 -112
  479. package/src/functions/commands/all.ts +0 -313
  480. package/src/functions/commands/bootstrap.ts +0 -35
  481. package/src/functions/commands/watch.ts +0 -61
  482. package/src/functions/runtimes/nextjs/pikku-command-nextjs.ts +0 -131
  483. package/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.ts +0 -282
  484. package/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.ts +0 -215
  485. package/src/functions/wirings/channels/pikku-channels.ts +0 -59
  486. package/src/functions/wirings/channels/pikku-command-channel-types.ts +0 -25
  487. package/src/functions/wirings/channels/pikku-command-channels-map.ts +0 -26
  488. package/src/functions/wirings/channels/pikku-command-channels.ts +0 -83
  489. package/src/functions/wirings/channels/pikku-command-websocket-typed.ts +0 -37
  490. package/src/functions/wirings/channels/serialize-channel-types.ts +0 -151
  491. package/src/functions/wirings/channels/serialize-typed-channel-map.ts +0 -173
  492. package/src/functions/wirings/channels/serialize-websocket-wrapper.ts +0 -89
  493. package/src/functions/wirings/cli/pikku-command-cli-entry.ts +0 -216
  494. package/src/functions/wirings/cli/pikku-command-cli-types.ts +0 -48
  495. package/src/functions/wirings/cli/pikku-command-cli.ts +0 -81
  496. package/src/functions/wirings/cli/serialize-channel-cli-client.ts +0 -184
  497. package/src/functions/wirings/cli/serialize-channel-cli.ts +0 -134
  498. package/src/functions/wirings/cli/serialize-cli-types.ts +0 -101
  499. package/src/functions/wirings/cli/serialize-local-cli-bootstrap.ts +0 -80
  500. package/src/functions/wirings/fetch/index.ts +0 -36
  501. package/src/functions/wirings/forge/pikku-command-forge-nodes.ts +0 -135
  502. package/src/functions/wirings/forge/pikku-command-forge-types.ts +0 -38
  503. package/src/functions/wirings/forge/serialize-forge-types.ts +0 -94
  504. package/src/functions/wirings/functions/pikku-command-function-types-split.ts +0 -61
  505. package/src/functions/wirings/functions/pikku-command-function-types.ts +0 -50
  506. package/src/functions/wirings/functions/pikku-command-functions.ts +0 -104
  507. package/src/functions/wirings/functions/pikku-command-services.ts +0 -140
  508. package/src/functions/wirings/functions/pikku-function-types.ts +0 -45
  509. package/src/functions/wirings/functions/schemas.ts +0 -56
  510. package/src/functions/wirings/functions/serialize-function-imports.ts +0 -80
  511. package/src/functions/wirings/functions/serialize-function-types.ts +0 -587
  512. package/src/functions/wirings/functions/serialize-pikku-types-hub.ts +0 -39
  513. package/src/functions/wirings/http/openapi-spec-generator.ts +0 -265
  514. package/src/functions/wirings/http/pikku-command-http-map.ts +0 -27
  515. package/src/functions/wirings/http/pikku-command-http-routes.ts +0 -80
  516. package/src/functions/wirings/http/pikku-command-http-types.ts +0 -25
  517. package/src/functions/wirings/http/pikku-command-openapi.ts +0 -64
  518. package/src/functions/wirings/http/pikku-http-routes.ts +0 -61
  519. package/src/functions/wirings/http/serialize-fetch-wrapper.ts +0 -67
  520. package/src/functions/wirings/http/serialize-http-types.ts +0 -105
  521. package/src/functions/wirings/http/serialize-typed-http-map.ts +0 -178
  522. package/src/functions/wirings/mcp/pikku-command-mcp-json.ts +0 -33
  523. package/src/functions/wirings/mcp/pikku-command-mcp-types.ts +0 -25
  524. package/src/functions/wirings/mcp/pikku-command-mcp.ts +0 -162
  525. package/src/functions/wirings/mcp/serialize-mcp-json.ts +0 -161
  526. package/src/functions/wirings/mcp/serialize-mcp-types.ts +0 -195
  527. package/src/functions/wirings/middleware/pikku-command-middleware.ts +0 -89
  528. package/src/functions/wirings/middleware/serialize-middleware-groups-meta.ts +0 -40
  529. package/src/functions/wirings/middleware/serialize-middleware-imports.ts +0 -78
  530. package/src/functions/wirings/package/pikku-command-package.ts +0 -81
  531. package/src/functions/wirings/package/serialize-package.ts +0 -69
  532. package/src/functions/wirings/permissions/pikku-command-permissions.ts +0 -49
  533. package/src/functions/wirings/permissions/serialize-permissions-imports.test.ts +0 -274
  534. package/src/functions/wirings/permissions/serialize-permissions-imports.ts +0 -78
  535. package/src/functions/wirings/queue/pikku-command-queue-map.ts +0 -26
  536. package/src/functions/wirings/queue/pikku-command-queue-service.ts +0 -37
  537. package/src/functions/wirings/queue/pikku-command-queue-types.ts +0 -25
  538. package/src/functions/wirings/queue/pikku-command-queue.ts +0 -86
  539. package/src/functions/wirings/queue/pikku-queue-map.ts +0 -26
  540. package/src/functions/wirings/queue/pikku-queue.ts +0 -66
  541. package/src/functions/wirings/queue/serialize-queue-map.ts +0 -134
  542. package/src/functions/wirings/queue/serialize-queue-meta.ts +0 -24
  543. package/src/functions/wirings/queue/serialize-queue-types.ts +0 -30
  544. package/src/functions/wirings/queue/serialize-queue-wrapper.ts +0 -35
  545. package/src/functions/wirings/rpc/pikku-command-public-rpc.ts +0 -32
  546. package/src/functions/wirings/rpc/pikku-command-remote-rpc.ts +0 -35
  547. package/src/functions/wirings/rpc/pikku-command-rpc-client.ts +0 -35
  548. package/src/functions/wirings/rpc/pikku-command-rpc-map.ts +0 -51
  549. package/src/functions/wirings/rpc/pikku-command-rpc.ts +0 -49
  550. package/src/functions/wirings/rpc/serialize-public-rpc.ts +0 -37
  551. package/src/functions/wirings/rpc/serialize-remote-rpc.ts +0 -33
  552. package/src/functions/wirings/rpc/serialize-rpc-wrapper.ts +0 -68
  553. package/src/functions/wirings/rpc/serialize-typed-rpc-map.ts +0 -194
  554. package/src/functions/wirings/scheduler/pikku-command-scheduler-types.ts +0 -25
  555. package/src/functions/wirings/scheduler/pikku-command-scheduler.ts +0 -88
  556. package/src/functions/wirings/scheduler/serialize-scheduler-meta.ts +0 -37
  557. package/src/functions/wirings/scheduler/serialize-scheduler-types.ts +0 -28
  558. package/src/functions/wirings/services/pikku-command-service-metadata.ts +0 -25
  559. package/src/functions/wirings/workflow/pikku-command-workflow.ts +0 -218
  560. package/src/functions/wirings/workflow/serialize-workflow-map.ts +0 -121
  561. package/src/functions/wirings/workflow/serialize-workflow-meta.ts +0 -73
  562. package/src/functions/wirings/workflow/serialize-workflow-registration.ts +0 -83
  563. package/src/functions/wirings/workflow/serialize-workflow-types.ts +0 -357
  564. package/src/functions/wirings/workflow/serialize-workflow-workers.ts +0 -47
  565. package/src/middleware/log-command-info-and-time.ts +0 -35
  566. package/src/services/cli-logger-forwarder.service.ts +0 -99
  567. package/src/services/cli-logger.service.ts +0 -108
  568. package/src/services.ts +0 -322
  569. package/src/utils/check-required-types.ts +0 -65
  570. package/src/utils/command-summary.ts +0 -107
  571. package/src/utils/custom-types-generator.ts +0 -55
  572. package/src/utils/file-import-path.test.ts +0 -175
  573. package/src/utils/file-import-path.ts +0 -53
  574. package/src/utils/file-imports-serializer.ts +0 -25
  575. package/src/utils/file-writer.ts +0 -72
  576. package/src/utils/generate-bootstrap-file.ts +0 -43
  577. package/src/utils/get-cli-version.ts +0 -28
  578. package/src/utils/pikku-cli-config.ts +0 -495
  579. package/src/utils/pikku-files-and-methods.ts +0 -145
  580. package/src/utils/schema-generator.ts +0 -335
  581. package/src/utils/serialize-import-map.ts +0 -102
  582. package/src/utils/strip-verbose-meta.ts +0 -254
  583. package/tsconfig.json +0 -21
  584. package/types/application-types.d.ts +0 -27
  585. package/types/config.d.ts +0 -304
  586. /package/dist/src/functions/{wirings/channels → runtimes/websocket}/serialize-websocket-wrapper.d.ts +0 -0
  587. /package/dist/src/functions/{wirings/channels → runtimes/websocket}/serialize-websocket-wrapper.js +0 -0
@@ -1,216 +0,0 @@
1
- import { pikkuSessionlessFunc } from '../../../../.pikku/pikku-types.gen.js'
2
- import { writeFileInDir } from '../../../utils/file-writer.js'
3
- import { checkRequiredTypes } from '../../../utils/check-required-types.js'
4
- import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js'
5
- import { join } from 'node:path'
6
- import { serializeLocalCLIBootstrap } from './serialize-local-cli-bootstrap.js'
7
- import { serializeChannelCLI } from './serialize-channel-cli.js'
8
- import {
9
- serializeChannelCLIClient,
10
- collectRendererNames,
11
- } from './serialize-channel-cli-client.js'
12
- import { existsSync } from 'fs'
13
- import { rm } from 'fs/promises'
14
- import { ErrorCode } from '@pikku/inspector'
15
-
16
- export const pikkuCLIEntry: any = pikkuSessionlessFunc<void, void>({
17
- func: async ({ logger, config, getInspectorState }) => {
18
- const visitState = await getInspectorState()
19
-
20
- // Check if CLI entrypoints are configured
21
- if (
22
- !config.cli?.entrypoints ||
23
- Object.keys(config.cli.entrypoints).length === 0
24
- ) {
25
- logger.info({
26
- message:
27
- 'No CLI entrypoints configured in config.cli.entrypoints, skipping CLI bootstrap generation',
28
- type: 'skip',
29
- })
30
- return
31
- }
32
-
33
- // Generate bootstrap files for each configured entrypoint
34
- for (const [programName, entrypointConfigs] of Object.entries(
35
- config.cli.entrypoints
36
- )) {
37
- const programMeta = visitState.cli.meta.programs[programName]
38
-
39
- if (!programMeta) {
40
- logger.warn(
41
- `CLI program '${programName}' not found in metadata, skipping`
42
- )
43
- continue
44
- }
45
-
46
- // Normalize to array
47
- const configs = Array.isArray(entrypointConfigs)
48
- ? entrypointConfigs
49
- : [entrypointConfigs]
50
-
51
- for (const entrypointConfig of configs) {
52
- // Normalize entrypoint config to get type
53
- const entrypointType =
54
- typeof entrypointConfig === 'string'
55
- ? 'local'
56
- : entrypointConfig.type || 'local'
57
-
58
- // Handle channel type entrypoint
59
- if (entrypointType === 'channel') {
60
- if (
61
- typeof entrypointConfig === 'string' ||
62
- entrypointConfig.type !== 'channel'
63
- ) {
64
- throw new Error('Channel entrypoint must be a channel type object')
65
- }
66
-
67
- const channelWirePath = entrypointConfig.wirePath
68
- const channelClientPath = entrypointConfig.path
69
- const channelName = entrypointConfig.name
70
- const channelRoute = entrypointConfig.route
71
-
72
- const channelWireFile = join(config.rootDir, channelWirePath)
73
-
74
- const channelCode = serializeChannelCLI(
75
- programName,
76
- programMeta,
77
- channelWireFile,
78
- visitState.functions.files,
79
- config.packageMappings,
80
- config.channelsTypesFile,
81
- config.functionTypesFile,
82
- channelName,
83
- channelRoute
84
- )
85
-
86
- await writeFileInDir(logger, channelWireFile, channelCode)
87
- logger.debug(
88
- `Serialized CLI channel for ${programName}: ${channelWireFile}`
89
- )
90
-
91
- // Generate client code if clientPath is provided
92
- if (channelClientPath) {
93
- const channelClientFile = join(config.rootDir, channelClientPath)
94
-
95
- // Validate that renderers don't depend on services (client-side renderers can't access server services)
96
- const rendererNames = collectRendererNames(programMeta)
97
- const problematicRenderers: Array<{
98
- name: string
99
- services: string[]
100
- }> = []
101
-
102
- for (const rendererName of rendererNames) {
103
- const rendererMeta = visitState.cli.meta.renderers[rendererName]
104
- if (rendererMeta?.services?.services?.length > 0) {
105
- problematicRenderers.push({
106
- name: rendererName,
107
- services: rendererMeta.services.services,
108
- })
109
- }
110
- }
111
-
112
- // If any renderers depend on services, abort client generation
113
- if (problematicRenderers.length > 0) {
114
- const details = problematicRenderers
115
- .map(
116
- (r) => ` - ${r.name} depends on: ${r.services.join(', ')}`
117
- )
118
- .join('\n')
119
-
120
- logger.critical(
121
- ErrorCode.CLI_CLIENTSIDE_RENDERER_HAS_SERVICES,
122
- `Cannot generate CLI channel client for '${programName}': renderers cannot depend on services (client-side execution)\n${details}\n\nRenderers used in CLI-over-channel must be service-free since they execute on the client.`
123
- )
124
-
125
- // Delete existing client file if it exists
126
- if (existsSync(channelClientFile)) {
127
- await rm(channelClientFile)
128
- logger.debug(
129
- `Deleted existing CLI channel client: ${channelClientFile}`
130
- )
131
- }
132
-
133
- continue
134
- }
135
-
136
- const clientCode = serializeChannelCLIClient(
137
- programName,
138
- programMeta,
139
- channelClientFile,
140
- config,
141
- config.bootstrapFile,
142
- channelRoute,
143
- visitState.cli.meta.renderers
144
- )
145
-
146
- await writeFileInDir(logger, channelClientFile, clientCode)
147
- logger.debug(
148
- `Serialized CLI channel client for ${programName}: ${channelClientFile}`
149
- )
150
- }
151
-
152
- continue
153
- }
154
-
155
- // Handle local CLI type entrypoint (default)
156
- const entrypointPath =
157
- typeof entrypointConfig === 'string'
158
- ? entrypointConfig
159
- : entrypointConfig.type === 'local'
160
- ? entrypointConfig.path
161
- : undefined
162
-
163
- if (!entrypointPath) {
164
- throw new Error(
165
- `CLI entrypoint must have a path: ${JSON.stringify(entrypointConfig)}`
166
- )
167
- }
168
-
169
- const bootstrapFile = join(config.rootDir, entrypointPath)
170
-
171
- // Get service factories for local mode
172
- // Check for required types
173
- checkRequiredTypes(visitState.filesAndMethodsErrors, {
174
- config: true,
175
- singletonServicesFactory: true,
176
- wireServicesFactory: true,
177
- })
178
-
179
- const {
180
- pikkuConfigFactory,
181
- singletonServicesFactory,
182
- wireServicesFactory,
183
- } = visitState.filesAndMethods
184
-
185
- if (
186
- !pikkuConfigFactory ||
187
- !singletonServicesFactory ||
188
- !wireServicesFactory
189
- ) {
190
- throw new Error('Required types not found')
191
- }
192
-
193
- const bootstrapCode = serializeLocalCLIBootstrap(
194
- programName,
195
- programMeta,
196
- bootstrapFile,
197
- config,
198
- pikkuConfigFactory,
199
- singletonServicesFactory,
200
- wireServicesFactory
201
- )
202
-
203
- await writeFileInDir(logger, bootstrapFile, bootstrapCode)
204
- logger.debug(
205
- `Serialized CLI bootstrap for ${programName}: ${bootstrapFile}`
206
- )
207
- }
208
- }
209
- },
210
- middleware: [
211
- logCommandInfoAndTime({
212
- commandStart: 'Serializing CLI',
213
- commandEnd: 'Serialized CLI',
214
- }),
215
- ],
216
- })
@@ -1,48 +0,0 @@
1
- import { pikkuSessionlessFunc } from '../../../../.pikku/pikku-types.gen.js'
2
- import { writeFileInDir } from '../../../utils/file-writer.js'
3
- import { getFileImportRelativePath } from '../../../utils/file-import-path.js'
4
- import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js'
5
- import { serializeCLITypes } from './serialize-cli-types.js'
6
- import { checkRequiredTypes } from '../../../utils/check-required-types.js'
7
-
8
- export const pikkuCLITypes: any = pikkuSessionlessFunc<void, void>({
9
- func: async ({ logger, config, getInspectorState }) => {
10
- const { cliTypesFile, functionTypesFile, packageMappings } = config
11
- const visitState = await getInspectorState()
12
-
13
- const functionTypesImportPath = getFileImportRelativePath(
14
- cliTypesFile,
15
- functionTypesFile,
16
- packageMappings
17
- )
18
-
19
- // Check for required types
20
- checkRequiredTypes(visitState.filesAndMethodsErrors, {
21
- userSessionType: true,
22
- wireServiceType: true,
23
- singletonServicesType: true,
24
- })
25
-
26
- const { userSessionType, singletonServicesType } =
27
- visitState.filesAndMethods
28
-
29
- if (!userSessionType || !singletonServicesType) {
30
- throw new Error('Required types not found')
31
- }
32
-
33
- const content = serializeCLITypes(
34
- functionTypesImportPath,
35
- `import type { ${userSessionType.type} } from '${getFileImportRelativePath(cliTypesFile, userSessionType.typePath, packageMappings)}'`,
36
- userSessionType.type,
37
- `import type { ${singletonServicesType.type} } from '${getFileImportRelativePath(cliTypesFile, singletonServicesType.typePath, packageMappings)}'`,
38
- singletonServicesType.type
39
- )
40
- await writeFileInDir(logger, cliTypesFile, content)
41
- },
42
- middleware: [
43
- logCommandInfoAndTime({
44
- commandStart: 'Creating CLI types',
45
- commandEnd: 'Created CLI types',
46
- }),
47
- ],
48
- })
@@ -1,81 +0,0 @@
1
- import { pikkuSessionlessFunc } from '../../../../.pikku/pikku-types.gen.js'
2
- import { serializeFileImports } from '../../../utils/file-imports-serializer.js'
3
- import { writeFileInDir } from '../../../utils/file-writer.js'
4
- import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js'
5
- import { getFileImportRelativePath } from '../../../utils/file-import-path.js'
6
- import {
7
- stripVerboseFields,
8
- hasVerboseFields,
9
- } from '../../../utils/strip-verbose-meta.js'
10
-
11
- export const pikkuCLI: any = pikkuSessionlessFunc<void, boolean | undefined>({
12
- func: async ({ logger, config, getInspectorState }) => {
13
- const visitState = await getInspectorState()
14
- const {
15
- cliWiringsFile,
16
- cliWiringMetaFile,
17
- cliWiringMetaJsonFile,
18
- packageMappings,
19
- schema,
20
- } = config
21
- const { cli } = visitState
22
-
23
- // Generate CLI wirings file
24
- await writeFileInDir(
25
- logger,
26
- cliWiringsFile,
27
- serializeFileImports(
28
- 'wireCLI',
29
- cliWiringsFile,
30
- cli.files,
31
- packageMappings
32
- )
33
- )
34
-
35
- // Write minimal JSON (runtime-only fields)
36
- const minimalMeta = stripVerboseFields(cli.meta)
37
- await writeFileInDir(
38
- logger,
39
- cliWiringMetaJsonFile,
40
- JSON.stringify(minimalMeta, null, 2)
41
- )
42
-
43
- // Write verbose JSON only if it has additional fields
44
- if (hasVerboseFields(cli.meta)) {
45
- const verbosePath = cliWiringMetaJsonFile.replace(
46
- /\.gen\.json$/,
47
- '-verbose.gen.json'
48
- )
49
- await writeFileInDir(
50
- logger,
51
- verbosePath,
52
- JSON.stringify(cli.meta, null, 2)
53
- )
54
- }
55
-
56
- const jsonImportPath = getFileImportRelativePath(
57
- cliWiringMetaFile,
58
- cliWiringMetaJsonFile,
59
- packageMappings
60
- )
61
-
62
- const supportsImportAttributes = schema?.supportsImportAttributes ?? false
63
- const importStatement = supportsImportAttributes
64
- ? `import metaData from '${jsonImportPath}' with { type: 'json' }`
65
- : `import metaData from '${jsonImportPath}'`
66
-
67
- await writeFileInDir(
68
- logger,
69
- cliWiringMetaFile,
70
- `import { pikkuState } from '@pikku/core'\nimport { CLIMeta } from '@pikku/core/cli'\n${importStatement}\npikkuState(null, 'cli', 'meta', metaData as CLIMeta)`
71
- )
72
-
73
- return true
74
- },
75
- middleware: [
76
- logCommandInfoAndTime({
77
- commandStart: 'Finding CLI commands',
78
- commandEnd: 'Found CLI commands',
79
- }),
80
- ],
81
- })
@@ -1,184 +0,0 @@
1
- import { CLIProgramMeta, CLICommandMeta } from '@pikku/core/cli'
2
- import { getFileImportRelativePath } from '../../../utils/file-import-path.js'
3
- import { Config } from '../../../../types/application-types.js'
4
-
5
- /**
6
- * Collect all unique renderer names from CLI metadata (populated by inspector)
7
- */
8
- export function collectRendererNames(programMeta: CLIProgramMeta): Set<string> {
9
- const rendererNames = new Set<string>()
10
-
11
- // Add program-level default renderer
12
- if (programMeta.defaultRenderName) {
13
- rendererNames.add(programMeta.defaultRenderName)
14
- }
15
-
16
- // Recursively collect renderer names from commands
17
- function collectFromCommand(command: CLICommandMeta): void {
18
- if (command.renderName) {
19
- rendererNames.add(command.renderName)
20
- }
21
-
22
- // Recursively process subcommands
23
- if (command.subcommands) {
24
- for (const subCommand of Object.values(command.subcommands)) {
25
- collectFromCommand(subCommand)
26
- }
27
- }
28
- }
29
-
30
- // Process all commands
31
- for (const command of Object.values(programMeta.commands)) {
32
- collectFromCommand(command)
33
- }
34
-
35
- return rendererNames
36
- }
37
-
38
- /**
39
- * Build a renderers map for CLI commands
40
- */
41
- function buildRenderersMap(programMeta: CLIProgramMeta): string {
42
- const entries: string[] = []
43
-
44
- // Build map entries for each command that has a renderer
45
- function addCommandRenderer(command: CLICommandMeta, path: string[]): void {
46
- const commandId = path.join('.')
47
- if (command.renderName) {
48
- entries.push(` '${commandId}': ${command.renderName}`)
49
- }
50
-
51
- // Recursively process subcommands
52
- if (command.subcommands) {
53
- for (const [subName, subCommand] of Object.entries(command.subcommands)) {
54
- addCommandRenderer(subCommand, [...path, subName])
55
- }
56
- }
57
- }
58
-
59
- // Process all commands
60
- for (const [commandName, command] of Object.entries(programMeta.commands)) {
61
- addCommandRenderer(command, [commandName])
62
- }
63
-
64
- if (entries.length === 0) {
65
- return '{}'
66
- }
67
-
68
- return `{\n${entries.join(',\n')}\n }`
69
- }
70
-
71
- /**
72
- * Serializes a CLI-over-Channel client bootstrap file
73
- * Similar to local CLI bootstrap but uses WebSocket connection
74
- */
75
- export function serializeChannelCLIClient(
76
- programName: string,
77
- programMeta: CLIProgramMeta,
78
- clientFile: string,
79
- config: Config,
80
- cliBootstrapPath: string,
81
- channelRoute?: string,
82
- renderersMeta?: Record<string, any>
83
- ): string {
84
- const capitalizedName =
85
- programName.charAt(0).toUpperCase() + programName.slice(1).replace(/-/g, '')
86
- const finalChannelRoute = channelRoute || `/cli/${programName}`
87
-
88
- // Get relative import path to CLI bootstrap (for metadata)
89
- const bootstrapImportPath = getFileImportRelativePath(
90
- clientFile,
91
- cliBootstrapPath,
92
- config.packageMappings
93
- )
94
-
95
- // Collect all unique renderer names from CLI metadata (populated by inspector)
96
- const rendererNames = collectRendererNames(programMeta)
97
-
98
- // Generate renderer imports from their source files
99
- let rendererImports = ''
100
- if (rendererNames.size > 0 && renderersMeta) {
101
- const importsByFile = new Map<string, string[]>()
102
-
103
- for (const rendererName of rendererNames) {
104
- const meta = renderersMeta[rendererName]
105
- if (meta?.exportedName && meta?.filePath) {
106
- const relativePath = getFileImportRelativePath(
107
- clientFile,
108
- meta.filePath,
109
- config.packageMappings
110
- )
111
- if (!importsByFile.has(relativePath)) {
112
- importsByFile.set(relativePath, [])
113
- }
114
- importsByFile.get(relativePath)!.push(meta.exportedName)
115
- }
116
- }
117
-
118
- // Generate import statements
119
- for (const [path, names] of importsByFile) {
120
- rendererImports += `import { ${names.join(', ')} } from '${path}'\n`
121
- }
122
- }
123
-
124
- // Build renderers map
125
- const renderersMap = buildRenderersMap(programMeta)
126
-
127
- // Determine default renderer
128
- const defaultRendererCode = programMeta.defaultRenderName
129
- ? `,\n defaultRenderer: ${programMeta.defaultRenderName}`
130
- : ''
131
-
132
- return `
133
- import { executeCLIViaChannel } from '@pikku/core/cli/channel'
134
- import { CorePikkuWebsocket } from '@pikku/websocket'
135
- import '${bootstrapImportPath}'
136
- ${rendererImports}
137
- /**
138
- * ${capitalizedName} CLI Client (via WebSocket Channel)
139
- * Executes CLI commands over a WebSocket connection
140
- */
141
- export async function ${capitalizedName}CLIClient(
142
- ws: WebSocket,
143
- args?: string[]
144
- ): Promise<void> {
145
- // Create Pikku WebSocket wrapper
146
- const pikkuWS = new CorePikkuWebsocket(ws)
147
-
148
- // Register renderers for CLI commands
149
- const renderers = ${renderersMap}
150
-
151
- await executeCLIViaChannel({
152
- programName: '${programName}',
153
- pikkuWS,
154
- args,
155
- renderers${defaultRendererCode},
156
- })
157
- }
158
-
159
- // Export as default for easy importing
160
- export default ${capitalizedName}CLIClient
161
-
162
- // For direct execution (if this file is run directly)
163
- if (import.meta.url === \`file://\${process.argv[1]}\`) {
164
- const url = process.env.PIKKU_WS_URL || 'ws://localhost:4002${finalChannelRoute}'
165
-
166
- // Create WebSocket instance
167
- let WebSocketImpl: any
168
- if (typeof WebSocket !== 'undefined') {
169
- WebSocketImpl = WebSocket
170
- } else {
171
- // Node.js environment - dynamically import 'ws'
172
- const wsModule = await import('ws')
173
- WebSocketImpl = wsModule.default
174
- }
175
-
176
- const ws = new WebSocketImpl(url) as WebSocket
177
- ${capitalizedName}CLIClient(ws, process.argv.slice(2)).catch(error => {
178
- console.error('Fatal channel CLI error:', error)
179
- // TODO: We get an error code even when it exists cleanly, investigate
180
- // process.exit(1)
181
- })
182
- }
183
- `
184
- }
@@ -1,134 +0,0 @@
1
- import { CLIProgramMeta } from '@pikku/core/cli'
2
- import { getFileImportRelativePath } from '../../../utils/file-import-path.js'
3
-
4
- /**
5
- * Serializes a wireChannel call from CLI metadata
6
- * This creates a WebSocket backend for all CLI commands
7
- */
8
- export function serializeChannelCLI(
9
- programName: string,
10
- programMeta: CLIProgramMeta,
11
- channelFile: string,
12
- functionFiles: Map<string, { path: string; exportedName: string }>,
13
- packageMappings: Record<string, string>,
14
- channelTypesFile: string,
15
- functionTypesFile: string,
16
- channelName?: string,
17
- channelRoute?: string
18
- ): string {
19
- const finalChannelName = channelName || `${programName}-cli`
20
- const finalChannelRoute = channelRoute || `/cli/${programName}`
21
- // Flatten all commands into a single routing map
22
- const commandMap: Record<
23
- string,
24
- { pikkuFuncName: string; importPath?: string }
25
- > = {}
26
-
27
- const collectCommands = (
28
- commands: Record<string, any>,
29
- path: string[] = []
30
- ) => {
31
- for (const [name, cmd] of Object.entries(commands)) {
32
- const fullPath = [...path, name]
33
- const commandKey = fullPath.join('.')
34
-
35
- if (cmd.pikkuFuncName) {
36
- commandMap[commandKey] = {
37
- pikkuFuncName: cmd.pikkuFuncName,
38
- }
39
- }
40
-
41
- // Recursively process subcommands
42
- if (cmd.subcommands) {
43
- collectCommands(cmd.subcommands, fullPath)
44
- }
45
- }
46
- }
47
-
48
- collectCommands(programMeta.commands)
49
-
50
- // Generate imports from function file locations
51
- const funcNames = [
52
- ...new Set(Object.values(commandMap).map((v) => v.pikkuFuncName)),
53
- ]
54
- const imports = funcNames
55
- .map((pikkuFuncName) => {
56
- const fileInfo = functionFiles.get(pikkuFuncName)
57
- if (!fileInfo) {
58
- throw new Error(`Function not found in files map: ${pikkuFuncName}`)
59
- }
60
-
61
- const importPath = getFileImportRelativePath(
62
- channelFile,
63
- fileInfo.path,
64
- packageMappings
65
- )
66
- return `import { ${fileInfo.exportedName} } from '${importPath}'`
67
- })
68
- .join('\n')
69
-
70
- // Get relative path to channel types file
71
- const channelTypesPath = getFileImportRelativePath(
72
- channelFile,
73
- channelTypesFile,
74
- packageMappings
75
- )
76
-
77
- // Get relative path to function types file
78
- const functionTypesPath = getFileImportRelativePath(
79
- channelFile,
80
- functionTypesFile,
81
- packageMappings
82
- )
83
-
84
- return `/**
85
- * WebSocket channel backend for '${programName}' CLI commands
86
- */
87
- import { wireChannel } from '${channelTypesPath}'
88
- import { pikkuMiddleware } from '${functionTypesPath}'
89
- ${imports}
90
-
91
- // Middleware to close the channel after CLI command completes
92
- const cliCloseOnComplete = pikkuMiddleware(async (_services, { channel }, next) => {
93
- const closeChannel = () => {
94
- setTimeout(async () => {
95
- try {
96
- // This gives time for the response to be sent before closing
97
- await channel?.close()
98
- } catch (err) {
99
- // Ignore errors on close
100
- }
101
- }, 200)
102
- }
103
-
104
- try {
105
- const result = await next()
106
- closeChannel()
107
- return result
108
- } catch (error) {
109
- closeChannel()
110
- throw error
111
- }
112
- })
113
-
114
- wireChannel({
115
- name: '${finalChannelName}',
116
- route: '${finalChannelRoute}',
117
- auth: false,
118
- onMessageWiring: {
119
- command: {
120
- ${Object.entries(commandMap)
121
- .map(
122
- ([commandKey, { pikkuFuncName }]) =>
123
- ` '${commandKey}': {
124
- func: ${pikkuFuncName},
125
- middleware: [cliCloseOnComplete],
126
- }`
127
- )
128
- .join(',\n')}
129
- }
130
- },
131
- tags: ['cli', '${programName}']
132
- })
133
- `
134
- }