@zudojs/core 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/application/application.d.ts +25 -0
- package/dist/application/application.d.ts.map +1 -0
- package/dist/application/application.js +86 -0
- package/dist/application/application.js.map +1 -0
- package/dist/application/applicationContext.context.d.ts +40 -0
- package/dist/application/applicationContext.context.d.ts.map +1 -0
- package/dist/application/applicationContext.context.js +43 -0
- package/dist/application/applicationContext.context.js.map +1 -0
- package/dist/application/applicationState.state.d.ts +5 -0
- package/dist/application/applicationState.state.d.ts.map +1 -0
- package/dist/application/applicationState.state.js +2 -0
- package/dist/application/applicationState.state.js.map +1 -0
- package/dist/application/index.d.ts +10 -0
- package/dist/application/index.d.ts.map +1 -0
- package/dist/application/index.js +10 -0
- package/dist/application/index.js.map +1 -0
- package/dist/configuration/configurationManager.manager.d.ts +68 -0
- package/dist/configuration/configurationManager.manager.d.ts.map +1 -0
- package/dist/configuration/configurationManager.manager.js +157 -0
- package/dist/configuration/configurationManager.manager.js.map +1 -0
- package/dist/configuration/core/configuration.d.ts +53 -0
- package/dist/configuration/core/configuration.d.ts.map +1 -0
- package/dist/configuration/core/configuration.js +206 -0
- package/dist/configuration/core/configuration.js.map +1 -0
- package/dist/configuration/core/configurationKey.key.d.ts +43 -0
- package/dist/configuration/core/configurationKey.key.d.ts.map +1 -0
- package/dist/configuration/core/configurationKey.key.js +27 -0
- package/dist/configuration/core/configurationKey.key.js.map +1 -0
- package/dist/configuration/core/configurationSource.source.d.ts +114 -0
- package/dist/configuration/core/configurationSource.source.d.ts.map +1 -0
- package/dist/configuration/core/configurationSource.source.js +55 -0
- package/dist/configuration/core/configurationSource.source.js.map +1 -0
- package/dist/configuration/core/index.d.ts +12 -0
- package/dist/configuration/core/index.d.ts.map +1 -0
- package/dist/configuration/core/index.js +9 -0
- package/dist/configuration/core/index.js.map +1 -0
- package/dist/configuration/error/configurationError.error.d.ts +108 -0
- package/dist/configuration/error/configurationError.error.d.ts.map +1 -0
- package/dist/configuration/error/configurationError.error.js +168 -0
- package/dist/configuration/error/configurationError.error.js.map +1 -0
- package/dist/configuration/error/configurationRedactor.redactor.d.ts +111 -0
- package/dist/configuration/error/configurationRedactor.redactor.d.ts.map +1 -0
- package/dist/configuration/error/configurationRedactor.redactor.js +176 -0
- package/dist/configuration/error/configurationRedactor.redactor.js.map +1 -0
- package/dist/configuration/error/index.d.ts +10 -0
- package/dist/configuration/error/index.d.ts.map +1 -0
- package/dist/configuration/error/index.js +8 -0
- package/dist/configuration/error/index.js.map +1 -0
- package/dist/configuration/events/configurationEvents.events.d.ts +174 -0
- package/dist/configuration/events/configurationEvents.events.d.ts.map +1 -0
- package/dist/configuration/events/configurationEvents.events.js +99 -0
- package/dist/configuration/events/configurationEvents.events.js.map +1 -0
- package/dist/configuration/events/index.d.ts +8 -0
- package/dist/configuration/events/index.d.ts.map +1 -0
- package/dist/configuration/events/index.js +7 -0
- package/dist/configuration/events/index.js.map +1 -0
- package/dist/configuration/index.d.ts +30 -0
- package/dist/configuration/index.d.ts.map +1 -0
- package/dist/configuration/index.js +29 -0
- package/dist/configuration/index.js.map +1 -0
- package/dist/configuration/loader/configurationLoader.loader.d.ts +113 -0
- package/dist/configuration/loader/configurationLoader.loader.d.ts.map +1 -0
- package/dist/configuration/loader/configurationLoader.loader.js +155 -0
- package/dist/configuration/loader/configurationLoader.loader.js.map +1 -0
- package/dist/configuration/loader/index.d.ts +8 -0
- package/dist/configuration/loader/index.d.ts.map +1 -0
- package/dist/configuration/loader/index.js +7 -0
- package/dist/configuration/loader/index.js.map +1 -0
- package/dist/configuration/registry/configurationProvider.provider.d.ts +130 -0
- package/dist/configuration/registry/configurationProvider.provider.d.ts.map +1 -0
- package/dist/configuration/registry/configurationProvider.provider.js +113 -0
- package/dist/configuration/registry/configurationProvider.provider.js.map +1 -0
- package/dist/configuration/registry/configurationRegistry.registry.d.ts +143 -0
- package/dist/configuration/registry/configurationRegistry.registry.d.ts.map +1 -0
- package/dist/configuration/registry/configurationRegistry.registry.js +157 -0
- package/dist/configuration/registry/configurationRegistry.registry.js.map +1 -0
- package/dist/configuration/registry/index.d.ts +10 -0
- package/dist/configuration/registry/index.d.ts.map +1 -0
- package/dist/configuration/registry/index.js +8 -0
- package/dist/configuration/registry/index.js.map +1 -0
- package/dist/configuration/schema/configurationSchema.schema.d.ts +159 -0
- package/dist/configuration/schema/configurationSchema.schema.d.ts.map +1 -0
- package/dist/configuration/schema/configurationSchema.schema.js +155 -0
- package/dist/configuration/schema/configurationSchema.schema.js.map +1 -0
- package/dist/configuration/schema/configurationValidation.validator.d.ts +82 -0
- package/dist/configuration/schema/configurationValidation.validator.d.ts.map +1 -0
- package/dist/configuration/schema/configurationValidation.validator.js +110 -0
- package/dist/configuration/schema/configurationValidation.validator.js.map +1 -0
- package/dist/configuration/schema/index.d.ts +10 -0
- package/dist/configuration/schema/index.d.ts.map +1 -0
- package/dist/configuration/schema/index.js +8 -0
- package/dist/configuration/schema/index.js.map +1 -0
- package/dist/container/container.d.ts +43 -0
- package/dist/container/container.d.ts.map +1 -0
- package/dist/container/container.js +91 -0
- package/dist/container/container.js.map +1 -0
- package/dist/container/index.d.ts +8 -0
- package/dist/container/index.d.ts.map +1 -0
- package/dist/container/index.js +8 -0
- package/dist/container/index.js.map +1 -0
- package/dist/container/provider.d.ts +28 -0
- package/dist/container/provider.d.ts.map +1 -0
- package/dist/container/provider.js +2 -0
- package/dist/container/provider.js.map +1 -0
- package/dist/container/scope.d.ts +24 -0
- package/dist/container/scope.d.ts.map +1 -0
- package/dist/container/scope.js +2 -0
- package/dist/container/scope.js.map +1 -0
- package/dist/container/token.d.ts +18 -0
- package/dist/container/token.d.ts.map +1 -0
- package/dist/container/token.js +10 -0
- package/dist/container/token.js.map +1 -0
- package/dist/context/core/context.d.ts +95 -0
- package/dist/context/core/context.d.ts.map +1 -0
- package/dist/context/core/context.js +103 -0
- package/dist/context/core/context.js.map +1 -0
- package/dist/context/core/contextKey.key.d.ts +60 -0
- package/dist/context/core/contextKey.key.d.ts.map +1 -0
- package/dist/context/core/contextKey.key.js +58 -0
- package/dist/context/core/contextKey.key.js.map +1 -0
- package/dist/context/core/executionContext.context.d.ts +131 -0
- package/dist/context/core/executionContext.context.d.ts.map +1 -0
- package/dist/context/core/executionContext.context.js +81 -0
- package/dist/context/core/executionContext.context.js.map +1 -0
- package/dist/context/core/index.d.ts +9 -0
- package/dist/context/core/index.d.ts.map +1 -0
- package/dist/context/core/index.js +9 -0
- package/dist/context/core/index.js.map +1 -0
- package/dist/context/index.d.ts +8 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +8 -0
- package/dist/context/index.js.map +1 -0
- package/dist/context/provider/contextProvider.provider.d.ts +61 -0
- package/dist/context/provider/contextProvider.provider.d.ts.map +1 -0
- package/dist/context/provider/contextProvider.provider.js +44 -0
- package/dist/context/provider/contextProvider.provider.js.map +1 -0
- package/dist/context/provider/contextStorage.storage.d.ts +54 -0
- package/dist/context/provider/contextStorage.storage.d.ts.map +1 -0
- package/dist/context/provider/contextStorage.storage.js +74 -0
- package/dist/context/provider/contextStorage.storage.js.map +1 -0
- package/dist/context/provider/index.d.ts +8 -0
- package/dist/context/provider/index.d.ts.map +1 -0
- package/dist/context/provider/index.js +8 -0
- package/dist/context/provider/index.js.map +1 -0
- package/dist/context/snapshot/contextSnapshot.snapshot.d.ts +48 -0
- package/dist/context/snapshot/contextSnapshot.snapshot.d.ts.map +1 -0
- package/dist/context/snapshot/contextSnapshot.snapshot.js +33 -0
- package/dist/context/snapshot/contextSnapshot.snapshot.js.map +1 -0
- package/dist/context/snapshot/index.d.ts +8 -0
- package/dist/context/snapshot/index.d.ts.map +1 -0
- package/dist/context/snapshot/index.js +8 -0
- package/dist/context/snapshot/index.js.map +1 -0
- package/dist/context/values/contextValues.values.d.ts +84 -0
- package/dist/context/values/contextValues.values.d.ts.map +1 -0
- package/dist/context/values/contextValues.values.js +120 -0
- package/dist/context/values/contextValues.values.js.map +1 -0
- package/dist/context/values/index.d.ts +7 -0
- package/dist/context/values/index.d.ts.map +1 -0
- package/dist/context/values/index.js +7 -0
- package/dist/context/values/index.js.map +1 -0
- package/dist/contracts/adapter.d.ts +44 -0
- package/dist/contracts/adapter.d.ts.map +1 -0
- package/dist/contracts/adapter.js +2 -0
- package/dist/contracts/adapter.js.map +1 -0
- package/dist/contracts/disposable.d.ts +23 -0
- package/dist/contracts/disposable.d.ts.map +1 -0
- package/dist/contracts/disposable.js +2 -0
- package/dist/contracts/disposable.js.map +1 -0
- package/dist/contracts/handler.d.ts +32 -0
- package/dist/contracts/handler.d.ts.map +1 -0
- package/dist/contracts/handler.js +9 -0
- package/dist/contracts/handler.js.map +1 -0
- package/dist/contracts/index.d.ts +7 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js +7 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/errors/errorCode.code.d.ts +78 -0
- package/dist/errors/errorCode.code.d.ts.map +1 -0
- package/dist/errors/errorCode.code.js +84 -0
- package/dist/errors/errorCode.code.js.map +1 -0
- package/dist/errors/exceptions.d.ts +52 -0
- package/dist/errors/exceptions.d.ts.map +1 -0
- package/dist/errors/exceptions.js +125 -0
- package/dist/errors/exceptions.js.map +1 -0
- package/dist/errors/frameworkError.error.d.ts +51 -0
- package/dist/errors/frameworkError.error.d.ts.map +1 -0
- package/dist/errors/frameworkError.error.js +54 -0
- package/dist/errors/frameworkError.error.js.map +1 -0
- package/dist/errors/index.d.ts +10 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +9 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +75 -0
- package/dist/index.js.map +1 -0
- package/dist/lifecycle/core/index.d.ts +9 -0
- package/dist/lifecycle/core/index.d.ts.map +1 -0
- package/dist/lifecycle/core/index.js +9 -0
- package/dist/lifecycle/core/index.js.map +1 -0
- package/dist/lifecycle/core/lifecycle.d.ts +44 -0
- package/dist/lifecycle/core/lifecycle.d.ts.map +1 -0
- package/dist/lifecycle/core/lifecycle.js +179 -0
- package/dist/lifecycle/core/lifecycle.js.map +1 -0
- package/dist/lifecycle/core/lifecycleHook.hook.d.ts +59 -0
- package/dist/lifecycle/core/lifecycleHook.hook.d.ts.map +1 -0
- package/dist/lifecycle/core/lifecycleHook.hook.js +37 -0
- package/dist/lifecycle/core/lifecycleHook.hook.js.map +1 -0
- package/dist/lifecycle/core/lifecycleRegistry.registry.d.ts +101 -0
- package/dist/lifecycle/core/lifecycleRegistry.registry.d.ts.map +1 -0
- package/dist/lifecycle/core/lifecycleRegistry.registry.js +115 -0
- package/dist/lifecycle/core/lifecycleRegistry.registry.js.map +1 -0
- package/dist/lifecycle/core/lifecycleState.state.d.ts +2 -0
- package/dist/lifecycle/core/lifecycleState.state.d.ts.map +1 -0
- package/dist/lifecycle/core/lifecycleState.state.js +2 -0
- package/dist/lifecycle/core/lifecycleState.state.js.map +1 -0
- package/dist/lifecycle/index.d.ts +10 -0
- package/dist/lifecycle/index.d.ts.map +1 -0
- package/dist/lifecycle/index.js +10 -0
- package/dist/lifecycle/index.js.map +1 -0
- package/dist/lifecycle/manager/index.d.ts +7 -0
- package/dist/lifecycle/manager/index.d.ts.map +1 -0
- package/dist/lifecycle/manager/index.js +7 -0
- package/dist/lifecycle/manager/index.js.map +1 -0
- package/dist/lifecycle/manager/lifecycleManager.manager.d.ts +33 -0
- package/dist/lifecycle/manager/lifecycleManager.manager.d.ts.map +1 -0
- package/dist/lifecycle/manager/lifecycleManager.manager.js +157 -0
- package/dist/lifecycle/manager/lifecycleManager.manager.js.map +1 -0
- package/dist/lifecycle/scope/index.d.ts +8 -0
- package/dist/lifecycle/scope/index.d.ts.map +1 -0
- package/dist/lifecycle/scope/index.js +8 -0
- package/dist/lifecycle/scope/index.js.map +1 -0
- package/dist/lifecycle/scope/lifecycleScope.scope.d.ts +49 -0
- package/dist/lifecycle/scope/lifecycleScope.scope.d.ts.map +1 -0
- package/dist/lifecycle/scope/lifecycleScope.scope.js +234 -0
- package/dist/lifecycle/scope/lifecycleScope.scope.js.map +1 -0
- package/dist/logging/console/consoleLogger.logger.d.ts +59 -0
- package/dist/logging/console/consoleLogger.logger.d.ts.map +1 -0
- package/dist/logging/console/consoleLogger.logger.js +180 -0
- package/dist/logging/console/consoleLogger.logger.js.map +1 -0
- package/dist/logging/console/index.d.ts +8 -0
- package/dist/logging/console/index.d.ts.map +1 -0
- package/dist/logging/console/index.js +8 -0
- package/dist/logging/console/index.js.map +1 -0
- package/dist/logging/console/loggerFactory.factory.d.ts +45 -0
- package/dist/logging/console/loggerFactory.factory.d.ts.map +1 -0
- package/dist/logging/console/loggerFactory.factory.js +37 -0
- package/dist/logging/console/loggerFactory.factory.js.map +1 -0
- package/dist/logging/core/index.d.ts +11 -0
- package/dist/logging/core/index.d.ts.map +1 -0
- package/dist/logging/core/index.js +11 -0
- package/dist/logging/core/index.js.map +1 -0
- package/dist/logging/core/logEntry.entry.d.ts +73 -0
- package/dist/logging/core/logEntry.entry.d.ts.map +1 -0
- package/dist/logging/core/logEntry.entry.js +38 -0
- package/dist/logging/core/logEntry.entry.js.map +1 -0
- package/dist/logging/core/logLevel.level.d.ts +29 -0
- package/dist/logging/core/logLevel.level.d.ts.map +1 -0
- package/dist/logging/core/logLevel.level.js +34 -0
- package/dist/logging/core/logLevel.level.js.map +1 -0
- package/dist/logging/core/logger.d.ts +80 -0
- package/dist/logging/core/logger.d.ts.map +1 -0
- package/dist/logging/core/logger.js +39 -0
- package/dist/logging/core/logger.js.map +1 -0
- package/dist/logging/core/loggerContext.context.d.ts +62 -0
- package/dist/logging/core/loggerContext.context.d.ts.map +1 -0
- package/dist/logging/core/loggerContext.context.js +19 -0
- package/dist/logging/core/loggerContext.context.js.map +1 -0
- package/dist/logging/core/loggerOptions.options.d.ts +69 -0
- package/dist/logging/core/loggerOptions.options.d.ts.map +1 -0
- package/dist/logging/core/loggerOptions.options.js +10 -0
- package/dist/logging/core/loggerOptions.options.js.map +1 -0
- package/dist/logging/index.d.ts +8 -0
- package/dist/logging/index.d.ts.map +1 -0
- package/dist/logging/index.js +8 -0
- package/dist/logging/index.js.map +1 -0
- package/dist/modules/index.d.ts +20 -0
- package/dist/modules/index.d.ts.map +1 -0
- package/dist/modules/index.js +52 -0
- package/dist/modules/index.js.map +1 -0
- package/dist/modules/module.d.ts +171 -0
- package/dist/modules/module.d.ts.map +1 -0
- package/dist/modules/module.js +99 -0
- package/dist/modules/module.js.map +1 -0
- package/dist/modules/moduleContext.context.d.ts +170 -0
- package/dist/modules/moduleContext.context.d.ts.map +1 -0
- package/dist/modules/moduleContext.context.js +82 -0
- package/dist/modules/moduleContext.context.js.map +1 -0
- package/dist/modules/moduleDefinition.definition.d.ts +112 -0
- package/dist/modules/moduleDefinition.definition.d.ts.map +1 -0
- package/dist/modules/moduleDefinition.definition.js +101 -0
- package/dist/modules/moduleDefinition.definition.js.map +1 -0
- package/dist/modules/moduleDependency/index.d.ts +10 -0
- package/dist/modules/moduleDependency/index.d.ts.map +1 -0
- package/dist/modules/moduleDependency/index.js +10 -0
- package/dist/modules/moduleDependency/index.js.map +1 -0
- package/dist/modules/moduleDependency/moduleDependency.graph.d.ts +43 -0
- package/dist/modules/moduleDependency/moduleDependency.graph.d.ts.map +1 -0
- package/dist/modules/moduleDependency/moduleDependency.graph.js +175 -0
- package/dist/modules/moduleDependency/moduleDependency.graph.js.map +1 -0
- package/dist/modules/moduleDependency/moduleDependency.ordering.d.ts +38 -0
- package/dist/modules/moduleDependency/moduleDependency.ordering.d.ts.map +1 -0
- package/dist/modules/moduleDependency/moduleDependency.ordering.js +112 -0
- package/dist/modules/moduleDependency/moduleDependency.ordering.js.map +1 -0
- package/dist/modules/moduleDependency/moduleDependency.type.d.ts +66 -0
- package/dist/modules/moduleDependency/moduleDependency.type.d.ts.map +1 -0
- package/dist/modules/moduleDependency/moduleDependency.type.js +2 -0
- package/dist/modules/moduleDependency/moduleDependency.type.js.map +1 -0
- package/dist/modules/moduleError/index.d.ts +11 -0
- package/dist/modules/moduleError/index.d.ts.map +1 -0
- package/dist/modules/moduleError/index.js +11 -0
- package/dist/modules/moduleError/index.js.map +1 -0
- package/dist/modules/moduleError/moduleError.base.d.ts +119 -0
- package/dist/modules/moduleError/moduleError.base.d.ts.map +1 -0
- package/dist/modules/moduleError/moduleError.base.js +105 -0
- package/dist/modules/moduleError/moduleError.base.js.map +1 -0
- package/dist/modules/moduleError/moduleError.dependency.d.ts +45 -0
- package/dist/modules/moduleError/moduleError.dependency.d.ts.map +1 -0
- package/dist/modules/moduleError/moduleError.dependency.js +55 -0
- package/dist/modules/moduleError/moduleError.dependency.js.map +1 -0
- package/dist/modules/moduleError/moduleError.helpers.d.ts +22 -0
- package/dist/modules/moduleError/moduleError.helpers.d.ts.map +1 -0
- package/dist/modules/moduleError/moduleError.helpers.js +32 -0
- package/dist/modules/moduleError/moduleError.helpers.js.map +1 -0
- package/dist/modules/moduleError/moduleError.lifecycle.d.ts +61 -0
- package/dist/modules/moduleError/moduleError.lifecycle.d.ts.map +1 -0
- package/dist/modules/moduleError/moduleError.lifecycle.js +107 -0
- package/dist/modules/moduleError/moduleError.lifecycle.js.map +1 -0
- package/dist/modules/moduleError/moduleError.registration.d.ts +21 -0
- package/dist/modules/moduleError/moduleError.registration.d.ts.map +1 -0
- package/dist/modules/moduleError/moduleError.registration.js +39 -0
- package/dist/modules/moduleError/moduleError.registration.js.map +1 -0
- package/dist/modules/moduleLifecycle/index.d.ts +10 -0
- package/dist/modules/moduleLifecycle/index.d.ts.map +1 -0
- package/dist/modules/moduleLifecycle/index.js +10 -0
- package/dist/modules/moduleLifecycle/index.js.map +1 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.lifecycle.d.ts +41 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.lifecycle.d.ts.map +1 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.lifecycle.js +116 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.lifecycle.js.map +1 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.stateMachine.d.ts +21 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.stateMachine.d.ts.map +1 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.stateMachine.js +107 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.stateMachine.js.map +1 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.type.d.ts +94 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.type.d.ts.map +1 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.type.js +11 -0
- package/dist/modules/moduleLifecycle/moduleLifecycle.type.js.map +1 -0
- package/dist/modules/moduleLoader/index.d.ts +9 -0
- package/dist/modules/moduleLoader/index.d.ts.map +1 -0
- package/dist/modules/moduleLoader/index.js +9 -0
- package/dist/modules/moduleLoader/index.js.map +1 -0
- package/dist/modules/moduleLoader/moduleLoader.loader.d.ts +36 -0
- package/dist/modules/moduleLoader/moduleLoader.loader.d.ts.map +1 -0
- package/dist/modules/moduleLoader/moduleLoader.loader.js +164 -0
- package/dist/modules/moduleLoader/moduleLoader.loader.js.map +1 -0
- package/dist/modules/moduleLoader/moduleLoader.type.d.ts +57 -0
- package/dist/modules/moduleLoader/moduleLoader.type.d.ts.map +1 -0
- package/dist/modules/moduleLoader/moduleLoader.type.js +11 -0
- package/dist/modules/moduleLoader/moduleLoader.type.js.map +1 -0
- package/dist/modules/moduleMetadata.metadata.d.ts +36 -0
- package/dist/modules/moduleMetadata.metadata.d.ts.map +1 -0
- package/dist/modules/moduleMetadata.metadata.js +105 -0
- package/dist/modules/moduleMetadata.metadata.js.map +1 -0
- package/dist/modules/moduleRegistry/index.d.ts +8 -0
- package/dist/modules/moduleRegistry/index.d.ts.map +1 -0
- package/dist/modules/moduleRegistry/index.js +8 -0
- package/dist/modules/moduleRegistry/index.js.map +1 -0
- package/dist/modules/moduleRegistry/moduleRegistry.registry.d.ts +35 -0
- package/dist/modules/moduleRegistry/moduleRegistry.registry.d.ts.map +1 -0
- package/dist/modules/moduleRegistry/moduleRegistry.registry.js +155 -0
- package/dist/modules/moduleRegistry/moduleRegistry.registry.js.map +1 -0
- package/dist/modules/moduleRegistry/moduleRegistry.type.d.ts +134 -0
- package/dist/modules/moduleRegistry/moduleRegistry.type.d.ts.map +1 -0
- package/dist/modules/moduleRegistry/moduleRegistry.type.js +2 -0
- package/dist/modules/moduleRegistry/moduleRegistry.type.js.map +1 -0
- package/dist/runtime/index.d.ts +24 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +42 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/runtime.d.ts +89 -0
- package/dist/runtime/runtime.d.ts.map +1 -0
- package/dist/runtime/runtime.js +179 -0
- package/dist/runtime/runtime.js.map +1 -0
- package/dist/runtime/runtimeBootstrap/index.d.ts +10 -0
- package/dist/runtime/runtimeBootstrap/index.d.ts.map +1 -0
- package/dist/runtime/runtimeBootstrap/index.js +9 -0
- package/dist/runtime/runtimeBootstrap/index.js.map +1 -0
- package/dist/runtime/runtimeBootstrap/pipeline/index.d.ts +8 -0
- package/dist/runtime/runtimeBootstrap/pipeline/index.d.ts.map +1 -0
- package/dist/runtime/runtimeBootstrap/pipeline/index.js +8 -0
- package/dist/runtime/runtimeBootstrap/pipeline/index.js.map +1 -0
- package/dist/runtime/runtimeBootstrap/pipeline/runtimeBootstrap.invoke.d.ts +6 -0
- package/dist/runtime/runtimeBootstrap/pipeline/runtimeBootstrap.invoke.d.ts.map +1 -0
- package/dist/runtime/runtimeBootstrap/pipeline/runtimeBootstrap.invoke.js +27 -0
- package/dist/runtime/runtimeBootstrap/pipeline/runtimeBootstrap.invoke.js.map +1 -0
- package/dist/runtime/runtimeBootstrap/pipeline/runtimeBootstrap.pipeline.d.ts +19 -0
- package/dist/runtime/runtimeBootstrap/pipeline/runtimeBootstrap.pipeline.d.ts.map +1 -0
- package/dist/runtime/runtimeBootstrap/pipeline/runtimeBootstrap.pipeline.js +107 -0
- package/dist/runtime/runtimeBootstrap/pipeline/runtimeBootstrap.pipeline.js.map +1 -0
- package/dist/runtime/runtimeBootstrap/runtimeBootstrap.core.d.ts +25 -0
- package/dist/runtime/runtimeBootstrap/runtimeBootstrap.core.d.ts.map +1 -0
- package/dist/runtime/runtimeBootstrap/runtimeBootstrap.core.js +122 -0
- package/dist/runtime/runtimeBootstrap/runtimeBootstrap.core.js.map +1 -0
- package/dist/runtime/runtimeBootstrap/runtimeBootstrap.type.d.ts +78 -0
- package/dist/runtime/runtimeBootstrap/runtimeBootstrap.type.d.ts.map +1 -0
- package/dist/runtime/runtimeBootstrap/runtimeBootstrap.type.js +2 -0
- package/dist/runtime/runtimeBootstrap/runtimeBootstrap.type.js.map +1 -0
- package/dist/runtime/runtimeContext/index.d.ts +10 -0
- package/dist/runtime/runtimeContext/index.d.ts.map +1 -0
- package/dist/runtime/runtimeContext/index.js +9 -0
- package/dist/runtime/runtimeContext/index.js.map +1 -0
- package/dist/runtime/runtimeContext/runtimeContext.core.d.ts +38 -0
- package/dist/runtime/runtimeContext/runtimeContext.core.d.ts.map +1 -0
- package/dist/runtime/runtimeContext/runtimeContext.core.js +99 -0
- package/dist/runtime/runtimeContext/runtimeContext.core.js.map +1 -0
- package/dist/runtime/runtimeContext/runtimeContext.factory.d.ts +22 -0
- package/dist/runtime/runtimeContext/runtimeContext.factory.d.ts.map +1 -0
- package/dist/runtime/runtimeContext/runtimeContext.factory.js +43 -0
- package/dist/runtime/runtimeContext/runtimeContext.factory.js.map +1 -0
- package/dist/runtime/runtimeContext/runtimeContext.type.d.ts +68 -0
- package/dist/runtime/runtimeContext/runtimeContext.type.d.ts.map +1 -0
- package/dist/runtime/runtimeContext/runtimeContext.type.js +2 -0
- package/dist/runtime/runtimeContext/runtimeContext.type.js.map +1 -0
- package/dist/runtime/runtimeEnvironment/detection/index.d.ts +9 -0
- package/dist/runtime/runtimeEnvironment/detection/index.d.ts.map +1 -0
- package/dist/runtime/runtimeEnvironment/detection/index.js +9 -0
- package/dist/runtime/runtimeEnvironment/detection/index.js.map +1 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.detection.d.ts +8 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.detection.d.ts.map +1 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.detection.js +92 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.detection.js.map +1 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.env.d.ts +4 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.env.d.ts.map +1 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.env.js +51 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.env.js.map +1 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.os.d.ts +4 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.os.d.ts.map +1 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.os.js +26 -0
- package/dist/runtime/runtimeEnvironment/detection/runtimeEnvironment.os.js.map +1 -0
- package/dist/runtime/runtimeEnvironment/index.d.ts +10 -0
- package/dist/runtime/runtimeEnvironment/index.d.ts.map +1 -0
- package/dist/runtime/runtimeEnvironment/index.js +9 -0
- package/dist/runtime/runtimeEnvironment/index.js.map +1 -0
- package/dist/runtime/runtimeEnvironment/runtimeEnvironment.core.d.ts +41 -0
- package/dist/runtime/runtimeEnvironment/runtimeEnvironment.core.d.ts.map +1 -0
- package/dist/runtime/runtimeEnvironment/runtimeEnvironment.core.js +105 -0
- package/dist/runtime/runtimeEnvironment/runtimeEnvironment.core.js.map +1 -0
- package/dist/runtime/runtimeEnvironment/runtimeEnvironment.type.d.ts +108 -0
- package/dist/runtime/runtimeEnvironment/runtimeEnvironment.type.d.ts.map +1 -0
- package/dist/runtime/runtimeEnvironment/runtimeEnvironment.type.js +2 -0
- package/dist/runtime/runtimeEnvironment/runtimeEnvironment.type.js.map +1 -0
- package/dist/runtime/runtimeError/index.d.ts +29 -0
- package/dist/runtime/runtimeError/index.d.ts.map +1 -0
- package/dist/runtime/runtimeError/index.js +47 -0
- package/dist/runtime/runtimeError/index.js.map +1 -0
- package/dist/runtime/runtimeError/runtimeError.base.d.ts +30 -0
- package/dist/runtime/runtimeError/runtimeError.base.d.ts.map +1 -0
- package/dist/runtime/runtimeError/runtimeError.base.js +81 -0
- package/dist/runtime/runtimeError/runtimeError.base.js.map +1 -0
- package/dist/runtime/runtimeError/runtimeError.lifecycle.d.ts +35 -0
- package/dist/runtime/runtimeError/runtimeError.lifecycle.d.ts.map +1 -0
- package/dist/runtime/runtimeError/runtimeError.lifecycle.js +77 -0
- package/dist/runtime/runtimeError/runtimeError.lifecycle.js.map +1 -0
- package/dist/runtime/runtimeError/runtimeError.specialized.d.ts +35 -0
- package/dist/runtime/runtimeError/runtimeError.specialized.d.ts.map +1 -0
- package/dist/runtime/runtimeError/runtimeError.specialized.js +79 -0
- package/dist/runtime/runtimeError/runtimeError.specialized.js.map +1 -0
- package/dist/runtime/runtimeError/runtimeError.type.d.ts +74 -0
- package/dist/runtime/runtimeError/runtimeError.type.d.ts.map +1 -0
- package/dist/runtime/runtimeError/runtimeError.type.js +28 -0
- package/dist/runtime/runtimeError/runtimeError.type.js.map +1 -0
- package/dist/runtime/runtimeLogger.d.ts +5 -0
- package/dist/runtime/runtimeLogger.d.ts.map +1 -0
- package/dist/runtime/runtimeLogger.js +18 -0
- package/dist/runtime/runtimeLogger.js.map +1 -0
- package/dist/runtime/runtimeManager/index.d.ts +12 -0
- package/dist/runtime/runtimeManager/index.d.ts.map +1 -0
- package/dist/runtime/runtimeManager/index.js +11 -0
- package/dist/runtime/runtimeManager/index.js.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.core.d.ts +31 -0
- package/dist/runtime/runtimeManager/runtimeManager.core.d.ts.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.core.js +136 -0
- package/dist/runtime/runtimeManager/runtimeManager.core.js.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.error.d.ts +14 -0
- package/dist/runtime/runtimeManager/runtimeManager.error.d.ts.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.error.js +21 -0
- package/dist/runtime/runtimeManager/runtimeManager.error.js.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.factory.d.ts +7 -0
- package/dist/runtime/runtimeManager/runtimeManager.factory.d.ts.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.factory.js +8 -0
- package/dist/runtime/runtimeManager/runtimeManager.factory.js.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.lifecycle.d.ts +16 -0
- package/dist/runtime/runtimeManager/runtimeManager.lifecycle.d.ts.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.lifecycle.js +49 -0
- package/dist/runtime/runtimeManager/runtimeManager.lifecycle.js.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.type.d.ts +54 -0
- package/dist/runtime/runtimeManager/runtimeManager.type.d.ts.map +1 -0
- package/dist/runtime/runtimeManager/runtimeManager.type.js +2 -0
- package/dist/runtime/runtimeManager/runtimeManager.type.js.map +1 -0
- package/dist/runtime/runtimeOptions/index.d.ts +10 -0
- package/dist/runtime/runtimeOptions/index.d.ts.map +1 -0
- package/dist/runtime/runtimeOptions/index.js +9 -0
- package/dist/runtime/runtimeOptions/index.js.map +1 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.defaults.d.ts +6 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.defaults.d.ts.map +1 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.defaults.js +37 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.defaults.js.map +1 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.resolver.d.ts +10 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.resolver.d.ts.map +1 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.resolver.js +80 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.resolver.js.map +1 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.type.d.ts +94 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.type.d.ts.map +1 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.type.js +2 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.type.js.map +1 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.validation.d.ts +26 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.validation.d.ts.map +1 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.validation.js +59 -0
- package/dist/runtime/runtimeOptions/runtimeOptions.validation.js.map +1 -0
- package/dist/runtime/runtimeShutdown/index.d.ts +10 -0
- package/dist/runtime/runtimeShutdown/index.d.ts.map +1 -0
- package/dist/runtime/runtimeShutdown/index.js +9 -0
- package/dist/runtime/runtimeShutdown/index.js.map +1 -0
- package/dist/runtime/runtimeShutdown/pipeline/index.d.ts +7 -0
- package/dist/runtime/runtimeShutdown/pipeline/index.d.ts.map +1 -0
- package/dist/runtime/runtimeShutdown/pipeline/index.js +7 -0
- package/dist/runtime/runtimeShutdown/pipeline/index.js.map +1 -0
- package/dist/runtime/runtimeShutdown/pipeline/runtimeShutdown.pipeline.d.ts +9 -0
- package/dist/runtime/runtimeShutdown/pipeline/runtimeShutdown.pipeline.d.ts.map +1 -0
- package/dist/runtime/runtimeShutdown/pipeline/runtimeShutdown.pipeline.js +67 -0
- package/dist/runtime/runtimeShutdown/pipeline/runtimeShutdown.pipeline.js.map +1 -0
- package/dist/runtime/runtimeShutdown/runtimeShutdown.core.d.ts +35 -0
- package/dist/runtime/runtimeShutdown/runtimeShutdown.core.d.ts.map +1 -0
- package/dist/runtime/runtimeShutdown/runtimeShutdown.core.js +147 -0
- package/dist/runtime/runtimeShutdown/runtimeShutdown.core.js.map +1 -0
- package/dist/runtime/runtimeShutdown/runtimeShutdown.type.d.ts +74 -0
- package/dist/runtime/runtimeShutdown/runtimeShutdown.type.d.ts.map +1 -0
- package/dist/runtime/runtimeShutdown/runtimeShutdown.type.js +2 -0
- package/dist/runtime/runtimeShutdown/runtimeShutdown.type.js.map +1 -0
- package/dist/runtime/runtimeState.state.d.ts +60 -0
- package/dist/runtime/runtimeState.state.d.ts.map +1 -0
- package/dist/runtime/runtimeState.state.js +157 -0
- package/dist/runtime/runtimeState.state.js.map +1 -0
- package/package.json +85 -0
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates an immutable module definition.
|
|
3
|
+
*
|
|
4
|
+
* A definition describes a module but does not instantiate it.
|
|
5
|
+
*/
|
|
6
|
+
export function defineModule(options) {
|
|
7
|
+
validateModuleDefinition(options);
|
|
8
|
+
return Object.freeze({
|
|
9
|
+
id: options.id,
|
|
10
|
+
name: options.name,
|
|
11
|
+
version: options.version,
|
|
12
|
+
factory: options.factory,
|
|
13
|
+
dependencies: normalizeDependencies(options.dependencies),
|
|
14
|
+
metadata: options.metadata,
|
|
15
|
+
options: options.options,
|
|
16
|
+
autoLoad: options.autoLoad ?? true,
|
|
17
|
+
multiInstance: options.multiInstance ?? false,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Converts a Module instance into a module definition.
|
|
22
|
+
*
|
|
23
|
+
* Useful when a module has already been implemented as a class.
|
|
24
|
+
*/
|
|
25
|
+
export function moduleToDefinition(module, factory) {
|
|
26
|
+
return defineModule({
|
|
27
|
+
id: module.id,
|
|
28
|
+
name: module.name,
|
|
29
|
+
version: module.version,
|
|
30
|
+
dependencies: module.dependencies,
|
|
31
|
+
options: module.options,
|
|
32
|
+
factory: factory ?? (() => module),
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Normalizes dependency declarations into a consistent
|
|
37
|
+
* representation.
|
|
38
|
+
*/
|
|
39
|
+
export function normalizeDependencies(dependencies) {
|
|
40
|
+
if (!dependencies) {
|
|
41
|
+
return [];
|
|
42
|
+
}
|
|
43
|
+
return Object.freeze(dependencies.map((dependency) => {
|
|
44
|
+
if (typeof dependency === "string") {
|
|
45
|
+
return Object.freeze({
|
|
46
|
+
id: dependency,
|
|
47
|
+
optional: false,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return Object.freeze({
|
|
51
|
+
id: dependency.id,
|
|
52
|
+
optional: dependency.optional ?? false,
|
|
53
|
+
version: dependency.version,
|
|
54
|
+
});
|
|
55
|
+
}));
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Checks whether a value is a valid module definition.
|
|
59
|
+
*/
|
|
60
|
+
export function isModuleDefinition(value) {
|
|
61
|
+
if (value === null || typeof value !== "object") {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
const definition = value;
|
|
65
|
+
return (typeof definition.id === "string" &&
|
|
66
|
+
definition.id.length > 0 &&
|
|
67
|
+
typeof definition.name === "string" &&
|
|
68
|
+
definition.name.length > 0 &&
|
|
69
|
+
typeof definition.factory === "function");
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Validates a module definition before it enters
|
|
73
|
+
* the module registry.
|
|
74
|
+
*/
|
|
75
|
+
function validateModuleDefinition(definition) {
|
|
76
|
+
if (!definition.id || definition.id.trim().length === 0) {
|
|
77
|
+
throw new TypeError("Module definition requires a non-empty id.");
|
|
78
|
+
}
|
|
79
|
+
if (!definition.name || definition.name.trim().length === 0) {
|
|
80
|
+
throw new TypeError(`Module "${definition.id}" requires a non-empty name.`);
|
|
81
|
+
}
|
|
82
|
+
if (typeof definition.factory !== "function") {
|
|
83
|
+
throw new TypeError(`Module "${definition.id}" requires a factory function.`);
|
|
84
|
+
}
|
|
85
|
+
const dependencies = definition.dependencies ?? [];
|
|
86
|
+
const dependencyIds = new Set();
|
|
87
|
+
for (const dependency of dependencies) {
|
|
88
|
+
const id = typeof dependency === "string" ? dependency : dependency.id;
|
|
89
|
+
if (!id || id.trim().length === 0) {
|
|
90
|
+
throw new TypeError(`Module "${definition.id}" contains an invalid dependency.`);
|
|
91
|
+
}
|
|
92
|
+
if (id === definition.id) {
|
|
93
|
+
throw new TypeError(`Module "${definition.id}" cannot depend on itself.`);
|
|
94
|
+
}
|
|
95
|
+
if (dependencyIds.has(id)) {
|
|
96
|
+
throw new TypeError(`Module "${definition.id}" declares dependency "${id}" more than once.`);
|
|
97
|
+
}
|
|
98
|
+
dependencyIds.add(id);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=moduleDefinition.definition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleDefinition.definition.js","sourceRoot":"","sources":["../../src/modules/moduleDefinition.definition.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module Dependency Graph
|
|
3
|
+
*
|
|
4
|
+
* Dependency graph types, validation, and topological ordering
|
|
5
|
+
* for module dependency resolution.
|
|
6
|
+
*/
|
|
7
|
+
export { type ModuleDependency, type ModuleDependencies, type ModuleDependencyNode, type ModuleDependencyGraph, type ModuleDependencyInput, } from "./moduleDependency.type.js";
|
|
8
|
+
export { normalizeModuleDependency, normalizeModuleDependencies, validateModuleDependencies, validateModuleDependencyGraph, createModuleDependencyGraph, createModuleDependency, isOptionalModuleDependency, hasModuleVersionConstraint, } from "./moduleDependency.graph.js";
|
|
9
|
+
export { findModuleDependencyCycle, hasModuleDependencyCycle, resolveModuleStartupOrder, resolveModuleShutdownOrder, } from "./moduleDependency.ordering.js";
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/moduleDependency/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,6BAA6B,EAC7B,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module Dependency Graph
|
|
3
|
+
*
|
|
4
|
+
* Dependency graph types, validation, and topological ordering
|
|
5
|
+
* for module dependency resolution.
|
|
6
|
+
*/
|
|
7
|
+
export {} from "./moduleDependency.type.js";
|
|
8
|
+
export { normalizeModuleDependency, normalizeModuleDependencies, validateModuleDependencies, validateModuleDependencyGraph, createModuleDependencyGraph, createModuleDependency, isOptionalModuleDependency, hasModuleVersionConstraint, } from "./moduleDependency.graph.js";
|
|
9
|
+
export { findModuleDependencyCycle, hasModuleDependencyCycle, resolveModuleStartupOrder, resolveModuleShutdownOrder, } from "./moduleDependency.ordering.js";
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/moduleDependency/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAMN,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,6BAA6B,EAC7B,2BAA2B,EAC3B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,GAC3B,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { ModuleId } from "../module.js";
|
|
2
|
+
import type { ModuleDependency, ModuleDependencies, ModuleDependencyNode, ModuleDependencyGraph, ModuleDependencyInput } from "./moduleDependency.type.js";
|
|
3
|
+
/**
|
|
4
|
+
* Normalizes a dependency declaration.
|
|
5
|
+
*/
|
|
6
|
+
export declare function normalizeModuleDependency(dependency: ModuleDependencyInput): ModuleDependency;
|
|
7
|
+
/**
|
|
8
|
+
* Normalizes a list of dependency declarations.
|
|
9
|
+
*/
|
|
10
|
+
export declare function normalizeModuleDependencies(dependencies: readonly ModuleDependencyInput[] | undefined): ModuleDependencies;
|
|
11
|
+
/**
|
|
12
|
+
* Validates dependencies declared by a module.
|
|
13
|
+
*/
|
|
14
|
+
export declare function validateModuleDependencies(moduleId: ModuleId, dependencies: ModuleDependencies): void;
|
|
15
|
+
/**
|
|
16
|
+
* Creates a dependency graph from module dependency nodes.
|
|
17
|
+
*
|
|
18
|
+
* This function validates duplicate nodes and self-dependencies,
|
|
19
|
+
* but deliberately does not perform topological sorting.
|
|
20
|
+
*/
|
|
21
|
+
export declare function createModuleDependencyGraph(nodes: readonly ModuleDependencyNode[]): ModuleDependencyGraph;
|
|
22
|
+
/**
|
|
23
|
+
* Validates that all required dependencies exist.
|
|
24
|
+
*
|
|
25
|
+
* Optional dependencies are intentionally ignored when missing.
|
|
26
|
+
*/
|
|
27
|
+
export declare function validateModuleDependencyGraph(graph: ModuleDependencyGraph): readonly ModuleId[];
|
|
28
|
+
/**
|
|
29
|
+
* Creates a dependency declaration.
|
|
30
|
+
*/
|
|
31
|
+
export declare function createModuleDependency(id: ModuleId, options?: {
|
|
32
|
+
readonly optional?: boolean;
|
|
33
|
+
readonly version?: string;
|
|
34
|
+
}): ModuleDependency;
|
|
35
|
+
/**
|
|
36
|
+
* Checks whether a dependency is optional.
|
|
37
|
+
*/
|
|
38
|
+
export declare function isOptionalModuleDependency(dependency: ModuleDependency): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Checks whether a dependency has a version constraint.
|
|
41
|
+
*/
|
|
42
|
+
export declare function hasModuleVersionConstraint(dependency: ModuleDependency): boolean;
|
|
43
|
+
//# sourceMappingURL=moduleDependency.graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleDependency.graph.d.ts","sourceRoot":"","sources":["../../../src/modules/moduleDependency/moduleDependency.graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,qBAAqB,GAChC,gBAAgB,CAyBlB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,YAAY,EAAE,SAAS,qBAAqB,EAAE,GAAG,SAAS,GACzD,kBAAkB,CAuBpB;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,kBAAkB,GAC/B,IAAI,CAuBN;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,SAAS,oBAAoB,EAAE,GACrC,qBAAqB,CA0DvB;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,qBAAqB,GAC3B,SAAS,QAAQ,EAAE,CAgBrB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,QAAQ,EACZ,OAAO,GAAE;IACP,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CACtB,GACL,gBAAgB,CAMlB;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,gBAAgB,GAC3B,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,gBAAgB,GAC3B,OAAO,CAET"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalizes a dependency declaration.
|
|
3
|
+
*/
|
|
4
|
+
export function normalizeModuleDependency(dependency) {
|
|
5
|
+
if (typeof dependency === "string") {
|
|
6
|
+
const id = dependency.trim();
|
|
7
|
+
if (!id) {
|
|
8
|
+
throw new TypeError("Module dependency id cannot be empty.");
|
|
9
|
+
}
|
|
10
|
+
return Object.freeze({
|
|
11
|
+
id,
|
|
12
|
+
optional: false,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
const id = dependency.id?.trim();
|
|
16
|
+
if (!id) {
|
|
17
|
+
throw new TypeError("Module dependency id cannot be empty.");
|
|
18
|
+
}
|
|
19
|
+
return Object.freeze({
|
|
20
|
+
id,
|
|
21
|
+
optional: dependency.optional ?? false,
|
|
22
|
+
version: normalizeVersionConstraint(dependency.version),
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Normalizes a list of dependency declarations.
|
|
27
|
+
*/
|
|
28
|
+
export function normalizeModuleDependencies(dependencies) {
|
|
29
|
+
if (!dependencies || dependencies.length === 0) {
|
|
30
|
+
return [];
|
|
31
|
+
}
|
|
32
|
+
const normalized = [];
|
|
33
|
+
const seen = new Set();
|
|
34
|
+
for (const dependency of dependencies) {
|
|
35
|
+
const item = normalizeModuleDependency(dependency);
|
|
36
|
+
if (seen.has(item.id)) {
|
|
37
|
+
throw new TypeError(`Module dependency "${item.id}" is declared more than once.`);
|
|
38
|
+
}
|
|
39
|
+
seen.add(item.id);
|
|
40
|
+
normalized.push(item);
|
|
41
|
+
}
|
|
42
|
+
return Object.freeze(normalized);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Validates dependencies declared by a module.
|
|
46
|
+
*/
|
|
47
|
+
export function validateModuleDependencies(moduleId, dependencies) {
|
|
48
|
+
const normalizedModuleId = moduleId.trim();
|
|
49
|
+
if (!normalizedModuleId) {
|
|
50
|
+
throw new TypeError("Module id cannot be empty.");
|
|
51
|
+
}
|
|
52
|
+
for (const dependency of dependencies) {
|
|
53
|
+
if (dependency.id === normalizedModuleId) {
|
|
54
|
+
throw new TypeError(`Module "${normalizedModuleId}" cannot depend on itself.`);
|
|
55
|
+
}
|
|
56
|
+
if (dependency.version !== undefined &&
|
|
57
|
+
!isValidVersionConstraint(dependency.version)) {
|
|
58
|
+
throw new TypeError(`Invalid version constraint "${dependency.version}" for module dependency "${dependency.id}".`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Creates a dependency graph from module dependency nodes.
|
|
64
|
+
*
|
|
65
|
+
* This function validates duplicate nodes and self-dependencies,
|
|
66
|
+
* but deliberately does not perform topological sorting.
|
|
67
|
+
*/
|
|
68
|
+
export function createModuleDependencyGraph(nodes) {
|
|
69
|
+
const nodeMap = new Map();
|
|
70
|
+
for (const node of nodes) {
|
|
71
|
+
const id = node.id.trim();
|
|
72
|
+
if (!id) {
|
|
73
|
+
throw new TypeError("Module dependency graph nodes require a non-empty id.");
|
|
74
|
+
}
|
|
75
|
+
if (nodeMap.has(id)) {
|
|
76
|
+
throw new TypeError(`Module "${id}" appears more than once in the dependency graph.`);
|
|
77
|
+
}
|
|
78
|
+
const dependencies = normalizeModuleDependencies(node.dependencies);
|
|
79
|
+
validateModuleDependencies(id, dependencies);
|
|
80
|
+
nodeMap.set(id, Object.freeze({
|
|
81
|
+
id,
|
|
82
|
+
dependencies,
|
|
83
|
+
}));
|
|
84
|
+
}
|
|
85
|
+
const readonlyNodes = new Map(nodeMap);
|
|
86
|
+
return {
|
|
87
|
+
nodes: readonlyNodes,
|
|
88
|
+
getDependencies(moduleId) {
|
|
89
|
+
return readonlyNodes.get(moduleId)?.dependencies ?? [];
|
|
90
|
+
},
|
|
91
|
+
hasModule(moduleId) {
|
|
92
|
+
return readonlyNodes.has(moduleId);
|
|
93
|
+
},
|
|
94
|
+
getDependents(moduleId) {
|
|
95
|
+
const dependents = [];
|
|
96
|
+
for (const node of readonlyNodes.values()) {
|
|
97
|
+
if (node.dependencies.some((dependency) => dependency.id === moduleId)) {
|
|
98
|
+
dependents.push(node.id);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return dependents;
|
|
102
|
+
},
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Validates that all required dependencies exist.
|
|
107
|
+
*
|
|
108
|
+
* Optional dependencies are intentionally ignored when missing.
|
|
109
|
+
*/
|
|
110
|
+
export function validateModuleDependencyGraph(graph) {
|
|
111
|
+
const missing = [];
|
|
112
|
+
for (const node of graph.nodes.values()) {
|
|
113
|
+
for (const dependency of node.dependencies) {
|
|
114
|
+
if (dependency.optional) {
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
if (!graph.hasModule(dependency.id)) {
|
|
118
|
+
missing.push(dependency.id);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return Object.freeze([...new Set(missing)]);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Creates a dependency declaration.
|
|
126
|
+
*/
|
|
127
|
+
export function createModuleDependency(id, options = {}) {
|
|
128
|
+
return normalizeModuleDependency({
|
|
129
|
+
id,
|
|
130
|
+
optional: options.optional ?? false,
|
|
131
|
+
version: options.version,
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Checks whether a dependency is optional.
|
|
136
|
+
*/
|
|
137
|
+
export function isOptionalModuleDependency(dependency) {
|
|
138
|
+
return dependency.optional;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Checks whether a dependency has a version constraint.
|
|
142
|
+
*/
|
|
143
|
+
export function hasModuleVersionConstraint(dependency) {
|
|
144
|
+
return dependency.version !== undefined;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Normalizes a semantic version constraint.
|
|
148
|
+
*
|
|
149
|
+
* This is intentionally lightweight. Full version-range
|
|
150
|
+
* resolution belongs to a higher-level package.
|
|
151
|
+
*/
|
|
152
|
+
function normalizeVersionConstraint(value) {
|
|
153
|
+
if (value === undefined) {
|
|
154
|
+
return undefined;
|
|
155
|
+
}
|
|
156
|
+
const normalized = value.trim();
|
|
157
|
+
return normalized.length > 0 ? normalized : undefined;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Basic validation for supported version constraints.
|
|
161
|
+
*
|
|
162
|
+
* Examples:
|
|
163
|
+
*
|
|
164
|
+
* 1.0.0
|
|
165
|
+
* ^1.0.0
|
|
166
|
+
* ~1.2.0
|
|
167
|
+
* >=1.0.0
|
|
168
|
+
* <=2.0.0
|
|
169
|
+
* >1.0.0
|
|
170
|
+
* <2.0.0
|
|
171
|
+
*/
|
|
172
|
+
function isValidVersionConstraint(value) {
|
|
173
|
+
return /^(?:[<>=~^]*\s*)?\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\s*)$/.test(value);
|
|
174
|
+
}
|
|
175
|
+
//# sourceMappingURL=moduleDependency.graph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleDependency.graph.js","sourceRoot":"","sources":["../../../src/modules/moduleDependency/moduleDependency.graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { ModuleId } from "../module.js";
|
|
2
|
+
import type { ModuleDependencyGraph } from "./moduleDependency.type.js";
|
|
3
|
+
/**
|
|
4
|
+
* Detects circular dependencies in a module graph.
|
|
5
|
+
*
|
|
6
|
+
* Returns the dependency cycle when one exists.
|
|
7
|
+
*/
|
|
8
|
+
export declare function findModuleDependencyCycle(graph: ModuleDependencyGraph): readonly ModuleId[] | undefined;
|
|
9
|
+
/**
|
|
10
|
+
* Returns true when the graph contains a circular dependency.
|
|
11
|
+
*/
|
|
12
|
+
export declare function hasModuleDependencyCycle(graph: ModuleDependencyGraph): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Returns a topological startup order for the graph.
|
|
15
|
+
*
|
|
16
|
+
* Dependencies appear before the modules that depend on them.
|
|
17
|
+
*
|
|
18
|
+
* Example:
|
|
19
|
+
*
|
|
20
|
+
* users
|
|
21
|
+
* ↓
|
|
22
|
+
* orders
|
|
23
|
+
* ↓
|
|
24
|
+
* payments
|
|
25
|
+
*
|
|
26
|
+
* produces:
|
|
27
|
+
*
|
|
28
|
+
* users → orders → payments
|
|
29
|
+
*/
|
|
30
|
+
export declare function resolveModuleStartupOrder(graph: ModuleDependencyGraph): readonly ModuleId[];
|
|
31
|
+
/**
|
|
32
|
+
* Returns a topological shutdown order.
|
|
33
|
+
*
|
|
34
|
+
* Shutdown is the reverse of startup so dependent modules
|
|
35
|
+
* are stopped before the modules they depend on.
|
|
36
|
+
*/
|
|
37
|
+
export declare function resolveModuleShutdownOrder(graph: ModuleDependencyGraph): readonly ModuleId[];
|
|
38
|
+
//# sourceMappingURL=moduleDependency.ordering.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleDependency.ordering.d.ts","sourceRoot":"","sources":["../../../src/modules/moduleDependency/moduleDependency.ordering.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAIxE;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,qBAAqB,GAC3B,SAAS,QAAQ,EAAE,GAAG,SAAS,CAsDjC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAET;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,qBAAqB,GAC3B,SAAS,QAAQ,EAAE,CAsDrB;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,qBAAqB,GAC3B,SAAS,QAAQ,EAAE,CAErB"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { validateModuleDependencyGraph } from "./moduleDependency.graph.js";
|
|
2
|
+
/**
|
|
3
|
+
* Detects circular dependencies in a module graph.
|
|
4
|
+
*
|
|
5
|
+
* Returns the dependency cycle when one exists.
|
|
6
|
+
*/
|
|
7
|
+
export function findModuleDependencyCycle(graph) {
|
|
8
|
+
const visiting = new Set();
|
|
9
|
+
const visited = new Set();
|
|
10
|
+
const path = [];
|
|
11
|
+
const visit = (moduleId) => {
|
|
12
|
+
if (visiting.has(moduleId)) {
|
|
13
|
+
const index = path.indexOf(moduleId);
|
|
14
|
+
if (index >= 0) {
|
|
15
|
+
return [...path.slice(index), moduleId];
|
|
16
|
+
}
|
|
17
|
+
return [moduleId];
|
|
18
|
+
}
|
|
19
|
+
if (visited.has(moduleId)) {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
visiting.add(moduleId);
|
|
23
|
+
path.push(moduleId);
|
|
24
|
+
for (const dependency of graph.getDependencies(moduleId)) {
|
|
25
|
+
if (!graph.hasModule(dependency.id)) {
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
const cycle = visit(dependency.id);
|
|
29
|
+
if (cycle) {
|
|
30
|
+
return cycle;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
path.pop();
|
|
34
|
+
visiting.delete(moduleId);
|
|
35
|
+
visited.add(moduleId);
|
|
36
|
+
return undefined;
|
|
37
|
+
};
|
|
38
|
+
for (const moduleId of graph.nodes.keys()) {
|
|
39
|
+
const cycle = visit(moduleId);
|
|
40
|
+
if (cycle) {
|
|
41
|
+
return cycle;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Returns true when the graph contains a circular dependency.
|
|
48
|
+
*/
|
|
49
|
+
export function hasModuleDependencyCycle(graph) {
|
|
50
|
+
return findModuleDependencyCycle(graph) !== undefined;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Returns a topological startup order for the graph.
|
|
54
|
+
*
|
|
55
|
+
* Dependencies appear before the modules that depend on them.
|
|
56
|
+
*
|
|
57
|
+
* Example:
|
|
58
|
+
*
|
|
59
|
+
* users
|
|
60
|
+
* ↓
|
|
61
|
+
* orders
|
|
62
|
+
* ↓
|
|
63
|
+
* payments
|
|
64
|
+
*
|
|
65
|
+
* produces:
|
|
66
|
+
*
|
|
67
|
+
* users → orders → payments
|
|
68
|
+
*/
|
|
69
|
+
export function resolveModuleStartupOrder(graph) {
|
|
70
|
+
const missing = validateModuleDependencyGraph(graph);
|
|
71
|
+
if (missing.length > 0) {
|
|
72
|
+
throw new Error(`Cannot resolve module startup order. Missing required dependencies: ${missing.join(", ")}`);
|
|
73
|
+
}
|
|
74
|
+
const cycle = findModuleDependencyCycle(graph);
|
|
75
|
+
if (cycle) {
|
|
76
|
+
throw new Error(`Circular module dependency detected: ${cycle.join(" -> ")}`);
|
|
77
|
+
}
|
|
78
|
+
const temporary = new Set();
|
|
79
|
+
const permanent = new Set();
|
|
80
|
+
const order = [];
|
|
81
|
+
const visit = (moduleId) => {
|
|
82
|
+
if (permanent.has(moduleId)) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
if (temporary.has(moduleId)) {
|
|
86
|
+
throw new Error(`Circular module dependency detected involving "${moduleId}".`);
|
|
87
|
+
}
|
|
88
|
+
temporary.add(moduleId);
|
|
89
|
+
for (const dependency of graph.getDependencies(moduleId)) {
|
|
90
|
+
if (graph.hasModule(dependency.id)) {
|
|
91
|
+
visit(dependency.id);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
temporary.delete(moduleId);
|
|
95
|
+
permanent.add(moduleId);
|
|
96
|
+
order.push(moduleId);
|
|
97
|
+
};
|
|
98
|
+
for (const moduleId of graph.nodes.keys()) {
|
|
99
|
+
visit(moduleId);
|
|
100
|
+
}
|
|
101
|
+
return Object.freeze(order);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Returns a topological shutdown order.
|
|
105
|
+
*
|
|
106
|
+
* Shutdown is the reverse of startup so dependent modules
|
|
107
|
+
* are stopped before the modules they depend on.
|
|
108
|
+
*/
|
|
109
|
+
export function resolveModuleShutdownOrder(graph) {
|
|
110
|
+
return Object.freeze([...resolveModuleStartupOrder(graph)].reverse());
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=moduleDependency.ordering.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleDependency.ordering.js","sourceRoot":"","sources":["../../../src/modules/moduleDependency/moduleDependency.ordering.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { ModuleId } from "../module.js";
|
|
2
|
+
/**
|
|
3
|
+
* Describes how a module depends on another module.
|
|
4
|
+
*/
|
|
5
|
+
export interface ModuleDependency {
|
|
6
|
+
/**
|
|
7
|
+
* Identifier of the dependency.
|
|
8
|
+
*/
|
|
9
|
+
readonly id: ModuleId;
|
|
10
|
+
/**
|
|
11
|
+
* Whether the dependency is optional.
|
|
12
|
+
*
|
|
13
|
+
* Optional dependencies do not prevent a module from
|
|
14
|
+
* loading when the dependency is unavailable.
|
|
15
|
+
*/
|
|
16
|
+
readonly optional: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Optional version constraint.
|
|
19
|
+
*/
|
|
20
|
+
readonly version?: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* A normalized collection of module dependencies.
|
|
24
|
+
*/
|
|
25
|
+
export type ModuleDependencies = readonly ModuleDependency[];
|
|
26
|
+
/**
|
|
27
|
+
* Dependency graph node.
|
|
28
|
+
*
|
|
29
|
+
* Each node represents one module and the modules it depends on.
|
|
30
|
+
*/
|
|
31
|
+
export interface ModuleDependencyNode {
|
|
32
|
+
/**
|
|
33
|
+
* Module identifier.
|
|
34
|
+
*/
|
|
35
|
+
readonly id: ModuleId;
|
|
36
|
+
/**
|
|
37
|
+
* Dependencies declared by the module.
|
|
38
|
+
*/
|
|
39
|
+
readonly dependencies: ModuleDependencies;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Complete module dependency graph.
|
|
43
|
+
*/
|
|
44
|
+
export interface ModuleDependencyGraph {
|
|
45
|
+
/**
|
|
46
|
+
* All modules represented by the graph.
|
|
47
|
+
*/
|
|
48
|
+
readonly nodes: ReadonlyMap<ModuleId, ModuleDependencyNode>;
|
|
49
|
+
/**
|
|
50
|
+
* Returns the dependencies of a module.
|
|
51
|
+
*/
|
|
52
|
+
getDependencies(moduleId: ModuleId): ModuleDependencies;
|
|
53
|
+
/**
|
|
54
|
+
* Returns whether the graph contains a module.
|
|
55
|
+
*/
|
|
56
|
+
hasModule(moduleId: ModuleId): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Returns the modules that depend on the specified module.
|
|
59
|
+
*/
|
|
60
|
+
getDependents(moduleId: ModuleId): readonly ModuleId[];
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* A raw dependency declaration accepted by the framework.
|
|
64
|
+
*/
|
|
65
|
+
export type ModuleDependencyInput = ModuleId | ModuleDependency;
|
|
66
|
+
//# sourceMappingURL=moduleDependency.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleDependency.type.d.ts","sourceRoot":"","sources":["../../../src/modules/moduleDependency/moduleDependency.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IAEtB;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,SAAS,gBAAgB,EAAE,CAAC;AAE7D;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAE5D;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,kBAAkB,CAAC;IAExD;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAEvC;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,QAAQ,EAAE,CAAC;CACxD;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,QAAQ,GAAG,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleDependency.type.js","sourceRoot":"","sources":["../../../src/modules/moduleDependency/moduleDependency.type.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module Errors
|
|
3
|
+
*
|
|
4
|
+
* Error classes and utilities for the module subsystem.
|
|
5
|
+
*/
|
|
6
|
+
export { ModuleErrorCode, type ModuleErrorCode as ModuleErrorCodeType, type ModuleErrorDetails, ModuleError, } from "./moduleError.base.js";
|
|
7
|
+
export { InvalidModuleDefinitionError, ModuleNotFoundError, DuplicateModuleError, } from "./moduleError.registration.js";
|
|
8
|
+
export { MissingModuleDependencyError, CircularModuleDependencyError, ModuleVersionMismatchError, } from "./moduleError.dependency.js";
|
|
9
|
+
export { getLifecycleErrorCode, ModuleInstantiationError, ModuleOperationError, InvalidModuleInstanceError, InvalidModuleStateError, ModuleOperationInProgressError, } from "./moduleError.lifecycle.js";
|
|
10
|
+
export { isModuleError, hasModuleErrorCode, toModuleError, } from "./moduleError.helpers.js";
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/moduleError/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,eAAe,EACf,KAAK,eAAe,IAAI,mBAAmB,EAC3C,KAAK,kBAAkB,EACvB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,EAC1B,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Module Errors
|
|
3
|
+
*
|
|
4
|
+
* Error classes and utilities for the module subsystem.
|
|
5
|
+
*/
|
|
6
|
+
export { ModuleErrorCode, ModuleError, } from "./moduleError.base.js";
|
|
7
|
+
export { InvalidModuleDefinitionError, ModuleNotFoundError, DuplicateModuleError, } from "./moduleError.registration.js";
|
|
8
|
+
export { MissingModuleDependencyError, CircularModuleDependencyError, ModuleVersionMismatchError, } from "./moduleError.dependency.js";
|
|
9
|
+
export { getLifecycleErrorCode, ModuleInstantiationError, ModuleOperationError, InvalidModuleInstanceError, InvalidModuleStateError, ModuleOperationInProgressError, } from "./moduleError.lifecycle.js";
|
|
10
|
+
export { isModuleError, hasModuleErrorCode, toModuleError, } from "./moduleError.helpers.js";
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/moduleError/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,eAAe,EAGf,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,EAC1B,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,aAAa,GACd,MAAM,0BAA0B,CAAC"}
|