@map-colonies/config 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/config.js +2 -4
- package/dist/config.js.map +1 -1
- package/dist/env.js +29 -11
- package/dist/env.js.map +1 -1
- package/dist/schemas.d.ts +1 -1
- package/dist/schemas.js +2 -2
- package/dist/schemas.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.js.map +1 -1
- package/dist/validator.d.ts +3 -3
- package/dist/validator.js +1 -2
- package/dist/validator.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +13 -10
package/README.md
CHANGED
|
@@ -147,6 +147,8 @@ The package supports merging configurations from multiple sources (local, remote
|
|
|
147
147
|
### Environment Variables
|
|
148
148
|
|
|
149
149
|
Configuration options can be overridden by setting the corresponding environment variables as described in schema using the `x-env-value` key.
|
|
150
|
+
If an environment variable is set, it takes precedence over the value from the remote or local configuration.,
|
|
151
|
+
If the value of the `x-env-format` key is `json`, the environment variable value is parsed as JSON.
|
|
150
152
|
|
|
151
153
|
### Merging Configurations
|
|
152
154
|
|
package/dist/config.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.config = config;
|
|
|
7
7
|
const deepmerge_1 = __importDefault(require("deepmerge"));
|
|
8
8
|
const symbol_1 = require("@map-colonies/schemas/build/schemas/symbol");
|
|
9
9
|
const config_1 = __importDefault(require("config"));
|
|
10
|
-
const semver_1 =
|
|
10
|
+
const semver_1 = require("semver");
|
|
11
11
|
const lodash_1 = __importDefault(require("lodash"));
|
|
12
12
|
const env_1 = require("./env");
|
|
13
13
|
const schemas_1 = require("./schemas");
|
|
@@ -41,7 +41,7 @@ async function config(options) {
|
|
|
41
41
|
debug('handling fetching remote data');
|
|
42
42
|
// check if the server is using an older version of the schemas package
|
|
43
43
|
const capabilitiesResponse = await (0, httpClient_1.getServerCapabilities)();
|
|
44
|
-
if (ignoreServerIsOlderVersionError !== true && semver_1.
|
|
44
|
+
if (ignoreServerIsOlderVersionError !== true && (0, semver_1.gt)(constants_1.LOCAL_SCHEMAS_PACKAGE_VERSION, capabilitiesResponse.schemasPackageVersion)) {
|
|
45
45
|
debug('server is using an older version of the schemas package. local: %s, remote: %s', constants_1.LOCAL_SCHEMAS_PACKAGE_VERSION, capabilitiesResponse.schemasPackageVersion);
|
|
46
46
|
throw (0, errors_1.createConfigError)('schemasPackageVersionMismatchError', 'The server is using an older version of the schemas package. Please update the server to the latest version or ignore this error by setting the CONFIG_IGNORE_SERVER_IS_OLDER_VERSION_ERROR environment variable.', {
|
|
47
47
|
localPackageVersion: constants_1.LOCAL_SCHEMAS_PACKAGE_VERSION,
|
|
@@ -66,7 +66,6 @@ async function config(options) {
|
|
|
66
66
|
const envConfig = (0, env_1.getEnvValues)(dereferencedSchema);
|
|
67
67
|
debug('env config: %j', envConfig);
|
|
68
68
|
// merge all the configs into one object with the following priority: localConfig < remoteConfig < envConfig
|
|
69
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
70
69
|
const mergedConfig = deepmerge_1.default.all([localConfig, remoteConfig, envConfig], { arrayMerge });
|
|
71
70
|
debug('merged config: %j', mergedConfig);
|
|
72
71
|
// validate the merged config
|
|
@@ -80,7 +79,6 @@ async function config(options) {
|
|
|
80
79
|
(0, helpers_1.deepFreeze)(validatedConfig);
|
|
81
80
|
function get(path) {
|
|
82
81
|
debug('get called with path: %s', path);
|
|
83
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
84
82
|
return lodash_1.default.get(validatedConfig, path);
|
|
85
83
|
}
|
|
86
84
|
function getAll() {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;AA8BA,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/env.js
CHANGED
|
@@ -11,14 +11,24 @@ const schemaCompositionKeys = ['oneOf', 'anyOf', 'allOf'];
|
|
|
11
11
|
function parseSchemaEnv(schema) {
|
|
12
12
|
debug('parsing schema for env values');
|
|
13
13
|
const fromEnv = {};
|
|
14
|
-
function
|
|
15
|
-
debug('handling
|
|
16
|
-
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
if (
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
function handlePossibleEnvValue(schema, path) {
|
|
15
|
+
debug('handling possible env value at path %s', path);
|
|
16
|
+
const xEnvValueFrom = schema['x-env-value'];
|
|
17
|
+
const isPrimitive = ['string', 'number', 'integer', 'boolean', 'null'].includes(schema.type);
|
|
18
|
+
const isFormatJson = schema['x-env-format'] === 'json';
|
|
19
|
+
if (xEnvValueFrom === undefined) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (isFormatJson) {
|
|
23
|
+
fromEnv[xEnvValueFrom] = {
|
|
24
|
+
type: 'json',
|
|
25
|
+
path,
|
|
26
|
+
};
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
if (isPrimitive) {
|
|
30
|
+
fromEnv[xEnvValueFrom] = {
|
|
31
|
+
type: schema.type,
|
|
22
32
|
path,
|
|
23
33
|
};
|
|
24
34
|
}
|
|
@@ -26,9 +36,7 @@ function parseSchemaEnv(schema) {
|
|
|
26
36
|
function iterateOverSchemaObject(schema, path) {
|
|
27
37
|
debug('iterating over schema object at path %s', path);
|
|
28
38
|
const type = schema.type;
|
|
29
|
-
|
|
30
|
-
return handlePrimitive(schema, type, path);
|
|
31
|
-
}
|
|
39
|
+
handlePossibleEnvValue(schema, path);
|
|
32
40
|
if (type === 'array' || type === 'any') {
|
|
33
41
|
debug('array or any type at path %s', path);
|
|
34
42
|
return;
|
|
@@ -78,9 +86,19 @@ function getEnvValues(schema) {
|
|
|
78
86
|
case 'null':
|
|
79
87
|
value = null;
|
|
80
88
|
break;
|
|
89
|
+
case 'string':
|
|
90
|
+
value = unparsedValue;
|
|
91
|
+
break;
|
|
92
|
+
case 'json':
|
|
93
|
+
value = JSON.parse(unparsedValue);
|
|
94
|
+
break;
|
|
81
95
|
default:
|
|
82
96
|
value = unparsedValue;
|
|
83
97
|
}
|
|
98
|
+
if (details.path === '') {
|
|
99
|
+
Object.assign(res, value);
|
|
100
|
+
continue;
|
|
101
|
+
}
|
|
84
102
|
lodash_1.default.set(res, details.path, value);
|
|
85
103
|
}
|
|
86
104
|
}
|
package/dist/env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";;;;;AAiFA,oCA4CC;AA5HD,oDAA4B;AAE5B,yCAA4C;AAE5C,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC;AAEjC,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAEnE,SAAS,cAAc,CAAC,MAAkB;IACxC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACvC,MAAM,OAAO,GAAW,EAAE,CAAC;IAE3B,SAAS,sBAAsB,CAAC,MAAkB,EAAE,IAAY;QAC9D,KAAK,CAAC,wCAAwC,EAAE,IAAI,CAAC,CAAC;QACtD,MAAM,aAAa,GAAI,MAAqC,CAAC,aAAa,CAAC,CAAC;QAE5E,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAc,CAAC,CAAC;QAEvG,MAAM,YAAY,GAAI,MAAsC,CAAC,cAAc,CAAC,KAAK,MAAM,CAAC;QAExF,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,aAAa,CAAC,GAAG;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI;aACL,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,aAAa,CAAC,GAAG;gBACvB,IAAI,EAAE,MAAM,CAAC,IAAe;gBAC5B,IAAI;aACL,CAAC;QACJ,CAAC;IACH,CAAC;IAED,SAAS,uBAAuB,CAAC,MAAkB,EAAE,IAAY;QAC/D,KAAK,CAAC,yCAAyC,EAAE,IAAI,CAAC,CAAC;QAEvD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAEzB,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAErC,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACvC,KAAK,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,qBAAqB,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACpC,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBACjC,KAAK,CAAC,6CAA6C,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBAChE,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;oBACvC,IAAI,OAAO,SAAS,KAAK,SAAS,EAAE,CAAC;wBACnC,uBAAuB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACpC,KAAK,CAAC,yCAAyC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBAC5D,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBAEzC,IAAI,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC9D,uBAAuB,CAAC,SAAS,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;gBAC3E,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,uBAAuB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAgB,YAAY,CAAC,MAAkB;IAC7C,MAAM,GAAG,GAAG,EAAE,CAAC;IAEf,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAEtC,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACpD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,KAAK,CAAC,yCAAyC,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,KAAc,CAAC;YAEnB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrB,KAAK,SAAS;oBACZ,KAAK,GAAG,aAAa,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;oBAC/C,MAAM;gBACR,KAAK,SAAS;oBACZ,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;oBAChC,MAAM;gBACR,KAAK,QAAQ;oBACX,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;oBAClC,MAAM;gBACR,KAAK,MAAM;oBACT,KAAK,GAAG,IAAI,CAAC;oBACb,MAAM;gBACR,KAAK,QAAQ;oBACX,KAAK,GAAG,aAAa,CAAC;oBACtB,MAAM;gBACR,KAAK,MAAM;oBACT,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBAClC,MAAM;gBACR;oBACE,KAAK,GAAG,aAAa,CAAC;YAC1B,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;gBACxB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC1B,SAAS;YACX,CAAC;YAED,gBAAM,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/dist/schemas.d.ts
CHANGED
package/dist/schemas.js
CHANGED
|
@@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.loadSchema = loadSchema;
|
|
7
7
|
const node_path_1 = __importDefault(require("node:path"));
|
|
8
8
|
const node_fs_1 = __importDefault(require("node:fs"));
|
|
9
|
-
const json_schema_ref_parser_1 =
|
|
9
|
+
const json_schema_ref_parser_1 = require("@apidevtools/json-schema-ref-parser");
|
|
10
10
|
const constants_1 = require("./constants");
|
|
11
11
|
const debug_1 = require("./utils/debug");
|
|
12
12
|
const errors_1 = require("./errors");
|
|
13
13
|
const debug = (0, debug_1.createDebug)('schemas');
|
|
14
|
-
const refParser = new json_schema_ref_parser_1
|
|
14
|
+
const refParser = new json_schema_ref_parser_1.$RefParser();
|
|
15
15
|
function loadSpecificSchema(relativePath) {
|
|
16
16
|
debug('loading specific schema at path %s', relativePath);
|
|
17
17
|
const fullPath = node_path_1.default.join(constants_1.SCHEMA_BASE_PATH, relativePath + '.schema.json');
|
package/dist/schemas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":";;;;;AA2BA,gCAqBC;AAhDD,0DAA6B;AAC7B,sDAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":";;;;;AA2BA,gCAqBC;AAhDD,0DAA6B;AAC7B,sDAAyB;AACzB,gFAA6E;AAC7E,2CAA8D;AAC9D,yCAA4C;AAC5C,qCAA6C;AAE7C,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,SAAS,CAAC,CAAC;AAErC,MAAM,SAAS,GAAG,IAAI,mCAAU,EAAE,CAAC;AAEnC,SAAS,kBAAkB,CAAC,YAAoB;IAC9C,KAAK,CAAC,oCAAoC,EAAE,YAAY,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,4BAAgB,EAAE,YAAY,GAAG,cAAc,CAAC,CAAC;IAE5E,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAA,0BAAiB,EAAC,qBAAqB,EAAE,0BAA0B,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;IACvG,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAe,CAAC;IAE1F,qFAAqF;IACrF,OAAO,MAAM,CAAC,GAAG,CAAC;IAElB,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,UAAU,CAAC,MAAkB;IACjD,KAAK,CAAC,sBAAsB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,kBAAkB,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE;QAC7D,WAAW,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;QAChC,OAAO,EAAE;YACP,WAAW,EAAE;gBACX,OAAO,EAAE,gCAAgC;gBACzC,KAAK,EAAE,CAAC;gBACR,IAAI,EAAE,CAAC,IAAsD,EAAE,EAAE;oBAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,yBAAa,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;wBAC1B,MAAM,IAAA,0BAAiB,EAAC,qBAAqB,EAAE,yBAAyB,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBACtG,CAAC;oBAED,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBACrC,CAAC;aACF;SACF;KACF,CAAC,CAAC;IACH,OAAO,kBAAkB,CAAC;AAC5B,CAAC"}
|
package/dist/types.d.ts
CHANGED
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAA,uEAAwE;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAA,uEAAwE;AAuF3D,QAAA,aAAa,GAAgC;IACxD,QAAQ,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,SAAS,CAAC;IACtD,oBAAoB,EAAE,KAAK;IAC3B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC9B,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACnC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE;aAChC;SACF;QACD,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACnC,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;QAChD,+BAA+B,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;QACpE,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;KACzE;CACF,CAAC"}
|
package/dist/validator.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ajv, { SchemaObject } from 'ajv/dist/2019';
|
|
2
2
|
import { ValidationError } from '@apideck/better-ajv-errors';
|
|
3
3
|
declare const ajvConfigValidator: import("ajv/dist/core").default;
|
|
4
4
|
export { ajvConfigValidator };
|
|
5
|
-
export declare const ajvOptionsValidator:
|
|
6
|
-
export declare function validate<T>(ajv:
|
|
5
|
+
export declare const ajvOptionsValidator: ajv;
|
|
6
|
+
export declare function validate<T>(ajv: ajv, schema: SchemaObject, data: unknown): [ValidationError[], undefined] | [undefined, T];
|
package/dist/validator.js
CHANGED
|
@@ -18,7 +18,7 @@ const ajvConfigValidator = (0, ajv_formats_1.default)(new _2019_1.default({
|
|
|
18
18
|
allErrors: true,
|
|
19
19
|
verbose: true,
|
|
20
20
|
discriminator: true,
|
|
21
|
-
keywords: ['x-env-value'],
|
|
21
|
+
keywords: ['x-env-value', 'x-env-format'],
|
|
22
22
|
}));
|
|
23
23
|
exports.ajvConfigValidator = ajvConfigValidator;
|
|
24
24
|
ajvConfigValidator.addMetaSchema(draft7MetaSchema, 'http://json-schema.org/draft-07/schema#');
|
|
@@ -34,7 +34,6 @@ function validate(ajv, schema, data) {
|
|
|
34
34
|
const valid = ajv.validate(schema, clonedData);
|
|
35
35
|
if (!valid) {
|
|
36
36
|
debug('validation failed with errors %j', ajv.errors);
|
|
37
|
-
// eslint-disable-next-line @typescript-eslint/no-magic-numbers
|
|
38
37
|
const betterErrors = (0, better_ajv_errors_1.betterAjvErrors)({ schema: schema, data, errors: ajv.errors });
|
|
39
38
|
return [betterErrors, undefined];
|
|
40
39
|
}
|
package/dist/validator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":";;;;;;AAkCA,
|
|
1
|
+
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":";;;;;;AAkCA,4BAaC;AA/CD,qCAAuC;AACvC,0DAAmE;AACnE,8DAAqC;AACrC,oDAA4B;AAC5B,kEAA8E;AAC9E,yCAA4C;AAE5C,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,WAAW,CAAC,CAAC;AAEvC,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CACjC,IAAA,sBAAY,EAAC,OAAO,CAAC,OAAO,CAAC,yCAAyC,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAC7E,CAAC;AAErB,MAAM,kBAAkB,GAAG,IAAA,qBAAU,EACnC,IAAI,eAAG,CAAC;IACN,WAAW,EAAE,IAAI;IACjB,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC;CAC1C,CAAC,CACH,CAAC;AAIO,gDAAkB;AAF3B,kBAAkB,CAAC,aAAa,CAAC,gBAAgB,EAAE,yCAAyC,CAAC,CAAC;AAIjF,QAAA,mBAAmB,GAAG,IAAI,eAAG,CAAC;IACzC,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,IAAI;IACjB,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;CACd,CAAC,CAAC;AAEH,SAAgB,QAAQ,CAAI,GAAQ,EAAE,MAAoB,EAAE,IAAa;IACvE,KAAK,CAAC,mCAAmC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAE7D,MAAM,UAAU,GAAG,gBAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,CAAC,kCAAkC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,IAAA,mCAAe,EAAC,EAAE,MAAM,EAAE,MAAyD,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACtI,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC/B,OAAO,CAAC,SAAS,EAAE,UAAe,CAAC,CAAC;AACtC,CAAC"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const PACKAGE_VERSION = "2.
|
|
1
|
+
export declare const PACKAGE_VERSION = "2.1.0";
|
package/dist/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@map-colonies/config",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "Config package for MapColonies with support for central config management",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -72,27 +72,30 @@
|
|
|
72
72
|
},
|
|
73
73
|
"devDependencies": {
|
|
74
74
|
"@commitlint/cli": "^19.6.1",
|
|
75
|
-
"@map-colonies/infra-copilot-instructions": "^1.0.0",
|
|
76
75
|
"@map-colonies/commitlint-config": "^1.1.0",
|
|
77
|
-
"@map-colonies/eslint-config": "^
|
|
76
|
+
"@map-colonies/eslint-config": "^6.0.0",
|
|
77
|
+
"@map-colonies/infra-copilot-instructions": "^1.0.0",
|
|
78
|
+
"@map-colonies/tsconfig": "^1.0.0",
|
|
79
|
+
"@swc/core": "^1.7.26",
|
|
80
|
+
"@swc/jest": "^0.2.36",
|
|
78
81
|
"@types/config": "^3.3.4",
|
|
79
82
|
"@types/debug": "^4.1.12",
|
|
80
83
|
"@types/jest": "^29.5.12",
|
|
81
84
|
"@types/node": "^14.14.12",
|
|
85
|
+
"@types/semver": "^7.5.8",
|
|
82
86
|
"commitlint": "^19.6.1",
|
|
83
87
|
"cross-env": "^7.0.3",
|
|
84
88
|
"cz-conventional-changelog": "^3.3.0",
|
|
85
|
-
"eslint": "^
|
|
89
|
+
"eslint": "^9.22.0",
|
|
90
|
+
"eslint-plugin-jest": "^28.11.0",
|
|
86
91
|
"husky": "^9.1.7",
|
|
87
92
|
"jest": "^29.7.0",
|
|
93
|
+
"jest-extended": "^4.0.2",
|
|
88
94
|
"prettier": "^3.4.2",
|
|
89
95
|
"pretty-quick": "^4.0.0",
|
|
90
|
-
"typescript": "^5.4.5",
|
|
91
96
|
"prom-client": "^15.0.0",
|
|
92
|
-
"
|
|
93
|
-
"
|
|
94
|
-
"
|
|
95
|
-
"@swc/jest": "^0.2.36",
|
|
96
|
-
"typedoc": "0.27.6"
|
|
97
|
+
"rimraf": "^6.0.1",
|
|
98
|
+
"typedoc": "0.27.6",
|
|
99
|
+
"typescript": "^5.4.5"
|
|
97
100
|
}
|
|
98
101
|
}
|