@fgv/ts-res 5.0.0-11 → 5.0.0-14
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/.vscode/4.json +3 -0
- package/.vscode/launch.json +16 -0
- package/.vscode/settings.json +3 -0
- package/config/api-extractor.json +343 -0
- package/config/rig.json +16 -0
- package/dist/ts-res.d.ts +180 -13
- package/dist/tsdoc-metadata.json +1 -1
- package/lib/packlets/config/configInitFactory.d.ts +78 -0
- package/lib/packlets/config/configInitFactory.js +147 -0
- package/lib/packlets/config/index.d.ts +1 -0
- package/lib/packlets/config/index.js +1 -0
- package/lib/packlets/config/systemConfiguration.d.ts +16 -3
- package/lib/packlets/config/systemConfiguration.js +19 -40
- package/lib/packlets/qualifier-types/config/json.d.ts +13 -0
- package/lib/packlets/qualifier-types/config/json.js +11 -0
- package/lib/packlets/resource-types/resourceType.d.ts +59 -3
- package/lib/packlets/resource-types/resourceType.js +2 -2
- package/lib/packlets/resources/resource.d.ts +1 -5
- package/lib/packlets/resources/resource.js +2 -8
- package/lib/packlets/runtime/compiledResourceCollection.d.ts +2 -2
- package/lib/packlets/runtime/iResourceManager.d.ts +2 -2
- package/lib/test/data/sample.json +32 -0
- package/lib/test/unit/bundle/bundleBuilder.test.d.ts +2 -0
- package/lib/test/unit/bundle/bundleLoader.test.d.ts +2 -0
- package/lib/test/unit/bundle/bundleUtils.test.d.ts +2 -0
- package/lib/test/unit/bundle/convert.test.d.ts +2 -0
- package/lib/test/unit/bundle/integration.test.d.ts +2 -0
- package/lib/test/unit/bundle/model.test.d.ts +2 -0
- package/lib/test/unit/bundle/normalization.test.d.ts +2 -0
- package/lib/test/unit/common/conditions.test.d.ts +2 -0
- package/lib/test/unit/common/helpers/conditions.test.d.ts +2 -0
- package/lib/test/unit/common/helpers/contexts.test.d.ts +2 -0
- package/lib/test/unit/common/helpers/qualifierDefaultValues.test.d.ts +2 -0
- package/lib/test/unit/common/resources.test.d.ts +2 -0
- package/lib/test/unit/conditions/condition.test.d.ts +2 -0
- package/lib/test/unit/conditions/conditionCollector.test.d.ts +2 -0
- package/lib/test/unit/conditions/conditionScoreAsDefault.test.d.ts +2 -0
- package/lib/test/unit/conditions/conditionSet.test.d.ts +2 -0
- package/lib/test/unit/conditions/conditionSetCollector.test.d.ts +2 -0
- package/lib/test/unit/conditions/conditionToken.test.d.ts +2 -0
- package/lib/test/unit/conditions/convert.test.d.ts +2 -0
- package/lib/test/unit/config/common.test.d.ts +2 -0
- package/lib/test/unit/config/convert.test.d.ts +2 -0
- package/lib/test/unit/config/predefined/default.test.d.ts +2 -0
- package/lib/test/unit/config/predefined/extended.test.d.ts +2 -0
- package/lib/test/unit/config/systemConfiguration.test.d.ts +2 -0
- package/lib/test/unit/config/systemConfigurationInitParams.test.d.ts +2 -0
- package/lib/test/unit/context/contextToken.test.d.ts +2 -0
- package/lib/test/unit/context/convert.test.d.ts +2 -0
- package/lib/test/unit/decisions/abstractDecision.test.d.ts +2 -0
- package/lib/test/unit/decisions/abstractDecisionCollector.test.d.ts +2 -0
- package/lib/test/unit/decisions/candidate.test.d.ts +2 -0
- package/lib/test/unit/decisions/concreteDecision.test.d.ts +2 -0
- package/lib/test/unit/decisions/decision.test.d.ts +2 -0
- package/lib/test/unit/import/collectionImporter.test.d.ts +2 -0
- package/lib/test/unit/import/fsItem.test.d.ts +2 -0
- package/lib/test/unit/import/fsItemImporter.test.d.ts +2 -0
- package/lib/test/unit/import/importContext.test.d.ts +2 -0
- package/lib/test/unit/import/importManager.test.d.ts +2 -0
- package/lib/test/unit/import/jsonImporter.test.d.ts +2 -0
- package/lib/test/unit/import/pathImporter.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/convert.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/helpers.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/languageQualifierType.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/literalQualifierType.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/literalValueHierarchy.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/qualifierType.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/qualifierTypeCollector.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/territoryQualifierType.test.d.ts +2 -0
- package/lib/test/unit/qualifier-types/testQualifierType.d.ts +15 -0
- package/lib/test/unit/qualifier-types/testQualifierType.js +89 -0
- package/lib/test/unit/qualifiers/convert.test.d.ts +2 -0
- package/lib/test/unit/qualifiers/qualifierCollector.test.d.ts +2 -0
- package/lib/test/unit/qualifiers/qualifierDefaultValue.test.d.ts +2 -0
- package/lib/test/unit/qualifiers/qualifierDefaultValueToken.test.d.ts +2 -0
- package/lib/test/unit/resource-json/convert.test.d.ts +2 -0
- package/lib/test/unit/resource-json/nameInheritance.test.d.ts +2 -0
- package/lib/test/unit/resource-json/resourceDeclCollection.test.d.ts +2 -0
- package/lib/test/unit/resource-json/resourceDeclTree.test.d.ts +2 -0
- package/lib/test/unit/resource-types/jsonResourceType.test.d.ts +2 -0
- package/lib/test/unit/resource-types/resourceTypeCollector.test.d.ts +2 -0
- package/lib/test/unit/resources/candidateReducer.integration.test.d.ts +2 -0
- package/lib/test/unit/resources/candidateReducer.test.d.ts +2 -0
- package/lib/test/unit/resources/reduceCandidates.test.d.ts +2 -0
- package/lib/test/unit/resources/reduceQualifiers.comprehensive.test.d.ts +2 -0
- package/lib/test/unit/resources/reduceQualifiers.test.d.ts +2 -0
- package/lib/test/unit/resources/resource.test.d.ts +2 -0
- package/lib/test/unit/resources/resourceBuilder.test.d.ts +2 -0
- package/lib/test/unit/resources/resourceCandidate.test.d.ts +2 -0
- package/lib/test/unit/resources/resourceManagerBuilder.getBuiltResourceTree.test.d.ts +2 -0
- package/lib/test/unit/resources/resourceManagerBuilder.test.d.ts +2 -0
- package/lib/test/unit/runtime/cacheListener.test.d.ts +2 -0
- package/lib/test/unit/runtime/cacheMetrics.test.d.ts +2 -0
- package/lib/test/unit/runtime/compiledResourceCollection.test.d.ts +2 -0
- package/lib/test/unit/runtime/conditionSetResolutionResult.comprehensive.test.d.ts +2 -0
- package/lib/test/unit/runtime/conditionSetResolutionResult.test.d.ts +2 -0
- package/lib/test/unit/runtime/context/contextQualifierProvider.test.d.ts +2 -0
- package/lib/test/unit/runtime/context/contextQualifierProviderValidator.test.d.ts +2 -0
- package/lib/test/unit/runtime/context/simpleContextQualifierProvider.test.d.ts +2 -0
- package/lib/test/unit/runtime/context/validatingSimpleContextQualifierProvider.test.d.ts +2 -0
- package/lib/test/unit/runtime/resource-tree/readOnlyResourceTree.test.d.ts +2 -0
- package/lib/test/unit/runtime/resource-tree/resourceTreeChildren.test.d.ts +2 -0
- package/lib/test/unit/runtime/resource-tree/resourceTreeChildrenValidator.test.d.ts +2 -0
- package/lib/test/unit/runtime/resourceResolver.defaultResolution.test.d.ts +2 -0
- package/lib/test/unit/runtime/resourceResolver.test.d.ts +2 -0
- package/lib/test/unit/runtime/validate.test.d.ts +2 -0
- package/package.json +18 -25
- package/src/index.ts +73 -0
- package/src/packlets/bundle/bundleBuilder.ts +159 -0
- package/src/packlets/bundle/bundleLoader.ts +157 -0
- package/src/packlets/bundle/bundleNormalizer.ts +173 -0
- package/src/packlets/bundle/bundleUtils.ts +142 -0
- package/src/packlets/bundle/convert.ts +87 -0
- package/src/packlets/bundle/index.ts +52 -0
- package/src/packlets/bundle/model.ts +138 -0
- package/src/packlets/common/conditions.ts +226 -0
- package/src/packlets/common/convert.ts +184 -0
- package/src/packlets/common/helpers/conditions.ts +84 -0
- package/src/packlets/common/helpers/context.ts +88 -0
- package/src/packlets/common/helpers/index.ts +26 -0
- package/src/packlets/common/helpers/qualifierDefaultValues.ts +91 -0
- package/src/packlets/common/helpers/resources.ts +96 -0
- package/src/packlets/common/index.ts +30 -0
- package/src/packlets/common/resources.ts +78 -0
- package/src/packlets/common/validate/conditions.ts +595 -0
- package/src/packlets/common/validate/index.ts +27 -0
- package/src/packlets/common/validate/regularExpressions.ts +92 -0
- package/src/packlets/common/validate/resources.ts +170 -0
- package/src/packlets/conditions/condition.ts +351 -0
- package/src/packlets/conditions/conditionCollector.ts +103 -0
- package/src/packlets/conditions/conditionDecls.ts +50 -0
- package/src/packlets/conditions/conditionSet.ts +318 -0
- package/src/packlets/conditions/conditionSetCollector.ts +127 -0
- package/src/packlets/conditions/conditionSetDecls.ts +41 -0
- package/src/packlets/conditions/conditionToken.ts +180 -0
- package/src/packlets/conditions/convert/conditionSetDecls.ts +72 -0
- package/src/packlets/conditions/convert/decls.ts +95 -0
- package/src/packlets/conditions/convert/index.ts +24 -0
- package/src/packlets/conditions/index.ts +33 -0
- package/src/packlets/config/common.ts +107 -0
- package/src/packlets/config/configInitFactory.ts +142 -0
- package/src/packlets/config/convert.ts +50 -0
- package/src/packlets/config/index.ts +30 -0
- package/src/packlets/config/json.ts +43 -0
- package/src/packlets/config/predefined/default.ts +150 -0
- package/src/packlets/config/predefined/extended.ts +198 -0
- package/src/packlets/config/predefined/index.ts +26 -0
- package/src/packlets/config/systemConfiguration.ts +217 -0
- package/src/packlets/context/contextDecls.ts +76 -0
- package/src/packlets/context/contextToken.ts +252 -0
- package/src/packlets/context/convert/decls.ts +126 -0
- package/src/packlets/context/convert/index.ts +23 -0
- package/src/packlets/context/index.ts +27 -0
- package/src/packlets/decisions/abstractDecision.ts +87 -0
- package/src/packlets/decisions/abstractDecisionCollector.ts +122 -0
- package/src/packlets/decisions/candidate.ts +101 -0
- package/src/packlets/decisions/common.ts +37 -0
- package/src/packlets/decisions/concreteDecision.ts +157 -0
- package/src/packlets/decisions/decision.ts +172 -0
- package/src/packlets/decisions/index.ts +28 -0
- package/src/packlets/import/fsItem.ts +212 -0
- package/src/packlets/import/importContext.ts +183 -0
- package/src/packlets/import/importManager.ts +187 -0
- package/src/packlets/import/importable.ts +107 -0
- package/src/packlets/import/importers/collectionImporter.ts +153 -0
- package/src/packlets/import/importers/fsItemImporter.ts +154 -0
- package/src/packlets/import/importers/importer.ts +58 -0
- package/src/packlets/import/importers/index.ts +27 -0
- package/src/packlets/import/importers/jsonImporter.ts +133 -0
- package/src/packlets/import/importers/pathImporter.ts +134 -0
- package/src/packlets/import/index.ts +29 -0
- package/src/packlets/qualifier-types/config/convert.ts +108 -0
- package/src/packlets/qualifier-types/config/index.ts +27 -0
- package/src/packlets/qualifier-types/config/json.ts +126 -0
- package/src/packlets/qualifier-types/convert.ts +77 -0
- package/src/packlets/qualifier-types/helpers.ts +94 -0
- package/src/packlets/qualifier-types/index.ts +34 -0
- package/src/packlets/qualifier-types/languageQualifierType.ts +143 -0
- package/src/packlets/qualifier-types/literalQualifierType.ts +244 -0
- package/src/packlets/qualifier-types/literalValueHierarchy.ts +332 -0
- package/src/packlets/qualifier-types/qualifierType.ts +360 -0
- package/src/packlets/qualifier-types/qualifierTypeCollector.ts +102 -0
- package/src/packlets/qualifier-types/territoryQualifierType.ts +255 -0
- package/src/packlets/qualifiers/convert/decls.ts +90 -0
- package/src/packlets/qualifiers/convert/index.ts +24 -0
- package/src/packlets/qualifiers/convert/qualifier.ts +55 -0
- package/src/packlets/qualifiers/index.ts +31 -0
- package/src/packlets/qualifiers/qualifier.ts +169 -0
- package/src/packlets/qualifiers/qualifierCollector.ts +194 -0
- package/src/packlets/qualifiers/qualifierDecl.ts +80 -0
- package/src/packlets/qualifiers/qualifierDefaultValueDecls.ts +57 -0
- package/src/packlets/qualifiers/qualifierDefaultValueToken.ts +230 -0
- package/src/packlets/resource-json/compiled/common.ts +35 -0
- package/src/packlets/resource-json/compiled/convert.ts +143 -0
- package/src/packlets/resource-json/compiled/index.ts +27 -0
- package/src/packlets/resource-json/compiled/json.ts +239 -0
- package/src/packlets/resource-json/convert.ts +236 -0
- package/src/packlets/resource-json/helpers.ts +284 -0
- package/src/packlets/resource-json/index.ts +33 -0
- package/src/packlets/resource-json/json.ts +295 -0
- package/src/packlets/resource-json/normalized.ts +211 -0
- package/src/packlets/resource-json/resourceDeclCollection.ts +117 -0
- package/src/packlets/resource-json/resourceDeclContainer.ts +48 -0
- package/src/packlets/resource-json/resourceDeclTree.ts +116 -0
- package/src/packlets/resource-types/config/convert.ts +36 -0
- package/src/packlets/resource-types/config/index.ts +27 -0
- package/src/packlets/resource-types/config/json.ts +30 -0
- package/src/packlets/resource-types/helpers.ts +44 -0
- package/src/packlets/resource-types/index.ts +30 -0
- package/src/packlets/resource-types/jsonResourceType.ts +96 -0
- package/src/packlets/resource-types/resourceType.ts +215 -0
- package/src/packlets/resource-types/resourceTypeCollector.ts +79 -0
- package/src/packlets/resources/candidateReducer.ts +331 -0
- package/src/packlets/resources/common.ts +98 -0
- package/src/packlets/resources/index.ts +28 -0
- package/src/packlets/resources/resource.ts +307 -0
- package/src/packlets/resources/resourceBuilder.ts +269 -0
- package/src/packlets/resources/resourceCandidate.ts +333 -0
- package/src/packlets/resources/resourceManagerBuilder.ts +1116 -0
- package/src/packlets/runtime/cacheListener.ts +113 -0
- package/src/packlets/runtime/cacheMetrics.ts +206 -0
- package/src/packlets/runtime/compiledResourceCollection.ts +607 -0
- package/src/packlets/runtime/conditionSetResolutionResult.ts +160 -0
- package/src/packlets/runtime/context/contextQualifierProvider.ts +117 -0
- package/src/packlets/runtime/context/contextQualifierProviderValidator.ts +281 -0
- package/src/packlets/runtime/context/index.ts +26 -0
- package/src/packlets/runtime/context/simpleContextQualifierProvider.ts +225 -0
- package/src/packlets/runtime/context/validatingSimpleContextQualifierProvider.ts +96 -0
- package/src/packlets/runtime/iResourceManager.ts +130 -0
- package/src/packlets/runtime/index.ts +35 -0
- package/src/packlets/runtime/resource-tree/common.ts +126 -0
- package/src/packlets/runtime/resource-tree/index.ts +26 -0
- package/src/packlets/runtime/resource-tree/readOnlyResourceTree.ts +342 -0
- package/src/packlets/runtime/resource-tree/resourceTreeChildren.ts +125 -0
- package/src/packlets/runtime/resource-tree/resourceTreeChildrenValidator.ts +189 -0
- package/src/packlets/runtime/resourceResolver.ts +626 -0
- package/src/packlets/runtime/validate.ts +63 -0
- package/CHANGELOG.md +0 -14
- package/CLAUDE.md +0 -186
- package/EXAMPLE_INIT_PARAMS.md +0 -88
- package/PROGRESS_SUMMARY.md +0 -48
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/packlets/bundle/bundleBuilder.d.ts.map +0 -1
- package/lib/packlets/bundle/bundleBuilder.js.map +0 -1
- package/lib/packlets/bundle/bundleLoader.d.ts.map +0 -1
- package/lib/packlets/bundle/bundleLoader.js.map +0 -1
- package/lib/packlets/bundle/bundleNormalizer.d.ts.map +0 -1
- package/lib/packlets/bundle/bundleNormalizer.js.map +0 -1
- package/lib/packlets/bundle/bundleUtils.d.ts.map +0 -1
- package/lib/packlets/bundle/bundleUtils.js.map +0 -1
- package/lib/packlets/bundle/convert.d.ts.map +0 -1
- package/lib/packlets/bundle/convert.js.map +0 -1
- package/lib/packlets/bundle/index.d.ts.map +0 -1
- package/lib/packlets/bundle/index.js.map +0 -1
- package/lib/packlets/bundle/model.d.ts.map +0 -1
- package/lib/packlets/bundle/model.js.map +0 -1
- package/lib/packlets/common/conditions.d.ts.map +0 -1
- package/lib/packlets/common/conditions.js.map +0 -1
- package/lib/packlets/common/convert.d.ts.map +0 -1
- package/lib/packlets/common/convert.js.map +0 -1
- package/lib/packlets/common/helpers/conditions.d.ts.map +0 -1
- package/lib/packlets/common/helpers/conditions.js.map +0 -1
- package/lib/packlets/common/helpers/context.d.ts.map +0 -1
- package/lib/packlets/common/helpers/context.js.map +0 -1
- package/lib/packlets/common/helpers/index.d.ts.map +0 -1
- package/lib/packlets/common/helpers/index.js.map +0 -1
- package/lib/packlets/common/helpers/qualifierDefaultValues.d.ts.map +0 -1
- package/lib/packlets/common/helpers/qualifierDefaultValues.js.map +0 -1
- package/lib/packlets/common/helpers/resources.d.ts.map +0 -1
- package/lib/packlets/common/helpers/resources.js.map +0 -1
- package/lib/packlets/common/index.d.ts.map +0 -1
- package/lib/packlets/common/index.js.map +0 -1
- package/lib/packlets/common/resources.d.ts.map +0 -1
- package/lib/packlets/common/resources.js.map +0 -1
- package/lib/packlets/common/validate/conditions.d.ts.map +0 -1
- package/lib/packlets/common/validate/conditions.js.map +0 -1
- package/lib/packlets/common/validate/index.d.ts.map +0 -1
- package/lib/packlets/common/validate/index.js.map +0 -1
- package/lib/packlets/common/validate/regularExpressions.d.ts.map +0 -1
- package/lib/packlets/common/validate/regularExpressions.js.map +0 -1
- package/lib/packlets/common/validate/resources.d.ts.map +0 -1
- package/lib/packlets/common/validate/resources.js.map +0 -1
- package/lib/packlets/conditions/condition.d.ts.map +0 -1
- package/lib/packlets/conditions/condition.js.map +0 -1
- package/lib/packlets/conditions/conditionCollector.d.ts.map +0 -1
- package/lib/packlets/conditions/conditionCollector.js.map +0 -1
- package/lib/packlets/conditions/conditionDecls.d.ts.map +0 -1
- package/lib/packlets/conditions/conditionDecls.js.map +0 -1
- package/lib/packlets/conditions/conditionSet.d.ts.map +0 -1
- package/lib/packlets/conditions/conditionSet.js.map +0 -1
- package/lib/packlets/conditions/conditionSetCollector.d.ts.map +0 -1
- package/lib/packlets/conditions/conditionSetCollector.js.map +0 -1
- package/lib/packlets/conditions/conditionSetDecls.d.ts.map +0 -1
- package/lib/packlets/conditions/conditionSetDecls.js.map +0 -1
- package/lib/packlets/conditions/conditionToken.d.ts.map +0 -1
- package/lib/packlets/conditions/conditionToken.js.map +0 -1
- package/lib/packlets/conditions/convert/conditionSetDecls.d.ts.map +0 -1
- package/lib/packlets/conditions/convert/conditionSetDecls.js.map +0 -1
- package/lib/packlets/conditions/convert/decls.d.ts.map +0 -1
- package/lib/packlets/conditions/convert/decls.js.map +0 -1
- package/lib/packlets/conditions/convert/index.d.ts.map +0 -1
- package/lib/packlets/conditions/convert/index.js.map +0 -1
- package/lib/packlets/conditions/index.d.ts.map +0 -1
- package/lib/packlets/conditions/index.js.map +0 -1
- package/lib/packlets/config/common.d.ts.map +0 -1
- package/lib/packlets/config/common.js.map +0 -1
- package/lib/packlets/config/convert.d.ts.map +0 -1
- package/lib/packlets/config/convert.js.map +0 -1
- package/lib/packlets/config/index.d.ts.map +0 -1
- package/lib/packlets/config/index.js.map +0 -1
- package/lib/packlets/config/json.d.ts.map +0 -1
- package/lib/packlets/config/json.js.map +0 -1
- package/lib/packlets/config/predefined/default.d.ts.map +0 -1
- package/lib/packlets/config/predefined/default.js.map +0 -1
- package/lib/packlets/config/predefined/extended.d.ts.map +0 -1
- package/lib/packlets/config/predefined/extended.js.map +0 -1
- package/lib/packlets/config/predefined/index.d.ts.map +0 -1
- package/lib/packlets/config/predefined/index.js.map +0 -1
- package/lib/packlets/config/systemConfiguration.d.ts.map +0 -1
- package/lib/packlets/config/systemConfiguration.js.map +0 -1
- package/lib/packlets/context/contextDecls.d.ts.map +0 -1
- package/lib/packlets/context/contextDecls.js.map +0 -1
- package/lib/packlets/context/contextToken.d.ts.map +0 -1
- package/lib/packlets/context/contextToken.js.map +0 -1
- package/lib/packlets/context/convert/decls.d.ts.map +0 -1
- package/lib/packlets/context/convert/decls.js.map +0 -1
- package/lib/packlets/context/convert/index.d.ts.map +0 -1
- package/lib/packlets/context/convert/index.js.map +0 -1
- package/lib/packlets/context/index.d.ts.map +0 -1
- package/lib/packlets/context/index.js.map +0 -1
- package/lib/packlets/decisions/abstractDecision.d.ts.map +0 -1
- package/lib/packlets/decisions/abstractDecision.js.map +0 -1
- package/lib/packlets/decisions/abstractDecisionCollector.d.ts.map +0 -1
- package/lib/packlets/decisions/abstractDecisionCollector.js.map +0 -1
- package/lib/packlets/decisions/candidate.d.ts.map +0 -1
- package/lib/packlets/decisions/candidate.js.map +0 -1
- package/lib/packlets/decisions/common.d.ts.map +0 -1
- package/lib/packlets/decisions/common.js.map +0 -1
- package/lib/packlets/decisions/concreteDecision.d.ts.map +0 -1
- package/lib/packlets/decisions/concreteDecision.js.map +0 -1
- package/lib/packlets/decisions/decision.d.ts.map +0 -1
- package/lib/packlets/decisions/decision.js.map +0 -1
- package/lib/packlets/decisions/index.d.ts.map +0 -1
- package/lib/packlets/decisions/index.js.map +0 -1
- package/lib/packlets/import/fsItem.d.ts.map +0 -1
- package/lib/packlets/import/fsItem.js.map +0 -1
- package/lib/packlets/import/importContext.d.ts.map +0 -1
- package/lib/packlets/import/importContext.js.map +0 -1
- package/lib/packlets/import/importManager.d.ts.map +0 -1
- package/lib/packlets/import/importManager.js.map +0 -1
- package/lib/packlets/import/importable.d.ts.map +0 -1
- package/lib/packlets/import/importable.js.map +0 -1
- package/lib/packlets/import/importers/collectionImporter.d.ts.map +0 -1
- package/lib/packlets/import/importers/collectionImporter.js.map +0 -1
- package/lib/packlets/import/importers/fsItemImporter.d.ts.map +0 -1
- package/lib/packlets/import/importers/fsItemImporter.js.map +0 -1
- package/lib/packlets/import/importers/importer.d.ts.map +0 -1
- package/lib/packlets/import/importers/importer.js.map +0 -1
- package/lib/packlets/import/importers/index.d.ts.map +0 -1
- package/lib/packlets/import/importers/index.js.map +0 -1
- package/lib/packlets/import/importers/jsonImporter.d.ts.map +0 -1
- package/lib/packlets/import/importers/jsonImporter.js.map +0 -1
- package/lib/packlets/import/importers/pathImporter.d.ts.map +0 -1
- package/lib/packlets/import/importers/pathImporter.js.map +0 -1
- package/lib/packlets/import/index.d.ts.map +0 -1
- package/lib/packlets/import/index.js.map +0 -1
- package/lib/packlets/qualifier-types/config/convert.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/config/convert.js.map +0 -1
- package/lib/packlets/qualifier-types/config/index.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/config/index.js.map +0 -1
- package/lib/packlets/qualifier-types/config/json.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/config/json.js.map +0 -1
- package/lib/packlets/qualifier-types/convert.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/convert.js.map +0 -1
- package/lib/packlets/qualifier-types/helpers.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/helpers.js.map +0 -1
- package/lib/packlets/qualifier-types/index.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/index.js.map +0 -1
- package/lib/packlets/qualifier-types/languageQualifierType.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/languageQualifierType.js.map +0 -1
- package/lib/packlets/qualifier-types/literalQualifierType.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/literalQualifierType.js.map +0 -1
- package/lib/packlets/qualifier-types/literalValueHierarchy.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/literalValueHierarchy.js.map +0 -1
- package/lib/packlets/qualifier-types/qualifierType.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/qualifierType.js.map +0 -1
- package/lib/packlets/qualifier-types/qualifierTypeCollector.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/qualifierTypeCollector.js.map +0 -1
- package/lib/packlets/qualifier-types/territoryQualifierType.d.ts.map +0 -1
- package/lib/packlets/qualifier-types/territoryQualifierType.js.map +0 -1
- package/lib/packlets/qualifiers/convert/decls.d.ts.map +0 -1
- package/lib/packlets/qualifiers/convert/decls.js.map +0 -1
- package/lib/packlets/qualifiers/convert/index.d.ts.map +0 -1
- package/lib/packlets/qualifiers/convert/index.js.map +0 -1
- package/lib/packlets/qualifiers/convert/qualifier.d.ts.map +0 -1
- package/lib/packlets/qualifiers/convert/qualifier.js.map +0 -1
- package/lib/packlets/qualifiers/index.d.ts.map +0 -1
- package/lib/packlets/qualifiers/index.js.map +0 -1
- package/lib/packlets/qualifiers/qualifier.d.ts.map +0 -1
- package/lib/packlets/qualifiers/qualifier.js.map +0 -1
- package/lib/packlets/qualifiers/qualifierCollector.d.ts.map +0 -1
- package/lib/packlets/qualifiers/qualifierCollector.js.map +0 -1
- package/lib/packlets/qualifiers/qualifierDecl.d.ts.map +0 -1
- package/lib/packlets/qualifiers/qualifierDecl.js.map +0 -1
- package/lib/packlets/qualifiers/qualifierDefaultValueDecls.d.ts.map +0 -1
- package/lib/packlets/qualifiers/qualifierDefaultValueDecls.js.map +0 -1
- package/lib/packlets/qualifiers/qualifierDefaultValueToken.d.ts.map +0 -1
- package/lib/packlets/qualifiers/qualifierDefaultValueToken.js.map +0 -1
- package/lib/packlets/resource-json/compiled/common.d.ts.map +0 -1
- package/lib/packlets/resource-json/compiled/common.js.map +0 -1
- package/lib/packlets/resource-json/compiled/convert.d.ts.map +0 -1
- package/lib/packlets/resource-json/compiled/convert.js.map +0 -1
- package/lib/packlets/resource-json/compiled/index.d.ts.map +0 -1
- package/lib/packlets/resource-json/compiled/index.js.map +0 -1
- package/lib/packlets/resource-json/compiled/json.d.ts.map +0 -1
- package/lib/packlets/resource-json/compiled/json.js.map +0 -1
- package/lib/packlets/resource-json/convert.d.ts.map +0 -1
- package/lib/packlets/resource-json/convert.js.map +0 -1
- package/lib/packlets/resource-json/helpers.d.ts.map +0 -1
- package/lib/packlets/resource-json/helpers.js.map +0 -1
- package/lib/packlets/resource-json/index.d.ts.map +0 -1
- package/lib/packlets/resource-json/index.js.map +0 -1
- package/lib/packlets/resource-json/json.d.ts.map +0 -1
- package/lib/packlets/resource-json/json.js.map +0 -1
- package/lib/packlets/resource-json/normalized.d.ts.map +0 -1
- package/lib/packlets/resource-json/normalized.js.map +0 -1
- package/lib/packlets/resource-json/resourceDeclCollection.d.ts.map +0 -1
- package/lib/packlets/resource-json/resourceDeclCollection.js.map +0 -1
- package/lib/packlets/resource-json/resourceDeclContainer.d.ts.map +0 -1
- package/lib/packlets/resource-json/resourceDeclContainer.js.map +0 -1
- package/lib/packlets/resource-json/resourceDeclTree.d.ts.map +0 -1
- package/lib/packlets/resource-json/resourceDeclTree.js.map +0 -1
- package/lib/packlets/resource-types/config/convert.d.ts.map +0 -1
- package/lib/packlets/resource-types/config/convert.js.map +0 -1
- package/lib/packlets/resource-types/config/index.d.ts.map +0 -1
- package/lib/packlets/resource-types/config/index.js.map +0 -1
- package/lib/packlets/resource-types/config/json.d.ts.map +0 -1
- package/lib/packlets/resource-types/config/json.js.map +0 -1
- package/lib/packlets/resource-types/helpers.d.ts.map +0 -1
- package/lib/packlets/resource-types/helpers.js.map +0 -1
- package/lib/packlets/resource-types/index.d.ts.map +0 -1
- package/lib/packlets/resource-types/index.js.map +0 -1
- package/lib/packlets/resource-types/jsonResourceType.d.ts.map +0 -1
- package/lib/packlets/resource-types/jsonResourceType.js.map +0 -1
- package/lib/packlets/resource-types/resourceType.d.ts.map +0 -1
- package/lib/packlets/resource-types/resourceType.js.map +0 -1
- package/lib/packlets/resource-types/resourceTypeCollector.d.ts.map +0 -1
- package/lib/packlets/resource-types/resourceTypeCollector.js.map +0 -1
- package/lib/packlets/resources/candidateReducer.d.ts.map +0 -1
- package/lib/packlets/resources/candidateReducer.js.map +0 -1
- package/lib/packlets/resources/common.d.ts.map +0 -1
- package/lib/packlets/resources/common.js.map +0 -1
- package/lib/packlets/resources/index.d.ts.map +0 -1
- package/lib/packlets/resources/index.js.map +0 -1
- package/lib/packlets/resources/resource.d.ts.map +0 -1
- package/lib/packlets/resources/resource.js.map +0 -1
- package/lib/packlets/resources/resourceBuilder.d.ts.map +0 -1
- package/lib/packlets/resources/resourceBuilder.js.map +0 -1
- package/lib/packlets/resources/resourceCandidate.d.ts.map +0 -1
- package/lib/packlets/resources/resourceCandidate.js.map +0 -1
- package/lib/packlets/resources/resourceManagerBuilder.d.ts.map +0 -1
- package/lib/packlets/resources/resourceManagerBuilder.js.map +0 -1
- package/lib/packlets/runtime/cacheListener.d.ts.map +0 -1
- package/lib/packlets/runtime/cacheListener.js.map +0 -1
- package/lib/packlets/runtime/cacheMetrics.d.ts.map +0 -1
- package/lib/packlets/runtime/cacheMetrics.js.map +0 -1
- package/lib/packlets/runtime/compiledResourceCollection.d.ts.map +0 -1
- package/lib/packlets/runtime/compiledResourceCollection.js.map +0 -1
- package/lib/packlets/runtime/conditionSetResolutionResult.d.ts.map +0 -1
- package/lib/packlets/runtime/conditionSetResolutionResult.js.map +0 -1
- package/lib/packlets/runtime/context/contextQualifierProvider.d.ts.map +0 -1
- package/lib/packlets/runtime/context/contextQualifierProvider.js.map +0 -1
- package/lib/packlets/runtime/context/contextQualifierProviderValidator.d.ts.map +0 -1
- package/lib/packlets/runtime/context/contextQualifierProviderValidator.js.map +0 -1
- package/lib/packlets/runtime/context/index.d.ts.map +0 -1
- package/lib/packlets/runtime/context/index.js.map +0 -1
- package/lib/packlets/runtime/context/simpleContextQualifierProvider.d.ts.map +0 -1
- package/lib/packlets/runtime/context/simpleContextQualifierProvider.js.map +0 -1
- package/lib/packlets/runtime/context/validatingSimpleContextQualifierProvider.d.ts.map +0 -1
- package/lib/packlets/runtime/context/validatingSimpleContextQualifierProvider.js.map +0 -1
- package/lib/packlets/runtime/iResourceManager.d.ts.map +0 -1
- package/lib/packlets/runtime/iResourceManager.js.map +0 -1
- package/lib/packlets/runtime/index.d.ts.map +0 -1
- package/lib/packlets/runtime/index.js.map +0 -1
- package/lib/packlets/runtime/resource-tree/common.d.ts.map +0 -1
- package/lib/packlets/runtime/resource-tree/common.js.map +0 -1
- package/lib/packlets/runtime/resource-tree/index.d.ts.map +0 -1
- package/lib/packlets/runtime/resource-tree/index.js.map +0 -1
- package/lib/packlets/runtime/resource-tree/readOnlyResourceTree.d.ts.map +0 -1
- package/lib/packlets/runtime/resource-tree/readOnlyResourceTree.js.map +0 -1
- package/lib/packlets/runtime/resource-tree/resourceTreeChildren.d.ts.map +0 -1
- package/lib/packlets/runtime/resource-tree/resourceTreeChildren.js.map +0 -1
- package/lib/packlets/runtime/resource-tree/resourceTreeChildrenValidator.d.ts.map +0 -1
- package/lib/packlets/runtime/resource-tree/resourceTreeChildrenValidator.js.map +0 -1
- package/lib/packlets/runtime/resourceResolver.d.ts.map +0 -1
- package/lib/packlets/runtime/resourceResolver.js.map +0 -1
- package/lib/packlets/runtime/validate.d.ts.map +0 -1
- package/lib/packlets/runtime/validate.js.map +0 -1
|
@@ -20,50 +20,16 @@
|
|
|
20
20
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
21
|
* SOFTWARE.
|
|
22
22
|
*/
|
|
23
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
24
|
-
if (k2 === undefined) k2 = k;
|
|
25
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
26
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
27
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
28
|
-
}
|
|
29
|
-
Object.defineProperty(o, k2, desc);
|
|
30
|
-
}) : (function(o, m, k, k2) {
|
|
31
|
-
if (k2 === undefined) k2 = k;
|
|
32
|
-
o[k2] = m[k];
|
|
33
|
-
}));
|
|
34
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
35
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
36
|
-
}) : function(o, v) {
|
|
37
|
-
o["default"] = v;
|
|
38
|
-
});
|
|
39
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
40
|
-
var ownKeys = function(o) {
|
|
41
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
42
|
-
var ar = [];
|
|
43
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
44
|
-
return ar;
|
|
45
|
-
};
|
|
46
|
-
return ownKeys(o);
|
|
47
|
-
};
|
|
48
|
-
return function (mod) {
|
|
49
|
-
if (mod && mod.__esModule) return mod;
|
|
50
|
-
var result = {};
|
|
51
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
52
|
-
__setModuleDefault(result, mod);
|
|
53
|
-
return result;
|
|
54
|
-
};
|
|
55
|
-
})();
|
|
56
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
57
24
|
exports.SystemConfiguration = void 0;
|
|
58
25
|
exports.updateSystemConfigurationQualifierDefaultValues = updateSystemConfigurationQualifierDefaultValues;
|
|
59
26
|
const ts_utils_1 = require("@fgv/ts-utils");
|
|
60
|
-
const QualifierTypes = __importStar(require("../qualifier-types"));
|
|
61
|
-
const ResourceTypes = __importStar(require("../resource-types"));
|
|
62
27
|
const qualifier_types_1 = require("../qualifier-types");
|
|
63
28
|
const qualifiers_1 = require("../qualifiers");
|
|
64
29
|
const resource_types_1 = require("../resource-types");
|
|
65
30
|
const convert_1 = require("./convert");
|
|
66
31
|
const ts_json_base_1 = require("@fgv/ts-json-base");
|
|
32
|
+
const configInitFactory_1 = require("./configInitFactory");
|
|
67
33
|
/**
|
|
68
34
|
* Creates a copy of the provided {@link Config.Model.ISystemConfiguration | system configuration}
|
|
69
35
|
* with updated qualifier default values.
|
|
@@ -129,17 +95,20 @@ class SystemConfiguration {
|
|
|
129
95
|
* @param config - The {@link Config.Model.ISystemConfiguration | system configuration} to use.
|
|
130
96
|
* @public
|
|
131
97
|
*/
|
|
132
|
-
constructor(config) {
|
|
98
|
+
constructor(config, initParams) {
|
|
99
|
+
var _a, _b;
|
|
133
100
|
this._config = config;
|
|
101
|
+
const qualifierTypeFactory = (_a = initParams === null || initParams === void 0 ? void 0 : initParams.qualifierTypeFactory) !== null && _a !== void 0 ? _a : new configInitFactory_1.BuiltInQualifierTypeFactory();
|
|
102
|
+
const resourceTypeFactory = (_b = initParams === null || initParams === void 0 ? void 0 : initParams.resourceTypeFactory) !== null && _b !== void 0 ? _b : new configInitFactory_1.BuiltInResourceTypeFactory();
|
|
134
103
|
this.qualifierTypes = qualifier_types_1.QualifierTypeCollector.create({
|
|
135
|
-
qualifierTypes: (0, ts_utils_1.mapResults)(config.qualifierTypes.map(
|
|
104
|
+
qualifierTypes: (0, ts_utils_1.mapResults)(config.qualifierTypes.map((tc) => qualifierTypeFactory.create(tc))).orThrow()
|
|
136
105
|
}).orThrow();
|
|
137
106
|
this.qualifiers = qualifiers_1.QualifierCollector.create({
|
|
138
107
|
qualifierTypes: this.qualifierTypes,
|
|
139
108
|
qualifiers: config.qualifiers
|
|
140
109
|
}).orThrow();
|
|
141
110
|
this.resourceTypes = resource_types_1.ResourceTypeCollector.create({
|
|
142
|
-
resourceTypes: (0, ts_utils_1.mapResults)(config.resourceTypes.map(
|
|
111
|
+
resourceTypes: (0, ts_utils_1.mapResults)(config.resourceTypes.map((rt) => resourceTypeFactory.create(rt))).orThrow()
|
|
143
112
|
}).orThrow();
|
|
144
113
|
}
|
|
145
114
|
/**
|
|
@@ -153,9 +122,19 @@ class SystemConfiguration {
|
|
|
153
122
|
*/
|
|
154
123
|
static create(config, initParams) {
|
|
155
124
|
if (initParams === null || initParams === void 0 ? void 0 : initParams.qualifierDefaultValues) {
|
|
156
|
-
return updateSystemConfigurationQualifierDefaultValues(config, initParams.qualifierDefaultValues).onSuccess((updatedConfig) => (0, ts_utils_1.captureResult)(() => new SystemConfiguration(updatedConfig)));
|
|
125
|
+
return updateSystemConfigurationQualifierDefaultValues(config, initParams.qualifierDefaultValues).onSuccess((updatedConfig) => (0, ts_utils_1.captureResult)(() => new SystemConfiguration(updatedConfig, (0, ts_utils_1.omit)(initParams, ['qualifierDefaultValues']))));
|
|
157
126
|
}
|
|
158
|
-
return (0, ts_utils_1.captureResult)(() => new SystemConfiguration(config));
|
|
127
|
+
return (0, ts_utils_1.captureResult)(() => new SystemConfiguration(config, initParams));
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Loads a {@link Config.SystemConfiguration | SystemConfiguration} from a file.
|
|
131
|
+
* @param path - The path to the file to load.
|
|
132
|
+
* @returns `Success` with the {@link Config.SystemConfiguration | SystemConfiguration}
|
|
133
|
+
* if successful, `Failure` with an error message otherwise.
|
|
134
|
+
* @public
|
|
135
|
+
*/
|
|
136
|
+
static loadFromFile(path, initParams) {
|
|
137
|
+
return ts_json_base_1.JsonFile.convertJsonFileSync(path, convert_1.systemConfiguration).onSuccess((config) => SystemConfiguration.create(config, initParams));
|
|
159
138
|
}
|
|
160
139
|
/**
|
|
161
140
|
* Returns the {@link Config.Model.ISystemConfiguration | system configuration} that this
|
|
@@ -66,4 +66,17 @@ export interface ISystemLiteralQualifierTypeConfig extends IQualifierTypeConfig<
|
|
|
66
66
|
* @public
|
|
67
67
|
*/
|
|
68
68
|
export type ISystemQualifierTypeConfig = ISystemLanguageQualifierTypeConfig | ISystemTerritoryQualifierTypeConfig | ISystemLiteralQualifierTypeConfig;
|
|
69
|
+
/**
|
|
70
|
+
* A union of all qualifier type configurations.
|
|
71
|
+
* @public
|
|
72
|
+
*/
|
|
73
|
+
export type IAnyQualifierTypeConfig = IQualifierTypeConfig | ISystemQualifierTypeConfig;
|
|
74
|
+
/**
|
|
75
|
+
* Checks if a {@link QualifierTypes.Config.IAnyQualifierTypeConfig | qualifier type configuration} is a
|
|
76
|
+
* {@link QualifierTypes.Config.ISystemQualifierTypeConfig | system qualifier type configuration}.
|
|
77
|
+
* @param config - The {@link QualifierTypes.Config.IAnyQualifierTypeConfig | qualifier type configuration} to check.
|
|
78
|
+
* @returns `true` if the configuration is a system qualifier type configuration, `false` otherwise.
|
|
79
|
+
* @public
|
|
80
|
+
*/
|
|
81
|
+
export declare function isSystemQualifierTypeConfig(config: IAnyQualifierTypeConfig): config is ISystemQualifierTypeConfig;
|
|
69
82
|
//# sourceMappingURL=json.d.ts.map
|
|
@@ -21,4 +21,15 @@
|
|
|
21
21
|
* SOFTWARE.
|
|
22
22
|
*/
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.isSystemQualifierTypeConfig = isSystemQualifierTypeConfig;
|
|
25
|
+
/**
|
|
26
|
+
* Checks if a {@link QualifierTypes.Config.IAnyQualifierTypeConfig | qualifier type configuration} is a
|
|
27
|
+
* {@link QualifierTypes.Config.ISystemQualifierTypeConfig | system qualifier type configuration}.
|
|
28
|
+
* @param config - The {@link QualifierTypes.Config.IAnyQualifierTypeConfig | qualifier type configuration} to check.
|
|
29
|
+
* @returns `true` if the configuration is a system qualifier type configuration, `false` otherwise.
|
|
30
|
+
* @public
|
|
31
|
+
*/
|
|
32
|
+
function isSystemQualifierTypeConfig(config) {
|
|
33
|
+
return (config.systemType === 'language' || config.systemType === 'territory' || config.systemType === 'literal');
|
|
34
|
+
}
|
|
24
35
|
//# sourceMappingURL=json.js.map
|
|
@@ -27,20 +27,76 @@ export interface IResourceCandidateValidationProperties {
|
|
|
27
27
|
*/
|
|
28
28
|
mergeMethod: ResourceValueMergeMethod;
|
|
29
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Interface for a resource type. Resource types are responsible for
|
|
32
|
+
* validating and converting JSON values into the appropriate strongly-typed
|
|
33
|
+
* resource value.
|
|
34
|
+
* @public
|
|
35
|
+
*/
|
|
36
|
+
export interface IResourceType<T = unknown> extends ICollectible<ResourceTypeName, ResourceTypeIndex> {
|
|
37
|
+
/**
|
|
38
|
+
* The key for this resource type.
|
|
39
|
+
*/
|
|
40
|
+
readonly key: ResourceTypeName;
|
|
41
|
+
/**
|
|
42
|
+
* The index for this resource type.
|
|
43
|
+
*/
|
|
44
|
+
readonly index: ResourceTypeIndex | undefined;
|
|
45
|
+
/**
|
|
46
|
+
* Validates properties of a {@link ResourceJson.Json.ILooseResourceCandidateDecl | resource candidate declaration} for
|
|
47
|
+
* a resource instance value.
|
|
48
|
+
* @param props - The {@link ResourceTypes.IResourceCandidateValidationProperties | properties } to validate.
|
|
49
|
+
* @returns `Success` with the strongly-typed resource value if the JSON and merge method
|
|
50
|
+
* are valid, `Failure` with an error message otherwise.
|
|
51
|
+
* @public
|
|
52
|
+
*/
|
|
53
|
+
validateDeclaration(props: IResourceCandidateValidationProperties): Result<T | Partial<T>>;
|
|
54
|
+
/**
|
|
55
|
+
* Validates a JSON value for use as a partial resource instance value.
|
|
56
|
+
* @param json - The JSON value to validate.
|
|
57
|
+
* @param completeness - Describes {@link CandidateCompleteness | how complete} the candidate value is.
|
|
58
|
+
* @returns `Success` with the strongly-typed partial resource value if the JSON is valid,
|
|
59
|
+
* `Failure` with an error message otherwise.
|
|
60
|
+
* @public
|
|
61
|
+
*/
|
|
62
|
+
validate(json: JsonValue, completeness: CandidateCompleteness): Result<Partial<T>>;
|
|
63
|
+
/**
|
|
64
|
+
* Validates a JSON value for use as a complete resource instance value.
|
|
65
|
+
* @param json - The JSON value to validate.
|
|
66
|
+
* @param completeness - Describes {@link CandidateCompleteness | how complete} the candidate value is.
|
|
67
|
+
* @returns `Success` with the strongly-typed resource value if the JSON is valid,
|
|
68
|
+
* `Failure` with an error message otherwise.
|
|
69
|
+
* @public
|
|
70
|
+
*/
|
|
71
|
+
validate(json: JsonValue, completeness: 'full'): Result<T>;
|
|
72
|
+
/**
|
|
73
|
+
* Validates a JSON value for use as a partial resource instance value.
|
|
74
|
+
* @param json - The JSON value to validate.
|
|
75
|
+
* @param completeness - Describes {@link CandidateCompleteness | how complete} the candidate value is.
|
|
76
|
+
* @returns `Success` with the strongly-typed partial resource value if the JSON is valid,
|
|
77
|
+
* `Failure` with an error message otherwise.
|
|
78
|
+
* @public
|
|
79
|
+
*/
|
|
80
|
+
validate(json: JsonValue, completeness: 'partial'): Result<Partial<T>>;
|
|
81
|
+
/**
|
|
82
|
+
* Sets the index for this resource type. Once set, the index cannot be changed.
|
|
83
|
+
*/
|
|
84
|
+
setIndex(index: number): Result<ResourceTypeIndex>;
|
|
85
|
+
}
|
|
30
86
|
/**
|
|
31
87
|
* Abstract base class for resource types which are responsible for
|
|
32
88
|
* validating and converting JSON values into the appropriate strongly-typed
|
|
33
89
|
* resource value.
|
|
34
90
|
* @public
|
|
35
91
|
*/
|
|
36
|
-
export declare abstract class ResourceType<T = unknown> implements
|
|
92
|
+
export declare abstract class ResourceType<T = unknown> implements IResourceType<T> {
|
|
37
93
|
private _collectible;
|
|
38
94
|
/**
|
|
39
|
-
*
|
|
95
|
+
* {@inheritdoc ResourceTypes.IResourceType.key}
|
|
40
96
|
*/
|
|
41
97
|
get key(): ResourceTypeName;
|
|
42
98
|
/**
|
|
43
|
-
*
|
|
99
|
+
* {@inheritdoc ResourceTypes.IResourceType.index}
|
|
44
100
|
*/
|
|
45
101
|
get index(): ResourceTypeIndex | undefined;
|
|
46
102
|
protected constructor(key: ResourceTypeName, index?: number);
|
|
@@ -32,13 +32,13 @@ const common_1 = require("../common");
|
|
|
32
32
|
*/
|
|
33
33
|
class ResourceType {
|
|
34
34
|
/**
|
|
35
|
-
*
|
|
35
|
+
* {@inheritdoc ResourceTypes.IResourceType.key}
|
|
36
36
|
*/
|
|
37
37
|
get key() {
|
|
38
38
|
return this._collectible.key;
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
*
|
|
41
|
+
* {@inheritdoc ResourceTypes.IResourceType.index}
|
|
42
42
|
*/
|
|
43
43
|
get index() {
|
|
44
44
|
return this._collectible.index;
|
|
@@ -47,7 +47,7 @@ export declare class Resource implements IResource {
|
|
|
47
47
|
/**
|
|
48
48
|
* The {@link ResourceTypes.ResourceType | type} of the resource.
|
|
49
49
|
*/
|
|
50
|
-
readonly
|
|
50
|
+
readonly resourceType: ResourceType;
|
|
51
51
|
/**
|
|
52
52
|
* The array of {@link Resources.ResourceCandidate | candidates} for the resource.
|
|
53
53
|
*/
|
|
@@ -56,10 +56,6 @@ export declare class Resource implements IResource {
|
|
|
56
56
|
* {@link Decisions.ConcreteDecision | Decision} for optimized resource resolution.
|
|
57
57
|
*/
|
|
58
58
|
readonly decision: ConcreteDecision;
|
|
59
|
-
/**
|
|
60
|
-
* Gets the resource type (implements IResource interface).
|
|
61
|
-
*/
|
|
62
|
-
get resourceType(): ResourceType;
|
|
63
59
|
/**
|
|
64
60
|
* Gets the resource type name as a string.
|
|
65
61
|
*/
|
|
@@ -33,17 +33,11 @@ const decisions_1 = require("../decisions");
|
|
|
33
33
|
* @public
|
|
34
34
|
*/
|
|
35
35
|
class Resource {
|
|
36
|
-
/**
|
|
37
|
-
* Gets the resource type (implements IResource interface).
|
|
38
|
-
*/
|
|
39
|
-
get resourceType() {
|
|
40
|
-
return this._resourceType;
|
|
41
|
-
}
|
|
42
36
|
/**
|
|
43
37
|
* Gets the resource type name as a string.
|
|
44
38
|
*/
|
|
45
39
|
get resourceTypeName() {
|
|
46
|
-
return this.
|
|
40
|
+
return this.resourceType.key;
|
|
47
41
|
}
|
|
48
42
|
/**
|
|
49
43
|
* Constructor for a {@link Resources.Resource | Resource} object.
|
|
@@ -54,7 +48,7 @@ class Resource {
|
|
|
54
48
|
const id = params.id ? common_1.Validate.toResourceId(params.id).orThrow() : undefined;
|
|
55
49
|
this.id = Resource._validateCandidateResourceIds(id, params.candidates).orThrow();
|
|
56
50
|
this.name = common_1.Helpers.getNameForResourceId(this.id).orThrow();
|
|
57
|
-
this.
|
|
51
|
+
this.resourceType = resourceCandidate_1.ResourceCandidate.validateResourceTypes(params.candidates, params.resourceType)
|
|
58
52
|
.onSuccess((t) => {
|
|
59
53
|
/* c8 ignore next 3 - functional code path tested but coverage intermittently missed */
|
|
60
54
|
if (t === undefined) {
|
|
@@ -7,7 +7,7 @@ import { QualifierType, QualifierTypeCollector } from '../qualifier-types';
|
|
|
7
7
|
import { ResourceId } from '../common';
|
|
8
8
|
import { IResourceManager, IResource } from './iResourceManager';
|
|
9
9
|
import * as ResourceJson from '../resource-json';
|
|
10
|
-
import {
|
|
10
|
+
import { ReadOnlyResourceTreeRoot } from './resource-tree';
|
|
11
11
|
import * as Context from '../context';
|
|
12
12
|
/**
|
|
13
13
|
* Interface for parameters to create a {@link Runtime.CompiledResourceCollection | CompiledResourceCollection}.
|
|
@@ -105,7 +105,7 @@ export declare class CompiledResourceCollection implements IResourceManager<IRes
|
|
|
105
105
|
* @returns Result containing the resource tree root, or failure if tree construction fails
|
|
106
106
|
* @public
|
|
107
107
|
*/
|
|
108
|
-
getBuiltResourceTree(): Result<
|
|
108
|
+
getBuiltResourceTree(): Result<ReadOnlyResourceTreeRoot<IResource>>;
|
|
109
109
|
/**
|
|
110
110
|
* Reconstructs a QualifierTypeCollector from compiled data.
|
|
111
111
|
* @param compiled - The compiled resource collection
|
|
@@ -3,7 +3,7 @@ import { JsonObject } from '@fgv/ts-json-base';
|
|
|
3
3
|
import { ReadOnlyConditionCollector, ReadOnlyConditionSetCollector } from '../conditions';
|
|
4
4
|
import { ReadOnlyAbstractDecisionCollector, ConcreteDecision } from '../decisions';
|
|
5
5
|
import { ResourceId, ResourceValueMergeMethod } from '../common';
|
|
6
|
-
import {
|
|
6
|
+
import { IResourceType } from '../resource-types';
|
|
7
7
|
import { IContextDecl, IValidatedContextDecl } from '../context';
|
|
8
8
|
import { IReadOnlyResourceTreeRoot } from './resource-tree';
|
|
9
9
|
/**
|
|
@@ -34,7 +34,7 @@ export interface IResource {
|
|
|
34
34
|
/** The resource name */
|
|
35
35
|
readonly name: string;
|
|
36
36
|
/** The resource type */
|
|
37
|
-
readonly resourceType:
|
|
37
|
+
readonly resourceType: IResourceType;
|
|
38
38
|
/** The decision used to select candidates */
|
|
39
39
|
readonly decision: ConcreteDecision;
|
|
40
40
|
/** The available candidates for this resource */
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"id": "some.resource.path",
|
|
4
|
+
"json": { "home": "United States" },
|
|
5
|
+
"conditions": {
|
|
6
|
+
"homeTerritory": "US"
|
|
7
|
+
}
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"id": "some.resource.path",
|
|
11
|
+
"json": { "speaks": "English" },
|
|
12
|
+
"conditions": {
|
|
13
|
+
"language": "en"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"id": "some.resource.path",
|
|
18
|
+
"json": { "home": "Canada", "speaks": "Canadian English" },
|
|
19
|
+
"conditions": {
|
|
20
|
+
"homeTerritory": "CA",
|
|
21
|
+
"language": "en-CA"
|
|
22
|
+
},
|
|
23
|
+
"mergeMethod": "replace"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"id": "some.resource.path",
|
|
27
|
+
"json": { "speaks": "Español" },
|
|
28
|
+
"conditions": {
|
|
29
|
+
"language": "es"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
]
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Result } from '@fgv/ts-utils';
|
|
2
|
+
import * as TsRes from '../../../index';
|
|
3
|
+
export interface ITestQualifierTypeConstructorParams {
|
|
4
|
+
name?: string;
|
|
5
|
+
allowContextList?: string;
|
|
6
|
+
index?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class TestQualifierType extends TsRes.QualifierTypes.QualifierType {
|
|
9
|
+
constructor(params?: ITestQualifierTypeConstructorParams);
|
|
10
|
+
static create(params?: ITestQualifierTypeConstructorParams): Result<TestQualifierType>;
|
|
11
|
+
isValidConditionValue(value: string): value is TsRes.QualifierConditionValue;
|
|
12
|
+
validateCondition(value: string, operator?: TsRes.ConditionOperator): Result<TsRes.QualifierConditionValue>;
|
|
13
|
+
protected _matchOne(condition: TsRes.QualifierConditionValue, context: TsRes.QualifierContextValue, operator: TsRes.ConditionOperator): TsRes.QualifierMatchScore;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=testQualifierType.d.ts.map
|