@kayord/ui 3.0.11 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (487) hide show
  1. package/README.md +70 -156
  2. package/dist/components/custom/action/Actions.svelte +1 -1
  3. package/dist/components/custom/animations/NumberTicker.svelte +2 -3
  4. package/dist/components/custom/copy-button/CopyButton.svelte +0 -1
  5. package/dist/components/custom/data-table/DataTable.svelte +42 -69
  6. package/dist/components/custom/data-table/DataTable.svelte.d.ts +14 -9
  7. package/dist/components/custom/data-table/DataTableFooter.svelte +9 -8
  8. package/dist/components/custom/data-table/DataTableFooter.svelte.d.ts +9 -8
  9. package/dist/components/custom/data-table/DataTableHeader.svelte +27 -13
  10. package/dist/components/custom/data-table/DataTableHeader.svelte.d.ts +9 -9
  11. package/dist/components/custom/data-table/DataTableView.svelte +7 -6
  12. package/dist/components/custom/data-table/DataTableView.svelte.d.ts +8 -7
  13. package/dist/components/custom/data-table/FullscreenModeToggle.svelte +11 -6
  14. package/dist/components/custom/data-table/Pagination.svelte +57 -41
  15. package/dist/components/custom/data-table/Pagination.svelte.d.ts +9 -8
  16. package/dist/components/custom/data-table/data-table-utils.d.ts +2 -2
  17. package/dist/components/custom/data-table/data-table-utils.js +20 -21
  18. package/dist/components/custom/data-table/features.d.ts +157 -0
  19. package/dist/components/custom/data-table/features.js +36 -0
  20. package/dist/components/custom/data-table/index.d.ts +5 -2
  21. package/dist/components/custom/data-table/index.js +3 -2
  22. package/dist/components/custom/data-table/shad-table.svelte.d.ts +9 -8
  23. package/dist/components/custom/data-table/shad-table.svelte.js +51 -230
  24. package/dist/components/custom/data-table/table-search-params.d.ts +9 -7
  25. package/dist/components/custom/data-table/table-search-params.js +29 -20
  26. package/dist/components/custom/data-table/table-url-sync.svelte.d.ts +42 -0
  27. package/dist/components/custom/data-table/table-url-sync.svelte.js +81 -0
  28. package/dist/components/custom/data-table/types.d.ts +9 -5
  29. package/dist/components/custom/light-switch.svelte/LightSwitch.svelte +1 -1
  30. package/dist/components/custom/loader/Loader.svelte +0 -2
  31. package/dist/components/custom/loader/Loader.svelte.d.ts +1 -3
  32. package/dist/components/custom/progress-loading/ProgressLoading.svelte +5 -2
  33. package/dist/components/custom/progress-loading/ProgressLoading.svelte.d.ts +2 -2
  34. package/dist/components/custom/theme-selector/ThemeSelector.svelte +1 -1
  35. package/dist/components/ui/accordion/accordion-content.svelte +2 -2
  36. package/dist/components/ui/accordion/accordion-item.svelte +5 -1
  37. package/dist/components/ui/accordion/accordion-trigger.svelte +5 -11
  38. package/dist/components/ui/accordion/index.d.ts +1 -1
  39. package/dist/components/ui/accordion/index.js +1 -1
  40. package/dist/components/ui/alert/alert-action.svelte +7 -2
  41. package/dist/components/ui/alert/alert-action.svelte.d.ts +1 -1
  42. package/dist/components/ui/alert/alert-description.svelte +2 -2
  43. package/dist/components/ui/alert/alert-description.svelte.d.ts +1 -1
  44. package/dist/components/ui/alert/alert-title.svelte +2 -2
  45. package/dist/components/ui/alert/alert-title.svelte.d.ts +1 -1
  46. package/dist/components/ui/alert/alert.svelte +9 -4
  47. package/dist/components/ui/alert/alert.svelte.d.ts +9 -9
  48. package/dist/components/ui/alert/index.d.ts +2 -2
  49. package/dist/components/ui/alert/index.js +2 -2
  50. package/dist/components/ui/alert-dialog/alert-dialog-action.svelte +5 -1
  51. package/dist/components/ui/alert-dialog/alert-dialog-cancel.svelte +5 -1
  52. package/dist/components/ui/alert-dialog/alert-dialog-content.svelte +3 -3
  53. package/dist/components/ui/alert-dialog/alert-dialog-content.svelte.d.ts +1 -1
  54. package/dist/components/ui/alert-dialog/alert-dialog-description.svelte +6 -5
  55. package/dist/components/ui/alert-dialog/alert-dialog-footer.svelte +1 -1
  56. package/dist/components/ui/alert-dialog/alert-dialog-header.svelte +2 -5
  57. package/dist/components/ui/alert-dialog/alert-dialog-header.svelte.d.ts +1 -1
  58. package/dist/components/ui/alert-dialog/alert-dialog-media.svelte +2 -5
  59. package/dist/components/ui/alert-dialog/alert-dialog-media.svelte.d.ts +1 -1
  60. package/dist/components/ui/alert-dialog/alert-dialog-overlay.svelte +6 -5
  61. package/dist/components/ui/alert-dialog/alert-dialog-title.svelte +6 -5
  62. package/dist/components/ui/alert-dialog/index.d.ts +7 -7
  63. package/dist/components/ui/alert-dialog/index.js +7 -7
  64. package/dist/components/ui/avatar/avatar-badge.svelte +1 -1
  65. package/dist/components/ui/avatar/avatar-badge.svelte.d.ts +1 -1
  66. package/dist/components/ui/avatar/avatar-fallback.svelte +6 -2
  67. package/dist/components/ui/avatar/avatar-group-count.svelte +2 -2
  68. package/dist/components/ui/avatar/avatar-group-count.svelte.d.ts +1 -1
  69. package/dist/components/ui/avatar/avatar-group.svelte +2 -2
  70. package/dist/components/ui/avatar/avatar-group.svelte.d.ts +1 -1
  71. package/dist/components/ui/avatar/avatar-image.svelte +6 -2
  72. package/dist/components/ui/avatar/avatar.svelte +1 -1
  73. package/dist/components/ui/avatar/index.d.ts +4 -4
  74. package/dist/components/ui/avatar/index.js +4 -4
  75. package/dist/components/ui/badge/badge.svelte +3 -4
  76. package/dist/components/ui/badge/badge.svelte.d.ts +22 -22
  77. package/dist/components/ui/breadcrumb/breadcrumb-ellipsis.svelte +4 -4
  78. package/dist/components/ui/breadcrumb/breadcrumb-ellipsis.svelte.d.ts +1 -1
  79. package/dist/components/ui/breadcrumb/breadcrumb-item.svelte +13 -3
  80. package/dist/components/ui/breadcrumb/breadcrumb-item.svelte.d.ts +1 -1
  81. package/dist/components/ui/breadcrumb/breadcrumb-link.svelte +3 -3
  82. package/dist/components/ui/breadcrumb/breadcrumb-link.svelte.d.ts +2 -2
  83. package/dist/components/ui/breadcrumb/breadcrumb-list.svelte +8 -3
  84. package/dist/components/ui/breadcrumb/breadcrumb-list.svelte.d.ts +1 -1
  85. package/dist/components/ui/breadcrumb/breadcrumb-page.svelte +2 -2
  86. package/dist/components/ui/breadcrumb/breadcrumb-page.svelte.d.ts +1 -1
  87. package/dist/components/ui/breadcrumb/breadcrumb-separator.svelte +8 -3
  88. package/dist/components/ui/breadcrumb/breadcrumb.svelte +1 -1
  89. package/dist/components/ui/breadcrumb/index.d.ts +2 -2
  90. package/dist/components/ui/breadcrumb/index.js +2 -2
  91. package/dist/components/ui/button/button.svelte +7 -12
  92. package/dist/components/ui/button/button.svelte.d.ts +46 -46
  93. package/dist/components/ui/button/index.js +1 -1
  94. package/dist/components/ui/button-group/button-group-separator.svelte +1 -1
  95. package/dist/components/ui/button-group/button-group-text.svelte +2 -5
  96. package/dist/components/ui/button-group/button-group-text.svelte.d.ts +1 -1
  97. package/dist/components/ui/button-group/button-group.svelte.d.ts +8 -8
  98. package/dist/components/ui/button-group/index.d.ts +2 -2
  99. package/dist/components/ui/button-group/index.js +2 -2
  100. package/dist/components/ui/calendar/calendar-caption.svelte +3 -3
  101. package/dist/components/ui/calendar/calendar-caption.svelte.d.ts +3 -3
  102. package/dist/components/ui/calendar/calendar-cell.svelte +5 -1
  103. package/dist/components/ui/calendar/calendar-day.svelte +8 -4
  104. package/dist/components/ui/calendar/calendar-grid-body.svelte +5 -1
  105. package/dist/components/ui/calendar/calendar-grid-head.svelte +5 -1
  106. package/dist/components/ui/calendar/calendar-grid-row.svelte +5 -1
  107. package/dist/components/ui/calendar/calendar-grid.svelte +10 -2
  108. package/dist/components/ui/calendar/calendar-head-cell.svelte +9 -2
  109. package/dist/components/ui/calendar/calendar-header.svelte +9 -2
  110. package/dist/components/ui/calendar/calendar-heading.svelte +10 -2
  111. package/dist/components/ui/calendar/calendar-month-select.svelte +7 -5
  112. package/dist/components/ui/calendar/calendar-months.svelte +6 -2
  113. package/dist/components/ui/calendar/calendar-months.svelte.d.ts +1 -1
  114. package/dist/components/ui/calendar/calendar-next-button.svelte +1 -1
  115. package/dist/components/ui/calendar/calendar-prev-button.svelte +1 -1
  116. package/dist/components/ui/calendar/calendar-year-select.svelte +7 -5
  117. package/dist/components/ui/calendar/calendar.svelte +3 -3
  118. package/dist/components/ui/calendar/calendar.svelte.d.ts +3 -3
  119. package/dist/components/ui/calendar/index.d.ts +10 -10
  120. package/dist/components/ui/calendar/index.js +10 -10
  121. package/dist/components/ui/card/card-action.svelte +4 -1
  122. package/dist/components/ui/card/card-content.svelte +7 -2
  123. package/dist/components/ui/card/card-content.svelte.d.ts +1 -1
  124. package/dist/components/ui/card/card-description.svelte +7 -2
  125. package/dist/components/ui/card/card-description.svelte.d.ts +1 -1
  126. package/dist/components/ui/card/card-footer.svelte +1 -1
  127. package/dist/components/ui/card/card-header.svelte +1 -1
  128. package/dist/components/ui/card/card-title.svelte +1 -1
  129. package/dist/components/ui/card/card-title.svelte.d.ts +1 -1
  130. package/dist/components/ui/card/card.svelte +2 -5
  131. package/dist/components/ui/card/card.svelte.d.ts +1 -1
  132. package/dist/components/ui/card/index.d.ts +2 -2
  133. package/dist/components/ui/card/index.js +2 -2
  134. package/dist/components/ui/carousel/carousel-content.svelte +7 -3
  135. package/dist/components/ui/carousel/carousel-content.svelte.d.ts +1 -1
  136. package/dist/components/ui/carousel/carousel-item.svelte +7 -3
  137. package/dist/components/ui/carousel/carousel-item.svelte.d.ts +1 -1
  138. package/dist/components/ui/carousel/carousel-next.svelte +6 -6
  139. package/dist/components/ui/carousel/carousel-previous.svelte +6 -6
  140. package/dist/components/ui/carousel/carousel.svelte +6 -1
  141. package/dist/components/ui/carousel/carousel.svelte.d.ts +1 -1
  142. package/dist/components/ui/carousel/index.d.ts +2 -2
  143. package/dist/components/ui/carousel/index.js +2 -2
  144. package/dist/components/ui/chart/chart-container.svelte +3 -3
  145. package/dist/components/ui/chart/chart-container.svelte.d.ts +1 -1
  146. package/dist/components/ui/chart/chart-tooltip.svelte +19 -10
  147. package/dist/components/ui/chart/chart-tooltip.svelte.d.ts +3 -2
  148. package/dist/components/ui/chart/chart-utils.d.ts +1 -1
  149. package/dist/components/ui/chart/chart-utils.js +3 -1
  150. package/dist/components/ui/checkbox/checkbox.svelte +9 -6
  151. package/dist/components/ui/collapsible/collapsible.svelte +5 -1
  152. package/dist/components/ui/collapsible/index.d.ts +2 -2
  153. package/dist/components/ui/collapsible/index.js +2 -2
  154. package/dist/components/ui/command/command-dialog.svelte +4 -4
  155. package/dist/components/ui/command/command-dialog.svelte.d.ts +1 -1
  156. package/dist/components/ui/command/command-empty.svelte +5 -1
  157. package/dist/components/ui/command/command-group.svelte +2 -5
  158. package/dist/components/ui/command/command-input.svelte +7 -6
  159. package/dist/components/ui/command/command-item.svelte +9 -6
  160. package/dist/components/ui/command/command-link-item.svelte +6 -2
  161. package/dist/components/ui/command/command-list.svelte +6 -2
  162. package/dist/components/ui/command/command-separator.svelte +6 -2
  163. package/dist/components/ui/command/command-shortcut.svelte +1 -4
  164. package/dist/components/ui/command/command.svelte +2 -2
  165. package/dist/components/ui/command/index.d.ts +4 -4
  166. package/dist/components/ui/command/index.js +4 -4
  167. package/dist/components/ui/context-menu/context-menu-checkbox-item.svelte +4 -4
  168. package/dist/components/ui/context-menu/context-menu-content.svelte +2 -2
  169. package/dist/components/ui/context-menu/context-menu-content.svelte.d.ts +1 -1
  170. package/dist/components/ui/context-menu/context-menu-group-heading.svelte +1 -1
  171. package/dist/components/ui/context-menu/context-menu-item.svelte +1 -1
  172. package/dist/components/ui/context-menu/context-menu-label.svelte +1 -1
  173. package/dist/components/ui/context-menu/context-menu-radio-group.svelte +11 -2
  174. package/dist/components/ui/context-menu/context-menu-radio-item.svelte +4 -4
  175. package/dist/components/ui/context-menu/context-menu-separator.svelte +6 -2
  176. package/dist/components/ui/context-menu/context-menu-shortcut.svelte +1 -4
  177. package/dist/components/ui/context-menu/context-menu-sub-content.svelte +6 -5
  178. package/dist/components/ui/context-menu/context-menu-sub-trigger.svelte +2 -2
  179. package/dist/components/ui/context-menu/context-menu-trigger.svelte +5 -1
  180. package/dist/components/ui/context-menu/index.d.ts +10 -10
  181. package/dist/components/ui/context-menu/index.js +10 -10
  182. package/dist/components/ui/data-table/index.d.ts +2 -3
  183. package/dist/components/ui/data-table/index.js +1 -3
  184. package/dist/components/ui/dialog/dialog-close.svelte +5 -1
  185. package/dist/components/ui/dialog/dialog-content.svelte +6 -6
  186. package/dist/components/ui/dialog/dialog-content.svelte.d.ts +1 -1
  187. package/dist/components/ui/dialog/dialog-description.svelte +6 -5
  188. package/dist/components/ui/dialog/dialog-footer.svelte +3 -6
  189. package/dist/components/ui/dialog/dialog-header.svelte +7 -2
  190. package/dist/components/ui/dialog/dialog-header.svelte.d.ts +1 -1
  191. package/dist/components/ui/dialog/dialog-overlay.svelte +6 -5
  192. package/dist/components/ui/dialog/dialog-title.svelte +5 -1
  193. package/dist/components/ui/dialog/dialog-trigger.svelte +5 -1
  194. package/dist/components/ui/dialog/index.d.ts +6 -6
  195. package/dist/components/ui/dialog/index.js +6 -6
  196. package/dist/components/ui/drawer/drawer-content.svelte +5 -8
  197. package/dist/components/ui/drawer/drawer-content.svelte.d.ts +1 -1
  198. package/dist/components/ui/drawer/drawer-description.svelte +6 -2
  199. package/dist/components/ui/drawer/drawer-footer.svelte +6 -1
  200. package/dist/components/ui/drawer/drawer-header.svelte +2 -5
  201. package/dist/components/ui/drawer/drawer-header.svelte.d.ts +1 -1
  202. package/dist/components/ui/drawer/drawer-overlay.svelte +6 -5
  203. package/dist/components/ui/drawer/drawer-title.svelte +6 -2
  204. package/dist/components/ui/drawer/index.d.ts +5 -5
  205. package/dist/components/ui/drawer/index.js +5 -5
  206. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-group.svelte +6 -1
  207. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +6 -6
  208. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte +2 -2
  209. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte.d.ts +1 -1
  210. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte +2 -2
  211. package/dist/components/ui/dropdown-menu/dropdown-menu-label.svelte +1 -1
  212. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte +11 -2
  213. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte +4 -4
  214. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte +6 -2
  215. package/dist/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte +2 -5
  216. package/dist/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte.d.ts +1 -1
  217. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte +6 -5
  218. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +2 -2
  219. package/dist/components/ui/dropdown-menu/index.d.ts +5 -5
  220. package/dist/components/ui/dropdown-menu/index.js +5 -5
  221. package/dist/components/ui/empty/empty-content.svelte +4 -1
  222. package/dist/components/ui/empty/empty-description.svelte +1 -1
  223. package/dist/components/ui/empty/empty-header.svelte +1 -1
  224. package/dist/components/ui/empty/empty-media.svelte +1 -1
  225. package/dist/components/ui/empty/empty-media.svelte.d.ts +8 -8
  226. package/dist/components/ui/empty/empty-title.svelte +6 -1
  227. package/dist/components/ui/empty/empty.svelte +1 -1
  228. package/dist/components/ui/empty/index.d.ts +3 -3
  229. package/dist/components/ui/empty/index.js +3 -3
  230. package/dist/components/ui/field/field-content.svelte +1 -1
  231. package/dist/components/ui/field/field-description.svelte +2 -2
  232. package/dist/components/ui/field/field-error.svelte +2 -2
  233. package/dist/components/ui/field/field-error.svelte.d.ts +1 -1
  234. package/dist/components/ui/field/field-group.svelte +1 -1
  235. package/dist/components/ui/field/field-label.svelte +7 -2
  236. package/dist/components/ui/field/field-separator.svelte +3 -3
  237. package/dist/components/ui/field/field-separator.svelte.d.ts +1 -1
  238. package/dist/components/ui/field/field-set.svelte +1 -4
  239. package/dist/components/ui/field/field-title.svelte +1 -4
  240. package/dist/components/ui/field/field.svelte +1 -1
  241. package/dist/components/ui/field/field.svelte.d.ts +12 -12
  242. package/dist/components/ui/field/index.d.ts +7 -7
  243. package/dist/components/ui/field/index.js +7 -7
  244. package/dist/components/ui/form/form-description.svelte +1 -1
  245. package/dist/components/ui/form/form-element-field.svelte +4 -3
  246. package/dist/components/ui/form/form-element-field.svelte.d.ts +2 -2
  247. package/dist/components/ui/form/form-field-errors.svelte +5 -1
  248. package/dist/components/ui/form/form-field.svelte +3 -2
  249. package/dist/components/ui/form/form-field.svelte.d.ts +1 -1
  250. package/dist/components/ui/form/form-fieldset.svelte +1 -1
  251. package/dist/components/ui/form/form-fieldset.svelte.d.ts +1 -1
  252. package/dist/components/ui/form/form-label.svelte +5 -1
  253. package/dist/components/ui/form/form-legend.svelte +6 -2
  254. package/dist/components/ui/form/index.d.ts +3 -3
  255. package/dist/components/ui/form/index.js +3 -3
  256. package/dist/components/ui/hover-card/hover-card-content.svelte +1 -4
  257. package/dist/components/ui/hover-card/index.d.ts +2 -2
  258. package/dist/components/ui/hover-card/index.js +2 -2
  259. package/dist/components/ui/input/input.svelte +5 -4
  260. package/dist/components/ui/input/input.svelte.d.ts +1 -1
  261. package/dist/components/ui/input-group/index.d.ts +1 -1
  262. package/dist/components/ui/input-group/index.js +1 -1
  263. package/dist/components/ui/input-group/input-group-addon.svelte +2 -3
  264. package/dist/components/ui/input-group/input-group-addon.svelte.d.ts +15 -15
  265. package/dist/components/ui/input-group/input-group-button.svelte +1 -1
  266. package/dist/components/ui/input-group/input-group-button.svelte.d.ts +15 -15
  267. package/dist/components/ui/input-group/input-group-input.svelte +2 -5
  268. package/dist/components/ui/input-group/input-group-input.svelte.d.ts +1 -1
  269. package/dist/components/ui/input-group/input-group-text.svelte +1 -4
  270. package/dist/components/ui/input-group/input-group-textarea.svelte +2 -5
  271. package/dist/components/ui/input-group/input-group.svelte +1 -1
  272. package/dist/components/ui/input-otp/index.d.ts +2 -2
  273. package/dist/components/ui/input-otp/index.js +2 -2
  274. package/dist/components/ui/input-otp/input-otp-group.svelte +2 -5
  275. package/dist/components/ui/input-otp/input-otp-group.svelte.d.ts +1 -1
  276. package/dist/components/ui/input-otp/input-otp-separator.svelte +4 -4
  277. package/dist/components/ui/input-otp/input-otp-separator.svelte.d.ts +1 -1
  278. package/dist/components/ui/input-otp/input-otp-slot.svelte +11 -4
  279. package/dist/components/ui/input-otp/input-otp.svelte +1 -1
  280. package/dist/components/ui/item/index.d.ts +7 -7
  281. package/dist/components/ui/item/index.js +7 -7
  282. package/dist/components/ui/item/item-actions.svelte +6 -1
  283. package/dist/components/ui/item/item-content.svelte +1 -1
  284. package/dist/components/ui/item/item-description.svelte +1 -1
  285. package/dist/components/ui/item/item-footer.svelte +1 -1
  286. package/dist/components/ui/item/item-group.svelte +1 -4
  287. package/dist/components/ui/item/item-header.svelte +1 -1
  288. package/dist/components/ui/item/item-media.svelte +1 -2
  289. package/dist/components/ui/item/item-media.svelte.d.ts +11 -11
  290. package/dist/components/ui/item/item-separator.svelte +12 -2
  291. package/dist/components/ui/item/item-title.svelte +1 -4
  292. package/dist/components/ui/item/item.svelte +3 -3
  293. package/dist/components/ui/item/item.svelte.d.ts +22 -22
  294. package/dist/components/ui/kbd/index.d.ts +1 -1
  295. package/dist/components/ui/kbd/index.js +1 -1
  296. package/dist/components/ui/kbd/kbd-group.svelte +6 -1
  297. package/dist/components/ui/kbd/kbd.svelte +1 -1
  298. package/dist/components/ui/label/label.svelte +6 -2
  299. package/dist/components/ui/menubar/index.d.ts +8 -8
  300. package/dist/components/ui/menubar/index.js +8 -8
  301. package/dist/components/ui/menubar/menubar-checkbox-item.svelte +6 -6
  302. package/dist/components/ui/menubar/menubar-content.svelte +2 -2
  303. package/dist/components/ui/menubar/menubar-content.svelte.d.ts +1 -1
  304. package/dist/components/ui/menubar/menubar-group-heading.svelte +1 -1
  305. package/dist/components/ui/menubar/menubar-item.svelte +1 -4
  306. package/dist/components/ui/menubar/menubar-label.svelte +1 -1
  307. package/dist/components/ui/menubar/menubar-radio-group.svelte +5 -1
  308. package/dist/components/ui/menubar/menubar-radio-item.svelte +4 -4
  309. package/dist/components/ui/menubar/menubar-separator.svelte +5 -1
  310. package/dist/components/ui/menubar/menubar-shortcut.svelte +2 -5
  311. package/dist/components/ui/menubar/menubar-shortcut.svelte.d.ts +1 -1
  312. package/dist/components/ui/menubar/menubar-sub-content.svelte +6 -5
  313. package/dist/components/ui/menubar/menubar-sub-trigger.svelte +2 -2
  314. package/dist/components/ui/menubar/menubar-trigger.svelte +6 -5
  315. package/dist/components/ui/menubar/menubar.svelte +6 -2
  316. package/dist/components/ui/native-select/index.d.ts +3 -3
  317. package/dist/components/ui/native-select/index.js +3 -3
  318. package/dist/components/ui/native-select/native-select-opt-group.svelte +6 -2
  319. package/dist/components/ui/native-select/native-select-opt-group.svelte.d.ts +1 -1
  320. package/dist/components/ui/native-select/native-select-option.svelte +1 -1
  321. package/dist/components/ui/native-select/native-select-option.svelte.d.ts +1 -1
  322. package/dist/components/ui/native-select/native-select.svelte +7 -8
  323. package/dist/components/ui/navigation-menu/index.d.ts +1 -1
  324. package/dist/components/ui/navigation-menu/index.js +1 -1
  325. package/dist/components/ui/navigation-menu/navigation-menu-content.svelte +6 -2
  326. package/dist/components/ui/navigation-menu/navigation-menu-indicator.svelte +7 -3
  327. package/dist/components/ui/navigation-menu/navigation-menu-item.svelte +5 -1
  328. package/dist/components/ui/navigation-menu/navigation-menu-link.svelte +6 -5
  329. package/dist/components/ui/navigation-menu/navigation-menu-list.svelte +9 -2
  330. package/dist/components/ui/navigation-menu/navigation-menu-trigger.svelte +4 -7
  331. package/dist/components/ui/navigation-menu/navigation-menu-trigger.svelte.d.ts +1 -1
  332. package/dist/components/ui/navigation-menu/navigation-menu-viewport.svelte +6 -2
  333. package/dist/components/ui/navigation-menu/navigation-menu.svelte +4 -1
  334. package/dist/components/ui/pagination/index.d.ts +4 -4
  335. package/dist/components/ui/pagination/index.js +4 -4
  336. package/dist/components/ui/pagination/pagination-content.svelte +7 -2
  337. package/dist/components/ui/pagination/pagination-content.svelte.d.ts +1 -1
  338. package/dist/components/ui/pagination/pagination-ellipsis.svelte +4 -7
  339. package/dist/components/ui/pagination/pagination-ellipsis.svelte.d.ts +1 -1
  340. package/dist/components/ui/pagination/pagination-item.svelte +6 -2
  341. package/dist/components/ui/pagination/pagination-item.svelte.d.ts +1 -1
  342. package/dist/components/ui/pagination/pagination-link.svelte +6 -2
  343. package/dist/components/ui/pagination/pagination-next-button.svelte +1 -1
  344. package/dist/components/ui/pagination/pagination-next.svelte +7 -3
  345. package/dist/components/ui/pagination/pagination-prev-button.svelte +1 -1
  346. package/dist/components/ui/pagination/pagination-previous.svelte +12 -4
  347. package/dist/components/ui/pagination/pagination.svelte +0 -1
  348. package/dist/components/ui/popover/index.d.ts +2 -2
  349. package/dist/components/ui/popover/index.js +2 -2
  350. package/dist/components/ui/popover/popover-content.svelte +2 -2
  351. package/dist/components/ui/popover/popover-content.svelte.d.ts +1 -1
  352. package/dist/components/ui/popover/popover-description.svelte +7 -2
  353. package/dist/components/ui/popover/popover-description.svelte.d.ts +1 -1
  354. package/dist/components/ui/popover/popover-header.svelte +7 -2
  355. package/dist/components/ui/popover/popover-header.svelte.d.ts +1 -1
  356. package/dist/components/ui/popover/popover-title.svelte +7 -2
  357. package/dist/components/ui/popover/popover-title.svelte.d.ts +1 -1
  358. package/dist/components/ui/popover/popover-trigger.svelte +12 -3
  359. package/dist/components/ui/progress/progress.svelte +1 -1
  360. package/dist/components/ui/radio-group/index.d.ts +1 -1
  361. package/dist/components/ui/radio-group/index.js +1 -1
  362. package/dist/components/ui/radio-group/radio-group-item.svelte +3 -5
  363. package/dist/components/ui/radio-group/radio-group.svelte +1 -1
  364. package/dist/components/ui/range-calendar/index.d.ts +10 -10
  365. package/dist/components/ui/range-calendar/index.js +10 -10
  366. package/dist/components/ui/range-calendar/range-calendar-caption.svelte +3 -3
  367. package/dist/components/ui/range-calendar/range-calendar-caption.svelte.d.ts +3 -3
  368. package/dist/components/ui/range-calendar/range-calendar-cell.svelte +6 -2
  369. package/dist/components/ui/range-calendar/range-calendar-day.svelte +8 -4
  370. package/dist/components/ui/range-calendar/range-calendar-grid-row.svelte +5 -1
  371. package/dist/components/ui/range-calendar/range-calendar-grid.svelte +5 -1
  372. package/dist/components/ui/range-calendar/range-calendar-head-cell.svelte +9 -2
  373. package/dist/components/ui/range-calendar/range-calendar-header.svelte +9 -2
  374. package/dist/components/ui/range-calendar/range-calendar-heading.svelte +10 -2
  375. package/dist/components/ui/range-calendar/range-calendar-month-select.svelte +6 -4
  376. package/dist/components/ui/range-calendar/range-calendar-months.svelte +6 -2
  377. package/dist/components/ui/range-calendar/range-calendar-months.svelte.d.ts +1 -1
  378. package/dist/components/ui/range-calendar/range-calendar-next-button.svelte +1 -1
  379. package/dist/components/ui/range-calendar/range-calendar-prev-button.svelte +1 -1
  380. package/dist/components/ui/range-calendar/range-calendar-year-select.svelte +6 -4
  381. package/dist/components/ui/range-calendar/range-calendar.svelte +4 -4
  382. package/dist/components/ui/range-calendar/range-calendar.svelte.d.ts +4 -4
  383. package/dist/components/ui/resizable/resizable-handle.svelte +2 -2
  384. package/dist/components/ui/resizable/resizable-pane-group.svelte +4 -1
  385. package/dist/components/ui/scroll-area/scroll-area-scrollbar.svelte +5 -2
  386. package/dist/components/ui/scroll-area/scroll-area.svelte +8 -3
  387. package/dist/components/ui/select/index.d.ts +7 -7
  388. package/dist/components/ui/select/index.js +7 -7
  389. package/dist/components/ui/select/select-content.svelte +7 -5
  390. package/dist/components/ui/select/select-content.svelte.d.ts +2 -2
  391. package/dist/components/ui/select/select-group-heading.svelte +1 -1
  392. package/dist/components/ui/select/select-group.svelte +11 -2
  393. package/dist/components/ui/select/select-item.svelte +3 -3
  394. package/dist/components/ui/select/select-label.svelte +1 -1
  395. package/dist/components/ui/select/select-scroll-down-button.svelte +3 -6
  396. package/dist/components/ui/select/select-scroll-up-button.svelte +3 -6
  397. package/dist/components/ui/select/select-separator.svelte +7 -3
  398. package/dist/components/ui/select/select-trigger.svelte +3 -3
  399. package/dist/components/ui/select/select.svelte +5 -1
  400. package/dist/components/ui/separator/separator.svelte +1 -1
  401. package/dist/components/ui/sheet/index.d.ts +6 -6
  402. package/dist/components/ui/sheet/index.js +6 -6
  403. package/dist/components/ui/sheet/sheet-content.svelte +6 -6
  404. package/dist/components/ui/sheet/sheet-content.svelte.d.ts +2 -2
  405. package/dist/components/ui/sheet/sheet-description.svelte +6 -2
  406. package/dist/components/ui/sheet/sheet-footer.svelte +6 -1
  407. package/dist/components/ui/sheet/sheet-header.svelte +7 -2
  408. package/dist/components/ui/sheet/sheet-header.svelte.d.ts +1 -1
  409. package/dist/components/ui/sheet/sheet-overlay.svelte +6 -2
  410. package/dist/components/ui/sheet/sheet-title.svelte +6 -2
  411. package/dist/components/ui/sidebar/context.svelte.js +1 -1
  412. package/dist/components/ui/sidebar/index.d.ts +1 -1
  413. package/dist/components/ui/sidebar/index.js +1 -1
  414. package/dist/components/ui/sidebar/sidebar-content.svelte +2 -2
  415. package/dist/components/ui/sidebar/sidebar-content.svelte.d.ts +1 -1
  416. package/dist/components/ui/sidebar/sidebar-footer.svelte +2 -2
  417. package/dist/components/ui/sidebar/sidebar-footer.svelte.d.ts +1 -1
  418. package/dist/components/ui/sidebar/sidebar-group-action.svelte +1 -1
  419. package/dist/components/ui/sidebar/sidebar-group-content.svelte +1 -1
  420. package/dist/components/ui/sidebar/sidebar-group-label.svelte +1 -1
  421. package/dist/components/ui/sidebar/sidebar-group.svelte +2 -2
  422. package/dist/components/ui/sidebar/sidebar-group.svelte.d.ts +1 -1
  423. package/dist/components/ui/sidebar/sidebar-header.svelte +2 -2
  424. package/dist/components/ui/sidebar/sidebar-header.svelte.d.ts +1 -1
  425. package/dist/components/ui/sidebar/sidebar-input.svelte +2 -2
  426. package/dist/components/ui/sidebar/sidebar-input.svelte.d.ts +1 -1
  427. package/dist/components/ui/sidebar/sidebar-inset.svelte +1 -4
  428. package/dist/components/ui/sidebar/sidebar-menu-action.svelte +2 -2
  429. package/dist/components/ui/sidebar/sidebar-menu-badge.svelte +1 -1
  430. package/dist/components/ui/sidebar/sidebar-menu-button.svelte +4 -5
  431. package/dist/components/ui/sidebar/sidebar-menu-button.svelte.d.ts +18 -18
  432. package/dist/components/ui/sidebar/sidebar-menu-skeleton.svelte +2 -2
  433. package/dist/components/ui/sidebar/sidebar-menu-sub-button.svelte +1 -1
  434. package/dist/components/ui/sidebar/sidebar-menu-sub.svelte +1 -4
  435. package/dist/components/ui/sidebar/sidebar-menu.svelte +1 -1
  436. package/dist/components/ui/sidebar/sidebar-provider.svelte +11 -3
  437. package/dist/components/ui/sidebar/sidebar-rail.svelte +2 -2
  438. package/dist/components/ui/sidebar/sidebar-separator.svelte +6 -2
  439. package/dist/components/ui/sidebar/sidebar-trigger.svelte +3 -3
  440. package/dist/components/ui/sidebar/sidebar.svelte +12 -6
  441. package/dist/components/ui/skeleton/skeleton.svelte +1 -1
  442. package/dist/components/ui/slider/slider.svelte +6 -4
  443. package/dist/components/ui/sonner/sonner.svelte +6 -6
  444. package/dist/components/ui/spinner/spinner.svelte +2 -10
  445. package/dist/components/ui/switch/switch.svelte +2 -2
  446. package/dist/components/ui/table/index.d.ts +1 -1
  447. package/dist/components/ui/table/index.js +1 -1
  448. package/dist/components/ui/table/table-caption.svelte +1 -1
  449. package/dist/components/ui/table/table-cell.svelte +7 -7
  450. package/dist/components/ui/table/table-footer.svelte +1 -1
  451. package/dist/components/ui/table/table-head.svelte +7 -10
  452. package/dist/components/ui/table/table-header.svelte +6 -1
  453. package/dist/components/ui/table/table-row.svelte +1 -6
  454. package/dist/components/ui/table/table.svelte +1 -1
  455. package/dist/components/ui/table/table.svelte.d.ts +1 -1
  456. package/dist/components/ui/tabs/index.d.ts +2 -2
  457. package/dist/components/ui/tabs/index.js +2 -2
  458. package/dist/components/ui/tabs/tabs-content.svelte +6 -2
  459. package/dist/components/ui/tabs/tabs-list.svelte +1 -1
  460. package/dist/components/ui/tabs/tabs-list.svelte.d.ts +9 -9
  461. package/dist/components/ui/tabs/tabs-trigger.svelte +8 -4
  462. package/dist/components/ui/tabs/tabs.svelte +1 -1
  463. package/dist/components/ui/textarea/textarea.svelte +1 -1
  464. package/dist/components/ui/toggle/index.d.ts +1 -1
  465. package/dist/components/ui/toggle/index.js +1 -1
  466. package/dist/components/ui/toggle/toggle.svelte +2 -2
  467. package/dist/components/ui/toggle/toggle.svelte.d.ts +18 -18
  468. package/dist/components/ui/toggle-group/index.d.ts +1 -1
  469. package/dist/components/ui/toggle-group/index.js +1 -1
  470. package/dist/components/ui/toggle-group/toggle-group-item.svelte +3 -3
  471. package/dist/components/ui/toggle-group/toggle-group.svelte +2 -2
  472. package/dist/components/ui/toggle-group/toggle-group.svelte.d.ts +1 -1
  473. package/dist/components/ui/tooltip/index.d.ts +3 -3
  474. package/dist/components/ui/tooltip/index.js +3 -3
  475. package/dist/components/ui/tooltip/tooltip-content.svelte +3 -3
  476. package/dist/components/ui/tooltip/tooltip-content.svelte.d.ts +1 -1
  477. package/dist/data-table/index.d.ts +4 -1
  478. package/dist/data-table/index.js +11 -1
  479. package/package.json +35 -29
  480. package/dist/components/custom/data-table/shad-table-old.svelte.d.ts +0 -9
  481. package/dist/components/custom/data-table/shad-table-old.svelte.js +0 -202
  482. package/dist/components/ui/data-table/data-table.svelte.d.ts +0 -40
  483. package/dist/components/ui/data-table/data-table.svelte.js +0 -110
  484. package/dist/components/ui/data-table/flex-render.svelte +0 -37
  485. package/dist/components/ui/data-table/flex-render.svelte.d.ts +0 -33
  486. package/dist/components/ui/data-table/render-helpers.d.ts +0 -90
  487. package/dist/components/ui/data-table/render-helpers.js +0 -99
@@ -1,33 +1,47 @@
1
- <script lang="ts" generics="T">
1
+ <script lang="ts" generics="T extends RowData">
2
2
  import { Table } from "../../..";
3
- import { FlexRender } from "../../../data-table";
4
- import { type Header, type Table as TypeType } from "@tanstack/table-core";
3
+ import { FlexRender } from "../../ui/data-table";
4
+ import type { Header, RowData } from "@tanstack/svelte-table";
5
5
  import { ArrowUpDownIcon, ArrowDownIcon, ArrowUpIcon } from "@lucide/svelte";
6
+ import type { DataTableFeatures } from "./features";
6
7
 
7
- interface Props<T> {
8
- header: Header<T, unknown>;
9
- table: TypeType<T>;
8
+ interface Props<T extends RowData> {
9
+ header: Header<DataTableFeatures, T, unknown>;
10
10
  disableUISorting?: boolean;
11
11
  }
12
12
 
13
- let { header, table, disableUISorting = false }: Props<T> = $props();
13
+ let { header, disableUISorting = false }: Props<T> = $props();
14
14
 
15
- const isSortingEnabled = $derived(table.options.getSortedRowModel !== undefined && disableUISorting !== true);
15
+ function headerSizeStyle(width: number, min?: number, max?: number) {
16
+ const styles = [`width: ${width}px`];
17
+ if (min !== undefined) styles.push(`min-width: ${min}px`);
18
+ if (max !== undefined) styles.push(`max-width: ${max}px`);
19
+ return styles.join("; ");
20
+ }
21
+
22
+ const isSortingEnabled = $derived(disableUISorting !== true);
23
+ const sorted = $derived(header.column.getIsSorted());
24
+ const ariaSort = $derived(sorted === "asc" ? "ascending" : sorted === "desc" ? "descending" : undefined);
16
25
  </script>
17
26
 
18
27
  <Table.Head
19
28
  colspan={header.colSpan}
29
+ aria-sort={ariaSort}
20
30
  class="bg-muted/20"
21
- style={`width: ${header.getSize()}px; min-width:${header.column.columnDef.minSize}px; max-width:${header.column.columnDef.maxSize}px`}
31
+ style={headerSizeStyle(header.getSize(), header.column.columnDef.minSize, header.column.columnDef.maxSize)}
22
32
  >
23
33
  {#if !header.isPlaceholder}
24
34
  <div class="flex items-center gap-1">
25
- <FlexRender content={header.column.columnDef.header} context={header.getContext()} />
35
+ <FlexRender {header} />
26
36
  {#if isSortingEnabled && header.column.getCanSort()}
27
- <button onclick={header.column.getToggleSortingHandler()}>
28
- {#if header.column.getIsSorted() == "asc"}
37
+ <button
38
+ aria-label={`Sort by ${header.column.id}`}
39
+ class="cursor-pointer"
40
+ onclick={header.column.getToggleSortingHandler()}
41
+ >
42
+ {#if sorted == "asc"}
29
43
  <ArrowDownIcon class="size-4" />
30
- {:else if header.column.getIsSorted() == "desc"}
44
+ {:else if sorted == "desc"}
31
45
  <ArrowUpIcon class="size-4" />
32
46
  {:else}
33
47
  <ArrowUpDownIcon class="text-muted size-4" />
@@ -1,17 +1,17 @@
1
- import { type Header, type Table as TypeType } from "@tanstack/table-core";
2
- interface Props<T> {
3
- header: Header<T, unknown>;
4
- table: TypeType<T>;
1
+ import type { Header, RowData } from "@tanstack/svelte-table";
2
+ import type { DataTableFeatures } from "./features";
3
+ interface Props<T extends RowData> {
4
+ header: Header<DataTableFeatures, T, unknown>;
5
5
  disableUISorting?: boolean;
6
6
  }
7
- declare function $$render<T>(): {
7
+ declare function $$render<T extends RowData>(): {
8
8
  props: Props<T>;
9
9
  exports: {};
10
10
  bindings: "";
11
11
  slots: {};
12
12
  events: {};
13
13
  };
14
- declare class __sveltets_Render<T> {
14
+ declare class __sveltets_Render<T extends RowData> {
15
15
  props(): ReturnType<typeof $$render<T>>['props'];
16
16
  events(): ReturnType<typeof $$render<T>>['events'];
17
17
  slots(): ReturnType<typeof $$render<T>>['slots'];
@@ -19,12 +19,12 @@ declare class __sveltets_Render<T> {
19
19
  exports(): {};
20
20
  }
21
21
  interface $$IsomorphicComponent {
22
- new <T>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
22
+ new <T extends RowData>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
23
23
  $$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
24
24
  } & ReturnType<__sveltets_Render<T>['exports']>;
25
- <T>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
25
+ <T extends RowData>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
26
26
  z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
27
27
  }
28
28
  declare const DataTableHeader: $$IsomorphicComponent;
29
- type DataTableHeader<T> = InstanceType<typeof DataTableHeader<T>>;
29
+ type DataTableHeader<T extends RowData> = InstanceType<typeof DataTableHeader<T>>;
30
30
  export default DataTableHeader;
@@ -1,5 +1,5 @@
1
- <script lang="ts" generics="TData">
2
- import type { Table } from "@tanstack/table-core";
1
+ <script lang="ts" generics="TData extends RowData">
2
+ import type { RowData, Table } from "@tanstack/svelte-table";
3
3
  import { cn } from "../../../utils.js";
4
4
  import { Button } from "../../ui/button";
5
5
  import { Popover, PopoverContent, PopoverTrigger } from "../../ui/popover";
@@ -11,26 +11,27 @@
11
11
  CommandItem,
12
12
  CommandList,
13
13
  } from "../../ui/command/index.js";
14
+ import type { DataTableFeatures } from "./features";
14
15
 
15
16
  // Icons
16
17
  import Settings2 from "@lucide/svelte/icons/settings-2";
17
18
  import Check from "@lucide/svelte/icons/check";
18
19
 
19
20
  interface Props {
20
- table: Table<TData>;
21
+ table: Table<DataTableFeatures, TData>;
21
22
  align?: "start" | "center" | "end";
22
23
  class?: string;
23
24
  }
24
25
 
25
26
  let { table, align = "start", class: className }: Props = $props();
26
27
 
27
- // Get columns - table.getAllColumns() is reactive via our wrapper
28
+ // Get columns - table.getAllColumns() is rune-reactive in v9
28
29
  const columns = $derived(
29
30
  table.getAllColumns().filter((column) => typeof column.accessorFn !== "undefined" && column.getCanHide())
30
31
  );
31
32
 
32
- // Get visibility state reactively
33
- const columnVisibility = $derived(table.getState().columnVisibility);
33
+ // Get visibility state reactively via the v9 atoms API
34
+ const columnVisibility = $derived(table.atoms.columnVisibility.get());
34
35
 
35
36
  // Helper to check if column is visible - reads from reactive state
36
37
  function isColumnVisible(columnId: string): boolean {
@@ -1,7 +1,8 @@
1
- import type { Table } from "@tanstack/table-core";
2
- declare function $$render<TData>(): {
1
+ import type { RowData, Table } from "@tanstack/svelte-table";
2
+ import type { DataTableFeatures } from "./features";
3
+ declare function $$render<TData extends RowData>(): {
3
4
  props: {
4
- table: Table<TData>;
5
+ table: Table<DataTableFeatures, TData>;
5
6
  align?: "start" | "center" | "end";
6
7
  class?: string;
7
8
  };
@@ -10,7 +11,7 @@ declare function $$render<TData>(): {
10
11
  slots: {};
11
12
  events: {};
12
13
  };
13
- declare class __sveltets_Render<TData> {
14
+ declare class __sveltets_Render<TData extends RowData> {
14
15
  props(): ReturnType<typeof $$render<TData>>['props'];
15
16
  events(): ReturnType<typeof $$render<TData>>['events'];
16
17
  slots(): ReturnType<typeof $$render<TData>>['slots'];
@@ -18,12 +19,12 @@ declare class __sveltets_Render<TData> {
18
19
  exports(): {};
19
20
  }
20
21
  interface $$IsomorphicComponent {
21
- new <TData>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<TData>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<TData>['props']>, ReturnType<__sveltets_Render<TData>['events']>, ReturnType<__sveltets_Render<TData>['slots']>> & {
22
+ new <TData extends RowData>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<TData>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<TData>['props']>, ReturnType<__sveltets_Render<TData>['events']>, ReturnType<__sveltets_Render<TData>['slots']>> & {
22
23
  $$bindings?: ReturnType<__sveltets_Render<TData>['bindings']>;
23
24
  } & ReturnType<__sveltets_Render<TData>['exports']>;
24
- <TData>(internal: unknown, props: ReturnType<__sveltets_Render<TData>['props']> & {}): ReturnType<__sveltets_Render<TData>['exports']>;
25
+ <TData extends RowData>(internal: unknown, props: ReturnType<__sveltets_Render<TData>['props']> & {}): ReturnType<__sveltets_Render<TData>['exports']>;
25
26
  z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
26
27
  }
27
28
  declare const DataTableView: $$IsomorphicComponent;
28
- type DataTableView<TData> = InstanceType<typeof DataTableView<TData>>;
29
+ type DataTableView<TData extends RowData> = InstanceType<typeof DataTableView<TData>>;
29
30
  export default DataTableView;
@@ -9,18 +9,23 @@
9
9
 
10
10
  let { isFullscreen = $bindable(), end }: Props = $props();
11
11
 
12
- $effect.pre(() => {
12
+ let previous = isFullscreen;
13
+
14
+ $effect(() => {
15
+ if (isFullscreen === previous) return;
16
+ previous = isFullscreen;
17
+
13
18
  if (isFullscreen) {
14
19
  document.body.classList.add("overflow-hidden");
15
20
  document.body.scrollIntoView({ behavior: "smooth", block: "start" });
16
21
  } else {
17
- if (!end) {
18
- document.body.classList.remove("overflow-hidden");
19
- return;
20
- }
21
- end.scrollIntoView({ behavior: "smooth", block: "start" });
22
22
  document.body.classList.remove("overflow-hidden");
23
+ end?.scrollIntoView({ behavior: "smooth", block: "start" });
23
24
  }
25
+
26
+ return () => {
27
+ document.body.classList.remove("overflow-hidden");
28
+ };
24
29
  });
25
30
  </script>
26
31
 
@@ -1,86 +1,102 @@
1
- <script lang="ts" generics="T">
2
- import type { Table } from "@tanstack/table-core";
1
+ <script lang="ts" generics="T extends RowData">
2
+ import type { RowData, Table } from "@tanstack/svelte-table";
3
3
  import ChevronLeft from "@lucide/svelte/icons/chevron-left";
4
4
  import ChevronRight from "@lucide/svelte/icons/chevron-right";
5
- import DoubleArrowLeft from "@lucide/svelte/icons/arrow-left";
6
- import DoubleArrowRight from "@lucide/svelte/icons/arrow-right";
5
+ import ChevronsLeft from "@lucide/svelte/icons/chevrons-left";
6
+ import ChevronsRight from "@lucide/svelte/icons/chevrons-right";
7
7
  import { Select, Button } from "../../..";
8
+ import type { DataTableFeatures } from "./features";
8
9
 
9
- interface Props<T> {
10
- table: Table<T>;
10
+ interface Props<T extends RowData> {
11
+ table: Table<DataTableFeatures, T>;
11
12
  canChangePageSize?: boolean;
12
13
  }
13
14
 
14
- let { table, canChangePageSize = false }: Props<T> = $props();
15
+ let { table, canChangePageSize = true }: Props<T> = $props();
15
16
 
16
- // svelte-ignore state_referenced_locally
17
- let value = $state(table.getState().pagination.pageSize.toString());
17
+ const pagination = $derived(table.atoms.pagination.get());
18
18
  </script>
19
19
 
20
- <div class="flex items-center justify-between py-2">
20
+ <div class="flex items-center justify-between gap-4 px-2 py-4">
21
21
  <div class="text-muted-foreground flex-1 text-sm">
22
22
  {#if table.options.enableRowSelection}
23
- {table.getFilteredSelectedRowModel().rows.length} of
24
- {table.getFilteredRowModel().rows.length} row(s) selected.
23
+ <p>
24
+ {table.getFilteredSelectedRowModel().rows.length} of
25
+ {table.getFilteredRowModel().rows.length} row(s) selected.
26
+ </p>
25
27
  {/if}
28
+ <p>
29
+ {#if !table.options.manualPagination}
30
+ {table.getPrePaginatedRowModel().rows.length.toLocaleString()}
31
+ of {table.options.data.length.toLocaleString()} rows
32
+ {/if}
33
+ </p>
26
34
  </div>
27
- <div class="flex items-center space-x-6 lg:space-x-8">
28
- <div class="flex items-center space-x-2">
29
- {#if canChangePageSize}
35
+ <div class="flex items-center gap-6 lg:gap-8">
36
+ {#if canChangePageSize}
37
+ <div class="flex items-center gap-2">
30
38
  <p class="text-sm font-medium">Rows per page</p>
39
+ <!-- bits-ui's Select has no SelectValue part — the trigger renders the
40
+ selected value directly as its children. -->
31
41
  <Select.Root
32
42
  type="single"
33
- bind:value
34
- onValueChange={(value) => {
35
- table.setPageSize(Number(value));
36
- }}
43
+ value={`${pagination.pageSize}`}
44
+ onValueChange={(value) => table.setPageSize(Number(value))}
37
45
  >
38
- <Select.Trigger class="h-8 w-[70px]">Select page size</Select.Trigger>
46
+ <Select.Trigger size="sm" class="w-[70px]">
47
+ {pagination.pageSize === Infinity ? "All" : pagination.pageSize}
48
+ </Select.Trigger>
39
49
  <Select.Content side="top">
40
- {#each [10, 20, 30, 40, 50] as pageSize}
41
- <Select.Item value={pageSize.toString()}>
42
- {pageSize}
43
- </Select.Item>
50
+ {#each [10, 20, 30, 40, 50, Infinity] as pageSize (pageSize)}
51
+ <Select.Item value={`${pageSize}`} label={pageSize === Infinity ? "All" : `${pageSize}`} />
44
52
  {/each}
45
53
  </Select.Content>
46
54
  </Select.Root>
47
- {/if}
48
- </div>
55
+ </div>
56
+ {/if}
49
57
  <div class="flex w-[100px] items-center justify-center text-sm font-medium">
50
- Page {table.getState().pagination.pageIndex + 1} of
51
- {table.getPageCount()}
58
+ Page {pagination.pageIndex + 1} of {Math.max(1, table.getPageCount())}
52
59
  </div>
53
- <div class="flex items-center space-x-2">
60
+ <div class="flex items-center gap-2">
54
61
  <Button
55
62
  variant="outline"
56
- class="hidden size-8 p-0 lg:flex"
57
- onclick={() => table.setPageIndex(0)}
63
+ size="icon"
64
+ class="hidden size-8 lg:flex"
58
65
  disabled={!table.getCanPreviousPage()}
66
+ onclick={() => table.firstPage()}
59
67
  >
60
68
  <span class="sr-only">Go to first page</span>
61
- <DoubleArrowLeft class="size-4" />
69
+ <ChevronsLeft />
62
70
  </Button>
63
71
  <Button
64
72
  variant="outline"
65
- class="size-8 p-0"
66
- onclick={() => table.previousPage()}
73
+ size="icon"
74
+ class="size-8"
67
75
  disabled={!table.getCanPreviousPage()}
76
+ onclick={() => table.previousPage()}
68
77
  >
69
78
  <span class="sr-only">Go to previous page</span>
70
- <ChevronLeft class="size-4" />
79
+ <ChevronLeft />
71
80
  </Button>
72
- <Button variant="outline" class="size-8 p-0" onclick={() => table.nextPage()} disabled={!table.getCanNextPage()}>
81
+ <Button
82
+ variant="outline"
83
+ size="icon"
84
+ class="size-8"
85
+ disabled={!table.getCanNextPage()}
86
+ onclick={() => table.nextPage()}
87
+ >
73
88
  <span class="sr-only">Go to next page</span>
74
- <ChevronRight class="size-4" />
89
+ <ChevronRight />
75
90
  </Button>
76
91
  <Button
77
92
  variant="outline"
78
- class="hidden size-8 p-0 lg:flex"
79
- onclick={() => table.setPageIndex(table.getPageCount() - 1)}
80
- disabled={!table.getCanNextPage()}
93
+ size="icon"
94
+ class="hidden size-8 lg:flex"
95
+ disabled={!table.getCanLastPage()}
96
+ onclick={() => table.lastPage()}
81
97
  >
82
98
  <span class="sr-only">Go to last page</span>
83
- <DoubleArrowRight class="size-4" />
99
+ <ChevronsRight />
84
100
  </Button>
85
101
  </div>
86
102
  </div>
@@ -1,16 +1,17 @@
1
- import type { Table } from "@tanstack/table-core";
2
- interface Props<T> {
3
- table: Table<T>;
1
+ import type { RowData, Table } from "@tanstack/svelte-table";
2
+ import type { DataTableFeatures } from "./features";
3
+ interface Props<T extends RowData> {
4
+ table: Table<DataTableFeatures, T>;
4
5
  canChangePageSize?: boolean;
5
6
  }
6
- declare function $$render<T>(): {
7
+ declare function $$render<T extends RowData>(): {
7
8
  props: Props<T>;
8
9
  exports: {};
9
10
  bindings: "";
10
11
  slots: {};
11
12
  events: {};
12
13
  };
13
- declare class __sveltets_Render<T> {
14
+ declare class __sveltets_Render<T extends RowData> {
14
15
  props(): ReturnType<typeof $$render<T>>['props'];
15
16
  events(): ReturnType<typeof $$render<T>>['events'];
16
17
  slots(): ReturnType<typeof $$render<T>>['slots'];
@@ -18,12 +19,12 @@ declare class __sveltets_Render<T> {
18
19
  exports(): {};
19
20
  }
20
21
  interface $$IsomorphicComponent {
21
- new <T>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
22
+ new <T extends RowData>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
22
23
  $$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
23
24
  } & ReturnType<__sveltets_Render<T>['exports']>;
24
- <T>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
25
+ <T extends RowData>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
25
26
  z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
26
27
  }
27
28
  declare const Pagination: $$IsomorphicComponent;
28
- type Pagination<T> = InstanceType<typeof Pagination<T>>;
29
+ type Pagination<T extends RowData> = InstanceType<typeof Pagination<T>>;
29
30
  export default Pagination;
@@ -2,7 +2,7 @@ export declare const sum: <T>(data: T[], columnId: keyof T) => number;
2
2
  export declare const min: <T>(data: T[], columnId: keyof T) => number | undefined;
3
3
  export declare const max: <T>(data: T[], columnId: keyof T) => number | undefined;
4
4
  export declare const uniqueCount: <T>(data: T[], columnId: keyof T) => number;
5
- export declare const count: <T>(data: T[], columnId: keyof T) => number;
5
+ export declare const count: <T>(data: T[], _columnId: keyof T) => number;
6
6
  export declare const mean: <T>(data: T[], columnId: keyof T) => number | undefined;
7
7
  export declare const aggregationFns: {
8
8
  sum: <T>(data: T[], columnId: keyof T) => number;
@@ -10,5 +10,5 @@ export declare const aggregationFns: {
10
10
  max: <T>(data: T[], columnId: keyof T) => number | undefined;
11
11
  mean: <T>(data: T[], columnId: keyof T) => number | undefined;
12
12
  uniqueCount: <T>(data: T[], columnId: keyof T) => number;
13
- count: <T>(data: T[], columnId: keyof T) => number;
13
+ count: <T>(data: T[], _columnId: keyof T) => number;
14
14
  };
@@ -1,47 +1,46 @@
1
1
  export const sum = (data, columnId) => {
2
- return data.reduce((sum, next) => {
3
- const nextValue = next[columnId];
4
- return sum + (typeof nextValue === "number" ? nextValue : 0);
2
+ return data.reduce((total, row) => {
3
+ const value = row[columnId];
4
+ return total + (typeof value === "number" && Number.isFinite(value) ? value : 0);
5
5
  }, 0);
6
6
  };
7
7
  export const min = (data, columnId) => {
8
8
  let min;
9
- data.forEach((row) => {
10
- const value = Number(row[columnId]);
11
- if (value != null && (min > value || (min === undefined && value >= value))) {
9
+ for (const row of data) {
10
+ const value = row[columnId];
11
+ if (typeof value === "number" && Number.isFinite(value) && (min === undefined || value < min)) {
12
12
  min = value;
13
13
  }
14
- });
14
+ }
15
15
  return min;
16
16
  };
17
17
  export const max = (data, columnId) => {
18
18
  let max;
19
- data.forEach((row) => {
20
- const value = Number(row[columnId]);
21
- if (value != null && (max < value || (max === undefined && value >= value))) {
19
+ for (const row of data) {
20
+ const value = row[columnId];
21
+ if (typeof value === "number" && Number.isFinite(value) && (max === undefined || value > max)) {
22
22
  max = value;
23
23
  }
24
- });
24
+ }
25
25
  return max;
26
26
  };
27
27
  export const uniqueCount = (data, columnId) => {
28
28
  return new Set(data.map((d) => d[columnId])).size;
29
29
  };
30
- export const count = (data, columnId) => {
30
+ export const count = (data, _columnId) => {
31
31
  return data.length;
32
32
  };
33
33
  export const mean = (data, columnId) => {
34
34
  let count = 0;
35
- let sum = 0;
36
- data.forEach((row) => {
37
- let value = Number(row[columnId]);
38
- if (value != null && (value = +value) >= value) {
39
- (++count, (sum += value));
35
+ let total = 0;
36
+ for (const row of data) {
37
+ const value = row[columnId];
38
+ if (typeof value === "number" && Number.isFinite(value)) {
39
+ count += 1;
40
+ total += value;
40
41
  }
41
- });
42
- if (count)
43
- return sum / count;
44
- return;
42
+ }
43
+ return count > 0 ? total / count : undefined;
45
44
  };
46
45
  export const aggregationFns = {
47
46
  sum,
@@ -0,0 +1,157 @@
1
+ import { type RowData } from "@tanstack/svelte-table";
2
+ import type { CustomColumnMeta, CustomOptions } from "./types";
3
+ /** Feature set type used by {@link createShadTable}. */
4
+ export type DataTableFeatures = typeof features;
5
+ /**
6
+ * The static feature set shared by every {@link createShadTable} table.
7
+ *
8
+ * Includes:
9
+ * - all stock **feature modules** (so the `Table` / `ColumnDef` API surface and
10
+ * every `table.atoms.<slice>` is always available and consistently typed)
11
+ * - the **row models** (sorted / filtered / paginated) — runtime-only, but
12
+ * cheap to wire unconditionally: an unused pipeline simply falls through to
13
+ * the previous stage (matching the TanStack examples)
14
+ * - the built-in **`filterFns` / `sortFns` / `aggregationFns` registries**, so
15
+ * any string fn (including the default `"auto"`) resolves instead of silently
16
+ * no-op'ing, and those strings typecheck in column defs
17
+ * - the per-table **`columnMeta` / `tableMeta`** slots (`meta.className`)
18
+ */
19
+ export declare const features: {
20
+ sortedRowModel: (table: import("@tanstack/svelte-table").Table<any, any>) => () => import("@tanstack/svelte-table").RowModel<any, any>;
21
+ paginatedRowModel: (table: import("@tanstack/svelte-table").Table<any, any>) => () => import("@tanstack/svelte-table").RowModel<any, any>;
22
+ filteredRowModel: (table: import("@tanstack/svelte-table").Table<any, any>) => () => import("@tanstack/svelte-table").RowModel<any, any>;
23
+ filterFns: {
24
+ arrIncludes: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
25
+ arrIncludesAll: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
26
+ arrHas: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
27
+ arrIncludesSome: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
28
+ between: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
29
+ betweenInclusive: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
30
+ empty: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
31
+ endsWith: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
32
+ equals: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
33
+ equalsString: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
34
+ equalsStringSensitive: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
35
+ inDateRange: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
36
+ inNumberRange: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
37
+ includesString: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
38
+ includesStringSensitive: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
39
+ notEmpty: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
40
+ startsWith: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
41
+ weakEquals: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
42
+ };
43
+ sortFns: {
44
+ alphanumeric: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
45
+ alphanumericCaseSensitive: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
46
+ basic: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
47
+ datetime: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
48
+ text: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
49
+ textCaseSensitive: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
50
+ };
51
+ aggregationFns: {
52
+ sum: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number>;
53
+ min: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, (number | Date) | undefined>;
54
+ max: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, (number | Date) | undefined>;
55
+ extent: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, [(number | Date) | undefined, (number | Date) | undefined]>;
56
+ mean: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number | undefined>;
57
+ median: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number | undefined>;
58
+ unique: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, unknown[]>;
59
+ uniqueCount: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number>;
60
+ count: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number>;
61
+ first: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, unknown>;
62
+ last: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, unknown>;
63
+ };
64
+ columnMeta: CustomColumnMeta;
65
+ tableMeta: CustomOptions;
66
+ cellSelectionFeature: import("@tanstack/svelte-table").TableFeature;
67
+ cellSpanningFeature: import("@tanstack/svelte-table").TableFeature;
68
+ columnFacetingFeature: import("@tanstack/svelte-table").TableFeature;
69
+ columnFilteringFeature: import("@tanstack/svelte-table").TableFeature;
70
+ columnGroupingFeature: import("@tanstack/svelte-table").TableFeature;
71
+ columnOrderingFeature: import("@tanstack/svelte-table").TableFeature;
72
+ columnPinningFeature: import("@tanstack/svelte-table").TableFeature;
73
+ columnResizingFeature: import("@tanstack/svelte-table").TableFeature;
74
+ columnSizingFeature: import("@tanstack/svelte-table").TableFeature;
75
+ columnVisibilityFeature: import("@tanstack/svelte-table").TableFeature;
76
+ globalFilteringFeature: import("@tanstack/svelte-table").TableFeature;
77
+ rowAggregationFeature: import("@tanstack/svelte-table").TableFeature;
78
+ rowExpandingFeature: import("@tanstack/svelte-table").TableFeature;
79
+ rowPaginationFeature: import("@tanstack/svelte-table").TableFeature;
80
+ rowPinningFeature: import("@tanstack/svelte-table").TableFeature;
81
+ rowSelectionFeature: import("@tanstack/svelte-table").TableFeature;
82
+ rowSortingFeature: import("@tanstack/svelte-table").TableFeature;
83
+ };
84
+ /**
85
+ * Creates a `ColumnHelper` bound to the library's feature set, so consumers
86
+ * get the same typed API as the TanStack examples:
87
+ *
88
+ * ```ts
89
+ * const helper = createColumnHelper<Person>();
90
+ * const columns = helper.columns([helper.accessor("name", { header: "Name" })]);
91
+ * ```
92
+ */
93
+ export declare const createColumnHelperFor: <TData extends RowData>() => import("@tanstack/svelte-table").ColumnHelper<{
94
+ sortedRowModel: (table: import("@tanstack/svelte-table").Table<any, any>) => () => import("@tanstack/svelte-table").RowModel<any, any>;
95
+ paginatedRowModel: (table: import("@tanstack/svelte-table").Table<any, any>) => () => import("@tanstack/svelte-table").RowModel<any, any>;
96
+ filteredRowModel: (table: import("@tanstack/svelte-table").Table<any, any>) => () => import("@tanstack/svelte-table").RowModel<any, any>;
97
+ filterFns: {
98
+ arrIncludes: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
99
+ arrIncludesAll: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
100
+ arrHas: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
101
+ arrIncludesSome: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
102
+ between: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
103
+ betweenInclusive: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
104
+ empty: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
105
+ endsWith: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
106
+ equals: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
107
+ equalsString: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
108
+ equalsStringSensitive: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
109
+ inDateRange: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
110
+ inNumberRange: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
111
+ includesString: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
112
+ includesStringSensitive: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
113
+ notEmpty: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
114
+ startsWith: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
115
+ weakEquals: import("@tanstack/svelte-table").CreatedFilterFn<any, any>;
116
+ };
117
+ sortFns: {
118
+ alphanumeric: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
119
+ alphanumericCaseSensitive: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
120
+ basic: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
121
+ datetime: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
122
+ text: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
123
+ textCaseSensitive: import("@tanstack/svelte-table").CreatedSortFn<any, any>;
124
+ };
125
+ aggregationFns: {
126
+ sum: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number>;
127
+ min: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, (number | Date) | undefined>;
128
+ max: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, (number | Date) | undefined>;
129
+ extent: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, [(number | Date) | undefined, (number | Date) | undefined]>;
130
+ mean: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number | undefined>;
131
+ median: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number | undefined>;
132
+ unique: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, unknown[]>;
133
+ uniqueCount: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number>;
134
+ count: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, number>;
135
+ first: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, unknown>;
136
+ last: import("@tanstack/svelte-table").AggregationFnDef<any, any, unknown, unknown>;
137
+ };
138
+ columnMeta: CustomColumnMeta;
139
+ tableMeta: CustomOptions;
140
+ cellSelectionFeature: import("@tanstack/svelte-table").TableFeature;
141
+ cellSpanningFeature: import("@tanstack/svelte-table").TableFeature;
142
+ columnFacetingFeature: import("@tanstack/svelte-table").TableFeature;
143
+ columnFilteringFeature: import("@tanstack/svelte-table").TableFeature;
144
+ columnGroupingFeature: import("@tanstack/svelte-table").TableFeature;
145
+ columnOrderingFeature: import("@tanstack/svelte-table").TableFeature;
146
+ columnPinningFeature: import("@tanstack/svelte-table").TableFeature;
147
+ columnResizingFeature: import("@tanstack/svelte-table").TableFeature;
148
+ columnSizingFeature: import("@tanstack/svelte-table").TableFeature;
149
+ columnVisibilityFeature: import("@tanstack/svelte-table").TableFeature;
150
+ globalFilteringFeature: import("@tanstack/svelte-table").TableFeature;
151
+ rowAggregationFeature: import("@tanstack/svelte-table").TableFeature;
152
+ rowExpandingFeature: import("@tanstack/svelte-table").TableFeature;
153
+ rowPaginationFeature: import("@tanstack/svelte-table").TableFeature;
154
+ rowPinningFeature: import("@tanstack/svelte-table").TableFeature;
155
+ rowSelectionFeature: import("@tanstack/svelte-table").TableFeature;
156
+ rowSortingFeature: import("@tanstack/svelte-table").TableFeature;
157
+ }, TData>;