1.76.3 • Published 11 months ago
@biorate/config-loader v1.76.3
Config loader
Config loader abstraction
Features:
- Common interface for load configuration from different sources
Examples:
./config-loader-test.ts
import { init } from '@biorate/inversion';
import { ConfigLoader } from '../../src';
import { key, value } from './';
export class ConfigLoaderTest extends ConfigLoader {
@init() protected initialize() {
this.config.set(key, value);
}
}
./index.ts
import { inject, container, Types, Core } from '@biorate/inversion';
import { IConfig, Config } from '@biorate/config';
import { ConfigLoader } from '@biorate/config-loader';
import { ConfigLoaderTest } from './config-loader-test';
class Root extends Core() {
@inject(Types.Config) public config: IConfig;
@inject(Types.ConfigLoaderTest) public configLoaderTest: ConfigLoader;
}
container.bind<IConfig>(Types.Config).to(Config).inSingletonScope();
container.bind<ConfigLoader>(Types.ConfigLoaderTest).to(ConfigLoaderTest).inSingletonScope();
container.bind<Root>(Root).toSelf().inSingletonScope();
container.get<IConfig>(Types.Config).merge({});
(async () => {
const root = container.get<Root>(Root);
await root.$run();
root.config.get('test'); // Hello world!
})();
Learn
- Documentation can be found here - docs.
Release History
See the CHANGELOG
License
Copyright (c) 2021-present Leonid Levkin (llevkin)
1.76.3
11 months ago
1.65.4
1 year ago
1.54.0
1 year ago
1.38.2
2 years ago
1.38.3
2 years ago
1.38.1
2 years ago
1.38.4
2 years ago
1.42.2
2 years ago
1.42.1
2 years ago
1.30.12
2 years ago
1.29.0
2 years ago
1.28.1
2 years ago
1.28.0
2 years ago
1.26.0
2 years ago
1.27.2
2 years ago
1.27.0
2 years ago
1.27.1
2 years ago
1.24.0
2 years ago
1.11.2
3 years ago
1.7.0
3 years ago
1.6.0
3 years ago