@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
@@ -0,0 +1,636 @@
1
+ import { existsSync } from 'fs';
2
+ import { join } from 'path';
3
+ import { mkdir, writeFile } from 'fs/promises';
4
+ import { pikkuSessionlessFunc } from '#pikku';
5
+ import { parseOpenAPISpec } from '../../utils/openapi/parse-openapi.js';
6
+ import { generateAddonFromOpenAPI } from '../../utils/openapi/codegen.js';
7
+ function toCamelCase(str) {
8
+ return str.replace(/-([a-z])/g, (_, c) => c.toUpperCase());
9
+ }
10
+ function toPascalCase(str) {
11
+ const camel = toCamelCase(str);
12
+ return camel.charAt(0).toUpperCase() + camel.slice(1);
13
+ }
14
+ function toScreamingSnake(str) {
15
+ return str.replace(/-/g, '_').toUpperCase();
16
+ }
17
+ function getAddonFiles(vars, flags) {
18
+ const { name, camelName, pascalName, screamingName, displayName, description, category, } = vars;
19
+ const files = {};
20
+ // package.json
21
+ files['package.json'] = JSON.stringify({
22
+ name: `@pikku/addon-${name}`,
23
+ version: '0.0.1',
24
+ type: 'module',
25
+ imports: {
26
+ '#pikku': './.pikku/pikku-types.gen.ts',
27
+ '#pikku/*': './.pikku/*',
28
+ },
29
+ exports: {
30
+ '.': {
31
+ types: './dist/src/index.d.ts',
32
+ import: './dist/src/index.js',
33
+ },
34
+ './.pikku/*': './.pikku/*',
35
+ './.pikku/pikku-metadata.gen.json': './.pikku/pikku-metadata.gen.json',
36
+ './.pikku/rpc/pikku-rpc-wirings-map.internal.gen.js': {
37
+ types: './.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts',
38
+ },
39
+ },
40
+ files: ['dist', '.pikku'],
41
+ scripts: {
42
+ prebuild: 'pikku all',
43
+ build: 'tsc && cp -r .pikku dist/',
44
+ pikku: 'pikku all',
45
+ },
46
+ peerDependencies: {
47
+ '@pikku/core': '*',
48
+ zod: '^4',
49
+ },
50
+ devDependencies: {
51
+ '@pikku/cli': '*',
52
+ '@pikku/core': '*',
53
+ typescript: '^5.7.2',
54
+ zod: '^4',
55
+ },
56
+ }, null, 2);
57
+ // pikku.config.json
58
+ files['pikku.config.json'] = JSON.stringify({
59
+ $schema: 'https://raw.githubusercontent.com/pikkujs/pikku/refs/heads/main/packages/cli/cli.schema.json',
60
+ tsconfig: './tsconfig.json',
61
+ srcDirectories: ['src', 'types'],
62
+ outDir: './.pikku',
63
+ addon: true,
64
+ node: {
65
+ displayName,
66
+ description,
67
+ categories: [category],
68
+ icon: `./${name}.svg`,
69
+ },
70
+ }, null, 2);
71
+ // tsconfig.json
72
+ files['tsconfig.json'] = JSON.stringify({
73
+ compilerOptions: {
74
+ target: 'ES2021',
75
+ module: 'NodeNext',
76
+ moduleResolution: 'NodeNext',
77
+ rootDir: '.',
78
+ outDir: './dist',
79
+ declaration: true,
80
+ declarationMap: true,
81
+ sourceMap: true,
82
+ strict: true,
83
+ esModuleInterop: true,
84
+ skipLibCheck: true,
85
+ forceConsistentCasingInFileNames: true,
86
+ resolveJsonModule: true,
87
+ paths: {
88
+ '#pikku': ['./.pikku/pikku-types.gen.ts'],
89
+ },
90
+ },
91
+ include: ['src/**/*', 'types/**/*', '.pikku/**/*.ts'],
92
+ exclude: ['node_modules', 'dist', '.pikku/**/*.d.ts'],
93
+ }, null, 2);
94
+ // README.md
95
+ files['README.md'] = `# @pikku/addon-${name}
96
+
97
+ ${description}
98
+
99
+ ## Setup
100
+
101
+ 1. Add icon SVG at \`${name}.svg\`
102
+ 2. Update secret schema with required fields
103
+ 3. Implement API service methods
104
+ 4. Create function files for each operation
105
+ 5. Export functions in \`src/index.ts\`
106
+ 6. Build: \`yarn install && yarn pikku && yarn build\`
107
+ `;
108
+ // src/index.ts
109
+ files['src/index.ts'] = `// ${displayName} functions
110
+ // export { ${camelName}Operation } from './functions/operation.function.js'
111
+ `;
112
+ // src/services.ts
113
+ if (flags.oauth) {
114
+ files['src/services.ts'] =
115
+ `import { ${pascalName}Service } from './${name}-api.service.js'
116
+ import { pikkuAddonServices } from '#pikku'
117
+
118
+ export const createSingletonServices = pikkuAddonServices(async (
119
+ config,
120
+ { secrets }
121
+ ) => {
122
+ const ${camelName} = new ${pascalName}Service(secrets)
123
+
124
+ return { ${camelName} }
125
+ })
126
+ `;
127
+ }
128
+ else if (flags.secret) {
129
+ files['src/services.ts'] =
130
+ `import { ${pascalName}Service } from './${name}-api.service.js'
131
+ import type { ${pascalName}Secrets } from './${name}.secret.js'
132
+ import { pikkuAddonServices } from '#pikku'
133
+
134
+ export const createSingletonServices = pikkuAddonServices(async (
135
+ config,
136
+ { secrets }
137
+ ) => {
138
+ const creds = await secrets.getSecretJSON<${pascalName}Secrets>('${screamingName}_CREDENTIALS')
139
+ const ${camelName} = new ${pascalName}Service(creds)
140
+
141
+ return { ${camelName} }
142
+ })
143
+ `;
144
+ }
145
+ else {
146
+ files['src/services.ts'] =
147
+ `import { ${pascalName}Service } from './${name}-api.service.js'
148
+ import { pikkuAddonServices } from '#pikku'
149
+
150
+ export const createSingletonServices = pikkuAddonServices(async (
151
+ config,
152
+ ) => {
153
+ const ${camelName} = new ${pascalName}Service()
154
+
155
+ return { ${camelName} }
156
+ })
157
+ `;
158
+ }
159
+ // src/{name}-api.service.ts
160
+ if (flags.oauth) {
161
+ files[`src/${name}-api.service.ts`] =
162
+ `import { OAuth2Client } from '@pikku/core/oauth2'
163
+ import type { TypedSecretService } from '#pikku/secrets/pikku-secrets.gen.js'
164
+
165
+ const BASE_URL = 'https://api.example.com/v1'
166
+
167
+ export const ${screamingName}_OAUTH2_CONFIG = {
168
+ tokenSecretId: '${screamingName}_TOKENS',
169
+ authorizationUrl: 'https://example.com/oauth2/authorize',
170
+ tokenUrl: 'https://example.com/oauth2/token',
171
+ scopes: ['read', 'write'],
172
+ }
173
+
174
+ export interface RequestOptions {
175
+ body?: unknown
176
+ qs?: Record<string, string | number | boolean | undefined>
177
+ }
178
+
179
+ export class ${pascalName}Service {
180
+ private oauth: OAuth2Client
181
+
182
+ constructor(secrets: TypedSecretService) {
183
+ this.oauth = new OAuth2Client(
184
+ ${screamingName}_OAUTH2_CONFIG,
185
+ '${screamingName}_APP_CREDENTIALS',
186
+ secrets
187
+ )
188
+ }
189
+
190
+ async request<T>(
191
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH',
192
+ endpoint: string,
193
+ options?: RequestOptions
194
+ ): Promise<T> {
195
+ const url = new URL(\`\${BASE_URL}\${endpoint}\`)
196
+
197
+ if (options?.qs) {
198
+ for (const [key, value] of Object.entries(options.qs)) {
199
+ if (value !== undefined) {
200
+ url.searchParams.set(key, String(value))
201
+ }
202
+ }
203
+ }
204
+
205
+ const response = await this.oauth.request(url.toString(), {
206
+ method,
207
+ headers: {
208
+ 'Content-Type': 'application/json',
209
+ },
210
+ body: options?.body ? JSON.stringify(options.body) : undefined,
211
+ })
212
+
213
+ if (!response.ok) {
214
+ const errorText = await response.text()
215
+ throw new Error(\`${displayName} API error (\${response.status}): \${errorText}\`)
216
+ }
217
+
218
+ const text = await response.text()
219
+ if (!text) {
220
+ return {} as T
221
+ }
222
+ return JSON.parse(text) as T
223
+ }
224
+ }
225
+ `;
226
+ }
227
+ else if (flags.secret) {
228
+ files[`src/${name}-api.service.ts`] =
229
+ `import type { ${pascalName}Secrets } from './${name}.secret.js'
230
+
231
+ const BASE_URL = 'https://api.example.com/v1'
232
+
233
+ export interface RequestOptions {
234
+ body?: unknown
235
+ qs?: Record<string, string | number | boolean | undefined>
236
+ }
237
+
238
+ export class ${pascalName}Service {
239
+ constructor(private creds: ${pascalName}Secrets) {}
240
+
241
+ async request<T>(
242
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH',
243
+ endpoint: string,
244
+ options?: RequestOptions
245
+ ): Promise<T> {
246
+ const url = new URL(endpoint, BASE_URL)
247
+
248
+ if (options?.qs) {
249
+ for (const [key, value] of Object.entries(options.qs)) {
250
+ if (value !== undefined) {
251
+ url.searchParams.set(key, String(value))
252
+ }
253
+ }
254
+ }
255
+
256
+ const response = await fetch(url.toString(), {
257
+ method,
258
+ headers: {
259
+ 'Content-Type': 'application/json',
260
+ 'Authorization': \`Bearer \${this.creds.apiKey}\`,
261
+ },
262
+ body: options?.body ? JSON.stringify(options.body) : undefined,
263
+ })
264
+
265
+ if (!response.ok) {
266
+ const errorText = await response.text()
267
+ throw new Error(\`${displayName} API error (\${response.status}): \${errorText}\`)
268
+ }
269
+
270
+ return response.json() as Promise<T>
271
+ }
272
+ }
273
+ `;
274
+ }
275
+ else {
276
+ files[`src/${name}-api.service.ts`] =
277
+ `const BASE_URL = 'https://api.example.com/v1'
278
+
279
+ export interface RequestOptions {
280
+ body?: unknown
281
+ qs?: Record<string, string | number | boolean | undefined>
282
+ }
283
+
284
+ export class ${pascalName}Service {
285
+ async request<T>(
286
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH',
287
+ endpoint: string,
288
+ options?: RequestOptions
289
+ ): Promise<T> {
290
+ const url = new URL(endpoint, BASE_URL)
291
+
292
+ if (options?.qs) {
293
+ for (const [key, value] of Object.entries(options.qs)) {
294
+ if (value !== undefined) {
295
+ url.searchParams.set(key, String(value))
296
+ }
297
+ }
298
+ }
299
+
300
+ const response = await fetch(url.toString(), {
301
+ method,
302
+ headers: {
303
+ 'Content-Type': 'application/json',
304
+ },
305
+ body: options?.body ? JSON.stringify(options.body) : undefined,
306
+ })
307
+
308
+ if (!response.ok) {
309
+ const errorText = await response.text()
310
+ throw new Error(\`${displayName} API error (\${response.status}): \${errorText}\`)
311
+ }
312
+
313
+ return response.json() as Promise<T>
314
+ }
315
+ }
316
+ `;
317
+ }
318
+ // src/{name}.types.ts
319
+ files[`src/${name}.types.ts`] = `import { z } from 'zod'
320
+
321
+ // Define Zod schemas for API types
322
+
323
+ export const ${pascalName}ResourceSchema = z.object({
324
+ id: z.string(),
325
+ name: z.string(),
326
+ // Add fields based on API response
327
+ })
328
+
329
+ export type ${pascalName}Resource = z.infer<typeof ${pascalName}ResourceSchema>
330
+ `;
331
+ // types/application-types.d.ts
332
+ files['types/application-types.d.ts'] = `import type {
333
+ CoreConfig,
334
+ CoreServices,
335
+ CoreSingletonServices,
336
+ CoreUserSession,
337
+ } from '@pikku/core'
338
+ import type { ${pascalName}Service } from '../src/${name}-api.service.js'
339
+
340
+ export interface Config extends CoreConfig {}
341
+
342
+ export interface UserSession extends CoreUserSession {}
343
+
344
+ export interface SingletonServices extends CoreSingletonServices<Config> {
345
+ ${camelName}: ${pascalName}Service
346
+ }
347
+
348
+ export interface Services extends CoreServices<SingletonServices> {}
349
+ `;
350
+ // Conditional: secret file
351
+ if (flags.oauth) {
352
+ files[`src/${name}.secret.ts`] =
353
+ `import { wireOAuth2Credential } from '@pikku/core/oauth2'
354
+
355
+ wireOAuth2Credential({
356
+ name: '${camelName}OAuth',
357
+ displayName: '${displayName} OAuth2',
358
+ description: '${displayName} OAuth2 credentials',
359
+ secretId: '${screamingName}_APP_CREDENTIALS',
360
+ tokenSecretId: '${screamingName}_TOKENS',
361
+ authorizationUrl: 'https://example.com/oauth2/authorize',
362
+ tokenUrl: 'https://example.com/oauth2/token',
363
+ scopes: ['read', 'write'],
364
+ })
365
+ `;
366
+ }
367
+ else if (flags.secret) {
368
+ files[`src/${name}.secret.ts`] = `import { z } from 'zod'
369
+ import { wireSecret } from '@pikku/core/secret'
370
+
371
+ export const ${camelName}SecretsSchema = z.object({
372
+ apiKey: z.string().describe('${displayName} API key'),
373
+ // Add other secret fields as needed
374
+ })
375
+
376
+ export type ${pascalName}Secrets = z.infer<typeof ${camelName}SecretsSchema>
377
+
378
+ wireSecret({
379
+ name: '${camelName}',
380
+ displayName: '${displayName} API',
381
+ description: '${description}',
382
+ secretId: '${screamingName}_CREDENTIALS',
383
+ schema: ${camelName}SecretsSchema,
384
+ })
385
+ `;
386
+ }
387
+ // Conditional: variable file
388
+ if (flags.variable) {
389
+ files[`src/${name}.variable.ts`] = `import { z } from 'zod'
390
+ import { wireVariable } from '@pikku/core/variable'
391
+
392
+ export const ${camelName}VariableSchema = z.string().optional().describe('TODO: describe this variable')
393
+
394
+ wireVariable({
395
+ name: '${camelName}_variable',
396
+ displayName: '${displayName} Variable',
397
+ description: 'TODO: describe this variable',
398
+ variableId: '${screamingName}_VARIABLE',
399
+ schema: ${camelName}VariableSchema,
400
+ })
401
+ `;
402
+ }
403
+ return files;
404
+ }
405
+ function getTestFiles(vars) {
406
+ const { name, camelName, pascalName, screamingName } = vars;
407
+ const files = {};
408
+ // test/package.json
409
+ files['package.json'] = JSON.stringify({
410
+ name: `@pikku/test-${name}`,
411
+ private: true,
412
+ type: 'module',
413
+ imports: {
414
+ '#pikku': './.pikku/pikku-types.gen.ts',
415
+ '#pikku/*': './.pikku/*',
416
+ },
417
+ scripts: {
418
+ pretest: 'pikku all',
419
+ test: 'node --import tsx --test src/**/*.test.ts',
420
+ },
421
+ dependencies: {
422
+ '@pikku/core': '*',
423
+ [`@pikku/addon-${name}`]: 'file:..',
424
+ },
425
+ devDependencies: {
426
+ '@pikku/cli': '*',
427
+ '@types/node': '^24',
428
+ tsx: '^4',
429
+ typescript: '^5.9',
430
+ zod: '^4',
431
+ },
432
+ }, null, 2);
433
+ // test/pikku.config.json
434
+ files['pikku.config.json'] = JSON.stringify({
435
+ $schema: 'https://raw.githubusercontent.com/pikkujs/pikku/refs/heads/main/packages/cli/cli.schema.json',
436
+ srcDirectories: ['./src', './types'],
437
+ outDir: './.pikku',
438
+ tsconfig: './tsconfig.json',
439
+ }, null, 2);
440
+ // test/tsconfig.json
441
+ files['tsconfig.json'] = JSON.stringify({
442
+ compilerOptions: {
443
+ target: 'ES2021',
444
+ module: 'NodeNext',
445
+ moduleResolution: 'NodeNext',
446
+ declaration: true,
447
+ strict: true,
448
+ noEmit: true,
449
+ skipLibCheck: true,
450
+ resolveJsonModule: true,
451
+ types: ['node'],
452
+ paths: {
453
+ '#pikku': ['./.pikku/pikku-types.gen.ts'],
454
+ },
455
+ },
456
+ include: ['src/*', '.pikku/**/*', 'types/**/*'],
457
+ exclude: ['node_modules', '.pikku/**/*.d.ts'],
458
+ }, null, 2);
459
+ // test/src/addons.ts
460
+ files['src/addons.ts'] = `import { wireAddon } from '#pikku'
461
+
462
+ wireAddon({ name: '${name}', package: '@pikku/addon-${name}' })
463
+ `;
464
+ // test/src/services.ts
465
+ files['src/services.ts'] = `import type {
466
+ SingletonServices,
467
+ } from '../types/application-types.js'
468
+ import {
469
+ CreateSingletonServices,
470
+ } from '@pikku/core'
471
+ import {
472
+ ConsoleLogger,
473
+ LocalVariablesService,
474
+ LocalSecretService,
475
+ } from '@pikku/core/services'
476
+
477
+ import '../.pikku/pikku-bootstrap.gen.js'
478
+
479
+ export const createSingletonServices: CreateSingletonServices<
480
+ {},
481
+ SingletonServices
482
+ > = async (_config, existingServices) => {
483
+ const variables = existingServices?.variables ?? new LocalVariablesService(process.env)
484
+ const secrets = existingServices?.secrets ?? new LocalSecretService(variables)
485
+
486
+ return {
487
+ logger: existingServices?.logger ?? new ConsoleLogger(),
488
+ variables,
489
+ secrets,
490
+ }
491
+ }
492
+ `;
493
+ // test/src/{name}-tests.function.ts
494
+ files[`src/${name}-tests.function.ts`] =
495
+ `import assert from 'node:assert/strict'
496
+ import { pikkuSessionlessFunc } from '#pikku'
497
+
498
+ export type Test${pascalName}Input = {}
499
+ export type Test${pascalName}Output = { passed: number; failed: string[] }
500
+
501
+ export const test${pascalName} = pikkuSessionlessFunc<Test${pascalName}Input, Test${pascalName}Output>({
502
+ func: async (_services, _data, { rpc }) => {
503
+ let passed = 0
504
+ const failed: string[] = []
505
+
506
+ const run = async (name: string, fn: () => Promise<void>) => {
507
+ try {
508
+ await fn()
509
+ passed++
510
+ } catch (e: any) {
511
+ failed.push(\`\${name}: \${e.message}\`)
512
+ }
513
+ }
514
+
515
+ // Add test cases here:
516
+ // await run('test name', async () => {
517
+ // const result = await rpc.invoke('${camelName}:functionName', { ... })
518
+ // assert.equal(result.someField, expectedValue)
519
+ // })
520
+
521
+ return { passed, failed }
522
+ }
523
+ })
524
+ `;
525
+ // test/src/{name}.test.ts
526
+ files[`src/${name}.test.ts`] = `import '../.pikku/pikku-bootstrap.gen.js'
527
+
528
+ import { test } from 'node:test'
529
+ import assert from 'node:assert/strict'
530
+ import { stopSingletonServices } from '@pikku/core'
531
+ import { rpcService } from '@pikku/core/rpc'
532
+ import { LocalSecretService } from '@pikku/core/services'
533
+ import { createSingletonServices } from './services.js'
534
+
535
+ test('${name} addon', async () => {
536
+ const secrets = new LocalSecretService()
537
+ // Set up secrets for the service
538
+ // await secrets.setSecretJSON('${screamingName}_CREDENTIALS', { ... })
539
+
540
+ const singletonServices = await createSingletonServices({}, { secrets })
541
+ const rpc = rpcService.getContextRPCService(singletonServices as any, {})
542
+
543
+ try {
544
+ const { passed, failed } = await rpc.invoke('test${pascalName}', {})
545
+
546
+ console.log(\`\\n \${passed} passed\`)
547
+ if (failed.length > 0) {
548
+ console.log(\` \${failed.length} failed:\`)
549
+ for (const f of failed) console.log(\` \\u2717 \${f}\`)
550
+ }
551
+
552
+ assert.equal(failed.length, 0, \`Failed tests:\\n\${failed.join('\\n')}\`)
553
+ } finally {
554
+ await stopSingletonServices()
555
+ }
556
+ })
557
+ `;
558
+ // test/types/application-types.d.ts
559
+ files['types/application-types.d.ts'] = `import type {
560
+ CoreConfig,
561
+ CoreServices,
562
+ CoreSingletonServices,
563
+ CoreUserSession,
564
+ } from '@pikku/core'
565
+
566
+ export interface Config extends CoreConfig {}
567
+ export interface UserSession extends CoreUserSession {}
568
+ export interface SingletonServices extends CoreSingletonServices<Config> {}
569
+ export interface Services extends CoreServices<SingletonServices> {}
570
+ `;
571
+ return files;
572
+ }
573
+ async function writeFiles(baseDir, files) {
574
+ const written = [];
575
+ for (const [relativePath, content] of Object.entries(files)) {
576
+ const fullPath = join(baseDir, relativePath);
577
+ await mkdir(join(fullPath, '..'), { recursive: true });
578
+ await writeFile(fullPath, content, 'utf-8');
579
+ written.push(fullPath);
580
+ }
581
+ return written;
582
+ }
583
+ export const pikkuNewAddon = pikkuSessionlessFunc({
584
+ func: async ({ logger, config }, { name, displayName, description, category = 'General', dir, secret = false, variable = false, oauth = false, test = true, openapi, }) => {
585
+ if (!/^[a-z][a-z0-9_-]*$/.test(name)) {
586
+ logger.error(`Invalid addon name "${name}": must start with a lowercase letter and contain only lowercase alphanumerics, hyphens, and underscores`);
587
+ process.exit(1);
588
+ }
589
+ const pascalName = toPascalCase(name);
590
+ const resolvedDisplayName = displayName || pascalName;
591
+ const resolvedDescription = description || `${resolvedDisplayName} integration for Pikku`;
592
+ // Resolve target directory
593
+ const baseDir = dir || config.scaffold?.addonDir || process.cwd();
594
+ const addonDir = join(baseDir, name);
595
+ if (existsSync(addonDir)) {
596
+ logger.error(`Directory already exists: ${addonDir}`);
597
+ process.exit(1);
598
+ }
599
+ const vars = {
600
+ name,
601
+ camelName: toCamelCase(name),
602
+ pascalName,
603
+ screamingName: toScreamingSnake(name),
604
+ displayName: resolvedDisplayName,
605
+ description: resolvedDescription,
606
+ category,
607
+ };
608
+ // oauth implies secret
609
+ const addonFiles = getAddonFiles(vars, {
610
+ secret: secret || oauth,
611
+ variable,
612
+ oauth,
613
+ });
614
+ // If openapi spec provided, generate typed files and merge over scaffold
615
+ if (openapi) {
616
+ const spec = await parseOpenAPISpec(openapi);
617
+ const openapiFiles = generateAddonFromOpenAPI(spec, vars, {
618
+ oauth,
619
+ secret: secret || oauth,
620
+ });
621
+ Object.assign(addonFiles, openapiFiles);
622
+ }
623
+ const written = await writeFiles(addonDir, addonFiles);
624
+ // Test harness
625
+ if (test) {
626
+ const testFiles = getTestFiles(vars);
627
+ const testWritten = await writeFiles(join(addonDir, 'test'), testFiles);
628
+ written.push(...testWritten);
629
+ }
630
+ logger.info(`Created addon at ${addonDir}`);
631
+ for (const f of written) {
632
+ logger.debug({ message: ` ${f}`, type: 'success' });
633
+ }
634
+ console.log(addonDir);
635
+ },
636
+ });
@@ -0,0 +1,10 @@
1
+ export declare const pikkuNewFunction: import("#pikku").PikkuFunctionConfig<{
2
+ name: string;
3
+ type?: string;
4
+ }, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<{
5
+ name: string;
6
+ type?: string;
7
+ }, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<{
8
+ name: string;
9
+ type?: string;
10
+ }, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;