nuxt-ui-tools 1.0.0 → 1.1.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 (290) hide show
  1. package/dist/module.d.mts +3 -0
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +37 -0
  4. package/dist/runtime/dashboard/components/block/dashboard-block-state.d.vue.ts +12 -0
  5. package/dist/runtime/dashboard/components/block/dashboard-block-state.vue +59 -0
  6. package/dist/runtime/dashboard/components/block/dashboard-block-state.vue.d.ts +12 -0
  7. package/dist/runtime/dashboard/components/block/dashboard-data-table.d.vue.ts +9 -0
  8. package/dist/runtime/dashboard/components/block/dashboard-data-table.vue +47 -0
  9. package/dist/runtime/dashboard/components/block/dashboard-data-table.vue.d.ts +9 -0
  10. package/dist/runtime/dashboard/components/block/dashboard-ring.d.vue.ts +34 -0
  11. package/dist/runtime/dashboard/components/block/dashboard-ring.vue +91 -0
  12. package/dist/runtime/dashboard/components/block/dashboard-ring.vue.d.ts +34 -0
  13. package/dist/runtime/dashboard/components/block/dashboard-row-actions.d.vue.ts +13 -0
  14. package/dist/runtime/dashboard/components/block/dashboard-row-actions.vue +49 -0
  15. package/dist/runtime/dashboard/components/block/dashboard-row-actions.vue.d.ts +13 -0
  16. package/dist/runtime/dashboard/components/block/dashboard-skeleton.d.vue.ts +34 -0
  17. package/dist/runtime/dashboard/components/block/dashboard-skeleton.vue +312 -0
  18. package/dist/runtime/dashboard/components/block/dashboard-skeleton.vue.d.ts +34 -0
  19. package/dist/runtime/dashboard/components/charts/renderer.d.ts +43 -0
  20. package/dist/runtime/dashboard/components/charts/renderer.js +34 -0
  21. package/dist/runtime/dashboard/components/charts/unovis/dashboard-donut-chart.d.vue.ts +18 -0
  22. package/dist/runtime/dashboard/components/charts/unovis/dashboard-donut-chart.vue +45 -0
  23. package/dist/runtime/dashboard/components/charts/unovis/dashboard-donut-chart.vue.d.ts +18 -0
  24. package/dist/runtime/dashboard/components/charts/unovis/dashboard-xy-chart.d.vue.ts +14 -0
  25. package/dist/runtime/dashboard/components/charts/unovis/dashboard-xy-chart.vue +190 -0
  26. package/dist/runtime/dashboard/components/charts/unovis/dashboard-xy-chart.vue.d.ts +14 -0
  27. package/dist/runtime/dashboard/components/charts/unovis/dashboard-xy-marks.d.vue.ts +13 -0
  28. package/dist/runtime/dashboard/components/charts/unovis/dashboard-xy-marks.vue +72 -0
  29. package/dist/runtime/dashboard/components/charts/unovis/dashboard-xy-marks.vue.d.ts +13 -0
  30. package/dist/runtime/dashboard/components/charts/unovis/xy-layers.d.ts +43 -0
  31. package/dist/runtime/dashboard/components/charts/unovis/xy-layers.js +60 -0
  32. package/dist/runtime/dashboard/components/dashboard-alerts.d.vue.ts +49 -0
  33. package/dist/runtime/dashboard/components/dashboard-alerts.vue +226 -0
  34. package/dist/runtime/dashboard/components/dashboard-alerts.vue.d.ts +49 -0
  35. package/dist/runtime/dashboard/components/dashboard-bar-chart.d.vue.ts +53 -0
  36. package/dist/runtime/dashboard/components/dashboard-bar-chart.vue +131 -0
  37. package/dist/runtime/dashboard/components/dashboard-bar-chart.vue.d.ts +53 -0
  38. package/dist/runtime/dashboard/components/dashboard-bars.d.vue.ts +49 -0
  39. package/dist/runtime/dashboard/components/dashboard-bars.vue +187 -0
  40. package/dist/runtime/dashboard/components/dashboard-bars.vue.d.ts +49 -0
  41. package/dist/runtime/dashboard/components/dashboard-card.d.vue.ts +47 -0
  42. package/dist/runtime/dashboard/components/dashboard-card.vue +316 -0
  43. package/dist/runtime/dashboard/components/dashboard-card.vue.d.ts +47 -0
  44. package/dist/runtime/dashboard/components/dashboard-combo-chart.d.vue.ts +52 -0
  45. package/dist/runtime/dashboard/components/dashboard-combo-chart.vue +128 -0
  46. package/dist/runtime/dashboard/components/dashboard-combo-chart.vue.d.ts +52 -0
  47. package/dist/runtime/dashboard/components/dashboard-donut-chart.d.vue.ts +48 -0
  48. package/dist/runtime/dashboard/components/dashboard-donut-chart.vue +216 -0
  49. package/dist/runtime/dashboard/components/dashboard-donut-chart.vue.d.ts +48 -0
  50. package/dist/runtime/dashboard/components/dashboard-feed.d.vue.ts +49 -0
  51. package/dist/runtime/dashboard/components/dashboard-feed.vue +238 -0
  52. package/dist/runtime/dashboard/components/dashboard-feed.vue.d.ts +49 -0
  53. package/dist/runtime/dashboard/components/dashboard-funnel.d.vue.ts +34 -0
  54. package/dist/runtime/dashboard/components/dashboard-funnel.vue +157 -0
  55. package/dist/runtime/dashboard/components/dashboard-funnel.vue.d.ts +34 -0
  56. package/dist/runtime/dashboard/components/dashboard-gauge.d.vue.ts +55 -0
  57. package/dist/runtime/dashboard/components/dashboard-gauge.vue +177 -0
  58. package/dist/runtime/dashboard/components/dashboard-gauge.vue.d.ts +55 -0
  59. package/dist/runtime/dashboard/components/dashboard-grid.d.vue.ts +38 -0
  60. package/dist/runtime/dashboard/components/dashboard-grid.vue +49 -0
  61. package/dist/runtime/dashboard/components/dashboard-grid.vue.d.ts +38 -0
  62. package/dist/runtime/dashboard/components/dashboard-legend.d.vue.ts +8 -0
  63. package/dist/runtime/dashboard/components/dashboard-legend.vue +37 -0
  64. package/dist/runtime/dashboard/components/dashboard-legend.vue.d.ts +8 -0
  65. package/dist/runtime/dashboard/components/dashboard-line-chart.d.vue.ts +46 -0
  66. package/dist/runtime/dashboard/components/dashboard-line-chart.vue +129 -0
  67. package/dist/runtime/dashboard/components/dashboard-line-chart.vue.d.ts +46 -0
  68. package/dist/runtime/dashboard/components/dashboard-list.d.vue.ts +63 -0
  69. package/dist/runtime/dashboard/components/dashboard-list.vue +239 -0
  70. package/dist/runtime/dashboard/components/dashboard-list.vue.d.ts +63 -0
  71. package/dist/runtime/dashboard/components/dashboard-paired-bars.d.vue.ts +43 -0
  72. package/dist/runtime/dashboard/components/dashboard-paired-bars.vue +194 -0
  73. package/dist/runtime/dashboard/components/dashboard-paired-bars.vue.d.ts +43 -0
  74. package/dist/runtime/dashboard/components/dashboard-refresh.d.vue.ts +29 -0
  75. package/dist/runtime/dashboard/components/dashboard-refresh.vue +86 -0
  76. package/dist/runtime/dashboard/components/dashboard-refresh.vue.d.ts +29 -0
  77. package/dist/runtime/dashboard/components/dashboard-relative-time.d.vue.ts +12 -0
  78. package/dist/runtime/dashboard/components/dashboard-relative-time.vue +23 -0
  79. package/dist/runtime/dashboard/components/dashboard-relative-time.vue.d.ts +12 -0
  80. package/dist/runtime/dashboard/components/dashboard-stack-bar.d.vue.ts +36 -0
  81. package/dist/runtime/dashboard/components/dashboard-stack-bar.vue +162 -0
  82. package/dist/runtime/dashboard/components/dashboard-stack-bar.vue.d.ts +36 -0
  83. package/dist/runtime/dashboard/components/dashboard-stat.d.vue.ts +69 -0
  84. package/dist/runtime/dashboard/components/dashboard-stat.vue +279 -0
  85. package/dist/runtime/dashboard/components/dashboard-stat.vue.d.ts +69 -0
  86. package/dist/runtime/dashboard/components/dashboard-stats.d.vue.ts +38 -0
  87. package/dist/runtime/dashboard/components/dashboard-stats.vue +202 -0
  88. package/dist/runtime/dashboard/components/dashboard-stats.vue.d.ts +38 -0
  89. package/dist/runtime/dashboard/components/dashboard-table.d.vue.ts +52 -0
  90. package/dist/runtime/dashboard/components/dashboard-table.vue +305 -0
  91. package/dist/runtime/dashboard/components/dashboard-table.vue.d.ts +52 -0
  92. package/dist/runtime/dashboard/components/dashboard-tabs.d.vue.ts +35 -0
  93. package/dist/runtime/dashboard/components/dashboard-tabs.vue +55 -0
  94. package/dist/runtime/dashboard/components/dashboard-tabs.vue.d.ts +35 -0
  95. package/dist/runtime/dashboard/components/dashboard-total.d.vue.ts +10 -0
  96. package/dist/runtime/dashboard/components/dashboard-total.vue +32 -0
  97. package/dist/runtime/dashboard/components/dashboard-total.vue.d.ts +10 -0
  98. package/dist/runtime/dashboard/components/dashboard-widget.d.vue.ts +46 -0
  99. package/dist/runtime/dashboard/components/dashboard-widget.vue +84 -0
  100. package/dist/runtime/dashboard/components/dashboard-widget.vue.d.ts +46 -0
  101. package/dist/runtime/dashboard/composables/use-dashboard-api.d.ts +15 -0
  102. package/dist/runtime/dashboard/composables/use-dashboard-api.js +91 -0
  103. package/dist/runtime/dashboard/composables/use-dashboard-block.d.ts +22 -0
  104. package/dist/runtime/dashboard/composables/use-dashboard-block.js +35 -0
  105. package/dist/runtime/dashboard/composables/use-dashboard-chart.d.ts +36 -0
  106. package/dist/runtime/dashboard/composables/use-dashboard-chart.js +118 -0
  107. package/dist/runtime/dashboard/composables/use-dashboard-derived.d.ts +12 -0
  108. package/dist/runtime/dashboard/composables/use-dashboard-derived.js +47 -0
  109. package/dist/runtime/dashboard/composables/use-dashboard-format.d.ts +6 -0
  110. package/dist/runtime/dashboard/composables/use-dashboard-format.js +12 -0
  111. package/dist/runtime/dashboard/composables/use-dashboard-options.d.ts +8 -0
  112. package/dist/runtime/dashboard/composables/use-dashboard-options.js +63 -0
  113. package/dist/runtime/dashboard/composables/use-dashboard-param-scope.d.ts +30 -0
  114. package/dist/runtime/dashboard/composables/use-dashboard-param-scope.js +71 -0
  115. package/dist/runtime/dashboard/composables/use-dashboard-remote-options.d.ts +12 -0
  116. package/dist/runtime/dashboard/composables/use-dashboard-remote-options.js +117 -0
  117. package/dist/runtime/dashboard/composables/use-dashboard-resource.d.ts +35 -0
  118. package/dist/runtime/dashboard/composables/use-dashboard-resource.js +80 -0
  119. package/dist/runtime/dashboard/composables/use-dashboard-scope.d.ts +46 -0
  120. package/dist/runtime/dashboard/composables/use-dashboard-scope.js +127 -0
  121. package/dist/runtime/dashboard/composables/use-dashboard-time.d.ts +13 -0
  122. package/dist/runtime/dashboard/composables/use-dashboard-time.js +40 -0
  123. package/dist/runtime/dashboard/composables/use-dashboard-ui.d.ts +22 -0
  124. package/dist/runtime/dashboard/composables/use-dashboard-ui.js +19 -0
  125. package/dist/runtime/dashboard/composables/use-dashboard-views.d.ts +46 -0
  126. package/dist/runtime/dashboard/composables/use-dashboard-views.js +49 -0
  127. package/dist/runtime/dashboard/composables/use-dashboard.d.ts +24 -0
  128. package/dist/runtime/dashboard/composables/use-dashboard.js +42 -0
  129. package/dist/runtime/dashboard/constants/query.d.ts +16 -0
  130. package/dist/runtime/dashboard/constants/query.js +15 -0
  131. package/dist/runtime/dashboard/index.d.ts +4 -0
  132. package/dist/runtime/dashboard/index.js +3 -0
  133. package/dist/runtime/dashboard/schema/index.d.ts +57 -0
  134. package/dist/runtime/dashboard/schema/index.js +3 -0
  135. package/dist/runtime/dashboard/types/blocks.d.ts +251 -0
  136. package/dist/runtime/dashboard/types/blocks.js +0 -0
  137. package/dist/runtime/dashboard/types/charts.d.ts +60 -0
  138. package/dist/runtime/dashboard/types/charts.js +0 -0
  139. package/dist/runtime/dashboard/types/index.d.ts +7 -0
  140. package/dist/runtime/dashboard/types/index.js +0 -0
  141. package/dist/runtime/dashboard/types/options.d.ts +46 -0
  142. package/dist/runtime/dashboard/types/options.js +0 -0
  143. package/dist/runtime/dashboard/types/params.d.ts +115 -0
  144. package/dist/runtime/dashboard/types/params.js +0 -0
  145. package/dist/runtime/dashboard/types/resource.d.ts +106 -0
  146. package/dist/runtime/dashboard/types/resource.js +0 -0
  147. package/dist/runtime/dashboard/types/runtime.d.ts +44 -0
  148. package/dist/runtime/dashboard/types/runtime.js +0 -0
  149. package/dist/runtime/dashboard/types/schema.d.ts +171 -0
  150. package/dist/runtime/dashboard/types/schema.js +0 -0
  151. package/dist/runtime/dashboard/types/ui.d.ts +201 -0
  152. package/dist/runtime/dashboard/types/ui.js +0 -0
  153. package/dist/runtime/dashboard/utils/builders/dashboard-params.d.ts +85 -0
  154. package/dist/runtime/dashboard/utils/builders/dashboard-params.js +87 -0
  155. package/dist/runtime/dashboard/utils/chart-frame.d.ts +5 -0
  156. package/dist/runtime/dashboard/utils/chart-frame.js +27 -0
  157. package/dist/runtime/dashboard/utils/charts.d.ts +61 -0
  158. package/dist/runtime/dashboard/utils/charts.js +142 -0
  159. package/dist/runtime/dashboard/utils/comparison.d.ts +15 -0
  160. package/dist/runtime/dashboard/utils/comparison.js +19 -0
  161. package/dist/runtime/dashboard/utils/export.d.ts +13 -0
  162. package/dist/runtime/dashboard/utils/export.js +45 -0
  163. package/dist/runtime/dashboard/utils/options.d.ts +12 -0
  164. package/dist/runtime/dashboard/utils/options.js +23 -0
  165. package/dist/runtime/dashboard/utils/params/codecs.d.ts +14 -0
  166. package/dist/runtime/dashboard/utils/params/codecs.js +69 -0
  167. package/dist/runtime/dashboard/utils/resource.d.ts +16 -0
  168. package/dist/runtime/dashboard/utils/resource.js +39 -0
  169. package/dist/runtime/dashboard/utils/schema.d.ts +9 -0
  170. package/dist/runtime/dashboard/utils/schema.js +31 -0
  171. package/dist/runtime/dashboard/utils/sparkline.d.ts +21 -0
  172. package/dist/runtime/dashboard/utils/sparkline.js +53 -0
  173. package/dist/runtime/dashboard/utils/state.d.ts +28 -0
  174. package/dist/runtime/dashboard/utils/state.js +32 -0
  175. package/dist/runtime/dashboard/utils/time.d.ts +17 -0
  176. package/dist/runtime/dashboard/utils/time.js +60 -0
  177. package/dist/runtime/dashboard/utils/tracker.d.ts +12 -0
  178. package/dist/runtime/dashboard/utils/tracker.js +31 -0
  179. package/dist/runtime/dashboard/utils/ui.d.ts +38 -0
  180. package/dist/runtime/dashboard/utils/ui.js +24 -0
  181. package/dist/runtime/dashboard/utils/visibility.d.ts +2 -0
  182. package/dist/runtime/dashboard/utils/visibility.js +25 -0
  183. package/dist/runtime/form/components/root/form.vue +1 -1
  184. package/dist/runtime/form/composables/use-form-validation.d.ts +2 -3
  185. package/dist/runtime/form/composables/use-form-validation.js +24 -112
  186. package/dist/runtime/form/composables/use-form.js +1 -1
  187. package/dist/runtime/form/fields/password/component.vue +132 -28
  188. package/dist/runtime/form/fields/password/types.d.ts +6 -0
  189. package/dist/runtime/form/fields/text/component.vue +7 -2
  190. package/dist/runtime/form/types/field.d.ts +1 -1
  191. package/dist/runtime/form/types/options.d.ts +15 -36
  192. package/dist/runtime/form/types/validation.d.ts +3 -20
  193. package/dist/runtime/form/utils/state.d.ts +1 -14
  194. package/dist/runtime/form/utils/state.js +0 -199
  195. package/dist/runtime/i18n/locales/en.js +63 -0
  196. package/dist/runtime/i18n/locales/fr.js +63 -0
  197. package/dist/runtime/i18n/types.d.ts +68 -0
  198. package/dist/runtime/shared/index.d.ts +2 -0
  199. package/dist/runtime/shared/styles/tokens.css +1 -1
  200. package/dist/runtime/shared/types/query.d.ts +10 -0
  201. package/dist/runtime/shared/types/query.js +0 -0
  202. package/dist/runtime/shared/types/remote-options.d.ts +37 -0
  203. package/dist/runtime/shared/types/remote-options.js +0 -0
  204. package/dist/runtime/spreadsheet/components/layout/spreadsheet-import-footer.d.vue.ts +2 -2
  205. package/dist/runtime/spreadsheet/components/layout/spreadsheet-import-footer.vue.d.ts +2 -2
  206. package/dist/runtime/spreadsheet/composables/use-spreadsheet-internals.d.ts +15 -15
  207. package/dist/runtime/spreadsheet/composables/use-spreadsheet-resolutions.d.ts +2 -2
  208. package/dist/runtime/spreadsheet/schema/normalize.d.ts +1 -1
  209. package/dist/runtime/spreadsheet/utils/references/sources.d.ts +1 -1
  210. package/dist/runtime/table/components/data-list/data-list-content.d.vue.ts +20 -18
  211. package/dist/runtime/table/components/data-list/data-list-content.vue +14 -87
  212. package/dist/runtime/table/components/data-list/data-list-content.vue.d.ts +20 -18
  213. package/dist/runtime/table/components/data-list/data-list-default.d.vue.ts +1 -4
  214. package/dist/runtime/table/components/data-list/data-list-default.vue.d.ts +1 -4
  215. package/dist/runtime/table/components/data-list/data-list-error-state.d.vue.ts +13 -0
  216. package/dist/runtime/table/components/data-list/data-list-error-state.vue +91 -0
  217. package/dist/runtime/table/components/data-list/data-list-error-state.vue.d.ts +13 -0
  218. package/dist/runtime/table/components/data-list/data-list-infinite-loader.d.vue.ts +1 -1
  219. package/dist/runtime/table/components/data-list/data-list-infinite-loader.vue.d.ts +1 -1
  220. package/dist/runtime/table/components/data-list/data-list-layout-switch.d.vue.ts +1 -1
  221. package/dist/runtime/table/components/data-list/data-list-layout-switch.vue +1 -1
  222. package/dist/runtime/table/components/data-list/data-list-layout-switch.vue.d.ts +1 -1
  223. package/dist/runtime/table/components/data-list/data-list-pagination.d.vue.ts +1 -1
  224. package/dist/runtime/table/components/data-list/data-list-pagination.vue.d.ts +1 -1
  225. package/dist/runtime/table/components/data-list/data-list-refresh.vue +42 -4
  226. package/dist/runtime/table/components/data-list/data-list-root.d.vue.ts +1 -9
  227. package/dist/runtime/table/components/data-list/data-list-root.vue.d.ts +1 -9
  228. package/dist/runtime/table/components/data-list/data-list-sort-menu.d.vue.ts +1 -1
  229. package/dist/runtime/table/components/data-list/data-list-sort-menu.vue +11 -5
  230. package/dist/runtime/table/components/data-list/data-list-sort-menu.vue.d.ts +1 -1
  231. package/dist/runtime/table/components/data-list/sort-menu-panel.d.vue.ts +2 -2
  232. package/dist/runtime/table/components/data-list/sort-menu-panel.vue.d.ts +2 -2
  233. package/dist/runtime/table/components/data-list.d.vue.ts +2 -13
  234. package/dist/runtime/table/components/data-list.vue.d.ts +2 -13
  235. package/dist/runtime/table/components/drawers/column-panel.vue +7 -2
  236. package/dist/runtime/table/components/filters/panel/filter-panel-chips.vue +2 -5
  237. package/dist/runtime/table/components/filters/panel/option-filter-panel-field.vue +1 -1
  238. package/dist/runtime/table/components/filters/shared/dynamic-filter-picker.d.vue.ts +2 -2
  239. package/dist/runtime/table/components/filters/shared/dynamic-filter-picker.vue +103 -101
  240. package/dist/runtime/table/components/filters/shared/dynamic-filter-picker.vue.d.ts +2 -2
  241. package/dist/runtime/table/components/filters/shared/filter-match-mode-button.d.vue.ts +1 -1
  242. package/dist/runtime/table/components/filters/shared/filter-match-mode-button.vue.d.ts +1 -1
  243. package/dist/runtime/table/components/filters/shared/filter-option-multiple-list.vue +2 -2
  244. package/dist/runtime/table/components/filters/shared/filter-option-picker-content.vue +3 -3
  245. package/dist/runtime/table/components/filters/shared/filter-option-single-list.vue +1 -1
  246. package/dist/runtime/table/components/filters/shared/filter-popover-shell.d.vue.ts +3 -3
  247. package/dist/runtime/table/components/filters/shared/filter-popover-shell.vue +17 -15
  248. package/dist/runtime/table/components/filters/shared/filter-popover-shell.vue.d.ts +3 -3
  249. package/dist/runtime/table/components/filters/shared/filter-searchable-panel.vue +10 -2
  250. package/dist/runtime/table/components/filters/sheet/filter-sheet.vue +4 -3
  251. package/dist/runtime/table/components/filters/tags/filter-tags-bar.vue +1 -1
  252. package/dist/runtime/table/components/grid/grid-renderer.vue +2 -4
  253. package/dist/runtime/table/components/layout/table-footer.d.vue.ts +1 -1
  254. package/dist/runtime/table/components/layout/table-footer.vue.d.ts +1 -1
  255. package/dist/runtime/table/components/table/table-cell-ellipsis.d.ts +1 -1
  256. package/dist/runtime/table/components/table/table-renderer.d.vue.ts +8 -2
  257. package/dist/runtime/table/components/table/table-renderer.vue +24 -6
  258. package/dist/runtime/table/components/table/table-renderer.vue.d.ts +8 -2
  259. package/dist/runtime/table/composables/use-option-filter-editor-state.d.ts +1 -0
  260. package/dist/runtime/table/composables/use-option-filter-editor-state.js +2 -2
  261. package/dist/runtime/table/composables/use-query-state.d.ts +3 -3
  262. package/dist/runtime/table/composables/use-table-actions.js +10 -5
  263. package/dist/runtime/table/composables/use-table-api.js +4 -1
  264. package/dist/runtime/table/composables/use-table-columns.d.ts +9 -5
  265. package/dist/runtime/table/composables/use-table-data.d.ts +2 -1
  266. package/dist/runtime/table/composables/use-table-data.js +19 -2
  267. package/dist/runtime/table/composables/use-table-filter-options.d.ts +1 -0
  268. package/dist/runtime/table/composables/use-table-filter-options.js +2 -1
  269. package/dist/runtime/table/composables/use-table-internals.d.ts +45 -33
  270. package/dist/runtime/table/composables/use-table-pagination.d.ts +2 -2
  271. package/dist/runtime/table/composables/use-table-selection.d.ts +1 -1
  272. package/dist/runtime/table/composables/use-table-state.d.ts +3 -3
  273. package/dist/runtime/table/types/actions.d.ts +3 -2
  274. package/dist/runtime/table/types/data-list.d.ts +8 -0
  275. package/dist/runtime/table/types/source.d.ts +14 -6
  276. package/dist/runtime/table/utils/builders/table-source.d.ts +14 -15
  277. package/dist/runtime/table/utils/client-query.d.ts +1 -1
  278. package/dist/runtime/table/utils/columns/menu.d.ts +1 -1
  279. package/dist/runtime/table/utils/columns/render.d.ts +13 -5
  280. package/dist/runtime/table/utils/columns/render.js +3 -2
  281. package/dist/runtime/table/utils/columns/state.d.ts +1 -1
  282. package/dist/runtime/table/utils/data-list-ui.d.ts +1 -1
  283. package/dist/runtime/table/utils/filters/editor-size.js +9 -9
  284. package/dist/runtime/table/utils/filters/options.js +6 -1
  285. package/dist/runtime/table/utils/index.d.ts +1 -0
  286. package/dist/runtime/table/utils/index.js +1 -0
  287. package/dist/runtime/table/utils/prefetch.js +5 -1
  288. package/dist/runtime/table/utils/source-request.d.ts +2 -0
  289. package/dist/runtime/table/utils/source-request.js +9 -0
  290. package/package.json +28 -1
@@ -79,11 +79,9 @@ const showInitialLoading = computed(
79
79
  () => status.value.isBooting || status.value.isPending && tableRows.value.length === 0
80
80
  );
81
81
  const showRefreshing = computed(
82
- () => tableRows.value.length > 0 && (status.value.isFetching || status.value.isRefreshing || status.value.isRevalidating)
83
- );
84
- const showError = computed(
85
- () => Boolean(internals.queryContent.error.value) && tableRows.value.length === 0
82
+ () => !internals.queryContent.error.value && tableRows.value.length > 0 && (status.value.isFetching || status.value.isRefreshing || status.value.isRevalidating)
86
83
  );
84
+ const showError = computed(() => Boolean(internals.queryContent.error.value));
87
85
  const showEmpty = computed(
88
86
  () => !showInitialLoading.value && !showError.value && tableRows.value.length === 0
89
87
  );
@@ -24,7 +24,7 @@ declare var __VLS_1: {
24
24
  isLoadingMore: boolean;
25
25
  loadMoreError: unknown;
26
26
  loadedCount: number;
27
- mode: "none" | "offset" | "cursor";
27
+ mode: "cursor" | "none" | "offset";
28
28
  pageCount: number;
29
29
  pageIndex: number;
30
30
  pageSize: number;
@@ -24,7 +24,7 @@ declare var __VLS_1: {
24
24
  isLoadingMore: boolean;
25
25
  loadMoreError: unknown;
26
26
  loadedCount: number;
27
- mode: "none" | "offset" | "cursor";
27
+ mode: "cursor" | "none" | "offset";
28
28
  pageCount: number;
29
29
  pageIndex: number;
30
30
  pageSize: number;
@@ -26,8 +26,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
26
26
  type: StringConstructor;
27
27
  };
28
28
  }>> & Readonly<{}>, {
29
- title: string;
30
29
  disabled: boolean;
30
+ title: string;
31
31
  wrapperClass: string;
32
32
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
33
33
  export default _default;
@@ -6,6 +6,7 @@ type __VLS_Props = {
6
6
  fill?: boolean;
7
7
  ui?: DataListTableUi;
8
8
  };
9
+ declare function refresh(): void;
9
10
  type ColumnSlot = {
10
11
  kind: 'column';
11
12
  columnId: string;
@@ -25,11 +26,16 @@ declare var __VLS_34: {
25
26
  coreRowModel: (table: import("@tanstack/table-core").Table<any, any>) => () => import("@tanstack/table-core").RowModel<any, any>;
26
27
  columnMeta: import("../../utils/index.js").DataListColumnMeta;
27
28
  }, object, unknown>[];
28
- }, __VLS_36: {};
29
+ }, __VLS_36: {
30
+ error: {};
31
+ retry: typeof refresh;
32
+ }, __VLS_45: {};
29
33
  type __VLS_Slots = {} & {
30
34
  footer?: (props: typeof __VLS_34) => any;
31
35
  } & {
32
- empty?: (props: typeof __VLS_36) => any;
36
+ error?: (props: typeof __VLS_36) => any;
37
+ } & {
38
+ empty?: (props: typeof __VLS_45) => any;
33
39
  };
34
40
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
35
41
  resetColumnSizing: () => void;
@@ -23,6 +23,7 @@ import {
23
23
  SELECT_COLUMN_ID,
24
24
  SELECT_COLUMN_WIDTH
25
25
  } from "../../utils/columns/types";
26
+ import DataListErrorState from "../data-list/data-list-error-state.vue";
26
27
  import TableCell from "./table-cell";
27
28
  import TableColumnHeader from "./table-column-header.vue";
28
29
  import TableEmptyState from "./table-empty-state.vue";
@@ -58,12 +59,16 @@ const { status } = internals.queryContent;
58
59
  const rowsMounted = ref(false);
59
60
  let rowMountFrame = 0;
60
61
  const isFirstLoad = computed(
61
- () => status.value.isBooting || status.value.isPending && rows.value.length === 0 || !rowsMounted.value && rows.value.length > 0
62
+ () => status.value.isBooting || (status.value.isPending || status.value.isFetching) && rows.value.length === 0 || !rowsMounted.value && rows.value.length > 0
62
63
  );
63
64
  const refreshing = computed(
64
- () => rows.value.length > 0 && (status.value.isFetching || status.value.isRefreshing)
65
+ () => rows.value.length > 0 && (status.value.isFetching || status.value.isRefreshing || status.value.isRevalidating)
65
66
  );
66
- const empty = computed(() => !isFirstLoad.value && rows.value.length === 0);
67
+ const error = computed(() => rows.value.length === 0 ? internals.queryContent.error.value : null);
68
+ const empty = computed(() => !isFirstLoad.value && !error.value && rows.value.length === 0);
69
+ function refresh() {
70
+ void internals.queryContent.refreshData()();
71
+ }
67
72
  const resolvedSize = computed(
68
73
  () => props.size ?? dataListUi.ui.value.table?.size ?? dataListUi.controlSize.value
69
74
  );
@@ -616,7 +621,7 @@ defineExpose({ resetColumnSizing });
616
621
  </th>
617
622
  </template>
618
623
  </tr>
619
- <tr v-if="refreshing" class="nut-dl-progress" aria-hidden="true">
624
+ <tr class="nut-dl-progress" :data-active="refreshing" aria-hidden="true">
620
625
  <th
621
626
  :colspan="leafColumns.length"
622
627
  class="sticky top-[var(--nut-dl-head-h)] z-[3] h-0 p-0"
@@ -824,7 +829,20 @@ defineExpose({ resetColumnSizing });
824
829
  </tfoot>
825
830
  </table>
826
831
 
827
- <div v-if="empty" class="nut-dl-table__empty sticky left-0 w-full">
832
+ <div
833
+ v-if="error"
834
+ class="nut-dl-table__error sticky left-0 w-full"
835
+ :style="{ height: fill ? 'calc(100% - var(--nut-dl-head-h))' : void 0 }"
836
+ >
837
+ <slot name="error" :error="error" :retry="refresh">
838
+ <DataListErrorState
839
+ :min-height="fill ? '100%' : '16rem'"
840
+ :size="resolvedSize"
841
+ @retry="refresh"
842
+ />
843
+ </slot>
844
+ </div>
845
+ <div v-else-if="empty" class="nut-dl-table__empty sticky left-0 w-full">
828
846
  <slot name="empty">
829
847
  <TableEmptyState
830
848
  :min-height="fill ? 'calc(100% - var(--nut-dl-head-h))' : '16rem'"
@@ -840,5 +858,5 @@ defineExpose({ resetColumnSizing });
840
858
  <style>
841
859
  .nut-dl-table{--nut-dl-surface:var(--nut-dl-table-surface,var(--ui-bg-elevated));--nut-dl-line:var(--nut-dl-table-line,var(--ui-border));--nut-dl-line-soft:var(--nut-dl-table-line-soft,var(--ui-border-muted));--nut-dl-head-bg:var(--nut-dl-table-head-bg,var(--ui-bg-muted));--nut-dl-head-fg:var(--nut-dl-table-head-fg,var(--ui-text-muted));--nut-dl-head-font:var(--nut-dl-table-head-font,11px);--nut-dl-head-weight:var(--nut-dl-table-head-weight,600);--nut-dl-head-tracking:var(--nut-dl-table-head-tracking,0.04em);--nut-dl-head-transform:var(--nut-dl-table-head-transform,none);--nut-dl-row-hover:var(--nut-dl-table-row-hover,var(--ui-bg-muted));--nut-dl-row-selected:var(
842
860
  --nut-dl-table-row-selected,color-mix(in srgb,var(--ui-primary) 10%,var(--nut-dl-surface))
843
- );--nut-dl-accent:var(--ui-primary);--nut-dl-cell-fg:var(--nut-dl-table-cell-fg,var(--ui-text-toned));--nut-dl-pin-line:var(--nut-dl-table-pin-line,var(--nut-dl-line))}.nut-dl-table__scroll{overflow-anchor:none;scrollbar-width:none}.nut-dl-table__scroll::-webkit-scrollbar{display:none}.nut-dl-th{color:var(--nut-dl-head-fg);font-size:var(--nut-dl-head-font);font-weight:var(--nut-dl-head-weight);letter-spacing:var(--nut-dl-head-tracking);text-transform:var(--nut-dl-head-transform);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.nut-dl-table__spacer,.nut-dl-th{border-bottom:1px solid var(--nut-dl-line)}.nut-dl-table__spacer,.nut-dl-tf,.nut-dl-th{background:var(--nut-dl-head-bg);border-top:1px solid var(--nut-dl-line)}.nut-dl-tf{color:var(--ui-text-highlighted);font-weight:var(--nut-dl-table-foot-weight,500);white-space:nowrap}tfoot .nut-dl-table__spacer{border-bottom:0;border-top:1px solid var(--nut-dl-line)}.nut-dl-spinner{animation:nut-dl-spin .8s linear infinite}@keyframes nut-dl-spin{to{transform:rotate(1turn)}}tbody .nut-dl-table__spacer{background:var(--nut-dl-surface);border-bottom:1px solid var(--nut-dl-line-soft)}.nut-dl-th__btn--open{background:color-mix(in srgb,var(--nut-dl-head-fg) 8%,transparent)}.nut-dl-rz:after{background:var(--ui-border-accented);bottom:10px;content:"";opacity:0;position:absolute;right:0;top:10px;transition:opacity .12s;width:1px}.nut-dl-rz:hover:after,.nut-dl-th:hover .nut-dl-rz:after{opacity:1}.nut-dl-rz--active:after,.nut-dl-rz:hover:after{background:var(--nut-dl-accent);bottom:6px;left:2.5px;opacity:1;top:6px;width:2px}.nut-dl-row{background:var(--nut-dl-surface);transition:background-color .1s}.nut-dl-row:hover{background:var(--nut-dl-row-hover)}.nut-dl-row--selected,.nut-dl-row--selected:hover{background:var(--nut-dl-row-selected)}.nut-dl-td,.nut-dl-th__btn,.nut-dl-th__static{padding-left:var(--nut-dl-cell-l,var(--nut-dl-cell-x));padding-right:var(--nut-dl-cell-r,var(--nut-dl-cell-x))}.nut-dl-row>.nut-dl-td:first-child,.nut-dl-table__head-row>.nut-dl-th:first-child{--nut-dl-cell-l:var(--nut-dl-gutter)}.nut-dl-row>.nut-dl-td:last-child,.nut-dl-table__head-row>.nut-dl-th:last-child{--nut-dl-cell-r:var(--nut-dl-gutter)}.nut-dl-row>.nut-dl-td--actions:last-child,.nut-dl-table__head-row>.nut-dl-th--actions:last-child,.nut-dl-td--actions{--nut-dl-cell-l:var(--nut-dl-cell-x);--nut-dl-cell-r:var(--nut-dl-cell-x)}.nut-dl-td--actions .nut-dl-td__inner{justify-content:flex-end}.nut-dl-td{background:inherit;border-bottom:1px solid var(--nut-dl-line-soft);box-sizing:border-box;color:var(--nut-dl-cell-fg);overflow:hidden;overflow-wrap:anywhere;padding-block:var(--nut-dl-cell-y,6px);white-space:normal}.nut-dl-td__inner{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--nut-dl-lines,3);line-clamp:var(--nut-dl-lines,3);max-height:calc(var(--nut-dl-lines, 3)*1.5em);overflow:hidden}.nut-dl-td--ellipsis{--nut-dl-lines:1;white-space:nowrap}.nut-dl-td--ellipsis .nut-dl-td__inner{display:block;text-overflow:ellipsis}.nut-dl-td--actions .nut-dl-td__inner,.nut-dl-td--selection .nut-dl-td__inner{align-items:center;display:flex}.nut-dl-td--actions,.nut-dl-td--selection{white-space:nowrap}.nut-dl-td--actions .nut-dl-td__inner>*{opacity:.55;transition:opacity .12s}.nut-dl-row:hover .nut-dl-td--actions .nut-dl-td__inner>*{opacity:1}.nut-dl-pin{position:sticky}.nut-dl-pin--first-end:before,.nut-dl-pin--last-start:after{background:var(--nut-dl-line);bottom:0;content:"";pointer-events:none;position:absolute;top:0;width:1px}.nut-dl-pin--last-start:after{right:0}.nut-dl-pin--first-end:before{left:0}.nut-dl-pin--first-end:before,.nut-dl-pin--last-start:after{background:var(--nut-dl-pin-line)}.nut-dl-td--actions.nut-dl-pin--first-end:before,.nut-dl-th--actions.nut-dl-pin--first-end:before{display:none}.nut-dl-progress th{overflow:hidden}.nut-dl-progress th span{animation:nut-dl-progress 1s ease-in-out infinite;background:linear-gradient(90deg,transparent,var(--nut-dl-accent),transparent);background-size:40% 100%;height:2px;left:0;position:absolute;right:0}@keyframes nut-dl-progress{0%{background-position:-40% 0}to{background-position:140% 0}}.nut-dl-skeleton{animation:nut-dl-shimmer 1.6s ease-in-out infinite;animation-delay:calc(var(--nut-dl-i, 0)*-90ms);background:linear-gradient(90deg,var(--ui-bg-accented) 0,var(--ui-bg-muted) 45%,var(--ui-bg-accented) 100%);background-size:200% 100%}.nut-dl-row--skeleton{animation:nut-dl-fade-in .2s ease both;animation-delay:calc(var(--nut-dl-i, 0)*18ms)}@keyframes nut-dl-fade-in{0%{opacity:0}to{opacity:1}}@keyframes nut-dl-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.nut-dl-table[data-virtualized=true] .nut-dl-row[style*="--nut-dl-i"]{animation:nut-dl-row-in .22s cubic-bezier(.2,.9,.3,1) both;animation-delay:calc(var(--nut-dl-i)*10ms)}@keyframes nut-dl-row-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.nut-dl-row--moving{transition:transform .24s cubic-bezier(.2,.9,.3,1)}.nut-dl-row--settling{transition:opacity .18s ease,transform .24s cubic-bezier(.2,.9,.3,1)}.nut-dl-row--from{opacity:0;transform:translateY(4px)}@media (prefers-reduced-motion:reduce){.nut-dl-row,.nut-dl-row--moving,.nut-dl-row--settling{transition:none}.nut-dl-progress th span,.nut-dl-skeleton,.nut-dl-table[data-virtualized=true] .nut-dl-row[style*="--nut-dl-i"]{animation:none}}
861
+ );--nut-dl-accent:var(--ui-primary);--nut-dl-cell-fg:var(--nut-dl-table-cell-fg,var(--ui-text-toned));--nut-dl-pin-line:var(--nut-dl-table-pin-line,var(--nut-dl-line))}.nut-dl-table__scroll{overflow-anchor:none;scrollbar-width:none}.nut-dl-table__scroll::-webkit-scrollbar{display:none}.nut-dl-th{color:var(--nut-dl-head-fg);font-size:var(--nut-dl-head-font);font-weight:var(--nut-dl-head-weight);letter-spacing:var(--nut-dl-head-tracking);text-transform:var(--nut-dl-head-transform);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.nut-dl-table__spacer,.nut-dl-th{border-bottom:1px solid var(--nut-dl-line)}.nut-dl-table__spacer,.nut-dl-tf,.nut-dl-th{background:var(--nut-dl-head-bg);border-top:1px solid var(--nut-dl-line)}.nut-dl-tf{color:var(--ui-text-highlighted);font-weight:var(--nut-dl-table-foot-weight,500);white-space:nowrap}tfoot .nut-dl-table__spacer{border-bottom:0;border-top:1px solid var(--nut-dl-line)}.nut-dl-spinner{animation:nut-dl-spin .8s linear infinite}@keyframes nut-dl-spin{to{transform:rotate(1turn)}}tbody .nut-dl-table__spacer{background:var(--nut-dl-surface);border-bottom:1px solid var(--nut-dl-line-soft)}.nut-dl-th__btn--open{background:color-mix(in srgb,var(--nut-dl-head-fg) 8%,transparent)}.nut-dl-rz:after{background:var(--ui-border-accented);bottom:10px;content:"";opacity:0;position:absolute;right:0;top:10px;transition:opacity .12s;width:1px}.nut-dl-rz:hover:after,.nut-dl-th:hover .nut-dl-rz:after{opacity:1}.nut-dl-rz--active:after,.nut-dl-rz:hover:after{background:var(--nut-dl-accent);bottom:6px;left:2.5px;opacity:1;top:6px;width:2px}.nut-dl-row{background:var(--nut-dl-surface);transition:background-color .1s}.nut-dl-row:hover{background:var(--nut-dl-row-hover)}.nut-dl-row--selected,.nut-dl-row--selected:hover{background:var(--nut-dl-row-selected)}.nut-dl-td,.nut-dl-th__btn,.nut-dl-th__static{padding-left:var(--nut-dl-cell-l,var(--nut-dl-cell-x));padding-right:var(--nut-dl-cell-r,var(--nut-dl-cell-x))}.nut-dl-row>.nut-dl-td:first-child,.nut-dl-table__head-row>.nut-dl-th:first-child{--nut-dl-cell-l:var(--nut-dl-gutter)}.nut-dl-row>.nut-dl-td:last-child,.nut-dl-table__head-row>.nut-dl-th:last-child{--nut-dl-cell-r:var(--nut-dl-gutter)}.nut-dl-row>.nut-dl-td--actions:last-child,.nut-dl-table__head-row>.nut-dl-th--actions:last-child,.nut-dl-td--actions{--nut-dl-cell-l:var(--nut-dl-cell-x);--nut-dl-cell-r:var(--nut-dl-cell-x)}.nut-dl-td--actions .nut-dl-td__inner{justify-content:flex-end}.nut-dl-td{background:inherit;border-bottom:1px solid var(--nut-dl-line-soft);box-sizing:border-box;color:var(--nut-dl-cell-fg);overflow:hidden;overflow-wrap:anywhere;padding-block:var(--nut-dl-cell-y,6px);white-space:normal}.nut-dl-td__inner{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--nut-dl-lines,3);line-clamp:var(--nut-dl-lines,3);max-height:calc(var(--nut-dl-lines, 3)*1.5em);overflow:hidden}.nut-dl-td--ellipsis{--nut-dl-lines:1;white-space:nowrap}.nut-dl-td--ellipsis .nut-dl-td__inner{display:block;text-overflow:ellipsis}.nut-dl-td--actions .nut-dl-td__inner,.nut-dl-td--selection .nut-dl-td__inner{align-items:center;display:flex}.nut-dl-td--actions,.nut-dl-td--selection{white-space:nowrap}.nut-dl-td--actions .nut-dl-td__inner>*{opacity:.55;transition:opacity .12s}.nut-dl-row:hover .nut-dl-td--actions .nut-dl-td__inner>*{opacity:1}.nut-dl-pin{position:sticky}.nut-dl-pin--first-end:before,.nut-dl-pin--last-start:after{background:var(--nut-dl-line);bottom:0;content:"";pointer-events:none;position:absolute;top:0;width:1px}.nut-dl-pin--last-start:after{right:0}.nut-dl-pin--first-end:before{left:0}.nut-dl-pin--first-end:before,.nut-dl-pin--last-start:after{background:var(--nut-dl-pin-line)}.nut-dl-td--actions.nut-dl-pin--first-end:before,.nut-dl-th--actions.nut-dl-pin--first-end:before{display:none}.nut-dl-progress th{overflow:hidden}.nut-dl-progress th span{animation:nut-dl-progress 1s ease-in-out infinite paused;background:linear-gradient(90deg,transparent,var(--nut-dl-accent),transparent);background-size:40% 100%;height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .12s ease-out}.nut-dl-progress[data-active=true] th span{animation-play-state:running;opacity:1}@keyframes nut-dl-progress{0%{background-position:-40% 0}to{background-position:140% 0}}.nut-dl-skeleton{animation:nut-dl-shimmer 1.6s ease-in-out infinite;animation-delay:calc(var(--nut-dl-i, 0)*-90ms);background:linear-gradient(90deg,var(--ui-bg-accented) 0,var(--ui-bg-muted) 45%,var(--ui-bg-accented) 100%);background-size:200% 100%}.nut-dl-row--skeleton{animation:nut-dl-fade-in .2s ease both;animation-delay:calc(var(--nut-dl-i, 0)*18ms)}@keyframes nut-dl-fade-in{0%{opacity:0}to{opacity:1}}@keyframes nut-dl-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.nut-dl-table[data-virtualized=true] .nut-dl-row[style*="--nut-dl-i"]{animation:nut-dl-row-in .22s cubic-bezier(.2,.9,.3,1) both;animation-delay:calc(var(--nut-dl-i)*10ms)}@keyframes nut-dl-row-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.nut-dl-row--moving{transition:transform .24s cubic-bezier(.2,.9,.3,1)}.nut-dl-row--settling{transition:opacity .18s ease,transform .24s cubic-bezier(.2,.9,.3,1)}.nut-dl-row--from{opacity:0;transform:translateY(4px)}@media (prefers-reduced-motion:reduce){.nut-dl-row,.nut-dl-row--moving,.nut-dl-row--settling{transition:none}.nut-dl-progress th span,.nut-dl-skeleton,.nut-dl-table[data-virtualized=true] .nut-dl-row[style*="--nut-dl-i"]{animation:none}}
844
862
  </style>
@@ -6,6 +6,7 @@ type __VLS_Props = {
6
6
  fill?: boolean;
7
7
  ui?: DataListTableUi;
8
8
  };
9
+ declare function refresh(): void;
9
10
  type ColumnSlot = {
10
11
  kind: 'column';
11
12
  columnId: string;
@@ -25,11 +26,16 @@ declare var __VLS_34: {
25
26
  coreRowModel: (table: import("@tanstack/table-core").Table<any, any>) => () => import("@tanstack/table-core").RowModel<any, any>;
26
27
  columnMeta: import("../../utils/index.js").DataListColumnMeta;
27
28
  }, object, unknown>[];
28
- }, __VLS_36: {};
29
+ }, __VLS_36: {
30
+ error: {};
31
+ retry: typeof refresh;
32
+ }, __VLS_45: {};
29
33
  type __VLS_Slots = {} & {
30
34
  footer?: (props: typeof __VLS_34) => any;
31
35
  } & {
32
- empty?: (props: typeof __VLS_36) => any;
36
+ error?: (props: typeof __VLS_36) => any;
37
+ } & {
38
+ empty?: (props: typeof __VLS_45) => any;
33
39
  };
34
40
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
35
41
  resetColumnSizing: () => void;
@@ -49,6 +49,7 @@ export declare function useOptionFilterEditorState(options: UseOptionFilterEdito
49
49
  isStaleLoading: ComputedRef<boolean>;
50
50
  refresh: () => Promise<[import("@tanstack/vue-query").QueryObserverResult<TableFilterOptionEntry[] | import("../types/index.js").TableFilterOptionQueryResult, Error>, import("@tanstack/vue-query").QueryObserverResult<import("../types/index.js").TableFacetExecutionResult<string, unknown>, Error>]>;
51
51
  searchExpandedIds: ComputedRef<string[]>;
52
+ showCounts: ComputedRef<boolean>;
52
53
  sourceEntries: ComputedRef<(TableResolvedFilterOptionEntry<import("../types/index.js").TableFilterPrimitiveValue> & {
53
54
  value: string | number | boolean;
54
55
  })[]>;
@@ -111,7 +111,7 @@ export function useOptionFilterEditorState(options) {
111
111
  const flatRadioItems = computed(
112
112
  () => displayEntries.value.map((entry) => ({
113
113
  color: entry.color,
114
- count: filterUi.value.row.showCounts ? entry.count : void 0,
114
+ count: optionSource.showCounts.value ? entry.count ?? 0 : void 0,
115
115
  icon: entry.icon,
116
116
  label: entry.label,
117
117
  truncate: filterUi.value.row.truncate,
@@ -134,7 +134,7 @@ export function useOptionFilterEditorState(options) {
134
134
  const treeRadioItems = computed(
135
135
  () => visibleTreeEntries.value.map((entry) => ({
136
136
  color: entry.color,
137
- count: filterUi.value.row.showCounts ? entry.count : void 0,
137
+ count: optionSource.showCounts.value ? entry.count ?? 0 : void 0,
138
138
  depth: entry.depth,
139
139
  disabled: !entry.selectable,
140
140
  expandable: entry.expandable,
@@ -19,7 +19,7 @@ export declare function useQueryState(params: UseQueryStateParams): {
19
19
  readonly pageSize?: undefined;
20
20
  readonly pageIndex?: undefined;
21
21
  } | {
22
- readonly count: "exact" | "none";
22
+ readonly count: "none" | "exact";
23
23
  readonly cursor: null;
24
24
  readonly mode: "cursor";
25
25
  readonly pageSize: number;
@@ -31,7 +31,7 @@ export declare function useQueryState(params: UseQueryStateParams): {
31
31
  readonly pageSize: number;
32
32
  readonly cursor?: undefined;
33
33
  }>;
34
- paginationMode: "none" | "offset" | "cursor";
34
+ paginationMode: "cursor" | "none" | "offset";
35
35
  paginationRevision: import("vue").Ref<number, number>;
36
36
  resetPagination: () => void;
37
37
  setOffsetPagination: (value: {
@@ -39,7 +39,7 @@ export declare function useQueryState(params: UseQueryStateParams): {
39
39
  pageSize: number;
40
40
  }) => void;
41
41
  sorting: import("vue").WritableComputedRef<{
42
- dir: "desc" | "asc";
42
+ dir: "asc" | "desc";
43
43
  key: string;
44
44
  } | null, {
45
45
  key: string;
@@ -23,10 +23,7 @@ export function useTableActions(options) {
23
23
  context: toPlainRecord(options.queryContent.contextData.value),
24
24
  matchingCount: options.queryContent.data.value.rowCount ?? null,
25
25
  pageContext: toPlainRecord(options.queryContent.pageContextData.value),
26
- request: {
27
- ...options.queryContent.requestContext.value,
28
- context: toPlainRecord(options.queryContent.requestContext.value.context)
29
- },
26
+ request: options.queryContent.sourceRequest.value,
30
27
  scope: options.selection.bulkScope.value,
31
28
  selectedRows: options.selection.selectedRows.value
32
29
  }));
@@ -54,9 +51,17 @@ export function useTableActions(options) {
54
51
  if (!definition.action) {
55
52
  return;
56
53
  }
54
+ const actionContext = context.value;
57
55
  runningKeys.value = [...runningKeys.value, definition.key];
56
+ const selectionClear = "selectionClear" in definition ? definition.selectionClear ?? "never" : "never";
57
+ if (selectionClear === "trigger") {
58
+ selectionApi.clear();
59
+ }
58
60
  try {
59
- await definition.action(context.value);
61
+ await definition.action(actionContext);
62
+ if (selectionClear === "success") {
63
+ selectionApi.clear();
64
+ }
60
65
  } finally {
61
66
  runningKeys.value = runningKeys.value.filter((key) => key !== definition.key);
62
67
  }
@@ -43,7 +43,10 @@ export function useTableApi(params) {
43
43
  }
44
44
  };
45
45
  const layoutApi = {
46
- set: params.controls.setTableLayout,
46
+ set(layout) {
47
+ params.controls.setTableLayout(layout);
48
+ params.columns.setSorting(getDefaultSort({ layout, schema: params.runtimeSchema.value }));
49
+ },
47
50
  state: params.controls.layoutState
48
51
  };
49
52
  const filters = {
@@ -7,10 +7,10 @@ export declare function useTableColumns(params: UseTableColumnsParams): {
7
7
  }) => import("@nuxt/ui/runtime/components/DropdownMenu.d.vue.js").DropdownMenuItem[][];
8
8
  getPinnedState: (options: {
9
9
  columnId: string;
10
- }) => "right" | "left" | null;
10
+ }) => "left" | "right" | null;
11
11
  getSortState: (options: {
12
12
  columnId: string;
13
- }) => "desc" | "asc" | null;
13
+ }) => "asc" | "desc" | null;
14
14
  orderedColumns: import("vue").ComputedRef<import("../utils/index.js").TableRuntimeColumn[]>;
15
15
  reset: () => void;
16
16
  runtimeColumns: import("vue").ComputedRef<import("../utils/index.js").TableRuntimeColumn[]>;
@@ -34,7 +34,7 @@ export declare function useTableColumns(params: UseTableColumnsParams): {
34
34
  sortKeys: import("vue").ComputedRef<string[]>;
35
35
  sortingState: import("vue").ComputedRef<{
36
36
  active: boolean;
37
- dir: "desc" | "asc" | undefined;
37
+ dir: "asc" | "desc" | undefined;
38
38
  key: string | undefined;
39
39
  }>;
40
40
  tableColumns: import("vue").ComputedRef<({
@@ -74,7 +74,9 @@ export declare function useTableColumns(params: UseTableColumnsParams): {
74
74
  original: import("../types/index.js").GenericObject;
75
75
  index: number;
76
76
  };
77
- }) => import("vue/jsx-runtime").JSX.Element;
77
+ }) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
78
+ [key: string]: any;
79
+ }>;
78
80
  enableHiding: boolean;
79
81
  enablePinning: boolean;
80
82
  enableResizing: boolean;
@@ -107,7 +109,9 @@ export declare function useTableColumns(params: UseTableColumnsParams): {
107
109
  original: import("../types/index.js").GenericObject;
108
110
  index: number;
109
111
  };
110
- }) => import("vue/jsx-runtime").JSX.Element;
112
+ }) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
113
+ [key: string]: any;
114
+ }>;
111
115
  enableHiding: boolean;
112
116
  enablePinning: boolean;
113
117
  enableResizing: boolean;
@@ -1,6 +1,6 @@
1
1
  import { useInfiniteQuery, useQueries, useQuery } from '@tanstack/vue-query';
2
2
  import type { ComputedRef } from 'vue';
3
- import type { GenericObject, TableExternalState, TableFacetExecutionResult, TableSchemaView, TableSourceRequestContext, TableRefreshResult, TableRuntimeRecord } from '../types/index.js';
3
+ import type { GenericObject, TableExternalState, TableFacetExecutionResult, TableRemoteSourceRequest, TableSchemaView, TableSourceRequestContext, TableRefreshResult, TableRuntimeRecord } from '../types/index.js';
4
4
  import type { UseTableStartupReturn } from './use-table-startup.js';
5
5
  import type { useTableState } from './use-table-state.js';
6
6
  export interface UseTableDataParams {
@@ -19,6 +19,7 @@ export interface UseTableDataReturn {
19
19
  context: TableRuntimeRecord;
20
20
  }>;
21
21
  requestContext: ComputedRef<TableSourceRequestContext>;
22
+ sourceRequest: ComputedRef<TableRemoteSourceRequest>;
22
23
  searchParams: ComputedRef<TableSourceRequestContext>;
23
24
  query: ReturnType<typeof useQuery>;
24
25
  infiniteQuery: ReturnType<typeof useInfiniteQuery>;
@@ -11,7 +11,8 @@ import {
11
11
  isTableCursorPageResult,
12
12
  paginateClientRows,
13
13
  resolveTableRowId,
14
- sortClientRows
14
+ sortClientRows,
15
+ toTableRemoteSourceRequest
15
16
  } from "../utils/index.js";
16
17
  export function useTableData(params) {
17
18
  const contextItems = computed(
@@ -79,6 +80,7 @@ export function useTableData(params) {
79
80
  search: requestSearch.value,
80
81
  sorting: requestSorting.value
81
82
  }));
83
+ const sourceRequest = computed(() => toTableRemoteSourceRequest(requestContext.value));
82
84
  const searchParams = requestContext;
83
85
  const dataStaleTime = computed(() => QUERY_DEFAULTS.staleTime.data);
84
86
  const isCursorPagination = computed(() => requestPagination.value.mode === "cursor");
@@ -87,6 +89,7 @@ export function useTableData(params) {
87
89
  const definition = resolveSourceDefinition({
88
90
  context: contextData.value,
89
91
  request: requestContext.value,
92
+ sourceRequest: sourceRequest.value,
90
93
  source: params.schema.value.source
91
94
  });
92
95
  if (isCursorPagination.value) {
@@ -108,6 +111,7 @@ export function useTableData(params) {
108
111
  createCursorQueryDefinition({
109
112
  context: contextData.value,
110
113
  request: requestContext.value,
114
+ sourceRequest: sourceRequest.value,
111
115
  revision: params.state.queryState.paginationRevision.value,
112
116
  source: params.schema.value.source
113
117
  }),
@@ -351,6 +355,9 @@ export function useTableData(params) {
351
355
  watch(
352
356
  () => query.data.value,
353
357
  (nextQueryData) => {
358
+ if (nextQueryData === void 0 && query.isError.value) {
359
+ return;
360
+ }
354
361
  const normalized = normalizeExternalState(nextQueryData);
355
362
  if (sameExternalState(rawDataState.value, normalized)) {
356
363
  return;
@@ -448,6 +455,7 @@ export function useTableData(params) {
448
455
  refreshData,
449
456
  refreshPageContext,
450
457
  requestContext,
458
+ sourceRequest,
451
459
  searchParams,
452
460
  selectableRows,
453
461
  status,
@@ -558,7 +566,7 @@ function isRemoteFacetQuery(value) {
558
566
  return isFunction(value);
559
567
  }
560
568
  function resolveSourceDefinition(options) {
561
- return options.source.query({ ...options.request, context: options.context });
569
+ return options.source.mode === "remote" ? options.source.query(options.sourceRequest, options.context) : options.source.query({ ...options.request, context: options.context });
562
570
  }
563
571
  function createCursorQueryDefinition(options) {
564
572
  const firstPageDefinition = resolveSourceDefinition(options);
@@ -583,6 +591,15 @@ function createCursorQueryDefinition(options) {
583
591
  mode: "cursor",
584
592
  pageSize: pagination.pageSize
585
593
  }
594
+ },
595
+ sourceRequest: {
596
+ ...options.sourceRequest,
597
+ pagination: {
598
+ count: pagination.count,
599
+ cursor: queryContext.pageParam,
600
+ mode: "cursor",
601
+ pageSize: pagination.pageSize
602
+ }
586
603
  }
587
604
  });
588
605
  if (!definition.queryFn) {
@@ -24,6 +24,7 @@ export declare function useTableFilterOptions(options: UseTableFilterOptionsPara
24
24
  isStaleLoading: ComputedRef<boolean>;
25
25
  refresh: () => Promise<[import("@tanstack/vue-query").QueryObserverResult<TableFilterOptionEntry[] | TableFilterOptionQueryResult, Error>, import("@tanstack/vue-query").QueryObserverResult<TableFacetExecutionResult<string, unknown>, Error>]>;
26
26
  searchExpandedIds: ComputedRef<string[]>;
27
+ showCounts: ComputedRef<boolean>;
27
28
  sourceEntries: ComputedRef<(TableResolvedFilterOptionEntry<import("../types/index.js").TableFilterPrimitiveValue> & {
28
29
  value: string | number | boolean;
29
30
  })[]>;
@@ -184,7 +184,7 @@ export function useTableFilterOptions(options) {
184
184
  () => resolveFilterOptionEntries({
185
185
  definition: options.definition,
186
186
  deriveCounts: false,
187
- facetCounts: shouldResolveCounts.value ? resolvedFacetCounts.value : [],
187
+ facetCounts: resolvedFacetCounts.value,
188
188
  missingCountFallback: shouldResolveCounts.value && usesFacetCounts.value ? 0 : void 0,
189
189
  options: hasRemoteOptionQuery.value ? remoteEntries.value : staticEntries.value,
190
190
  rows: [],
@@ -253,6 +253,7 @@ export function useTableFilterOptions(options) {
253
253
  isStaleLoading,
254
254
  refresh: () => Promise.all([optionQuery.refetch(), perFilterFacetQuery.refetch()]),
255
255
  searchExpandedIds: computed(() => filteredTreeState.value.expandedIds),
256
+ showCounts: computed(() => shouldDeriveCounts.value && usesFacetCounts.value),
256
257
  sourceEntries: selectableSourceEntries,
257
258
  sourceTreeEntries: resolvedSourceTreeEntries
258
259
  };