@pikku/cli 0.12.0 → 0.12.2
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/assets/index-DRJQtv3c.js +676 -0
- package/console-app/index.html +6 -1
- package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +30 -3
- package/dist/.pikku/agent/pikku-agent-types.gen.js +13 -0
- package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.js +2 -2
- package/dist/.pikku/agent/pikku-agent-wirings.gen.d.ts +1 -1
- package/dist/.pikku/agent/pikku-agent-wirings.gen.js +1 -1
- package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
- package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
- package/dist/.pikku/channel/pikku-channels-meta.gen.js +2 -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 +77 -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 +1 -1
- package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +2 -2
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +280 -10
- 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 -1
- package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
- package/dist/.pikku/console/pikku-node-types.gen.d.ts +1 -1
- package/dist/.pikku/function/pikku-function-types.gen.d.ts +14 -11
- package/dist/.pikku/function/pikku-function-types.gen.js +25 -13
- package/dist/.pikku/function/pikku-functions-meta.gen.js +2 -2
- package/dist/.pikku/function/pikku-functions-meta.gen.json +426 -93
- package/dist/.pikku/function/pikku-functions.gen.js +5 -3
- package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
- package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
- package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +2 -2
- 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 +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
- package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +2 -2
- package/dist/.pikku/mcp/pikku-mcp-wirings.gen.d.ts +1 -1
- package/dist/.pikku/mcp/pikku-mcp-wirings.gen.js +1 -1
- package/dist/.pikku/pikku-bootstrap.gen.js +2 -2
- package/dist/.pikku/pikku-services.gen.d.ts +2 -1
- package/dist/.pikku/pikku-services.gen.js +1 -0
- package/dist/.pikku/pikku-types.gen.d.ts +1 -1
- package/dist/.pikku/pikku-types.gen.js +1 -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 +1 -1
- 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.js +1 -1
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +2 -2
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +16 -2
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
- 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 +15 -3
- package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/PikkuGatewayOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuNewAddonInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuNewFunctionInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuNewMiddlewareInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuNewPermissionInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuNewWiringInput.schema.json +1 -0
- package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
- package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
- package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
- package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
- package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
- package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +2 -2
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
- package/dist/src/cli.wiring.js +236 -9
- package/dist/src/functions/commands/all.js +13 -8
- package/dist/src/functions/commands/enable.d.ts +4 -0
- package/dist/src/functions/commands/enable.js +39 -0
- package/dist/src/functions/commands/info.d.ts +9 -0
- package/dist/src/functions/commands/info.js +283 -0
- package/dist/src/functions/commands/new-addon.d.ts +34 -0
- package/dist/src/functions/commands/new-addon.js +636 -0
- package/dist/src/functions/commands/new-function.d.ts +10 -0
- package/dist/src/functions/commands/new-function.js +79 -0
- package/dist/src/functions/commands/new-middleware.d.ts +10 -0
- package/dist/src/functions/commands/new-middleware.js +48 -0
- package/dist/src/functions/commands/new-permission.d.ts +10 -0
- package/dist/src/functions/commands/new-permission.js +45 -0
- package/dist/src/functions/commands/new-wiring.d.ts +10 -0
- package/dist/src/functions/commands/new-wiring.js +102 -0
- package/dist/src/functions/commands/pikku-command-bootstrap.js +11 -40
- package/dist/src/functions/commands/versions-check.js +85 -3
- package/dist/src/functions/commands/versions-update.js +1 -1
- package/dist/src/functions/runtimes/fetch/index.js +2 -1
- package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +4 -1
- package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.js +0 -4
- package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.js +2 -1
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.js +3 -2
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.js +5 -5
- package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.js +3 -5
- package/dist/src/functions/wirings/ai-agent/serialize-agent-map.d.ts +1 -1
- package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.d.ts +1 -1
- package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.js +48 -3
- package/dist/src/functions/wirings/ai-agent/serialize-public-agent.js +30 -52
- package/dist/src/functions/wirings/channels/pikku-channels.js +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +2 -2
- package/dist/src/functions/wirings/channels/pikku-command-channels.js +1 -1
- package/dist/src/functions/wirings/channels/serialize-typed-channel-map.d.ts +4 -4
- package/dist/src/functions/wirings/cli/pikku-command-cli.js +1 -1
- package/dist/src/functions/wirings/cli/serialize-channel-cli-client.d.ts +2 -2
- package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +1 -1
- package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.d.ts +1 -1
- package/dist/src/functions/wirings/console/pikku-command-console-functions.js +4 -5
- package/dist/src/functions/wirings/console/pikku-command-nodes-meta.js +2 -2
- package/dist/src/functions/wirings/console/serialize-console-functions.d.ts +1 -1
- package/dist/src/functions/wirings/console/serialize-console-functions.js +18 -157
- package/dist/src/functions/wirings/functions/pikku-command-addon-types.d.ts +1 -0
- package/dist/src/functions/wirings/functions/pikku-command-addon-types.js +33 -0
- package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-function-types.js +4 -4
- package/dist/src/functions/wirings/functions/pikku-command-functions.js +8 -14
- package/dist/src/functions/wirings/functions/schemas.js +1 -1
- package/dist/src/functions/wirings/functions/serialize-addon-types.d.ts +1 -0
- package/dist/src/functions/wirings/functions/{serialize-external-types.js → serialize-addon-types.js} +16 -15
- package/dist/src/functions/wirings/functions/serialize-function-imports.d.ts +3 -3
- package/dist/src/functions/wirings/functions/serialize-function-imports.js +3 -3
- package/dist/src/functions/wirings/functions/serialize-function-types.js +28 -14
- 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 +2 -2
- package/dist/src/functions/wirings/gateway/pikku-command-gateway.d.ts +1 -0
- package/dist/src/functions/wirings/gateway/pikku-command-gateway.js +22 -0
- package/dist/src/functions/wirings/http/pikku-command-http-routes.js +1 -1
- package/dist/src/functions/wirings/http/pikku-http-routes.js +1 -1
- package/dist/src/functions/wirings/http/serialize-typed-http-map.d.ts +3 -3
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +1 -1
- package/dist/src/functions/wirings/package/pikku-command-package.js +5 -5
- package/dist/src/functions/wirings/package/serialize-package.js +2 -2
- package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +0 -5
- package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +2 -1
- package/dist/src/functions/wirings/queue/serialize-queue-map.d.ts +2 -2
- package/dist/src/functions/wirings/queue/serialize-queue-meta.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +3 -5
- package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.js +3 -5
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +2 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +6 -6
- package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +2 -4
- package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +25 -16
- package/dist/src/functions/wirings/rpc/serialize-rpc-wrapper.js +43 -7
- package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.d.ts +8 -3
- package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +41 -31
- package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.d.ts +1 -1
- package/dist/src/functions/wirings/secrets/serialize-secrets-types.d.ts +2 -2
- package/dist/src/functions/wirings/triggers/serialize-trigger-meta.d.ts +1 -1
- package/dist/src/functions/wirings/triggers/serialize-trigger-meta.js +2 -2
- package/dist/src/functions/wirings/variables/serialize-variables-types.d.ts +2 -2
- package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +5 -12
- package/dist/src/functions/wirings/workflow/serialize-workflow-map.d.ts +2 -2
- package/dist/src/functions/wirings/workflow/serialize-workflow-meta.js +2 -2
- package/dist/src/services/cli-logger-forwarder.service.d.ts +4 -3
- package/dist/src/services/cli-logger.service.d.ts +3 -2
- package/dist/src/services.d.ts +4 -3
- package/dist/src/services.js +14 -3
- package/dist/src/utils/check-required-types.d.ts +1 -1
- package/dist/src/utils/contract-versions.d.ts +1 -1
- package/dist/src/utils/file-writer.d.ts +6 -1
- package/dist/src/utils/file-writer.js +14 -1
- package/dist/src/utils/generate-bootstrap-file.d.ts +2 -2
- package/dist/src/utils/openapi/codegen.d.ts +19 -0
- package/dist/src/utils/openapi/codegen.js +288 -0
- package/dist/src/utils/openapi/naming.d.ts +30 -0
- package/dist/src/utils/openapi/naming.js +167 -0
- package/dist/src/utils/openapi/parse-openapi.d.ts +36 -0
- package/dist/src/utils/openapi/parse-openapi.js +196 -0
- package/dist/src/utils/openapi/zod-codegen.d.ts +53 -0
- package/dist/src/utils/openapi/zod-codegen.js +251 -0
- package/dist/src/utils/pikku-cli-config.d.ts +2 -2
- package/dist/src/utils/pikku-cli-config.js +51 -30
- package/dist/src/utils/pikku-files-and-methods.d.ts +1 -1
- package/dist/src/utils/pikku-files-and-methods.js +1 -1
- package/dist/src/utils/serialize-import-map.d.ts +2 -2
- package/dist/src/utils/serialize-import-map.js +1 -1
- package/dist/src/utils/serialize-meta-ts.js +1 -1
- package/dist/src/utils/serialize-schemas.d.ts +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/console-app/assets/index-C19L3UJu.js +0 -637
- package/dist/src/functions/wirings/functions/pikku-command-external-types.d.ts +0 -1
- package/dist/src/functions/wirings/functions/pikku-command-external-types.js +0 -33
- package/dist/src/functions/wirings/functions/serialize-external-types.d.ts +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by @pikku/cli@0.12.
|
|
2
|
+
* This file was generated by @pikku/cli@0.12.2
|
|
3
3
|
*/
|
|
4
|
-
import { pikkuState } from '@pikku/core';
|
|
4
|
+
import { pikkuState } from '@pikku/core/internal';
|
|
5
5
|
const workflowsMeta = {};
|
|
6
6
|
pikkuState(null, 'workflows', 'meta', workflowsMeta);
|
package/dist/src/cli.wiring.js
CHANGED
|
@@ -12,6 +12,14 @@ import { watch } from './functions/commands/watch.js';
|
|
|
12
12
|
import { consoleCommand } from './functions/commands/console.js';
|
|
13
13
|
import { pikkuVersionsInit } from './functions/commands/versions-init.js';
|
|
14
14
|
import { pikkuVersionsCheck } from './functions/commands/versions-check.js';
|
|
15
|
+
import { pikkuVersionsUpdate } from './functions/commands/versions-update.js';
|
|
16
|
+
import { pikkuNewFunction } from './functions/commands/new-function.js';
|
|
17
|
+
import { pikkuNewWiring } from './functions/commands/new-wiring.js';
|
|
18
|
+
import { pikkuNewMiddleware } from './functions/commands/new-middleware.js';
|
|
19
|
+
import { pikkuNewPermission } from './functions/commands/new-permission.js';
|
|
20
|
+
import { pikkuNewAddon } from './functions/commands/new-addon.js';
|
|
21
|
+
import { pikkuInfoFunctions, pikkuInfoTags, pikkuInfoMiddleware, pikkuInfoPermissions, } from './functions/commands/info.js';
|
|
22
|
+
import { enableRpc, enableConsole, enableAgent, enableWorkflow, } from './functions/commands/enable.js';
|
|
15
23
|
// import { clientCLIRenderer } from './services.js'
|
|
16
24
|
wireCLI({
|
|
17
25
|
program: 'pikku',
|
|
@@ -119,18 +127,237 @@ wireCLI({
|
|
|
119
127
|
func: pikkuNext,
|
|
120
128
|
description: 'Generate Next.js backend and HTTP wrappers',
|
|
121
129
|
}),
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
130
|
+
enable: {
|
|
131
|
+
description: 'Enable Pikku features',
|
|
132
|
+
subcommands: {
|
|
133
|
+
rpc: pikkuCLICommand({
|
|
134
|
+
func: enableRpc,
|
|
135
|
+
description: 'Enable public RPC endpoint',
|
|
136
|
+
options: {
|
|
137
|
+
'no-auth': {
|
|
138
|
+
description: 'Disable auth requirement',
|
|
139
|
+
default: false,
|
|
140
|
+
},
|
|
141
|
+
},
|
|
142
|
+
}),
|
|
143
|
+
console: pikkuCLICommand({
|
|
144
|
+
func: enableConsole,
|
|
145
|
+
description: 'Enable console functions',
|
|
146
|
+
options: {
|
|
147
|
+
'no-auth': {
|
|
148
|
+
description: 'Disable auth requirement',
|
|
149
|
+
default: false,
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
}),
|
|
153
|
+
agent: pikkuCLICommand({
|
|
154
|
+
func: enableAgent,
|
|
155
|
+
description: 'Enable public agent endpoints',
|
|
156
|
+
options: {
|
|
157
|
+
'no-auth': {
|
|
158
|
+
description: 'Disable auth requirement',
|
|
159
|
+
default: false,
|
|
160
|
+
},
|
|
161
|
+
},
|
|
162
|
+
}),
|
|
163
|
+
workflow: pikkuCLICommand({
|
|
164
|
+
func: enableWorkflow,
|
|
165
|
+
description: 'Enable workflow workers',
|
|
166
|
+
options: {
|
|
167
|
+
'no-auth': {
|
|
168
|
+
description: 'Disable auth requirement',
|
|
169
|
+
default: false,
|
|
170
|
+
},
|
|
171
|
+
},
|
|
172
|
+
}),
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
new: {
|
|
176
|
+
description: 'Scaffold new functions and wirings',
|
|
177
|
+
subcommands: {
|
|
178
|
+
function: pikkuCLICommand({
|
|
179
|
+
func: pikkuNewFunction,
|
|
180
|
+
description: 'Create a new Pikku function file',
|
|
181
|
+
parameters: '<name>',
|
|
182
|
+
options: {
|
|
183
|
+
type: {
|
|
184
|
+
description: 'Function type: func, sessionless (default), or void',
|
|
185
|
+
short: 't',
|
|
186
|
+
default: 'sessionless',
|
|
187
|
+
},
|
|
188
|
+
},
|
|
189
|
+
}),
|
|
190
|
+
wiring: pikkuCLICommand({
|
|
191
|
+
func: pikkuNewWiring,
|
|
192
|
+
description: 'Create a new wiring file',
|
|
193
|
+
parameters: '<name>',
|
|
194
|
+
options: {
|
|
195
|
+
type: {
|
|
196
|
+
description: 'Wiring type: http (default), channel, scheduler, queue, mcp, cli, or trigger',
|
|
197
|
+
short: 't',
|
|
198
|
+
default: 'http',
|
|
199
|
+
},
|
|
200
|
+
},
|
|
201
|
+
}),
|
|
202
|
+
middleware: pikkuCLICommand({
|
|
203
|
+
func: pikkuNewMiddleware,
|
|
204
|
+
description: 'Create a new middleware file',
|
|
205
|
+
parameters: '<name>',
|
|
206
|
+
options: {
|
|
207
|
+
type: {
|
|
208
|
+
description: 'Middleware type: simple (default) or factory',
|
|
209
|
+
short: 't',
|
|
210
|
+
default: 'simple',
|
|
211
|
+
},
|
|
212
|
+
},
|
|
213
|
+
}),
|
|
214
|
+
permission: pikkuCLICommand({
|
|
215
|
+
func: pikkuNewPermission,
|
|
216
|
+
description: 'Create a new permission file',
|
|
217
|
+
parameters: '<name>',
|
|
218
|
+
options: {
|
|
219
|
+
type: {
|
|
220
|
+
description: 'Permission type: simple (default) or factory',
|
|
221
|
+
short: 't',
|
|
222
|
+
default: 'simple',
|
|
223
|
+
},
|
|
224
|
+
},
|
|
225
|
+
}),
|
|
226
|
+
addon: pikkuCLICommand({
|
|
227
|
+
func: pikkuNewAddon,
|
|
228
|
+
description: 'Scaffold a new addon package',
|
|
229
|
+
parameters: '<name>',
|
|
230
|
+
options: {
|
|
231
|
+
displayName: {
|
|
232
|
+
description: 'Human-readable display name (defaults to PascalCase of name)',
|
|
233
|
+
},
|
|
234
|
+
description: {
|
|
235
|
+
description: 'Package description (defaults to "{displayName} integration for Pikku")',
|
|
236
|
+
},
|
|
237
|
+
category: {
|
|
238
|
+
description: 'Forge category (defaults to "General")',
|
|
239
|
+
default: 'General',
|
|
240
|
+
},
|
|
241
|
+
dir: {
|
|
242
|
+
description: 'Override output directory (defaults to scaffold.addonDir or cwd)',
|
|
243
|
+
short: 'd',
|
|
244
|
+
},
|
|
245
|
+
secret: {
|
|
246
|
+
description: 'Include secret schema file',
|
|
247
|
+
default: false,
|
|
248
|
+
},
|
|
249
|
+
variable: {
|
|
250
|
+
description: 'Include variable definition file',
|
|
251
|
+
default: false,
|
|
252
|
+
},
|
|
253
|
+
oauth: {
|
|
254
|
+
description: 'Include OAuth2 credential wiring and OAuth2Client-based API service',
|
|
255
|
+
default: false,
|
|
256
|
+
},
|
|
257
|
+
test: {
|
|
258
|
+
description: 'Include test harness (default: true)',
|
|
259
|
+
default: true,
|
|
260
|
+
},
|
|
261
|
+
openapi: {
|
|
262
|
+
description: 'Path to OpenAPI YAML/JSON spec to generate functions from',
|
|
263
|
+
},
|
|
264
|
+
},
|
|
265
|
+
}),
|
|
266
|
+
},
|
|
267
|
+
},
|
|
268
|
+
versions: {
|
|
269
|
+
description: 'Manage function contract versions',
|
|
270
|
+
subcommands: {
|
|
271
|
+
init: pikkuCLICommand({
|
|
272
|
+
func: pikkuVersionsInit,
|
|
273
|
+
description: 'Initialize the version manifest (versions.json)',
|
|
274
|
+
options: {
|
|
275
|
+
force: {
|
|
276
|
+
description: 'Overwrite existing manifest',
|
|
277
|
+
},
|
|
278
|
+
},
|
|
279
|
+
}),
|
|
280
|
+
check: pikkuCLICommand({
|
|
281
|
+
func: pikkuVersionsCheck,
|
|
282
|
+
description: 'Validate function contracts against the version manifest',
|
|
283
|
+
}),
|
|
284
|
+
update: pikkuCLICommand({
|
|
285
|
+
func: pikkuVersionsUpdate,
|
|
286
|
+
description: 'Update the version manifest with current contract hashes',
|
|
287
|
+
}),
|
|
288
|
+
},
|
|
289
|
+
},
|
|
290
|
+
info: pikkuCLICommand({
|
|
291
|
+
func: pikkuInfoFunctions,
|
|
292
|
+
description: 'Show information about Pikku project resources',
|
|
125
293
|
options: {
|
|
126
|
-
|
|
127
|
-
description: '
|
|
294
|
+
limit: {
|
|
295
|
+
description: 'Maximum number of rows to display',
|
|
296
|
+
default: '50',
|
|
297
|
+
},
|
|
298
|
+
verbose: {
|
|
299
|
+
description: 'Show additional details (file paths, services, etc.)',
|
|
300
|
+
default: false,
|
|
128
301
|
},
|
|
129
302
|
},
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
303
|
+
subcommands: {
|
|
304
|
+
functions: pikkuCLICommand({
|
|
305
|
+
func: pikkuInfoFunctions,
|
|
306
|
+
description: 'List all registered functions',
|
|
307
|
+
options: {
|
|
308
|
+
limit: {
|
|
309
|
+
description: 'Maximum number of rows to display',
|
|
310
|
+
default: '50',
|
|
311
|
+
},
|
|
312
|
+
verbose: {
|
|
313
|
+
description: 'Show additional details (type, middleware, file)',
|
|
314
|
+
default: false,
|
|
315
|
+
},
|
|
316
|
+
},
|
|
317
|
+
}),
|
|
318
|
+
tags: pikkuCLICommand({
|
|
319
|
+
func: pikkuInfoTags,
|
|
320
|
+
description: 'List all tags with associated functions, middleware, and permissions',
|
|
321
|
+
options: {
|
|
322
|
+
limit: {
|
|
323
|
+
description: 'Maximum number of rows to display',
|
|
324
|
+
default: '50',
|
|
325
|
+
},
|
|
326
|
+
verbose: {
|
|
327
|
+
description: 'Show names instead of counts',
|
|
328
|
+
default: false,
|
|
329
|
+
},
|
|
330
|
+
},
|
|
331
|
+
}),
|
|
332
|
+
middleware: pikkuCLICommand({
|
|
333
|
+
func: pikkuInfoMiddleware,
|
|
334
|
+
description: 'List all middleware definitions',
|
|
335
|
+
options: {
|
|
336
|
+
limit: {
|
|
337
|
+
description: 'Maximum number of rows to display',
|
|
338
|
+
default: '50',
|
|
339
|
+
},
|
|
340
|
+
verbose: {
|
|
341
|
+
description: 'Show additional details (sourceFile, services)',
|
|
342
|
+
default: false,
|
|
343
|
+
},
|
|
344
|
+
},
|
|
345
|
+
}),
|
|
346
|
+
permissions: pikkuCLICommand({
|
|
347
|
+
func: pikkuInfoPermissions,
|
|
348
|
+
description: 'List all permission definitions',
|
|
349
|
+
options: {
|
|
350
|
+
limit: {
|
|
351
|
+
description: 'Maximum number of rows to display',
|
|
352
|
+
default: '50',
|
|
353
|
+
},
|
|
354
|
+
verbose: {
|
|
355
|
+
description: 'Show additional details (sourceFile, services)',
|
|
356
|
+
default: false,
|
|
357
|
+
},
|
|
358
|
+
},
|
|
359
|
+
}),
|
|
360
|
+
},
|
|
134
361
|
}),
|
|
135
362
|
},
|
|
136
363
|
});
|
|
@@ -16,7 +16,7 @@ export const all = pikkuVoidFunc({
|
|
|
16
16
|
await rpc.invoke('pikkuFunctionTypesSplit', null);
|
|
17
17
|
await rpc.invoke('pikkuTriggerTypes', null);
|
|
18
18
|
await rpc.invoke('pikkuAIAgentTypes', null);
|
|
19
|
-
if (!config.
|
|
19
|
+
if (!config.addon) {
|
|
20
20
|
await rpc.invoke('pikkuHTTPTypes', null);
|
|
21
21
|
await rpc.invoke('pikkuChannelTypes', null);
|
|
22
22
|
await rpc.invoke('pikkuSchedulerTypes', null);
|
|
@@ -41,7 +41,7 @@ export const all = pikkuVoidFunc({
|
|
|
41
41
|
const agents = await rpc.invoke('pikkuAIAgent', null);
|
|
42
42
|
if (agents) {
|
|
43
43
|
allImports.push(config.agentWiringMetaFile, config.agentWiringsFile);
|
|
44
|
-
if (config.agent
|
|
44
|
+
if (config.scaffold?.agent) {
|
|
45
45
|
await rpc.invoke('pikkuPublicAgent', null);
|
|
46
46
|
}
|
|
47
47
|
}
|
|
@@ -53,11 +53,11 @@ export const all = pikkuVoidFunc({
|
|
|
53
53
|
await rpc.invoke('pikkuSecrets', null);
|
|
54
54
|
await rpc.invoke('pikkuVariableDefinitionTypes', null);
|
|
55
55
|
await rpc.invoke('pikkuVariables', null);
|
|
56
|
-
await rpc.invoke('
|
|
56
|
+
await rpc.invoke('pikkuAddonTypes', null);
|
|
57
57
|
if (hasInternalRPCs) {
|
|
58
58
|
allImports.push(config.rpcInternalWiringMetaFile);
|
|
59
59
|
}
|
|
60
|
-
if (agents || !config.
|
|
60
|
+
if (agents || !config.addon) {
|
|
61
61
|
await getInspectorState(true);
|
|
62
62
|
}
|
|
63
63
|
const schemas = await rpc.invoke('pikkuSchemas', null);
|
|
@@ -66,7 +66,7 @@ export const all = pikkuVoidFunc({
|
|
|
66
66
|
}
|
|
67
67
|
await rpc.invoke('pikkuRPCInternalMap', null);
|
|
68
68
|
await rpc.invoke('pikkuRPCExposedMap', null);
|
|
69
|
-
if (!config.
|
|
69
|
+
if (!config.addon) {
|
|
70
70
|
const http = await rpc.invoke('pikkuHTTP', null);
|
|
71
71
|
if (http) {
|
|
72
72
|
await rpc.invoke('pikkuHTTPMap', null);
|
|
@@ -84,7 +84,7 @@ export const all = pikkuVoidFunc({
|
|
|
84
84
|
}
|
|
85
85
|
const workflows = await rpc.invoke('pikkuWorkflow', null);
|
|
86
86
|
let remoteRPC = false;
|
|
87
|
-
if (!config.
|
|
87
|
+
if (!config.addon) {
|
|
88
88
|
remoteRPC = await rpc.invoke('pikkuRemoteRPC', null);
|
|
89
89
|
}
|
|
90
90
|
if (workflows || remoteRPC) {
|
|
@@ -99,7 +99,7 @@ export const all = pikkuVoidFunc({
|
|
|
99
99
|
if (workflows) {
|
|
100
100
|
allImports.push(config.workflowsWiringFile);
|
|
101
101
|
}
|
|
102
|
-
if (!config.
|
|
102
|
+
if (!config.addon) {
|
|
103
103
|
const queues = await rpc.invoke('pikkuQueue', null);
|
|
104
104
|
if (queues) {
|
|
105
105
|
await rpc.invoke('pikkuQueueMap', null);
|
|
@@ -112,6 +112,10 @@ export const all = pikkuVoidFunc({
|
|
|
112
112
|
await rpc.invoke('pikkuWebSocketTyped', null);
|
|
113
113
|
allImports.push(config.channelsWiringMetaFile, config.channelsWiringFile);
|
|
114
114
|
}
|
|
115
|
+
const gateways = await rpc.invoke('pikkuGateway', null);
|
|
116
|
+
if (gateways) {
|
|
117
|
+
allImports.push(config.gatewaysWiringFile);
|
|
118
|
+
}
|
|
115
119
|
const mcp = await rpc.invoke('pikkuMCP', null);
|
|
116
120
|
if (mcp) {
|
|
117
121
|
await rpc.invoke('pikkuMCPJSON', null);
|
|
@@ -124,7 +128,8 @@ export const all = pikkuVoidFunc({
|
|
|
124
128
|
}
|
|
125
129
|
}
|
|
126
130
|
await rpc.invoke('pikkuNodesMeta', null);
|
|
127
|
-
if (config.nextBackendFile ||
|
|
131
|
+
if (config.clientFiles?.nextBackendFile ||
|
|
132
|
+
config.clientFiles?.nextHTTPFile) {
|
|
128
133
|
await rpc.invoke('pikkuNext', null);
|
|
129
134
|
}
|
|
130
135
|
if (config.openAPI) {
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const enableRpc: 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>;
|
|
2
|
+
export declare const enableConsole: 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>;
|
|
3
|
+
export declare const enableAgent: 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>;
|
|
4
|
+
export declare const enableWorkflow: 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,39 @@
|
|
|
1
|
+
import { readFile, writeFile } from 'fs/promises';
|
|
2
|
+
import { join } from 'path';
|
|
3
|
+
import { pikkuVoidFunc } from '#pikku';
|
|
4
|
+
const FEATURE_DEFAULTS = {
|
|
5
|
+
rpc: 'auth',
|
|
6
|
+
agent: 'auth',
|
|
7
|
+
console: 'no-auth',
|
|
8
|
+
workflow: 'auth',
|
|
9
|
+
};
|
|
10
|
+
async function enableFeature(feature, logger, config, data) {
|
|
11
|
+
const noAuth = data?.['no-auth'] ?? false;
|
|
12
|
+
const configPath = join(config.configDir, 'pikku.config.json');
|
|
13
|
+
const raw = await readFile(configPath, 'utf-8');
|
|
14
|
+
const json = JSON.parse(raw);
|
|
15
|
+
if (!json.scaffold) {
|
|
16
|
+
json.scaffold = {};
|
|
17
|
+
}
|
|
18
|
+
if (!json.scaffold.pikkuDir) {
|
|
19
|
+
json.scaffold.pikkuDir = 'pikku';
|
|
20
|
+
}
|
|
21
|
+
const value = noAuth
|
|
22
|
+
? 'no-auth'
|
|
23
|
+
: FEATURE_DEFAULTS[feature];
|
|
24
|
+
json.scaffold[feature] = value;
|
|
25
|
+
await writeFile(configPath, JSON.stringify(json, null, 2) + '\n', 'utf-8');
|
|
26
|
+
logger.info(`Enabled scaffold.${feature} = '${value}' in ${configPath}`);
|
|
27
|
+
}
|
|
28
|
+
export const enableRpc = pikkuVoidFunc({
|
|
29
|
+
func: async ({ logger, config }, data) => enableFeature('rpc', logger, config, data),
|
|
30
|
+
});
|
|
31
|
+
export const enableConsole = pikkuVoidFunc({
|
|
32
|
+
func: async ({ logger, config }, data) => enableFeature('console', logger, config, data),
|
|
33
|
+
});
|
|
34
|
+
export const enableAgent = pikkuVoidFunc({
|
|
35
|
+
func: async ({ logger, config }, data) => enableFeature('agent', logger, config, data),
|
|
36
|
+
});
|
|
37
|
+
export const enableWorkflow = pikkuVoidFunc({
|
|
38
|
+
func: async ({ logger, config }, data) => enableFeature('workflow', logger, config, data),
|
|
39
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
type InfoInput = {
|
|
2
|
+
limit?: string;
|
|
3
|
+
verbose?: boolean;
|
|
4
|
+
};
|
|
5
|
+
export declare const pikkuInfoFunctions: import("#pikku").PikkuFunctionConfig<InfoInput, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<InfoInput, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<InfoInput, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
6
|
+
export declare const pikkuInfoTags: import("#pikku").PikkuFunctionConfig<InfoInput, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<InfoInput, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<InfoInput, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
7
|
+
export declare const pikkuInfoMiddleware: import("#pikku").PikkuFunctionConfig<InfoInput, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<InfoInput, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<InfoInput, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
8
|
+
export declare const pikkuInfoPermissions: import("#pikku").PikkuFunctionConfig<InfoInput, void, "session" | "rpc", import("#pikku").PikkuFunctionSessionless<InfoInput, void, "session" | "rpc", import("#pikku").Services> | import("#pikku").PikkuFunction<InfoInput, void, "session" | "rpc", import("#pikku").Services>, undefined, undefined>;
|
|
9
|
+
export {};
|