@object-ui/components 2.0.0 β†’ 3.0.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.
Files changed (34) hide show
  1. package/.turbo/turbo-build.log +12 -12
  2. package/CHANGELOG.md +19 -0
  3. package/dist/index.css +1 -1
  4. package/dist/index.js +19610 -19344
  5. package/dist/index.umd.cjs +29 -29
  6. package/dist/src/custom/index.d.ts +2 -0
  7. package/dist/src/custom/view-skeleton.d.ts +37 -0
  8. package/dist/src/custom/view-states.d.ts +33 -0
  9. package/package.json +17 -17
  10. package/src/__tests__/__snapshots__/snapshot-critical.test.tsx.snap +811 -0
  11. package/src/__tests__/__snapshots__/snapshot.test.tsx.snap +327 -0
  12. package/src/__tests__/accessibility.test.tsx +137 -0
  13. package/src/__tests__/api-consistency.test.tsx +596 -0
  14. package/src/__tests__/color-contrast.test.tsx +212 -0
  15. package/src/__tests__/edge-cases.test.tsx +285 -0
  16. package/src/__tests__/snapshot-critical.test.tsx +317 -0
  17. package/src/__tests__/snapshot.test.tsx +205 -0
  18. package/src/__tests__/wcag-audit.test.tsx +493 -0
  19. package/src/custom/index.ts +2 -0
  20. package/src/custom/view-skeleton.tsx +243 -0
  21. package/src/custom/view-states.tsx +153 -0
  22. package/src/renderers/complex/data-table.tsx +28 -13
  23. package/src/renderers/complex/resizable.tsx +20 -17
  24. package/src/renderers/data-display/list.tsx +1 -1
  25. package/src/renderers/data-display/table.tsx +1 -1
  26. package/src/renderers/data-display/tree-view.tsx +2 -1
  27. package/src/renderers/form/form.tsx +10 -6
  28. package/src/renderers/layout/aspect-ratio.tsx +1 -1
  29. package/src/stories-json/Accessibility.mdx +297 -0
  30. package/src/stories-json/EdgeCases.stories.tsx +160 -0
  31. package/src/stories-json/GettingStarted.mdx +89 -0
  32. package/src/stories-json/Introduction.mdx +127 -0
  33. package/src/ui/slider.tsx +6 -2
  34. package/src/stories/Introduction.mdx +0 -61
@@ -1,61 +0,0 @@
1
- import { Meta } from "@storybook/blocks";
2
-
3
- <Meta title="Getting Started/Introduction" />
4
-
5
- # ObjectUI β€” Server-Driven UI Engine
6
-
7
- **ObjectUI** is a universal, server-driven UI (SDUI) engine built on **React + Tailwind + Shadcn**.
8
- It interprets JSON metadata into pixel-perfect, accessible, and interactive enterprise interfaces.
9
-
10
- ## πŸ— Architecture
11
-
12
- | Package | Role |
13
- |---|---|
14
- | `@object-ui/types` | JSON Protocol β€” Pure TypeScript interfaces |
15
- | `@object-ui/core` | Engine β€” Schema registry, validation, expressions |
16
- | `@object-ui/components` | Primitives β€” Shadcn UI wrappers (Button, Card, Badge…) |
17
- | `@object-ui/fields` | Field Widgets β€” 47+ input field renderers |
18
- | `@object-ui/layout` | Shell β€” Header, Sidebar, AppShell |
19
- | `@object-ui/react` | Runtime β€” `SchemaRenderer`, `useRenderer` |
20
- | `@object-ui/plugin-*` | Plugins β€” Grid, Kanban, Charts, Gantt, Map… |
21
- | `@object-ui/data-*` | Data Adapters β€” REST, ObjectQL, ObjectStack |
22
-
23
- ## 🎯 How It Works
24
-
25
- Everything is driven by **JSON schemas**. A UI tree is a recursive structure of `UIComponent` nodes:
26
-
27
- ```json
28
- {
29
- "type": "page",
30
- "children": [
31
- {
32
- "type": "grid",
33
- "props": { "cols": 3, "gap": 4 },
34
- "children": [
35
- { "type": "metric", "label": "Revenue", "value": "$45,231" },
36
- { "type": "metric", "label": "Users", "value": "2,350" },
37
- { "type": "metric", "label": "Growth", "value": "12.5%" }
38
- ]
39
- }
40
- ]
41
- }
42
- ```
43
-
44
- The `SchemaRenderer` recursively walks this tree and resolves each `type` to a registered React component.
45
-
46
- ## πŸ“– Storybook Guide
47
-
48
- This Storybook is organized by capability:
49
-
50
- - **Getting Started** β€” Introduction and data binding guides.
51
- - **Primitives** β€” Atomic Shadcn UI wrappers driven by JSON (Button, Card, Input, Dialog…).
52
- - **Fields** β€” All 47+ field widget renderers (text, number, select, date, lookup…).
53
- - **Plugins** β€” Complex views powered by specialized libraries (Grid, Kanban, Gantt, Charts, Map…).
54
- - **Templates** β€” Composed page-level layouts (Dashboard, Page, Reports, Sidebar).
55
- - **Apps** β€” Full application demos (CRM) using all of the above.
56
-
57
- ## πŸ”— Links
58
-
59
- - [GitHub Repository](https://github.com/objectstack-ai/objectui)
60
- - [ObjectStack Spec](https://github.com/objectstack-ai/spec)
61
- - [Shadcn UI](https://ui.shadcn.com/)