diff --git a/packages/ui/src/components/OperationalPreview.stories.tsx b/packages/ui/src/components/OperationalPreview.stories.tsx index e7dc8980..f87601bc 100644 --- a/packages/ui/src/components/OperationalPreview.stories.tsx +++ b/packages/ui/src/components/OperationalPreview.stories.tsx @@ -303,3 +303,174 @@ export const LaunchReadyConsole: Story = { ), }; + +export const LaunchStateMatrix: Story = { + render: () => ( +
+
+ + + Reusable + + + Accessible states + + + } + /> + +
+ + +
+ Loading + Skeletons match the final rhythm and density. +
+ + Fetching + +
+ +
+
+ +
+ + +
+
+ +
+
+
+ + + +
+ Empty + Empty states provide a clear next action. +
+
+ + } + action={ + + } + /> + +
+ + + +
+ Alert stack + Warnings and errors use consistent semantics. +
+
+ +
+ + Market data is delayed. Show the user what changed and whether action is safe. + + + Destructive or risky actions require a clear reason and recovery path. + +
+
+
+ + + +
+ Forms and disabled states + Controls remain readable when unavailable. +
+ Read-only +
+ + + + +