Skip to content

Release v4.23.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 03:43
d84a395

Scene gains a read-only description of an application's modules, features and slices (with each slice's kind) that navigation, toolbar and template-applicability rules can query. Closes part of the spec epic #96.

Added

  • ApplicationStructure, ModuleNode, FeatureNode, SliceNode and SliceKind (StateChange, StateView, Automation) in Cratis.Scene.Model.Structure and @cratis/scene.model, mirrored in scene-model-shape.json. The structure is a reference input supplied by the host (Stage's converter, Studio); it is not persisted in a scene document.
  • ApplicationStructureIndex in Cratis.Scene.Engine.Structure and engine/structure: findModule, findFeature, firstFeature/firstFeatureId, findSlice, kindOf, findFeaturesByName and the diagnostics structureDuplicateId and structureAmbiguousName. Pure, no DOM.
  • application-structure-fixtures.json (qualified lookup, nested features, first feature, module without features, unknown/wrongly typed ids, same-named features in different modules, duplicate ids, ambiguous names) asserted by both Engine.Specs/for_ApplicationStructureIndex and engine/for_applicationStructureIndex.
  • The documentation page blueprints/application-structure.md explains the input and who supplies it.

Part of #97