@dyanet/nestjs-config-aws 1.0.1 → 1.2.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/README.md +213 -1013
- package/dist/cjs/config-aws/src/config-manager.js +366 -0
- package/dist/cjs/config-aws/src/errors/index.js +77 -0
- package/dist/cjs/config-aws/src/index.js +37 -0
- package/dist/cjs/config-aws/src/interfaces/config-loader.interface.js +3 -0
- package/dist/cjs/config-aws/src/interfaces/config-manager.interface.js +3 -0
- package/dist/cjs/config-aws/src/interfaces/env-file-loader.interface.js +3 -0
- package/dist/cjs/config-aws/src/interfaces/environment-loader.interface.js +3 -0
- package/dist/cjs/config-aws/src/interfaces/s3-loader.interface.js +3 -0
- package/dist/cjs/config-aws/src/interfaces/secrets-manager-loader.interface.js +3 -0
- package/dist/cjs/config-aws/src/interfaces/ssm-parameter-store-loader.interface.js +3 -0
- package/dist/cjs/config-aws/src/loaders/env-file.loader.js +169 -0
- package/dist/cjs/config-aws/src/loaders/environment.loader.js +85 -0
- package/dist/cjs/config-aws/src/loaders/s3.loader.js +145 -0
- package/dist/cjs/config-aws/src/loaders/secrets-manager.loader.js +169 -0
- package/dist/cjs/config-aws/src/loaders/ssm-parameter-store.loader.js +199 -0
- package/dist/cjs/config-aws/src/utils/env-file-parser.util.js +98 -0
- package/dist/cjs/config-aws/src/utils/validation.util.js +116 -0
- package/dist/cjs/nestjs-config-aws/src/config.module.js +175 -0
- package/dist/cjs/nestjs-config-aws/src/index.js +61 -0
- package/dist/cjs/{integration → nestjs-config-aws/src/integration}/index.js +1 -1
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/configuration-factory.interface.js +3 -0
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/configuration-source.interface.js +3 -0
- package/dist/cjs/{integration → nestjs-config-aws/src/integration}/interfaces/index.js +1 -1
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/integration-options.interface.js +3 -0
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/integration-state.interface.js +3 -0
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/nestjs-config-compatibility.interface.js +73 -0
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/nestjs-config-integration.interface.js +3 -0
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/typed-configuration.interface.js +4 -0
- package/dist/cjs/nestjs-config-aws/src/integration/interfaces/utility-types.interface.js +52 -0
- package/dist/cjs/nestjs-config-aws/src/integration/nestjs-config-integration.module.js +124 -0
- package/dist/cjs/nestjs-config-aws/src/integration/providers/aws-configuration-loader.service.js +592 -0
- package/dist/cjs/nestjs-config-aws/src/integration/providers/configuration-factory.provider.js +385 -0
- package/dist/cjs/{integration → nestjs-config-aws/src/integration}/providers/index.js +1 -1
- package/dist/cjs/nestjs-config-aws/src/integration/services/async-config-helper.service.js +366 -0
- package/dist/cjs/nestjs-config-aws/src/integration/services/error-handler.service.js +267 -0
- package/dist/cjs/nestjs-config-aws/src/integration/services/factory-registration.service.js +517 -0
- package/dist/cjs/{integration → nestjs-config-aws/src/integration}/services/index.js +1 -1
- package/dist/cjs/nestjs-config-aws/src/integration/services/integration-state.service.js +81 -0
- package/dist/cjs/nestjs-config-aws/src/integration/services/namespace-handler.service.js +465 -0
- package/dist/cjs/nestjs-config-aws/src/integration/services/nestjs-config-integration.service.js +318 -0
- package/dist/cjs/nestjs-config-aws/src/integration/services/precedence-handler.service.js +292 -0
- package/dist/cjs/nestjs-config-aws/src/integration/services/validation-integration.service.js +595 -0
- package/dist/cjs/nestjs-config-aws/src/integration/utils/config-integration.util.js +283 -0
- package/dist/cjs/{integration → nestjs-config-aws/src/integration}/utils/index.js +1 -1
- package/dist/cjs/nestjs-config-aws/src/interfaces/config-service.interface.js +11 -0
- package/dist/cjs/nestjs-config-aws/src/interfaces/default-schema.interface.js +63 -0
- package/dist/cjs/nestjs-config-aws/src/interfaces/index.js +30 -0
- package/dist/cjs/nestjs-config-aws/src/interfaces/module-options.interface.js +3 -0
- package/dist/cjs/nestjs-config-aws/src/services/config.service.js +142 -0
- package/dist/esm/config-aws/src/config-manager.js +362 -0
- package/dist/esm/config-aws/src/errors/index.js +69 -0
- package/dist/esm/config-aws/src/index.js +21 -0
- package/dist/esm/config-aws/src/interfaces/config-loader.interface.js +2 -0
- package/dist/esm/config-aws/src/interfaces/config-manager.interface.js +2 -0
- package/dist/esm/config-aws/src/interfaces/env-file-loader.interface.js +2 -0
- package/dist/esm/config-aws/src/interfaces/environment-loader.interface.js +2 -0
- package/dist/esm/config-aws/src/interfaces/s3-loader.interface.js +2 -0
- package/dist/esm/config-aws/src/interfaces/secrets-manager-loader.interface.js +2 -0
- package/dist/esm/config-aws/src/interfaces/ssm-parameter-store-loader.interface.js +2 -0
- package/dist/esm/config-aws/src/loaders/env-file.loader.js +132 -0
- package/dist/esm/config-aws/src/loaders/environment.loader.js +81 -0
- package/dist/esm/config-aws/src/loaders/s3.loader.js +141 -0
- package/dist/esm/config-aws/src/loaders/secrets-manager.loader.js +165 -0
- package/dist/esm/config-aws/src/loaders/ssm-parameter-store.loader.js +195 -0
- package/dist/esm/config-aws/src/utils/env-file-parser.util.js +94 -0
- package/dist/esm/config-aws/src/utils/validation.util.js +112 -0
- package/dist/esm/nestjs-config-aws/src/config.module.js +172 -0
- package/dist/esm/nestjs-config-aws/src/index.js +23 -0
- package/dist/esm/nestjs-config-aws/src/integration/index.js +7 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/configuration-factory.interface.js +2 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/configuration-source.interface.js +2 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/index.js +10 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/integration-options.interface.js +2 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/integration-state.interface.js +2 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/nestjs-config-compatibility.interface.js +64 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/nestjs-config-integration.interface.js +2 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/typed-configuration.interface.js +3 -0
- package/dist/esm/nestjs-config-aws/src/integration/interfaces/utility-types.interface.js +44 -0
- package/dist/esm/nestjs-config-aws/src/integration/nestjs-config-integration.module.js +121 -0
- package/dist/esm/nestjs-config-aws/src/integration/providers/aws-configuration-loader.service.js +589 -0
- package/dist/esm/nestjs-config-aws/src/integration/providers/configuration-factory.provider.js +382 -0
- package/dist/esm/nestjs-config-aws/src/integration/providers/index.js +4 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/async-config-helper.service.js +363 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/error-handler.service.js +264 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/factory-registration.service.js +514 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/index.js +10 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/integration-state.service.js +78 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/namespace-handler.service.js +462 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/nestjs-config-integration.service.js +315 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/precedence-handler.service.js +289 -0
- package/dist/esm/nestjs-config-aws/src/integration/services/validation-integration.service.js +589 -0
- package/dist/esm/nestjs-config-aws/src/integration/utils/config-integration.util.js +240 -0
- package/dist/esm/nestjs-config-aws/src/integration/utils/index.js +3 -0
- package/dist/esm/nestjs-config-aws/src/interfaces/config-service.interface.js +7 -0
- package/dist/esm/nestjs-config-aws/src/interfaces/default-schema.interface.js +59 -0
- package/dist/esm/nestjs-config-aws/src/interfaces/index.js +8 -0
- package/dist/esm/nestjs-config-aws/src/interfaces/module-options.interface.js +2 -0
- package/dist/esm/nestjs-config-aws/src/services/config.service.js +139 -0
- package/dist/types/config-aws/src/config-manager.d.ts +119 -0
- package/dist/types/config-aws/src/config-manager.d.ts.map +1 -0
- package/dist/types/config-aws/src/errors/index.d.ts +43 -0
- package/dist/types/config-aws/src/errors/index.d.ts.map +1 -0
- package/dist/types/config-aws/src/index.d.ts +24 -0
- package/dist/types/config-aws/src/index.d.ts.map +1 -0
- package/dist/types/config-aws/src/interfaces/config-loader.interface.d.ts +33 -0
- package/dist/types/config-aws/src/interfaces/config-loader.interface.d.ts.map +1 -0
- package/dist/types/config-aws/src/interfaces/config-manager.interface.d.ts +86 -0
- package/dist/types/config-aws/src/interfaces/config-manager.interface.d.ts.map +1 -0
- package/dist/types/config-aws/src/interfaces/env-file-loader.interface.d.ts +12 -0
- package/dist/types/config-aws/src/interfaces/env-file-loader.interface.d.ts.map +1 -0
- package/dist/types/config-aws/src/interfaces/environment-loader.interface.d.ts +10 -0
- package/dist/types/config-aws/src/interfaces/environment-loader.interface.d.ts.map +1 -0
- package/dist/types/config-aws/src/interfaces/s3-loader.interface.d.ts +14 -0
- package/dist/types/config-aws/src/interfaces/s3-loader.interface.d.ts.map +1 -0
- package/dist/types/config-aws/src/interfaces/secrets-manager-loader.interface.d.ts +12 -0
- package/dist/types/config-aws/src/interfaces/secrets-manager-loader.interface.d.ts.map +1 -0
- package/dist/types/config-aws/src/interfaces/ssm-parameter-store-loader.interface.d.ts +14 -0
- package/dist/types/config-aws/src/interfaces/ssm-parameter-store-loader.interface.d.ts.map +1 -0
- package/dist/types/config-aws/src/loaders/env-file.loader.d.ts +69 -0
- package/dist/types/config-aws/src/loaders/env-file.loader.d.ts.map +1 -0
- package/dist/types/config-aws/src/loaders/environment.loader.d.ts +46 -0
- package/dist/types/config-aws/src/loaders/environment.loader.d.ts.map +1 -0
- package/dist/types/config-aws/src/loaders/s3.loader.d.ts +62 -0
- package/dist/types/config-aws/src/loaders/s3.loader.d.ts.map +1 -0
- package/dist/types/config-aws/src/loaders/secrets-manager.loader.d.ts +68 -0
- package/dist/types/config-aws/src/loaders/secrets-manager.loader.d.ts.map +1 -0
- package/dist/types/config-aws/src/loaders/ssm-parameter-store.loader.d.ts +78 -0
- package/dist/types/config-aws/src/loaders/ssm-parameter-store.loader.d.ts.map +1 -0
- package/dist/types/config-aws/src/utils/env-file-parser.util.d.ts +45 -0
- package/dist/types/config-aws/src/utils/env-file-parser.util.d.ts.map +1 -0
- package/dist/types/{utils → config-aws/src/utils}/validation.util.d.ts +10 -10
- package/dist/types/config-aws/src/utils/validation.util.d.ts.map +1 -0
- package/dist/types/{config.module.d.ts → nestjs-config-aws/src/config.module.d.ts} +1 -0
- package/dist/types/nestjs-config-aws/src/config.module.d.ts.map +1 -0
- package/dist/types/{index.d.ts → nestjs-config-aws/src/index.d.ts} +2 -4
- package/dist/types/nestjs-config-aws/src/index.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/index.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/configuration-factory.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/configuration-source.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/index.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/integration-options.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/integration-state.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/nestjs-config-compatibility.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/nestjs-config-integration.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/typed-configuration.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/interfaces/utility-types.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/nestjs-config-integration.module.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/providers/aws-configuration-loader.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/providers/configuration-factory.provider.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/providers/index.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/async-config-helper.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/error-handler.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/factory-registration.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/index.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/integration-state.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/namespace-handler.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/nestjs-config-integration.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/precedence-handler.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/services/validation-integration.service.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/utils/config-integration.util.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/integration/utils/index.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/interfaces/config-service.interface.d.ts.map +1 -0
- package/dist/types/{interfaces → nestjs-config-aws/src/interfaces}/default-schema.interface.d.ts +28 -28
- package/dist/types/nestjs-config-aws/src/interfaces/default-schema.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/interfaces/index.d.ts +5 -0
- package/dist/types/nestjs-config-aws/src/interfaces/index.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/interfaces/module-options.interface.d.ts.map +1 -0
- package/dist/types/nestjs-config-aws/src/services/config.service.d.ts +88 -0
- package/dist/types/nestjs-config-aws/src/services/config.service.d.ts.map +1 -0
- package/package.json +20 -27
- package/LICENSE +0 -21
- package/dist/cjs/config.module.js +0 -178
- package/dist/cjs/config.module.js.map +0 -1
- package/dist/cjs/index.js +0 -47
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/integration/index.js.map +0 -1
- package/dist/cjs/integration/interfaces/configuration-factory.interface.js +0 -3
- package/dist/cjs/integration/interfaces/configuration-factory.interface.js.map +0 -1
- package/dist/cjs/integration/interfaces/configuration-source.interface.js +0 -3
- package/dist/cjs/integration/interfaces/configuration-source.interface.js.map +0 -1
- package/dist/cjs/integration/interfaces/index.js.map +0 -1
- package/dist/cjs/integration/interfaces/integration-options.interface.js +0 -3
- package/dist/cjs/integration/interfaces/integration-options.interface.js.map +0 -1
- package/dist/cjs/integration/interfaces/integration-state.interface.js +0 -3
- package/dist/cjs/integration/interfaces/integration-state.interface.js.map +0 -1
- package/dist/cjs/integration/interfaces/nestjs-config-compatibility.interface.js +0 -73
- package/dist/cjs/integration/interfaces/nestjs-config-compatibility.interface.js.map +0 -1
- package/dist/cjs/integration/interfaces/nestjs-config-integration.interface.js +0 -3
- package/dist/cjs/integration/interfaces/nestjs-config-integration.interface.js.map +0 -1
- package/dist/cjs/integration/interfaces/typed-configuration.interface.js +0 -4
- package/dist/cjs/integration/interfaces/typed-configuration.interface.js.map +0 -1
- package/dist/cjs/integration/interfaces/utility-types.interface.js +0 -52
- package/dist/cjs/integration/interfaces/utility-types.interface.js.map +0 -1
- package/dist/cjs/integration/nestjs-config-integration.module.js +0 -124
- package/dist/cjs/integration/nestjs-config-integration.module.js.map +0 -1
- package/dist/cjs/integration/providers/aws-configuration-loader.service.js +0 -591
- package/dist/cjs/integration/providers/aws-configuration-loader.service.js.map +0 -1
- package/dist/cjs/integration/providers/configuration-factory.provider.js +0 -383
- package/dist/cjs/integration/providers/configuration-factory.provider.js.map +0 -1
- package/dist/cjs/integration/providers/index.js.map +0 -1
- package/dist/cjs/integration/services/async-config-helper.service.js +0 -356
- package/dist/cjs/integration/services/async-config-helper.service.js.map +0 -1
- package/dist/cjs/integration/services/error-handler.service.js +0 -265
- package/dist/cjs/integration/services/error-handler.service.js.map +0 -1
- package/dist/cjs/integration/services/factory-registration.service.js +0 -512
- package/dist/cjs/integration/services/factory-registration.service.js.map +0 -1
- package/dist/cjs/integration/services/index.js.map +0 -1
- package/dist/cjs/integration/services/integration-state.service.js +0 -83
- package/dist/cjs/integration/services/integration-state.service.js.map +0 -1
- package/dist/cjs/integration/services/namespace-handler.service.js +0 -467
- package/dist/cjs/integration/services/namespace-handler.service.js.map +0 -1
- package/dist/cjs/integration/services/nestjs-config-integration.service.js +0 -316
- package/dist/cjs/integration/services/nestjs-config-integration.service.js.map +0 -1
- package/dist/cjs/integration/services/precedence-handler.service.js +0 -294
- package/dist/cjs/integration/services/precedence-handler.service.js.map +0 -1
- package/dist/cjs/integration/services/validation-integration.service.js +0 -591
- package/dist/cjs/integration/services/validation-integration.service.js.map +0 -1
- package/dist/cjs/integration/utils/config-integration.util.js +0 -283
- package/dist/cjs/integration/utils/config-integration.util.js.map +0 -1
- package/dist/cjs/integration/utils/index.js.map +0 -1
- package/dist/cjs/interfaces/config-loader.interface.js +0 -3
- package/dist/cjs/interfaces/config-loader.interface.js.map +0 -1
- package/dist/cjs/interfaces/config-service.interface.js +0 -11
- package/dist/cjs/interfaces/config-service.interface.js.map +0 -1
- package/dist/cjs/interfaces/default-schema.interface.js +0 -63
- package/dist/cjs/interfaces/default-schema.interface.js.map +0 -1
- package/dist/cjs/interfaces/errors.interface.js +0 -77
- package/dist/cjs/interfaces/errors.interface.js.map +0 -1
- package/dist/cjs/interfaces/index.js +0 -25
- package/dist/cjs/interfaces/index.js.map +0 -1
- package/dist/cjs/interfaces/module-options.interface.js +0 -3
- package/dist/cjs/interfaces/module-options.interface.js.map +0 -1
- package/dist/cjs/loaders/environment.loader.js +0 -59
- package/dist/cjs/loaders/environment.loader.js.map +0 -1
- package/dist/cjs/loaders/secrets-manager.loader.js +0 -122
- package/dist/cjs/loaders/secrets-manager.loader.js.map +0 -1
- package/dist/cjs/loaders/ssm-parameter-store.loader.js +0 -146
- package/dist/cjs/loaders/ssm-parameter-store.loader.js.map +0 -1
- package/dist/cjs/services/config.service.js +0 -297
- package/dist/cjs/services/config.service.js.map +0 -1
- package/dist/cjs/utils/validation.util.js +0 -114
- package/dist/cjs/utils/validation.util.js.map +0 -1
- package/dist/esm/config.module.js +0 -175
- package/dist/esm/config.module.js.map +0 -1
- package/dist/esm/index.js +0 -18
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/integration/index.js +0 -7
- package/dist/esm/integration/index.js.map +0 -1
- package/dist/esm/integration/interfaces/configuration-factory.interface.js +0 -2
- package/dist/esm/integration/interfaces/configuration-factory.interface.js.map +0 -1
- package/dist/esm/integration/interfaces/configuration-source.interface.js +0 -2
- package/dist/esm/integration/interfaces/configuration-source.interface.js.map +0 -1
- package/dist/esm/integration/interfaces/index.js +0 -10
- package/dist/esm/integration/interfaces/index.js.map +0 -1
- package/dist/esm/integration/interfaces/integration-options.interface.js +0 -2
- package/dist/esm/integration/interfaces/integration-options.interface.js.map +0 -1
- package/dist/esm/integration/interfaces/integration-state.interface.js +0 -2
- package/dist/esm/integration/interfaces/integration-state.interface.js.map +0 -1
- package/dist/esm/integration/interfaces/nestjs-config-compatibility.interface.js +0 -64
- package/dist/esm/integration/interfaces/nestjs-config-compatibility.interface.js.map +0 -1
- package/dist/esm/integration/interfaces/nestjs-config-integration.interface.js +0 -2
- package/dist/esm/integration/interfaces/nestjs-config-integration.interface.js.map +0 -1
- package/dist/esm/integration/interfaces/typed-configuration.interface.js +0 -3
- package/dist/esm/integration/interfaces/typed-configuration.interface.js.map +0 -1
- package/dist/esm/integration/interfaces/utility-types.interface.js +0 -44
- package/dist/esm/integration/interfaces/utility-types.interface.js.map +0 -1
- package/dist/esm/integration/nestjs-config-integration.module.js +0 -121
- package/dist/esm/integration/nestjs-config-integration.module.js.map +0 -1
- package/dist/esm/integration/providers/aws-configuration-loader.service.js +0 -588
- package/dist/esm/integration/providers/aws-configuration-loader.service.js.map +0 -1
- package/dist/esm/integration/providers/configuration-factory.provider.js +0 -380
- package/dist/esm/integration/providers/configuration-factory.provider.js.map +0 -1
- package/dist/esm/integration/providers/index.js +0 -4
- package/dist/esm/integration/providers/index.js.map +0 -1
- package/dist/esm/integration/services/async-config-helper.service.js +0 -353
- package/dist/esm/integration/services/async-config-helper.service.js.map +0 -1
- package/dist/esm/integration/services/error-handler.service.js +0 -262
- package/dist/esm/integration/services/error-handler.service.js.map +0 -1
- package/dist/esm/integration/services/factory-registration.service.js +0 -509
- package/dist/esm/integration/services/factory-registration.service.js.map +0 -1
- package/dist/esm/integration/services/index.js +0 -10
- package/dist/esm/integration/services/index.js.map +0 -1
- package/dist/esm/integration/services/integration-state.service.js +0 -80
- package/dist/esm/integration/services/integration-state.service.js.map +0 -1
- package/dist/esm/integration/services/namespace-handler.service.js +0 -464
- package/dist/esm/integration/services/namespace-handler.service.js.map +0 -1
- package/dist/esm/integration/services/nestjs-config-integration.service.js +0 -313
- package/dist/esm/integration/services/nestjs-config-integration.service.js.map +0 -1
- package/dist/esm/integration/services/precedence-handler.service.js +0 -291
- package/dist/esm/integration/services/precedence-handler.service.js.map +0 -1
- package/dist/esm/integration/services/validation-integration.service.js +0 -585
- package/dist/esm/integration/services/validation-integration.service.js.map +0 -1
- package/dist/esm/integration/utils/config-integration.util.js +0 -240
- package/dist/esm/integration/utils/config-integration.util.js.map +0 -1
- package/dist/esm/integration/utils/index.js +0 -3
- package/dist/esm/integration/utils/index.js.map +0 -1
- package/dist/esm/interfaces/config-loader.interface.js +0 -2
- package/dist/esm/interfaces/config-loader.interface.js.map +0 -1
- package/dist/esm/interfaces/config-service.interface.js +0 -7
- package/dist/esm/interfaces/config-service.interface.js.map +0 -1
- package/dist/esm/interfaces/default-schema.interface.js +0 -59
- package/dist/esm/interfaces/default-schema.interface.js.map +0 -1
- package/dist/esm/interfaces/errors.interface.js +0 -69
- package/dist/esm/interfaces/errors.interface.js.map +0 -1
- package/dist/esm/interfaces/index.js +0 -9
- package/dist/esm/interfaces/index.js.map +0 -1
- package/dist/esm/interfaces/module-options.interface.js +0 -2
- package/dist/esm/interfaces/module-options.interface.js.map +0 -1
- package/dist/esm/loaders/environment.loader.js +0 -55
- package/dist/esm/loaders/environment.loader.js.map +0 -1
- package/dist/esm/loaders/secrets-manager.loader.js +0 -118
- package/dist/esm/loaders/secrets-manager.loader.js.map +0 -1
- package/dist/esm/loaders/ssm-parameter-store.loader.js +0 -142
- package/dist/esm/loaders/ssm-parameter-store.loader.js.map +0 -1
- package/dist/esm/services/config.service.js +0 -261
- package/dist/esm/services/config.service.js.map +0 -1
- package/dist/esm/utils/validation.util.js +0 -110
- package/dist/esm/utils/validation.util.js.map +0 -1
- package/dist/types/config.module.d.ts.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/integration/index.d.ts.map +0 -1
- package/dist/types/integration/interfaces/configuration-factory.interface.d.ts.map +0 -1
- package/dist/types/integration/interfaces/configuration-source.interface.d.ts.map +0 -1
- package/dist/types/integration/interfaces/index.d.ts.map +0 -1
- package/dist/types/integration/interfaces/integration-options.interface.d.ts.map +0 -1
- package/dist/types/integration/interfaces/integration-state.interface.d.ts.map +0 -1
- package/dist/types/integration/interfaces/nestjs-config-compatibility.interface.d.ts.map +0 -1
- package/dist/types/integration/interfaces/nestjs-config-integration.interface.d.ts.map +0 -1
- package/dist/types/integration/interfaces/typed-configuration.interface.d.ts.map +0 -1
- package/dist/types/integration/interfaces/utility-types.interface.d.ts.map +0 -1
- package/dist/types/integration/nestjs-config-integration.module.d.ts.map +0 -1
- package/dist/types/integration/providers/aws-configuration-loader.service.d.ts.map +0 -1
- package/dist/types/integration/providers/configuration-factory.provider.d.ts.map +0 -1
- package/dist/types/integration/providers/index.d.ts.map +0 -1
- package/dist/types/integration/services/async-config-helper.service.d.ts.map +0 -1
- package/dist/types/integration/services/error-handler.service.d.ts.map +0 -1
- package/dist/types/integration/services/factory-registration.service.d.ts.map +0 -1
- package/dist/types/integration/services/index.d.ts.map +0 -1
- package/dist/types/integration/services/integration-state.service.d.ts.map +0 -1
- package/dist/types/integration/services/namespace-handler.service.d.ts.map +0 -1
- package/dist/types/integration/services/nestjs-config-integration.service.d.ts.map +0 -1
- package/dist/types/integration/services/precedence-handler.service.d.ts.map +0 -1
- package/dist/types/integration/services/validation-integration.service.d.ts.map +0 -1
- package/dist/types/integration/utils/config-integration.util.d.ts.map +0 -1
- package/dist/types/integration/utils/index.d.ts.map +0 -1
- package/dist/types/interfaces/config-loader.interface.d.ts +0 -22
- package/dist/types/interfaces/config-loader.interface.d.ts.map +0 -1
- package/dist/types/interfaces/config-service.interface.d.ts.map +0 -1
- package/dist/types/interfaces/default-schema.interface.d.ts.map +0 -1
- package/dist/types/interfaces/errors.interface.d.ts +0 -38
- package/dist/types/interfaces/errors.interface.d.ts.map +0 -1
- package/dist/types/interfaces/index.d.ts +0 -6
- package/dist/types/interfaces/index.d.ts.map +0 -1
- package/dist/types/interfaces/module-options.interface.d.ts.map +0 -1
- package/dist/types/loaders/environment.loader.d.ts +0 -26
- package/dist/types/loaders/environment.loader.d.ts.map +0 -1
- package/dist/types/loaders/secrets-manager.loader.d.ts +0 -52
- package/dist/types/loaders/secrets-manager.loader.d.ts.map +0 -1
- package/dist/types/loaders/ssm-parameter-store.loader.d.ts +0 -68
- package/dist/types/loaders/ssm-parameter-store.loader.d.ts.map +0 -1
- package/dist/types/services/config.service.d.ts +0 -94
- package/dist/types/services/config.service.d.ts.map +0 -1
- package/dist/types/utils/validation.util.d.ts.map +0 -1
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/index.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/configuration-factory.interface.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/configuration-source.interface.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/index.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/integration-options.interface.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/integration-state.interface.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/nestjs-config-compatibility.interface.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/nestjs-config-integration.interface.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/typed-configuration.interface.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/interfaces/utility-types.interface.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/nestjs-config-integration.module.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/providers/aws-configuration-loader.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/providers/configuration-factory.provider.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/providers/index.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/async-config-helper.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/error-handler.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/factory-registration.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/index.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/integration-state.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/namespace-handler.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/nestjs-config-integration.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/precedence-handler.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/services/validation-integration.service.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/utils/config-integration.util.d.ts +0 -0
- /package/dist/types/{integration → nestjs-config-aws/src/integration}/utils/index.d.ts +0 -0
- /package/dist/types/{interfaces → nestjs-config-aws/src/interfaces}/config-service.interface.d.ts +0 -0
- /package/dist/types/{interfaces → nestjs-config-aws/src/interfaces}/module-options.interface.d.ts +0 -0
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConfigValidationUtil = void 0;
|
|
4
|
-
const errors_interface_1 = require("../interfaces/errors.interface");
|
|
5
|
-
/**
|
|
6
|
-
* Framework-agnostic validation utility for configuration values
|
|
7
|
-
* Adapted from ZodValidationPipe for standalone use
|
|
8
|
-
*/
|
|
9
|
-
class ConfigValidationUtil {
|
|
10
|
-
/**
|
|
11
|
-
* Validates a value against a Zod schema
|
|
12
|
-
* @param schema The Zod schema to validate against
|
|
13
|
-
* @param value The value to validate
|
|
14
|
-
* @param context Optional context for error messages
|
|
15
|
-
* @returns The validated and transformed value
|
|
16
|
-
* @throws ValidationError if validation fails
|
|
17
|
-
*/
|
|
18
|
-
static validate(schema, value, context) {
|
|
19
|
-
const result = schema.safeParse(value);
|
|
20
|
-
if (result.success) {
|
|
21
|
-
return result.data;
|
|
22
|
-
}
|
|
23
|
-
const errors = this.formatValidationErrors(result.error);
|
|
24
|
-
const contextMessage = context ? `Configuration validation failed for ${context}` : 'Configuration validation failed';
|
|
25
|
-
throw new errors_interface_1.ValidationError(contextMessage, errors);
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Safely validates a value against a Zod schema without throwing
|
|
29
|
-
* @param schema The Zod schema to validate against
|
|
30
|
-
* @param value The value to validate
|
|
31
|
-
* @returns Object with success flag and either data or error
|
|
32
|
-
*/
|
|
33
|
-
static safeValidate(schema, value) {
|
|
34
|
-
const result = schema.safeParse(value);
|
|
35
|
-
if (result.success) {
|
|
36
|
-
return { success: true, data: result.data };
|
|
37
|
-
}
|
|
38
|
-
const errors = this.formatValidationErrors(result.error);
|
|
39
|
-
const validationError = new errors_interface_1.ValidationError('Configuration validation failed', errors);
|
|
40
|
-
return { success: false, error: validationError };
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Formats Zod validation errors into a structured format
|
|
44
|
-
* @param error The ZodError to format
|
|
45
|
-
* @returns Formatted error object or string
|
|
46
|
-
*/
|
|
47
|
-
static formatValidationErrors(error) {
|
|
48
|
-
// If there's only one error at the root level, return just the message
|
|
49
|
-
if (error.issues.length === 1) {
|
|
50
|
-
const issue = error.issues[0];
|
|
51
|
-
if (issue && Array.isArray(issue.path) && issue.path.length === 0) {
|
|
52
|
-
return issue.message;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
// For multiple errors or nested paths, create a structured object
|
|
56
|
-
return error.issues.reduce((errors, issue) => {
|
|
57
|
-
const path = issue.path.join('.');
|
|
58
|
-
const key = path || 'root';
|
|
59
|
-
if (!errors[key]) {
|
|
60
|
-
errors[key] = [];
|
|
61
|
-
}
|
|
62
|
-
errors[key].push({
|
|
63
|
-
message: issue.message,
|
|
64
|
-
code: issue.code,
|
|
65
|
-
path: issue.path,
|
|
66
|
-
});
|
|
67
|
-
return errors;
|
|
68
|
-
}, {});
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Creates a detailed error message for configuration validation failures
|
|
72
|
-
* @param error The ZodError to create a message for
|
|
73
|
-
* @param context Optional context for the error
|
|
74
|
-
* @returns Detailed error message string
|
|
75
|
-
*/
|
|
76
|
-
static createDetailedErrorMessage(error, context) {
|
|
77
|
-
const contextPrefix = context ? `${context}: ` : '';
|
|
78
|
-
if (error.issues.length === 1) {
|
|
79
|
-
const issue = error.issues[0];
|
|
80
|
-
if (issue) {
|
|
81
|
-
const pathStr = issue.path.length > 0 ? ` at '${issue.path.join('.')}'` : '';
|
|
82
|
-
return `${contextPrefix}${issue.message}${pathStr}`;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
const errorMessages = error.issues.map(issue => {
|
|
86
|
-
const pathStr = issue.path.length > 0 ? ` at '${issue.path.join('.')}'` : '';
|
|
87
|
-
return ` - ${issue.message}${pathStr}`;
|
|
88
|
-
});
|
|
89
|
-
return `${contextPrefix}Multiple validation errors:\n${errorMessages.join('\n')}`;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Validates configuration with enhanced error context
|
|
93
|
-
* @param schema The Zod schema to validate against
|
|
94
|
-
* @param value The configuration object to validate
|
|
95
|
-
* @param source The source of the configuration (e.g., 'environment', 'secrets-manager')
|
|
96
|
-
* @returns The validated configuration
|
|
97
|
-
* @throws ValidationError with enhanced context
|
|
98
|
-
*/
|
|
99
|
-
static validateConfiguration(schema, value, source) {
|
|
100
|
-
try {
|
|
101
|
-
return this.validate(schema, value, `${source} configuration`);
|
|
102
|
-
}
|
|
103
|
-
catch (error) {
|
|
104
|
-
if (error instanceof errors_interface_1.ValidationError) {
|
|
105
|
-
// Enhance the error with source information
|
|
106
|
-
const enhancedMessage = `Configuration validation failed for source '${source}': ${error.message}`;
|
|
107
|
-
throw new errors_interface_1.ValidationError(enhancedMessage, error.validationErrors);
|
|
108
|
-
}
|
|
109
|
-
throw error;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
exports.ConfigValidationUtil = ConfigValidationUtil;
|
|
114
|
-
//# sourceMappingURL=validation.util.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validation.util.js","sourceRoot":"","sources":["../../../src/utils/validation.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var ConfigModule_1;
|
|
8
|
-
import { Global, Module } from '@nestjs/common';
|
|
9
|
-
import { ConfigService } from './interfaces/config-service.interface';
|
|
10
|
-
import { defaultConfigSchema } from './interfaces/default-schema.interface';
|
|
11
|
-
import { ConfigServiceImpl } from './services/config.service';
|
|
12
|
-
import { EnvironmentLoader } from './loaders/environment.loader';
|
|
13
|
-
import { SecretsManagerLoader } from './loaders/secrets-manager.loader';
|
|
14
|
-
import { SSMParameterStoreLoader } from './loaders/ssm-parameter-store.loader';
|
|
15
|
-
/**
|
|
16
|
-
* Token for injecting module options
|
|
17
|
-
*/
|
|
18
|
-
export const NEST_CONFIG_AWS_OPTIONS = 'NEST_CONFIG_AWS_OPTIONS';
|
|
19
|
-
/**
|
|
20
|
-
* NestJS module for AWS-integrated configuration management.
|
|
21
|
-
* Provides global configuration service with support for environment variables,
|
|
22
|
-
* AWS Secrets Manager, and AWS Systems Manager Parameter Store.
|
|
23
|
-
*/
|
|
24
|
-
let ConfigModule = ConfigModule_1 = class ConfigModule {
|
|
25
|
-
/**
|
|
26
|
-
* Create a synchronous configuration module with provided options.
|
|
27
|
-
*
|
|
28
|
-
* @param options - Configuration options for the module
|
|
29
|
-
* @returns Dynamic module configuration
|
|
30
|
-
*/
|
|
31
|
-
static forRoot(options = {}) {
|
|
32
|
-
const configServiceProvider = this.createConfigServiceProvider(options);
|
|
33
|
-
return {
|
|
34
|
-
module: ConfigModule_1,
|
|
35
|
-
providers: [
|
|
36
|
-
{
|
|
37
|
-
provide: NEST_CONFIG_AWS_OPTIONS,
|
|
38
|
-
useValue: options,
|
|
39
|
-
},
|
|
40
|
-
configServiceProvider,
|
|
41
|
-
],
|
|
42
|
-
exports: [ConfigService],
|
|
43
|
-
global: true,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Create an asynchronous configuration module with factory-based options.
|
|
48
|
-
* Useful when configuration options depend on other services or async operations.
|
|
49
|
-
*
|
|
50
|
-
* @param options - Async configuration options with factory function
|
|
51
|
-
* @returns Dynamic module configuration
|
|
52
|
-
*/
|
|
53
|
-
static forRootAsync(options) {
|
|
54
|
-
const asyncProviders = this.createAsyncProviders(options);
|
|
55
|
-
return {
|
|
56
|
-
module: ConfigModule_1,
|
|
57
|
-
imports: options.imports || [],
|
|
58
|
-
providers: [
|
|
59
|
-
...asyncProviders,
|
|
60
|
-
this.createAsyncConfigServiceProvider(),
|
|
61
|
-
],
|
|
62
|
-
exports: [ConfigService],
|
|
63
|
-
global: true,
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Create the ConfigService provider for synchronous module registration.
|
|
68
|
-
*/
|
|
69
|
-
static createConfigServiceProvider(options) {
|
|
70
|
-
return {
|
|
71
|
-
provide: ConfigService,
|
|
72
|
-
useFactory: async () => {
|
|
73
|
-
// Create loaders based on configuration
|
|
74
|
-
const loaders = this.createLoaders(options);
|
|
75
|
-
// Create ConfigService options
|
|
76
|
-
const serviceOptions = {
|
|
77
|
-
schema: options.schema || defaultConfigSchema,
|
|
78
|
-
loaders,
|
|
79
|
-
envPrefix: options.envPrefix,
|
|
80
|
-
validateOnLoad: !options.ignoreValidationErrors,
|
|
81
|
-
enableLogging: true,
|
|
82
|
-
};
|
|
83
|
-
// Create and initialize the service
|
|
84
|
-
const configService = new ConfigServiceImpl(serviceOptions);
|
|
85
|
-
// Initialize configuration loading if not in sync mode
|
|
86
|
-
if (!options.loadSync) {
|
|
87
|
-
await configService.initialize();
|
|
88
|
-
}
|
|
89
|
-
return configService;
|
|
90
|
-
},
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Create providers for asynchronous module registration.
|
|
95
|
-
*/
|
|
96
|
-
static createAsyncProviders(options) {
|
|
97
|
-
return [
|
|
98
|
-
{
|
|
99
|
-
provide: NEST_CONFIG_AWS_OPTIONS,
|
|
100
|
-
useFactory: options.useFactory,
|
|
101
|
-
inject: options.inject || [],
|
|
102
|
-
},
|
|
103
|
-
];
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Create the ConfigService provider for asynchronous module registration.
|
|
107
|
-
*/
|
|
108
|
-
static createAsyncConfigServiceProvider() {
|
|
109
|
-
return {
|
|
110
|
-
provide: ConfigService,
|
|
111
|
-
useFactory: async (options) => {
|
|
112
|
-
// Create loaders based on configuration
|
|
113
|
-
const loaders = this.createLoaders(options);
|
|
114
|
-
// Create ConfigService options
|
|
115
|
-
const serviceOptions = {
|
|
116
|
-
schema: options.schema || defaultConfigSchema,
|
|
117
|
-
loaders,
|
|
118
|
-
envPrefix: options.envPrefix,
|
|
119
|
-
validateOnLoad: !options.ignoreValidationErrors,
|
|
120
|
-
enableLogging: true,
|
|
121
|
-
};
|
|
122
|
-
// Create and initialize the service
|
|
123
|
-
const configService = new ConfigServiceImpl(serviceOptions);
|
|
124
|
-
// Initialize configuration loading if not in sync mode
|
|
125
|
-
if (!options.loadSync) {
|
|
126
|
-
await configService.initialize();
|
|
127
|
-
}
|
|
128
|
-
return configService;
|
|
129
|
-
},
|
|
130
|
-
inject: [NEST_CONFIG_AWS_OPTIONS],
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Create configuration loaders based on module options.
|
|
135
|
-
*/
|
|
136
|
-
static createLoaders(options) {
|
|
137
|
-
const loaders = [];
|
|
138
|
-
// Always add environment loader first (lowest precedence)
|
|
139
|
-
loaders.push(new EnvironmentLoader(options.envPrefix));
|
|
140
|
-
// Add Secrets Manager loader if enabled
|
|
141
|
-
if (options.secretsManagerConfig?.enabled !== false) {
|
|
142
|
-
const secretsConfig = {
|
|
143
|
-
region: options.secretsManagerConfig?.region,
|
|
144
|
-
// Map paths to environment mapping if provided
|
|
145
|
-
environmentMapping: options.secretsManagerConfig?.paths ? {
|
|
146
|
-
development: options.secretsManagerConfig.paths.development || 'dev',
|
|
147
|
-
test: options.secretsManagerConfig.paths.test || 'test',
|
|
148
|
-
production: options.secretsManagerConfig.paths.production || 'production',
|
|
149
|
-
} : undefined,
|
|
150
|
-
};
|
|
151
|
-
loaders.push(new SecretsManagerLoader(secretsConfig));
|
|
152
|
-
}
|
|
153
|
-
// Add SSM Parameter Store loader if enabled
|
|
154
|
-
if (options.ssmConfig?.enabled !== false) {
|
|
155
|
-
const ssmConfig = {
|
|
156
|
-
region: options.ssmConfig?.region,
|
|
157
|
-
withDecryption: options.ssmConfig?.decrypt,
|
|
158
|
-
// Map paths to environment mapping if provided
|
|
159
|
-
environmentMapping: options.ssmConfig?.paths ? {
|
|
160
|
-
development: options.ssmConfig.paths.development || 'dev',
|
|
161
|
-
test: options.ssmConfig.paths.test || 'test',
|
|
162
|
-
production: options.ssmConfig.paths.production || 'production',
|
|
163
|
-
} : undefined,
|
|
164
|
-
};
|
|
165
|
-
loaders.push(new SSMParameterStoreLoader(ssmConfig));
|
|
166
|
-
}
|
|
167
|
-
return loaders;
|
|
168
|
-
}
|
|
169
|
-
};
|
|
170
|
-
ConfigModule = ConfigModule_1 = __decorate([
|
|
171
|
-
Global(),
|
|
172
|
-
Module({})
|
|
173
|
-
], ConfigModule);
|
|
174
|
-
export { ConfigModule };
|
|
175
|
-
//# sourceMappingURL=config.module.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.module.js","sourceRoot":"","sources":["../../src/config.module.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
// Main entry point for nestjs-config-aws package
|
|
2
|
-
// This file will export all public interfaces and classes
|
|
3
|
-
export * from './config.module';
|
|
4
|
-
export * from './interfaces';
|
|
5
|
-
export * from './loaders/environment.loader';
|
|
6
|
-
export * from './loaders/secrets-manager.loader';
|
|
7
|
-
export * from './loaders/ssm-parameter-store.loader';
|
|
8
|
-
export * from './services/config.service';
|
|
9
|
-
export * from './utils/validation.util';
|
|
10
|
-
// Integration module exports for @nestjs/config compatibility
|
|
11
|
-
export * from './integration';
|
|
12
|
-
// Utility functions
|
|
13
|
-
export { isAwsSource, isLocalSource, hasMetadata, isValidationResult, isCacheEntry } from './integration/interfaces/utility-types.interface';
|
|
14
|
-
// Decorators and utility functions
|
|
15
|
-
export { InjectEnhancedConfig, ConfigProperty, ConfigClass, ValidateConfig, TransformConfig, createTypeSafeConfigFactory } from './integration/interfaces/nestjs-config-compatibility.interface';
|
|
16
|
-
// Explicit exports for better discoverability
|
|
17
|
-
export { NestConfigAwsIntegrationModule } from './integration/nestjs-config-integration.module';
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,0DAA0D;AAE1D,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AAExC,8DAA8D;AAC9D,cAAc,eAAe,CAAC;AAE9B,oBAAoB;AACpB,OAAO,EACL,WAAW,EACX,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,YAAY,EACb,MAAM,kDAAkD,CAAC;AAE1D,mCAAmC;AACnC,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,cAAc,EACd,eAAe,EACf,2BAA2B,EAC5B,MAAM,gEAAgE,CAAC;AAExE,8CAA8C;AAC9C,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration/index.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,oCAAoC,CAAC;AACnD,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-factory.interface.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/configuration-factory.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-source.interface.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/configuration-source.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
// Integration interfaces exports
|
|
2
|
-
export * from './integration-options.interface';
|
|
3
|
-
export * from './configuration-factory.interface';
|
|
4
|
-
export * from './configuration-source.interface';
|
|
5
|
-
export * from './integration-state.interface';
|
|
6
|
-
export * from './typed-configuration.interface';
|
|
7
|
-
export * from './nestjs-config-integration.interface';
|
|
8
|
-
export * from './nestjs-config-compatibility.interface';
|
|
9
|
-
export * from './utility-types.interface';
|
|
10
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,2BAA2B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"integration-options.interface.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/integration-options.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"integration-state.interface.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/integration-state.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { ConfigService } from '@nestjs/config';
|
|
2
|
-
/**
|
|
3
|
-
* Decorator for injecting enhanced config service.
|
|
4
|
-
*/
|
|
5
|
-
export const InjectEnhancedConfig = () => {
|
|
6
|
-
return (_target, _propertyKey, _parameterIndex) => {
|
|
7
|
-
// Implementation would be handled by the actual decorator
|
|
8
|
-
};
|
|
9
|
-
};
|
|
10
|
-
/**
|
|
11
|
-
* Configuration property decorator.
|
|
12
|
-
*/
|
|
13
|
-
export function ConfigProperty(options) {
|
|
14
|
-
return function (target, propertyKey) {
|
|
15
|
-
// Store metadata for the property
|
|
16
|
-
Reflect.defineMetadata('config:property', options, target, propertyKey);
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Configuration class decorator.
|
|
21
|
-
*/
|
|
22
|
-
export function ConfigClass(options) {
|
|
23
|
-
return function (target) {
|
|
24
|
-
// Store metadata for the class
|
|
25
|
-
Reflect.defineMetadata('config:class', options || {}, target);
|
|
26
|
-
return target;
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Configuration validation decorator.
|
|
31
|
-
*/
|
|
32
|
-
export function ValidateConfig(options) {
|
|
33
|
-
return function (target) {
|
|
34
|
-
// Store validation metadata
|
|
35
|
-
Reflect.defineMetadata('config:validation', options, target);
|
|
36
|
-
return target;
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Configuration transformer decorator.
|
|
41
|
-
*/
|
|
42
|
-
export function TransformConfig(transformer) {
|
|
43
|
-
return function (target, propertyKey) {
|
|
44
|
-
// Store transformer metadata
|
|
45
|
-
Reflect.defineMetadata('config:transformer', transformer, target, propertyKey);
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Create a type-safe configuration factory.
|
|
50
|
-
*/
|
|
51
|
-
export function createTypeSafeConfigFactory(key, factory) {
|
|
52
|
-
const configFactory = () => {
|
|
53
|
-
const configService = new ConfigService();
|
|
54
|
-
return factory(configService);
|
|
55
|
-
};
|
|
56
|
-
configFactory.KEY = key;
|
|
57
|
-
configFactory.asProvider = () => ({
|
|
58
|
-
provide: key,
|
|
59
|
-
useFactory: factory,
|
|
60
|
-
inject: [ConfigService],
|
|
61
|
-
});
|
|
62
|
-
return configFactory;
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=nestjs-config-compatibility.interface.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nestjs-config-compatibility.interface.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/nestjs-config-compatibility.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAsH/C;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAuB,EAAE;IAC3D,OAAO,CAAC,OAAY,EAAE,YAAyC,EAAE,eAAuB,EAAE,EAAE;QAC1F,0DAA0D;IAC5D,CAAC,CAAC;AACJ,CAAC,CAAC;AAoBF;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAA8B;IAC3D,OAAO,UAAU,MAAW,EAAE,WAA4B;QACxD,kCAAkC;QAClC,OAAO,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC1E,CAAC,CAAC;AACJ,CAAC;AAcD;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,OAA4B;IACtD,OAAO,UAA8B,MAAS;QAC5C,+BAA+B;QAC/B,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAcD;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAgC;IAC7D,OAAO,UAA8B,MAAS;QAC5C,4BAA4B;QAC5B,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAeD;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,WAA+C;IAE/C,OAAO,UAAU,MAAW,EAAE,WAA4B;QACxD,6BAA6B;QAC7B,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACjF,CAAC,CAAC;AACJ,CAAC;AAeD;;GAEG;AACH,MAAM,UAAU,2BAA2B,CACzC,GAAW,EACX,OAAqC;IAErC,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC,CAAC;IACD,aAAqB,CAAC,GAAG,GAAG,GAAG,CAAC;IAChC,aAAqB,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC,CAAC;QACzC,OAAO,EAAE,GAAG;QACZ,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,CAAC,aAAa,CAAC;KACxB,CAAC,CAAC;IACH,OAAO,aAAyC,CAAC;AACnD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nestjs-config-integration.interface.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/nestjs-config-integration.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"typed-configuration.interface.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/typed-configuration.interface.ts"],"names":[],"mappings":"AAAA,kDAAkD"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utility types for enhanced TypeScript support in nest-config-aws integration.
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Type guard for AWS configuration sources.
|
|
6
|
-
*/
|
|
7
|
-
export const isAwsSource = (source) => {
|
|
8
|
-
return source === 'secrets-manager' || source === 'ssm';
|
|
9
|
-
};
|
|
10
|
-
/**
|
|
11
|
-
* Type guard for local configuration sources.
|
|
12
|
-
*/
|
|
13
|
-
export const isLocalSource = (source) => {
|
|
14
|
-
return source === 'environment' || source === 'local-file';
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* Type guard for configuration with metadata.
|
|
18
|
-
*/
|
|
19
|
-
export const hasMetadata = (config) => {
|
|
20
|
-
return config && typeof config === 'object' && '__metadata' in config;
|
|
21
|
-
};
|
|
22
|
-
/**
|
|
23
|
-
* Type guard for validation result.
|
|
24
|
-
*/
|
|
25
|
-
export const isValidationResult = (result) => {
|
|
26
|
-
return (result &&
|
|
27
|
-
typeof result === 'object' &&
|
|
28
|
-
'isValid' in result &&
|
|
29
|
-
typeof result.isValid === 'boolean' &&
|
|
30
|
-
'errors' in result &&
|
|
31
|
-
Array.isArray(result.errors));
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* Type guard for cache entry.
|
|
35
|
-
*/
|
|
36
|
-
export const isCacheEntry = (entry) => {
|
|
37
|
-
return (entry &&
|
|
38
|
-
typeof entry === 'object' &&
|
|
39
|
-
'key' in entry &&
|
|
40
|
-
'value' in entry &&
|
|
41
|
-
'timestamp' in entry &&
|
|
42
|
-
entry.timestamp instanceof Date);
|
|
43
|
-
};
|
|
44
|
-
//# sourceMappingURL=utility-types.interface.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utility-types.interface.js","sourceRoot":"","sources":["../../../../src/integration/interfaces/utility-types.interface.ts"],"names":[],"mappings":"AAAA;;GAEG;AAmSH;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,MAAuB,EAA6B,EAAE;IAChF,OAAO,MAAM,KAAK,iBAAiB,IAAI,MAAM,KAAK,KAAK,CAAC;AAC1D,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAuB,EAA+B,EAAE;IACpF,OAAO,MAAM,KAAK,aAAa,IAAI,MAAM,KAAK,YAAY,CAAC;AAC7D,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,MAAW,EACuB,EAAE;IACpC,OAAO,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,YAAY,IAAI,MAAM,CAAC;AACxE,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAI,MAAW,EAAiC,EAAE;IAClF,OAAO,CACL,MAAM;QACN,OAAO,MAAM,KAAK,QAAQ;QAC1B,SAAS,IAAI,MAAM;QACnB,OAAO,MAAM,CAAC,OAAO,KAAK,SAAS;QACnC,QAAQ,IAAI,MAAM;QAClB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAC7B,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAI,KAAU,EAA0B,EAAE;IACpE,OAAO,CACL,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,IAAI,KAAK;QACd,OAAO,IAAI,KAAK;QAChB,WAAW,IAAI,KAAK;QACpB,KAAK,CAAC,SAAS,YAAY,IAAI,CAChC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var NestConfigAwsIntegrationModule_1;
|
|
8
|
-
import { Global, Module } from '@nestjs/common';
|
|
9
|
-
import { ConfigurationFactoryProviderImpl } from './providers/configuration-factory.provider';
|
|
10
|
-
import { AwsConfigurationLoaderService } from './providers/aws-configuration-loader.service';
|
|
11
|
-
import { IntegrationStateService } from './services/integration-state.service';
|
|
12
|
-
import { FactoryRegistrationService } from './services/factory-registration.service';
|
|
13
|
-
import { NestjsConfigIntegrationService } from './services/nestjs-config-integration.service';
|
|
14
|
-
import { PrecedenceHandlerService } from './services/precedence-handler.service';
|
|
15
|
-
import { AsyncConfigHelperService } from './services/async-config-helper.service';
|
|
16
|
-
import { NamespaceHandlerService } from './services/namespace-handler.service';
|
|
17
|
-
import { ValidationIntegrationService } from './services/validation-integration.service';
|
|
18
|
-
/**
|
|
19
|
-
* Token for injecting integration options
|
|
20
|
-
*/
|
|
21
|
-
export const NESTJS_CONFIG_AWS_INTEGRATION_OPTIONS = 'NESTJS_CONFIG_AWS_INTEGRATION_OPTIONS';
|
|
22
|
-
/**
|
|
23
|
-
* NestJS module for integrating nestjs-config-aws with @nestjs/config.
|
|
24
|
-
* This module provides AWS-sourced configuration values to the standard @nestjs/config module.
|
|
25
|
-
*/
|
|
26
|
-
let NestConfigAwsIntegrationModule = NestConfigAwsIntegrationModule_1 = class NestConfigAwsIntegrationModule {
|
|
27
|
-
/**
|
|
28
|
-
* Create a synchronous integration module with provided options.
|
|
29
|
-
*
|
|
30
|
-
* @param options - Integration options for the module
|
|
31
|
-
* @returns Dynamic module configuration
|
|
32
|
-
*/
|
|
33
|
-
static forRoot(options = {}) {
|
|
34
|
-
const providers = this.createProviders(options);
|
|
35
|
-
return {
|
|
36
|
-
module: NestConfigAwsIntegrationModule_1,
|
|
37
|
-
providers: [
|
|
38
|
-
{
|
|
39
|
-
provide: NESTJS_CONFIG_AWS_INTEGRATION_OPTIONS,
|
|
40
|
-
useValue: options,
|
|
41
|
-
},
|
|
42
|
-
...providers,
|
|
43
|
-
],
|
|
44
|
-
exports: [
|
|
45
|
-
ConfigurationFactoryProviderImpl,
|
|
46
|
-
AwsConfigurationLoaderService,
|
|
47
|
-
IntegrationStateService,
|
|
48
|
-
FactoryRegistrationService,
|
|
49
|
-
NestjsConfigIntegrationService,
|
|
50
|
-
AsyncConfigHelperService,
|
|
51
|
-
NamespaceHandlerService,
|
|
52
|
-
ValidationIntegrationService,
|
|
53
|
-
],
|
|
54
|
-
global: options.registerGlobally !== false,
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Create an asynchronous integration module with factory-based options.
|
|
59
|
-
* Useful when integration options depend on other services or async operations.
|
|
60
|
-
*
|
|
61
|
-
* @param options - Async integration options with factory function
|
|
62
|
-
* @returns Dynamic module configuration
|
|
63
|
-
*/
|
|
64
|
-
static forRootAsync(options) {
|
|
65
|
-
const asyncProviders = this.createAsyncProviders(options);
|
|
66
|
-
const providers = this.createProviders();
|
|
67
|
-
return {
|
|
68
|
-
module: NestConfigAwsIntegrationModule_1,
|
|
69
|
-
imports: options.imports || [],
|
|
70
|
-
providers: [
|
|
71
|
-
...asyncProviders,
|
|
72
|
-
...providers,
|
|
73
|
-
],
|
|
74
|
-
exports: [
|
|
75
|
-
ConfigurationFactoryProviderImpl,
|
|
76
|
-
AwsConfigurationLoaderService,
|
|
77
|
-
IntegrationStateService,
|
|
78
|
-
FactoryRegistrationService,
|
|
79
|
-
NestjsConfigIntegrationService,
|
|
80
|
-
AsyncConfigHelperService,
|
|
81
|
-
NamespaceHandlerService,
|
|
82
|
-
ValidationIntegrationService,
|
|
83
|
-
],
|
|
84
|
-
global: true, // Default to global for async modules
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Create the standard providers for the integration module.
|
|
89
|
-
*/
|
|
90
|
-
static createProviders(_options) {
|
|
91
|
-
return [
|
|
92
|
-
ConfigurationFactoryProviderImpl,
|
|
93
|
-
AwsConfigurationLoaderService,
|
|
94
|
-
IntegrationStateService,
|
|
95
|
-
PrecedenceHandlerService,
|
|
96
|
-
FactoryRegistrationService,
|
|
97
|
-
NestjsConfigIntegrationService,
|
|
98
|
-
AsyncConfigHelperService,
|
|
99
|
-
NamespaceHandlerService,
|
|
100
|
-
ValidationIntegrationService,
|
|
101
|
-
];
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Create providers for asynchronous module registration.
|
|
105
|
-
*/
|
|
106
|
-
static createAsyncProviders(options) {
|
|
107
|
-
return [
|
|
108
|
-
{
|
|
109
|
-
provide: NESTJS_CONFIG_AWS_INTEGRATION_OPTIONS,
|
|
110
|
-
useFactory: options.useFactory,
|
|
111
|
-
inject: options.inject || [],
|
|
112
|
-
},
|
|
113
|
-
];
|
|
114
|
-
}
|
|
115
|
-
};
|
|
116
|
-
NestConfigAwsIntegrationModule = NestConfigAwsIntegrationModule_1 = __decorate([
|
|
117
|
-
Global(),
|
|
118
|
-
Module({})
|
|
119
|
-
], NestConfigAwsIntegrationModule);
|
|
120
|
-
export { NestConfigAwsIntegrationModule };
|
|
121
|
-
//# sourceMappingURL=nestjs-config-integration.module.js.map
|