@cratis/scene.engine 4.2.0 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/editing/DescriptorCatalog.js +42 -0
- package/dist/cjs/editing/DescriptorCatalog.js.map +1 -0
- package/dist/cjs/editing/EditSession.js +44 -0
- package/dist/cjs/editing/EditSession.js.map +1 -0
- package/dist/cjs/editing/applyEdit.js +83 -0
- package/dist/cjs/editing/applyEdit.js.map +1 -0
- package/dist/cjs/editing/applyEffectiveConfiguration.js +62 -0
- package/dist/cjs/editing/applyEffectiveConfiguration.js.map +1 -0
- package/dist/cjs/editing/collectComponents.js +34 -0
- package/dist/cjs/editing/collectComponents.js.map +1 -0
- package/dist/cjs/editing/describeNode.js +63 -0
- package/dist/cjs/editing/describeNode.js.map +1 -0
- package/dist/cjs/editing/diagnostics.js +36 -0
- package/dist/cjs/editing/diagnostics.js.map +1 -0
- package/dist/cjs/editing/documentPaths.js +45 -0
- package/dist/cjs/editing/documentPaths.js.map +1 -0
- package/dist/cjs/editing/exposureEdits.js +106 -0
- package/dist/cjs/editing/exposureEdits.js.map +1 -0
- package/dist/cjs/editing/exposureGrants.js +115 -0
- package/dist/cjs/editing/exposureGrants.js.map +1 -0
- package/dist/cjs/editing/indexDocument.js +400 -0
- package/dist/cjs/editing/indexDocument.js.map +1 -0
- package/dist/cjs/editing/inspect.js +127 -0
- package/dist/cjs/editing/inspect.js.map +1 -0
- package/dist/cjs/editing/instanceEdits.js +255 -0
- package/dist/cjs/editing/instanceEdits.js.map +1 -0
- package/dist/cjs/editing/layoutTypeDescriptors.js +425 -0
- package/dist/cjs/editing/layoutTypeDescriptors.js.map +1 -0
- package/dist/cjs/editing/layoutTypeEdits.js +141 -0
- package/dist/cjs/editing/layoutTypeEdits.js.map +1 -0
- package/dist/cjs/editing/nodeIds.js +115 -0
- package/dist/cjs/editing/nodeIds.js.map +1 -0
- package/dist/cjs/editing/pathAccess.js +53 -0
- package/dist/cjs/editing/pathAccess.js.map +1 -0
- package/dist/cjs/editing/propertyEdits.js +118 -0
- package/dist/cjs/editing/propertyEdits.js.map +1 -0
- package/dist/cjs/editing/resolveEffectiveConfiguration.js +200 -0
- package/dist/cjs/editing/resolveEffectiveConfiguration.js.map +1 -0
- package/dist/cjs/editing/resolveTemplateChain.js +100 -0
- package/dist/cjs/editing/resolveTemplateChain.js.map +1 -0
- package/dist/cjs/editing/structureEdits.js +231 -0
- package/dist/cjs/editing/structureEdits.js.map +1 -0
- package/dist/cjs/editing/validateBinding.js +111 -0
- package/dist/cjs/editing/validateBinding.js.map +1 -0
- package/dist/cjs/editing/validateValue.js +114 -0
- package/dist/cjs/editing/validateValue.js.map +1 -0
- package/dist/cjs/index.js +51 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/editing/DescriptorCatalog.d.ts +9 -0
- package/dist/esm/editing/DescriptorCatalog.d.ts.map +1 -0
- package/dist/esm/editing/DescriptorCatalog.js +38 -0
- package/dist/esm/editing/DescriptorCatalog.js.map +1 -0
- package/dist/esm/editing/DocumentIndex.d.ts +31 -0
- package/dist/esm/editing/DocumentIndex.d.ts.map +1 -0
- package/dist/esm/editing/DocumentIndex.js +2 -0
- package/dist/esm/editing/DocumentIndex.js.map +1 -0
- package/dist/esm/editing/EditOutcome.d.ts +7 -0
- package/dist/esm/editing/EditOutcome.d.ts.map +1 -0
- package/dist/esm/editing/EditOutcome.js +2 -0
- package/dist/esm/editing/EditOutcome.js.map +1 -0
- package/dist/esm/editing/EditSession.d.ts +20 -0
- package/dist/esm/editing/EditSession.d.ts.map +1 -0
- package/dist/esm/editing/EditSession.js +42 -0
- package/dist/esm/editing/EditSession.js.map +1 -0
- package/dist/esm/editing/EditingContext.d.ts +8 -0
- package/dist/esm/editing/EditingContext.d.ts.map +1 -0
- package/dist/esm/editing/EditingContext.js +2 -0
- package/dist/esm/editing/EditingContext.js.map +1 -0
- package/dist/esm/editing/TemplateChain.d.ts +13 -0
- package/dist/esm/editing/TemplateChain.d.ts.map +1 -0
- package/dist/esm/editing/TemplateChain.js +2 -0
- package/dist/esm/editing/TemplateChain.js.map +1 -0
- package/dist/esm/editing/applyEdit.d.ts +5 -0
- package/dist/esm/editing/applyEdit.d.ts.map +1 -0
- package/dist/esm/editing/applyEdit.js +81 -0
- package/dist/esm/editing/applyEdit.js.map +1 -0
- package/dist/esm/editing/applyEffectiveConfiguration.d.ts +3 -0
- package/dist/esm/editing/applyEffectiveConfiguration.d.ts.map +1 -0
- package/dist/esm/editing/applyEffectiveConfiguration.js +60 -0
- package/dist/esm/editing/applyEffectiveConfiguration.js.map +1 -0
- package/dist/esm/editing/collectComponents.d.ts +3 -0
- package/dist/esm/editing/collectComponents.d.ts.map +1 -0
- package/dist/esm/editing/collectComponents.js +32 -0
- package/dist/esm/editing/collectComponents.js.map +1 -0
- package/dist/esm/editing/describeNode.d.ts +11 -0
- package/dist/esm/editing/describeNode.d.ts.map +1 -0
- package/dist/esm/editing/describeNode.js +60 -0
- package/dist/esm/editing/describeNode.js.map +1 -0
- package/dist/esm/editing/diagnostics.d.ts +6 -0
- package/dist/esm/editing/diagnostics.d.ts.map +1 -0
- package/dist/esm/editing/diagnostics.js +32 -0
- package/dist/esm/editing/diagnostics.js.map +1 -0
- package/dist/esm/editing/documentPaths.d.ts +8 -0
- package/dist/esm/editing/documentPaths.d.ts.map +1 -0
- package/dist/esm/editing/documentPaths.js +41 -0
- package/dist/esm/editing/documentPaths.js.map +1 -0
- package/dist/esm/editing/exposureEdits.d.ts +5 -0
- package/dist/esm/editing/exposureEdits.d.ts.map +1 -0
- package/dist/esm/editing/exposureEdits.js +103 -0
- package/dist/esm/editing/exposureEdits.js.map +1 -0
- package/dist/esm/editing/exposureGrants.d.ts +21 -0
- package/dist/esm/editing/exposureGrants.d.ts.map +1 -0
- package/dist/esm/editing/exposureGrants.js +112 -0
- package/dist/esm/editing/exposureGrants.js.map +1 -0
- package/dist/esm/editing/given/a_layout_document.d.ts +14 -0
- package/dist/esm/editing/given/a_layout_document.d.ts.map +1 -0
- package/dist/esm/editing/given/a_layout_document.js +67 -0
- package/dist/esm/editing/given/a_layout_document.js.map +1 -0
- package/dist/esm/editing/given/a_scene_document.d.ts +20 -0
- package/dist/esm/editing/given/a_scene_document.d.ts.map +1 -0
- package/dist/esm/editing/given/a_scene_document.js +110 -0
- package/dist/esm/editing/given/a_scene_document.js.map +1 -0
- package/dist/esm/editing/index.d.ts +19 -0
- package/dist/esm/editing/index.d.ts.map +1 -0
- package/dist/esm/editing/index.js +19 -0
- package/dist/esm/editing/index.js.map +1 -0
- package/dist/esm/editing/indexDocument.d.ts +6 -0
- package/dist/esm/editing/indexDocument.d.ts.map +1 -0
- package/dist/esm/editing/indexDocument.js +396 -0
- package/dist/esm/editing/indexDocument.js.map +1 -0
- package/dist/esm/editing/inspect.d.ts +8 -0
- package/dist/esm/editing/inspect.d.ts.map +1 -0
- package/dist/esm/editing/inspect.js +124 -0
- package/dist/esm/editing/inspect.js.map +1 -0
- package/dist/esm/editing/instanceEdits.d.ts +9 -0
- package/dist/esm/editing/instanceEdits.d.ts.map +1 -0
- package/dist/esm/editing/instanceEdits.js +248 -0
- package/dist/esm/editing/instanceEdits.js.map +1 -0
- package/dist/esm/editing/layoutTypeDescriptors.d.ts +5 -0
- package/dist/esm/editing/layoutTypeDescriptors.d.ts.map +1 -0
- package/dist/esm/editing/layoutTypeDescriptors.js +421 -0
- package/dist/esm/editing/layoutTypeDescriptors.js.map +1 -0
- package/dist/esm/editing/layoutTypeEdits.d.ts +4 -0
- package/dist/esm/editing/layoutTypeEdits.d.ts.map +1 -0
- package/dist/esm/editing/layoutTypeEdits.js +139 -0
- package/dist/esm/editing/layoutTypeEdits.js.map +1 -0
- package/dist/esm/editing/nodeIds.d.ts +14 -0
- package/dist/esm/editing/nodeIds.d.ts.map +1 -0
- package/dist/esm/editing/nodeIds.js +102 -0
- package/dist/esm/editing/nodeIds.js.map +1 -0
- package/dist/esm/editing/pathAccess.d.ts +7 -0
- package/dist/esm/editing/pathAccess.d.ts.map +1 -0
- package/dist/esm/editing/pathAccess.js +48 -0
- package/dist/esm/editing/pathAccess.js.map +1 -0
- package/dist/esm/editing/propertyEdits.d.ts +15 -0
- package/dist/esm/editing/propertyEdits.d.ts.map +1 -0
- package/dist/esm/editing/propertyEdits.js +113 -0
- package/dist/esm/editing/propertyEdits.js.map +1 -0
- package/dist/esm/editing/resolveEffectiveConfiguration.d.ts +5 -0
- package/dist/esm/editing/resolveEffectiveConfiguration.d.ts.map +1 -0
- package/dist/esm/editing/resolveEffectiveConfiguration.js +198 -0
- package/dist/esm/editing/resolveEffectiveConfiguration.js.map +1 -0
- package/dist/esm/editing/resolveTemplateChain.d.ts +4 -0
- package/dist/esm/editing/resolveTemplateChain.d.ts.map +1 -0
- package/dist/esm/editing/resolveTemplateChain.js +98 -0
- package/dist/esm/editing/resolveTemplateChain.js.map +1 -0
- package/dist/esm/editing/structureEdits.d.ts +6 -0
- package/dist/esm/editing/structureEdits.d.ts.map +1 -0
- package/dist/esm/editing/structureEdits.js +227 -0
- package/dist/esm/editing/structureEdits.js.map +1 -0
- package/dist/esm/editing/validateBinding.d.ts +7 -0
- package/dist/esm/editing/validateBinding.d.ts.map +1 -0
- package/dist/esm/editing/validateBinding.js +108 -0
- package/dist/esm/editing/validateBinding.js.map +1 -0
- package/dist/esm/editing/validateValue.d.ts +8 -0
- package/dist/esm/editing/validateValue.d.ts.map +1 -0
- package/dist/esm/editing/validateValue.js +111 -0
- package/dist/esm/editing/validateValue.js.map +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +14 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/editing/DescriptorCatalog.ts +51 -0
- package/editing/DocumentIndex.ts +73 -0
- package/editing/EditOutcome.ts +21 -0
- package/editing/EditSession.ts +50 -0
- package/editing/EditingContext.ts +23 -0
- package/editing/TemplateChain.ts +36 -0
- package/editing/applyEdit.ts +69 -0
- package/editing/applyEffectiveConfiguration.ts +53 -0
- package/editing/collectComponents.ts +36 -0
- package/editing/describeNode.ts +61 -0
- package/editing/diagnostics.ts +30 -0
- package/editing/documentPaths.ts +40 -0
- package/editing/exposureEdits.ts +119 -0
- package/editing/exposureGrants.ts +159 -0
- package/editing/given/a_layout_document.ts +88 -0
- package/editing/given/a_scene_document.ts +135 -0
- package/editing/index.ts +21 -0
- package/editing/indexDocument.ts +237 -0
- package/editing/inspect.ts +142 -0
- package/editing/instanceEdits.ts +243 -0
- package/editing/layoutTypeDescriptors.ts +191 -0
- package/editing/layoutTypeEdits.ts +135 -0
- package/editing/nodeIds.ts +111 -0
- package/editing/pathAccess.ts +81 -0
- package/editing/propertyEdits.ts +119 -0
- package/editing/resolveEffectiveConfiguration.ts +202 -0
- package/editing/resolveTemplateChain.ts +109 -0
- package/editing/structureEdits.ts +234 -0
- package/editing/validateBinding.ts +103 -0
- package/editing/validateValue.ts +130 -0
- package/index.ts +1 -0
- package/package.json +5 -4
- package/dist/esm/for_aggregateContributions/when_aggregating_by_contribution_point.d.ts +0 -2
- package/dist/esm/for_aggregateContributions/when_aggregating_by_contribution_point.d.ts.map +0 -1
- package/dist/esm/for_aggregateContributions/when_aggregating_by_contribution_point.js +0 -23
- package/dist/esm/for_aggregateContributions/when_aggregating_by_contribution_point.js.map +0 -1
- package/dist/esm/for_buildStarterProfile/when_checking_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_buildStarterProfile/when_checking_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_buildStarterProfile/when_checking_against_the_shared_fixture_corpus.js +0 -16
- package/dist/esm/for_buildStarterProfile/when_checking_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_computeSizeClass/when_computing_the_size_class.d.ts +0 -2
- package/dist/esm/for_computeSizeClass/when_computing_the_size_class.d.ts.map +0 -1
- package/dist/esm/for_computeSizeClass/when_computing_the_size_class.js +0 -17
- package/dist/esm/for_computeSizeClass/when_computing_the_size_class.js.map +0 -1
- package/dist/esm/for_evaluateFlowArrangement/when_evaluating_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_evaluateFlowArrangement/when_evaluating_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_evaluateFlowArrangement/when_evaluating_against_the_shared_fixture_corpus.js +0 -43
- package/dist/esm/for_evaluateFlowArrangement/when_evaluating_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_evaluateFreeformArrangement/when_evaluating_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_evaluateFreeformArrangement/when_evaluating_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_evaluateFreeformArrangement/when_evaluating_against_the_shared_fixture_corpus.js +0 -46
- package/dist/esm/for_evaluateFreeformArrangement/when_evaluating_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_evaluateFreeformSlotArrangement/when_evaluating_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_evaluateFreeformSlotArrangement/when_evaluating_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_evaluateFreeformSlotArrangement/when_evaluating_against_the_shared_fixture_corpus.js +0 -25
- package/dist/esm/for_evaluateFreeformSlotArrangement/when_evaluating_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_incompatibleStarterThemes/when_checking_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_incompatibleStarterThemes/when_checking_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_incompatibleStarterThemes/when_checking_against_the_shared_fixture_corpus.js +0 -17
- package/dist/esm/for_incompatibleStarterThemes/when_checking_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_packageCatalog/when_querying_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_packageCatalog/when_querying_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_packageCatalog/when_querying_against_the_shared_fixture_corpus.js +0 -22
- package/dist/esm/for_packageCatalog/when_querying_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_packageDependencies/fixtures.d.ts +0 -38
- package/dist/esm/for_packageDependencies/fixtures.d.ts.map +0 -1
- package/dist/esm/for_packageDependencies/fixtures.js +0 -5
- package/dist/esm/for_packageDependencies/fixtures.js.map +0 -1
- package/dist/esm/for_packageDependencies/when_resolving_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_packageDependencies/when_resolving_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_packageDependencies/when_resolving_against_the_shared_fixture_corpus.js +0 -29
- package/dist/esm/for_packageDependencies/when_resolving_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_packageVersionRange/when_checking_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_packageVersionRange/when_checking_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_packageVersionRange/when_checking_against_the_shared_fixture_corpus.js +0 -10
- package/dist/esm/for_packageVersionRange/when_checking_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_panelKind/when_telling_the_panels_apart.d.ts +0 -2
- package/dist/esm/for_panelKind/when_telling_the_panels_apart.d.ts.map +0 -1
- package/dist/esm/for_panelKind/when_telling_the_panels_apart.js +0 -38
- package/dist/esm/for_panelKind/when_telling_the_panels_apart.js.map +0 -1
- package/dist/esm/for_renderElement/when_rendering_a_mixed_tree.d.ts +0 -2
- package/dist/esm/for_renderElement/when_rendering_a_mixed_tree.d.ts.map +0 -1
- package/dist/esm/for_renderElement/when_rendering_a_mixed_tree.js +0 -46
- package/dist/esm/for_renderElement/when_rendering_a_mixed_tree.js.map +0 -1
- package/dist/esm/for_resolveBehaviors/when_resolving_additive_attachments.d.ts +0 -2
- package/dist/esm/for_resolveBehaviors/when_resolving_additive_attachments.d.ts.map +0 -1
- package/dist/esm/for_resolveBehaviors/when_resolving_additive_attachments.js +0 -68
- package/dist/esm/for_resolveBehaviors/when_resolving_additive_attachments.js.map +0 -1
- package/dist/esm/for_resolveComponentName/when_resolving_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_resolveComponentName/when_resolving_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_resolveComponentName/when_resolving_against_the_shared_fixture_corpus.js +0 -20
- package/dist/esm/for_resolveComponentName/when_resolving_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_resolveScreenTemplates/when_resolving_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_resolveScreenTemplates/when_resolving_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_resolveScreenTemplates/when_resolving_against_the_shared_fixture_corpus.js +0 -30
- package/dist/esm/for_resolveScreenTemplates/when_resolving_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_resolveStrings/when_resolving_a_strings_reference.d.ts +0 -2
- package/dist/esm/for_resolveStrings/when_resolving_a_strings_reference.d.ts.map +0 -1
- package/dist/esm/for_resolveStrings/when_resolving_a_strings_reference.js +0 -69
- package/dist/esm/for_resolveStrings/when_resolving_a_strings_reference.js.map +0 -1
- package/dist/esm/for_runActions/given/a_recording_dispatcher.d.ts +0 -21
- package/dist/esm/for_runActions/given/a_recording_dispatcher.d.ts.map +0 -1
- package/dist/esm/for_runActions/given/a_recording_dispatcher.js +0 -45
- package/dist/esm/for_runActions/given/a_recording_dispatcher.js.map +0 -1
- package/dist/esm/for_runActions/when_running_a_sequence_of_actions.d.ts +0 -2
- package/dist/esm/for_runActions/when_running_a_sequence_of_actions.d.ts.map +0 -1
- package/dist/esm/for_runActions/when_running_a_sequence_of_actions.js +0 -126
- package/dist/esm/for_runActions/when_running_a_sequence_of_actions.js.map +0 -1
- package/dist/esm/for_runActions/when_running_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_runActions/when_running_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_runActions/when_running_against_the_shared_fixture_corpus.js +0 -61
- package/dist/esm/for_runActions/when_running_against_the_shared_fixture_corpus.js.map +0 -1
- package/dist/esm/for_themeCompatibility/when_checking_against_the_shared_fixture_corpus.d.ts +0 -2
- package/dist/esm/for_themeCompatibility/when_checking_against_the_shared_fixture_corpus.d.ts.map +0 -1
- package/dist/esm/for_themeCompatibility/when_checking_against_the_shared_fixture_corpus.js +0 -18
- package/dist/esm/for_themeCompatibility/when_checking_against_the_shared_fixture_corpus.js.map +0 -1
- package/for_aggregateContributions/when_aggregating_by_contribution_point.ts +0 -31
- package/for_buildStarterProfile/when_checking_against_the_shared_fixture_corpus.ts +0 -32
- package/for_computeSizeClass/when_computing_the_size_class.ts +0 -23
- package/for_evaluateFlowArrangement/when_evaluating_against_the_shared_fixture_corpus.ts +0 -67
- package/for_evaluateFreeformArrangement/when_evaluating_against_the_shared_fixture_corpus.ts +0 -68
- package/for_evaluateFreeformSlotArrangement/when_evaluating_against_the_shared_fixture_corpus.ts +0 -47
- package/for_incompatibleStarterThemes/when_checking_against_the_shared_fixture_corpus.ts +0 -34
- package/for_packageCatalog/when_querying_against_the_shared_fixture_corpus.ts +0 -26
- package/for_packageDependencies/fixtures.ts +0 -44
- package/for_packageDependencies/when_resolving_against_the_shared_fixture_corpus.ts +0 -39
- package/for_packageVersionRange/when_checking_against_the_shared_fixture_corpus.ts +0 -13
- package/for_panelKind/when_telling_the_panels_apart.ts +0 -47
- package/for_renderElement/when_rendering_a_mixed_tree.ts +0 -58
- package/for_resolveBehaviors/when_resolving_additive_attachments.ts +0 -100
- package/for_resolveComponentName/when_resolving_against_the_shared_fixture_corpus.ts +0 -36
- package/for_resolveScreenTemplates/when_resolving_against_the_shared_fixture_corpus.ts +0 -49
- package/for_resolveStrings/when_resolving_a_strings_reference.ts +0 -85
- package/for_runActions/given/a_recording_dispatcher.ts +0 -72
- package/for_runActions/when_running_a_sequence_of_actions.ts +0 -226
- package/for_runActions/when_running_against_the_shared_fixture_corpus.ts +0 -124
- package/for_themeCompatibility/when_checking_against_the_shared_fixture_corpus.ts +0 -37
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
-
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
-
|
|
4
|
-
import { readFileSync } from 'node:fs';
|
|
5
|
-
import { join } from 'node:path';
|
|
6
|
-
import { InteractionAction, InteractionActionKind, InteractionTriggerKind, NotificationLevel } from '@cratis/scene.model';
|
|
7
|
-
import { BehaviorAttachment, resolveBehaviors } from '../resolveBehaviors';
|
|
8
|
-
import { InteractionStop, runActions } from '../runActions';
|
|
9
|
-
import { pathEchoingContext, RecordingDispatcher } from './given/a_recording_dispatcher';
|
|
10
|
-
|
|
11
|
-
interface FixtureBehavior {
|
|
12
|
-
name: string | null;
|
|
13
|
-
trigger: keyof typeof InteractionTriggerKind;
|
|
14
|
-
order?: number;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
interface FixtureAttachment {
|
|
18
|
-
level: string;
|
|
19
|
-
depth?: number;
|
|
20
|
-
behaviors: FixtureBehavior[];
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
interface ResolutionCase {
|
|
24
|
-
name: string;
|
|
25
|
-
trigger: keyof typeof InteractionTriggerKind;
|
|
26
|
-
attachments: FixtureAttachment[];
|
|
27
|
-
expected: (string | null)[];
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
interface FixtureAction {
|
|
31
|
-
kind: string;
|
|
32
|
-
command?: string;
|
|
33
|
-
query?: string;
|
|
34
|
-
screen?: string;
|
|
35
|
-
dialogTemplate?: string;
|
|
36
|
-
level?: keyof typeof NotificationLevel;
|
|
37
|
-
text?: string;
|
|
38
|
-
onSuccess?: FixtureAction[];
|
|
39
|
-
onFailure?: FixtureAction[];
|
|
40
|
-
onResult?: FixtureAction[];
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
interface SequencingCase {
|
|
44
|
-
name: string;
|
|
45
|
-
actions: FixtureAction[];
|
|
46
|
-
commandSucceeds: boolean;
|
|
47
|
-
confirmAnswer: boolean;
|
|
48
|
-
expectedCalls: string[];
|
|
49
|
-
expectedStop: keyof typeof InteractionStop;
|
|
50
|
-
expectedFindings?: string[];
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
interface FixtureCorpus {
|
|
54
|
-
resolutionCases: ResolutionCase[];
|
|
55
|
-
sequencingCases: SequencingCase[];
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
const manifestPath = join(import.meta.dirname, '..', '..', '..', '..', 'interaction-fixtures.json');
|
|
59
|
-
const corpus = JSON.parse(readFileSync(manifestPath, 'utf-8')) as FixtureCorpus;
|
|
60
|
-
|
|
61
|
-
function attachment(fixture: FixtureAttachment): BehaviorAttachment {
|
|
62
|
-
return {
|
|
63
|
-
level: fixture.level,
|
|
64
|
-
depth: fixture.depth,
|
|
65
|
-
behaviors: fixture.behaviors.map(behavior => ({
|
|
66
|
-
name: behavior.name ?? undefined,
|
|
67
|
-
order: behavior.order,
|
|
68
|
-
bindings: [
|
|
69
|
-
{
|
|
70
|
-
trigger: { kind: InteractionTriggerKind[behavior.trigger] } as never,
|
|
71
|
-
actions: [],
|
|
72
|
-
},
|
|
73
|
-
],
|
|
74
|
-
})),
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
function action(fixture: FixtureAction): InteractionAction {
|
|
79
|
-
return {
|
|
80
|
-
kind: InteractionActionKind[fixture.kind as keyof typeof InteractionActionKind] ?? fixture.kind,
|
|
81
|
-
command: fixture.command,
|
|
82
|
-
query: fixture.query,
|
|
83
|
-
screen: fixture.screen,
|
|
84
|
-
dialogTemplate: fixture.dialogTemplate,
|
|
85
|
-
level: fixture.level === undefined ? undefined : NotificationLevel[fixture.level],
|
|
86
|
-
message: fixture.text === undefined ? undefined : { text: fixture.text },
|
|
87
|
-
onSuccess: (fixture.onSuccess ?? []).map(action),
|
|
88
|
-
onFailure: (fixture.onFailure ?? []).map(action),
|
|
89
|
-
onResult: (fixture.onResult ?? []).map(action),
|
|
90
|
-
} as InteractionAction;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// The dispatcher records the command name without its arguments, because the corpus pins the sequencing rule
|
|
94
|
-
// and not how a binding resolves - that is asserted by the unit specs next to this file.
|
|
95
|
-
function callsWithoutArguments(calls: string[]): string[] {
|
|
96
|
-
return calls.map(call => call.replace(/:\{.*\}$/, ''));
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
describe('when running against the shared fixture corpus', () => {
|
|
100
|
-
for (const fixture of corpus.resolutionCases) {
|
|
101
|
-
it(`should resolve the case where ${fixture.name}`, () => {
|
|
102
|
-
const resolved = resolveBehaviors(
|
|
103
|
-
fixture.attachments.map(attachment),
|
|
104
|
-
InteractionTriggerKind[fixture.trigger]
|
|
105
|
-
);
|
|
106
|
-
|
|
107
|
-
resolved.map(candidate => candidate.behaviorName ?? null).should.eql(fixture.expected);
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
for (const fixture of corpus.sequencingCases) {
|
|
112
|
-
it(`should sequence the case where ${fixture.name}`, async () => {
|
|
113
|
-
const dispatcher = new RecordingDispatcher();
|
|
114
|
-
dispatcher.commandSucceeds = fixture.commandSucceeds;
|
|
115
|
-
dispatcher.confirmAnswer = fixture.confirmAnswer;
|
|
116
|
-
|
|
117
|
-
const run = await runActions(fixture.actions.map(action), dispatcher, pathEchoingContext);
|
|
118
|
-
|
|
119
|
-
callsWithoutArguments(dispatcher.calls).should.eql(fixture.expectedCalls);
|
|
120
|
-
run.stop.should.equal(InteractionStop[fixture.expectedStop]);
|
|
121
|
-
run.findings.map(finding => finding.kind).should.eql(fixture.expectedFindings ?? []);
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
});
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
-
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
-
|
|
4
|
-
import { readFileSync } from 'node:fs';
|
|
5
|
-
import { join } from 'node:path';
|
|
6
|
-
import { Theme, UiProfile } from '@cratis/scene.model';
|
|
7
|
-
import { applicableThemePackages, incompatiblePackages } from '../index';
|
|
8
|
-
|
|
9
|
-
interface FixtureCase {
|
|
10
|
-
name: string;
|
|
11
|
-
theme: { compatibleWith: string[] };
|
|
12
|
-
profile: { packages: string[] };
|
|
13
|
-
expectedIncompatible: string[];
|
|
14
|
-
expectedApplicable: string[];
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
interface FixtureCorpus {
|
|
18
|
-
cases: FixtureCase[];
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const manifestPath = join(import.meta.dirname, '..', '..', '..', '..', 'theme-compatibility-fixtures.json');
|
|
22
|
-
const corpus = JSON.parse(readFileSync(manifestPath, 'utf-8')) as FixtureCorpus;
|
|
23
|
-
|
|
24
|
-
describe('when checking against the shared fixture corpus', () => {
|
|
25
|
-
for (const fixtureCase of corpus.cases) {
|
|
26
|
-
const theme: Theme = { name: 'test-theme', compatibleWith: fixtureCase.theme.compatibleWith };
|
|
27
|
-
const profile: UiProfile = { name: 'test-profile', targetPlatform: 'web', packages: fixtureCase.profile.packages };
|
|
28
|
-
|
|
29
|
-
it(`should match the expected incompatible packages for "${fixtureCase.name}"`, () => {
|
|
30
|
-
incompatiblePackages(theme, profile).should.deep.equal(fixtureCase.expectedIncompatible);
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
it(`should match the expected applicable packages for "${fixtureCase.name}"`, () => {
|
|
34
|
-
applicableThemePackages(theme, profile).should.deep.equal(fixtureCase.expectedApplicable);
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
});
|