@pikku/cli 0.11.2 → 0.12.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 (538) 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-C19L3UJu.js +637 -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 +29 -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 +19 -0
  21. package/dist/.pikku/agent/pikku-agent-types.gen.js +4 -0
  22. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.js +6 -0
  23. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.json +3 -0
  24. package/dist/.pikku/agent/pikku-agent-wirings.gen.d.ts +4 -0
  25. package/dist/.pikku/agent/pikku-agent-wirings.gen.js +4 -0
  26. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +65 -10
  27. package/dist/.pikku/channel/pikku-channel-types.gen.js +23 -16
  28. package/dist/.pikku/channel/pikku-channels-meta.gen.js +3 -2
  29. package/dist/.pikku/channel/pikku-channels.gen.d.ts +1 -1
  30. package/dist/.pikku/channel/pikku-channels.gen.js +1 -1
  31. package/dist/.pikku/cli/pikku-cli-channel.js +18 -3
  32. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  33. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  34. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +9 -1
  35. package/dist/.pikku/cli/pikku-cli-types.gen.js +12 -2
  36. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +2 -2
  37. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +45 -12
  38. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
  39. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
  40. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -5
  41. package/dist/.pikku/cli/pikku-cli.gen.js +1 -5
  42. package/dist/.pikku/console/pikku-node-types.gen.d.ts +6 -0
  43. package/dist/.pikku/console/pikku-node-types.gen.js +1 -0
  44. package/dist/.pikku/function/pikku-function-types.gen.d.ts +180 -37
  45. package/dist/.pikku/function/pikku-function-types.gen.js +63 -53
  46. package/dist/.pikku/function/pikku-functions-meta.gen.js +2 -2
  47. package/dist/.pikku/function/pikku-functions-meta.gen.json +624 -506
  48. package/dist/.pikku/function/pikku-functions.gen.d.ts +1 -0
  49. package/dist/.pikku/function/pikku-functions.gen.js +119 -0
  50. package/dist/.pikku/http/pikku-http-types.gen.d.ts +54 -3
  51. package/dist/.pikku/http/pikku-http-types.gen.js +11 -2
  52. package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +3 -10
  53. package/dist/.pikku/http/pikku-http-wirings-meta.gen.json +9 -0
  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 +68 -29
  57. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +8 -42
  58. package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +4 -4
  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 +9 -10
  64. package/dist/.pikku/pikku-bootstrap.gen.js +17 -8
  65. package/dist/.pikku/pikku-services.gen.d.ts +7 -2
  66. package/dist/.pikku/pikku-services.gen.js +5 -0
  67. package/dist/.pikku/pikku-types.gen.d.ts +4 -1
  68. package/dist/.pikku/pikku-types.gen.js +7 -1
  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 +6 -3
  77. package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.js +6 -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 +61 -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 +33 -15
  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/PikkuConsoleFunctionsOutput.schema.json +1 -0
  92. package/dist/.pikku/schemas/schemas/PikkuNodesMetaOutput.schema.json +1 -0
  93. package/dist/.pikku/schemas/schemas/PikkuPackageOutput.schema.json +1 -0
  94. package/dist/.pikku/schemas/schemas/PikkuPublicAgentOutput.schema.json +1 -0
  95. package/dist/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
  96. package/dist/.pikku/schemas/schemas/PikkuTriggerOutput.schema.json +1 -0
  97. package/dist/.pikku/schemas/schemas/PikkuVersionsInitInput.schema.json +1 -0
  98. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +5 -0
  99. package/dist/.pikku/secrets/pikku-secret-types.gen.js +4 -0
  100. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +11 -0
  101. package/dist/.pikku/secrets/pikku-secrets.gen.js +10 -0
  102. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +113 -0
  103. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +33 -0
  104. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +5 -0
  105. package/dist/.pikku/variables/pikku-variable-types.gen.js +4 -0
  106. package/dist/.pikku/variables/pikku-variables.gen.d.ts +11 -0
  107. package/dist/.pikku/variables/pikku-variables.gen.js +10 -0
  108. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +71 -53
  109. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +23 -35
  110. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +3 -3
  111. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +2 -6
  112. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +2 -6
  113. package/dist/bin/pikku.js +20 -47
  114. package/dist/src/cli.wiring.js +29 -2
  115. package/dist/src/functions/commands/all.d.ts +1 -1
  116. package/dist/src/functions/commands/all.js +109 -168
  117. package/dist/src/functions/commands/bootstrap.d.ts +1 -1
  118. package/dist/src/functions/commands/bootstrap.js +13 -29
  119. package/dist/src/functions/commands/console.d.ts +7 -0
  120. package/dist/src/functions/commands/console.js +106 -0
  121. package/dist/src/functions/commands/pikku-command-bootstrap.d.ts +4 -0
  122. package/dist/src/functions/commands/pikku-command-bootstrap.js +67 -0
  123. package/dist/src/functions/commands/pikku-command-summary.d.ts +1 -0
  124. package/dist/src/functions/commands/pikku-command-summary.js +55 -0
  125. package/dist/src/functions/commands/versions-check.d.ts +1 -0
  126. package/dist/src/functions/commands/versions-check.js +17 -0
  127. package/dist/src/functions/commands/versions-init.d.ts +7 -0
  128. package/dist/src/functions/commands/versions-init.js +15 -0
  129. package/dist/src/functions/commands/versions-update.d.ts +1 -0
  130. package/dist/src/functions/commands/versions-update.js +20 -0
  131. package/dist/src/functions/commands/watch.d.ts +1 -1
  132. package/dist/src/functions/commands/watch.js +4 -5
  133. package/dist/src/functions/runtimes/fetch/index.d.ts +1 -0
  134. package/dist/src/functions/{wirings → runtimes}/fetch/index.js +3 -3
  135. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.d.ts +1 -1
  136. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +6 -8
  137. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.d.ts +1 -1
  138. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.js +49 -43
  139. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.js +45 -35
  140. package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.d.ts +1 -0
  141. package/dist/src/functions/{wirings/channels → runtimes/websocket}/pikku-command-websocket-typed.js +2 -2
  142. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.d.ts +1 -0
  143. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.js +19 -0
  144. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.d.ts +1 -0
  145. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.js +68 -0
  146. package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.d.ts +1 -0
  147. package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.js +23 -0
  148. package/dist/src/functions/wirings/ai-agent/serialize-agent-map.d.ts +4 -0
  149. package/dist/src/functions/wirings/ai-agent/serialize-agent-map.js +48 -0
  150. package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.d.ts +1 -0
  151. package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.js +31 -0
  152. package/dist/src/functions/wirings/ai-agent/serialize-public-agent.d.ts +1 -0
  153. package/dist/src/functions/wirings/ai-agent/serialize-public-agent.js +90 -0
  154. package/dist/src/functions/wirings/channels/pikku-channels.d.ts +1 -1
  155. package/dist/src/functions/wirings/channels/pikku-channels.js +2 -2
  156. package/dist/src/functions/wirings/channels/pikku-command-channel-types.d.ts +1 -1
  157. package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +3 -3
  158. package/dist/src/functions/wirings/channels/pikku-command-channels-map.d.ts +1 -1
  159. package/dist/src/functions/wirings/channels/pikku-command-channels-map.js +2 -2
  160. package/dist/src/functions/wirings/channels/pikku-command-channels.d.ts +1 -1
  161. package/dist/src/functions/wirings/channels/pikku-command-channels.js +19 -3
  162. package/dist/src/functions/wirings/channels/serialize-channel-types.d.ts +1 -1
  163. package/dist/src/functions/wirings/channels/serialize-channel-types.js +97 -10
  164. package/dist/src/functions/wirings/channels/serialize-typed-channel-map.d.ts +2 -1
  165. package/dist/src/functions/wirings/channels/serialize-typed-channel-map.js +9 -10
  166. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.d.ts +1 -1
  167. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +3 -7
  168. package/dist/src/functions/wirings/cli/pikku-command-cli-types.d.ts +1 -1
  169. package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +1 -1
  170. package/dist/src/functions/wirings/cli/pikku-command-cli.d.ts +1 -1
  171. package/dist/src/functions/wirings/cli/pikku-command-cli.js +11 -3
  172. package/dist/src/functions/wirings/cli/serialize-channel-cli.js +8 -8
  173. package/dist/src/functions/wirings/cli/serialize-cli-types.js +14 -1
  174. package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.d.ts +2 -2
  175. package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.js +10 -11
  176. package/dist/src/functions/wirings/console/pikku-command-console-functions.d.ts +1 -0
  177. package/dist/src/functions/wirings/console/pikku-command-console-functions.js +23 -0
  178. package/dist/src/functions/wirings/console/pikku-command-node-types.d.ts +1 -0
  179. package/dist/src/functions/wirings/console/pikku-command-node-types.js +21 -0
  180. package/dist/src/functions/wirings/console/pikku-command-nodes-meta.d.ts +1 -0
  181. package/dist/src/functions/wirings/console/pikku-command-nodes-meta.js +79 -0
  182. package/dist/src/functions/wirings/console/serialize-console-functions.d.ts +1 -0
  183. package/dist/src/functions/wirings/console/serialize-console-functions.js +229 -0
  184. package/dist/src/functions/wirings/console/serialize-node-types.d.ts +1 -0
  185. package/dist/src/functions/wirings/console/serialize-node-types.js +11 -0
  186. package/dist/src/functions/wirings/functions/pikku-command-external-types.d.ts +1 -0
  187. package/dist/src/functions/wirings/functions/pikku-command-external-types.js +33 -0
  188. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.d.ts +1 -1
  189. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +2 -2
  190. package/dist/src/functions/wirings/functions/pikku-command-function-types.d.ts +1 -1
  191. package/dist/src/functions/wirings/functions/pikku-command-function-types.js +8 -3
  192. package/dist/src/functions/wirings/functions/pikku-command-functions.d.ts +1 -1
  193. package/dist/src/functions/wirings/functions/pikku-command-functions.js +34 -19
  194. package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
  195. package/dist/src/functions/wirings/functions/pikku-command-services.js +2 -2
  196. package/dist/src/functions/wirings/functions/schemas.d.ts +1 -4
  197. package/dist/src/functions/wirings/functions/schemas.js +8 -9
  198. package/dist/src/functions/wirings/functions/serialize-external-types.d.ts +1 -0
  199. package/dist/src/functions/wirings/functions/serialize-external-types.js +77 -0
  200. package/dist/src/functions/wirings/functions/serialize-function-imports.d.ts +4 -3
  201. package/dist/src/functions/wirings/functions/serialize-function-imports.js +16 -19
  202. package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +1 -1
  203. package/dist/src/functions/wirings/functions/serialize-function-types.js +256 -42
  204. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.d.ts +1 -1
  205. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +22 -21
  206. package/dist/src/functions/wirings/http/pikku-command-http-map.d.ts +1 -1
  207. package/dist/src/functions/wirings/http/pikku-command-http-map.js +4 -4
  208. package/dist/src/functions/wirings/http/pikku-command-http-routes.d.ts +1 -1
  209. package/dist/src/functions/wirings/http/pikku-command-http-routes.js +19 -3
  210. package/dist/src/functions/wirings/http/pikku-command-http-types.d.ts +1 -1
  211. package/dist/src/functions/wirings/http/pikku-command-http-types.js +1 -1
  212. package/dist/src/functions/wirings/http/pikku-command-openapi.d.ts +1 -1
  213. package/dist/src/functions/wirings/http/pikku-command-openapi.js +11 -9
  214. package/dist/src/functions/wirings/http/pikku-http-routes.d.ts +1 -1
  215. package/dist/src/functions/wirings/http/pikku-http-routes.js +2 -2
  216. package/dist/src/functions/wirings/http/serialize-http-types.js +64 -3
  217. package/dist/src/functions/wirings/http/serialize-typed-http-map.d.ts +5 -2
  218. package/dist/src/functions/wirings/http/serialize-typed-http-map.js +43 -31
  219. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.d.ts +1 -1
  220. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +5 -6
  221. package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.d.ts +1 -1
  222. package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.js +1 -1
  223. package/dist/src/functions/wirings/mcp/pikku-command-mcp.d.ts +1 -1
  224. package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +28 -10
  225. package/dist/src/functions/wirings/mcp/serialize-mcp-types.js +81 -38
  226. package/dist/src/functions/wirings/middleware/pikku-command-middleware.d.ts +1 -1
  227. package/dist/src/functions/wirings/middleware/pikku-command-middleware.js +11 -31
  228. package/dist/src/functions/wirings/middleware/serialize-middleware-imports.js +19 -24
  229. package/dist/src/functions/wirings/package/pikku-command-package-types.d.ts +2 -0
  230. package/dist/src/functions/wirings/package/pikku-command-package-types.js +30 -0
  231. package/dist/src/functions/wirings/package/pikku-command-package.d.ts +1 -0
  232. package/dist/src/functions/wirings/package/pikku-command-package.js +58 -0
  233. package/dist/src/functions/wirings/package/serialize-package-types.d.ts +2 -0
  234. package/dist/src/functions/wirings/package/serialize-package-types.js +10 -0
  235. package/dist/src/functions/wirings/package/serialize-package.d.ts +5 -0
  236. package/dist/src/functions/wirings/package/serialize-package.js +32 -0
  237. package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -1
  238. package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +10 -5
  239. package/dist/src/functions/wirings/queue/pikku-command-queue-map.d.ts +1 -1
  240. package/dist/src/functions/wirings/queue/pikku-command-queue-map.js +3 -3
  241. package/dist/src/functions/wirings/queue/pikku-command-queue-service.d.ts +1 -1
  242. package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +2 -2
  243. package/dist/src/functions/wirings/queue/pikku-command-queue-types.d.ts +1 -1
  244. package/dist/src/functions/wirings/queue/pikku-command-queue-types.js +1 -1
  245. package/dist/src/functions/wirings/queue/pikku-command-queue.d.ts +1 -1
  246. package/dist/src/functions/wirings/queue/pikku-command-queue.js +11 -3
  247. package/dist/src/functions/wirings/queue/pikku-queue-map.d.ts +1 -1
  248. package/dist/src/functions/wirings/queue/pikku-queue-map.js +3 -3
  249. package/dist/src/functions/wirings/queue/pikku-queue.d.ts +1 -1
  250. package/dist/src/functions/wirings/queue/pikku-queue.js +2 -10
  251. package/dist/src/functions/wirings/queue/serialize-queue-map.d.ts +5 -2
  252. package/dist/src/functions/wirings/queue/serialize-queue-map.js +13 -24
  253. package/dist/src/functions/wirings/queue/serialize-queue-meta.js +9 -10
  254. package/dist/src/functions/wirings/queue/serialize-queue-types.js +1 -1
  255. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.d.ts +1 -1
  256. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +2 -2
  257. package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.d.ts +1 -1
  258. package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.js +1 -1
  259. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.d.ts +1 -1
  260. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +2 -2
  261. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.d.ts +2 -2
  262. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +12 -7
  263. package/dist/src/functions/wirings/rpc/pikku-command-rpc.d.ts +1 -1
  264. package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +5 -2
  265. package/dist/src/functions/wirings/rpc/serialize-public-rpc.d.ts +1 -1
  266. package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +11 -6
  267. package/dist/src/functions/wirings/rpc/serialize-remote-rpc.js +5 -2
  268. package/dist/src/functions/wirings/rpc/serialize-rpc-wrapper.js +19 -8
  269. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.d.ts +6 -3
  270. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +130 -59
  271. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.d.ts +1 -1
  272. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.js +1 -1
  273. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.d.ts +1 -1
  274. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.js +11 -2
  275. package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.d.ts +1 -1
  276. package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.js +13 -12
  277. package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.js +1 -1
  278. package/dist/src/functions/wirings/secrets/pikku-command-secrets.d.ts +1 -0
  279. package/dist/src/functions/wirings/secrets/pikku-command-secrets.js +31 -0
  280. package/dist/src/functions/wirings/secrets/serialize-secrets-types.d.ts +9 -0
  281. package/dist/src/functions/wirings/secrets/serialize-secrets-types.js +64 -0
  282. package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.d.ts +1 -0
  283. package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.js +24 -0
  284. package/dist/src/functions/wirings/triggers/pikku-command-trigger.d.ts +1 -0
  285. package/dist/src/functions/wirings/triggers/pikku-command-trigger.js +40 -0
  286. package/dist/src/functions/wirings/triggers/serialize-trigger-meta.d.ts +5 -0
  287. package/dist/src/functions/wirings/triggers/serialize-trigger-meta.js +35 -0
  288. package/dist/src/functions/wirings/triggers/serialize-trigger-types.d.ts +4 -0
  289. package/dist/src/functions/wirings/triggers/serialize-trigger-types.js +163 -0
  290. package/dist/src/functions/wirings/variables/pikku-command-variables.d.ts +1 -0
  291. package/dist/src/functions/wirings/variables/pikku-command-variables.js +31 -0
  292. package/dist/src/functions/wirings/variables/serialize-variables-types.d.ts +9 -0
  293. package/dist/src/functions/wirings/variables/serialize-variables-types.js +53 -0
  294. package/dist/src/functions/wirings/workflow/pikku-command-workflow.d.ts +1 -1
  295. package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +29 -20
  296. package/dist/src/functions/wirings/workflow/serialize-workflow-map.d.ts +7 -2
  297. package/dist/src/functions/wirings/workflow/serialize-workflow-map.js +87 -38
  298. package/dist/src/functions/wirings/workflow/serialize-workflow-meta.d.ts +1 -3
  299. package/dist/src/functions/wirings/workflow/serialize-workflow-meta.js +42 -18
  300. package/dist/src/functions/wirings/workflow/serialize-workflow-registration.d.ts +7 -0
  301. package/dist/src/functions/wirings/workflow/serialize-workflow-registration.js +26 -0
  302. package/dist/src/functions/wirings/workflow/serialize-workflow-types.d.ts +1 -4
  303. package/dist/src/functions/wirings/workflow/serialize-workflow-types.js +121 -63
  304. package/dist/src/functions/wirings/workflow/serialize-workflow-workers.d.ts +1 -1
  305. package/dist/src/functions/wirings/workflow/serialize-workflow-workers.js +15 -28
  306. package/dist/src/services/cli-logger-forwarder.service.d.ts +1 -1
  307. package/dist/src/services/cli-logger-forwarder.service.js +1 -1
  308. package/dist/src/services/cli-logger.service.d.ts +1 -1
  309. package/dist/src/services/cli-logger.service.js +1 -1
  310. package/dist/src/services.d.ts +1 -1
  311. package/dist/src/services.js +56 -6
  312. package/dist/src/utils/command-summary.d.ts +3 -0
  313. package/dist/src/utils/command-summary.js +3 -0
  314. package/dist/src/utils/contract-versions.d.ts +6 -0
  315. package/dist/src/utils/contract-versions.js +25 -0
  316. package/dist/src/utils/file-import-path.js +20 -6
  317. package/dist/src/utils/generate-bootstrap-file.js +1 -1
  318. package/dist/src/utils/pikku-cli-config.js +104 -13
  319. package/dist/src/utils/pikku-files-and-methods.d.ts +0 -1
  320. package/dist/src/utils/pikku-files-and-methods.js +15 -60
  321. package/dist/src/utils/serialize-import-map.d.ts +2 -1
  322. package/dist/src/utils/serialize-import-map.js +3 -54
  323. package/dist/src/utils/serialize-meta-ts.d.ts +8 -0
  324. package/dist/src/utils/serialize-meta-ts.js +12 -0
  325. package/dist/src/utils/serialize-schemas.d.ts +3 -0
  326. package/dist/src/utils/serialize-schemas.js +38 -0
  327. package/dist/src/utils/strip-verbose-meta.d.ts +43 -0
  328. package/dist/src/utils/strip-verbose-meta.js +210 -0
  329. package/dist/tsconfig.tsbuildinfo +1 -1
  330. package/package.json +20 -8
  331. package/.pikku/channel/pikku-channel-types.gen.ts +0 -91
  332. package/.pikku/channel/pikku-channels-map.gen.d.ts +0 -47
  333. package/.pikku/channel/pikku-channels-meta.gen.ts +0 -5
  334. package/.pikku/channel/pikku-channels.gen.ts +0 -4
  335. package/.pikku/cli/pikku-cli-channel.ts +0 -92
  336. package/.pikku/cli/pikku-cli-client.gen.ts +0 -54
  337. package/.pikku/cli/pikku-cli-types.gen.ts +0 -92
  338. package/.pikku/cli/pikku-cli-wirings-meta.gen.json +0 -146
  339. package/.pikku/cli/pikku-cli-wirings-meta.gen.ts +0 -7
  340. package/.pikku/cli/pikku-cli-wirings.gen.ts +0 -6
  341. package/.pikku/cli/pikku-cli.gen.ts +0 -41
  342. package/.pikku/function/pikku-function-types.gen.ts +0 -426
  343. package/.pikku/function/pikku-functions-meta.gen.json +0 -988
  344. package/.pikku/function/pikku-functions-meta.gen.ts +0 -6
  345. package/.pikku/function/pikku-functions-meta.min.gen.json +0 -212
  346. package/.pikku/function/pikku-functions-meta.min.gen.ts +0 -6
  347. package/.pikku/http/pikku-http-types.gen.ts +0 -86
  348. package/.pikku/http/pikku-http-wirings-map.gen.d.ts +0 -46
  349. package/.pikku/http/pikku-http-wirings-meta.gen.ts +0 -13
  350. package/.pikku/http/pikku-http-wirings.gen.ts +0 -4
  351. package/.pikku/mcp/pikku-mcp-types.gen.ts +0 -140
  352. package/.pikku/mcp/pikku-mcp-wirings-meta.gen.json +0 -5
  353. package/.pikku/mcp/pikku-mcp-wirings-meta.gen.ts +0 -9
  354. package/.pikku/mcp/pikku-mcp-wirings.gen.ts +0 -4
  355. package/.pikku/mcp/pikku-mcp.gen.json +0 -5
  356. package/.pikku/pikku-bootstrap.gen.ts +0 -19
  357. package/.pikku/pikku-services.gen.ts +0 -27
  358. package/.pikku/pikku-types.gen.ts +0 -27
  359. package/.pikku/pikku-websocket.gen.ts +0 -90
  360. package/.pikku/queue/pikku-queue-types.gen.ts +0 -27
  361. package/.pikku/queue/pikku-queue-workers-wirings-map.gen.d.ts +0 -60
  362. package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.json +0 -1
  363. package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.ts +0 -8
  364. package/.pikku/queue/pikku-queue-workers-wirings.gen.ts +0 -4
  365. package/.pikku/rpc/pikku-remote-rpc-workers.gen.ts +0 -27
  366. package/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +0 -57
  367. package/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +0 -99
  368. package/.pikku/scheduler/pikku-scheduler-types.gen.ts +0 -25
  369. package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.json +0 -1
  370. package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.ts +0 -8
  371. package/.pikku/scheduler/pikku-schedulers-wirings.gen.ts +0 -4
  372. package/.pikku/schemas/register.gen.ts +0 -63
  373. package/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +0 -1
  374. package/.pikku/schemas/schemas/PikkuCLIOutput.schema.json +0 -1
  375. package/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +0 -1
  376. package/.pikku/schemas/schemas/PikkuFunctionsOutput.schema.json +0 -1
  377. package/.pikku/schemas/schemas/PikkuHTTPOutput.schema.json +0 -1
  378. package/.pikku/schemas/schemas/PikkuMCPOutput.schema.json +0 -1
  379. package/.pikku/schemas/schemas/PikkuMiddlewareOutput.schema.json +0 -1
  380. package/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +0 -1
  381. package/.pikku/schemas/schemas/PikkuPublicRPCOutput.schema.json +0 -1
  382. package/.pikku/schemas/schemas/PikkuQueueOutput.schema.json +0 -1
  383. package/.pikku/schemas/schemas/PikkuRPCOutput.schema.json +0 -1
  384. package/.pikku/schemas/schemas/PikkuRemoteRPCOutput.schema.json +0 -1
  385. package/.pikku/schemas/schemas/PikkuSchedulerOutput.schema.json +0 -1
  386. package/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +0 -1
  387. package/.pikku/schemas/schemas/PikkuWorkflowOutput.schema.json +0 -1
  388. package/.pikku/services/config.gen.json +0 -99
  389. package/.pikku/services/getInspectorState.gen.json +0 -10
  390. package/.pikku/services/jwt.gen.json +0 -13
  391. package/.pikku/services/logger.gen.json +0 -25
  392. package/.pikku/services/queueService.gen.json +0 -14
  393. package/.pikku/services/schedulerService.gen.json +0 -17
  394. package/.pikku/services/schema.gen.json +0 -14
  395. package/.pikku/services/variables.gen.json +0 -13
  396. package/.pikku/services/workflowService.gen.json +0 -31
  397. package/.pikku/workflow/pikku-workflow-map.gen.d.ts +0 -62
  398. package/.pikku/workflow/pikku-workflow-types.gen.ts +0 -97
  399. package/.pikku/workflow/pikku-workflow-wirings-meta.gen.json +0 -1
  400. package/.pikku/workflow/pikku-workflow-wirings-meta.gen.ts +0 -8
  401. package/.pikku/workflow/pikku-workflow-wirings.gen.ts +0 -8
  402. package/CHANGELOG.md +0 -935
  403. package/bin/pikku.ts +0 -88
  404. package/build.sh +0 -75
  405. package/dist/.pikku/function/pikku-functions-meta.min.gen.js +0 -6
  406. package/dist/.pikku/function/pikku-functions-meta.min.gen.json +0 -212
  407. package/dist/src/functions/wirings/channels/pikku-command-websocket-typed.d.ts +0 -1
  408. package/dist/src/functions/wirings/fetch/index.d.ts +0 -1
  409. package/dist/src/functions/wirings/functions/pikku-function-types.d.ts +0 -1
  410. package/dist/src/functions/wirings/functions/pikku-function-types.js +0 -18
  411. package/dist/src/functions/wirings/http/openapi-spec-generator.d.ts +0 -81
  412. package/dist/src/functions/wirings/http/openapi-spec-generator.js +0 -152
  413. package/dist/src/functions/wirings/mcp/serialize-mcp-json.d.ts +0 -5
  414. package/dist/src/functions/wirings/mcp/serialize-mcp-json.js +0 -101
  415. package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.d.ts +0 -11
  416. package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.js +0 -36
  417. package/dist/src/functions/wirings/services/pikku-command-service-metadata.d.ts +0 -1
  418. package/dist/src/functions/wirings/services/pikku-command-service-metadata.js +0 -22
  419. package/dist/src/functions/wirings/workflow/pikku-command-workflow-map.d.ts +0 -1
  420. package/dist/src/functions/wirings/workflow/pikku-command-workflow-map.js +0 -12
  421. package/dist/src/functions/wirings/workflow/pikku-command-workflow-types.d.ts +0 -1
  422. package/dist/src/functions/wirings/workflow/pikku-command-workflow-types.js +0 -13
  423. package/dist/src/functions/wirings/workflow/serialize-workflow-wirings.d.ts +0 -8
  424. package/dist/src/functions/wirings/workflow/serialize-workflow-wirings.js +0 -30
  425. package/dist/src/utils/custom-types-generator.d.ts +0 -2
  426. package/dist/src/utils/custom-types-generator.js +0 -43
  427. package/dist/src/utils/schema-generator.d.ts +0 -6
  428. package/dist/src/utils/schema-generator.js +0 -118
  429. package/pikku.config.json +0 -29
  430. package/run-tests.sh +0 -53
  431. package/src/cli.wiring.ts +0 -112
  432. package/src/functions/commands/all.ts +0 -266
  433. package/src/functions/commands/bootstrap.ts +0 -43
  434. package/src/functions/commands/watch.ts +0 -61
  435. package/src/functions/runtimes/nextjs/pikku-command-nextjs.ts +0 -132
  436. package/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.ts +0 -268
  437. package/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.ts +0 -201
  438. package/src/functions/wirings/channels/pikku-channels.ts +0 -59
  439. package/src/functions/wirings/channels/pikku-command-channel-types.ts +0 -25
  440. package/src/functions/wirings/channels/pikku-command-channels-map.ts +0 -26
  441. package/src/functions/wirings/channels/pikku-command-channels.ts +0 -40
  442. package/src/functions/wirings/channels/pikku-command-websocket-typed.ts +0 -37
  443. package/src/functions/wirings/channels/serialize-channel-types.ts +0 -94
  444. package/src/functions/wirings/channels/serialize-typed-channel-map.ts +0 -172
  445. package/src/functions/wirings/channels/serialize-websocket-wrapper.ts +0 -89
  446. package/src/functions/wirings/cli/pikku-command-cli-entry.ts +0 -216
  447. package/src/functions/wirings/cli/pikku-command-cli-types.ts +0 -48
  448. package/src/functions/wirings/cli/pikku-command-cli.ts +0 -62
  449. package/src/functions/wirings/cli/serialize-channel-cli-client.ts +0 -184
  450. package/src/functions/wirings/cli/serialize-channel-cli.ts +0 -134
  451. package/src/functions/wirings/cli/serialize-cli-types.ts +0 -101
  452. package/src/functions/wirings/cli/serialize-local-cli-bootstrap.ts +0 -80
  453. package/src/functions/wirings/fetch/index.ts +0 -36
  454. package/src/functions/wirings/functions/pikku-command-function-types-split.ts +0 -60
  455. package/src/functions/wirings/functions/pikku-command-function-types.ts +0 -43
  456. package/src/functions/wirings/functions/pikku-command-functions.ts +0 -94
  457. package/src/functions/wirings/functions/pikku-command-services.ts +0 -140
  458. package/src/functions/wirings/functions/pikku-function-types.ts +0 -43
  459. package/src/functions/wirings/functions/schemas.ts +0 -46
  460. package/src/functions/wirings/functions/serialize-function-imports.ts +0 -71
  461. package/src/functions/wirings/functions/serialize-function-types.ts +0 -439
  462. package/src/functions/wirings/functions/serialize-pikku-types-hub.ts +0 -38
  463. package/src/functions/wirings/http/openapi-spec-generator.ts +0 -265
  464. package/src/functions/wirings/http/pikku-command-http-map.ts +0 -27
  465. package/src/functions/wirings/http/pikku-command-http-routes.ts +0 -36
  466. package/src/functions/wirings/http/pikku-command-http-types.ts +0 -25
  467. package/src/functions/wirings/http/pikku-command-openapi.ts +0 -63
  468. package/src/functions/wirings/http/pikku-http-routes.ts +0 -61
  469. package/src/functions/wirings/http/serialize-fetch-wrapper.ts +0 -67
  470. package/src/functions/wirings/http/serialize-http-types.ts +0 -89
  471. package/src/functions/wirings/http/serialize-typed-http-map.ts +0 -154
  472. package/src/functions/wirings/mcp/pikku-command-mcp-json.ts +0 -33
  473. package/src/functions/wirings/mcp/pikku-command-mcp-types.ts +0 -25
  474. package/src/functions/wirings/mcp/pikku-command-mcp.ts +0 -140
  475. package/src/functions/wirings/mcp/serialize-mcp-json.ts +0 -159
  476. package/src/functions/wirings/mcp/serialize-mcp-types.ts +0 -143
  477. package/src/functions/wirings/middleware/pikku-command-middleware.ts +0 -85
  478. package/src/functions/wirings/middleware/serialize-middleware-groups-meta.ts +0 -40
  479. package/src/functions/wirings/middleware/serialize-middleware-imports.ts +0 -78
  480. package/src/functions/wirings/permissions/pikku-command-permissions.ts +0 -49
  481. package/src/functions/wirings/permissions/serialize-permissions-imports.test.ts +0 -274
  482. package/src/functions/wirings/permissions/serialize-permissions-imports.ts +0 -78
  483. package/src/functions/wirings/queue/pikku-command-queue-map.ts +0 -26
  484. package/src/functions/wirings/queue/pikku-command-queue-service.ts +0 -37
  485. package/src/functions/wirings/queue/pikku-command-queue-types.ts +0 -25
  486. package/src/functions/wirings/queue/pikku-command-queue.ts +0 -66
  487. package/src/functions/wirings/queue/pikku-queue-map.ts +0 -26
  488. package/src/functions/wirings/queue/pikku-queue.ts +0 -75
  489. package/src/functions/wirings/queue/serialize-queue-map.ts +0 -119
  490. package/src/functions/wirings/queue/serialize-queue-meta.ts +0 -24
  491. package/src/functions/wirings/queue/serialize-queue-types.ts +0 -30
  492. package/src/functions/wirings/queue/serialize-queue-wrapper.ts +0 -35
  493. package/src/functions/wirings/rpc/pikku-command-public-rpc.ts +0 -32
  494. package/src/functions/wirings/rpc/pikku-command-remote-rpc.ts +0 -35
  495. package/src/functions/wirings/rpc/pikku-command-rpc-client.ts +0 -35
  496. package/src/functions/wirings/rpc/pikku-command-rpc-map.ts +0 -48
  497. package/src/functions/wirings/rpc/pikku-command-rpc.ts +0 -49
  498. package/src/functions/wirings/rpc/serialize-public-rpc.ts +0 -37
  499. package/src/functions/wirings/rpc/serialize-remote-rpc.ts +0 -30
  500. package/src/functions/wirings/rpc/serialize-rpc-wrapper.ts +0 -68
  501. package/src/functions/wirings/rpc/serialize-typed-rpc-map.ts +0 -128
  502. package/src/functions/wirings/scheduler/pikku-command-scheduler-types.ts +0 -25
  503. package/src/functions/wirings/scheduler/pikku-command-scheduler.ts +0 -67
  504. package/src/functions/wirings/scheduler/serialize-scheduler-meta.ts +0 -37
  505. package/src/functions/wirings/scheduler/serialize-scheduler-types.ts +0 -28
  506. package/src/functions/wirings/services/pikku-command-service-metadata.ts +0 -25
  507. package/src/functions/wirings/workflow/pikku-command-workflow-map.ts +0 -24
  508. package/src/functions/wirings/workflow/pikku-command-workflow-types.ts +0 -29
  509. package/src/functions/wirings/workflow/pikku-command-workflow.ts +0 -151
  510. package/src/functions/wirings/workflow/serialize-workflow-map.ts +0 -123
  511. package/src/functions/wirings/workflow/serialize-workflow-meta.ts +0 -33
  512. package/src/functions/wirings/workflow/serialize-workflow-types.ts +0 -103
  513. package/src/functions/wirings/workflow/serialize-workflow-wirings.ts +0 -47
  514. package/src/functions/wirings/workflow/serialize-workflow-workers.ts +0 -60
  515. package/src/middleware/log-command-info-and-time.ts +0 -35
  516. package/src/services/cli-logger-forwarder.service.ts +0 -99
  517. package/src/services/cli-logger.service.ts +0 -108
  518. package/src/services.ts +0 -315
  519. package/src/utils/check-required-types.ts +0 -65
  520. package/src/utils/command-summary.ts +0 -103
  521. package/src/utils/custom-types-generator.ts +0 -55
  522. package/src/utils/file-import-path.test.ts +0 -175
  523. package/src/utils/file-import-path.ts +0 -53
  524. package/src/utils/file-imports-serializer.ts +0 -25
  525. package/src/utils/file-writer.ts +0 -72
  526. package/src/utils/generate-bootstrap-file.ts +0 -43
  527. package/src/utils/get-cli-version.ts +0 -28
  528. package/src/utils/pikku-cli-config.ts +0 -462
  529. package/src/utils/pikku-files-and-methods.ts +0 -145
  530. package/src/utils/schema-generator.ts +0 -172
  531. package/src/utils/serialize-import-map.ts +0 -102
  532. package/tsconfig.json +0 -21
  533. package/types/application-types.d.ts +0 -27
  534. package/types/config.d.ts +0 -270
  535. /package/dist/.pikku/{function/pikku-functions-meta.min.gen.d.ts → agent/pikku-agent-wirings-meta.gen.d.ts} +0 -0
  536. /package/dist/.pikku/{workflow/pikku-workflow-wirings-meta.gen.json → channel/pikku-channels-meta.gen.json} +0 -0
  537. /package/dist/src/functions/{wirings/channels → runtimes/websocket}/serialize-websocket-wrapper.d.ts +0 -0
  538. /package/dist/src/functions/{wirings/channels → runtimes/websocket}/serialize-websocket-wrapper.js +0 -0
@@ -1,123 +0,0 @@
1
- import type { WorkflowsMeta } from '@pikku/core/workflow'
2
- import { serializeImportMap } from '../../../utils/serialize-import-map.js'
3
- import { TypesMap } from '@pikku/inspector'
4
- import { FunctionsMeta } from '@pikku/core'
5
- import { generateCustomTypes } from '../../../utils/custom-types-generator.js'
6
-
7
- export const serializeWorkflowMap = (
8
- relativeToPath: string,
9
- packageMappings: Record<string, string>,
10
- typesMap: TypesMap,
11
- functionsMeta: FunctionsMeta,
12
- workflowsMeta: WorkflowsMeta
13
- ) => {
14
- const requiredTypes = new Set<string>()
15
- const serializedCustomTypes = generateCustomTypes(typesMap, requiredTypes)
16
- const serializedWorkflows = generateWorkflows(
17
- workflowsMeta,
18
- functionsMeta,
19
- typesMap,
20
- requiredTypes
21
- )
22
-
23
- const serializedImportMap = serializeImportMap(
24
- relativeToPath,
25
- packageMappings,
26
- typesMap,
27
- requiredTypes
28
- )
29
-
30
- return `/**
31
- * This provides the structure needed for TypeScript to be aware of workflows and their input/output types
32
- */
33
-
34
- ${serializedImportMap}
35
- ${serializedCustomTypes}
36
-
37
- interface WorkflowHandler<I, O> {
38
- input: I;
39
- output: O;
40
- }
41
-
42
- ${serializedWorkflows}
43
-
44
- /**
45
- * Type-safe workflow client API
46
- */
47
- export type WorkflowClient<Name extends keyof WorkflowMap> = {
48
- /**
49
- * Start a new workflow run
50
- */
51
- start: (input: WorkflowMap[Name]['input']) => Promise<{ runId: string }>;
52
-
53
- /**
54
- * Get a workflow run by ID
55
- */
56
- getRun: <output extends keyof WorkflowMap[Name]>(runId: string) => Promise<WorkflowMap[Name][output]>;
57
-
58
- /**
59
- * Cancel a running workflow
60
- */
61
- cancelRun: (runId: string) => Promise<boolean>;
62
- }
63
-
64
- /**
65
- * Map of all registered workflows with type-safe client APIs
66
- */
67
- export type TypedWorkflowClients = {
68
- [Name in keyof WorkflowMap]: WorkflowClient<Name>;
69
- }
70
- `
71
- }
72
-
73
- function generateWorkflows(
74
- workflowsMeta: WorkflowsMeta,
75
- functionsMeta: FunctionsMeta,
76
- typesMap: TypesMap,
77
- requiredTypes: Set<string>
78
- ) {
79
- // Initialize an object to collect workflows
80
- const workflowsObj: Record<
81
- string,
82
- { inputType: string; outputType: string }
83
- > = {}
84
-
85
- // Iterate through workflow metadata
86
- for (const [workflowName, { pikkuFuncName }] of Object.entries(
87
- workflowsMeta
88
- )) {
89
- const functionMeta = functionsMeta[pikkuFuncName]
90
- if (!functionMeta) {
91
- throw new Error(
92
- `Function ${workflowName} not found in functionsMeta. Please check your configuration.`
93
- )
94
- }
95
-
96
- const input = functionMeta.inputs ? functionMeta.inputs[0] : undefined
97
- const output = functionMeta.outputs ? functionMeta.outputs[0] : undefined
98
-
99
- // Store the input and output types for WorkflowHandler
100
- const inputType = input ? typesMap.getTypeMeta(input).uniqueName : 'void'
101
- const outputType = output ? typesMap.getTypeMeta(output).uniqueName : 'void'
102
-
103
- requiredTypes.add(inputType)
104
- requiredTypes.add(outputType)
105
-
106
- // Add workflow entry
107
- workflowsObj[workflowName] = {
108
- inputType,
109
- outputType,
110
- }
111
- }
112
-
113
- // Build the Workflows object as a string
114
- let workflowsStr = 'export type WorkflowMap = {\n'
115
-
116
- for (const [workflowName, handler] of Object.entries(workflowsObj)) {
117
- workflowsStr += ` readonly '${workflowName}': WorkflowHandler<${handler.inputType}, ${handler.outputType}>,\n`
118
- }
119
-
120
- workflowsStr += '};\n'
121
-
122
- return workflowsStr
123
- }
@@ -1,33 +0,0 @@
1
- import { WorkflowsMeta } from '@pikku/core/workflow'
2
-
3
- export const serializeWorkflowMeta = (workflowsMeta: WorkflowsMeta) => {
4
- return workflowsMeta
5
- }
6
-
7
- export const serializeWorkflowMetaTS = (
8
- workflowsMeta: WorkflowsMeta,
9
- jsonImportPath: string,
10
- supportsImportAttributes: boolean
11
- ) => {
12
- const importStatement = supportsImportAttributes
13
- ? `import metaData from '${jsonImportPath}' with { type: 'json' }`
14
- : `import metaData from '${jsonImportPath}'`
15
-
16
- const serializedOutput: string[] = []
17
- serializedOutput.push("import { pikkuState } from '@pikku/core'")
18
- serializedOutput.push("import { WorkflowsMeta } from '@pikku/core/workflow'")
19
- serializedOutput.push(importStatement)
20
- serializedOutput.push('')
21
- serializedOutput.push(
22
- "pikkuState('workflows', 'meta', metaData as WorkflowsMeta)"
23
- )
24
- serializedOutput.push('')
25
-
26
- const workflowsMetaValues = Object.values(workflowsMeta)
27
- if (workflowsMetaValues.length > 0) {
28
- serializedOutput.push(
29
- `export type WorkflowNames = '${workflowsMetaValues.map((w) => w.workflowName).join("' | '")}'`
30
- )
31
- }
32
- return serializedOutput.join('\n')
33
- }
@@ -1,103 +0,0 @@
1
- /**
2
- * Generates type definitions for workflow wirings
3
- */
4
- export const serializeWorkflowTypes = (
5
- functionTypesImportPath: string,
6
- rpcMapImportPath: string
7
- ) => {
8
- return `/**
9
- * Workflow-specific type definitions for tree-shaking optimization
10
- */
11
-
12
- import { PikkuWorkflowWire, WorkflowStepOptions } from '@pikku/core/workflow'
13
- import type { PikkuFunctionSessionless, PikkuFunctionConfig } from '${functionTypesImportPath}'
14
- import type { RPCMap } from '${rpcMapImportPath}'
15
-
16
- /**
17
- * Typed workflow wire with RPC awareness
18
- * Provides type-safe workflow.do() for RPC steps
19
- */
20
- export interface TypedWorkflow extends PikkuWorkflowWire {
21
- /**
22
- * Execute a workflow step with RPC invocation (typed based on available RPCs)
23
- * @template K - RPC name from the RPC map
24
- */
25
- do<K extends keyof RPCMap>(
26
- stepName: string,
27
- rpcName: K,
28
- data: RPCMap[K]['input'],
29
- options?: WorkflowStepOptions
30
- ): Promise<RPCMap[K]['output']>
31
-
32
- /**
33
- * Execute a workflow step with inline function
34
- * @template T - Return type of the inline function
35
- */
36
- do<T>(
37
- stepName: string,
38
- fn: () => T | Promise<T>,
39
- options?: WorkflowStepOptions
40
- ): Promise<T>
41
- }
42
-
43
- /**
44
- * Workflow function type with typed workflow service
45
- * Includes the workflow wire object with typed RPC methods
46
- */
47
- export type PikkuFunctionWorkflow<
48
- In = unknown,
49
- Out = never
50
- > = PikkuFunctionSessionless<
51
- In,
52
- Out,
53
- 'workflow'
54
- >
55
-
56
- /**
57
- * Creates a workflow function with typed input and output.
58
- * Workflow functions have access to the workflow wire object for step execution.
59
- *
60
- * This is the permissive mode - workflows that don't conform to simple DSL will fall back
61
- * to basic extraction with a warning.
62
- *
63
- * @template In - Input type for the workflow
64
- * @template Out - Output type for the workflow
65
- * @param func - Function definition, either direct function or configuration object
66
- * @returns The normalized configuration object
67
- */
68
- export const pikkuWorkflowFunc = <In, Out = unknown>(
69
- func:
70
- | PikkuFunctionWorkflow<In, Out>
71
- | PikkuFunctionConfig<In, Out, 'workflow', PikkuFunctionWorkflow<In, Out>>
72
- ) => {
73
- return typeof func === 'function' ? { func } : func
74
- }
75
-
76
- /**
77
- * Creates a simple workflow function with typed input and output.
78
- * Simple workflows must conform to the restricted DSL for static analysis.
79
- *
80
- * This is the strict mode - workflows that don't conform to simple DSL will cause
81
- * a critical error during inspection.
82
- *
83
- * Constraints:
84
- * - Must use only workflow.do() with RPC form (no inline functions)
85
- * - Only if/else, for..of, and Promise.all(array.map()) control flow allowed
86
- * - Step names must be unique (except across mutually exclusive branches)
87
- * - All workflow calls must be awaited
88
- *
89
- * @template In - Input type for the workflow
90
- * @template Out - Output type for the workflow
91
- * @param func - Function definition, either direct function or configuration object
92
- * @returns The normalized configuration object
93
- */
94
- export const pikkuSimpleWorkflowFunc = <In, Out = unknown>(
95
- func:
96
- | PikkuFunctionWorkflow<In, Out>
97
- | PikkuFunctionConfig<In, Out, 'workflow', PikkuFunctionWorkflow<In, Out>>
98
- ) => {
99
- return typeof func === 'function' ? { func } : func
100
- }
101
-
102
- `
103
- }
@@ -1,47 +0,0 @@
1
- import { getFileImportRelativePath } from '../../../utils/file-import-path.js'
2
-
3
- /**
4
- * Generate workflow registration wirings
5
- * Imports all workflow functions and calls addWorkflow for each
6
- */
7
- export const serializeWorkflowWirings = (
8
- outputPath: string,
9
- workflowFiles: Map<string, { path: string; exportedName: string }>,
10
- packageMappings: Record<string, string> = {}
11
- ) => {
12
- const imports: string[] = []
13
- const registrations: string[] = []
14
-
15
- // Sort by pikkuFuncName for consistent output
16
- const sortedWorkflows = Array.from(workflowFiles.entries()).sort((a, b) =>
17
- a[0].localeCompare(b[0])
18
- )
19
-
20
- // Generate imports
21
- for (const [, { path, exportedName }] of sortedWorkflows) {
22
- const importPath = getFileImportRelativePath(
23
- outputPath,
24
- path,
25
- packageMappings
26
- )
27
- imports.push(`import { ${exportedName} } from '${importPath}'`)
28
- }
29
-
30
- // Generate addWorkflow calls
31
- for (const [pikkuFuncName, { exportedName }] of sortedWorkflows) {
32
- registrations.push(`addWorkflow('${pikkuFuncName}', ${exportedName})`)
33
- }
34
-
35
- // Only import addWorkflow if there are workflows to register
36
- const addWorkflowImport =
37
- sortedWorkflows.length > 0
38
- ? `import { addWorkflow } from '@pikku/core/workflow'\n\n`
39
- : ''
40
-
41
- return `/**
42
- * Auto-generated workflow registrations
43
- * Do not edit manually - regenerate with 'npx pikku'
44
- */
45
- ${addWorkflowImport}${imports.join('\n')}${imports.length > 0 ? '\n\n' : ''}${registrations.join('\n')}
46
- `
47
- }
@@ -1,60 +0,0 @@
1
- /**
2
- * Generate queue workers and RPC functions for workflow steps and orchestrator
3
- */
4
- export const serializeWorkflowWorkers = (pathToPikkuTypes: string) => {
5
- return `/**
6
- * Auto-generated workflow queue workers and RPC functions
7
- * Do not edit manually - regenerate with 'npx pikku'
8
- */
9
- import { pikkuSessionlessFunc, wireQueueWorker } from '${pathToPikkuTypes}'
10
-
11
- /**
12
- * Worker input types for generated queue workers
13
- */
14
- export type WorkflowStepInput = {
15
- runId: string
16
- stepName: string
17
- rpcName: string
18
- data: any
19
- }
20
-
21
- export const pikkuWorkflowWorker = pikkuSessionlessFunc<
22
- WorkflowStepInput,
23
- void
24
- >({
25
- func: async ({ workflowService }, { runId, stepName, rpcName, data }, { rpc }) => {
26
- await workflowService!.executeWorkflowStep(runId, stepName, rpcName, data, rpc)
27
- }
28
- })
29
-
30
- export const pikkuWorkflowOrchestrator = pikkuSessionlessFunc<
31
- { runId: string },
32
- void
33
- >({
34
- func: async ({ workflowService }, { runId }, { rpc }) => {
35
- await workflowService!.orchestrateWorkflow(runId, rpc)
36
- }
37
- })
38
-
39
- export const pikkuWorkflowSleeper = pikkuSessionlessFunc<
40
- { runId: string, stepId: string },
41
- void
42
- >({
43
- func: async ({ workflowService }, { runId, stepId }) => {
44
- await workflowService!.executeWorkflowSleep(runId, stepId)
45
- },
46
- name: 'pikkuWorkflowStepSleeper',
47
- internal: true,
48
- })
49
-
50
- wireQueueWorker({
51
- queueName: 'pikku-workflow-step-worker',
52
- func: pikkuWorkflowWorker,
53
- })
54
-
55
- wireQueueWorker({
56
- queueName: 'pikku-workflow-orchestrator',
57
- func: pikkuWorkflowOrchestrator,
58
- })
59
- `
60
- }
@@ -1,35 +0,0 @@
1
- import type { Services } from '../../types/application-types.js'
2
- import type { PikkuWire } from '@pikku/core'
3
-
4
- // Middleware type for CLI
5
- type PikkuMiddleware = (
6
- services: Services,
7
- wire: PikkuWire,
8
- next: () => Promise<void>
9
- ) => Promise<void>
10
-
11
- export interface LogCommandInfoOptions {
12
- commandStart: string
13
- commandEnd: string
14
- }
15
-
16
- /**
17
- * Middleware to log command execution timing and status
18
- * Uses debug level so it only shows with --verbose flag
19
- */
20
- export const logCommandInfoAndTime = ({
21
- commandStart,
22
- commandEnd,
23
- }: LogCommandInfoOptions): PikkuMiddleware => {
24
- return async ({ logger }, _wire, next) => {
25
- const start = Date.now()
26
- logger.debug(`• ${commandStart}...`)
27
-
28
- await next()
29
-
30
- logger.debug({
31
- type: 'success',
32
- message: `✓ ${commandEnd} in ${Date.now() - start}ms.`,
33
- })
34
- }
35
- }
@@ -1,99 +0,0 @@
1
- import { Logger, LogLevel } from '@pikku/core'
2
- import { PikkuChannel } from '@pikku/core/channel'
3
- import { ErrorCode } from '@pikku/inspector'
4
-
5
- /**
6
- * Log message structure sent through the channel
7
- */
8
- export interface ForwardedLogMessage {
9
- message: string
10
- level: 'trace' | 'debug' | 'info' | 'warn' | 'error'
11
- type?: string
12
- }
13
-
14
- /**
15
- * A logger implementation that forwards log messages to a CLI channel
16
- * instead of logging to console directly.
17
- */
18
- export class CLILoggerForwarder implements Logger {
19
- private level: LogLevel = LogLevel.info
20
- private silent: boolean = false
21
-
22
- constructor(
23
- private logger: Logger,
24
- private channel: PikkuChannel<unknown, any>
25
- ) {}
26
-
27
- setLevel(level: LogLevel): void {
28
- this.level = level
29
- }
30
-
31
- setSilent(silent: boolean): void {
32
- this.silent = silent
33
- }
34
-
35
- isSilent(): boolean {
36
- return this.silent
37
- }
38
-
39
- private log(
40
- level: ForwardedLogMessage['level'],
41
- logLevel: LogLevel,
42
- messageOrObj: string | Record<string, any> | Error,
43
- type?: string
44
- ) {
45
- if (this.level > logLevel || this.silent) return
46
-
47
- let message: string
48
-
49
- if (messageOrObj instanceof Error) {
50
- this.logger.error(messageOrObj.toString())
51
- message = messageOrObj.message
52
- } else if (typeof messageOrObj === 'object') {
53
- if (
54
- 'message' in messageOrObj &&
55
- typeof messageOrObj.message === 'string'
56
- ) {
57
- message = messageOrObj.message
58
- type = type || (messageOrObj.type as string)
59
- } else {
60
- message = JSON.stringify(messageOrObj)
61
- }
62
- } else {
63
- message = messageOrObj
64
- }
65
-
66
- this.channel.send({ message, level, type })
67
- }
68
-
69
- info(messageOrObj: string | Record<string, any>, ..._meta: any[]) {
70
- this.log('info', LogLevel.info, messageOrObj)
71
- }
72
-
73
- error(messageOrObj: string | Record<string, any> | Error, ..._meta: any[]) {
74
- this.log('error', LogLevel.error, messageOrObj)
75
- }
76
-
77
- warn(messageOrObj: string | Record<string, any>, ..._meta: any[]) {
78
- this.log('warn', LogLevel.warn, messageOrObj)
79
- }
80
-
81
- debug(message: string, ..._meta: any[]) {
82
- this.log('debug', LogLevel.debug, message)
83
- }
84
-
85
- trace(message: string, ..._meta: any[]) {
86
- this.log('trace', LogLevel.trace, message)
87
- }
88
-
89
- critical(code: ErrorCode, message: string) {
90
- const url = `https://pikku.dev/docs/pikku-cli/errors/${code.toLowerCase()}`
91
- const formattedMessage = `[${code}] ${message}\n → ${url}`
92
- this.error(formattedMessage)
93
- }
94
-
95
- hasCriticalErrors(): boolean {
96
- // The underlying logger (CLILogger) tracks critical errors
97
- return (this.logger as any).hasCriticalErrors?.() ?? false
98
- }
99
- }
@@ -1,108 +0,0 @@
1
- import chalk from 'chalk'
2
- import { Logger, LogLevel } from '@pikku/core'
3
- import { ErrorCode } from '@pikku/inspector'
4
-
5
- const logo = `
6
- ______ _ _ _
7
- (_____ (_) | | |
8
- _____) )| | _| | _ _ _
9
- | ____/ | |_/ ) |_/ ) | | |
10
- | | | | _ (| _ (| _ (| |_| |
11
- |_| |_|_| _)_| _)____/
12
- `
13
-
14
- const BASE_ERROR_URL = 'https://pikku.dev/docs/pikku-cli/errors'
15
-
16
- export class CLILogger implements Logger {
17
- private silent: boolean
18
- private level: LogLevel = LogLevel.warn // default to warn level
19
- private criticalErrors: string[] = []
20
-
21
- constructor({
22
- logLogo,
23
- silent = false,
24
- }: {
25
- logLogo: boolean
26
- silent?: boolean
27
- }) {
28
- this.silent = silent
29
- if (logLogo && !silent) {
30
- this.logLogo()
31
- }
32
- }
33
-
34
- setLevel(level: LogLevel): void {
35
- this.level = level
36
- }
37
-
38
- setSilent(silent: boolean): void {
39
- this.silent = silent
40
- }
41
-
42
- isSilent(): boolean {
43
- return this.silent
44
- }
45
-
46
- info(message: string | { message: string; type?: string }) {
47
- if (this.level > LogLevel.info || this.silent) return
48
-
49
- let c = chalk.blue
50
- if (typeof message === 'object') {
51
- if (message.type === 'success') {
52
- c = chalk.green
53
- } else if (message.type === 'timing') {
54
- c = chalk.gray
55
- }
56
- }
57
- console.log(c(typeof message === 'string' ? message : message.message))
58
- }
59
-
60
- error(message: string) {
61
- if (this.level > LogLevel.error) return
62
- console.error(chalk.red(message))
63
- }
64
-
65
- warn(message: string) {
66
- if (this.level > LogLevel.warn) return
67
- console.error(chalk.yellow(message))
68
- }
69
-
70
- debug(message: string | { message: string; type?: string }) {
71
- if (this.level > LogLevel.debug || this.silent) return
72
-
73
- let c = chalk.gray
74
- if (typeof message === 'object') {
75
- if (message.type === 'success') {
76
- c = chalk.green
77
- }
78
- }
79
- console.log(c(typeof message === 'string' ? message : message.message))
80
- }
81
-
82
- critical(code: ErrorCode, message: string) {
83
- const url = `${BASE_ERROR_URL}/${code.toLowerCase()}`
84
- const formattedMessage = `[${code}] ${message}\n → ${url}`
85
- this.criticalErrors.push(formattedMessage)
86
- console.error(chalk.red.bold(formattedMessage))
87
- }
88
-
89
- hasCriticalErrors(): boolean {
90
- return this.criticalErrors.length > 0
91
- }
92
-
93
- logLogo() {
94
- this.primary(logo)
95
- // // When running from dist/, __filename is dist/src/services/cli-logger.service.js
96
- // // So we need to go up 3 levels: dist/src/services -> dist/src -> dist -> package.json
97
- // const packageJson = JSON.parse(
98
- // readFileSync(`${dirname(__filename)}/../../../package.json`, 'utf-8')
99
- // )
100
- // this.primary(`⚙️ Welcome to the Pikku CLI (v${packageJson.version})\n`)
101
- }
102
-
103
- private primary(message: string) {
104
- if (!this.silent) {
105
- console.log(chalk.green(message))
106
- }
107
- }
108
- }