@gmb/bitmark-parser-generator 1.4.16 → 1.4.18
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/dist/browser/bitmark-parser-generator.min.js +1 -1
- package/dist/browser/bundle-report.html +2 -2
- package/dist/cjs/BitmarkParserGenerator.js +2 -13
- package/dist/cjs/BitmarkParserGenerator.js.map +1 -1
- package/dist/cjs/ast/Builder.js +8 -8
- package/dist/cjs/ast/Builder.js.map +1 -1
- package/dist/cjs/ast/rules/NodeValidator.js +6 -23
- package/dist/cjs/ast/rules/NodeValidator.js.map +1 -1
- package/dist/cjs/config/Config.js +57 -86
- package/dist/cjs/config/Config.js.map +1 -1
- package/dist/cjs/config/raw/bits.js +388 -450
- package/dist/cjs/config/raw/bits.js.map +1 -1
- package/dist/cjs/config/raw/properties.js +37 -0
- package/dist/cjs/config/raw/properties.js.map +1 -1
- package/dist/cjs/generated/build-info.js +1 -1
- package/dist/cjs/generator/bitmark/BitmarkGenerator.js +9 -11
- package/dist/cjs/generator/bitmark/BitmarkGenerator.js.map +1 -1
- package/dist/cjs/generator/json/JsonGenerator.js +236 -208
- package/dist/cjs/generator/json/JsonGenerator.js.map +1 -1
- package/dist/cjs/index.js +2 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/info/InfoBuilder.js +10 -33
- package/dist/cjs/info/InfoBuilder.js.map +1 -1
- package/dist/cjs/model/ast/NodeType.js +16 -0
- package/dist/cjs/model/ast/NodeType.js.map +1 -1
- package/dist/cjs/model/config/BitConfig.js +8 -7
- package/dist/cjs/model/config/BitConfig.js.map +1 -1
- package/dist/cjs/model/config/enum/PropertyConfigKey.js +7 -0
- package/dist/cjs/model/config/enum/PropertyConfigKey.js.map +1 -1
- package/dist/cjs/model/enum/BitType.js +86 -84
- package/dist/cjs/model/enum/BitType.js.map +1 -1
- package/dist/cjs/model/enum/PropertyAstKey.js +2 -0
- package/dist/cjs/model/enum/PropertyAstKey.js.map +1 -1
- package/dist/cjs/model/enum/PropertyTag.js +5 -0
- package/dist/cjs/model/enum/PropertyTag.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js +14 -14
- package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js +6 -6
- package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +11 -10
- package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js +52 -47
- package/dist/cjs/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/{CommentTagContentProcessor.js → InternalCommentTagContentProcessor.js} +5 -5
- package/dist/cjs/parser/bitmark/peg/contentProcessors/InternalCommentTagContentProcessor.js.map +1 -0
- package/dist/cjs/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkTagContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/PartnerChainContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js +2 -2
- package/dist/cjs/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.js +15 -17
- package/dist/cjs/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.js +14 -11
- package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.js.map +1 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js.map +1 -1
- package/dist/cjs/parser/json/JsonParser.js +9 -9
- package/dist/cjs/parser/json/JsonParser.js.map +1 -1
- package/dist/cjs/utils/ObjectUtils.js +62 -0
- package/dist/cjs/utils/ObjectUtils.js.map +1 -1
- package/dist/esm/BitmarkParserGenerator.js +2 -13
- package/dist/esm/BitmarkParserGenerator.js.map +1 -1
- package/dist/esm/ast/Builder.js +9 -9
- package/dist/esm/ast/Builder.js.map +1 -1
- package/dist/esm/ast/rules/NodeValidator.js +6 -23
- package/dist/esm/ast/rules/NodeValidator.js.map +1 -1
- package/dist/esm/config/Config.js +57 -86
- package/dist/esm/config/Config.js.map +1 -1
- package/dist/esm/config/raw/bits.js +389 -451
- package/dist/esm/config/raw/bits.js.map +1 -1
- package/dist/esm/config/raw/properties.js +37 -0
- package/dist/esm/config/raw/properties.js.map +1 -1
- package/dist/esm/generated/build-info.js +1 -1
- package/dist/esm/generator/bitmark/BitmarkGenerator.js +10 -12
- package/dist/esm/generator/bitmark/BitmarkGenerator.js.map +1 -1
- package/dist/esm/generator/json/JsonGenerator.js +237 -209
- package/dist/esm/generator/json/JsonGenerator.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/info/InfoBuilder.js +11 -34
- package/dist/esm/info/InfoBuilder.js.map +1 -1
- package/dist/esm/model/ast/NodeType.js +16 -0
- package/dist/esm/model/ast/NodeType.js.map +1 -1
- package/dist/esm/model/config/BitConfig.js +8 -7
- package/dist/esm/model/config/BitConfig.js.map +1 -1
- package/dist/esm/model/config/enum/PropertyConfigKey.js +7 -0
- package/dist/esm/model/config/enum/PropertyConfigKey.js.map +1 -1
- package/dist/esm/model/enum/BitType.js +85 -82
- package/dist/esm/model/enum/BitType.js.map +1 -1
- package/dist/esm/model/enum/PropertyAstKey.js +2 -0
- package/dist/esm/model/enum/PropertyAstKey.js.map +1 -1
- package/dist/esm/model/enum/PropertyTag.js +5 -0
- package/dist/esm/model/enum/PropertyTag.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js +15 -15
- package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js +6 -6
- package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +12 -11
- package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js +53 -48
- package/dist/esm/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/{CommentTagContentProcessor.js → InternalCommentTagContentProcessor.js} +5 -5
- package/dist/esm/parser/bitmark/peg/contentProcessors/InternalCommentTagContentProcessor.js.map +1 -0
- package/dist/esm/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/MarkTagContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/PartnerChainContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js +2 -2
- package/dist/esm/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.js +16 -18
- package/dist/esm/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.js +15 -12
- package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.js.map +1 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js.map +1 -1
- package/dist/esm/parser/json/JsonParser.js +10 -10
- package/dist/esm/parser/json/JsonParser.js.map +1 -1
- package/dist/esm/utils/ObjectUtils.js +59 -0
- package/dist/esm/utils/ObjectUtils.js.map +1 -1
- package/dist/types/BitmarkParserGenerator.d.ts.map +1 -1
- package/dist/types/ast/Builder.d.ts +9 -2
- package/dist/types/ast/Builder.d.ts.map +1 -1
- package/dist/types/ast/rules/NodeValidator.d.ts +0 -1
- package/dist/types/ast/rules/NodeValidator.d.ts.map +1 -1
- package/dist/types/config/Config.d.ts +16 -28
- package/dist/types/config/Config.d.ts.map +1 -1
- package/dist/types/config/raw/bits.d.ts.map +1 -1
- package/dist/types/config/raw/properties.d.ts.map +1 -1
- package/dist/types/generator/bitmark/BitmarkGenerator.d.ts +4 -4
- package/dist/types/generator/bitmark/BitmarkGenerator.d.ts.map +1 -1
- package/dist/types/generator/json/JsonGenerator.d.ts +22 -22
- package/dist/types/generator/json/JsonGenerator.d.ts.map +1 -1
- package/dist/types/generator/text/TextGenerator.d.ts +2 -2
- package/dist/types/generator/text/TextGenerator.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/info/InfoBuilder.d.ts +3 -4
- package/dist/types/info/InfoBuilder.d.ts.map +1 -1
- package/dist/types/model/ast/NodeType.d.ts +32 -0
- package/dist/types/model/ast/NodeType.d.ts.map +1 -1
- package/dist/types/model/ast/Nodes.d.ts +9 -2
- package/dist/types/model/ast/Nodes.d.ts.map +1 -1
- package/dist/types/model/config/BitConfig.d.ts +5 -4
- package/dist/types/model/config/BitConfig.d.ts.map +1 -1
- package/dist/types/model/config/_Config.d.ts +3 -5
- package/dist/types/model/config/_Config.d.ts.map +1 -1
- package/dist/types/model/config/enum/ConfigKey.d.ts +14 -0
- package/dist/types/model/config/enum/ConfigKey.d.ts.map +1 -1
- package/dist/types/model/config/enum/PropertyConfigKey.d.ts +21 -0
- package/dist/types/model/config/enum/PropertyConfigKey.d.ts.map +1 -1
- package/dist/types/model/enum/BitType.d.ts +171 -178
- package/dist/types/model/enum/BitType.d.ts.map +1 -1
- package/dist/types/model/enum/PropertyAstKey.d.ts +4 -0
- package/dist/types/model/enum/PropertyAstKey.d.ts.map +1 -1
- package/dist/types/model/enum/PropertyTag.d.ts +10 -0
- package/dist/types/model/enum/PropertyTag.d.ts.map +1 -1
- package/dist/types/model/json/BitJson.d.ts +5 -0
- package/dist/types/model/json/BitJson.d.ts.map +1 -1
- package/dist/types/model/json/ParserJson.d.ts +1 -1
- package/dist/types/model/json/ParserJson.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/BitmarkPegParserProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts +6 -6
- package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/BitmarkPegParserValidator.d.ts +6 -6
- package/dist/types/parser/bitmark/peg/BitmarkPegParserValidator.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/InternalCommentTagContentProcessor.d.ts +5 -0
- package/dist/types/parser/bitmark/peg/contentProcessors/InternalCommentTagContentProcessor.d.ts.map +1 -0
- package/dist/types/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/MarkTagContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/MarkTagContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/PartnerChainContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/PartnerChainContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.d.ts +3 -3
- package/dist/types/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.d.ts +3 -3
- package/dist/types/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.d.ts +2 -2
- package/dist/types/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.d.ts.map +1 -1
- package/dist/types/parser/json/JsonParser.d.ts.map +1 -1
- package/dist/types/utils/ObjectUtils.d.ts +9 -0
- package/dist/types/utils/ObjectUtils.d.ts.map +1 -1
- package/package.json +3 -1
- package/dist/cjs/parser/bitmark/peg/contentProcessors/CommentTagContentProcessor.js.map +0 -1
- package/dist/esm/parser/bitmark/peg/contentProcessors/CommentTagContentProcessor.js.map +0 -1
- package/dist/types/parser/bitmark/peg/contentProcessors/CommentTagContentProcessor.d.ts +0 -5
- package/dist/types/parser/bitmark/peg/contentProcessors/CommentTagContentProcessor.d.ts.map +0 -1
|
@@ -6,35 +6,53 @@ const ResourceTagConfig_1 = require("../model/config/ResourceTagConfig");
|
|
|
6
6
|
const ResourcesConfig_1 = require("../model/config/ResourcesConfig");
|
|
7
7
|
const GroupConfigType_1 = require("../model/config/enum/GroupConfigType");
|
|
8
8
|
const BitTagType_1 = require("../model/enum/BitTagType");
|
|
9
|
+
const BitType_1 = require("../model/enum/BitType");
|
|
9
10
|
const TextFormat_1 = require("../model/enum/TextFormat");
|
|
11
|
+
const ObjectUtils_1 = require("../utils/ObjectUtils");
|
|
10
12
|
const ConfigHydrator_1 = require("./ConfigHydrator");
|
|
11
13
|
const bits_1 = require("./raw/bits");
|
|
12
14
|
const groups_1 = require("./raw/groups");
|
|
13
15
|
const properties_1 = require("./raw/properties");
|
|
14
|
-
const BitType_1 = require("../model/enum/BitType");
|
|
15
16
|
class Config {
|
|
16
17
|
constructor() {
|
|
17
|
-
this.bitTypeAliasMap = new Map();
|
|
18
18
|
this.bitCache = new Map();
|
|
19
19
|
this.comboResourcesCache = new Map();
|
|
20
|
-
//
|
|
21
|
-
this.buildBitTypeAliasMap();
|
|
20
|
+
//
|
|
22
21
|
}
|
|
23
22
|
/**
|
|
24
|
-
* Return the bitType
|
|
23
|
+
* Return the bitType given a bit type that may be invalid
|
|
25
24
|
*
|
|
26
|
-
* If the bit type is not found, the
|
|
25
|
+
* If the bit type is not found, the _error bit type will be returned.
|
|
26
|
+
*
|
|
27
|
+
* @param bitType bit type in (may be invalid)
|
|
28
|
+
* @returns valid bitType, or _error if the bit type is invalid
|
|
29
|
+
*/
|
|
30
|
+
getBitType(bitType) {
|
|
31
|
+
var _a;
|
|
32
|
+
return (_a = BitType_1.BitType.fromValue(bitType)) !== null && _a !== void 0 ? _a : BitType_1.BitType._error;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Check if a bit type is and instance of the given root bit type.
|
|
27
36
|
*
|
|
28
|
-
* @param
|
|
29
|
-
* @
|
|
37
|
+
* @param bitType the bit type
|
|
38
|
+
* @param baseBitType the root bit type or types to check
|
|
30
39
|
*/
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
40
|
+
isOfBitType(bitType, baseBitType) {
|
|
41
|
+
if (!bitType)
|
|
42
|
+
return false;
|
|
43
|
+
if (bitType === baseBitType)
|
|
44
|
+
return true;
|
|
45
|
+
const bitConfig = this.getBitConfig(bitType);
|
|
46
|
+
if (!bitConfig)
|
|
47
|
+
return false;
|
|
48
|
+
if (Array.isArray(baseBitType)) {
|
|
49
|
+
for (const bt of baseBitType) {
|
|
50
|
+
if (bitConfig.inheritedBitTypesSet.has(bt))
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
return bitConfig.inheritedBitTypesSet.has(baseBitType);
|
|
38
56
|
}
|
|
39
57
|
/**
|
|
40
58
|
* Get the configuration for a bit.
|
|
@@ -44,35 +62,35 @@ class Config {
|
|
|
44
62
|
*/
|
|
45
63
|
getBitConfig(bitType) {
|
|
46
64
|
var _a;
|
|
47
|
-
let bitConfig = this.bitCache.get(bitType
|
|
65
|
+
let bitConfig = this.bitCache.get(bitType);
|
|
48
66
|
if (!bitConfig) {
|
|
49
67
|
const throwNotFoundError = () => {
|
|
50
|
-
throw new Error(`No config found for bit:
|
|
68
|
+
throw new Error(`No config found for bit: ${bitType}`);
|
|
51
69
|
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
70
|
+
// Get the bit configs, following the inheritance tree
|
|
71
|
+
const inheritedBitTypes = [];
|
|
72
|
+
const _bitConfigTree = [];
|
|
73
|
+
let bitTypeCurrent = bitType;
|
|
74
|
+
while (bitTypeCurrent) {
|
|
75
|
+
const _bitConfig = bits_1.BITS[bitTypeCurrent];
|
|
76
|
+
if (!_bitConfig)
|
|
77
|
+
throwNotFoundError();
|
|
78
|
+
inheritedBitTypes.push(bitTypeCurrent);
|
|
79
|
+
_bitConfigTree.push(_bitConfig);
|
|
80
|
+
bitTypeCurrent = _bitConfig.baseBitType;
|
|
62
81
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
//
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
: [];
|
|
82
|
+
// Reverse the tree so that the root is first
|
|
83
|
+
_bitConfigTree.reverse();
|
|
84
|
+
// Loop the tree, merging the configs
|
|
85
|
+
const _mergedBitConfig = _bitConfigTree.reduce((acc, cur) => {
|
|
86
|
+
acc = ObjectUtils_1.ObjectUtils.deepMerge(acc, cur);
|
|
87
|
+
return acc;
|
|
88
|
+
}, {});
|
|
71
89
|
// Extract the root config
|
|
72
|
-
const { textFormatDefault, tags: _tags, cardSet: _cardSet, bodyAllowed, bodyRequired, footerAllowed, footerRequired, resourceAttachmentAllowed, rootExampleType, } =
|
|
90
|
+
const { since, textFormatDefault, tags: _tags, cardSet: _cardSet, deprecated, bodyAllowed, bodyRequired, footerAllowed, footerRequired, resourceAttachmentAllowed, rootExampleType, } = _mergedBitConfig;
|
|
73
91
|
// Hydratre the configuration
|
|
74
92
|
const zeroCountAllResourcesTags = this.getAllResourcesTagsWithZeroCounts();
|
|
75
|
-
const bitTags = ConfigHydrator_1.ConfigHydrator.hydrateTagsConfig(_tags);
|
|
93
|
+
const bitTags = ConfigHydrator_1.ConfigHydrator.hydrateTagsConfig(_tags !== null && _tags !== void 0 ? _tags : []);
|
|
76
94
|
const cardSet = ConfigHydrator_1.ConfigHydrator.hydrateCardSetConfig(_cardSet);
|
|
77
95
|
// Merge the allResourcesTags with the bitTags *in the correct order*
|
|
78
96
|
const comboResourceTagType = (_a = bitTags.info) === null || _a === void 0 ? void 0 : _a.comboResourceType;
|
|
@@ -82,9 +100,9 @@ class Config {
|
|
|
82
100
|
tags[k] = v;
|
|
83
101
|
}
|
|
84
102
|
// Create the bit config
|
|
85
|
-
bitConfig = new BitConfig_1.BitConfig(since, bitType,
|
|
103
|
+
bitConfig = new BitConfig_1.BitConfig(since, bitType, inheritedBitTypes, textFormatDefault !== null && textFormatDefault !== void 0 ? textFormatDefault : TextFormat_1.TextFormat.bitmarkMinusMinus, tags, cardSet, deprecated, bodyAllowed, bodyRequired, footerAllowed, footerRequired, resourceAttachmentAllowed, rootExampleType, comboResourceTagType);
|
|
86
104
|
// Add to cache
|
|
87
|
-
this.bitCache.set(bitType
|
|
105
|
+
this.bitCache.set(bitType, bitConfig);
|
|
88
106
|
}
|
|
89
107
|
return bitConfig;
|
|
90
108
|
}
|
|
@@ -300,53 +318,6 @@ class Config {
|
|
|
300
318
|
}
|
|
301
319
|
return allResourcesTags;
|
|
302
320
|
}
|
|
303
|
-
/**
|
|
304
|
-
* Builds a map to enable fast lookup of the bit type from the bit type alias.
|
|
305
|
-
*/
|
|
306
|
-
buildBitTypeAliasMap() {
|
|
307
|
-
// Ensure bit type aliases to itself
|
|
308
|
-
for (const v of BitType_1.RootBitType.values()) {
|
|
309
|
-
this.bitTypeAliasMap.set(v, v);
|
|
310
|
-
}
|
|
311
|
-
// Aliases to bit type
|
|
312
|
-
for (const [k, v] of Object.entries(bits_1.BITS)) {
|
|
313
|
-
if (v.aliases) {
|
|
314
|
-
for (const kAlias of Object.keys(v.aliases)) {
|
|
315
|
-
this.bitTypeAliasMap.set(kAlias, k);
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
}
|
|
320
|
-
/**
|
|
321
|
-
* Get the root bit type from a root or alias bit type.
|
|
322
|
-
*
|
|
323
|
-
* @param bitTypeOrAlias
|
|
324
|
-
* @returns
|
|
325
|
-
*/
|
|
326
|
-
getRootBitType(bitTypeOrAlias) {
|
|
327
|
-
var _a;
|
|
328
|
-
if (!bitTypeOrAlias)
|
|
329
|
-
return BitType_1.RootBitType._error;
|
|
330
|
-
let bitType = (_a = this.bitTypeAliasMap.get(bitTypeOrAlias)) !== null && _a !== void 0 ? _a : BitType_1.RootBitType._error;
|
|
331
|
-
if (bitType === BitType_1.RootBitType._error && bitTypeOrAlias && bitTypeOrAlias.startsWith('|')) {
|
|
332
|
-
bitType = BitType_1.RootBitType._comment;
|
|
333
|
-
}
|
|
334
|
-
return bitType;
|
|
335
|
-
}
|
|
336
|
-
/**
|
|
337
|
-
* Get the aliased bit type from a root or alias bit type.
|
|
338
|
-
*
|
|
339
|
-
* @param bitTypeOrAlias
|
|
340
|
-
* @returns
|
|
341
|
-
*/
|
|
342
|
-
getAliasedBitType(bitTypeOrAlias) {
|
|
343
|
-
var _a, _b;
|
|
344
|
-
let bitType = (_b = (_a = BitType_1.AliasBitType.fromValue(bitTypeOrAlias)) !== null && _a !== void 0 ? _a : BitType_1.RootBitType.fromValue(bitTypeOrAlias)) !== null && _b !== void 0 ? _b : BitType_1.RootBitType._error;
|
|
345
|
-
if (bitType === BitType_1.RootBitType._error && bitTypeOrAlias && bitTypeOrAlias.startsWith('|')) {
|
|
346
|
-
bitType = BitType_1.RootBitType._comment;
|
|
347
|
-
}
|
|
348
|
-
return bitType;
|
|
349
|
-
}
|
|
350
321
|
}
|
|
351
322
|
const instance = new Config();
|
|
352
323
|
exports.Config = instance;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../src/config/Config.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AACtD,yEAAsE;AACtE,qEAAkE;AAIlE,0EAAuE;AACvE,yDAAsD;
|
|
1
|
+
{"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../src/config/Config.ts"],"names":[],"mappings":"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"}
|