@slotted/react 0.0.0-stage → 0.1.0-beta.1

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 (1922) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +45 -2
  3. package/dist/accordion-D-YuMJzk.js +143 -0
  4. package/dist/accordion.js +2 -0
  5. package/dist/action-bar-C7cGnEyJ.js +282 -0
  6. package/dist/action-bar.js +2 -0
  7. package/dist/action-sheet-D8Glxl7l.js +347 -0
  8. package/dist/action-sheet.js +2 -0
  9. package/dist/alert-CP62p9Ul.js +159 -0
  10. package/dist/alert.js +2 -0
  11. package/dist/app-shell-CXwma4XA.js +836 -0
  12. package/dist/app-shell.js +2 -0
  13. package/dist/aspect-ratio-C76l-aoY.js +40 -0
  14. package/dist/aspect-ratio.js +2 -0
  15. package/dist/attachment-DdBbQcEB.js +302 -0
  16. package/dist/attachment.js +2 -0
  17. package/dist/avatar-BnlE5jjr.js +100 -0
  18. package/dist/avatar-group-4rBj99tz.js +47 -0
  19. package/dist/avatar-group.js +2 -0
  20. package/dist/avatar.js +2 -0
  21. package/dist/badge-C6rbwVpu.js +94 -0
  22. package/dist/badge.js +2 -0
  23. package/dist/breadcrumb-Bf01N4wK.js +218 -0
  24. package/dist/breadcrumb.js +2 -0
  25. package/dist/button-DakQ-7Tm.js +97 -0
  26. package/dist/button-defaults-DNq_DDJh.js +20 -0
  27. package/dist/button-group-Det_nYor.js +50 -0
  28. package/dist/button-group.js +2 -0
  29. package/dist/button.js +4 -0
  30. package/dist/calendar-B3mio8iQ.js +387 -0
  31. package/dist/calendar.js +2 -0
  32. package/dist/card-CpVu8PyZ.js +102 -0
  33. package/dist/card.js +2 -0
  34. package/dist/carousel-BPi-Y5yF.js +498 -0
  35. package/dist/carousel.js +2 -0
  36. package/dist/cascader-CARCYdHh.js +1097 -0
  37. package/dist/cascader.js +2 -0
  38. package/dist/chart-BNzfIfQe.js +948 -0
  39. package/dist/chart.js +2 -0
  40. package/dist/checkbox-CwUOc-3u.js +139 -0
  41. package/dist/checkbox-group-BYTjgAcX.js +108 -0
  42. package/dist/checkbox-group.js +2 -0
  43. package/dist/checkbox.js +2 -0
  44. package/dist/code-block-CFHf8uTm.js +269 -0
  45. package/dist/code-block.js +2 -0
  46. package/dist/collapsible-CGo49NNW.js +217 -0
  47. package/dist/collapsible.js +2 -0
  48. package/dist/color-picker-BlPR4g4H.js +504 -0
  49. package/dist/color-picker.js +2 -0
  50. package/dist/column-manager-CNZ7Xk5_.js +585 -0
  51. package/dist/column-manager.js +2 -0
  52. package/dist/combobox-C46GRqAA.js +852 -0
  53. package/dist/combobox.js +2 -0
  54. package/dist/command-palette-BqRyNR9Y.js +707 -0
  55. package/dist/command-palette.js +2 -0
  56. package/dist/container-CjxY6rYv.js +46 -0
  57. package/dist/container.js +2 -0
  58. package/dist/context-menu-DMiHdggw.js +150 -0
  59. package/dist/context-menu.js +2 -0
  60. package/dist/currency-field-B7OZ0hk7.js +436 -0
  61. package/dist/currency-field.js +2 -0
  62. package/dist/dashboard-grid-nfhEewA4.js +1005 -0
  63. package/dist/dashboard-grid.js +2 -0
  64. package/dist/data-grid-BUgOJuGp.js +3648 -0
  65. package/dist/data-grid.js +2 -0
  66. package/dist/data-list-2xfDpHVC.js +561 -0
  67. package/dist/data-list.js +2 -0
  68. package/dist/date-field-D_kLLTfL.js +279 -0
  69. package/dist/date-field.js +2 -0
  70. package/dist/date-picker-DQ5SIhdA.js +264 -0
  71. package/dist/date-picker.js +2 -0
  72. package/dist/date-range-picker-lpB08hK_.js +471 -0
  73. package/dist/date-range-picker.js +2 -0
  74. package/dist/datetime-field-T1gNdJ7t.js +411 -0
  75. package/dist/datetime-field.js +2 -0
  76. package/dist/datetime-picker-0F0kDW-8.js +629 -0
  77. package/dist/datetime-picker.js +2 -0
  78. package/dist/datetime-range-picker-ClnEleth.js +994 -0
  79. package/dist/datetime-range-picker.js +2 -0
  80. package/dist/description-list-IYLnFgHT.js +232 -0
  81. package/dist/description-list.js +2 -0
  82. package/dist/detail-panel-qOJiNuzr.js +319 -0
  83. package/dist/detail-panel.js +2 -0
  84. package/dist/dialog-Dmy-m_pe.js +499 -0
  85. package/dist/dialog.js +2 -0
  86. package/dist/divider-D36Jqo0J.js +33 -0
  87. package/dist/divider.js +2 -0
  88. package/dist/docs/AGENTS.snippet.md +11 -0
  89. package/dist/docs/accordion.json +352 -0
  90. package/dist/docs/accordion.md +214 -0
  91. package/dist/docs/action-bar.json +426 -0
  92. package/dist/docs/action-bar.md +366 -0
  93. package/dist/docs/action-sheet.json +210 -0
  94. package/dist/docs/action-sheet.md +19 -0
  95. package/dist/docs/alert.json +405 -0
  96. package/dist/docs/alert.md +251 -0
  97. package/dist/docs/app-shell.examples.md +374 -0
  98. package/dist/docs/app-shell.json +847 -0
  99. package/dist/docs/app-shell.md +200 -0
  100. package/dist/docs/aspect-ratio.json +157 -0
  101. package/dist/docs/aspect-ratio.md +132 -0
  102. package/dist/docs/attachment.json +520 -0
  103. package/dist/docs/attachment.md +276 -0
  104. package/dist/docs/avatar-group.json +207 -0
  105. package/dist/docs/avatar-group.md +119 -0
  106. package/dist/docs/avatar.json +350 -0
  107. package/dist/docs/avatar.md +145 -0
  108. package/dist/docs/badge.json +342 -0
  109. package/dist/docs/badge.md +146 -0
  110. package/dist/docs/breadcrumb.json +358 -0
  111. package/dist/docs/breadcrumb.md +233 -0
  112. package/dist/docs/button-group.json +165 -0
  113. package/dist/docs/button-group.md +73 -0
  114. package/dist/docs/button.examples.md +601 -0
  115. package/dist/docs/button.json +1006 -0
  116. package/dist/docs/button.md +187 -0
  117. package/dist/docs/calendar.json +590 -0
  118. package/dist/docs/calendar.md +246 -0
  119. package/dist/docs/card.json +263 -0
  120. package/dist/docs/card.md +156 -0
  121. package/dist/docs/carousel.json +505 -0
  122. package/dist/docs/carousel.md +380 -0
  123. package/dist/docs/cascader.json +980 -0
  124. package/dist/docs/cascader.md +304 -0
  125. package/dist/docs/chart.examples.md +538 -0
  126. package/dist/docs/chart.json +1406 -0
  127. package/dist/docs/chart.md +191 -0
  128. package/dist/docs/checkbox-group.examples.md +577 -0
  129. package/dist/docs/checkbox-group.json +393 -0
  130. package/dist/docs/checkbox-group.md +99 -0
  131. package/dist/docs/checkbox.examples.md +505 -0
  132. package/dist/docs/checkbox.json +511 -0
  133. package/dist/docs/checkbox.md +95 -0
  134. package/dist/docs/code-block.json +628 -0
  135. package/dist/docs/code-block.md +280 -0
  136. package/dist/docs/collapsible.json +457 -0
  137. package/dist/docs/collapsible.md +260 -0
  138. package/dist/docs/color-picker.json +521 -0
  139. package/dist/docs/color-picker.md +198 -0
  140. package/dist/docs/column-manager.json +508 -0
  141. package/dist/docs/column-manager.md +296 -0
  142. package/dist/docs/combobox.examples.md +1739 -0
  143. package/dist/docs/combobox.json +1235 -0
  144. package/dist/docs/combobox.md +197 -0
  145. package/dist/docs/command-palette.json +833 -0
  146. package/dist/docs/command-palette.md +467 -0
  147. package/dist/docs/container.json +156 -0
  148. package/dist/docs/container.md +90 -0
  149. package/dist/docs/context-menu.json +243 -0
  150. package/dist/docs/context-menu.md +206 -0
  151. package/dist/docs/currency-field.examples.md +268 -0
  152. package/dist/docs/currency-field.json +649 -0
  153. package/dist/docs/currency-field.md +117 -0
  154. package/dist/docs/dashboard-grid.json +671 -0
  155. package/dist/docs/dashboard-grid.md +272 -0
  156. package/dist/docs/data-grid.examples.md +2846 -0
  157. package/dist/docs/data-grid.json +1687 -0
  158. package/dist/docs/data-grid.md +215 -0
  159. package/dist/docs/data-grid.props.md +102 -0
  160. package/dist/docs/data-list.json +711 -0
  161. package/dist/docs/data-list.md +342 -0
  162. package/dist/docs/date-field.json +502 -0
  163. package/dist/docs/date-field.md +251 -0
  164. package/dist/docs/date-picker.examples.md +1021 -0
  165. package/dist/docs/date-picker.json +687 -0
  166. package/dist/docs/date-picker.md +114 -0
  167. package/dist/docs/date-range-picker.examples.md +1089 -0
  168. package/dist/docs/date-range-picker.json +901 -0
  169. package/dist/docs/date-range-picker.md +136 -0
  170. package/dist/docs/datetime-field.json +663 -0
  171. package/dist/docs/datetime-field.md +366 -0
  172. package/dist/docs/datetime-picker.examples.md +1081 -0
  173. package/dist/docs/datetime-picker.json +926 -0
  174. package/dist/docs/datetime-picker.md +144 -0
  175. package/dist/docs/datetime-range-picker.examples.md +219 -0
  176. package/dist/docs/datetime-range-picker.json +1006 -0
  177. package/dist/docs/datetime-range-picker.md +158 -0
  178. package/dist/docs/description-list.json +469 -0
  179. package/dist/docs/description-list.md +281 -0
  180. package/dist/docs/detail-panel.json +558 -0
  181. package/dist/docs/detail-panel.md +382 -0
  182. package/dist/docs/dialog.examples.md +2403 -0
  183. package/dist/docs/dialog.json +1138 -0
  184. package/dist/docs/dialog.md +252 -0
  185. package/dist/docs/divider.json +155 -0
  186. package/dist/docs/divider.md +86 -0
  187. package/dist/docs/drawer.examples.md +1795 -0
  188. package/dist/docs/drawer.json +756 -0
  189. package/dist/docs/drawer.md +186 -0
  190. package/dist/docs/entity-picker.json +998 -0
  191. package/dist/docs/entity-picker.md +389 -0
  192. package/dist/docs/event-calendar.examples.md +374 -0
  193. package/dist/docs/event-calendar.json +1207 -0
  194. package/dist/docs/event-calendar.md +188 -0
  195. package/dist/docs/field-group.json +331 -0
  196. package/dist/docs/field-group.md +189 -0
  197. package/dist/docs/field.examples.md +557 -0
  198. package/dist/docs/field.json +528 -0
  199. package/dist/docs/field.md +119 -0
  200. package/dist/docs/filter-bar.json +808 -0
  201. package/dist/docs/filter-bar.md +373 -0
  202. package/dist/docs/form.json +383 -0
  203. package/dist/docs/form.md +240 -0
  204. package/dist/docs/fullscreen.json +414 -0
  205. package/dist/docs/fullscreen.md +246 -0
  206. package/dist/docs/grid.json +183 -0
  207. package/dist/docs/grid.md +75 -0
  208. package/dist/docs/highlight.json +277 -0
  209. package/dist/docs/highlight.md +209 -0
  210. package/dist/docs/hover-card.json +273 -0
  211. package/dist/docs/hover-card.md +225 -0
  212. package/dist/docs/icon.json +173 -0
  213. package/dist/docs/icon.md +107 -0
  214. package/dist/docs/image.json +474 -0
  215. package/dist/docs/image.md +263 -0
  216. package/dist/docs/import-export-center.json +831 -0
  217. package/dist/docs/import-export-center.md +359 -0
  218. package/dist/docs/index.md +141 -0
  219. package/dist/docs/inline-message.json +317 -0
  220. package/dist/docs/inline-message.md +209 -0
  221. package/dist/docs/inline.json +156 -0
  222. package/dist/docs/inline.md +75 -0
  223. package/dist/docs/kbd.json +348 -0
  224. package/dist/docs/kbd.md +216 -0
  225. package/dist/docs/link.json +269 -0
  226. package/dist/docs/link.md +194 -0
  227. package/dist/docs/list-item.json +475 -0
  228. package/dist/docs/list-item.md +240 -0
  229. package/dist/docs/list.json +325 -0
  230. package/dist/docs/list.md +187 -0
  231. package/dist/docs/listbox.json +811 -0
  232. package/dist/docs/listbox.md +397 -0
  233. package/dist/docs/loading-overlay.json +445 -0
  234. package/dist/docs/loading-overlay.md +249 -0
  235. package/dist/docs/markdown.json +459 -0
  236. package/dist/docs/markdown.md +257 -0
  237. package/dist/docs/menu.examples.md +1513 -0
  238. package/dist/docs/menu.json +985 -0
  239. package/dist/docs/menu.md +163 -0
  240. package/dist/docs/menubar.json +299 -0
  241. package/dist/docs/menubar.md +183 -0
  242. package/dist/docs/message-scroller.json +413 -0
  243. package/dist/docs/message-scroller.md +218 -0
  244. package/dist/docs/message.json +879 -0
  245. package/dist/docs/message.md +479 -0
  246. package/dist/docs/multi-select.examples.md +1867 -0
  247. package/dist/docs/multi-select.json +1342 -0
  248. package/dist/docs/multi-select.md +221 -0
  249. package/dist/docs/navigation-menu.json +541 -0
  250. package/dist/docs/navigation-menu.md +369 -0
  251. package/dist/docs/notification-center.json +664 -0
  252. package/dist/docs/notification-center.md +371 -0
  253. package/dist/docs/number-field.examples.md +822 -0
  254. package/dist/docs/number-field.json +669 -0
  255. package/dist/docs/number-field.md +115 -0
  256. package/dist/docs/otp-input.json +477 -0
  257. package/dist/docs/otp-input.md +274 -0
  258. package/dist/docs/page-header.json +583 -0
  259. package/dist/docs/page-header.md +368 -0
  260. package/dist/docs/page.json +330 -0
  261. package/dist/docs/page.md +199 -0
  262. package/dist/docs/pagination.json +439 -0
  263. package/dist/docs/pagination.md +232 -0
  264. package/dist/docs/popover.examples.md +1067 -0
  265. package/dist/docs/popover.json +649 -0
  266. package/dist/docs/popover.md +182 -0
  267. package/dist/docs/progress-indicator.json +492 -0
  268. package/dist/docs/progress-indicator.md +318 -0
  269. package/dist/docs/prompt-composer.json +496 -0
  270. package/dist/docs/prompt-composer.md +256 -0
  271. package/dist/docs/prose.json +363 -0
  272. package/dist/docs/prose.md +246 -0
  273. package/dist/docs/radio-group.examples.md +582 -0
  274. package/dist/docs/radio-group.json +538 -0
  275. package/dist/docs/radio-group.md +102 -0
  276. package/dist/docs/rating.json +1082 -0
  277. package/dist/docs/rating.md +422 -0
  278. package/dist/docs/result-state.json +374 -0
  279. package/dist/docs/result-state.md +292 -0
  280. package/dist/docs/saved-views.json +377 -0
  281. package/dist/docs/saved-views.md +241 -0
  282. package/dist/docs/scroll-area.json +120 -0
  283. package/dist/docs/scroll-area.md +8 -0
  284. package/dist/docs/section.json +342 -0
  285. package/dist/docs/section.md +224 -0
  286. package/dist/docs/segmented-control.json +435 -0
  287. package/dist/docs/segmented-control.md +253 -0
  288. package/dist/docs/select.examples.md +1348 -0
  289. package/dist/docs/select.json +1179 -0
  290. package/dist/docs/select.md +208 -0
  291. package/dist/docs/side-navigation.json +658 -0
  292. package/dist/docs/side-navigation.md +440 -0
  293. package/dist/docs/skeleton.json +356 -0
  294. package/dist/docs/skeleton.md +226 -0
  295. package/dist/docs/slider.json +528 -0
  296. package/dist/docs/slider.md +275 -0
  297. package/dist/docs/sparkline.json +417 -0
  298. package/dist/docs/sparkline.md +208 -0
  299. package/dist/docs/split-button.json +352 -0
  300. package/dist/docs/split-button.md +260 -0
  301. package/dist/docs/splitter.json +142 -0
  302. package/dist/docs/splitter.md +14 -0
  303. package/dist/docs/stack.json +142 -0
  304. package/dist/docs/stack.md +75 -0
  305. package/dist/docs/stat-card.json +527 -0
  306. package/dist/docs/stat-card.md +305 -0
  307. package/dist/docs/status-indicator.json +312 -0
  308. package/dist/docs/status-indicator.md +221 -0
  309. package/dist/docs/stepper.json +456 -0
  310. package/dist/docs/stepper.md +232 -0
  311. package/dist/docs/switch.json +458 -0
  312. package/dist/docs/switch.md +466 -0
  313. package/dist/docs/table-of-contents.json +579 -0
  314. package/dist/docs/table-of-contents.md +301 -0
  315. package/dist/docs/table.examples.md +1706 -0
  316. package/dist/docs/table.json +1042 -0
  317. package/dist/docs/table.md +261 -0
  318. package/dist/docs/tabs.examples.md +1247 -0
  319. package/dist/docs/tabs.json +652 -0
  320. package/dist/docs/tabs.md +184 -0
  321. package/dist/docs/tag.json +803 -0
  322. package/dist/docs/tag.md +246 -0
  323. package/dist/docs/tags-input.json +738 -0
  324. package/dist/docs/tags-input.md +377 -0
  325. package/dist/docs/text-field.examples.md +617 -0
  326. package/dist/docs/text-field.json +610 -0
  327. package/dist/docs/text-field.md +112 -0
  328. package/dist/docs/textarea.json +431 -0
  329. package/dist/docs/textarea.md +587 -0
  330. package/dist/docs/time-field.json +582 -0
  331. package/dist/docs/time-field.md +310 -0
  332. package/dist/docs/time-picker.json +677 -0
  333. package/dist/docs/time-picker.md +337 -0
  334. package/dist/docs/time-range-picker.json +915 -0
  335. package/dist/docs/time-range-picker.md +336 -0
  336. package/dist/docs/timeline.json +851 -0
  337. package/dist/docs/timeline.md +346 -0
  338. package/dist/docs/toast.json +640 -0
  339. package/dist/docs/toast.md +308 -0
  340. package/dist/docs/toggle-group.json +422 -0
  341. package/dist/docs/toggle-group.md +260 -0
  342. package/dist/docs/toggle.json +331 -0
  343. package/dist/docs/toggle.md +201 -0
  344. package/dist/docs/toolbar.json +385 -0
  345. package/dist/docs/toolbar.md +245 -0
  346. package/dist/docs/tooltip.examples.md +638 -0
  347. package/dist/docs/tooltip.json +597 -0
  348. package/dist/docs/tooltip.md +138 -0
  349. package/dist/docs/top-navigation.examples.md +327 -0
  350. package/dist/docs/top-navigation.json +695 -0
  351. package/dist/docs/top-navigation.md +145 -0
  352. package/dist/docs/tour.json +773 -0
  353. package/dist/docs/tour.md +370 -0
  354. package/dist/docs/transfer.json +736 -0
  355. package/dist/docs/transfer.md +291 -0
  356. package/dist/docs/tree.json +967 -0
  357. package/dist/docs/tree.md +417 -0
  358. package/dist/docs/typography.json +331 -0
  359. package/dist/docs/typography.md +115 -0
  360. package/dist/docs/upload.examples.md +374 -0
  361. package/dist/docs/upload.json +1130 -0
  362. package/dist/docs/upload.md +168 -0
  363. package/dist/docs/visually-hidden.json +92 -0
  364. package/dist/docs/visually-hidden.md +45 -0
  365. package/dist/docs/wizard.json +736 -0
  366. package/dist/docs/wizard.md +351 -0
  367. package/dist/drawer-Ci3wuCVa.js +758 -0
  368. package/dist/drawer.js +2 -0
  369. package/dist/entity-picker-UGhbVwkC.js +1111 -0
  370. package/dist/entity-picker.js +2 -0
  371. package/dist/event-calendar-BFdeGfC-.js +1399 -0
  372. package/dist/event-calendar.js +2 -0
  373. package/dist/field-BJh5HI7w.js +365 -0
  374. package/dist/field-group-BDaspQPh.js +138 -0
  375. package/dist/field-group.js +2 -0
  376. package/dist/field.js +2 -0
  377. package/dist/filter-bar-b2Q9BZHf.js +1335 -0
  378. package/dist/filter-bar.js +2 -0
  379. package/dist/form-vTCQhZM-.js +265 -0
  380. package/dist/form.js +2 -0
  381. package/dist/fullscreen-CF0UN4mv.js +187 -0
  382. package/dist/fullscreen.js +2 -0
  383. package/dist/grid-CIkG_2IQ.js +25 -0
  384. package/dist/grid.js +2 -0
  385. package/dist/highlight-0Qw23QPp.js +57 -0
  386. package/dist/highlight.js +2 -0
  387. package/dist/hover-card-CSDbA6zd.js +214 -0
  388. package/dist/hover-card.js +2 -0
  389. package/dist/i18n-DpW8lqJ1.js +55 -0
  390. package/dist/i18n.js +2 -0
  391. package/dist/icon-T9Yt4tnm.js +73 -0
  392. package/dist/icon-button-TnvMhK4o.js +211 -0
  393. package/dist/icon.js +2 -0
  394. package/dist/image-DpDFrrXL.js +147 -0
  395. package/dist/image.js +2 -0
  396. package/dist/import-export-center-D8xbCLWs.js +813 -0
  397. package/dist/import-export-center.js +2 -0
  398. package/dist/index.js +131 -0
  399. package/dist/inline-D_IjcJ1n.js +16 -0
  400. package/dist/inline-message-C4a-A2mw.js +91 -0
  401. package/dist/inline-message.js +2 -0
  402. package/dist/inline.js +2 -0
  403. package/dist/kbd-defaults-CDgRhiep.js +40 -0
  404. package/dist/kbd-eFSWTKxN.js +100 -0
  405. package/dist/kbd.js +3 -0
  406. package/dist/link-TjvRl2VQ.js +87 -0
  407. package/dist/link.js +2 -0
  408. package/dist/list-C1Y8MWp2.js +87 -0
  409. package/dist/list-item-DN_mcouU.js +123 -0
  410. package/dist/list-item.js +2 -0
  411. package/dist/list.js +2 -0
  412. package/dist/listbox-4WvqR0JF.js +615 -0
  413. package/dist/listbox.js +2 -0
  414. package/dist/loading-overlay-B83XFctM.js +208 -0
  415. package/dist/loading-overlay.js +2 -0
  416. package/dist/markdown-CpfDn1LF.js +295 -0
  417. package/dist/markdown.js +2 -0
  418. package/dist/menu-parts-BQej6eU9.js +787 -0
  419. package/dist/menu.js +2 -0
  420. package/dist/menubar-CtGavUTO.js +156 -0
  421. package/dist/menubar.js +2 -0
  422. package/dist/message-Cp0rLCyW.js +430 -0
  423. package/dist/message-scroller-UZjFpflz.js +214 -0
  424. package/dist/message-scroller.js +2 -0
  425. package/dist/message.js +2 -0
  426. package/dist/multi-select-CfzsvAeI.js +1193 -0
  427. package/dist/multi-select.js +2 -0
  428. package/dist/navigation-menu-parts-D8qFAwHX.js +492 -0
  429. package/dist/navigation-menu.js +2 -0
  430. package/dist/notification-center-C4pEHJ3h.js +485 -0
  431. package/dist/notification-center.js +2 -0
  432. package/dist/number-field-J_koud1r.js +342 -0
  433. package/dist/number-field.js +2 -0
  434. package/dist/otp-input-Bf8JUiVR.js +205 -0
  435. package/dist/otp-input.js +2 -0
  436. package/dist/page-header-CWEBfMGq.js +367 -0
  437. package/dist/page-header.js +2 -0
  438. package/dist/page-kQgLctsA.js +167 -0
  439. package/dist/page.js +2 -0
  440. package/dist/pagination-DWJc521r.js +292 -0
  441. package/dist/pagination.js +2 -0
  442. package/dist/popover-DE22lSpV.js +476 -0
  443. package/dist/popover.js +2 -0
  444. package/dist/progress-indicator-DwvUSFFs.js +269 -0
  445. package/dist/progress-indicator.js +2 -0
  446. package/dist/prompt-composer-B7MMcER0.js +259 -0
  447. package/dist/prompt-composer.js +2 -0
  448. package/dist/prose-CkeNYS0X.js +91 -0
  449. package/dist/prose.js +2 -0
  450. package/dist/radio-group-BFpjhDkV.js +140 -0
  451. package/dist/radio-group.js +2 -0
  452. package/dist/rating-D1EsADFM.js +459 -0
  453. package/dist/rating.js +2 -0
  454. package/dist/react-dom-DzrKNxo6.js +273 -0
  455. package/dist/result-state-CZsQfdN4.js +126 -0
  456. package/dist/result-state.js +2 -0
  457. package/dist/saved-views-BueW-Lyb.js +446 -0
  458. package/dist/saved-views.js +2 -0
  459. package/dist/scroll-area-BriwmvYY.js +111 -0
  460. package/dist/scroll-area.js +2 -0
  461. package/dist/section-Be7dX9MC.js +176 -0
  462. package/dist/section.js +2 -0
  463. package/dist/segmented-control-Cy_5D3Nj.js +149 -0
  464. package/dist/segmented-control.js +2 -0
  465. package/dist/select-UTwKjheK.js +957 -0
  466. package/dist/select-tags-CQMcHIQN.js +74 -0
  467. package/dist/select.js +2 -0
  468. package/dist/side-navigation-YUiJRpng.js +729 -0
  469. package/dist/side-navigation.js +2 -0
  470. package/dist/skeleton-2LSpg84Z.js +143 -0
  471. package/dist/skeleton.js +2 -0
  472. package/dist/slider-B432T6nD.js +256 -0
  473. package/dist/slider.js +2 -0
  474. package/dist/sparkline-rY7HIFE4.js +131 -0
  475. package/dist/sparkline.js +2 -0
  476. package/dist/split-button-DHF3v3PJ.js +135 -0
  477. package/dist/split-button.js +2 -0
  478. package/dist/splitter-Bg3UgmbV.js +289 -0
  479. package/dist/splitter.js +2 -0
  480. package/dist/stack-BEFavbRs.js +15 -0
  481. package/dist/stack.js +2 -0
  482. package/dist/stat-card-BG7uLytP.js +244 -0
  483. package/dist/stat-card.js +2 -0
  484. package/dist/status-indicator-BOjpXkU5.js +73 -0
  485. package/dist/status-indicator.js +2 -0
  486. package/dist/stepper-DQJuRWqR.js +253 -0
  487. package/dist/stepper.js +2 -0
  488. package/dist/styles.css +3 -0
  489. package/dist/switch-4MHwKmkz.js +138 -0
  490. package/dist/switch.js +2 -0
  491. package/dist/table-CzBIw9ng.js +970 -0
  492. package/dist/table-of-contents-DfAeYtFJ.js +461 -0
  493. package/dist/table-of-contents.js +2 -0
  494. package/dist/table.js +2 -0
  495. package/dist/tabs-DQ36APY-.js +343 -0
  496. package/dist/tabs.js +2 -0
  497. package/dist/tag-DjtW53xN.js +365 -0
  498. package/dist/tag.js +2 -0
  499. package/dist/tags-input-DLdHLWrH.js +625 -0
  500. package/dist/tags-input.js +2 -0
  501. package/dist/text-field-BktZbmzD.js +195 -0
  502. package/dist/text-field.js +2 -0
  503. package/dist/textarea-JAK2RJl0.js +99 -0
  504. package/dist/textarea.js +2 -0
  505. package/dist/theme.js +19 -0
  506. package/dist/time-field-DCG_VtGO.js +355 -0
  507. package/dist/time-field.js +2 -0
  508. package/dist/time-picker-DuT1tf5-.js +396 -0
  509. package/dist/time-picker.js +2 -0
  510. package/dist/time-range-picker-HwBvrrXN.js +745 -0
  511. package/dist/time-range-picker.js +2 -0
  512. package/dist/timeline-DH_02ysz.js +421 -0
  513. package/dist/timeline.js +2 -0
  514. package/dist/toast-wI8BtPY5.js +468 -0
  515. package/dist/toast.js +2 -0
  516. package/dist/toggle-CBFhM4Jh.js +64 -0
  517. package/dist/toggle-group-DQBlI1TV.js +140 -0
  518. package/dist/toggle-group.js +2 -0
  519. package/dist/toggle.js +2 -0
  520. package/dist/toolbar-CDQTydDx.js +240 -0
  521. package/dist/toolbar.js +2 -0
  522. package/dist/tooltip-BggqPDcW.js +393 -0
  523. package/dist/tooltip.js +2 -0
  524. package/dist/top-navigation-COQZsNqW.js +740 -0
  525. package/dist/top-navigation.js +2 -0
  526. package/dist/tour-C11DmYTC.js +799 -0
  527. package/dist/tour.js +2 -0
  528. package/dist/transfer-JA9TWjAw.js +596 -0
  529. package/dist/transfer.js +2 -0
  530. package/dist/tree-C6fYJqT9.js +783 -0
  531. package/dist/tree.js +2 -0
  532. package/dist/types/accordion/accordion-defaults.d.ts +10 -0
  533. package/dist/types/accordion/accordion-defaults.d.ts.map +1 -0
  534. package/dist/types/accordion/accordion.d.ts +38 -0
  535. package/dist/types/accordion/accordion.d.ts.map +1 -0
  536. package/dist/types/accordion/accordion.types.d.ts +124 -0
  537. package/dist/types/accordion/accordion.types.d.ts.map +1 -0
  538. package/dist/types/accordion/index.d.ts +4 -0
  539. package/dist/types/accordion/index.d.ts.map +1 -0
  540. package/dist/types/action-bar/action-bar-context.d.ts +68 -0
  541. package/dist/types/action-bar/action-bar-context.d.ts.map +1 -0
  542. package/dist/types/action-bar/action-bar-defaults.d.ts +11 -0
  543. package/dist/types/action-bar/action-bar-defaults.d.ts.map +1 -0
  544. package/dist/types/action-bar/action-bar-demo.d.ts +25 -0
  545. package/dist/types/action-bar/action-bar-demo.d.ts.map +1 -0
  546. package/dist/types/action-bar/action-bar-overflow.d.ts +26 -0
  547. package/dist/types/action-bar/action-bar-overflow.d.ts.map +1 -0
  548. package/dist/types/action-bar/action-bar-parts.d.ts +50 -0
  549. package/dist/types/action-bar/action-bar-parts.d.ts.map +1 -0
  550. package/dist/types/action-bar/action-bar.d.ts +31 -0
  551. package/dist/types/action-bar/action-bar.d.ts.map +1 -0
  552. package/dist/types/action-bar/action-bar.types.d.ts +146 -0
  553. package/dist/types/action-bar/action-bar.types.d.ts.map +1 -0
  554. package/dist/types/action-bar/index.d.ts +8 -0
  555. package/dist/types/action-bar/index.d.ts.map +1 -0
  556. package/dist/types/action-sheet/action-sheet-defaults.d.ts +11 -0
  557. package/dist/types/action-sheet/action-sheet-defaults.d.ts.map +1 -0
  558. package/dist/types/action-sheet/action-sheet-demo.d.ts +15 -0
  559. package/dist/types/action-sheet/action-sheet-demo.d.ts.map +1 -0
  560. package/dist/types/action-sheet/action-sheet-entry.d.ts +10 -0
  561. package/dist/types/action-sheet/action-sheet-entry.d.ts.map +1 -0
  562. package/dist/types/action-sheet/action-sheet-parts.d.ts +53 -0
  563. package/dist/types/action-sheet/action-sheet-parts.d.ts.map +1 -0
  564. package/dist/types/action-sheet/action-sheet.d.ts +24 -0
  565. package/dist/types/action-sheet/action-sheet.d.ts.map +1 -0
  566. package/dist/types/action-sheet/action-sheet.types.d.ts +166 -0
  567. package/dist/types/action-sheet/action-sheet.types.d.ts.map +1 -0
  568. package/dist/types/action-sheet/index.d.ts +5 -0
  569. package/dist/types/action-sheet/index.d.ts.map +1 -0
  570. package/dist/types/alert/alert-defaults.d.ts +15 -0
  571. package/dist/types/alert/alert-defaults.d.ts.map +1 -0
  572. package/dist/types/alert/alert-demo.d.ts +25 -0
  573. package/dist/types/alert/alert-demo.d.ts.map +1 -0
  574. package/dist/types/alert/alert-parts.d.ts +49 -0
  575. package/dist/types/alert/alert-parts.d.ts.map +1 -0
  576. package/dist/types/alert/alert.d.ts +27 -0
  577. package/dist/types/alert/alert.d.ts.map +1 -0
  578. package/dist/types/alert/alert.types.d.ts +98 -0
  579. package/dist/types/alert/alert.types.d.ts.map +1 -0
  580. package/dist/types/alert/index.d.ts +5 -0
  581. package/dist/types/alert/index.d.ts.map +1 -0
  582. package/dist/types/app-shell/app-shell-defaults.d.ts +12 -0
  583. package/dist/types/app-shell/app-shell-defaults.d.ts.map +1 -0
  584. package/dist/types/app-shell/app-shell-demo/atrio.d.ts +21 -0
  585. package/dist/types/app-shell/app-shell-demo/atrio.d.ts.map +1 -0
  586. package/dist/types/app-shell/app-shell-demo/aurora.d.ts +89 -0
  587. package/dist/types/app-shell/app-shell-demo/aurora.d.ts.map +1 -0
  588. package/dist/types/app-shell/app-shell-demo/cadence.d.ts +17 -0
  589. package/dist/types/app-shell/app-shell-demo/cadence.d.ts.map +1 -0
  590. package/dist/types/app-shell/app-shell-demo/index.d.ts +7 -0
  591. package/dist/types/app-shell/app-shell-demo/index.d.ts.map +1 -0
  592. package/dist/types/app-shell/app-shell-demo/rail.d.ts +19 -0
  593. package/dist/types/app-shell/app-shell-demo/rail.d.ts.map +1 -0
  594. package/dist/types/app-shell/app-shell-demo/shared.d.ts +80 -0
  595. package/dist/types/app-shell/app-shell-demo/shared.d.ts.map +1 -0
  596. package/dist/types/app-shell/app-shell-parts.d.ts +114 -0
  597. package/dist/types/app-shell/app-shell-parts.d.ts.map +1 -0
  598. package/dist/types/app-shell/app-shell.d.ts +42 -0
  599. package/dist/types/app-shell/app-shell.d.ts.map +1 -0
  600. package/dist/types/app-shell/app-shell.types.d.ts +312 -0
  601. package/dist/types/app-shell/app-shell.types.d.ts.map +1 -0
  602. package/dist/types/app-shell/index.d.ts +5 -0
  603. package/dist/types/app-shell/index.d.ts.map +1 -0
  604. package/dist/types/aspect-ratio/aspect-ratio.d.ts +25 -0
  605. package/dist/types/aspect-ratio/aspect-ratio.d.ts.map +1 -0
  606. package/dist/types/aspect-ratio/aspect-ratio.types.d.ts +35 -0
  607. package/dist/types/aspect-ratio/aspect-ratio.types.d.ts.map +1 -0
  608. package/dist/types/aspect-ratio/index.d.ts +3 -0
  609. package/dist/types/aspect-ratio/index.d.ts.map +1 -0
  610. package/dist/types/attachment/attachment-defaults.d.ts +11 -0
  611. package/dist/types/attachment/attachment-defaults.d.ts.map +1 -0
  612. package/dist/types/attachment/attachment-kinds.d.ts +21 -0
  613. package/dist/types/attachment/attachment-kinds.d.ts.map +1 -0
  614. package/dist/types/attachment/attachment-parts.d.ts +67 -0
  615. package/dist/types/attachment/attachment-parts.d.ts.map +1 -0
  616. package/dist/types/attachment/attachment.d.ts +41 -0
  617. package/dist/types/attachment/attachment.d.ts.map +1 -0
  618. package/dist/types/attachment/attachment.types.d.ts +193 -0
  619. package/dist/types/attachment/attachment.types.d.ts.map +1 -0
  620. package/dist/types/attachment/index.d.ts +6 -0
  621. package/dist/types/attachment/index.d.ts.map +1 -0
  622. package/dist/types/avatar/avatar-defaults.d.ts +17 -0
  623. package/dist/types/avatar/avatar-defaults.d.ts.map +1 -0
  624. package/dist/types/avatar/avatar.d.ts +22 -0
  625. package/dist/types/avatar/avatar.d.ts.map +1 -0
  626. package/dist/types/avatar/avatar.types.d.ts +155 -0
  627. package/dist/types/avatar/avatar.types.d.ts.map +1 -0
  628. package/dist/types/avatar/index.d.ts +4 -0
  629. package/dist/types/avatar/index.d.ts.map +1 -0
  630. package/dist/types/avatar-group/avatar-group.d.ts +22 -0
  631. package/dist/types/avatar-group/avatar-group.d.ts.map +1 -0
  632. package/dist/types/avatar-group/index.d.ts +3 -0
  633. package/dist/types/avatar-group/index.d.ts.map +1 -0
  634. package/dist/types/badge/badge-anchor.d.ts +16 -0
  635. package/dist/types/badge/badge-anchor.d.ts.map +1 -0
  636. package/dist/types/badge/badge-defaults.d.ts +15 -0
  637. package/dist/types/badge/badge-defaults.d.ts.map +1 -0
  638. package/dist/types/badge/badge.d.ts +16 -0
  639. package/dist/types/badge/badge.d.ts.map +1 -0
  640. package/dist/types/badge/badge.types.d.ts +120 -0
  641. package/dist/types/badge/badge.types.d.ts.map +1 -0
  642. package/dist/types/badge/index.d.ts +5 -0
  643. package/dist/types/badge/index.d.ts.map +1 -0
  644. package/dist/types/breadcrumb/breadcrumb-defaults.d.ts +11 -0
  645. package/dist/types/breadcrumb/breadcrumb-defaults.d.ts.map +1 -0
  646. package/dist/types/breadcrumb/breadcrumb-parts.d.ts +65 -0
  647. package/dist/types/breadcrumb/breadcrumb-parts.d.ts.map +1 -0
  648. package/dist/types/breadcrumb/breadcrumb.d.ts +35 -0
  649. package/dist/types/breadcrumb/breadcrumb.d.ts.map +1 -0
  650. package/dist/types/breadcrumb/breadcrumb.types.d.ts +122 -0
  651. package/dist/types/breadcrumb/breadcrumb.types.d.ts.map +1 -0
  652. package/dist/types/breadcrumb/index.d.ts +5 -0
  653. package/dist/types/breadcrumb/index.d.ts.map +1 -0
  654. package/dist/types/button/button-content.d.ts +31 -0
  655. package/dist/types/button/button-content.d.ts.map +1 -0
  656. package/dist/types/button/button-defaults.d.ts +18 -0
  657. package/dist/types/button/button-defaults.d.ts.map +1 -0
  658. package/dist/types/button/button-indicator.d.ts +21 -0
  659. package/dist/types/button/button-indicator.d.ts.map +1 -0
  660. package/dist/types/button/button-link.d.ts +16 -0
  661. package/dist/types/button/button-link.d.ts.map +1 -0
  662. package/dist/types/button/button-root.d.ts +104 -0
  663. package/dist/types/button/button-root.d.ts.map +1 -0
  664. package/dist/types/button/button.constants.d.ts +31 -0
  665. package/dist/types/button/button.constants.d.ts.map +1 -0
  666. package/dist/types/button/button.d.ts +7 -0
  667. package/dist/types/button/button.d.ts.map +1 -0
  668. package/dist/types/button/button.types.d.ts +136 -0
  669. package/dist/types/button/button.types.d.ts.map +1 -0
  670. package/dist/types/button/icon-button.d.ts +14 -0
  671. package/dist/types/button/icon-button.d.ts.map +1 -0
  672. package/dist/types/button/index.d.ts +7 -0
  673. package/dist/types/button/index.d.ts.map +1 -0
  674. package/dist/types/button/toggle-button.d.ts +14 -0
  675. package/dist/types/button/toggle-button.d.ts.map +1 -0
  676. package/dist/types/button-group/button-group-separator.d.ts +15 -0
  677. package/dist/types/button-group/button-group-separator.d.ts.map +1 -0
  678. package/dist/types/button-group/button-group-shape.d.ts +14 -0
  679. package/dist/types/button-group/button-group-shape.d.ts.map +1 -0
  680. package/dist/types/button-group/button-group.d.ts +22 -0
  681. package/dist/types/button-group/button-group.d.ts.map +1 -0
  682. package/dist/types/button-group/button-group.types.d.ts +63 -0
  683. package/dist/types/button-group/button-group.types.d.ts.map +1 -0
  684. package/dist/types/button-group/index.d.ts +4 -0
  685. package/dist/types/button-group/index.d.ts.map +1 -0
  686. package/dist/types/calendar/calendar-defaults.d.ts +15 -0
  687. package/dist/types/calendar/calendar-defaults.d.ts.map +1 -0
  688. package/dist/types/calendar/calendar-demo.d.ts +22 -0
  689. package/dist/types/calendar/calendar-demo.d.ts.map +1 -0
  690. package/dist/types/calendar/calendar-selection.d.ts +41 -0
  691. package/dist/types/calendar/calendar-selection.d.ts.map +1 -0
  692. package/dist/types/calendar/calendar.d.ts +28 -0
  693. package/dist/types/calendar/calendar.d.ts.map +1 -0
  694. package/dist/types/calendar/calendar.types.d.ts +114 -0
  695. package/dist/types/calendar/calendar.types.d.ts.map +1 -0
  696. package/dist/types/calendar/index.d.ts +5 -0
  697. package/dist/types/calendar/index.d.ts.map +1 -0
  698. package/dist/types/card/card-actions.d.ts +8 -0
  699. package/dist/types/card/card-actions.d.ts.map +1 -0
  700. package/dist/types/card/card-body.d.ts +4 -0
  701. package/dist/types/card/card-body.d.ts.map +1 -0
  702. package/dist/types/card/card-defaults.d.ts +10 -0
  703. package/dist/types/card/card-defaults.d.ts.map +1 -0
  704. package/dist/types/card/card-footer.d.ts +7 -0
  705. package/dist/types/card/card-footer.d.ts.map +1 -0
  706. package/dist/types/card/card-header.d.ts +4 -0
  707. package/dist/types/card/card-header.d.ts.map +1 -0
  708. package/dist/types/card/card-link.d.ts +11 -0
  709. package/dist/types/card/card-link.d.ts.map +1 -0
  710. package/dist/types/card/card-media.d.ts +8 -0
  711. package/dist/types/card/card-media.d.ts.map +1 -0
  712. package/dist/types/card/card-selection.d.ts +17 -0
  713. package/dist/types/card/card-selection.d.ts.map +1 -0
  714. package/dist/types/card/card.d.ts +13 -0
  715. package/dist/types/card/card.d.ts.map +1 -0
  716. package/dist/types/card/card.types.d.ts +82 -0
  717. package/dist/types/card/card.types.d.ts.map +1 -0
  718. package/dist/types/card/index.d.ts +11 -0
  719. package/dist/types/card/index.d.ts.map +1 -0
  720. package/dist/types/carousel/carousel-catalogue.d.ts +24 -0
  721. package/dist/types/carousel/carousel-catalogue.d.ts.map +1 -0
  722. package/dist/types/carousel/carousel-defaults.d.ts +10 -0
  723. package/dist/types/carousel/carousel-defaults.d.ts.map +1 -0
  724. package/dist/types/carousel/carousel-demo.d.ts +27 -0
  725. package/dist/types/carousel/carousel-demo.d.ts.map +1 -0
  726. package/dist/types/carousel/carousel-parts.d.ts +46 -0
  727. package/dist/types/carousel/carousel-parts.d.ts.map +1 -0
  728. package/dist/types/carousel/carousel.d.ts +25 -0
  729. package/dist/types/carousel/carousel.d.ts.map +1 -0
  730. package/dist/types/carousel/carousel.types.d.ts +198 -0
  731. package/dist/types/carousel/carousel.types.d.ts.map +1 -0
  732. package/dist/types/carousel/index.d.ts +5 -0
  733. package/dist/types/carousel/index.d.ts.map +1 -0
  734. package/dist/types/cascader/cascader-defaults.d.ts +9 -0
  735. package/dist/types/cascader/cascader-defaults.d.ts.map +1 -0
  736. package/dist/types/cascader/cascader-state.d.ts +60 -0
  737. package/dist/types/cascader/cascader-state.d.ts.map +1 -0
  738. package/dist/types/cascader/cascader-surface.d.ts +30 -0
  739. package/dist/types/cascader/cascader-surface.d.ts.map +1 -0
  740. package/dist/types/cascader/cascader.d.ts +18 -0
  741. package/dist/types/cascader/cascader.d.ts.map +1 -0
  742. package/dist/types/cascader/cascader.types.d.ts +154 -0
  743. package/dist/types/cascader/cascader.types.d.ts.map +1 -0
  744. package/dist/types/cascader/index.d.ts +4 -0
  745. package/dist/types/cascader/index.d.ts.map +1 -0
  746. package/dist/types/chart/chart-defaults.d.ts +12 -0
  747. package/dist/types/chart/chart-defaults.d.ts.map +1 -0
  748. package/dist/types/chart/chart.d.ts +32 -0
  749. package/dist/types/chart/chart.d.ts.map +1 -0
  750. package/dist/types/chart/chart.types.d.ts +143 -0
  751. package/dist/types/chart/chart.types.d.ts.map +1 -0
  752. package/dist/types/chart/index.d.ts +7 -0
  753. package/dist/types/chart/index.d.ts.map +1 -0
  754. package/dist/types/checkbox/checkbox-defaults.d.ts +10 -0
  755. package/dist/types/checkbox/checkbox-defaults.d.ts.map +1 -0
  756. package/dist/types/checkbox/checkbox.d.ts +4 -0
  757. package/dist/types/checkbox/checkbox.d.ts.map +1 -0
  758. package/dist/types/checkbox/checkbox.types.d.ts +99 -0
  759. package/dist/types/checkbox/checkbox.types.d.ts.map +1 -0
  760. package/dist/types/checkbox/index.d.ts +4 -0
  761. package/dist/types/checkbox/index.d.ts.map +1 -0
  762. package/dist/types/checkbox-group/checkbox-group-defaults.d.ts +12 -0
  763. package/dist/types/checkbox-group/checkbox-group-defaults.d.ts.map +1 -0
  764. package/dist/types/checkbox-group/checkbox-group.d.ts +28 -0
  765. package/dist/types/checkbox-group/checkbox-group.d.ts.map +1 -0
  766. package/dist/types/checkbox-group/checkbox-group.types.d.ts +110 -0
  767. package/dist/types/checkbox-group/checkbox-group.types.d.ts.map +1 -0
  768. package/dist/types/checkbox-group/index.d.ts +4 -0
  769. package/dist/types/checkbox-group/index.d.ts.map +1 -0
  770. package/dist/types/code-block/code-block-defaults.d.ts +11 -0
  771. package/dist/types/code-block/code-block-defaults.d.ts.map +1 -0
  772. package/dist/types/code-block/code-block.d.ts +10 -0
  773. package/dist/types/code-block/code-block.d.ts.map +1 -0
  774. package/dist/types/code-block/code-block.types.d.ts +95 -0
  775. package/dist/types/code-block/code-block.types.d.ts.map +1 -0
  776. package/dist/types/code-block/index.d.ts +4 -0
  777. package/dist/types/code-block/index.d.ts.map +1 -0
  778. package/dist/types/collapsible/collapsible-defaults.d.ts +10 -0
  779. package/dist/types/collapsible/collapsible-defaults.d.ts.map +1 -0
  780. package/dist/types/collapsible/collapsible-parts.d.ts +53 -0
  781. package/dist/types/collapsible/collapsible-parts.d.ts.map +1 -0
  782. package/dist/types/collapsible/collapsible.d.ts +30 -0
  783. package/dist/types/collapsible/collapsible.d.ts.map +1 -0
  784. package/dist/types/collapsible/collapsible.types.d.ts +194 -0
  785. package/dist/types/collapsible/collapsible.types.d.ts.map +1 -0
  786. package/dist/types/collapsible/index.d.ts +5 -0
  787. package/dist/types/collapsible/index.d.ts.map +1 -0
  788. package/dist/types/color-picker/color-picker-defaults.d.ts +8 -0
  789. package/dist/types/color-picker/color-picker-defaults.d.ts.map +1 -0
  790. package/dist/types/color-picker/color-picker-demo.d.ts +22 -0
  791. package/dist/types/color-picker/color-picker-demo.d.ts.map +1 -0
  792. package/dist/types/color-picker/color-picker.d.ts +45 -0
  793. package/dist/types/color-picker/color-picker.d.ts.map +1 -0
  794. package/dist/types/color-picker/color-picker.types.d.ts +63 -0
  795. package/dist/types/color-picker/color-picker.types.d.ts.map +1 -0
  796. package/dist/types/color-picker/index.d.ts +4 -0
  797. package/dist/types/color-picker/index.d.ts.map +1 -0
  798. package/dist/types/column-manager/column-manager-defaults.d.ts +10 -0
  799. package/dist/types/column-manager/column-manager-defaults.d.ts.map +1 -0
  800. package/dist/types/column-manager/column-manager.d.ts +25 -0
  801. package/dist/types/column-manager/column-manager.d.ts.map +1 -0
  802. package/dist/types/column-manager/column-manager.types.d.ts +78 -0
  803. package/dist/types/column-manager/column-manager.types.d.ts.map +1 -0
  804. package/dist/types/column-manager/index.d.ts +4 -0
  805. package/dist/types/column-manager/index.d.ts.map +1 -0
  806. package/dist/types/combobox/combobox-collection.d.ts +33 -0
  807. package/dist/types/combobox/combobox-collection.d.ts.map +1 -0
  808. package/dist/types/combobox/combobox-defaults.d.ts +35 -0
  809. package/dist/types/combobox/combobox-defaults.d.ts.map +1 -0
  810. package/dist/types/combobox/combobox-items.d.ts +29 -0
  811. package/dist/types/combobox/combobox-items.d.ts.map +1 -0
  812. package/dist/types/combobox/combobox-parts.d.ts +25 -0
  813. package/dist/types/combobox/combobox-parts.d.ts.map +1 -0
  814. package/dist/types/combobox/combobox.d.ts +105 -0
  815. package/dist/types/combobox/combobox.d.ts.map +1 -0
  816. package/dist/types/combobox/combobox.types.d.ts +211 -0
  817. package/dist/types/combobox/combobox.types.d.ts.map +1 -0
  818. package/dist/types/combobox/index.d.ts +7 -0
  819. package/dist/types/combobox/index.d.ts.map +1 -0
  820. package/dist/types/command-palette/command-palette-defaults.d.ts +30 -0
  821. package/dist/types/command-palette/command-palette-defaults.d.ts.map +1 -0
  822. package/dist/types/command-palette/command-palette.d.ts +14 -0
  823. package/dist/types/command-palette/command-palette.d.ts.map +1 -0
  824. package/dist/types/command-palette/command-palette.types.d.ts +162 -0
  825. package/dist/types/command-palette/command-palette.types.d.ts.map +1 -0
  826. package/dist/types/command-palette/index.d.ts +4 -0
  827. package/dist/types/command-palette/index.d.ts.map +1 -0
  828. package/dist/types/container/container-breakout.d.ts +11 -0
  829. package/dist/types/container/container-breakout.d.ts.map +1 -0
  830. package/dist/types/container/container-defaults.d.ts +11 -0
  831. package/dist/types/container/container-defaults.d.ts.map +1 -0
  832. package/dist/types/container/container.d.ts +16 -0
  833. package/dist/types/container/container.d.ts.map +1 -0
  834. package/dist/types/container/container.types.d.ts +61 -0
  835. package/dist/types/container/container.types.d.ts.map +1 -0
  836. package/dist/types/container/index.d.ts +5 -0
  837. package/dist/types/container/index.d.ts.map +1 -0
  838. package/dist/types/context-menu/context-menu-defaults.d.ts +11 -0
  839. package/dist/types/context-menu/context-menu-defaults.d.ts.map +1 -0
  840. package/dist/types/context-menu/context-menu.d.ts +27 -0
  841. package/dist/types/context-menu/context-menu.d.ts.map +1 -0
  842. package/dist/types/context-menu/context-menu.types.d.ts +60 -0
  843. package/dist/types/context-menu/context-menu.types.d.ts.map +1 -0
  844. package/dist/types/context-menu/index.d.ts +4 -0
  845. package/dist/types/context-menu/index.d.ts.map +1 -0
  846. package/dist/types/currency-field/currency-field-defaults.d.ts +20 -0
  847. package/dist/types/currency-field/currency-field-defaults.d.ts.map +1 -0
  848. package/dist/types/currency-field/currency-field-demo.d.ts +22 -0
  849. package/dist/types/currency-field/currency-field-demo.d.ts.map +1 -0
  850. package/dist/types/currency-field/currency-field.d.ts +42 -0
  851. package/dist/types/currency-field/currency-field.d.ts.map +1 -0
  852. package/dist/types/currency-field/currency-field.types.d.ts +228 -0
  853. package/dist/types/currency-field/currency-field.types.d.ts.map +1 -0
  854. package/dist/types/currency-field/index.d.ts +4 -0
  855. package/dist/types/currency-field/index.d.ts.map +1 -0
  856. package/dist/types/dashboard-grid/dashboard-grid-context.d.ts +51 -0
  857. package/dist/types/dashboard-grid/dashboard-grid-context.d.ts.map +1 -0
  858. package/dist/types/dashboard-grid/dashboard-grid-defaults.d.ts +12 -0
  859. package/dist/types/dashboard-grid/dashboard-grid-defaults.d.ts.map +1 -0
  860. package/dist/types/dashboard-grid/dashboard-grid-demo.d.ts +17 -0
  861. package/dist/types/dashboard-grid/dashboard-grid-demo.d.ts.map +1 -0
  862. package/dist/types/dashboard-grid/dashboard-grid.d.ts +11 -0
  863. package/dist/types/dashboard-grid/dashboard-grid.d.ts.map +1 -0
  864. package/dist/types/dashboard-grid/dashboard-grid.types.d.ts +137 -0
  865. package/dist/types/dashboard-grid/dashboard-grid.types.d.ts.map +1 -0
  866. package/dist/types/dashboard-grid/dashboard-widget.d.ts +9 -0
  867. package/dist/types/dashboard-grid/dashboard-widget.d.ts.map +1 -0
  868. package/dist/types/dashboard-grid/index.d.ts +6 -0
  869. package/dist/types/dashboard-grid/index.d.ts.map +1 -0
  870. package/dist/types/dashboard-grid/use-persisted-dashboard-layout.d.ts +11 -0
  871. package/dist/types/dashboard-grid/use-persisted-dashboard-layout.d.ts.map +1 -0
  872. package/dist/types/data-grid/data-grid-body.d.ts +49 -0
  873. package/dist/types/data-grid/data-grid-body.d.ts.map +1 -0
  874. package/dist/types/data-grid/data-grid-constants.d.ts +40 -0
  875. package/dist/types/data-grid/data-grid-constants.d.ts.map +1 -0
  876. package/dist/types/data-grid/data-grid-context.d.ts +180 -0
  877. package/dist/types/data-grid/data-grid-context.d.ts.map +1 -0
  878. package/dist/types/data-grid/data-grid-defaults.d.ts +9 -0
  879. package/dist/types/data-grid/data-grid-defaults.d.ts.map +1 -0
  880. package/dist/types/data-grid/data-grid-editors.d.ts +16 -0
  881. package/dist/types/data-grid/data-grid-editors.d.ts.map +1 -0
  882. package/dist/types/data-grid/data-grid-filter.d.ts +25 -0
  883. package/dist/types/data-grid/data-grid-filter.d.ts.map +1 -0
  884. package/dist/types/data-grid/data-grid-header.d.ts +8 -0
  885. package/dist/types/data-grid/data-grid-header.d.ts.map +1 -0
  886. package/dist/types/data-grid/data-grid.d.ts +6 -0
  887. package/dist/types/data-grid/data-grid.d.ts.map +1 -0
  888. package/dist/types/data-grid/data-grid.types.d.ts +330 -0
  889. package/dist/types/data-grid/data-grid.types.d.ts.map +1 -0
  890. package/dist/types/data-grid/index.d.ts +7 -0
  891. package/dist/types/data-grid/index.d.ts.map +1 -0
  892. package/dist/types/data-grid/use-data-source.d.ts +21 -0
  893. package/dist/types/data-grid/use-data-source.d.ts.map +1 -0
  894. package/dist/types/data-grid/use-model.d.ts +9 -0
  895. package/dist/types/data-grid/use-model.d.ts.map +1 -0
  896. package/dist/types/data-grid/use-persisted-grid-view.d.ts +40 -0
  897. package/dist/types/data-grid/use-persisted-grid-view.d.ts.map +1 -0
  898. package/dist/types/data-list/data-list-defaults.d.ts +10 -0
  899. package/dist/types/data-list/data-list-defaults.d.ts.map +1 -0
  900. package/dist/types/data-list/data-list-demo.d.ts +34 -0
  901. package/dist/types/data-list/data-list-demo.d.ts.map +1 -0
  902. package/dist/types/data-list/data-list.d.ts +11 -0
  903. package/dist/types/data-list/data-list.d.ts.map +1 -0
  904. package/dist/types/data-list/data-list.types.d.ts +125 -0
  905. package/dist/types/data-list/data-list.types.d.ts.map +1 -0
  906. package/dist/types/data-list/index.d.ts +4 -0
  907. package/dist/types/data-list/index.d.ts.map +1 -0
  908. package/dist/types/date-field/date-field-defaults.d.ts +26 -0
  909. package/dist/types/date-field/date-field-defaults.d.ts.map +1 -0
  910. package/dist/types/date-field/date-field-demo.d.ts +22 -0
  911. package/dist/types/date-field/date-field-demo.d.ts.map +1 -0
  912. package/dist/types/date-field/date-field.d.ts +30 -0
  913. package/dist/types/date-field/date-field.d.ts.map +1 -0
  914. package/dist/types/date-field/date-field.types.d.ts +124 -0
  915. package/dist/types/date-field/date-field.types.d.ts.map +1 -0
  916. package/dist/types/date-field/index.d.ts +4 -0
  917. package/dist/types/date-field/index.d.ts.map +1 -0
  918. package/dist/types/date-picker/date-picker-defaults.d.ts +11 -0
  919. package/dist/types/date-picker/date-picker-defaults.d.ts.map +1 -0
  920. package/dist/types/date-picker/date-picker-demo.d.ts +22 -0
  921. package/dist/types/date-picker/date-picker-demo.d.ts.map +1 -0
  922. package/dist/types/date-picker/date-picker.d.ts +22 -0
  923. package/dist/types/date-picker/date-picker.d.ts.map +1 -0
  924. package/dist/types/date-picker/date-picker.types.d.ts +100 -0
  925. package/dist/types/date-picker/date-picker.types.d.ts.map +1 -0
  926. package/dist/types/date-picker/index.d.ts +4 -0
  927. package/dist/types/date-picker/index.d.ts.map +1 -0
  928. package/dist/types/date-range-picker/date-range-picker-defaults.d.ts +11 -0
  929. package/dist/types/date-range-picker/date-range-picker-defaults.d.ts.map +1 -0
  930. package/dist/types/date-range-picker/date-range-picker-demo.d.ts +22 -0
  931. package/dist/types/date-range-picker/date-range-picker-demo.d.ts.map +1 -0
  932. package/dist/types/date-range-picker/date-range-picker.d.ts +29 -0
  933. package/dist/types/date-range-picker/date-range-picker.d.ts.map +1 -0
  934. package/dist/types/date-range-picker/date-range-picker.types.d.ts +137 -0
  935. package/dist/types/date-range-picker/date-range-picker.types.d.ts.map +1 -0
  936. package/dist/types/date-range-picker/index.d.ts +4 -0
  937. package/dist/types/date-range-picker/index.d.ts.map +1 -0
  938. package/dist/types/datetime-field/datetime-field-defaults.d.ts +17 -0
  939. package/dist/types/datetime-field/datetime-field-defaults.d.ts.map +1 -0
  940. package/dist/types/datetime-field/datetime-field-demo.d.ts +31 -0
  941. package/dist/types/datetime-field/datetime-field-demo.d.ts.map +1 -0
  942. package/dist/types/datetime-field/datetime-field.d.ts +31 -0
  943. package/dist/types/datetime-field/datetime-field.d.ts.map +1 -0
  944. package/dist/types/datetime-field/datetime-field.types.d.ts +168 -0
  945. package/dist/types/datetime-field/datetime-field.types.d.ts.map +1 -0
  946. package/dist/types/datetime-field/index.d.ts +4 -0
  947. package/dist/types/datetime-field/index.d.ts.map +1 -0
  948. package/dist/types/datetime-picker/datetime-picker-defaults.d.ts +18 -0
  949. package/dist/types/datetime-picker/datetime-picker-defaults.d.ts.map +1 -0
  950. package/dist/types/datetime-picker/datetime-picker-demo.d.ts +38 -0
  951. package/dist/types/datetime-picker/datetime-picker-demo.d.ts.map +1 -0
  952. package/dist/types/datetime-picker/datetime-picker.d.ts +28 -0
  953. package/dist/types/datetime-picker/datetime-picker.d.ts.map +1 -0
  954. package/dist/types/datetime-picker/datetime-picker.types.d.ts +166 -0
  955. package/dist/types/datetime-picker/datetime-picker.types.d.ts.map +1 -0
  956. package/dist/types/datetime-picker/index.d.ts +4 -0
  957. package/dist/types/datetime-picker/index.d.ts.map +1 -0
  958. package/dist/types/datetime-range-picker/datetime-range-picker-defaults.d.ts +20 -0
  959. package/dist/types/datetime-range-picker/datetime-range-picker-defaults.d.ts.map +1 -0
  960. package/dist/types/datetime-range-picker/datetime-range-picker-demo.d.ts +31 -0
  961. package/dist/types/datetime-range-picker/datetime-range-picker-demo.d.ts.map +1 -0
  962. package/dist/types/datetime-range-picker/datetime-range-picker.d.ts +31 -0
  963. package/dist/types/datetime-range-picker/datetime-range-picker.d.ts.map +1 -0
  964. package/dist/types/datetime-range-picker/datetime-range-picker.types.d.ts +191 -0
  965. package/dist/types/datetime-range-picker/datetime-range-picker.types.d.ts.map +1 -0
  966. package/dist/types/datetime-range-picker/index.d.ts +4 -0
  967. package/dist/types/datetime-range-picker/index.d.ts.map +1 -0
  968. package/dist/types/description-list/description-list-clipboard.d.ts +15 -0
  969. package/dist/types/description-list/description-list-clipboard.d.ts.map +1 -0
  970. package/dist/types/description-list/description-list-defaults.d.ts +10 -0
  971. package/dist/types/description-list/description-list-defaults.d.ts.map +1 -0
  972. package/dist/types/description-list/description-list-parts.d.ts +86 -0
  973. package/dist/types/description-list/description-list-parts.d.ts.map +1 -0
  974. package/dist/types/description-list/description-list.d.ts +34 -0
  975. package/dist/types/description-list/description-list.d.ts.map +1 -0
  976. package/dist/types/description-list/description-list.types.d.ts +128 -0
  977. package/dist/types/description-list/description-list.types.d.ts.map +1 -0
  978. package/dist/types/description-list/index.d.ts +6 -0
  979. package/dist/types/description-list/index.d.ts.map +1 -0
  980. package/dist/types/detail-panel/detail-panel-defaults.d.ts +11 -0
  981. package/dist/types/detail-panel/detail-panel-defaults.d.ts.map +1 -0
  982. package/dist/types/detail-panel/detail-panel-demo.d.ts +92 -0
  983. package/dist/types/detail-panel/detail-panel-demo.d.ts.map +1 -0
  984. package/dist/types/detail-panel/detail-panel-parts.d.ts +27 -0
  985. package/dist/types/detail-panel/detail-panel-parts.d.ts.map +1 -0
  986. package/dist/types/detail-panel/detail-panel.d.ts +24 -0
  987. package/dist/types/detail-panel/detail-panel.d.ts.map +1 -0
  988. package/dist/types/detail-panel/detail-panel.types.d.ts +186 -0
  989. package/dist/types/detail-panel/detail-panel.types.d.ts.map +1 -0
  990. package/dist/types/detail-panel/index.d.ts +5 -0
  991. package/dist/types/detail-panel/index.d.ts.map +1 -0
  992. package/dist/types/dialog/dialog-defaults.d.ts +14 -0
  993. package/dist/types/dialog/dialog-defaults.d.ts.map +1 -0
  994. package/dist/types/dialog/dialog-demo.d.ts +18 -0
  995. package/dist/types/dialog/dialog-demo.d.ts.map +1 -0
  996. package/dist/types/dialog/dialog-parts.d.ts +73 -0
  997. package/dist/types/dialog/dialog-parts.d.ts.map +1 -0
  998. package/dist/types/dialog/dialog.d.ts +40 -0
  999. package/dist/types/dialog/dialog.d.ts.map +1 -0
  1000. package/dist/types/dialog/dialog.types.d.ts +279 -0
  1001. package/dist/types/dialog/dialog.types.d.ts.map +1 -0
  1002. package/dist/types/dialog/index.d.ts +5 -0
  1003. package/dist/types/dialog/index.d.ts.map +1 -0
  1004. package/dist/types/divider/divider.d.ts +14 -0
  1005. package/dist/types/divider/divider.d.ts.map +1 -0
  1006. package/dist/types/divider/divider.types.d.ts +37 -0
  1007. package/dist/types/divider/divider.types.d.ts.map +1 -0
  1008. package/dist/types/divider/index.d.ts +3 -0
  1009. package/dist/types/divider/index.d.ts.map +1 -0
  1010. package/dist/types/drawer/drawer-defaults.d.ts +14 -0
  1011. package/dist/types/drawer/drawer-defaults.d.ts.map +1 -0
  1012. package/dist/types/drawer/drawer-demo.d.ts +31 -0
  1013. package/dist/types/drawer/drawer-demo.d.ts.map +1 -0
  1014. package/dist/types/drawer/drawer-parts.d.ts +52 -0
  1015. package/dist/types/drawer/drawer-parts.d.ts.map +1 -0
  1016. package/dist/types/drawer/drawer.d.ts +32 -0
  1017. package/dist/types/drawer/drawer.d.ts.map +1 -0
  1018. package/dist/types/drawer/drawer.types.d.ts +311 -0
  1019. package/dist/types/drawer/drawer.types.d.ts.map +1 -0
  1020. package/dist/types/drawer/index.d.ts +5 -0
  1021. package/dist/types/drawer/index.d.ts.map +1 -0
  1022. package/dist/types/entity-picker/entity-picker-control.d.ts +16 -0
  1023. package/dist/types/entity-picker/entity-picker-control.d.ts.map +1 -0
  1024. package/dist/types/entity-picker/entity-picker-defaults.d.ts +13 -0
  1025. package/dist/types/entity-picker/entity-picker-defaults.d.ts.map +1 -0
  1026. package/dist/types/entity-picker/entity-picker-popup.d.ts +9 -0
  1027. package/dist/types/entity-picker/entity-picker-popup.d.ts.map +1 -0
  1028. package/dist/types/entity-picker/entity-picker.d.ts +91 -0
  1029. package/dist/types/entity-picker/entity-picker.d.ts.map +1 -0
  1030. package/dist/types/entity-picker/entity-picker.types.d.ts +159 -0
  1031. package/dist/types/entity-picker/entity-picker.types.d.ts.map +1 -0
  1032. package/dist/types/entity-picker/index.d.ts +5 -0
  1033. package/dist/types/entity-picker/index.d.ts.map +1 -0
  1034. package/dist/types/event-calendar/event-calendar-context.d.ts +59 -0
  1035. package/dist/types/event-calendar/event-calendar-context.d.ts.map +1 -0
  1036. package/dist/types/event-calendar/event-calendar-defaults.d.ts +13 -0
  1037. package/dist/types/event-calendar/event-calendar-defaults.d.ts.map +1 -0
  1038. package/dist/types/event-calendar/event-calendar-demo.d.ts +42 -0
  1039. package/dist/types/event-calendar/event-calendar-demo.d.ts.map +1 -0
  1040. package/dist/types/event-calendar/event-calendar-event.d.ts +33 -0
  1041. package/dist/types/event-calendar/event-calendar-event.d.ts.map +1 -0
  1042. package/dist/types/event-calendar/event-calendar-list.d.ts +17 -0
  1043. package/dist/types/event-calendar/event-calendar-list.d.ts.map +1 -0
  1044. package/dist/types/event-calendar/event-calendar-month.d.ts +24 -0
  1045. package/dist/types/event-calendar/event-calendar-month.d.ts.map +1 -0
  1046. package/dist/types/event-calendar/event-calendar-time-grid.d.ts +17 -0
  1047. package/dist/types/event-calendar/event-calendar-time-grid.d.ts.map +1 -0
  1048. package/dist/types/event-calendar/event-calendar.d.ts +23 -0
  1049. package/dist/types/event-calendar/event-calendar.d.ts.map +1 -0
  1050. package/dist/types/event-calendar/event-calendar.types.d.ts +225 -0
  1051. package/dist/types/event-calendar/event-calendar.types.d.ts.map +1 -0
  1052. package/dist/types/event-calendar/index.d.ts +4 -0
  1053. package/dist/types/event-calendar/index.d.ts.map +1 -0
  1054. package/dist/types/field/field-context.d.ts +54 -0
  1055. package/dist/types/field/field-context.d.ts.map +1 -0
  1056. package/dist/types/field/field-defaults.d.ts +20 -0
  1057. package/dist/types/field/field-defaults.d.ts.map +1 -0
  1058. package/dist/types/field/field-demo.d.ts +26 -0
  1059. package/dist/types/field/field-demo.d.ts.map +1 -0
  1060. package/dist/types/field/field-parts.d.ts +112 -0
  1061. package/dist/types/field/field-parts.d.ts.map +1 -0
  1062. package/dist/types/field/field.d.ts +31 -0
  1063. package/dist/types/field/field.d.ts.map +1 -0
  1064. package/dist/types/field/field.types.d.ts +249 -0
  1065. package/dist/types/field/field.types.d.ts.map +1 -0
  1066. package/dist/types/field/index.d.ts +6 -0
  1067. package/dist/types/field/index.d.ts.map +1 -0
  1068. package/dist/types/field-group/field-group-parts.d.ts +30 -0
  1069. package/dist/types/field-group/field-group-parts.d.ts.map +1 -0
  1070. package/dist/types/field-group/field-group.d.ts +34 -0
  1071. package/dist/types/field-group/field-group.d.ts.map +1 -0
  1072. package/dist/types/field-group/field-group.types.d.ts +87 -0
  1073. package/dist/types/field-group/field-group.types.d.ts.map +1 -0
  1074. package/dist/types/field-group/index.d.ts +4 -0
  1075. package/dist/types/field-group/index.d.ts.map +1 -0
  1076. package/dist/types/filter-bar/filter-bar-defaults.d.ts +10 -0
  1077. package/dist/types/filter-bar/filter-bar-defaults.d.ts.map +1 -0
  1078. package/dist/types/filter-bar/filter-bar-rules.d.ts +108 -0
  1079. package/dist/types/filter-bar/filter-bar-rules.d.ts.map +1 -0
  1080. package/dist/types/filter-bar/filter-bar.d.ts +11 -0
  1081. package/dist/types/filter-bar/filter-bar.d.ts.map +1 -0
  1082. package/dist/types/filter-bar/filter-bar.types.d.ts +171 -0
  1083. package/dist/types/filter-bar/filter-bar.types.d.ts.map +1 -0
  1084. package/dist/types/filter-bar/index.d.ts +4 -0
  1085. package/dist/types/filter-bar/index.d.ts.map +1 -0
  1086. package/dist/types/form/form-context.d.ts +13 -0
  1087. package/dist/types/form/form-context.d.ts.map +1 -0
  1088. package/dist/types/form/form-defaults.d.ts +9 -0
  1089. package/dist/types/form/form-defaults.d.ts.map +1 -0
  1090. package/dist/types/form/form-demo.d.ts +22 -0
  1091. package/dist/types/form/form-demo.d.ts.map +1 -0
  1092. package/dist/types/form/form-parts.d.ts +30 -0
  1093. package/dist/types/form/form-parts.d.ts.map +1 -0
  1094. package/dist/types/form/form.d.ts +27 -0
  1095. package/dist/types/form/form.d.ts.map +1 -0
  1096. package/dist/types/form/form.types.d.ts +137 -0
  1097. package/dist/types/form/form.types.d.ts.map +1 -0
  1098. package/dist/types/form/index.d.ts +6 -0
  1099. package/dist/types/form/index.d.ts.map +1 -0
  1100. package/dist/types/fullscreen/fullscreen-defaults.d.ts +10 -0
  1101. package/dist/types/fullscreen/fullscreen-defaults.d.ts.map +1 -0
  1102. package/dist/types/fullscreen/fullscreen.d.ts +30 -0
  1103. package/dist/types/fullscreen/fullscreen.d.ts.map +1 -0
  1104. package/dist/types/fullscreen/fullscreen.types.d.ts +116 -0
  1105. package/dist/types/fullscreen/fullscreen.types.d.ts.map +1 -0
  1106. package/dist/types/fullscreen/index.d.ts +5 -0
  1107. package/dist/types/fullscreen/index.d.ts.map +1 -0
  1108. package/dist/types/fullscreen/use-fullscreen.d.ts +16 -0
  1109. package/dist/types/fullscreen/use-fullscreen.d.ts.map +1 -0
  1110. package/dist/types/grid/grid.d.ts +19 -0
  1111. package/dist/types/grid/grid.d.ts.map +1 -0
  1112. package/dist/types/grid/grid.types.d.ts +38 -0
  1113. package/dist/types/grid/grid.types.d.ts.map +1 -0
  1114. package/dist/types/grid/index.d.ts +3 -0
  1115. package/dist/types/grid/index.d.ts.map +1 -0
  1116. package/dist/types/highlight/highlight-defaults.d.ts +12 -0
  1117. package/dist/types/highlight/highlight-defaults.d.ts.map +1 -0
  1118. package/dist/types/highlight/highlight.d.ts +18 -0
  1119. package/dist/types/highlight/highlight.d.ts.map +1 -0
  1120. package/dist/types/highlight/highlight.types.d.ts +57 -0
  1121. package/dist/types/highlight/highlight.types.d.ts.map +1 -0
  1122. package/dist/types/highlight/index.d.ts +4 -0
  1123. package/dist/types/highlight/index.d.ts.map +1 -0
  1124. package/dist/types/hover-card/hover-card-defaults.d.ts +12 -0
  1125. package/dist/types/hover-card/hover-card-defaults.d.ts.map +1 -0
  1126. package/dist/types/hover-card/hover-card.d.ts +36 -0
  1127. package/dist/types/hover-card/hover-card.d.ts.map +1 -0
  1128. package/dist/types/hover-card/hover-card.types.d.ts +94 -0
  1129. package/dist/types/hover-card/hover-card.types.d.ts.map +1 -0
  1130. package/dist/types/hover-card/index.d.ts +4 -0
  1131. package/dist/types/hover-card/index.d.ts.map +1 -0
  1132. package/dist/types/i18n/index.d.ts +3 -0
  1133. package/dist/types/i18n/index.d.ts.map +1 -0
  1134. package/dist/types/i18n/slotted-provider.d.ts +30 -0
  1135. package/dist/types/i18n/slotted-provider.d.ts.map +1 -0
  1136. package/dist/types/icon/glyph.d.ts +16 -0
  1137. package/dist/types/icon/glyph.d.ts.map +1 -0
  1138. package/dist/types/icon/icon.d.ts +15 -0
  1139. package/dist/types/icon/icon.d.ts.map +1 -0
  1140. package/dist/types/icon/icon.types.d.ts +37 -0
  1141. package/dist/types/icon/icon.types.d.ts.map +1 -0
  1142. package/dist/types/icon/index.d.ts +5 -0
  1143. package/dist/types/icon/index.d.ts.map +1 -0
  1144. package/dist/types/image/image-defaults.d.ts +11 -0
  1145. package/dist/types/image/image-defaults.d.ts.map +1 -0
  1146. package/dist/types/image/image.d.ts +24 -0
  1147. package/dist/types/image/image.d.ts.map +1 -0
  1148. package/dist/types/image/image.types.d.ts +158 -0
  1149. package/dist/types/image/image.types.d.ts.map +1 -0
  1150. package/dist/types/image/index.d.ts +4 -0
  1151. package/dist/types/image/index.d.ts.map +1 -0
  1152. package/dist/types/import-export-center/import-export-center-defaults.d.ts +11 -0
  1153. package/dist/types/import-export-center/import-export-center-defaults.d.ts.map +1 -0
  1154. package/dist/types/import-export-center/import-export-center-demo.d.ts +32 -0
  1155. package/dist/types/import-export-center/import-export-center-demo.d.ts.map +1 -0
  1156. package/dist/types/import-export-center/import-export-center.d.ts +29 -0
  1157. package/dist/types/import-export-center/import-export-center.d.ts.map +1 -0
  1158. package/dist/types/import-export-center/import-export-center.types.d.ts +130 -0
  1159. package/dist/types/import-export-center/import-export-center.types.d.ts.map +1 -0
  1160. package/dist/types/import-export-center/index.d.ts +6 -0
  1161. package/dist/types/import-export-center/index.d.ts.map +1 -0
  1162. package/dist/types/import-export-center/use-job-toasts.d.ts +21 -0
  1163. package/dist/types/import-export-center/use-job-toasts.d.ts.map +1 -0
  1164. package/dist/types/index.d.ts +126 -0
  1165. package/dist/types/index.d.ts.map +1 -0
  1166. package/dist/types/inline/index.d.ts +3 -0
  1167. package/dist/types/inline/index.d.ts.map +1 -0
  1168. package/dist/types/inline/inline.d.ts +17 -0
  1169. package/dist/types/inline/inline.d.ts.map +1 -0
  1170. package/dist/types/inline/inline.types.d.ts +29 -0
  1171. package/dist/types/inline/inline.types.d.ts.map +1 -0
  1172. package/dist/types/inline-message/index.d.ts +4 -0
  1173. package/dist/types/inline-message/index.d.ts.map +1 -0
  1174. package/dist/types/inline-message/inline-message-defaults.d.ts +25 -0
  1175. package/dist/types/inline-message/inline-message-defaults.d.ts.map +1 -0
  1176. package/dist/types/inline-message/inline-message-demo.d.ts +33 -0
  1177. package/dist/types/inline-message/inline-message-demo.d.ts.map +1 -0
  1178. package/dist/types/inline-message/inline-message.d.ts +24 -0
  1179. package/dist/types/inline-message/inline-message.d.ts.map +1 -0
  1180. package/dist/types/inline-message/inline-message.types.d.ts +97 -0
  1181. package/dist/types/inline-message/inline-message.types.d.ts.map +1 -0
  1182. package/dist/types/kbd/index.d.ts +5 -0
  1183. package/dist/types/kbd/index.d.ts.map +1 -0
  1184. package/dist/types/kbd/kbd-defaults.d.ts +43 -0
  1185. package/dist/types/kbd/kbd-defaults.d.ts.map +1 -0
  1186. package/dist/types/kbd/kbd.d.ts +17 -0
  1187. package/dist/types/kbd/kbd.d.ts.map +1 -0
  1188. package/dist/types/kbd/kbd.types.d.ts +115 -0
  1189. package/dist/types/kbd/kbd.types.d.ts.map +1 -0
  1190. package/dist/types/kbd/key-element.d.ts +28 -0
  1191. package/dist/types/kbd/key-element.d.ts.map +1 -0
  1192. package/dist/types/kbd/shortcut.d.ts +18 -0
  1193. package/dist/types/kbd/shortcut.d.ts.map +1 -0
  1194. package/dist/types/link/index.d.ts +4 -0
  1195. package/dist/types/link/index.d.ts.map +1 -0
  1196. package/dist/types/link/link-defaults.d.ts +10 -0
  1197. package/dist/types/link/link-defaults.d.ts.map +1 -0
  1198. package/dist/types/link/link.d.ts +18 -0
  1199. package/dist/types/link/link.d.ts.map +1 -0
  1200. package/dist/types/link/link.types.d.ts +44 -0
  1201. package/dist/types/link/link.types.d.ts.map +1 -0
  1202. package/dist/types/list/index.d.ts +5 -0
  1203. package/dist/types/list/index.d.ts.map +1 -0
  1204. package/dist/types/list/list-defaults.d.ts +11 -0
  1205. package/dist/types/list/list-defaults.d.ts.map +1 -0
  1206. package/dist/types/list/list-parts.d.ts +23 -0
  1207. package/dist/types/list/list-parts.d.ts.map +1 -0
  1208. package/dist/types/list/list.d.ts +27 -0
  1209. package/dist/types/list/list.d.ts.map +1 -0
  1210. package/dist/types/list/list.types.d.ts +96 -0
  1211. package/dist/types/list/list.types.d.ts.map +1 -0
  1212. package/dist/types/list-item/index.d.ts +6 -0
  1213. package/dist/types/list-item/index.d.ts.map +1 -0
  1214. package/dist/types/list-item/list-item-content.d.ts +39 -0
  1215. package/dist/types/list-item/list-item-content.d.ts.map +1 -0
  1216. package/dist/types/list-item/list-item-defaults.d.ts +10 -0
  1217. package/dist/types/list-item/list-item-defaults.d.ts.map +1 -0
  1218. package/dist/types/list-item/list-item-parts.d.ts +37 -0
  1219. package/dist/types/list-item/list-item-parts.d.ts.map +1 -0
  1220. package/dist/types/list-item/list-item.d.ts +25 -0
  1221. package/dist/types/list-item/list-item.d.ts.map +1 -0
  1222. package/dist/types/list-item/list-item.types.d.ts +131 -0
  1223. package/dist/types/list-item/list-item.types.d.ts.map +1 -0
  1224. package/dist/types/listbox/index.d.ts +6 -0
  1225. package/dist/types/listbox/index.d.ts.map +1 -0
  1226. package/dist/types/listbox/listbox-context.d.ts +9 -0
  1227. package/dist/types/listbox/listbox-context.d.ts.map +1 -0
  1228. package/dist/types/listbox/listbox-defaults.d.ts +14 -0
  1229. package/dist/types/listbox/listbox-defaults.d.ts.map +1 -0
  1230. package/dist/types/listbox/listbox-parts.d.ts +65 -0
  1231. package/dist/types/listbox/listbox-parts.d.ts.map +1 -0
  1232. package/dist/types/listbox/listbox.d.ts +31 -0
  1233. package/dist/types/listbox/listbox.d.ts.map +1 -0
  1234. package/dist/types/listbox/listbox.types.d.ts +275 -0
  1235. package/dist/types/listbox/listbox.types.d.ts.map +1 -0
  1236. package/dist/types/loading-overlay/index.d.ts +4 -0
  1237. package/dist/types/loading-overlay/index.d.ts.map +1 -0
  1238. package/dist/types/loading-overlay/loading-overlay-defaults.d.ts +18 -0
  1239. package/dist/types/loading-overlay/loading-overlay-defaults.d.ts.map +1 -0
  1240. package/dist/types/loading-overlay/loading-overlay.d.ts +22 -0
  1241. package/dist/types/loading-overlay/loading-overlay.d.ts.map +1 -0
  1242. package/dist/types/loading-overlay/loading-overlay.types.d.ts +145 -0
  1243. package/dist/types/loading-overlay/loading-overlay.types.d.ts.map +1 -0
  1244. package/dist/types/loading-overlay/use-loading-visibility.d.ts +26 -0
  1245. package/dist/types/loading-overlay/use-loading-visibility.d.ts.map +1 -0
  1246. package/dist/types/markdown/index.d.ts +4 -0
  1247. package/dist/types/markdown/index.d.ts.map +1 -0
  1248. package/dist/types/markdown/markdown-defaults.d.ts +10 -0
  1249. package/dist/types/markdown/markdown-defaults.d.ts.map +1 -0
  1250. package/dist/types/markdown/markdown.d.ts +18 -0
  1251. package/dist/types/markdown/markdown.d.ts.map +1 -0
  1252. package/dist/types/markdown/markdown.types.d.ts +105 -0
  1253. package/dist/types/markdown/markdown.types.d.ts.map +1 -0
  1254. package/dist/types/menu/index.d.ts +6 -0
  1255. package/dist/types/menu/index.d.ts.map +1 -0
  1256. package/dist/types/menu/menu-defaults.d.ts +28 -0
  1257. package/dist/types/menu/menu-defaults.d.ts.map +1 -0
  1258. package/dist/types/menu/menu-items.d.ts +50 -0
  1259. package/dist/types/menu/menu-items.d.ts.map +1 -0
  1260. package/dist/types/menu/menu-parts.d.ts +23 -0
  1261. package/dist/types/menu/menu-parts.d.ts.map +1 -0
  1262. package/dist/types/menu/menu.d.ts +15 -0
  1263. package/dist/types/menu/menu.d.ts.map +1 -0
  1264. package/dist/types/menu/menu.types.d.ts +334 -0
  1265. package/dist/types/menu/menu.types.d.ts.map +1 -0
  1266. package/dist/types/menubar/index.d.ts +4 -0
  1267. package/dist/types/menubar/index.d.ts.map +1 -0
  1268. package/dist/types/menubar/menubar-defaults.d.ts +11 -0
  1269. package/dist/types/menubar/menubar-defaults.d.ts.map +1 -0
  1270. package/dist/types/menubar/menubar.d.ts +12 -0
  1271. package/dist/types/menubar/menubar.d.ts.map +1 -0
  1272. package/dist/types/menubar/menubar.types.d.ts +52 -0
  1273. package/dist/types/menubar/menubar.types.d.ts.map +1 -0
  1274. package/dist/types/message/bubble-context.d.ts +6 -0
  1275. package/dist/types/message/bubble-context.d.ts.map +1 -0
  1276. package/dist/types/message/bubble.d.ts +69 -0
  1277. package/dist/types/message/bubble.d.ts.map +1 -0
  1278. package/dist/types/message/index.d.ts +7 -0
  1279. package/dist/types/message/index.d.ts.map +1 -0
  1280. package/dist/types/message/message-defaults.d.ts +11 -0
  1281. package/dist/types/message/message-defaults.d.ts.map +1 -0
  1282. package/dist/types/message/message-demo.d.ts +36 -0
  1283. package/dist/types/message/message-demo.d.ts.map +1 -0
  1284. package/dist/types/message/message-parts.d.ts +40 -0
  1285. package/dist/types/message/message-parts.d.ts.map +1 -0
  1286. package/dist/types/message/message.d.ts +43 -0
  1287. package/dist/types/message/message.d.ts.map +1 -0
  1288. package/dist/types/message/message.types.d.ts +156 -0
  1289. package/dist/types/message/message.types.d.ts.map +1 -0
  1290. package/dist/types/message-scroller/index.d.ts +4 -0
  1291. package/dist/types/message-scroller/index.d.ts.map +1 -0
  1292. package/dist/types/message-scroller/message-scroller-defaults.d.ts +10 -0
  1293. package/dist/types/message-scroller/message-scroller-defaults.d.ts.map +1 -0
  1294. package/dist/types/message-scroller/message-scroller.d.ts +49 -0
  1295. package/dist/types/message-scroller/message-scroller.d.ts.map +1 -0
  1296. package/dist/types/message-scroller/message-scroller.types.d.ts +90 -0
  1297. package/dist/types/message-scroller/message-scroller.types.d.ts.map +1 -0
  1298. package/dist/types/multi-select/index.d.ts +7 -0
  1299. package/dist/types/multi-select/index.d.ts.map +1 -0
  1300. package/dist/types/multi-select/multi-select-chips.d.ts +16 -0
  1301. package/dist/types/multi-select/multi-select-chips.d.ts.map +1 -0
  1302. package/dist/types/multi-select/multi-select-collection.d.ts +47 -0
  1303. package/dist/types/multi-select/multi-select-collection.d.ts.map +1 -0
  1304. package/dist/types/multi-select/multi-select-defaults.d.ts +42 -0
  1305. package/dist/types/multi-select/multi-select-defaults.d.ts.map +1 -0
  1306. package/dist/types/multi-select/multi-select-items.d.ts +28 -0
  1307. package/dist/types/multi-select/multi-select-items.d.ts.map +1 -0
  1308. package/dist/types/multi-select/multi-select-parts.d.ts +26 -0
  1309. package/dist/types/multi-select/multi-select-parts.d.ts.map +1 -0
  1310. package/dist/types/multi-select/multi-select.d.ts +118 -0
  1311. package/dist/types/multi-select/multi-select.d.ts.map +1 -0
  1312. package/dist/types/multi-select/multi-select.types.d.ts +209 -0
  1313. package/dist/types/multi-select/multi-select.types.d.ts.map +1 -0
  1314. package/dist/types/navigation-menu/index.d.ts +5 -0
  1315. package/dist/types/navigation-menu/index.d.ts.map +1 -0
  1316. package/dist/types/navigation-menu/navigation-menu-defaults.d.ts +13 -0
  1317. package/dist/types/navigation-menu/navigation-menu-defaults.d.ts.map +1 -0
  1318. package/dist/types/navigation-menu/navigation-menu-parts.d.ts +45 -0
  1319. package/dist/types/navigation-menu/navigation-menu-parts.d.ts.map +1 -0
  1320. package/dist/types/navigation-menu/navigation-menu.d.ts +27 -0
  1321. package/dist/types/navigation-menu/navigation-menu.d.ts.map +1 -0
  1322. package/dist/types/navigation-menu/navigation-menu.types.d.ts +175 -0
  1323. package/dist/types/navigation-menu/navigation-menu.types.d.ts.map +1 -0
  1324. package/dist/types/notification-center/index.d.ts +4 -0
  1325. package/dist/types/notification-center/index.d.ts.map +1 -0
  1326. package/dist/types/notification-center/notification-center-defaults.d.ts +12 -0
  1327. package/dist/types/notification-center/notification-center-defaults.d.ts.map +1 -0
  1328. package/dist/types/notification-center/notification-center-demo.d.ts +32 -0
  1329. package/dist/types/notification-center/notification-center-demo.d.ts.map +1 -0
  1330. package/dist/types/notification-center/notification-center.d.ts +28 -0
  1331. package/dist/types/notification-center/notification-center.d.ts.map +1 -0
  1332. package/dist/types/notification-center/notification-center.types.d.ts +193 -0
  1333. package/dist/types/notification-center/notification-center.types.d.ts.map +1 -0
  1334. package/dist/types/number-field/index.d.ts +4 -0
  1335. package/dist/types/number-field/index.d.ts.map +1 -0
  1336. package/dist/types/number-field/number-field-defaults.d.ts +21 -0
  1337. package/dist/types/number-field/number-field-defaults.d.ts.map +1 -0
  1338. package/dist/types/number-field/number-field-demo.d.ts +22 -0
  1339. package/dist/types/number-field/number-field-demo.d.ts.map +1 -0
  1340. package/dist/types/number-field/number-field.d.ts +49 -0
  1341. package/dist/types/number-field/number-field.d.ts.map +1 -0
  1342. package/dist/types/number-field/number-field.types.d.ts +174 -0
  1343. package/dist/types/number-field/number-field.types.d.ts.map +1 -0
  1344. package/dist/types/otp-input/index.d.ts +4 -0
  1345. package/dist/types/otp-input/index.d.ts.map +1 -0
  1346. package/dist/types/otp-input/otp-input-defaults.d.ts +15 -0
  1347. package/dist/types/otp-input/otp-input-defaults.d.ts.map +1 -0
  1348. package/dist/types/otp-input/otp-input-demo.d.ts +29 -0
  1349. package/dist/types/otp-input/otp-input-demo.d.ts.map +1 -0
  1350. package/dist/types/otp-input/otp-input.d.ts +29 -0
  1351. package/dist/types/otp-input/otp-input.d.ts.map +1 -0
  1352. package/dist/types/otp-input/otp-input.types.d.ts +130 -0
  1353. package/dist/types/otp-input/otp-input.types.d.ts.map +1 -0
  1354. package/dist/types/page/index.d.ts +4 -0
  1355. package/dist/types/page/index.d.ts.map +1 -0
  1356. package/dist/types/page/page-defaults.d.ts +11 -0
  1357. package/dist/types/page/page-defaults.d.ts.map +1 -0
  1358. package/dist/types/page/page-demo.d.ts +90 -0
  1359. package/dist/types/page/page-demo.d.ts.map +1 -0
  1360. package/dist/types/page/page.d.ts +39 -0
  1361. package/dist/types/page/page.d.ts.map +1 -0
  1362. package/dist/types/page/page.types.d.ts +103 -0
  1363. package/dist/types/page/page.types.d.ts.map +1 -0
  1364. package/dist/types/page-header/index.d.ts +5 -0
  1365. package/dist/types/page-header/index.d.ts.map +1 -0
  1366. package/dist/types/page-header/page-header-defaults.d.ts +11 -0
  1367. package/dist/types/page-header/page-header-defaults.d.ts.map +1 -0
  1368. package/dist/types/page-header/page-header-parts.d.ts +113 -0
  1369. package/dist/types/page-header/page-header-parts.d.ts.map +1 -0
  1370. package/dist/types/page-header/page-header.d.ts +32 -0
  1371. package/dist/types/page-header/page-header.d.ts.map +1 -0
  1372. package/dist/types/page-header/page-header.types.d.ts +198 -0
  1373. package/dist/types/page-header/page-header.types.d.ts.map +1 -0
  1374. package/dist/types/pagination/index.d.ts +5 -0
  1375. package/dist/types/pagination/index.d.ts.map +1 -0
  1376. package/dist/types/pagination/pagination-defaults.d.ts +11 -0
  1377. package/dist/types/pagination/pagination-defaults.d.ts.map +1 -0
  1378. package/dist/types/pagination/pagination-parts.d.ts +32 -0
  1379. package/dist/types/pagination/pagination-parts.d.ts.map +1 -0
  1380. package/dist/types/pagination/pagination.d.ts +28 -0
  1381. package/dist/types/pagination/pagination.d.ts.map +1 -0
  1382. package/dist/types/pagination/pagination.types.d.ts +130 -0
  1383. package/dist/types/pagination/pagination.types.d.ts.map +1 -0
  1384. package/dist/types/popover/index.d.ts +5 -0
  1385. package/dist/types/popover/index.d.ts.map +1 -0
  1386. package/dist/types/popover/popover-defaults.d.ts +18 -0
  1387. package/dist/types/popover/popover-defaults.d.ts.map +1 -0
  1388. package/dist/types/popover/popover-demo.d.ts +32 -0
  1389. package/dist/types/popover/popover-demo.d.ts.map +1 -0
  1390. package/dist/types/popover/popover-parts.d.ts +74 -0
  1391. package/dist/types/popover/popover-parts.d.ts.map +1 -0
  1392. package/dist/types/popover/popover.d.ts +26 -0
  1393. package/dist/types/popover/popover.d.ts.map +1 -0
  1394. package/dist/types/popover/popover.types.d.ts +246 -0
  1395. package/dist/types/popover/popover.types.d.ts.map +1 -0
  1396. package/dist/types/progress-indicator/index.d.ts +6 -0
  1397. package/dist/types/progress-indicator/index.d.ts.map +1 -0
  1398. package/dist/types/progress-indicator/loader.d.ts +23 -0
  1399. package/dist/types/progress-indicator/loader.d.ts.map +1 -0
  1400. package/dist/types/progress-indicator/progress-bar.d.ts +30 -0
  1401. package/dist/types/progress-indicator/progress-bar.d.ts.map +1 -0
  1402. package/dist/types/progress-indicator/progress-circle.d.ts +25 -0
  1403. package/dist/types/progress-indicator/progress-circle.d.ts.map +1 -0
  1404. package/dist/types/progress-indicator/progress-indicator-defaults.d.ts +16 -0
  1405. package/dist/types/progress-indicator/progress-indicator-defaults.d.ts.map +1 -0
  1406. package/dist/types/progress-indicator/progress-indicator.types.d.ts +117 -0
  1407. package/dist/types/progress-indicator/progress-indicator.types.d.ts.map +1 -0
  1408. package/dist/types/progress-indicator/progress-parts.d.ts +24 -0
  1409. package/dist/types/progress-indicator/progress-parts.d.ts.map +1 -0
  1410. package/dist/types/progress-indicator/use-loading-visibility.d.ts +20 -0
  1411. package/dist/types/progress-indicator/use-loading-visibility.d.ts.map +1 -0
  1412. package/dist/types/progress-indicator/use-progress-indicator.d.ts +76 -0
  1413. package/dist/types/progress-indicator/use-progress-indicator.d.ts.map +1 -0
  1414. package/dist/types/prompt-composer/index.d.ts +4 -0
  1415. package/dist/types/prompt-composer/index.d.ts.map +1 -0
  1416. package/dist/types/prompt-composer/prompt-composer-defaults.d.ts +9 -0
  1417. package/dist/types/prompt-composer/prompt-composer-defaults.d.ts.map +1 -0
  1418. package/dist/types/prompt-composer/prompt-composer-demo.d.ts +22 -0
  1419. package/dist/types/prompt-composer/prompt-composer-demo.d.ts.map +1 -0
  1420. package/dist/types/prompt-composer/prompt-composer.d.ts +43 -0
  1421. package/dist/types/prompt-composer/prompt-composer.d.ts.map +1 -0
  1422. package/dist/types/prompt-composer/prompt-composer.types.d.ts +144 -0
  1423. package/dist/types/prompt-composer/prompt-composer.types.d.ts.map +1 -0
  1424. package/dist/types/prose/index.d.ts +6 -0
  1425. package/dist/types/prose/index.d.ts.map +1 -0
  1426. package/dist/types/prose/prose-defaults.d.ts +11 -0
  1427. package/dist/types/prose/prose-defaults.d.ts.map +1 -0
  1428. package/dist/types/prose/prose-demo.d.ts +20 -0
  1429. package/dist/types/prose/prose-demo.d.ts.map +1 -0
  1430. package/dist/types/prose/prose-parts.d.ts +34 -0
  1431. package/dist/types/prose/prose-parts.d.ts.map +1 -0
  1432. package/dist/types/prose/prose-scroll.d.ts +27 -0
  1433. package/dist/types/prose/prose-scroll.d.ts.map +1 -0
  1434. package/dist/types/prose/prose.d.ts +27 -0
  1435. package/dist/types/prose/prose.d.ts.map +1 -0
  1436. package/dist/types/prose/prose.types.d.ts +99 -0
  1437. package/dist/types/prose/prose.types.d.ts.map +1 -0
  1438. package/dist/types/radio-group/index.d.ts +5 -0
  1439. package/dist/types/radio-group/index.d.ts.map +1 -0
  1440. package/dist/types/radio-group/radio-group-defaults.d.ts +11 -0
  1441. package/dist/types/radio-group/radio-group-defaults.d.ts.map +1 -0
  1442. package/dist/types/radio-group/radio-group-parts.d.ts +15 -0
  1443. package/dist/types/radio-group/radio-group-parts.d.ts.map +1 -0
  1444. package/dist/types/radio-group/radio-group.d.ts +29 -0
  1445. package/dist/types/radio-group/radio-group.d.ts.map +1 -0
  1446. package/dist/types/radio-group/radio-group.types.d.ts +128 -0
  1447. package/dist/types/radio-group/radio-group.types.d.ts.map +1 -0
  1448. package/dist/types/rating/index.d.ts +6 -0
  1449. package/dist/types/rating/index.d.ts.map +1 -0
  1450. package/dist/types/rating/rating-defaults.d.ts +11 -0
  1451. package/dist/types/rating/rating-defaults.d.ts.map +1 -0
  1452. package/dist/types/rating/rating-display.d.ts +30 -0
  1453. package/dist/types/rating/rating-display.d.ts.map +1 -0
  1454. package/dist/types/rating/rating-summary.d.ts +20 -0
  1455. package/dist/types/rating/rating-summary.d.ts.map +1 -0
  1456. package/dist/types/rating/rating.d.ts +29 -0
  1457. package/dist/types/rating/rating.d.ts.map +1 -0
  1458. package/dist/types/rating/rating.types.d.ts +172 -0
  1459. package/dist/types/rating/rating.types.d.ts.map +1 -0
  1460. package/dist/types/result-state/index.d.ts +5 -0
  1461. package/dist/types/result-state/index.d.ts.map +1 -0
  1462. package/dist/types/result-state/result-state-defaults.d.ts +15 -0
  1463. package/dist/types/result-state/result-state-defaults.d.ts.map +1 -0
  1464. package/dist/types/result-state/result-state-demo.d.ts +37 -0
  1465. package/dist/types/result-state/result-state-demo.d.ts.map +1 -0
  1466. package/dist/types/result-state/result-state-parts.d.ts +61 -0
  1467. package/dist/types/result-state/result-state-parts.d.ts.map +1 -0
  1468. package/dist/types/result-state/result-state.d.ts +5 -0
  1469. package/dist/types/result-state/result-state.d.ts.map +1 -0
  1470. package/dist/types/result-state/result-state.types.d.ts +115 -0
  1471. package/dist/types/result-state/result-state.types.d.ts.map +1 -0
  1472. package/dist/types/saved-views/index.d.ts +4 -0
  1473. package/dist/types/saved-views/index.d.ts.map +1 -0
  1474. package/dist/types/saved-views/saved-views-demo.d.ts +36 -0
  1475. package/dist/types/saved-views/saved-views-demo.d.ts.map +1 -0
  1476. package/dist/types/saved-views/saved-views.d.ts +12 -0
  1477. package/dist/types/saved-views/saved-views.d.ts.map +1 -0
  1478. package/dist/types/saved-views/saved-views.types.d.ts +83 -0
  1479. package/dist/types/saved-views/saved-views.types.d.ts.map +1 -0
  1480. package/dist/types/saved-views/use-persisted-saved-views.d.ts +10 -0
  1481. package/dist/types/saved-views/use-persisted-saved-views.d.ts.map +1 -0
  1482. package/dist/types/scroll-area/index.d.ts +4 -0
  1483. package/dist/types/scroll-area/index.d.ts.map +1 -0
  1484. package/dist/types/scroll-area/scroll-area-defaults.d.ts +18 -0
  1485. package/dist/types/scroll-area/scroll-area-defaults.d.ts.map +1 -0
  1486. package/dist/types/scroll-area/scroll-area-demo.d.ts +38 -0
  1487. package/dist/types/scroll-area/scroll-area-demo.d.ts.map +1 -0
  1488. package/dist/types/scroll-area/scroll-area.d.ts +35 -0
  1489. package/dist/types/scroll-area/scroll-area.d.ts.map +1 -0
  1490. package/dist/types/scroll-area/scroll-area.types.d.ts +112 -0
  1491. package/dist/types/scroll-area/scroll-area.types.d.ts.map +1 -0
  1492. package/dist/types/section/index.d.ts +5 -0
  1493. package/dist/types/section/index.d.ts.map +1 -0
  1494. package/dist/types/section/section-defaults.d.ts +10 -0
  1495. package/dist/types/section/section-defaults.d.ts.map +1 -0
  1496. package/dist/types/section/section-parts.d.ts +28 -0
  1497. package/dist/types/section/section-parts.d.ts.map +1 -0
  1498. package/dist/types/section/section.d.ts +29 -0
  1499. package/dist/types/section/section.d.ts.map +1 -0
  1500. package/dist/types/section/section.types.d.ts +83 -0
  1501. package/dist/types/section/section.types.d.ts.map +1 -0
  1502. package/dist/types/segmented-control/index.d.ts +5 -0
  1503. package/dist/types/segmented-control/index.d.ts.map +1 -0
  1504. package/dist/types/segmented-control/segmented-control-defaults.d.ts +11 -0
  1505. package/dist/types/segmented-control/segmented-control-defaults.d.ts.map +1 -0
  1506. package/dist/types/segmented-control/segmented-control-parts.d.ts +17 -0
  1507. package/dist/types/segmented-control/segmented-control-parts.d.ts.map +1 -0
  1508. package/dist/types/segmented-control/segmented-control.d.ts +30 -0
  1509. package/dist/types/segmented-control/segmented-control.d.ts.map +1 -0
  1510. package/dist/types/segmented-control/segmented-control.types.d.ts +116 -0
  1511. package/dist/types/segmented-control/segmented-control.types.d.ts.map +1 -0
  1512. package/dist/types/select/index.d.ts +7 -0
  1513. package/dist/types/select/index.d.ts.map +1 -0
  1514. package/dist/types/select/select-collection.d.ts +59 -0
  1515. package/dist/types/select/select-collection.d.ts.map +1 -0
  1516. package/dist/types/select/select-defaults.d.ts +41 -0
  1517. package/dist/types/select/select-defaults.d.ts.map +1 -0
  1518. package/dist/types/select/select-items.d.ts +46 -0
  1519. package/dist/types/select/select-items.d.ts.map +1 -0
  1520. package/dist/types/select/select-parts.d.ts +54 -0
  1521. package/dist/types/select/select-parts.d.ts.map +1 -0
  1522. package/dist/types/select/select-tags.d.ts +47 -0
  1523. package/dist/types/select/select-tags.d.ts.map +1 -0
  1524. package/dist/types/select/select.d.ts +101 -0
  1525. package/dist/types/select/select.d.ts.map +1 -0
  1526. package/dist/types/select/select.types.d.ts +264 -0
  1527. package/dist/types/select/select.types.d.ts.map +1 -0
  1528. package/dist/types/side-navigation/index.d.ts +5 -0
  1529. package/dist/types/side-navigation/index.d.ts.map +1 -0
  1530. package/dist/types/side-navigation/side-navigation-defaults.d.ts +13 -0
  1531. package/dist/types/side-navigation/side-navigation-defaults.d.ts.map +1 -0
  1532. package/dist/types/side-navigation/side-navigation-parts.d.ts +64 -0
  1533. package/dist/types/side-navigation/side-navigation-parts.d.ts.map +1 -0
  1534. package/dist/types/side-navigation/side-navigation.d.ts +32 -0
  1535. package/dist/types/side-navigation/side-navigation.d.ts.map +1 -0
  1536. package/dist/types/side-navigation/side-navigation.types.d.ts +248 -0
  1537. package/dist/types/side-navigation/side-navigation.types.d.ts.map +1 -0
  1538. package/dist/types/skeleton/index.d.ts +6 -0
  1539. package/dist/types/skeleton/index.d.ts.map +1 -0
  1540. package/dist/types/skeleton/skeleton-defaults.d.ts +17 -0
  1541. package/dist/types/skeleton/skeleton-defaults.d.ts.map +1 -0
  1542. package/dist/types/skeleton/skeleton-region-context.d.ts +14 -0
  1543. package/dist/types/skeleton/skeleton-region-context.d.ts.map +1 -0
  1544. package/dist/types/skeleton/skeleton-region.d.ts +28 -0
  1545. package/dist/types/skeleton/skeleton-region.d.ts.map +1 -0
  1546. package/dist/types/skeleton/skeleton-text.d.ts +20 -0
  1547. package/dist/types/skeleton/skeleton-text.d.ts.map +1 -0
  1548. package/dist/types/skeleton/skeleton.d.ts +29 -0
  1549. package/dist/types/skeleton/skeleton.d.ts.map +1 -0
  1550. package/dist/types/skeleton/skeleton.types.d.ts +110 -0
  1551. package/dist/types/skeleton/skeleton.types.d.ts.map +1 -0
  1552. package/dist/types/skeleton/use-loading-visibility.d.ts +18 -0
  1553. package/dist/types/skeleton/use-loading-visibility.d.ts.map +1 -0
  1554. package/dist/types/slider/index.d.ts +4 -0
  1555. package/dist/types/slider/index.d.ts.map +1 -0
  1556. package/dist/types/slider/slider-defaults.d.ts +15 -0
  1557. package/dist/types/slider/slider-defaults.d.ts.map +1 -0
  1558. package/dist/types/slider/slider-demo.d.ts +22 -0
  1559. package/dist/types/slider/slider-demo.d.ts.map +1 -0
  1560. package/dist/types/slider/slider.d.ts +27 -0
  1561. package/dist/types/slider/slider.d.ts.map +1 -0
  1562. package/dist/types/slider/slider.types.d.ts +134 -0
  1563. package/dist/types/slider/slider.types.d.ts.map +1 -0
  1564. package/dist/types/sparkline/index.d.ts +4 -0
  1565. package/dist/types/sparkline/index.d.ts.map +1 -0
  1566. package/dist/types/sparkline/sparkline-defaults.d.ts +11 -0
  1567. package/dist/types/sparkline/sparkline-defaults.d.ts.map +1 -0
  1568. package/dist/types/sparkline/sparkline.d.ts +18 -0
  1569. package/dist/types/sparkline/sparkline.d.ts.map +1 -0
  1570. package/dist/types/sparkline/sparkline.types.d.ts +68 -0
  1571. package/dist/types/sparkline/sparkline.types.d.ts.map +1 -0
  1572. package/dist/types/split-button/index.d.ts +5 -0
  1573. package/dist/types/split-button/index.d.ts.map +1 -0
  1574. package/dist/types/split-button/split-button-defaults.d.ts +15 -0
  1575. package/dist/types/split-button/split-button-defaults.d.ts.map +1 -0
  1576. package/dist/types/split-button/split-button-parts.d.ts +50 -0
  1577. package/dist/types/split-button/split-button-parts.d.ts.map +1 -0
  1578. package/dist/types/split-button/split-button.d.ts +21 -0
  1579. package/dist/types/split-button/split-button.d.ts.map +1 -0
  1580. package/dist/types/split-button/split-button.types.d.ts +101 -0
  1581. package/dist/types/split-button/split-button.types.d.ts.map +1 -0
  1582. package/dist/types/splitter/index.d.ts +4 -0
  1583. package/dist/types/splitter/index.d.ts.map +1 -0
  1584. package/dist/types/splitter/splitter-defaults.d.ts +16 -0
  1585. package/dist/types/splitter/splitter-defaults.d.ts.map +1 -0
  1586. package/dist/types/splitter/splitter-demo.d.ts +27 -0
  1587. package/dist/types/splitter/splitter-demo.d.ts.map +1 -0
  1588. package/dist/types/splitter/splitter.d.ts +14 -0
  1589. package/dist/types/splitter/splitter.d.ts.map +1 -0
  1590. package/dist/types/splitter/splitter.types.d.ts +106 -0
  1591. package/dist/types/splitter/splitter.types.d.ts.map +1 -0
  1592. package/dist/types/stack/index.d.ts +3 -0
  1593. package/dist/types/stack/index.d.ts.map +1 -0
  1594. package/dist/types/stack/stack.d.ts +17 -0
  1595. package/dist/types/stack/stack.d.ts.map +1 -0
  1596. package/dist/types/stack/stack.types.d.ts +26 -0
  1597. package/dist/types/stack/stack.types.d.ts.map +1 -0
  1598. package/dist/types/stat-card/index.d.ts +8 -0
  1599. package/dist/types/stat-card/index.d.ts.map +1 -0
  1600. package/dist/types/stat-card/stat-card-context.d.ts +12 -0
  1601. package/dist/types/stat-card/stat-card-context.d.ts.map +1 -0
  1602. package/dist/types/stat-card/stat-card-defaults.d.ts +10 -0
  1603. package/dist/types/stat-card/stat-card-defaults.d.ts.map +1 -0
  1604. package/dist/types/stat-card/stat-card-delta.d.ts +15 -0
  1605. package/dist/types/stat-card/stat-card-delta.d.ts.map +1 -0
  1606. package/dist/types/stat-card/stat-card-parts.d.ts +33 -0
  1607. package/dist/types/stat-card/stat-card-parts.d.ts.map +1 -0
  1608. package/dist/types/stat-card/stat-card-value.d.ts +11 -0
  1609. package/dist/types/stat-card/stat-card-value.d.ts.map +1 -0
  1610. package/dist/types/stat-card/stat-card.d.ts +20 -0
  1611. package/dist/types/stat-card/stat-card.d.ts.map +1 -0
  1612. package/dist/types/stat-card/stat-card.types.d.ts +140 -0
  1613. package/dist/types/stat-card/stat-card.types.d.ts.map +1 -0
  1614. package/dist/types/status-indicator/index.d.ts +5 -0
  1615. package/dist/types/status-indicator/index.d.ts.map +1 -0
  1616. package/dist/types/status-indicator/status-indicator-defaults.d.ts +10 -0
  1617. package/dist/types/status-indicator/status-indicator-defaults.d.ts.map +1 -0
  1618. package/dist/types/status-indicator/status-indicator.constants.d.ts +10 -0
  1619. package/dist/types/status-indicator/status-indicator.constants.d.ts.map +1 -0
  1620. package/dist/types/status-indicator/status-indicator.d.ts +20 -0
  1621. package/dist/types/status-indicator/status-indicator.d.ts.map +1 -0
  1622. package/dist/types/status-indicator/status-indicator.types.d.ts +83 -0
  1623. package/dist/types/status-indicator/status-indicator.types.d.ts.map +1 -0
  1624. package/dist/types/stepper/index.d.ts +6 -0
  1625. package/dist/types/stepper/index.d.ts.map +1 -0
  1626. package/dist/types/stepper/stepper-defaults.d.ts +11 -0
  1627. package/dist/types/stepper/stepper-defaults.d.ts.map +1 -0
  1628. package/dist/types/stepper/stepper-parts.d.ts +54 -0
  1629. package/dist/types/stepper/stepper-parts.d.ts.map +1 -0
  1630. package/dist/types/stepper/stepper.d.ts +50 -0
  1631. package/dist/types/stepper/stepper.d.ts.map +1 -0
  1632. package/dist/types/stepper/stepper.types.d.ts +133 -0
  1633. package/dist/types/stepper/stepper.types.d.ts.map +1 -0
  1634. package/dist/types/switch/index.d.ts +4 -0
  1635. package/dist/types/switch/index.d.ts.map +1 -0
  1636. package/dist/types/switch/switch-defaults.d.ts +27 -0
  1637. package/dist/types/switch/switch-defaults.d.ts.map +1 -0
  1638. package/dist/types/switch/switch-demo.d.ts +22 -0
  1639. package/dist/types/switch/switch-demo.d.ts.map +1 -0
  1640. package/dist/types/switch/switch.d.ts +48 -0
  1641. package/dist/types/switch/switch.d.ts.map +1 -0
  1642. package/dist/types/switch/switch.types.d.ts +118 -0
  1643. package/dist/types/switch/switch.types.d.ts.map +1 -0
  1644. package/dist/types/table/index.d.ts +7 -0
  1645. package/dist/types/table/index.d.ts.map +1 -0
  1646. package/dist/types/table/table-content.d.ts +18 -0
  1647. package/dist/types/table/table-content.d.ts.map +1 -0
  1648. package/dist/types/table/table-defaults.d.ts +10 -0
  1649. package/dist/types/table/table-defaults.d.ts.map +1 -0
  1650. package/dist/types/table/table-filter.d.ts +47 -0
  1651. package/dist/types/table/table-filter.d.ts.map +1 -0
  1652. package/dist/types/table/table-parts.d.ts +114 -0
  1653. package/dist/types/table/table-parts.d.ts.map +1 -0
  1654. package/dist/types/table/table.d.ts +33 -0
  1655. package/dist/types/table/table.d.ts.map +1 -0
  1656. package/dist/types/table/table.types.d.ts +439 -0
  1657. package/dist/types/table/table.types.d.ts.map +1 -0
  1658. package/dist/types/table-of-contents/index.d.ts +6 -0
  1659. package/dist/types/table-of-contents/index.d.ts.map +1 -0
  1660. package/dist/types/table-of-contents/table-of-contents-context.d.ts +15 -0
  1661. package/dist/types/table-of-contents/table-of-contents-context.d.ts.map +1 -0
  1662. package/dist/types/table-of-contents/table-of-contents-defaults.d.ts +13 -0
  1663. package/dist/types/table-of-contents/table-of-contents-defaults.d.ts.map +1 -0
  1664. package/dist/types/table-of-contents/table-of-contents-demo.d.ts +26 -0
  1665. package/dist/types/table-of-contents/table-of-contents-demo.d.ts.map +1 -0
  1666. package/dist/types/table-of-contents/table-of-contents-parts.d.ts +17 -0
  1667. package/dist/types/table-of-contents/table-of-contents-parts.d.ts.map +1 -0
  1668. package/dist/types/table-of-contents/table-of-contents.d.ts +31 -0
  1669. package/dist/types/table-of-contents/table-of-contents.d.ts.map +1 -0
  1670. package/dist/types/table-of-contents/table-of-contents.types.d.ts +157 -0
  1671. package/dist/types/table-of-contents/table-of-contents.types.d.ts.map +1 -0
  1672. package/dist/types/tabs/index.d.ts +5 -0
  1673. package/dist/types/tabs/index.d.ts.map +1 -0
  1674. package/dist/types/tabs/tabs-defaults.d.ts +10 -0
  1675. package/dist/types/tabs/tabs-defaults.d.ts.map +1 -0
  1676. package/dist/types/tabs/tabs-parts.d.ts +52 -0
  1677. package/dist/types/tabs/tabs-parts.d.ts.map +1 -0
  1678. package/dist/types/tabs/tabs.d.ts +33 -0
  1679. package/dist/types/tabs/tabs.d.ts.map +1 -0
  1680. package/dist/types/tabs/tabs.types.d.ts +209 -0
  1681. package/dist/types/tabs/tabs.types.d.ts.map +1 -0
  1682. package/dist/types/tag/index.d.ts +8 -0
  1683. package/dist/types/tag/index.d.ts.map +1 -0
  1684. package/dist/types/tag/tag-button.d.ts +14 -0
  1685. package/dist/types/tag/tag-button.d.ts.map +1 -0
  1686. package/dist/types/tag/tag-chip.d.ts +120 -0
  1687. package/dist/types/tag/tag-chip.d.ts.map +1 -0
  1688. package/dist/types/tag/tag-defaults.d.ts +15 -0
  1689. package/dist/types/tag/tag-defaults.d.ts.map +1 -0
  1690. package/dist/types/tag/tag-demo.d.ts +32 -0
  1691. package/dist/types/tag/tag-demo.d.ts.map +1 -0
  1692. package/dist/types/tag/tag-group.d.ts +22 -0
  1693. package/dist/types/tag/tag-group.d.ts.map +1 -0
  1694. package/dist/types/tag/tag-link.d.ts +16 -0
  1695. package/dist/types/tag/tag-link.d.ts.map +1 -0
  1696. package/dist/types/tag/tag-toggle.d.ts +20 -0
  1697. package/dist/types/tag/tag-toggle.d.ts.map +1 -0
  1698. package/dist/types/tag/tag.d.ts +17 -0
  1699. package/dist/types/tag/tag.d.ts.map +1 -0
  1700. package/dist/types/tag/tag.types.d.ts +153 -0
  1701. package/dist/types/tag/tag.types.d.ts.map +1 -0
  1702. package/dist/types/tags-input/index.d.ts +4 -0
  1703. package/dist/types/tags-input/index.d.ts.map +1 -0
  1704. package/dist/types/tags-input/tags-input-chips.d.ts +42 -0
  1705. package/dist/types/tags-input/tags-input-chips.d.ts.map +1 -0
  1706. package/dist/types/tags-input/tags-input-defaults.d.ts +30 -0
  1707. package/dist/types/tags-input/tags-input-defaults.d.ts.map +1 -0
  1708. package/dist/types/tags-input/tags-input.d.ts +28 -0
  1709. package/dist/types/tags-input/tags-input.d.ts.map +1 -0
  1710. package/dist/types/tags-input/tags-input.types.d.ts +139 -0
  1711. package/dist/types/tags-input/tags-input.types.d.ts.map +1 -0
  1712. package/dist/types/text-field/index.d.ts +4 -0
  1713. package/dist/types/text-field/index.d.ts.map +1 -0
  1714. package/dist/types/text-field/text-field-defaults.d.ts +17 -0
  1715. package/dist/types/text-field/text-field-defaults.d.ts.map +1 -0
  1716. package/dist/types/text-field/text-field-demo.d.ts +22 -0
  1717. package/dist/types/text-field/text-field-demo.d.ts.map +1 -0
  1718. package/dist/types/text-field/text-field.d.ts +37 -0
  1719. package/dist/types/text-field/text-field.d.ts.map +1 -0
  1720. package/dist/types/text-field/text-field.types.d.ts +156 -0
  1721. package/dist/types/text-field/text-field.types.d.ts.map +1 -0
  1722. package/dist/types/textarea/index.d.ts +4 -0
  1723. package/dist/types/textarea/index.d.ts.map +1 -0
  1724. package/dist/types/textarea/textarea-defaults.d.ts +11 -0
  1725. package/dist/types/textarea/textarea-defaults.d.ts.map +1 -0
  1726. package/dist/types/textarea/textarea-demo.d.ts +22 -0
  1727. package/dist/types/textarea/textarea-demo.d.ts.map +1 -0
  1728. package/dist/types/textarea/textarea.d.ts +25 -0
  1729. package/dist/types/textarea/textarea.d.ts.map +1 -0
  1730. package/dist/types/textarea/textarea.types.d.ts +88 -0
  1731. package/dist/types/textarea/textarea.types.d.ts.map +1 -0
  1732. package/dist/types/theme/index.d.ts +3 -0
  1733. package/dist/types/theme/index.d.ts.map +1 -0
  1734. package/dist/types/theme/theme-scope.d.ts +26 -0
  1735. package/dist/types/theme/theme-scope.d.ts.map +1 -0
  1736. package/dist/types/time-field/index.d.ts +4 -0
  1737. package/dist/types/time-field/index.d.ts.map +1 -0
  1738. package/dist/types/time-field/time-field-defaults.d.ts +17 -0
  1739. package/dist/types/time-field/time-field-defaults.d.ts.map +1 -0
  1740. package/dist/types/time-field/time-field-demo.d.ts +31 -0
  1741. package/dist/types/time-field/time-field-demo.d.ts.map +1 -0
  1742. package/dist/types/time-field/time-field.d.ts +31 -0
  1743. package/dist/types/time-field/time-field.d.ts.map +1 -0
  1744. package/dist/types/time-field/time-field.types.d.ts +134 -0
  1745. package/dist/types/time-field/time-field.types.d.ts.map +1 -0
  1746. package/dist/types/time-picker/index.d.ts +4 -0
  1747. package/dist/types/time-picker/index.d.ts.map +1 -0
  1748. package/dist/types/time-picker/time-picker-defaults.d.ts +27 -0
  1749. package/dist/types/time-picker/time-picker-defaults.d.ts.map +1 -0
  1750. package/dist/types/time-picker/time-picker.d.ts +22 -0
  1751. package/dist/types/time-picker/time-picker.d.ts.map +1 -0
  1752. package/dist/types/time-picker/time-picker.types.d.ts +126 -0
  1753. package/dist/types/time-picker/time-picker.types.d.ts.map +1 -0
  1754. package/dist/types/time-range-picker/index.d.ts +4 -0
  1755. package/dist/types/time-range-picker/index.d.ts.map +1 -0
  1756. package/dist/types/time-range-picker/time-range-picker-defaults.d.ts +18 -0
  1757. package/dist/types/time-range-picker/time-range-picker-defaults.d.ts.map +1 -0
  1758. package/dist/types/time-range-picker/time-range-picker-demo.d.ts +31 -0
  1759. package/dist/types/time-range-picker/time-range-picker-demo.d.ts.map +1 -0
  1760. package/dist/types/time-range-picker/time-range-picker.d.ts +35 -0
  1761. package/dist/types/time-range-picker/time-range-picker.d.ts.map +1 -0
  1762. package/dist/types/time-range-picker/time-range-picker.types.d.ts +170 -0
  1763. package/dist/types/time-range-picker/time-range-picker.types.d.ts.map +1 -0
  1764. package/dist/types/timeline/index.d.ts +6 -0
  1765. package/dist/types/timeline/index.d.ts.map +1 -0
  1766. package/dist/types/timeline/timeline-context.d.ts +12 -0
  1767. package/dist/types/timeline/timeline-context.d.ts.map +1 -0
  1768. package/dist/types/timeline/timeline-defaults.d.ts +11 -0
  1769. package/dist/types/timeline/timeline-defaults.d.ts.map +1 -0
  1770. package/dist/types/timeline/timeline-parts.d.ts +56 -0
  1771. package/dist/types/timeline/timeline-parts.d.ts.map +1 -0
  1772. package/dist/types/timeline/timeline.d.ts +28 -0
  1773. package/dist/types/timeline/timeline.d.ts.map +1 -0
  1774. package/dist/types/timeline/timeline.types.d.ts +206 -0
  1775. package/dist/types/timeline/timeline.types.d.ts.map +1 -0
  1776. package/dist/types/toast/index.d.ts +5 -0
  1777. package/dist/types/toast/index.d.ts.map +1 -0
  1778. package/dist/types/toast/toast-defaults.d.ts +41 -0
  1779. package/dist/types/toast/toast-defaults.d.ts.map +1 -0
  1780. package/dist/types/toast/toast-demo.d.ts +26 -0
  1781. package/dist/types/toast/toast-demo.d.ts.map +1 -0
  1782. package/dist/types/toast/toast-parts.d.ts +44 -0
  1783. package/dist/types/toast/toast-parts.d.ts.map +1 -0
  1784. package/dist/types/toast/toast.d.ts +42 -0
  1785. package/dist/types/toast/toast.d.ts.map +1 -0
  1786. package/dist/types/toast/toast.types.d.ts +163 -0
  1787. package/dist/types/toast/toast.types.d.ts.map +1 -0
  1788. package/dist/types/toggle/index.d.ts +4 -0
  1789. package/dist/types/toggle/index.d.ts.map +1 -0
  1790. package/dist/types/toggle/toggle-defaults.d.ts +11 -0
  1791. package/dist/types/toggle/toggle-defaults.d.ts.map +1 -0
  1792. package/dist/types/toggle/toggle.d.ts +17 -0
  1793. package/dist/types/toggle/toggle.d.ts.map +1 -0
  1794. package/dist/types/toggle/toggle.types.d.ts +66 -0
  1795. package/dist/types/toggle/toggle.types.d.ts.map +1 -0
  1796. package/dist/types/toggle-group/index.d.ts +5 -0
  1797. package/dist/types/toggle-group/index.d.ts.map +1 -0
  1798. package/dist/types/toggle-group/toggle-group-defaults.d.ts +10 -0
  1799. package/dist/types/toggle-group/toggle-group-defaults.d.ts.map +1 -0
  1800. package/dist/types/toggle-group/toggle-group-parts.d.ts +13 -0
  1801. package/dist/types/toggle-group/toggle-group-parts.d.ts.map +1 -0
  1802. package/dist/types/toggle-group/toggle-group.d.ts +31 -0
  1803. package/dist/types/toggle-group/toggle-group.d.ts.map +1 -0
  1804. package/dist/types/toggle-group/toggle-group.types.d.ts +110 -0
  1805. package/dist/types/toggle-group/toggle-group.types.d.ts.map +1 -0
  1806. package/dist/types/toolbar/index.d.ts +8 -0
  1807. package/dist/types/toolbar/index.d.ts.map +1 -0
  1808. package/dist/types/toolbar/toolbar-context.d.ts +42 -0
  1809. package/dist/types/toolbar/toolbar-context.d.ts.map +1 -0
  1810. package/dist/types/toolbar/toolbar-defaults.d.ts +10 -0
  1811. package/dist/types/toolbar/toolbar-defaults.d.ts.map +1 -0
  1812. package/dist/types/toolbar/toolbar-overflow.d.ts +23 -0
  1813. package/dist/types/toolbar/toolbar-overflow.d.ts.map +1 -0
  1814. package/dist/types/toolbar/toolbar-parts.d.ts +49 -0
  1815. package/dist/types/toolbar/toolbar-parts.d.ts.map +1 -0
  1816. package/dist/types/toolbar/toolbar.d.ts +32 -0
  1817. package/dist/types/toolbar/toolbar.d.ts.map +1 -0
  1818. package/dist/types/toolbar/toolbar.types.d.ts +123 -0
  1819. package/dist/types/toolbar/toolbar.types.d.ts.map +1 -0
  1820. package/dist/types/tooltip/index.d.ts +5 -0
  1821. package/dist/types/tooltip/index.d.ts.map +1 -0
  1822. package/dist/types/tooltip/tooltip-defaults.d.ts +39 -0
  1823. package/dist/types/tooltip/tooltip-defaults.d.ts.map +1 -0
  1824. package/dist/types/tooltip/tooltip-demo.d.ts +33 -0
  1825. package/dist/types/tooltip/tooltip-demo.d.ts.map +1 -0
  1826. package/dist/types/tooltip/tooltip-parts.d.ts +39 -0
  1827. package/dist/types/tooltip/tooltip-parts.d.ts.map +1 -0
  1828. package/dist/types/tooltip/tooltip.d.ts +27 -0
  1829. package/dist/types/tooltip/tooltip.d.ts.map +1 -0
  1830. package/dist/types/tooltip/tooltip.types.d.ts +260 -0
  1831. package/dist/types/tooltip/tooltip.types.d.ts.map +1 -0
  1832. package/dist/types/top-navigation/index.d.ts +5 -0
  1833. package/dist/types/top-navigation/index.d.ts.map +1 -0
  1834. package/dist/types/top-navigation/top-navigation-defaults.d.ts +13 -0
  1835. package/dist/types/top-navigation/top-navigation-defaults.d.ts.map +1 -0
  1836. package/dist/types/top-navigation/top-navigation-parts.d.ts +83 -0
  1837. package/dist/types/top-navigation/top-navigation-parts.d.ts.map +1 -0
  1838. package/dist/types/top-navigation/top-navigation.d.ts +40 -0
  1839. package/dist/types/top-navigation/top-navigation.d.ts.map +1 -0
  1840. package/dist/types/top-navigation/top-navigation.types.d.ts +271 -0
  1841. package/dist/types/top-navigation/top-navigation.types.d.ts.map +1 -0
  1842. package/dist/types/tour/index.d.ts +5 -0
  1843. package/dist/types/tour/index.d.ts.map +1 -0
  1844. package/dist/types/tour/tour-defaults.d.ts +17 -0
  1845. package/dist/types/tour/tour-defaults.d.ts.map +1 -0
  1846. package/dist/types/tour/tour-parts.d.ts +55 -0
  1847. package/dist/types/tour/tour-parts.d.ts.map +1 -0
  1848. package/dist/types/tour/tour.d.ts +25 -0
  1849. package/dist/types/tour/tour.d.ts.map +1 -0
  1850. package/dist/types/tour/tour.types.d.ts +232 -0
  1851. package/dist/types/tour/tour.types.d.ts.map +1 -0
  1852. package/dist/types/transfer/index.d.ts +4 -0
  1853. package/dist/types/transfer/index.d.ts.map +1 -0
  1854. package/dist/types/transfer/transfer-defaults.d.ts +10 -0
  1855. package/dist/types/transfer/transfer-defaults.d.ts.map +1 -0
  1856. package/dist/types/transfer/transfer.d.ts +5 -0
  1857. package/dist/types/transfer/transfer.d.ts.map +1 -0
  1858. package/dist/types/transfer/transfer.types.d.ts +157 -0
  1859. package/dist/types/transfer/transfer.types.d.ts.map +1 -0
  1860. package/dist/types/tree/index.d.ts +6 -0
  1861. package/dist/types/tree/index.d.ts.map +1 -0
  1862. package/dist/types/tree/tree-context.d.ts +19 -0
  1863. package/dist/types/tree/tree-context.d.ts.map +1 -0
  1864. package/dist/types/tree/tree-defaults.d.ts +10 -0
  1865. package/dist/types/tree/tree-defaults.d.ts.map +1 -0
  1866. package/dist/types/tree/tree-parts.d.ts +28 -0
  1867. package/dist/types/tree/tree-parts.d.ts.map +1 -0
  1868. package/dist/types/tree/tree.d.ts +24 -0
  1869. package/dist/types/tree/tree.d.ts.map +1 -0
  1870. package/dist/types/tree/tree.types.d.ts +322 -0
  1871. package/dist/types/tree/tree.types.d.ts.map +1 -0
  1872. package/dist/types/typography/heading-level.d.ts +12 -0
  1873. package/dist/types/typography/heading-level.d.ts.map +1 -0
  1874. package/dist/types/typography/heading.d.ts +293 -0
  1875. package/dist/types/typography/heading.d.ts.map +1 -0
  1876. package/dist/types/typography/index.d.ts +5 -0
  1877. package/dist/types/typography/index.d.ts.map +1 -0
  1878. package/dist/types/typography/text.d.ts +12 -0
  1879. package/dist/types/typography/text.d.ts.map +1 -0
  1880. package/dist/types/typography/typography.attributes.d.ts +18 -0
  1881. package/dist/types/typography/typography.attributes.d.ts.map +1 -0
  1882. package/dist/types/typography/typography.types.d.ts +49 -0
  1883. package/dist/types/typography/typography.types.d.ts.map +1 -0
  1884. package/dist/types/upload/index.d.ts +4 -0
  1885. package/dist/types/upload/index.d.ts.map +1 -0
  1886. package/dist/types/upload/upload-defaults.d.ts +20 -0
  1887. package/dist/types/upload/upload-defaults.d.ts.map +1 -0
  1888. package/dist/types/upload/upload-demo.d.ts +138 -0
  1889. package/dist/types/upload/upload-demo.d.ts.map +1 -0
  1890. package/dist/types/upload/upload-viewer.d.ts +34 -0
  1891. package/dist/types/upload/upload-viewer.d.ts.map +1 -0
  1892. package/dist/types/upload/upload.d.ts +19 -0
  1893. package/dist/types/upload/upload.d.ts.map +1 -0
  1894. package/dist/types/upload/upload.types.d.ts +151 -0
  1895. package/dist/types/upload/upload.types.d.ts.map +1 -0
  1896. package/dist/types/visually-hidden/index.d.ts +3 -0
  1897. package/dist/types/visually-hidden/index.d.ts.map +1 -0
  1898. package/dist/types/visually-hidden/visually-hidden.d.ts +14 -0
  1899. package/dist/types/visually-hidden/visually-hidden.d.ts.map +1 -0
  1900. package/dist/types/visually-hidden/visually-hidden.types.d.ts +21 -0
  1901. package/dist/types/visually-hidden/visually-hidden.types.d.ts.map +1 -0
  1902. package/dist/types/wizard/index.d.ts +6 -0
  1903. package/dist/types/wizard/index.d.ts.map +1 -0
  1904. package/dist/types/wizard/wizard-context.d.ts +12 -0
  1905. package/dist/types/wizard/wizard-context.d.ts.map +1 -0
  1906. package/dist/types/wizard/wizard-defaults.d.ts +16 -0
  1907. package/dist/types/wizard/wizard-defaults.d.ts.map +1 -0
  1908. package/dist/types/wizard/wizard-parts.d.ts +47 -0
  1909. package/dist/types/wizard/wizard-parts.d.ts.map +1 -0
  1910. package/dist/types/wizard/wizard.d.ts +27 -0
  1911. package/dist/types/wizard/wizard.d.ts.map +1 -0
  1912. package/dist/types/wizard/wizard.types.d.ts +228 -0
  1913. package/dist/types/wizard/wizard.types.d.ts.map +1 -0
  1914. package/dist/typography-B2iaigEC.js +92 -0
  1915. package/dist/typography.js +2 -0
  1916. package/dist/upload-Bq_UiyMr.js +613 -0
  1917. package/dist/upload.js +2 -0
  1918. package/dist/visually-hidden-CE6u5JLW.js +14 -0
  1919. package/dist/visually-hidden.js +2 -0
  1920. package/dist/wizard-B4GrlEqh.js +815 -0
  1921. package/dist/wizard.js +2 -0
  1922. package/package.json +558 -3
@@ -0,0 +1,1687 @@
1
+ {
2
+ "family": "data-grid",
3
+ "ui": "data-grid",
4
+ "binding": "react",
5
+ "catalog": {
6
+ "group": "Data display",
7
+ "summary": "Table that sorts, filters and selects records."
8
+ },
9
+ "axes": {
10
+ "variant": [
11
+ "plain",
12
+ "ruled",
13
+ "framed"
14
+ ],
15
+ "striped": [
16
+ true,
17
+ false
18
+ ],
19
+ "stickyHeader": [
20
+ true,
21
+ false
22
+ ],
23
+ "stickyTo": [
24
+ "scroll",
25
+ "page"
26
+ ],
27
+ "selectionMode": [
28
+ "none",
29
+ "single",
30
+ "multiple",
31
+ "range"
32
+ ],
33
+ "editMode": [
34
+ "cell",
35
+ "row"
36
+ ],
37
+ "mode": [
38
+ "client",
39
+ "server"
40
+ ],
41
+ "filterRow": [
42
+ true,
43
+ false
44
+ ],
45
+ "virtualize": [
46
+ "auto",
47
+ true,
48
+ false
49
+ ],
50
+ "columnOverflow": [
51
+ "auto",
52
+ "popin",
53
+ "scroll"
54
+ ],
55
+ "activatable": [
56
+ true,
57
+ false
58
+ ],
59
+ "align": [
60
+ "start",
61
+ "center",
62
+ "end"
63
+ ],
64
+ "numeric": [
65
+ true,
66
+ false
67
+ ],
68
+ "text": [
69
+ "wrap",
70
+ "truncate",
71
+ "nowrap"
72
+ ],
73
+ "density": [
74
+ "comfortable",
75
+ "compact",
76
+ "dense"
77
+ ]
78
+ },
79
+ "members": {
80
+ "data-grid": {
81
+ "nativeElement": "div",
82
+ "defaults": {
83
+ "variant": "ruled",
84
+ "striped": false,
85
+ "stickyHeader": true,
86
+ "stickyTo": "scroll",
87
+ "selectionMode": "none",
88
+ "editMode": "cell",
89
+ "filterRow": false,
90
+ "virtualize": "auto",
91
+ "columnOverflow": "auto",
92
+ "activatable": false,
93
+ "align": "start",
94
+ "numeric": false,
95
+ "text": "truncate",
96
+ "loading": false,
97
+ "overscan": 6,
98
+ "skeletonRows": 8,
99
+ "filterDebounce": 300,
100
+ "loadMoreThreshold": 20,
101
+ "pageSizes": [
102
+ 25,
103
+ 50,
104
+ 100
105
+ ]
106
+ },
107
+ "capabilities": [
108
+ "sort",
109
+ "filter",
110
+ "columns",
111
+ "selection",
112
+ "current",
113
+ "open",
114
+ "virtualization",
115
+ "overflow",
116
+ "appearance",
117
+ "arrangement",
118
+ "content",
119
+ "loading",
120
+ "live",
121
+ "wiring"
122
+ ],
123
+ "states": [
124
+ "default",
125
+ "hover",
126
+ "active",
127
+ "focus-visible",
128
+ "selected",
129
+ "current",
130
+ "expanded",
131
+ "disabled",
132
+ "loading",
133
+ "invalid",
134
+ "readonly",
135
+ "dragging",
136
+ "drop-target",
137
+ "open"
138
+ ],
139
+ "parts": [
140
+ "root",
141
+ "scroll",
142
+ "head",
143
+ "header-row",
144
+ "column-group",
145
+ "column-header",
146
+ "sort",
147
+ "column-description",
148
+ "column-actions",
149
+ "column-help",
150
+ "column-menu",
151
+ "column-menu-description",
152
+ "resizer",
153
+ "drop-indicator",
154
+ "filter-row",
155
+ "filter-cell",
156
+ "filter",
157
+ "filter-panel",
158
+ "filter-condition",
159
+ "filter-operator",
160
+ "filter-operand",
161
+ "filter-join",
162
+ "filter-actions",
163
+ "body",
164
+ "pinned-rows",
165
+ "row",
166
+ "row-header",
167
+ "cell",
168
+ "editor",
169
+ "selection",
170
+ "expander",
171
+ "detail",
172
+ "popin-header",
173
+ "popin",
174
+ "popin-field",
175
+ "popin-label",
176
+ "popin-value",
177
+ "group-row",
178
+ "group-toggle",
179
+ "tree-toggle",
180
+ "row-handle",
181
+ "summary",
182
+ "summary-cell",
183
+ "empty",
184
+ "loader",
185
+ "footer",
186
+ "actions"
187
+ ]
188
+ }
189
+ },
190
+ "docs": {
191
+ "dataGrid": {
192
+ "imports": {
193
+ "source": "import { DataGrid, DataGridDefaultsProvider, type DataGridColumn } from '@slotted/react';\nimport type { GridColumn, GridQuery, GridColumnState } from '@slotted/core/grid';\nimport { applyQuery, emptyQuery, toGridParams, fromGridParams } from '@slotted/core/grid';"
194
+ },
195
+ "anatomy": [
196
+ {
197
+ "part": "root",
198
+ "element": "div[role=\"grid\"]",
199
+ "required": true,
200
+ "purpose": "The frame and the widget: data-ui=\"data-grid\", every axis, aria-rowcount, aria-colcount, aria-multiselectable, aria-busy, and the column template as --slotted-data-grid-template."
201
+ },
202
+ {
203
+ "part": "scroll",
204
+ "element": "div",
205
+ "required": true,
206
+ "purpose": "The scroller on both axes, and the window the virtualiser measures. Carries data-overflowing, data-at-start and data-at-end while the columns overflow."
207
+ },
208
+ {
209
+ "part": "head",
210
+ "element": "div[role=\"rowgroup\"]",
211
+ "required": true,
212
+ "purpose": "The header rows, sticky to the top of the scroller by default."
213
+ },
214
+ {
215
+ "part": "header-row",
216
+ "element": "div[role=\"row\"]",
217
+ "required": true,
218
+ "purpose": "One row of the header: the column groups, or the column names."
219
+ },
220
+ {
221
+ "part": "column-group",
222
+ "element": "div[role=\"columnheader\"]",
223
+ "required": false,
224
+ "purpose": "A group heading spanning its columns through aria-colspan."
225
+ },
226
+ {
227
+ "part": "column-header",
228
+ "element": "div[role=\"columnheader\"]",
229
+ "required": true,
230
+ "purpose": "A column’s name and its controls. Carries aria-sort on the first sort key, data-sorted, data-filtered, data-pinned, data-dragging, data-drop-target and data-resizing. The name truncates, and a name its box cuts opens a hint with the whole of it — shown rather than read, because the header already states the words."
231
+ },
232
+ {
233
+ "part": "sort",
234
+ "element": "span",
235
+ "required": false,
236
+ "purpose": "The direction mark on a sorted column, with data-index when the order holds more than one key."
237
+ },
238
+ {
239
+ "part": "column-description",
240
+ "element": "span",
241
+ "required": false,
242
+ "purpose": "The column’s description, visually hidden, referenced by the header’s aria-describedby and by the column menu’s; present whenever the column has a description."
243
+ },
244
+ {
245
+ "part": "column-actions",
246
+ "element": "span",
247
+ "required": false,
248
+ "purpose": "The slot at the trailing edge holding the column help, the filter trigger and the column menu. F2 on the header enters it, Tab cycles it, Escape leaves it."
249
+ },
250
+ {
251
+ "part": "column-help",
252
+ "element": "button",
253
+ "required": false,
254
+ "purpose": "The circled question mark on a column with a description or a help node, always shown. Opens a popover by click, Enter or Space — never by hover — holding both."
255
+ },
256
+ {
257
+ "part": "column-menu",
258
+ "element": "button",
259
+ "required": false,
260
+ "purpose": "Opens the column’s menu: sort, filter, pin, fit, fit all, hide, manage."
261
+ },
262
+ {
263
+ "part": "column-menu-description",
264
+ "element": "div[aria-hidden]",
265
+ "required": false,
266
+ "purpose": "The description again, as a muted caption atop the column menu; hidden from the reader, who hears it once through the menu’s aria-describedby."
267
+ },
268
+ {
269
+ "part": "resizer",
270
+ "element": "div[aria-hidden]",
271
+ "required": false,
272
+ "purpose": "The pointer’s handle on the trailing edge; a double press fits the column."
273
+ },
274
+ {
275
+ "part": "drop-indicator",
276
+ "element": "div",
277
+ "required": false,
278
+ "purpose": "The line between two columns while one is dragged."
279
+ },
280
+ {
281
+ "part": "filter-row",
282
+ "element": "div[role=\"row\"]",
283
+ "required": false,
284
+ "purpose": "The row under the header, with filterRow, holding one operand per filterable column."
285
+ },
286
+ {
287
+ "part": "filter-cell",
288
+ "element": "div[role=\"gridcell\"]",
289
+ "required": false,
290
+ "purpose": "One cell of the filter row; data-filtered while its column has a rule."
291
+ },
292
+ {
293
+ "part": "filter",
294
+ "element": "button",
295
+ "required": false,
296
+ "purpose": "The funnel on a filtered column, and the shortest way back to its panel."
297
+ },
298
+ {
299
+ "part": "filter-panel",
300
+ "element": "div",
301
+ "required": false,
302
+ "purpose": "The compact panel in a popover, carrying data-ui itself because it is rendered outside the root."
303
+ },
304
+ {
305
+ "part": "filter-condition",
306
+ "element": "div",
307
+ "required": false,
308
+ "purpose": "One line of the panel: the operator and its operand(s); data-operands says how many."
309
+ },
310
+ {
311
+ "part": "filter-operator",
312
+ "element": "div",
313
+ "required": false,
314
+ "purpose": "The operator chooser: a select in the panel, a symbol button in the row."
315
+ },
316
+ {
317
+ "part": "filter-operand",
318
+ "element": "div",
319
+ "required": false,
320
+ "purpose": "The operand control(s), with data-kind and data-range for a between."
321
+ },
322
+ {
323
+ "part": "filter-join",
324
+ "element": "div",
325
+ "required": false,
326
+ "purpose": "And / Or between the two conditions of the panel."
327
+ },
328
+ {
329
+ "part": "filter-actions",
330
+ "element": "div",
331
+ "required": false,
332
+ "purpose": "Clear and Apply."
333
+ },
334
+ {
335
+ "part": "body",
336
+ "element": "div[role=\"rowgroup\"]",
337
+ "required": true,
338
+ "purpose": "The rows; carries the virtual window’s total height and start offset."
339
+ },
340
+ {
341
+ "part": "pinned-rows",
342
+ "element": "div[role=\"rowgroup\"]",
343
+ "required": false,
344
+ "purpose": "Rows held under the head or over the summary, out of the query."
345
+ },
346
+ {
347
+ "part": "row",
348
+ "element": "div[role=\"row\"]",
349
+ "required": true,
350
+ "purpose": "One record: aria-rowindex, aria-selected, data-selected, data-current, data-expanded, data-editing, data-disabled."
351
+ },
352
+ {
353
+ "part": "row-header",
354
+ "element": "div[role=\"rowheader\"]",
355
+ "required": false,
356
+ "purpose": "The cell of the column marked rowHeader, which a screen reader repeats for the record."
357
+ },
358
+ {
359
+ "part": "cell",
360
+ "element": "div[role=\"gridcell\"]",
361
+ "required": true,
362
+ "purpose": "One value: aria-colindex, data-align, data-numeric, data-text, data-pinned, data-current, data-in-range, data-range-edge, data-editing, data-invalid, data-loading, data-readonly."
363
+ },
364
+ {
365
+ "part": "editor",
366
+ "element": "div",
367
+ "required": false,
368
+ "purpose": "The control editing a cell, plain and sm, filling it."
369
+ },
370
+ {
371
+ "part": "selection",
372
+ "element": "div[role=\"gridcell\"]",
373
+ "required": false,
374
+ "purpose": "The checkbox column, always pinned to the start; in the header it selects every row the query left."
375
+ },
376
+ {
377
+ "part": "expander",
378
+ "element": "button",
379
+ "required": false,
380
+ "purpose": "Opens a row’s detail; aria-expanded and aria-controls."
381
+ },
382
+ {
383
+ "part": "detail",
384
+ "element": "div[role=\"row\"]",
385
+ "required": false,
386
+ "purpose": "The open detail: one cell spanning every column, held to the frame’s width."
387
+ },
388
+ {
389
+ "part": "popin-header",
390
+ "element": "div[role=\"columnheader\"]",
391
+ "required": false,
392
+ "purpose": "The pop-in’s column, last in the header row while columns are out of space: messages.popinHeader, visually hidden, with no track."
393
+ },
394
+ {
395
+ "part": "popin",
396
+ "element": "div[role=\"gridcell\"]",
397
+ "required": false,
398
+ "purpose": "The last cell of a record’s row and of the summary while columns are out of space: the row’s second line, every track, held to the frame’s width; aria-colindex is the last."
399
+ },
400
+ {
401
+ "part": "popin-field",
402
+ "element": "div",
403
+ "required": false,
404
+ "purpose": "One column in the pop-in, in the order of the columns: its label over its value."
405
+ },
406
+ {
407
+ "part": "popin-label",
408
+ "element": "span",
409
+ "required": false,
410
+ "purpose": "The column’s label, in the small muted type; left out for a column with none."
411
+ },
412
+ {
413
+ "part": "popin-value",
414
+ "element": "div",
415
+ "required": false,
416
+ "purpose": "The value, drawn by the column’s cell renderer with the cell’s own context; an editable column is read only here."
417
+ },
418
+ {
419
+ "part": "group-row",
420
+ "element": "div[role=\"row\"]",
421
+ "required": false,
422
+ "purpose": "A group heading: aria-level, aria-expanded, the value, the count, the aggregates."
423
+ },
424
+ {
425
+ "part": "group-toggle",
426
+ "element": "button",
427
+ "required": false,
428
+ "purpose": "Opens and closes a group."
429
+ },
430
+ {
431
+ "part": "tree-toggle",
432
+ "element": "button",
433
+ "required": false,
434
+ "purpose": "Opens and closes a tree row’s children; a leaf keeps its room empty."
435
+ },
436
+ {
437
+ "part": "row-handle",
438
+ "element": "button",
439
+ "required": false,
440
+ "purpose": "The grip a row is dragged by; disabled while the query is not at rest."
441
+ },
442
+ {
443
+ "part": "summary",
444
+ "element": "div[role=\"rowgroup\"]",
445
+ "required": false,
446
+ "purpose": "The aggregates of the whole query, pinned to the end."
447
+ },
448
+ {
449
+ "part": "summary-cell",
450
+ "element": "div[role=\"gridcell\"]",
451
+ "required": false,
452
+ "purpose": "One aggregate."
453
+ },
454
+ {
455
+ "part": "empty",
456
+ "element": "div",
457
+ "required": false,
458
+ "purpose": "The result-state for no rows, no results or an error, held to the frame’s width."
459
+ },
460
+ {
461
+ "part": "loader",
462
+ "element": "div[role=\"rowgroup\"]",
463
+ "required": false,
464
+ "purpose": "Skeleton rows on a first load."
465
+ },
466
+ {
467
+ "part": "footer",
468
+ "element": "div",
469
+ "required": false,
470
+ "purpose": "The bar under the grid: the range, the consumer’s pagination, load more."
471
+ },
472
+ {
473
+ "part": "actions",
474
+ "element": "div",
475
+ "required": false,
476
+ "purpose": "Row actions inside a cell of kind actions, revealed by hover and by the cursor."
477
+ }
478
+ ],
479
+ "api": [
480
+ {
481
+ "name": "rows",
482
+ "type": "readonly Row[]",
483
+ "defaultValue": "—",
484
+ "appliesTo": "DataGrid",
485
+ "description": "The records; the grid never mutates them. Left out when a dataSource answers for them."
486
+ },
487
+ {
488
+ "name": "rowKey",
489
+ "type": "keyof Row | (row) => string",
490
+ "defaultValue": "—",
491
+ "appliesTo": "DataGrid",
492
+ "description": "A field name or a function: the key every state model names a row by."
493
+ },
494
+ {
495
+ "name": "columns",
496
+ "type": "GridColumn<Row>[]",
497
+ "defaultValue": "—",
498
+ "appliesTo": "DataGrid",
499
+ "description": "The column model: id, label, description, kind, accessor, format, compare, width, minWidth, maxWidth, flex, priority, sortable, filterable, searchable, editable, resizable, reorderable, hideable, rowHeader, options, aggregate, validate, parse — and help, a node for the column’s help popover."
500
+ },
501
+ {
502
+ "name": "description",
503
+ "type": "string",
504
+ "defaultValue": "—",
505
+ "appliesTo": "DataGridColumn",
506
+ "description": "What the column is: the header’s accessible description, the caption atop its menu and the first line of its help popover."
507
+ },
508
+ {
509
+ "name": "help",
510
+ "type": "ReactNode",
511
+ "defaultValue": "—",
512
+ "appliesTo": "DataGridColumn",
513
+ "description": "The column’s own help, under the description in the popover the column-help button opens. Its presence alone draws the button."
514
+ },
515
+ {
516
+ "name": "priority",
517
+ "type": "number",
518
+ "defaultValue": "—",
519
+ "appliesTo": "DataGridColumn",
520
+ "description": "The lower, the longer the column stays when the frame is too narrow. A column without one leaves before every numbered one; the identity column and an actions column never leave."
521
+ },
522
+ {
523
+ "name": "popin",
524
+ "type": "boolean",
525
+ "defaultValue": "true",
526
+ "appliesTo": "DataGridColumn",
527
+ "description": "Whether a column with no room moves into the row’s pop-in; false hides it instead."
528
+ },
529
+ {
530
+ "name": "columnGroups",
531
+ "type": "GridColumnGroup[]",
532
+ "defaultValue": "—",
533
+ "appliesTo": "DataGrid",
534
+ "description": "Headings spanning columns, drawn as a row above the names."
535
+ },
536
+ {
537
+ "name": "mode",
538
+ "type": "'client' | 'server'",
539
+ "defaultValue": "inferred",
540
+ "appliesTo": "DataGrid",
541
+ "description": "client applies the query to rows; server draws rows as given. server when totalCount or hasMore is present."
542
+ },
543
+ {
544
+ "name": "totalCount",
545
+ "type": "number",
546
+ "defaultValue": "—",
547
+ "appliesTo": "DataGrid",
548
+ "description": "The whole set’s size in server mode; aria-rowcount and the range read it."
549
+ },
550
+ {
551
+ "name": "hasMore",
552
+ "type": "boolean",
553
+ "defaultValue": "—",
554
+ "appliesTo": "DataGrid",
555
+ "description": "Whether a page past this one exists when the total is unknown; the footer offers Load more."
556
+ },
557
+ {
558
+ "name": "loading",
559
+ "type": "boolean",
560
+ "defaultValue": "false",
561
+ "appliesTo": "DataGrid",
562
+ "description": "Skeleton rows with no rows to keep; aria-busy and a dimmed body over rows already shown."
563
+ },
564
+ {
565
+ "name": "error",
566
+ "type": "string | null",
567
+ "defaultValue": "—",
568
+ "appliesTo": "DataGrid",
569
+ "description": "The message of a failed load; draws the error state with Try again when onRetry is set."
570
+ },
571
+ {
572
+ "name": "disabledKeys",
573
+ "type": "string[]",
574
+ "defaultValue": "—",
575
+ "appliesTo": "DataGrid",
576
+ "description": "Rows that are neither selectable nor editable, drawn with data-disabled."
577
+ },
578
+ {
579
+ "name": "query",
580
+ "type": "GridQuery",
581
+ "defaultValue": "—",
582
+ "appliesTo": "DataGrid",
583
+ "description": "sort, filter, search, page and group in one object. Present puts the query in controlled mode."
584
+ },
585
+ {
586
+ "name": "defaultQuery",
587
+ "type": "GridQuery",
588
+ "defaultValue": "emptyQuery()",
589
+ "appliesTo": "DataGrid",
590
+ "description": "The query an uncontrolled grid starts from, read once."
591
+ },
592
+ {
593
+ "name": "onQueryChange",
594
+ "type": "(query, request) => void",
595
+ "defaultValue": "—",
596
+ "appliesTo": "DataGrid",
597
+ "description": "Asked before the query moves; the request carries change: sort | filter | search | page | group, the reason, and cancel()."
598
+ },
599
+ {
600
+ "name": "columnState",
601
+ "type": "GridColumnState",
602
+ "defaultValue": "—",
603
+ "appliesTo": "DataGrid",
604
+ "description": "order, widths, hidden and pinned. Present puts the arrangement in controlled mode; it is normalised against columns."
605
+ },
606
+ {
607
+ "name": "defaultColumnState",
608
+ "type": "Partial<GridColumnState>",
609
+ "defaultValue": "—",
610
+ "appliesTo": "DataGrid",
611
+ "description": "The arrangement an uncontrolled grid starts from, read once."
612
+ },
613
+ {
614
+ "name": "onColumnStateChange",
615
+ "type": "(state, request) => void",
616
+ "defaultValue": "—",
617
+ "appliesTo": "DataGrid",
618
+ "description": "Asked before the arrangement moves; the request carries change: order | width | hidden | pinned."
619
+ },
620
+ {
621
+ "name": "onManageColumns",
622
+ "type": "() => void",
623
+ "defaultValue": "—",
624
+ "appliesTo": "DataGrid",
625
+ "description": "Called by the column menu’s Manage columns; the application opens its column-manager."
626
+ },
627
+ {
628
+ "name": "onOutOfSpaceChange",
629
+ "type": "(outOfSpace: GridOutOfSpace) => void",
630
+ "defaultValue": "—",
631
+ "appliesTo": "DataGrid",
632
+ "description": "Called when the columns a narrow frame took out by priority change — those in the pop-in and those hidden. Never part of columnState."
633
+ },
634
+ {
635
+ "name": "density",
636
+ "type": "'comfortable' | 'compact' | 'dense' | null",
637
+ "defaultValue": "the page’s",
638
+ "appliesTo": "DataGrid",
639
+ "description": "This grid’s own density, written as data-slotted-density on the root; absent or null, the page’s."
640
+ },
641
+ {
642
+ "name": "selectionMode",
643
+ "type": "'none' | 'single' | 'multiple' | 'range'",
644
+ "defaultValue": "none",
645
+ "appliesTo": "DataGrid",
646
+ "description": "Rows, one or many, with the checkbox column in multiple; or a rectangle of cells."
647
+ },
648
+ {
649
+ "name": "value",
650
+ "type": "string | string[] | null",
651
+ "defaultValue": "—",
652
+ "appliesTo": "DataGrid",
653
+ "description": "The selected row (single) or rows (multiple). Present puts the selection in controlled mode."
654
+ },
655
+ {
656
+ "name": "defaultValue",
657
+ "type": "string | string[] | null",
658
+ "defaultValue": "—",
659
+ "appliesTo": "DataGrid",
660
+ "description": "The selection an uncontrolled grid starts from."
661
+ },
662
+ {
663
+ "name": "onValueChange",
664
+ "type": "(value, request) => void",
665
+ "defaultValue": "—",
666
+ "appliesTo": "DataGrid",
667
+ "description": "Asked before the selection moves, with pointer, keyboard, select, clear or programmatic."
668
+ },
669
+ {
670
+ "name": "range",
671
+ "type": "GridRange | null",
672
+ "defaultValue": "—",
673
+ "appliesTo": "DataGrid",
674
+ "description": "The cell rectangle as anchor and focus, in range mode. Present puts it in controlled mode."
675
+ },
676
+ {
677
+ "name": "defaultRange",
678
+ "type": "GridRange | null",
679
+ "defaultValue": "—",
680
+ "appliesTo": "DataGrid",
681
+ "description": "The rectangle an uncontrolled grid starts from."
682
+ },
683
+ {
684
+ "name": "onRangeChange",
685
+ "type": "(range, request) => void",
686
+ "defaultValue": "—",
687
+ "appliesTo": "DataGrid",
688
+ "description": "Asked before the rectangle moves, with pointer, keyboard, clear or programmatic."
689
+ },
690
+ {
691
+ "name": "current",
692
+ "type": "GridCell | null",
693
+ "defaultValue": "—",
694
+ "appliesTo": "DataGrid",
695
+ "description": "Where the cursor stands: a row key (or header, filter, summary, group:<key>) and a column id. Present puts the cursor in controlled mode."
696
+ },
697
+ {
698
+ "name": "defaultCurrent",
699
+ "type": "GridCell | null",
700
+ "defaultValue": "—",
701
+ "appliesTo": "DataGrid",
702
+ "description": "Where an uncontrolled cursor starts."
703
+ },
704
+ {
705
+ "name": "onCurrentChange",
706
+ "type": "(cell, request) => void",
707
+ "defaultValue": "—",
708
+ "appliesTo": "DataGrid",
709
+ "description": "Asked before the cursor moves, with pointer, keyboard or programmatic."
710
+ },
711
+ {
712
+ "name": "expanded",
713
+ "type": "string[]",
714
+ "defaultValue": "—",
715
+ "appliesTo": "DataGrid",
716
+ "description": "The rows whose detail is open. Present puts it in controlled mode."
717
+ },
718
+ {
719
+ "name": "defaultExpanded",
720
+ "type": "string[]",
721
+ "defaultValue": "—",
722
+ "appliesTo": "DataGrid",
723
+ "description": "The open details an uncontrolled grid starts with."
724
+ },
725
+ {
726
+ "name": "onExpandedChange",
727
+ "type": "(keys, request) => void",
728
+ "defaultValue": "—",
729
+ "appliesTo": "DataGrid",
730
+ "description": "Asked before a detail opens or closes."
731
+ },
732
+ {
733
+ "name": "expandedGroups",
734
+ "type": "string[] | 'all'",
735
+ "defaultValue": "—",
736
+ "appliesTo": "DataGrid",
737
+ "description": "The open groups, or all. Present puts it in controlled mode."
738
+ },
739
+ {
740
+ "name": "defaultExpandedGroups",
741
+ "type": "string[] | 'all'",
742
+ "defaultValue": "all",
743
+ "appliesTo": "DataGrid",
744
+ "description": "The open groups an uncontrolled grid starts with: every group."
745
+ },
746
+ {
747
+ "name": "onExpandedGroupsChange",
748
+ "type": "(keys, request) => void",
749
+ "defaultValue": "—",
750
+ "appliesTo": "DataGrid",
751
+ "description": "Asked before a group opens or closes."
752
+ },
753
+ {
754
+ "name": "expandable",
755
+ "type": "boolean | (row) => boolean",
756
+ "defaultValue": "true with renderDetail",
757
+ "appliesTo": "DataGrid",
758
+ "description": "Which rows have a detail."
759
+ },
760
+ {
761
+ "name": "editMode",
762
+ "type": "'cell' | 'row'",
763
+ "defaultValue": "cell",
764
+ "appliesTo": "DataGrid",
765
+ "description": "One cell at a time, or every editable cell of the row."
766
+ },
767
+ {
768
+ "name": "onEditStart",
769
+ "type": "(cell) => void",
770
+ "defaultValue": "—",
771
+ "appliesTo": "DataGrid",
772
+ "description": "An editor opened."
773
+ },
774
+ {
775
+ "name": "onEditCommit",
776
+ "type": "(commit) => void | Promise<void>",
777
+ "defaultValue": "—",
778
+ "appliesTo": "DataGrid",
779
+ "description": "A draft committed: key, column, value, previous, row, reason and every change of the row. A rejected promise reopens the editor with the draft and the error."
780
+ },
781
+ {
782
+ "name": "onEditCancel",
783
+ "type": "(cell) => void",
784
+ "defaultValue": "—",
785
+ "appliesTo": "DataGrid",
786
+ "description": "A draft cancelled."
787
+ },
788
+ {
789
+ "name": "activatable",
790
+ "type": "boolean",
791
+ "defaultValue": "false",
792
+ "appliesTo": "DataGrid",
793
+ "description": "A double press or Enter on a text cell reports the row through onActivate."
794
+ },
795
+ {
796
+ "name": "onActivate",
797
+ "type": "(event) => void",
798
+ "defaultValue": "—",
799
+ "appliesTo": "DataGrid",
800
+ "description": "The row’s key, the reason and the event."
801
+ },
802
+ {
803
+ "name": "filterRow",
804
+ "type": "boolean",
805
+ "defaultValue": "false",
806
+ "appliesTo": "DataGrid",
807
+ "description": "The row of operands under the header."
808
+ },
809
+ {
810
+ "name": "filterDebounce",
811
+ "type": "number",
812
+ "defaultValue": "300",
813
+ "appliesTo": "DataGrid",
814
+ "description": "Milliseconds a text or number operand in the filter row waits before it applies."
815
+ },
816
+ {
817
+ "name": "virtualize",
818
+ "type": "'auto' | boolean",
819
+ "defaultValue": "auto",
820
+ "appliesTo": "DataGrid",
821
+ "description": "auto windows rows above a hundred and middle columns above twenty."
822
+ },
823
+ {
824
+ "name": "rowHeight",
825
+ "type": "number | 'auto'",
826
+ "defaultValue": "density",
827
+ "appliesTo": "DataGrid",
828
+ "description": "Pixels per row, read once from the first row when unstated; auto measures every row, capped by --slotted-data-grid-row-max-block-size. While a pop-in is drawn every row is measured, as under auto."
829
+ },
830
+ {
831
+ "name": "columnOverflow",
832
+ "type": "'auto' | 'popin' | 'scroll'",
833
+ "defaultValue": "auto",
834
+ "appliesTo": "DataGrid",
835
+ "description": "What a frame too narrow for the template does: popin moves columns into each row’s pop-in by priority; scroll keeps them and scrolls sideways; auto pops in on a frame under 600px, or under 1024px when the main pointer is coarse — a phone, a small tablet — and scrolls elsewhere, where a mouse or a trackpad scrolls and the columns keep their layout."
836
+ },
837
+ {
838
+ "name": "overscan",
839
+ "type": "number",
840
+ "defaultValue": "6",
841
+ "appliesTo": "DataGrid",
842
+ "description": "Rows mounted past each edge of the window."
843
+ },
844
+ {
845
+ "name": "tree",
846
+ "type": "{ parentKey, column?, hasChildren? }",
847
+ "defaultValue": "—",
848
+ "appliesTo": "DataGrid",
849
+ "description": "Rows as a tree, each naming its parent by key; the open branches are expanded and the root is a treegrid."
850
+ },
851
+ {
852
+ "name": "onLoadChildren",
853
+ "type": "({ key, row }) => void",
854
+ "defaultValue": "—",
855
+ "appliesTo": "DataGrid",
856
+ "description": "Called when a branch hasChildren says has children opens and none are in rows."
857
+ },
858
+ {
859
+ "name": "dataSource",
860
+ "type": "{ getRows(query, { signal }), cacheSize? }",
861
+ "defaultValue": "—",
862
+ "appliesTo": "DataGrid",
863
+ "description": "The grid asks for its own rows per query, aborting the request before, keeping answers by query; server mode with its own loading and error."
864
+ },
865
+ {
866
+ "name": "pinnedRows",
867
+ "type": "{ top?: string[], bottom?: string[] }",
868
+ "defaultValue": "—",
869
+ "appliesTo": "DataGrid",
870
+ "description": "Rows held at the top or the bottom of the body, out of the query and always on screen."
871
+ },
872
+ {
873
+ "name": "rowsReorderable",
874
+ "type": "boolean",
875
+ "defaultValue": "false",
876
+ "appliesTo": "DataGrid",
877
+ "description": "A grip per row; the pointer drags it and Alt with the vertical arrows moves it. Only while the query is at rest and without a tree."
878
+ },
879
+ {
880
+ "name": "onRowsReorder",
881
+ "type": "({ key, from, to, reason, event }) => void",
882
+ "defaultValue": "—",
883
+ "appliesTo": "DataGrid",
884
+ "description": "Where a row goes in rows: from, and the index it takes once moved. The consumer moves it."
885
+ },
886
+ {
887
+ "name": "highlightChanges",
888
+ "type": "boolean | number",
889
+ "defaultValue": "false",
890
+ "appliesTo": "DataGrid",
891
+ "description": "Marks a mounted cell whose value changed between two rows, for the stated milliseconds (true is 1200)."
892
+ },
893
+ {
894
+ "name": "loadMoreThreshold",
895
+ "type": "number",
896
+ "defaultValue": "20",
897
+ "appliesTo": "DataGrid",
898
+ "description": "Rows left below the window before onLoadMore is called."
899
+ },
900
+ {
901
+ "name": "onLoadMore",
902
+ "type": "() => void",
903
+ "defaultValue": "—",
904
+ "appliesTo": "DataGrid",
905
+ "description": "Asked for the next page when hasMore is true."
906
+ },
907
+ {
908
+ "name": "onRetry",
909
+ "type": "() => void",
910
+ "defaultValue": "—",
911
+ "appliesTo": "DataGrid",
912
+ "description": "The error state’s Try again."
913
+ },
914
+ {
915
+ "name": "skeletonRows",
916
+ "type": "number",
917
+ "defaultValue": "8",
918
+ "appliesTo": "DataGrid",
919
+ "description": "Rows the first load draws."
920
+ },
921
+ {
922
+ "name": "pageSizes",
923
+ "type": "number[]",
924
+ "defaultValue": "25,50,100",
925
+ "appliesTo": "DataGrid",
926
+ "description": "The sizes a page-size control in the footer offers, read through useDataGridDefaults."
927
+ },
928
+ {
929
+ "name": "variant",
930
+ "type": "'plain' | 'ruled' | 'framed'",
931
+ "defaultValue": "ruled",
932
+ "appliesTo": "DataGrid",
933
+ "description": "No rules, rules between rows, or the border and the radius."
934
+ },
935
+ {
936
+ "name": "striped",
937
+ "type": "boolean",
938
+ "defaultValue": "false",
939
+ "appliesTo": "DataGrid",
940
+ "description": "Every second row tinted."
941
+ },
942
+ {
943
+ "name": "stickyHeader",
944
+ "type": "boolean",
945
+ "defaultValue": "true",
946
+ "appliesTo": "DataGrid",
947
+ "description": "The header, the filter row and the summary stay while the rows scroll."
948
+ },
949
+ {
950
+ "name": "stickyTo",
951
+ "type": "'scroll' | 'page'",
952
+ "defaultValue": "scroll",
953
+ "appliesTo": "DataGrid",
954
+ "description": "What the header sticks inside: the grid’s own scroller, or the page — which gives up the grid’s own scrolling and windowing."
955
+ },
956
+ {
957
+ "name": "height",
958
+ "type": "string | number",
959
+ "defaultValue": "—",
960
+ "appliesTo": "DataGrid",
961
+ "description": "The frame’s height; without one the grid grows to its rows."
962
+ },
963
+ {
964
+ "name": "labelledBy",
965
+ "type": "string",
966
+ "defaultValue": "—",
967
+ "appliesTo": "DataGrid",
968
+ "description": "The id of the element that names the grid; a native aria-label names it directly, and with neither the grid is named by messages.grid."
969
+ },
970
+ {
971
+ "name": "messages",
972
+ "type": "Partial<DataGridMessages>",
973
+ "defaultValue": "—",
974
+ "appliesTo": "DataGrid",
975
+ "description": "Words laid over the language in force, key by key: every control, state and announcement, the grid’s name (grid), and filterYes and filterNo for a boolean cell. The operator names and symbols are the groups filterOperators and filterSymbols."
976
+ },
977
+ {
978
+ "name": "locale",
979
+ "type": "string",
980
+ "defaultValue": "the language in force",
981
+ "appliesTo": "DataGrid",
982
+ "description": "BCP 47, for the collator, the number and the date formats."
983
+ },
984
+ {
985
+ "name": "timeZone",
986
+ "type": "string",
987
+ "defaultValue": "—",
988
+ "appliesTo": "DataGrid",
989
+ "description": "The zone a timestamp is read in."
990
+ },
991
+ {
992
+ "name": "renderCell",
993
+ "type": "(context) => ReactNode",
994
+ "defaultValue": "—",
995
+ "appliesTo": "DataGrid",
996
+ "description": "What a cell draws; cellRenderers does it per column and wins."
997
+ },
998
+ {
999
+ "name": "renderEditor",
1000
+ "type": "(context) => ReactNode",
1001
+ "defaultValue": "—",
1002
+ "appliesTo": "DataGrid",
1003
+ "description": "What a cell edits with; editorRenderers per column wins. The context carries draft, setDraft, commit and cancel."
1004
+ },
1005
+ {
1006
+ "name": "renderHeader",
1007
+ "type": "(context) => ReactNode",
1008
+ "defaultValue": "—",
1009
+ "appliesTo": "DataGrid",
1010
+ "description": "What a header draws in place of the label."
1011
+ },
1012
+ {
1013
+ "name": "renderDetail",
1014
+ "type": "(row, key) => ReactNode",
1015
+ "defaultValue": "—",
1016
+ "appliesTo": "DataGrid",
1017
+ "description": "A row’s detail; its presence draws the expander column."
1018
+ },
1019
+ {
1020
+ "name": "renderGroup",
1021
+ "type": "(context) => ReactNode",
1022
+ "defaultValue": "—",
1023
+ "appliesTo": "DataGrid",
1024
+ "description": "What a group row draws beside its toggle."
1025
+ },
1026
+ {
1027
+ "name": "renderEmpty",
1028
+ "type": "(status) => ReactNode",
1029
+ "defaultValue": "—",
1030
+ "appliesTo": "DataGrid",
1031
+ "description": "The empty, no-results or error state in place of the grid’s result state."
1032
+ },
1033
+ {
1034
+ "name": "renderFilterOperand",
1035
+ "type": "(context) => ReactNode",
1036
+ "defaultValue": "—",
1037
+ "appliesTo": "DataGrid",
1038
+ "description": "The operand control in the panel and the row, for a kind the grid has no field for."
1039
+ },
1040
+ {
1041
+ "name": "footer",
1042
+ "type": "ReactNode",
1043
+ "defaultValue": "—",
1044
+ "appliesTo": "DataGrid",
1045
+ "description": "What stands in the bar under the grid, after the range."
1046
+ },
1047
+ {
1048
+ "name": "showRange",
1049
+ "type": "boolean",
1050
+ "defaultValue": "when paged",
1051
+ "appliesTo": "DataGrid",
1052
+ "description": "Whether the footer states the range."
1053
+ },
1054
+ {
1055
+ "name": "handle",
1056
+ "type": "RefObject<DataGridHandle>",
1057
+ "defaultValue": "—",
1058
+ "appliesTo": "DataGrid",
1059
+ "description": "focusCell, scrollToRow, scrollToColumn, scrollToCell, startEdit, stopEdit, autofit (one column, or every resizable column as one request, reason programmatic), getOutOfSpace, getVisibleRows, toCsv, exportCsv, reload, selectAll, clearSelection, element."
1060
+ },
1061
+ {
1062
+ "name": "align",
1063
+ "type": "'start' | 'center' | 'end'",
1064
+ "defaultValue": "start",
1065
+ "appliesTo": "GridColumn",
1066
+ "description": "Where the value sits; a number column sits at the end unless told otherwise."
1067
+ },
1068
+ {
1069
+ "name": "numeric",
1070
+ "type": "boolean",
1071
+ "defaultValue": "false",
1072
+ "appliesTo": "GridColumn",
1073
+ "description": "Tabular figures and end alignment; true for kind number."
1074
+ },
1075
+ {
1076
+ "name": "text",
1077
+ "type": "'wrap' | 'truncate' | 'nowrap'",
1078
+ "defaultValue": "truncate",
1079
+ "appliesTo": "GridColumn",
1080
+ "description": "What a long value does."
1081
+ }
1082
+ ],
1083
+ "composition": [
1084
+ {
1085
+ "name": "DataGridDefaultsProvider",
1086
+ "type": "component",
1087
+ "defaultValue": "—",
1088
+ "appliesTo": "Application",
1089
+ "description": "Sets variant, striped, stickyHeader, stickyTo, selectionMode, editMode, filterRow, virtualize, rowHeight, columnOverflow, overscan, pageSizes, filterDebounce, loadMoreThreshold and skeletonRows once for a subtree. A grid that states one itself still wins. Its words and its locale come from the language in force (SlottedProvider)."
1090
+ },
1091
+ {
1092
+ "name": "@slotted/core/grid",
1093
+ "type": "module",
1094
+ "defaultValue": "—",
1095
+ "appliesTo": "Application",
1096
+ "description": "applyQuery, emptyQuery, withSortPress, withColumnFilter, withSearch, withPageIndex, withGroup, toGridParams, fromGridParams, normalizeColumnState, serializeColumnState, parseColumnState: the engine the grid runs on, for a server mock, a URL and a saved view."
1097
+ },
1098
+ {
1099
+ "name": "renderCell, renderEditor, renderHeader, renderDetail, renderGroup, renderEmpty, renderFilterOperand",
1100
+ "type": "render props",
1101
+ "defaultValue": "—",
1102
+ "appliesTo": "DataGrid",
1103
+ "description": "Every surface a consumer replaces, per grid or per column through cellRenderers and editorRenderers. row, cell, head and body are fixed: the layout and the roles are theirs."
1104
+ },
1105
+ {
1106
+ "name": "footer",
1107
+ "type": "ReactNode",
1108
+ "defaultValue": "—",
1109
+ "appliesTo": "DataGrid",
1110
+ "description": "Pagination, a page-size select, a count: the consumer’s own controls in the bar the grid draws."
1111
+ },
1112
+ {
1113
+ "name": "handle",
1114
+ "type": "DataGridHandle",
1115
+ "defaultValue": "—",
1116
+ "appliesTo": "DataGrid",
1117
+ "description": "The imperative surface for what cannot be said declaratively: focusCell, scrollToRow, scrollToColumn, startEdit, stopEdit, autofit, getOutOfSpace, getVisibleRows, toCsv, exportCsv, reload, selectAll, clearSelection."
1118
+ },
1119
+ {
1120
+ "name": "native props",
1121
+ "type": "attributes",
1122
+ "defaultValue": "—",
1123
+ "appliesTo": "DataGrid",
1124
+ "description": "Anything a div takes reaches the root; a consumer’s onKeyDown runs before the grid’s and preventDefault stops it. ref reaches the root element."
1125
+ },
1126
+ {
1127
+ "name": "FilterBar, Pagination, ColumnManager",
1128
+ "type": "families",
1129
+ "defaultValue": "—",
1130
+ "appliesTo": "Beside the grid",
1131
+ "description": "The bar edits query.filter; pagination moves query.page in the footer; column-manager edits columnState."
1132
+ }
1133
+ ],
1134
+ "events": [
1135
+ {
1136
+ "name": "onQueryChange",
1137
+ "payload": "(query: GridQuery, request: DataGridQueryRequest)",
1138
+ "when": "Before the query moves: a sort press, a filter applied, a search, a page, a group. request.change says which; the reason is pointer, keyboard, clear or programmatic; cancel() refuses it."
1139
+ },
1140
+ {
1141
+ "name": "onColumnStateChange",
1142
+ "payload": "(state: GridColumnState, request: DataGridColumnStateRequest)",
1143
+ "when": "Before a column is resized, moved, hidden or pinned. request.change says which; the reason is pointer, keyboard or programmatic. A hide is announced; the columns in value.hidden and not in previous.hidden are what an undo shows again."
1144
+ },
1145
+ {
1146
+ "name": "onOutOfSpaceChange",
1147
+ "payload": "(outOfSpace: GridOutOfSpace)",
1148
+ "when": "After the frame is measured, whenever the columns in the pop-in or the columns hidden for room change."
1149
+ },
1150
+ {
1151
+ "name": "onValueChange",
1152
+ "payload": "(value: string | string[] | null, request)",
1153
+ "when": "Before the row selection moves: a checkbox press, Shift+Space, Ctrl+A, the header checkbox (reason select), or clearSelection (programmatic)."
1154
+ },
1155
+ {
1156
+ "name": "onRangeChange",
1157
+ "payload": "(range: GridRange | null, request)",
1158
+ "when": "Before the cell rectangle moves, or is cleared with Escape (reason clear)."
1159
+ },
1160
+ {
1161
+ "name": "onCurrentChange",
1162
+ "payload": "(cell: GridCell | null, request)",
1163
+ "when": "Before the cursor moves: an arrow key, a press, or the grid settling the cursor after its row left (programmatic)."
1164
+ },
1165
+ {
1166
+ "name": "onExpandedChange",
1167
+ "payload": "(keys: string[], request)",
1168
+ "when": "Before a detail opens or closes."
1169
+ },
1170
+ {
1171
+ "name": "onExpandedGroupsChange",
1172
+ "payload": "(keys: string[] | 'all', request)",
1173
+ "when": "Before a group opens or closes."
1174
+ },
1175
+ {
1176
+ "name": "onEditStart / onEditCommit / onEditCancel",
1177
+ "payload": "(cell) / (commit: DataGridEditCommit) / (cell)",
1178
+ "when": "When an editor opens; when a draft is committed by Enter, Tab, F2, a press elsewhere or blur (the commit may return a promise); when Escape cancels it."
1179
+ },
1180
+ {
1181
+ "name": "onActivate",
1182
+ "payload": "(event: DataGridActivateEvent)",
1183
+ "when": "A double press or Enter on a text cell, or one touch or pen press, while activatable is true."
1184
+ },
1185
+ {
1186
+ "name": "onLoadMore / onRetry / onManageColumns",
1187
+ "payload": "()",
1188
+ "when": "The window nears the end with hasMore; the error state’s Try again; the column menu’s Manage columns."
1189
+ }
1190
+ ],
1191
+ "accessibility": [
1192
+ "The root is role=\"grid\": a composite widget with one tab stop. The current cell — or the single simple widget inside it, a link, a button or a checkbox — is the only element with tabindex=\"0\"; Tab enters there and leaves the grid to the next control of the page, which is what the APG requires of a grid and what a table cannot give.",
1193
+ "Every row carries aria-rowindex against aria-rowcount on the root, and every cell aria-colindex against aria-colcount, always: the grid windows its rows and columns, so the DOM is never the whole set, and the counts are what let a screen reader say “row 4,812 of 9,000”.",
1194
+ "aria-sort is written on the first sort key’s header only — the practice says more than one is ambiguous — and the whole order is announced through the live announcer: “Sorted by Carrier ascending, Weight descending”. A resize announces the column and its width; a filter announces its sentence through describeFilter; a copy announces the count.",
1195
+ "A cell that does not edit while others do carries aria-readonly=\"true\"; a draft that fails carries aria-invalid and its message in the title. A selected row carries aria-selected; a cell in a range carries it too, and the root aria-multiselectable in multiple and range.",
1196
+ "A column with a description is described by it: the header carries aria-describedby to a visually hidden span, and the column menu points at the same span while showing the text aria-hidden, so the words are heard once. The column help is a button with a name — “About ARR” — reached by F2 on the header; Tab cycles the header’s widgets and Escape returns to the cell. Hiding a column is announced as “Carrier hidden”.",
1197
+ "The header checkbox names what it covers — “Select all 3,412 rows”, or the page in server mode — because a selection over a whole result set is a decision only the query can make. Every control the grid draws has a name: the column menu, the filter trigger, the expander, the group toggle, the operator symbol."
1198
+ ]
1199
+ }
1200
+ },
1201
+ "tokens": [
1202
+ "--slotted-border-strong",
1203
+ "--slotted-border-subtle",
1204
+ "--slotted-border-width-thick",
1205
+ "--slotted-border-width-thin",
1206
+ "--slotted-control-font-family",
1207
+ "--slotted-control-font-size-md",
1208
+ "--slotted-control-font-size-sm",
1209
+ "--slotted-control-gap-md",
1210
+ "--slotted-control-height-md",
1211
+ "--slotted-control-icon-size-md",
1212
+ "--slotted-control-inner-size-sm",
1213
+ "--slotted-control-invalid-edge-width",
1214
+ "--slotted-control-padding-inline-md",
1215
+ "--slotted-control-padding-inline-sm",
1216
+ "--slotted-control-transition-duration",
1217
+ "--slotted-control-transition-easing",
1218
+ "--slotted-data-grid-band-surface",
1219
+ "--slotted-data-grid-block-size",
1220
+ "--slotted-data-grid-border-color",
1221
+ "--slotted-data-grid-border-color-strong",
1222
+ "--slotted-data-grid-border-width",
1223
+ "--slotted-data-grid-cell-padding-block",
1224
+ "--slotted-data-grid-cell-padding-inline",
1225
+ "--slotted-data-grid-changed-surface",
1226
+ "--slotted-data-grid-color",
1227
+ "--slotted-data-grid-color-muted",
1228
+ "--slotted-data-grid-control-radius",
1229
+ "--slotted-data-grid-cursor-color",
1230
+ "--slotted-data-grid-filter-operator-size",
1231
+ "--slotted-data-grid-filter-panel-size",
1232
+ "--slotted-data-grid-filter-panel-size-date",
1233
+ "--slotted-data-grid-filter-panel-size-datetime",
1234
+ "--slotted-data-grid-font-family",
1235
+ "--slotted-data-grid-font-size",
1236
+ "--slotted-data-grid-gap",
1237
+ "--slotted-data-grid-head-block-size",
1238
+ "--slotted-data-grid-header-surface",
1239
+ "--slotted-data-grid-header-surface-hover",
1240
+ "--slotted-data-grid-icon-size",
1241
+ "--slotted-data-grid-indent",
1242
+ "--slotted-data-grid-pin-shadow-color",
1243
+ "--slotted-data-grid-pin-shadow-size",
1244
+ "--slotted-data-grid-radius",
1245
+ "--slotted-data-grid-range-surface",
1246
+ "--slotted-data-grid-row-block-size",
1247
+ "--slotted-data-grid-row-color-selected",
1248
+ "--slotted-data-grid-row-max-block-size",
1249
+ "--slotted-data-grid-row-surface-hover",
1250
+ "--slotted-data-grid-row-surface-selected",
1251
+ "--slotted-data-grid-row-surface-selected-hover",
1252
+ "--slotted-data-grid-row-surface-stripe",
1253
+ "--slotted-data-grid-shadow",
1254
+ "--slotted-data-grid-sticky-offset",
1255
+ "--slotted-data-grid-sticky-offset-end",
1256
+ "--slotted-data-grid-surface",
1257
+ "--slotted-disabled-foreground",
1258
+ "--slotted-duration-long",
1259
+ "--slotted-duration-loop",
1260
+ "--slotted-duration-short",
1261
+ "--slotted-easing-standard",
1262
+ "--slotted-focus-ring-color",
1263
+ "--slotted-focus-ring-color-invalid",
1264
+ "--slotted-focus-ring-offset",
1265
+ "--slotted-focus-ring-width",
1266
+ "--slotted-font-size-xs",
1267
+ "--slotted-font-weight-medium",
1268
+ "--slotted-font-weight-regular",
1269
+ "--slotted-font-weight-semibold",
1270
+ "--slotted-ground",
1271
+ "--slotted-line-height-md",
1272
+ "--slotted-popover-gap",
1273
+ "--slotted-popover-padding-block-sm",
1274
+ "--slotted-popover-padding-inline-sm",
1275
+ "--slotted-radius-md",
1276
+ "--slotted-radius-sm",
1277
+ "--slotted-scrim",
1278
+ "--slotted-shadow-xs",
1279
+ "--slotted-space-1",
1280
+ "--slotted-space-2",
1281
+ "--slotted-space-3",
1282
+ "--slotted-space-4",
1283
+ "--slotted-space-5",
1284
+ "--slotted-space-6",
1285
+ "--slotted-space-8",
1286
+ "--slotted-surface",
1287
+ "--slotted-surface-sunken",
1288
+ "--slotted-target-comfortable",
1289
+ "--slotted-target-min",
1290
+ "--slotted-text",
1291
+ "--slotted-text-muted",
1292
+ "--slotted-tone-accent-border",
1293
+ "--slotted-tone-accent-solid",
1294
+ "--slotted-tone-accent-subtle-hover",
1295
+ "--slotted-tone-accent-surface",
1296
+ "--slotted-tone-accent-text",
1297
+ "--slotted-tone-danger-border",
1298
+ "--slotted-tone-secondary-subtle-hover",
1299
+ "--slotted-z-index-sticky"
1300
+ ],
1301
+ "examples": [
1302
+ {
1303
+ "id": "playground",
1304
+ "title": "Playground",
1305
+ "note": "Every capability on one listing of shipments: sort with a press and Shift, filter from the funnel or the row, select with the checkboxes, edit a cell with Enter, pin and resize from the header. The toolbar switches scheme, density and direction.",
1306
+ "language": "tsx",
1307
+ "source": "<DataGrid\n columns={columns}\n height=\"100%\"\n label=\"Shipments\"\n rowKey=\"id\"\n rows={shipments}\n selectionMode=\"multiple\"\n/>;\n",
1308
+ "verdict": "excerpt"
1309
+ },
1310
+ {
1311
+ "id": "columns",
1312
+ "title": "Columns",
1313
+ "note": "Each column declares its kind, and the kind decides the comparator, the operators, the editor and the alignment: a number column sits its digits at the end in tabular figures, a date column formats the ISO day in the reader’s locale, a set column names its values.",
1314
+ "language": "tsx",
1315
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(8);\n\nexport default function DataGridColumns() {\n return (\n <DataGrid aria-label=\"Shipments\" columns={COLUMNS} rowKey=\"id\" rows={ROWS} height=\"22rem\" />\n );\n}\n",
1316
+ "verdict": "example"
1317
+ },
1318
+ {
1319
+ "id": "column-groups",
1320
+ "title": "Column groups",
1321
+ "note": "A second header row above the columns: each group spans the columns it names, wherever the reader has laid them out, and a column no group names spans itself.",
1322
+ "language": "tsx",
1323
+ "source": "import type { GridColumn, GridColumnGroup } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst GROUPS: GridColumnGroup[] = [\n { id: 'shipment', label: 'Shipment', columns: ['id', 'customer', 'destination'] },\n { id: 'transport', label: 'Transport', columns: ['carrier', 'status', 'shipped'] },\n { id: 'charges', label: 'Charges', columns: ['weight', 'cost'] },\n];\n\nconst ROWS = shipments(8);\n\nexport default function DataGridColumnGroups() {\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n columnGroups={GROUPS}\n height=\"22rem\"\n />\n );\n}\n",
1324
+ "verdict": "example"
1325
+ },
1326
+ {
1327
+ "id": "sorting",
1328
+ "title": "Sorting",
1329
+ "note": "A press on a header sorts ascending, a second descending, a third removes the key; Shift with the press appends the column to the order instead, and the second and third keys carry their index beside the mark. Enter on the header does the same from the keyboard.",
1330
+ "language": "tsx",
1331
+ "source": "import { useState } from 'react';\nimport { emptyQuery, type GridColumn, type GridQuery } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\nimport { Stack } from '@slotted/react/stack';\nimport { Text } from '@slotted/react/typography';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(12);\n\nexport default function DataGridSorting() {\n const [query, setQuery] = useState<GridQuery>({\n ...emptyQuery(),\n sort: [\n { column: 'carrier', direction: 'ascending' },\n { column: 'cost', direction: 'descending' },\n ],\n });\n const order = query.sort.map((key) => `${key.column} ${key.direction}`).join(', ') || 'none';\n\n return (\n <Stack gap={3}>\n <Text size=\"sm\" tone=\"muted\">\n Sorted by: {order}\n </Text>\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n height=\"22rem\"\n onQueryChange={setQuery}\n query={query}\n />\n </Stack>\n );\n}\n",
1332
+ "verdict": "example"
1333
+ },
1334
+ {
1335
+ "id": "filter-panel",
1336
+ "title": "The filter panel",
1337
+ "note": "Ctrl+Enter on a header or its menu opens the panel: one line per condition — operator and operand in sm — the join as two words on the second line once the first is complete, Clear and Apply at the end. Nothing reaches the query until Apply.",
1338
+ "language": "tsx",
1339
+ "source": "<DataGrid\n defaultQuery={\n withColumnFilter(emptyQuery(), 'customer', {\n kind: 'text',\n join: 'or',\n conditions: [\n { operator: 'contains', value: 'nord' },\n { operator: 'startsWith', value: 'B' },\n ],\n }).query\n }\n/>;\n",
1340
+ "verdict": "excerpt"
1341
+ },
1342
+ {
1343
+ "id": "filter-row",
1344
+ "title": "The filter row",
1345
+ "note": "With filterRow the row under the header holds one operand per column, plain, with the operator as a symbol at its start — press it for the names in full. Text and number apply after the debounce and on Enter; a set, a boolean and a date apply on change. The cursor walks the row.",
1346
+ "language": "tsx",
1347
+ "source": "import { emptyQuery, withColumnFilter, type GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst INITIAL_QUERY = withColumnFilter(emptyQuery(), 'status', {\n kind: 'set',\n join: 'and',\n conditions: [{ operator: 'anyOf', value: ['Delayed', 'Customs'] }],\n}).query;\n\nconst ROWS = shipments(24);\n\nexport default function DataGridFilterRow() {\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n defaultQuery={INITIAL_QUERY}\n filterRow\n height=\"24rem\"\n />\n );\n}\n",
1348
+ "verdict": "example"
1349
+ },
1350
+ {
1351
+ "id": "filter-bar",
1352
+ "title": "With a filter bar",
1353
+ "note": "One descriptor, two families: the bar above edits query.filter and the grid evaluates it, nested groups included. A rule written in a column header appears as a chip in the bar, and a chip removed in the bar clears the header’s funnel.",
1354
+ "language": "tsx",
1355
+ "source": "<>\n <FilterBar\n fields={fields}\n onValueChange={(filter) => setQuery(withFilter(query, filter).query)}\n value={query.filter}\n />\n <DataGrid columns={columns} onQueryChange={setQuery} query={query} rowKey=\"id\" rows={shipments} />\n</>;\n",
1356
+ "verdict": "excerpt"
1357
+ },
1358
+ {
1359
+ "id": "search",
1360
+ "title": "Search",
1361
+ "note": "One condition that belongs to no column: query.search is matched against the text of every searchable column through the locale collator, so \"agua\" finds \"Água\". The field that writes it is the consumer’s own text-field.",
1362
+ "language": "tsx",
1363
+ "source": "import { useState } from 'react';\nimport { emptyQuery, withSearch, type GridColumn, type GridQuery } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\nimport { Stack } from '@slotted/react/stack';\nimport { TextField } from '@slotted/react/text-field';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(24);\n\nexport default function DataGridSearch() {\n const [query, setQuery] = useState<GridQuery>({ ...emptyQuery(), search: 'graz' });\n\n return (\n <Stack gap={3}>\n <TextField\n aria-label=\"Search shipments\"\n clearable\n onValueChange={(text) => setQuery((current) => withSearch(current, text).query)}\n placeholder=\"Search shipments\"\n value={query.search}\n />\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n height=\"22rem\"\n onQueryChange={setQuery}\n query={query}\n />\n </Stack>\n );\n}\n",
1364
+ "verdict": "example"
1365
+ },
1366
+ {
1367
+ "id": "selection",
1368
+ "title": "Row selection",
1369
+ "note": "single chooses one row with a press; multiple draws the checkbox column, pinned to the start: Shift extends from the anchor, Shift+Space toggles the row from any cell, Ctrl+A and the header checkbox cover every row the query left and say so in their name.",
1370
+ "language": "tsx",
1371
+ "source": "import { useState } from 'react';\nimport type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\nimport { Text } from '@slotted/react/typography';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(12);\n\nexport default function DataGridSelection() {\n const [value, setValue] = useState<string | readonly string[] | null>(['SH-3302', 'SH-3303']);\n const count = Array.isArray(value) ? value.length : value === null ? 0 : 1;\n\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n disabledKeys={['SH-3305']}\n footer={\n <Text size=\"sm\" tone=\"muted\">\n {count} selected\n </Text>\n }\n height=\"24rem\"\n onValueChange={setValue}\n selectionMode=\"multiple\"\n value={value}\n />\n );\n}\n",
1372
+ "verdict": "example"
1373
+ },
1374
+ {
1375
+ "id": "range",
1376
+ "title": "Cell range",
1377
+ "note": "range selects a rectangle of cells: Shift with the arrows extends it from the anchor, Shift with a press sets it, a drag paints it, Ctrl+Space takes the column and Shift+Space the row. Ctrl+C copies it as tab-separated text; Escape clears it.",
1378
+ "language": "tsx",
1379
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(12);\n\nexport default function DataGridRange() {\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n defaultCurrent={{ row: 'SH-3303', column: 'weight' }}\n height=\"24rem\"\n selectionMode=\"range\"\n />\n );\n}\n",
1380
+ "verdict": "example"
1381
+ },
1382
+ {
1383
+ "id": "editing",
1384
+ "title": "Editing a cell",
1385
+ "note": "Enter, F2, a double press or a typed key open the cell’s editor — the field family of its kind, plain, filling the cell. Enter commits and moves one row down, Tab commits and moves to the next editable cell, Escape cancels. The commit may return a promise; the cell dims until it settles.",
1386
+ "language": "tsx",
1387
+ "source": "import { useState } from 'react';\nimport type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst EDIT_COLUMNS: GridColumn<Shipment>[] = COLUMNS.map((column) =>\n column.id === 'weight'\n ? {\n ...column,\n editable: true,\n validate: (value: unknown) =>\n typeof value === 'number' && value <= 0 ? 'Enter a weight above zero.' : null,\n }\n : ['customer', 'destination', 'carrier'].includes(column.id)\n ? { ...column, editable: true }\n : column,\n);\n\nconst ROWS = shipments(8);\n\nexport default function DataGridEditing() {\n const [rows, setRows] = useState(ROWS);\n\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={EDIT_COLUMNS}\n rowKey=\"id\"\n rows={rows}\n editMode=\"cell\"\n height=\"22rem\"\n onEditCommit={({ key, changes }) =>\n setRows((current) => current.map((row) => (row.id === key ? { ...row, ...changes } : row)))\n }\n />\n );\n}\n",
1388
+ "verdict": "example"
1389
+ },
1390
+ {
1391
+ "id": "editing-row",
1392
+ "title": "Editing a row",
1393
+ "note": "editMode=\"row\" opens every editable cell of the row at once: Tab moves between them, Enter commits the row with every change in one request, Escape cancels them all.",
1394
+ "language": "tsx",
1395
+ "source": "import { useState } from 'react';\nimport type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst EDIT_COLUMNS: GridColumn<Shipment>[] = COLUMNS.map((column) =>\n column.id === 'weight'\n ? {\n ...column,\n editable: true,\n validate: (value: unknown) =>\n typeof value === 'number' && value <= 0 ? 'Enter a weight above zero.' : null,\n }\n : ['customer', 'destination', 'carrier'].includes(column.id)\n ? { ...column, editable: true }\n : column,\n);\n\nconst ROWS = shipments(8);\n\nexport default function DataGridEditingRow() {\n const [rows, setRows] = useState(ROWS);\n\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={EDIT_COLUMNS}\n rowKey=\"id\"\n rows={rows}\n editMode=\"row\"\n height=\"22rem\"\n onEditCommit={({ key, changes }) =>\n setRows((current) => current.map((row) => (row.id === key ? { ...row, ...changes } : row)))\n }\n />\n );\n}\n",
1396
+ "verdict": "example"
1397
+ },
1398
+ {
1399
+ "id": "validation",
1400
+ "title": "Validation, failure and conflict",
1401
+ "note": "A column’s validate refuses a draft with a message: the cell turns invalid and keeps what was typed. A commit that rejects reopens the editor with the draft and the error. A row that changes under an open editor is a conflict, said in the same place.",
1402
+ "language": "tsx",
1403
+ "source": "const columns = [\n {\n id: 'weight',\n label: 'Weight',\n kind: 'number',\n editable: true,\n validate: (value) => (value < 0 ? 'A weight is not negative' : null),\n },\n];\n<DataGrid columns={columns} onEditCommit={() => Promise.reject(new Error('Offline'))} />;\n",
1404
+ "verdict": "excerpt"
1405
+ },
1406
+ {
1407
+ "id": "activation",
1408
+ "title": "Row activation",
1409
+ "note": "activatable turns a double press or Enter on a text cell into onActivate with the row’s key — opening the record is a different act from choosing it, and the two never share a key. An editable cell keeps Enter for its editor. On a touch screen or with a pen one press activates, except on a widget in the cell or a cell in edit, and the double press that follows within 500ms is ignored.",
1410
+ "language": "tsx",
1411
+ "source": "import { useState } from 'react';\nimport type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\nimport { Stack } from '@slotted/react/stack';\nimport { Text } from '@slotted/react/typography';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(12);\n\nexport default function DataGridActivation() {\n const [opened, setOpened] = useState<string | null>(null);\n\n return (\n <Stack gap={3}>\n <Text size=\"sm\" tone=\"muted\">\n {opened ? `Opened ${opened}` : 'Double-click a row, or press Enter on its shipment cell.'}\n </Text>\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n activatable\n height=\"22rem\"\n onActivate={({ key }) => setOpened(key)}\n />\n </Stack>\n );\n}\n",
1412
+ "verdict": "example"
1413
+ },
1414
+ {
1415
+ "id": "pinning",
1416
+ "title": "Pinned columns",
1417
+ "note": "A column pinned to the start or the end stays while the others scroll; the checkbox column is always pinned. Pin from the column menu or the state; the last column of each zone draws the edge, darker while something is hidden under it.",
1418
+ "language": "tsx",
1419
+ "source": "<DataGrid defaultColumnState={{ pinned: { start: ['id'], end: ['actions'] } }} />;\n",
1420
+ "verdict": "excerpt"
1421
+ },
1422
+ {
1423
+ "id": "resize",
1424
+ "title": "Resizing",
1425
+ "note": "Drag the handle on a column’s trailing edge; Escape during the drag restores the width. From the keyboard, Ctrl+Shift+ArrowRight widens by eight pixels and announces the width; Ctrl+Shift+Enter and a double press on the handle fit the column to its mounted cells.",
1426
+ "language": "tsx",
1427
+ "source": "<DataGrid\n columnState={state}\n onColumnStateChange={(next, request) => request.change === 'width' && setState(next)}\n/>;\n",
1428
+ "verdict": "excerpt"
1429
+ },
1430
+ {
1431
+ "id": "reorder",
1432
+ "title": "Reordering",
1433
+ "note": "Drag a header along the row: the drop indicator shows the boundary it lands on, and a column never leaves its pin zone. Alt+ArrowLeft and Alt+ArrowRight move the column one place from the keyboard. Every move is announced.",
1434
+ "language": "tsx",
1435
+ "source": "<DataGrid defaultColumnState={{ order: ['customer', 'id', 'carrier'] }} />;\n",
1436
+ "verdict": "excerpt"
1437
+ },
1438
+ {
1439
+ "id": "column-menu",
1440
+ "title": "The column menu",
1441
+ "note": "Revealed by the pointer and by the cursor, opened with Ctrl+Enter, a secondary press on the header (at the press; Shift keeps the browser’s menu) or Shift+F10 and the Menu key (on the header cell): sort ascending, descending or remove; filter; pin to either edge or unpin; fit to content, and fit all columns in one request; hide; and manage columns, which hands over to the application’s column-manager. A fit chosen by pointer carries reason pointer, by keyboard reason keyboard; Shift with a double press on the resizer fits every column.",
1442
+ "language": "tsx",
1443
+ "source": "<DataGrid onManageColumns={() => setManagerOpen(true)} />;\n",
1444
+ "verdict": "excerpt"
1445
+ },
1446
+ {
1447
+ "id": "column-help",
1448
+ "title": "A column that explains itself",
1449
+ "note": "ARR and Margin carry a description; Status carries a help node with a link. The circled question mark stays shown, because a coarse pointer has no hover; it opens a popover on a press, Enter or Space, and never sorts. The description is also the header’s accessible description and the caption atop its menu. F2 on a header reaches the button without a pointer.",
1450
+ "language": "tsx",
1451
+ "source": "const columns: DataGridColumn<Account>[] = [\n {\n id: 'arr',\n label: 'ARR',\n kind: 'number',\n description: 'Annual recurring revenue, in US dollars',\n },\n { id: 'status', label: 'Status', help: <StatusGlossary /> },\n];\n",
1452
+ "verdict": "excerpt"
1453
+ },
1454
+ {
1455
+ "id": "undo-hide",
1456
+ "title": "Undoing a hidden column",
1457
+ "note": "Hide column announces “Carrier hidden” and asks with change: hidden. The application answers with a toast whose Undo shows that column again through withColumnHidden: a hide moves no order, width or pin, so the column returns to its place and its width, and whatever the reader changed after the hide stays. Writing back request.previous would undo those changes too.",
1458
+ "language": "tsx",
1459
+ "source": "<DataGrid\n columnState={state}\n onColumnStateChange={(next, request) => {\n setState(next);\n if (request.change !== 'hidden') return;\n const shown = next.hidden.filter((column) => !request.previous.hidden.includes(column));\n const id = toaster.show({\n title: 'Column hidden',\n actions: (\n <Button\n onClick={() => {\n setState((current) =>\n shown.reduce((state, column) => withColumnHidden(state, column, false), current),\n );\n toaster.dismiss(id, 'pointer');\n }}\n size=\"sm\"\n variant=\"outline\"\n >\n Undo\n </Button>\n ),\n });\n }}\n/>;\n",
1460
+ "verdict": "excerpt"
1461
+ },
1462
+ {
1463
+ "id": "column-state",
1464
+ "title": "Saving a view",
1465
+ "note": "A view is the column state, the query and the density as one line of text: serializeGridView writes it, parseGridView reads it back and drops a column the model no longer has. usePersistedGridView keeps that line under a key in localStorage (or any store with getItem, setItem and removeItem; null keeps it in memory), reads it once on mount, writes it after every change, and resets to the defaults by removing the entry. Hand reset, onDensityChange and setView — which replaces the whole view in one write, as applying a saved view does — to the controls that call them, and spread the rest on the grid. Selection, cursor and expansion are session state and are not kept.",
1466
+ "language": "tsx",
1467
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(12);\n\nexport default function DataGridColumnState() {\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n defaultColumnState={{ pinned: { start: ['id'], end: ['cost'] }, widths: { customer: 240 } }}\n height=\"24rem\"\n selectionMode=\"multiple\"\n />\n );\n}\n",
1468
+ "verdict": "example"
1469
+ },
1470
+ {
1471
+ "id": "grouping",
1472
+ "title": "Grouping",
1473
+ "note": "query.group names the columns the rows are grouped by, outermost first. A group row carries its level, its count and the aggregates of its rows; ArrowLeft closes it and ArrowRight opens it. expandedGroups is the set of open groups, all by default.",
1474
+ "language": "tsx",
1475
+ "source": "import { emptyQuery, type GridColumn, type GridQuery } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst INITIAL_QUERY: GridQuery = {\n ...emptyQuery(),\n group: ['carrier'],\n sort: [{ column: 'id', direction: 'ascending' }],\n};\n\nconst ROWS = shipments(20);\n\nexport default function DataGridGrouping() {\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n defaultQuery={INITIAL_QUERY}\n height=\"26rem\"\n />\n );\n}\n",
1476
+ "verdict": "example"
1477
+ },
1478
+ {
1479
+ "id": "summary",
1480
+ "title": "Aggregates",
1481
+ "note": "A column with aggregate — sum, avg, min, max, count or a function — draws the summary row, pinned to the end of the scroller, over every row the query kept; a grouped grid draws the same aggregate on each group row.",
1482
+ "language": "tsx",
1483
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst SUM_COLUMNS: GridColumn<Shipment>[] = COLUMNS.map((column) =>\n column.id === 'weight' || column.id === 'cost'\n ? { ...column, aggregate: 'sum' as const }\n : column,\n);\n\nconst ROWS = shipments(10);\n\nexport default function DataGridSummary() {\n return (\n <DataGrid aria-label=\"Shipments\" columns={SUM_COLUMNS} rowKey=\"id\" rows={ROWS} height=\"24rem\" />\n );\n}\n",
1484
+ "verdict": "example"
1485
+ },
1486
+ {
1487
+ "id": "detail",
1488
+ "title": "Row detail",
1489
+ "note": "renderDetail gives a row a detail: the expander column appears, ArrowRight on it opens the detail under the row as one cell spanning every column and held to the frame, ArrowLeft closes it. expanded is the set of open rows.",
1490
+ "language": "tsx",
1491
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\nimport { Text } from '@slotted/react/typography';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(8);\n\nexport default function DataGridDetail() {\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n defaultExpanded={['SH-3301']}\n height=\"26rem\"\n renderDetail={(row) => (\n <Text size=\"sm\">\n {row.carrier} picked up {row.weight.toFixed(1)} kg on {row.shipped} for {row.destination}.\n Charged {money(row.cost)}.\n </Text>\n )}\n />\n );\n}\n",
1492
+ "verdict": "example"
1493
+ },
1494
+ {
1495
+ "id": "virtualization",
1496
+ "title": "Ten thousand rows",
1497
+ "note": "Above a hundred rows the grid windows them: the body is as tall as every row and only the ones in view, plus the overscan, are in the DOM. Scroll, or jump with Ctrl+End — the last row is mounted and focused. Above twenty middle columns the same happens sideways.",
1498
+ "language": "tsx",
1499
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(10_000);\n\nexport default function DataGridVirtualization() {\n return (\n <DataGrid\n aria-label=\"Shipments, 10,000 rows\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n height=\"26rem\"\n selectionMode=\"multiple\"\n />\n );\n}\n",
1500
+ "verdict": "example"
1501
+ },
1502
+ {
1503
+ "id": "server",
1504
+ "title": "Server mode",
1505
+ "note": "With totalCount or hasMore the grid draws the rows it is given and reports the query instead of applying it: sorting, filtering, searching and paging all arrive as one request saying what changed, and a server answers with the page.",
1506
+ "language": "tsx",
1507
+ "source": "<DataGrid\n loading={pending}\n onQueryChange={(next, request) => fetchPage(next, request.change)}\n query={query}\n rows={page.rows}\n totalCount={page.total}\n/>;\n",
1508
+ "verdict": "excerpt"
1509
+ },
1510
+ {
1511
+ "id": "data-source",
1512
+ "title": "A data source",
1513
+ "note": "dataSource hands the grid its own fetching: getRows is called with the query on every change and an AbortSignal, the request before it aborted; the answer — rows, total or hasMore — is kept by the query’s text (cacheSize, default 20), so a page the reader comes back to is on screen at once. The grid is in server mode with the loading and the error states of its own: a rejection is the error state with the message thrown, Try again asks the same query, handle.reload() drops the cache. rows, totalCount, loading, error and onRetry are the source’s and are not read.",
1514
+ "language": "tsx",
1515
+ "source": "const shipments: DataGridDataSource<Shipment> = {\n getRows: (query, { signal }) =>\n fetch(`/api/shipments?${toGridParams(query)}`, { signal }).then((response) => response.json()),\n};\n<DataGrid\n columns={columns}\n dataSource={shipments}\n defaultQuery={emptyQuery({ index: 0, size: 25 })}\n rowKey=\"id\"\n/>;\n",
1516
+ "verdict": "excerpt"
1517
+ },
1518
+ {
1519
+ "id": "pagination",
1520
+ "title": "Pagination",
1521
+ "note": "query.page carries the index and the size; the pagination family in the footer moves both, in the bar a table carries: a page size, the range and the two triggers, at the inline end. The status states the range, so showRange is off. A change of filter, search or group puts the page back at the start in the same request.",
1522
+ "language": "tsx",
1523
+ "source": "<DataGrid\n footer={\n <Pagination\n count={total}\n onPageChange={(page) => setQuery(withPageIndex(query, page - 1).query)}\n onPageSizeChange={(size) => setQuery(withPageSize(query, size).query)}\n page={query.page.index + 1}\n pageSize={query.page.size}\n pageSizeOptions={[25, 50, 100]}\n >\n <PaginationPageSize />\n <PaginationStatus />\n <PaginationPrevious />\n <PaginationNext />\n </Pagination>\n }\n query={query}\n showRange={false}\n/>;\n",
1524
+ "verdict": "excerpt"
1525
+ },
1526
+ {
1527
+ "id": "load-more",
1528
+ "title": "Load more",
1529
+ "note": "With an unknown total the footer states the range without one and offers Load more; when the grid windows its rows, onLoadMore is called on its own as the window nears the end.",
1530
+ "language": "tsx",
1531
+ "source": "<DataGrid\n hasMore={hasMore}\n onLoadMore={fetchMore}\n query={{ ...emptyQuery(), page: { cursor, size: 50 } }}\n rows={rows}\n/>;\n",
1532
+ "verdict": "excerpt"
1533
+ },
1534
+ {
1535
+ "id": "empty-and-loading",
1536
+ "title": "Empty, no results, error, loading",
1537
+ "note": "Three states a body can hold instead of rows, each a result-state: nothing at all; nothing after the filter, with Clear filters; and a failed load, with Try again. A first load draws skeleton rows; a refresh over rows already shown dims them and moves nothing.",
1538
+ "language": "tsx",
1539
+ "source": "<DataGrid error={error} loading={loading} onRetry={reload} rows={rows} />;\n",
1540
+ "verdict": "excerpt"
1541
+ },
1542
+ {
1543
+ "id": "variant",
1544
+ "title": "Variants",
1545
+ "note": "plain draws no rules and no band; ruled draws a rule between rows; framed adds the border, the radius and the footer inside. striped tints every second row under every state.",
1546
+ "language": "tsx",
1547
+ "source": "<DataGrid striped variant=\"framed\" />;\n",
1548
+ "verdict": "excerpt"
1549
+ },
1550
+ {
1551
+ "id": "text",
1552
+ "title": "Long values",
1553
+ "note": "truncate is the default — a column has a width — and keeps the whole value in the cell’s title; wrap breaks an unbroken token rather than widening the column; nowrap keeps a code on one line. A value keeps its own direction in a right-to-left grid.",
1554
+ "language": "tsx",
1555
+ "source": "const columns = [\n { id: 'customer', label: 'Customer', text: 'wrap' },\n { id: 'hash', label: 'Hash', text: 'nowrap' },\n];\n",
1556
+ "verdict": "excerpt"
1557
+ },
1558
+ {
1559
+ "id": "density",
1560
+ "title": "Density",
1561
+ "note": "The row reads the theme’s control scale: 34 pixels at comfortable, 28 at compact, 26 at dense, with the type and the inset stepping with it. Without density the grid takes the page’s, which the toolbar switches; with density it writes data-slotted-density on its own root and holds that one whatever the page says. The menu and the popovers it opens are portals and stay at the page’s density.",
1562
+ "language": "tsx",
1563
+ "source": "<DataGrid columns={columns} density=\"dense\" rowKey=\"id\" rows={shipments} />;\n",
1564
+ "verdict": "excerpt"
1565
+ },
1566
+ {
1567
+ "id": "responsive-priority",
1568
+ "title": "Columns that yield to a phone",
1569
+ "note": "The same grid in a phone-wide room. When the frame is too narrow for the template, columns leave the row: first those without a priority, the last first, then the highest priority; the identity column — the first rowHeader — and an actions column never leave. A column that leaves moves into the row’s pop-in, its label over its value drawn by the same cell renderer; one with popin: false is hidden instead. The root states the pop-in’s count as data-popin, rows grow to their fields, and onOutOfSpaceChange reports both sets — but the column state is untouched, so nothing is persisted and a wider frame brings them back. That is columnOverflow=\"auto\", the default, under 600px, or under 1024px with a coarse pointer; wider, with a mouse, it scrolls. columnOverflow=\"popin\" pops in at every width, and \"scroll\" keeps every column and scrolls.",
1570
+ "language": "tsx",
1571
+ "source": "const columns: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Tracking', rowHeader: true },\n { id: 'status', label: 'Status', priority: 1 },\n { id: 'eta', label: 'ETA', kind: 'datetime', priority: 2 },\n { id: 'carrier', label: 'Carrier', priority: 3 },\n { id: 'cost', label: 'Cost', kind: 'number', popin: false },\n];\n<DataGrid columns={columns} onOutOfSpaceChange={setOut} rowKey=\"id\" rows={rows} />;\n",
1572
+ "verdict": "excerpt"
1573
+ },
1574
+ {
1575
+ "id": "content",
1576
+ "title": "Content the grid did not choose",
1577
+ "note": "A hundred-character customer name, an unbroken identifier, a right-to-left name, a disabled row, an empty cell in a numeric column and a value with a dash: each holds where the family says it holds.",
1578
+ "language": "tsx",
1579
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { Avatar } from '@slotted/react/avatar';\nimport { Badge } from '@slotted/react/badge';\nimport { DataGrid } from '@slotted/react/data-grid';\nimport { Inline } from '@slotted/react/inline';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst TONE: Record<string, 'secondary' | 'success' | 'danger' | 'warning'> = {\n 'In transit': 'secondary',\n Delivered: 'success',\n Delayed: 'danger',\n Customs: 'warning',\n};\n\nconst ROWS = shipments(10);\n\nexport default function DataGridContent() {\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n cellRenderers={{\n customer: ({ row }) => (\n <Inline align=\"center\" gap={2}>\n <Avatar name={row.customer} size=\"sm\" />\n {row.customer}\n </Inline>\n ),\n status: ({ value }) => (\n <Badge tone={TONE[String(value)]} variant=\"soft\">\n {String(value)}\n </Badge>\n ),\n }}\n height=\"24rem\"\n />\n );\n}\n",
1580
+ "verdict": "example"
1581
+ },
1582
+ {
1583
+ "id": "media",
1584
+ "title": "Pictures in cells",
1585
+ "note": "A renderer draws anything: an avatar beside the name, a thumbnail in a custom column. A stated rowHeight is the drawn row as well as the windowed one, so ten thousand rows of 56 pixels scroll to the right place. A cell with a picture and a name is one flex row of the renderer’s own; the grid lays out the renderer’s first element as the value.",
1586
+ "language": "tsx",
1587
+ "source": "<DataGrid\n cellRenderers={{\n customer: ({ row }) => (\n <span className=\"customer\">\n <Avatar name={row.customer} size=\"sm\" />\n <span>{row.customer}</span>\n </span>\n ),\n photo: ({ row }) => <Image alt=\"\" radius=\"sm\" ratio=\"landscape\" src={row.photo} />,\n }}\n columns={[...columns, { id: 'photo', label: 'Cargo', kind: 'custom', sortable: false }]}\n rowHeight={56}\n/>;\n",
1588
+ "verdict": "excerpt"
1589
+ },
1590
+ {
1591
+ "id": "realtime",
1592
+ "title": "Realtime",
1593
+ "note": "rows is compared with the rows before it, by key, on the mounted rows only: a cell whose value changed is marked for the time highlightChanges states (true is 1200 ms) and fades on the accent’s subtle ground; under reduced motion the ground stays flat and leaves with the mark. A row that arrived is not a change. Selection, cursor, expansion and scroll survive every tick because the key is the identity.",
1594
+ "language": "tsx",
1595
+ "source": "<DataGrid highlightChanges rows={feed.rows} />;\n",
1596
+ "verdict": "excerpt"
1597
+ },
1598
+ {
1599
+ "id": "tree",
1600
+ "title": "Tree data",
1601
+ "note": "tree names each row’s parent by key; a row whose parent is not in rows is a root. The root is a treegrid, every row carries aria-level and a branch aria-expanded. The open branches are expanded — the same state the detail uses; a branch opens its children, a leaf its detail. Filter and search keep a row that matches or has a descendant that matches, with its ancestors; sorting is among siblings; the page is a slice of the open rows; query.group is ignored. In the tree column, ArrowRight opens a closed branch, ArrowLeft closes an open one and climbs to the parent from a leaf. A row hasChildren says has children not yet in rows asks for them through onLoadChildren when opened, and shows the wait until they arrive.",
1602
+ "language": "tsx",
1603
+ "source": "import type { GridColumn, GridTree } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Location {\n id: string;\n parent: string | null;\n name: string;\n kind: string;\n units: number;\n}\n\nconst LOCATIONS: Location[] = [\n { id: 'reno', parent: null, name: 'Reno, NV', kind: 'Warehouse', units: 4210 },\n { id: 'reno-a', parent: 'reno', name: 'Zone A — dry goods', kind: 'Zone', units: 2630 },\n { id: 'reno-a-01', parent: 'reno-a', name: 'Aisle 01', kind: 'Aisle', units: 1410 },\n { id: 'reno-a-02', parent: 'reno-a', name: 'Aisle 02', kind: 'Aisle', units: 1220 },\n { id: 'reno-b', parent: 'reno', name: 'Zone B — chilled', kind: 'Zone', units: 1580 },\n { id: 'columbus', parent: null, name: 'Columbus, OH', kind: 'Warehouse', units: 3075 },\n { id: 'columbus-a', parent: 'columbus', name: 'Zone A — dry goods', kind: 'Zone', units: 3075 },\n { id: 'savannah', parent: null, name: 'Savannah, GA', kind: 'Warehouse', units: 1890 },\n { id: 'savannah-a', parent: 'savannah', name: 'Zone A — bonded', kind: 'Zone', units: 1890 },\n];\n\nconst COLUMNS: GridColumn<Location>[] = [\n { id: 'name', label: 'Location', accessor: 'name', rowHeader: true, flex: 1, minWidth: 220 },\n { id: 'kind', label: 'Type', accessor: 'kind', width: 130 },\n { id: 'units', label: 'Units on hand', accessor: 'units', kind: 'number', width: 150 },\n];\n\nconst TREE: GridTree<Location> = { parentKey: (row) => row.parent };\n\nexport default function DataGridTree() {\n return (\n <DataGrid\n aria-label=\"Stock by location\"\n columns={COLUMNS}\n defaultExpanded={['reno', 'reno-a']}\n height=\"22rem\"\n rowKey=\"id\"\n rows={LOCATIONS}\n tree={TREE}\n />\n );\n}\n",
1604
+ "verdict": "example"
1605
+ },
1606
+ {
1607
+ "id": "pinned-rows",
1608
+ "title": "Pinned rows",
1609
+ "note": "pinnedRows holds rows at the top or the bottom of the body, by key, in the stated order. A held row leaves the query — never sorted, filtered or paged — and stays on screen, under the head and over the summary, at the heights the grid measures for each. It is a row like any other: the cursor walks through it, it selects, edits and exports with the rest, and it counts in aria-rowcount.",
1610
+ "language": "tsx",
1611
+ "source": "<DataGrid pinnedRows={{ top: ['SHP-20487'], bottom: ['SHP-20481'] }} />;\n",
1612
+ "verdict": "excerpt"
1613
+ },
1614
+ {
1615
+ "id": "reorder-rows",
1616
+ "title": "Reordering rows",
1617
+ "note": "rowsReorderable draws a grip per row in a reserved column. The pointer drags from the grip and drops in a gap, with the same guide a column shows; Alt with the vertical arrows moves the row from any of its cells, and the move is announced. The grid keeps no order of its own: onRowsReorder says where the row goes in rows (from and to, the index it takes once moved) and the consumer moves it. Only while the query is at rest — no sort, filter, search or group — and without a tree, because elsewhere the position on screen is not the position in rows; the grip is disabled otherwise.",
1618
+ "language": "tsx",
1619
+ "source": "<DataGrid\n onRowsReorder={({ from, to }) => setRows((rows) => arrayMove(rows, from, to))}\n rows={rows}\n rowsReorderable\n/>;\n",
1620
+ "verdict": "excerpt"
1621
+ },
1622
+ {
1623
+ "id": "export",
1624
+ "title": "Export and print",
1625
+ "note": "handle.exportCsv builds the file by toCsv — RFC 4180, each cell as the grid draws it — from the rows the query left (every page in client mode) and the columns not hidden in the reader’s order, or the selected rows and every column on request, and hands it to the browser as a download; handle.toCsv returns the text for a consumer who sends it elsewhere. In print, the frame grows to its rows, nothing scrolls or sticks, and the pointer’s controls are not on paper; a windowed grid prints the rows it has mounted, so a consumer who prints ten thousand turns the window off first. Excel is the consumer’s: SheetJS reads the same text.",
1626
+ "language": "tsx",
1627
+ "source": "<>\n <Button onClick={() => grid.current?.exportCsv({ filename: 'shipments.csv' })}>CSV</Button>\n <Button onClick={() => grid.current?.exportCsv({ rows: 'selected', bom: true })}>\n Selected, for Excel\n </Button>\n <Button onClick={() => window.print()}>Print</Button>\n</>;\n",
1628
+ "verdict": "excerpt"
1629
+ },
1630
+ {
1631
+ "id": "keyboard",
1632
+ "title": "Keyboard",
1633
+ "note": "Tab enters on the current cell and leaves the grid. The arrows move one cell, Home and End along the row, Ctrl+Home and Ctrl+End to the corners, PageUp and PageDown a view. Enter and F2 enter a cell, Escape leaves it. On a header: Enter sorts, Shift+Enter appends, Ctrl+Enter, Shift+F10 and the Menu key open the menu, Ctrl+Shift+arrows resize, Alt+arrows move. The pop-in is the last cell of a row.",
1634
+ "language": "tsx",
1635
+ "source": "<DataGrid\n defaultCurrent={{ row: 'SHP-20481', column: 'customer' }}\n onCurrentChange={(cell) => log(cell)}\n/>;\n",
1636
+ "verdict": "excerpt"
1637
+ },
1638
+ {
1639
+ "id": "accessibility",
1640
+ "title": "What a reader hears",
1641
+ "note": "A grid named by aria-label; every row with its index in the whole set and every cell with its column index; aria-sort on the first key and the rest announced; the selection’s size in the header checkbox’s name; a resize as a width; a filter as its sentence. Inspect the tree with a screen reader.",
1642
+ "language": "tsx",
1643
+ "source": "<DataGrid\n aria-label=\"Shipments\"\n messages={{\n selectAllFiltered:\n '{count, plural, one {Select the # shipment} other {Select all # shipments}}',\n }}\n/>;\n",
1644
+ "verdict": "excerpt"
1645
+ },
1646
+ {
1647
+ "id": "basic",
1648
+ "title": "basic.tsx",
1649
+ "note": null,
1650
+ "language": "tsx",
1651
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { Badge } from '@slotted/react/badge';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Order {\n id: string;\n customer: string;\n warehouse: string;\n status: string;\n placed: string;\n total: number;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst WAREHOUSES = ['Reno', 'Columbus', 'Savannah'];\nconst STATUSES = ['Processing', 'Shipped', 'On hold', 'Delivered'];\n\nconst ORDERS: Order[] = Array.from({ length: 24 }, (_, index) => ({\n id: `SO-${10421 + index}`,\n customer: CUSTOMERS[(index * 5) % CUSTOMERS.length]!,\n warehouse: WAREHOUSES[index % WAREHOUSES.length]!,\n status: STATUSES[(index * 3) % STATUSES.length]!,\n placed: `2026-09-${String(1 + (index % 28)).padStart(2, '0')}`,\n total: 140 + ((index * 733) % 4100),\n}));\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\n\nconst TONE: Record<string, 'accent' | 'secondary' | 'success' | 'warning'> = {\n Delivered: 'success',\n 'On hold': 'warning',\n Processing: 'accent',\n Shipped: 'secondary',\n};\n\nconst columns: GridColumn<Order>[] = [\n { id: 'id', label: 'Order', accessor: 'id', rowHeader: true, width: 120, sortable: true },\n {\n id: 'customer',\n label: 'Customer',\n accessor: 'customer',\n flex: 1,\n minWidth: 180,\n sortable: true,\n },\n { id: 'warehouse', label: 'Warehouse', accessor: 'warehouse', width: 130, sortable: true },\n { id: 'status', label: 'Status', accessor: 'status', width: 130, sortable: true },\n { id: 'placed', label: 'Placed', accessor: 'placed', kind: 'date', width: 130, sortable: true },\n {\n id: 'total',\n label: 'Total',\n accessor: 'total',\n numeric: true,\n width: 130,\n sortable: true,\n format: (value) => USD.format(value as number),\n },\n];\n\nexport default function DataGridBasic() {\n return (\n <DataGrid\n aria-label=\"Orders\"\n cellRenderers={{\n status: ({ value }) => (\n <Badge tone={TONE[String(value)]} variant=\"soft\">\n {String(value)}\n </Badge>\n ),\n }}\n columns={columns}\n height=\"24rem\"\n rowKey=\"id\"\n rows={ORDERS}\n selectionMode=\"multiple\"\n />\n );\n}\n",
1652
+ "verdict": "example"
1653
+ },
1654
+ {
1655
+ "id": "empty",
1656
+ "title": "empty.tsx",
1657
+ "note": null,
1658
+ "language": "tsx",
1659
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = [] as Shipment[];\n\nexport default function DataGridEmpty() {\n return (\n <DataGrid aria-label=\"Shipments\" columns={COLUMNS} rowKey=\"id\" rows={ROWS} height=\"18rem\" />\n );\n}\n",
1660
+ "verdict": "example"
1661
+ },
1662
+ {
1663
+ "id": "error",
1664
+ "title": "error.tsx",
1665
+ "note": null,
1666
+ "language": "tsx",
1667
+ "source": "import { useState } from 'react';\nimport type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = [] as Shipment[];\n\nexport default function DataGridError() {\n const [attempts, setAttempts] = useState(0);\n\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n error=\"The shipments service did not answer within 30 seconds.\"\n height=\"18rem\"\n onRetry={() => setAttempts(attempts + 1)}\n />\n );\n}\n",
1668
+ "verdict": "example"
1669
+ },
1670
+ {
1671
+ "id": "loading",
1672
+ "title": "loading.tsx",
1673
+ "note": null,
1674
+ "language": "tsx",
1675
+ "source": "import type { GridColumn } from '@slotted/core/grid';\nimport { DataGrid } from '@slotted/react/data-grid';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = [] as Shipment[];\n\nexport default function DataGridLoading() {\n return (\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n height=\"18rem\"\n loading\n />\n );\n}\n",
1676
+ "verdict": "example"
1677
+ },
1678
+ {
1679
+ "id": "shipments-workspace",
1680
+ "title": "shipments-workspace.tsx",
1681
+ "note": null,
1682
+ "language": "tsx",
1683
+ "source": "import { useState } from 'react';\nimport { emptyQuery, withSearch, type GridColumn, type GridQuery } from '@slotted/core/grid';\nimport { Button } from '@slotted/react/button';\nimport { DataGrid } from '@slotted/react/data-grid';\nimport { Inline } from '@slotted/react/inline';\nimport { Stack } from '@slotted/react/stack';\nimport { TextField } from '@slotted/react/text-field';\nimport { Text } from '@slotted/react/typography';\n\ninterface Shipment {\n id: string;\n customer: string;\n destination: string;\n carrier: string;\n status: string;\n shipped: string;\n weight: number;\n cost: number;\n priority: boolean;\n}\n\nconst CUSTOMERS = [\n 'Alfreds Futterkiste',\n \"Bon app'\",\n 'Ernst Handel',\n 'Folk och fä HB',\n 'Hanari Carnes',\n 'Island Trading',\n 'QUICK-Stop',\n 'Wartian Herkku',\n];\nconst DESTINATIONS = [\n 'Berlin, DE',\n 'Marseille, FR',\n 'Graz, AT',\n 'Bräcke, SE',\n 'Rio de Janeiro, BR',\n 'Cowes, UK',\n 'Boise, US',\n 'Oulu, FI',\n];\nconst CARRIERS = ['UPS', 'FedEx', 'DHL', 'USPS'];\nconst STATUSES = ['In transit', 'Delivered', 'Delayed', 'Customs'];\n\nfunction shipments(count: number): Shipment[] {\n let seed = 7;\n const next = () => (seed = (seed * 1664525 + 1013904223) % 4294967296) / 4294967296;\n const pick = <T,>(list: readonly T[]) => list[Math.floor(next() * list.length)]!;\n return Array.from({ length: count }, (_, index) => {\n const weight = Math.round(next() * 9000) / 10;\n return {\n id: `SH-${3301 + index}`,\n customer: pick(CUSTOMERS),\n destination: pick(DESTINATIONS),\n carrier: pick(CARRIERS),\n status: pick(STATUSES),\n shipped: `2026-09-${String(1 + Math.floor(next() * 28)).padStart(2, '0')}`,\n weight,\n cost: Math.round(weight * (2 + next() * 3) * 100) / 100,\n priority: next() < 0.3,\n };\n });\n}\n\nconst USD = new Intl.NumberFormat('en-US', { currency: 'USD', style: 'currency' });\nconst money = (value: unknown) => (typeof value === 'number' ? USD.format(value) : '');\nconst kilograms = (value: unknown) => (typeof value === 'number' ? `${value.toFixed(1)} kg` : '');\n\nconst COLUMNS: GridColumn<Shipment>[] = [\n { id: 'id', label: 'Shipment', accessor: 'id', rowHeader: true, width: 120, text: 'nowrap' },\n { id: 'customer', label: 'Customer', accessor: 'customer', flex: 1, minWidth: 180 },\n { id: 'destination', label: 'Destination', accessor: 'destination', width: 170 },\n {\n id: 'carrier',\n label: 'Carrier',\n accessor: 'carrier',\n kind: 'set',\n width: 110,\n options: CARRIERS.map((value) => ({ value, label: value })),\n },\n {\n id: 'status',\n label: 'Status',\n accessor: 'status',\n kind: 'set',\n width: 120,\n options: STATUSES.map((value) => ({ value, label: value })),\n },\n { id: 'shipped', label: 'Shipped', accessor: 'shipped', kind: 'date', width: 130 },\n {\n id: 'weight',\n label: 'Weight',\n accessor: 'weight',\n kind: 'number',\n width: 110,\n format: kilograms,\n },\n { id: 'cost', label: 'Cost', accessor: 'cost', kind: 'number', width: 120, format: money },\n];\n\nconst ROWS = shipments(60);\n\nexport default function DataGridShipmentsWorkspace() {\n const [query, setQuery] = useState<GridQuery>(emptyQuery());\n const [value, setValue] = useState<string | readonly string[] | null>([]);\n const count = Array.isArray(value) ? value.length : 0;\n\n return (\n <Stack gap={3}>\n <TextField\n aria-label=\"Search shipments\"\n clearable\n onValueChange={(text) => setQuery((current) => withSearch(current, text).query)}\n placeholder=\"Search by shipment, customer or destination\"\n value={query.search}\n />\n <DataGrid\n aria-label=\"Shipments\"\n columns={COLUMNS}\n rowKey=\"id\"\n rows={ROWS}\n footer={\n <Inline align=\"center\" gap={3}>\n <Text size=\"sm\" tone=\"muted\">\n {count} selected\n </Text>\n <Button disabled={count === 0} size=\"sm\" variant=\"outline\">\n Print labels\n </Button>\n </Inline>\n }\n height=\"26rem\"\n onQueryChange={setQuery}\n onValueChange={setValue}\n query={query}\n selectionMode=\"multiple\"\n value={value}\n />\n </Stack>\n );\n}\n",
1684
+ "verdict": "example"
1685
+ }
1686
+ ]
1687
+ }