namespace SomhairlesDream.Modeling open SomhairlesDream.Shared [] type DesignStep = { StepId: string Index: int ObjectIds: string array Changes: ArtifactChange array } module Design = let steps : DesignStep array = [| { StepId = "01-foundation"; Index = 0 ObjectIds = [| "heritage.foundation"; "heritage.deck" |] Changes = [| { ObjectId = "heritage.foundation"; Kind = "add"; Summary = "Add foundation slab" } { ObjectId = "heritage.deck"; Kind = "add"; Summary = "Add raised deck" } |] } { StepId = "02-frame"; Index = 1 ObjectIds = [| "heritage.foundation"; "heritage.deck"; "heritage.frame.left"; "heritage.frame.right"; "heritage.spine" |] Changes = [| { ObjectId = "heritage.frame.left"; Kind = "add"; Summary = "Add primary left frame" } { ObjectId = "heritage.frame.right"; Kind = "add"; Summary = "Add primary right frame" } { ObjectId = "heritage.spine"; Kind = "add"; Summary = "Add central spine" } |] } { StepId = "03-cabin"; Index = 2 ObjectIds = [| "heritage.foundation"; "heritage.deck"; "heritage.frame.left"; "heritage.frame.right"; "heritage.spine"; "heritage.cabin"; "heritage.crossbeam" |] Changes = [| { ObjectId = "heritage.cabin"; Kind = "add"; Summary = "Add cabin volume" } { ObjectId = "heritage.crossbeam"; Kind = "add"; Summary = "Add cabin crossbeam" } |] } |]