@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.
Files changed (199) hide show
  1. package/cli.schema.json +1 -1
  2. package/console-app/assets/index-DRJQtv3c.js +676 -0
  3. package/console-app/index.html +6 -1
  4. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +30 -3
  5. package/dist/.pikku/agent/pikku-agent-types.gen.js +13 -0
  6. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.js +2 -2
  7. package/dist/.pikku/agent/pikku-agent-wirings.gen.d.ts +1 -1
  8. package/dist/.pikku/agent/pikku-agent-wirings.gen.js +1 -1
  9. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
  10. package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
  11. package/dist/.pikku/channel/pikku-channels-meta.gen.js +2 -2
  12. package/dist/.pikku/channel/pikku-channels.gen.d.ts +1 -1
  13. package/dist/.pikku/channel/pikku-channels.gen.js +1 -1
  14. package/dist/.pikku/cli/pikku-cli-channel.js +77 -3
  15. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  16. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  17. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +1 -1
  18. package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
  19. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +2 -2
  20. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +280 -10
  21. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
  22. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
  23. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
  24. package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
  25. package/dist/.pikku/console/pikku-node-types.gen.d.ts +1 -1
  26. package/dist/.pikku/function/pikku-function-types.gen.d.ts +14 -11
  27. package/dist/.pikku/function/pikku-function-types.gen.js +25 -13
  28. package/dist/.pikku/function/pikku-functions-meta.gen.js +2 -2
  29. package/dist/.pikku/function/pikku-functions-meta.gen.json +426 -93
  30. package/dist/.pikku/function/pikku-functions.gen.js +5 -3
  31. package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
  32. package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
  33. package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +2 -2
  34. package/dist/.pikku/http/pikku-http-wirings.gen.d.ts +1 -1
  35. package/dist/.pikku/http/pikku-http-wirings.gen.js +1 -1
  36. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
  37. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
  38. package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +2 -2
  39. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.d.ts +1 -1
  40. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.js +1 -1
  41. package/dist/.pikku/pikku-bootstrap.gen.js +2 -2
  42. package/dist/.pikku/pikku-services.gen.d.ts +2 -1
  43. package/dist/.pikku/pikku-services.gen.js +1 -0
  44. package/dist/.pikku/pikku-types.gen.d.ts +1 -1
  45. package/dist/.pikku/pikku-types.gen.js +1 -1
  46. package/dist/.pikku/pikku-websocket.gen.d.ts +1 -1
  47. package/dist/.pikku/pikku-websocket.gen.js +1 -1
  48. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
  49. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
  50. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +2 -2
  51. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
  52. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
  53. package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.js +1 -1
  54. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +2 -2
  55. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +16 -2
  56. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
  57. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
  58. package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.js +2 -2
  59. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.d.ts +1 -1
  60. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.js +1 -1
  61. package/dist/.pikku/schemas/register.gen.js +15 -3
  62. package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
  63. package/dist/.pikku/schemas/schemas/PikkuGatewayOutput.schema.json +1 -0
  64. package/dist/.pikku/schemas/schemas/PikkuNewAddonInput.schema.json +1 -0
  65. package/dist/.pikku/schemas/schemas/PikkuNewFunctionInput.schema.json +1 -0
  66. package/dist/.pikku/schemas/schemas/PikkuNewMiddlewareInput.schema.json +1 -0
  67. package/dist/.pikku/schemas/schemas/PikkuNewPermissionInput.schema.json +1 -0
  68. package/dist/.pikku/schemas/schemas/PikkuNewWiringInput.schema.json +1 -0
  69. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
  70. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  71. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
  72. package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
  73. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
  74. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  75. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
  76. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  77. package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
  78. package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
  79. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
  80. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
  81. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +2 -2
  82. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +1 -1
  83. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  84. package/dist/src/cli.wiring.js +236 -9
  85. package/dist/src/functions/commands/all.js +13 -8
  86. package/dist/src/functions/commands/enable.d.ts +4 -0
  87. package/dist/src/functions/commands/enable.js +39 -0
  88. package/dist/src/functions/commands/info.d.ts +9 -0
  89. package/dist/src/functions/commands/info.js +283 -0
  90. package/dist/src/functions/commands/new-addon.d.ts +34 -0
  91. package/dist/src/functions/commands/new-addon.js +636 -0
  92. package/dist/src/functions/commands/new-function.d.ts +10 -0
  93. package/dist/src/functions/commands/new-function.js +79 -0
  94. package/dist/src/functions/commands/new-middleware.d.ts +10 -0
  95. package/dist/src/functions/commands/new-middleware.js +48 -0
  96. package/dist/src/functions/commands/new-permission.d.ts +10 -0
  97. package/dist/src/functions/commands/new-permission.js +45 -0
  98. package/dist/src/functions/commands/new-wiring.d.ts +10 -0
  99. package/dist/src/functions/commands/new-wiring.js +102 -0
  100. package/dist/src/functions/commands/pikku-command-bootstrap.js +11 -40
  101. package/dist/src/functions/commands/versions-check.js +85 -3
  102. package/dist/src/functions/commands/versions-update.js +1 -1
  103. package/dist/src/functions/runtimes/fetch/index.js +2 -1
  104. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +4 -1
  105. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.js +0 -4
  106. package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.js +2 -1
  107. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.js +3 -2
  108. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.js +5 -5
  109. package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.js +3 -5
  110. package/dist/src/functions/wirings/ai-agent/serialize-agent-map.d.ts +1 -1
  111. package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.d.ts +1 -1
  112. package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.js +48 -3
  113. package/dist/src/functions/wirings/ai-agent/serialize-public-agent.js +30 -52
  114. package/dist/src/functions/wirings/channels/pikku-channels.js +1 -1
  115. package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +2 -2
  116. package/dist/src/functions/wirings/channels/pikku-command-channels.js +1 -1
  117. package/dist/src/functions/wirings/channels/serialize-typed-channel-map.d.ts +4 -4
  118. package/dist/src/functions/wirings/cli/pikku-command-cli.js +1 -1
  119. package/dist/src/functions/wirings/cli/serialize-channel-cli-client.d.ts +2 -2
  120. package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +1 -1
  121. package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.d.ts +1 -1
  122. package/dist/src/functions/wirings/console/pikku-command-console-functions.js +4 -5
  123. package/dist/src/functions/wirings/console/pikku-command-nodes-meta.js +2 -2
  124. package/dist/src/functions/wirings/console/serialize-console-functions.d.ts +1 -1
  125. package/dist/src/functions/wirings/console/serialize-console-functions.js +18 -157
  126. package/dist/src/functions/wirings/functions/pikku-command-addon-types.d.ts +1 -0
  127. package/dist/src/functions/wirings/functions/pikku-command-addon-types.js +33 -0
  128. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +1 -1
  129. package/dist/src/functions/wirings/functions/pikku-command-function-types.js +4 -4
  130. package/dist/src/functions/wirings/functions/pikku-command-functions.js +8 -14
  131. package/dist/src/functions/wirings/functions/schemas.js +1 -1
  132. package/dist/src/functions/wirings/functions/serialize-addon-types.d.ts +1 -0
  133. package/dist/src/functions/wirings/functions/{serialize-external-types.js → serialize-addon-types.js} +16 -15
  134. package/dist/src/functions/wirings/functions/serialize-function-imports.d.ts +3 -3
  135. package/dist/src/functions/wirings/functions/serialize-function-imports.js +3 -3
  136. package/dist/src/functions/wirings/functions/serialize-function-types.js +28 -14
  137. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.d.ts +1 -1
  138. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +2 -2
  139. package/dist/src/functions/wirings/gateway/pikku-command-gateway.d.ts +1 -0
  140. package/dist/src/functions/wirings/gateway/pikku-command-gateway.js +22 -0
  141. package/dist/src/functions/wirings/http/pikku-command-http-routes.js +1 -1
  142. package/dist/src/functions/wirings/http/pikku-http-routes.js +1 -1
  143. package/dist/src/functions/wirings/http/serialize-typed-http-map.d.ts +3 -3
  144. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +1 -1
  145. package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +1 -1
  146. package/dist/src/functions/wirings/package/pikku-command-package.js +5 -5
  147. package/dist/src/functions/wirings/package/serialize-package.js +2 -2
  148. package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +0 -5
  149. package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +2 -1
  150. package/dist/src/functions/wirings/queue/serialize-queue-map.d.ts +2 -2
  151. package/dist/src/functions/wirings/queue/serialize-queue-meta.d.ts +1 -1
  152. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +3 -5
  153. package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.js +3 -5
  154. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +2 -1
  155. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +6 -6
  156. package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +2 -4
  157. package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +25 -16
  158. package/dist/src/functions/wirings/rpc/serialize-rpc-wrapper.js +43 -7
  159. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.d.ts +8 -3
  160. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +41 -31
  161. package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.d.ts +1 -1
  162. package/dist/src/functions/wirings/secrets/serialize-secrets-types.d.ts +2 -2
  163. package/dist/src/functions/wirings/triggers/serialize-trigger-meta.d.ts +1 -1
  164. package/dist/src/functions/wirings/triggers/serialize-trigger-meta.js +2 -2
  165. package/dist/src/functions/wirings/variables/serialize-variables-types.d.ts +2 -2
  166. package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +5 -12
  167. package/dist/src/functions/wirings/workflow/serialize-workflow-map.d.ts +2 -2
  168. package/dist/src/functions/wirings/workflow/serialize-workflow-meta.js +2 -2
  169. package/dist/src/services/cli-logger-forwarder.service.d.ts +4 -3
  170. package/dist/src/services/cli-logger.service.d.ts +3 -2
  171. package/dist/src/services.d.ts +4 -3
  172. package/dist/src/services.js +14 -3
  173. package/dist/src/utils/check-required-types.d.ts +1 -1
  174. package/dist/src/utils/contract-versions.d.ts +1 -1
  175. package/dist/src/utils/file-writer.d.ts +6 -1
  176. package/dist/src/utils/file-writer.js +14 -1
  177. package/dist/src/utils/generate-bootstrap-file.d.ts +2 -2
  178. package/dist/src/utils/openapi/codegen.d.ts +19 -0
  179. package/dist/src/utils/openapi/codegen.js +288 -0
  180. package/dist/src/utils/openapi/naming.d.ts +30 -0
  181. package/dist/src/utils/openapi/naming.js +167 -0
  182. package/dist/src/utils/openapi/parse-openapi.d.ts +36 -0
  183. package/dist/src/utils/openapi/parse-openapi.js +196 -0
  184. package/dist/src/utils/openapi/zod-codegen.d.ts +53 -0
  185. package/dist/src/utils/openapi/zod-codegen.js +251 -0
  186. package/dist/src/utils/pikku-cli-config.d.ts +2 -2
  187. package/dist/src/utils/pikku-cli-config.js +51 -30
  188. package/dist/src/utils/pikku-files-and-methods.d.ts +1 -1
  189. package/dist/src/utils/pikku-files-and-methods.js +1 -1
  190. package/dist/src/utils/serialize-import-map.d.ts +2 -2
  191. package/dist/src/utils/serialize-import-map.js +1 -1
  192. package/dist/src/utils/serialize-meta-ts.js +1 -1
  193. package/dist/src/utils/serialize-schemas.d.ts +2 -2
  194. package/dist/tsconfig.tsbuildinfo +1 -1
  195. package/package.json +4 -4
  196. package/console-app/assets/index-C19L3UJu.js +0 -637
  197. package/dist/src/functions/wirings/functions/pikku-command-external-types.d.ts +0 -1
  198. package/dist/src/functions/wirings/functions/pikku-command-external-types.js +0 -33
  199. package/dist/src/functions/wirings/functions/serialize-external-types.d.ts +0 -1
@@ -1,10 +1,11 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.0
2
+ * This file was generated by @pikku/cli@0.12.2
3
3
  */
4
4
  /**
5
5
  * Core function, middleware, and permission types for all wirings
6
6
  */
7
- import { CorePikkuFunctionConfig, CorePikkuAuth, CorePikkuAuthConfig, CorePikkuPermission, CorePikkuMiddleware, CorePermissionGroup, PikkuWire, PickRequired, CreateWireServices } from '@pikku/core';
7
+ import { CorePikkuFunctionConfig, CorePikkuAuth, CorePikkuAuthConfig, CorePikkuPermission, CorePikkuMiddleware, CorePermissionGroup, PikkuWire, PickRequired } from '@pikku/core';
8
+ import { CreateWireServices } from '@pikku/core/internal';
8
9
  import type { NodeType } from '@pikku/core/node';
9
10
  import type { StandardSchemaV1 } from '@standard-schema/spec';
10
11
  import { CorePikkuFunction, CorePikkuFunctionSessionless } from '@pikku/core/function';
@@ -347,27 +348,27 @@ export declare function pikkuSessionlessFunc<In, Out = unknown>(func: PikkuFunct
347
348
  */
348
349
  export declare const pikkuVoidFunc: (func: PikkuFunctionSessionless<void, void, "session" | "rpc"> | PikkuFunctionConfig<void, void, "session" | "rpc">) => PikkuFunctionConfig<void, void, "session" | "rpc", PikkuFunctionSessionless<void, void, "session" | "rpc", Services> | PikkuFunction<void, void, "session" | "rpc", Services>, undefined, undefined>;
349
350
  /**
350
- * Creates a wrapper function for external package functions that are exposed via RPC.
351
- * This allows you to wire external functions to any wiring type (HTTP, queue, etc.)
351
+ * Creates a wrapper function for addon package functions that are exposed via RPC.
352
+ * This allows you to wire addon functions to any wiring type (HTTP, queue, etc.)
352
353
  * without type compatibility issues.
353
354
  *
354
355
  * @template Name - The RPC method name (must be a key in FlattenedRPCMap)
355
356
  * @param rpcName - The name of the RPC method to invoke
356
- * @returns A Pikku function that proxies calls to the external RPC method
357
+ * @returns A Pikku function that proxies calls to the addon RPC method
357
358
  *
358
359
  * @example
359
360
  * ```typescript
360
- * // Wire an external function via HTTP
361
+ * // Wire an addon function via HTTP
361
362
  * wireHTTP({
362
363
  * auth: false,
363
364
  * method: 'get',
364
- * route: '/external/hello',
365
- * func: external('ext:hello'),
366
- * tags: ['external'],
365
+ * route: '/addon/hello',
366
+ * func: addon('ext:hello'),
367
+ * tags: ['addon'],
367
368
  * })
368
369
  * ```
369
370
  */
370
- export declare const external: <Name extends keyof FlattenedRPCMap>(rpcName: Name) => PikkuFunctionConfig<FlattenedRPCMap[Name]["input"], FlattenedRPCMap[Name]["output"], "session" | "rpc">;
371
+ export declare const addon: <Name extends keyof FlattenedRPCMap>(rpcName: Name) => PikkuFunctionConfig<FlattenedRPCMap[Name]["input"], FlattenedRPCMap[Name]["output"], "session" | "rpc">;
371
372
  /**
372
373
  * Creates a Pikku config factory.
373
374
  * Use this to define your application's configuration factory.
@@ -404,7 +405,7 @@ export declare const pikkuConfig: (func: (variables?: any, ...args: any[]) => Pr
404
405
  * })
405
406
  * ```
406
407
  */
407
- export declare const pikkuServices: (func: (config: Config, existingServices?: Partial<SingletonServices>) => Promise<RequiredSingletonServices>) => (config: Config, existingServices?: Partial<SingletonServices>) => Promise<RequiredSingletonServices>;
408
+ export declare const pikkuServices: (func: (config: Config, existingServices: Partial<SingletonServices>) => Promise<RequiredSingletonServices>) => (config: Config, existingServices?: Partial<SingletonServices>) => Promise<RequiredSingletonServices>;
408
409
  /**
409
410
  * Creates a Pikku wire services factory.
410
411
  * Use this to define services that are created per-request/session.
@@ -471,3 +472,5 @@ export declare const addMiddleware: (tag: string, middleware: PikkuMiddleware[])
471
472
  * ```
472
473
  */
473
474
  export declare const addPermission: <In = unknown>(tag: string, permissions: CorePermissionGroup<PikkuPermission<In>> | PikkuPermission<In>[]) => void;
475
+ export { wireAddon } from '@pikku/core';
476
+ export type { WireAddonConfig } from '@pikku/core';
@@ -1,10 +1,11 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.0
2
+ * This file was generated by @pikku/cli@0.12.2
3
3
  */
4
4
  /**
5
5
  * Core function, middleware, and permission types for all wirings
6
6
  */
7
7
  import { addMiddleware as addMiddlewareCore, addPermission as addPermissionCore } from '@pikku/core';
8
+ import { pikkuState as __pikkuState } from '@pikku/core/internal';
8
9
  import { pikkuAuth as pikkuAuthCore } from '@pikku/core';
9
10
  /**
10
11
  * Factory function for creating permissions with tree-shaking support.
@@ -149,31 +150,31 @@ export const pikkuVoidFunc = (func) => {
149
150
  return typeof func === 'function' ? { func } : func;
150
151
  };
151
152
  /**
152
- * Creates a wrapper function for external package functions that are exposed via RPC.
153
- * This allows you to wire external functions to any wiring type (HTTP, queue, etc.)
153
+ * Creates a wrapper function for addon package functions that are exposed via RPC.
154
+ * This allows you to wire addon functions to any wiring type (HTTP, queue, etc.)
154
155
  * without type compatibility issues.
155
156
  *
156
157
  * @template Name - The RPC method name (must be a key in FlattenedRPCMap)
157
158
  * @param rpcName - The name of the RPC method to invoke
158
- * @returns A Pikku function that proxies calls to the external RPC method
159
+ * @returns A Pikku function that proxies calls to the addon RPC method
159
160
  *
160
161
  * @example
161
162
  * ```typescript
162
- * // Wire an external function via HTTP
163
+ * // Wire an addon function via HTTP
163
164
  * wireHTTP({
164
165
  * auth: false,
165
166
  * method: 'get',
166
- * route: '/external/hello',
167
- * func: external('ext:hello'),
168
- * tags: ['external'],
167
+ * route: '/addon/hello',
168
+ * func: addon('ext:hello'),
169
+ * tags: ['addon'],
169
170
  * })
170
171
  * ```
171
172
  */
172
- export const external = (rpcName) => {
173
+ export const addon = (rpcName) => {
173
174
  return {
174
- func: (async (_services, data, { rpc }) => {
175
+ func: async (_services, data, { rpc }) => {
175
176
  return rpc.invoke(rpcName, data);
176
- })
177
+ }
177
178
  };
178
179
  };
179
180
  /**
@@ -212,7 +213,13 @@ export const pikkuConfig = (func) => func;
212
213
  * })
213
214
  * ```
214
215
  */
215
- export const pikkuServices = (func) => func;
216
+ export const pikkuServices = (func) => {
217
+ return async (config, existingServices = {}) => {
218
+ const services = await func(config, existingServices);
219
+ __pikkuState(null, 'package', 'singletonServices', services);
220
+ return services;
221
+ };
222
+ };
216
223
  /**
217
224
  * Creates a Pikku wire services factory.
218
225
  * Use this to define services that are created per-request/session.
@@ -230,7 +237,11 @@ export const pikkuServices = (func) => func;
230
237
  * })
231
238
  * ```
232
239
  */
233
- export const pikkuWireServices = (func) => func;
240
+ export const pikkuWireServices = (func) => {
241
+ const factories = __pikkuState(null, 'package', 'factories');
242
+ __pikkuState(null, 'package', 'factories', { ...factories, createWireServices: func });
243
+ return func;
244
+ };
234
245
  /**
235
246
  * Adds global middleware for a specific tag.
236
247
  *
@@ -283,3 +294,4 @@ export const addMiddleware = (tag, middleware) => {
283
294
  export const addPermission = (tag, permissions) => {
284
295
  addPermissionCore(tag, permissions, null);
285
296
  };
297
+ export { wireAddon } from '@pikku/core';
@@ -1,6 +1,6 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.0
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
  import metaData from './pikku-functions-meta.gen.json' with { type: 'json' };
6
6
  pikkuState(null, 'function', 'meta', metaData);