@pikku/cli 0.9.16-next.0 → 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.pikku/channel/pikku-channel-types.gen.ts +28 -29
- package/.pikku/channel/pikku-channels-map.gen.d.ts +44 -0
- package/.pikku/channel/pikku-channels-meta.gen.ts +5 -0
- package/.pikku/channel/pikku-channels.gen.ts +4 -0
- package/.pikku/cli/pikku-cli-channel.gen.ts +34 -0
- package/.pikku/cli/pikku-cli-client.gen.ts +43 -0
- package/.pikku/cli/pikku-cli-types.gen.ts +14 -15
- package/.pikku/cli/pikku-cli-wirings-meta.gen.ts +142 -2
- package/.pikku/cli/pikku-cli-wirings.gen.ts +4 -2
- package/.pikku/cli/pikku-cli.gen.ts +41 -0
- package/.pikku/function/pikku-function-types.gen.ts +167 -19
- package/.pikku/function/pikku-functions-meta.gen.ts +220 -192
- package/.pikku/function/pikku-functions-meta.min.gen.ts +61 -56
- package/.pikku/function/pikku-functions.gen.ts +3 -1
- package/.pikku/http/pikku-http-types.gen.ts +28 -3
- package/.pikku/http/pikku-http-wirings-map.gen.d.ts +43 -0
- package/.pikku/http/pikku-http-wirings-meta.gen.ts +13 -0
- package/.pikku/http/pikku-http-wirings.gen.ts +4 -0
- package/.pikku/mcp/pikku-mcp-types.gen.ts +15 -13
- package/.pikku/mcp/pikku-mcp-wirings-meta.gen.ts +7 -0
- package/.pikku/mcp/pikku-mcp-wirings.gen.ts +4 -0
- package/.pikku/mcp/pikku-mcp.gen.json +5 -0
- package/.pikku/pikku-bootstrap.gen.ts +11 -1
- package/.pikku/pikku-services.gen.ts +1 -5
- package/.pikku/pikku-types.gen.ts +1 -2
- package/.pikku/pikku-websocket.gen.ts +76 -0
- package/.pikku/queue/pikku-queue-types.gen.ts +1 -2
- package/.pikku/queue/pikku-queue-workers-wirings-map.gen.d.ts +57 -0
- package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.ts +5 -0
- package/.pikku/queue/pikku-queue-workers-wirings.gen.ts +4 -0
- package/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +5 -4
- package/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +19 -17
- package/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.ts +15 -14
- package/.pikku/scheduler/pikku-scheduler-types.gen.ts +1 -2
- package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.ts +5 -0
- package/.pikku/scheduler/pikku-schedulers-wirings.gen.ts +4 -0
- package/.pikku/schemas/register.gen.ts +15 -11
- package/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
- package/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +1 -1
- package/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +1 -0
- package/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
- package/CHANGELOG.md +15 -0
- package/bin/pikku.ts +63 -11
- package/build.sh +1 -1
- package/cli.schema.json +1 -1
- package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +11 -20
- package/dist/.pikku/channel/pikku-channel-types.gen.js +9 -11
- package/dist/.pikku/channel/pikku-channels-meta.gen.d.ts +1 -0
- package/dist/.pikku/channel/pikku-channels-meta.gen.js +5 -0
- package/dist/.pikku/channel/pikku-channels.gen.d.ts +4 -0
- package/dist/.pikku/channel/pikku-channels.gen.js +5 -0
- package/dist/.pikku/cli/pikku-cli-channel.gen.d.ts +1 -0
- package/dist/.pikku/cli/pikku-cli-channel.gen.js +33 -0
- package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +10 -0
- package/dist/.pikku/cli/pikku-cli-client.gen.js +34 -0
- package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +9 -12
- package/dist/.pikku/cli/pikku-cli-types.gen.js +5 -4
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +142 -2
- package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +3 -2
- package/dist/.pikku/cli/pikku-cli-wirings.gen.js +4 -3
- package/dist/.pikku/cli/pikku-cli.gen.d.ts +10 -0
- package/dist/.pikku/cli/pikku-cli.gen.js +38 -0
- package/dist/.pikku/function/pikku-function-types.gen.d.ts +141 -20
- package/dist/.pikku/function/pikku-function-types.gen.js +108 -12
- package/dist/.pikku/function/pikku-functions-meta.gen.js +220 -192
- package/dist/.pikku/function/pikku-functions-meta.min.gen.js +61 -56
- package/dist/.pikku/function/pikku-functions.gen.js +3 -1
- package/dist/.pikku/http/pikku-http-types.gen.d.ts +21 -2
- package/dist/.pikku/http/pikku-http-types.gen.js +24 -3
- package/dist/.pikku/http/pikku-http-wirings-meta.gen.d.ts +1 -0
- package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +13 -0
- package/dist/.pikku/http/pikku-http-wirings.gen.d.ts +4 -0
- package/dist/.pikku/http/pikku-http-wirings.gen.js +5 -0
- package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +11 -8
- package/dist/.pikku/mcp/pikku-mcp-types.gen.js +6 -6
- package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.d.ts +1 -0
- package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +7 -0
- package/dist/.pikku/mcp/pikku-mcp-wirings.gen.d.ts +4 -0
- package/dist/.pikku/mcp/pikku-mcp-wirings.gen.js +5 -0
- package/dist/.pikku/pikku-bootstrap.gen.d.ts +11 -1
- package/dist/.pikku/pikku-bootstrap.gen.js +11 -1
- package/dist/.pikku/pikku-services.gen.d.ts +1 -4
- package/dist/.pikku/pikku-services.gen.js +0 -6
- package/dist/.pikku/pikku-types.gen.d.ts +1 -2
- package/dist/.pikku/pikku-types.gen.js +1 -2
- package/dist/.pikku/pikku-websocket.gen.d.ts +31 -0
- package/dist/.pikku/pikku-websocket.gen.js +49 -0
- package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -2
- package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -2
- package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.d.ts +1 -0
- package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +5 -0
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +4 -0
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +5 -0
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +15 -14
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -2
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -2
- package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.d.ts +1 -0
- package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.js +5 -0
- package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.d.ts +4 -0
- package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.js +5 -0
- package/dist/.pikku/schemas/register.gen.js +9 -7
- package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
- package/dist/bin/pikku.d.ts +1 -1
- package/dist/bin/pikku.js +37 -6
- package/dist/src/cli.wiring.js +99 -75
- package/dist/src/functions/commands/all.js +10 -0
- package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +10 -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 +2 -2
- package/dist/src/functions/wirings/channels/pikku-channels.js +0 -5
- package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +0 -2
- package/dist/src/functions/wirings/channels/pikku-command-channels-map.js +0 -5
- package/dist/src/functions/wirings/channels/pikku-command-channels.js +0 -5
- package/dist/src/functions/wirings/channels/pikku-command-websocket-typed.js +6 -3
- package/dist/src/functions/wirings/channels/serialize-channel-types.js +27 -28
- package/dist/src/functions/wirings/channels/serialize-typed-channel-map.js +4 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +31 -8
- package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +0 -2
- package/dist/src/functions/wirings/cli/pikku-command-cli.js +0 -2
- package/dist/src/functions/wirings/cli/serialize-channel-cli-client.d.ts +6 -2
- package/dist/src/functions/wirings/cli/serialize-channel-cli-client.js +88 -11
- package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +1 -1
- package/dist/src/functions/wirings/cli/serialize-channel-cli.js +1 -18
- package/dist/src/functions/wirings/cli/serialize-cli-types.js +13 -14
- package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.js +19 -14
- package/dist/src/functions/wirings/fetch/index.js +6 -3
- package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +6 -5
- package/dist/src/functions/wirings/functions/pikku-command-function-types.js +0 -2
- package/dist/src/functions/wirings/functions/pikku-command-functions.js +0 -2
- package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-services.js +11 -21
- package/dist/src/functions/wirings/functions/pikku-function-types.js +0 -2
- package/dist/src/functions/wirings/functions/schemas.js +0 -2
- package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +1 -1
- package/dist/src/functions/wirings/functions/serialize-function-types.js +167 -19
- package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +0 -1
- package/dist/src/functions/wirings/http/openapi-spec-generator.d.ts +2 -1
- package/dist/src/functions/wirings/http/pikku-command-http-map.js +0 -5
- package/dist/src/functions/wirings/http/pikku-command-http-routes.js +0 -5
- package/dist/src/functions/wirings/http/pikku-command-http-types.js +0 -2
- package/dist/src/functions/wirings/http/pikku-command-openapi.js +7 -4
- package/dist/src/functions/wirings/http/pikku-http-routes.js +0 -5
- package/dist/src/functions/wirings/http/serialize-http-types.js +27 -2
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +0 -5
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.js +0 -2
- package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +0 -5
- package/dist/src/functions/wirings/mcp/serialize-mcp-json.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/serialize-mcp-types.js +14 -12
- package/dist/src/functions/wirings/middleware/pikku-command-middleware.js +0 -2
- package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.js +1 -7
- package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -0
- package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +28 -0
- package/dist/src/functions/wirings/permissions/serialize-permissions-imports.d.ts +2 -0
- package/dist/src/functions/wirings/permissions/serialize-permissions-imports.js +43 -0
- package/dist/src/functions/wirings/queue/pikku-command-queue-map.js +0 -5
- package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +6 -3
- package/dist/src/functions/wirings/queue/pikku-command-queue-types.js +0 -2
- package/dist/src/functions/wirings/queue/pikku-command-queue.js +0 -5
- package/dist/src/functions/wirings/queue/pikku-queue-map.js +0 -5
- package/dist/src/functions/wirings/queue/pikku-queue.js +1 -5
- package/dist/src/functions/wirings/queue/serialize-queue-meta.d.ts +1 -1
- package/dist/src/functions/wirings/queue/serialize-queue-types.js +0 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +5 -3
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +0 -4
- package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +0 -2
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.js +0 -2
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.js +0 -5
- package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.js +0 -1
- package/dist/src/middleware/log-command-info-and-time.d.ts +2 -8
- package/dist/src/middleware/log-command-info-and-time.js +2 -14
- package/dist/src/services/cli-logger-forwarder.service.d.ts +6 -2
- package/dist/src/services/cli-logger-forwarder.service.js +9 -0
- package/dist/src/services/cli-logger.service.d.ts +4 -0
- package/dist/src/services/cli-logger.service.js +11 -0
- package/dist/src/services.d.ts +5 -0
- package/dist/src/services.js +111 -13
- package/dist/src/utils/check-required-types.js +11 -1
- package/dist/src/utils/custom-types-generator.js +8 -2
- package/dist/src/utils/file-writer.d.ts +4 -1
- package/dist/src/utils/file-writer.js +13 -3
- package/dist/src/utils/get-cli-version.d.ts +5 -0
- package/dist/src/utils/get-cli-version.js +27 -0
- package/dist/src/utils/pikku-cli-config.d.ts +1 -2
- package/dist/src/utils/pikku-cli-config.js +9 -28
- package/dist/src/utils/schema-generator.js +3 -2
- package/dist/src/utils/serialize-import-map.js +0 -3
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -8
- package/pikku.config.json +4 -2
- package/src/cli.wiring.ts +101 -74
- package/src/functions/commands/all.ts +12 -0
- package/src/functions/runtimes/nextjs/pikku-command-nextjs.ts +12 -12
- package/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.ts +2 -2
- package/src/functions/wirings/channels/pikku-channels.ts +0 -5
- package/src/functions/wirings/channels/pikku-command-channel-types.ts +0 -2
- package/src/functions/wirings/channels/pikku-command-channels-map.ts +0 -5
- package/src/functions/wirings/channels/pikku-command-channels.ts +0 -5
- package/src/functions/wirings/channels/pikku-command-websocket-typed.ts +7 -3
- package/src/functions/wirings/channels/serialize-channel-types.ts +27 -28
- package/src/functions/wirings/channels/serialize-typed-channel-map.ts +4 -1
- package/src/functions/wirings/cli/pikku-command-cli-entry.ts +52 -9
- package/src/functions/wirings/cli/pikku-command-cli-types.ts +0 -2
- package/src/functions/wirings/cli/pikku-command-cli.ts +0 -2
- package/src/functions/wirings/cli/serialize-channel-cli-client.ts +111 -12
- package/src/functions/wirings/cli/serialize-channel-cli.ts +2 -23
- package/src/functions/wirings/cli/serialize-cli-types.ts +13 -14
- package/src/functions/wirings/cli/serialize-local-cli-bootstrap.ts +19 -14
- package/src/functions/wirings/fetch/index.ts +7 -3
- package/src/functions/wirings/functions/pikku-command-function-types-split.ts +14 -5
- package/src/functions/wirings/functions/pikku-command-function-types.ts +0 -2
- package/src/functions/wirings/functions/pikku-command-functions.ts +0 -2
- package/src/functions/wirings/functions/pikku-command-services.ts +13 -24
- package/src/functions/wirings/functions/pikku-function-types.ts +0 -2
- package/src/functions/wirings/functions/schemas.ts +0 -2
- package/src/functions/wirings/functions/serialize-function-types.ts +169 -19
- package/src/functions/wirings/functions/serialize-pikku-types-hub.ts +0 -1
- package/src/functions/wirings/http/openapi-spec-generator.ts +2 -1
- package/src/functions/wirings/http/pikku-command-http-map.ts +0 -5
- package/src/functions/wirings/http/pikku-command-http-routes.ts +0 -5
- package/src/functions/wirings/http/pikku-command-http-types.ts +0 -2
- package/src/functions/wirings/http/pikku-command-openapi.ts +9 -4
- package/src/functions/wirings/http/pikku-http-routes.ts +0 -5
- package/src/functions/wirings/http/serialize-http-types.ts +27 -2
- package/src/functions/wirings/mcp/pikku-command-mcp-json.ts +0 -5
- package/src/functions/wirings/mcp/pikku-command-mcp-types.ts +0 -2
- package/src/functions/wirings/mcp/pikku-command-mcp.ts +0 -5
- package/src/functions/wirings/mcp/serialize-mcp-json.ts +1 -1
- package/src/functions/wirings/mcp/serialize-mcp-types.ts +14 -12
- package/src/functions/wirings/middleware/pikku-command-middleware.ts +0 -2
- package/src/functions/wirings/middleware/serialize-middleware-groups-meta.ts +1 -7
- package/src/functions/wirings/permissions/pikku-command-permissions.ts +49 -0
- package/src/functions/wirings/permissions/serialize-permissions-imports.test.ts +274 -0
- package/src/functions/wirings/permissions/serialize-permissions-imports.ts +78 -0
- package/src/functions/wirings/queue/pikku-command-queue-map.ts +0 -5
- package/src/functions/wirings/queue/pikku-command-queue-service.ts +7 -3
- package/src/functions/wirings/queue/pikku-command-queue-types.ts +0 -2
- package/src/functions/wirings/queue/pikku-command-queue.ts +0 -5
- package/src/functions/wirings/queue/pikku-queue-map.ts +0 -5
- package/src/functions/wirings/queue/pikku-queue.ts +3 -6
- package/src/functions/wirings/queue/serialize-queue-meta.ts +1 -1
- package/src/functions/wirings/queue/serialize-queue-types.ts +0 -1
- package/src/functions/wirings/rpc/pikku-command-rpc-client.ts +6 -3
- package/src/functions/wirings/rpc/pikku-command-rpc-map.ts +0 -4
- package/src/functions/wirings/rpc/pikku-command-rpc.ts +0 -2
- package/src/functions/wirings/scheduler/pikku-command-scheduler-types.ts +0 -2
- package/src/functions/wirings/scheduler/pikku-command-scheduler.ts +0 -5
- package/src/functions/wirings/scheduler/serialize-scheduler-types.ts +0 -1
- package/src/middleware/log-command-info-and-time.ts +2 -28
- package/src/services/cli-logger-forwarder.service.ts +15 -2
- package/src/services/cli-logger.service.ts +15 -0
- package/src/services.ts +148 -19
- package/src/utils/check-required-types.ts +16 -1
- package/src/utils/custom-types-generator.ts +8 -2
- package/src/utils/file-writer.ts +19 -3
- package/src/utils/get-cli-version.ts +28 -0
- package/src/utils/pikku-cli-config.ts +6 -35
- package/src/utils/schema-generator.ts +7 -3
- package/src/utils/serialize-import-map.ts +0 -4
- package/types/application-types.d.ts +4 -1
- package/types/config.d.ts +15 -3
- package/dist/.pikku/rpc/pikku-bootstrap-rpc.gen.d.ts +0 -6
- package/dist/.pikku/rpc/pikku-bootstrap-rpc.gen.js +0 -6
- package/dist/src/serialize-pikku-types.d.ts +0 -4
- package/dist/src/serialize-pikku-types.js +0 -605
- package/src/serialize-pikku-types.ts +0 -613
|
@@ -1,15 +1,35 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
3
|
*/
|
|
4
4
|
import { pikkuState } from '@pikku/core'
|
|
5
5
|
pikkuState('function', 'meta', {
|
|
6
|
-
"
|
|
7
|
-
"pikkuFuncName": "
|
|
6
|
+
"pikkuSchemas": {
|
|
7
|
+
"pikkuFuncName": "pikkuSchemas",
|
|
8
|
+
"inputSchemaName": null,
|
|
9
|
+
"outputSchemaName": "PikkuSchemasOutput"
|
|
10
|
+
},
|
|
11
|
+
"pikkuFetch": {
|
|
12
|
+
"pikkuFuncName": "pikkuFetch",
|
|
8
13
|
"inputSchemaName": null,
|
|
9
14
|
"outputSchemaName": null
|
|
10
15
|
},
|
|
11
|
-
"
|
|
12
|
-
"pikkuFuncName": "
|
|
16
|
+
"pikkuWebSocketTyped": {
|
|
17
|
+
"pikkuFuncName": "pikkuWebSocketTyped",
|
|
18
|
+
"inputSchemaName": null,
|
|
19
|
+
"outputSchemaName": null
|
|
20
|
+
},
|
|
21
|
+
"pikkuRPCClient": {
|
|
22
|
+
"pikkuFuncName": "pikkuRPCClient",
|
|
23
|
+
"inputSchemaName": null,
|
|
24
|
+
"outputSchemaName": null
|
|
25
|
+
},
|
|
26
|
+
"pikkuQueueService": {
|
|
27
|
+
"pikkuFuncName": "pikkuQueueService",
|
|
28
|
+
"inputSchemaName": null,
|
|
29
|
+
"outputSchemaName": null
|
|
30
|
+
},
|
|
31
|
+
"pikkuOpenAPI": {
|
|
32
|
+
"pikkuFuncName": "pikkuOpenAPI",
|
|
13
33
|
"inputSchemaName": null,
|
|
14
34
|
"outputSchemaName": null
|
|
15
35
|
},
|
|
@@ -18,6 +38,16 @@ pikkuState('function', 'meta', {
|
|
|
18
38
|
"inputSchemaName": null,
|
|
19
39
|
"outputSchemaName": null
|
|
20
40
|
},
|
|
41
|
+
"all": {
|
|
42
|
+
"pikkuFuncName": "all",
|
|
43
|
+
"inputSchemaName": null,
|
|
44
|
+
"outputSchemaName": null
|
|
45
|
+
},
|
|
46
|
+
"watch": {
|
|
47
|
+
"pikkuFuncName": "watch",
|
|
48
|
+
"inputSchemaName": null,
|
|
49
|
+
"outputSchemaName": null
|
|
50
|
+
},
|
|
21
51
|
"pikkuChannels": {
|
|
22
52
|
"pikkuFuncName": "pikkuChannels",
|
|
23
53
|
"inputSchemaName": null,
|
|
@@ -33,11 +63,6 @@ pikkuState('function', 'meta', {
|
|
|
33
63
|
"inputSchemaName": null,
|
|
34
64
|
"outputSchemaName": null
|
|
35
65
|
},
|
|
36
|
-
"pikkuWebSocketTyped": {
|
|
37
|
-
"pikkuFuncName": "pikkuWebSocketTyped",
|
|
38
|
-
"inputSchemaName": null,
|
|
39
|
-
"outputSchemaName": null
|
|
40
|
-
},
|
|
41
66
|
"pikkuCLIEntry": {
|
|
42
67
|
"pikkuFuncName": "pikkuCLIEntry",
|
|
43
68
|
"inputSchemaName": null,
|
|
@@ -53,11 +78,6 @@ pikkuState('function', 'meta', {
|
|
|
53
78
|
"inputSchemaName": null,
|
|
54
79
|
"outputSchemaName": "PikkuCLIOutput"
|
|
55
80
|
},
|
|
56
|
-
"pikkuFetch": {
|
|
57
|
-
"pikkuFuncName": "pikkuFetch",
|
|
58
|
-
"inputSchemaName": null,
|
|
59
|
-
"outputSchemaName": null
|
|
60
|
-
},
|
|
61
81
|
"pikkuFunctionTypesSplit": {
|
|
62
82
|
"pikkuFuncName": "pikkuFunctionTypesSplit",
|
|
63
83
|
"inputSchemaName": null,
|
|
@@ -78,10 +98,20 @@ pikkuState('function', 'meta', {
|
|
|
78
98
|
"inputSchemaName": null,
|
|
79
99
|
"outputSchemaName": null
|
|
80
100
|
},
|
|
81
|
-
"
|
|
82
|
-
"pikkuFuncName": "
|
|
101
|
+
"pikkuHTTPMap": {
|
|
102
|
+
"pikkuFuncName": "pikkuHTTPMap",
|
|
83
103
|
"inputSchemaName": null,
|
|
84
|
-
"outputSchemaName":
|
|
104
|
+
"outputSchemaName": null
|
|
105
|
+
},
|
|
106
|
+
"pikkuHTTP": {
|
|
107
|
+
"pikkuFuncName": "pikkuHTTP",
|
|
108
|
+
"inputSchemaName": null,
|
|
109
|
+
"outputSchemaName": "PikkuHTTPOutput"
|
|
110
|
+
},
|
|
111
|
+
"pikkuHTTPTypes": {
|
|
112
|
+
"pikkuFuncName": "pikkuHTTPTypes",
|
|
113
|
+
"inputSchemaName": null,
|
|
114
|
+
"outputSchemaName": null
|
|
85
115
|
},
|
|
86
116
|
"pikkuMCPJSON": {
|
|
87
117
|
"pikkuFuncName": "pikkuMCPJSON",
|
|
@@ -98,35 +128,30 @@ pikkuState('function', 'meta', {
|
|
|
98
128
|
"inputSchemaName": null,
|
|
99
129
|
"outputSchemaName": "PikkuMCPOutput"
|
|
100
130
|
},
|
|
101
|
-
"
|
|
102
|
-
"pikkuFuncName": "
|
|
131
|
+
"pikkuMiddleware": {
|
|
132
|
+
"pikkuFuncName": "pikkuMiddleware",
|
|
103
133
|
"inputSchemaName": null,
|
|
104
|
-
"outputSchemaName":
|
|
134
|
+
"outputSchemaName": "PikkuMiddlewareOutput"
|
|
105
135
|
},
|
|
106
|
-
"
|
|
107
|
-
"pikkuFuncName": "
|
|
136
|
+
"pikkuPermissions": {
|
|
137
|
+
"pikkuFuncName": "pikkuPermissions",
|
|
108
138
|
"inputSchemaName": null,
|
|
109
|
-
"outputSchemaName": "
|
|
139
|
+
"outputSchemaName": "PikkuPermissionsOutput"
|
|
110
140
|
},
|
|
111
|
-
"
|
|
112
|
-
"pikkuFuncName": "
|
|
141
|
+
"pikkuQueueMap": {
|
|
142
|
+
"pikkuFuncName": "pikkuQueueMap",
|
|
113
143
|
"inputSchemaName": null,
|
|
114
144
|
"outputSchemaName": null
|
|
115
145
|
},
|
|
116
|
-
"
|
|
117
|
-
"pikkuFuncName": "
|
|
146
|
+
"pikkuQueueTypes": {
|
|
147
|
+
"pikkuFuncName": "pikkuQueueTypes",
|
|
118
148
|
"inputSchemaName": null,
|
|
119
149
|
"outputSchemaName": null
|
|
120
150
|
},
|
|
121
|
-
"
|
|
122
|
-
"pikkuFuncName": "
|
|
123
|
-
"inputSchemaName": null,
|
|
124
|
-
"outputSchemaName": "PikkuMiddlewareOutput"
|
|
125
|
-
},
|
|
126
|
-
"pikkuRPCClient": {
|
|
127
|
-
"pikkuFuncName": "pikkuRPCClient",
|
|
151
|
+
"pikkuQueue": {
|
|
152
|
+
"pikkuFuncName": "pikkuQueue",
|
|
128
153
|
"inputSchemaName": null,
|
|
129
|
-
"outputSchemaName":
|
|
154
|
+
"outputSchemaName": "PikkuQueueOutput"
|
|
130
155
|
},
|
|
131
156
|
"pikkuRPCInternalMap": {
|
|
132
157
|
"pikkuFuncName": "pikkuRPCInternalMap",
|
|
@@ -143,26 +168,6 @@ pikkuState('function', 'meta', {
|
|
|
143
168
|
"inputSchemaName": null,
|
|
144
169
|
"outputSchemaName": "PikkuRPCOutput"
|
|
145
170
|
},
|
|
146
|
-
"pikkuQueueMap": {
|
|
147
|
-
"pikkuFuncName": "pikkuQueueMap",
|
|
148
|
-
"inputSchemaName": null,
|
|
149
|
-
"outputSchemaName": null
|
|
150
|
-
},
|
|
151
|
-
"pikkuQueueService": {
|
|
152
|
-
"pikkuFuncName": "pikkuQueueService",
|
|
153
|
-
"inputSchemaName": null,
|
|
154
|
-
"outputSchemaName": null
|
|
155
|
-
},
|
|
156
|
-
"pikkuQueueTypes": {
|
|
157
|
-
"pikkuFuncName": "pikkuQueueTypes",
|
|
158
|
-
"inputSchemaName": null,
|
|
159
|
-
"outputSchemaName": null
|
|
160
|
-
},
|
|
161
|
-
"pikkuQueue": {
|
|
162
|
-
"pikkuFuncName": "pikkuQueue",
|
|
163
|
-
"inputSchemaName": null,
|
|
164
|
-
"outputSchemaName": null
|
|
165
|
-
},
|
|
166
171
|
"pikkuSchedulerTypes": {
|
|
167
172
|
"pikkuFuncName": "pikkuSchedulerTypes",
|
|
168
173
|
"inputSchemaName": null,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
3
|
*/
|
|
4
4
|
/* Import and register functions used by RPCs */
|
|
5
5
|
import { addFunction } from '@pikku/core'
|
|
@@ -23,6 +23,7 @@ import { pikkuMCPTypes } from '../../src/functions/wirings/mcp/pikku-command-mcp
|
|
|
23
23
|
import { pikkuMiddleware } from '../../src/functions/wirings/middleware/pikku-command-middleware.js'
|
|
24
24
|
import { pikkuNext } from '../../src/functions/runtimes/nextjs/pikku-command-nextjs.js'
|
|
25
25
|
import { pikkuOpenAPI } from '../../src/functions/wirings/http/pikku-command-openapi.js'
|
|
26
|
+
import { pikkuPermissions } from '../../src/functions/wirings/permissions/pikku-command-permissions.js'
|
|
26
27
|
import { pikkuQueue } from '../../src/functions/wirings/queue/pikku-queue.js'
|
|
27
28
|
import { pikkuQueueMap } from '../../src/functions/wirings/queue/pikku-queue-map.js'
|
|
28
29
|
import { pikkuQueueService } from '../../src/functions/wirings/queue/pikku-command-queue-service.js'
|
|
@@ -58,6 +59,7 @@ addFunction('pikkuMCPTypes', pikkuMCPTypes)
|
|
|
58
59
|
addFunction('pikkuMiddleware', pikkuMiddleware)
|
|
59
60
|
addFunction('pikkuNext', pikkuNext)
|
|
60
61
|
addFunction('pikkuOpenAPI', pikkuOpenAPI)
|
|
62
|
+
addFunction('pikkuPermissions', pikkuPermissions)
|
|
61
63
|
addFunction('pikkuQueue', pikkuQueue)
|
|
62
64
|
addFunction('pikkuQueueMap', pikkuQueueMap)
|
|
63
65
|
addFunction('pikkuQueueService', pikkuQueueService)
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
|
-
* This file was generated by the @pikku/cli
|
|
6
5
|
* HTTP-specific type definitions for tree-shaking optimization
|
|
7
6
|
*/
|
|
8
7
|
|
|
9
|
-
import { AssertHTTPWiringParams, wireHTTP as wireHTTPCore, addHTTPMiddleware as addHTTPMiddlewareCore } from '@pikku/core/http'
|
|
8
|
+
import { AssertHTTPWiringParams, wireHTTP as wireHTTPCore, addHTTPMiddleware as addHTTPMiddlewareCore, addHTTPPermission as addHTTPPermissionCore } from '@pikku/core/http'
|
|
10
9
|
import type { PikkuFunction, PikkuFunctionSessionless, PikkuPermission, PikkuMiddleware } from '../function/pikku-function-types.gen.js'
|
|
11
10
|
import type { CoreHTTPFunctionWiring } from '@pikku/core/http'
|
|
12
11
|
|
|
@@ -59,3 +58,29 @@ export const addHTTPMiddleware = (
|
|
|
59
58
|
) => {
|
|
60
59
|
addHTTPMiddlewareCore(routeOrMiddleware as any, middleware as any)
|
|
61
60
|
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Registers HTTP permissions either globally or for a specific route pattern.
|
|
64
|
+
*
|
|
65
|
+
* When a string route pattern is provided along with permissions, the permissions
|
|
66
|
+
* are applied only to that route. Permissions can be passed as an array or as a
|
|
67
|
+
* permission group object.
|
|
68
|
+
*
|
|
69
|
+
* @param pattern - Route pattern string (e.g., '*' for all routes, '/api/*' for specific routes)
|
|
70
|
+
* @param permissions - The permissions to apply for the specified route pattern
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* // Add global HTTP permissions
|
|
75
|
+
* addHTTPPermission('*', { global: globalPermission })
|
|
76
|
+
*
|
|
77
|
+
* // Add route-specific permissions
|
|
78
|
+
* addHTTPPermission('/api/admin/*', { admin: adminPermission })
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
export const addHTTPPermission = <In = unknown>(
|
|
82
|
+
pattern: string,
|
|
83
|
+
permissions: Record<string, PikkuPermission<In>> | PikkuPermission<In>[]
|
|
84
|
+
) => {
|
|
85
|
+
addHTTPPermissionCore(pattern, permissions as any)
|
|
86
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* This provides the structure needed for typescript to be aware of routes and their return types
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
// Custom types are those that are defined directly within generics
|
|
11
|
+
// or are broken into simpler types
|
|
12
|
+
export type PikkuSchemasOutput = false | true
|
|
13
|
+
export type PikkuChannelsOutput = false | true
|
|
14
|
+
export type PikkuCLIOutput = false | true
|
|
15
|
+
export type PikkuFunctionsOutput = false | true
|
|
16
|
+
export type PikkuHTTPOutput = false | true
|
|
17
|
+
export type PikkuMCPOutput = false | true
|
|
18
|
+
export type PikkuMiddlewareOutput = false | true
|
|
19
|
+
export type PikkuPermissionsOutput = false | true
|
|
20
|
+
export type PikkuQueueOutput = false | true
|
|
21
|
+
export type PikkuRPCOutput = false | true
|
|
22
|
+
export type PikkuSchedulerOutput = false | true
|
|
23
|
+
|
|
24
|
+
// The '& {}' is a workaround for not directly refering to a type since it confuses typescript
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
interface HTTPWiringHandler<I, O> {
|
|
28
|
+
input: I;
|
|
29
|
+
output: O;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export type HTTPWiringsMap = {
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export type HTTPWiringHandlerOf<HTTPWiring extends keyof HTTPWiringsMap, Method extends keyof HTTPWiringsMap[HTTPWiring]> =
|
|
36
|
+
HTTPWiringsMap[HTTPWiring][Method] extends { input: infer I; output: infer O }
|
|
37
|
+
? HTTPWiringHandler<I, O>
|
|
38
|
+
: never;
|
|
39
|
+
|
|
40
|
+
export type HTTPWiringsWithMethod<Method extends string> = {
|
|
41
|
+
[HTTPWiring in keyof HTTPWiringsMap]: Method extends keyof HTTPWiringsMap[HTTPWiring] ? HTTPWiring : never;
|
|
42
|
+
}[keyof HTTPWiringsMap];
|
|
43
|
+
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
|
-
* This file was generated by the @pikku/cli
|
|
6
5
|
* MCP-specific type definitions for tree-shaking optimization
|
|
7
6
|
*/
|
|
8
7
|
|
|
@@ -15,8 +14,9 @@ import {
|
|
|
15
14
|
wireMCPPrompt as wireMCPPromptCore,
|
|
16
15
|
MCPResourceResponse,
|
|
17
16
|
MCPToolResponse,
|
|
18
|
-
MCPPromptResponse
|
|
19
|
-
|
|
17
|
+
MCPPromptResponse,
|
|
18
|
+
AssertMCPResourceURIParams
|
|
19
|
+
} from '@pikku/core/mcp'
|
|
20
20
|
|
|
21
21
|
import type { PikkuFunctionConfig, PikkuFunctionSessionless } from '../function/pikku-function-types.gen.js'
|
|
22
22
|
|
|
@@ -24,8 +24,9 @@ import type { PikkuFunctionConfig, PikkuFunctionSessionless } from '../function/
|
|
|
24
24
|
* Type definition for MCP resources that provide data to AI models.
|
|
25
25
|
*
|
|
26
26
|
* @template In - Input type for the resource request
|
|
27
|
+
* @template URI - URI template string type for compile-time parameter validation
|
|
27
28
|
*/
|
|
28
|
-
type MCPResourceWiring<In> = CoreMCPResource<PikkuFunctionConfig<In, MCPResourceResponse>>
|
|
29
|
+
type MCPResourceWiring<In, URI extends string> = CoreMCPResource<PikkuFunctionConfig<In, MCPResourceResponse>> & { uri: URI }
|
|
29
30
|
|
|
30
31
|
/**
|
|
31
32
|
* Type definition for MCP tools that AI models can invoke.
|
|
@@ -46,10 +47,11 @@ type MCPPromptWiring<In> = CoreMCPPrompt<PikkuFunctionConfig<In, MCPPromptRespon
|
|
|
46
47
|
* Resources provide data that AI models can access.
|
|
47
48
|
*
|
|
48
49
|
* @template In - Input type for the resource request
|
|
50
|
+
* @template URI - URI template string for compile-time parameter validation
|
|
49
51
|
* @param mcpResource - MCP resource definition with data provider function
|
|
50
52
|
*/
|
|
51
|
-
export const wireMCPResource = <In>(
|
|
52
|
-
mcpResource: MCPResourceWiring<In>
|
|
53
|
+
export const wireMCPResource = <In, URI extends string>(
|
|
54
|
+
mcpResource: MCPResourceWiring<In, URI> & AssertMCPResourceURIParams<In, URI>
|
|
53
55
|
) => {
|
|
54
56
|
wireMCPResourceCore(mcpResource as any)
|
|
55
57
|
}
|
|
@@ -95,8 +97,8 @@ export const pikkuMCPPromptFunc = <In>(
|
|
|
95
97
|
func: PikkuFunctionSessionless<In, MCPPromptResponse>
|
|
96
98
|
name?: string
|
|
97
99
|
}
|
|
98
|
-
) => {
|
|
99
|
-
return typeof func === 'function' ? func : func
|
|
100
|
+
): PikkuFunctionConfig<In, MCPPromptResponse> => {
|
|
101
|
+
return typeof func === 'function' ? { func } : func
|
|
100
102
|
}
|
|
101
103
|
|
|
102
104
|
/**
|
|
@@ -114,8 +116,8 @@ export const pikkuMCPToolFunc = <In>(
|
|
|
114
116
|
func: PikkuFunctionSessionless<In, MCPToolResponse, null, true>
|
|
115
117
|
name?: string
|
|
116
118
|
}
|
|
117
|
-
) => {
|
|
118
|
-
return typeof func === 'function' ? func : func
|
|
119
|
+
): PikkuFunctionConfig<In, MCPToolResponse> => {
|
|
120
|
+
return typeof func === 'function' ? { func } : func
|
|
119
121
|
}
|
|
120
122
|
|
|
121
123
|
/**
|
|
@@ -133,6 +135,6 @@ export const pikkuMCPResourceFunc = <In>(
|
|
|
133
135
|
func: PikkuFunctionSessionless<In, MCPResourceResponse, null, true>
|
|
134
136
|
name?: string
|
|
135
137
|
}
|
|
136
|
-
) => {
|
|
137
|
-
return typeof func === 'function' ? func : func
|
|
138
|
+
): PikkuFunctionConfig<In, MCPResourceResponse> => {
|
|
139
|
+
return typeof func === 'function' ? { func } : func
|
|
138
140
|
}
|
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
3
|
*/
|
|
4
4
|
import './cli/pikku-cli-wirings-meta.gen.js'
|
|
5
|
+
import './mcp/pikku-mcp-wirings-meta.gen.js'
|
|
6
|
+
import './channel/pikku-channels-meta.gen.js'
|
|
7
|
+
import './queue/pikku-queue-workers-wirings-meta.gen.js'
|
|
8
|
+
import './scheduler/pikku-schedulers-wirings-meta.gen.js'
|
|
9
|
+
import './http/pikku-http-wirings-meta.gen.js'
|
|
5
10
|
import './rpc/pikku-rpc-wirings-meta.internal.gen.js'
|
|
6
11
|
import './function/pikku-functions-meta.gen.js'
|
|
7
12
|
import './function/pikku-functions.gen.js'
|
|
8
13
|
import './schemas/register.gen.js'
|
|
14
|
+
import './http/pikku-http-wirings.gen.js'
|
|
15
|
+
import './scheduler/pikku-schedulers-wirings.gen.js'
|
|
16
|
+
import './queue/pikku-queue-workers-wirings.gen.js'
|
|
17
|
+
import './channel/pikku-channels.gen.js'
|
|
18
|
+
import './mcp/pikku-mcp-wirings.gen.js'
|
|
9
19
|
import './cli/pikku-cli-wirings.gen.js'
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
3
|
*/
|
|
4
|
-
/**
|
|
5
|
-
* This file was generated by the @pikku/cli
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
4
|
import type { SingletonServices } from '../types/application-types.d.js'
|
|
9
5
|
import type { Services } from '../types/application-types.d.js'
|
|
10
6
|
import type { PikkuInteraction } from '@pikku/core'
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
|
+
*/
|
|
4
|
+
import { CorePikkuWebsocket, CorePikkuRouteHandler } from '@pikku/websocket'
|
|
5
|
+
import { ChannelDefaultHandlerOf, ChannelWiringHandlerOf, ChannelsMap } from './channel/pikku-channels-map.gen.d.js';
|
|
6
|
+
|
|
7
|
+
class PikkuWebSocketRoute<Channel extends keyof ChannelsMap, Route extends keyof ChannelsMap[Channel]['routes']> extends CorePikkuRouteHandler {
|
|
8
|
+
public subscribe<
|
|
9
|
+
Method extends keyof ChannelsMap[Channel]['routes'][Route],
|
|
10
|
+
Data extends ChannelWiringHandlerOf<Channel, Route, Method>['output']
|
|
11
|
+
>(method: Method, callback: (data: Data) => void
|
|
12
|
+
) {
|
|
13
|
+
super.subscribe(method.toString(), callback)
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
public unsubscribe<
|
|
17
|
+
Method extends keyof ChannelsMap[Channel]['routes'][Route],
|
|
18
|
+
Data extends ChannelWiringHandlerOf<Channel, Route, Method>['output']
|
|
19
|
+
>(method: Method, callback?: (data: Data) => void) {
|
|
20
|
+
super.unsubscribe(method.toString(), callback)
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
public send<
|
|
24
|
+
Method extends keyof ChannelsMap[Channel]['routes'][Route],
|
|
25
|
+
Data extends ChannelWiringHandlerOf<Channel, Route, Method>['input']
|
|
26
|
+
>(method: Method, data: Data) {
|
|
27
|
+
super.send(method.toString(), data)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export class PikkuWebSocket<Channel extends keyof ChannelsMap, EventHubTopics extends Record<string, any> = {}> extends CorePikkuWebsocket {
|
|
32
|
+
/**
|
|
33
|
+
* Send a message to a specific route and method.
|
|
34
|
+
* Validates the input data type.
|
|
35
|
+
*/
|
|
36
|
+
public getRoute<Route extends keyof ChannelsMap[Channel]['routes']>(route: Route): PikkuWebSocketRoute<Channel, Route> {
|
|
37
|
+
return super.getRoute(route)
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Subscribe to a specific route and method.
|
|
42
|
+
*/
|
|
43
|
+
public subscribe<Data extends ChannelDefaultHandlerOf<Channel>['output']>(
|
|
44
|
+
callback: (data: Data) => void
|
|
45
|
+
) {
|
|
46
|
+
super.subscribe(callback)
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Subscribe to a specific route and method.
|
|
51
|
+
*/
|
|
52
|
+
public unsubscribe<Data extends ChannelDefaultHandlerOf<Channel>['output']>(
|
|
53
|
+
callback?: (data: Data) => void
|
|
54
|
+
) {
|
|
55
|
+
super.unsubscribe(callback)
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
public send(data: ChannelDefaultHandlerOf<Channel>['input']) {
|
|
59
|
+
super.send(data)
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Subscribe to a topic from the EventHub system with strong typing.
|
|
64
|
+
*/
|
|
65
|
+
public subscribeToEventHub<Topic extends keyof EventHubTopics>(
|
|
66
|
+
topic: Topic,
|
|
67
|
+
callback: (data: EventHubTopics[Topic]) => void
|
|
68
|
+
) {
|
|
69
|
+
super.subscribe((data) => {
|
|
70
|
+
if (data.topic === topic) {
|
|
71
|
+
callback(data as EventHubTopics[Topic])
|
|
72
|
+
}
|
|
73
|
+
})
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* This provides the structure needed for typescript to be aware of Queue workers and their input/output types
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
// Custom types are those that are defined directly within generics
|
|
11
|
+
// or are broken into simpler types
|
|
12
|
+
export type PikkuSchemasOutput = false | true
|
|
13
|
+
export type PikkuChannelsOutput = false | true
|
|
14
|
+
export type PikkuCLIOutput = false | true
|
|
15
|
+
export type PikkuFunctionsOutput = false | true
|
|
16
|
+
export type PikkuHTTPOutput = false | true
|
|
17
|
+
export type PikkuMCPOutput = false | true
|
|
18
|
+
export type PikkuMiddlewareOutput = false | true
|
|
19
|
+
export type PikkuPermissionsOutput = false | true
|
|
20
|
+
export type PikkuQueueOutput = false | true
|
|
21
|
+
export type PikkuRPCOutput = false | true
|
|
22
|
+
export type PikkuSchedulerOutput = false | true
|
|
23
|
+
|
|
24
|
+
import type { QueueJob } from '@pikku/core/queue'
|
|
25
|
+
|
|
26
|
+
interface QueueHandler<I, O> {
|
|
27
|
+
input: I;
|
|
28
|
+
output: O;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export type QueueMap = {
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
type QueueAdd = <Name extends keyof QueueMap>(
|
|
36
|
+
name: Name,
|
|
37
|
+
data: QueueMap[Name]['input'],
|
|
38
|
+
options?: {
|
|
39
|
+
priority?: number
|
|
40
|
+
delay?: number
|
|
41
|
+
attempts?: number
|
|
42
|
+
removeOnComplete?: number
|
|
43
|
+
removeOnFail?: number
|
|
44
|
+
jobId?: string
|
|
45
|
+
}
|
|
46
|
+
) => Promise<string>
|
|
47
|
+
|
|
48
|
+
type QueueGetJob = <Name extends keyof QueueMap>(
|
|
49
|
+
name: Name,
|
|
50
|
+
jobId: string
|
|
51
|
+
) => Promise<QueueJob<QueueMap[Name]['input'], QueueMap[Name]['output']> | null>
|
|
52
|
+
|
|
53
|
+
export type TypedPikkuQueue = {
|
|
54
|
+
add: QueueAdd;
|
|
55
|
+
getJob: QueueGetJob;
|
|
56
|
+
}
|
|
57
|
+
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by
|
|
2
|
+
* This file was generated by @pikku/cli@0.10.1
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
5
|
* This provides the structure needed for typescript to be aware of RPCs and their return types
|
|
@@ -9,15 +9,16 @@
|
|
|
9
9
|
|
|
10
10
|
// Custom types are those that are defined directly within generics
|
|
11
11
|
// or are broken into simpler types
|
|
12
|
+
export type PikkuSchemasOutput = false | true
|
|
12
13
|
export type PikkuChannelsOutput = false | true
|
|
13
14
|
export type PikkuCLIOutput = false | true
|
|
14
15
|
export type PikkuFunctionsOutput = false | true
|
|
15
|
-
export type PikkuSchemasOutput = false | true
|
|
16
|
-
export type PikkuMCPOutput = false | true
|
|
17
16
|
export type PikkuHTTPOutput = false | true
|
|
17
|
+
export type PikkuMCPOutput = false | true
|
|
18
18
|
export type PikkuMiddlewareOutput = false | true
|
|
19
|
-
export type
|
|
19
|
+
export type PikkuPermissionsOutput = false | true
|
|
20
20
|
export type PikkuQueueOutput = false | true
|
|
21
|
+
export type PikkuRPCOutput = false | true
|
|
21
22
|
export type PikkuSchedulerOutput = false | true
|
|
22
23
|
|
|
23
24
|
interface RPCHandler<I, O> {
|