@rsdk/core 2.6.0-next.3 → 2.6.0-next.6
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/config.module.js.map +1 -1
- package/dist/config/context/config.context.d.ts +3 -3
- package/dist/config/context/config.context.js.map +1 -1
- package/dist/config/metadata/decorators/declare-property.decorator.d.ts +2 -2
- package/dist/config/metadata/decorators/property.decorator.d.ts +2 -2
- package/dist/config/metadata/decorators/property.decorator.js.map +1 -1
- package/dist/config/parsers/array.parser.d.ts +3 -3
- package/dist/config/parsers/array.parser.js.map +1 -1
- package/dist/config/parsers/boolean/bool.parser.d.ts +2 -2
- package/dist/config/parsers/boolean/bool.parser.js.map +1 -1
- package/dist/config/parsers/enum/enum.parser.d.ts +2 -2
- package/dist/config/parsers/enum/enum.parser.js.map +1 -1
- package/dist/config/parsers/int/int.parser.d.ts +2 -2
- package/dist/config/parsers/int/int.parser.js.map +1 -1
- package/dist/config/parsers/number/number.parser.d.ts +2 -2
- package/dist/config/parsers/number/number.parser.js.map +1 -1
- package/dist/config/parsers/path/fspath.parser.d.ts +2 -2
- package/dist/config/parsers/path/fspath.parser.js.map +1 -1
- package/dist/config/parsers/size/size.parser.d.ts +2 -2
- package/dist/config/parsers/size/size.parser.js.map +1 -1
- package/dist/config/parsers/string/string.parser.d.ts +2 -2
- package/dist/config/parsers/string/string.parser.js.map +1 -1
- package/dist/config/parsers/timespan/timespan.parser.d.ts +2 -2
- package/dist/config/parsers/timespan/timespan.parser.js.map +1 -1
- package/dist/config/parsers/url/url.parser.d.ts +2 -2
- package/dist/config/parsers/url/url.parser.js.map +1 -1
- package/dist/config/sources/base/config-source.abstract.js.map +1 -1
- package/dist/config/types.d.ts +5 -9
- package/dist/config/vars.class.d.ts +3 -3
- package/dist/config/vars.class.js.map +1 -1
- package/dist/types/metadata.js.map +1 -1
- package/package.json +2 -2
- package/src/config/config.module.ts +3 -4
- package/src/config/context/config.context.ts +4 -8
- package/src/config/metadata/decorators/declare-property.decorator.ts +2 -2
- package/src/config/metadata/decorators/property.decorator.ts +1 -2
- package/src/config/parsers/array.parser.ts +3 -9
- package/src/config/parsers/boolean/bool.parser.ts +2 -2
- package/src/config/parsers/enum/enum.parser.ts +2 -2
- package/src/config/parsers/int/int.parser.ts +2 -2
- package/src/config/parsers/number/number.parser.ts +2 -2
- package/src/config/parsers/path/fspath.parser.ts +2 -2
- package/src/config/parsers/size/size.parser.ts +2 -2
- package/src/config/parsers/string/string.parser.ts +2 -2
- package/src/config/parsers/timespan/timespan.parser.ts +2 -2
- package/src/config/parsers/url/url.parser.ts +2 -2
- package/src/config/sources/base/config-source.abstract.ts +2 -2
- package/src/config/types.ts +5 -19
- package/src/config/vars.class.ts +4 -12
- package/src/types/metadata.ts +1 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [2.6.0-next.6](https://github.com/R-Vision/rsdk/compare/v2.6.0-next.5...v2.6.0-next.6) (2023-07-22)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* use unknown instead of RawConfigValue ([d2d6ce0](https://github.com/R-Vision/rsdk/commit/d2d6ce0b9588805f2f30113d2991d4bf5e088e06))
|
|
11
|
+
|
|
12
|
+
# [2.6.0-next.5](https://github.com/R-Vision/rsdk/compare/v2.6.0-next.4...v2.6.0-next.5) (2023-07-22)
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
* remove restrictions for config values (now it extends any) ([7c2abd8](https://github.com/R-Vision/rsdk/commit/7c2abd85934f5007ec37c7c43ff3a3f62117eb4c))
|
|
17
|
+
|
|
6
18
|
# [2.6.0-next.3](https://github.com/R-Vision/rsdk/compare/v2.6.0-next.2...v2.6.0-next.3) (2023-07-07)
|
|
7
19
|
|
|
8
20
|
**Note:** Version bump only for package @rsdk/core
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.module.js","sourceRoot":"","sources":["../../src/config/config.module.ts"],"names":[],"mappings":";;;AAKA,qGAAgG;AAChG,2FAAsF;AACtF,6DAAyD;AAEzD,yCAA8C;
|
|
1
|
+
{"version":3,"file":"config.module.js","sourceRoot":"","sources":["../../src/config/config.module.ts"],"names":[],"mappings":";;;AAKA,qGAAgG;AAChG,2FAAsF;AACtF,6DAAyD;AAEzD,yCAA8C;AAiB9C,MAAa,oBAAoB;IAC/B;;;;;;;;;;OAUG;IACH,MAAM,CAAC,WAAW,CAAC,KAAa;QAC9B,MAAM,KAAK,GAAG,IAAA,2BAAgB,EAAC,KAAK,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAEjD,OAAO;YACL,MAAM,EAAE,oBAAoB;YAC5B,SAAS,EAAE,CAAC,QAAQ,CAAC;YACrB,OAAO,EAAE,CAAC,QAAQ,CAAC;SACpB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,IAAyB;QACzC;;;WAGG;QACH,MAAM,QAAQ,GAAoB;YAChC,MAAM,EAAE;gBACN,8BAAa;gBACb,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,2DAA2B,EAAE;aACvD;YACD,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,KAAK,EACf,aAA4B,EAC5B,iCAA+D,EAC/D,EAAE;gBACF;;mBAEG;gBACH,MAAM,iCAAiC,EAAE,UAAU,EAAE,CAAC;gBACtD,OAAO,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC;SACF,CAAC;QAEF,OAAO;YACL;;;;eAIG;YACH,MAAM,EAAE,oBAAoB;YAC5B,SAAS,EAAE,CAAC,QAAQ,CAAC;YAErB,OAAO,EAAE,CAAC,QAAQ,CAAC;SACpB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,OAAwB;QACrC,MAAM,SAAS,GAAe,EAAE,CAAC;QACjC,MAAM,OAAO,GAA+C,EAAE,CAAC;QAE/D,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE;YAC3B,OAAO,CAAC,IAAI,CAAC,iDAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;SACvE;QAED,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,OAAO;YACP,MAAM,EAAE,oBAAoB;YAC5B,SAAS;YACT,OAAO,EAAE,SAAS;SACnB,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAChC,KAA6C;QAE7C,OAAO;YACL,MAAM,EAAE;gBACN,8BAAa;gBACb,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,2DAA2B,EAAE;aACvD;YACD,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK,EACf,aAA4B,EAC5B,iCAA+D,EACvC,EAAE;gBAC1B,MAAM,iCAAiC,EAAE,UAAU,EAAE,CAAC;gBACtD,OAAO,aAAa,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAC9C,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AApGD,oDAoGC"}
|
|
@@ -11,7 +11,7 @@ import type { RsdkMetadataProvider } from '@rsdk/metadata';
|
|
|
11
11
|
import type { Config } from '../config.abstract';
|
|
12
12
|
import type { ConfigModuleOptions } from '../config.module';
|
|
13
13
|
import { ReloadEvents } from '../reload';
|
|
14
|
-
import type {
|
|
14
|
+
import type { PropertyMetadata } from '../types';
|
|
15
15
|
import { Vars } from '../vars.class';
|
|
16
16
|
export declare class ConfigContext {
|
|
17
17
|
readonly events: ReloadEvents;
|
|
@@ -33,7 +33,7 @@ export declare class ConfigContext {
|
|
|
33
33
|
* Основной кейс, где это применяется - тесты
|
|
34
34
|
* @private
|
|
35
35
|
*/
|
|
36
|
-
readonly standalonePropertyMetadata: Map<string, PropertyMetadata<
|
|
36
|
+
readonly standalonePropertyMetadata: Map<string, PropertyMetadata<any>>;
|
|
37
37
|
/**
|
|
38
38
|
* Проинициализированные секции конфигов
|
|
39
39
|
* @private
|
|
@@ -62,7 +62,7 @@ export declare class ConfigContext {
|
|
|
62
62
|
* @returns T
|
|
63
63
|
*/
|
|
64
64
|
resolve<T extends Config>(ctor: Constructor<T>): T;
|
|
65
|
-
resolveProperty(token: `STANDALONE_CONFIG_PROPERTY_${string}`):
|
|
65
|
+
resolveProperty(token: `STANDALONE_CONFIG_PROPERTY_${string}`): any;
|
|
66
66
|
private readEnvironment;
|
|
67
67
|
private extractStandaloneProperties;
|
|
68
68
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.context.js","sourceRoot":"","sources":["../../../src/config/context/config.context.ts"],"names":[],"mappings":";;;AASA,yCAAsC;AACtC,2CAA8C;AAK9C,8CAA+D;AAE/D,0CAA+C;AAC/C,mFAA8E;AAC9E,sCAAyC;AAEzC,8CAAqC;AAErC,MAAa,aAAa;IACf,MAAM,GAAG,IAAI,qBAAY,EAAE,CAAC;IAC5B,IAAI,CAAO;IACX,MAAM,CAAS;IAExB;;;;;;;;;;;;;;;OAeG;IACM,0BAA0B,GAAG,IAAI,GAAG,EAA4B,CAAC;IAE1E;;;OAGG;IACc,kBAAkB,GAAG,IAAI,GAAG,EAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"config.context.js","sourceRoot":"","sources":["../../../src/config/context/config.context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PropertyOptions, PropertyParser } from '../../types';
|
|
2
2
|
/**
|
|
3
3
|
* Declares standalone property. Properties declared in this way,
|
|
4
4
|
* can be injected with @InjectProperty() decorator.
|
|
@@ -14,4 +14,4 @@ import type { ConfigValue, PropertyOptions, PropertyParser } from '../../types';
|
|
|
14
14
|
* default value if exists
|
|
15
15
|
* @returns ClassDecorator
|
|
16
16
|
*/
|
|
17
|
-
export declare const DeclareProperty: <T
|
|
17
|
+
export declare const DeclareProperty: <T>(alias: string, parser: PropertyParser<T>, options: PropertyOptions<T>) => ClassDecorator;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PropertyOptions, PropertyParser } from '../../types';
|
|
2
2
|
export declare const CONFIG_METADATA_KEY = "CONFIG_METADATA";
|
|
3
3
|
/**
|
|
4
4
|
* Sets metadata that will be used to populate the field
|
|
@@ -9,4 +9,4 @@ export declare const CONFIG_METADATA_KEY = "CONFIG_METADATA";
|
|
|
9
9
|
* @param options Additional options (default value, description etc.)
|
|
10
10
|
* @returns PropertyDecorator
|
|
11
11
|
*/
|
|
12
|
-
export declare const Property: <T
|
|
12
|
+
export declare const Property: <T>(key: string, parser: PropertyParser<T>, options: PropertyOptions<T>) => PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"property.decorator.js","sourceRoot":"","sources":["../../../../src/config/metadata/decorators/property.decorator.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"property.decorator.js","sourceRoot":"","sources":["../../../../src/config/metadata/decorators/property.decorator.ts"],"names":[],"mappings":";;;AAMa,QAAA,mBAAmB,GAAG,iBAAiB,CAAC;AAErD;;;;;;;;GAQG;AACI,MAAM,QAAQ,GAAG,CACtB,GAAW,EACX,MAAyB,EACzB,OAA2B,EACR,EAAE,CACrB,UAAU,MAAc,EAAE,WAA4B;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;IAEhC,MAAM,QAAQ,GAAI,OAAO,CAAC,WAAW,CACnC,2BAAmB,EACnB,IAAI,CACe,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAE5C,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG;QACjC,aAAa,EAAE,KAAK;QACpB,GAAG;QACH,MAAM;QACN,GAAG,OAAO;KACX,CAAC;IAEF,OAAO,CAAC,cAAc,CAAC,2BAAmB,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AAC9D,CAAC,CAAC;AArBS,QAAA,QAAQ,YAqBjB;AAEJ,6GAA6G"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { PropertyParser
|
|
2
|
-
export declare class ArrayParser<T
|
|
1
|
+
import type { PropertyParser } from '../types';
|
|
2
|
+
export declare class ArrayParser<T> implements PropertyParser<T[]> {
|
|
3
3
|
private readonly singleValueParser;
|
|
4
4
|
private readonly options;
|
|
5
5
|
constructor(singleValueParser: PropertyParser<T>, options?: {
|
|
@@ -7,5 +7,5 @@ export declare class ArrayParser<T extends SingleConfigValue> implements Propert
|
|
|
7
7
|
});
|
|
8
8
|
type(): string;
|
|
9
9
|
description(): string;
|
|
10
|
-
parse(value:
|
|
10
|
+
parse(value: unknown): T[];
|
|
11
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.parser.js","sourceRoot":"","sources":["../../../src/config/parsers/array.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;
|
|
1
|
+
{"version":3,"file":"array.parser.js","sourceRoot":"","sources":["../../../src/config/parsers/array.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAI5C,MAAa,WAAW;IAEH;IACA;IAFnB,YACmB,iBAAoC,EACpC,UAAU,EAAE,SAAS,EAAE,GAAG,EAAE;QAD5B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,YAAO,GAAP,OAAO,CAAqB;IAC5C,CAAC;IAEJ,IAAI;QACF,OAAO,UAAU,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,EAAE,CAAC;IACnD,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;SAEN,IAAI,CAAC,OAAO,CAAC,SAAS;QACvB,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;KACvC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1D;QAED,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvB,OAAO,KAAK;aACT,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;aAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;CACF;AA7BD,kCA6BC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { PropertyParser
|
|
1
|
+
import type { PropertyParser } from '../../types';
|
|
2
2
|
export declare class BoolParser implements PropertyParser<boolean> {
|
|
3
3
|
type(): string;
|
|
4
4
|
description(): string;
|
|
5
|
-
parse(value:
|
|
5
|
+
parse(value: unknown): boolean;
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bool.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/boolean/bool.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAI7C,MAAa,UAAU;IACrB,IAAI;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;;KAGV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"bool.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/boolean/bool.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAI7C,MAAa,UAAU;IACrB,IAAI;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;;KAGV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,OAAO,gBAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CACF;AAfD,gCAeC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { EnumLike, EnumValue } from '@rsdk/common';
|
|
2
|
-
import type { PropertyParser
|
|
2
|
+
import type { PropertyParser } from '../../types';
|
|
3
3
|
export declare class EnumParser<E extends EnumValue> implements PropertyParser<E> {
|
|
4
4
|
private readonly enumeration;
|
|
5
5
|
constructor(enumeration: EnumLike);
|
|
6
6
|
type(): string;
|
|
7
7
|
description(): string;
|
|
8
|
-
parse(value:
|
|
8
|
+
parse(value: unknown): E;
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enum.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/enum/enum.parser.ts"],"names":[],"mappings":";;;AACA,yCAAmD;AAInD,MAAa,UAAU;IACQ;IAA7B,YAA6B,WAAqB;QAArB,gBAAW,GAAX,WAAW,CAAU;IAAG,CAAC;IAEtD,IAAI;QACF,OAAO,2BAA2B,CAAC;IACrC,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;QAEP,aAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KAC3C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"enum.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/enum/enum.parser.ts"],"names":[],"mappings":";;;AACA,yCAAmD;AAInD,MAAa,UAAU;IACQ;IAA7B,YAA6B,WAAqB;QAArB,gBAAW,GAAX,WAAW,CAAU;IAAG,CAAC;IAEtD,IAAI;QACF,OAAO,2BAA2B,CAAC;IACrC,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;QAEP,aAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KAC3C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,OAAO,gBAAO,CAAC,IAAI,CAAI,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;CACF;AAjBD,gCAiBC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { PropertyParser
|
|
1
|
+
import type { PropertyParser } from '../../types';
|
|
2
2
|
export declare class IntParser implements PropertyParser<number> {
|
|
3
3
|
type(): string;
|
|
4
4
|
description(): string;
|
|
5
|
-
parse(value:
|
|
5
|
+
parse(value: unknown): number;
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"int.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/int/int.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAI7C,MAAa,SAAS;IACpB,IAAI;QACF,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;;KAGV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"int.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/int/int.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAI7C,MAAa,SAAS;IACpB,IAAI;QACF,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;;KAGV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,OAAO,gBAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;CACF;AAfD,8BAeC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { PropertyParser
|
|
1
|
+
import type { PropertyParser } from '../../types';
|
|
2
2
|
export declare class NumberParser implements PropertyParser<number> {
|
|
3
3
|
type(): string;
|
|
4
4
|
description(): string;
|
|
5
|
-
parse(value:
|
|
5
|
+
parse(value: unknown): number;
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/number/number.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAI7C,MAAa,YAAY;IACvB,IAAI;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;;;;;KAMV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"number.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/number/number.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA6C;AAI7C,MAAa,YAAY;IACvB,IAAI;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;;;;;KAMV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,OAAO,gBAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF;AAlBD,oCAkBC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { PropertyParser
|
|
1
|
+
import type { PropertyParser } from '../../types';
|
|
2
2
|
export declare class FsPathParser implements PropertyParser<string> {
|
|
3
3
|
private readonly objectType;
|
|
4
4
|
constructor(objectType: 'file' | 'dir');
|
|
5
5
|
type(): string;
|
|
6
6
|
description(): string;
|
|
7
|
-
parse(value:
|
|
7
|
+
parse(value: unknown): string;
|
|
8
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fspath.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/path/fspath.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,qCAA4D;AAC5D,yCAA6C;AAC7C,+CAAmC;AAInC,MAAa,YAAY;IACM;IAA7B,YAA6B,UAA0B;QAA1B,eAAU,GAAV,UAAU,CAAgB;IAAG,CAAC;IAE3D,IAAI;QACF,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;;KAGV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"fspath.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/path/fspath.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,qCAA4D;AAC5D,yCAA6C;AAC7C,+CAAmC;AAInC,MAAa,YAAY;IACM;IAA7B,YAA6B,UAA0B;QAA1B,eAAU,GAAV,UAAU,CAAgB;IAAG,CAAC;IAE3D,IAAI;QACF,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;;KAGV,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvB,MAAM,WAAW,GAAG,CAAC,IAAA,sBAAU,EAAC,KAAK,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,IAAA,gBAAI,EAAC,IAAA,kBAAG,GAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE9D,IAAI,CAAC,IAAA,oBAAU,EAAC,YAAY,CAAC,EAAE;YAC7B,MAAM,OAAO,GAAG,WAAW;gBACzB,CAAC,CAAC,wFAAwF;gBAC1F,CAAC,CAAC,EAAE,CAAC;YAEP,MAAM,IAAI,KAAK,CACb,sBAAsB,YAAY,eAAe,OAAO,EAAE,CAC3D,CAAC;SACH;QAED,IAAI;YACF,IAAA,oBAAU,EAAC,YAAY,CAAC,CAAC;SAC1B;QAAC,MAAM;YACN,MAAM,IAAI,KAAK,CAAC,iBAAiB,YAAY,IAAI,CAAC,CAAC;SACpD;QAED,MAAM,IAAI,GAAG,IAAA,mBAAS,EAAC,YAAY,CAAC,CAAC;QAErC;;;WAGG;QACH,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;YACzB,OAAO,YAAY,CAAC;SACrB;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACpD,MAAM,IAAI,KAAK,CAAC,IAAI,YAAY,uBAAuB,CAAC,CAAC;SAC1D;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;YAChD,MAAM,IAAI,KAAK,CAAC,IAAI,YAAY,kBAAkB,CAAC,CAAC;SACrD;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAxDD,oCAwDC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Size } from '@rsdk/common';
|
|
2
|
-
import type { PropertyParser
|
|
2
|
+
import type { PropertyParser } from '../../types';
|
|
3
3
|
export declare class SizeParser implements PropertyParser<Size> {
|
|
4
4
|
type(): string;
|
|
5
5
|
description(): string;
|
|
6
|
-
parse(value:
|
|
6
|
+
parse(value: unknown): Size;
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"size.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/size/size.parser.ts"],"names":[],"mappings":";;;AAAA,yCAAuE;AAIvE,MAAa,UAAU;IACrB,IAAI;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;mBAEI,4BAAmB;KACjC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"size.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/size/size.parser.ts"],"names":[],"mappings":";;;AAAA,yCAAuE;AAIvE,MAAa,UAAU;IACrB,IAAI;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;mBAEI,4BAAmB;KACjC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvB,OAAO,aAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;CACF;AAjBD,gCAiBC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { PropertyParser
|
|
1
|
+
import type { PropertyParser } from '../../types';
|
|
2
2
|
export declare class StringParser implements PropertyParser<string> {
|
|
3
3
|
type(): string;
|
|
4
4
|
description(): string;
|
|
5
|
-
parse(value:
|
|
5
|
+
parse(value: unknown): string;
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/string/string.parser.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAItC,MAAa,YAAY;IACvB,IAAI;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,WAAW;QACT,OAAO,2BAA2B,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"string.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/string/string.parser.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAItC,MAAa,YAAY;IACvB,IAAI;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,WAAW;QACT,OAAO,2BAA2B,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvB,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAdD,oCAcC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Timespan } from '@rsdk/common';
|
|
2
|
-
import type { PropertyParser
|
|
2
|
+
import type { PropertyParser } from '../../types';
|
|
3
3
|
export declare class TimespanParser implements PropertyParser<Timespan> {
|
|
4
4
|
type(): string;
|
|
5
5
|
description(): string;
|
|
6
|
-
parse(value:
|
|
6
|
+
parse(value: unknown): Timespan;
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timespan.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/timespan/timespan.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA+E;AAI/E,MAAa,cAAc;IACzB,IAAI;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;mBAEI,gCAAuB;KACrC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"timespan.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/timespan/timespan.parser.ts"],"names":[],"mappings":";;;AAAA,yCAA+E;AAI/E,MAAa,cAAc;IACzB,IAAI;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,WAAW;QACT,OAAO,IAAA,aAAI,EAAA;;mBAEI,gCAAuB;KACrC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvB,OAAO,iBAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF;AAjBD,wCAiBC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { PropertyParser
|
|
1
|
+
import type { PropertyParser } from '../../types';
|
|
2
2
|
export declare class UrlParser implements PropertyParser<URL> {
|
|
3
3
|
readonly protocol?: string | undefined;
|
|
4
4
|
constructor(protocol?: string | undefined);
|
|
5
5
|
type(): string;
|
|
6
6
|
description(): string;
|
|
7
|
-
parse(value:
|
|
7
|
+
parse(value: unknown): URL;
|
|
8
8
|
private assertProtocol;
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/url/url.parser.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAItC,2CAA0D;AAE1D,MAAa,SAAS;IACC;IAArB,YAAqB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;IAAG,CAAC;IAE1C,IAAI;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,WAAW;QACT,OAAO,oCAAoC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"url.parser.js","sourceRoot":"","sources":["../../../../src/config/parsers/url/url.parser.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAItC,2CAA0D;AAE1D,MAAa,SAAS;IACC;IAArB,YAAqB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;IAAG,CAAC;IAE1C,IAAI;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,WAAW;QACT,OAAO,oCAAoC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,KAAc;QAClB,eAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvB,IAAI;YACF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;YAE3B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;YACzB,OAAO,GAAG,CAAC;SACZ;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,sBAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SACpC;IACH,CAAC;IAEO,cAAc,CAAC,GAAQ;QAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO;SACR;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,EAAE;YAClC,MAAM,IAAI,2BAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;SAC7D;IACH,CAAC;CACF;AAhCD,8BAgCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-source.abstract.js","sourceRoot":"","sources":["../../../../src/config/sources/base/config-source.abstract.ts"],"names":[],"mappings":";;;AAAA,yCAAqD;AAGrD,8CAAsD;AAEtD,MAAsB,YAAY;IAChC;;;;;;OAMG;IACH,KAAK,CAAC,IAAI;QACR,IAAI;YACF;;;;;;;eAOG;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YAEjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;SACrC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,kCAAqB,EAAE;gBAC1C,MAAM,KAAK,CAAC;aACb;YAED,MAAM,IAAI,kCAAqB,CAC7B,wCAAwC,EACxC,KAAc,CACf,CAAC;SACH;IACH,CAAC;IAED;;;;;;;OAOG;IACK,kBAAkB,CAAC,GAAY,EAAE,MAAM,GAAG,EAAE;QAClD,IAAI,CAAC,IAAA,iBAAQ,EAAC,GAAG,CAAC,EAAE;YAClB,MAAM,IAAI,kCAAqB,CAC7B,MAAM;gBACJ,CAAC,CAAC,iBAAiB,MAAM,wDAAwD;gBACjF,CAAC,CAAC,kCAAkC,CACvC,CAAC;SACH;QAED,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAc,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACjE,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;gBACtB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAEpB,OAAO,GAAG,CAAC;aACZ;YAED,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;YAE1D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAW,CAAC,EAAE;oBAC7B,MAAM,IAAI,kCAAqB,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAC;iBACvE;gBAED,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAEpB,OAAO,GAAG,CAAC;aACZ;YAED;;;eAGG;YACH,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACpE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;aACjB;YAED,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,IAAI,GAAG,
|
|
1
|
+
{"version":3,"file":"config-source.abstract.js","sourceRoot":"","sources":["../../../../src/config/sources/base/config-source.abstract.ts"],"names":[],"mappings":";;;AAAA,yCAAqD;AAGrD,8CAAsD;AAEtD,MAAsB,YAAY;IAChC;;;;;;OAMG;IACH,KAAK,CAAC,IAAI;QACR,IAAI;YACF;;;;;;;eAOG;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YAEjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;SACrC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,kCAAqB,EAAE;gBAC1C,MAAM,KAAK,CAAC;aACb;YAED,MAAM,IAAI,kCAAqB,CAC7B,wCAAwC,EACxC,KAAc,CACf,CAAC;SACH;IACH,CAAC;IAED;;;;;;;OAOG;IACK,kBAAkB,CAAC,GAAY,EAAE,MAAM,GAAG,EAAE;QAClD,IAAI,CAAC,IAAA,iBAAQ,EAAC,GAAG,CAAC,EAAE;YAClB,MAAM,IAAI,kCAAqB,CAC7B,MAAM;gBACJ,CAAC,CAAC,iBAAiB,MAAM,wDAAwD;gBACjF,CAAC,CAAC,kCAAkC,CACvC,CAAC;SACH;QAED,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAc,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACjE,IAAI,IAAA,oBAAW,EAAC,KAAK,CAAC,EAAE;gBACtB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAEpB,OAAO,GAAG,CAAC;aACZ;YAED,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;YAE1D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAW,CAAC,EAAE;oBAC7B,MAAM,IAAI,kCAAqB,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAC;iBACvE;gBAED,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAEpB,OAAO,GAAG,CAAC;aACZ;YAED;;;eAGG;YACH,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACpE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;aACjB;YAED,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,IAAI,GAAG,EAAmB,CAAC,CAAC;IACjC,CAAC;CAKF;AApFD,oCAoFC"}
|
package/dist/config/types.d.ts
CHANGED
|
@@ -1,13 +1,9 @@
|
|
|
1
|
-
import type { EnumValue, Primitive, Size, Timespan } from '@rsdk/common';
|
|
2
1
|
export type SourceType = 'static' | 'reloadable';
|
|
3
|
-
export type RawConfigValue = Primitive | Primitive[];
|
|
4
|
-
export type SingleConfigValue = string | number | boolean | Timespan | Size | EnumValue | URL;
|
|
5
|
-
export type ConfigValue = SingleConfigValue | SingleConfigValue[];
|
|
6
2
|
export interface Changes {
|
|
7
3
|
createdKeys: string[];
|
|
8
4
|
updatedKeys: string[];
|
|
9
5
|
}
|
|
10
|
-
export interface PropertyOptions<T
|
|
6
|
+
export interface PropertyOptions<T> {
|
|
11
7
|
/**
|
|
12
8
|
* Description of configuration property. Will automatically
|
|
13
9
|
* appear in documentation.
|
|
@@ -18,7 +14,7 @@ export interface PropertyOptions<T extends ConfigValue> {
|
|
|
18
14
|
*/
|
|
19
15
|
defaultValue?: T | undefined;
|
|
20
16
|
}
|
|
21
|
-
export interface PropertyMetadata<T
|
|
17
|
+
export interface PropertyMetadata<T = any> {
|
|
22
18
|
key: string;
|
|
23
19
|
parser: PropertyParser<T>;
|
|
24
20
|
description: string;
|
|
@@ -59,9 +55,9 @@ export interface ParserMetadata {
|
|
|
59
55
|
* mostly during decorator factories (such as @Property()) code is
|
|
60
56
|
* executed. Thus output **can** be used in autodoc
|
|
61
57
|
*/
|
|
62
|
-
export interface PropertyParser<T
|
|
58
|
+
export interface PropertyParser<T = any> {
|
|
63
59
|
type(): string;
|
|
64
60
|
description(): string;
|
|
65
|
-
parse(value:
|
|
61
|
+
parse(value: unknown): T;
|
|
66
62
|
}
|
|
67
|
-
export type RawValues = Map<string,
|
|
63
|
+
export type RawValues = Map<string, unknown>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Changes,
|
|
1
|
+
import type { Changes, PropertyMetadata, RawValues } from './types';
|
|
2
2
|
export declare enum SetResult {
|
|
3
3
|
CREATED = 0,
|
|
4
4
|
UPDATED = 1,
|
|
@@ -12,8 +12,8 @@ export declare class Vars {
|
|
|
12
12
|
* @param prefix
|
|
13
13
|
*/
|
|
14
14
|
constructor(prefix: string);
|
|
15
|
-
set(key: string, value:
|
|
15
|
+
set(key: string, value: unknown): [SetResult, string];
|
|
16
16
|
merge(values: RawValues): Changes;
|
|
17
|
-
extract<T
|
|
17
|
+
extract<T>(propertyMetadata: PropertyMetadata<T>): T | undefined;
|
|
18
18
|
private toUpperSnakeCase;
|
|
19
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vars.class.js","sourceRoot":"","sources":["../../src/config/vars.class.ts"],"names":[],"mappings":";;;AAAA,mCAA4C;AAE5C,6CAAiD;
|
|
1
|
+
{"version":3,"file":"vars.class.js","sourceRoot":"","sources":["../../src/config/vars.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/types/metadata.ts"],"names":[],"mappings":";;;AACA,yCAAmD;
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/types/metadata.ts"],"names":[],"mappings":";;;AACA,yCAAmD;AAiBnD,SAAS,iBAAiB,CACxB,YAAiB;IAEjB,IAAI,IAAA,oBAAW,EAAC,YAAY,CAAC,EAAE;QAC7B,OAAO,YAAY,CAAC;KACrB;IACD,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;QAChC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,oBAAW,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9D,CAAC,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC;AAC/B,CAAC;AAEM,MAAM,yBAAyB,GAAG,CACvC,QAA0B,EACI,EAAE;IAChC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC;IAEnD,OAAO;QACL,GAAG,IAAI;QACP,MAAM,EAAE;YACN,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;YAEnB,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;SAClC;QACD,GAAG,CAAC,IAAA,eAAM,EAAC,QAAQ,EAAE,cAAc,CAAC,IAAI;YACtC,+CAA+C;YAC/C,YAAY,EAAE,iBAAiB,CAAC,YAAY,CAAC;SAC9C,CAAC;KAC6B,CAAC;AACpC,CAAC,CAAC;AAjBW,QAAA,yBAAyB,6BAiBpC;AASK,MAAM,wBAAwB,GAAG,CAAC,EACvC,UAAU,EACV,GAAG,IAAI,EAGR,EAA+B,EAAE,CAAC,CAAC;IAClC,GAAG,IAAI;IACP,iEAAiE;IACjE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,iCAAyB,CAAC;CACrE,CAAC,CAAC;AATU,QAAA,wBAAwB,4BASlC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rsdk/core",
|
|
3
|
-
"version": "2.6.0-next.
|
|
3
|
+
"version": "2.6.0-next.6",
|
|
4
4
|
"description": "Nestjs based microservice chassis",
|
|
5
5
|
"license": "Apache License 2.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -40,5 +40,5 @@
|
|
|
40
40
|
"reflect-metadata": "^0.1.13",
|
|
41
41
|
"rxjs": "^7.0.0"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "d885a65c7178a67ff9f98d43639382486689cc4f"
|
|
44
44
|
}
|
|
@@ -9,7 +9,6 @@ import { ConfigContext } from './context/config.context';
|
|
|
9
9
|
import type { Config } from './config.abstract';
|
|
10
10
|
import { getPropertyToken } from './metadata';
|
|
11
11
|
import type { ConfigSource } from './sources';
|
|
12
|
-
import type { ConfigValue } from './types';
|
|
13
12
|
|
|
14
13
|
export interface ConfigModuleOptions {
|
|
15
14
|
/**
|
|
@@ -107,9 +106,9 @@ export class PlatformConfigModule {
|
|
|
107
106
|
};
|
|
108
107
|
}
|
|
109
108
|
|
|
110
|
-
private static getPropertyProvider(
|
|
109
|
+
private static getPropertyProvider<T>(
|
|
111
110
|
token: `STANDALONE_CONFIG_PROPERTY_${string}`,
|
|
112
|
-
): FactoryProvider<
|
|
111
|
+
): FactoryProvider<T | undefined> {
|
|
113
112
|
return {
|
|
114
113
|
inject: [
|
|
115
114
|
ConfigContext,
|
|
@@ -119,7 +118,7 @@ export class PlatformConfigModule {
|
|
|
119
118
|
useFactory: async (
|
|
120
119
|
configContext: ConfigContext,
|
|
121
120
|
additionalSourceModuleInitializer?: AdditionalSourceInitializer,
|
|
122
|
-
): Promise<
|
|
121
|
+
): Promise<T | undefined> => {
|
|
123
122
|
await additionalSourceModuleInitializer?.initialize();
|
|
124
123
|
return configContext.resolveProperty(token);
|
|
125
124
|
},
|
|
@@ -18,7 +18,7 @@ import type { PropertyToken } from '../metadata';
|
|
|
18
18
|
import { getPropertyToken } from '../metadata';
|
|
19
19
|
import { ConfigMetadataProvider } from '../metadata/config-metadata.provider';
|
|
20
20
|
import { ReloadEvents } from '../reload';
|
|
21
|
-
import type {
|
|
21
|
+
import type { PropertyMetadata } from '../types';
|
|
22
22
|
import { Vars } from '../vars.class';
|
|
23
23
|
|
|
24
24
|
export class ConfigContext {
|
|
@@ -49,14 +49,12 @@ export class ConfigContext {
|
|
|
49
49
|
* @private
|
|
50
50
|
*/
|
|
51
51
|
private readonly initializedConfigs = new Map<Constructor<Config>, Config>();
|
|
52
|
+
|
|
52
53
|
/**
|
|
53
54
|
* undefined является валидным значением по умолчанию (`defaultValue`)
|
|
54
55
|
* @private
|
|
55
56
|
*/
|
|
56
|
-
private readonly properties = new Map<
|
|
57
|
-
PropertyToken,
|
|
58
|
-
ConfigValue | undefined
|
|
59
|
-
>();
|
|
57
|
+
private readonly properties = new Map<PropertyToken, any>();
|
|
60
58
|
|
|
61
59
|
/**
|
|
62
60
|
* We don't use class as context here because it is undefined if
|
|
@@ -137,9 +135,7 @@ export class ConfigContext {
|
|
|
137
135
|
return instance as T;
|
|
138
136
|
}
|
|
139
137
|
|
|
140
|
-
resolveProperty(
|
|
141
|
-
token: `STANDALONE_CONFIG_PROPERTY_${string}`,
|
|
142
|
-
): ConfigValue | undefined {
|
|
138
|
+
resolveProperty(token: `STANDALONE_CONFIG_PROPERTY_${string}`): any {
|
|
143
139
|
if (this.properties.has(token)) {
|
|
144
140
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
145
141
|
return this.properties.get(token)!;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PropertyOptions, PropertyParser } from '../../types';
|
|
2
2
|
import { ConfigMetadataRegistry } from '../config-metadata.registry';
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -16,7 +16,7 @@ import { ConfigMetadataRegistry } from '../config-metadata.registry';
|
|
|
16
16
|
* default value if exists
|
|
17
17
|
* @returns ClassDecorator
|
|
18
18
|
*/
|
|
19
|
-
export const DeclareProperty = <T
|
|
19
|
+
export const DeclareProperty = <T>(
|
|
20
20
|
/**
|
|
21
21
|
* Alias is used not only to declare, but also to inject
|
|
22
22
|
* properties. That's why this string is saved as is, while
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type {
|
|
2
|
-
ConfigValue,
|
|
3
2
|
PropertyOptions,
|
|
4
3
|
PropertyParser,
|
|
5
4
|
SectionMetadata,
|
|
@@ -16,7 +15,7 @@ export const CONFIG_METADATA_KEY = 'CONFIG_METADATA';
|
|
|
16
15
|
* @param options Additional options (default value, description etc.)
|
|
17
16
|
* @returns PropertyDecorator
|
|
18
17
|
*/
|
|
19
|
-
export const Property = <T
|
|
18
|
+
export const Property = <T>(
|
|
20
19
|
key: string,
|
|
21
20
|
parser: PropertyParser<T>,
|
|
22
21
|
options: PropertyOptions<T>,
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
import { Assert, text } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type {
|
|
4
|
-
PropertyParser,
|
|
5
|
-
RawConfigValue,
|
|
6
|
-
SingleConfigValue,
|
|
7
|
-
} from '../types';
|
|
3
|
+
import type { PropertyParser } from '../types';
|
|
8
4
|
|
|
9
|
-
export class ArrayParser<T
|
|
10
|
-
implements PropertyParser<T[]>
|
|
11
|
-
{
|
|
5
|
+
export class ArrayParser<T> implements PropertyParser<T[]> {
|
|
12
6
|
constructor(
|
|
13
7
|
private readonly singleValueParser: PropertyParser<T>,
|
|
14
8
|
private readonly options = { separator: ',' },
|
|
@@ -26,7 +20,7 @@ export class ArrayParser<T extends SingleConfigValue>
|
|
|
26
20
|
`;
|
|
27
21
|
}
|
|
28
22
|
|
|
29
|
-
parse(value:
|
|
23
|
+
parse(value: unknown): T[] {
|
|
30
24
|
if (Array.isArray(value)) {
|
|
31
25
|
return value.map((x) => this.singleValueParser.parse(x));
|
|
32
26
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Convert, text } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type { PropertyParser
|
|
3
|
+
import type { PropertyParser } from '../../types';
|
|
4
4
|
|
|
5
5
|
export class BoolParser implements PropertyParser<boolean> {
|
|
6
6
|
type(): string {
|
|
@@ -14,7 +14,7 @@ export class BoolParser implements PropertyParser<boolean> {
|
|
|
14
14
|
`;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
parse(value:
|
|
17
|
+
parse(value: unknown): boolean {
|
|
18
18
|
return Convert.boolean(value);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { EnumLike, EnumValue } from '@rsdk/common';
|
|
2
2
|
import { Convert, Enum, text } from '@rsdk/common';
|
|
3
3
|
|
|
4
|
-
import type { PropertyParser
|
|
4
|
+
import type { PropertyParser } from '../../types';
|
|
5
5
|
|
|
6
6
|
export class EnumParser<E extends EnumValue> implements PropertyParser<E> {
|
|
7
7
|
constructor(private readonly enumeration: EnumLike) {}
|
|
@@ -17,7 +17,7 @@ export class EnumParser<E extends EnumValue> implements PropertyParser<E> {
|
|
|
17
17
|
`;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
parse(value:
|
|
20
|
+
parse(value: unknown): E {
|
|
21
21
|
return Convert.enum<E>(value, this.enumeration);
|
|
22
22
|
}
|
|
23
23
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Convert, text } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type { PropertyParser
|
|
3
|
+
import type { PropertyParser } from '../../types';
|
|
4
4
|
|
|
5
5
|
export class IntParser implements PropertyParser<number> {
|
|
6
6
|
type(): string {
|
|
@@ -14,7 +14,7 @@ export class IntParser implements PropertyParser<number> {
|
|
|
14
14
|
`;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
parse(value:
|
|
17
|
+
parse(value: unknown): number {
|
|
18
18
|
return Convert.int(value);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Convert, text } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type { PropertyParser
|
|
3
|
+
import type { PropertyParser } from '../../types';
|
|
4
4
|
|
|
5
5
|
export class NumberParser implements PropertyParser<number> {
|
|
6
6
|
type(): string {
|
|
@@ -17,7 +17,7 @@ export class NumberParser implements PropertyParser<number> {
|
|
|
17
17
|
`;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
parse(value:
|
|
20
|
+
parse(value: unknown): number {
|
|
21
21
|
return Convert.number(value);
|
|
22
22
|
}
|
|
23
23
|
}
|
|
@@ -3,7 +3,7 @@ import { accessSync, existsSync, lstatSync } from 'node:fs';
|
|
|
3
3
|
import { isAbsolute, join } from 'node:path';
|
|
4
4
|
import { cwd } from 'node:process';
|
|
5
5
|
|
|
6
|
-
import type { PropertyParser
|
|
6
|
+
import type { PropertyParser } from '../../types';
|
|
7
7
|
|
|
8
8
|
export class FsPathParser implements PropertyParser<string> {
|
|
9
9
|
constructor(private readonly objectType: 'file' | 'dir') {}
|
|
@@ -19,7 +19,7 @@ export class FsPathParser implements PropertyParser<string> {
|
|
|
19
19
|
`;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
parse(value:
|
|
22
|
+
parse(value: unknown): string {
|
|
23
23
|
Assert.isString(value);
|
|
24
24
|
|
|
25
25
|
const wasRelative = !isAbsolute(value);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Assert, Size, SIZE_STRING_PATTERN, text } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type { PropertyParser
|
|
3
|
+
import type { PropertyParser } from '../../types';
|
|
4
4
|
|
|
5
5
|
export class SizeParser implements PropertyParser<Size> {
|
|
6
6
|
type(): string {
|
|
@@ -14,7 +14,7 @@ export class SizeParser implements PropertyParser<Size> {
|
|
|
14
14
|
`;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
parse(value:
|
|
17
|
+
parse(value: unknown): Size {
|
|
18
18
|
Assert.isString(value);
|
|
19
19
|
|
|
20
20
|
return Size.parse(value);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Assert } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type { PropertyParser
|
|
3
|
+
import type { PropertyParser } from '../../types';
|
|
4
4
|
|
|
5
5
|
export class StringParser implements PropertyParser<string> {
|
|
6
6
|
type(): string {
|
|
@@ -11,7 +11,7 @@ export class StringParser implements PropertyParser<string> {
|
|
|
11
11
|
return 'Extract arbitrary string.';
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
parse(value:
|
|
14
|
+
parse(value: unknown): string {
|
|
15
15
|
Assert.isString(value);
|
|
16
16
|
|
|
17
17
|
return value;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Assert, text, Timespan, TIMESPAN_STRING_PATTERN } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type { PropertyParser
|
|
3
|
+
import type { PropertyParser } from '../../types';
|
|
4
4
|
|
|
5
5
|
export class TimespanParser implements PropertyParser<Timespan> {
|
|
6
6
|
type(): string {
|
|
@@ -14,7 +14,7 @@ export class TimespanParser implements PropertyParser<Timespan> {
|
|
|
14
14
|
`;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
parse(value:
|
|
17
|
+
parse(value: unknown): Timespan {
|
|
18
18
|
Assert.isString(value);
|
|
19
19
|
|
|
20
20
|
return Timespan.parse(value);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Assert } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type { PropertyParser
|
|
3
|
+
import type { PropertyParser } from '../../types';
|
|
4
4
|
|
|
5
5
|
import { InvalidProtocol, InvalidUrl } from './exception';
|
|
6
6
|
|
|
@@ -15,7 +15,7 @@ export class UrlParser implements PropertyParser<URL> {
|
|
|
15
15
|
return 'Parses string into instance of URL';
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
parse(value:
|
|
18
|
+
parse(value: unknown): URL {
|
|
19
19
|
Assert.isString(value);
|
|
20
20
|
|
|
21
21
|
try {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isPrimitive, isRecord } from '@rsdk/common';
|
|
2
2
|
|
|
3
|
-
import type {
|
|
3
|
+
import type { RawValues, SourceType } from '../../types';
|
|
4
4
|
import { ConfigSourceException } from '../exceptions';
|
|
5
5
|
|
|
6
6
|
export abstract class ConfigSource {
|
|
@@ -81,7 +81,7 @@ export abstract class ConfigSource {
|
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
return acc;
|
|
84
|
-
}, new Map<string,
|
|
84
|
+
}, new Map<string, unknown>());
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
abstract name(): string;
|
package/src/config/types.ts
CHANGED
|
@@ -1,25 +1,11 @@
|
|
|
1
|
-
import type { EnumValue, Primitive, Size, Timespan } from '@rsdk/common';
|
|
2
|
-
|
|
3
1
|
export type SourceType = 'static' | 'reloadable';
|
|
4
|
-
export type RawConfigValue = Primitive | Primitive[];
|
|
5
|
-
|
|
6
|
-
export type SingleConfigValue =
|
|
7
|
-
| string
|
|
8
|
-
| number
|
|
9
|
-
| boolean
|
|
10
|
-
| Timespan
|
|
11
|
-
| Size
|
|
12
|
-
| EnumValue
|
|
13
|
-
| URL;
|
|
14
|
-
|
|
15
|
-
export type ConfigValue = SingleConfigValue | SingleConfigValue[];
|
|
16
2
|
|
|
17
3
|
export interface Changes {
|
|
18
4
|
createdKeys: string[];
|
|
19
5
|
updatedKeys: string[];
|
|
20
6
|
}
|
|
21
7
|
|
|
22
|
-
export interface PropertyOptions<T
|
|
8
|
+
export interface PropertyOptions<T> {
|
|
23
9
|
/**
|
|
24
10
|
* Description of configuration property. Will automatically
|
|
25
11
|
* appear in documentation.
|
|
@@ -32,7 +18,7 @@ export interface PropertyOptions<T extends ConfigValue> {
|
|
|
32
18
|
defaultValue?: T | undefined;
|
|
33
19
|
}
|
|
34
20
|
|
|
35
|
-
export interface PropertyMetadata<T
|
|
21
|
+
export interface PropertyMetadata<T = any> {
|
|
36
22
|
key: string;
|
|
37
23
|
parser: PropertyParser<T>;
|
|
38
24
|
description: string;
|
|
@@ -80,10 +66,10 @@ export interface ParserMetadata {
|
|
|
80
66
|
* mostly during decorator factories (such as @Property()) code is
|
|
81
67
|
* executed. Thus output **can** be used in autodoc
|
|
82
68
|
*/
|
|
83
|
-
export interface PropertyParser<T
|
|
69
|
+
export interface PropertyParser<T = any> {
|
|
84
70
|
type(): string;
|
|
85
71
|
description(): string;
|
|
86
|
-
parse(value:
|
|
72
|
+
parse(value: unknown): T;
|
|
87
73
|
}
|
|
88
74
|
|
|
89
|
-
export type RawValues = Map<string,
|
|
75
|
+
export type RawValues = Map<string, unknown>;
|
package/src/config/vars.class.ts
CHANGED
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
import { cloneDeep, isEqual } from 'lodash';
|
|
2
2
|
|
|
3
3
|
import { PropertyException } from './exceptions';
|
|
4
|
-
import type {
|
|
5
|
-
Changes,
|
|
6
|
-
ConfigValue,
|
|
7
|
-
PropertyMetadata,
|
|
8
|
-
RawConfigValue,
|
|
9
|
-
RawValues,
|
|
10
|
-
} from './types';
|
|
4
|
+
import type { Changes, PropertyMetadata, RawValues } from './types';
|
|
11
5
|
|
|
12
6
|
export enum SetResult {
|
|
13
7
|
CREATED,
|
|
@@ -16,7 +10,7 @@ export enum SetResult {
|
|
|
16
10
|
}
|
|
17
11
|
|
|
18
12
|
export class Vars {
|
|
19
|
-
private readonly values = new Map<string,
|
|
13
|
+
private readonly values = new Map<string, unknown>();
|
|
20
14
|
|
|
21
15
|
/**
|
|
22
16
|
* Expecting prefix is already converted to upper snake case
|
|
@@ -24,7 +18,7 @@ export class Vars {
|
|
|
24
18
|
*/
|
|
25
19
|
constructor(private readonly prefix: string) {}
|
|
26
20
|
|
|
27
|
-
set(key: string, value:
|
|
21
|
+
set(key: string, value: unknown): [SetResult, string] {
|
|
28
22
|
const preparedKey = this.toUpperSnakeCase(key);
|
|
29
23
|
const preparedValue = Array.isArray(value)
|
|
30
24
|
? cloneDeep(value).sort()
|
|
@@ -69,9 +63,7 @@ export class Vars {
|
|
|
69
63
|
return { createdKeys, updatedKeys };
|
|
70
64
|
}
|
|
71
65
|
|
|
72
|
-
extract<T
|
|
73
|
-
propertyMetadata: PropertyMetadata<T>,
|
|
74
|
-
): T | undefined {
|
|
66
|
+
extract<T>(propertyMetadata: PropertyMetadata<T>): T | undefined {
|
|
75
67
|
const { key, parser, defaultValue } = propertyMetadata;
|
|
76
68
|
const preparedKey = this.toUpperSnakeCase(key);
|
|
77
69
|
|
package/src/types/metadata.ts
CHANGED
|
@@ -2,7 +2,6 @@ import type { Primitive } from '@rsdk/common';
|
|
|
2
2
|
import { hasKey, isPrimitive } from '@rsdk/common';
|
|
3
3
|
|
|
4
4
|
import type {
|
|
5
|
-
ConfigValue,
|
|
6
5
|
ParserMetadata,
|
|
7
6
|
PropertyMetadata,
|
|
8
7
|
SectionMetadata,
|
|
@@ -18,7 +17,7 @@ export type SerializablePropertyMetadata = Omit<
|
|
|
18
17
|
};
|
|
19
18
|
|
|
20
19
|
function parseDefaultValue(
|
|
21
|
-
defaultValue:
|
|
20
|
+
defaultValue: any,
|
|
22
21
|
): Primitive | Primitive[] | undefined {
|
|
23
22
|
if (isPrimitive(defaultValue)) {
|
|
24
23
|
return defaultValue;
|