@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,429 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dependency Injection System
|
|
3
|
+
*
|
|
4
|
+
* Uses TypeScript's type system to ensure all dependencies are provided at compile time.
|
|
5
|
+
*/
|
|
6
|
+
import { Logger, type LoggerFactory } from './logger.js';
|
|
7
|
+
import type { LifecycleImpl } from './lifecycle-impl.js';
|
|
8
|
+
import { type RepositoryToken } from '../models/repository.js';
|
|
9
|
+
/** A service class constructor */
|
|
10
|
+
export type ServiceClass<T = unknown> = new (...args: never[]) => T;
|
|
11
|
+
/** An abstract class constructor (can be used as a DI token) */
|
|
12
|
+
export type AbstractClass<T = unknown> = abstract new (...args: never[]) => T;
|
|
13
|
+
/** A resolver function for resolving additional dependencies */
|
|
14
|
+
export interface Resolver {
|
|
15
|
+
<T>(token: ServiceToken<T>): Promise<T>;
|
|
16
|
+
/** Update an already-resolved instance in the container at runtime (available when resolved via Container) */
|
|
17
|
+
registerInstance?<T>(token: ServiceToken<T>, instance: T): void;
|
|
18
|
+
}
|
|
19
|
+
/** A service factory function */
|
|
20
|
+
export type ServiceFactory<TDeps, TInstance> = (deps: TDeps, resolve: Resolver) => TInstance;
|
|
21
|
+
/** Object with deps and factory - duck-typed service definition (used by processes) */
|
|
22
|
+
export interface ServiceLike<T = unknown> {
|
|
23
|
+
readonly deps: Record<string, unknown>;
|
|
24
|
+
readonly factory: (resolvedDeps: Record<string, unknown>) => T;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* A resolvable token - carries its own resolution logic.
|
|
28
|
+
* Used by Config.of / Secret.of / FeatureFlag.of, which look up a value in
|
|
29
|
+
* the container under a partial's symbol key.
|
|
30
|
+
*/
|
|
31
|
+
export interface ResolvableToken<T = unknown> {
|
|
32
|
+
readonly description: string;
|
|
33
|
+
readonly key: symbol;
|
|
34
|
+
resolve(container: {
|
|
35
|
+
get(key: symbol): T;
|
|
36
|
+
}): T;
|
|
37
|
+
}
|
|
38
|
+
/** Token to identify a service - a class, abstract class, ServiceDef, Service, ServiceLike (processes), RepositoryToken, or ResolvableToken */
|
|
39
|
+
export type ServiceToken<T = unknown> = ServiceClass<T> | AbstractClass<T> | ServiceDef<T, any> | Service<T, any> | ServiceLike<T> | RepositoryToken<T> | ResolvableToken<T>;
|
|
40
|
+
/** Extracts the instance type from a service token */
|
|
41
|
+
export type InstanceOf<T> = T extends ServiceClass<infer I> ? I : T extends AbstractClass<infer I> ? I : T extends ServiceDef<infer I, any> ? I : T extends Service<infer I, any> ? I : T extends ServiceLike<infer I> ? I : T extends RepositoryToken<any, infer TInstance> ? TInstance : T extends ResolvableToken<infer I> ? I : never;
|
|
42
|
+
/** Maps a deps record to resolved instance types */
|
|
43
|
+
export type ResolvedDeps<T extends Record<string, ServiceToken>> = {
|
|
44
|
+
[K in keyof T]: InstanceOf<T[K]>;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Define an abstract class for use as a DI token.
|
|
48
|
+
*
|
|
49
|
+
* Use `abstract class MyAbstract extends defineAbstract<MyInterface>() {}`
|
|
50
|
+
* to create a clean abstract class that serves as a DI token.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```typescript
|
|
54
|
+
* // Define the interface
|
|
55
|
+
* interface ProcessStorage {
|
|
56
|
+
* save(state: ProcessState): Promise<void>
|
|
57
|
+
* load(instanceId: string): Promise<ProcessState | null>
|
|
58
|
+
* }
|
|
59
|
+
*
|
|
60
|
+
* // Create abstract class as DI token
|
|
61
|
+
* export abstract class AbstractProcessStorage extends defineAbstract<ProcessStorage>() {}
|
|
62
|
+
*
|
|
63
|
+
* // Implementation uses defineService with provides
|
|
64
|
+
* export class InMemoryProcessStorage extends defineService({
|
|
65
|
+
* inject: {},
|
|
66
|
+
* provides: [AbstractProcessStorage],
|
|
67
|
+
* factory: () => ({ ... })
|
|
68
|
+
* }) {}
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
export declare function defineAbstract<T>(name?: string): AbstractClass<T>;
|
|
72
|
+
/** Symbol for provides metadata */
|
|
73
|
+
export declare const SERVICE_PROVIDES: unique symbol;
|
|
74
|
+
/** Symbol for unique ServiceDef ID (legacy counter-based) */
|
|
75
|
+
export declare const SERVICE_ID: unique symbol;
|
|
76
|
+
/** Symbol for stable service ID (file path + export name, injected by compiler) */
|
|
77
|
+
export declare const SERVICE_STABLE_ID: unique symbol;
|
|
78
|
+
/** @internal Symbol key for dev-time extension surface on Container. */
|
|
79
|
+
export declare const CONTAINER_DEV: unique symbol;
|
|
80
|
+
/** @internal Dev-time extension surface for HMR and tooling. */
|
|
81
|
+
export interface ContainerDevExtensions {
|
|
82
|
+
/** Is `token` a registered service def in this container? */
|
|
83
|
+
hasServiceDef(token: unknown): boolean;
|
|
84
|
+
/** Map a `<relPath>#<exportName>` ID to an already-registered token. */
|
|
85
|
+
registerStableId(stableId: string, token: unknown): void;
|
|
86
|
+
/**
|
|
87
|
+
* Swap the runtime behaviour backing `token` in-place. Objects get
|
|
88
|
+
* their keys merged; functions get their indirection proxy retargeted.
|
|
89
|
+
* See `Container.replaceInstanceImpl`.
|
|
90
|
+
*/
|
|
91
|
+
replaceInstance<T>(token: unknown, newFactory: (deps: Record<string, unknown>, resolve: unknown) => T | Promise<T>): Promise<void>;
|
|
92
|
+
}
|
|
93
|
+
/** Read the SERVICE_PROVIDES tokens from a service definition. */
|
|
94
|
+
export declare function getServiceProvides(obj: unknown): ServiceToken[] | undefined;
|
|
95
|
+
/** Read the SERVICE_ID counter value from a service definition. */
|
|
96
|
+
export declare function getServiceIdValue(obj: unknown): number | undefined;
|
|
97
|
+
/** Read the SERVICE_STABLE_ID from a service definition. */
|
|
98
|
+
export declare function getServiceStableId(obj: unknown): string | undefined;
|
|
99
|
+
/**
|
|
100
|
+
* Get the stable service ID from a token, if available.
|
|
101
|
+
* Returns the compiler-injected ID or falls back to a generated one.
|
|
102
|
+
*/
|
|
103
|
+
export declare function getServiceId(token: ServiceToken): string;
|
|
104
|
+
/** The definition of a service - carries deps in its type */
|
|
105
|
+
export interface ServiceDef<TInstance, TDeps extends Record<string, ServiceToken> = Record<string, ServiceToken>> {
|
|
106
|
+
readonly __brand: unique symbol;
|
|
107
|
+
readonly deps: TDeps;
|
|
108
|
+
readonly factory: ServiceFactory<ResolvedDeps<TDeps>, TInstance>;
|
|
109
|
+
/**
|
|
110
|
+
* Optional runtime metadata: what class tokens this ServiceDef provides.
|
|
111
|
+
* Used by runtime validation to check if dependencies are satisfied.
|
|
112
|
+
* E.g., PostgresClient provides AbstractPostgresClient.
|
|
113
|
+
*/
|
|
114
|
+
readonly [SERVICE_PROVIDES]?: ServiceToken[];
|
|
115
|
+
/**
|
|
116
|
+
* Unique ID for this ServiceDef instance (legacy counter-based).
|
|
117
|
+
* Used to match ServiceDefs across module instances.
|
|
118
|
+
*/
|
|
119
|
+
readonly [SERVICE_ID]?: number;
|
|
120
|
+
/**
|
|
121
|
+
* Stable service ID (file path + export name).
|
|
122
|
+
* Injected by compiler in dev mode for HMR support.
|
|
123
|
+
* E.g., 'src/services/user.ts#UserService'
|
|
124
|
+
*/
|
|
125
|
+
readonly [SERVICE_STABLE_ID]?: string;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* A service "class" created by defineService.
|
|
129
|
+
* Use `class MyService extends defineService({...}) {}` to preserve
|
|
130
|
+
* type names in .d.ts output instead of inlining the full type.
|
|
131
|
+
*/
|
|
132
|
+
export interface Service<T, TDeps extends Record<string, ServiceToken> = Record<string, ServiceToken>> {
|
|
133
|
+
/** Constructor signature - makes it extendable (never actually called) */
|
|
134
|
+
new (): T;
|
|
135
|
+
/** Runtime properties for DI */
|
|
136
|
+
readonly deps: TDeps;
|
|
137
|
+
readonly factory: ServiceFactory<ResolvedDeps<TDeps>, T>;
|
|
138
|
+
/** Unique ID for cross-module matching (legacy counter-based) */
|
|
139
|
+
readonly [SERVICE_ID]?: number;
|
|
140
|
+
/** Optional runtime metadata: what class tokens this Service provides */
|
|
141
|
+
readonly [SERVICE_PROVIDES]?: ServiceToken[];
|
|
142
|
+
/**
|
|
143
|
+
* Stable service ID (file path + export name).
|
|
144
|
+
* Injected by compiler in dev mode for HMR support.
|
|
145
|
+
*/
|
|
146
|
+
readonly [SERVICE_STABLE_ID]?: string;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Define a service class.
|
|
150
|
+
*
|
|
151
|
+
* Use `class MyService extends defineService({...}) {}` pattern
|
|
152
|
+
* to preserve type names in .d.ts output. This prevents TypeScript
|
|
153
|
+
* from inlining the full service type everywhere it's referenced.
|
|
154
|
+
*
|
|
155
|
+
* @example
|
|
156
|
+
* ```typescript
|
|
157
|
+
* // The class name "UserService" is preserved in .d.ts
|
|
158
|
+
* export class UserService extends defineService({
|
|
159
|
+
* inject: { users: UserRepository },
|
|
160
|
+
* factory: ({ users }) => ({
|
|
161
|
+
* register: async (email, password) => {...},
|
|
162
|
+
* findById: async (id) => {...},
|
|
163
|
+
* })
|
|
164
|
+
* }) {}
|
|
165
|
+
*
|
|
166
|
+
* container.register(UserService)
|
|
167
|
+
* const users = container.resolve(UserService)
|
|
168
|
+
*
|
|
169
|
+
* // Auto-bind to abstract class
|
|
170
|
+
* export class InMemoryStorage extends defineService({
|
|
171
|
+
* inject: {},
|
|
172
|
+
* provides: [AbstractStorage], // Auto-binds!
|
|
173
|
+
* factory: () => ({ ... })
|
|
174
|
+
* }) {}
|
|
175
|
+
* ```
|
|
176
|
+
*/
|
|
177
|
+
export declare function defineService<const TDeps extends Record<string, ServiceToken>, TInstance>(config: {
|
|
178
|
+
inject: TDeps;
|
|
179
|
+
factory: ServiceFactory<ResolvedDeps<TDeps>, TInstance>;
|
|
180
|
+
/** Optional: tokens this service provides (auto-binds to abstract classes) */
|
|
181
|
+
provides?: ServiceToken[];
|
|
182
|
+
/**
|
|
183
|
+
* Stable service ID for HMR support.
|
|
184
|
+
* Injected by compiler in dev mode: 'src/services/user.ts#UserService'
|
|
185
|
+
* @internal
|
|
186
|
+
*/
|
|
187
|
+
__serviceId?: string;
|
|
188
|
+
}): Service<Awaited<TInstance>, TDeps>;
|
|
189
|
+
/** Extract all dependency tokens from a service definition */
|
|
190
|
+
export type ExtractDeps<T> = T extends ServiceDef<any, infer D> ? D[keyof D] : T extends Service<any, infer D> ? D[keyof D] : never;
|
|
191
|
+
/** Extract deps from an array of services */
|
|
192
|
+
export type ExtractAllDeps<T extends ServiceToken[]> = ExtractDeps<T[number]>;
|
|
193
|
+
/** Recursively collect ALL dependencies (transitive) */
|
|
194
|
+
export type CollectAllDeps<T extends ServiceToken> = T extends ServiceDef<any, infer D> ? T | CollectAllDeps<D[keyof D]> : T extends Service<any, infer D> ? T | CollectAllDeps<D[keyof D]> : T;
|
|
195
|
+
/**
|
|
196
|
+
* Thrown when `Container.resolve` detects a cycle in the dependency graph
|
|
197
|
+
* (e.g. A injects B and B injects A). The message lists the cycle in the
|
|
198
|
+
* order it was walked: `"Circular dependency: A -> B -> A"`.
|
|
199
|
+
*
|
|
200
|
+
* Without this, a direct cycle would recurse into `resolveInternal`
|
|
201
|
+
* synchronously until the engine throws `RangeError: Maximum call stack
|
|
202
|
+
* size exceeded`, which gives no information about *which* services are
|
|
203
|
+
* involved.
|
|
204
|
+
*/
|
|
205
|
+
export declare class CircularDependencyError extends Error {
|
|
206
|
+
readonly path: string[];
|
|
207
|
+
constructor(path: string[]);
|
|
208
|
+
}
|
|
209
|
+
export declare class Container {
|
|
210
|
+
private instances;
|
|
211
|
+
private factories;
|
|
212
|
+
/** Map from SERVICE_ID to the registered ServiceDef */
|
|
213
|
+
private factoriesById;
|
|
214
|
+
/** Map from stable service ID to token (for HMR lookup) */
|
|
215
|
+
private tokensByStableId;
|
|
216
|
+
/** Resolved deps for each service (for HMR method patching) */
|
|
217
|
+
private resolvedDeps;
|
|
218
|
+
/** HMR state registry (keyed by service ID, holds state between reloads) */
|
|
219
|
+
private hmrStateRegistry;
|
|
220
|
+
/**
|
|
221
|
+
* Backing boxes for function-type service instances. Values stored
|
|
222
|
+
* here are the MUTABLE `{ current }` cells that the public proxy
|
|
223
|
+
* delegates to via its `apply` / `get` / `set` traps. Key is the
|
|
224
|
+
* proxy reference that we handed to callers; mutating
|
|
225
|
+
* `box.current` transparently re-routes every future call.
|
|
226
|
+
*
|
|
227
|
+
* Present only for function-type instances - object instances don't
|
|
228
|
+
* need indirection because we can mutate them in place via
|
|
229
|
+
* `Object.assign`.
|
|
230
|
+
*/
|
|
231
|
+
private indirectionBoxes;
|
|
232
|
+
/** Map of in-flight resolution promises to prevent duplicate instantiation during concurrent resolution */
|
|
233
|
+
private pending;
|
|
234
|
+
/**
|
|
235
|
+
* Tokens currently being constructed (between entering resolveInternal
|
|
236
|
+
* and the factory returning). Used to detect A->B->A cycles that the
|
|
237
|
+
* `pending` map alone would not catch, because `pending` is populated
|
|
238
|
+
* *after* the recursive dep walk - a synchronous cycle never hits it.
|
|
239
|
+
* Tracked as an ordered list so we can report the full path on error.
|
|
240
|
+
*/
|
|
241
|
+
private resolving;
|
|
242
|
+
/**
|
|
243
|
+
* Current resolution context stack.
|
|
244
|
+
* Tracks which service is being resolved for contextual Logger creation.
|
|
245
|
+
*/
|
|
246
|
+
private resolutionStack;
|
|
247
|
+
/**
|
|
248
|
+
* Logger factory for creating contextual loggers.
|
|
249
|
+
* Can be replaced to use a custom logger implementation.
|
|
250
|
+
*/
|
|
251
|
+
private loggerFactory;
|
|
252
|
+
/**
|
|
253
|
+
* Lifecycle instance for hook registration.
|
|
254
|
+
* Set by the cluster builder during compile.
|
|
255
|
+
*/
|
|
256
|
+
private lifecycle;
|
|
257
|
+
/**
|
|
258
|
+
* Set the lifecycle instance (called by cluster builder during compile).
|
|
259
|
+
* This wires up the Lifecycle built-in token.
|
|
260
|
+
*/
|
|
261
|
+
setLifecycle(lifecycle: LifecycleImpl): void;
|
|
262
|
+
/** Register a service class (no deps, instantiated with new) */
|
|
263
|
+
registerClass<T>(token: ServiceClass<T>): this;
|
|
264
|
+
/** Register a service definition (ServiceDef or Service class) */
|
|
265
|
+
register<T, D extends Record<string, ServiceToken>>(def: ServiceDef<T, D> | Service<T, D>): this;
|
|
266
|
+
/** Register a service definition under a specific token (e.g., abstract class) */
|
|
267
|
+
registerFor<T, D extends Record<string, ServiceToken>>(token: ServiceToken<T>, def: ServiceDef<T, D> | Service<T, D>): this;
|
|
268
|
+
/** Register an already-created instance */
|
|
269
|
+
registerInstance<T>(token: ServiceToken<T>, instance: T): this;
|
|
270
|
+
/**
|
|
271
|
+
* Symbol-keyed "dev extensions" - bundles all the extension-point
|
|
272
|
+
* methods dev tooling needs into one non-polluting surface.
|
|
273
|
+
* Consumers (e.g. `@justscale/hmr`) do:
|
|
274
|
+
*
|
|
275
|
+
* import { CONTAINER_DEV } from '@justscale/core';
|
|
276
|
+
* const dev = container[CONTAINER_DEV];
|
|
277
|
+
* dev.replaceInstance(token, newFactory);
|
|
278
|
+
*
|
|
279
|
+
* Nothing on the public `Container` shape mentions HMR or replace
|
|
280
|
+
* semantics - those live behind the symbol so they don't show up in
|
|
281
|
+
* normal autocomplete.
|
|
282
|
+
*/
|
|
283
|
+
get [CONTAINER_DEV](): ContainerDevExtensions;
|
|
284
|
+
/**
|
|
285
|
+
* If a factory returned a function (rather than an object with
|
|
286
|
+
* methods), wrap it in a Proxy that delegates through a mutable box.
|
|
287
|
+
* `replaceInstance` can then re-point the box at a new function, and
|
|
288
|
+
* every consumer holding the proxy invokes the new behaviour.
|
|
289
|
+
*
|
|
290
|
+
* For object instances this is a no-op - they get mutated in place
|
|
291
|
+
* via `Object.assign` instead, so no indirection is needed.
|
|
292
|
+
*
|
|
293
|
+
* Cost at call time is one `Proxy.apply` trap per invocation, which
|
|
294
|
+
* is noise for typical service workloads. In the hypothetical case
|
|
295
|
+
* where a hot inner loop invokes a function-type service millions of
|
|
296
|
+
* times, the overhead would matter; we accept it for the benefit of
|
|
297
|
+
* uniform replace-in-place semantics.
|
|
298
|
+
*/
|
|
299
|
+
private wrapIfFunction;
|
|
300
|
+
/**
|
|
301
|
+
* Replace the runtime behavior backing an already-resolved token
|
|
302
|
+
* without changing the outward reference that consumers hold.
|
|
303
|
+
*
|
|
304
|
+
* Runs `newFactory(cachedDeps, resolver)` → new instance. Then:
|
|
305
|
+
*
|
|
306
|
+
* - **Object instances:** delete keys that disappeared, `Object.assign`
|
|
307
|
+
* remaining keys on top. Handler closures over the old instance see
|
|
308
|
+
* the new methods on their next call.
|
|
309
|
+
*
|
|
310
|
+
* - **Function instances:** look up the indirection box stored at
|
|
311
|
+
* resolve time, update its `current` pointer. The proxy exposed to
|
|
312
|
+
* callers delegates `apply`/get/set through the box, so existing
|
|
313
|
+
* references keep working and invoke the new code.
|
|
314
|
+
*
|
|
315
|
+
* Accessible via `container[CONTAINER_DEV].replaceInstance(...)` -
|
|
316
|
+
* not on the public shape, to keep tooling-only capabilities out of
|
|
317
|
+
* everyday autocomplete.
|
|
318
|
+
*
|
|
319
|
+
* Singletons the factory created at construction time (Maps, sockets)
|
|
320
|
+
* are NOT preserved - register `lifecycle.register('hotReload')` to
|
|
321
|
+
* capture and re-inject such state across replacements.
|
|
322
|
+
*/
|
|
323
|
+
private replaceInstanceImpl;
|
|
324
|
+
/**
|
|
325
|
+
* Set a custom logger factory.
|
|
326
|
+
* Use this to replace ConsoleLogger with your own implementation.
|
|
327
|
+
*
|
|
328
|
+
* @example
|
|
329
|
+
* ```typescript
|
|
330
|
+
* container.setLoggerFactory({
|
|
331
|
+
* create: (context) => new PinoLogger(context),
|
|
332
|
+
* });
|
|
333
|
+
* ```
|
|
334
|
+
*/
|
|
335
|
+
setLoggerFactory(factory: LoggerFactory): this;
|
|
336
|
+
/**
|
|
337
|
+
* Create a logger with the current resolution context.
|
|
338
|
+
* Called internally when Logger is requested as a dependency.
|
|
339
|
+
*/
|
|
340
|
+
createLogger(context?: string): Logger;
|
|
341
|
+
/** Find a ServiceDef for a token (handles various lookup strategies) */
|
|
342
|
+
private findServiceDef;
|
|
343
|
+
/**
|
|
344
|
+
* Resolve a service (always async to support async factories).
|
|
345
|
+
*
|
|
346
|
+
* RepositoryToken overload: `ModelRepository.of(User)` returns the
|
|
347
|
+
* repository instance type, not the entity type. TypeScript picks
|
|
348
|
+
* overloads in order, so this runs for any RepositoryToken first;
|
|
349
|
+
* everything else falls through to the generic signature.
|
|
350
|
+
*/
|
|
351
|
+
/**
|
|
352
|
+
* Synchronously return an already-instantiated service, or undefined if
|
|
353
|
+
* it hasn't been resolved yet. Does NOT trigger instantiation.
|
|
354
|
+
*
|
|
355
|
+
* Use sparingly — meant for hot paths that need to check current state
|
|
356
|
+
* (e.g. process executor lookup) without paying the cost of an async
|
|
357
|
+
* resolve. Most code should use `resolve(token)` and await it.
|
|
358
|
+
*/
|
|
359
|
+
tryGetInstance<T>(token: ServiceToken<T>): T | undefined;
|
|
360
|
+
resolve<T, TInstance>(token: RepositoryToken<T, TInstance>): Promise<TInstance>;
|
|
361
|
+
resolve<T>(token: ServiceToken<T>): Promise<T>;
|
|
362
|
+
/** Internal resolution logic */
|
|
363
|
+
private resolveInternal;
|
|
364
|
+
/**
|
|
365
|
+
* Resolve all registered services.
|
|
366
|
+
* Ensures services that provide side effects (hooks, listeners, seeders, etc.)
|
|
367
|
+
* are instantiated even if they aren't dependencies of any controller.
|
|
368
|
+
*/
|
|
369
|
+
resolveAll(): Promise<void>;
|
|
370
|
+
/**
|
|
371
|
+
* Wire model prototypes for models with `inject`.
|
|
372
|
+
*
|
|
373
|
+
* For each registered model that has inject deps, resolves those deps
|
|
374
|
+
* from the container and creates a "model service" - an object that sits
|
|
375
|
+
* in the prototype chain between instances and ModelClass.prototype.
|
|
376
|
+
*
|
|
377
|
+
* Prototype chain after wiring:
|
|
378
|
+
* instance (own props: field data)
|
|
379
|
+
* → modelService (inject deps, non-enumerable)
|
|
380
|
+
* → ModelClass.prototype (class methods)
|
|
381
|
+
* → BaseModel.prototype
|
|
382
|
+
*
|
|
383
|
+
* Call this AFTER resolveAll() - all inject deps must be resolved first.
|
|
384
|
+
*/
|
|
385
|
+
wireModelPrototypes(): Promise<void>;
|
|
386
|
+
/**
|
|
387
|
+
* Get a token by its stable service ID.
|
|
388
|
+
* Used by HMR runtime to find the service to reload.
|
|
389
|
+
*/
|
|
390
|
+
getTokenByStableId(serviceId: string): ServiceToken | undefined;
|
|
391
|
+
/**
|
|
392
|
+
* Hot reload a service. Two modes:
|
|
393
|
+
*
|
|
394
|
+
* 1. Method patch: Only method bodies changed
|
|
395
|
+
* - Re-run factory with same deps
|
|
396
|
+
* - Extract changed methods, patch in-place
|
|
397
|
+
* - Instance object stays the same, state preserved
|
|
398
|
+
*
|
|
399
|
+
* 2. Full reload: Structure changed
|
|
400
|
+
* - Run hotReload hook to collect state
|
|
401
|
+
* - Store state in registry for factory wrapper to inject
|
|
402
|
+
* - Create new instance (module will be re-imported)
|
|
403
|
+
*
|
|
404
|
+
* @param serviceId - The stable service ID
|
|
405
|
+
* @param mode - 'method-patch' or 'full-reload'
|
|
406
|
+
* @param changedMethods - List of changed method names (for method-patch mode)
|
|
407
|
+
*/
|
|
408
|
+
hotReload(serviceId: string, mode: 'method-patch' | 'full-reload', changedMethods?: string[]): Promise<void>;
|
|
409
|
+
/**
|
|
410
|
+
* Get HMR state for a service during factory execution.
|
|
411
|
+
* Called by compiler-generated code: __getHmrState(serviceId)
|
|
412
|
+
*
|
|
413
|
+
* @param serviceId - The stable service ID
|
|
414
|
+
* @returns The saved state, or undefined if none
|
|
415
|
+
*/
|
|
416
|
+
getHmrState(serviceId: string): unknown;
|
|
417
|
+
/**
|
|
418
|
+
* Check if a service has HMR state waiting to be injected.
|
|
419
|
+
*/
|
|
420
|
+
hasHmrState(serviceId: string): boolean;
|
|
421
|
+
}
|
|
422
|
+
/** Check if all required services are provided */
|
|
423
|
+
export type ValidateDeps<TRequired extends ServiceToken[], TProvided extends ServiceToken[]> = Exclude<CollectAllDeps<TRequired[number]>, TProvided[number] | TRequired[number]> extends never ? true : {
|
|
424
|
+
error: 'Missing dependencies';
|
|
425
|
+
missing: Exclude<CollectAllDeps<TRequired[number]>, TProvided[number] | TRequired[number]>;
|
|
426
|
+
};
|
|
427
|
+
export { Logger, ConsoleLogger, ConsoleLoggerFactory, getContext, captureContext, runWithContext, withContext, runInScope, runInScopeAsync, registerInstrumentation, unregisterInstrumentation, getInstrumentations, } from './logger.js';
|
|
428
|
+
export type { LoggerFactory, LogAttributes, LogLevel, ObservabilityContext, LinkedContext, Instrumentation, ScopeInfo, } from './logger.js';
|
|
429
|
+
//# sourceMappingURL=service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/core/service.ts"],"names":[],"mappings":"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"}
|