@spinajs/configuration 1.1.2 → 1.1.7
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/lib/config/configuration.d.ts +7 -0
- package/lib/config/configuration.js +5 -2
- package/lib/config/configuration.js.map +1 -1
- package/lib/configuration.d.ts +8 -0
- package/lib/configuration.js +12 -4
- package/lib/configuration.js.map +1 -1
- package/lib/index.d.ts +9 -0
- package/lib/index.js +9 -0
- package/lib/index.js.map +1 -1
- package/lib/sources.d.ts +2 -12
- package/lib/sources.js +25 -44
- package/lib/sources.js.map +1 -1
- package/lib/types.d.ts +8 -4
- package/lib/types.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const config = {
|
|
2
4
|
configuration: {
|
|
3
5
|
isDevelopment: process.env.NODE_ENV === "development",
|
|
4
|
-
isProduction: process.env.NODE_ENV === "production"
|
|
6
|
+
isProduction: process.env.NODE_ENV === "production",
|
|
5
7
|
}
|
|
6
8
|
};
|
|
9
|
+
exports.default = config;
|
|
7
10
|
//# sourceMappingURL=configuration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/config/configuration.ts"],"names":[],"mappings":"AAAA,MAAM,
|
|
1
|
+
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../src/config/configuration.ts"],"names":[],"mappings":";;AAAA,MAAM,MAAM,GAAG;IACX,aAAa,EAAE;QACX,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;QACrD,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;KACtD;CACJ,CAAC;AAEF,kBAAe,MAAM,CAAC"}
|
package/lib/configuration.d.ts
CHANGED
|
@@ -31,6 +31,14 @@ export declare class FrameworkConfiguration extends Configuration {
|
|
|
31
31
|
* @returns { T | undefined }
|
|
32
32
|
*/
|
|
33
33
|
get<T>(path: string[] | string, defaultValue?: T): T;
|
|
34
|
+
/**
|
|
35
|
+
* Sets at given path configuration value. Use when you want to override config
|
|
36
|
+
* loaded from files programatically
|
|
37
|
+
*
|
|
38
|
+
* @param path config path
|
|
39
|
+
* @param value value to set
|
|
40
|
+
*/
|
|
41
|
+
set(path: string[] | string, value: any): void;
|
|
34
42
|
resolveAsync(container: IContainer): Promise<void>;
|
|
35
43
|
protected dir(toJoin: string): string;
|
|
36
44
|
/**
|
package/lib/configuration.js
CHANGED
|
@@ -34,7 +34,6 @@ const exceptions_1 = require("@spinajs/exceptions");
|
|
|
34
34
|
const path_1 = require("path");
|
|
35
35
|
const sources_1 = require("./sources");
|
|
36
36
|
const types_1 = require("./types");
|
|
37
|
-
const log_1 = require("@spinajs/log");
|
|
38
37
|
const util_1 = require("./util");
|
|
39
38
|
const _ = __importStar(require("lodash"));
|
|
40
39
|
let FrameworkConfiguration = class FrameworkConfiguration extends types_1.Configuration {
|
|
@@ -73,12 +72,21 @@ let FrameworkConfiguration = class FrameworkConfiguration extends types_1.Config
|
|
|
73
72
|
get(path, defaultValue) {
|
|
74
73
|
return _.get(this.Config, path, defaultValue);
|
|
75
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Sets at given path configuration value. Use when you want to override config
|
|
77
|
+
* loaded from files programatically
|
|
78
|
+
*
|
|
79
|
+
* @param path config path
|
|
80
|
+
* @param value value to set
|
|
81
|
+
*/
|
|
82
|
+
set(path, value) {
|
|
83
|
+
this.Config = _.set(this.Config, path, value);
|
|
84
|
+
}
|
|
76
85
|
async resolveAsync(container) {
|
|
77
86
|
if (!container.hasRegistered(sources_1.ConfigurationSource)) {
|
|
78
87
|
throw new exceptions_1.InvalidOperation("No configuration sources configured. Please ensure that config module have any source to read from !");
|
|
79
88
|
}
|
|
80
89
|
this.Sources = await container.resolve(Array.ofType(sources_1.ConfigurationSource), [this.RunApp, this.CustomConfigPaths, this.AppBaseDir]);
|
|
81
|
-
log_1.Log.trace(`Found ${this.Sources.map(x => x.constructor.name)} log sources`, "Configuration");
|
|
82
90
|
await Promise.all(this.Sources.map(s => s.Load())).then(result => {
|
|
83
91
|
result.map(c => _.merge(this.Config, c));
|
|
84
92
|
});
|
|
@@ -87,7 +95,7 @@ let FrameworkConfiguration = class FrameworkConfiguration extends types_1.Config
|
|
|
87
95
|
await super.resolveAsync(container);
|
|
88
96
|
}
|
|
89
97
|
dir(toJoin) {
|
|
90
|
-
return (0, path_1.normalize)((0, path_1.join)((0, path_1.resolve)(this.
|
|
98
|
+
return (0, path_1.normalize)((0, path_1.join)((0, path_1.resolve)(this.AppBaseDir), toJoin));
|
|
91
99
|
}
|
|
92
100
|
/**
|
|
93
101
|
* adds app dirs to system.dirs config
|
|
@@ -108,7 +116,7 @@ let FrameworkConfiguration = class FrameworkConfiguration extends types_1.Config
|
|
|
108
116
|
for (const prop of Object.keys(this.Config)) {
|
|
109
117
|
const subconfig = this.Config[prop];
|
|
110
118
|
if (_.isFunction(subconfig.configure)) {
|
|
111
|
-
subconfig.configure.apply(this
|
|
119
|
+
subconfig.configure.apply(this);
|
|
112
120
|
}
|
|
113
121
|
}
|
|
114
122
|
}
|
package/lib/configuration.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../src/configuration.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oCAAqD;AACrD,oDAAuD;AACvD,+BAAgD;AAChD,uCAAgD;AAChD,mCAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../src/configuration.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* We export default configuration for webpack modules
|
|
3
|
+
* Normally we load configuration from disk via filesystem
|
|
4
|
+
* But webpack is bundlig all files into one.
|
|
5
|
+
*
|
|
6
|
+
* When we export, we can see configuration variable
|
|
7
|
+
* in webpack module cache and webpack config loader can see it
|
|
8
|
+
*/
|
|
9
|
+
export * from "./config/configuration";
|
|
1
10
|
export * from "./types";
|
|
2
11
|
export * from "./sources";
|
|
3
12
|
export * from "./decorators";
|
package/lib/index.js
CHANGED
|
@@ -10,6 +10,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
/**
|
|
14
|
+
* We export default configuration for webpack modules
|
|
15
|
+
* Normally we load configuration from disk via filesystem
|
|
16
|
+
* But webpack is bundlig all files into one.
|
|
17
|
+
*
|
|
18
|
+
* When we export, we can see configuration variable
|
|
19
|
+
* in webpack module cache and webpack config loader can see it
|
|
20
|
+
*/
|
|
21
|
+
__exportStar(require("./config/configuration"), exports);
|
|
13
22
|
__exportStar(require("./types"), exports);
|
|
14
23
|
__exportStar(require("./sources"), exports);
|
|
15
24
|
__exportStar(require("./decorators"), exports);
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB;AACxB,4CAA0B;AAC1B,+CAA6B;AAC7B,kDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;GAOG;AACH,yDAAuC;AACvC,0CAAwB;AACxB,4CAA0B;AAC1B,+CAA6B;AAC7B,kDAAgC"}
|
package/lib/sources.d.ts
CHANGED
|
@@ -9,24 +9,14 @@ export declare abstract class BaseFileSource extends ConfigurationSource {
|
|
|
9
9
|
* Configuration base dir, where to look for app config
|
|
10
10
|
*/
|
|
11
11
|
BaseDir: string;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
*/
|
|
15
|
-
protected CONFIG_DIRS: string[];
|
|
12
|
+
protected CommonDirs: string[];
|
|
13
|
+
protected BasePath: string;
|
|
16
14
|
constructor(RunApp?: string, CustomConfigPaths?: string[], appBaseDir?: string);
|
|
17
15
|
protected load(extension: string, callback: (file: string) => any): {};
|
|
18
16
|
}
|
|
19
17
|
export declare class JsFileSource extends BaseFileSource {
|
|
20
|
-
/**
|
|
21
|
-
* Default dirs to check for configuration files
|
|
22
|
-
*/
|
|
23
|
-
protected CONFIG_DIRS: string[];
|
|
24
18
|
Load(): Promise<any>;
|
|
25
19
|
}
|
|
26
20
|
export declare class JsonFileSource extends BaseFileSource {
|
|
27
|
-
/**
|
|
28
|
-
* Default dirs to check for configuration files
|
|
29
|
-
*/
|
|
30
|
-
protected CONFIG_DIRS: string[];
|
|
31
21
|
Load(): Promise<any>;
|
|
32
22
|
}
|
package/lib/sources.js
CHANGED
|
@@ -33,25 +33,12 @@ const path_1 = require("path");
|
|
|
33
33
|
const util_1 = require("./util");
|
|
34
34
|
const fs = __importStar(require("fs"));
|
|
35
35
|
const path = __importStar(require("path"));
|
|
36
|
-
const log_1 = require("@spinajs/log");
|
|
36
|
+
const log_1 = require("@spinajs/log/lib/log");
|
|
37
37
|
function mergeArrays(target, source) {
|
|
38
38
|
if (_.isArray(target)) {
|
|
39
39
|
return target.concat(source);
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
const DEFAULT_CONFIG_DIRS = [
|
|
43
|
-
// this module path
|
|
44
|
-
(0, path_1.normalize)((0, path_1.join)((0, path_1.resolve)(__dirname), '/../config')),
|
|
45
|
-
// for tests, in src dir
|
|
46
|
-
(0, path_1.normalize)((0, path_1.join)((0, path_1.resolve)(__dirname), '/config')),
|
|
47
|
-
// other @spinajs modules paths
|
|
48
|
-
'node_modules/@spinajs/*/lib/config',
|
|
49
|
-
// project paths - last to allow overwrite @spinajs conf
|
|
50
|
-
'lib/config',
|
|
51
|
-
'dist/config',
|
|
52
|
-
'build/config',
|
|
53
|
-
'config',
|
|
54
|
-
];
|
|
55
42
|
class ConfigurationSource {
|
|
56
43
|
}
|
|
57
44
|
exports.ConfigurationSource = ConfigurationSource;
|
|
@@ -65,24 +52,33 @@ class BaseFileSource extends ConfigurationSource {
|
|
|
65
52
|
* Configuration base dir, where to look for app config
|
|
66
53
|
*/
|
|
67
54
|
this.BaseDir = './';
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
55
|
+
this.CommonDirs = [
|
|
56
|
+
// this module path
|
|
57
|
+
(0, path_1.normalize)((0, path_1.join)((0, path_1.resolve)(__dirname), '/../config')),
|
|
58
|
+
// for tests, in src dir
|
|
59
|
+
(0, path_1.normalize)((0, path_1.join)((0, path_1.resolve)(__dirname), '/config')),
|
|
60
|
+
// other @spinajs modules paths
|
|
61
|
+
'node_modules/@spinajs/*/lib/config',
|
|
62
|
+
// project paths - last to allow overwrite @spinajs conf
|
|
63
|
+
'lib/config',
|
|
64
|
+
'dist/config',
|
|
65
|
+
'build/config',
|
|
66
|
+
'config',
|
|
67
|
+
];
|
|
68
|
+
this.BasePath = "";
|
|
69
|
+
this.BasePath = (0, util_1.findBasePath)(process.cwd());
|
|
72
70
|
}
|
|
73
71
|
load(extension, callback) {
|
|
74
72
|
const config = {};
|
|
75
|
-
let dirs = this.CONFIG_DIRS;
|
|
76
|
-
const basePath = (0, util_1.findBasePath)(process.cwd());
|
|
77
73
|
if (this.RunApp) {
|
|
78
|
-
|
|
74
|
+
this.CommonDirs = this.CommonDirs.concat([(0, path_1.join)(this.appBaseDir, `/${this.RunApp}/config`)]);
|
|
79
75
|
}
|
|
80
76
|
if (this.CustomConfigPaths) {
|
|
81
|
-
|
|
77
|
+
this.CommonDirs = this.CommonDirs.concat(this.CustomConfigPaths);
|
|
82
78
|
}
|
|
83
|
-
|
|
79
|
+
this.CommonDirs.map(f => path.isAbsolute(f) ? f : (0, path_1.join)(this.BasePath, f))
|
|
84
80
|
// get all config files
|
|
85
|
-
.map(d => glob_1.glob.sync(d
|
|
81
|
+
.map(d => glob_1.glob.sync(path.join(d, `/**/${extension}`)))
|
|
86
82
|
// flatten files
|
|
87
83
|
.reduce((prev, current) => {
|
|
88
84
|
return prev.concat(_.flattenDeep(current));
|
|
@@ -92,19 +88,12 @@ class BaseFileSource extends ConfigurationSource {
|
|
|
92
88
|
.map(callback)
|
|
93
89
|
.filter((v) => v !== null)
|
|
94
90
|
// load & merge configs
|
|
95
|
-
.map((c) => _.mergeWith(config, c, mergeArrays));
|
|
91
|
+
.map((c) => { var _a; return _.mergeWith(config, (_a = c.default) !== null && _a !== void 0 ? _a : c, mergeArrays); });
|
|
96
92
|
return config;
|
|
97
93
|
}
|
|
98
94
|
}
|
|
99
95
|
exports.BaseFileSource = BaseFileSource;
|
|
100
96
|
let JsFileSource = class JsFileSource extends BaseFileSource {
|
|
101
|
-
constructor() {
|
|
102
|
-
super(...arguments);
|
|
103
|
-
/**
|
|
104
|
-
* Default dirs to check for configuration files
|
|
105
|
-
*/
|
|
106
|
-
this.CONFIG_DIRS = DEFAULT_CONFIG_DIRS;
|
|
107
|
-
}
|
|
108
97
|
async Load() {
|
|
109
98
|
const common = this.load('!(*.dev|*.prod).js', _load);
|
|
110
99
|
if (process.env.NODE_ENV) {
|
|
@@ -117,7 +106,7 @@ let JsFileSource = class JsFileSource extends BaseFileSource {
|
|
|
117
106
|
}
|
|
118
107
|
return common;
|
|
119
108
|
function _load(file) {
|
|
120
|
-
log_1.Log.trace(`
|
|
109
|
+
log_1.Log.trace(`Trying to load file ${file}`, "Configuration");
|
|
121
110
|
(0, util_1.uncache)(file);
|
|
122
111
|
return require(file);
|
|
123
112
|
}
|
|
@@ -128,31 +117,23 @@ JsFileSource = __decorate([
|
|
|
128
117
|
], JsFileSource);
|
|
129
118
|
exports.JsFileSource = JsFileSource;
|
|
130
119
|
let JsonFileSource = class JsonFileSource extends BaseFileSource {
|
|
131
|
-
constructor() {
|
|
132
|
-
super(...arguments);
|
|
133
|
-
/**
|
|
134
|
-
* Default dirs to check for configuration files
|
|
135
|
-
*/
|
|
136
|
-
this.CONFIG_DIRS = DEFAULT_CONFIG_DIRS;
|
|
137
|
-
}
|
|
138
120
|
async Load() {
|
|
139
121
|
const common = this.load('!(*.dev|*.prod).json', _load);
|
|
140
122
|
if (process.env.NODE_ENV) {
|
|
141
123
|
if (process.env.NODE_ENV === "development") {
|
|
142
|
-
return _.
|
|
124
|
+
return _.mergeWith(common, this.load("*.dev.json", _load), mergeArrays);
|
|
143
125
|
}
|
|
144
126
|
else if (process.env.NODE_ENV === "production") {
|
|
145
|
-
return _.
|
|
127
|
+
return _.mergeWith(common, this.load("*.prod.json", _load), mergeArrays);
|
|
146
128
|
}
|
|
147
129
|
}
|
|
148
130
|
return common;
|
|
149
131
|
function _load(file) {
|
|
150
132
|
try {
|
|
151
|
-
log_1.Log.trace(`
|
|
133
|
+
log_1.Log.trace(`Trying to load file ${file}`, "Configuration");
|
|
152
134
|
return JSON.parse(fs.readFileSync(file, "utf-8"));
|
|
153
135
|
}
|
|
154
136
|
catch (err) {
|
|
155
|
-
log_1.Log.error(err, `Config ${file} invalid !`, "Configuration");
|
|
156
137
|
return null;
|
|
157
138
|
}
|
|
158
139
|
}
|
package/lib/sources.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../src/sources.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oCAAyC;AACzC,+BAA4B;AAC5B,4BAA6B;AAC7B,+BAAgD;AAChD,iCAA+C;AAC/C,uCAAyB;AACzB,2CAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../src/sources.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -25,10 +25,6 @@ export interface ConfigurationOptions {
|
|
|
25
25
|
watchFileChanges?: boolean;
|
|
26
26
|
}
|
|
27
27
|
export declare abstract class Configuration extends AsyncModule {
|
|
28
|
-
/**
|
|
29
|
-
* Configuration base dir, where to look for app config
|
|
30
|
-
*/
|
|
31
|
-
BaseDir: string;
|
|
32
28
|
/**
|
|
33
29
|
* Current running app name
|
|
34
30
|
*/
|
|
@@ -43,4 +39,12 @@ export declare abstract class Configuration extends AsyncModule {
|
|
|
43
39
|
* @param path - path to property eg. ["system","dirs"] or "system" or "system.dirs"
|
|
44
40
|
*/
|
|
45
41
|
abstract get<T>(path: string[] | string, defaultValue?: T): T;
|
|
42
|
+
/**
|
|
43
|
+
* Sets at given path configuration value. Use when you want to override config
|
|
44
|
+
* loaded from files programatically
|
|
45
|
+
*
|
|
46
|
+
* @param path config path
|
|
47
|
+
* @param value value to set
|
|
48
|
+
*/
|
|
49
|
+
abstract set(path: string[] | string, value: any): void;
|
|
46
50
|
}
|
package/lib/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAA,oCAA0C;AAgC1C,MAAsB,aAAc,SAAQ,gBAAW;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAA,oCAA0C;AAgC1C,MAAsB,aAAc,SAAQ,gBAAW;CA2BtD;AA3BD,sCA2BC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spinajs/configuration",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.7",
|
|
4
4
|
"description": "framework configuration module",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"private": false,
|
|
@@ -8,12 +8,12 @@
|
|
|
8
8
|
"test": "ts-mocha -p tsconfig.json test/**/*.test.ts",
|
|
9
9
|
"coverage": "nyc npm run test",
|
|
10
10
|
"build-docs": "rimraf docs && typedoc --options typedoc.json src/",
|
|
11
|
-
"build": "",
|
|
11
|
+
"build": "tsc",
|
|
12
12
|
"build-watch": "tsc -w",
|
|
13
13
|
"prepare": "npm run build",
|
|
14
14
|
"format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
|
|
15
15
|
"lint": "tslint -p tsconfig.json",
|
|
16
|
-
|
|
16
|
+
"prepublishOnly": "npm test && npm run lint",
|
|
17
17
|
"preversion": "npm run lint",
|
|
18
18
|
"version": "npm run format && git add -A src",
|
|
19
19
|
"postversion": "git push && git push --tags"
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@spinajs/di": "^1.1.7",
|
|
43
43
|
"@spinajs/exceptions": "^1.0.5",
|
|
44
|
-
"@spinajs/log": "^1.1.
|
|
44
|
+
"@spinajs/log": "^1.1.6",
|
|
45
45
|
"glob": "^7.1.4",
|
|
46
46
|
"lodash": "^4.17.14"
|
|
47
47
|
},
|