@pikku/cli 0.12.4 → 0.12.7

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 (121) hide show
  1. package/cli.schema.json +1 -1
  2. package/console-app/assets/{index-AX4YS8AA.js → index-sUj3oFEL.js} +1 -1
  3. package/console-app/index.html +1 -1
  4. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +6 -6
  5. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.js +1 -1
  6. package/dist/.pikku/agent/pikku-agent-wirings.gen.d.ts +1 -1
  7. package/dist/.pikku/agent/pikku-agent-wirings.gen.js +1 -1
  8. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
  9. package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
  10. package/dist/.pikku/channel/pikku-channels-meta.gen.js +1 -1
  11. package/dist/.pikku/channel/pikku-channels.gen.d.ts +1 -1
  12. package/dist/.pikku/channel/pikku-channels.gen.js +1 -1
  13. package/dist/.pikku/cli/pikku-cli-channel.js +1 -1
  14. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  15. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  16. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +1 -1
  17. package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
  18. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +1 -1
  19. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +11 -2
  20. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
  21. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
  22. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
  23. package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
  24. package/dist/.pikku/console/pikku-node-types.gen.d.ts +1 -1
  25. package/dist/.pikku/function/pikku-function-types.gen.d.ts +13 -13
  26. package/dist/.pikku/function/pikku-function-types.gen.js +1 -1
  27. package/dist/.pikku/function/pikku-functions-meta.gen.js +1 -1
  28. package/dist/.pikku/function/pikku-functions-meta.gen.json +88 -86
  29. package/dist/.pikku/function/pikku-functions.gen.js +1 -1
  30. package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
  31. package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
  32. package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +1 -1
  33. package/dist/.pikku/http/pikku-http-wirings.gen.d.ts +1 -1
  34. package/dist/.pikku/http/pikku-http-wirings.gen.js +1 -1
  35. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
  36. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
  37. package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +1 -1
  38. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.d.ts +1 -1
  39. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.js +1 -1
  40. package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
  41. package/dist/.pikku/pikku-services.gen.d.ts +1 -1
  42. package/dist/.pikku/pikku-types.gen.d.ts +1 -1
  43. package/dist/.pikku/pikku-types.gen.js +1 -1
  44. package/dist/.pikku/pikku-websocket.gen.d.ts +1 -1
  45. package/dist/.pikku/pikku-websocket.gen.js +1 -1
  46. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
  47. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
  48. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +1 -1
  49. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
  50. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
  51. package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.js +1 -1
  52. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
  53. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
  54. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
  55. package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.js +1 -1
  56. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.d.ts +1 -1
  57. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.js +1 -1
  58. package/dist/.pikku/schemas/register.gen.js +5 -3
  59. package/dist/.pikku/schemas/schemas/ConsoleCommandInput.schema.json +1 -1
  60. package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
  61. package/dist/.pikku/schemas/schemas/WatchInput.schema.json +1 -0
  62. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
  63. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  64. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
  65. package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
  66. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
  67. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  68. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
  69. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  70. package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
  71. package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
  72. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +34 -5
  73. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +5 -5
  74. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
  75. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +1 -1
  76. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  77. package/dist/src/cli.wiring.js +11 -1
  78. package/dist/src/functions/commands/all.js +16 -1
  79. package/dist/src/functions/commands/console.d.ts +3 -0
  80. package/dist/src/functions/commands/console.js +8 -1
  81. package/dist/src/functions/commands/new-addon.js +24 -18
  82. package/dist/src/functions/commands/versions-check.js +4 -4
  83. package/dist/src/functions/commands/versions-init.js +1 -1
  84. package/dist/src/functions/commands/versions-update.js +1 -1
  85. package/dist/src/functions/commands/watch.d.ts +7 -1
  86. package/dist/src/functions/commands/watch.js +10 -3
  87. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +2 -2
  88. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.d.ts +1 -1
  89. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.js +2 -2
  90. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.d.ts +1 -1
  91. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.js +2 -2
  92. package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.js +1 -1
  93. package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.js +12 -6
  94. package/dist/src/functions/wirings/ai-agent/serialize-public-agent.d.ts +1 -1
  95. package/dist/src/functions/wirings/ai-agent/serialize-public-agent.js +5 -5
  96. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +1 -1
  97. package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +1 -1
  98. package/dist/src/functions/wirings/cli/serialize-channel-cli.js +2 -2
  99. package/dist/src/functions/wirings/console/pikku-command-console-functions.js +1 -1
  100. package/dist/src/functions/wirings/console/serialize-console-functions.d.ts +1 -1
  101. package/dist/src/functions/wirings/console/serialize-console-functions.js +15 -2
  102. package/dist/src/functions/wirings/functions/serialize-function-types.js +15 -15
  103. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +1 -1
  104. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +1 -1
  105. package/dist/src/functions/wirings/rpc/serialize-public-rpc.d.ts +1 -1
  106. package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +4 -4
  107. package/dist/src/functions/wirings/rpc/serialize-rpc-wrapper.d.ts +1 -1
  108. package/dist/src/functions/wirings/rpc/serialize-rpc-wrapper.js +6 -6
  109. package/dist/src/functions/wirings/workflow/serialize-workflow-types.js +63 -8
  110. package/dist/src/services.js +1 -1
  111. package/dist/src/utils/pikku-cli-config.js +1 -0
  112. package/dist/tsconfig.tsbuildinfo +1 -1
  113. package/package.json +5 -4
  114. package/dist/src/utils/openapi/codegen.d.ts +0 -20
  115. package/dist/src/utils/openapi/codegen.js +0 -456
  116. package/dist/src/utils/openapi/naming.d.ts +0 -30
  117. package/dist/src/utils/openapi/naming.js +0 -167
  118. package/dist/src/utils/openapi/parse-openapi.d.ts +0 -61
  119. package/dist/src/utils/openapi/parse-openapi.js +0 -306
  120. package/dist/src/utils/openapi/zod-codegen.d.ts +0 -1
  121. package/dist/src/utils/openapi/zod-codegen.js +0 -1
package/cli.schema.json CHANGED
@@ -1 +1 @@
1
- {"$schema":"http://json-schema.org/draft-07/schema#","type":"object","additionalProperties":false,"properties":{"outDir":{"type":"string"},"schemaDirectory":{"type":"string"},"typesDeclarationFile":{"type":"string"},"functionsFile":{"type":"string"},"functionsMetaFile":{"type":"string"},"functionsMetaJsonFile":{"type":"string"},"functionTypesFile":{"type":"string"},"httpWiringsFile":{"type":"string"},"httpWiringMetaFile":{"type":"string"},"httpWiringMetaJsonFile":{"type":"string"},"httpMapDeclarationFile":{"type":"string"},"httpTypesFile":{"type":"string"},"gatewaysWiringFile":{"type":"string"},"channelsWiringFile":{"type":"string"},"channelsWiringMetaFile":{"type":"string"},"channelsWiringMetaJsonFile":{"type":"string"},"channelsMapDeclarationFile":{"type":"string"},"channelsTypesFile":{"type":"string"},"rpcInternalWiringMetaFile":{"type":"string"},"rpcInternalWiringMetaJsonFile":{"type":"string"},"rpcInternalMapDeclarationFile":{"type":"string"},"rpcMapDeclarationFile":{"type":"string"},"remoteRpcWorkersFile":{"type":"string"},"publicRpcFile":{"type":"string"},"publicAgentFile":{"type":"string"},"consoleFunctionsFile":{"type":"string"},"workflowWorkersFile":{"type":"string"},"triggersTypesFile":{"type":"string"},"triggersWiringFile":{"type":"string"},"triggersWiringMetaFile":{"type":"string"},"triggersWiringMetaJsonFile":{"type":"string"},"triggerSourcesMetaFile":{"type":"string"},"triggerSourcesMetaJsonFile":{"type":"string"},"schedulersWiringFile":{"type":"string"},"schedulersWiringMetaFile":{"type":"string"},"schedulersWiringMetaJsonFile":{"type":"string"},"schedulersTypesFile":{"type":"string"},"queueWorkersWiringFile":{"type":"string"},"queueWorkersWiringMetaFile":{"type":"string"},"queueWorkersWiringMetaJsonFile":{"type":"string"},"queueMapDeclarationFile":{"type":"string"},"queueTypesFile":{"type":"string"},"workflowsWiringFile":{"type":"string"},"workflowsWiringMetaFile":{"type":"string"},"workflowsWorkersFile":{"type":"string"},"workflowMapDeclarationFile":{"type":"string"},"workflowTypesFile":{"type":"string"},"workflowMetaDir":{"type":"string"},"mcpWiringsFile":{"type":"string"},"mcpWiringsMetaFile":{"type":"string"},"mcpWiringsMetaJsonFile":{"type":"string"},"mcpTypesFile":{"type":"string"},"agentWiringsFile":{"type":"string"},"agentWiringMetaFile":{"type":"string"},"agentWiringMetaJsonFile":{"type":"string"},"agentTypesFile":{"type":"string"},"agentMapDeclarationFile":{"type":"string"},"cliWiringsFile":{"type":"string"},"cliWiringMetaFile":{"type":"string"},"cliWiringMetaJsonFile":{"type":"string"},"cliBootstrapFile":{"type":"string"},"cliTypesFile":{"type":"string"},"servicesFile":{"type":"string"},"middlewareFile":{"type":"string"},"middlewareGroupsMetaJsonFile":{"type":"string"},"permissionsFile":{"type":"string"},"permissionsGroupsMetaJsonFile":{"type":"string"},"bootstrapFile":{"type":"string"},"packageFile":{"type":"string"},"addonTypesFile":{"type":"string"},"nodeTypesFile":{"type":"string"},"secretTypesFile":{"type":"string"},"secretsFile":{"type":"string"},"secretsMetaJsonFile":{"type":"string"},"variableTypesFile":{"type":"string"},"variablesFile":{"type":"string"},"variablesMetaJsonFile":{"type":"string"},"$schema":{"type":"string"},"extends":{"type":"string"},"rootDir":{"type":"string"},"srcDirectories":{"type":"array","items":{"type":"string"}},"ignoreFiles":{"type":"array","items":{"type":"string"}},"packageMappings":{"type":"object","additionalProperties":{"type":"string"}},"addon":{"anyOf":[{"type":"boolean"},{"type":"object","properties":{"categories":{"type":"array","items":{"type":"string"}},"icon":{"type":"string"},"displayName":{"type":"string"},"description":{"type":"string"}},"additionalProperties":false}]},"addonName":{"type":"string"},"models":{"type":"object","additionalProperties":{"anyOf":[{"type":"string"},{"type":"object","properties":{"model":{"type":"string"},"temperature":{"type":"number"},"maxSteps":{"type":"number"}},"required":["model"],"additionalProperties":false}]}},"agentDefaults":{"type":"object","properties":{"temperature":{"type":"number"},"maxSteps":{"type":"number"}},"additionalProperties":false},"agentOverrides":{"type":"object","additionalProperties":{"type":"object","properties":{"model":{"type":"string"},"temperature":{"type":"number"},"maxSteps":{"type":"number"}},"additionalProperties":false}},"configFile":{"type":"string"},"tags":{"type":"array","items":{"type":"string"}},"types":{"type":"array","items":{"type":"string"}},"userSessionType":{"type":"string"},"singletonServicesFactoryType":{"type":"string"},"wireServicesFactoryType":{"type":"string"},"configDir":{"type":"string"},"tsconfig":{"type":"string"},"clientFiles":{"type":"object","properties":{"fetchFile":{"type":"string"},"websocketFile":{"type":"string"},"rpcWiringsFile":{"type":"string"},"queueWiringsFile":{"type":"string"},"mcpJsonFile":{"type":"string"},"nextBackendFile":{"type":"string"},"nextHTTPFile":{"type":"string"}},"additionalProperties":false},"openAPI":{"type":"object","properties":{"outputFile":{"type":"string"},"additionalInfo":{"$ref":"#/definitions/OpenAPISpecInfo"}},"required":["outputFile","additionalInfo"],"additionalProperties":false},"schema":{"type":"object","properties":{"additionalProperties":{"type":"boolean"},"supportsImportAttributes":{"type":"boolean"}},"additionalProperties":false},"cli":{"type":"object","properties":{"entrypoints":{"type":"object","additionalProperties":{"anyOf":[{"type":"string"},{"type":"object","properties":{"type":{"type":"string","const":"local"},"path":{"type":"string"}},"required":["type","path"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"channel"},"name":{"type":"string"},"route":{"type":"string"},"wirePath":{"type":"string"},"path":{"type":"string"}},"required":["type","wirePath"],"additionalProperties":false},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"object","properties":{"type":{"type":"string","const":"local"},"path":{"type":"string"}},"required":["type","path"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"channel"},"name":{"type":"string"},"route":{"type":"string"},"wirePath":{"type":"string"},"path":{"type":"string"}},"required":["type","wirePath"],"additionalProperties":false}]}}]}}},"additionalProperties":false},"workflows":{"type":"object","properties":{"orchestratorQueue":{"type":"string"},"workerQueue":{"type":"string"}},"additionalProperties":false},"scaffold":{"type":"object","properties":{"addonDir":{"type":"string"},"functionDir":{"type":"string"},"wiringDir":{"type":"string"},"middlewareDir":{"type":"string"},"permissionDir":{"type":"string"},"pikkuDir":{"type":"string"},"rpc":{"$ref":"#/definitions/PikkuScaffoldFeature"},"console":{"$ref":"#/definitions/PikkuScaffoldFeature"},"agent":{"$ref":"#/definitions/PikkuScaffoldFeature"},"workflow":{"$ref":"#/definitions/PikkuScaffoldFeature"}},"additionalProperties":false},"forceRequiredServices":{"type":"array","items":{"type":"string"}},"schemasFromTypes":{"type":"array","items":{"type":"string"}},"stateOutput":{"type":"string"},"stateInput":{"type":"string"},"verboseMeta":{"type":"boolean"},"lint":{"type":"object","properties":{"servicesNotDestructured":{"type":"string","enum":["off","warn","error"]},"wiresNotDestructured":{"type":"string","enum":["off","warn","error"]}},"additionalProperties":false},"addonMetaJsonFile":{"type":"string"},"filters":{"$ref":"#/definitions/InspectorFilters"}},"required":["addonTypesFile","agentMapDeclarationFile","agentTypesFile","agentWiringMetaFile","agentWiringMetaJsonFile","agentWiringsFile","bootstrapFile","channelsMapDeclarationFile","channelsTypesFile","channelsWiringFile","channelsWiringMetaFile","channelsWiringMetaJsonFile","cliBootstrapFile","cliTypesFile","cliWiringMetaFile","cliWiringMetaJsonFile","cliWiringsFile","configDir","consoleFunctionsFile","filters","functionTypesFile","functionsFile","functionsMetaFile","functionsMetaJsonFile","gatewaysWiringFile","httpMapDeclarationFile","httpTypesFile","httpWiringMetaFile","httpWiringMetaJsonFile","httpWiringsFile","mcpTypesFile","mcpWiringsFile","mcpWiringsMetaFile","mcpWiringsMetaJsonFile","middlewareFile","middlewareGroupsMetaJsonFile","nodeTypesFile","outDir","packageFile","packageMappings","permissionsFile","permissionsGroupsMetaJsonFile","publicAgentFile","publicRpcFile","queueMapDeclarationFile","queueTypesFile","queueWorkersWiringFile","queueWorkersWiringMetaFile","queueWorkersWiringMetaJsonFile","remoteRpcWorkersFile","rootDir","rpcInternalMapDeclarationFile","rpcInternalWiringMetaFile","rpcInternalWiringMetaJsonFile","rpcMapDeclarationFile","schedulersTypesFile","schedulersWiringFile","schedulersWiringMetaFile","schedulersWiringMetaJsonFile","schemaDirectory","secretTypesFile","secretsFile","secretsMetaJsonFile","servicesFile","srcDirectories","triggerSourcesMetaFile","triggerSourcesMetaJsonFile","triggersTypesFile","triggersWiringFile","triggersWiringMetaFile","triggersWiringMetaJsonFile","tsconfig","typesDeclarationFile","variableTypesFile","variablesFile","variablesMetaJsonFile","workflowMapDeclarationFile","workflowMetaDir","workflowTypesFile","workflowWorkersFile","workflowsWiringFile","workflowsWiringMetaFile","workflowsWorkersFile"],"definitions":{"OpenAPISpecInfo":{"type":"object","properties":{"info":{"type":"object","properties":{"title":{"type":"string"},"version":{"type":"string"},"description":{"type":"string"},"termsOfService":{"type":"string"},"contact":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string"},"email":{"type":"string"}},"additionalProperties":false},"license":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string"}},"required":["name"],"additionalProperties":false}},"required":["title","version","description"],"additionalProperties":false},"servers":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"description":{"type":"string"}},"required":["url"],"additionalProperties":false}},"tags":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}},"required":["name"],"additionalProperties":false}},"externalDocs":{"type":"object","properties":{"description":{"type":"string"},"url":{"type":"string"}},"required":["url"],"additionalProperties":false},"securitySchemes":{"type":"object"},"security":{"type":"array","items":{"type":"object","additionalProperties":{"type":"array","items":{}}}}},"required":["info","servers"],"additionalProperties":false},"PikkuScaffoldFeature":{"type":["string","boolean"],"enum":["auth","no-auth",false]},"InspectorFilters":{"type":"object","properties":{"names":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"}},"types":{"type":"array","items":{"type":"string"}},"directories":{"type":"array","items":{"type":"string"}},"httpRoutes":{"type":"array","items":{"type":"string"}},"httpMethods":{"type":"array","items":{"type":"string"}}},"additionalProperties":false}}}
1
+ {"$schema":"http://json-schema.org/draft-07/schema#","type":"object","additionalProperties":false,"properties":{"outDir":{"type":"string"},"schemaDirectory":{"type":"string"},"typesDeclarationFile":{"type":"string"},"functionsFile":{"type":"string"},"functionsMetaFile":{"type":"string"},"functionsMetaJsonFile":{"type":"string"},"functionTypesFile":{"type":"string"},"httpWiringsFile":{"type":"string"},"httpWiringMetaFile":{"type":"string"},"httpWiringMetaJsonFile":{"type":"string"},"httpMapDeclarationFile":{"type":"string"},"httpTypesFile":{"type":"string"},"gatewaysWiringFile":{"type":"string"},"channelsWiringFile":{"type":"string"},"channelsWiringMetaFile":{"type":"string"},"channelsWiringMetaJsonFile":{"type":"string"},"channelsMapDeclarationFile":{"type":"string"},"channelsTypesFile":{"type":"string"},"rpcInternalWiringMetaFile":{"type":"string"},"rpcInternalWiringMetaJsonFile":{"type":"string"},"rpcInternalMapDeclarationFile":{"type":"string"},"rpcMapDeclarationFile":{"type":"string"},"remoteRpcWorkersFile":{"type":"string"},"publicRpcFile":{"type":"string"},"publicAgentFile":{"type":"string"},"consoleFunctionsFile":{"type":"string"},"workflowWorkersFile":{"type":"string"},"triggersTypesFile":{"type":"string"},"triggersWiringFile":{"type":"string"},"triggersWiringMetaFile":{"type":"string"},"triggersWiringMetaJsonFile":{"type":"string"},"triggerSourcesMetaFile":{"type":"string"},"triggerSourcesMetaJsonFile":{"type":"string"},"schedulersWiringFile":{"type":"string"},"schedulersWiringMetaFile":{"type":"string"},"schedulersWiringMetaJsonFile":{"type":"string"},"schedulersTypesFile":{"type":"string"},"queueWorkersWiringFile":{"type":"string"},"queueWorkersWiringMetaFile":{"type":"string"},"queueWorkersWiringMetaJsonFile":{"type":"string"},"queueMapDeclarationFile":{"type":"string"},"queueTypesFile":{"type":"string"},"workflowsWiringFile":{"type":"string"},"workflowsWiringMetaFile":{"type":"string"},"workflowsWorkersFile":{"type":"string"},"workflowMapDeclarationFile":{"type":"string"},"workflowTypesFile":{"type":"string"},"workflowMetaDir":{"type":"string"},"mcpWiringsFile":{"type":"string"},"mcpWiringsMetaFile":{"type":"string"},"mcpWiringsMetaJsonFile":{"type":"string"},"mcpTypesFile":{"type":"string"},"agentWiringsFile":{"type":"string"},"agentWiringMetaFile":{"type":"string"},"agentWiringMetaJsonFile":{"type":"string"},"agentTypesFile":{"type":"string"},"agentMapDeclarationFile":{"type":"string"},"cliWiringsFile":{"type":"string"},"cliWiringMetaFile":{"type":"string"},"cliWiringMetaJsonFile":{"type":"string"},"cliBootstrapFile":{"type":"string"},"cliTypesFile":{"type":"string"},"servicesFile":{"type":"string"},"middlewareFile":{"type":"string"},"middlewareGroupsMetaJsonFile":{"type":"string"},"permissionsFile":{"type":"string"},"permissionsGroupsMetaJsonFile":{"type":"string"},"bootstrapFile":{"type":"string"},"packageFile":{"type":"string"},"addonTypesFile":{"type":"string"},"nodeTypesFile":{"type":"string"},"secretTypesFile":{"type":"string"},"secretsFile":{"type":"string"},"secretsMetaJsonFile":{"type":"string"},"variableTypesFile":{"type":"string"},"variablesFile":{"type":"string"},"variablesMetaJsonFile":{"type":"string"},"$schema":{"type":"string"},"extends":{"type":"string"},"rootDir":{"type":"string"},"srcDirectories":{"type":"array","items":{"type":"string"}},"ignoreFiles":{"type":"array","items":{"type":"string"}},"packageMappings":{"type":"object","additionalProperties":{"type":"string"}},"addon":{"anyOf":[{"type":"boolean"},{"type":"object","properties":{"categories":{"type":"array","items":{"type":"string"}},"icon":{"type":"string"},"displayName":{"type":"string"},"description":{"type":"string"},"openapi":{"type":"object","properties":{"version":{"type":"string"},"hash":{"type":"string"}},"required":["version","hash"],"additionalProperties":false}},"additionalProperties":false}]},"addonName":{"type":"string"},"models":{"type":"object","additionalProperties":{"anyOf":[{"type":"string"},{"type":"object","properties":{"model":{"type":"string"},"temperature":{"type":"number"},"maxSteps":{"type":"number"}},"required":["model"],"additionalProperties":false}]}},"agentDefaults":{"type":"object","properties":{"temperature":{"type":"number"},"maxSteps":{"type":"number"}},"additionalProperties":false},"agentOverrides":{"type":"object","additionalProperties":{"type":"object","properties":{"model":{"type":"string"},"temperature":{"type":"number"},"maxSteps":{"type":"number"}},"additionalProperties":false}},"configFile":{"type":"string"},"tags":{"type":"array","items":{"type":"string"}},"types":{"type":"array","items":{"type":"string"}},"userSessionType":{"type":"string"},"singletonServicesFactoryType":{"type":"string"},"wireServicesFactoryType":{"type":"string"},"configDir":{"type":"string"},"tsconfig":{"type":"string"},"clientFiles":{"type":"object","properties":{"fetchFile":{"type":"string"},"websocketFile":{"type":"string"},"rpcWiringsFile":{"type":"string"},"queueWiringsFile":{"type":"string"},"mcpJsonFile":{"type":"string"},"nextBackendFile":{"type":"string"},"nextHTTPFile":{"type":"string"}},"additionalProperties":false},"openAPI":{"type":"object","properties":{"outputFile":{"type":"string"},"additionalInfo":{"$ref":"#/definitions/OpenAPISpecInfo"}},"required":["outputFile","additionalInfo"],"additionalProperties":false},"schema":{"type":"object","properties":{"additionalProperties":{"type":"boolean"},"supportsImportAttributes":{"type":"boolean"}},"additionalProperties":false},"cli":{"type":"object","properties":{"entrypoints":{"type":"object","additionalProperties":{"anyOf":[{"type":"string"},{"type":"object","properties":{"type":{"type":"string","const":"local"},"path":{"type":"string"}},"required":["type","path"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"channel"},"name":{"type":"string"},"route":{"type":"string"},"wirePath":{"type":"string"},"path":{"type":"string"}},"required":["type","wirePath"],"additionalProperties":false},{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"object","properties":{"type":{"type":"string","const":"local"},"path":{"type":"string"}},"required":["type","path"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"channel"},"name":{"type":"string"},"route":{"type":"string"},"wirePath":{"type":"string"},"path":{"type":"string"}},"required":["type","wirePath"],"additionalProperties":false}]}}]}}},"additionalProperties":false},"workflows":{"type":"object","properties":{"orchestratorQueue":{"type":"string"},"workerQueue":{"type":"string"}},"additionalProperties":false},"scaffold":{"type":"object","properties":{"addonDir":{"type":"string"},"functionDir":{"type":"string"},"wiringDir":{"type":"string"},"middlewareDir":{"type":"string"},"permissionDir":{"type":"string"},"pikkuDir":{"type":"string"},"rpc":{"$ref":"#/definitions/PikkuScaffoldFeature"},"console":{"$ref":"#/definitions/PikkuScaffoldFeature"},"agent":{"$ref":"#/definitions/PikkuScaffoldFeature"},"workflow":{"$ref":"#/definitions/PikkuScaffoldFeature"}},"additionalProperties":false},"forceRequiredServices":{"type":"array","items":{"type":"string"}},"schemasFromTypes":{"type":"array","items":{"type":"string"}},"stateOutput":{"type":"string"},"stateInput":{"type":"string"},"verboseMeta":{"type":"boolean"},"lint":{"type":"object","properties":{"servicesNotDestructured":{"type":"string","enum":["off","warn","error"]},"wiresNotDestructured":{"type":"string","enum":["off","warn","error"]}},"additionalProperties":false},"addonMetaJsonFile":{"type":"string"},"globalHTTPPrefix":{"type":"string"},"filters":{"$ref":"#/definitions/InspectorFilters"}},"required":["addonTypesFile","agentMapDeclarationFile","agentTypesFile","agentWiringMetaFile","agentWiringMetaJsonFile","agentWiringsFile","bootstrapFile","channelsMapDeclarationFile","channelsTypesFile","channelsWiringFile","channelsWiringMetaFile","channelsWiringMetaJsonFile","cliBootstrapFile","cliTypesFile","cliWiringMetaFile","cliWiringMetaJsonFile","cliWiringsFile","configDir","consoleFunctionsFile","filters","functionTypesFile","functionsFile","functionsMetaFile","functionsMetaJsonFile","gatewaysWiringFile","httpMapDeclarationFile","httpTypesFile","httpWiringMetaFile","httpWiringMetaJsonFile","httpWiringsFile","mcpTypesFile","mcpWiringsFile","mcpWiringsMetaFile","mcpWiringsMetaJsonFile","middlewareFile","middlewareGroupsMetaJsonFile","nodeTypesFile","outDir","packageFile","packageMappings","permissionsFile","permissionsGroupsMetaJsonFile","publicAgentFile","publicRpcFile","queueMapDeclarationFile","queueTypesFile","queueWorkersWiringFile","queueWorkersWiringMetaFile","queueWorkersWiringMetaJsonFile","remoteRpcWorkersFile","rootDir","rpcInternalMapDeclarationFile","rpcInternalWiringMetaFile","rpcInternalWiringMetaJsonFile","rpcMapDeclarationFile","schedulersTypesFile","schedulersWiringFile","schedulersWiringMetaFile","schedulersWiringMetaJsonFile","schemaDirectory","secretTypesFile","secretsFile","secretsMetaJsonFile","servicesFile","srcDirectories","triggerSourcesMetaFile","triggerSourcesMetaJsonFile","triggersTypesFile","triggersWiringFile","triggersWiringMetaFile","triggersWiringMetaJsonFile","tsconfig","typesDeclarationFile","variableTypesFile","variablesFile","variablesMetaJsonFile","workflowMapDeclarationFile","workflowMetaDir","workflowTypesFile","workflowWorkersFile","workflowsWiringFile","workflowsWiringMetaFile","workflowsWorkersFile"],"definitions":{"OpenAPISpecInfo":{"type":"object","properties":{"info":{"type":"object","properties":{"title":{"type":"string"},"version":{"type":"string"},"description":{"type":"string"},"termsOfService":{"type":"string"},"contact":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string"},"email":{"type":"string"}},"additionalProperties":false},"license":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string"}},"required":["name"],"additionalProperties":false}},"required":["title","version","description"],"additionalProperties":false},"servers":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"description":{"type":"string"}},"required":["url"],"additionalProperties":false}},"tags":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}},"required":["name"],"additionalProperties":false}},"externalDocs":{"type":"object","properties":{"description":{"type":"string"},"url":{"type":"string"}},"required":["url"],"additionalProperties":false},"securitySchemes":{"type":"object"},"security":{"type":"array","items":{"type":"object","additionalProperties":{"type":"array","items":{}}}}},"required":["info","servers"],"additionalProperties":false},"PikkuScaffoldFeature":{"type":["string","boolean"],"enum":["auth","no-auth",false]},"InspectorFilters":{"type":"object","properties":{"names":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"}},"types":{"type":"array","items":{"type":"string"}},"directories":{"type":"array","items":{"type":"string"}},"httpRoutes":{"type":"array","items":{"type":"string"}},"httpMethods":{"type":"array","items":{"type":"string"}}},"additionalProperties":false}}}
@@ -121,7 +121,7 @@ ${x}`}function SE({color:r,theme:i,autoContrast:o}){return(typeof o=="boolean"?o
121
121
  *
122
122
  * You can read more about the APCA Readability Criterion at
123
123
  * https://readtech.org/ARC/
124
- */const jMt=.027,IOn=5e-4,OOn=.1,EMt=1.14,U0e=.022,CMt=1.414,NOn=(r,i)=>{r=new $r(r),i=new $r(i),r.alpha()<1&&(r=$B(i,r,r.alpha(),"rgb"));const o=_Mt(...r.rgb()),a=_Mt(...i.rgb()),f=o>=U0e?o:o+Math.pow(U0e-o,CMt),g=a>=U0e?a:a+Math.pow(U0e-a,CMt),h=Math.pow(g,.56)-Math.pow(f,.57),b=Math.pow(g,.65)-Math.pow(f,.62),w=Math.abs(g-f)<IOn?0:f<g?h*EMt:b*EMt;return(Math.abs(w)<OOn?0:w>0?w-jMt:w+jMt)*100};function _Mt(r,i,o){return .2126729*Math.pow(r/255,2.4)+.7151522*Math.pow(i/255,2.4)+.072175*Math.pow(o/255,2.4)}const{sqrt:q6,pow:Od,min:ROn,max:POn,atan2:TMt,abs:AMt,cos:q0e,sin:MMt,exp:$On,PI:IMt}=Math;function DOn(r,i,o=1,a=1,f=1){var g=function(pe){return 360*pe/(2*IMt)},h=function(pe){return 2*IMt*pe/360};r=new $r(r),i=new $r(i);const[b,w,x]=Array.from(r.lab()),[k,C,T]=Array.from(i.lab()),A=(b+k)/2,M=q6(Od(w,2)+Od(x,2)),I=q6(Od(C,2)+Od(T,2)),R=(M+I)/2,$=.5*(1-q6(Od(R,7)/(Od(R,7)+Od(25,7)))),F=w*(1+$),B=C*(1+$),U=q6(Od(F,2)+Od(x,2)),q=q6(Od(B,2)+Od(T,2)),V=(U+q)/2,Y=g(TMt(x,F)),Z=g(TMt(T,B)),oe=Y>=0?Y:Y+360,se=Z>=0?Z:Z+360,de=AMt(oe-se)>180?(oe+se+360)/2:(oe+se)/2,be=1-.17*q0e(h(de-30))+.24*q0e(h(2*de))+.32*q0e(h(3*de+6))-.2*q0e(h(4*de-63));let K=se-oe;K=AMt(K)<=180?K:se<=oe?K+360:K-360,K=2*q6(U*q)*MMt(h(K)/2);const ne=k-b,me=q-U,ce=1+.015*Od(A-50,2)/q6(20+Od(A-50,2)),ve=1+.045*V,xe=1+.015*V*be,Ae=30*$On(-Od((de-275)/25,2)),ge=-(2*q6(Od(V,7)/(Od(V,7)+Od(25,7))))*MMt(2*h(Ae)),ke=q6(Od(ne/(o*ce),2)+Od(me/(a*ve),2)+Od(K/(f*xe),2)+ge*(me/(a*ve))*(K/(f*xe)));return POn(0,ROn(100,ke))}function LOn(r,i,o="lab"){r=new $r(r),i=new $r(i);const a=r.get(o),f=i.get(o);let g=0;for(let h in a){const b=(a[h]||0)-(f[h]||0);g+=b*b}return Math.sqrt(g)}const FOn=(...r)=>{try{return new $r(...r),!0}catch{return!1}},zOn={cool(){return Xbe([gc.hsl(180,1,.9),gc.hsl(250,.7,.4)])},hot(){return Xbe(["#000","#f00","#ff0","#fff"]).mode("rgb")}},BFe={OrRd:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"],PuBu:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"],BuPu:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"],Oranges:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"],BuGn:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"],YlOrBr:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"],YlGn:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"],Reds:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"],RdPu:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"],Greens:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"],YlGnBu:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"],Purples:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"],GnBu:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"],Greys:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"],YlOrRd:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"],PuRd:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"],Blues:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"],PuBuGn:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"],Viridis:["#440154","#482777","#3f4a8a","#31678e","#26838f","#1f9d8a","#6cce5a","#b6de2b","#fee825"],Spectral:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],RdYlGn:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],RdBu:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],PiYG:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],PRGn:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],RdYlBu:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],BrBG:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],RdGy:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],PuOr:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],Set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],Accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],Set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],Set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],Dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],Paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],Pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],Pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},FFt=Object.keys(BFe),OMt=new Map(FFt.map(r=>[r.toLowerCase(),r])),BOn=typeof Proxy=="function"?new Proxy(BFe,{get(r,i){const o=i.toLowerCase();if(OMt.has(o))return r[OMt.get(o)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(FFt)}}):BFe,HOn=(...r)=>{r=Io(r,"cmyk");const[i,o,a,f]=r,g=r.length>4?r[4]:1;return f===1?[0,0,0,g]:[i>=1?0:255*(1-i)*(1-f),o>=1?0:255*(1-o)*(1-f),a>=1?0:255*(1-a)*(1-f),g]},{max:NMt}=Math,UOn=(...r)=>{let[i,o,a]=Io(r,"rgb");i=i/255,o=o/255,a=a/255;const f=1-NMt(i,NMt(o,a)),g=f<1?1/(1-f):0,h=(1-i-f)*g,b=(1-o-f)*g,w=(1-a-f)*g;return[h,b,w,f]};$r.prototype.cmyk=function(){return UOn(this._rgb)};const qOn=(...r)=>new $r(...r,"cmyk");Object.assign(gc,{cmyk:qOn});xo.format.cmyk=HOn;xo.autodetect.push({p:2,test:(...r)=>{if(r=Io(r,"cmyk"),mc(r)==="array"&&r.length===4)return"cmyk"}});const GOn=(...r)=>{const i=Io(r,"hsla");let o=fH(r)||"lsa";return i[0]=l2(i[0]||0)+"deg",i[1]=l2(i[1]*100)+"%",i[2]=l2(i[2]*100)+"%",o==="hsla"||i.length>3&&i[3]<1?(i[3]="/ "+(i.length>3?i[3]:1),o="hsla"):i.length=3,`${o.substr(0,3)}(${i.join(" ")})`},VOn=(...r)=>{const i=Io(r,"lab");let o=fH(r)||"lab";return i[0]=l2(i[0])+"%",i[1]=l2(i[1]),i[2]=l2(i[2]),o==="laba"||i.length>3&&i[3]<1?i[3]="/ "+(i.length>3?i[3]:1):i.length=3,`lab(${i.join(" ")})`},JOn=(...r)=>{const i=Io(r,"lch");let o=fH(r)||"lab";return i[0]=l2(i[0])+"%",i[1]=l2(i[1]),i[2]=isNaN(i[2])?"none":l2(i[2])+"deg",o==="lcha"||i.length>3&&i[3]<1?i[3]="/ "+(i.length>3?i[3]:1):i.length=3,`lch(${i.join(" ")})`},KOn=(...r)=>{const i=Io(r,"lab");return i[0]=l2(i[0]*100)+"%",i[1]=FFe(i[1]),i[2]=FFe(i[2]),i.length>3&&i[3]<1?i[3]="/ "+(i.length>3?i[3]:1):i.length=3,`oklab(${i.join(" ")})`},zFt=(...r)=>{const[i,o,a,...f]=Io(r,"rgb"),[g,h,b]=pUe(i,o,a),[w,x,k]=NFt(g,h,b);return[w,x,k,...f.length>0&&f[0]<1?[f[0]]:[]]},WOn=(...r)=>{const i=Io(r,"lch");return i[0]=l2(i[0]*100)+"%",i[1]=FFe(i[1]),i[2]=isNaN(i[2])?"none":l2(i[2])+"deg",i.length>3&&i[3]<1?i[3]="/ "+(i.length>3?i[3]:1):i.length=3,`oklch(${i.join(" ")})`},{round:mDe}=Math,YOn=(...r)=>{const i=Io(r,"rgba");let o=fH(r)||"rgb";if(o.substr(0,3)==="hsl")return GOn(PFt(i),o);if(o.substr(0,3)==="lab"){const a=ote();rE("d50");const f=VOn(lUe(i),o);return rE(a),f}if(o.substr(0,3)==="lch"){const a=ote();rE("d50");const f=JOn(hUe(i),o);return rE(a),f}return o.substr(0,5)==="oklab"?KOn(pUe(i)):o.substr(0,5)==="oklch"?WOn(zFt(i)):(i[0]=mDe(i[0]),i[1]=mDe(i[1]),i[2]=mDe(i[2]),(o==="rgba"||i.length>3&&i[3]<1)&&(i[3]="/ "+(i.length>3?i[3]:1),o="rgba"),`${o.substr(0,3)}(${i.slice(0,o==="rgb"?3:4).join(" ")})`)},BFt=(...r)=>{r=Io(r,"lch");const[i,o,a,...f]=r,[g,h,b]=OFt(i,o,a),[w,x,k]=dUe(g,h,b);return[w,x,k,...f.length>0&&f[0]<1?[f[0]]:[]]},aE=/((?:-?\d+)|(?:-?\d+(?:\.\d+)?)%|none)/.source,WS=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%?)|none)/.source,Qbe=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%)|none)/.source,p2=/\s*/.source,dH=/\s+/.source,gUe=/\s*,\s*/.source,Aye=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)(?:deg)?)|none)/.source,pH=/\s*(?:\/\s*((?:[01]|[01]?\.\d+)|\d+(?:\.\d+)?%))?/.source,HFt=new RegExp("^rgba?\\("+p2+[aE,aE,aE].join(dH)+pH+"\\)$"),UFt=new RegExp("^rgb\\("+p2+[aE,aE,aE].join(gUe)+p2+"\\)$"),qFt=new RegExp("^rgba\\("+p2+[aE,aE,aE,WS].join(gUe)+p2+"\\)$"),GFt=new RegExp("^hsla?\\("+p2+[Aye,Qbe,Qbe].join(dH)+pH+"\\)$"),VFt=new RegExp("^hsl?\\("+p2+[Aye,Qbe,Qbe].join(gUe)+p2+"\\)$"),JFt=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,KFt=new RegExp("^lab\\("+p2+[WS,WS,WS].join(dH)+pH+"\\)$"),WFt=new RegExp("^lch\\("+p2+[WS,WS,Aye].join(dH)+pH+"\\)$"),YFt=new RegExp("^oklab\\("+p2+[WS,WS,WS].join(dH)+pH+"\\)$"),XFt=new RegExp("^oklch\\("+p2+[WS,WS,Aye].join(dH)+pH+"\\)$"),{round:QFt}=Math,Bz=r=>r.map((i,o)=>o<=2?vN(QFt(i),0,255):i),Nd=(r,i=0,o=100,a=!1)=>(typeof r=="string"&&r.endsWith("%")&&(r=parseFloat(r.substring(0,r.length-1))/100,a?r=i+(r+1)*.5*(o-i):r=i+r*(o-i)),+r),Y0=(r,i)=>r==="none"?i:r,mUe=r=>{if(r=r.toLowerCase().trim(),r==="transparent")return[0,0,0,0];let i;if(xo.format.named)try{return xo.format.named(r)}catch{}if((i=r.match(HFt))||(i=r.match(UFt))){let o=i.slice(1,4);for(let f=0;f<3;f++)o[f]=+Nd(Y0(o[f],0),0,255);o=Bz(o);const a=i[4]!==void 0?+Nd(i[4],0,1):1;return o[3]=a,o}if(i=r.match(qFt)){const o=i.slice(1,5);for(let a=0;a<4;a++)o[a]=+Nd(o[a],0,255);return o}if((i=r.match(GFt))||(i=r.match(VFt))){const o=i.slice(1,4);o[0]=+Y0(o[0].replace("deg",""),0),o[1]=+Nd(Y0(o[1],0),0,100)*.01,o[2]=+Nd(Y0(o[2],0),0,100)*.01;const a=Bz(zFe(o)),f=i[4]!==void 0?+Nd(i[4],0,1):1;return a[3]=f,a}if(i=r.match(JFt)){const o=i.slice(1,4);o[1]*=.01,o[2]*=.01;const a=zFe(o);for(let f=0;f<3;f++)a[f]=QFt(a[f]);return a[3]=+i[4],a}if(i=r.match(KFt)){const o=i.slice(1,4);o[0]=Nd(Y0(o[0],0),0,100),o[1]=Nd(Y0(o[1],0),-125,125,!0),o[2]=Nd(Y0(o[2],0),-125,125,!0);const a=ote();rE("d50");const f=Bz(uUe(o));rE(a);const g=i[4]!==void 0?+Nd(i[4],0,1):1;return f[3]=g,f}if(i=r.match(WFt)){const o=i.slice(1,4);o[0]=Nd(o[0],0,100),o[1]=Nd(Y0(o[1],0),0,150,!1),o[2]=+Y0(o[2].replace("deg",""),0);const a=ote();rE("d50");const f=Bz(fUe(o));rE(a);const g=i[4]!==void 0?+Nd(i[4],0,1):1;return f[3]=g,f}if(i=r.match(YFt)){const o=i.slice(1,4);o[0]=Nd(Y0(o[0],0),0,1),o[1]=Nd(Y0(o[1],0),-.4,.4,!0),o[2]=Nd(Y0(o[2],0),-.4,.4,!0);const a=Bz(dUe(o)),f=i[4]!==void 0?+Nd(i[4],0,1):1;return a[3]=f,a}if(i=r.match(XFt)){const o=i.slice(1,4);o[0]=Nd(Y0(o[0],0),0,1),o[1]=Nd(Y0(o[1],0),0,.4,!1),o[2]=+Y0(o[2].replace("deg",""),0);const a=Bz(BFt(o)),f=i[4]!==void 0?+Nd(i[4],0,1):1;return a[3]=f,a}};mUe.test=r=>HFt.test(r)||GFt.test(r)||KFt.test(r)||WFt.test(r)||YFt.test(r)||XFt.test(r)||UFt.test(r)||qFt.test(r)||VFt.test(r)||JFt.test(r)||r==="transparent";$r.prototype.css=function(r){return YOn(this._rgb,r)};const XOn=(...r)=>new $r(...r,"css");gc.css=XOn;xo.format.css=mUe;xo.autodetect.push({p:5,test:(r,...i)=>{if(!i.length&&mc(r)==="string"&&mUe.test(r))return"css"}});xo.format.gl=(...r)=>{const i=Io(r,"rgba");return i[0]*=255,i[1]*=255,i[2]*=255,i};const QOn=(...r)=>new $r(...r,"gl");gc.gl=QOn;$r.prototype.gl=function(){const r=this._rgb;return[r[0]/255,r[1]/255,r[2]/255,r[3]]};$r.prototype.hex=function(r){return AFt(this._rgb,r)};const ZOn=(...r)=>new $r(...r,"hex");gc.hex=ZOn;xo.format.hex=TFt;xo.autodetect.push({p:4,test:(r,...i)=>{if(!i.length&&mc(r)==="string"&&[3,4,5,6,7,8,9].indexOf(r.length)>=0)return"hex"}});const{log:G0e}=Math,ZFt=r=>{const i=r/100;let o,a,f;return i<66?(o=255,a=i<6?0:-155.25485562709179-.44596950469579133*(a=i-2)+104.49216199393888*G0e(a),f=i<20?0:-254.76935184120902+.8274096064007395*(f=i-10)+115.67994401066147*G0e(f)):(o=351.97690566805693+.114206453784165*(o=i-55)-40.25366309332127*G0e(o),a=325.4494125711974+.07943456536662342*(a=i-50)-28.0852963507957*G0e(a),f=255),[o,a,f,1]},{round:eNn}=Math,tNn=(...r)=>{const i=Io(r,"rgb"),o=i[0],a=i[2];let f=1e3,g=4e4;const h=.4;let b;for(;g-f>h;){b=(g+f)*.5;const w=ZFt(b);w[2]/w[0]>=a/o?g=b:f=b}return eNn(b)};$r.prototype.temp=$r.prototype.kelvin=$r.prototype.temperature=function(){return tNn(this._rgb)};const bDe=(...r)=>new $r(...r,"temp");Object.assign(gc,{temp:bDe,kelvin:bDe,temperature:bDe});xo.format.temp=xo.format.kelvin=xo.format.temperature=ZFt;$r.prototype.oklch=function(){return zFt(this._rgb)};const nNn=(...r)=>new $r(...r,"oklch");Object.assign(gc,{oklch:nNn});xo.format.oklch=BFt;xo.autodetect.push({p:2,test:(...r)=>{if(r=Io(r,"oklch"),mc(r)==="array"&&r.length===3)return"oklch"}});Object.assign(gc,{analyze:DFt,average:rOn,bezier:uOn,blend:t3,brewer:BOn,Color:$r,colors:PB,contrast:MOn,contrastAPCA:NOn,cubehelix:SOn,deltaE:DOn,distance:LOn,input:xo,interpolate:$B,limits:LFt,mix:$B,random:COn,scale:Xbe,scales:zOn,valid:FOn});const HFe=[.96,.907,.805,.697,.605,.547,.518,.445,.395,.34],RMt=[.32,.16,.08,.04,0,0,.04,.08,.16,.32];function rNn(r){const i=r.get("hsl.l");return HFe.reduce((o,a)=>Math.abs(a-i)<Math.abs(o-i)?a:o)}function iNn(r){const i=gc(r),o=rNn(i),a=HFe.findIndex(g=>g===o),f=HFe.map(g=>i.set("hsl.l",g)).map(g=>gc(g)).map((g,h)=>{const b=RMt[h]-RMt[a];return b>=0?g.saturate(b):g.desaturate(b*-1)});return f[a]=gc(r),{baseColorIndex:a,colors:f}}function Ww(r){return iNn(r).colors.map(i=>i.hex())}var bbe={exports:{}},sNn=bbe.exports,PMt;function oNn(){return PMt||(PMt=1,(function(r,i){(function(o,a){r.exports=a()})(sNn,(function(){return{name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(o){var a=["th","st","nd","rd"],f=o%100;return"["+o+(a[(f-20)%10]||a[f]||a[0])+"]"}}}))})(bbe)),bbe.exports}oNn();var wbe={exports:{}},cNn=wbe.exports,$Mt;function aNn(){return $Mt||($Mt=1,(function(r,i){(function(o,a){r.exports=a(tUe())})(cNn,(function(o){function a(w){return w&&typeof w=="object"&&"default"in w?w:{default:w}}var f=a(o),g={s:"ein paar Sekunden",m:["eine Minute","einer Minute"],mm:"%d Minuten",h:["eine Stunde","einer Stunde"],hh:"%d Stunden",d:["ein Tag","einem Tag"],dd:["%d Tage","%d Tagen"],M:["ein Monat","einem Monat"],MM:["%d Monate","%d Monaten"],y:["ein Jahr","einem Jahr"],yy:["%d Jahre","%d Jahren"]};function h(w,x,k){var C=g[k];return Array.isArray(C)&&(C=C[x?0:1]),C.replace("%d",w)}var b={name:"de",weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sept._Okt._Nov._Dez.".split("_"),ordinal:function(w){return w+"."},weekStart:1,yearStart:4,formats:{LTS:"HH:mm:ss",LT:"HH:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},relativeTime:{future:"in %s",past:"vor %s",s:h,m:h,mm:h,h,hh:h,d:h,dd:h,M:h,MM:h,y:h,yy:h}};return f.default.locale(b,null,!0),b}))})(wbe)),wbe.exports}aNn();var ybe={exports:{}},uNn=ybe.exports,DMt;function lNn(){return DMt||(DMt=1,(function(r,i){(function(o,a){r.exports=a(tUe())})(uNn,(function(o){function a(C){return C&&typeof C=="object"&&"default"in C?C:{default:C}}var f=a(o),g="січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),h="січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_"),b=/D[oD]?(\[[^[\]]*\]|\s)+MMMM?/;function w(C,T,A){var M,I;return A==="m"?T?"хвилина":"хвилину":A==="h"?T?"година":"годину":C+" "+(M=+C,I={ss:T?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:T?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:T?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"}[A].split("_"),M%10==1&&M%100!=11?I[0]:M%10>=2&&M%10<=4&&(M%100<10||M%100>=20)?I[1]:I[2])}var x=function(C,T){return b.test(T)?g[C.month()]:h[C.month()]};x.s=h,x.f=g;var k={name:"uk",weekdays:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),weekdaysShort:"ндл_пнд_втр_срд_чтв_птн_сбт".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),months:x,monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekStart:1,relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",m:w,mm:w,h:w,hh:w,d:"день",dd:w,M:"місяць",MM:w,y:"рік",yy:w},ordinal:function(C){return C},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., HH:mm",LLLL:"dddd, D MMMM YYYY р., HH:mm"}};return f.default.locale(k,null,!0),k}))})(ybe)),ybe.exports}lNn();const fNn={en:"en",de:"de"},hNn=["#e6fff5","#b3ffe0","#80ffcc","#4dffb8","#1affa3","#00e68a","#00cc7a","#00b36b","#00995c","#00804d"],Pee=["#C1C2C5","#A6A7AB","#909296","#5c5f66","#373A40","#2C2E33","#1a1c24","#13151c","#0e1016","#0b0d12"],dNn=()=>({variables:{"--app-glass-bg":"linear-gradient(135deg, rgba(255,255,255,0.03) 0%, rgba(255,255,255,0.01) 100%)","--app-glass-border":"rgba(255,255,255,0.06)","--app-glass-backdrop":"blur(8px)","--app-input-bg":"rgba(255,255,255,0.02)","--app-surface":Pee[8],"--app-code-bg":Pee[8]},dark:{"--mantine-color-body":Pee[9],"--mantine-color-default-border":"rgba(255,255,255,0.06)","--mantine-color-default-hover":"rgba(255,255,255,0.04)","--mantine-color-gray-light":"rgba(255,255,255,0.06)","--mantine-color-gray-light-color":"rgba(255,255,255,0.72)","--mantine-color-gray-light-hover":"rgba(255,255,255,0.09)","--mantine-color-gray-1":"rgba(255,255,255,0.04)","--mantine-color-blue-6":"rgba(255,255,255,0.5)","--mantine-color-blue-light":"rgba(255,255,255,0.04)","--mantine-color-blue-3":"rgba(255,255,255,0.15)"},light:{}}),pNn={primaryColor:"gray",breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},colors:{emerald:hNn,dark:Pee,success:Ww("#10B981"),error:Ww("#EF4444"),function:["#f5f5f5","#e5e5e5","#d4d4d4","#a3a3a3","#737373","#525252","#171717","#0a0a0a","#000000","#000000"],workflow:Ww("#8B5CF6"),http:Ww("#16a34a"),channel:Ww("#9333ea"),websocket:Ww("#9333ea"),sse:Ww("#ea580c"),queue:Ww("#dc2626"),scheduler:Ww("#ca8a04"),mcp:Ww("#ec4899"),cli:Ww("#0891b2"),focusedNode:Ww("#A83CE0"),referencedNode:Ww("#f59e0b")},fontFamily:"Inter, -apple-system, BlinkMacSystemFont, sans-serif",fontFamilyMonospace:"JetBrains Mono, monospace",fontSizes:{xs:mn(10),sm:mn(12),md:mn(14),lg:mn(16),lgxl:mn(18),xl:mn(20),xxl:mn(32),xxll:mn(38),xxxl:mn(48),xxxxl:mn(56),hero:mn(64)},headings:{fontFamily:"JetBrains Mono, monospace",sizes:{h1:{fontSize:mn(40),lineHeight:"1.2",fontWeight:"400"},h2:{fontSize:mn(20),lineHeight:"1.2",fontWeight:"600"},h3:{fontSize:mn(18),lineHeight:"1.2",fontWeight:"600"},h4:{fontSize:mn(16),lineHeight:"1.2",fontWeight:"600"},h5:{fontSize:mn(14),lineHeight:"1.2",fontWeight:"600"},h6:{fontSize:mn(12),lineHeight:"1.2",fontWeight:"600"}}},defaultRadius:"md",components:{Container:G4.extend({defaultProps:{px:"xl"},vars:(r,i)=>i.size==="xl"?{root:{"--container-size":"80rem"}}:{root:{}}}),Paper:{defaultProps:{radius:"lg"},styles:{root:{background:"var(--app-glass-bg)",borderColor:"var(--app-glass-border)",backdropFilter:"var(--app-glass-backdrop)"}}},Button:aa.extend({styles:{root:{fontWeight:600}}}),InputWrapper:Kwe.extend({styles:{label:{color:"var(--mantine-color-dimmed)",fontSize:mn(12),fontWeight:600,textTransform:"uppercase",letterSpacing:"0.5px",marginBottom:mn(6)}}}),TextInput:{styles:{input:{backgroundColor:"var(--app-input-bg)",borderColor:"var(--app-glass-border)",fontFamily:"var(--mantine-font-family-monospace)",fontSize:13}}},Select:{styles:{input:{backgroundColor:"var(--app-input-bg)",borderColor:"var(--app-glass-border)",fontFamily:"var(--mantine-font-family-monospace)",fontSize:13},dropdown:{backgroundColor:Pee[7],borderColor:"var(--app-glass-border)"},option:{fontSize:13}}},Textarea:{styles:{input:{backgroundColor:"var(--app-input-bg)",borderColor:"var(--app-glass-border)",fontFamily:"var(--mantine-font-family-monospace)",fontSize:12}}},SegmentedControl:{styles:{root:{backgroundColor:"var(--app-input-bg)",border:"1px solid var(--app-glass-border)"},label:{fontFamily:"var(--mantine-font-family-monospace)",fontSize:12,fontWeight:500}}},Accordion:{styles:{item:{background:"var(--app-glass-bg)",borderColor:"var(--app-glass-border)",backdropFilter:"var(--app-glass-backdrop)",borderRadius:"var(--mantine-radius-lg)"},control:{fontFamily:"var(--mantine-font-family-monospace)",fontSize:12,fontWeight:600,textTransform:"uppercase",letterSpacing:"0.8px",color:"var(--mantine-color-dimmed)"},content:{padding:0}}},Tabs:{styles:{tab:{fontFamily:"var(--mantine-font-family-monospace)",fontSize:12,fontWeight:600}}},Stepper:Xte.extend({styles:{stepIcon:{backgroundColor:"var(--app-input-bg)",borderColor:"var(--app-glass-border)",width:mn(30),height:mn(30),minWidth:mn(30),minHeight:mn(30)},stepLabel:{fontFamily:"var(--mantine-font-family-monospace)",fontSize:mn(11),fontWeight:600,textTransform:"uppercase",letterSpacing:"0.5px",color:"var(--mantine-color-dimmed)"},separator:{backgroundColor:"var(--app-glass-border)"}}}),Anchor:dE.extend({styles:{root:{textDecoration:"none",color:"var(--mantine-color-text)"}}}),List:c8.extend({styles:()=>({root:{paddingLeft:mn(10)}})})}},gNn=({children:r,locale:i="en"})=>{const o=fNn[i]||"en";return S.jsx(yBe,{theme:pNn,forceColorScheme:"dark",cssVariablesResolver:dNn,children:S.jsx(m7n,{settings:{locale:o},children:r})})},UFe=r=>r===null?null:Array.isArray(r)?r.map(UFe.bind(void 0)):typeof r=="object"?Object.entries(r).reduce((i,[o,a])=>(i[o]=UFe(a),i),{}):typeof r=="string"&&/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}\.\d{3}Z?)?/.test(r)?new Date(r):r,mNn=async(r,i,o)=>{var h;const a=((h=o==null?void 0:o.method)==null?void 0:h.toUpperCase())||"GET";let f;if(i){i=JSON.parse(JSON.stringify(i));const b=Object.keys(i);for(const w of b)r.includes(`:${w}`)&&(r=r.replace(`:${w}`,i[w]),delete i[w]);if(a==="POST"||a==="PATCH"||a==="PUT")f=i;else{const w=new URLSearchParams(JSON.parse(JSON.stringify(i)));r=`${r}?${w}`}}const g={...o==null?void 0:o.headers};return f||delete g["Content-Type"],await fetch(r,{method:a.toUpperCase(),...o,headers:g,body:f?JSON.stringify(f):void 0})};class bNn{constructor(i={}){Lt(this,"options");Lt(this,"authHeaders",{});this.options=i,this.authHeaders=i.authHeaders||{}}getHeaders(){const i={"Content-Type":"application/json"};return this.authHeaders.jwt?i.Authorization=`Bearer ${this.authHeaders.jwt}`:this.authHeaders.apiKey&&(i["X-API-KEY"]=this.authHeaders.apiKey),i}setServerUrl(i){i.endsWith("/")&&(console.warn("Server URL should not end with a slash, removing."),i=i.slice(0,-1)),this.options.serverUrl=i}setAuthorizationJWT(i){i?this.authHeaders.jwt=i:delete this.authHeaders.jwt}setAPIKey(i){i?this.authHeaders.apiKey=i:delete this.authHeaders.apiKey}async post(i,o,a){return await this.api(i,"POST",o,a)}async get(i,o,a){return await this.api(i,"GET",o,a)}async patch(i,o,a){return await this.api(i,"PATCH",o,a)}async head(i,o,a){return await this.api(i,"HEAD",o,a)}async api(i,o,a,f){const g=await this.fetch(i,o,a,f);if(g.status>=400)throw g;try{const h=await g.json();return this.transformDates(h)}catch{return}}async fetch(i,o,a,f){return this.verifyServerUrlSet(),i.startsWith("/")?i=`${this.options.serverUrl}${i}`:i=`${this.options.serverUrl}/${i}`,await mNn(i,a,{...f,method:o,mode:this.options.mode,credentials:this.options.credentials,headers:{...this.getHeaders(),...f==null?void 0:f.headers}})}verifyServerUrlSet(){if(!this.options.serverUrl)throw new Error("Server url is not set")}transformDates(i){return this.options.transformDate?UFe(i):i}}class bUe extends bNn{async post(i,...o){const[a,f]=o;return super.api(i,"POST",a,f)}async get(i,...o){const[a,f]=o;return super.api(i,"GET",a,f)}async patch(i,...o){const[a,f]=o;return super.api(i,"PATCH",a,f)}async head(i,...o){const[a,f]=o;return super.api(i,"HEAD",a,f)}async delete(i,...o){const[a,f]=o;return super.api(i,"DELETE",a,f)}async fetch(i,o,a,f){return await super.fetch(i,o,a,f)}}new bUe;class ezt{constructor(){this.pikkuFetch=new bUe,this.invoke=async(i,o)=>await this.pikkuFetch.post(`/rpc/${String(i)}`,{rpcName:String(i),data:o}),this.startWorkflow=async(i,o)=>await this.pikkuFetch.post(`/rpc/workflow/${String(i)}`,{workflowName:String(i),input:o}),this.agent={run:(async(i,o)=>await this.pikkuFetch.post(`/rpc/agent/${String(i)}`,o)),stream:async(i,o)=>await this.pikkuFetch.post(`/rpc/agent/${String(i)}/stream`,o),approve:async(i,o)=>await this.pikkuFetch.post(`/rpc/agent/${String(i)}/approve`,o)}}setPikkuFetch(i){this.pikkuFetch=i}setServerUrl(i){this.pikkuFetch.setServerUrl(i)}setAuthorizationJWT(i){this.pikkuFetch.setAuthorizationJWT(i)}setAPIKey(i){this.pikkuFetch.setAPIKey(i)}}new ezt;const wNn=r=>{const i=new bUe;i.setServerUrl(r.serverUrl);const o=new ezt;return o.setPikkuFetch(i),{fetch:i,rpc:o}},qFe="pikku-server-url",LMt="http://localhost:4002",wUe=()=>{try{const i=new URLSearchParams(window.location.search).get("server");return i?(localStorage.setItem(qFe,i),i):localStorage.getItem(qFe)||LMt}catch{return LMt}},yNn=r=>{localStorage.setItem(qFe,r)},tzt=G.createContext(null),vNn=G.createContext(null),nzt=G.createContext(null),xNn=({children:r,serverUrl:i})=>{const o=i??wUe(),a=G.useMemo(()=>wNn({serverUrl:o}),[o]);return S.jsx(tzt.Provider,{value:a,children:S.jsx(vNn.Provider,{value:a.fetch,children:r})})},SNn=({children:r})=>{const i=G.useContext(tzt);if(!i)throw new Error("PikkuRPCProvider must be used within PikkuHTTPProvider");return S.jsx(nzt.Provider,{value:i.rpc,children:r})},eu=()=>{const r=G.useContext(nzt);if(!r)throw new Error("usePikkuRPC must be used within PikkuRPCProvider");return r},rzt=G.createContext(null),kNn=rzt.Provider,Mye=()=>{const r=G.useContext(rzt);if(!r)throw new Error("useConsoleRouter must be used within a ConsoleRouterProvider");return r},ene=()=>Mye().Link,V4=()=>Mye().useNavigate(),jNn=()=>Mye().useLocation(),om=()=>Mye().useSearchParams(),izt=G.forwardRef(({to:r,children:i,...o},a)=>S.jsx(rBe,{to:r,ref:a,...o,children:i}));izt.displayName="Link";const ENn={Link:izt,useNavigate:()=>{const r=Mwe();return i=>r(i)},useLocation:()=>({pathname:B4().pathname}),useSearchParams:U5n};/**
124
+ */const jMt=.027,IOn=5e-4,OOn=.1,EMt=1.14,U0e=.022,CMt=1.414,NOn=(r,i)=>{r=new $r(r),i=new $r(i),r.alpha()<1&&(r=$B(i,r,r.alpha(),"rgb"));const o=_Mt(...r.rgb()),a=_Mt(...i.rgb()),f=o>=U0e?o:o+Math.pow(U0e-o,CMt),g=a>=U0e?a:a+Math.pow(U0e-a,CMt),h=Math.pow(g,.56)-Math.pow(f,.57),b=Math.pow(g,.65)-Math.pow(f,.62),w=Math.abs(g-f)<IOn?0:f<g?h*EMt:b*EMt;return(Math.abs(w)<OOn?0:w>0?w-jMt:w+jMt)*100};function _Mt(r,i,o){return .2126729*Math.pow(r/255,2.4)+.7151522*Math.pow(i/255,2.4)+.072175*Math.pow(o/255,2.4)}const{sqrt:q6,pow:Od,min:ROn,max:POn,atan2:TMt,abs:AMt,cos:q0e,sin:MMt,exp:$On,PI:IMt}=Math;function DOn(r,i,o=1,a=1,f=1){var g=function(pe){return 360*pe/(2*IMt)},h=function(pe){return 2*IMt*pe/360};r=new $r(r),i=new $r(i);const[b,w,x]=Array.from(r.lab()),[k,C,T]=Array.from(i.lab()),A=(b+k)/2,M=q6(Od(w,2)+Od(x,2)),I=q6(Od(C,2)+Od(T,2)),R=(M+I)/2,$=.5*(1-q6(Od(R,7)/(Od(R,7)+Od(25,7)))),F=w*(1+$),B=C*(1+$),U=q6(Od(F,2)+Od(x,2)),q=q6(Od(B,2)+Od(T,2)),V=(U+q)/2,Y=g(TMt(x,F)),Z=g(TMt(T,B)),oe=Y>=0?Y:Y+360,se=Z>=0?Z:Z+360,de=AMt(oe-se)>180?(oe+se+360)/2:(oe+se)/2,be=1-.17*q0e(h(de-30))+.24*q0e(h(2*de))+.32*q0e(h(3*de+6))-.2*q0e(h(4*de-63));let K=se-oe;K=AMt(K)<=180?K:se<=oe?K+360:K-360,K=2*q6(U*q)*MMt(h(K)/2);const ne=k-b,me=q-U,ce=1+.015*Od(A-50,2)/q6(20+Od(A-50,2)),ve=1+.045*V,xe=1+.015*V*be,Ae=30*$On(-Od((de-275)/25,2)),ge=-(2*q6(Od(V,7)/(Od(V,7)+Od(25,7))))*MMt(2*h(Ae)),ke=q6(Od(ne/(o*ce),2)+Od(me/(a*ve),2)+Od(K/(f*xe),2)+ge*(me/(a*ve))*(K/(f*xe)));return POn(0,ROn(100,ke))}function LOn(r,i,o="lab"){r=new $r(r),i=new $r(i);const a=r.get(o),f=i.get(o);let g=0;for(let h in a){const b=(a[h]||0)-(f[h]||0);g+=b*b}return Math.sqrt(g)}const FOn=(...r)=>{try{return new $r(...r),!0}catch{return!1}},zOn={cool(){return Xbe([gc.hsl(180,1,.9),gc.hsl(250,.7,.4)])},hot(){return Xbe(["#000","#f00","#ff0","#fff"]).mode("rgb")}},BFe={OrRd:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"],PuBu:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"],BuPu:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"],Oranges:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"],BuGn:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"],YlOrBr:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"],YlGn:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"],Reds:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"],RdPu:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"],Greens:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"],YlGnBu:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"],Purples:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"],GnBu:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"],Greys:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"],YlOrRd:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"],PuRd:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"],Blues:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"],PuBuGn:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"],Viridis:["#440154","#482777","#3f4a8a","#31678e","#26838f","#1f9d8a","#6cce5a","#b6de2b","#fee825"],Spectral:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],RdYlGn:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],RdBu:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],PiYG:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],PRGn:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],RdYlBu:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],BrBG:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],RdGy:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],PuOr:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],Set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],Accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],Set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],Set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],Dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],Paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],Pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],Pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},FFt=Object.keys(BFe),OMt=new Map(FFt.map(r=>[r.toLowerCase(),r])),BOn=typeof Proxy=="function"?new Proxy(BFe,{get(r,i){const o=i.toLowerCase();if(OMt.has(o))return r[OMt.get(o)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(FFt)}}):BFe,HOn=(...r)=>{r=Io(r,"cmyk");const[i,o,a,f]=r,g=r.length>4?r[4]:1;return f===1?[0,0,0,g]:[i>=1?0:255*(1-i)*(1-f),o>=1?0:255*(1-o)*(1-f),a>=1?0:255*(1-a)*(1-f),g]},{max:NMt}=Math,UOn=(...r)=>{let[i,o,a]=Io(r,"rgb");i=i/255,o=o/255,a=a/255;const f=1-NMt(i,NMt(o,a)),g=f<1?1/(1-f):0,h=(1-i-f)*g,b=(1-o-f)*g,w=(1-a-f)*g;return[h,b,w,f]};$r.prototype.cmyk=function(){return UOn(this._rgb)};const qOn=(...r)=>new $r(...r,"cmyk");Object.assign(gc,{cmyk:qOn});xo.format.cmyk=HOn;xo.autodetect.push({p:2,test:(...r)=>{if(r=Io(r,"cmyk"),mc(r)==="array"&&r.length===4)return"cmyk"}});const GOn=(...r)=>{const i=Io(r,"hsla");let o=fH(r)||"lsa";return i[0]=l2(i[0]||0)+"deg",i[1]=l2(i[1]*100)+"%",i[2]=l2(i[2]*100)+"%",o==="hsla"||i.length>3&&i[3]<1?(i[3]="/ "+(i.length>3?i[3]:1),o="hsla"):i.length=3,`${o.substr(0,3)}(${i.join(" ")})`},VOn=(...r)=>{const i=Io(r,"lab");let o=fH(r)||"lab";return i[0]=l2(i[0])+"%",i[1]=l2(i[1]),i[2]=l2(i[2]),o==="laba"||i.length>3&&i[3]<1?i[3]="/ "+(i.length>3?i[3]:1):i.length=3,`lab(${i.join(" ")})`},JOn=(...r)=>{const i=Io(r,"lch");let o=fH(r)||"lab";return i[0]=l2(i[0])+"%",i[1]=l2(i[1]),i[2]=isNaN(i[2])?"none":l2(i[2])+"deg",o==="lcha"||i.length>3&&i[3]<1?i[3]="/ "+(i.length>3?i[3]:1):i.length=3,`lch(${i.join(" ")})`},KOn=(...r)=>{const i=Io(r,"lab");return i[0]=l2(i[0]*100)+"%",i[1]=FFe(i[1]),i[2]=FFe(i[2]),i.length>3&&i[3]<1?i[3]="/ "+(i.length>3?i[3]:1):i.length=3,`oklab(${i.join(" ")})`},zFt=(...r)=>{const[i,o,a,...f]=Io(r,"rgb"),[g,h,b]=pUe(i,o,a),[w,x,k]=NFt(g,h,b);return[w,x,k,...f.length>0&&f[0]<1?[f[0]]:[]]},WOn=(...r)=>{const i=Io(r,"lch");return i[0]=l2(i[0]*100)+"%",i[1]=FFe(i[1]),i[2]=isNaN(i[2])?"none":l2(i[2])+"deg",i.length>3&&i[3]<1?i[3]="/ "+(i.length>3?i[3]:1):i.length=3,`oklch(${i.join(" ")})`},{round:mDe}=Math,YOn=(...r)=>{const i=Io(r,"rgba");let o=fH(r)||"rgb";if(o.substr(0,3)==="hsl")return GOn(PFt(i),o);if(o.substr(0,3)==="lab"){const a=ote();rE("d50");const f=VOn(lUe(i),o);return rE(a),f}if(o.substr(0,3)==="lch"){const a=ote();rE("d50");const f=JOn(hUe(i),o);return rE(a),f}return o.substr(0,5)==="oklab"?KOn(pUe(i)):o.substr(0,5)==="oklch"?WOn(zFt(i)):(i[0]=mDe(i[0]),i[1]=mDe(i[1]),i[2]=mDe(i[2]),(o==="rgba"||i.length>3&&i[3]<1)&&(i[3]="/ "+(i.length>3?i[3]:1),o="rgba"),`${o.substr(0,3)}(${i.slice(0,o==="rgb"?3:4).join(" ")})`)},BFt=(...r)=>{r=Io(r,"lch");const[i,o,a,...f]=r,[g,h,b]=OFt(i,o,a),[w,x,k]=dUe(g,h,b);return[w,x,k,...f.length>0&&f[0]<1?[f[0]]:[]]},aE=/((?:-?\d+)|(?:-?\d+(?:\.\d+)?)%|none)/.source,WS=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%?)|none)/.source,Qbe=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%)|none)/.source,p2=/\s*/.source,dH=/\s+/.source,gUe=/\s*,\s*/.source,Aye=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)(?:deg)?)|none)/.source,pH=/\s*(?:\/\s*((?:[01]|[01]?\.\d+)|\d+(?:\.\d+)?%))?/.source,HFt=new RegExp("^rgba?\\("+p2+[aE,aE,aE].join(dH)+pH+"\\)$"),UFt=new RegExp("^rgb\\("+p2+[aE,aE,aE].join(gUe)+p2+"\\)$"),qFt=new RegExp("^rgba\\("+p2+[aE,aE,aE,WS].join(gUe)+p2+"\\)$"),GFt=new RegExp("^hsla?\\("+p2+[Aye,Qbe,Qbe].join(dH)+pH+"\\)$"),VFt=new RegExp("^hsl?\\("+p2+[Aye,Qbe,Qbe].join(gUe)+p2+"\\)$"),JFt=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,KFt=new RegExp("^lab\\("+p2+[WS,WS,WS].join(dH)+pH+"\\)$"),WFt=new RegExp("^lch\\("+p2+[WS,WS,Aye].join(dH)+pH+"\\)$"),YFt=new RegExp("^oklab\\("+p2+[WS,WS,WS].join(dH)+pH+"\\)$"),XFt=new RegExp("^oklch\\("+p2+[WS,WS,Aye].join(dH)+pH+"\\)$"),{round:QFt}=Math,Bz=r=>r.map((i,o)=>o<=2?vN(QFt(i),0,255):i),Nd=(r,i=0,o=100,a=!1)=>(typeof r=="string"&&r.endsWith("%")&&(r=parseFloat(r.substring(0,r.length-1))/100,a?r=i+(r+1)*.5*(o-i):r=i+r*(o-i)),+r),Y0=(r,i)=>r==="none"?i:r,mUe=r=>{if(r=r.toLowerCase().trim(),r==="transparent")return[0,0,0,0];let i;if(xo.format.named)try{return xo.format.named(r)}catch{}if((i=r.match(HFt))||(i=r.match(UFt))){let o=i.slice(1,4);for(let f=0;f<3;f++)o[f]=+Nd(Y0(o[f],0),0,255);o=Bz(o);const a=i[4]!==void 0?+Nd(i[4],0,1):1;return o[3]=a,o}if(i=r.match(qFt)){const o=i.slice(1,5);for(let a=0;a<4;a++)o[a]=+Nd(o[a],0,255);return o}if((i=r.match(GFt))||(i=r.match(VFt))){const o=i.slice(1,4);o[0]=+Y0(o[0].replace("deg",""),0),o[1]=+Nd(Y0(o[1],0),0,100)*.01,o[2]=+Nd(Y0(o[2],0),0,100)*.01;const a=Bz(zFe(o)),f=i[4]!==void 0?+Nd(i[4],0,1):1;return a[3]=f,a}if(i=r.match(JFt)){const o=i.slice(1,4);o[1]*=.01,o[2]*=.01;const a=zFe(o);for(let f=0;f<3;f++)a[f]=QFt(a[f]);return a[3]=+i[4],a}if(i=r.match(KFt)){const o=i.slice(1,4);o[0]=Nd(Y0(o[0],0),0,100),o[1]=Nd(Y0(o[1],0),-125,125,!0),o[2]=Nd(Y0(o[2],0),-125,125,!0);const a=ote();rE("d50");const f=Bz(uUe(o));rE(a);const g=i[4]!==void 0?+Nd(i[4],0,1):1;return f[3]=g,f}if(i=r.match(WFt)){const o=i.slice(1,4);o[0]=Nd(o[0],0,100),o[1]=Nd(Y0(o[1],0),0,150,!1),o[2]=+Y0(o[2].replace("deg",""),0);const a=ote();rE("d50");const f=Bz(fUe(o));rE(a);const g=i[4]!==void 0?+Nd(i[4],0,1):1;return f[3]=g,f}if(i=r.match(YFt)){const o=i.slice(1,4);o[0]=Nd(Y0(o[0],0),0,1),o[1]=Nd(Y0(o[1],0),-.4,.4,!0),o[2]=Nd(Y0(o[2],0),-.4,.4,!0);const a=Bz(dUe(o)),f=i[4]!==void 0?+Nd(i[4],0,1):1;return a[3]=f,a}if(i=r.match(XFt)){const o=i.slice(1,4);o[0]=Nd(Y0(o[0],0),0,1),o[1]=Nd(Y0(o[1],0),0,.4,!1),o[2]=+Y0(o[2].replace("deg",""),0);const a=Bz(BFt(o)),f=i[4]!==void 0?+Nd(i[4],0,1):1;return a[3]=f,a}};mUe.test=r=>HFt.test(r)||GFt.test(r)||KFt.test(r)||WFt.test(r)||YFt.test(r)||XFt.test(r)||UFt.test(r)||qFt.test(r)||VFt.test(r)||JFt.test(r)||r==="transparent";$r.prototype.css=function(r){return YOn(this._rgb,r)};const XOn=(...r)=>new $r(...r,"css");gc.css=XOn;xo.format.css=mUe;xo.autodetect.push({p:5,test:(r,...i)=>{if(!i.length&&mc(r)==="string"&&mUe.test(r))return"css"}});xo.format.gl=(...r)=>{const i=Io(r,"rgba");return i[0]*=255,i[1]*=255,i[2]*=255,i};const QOn=(...r)=>new $r(...r,"gl");gc.gl=QOn;$r.prototype.gl=function(){const r=this._rgb;return[r[0]/255,r[1]/255,r[2]/255,r[3]]};$r.prototype.hex=function(r){return AFt(this._rgb,r)};const ZOn=(...r)=>new $r(...r,"hex");gc.hex=ZOn;xo.format.hex=TFt;xo.autodetect.push({p:4,test:(r,...i)=>{if(!i.length&&mc(r)==="string"&&[3,4,5,6,7,8,9].indexOf(r.length)>=0)return"hex"}});const{log:G0e}=Math,ZFt=r=>{const i=r/100;let o,a,f;return i<66?(o=255,a=i<6?0:-155.25485562709179-.44596950469579133*(a=i-2)+104.49216199393888*G0e(a),f=i<20?0:-254.76935184120902+.8274096064007395*(f=i-10)+115.67994401066147*G0e(f)):(o=351.97690566805693+.114206453784165*(o=i-55)-40.25366309332127*G0e(o),a=325.4494125711974+.07943456536662342*(a=i-50)-28.0852963507957*G0e(a),f=255),[o,a,f,1]},{round:eNn}=Math,tNn=(...r)=>{const i=Io(r,"rgb"),o=i[0],a=i[2];let f=1e3,g=4e4;const h=.4;let b;for(;g-f>h;){b=(g+f)*.5;const w=ZFt(b);w[2]/w[0]>=a/o?g=b:f=b}return eNn(b)};$r.prototype.temp=$r.prototype.kelvin=$r.prototype.temperature=function(){return tNn(this._rgb)};const bDe=(...r)=>new $r(...r,"temp");Object.assign(gc,{temp:bDe,kelvin:bDe,temperature:bDe});xo.format.temp=xo.format.kelvin=xo.format.temperature=ZFt;$r.prototype.oklch=function(){return zFt(this._rgb)};const nNn=(...r)=>new $r(...r,"oklch");Object.assign(gc,{oklch:nNn});xo.format.oklch=BFt;xo.autodetect.push({p:2,test:(...r)=>{if(r=Io(r,"oklch"),mc(r)==="array"&&r.length===3)return"oklch"}});Object.assign(gc,{analyze:DFt,average:rOn,bezier:uOn,blend:t3,brewer:BOn,Color:$r,colors:PB,contrast:MOn,contrastAPCA:NOn,cubehelix:SOn,deltaE:DOn,distance:LOn,input:xo,interpolate:$B,limits:LFt,mix:$B,random:COn,scale:Xbe,scales:zOn,valid:FOn});const HFe=[.96,.907,.805,.697,.605,.547,.518,.445,.395,.34],RMt=[.32,.16,.08,.04,0,0,.04,.08,.16,.32];function rNn(r){const i=r.get("hsl.l");return HFe.reduce((o,a)=>Math.abs(a-i)<Math.abs(o-i)?a:o)}function iNn(r){const i=gc(r),o=rNn(i),a=HFe.findIndex(g=>g===o),f=HFe.map(g=>i.set("hsl.l",g)).map(g=>gc(g)).map((g,h)=>{const b=RMt[h]-RMt[a];return b>=0?g.saturate(b):g.desaturate(b*-1)});return f[a]=gc(r),{baseColorIndex:a,colors:f}}function Ww(r){return iNn(r).colors.map(i=>i.hex())}var bbe={exports:{}},sNn=bbe.exports,PMt;function oNn(){return PMt||(PMt=1,(function(r,i){(function(o,a){r.exports=a()})(sNn,(function(){return{name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(o){var a=["th","st","nd","rd"],f=o%100;return"["+o+(a[(f-20)%10]||a[f]||a[0])+"]"}}}))})(bbe)),bbe.exports}oNn();var wbe={exports:{}},cNn=wbe.exports,$Mt;function aNn(){return $Mt||($Mt=1,(function(r,i){(function(o,a){r.exports=a(tUe())})(cNn,(function(o){function a(w){return w&&typeof w=="object"&&"default"in w?w:{default:w}}var f=a(o),g={s:"ein paar Sekunden",m:["eine Minute","einer Minute"],mm:"%d Minuten",h:["eine Stunde","einer Stunde"],hh:"%d Stunden",d:["ein Tag","einem Tag"],dd:["%d Tage","%d Tagen"],M:["ein Monat","einem Monat"],MM:["%d Monate","%d Monaten"],y:["ein Jahr","einem Jahr"],yy:["%d Jahre","%d Jahren"]};function h(w,x,k){var C=g[k];return Array.isArray(C)&&(C=C[x?0:1]),C.replace("%d",w)}var b={name:"de",weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sept._Okt._Nov._Dez.".split("_"),ordinal:function(w){return w+"."},weekStart:1,yearStart:4,formats:{LTS:"HH:mm:ss",LT:"HH:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},relativeTime:{future:"in %s",past:"vor %s",s:h,m:h,mm:h,h,hh:h,d:h,dd:h,M:h,MM:h,y:h,yy:h}};return f.default.locale(b,null,!0),b}))})(wbe)),wbe.exports}aNn();var ybe={exports:{}},uNn=ybe.exports,DMt;function lNn(){return DMt||(DMt=1,(function(r,i){(function(o,a){r.exports=a(tUe())})(uNn,(function(o){function a(C){return C&&typeof C=="object"&&"default"in C?C:{default:C}}var f=a(o),g="січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),h="січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_"),b=/D[oD]?(\[[^[\]]*\]|\s)+MMMM?/;function w(C,T,A){var M,I;return A==="m"?T?"хвилина":"хвилину":A==="h"?T?"година":"годину":C+" "+(M=+C,I={ss:T?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:T?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:T?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"}[A].split("_"),M%10==1&&M%100!=11?I[0]:M%10>=2&&M%10<=4&&(M%100<10||M%100>=20)?I[1]:I[2])}var x=function(C,T){return b.test(T)?g[C.month()]:h[C.month()]};x.s=h,x.f=g;var k={name:"uk",weekdays:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),weekdaysShort:"ндл_пнд_втр_срд_чтв_птн_сбт".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),months:x,monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekStart:1,relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",m:w,mm:w,h:w,hh:w,d:"день",dd:w,M:"місяць",MM:w,y:"рік",yy:w},ordinal:function(C){return C},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., HH:mm",LLLL:"dddd, D MMMM YYYY р., HH:mm"}};return f.default.locale(k,null,!0),k}))})(ybe)),ybe.exports}lNn();const fNn={en:"en",de:"de"},hNn=["#e6fff5","#b3ffe0","#80ffcc","#4dffb8","#1affa3","#00e68a","#00cc7a","#00b36b","#00995c","#00804d"],Pee=["#C1C2C5","#A6A7AB","#909296","#5c5f66","#373A40","#2C2E33","#1a1c24","#13151c","#0e1016","#0b0d12"],dNn=()=>({variables:{"--app-glass-bg":"linear-gradient(135deg, rgba(255,255,255,0.03) 0%, rgba(255,255,255,0.01) 100%)","--app-glass-border":"rgba(255,255,255,0.06)","--app-glass-backdrop":"blur(8px)","--app-input-bg":"rgba(255,255,255,0.02)","--app-surface":Pee[8],"--app-code-bg":Pee[8]},dark:{"--mantine-color-body":Pee[9],"--mantine-color-default-border":"rgba(255,255,255,0.06)","--mantine-color-default-hover":"rgba(255,255,255,0.04)","--mantine-color-gray-light":"rgba(255,255,255,0.06)","--mantine-color-gray-light-color":"rgba(255,255,255,0.72)","--mantine-color-gray-light-hover":"rgba(255,255,255,0.09)","--mantine-color-gray-1":"rgba(255,255,255,0.04)","--mantine-color-blue-6":"rgba(255,255,255,0.5)","--mantine-color-blue-light":"rgba(255,255,255,0.04)","--mantine-color-blue-3":"rgba(255,255,255,0.15)"},light:{}}),pNn={primaryColor:"gray",breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},colors:{emerald:hNn,dark:Pee,success:Ww("#10B981"),error:Ww("#EF4444"),function:["#f5f5f5","#e5e5e5","#d4d4d4","#a3a3a3","#737373","#525252","#171717","#0a0a0a","#000000","#000000"],workflow:Ww("#8B5CF6"),http:Ww("#16a34a"),channel:Ww("#9333ea"),websocket:Ww("#9333ea"),sse:Ww("#ea580c"),queue:Ww("#dc2626"),scheduler:Ww("#ca8a04"),mcp:Ww("#ec4899"),cli:Ww("#0891b2"),focusedNode:Ww("#A83CE0"),referencedNode:Ww("#f59e0b")},fontFamily:"Inter, -apple-system, BlinkMacSystemFont, sans-serif",fontFamilyMonospace:"JetBrains Mono, monospace",fontSizes:{xs:mn(10),sm:mn(12),md:mn(14),lg:mn(16),lgxl:mn(18),xl:mn(20),xxl:mn(32),xxll:mn(38),xxxl:mn(48),xxxxl:mn(56),hero:mn(64)},headings:{fontFamily:"JetBrains Mono, monospace",sizes:{h1:{fontSize:mn(40),lineHeight:"1.2",fontWeight:"400"},h2:{fontSize:mn(20),lineHeight:"1.2",fontWeight:"600"},h3:{fontSize:mn(18),lineHeight:"1.2",fontWeight:"600"},h4:{fontSize:mn(16),lineHeight:"1.2",fontWeight:"600"},h5:{fontSize:mn(14),lineHeight:"1.2",fontWeight:"600"},h6:{fontSize:mn(12),lineHeight:"1.2",fontWeight:"600"}}},defaultRadius:"md",components:{Container:G4.extend({defaultProps:{px:"xl"},vars:(r,i)=>i.size==="xl"?{root:{"--container-size":"80rem"}}:{root:{}}}),Paper:{defaultProps:{radius:"lg"},styles:{root:{background:"var(--app-glass-bg)",borderColor:"var(--app-glass-border)",backdropFilter:"var(--app-glass-backdrop)"}}},Button:aa.extend({styles:{root:{fontWeight:600}}}),InputWrapper:Kwe.extend({styles:{label:{color:"var(--mantine-color-dimmed)",fontSize:mn(12),fontWeight:600,textTransform:"uppercase",letterSpacing:"0.5px",marginBottom:mn(6)}}}),TextInput:{styles:{input:{backgroundColor:"var(--app-input-bg)",borderColor:"var(--app-glass-border)",fontFamily:"var(--mantine-font-family-monospace)",fontSize:13}}},Select:{styles:{input:{backgroundColor:"var(--app-input-bg)",borderColor:"var(--app-glass-border)",fontFamily:"var(--mantine-font-family-monospace)",fontSize:13},dropdown:{backgroundColor:Pee[7],borderColor:"var(--app-glass-border)"},option:{fontSize:13}}},Textarea:{styles:{input:{backgroundColor:"var(--app-input-bg)",borderColor:"var(--app-glass-border)",fontFamily:"var(--mantine-font-family-monospace)",fontSize:12}}},SegmentedControl:{styles:{root:{backgroundColor:"var(--app-input-bg)",border:"1px solid var(--app-glass-border)"},label:{fontFamily:"var(--mantine-font-family-monospace)",fontSize:12,fontWeight:500}}},Accordion:{styles:{item:{background:"var(--app-glass-bg)",borderColor:"var(--app-glass-border)",backdropFilter:"var(--app-glass-backdrop)",borderRadius:"var(--mantine-radius-lg)"},control:{fontFamily:"var(--mantine-font-family-monospace)",fontSize:12,fontWeight:600,textTransform:"uppercase",letterSpacing:"0.8px",color:"var(--mantine-color-dimmed)"},content:{padding:0}}},Tabs:{styles:{tab:{fontFamily:"var(--mantine-font-family-monospace)",fontSize:12,fontWeight:600}}},Stepper:Xte.extend({styles:{stepIcon:{backgroundColor:"var(--app-input-bg)",borderColor:"var(--app-glass-border)",width:mn(30),height:mn(30),minWidth:mn(30),minHeight:mn(30)},stepLabel:{fontFamily:"var(--mantine-font-family-monospace)",fontSize:mn(11),fontWeight:600,textTransform:"uppercase",letterSpacing:"0.5px",color:"var(--mantine-color-dimmed)"},separator:{backgroundColor:"var(--app-glass-border)"}}}),Anchor:dE.extend({styles:{root:{textDecoration:"none",color:"var(--mantine-color-text)"}}}),List:c8.extend({styles:()=>({root:{paddingLeft:mn(10)}})})}},gNn=({children:r,locale:i="en"})=>{const o=fNn[i]||"en";return S.jsx(yBe,{theme:pNn,forceColorScheme:"dark",cssVariablesResolver:dNn,children:S.jsx(m7n,{settings:{locale:o},children:r})})},UFe=r=>r===null?null:Array.isArray(r)?r.map(UFe.bind(void 0)):typeof r=="object"?Object.entries(r).reduce((i,[o,a])=>(i[o]=UFe(a),i),{}):typeof r=="string"&&/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}\.\d{3}Z?)?/.test(r)?new Date(r):r,mNn=async(r,i,o)=>{var h;const a=((h=o==null?void 0:o.method)==null?void 0:h.toUpperCase())||"GET";let f;if(i){i=JSON.parse(JSON.stringify(i));const b=Object.keys(i);for(const w of b)r.includes(`:${w}`)&&(r=r.replace(`:${w}`,i[w]),delete i[w]);if(a==="POST"||a==="PATCH"||a==="PUT")f=i;else{const w=new URLSearchParams(JSON.parse(JSON.stringify(i)));r=`${r}?${w}`}}const g={...o==null?void 0:o.headers};return f||delete g["Content-Type"],await fetch(r,{method:a.toUpperCase(),...o,headers:g,body:f?JSON.stringify(f):void 0})};class bNn{constructor(i={}){Lt(this,"options");Lt(this,"authHeaders",{});this.options=i,this.authHeaders=i.authHeaders||{}}getHeaders(){const i={"Content-Type":"application/json"};return this.authHeaders.jwt?i.Authorization=`Bearer ${this.authHeaders.jwt}`:this.authHeaders.apiKey&&(i["X-API-KEY"]=this.authHeaders.apiKey),i}setServerUrl(i){i.endsWith("/")&&(console.warn("Server URL should not end with a slash, removing."),i=i.slice(0,-1)),this.options.serverUrl=i}setAuthorizationJWT(i){i?this.authHeaders.jwt=i:delete this.authHeaders.jwt}setAPIKey(i){i?this.authHeaders.apiKey=i:delete this.authHeaders.apiKey}async post(i,o,a){return await this.api(i,"POST",o,a)}async get(i,o,a){return await this.api(i,"GET",o,a)}async patch(i,o,a){return await this.api(i,"PATCH",o,a)}async head(i,o,a){return await this.api(i,"HEAD",o,a)}async uploadFile(i,o,a){const f={...i.uploadHeaders};!f["Content-Type"]&&a&&(f["Content-Type"]=a);const g=await fetch(i.uploadUrl,{method:i.uploadMethod??"PUT",headers:f,body:o});if(g.status>=400)throw g;return{assetKey:i.assetKey,response:g}}async api(i,o,a,f){const g=await this.fetch(i,o,a,f);if(g.status>=400)throw g;try{const h=await g.json();return this.transformDates(h)}catch{return}}async fetch(i,o,a,f){return this.verifyServerUrlSet(),i.startsWith("/")?i=`${this.options.serverUrl}${i}`:i=`${this.options.serverUrl}/${i}`,await mNn(i,a,{...f,method:o,mode:this.options.mode,credentials:this.options.credentials,headers:{...this.getHeaders(),...f==null?void 0:f.headers}})}verifyServerUrlSet(){if(!this.options.serverUrl)throw new Error("Server url is not set")}transformDates(i){return this.options.transformDate?UFe(i):i}}class bUe extends bNn{async post(i,...o){const[a,f]=o;return super.api(i,"POST",a,f)}async get(i,...o){const[a,f]=o;return super.api(i,"GET",a,f)}async patch(i,...o){const[a,f]=o;return super.api(i,"PATCH",a,f)}async head(i,...o){const[a,f]=o;return super.api(i,"HEAD",a,f)}async delete(i,...o){const[a,f]=o;return super.api(i,"DELETE",a,f)}async fetch(i,o,a,f){return await super.fetch(i,o,a,f)}}new bUe;class ezt{constructor(){this.pikkuFetch=new bUe,this.invoke=async(i,o)=>await this.pikkuFetch.post(`/rpc/${String(i)}`,{rpcName:String(i),data:o}),this.startWorkflow=async(i,o)=>await this.pikkuFetch.post(`/rpc/workflow/${String(i)}`,{workflowName:String(i),input:o}),this.agent={run:(async(i,o)=>await this.pikkuFetch.post(`/rpc/agent/${String(i)}`,o)),stream:async(i,o)=>await this.pikkuFetch.post(`/rpc/agent/${String(i)}/stream`,o),approve:async(i,o)=>await this.pikkuFetch.post(`/rpc/agent/${String(i)}/approve`,o)}}setPikkuFetch(i){this.pikkuFetch=i}setServerUrl(i){this.pikkuFetch.setServerUrl(i)}setAuthorizationJWT(i){this.pikkuFetch.setAuthorizationJWT(i)}setAPIKey(i){this.pikkuFetch.setAPIKey(i)}}new ezt;const wNn=r=>{const i=new bUe;i.setServerUrl(r.serverUrl);const o=new ezt;return o.setPikkuFetch(i),{fetch:i,rpc:o}},qFe="pikku-server-url",LMt="http://localhost:4002",wUe=()=>{try{const i=new URLSearchParams(window.location.search).get("server");return i?(localStorage.setItem(qFe,i),i):localStorage.getItem(qFe)||LMt}catch{return LMt}},yNn=r=>{localStorage.setItem(qFe,r)},tzt=G.createContext(null),vNn=G.createContext(null),nzt=G.createContext(null),xNn=({children:r,serverUrl:i})=>{const o=i??wUe(),a=G.useMemo(()=>wNn({serverUrl:o}),[o]);return S.jsx(tzt.Provider,{value:a,children:S.jsx(vNn.Provider,{value:a.fetch,children:r})})},SNn=({children:r})=>{const i=G.useContext(tzt);if(!i)throw new Error("PikkuRPCProvider must be used within PikkuHTTPProvider");return S.jsx(nzt.Provider,{value:i.rpc,children:r})},eu=()=>{const r=G.useContext(nzt);if(!r)throw new Error("usePikkuRPC must be used within PikkuRPCProvider");return r},rzt=G.createContext(null),kNn=rzt.Provider,Mye=()=>{const r=G.useContext(rzt);if(!r)throw new Error("useConsoleRouter must be used within a ConsoleRouterProvider");return r},ene=()=>Mye().Link,V4=()=>Mye().useNavigate(),jNn=()=>Mye().useLocation(),om=()=>Mye().useSearchParams(),izt=G.forwardRef(({to:r,children:i,...o},a)=>S.jsx(rBe,{to:r,ref:a,...o,children:i}));izt.displayName="Link";const ENn={Link:izt,useNavigate:()=>{const r=Mwe();return i=>r(i)},useLocation:()=>({pathname:B4().pathname}),useSearchParams:U5n};/**
125
125
  * @license lucide-react v0.554.0 - ISC
126
126
  *
127
127
  * This source code is licensed under the ISC license.
@@ -25,7 +25,7 @@
25
25
  }
26
26
  } catch (e) {}
27
27
  </script>
28
- <script type="module" crossorigin src="/assets/index-AX4YS8AA.js"></script>
28
+ <script type="module" crossorigin src="/assets/index-sUj3oFEL.js"></script>
29
29
  <link rel="stylesheet" crossorigin href="/assets/index-DvrDbftC.css">
30
30
  </head>
31
31
  <body>
@@ -1,21 +1,21 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import { CoreAIAgent, PikkuAIMiddlewareHooks } from '@pikku/core/ai-agent';
5
5
  import type { PikkuPermission, PikkuMiddleware, Services, PikkuFunctionConfig } from '../function/pikku-function-types.gen.js';
6
6
  import type { StandardSchemaV1 } from '@standard-schema/spec';
7
7
  import type { AIAgentMemoryConfig, AIAgentInput } from '@pikku/core/ai-agent';
8
8
  import type { AgentMap } from './pikku-agent-map.gen.d.js';
9
- type AIAgentConfig = Omit<CoreAIAgent<PikkuPermission, PikkuMiddleware>, 'tools' | 'agents' | 'memory'> & {
10
- input?: StandardSchemaV1;
11
- output?: StandardSchemaV1;
9
+ type AIAgentConfig<InputSchema extends StandardSchemaV1 | undefined = undefined, OutputSchema extends StandardSchemaV1 | undefined = undefined> = Omit<CoreAIAgent<PikkuPermission, PikkuMiddleware>, 'tools' | 'agents' | 'memory' | 'input' | 'output'> & {
10
+ input?: InputSchema;
11
+ output?: OutputSchema;
12
12
  memory?: Omit<AIAgentMemoryConfig, 'workingMemory'> & {
13
13
  workingMemory?: StandardSchemaV1;
14
14
  };
15
15
  tools?: object[];
16
- agents?: AIAgentConfig[];
16
+ agents?: AIAgentConfig<StandardSchemaV1 | undefined, StandardSchemaV1 | undefined>[];
17
17
  };
18
- export declare const pikkuAIAgent: (agent: AIAgentConfig) => AIAgentConfig;
18
+ export declare const pikkuAIAgent: <InputSchema extends StandardSchemaV1 | undefined = undefined, OutputSchema extends StandardSchemaV1 | undefined = undefined>(agent: AIAgentConfig<InputSchema, OutputSchema>) => AIAgentConfig<InputSchema, OutputSchema>;
19
19
  export declare const pikkuAIMiddleware: <State extends Record<string, unknown> = Record<string, unknown>, RequiredServices extends Services = Services>(hooks: PikkuAIMiddlewareHooks<State, RequiredServices>) => PikkuAIMiddlewareHooks<State, RequiredServices>;
20
20
  export declare const agent: <Name extends keyof AgentMap>(agentName: Name) => PikkuFunctionConfig<AIAgentInput, {
21
21
  runId: string;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import { pikkuState } from '@pikku/core/internal';
5
5
  import metaData from './pikku-agent-wirings-meta.gen.json' with { type: 'json' };
@@ -1,4 +1,4 @@
1
1
  export {};
2
2
  /**
3
- * This file was generated by @pikku/cli@0.12.4
3
+ * This file was generated by @pikku/cli@0.12.7
4
4
  */
@@ -1,4 +1,4 @@
1
1
  export {};
2
2
  /**
3
- * This file was generated by @pikku/cli@0.12.4
3
+ * This file was generated by @pikku/cli@0.12.7
4
4
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  /**
5
5
  * Channel-specific type definitions for tree-shaking optimization
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  /**
5
5
  * Channel-specific type definitions for tree-shaking optimization
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import { pikkuState } from '@pikku/core/internal';
5
5
  import metaData from './pikku-channels-meta.gen.json' with { type: 'json' };
@@ -1,4 +1,4 @@
1
1
  export {};
2
2
  /**
3
- * This file was generated by @pikku/cli@0.12.4
3
+ * This file was generated by @pikku/cli@0.12.7
4
4
  */
@@ -1,5 +1,5 @@
1
1
  export {};
2
2
  /**
3
- * This file was generated by @pikku/cli@0.12.4
3
+ * This file was generated by @pikku/cli@0.12.7
4
4
  */
5
5
  /* The files with an addChannel function call */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  /**
5
5
  * WebSocket channel backend for 'pikku' CLI commands
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import '../pikku-bootstrap.gen.js';
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import { executeCLIViaChannel } from '@pikku/core/cli/channel';
5
5
  import { CorePikkuWebsocket } from '@pikku/websocket';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  /**
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  /**
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import { pikkuState } from '@pikku/core/internal';
5
5
  import metaData from './pikku-cli-wirings-meta.gen.json' with { type: 'json' };
@@ -41,7 +41,12 @@
41
41
  "watch": {
42
42
  "pikkuFuncId": "watch",
43
43
  "positionals": [],
44
- "options": {},
44
+ "options": {
45
+ "hmr": {
46
+ "description": "Enable hot module reload for registered functions",
47
+ "default": false
48
+ }
49
+ },
45
50
  "description": "Watch for file changes and regenerate automatically"
46
51
  },
47
52
  "console": {
@@ -57,6 +62,10 @@
57
62
  "description": "Open the console in the browser",
58
63
  "default": "false",
59
64
  "short": "o"
65
+ },
66
+ "hmr": {
67
+ "description": "Enable hot module reload for registered functions",
68
+ "default": false
60
69
  }
61
70
  },
62
71
  "description": "Start the Pikku Console UI with live file watching"
@@ -299,7 +308,7 @@
299
308
  "description": "Overwrite existing manifest"
300
309
  }
301
310
  },
302
- "description": "Initialize the version manifest (versions.json)"
311
+ "description": "Initialize the version manifest (versions.pikku.json)"
303
312
  },
304
313
  "check": {
305
314
  "pikkuFuncId": "pikkuVersionsCheck",
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import '../../src/cli.wiring.js';
5
5
  import '../../src/services.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  /* The files with an wireCLI function call */
5
5
  import '../../src/cli.wiring.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import '../pikku-bootstrap.gen.js';
5
5
  export declare function PikkuCLI(args: string[]): Promise<void>;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import { executeCLI, CLIError } from '@pikku/core/cli';
5
5
  import { createConfig as createConfig } from '../../src/services.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import type { FlattenedRPCMap } from '../rpc/pikku-rpc-wirings-map.internal.gen.js';
5
5
  export type NodeCategory = never;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  /**
5
5
  * Core function, middleware, and permission types for all wirings
@@ -243,19 +243,19 @@ export type PikkuFunctionConfig<In = unknown, Out = unknown, RequiredWires exten
243
243
  * Use this when you want to define input/output schemas using Zod.
244
244
  * Types are automatically inferred from the schemas.
245
245
  */
246
- export type PikkuFunctionConfigWithSchema<InputSchema extends StandardSchemaV1, OutputSchema extends StandardSchemaV1 | undefined = undefined, RequiredWires extends keyof PikkuWire = never> = {
246
+ export type PikkuFunctionConfigWithSchema<InputSchema extends StandardSchemaV1 | undefined = undefined, OutputSchema extends StandardSchemaV1 | undefined = undefined, RequiredWires extends keyof PikkuWire = never> = {
247
247
  name?: string;
248
248
  tags?: string[];
249
249
  expose?: boolean;
250
250
  mcp?: boolean;
251
251
  internal?: boolean;
252
252
  approvalRequired?: boolean;
253
- approvalDescription?: PikkuApprovalDescription<InferSchemaOutput<InputSchema>>;
254
- func: PikkuFunction<InferSchemaOutput<InputSchema>, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, RequiredWires> | PikkuFunctionSessionless<InferSchemaOutput<InputSchema>, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, RequiredWires>;
253
+ approvalDescription?: InputSchema extends StandardSchemaV1 ? PikkuApprovalDescription<InferSchemaOutput<InputSchema>> : never;
254
+ func: PikkuFunction<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, RequiredWires> | PikkuFunctionSessionless<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, RequiredWires>;
255
255
  auth?: boolean;
256
- permissions?: CorePermissionGroup<PikkuPermission<InferSchemaOutput<InputSchema>>>;
256
+ permissions?: InputSchema extends StandardSchemaV1 ? CorePermissionGroup<PikkuPermission<InferSchemaOutput<InputSchema>>> : undefined;
257
257
  middleware?: PikkuMiddleware[];
258
- input: InputSchema;
258
+ input?: InputSchema;
259
259
  output?: OutputSchema;
260
260
  node?: NodeConfig;
261
261
  errors?: Array<typeof PikkuError>;
@@ -298,12 +298,12 @@ export type PikkuFunctionConfigWithSchema<InputSchema extends StandardSchemaV1,
298
298
  * })
299
299
  * ```
300
300
  */
301
- export declare function pikkuFunc<InputSchema extends StandardSchemaV1, OutputSchema extends StandardSchemaV1 | undefined = undefined>(config: PikkuFunctionConfigWithSchema<InputSchema, OutputSchema, 'session' | 'rpc'>): PikkuFunctionConfig<InferSchemaOutput<InputSchema>, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, 'session' | 'rpc'>;
301
+ export declare function pikkuFunc<InputSchema extends StandardSchemaV1 | undefined = undefined, OutputSchema extends StandardSchemaV1 | undefined = undefined>(config: PikkuFunctionConfigWithSchema<InputSchema, OutputSchema, 'session' | 'rpc'>): PikkuFunctionConfig<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, 'session' | 'rpc'>;
302
302
  export declare function pikkuFunc<In, Out = unknown>(func: PikkuFunction<In, Out, 'session' | 'rpc'> | PikkuFunctionConfig<In, Out, 'session' | 'rpc'>): PikkuFunctionConfig<In, Out, 'session' | 'rpc'>;
303
303
  /**
304
304
  * Configuration object for sessionless Pikku functions with Zod schema validation.
305
305
  */
306
- export type PikkuFunctionSessionlessConfigWithSchema<InputSchema extends StandardSchemaV1, OutputSchema extends StandardSchemaV1 | undefined = undefined, RequiredWires extends keyof PikkuWire = never> = {
306
+ export type PikkuFunctionSessionlessConfigWithSchema<InputSchema extends StandardSchemaV1 | undefined = undefined, OutputSchema extends StandardSchemaV1 | undefined = undefined, RequiredWires extends keyof PikkuWire = never> = {
307
307
  name?: string;
308
308
  description?: string;
309
309
  tags?: string[];
@@ -312,12 +312,12 @@ export type PikkuFunctionSessionlessConfigWithSchema<InputSchema extends Standar
312
312
  internal?: boolean;
313
313
  remote?: boolean;
314
314
  approvalRequired?: boolean;
315
- approvalDescription?: PikkuApprovalDescription<InferSchemaOutput<InputSchema>>;
316
- func: PikkuFunctionSessionless<InferSchemaOutput<InputSchema>, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, RequiredWires>;
315
+ approvalDescription?: InputSchema extends StandardSchemaV1 ? PikkuApprovalDescription<InferSchemaOutput<InputSchema>> : never;
316
+ func: PikkuFunctionSessionless<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, RequiredWires>;
317
317
  auth?: boolean;
318
- permissions?: CorePermissionGroup<PikkuPermission<InferSchemaOutput<InputSchema>>>;
318
+ permissions?: InputSchema extends StandardSchemaV1 ? CorePermissionGroup<PikkuPermission<InferSchemaOutput<InputSchema>>> : undefined;
319
319
  middleware?: PikkuMiddleware[];
320
- input: InputSchema;
320
+ input?: InputSchema;
321
321
  output?: OutputSchema;
322
322
  node?: NodeConfig;
323
323
  errors?: Array<typeof PikkuError>;
@@ -357,7 +357,7 @@ export type PikkuFunctionSessionlessConfigWithSchema<InputSchema extends Standar
357
357
  * })
358
358
  * ```
359
359
  */
360
- export declare function pikkuSessionlessFunc<InputSchema extends StandardSchemaV1, OutputSchema extends StandardSchemaV1 | undefined = undefined>(config: PikkuFunctionSessionlessConfigWithSchema<InputSchema, OutputSchema, 'session' | 'rpc'>): PikkuFunctionConfig<InferSchemaOutput<InputSchema>, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, 'session' | 'rpc'>;
360
+ export declare function pikkuSessionlessFunc<InputSchema extends StandardSchemaV1 | undefined = undefined, OutputSchema extends StandardSchemaV1 | undefined = undefined>(config: PikkuFunctionSessionlessConfigWithSchema<InputSchema, OutputSchema, 'session' | 'rpc'>): PikkuFunctionConfig<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, 'session' | 'rpc'>;
361
361
  export declare function pikkuSessionlessFunc<In, Out = unknown>(func: PikkuFunctionSessionless<In, Out, 'session' | 'rpc'> | PikkuFunctionConfig<In, Out, 'session' | 'rpc'>): PikkuFunctionConfig<In, Out, 'session' | 'rpc'>;
362
362
  /**
363
363
  * Creates a function that takes no input and returns no output.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  /**
5
5
  * Core function, middleware, and permission types for all wirings
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.4
2
+ * This file was generated by @pikku/cli@0.12.7
3
3
  */
4
4
  import { pikkuState } from '@pikku/core/internal';
5
5
  import metaData from './pikku-functions-meta.gen.json' with { type: 'json' };