@justscale/core 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +261 -0
- package/bin/just.js +34 -0
- package/dist/app.d.ts +56 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +182 -0
- package/dist/app.js.map +1 -0
- package/dist/builder/build-context.d.ts +8 -0
- package/dist/builder/build-context.d.ts.map +1 -0
- package/dist/builder/build-context.js +4 -0
- package/dist/builder/build-context.js.map +1 -0
- package/dist/builder/builder.d.ts +60 -0
- package/dist/builder/builder.d.ts.map +1 -0
- package/dist/builder/builder.js +72 -0
- package/dist/builder/builder.js.map +1 -0
- package/dist/builder/create-builder.d.ts +36 -0
- package/dist/builder/create-builder.d.ts.map +1 -0
- package/dist/builder/create-builder.js +66 -0
- package/dist/builder/create-builder.js.map +1 -0
- package/dist/builder/execute.d.ts +37 -0
- package/dist/builder/execute.d.ts.map +1 -0
- package/dist/builder/execute.js +62 -0
- package/dist/builder/execute.js.map +1 -0
- package/dist/builder/feature-builder.d.ts +147 -0
- package/dist/builder/feature-builder.d.ts.map +1 -0
- package/dist/builder/feature-builder.js +138 -0
- package/dist/builder/feature-builder.js.map +1 -0
- package/dist/builder/index.d.ts +35 -0
- package/dist/builder/index.d.ts.map +1 -0
- package/dist/builder/index.js +37 -0
- package/dist/builder/index.js.map +1 -0
- package/dist/builder/plugin.d.ts +90 -0
- package/dist/builder/plugin.d.ts.map +1 -0
- package/dist/builder/plugin.js +101 -0
- package/dist/builder/plugin.js.map +1 -0
- package/dist/builder/plugins/query.d.ts +31 -0
- package/dist/builder/plugins/query.d.ts.map +1 -0
- package/dist/builder/plugins/query.js +42 -0
- package/dist/builder/plugins/query.js.map +1 -0
- package/dist/builder/plugins/validation.d.ts +12 -0
- package/dist/builder/plugins/validation.d.ts.map +1 -0
- package/dist/builder/plugins/validation.js +12 -0
- package/dist/builder/plugins/validation.js.map +1 -0
- package/dist/builder/sort.d.ts +27 -0
- package/dist/builder/sort.d.ts.map +1 -0
- package/dist/builder/sort.js +210 -0
- package/dist/builder/sort.js.map +1 -0
- package/dist/builder/stop.d.ts +24 -0
- package/dist/builder/stop.d.ts.map +1 -0
- package/dist/builder/stop.js +27 -0
- package/dist/builder/stop.js.map +1 -0
- package/dist/builder/test/permits-type-spike.d.ts +8 -0
- package/dist/builder/test/permits-type-spike.d.ts.map +1 -0
- package/dist/builder/test/permits-type-spike.js +117 -0
- package/dist/builder/test/permits-type-spike.js.map +1 -0
- package/dist/builder/types.d.ts +678 -0
- package/dist/builder/types.d.ts.map +1 -0
- package/dist/builder/types.js +98 -0
- package/dist/builder/types.js.map +1 -0
- package/dist/builder/validation.d.ts +101 -0
- package/dist/builder/validation.d.ts.map +1 -0
- package/dist/builder/validation.js +335 -0
- package/dist/builder/validation.js.map +1 -0
- package/dist/cli/adapter.d.ts +23 -0
- package/dist/cli/adapter.d.ts.map +1 -0
- package/dist/cli/adapter.js +26 -0
- package/dist/cli/adapter.js.map +1 -0
- package/dist/cli/args.d.ts +150 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +172 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/assemble.d.ts +20 -0
- package/dist/cli/assemble.d.ts.map +1 -0
- package/dist/cli/assemble.js +55 -0
- package/dist/cli/assemble.js.map +1 -0
- package/dist/cli/bin/main.d.ts +26 -0
- package/dist/cli/bin/main.d.ts.map +1 -0
- package/dist/cli/bin/main.js +475 -0
- package/dist/cli/bin/main.js.map +1 -0
- package/dist/cli/build/migrations-plugin.d.ts +21 -0
- package/dist/cli/build/migrations-plugin.d.ts.map +1 -0
- package/dist/cli/build/migrations-plugin.js +41 -0
- package/dist/cli/build/migrations-plugin.js.map +1 -0
- package/dist/cli/build/process-plugin.d.ts +29 -0
- package/dist/cli/build/process-plugin.d.ts.map +1 -0
- package/dist/cli/build/process-plugin.js +66 -0
- package/dist/cli/build/process-plugin.js.map +1 -0
- package/dist/cli/builder/create-cli-builder.d.ts +42 -0
- package/dist/cli/builder/create-cli-builder.d.ts.map +1 -0
- package/dist/cli/builder/create-cli-builder.js +104 -0
- package/dist/cli/builder/create-cli-builder.js.map +1 -0
- package/dist/cli/builder/index.d.ts +8 -0
- package/dist/cli/builder/index.d.ts.map +1 -0
- package/dist/cli/builder/index.js +7 -0
- package/dist/cli/builder/index.js.map +1 -0
- package/dist/cli/builder/types.d.ts +113 -0
- package/dist/cli/builder/types.d.ts.map +1 -0
- package/dist/cli/builder/types.js +7 -0
- package/dist/cli/builder/types.js.map +1 -0
- package/dist/cli/cluster.d.ts +8 -0
- package/dist/cli/cluster.d.ts.map +1 -0
- package/dist/cli/cluster.js +145 -0
- package/dist/cli/cluster.js.map +1 -0
- package/dist/cli/current-app.d.ts +36 -0
- package/dist/cli/current-app.d.ts.map +1 -0
- package/dist/cli/current-app.js +21 -0
- package/dist/cli/current-app.js.map +1 -0
- package/dist/cli/define-app.d.ts +35 -0
- package/dist/cli/define-app.d.ts.map +1 -0
- package/dist/cli/define-app.js +79 -0
- package/dist/cli/define-app.js.map +1 -0
- package/dist/cli/define-main.d.ts +33 -0
- package/dist/cli/define-main.d.ts.map +1 -0
- package/dist/cli/define-main.js +67 -0
- package/dist/cli/define-main.js.map +1 -0
- package/dist/cli/define-project.d.ts +93 -0
- package/dist/cli/define-project.d.ts.map +1 -0
- package/dist/cli/define-project.js +85 -0
- package/dist/cli/define-project.js.map +1 -0
- package/dist/cli/dev-server.d.ts +20 -0
- package/dist/cli/dev-server.d.ts.map +1 -0
- package/dist/cli/dev-server.js +131 -0
- package/dist/cli/dev-server.js.map +1 -0
- package/dist/cli/discovery.d.ts +29 -0
- package/dist/cli/discovery.d.ts.map +1 -0
- package/dist/cli/discovery.js +142 -0
- package/dist/cli/discovery.js.map +1 -0
- package/dist/cli/factory.d.ts +43 -0
- package/dist/cli/factory.d.ts.map +1 -0
- package/dist/cli/factory.js +52 -0
- package/dist/cli/factory.js.map +1 -0
- package/dist/cli/generators/ai.d.ts +3 -0
- package/dist/cli/generators/ai.d.ts.map +1 -0
- package/dist/cli/generators/ai.js +65 -0
- package/dist/cli/generators/ai.js.map +1 -0
- package/dist/cli/generators/ci.d.ts +5 -0
- package/dist/cli/generators/ci.d.ts.map +1 -0
- package/dist/cli/generators/ci.js +102 -0
- package/dist/cli/generators/ci.js.map +1 -0
- package/dist/cli/generators/detect.d.ts +15 -0
- package/dist/cli/generators/detect.d.ts.map +1 -0
- package/dist/cli/generators/detect.js +75 -0
- package/dist/cli/generators/detect.js.map +1 -0
- package/dist/cli/generators/ide.d.ts +3 -0
- package/dist/cli/generators/ide.d.ts.map +1 -0
- package/dist/cli/generators/ide.js +179 -0
- package/dist/cli/generators/ide.js.map +1 -0
- package/dist/cli/generators/index.d.ts +5 -0
- package/dist/cli/generators/index.d.ts.map +1 -0
- package/dist/cli/generators/index.js +5 -0
- package/dist/cli/generators/index.js.map +1 -0
- package/dist/cli/index.d.ts +81 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +88 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/io.d.ts +131 -0
- package/dist/cli/io.d.ts.map +1 -0
- package/dist/cli/io.js +373 -0
- package/dist/cli/io.js.map +1 -0
- package/dist/cli/mcp/server.d.ts +23 -0
- package/dist/cli/mcp/server.d.ts.map +1 -0
- package/dist/cli/mcp/server.js +148 -0
- package/dist/cli/mcp/server.js.map +1 -0
- package/dist/cli/parser.d.ts +106 -0
- package/dist/cli/parser.d.ts.map +1 -0
- package/dist/cli/parser.js +520 -0
- package/dist/cli/parser.js.map +1 -0
- package/dist/cli/runner.d.ts +75 -0
- package/dist/cli/runner.d.ts.map +1 -0
- package/dist/cli/runner.js +422 -0
- package/dist/cli/runner.js.map +1 -0
- package/dist/cli/service.d.ts +61 -0
- package/dist/cli/service.d.ts.map +1 -0
- package/dist/cli/service.js +95 -0
- package/dist/cli/service.js.map +1 -0
- package/dist/cli/types.d.ts +47 -0
- package/dist/cli/types.d.ts.map +1 -0
- package/dist/cli/types.js +20 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/cli/wizard.d.ts +11 -0
- package/dist/cli/wizard.d.ts.map +1 -0
- package/dist/cli/wizard.js +2 -0
- package/dist/cli/wizard.js.map +1 -0
- package/dist/cli/workspace-controller.d.ts +36 -0
- package/dist/cli/workspace-controller.d.ts.map +1 -0
- package/dist/cli/workspace-controller.js +896 -0
- package/dist/cli/workspace-controller.js.map +1 -0
- package/dist/cluster/client.d.ts +101 -0
- package/dist/cluster/client.d.ts.map +1 -0
- package/dist/cluster/client.js +256 -0
- package/dist/cluster/client.js.map +1 -0
- package/dist/cluster/cluster.d.ts +82 -0
- package/dist/cluster/cluster.d.ts.map +1 -0
- package/dist/cluster/cluster.js +27 -0
- package/dist/cluster/cluster.js.map +1 -0
- package/dist/cluster/coordinator/cluster-node.model.d.ts +14 -0
- package/dist/cluster/coordinator/cluster-node.model.d.ts.map +1 -0
- package/dist/cluster/coordinator/cluster-node.model.js +15 -0
- package/dist/cluster/coordinator/cluster-node.model.js.map +1 -0
- package/dist/cluster/coordinator/cluster-signals.d.ts +45 -0
- package/dist/cluster/coordinator/cluster-signals.d.ts.map +1 -0
- package/dist/cluster/coordinator/cluster-signals.js +24 -0
- package/dist/cluster/coordinator/cluster-signals.js.map +1 -0
- package/dist/cluster/coordinator/coordinator.process.d.ts +21 -0
- package/dist/cluster/coordinator/coordinator.process.d.ts.map +1 -0
- package/dist/cluster/coordinator/coordinator.process.js +221 -0
- package/dist/cluster/coordinator/coordinator.process.js.map +1 -0
- package/dist/cluster/coordinator/index.d.ts +13 -0
- package/dist/cluster/coordinator/index.d.ts.map +1 -0
- package/dist/cluster/coordinator/index.js +13 -0
- package/dist/cluster/coordinator/index.js.map +1 -0
- package/dist/cluster/coordinator/node-lifecycle.d.ts +31 -0
- package/dist/cluster/coordinator/node-lifecycle.d.ts.map +1 -0
- package/dist/cluster/coordinator/node-lifecycle.js +178 -0
- package/dist/cluster/coordinator/node-lifecycle.js.map +1 -0
- package/dist/cluster/index.d.ts +45 -0
- package/dist/cluster/index.d.ts.map +1 -0
- package/dist/cluster/index.js +57 -0
- package/dist/cluster/index.js.map +1 -0
- package/dist/cluster/protocol.d.ts +204 -0
- package/dist/cluster/protocol.d.ts.map +1 -0
- package/dist/cluster/protocol.js +274 -0
- package/dist/cluster/protocol.js.map +1 -0
- package/dist/cluster/scheduled-task/builder.d.ts +24 -0
- package/dist/cluster/scheduled-task/builder.d.ts.map +1 -0
- package/dist/cluster/scheduled-task/builder.js +63 -0
- package/dist/cluster/scheduled-task/builder.js.map +1 -0
- package/dist/cluster/scheduled-task/factory.d.ts +76 -0
- package/dist/cluster/scheduled-task/factory.d.ts.map +1 -0
- package/dist/cluster/scheduled-task/factory.js +64 -0
- package/dist/cluster/scheduled-task/factory.js.map +1 -0
- package/dist/cluster/scheduled-task/index.d.ts +43 -0
- package/dist/cluster/scheduled-task/index.d.ts.map +1 -0
- package/dist/cluster/scheduled-task/index.js +45 -0
- package/dist/cluster/scheduled-task/index.js.map +1 -0
- package/dist/cluster/scheduled-task/transport.d.ts +12 -0
- package/dist/cluster/scheduled-task/transport.d.ts.map +1 -0
- package/dist/cluster/scheduled-task/transport.js +146 -0
- package/dist/cluster/scheduled-task/transport.js.map +1 -0
- package/dist/cluster/scheduled-task/types.d.ts +89 -0
- package/dist/cluster/scheduled-task/types.d.ts.map +1 -0
- package/dist/cluster/scheduled-task/types.js +7 -0
- package/dist/cluster/scheduled-task/types.js.map +1 -0
- package/dist/cluster/server.d.ts +87 -0
- package/dist/cluster/server.d.ts.map +1 -0
- package/dist/cluster/server.js +290 -0
- package/dist/cluster/server.js.map +1 -0
- package/dist/cluster/transport.d.ts +86 -0
- package/dist/cluster/transport.d.ts.map +1 -0
- package/dist/cluster/transport.js +138 -0
- package/dist/cluster/transport.js.map +1 -0
- package/dist/core/container-hooks.d.ts +22 -0
- package/dist/core/container-hooks.d.ts.map +1 -0
- package/dist/core/container-hooks.js +29 -0
- package/dist/core/container-hooks.js.map +1 -0
- package/dist/core/container-reflection.d.ts +71 -0
- package/dist/core/container-reflection.d.ts.map +1 -0
- package/dist/core/container-reflection.js +60 -0
- package/dist/core/container-reflection.js.map +1 -0
- package/dist/core/context.d.ts +146 -0
- package/dist/core/context.d.ts.map +1 -0
- package/dist/core/context.js +155 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/contribution.d.ts +152 -0
- package/dist/core/contribution.d.ts.map +1 -0
- package/dist/core/contribution.js +213 -0
- package/dist/core/contribution.js.map +1 -0
- package/dist/core/controller.contextual.d.ts +193 -0
- package/dist/core/controller.contextual.d.ts.map +1 -0
- package/dist/core/controller.contextual.js +459 -0
- package/dist/core/controller.contextual.js.map +1 -0
- package/dist/core/controller.d.ts +510 -0
- package/dist/core/controller.d.ts.map +1 -0
- package/dist/core/controller.js +411 -0
- package/dist/core/controller.js.map +1 -0
- package/dist/core/controller.procedure.d.ts +147 -0
- package/dist/core/controller.procedure.d.ts.map +1 -0
- package/dist/core/controller.procedure.js +115 -0
- package/dist/core/controller.procedure.js.map +1 -0
- package/dist/core/disposable.d.ts +126 -0
- package/dist/core/disposable.d.ts.map +1 -0
- package/dist/core/disposable.js +179 -0
- package/dist/core/disposable.js.map +1 -0
- package/dist/core/hmr.d.ts +83 -0
- package/dist/core/hmr.d.ts.map +1 -0
- package/dist/core/hmr.js +211 -0
- package/dist/core/hmr.js.map +1 -0
- package/dist/core/index.d.ts +17 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +25 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/internal/routes.d.ts +26 -0
- package/dist/core/internal/routes.d.ts.map +1 -0
- package/dist/core/internal/routes.js +48 -0
- package/dist/core/internal/routes.js.map +1 -0
- package/dist/core/lifecycle-impl.d.ts +45 -0
- package/dist/core/lifecycle-impl.d.ts.map +1 -0
- package/dist/core/lifecycle-impl.js +102 -0
- package/dist/core/lifecycle-impl.js.map +1 -0
- package/dist/core/lifecycle.d.ts +86 -0
- package/dist/core/lifecycle.d.ts.map +1 -0
- package/dist/core/lifecycle.js +38 -0
- package/dist/core/lifecycle.js.map +1 -0
- package/dist/core/logger.d.ts +282 -0
- package/dist/core/logger.d.ts.map +1 -0
- package/dist/core/logger.js +368 -0
- package/dist/core/logger.js.map +1 -0
- package/dist/core/middleware.d.ts +108 -0
- package/dist/core/middleware.d.ts.map +1 -0
- package/dist/core/middleware.js +60 -0
- package/dist/core/middleware.js.map +1 -0
- package/dist/core/openapi-methods.d.ts +61 -0
- package/dist/core/openapi-methods.d.ts.map +1 -0
- package/dist/core/openapi-methods.js +53 -0
- package/dist/core/openapi-methods.js.map +1 -0
- package/dist/core/plugin.d.ts +209 -0
- package/dist/core/plugin.d.ts.map +1 -0
- package/dist/core/plugin.js +36 -0
- package/dist/core/plugin.js.map +1 -0
- package/dist/core/scope-bridge.d.ts +19 -0
- package/dist/core/scope-bridge.d.ts.map +1 -0
- package/dist/core/scope-bridge.js +34 -0
- package/dist/core/scope-bridge.js.map +1 -0
- package/dist/core/service.d.ts +429 -0
- package/dist/core/service.d.ts.map +1 -0
- package/dist/core/service.js +875 -0
- package/dist/core/service.js.map +1 -0
- package/dist/features/channel/backend.d.ts +98 -0
- package/dist/features/channel/backend.d.ts.map +1 -0
- package/dist/features/channel/backend.js +75 -0
- package/dist/features/channel/backend.js.map +1 -0
- package/dist/features/channel/channel.d.ts +18 -0
- package/dist/features/channel/channel.d.ts.map +1 -0
- package/dist/features/channel/channel.js +219 -0
- package/dist/features/channel/channel.js.map +1 -0
- package/dist/features/channel/channels.d.ts +87 -0
- package/dist/features/channel/channels.d.ts.map +1 -0
- package/dist/features/channel/channels.js +252 -0
- package/dist/features/channel/channels.js.map +1 -0
- package/dist/features/channel/feature.d.ts +40 -0
- package/dist/features/channel/feature.d.ts.map +1 -0
- package/dist/features/channel/feature.js +44 -0
- package/dist/features/channel/feature.js.map +1 -0
- package/dist/features/channel/index.d.ts +41 -0
- package/dist/features/channel/index.d.ts.map +1 -0
- package/dist/features/channel/index.js +41 -0
- package/dist/features/channel/index.js.map +1 -0
- package/dist/features/channel/types.d.ts +165 -0
- package/dist/features/channel/types.d.ts.map +1 -0
- package/dist/features/channel/types.js +10 -0
- package/dist/features/channel/types.js.map +1 -0
- package/dist/features/config/cli/config-controller.d.ts +77 -0
- package/dist/features/config/cli/config-controller.d.ts.map +1 -0
- package/dist/features/config/cli/config-controller.js +209 -0
- package/dist/features/config/cli/config-controller.js.map +1 -0
- package/dist/features/config/cli/index.d.ts +9 -0
- package/dist/features/config/cli/index.d.ts.map +1 -0
- package/dist/features/config/cli/index.js +9 -0
- package/dist/features/config/cli/index.js.map +1 -0
- package/dist/features/config/cli/profile-controller.d.ts +87 -0
- package/dist/features/config/cli/profile-controller.d.ts.map +1 -0
- package/dist/features/config/cli/profile-controller.js +223 -0
- package/dist/features/config/cli/profile-controller.js.map +1 -0
- package/dist/features/config/cli/utils.d.ts +14 -0
- package/dist/features/config/cli/utils.d.ts.map +1 -0
- package/dist/features/config/cli/utils.js +29 -0
- package/dist/features/config/cli/utils.js.map +1 -0
- package/dist/features/config/config-of.d.ts +36 -0
- package/dist/features/config/config-of.d.ts.map +1 -0
- package/dist/features/config/config-of.js +36 -0
- package/dist/features/config/config-of.js.map +1 -0
- package/dist/features/config/config-service.d.ts +54 -0
- package/dist/features/config/config-service.d.ts.map +1 -0
- package/dist/features/config/config-service.js +184 -0
- package/dist/features/config/config-service.js.map +1 -0
- package/dist/features/config/create-config.d.ts +21 -0
- package/dist/features/config/create-config.d.ts.map +1 -0
- package/dist/features/config/create-config.js +16 -0
- package/dist/features/config/create-config.js.map +1 -0
- package/dist/features/config/define-config-partial.d.ts +13 -0
- package/dist/features/config/define-config-partial.d.ts.map +1 -0
- package/dist/features/config/define-config-partial.js +19 -0
- package/dist/features/config/define-config-partial.js.map +1 -0
- package/dist/features/config/env-service.d.ts +54 -0
- package/dist/features/config/env-service.d.ts.map +1 -0
- package/dist/features/config/env-service.js +115 -0
- package/dist/features/config/env-service.js.map +1 -0
- package/dist/features/config/file-watcher.d.ts +13 -0
- package/dist/features/config/file-watcher.d.ts.map +1 -0
- package/dist/features/config/file-watcher.js +98 -0
- package/dist/features/config/file-watcher.js.map +1 -0
- package/dist/features/config/index.d.ts +21 -0
- package/dist/features/config/index.d.ts.map +1 -0
- package/dist/features/config/index.js +24 -0
- package/dist/features/config/index.js.map +1 -0
- package/dist/features/config/profile-service.d.ts +59 -0
- package/dist/features/config/profile-service.d.ts.map +1 -0
- package/dist/features/config/profile-service.js +114 -0
- package/dist/features/config/profile-service.js.map +1 -0
- package/dist/features/config/types.d.ts +38 -0
- package/dist/features/config/types.d.ts.map +1 -0
- package/dist/features/config/types.js +17 -0
- package/dist/features/config/types.js.map +1 -0
- package/dist/features/contract/contract.d.ts +264 -0
- package/dist/features/contract/contract.d.ts.map +1 -0
- package/dist/features/contract/contract.js +183 -0
- package/dist/features/contract/contract.js.map +1 -0
- package/dist/features/contract/index.d.ts +2 -0
- package/dist/features/contract/index.d.ts.map +1 -0
- package/dist/features/contract/index.js +2 -0
- package/dist/features/contract/index.js.map +1 -0
- package/dist/features/env/contribute.d.ts +70 -0
- package/dist/features/env/contribute.d.ts.map +1 -0
- package/dist/features/env/contribute.js +195 -0
- package/dist/features/env/contribute.js.map +1 -0
- package/dist/features/environment/create-environment.d.ts +58 -0
- package/dist/features/environment/create-environment.d.ts.map +1 -0
- package/dist/features/environment/create-environment.js +22 -0
- package/dist/features/environment/create-environment.js.map +1 -0
- package/dist/features/environment/index.d.ts +12 -0
- package/dist/features/environment/index.d.ts.map +1 -0
- package/dist/features/environment/index.js +10 -0
- package/dist/features/environment/index.js.map +1 -0
- package/dist/features/environment/load.d.ts +59 -0
- package/dist/features/environment/load.d.ts.map +1 -0
- package/dist/features/environment/load.js +117 -0
- package/dist/features/environment/load.js.map +1 -0
- package/dist/features/environment/types.d.ts +165 -0
- package/dist/features/environment/types.d.ts.map +1 -0
- package/dist/features/environment/types.js +18 -0
- package/dist/features/environment/types.js.map +1 -0
- package/dist/features/feature-flags/create-feature-flag-provider.d.ts +21 -0
- package/dist/features/feature-flags/create-feature-flag-provider.d.ts.map +1 -0
- package/dist/features/feature-flags/create-feature-flag-provider.js +16 -0
- package/dist/features/feature-flags/create-feature-flag-provider.js.map +1 -0
- package/dist/features/feature-flags/define-feature-flag-partial.d.ts +20 -0
- package/dist/features/feature-flags/define-feature-flag-partial.d.ts.map +1 -0
- package/dist/features/feature-flags/define-feature-flag-partial.js +26 -0
- package/dist/features/feature-flags/define-feature-flag-partial.js.map +1 -0
- package/dist/features/feature-flags/feature-flag-of.d.ts +16 -0
- package/dist/features/feature-flags/feature-flag-of.d.ts.map +1 -0
- package/dist/features/feature-flags/feature-flag-of.js +16 -0
- package/dist/features/feature-flags/feature-flag-of.js.map +1 -0
- package/dist/features/feature-flags/feature-flag-service.d.ts +22 -0
- package/dist/features/feature-flags/feature-flag-service.d.ts.map +1 -0
- package/dist/features/feature-flags/feature-flag-service.js +112 -0
- package/dist/features/feature-flags/feature-flag-service.js.map +1 -0
- package/dist/features/feature-flags/index.d.ts +15 -0
- package/dist/features/feature-flags/index.d.ts.map +1 -0
- package/dist/features/feature-flags/index.js +12 -0
- package/dist/features/feature-flags/index.js.map +1 -0
- package/dist/features/feature-flags/types.d.ts +30 -0
- package/dist/features/feature-flags/types.d.ts.map +1 -0
- package/dist/features/feature-flags/types.js +8 -0
- package/dist/features/feature-flags/types.js.map +1 -0
- package/dist/features/index.d.ts +6 -0
- package/dist/features/index.d.ts.map +1 -0
- package/dist/features/index.js +7 -0
- package/dist/features/index.js.map +1 -0
- package/dist/features/lock/index.d.ts +4 -0
- package/dist/features/lock/index.d.ts.map +1 -0
- package/dist/features/lock/index.js +4 -0
- package/dist/features/lock/index.js.map +1 -0
- package/dist/features/lock/lock-service.d.ts +74 -0
- package/dist/features/lock/lock-service.d.ts.map +1 -0
- package/dist/features/lock/lock-service.js +210 -0
- package/dist/features/lock/lock-service.js.map +1 -0
- package/dist/features/lock/memory.d.ts +60 -0
- package/dist/features/lock/memory.d.ts.map +1 -0
- package/dist/features/lock/memory.js +194 -0
- package/dist/features/lock/memory.js.map +1 -0
- package/dist/features/lock/types.d.ts +151 -0
- package/dist/features/lock/types.d.ts.map +1 -0
- package/dist/features/lock/types.js +17 -0
- package/dist/features/lock/types.js.map +1 -0
- package/dist/features/memory/index.d.ts +18 -0
- package/dist/features/memory/index.d.ts.map +1 -0
- package/dist/features/memory/index.js +18 -0
- package/dist/features/memory/index.js.map +1 -0
- package/dist/features/memory/lock-feature.d.ts +21 -0
- package/dist/features/memory/lock-feature.d.ts.map +1 -0
- package/dist/features/memory/lock-feature.js +24 -0
- package/dist/features/memory/lock-feature.js.map +1 -0
- package/dist/features/secrets/create-secret-provider.d.ts +31 -0
- package/dist/features/secrets/create-secret-provider.d.ts.map +1 -0
- package/dist/features/secrets/create-secret-provider.js +26 -0
- package/dist/features/secrets/create-secret-provider.js.map +1 -0
- package/dist/features/secrets/define-secret-partial.d.ts +16 -0
- package/dist/features/secrets/define-secret-partial.d.ts.map +1 -0
- package/dist/features/secrets/define-secret-partial.js +26 -0
- package/dist/features/secrets/define-secret-partial.js.map +1 -0
- package/dist/features/secrets/index.d.ts +17 -0
- package/dist/features/secrets/index.d.ts.map +1 -0
- package/dist/features/secrets/index.js +14 -0
- package/dist/features/secrets/index.js.map +1 -0
- package/dist/features/secrets/secret-of.d.ts +19 -0
- package/dist/features/secrets/secret-of.d.ts.map +1 -0
- package/dist/features/secrets/secret-of.js +21 -0
- package/dist/features/secrets/secret-of.js.map +1 -0
- package/dist/features/secrets/secret-service.d.ts +21 -0
- package/dist/features/secrets/secret-service.d.ts.map +1 -0
- package/dist/features/secrets/secret-service.js +28 -0
- package/dist/features/secrets/secret-service.js.map +1 -0
- package/dist/features/secrets/types.d.ts +30 -0
- package/dist/features/secrets/types.d.ts.map +1 -0
- package/dist/features/secrets/types.js +8 -0
- package/dist/features/secrets/types.js.map +1 -0
- package/dist/features/vault/env-var-vault.d.ts +24 -0
- package/dist/features/vault/env-var-vault.d.ts.map +1 -0
- package/dist/features/vault/env-var-vault.js +43 -0
- package/dist/features/vault/env-var-vault.js.map +1 -0
- package/dist/features/vault/hardcoded-vault.d.ts +34 -0
- package/dist/features/vault/hardcoded-vault.d.ts.map +1 -0
- package/dist/features/vault/hardcoded-vault.js +46 -0
- package/dist/features/vault/hardcoded-vault.js.map +1 -0
- package/dist/features/vault/hashicorp-vault.d.ts +32 -0
- package/dist/features/vault/hashicorp-vault.d.ts.map +1 -0
- package/dist/features/vault/hashicorp-vault.js +69 -0
- package/dist/features/vault/hashicorp-vault.js.map +1 -0
- package/dist/features/vault/index.d.ts +13 -0
- package/dist/features/vault/index.d.ts.map +1 -0
- package/dist/features/vault/index.js +12 -0
- package/dist/features/vault/index.js.map +1 -0
- package/dist/features/vault/kubernetes-vault.d.ts +27 -0
- package/dist/features/vault/kubernetes-vault.d.ts.map +1 -0
- package/dist/features/vault/kubernetes-vault.js +51 -0
- package/dist/features/vault/kubernetes-vault.js.map +1 -0
- package/dist/features/vault/types.d.ts +41 -0
- package/dist/features/vault/types.d.ts.map +1 -0
- package/dist/features/vault/types.js +21 -0
- package/dist/features/vault/types.js.map +1 -0
- package/dist/index.d.ts +78 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +48 -0
- package/dist/index.js.map +1 -0
- package/dist/justscale.d.ts +63 -0
- package/dist/justscale.d.ts.map +1 -0
- package/dist/justscale.js +501 -0
- package/dist/justscale.js.map +1 -0
- package/dist/kernel/adapter.d.ts +9 -0
- package/dist/kernel/adapter.d.ts.map +1 -0
- package/dist/kernel/adapter.js +2 -0
- package/dist/kernel/adapter.js.map +1 -0
- package/dist/kernel/kernel.d.ts +15 -0
- package/dist/kernel/kernel.d.ts.map +1 -0
- package/dist/kernel/kernel.js +134 -0
- package/dist/kernel/kernel.js.map +1 -0
- package/dist/models/access.d.ts +26 -0
- package/dist/models/access.d.ts.map +1 -0
- package/dist/models/access.js +126 -0
- package/dist/models/access.js.map +1 -0
- package/dist/models/apply-types-config.d.ts +52 -0
- package/dist/models/apply-types-config.d.ts.map +1 -0
- package/dist/models/apply-types-config.js +47 -0
- package/dist/models/apply-types-config.js.map +1 -0
- package/dist/models/define-model.d.ts +249 -0
- package/dist/models/define-model.d.ts.map +1 -0
- package/dist/models/define-model.js +388 -0
- package/dist/models/define-model.js.map +1 -0
- package/dist/models/field.d.ts +309 -0
- package/dist/models/field.d.ts.map +1 -0
- package/dist/models/field.js +312 -0
- package/dist/models/field.js.map +1 -0
- package/dist/models/in-memory/condition-evaluator.d.ts +53 -0
- package/dist/models/in-memory/condition-evaluator.d.ts.map +1 -0
- package/dist/models/in-memory/condition-evaluator.js +593 -0
- package/dist/models/in-memory/condition-evaluator.js.map +1 -0
- package/dist/models/in-memory/in-memory-model.d.ts +89 -0
- package/dist/models/in-memory/in-memory-model.d.ts.map +1 -0
- package/dist/models/in-memory/in-memory-model.js +101 -0
- package/dist/models/in-memory/in-memory-model.js.map +1 -0
- package/dist/models/in-memory/in-memory-repository.d.ts +208 -0
- package/dist/models/in-memory/in-memory-repository.d.ts.map +1 -0
- package/dist/models/in-memory/in-memory-repository.js +618 -0
- package/dist/models/in-memory/in-memory-repository.js.map +1 -0
- package/dist/models/in-memory/in-memory-scheduled-task.repository.d.ts +92 -0
- package/dist/models/in-memory/in-memory-scheduled-task.repository.d.ts.map +1 -0
- package/dist/models/in-memory/in-memory-scheduled-task.repository.js +395 -0
- package/dist/models/in-memory/in-memory-scheduled-task.repository.js.map +1 -0
- package/dist/models/in-memory/index.d.ts +35 -0
- package/dist/models/in-memory/index.d.ts.map +1 -0
- package/dist/models/in-memory/index.js +36 -0
- package/dist/models/in-memory/index.js.map +1 -0
- package/dist/models/index.d.ts +52 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +86 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/model-name-registry.d.ts +16 -0
- package/dist/models/model-name-registry.d.ts.map +1 -0
- package/dist/models/model-name-registry.js +19 -0
- package/dist/models/model-name-registry.js.map +1 -0
- package/dist/models/model.d.ts +15 -0
- package/dist/models/model.d.ts.map +1 -0
- package/dist/models/model.js +114 -0
- package/dist/models/model.js.map +1 -0
- package/dist/models/model.repository.d.ts +318 -0
- package/dist/models/model.repository.d.ts.map +1 -0
- package/dist/models/model.repository.js +146 -0
- package/dist/models/model.repository.js.map +1 -0
- package/dist/models/observable.d.ts +15 -0
- package/dist/models/observable.d.ts.map +1 -0
- package/dist/models/observable.js +64 -0
- package/dist/models/observable.js.map +1 -0
- package/dist/models/proxy.d.ts +5 -0
- package/dist/models/proxy.d.ts.map +1 -0
- package/dist/models/proxy.js +407 -0
- package/dist/models/proxy.js.map +1 -0
- package/dist/models/query.d.ts +574 -0
- package/dist/models/query.d.ts.map +1 -0
- package/dist/models/query.js +701 -0
- package/dist/models/query.js.map +1 -0
- package/dist/models/reference/reference.d.ts +229 -0
- package/dist/models/reference/reference.d.ts.map +1 -0
- package/dist/models/reference/reference.js +331 -0
- package/dist/models/reference/reference.js.map +1 -0
- package/dist/models/reference/transient-ref.d.ts +123 -0
- package/dist/models/reference/transient-ref.d.ts.map +1 -0
- package/dist/models/reference/transient-ref.js +152 -0
- package/dist/models/reference/transient-ref.js.map +1 -0
- package/dist/models/repository.d.ts +53 -0
- package/dist/models/repository.d.ts.map +1 -0
- package/dist/models/repository.js +37 -0
- package/dist/models/repository.js.map +1 -0
- package/dist/models/scheduled-task/index.d.ts +13 -0
- package/dist/models/scheduled-task/index.d.ts.map +1 -0
- package/dist/models/scheduled-task/index.js +12 -0
- package/dist/models/scheduled-task/index.js.map +1 -0
- package/dist/models/scheduled-task/scheduled-task.d.ts +73 -0
- package/dist/models/scheduled-task/scheduled-task.d.ts.map +1 -0
- package/dist/models/scheduled-task/scheduled-task.js +95 -0
- package/dist/models/scheduled-task/scheduled-task.js.map +1 -0
- package/dist/models/scheduled-task/scheduled-task.repository.d.ts +150 -0
- package/dist/models/scheduled-task/scheduled-task.repository.d.ts.map +1 -0
- package/dist/models/scheduled-task/scheduled-task.repository.js +40 -0
- package/dist/models/scheduled-task/scheduled-task.repository.js.map +1 -0
- package/dist/models/stream.d.ts +139 -0
- package/dist/models/stream.d.ts.map +1 -0
- package/dist/models/stream.js +153 -0
- package/dist/models/stream.js.map +1 -0
- package/dist/models/symbols.d.ts +73 -0
- package/dist/models/symbols.d.ts.map +1 -0
- package/dist/models/symbols.js +97 -0
- package/dist/models/symbols.js.map +1 -0
- package/dist/models/types.d.ts +291 -0
- package/dist/models/types.d.ts.map +1 -0
- package/dist/models/types.js +50 -0
- package/dist/models/types.js.map +1 -0
- package/dist/models/watch.d.ts +27 -0
- package/dist/models/watch.d.ts.map +1 -0
- package/dist/models/watch.js +124 -0
- package/dist/models/watch.js.map +1 -0
- package/dist/models/zod-ref.d.ts +46 -0
- package/dist/models/zod-ref.d.ts.map +1 -0
- package/dist/models/zod-ref.js +31 -0
- package/dist/models/zod-ref.js.map +1 -0
- package/dist/process/builtin-serializers.d.ts +19 -0
- package/dist/process/builtin-serializers.d.ts.map +1 -0
- package/dist/process/builtin-serializers.js +213 -0
- package/dist/process/builtin-serializers.js.map +1 -0
- package/dist/process/cluster-plugin.d.ts +129 -0
- package/dist/process/cluster-plugin.d.ts.map +1 -0
- package/dist/process/cluster-plugin.js +175 -0
- package/dist/process/cluster-plugin.js.map +1 -0
- package/dist/process/createProcess.d.ts +67 -0
- package/dist/process/createProcess.d.ts.map +1 -0
- package/dist/process/createProcess.js +111 -0
- package/dist/process/createProcess.js.map +1 -0
- package/dist/process/define-signals.d.ts +113 -0
- package/dist/process/define-signals.d.ts.map +1 -0
- package/dist/process/define-signals.js +222 -0
- package/dist/process/define-signals.js.map +1 -0
- package/dist/process/delay-controller.d.ts +35 -0
- package/dist/process/delay-controller.d.ts.map +1 -0
- package/dist/process/delay-controller.js +55 -0
- package/dist/process/delay-controller.js.map +1 -0
- package/dist/process/index.d.ts +38 -0
- package/dist/process/index.d.ts.map +1 -0
- package/dist/process/index.js +47 -0
- package/dist/process/index.js.map +1 -0
- package/dist/process/primitives.d.ts +393 -0
- package/dist/process/primitives.d.ts.map +1 -0
- package/dist/process/primitives.js +325 -0
- package/dist/process/primitives.js.map +1 -0
- package/dist/process/serialization.d.ts +58 -0
- package/dist/process/serialization.d.ts.map +1 -0
- package/dist/process/serialization.js +220 -0
- package/dist/process/serialization.js.map +1 -0
- package/dist/process/stream-utils.d.ts +123 -0
- package/dist/process/stream-utils.d.ts.map +1 -0
- package/dist/process/stream-utils.js +247 -0
- package/dist/process/stream-utils.js.map +1 -0
- package/dist/process/testing/clock.d.ts +115 -0
- package/dist/process/testing/clock.d.ts.map +1 -0
- package/dist/process/testing/clock.js +166 -0
- package/dist/process/testing/clock.js.map +1 -0
- package/dist/process/testing/index.d.ts +9 -0
- package/dist/process/testing/index.d.ts.map +1 -0
- package/dist/process/testing/index.js +9 -0
- package/dist/process/testing/index.js.map +1 -0
- package/dist/process/testing.d.ts +50 -0
- package/dist/process/testing.d.ts.map +1 -0
- package/dist/process/testing.js +59 -0
- package/dist/process/testing.js.map +1 -0
- package/dist/process/types.d.ts +540 -0
- package/dist/process/types.d.ts.map +1 -0
- package/dist/process/types.js +21 -0
- package/dist/process/types.js.map +1 -0
- package/dist/queue/index.d.ts +2 -0
- package/dist/queue/index.d.ts.map +1 -0
- package/dist/queue/index.js +2 -0
- package/dist/queue/index.js.map +1 -0
- package/dist/queue/queue.d.ts +34 -0
- package/dist/queue/queue.d.ts.map +1 -0
- package/dist/queue/queue.js +108 -0
- package/dist/queue/queue.js.map +1 -0
- package/dist/runtime/process/compiled.d.ts +56 -0
- package/dist/runtime/process/compiled.d.ts.map +1 -0
- package/dist/runtime/process/compiled.js +221 -0
- package/dist/runtime/process/compiled.js.map +1 -0
- package/dist/runtime/process/executor.d.ts +279 -0
- package/dist/runtime/process/executor.d.ts.map +1 -0
- package/dist/runtime/process/executor.js +1941 -0
- package/dist/runtime/process/executor.js.map +1 -0
- package/dist/runtime/process/factory.d.ts +72 -0
- package/dist/runtime/process/factory.d.ts.map +1 -0
- package/dist/runtime/process/factory.js +78 -0
- package/dist/runtime/process/factory.js.map +1 -0
- package/dist/runtime/process/freeze.d.ts +5 -0
- package/dist/runtime/process/freeze.d.ts.map +1 -0
- package/dist/runtime/process/freeze.js +94 -0
- package/dist/runtime/process/freeze.js.map +1 -0
- package/dist/runtime/process/scheduled-task-timer.d.ts +52 -0
- package/dist/runtime/process/scheduled-task-timer.d.ts.map +1 -0
- package/dist/runtime/process/scheduled-task-timer.js +104 -0
- package/dist/runtime/process/scheduled-task-timer.js.map +1 -0
- package/dist/runtime/process/signal-bus.d.ts +186 -0
- package/dist/runtime/process/signal-bus.d.ts.map +1 -0
- package/dist/runtime/process/signal-bus.js +256 -0
- package/dist/runtime/process/signal-bus.js.map +1 -0
- package/dist/runtime/process/state-serializer.d.ts +30 -0
- package/dist/runtime/process/state-serializer.d.ts.map +1 -0
- package/dist/runtime/process/state-serializer.js +244 -0
- package/dist/runtime/process/state-serializer.js.map +1 -0
- package/dist/runtime/process/storage.d.ts +96 -0
- package/dist/runtime/process/storage.d.ts.map +1 -0
- package/dist/runtime/process/storage.js +165 -0
- package/dist/runtime/process/storage.js.map +1 -0
- package/dist/runtime/process/timer-scheduler.d.ts +115 -0
- package/dist/runtime/process/timer-scheduler.d.ts.map +1 -0
- package/dist/runtime/process/timer-scheduler.js +192 -0
- package/dist/runtime/process/timer-scheduler.js.map +1 -0
- package/dist/runtime/process/trace.d.ts +17 -0
- package/dist/runtime/process/trace.d.ts.map +1 -0
- package/dist/runtime/process/trace.js +26 -0
- package/dist/runtime/process/trace.js.map +1 -0
- package/dist/runtime/protobuf/encoding/index.d.ts +26 -0
- package/dist/runtime/protobuf/encoding/index.d.ts.map +1 -0
- package/dist/runtime/protobuf/encoding/index.js +30 -0
- package/dist/runtime/protobuf/encoding/index.js.map +1 -0
- package/dist/runtime/protobuf/encoding/reader.d.ts +182 -0
- package/dist/runtime/protobuf/encoding/reader.d.ts.map +1 -0
- package/dist/runtime/protobuf/encoding/reader.js +353 -0
- package/dist/runtime/protobuf/encoding/reader.js.map +1 -0
- package/dist/runtime/protobuf/encoding/varint.d.ts +67 -0
- package/dist/runtime/protobuf/encoding/varint.d.ts.map +1 -0
- package/dist/runtime/protobuf/encoding/varint.js +117 -0
- package/dist/runtime/protobuf/encoding/varint.js.map +1 -0
- package/dist/runtime/protobuf/encoding/wire-types.d.ts +62 -0
- package/dist/runtime/protobuf/encoding/wire-types.d.ts.map +1 -0
- package/dist/runtime/protobuf/encoding/wire-types.js +103 -0
- package/dist/runtime/protobuf/encoding/wire-types.js.map +1 -0
- package/dist/runtime/protobuf/encoding/writer.d.ts +147 -0
- package/dist/runtime/protobuf/encoding/writer.d.ts.map +1 -0
- package/dist/runtime/protobuf/encoding/writer.js +214 -0
- package/dist/runtime/protobuf/encoding/writer.js.map +1 -0
- package/dist/runtime/protobuf/index.d.ts +3 -0
- package/dist/runtime/protobuf/index.d.ts.map +1 -0
- package/dist/runtime/protobuf/index.js +3 -0
- package/dist/runtime/protobuf/index.js.map +1 -0
- package/dist/runtime/protobuf/serialized.d.ts +48 -0
- package/dist/runtime/protobuf/serialized.d.ts.map +1 -0
- package/dist/runtime/protobuf/serialized.js +517 -0
- package/dist/runtime/protobuf/serialized.js.map +1 -0
- package/package.json +209 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { defineService } from '../../core/index.js';
|
|
2
|
+
import { AbstractVaultClient, VAULT_KIND } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* EnvVarVault - reads raw values from `process.env`.
|
|
5
|
+
*
|
|
6
|
+
* The path is transformed to an uppercase env-var name: `/` and `-` become
|
|
7
|
+
* `_`. E.g. `read('postgres/url')` reads `POSTGRES_URL`.
|
|
8
|
+
*
|
|
9
|
+
* Apps use it uniformly for both secrets (via `postgresSecret(...)`) and
|
|
10
|
+
* non-secret config overrides (via `fromVault(partial, {...})`), so the
|
|
11
|
+
* production composition never reads `process.env` directly.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* export default createEnvironment({
|
|
15
|
+
* name: 'production',
|
|
16
|
+
* type: 'production',
|
|
17
|
+
* services: [EnvVarVault],
|
|
18
|
+
* providers: [...],
|
|
19
|
+
* })
|
|
20
|
+
*/
|
|
21
|
+
export class EnvVarVault extends defineService({
|
|
22
|
+
inject: {},
|
|
23
|
+
provides: [AbstractVaultClient],
|
|
24
|
+
factory: () => ({
|
|
25
|
+
async read(path) {
|
|
26
|
+
const envKey = toEnvKey(path);
|
|
27
|
+
const value = process.env[envKey];
|
|
28
|
+
if (value === undefined) {
|
|
29
|
+
throw new Error(`EnvVarVault: environment variable '${envKey}' is not set (read of path '${path}')`);
|
|
30
|
+
}
|
|
31
|
+
return value;
|
|
32
|
+
},
|
|
33
|
+
async readOptional(path) {
|
|
34
|
+
return process.env[toEnvKey(path)];
|
|
35
|
+
},
|
|
36
|
+
}),
|
|
37
|
+
}) {
|
|
38
|
+
}
|
|
39
|
+
function toEnvKey(path) {
|
|
40
|
+
return path.toUpperCase().replace(/[/-]/g, '_');
|
|
41
|
+
}
|
|
42
|
+
Object.assign(EnvVarVault, { [VAULT_KIND]: 'envvar' });
|
|
43
|
+
//# sourceMappingURL=env-var-vault.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-var-vault.js","sourceRoot":"","sources":["../../../src/features/vault/env-var-vault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;AAE/E;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,WAAY,SAAQ,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,CAAC,mBAAmB,CAAC;IAC/B,OAAO,EAAE,GAAgB,EAAE,CAAC,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,IAAY;YACrB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAClC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,sCAAsC,MAAM,+BAA+B,IAAI,IAAI,CACpF,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,IAAY;YAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QACrC,CAAC;KACF,CAAC;CACH,CAAC;CAAG;AAEL,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { Service } from '../../core/service.js';
|
|
2
|
+
import type { VaultAllowedIn } from '../environment/types.js';
|
|
3
|
+
import { type VaultClient } from './types.js';
|
|
4
|
+
/**
|
|
5
|
+
* Public shape of a concrete vault service: a Service that produces a
|
|
6
|
+
* VaultClient. Used in return-type annotations so the declaration emitter
|
|
7
|
+
* doesn't leak internal service symbols (SERVICE_ID etc.) while still
|
|
8
|
+
* surfacing a value that `.add()` accepts as a Component.
|
|
9
|
+
*/
|
|
10
|
+
type VaultService = Service<VaultClient, {}>;
|
|
11
|
+
/**
|
|
12
|
+
* HardcodedVault - development-only vault with values inlined in TypeScript.
|
|
13
|
+
*
|
|
14
|
+
* Intentionally awful-looking: the store is passed as a plain object at
|
|
15
|
+
* construction. Meant to scream "dev only" at a glance. Environment policy
|
|
16
|
+
* refuses to let this be wired into production/CI environments.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* // env/development.ts
|
|
20
|
+
* import { HardcodedVault } from '@justscale/core'
|
|
21
|
+
*
|
|
22
|
+
* export default createEnvironment({
|
|
23
|
+
* name: 'dev-local',
|
|
24
|
+
* type: 'development',
|
|
25
|
+
* services: [HardcodedVault({
|
|
26
|
+
* 'postgres/url': 'postgres://postgres:postgres@localhost:5432/dev',
|
|
27
|
+
* 'jwt/key': 'dev-only-signing-key',
|
|
28
|
+
* })],
|
|
29
|
+
* providers: [DevSecretProvider],
|
|
30
|
+
* })
|
|
31
|
+
*/
|
|
32
|
+
export declare function HardcodedVault(store: Record<string, string>): VaultService & VaultAllowedIn<'development' | 'test'>;
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=hardcoded-vault.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hardcoded-vault.d.ts","sourceRoot":"","sources":["../../../src/features/vault/hardcoded-vault.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAmC,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAE/E;;;;;GAKG;AACH,KAAK,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,YAAY,GAAG,cAAc,CAAC,aAAa,GAAG,MAAM,CAAC,CAwBnH"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { defineService } from '../../core/index.js';
|
|
2
|
+
import { AbstractVaultClient, VAULT_KIND } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* HardcodedVault - development-only vault with values inlined in TypeScript.
|
|
5
|
+
*
|
|
6
|
+
* Intentionally awful-looking: the store is passed as a plain object at
|
|
7
|
+
* construction. Meant to scream "dev only" at a glance. Environment policy
|
|
8
|
+
* refuses to let this be wired into production/CI environments.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* // env/development.ts
|
|
12
|
+
* import { HardcodedVault } from '@justscale/core'
|
|
13
|
+
*
|
|
14
|
+
* export default createEnvironment({
|
|
15
|
+
* name: 'dev-local',
|
|
16
|
+
* type: 'development',
|
|
17
|
+
* services: [HardcodedVault({
|
|
18
|
+
* 'postgres/url': 'postgres://postgres:postgres@localhost:5432/dev',
|
|
19
|
+
* 'jwt/key': 'dev-only-signing-key',
|
|
20
|
+
* })],
|
|
21
|
+
* providers: [DevSecretProvider],
|
|
22
|
+
* })
|
|
23
|
+
*/
|
|
24
|
+
export function HardcodedVault(store) {
|
|
25
|
+
class HardcodedVaultImpl extends defineService({
|
|
26
|
+
inject: {},
|
|
27
|
+
provides: [AbstractVaultClient],
|
|
28
|
+
factory: () => ({
|
|
29
|
+
async read(path) {
|
|
30
|
+
const value = store[path];
|
|
31
|
+
if (value === undefined) {
|
|
32
|
+
const keys = Object.keys(store).join(', ');
|
|
33
|
+
throw new Error(`HardcodedVault: no value at path '${path}'. Known paths: ${keys || '(none)'}`);
|
|
34
|
+
}
|
|
35
|
+
return value;
|
|
36
|
+
},
|
|
37
|
+
async readOptional(path) {
|
|
38
|
+
return store[path];
|
|
39
|
+
},
|
|
40
|
+
}),
|
|
41
|
+
}) {
|
|
42
|
+
}
|
|
43
|
+
Object.assign(HardcodedVaultImpl, { [VAULT_KIND]: 'hardcoded' });
|
|
44
|
+
return HardcodedVaultImpl;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=hardcoded-vault.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hardcoded-vault.js","sourceRoot":"","sources":["../../../src/features/vault/hardcoded-vault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;AAU/E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,cAAc,CAAC,KAA6B;IAC1D,MAAM,kBAAmB,SAAQ,aAAa,CAAC;QAC7C,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,CAAC,mBAAmB,CAAC;QAC/B,OAAO,EAAE,GAAgB,EAAE,CAAC,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,IAAY;gBACrB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC1B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC3C,MAAM,IAAI,KAAK,CACb,qCAAqC,IAAI,mBAAmB,IAAI,IAAI,QAAQ,EAAE,CAC/E,CAAC;gBACJ,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,KAAK,CAAC,YAAY,CAAC,IAAY;gBAC7B,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;SACF,CAAC;KACH,CAAC;KAAG;IAEL,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAEjE,OAAO,kBAAsF,CAAC;AAChG,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Service } from '../../core/service.js';
|
|
2
|
+
import { type VaultClient } from './types.js';
|
|
3
|
+
type VaultService = Service<VaultClient, {}>;
|
|
4
|
+
interface HashiCorpVaultOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Vault server URL, e.g. `https://vault.example.com:8200`.
|
|
7
|
+
*/
|
|
8
|
+
url: string;
|
|
9
|
+
/**
|
|
10
|
+
* Auth token for this vault client. In production this typically comes
|
|
11
|
+
* from a kubernetes-auth exchange rather than a static token.
|
|
12
|
+
*/
|
|
13
|
+
token: string;
|
|
14
|
+
/**
|
|
15
|
+
* KV secrets engine version. Defaults to `'v2'`.
|
|
16
|
+
*/
|
|
17
|
+
kvVersion?: 'v1' | 'v2';
|
|
18
|
+
/**
|
|
19
|
+
* Mount path for the secrets engine. Defaults to `'secret'`.
|
|
20
|
+
*/
|
|
21
|
+
mount?: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* HashiCorpVault - reads secret values from a HashiCorp Vault KV engine.
|
|
25
|
+
*
|
|
26
|
+
* Paths follow the `<path>[#<field>]` convention: `postgres/url` reads all
|
|
27
|
+
* fields, `postgres#connectionString` reads the single `connectionString`
|
|
28
|
+
* field. For v2 KV engines, this transparently uses the `/data/` segment.
|
|
29
|
+
*/
|
|
30
|
+
export declare function HashiCorpVault(options: HashiCorpVaultOptions): VaultService;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=hashicorp-vault.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hashicorp-vault.d.ts","sourceRoot":"","sources":["../../../src/features/vault/hashicorp-vault.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAmC,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAE/E,KAAK,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAE7C,UAAU,qBAAqB;IAC7B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IACX;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,YAAY,CAgE3E"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { defineService } from '../../core/index.js';
|
|
2
|
+
import { AbstractVaultClient, VAULT_KIND } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* HashiCorpVault - reads secret values from a HashiCorp Vault KV engine.
|
|
5
|
+
*
|
|
6
|
+
* Paths follow the `<path>[#<field>]` convention: `postgres/url` reads all
|
|
7
|
+
* fields, `postgres#connectionString` reads the single `connectionString`
|
|
8
|
+
* field. For v2 KV engines, this transparently uses the `/data/` segment.
|
|
9
|
+
*/
|
|
10
|
+
export function HashiCorpVault(options) {
|
|
11
|
+
const kvVersion = options.kvVersion ?? 'v2';
|
|
12
|
+
const mount = options.mount ?? 'secret';
|
|
13
|
+
async function readRaw(path, throwOnMissing) {
|
|
14
|
+
const [secretPath, field] = path.includes('#') ? path.split('#', 2) : [path, undefined];
|
|
15
|
+
const dataSegment = kvVersion === 'v2' ? '/data/' : '/';
|
|
16
|
+
const url = `${options.url}/v1/${mount}${dataSegment}${secretPath}`;
|
|
17
|
+
const response = await fetch(url, {
|
|
18
|
+
headers: { 'X-Vault-Token': options.token },
|
|
19
|
+
});
|
|
20
|
+
if (response.status === 404) {
|
|
21
|
+
if (throwOnMissing)
|
|
22
|
+
throw new Error(`HashiCorpVault: no data at '${path}'`);
|
|
23
|
+
return undefined;
|
|
24
|
+
}
|
|
25
|
+
if (!response.ok) {
|
|
26
|
+
throw new Error(`HashiCorpVault: ${response.status} ${response.statusText} reading '${path}'`);
|
|
27
|
+
}
|
|
28
|
+
const body = await response.json();
|
|
29
|
+
const data = kvVersion === 'v2'
|
|
30
|
+
? body.data?.data
|
|
31
|
+
: body.data;
|
|
32
|
+
if (!data) {
|
|
33
|
+
if (throwOnMissing)
|
|
34
|
+
throw new Error(`HashiCorpVault: no data at '${path}'`);
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
if (field !== undefined) {
|
|
38
|
+
const value = data[field];
|
|
39
|
+
if (value === undefined) {
|
|
40
|
+
if (throwOnMissing) {
|
|
41
|
+
throw new Error(`HashiCorpVault: field '${field}' at '${secretPath}' is not set`);
|
|
42
|
+
}
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
if (typeof value !== 'string') {
|
|
46
|
+
throw new Error(`HashiCorpVault: field '${field}' at '${secretPath}' is not a string`);
|
|
47
|
+
}
|
|
48
|
+
return value;
|
|
49
|
+
}
|
|
50
|
+
return JSON.stringify(data);
|
|
51
|
+
}
|
|
52
|
+
class HashiCorpVaultImpl extends defineService({
|
|
53
|
+
inject: {},
|
|
54
|
+
provides: [AbstractVaultClient],
|
|
55
|
+
factory: () => ({
|
|
56
|
+
async read(path) {
|
|
57
|
+
const value = await readRaw(path, true);
|
|
58
|
+
return value;
|
|
59
|
+
},
|
|
60
|
+
async readOptional(path) {
|
|
61
|
+
return readRaw(path, false);
|
|
62
|
+
},
|
|
63
|
+
}),
|
|
64
|
+
}) {
|
|
65
|
+
}
|
|
66
|
+
Object.assign(HashiCorpVaultImpl, { [VAULT_KIND]: 'hashicorp' });
|
|
67
|
+
return HashiCorpVaultImpl;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=hashicorp-vault.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hashicorp-vault.js","sourceRoot":"","sources":["../../../src/features/vault/hashicorp-vault.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @justscale/core/vault
|
|
3
|
+
*
|
|
4
|
+
* Abstract vault-client token + concrete implementations. SecretProviders
|
|
5
|
+
* inject `AbstractVaultClient` to read raw values from the configured source.
|
|
6
|
+
*/
|
|
7
|
+
export { AbstractVaultClient, VAULT_KIND } from './types.js';
|
|
8
|
+
export type { VaultClient, VaultKind } from './types.js';
|
|
9
|
+
export { HardcodedVault } from './hardcoded-vault.js';
|
|
10
|
+
export { EnvVarVault } from './env-var-vault.js';
|
|
11
|
+
export { KubernetesVault } from './kubernetes-vault.js';
|
|
12
|
+
export { HashiCorpVault } from './hashicorp-vault.js';
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/vault/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7D,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @justscale/core/vault
|
|
3
|
+
*
|
|
4
|
+
* Abstract vault-client token + concrete implementations. SecretProviders
|
|
5
|
+
* inject `AbstractVaultClient` to read raw values from the configured source.
|
|
6
|
+
*/
|
|
7
|
+
export { AbstractVaultClient, VAULT_KIND } from './types.js';
|
|
8
|
+
export { HardcodedVault } from './hardcoded-vault.js';
|
|
9
|
+
export { EnvVarVault } from './env-var-vault.js';
|
|
10
|
+
export { KubernetesVault } from './kubernetes-vault.js';
|
|
11
|
+
export { HashiCorpVault } from './hashicorp-vault.js';
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/vault/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Service } from '../../core/service.js';
|
|
2
|
+
import { type VaultClient } from './types.js';
|
|
3
|
+
type VaultService = Service<VaultClient, {}>;
|
|
4
|
+
interface KubernetesVaultOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Directory where secrets are mounted. Defaults to
|
|
7
|
+
* `/var/run/secrets` - the standard k8s secret-volume mount path.
|
|
8
|
+
*/
|
|
9
|
+
mountPath?: string;
|
|
10
|
+
/**
|
|
11
|
+
* Optional namespace prefix applied to all paths. Useful when the same
|
|
12
|
+
* vault client is shared across multiple mounted secrets.
|
|
13
|
+
*/
|
|
14
|
+
namespace?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* KubernetesVault - reads secret values from mounted k8s Secret volumes.
|
|
18
|
+
*
|
|
19
|
+
* Paths are translated to file paths under `mountPath`:
|
|
20
|
+
* read('postgres/url') → /var/run/secrets/postgres/url
|
|
21
|
+
*
|
|
22
|
+
* Assumes secrets are mounted as individual files under the configured
|
|
23
|
+
* mount path, which is the standard k8s pattern for Secret volumes.
|
|
24
|
+
*/
|
|
25
|
+
export declare function KubernetesVault(options?: KubernetesVaultOptions): VaultService;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=kubernetes-vault.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kubernetes-vault.d.ts","sourceRoot":"","sources":["../../../src/features/vault/kubernetes-vault.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAmC,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAE/E,KAAK,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAE7C,UAAU,sBAAsB;IAC9B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,YAAY,CA8ClF"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { defineService } from '../../core/index.js';
|
|
2
|
+
import { AbstractVaultClient, VAULT_KIND } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* KubernetesVault - reads secret values from mounted k8s Secret volumes.
|
|
5
|
+
*
|
|
6
|
+
* Paths are translated to file paths under `mountPath`:
|
|
7
|
+
* read('postgres/url') → /var/run/secrets/postgres/url
|
|
8
|
+
*
|
|
9
|
+
* Assumes secrets are mounted as individual files under the configured
|
|
10
|
+
* mount path, which is the standard k8s pattern for Secret volumes.
|
|
11
|
+
*/
|
|
12
|
+
export function KubernetesVault(options = {}) {
|
|
13
|
+
const mountPath = options.mountPath ?? '/var/run/secrets';
|
|
14
|
+
const namespace = options.namespace ?? '';
|
|
15
|
+
async function readRaw(path, throwOnMissing) {
|
|
16
|
+
const { readFile } = await import('node:fs/promises');
|
|
17
|
+
const { join } = await import('node:path');
|
|
18
|
+
const fullPath = namespace
|
|
19
|
+
? join(mountPath, namespace, path)
|
|
20
|
+
: join(mountPath, path);
|
|
21
|
+
try {
|
|
22
|
+
const contents = await readFile(fullPath, 'utf-8');
|
|
23
|
+
return contents.replace(/\n$/, '');
|
|
24
|
+
}
|
|
25
|
+
catch (err) {
|
|
26
|
+
if (err.code === 'ENOENT') {
|
|
27
|
+
if (throwOnMissing) {
|
|
28
|
+
throw new Error(`KubernetesVault: secret '${path}' not mounted at ${fullPath}`, { cause: err });
|
|
29
|
+
}
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
throw new Error(`KubernetesVault: failed to read '${path}' at ${fullPath}: ${err.message}`, { cause: err });
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
class KubernetesVaultImpl extends defineService({
|
|
36
|
+
inject: {},
|
|
37
|
+
provides: [AbstractVaultClient],
|
|
38
|
+
factory: () => ({
|
|
39
|
+
async read(path) {
|
|
40
|
+
return (await readRaw(path, true));
|
|
41
|
+
},
|
|
42
|
+
async readOptional(path) {
|
|
43
|
+
return readRaw(path, false);
|
|
44
|
+
},
|
|
45
|
+
}),
|
|
46
|
+
}) {
|
|
47
|
+
}
|
|
48
|
+
Object.assign(KubernetesVaultImpl, { [VAULT_KIND]: 'kubernetes' });
|
|
49
|
+
return KubernetesVaultImpl;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=kubernetes-vault.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kubernetes-vault.js","sourceRoot":"","sources":["../../../src/features/vault/kubernetes-vault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;AAiB/E;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkC,EAAE;IAClE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC;IAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;IAE1C,KAAK,UAAU,OAAO,CAAC,IAAY,EAAE,cAAuB;QAC1D,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACtD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,SAAS;YACxB,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC;YAClC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnD,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrD,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,IAAI,KAAK,CACb,4BAA4B,IAAI,oBAAoB,QAAQ,EAAE,EAC9D,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;gBACJ,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,IAAI,KAAK,CACb,oCAAoC,IAAI,QAAQ,QAAQ,KAAM,GAAa,CAAC,OAAO,EAAE,EACrF,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,mBAAoB,SAAQ,aAAa,CAAC;QAC9C,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,CAAC,mBAAmB,CAAC;QAC/B,OAAO,EAAE,GAAgB,EAAE,CAAC,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,IAAY;gBACrB,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAW,CAAC;YAC/C,CAAC;YACD,KAAK,CAAC,YAAY,CAAC,IAAY;gBAC7B,OAAO,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9B,CAAC;SACF,CAAC;KACH,CAAC;KAAG;IAEL,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;IAEnE,OAAO,mBAA8C,CAAC;AACxD,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Brand attached to concrete vault-client service classes so the environment
|
|
3
|
+
* layer can enforce policies (e.g. "HardcodedVault not allowed in production").
|
|
4
|
+
*/
|
|
5
|
+
export declare const VAULT_KIND: unique symbol;
|
|
6
|
+
export type VaultKind = 'hardcoded' | 'envvar' | 'kubernetes' | 'hashicorp' | 'custom';
|
|
7
|
+
/**
|
|
8
|
+
* Vault-client interface.
|
|
9
|
+
*
|
|
10
|
+
* Implementations read raw string values from an external source by path.
|
|
11
|
+
* SecretProviders and config contributions (`fromVault`) inject
|
|
12
|
+
* `AbstractVaultClient` and translate raw values into their typed shape.
|
|
13
|
+
*
|
|
14
|
+
* `read` throws when the path is not set - appropriate for required
|
|
15
|
+
* values (most secrets). `readOptional` returns `undefined` - appropriate
|
|
16
|
+
* for config overrides where a missing value should fall through to a
|
|
17
|
+
* zod-level `.default()`.
|
|
18
|
+
*/
|
|
19
|
+
export interface VaultClient {
|
|
20
|
+
/** Read a required value. Throws when the path is not set. */
|
|
21
|
+
read(path: string): Promise<string>;
|
|
22
|
+
/** Read an optional value. Returns `undefined` when the path is not set. */
|
|
23
|
+
readOptional(path: string): Promise<string | undefined>;
|
|
24
|
+
}
|
|
25
|
+
declare const AbstractVaultClient_base: import("../../core/service.js").AbstractClass<VaultClient>;
|
|
26
|
+
/**
|
|
27
|
+
* Abstract vault-client token. Concrete implementations (HardcodedVault,
|
|
28
|
+
* EnvVarVault, KubernetesVault, HashiCorpVault) bind to this.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* const ProdSecrets = createSecretProvider({
|
|
32
|
+
* inject: { vault: AbstractVaultClient },
|
|
33
|
+
* factory: async ({ vault }) => ({
|
|
34
|
+
* [PostgresSecrets.key]: { connectionString: await vault.read('postgres/url') },
|
|
35
|
+
* }),
|
|
36
|
+
* })
|
|
37
|
+
*/
|
|
38
|
+
export declare abstract class AbstractVaultClient extends AbstractVaultClient_base {
|
|
39
|
+
}
|
|
40
|
+
export {};
|
|
41
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/features/vault/types.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,eAAO,MAAM,UAAU,eAAiC,CAAC;AAEzD,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEvF;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW;IAC1B,8DAA8D;IAC9D,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACnC,4EAA4E;IAC5E,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CACxD;;AAED;;;;;;;;;;;GAWG;AACH,8BAAsB,mBAAoB,SAAQ,wBAAkD;CAAG"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { defineAbstract } from '../../core/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Brand attached to concrete vault-client service classes so the environment
|
|
4
|
+
* layer can enforce policies (e.g. "HardcodedVault not allowed in production").
|
|
5
|
+
*/
|
|
6
|
+
export const VAULT_KIND = Symbol('justscale.vault.kind');
|
|
7
|
+
/**
|
|
8
|
+
* Abstract vault-client token. Concrete implementations (HardcodedVault,
|
|
9
|
+
* EnvVarVault, KubernetesVault, HashiCorpVault) bind to this.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* const ProdSecrets = createSecretProvider({
|
|
13
|
+
* inject: { vault: AbstractVaultClient },
|
|
14
|
+
* factory: async ({ vault }) => ({
|
|
15
|
+
* [PostgresSecrets.key]: { connectionString: await vault.read('postgres/url') },
|
|
16
|
+
* }),
|
|
17
|
+
* })
|
|
18
|
+
*/
|
|
19
|
+
export class AbstractVaultClient extends defineAbstract('AbstractVaultClient') {
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/features/vault/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAuBzD;;;;;;;;;;;GAWG;AACH,MAAM,OAAgB,mBAAoB,SAAQ,cAAc,CAAc,qBAAqB,CAAC;CAAG"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @justscale/core
|
|
3
|
+
*/
|
|
4
|
+
import './process/serialization.js';
|
|
5
|
+
import './process/builtin-serializers.js';
|
|
6
|
+
export { default } from './justscale.js';
|
|
7
|
+
export { default as JustScale } from './justscale.js';
|
|
8
|
+
export type { JustScaleFunction, BuiltApp } from './justscale.js';
|
|
9
|
+
export { Container, defineService, defineAbstract, defineContribution, createContribution, isContribution, isContributionToken, getContributionDefault, getContributionParent, CONTRIBUTION_MARKER, CONTRIBUTION_DEFAULT, CONTRIBUTES_TO, Logger, ConsoleLogger, ConsoleLoggerFactory, getMinLogLevel, setMinLogLevel, getContext, captureContext, runWithContext, withContext, registerInstrumentation, unregisterInstrumentation, getInstrumentations, runInScope, runInScopeAsync, getContainer, requireContainer, runWithContainer, getRequestContext, getRequestChain, runWithRequestContext, runInFullRequestScope, runInFullRequestScopeSync, pushScope, addToSet, setInMap, disposable, asyncDisposable, combineDisposables, SERVICE_PROVIDES, SERVICE_ID, AbstractContainer, } from './core/index.js';
|
|
10
|
+
export type { ContainerReflection, ControllerWhere, } from './core/container-reflection.js';
|
|
11
|
+
export type { ServiceToken, ServiceClass, AbstractClass, ServiceDef, Service, ServiceFactory, Resolver, InstanceOf, ResolvedDeps, ExtractDeps, ExtractAllDeps, CollectAllDeps, ValidateDeps, LoggerFactory, LogAttributes, LogLevel, ObservabilityContext, LinkedContext, Instrumentation, ScopeInfo, RequestType, RequestContext, RequestScopeOptions, AccessPrincipal, } from './core/index.js';
|
|
12
|
+
export { getAccessPrincipals, runWithPrincipals, enterWithPrincipals, } from './core/index.js';
|
|
13
|
+
export { Lifecycle, isLifecycleToken, LIFECYCLE_TOKEN, } from './core/index.js';
|
|
14
|
+
export type { LifecycleHooks } from './core/index.js';
|
|
15
|
+
export { createController, createContextualController, registerBuiltinProvider, registerContextualFactory, Procedure, CONTRACT_CONTROLLER } from './core/index.js';
|
|
16
|
+
export type { ContextualRouteFactories, ControllerDef, ControllerInstance, CompiledRoute, ControllerSettings, TransportContext, ReservedContextKeys, ValidateDepsNoConflict, HandlerContext, NormalizeSettings, BuiltinContext, BuiltinProvider, BuiltinProviderContext, ContextualControllerDef, ContextualControllerBuilder, ContextualControllerInstance, Session, SessionOptions, ProcedureRequest, ProcedureHandlerContext, ProcedureBuilder, ProcedureDef, ProcedureContext, RunOptions, RequestStatus, RawMessageSource, CompiledProcedure, ContractControllerDef, ContractControllerInstance, CompiledRpcMethod, } from './core/index.js';
|
|
17
|
+
export { ProcedureNotFoundError, GuardDeniedError, TimeoutError, } from './core/index.js';
|
|
18
|
+
export { registerRouteFactory, createRouteFactories, } from './core/index.js';
|
|
19
|
+
export type { SupportedMethods, RouteMethod, MethodMetadata, GetMethodMetadata, MethodHasBody, MethodsForTransport, RouteHandler, RouteFactories, RouteContext, BaseContext, RouteBuilder, ExtractParams, Prettify, } from './core/index.js';
|
|
20
|
+
export { createMiddleware, createGuard, isMiddlewareDef, isGuardDef, MIDDLEWARE_DEF_MARKER, GUARD_DEF_MARKER, GUARD_DEF_SOURCE, } from './core/index.js';
|
|
21
|
+
export type { Middleware, Guard, MiddlewareDef, GuardDef, UnresolvedMiddleware, UnresolvedGuard, MiddlewareAdded, MiddlewareInput, GuardInput, } from './core/index.js';
|
|
22
|
+
export type { App, MatchedRoute, ExecuteOptions } from './app.js';
|
|
23
|
+
export type { Adapter } from './kernel/adapter.js';
|
|
24
|
+
export type { BuildContext } from './builder/build-context.js';
|
|
25
|
+
export { currentBuilder } from './builder/build-context.js';
|
|
26
|
+
export { LockServiceDef, AbstractLockProvider, LockAcquisitionError, DoubleLockError, LockReleasedError, InvalidLockKeyError, runWithLockTracking, getHeldLocks, isLocked, _registerHeldLock, _unregisterHeldLock, } from './features/lock/index.js';
|
|
27
|
+
export type { Lock, LockMetadata, LockOptions, LockProvider, LockService, } from './features/lock/index.js';
|
|
28
|
+
export { Repository, REPO_TOKEN, REPO_BRAND, isRepositoryToken } from './models/repository.js';
|
|
29
|
+
export type { RepositoryToken } from './models/repository.js';
|
|
30
|
+
export { bindRepository, bindService, bindInstance, createFeatureBuilder, getFeatureMetadata, getFeatureRequirements, getFeatureName, } from './builder/index.js';
|
|
31
|
+
export type { Token, AnyToken, Component, Builder, BuiltCluster, RepositoryBinding, ServiceBinding, InstanceBinding, FeatureToken, FeatureMetadata, BuilderCallback, StartHook, StopHook, ProvidesOf, RequiresOf, RemoveFromTuple, FeatureBuilder, } from './builder/index.js';
|
|
32
|
+
export type { ServeOptions } from './cluster/cluster.js';
|
|
33
|
+
export { isServiceDef, isControllerDef, isRepositoryBinding, isServiceBinding, isInstanceBinding, isFeatureToken, isBuilderCallback, isComponentArray, FEATURE_TOKEN, FEATURE_META, REPO_BINDING, SERVICE_BINDING, INSTANCE_BINDING, } from './builder/index.js';
|
|
34
|
+
export { DependencyError, validateDependencies, buildDependencyGraph, findMissingDependencies, getTokenDescription, registerPluginProvides, getPluginProvides, registerImplicitService, getImplicitServices, } from './builder/index.js';
|
|
35
|
+
export { registerOpenApiMethod, getOpenApiMethodMapping, getRegisteredOpenApiMethods, type OpenApiMethodMapping, } from './core/openapi-methods.js';
|
|
36
|
+
export type { MissingDependency, DependencyGraph, } from './builder/index.js';
|
|
37
|
+
export { topologicalSort, CycleError, } from './builder/index.js';
|
|
38
|
+
export type { Stop } from './builder/index.js';
|
|
39
|
+
export { isStop, createStopFn } from './builder/index.js';
|
|
40
|
+
export type { ExtractMiddlewareAdded, ExtractAddedFromMiddleware, ExtractStepDeps, ResponseEntry, ExtractStatuses, ExtractBodyForStatus, Step, RouteDef as RouteDefV2, RouteBuilder as RouteBuilderV2, BuilderPlugin, PermissionDefLike, PermOf, BodyOf, NameOf, PermEntries, ToPermissionVariant, PermissionVariants, } from './builder/index.js';
|
|
41
|
+
export { PLUGIN_SYMBOL, isPlugin, createPlugin } from './builder/index.js';
|
|
42
|
+
export type { BuilderState } from './builder/index.js';
|
|
43
|
+
export { createBuilderState, createBaseBuilder } from './builder/index.js';
|
|
44
|
+
export { executeRoute, executeSteps } from './builder/index.js';
|
|
45
|
+
export { query, ValidationErrorSchema } from './builder/index.js';
|
|
46
|
+
export { ChannelFeature, createChannels, AbstractChannelBackend, MemoryChannelBackend, createChannel, } from './features/channel/index.js';
|
|
47
|
+
export type { ChannelsDef, ChannelBackend, ChannelBackendInstance, BackendSubscription, Channel, ChannelSubscription, ChannelsInstance, ChannelsOptions, ChannelHooks, ChannelInternal, } from './features/channel/index.js';
|
|
48
|
+
export { defineContract, rpc, getContractMetadata, defineMessage, simpleMessage, CONTRACT_METADATA, CONTRACT_ID, ContractBase, } from './features/contract/index.js';
|
|
49
|
+
export type { Contract, AnyContract, ExtractContract, ContractMetadata, StreamingMode, MessageSchema, ProtoSchema, MessageType, MessageConfig, FieldDescriptor, RpcMethodDef, RpcMethodBuilder, RpcContext, StreamingRpcContext, UnaryHandler, ServerStreamHandler, ClientStreamHandler, BidiStreamHandler, MethodHandler, ContractMethods, MethodInput, MethodOutput, MethodStreaming, ContractImplementation, } from './features/contract/index.js';
|
|
50
|
+
export { CONFIG_PARTIAL, isConfigPartial, isConfigComponent, defineConfigPartial, Config, createConfig, ConfigServiceDef, } from './features/config/index.js';
|
|
51
|
+
export type { ConfigPartial, ConfigComponent, ConfigToken, ConfigService, } from './features/config/index.js';
|
|
52
|
+
export { SECRET_PARTIAL, isSecretPartial, isSecretComponent, defineSecretPartial, Secret, createSecretProvider, SecretServiceDef, } from './features/secrets/index.js';
|
|
53
|
+
export type { SecretPartial, SecretComponent, SecretToken, SecretService, } from './features/secrets/index.js';
|
|
54
|
+
export { FEATURE_FLAG_PARTIAL, isFeatureFlagPartial, isFeatureFlagComponent, defineFeatureFlagPartial, FeatureFlag, createFeatureFlagProvider, FeatureFlagServiceDef, } from './features/feature-flags/index.js';
|
|
55
|
+
export type { FeatureFlagPartial, FeatureFlagComponent, FeatureFlagToken, FeatureFlagService, } from './features/feature-flags/index.js';
|
|
56
|
+
export { config, secret, flag, fromVault, buildProviders, } from './features/env/contribute.js';
|
|
57
|
+
export type { EnvContribution, ConfigContribution, ConfigSource, SecretContribution, FlagContribution, } from './features/env/contribute.js';
|
|
58
|
+
export { AbstractVaultClient, VAULT_KIND, HardcodedVault, EnvVarVault, KubernetesVault, HashiCorpVault, } from './features/vault/index.js';
|
|
59
|
+
export type { VaultClient, VaultKind, } from './features/vault/index.js';
|
|
60
|
+
export { ENVIRONMENT, ENVIRONMENT_TYPES, DEFAULT_VAULT_POLICY, isEnvironment, createEnvironment, loadEnvironment, detectEnvironmentName, isEnvironmentType, __registerStaticEnvironment, } from './features/environment/index.js';
|
|
61
|
+
export type { Environment, EnvironmentType, EnvContract, Env, RegisteredConfigPartials, RegisteredSecretPartials, RegisteredFlagPartials, VaultPolicy, VaultPolicyRules, VaultAllowedIn, ServiceCompatibleWithEnv, LoadEnvironmentOptions, } from './features/environment/index.js';
|
|
62
|
+
export { InMemoryProcessStorage, AbstractProcessStorage, } from './runtime/process/storage.js';
|
|
63
|
+
export type { ProcessStorage } from './runtime/process/storage.js';
|
|
64
|
+
export { setHmrContainer, __getHmrState, __validateHmrState, __wrapHmrStateForSave, __hmrPatchMethods, __hmrFullReload, __hmrAvailable, } from './core/hmr.js';
|
|
65
|
+
export { getServiceId, getServiceProvides, getServiceIdValue, getServiceStableId, SERVICE_STABLE_ID } from './core/service.js';
|
|
66
|
+
export { CONTAINER_DEV } from './core/service.js';
|
|
67
|
+
export type { ContainerDevExtensions } from './core/service.js';
|
|
68
|
+
export { onContainerReady, runContainerReadyHooks } from './core/container-hooks.js';
|
|
69
|
+
export type { ContainerReadyHook } from './core/container-hooks.js';
|
|
70
|
+
export { getCurrentApp } from './cli/current-app.js';
|
|
71
|
+
export type { CurrentApp } from './cli/current-app.js';
|
|
72
|
+
export { defineProject, isProjectConfig } from './cli/define-project.js';
|
|
73
|
+
export type { ProjectConfig, BuildConfig, EnvironmentConfig } from './cli/define-project.js';
|
|
74
|
+
export { defineMain } from './cli/define-main.js';
|
|
75
|
+
export { defineApp } from './cli/define-app.js';
|
|
76
|
+
export type { DefinedApp, AppFactory } from './cli/define-app.js';
|
|
77
|
+
export { Queue, createQueue } from './queue/index.js';
|
|
78
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAElE,OAAO,EACL,SAAS,EACT,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,MAAM,EACN,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,UAAU,EACV,cAAc,EACd,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,yBAAyB,EACzB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,mBAAmB,EACnB,eAAe,GAChB,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,UAAU,EACV,OAAO,EACP,cAAc,EACd,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,WAAW,EACX,cAAc,EACd,cAAc,EACd,YAAY,EAEZ,aAAa,EACb,aAAa,EACb,QAAQ,EAER,oBAAoB,EACpB,aAAa,EACb,eAAe,EACf,SAAS,EAET,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,eAAe,GAChB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACnK,YAAY,EACV,wBAAwB,EACxB,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,2BAA2B,EAC3B,4BAA4B,EAC5B,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,aAAa,EACb,QAAQ,GACT,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,UAAU,EACV,KAAK,EACL,aAAa,EACb,QAAQ,EACR,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU,GACX,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAElE,YAAY,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,QAAQ,EACR,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,IAAI,EACJ,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC/F,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,KAAK,EACL,QAAQ,EACR,SAAS,EACT,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,EACf,SAAS,EACT,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,EACf,cAAc,GACf,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EACL,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,2BAA2B,EAC3B,KAAK,oBAAoB,GAC1B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,iBAAiB,EACjB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,eAAe,EACf,UAAU,GACX,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE1D,YAAY,EACV,sBAAsB,EACtB,0BAA0B,EAC1B,eAAe,EACf,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,IAAI,EACJ,QAAQ,IAAI,UAAU,EACtB,YAAY,IAAI,cAAc,EAC9B,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,MAAM,EACN,WAAW,EACX,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE3E,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAElE,OAAO,EACL,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,GACd,MAAM,6BAA6B,CAAC;AAErC,YAAY,EACV,WAAW,EACX,cAAc,EACd,sBAAsB,EACtB,mBAAmB,EACnB,OAAO,EACP,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,eAAe,GAChB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,cAAc,EACd,GAAG,EACH,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,YAAY,GACb,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,QAAQ,EACR,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,WAAW,EACX,WAAW,EACX,aAAa,EACb,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,WAAW,EACX,YAAY,EACZ,eAAe,EACf,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,YAAY,EACZ,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACV,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,GACd,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,6BAA6B,CAAC;AAErC,YAAY,EACV,aAAa,EACb,eAAe,EACf,WAAW,EACX,aAAa,GACd,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,WAAW,EACX,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,mCAAmC,CAAC;AAE3C,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,MAAM,EACN,MAAM,EACN,IAAI,EACJ,SAAS,EACT,cAAc,GACf,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,WAAW,EACX,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACV,WAAW,EACX,SAAS,GACV,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AAEzC,YAAY,EACV,WAAW,EACX,eAAe,EACf,WAAW,EACX,GAAG,EACH,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,OAAO,EACL,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC/H,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,YAAY,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACrF,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACzE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAElE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @justscale/core
|
|
3
|
+
*/
|
|
4
|
+
// eslint-disable-next-line @typescript-eslint/triple-slash-reference
|
|
5
|
+
/// <reference path="./process/serialization.global.d.ts" />
|
|
6
|
+
import './process/serialization.js';
|
|
7
|
+
import './process/builtin-serializers.js';
|
|
8
|
+
export { default } from './justscale.js';
|
|
9
|
+
export { default as JustScale } from './justscale.js';
|
|
10
|
+
export { Container, defineService, defineAbstract, defineContribution, createContribution, isContribution, isContributionToken, getContributionDefault, getContributionParent, CONTRIBUTION_MARKER, CONTRIBUTION_DEFAULT, CONTRIBUTES_TO, Logger, ConsoleLogger, ConsoleLoggerFactory, getMinLogLevel, setMinLogLevel, getContext, captureContext, runWithContext, withContext, registerInstrumentation, unregisterInstrumentation, getInstrumentations, runInScope, runInScopeAsync, getContainer, requireContainer, runWithContainer, getRequestContext, getRequestChain, runWithRequestContext, runInFullRequestScope, runInFullRequestScopeSync, pushScope, addToSet, setInMap, disposable, asyncDisposable, combineDisposables, SERVICE_PROVIDES, SERVICE_ID, AbstractContainer, } from './core/index.js';
|
|
11
|
+
export { getAccessPrincipals, runWithPrincipals, enterWithPrincipals, } from './core/index.js';
|
|
12
|
+
export { Lifecycle, isLifecycleToken, LIFECYCLE_TOKEN, } from './core/index.js';
|
|
13
|
+
export { createController, createContextualController, registerBuiltinProvider, registerContextualFactory, Procedure, CONTRACT_CONTROLLER } from './core/index.js';
|
|
14
|
+
export { ProcedureNotFoundError, GuardDeniedError, TimeoutError, } from './core/index.js';
|
|
15
|
+
export { registerRouteFactory, createRouteFactories, } from './core/index.js';
|
|
16
|
+
export { createMiddleware, createGuard, isMiddlewareDef, isGuardDef, MIDDLEWARE_DEF_MARKER, GUARD_DEF_MARKER, GUARD_DEF_SOURCE, } from './core/index.js';
|
|
17
|
+
export { currentBuilder } from './builder/build-context.js';
|
|
18
|
+
export { LockServiceDef, AbstractLockProvider, LockAcquisitionError, DoubleLockError, LockReleasedError, InvalidLockKeyError, runWithLockTracking, getHeldLocks, isLocked, _registerHeldLock, _unregisterHeldLock, } from './features/lock/index.js';
|
|
19
|
+
export { Repository, REPO_TOKEN, REPO_BRAND, isRepositoryToken } from './models/repository.js';
|
|
20
|
+
export { bindRepository, bindService, bindInstance, createFeatureBuilder, getFeatureMetadata, getFeatureRequirements, getFeatureName, } from './builder/index.js';
|
|
21
|
+
export { isServiceDef, isControllerDef, isRepositoryBinding, isServiceBinding, isInstanceBinding, isFeatureToken, isBuilderCallback, isComponentArray, FEATURE_TOKEN, FEATURE_META, REPO_BINDING, SERVICE_BINDING, INSTANCE_BINDING, } from './builder/index.js';
|
|
22
|
+
export { DependencyError, validateDependencies, buildDependencyGraph, findMissingDependencies, getTokenDescription, registerPluginProvides, getPluginProvides, registerImplicitService, getImplicitServices, } from './builder/index.js';
|
|
23
|
+
export { registerOpenApiMethod, getOpenApiMethodMapping, getRegisteredOpenApiMethods, } from './core/openapi-methods.js';
|
|
24
|
+
export { topologicalSort, CycleError, } from './builder/index.js';
|
|
25
|
+
export { isStop, createStopFn } from './builder/index.js';
|
|
26
|
+
export { PLUGIN_SYMBOL, isPlugin, createPlugin } from './builder/index.js';
|
|
27
|
+
export { createBuilderState, createBaseBuilder } from './builder/index.js';
|
|
28
|
+
export { executeRoute, executeSteps } from './builder/index.js';
|
|
29
|
+
export { query, ValidationErrorSchema } from './builder/index.js';
|
|
30
|
+
export { ChannelFeature, createChannels, AbstractChannelBackend, MemoryChannelBackend, createChannel, } from './features/channel/index.js';
|
|
31
|
+
export { defineContract, rpc, getContractMetadata, defineMessage, simpleMessage, CONTRACT_METADATA, CONTRACT_ID, ContractBase, } from './features/contract/index.js';
|
|
32
|
+
export { CONFIG_PARTIAL, isConfigPartial, isConfigComponent, defineConfigPartial, Config, createConfig, ConfigServiceDef, } from './features/config/index.js';
|
|
33
|
+
export { SECRET_PARTIAL, isSecretPartial, isSecretComponent, defineSecretPartial, Secret, createSecretProvider, SecretServiceDef, } from './features/secrets/index.js';
|
|
34
|
+
export { FEATURE_FLAG_PARTIAL, isFeatureFlagPartial, isFeatureFlagComponent, defineFeatureFlagPartial, FeatureFlag, createFeatureFlagProvider, FeatureFlagServiceDef, } from './features/feature-flags/index.js';
|
|
35
|
+
export { config, secret, flag, fromVault, buildProviders, } from './features/env/contribute.js';
|
|
36
|
+
export { AbstractVaultClient, VAULT_KIND, HardcodedVault, EnvVarVault, KubernetesVault, HashiCorpVault, } from './features/vault/index.js';
|
|
37
|
+
export { ENVIRONMENT, ENVIRONMENT_TYPES, DEFAULT_VAULT_POLICY, isEnvironment, createEnvironment, loadEnvironment, detectEnvironmentName, isEnvironmentType, __registerStaticEnvironment, } from './features/environment/index.js';
|
|
38
|
+
export { InMemoryProcessStorage, AbstractProcessStorage, } from './runtime/process/storage.js';
|
|
39
|
+
export { setHmrContainer, __getHmrState, __validateHmrState, __wrapHmrStateForSave, __hmrPatchMethods, __hmrFullReload, __hmrAvailable, } from './core/hmr.js';
|
|
40
|
+
export { getServiceId, getServiceProvides, getServiceIdValue, getServiceStableId, SERVICE_STABLE_ID } from './core/service.js';
|
|
41
|
+
export { CONTAINER_DEV } from './core/service.js';
|
|
42
|
+
export { onContainerReady, runContainerReadyHooks } from './core/container-hooks.js';
|
|
43
|
+
export { getCurrentApp } from './cli/current-app.js';
|
|
44
|
+
export { defineProject, isProjectConfig } from './cli/define-project.js';
|
|
45
|
+
export { defineMain } from './cli/define-main.js';
|
|
46
|
+
export { defineApp } from './cli/define-app.js';
|
|
47
|
+
export { Queue, createQueue } from './queue/index.js';
|
|
48
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qEAAqE;AACrE,4DAA4D;AAE5D,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGtD,OAAO,EACL,SAAS,EACT,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,MAAM,EACN,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,UAAU,EACV,cAAc,EACd,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,yBAAyB,EACzB,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAmCzB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAkCnK,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAiBzB,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAiBzB,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,QAAQ,EACR,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AASlC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG/F,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAwB5B,OAAO,EACL,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,2BAA2B,GAE5B,MAAM,2BAA2B,CAAC;AAMnC,OAAO,EACL,eAAe,EACf,UAAU,GACX,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAsB1D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAG3E,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAElE,OAAO,EACL,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,GACd,MAAM,6BAA6B,CAAC;AAerC,OAAO,EACL,cAAc,EACd,GAAG,EACH,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,YAAY,GACb,MAAM,8BAA8B,CAAC;AA6BtC,OAAO,EACL,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,YAAY,EACZ,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AASpC,OAAO,EACL,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,6BAA6B,CAAC;AASrC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,WAAW,EACX,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,mCAAmC,CAAC;AAS3C,OAAO,EACL,MAAM,EACN,MAAM,EACN,IAAI,EACJ,SAAS,EACT,cAAc,GACf,MAAM,8BAA8B,CAAC;AAUtC,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,cAAc,EACd,WAAW,EACX,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AAiBzC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC/H,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGlD,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGrF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC"}
|