@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.
- package/cli.schema.json +1 -1
- package/console-app/android-chrome-192x192.png +0 -0
- package/console-app/android-chrome-512x512.png +0 -0
- package/console-app/apple-touch-icon.png +0 -0
- package/console-app/assets/index-0Ui5UudO.css +1 -0
- package/console-app/assets/index-C19L3UJu.js +637 -0
- package/console-app/favicon-16x16.png +0 -0
- package/console-app/favicon-32x32.png +0 -0
- package/console-app/favicon.ico +0 -0
- package/console-app/index.html +29 -0
- package/console-app/pikku-console-logo.png +0 -0
- package/console-app/site.webmanifest +19 -0
- package/console-app/wiring-icons/cron.svg +6 -0
- package/console-app/wiring-icons/function.png +0 -0
- package/console-app/wiring-icons/http.svg +2 -0
- package/console-app/wiring-icons/mcp.svg +1 -0
- package/console-app/wiring-icons/queue.svg +18 -0
- package/console-app/wiring-icons/sse.svg +5 -0
- package/console-app/wiring-icons/websocket.svg +8 -0
- package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +19 -0
- package/dist/.pikku/agent/pikku-agent-types.gen.js +4 -0
- package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.js +6 -0
- package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.json +3 -0
- package/dist/.pikku/agent/pikku-agent-wirings.gen.d.ts +4 -0
- package/dist/.pikku/agent/pikku-agent-wirings.gen.js +4 -0
- package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +65 -10
- package/dist/.pikku/channel/pikku-channel-types.gen.js +23 -16
- package/dist/.pikku/channel/pikku-channels-meta.gen.js +3 -2
- package/dist/.pikku/channel/pikku-channels.gen.d.ts +1 -1
- package/dist/.pikku/channel/pikku-channels.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-channel.js +18 -3
- package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +9 -1
- package/dist/.pikku/cli/pikku-cli-types.gen.js +12 -2
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +2 -2
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +45 -12
- package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -5
- package/dist/.pikku/cli/pikku-cli.gen.js +1 -5
- package/dist/.pikku/console/pikku-node-types.gen.d.ts +6 -0
- package/dist/.pikku/console/pikku-node-types.gen.js +1 -0
- package/dist/.pikku/function/pikku-function-types.gen.d.ts +180 -37
- package/dist/.pikku/function/pikku-function-types.gen.js +63 -53
- package/dist/.pikku/function/pikku-functions-meta.gen.js +2 -2
- package/dist/.pikku/function/pikku-functions-meta.gen.json +624 -506
- package/dist/.pikku/function/pikku-functions.gen.d.ts +1 -0
- package/dist/.pikku/function/pikku-functions.gen.js +119 -0
- package/dist/.pikku/http/pikku-http-types.gen.d.ts +54 -3
- package/dist/.pikku/http/pikku-http-types.gen.js +11 -2
- package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +3 -10
- package/dist/.pikku/http/pikku-http-wirings-meta.gen.json +9 -0
- package/dist/.pikku/http/pikku-http-wirings.gen.d.ts +1 -1
- package/dist/.pikku/http/pikku-http-wirings.gen.js +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +68 -29
- package/dist/.pikku/mcp/pikku-mcp-types.gen.js +8 -42
- package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +4 -4
- package/dist/.pikku/mcp/pikku-mcp-wirings.gen.d.ts +1 -1
- package/dist/.pikku/mcp/pikku-mcp-wirings.gen.js +2 -2
- package/dist/.pikku/node/pikku-node-types.gen.d.ts +1 -0
- package/dist/.pikku/node/pikku-node-types.gen.js +1 -0
- package/dist/.pikku/pikku-bootstrap.gen.d.ts +9 -10
- package/dist/.pikku/pikku-bootstrap.gen.js +17 -8
- package/dist/.pikku/pikku-services.gen.d.ts +7 -2
- package/dist/.pikku/pikku-services.gen.js +5 -0
- package/dist/.pikku/pikku-types.gen.d.ts +4 -1
- package/dist/.pikku/pikku-types.gen.js +7 -1
- package/dist/.pikku/pikku-websocket.gen.d.ts +1 -1
- package/dist/.pikku/pikku-websocket.gen.js +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.js +2 -2
- package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +2 -2
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
- package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.d.ts +6 -3
- package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.js +6 -3
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.d.ts +1 -0
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +6 -0
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +61 -0
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +2 -2
- package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.js +2 -2
- package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.d.ts +1 -1
- package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.js +1 -1
- package/dist/.pikku/schemas/register.gen.js +33 -15
- package/dist/.pikku/schemas/schemas/BootstrapInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/ConsoleCommandInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuAIAgentOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/PikkuConsoleFunctionsOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuNodesMetaOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuPackageOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuPublicAgentOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/PikkuTriggerOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuVersionsInitInput.schema.json +1 -0
- package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +5 -0
- package/dist/.pikku/secrets/pikku-secret-types.gen.js +4 -0
- package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +11 -0
- package/dist/.pikku/secrets/pikku-secrets.gen.js +10 -0
- package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +113 -0
- package/dist/.pikku/trigger/pikku-trigger-types.gen.js +33 -0
- package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +5 -0
- package/dist/.pikku/variables/pikku-variable-types.gen.js +4 -0
- package/dist/.pikku/variables/pikku-variables.gen.d.ts +11 -0
- package/dist/.pikku/variables/pikku-variables.gen.js +10 -0
- package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +71 -53
- package/dist/.pikku/workflow/pikku-workflow-types.gen.js +23 -35
- package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +3 -3
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +2 -6
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +2 -6
- package/dist/bin/pikku.js +20 -47
- package/dist/src/cli.wiring.js +29 -2
- package/dist/src/functions/commands/all.d.ts +1 -1
- package/dist/src/functions/commands/all.js +109 -168
- package/dist/src/functions/commands/bootstrap.d.ts +1 -1
- package/dist/src/functions/commands/bootstrap.js +13 -29
- package/dist/src/functions/commands/console.d.ts +7 -0
- package/dist/src/functions/commands/console.js +106 -0
- package/dist/src/functions/commands/pikku-command-bootstrap.d.ts +4 -0
- package/dist/src/functions/commands/pikku-command-bootstrap.js +67 -0
- package/dist/src/functions/commands/pikku-command-summary.d.ts +1 -0
- package/dist/src/functions/commands/pikku-command-summary.js +55 -0
- package/dist/src/functions/commands/versions-check.d.ts +1 -0
- package/dist/src/functions/commands/versions-check.js +17 -0
- package/dist/src/functions/commands/versions-init.d.ts +7 -0
- package/dist/src/functions/commands/versions-init.js +15 -0
- package/dist/src/functions/commands/versions-update.d.ts +1 -0
- package/dist/src/functions/commands/versions-update.js +20 -0
- package/dist/src/functions/commands/watch.d.ts +1 -1
- package/dist/src/functions/commands/watch.js +4 -5
- package/dist/src/functions/runtimes/fetch/index.d.ts +1 -0
- package/dist/src/functions/{wirings → runtimes}/fetch/index.js +3 -3
- package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.d.ts +1 -1
- package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +6 -8
- package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.d.ts +1 -1
- package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.js +49 -43
- package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.js +45 -35
- package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.d.ts +1 -0
- package/dist/src/functions/{wirings/channels → runtimes/websocket}/pikku-command-websocket-typed.js +2 -2
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.d.ts +1 -0
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.js +19 -0
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.d.ts +1 -0
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.js +68 -0
- package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.d.ts +1 -0
- package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.js +23 -0
- package/dist/src/functions/wirings/ai-agent/serialize-agent-map.d.ts +4 -0
- package/dist/src/functions/wirings/ai-agent/serialize-agent-map.js +48 -0
- package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.d.ts +1 -0
- package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.js +31 -0
- package/dist/src/functions/wirings/ai-agent/serialize-public-agent.d.ts +1 -0
- package/dist/src/functions/wirings/ai-agent/serialize-public-agent.js +90 -0
- package/dist/src/functions/wirings/channels/pikku-channels.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-channels.js +2 -2
- package/dist/src/functions/wirings/channels/pikku-command-channel-types.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +3 -3
- package/dist/src/functions/wirings/channels/pikku-command-channels-map.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channels-map.js +2 -2
- package/dist/src/functions/wirings/channels/pikku-command-channels.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channels.js +19 -3
- package/dist/src/functions/wirings/channels/serialize-channel-types.d.ts +1 -1
- package/dist/src/functions/wirings/channels/serialize-channel-types.js +97 -10
- package/dist/src/functions/wirings/channels/serialize-typed-channel-map.d.ts +2 -1
- package/dist/src/functions/wirings/channels/serialize-typed-channel-map.js +9 -10
- package/dist/src/functions/wirings/cli/pikku-command-cli-entry.d.ts +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +3 -7
- package/dist/src/functions/wirings/cli/pikku-command-cli-types.d.ts +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli.d.ts +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli.js +11 -3
- package/dist/src/functions/wirings/cli/serialize-channel-cli.js +8 -8
- package/dist/src/functions/wirings/cli/serialize-cli-types.js +14 -1
- package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.d.ts +2 -2
- package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.js +10 -11
- package/dist/src/functions/wirings/console/pikku-command-console-functions.d.ts +1 -0
- package/dist/src/functions/wirings/console/pikku-command-console-functions.js +23 -0
- package/dist/src/functions/wirings/console/pikku-command-node-types.d.ts +1 -0
- package/dist/src/functions/wirings/console/pikku-command-node-types.js +21 -0
- package/dist/src/functions/wirings/console/pikku-command-nodes-meta.d.ts +1 -0
- package/dist/src/functions/wirings/console/pikku-command-nodes-meta.js +79 -0
- package/dist/src/functions/wirings/console/serialize-console-functions.d.ts +1 -0
- package/dist/src/functions/wirings/console/serialize-console-functions.js +229 -0
- package/dist/src/functions/wirings/console/serialize-node-types.d.ts +1 -0
- package/dist/src/functions/wirings/console/serialize-node-types.js +11 -0
- package/dist/src/functions/wirings/functions/pikku-command-external-types.d.ts +1 -0
- package/dist/src/functions/wirings/functions/pikku-command-external-types.js +33 -0
- package/dist/src/functions/wirings/functions/pikku-command-function-types-split.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +2 -2
- package/dist/src/functions/wirings/functions/pikku-command-function-types.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-function-types.js +8 -3
- package/dist/src/functions/wirings/functions/pikku-command-functions.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-functions.js +34 -19
- package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-services.js +2 -2
- package/dist/src/functions/wirings/functions/schemas.d.ts +1 -4
- package/dist/src/functions/wirings/functions/schemas.js +8 -9
- package/dist/src/functions/wirings/functions/serialize-external-types.d.ts +1 -0
- package/dist/src/functions/wirings/functions/serialize-external-types.js +77 -0
- package/dist/src/functions/wirings/functions/serialize-function-imports.d.ts +4 -3
- package/dist/src/functions/wirings/functions/serialize-function-imports.js +16 -19
- package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +1 -1
- package/dist/src/functions/wirings/functions/serialize-function-types.js +256 -42
- package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.d.ts +1 -1
- package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +22 -21
- package/dist/src/functions/wirings/http/pikku-command-http-map.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-map.js +4 -4
- package/dist/src/functions/wirings/http/pikku-command-http-routes.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-routes.js +19 -3
- package/dist/src/functions/wirings/http/pikku-command-http-types.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-types.js +1 -1
- package/dist/src/functions/wirings/http/pikku-command-openapi.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-openapi.js +11 -9
- package/dist/src/functions/wirings/http/pikku-http-routes.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-http-routes.js +2 -2
- package/dist/src/functions/wirings/http/serialize-http-types.js +64 -3
- package/dist/src/functions/wirings/http/serialize-typed-http-map.d.ts +5 -2
- package/dist/src/functions/wirings/http/serialize-typed-http-map.js +43 -31
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +5 -6
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.js +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +28 -10
- package/dist/src/functions/wirings/mcp/serialize-mcp-types.js +81 -38
- package/dist/src/functions/wirings/middleware/pikku-command-middleware.d.ts +1 -1
- package/dist/src/functions/wirings/middleware/pikku-command-middleware.js +11 -31
- package/dist/src/functions/wirings/middleware/serialize-middleware-imports.js +19 -24
- package/dist/src/functions/wirings/package/pikku-command-package-types.d.ts +2 -0
- package/dist/src/functions/wirings/package/pikku-command-package-types.js +30 -0
- package/dist/src/functions/wirings/package/pikku-command-package.d.ts +1 -0
- package/dist/src/functions/wirings/package/pikku-command-package.js +58 -0
- package/dist/src/functions/wirings/package/serialize-package-types.d.ts +2 -0
- package/dist/src/functions/wirings/package/serialize-package-types.js +10 -0
- package/dist/src/functions/wirings/package/serialize-package.d.ts +5 -0
- package/dist/src/functions/wirings/package/serialize-package.js +32 -0
- package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -1
- package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +10 -5
- package/dist/src/functions/wirings/queue/pikku-command-queue-map.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-map.js +3 -3
- package/dist/src/functions/wirings/queue/pikku-command-queue-service.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +2 -2
- package/dist/src/functions/wirings/queue/pikku-command-queue-types.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-types.js +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue.js +11 -3
- package/dist/src/functions/wirings/queue/pikku-queue-map.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-queue-map.js +3 -3
- package/dist/src/functions/wirings/queue/pikku-queue.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-queue.js +2 -10
- package/dist/src/functions/wirings/queue/serialize-queue-map.d.ts +5 -2
- package/dist/src/functions/wirings/queue/serialize-queue-map.js +13 -24
- package/dist/src/functions/wirings/queue/serialize-queue-meta.js +9 -10
- package/dist/src/functions/wirings/queue/serialize-queue-types.js +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +2 -2
- package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.js +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +2 -2
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.d.ts +2 -2
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +12 -7
- package/dist/src/functions/wirings/rpc/pikku-command-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +5 -2
- package/dist/src/functions/wirings/rpc/serialize-public-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +11 -6
- package/dist/src/functions/wirings/rpc/serialize-remote-rpc.js +5 -2
- package/dist/src/functions/wirings/rpc/serialize-rpc-wrapper.js +19 -8
- package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.d.ts +6 -3
- package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +130 -59
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.d.ts +1 -1
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.js +1 -1
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.d.ts +1 -1
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.js +11 -2
- package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.d.ts +1 -1
- package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.js +13 -12
- package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.js +1 -1
- package/dist/src/functions/wirings/secrets/pikku-command-secrets.d.ts +1 -0
- package/dist/src/functions/wirings/secrets/pikku-command-secrets.js +31 -0
- package/dist/src/functions/wirings/secrets/serialize-secrets-types.d.ts +9 -0
- package/dist/src/functions/wirings/secrets/serialize-secrets-types.js +64 -0
- package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.d.ts +1 -0
- package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.js +24 -0
- package/dist/src/functions/wirings/triggers/pikku-command-trigger.d.ts +1 -0
- package/dist/src/functions/wirings/triggers/pikku-command-trigger.js +40 -0
- package/dist/src/functions/wirings/triggers/serialize-trigger-meta.d.ts +5 -0
- package/dist/src/functions/wirings/triggers/serialize-trigger-meta.js +35 -0
- package/dist/src/functions/wirings/triggers/serialize-trigger-types.d.ts +4 -0
- package/dist/src/functions/wirings/triggers/serialize-trigger-types.js +163 -0
- package/dist/src/functions/wirings/variables/pikku-command-variables.d.ts +1 -0
- package/dist/src/functions/wirings/variables/pikku-command-variables.js +31 -0
- package/dist/src/functions/wirings/variables/serialize-variables-types.d.ts +9 -0
- package/dist/src/functions/wirings/variables/serialize-variables-types.js +53 -0
- package/dist/src/functions/wirings/workflow/pikku-command-workflow.d.ts +1 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +29 -20
- package/dist/src/functions/wirings/workflow/serialize-workflow-map.d.ts +7 -2
- package/dist/src/functions/wirings/workflow/serialize-workflow-map.js +87 -38
- package/dist/src/functions/wirings/workflow/serialize-workflow-meta.d.ts +1 -3
- package/dist/src/functions/wirings/workflow/serialize-workflow-meta.js +42 -18
- package/dist/src/functions/wirings/workflow/serialize-workflow-registration.d.ts +7 -0
- package/dist/src/functions/wirings/workflow/serialize-workflow-registration.js +26 -0
- package/dist/src/functions/wirings/workflow/serialize-workflow-types.d.ts +1 -4
- package/dist/src/functions/wirings/workflow/serialize-workflow-types.js +121 -63
- package/dist/src/functions/wirings/workflow/serialize-workflow-workers.d.ts +1 -1
- package/dist/src/functions/wirings/workflow/serialize-workflow-workers.js +15 -28
- package/dist/src/services/cli-logger-forwarder.service.d.ts +1 -1
- package/dist/src/services/cli-logger-forwarder.service.js +1 -1
- package/dist/src/services/cli-logger.service.d.ts +1 -1
- package/dist/src/services/cli-logger.service.js +1 -1
- package/dist/src/services.d.ts +1 -1
- package/dist/src/services.js +56 -6
- package/dist/src/utils/command-summary.d.ts +3 -0
- package/dist/src/utils/command-summary.js +3 -0
- package/dist/src/utils/contract-versions.d.ts +6 -0
- package/dist/src/utils/contract-versions.js +25 -0
- package/dist/src/utils/file-import-path.js +20 -6
- package/dist/src/utils/generate-bootstrap-file.js +1 -1
- package/dist/src/utils/pikku-cli-config.js +104 -13
- package/dist/src/utils/pikku-files-and-methods.d.ts +0 -1
- package/dist/src/utils/pikku-files-and-methods.js +15 -60
- package/dist/src/utils/serialize-import-map.d.ts +2 -1
- package/dist/src/utils/serialize-import-map.js +3 -54
- package/dist/src/utils/serialize-meta-ts.d.ts +8 -0
- package/dist/src/utils/serialize-meta-ts.js +12 -0
- package/dist/src/utils/serialize-schemas.d.ts +3 -0
- package/dist/src/utils/serialize-schemas.js +38 -0
- package/dist/src/utils/strip-verbose-meta.d.ts +43 -0
- package/dist/src/utils/strip-verbose-meta.js +210 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +20 -8
- package/.pikku/channel/pikku-channel-types.gen.ts +0 -91
- package/.pikku/channel/pikku-channels-map.gen.d.ts +0 -47
- package/.pikku/channel/pikku-channels-meta.gen.ts +0 -5
- package/.pikku/channel/pikku-channels.gen.ts +0 -4
- package/.pikku/cli/pikku-cli-channel.ts +0 -92
- package/.pikku/cli/pikku-cli-client.gen.ts +0 -54
- package/.pikku/cli/pikku-cli-types.gen.ts +0 -92
- package/.pikku/cli/pikku-cli-wirings-meta.gen.json +0 -146
- package/.pikku/cli/pikku-cli-wirings-meta.gen.ts +0 -7
- package/.pikku/cli/pikku-cli-wirings.gen.ts +0 -6
- package/.pikku/cli/pikku-cli.gen.ts +0 -41
- package/.pikku/function/pikku-function-types.gen.ts +0 -426
- package/.pikku/function/pikku-functions-meta.gen.json +0 -988
- package/.pikku/function/pikku-functions-meta.gen.ts +0 -6
- package/.pikku/function/pikku-functions-meta.min.gen.json +0 -212
- package/.pikku/function/pikku-functions-meta.min.gen.ts +0 -6
- package/.pikku/http/pikku-http-types.gen.ts +0 -86
- package/.pikku/http/pikku-http-wirings-map.gen.d.ts +0 -46
- package/.pikku/http/pikku-http-wirings-meta.gen.ts +0 -13
- package/.pikku/http/pikku-http-wirings.gen.ts +0 -4
- package/.pikku/mcp/pikku-mcp-types.gen.ts +0 -140
- package/.pikku/mcp/pikku-mcp-wirings-meta.gen.json +0 -5
- package/.pikku/mcp/pikku-mcp-wirings-meta.gen.ts +0 -9
- package/.pikku/mcp/pikku-mcp-wirings.gen.ts +0 -4
- package/.pikku/mcp/pikku-mcp.gen.json +0 -5
- package/.pikku/pikku-bootstrap.gen.ts +0 -19
- package/.pikku/pikku-services.gen.ts +0 -27
- package/.pikku/pikku-types.gen.ts +0 -27
- package/.pikku/pikku-websocket.gen.ts +0 -90
- package/.pikku/queue/pikku-queue-types.gen.ts +0 -27
- package/.pikku/queue/pikku-queue-workers-wirings-map.gen.d.ts +0 -60
- package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.json +0 -1
- package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.ts +0 -8
- package/.pikku/queue/pikku-queue-workers-wirings.gen.ts +0 -4
- package/.pikku/rpc/pikku-remote-rpc-workers.gen.ts +0 -27
- package/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +0 -57
- package/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +0 -99
- package/.pikku/scheduler/pikku-scheduler-types.gen.ts +0 -25
- package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.json +0 -1
- package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.ts +0 -8
- package/.pikku/scheduler/pikku-schedulers-wirings.gen.ts +0 -4
- package/.pikku/schemas/register.gen.ts +0 -63
- package/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuCLIOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuFunctionsOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuHTTPOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuMCPOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuMiddlewareOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuPublicRPCOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuQueueOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuRPCOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuRemoteRPCOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuSchedulerOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +0 -1
- package/.pikku/schemas/schemas/PikkuWorkflowOutput.schema.json +0 -1
- package/.pikku/services/config.gen.json +0 -99
- package/.pikku/services/getInspectorState.gen.json +0 -10
- package/.pikku/services/jwt.gen.json +0 -13
- package/.pikku/services/logger.gen.json +0 -25
- package/.pikku/services/queueService.gen.json +0 -14
- package/.pikku/services/schedulerService.gen.json +0 -17
- package/.pikku/services/schema.gen.json +0 -14
- package/.pikku/services/variables.gen.json +0 -13
- package/.pikku/services/workflowService.gen.json +0 -31
- package/.pikku/workflow/pikku-workflow-map.gen.d.ts +0 -62
- package/.pikku/workflow/pikku-workflow-types.gen.ts +0 -97
- package/.pikku/workflow/pikku-workflow-wirings-meta.gen.json +0 -1
- package/.pikku/workflow/pikku-workflow-wirings-meta.gen.ts +0 -8
- package/.pikku/workflow/pikku-workflow-wirings.gen.ts +0 -8
- package/CHANGELOG.md +0 -935
- package/bin/pikku.ts +0 -88
- package/build.sh +0 -75
- package/dist/.pikku/function/pikku-functions-meta.min.gen.js +0 -6
- package/dist/.pikku/function/pikku-functions-meta.min.gen.json +0 -212
- package/dist/src/functions/wirings/channels/pikku-command-websocket-typed.d.ts +0 -1
- package/dist/src/functions/wirings/fetch/index.d.ts +0 -1
- package/dist/src/functions/wirings/functions/pikku-function-types.d.ts +0 -1
- package/dist/src/functions/wirings/functions/pikku-function-types.js +0 -18
- package/dist/src/functions/wirings/http/openapi-spec-generator.d.ts +0 -81
- package/dist/src/functions/wirings/http/openapi-spec-generator.js +0 -152
- package/dist/src/functions/wirings/mcp/serialize-mcp-json.d.ts +0 -5
- package/dist/src/functions/wirings/mcp/serialize-mcp-json.js +0 -101
- package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.d.ts +0 -11
- package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.js +0 -36
- package/dist/src/functions/wirings/services/pikku-command-service-metadata.d.ts +0 -1
- package/dist/src/functions/wirings/services/pikku-command-service-metadata.js +0 -22
- package/dist/src/functions/wirings/workflow/pikku-command-workflow-map.d.ts +0 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow-map.js +0 -12
- package/dist/src/functions/wirings/workflow/pikku-command-workflow-types.d.ts +0 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow-types.js +0 -13
- package/dist/src/functions/wirings/workflow/serialize-workflow-wirings.d.ts +0 -8
- package/dist/src/functions/wirings/workflow/serialize-workflow-wirings.js +0 -30
- package/dist/src/utils/custom-types-generator.d.ts +0 -2
- package/dist/src/utils/custom-types-generator.js +0 -43
- package/dist/src/utils/schema-generator.d.ts +0 -6
- package/dist/src/utils/schema-generator.js +0 -118
- package/pikku.config.json +0 -29
- package/run-tests.sh +0 -53
- package/src/cli.wiring.ts +0 -112
- package/src/functions/commands/all.ts +0 -266
- package/src/functions/commands/bootstrap.ts +0 -43
- package/src/functions/commands/watch.ts +0 -61
- package/src/functions/runtimes/nextjs/pikku-command-nextjs.ts +0 -132
- package/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.ts +0 -268
- package/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.ts +0 -201
- package/src/functions/wirings/channels/pikku-channels.ts +0 -59
- package/src/functions/wirings/channels/pikku-command-channel-types.ts +0 -25
- package/src/functions/wirings/channels/pikku-command-channels-map.ts +0 -26
- package/src/functions/wirings/channels/pikku-command-channels.ts +0 -40
- package/src/functions/wirings/channels/pikku-command-websocket-typed.ts +0 -37
- package/src/functions/wirings/channels/serialize-channel-types.ts +0 -94
- package/src/functions/wirings/channels/serialize-typed-channel-map.ts +0 -172
- package/src/functions/wirings/channels/serialize-websocket-wrapper.ts +0 -89
- package/src/functions/wirings/cli/pikku-command-cli-entry.ts +0 -216
- package/src/functions/wirings/cli/pikku-command-cli-types.ts +0 -48
- package/src/functions/wirings/cli/pikku-command-cli.ts +0 -62
- package/src/functions/wirings/cli/serialize-channel-cli-client.ts +0 -184
- package/src/functions/wirings/cli/serialize-channel-cli.ts +0 -134
- package/src/functions/wirings/cli/serialize-cli-types.ts +0 -101
- package/src/functions/wirings/cli/serialize-local-cli-bootstrap.ts +0 -80
- package/src/functions/wirings/fetch/index.ts +0 -36
- package/src/functions/wirings/functions/pikku-command-function-types-split.ts +0 -60
- package/src/functions/wirings/functions/pikku-command-function-types.ts +0 -43
- package/src/functions/wirings/functions/pikku-command-functions.ts +0 -94
- package/src/functions/wirings/functions/pikku-command-services.ts +0 -140
- package/src/functions/wirings/functions/pikku-function-types.ts +0 -43
- package/src/functions/wirings/functions/schemas.ts +0 -46
- package/src/functions/wirings/functions/serialize-function-imports.ts +0 -71
- package/src/functions/wirings/functions/serialize-function-types.ts +0 -439
- package/src/functions/wirings/functions/serialize-pikku-types-hub.ts +0 -38
- package/src/functions/wirings/http/openapi-spec-generator.ts +0 -265
- package/src/functions/wirings/http/pikku-command-http-map.ts +0 -27
- package/src/functions/wirings/http/pikku-command-http-routes.ts +0 -36
- package/src/functions/wirings/http/pikku-command-http-types.ts +0 -25
- package/src/functions/wirings/http/pikku-command-openapi.ts +0 -63
- package/src/functions/wirings/http/pikku-http-routes.ts +0 -61
- package/src/functions/wirings/http/serialize-fetch-wrapper.ts +0 -67
- package/src/functions/wirings/http/serialize-http-types.ts +0 -89
- package/src/functions/wirings/http/serialize-typed-http-map.ts +0 -154
- package/src/functions/wirings/mcp/pikku-command-mcp-json.ts +0 -33
- package/src/functions/wirings/mcp/pikku-command-mcp-types.ts +0 -25
- package/src/functions/wirings/mcp/pikku-command-mcp.ts +0 -140
- package/src/functions/wirings/mcp/serialize-mcp-json.ts +0 -159
- package/src/functions/wirings/mcp/serialize-mcp-types.ts +0 -143
- package/src/functions/wirings/middleware/pikku-command-middleware.ts +0 -85
- package/src/functions/wirings/middleware/serialize-middleware-groups-meta.ts +0 -40
- package/src/functions/wirings/middleware/serialize-middleware-imports.ts +0 -78
- package/src/functions/wirings/permissions/pikku-command-permissions.ts +0 -49
- package/src/functions/wirings/permissions/serialize-permissions-imports.test.ts +0 -274
- package/src/functions/wirings/permissions/serialize-permissions-imports.ts +0 -78
- package/src/functions/wirings/queue/pikku-command-queue-map.ts +0 -26
- package/src/functions/wirings/queue/pikku-command-queue-service.ts +0 -37
- package/src/functions/wirings/queue/pikku-command-queue-types.ts +0 -25
- package/src/functions/wirings/queue/pikku-command-queue.ts +0 -66
- package/src/functions/wirings/queue/pikku-queue-map.ts +0 -26
- package/src/functions/wirings/queue/pikku-queue.ts +0 -75
- package/src/functions/wirings/queue/serialize-queue-map.ts +0 -119
- package/src/functions/wirings/queue/serialize-queue-meta.ts +0 -24
- package/src/functions/wirings/queue/serialize-queue-types.ts +0 -30
- package/src/functions/wirings/queue/serialize-queue-wrapper.ts +0 -35
- package/src/functions/wirings/rpc/pikku-command-public-rpc.ts +0 -32
- package/src/functions/wirings/rpc/pikku-command-remote-rpc.ts +0 -35
- package/src/functions/wirings/rpc/pikku-command-rpc-client.ts +0 -35
- package/src/functions/wirings/rpc/pikku-command-rpc-map.ts +0 -48
- package/src/functions/wirings/rpc/pikku-command-rpc.ts +0 -49
- package/src/functions/wirings/rpc/serialize-public-rpc.ts +0 -37
- package/src/functions/wirings/rpc/serialize-remote-rpc.ts +0 -30
- package/src/functions/wirings/rpc/serialize-rpc-wrapper.ts +0 -68
- package/src/functions/wirings/rpc/serialize-typed-rpc-map.ts +0 -128
- package/src/functions/wirings/scheduler/pikku-command-scheduler-types.ts +0 -25
- package/src/functions/wirings/scheduler/pikku-command-scheduler.ts +0 -67
- package/src/functions/wirings/scheduler/serialize-scheduler-meta.ts +0 -37
- package/src/functions/wirings/scheduler/serialize-scheduler-types.ts +0 -28
- package/src/functions/wirings/services/pikku-command-service-metadata.ts +0 -25
- package/src/functions/wirings/workflow/pikku-command-workflow-map.ts +0 -24
- package/src/functions/wirings/workflow/pikku-command-workflow-types.ts +0 -29
- package/src/functions/wirings/workflow/pikku-command-workflow.ts +0 -151
- package/src/functions/wirings/workflow/serialize-workflow-map.ts +0 -123
- package/src/functions/wirings/workflow/serialize-workflow-meta.ts +0 -33
- package/src/functions/wirings/workflow/serialize-workflow-types.ts +0 -103
- package/src/functions/wirings/workflow/serialize-workflow-wirings.ts +0 -47
- package/src/functions/wirings/workflow/serialize-workflow-workers.ts +0 -60
- package/src/middleware/log-command-info-and-time.ts +0 -35
- package/src/services/cli-logger-forwarder.service.ts +0 -99
- package/src/services/cli-logger.service.ts +0 -108
- package/src/services.ts +0 -315
- package/src/utils/check-required-types.ts +0 -65
- package/src/utils/command-summary.ts +0 -103
- package/src/utils/custom-types-generator.ts +0 -55
- package/src/utils/file-import-path.test.ts +0 -175
- package/src/utils/file-import-path.ts +0 -53
- package/src/utils/file-imports-serializer.ts +0 -25
- package/src/utils/file-writer.ts +0 -72
- package/src/utils/generate-bootstrap-file.ts +0 -43
- package/src/utils/get-cli-version.ts +0 -28
- package/src/utils/pikku-cli-config.ts +0 -462
- package/src/utils/pikku-files-and-methods.ts +0 -145
- package/src/utils/schema-generator.ts +0 -172
- package/src/utils/serialize-import-map.ts +0 -102
- package/tsconfig.json +0 -21
- package/types/application-types.d.ts +0 -27
- package/types/config.d.ts +0 -270
- /package/dist/.pikku/{function/pikku-functions-meta.min.gen.d.ts → agent/pikku-agent-wirings-meta.gen.d.ts} +0 -0
- /package/dist/.pikku/{workflow/pikku-workflow-wirings-meta.gen.json → channel/pikku-channels-meta.gen.json} +0 -0
- /package/dist/src/functions/{wirings/channels → runtimes/websocket}/serialize-websocket-wrapper.d.ts +0 -0
- /package/dist/src/functions/{wirings/channels → runtimes/websocket}/serialize-websocket-wrapper.js +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const pikkuVersionsInit: import("#pikku").PikkuFunctionConfig<{
|
|
2
|
+
force?: boolean;
|
|
3
|
+
}, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<{
|
|
4
|
+
force?: boolean;
|
|
5
|
+
}, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<{
|
|
6
|
+
force?: boolean;
|
|
7
|
+
}, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { existsSync } from 'fs';
|
|
2
|
+
import { join } from 'path';
|
|
3
|
+
import { pikkuSessionlessFunc } from '#pikku';
|
|
4
|
+
import { createEmptyManifest, saveManifest, } from '../../utils/contract-versions.js';
|
|
5
|
+
export const pikkuVersionsInit = pikkuSessionlessFunc({
|
|
6
|
+
func: async ({ logger, config }, { force }) => {
|
|
7
|
+
const manifestPath = join(config.outDir, 'versions.json');
|
|
8
|
+
if (existsSync(manifestPath) && !force) {
|
|
9
|
+
logger.error(`Version manifest already exists at ${manifestPath}. Use --force to overwrite.`);
|
|
10
|
+
process.exit(1);
|
|
11
|
+
}
|
|
12
|
+
await saveManifest(manifestPath, createEmptyManifest());
|
|
13
|
+
logger.info(`Version manifest created at ${manifestPath}`);
|
|
14
|
+
},
|
|
15
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pikkuVersionsUpdate: import("#pikku").PikkuFunctionConfig<void, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<void, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { join } from 'path';
|
|
2
|
+
import { pikkuSessionlessFunc } from '#pikku';
|
|
3
|
+
import { ErrorCode } from '@pikku/inspector';
|
|
4
|
+
import { saveManifest } from '../../utils/contract-versions.js';
|
|
5
|
+
export const pikkuVersionsUpdate = pikkuSessionlessFunc({
|
|
6
|
+
func: async ({ logger, config, getInspectorState }) => {
|
|
7
|
+
const manifestPath = join(config.outDir, 'versions.json');
|
|
8
|
+
const visitState = await getInspectorState();
|
|
9
|
+
if (!visitState.manifest.initial) {
|
|
10
|
+
throw new Error(`Version manifest not found at ${manifestPath}. Run 'pikku init' to create one.`);
|
|
11
|
+
}
|
|
12
|
+
const immutabilityErrors = visitState.manifest.errors.filter((e) => e.code === ErrorCode.FUNCTION_VERSION_MODIFIED);
|
|
13
|
+
if (immutabilityErrors.length > 0) {
|
|
14
|
+
const messages = immutabilityErrors.map((e) => `[${e.code}] ${e.message}`);
|
|
15
|
+
throw new Error(messages.join('\n'));
|
|
16
|
+
}
|
|
17
|
+
await saveManifest(manifestPath, visitState.manifest.current);
|
|
18
|
+
logger.debug(`Version manifest updated at ${manifestPath}`);
|
|
19
|
+
},
|
|
20
|
+
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const watch:
|
|
1
|
+
export declare const watch: import("#pikku").PikkuFunctionConfig<void, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<void, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { pikkuVoidFunc } from '
|
|
1
|
+
import { pikkuVoidFunc } from '#pikku';
|
|
2
2
|
import chokidar from 'chokidar';
|
|
3
|
-
import { all } from './all.js';
|
|
4
3
|
export const watch = pikkuVoidFunc({
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
remote: true,
|
|
5
|
+
func: async ({ logger, config }, _data, { rpc }) => {
|
|
7
6
|
const configWatcher = chokidar.watch(config.srcDirectories, {
|
|
8
7
|
ignoreInitial: true,
|
|
9
8
|
ignored: /.*\.gen\.tsx?/,
|
|
@@ -20,7 +19,7 @@ export const watch = pikkuVoidFunc({
|
|
|
20
19
|
const handle = async () => {
|
|
21
20
|
try {
|
|
22
21
|
const start = Date.now();
|
|
23
|
-
await
|
|
22
|
+
await rpc.invoke('all', null);
|
|
24
23
|
logger.info({
|
|
25
24
|
message: `✓ Generated in ${Date.now() - start}ms`,
|
|
26
25
|
type: 'timing',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pikkuFetch: import("#pikku").PikkuFunctionConfig<void, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<void, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { pikkuSessionlessFunc } from '
|
|
2
|
-
import { serializeFetchWrapper } from '
|
|
1
|
+
import { pikkuSessionlessFunc } from '#pikku';
|
|
2
|
+
import { serializeFetchWrapper } from '../../wirings/http/serialize-fetch-wrapper.js';
|
|
3
3
|
import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
|
|
4
4
|
import { writeFileInDir } from '../../../utils/file-writer.js';
|
|
5
5
|
import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
|
|
@@ -8,7 +8,7 @@ export const pikkuFetch = pikkuSessionlessFunc({
|
|
|
8
8
|
const { fetchFile, httpMapDeclarationFile, packageMappings } = config;
|
|
9
9
|
// If fetchFile is not set, clean up any existing file and return
|
|
10
10
|
if (!fetchFile) {
|
|
11
|
-
logger.
|
|
11
|
+
logger.debug({
|
|
12
12
|
message: "Skipping generating fetch wrapper since fetchFile isn't set in the pikku config.",
|
|
13
13
|
type: 'skip',
|
|
14
14
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuNext:
|
|
1
|
+
export declare const pikkuNext: import("#pikku").PikkuFunctionConfig<void, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<void, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { pikkuSessionlessFunc } from '
|
|
1
|
+
import { pikkuSessionlessFunc } from '#pikku';
|
|
2
2
|
import { checkRequiredTypes } from '../../../utils/check-required-types.js';
|
|
3
3
|
import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
|
|
4
4
|
import { writeFileInDir } from '../../../utils/file-writer.js';
|
|
@@ -10,7 +10,7 @@ export const pikkuNext = pikkuSessionlessFunc({
|
|
|
10
10
|
const { nextBackendFile, nextHTTPFile, httpMapDeclarationFile, rpcMapDeclarationFile, packageMappings, fetchFile, } = config;
|
|
11
11
|
// If both files are undefined, clean up any existing files and return
|
|
12
12
|
if (!nextBackendFile && !nextHTTPFile) {
|
|
13
|
-
logger.
|
|
13
|
+
logger.debug({
|
|
14
14
|
message: 'Skipping generating nextjs wrapper since nextjs outfile is not defined.',
|
|
15
15
|
type: 'skip',
|
|
16
16
|
});
|
|
@@ -24,21 +24,19 @@ export const pikkuNext = pikkuSessionlessFunc({
|
|
|
24
24
|
throw new Error('rpcMapDeclarationFile is required in pikku config in order for nextJS wrapper to work');
|
|
25
25
|
}
|
|
26
26
|
if (nextBackendFile) {
|
|
27
|
-
// Check for required types
|
|
28
27
|
checkRequiredTypes(visitState.filesAndMethodsErrors, {
|
|
29
28
|
config: true,
|
|
30
29
|
singletonServicesFactory: true,
|
|
31
|
-
wireServicesFactory: true,
|
|
32
30
|
});
|
|
33
31
|
const { pikkuConfigFactory, singletonServicesFactory, wireServicesFactory, } = visitState.filesAndMethods;
|
|
34
|
-
if (!pikkuConfigFactory ||
|
|
35
|
-
!singletonServicesFactory ||
|
|
36
|
-
!wireServicesFactory) {
|
|
32
|
+
if (!pikkuConfigFactory || !singletonServicesFactory) {
|
|
37
33
|
throw new Error('Required types not found');
|
|
38
34
|
}
|
|
39
35
|
const pikkuConfigImport = `import { ${pikkuConfigFactory.variable} as createConfig } from '${getFileImportRelativePath(nextBackendFile, pikkuConfigFactory.file, packageMappings)}'`;
|
|
40
36
|
const singletonServicesImport = `import { ${singletonServicesFactory.variable} as createSingletonServices } from '${getFileImportRelativePath(nextBackendFile, singletonServicesFactory.file, packageMappings)}'`;
|
|
41
|
-
const wireServicesImport =
|
|
37
|
+
const wireServicesImport = wireServicesFactory
|
|
38
|
+
? `import { ${wireServicesFactory.variable} as createWireServices } from '${getFileImportRelativePath(nextBackendFile, wireServicesFactory.file, packageMappings)}'`
|
|
39
|
+
: '';
|
|
42
40
|
const bootstrapPath = getFileImportRelativePath(nextBackendFile, config.bootstrapFile, packageMappings);
|
|
43
41
|
const routesMapDeclarationPath = getFileImportRelativePath(nextBackendFile, httpMapDeclarationFile, packageMappings);
|
|
44
42
|
const rpcMapDeclarationPath = getFileImportRelativePath(nextBackendFile, rpcMapDeclarationFile, packageMappings);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const serializeNextJsBackendWrapper: (bootstrapPath: string, routesMapPath: string, rpcMapPath: string, configImport: string, singleServicesFactoryImport: string, wireServicesImport: string) => string;
|
|
1
|
+
export declare const serializeNextJsBackendWrapper: (bootstrapPath: string, routesMapPath: string, rpcMapPath: string, configImport: string, singleServicesFactoryImport: string, wireServicesImport: string | undefined) => string;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export const serializeNextJsBackendWrapper = (bootstrapPath, routesMapPath, rpcMapPath, configImport, singleServicesFactoryImport, wireServicesImport) => {
|
|
2
|
+
const hasWireServices = !!wireServicesImport;
|
|
2
3
|
return `'server-only'
|
|
3
4
|
|
|
4
5
|
/**
|
|
@@ -8,13 +9,13 @@ export const serializeNextJsBackendWrapper = (bootstrapPath, routesMapPath, rpcM
|
|
|
8
9
|
import { PikkuNextJS } from '@pikku/next'
|
|
9
10
|
import { NextRequest } from 'next/server.js'
|
|
10
11
|
import type { HTTPWiringsMap, HTTPWiringHandlerOf, HTTPWiringsWithMethod } from '${routesMapPath}'
|
|
11
|
-
import type {
|
|
12
|
+
import type { FlattenedRPCMap } from '${rpcMapPath}'
|
|
12
13
|
|
|
13
14
|
type RouteContext = { params: Promise<Record<string, string | string[]>> }
|
|
14
15
|
|
|
15
16
|
${configImport}
|
|
16
17
|
${singleServicesFactoryImport}
|
|
17
|
-
${wireServicesImport}
|
|
18
|
+
${wireServicesImport ? wireServicesImport : ''}
|
|
18
19
|
|
|
19
20
|
import '${bootstrapPath}'
|
|
20
21
|
|
|
@@ -25,17 +26,12 @@ export const removeAPIPrefix = (enable: boolean) => {
|
|
|
25
26
|
_removeAPIPrefix = enable
|
|
26
27
|
}
|
|
27
28
|
|
|
28
|
-
/**
|
|
29
|
-
* Initializes and returns an instance of PikkuNextJS with helper methods for handling route requests.
|
|
30
|
-
*
|
|
31
|
-
* @returns An object containing methods for making dynamic and static action requests, as well as session retrieval.
|
|
32
|
-
*/
|
|
33
29
|
export const pikku = (_options?: any) => {
|
|
34
30
|
if (!_pikku) {
|
|
35
31
|
_pikku = new PikkuNextJS(
|
|
36
32
|
createConfig as any,
|
|
37
33
|
createSingletonServices as any,
|
|
38
|
-
createWireServices
|
|
34
|
+
${hasWireServices ? 'createWireServices' : 'undefined'}
|
|
39
35
|
)
|
|
40
36
|
}
|
|
41
37
|
|
|
@@ -88,14 +84,16 @@ export const pikku = (_options?: any) => {
|
|
|
88
84
|
*
|
|
89
85
|
* @template Route - The route key with the POST method.
|
|
90
86
|
* @param route - The route identifier.
|
|
91
|
-
* @param data - The input data for the POST request
|
|
87
|
+
* @param data - The input data for the POST request (required if input type is defined).
|
|
92
88
|
* @returns A promise that resolves to the output of the POST handler.
|
|
93
89
|
*/
|
|
94
90
|
const dynamicPost = <Route extends HTTPWiringsWithMethod<'POST'>>(
|
|
95
91
|
route: Route,
|
|
96
|
-
|
|
92
|
+
...args: HTTPWiringHandlerOf<Route, 'POST'>['input'] extends null | undefined
|
|
93
|
+
? [data?: HTTPWiringHandlerOf<Route, 'POST'>['input']]
|
|
94
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'POST'>['input']>]
|
|
97
95
|
): Promise<HTTPWiringHandlerOf<Route, 'POST'>['output']> => {
|
|
98
|
-
return dynamicActionRequest(route, 'POST',
|
|
96
|
+
return dynamicActionRequest(route, 'POST', args[0] ?? null)
|
|
99
97
|
}
|
|
100
98
|
|
|
101
99
|
/**
|
|
@@ -103,14 +101,16 @@ export const pikku = (_options?: any) => {
|
|
|
103
101
|
*
|
|
104
102
|
* @template Route - The route key with the GET method.
|
|
105
103
|
* @param route - The route identifier.
|
|
106
|
-
* @param data - The input data for the GET request
|
|
104
|
+
* @param data - The input data for the GET request (required if input type is defined).
|
|
107
105
|
* @returns A promise that resolves to the output of the GET handler.
|
|
108
106
|
*/
|
|
109
107
|
const dynamicGet = <Route extends HTTPWiringsWithMethod<'GET'>>(
|
|
110
108
|
route: Route,
|
|
111
|
-
|
|
109
|
+
...args: HTTPWiringHandlerOf<Route, 'GET'>['input'] extends null | undefined
|
|
110
|
+
? [data?: HTTPWiringHandlerOf<Route, 'GET'>['input']]
|
|
111
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'GET'>['input']>]
|
|
112
112
|
): Promise<HTTPWiringHandlerOf<Route, 'GET'>['output']> => {
|
|
113
|
-
return dynamicActionRequest(route, 'GET',
|
|
113
|
+
return dynamicActionRequest(route, 'GET', args[0] ?? null)
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
/**
|
|
@@ -118,14 +118,16 @@ export const pikku = (_options?: any) => {
|
|
|
118
118
|
*
|
|
119
119
|
* @template Route - The route key with the PATCH method.
|
|
120
120
|
* @param route - The route identifier.
|
|
121
|
-
* @param data - The input data for the PATCH request
|
|
121
|
+
* @param data - The input data for the PATCH request (required if input type is defined).
|
|
122
122
|
* @returns A promise that resolves to the output of the PATCH handler.
|
|
123
123
|
*/
|
|
124
124
|
const dynamicPatch = <Route extends HTTPWiringsWithMethod<'PATCH'>>(
|
|
125
125
|
route: Route,
|
|
126
|
-
|
|
126
|
+
...args: HTTPWiringHandlerOf<Route, 'PATCH'>['input'] extends null | undefined
|
|
127
|
+
? [data?: HTTPWiringHandlerOf<Route, 'PATCH'>['input']]
|
|
128
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'PATCH'>['input']>]
|
|
127
129
|
): Promise<HTTPWiringHandlerOf<Route, 'PATCH'>['output']> => {
|
|
128
|
-
return dynamicActionRequest(route, 'PATCH',
|
|
130
|
+
return dynamicActionRequest(route, 'PATCH', args[0] ?? null)
|
|
129
131
|
}
|
|
130
132
|
|
|
131
133
|
/**
|
|
@@ -133,14 +135,16 @@ export const pikku = (_options?: any) => {
|
|
|
133
135
|
*
|
|
134
136
|
* @template Route - The route key with the DELETE method.
|
|
135
137
|
* @param route - The route identifier.
|
|
136
|
-
* @param data - The input data for the DELETE request
|
|
138
|
+
* @param data - The input data for the DELETE request (required if input type is defined).
|
|
137
139
|
* @returns A promise that resolves to the output of the DELETE handler.
|
|
138
140
|
*/
|
|
139
141
|
const dynamicDel = <Route extends HTTPWiringsWithMethod<'DELETE'>>(
|
|
140
142
|
route: Route,
|
|
141
|
-
|
|
143
|
+
...args: HTTPWiringHandlerOf<Route, 'DELETE'>['input'] extends null | undefined
|
|
144
|
+
? [data?: HTTPWiringHandlerOf<Route, 'DELETE'>['input']]
|
|
145
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'DELETE'>['input']>]
|
|
142
146
|
): Promise<HTTPWiringHandlerOf<Route, 'DELETE'>['output']> => {
|
|
143
|
-
return dynamicActionRequest(route, 'DELETE',
|
|
147
|
+
return dynamicActionRequest(route, 'DELETE', args[0] ?? null)
|
|
144
148
|
}
|
|
145
149
|
|
|
146
150
|
// Static Requests
|
|
@@ -150,14 +154,16 @@ export const pikku = (_options?: any) => {
|
|
|
150
154
|
*
|
|
151
155
|
* @template Route - The route key with the POST method.
|
|
152
156
|
* @param route - The route identifier.
|
|
153
|
-
* @param data - The input data for the POST request
|
|
157
|
+
* @param data - The input data for the POST request (required if input type is defined).
|
|
154
158
|
* @returns A promise that resolves to the output of the POST handler.
|
|
155
159
|
*/
|
|
156
160
|
const staticPost = <Route extends HTTPWiringsWithMethod<'POST'>>(
|
|
157
161
|
route: Route,
|
|
158
|
-
|
|
162
|
+
...args: HTTPWiringHandlerOf<Route, 'POST'>['input'] extends null | undefined
|
|
163
|
+
? [data?: HTTPWiringHandlerOf<Route, 'POST'>['input']]
|
|
164
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'POST'>['input']>]
|
|
159
165
|
): Promise<HTTPWiringHandlerOf<Route, 'POST'>['output']> => {
|
|
160
|
-
return staticActionRequest(route, 'POST',
|
|
166
|
+
return staticActionRequest(route, 'POST', args[0] ?? null)
|
|
161
167
|
}
|
|
162
168
|
|
|
163
169
|
/**
|
|
@@ -165,49 +171,49 @@ export const pikku = (_options?: any) => {
|
|
|
165
171
|
*
|
|
166
172
|
* @template Route - The route key with the GET method.
|
|
167
173
|
* @param route - The route identifier.
|
|
168
|
-
* @param data - The input data for the GET request
|
|
174
|
+
* @param data - The input data for the GET request (required if input type is defined).
|
|
169
175
|
* @returns A promise that resolves to the output of the GET handler.
|
|
170
176
|
*/
|
|
171
177
|
const staticGet = <Route extends HTTPWiringsWithMethod<'GET'>>(
|
|
172
178
|
route: Route,
|
|
173
|
-
|
|
179
|
+
...args: HTTPWiringHandlerOf<Route, 'GET'>['input'] extends null | undefined
|
|
180
|
+
? [data?: HTTPWiringHandlerOf<Route, 'GET'>['input']]
|
|
181
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'GET'>['input']>]
|
|
174
182
|
): Promise<HTTPWiringHandlerOf<Route, 'GET'>['output']> => {
|
|
175
|
-
return staticActionRequest(route, 'GET',
|
|
183
|
+
return staticActionRequest(route, 'GET', args[0] ?? null)
|
|
176
184
|
}
|
|
177
185
|
|
|
178
186
|
// RPC Requests
|
|
179
187
|
|
|
180
|
-
/**
|
|
181
|
-
* Type definition for RPC invocation with dynamic context.
|
|
182
|
-
*/
|
|
183
|
-
type RPCInvoke = <Name extends keyof RPCMap>(
|
|
184
|
-
name: Name,
|
|
185
|
-
data: RPCMap[Name]['input']
|
|
186
|
-
) => Promise<RPCMap[Name]['output']>
|
|
187
|
-
|
|
188
188
|
/**
|
|
189
189
|
* Makes a dynamic RPC request.
|
|
190
190
|
*
|
|
191
|
-
* @template Name - The RPC function name from the
|
|
191
|
+
* @template Name - The RPC function name from the FlattenedRPCMap.
|
|
192
192
|
* @param name - The RPC function identifier.
|
|
193
|
-
* @param data - The input data for the RPC request.
|
|
193
|
+
* @param data - The input data for the RPC request (required if input type is defined).
|
|
194
194
|
* @returns A promise that resolves to the output of the RPC handler.
|
|
195
195
|
*/
|
|
196
|
-
const rpc
|
|
197
|
-
|
|
196
|
+
const rpc = async <Name extends keyof FlattenedRPCMap>(
|
|
197
|
+
rpcName: Name,
|
|
198
|
+
data: FlattenedRPCMap[Name]['input']
|
|
199
|
+
): Promise<FlattenedRPCMap[Name]['output']> => {
|
|
200
|
+
return dynamicActionRequest('/rpc/:rpcName' as '/rpc/:rpcName', 'POST', { rpcName, data: data ?? null }) as unknown as FlattenedRPCMap[Name]['output']
|
|
198
201
|
}
|
|
199
202
|
|
|
200
203
|
/**
|
|
201
204
|
* Makes a static RPC request.
|
|
202
205
|
* Note: In HTTP wrapper context, both rpc and staticRPC behave the same way.
|
|
203
206
|
*
|
|
204
|
-
* @template Name - The RPC function name from the
|
|
207
|
+
* @template Name - The RPC function name from the FlattenedRPCMap.
|
|
205
208
|
* @param name - The RPC function identifier.
|
|
206
|
-
* @param data - The input data for the RPC request.
|
|
209
|
+
* @param data - The input data for the RPC request (required if input type is defined).
|
|
207
210
|
* @returns A promise that resolves to the output of the RPC handler.
|
|
208
211
|
*/
|
|
209
|
-
const staticRPC
|
|
210
|
-
|
|
212
|
+
const staticRPC = async <Name extends keyof FlattenedRPCMap>(
|
|
213
|
+
rpcName: Name,
|
|
214
|
+
data: FlattenedRPCMap[Name]['input']
|
|
215
|
+
): Promise<FlattenedRPCMap[Name]['output']> => {
|
|
216
|
+
return staticActionRequest('/rpc/:rpcName' as '/rpc/:rpcName', 'POST', { rpcName, data: data ?? null }) as unknown as FlattenedRPCMap[Name]['output']
|
|
211
217
|
}
|
|
212
218
|
|
|
213
219
|
return {
|
|
@@ -242,7 +248,7 @@ export const pikkuAPIRequest = (
|
|
|
242
248
|
_pikku = new PikkuNextJS(
|
|
243
249
|
createConfig as any,
|
|
244
250
|
createSingletonServices as any,
|
|
245
|
-
createWireServices
|
|
251
|
+
${hasWireServices ? 'createWireServices' : 'undefined'}
|
|
246
252
|
)
|
|
247
253
|
}
|
|
248
254
|
if (_removeAPIPrefix) {
|
|
@@ -7,7 +7,7 @@ export const serializeNextJsHTTPWrapper = (routesMapPath, rpcMapPath, pikkuFetch
|
|
|
7
7
|
*/
|
|
8
8
|
import { CorePikkuFetchOptions } from '@pikku/fetch'
|
|
9
9
|
import type { HTTPWiringsMap, HTTPWiringHandlerOf, HTTPWiringsWithMethod } from '${routesMapPath}'
|
|
10
|
-
import type {
|
|
10
|
+
import type { FlattenedRPCMap } from '${rpcMapPath}'
|
|
11
11
|
import { PikkuFetch } from '${pikkuFetchImport}'
|
|
12
12
|
|
|
13
13
|
let _pikku: PikkuFetch | undefined
|
|
@@ -60,14 +60,16 @@ export const pikku = (options?: CorePikkuFetchOptions) => {
|
|
|
60
60
|
*
|
|
61
61
|
* @template Route - The route key with the POST method.
|
|
62
62
|
* @param route - The route identifier.
|
|
63
|
-
* @param data - The input data for the POST request
|
|
63
|
+
* @param data - The input data for the POST request (required if input type is defined).
|
|
64
64
|
* @returns A promise that resolves to the output of the POST handler.
|
|
65
65
|
*/
|
|
66
66
|
const dynamicPost = <Route extends HTTPWiringsWithMethod<'POST'>>(
|
|
67
67
|
route: Route,
|
|
68
|
-
|
|
68
|
+
...args: HTTPWiringHandlerOf<Route, 'POST'>['input'] extends null | undefined
|
|
69
|
+
? [data?: HTTPWiringHandlerOf<Route, 'POST'>['input']]
|
|
70
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'POST'>['input']>]
|
|
69
71
|
): Promise<HTTPWiringHandlerOf<Route, 'POST'>['output']> => {
|
|
70
|
-
return dynamicActionRequest(route, 'POST',
|
|
72
|
+
return dynamicActionRequest(route, 'POST', args[0] ?? null)
|
|
71
73
|
}
|
|
72
74
|
|
|
73
75
|
/**
|
|
@@ -75,14 +77,16 @@ export const pikku = (options?: CorePikkuFetchOptions) => {
|
|
|
75
77
|
*
|
|
76
78
|
* @template Route - The route key with the GET method.
|
|
77
79
|
* @param route - The route identifier.
|
|
78
|
-
* @param data - The input data for the GET request
|
|
80
|
+
* @param data - The input data for the GET request (required if input type is defined).
|
|
79
81
|
* @returns A promise that resolves to the output of the GET handler.
|
|
80
82
|
*/
|
|
81
83
|
const dynamicGet = <Route extends HTTPWiringsWithMethod<'GET'>>(
|
|
82
84
|
route: Route,
|
|
83
|
-
|
|
85
|
+
...args: HTTPWiringHandlerOf<Route, 'GET'>['input'] extends null | undefined
|
|
86
|
+
? [data?: HTTPWiringHandlerOf<Route, 'GET'>['input']]
|
|
87
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'GET'>['input']>]
|
|
84
88
|
): Promise<HTTPWiringHandlerOf<Route, 'GET'>['output']> => {
|
|
85
|
-
return dynamicActionRequest(route, 'GET',
|
|
89
|
+
return dynamicActionRequest(route, 'GET', args[0] ?? null)
|
|
86
90
|
}
|
|
87
91
|
|
|
88
92
|
/**
|
|
@@ -90,14 +94,16 @@ export const pikku = (options?: CorePikkuFetchOptions) => {
|
|
|
90
94
|
*
|
|
91
95
|
* @template Route - The route key with the PATCH method.
|
|
92
96
|
* @param route - The route identifier.
|
|
93
|
-
* @param data - The input data for the PATCH request
|
|
97
|
+
* @param data - The input data for the PATCH request (required if input type is defined).
|
|
94
98
|
* @returns A promise that resolves to the output of the PATCH handler.
|
|
95
99
|
*/
|
|
96
100
|
const dynamicPatch = <Route extends HTTPWiringsWithMethod<'PATCH'>>(
|
|
97
101
|
route: Route,
|
|
98
|
-
|
|
102
|
+
...args: HTTPWiringHandlerOf<Route, 'PATCH'>['input'] extends null | undefined
|
|
103
|
+
? [data?: HTTPWiringHandlerOf<Route, 'PATCH'>['input']]
|
|
104
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'PATCH'>['input']>]
|
|
99
105
|
): Promise<HTTPWiringHandlerOf<Route, 'PATCH'>['output']> => {
|
|
100
|
-
return dynamicActionRequest(route, 'PATCH',
|
|
106
|
+
return dynamicActionRequest(route, 'PATCH', args[0] ?? null)
|
|
101
107
|
}
|
|
102
108
|
|
|
103
109
|
/**
|
|
@@ -105,14 +111,16 @@ export const pikku = (options?: CorePikkuFetchOptions) => {
|
|
|
105
111
|
*
|
|
106
112
|
* @template Route - The route key with the DELETE method.
|
|
107
113
|
* @param route - The route identifier.
|
|
108
|
-
* @param data - The input data for the DELETE request
|
|
114
|
+
* @param data - The input data for the DELETE request (required if input type is defined).
|
|
109
115
|
* @returns A promise that resolves to the output of the DELETE handler.
|
|
110
116
|
*/
|
|
111
117
|
const dynamicDel = <Route extends HTTPWiringsWithMethod<'DELETE'>>(
|
|
112
118
|
route: Route,
|
|
113
|
-
|
|
119
|
+
...args: HTTPWiringHandlerOf<Route, 'DELETE'>['input'] extends null | undefined
|
|
120
|
+
? [data?: HTTPWiringHandlerOf<Route, 'DELETE'>['input']]
|
|
121
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'DELETE'>['input']>]
|
|
114
122
|
): Promise<HTTPWiringHandlerOf<Route, 'DELETE'>['output']> => {
|
|
115
|
-
return dynamicActionRequest(route, 'DELETE',
|
|
123
|
+
return dynamicActionRequest(route, 'DELETE', args[0] ?? null)
|
|
116
124
|
}
|
|
117
125
|
|
|
118
126
|
// Static Requests
|
|
@@ -122,14 +130,16 @@ export const pikku = (options?: CorePikkuFetchOptions) => {
|
|
|
122
130
|
*
|
|
123
131
|
* @template Route - The route key with the POST method.
|
|
124
132
|
* @param route - The route identifier.
|
|
125
|
-
* @param data - The input data for the POST request
|
|
133
|
+
* @param data - The input data for the POST request (required if input type is defined).
|
|
126
134
|
* @returns A promise that resolves to the output of the POST handler.
|
|
127
135
|
*/
|
|
128
136
|
const staticPost = <Route extends HTTPWiringsWithMethod<'POST'>>(
|
|
129
137
|
route: Route,
|
|
130
|
-
|
|
138
|
+
...args: HTTPWiringHandlerOf<Route, 'POST'>['input'] extends null | undefined
|
|
139
|
+
? [data?: HTTPWiringHandlerOf<Route, 'POST'>['input']]
|
|
140
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'POST'>['input']>]
|
|
131
141
|
): Promise<HTTPWiringHandlerOf<Route, 'POST'>['output']> => {
|
|
132
|
-
return staticActionRequest(route, 'POST',
|
|
142
|
+
return staticActionRequest(route, 'POST', args[0] ?? null)
|
|
133
143
|
}
|
|
134
144
|
|
|
135
145
|
/**
|
|
@@ -137,49 +147,49 @@ export const pikku = (options?: CorePikkuFetchOptions) => {
|
|
|
137
147
|
*
|
|
138
148
|
* @template Route - The route key with the GET method.
|
|
139
149
|
* @param route - The route identifier.
|
|
140
|
-
* @param data - The input data for the GET request
|
|
150
|
+
* @param data - The input data for the GET request (required if input type is defined).
|
|
141
151
|
* @returns A promise that resolves to the output of the GET handler.
|
|
142
152
|
*/
|
|
143
153
|
const staticGet = <Route extends HTTPWiringsWithMethod<'GET'>>(
|
|
144
154
|
route: Route,
|
|
145
|
-
|
|
155
|
+
...args: HTTPWiringHandlerOf<Route, 'GET'>['input'] extends null | undefined
|
|
156
|
+
? [data?: HTTPWiringHandlerOf<Route, 'GET'>['input']]
|
|
157
|
+
: [data: NonNullable<HTTPWiringHandlerOf<Route, 'GET'>['input']>]
|
|
146
158
|
): Promise<HTTPWiringHandlerOf<Route, 'GET'>['output']> => {
|
|
147
|
-
return staticActionRequest(route, 'GET',
|
|
159
|
+
return staticActionRequest(route, 'GET', args[0] ?? null)
|
|
148
160
|
}
|
|
149
161
|
|
|
150
162
|
// RPC Requests
|
|
151
163
|
|
|
152
|
-
/**
|
|
153
|
-
* Type definition for RPC invocation.
|
|
154
|
-
*/
|
|
155
|
-
type RPCInvoke = <Name extends keyof RPCMap>(
|
|
156
|
-
name: Name,
|
|
157
|
-
data: RPCMap[Name]['input']
|
|
158
|
-
) => Promise<RPCMap[Name]['output']>
|
|
159
|
-
|
|
160
164
|
/**
|
|
161
165
|
* Makes a dynamic RPC request.
|
|
162
166
|
*
|
|
163
|
-
* @template Name - The RPC function name from the
|
|
167
|
+
* @template Name - The RPC function name from the FlattenedRPCMap.
|
|
164
168
|
* @param name - The RPC function identifier.
|
|
165
|
-
* @param data - The input data for the RPC request.
|
|
169
|
+
* @param data - The input data for the RPC request (required if input type is defined).
|
|
166
170
|
* @returns A promise that resolves to the output of the RPC handler.
|
|
167
171
|
*/
|
|
168
|
-
const rpc
|
|
169
|
-
|
|
172
|
+
const rpc = async <Name extends keyof FlattenedRPCMap>(
|
|
173
|
+
rpcName: Name,
|
|
174
|
+
data: FlattenedRPCMap[Name]['input']
|
|
175
|
+
): Promise<FlattenedRPCMap[Name]['output']> => {
|
|
176
|
+
return dynamicActionRequest('/rpc/:rpcName' as '/rpc/:rpcName', 'POST', { rpcName, data: data ?? null }) as unknown as FlattenedRPCMap[Name]['output']
|
|
170
177
|
}
|
|
171
178
|
|
|
172
179
|
/**
|
|
173
180
|
* Makes a static RPC request.
|
|
174
181
|
* Note: In HTTP wrapper context, both rpc and rpcStatic behave the same way.
|
|
175
182
|
*
|
|
176
|
-
* @template Name - The RPC function name from the
|
|
183
|
+
* @template Name - The RPC function name from the FlattenedRPCMap.
|
|
177
184
|
* @param name - The RPC function identifier.
|
|
178
|
-
* @param data - The input data for the RPC request.
|
|
185
|
+
* @param data - The input data for the RPC request (required if input type is defined).
|
|
179
186
|
* @returns A promise that resolves to the output of the RPC handler.
|
|
180
187
|
*/
|
|
181
|
-
const staticRPC
|
|
182
|
-
|
|
188
|
+
const staticRPC = async <Name extends keyof FlattenedRPCMap>(
|
|
189
|
+
rpcName: Name,
|
|
190
|
+
data: FlattenedRPCMap[Name]['input']
|
|
191
|
+
): Promise<FlattenedRPCMap[Name]['output']> => {
|
|
192
|
+
return staticActionRequest('/rpc/:rpcName' as '/rpc/:rpcName', 'POST', { rpcName, data: data ?? null }) as unknown as FlattenedRPCMap[Name]['output']
|
|
183
193
|
}
|
|
184
194
|
|
|
185
195
|
return {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pikkuWebSocketTyped: import("#pikku").PikkuFunctionConfig<void, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<void, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
package/dist/src/functions/{wirings/channels → runtimes/websocket}/pikku-command-websocket-typed.js
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { pikkuSessionlessFunc } from '
|
|
1
|
+
import { pikkuSessionlessFunc } from '#pikku';
|
|
2
2
|
import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
|
|
3
3
|
import { writeFileInDir } from '../../../utils/file-writer.js';
|
|
4
4
|
import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
|
|
@@ -8,7 +8,7 @@ export const pikkuWebSocketTyped = pikkuSessionlessFunc({
|
|
|
8
8
|
const { websocketFile, channelsMapDeclarationFile, packageMappings } = config;
|
|
9
9
|
// If websocketFile is not set, clean up any existing file and return
|
|
10
10
|
if (!websocketFile) {
|
|
11
|
-
logger.
|
|
11
|
+
logger.debug({
|
|
12
12
|
message: "Skipping generating websocket wrapper since websocketFile isn't set in the pikku config.",
|
|
13
13
|
type: 'skip',
|
|
14
14
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pikkuAIAgentTypes: import("#pikku").PikkuFunctionConfig<void, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<void, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { pikkuSessionlessFunc } from '#pikku';
|
|
2
|
+
import { writeFileInDir } from '../../../utils/file-writer.js';
|
|
3
|
+
import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
|
|
4
|
+
import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
|
|
5
|
+
import { serializeAIAgentTypes } from './serialize-ai-agent-types.js';
|
|
6
|
+
export const pikkuAIAgentTypes = pikkuSessionlessFunc({
|
|
7
|
+
func: async ({ logger, config }) => {
|
|
8
|
+
const { agentTypesFile, functionTypesFile, packageMappings } = config;
|
|
9
|
+
const functionTypesImportPath = getFileImportRelativePath(agentTypesFile, functionTypesFile, packageMappings);
|
|
10
|
+
const content = serializeAIAgentTypes(functionTypesImportPath);
|
|
11
|
+
await writeFileInDir(logger, agentTypesFile, content);
|
|
12
|
+
},
|
|
13
|
+
middleware: [
|
|
14
|
+
logCommandInfoAndTime({
|
|
15
|
+
commandStart: 'Creating AI agent types',
|
|
16
|
+
commandEnd: 'Created AI agent types',
|
|
17
|
+
}),
|
|
18
|
+
],
|
|
19
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pikkuAIAgent: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean | undefined, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|