@lattice-php/lattice 0.2.0 → 0.3.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 (476) hide show
  1. package/README.md +3 -1
  2. package/dist/action/components/action-form.d.ts +2 -2
  3. package/dist/action/components/action-form.js +35 -67
  4. package/dist/action/components/action-form.js.map +1 -1
  5. package/dist/action/components/action-group.js +18 -6
  6. package/dist/action/components/action-group.js.map +1 -1
  7. package/dist/action/components/action-menu-context.d.ts +6 -0
  8. package/dist/action/components/action-menu-context.js +18 -0
  9. package/dist/action/components/action-menu-context.js.map +1 -0
  10. package/dist/action/components/action.js +20 -13
  11. package/dist/action/components/action.js.map +1 -1
  12. package/dist/action/index.js.map +1 -1
  13. package/dist/appearance/index.js +7 -2
  14. package/dist/appearance/index.js.map +1 -1
  15. package/dist/chat/components/chat-box.d.ts +3 -0
  16. package/dist/chat/components/chat-box.js +53 -0
  17. package/dist/chat/components/chat-box.js.map +1 -0
  18. package/dist/chat/components/message-list.d.ts +5 -0
  19. package/dist/chat/components/message-list.js +22 -0
  20. package/dist/chat/components/message-list.js.map +1 -0
  21. package/dist/chat/components/message.d.ts +5 -0
  22. package/dist/chat/components/message.js +20 -0
  23. package/dist/chat/components/message.js.map +1 -0
  24. package/dist/chat/components/prompt-input.d.ts +8 -0
  25. package/dist/chat/components/prompt-input.js +49 -0
  26. package/dist/chat/components/prompt-input.js.map +1 -0
  27. package/dist/chat/index.d.ts +1 -0
  28. package/dist/chat/index.js +15 -0
  29. package/dist/chat/index.js.map +1 -0
  30. package/dist/chat/parts/text.d.ts +3 -0
  31. package/dist/chat/parts/text.js +12 -0
  32. package/dist/chat/parts/text.js.map +1 -0
  33. package/dist/chat/parts/tool-call.d.ts +3 -0
  34. package/dist/chat/parts/tool-call.js +20 -0
  35. package/dist/chat/parts/tool-call.js.map +1 -0
  36. package/dist/chat/transport.d.ts +2 -0
  37. package/dist/chat/transport.js +47 -0
  38. package/dist/chat/transport.js.map +1 -0
  39. package/dist/chat/types.d.ts +39 -0
  40. package/dist/chat/use-chat.d.ts +15 -0
  41. package/dist/chat/use-chat.js +161 -0
  42. package/dist/chat/use-chat.js.map +1 -0
  43. package/dist/core/api.d.ts +18 -0
  44. package/dist/core/api.js +51 -0
  45. package/dist/core/api.js.map +1 -0
  46. package/dist/core/collapsed-context.d.ts +2 -0
  47. package/dist/core/collapsed-context.js +10 -0
  48. package/dist/core/collapsed-context.js.map +1 -0
  49. package/dist/core/column-sizing.d.ts +17 -0
  50. package/dist/core/column-sizing.js +61 -0
  51. package/dist/core/column-sizing.js.map +1 -0
  52. package/dist/core/components/badge.js.map +1 -1
  53. package/dist/core/components/button.d.ts +1 -1
  54. package/dist/core/components/button.js +4 -0
  55. package/dist/core/components/button.js.map +1 -1
  56. package/dist/core/components/card.js.map +1 -1
  57. package/dist/core/components/chart.d.ts +3 -0
  58. package/dist/core/components/chart.js +175 -0
  59. package/dist/core/components/chart.js.map +1 -0
  60. package/dist/{form/components/base → core/components}/checkbox.js +3 -3
  61. package/dist/{form/components/base → core/components}/checkbox.js.map +1 -1
  62. package/dist/core/components/combobox.d.ts +33 -0
  63. package/dist/core/components/combobox.js +99 -0
  64. package/dist/core/components/combobox.js.map +1 -0
  65. package/dist/core/components/confirm-dialog.js +6 -12
  66. package/dist/core/components/confirm-dialog.js.map +1 -1
  67. package/dist/core/components/control.d.ts +13 -0
  68. package/dist/core/components/control.js +27 -0
  69. package/dist/core/components/control.js.map +1 -0
  70. package/dist/core/components/dialog.d.ts +19 -0
  71. package/dist/core/components/dialog.js +75 -0
  72. package/dist/core/components/dialog.js.map +1 -0
  73. package/dist/core/components/dropdown-menu.d.ts +14 -0
  74. package/dist/core/components/dropdown-menu.js +42 -0
  75. package/dist/core/components/dropdown-menu.js.map +1 -0
  76. package/dist/core/components/floating-panel.d.ts +3 -0
  77. package/dist/core/components/floating-panel.js +65 -0
  78. package/dist/core/components/floating-panel.js.map +1 -0
  79. package/dist/core/components/fragment.js +25 -13
  80. package/dist/core/components/fragment.js.map +1 -1
  81. package/dist/core/components/grid.js.map +1 -1
  82. package/dist/core/components/heading.js.map +1 -1
  83. package/dist/core/components/icon.js +1 -0
  84. package/dist/core/components/icon.js.map +1 -1
  85. package/dist/core/components/index.js +8 -1
  86. package/dist/core/components/index.js.map +1 -1
  87. package/dist/core/components/info-tooltip.d.ts +3 -0
  88. package/dist/core/components/info-tooltip.js +26 -0
  89. package/dist/core/components/info-tooltip.js.map +1 -0
  90. package/dist/core/components/link.js +12 -6
  91. package/dist/core/components/link.js.map +1 -1
  92. package/dist/core/components/modal.js +9 -31
  93. package/dist/core/components/modal.js.map +1 -1
  94. package/dist/core/components/popover.d.ts +8 -0
  95. package/dist/core/components/popover.js +37 -0
  96. package/dist/core/components/popover.js.map +1 -0
  97. package/dist/core/components/raw-block.d.ts +3 -0
  98. package/dist/core/components/raw-block.js +10 -0
  99. package/dist/core/components/raw-block.js.map +1 -0
  100. package/dist/core/components/section.js +6 -10
  101. package/dist/core/components/section.js.map +1 -1
  102. package/dist/core/components/segmented-control.js.map +1 -1
  103. package/dist/core/components/segmented-pills.js.map +1 -1
  104. package/dist/core/components/skeleton.d.ts +3 -0
  105. package/dist/core/components/skeleton.js +16 -0
  106. package/dist/core/components/skeleton.js.map +1 -0
  107. package/dist/core/components/spinner.js.map +1 -1
  108. package/dist/core/components/stack.js +19 -8
  109. package/dist/core/components/stack.js.map +1 -1
  110. package/dist/core/components/tabs.js.map +1 -1
  111. package/dist/core/components/text.js +17 -1
  112. package/dist/core/components/text.js.map +1 -1
  113. package/dist/core/headers.d.ts +1 -0
  114. package/dist/core/headers.js +14 -0
  115. package/dist/core/headers.js.map +1 -0
  116. package/dist/core/registry-context.d.ts +21 -0
  117. package/dist/core/registry-context.js +40 -0
  118. package/dist/core/registry-context.js.map +1 -0
  119. package/dist/core/registry.d.ts +4 -1
  120. package/dist/core/registry.js +10 -1
  121. package/dist/core/registry.js.map +1 -1
  122. package/dist/core/renderer.d.ts +8 -14
  123. package/dist/core/renderer.js +17 -27
  124. package/dist/core/renderer.js.map +1 -1
  125. package/dist/core/test-id.d.ts +8 -0
  126. package/dist/core/test-id.js +21 -0
  127. package/dist/core/test-id.js.map +1 -0
  128. package/dist/core/types.d.ts +22 -8
  129. package/dist/core/use-column-resizing.d.ts +27 -0
  130. package/dist/core/use-column-resizing.js +228 -0
  131. package/dist/core/use-column-resizing.js.map +1 -0
  132. package/dist/effects/dispatch.d.ts +20 -0
  133. package/dist/effects/dispatch.js +39 -0
  134. package/dist/effects/dispatch.js.map +1 -0
  135. package/dist/effects/registry.d.ts +38 -0
  136. package/dist/effects/registry.js +51 -0
  137. package/dist/effects/registry.js.map +1 -0
  138. package/dist/effects/use-effect-dispatcher.d.ts +8 -0
  139. package/dist/effects/use-effect-dispatcher.js +20 -0
  140. package/dist/effects/use-effect-dispatcher.js.map +1 -0
  141. package/dist/effects/use-flash-effects.d.ts +5 -0
  142. package/dist/effects/use-flash-effects.js +22 -0
  143. package/dist/effects/use-flash-effects.js.map +1 -0
  144. package/dist/events/event-bridge.d.ts +3 -7
  145. package/dist/events/event-bridge.js +17 -47
  146. package/dist/events/event-bridge.js.map +1 -1
  147. package/dist/events/event-names.d.ts +3 -1
  148. package/dist/events/event-names.js +3 -1
  149. package/dist/events/event-names.js.map +1 -1
  150. package/dist/form/components/base/field.d.ts +2 -1
  151. package/dist/form/components/base/field.js +17 -2
  152. package/dist/form/components/base/field.js.map +1 -1
  153. package/dist/form/components/base/input-error.js +1 -1
  154. package/dist/form/components/base/input-error.js.map +1 -1
  155. package/dist/form/components/base/input.js +2 -1
  156. package/dist/form/components/base/input.js.map +1 -1
  157. package/dist/form/components/base/label.js.map +1 -1
  158. package/dist/form/components/base/password-input.js.map +1 -1
  159. package/dist/form/components/base/submit-button.js +3 -1
  160. package/dist/form/components/base/submit-button.js.map +1 -1
  161. package/dist/form/components/base/textarea.js +2 -1
  162. package/dist/form/components/base/textarea.js.map +1 -1
  163. package/dist/form/components/conditions.js.map +1 -1
  164. package/dist/form/components/context.d.ts +1 -0
  165. package/dist/form/components/context.js +1 -0
  166. package/dist/form/components/context.js.map +1 -1
  167. package/dist/form/components/field-props.d.ts +4 -0
  168. package/dist/form/components/field-props.js.map +1 -1
  169. package/dist/form/components/field-scope.d.ts +21 -0
  170. package/dist/form/components/field-scope.js +54 -0
  171. package/dist/form/components/field-scope.js.map +1 -0
  172. package/dist/form/components/fields/block-add-menu.d.ts +9 -0
  173. package/dist/form/components/fields/block-add-menu.js +27 -0
  174. package/dist/form/components/fields/block-add-menu.js.map +1 -0
  175. package/dist/form/components/fields/builder.d.ts +2 -0
  176. package/dist/form/components/fields/builder.js +124 -0
  177. package/dist/form/components/fields/builder.js.map +1 -0
  178. package/dist/form/components/fields/checkbox.d.ts +1 -1
  179. package/dist/form/components/fields/checkbox.js +14 -11
  180. package/dist/form/components/fields/checkbox.js.map +1 -1
  181. package/dist/form/components/fields/choice.d.ts +1 -1
  182. package/dist/form/components/fields/choice.js +5 -4
  183. package/dist/form/components/fields/choice.js.map +1 -1
  184. package/dist/form/components/fields/date-input.d.ts +1 -1
  185. package/dist/form/components/fields/date-input.js +2 -1
  186. package/dist/form/components/fields/date-input.js.map +1 -1
  187. package/dist/form/components/fields/file-upload.d.ts +2 -0
  188. package/dist/form/components/fields/file-upload.js +250 -0
  189. package/dist/form/components/fields/file-upload.js.map +1 -0
  190. package/dist/form/components/fields/hidden-input.d.ts +1 -1
  191. package/dist/form/components/fields/hidden-input.js +11 -5
  192. package/dist/form/components/fields/hidden-input.js.map +1 -1
  193. package/dist/form/components/fields/number-input.d.ts +1 -1
  194. package/dist/form/components/fields/number-input.js +3 -1
  195. package/dist/form/components/fields/number-input.js.map +1 -1
  196. package/dist/form/components/fields/password-input.d.ts +1 -1
  197. package/dist/form/components/fields/password-input.js +31 -22
  198. package/dist/form/components/fields/password-input.js.map +1 -1
  199. package/dist/form/components/fields/repeater-rows.d.ts +12 -0
  200. package/dist/form/components/fields/repeater-rows.js +46 -0
  201. package/dist/form/components/fields/repeater-rows.js.map +1 -0
  202. package/dist/form/components/fields/repeater.d.ts +2 -0
  203. package/dist/form/components/fields/repeater.js +97 -0
  204. package/dist/form/components/fields/repeater.js.map +1 -0
  205. package/dist/form/components/fields/rich-editor.d.ts +1 -1
  206. package/dist/form/components/fields/rich-editor.js +37 -9
  207. package/dist/form/components/fields/rich-editor.js.map +1 -1
  208. package/dist/form/components/fields/row-action-menu.d.ts +17 -0
  209. package/dist/form/components/fields/row-action-menu.js +61 -0
  210. package/dist/form/components/fields/row-action-menu.js.map +1 -0
  211. package/dist/form/components/fields/row-actions.d.ts +10 -0
  212. package/dist/form/components/fields/row-actions.js +45 -0
  213. package/dist/form/components/fields/row-actions.js.map +1 -0
  214. package/dist/form/components/fields/row-item.d.ts +27 -0
  215. package/dist/form/components/fields/row-item.js +69 -0
  216. package/dist/form/components/fields/row-item.js.map +1 -0
  217. package/dist/form/components/fields/select.d.ts +1 -1
  218. package/dist/form/components/fields/select.js +69 -104
  219. package/dist/form/components/fields/select.js.map +1 -1
  220. package/dist/form/components/fields/simple-field.js +1 -0
  221. package/dist/form/components/fields/simple-field.js.map +1 -1
  222. package/dist/form/components/fields/table-rows.d.ts +32 -0
  223. package/dist/form/components/fields/table-rows.js +188 -0
  224. package/dist/form/components/fields/table-rows.js.map +1 -0
  225. package/dist/form/components/fields/text-input.d.ts +1 -1
  226. package/dist/form/components/fields/text-input.js +2 -1
  227. package/dist/form/components/fields/text-input.js.map +1 -1
  228. package/dist/form/components/fields/textarea.d.ts +1 -1
  229. package/dist/form/components/fields/textarea.js +2 -1
  230. package/dist/form/components/fields/textarea.js.map +1 -1
  231. package/dist/form/components/fields/use-flip-reorder.d.ts +6 -0
  232. package/dist/form/components/fields/use-flip-reorder.js +51 -0
  233. package/dist/form/components/fields/use-flip-reorder.js.map +1 -0
  234. package/dist/form/components/fields/use-row-collection.d.ts +11 -0
  235. package/dist/form/components/fields/use-row-collection.js +44 -0
  236. package/dist/form/components/fields/use-row-collection.js.map +1 -0
  237. package/dist/form/components/form-path.d.ts +5 -0
  238. package/dist/form/components/form-path.js +40 -0
  239. package/dist/form/components/form-path.js.map +1 -0
  240. package/dist/form/components/form-transport.d.ts +3 -4
  241. package/dist/form/components/form-transport.js +17 -18
  242. package/dist/form/components/form-transport.js.map +1 -1
  243. package/dist/form/components/form.js +24 -18
  244. package/dist/form/components/form.js.map +1 -1
  245. package/dist/form/components/index.d.ts +3 -0
  246. package/dist/form/components/index.js +4 -1
  247. package/dist/form/components/override-keys.d.ts +2 -0
  248. package/dist/form/components/override-keys.js +12 -0
  249. package/dist/form/components/override-keys.js.map +1 -0
  250. package/dist/form/components/prefill-context.d.ts +5 -0
  251. package/dist/form/components/prefill-context.js +11 -0
  252. package/dist/form/components/prefill-context.js.map +1 -0
  253. package/dist/form/components/prefill-targets.d.ts +17 -0
  254. package/dist/form/components/prefill-targets.js +73 -0
  255. package/dist/form/components/prefill-targets.js.map +1 -0
  256. package/dist/form/components/resolved-nodes.js +4 -1
  257. package/dist/form/components/resolved-nodes.js.map +1 -1
  258. package/dist/form/components/row-layout-context.d.ts +5 -0
  259. package/dist/form/components/row-layout-context.js +18 -0
  260. package/dist/form/components/row-layout-context.js.map +1 -0
  261. package/dist/form/components/use-controlled-field.d.ts +2 -0
  262. package/dist/form/components/use-controlled-field.js +13 -5
  263. package/dist/form/components/use-controlled-field.js.map +1 -1
  264. package/dist/form/components/use-dependent-field.js +7 -1
  265. package/dist/form/components/use-dependent-field.js.map +1 -1
  266. package/dist/form/components/use-field-commit.d.ts +4 -0
  267. package/dist/form/components/use-field-commit.js +21 -7
  268. package/dist/form/components/use-field-commit.js.map +1 -1
  269. package/dist/form/components/use-form-resolver.d.ts +6 -1
  270. package/dist/form/components/use-form-resolver.js +50 -5
  271. package/dist/form/components/use-form-resolver.js.map +1 -1
  272. package/dist/form/components/use-seed-default.js +8 -3
  273. package/dist/form/components/use-seed-default.js.map +1 -1
  274. package/dist/form/components/values.js +20 -5
  275. package/dist/form/components/values.js.map +1 -1
  276. package/dist/form/index.js +13 -10
  277. package/dist/form/index.js.map +1 -1
  278. package/dist/form/skeleton.js +5 -4
  279. package/dist/form/skeleton.js.map +1 -1
  280. package/dist/i18n/backend.d.ts +7 -5
  281. package/dist/i18n/backend.js +23 -8
  282. package/dist/i18n/backend.js.map +1 -1
  283. package/dist/i18n/config.d.ts +6 -0
  284. package/dist/i18n/config.js +36 -0
  285. package/dist/i18n/config.js.map +1 -0
  286. package/dist/i18n/index.d.ts +7 -1
  287. package/dist/i18n/index.js +5 -1
  288. package/dist/i18n/instance.d.ts +27 -0
  289. package/dist/i18n/instance.js +63 -16
  290. package/dist/i18n/instance.js.map +1 -1
  291. package/dist/i18n/locale-reload.d.ts +3 -0
  292. package/dist/i18n/locale-reload.js +17 -0
  293. package/dist/i18n/locale-reload.js.map +1 -0
  294. package/dist/i18n/locale-switcher.d.ts +21 -0
  295. package/dist/i18n/locale-switcher.js +25 -0
  296. package/dist/i18n/locale-switcher.js.map +1 -0
  297. package/dist/i18n/locale.d.ts +9 -0
  298. package/dist/i18n/locale.js +93 -0
  299. package/dist/i18n/locale.js.map +1 -0
  300. package/dist/i18n/page-props.d.ts +3 -0
  301. package/dist/i18n/page-props.js +24 -0
  302. package/dist/i18n/page-props.js.map +1 -0
  303. package/dist/index.d.ts +18 -8
  304. package/dist/index.js +18 -7
  305. package/dist/inertia.d.ts +2 -1
  306. package/dist/inertia.js +9 -2
  307. package/dist/inertia.js.map +1 -1
  308. package/dist/lattice.css +49 -16
  309. package/dist/layout/breadcrumbs.d.ts +3 -0
  310. package/dist/layout/breadcrumbs.js +34 -0
  311. package/dist/layout/breadcrumbs.js.map +1 -0
  312. package/dist/layout/callouts.d.ts +3 -0
  313. package/dist/layout/callouts.js +67 -0
  314. package/dist/layout/callouts.js.map +1 -0
  315. package/dist/layout/components.js +6 -0
  316. package/dist/layout/components.js.map +1 -1
  317. package/dist/layout/context.d.ts +2 -10
  318. package/dist/layout/context.js +3 -14
  319. package/dist/layout/context.js.map +1 -1
  320. package/dist/layout/dropdown.d.ts +3 -0
  321. package/dist/layout/dropdown.js +23 -0
  322. package/dist/layout/dropdown.js.map +1 -0
  323. package/dist/layout/index.d.ts +2 -1
  324. package/dist/layout/index.js +3 -1
  325. package/dist/layout/menu-item.js +30 -59
  326. package/dist/layout/menu-item.js.map +1 -1
  327. package/dist/layout/menu.js.map +1 -1
  328. package/dist/layout/outlet.js +2 -2
  329. package/dist/layout/outlet.js.map +1 -1
  330. package/dist/layout/popover.d.ts +17 -0
  331. package/dist/layout/popover.js +46 -0
  332. package/dist/layout/popover.js.map +1 -0
  333. package/dist/layout/schema-layout.js +2 -9
  334. package/dist/layout/schema-layout.js.map +1 -1
  335. package/dist/layout/sidebar.js +3 -3
  336. package/dist/layout/sidebar.js.map +1 -1
  337. package/dist/page.js +3 -9
  338. package/dist/page.js.map +1 -1
  339. package/dist/provider.d.ts +2 -4
  340. package/dist/provider.js +5 -9
  341. package/dist/provider.js.map +1 -1
  342. package/dist/registry.js +2 -1
  343. package/dist/registry.js.map +1 -1
  344. package/dist/svg-sprite-client/index.d.ts +1 -0
  345. package/dist/svg-sprite-client/index.js +0 -0
  346. package/dist/svg-sprite-client.d.ts +1 -0
  347. package/dist/table/align.d.ts +4 -0
  348. package/dist/table/align.js +23 -0
  349. package/dist/table/align.js.map +1 -0
  350. package/dist/table/bulk.js +1 -1
  351. package/dist/table/bulk.js.map +1 -1
  352. package/dist/table/components/bulk-bar.js +8 -5
  353. package/dist/table/components/bulk-bar.js.map +1 -1
  354. package/dist/table/components/cells/badge-cell.d.ts +2 -5
  355. package/dist/table/components/cells/badge-cell.js +3 -3
  356. package/dist/table/components/cells/badge-cell.js.map +1 -1
  357. package/dist/table/components/cells/boolean-cell.d.ts +3 -0
  358. package/dist/table/components/cells/boolean-cell.js +23 -0
  359. package/dist/table/components/cells/boolean-cell.js.map +1 -0
  360. package/dist/table/components/cells/icon-cell.d.ts +2 -5
  361. package/dist/table/components/cells/icon-cell.js +4 -5
  362. package/dist/table/components/cells/icon-cell.js.map +1 -1
  363. package/dist/table/components/cells/image-cell.d.ts +2 -5
  364. package/dist/table/components/cells/image-cell.js +4 -5
  365. package/dist/table/components/cells/image-cell.js.map +1 -1
  366. package/dist/table/components/cells/money-cell.d.ts +2 -0
  367. package/dist/table/components/cells/money-cell.js +28 -0
  368. package/dist/table/components/cells/money-cell.js.map +1 -0
  369. package/dist/table/components/cells/number-cell.d.ts +2 -0
  370. package/dist/table/components/cells/number-cell.js +25 -0
  371. package/dist/table/components/cells/number-cell.js.map +1 -0
  372. package/dist/table/components/cells/numeric.d.ts +2 -0
  373. package/dist/table/components/cells/numeric.js +10 -0
  374. package/dist/table/components/cells/numeric.js.map +1 -0
  375. package/dist/table/components/cells/stack-cell.d.ts +3 -0
  376. package/dist/table/components/cells/stack-cell.js +17 -0
  377. package/dist/table/components/cells/stack-cell.js.map +1 -0
  378. package/dist/table/components/cells/text-cell.d.ts +2 -6
  379. package/dist/table/components/cells/text-cell.js +5 -6
  380. package/dist/table/components/cells/text-cell.js.map +1 -1
  381. package/dist/table/components/column-filter-control.d.ts +3 -1
  382. package/dist/table/components/column-filter-control.js +73 -11
  383. package/dist/table/components/column-filter-control.js.map +1 -1
  384. package/dist/table/components/column-header.d.ts +3 -1
  385. package/dist/table/components/column-header.js +11 -8
  386. package/dist/table/components/column-header.js.map +1 -1
  387. package/dist/table/components/filter-bar.d.ts +15 -0
  388. package/dist/table/components/filter-bar.js +81 -0
  389. package/dist/table/components/filter-bar.js.map +1 -0
  390. package/dist/table/components/filter-controls.d.ts +18 -0
  391. package/dist/table/components/filter-controls.js +256 -0
  392. package/dist/table/components/filter-controls.js.map +1 -0
  393. package/dist/table/components/filter-stack-bar.js.map +1 -1
  394. package/dist/table/components/filter-value-input.d.ts +1 -0
  395. package/dist/table/components/filter-value-input.js +6 -5
  396. package/dist/table/components/filter-value-input.js.map +1 -1
  397. package/dist/table/components/pagination.js +1 -1
  398. package/dist/table/components/pagination.js.map +1 -1
  399. package/dist/table/components/sort-bar.js.map +1 -1
  400. package/dist/table/components/table-action-node.js.map +1 -1
  401. package/dist/table/components/table-cell.d.ts +1 -1
  402. package/dist/table/components/table-cell.js +18 -28
  403. package/dist/table/components/table-cell.js.map +1 -1
  404. package/dist/table/components/table.js +191 -152
  405. package/dist/table/components/table.js.map +1 -1
  406. package/dist/table/filter-values.d.ts +13 -0
  407. package/dist/table/filter-values.js +30 -0
  408. package/dist/table/filter-values.js.map +1 -0
  409. package/dist/table/format.js.map +1 -1
  410. package/dist/table/index.js.map +1 -1
  411. package/dist/table/payload.js +24 -3
  412. package/dist/table/payload.js.map +1 -1
  413. package/dist/table/query.d.ts +10 -1
  414. package/dist/table/query.js +60 -6
  415. package/dist/table/query.js.map +1 -1
  416. package/dist/table/registry.d.ts +19 -0
  417. package/dist/table/registry.js +14 -0
  418. package/dist/table/registry.js.map +1 -0
  419. package/dist/table/types.d.ts +9 -19
  420. package/dist/table/use-table.d.ts +7 -2
  421. package/dist/table/use-table.js +57 -7
  422. package/dist/table/use-table.js.map +1 -1
  423. package/dist/toast/callout.d.ts +6 -0
  424. package/dist/toast/callout.js +31 -0
  425. package/dist/toast/callout.js.map +1 -0
  426. package/dist/toast/index.d.ts +4 -0
  427. package/dist/toast/index.js +3 -1
  428. package/dist/toast/toast.d.ts +14 -0
  429. package/dist/toast/toast.js +51 -0
  430. package/dist/toast/toast.js.map +1 -0
  431. package/dist/toast/toaster.js +10 -74
  432. package/dist/toast/toaster.js.map +1 -1
  433. package/dist/toast/variant-styles.d.ts +6 -0
  434. package/dist/toast/variant-styles.js +37 -0
  435. package/dist/toast/variant-styles.js.map +1 -0
  436. package/dist/types/generated.d.ts +461 -101
  437. package/dist/types/vite-env.d.ts +1 -0
  438. package/dist/vite.d.ts +25 -0
  439. package/dist/vite.js +72 -0
  440. package/dist/vite.js.map +1 -0
  441. package/package.json +111 -13
  442. package/resources/icons/rotate-ccw.svg +16 -0
  443. package/dist/_virtual/_rolldown/runtime.js +0 -8
  444. package/dist/action/effects.d.ts +0 -11
  445. package/dist/action/effects.js +0 -44
  446. package/dist/action/effects.js.map +0 -1
  447. package/dist/node_modules/i18next/dist/esm/i18next.js +0 -1982
  448. package/dist/node_modules/i18next/dist/esm/i18next.js.map +0 -1
  449. package/dist/node_modules/i18next-http-backend/esm/index.js +0 -352
  450. package/dist/node_modules/i18next-http-backend/esm/index.js.map +0 -1
  451. package/dist/node_modules/react-i18next/dist/es/context.js +0 -23
  452. package/dist/node_modules/react-i18next/dist/es/context.js.map +0 -1
  453. package/dist/node_modules/react-i18next/dist/es/defaults.js +0 -29
  454. package/dist/node_modules/react-i18next/dist/es/defaults.js.map +0 -1
  455. package/dist/node_modules/react-i18next/dist/es/i18nInstance.js +0 -10
  456. package/dist/node_modules/react-i18next/dist/es/i18nInstance.js.map +0 -1
  457. package/dist/node_modules/react-i18next/dist/es/initReactI18next.js +0 -14
  458. package/dist/node_modules/react-i18next/dist/es/initReactI18next.js.map +0 -1
  459. package/dist/node_modules/react-i18next/dist/es/unescape.js +0 -30
  460. package/dist/node_modules/react-i18next/dist/es/unescape.js.map +0 -1
  461. package/dist/node_modules/react-i18next/dist/es/useTranslation.js +0 -157
  462. package/dist/node_modules/react-i18next/dist/es/useTranslation.js.map +0 -1
  463. package/dist/node_modules/react-i18next/dist/es/utils.js +0 -58
  464. package/dist/node_modules/react-i18next/dist/es/utils.js.map +0 -1
  465. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +0 -70
  466. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +0 -1
  467. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +0 -61
  468. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js.map +0 -1
  469. package/dist/node_modules/use-sync-external-store/shim/index.js +0 -13
  470. package/dist/node_modules/use-sync-external-store/shim/index.js.map +0 -1
  471. package/dist/table/column-registry.d.ts +0 -9
  472. package/dist/test-support.d.ts +0 -14
  473. package/dist/test-support.js +0 -14
  474. package/dist/test-support.js.map +0 -1
  475. /package/dist/{table/column-registry.js → chat/types.js} +0 -0
  476. /package/dist/{form/components/base → core/components}/checkbox.d.ts +0 -0
@@ -2,7 +2,7 @@ export type Action = {
2
2
  confirmation: Confirmation | null;
3
3
  effects: Effect[];
4
4
  endpoint: string | null;
5
- form: Form | null;
5
+ form: Node | null;
6
6
  icon: string | null;
7
7
  label: string | null;
8
8
  lazyForm: boolean | null;
@@ -12,6 +12,7 @@ export type Action = {
12
12
  };
13
13
  export type ActionGroup = {
14
14
  label: string;
15
+ orientation: Orientation | null;
15
16
  ref: string | null;
16
17
  };
17
18
  export type ActionNode = {
@@ -31,18 +32,57 @@ export type ActionNode = {
31
32
  id?: string;
32
33
  props: BulkAction;
33
34
  };
35
+ export type ActionResult = {
36
+ readonly ok: boolean;
37
+ readonly data: Record<string, unknown>;
38
+ readonly effects: Effect[];
39
+ };
34
40
  export type Align = "center" | "left" | "start" | "stretch";
35
41
  export type Badge = {
36
42
  label: string;
37
43
  };
38
- export type BadgeColumnProps = {
39
- readonly colors: Record<string | number, string> | null;
44
+ export type BadgeColumn = {
45
+ colors: Record<string | number, string> | null;
46
+ };
47
+ export type BooleanColumn = Record<string, never>;
48
+ export type Breadcrumbs = Record<string, never>;
49
+ export type Builder = {
50
+ addLabel: string | null;
51
+ columnWidth: ColumnWidth;
52
+ conditions: {
53
+ visible?: Condition[];
54
+ required?: Condition[];
55
+ readOnly?: Condition[];
56
+ disabled?: Condition[];
57
+ } | null;
58
+ defaultItems: number;
59
+ dependsOnAny: boolean;
60
+ dependsOnKeys: string[] | null;
61
+ disabled: boolean;
62
+ editablePrefill: boolean;
63
+ helperText: string | null;
64
+ hidden: boolean;
65
+ label: string | null;
66
+ layout: RowLayout;
67
+ maxItems: number | null;
68
+ minItems: number | null;
69
+ name: string;
70
+ prefillRefreshOn: string[] | null;
71
+ prefillResetOn: string[] | null;
72
+ readOnly: boolean;
73
+ reorderable: boolean;
74
+ required: boolean;
75
+ resizableColumns: boolean;
76
+ resizeIndicator: boolean;
77
+ rowActions: RowAction[] | null;
78
+ tooltip: string | null;
79
+ value: unknown;
40
80
  };
41
81
  export type BulkAction = {
42
82
  confirmation: Confirmation | null;
43
83
  effects: Effect[];
44
84
  endpoint: string | null;
45
- form: Form | null;
85
+ form: Node | null;
46
86
  icon: string | null;
47
87
  label: string | null;
48
88
  lazyForm: boolean | null;
@@ -58,59 +98,128 @@ export type Button = {
58
98
  };
59
99
  export type ButtonType = "button" | "submit" | "reset";
60
100
  export type ButtonVariant = "default" | "destructive" | "ghost" | "info" | "link" | "outline" | "secondary" | "success";
101
+ export type Callout = {
102
+ title: string | null;
103
+ dismissible: boolean;
104
+ action: Node | null;
105
+ variant: Variant;
106
+ message: string;
107
+ };
108
+ export type CalloutEffect = {
109
+ readonly callout: Callout;
110
+ };
111
+ export type Callouts = Record<string, never>;
61
112
  export type Card = {
62
113
  description: string | null;
63
114
  title: string | null;
64
115
  };
116
+ export type Chart = {
117
+ categoryKey: string | null;
118
+ data: Record<string, unknown>[];
119
+ description: string | null;
120
+ grid: boolean;
121
+ height: number;
122
+ legend: boolean;
123
+ series: ChartSeries[];
124
+ title: string | null;
125
+ tooltip: boolean;
126
+ xAxis: boolean;
127
+ yAxis: boolean;
128
+ };
129
+ export type ChartSeries = {
130
+ readonly type: ChartSeriesType;
131
+ readonly dataKey: string;
132
+ readonly name: string | null;
133
+ readonly color: string | null;
134
+ readonly stackId: string | null;
135
+ readonly nameKey: string | null;
136
+ };
137
+ export type ChartSeriesType = "area" | "bar" | "line" | "pie";
138
+ export type ChatBox = {
139
+ conversationId: string | null;
140
+ fill: boolean;
141
+ historyEndpoint: string | null;
142
+ placeholder: string | null;
143
+ streamEndpoint: string | null;
144
+ title: string | null;
145
+ };
146
+ export type ChatMessage = {
147
+ readonly id: string;
148
+ readonly role: ChatRole;
149
+ readonly parts: ChatNode[];
150
+ };
151
+ export type ChatNode = {
152
+ type: "chat.part.text";
153
+ key?: string;
154
+ props: TextPart;
155
+ } | {
156
+ type: "chat.part.tool-call";
157
+ key?: string;
158
+ props: ToolCallPart;
159
+ };
160
+ export type ChatRole = "user" | "assistant" | "system";
65
161
  export type Checkbox = {
66
- autoFocus: boolean | null;
162
+ autoFocus: boolean;
163
+ columnWidth: ColumnWidth;
67
164
  conditions: {
68
165
  visible?: Condition[];
69
166
  required?: Condition[];
70
167
  readOnly?: Condition[];
71
168
  disabled?: Condition[];
72
169
  } | null;
73
- dependsOnAny: boolean | null;
170
+ dependsOnAny: boolean;
74
171
  dependsOnKeys: string[] | null;
75
- disabled: boolean | null;
172
+ disabled: boolean;
173
+ editablePrefill: boolean;
76
174
  helperText: string | null;
77
- hidden: boolean | null;
175
+ hidden: boolean;
78
176
  label: string | null;
79
177
  name: string;
80
- readOnly: boolean | null;
81
- required: boolean | null;
178
+ prefillRefreshOn: string[] | null;
179
+ prefillResetOn: string[] | null;
180
+ readOnly: boolean;
181
+ required: boolean;
82
182
  tabIndex: number | null;
183
+ tooltip: string | null;
83
184
  value: unknown;
84
185
  };
85
186
  export type Choice = {
86
- autoFocus: boolean | null;
187
+ autoFocus: boolean;
188
+ columnWidth: ColumnWidth;
87
189
  conditions: {
88
190
  visible?: Condition[];
89
191
  required?: Condition[];
90
192
  readOnly?: Condition[];
91
193
  disabled?: Condition[];
92
194
  } | null;
93
- dependsOnAny: boolean | null;
195
+ dependsOnAny: boolean;
94
196
  dependsOnKeys: string[] | null;
95
- disabled: boolean | null;
197
+ disabled: boolean;
198
+ editablePrefill: boolean;
96
199
  helperText: string | null;
97
- hidden: boolean | null;
200
+ hidden: boolean;
98
201
  label: string | null;
99
202
  name: string;
100
203
  options: Option[];
101
- readOnly: boolean | null;
102
- required: boolean | null;
204
+ prefillRefreshOn: string[] | null;
205
+ prefillResetOn: string[] | null;
206
+ readOnly: boolean;
207
+ required: boolean;
103
208
  tabIndex: number | null;
209
+ tooltip: string | null;
104
210
  value: unknown;
105
211
  };
106
212
  export type CloseModalEffect = {
107
213
  readonly modal: string | null;
108
214
  };
109
- export type Color = "muted" | "primary" | "success" | "info" | "warning" | "danger";
215
+ export type Color = "default" | "muted" | "primary" | "success" | "info" | "warning" | "danger";
216
+ export type ColumnAlign = "start" | "center" | "end";
110
217
  export type ColumnData = {
111
218
  readonly key: string;
112
219
  readonly label: string;
113
220
  readonly type: ColumnType | string;
221
+ readonly width: ColumnWidth;
222
+ readonly align: ColumnAlign;
114
223
  readonly sortable: boolean | null;
115
224
  readonly filter: ColumnFilter | null;
116
225
  readonly columns: ColumnData[] | null;
@@ -121,14 +230,22 @@ export type ColumnFilter = {
121
230
  readonly type: FilterType;
122
231
  readonly operators: Op[];
123
232
  readonly defaultOperator: Op;
233
+ readonly control: FilterControl | null;
234
+ readonly options: Option[];
235
+ readonly multiple: boolean;
236
+ readonly searchable: boolean;
124
237
  };
125
238
  export type ColumnPropsMap = {
126
- badge: BadgeColumnProps;
127
- icon: IconColumnProps;
128
- image: ImageColumnProps;
129
- text: TextColumnProps;
239
+ "column.badge": BadgeColumn;
240
+ "column.boolean": BooleanColumn;
241
+ "column.icon": IconColumn;
242
+ "column.image": ImageColumn;
243
+ "column.money": MoneyColumn;
244
+ "column.number": NumberColumn;
245
+ "column.text": TextColumn;
130
246
  };
131
- export type ColumnType = "text" | "stack" | "badge" | "icon" | "image";
247
+ export type ColumnType = "column.text" | "column.boolean" | "column.number" | "column.money" | "column.stack" | "column.badge" | "column.icon" | "column.image";
248
+ export type ColumnWidth = "xs" | "sm" | "md" | "lg" | "xl";
132
249
  export type Condition = {
133
250
  readonly field: string;
134
251
  readonly operator: Op;
@@ -153,6 +270,19 @@ export type CoreNode = {
153
270
  key?: string;
154
271
  props: Card;
155
272
  schema?: Node[];
273
+ } | {
274
+ type: "chart";
275
+ key?: string;
276
+ props: Chart;
277
+ } | {
278
+ type: "chat.box";
279
+ key?: string;
280
+ props: ChatBox;
281
+ } | {
282
+ type: "floating-panel";
283
+ key?: string;
284
+ props: FloatingPanel;
285
+ schema?: Node[];
156
286
  } | {
157
287
  type: "grid";
158
288
  key?: string;
@@ -176,6 +306,10 @@ export type CoreNode = {
176
306
  id?: string;
177
307
  props: Modal;
178
308
  schema?: Node[];
309
+ } | {
310
+ type: "raw-block";
311
+ key?: string;
312
+ props: RawBlock;
179
313
  } | {
180
314
  type: "section";
181
315
  key?: string;
@@ -206,35 +340,48 @@ export type CoreNode = {
206
340
  props: Text;
207
341
  };
208
342
  export type DateInput = {
209
- autoFocus: boolean | null;
343
+ autoFocus: boolean;
344
+ columnWidth: ColumnWidth;
210
345
  conditions: {
211
346
  visible?: Condition[];
212
347
  required?: Condition[];
213
348
  readOnly?: Condition[];
214
349
  disabled?: Condition[];
215
350
  } | null;
216
- dependsOnAny: boolean | null;
351
+ dependsOnAny: boolean;
217
352
  dependsOnKeys: string[] | null;
218
- disabled: boolean | null;
353
+ disabled: boolean;
354
+ editablePrefill: boolean;
219
355
  helperText: string | null;
220
- hidden: boolean | null;
356
+ hidden: boolean;
221
357
  label: string | null;
222
358
  max: string | null;
223
359
  min: string | null;
224
360
  name: string;
225
- readOnly: boolean | null;
226
- required: boolean | null;
361
+ prefillRefreshOn: string[] | null;
362
+ prefillResetOn: string[] | null;
363
+ readOnly: boolean;
364
+ required: boolean;
227
365
  tabIndex: number | null;
366
+ tooltip: string | null;
228
367
  value: unknown;
229
368
  };
230
369
  export type DownloadEffect = {
231
370
  readonly url: string;
232
371
  };
372
+ export type Dropdown = {
373
+ placement: Placement;
374
+ trigger: Node[];
375
+ };
233
376
  export type Effect = ({
377
+ type: "callout";
378
+ } & CalloutEffect) | ({
234
379
  type: "closeModal";
235
380
  } & CloseModalEffect) | ({
236
381
  type: "download";
237
382
  } & DownloadEffect) | ({
383
+ type: "localeChange";
384
+ } & LocaleChangeEffect) | ({
238
385
  type: "openModal";
239
386
  } & OpenModalEffect) | ({
240
387
  type: "redirect";
@@ -247,66 +394,129 @@ export type Effect = ({
247
394
  } & ResetFormEffect) | ({
248
395
  type: "toast";
249
396
  } & ToastEffect);
250
- export type EffectType = "toast" | "reloadComponent" | "reloadPage" | "redirect" | "download" | "openModal" | "closeModal" | "resetForm";
397
+ export type EffectType = "toast" | "callout" | "reloadComponent" | "reloadPage" | "redirect" | "download" | "openModal" | "closeModal" | "resetForm" | "localeChange";
398
+ export type FieldType = "field.builder" | "field.checkbox" | "field.choice" | "field.date-input" | "field.file-upload" | "field.hidden-input" | "field.number-input" | "field.password-input" | "field.repeater" | "field.rich-editor" | "field.select" | "field.textarea" | "field.text-input";
399
+ export type FileUpload = {
400
+ accept: string | null;
401
+ columnWidth: ColumnWidth;
402
+ conditions: {
403
+ visible?: Condition[];
404
+ required?: Condition[];
405
+ readOnly?: Condition[];
406
+ disabled?: Condition[];
407
+ } | null;
408
+ dependsOnAny: boolean;
409
+ dependsOnKeys: string[] | null;
410
+ disabled: boolean;
411
+ editablePrefill: boolean;
412
+ files: {
413
+ key: string;
414
+ name: string;
415
+ url: string | null;
416
+ size: number | null;
417
+ token: string;
418
+ }[] | null;
419
+ helperText: string | null;
420
+ hidden: boolean;
421
+ image: boolean;
422
+ label: string | null;
423
+ maxFiles: number | null;
424
+ maxSize: number | null;
425
+ multiple: boolean;
426
+ name: string;
427
+ prefillRefreshOn: string[] | null;
428
+ prefillResetOn: string[] | null;
429
+ readOnly: boolean;
430
+ required: boolean;
431
+ signed: boolean;
432
+ tooltip: string | null;
433
+ value: unknown;
434
+ };
251
435
  export type FilterClause = {
252
436
  readonly field: string;
253
437
  readonly operator: string;
254
438
  readonly value: string;
255
439
  };
440
+ export type FilterControl = "select" | "ternary" | "date-range" | "toggle";
441
+ export type FilterData = {
442
+ readonly key: string;
443
+ readonly label: string;
444
+ readonly type: FilterControl;
445
+ readonly props: Record<string, unknown>;
446
+ };
256
447
  export type FilterType = "text" | "number" | "date" | "boolean";
448
+ export type FloatingPanel = {
449
+ label: string | null;
450
+ offset: number;
451
+ placement: FloatingPlacement;
452
+ trigger: Node[];
453
+ };
454
+ export type FloatingPlacement = "bottom-end" | "bottom-start" | "top-end" | "top-start";
257
455
  export type Form = {
258
456
  action: string | null;
259
457
  errorBag: string | null;
260
458
  method: HttpMethod | null;
261
- precognitive: boolean | null;
459
+ precognitive: boolean;
262
460
  ref: string | null;
263
461
  resetOnError: string[] | boolean | null;
264
462
  resetOnSuccess: string[] | boolean | null;
265
463
  state: Record<string, unknown>;
266
464
  status: string | null;
267
- submitButton: boolean | null;
465
+ submitButton: boolean;
268
466
  submitLabel: string | null;
269
467
  validationSummaryLabel: string;
270
468
  validationTimeout: number | null;
271
469
  };
272
470
  export type FormFieldNode = {
273
- type: "form.checkbox";
471
+ type: "field.builder";
472
+ key?: string;
473
+ props: Builder;
474
+ } | {
475
+ type: "field.checkbox";
274
476
  key?: string;
275
477
  props: Checkbox;
276
478
  } | {
277
- type: "form.choice";
479
+ type: "field.choice";
278
480
  key?: string;
279
481
  props: Choice;
280
482
  } | {
281
- type: "form.date-input";
483
+ type: "field.date-input";
282
484
  key?: string;
283
485
  props: DateInput;
284
486
  } | {
285
- type: "form.hidden-input";
487
+ type: "field.file-upload";
488
+ key?: string;
489
+ props: FileUpload;
490
+ } | {
491
+ type: "field.hidden-input";
286
492
  key?: string;
287
493
  props: HiddenInput;
288
494
  } | {
289
- type: "form.number-input";
495
+ type: "field.number-input";
290
496
  key?: string;
291
497
  props: NumberInput;
292
498
  } | {
293
- type: "form.password-input";
499
+ type: "field.password-input";
294
500
  key?: string;
295
501
  props: PasswordInput;
296
502
  } | {
297
- type: "form.rich-editor";
503
+ type: "field.repeater";
504
+ key?: string;
505
+ props: Repeater;
506
+ } | {
507
+ type: "field.rich-editor";
298
508
  key?: string;
299
509
  props: RichEditor;
300
510
  } | {
301
- type: "form.select";
511
+ type: "field.select";
302
512
  key?: string;
303
513
  props: Select;
304
514
  } | {
305
- type: "form.text-input";
515
+ type: "field.text-input";
306
516
  key?: string;
307
517
  props: TextInput;
308
518
  } | {
309
- type: "form.textarea";
519
+ type: "field.textarea";
310
520
  key?: string;
311
521
  props: Textarea;
312
522
  };
@@ -322,6 +532,7 @@ export type Fragment = {
322
532
  endpoint: string | null;
323
533
  lazy: boolean | null;
324
534
  ref: string | null;
535
+ size: Size;
325
536
  };
326
537
  export type FragmentNode = {
327
538
  type: "fragment";
@@ -330,7 +541,7 @@ export type FragmentNode = {
330
541
  props: Fragment;
331
542
  schema?: Node[];
332
543
  };
333
- export type Gap = "xs" | "sm" | "md" | "lg" | "xl";
544
+ export type Gap = "none" | "xs" | "sm" | "md" | "lg" | "xl";
334
545
  export type Grid = {
335
546
  columns: number | null;
336
547
  };
@@ -338,41 +549,67 @@ export type Heading = {
338
549
  level: number;
339
550
  text: string;
340
551
  };
552
+ export type Height = "full" | "screen";
341
553
  export type HiddenInput = {
554
+ columnWidth: ColumnWidth;
342
555
  conditions: {
343
556
  visible?: Condition[];
344
557
  required?: Condition[];
345
558
  readOnly?: Condition[];
346
559
  disabled?: Condition[];
347
560
  } | null;
348
- dependsOnAny: boolean | null;
561
+ dependsOnAny: boolean;
349
562
  dependsOnKeys: string[] | null;
350
- disabled: boolean | null;
563
+ disabled: boolean;
564
+ editablePrefill: boolean;
351
565
  helperText: string | null;
352
- hidden: boolean | null;
566
+ hidden: boolean;
353
567
  label: string | null;
354
568
  name: string;
355
- readOnly: boolean | null;
356
- required: boolean | null;
569
+ prefillRefreshOn: string[] | null;
570
+ prefillResetOn: string[] | null;
571
+ readOnly: boolean;
572
+ required: boolean;
573
+ tooltip: string | null;
357
574
  value: unknown;
358
575
  };
359
576
  export type HttpMethod = import('@inertiajs/core').Method;
577
+ export type I18nConfig = {
578
+ readonly enabled: boolean;
579
+ readonly saveMissing: boolean;
580
+ readonly locales: string[];
581
+ readonly preloadLocales: string[];
582
+ };
360
583
  export type Icon = {
361
584
  class: string | null;
362
585
  color: Color | null;
363
586
  name: string;
364
587
  size: Size;
365
588
  };
366
- export type IconColumnProps = {
367
- readonly icon: string | null;
368
- readonly icons: Record<string | number, string> | null;
369
- readonly colors: Record<string | number, string> | null;
589
+ export type IconColumn = {
590
+ colors: Record<string | number, string> | null;
591
+ icon: string | null;
592
+ icons: Record<string | number, string> | null;
370
593
  };
371
- export type ImageColumnProps = {
372
- readonly circular: boolean;
373
- readonly size: number | null;
594
+ export type ImageColumn = {
595
+ circular: boolean;
596
+ size: number | null;
374
597
  };
598
+ export type Justify = "start" | "center" | "end" | "between" | "around" | "evenly";
375
599
  export type LayoutNode = {
600
+ type: "breadcrumbs";
601
+ key?: string;
602
+ props: Breadcrumbs;
603
+ } | {
604
+ type: "callouts";
605
+ key?: string;
606
+ props: Callouts;
607
+ } | {
608
+ type: "dropdown";
609
+ key?: string;
610
+ props: Dropdown;
611
+ schema?: Node[];
612
+ } | {
376
613
  type: "menu";
377
614
  key?: string;
378
615
  props: Menu;
@@ -398,6 +635,9 @@ export type Link = {
398
635
  method: HttpMethod | null;
399
636
  tabIndex: number | null;
400
637
  };
638
+ export type LocaleChangeEffect = {
639
+ readonly locale: string;
640
+ };
401
641
  export type Menu = Record<string, never>;
402
642
  export type MenuItem = {
403
643
  href: string | null;
@@ -412,31 +652,48 @@ export type Modal = {
412
652
  ref: string | null;
413
653
  title: string | null;
414
654
  };
415
- export type Node = FormNode | CoreNode | ActionNode | FragmentNode | TableNode | LayoutNode;
655
+ export type MoneyColumn = {
656
+ currency: string | null;
657
+ currencyField: string | null;
658
+ maximumFractionDigits: number | null;
659
+ minimumFractionDigits: number | null;
660
+ };
661
+ export type Node = FormNode | CoreNode | ActionNode | FragmentNode | TableNode | LayoutNode | ChatNode;
416
662
  export type NodeType = Node["type"];
663
+ export type NumberColumn = {
664
+ maximumFractionDigits: number | null;
665
+ minimumFractionDigits: number | null;
666
+ unit: NumberFormatUnit | null;
667
+ };
668
+ export type NumberFormatUnit = "percent" | "kilogram" | "gram" | "kilometer" | "meter" | "byte" | "kilobyte" | "megabyte" | "gigabyte" | "millisecond" | "second" | "minute" | "hour" | "celsius" | "fahrenheit";
417
669
  export type NumberInput = {
418
- autoFocus: boolean | null;
670
+ autoFocus: boolean;
671
+ columnWidth: ColumnWidth;
419
672
  conditions: {
420
673
  visible?: Condition[];
421
674
  required?: Condition[];
422
675
  readOnly?: Condition[];
423
676
  disabled?: Condition[];
424
677
  } | null;
425
- dependsOnAny: boolean | null;
678
+ dependsOnAny: boolean;
426
679
  dependsOnKeys: string[] | null;
427
- disabled: boolean | null;
680
+ disabled: boolean;
681
+ editablePrefill: boolean;
428
682
  helperText: string | null;
429
- hidden: boolean | null;
683
+ hidden: boolean;
430
684
  label: string | null;
431
685
  max: number | null;
432
686
  min: number | null;
433
687
  name: string;
434
688
  placeholder: string | null;
435
- readOnly: boolean | null;
436
- required: boolean | null;
437
- slider: boolean | null;
689
+ prefillRefreshOn: string[] | null;
690
+ prefillResetOn: string[] | null;
691
+ readOnly: boolean;
692
+ required: boolean;
693
+ slider: boolean;
438
694
  step: number | null;
439
695
  tabIndex: number | null;
696
+ tooltip: string | null;
440
697
  value: unknown;
441
698
  };
442
699
  export type Op = "contains" | "starts_with" | "ends_with" | "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "in" | "not_in" | "before" | "after" | "empty" | "filled";
@@ -454,7 +711,8 @@ export type PageLayout = "app" | "auth" | "none";
454
711
  export type PaginationType = "none" | "simple" | "table" | "infinite";
455
712
  export type PasswordInput = {
456
713
  autoComplete: string | null;
457
- autoFocus: boolean | null;
714
+ autoFocus: boolean;
715
+ columnWidth: ColumnWidth;
458
716
  conditions: {
459
717
  visible?: Condition[];
460
718
  required?: Condition[];
@@ -466,11 +724,12 @@ export type PasswordInput = {
466
724
  name: string;
467
725
  placeholder: string;
468
726
  } | null;
469
- dependsOnAny: boolean | null;
727
+ dependsOnAny: boolean;
470
728
  dependsOnKeys: string[] | null;
471
- disabled: boolean | null;
729
+ disabled: boolean;
730
+ editablePrefill: boolean;
472
731
  helperText: string | null;
473
- hidden: boolean | null;
732
+ hidden: boolean;
474
733
  label: string | null;
475
734
  labelAction: {
476
735
  href: string;
@@ -480,11 +739,18 @@ export type PasswordInput = {
480
739
  name: string;
481
740
  passwordRules: string | null;
482
741
  placeholder: string | null;
483
- readOnly: boolean | null;
484
- required: boolean | null;
742
+ prefillRefreshOn: string[] | null;
743
+ prefillResetOn: string[] | null;
744
+ readOnly: boolean;
745
+ required: boolean;
485
746
  tabIndex: number | null;
747
+ tooltip: string | null;
486
748
  value: unknown;
487
749
  };
750
+ export type Placement = "top" | "bottom" | "right";
751
+ export type RawBlock = {
752
+ html: string;
753
+ };
488
754
  export type RedirectEffect = {
489
755
  readonly url: string;
490
756
  };
@@ -492,33 +758,80 @@ export type ReloadComponentEffect = {
492
758
  readonly component: string;
493
759
  };
494
760
  export type ReloadPageEffect = object;
761
+ export type Repeater = {
762
+ addLabel: string | null;
763
+ columnWidth: ColumnWidth;
764
+ conditions: {
765
+ visible?: Condition[];
766
+ required?: Condition[];
767
+ readOnly?: Condition[];
768
+ disabled?: Condition[];
769
+ } | null;
770
+ defaultItems: number;
771
+ dependsOnAny: boolean;
772
+ dependsOnKeys: string[] | null;
773
+ disabled: boolean;
774
+ editablePrefill: boolean;
775
+ helperText: string | null;
776
+ hidden: boolean;
777
+ itemLabel: string | null;
778
+ label: string | null;
779
+ layout: RowLayout;
780
+ maxItems: number | null;
781
+ minItems: number | null;
782
+ name: string;
783
+ prefillRefreshOn: string[] | null;
784
+ prefillResetOn: string[] | null;
785
+ readOnly: boolean;
786
+ reorderable: boolean;
787
+ required: boolean;
788
+ resizableColumns: boolean;
789
+ resizeIndicator: boolean;
790
+ rowActions: RowAction[] | null;
791
+ tooltip: string | null;
792
+ value: unknown;
793
+ };
495
794
  export type ResetFormEffect = {
496
795
  readonly form: string | null;
497
796
  };
498
797
  export type RichEditor = {
798
+ columnWidth: ColumnWidth;
499
799
  conditions: {
500
800
  visible?: Condition[];
501
801
  required?: Condition[];
502
802
  readOnly?: Condition[];
503
803
  disabled?: Condition[];
504
804
  } | null;
505
- dependsOnAny: boolean | null;
805
+ dependsOnAny: boolean;
506
806
  dependsOnKeys: string[] | null;
507
- disabled: boolean | null;
807
+ disabled: boolean;
808
+ editablePrefill: boolean;
508
809
  helperText: string | null;
509
- hidden: boolean | null;
810
+ hidden: boolean;
510
811
  label: string | null;
511
812
  name: string;
512
813
  placeholder: string | null;
513
- readOnly: boolean | null;
514
- required: boolean | null;
814
+ prefillRefreshOn: string[] | null;
815
+ prefillResetOn: string[] | null;
816
+ readOnly: boolean;
817
+ required: boolean;
818
+ tooltip: string | null;
515
819
  value: unknown;
516
820
  };
821
+ export type RowAction = {
822
+ type: RowActionType;
823
+ key: string;
824
+ label: string | null;
825
+ icon: string | null;
826
+ destructive: boolean;
827
+ };
828
+ export type RowActionType = "duplicate" | "remove";
829
+ export type RowLayout = "stack" | "table";
517
830
  export type Section = {
518
831
  collapsed: boolean;
519
832
  collapsible: boolean;
520
833
  description: string | null;
521
- headerActions: undefined[];
834
+ headerActions: Node[];
522
835
  rememberState: boolean;
523
836
  title: string | null;
524
837
  };
@@ -530,29 +843,34 @@ export type SegmentedControl = {
530
843
  value: string | null;
531
844
  };
532
845
  export type Select = {
533
- autoFocus: boolean | null;
846
+ autoFocus: boolean;
847
+ columnWidth: ColumnWidth;
534
848
  conditions: {
535
849
  visible?: Condition[];
536
850
  required?: Condition[];
537
851
  readOnly?: Condition[];
538
852
  disabled?: Condition[];
539
853
  } | null;
540
- dependsOnAny: boolean | null;
854
+ dependsOnAny: boolean;
541
855
  dependsOnKeys: string[] | null;
542
- disabled: boolean | null;
856
+ disabled: boolean;
857
+ editablePrefill: boolean;
543
858
  emptyLabel: string;
544
859
  helperText: string | null;
545
- hidden: boolean | null;
860
+ hidden: boolean;
546
861
  label: string | null;
547
- multiple: boolean | null;
862
+ multiple: boolean;
548
863
  name: string;
549
864
  options: Option[];
550
865
  placeholder: string | null;
551
- readOnly: boolean | null;
552
- required: boolean | null;
866
+ prefillRefreshOn: string[] | null;
867
+ prefillResetOn: string[] | null;
868
+ readOnly: boolean;
869
+ required: boolean;
553
870
  searchPlaceholder: string;
554
- searchable: boolean | null;
871
+ searchable: boolean;
555
872
  tabIndex: number | null;
873
+ tooltip: string | null;
556
874
  value: unknown;
557
875
  };
558
876
  export type Sidebar = {
@@ -565,6 +883,8 @@ export type Stack = {
565
883
  align: Align | null;
566
884
  direction: string | null;
567
885
  gap: Gap | null;
886
+ height: Height | null;
887
+ justify: Justify | null;
568
888
  width: Width | null;
569
889
  };
570
890
  export type Tab = {
@@ -578,13 +898,16 @@ export type Tab = {
578
898
  };
579
899
  export type Table = {
580
900
  actionsLabel: string;
581
- bulkActions: Action[];
901
+ bulkActions: Node[];
582
902
  columns: ColumnData[];
583
903
  emptyLabel: string;
584
904
  endpoint: string | null;
905
+ filters: FilterData[];
585
906
  layout: string | null;
586
907
  lazy: boolean | null;
587
908
  ref: string | null;
909
+ resizableColumns: boolean | null;
910
+ resizeIndicator: boolean;
588
911
  striped: boolean | null;
589
912
  };
590
913
  export type TableNode = {
@@ -593,6 +916,24 @@ export type TableNode = {
593
916
  id?: string;
594
917
  props: Table;
595
918
  };
919
+ export type TablePagination = {
920
+ readonly mode: PaginationType;
921
+ readonly currentPage: number | null;
922
+ readonly lastPage: number | null;
923
+ readonly perPage: number | null;
924
+ readonly total: number | null;
925
+ readonly from: number | null;
926
+ readonly to: number | null;
927
+ readonly hasMore: boolean;
928
+ readonly nextPage: number | null;
929
+ };
930
+ export type TableQuery = {
931
+ readonly filters: FilterClause[];
932
+ readonly sorts: TableSort[];
933
+ readonly page: number;
934
+ readonly perPage: number;
935
+ readonly tableFilters: Record<string, unknown>;
936
+ };
596
937
  export type TableSort = {
597
938
  readonly key: string;
598
939
  readonly direction: SortDirection;
@@ -605,61 +946,76 @@ export type Tabs = {
605
946
  };
606
947
  export type Text = {
607
948
  align: Align | null;
949
+ color: Color;
950
+ size: Size;
608
951
  text: string;
609
952
  };
610
- export type TextColumnProps = {
611
- readonly date: {
953
+ export type TextColumn = {
954
+ copyable: boolean;
955
+ date: {
612
956
  format: string | null;
613
957
  } | null;
614
- readonly copyable: boolean;
615
- readonly link: {
958
+ link: {
616
959
  href: string | null;
617
960
  external: boolean;
618
961
  } | null;
619
962
  };
620
963
  export type TextInput = {
621
964
  autoComplete: string | null;
622
- autoFocus: boolean | null;
965
+ autoFocus: boolean;
966
+ columnWidth: ColumnWidth;
623
967
  conditions: {
624
968
  visible?: Condition[];
625
969
  required?: Condition[];
626
970
  readOnly?: Condition[];
627
971
  disabled?: Condition[];
628
972
  } | null;
629
- dependsOnAny: boolean | null;
973
+ dependsOnAny: boolean;
630
974
  dependsOnKeys: string[] | null;
631
- disabled: boolean | null;
975
+ disabled: boolean;
976
+ editablePrefill: boolean;
632
977
  helperText: string | null;
633
- hidden: boolean | null;
978
+ hidden: boolean;
634
979
  label: string | null;
635
980
  name: string;
636
981
  placeholder: string | null;
637
- readOnly: boolean | null;
638
- required: boolean | null;
982
+ prefillRefreshOn: string[] | null;
983
+ prefillResetOn: string[] | null;
984
+ readOnly: boolean;
985
+ required: boolean;
639
986
  tabIndex: number | null;
987
+ tooltip: string | null;
640
988
  type: string | null;
641
989
  value: unknown;
642
990
  };
991
+ export type TextPart = {
992
+ text: string;
993
+ };
643
994
  export type Textarea = {
644
- autoFocus: boolean | null;
995
+ autoFocus: boolean;
996
+ columnWidth: ColumnWidth;
645
997
  conditions: {
646
998
  visible?: Condition[];
647
999
  required?: Condition[];
648
1000
  readOnly?: Condition[];
649
1001
  disabled?: Condition[];
650
1002
  } | null;
651
- dependsOnAny: boolean | null;
1003
+ dependsOnAny: boolean;
652
1004
  dependsOnKeys: string[] | null;
653
- disabled: boolean | null;
1005
+ disabled: boolean;
1006
+ editablePrefill: boolean;
654
1007
  helperText: string | null;
655
- hidden: boolean | null;
1008
+ hidden: boolean;
656
1009
  label: string | null;
657
1010
  name: string;
658
1011
  placeholder: string | null;
659
- readOnly: boolean | null;
660
- required: boolean | null;
1012
+ prefillRefreshOn: string[] | null;
1013
+ prefillResetOn: string[] | null;
1014
+ readOnly: boolean;
1015
+ required: boolean;
661
1016
  rows: number | null;
662
1017
  tabIndex: number | null;
1018
+ tooltip: string | null;
663
1019
  value: unknown;
664
1020
  };
665
1021
  export type ToastEffect = {
@@ -670,8 +1026,12 @@ export type ToastMessage = {
670
1026
  persistent: boolean;
671
1027
  dismissible: boolean;
672
1028
  action: Node | null;
673
- variant: ToastVariant;
1029
+ variant: Variant;
674
1030
  message: string;
675
1031
  };
676
- export type ToastVariant = "success" | "info" | "warning" | "error";
1032
+ export type ToolCallPart = {
1033
+ args: Record<string, unknown>;
1034
+ name: string;
1035
+ };
1036
+ export type Variant = "success" | "info" | "warning" | "error";
677
1037
  export type Width = "full" | "sm" | "md" | "lg" | "fill";