@rotki/ui-library 2.12.1 → 2.13.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 (287) hide show
  1. package/dist/components/accordions/accordion/RuiAccordion.vue.d.ts +6 -14
  2. package/dist/components/accordions/accordion/RuiAccordion.vue.js +3 -4
  3. package/dist/components/accordions/accordion/RuiAccordion.vue.js.map +1 -1
  4. package/dist/components/accordions/accordions/RuiAccordions.vue.d.ts +10 -9
  5. package/dist/components/accordions/accordions/RuiAccordions.vue.js +27 -26
  6. package/dist/components/accordions/accordions/RuiAccordions.vue.js.map +1 -1
  7. package/dist/components/alerts/RuiAlert.vue.d.ts +7 -17
  8. package/dist/components/alerts/RuiAlert.vue2.js +8 -16
  9. package/dist/components/alerts/RuiAlert.vue2.js.map +1 -1
  10. package/dist/components/buttons/button/RuiButton.vue.d.ts +5 -7
  11. package/dist/components/buttons/button/RuiButton.vue2.js +19 -20
  12. package/dist/components/buttons/button/RuiButton.vue2.js.map +1 -1
  13. package/dist/components/buttons/button-group/RuiButtonGroup.vue.d.ts +6 -5
  14. package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js +42 -41
  15. package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js.map +1 -1
  16. package/dist/components/calendar/RuiCalendar.vue.d.ts +1 -6
  17. package/dist/components/calendar/RuiCalendar.vue.js +7 -8
  18. package/dist/components/calendar/RuiCalendar.vue.js.map +1 -1
  19. package/dist/components/calendar/RuiCalendarGrid.vue.js +1 -1
  20. package/dist/components/calendar/RuiCalendarGrid.vue2.js +20 -18
  21. package/dist/components/calendar/RuiCalendarGrid.vue2.js.map +1 -1
  22. package/dist/components/calendar/RuiCalendarHeader.vue.js +1 -1
  23. package/dist/components/calendar/RuiCalendarHeader.vue2.js +3 -4
  24. package/dist/components/calendar/RuiCalendarHeader.vue2.js.map +1 -1
  25. package/dist/components/calendar/RuiCalendarMenu.vue.js +1 -1
  26. package/dist/components/calendar/RuiCalendarMenu.vue2.js +48 -40
  27. package/dist/components/calendar/RuiCalendarMenu.vue2.js.map +1 -1
  28. package/dist/components/cards/RuiCard.vue.d.ts +9 -24
  29. package/dist/components/cards/RuiCard.vue2.js +7 -7
  30. package/dist/components/cards/RuiCard.vue2.js.map +1 -1
  31. package/dist/components/cards/RuiCardHeader.vue.d.ts +5 -10
  32. package/dist/components/cards/RuiCardHeader.vue2.js +1 -1
  33. package/dist/components/cards/RuiCardHeader.vue2.js.map +1 -1
  34. package/dist/components/chips/RuiChip.vue.d.ts +7 -21
  35. package/dist/components/chips/RuiChip.vue2.js +16 -21
  36. package/dist/components/chips/RuiChip.vue2.js.map +1 -1
  37. package/dist/components/color-picker/RuiColorBoard.vue.d.ts +1 -1
  38. package/dist/components/color-picker/RuiColorBoard.vue2.js +19 -19
  39. package/dist/components/color-picker/RuiColorBoard.vue2.js.map +1 -1
  40. package/dist/components/color-picker/RuiColorDisplay.vue.js +3 -5
  41. package/dist/components/color-picker/RuiColorDisplay.vue.js.map +1 -1
  42. package/dist/components/color-picker/RuiColorHue.vue2.js +17 -14
  43. package/dist/components/color-picker/RuiColorHue.vue2.js.map +1 -1
  44. package/dist/components/color-picker/RuiColorInput.vue.js +9 -7
  45. package/dist/components/color-picker/RuiColorInput.vue.js.map +1 -1
  46. package/dist/components/color-picker/RuiColorPicker.vue.d.ts +7 -9
  47. package/dist/components/color-picker/RuiColorPicker.vue.js +23 -14
  48. package/dist/components/color-picker/RuiColorPicker.vue.js.map +1 -1
  49. package/dist/components/color-picker/utils.js +22 -5
  50. package/dist/components/color-picker/utils.js.map +1 -1
  51. package/dist/components/date-time-picker/RuiDateTimePicker.vue.d.ts +2 -44
  52. package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js +75 -79
  53. package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js.map +1 -1
  54. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js +1 -1
  55. package/dist/components/date-time-picker/dayjs-setup.d.ts +1 -0
  56. package/dist/components/date-time-picker/dayjs-setup.js +8 -0
  57. package/dist/components/date-time-picker/dayjs-setup.js.map +1 -0
  58. package/dist/components/date-time-picker/segment-config.d.ts +14 -0
  59. package/dist/components/date-time-picker/segment-config.js +23 -0
  60. package/dist/components/date-time-picker/segment-config.js.map +1 -0
  61. package/dist/components/date-time-picker/segment-utils.d.ts +5 -0
  62. package/dist/components/date-time-picker/segment-utils.js +36 -0
  63. package/dist/components/date-time-picker/segment-utils.js.map +1 -0
  64. package/dist/components/date-time-picker/use-date-time-selection.d.ts +1 -0
  65. package/dist/components/date-time-picker/use-date-time-selection.js +1 -0
  66. package/dist/components/date-time-picker/use-date-time-selection.js.map +1 -1
  67. package/dist/components/date-time-picker/use-keyboard-handler.d.ts +4 -8
  68. package/dist/components/date-time-picker/use-keyboard-handler.js +9 -54
  69. package/dist/components/date-time-picker/use-keyboard-handler.js.map +1 -1
  70. package/dist/components/date-time-picker/utils.d.ts +1 -0
  71. package/dist/components/date-time-picker/utils.js +1 -0
  72. package/dist/components/date-time-picker/utils.js.map +1 -1
  73. package/dist/components/divider/RuiDivider.vue.d.ts +1 -3
  74. package/dist/components/divider/RuiDivider.vue.js +6 -3
  75. package/dist/components/divider/RuiDivider.vue.js.map +1 -1
  76. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.d.ts +10 -1138
  77. package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js +153 -160
  78. package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js.map +1 -1
  79. package/dist/components/forms/checkbox/RuiCheckbox.vue.d.ts +15 -24
  80. package/dist/components/forms/checkbox/RuiCheckbox.vue2.js +32 -32
  81. package/dist/components/forms/checkbox/RuiCheckbox.vue2.js.map +1 -1
  82. package/dist/components/forms/radio-button/radio/RuiRadio.vue.d.ts +2 -2
  83. package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js +19 -22
  84. package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js.map +1 -1
  85. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.d.ts +4 -2
  86. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js +13 -16
  87. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js.map +1 -1
  88. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.d.ts +7 -13
  89. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js +10 -9
  90. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js.map +1 -1
  91. package/dist/components/forms/select/RuiMenuSelect.vue.d.ts +10 -785
  92. package/dist/components/forms/select/RuiMenuSelect.vue2.js +60 -56
  93. package/dist/components/forms/select/RuiMenuSelect.vue2.js.map +1 -1
  94. package/dist/components/forms/select/RuiSimpleSelect.vue.d.ts +11 -10
  95. package/dist/components/forms/select/RuiSimpleSelect.vue2.js +21 -26
  96. package/dist/components/forms/select/RuiSimpleSelect.vue2.js.map +1 -1
  97. package/dist/components/forms/slider/RuiSlider.vue.d.ts +10 -26
  98. package/dist/components/forms/slider/RuiSlider.vue2.js +45 -48
  99. package/dist/components/forms/slider/RuiSlider.vue2.js.map +1 -1
  100. package/dist/components/forms/switch/RuiSwitch.vue.d.ts +12 -20
  101. package/dist/components/forms/switch/RuiSwitch.vue2.js +22 -21
  102. package/dist/components/forms/switch/RuiSwitch.vue2.js.map +1 -1
  103. package/dist/components/forms/text-area/RuiTextArea.vue.d.ts +5 -30
  104. package/dist/components/forms/text-area/RuiTextArea.vue2.js +47 -83
  105. package/dist/components/forms/text-area/RuiTextArea.vue2.js.map +1 -1
  106. package/dist/components/forms/text-field/RuiTextField.vue.d.ts +10 -30
  107. package/dist/components/forms/text-field/RuiTextField.vue2.js +36 -67
  108. package/dist/components/forms/text-field/RuiTextField.vue2.js.map +1 -1
  109. package/dist/components/helpers/RuiFormTextDetail.vue.d.ts +1 -5
  110. package/dist/components/helpers/RuiFormTextDetail.vue.js +5 -9
  111. package/dist/components/helpers/RuiFormTextDetail.vue.js.map +1 -1
  112. package/dist/components/icons/LazyIcon.vue.d.ts +1 -3
  113. package/dist/components/icons/RuiIcon.vue.d.ts +1 -4
  114. package/dist/components/icons/RuiIcon.vue2.js +11 -14
  115. package/dist/components/icons/RuiIcon.vue2.js.map +1 -1
  116. package/dist/components/index.d.ts +4 -4
  117. package/dist/components/loaders/RuiSkeletonBase.vue.d.ts +1 -3
  118. package/dist/components/loaders/RuiSkeletonBase.vue2.js +2 -2
  119. package/dist/components/loaders/RuiSkeletonBase.vue2.js.map +1 -1
  120. package/dist/components/loaders/RuiSkeletonLoader.vue.d.ts +1 -4
  121. package/dist/components/loaders/RuiSkeletonLoader.vue2.js +2 -2
  122. package/dist/components/loaders/RuiSkeletonLoader.vue2.js.map +1 -1
  123. package/dist/components/logos/RuiLogo.vue.d.ts +1 -7
  124. package/dist/components/logos/RuiLogo.vue.js +13 -13
  125. package/dist/components/logos/RuiLogo.vue.js.map +1 -1
  126. package/dist/components/overlays/badge/RuiBadge.vue.d.ts +5 -20
  127. package/dist/components/overlays/badge/RuiBadge.vue2.js +11 -13
  128. package/dist/components/overlays/badge/RuiBadge.vue2.js.map +1 -1
  129. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.d.ts +10 -5
  130. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js +18 -7
  131. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js.map +1 -1
  132. package/dist/components/overlays/dialog/RuiDialog.vue.d.ts +22 -27
  133. package/dist/components/overlays/dialog/RuiDialog.vue2.js +90 -67
  134. package/dist/components/overlays/dialog/RuiDialog.vue2.js.map +1 -1
  135. package/dist/components/overlays/menu/RuiMenu.vue.d.ts +24 -35
  136. package/dist/components/overlays/menu/RuiMenu.vue2.js +71 -78
  137. package/dist/components/overlays/menu/RuiMenu.vue2.js.map +1 -1
  138. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.d.ts +23 -30
  139. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js +78 -49
  140. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js.map +1 -1
  141. package/dist/components/overlays/notification/RuiNotification.vue.d.ts +12 -12
  142. package/dist/components/overlays/notification/RuiNotification.vue.js +27 -22
  143. package/dist/components/overlays/notification/RuiNotification.vue.js.map +1 -1
  144. package/dist/components/overlays/tooltip/RuiTooltip.vue.d.ts +7 -18
  145. package/dist/components/overlays/tooltip/RuiTooltip.vue2.js +16 -9
  146. package/dist/components/overlays/tooltip/RuiTooltip.vue2.js.map +1 -1
  147. package/dist/components/progress/RuiProgress.vue.d.ts +8 -10
  148. package/dist/components/progress/RuiProgress.vue2.js +18 -24
  149. package/dist/components/progress/RuiProgress.vue2.js.map +1 -1
  150. package/dist/components/steppers/RuiFooterStepper.vue.d.ts +10 -11
  151. package/dist/components/steppers/RuiFooterStepper.vue2.js +33 -26
  152. package/dist/components/steppers/RuiFooterStepper.vue2.js.map +1 -1
  153. package/dist/components/steppers/RuiStepper.vue.d.ts +6 -15
  154. package/dist/components/steppers/RuiStepper.vue2.js +39 -36
  155. package/dist/components/steppers/RuiStepper.vue2.js.map +1 -1
  156. package/dist/components/steppers/RuiStepperCustomIcon.vue.d.ts +1 -3
  157. package/dist/components/steppers/RuiStepperCustomIcon.vue2.js +2 -2
  158. package/dist/components/steppers/RuiStepperCustomIcon.vue2.js.map +1 -1
  159. package/dist/components/steppers/RuiStepperIcon.vue.d.ts +1 -3
  160. package/dist/components/steppers/RuiStepperIcon.vue2.js +2 -2
  161. package/dist/components/steppers/RuiStepperIcon.vue2.js.map +1 -1
  162. package/dist/components/tables/RuiDataTable.vue.d.ts +29 -81
  163. package/dist/components/tables/RuiDataTable.vue2.js +196 -601
  164. package/dist/components/tables/RuiDataTable.vue2.js.map +1 -1
  165. package/dist/components/tables/RuiDataTable.vue3.js +24 -27
  166. package/dist/components/tables/RuiDataTable.vue3.js.map +1 -1
  167. package/dist/components/tables/RuiExpandButton.vue.d.ts +3 -6
  168. package/dist/components/tables/RuiExpandButton.vue2.js +4 -2
  169. package/dist/components/tables/RuiExpandButton.vue2.js.map +1 -1
  170. package/dist/components/tables/RuiTableHead.vue.d.ts +4 -7
  171. package/dist/components/tables/RuiTableHead.vue2.js +20 -20
  172. package/dist/components/tables/RuiTableHead.vue2.js.map +1 -1
  173. package/dist/components/tables/RuiTablePagination.vue.d.ts +10 -10
  174. package/dist/components/tables/RuiTablePagination.vue2.js +27 -19
  175. package/dist/components/tables/RuiTablePagination.vue2.js.map +1 -1
  176. package/dist/components/tabs/tab/RuiTab.vue.d.ts +3 -18
  177. package/dist/components/tabs/tab/RuiTab.vue2.js +84 -52
  178. package/dist/components/tabs/tab/RuiTab.vue2.js.map +1 -1
  179. package/dist/components/tabs/tab-item/RuiTabItem.vue.d.ts +3 -11
  180. package/dist/components/tabs/tab-item/RuiTabItem.vue2.js +3 -2
  181. package/dist/components/tabs/tab-item/RuiTabItem.vue2.js.map +1 -1
  182. package/dist/components/tabs/tab-items/RuiTabItems.vue.d.ts +2 -5
  183. package/dist/components/tabs/tab-items/RuiTabItems.vue2.js +18 -18
  184. package/dist/components/tabs/tab-items/RuiTabItems.vue2.js.map +1 -1
  185. package/dist/components/tabs/tabs/RuiTabs.vue.d.ts +10 -14
  186. package/dist/components/tabs/tabs/RuiTabs.vue2.js +101 -94
  187. package/dist/components/tabs/tabs/RuiTabs.vue2.js.map +1 -1
  188. package/dist/components/time-picker/RuiTimePicker.vue.d.ts +1 -4
  189. package/dist/components/time-picker/RuiTimePicker.vue2.js +88 -38
  190. package/dist/components/time-picker/RuiTimePicker.vue2.js.map +1 -1
  191. package/dist/composables/breakpoint.js +8 -13
  192. package/dist/composables/breakpoint.js.map +1 -1
  193. package/dist/composables/dropdown-menu.d.ts +7 -4
  194. package/dist/composables/dropdown-menu.js +73 -50
  195. package/dist/composables/dropdown-menu.js.map +1 -1
  196. package/dist/composables/forms/auto-complete/focus.d.ts +7 -5
  197. package/dist/composables/forms/auto-complete/focus.js +28 -17
  198. package/dist/composables/forms/auto-complete/focus.js.map +1 -1
  199. package/dist/composables/forms/auto-complete/index.d.ts +0 -9
  200. package/dist/composables/forms/auto-complete/keyboard-navigation.d.ts +8 -3
  201. package/dist/composables/forms/auto-complete/keyboard-navigation.js +11 -5
  202. package/dist/composables/forms/auto-complete/keyboard-navigation.js.map +1 -1
  203. package/dist/composables/forms/auto-complete/search.d.ts +7 -0
  204. package/dist/composables/forms/auto-complete/search.js +10 -8
  205. package/dist/composables/forms/auto-complete/search.js.map +1 -1
  206. package/dist/composables/forms/auto-complete/value.d.ts +4 -0
  207. package/dist/composables/forms/auto-complete/value.js +24 -42
  208. package/dist/composables/forms/auto-complete/value.js.map +1 -1
  209. package/dist/composables/forms/use-label-with-quote.d.ts +2 -0
  210. package/dist/composables/forms/use-label-with-quote.js +14 -0
  211. package/dist/composables/forms/use-label-with-quote.js.map +1 -0
  212. package/dist/composables/forms/use-prepend-append-width.d.ts +6 -0
  213. package/dist/composables/forms/use-prepend-append-width.js +25 -0
  214. package/dist/composables/forms/use-prepend-append-width.js.map +1 -0
  215. package/dist/composables/icons.js +1 -1
  216. package/dist/composables/icons.js.map +1 -1
  217. package/dist/composables/popper.js +63 -49
  218. package/dist/composables/popper.js.map +1 -1
  219. package/dist/composables/sticky-header.d.ts +7 -5
  220. package/dist/composables/sticky-header.js +51 -41
  221. package/dist/composables/sticky-header.js.map +1 -1
  222. package/dist/composables/tables/data-table/columns.d.ts +25 -0
  223. package/dist/composables/tables/data-table/columns.js +54 -0
  224. package/dist/composables/tables/data-table/columns.js.map +1 -0
  225. package/dist/composables/tables/data-table/expansion.d.ts +17 -0
  226. package/dist/composables/tables/data-table/expansion.js +38 -0
  227. package/dist/composables/tables/data-table/expansion.js.map +1 -0
  228. package/dist/composables/tables/data-table/grouping.d.ts +29 -0
  229. package/dist/composables/tables/data-table/grouping.js +136 -0
  230. package/dist/composables/tables/data-table/grouping.js.map +1 -0
  231. package/dist/composables/tables/data-table/pagination.d.ts +33 -0
  232. package/dist/composables/tables/data-table/pagination.js +119 -0
  233. package/dist/composables/tables/data-table/pagination.js.map +1 -0
  234. package/dist/composables/tables/data-table/selection.d.ts +29 -0
  235. package/dist/composables/tables/data-table/selection.js +164 -0
  236. package/dist/composables/tables/data-table/selection.js.map +1 -0
  237. package/dist/composables/tables/data-table/sort.d.ts +32 -0
  238. package/dist/composables/tables/data-table/sort.js +136 -0
  239. package/dist/composables/tables/data-table/sort.js.map +1 -0
  240. package/dist/composables/tables/data-table/types.d.ts +14 -0
  241. package/dist/composables/tables/data-table/types.js +11 -0
  242. package/dist/composables/tables/data-table/types.js.map +1 -0
  243. package/dist/composables/theme.js +5 -21
  244. package/dist/composables/theme.js.map +1 -1
  245. package/dist/composables/timeout-manager.d.ts +4 -2
  246. package/dist/composables/timeout-manager.js +2 -1
  247. package/dist/composables/timeout-manager.js.map +1 -1
  248. package/dist/icons/icons_1.d.ts +15 -15
  249. package/dist/icons/icons_1.js +123 -123
  250. package/dist/icons/icons_1.js.map +1 -1
  251. package/dist/icons/icons_2.d.ts +46 -46
  252. package/dist/icons/icons_2.js +301 -301
  253. package/dist/icons/icons_2.js.map +1 -1
  254. package/dist/icons/icons_3.d.ts +43 -43
  255. package/dist/icons/icons_3.js +252 -252
  256. package/dist/icons/icons_3.js.map +1 -1
  257. package/dist/icons/icons_4.d.ts +72 -2
  258. package/dist/icons/icons_4.js +368 -18
  259. package/dist/icons/icons_4.js.map +1 -1
  260. package/dist/icons/index.d.ts +1 -1
  261. package/dist/icons/index.js +1 -1
  262. package/dist/icons/index.js.map +1 -1
  263. package/dist/index.js +105 -42
  264. package/dist/index.js.map +1 -1
  265. package/dist/style.css +189 -162
  266. package/dist/theme/index.js +15 -1
  267. package/dist/theme/index.js.map +1 -1
  268. package/dist/utils/assert.d.ts +1 -1
  269. package/dist/utils/assert.js.map +1 -1
  270. package/dist/utils/form-text-detail.d.ts +9 -8
  271. package/dist/utils/form-text-detail.js +1 -2
  272. package/dist/utils/form-text-detail.js.map +1 -1
  273. package/dist/utils/helpers.d.ts +4 -32
  274. package/dist/utils/helpers.js +8 -9
  275. package/dist/utils/helpers.js.map +1 -1
  276. package/dist/utils/is-equal.d.ts +1 -1
  277. package/dist/utils/is-equal.js +5 -3
  278. package/dist/utils/is-equal.js.map +1 -1
  279. package/dist/vite-plugin/index.js +4 -4
  280. package/dist/vite-plugin/index.js.map +1 -1
  281. package/dist/vite-plugin/scanner.js +3 -3
  282. package/dist/vite-plugin/scanner.js.map +1 -1
  283. package/dist/web-types.json +390 -371
  284. package/package.json +47 -44
  285. package/dist/utils/generate-id.d.ts +0 -5
  286. package/dist/utils/generate-id.js +0 -21
  287. package/dist/utils/generate-id.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RuiFooterStepper.vue2.js","sources":["../../../src/components/steppers/RuiFooterStepper.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport RuiButton from '@/components/buttons/button/RuiButton.vue';\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport RuiProgress from '@/components/progress/RuiProgress.vue';\n\nexport interface Props {\n pages: number;\n modelValue?: number;\n variant?: 'numeric' | 'bullet' | 'progress' | 'pill';\n arrowButtons?: boolean;\n hideButtons?: boolean;\n}\n\ndefineOptions({\n name: 'RuiFooterStepper',\n});\n\nconst props = withDefaults(defineProps<Props>(), {\n modelValue: 1,\n variant: 'numeric',\n arrowButtons: false,\n hideButtons: false,\n});\n\nconst emit = defineEmits<{\n (event: 'update:modelValue', modelValue: number): void;\n}>();\n\nconst { modelValue, pages } = toRefs(props);\n\nfunction onChange(delta: number) {\n emit('update:modelValue', get(modelValue) + delta);\n}\n\nfunction onPrev() {\n const value = get(modelValue);\n if (value)\n onChange(-1);\n}\n\nfunction onNext() {\n const value = get(modelValue);\n if (value < get(pages))\n onChange(1);\n}\n\nfunction onClick(index: number) {\n onChange(index - get(modelValue));\n}\n</script>\n\n<template>\n <div :class=\"[$style['footer-stepper'], $style[variant ?? '']]\">\n <template v-if=\"variant === 'pill'\">\n <div :class=\"$style.pills\">\n <span\n v-for=\"i in pages\"\n :key=\"i\"\n :class=\"[$style.pill, { [$style.active]: modelValue === i }]\"\n />\n </div>\n </template>\n <template v-else>\n <RuiButton\n v-if=\"!hideButtons\"\n :class=\"{ [$style.arrow__button]: arrowButtons }\"\n :disabled=\"modelValue <= 1\"\n :icon=\"arrowButtons\"\n :variant=\"arrowButtons ? 'outlined' : 'text'\"\n color=\"primary\"\n @click=\"onPrev()\"\n >\n <template\n v-if=\"!arrowButtons\"\n #prepend\n >\n <RuiIcon\n :size=\"18\"\n name=\"lu-chevron-left\"\n />\n </template>\n <span v-if=\"!arrowButtons\">Back</span>\n <RuiIcon\n v-else\n :size=\"24\"\n name=\"lu-arrow-left\"\n />\n </RuiButton>\n <span\n v-if=\"variant === 'numeric'\"\n :class=\"$style.numeric\"\n >\n {{ modelValue }}/{{ pages }}\n </span>\n <div\n v-else-if=\"variant === 'bullet'\"\n :class=\"$style.bullets\"\n >\n <span\n v-for=\"i in pages\"\n :key=\"i\"\n :class=\"[$style.bullet, { [$style.active]: modelValue === i }]\"\n @click=\"onClick(i)\"\n />\n </div>\n <RuiProgress\n v-else-if=\"variant === 'progress'\"\n :class=\"$style.progress\"\n color=\"primary\"\n :value=\"(modelValue / pages) * 100\"\n />\n <RuiButton\n v-if=\"!hideButtons\"\n :class=\"{ [$style.arrow__button]: arrowButtons }\"\n :disabled=\"modelValue >= pages\"\n :icon=\"arrowButtons\"\n :variant=\"arrowButtons ? 'outlined' : 'text'\"\n color=\"primary\"\n @click=\"onNext()\"\n >\n <span v-if=\"!arrowButtons\">Next</span>\n <RuiIcon\n v-else\n :size=\"24\"\n name=\"lu-arrow-right\"\n />\n <template\n v-if=\"!arrowButtons\"\n #append\n >\n <RuiIcon\n :size=\"18\"\n name=\"lu-chevron-right\"\n />\n </template>\n </RuiButton>\n </template>\n </div>\n</template>\n\n<style lang=\"scss\" module>\n.footer-stepper {\n @apply flex items-center justify-between gap-x-4 transition-all duration-150;\n\n .numeric {\n @apply text-rui-text;\n }\n\n .bullets,\n .pills {\n @apply flex;\n\n .bullet,\n .pill {\n @apply rounded-full h-2 bg-black/[0.26] transition-colors;\n\n &.active {\n @apply bg-rui-primary;\n }\n }\n\n .bullet {\n @apply hover:bg-rui-grey-300 cursor-pointer;\n\n &.active {\n @apply hover:bg-rui-primary;\n }\n }\n\n .pill {\n @apply bg-rui-grey-200;\n }\n }\n\n .bullets {\n @apply gap-x-1;\n\n .bullet {\n @apply w-2;\n }\n }\n\n .pills {\n @apply w-full gap-x-3;\n\n .pill {\n @apply w-full;\n }\n }\n\n .progress {\n @apply max-w-[60%];\n }\n\n .arrow__button {\n @apply bg-white disabled:bg-white/60 #{!important};\n }\n}\n\n:global(.dark) {\n .footer-stepper {\n .bullets,\n .pills {\n .bullet,\n .pill {\n @apply bg-rui-grey-300;\n\n &.active {\n @apply bg-rui-primary;\n }\n }\n\n .bullet {\n @apply hover:bg-rui-grey-400;\n\n &.active {\n @apply hover:bg-rui-primary;\n }\n }\n }\n\n .bullets {\n .bullet {\n @apply bg-white/30;\n }\n }\n\n .arrow__button {\n @apply disabled:bg-[rgb(50,50,50)] #{!important};\n }\n }\n}\n</style>\n"],"names":["_createElementBlock","_normalizeClass","$style","_Fragment","_renderList","_unref","_createBlock","_openBlock","_createVNode","_toDisplayString"],"mappings":"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"}
1
+ {"version":3,"file":"RuiFooterStepper.vue2.js","sources":["../../../src/components/steppers/RuiFooterStepper.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport RuiButton from '@/components/buttons/button/RuiButton.vue';\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport RuiProgress from '@/components/progress/RuiProgress.vue';\n\nexport interface Props {\n pages: number;\n variant?: 'numeric' | 'bullet' | 'progress' | 'pill';\n arrowButtons?: boolean;\n hideButtons?: boolean;\n}\n\ndefineOptions({\n name: 'RuiFooterStepper',\n});\n\nconst modelValue = defineModel<number>({ default: 1 });\n\nconst {\n pages,\n variant = 'numeric',\n arrowButtons = false,\n hideButtons = false,\n} = defineProps<Props>();\n\nfunction onChange(delta: number): void {\n set(modelValue, get(modelValue) + delta);\n}\n\nfunction onPrev(): void {\n const value = get(modelValue);\n if (value)\n onChange(-1);\n}\n\nfunction onNext(): void {\n const value = get(modelValue);\n if (value < pages)\n onChange(1);\n}\n\nfunction onClick(index: number): void {\n onChange(index - get(modelValue));\n}\n</script>\n\n<template>\n <div\n role=\"navigation\"\n aria-label=\"Step navigation\"\n :class=\"[$style['footer-stepper'], $style[variant ?? '']]\"\n >\n <template v-if=\"variant === 'pill'\">\n <div :class=\"$style.pills\">\n <span\n v-for=\"i in pages\"\n :key=\"i\"\n :aria-current=\"modelValue === i ? 'step' : undefined\"\n :class=\"[$style.pill, { [$style.active]: modelValue === i }]\"\n />\n </div>\n </template>\n <template v-else>\n <RuiButton\n v-if=\"!hideButtons\"\n aria-label=\"Previous\"\n :class=\"{ [$style.arrow__button]: arrowButtons }\"\n :disabled=\"modelValue <= 1\"\n :icon=\"arrowButtons\"\n :variant=\"arrowButtons ? 'outlined' : 'text'\"\n color=\"primary\"\n @click=\"onPrev()\"\n >\n <template\n v-if=\"!arrowButtons\"\n #prepend\n >\n <RuiIcon\n :size=\"18\"\n name=\"lu-chevron-left\"\n />\n </template>\n <span v-if=\"!arrowButtons\">Back</span>\n <RuiIcon\n v-else\n :size=\"24\"\n name=\"lu-arrow-left\"\n />\n </RuiButton>\n <span\n v-if=\"variant === 'numeric'\"\n :class=\"$style.numeric\"\n >\n {{ modelValue }}/{{ pages }}\n </span>\n <div\n v-else-if=\"variant === 'bullet'\"\n :class=\"$style.bullets\"\n >\n <span\n v-for=\"i in pages\"\n :key=\"i\"\n :aria-current=\"modelValue === i ? 'step' : undefined\"\n :class=\"[$style.bullet, { [$style.active]: modelValue === i }]\"\n @click=\"onClick(i)\"\n />\n </div>\n <RuiProgress\n v-else-if=\"variant === 'progress'\"\n :class=\"$style.progress\"\n color=\"primary\"\n :value=\"(modelValue / pages) * 100\"\n />\n <RuiButton\n v-if=\"!hideButtons\"\n aria-label=\"Next\"\n :class=\"{ [$style.arrow__button]: arrowButtons }\"\n :disabled=\"modelValue >= pages\"\n :icon=\"arrowButtons\"\n :variant=\"arrowButtons ? 'outlined' : 'text'\"\n color=\"primary\"\n @click=\"onNext()\"\n >\n <span v-if=\"!arrowButtons\">Next</span>\n <RuiIcon\n v-else\n :size=\"24\"\n name=\"lu-arrow-right\"\n />\n <template\n v-if=\"!arrowButtons\"\n #append\n >\n <RuiIcon\n :size=\"18\"\n name=\"lu-chevron-right\"\n />\n </template>\n </RuiButton>\n </template>\n </div>\n</template>\n\n<style lang=\"scss\" module>\n.footer-stepper {\n @apply flex items-center justify-between gap-x-4 transition-all duration-150;\n\n .numeric {\n @apply text-rui-text;\n }\n\n .bullets,\n .pills {\n @apply flex;\n\n .bullet,\n .pill {\n @apply rounded-full h-2 bg-black/[0.26] transition-colors;\n\n &.active {\n @apply bg-rui-primary;\n }\n }\n\n .bullet {\n @apply hover:bg-rui-grey-300 cursor-pointer;\n\n &.active {\n @apply hover:bg-rui-primary;\n }\n }\n\n .pill {\n @apply bg-rui-grey-200;\n }\n }\n\n .bullets {\n @apply gap-x-1;\n\n .bullet {\n @apply w-2;\n }\n }\n\n .pills {\n @apply w-full gap-x-3;\n\n .pill {\n @apply w-full;\n }\n }\n\n .progress {\n @apply max-w-[60%];\n }\n\n .arrow__button {\n @apply bg-white disabled:bg-white/60 #{!important};\n }\n}\n\n:global(.dark) {\n .footer-stepper {\n .bullets,\n .pills {\n .bullet,\n .pill {\n @apply bg-rui-grey-300;\n\n &.active {\n @apply bg-rui-primary;\n }\n }\n\n .bullet {\n @apply hover:bg-rui-grey-400;\n\n &.active {\n @apply hover:bg-rui-primary;\n }\n }\n }\n\n .bullets {\n .bullet {\n @apply bg-white/30;\n }\n }\n\n .arrow__button {\n @apply disabled:bg-[rgb(50,50,50)] #{!important};\n }\n }\n}\n</style>\n"],"names":["_useModel","_createElementBlock","_normalizeClass","$style","_Fragment","_renderList","_createBlock","_openBlock","_createVNode","_toDisplayString"],"mappings":"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"}
@@ -9,22 +9,13 @@ export interface Props {
9
9
  orientation?: StepperOrientation;
10
10
  keepActiveVisible?: boolean;
11
11
  }
12
- declare var __VLS_1: {
13
- state: StepperState | undefined;
14
- index: number;
12
+ type __VLS_Slots = {
13
+ icon?: (props: {
14
+ state: StepperState | undefined;
15
+ index: number;
16
+ }) => any;
15
17
  };
16
- type __VLS_Slots = {} & {
17
- icon?: (props: typeof __VLS_1) => any;
18
- };
19
- declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
20
- orientation: StepperOrientation;
21
- step: number;
22
- custom: boolean;
23
- iconTop: boolean;
24
- titleClass: string;
25
- subtitleClass: string;
26
- keepActiveVisible: boolean;
27
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
+ declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
28
19
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
29
20
  declare const _default: typeof __VLS_export;
30
21
  export default _default;
@@ -1,39 +1,36 @@
1
- import { defineComponent, toRefs, computed, ref, watch, nextTick, createElementBlock, openBlock, normalizeClass, unref, Fragment, renderList, createCommentVNode, createElementVNode, renderSlot, mergeProps, createBlock, toDisplayString } from "vue";
1
+ import { defineComponent, useTemplateRef, computed, watch, nextTick, openBlock, createElementBlock, normalizeClass, Fragment, renderList, unref, createCommentVNode, createElementVNode, renderSlot, mergeProps, createBlock, toDisplayString } from "vue";
2
2
  import RuiProgress from "../progress/RuiProgress.vue.js";
3
3
  import RuiStepperCustomIcon from "./RuiStepperCustomIcon.vue.js";
4
4
  import RuiStepperIcon from "./RuiStepperIcon.vue.js";
5
5
  import { StepperOrientation, StepperState } from "../../types/stepper.js";
6
6
  import { get } from "@vueuse/shared";
7
- import { isDefined } from "@vueuse/core";
8
- const _hoisted_1 = { class: "relative flex py-2" };
7
+ const _hoisted_1 = ["aria-current"];
8
+ const _hoisted_2 = { class: "relative flex py-2" };
9
9
  const _sfc_main = /* @__PURE__ */ defineComponent({
10
10
  ...{
11
11
  name: "RuiStepper"
12
12
  },
13
13
  __name: "RuiStepper",
14
14
  props: {
15
- step: { default: void 0 },
15
+ step: {},
16
16
  steps: {},
17
17
  iconTop: { type: Boolean, default: false },
18
18
  custom: { type: Boolean, default: false },
19
19
  titleClass: { default: "" },
20
20
  subtitleClass: { default: "" },
21
- orientation: { default: StepperOrientation.horizontal },
21
+ orientation: { default: () => StepperOrientation.horizontal },
22
22
  keepActiveVisible: { type: Boolean, default: true }
23
23
  },
24
24
  setup(__props) {
25
- const props = __props;
26
- const { custom, steps, step, orientation, keepActiveVisible } = toRefs(props);
25
+ const wrapperRef = useTemplateRef("wrapperRef");
27
26
  const renderedStep = computed(() => {
28
- const currentStep = get(step);
29
- const stepsVal = get(steps);
30
- if (!isDefined(currentStep))
31
- return stepsVal;
32
- return stepsVal.map((text, index) => {
27
+ if (__props.step === void 0)
28
+ return __props.steps;
29
+ return __props.steps.map((text, index) => {
33
30
  let stepStatus = StepperState.inactive;
34
- if (index + 1 === currentStep)
31
+ if (index + 1 === __props.step)
35
32
  stepStatus = StepperState.active;
36
- if (index + 1 < currentStep)
33
+ if (index + 1 < __props.step)
37
34
  stepStatus = StepperState.done;
38
35
  return {
39
36
  ...text,
@@ -41,30 +38,34 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
41
38
  };
42
39
  });
43
40
  });
44
- const wrapperRef = ref();
45
- watch(step, () => {
46
- if (!get(keepActiveVisible) || get(orientation) !== StepperOrientation.horizontal) {
47
- return;
48
- }
49
- nextTick(() => {
50
- const elem = get(wrapperRef);
51
- if (elem) {
52
- const activeStep = elem.querySelector(".active-step");
53
- activeStep?.scrollIntoView?.({
54
- behavior: "smooth",
55
- inline: "center"
56
- });
41
+ watch(
42
+ () => __props.step,
43
+ () => {
44
+ if (!__props.keepActiveVisible || __props.orientation !== StepperOrientation.horizontal) {
45
+ return;
57
46
  }
58
- });
59
- });
47
+ nextTick(() => {
48
+ const elem = get(wrapperRef);
49
+ if (elem) {
50
+ const activeStep = elem.querySelector(".active-step");
51
+ activeStep?.scrollIntoView?.({
52
+ behavior: "smooth",
53
+ inline: "center"
54
+ });
55
+ }
56
+ });
57
+ }
58
+ );
60
59
  return (_ctx, _cache) => {
61
60
  return openBlock(), createElementBlock("div", {
62
61
  ref_key: "wrapperRef",
63
62
  ref: wrapperRef,
63
+ role: "list",
64
+ "aria-label": "Progress steps",
64
65
  class: normalizeClass([[
65
66
  _ctx.$style.stepper,
66
- _ctx.$style[unref(orientation) ?? ""],
67
- { [_ctx.$style["icon-top"]]: __props.iconTop, [_ctx.$style.custom]: unref(custom) }
67
+ _ctx.$style[__props.orientation ?? ""],
68
+ { [_ctx.$style["icon-top"]]: __props.iconTop, [_ctx.$style.custom]: __props.custom }
68
69
  ], "no-scrollbar overflow-auto"])
69
70
  }, [
70
71
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref(renderedStep), ({ title, description, state, loading }, index) => {
@@ -74,6 +75,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
74
75
  class: normalizeClass(_ctx.$style.divider)
75
76
  }, null, 2)) : createCommentVNode("", true),
76
77
  createElementVNode("div", {
78
+ role: "listitem",
79
+ "aria-current": state === unref(StepperState).active ? "step" : void 0,
77
80
  class: normalizeClass([
78
81
  _ctx.$style.step,
79
82
  _ctx.$style[state ?? unref(StepperState).inactive],
@@ -83,8 +86,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
83
86
  ])
84
87
  }, [
85
88
  renderSlot(_ctx.$slots, "icon", mergeProps({ ref_for: true }, { state, index: index + 1 }), () => [
86
- createElementVNode("div", _hoisted_1, [
87
- unref(custom) ? (openBlock(), createBlock(RuiStepperCustomIcon, {
89
+ createElementVNode("div", _hoisted_2, [
90
+ __props.custom ? (openBlock(), createBlock(RuiStepperCustomIcon, {
88
91
  key: 0,
89
92
  index: index + 1,
90
93
  state
@@ -110,14 +113,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
110
113
  }, [
111
114
  title ? (openBlock(), createElementBlock("span", {
112
115
  key: 0,
113
- class: normalizeClass([[_ctx.$style.title, { [__props.titleClass]: unref(custom) }], "text-subtitle-2"])
116
+ class: normalizeClass([[_ctx.$style.title, { [__props.titleClass]: __props.custom }], "text-subtitle-2"])
114
117
  }, toDisplayString(title), 3)) : createCommentVNode("", true),
115
118
  description ? (openBlock(), createElementBlock("span", {
116
119
  key: 1,
117
- class: normalizeClass([[_ctx.$style.subtitle, { [__props.subtitleClass]: unref(custom) }], "text-caption"])
120
+ class: normalizeClass([[_ctx.$style.subtitle, { [__props.subtitleClass]: __props.custom }], "text-caption"])
118
121
  }, toDisplayString(description), 3)) : createCommentVNode("", true)
119
122
  ], 2)) : createCommentVNode("", true)
120
- ], 2)
123
+ ], 10, _hoisted_1)
121
124
  ], 64);
122
125
  }), 128))
123
126
  ], 2);
@@ -1 +1 @@
1
- {"version":3,"file":"RuiStepper.vue2.js","sources":["../../../src/components/steppers/RuiStepper.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport RuiProgress from '@/components/progress/RuiProgress.vue';\nimport RuiStepperCustomIcon from '@/components/steppers/RuiStepperCustomIcon.vue';\nimport RuiStepperIcon from '@/components/steppers/RuiStepperIcon.vue';\nimport {\n StepperOrientation,\n StepperState,\n type StepperStep,\n} from '@/types/stepper';\n\nexport interface Props {\n step?: number;\n steps: StepperStep[];\n iconTop?: boolean;\n custom?: boolean;\n titleClass?: string;\n subtitleClass?: string;\n orientation?: StepperOrientation;\n keepActiveVisible?: boolean;\n}\n\ndefineOptions({\n name: 'RuiStepper',\n});\n\nconst props = withDefaults(defineProps<Props>(), {\n step: undefined,\n iconTop: false,\n custom: false,\n titleClass: '',\n subtitleClass: '',\n orientation: StepperOrientation.horizontal,\n keepActiveVisible: true,\n});\n\nconst { custom, steps, step, orientation, keepActiveVisible } = toRefs(props);\n\n// automatically set step state to stepper.\nconst renderedStep = computed(() => {\n const currentStep = get(step);\n const stepsVal = get(steps);\n\n if (!isDefined(currentStep))\n return stepsVal;\n\n return stepsVal.map((text, index) => {\n let stepStatus: StepperState = StepperState.inactive;\n\n if (index + 1 === currentStep)\n stepStatus = StepperState.active;\n\n if (index + 1 < currentStep)\n stepStatus = StepperState.done;\n\n return {\n ...text,\n state: stepStatus,\n };\n });\n});\n\nconst wrapperRef = ref<HTMLDivElement>();\n\nwatch(step, () => {\n if (\n !get(keepActiveVisible)\n || get(orientation) !== StepperOrientation.horizontal\n ) {\n return;\n }\n\n nextTick(() => {\n const elem = get(wrapperRef);\n if (elem) {\n const activeStep = elem.querySelector('.active-step');\n activeStep?.scrollIntoView?.({\n behavior: 'smooth',\n inline: 'center',\n });\n }\n });\n});\n</script>\n\n<template>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n $style.stepper,\n $style[orientation ?? ''],\n { [$style['icon-top']]: iconTop, [$style.custom]: custom },\n ]\"\n class=\"no-scrollbar overflow-auto\"\n >\n <template\n v-for=\"({ title, description, state, loading }, index) in renderedStep\"\n :key=\"index\"\n >\n <hr\n v-if=\"index > 0\"\n :class=\"$style.divider\"\n />\n <div\n :class=\"[\n $style.step,\n $style[state ?? StepperState.inactive],\n {\n 'active-step': state === StepperState.active,\n },\n ]\"\n >\n <slot\n name=\"icon\"\n v-bind=\"{ state, index: index + 1 }\"\n >\n <div class=\"relative flex py-2\">\n <RuiStepperCustomIcon\n v-if=\"custom\"\n :index=\"index + 1\"\n :state=\"state\"\n />\n <RuiStepperIcon\n v-else\n :index=\"index + 1\"\n :state=\"state\"\n />\n <RuiProgress\n v-if=\"loading\"\n class=\"absolute left-1/2 top-1/2 transform -translate-x-1/2 -translate-y-1/2\"\n size=\"32\"\n variant=\"indeterminate\"\n circular\n thickness=\"2\"\n color=\"primary\"\n />\n </div>\n </slot>\n <div\n v-if=\"title || description\"\n :class=\"$style.label\"\n >\n <span\n v-if=\"title\"\n :class=\"[$style.title, { [titleClass]: custom }]\"\n class=\"text-subtitle-2\"\n >\n {{ title }}\n </span>\n <span\n v-if=\"description\"\n :class=\"[$style.subtitle, { [subtitleClass]: custom }]\"\n class=\"text-caption\"\n >\n {{ description }}\n </span>\n </div>\n </div>\n </template>\n </div>\n</template>\n\n<style lang=\"scss\" module>\n$colors: 'error', 'warning', 'info', 'success';\n.stepper {\n @apply flex;\n\n &.horizontal {\n @apply whitespace-nowrap lg:whitespace-normal;\n }\n\n &.vertical {\n @apply flex-col inline-flex;\n\n .step {\n @apply px-0 py-6;\n }\n\n .divider {\n @apply block min-h-[3rem] min-w-0 max-h-full h-full self-start -my-4 mx-3 border-l border-rui-grey-400;\n }\n\n &.custom {\n .divider {\n @apply mx-5;\n }\n }\n\n &.icon-top {\n .divider {\n @apply self-center mx-auto;\n }\n }\n }\n\n .step {\n @apply flex items-center px-6 relative;\n\n .indicator {\n @apply inline-flex items-center justify-center rounded-full h-6 w-6 min-w-[1.5rem];\n }\n\n .label {\n @apply flex flex-col items-start text-left ml-2;\n }\n\n &.inactive {\n @apply text-rui-text-disabled;\n\n .title {\n @apply text-rui-text-secondary;\n }\n\n .subtitle {\n @apply text-rui-text;\n }\n }\n\n &.active,\n &.done {\n @apply text-rui-text;\n\n .subtitle {\n @apply text-rui-text-secondary;\n }\n }\n\n @each $color in $colors {\n &.#{$color} {\n @apply text-rui-#{$color};\n }\n }\n }\n\n &.icon-top {\n .step {\n @apply flex-col;\n\n .label {\n @apply ml-0 mt-4 items-center text-center;\n }\n }\n }\n\n .divider {\n @apply block max-w-full min-w-[1rem] h-0 max-h-0 self-center -mx-4 my-0 border-t border-rui-grey-400;\n flex: 1 1 0;\n }\n\n &.custom {\n .step {\n .divider {\n @apply border-rui-primary-lighter;\n }\n\n &.inactive {\n @apply text-rui-text;\n }\n }\n }\n}\n</style>\n"],"names":["_createElementBlock","_normalizeClass","$style","_unref","_Fragment","_renderList","_createElementVNode","_renderSlot","_mergeProps","_createBlock"],"mappings":"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"}
1
+ {"version":3,"file":"RuiStepper.vue2.js","sources":["../../../src/components/steppers/RuiStepper.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport RuiProgress from '@/components/progress/RuiProgress.vue';\nimport RuiStepperCustomIcon from '@/components/steppers/RuiStepperCustomIcon.vue';\nimport RuiStepperIcon from '@/components/steppers/RuiStepperIcon.vue';\nimport { StepperOrientation, StepperState, type StepperStep } from '@/types/stepper';\n\nexport interface Props {\n step?: number;\n steps: StepperStep[];\n iconTop?: boolean;\n custom?: boolean;\n titleClass?: string;\n subtitleClass?: string;\n orientation?: StepperOrientation;\n keepActiveVisible?: boolean;\n}\n\ndefineOptions({\n name: 'RuiStepper',\n});\n\nconst {\n step,\n steps,\n iconTop = false,\n custom = false,\n titleClass = '',\n subtitleClass = '',\n orientation = StepperOrientation.horizontal,\n keepActiveVisible = true,\n} = defineProps<Props>();\n\ndefineSlots<{\n icon?: (props: { state: StepperState | undefined; index: number }) => any;\n}>();\n\nconst wrapperRef = useTemplateRef<HTMLDivElement>('wrapperRef');\n\n// automatically set step state to stepper.\nconst renderedStep = computed<StepperStep[]>(() => {\n if (step === undefined)\n return steps;\n\n return steps.map((text, index) => {\n let stepStatus: StepperState = StepperState.inactive;\n\n if (index + 1 === step)\n stepStatus = StepperState.active;\n\n if (index + 1 < step)\n stepStatus = StepperState.done;\n\n return {\n ...text,\n state: stepStatus,\n };\n });\n});\n\nwatch(\n () => step,\n () => {\n if (!keepActiveVisible || orientation !== StepperOrientation.horizontal) {\n return;\n }\n\n nextTick(() => {\n const elem = get(wrapperRef);\n if (elem) {\n const activeStep = elem.querySelector('.active-step');\n activeStep?.scrollIntoView?.({\n behavior: 'smooth',\n inline: 'center',\n });\n }\n });\n },\n);\n</script>\n\n<template>\n <div\n ref=\"wrapperRef\"\n role=\"list\"\n aria-label=\"Progress steps\"\n :class=\"[\n $style.stepper,\n $style[orientation ?? ''],\n { [$style['icon-top']]: iconTop, [$style.custom]: custom },\n ]\"\n class=\"no-scrollbar overflow-auto\"\n >\n <template\n v-for=\"({ title, description, state, loading }, index) in renderedStep\"\n :key=\"index\"\n >\n <hr\n v-if=\"index > 0\"\n :class=\"$style.divider\"\n />\n <div\n role=\"listitem\"\n :aria-current=\"state === StepperState.active ? 'step' : undefined\"\n :class=\"[\n $style.step,\n $style[state ?? StepperState.inactive],\n {\n 'active-step': state === StepperState.active,\n },\n ]\"\n >\n <slot\n name=\"icon\"\n v-bind=\"{ state, index: index + 1 }\"\n >\n <div class=\"relative flex py-2\">\n <RuiStepperCustomIcon\n v-if=\"custom\"\n :index=\"index + 1\"\n :state=\"state\"\n />\n <RuiStepperIcon\n v-else\n :index=\"index + 1\"\n :state=\"state\"\n />\n <RuiProgress\n v-if=\"loading\"\n class=\"absolute left-1/2 top-1/2 transform -translate-x-1/2 -translate-y-1/2\"\n size=\"32\"\n variant=\"indeterminate\"\n circular\n thickness=\"2\"\n color=\"primary\"\n />\n </div>\n </slot>\n <div\n v-if=\"title || description\"\n :class=\"$style.label\"\n >\n <span\n v-if=\"title\"\n :class=\"[$style.title, { [titleClass]: custom }]\"\n class=\"text-subtitle-2\"\n >\n {{ title }}\n </span>\n <span\n v-if=\"description\"\n :class=\"[$style.subtitle, { [subtitleClass]: custom }]\"\n class=\"text-caption\"\n >\n {{ description }}\n </span>\n </div>\n </div>\n </template>\n </div>\n</template>\n\n<style lang=\"scss\" module>\n$colors: 'error', 'warning', 'info', 'success';\n.stepper {\n @apply flex;\n\n &.horizontal {\n @apply whitespace-nowrap lg:whitespace-normal;\n }\n\n &.vertical {\n @apply flex-col inline-flex;\n\n .step {\n @apply px-0 py-6;\n }\n\n .divider {\n @apply block min-h-[3rem] min-w-0 max-h-full h-full self-start -my-4 mx-3 border-l border-rui-grey-400;\n }\n\n &.custom {\n .divider {\n @apply mx-5;\n }\n }\n\n &.icon-top {\n .divider {\n @apply self-center mx-auto;\n }\n }\n }\n\n .step {\n @apply flex items-center px-6 relative;\n\n .indicator {\n @apply inline-flex items-center justify-center rounded-full h-6 w-6 min-w-[1.5rem];\n }\n\n .label {\n @apply flex flex-col items-start text-left ml-2;\n }\n\n &.inactive {\n @apply text-rui-text-disabled;\n\n .title {\n @apply text-rui-text-secondary;\n }\n\n .subtitle {\n @apply text-rui-text;\n }\n }\n\n &.active,\n &.done {\n @apply text-rui-text;\n\n .subtitle {\n @apply text-rui-text-secondary;\n }\n }\n\n @each $color in $colors {\n &.#{$color} {\n @apply text-rui-#{$color};\n }\n }\n }\n\n &.icon-top {\n .step {\n @apply flex-col;\n\n .label {\n @apply ml-0 mt-4 items-center text-center;\n }\n }\n }\n\n .divider {\n @apply block max-w-full min-w-[1rem] h-0 max-h-0 self-center -mx-4 my-0 border-t border-rui-grey-400;\n flex: 1 1 0;\n }\n\n &.custom {\n .step {\n .divider {\n @apply border-rui-primary-lighter;\n }\n\n &.inactive {\n @apply text-rui-text;\n }\n }\n }\n}\n</style>\n"],"names":["_createElementBlock","_normalizeClass","$style","_Fragment","_renderList","_unref","_createElementVNode","_renderSlot","_mergeProps","_createBlock"],"mappings":"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"}
@@ -3,8 +3,6 @@ type __VLS_Props = {
3
3
  state?: StepperState;
4
4
  index: number;
5
5
  };
6
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
7
- state: StepperState;
8
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
7
  declare const _default: typeof __VLS_export;
10
8
  export default _default;
@@ -1,10 +1,10 @@
1
- import { defineComponent, createElementBlock, openBlock, normalizeClass, createBlock, unref, toDisplayString } from "vue";
1
+ import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, toDisplayString, createBlock } from "vue";
2
2
  import RuiIcon from "../icons/RuiIcon.vue.js";
3
3
  import { StepperState } from "../../types/stepper.js";
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "RuiStepperCustomIcon",
6
6
  props: {
7
- state: { default: StepperState.inactive },
7
+ state: { default: () => StepperState.inactive },
8
8
  index: {}
9
9
  },
10
10
  setup(__props) {
@@ -1 +1 @@
1
- {"version":3,"file":"RuiStepperCustomIcon.vue2.js","sources":["../../../src/components/steppers/RuiStepperCustomIcon.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport { StepperState } from '@/types/stepper';\n\nwithDefaults(\n defineProps<{\n state?: StepperState;\n index: number;\n }>(),\n {\n state: StepperState.inactive,\n },\n);\n</script>\n\n<template>\n <span :class=\"[$style.indicator, $style[state]]\">\n <span\n v-if=\"state === StepperState.inactive\"\n :class=\"$style.text\"\n >\n {{ index }}\n </span>\n <RuiIcon\n v-else-if=\"state === StepperState.active\"\n name=\"lu-checkbox-blank-circle-fill\"\n :size=\"20\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.done\"\n :class=\"$style.text\"\n :size=\"20\"\n name=\"lu-check\"\n />\n <span\n v-else\n :class=\"$style.text\"\n >\n {{ index }}\n </span>\n </span>\n</template>\n\n<style lang=\"scss\" module>\n.indicator {\n @apply inline-flex items-center justify-center rounded-full h-10 w-10 shrink-0 border text-white bg-rui-primary border-rui-primary;\n\n &.inactive {\n @apply text-xs bg-white;\n\n .text {\n @apply text-rui-primary;\n }\n }\n}\n\n:global(.dark) {\n .indicator {\n @apply bg-white text-rui-primary;\n\n &.inactive {\n @apply text-white border-white bg-rui-primary;\n\n .text {\n @apply text-white;\n }\n }\n }\n}\n</style>\n"],"names":["_createElementBlock","$style","_unref","_normalizeClass","_createBlock"],"mappings":";;;;;;;;;;;0BAgBEA,mBAwBO,QAAA;AAAA,QAxBA,uBAAQC,KAAAA,OAAO,WAAWA,KAAAA,OAAO,QAAA,KAAK,CAAA,CAAA;AAAA,MAAA;QAEnC,QAAA,UAAUC,MAAA,YAAA,EAAa,yBAD/BF,mBAKO,QAAA;AAAA;UAHJ,OAAKG,eAAEF,KAAAA,OAAO,IAAI;AAAA,QAAA,mBAEhB,QAAA,KAAK,GAAA,CAAA,KAGG,QAAA,UAAUC,MAAA,YAAA,EAAa,uBADpCE,YAIE,SAAA;AAAA;UAFA,MAAK;AAAA,UACJ,MAAM;AAAA,QAAA,MAGI,QAAA,UAAUF,MAAA,YAAA,EAAa,qBADpCE,YAKE,SAAA;AAAA;UAHC,OAAKD,eAAEF,KAAAA,OAAO,IAAI;AAAA,UAClB,MAAM;AAAA,UACP,MAAK;AAAA,QAAA,wCAEPD,mBAKO,QAAA;AAAA;UAHJ,OAAKG,eAAEF,KAAAA,OAAO,IAAI;AAAA,QAAA,mBAEhB,QAAA,KAAK,GAAA,CAAA;AAAA,MAAA;;;;"}
1
+ {"version":3,"file":"RuiStepperCustomIcon.vue2.js","sources":["../../../src/components/steppers/RuiStepperCustomIcon.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport { StepperState } from '@/types/stepper';\n\nconst { state = StepperState.inactive } = defineProps<{\n state?: StepperState;\n index: number;\n}>();\n</script>\n\n<template>\n <span :class=\"[$style.indicator, $style[state]]\">\n <span\n v-if=\"state === StepperState.inactive\"\n :class=\"$style.text\"\n >\n {{ index }}\n </span>\n <RuiIcon\n v-else-if=\"state === StepperState.active\"\n name=\"lu-checkbox-blank-circle-fill\"\n :size=\"20\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.done\"\n :class=\"$style.text\"\n :size=\"20\"\n name=\"lu-check\"\n />\n <span\n v-else\n :class=\"$style.text\"\n >\n {{ index }}\n </span>\n </span>\n</template>\n\n<style lang=\"scss\" module>\n.indicator {\n @apply inline-flex items-center justify-center rounded-full h-10 w-10 shrink-0 border text-white bg-rui-primary border-rui-primary;\n\n &.inactive {\n @apply text-xs bg-white;\n\n .text {\n @apply text-rui-primary;\n }\n }\n}\n\n:global(.dark) {\n .indicator {\n @apply bg-white text-rui-primary;\n\n &.inactive {\n @apply text-white border-white bg-rui-primary;\n\n .text {\n @apply text-white;\n }\n }\n }\n}\n</style>\n"],"names":["_createElementBlock","$style","_unref","_normalizeClass","_createBlock"],"mappings":";;;;;;;;;;;0BAWEA,mBAwBO,QAAA;AAAA,QAxBA,uBAAQC,KAAAA,OAAO,WAAWA,KAAAA,OAAO,QAAA,KAAK,CAAA,CAAA;AAAA,MAAA;QAEnC,QAAA,UAAUC,MAAA,YAAA,EAAa,yBAD/BF,mBAKO,QAAA;AAAA;UAHJ,OAAKG,eAAEF,KAAAA,OAAO,IAAI;AAAA,QAAA,mBAEhB,QAAA,KAAK,GAAA,CAAA,KAGG,QAAA,UAAUC,MAAA,YAAA,EAAa,uBADpCE,YAIE,SAAA;AAAA;UAFA,MAAK;AAAA,UACJ,MAAM;AAAA,QAAA,MAGI,QAAA,UAAUF,MAAA,YAAA,EAAa,qBADpCE,YAKE,SAAA;AAAA;UAHC,OAAKD,eAAEF,KAAAA,OAAO,IAAI;AAAA,UAClB,MAAM;AAAA,UACP,MAAK;AAAA,QAAA,wCAEPD,mBAKO,QAAA;AAAA;UAHJ,OAAKG,eAAEF,KAAAA,OAAO,IAAI;AAAA,QAAA,mBAEhB,QAAA,KAAK,GAAA,CAAA;AAAA,MAAA;;;;"}
@@ -3,8 +3,6 @@ type __VLS_Props = {
3
3
  state?: StepperState;
4
4
  index: number;
5
5
  };
6
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
7
- state: StepperState;
8
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
7
  declare const _default: typeof __VLS_export;
10
8
  export default _default;
@@ -1,10 +1,10 @@
1
- import { defineComponent, createElementBlock, openBlock, normalizeClass, createBlock, createCommentVNode, unref, toDisplayString } from "vue";
1
+ import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, toDisplayString, createBlock, createCommentVNode } from "vue";
2
2
  import RuiIcon from "../icons/RuiIcon.vue.js";
3
3
  import { StepperState } from "../../types/stepper.js";
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "RuiStepperIcon",
6
6
  props: {
7
- state: { default: StepperState.inactive },
7
+ state: { default: () => StepperState.inactive },
8
8
  index: {}
9
9
  },
10
10
  setup(__props) {
@@ -1 +1 @@
1
- {"version":3,"file":"RuiStepperIcon.vue2.js","sources":["../../../src/components/steppers/RuiStepperIcon.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport { StepperState } from '@/types/stepper';\n\nwithDefaults(defineProps<{\n state?: StepperState;\n index: number;\n}>(), {\n state: StepperState.inactive,\n});\n</script>\n\n<template>\n <span :class=\"[$style.indicator, $style[state]]\">\n <span\n v-if=\"state === StepperState.inactive || state === StepperState.active\"\n :class=\"$style.text\"\n >\n {{ index }}\n </span>\n <RuiIcon\n v-else-if=\"state === StepperState.done\"\n :class=\"$style.text\"\n :size=\"20\"\n name=\"lu-check\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.success\"\n name=\"lu-circle-check\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.error\"\n name=\"lu-circle-alert\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.warning\"\n name=\"lu-triangle-alert\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.info\"\n name=\"lu-info\"\n />\n </span>\n</template>\n\n<style lang=\"scss\" module>\n.indicator {\n @apply inline-flex items-center justify-center rounded-full h-6 w-6;\n\n .text {\n @apply text-rui-dark-text;\n }\n\n &.inactive {\n @apply bg-current text-xs;\n }\n\n &.active,\n &.done {\n @apply bg-rui-primary rounded-full text-xs;\n }\n}\n\n:global(.dark) {\n .indicator {\n &.inactive {\n .text {\n @apply text-rui-light-text-secondary;\n }\n }\n\n &.active,\n &.done {\n .text {\n @apply text-rui-light-text;\n }\n }\n }\n}\n</style>\n"],"names":["_createElementBlock","$style","_unref","_normalizeClass","_createBlock"],"mappings":";;;;;;;;;;;0BAaEA,mBA6BO,QAAA;AAAA,QA7BA,uBAAQC,KAAAA,OAAO,WAAWA,KAAAA,OAAO,QAAA,KAAK,CAAA,CAAA;AAAA,MAAA;QAEnC,QAAA,UAAUC,oBAAa,YAAY,QAAA,UAAUA,MAAA,YAAA,EAAa,uBADlEF,mBAKO,QAAA;AAAA;UAHJ,OAAKG,eAAEF,KAAAA,OAAO,IAAI;AAAA,QAAA,mBAEhB,QAAA,KAAK,GAAA,CAAA,KAGG,QAAA,UAAUC,MAAA,YAAA,EAAa,qBADpCE,YAKE,SAAA;AAAA;UAHC,OAAKD,eAAEF,KAAAA,OAAO,IAAI;AAAA,UAClB,MAAM;AAAA,UACP,MAAK;AAAA,QAAA,0BAGM,QAAA,UAAUC,MAAA,YAAA,EAAa,wBADpCE,YAGE,SAAA;AAAA;UADA,MAAK;AAAA,QAAA,MAGM,QAAA,UAAUF,MAAA,YAAA,EAAa,sBADpCE,YAGE,SAAA;AAAA;UADA,MAAK;AAAA,QAAA,MAGM,QAAA,UAAUF,MAAA,YAAA,EAAa,wBADpCE,YAGE,SAAA;AAAA;UADA,MAAK;AAAA,QAAA,MAGM,QAAA,UAAUF,MAAA,YAAA,EAAa,qBADpCE,YAGE,SAAA;AAAA;UADA,MAAK;AAAA,QAAA;;;;;"}
1
+ {"version":3,"file":"RuiStepperIcon.vue2.js","sources":["../../../src/components/steppers/RuiStepperIcon.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport { StepperState } from '@/types/stepper';\n\nconst { state = StepperState.inactive, index } = defineProps<{\n state?: StepperState;\n index: number;\n}>();\n</script>\n\n<template>\n <span :class=\"[$style.indicator, $style[state]]\">\n <span\n v-if=\"state === StepperState.inactive || state === StepperState.active\"\n :class=\"$style.text\"\n >\n {{ index }}\n </span>\n <RuiIcon\n v-else-if=\"state === StepperState.done\"\n :class=\"$style.text\"\n :size=\"20\"\n name=\"lu-check\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.success\"\n name=\"lu-circle-check\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.error\"\n name=\"lu-circle-alert\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.warning\"\n name=\"lu-triangle-alert\"\n />\n <RuiIcon\n v-else-if=\"state === StepperState.info\"\n name=\"lu-info\"\n />\n </span>\n</template>\n\n<style lang=\"scss\" module>\n.indicator {\n @apply inline-flex items-center justify-center rounded-full h-6 w-6;\n\n .text {\n @apply text-rui-dark-text;\n }\n\n &.inactive {\n @apply bg-current text-xs;\n }\n\n &.active,\n &.done {\n @apply bg-rui-primary rounded-full text-xs;\n }\n}\n\n:global(.dark) {\n .indicator {\n &.inactive {\n .text {\n @apply text-rui-light-text-secondary;\n }\n }\n\n &.active,\n &.done {\n .text {\n @apply text-rui-light-text;\n }\n }\n }\n}\n</style>\n"],"names":["_createElementBlock","$style","_unref","_normalizeClass","_createBlock"],"mappings":";;;;;;;;;;;0BAWEA,mBA6BO,QAAA;AAAA,QA7BA,uBAAQC,KAAAA,OAAO,WAAWA,KAAAA,OAAO,QAAA,KAAK,CAAA,CAAA;AAAA,MAAA;QAEnC,QAAA,UAAUC,oBAAa,YAAY,QAAA,UAAUA,MAAA,YAAA,EAAa,uBADlEF,mBAKO,QAAA;AAAA;UAHJ,OAAKG,eAAEF,KAAAA,OAAO,IAAI;AAAA,QAAA,mBAEhB,QAAA,KAAK,GAAA,CAAA,KAGG,QAAA,UAAUC,MAAA,YAAA,EAAa,qBADpCE,YAKE,SAAA;AAAA;UAHC,OAAKD,eAAEF,KAAAA,OAAO,IAAI;AAAA,UAClB,MAAM;AAAA,UACP,MAAK;AAAA,QAAA,0BAGM,QAAA,UAAUC,MAAA,YAAA,EAAa,wBADpCE,YAGE,SAAA;AAAA;UADA,MAAK;AAAA,QAAA,MAGM,QAAA,UAAUF,MAAA,YAAA,EAAa,sBADpCE,YAGE,SAAA;AAAA;UADA,MAAK;AAAA,QAAA,MAGM,QAAA,UAAUF,MAAA,YAAA,EAAa,wBADpCE,YAGE,SAAA;AAAA;UADA,MAAK;AAAA,QAAA,MAGM,QAAA,UAAUF,MAAA,YAAA,EAAa,qBADpCE,YAGE,SAAA;AAAA;UADA,MAAK;AAAA,QAAA;;;;;"}
@@ -1,28 +1,16 @@
1
- import { type GroupData, type GroupKeys, type TableColumn, type TableRowKeyData, type TableSortData } from '../../components/tables/RuiTableHead.vue.js';
1
+ import { type GroupData, type TableColumn, type TableRowKeyData, type TableSortData } from '../../components/tables/RuiTableHead.vue.js';
2
2
  import { type TablePaginationData } from '../../components/tables/RuiTablePagination.vue.js';
3
- export interface TableOptions<T> {
4
- pagination?: TablePaginationData;
5
- sort?: TableSortData<T>;
6
- }
7
- export interface GroupHeader<T> {
8
- __header__: true;
9
- identifier: string;
10
- group: Partial<T>;
11
- }
12
- export type GroupedTableRow<T> = T | GroupHeader<T>;
3
+ import { type GroupHeader } from '../../composables/tables/data-table/types.js';
4
+ export type { GroupedTableRow, GroupHeader, TableOptions } from '../../composables/tables/data-table/types.js';
13
5
  export interface Props<T, K extends keyof T> {
14
6
  /**
15
7
  * list of items for each row
16
8
  */
17
- rows: T[];
9
+ rows: readonly T[];
18
10
  /**
19
11
  * the attribute used to identify each row uniquely for selection, usually `id`
20
12
  */
21
13
  rowAttr: K;
22
- /**
23
- * model for selected rows, add a v-model to support row selection
24
- */
25
- modelValue?: T[K][];
26
14
  /**
27
15
  * model for internal searching
28
16
  */
@@ -32,38 +20,6 @@ export interface Props<T, K extends keyof T> {
32
20
  * will be used if the `pagination` model isn't specified
33
21
  */
34
22
  itemsPerPage?: number;
35
- /**
36
- * model for paginating data
37
- * @example v-model:pagination="{ total: 10, limit: 5, page: 1 }"
38
- */
39
- pagination?: TablePaginationData;
40
- /**
41
- * modifiers for specifying externally paginated tables
42
- * use this when api controls pagination
43
- * @example v-model:pagination.external="{ total: 10, limit: 5, page: 1 }"
44
- */
45
- paginationModifiers?: {
46
- external: boolean;
47
- };
48
- /**
49
- * model for sort column/columns data
50
- * single column sort
51
- * @example v-model:sort="{ column: 'name', direction: 'asc' }"
52
- * multi columns sort
53
- * @example v-model:sort="[{ column: 'name', direction: 'asc' }]"
54
- */
55
- sort?: TableSortData<T>;
56
- /**
57
- * modifiers for specifying externally sorted tables
58
- * use this when api controls sorting
59
- * single column sort
60
- * @example v-model:sort.external="{ column: 'name', direction: 'asc' }"
61
- * multi columns sort
62
- * @example v-model:sort.external="[{ column: 'name', direction: 'asc' }]"
63
- */
64
- sortModifiers?: {
65
- external: boolean;
66
- };
67
23
  /**
68
24
  * list of column definitions
69
25
  */
@@ -108,10 +64,6 @@ export interface Props<T, K extends keyof T> {
108
64
  */
109
65
  hideDefaultFooter?: boolean;
110
66
  rounded?: 'sm' | 'md' | 'lg';
111
- /**
112
- * model for expanded rows
113
- */
114
- expanded?: T[];
115
67
  /**
116
68
  * make expansion work like accordion
117
69
  */
@@ -126,31 +78,33 @@ export interface Props<T, K extends keyof T> {
126
78
  * When true, changing the items per page setting in one table will affect other tables.
127
79
  */
128
80
  globalItemsPerPage?: boolean;
129
- /**
130
- * model for grouping column/columns data
131
- * single column grouping
132
- * @example v-model:group="'name'"
133
- * multi columns grouping
134
- * @example v-model:group="['name', 'country']"
135
- */
136
- group?: TableRowKeyData<T>;
137
81
  groupExpandButtonPosition?: 'start' | 'end';
138
- collapsed?: T[];
139
- disabledRows?: T[];
82
+ disabledRows?: readonly T[];
140
83
  multiPageSelect?: boolean;
141
- scroller?: HTMLElement | null;
142
84
  itemClass?: ((item: T) => string) | string;
143
85
  }
144
86
  declare const __VLS_export: <T extends object, IdType extends keyof T = keyof T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
145
- props: import("vue").PublicProps & __VLS_PrettifyLocal<Props<T, IdType> & {
146
- "onUpdate:model-value"?: ((value?: T[IdType][] | undefined) => any) | undefined;
147
- "onUpdate:expanded"?: ((value: T[]) => any) | undefined;
148
- "onUpdate:pagination"?: ((value: TablePaginationData) => any) | undefined;
149
- "onUpdate:sort"?: ((value?: TableSortData<T>) => any) | undefined;
150
- "onUpdate:options"?: ((value: TableOptions<T>) => any) | undefined;
151
- "onUpdate:group"?: ((value?: GroupKeys<T>) => any) | undefined;
152
- "onUpdate:collapsed"?: ((value?: T[] | undefined) => any) | undefined;
87
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<(Props<T, IdType> & {
88
+ modelValue?: T[IdType][];
89
+ expanded?: T[];
90
+ pagination?: TablePaginationData;
91
+ paginationModifiers?: Partial<Record<"external", true>>;
92
+ sort?: TableSortData<T>;
93
+ sortModifiers?: Partial<Record<"external", true>>;
94
+ group?: TableRowKeyData<T>;
95
+ collapsed?: T[];
96
+ }) & {
97
+ "onUpdate:modelValue"?: ((value: T[IdType][] | undefined) => any) | undefined;
98
+ "onUpdate:options"?: ((value: {
99
+ pagination?: TablePaginationData;
100
+ sort?: TableSortData<T>;
101
+ }) => any) | undefined;
153
102
  "onCopy:group"?: ((value: GroupData<T>) => any) | undefined;
103
+ "onUpdate:expanded"?: ((value: T[] | undefined) => any) | undefined;
104
+ "onUpdate:pagination"?: ((value: TablePaginationData | undefined) => any) | undefined;
105
+ "onUpdate:sort"?: ((value: TableSortData<T>) => any) | undefined;
106
+ "onUpdate:group"?: ((value: TableRowKeyData<T>) => any) | undefined;
107
+ "onUpdate:collapsed"?: ((value: T[] | undefined) => any) | undefined;
154
108
  }> & (typeof globalThis extends {
155
109
  __VLS_PROPS_FALLBACK: infer P;
156
110
  } ? P : {});
@@ -187,16 +141,10 @@ declare const __VLS_export: <T extends object, IdType extends keyof T = keyof T>
187
141
  'empty-description': () => any;
188
142
  tfoot: () => any;
189
143
  }>;
190
- emit: {
191
- (e: "update:model-value", value?: T[IdType][]): void;
192
- (e: "update:expanded", value: T[]): void;
193
- (e: "update:pagination", value: TablePaginationData): void;
194
- (e: "update:sort", value?: TableSortData<T>): void;
195
- (e: "update:options", value: TableOptions<T>): void;
196
- (e: "update:group", value?: GroupKeys<T>): void;
197
- (e: "update:collapsed", value?: T[]): void;
198
- (e: "copy:group", value: GroupData<T>): void;
199
- };
144
+ emit: (((evt: "update:options", value: {
145
+ pagination?: TablePaginationData;
146
+ sort?: TableSortData<T>;
147
+ }) => void) & ((evt: "copy:group", value: GroupData<T>) => void)) & (((event: "update:modelValue", value: T[IdType][] | undefined) => void) & ((event: "update:expanded", value: T[] | undefined) => void) & ((event: "update:pagination", value: TablePaginationData | undefined) => void) & ((event: "update:sort", value: TableSortData<T>) => void) & ((event: "update:group", value: TableRowKeyData<T>) => void) & ((event: "update:collapsed", value: T[] | undefined) => void));
200
148
  }>) => import("vue").VNode & {
201
149
  __ctx?: Awaited<typeof __VLS_setup>;
202
150
  };