@object-ui/components 0.3.1 → 2.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 (326) hide show
  1. package/.turbo/turbo-build.log +34 -0
  2. package/CHANGELOG.md +13 -0
  3. package/README.md +13 -0
  4. package/dist/index.css +1 -1
  5. package/dist/index.js +36430 -25529
  6. package/dist/index.umd.cjs +53 -32
  7. package/dist/src/SchemaRenderer.d.ts +3 -0
  8. package/dist/src/custom/action-param-dialog.d.ts +21 -0
  9. package/dist/src/{ui → custom}/button-group.d.ts +1 -1
  10. package/dist/src/custom/field.d.ts +19 -0
  11. package/dist/src/custom/index.d.ts +14 -0
  12. package/dist/src/custom/input-group.d.ts +14 -0
  13. package/dist/src/{ui → custom}/item.d.ts +1 -1
  14. package/dist/src/custom/native-select.d.ts +12 -0
  15. package/dist/src/custom/navigation-overlay.d.ts +50 -0
  16. package/dist/src/custom/sort-builder.d.ts +22 -0
  17. package/dist/src/index.d.ts +2 -0
  18. package/dist/src/renderers/action/action-button.d.ts +11 -0
  19. package/dist/src/renderers/action/action-group.d.ts +25 -0
  20. package/dist/src/renderers/action/action-icon.d.ts +10 -0
  21. package/dist/src/renderers/action/action-menu.d.ts +19 -0
  22. package/dist/src/renderers/action/index.d.ts +0 -0
  23. package/dist/src/renderers/action/resolve-icon.d.ts +6 -0
  24. package/dist/src/renderers/data-display/table.d.ts +1 -1
  25. package/dist/src/renderers/layout/page.d.ts +1 -1
  26. package/dist/src/renderers/placeholders.d.ts +1 -1
  27. package/dist/src/ui/accordion.d.ts +4 -4
  28. package/dist/src/ui/alert-dialog.d.ts +17 -11
  29. package/dist/src/ui/alert.d.ts +4 -5
  30. package/dist/src/ui/aspect-ratio.d.ts +1 -1
  31. package/dist/src/ui/avatar.d.ts +3 -3
  32. package/dist/src/ui/badge.d.ts +3 -3
  33. package/dist/src/ui/breadcrumb.d.ts +16 -8
  34. package/dist/src/ui/calendar.d.ts +7 -7
  35. package/dist/src/ui/card.d.ts +7 -8
  36. package/dist/src/ui/carousel.d.ts +5 -6
  37. package/dist/src/ui/chart.d.ts +62 -0
  38. package/dist/src/ui/checkbox.d.ts +1 -1
  39. package/dist/src/ui/collapsible.d.ts +3 -3
  40. package/dist/src/ui/command.d.ts +78 -16
  41. package/dist/src/ui/context-menu.d.ts +14 -12
  42. package/dist/src/ui/dialog.d.ts +17 -13
  43. package/dist/src/ui/drawer.d.ts +19 -10
  44. package/dist/src/ui/dropdown-menu.d.ts +20 -18
  45. package/dist/src/ui/form.d.ts +6 -7
  46. package/dist/src/ui/hover-card.d.ts +3 -3
  47. package/dist/src/ui/index.d.ts +2 -8
  48. package/dist/src/ui/input-otp.d.ts +30 -7
  49. package/dist/src/ui/label.d.ts +2 -1
  50. package/dist/src/ui/menubar.d.ts +19 -17
  51. package/dist/src/ui/navigation-menu.d.ts +9 -11
  52. package/dist/src/ui/pagination.d.ts +25 -10
  53. package/dist/src/ui/popover.d.ts +4 -5
  54. package/dist/src/ui/progress.d.ts +1 -1
  55. package/dist/src/ui/radio-group.d.ts +2 -2
  56. package/dist/src/ui/resizable.d.ts +5 -8
  57. package/dist/src/ui/scroll-area.d.ts +2 -2
  58. package/dist/src/ui/select.d.ts +11 -13
  59. package/dist/src/ui/sheet.d.ts +23 -11
  60. package/dist/src/ui/sidebar.d.ts +27 -29
  61. package/dist/src/ui/skeleton.d.ts +1 -1
  62. package/dist/src/ui/slider.d.ts +1 -1
  63. package/dist/src/ui/sonner.d.ts +2 -1
  64. package/dist/src/ui/switch.d.ts +2 -2
  65. package/dist/src/ui/tabs.d.ts +1 -1
  66. package/dist/src/ui/textarea.d.ts +1 -1
  67. package/dist/src/ui/toast.d.ts +22 -0
  68. package/dist/src/ui/toggle-group.d.ts +8 -3
  69. package/dist/src/ui/toggle.d.ts +4 -1
  70. package/dist/src/ui/tooltip.d.ts +4 -4
  71. package/dist/src/ui/typography.d.ts +21 -0
  72. package/package.json +20 -9
  73. package/shadcn-components.json +52 -47
  74. package/src/SchemaRenderer.tsx +28 -0
  75. package/src/__tests__/PageRendererRegions.test.tsx +668 -0
  76. package/src/__tests__/Registry.test.ts +21 -0
  77. package/src/__tests__/basic-renderers.test.tsx +1 -1
  78. package/src/__tests__/complex-disclosure-renderers.test.tsx +3 -2
  79. package/src/__tests__/compliance.test.tsx +72 -0
  80. package/src/__tests__/feedback-overlay-renderers.test.tsx +1 -1
  81. package/src/__tests__/form-renderers.test.tsx +1 -1
  82. package/src/__tests__/layout-data-renderers.test.tsx +1 -1
  83. package/src/__tests__/navigation-overlay.test.tsx +273 -0
  84. package/src/__tests__/view-compliance.test.tsx +153 -0
  85. package/src/custom/action-param-dialog.tsx +264 -0
  86. package/src/{ui → custom}/button-group.tsx +1 -1
  87. package/src/{ui → custom}/combobox.tsx +3 -3
  88. package/src/{ui → custom}/date-picker.tsx +3 -3
  89. package/src/custom/field.tsx +81 -0
  90. package/src/{ui → custom}/filter-builder.tsx +3 -3
  91. package/src/custom/index.ts +14 -0
  92. package/src/custom/input-group.tsx +53 -0
  93. package/src/{ui → custom}/item.tsx +1 -1
  94. package/src/custom/native-select.tsx +33 -0
  95. package/src/custom/navigation-overlay.tsx +296 -0
  96. package/src/custom/sort-builder.tsx +129 -0
  97. package/src/index.css +20 -1
  98. package/src/index.ts +2 -0
  99. package/src/renderers/action/action-button.tsx +147 -0
  100. package/src/renderers/action/action-group.tsx +270 -0
  101. package/src/renderers/action/action-icon.tsx +150 -0
  102. package/src/renderers/action/action-menu.tsx +203 -0
  103. package/src/renderers/action/index.ts +18 -0
  104. package/src/renderers/action/resolve-icon.ts +35 -0
  105. package/src/renderers/basic/button-group.tsx +1 -0
  106. package/src/renderers/basic/div.tsx +12 -1
  107. package/src/renderers/basic/html.tsx +1 -0
  108. package/src/renderers/basic/icon.tsx +1 -0
  109. package/src/renderers/basic/image.tsx +1 -0
  110. package/src/renderers/basic/navigation-menu.tsx +1 -0
  111. package/src/renderers/basic/pagination.tsx +31 -4
  112. package/src/renderers/basic/separator.tsx +1 -0
  113. package/src/renderers/basic/span.tsx +12 -1
  114. package/src/renderers/basic/text.tsx +4 -2
  115. package/src/renderers/complex/__tests__/data-table-batch-editing.test.tsx +275 -0
  116. package/src/renderers/complex/__tests__/data-table-cell-renderer.test.tsx +120 -0
  117. package/src/renderers/complex/__tests__/data-table-editing.test.tsx +221 -0
  118. package/src/renderers/complex/carousel.tsx +1 -0
  119. package/src/renderers/complex/data-table.tsx +355 -95
  120. package/src/renderers/complex/filter-builder.tsx +2 -1
  121. package/src/renderers/complex/resizable.tsx +2 -1
  122. package/src/renderers/complex/scroll-area.tsx +25 -7
  123. package/src/renderers/complex/table.tsx +1 -0
  124. package/src/renderers/data-display/alert.tsx +1 -0
  125. package/src/renderers/data-display/avatar.tsx +1 -0
  126. package/src/renderers/data-display/badge.tsx +1 -0
  127. package/src/renderers/data-display/breadcrumb.tsx +1 -0
  128. package/src/renderers/data-display/kbd.tsx +1 -0
  129. package/src/renderers/data-display/list.tsx +21 -49
  130. package/src/renderers/data-display/statistic.tsx +21 -5
  131. package/src/renderers/data-display/table.tsx +21 -11
  132. package/src/renderers/data-display/tree-view.tsx +7 -1
  133. package/src/renderers/disclosure/accordion.tsx +1 -0
  134. package/src/renderers/disclosure/collapsible.tsx +1 -0
  135. package/src/renderers/disclosure/toggle-group.tsx +2 -0
  136. package/src/renderers/feedback/empty.tsx +1 -0
  137. package/src/renderers/feedback/loading.tsx +2 -1
  138. package/src/renderers/feedback/progress.tsx +1 -0
  139. package/src/renderers/feedback/skeleton.tsx +1 -0
  140. package/src/renderers/feedback/sonner.tsx +1 -0
  141. package/src/renderers/feedback/spinner.tsx +1 -0
  142. package/src/renderers/feedback/toast.tsx +1 -0
  143. package/src/renderers/feedback/toaster.tsx +1 -0
  144. package/src/renderers/form/button.tsx +35 -1
  145. package/src/renderers/form/calendar.tsx +1 -0
  146. package/src/renderers/form/checkbox.tsx +38 -16
  147. package/src/renderers/form/combobox.tsx +2 -1
  148. package/src/renderers/form/command.tsx +1 -0
  149. package/src/renderers/form/date-picker.tsx +1 -0
  150. package/src/renderers/form/file-upload.tsx +1 -0
  151. package/src/renderers/form/form.tsx +115 -19
  152. package/src/renderers/form/input-otp.tsx +1 -0
  153. package/src/renderers/form/input.tsx +3 -0
  154. package/src/renderers/form/label.tsx +1 -0
  155. package/src/renderers/form/radio-group.tsx +1 -0
  156. package/src/renderers/form/select.tsx +35 -15
  157. package/src/renderers/form/slider.tsx +1 -0
  158. package/src/renderers/form/switch.tsx +1 -0
  159. package/src/renderers/form/textarea.tsx +50 -27
  160. package/src/renderers/form/toggle.tsx +3 -45
  161. package/src/renderers/index.ts +1 -0
  162. package/src/renderers/layout/aspect-ratio.tsx +2 -1
  163. package/src/renderers/layout/card.tsx +10 -2
  164. package/src/renderers/layout/container.tsx +1 -0
  165. package/src/renderers/layout/flex.tsx +1 -0
  166. package/src/renderers/layout/grid.tsx +23 -8
  167. package/src/renderers/layout/page.tsx +433 -57
  168. package/src/renderers/layout/semantic.tsx +1 -0
  169. package/src/renderers/layout/stack.tsx +2 -1
  170. package/src/renderers/layout/tabs.tsx +43 -17
  171. package/src/renderers/navigation/header-bar.tsx +1 -0
  172. package/src/renderers/navigation/sidebar.tsx +11 -0
  173. package/src/renderers/overlay/alert-dialog.tsx +1 -0
  174. package/src/renderers/overlay/context-menu.tsx +1 -0
  175. package/src/renderers/overlay/dialog.tsx +1 -0
  176. package/src/renderers/overlay/drawer.tsx +1 -0
  177. package/src/renderers/overlay/dropdown-menu.tsx +1 -0
  178. package/src/renderers/overlay/hover-card.tsx +1 -0
  179. package/src/renderers/overlay/menubar.tsx +1 -0
  180. package/src/renderers/overlay/popover.tsx +1 -0
  181. package/src/renderers/overlay/sheet.tsx +1 -0
  182. package/src/renderers/overlay/tooltip.tsx +1 -0
  183. package/src/renderers/placeholders.tsx +4 -4
  184. package/src/stories/CRMApp.stories.tsx +706 -0
  185. package/src/stories/Guide.mdx +55 -0
  186. package/src/stories/Introduction.mdx +61 -0
  187. package/src/stories/MockedData.stories.tsx +121 -0
  188. package/src/stories/assets/accessibility.png +0 -0
  189. package/src/stories/assets/accessibility.svg +1 -0
  190. package/src/stories/assets/addon-library.png +0 -0
  191. package/src/stories/assets/assets.png +0 -0
  192. package/src/stories/assets/avif-test-image.avif +0 -0
  193. package/src/stories/assets/context.png +0 -0
  194. package/src/stories/assets/discord.svg +1 -0
  195. package/src/stories/assets/docs.png +0 -0
  196. package/src/stories/assets/figma-plugin.png +0 -0
  197. package/src/stories/assets/github.svg +1 -0
  198. package/src/stories/assets/share.png +0 -0
  199. package/src/stories/assets/styling.png +0 -0
  200. package/src/stories/assets/testing.png +0 -0
  201. package/src/stories/assets/theming.png +0 -0
  202. package/src/stories/assets/tutorials.svg +1 -0
  203. package/src/stories/assets/youtube.svg +1 -0
  204. package/src/stories/button.css +30 -0
  205. package/src/stories/header.css +32 -0
  206. package/src/stories/page.css +68 -0
  207. package/src/stories-json/accordion.stories.tsx +43 -0
  208. package/src/stories-json/aggrid.stories.tsx +103 -0
  209. package/src/stories-json/alert.stories.tsx +39 -0
  210. package/src/stories-json/aspect-ratio.stories.tsx +34 -0
  211. package/src/stories-json/avatar.stories.tsx +38 -0
  212. package/src/stories-json/badge.stories.tsx +53 -0
  213. package/src/stories-json/breadcrumb.stories.tsx +30 -0
  214. package/src/stories-json/button-group.stories.tsx +43 -0
  215. package/src/stories-json/button.stories.tsx +73 -0
  216. package/src/stories-json/calendar.stories.tsx +85 -0
  217. package/src/stories-json/card.stories.tsx +48 -0
  218. package/src/stories-json/carousel.stories.tsx +33 -0
  219. package/src/stories-json/charts.stories.tsx +195 -0
  220. package/src/stories-json/chatbot.stories.tsx +248 -0
  221. package/src/stories-json/code-editor.stories.tsx +92 -0
  222. package/src/stories-json/collapsible.stories.tsx +40 -0
  223. package/src/stories-json/controls.stories.tsx +36 -0
  224. package/src/stories-json/crm-live-data.stories.tsx +154 -0
  225. package/src/stories-json/dashboard.stories.tsx +318 -0
  226. package/src/stories-json/data-table.stories.tsx +136 -0
  227. package/src/stories-json/data_display_extras.stories.tsx +102 -0
  228. package/src/stories-json/date-picker.stories.tsx +28 -0
  229. package/src/stories-json/detail-view.stories.tsx +258 -0
  230. package/src/stories-json/dialog.stories.tsx +43 -0
  231. package/src/stories-json/feedback_extras.stories.tsx +40 -0
  232. package/src/stories-json/feedback_others.stories.tsx +46 -0
  233. package/src/stories-json/form-variants.stories.tsx +210 -0
  234. package/src/stories-json/form_advanced.stories.tsx +117 -0
  235. package/src/stories-json/form_extras.stories.tsx +123 -0
  236. package/src/stories-json/grid.stories.tsx +56 -0
  237. package/src/stories-json/icon.stories.tsx +36 -0
  238. package/src/stories-json/input.stories.tsx +52 -0
  239. package/src/stories-json/kanban.stories.tsx +295 -0
  240. package/src/stories-json/layout_extended.stories.tsx +76 -0
  241. package/src/stories-json/layout_flex.stories.tsx +107 -0
  242. package/src/stories-json/list-view.stories.tsx +97 -0
  243. package/src/stories-json/markdown.stories.tsx +129 -0
  244. package/src/stories-json/menus.stories.tsx +63 -0
  245. package/src/stories-json/metric-card.stories.tsx +143 -0
  246. package/src/stories-json/navigation-menu.stories.tsx +37 -0
  247. package/src/stories-json/object-aggrid-advanced.stories.tsx +389 -0
  248. package/src/stories-json/object-aggrid.stories.tsx +252 -0
  249. package/src/stories-json/object-form.stories.tsx +130 -0
  250. package/src/stories-json/object-gantt.stories.tsx +114 -0
  251. package/src/stories-json/object-grid.stories.tsx +315 -0
  252. package/src/stories-json/object-map.stories.tsx +116 -0
  253. package/src/stories-json/object-view.stories.tsx +118 -0
  254. package/src/stories-json/overlay_extras.stories.tsx +113 -0
  255. package/src/stories-json/overlay_others.stories.tsx +76 -0
  256. package/src/stories-json/page.stories.tsx +55 -0
  257. package/src/stories-json/reports.stories.tsx +163 -0
  258. package/src/stories-json/resizable.stories.tsx +44 -0
  259. package/src/stories-json/select.stories.tsx +34 -0
  260. package/src/stories-json/separator.stories.tsx +41 -0
  261. package/src/stories-json/sidebar.stories.tsx +147 -0
  262. package/src/stories-json/statistic.stories.tsx +44 -0
  263. package/src/stories-json/tabs.stories.tsx +51 -0
  264. package/src/stories-json/timeline.stories.tsx +188 -0
  265. package/src/stories-json/typography.stories.tsx +45 -0
  266. package/src/ui/accordion.tsx +47 -53
  267. package/src/ui/alert-dialog.tsx +103 -117
  268. package/src/ui/alert.tsx +35 -36
  269. package/src/ui/aspect-ratio.tsx +1 -5
  270. package/src/ui/avatar.tsx +41 -42
  271. package/src/ui/badge.tsx +6 -15
  272. package/src/ui/breadcrumb.tsx +81 -75
  273. package/src/ui/button.tsx +10 -11
  274. package/src/ui/calendar.tsx +178 -51
  275. package/src/ui/card.tsx +51 -110
  276. package/src/ui/carousel.tsx +136 -113
  277. package/src/ui/chart.tsx +367 -0
  278. package/src/ui/checkbox.tsx +20 -22
  279. package/src/ui/collapsible.tsx +5 -25
  280. package/src/ui/command.tsx +106 -135
  281. package/src/ui/context-menu.tsx +69 -116
  282. package/src/ui/dialog.tsx +94 -113
  283. package/src/ui/drawer.tsx +82 -99
  284. package/src/ui/dropdown-menu.tsx +134 -188
  285. package/src/ui/form.tsx +51 -40
  286. package/src/ui/hover-card.tsx +18 -33
  287. package/src/ui/index.ts +2 -8
  288. package/src/ui/input-otp.tsx +42 -52
  289. package/src/ui/input.tsx +13 -15
  290. package/src/ui/label.tsx +17 -15
  291. package/src/ui/menubar.tsx +188 -206
  292. package/src/ui/navigation-menu.tsx +96 -136
  293. package/src/ui/pagination.tsx +86 -96
  294. package/src/ui/popover.tsx +24 -41
  295. package/src/ui/progress.tsx +21 -22
  296. package/src/ui/radio-group.tsx +19 -20
  297. package/src/ui/resizable.tsx +32 -42
  298. package/src/ui/scroll-area.tsx +38 -48
  299. package/src/ui/select.tsx +129 -157
  300. package/src/ui/separator.tsx +2 -2
  301. package/src/ui/sheet.tsx +110 -107
  302. package/src/ui/sidebar.tsx +442 -408
  303. package/src/ui/skeleton.tsx +6 -11
  304. package/src/ui/slider.tsx +19 -54
  305. package/src/ui/sonner.tsx +19 -1
  306. package/src/ui/switch.tsx +19 -21
  307. package/src/ui/tabs.tsx +6 -37
  308. package/src/ui/textarea.tsx +8 -4
  309. package/src/ui/toast.tsx +137 -0
  310. package/src/ui/toggle-group.tsx +28 -37
  311. package/src/ui/toggle.tsx +19 -19
  312. package/src/ui/tooltip.tsx +21 -52
  313. package/src/ui/typography.tsx +85 -0
  314. package/tsconfig.json +1 -1
  315. package/vite.config.ts +9 -1
  316. package/vitest.config.ts +5 -0
  317. package/ISSUES_FOUND.md +0 -128
  318. /package/dist/src/{ui → custom}/combobox.d.ts +0 -0
  319. /package/dist/src/{ui → custom}/date-picker.d.ts +0 -0
  320. /package/dist/src/{ui → custom}/empty.d.ts +0 -0
  321. /package/dist/src/{ui → custom}/filter-builder.d.ts +0 -0
  322. /package/dist/src/{ui → custom}/kbd.d.ts +0 -0
  323. /package/dist/src/{ui → custom}/spinner.d.ts +0 -0
  324. /package/src/{ui → custom}/empty.tsx +0 -0
  325. /package/src/{ui → custom}/kbd.tsx +0 -0
  326. /package/src/{ui → custom}/spinner.tsx +0 -0
@@ -13,235 +13,240 @@
13
13
  "components": "@/ui",
14
14
  "utils": "@/lib/utils"
15
15
  },
16
- "registry": "https://ui.shadcn.com/registry",
16
+ "registry": "https://ui.shadcn.com",
17
17
  "components": {
18
18
  "accordion": {
19
- "source": "https://ui.shadcn.com/registry/styles/default/accordion.json",
19
+ "source": "https://ui.shadcn.com/r/styles/default/accordion.json",
20
20
  "dependencies": ["@radix-ui/react-accordion"],
21
21
  "registryDependencies": []
22
22
  },
23
23
  "alert": {
24
- "source": "https://ui.shadcn.com/registry/styles/default/alert.json",
24
+ "source": "https://ui.shadcn.com/r/styles/default/alert.json",
25
25
  "dependencies": [],
26
26
  "registryDependencies": []
27
27
  },
28
28
  "alert-dialog": {
29
- "source": "https://ui.shadcn.com/registry/styles/default/alert-dialog.json",
29
+ "source": "https://ui.shadcn.com/r/styles/default/alert-dialog.json",
30
30
  "dependencies": ["@radix-ui/react-alert-dialog"],
31
31
  "registryDependencies": ["button"]
32
32
  },
33
33
  "aspect-ratio": {
34
- "source": "https://ui.shadcn.com/registry/styles/default/aspect-ratio.json",
34
+ "source": "https://ui.shadcn.com/r/styles/default/aspect-ratio.json",
35
35
  "dependencies": ["@radix-ui/react-aspect-ratio"],
36
36
  "registryDependencies": []
37
37
  },
38
38
  "avatar": {
39
- "source": "https://ui.shadcn.com/registry/styles/default/avatar.json",
39
+ "source": "https://ui.shadcn.com/r/styles/default/avatar.json",
40
40
  "dependencies": ["@radix-ui/react-avatar"],
41
41
  "registryDependencies": []
42
42
  },
43
43
  "badge": {
44
- "source": "https://ui.shadcn.com/registry/styles/default/badge.json",
44
+ "source": "https://ui.shadcn.com/r/styles/default/badge.json",
45
45
  "dependencies": [],
46
46
  "registryDependencies": []
47
47
  },
48
48
  "breadcrumb": {
49
- "source": "https://ui.shadcn.com/registry/styles/default/breadcrumb.json",
49
+ "source": "https://ui.shadcn.com/r/styles/default/breadcrumb.json",
50
50
  "dependencies": [],
51
51
  "registryDependencies": []
52
52
  },
53
53
  "button": {
54
- "source": "https://ui.shadcn.com/registry/styles/default/button.json",
54
+ "source": "https://ui.shadcn.com/r/styles/default/button.json",
55
55
  "dependencies": ["@radix-ui/react-slot"],
56
56
  "registryDependencies": []
57
57
  },
58
58
  "calendar": {
59
- "source": "https://ui.shadcn.com/registry/styles/default/calendar.json",
59
+ "source": "https://ui.shadcn.com/r/styles/default/calendar.json",
60
60
  "dependencies": ["react-day-picker", "date-fns"],
61
61
  "registryDependencies": ["button"]
62
62
  },
63
63
  "card": {
64
- "source": "https://ui.shadcn.com/registry/styles/default/card.json",
64
+ "source": "https://ui.shadcn.com/r/styles/default/card.json",
65
65
  "dependencies": [],
66
66
  "registryDependencies": []
67
67
  },
68
68
  "carousel": {
69
- "source": "https://ui.shadcn.com/registry/styles/default/carousel.json",
69
+ "source": "https://ui.shadcn.com/r/styles/default/carousel.json",
70
70
  "dependencies": ["embla-carousel-react"],
71
71
  "registryDependencies": ["button"]
72
72
  },
73
+ "chart": {
74
+ "source": "https://ui.shadcn.com/r/styles/default/chart.json",
75
+ "dependencies": ["recharts", "lucide-react"],
76
+ "registryDependencies": []
77
+ },
73
78
  "checkbox": {
74
- "source": "https://ui.shadcn.com/registry/styles/default/checkbox.json",
79
+ "source": "https://ui.shadcn.com/r/styles/default/checkbox.json",
75
80
  "dependencies": ["@radix-ui/react-checkbox"],
76
81
  "registryDependencies": []
77
82
  },
78
83
  "collapsible": {
79
- "source": "https://ui.shadcn.com/registry/styles/default/collapsible.json",
84
+ "source": "https://ui.shadcn.com/r/styles/default/collapsible.json",
80
85
  "dependencies": ["@radix-ui/react-collapsible"],
81
86
  "registryDependencies": []
82
87
  },
83
88
  "command": {
84
- "source": "https://ui.shadcn.com/registry/styles/default/command.json",
89
+ "source": "https://ui.shadcn.com/r/styles/default/command.json",
85
90
  "dependencies": ["cmdk"],
86
91
  "registryDependencies": ["dialog"]
87
92
  },
88
93
  "context-menu": {
89
- "source": "https://ui.shadcn.com/registry/styles/default/context-menu.json",
94
+ "source": "https://ui.shadcn.com/r/styles/default/context-menu.json",
90
95
  "dependencies": ["@radix-ui/react-context-menu"],
91
96
  "registryDependencies": []
92
97
  },
93
98
  "dialog": {
94
- "source": "https://ui.shadcn.com/registry/styles/default/dialog.json",
99
+ "source": "https://ui.shadcn.com/r/styles/default/dialog.json",
95
100
  "dependencies": ["@radix-ui/react-dialog"],
96
101
  "registryDependencies": []
97
102
  },
98
103
  "drawer": {
99
- "source": "https://ui.shadcn.com/registry/styles/default/drawer.json",
104
+ "source": "https://ui.shadcn.com/r/styles/default/drawer.json",
100
105
  "dependencies": ["vaul"],
101
106
  "registryDependencies": []
102
107
  },
103
108
  "dropdown-menu": {
104
- "source": "https://ui.shadcn.com/registry/styles/default/dropdown-menu.json",
109
+ "source": "https://ui.shadcn.com/r/styles/default/dropdown-menu.json",
105
110
  "dependencies": ["@radix-ui/react-dropdown-menu"],
106
111
  "registryDependencies": []
107
112
  },
108
113
  "form": {
109
- "source": "https://ui.shadcn.com/registry/styles/default/form.json",
114
+ "source": "https://ui.shadcn.com/r/styles/default/form.json",
110
115
  "dependencies": ["@radix-ui/react-label", "react-hook-form", "@hookform/resolvers"],
111
116
  "registryDependencies": ["button", "label"]
112
117
  },
113
118
  "hover-card": {
114
- "source": "https://ui.shadcn.com/registry/styles/default/hover-card.json",
119
+ "source": "https://ui.shadcn.com/r/styles/default/hover-card.json",
115
120
  "dependencies": ["@radix-ui/react-hover-card"],
116
121
  "registryDependencies": []
117
122
  },
118
123
  "input": {
119
- "source": "https://ui.shadcn.com/registry/styles/default/input.json",
124
+ "source": "https://ui.shadcn.com/r/styles/default/input.json",
120
125
  "dependencies": [],
121
126
  "registryDependencies": []
122
127
  },
123
128
  "input-otp": {
124
- "source": "https://ui.shadcn.com/registry/styles/default/input-otp.json",
129
+ "source": "https://ui.shadcn.com/r/styles/default/input-otp.json",
125
130
  "dependencies": ["input-otp"],
126
131
  "registryDependencies": []
127
132
  },
128
133
  "label": {
129
- "source": "https://ui.shadcn.com/registry/styles/default/label.json",
134
+ "source": "https://ui.shadcn.com/r/styles/default/label.json",
130
135
  "dependencies": ["@radix-ui/react-label"],
131
136
  "registryDependencies": []
132
137
  },
133
138
  "menubar": {
134
- "source": "https://ui.shadcn.com/registry/styles/default/menubar.json",
139
+ "source": "https://ui.shadcn.com/r/styles/default/menubar.json",
135
140
  "dependencies": ["@radix-ui/react-menubar"],
136
141
  "registryDependencies": []
137
142
  },
138
143
  "navigation-menu": {
139
- "source": "https://ui.shadcn.com/registry/styles/default/navigation-menu.json",
144
+ "source": "https://ui.shadcn.com/r/styles/default/navigation-menu.json",
140
145
  "dependencies": ["@radix-ui/react-navigation-menu"],
141
146
  "registryDependencies": []
142
147
  },
143
148
  "pagination": {
144
- "source": "https://ui.shadcn.com/registry/styles/default/pagination.json",
149
+ "source": "https://ui.shadcn.com/r/styles/default/pagination.json",
145
150
  "dependencies": [],
146
151
  "registryDependencies": ["button"]
147
152
  },
148
153
  "popover": {
149
- "source": "https://ui.shadcn.com/registry/styles/default/popover.json",
154
+ "source": "https://ui.shadcn.com/r/styles/default/popover.json",
150
155
  "dependencies": ["@radix-ui/react-popover"],
151
156
  "registryDependencies": []
152
157
  },
153
158
  "progress": {
154
- "source": "https://ui.shadcn.com/registry/styles/default/progress.json",
159
+ "source": "https://ui.shadcn.com/r/styles/default/progress.json",
155
160
  "dependencies": ["@radix-ui/react-progress"],
156
161
  "registryDependencies": []
157
162
  },
158
163
  "radio-group": {
159
- "source": "https://ui.shadcn.com/registry/styles/default/radio-group.json",
164
+ "source": "https://ui.shadcn.com/r/styles/default/radio-group.json",
160
165
  "dependencies": ["@radix-ui/react-radio-group"],
161
166
  "registryDependencies": []
162
167
  },
163
168
  "resizable": {
164
- "source": "https://ui.shadcn.com/registry/styles/default/resizable.json",
169
+ "source": "https://ui.shadcn.com/r/styles/default/resizable.json",
165
170
  "dependencies": ["react-resizable-panels"],
166
171
  "registryDependencies": []
167
172
  },
168
173
  "scroll-area": {
169
- "source": "https://ui.shadcn.com/registry/styles/default/scroll-area.json",
174
+ "source": "https://ui.shadcn.com/r/styles/default/scroll-area.json",
170
175
  "dependencies": ["@radix-ui/react-scroll-area"],
171
176
  "registryDependencies": []
172
177
  },
173
178
  "select": {
174
- "source": "https://ui.shadcn.com/registry/styles/default/select.json",
179
+ "source": "https://ui.shadcn.com/r/styles/default/select.json",
175
180
  "dependencies": ["@radix-ui/react-select"],
176
181
  "registryDependencies": []
177
182
  },
178
183
  "separator": {
179
- "source": "https://ui.shadcn.com/registry/styles/default/separator.json",
184
+ "source": "https://ui.shadcn.com/r/styles/default/separator.json",
180
185
  "dependencies": ["@radix-ui/react-separator"],
181
186
  "registryDependencies": []
182
187
  },
183
188
  "sheet": {
184
- "source": "https://ui.shadcn.com/registry/styles/default/sheet.json",
189
+ "source": "https://ui.shadcn.com/r/styles/default/sheet.json",
185
190
  "dependencies": ["@radix-ui/react-dialog"],
186
191
  "registryDependencies": []
187
192
  },
188
193
  "sidebar": {
189
- "source": "https://ui.shadcn.com/registry/styles/default/sidebar.json",
194
+ "source": "https://ui.shadcn.com/r/styles/default/sidebar.json",
190
195
  "dependencies": ["@radix-ui/react-separator", "@radix-ui/react-slot"],
191
196
  "registryDependencies": ["button", "separator", "sheet", "skeleton", "tooltip"]
192
197
  },
193
198
  "skeleton": {
194
- "source": "https://ui.shadcn.com/registry/styles/default/skeleton.json",
199
+ "source": "https://ui.shadcn.com/r/styles/default/skeleton.json",
195
200
  "dependencies": [],
196
201
  "registryDependencies": []
197
202
  },
198
203
  "slider": {
199
- "source": "https://ui.shadcn.com/registry/styles/default/slider.json",
204
+ "source": "https://ui.shadcn.com/r/styles/default/slider.json",
200
205
  "dependencies": ["@radix-ui/react-slider"],
201
206
  "registryDependencies": []
202
207
  },
203
208
  "sonner": {
204
- "source": "https://ui.shadcn.com/registry/styles/default/sonner.json",
209
+ "source": "https://ui.shadcn.com/r/styles/default/sonner.json",
205
210
  "dependencies": ["sonner", "next-themes"],
206
211
  "registryDependencies": []
207
212
  },
208
213
  "switch": {
209
- "source": "https://ui.shadcn.com/registry/styles/default/switch.json",
214
+ "source": "https://ui.shadcn.com/r/styles/default/switch.json",
210
215
  "dependencies": ["@radix-ui/react-switch"],
211
216
  "registryDependencies": []
212
217
  },
213
218
  "table": {
214
- "source": "https://ui.shadcn.com/registry/styles/default/table.json",
219
+ "source": "https://ui.shadcn.com/r/styles/default/table.json",
215
220
  "dependencies": [],
216
221
  "registryDependencies": []
217
222
  },
218
223
  "tabs": {
219
- "source": "https://ui.shadcn.com/registry/styles/default/tabs.json",
224
+ "source": "https://ui.shadcn.com/r/styles/default/tabs.json",
220
225
  "dependencies": ["@radix-ui/react-tabs"],
221
226
  "registryDependencies": []
222
227
  },
223
228
  "textarea": {
224
- "source": "https://ui.shadcn.com/registry/styles/default/textarea.json",
229
+ "source": "https://ui.shadcn.com/r/styles/default/textarea.json",
225
230
  "dependencies": [],
226
231
  "registryDependencies": []
227
232
  },
228
233
  "toast": {
229
- "source": "https://ui.shadcn.com/registry/styles/default/toast.json",
234
+ "source": "https://ui.shadcn.com/r/styles/default/toast.json",
230
235
  "dependencies": ["@radix-ui/react-toast"],
231
236
  "registryDependencies": []
232
237
  },
233
238
  "toggle": {
234
- "source": "https://ui.shadcn.com/registry/styles/default/toggle.json",
239
+ "source": "https://ui.shadcn.com/r/styles/default/toggle.json",
235
240
  "dependencies": ["@radix-ui/react-toggle"],
236
241
  "registryDependencies": []
237
242
  },
238
243
  "toggle-group": {
239
- "source": "https://ui.shadcn.com/registry/styles/default/toggle-group.json",
244
+ "source": "https://ui.shadcn.com/r/styles/default/toggle-group.json",
240
245
  "dependencies": ["@radix-ui/react-toggle-group"],
241
246
  "registryDependencies": []
242
247
  },
243
248
  "tooltip": {
244
- "source": "https://ui.shadcn.com/registry/styles/default/tooltip.json",
249
+ "source": "https://ui.shadcn.com/r/styles/default/tooltip.json",
245
250
  "dependencies": ["@radix-ui/react-tooltip"],
246
251
  "registryDependencies": []
247
252
  }
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { ComponentRegistry } from '@object-ui/core';
3
+
4
+ export const SchemaRenderer = ({ schema }: { schema: any }) => {
5
+ if (!schema) return null;
6
+ if (Array.isArray(schema)) {
7
+ return <>{schema.map((s, i) => <SchemaRenderer key={s.id || i} schema={s} />)}</>;
8
+ }
9
+
10
+ const { type, hidden } = schema;
11
+ if (hidden) return null; // Simple hidden check
12
+
13
+ if (!type) {
14
+ if (typeof schema === 'string') return <>{schema}</>;
15
+ return null;
16
+ }
17
+
18
+ const Component = ComponentRegistry.get(type);
19
+
20
+ if (!Component) {
21
+ console.warn(`Renderer not found for type: ${type}`);
22
+ return <div className="p-2 text-xs text-red-500 border border-red-200 bg-red-50 rounded">Unknown: {type}</div>;
23
+ }
24
+
25
+ // This is dynamic component resolution from registry, not component creation during render
26
+ // eslint-disable-next-line
27
+ return <Component schema={schema} {...schema} />;
28
+ };