@rosen-bridge/config 0.1.0 → 0.2.1
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/CHANGELOG.md +12 -0
- package/dist/config.d.ts +143 -126
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +570 -556
- package/dist/index.js +1 -1
- package/dist/schema/Validators/fieldProperties.d.ts +27 -24
- package/dist/schema/Validators/fieldProperties.d.ts.map +1 -1
- package/dist/schema/Validators/fieldProperties.js +215 -248
- package/dist/schema/types/fields.d.ts +24 -22
- package/dist/schema/types/fields.d.ts.map +1 -1
- package/dist/schema/types/fields.js +1 -1
- package/dist/schema/types/validations.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/value/validators.d.ts.map +1 -1
- package/dist/value/validators.js +149 -176
- package/lib/config.ts +128 -50
- package/lib/schema/Validators/fieldProperties.ts +18 -0
- package/lib/schema/types/fields.ts +8 -1
- package/lib/value/validators.ts +5 -0
- package/package.json +1 -1
- package/tests/config.spec.ts +61 -1
- package/tests/configTestData.ts +251 -12
- package/tsconfig.build.tsbuildinfo +1 -1
|
@@ -1,37 +1,39 @@
|
|
|
1
1
|
import { VBoolean, VNumeric, VString } from './validations';
|
|
2
2
|
export type PrimitiveValue = string | boolean | number | bigint;
|
|
3
3
|
export type ConfigSchema = Record<string, ConfigField>;
|
|
4
|
-
export type ConfigField = ObjectField | PrimitiveField;
|
|
5
|
-
export type PrimitiveField =
|
|
6
|
-
| StringField
|
|
7
|
-
| NumberField
|
|
8
|
-
| BigIntField
|
|
9
|
-
| BooleanField;
|
|
4
|
+
export type ConfigField = ObjectField | ArrayField | PrimitiveField;
|
|
5
|
+
export type PrimitiveField = StringField | NumberField | BigIntField | BooleanField;
|
|
10
6
|
export interface ObjectField {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
7
|
+
type: 'object';
|
|
8
|
+
description?: string;
|
|
9
|
+
label?: string;
|
|
10
|
+
children: ConfigSchema;
|
|
11
|
+
}
|
|
12
|
+
export interface ArrayField {
|
|
13
|
+
type: 'array';
|
|
14
|
+
description?: string;
|
|
15
|
+
label?: string;
|
|
16
|
+
items: ConfigField;
|
|
15
17
|
}
|
|
16
18
|
export interface GenericField<T> {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
default?: T;
|
|
20
|
+
description?: string;
|
|
21
|
+
label?: string;
|
|
20
22
|
}
|
|
21
23
|
export interface StringField extends GenericField<string> {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
+
type: 'string';
|
|
25
|
+
validations?: VString[];
|
|
24
26
|
}
|
|
25
27
|
export interface NumberField extends GenericField<number> {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
+
type: 'number';
|
|
29
|
+
validations?: VNumeric<number>[];
|
|
28
30
|
}
|
|
29
31
|
export interface BigIntField extends GenericField<bigint> {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
type: 'bigint';
|
|
33
|
+
validations?: VNumeric<bigint>[];
|
|
32
34
|
}
|
|
33
35
|
export interface BooleanField extends GenericField<boolean> {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
+
type: 'boolean';
|
|
37
|
+
validations?: VBoolean[];
|
|
36
38
|
}
|
|
37
|
-
//# sourceMappingURL=fields.d.ts.map
|
|
39
|
+
//# sourceMappingURL=fields.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../lib/schema/types/fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhE,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../lib/schema/types/fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhE,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,cAAc,CAAC;AAEpE,MAAM,MAAM,cAAc,GACtB,WAAW,GACX,WAAW,GACX,WAAW,GACX,YAAY,CAAC;AAEjB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,WAAW,CAAC;CACpB;AAED,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAY,SAAQ,YAAY,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,WAAY,SAAQ,YAAY,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,WAAY,SAAQ,YAAY,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY,CAAC,OAAO,CAAC;IACzD,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC1B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3NjaGVtYS90eXBlcy9maWVsZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZCb29sZWFuLCBWTnVtZXJpYywgVlN0cmluZyB9IGZyb20gJy4vdmFsaWRhdGlvbnMnO1xuXG5leHBvcnQgdHlwZSBQcmltaXRpdmVWYWx1ZSA9IHN0cmluZyB8IGJvb2xlYW4gfCBudW1iZXIgfCBiaWdpbnQ7XG5cbmV4cG9ydCB0eXBlIENvbmZpZ1NjaGVtYSA9IFJlY29yZDxzdHJpbmcsIENvbmZpZ0ZpZWxkPjtcblxuZXhwb3J0IHR5cGUgQ29uZmlnRmllbGQgPSBPYmplY3RGaWVsZCB8IEFycmF5RmllbGQgfCBQcmltaXRpdmVGaWVsZDtcblxuZXhwb3J0IHR5cGUgUHJpbWl0aXZlRmllbGQgPVxuICB8IFN0cmluZ0ZpZWxkXG4gIHwgTnVtYmVyRmllbGRcbiAgfCBCaWdJbnRGaWVsZFxuICB8IEJvb2xlYW5GaWVsZDtcblxuZXhwb3J0IGludGVyZmFjZSBPYmplY3RGaWVsZCB7XG4gIHR5cGU6ICdvYmplY3QnO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGNoaWxkcmVuOiBDb25maWdTY2hlbWE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXJyYXlGaWVsZCB7XG4gIHR5cGU6ICdhcnJheSc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBsYWJlbD86IHN0cmluZztcbiAgaXRlbXM6IENvbmZpZ0ZpZWxkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdlbmVyaWNGaWVsZDxUPiB7XG4gIGRlZmF1bHQ/OiBUO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RyaW5nRmllbGQgZXh0ZW5kcyBHZW5lcmljRmllbGQ8c3RyaW5nPiB7XG4gIHR5cGU6ICdzdHJpbmcnO1xuICB2YWxpZGF0aW9ucz86IFZTdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOdW1iZXJGaWVsZCBleHRlbmRzIEdlbmVyaWNGaWVsZDxudW1iZXI+IHtcbiAgdHlwZTogJ251bWJlcic7XG4gIHZhbGlkYXRpb25zPzogVk51bWVyaWM8bnVtYmVyPltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJpZ0ludEZpZWxkIGV4dGVuZHMgR2VuZXJpY0ZpZWxkPGJpZ2ludD4ge1xuICB0eXBlOiAnYmlnaW50JztcbiAgdmFsaWRhdGlvbnM/OiBWTnVtZXJpYzxiaWdpbnQ+W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQm9vbGVhbkZpZWxkIGV4dGVuZHMgR2VuZXJpY0ZpZWxkPGJvb2xlYW4+IHtcbiAgdHlwZTogJ2Jvb2xlYW4nO1xuICB2YWxpZGF0aW9ucz86IFZCb29sZWFuW107XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvc2NoZW1hL3R5cGVzL3ZhbGlkYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcmltaXRpdmVWYWx1ZSB9IGZyb20gJy4vZmllbGRzJztcblxuZXhwb3J0IHR5cGUgVmFsaWRhdGlvbiA9XG4gIHwgVkFsbFxuICB8IFZTdHJpbmdcbiAgfCBWQm9vbGVhblxuICB8IFZOdW1lcmljPG51bWJlcj5cbiAgfCBWTnVtZXJpYzxiaWdpbnQ+O1xuXG5leHBvcnQgaW50ZXJmYWNlIFdoZW4ge1xuICBwYXRoOiBzdHJpbmc7XG4gIHZhbHVlOiBQcmltaXRpdmVWYWx1ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWR2VuZXJpYyB7XG4gIGVycm9yPzogc3RyaW5nO1xuICB3aGVuPzogV2hlbjtcbn1cblxuLy8gdmFsaWRhdG9ycyBmb3IgYWxsIHR5cGVzXG5leHBvcnQgdHlwZSBWQWxsID0gVlJlcXVpcmVkO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZSZXF1aXJlZCBleHRlbmRzIFZHZW5lcmljIHtcbiAgcmVxdWlyZWQ6IGJvb2xlYW47XG59XG5cbi8vIHN0cmluZyB2YWxpZGF0b3JzXG5leHBvcnQgdHlwZSBWU3RyaW5nID0gVkFsbCB8IFZSZWdleCB8IFZDaG9pY2VzO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZSZWdleCBleHRlbmRzIFZHZW5lcmljIHtcbiAgcmVnZXg6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWQ2hvaWNlcyBleHRlbmRzIFZHZW5lcmljIHtcbiAgY2hvaWNlczogc3RyaW5nW107XG59XG5cbi8vIGJvb2xlYW4gdmFsaWRhdG9yc1xuZXhwb3J0IHR5cGUgVkJvb2xlYW4gPSBWQWxsO1xuXG4vLyBudW1lcmljIHZhbGlkYXRvcnNcbmV4cG9ydCB0eXBlIFZOdW1lcmljPFQgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+ID1cbiAgfCBWQWxsXG4gIHwgVkdyZWF0ZXI8VD5cbiAgfCBWR3JlYXRlckVxdWFsPFQ+XG4gIHwgVkxlc3M8VD5cbiAgfCBWTGVzc0VxdWFsPFQ+O1xuXG5leHBvcnQgaW50ZXJmYWNlIFZHcmVhdGVyPFQgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+IGV4dGVuZHMgVkdlbmVyaWMge1xuICBndDogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWR3JlYXRlckVxdWFsPFQgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+IGV4dGVuZHMgVkdlbmVyaWMge1xuICBndGU6IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVkxlc3M8VCBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4gZXh0ZW5kcyBWR2VuZXJpYyB7XG4gIGx0OiBUO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZMZXNzRXF1YWw8VCBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4gZXh0ZW5kcyBWR2VuZXJpYyB7XG4gIGx0ZTogVDtcbn1cbiJdfQ==
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvc2NoZW1hL3R5cGVzL3ZhbGlkYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcmltaXRpdmVWYWx1ZSB9IGZyb20gJy4vZmllbGRzJztcblxuZXhwb3J0IHR5cGUgVmFsaWRhdGlvbiA9XG4gIHwgVkFsbFxuICB8IFZTdHJpbmdcbiAgfCBWQm9vbGVhblxuICB8IFZOdW1lcmljPG51bWJlcj5cbiAgfCBWTnVtZXJpYzxiaWdpbnQ+O1xuXG5leHBvcnQgaW50ZXJmYWNlIFdoZW4ge1xuICBwYXRoOiBzdHJpbmc7XG4gIHZhbHVlOiBQcmltaXRpdmVWYWx1ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWR2VuZXJpYyB7XG4gIGVycm9yPzogc3RyaW5nO1xuICB3aGVuPzogV2hlbjtcbn1cblxuLy8gdmFsaWRhdG9ycyBmb3IgYWxsIHR5cGVzXG5leHBvcnQgdHlwZSBWQWxsID0gVlJlcXVpcmVkO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZSZXF1aXJlZCBleHRlbmRzIFZHZW5lcmljIHtcbiAgcmVxdWlyZWQ6IGJvb2xlYW47XG59XG5cbi8vIHN0cmluZyB2YWxpZGF0b3JzXG5leHBvcnQgdHlwZSBWU3RyaW5nID0gVkFsbCB8IFZSZWdleCB8IFZDaG9pY2VzO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZSZWdleCBleHRlbmRzIFZHZW5lcmljIHtcbiAgcmVnZXg6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWQ2hvaWNlcyBleHRlbmRzIFZHZW5lcmljIHtcbiAgY2hvaWNlczogc3RyaW5nW107XG59XG5cbi8vIGJvb2xlYW4gdmFsaWRhdG9yc1xuZXhwb3J0IHR5cGUgVkJvb2xlYW4gPSBWQWxsO1xuXG4vLyBudW1lcmljIHZhbGlkYXRvcnNcbmV4cG9ydCB0eXBlIFZOdW1lcmljPFQgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+ID1cbiAgfCBWQWxsXG4gIHwgVkdyZWF0ZXI8VD5cbiAgfCBWR3JlYXRlckVxdWFsPFQ+XG4gIHwgVkxlc3M8VD5cbiAgfCBWTGVzc0VxdWFsPFQ+O1xuXG5leHBvcnQgaW50ZXJmYWNlIFZHcmVhdGVyPFQgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+IGV4dGVuZHMgVkdlbmVyaWMge1xuICBndDogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWR3JlYXRlckVxdWFsPFQgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQ+IGV4dGVuZHMgVkdlbmVyaWMge1xuICBndGU6IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVkxlc3M8VCBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4gZXh0ZW5kcyBWR2VuZXJpYyB7XG4gIGx0OiBUO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZMZXNzRXF1YWw8VCBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4gZXh0ZW5kcyBWR2VuZXJpYyB7XG4gIGx0ZTogVDtcbn1cbiJdfQ==
|