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