Release v0.2.0
Added
PackageResolver.Resolve()(C#,Cratis.Scene.Engine) andresolveComponentName()(TypeScript,@cratis/scene.engine) - resolve a bare or package-qualified component name against aui profile's package list. A bare name walks the package list from highest to lowest priority (corealways the lowest-priority fallback); a package-qualified name (e.g.Internal.Widgets.TrendChart) resolves directly against its named package, bypassing priority order entirely. (#3)- Every resolution also reports which other active packages declared the same bare name but were shadowed by the winner, directly answering the issue's own open question ("why did my button render as PrimeReact's and not core's") without needing separate CLI tooling. (#3)
- A shared JSON fixture corpus (
package-resolution-fixtures.json) asserted independently by both the C# and TypeScript specs, so the two implementations of the algorithm cannot drift apart - the same patternscene-model-shape.jsonalready establishes forScene.Model's shape. - New
Cratis.Scene.EngineC# project, sibling toScene.Model, mirroring the existing TypeScriptmodel/enginepackage split - keepsScene.Model's strict shape-parity manifest free of behavioral types.
Notes
Wiring this resolver into SceneElementView/ComponentRegistry's actual rendering path (resolving an entire element tree's component names before it renders) is left to Stage#39 and StudioIssues#160, which this issue explicitly lists as downstream consumers - not attempted here.