@map-colonies/config 1.0.0 → 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 CHANGED
@@ -71,26 +71,34 @@ This package allows you to configure various options for loading and managing co
71
71
 
72
72
  ### `schema`
73
73
  - **Type**: `T extends SchemaWithType`
74
+ - **Optional**: `false`
74
75
  - **Description**: The schema of the configuration object.
75
76
 
76
77
  ### `configName`
77
78
  - **Type**: `string`
79
+ - **Optional**: `true`
80
+ -
78
81
  - **Description**: The name of the remote configuration.
79
82
  - **Environment Variable**: `CONFIG_NAME`
80
83
 
81
84
  ### `version`
82
85
  - **Type**: `'latest' | number`
86
+ - **Optional**: `true`
87
+ - **Default**: `latest`
83
88
  - **Description**: The version of the remote configuration. It can be either `'latest'` or a number.
84
89
  - **Environment Variable**: `CONFIG_VERSION`
85
90
 
86
91
  ### `configServerUrl`
87
92
  - **Type**: `string`
93
+ - **Optional**: `true`
94
+ - **Default**: `http://localhost:8080`
88
95
  - **Description**: The URL of the configuration server.
89
96
  - **Environment Variable**: `CONFIG_SERVER_URL`
90
97
 
91
98
  ### `offlineMode`
92
99
  - **Type**: `boolean`
93
100
  - **Optional**: `true`
101
+ - **Default**: `false`
94
102
  - **Description**: Indicates whether the configuration should be loaded in offline mode.
95
103
  - **Environment Variable**: `CONFIG_OFFLINE_MODE`
96
104
 
@@ -102,34 +110,10 @@ This package allows you to configure various options for loading and managing co
102
110
 
103
111
  ### `localConfigPath`
104
112
  - **Type**: `string`
113
+ - **Optional**: `true`
105
114
  - **Default**: `./config`
106
115
  - **Description**: The path to the local configuration folder.
107
116
 
108
- ## JSON Schema
109
-
110
- The options are validated against the following JSON schema:
111
-
112
- ```json
113
- {
114
-   "required": ["configName", "configServerUrl", "version"],
115
-   "additionalProperties": false,
116
-   "type": "object",
117
-   "properties": {
118
-     "configName": { "type": "string" },
119
-     "version": {
120
-       "oneOf": [
121
-         { "type": "string", "const": "latest" },
122
-         { "type": "integer", "minimum": 1 }
123
-       ]
124
-     },
125
-     "configServerUrl": { "type": "string" },
126
-     "offlineMode": { "type": "boolean", "nullable": true },
127
-     "ignoreServerIsOlderVersionError": { "type": "boolean", "nullable": true },
128
-     "localConfigPath": { "type": "string", "default": "./config" }
129
-   }
130
- }
131
- ```
132
-
133
117
  ## Environment Variable Configuration
134
118
 
135
119
  The following environment variables can be used to configure the options:
@@ -1,4 +1,5 @@
1
1
  export declare const LOCAL_SCHEMAS_PACKAGE_VERSION: string;
2
+ export declare const PACKAGE_NAME: string;
2
3
  export declare const SCHEMA_DOMAIN = "https://mapcolonies.com/";
3
4
  export declare const SCHEMAS_PACKAGE_RESOLVED_PATH: string;
4
5
  export declare const SCHEMA_BASE_PATH: string;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,6BAA6B,QAAgG,CAAC;AAE3I,eAAO,MAAM,aAAa,6BAA6B,CAAC;AAExD,eAAO,MAAM,6BAA6B,QAA2C,CAAC;AACtF,eAAO,MAAM,gBAAgB,QAA6F,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,6BAA6B,QAAgG,CAAC;AAC3I,eAAO,MAAM,YAAY,QAAyE,CAAC;AAEnG,eAAO,MAAM,aAAa,6BAA6B,CAAC;AAExD,eAAO,MAAM,6BAA6B,QAA2C,CAAC;AACtF,eAAO,MAAM,gBAAgB,QAA6F,CAAC"}
package/dist/constants.js CHANGED
@@ -3,11 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SCHEMA_BASE_PATH = exports.SCHEMAS_PACKAGE_RESOLVED_PATH = exports.SCHEMA_DOMAIN = exports.LOCAL_SCHEMAS_PACKAGE_VERSION = void 0;
6
+ exports.SCHEMA_BASE_PATH = exports.SCHEMAS_PACKAGE_RESOLVED_PATH = exports.SCHEMA_DOMAIN = exports.PACKAGE_NAME = exports.LOCAL_SCHEMAS_PACKAGE_VERSION = void 0;
7
7
  const node_path_1 = __importDefault(require("node:path"));
8
8
  const read_pkg_1 = require("@map-colonies/read-pkg");
9
9
  const schemasPackagePathBuildPath = require.resolve('@map-colonies/schemas').substring(0, require.resolve('@map-colonies/schemas').indexOf('build'));
10
10
  exports.LOCAL_SCHEMAS_PACKAGE_VERSION = (0, read_pkg_1.readPackageJsonSync)(node_path_1.default.join(schemasPackagePathBuildPath, 'package.json')).version;
11
+ exports.PACKAGE_NAME = (0, read_pkg_1.readPackageJsonSync)('package.json').name ?? 'package-name-not-defined';
11
12
  exports.SCHEMA_DOMAIN = 'https://mapcolonies.com/';
12
13
  exports.SCHEMAS_PACKAGE_RESOLVED_PATH = require.resolve('@map-colonies/schemas');
13
14
  exports.SCHEMA_BASE_PATH = exports.SCHEMAS_PACKAGE_RESOLVED_PATH.substring(0, exports.SCHEMAS_PACKAGE_RESOLVED_PATH.lastIndexOf('/'));
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAC7B,qDAA6D;AAE7D,MAAM,2BAA2B,GAAG,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AACxI,QAAA,6BAA6B,GAAG,IAAA,8BAAmB,EAAC,mBAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,cAAc,CAAC,CAAC,CAAC,OAAiB,CAAC;AAE9H,QAAA,aAAa,GAAG,0BAA0B,CAAC;AAE3C,QAAA,6BAA6B,GAAG,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACzE,QAAA,gBAAgB,GAAG,qCAA6B,CAAC,SAAS,CAAC,CAAC,EAAE,qCAA6B,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAC7B,qDAA6D;AAE7D,MAAM,2BAA2B,GAAG,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AACxI,QAAA,6BAA6B,GAAG,IAAA,8BAAmB,EAAC,mBAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,cAAc,CAAC,CAAC,CAAC,OAAiB,CAAC;AAC9H,QAAA,YAAY,GAAG,IAAA,8BAAmB,EAAC,cAAc,CAAC,CAAC,IAAI,IAAI,0BAA0B,CAAC;AAEtF,QAAA,aAAa,GAAG,0BAA0B,CAAC;AAE3C,QAAA,6BAA6B,GAAG,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACzE,QAAA,gBAAgB,GAAG,qCAA6B,CAAC,SAAS,CAAC,CAAC,EAAE,qCAA6B,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAiB,MAAM,SAAS,CAAC;AAwBrD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAoB5E;AAED,wBAAgB,UAAU,IAAI,WAAW,CAQxC"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAiB,MAAM,SAAS,CAAC;AA+BrD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAmB5E;AAED,wBAAgB,UAAU,IAAI,WAAW,CAQxC"}
package/dist/options.js CHANGED
@@ -9,7 +9,13 @@ const types_1 = require("./types");
9
9
  const validator_1 = require("./validator");
10
10
  const debug_1 = require("./utils/debug");
11
11
  const errors_1 = require("./errors");
12
+ const constants_1 = require("./constants");
12
13
  const debug = (0, debug_1.createDebug)('options');
14
+ const defaultOptions = {
15
+ configName: constants_1.PACKAGE_NAME,
16
+ configServerUrl: 'http://localhost:8080',
17
+ version: 'latest',
18
+ };
13
19
  const envOptions = {
14
20
  configName: process.env.CONFIG_NAME,
15
21
  configServerUrl: process.env.CONFIG_SERVER_URL,
@@ -25,8 +31,8 @@ for (const key in envOptions) {
25
31
  }
26
32
  let baseOptions = undefined;
27
33
  function initializeOptions(options) {
28
- debug('initializing options with %j and env %j', options, envOptions);
29
- const mergedOptions = (0, deepmerge_1.default)(options, envOptions);
34
+ debug('initializing options with default options: %j function input: %j and environment variables: %j', defaultOptions, options, envOptions);
35
+ const mergedOptions = deepmerge_1.default.all([defaultOptions, options, envOptions]);
30
36
  debug('merged options: %j', mergedOptions);
31
37
  const [errors, validatedOptions] = (0, validator_1.validate)(validator_1.ajvOptionsValidator, types_1.optionsSchema, mergedOptions);
32
38
  if (errors) {
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAClC,mCAAqD;AACrD,2CAA4D;AAC5D,yCAA4C;AAC5C,qCAA6C;AAE7C,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,SAAS,CAAC,CAAC;AAErC,MAAM,UAAU,GAA+C;IAC7D,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;IACnC,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;IAC9C,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;IACnC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;IAC5C,+BAA+B,EAAE,OAAO,CAAC,GAAG,CAAC,2CAA2C;CACzF,CAAC;AAEF,iFAAiF;AACjF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;IAC7B,IAAI,UAAU,CAAC,GAAwB,CAAC,KAAK,SAAS,EAAE,CAAC;QACvD,OAAO,UAAU,CAAC,GAAwB,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,IAAI,WAAW,GAA4B,SAAS,CAAC;AAErD,SAAgB,iBAAiB,CAAC,OAA6B;IAC7D,KAAK,CAAC,yCAAyC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACtE,MAAM,aAAa,GAAG,IAAA,mBAAS,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAErD,KAAK,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;IAE3C,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,IAAA,oBAAQ,EAAC,+BAAmB,EAAE,qBAAa,EAAE,aAAa,CAAC,CAAC;IAE/F,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,IAAA,0BAAiB,EACrB,uBAAuB,EACvB,6GAA6G,EAC7G,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACxC,WAAW,GAAG,gBAA+B,CAAC;IAC9C,OAAO,WAAW,CAAC;AACrB,CAAC;AApBD,8CAoBC;AAED,SAAgB,UAAU;IACxB,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC3B,OAAO,WAAW,CAAC;AACrB,CAAC;AARD,gCAQC"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAkC;AAClC,mCAAqD;AACrD,2CAA4D;AAC5D,yCAA4C;AAC5C,qCAA6C;AAC7C,2CAA2C;AAE3C,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,SAAS,CAAC,CAAC;AAErC,MAAM,cAAc,GAAgB;IAClC,UAAU,EAAE,wBAAY;IACxB,eAAe,EAAE,uBAAuB;IACxC,OAAO,EAAE,QAAQ;CAClB,CAAC;AAEF,MAAM,UAAU,GAA+C;IAC7D,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;IACnC,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;IAC9C,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;IACnC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;IAC5C,+BAA+B,EAAE,OAAO,CAAC,GAAG,CAAC,2CAA2C;CACzF,CAAC;AAEF,iFAAiF;AACjF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;IAC7B,IAAI,UAAU,CAAC,GAAwB,CAAC,KAAK,SAAS,EAAE,CAAC;QACvD,OAAO,UAAU,CAAC,GAAwB,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,IAAI,WAAW,GAA4B,SAAS,CAAC;AAErD,SAAgB,iBAAiB,CAAC,OAA6B;IAC7D,KAAK,CAAC,gGAAgG,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAC7I,MAAM,aAAa,GAAG,mBAAS,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAC3E,KAAK,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;IAE3C,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,IAAA,oBAAQ,EAAC,+BAAmB,EAAE,qBAAa,EAAE,aAAa,CAAC,CAAC;IAE/F,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,IAAA,0BAAiB,EACrB,uBAAuB,EACvB,6GAA6G,EAC7G,MAAM,CACP,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACxC,WAAW,GAAG,gBAA+B,CAAC;IAC9C,OAAO,WAAW,CAAC;AACrB,CAAC;AAnBD,8CAmBC;AAED,SAAgB,UAAU;IACxB,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC3B,OAAO,WAAW,CAAC;AACrB,CAAC;AARD,gCAQC"}
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":";AAEA,OAAO,UAAU,EAAE,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAO7E,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAmB,CAAC;AAanC,wBAAsB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,WAAW,CAAC,CAiB7F"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":";AAEA,OAAO,UAAU,EAAE,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAO7E,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAmB,CAAC;AAkBnC,wBAAsB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,WAAW,CAAC,CAiB7F"}
package/dist/schemas.js CHANGED
@@ -18,7 +18,10 @@ function loadSpecificSchema(relativePath) {
18
18
  if (!node_fs_1.default.existsSync(fullPath)) {
19
19
  throw (0, errors_1.createConfigError)(`schemaNotFoundError`, `Schema not found at path`, { schemaPath: fullPath });
20
20
  }
21
- return JSON.parse(node_fs_1.default.readFileSync(fullPath, { encoding: 'utf-8' }));
21
+ const schema = JSON.parse(node_fs_1.default.readFileSync(fullPath, { encoding: 'utf-8' }));
22
+ // removed to prevent the "reference resolves to more than one schema" error from ajv
23
+ delete schema.$id;
24
+ return schema;
22
25
  }
23
26
  async function loadSchema(schema) {
24
27
  debug('loading schema id %s', schema.$id);
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAC7B,sDAAyB;AACzB,iGAA6E;AAC7E,2CAA8D;AAC9D,yCAA4C;AAC5C,qCAA6C;AAE7C,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,SAAS,CAAC,CAAC;AAErC,MAAM,SAAS,GAAG,IAAI,gCAAU,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,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAe,CAAC;AACpF,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,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBACrC,CAAC;aACF;SACF;KACF,CAAC,CAAC;IACH,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAjBD,gCAiBC"}
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA6B;AAC7B,sDAAyB;AACzB,iGAA6E;AAC7E,2CAA8D;AAC9D,yCAA4C;AAC5C,qCAA6C;AAE7C,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,SAAS,CAAC,CAAC;AAErC,MAAM,SAAS,GAAG,IAAI,gCAAU,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,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBACrC,CAAC;aACF;SACF;KACF,CAAC,CAAC;IACH,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAjBD,gCAiBC"}
package/dist/types.d.ts CHANGED
@@ -62,7 +62,7 @@ export interface BaseOptions {
62
62
  /**
63
63
  * Represents the options for configuration.
64
64
  */
65
- export type ConfigOptions<T extends SchemaWithType> = Prettify<BaseOptions & {
65
+ export type ConfigOptions<T extends SchemaWithType> = Prettify<Partial<BaseOptions> & {
66
66
  /**
67
67
  * The schema of the configuration object.
68
68
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAErC,KAAK,QAAQ,CAAC,CAAC,IAAI;KAChB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAErB,GAAG,EAAE,CAAC;AAEP,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAE3E,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAEhD,MAAM,WAAW,MAAM;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QACN,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,cAAc,IAAI,QAAQ,CAC5D,WAAW,GAAG;IACZ;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC;CACX,CACF,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,WAAW,CAiBrD,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B;;;;;OAKG;IACH,GAAG,EAAE,CAAC,KAAK,SAAS,MAAM,EAAE,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAErE;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhB;;;OAGG;IACH,cAAc,EAAE,MAAM;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF;;;OAGG;IACH,kBAAkB,EAAE,MAAM,WAAW,CAAC;CACvC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAErC,KAAK,QAAQ,CAAC,CAAC,IAAI;KAChB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAErB,GAAG,EAAE,CAAC;AAEP,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAE3E,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAEhD,MAAM,WAAW,MAAM;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE;QACN,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC3B;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,cAAc,IAAI,QAAQ,CAC5D,OAAO,CAAC,WAAW,CAAC,GAAG;IACrB;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC;CACX,CACF,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,WAAW,CAiBrD,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B;;;;;OAKG;IACH,GAAG,EAAE,CAAC,KAAK,SAAS,MAAM,EAAE,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAErE;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhB;;;OAGG;IACH,cAAc,EAAE,MAAM;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF;;;OAGG;IACH,kBAAkB,EAAE,MAAM,WAAW,CAAC;CACvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,EAAE,EAAmB,YAAY,EAAE,MAAM,eAAe,CAAC;AAGnE,OAAO,EAAE,eAAe,EAAmB,MAAM,4BAA4B,CAAC;AAS9E,QAAA,MAAM,kBAAkB,iCAOvB,CAAC;AAIF,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,eAAO,MAAM,mBAAmB,KAK9B,CAAC;AAEH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,eAAe,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAc1H"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,EAAE,EAAmB,YAAY,EAAE,MAAM,eAAe,CAAC;AAGnE,OAAO,EAAE,eAAe,EAAmB,MAAM,4BAA4B,CAAC;AAS9E,QAAA,MAAM,kBAAkB,iCAQvB,CAAC;AAIF,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,eAAO,MAAM,mBAAmB,KAK9B,CAAC;AAEH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,eAAe,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAc1H"}
package/dist/validator.js CHANGED
@@ -16,10 +16,11 @@ const ajvConfigValidator = (0, ajv_formats_1.default)(new _2019_1.default({
16
16
  useDefaults: true,
17
17
  allErrors: true,
18
18
  verbose: true,
19
+ discriminator: true,
19
20
  keywords: ['x-env-value'],
20
21
  }));
21
22
  exports.ajvConfigValidator = ajvConfigValidator;
22
- ajvConfigValidator.addMetaSchema(draft7MetaSchema);
23
+ ajvConfigValidator.addMetaSchema(draft7MetaSchema, 'http://json-schema.org/draft-07/schema#');
23
24
  exports.ajvOptionsValidator = new _2019_1.default({
24
25
  useDefaults: true,
25
26
  coerceTypes: true,
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":";;;;;;AAAA,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,QAAQ,EAAE,CAAC,aAAa,CAAC;CAC1B,CAAC,CACH,CAAC;AAIO,gDAAkB;AAF3B,kBAAkB,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;AAItC,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,+DAA+D;QAC/D,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;AAdD,4BAcC"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":";;;;;;AAAA,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,CAAC;CAC1B,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,+DAA+D;QAC/D,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;AAdD,4BAcC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@map-colonies/config",
3
- "version": "1.0.0",
3
+ "version": "1.2.0",
4
4
  "description": "Config package for MapColonies with support for central config management",
5
5
  "main": "dist/index.js",
6
6
  "exports": {
@@ -61,7 +61,7 @@
61
61
  "undici": "^6.18.2"
62
62
  },
63
63
  "peerDependencies": {
64
- "@map-colonies/schemas": "^0.2.0"
64
+ "@map-colonies/schemas": "^1.0.0"
65
65
  },
66
66
  "devDependencies": {
67
67
  "@commitlint/cli": "^11.0.0",
package/dist/avi.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=avi.d.ts.map
package/dist/avi.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"avi.d.ts","sourceRoot":"","sources":["../src/avi.ts"],"names":[],"mappings":""}
package/dist/avi.js DELETED
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const schemas_1 = require("@map-colonies/schemas");
4
- const config_1 = require("./config");
5
- (async () => {
6
- const c = await (0, config_1.config)({
7
- schema: schemas_1.threeDFileSyncerV1,
8
- configName: 'threeDFileSyncerV1',
9
- configServerUrl: 'http://localhost:3000',
10
- version: 1,
11
- offlineMode: true,
12
- });
13
- const a = c.get('telemetry.logger');
14
- console.log(a);
15
- })().catch(console.error);
16
- //# sourceMappingURL=avi.js.map
package/dist/avi.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"avi.js","sourceRoot":"","sources":["../src/avi.ts"],"names":[],"mappings":";;AAAA,mDAA2D;AAC3D,qCAAkC;AAElC,CAAC,KAAK,IAAI,EAAE;IACV,MAAM,CAAC,GAAG,MAAM,IAAA,eAAM,EAAC;QACrB,MAAM,EAAE,4BAAkB;QAC1B,UAAU,EAAE,oBAAoB;QAChC,eAAe,EAAE,uBAAuB;QACxC,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}