@rotki/ui-library 2.14.1 → 2.16.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 (804) hide show
  1. package/dist/components/accordions/accordion/RuiAccordion.js +7 -0
  2. package/dist/components/accordions/accordion/RuiAccordion.js.map +1 -0
  3. package/dist/components/accordions/accordion/RuiAccordion.vue.d.ts +9 -0
  4. package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js +88 -0
  5. package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js.map +1 -0
  6. package/dist/components/accordions/accordions/RuiAccordions.js +7 -0
  7. package/dist/components/accordions/accordions/RuiAccordions.js.map +1 -0
  8. package/dist/components/accordions/accordions/RuiAccordions.vue_vue_type_script_setup_true_lang.js +67 -0
  9. package/dist/components/accordions/accordions/RuiAccordions.vue_vue_type_script_setup_true_lang.js.map +1 -0
  10. package/dist/components/alerts/RuiAlert.js +7 -0
  11. package/dist/components/alerts/RuiAlert.js.map +1 -0
  12. package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js +330 -0
  13. package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js.map +1 -0
  14. package/dist/components/buttons/button/RuiButton.js +7 -0
  15. package/dist/components/buttons/button/RuiButton.js.map +1 -0
  16. package/dist/components/buttons/button/RuiButton.vue.d.ts +3 -2
  17. package/dist/components/buttons/button/RuiButton.vue_vue_type_script_setup_true_lang.js +104 -0
  18. package/dist/components/buttons/button/RuiButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
  19. package/dist/components/buttons/button/button-props.d.ts +16 -0
  20. package/dist/components/buttons/button/button-props.js +20 -0
  21. package/dist/components/buttons/button/button-props.js.map +1 -0
  22. package/dist/components/buttons/button/button-styles.d.ts +229 -0
  23. package/dist/components/buttons/button/button-styles.js +342 -0
  24. package/dist/components/buttons/button/button-styles.js.map +1 -0
  25. package/dist/components/buttons/button-group/RuiButtonGroup.js +7 -0
  26. package/dist/components/buttons/button-group/RuiButtonGroup.js.map +1 -0
  27. package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js +246 -0
  28. package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
  29. package/dist/components/calendar/RuiCalendar.js +7 -0
  30. package/dist/components/calendar/RuiCalendar.js.map +1 -0
  31. package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js +151 -0
  32. package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js.map +1 -0
  33. package/dist/components/calendar/RuiCalendarGrid.js +7 -0
  34. package/dist/components/calendar/RuiCalendarGrid.js.map +1 -0
  35. package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js +155 -0
  36. package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js.map +1 -0
  37. package/dist/components/calendar/RuiCalendarHeader.js +7 -0
  38. package/dist/components/calendar/RuiCalendarHeader.js.map +1 -0
  39. package/dist/components/calendar/RuiCalendarHeader.vue_vue_type_script_setup_true_lang.js +113 -0
  40. package/dist/components/calendar/RuiCalendarHeader.vue_vue_type_script_setup_true_lang.js.map +1 -0
  41. package/dist/components/calendar/RuiCalendarMenu.js +7 -0
  42. package/dist/components/calendar/RuiCalendarMenu.js.map +1 -0
  43. package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js +246 -0
  44. package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
  45. package/dist/components/calendar/state.js +20 -21
  46. package/dist/components/calendar/state.js.map +1 -1
  47. package/dist/components/cards/RuiCard.js +7 -0
  48. package/dist/components/cards/RuiCard.js.map +1 -0
  49. package/dist/components/cards/RuiCard.vue.d.ts +9 -0
  50. package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js +130 -0
  51. package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js.map +1 -0
  52. package/dist/components/cards/RuiCardHeader.js +7 -0
  53. package/dist/components/cards/RuiCardHeader.js.map +1 -0
  54. package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js +67 -0
  55. package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js.map +1 -0
  56. package/dist/components/chips/RuiChip.js +7 -0
  57. package/dist/components/chips/RuiChip.js.map +1 -0
  58. package/dist/components/chips/RuiChip.vue.d.ts +10 -2
  59. package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js +308 -0
  60. package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js.map +1 -0
  61. package/dist/components/chips/chip-props.d.ts +11 -0
  62. package/dist/components/chips/chip-props.js +17 -0
  63. package/dist/components/chips/chip-props.js.map +1 -0
  64. package/dist/components/color-picker/RuiColorBoard.js +7 -0
  65. package/dist/components/color-picker/RuiColorBoard.js.map +1 -0
  66. package/dist/components/color-picker/RuiColorBoard.vue.d.ts +1 -1
  67. package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js +100 -0
  68. package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js.map +1 -0
  69. package/dist/components/color-picker/RuiColorDisplay.js +7 -0
  70. package/dist/components/color-picker/RuiColorDisplay.js.map +1 -0
  71. package/dist/components/color-picker/RuiColorDisplay.vue_vue_type_script_setup_true_lang.js +37 -0
  72. package/dist/components/color-picker/RuiColorDisplay.vue_vue_type_script_setup_true_lang.js.map +1 -0
  73. package/dist/components/color-picker/RuiColorHue.js +7 -0
  74. package/dist/components/color-picker/RuiColorHue.js.map +1 -0
  75. package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js +84 -0
  76. package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js.map +1 -0
  77. package/dist/components/color-picker/RuiColorInput.js +7 -0
  78. package/dist/components/color-picker/RuiColorInput.js.map +1 -0
  79. package/dist/components/color-picker/RuiColorInput.vue_vue_type_script_setup_true_lang.js +132 -0
  80. package/dist/components/color-picker/RuiColorInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
  81. package/dist/components/color-picker/RuiColorPicker.js +7 -0
  82. package/dist/components/color-picker/RuiColorPicker.js.map +1 -0
  83. package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js +57 -0
  84. package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  85. package/dist/components/color-picker/utils.d.ts +11 -8
  86. package/dist/components/color-picker/utils.js +179 -194
  87. package/dist/components/color-picker/utils.js.map +1 -1
  88. package/dist/components/date-time-picker/RuiDateTimePicker.js +7 -0
  89. package/dist/components/date-time-picker/RuiDateTimePicker.js.map +1 -0
  90. package/dist/components/date-time-picker/RuiDateTimePicker.vue.d.ts +2 -1
  91. package/dist/components/date-time-picker/RuiDateTimePicker.vue_vue_type_script_setup_true_lang.js +369 -0
  92. package/dist/components/date-time-picker/RuiDateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  93. package/dist/components/date-time-picker/RuiDateTimePickerMenu.js +7 -0
  94. package/dist/components/date-time-picker/RuiDateTimePickerMenu.js.map +1 -0
  95. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.d.ts +1 -1
  96. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js +134 -0
  97. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
  98. package/dist/components/date-time-picker/date-time-picker-styles.d.ts +326 -0
  99. package/dist/components/date-time-picker/date-time-picker-styles.js +19 -0
  100. package/dist/components/date-time-picker/date-time-picker-styles.js.map +1 -0
  101. package/dist/components/date-time-picker/dayjs-setup.js +4 -1
  102. package/dist/components/date-time-picker/dayjs-setup.js.map +1 -1
  103. package/dist/components/date-time-picker/segment-config.js +42 -21
  104. package/dist/components/date-time-picker/segment-config.js.map +1 -1
  105. package/dist/components/date-time-picker/segment-utils.js +24 -31
  106. package/dist/components/date-time-picker/segment-utils.js.map +1 -1
  107. package/dist/components/date-time-picker/timezones.js +601 -600
  108. package/dist/components/date-time-picker/timezones.js.map +1 -1
  109. package/dist/components/date-time-picker/types.js +14 -14
  110. package/dist/components/date-time-picker/types.js.map +1 -1
  111. package/dist/components/date-time-picker/use-date-time-selection.js +222 -282
  112. package/dist/components/date-time-picker/use-date-time-selection.js.map +1 -1
  113. package/dist/components/date-time-picker/use-input-handler.js +31 -28
  114. package/dist/components/date-time-picker/use-input-handler.js.map +1 -1
  115. package/dist/components/date-time-picker/use-keyboard-handler.js +201 -268
  116. package/dist/components/date-time-picker/use-keyboard-handler.js.map +1 -1
  117. package/dist/components/date-time-picker/utils.js +10 -11
  118. package/dist/components/date-time-picker/utils.js.map +1 -1
  119. package/dist/components/divider/RuiDivider.js +7 -0
  120. package/dist/components/divider/RuiDivider.js.map +1 -0
  121. package/dist/components/divider/RuiDivider.vue_vue_type_script_setup_true_lang.js +25 -0
  122. package/dist/components/divider/RuiDivider.vue_vue_type_script_setup_true_lang.js.map +1 -0
  123. package/dist/components/forms/auto-complete/RuiAutoComplete.js +7 -0
  124. package/dist/components/forms/auto-complete/RuiAutoComplete.js.map +1 -0
  125. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.d.ts +12 -2
  126. package/dist/components/forms/auto-complete/RuiAutoComplete.vue_vue_type_script_setup_true_lang.js +566 -0
  127. package/dist/components/forms/auto-complete/RuiAutoComplete.vue_vue_type_script_setup_true_lang.js.map +1 -0
  128. package/dist/components/forms/auto-complete/auto-complete-styles.d.ts +324 -0
  129. package/dist/components/forms/auto-complete/auto-complete-styles.js +15 -0
  130. package/dist/components/forms/auto-complete/auto-complete-styles.js.map +1 -0
  131. package/dist/components/forms/check-control-styles.d.ts +135 -0
  132. package/dist/components/forms/check-control-styles.js +126 -0
  133. package/dist/components/forms/check-control-styles.js.map +1 -0
  134. package/dist/components/forms/checkbox/RuiCheckbox.js +7 -0
  135. package/dist/components/forms/checkbox/RuiCheckbox.js.map +1 -0
  136. package/dist/components/forms/checkbox/RuiCheckbox.vue_vue_type_script_setup_true_lang.js +133 -0
  137. package/dist/components/forms/checkbox/RuiCheckbox.vue_vue_type_script_setup_true_lang.js.map +1 -0
  138. package/dist/components/forms/radio-button/radio/RuiRadio.js +7 -0
  139. package/dist/components/forms/radio-button/radio/RuiRadio.js.map +1 -0
  140. package/dist/components/forms/radio-button/radio/RuiRadio.vue_vue_type_script_setup_true_lang.js +115 -0
  141. package/dist/components/forms/radio-button/radio/RuiRadio.vue_vue_type_script_setup_true_lang.js.map +1 -0
  142. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.js +7 -0
  143. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.js.map +1 -0
  144. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue_vue_type_script_setup_true_lang.js +96 -0
  145. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
  146. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.js +7 -0
  147. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.js.map +1 -0
  148. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.d.ts +2 -15
  149. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue_vue_type_script_setup_true_lang.js +117 -0
  150. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue_vue_type_script_setup_true_lang.js.map +1 -0
  151. package/dist/components/forms/select/RuiMenuSelect.js +7 -0
  152. package/dist/components/forms/select/RuiMenuSelect.js.map +1 -0
  153. package/dist/components/forms/select/RuiMenuSelect.vue.d.ts +16 -4
  154. package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js +313 -0
  155. package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  156. package/dist/components/forms/select/RuiSimpleSelect.js +7 -0
  157. package/dist/components/forms/select/RuiSimpleSelect.js.map +1 -0
  158. package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js +75 -0
  159. package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  160. package/dist/components/forms/select/menu-select-styles.d.ts +319 -0
  161. package/dist/components/forms/select/menu-select-styles.js +11 -0
  162. package/dist/components/forms/select/menu-select-styles.js.map +1 -0
  163. package/dist/components/forms/slider/RuiSlider.js +7 -0
  164. package/dist/components/forms/slider/RuiSlider.js.map +1 -0
  165. package/dist/components/forms/slider/RuiSlider.vue.d.ts +9 -0
  166. package/dist/components/forms/slider/RuiSlider.vue_vue_type_script_setup_true_lang.js +222 -0
  167. package/dist/components/forms/slider/RuiSlider.vue_vue_type_script_setup_true_lang.js.map +1 -0
  168. package/dist/components/forms/slider/slider-styles.d.ts +208 -0
  169. package/dist/components/forms/slider/slider-styles.js +235 -0
  170. package/dist/components/forms/slider/slider-styles.js.map +1 -0
  171. package/dist/components/forms/switch/RuiSwitch.js +7 -0
  172. package/dist/components/forms/switch/RuiSwitch.js.map +1 -0
  173. package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js +226 -0
  174. package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -0
  175. package/dist/components/forms/text-area/RuiTextArea.js +7 -0
  176. package/dist/components/forms/text-area/RuiTextArea.js.map +1 -0
  177. package/dist/components/forms/text-area/RuiTextArea.vue.d.ts +8 -4
  178. package/dist/components/forms/text-area/RuiTextArea.vue_vue_type_script_setup_true_lang.js +248 -0
  179. package/dist/components/forms/text-area/RuiTextArea.vue_vue_type_script_setup_true_lang.js.map +1 -0
  180. package/dist/components/forms/text-area/text-area-styles.d.ts +313 -0
  181. package/dist/components/forms/text-area/text-area-styles.js +239 -0
  182. package/dist/components/forms/text-area/text-area-styles.js.map +1 -0
  183. package/dist/components/forms/text-field/RuiTextField.js +7 -0
  184. package/dist/components/forms/text-field/RuiTextField.js.map +1 -0
  185. package/dist/components/forms/text-field/RuiTextField.vue.d.ts +4 -3
  186. package/dist/components/forms/text-field/RuiTextField.vue_vue_type_script_setup_true_lang.js +220 -0
  187. package/dist/components/forms/text-field/RuiTextField.vue_vue_type_script_setup_true_lang.js.map +1 -0
  188. package/dist/components/forms/text-field/text-field-styles.d.ts +299 -0
  189. package/dist/components/forms/text-field/text-field-styles.js +251 -0
  190. package/dist/components/forms/text-field/text-field-styles.js.map +1 -0
  191. package/dist/components/forms/text-input-styles.d.ts +422 -0
  192. package/dist/components/forms/text-input-styles.js +250 -0
  193. package/dist/components/forms/text-input-styles.js.map +1 -0
  194. package/dist/components/helpers/RuiFormTextDetail.js +7 -0
  195. package/dist/components/helpers/RuiFormTextDetail.js.map +1 -0
  196. package/dist/components/helpers/RuiFormTextDetail.vue_vue_type_script_setup_true_lang.js +46 -0
  197. package/dist/components/helpers/RuiFormTextDetail.vue_vue_type_script_setup_true_lang.js.map +1 -0
  198. package/dist/components/icons/RuiIcon.js +7 -0
  199. package/dist/components/icons/RuiIcon.js.map +1 -0
  200. package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js +58 -0
  201. package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
  202. package/dist/components/index.d.ts +46 -46
  203. package/dist/components/index.js +45 -92
  204. package/dist/components/loaders/RuiSkeletonBase.js +7 -0
  205. package/dist/components/loaders/RuiSkeletonBase.js.map +1 -0
  206. package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js +31 -0
  207. package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js.map +1 -0
  208. package/dist/components/loaders/RuiSkeletonLoader.js +7 -0
  209. package/dist/components/loaders/RuiSkeletonLoader.js.map +1 -0
  210. package/dist/components/loaders/RuiSkeletonLoader.vue.d.ts +3 -2
  211. package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js +62 -0
  212. package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js.map +1 -0
  213. package/dist/components/loaders/skeleton-type.d.ts +12 -0
  214. package/dist/components/loaders/skeleton-type.js +16 -0
  215. package/dist/components/loaders/skeleton-type.js.map +1 -0
  216. package/dist/components/logos/RuiLogo.js +7 -0
  217. package/dist/components/logos/RuiLogo.js.map +1 -0
  218. package/dist/components/logos/RuiLogo.vue_vue_type_script_setup_true_lang.js +130 -0
  219. package/dist/components/logos/RuiLogo.vue_vue_type_script_setup_true_lang.js.map +1 -0
  220. package/dist/components/logos/logo.js +6 -0
  221. package/dist/components/logos/logo.js.map +1 -0
  222. package/dist/components/logos/use-logo-sources.d.ts +21 -2
  223. package/dist/components/logos/use-logo-sources.js +79 -30
  224. package/dist/components/logos/use-logo-sources.js.map +1 -1
  225. package/dist/components/overlays/badge/RuiBadge.js +7 -0
  226. package/dist/components/overlays/badge/RuiBadge.js.map +1 -0
  227. package/dist/components/overlays/badge/RuiBadge.vue.d.ts +4 -3
  228. package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js +189 -0
  229. package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js.map +1 -0
  230. package/dist/components/overlays/badge/badge-props.d.ts +19 -0
  231. package/dist/components/overlays/badge/badge-props.js +21 -0
  232. package/dist/components/overlays/badge/badge-props.js.map +1 -0
  233. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.js +7 -0
  234. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.js.map +1 -0
  235. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue_vue_type_script_setup_true_lang.js +51 -0
  236. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue_vue_type_script_setup_true_lang.js.map +1 -0
  237. package/dist/components/overlays/dialog/RuiDialog.js +7 -0
  238. package/dist/components/overlays/dialog/RuiDialog.js.map +1 -0
  239. package/dist/components/overlays/dialog/RuiDialog.vue.d.ts +7 -0
  240. package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js +163 -0
  241. package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js.map +1 -0
  242. package/dist/components/overlays/menu/RuiMenu.js +7 -0
  243. package/dist/components/overlays/menu/RuiMenu.js.map +1 -0
  244. package/dist/components/overlays/menu/RuiMenu.vue.d.ts +12 -0
  245. package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js +236 -0
  246. package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
  247. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.js +7 -0
  248. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.js.map +1 -0
  249. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.d.ts +7 -0
  250. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js +180 -0
  251. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js.map +1 -0
  252. package/dist/components/overlays/notification/RuiNotification.js +7 -0
  253. package/dist/components/overlays/notification/RuiNotification.js.map +1 -0
  254. package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js +70 -0
  255. package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js.map +1 -0
  256. package/dist/components/overlays/tooltip/RuiTooltip.js +7 -0
  257. package/dist/components/overlays/tooltip/RuiTooltip.js.map +1 -0
  258. package/dist/components/overlays/tooltip/RuiTooltip.vue.d.ts +10 -0
  259. package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js +107 -0
  260. package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js.map +1 -0
  261. package/dist/components/overlays/tooltip/tooltip-styles.d.ts +91 -0
  262. package/dist/components/overlays/tooltip/tooltip-styles.js +40 -0
  263. package/dist/components/overlays/tooltip/tooltip-styles.js.map +1 -0
  264. package/dist/components/progress/RuiProgress.js +7 -0
  265. package/dist/components/progress/RuiProgress.js.map +1 -0
  266. package/dist/components/progress/RuiProgress.vue.d.ts +2 -1
  267. package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js +254 -0
  268. package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js.map +1 -0
  269. package/dist/components/progress/progress-props.d.ts +6 -0
  270. package/dist/components/progress/progress-props.js +10 -0
  271. package/dist/components/progress/progress-props.js.map +1 -0
  272. package/dist/components/steppers/RuiFooterStepper.js +7 -0
  273. package/dist/components/steppers/RuiFooterStepper.js.map +1 -0
  274. package/dist/components/steppers/RuiFooterStepper.vue.d.ts +2 -1
  275. package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js +164 -0
  276. package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js.map +1 -0
  277. package/dist/components/steppers/RuiStepper.js +7 -0
  278. package/dist/components/steppers/RuiStepper.js.map +1 -0
  279. package/dist/components/steppers/RuiStepper.vue.d.ts +9 -0
  280. package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js +232 -0
  281. package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js.map +1 -0
  282. package/dist/components/steppers/RuiStepperCustomIcon.js +7 -0
  283. package/dist/components/steppers/RuiStepperCustomIcon.js.map +1 -0
  284. package/dist/components/steppers/RuiStepperCustomIcon.vue_vue_type_script_setup_true_lang.js +43 -0
  285. package/dist/components/steppers/RuiStepperCustomIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
  286. package/dist/components/steppers/RuiStepperIcon.js +7 -0
  287. package/dist/components/steppers/RuiStepperIcon.js.map +1 -0
  288. package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js +72 -0
  289. package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
  290. package/dist/components/steppers/footer-stepper-variant.d.ts +7 -0
  291. package/dist/components/steppers/footer-stepper-variant.js +11 -0
  292. package/dist/components/steppers/footer-stepper-variant.js.map +1 -0
  293. package/dist/components/tables/RuiDataTable.js +7 -0
  294. package/dist/components/tables/RuiDataTable.js.map +1 -0
  295. package/dist/components/tables/RuiDataTable.vue.d.ts +7 -2
  296. package/dist/components/tables/RuiDataTable.vue_vue_type_script_setup_true_lang.js +516 -0
  297. package/dist/components/tables/RuiDataTable.vue_vue_type_script_setup_true_lang.js.map +1 -0
  298. package/dist/components/tables/RuiExpandButton.js +7 -0
  299. package/dist/components/tables/RuiExpandButton.js.map +1 -0
  300. package/dist/components/tables/RuiExpandButton.vue_vue_type_script_setup_true_lang.js +34 -0
  301. package/dist/components/tables/RuiExpandButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
  302. package/dist/components/tables/RuiTableEmptyState.js +7 -0
  303. package/dist/components/tables/RuiTableEmptyState.js.map +1 -0
  304. package/dist/components/tables/RuiTableEmptyState.vue.d.ts +16 -0
  305. package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js +46 -0
  306. package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -0
  307. package/dist/components/tables/RuiTableHead.js +7 -0
  308. package/dist/components/tables/RuiTableHead.js.map +1 -0
  309. package/dist/components/tables/RuiTableHead.vue.d.ts +6 -5
  310. package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js +230 -0
  311. package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js.map +1 -0
  312. package/dist/components/tables/RuiTablePagination.js +7 -0
  313. package/dist/components/tables/RuiTablePagination.js.map +1 -0
  314. package/dist/components/tables/RuiTablePagination.vue.d.ts +9 -6
  315. package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js +187 -0
  316. package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js.map +1 -0
  317. package/dist/components/tables/data-table-styles.d.ts +155 -0
  318. package/dist/components/tables/data-table-styles.js +36 -0
  319. package/dist/components/tables/data-table-styles.js.map +1 -0
  320. package/dist/components/tables/table-props.d.ts +20 -0
  321. package/dist/components/tables/table-props.js +39 -0
  322. package/dist/components/tables/table-props.js.map +1 -0
  323. package/dist/components/tables/table_no_data_placeholder.js +6 -0
  324. package/dist/components/tables/table_no_data_placeholder.js.map +1 -0
  325. package/dist/components/tables/table_no_data_placeholder_dark.js +6 -0
  326. package/dist/components/tables/table_no_data_placeholder_dark.js.map +1 -0
  327. package/dist/components/tables/use-pagination-navigation.d.ts +32 -0
  328. package/dist/components/tables/use-pagination-navigation.js +88 -0
  329. package/dist/components/tables/use-pagination-navigation.js.map +1 -0
  330. package/dist/components/tabs/tab/RuiTab.js +7 -0
  331. package/dist/components/tabs/tab/RuiTab.js.map +1 -0
  332. package/dist/components/tabs/tab/RuiTab.vue.d.ts +12 -3
  333. package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js +175 -0
  334. package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js.map +1 -0
  335. package/dist/components/tabs/tab/use-tab-link.d.ts +26 -0
  336. package/dist/components/tabs/tab/use-tab-link.js +28 -0
  337. package/dist/components/tabs/tab/use-tab-link.js.map +1 -0
  338. package/dist/components/tabs/tab-item/RuiTabItem.js +7 -0
  339. package/dist/components/tabs/tab-item/RuiTabItem.js.map +1 -0
  340. package/dist/components/tabs/tab-item/RuiTabItem.vue_vue_type_script_setup_true_lang.js +54 -0
  341. package/dist/components/tabs/tab-item/RuiTabItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
  342. package/dist/components/tabs/tab-items/RuiTabItems.js +7 -0
  343. package/dist/components/tabs/tab-items/RuiTabItems.js.map +1 -0
  344. package/dist/components/tabs/tab-items/RuiTabItems.vue_vue_type_script_setup_true_lang.js +76 -0
  345. package/dist/components/tabs/tab-items/RuiTabItems.vue_vue_type_script_setup_true_lang.js.map +1 -0
  346. package/dist/components/tabs/tab-props.d.ts +20 -0
  347. package/dist/components/tabs/tab-props.js +18 -0
  348. package/dist/components/tabs/tab-props.js.map +1 -0
  349. package/dist/components/tabs/tabs/RuiTabs.js +7 -0
  350. package/dist/components/tabs/tabs/RuiTabs.js.map +1 -0
  351. package/dist/components/tabs/tabs/RuiTabs.vue.d.ts +3 -2
  352. package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js +208 -0
  353. package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js.map +1 -0
  354. package/dist/components/tabs/tabs/use-tab-routing.d.ts +28 -0
  355. package/dist/components/tabs/tabs/use-tab-routing.js +43 -0
  356. package/dist/components/tabs/tabs/use-tab-routing.js.map +1 -0
  357. package/dist/components/tabs/tabs/use-tab-scroll.d.ts +23 -0
  358. package/dist/components/tabs/tabs/use-tab-scroll.js +68 -0
  359. package/dist/components/tabs/tabs/use-tab-scroll.js.map +1 -0
  360. package/dist/components/time-picker/RuiTimePicker.js +7 -0
  361. package/dist/components/time-picker/RuiTimePicker.js.map +1 -0
  362. package/dist/components/time-picker/RuiTimePicker.vue_vue_type_script_setup_true_lang.js +382 -0
  363. package/dist/components/time-picker/RuiTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  364. package/dist/components/time-picker/time-picker-styles.d.ts +76 -0
  365. package/dist/components/time-picker/time-picker-styles.js +27 -0
  366. package/dist/components/time-picker/time-picker-styles.js.map +1 -0
  367. package/dist/composables/breakpoint.js +35 -40
  368. package/dist/composables/breakpoint.js.map +1 -1
  369. package/dist/composables/colors/common.d.ts +20 -0
  370. package/dist/composables/colors/index.d.ts +3 -0
  371. package/dist/composables/colors/text-input.d.ts +27 -0
  372. package/dist/composables/defaults/table.js +21 -18
  373. package/dist/composables/defaults/table.js.map +1 -1
  374. package/dist/composables/dropdown-menu.d.ts +6 -6
  375. package/dist/composables/dropdown-menu.js +169 -237
  376. package/dist/composables/dropdown-menu.js.map +1 -1
  377. package/dist/composables/floating.d.ts +60 -0
  378. package/dist/composables/floating.js +167 -0
  379. package/dist/composables/floating.js.map +1 -0
  380. package/dist/composables/forms/auto-complete/focus.d.ts +4 -4
  381. package/dist/composables/forms/auto-complete/focus.js +59 -79
  382. package/dist/composables/forms/auto-complete/focus.js.map +1 -1
  383. package/dist/composables/forms/auto-complete/index.js +4 -0
  384. package/dist/composables/forms/auto-complete/keyboard-navigation.d.ts +6 -5
  385. package/dist/composables/forms/auto-complete/keyboard-navigation.js +116 -136
  386. package/dist/composables/forms/auto-complete/keyboard-navigation.js.map +1 -1
  387. package/dist/composables/forms/auto-complete/search.d.ts +11 -10
  388. package/dist/composables/forms/auto-complete/search.js +80 -91
  389. package/dist/composables/forms/auto-complete/search.js.map +1 -1
  390. package/dist/composables/forms/auto-complete/value.d.ts +9 -8
  391. package/dist/composables/forms/auto-complete/value.js +76 -108
  392. package/dist/composables/forms/auto-complete/value.js.map +1 -1
  393. package/dist/composables/forms/use-prepend-append-width.js +24 -20
  394. package/dist/composables/forms/use-prepend-append-width.js.map +1 -1
  395. package/dist/composables/icons.js +42 -52
  396. package/dist/composables/icons.js.map +1 -1
  397. package/dist/composables/index.js +2 -7
  398. package/dist/composables/popper.d.ts +5 -20
  399. package/dist/composables/popper.js +22 -177
  400. package/dist/composables/popper.js.map +1 -1
  401. package/dist/composables/sticky-header.js +132 -143
  402. package/dist/composables/sticky-header.js.map +1 -1
  403. package/dist/composables/tables/data-table/columns.d.ts +1 -1
  404. package/dist/composables/tables/data-table/columns.js +41 -49
  405. package/dist/composables/tables/data-table/columns.js.map +1 -1
  406. package/dist/composables/tables/data-table/expansion.js +29 -34
  407. package/dist/composables/tables/data-table/expansion.js.map +1 -1
  408. package/dist/composables/tables/data-table/grouping.d.ts +1 -1
  409. package/dist/composables/tables/data-table/grouping.js +110 -132
  410. package/dist/composables/tables/data-table/grouping.js.map +1 -1
  411. package/dist/composables/tables/data-table/pagination.d.ts +2 -2
  412. package/dist/composables/tables/data-table/pagination.js +98 -115
  413. package/dist/composables/tables/data-table/pagination.js.map +1 -1
  414. package/dist/composables/tables/data-table/selection.js +124 -160
  415. package/dist/composables/tables/data-table/selection.js.map +1 -1
  416. package/dist/composables/tables/data-table/sort.d.ts +2 -2
  417. package/dist/composables/tables/data-table/sort.js +118 -132
  418. package/dist/composables/tables/data-table/sort.js.map +1 -1
  419. package/dist/composables/tables/data-table/types.d.ts +2 -2
  420. package/dist/composables/tables/data-table/types.js +7 -7
  421. package/dist/composables/tables/data-table/types.js.map +1 -1
  422. package/dist/composables/theme.js +91 -66
  423. package/dist/composables/theme.js.map +1 -1
  424. package/dist/composables/timeout-manager.js +24 -19
  425. package/dist/composables/timeout-manager.js.map +1 -1
  426. package/dist/composables/use-rui-i18n.js +15 -21
  427. package/dist/composables/use-rui-i18n.js.map +1 -1
  428. package/dist/consts/colors.js +50 -47
  429. package/dist/consts/colors.js.map +1 -1
  430. package/dist/consts/time-accuracy.js +9 -8
  431. package/dist/consts/time-accuracy.js.map +1 -1
  432. package/dist/i18n/keys.js +17 -16
  433. package/dist/i18n/keys.js.map +1 -1
  434. package/dist/icons/icons_1.js +1529 -2027
  435. package/dist/icons/icons_1.js.map +1 -1
  436. package/dist/icons/icons_2.js +1529 -2027
  437. package/dist/icons/icons_2.js.map +1 -1
  438. package/dist/icons/icons_3.js +1529 -2027
  439. package/dist/icons/icons_3.js.map +1 -1
  440. package/dist/icons/icons_4.js +794 -1047
  441. package/dist/icons/icons_4.js.map +1 -1
  442. package/dist/icons/index.js +1767 -7
  443. package/dist/icons/index.js.map +1 -1
  444. package/dist/index.d.ts +5 -2
  445. package/dist/index.js +87 -1907
  446. package/dist/index.js.map +1 -1
  447. package/dist/node_modules/.pnpm/tailwind-merge@2.6.1/node_modules/tailwind-merge/dist/bundle-mjs.js +1440 -0
  448. package/dist/node_modules/.pnpm/tailwind-merge@2.6.1/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
  449. package/dist/node_modules/.pnpm/tailwind-variants@3.2.2_tailwind-merge@2.6.1_tailwindcss@3.4.19_tsx@4.21.0_yaml@2.8.2_/node_modules/tailwind-variants/dist/chunk-LQJYWU4O.js +91 -0
  450. package/dist/node_modules/.pnpm/tailwind-variants@3.2.2_tailwind-merge@2.6.1_tailwindcss@3.4.19_tsx@4.21.0_yaml@2.8.2_/node_modules/tailwind-variants/dist/chunk-LQJYWU4O.js.map +1 -0
  451. package/dist/node_modules/.pnpm/tailwind-variants@3.2.2_tailwind-merge@2.6.1_tailwindcss@3.4.19_tsx@4.21.0_yaml@2.8.2_/node_modules/tailwind-variants/dist/chunk-RZF76H2U.js +217 -0
  452. package/dist/node_modules/.pnpm/tailwind-variants@3.2.2_tailwind-merge@2.6.1_tailwindcss@3.4.19_tsx@4.21.0_yaml@2.8.2_/node_modules/tailwind-variants/dist/chunk-RZF76H2U.js.map +1 -0
  453. package/dist/node_modules/.pnpm/tailwind-variants@3.2.2_tailwind-merge@2.6.1_tailwindcss@3.4.19_tsx@4.21.0_yaml@2.8.2_/node_modules/tailwind-variants/dist/index.js +33 -0
  454. package/dist/node_modules/.pnpm/tailwind-variants@3.2.2_tailwind-merge@2.6.1_tailwindcss@3.4.19_tsx@4.21.0_yaml@2.8.2_/node_modules/tailwind-variants/dist/index.js.map +1 -0
  455. package/dist/style.css +2791 -10271
  456. package/dist/theme/index.js +160 -198
  457. package/dist/theme/index.js.map +1 -1
  458. package/dist/types/class-value.d.ts +5 -0
  459. package/dist/types/stepper.js +16 -15
  460. package/dist/types/stepper.js.map +1 -1
  461. package/dist/types/theme.js +17 -22
  462. package/dist/types/theme.js.map +1 -1
  463. package/dist/utils/assert.js +12 -12
  464. package/dist/utils/assert.js.map +1 -1
  465. package/dist/utils/blockie.js +58 -65
  466. package/dist/utils/blockie.js.map +1 -1
  467. package/dist/utils/form-text-detail.d.ts +4 -2
  468. package/dist/utils/form-text-detail.js +29 -27
  469. package/dist/utils/form-text-detail.js.map +1 -1
  470. package/dist/utils/helpers.js +60 -35
  471. package/dist/utils/helpers.js.map +1 -1
  472. package/dist/utils/is-equal.js +23 -33
  473. package/dist/utils/is-equal.js.map +1 -1
  474. package/dist/utils/tv.d.ts +16 -0
  475. package/dist/utils/tv.js +23 -0
  476. package/dist/utils/tv.js.map +1 -0
  477. package/dist/vite-plugin/index.js +144 -155
  478. package/dist/vite-plugin/index.js.map +1 -1
  479. package/dist/vite-plugin/scanner.js +46 -52
  480. package/dist/vite-plugin/scanner.js.map +1 -1
  481. package/dist/web-types.json +214 -39
  482. package/package.json +30 -31
  483. package/dist/_virtual/_plugin-vue_export-helper.js +0 -11
  484. package/dist/_virtual/_plugin-vue_export-helper.js.map +0 -1
  485. package/dist/components/accordions/accordion/RuiAccordion.vue.js +0 -89
  486. package/dist/components/accordions/accordion/RuiAccordion.vue.js.map +0 -1
  487. package/dist/components/accordions/accordion/RuiAccordion.vue2.js +0 -5
  488. package/dist/components/accordions/accordion/RuiAccordion.vue2.js.map +0 -1
  489. package/dist/components/accordions/accordions/RuiAccordions.vue.js +0 -79
  490. package/dist/components/accordions/accordions/RuiAccordions.vue.js.map +0 -1
  491. package/dist/components/accordions/accordions/RuiAccordions.vue2.js +0 -5
  492. package/dist/components/accordions/accordions/RuiAccordions.vue2.js.map +0 -1
  493. package/dist/components/alerts/RuiAlert.vue.js +0 -11
  494. package/dist/components/alerts/RuiAlert.vue.js.map +0 -1
  495. package/dist/components/alerts/RuiAlert.vue2.js +0 -115
  496. package/dist/components/alerts/RuiAlert.vue2.js.map +0 -1
  497. package/dist/components/alerts/RuiAlert.vue3.js +0 -50
  498. package/dist/components/alerts/RuiAlert.vue3.js.map +0 -1
  499. package/dist/components/buttons/button/RuiButton.vue.js +0 -11
  500. package/dist/components/buttons/button/RuiButton.vue.js.map +0 -1
  501. package/dist/components/buttons/button/RuiButton.vue2.js +0 -93
  502. package/dist/components/buttons/button/RuiButton.vue2.js.map +0 -1
  503. package/dist/components/buttons/button/RuiButton.vue3.js +0 -74
  504. package/dist/components/buttons/button/RuiButton.vue3.js.map +0 -1
  505. package/dist/components/buttons/button-group/RuiButtonGroup.vue.js +0 -11
  506. package/dist/components/buttons/button-group/RuiButtonGroup.vue.js.map +0 -1
  507. package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js +0 -113
  508. package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js.map +0 -1
  509. package/dist/components/buttons/button-group/RuiButtonGroup.vue3.js +0 -58
  510. package/dist/components/buttons/button-group/RuiButtonGroup.vue3.js.map +0 -1
  511. package/dist/components/calendar/RuiCalendar.vue.js +0 -139
  512. package/dist/components/calendar/RuiCalendar.vue.js.map +0 -1
  513. package/dist/components/calendar/RuiCalendar.vue3.js +0 -6
  514. package/dist/components/calendar/RuiCalendar.vue3.js.map +0 -1
  515. package/dist/components/calendar/RuiCalendarGrid.vue.js +0 -8
  516. package/dist/components/calendar/RuiCalendarGrid.vue.js.map +0 -1
  517. package/dist/components/calendar/RuiCalendarGrid.vue2.js +0 -151
  518. package/dist/components/calendar/RuiCalendarGrid.vue2.js.map +0 -1
  519. package/dist/components/calendar/RuiCalendarHeader.vue.js +0 -8
  520. package/dist/components/calendar/RuiCalendarHeader.vue.js.map +0 -1
  521. package/dist/components/calendar/RuiCalendarHeader.vue2.js +0 -111
  522. package/dist/components/calendar/RuiCalendarHeader.vue2.js.map +0 -1
  523. package/dist/components/calendar/RuiCalendarMenu.vue.js +0 -8
  524. package/dist/components/calendar/RuiCalendarMenu.vue.js.map +0 -1
  525. package/dist/components/calendar/RuiCalendarMenu.vue2.js +0 -269
  526. package/dist/components/calendar/RuiCalendarMenu.vue2.js.map +0 -1
  527. package/dist/components/cards/RuiCard.vue.js +0 -11
  528. package/dist/components/cards/RuiCard.vue.js.map +0 -1
  529. package/dist/components/cards/RuiCard.vue2.js +0 -88
  530. package/dist/components/cards/RuiCard.vue2.js.map +0 -1
  531. package/dist/components/cards/RuiCard.vue3.js +0 -40
  532. package/dist/components/cards/RuiCard.vue3.js.map +0 -1
  533. package/dist/components/cards/RuiCardHeader.vue.js +0 -11
  534. package/dist/components/cards/RuiCardHeader.vue.js.map +0 -1
  535. package/dist/components/cards/RuiCardHeader.vue2.js +0 -51
  536. package/dist/components/cards/RuiCardHeader.vue2.js.map +0 -1
  537. package/dist/components/cards/RuiCardHeader.vue3.js +0 -27
  538. package/dist/components/cards/RuiCardHeader.vue3.js.map +0 -1
  539. package/dist/components/chips/RuiChip.vue.js +0 -11
  540. package/dist/components/chips/RuiChip.vue.js.map +0 -1
  541. package/dist/components/chips/RuiChip.vue2.js +0 -90
  542. package/dist/components/chips/RuiChip.vue2.js.map +0 -1
  543. package/dist/components/chips/RuiChip.vue3.js +0 -88
  544. package/dist/components/chips/RuiChip.vue3.js.map +0 -1
  545. package/dist/components/color-picker/RuiColorBoard.vue.js +0 -11
  546. package/dist/components/color-picker/RuiColorBoard.vue.js.map +0 -1
  547. package/dist/components/color-picker/RuiColorBoard.vue2.js +0 -102
  548. package/dist/components/color-picker/RuiColorBoard.vue2.js.map +0 -1
  549. package/dist/components/color-picker/RuiColorBoard.vue3.js +0 -18
  550. package/dist/components/color-picker/RuiColorBoard.vue3.js.map +0 -1
  551. package/dist/components/color-picker/RuiColorDisplay.vue.js +0 -47
  552. package/dist/components/color-picker/RuiColorDisplay.vue.js.map +0 -1
  553. package/dist/components/color-picker/RuiColorDisplay.vue2.js +0 -5
  554. package/dist/components/color-picker/RuiColorDisplay.vue2.js.map +0 -1
  555. package/dist/components/color-picker/RuiColorHue.vue.js +0 -11
  556. package/dist/components/color-picker/RuiColorHue.vue.js.map +0 -1
  557. package/dist/components/color-picker/RuiColorHue.vue2.js +0 -92
  558. package/dist/components/color-picker/RuiColorHue.vue2.js.map +0 -1
  559. package/dist/components/color-picker/RuiColorHue.vue3.js +0 -12
  560. package/dist/components/color-picker/RuiColorHue.vue3.js.map +0 -1
  561. package/dist/components/color-picker/RuiColorInput.vue.js +0 -141
  562. package/dist/components/color-picker/RuiColorInput.vue.js.map +0 -1
  563. package/dist/components/color-picker/RuiColorInput.vue2.js +0 -5
  564. package/dist/components/color-picker/RuiColorInput.vue2.js.map +0 -1
  565. package/dist/components/color-picker/RuiColorPicker.vue.js +0 -81
  566. package/dist/components/color-picker/RuiColorPicker.vue.js.map +0 -1
  567. package/dist/components/color-picker/RuiColorPicker.vue2.js +0 -5
  568. package/dist/components/color-picker/RuiColorPicker.vue2.js.map +0 -1
  569. package/dist/components/date-time-picker/RuiDateTimePicker.vue.js +0 -11
  570. package/dist/components/date-time-picker/RuiDateTimePicker.vue.js.map +0 -1
  571. package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js +0 -394
  572. package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js.map +0 -1
  573. package/dist/components/date-time-picker/RuiDateTimePicker.vue3.js +0 -66
  574. package/dist/components/date-time-picker/RuiDateTimePicker.vue3.js.map +0 -1
  575. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js +0 -120
  576. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js.map +0 -1
  577. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue2.js +0 -5
  578. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue2.js.map +0 -1
  579. package/dist/components/divider/RuiDivider.vue.js +0 -25
  580. package/dist/components/divider/RuiDivider.vue.js.map +0 -1
  581. package/dist/components/divider/RuiDivider.vue2.js +0 -5
  582. package/dist/components/divider/RuiDivider.vue2.js.map +0 -1
  583. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.js +0 -11
  584. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.js.map +0 -1
  585. package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js +0 -594
  586. package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js.map +0 -1
  587. package/dist/components/forms/auto-complete/RuiAutoComplete.vue3.js +0 -60
  588. package/dist/components/forms/auto-complete/RuiAutoComplete.vue3.js.map +0 -1
  589. package/dist/components/forms/checkbox/RuiCheckbox.vue.js +0 -11
  590. package/dist/components/forms/checkbox/RuiCheckbox.vue.js.map +0 -1
  591. package/dist/components/forms/checkbox/RuiCheckbox.vue2.js +0 -148
  592. package/dist/components/forms/checkbox/RuiCheckbox.vue2.js.map +0 -1
  593. package/dist/components/forms/checkbox/RuiCheckbox.vue3.js +0 -54
  594. package/dist/components/forms/checkbox/RuiCheckbox.vue3.js.map +0 -1
  595. package/dist/components/forms/radio-button/radio/RuiRadio.vue.js +0 -11
  596. package/dist/components/forms/radio-button/radio/RuiRadio.vue.js.map +0 -1
  597. package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js +0 -122
  598. package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js.map +0 -1
  599. package/dist/components/forms/radio-button/radio/RuiRadio.vue3.js +0 -54
  600. package/dist/components/forms/radio-button/radio/RuiRadio.vue3.js.map +0 -1
  601. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.js +0 -11
  602. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.js.map +0 -1
  603. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js +0 -84
  604. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js.map +0 -1
  605. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue3.js +0 -9
  606. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue3.js.map +0 -1
  607. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js +0 -84
  608. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js.map +0 -1
  609. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue2.js +0 -5
  610. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue2.js.map +0 -1
  611. package/dist/components/forms/select/RuiMenuSelect.vue.js +0 -11
  612. package/dist/components/forms/select/RuiMenuSelect.vue.js.map +0 -1
  613. package/dist/components/forms/select/RuiMenuSelect.vue2.js +0 -310
  614. package/dist/components/forms/select/RuiMenuSelect.vue2.js.map +0 -1
  615. package/dist/components/forms/select/RuiMenuSelect.vue3.js +0 -60
  616. package/dist/components/forms/select/RuiMenuSelect.vue3.js.map +0 -1
  617. package/dist/components/forms/select/RuiSimpleSelect.vue.js +0 -11
  618. package/dist/components/forms/select/RuiSimpleSelect.vue.js.map +0 -1
  619. package/dist/components/forms/select/RuiSimpleSelect.vue2.js +0 -62
  620. package/dist/components/forms/select/RuiSimpleSelect.vue2.js.map +0 -1
  621. package/dist/components/forms/select/RuiSimpleSelect.vue3.js +0 -21
  622. package/dist/components/forms/select/RuiSimpleSelect.vue3.js.map +0 -1
  623. package/dist/components/forms/slider/RuiSlider.vue.js +0 -11
  624. package/dist/components/forms/slider/RuiSlider.vue.js.map +0 -1
  625. package/dist/components/forms/slider/RuiSlider.vue2.js +0 -173
  626. package/dist/components/forms/slider/RuiSlider.vue2.js.map +0 -1
  627. package/dist/components/forms/slider/RuiSlider.vue3.js +0 -80
  628. package/dist/components/forms/slider/RuiSlider.vue3.js.map +0 -1
  629. package/dist/components/forms/switch/RuiSwitch.vue.js +0 -11
  630. package/dist/components/forms/switch/RuiSwitch.vue.js.map +0 -1
  631. package/dist/components/forms/switch/RuiSwitch.vue2.js +0 -99
  632. package/dist/components/forms/switch/RuiSwitch.vue2.js.map +0 -1
  633. package/dist/components/forms/switch/RuiSwitch.vue3.js +0 -54
  634. package/dist/components/forms/switch/RuiSwitch.vue3.js.map +0 -1
  635. package/dist/components/forms/text-area/RuiTextArea.vue.js +0 -11
  636. package/dist/components/forms/text-area/RuiTextArea.vue.js.map +0 -1
  637. package/dist/components/forms/text-area/RuiTextArea.vue2.js +0 -229
  638. package/dist/components/forms/text-area/RuiTextArea.vue2.js.map +0 -1
  639. package/dist/components/forms/text-area/RuiTextArea.vue3.js +0 -92
  640. package/dist/components/forms/text-area/RuiTextArea.vue3.js.map +0 -1
  641. package/dist/components/forms/text-field/RuiTextField.vue.js +0 -11
  642. package/dist/components/forms/text-field/RuiTextField.vue.js.map +0 -1
  643. package/dist/components/forms/text-field/RuiTextField.vue2.js +0 -202
  644. package/dist/components/forms/text-field/RuiTextField.vue2.js.map +0 -1
  645. package/dist/components/forms/text-field/RuiTextField.vue3.js +0 -89
  646. package/dist/components/forms/text-field/RuiTextField.vue3.js.map +0 -1
  647. package/dist/components/helpers/RuiFormTextDetail.vue.js +0 -50
  648. package/dist/components/helpers/RuiFormTextDetail.vue.js.map +0 -1
  649. package/dist/components/helpers/RuiFormTextDetail.vue2.js +0 -5
  650. package/dist/components/helpers/RuiFormTextDetail.vue2.js.map +0 -1
  651. package/dist/components/icons/RuiIcon.vue.js +0 -11
  652. package/dist/components/icons/RuiIcon.vue.js.map +0 -1
  653. package/dist/components/icons/RuiIcon.vue2.js +0 -57
  654. package/dist/components/icons/RuiIcon.vue2.js.map +0 -1
  655. package/dist/components/icons/RuiIcon.vue3.js +0 -29
  656. package/dist/components/icons/RuiIcon.vue3.js.map +0 -1
  657. package/dist/components/index.js.map +0 -1
  658. package/dist/components/loaders/RuiSkeletonBase.vue.js +0 -11
  659. package/dist/components/loaders/RuiSkeletonBase.vue.js.map +0 -1
  660. package/dist/components/loaders/RuiSkeletonBase.vue2.js +0 -22
  661. package/dist/components/loaders/RuiSkeletonBase.vue2.js.map +0 -1
  662. package/dist/components/loaders/RuiSkeletonBase.vue3.js +0 -12
  663. package/dist/components/loaders/RuiSkeletonBase.vue3.js.map +0 -1
  664. package/dist/components/loaders/RuiSkeletonLoader.vue.js +0 -11
  665. package/dist/components/loaders/RuiSkeletonLoader.vue.js.map +0 -1
  666. package/dist/components/loaders/RuiSkeletonLoader.vue2.js +0 -47
  667. package/dist/components/loaders/RuiSkeletonLoader.vue2.js.map +0 -1
  668. package/dist/components/loaders/RuiSkeletonLoader.vue3.js +0 -33
  669. package/dist/components/loaders/RuiSkeletonLoader.vue3.js.map +0 -1
  670. package/dist/components/logos/RuiLogo.vue.js +0 -110
  671. package/dist/components/logos/RuiLogo.vue.js.map +0 -1
  672. package/dist/components/logos/RuiLogo.vue2.js +0 -5
  673. package/dist/components/logos/RuiLogo.vue2.js.map +0 -1
  674. package/dist/components/logos/logo.svg.js +0 -5
  675. package/dist/components/logos/logo.svg.js.map +0 -1
  676. package/dist/components/overlays/badge/RuiBadge.vue.js +0 -11
  677. package/dist/components/overlays/badge/RuiBadge.vue.js.map +0 -1
  678. package/dist/components/overlays/badge/RuiBadge.vue2.js +0 -93
  679. package/dist/components/overlays/badge/RuiBadge.vue2.js.map +0 -1
  680. package/dist/components/overlays/badge/RuiBadge.vue3.js +0 -77
  681. package/dist/components/overlays/badge/RuiBadge.vue3.js.map +0 -1
  682. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js +0 -45
  683. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js.map +0 -1
  684. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue2.js +0 -5
  685. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue2.js.map +0 -1
  686. package/dist/components/overlays/dialog/RuiDialog.vue.js +0 -11
  687. package/dist/components/overlays/dialog/RuiDialog.vue.js.map +0 -1
  688. package/dist/components/overlays/dialog/RuiDialog.vue2.js +0 -195
  689. package/dist/components/overlays/dialog/RuiDialog.vue2.js.map +0 -1
  690. package/dist/components/overlays/dialog/RuiDialog.vue3.js +0 -18
  691. package/dist/components/overlays/dialog/RuiDialog.vue3.js.map +0 -1
  692. package/dist/components/overlays/menu/RuiMenu.vue.js +0 -11
  693. package/dist/components/overlays/menu/RuiMenu.vue.js.map +0 -1
  694. package/dist/components/overlays/menu/RuiMenu.vue2.js +0 -214
  695. package/dist/components/overlays/menu/RuiMenu.vue2.js.map +0 -1
  696. package/dist/components/overlays/menu/RuiMenu.vue3.js +0 -21
  697. package/dist/components/overlays/menu/RuiMenu.vue3.js.map +0 -1
  698. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.js +0 -11
  699. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.js.map +0 -1
  700. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js +0 -164
  701. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js.map +0 -1
  702. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue3.js +0 -28
  703. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue3.js.map +0 -1
  704. package/dist/components/overlays/notification/RuiNotification.vue.js +0 -79
  705. package/dist/components/overlays/notification/RuiNotification.vue.js.map +0 -1
  706. package/dist/components/overlays/notification/RuiNotification.vue2.js +0 -5
  707. package/dist/components/overlays/notification/RuiNotification.vue2.js.map +0 -1
  708. package/dist/components/overlays/tooltip/RuiTooltip.vue.js +0 -11
  709. package/dist/components/overlays/tooltip/RuiTooltip.vue.js.map +0 -1
  710. package/dist/components/overlays/tooltip/RuiTooltip.vue2.js +0 -112
  711. package/dist/components/overlays/tooltip/RuiTooltip.vue2.js.map +0 -1
  712. package/dist/components/overlays/tooltip/RuiTooltip.vue3.js +0 -27
  713. package/dist/components/overlays/tooltip/RuiTooltip.vue3.js.map +0 -1
  714. package/dist/components/progress/RuiProgress.vue.js +0 -11
  715. package/dist/components/progress/RuiProgress.vue.js.map +0 -1
  716. package/dist/components/progress/RuiProgress.vue2.js +0 -92
  717. package/dist/components/progress/RuiProgress.vue2.js.map +0 -1
  718. package/dist/components/progress/RuiProgress.vue3.js +0 -48
  719. package/dist/components/progress/RuiProgress.vue3.js.map +0 -1
  720. package/dist/components/steppers/RuiFooterStepper.vue.js +0 -11
  721. package/dist/components/steppers/RuiFooterStepper.vue.js.map +0 -1
  722. package/dist/components/steppers/RuiFooterStepper.vue2.js +0 -150
  723. package/dist/components/steppers/RuiFooterStepper.vue2.js.map +0 -1
  724. package/dist/components/steppers/RuiFooterStepper.vue3.js +0 -31
  725. package/dist/components/steppers/RuiFooterStepper.vue3.js.map +0 -1
  726. package/dist/components/steppers/RuiStepper.vue.js +0 -11
  727. package/dist/components/steppers/RuiStepper.vue.js.map +0 -1
  728. package/dist/components/steppers/RuiStepper.vue2.js +0 -133
  729. package/dist/components/steppers/RuiStepper.vue2.js.map +0 -1
  730. package/dist/components/steppers/RuiStepper.vue3.js +0 -58
  731. package/dist/components/steppers/RuiStepper.vue3.js.map +0 -1
  732. package/dist/components/steppers/RuiStepperCustomIcon.vue.js +0 -11
  733. package/dist/components/steppers/RuiStepperCustomIcon.vue.js.map +0 -1
  734. package/dist/components/steppers/RuiStepperCustomIcon.vue2.js +0 -38
  735. package/dist/components/steppers/RuiStepperCustomIcon.vue2.js.map +0 -1
  736. package/dist/components/steppers/RuiStepperCustomIcon.vue3.js +0 -15
  737. package/dist/components/steppers/RuiStepperCustomIcon.vue3.js.map +0 -1
  738. package/dist/components/steppers/RuiStepperIcon.vue.js +0 -11
  739. package/dist/components/steppers/RuiStepperIcon.vue.js.map +0 -1
  740. package/dist/components/steppers/RuiStepperIcon.vue2.js +0 -43
  741. package/dist/components/steppers/RuiStepperIcon.vue2.js.map +0 -1
  742. package/dist/components/steppers/RuiStepperIcon.vue3.js +0 -21
  743. package/dist/components/steppers/RuiStepperIcon.vue3.js.map +0 -1
  744. package/dist/components/tables/RuiDataTable.vue.js +0 -11
  745. package/dist/components/tables/RuiDataTable.vue.js.map +0 -1
  746. package/dist/components/tables/RuiDataTable.vue2.js +0 -541
  747. package/dist/components/tables/RuiDataTable.vue2.js.map +0 -1
  748. package/dist/components/tables/RuiDataTable.vue3.js +0 -76
  749. package/dist/components/tables/RuiDataTable.vue3.js.map +0 -1
  750. package/dist/components/tables/RuiExpandButton.vue.js +0 -11
  751. package/dist/components/tables/RuiExpandButton.vue.js.map +0 -1
  752. package/dist/components/tables/RuiExpandButton.vue2.js +0 -44
  753. package/dist/components/tables/RuiExpandButton.vue2.js.map +0 -1
  754. package/dist/components/tables/RuiExpandButton.vue3.js +0 -15
  755. package/dist/components/tables/RuiExpandButton.vue3.js.map +0 -1
  756. package/dist/components/tables/RuiTableHead.vue.js +0 -11
  757. package/dist/components/tables/RuiTableHead.vue.js.map +0 -1
  758. package/dist/components/tables/RuiTableHead.vue2.js +0 -195
  759. package/dist/components/tables/RuiTableHead.vue2.js.map +0 -1
  760. package/dist/components/tables/RuiTableHead.vue3.js +0 -69
  761. package/dist/components/tables/RuiTableHead.vue3.js.map +0 -1
  762. package/dist/components/tables/RuiTablePagination.vue.js +0 -11
  763. package/dist/components/tables/RuiTablePagination.vue.js.map +0 -1
  764. package/dist/components/tables/RuiTablePagination.vue2.js +0 -204
  765. package/dist/components/tables/RuiTablePagination.vue2.js.map +0 -1
  766. package/dist/components/tables/RuiTablePagination.vue3.js +0 -28
  767. package/dist/components/tables/RuiTablePagination.vue3.js.map +0 -1
  768. package/dist/components/tables/table_no_data_placeholder.svg.js +0 -5
  769. package/dist/components/tables/table_no_data_placeholder.svg.js.map +0 -1
  770. package/dist/components/tables/table_no_data_placeholder_dark.svg.js +0 -5
  771. package/dist/components/tables/table_no_data_placeholder_dark.svg.js.map +0 -1
  772. package/dist/components/tabs/tab/RuiTab.vue.js +0 -11
  773. package/dist/components/tabs/tab/RuiTab.vue.js.map +0 -1
  774. package/dist/components/tabs/tab/RuiTab.vue2.js +0 -167
  775. package/dist/components/tabs/tab/RuiTab.vue2.js.map +0 -1
  776. package/dist/components/tabs/tab/RuiTab.vue3.js +0 -17
  777. package/dist/components/tabs/tab/RuiTab.vue3.js.map +0 -1
  778. package/dist/components/tabs/tab-item/RuiTabItem.vue.js +0 -11
  779. package/dist/components/tabs/tab-item/RuiTabItem.vue.js.map +0 -1
  780. package/dist/components/tabs/tab-item/RuiTabItem.vue2.js +0 -52
  781. package/dist/components/tabs/tab-item/RuiTabItem.vue2.js.map +0 -1
  782. package/dist/components/tabs/tab-item/RuiTabItem.vue3.js +0 -9
  783. package/dist/components/tabs/tab-item/RuiTabItem.vue3.js.map +0 -1
  784. package/dist/components/tabs/tab-items/RuiTabItems.vue.js +0 -11
  785. package/dist/components/tabs/tab-items/RuiTabItems.vue.js.map +0 -1
  786. package/dist/components/tabs/tab-items/RuiTabItems.vue2.js +0 -90
  787. package/dist/components/tabs/tab-items/RuiTabItems.vue2.js.map +0 -1
  788. package/dist/components/tabs/tab-items/RuiTabItems.vue3.js +0 -9
  789. package/dist/components/tabs/tab-items/RuiTabItems.vue3.js.map +0 -1
  790. package/dist/components/tabs/tabs/RuiTabs.vue.js +0 -11
  791. package/dist/components/tabs/tabs/RuiTabs.vue.js.map +0 -1
  792. package/dist/components/tabs/tabs/RuiTabs.vue2.js +0 -288
  793. package/dist/components/tabs/tabs/RuiTabs.vue2.js.map +0 -1
  794. package/dist/components/tabs/tabs/RuiTabs.vue3.js +0 -20
  795. package/dist/components/tabs/tabs/RuiTabs.vue3.js.map +0 -1
  796. package/dist/components/time-picker/RuiTimePicker.vue.js +0 -11
  797. package/dist/components/time-picker/RuiTimePicker.vue.js.map +0 -1
  798. package/dist/components/time-picker/RuiTimePicker.vue2.js +0 -463
  799. package/dist/components/time-picker/RuiTimePicker.vue2.js.map +0 -1
  800. package/dist/components/time-picker/RuiTimePicker.vue3.js +0 -21
  801. package/dist/components/time-picker/RuiTimePicker.vue3.js.map +0 -1
  802. package/dist/composables/forms/use-label-with-quote.js +0 -14
  803. package/dist/composables/forms/use-label-with-quote.js.map +0 -1
  804. package/dist/composables/index.js.map +0 -1
@@ -1,287 +1,227 @@
1
- import dayjs from "dayjs";
2
- import { guessTimezone, includeSeconds, includeMilliseconds } from "./utils.js";
3
1
  import { useRuiI8n } from "../../composables/use-rui-i18n.js";
4
- import { RUI_I18N_KEYS } from "../../i18n/keys.js";
5
2
  import "./dayjs-setup.js";
6
- import { ref, computed, watch, onMounted, nextTick } from "vue";
7
- import { get, set } from "@vueuse/shared";
3
+ import { guessTimezone, includeMilliseconds, includeSeconds } from "./utils.js";
4
+ import { RUI_I18N_KEYS } from "../../i18n/keys.js";
5
+ import { computed, nextTick, onMounted, ref, watch } from "vue";
8
6
  import { isDefined, watchIgnorable } from "@vueuse/core";
9
- const MILLISECONDS = 1e3;
7
+ import { get as get$1, set as set$1 } from "@vueuse/shared";
8
+ import dayjs from "dayjs";
9
+ //#region src/components/date-time-picker/use-date-time-selection.ts
10
+ var MILLISECONDS = 1e3;
10
11
  function useDateTimeSelection(options) {
11
- const {
12
- accuracy,
13
- allowEmpty,
14
- maxDate,
15
- minDate,
16
- modelValue,
17
- type
18
- } = options;
19
- const { t } = useRuiI8n();
20
- const selectedYear = ref();
21
- const selectedMonth = ref();
22
- const selectedDay = ref();
23
- const selectedHour = ref();
24
- const selectedMinute = ref();
25
- const selectedSecond = ref();
26
- const selectedMillisecond = ref();
27
- const selectedTimezone = ref(guessTimezone());
28
- const internalErrorMessages = ref([]);
29
- const now = ref(dayjs.tz(void 0, guessTimezone()));
30
- const minAllowedDate = computed(() => {
31
- if (minDate === void 0) {
32
- return new Date(1970, 0, 1);
33
- }
34
- if (type === "epoch" && typeof minDate === "number") {
35
- return new Date(minDate * MILLISECONDS);
36
- }
37
- return new Date(minDate);
38
- });
39
- const maxAllowedDate = computed(() => {
40
- if (maxDate === void 0) {
41
- return void 0;
42
- }
43
- if (maxDate === "now") {
44
- return get(now).toDate();
45
- }
46
- if (type === "epoch" && typeof maxDate === "number") {
47
- return new Date(maxDate * MILLISECONDS);
48
- }
49
- return new Date(maxDate);
50
- });
51
- const segmentData = {
52
- DD: selectedDay,
53
- HH: selectedHour,
54
- MM: selectedMonth,
55
- SSS: selectedMillisecond,
56
- YYYY: selectedYear,
57
- mm: selectedMinute,
58
- ss: selectedSecond
59
- };
60
- const selectedDate = computed({
61
- get() {
62
- if (!(isDefined(selectedYear) && isDefined(selectedMonth) && isDefined(selectedDay))) {
63
- return void 0;
64
- }
65
- const date = /* @__PURE__ */ new Date();
66
- date.setFullYear(get(selectedYear));
67
- date.setDate(1);
68
- date.setMonth(get(selectedMonth) - 1);
69
- date.setDate(get(selectedDay));
70
- return date;
71
- },
72
- set(value) {
73
- set(selectedYear, value?.getFullYear());
74
- set(selectedMonth, value ? value.getMonth() + 1 : void 0);
75
- set(selectedDay, value?.getDate());
76
- }
77
- });
78
- const selectedTime = computed({
79
- get() {
80
- if (!(isDefined(selectedHour) && isDefined(selectedMinute))) {
81
- return void 0;
82
- }
83
- const date = /* @__PURE__ */ new Date();
84
- date.setHours(
85
- get(selectedHour),
86
- get(selectedMinute),
87
- get(selectedSecond) ?? 0,
88
- get(selectedMillisecond) ?? 0
89
- );
90
- return date;
91
- },
92
- set(value) {
93
- set(selectedHour, value?.getHours());
94
- set(selectedMinute, value?.getMinutes());
95
- set(selectedSecond, value?.getSeconds());
96
- set(selectedMillisecond, value?.getMilliseconds());
97
- }
98
- });
99
- const valueSet = computed(() => isDefined(selectedDate) && isDefined(selectedTime));
100
- function getDateTime() {
101
- let dateTime = dayjs();
102
- if (isDefined(selectedYear)) {
103
- dateTime = dateTime.year(get(selectedYear));
104
- }
105
- if (isDefined(selectedMonth)) {
106
- dateTime = dateTime.month(get(selectedMonth) - 1);
107
- }
108
- if (isDefined(selectedDay)) {
109
- const daysInMonth = dateTime.daysInMonth();
110
- const day = Math.min(get(selectedDay), daysInMonth);
111
- dateTime = dateTime.date(day);
112
- }
113
- if (isDefined(selectedHour)) {
114
- dateTime = dateTime.hour(get(selectedHour));
115
- }
116
- if (isDefined(selectedMinute)) {
117
- dateTime = dateTime.minute(get(selectedMinute));
118
- }
119
- if (isDefined(selectedSecond)) {
120
- dateTime = dateTime.second(get(selectedSecond));
121
- }
122
- if (isDefined(selectedMillisecond)) {
123
- dateTime = dateTime.millisecond(get(selectedMillisecond));
124
- }
125
- return dateTime;
126
- }
127
- function isDateValid(date) {
128
- const min = get(minAllowedDate);
129
- const max = get(maxAllowedDate);
130
- set(internalErrorMessages, []);
131
- if (min && date.isBefore(min)) {
132
- const errorMessage = t(RUI_I18N_KEYS.dateTimePicker.dateBeforeMin, {
133
- date: min.toLocaleDateString()
134
- }, `Date cannot be before ${min.toLocaleDateString()}`);
135
- set(internalErrorMessages, [...get(internalErrorMessages), errorMessage]);
136
- return false;
137
- }
138
- if (max && date.isAfter(max)) {
139
- const nowError = t(RUI_I18N_KEYS.dateTimePicker.dateInFuture, "The selected date cannot be in the future");
140
- const maxError = t(RUI_I18N_KEYS.dateTimePicker.dateAfterMax, { date: max.toLocaleDateString() }, `Date cannot be after ${max.toLocaleDateString()}`);
141
- const errorMessage = maxDate === "now" ? nowError : maxError;
142
- set(internalErrorMessages, [...get(internalErrorMessages), errorMessage]);
143
- return false;
144
- }
145
- return true;
146
- }
147
- function emitUpdate(updatedModel) {
148
- const typeMap = {
149
- "date": () => updatedModel.toDate(),
150
- "epoch": () => updatedModel.valueOf() / MILLISECONDS,
151
- "epoch-ms": () => updatedModel.valueOf()
152
- };
153
- set(modelValue, typeMap[type]());
154
- }
155
- function updateModelValue() {
156
- if (!isDefined(selectedDate) || !isDefined(selectedTime)) {
157
- return;
158
- }
159
- if (!(isDefined(selectedDate) && isDefined(selectedTime))) {
160
- set(modelValue, void 0);
161
- } else {
162
- const date = get(selectedDate);
163
- const time = get(selectedTime);
164
- const updatedModel = dayjs.tz(isDefined(modelValue) ? get(modelValue) : void 0, get(selectedTimezone)).year(date.getFullYear()).month(date.getMonth()).date(date.getDate()).hour(time.getHours()).minute(time.getMinutes()).second(includeSeconds(accuracy) ? time.getSeconds() : 0).millisecond(includeMilliseconds(accuracy) ? time.getMilliseconds() : 0);
165
- if (!isDateValid(updatedModel)) {
166
- return;
167
- }
168
- emitUpdate(updatedModel);
169
- }
170
- }
171
- function clear() {
172
- set(internalErrorMessages, []);
173
- set(selectedYear, void 0);
174
- set(selectedMonth, void 0);
175
- set(selectedDay, void 0);
176
- set(selectedHour, void 0);
177
- set(selectedMinute, void 0);
178
- set(selectedSecond, void 0);
179
- set(selectedMillisecond, void 0);
180
- set(modelValue, void 0);
181
- }
182
- function setNow() {
183
- set(internalErrorMessages, []);
184
- const date = dayjs();
185
- set(now, date);
186
- set(selectedYear, date.year());
187
- set(selectedMonth, date.month() + 1);
188
- set(selectedDay, date.date());
189
- set(selectedHour, date.hour());
190
- set(selectedMinute, date.minute());
191
- set(selectedSecond, includeSeconds(accuracy) ? date.second() : 0);
192
- set(selectedMillisecond, includeMilliseconds(accuracy) ? date.millisecond() : 0);
193
- nextTick(() => {
194
- updateModelValue();
195
- });
196
- }
197
- function updateSegments(date) {
198
- const year = date.year();
199
- const month = date.month() + 1;
200
- const day = date.date();
201
- const hour = date.hour();
202
- const minute = date.minute();
203
- const second = includeSeconds(accuracy) ? date.second() : void 0;
204
- const millisecond = includeMilliseconds(accuracy) ? date.millisecond() : void 0;
205
- if (get(selectedYear) !== year)
206
- set(selectedYear, year);
207
- if (get(selectedMonth) !== month)
208
- set(selectedMonth, month);
209
- if (get(selectedDay) !== day)
210
- set(selectedDay, day);
211
- if (get(selectedHour) !== hour)
212
- set(selectedHour, hour);
213
- if (get(selectedMinute) !== minute)
214
- set(selectedMinute, minute);
215
- if (get(selectedSecond) !== second)
216
- set(selectedSecond, second);
217
- if (get(selectedMillisecond) !== millisecond)
218
- set(selectedMillisecond, millisecond);
219
- }
220
- const { ignoreUpdates } = watchIgnorable([selectedDate, selectedTime], ([newSelectedDate, newSelectedTime], [prevSelectedDate, prevSelectedTime]) => {
221
- const currentTimezone = get(selectedTimezone);
222
- const newDate = dayjs.tz(newSelectedDate, currentTimezone);
223
- const oldDate = dayjs.tz(prevSelectedDate, currentTimezone);
224
- const newTime = dayjs.tz(newSelectedTime, currentTimezone);
225
- const oldTime = dayjs.tz(prevSelectedTime, currentTimezone);
226
- if (newDate.isSame(oldDate) && newTime.isSame(oldTime)) {
227
- return;
228
- }
229
- set(now, dayjs());
230
- updateModelValue();
231
- });
232
- function updateInternalModel(value) {
233
- ignoreUpdates(() => {
234
- const updatedValue = type === "epoch" && typeof value === "number" ? value * MILLISECONDS : value;
235
- const date = dayjs.tz(updatedValue, get(selectedTimezone));
236
- isDateValid(date);
237
- updateSegments(date);
238
- });
239
- }
240
- watch(selectedTimezone, (newTimezone) => {
241
- if (newTimezone && isDefined(selectedDate) && isDefined(selectedTime)) {
242
- set(now, dayjs());
243
- updateModelValue();
244
- }
245
- });
246
- watch(modelValue, (value) => {
247
- set(now, dayjs());
248
- if (value === void 0) {
249
- clear();
250
- } else {
251
- updateInternalModel(value);
252
- }
253
- });
254
- onMounted(() => {
255
- if (isDefined(modelValue)) {
256
- updateInternalModel(get(modelValue));
257
- } else if (!allowEmpty) {
258
- setNow();
259
- }
260
- });
261
- return {
262
- clear,
263
- getDateTime,
264
- internalErrorMessages,
265
- isDateValid,
266
- maxAllowedDate,
267
- minAllowedDate,
268
- now,
269
- segmentData,
270
- selectedDate,
271
- selectedDay,
272
- selectedHour,
273
- selectedMillisecond,
274
- selectedMinute,
275
- selectedMonth,
276
- selectedSecond,
277
- selectedTime,
278
- selectedTimezone,
279
- selectedYear,
280
- setNow,
281
- valueSet
282
- };
12
+ const { accuracy, allowEmpty, maxDate, minDate, modelValue, type } = options;
13
+ const { t } = useRuiI8n();
14
+ const selectedYear = ref();
15
+ const selectedMonth = ref();
16
+ const selectedDay = ref();
17
+ const selectedHour = ref();
18
+ const selectedMinute = ref();
19
+ const selectedSecond = ref();
20
+ const selectedMillisecond = ref();
21
+ const selectedTimezone = ref(guessTimezone());
22
+ const internalErrorMessages = ref([]);
23
+ const now = ref(dayjs.tz(void 0, guessTimezone()));
24
+ const minAllowedDate = computed(() => {
25
+ if (minDate === void 0) return new Date(1970, 0, 1);
26
+ if (type === "epoch" && typeof minDate === "number") return new Date(minDate * MILLISECONDS);
27
+ return new Date(minDate);
28
+ });
29
+ const maxAllowedDate = computed(() => {
30
+ if (maxDate === void 0) return;
31
+ if (maxDate === "now") return get$1(now).toDate();
32
+ if (type === "epoch" && typeof maxDate === "number") return new Date(maxDate * MILLISECONDS);
33
+ return new Date(maxDate);
34
+ });
35
+ const segmentData = {
36
+ DD: selectedDay,
37
+ HH: selectedHour,
38
+ MM: selectedMonth,
39
+ SSS: selectedMillisecond,
40
+ YYYY: selectedYear,
41
+ mm: selectedMinute,
42
+ ss: selectedSecond
43
+ };
44
+ const selectedDate = computed({
45
+ get() {
46
+ if (!(isDefined(selectedYear) && isDefined(selectedMonth) && isDefined(selectedDay))) return;
47
+ const date = /* @__PURE__ */ new Date();
48
+ date.setFullYear(get$1(selectedYear));
49
+ date.setDate(1);
50
+ date.setMonth(get$1(selectedMonth) - 1);
51
+ date.setDate(get$1(selectedDay));
52
+ return date;
53
+ },
54
+ set(value) {
55
+ set$1(selectedYear, value?.getFullYear());
56
+ set$1(selectedMonth, value ? value.getMonth() + 1 : void 0);
57
+ set$1(selectedDay, value?.getDate());
58
+ }
59
+ });
60
+ const selectedTime = computed({
61
+ get() {
62
+ if (!(isDefined(selectedHour) && isDefined(selectedMinute))) return;
63
+ const date = /* @__PURE__ */ new Date();
64
+ date.setHours(get$1(selectedHour), get$1(selectedMinute), get$1(selectedSecond) ?? 0, get$1(selectedMillisecond) ?? 0);
65
+ return date;
66
+ },
67
+ set(value) {
68
+ set$1(selectedHour, value?.getHours());
69
+ set$1(selectedMinute, value?.getMinutes());
70
+ set$1(selectedSecond, value?.getSeconds());
71
+ set$1(selectedMillisecond, value?.getMilliseconds());
72
+ }
73
+ });
74
+ const valueSet = computed(() => isDefined(selectedDate) && isDefined(selectedTime));
75
+ function getDateTime() {
76
+ let dateTime = dayjs();
77
+ if (isDefined(selectedYear)) dateTime = dateTime.year(get$1(selectedYear));
78
+ if (isDefined(selectedMonth)) dateTime = dateTime.month(get$1(selectedMonth) - 1);
79
+ if (isDefined(selectedDay)) {
80
+ const daysInMonth = dateTime.daysInMonth();
81
+ const day = Math.min(get$1(selectedDay), daysInMonth);
82
+ dateTime = dateTime.date(day);
83
+ }
84
+ if (isDefined(selectedHour)) dateTime = dateTime.hour(get$1(selectedHour));
85
+ if (isDefined(selectedMinute)) dateTime = dateTime.minute(get$1(selectedMinute));
86
+ if (isDefined(selectedSecond)) dateTime = dateTime.second(get$1(selectedSecond));
87
+ if (isDefined(selectedMillisecond)) dateTime = dateTime.millisecond(get$1(selectedMillisecond));
88
+ return dateTime;
89
+ }
90
+ function isDateValid(date) {
91
+ const min = get$1(minAllowedDate);
92
+ const max = get$1(maxAllowedDate);
93
+ set$1(internalErrorMessages, []);
94
+ if (min && date.isBefore(min)) {
95
+ const errorMessage = t(RUI_I18N_KEYS.dateTimePicker.dateBeforeMin, { date: min.toLocaleDateString() }, `Date cannot be before ${min.toLocaleDateString()}`);
96
+ set$1(internalErrorMessages, [...get$1(internalErrorMessages), errorMessage]);
97
+ return false;
98
+ }
99
+ if (max && date.isAfter(max)) {
100
+ const nowError = t(RUI_I18N_KEYS.dateTimePicker.dateInFuture, "The selected date cannot be in the future");
101
+ const maxError = t(RUI_I18N_KEYS.dateTimePicker.dateAfterMax, { date: max.toLocaleDateString() }, `Date cannot be after ${max.toLocaleDateString()}`);
102
+ const errorMessage = maxDate === "now" ? nowError : maxError;
103
+ set$1(internalErrorMessages, [...get$1(internalErrorMessages), errorMessage]);
104
+ return false;
105
+ }
106
+ return true;
107
+ }
108
+ function emitUpdate(updatedModel) {
109
+ set$1(modelValue, {
110
+ "date": () => updatedModel.toDate(),
111
+ "epoch": () => updatedModel.valueOf() / MILLISECONDS,
112
+ "epoch-ms": () => updatedModel.valueOf()
113
+ }[type]());
114
+ }
115
+ function updateModelValue() {
116
+ if (!isDefined(selectedDate) || !isDefined(selectedTime)) return;
117
+ if (!(isDefined(selectedDate) && isDefined(selectedTime))) set$1(modelValue, void 0);
118
+ else {
119
+ const date = get$1(selectedDate);
120
+ const time = get$1(selectedTime);
121
+ const updatedModel = dayjs.tz(isDefined(modelValue) ? get$1(modelValue) : void 0, get$1(selectedTimezone)).year(date.getFullYear()).month(date.getMonth()).date(date.getDate()).hour(time.getHours()).minute(time.getMinutes()).second(includeSeconds(accuracy) ? time.getSeconds() : 0).millisecond(includeMilliseconds(accuracy) ? time.getMilliseconds() : 0);
122
+ if (!isDateValid(updatedModel)) return;
123
+ emitUpdate(updatedModel);
124
+ }
125
+ }
126
+ function clear() {
127
+ set$1(internalErrorMessages, []);
128
+ set$1(selectedYear, void 0);
129
+ set$1(selectedMonth, void 0);
130
+ set$1(selectedDay, void 0);
131
+ set$1(selectedHour, void 0);
132
+ set$1(selectedMinute, void 0);
133
+ set$1(selectedSecond, void 0);
134
+ set$1(selectedMillisecond, void 0);
135
+ set$1(modelValue, void 0);
136
+ }
137
+ function setNow() {
138
+ set$1(internalErrorMessages, []);
139
+ const date = dayjs();
140
+ set$1(now, date);
141
+ set$1(selectedYear, date.year());
142
+ set$1(selectedMonth, date.month() + 1);
143
+ set$1(selectedDay, date.date());
144
+ set$1(selectedHour, date.hour());
145
+ set$1(selectedMinute, date.minute());
146
+ set$1(selectedSecond, includeSeconds(accuracy) ? date.second() : 0);
147
+ set$1(selectedMillisecond, includeMilliseconds(accuracy) ? date.millisecond() : 0);
148
+ nextTick(() => {
149
+ updateModelValue();
150
+ });
151
+ }
152
+ function updateSegments(date) {
153
+ const year = date.year();
154
+ const month = date.month() + 1;
155
+ const day = date.date();
156
+ const hour = date.hour();
157
+ const minute = date.minute();
158
+ const second = includeSeconds(accuracy) ? date.second() : void 0;
159
+ const millisecond = includeMilliseconds(accuracy) ? date.millisecond() : void 0;
160
+ if (get$1(selectedYear) !== year) set$1(selectedYear, year);
161
+ if (get$1(selectedMonth) !== month) set$1(selectedMonth, month);
162
+ if (get$1(selectedDay) !== day) set$1(selectedDay, day);
163
+ if (get$1(selectedHour) !== hour) set$1(selectedHour, hour);
164
+ if (get$1(selectedMinute) !== minute) set$1(selectedMinute, minute);
165
+ if (get$1(selectedSecond) !== second) set$1(selectedSecond, second);
166
+ if (get$1(selectedMillisecond) !== millisecond) set$1(selectedMillisecond, millisecond);
167
+ }
168
+ const { ignoreUpdates } = watchIgnorable([selectedDate, selectedTime], ([newSelectedDate, newSelectedTime], [prevSelectedDate, prevSelectedTime]) => {
169
+ const currentTimezone = get$1(selectedTimezone);
170
+ const newDate = dayjs.tz(newSelectedDate, currentTimezone);
171
+ const oldDate = dayjs.tz(prevSelectedDate, currentTimezone);
172
+ const newTime = dayjs.tz(newSelectedTime, currentTimezone);
173
+ const oldTime = dayjs.tz(prevSelectedTime, currentTimezone);
174
+ if (newDate.isSame(oldDate) && newTime.isSame(oldTime)) return;
175
+ set$1(now, dayjs());
176
+ updateModelValue();
177
+ });
178
+ function updateInternalModel(value) {
179
+ ignoreUpdates(() => {
180
+ const updatedValue = type === "epoch" && typeof value === "number" ? value * MILLISECONDS : value;
181
+ const date = dayjs.tz(updatedValue, get$1(selectedTimezone));
182
+ isDateValid(date);
183
+ updateSegments(date);
184
+ });
185
+ }
186
+ watch(selectedTimezone, (newTimezone) => {
187
+ if (newTimezone && isDefined(selectedDate) && isDefined(selectedTime)) {
188
+ set$1(now, dayjs());
189
+ updateModelValue();
190
+ }
191
+ });
192
+ watch(modelValue, (value) => {
193
+ set$1(now, dayjs());
194
+ if (value === void 0) clear();
195
+ else updateInternalModel(value);
196
+ });
197
+ onMounted(() => {
198
+ if (isDefined(modelValue)) updateInternalModel(get$1(modelValue));
199
+ else if (!allowEmpty) setNow();
200
+ });
201
+ return {
202
+ clear,
203
+ getDateTime,
204
+ internalErrorMessages,
205
+ isDateValid,
206
+ maxAllowedDate,
207
+ minAllowedDate,
208
+ now,
209
+ segmentData,
210
+ selectedDate,
211
+ selectedDay,
212
+ selectedHour,
213
+ selectedMillisecond,
214
+ selectedMinute,
215
+ selectedMonth,
216
+ selectedSecond,
217
+ selectedTime,
218
+ selectedTimezone,
219
+ selectedYear,
220
+ setNow,
221
+ valueSet
222
+ };
283
223
  }
284
- export {
285
- useDateTimeSelection
286
- };
287
- //# sourceMappingURL=use-date-time-selection.js.map
224
+ //#endregion
225
+ export { useDateTimeSelection };
226
+
227
+ //# sourceMappingURL=use-date-time-selection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-date-time-selection.js","sources":["../../../src/components/date-time-picker/use-date-time-selection.ts"],"sourcesContent":["import type { ComputedRef, Ref, WritableComputedRef } from 'vue';\nimport type { SegmentData } from '@/components/date-time-picker/types';\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport dayjs, { type Dayjs } from 'dayjs';\nimport { guessTimezone, includeMilliseconds, includeSeconds } from '@/components/date-time-picker/utils';\nimport { useRuiI8n } from '@/composables/use-rui-i18n';\nimport { RUI_I18N_KEYS } from '@/i18n/keys';\nimport '@/components/date-time-picker/dayjs-setup';\n\ntype DateTimeModelType = 'date' | 'epoch-ms' | 'epoch';\n\ntype ModelValueType<T extends DateTimeModelType> =\n T extends 'date' ? Date | undefined :\n T extends 'epoch-ms' ? number | undefined :\n T extends 'epoch' ? number | undefined :\n Date | number | undefined;\n\ninterface DateTimeSelectionOptions<T extends DateTimeModelType> {\n modelValue: Ref<ModelValueType<T>>;\n type: T;\n accuracy: TimeAccuracy;\n minDate: Date | number | undefined;\n maxDate: Date | number | 'now' | undefined;\n allowEmpty: boolean;\n}\n\ninterface DateTimeSelectionReturn {\n selectedYear: Ref<number | undefined>;\n selectedMonth: Ref<number | undefined>;\n selectedDay: Ref<number | undefined>;\n selectedHour: Ref<number | undefined>;\n selectedMinute: Ref<number | undefined>;\n selectedSecond: Ref<number | undefined>;\n selectedMillisecond: Ref<number | undefined>;\n selectedTimezone: Ref<string | undefined>;\n selectedDate: WritableComputedRef<Date | undefined>;\n selectedTime: WritableComputedRef<Date | undefined>;\n valueSet: ComputedRef<boolean>;\n internalErrorMessages: Ref<string[]>;\n now: Ref<Dayjs>;\n segmentData: SegmentData;\n minAllowedDate: ComputedRef<Date>;\n maxAllowedDate: ComputedRef<Date | undefined>;\n getDateTime: () => Dayjs;\n setNow: () => void;\n clear: () => void;\n isDateValid: (date: Dayjs) => boolean;\n}\n\nconst MILLISECONDS = 1000;\n\nexport function useDateTimeSelection<T extends DateTimeModelType>(\n options: DateTimeSelectionOptions<T>,\n): DateTimeSelectionReturn {\n const {\n accuracy,\n allowEmpty,\n maxDate,\n minDate,\n modelValue,\n type,\n } = options;\n\n const { t } = useRuiI8n();\n\n const selectedYear = ref<number | undefined>();\n const selectedMonth = ref<number | undefined>();\n const selectedDay = ref<number | undefined>();\n\n const selectedHour = ref<number | undefined>();\n const selectedMinute = ref<number | undefined>();\n const selectedSecond = ref<number | undefined>();\n const selectedMillisecond = ref<number | undefined>();\n const selectedTimezone = ref<string | undefined>(guessTimezone());\n\n const internalErrorMessages = ref<string[]>([]);\n const now = ref<Dayjs>(dayjs.tz(undefined, guessTimezone()));\n\n const minAllowedDate = computed<Date>(() => {\n if (minDate === undefined) {\n return new Date(1970, 0, 1);\n }\n\n if (type === 'epoch' && typeof minDate === 'number') {\n return new Date(minDate * MILLISECONDS);\n }\n\n return new Date(minDate);\n });\n\n const maxAllowedDate = computed<Date | undefined>(() => {\n if (maxDate === undefined) {\n return undefined;\n }\n if (maxDate === 'now') {\n return get(now).toDate();\n }\n if (type === 'epoch' && typeof maxDate === 'number') {\n return new Date(maxDate * MILLISECONDS);\n }\n return new Date(maxDate);\n });\n\n const segmentData: SegmentData = {\n DD: selectedDay,\n HH: selectedHour,\n MM: selectedMonth,\n SSS: selectedMillisecond,\n YYYY: selectedYear,\n mm: selectedMinute,\n ss: selectedSecond,\n };\n\n const selectedDate = computed<Date | undefined>({\n get() {\n if (!(isDefined(selectedYear) && isDefined(selectedMonth) && isDefined(selectedDay))) {\n return undefined;\n }\n const date = new Date();\n date.setFullYear(get(selectedYear));\n // Set day to 1 first to prevent month overflow when today's day > days in target month\n // e.g., if today is Dec 30 and we set month to Feb, day 30 would overflow to March\n date.setDate(1);\n date.setMonth(get(selectedMonth) - 1);\n date.setDate(get(selectedDay));\n return date;\n },\n set(value?: Date) {\n set(selectedYear, value?.getFullYear());\n set(selectedMonth, value ? value.getMonth() + 1 : undefined);\n set(selectedDay, value?.getDate());\n },\n });\n\n const selectedTime = computed<Date | undefined>({\n get() {\n if (!(isDefined(selectedHour) && isDefined(selectedMinute))) {\n return undefined;\n }\n const date = new Date();\n date.setHours(\n get(selectedHour),\n get(selectedMinute),\n get(selectedSecond) ?? 0,\n get(selectedMillisecond) ?? 0,\n );\n return date;\n },\n set(value?: Date) {\n set(selectedHour, value?.getHours());\n set(selectedMinute, value?.getMinutes());\n set(selectedSecond, value?.getSeconds());\n set(selectedMillisecond, value?.getMilliseconds());\n },\n });\n\n const valueSet = computed<boolean>(() => isDefined(selectedDate) && isDefined(selectedTime));\n\n function getDateTime(): Dayjs {\n let dateTime = dayjs();\n\n if (isDefined(selectedYear)) {\n dateTime = dateTime.year(get(selectedYear));\n }\n\n if (isDefined(selectedMonth)) {\n dateTime = dateTime.month(get(selectedMonth) - 1);\n }\n\n if (isDefined(selectedDay)) {\n const daysInMonth = dateTime.daysInMonth();\n const day = Math.min(get(selectedDay), daysInMonth);\n dateTime = dateTime.date(day);\n }\n\n if (isDefined(selectedHour)) {\n dateTime = dateTime.hour(get(selectedHour));\n }\n\n if (isDefined(selectedMinute)) {\n dateTime = dateTime.minute(get(selectedMinute));\n }\n\n if (isDefined(selectedSecond)) {\n dateTime = dateTime.second(get(selectedSecond));\n }\n\n if (isDefined(selectedMillisecond)) {\n dateTime = dateTime.millisecond(get(selectedMillisecond));\n }\n\n return dateTime;\n }\n\n function isDateValid(date: Dayjs): boolean {\n const min = get(minAllowedDate);\n const max = get(maxAllowedDate);\n\n set(internalErrorMessages, []);\n\n if (min && date.isBefore(min)) {\n const errorMessage = t(RUI_I18N_KEYS.dateTimePicker.dateBeforeMin, {\n date: min.toLocaleDateString(),\n }, `Date cannot be before ${min.toLocaleDateString()}`);\n set(internalErrorMessages, [...get(internalErrorMessages), errorMessage]);\n return false;\n }\n\n if (max && date.isAfter(max)) {\n const nowError = t(RUI_I18N_KEYS.dateTimePicker.dateInFuture, 'The selected date cannot be in the future');\n const maxError = t(RUI_I18N_KEYS.dateTimePicker.dateAfterMax, { date: max.toLocaleDateString() }, `Date cannot be after ${max.toLocaleDateString()}`);\n const errorMessage = maxDate === 'now' ? nowError : maxError;\n set(internalErrorMessages, [...get(internalErrorMessages), errorMessage]);\n return false;\n }\n\n return true;\n }\n\n function emitUpdate(updatedModel: Dayjs): void {\n const typeMap = {\n 'date': () => updatedModel.toDate(),\n 'epoch': () => updatedModel.valueOf() / MILLISECONDS,\n 'epoch-ms': () => updatedModel.valueOf(),\n } as const;\n\n set(modelValue, typeMap[type]() as ModelValueType<T>);\n }\n\n function updateModelValue(): void {\n if (!isDefined(selectedDate) || !isDefined(selectedTime)) {\n return;\n }\n\n if (!(isDefined(selectedDate) && isDefined(selectedTime))) {\n set(modelValue, undefined as ModelValueType<T>);\n }\n else {\n const date = get(selectedDate);\n const time = get(selectedTime);\n\n const updatedModel = dayjs.tz(isDefined(modelValue) ? get(modelValue) : undefined, get(selectedTimezone))\n .year(date.getFullYear())\n .month(date.getMonth())\n .date(date.getDate())\n .hour(time.getHours())\n .minute(time.getMinutes())\n .second(includeSeconds(accuracy) ? time.getSeconds() : 0)\n .millisecond(includeMilliseconds(accuracy) ? time.getMilliseconds() : 0);\n\n if (!isDateValid(updatedModel)) {\n return;\n }\n\n emitUpdate(updatedModel);\n }\n }\n\n function clear(): void {\n set(internalErrorMessages, []);\n set(selectedYear, undefined);\n set(selectedMonth, undefined);\n set(selectedDay, undefined);\n set(selectedHour, undefined);\n set(selectedMinute, undefined);\n set(selectedSecond, undefined);\n set(selectedMillisecond, undefined);\n set(modelValue, undefined as ModelValueType<T>);\n }\n\n function setNow(): void {\n set(internalErrorMessages, []);\n\n const date = dayjs();\n set(now, date);\n set(selectedYear, date.year());\n set(selectedMonth, date.month() + 1);\n set(selectedDay, date.date());\n set(selectedHour, date.hour());\n set(selectedMinute, date.minute());\n set(selectedSecond, includeSeconds(accuracy) ? date.second() : 0);\n set(selectedMillisecond, includeMilliseconds(accuracy) ? date.millisecond() : 0);\n\n nextTick(() => {\n updateModelValue();\n });\n }\n\n function updateSegments(date: Dayjs): void {\n const year = date.year();\n const month = date.month() + 1;\n const day = date.date();\n const hour = date.hour();\n const minute = date.minute();\n const second = includeSeconds(accuracy) ? date.second() : undefined;\n const millisecond = includeMilliseconds(accuracy) ? date.millisecond() : undefined;\n\n if (get(selectedYear) !== year)\n set(selectedYear, year);\n if (get(selectedMonth) !== month)\n set(selectedMonth, month);\n if (get(selectedDay) !== day)\n set(selectedDay, day);\n if (get(selectedHour) !== hour)\n set(selectedHour, hour);\n if (get(selectedMinute) !== minute)\n set(selectedMinute, minute);\n if (get(selectedSecond) !== second)\n set(selectedSecond, second);\n if (get(selectedMillisecond) !== millisecond)\n set(selectedMillisecond, millisecond);\n }\n\n const { ignoreUpdates } = watchIgnorable([selectedDate, selectedTime], ([newSelectedDate, newSelectedTime], [prevSelectedDate, prevSelectedTime]) => {\n const currentTimezone = get(selectedTimezone);\n const newDate = dayjs.tz(newSelectedDate, currentTimezone);\n const oldDate = dayjs.tz(prevSelectedDate, currentTimezone);\n const newTime = dayjs.tz(newSelectedTime, currentTimezone);\n const oldTime = dayjs.tz(prevSelectedTime, currentTimezone);\n\n if (newDate.isSame(oldDate) && newTime.isSame(oldTime)) {\n return;\n }\n\n set(now, dayjs());\n updateModelValue();\n });\n\n function updateInternalModel(value: ModelValueType<T>): void {\n ignoreUpdates(() => {\n const updatedValue = type === 'epoch' && typeof value === 'number'\n ? value * MILLISECONDS\n : value;\n const date = dayjs.tz(updatedValue, get(selectedTimezone));\n isDateValid(date);\n updateSegments(date);\n });\n }\n\n watch(selectedTimezone, (newTimezone: string | undefined) => {\n if (newTimezone && isDefined(selectedDate) && isDefined(selectedTime)) {\n set(now, dayjs());\n updateModelValue();\n }\n });\n\n watch(modelValue, (value) => {\n set(now, dayjs());\n if (value === undefined) {\n clear();\n }\n else {\n updateInternalModel(value);\n }\n });\n\n onMounted(() => {\n if (isDefined(modelValue)) {\n updateInternalModel(get(modelValue));\n }\n else if (!allowEmpty) {\n setNow();\n }\n });\n\n return {\n clear,\n getDateTime,\n internalErrorMessages,\n isDateValid,\n maxAllowedDate,\n minAllowedDate,\n now,\n segmentData,\n selectedDate,\n selectedDay,\n selectedHour,\n selectedMillisecond,\n selectedMinute,\n selectedMonth,\n selectedSecond,\n selectedTime,\n selectedTimezone,\n selectedYear,\n setNow,\n valueSet,\n };\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-date-time-selection.js","names":[],"sources":["../../../src/components/date-time-picker/use-date-time-selection.ts"],"sourcesContent":["import type { ComputedRef, Ref, WritableComputedRef } from 'vue';\nimport type { SegmentData } from '@/components/date-time-picker/types';\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport dayjs, { type Dayjs } from 'dayjs';\nimport { guessTimezone, includeMilliseconds, includeSeconds } from '@/components/date-time-picker/utils';\nimport { useRuiI8n } from '@/composables/use-rui-i18n';\nimport { RUI_I18N_KEYS } from '@/i18n/keys';\nimport '@/components/date-time-picker/dayjs-setup';\n\ntype DateTimeModelType = 'date' | 'epoch-ms' | 'epoch';\n\ntype ModelValueType<T extends DateTimeModelType> =\n T extends 'date' ? Date | undefined :\n T extends 'epoch-ms' ? number | undefined :\n T extends 'epoch' ? number | undefined :\n Date | number | undefined;\n\ninterface DateTimeSelectionOptions<T extends DateTimeModelType> {\n modelValue: Ref<ModelValueType<T>>;\n type: T;\n accuracy: TimeAccuracy;\n minDate: Date | number | undefined;\n maxDate: Date | number | 'now' | undefined;\n allowEmpty: boolean;\n}\n\ninterface DateTimeSelectionReturn {\n selectedYear: Ref<number | undefined>;\n selectedMonth: Ref<number | undefined>;\n selectedDay: Ref<number | undefined>;\n selectedHour: Ref<number | undefined>;\n selectedMinute: Ref<number | undefined>;\n selectedSecond: Ref<number | undefined>;\n selectedMillisecond: Ref<number | undefined>;\n selectedTimezone: Ref<string | undefined>;\n selectedDate: WritableComputedRef<Date | undefined>;\n selectedTime: WritableComputedRef<Date | undefined>;\n valueSet: ComputedRef<boolean>;\n internalErrorMessages: Ref<string[]>;\n now: Ref<Dayjs>;\n segmentData: SegmentData;\n minAllowedDate: ComputedRef<Date>;\n maxAllowedDate: ComputedRef<Date | undefined>;\n getDateTime: () => Dayjs;\n setNow: () => void;\n clear: () => void;\n isDateValid: (date: Dayjs) => boolean;\n}\n\nconst MILLISECONDS = 1000;\n\nexport function useDateTimeSelection<T extends DateTimeModelType>(\n options: DateTimeSelectionOptions<T>,\n): DateTimeSelectionReturn {\n const {\n accuracy,\n allowEmpty,\n maxDate,\n minDate,\n modelValue,\n type,\n } = options;\n\n const { t } = useRuiI8n();\n\n const selectedYear = ref<number | undefined>();\n const selectedMonth = ref<number | undefined>();\n const selectedDay = ref<number | undefined>();\n\n const selectedHour = ref<number | undefined>();\n const selectedMinute = ref<number | undefined>();\n const selectedSecond = ref<number | undefined>();\n const selectedMillisecond = ref<number | undefined>();\n const selectedTimezone = ref<string | undefined>(guessTimezone());\n\n const internalErrorMessages = ref<string[]>([]);\n const now = ref<Dayjs>(dayjs.tz(undefined, guessTimezone()));\n\n const minAllowedDate = computed<Date>(() => {\n if (minDate === undefined) {\n return new Date(1970, 0, 1);\n }\n\n if (type === 'epoch' && typeof minDate === 'number') {\n return new Date(minDate * MILLISECONDS);\n }\n\n return new Date(minDate);\n });\n\n const maxAllowedDate = computed<Date | undefined>(() => {\n if (maxDate === undefined) {\n return undefined;\n }\n if (maxDate === 'now') {\n return get(now).toDate();\n }\n if (type === 'epoch' && typeof maxDate === 'number') {\n return new Date(maxDate * MILLISECONDS);\n }\n return new Date(maxDate);\n });\n\n const segmentData: SegmentData = {\n DD: selectedDay,\n HH: selectedHour,\n MM: selectedMonth,\n SSS: selectedMillisecond,\n YYYY: selectedYear,\n mm: selectedMinute,\n ss: selectedSecond,\n };\n\n const selectedDate = computed<Date | undefined>({\n get() {\n if (!(isDefined(selectedYear) && isDefined(selectedMonth) && isDefined(selectedDay))) {\n return undefined;\n }\n const date = new Date();\n date.setFullYear(get(selectedYear));\n // Set day to 1 first to prevent month overflow when today's day > days in target month\n // e.g., if today is Dec 30 and we set month to Feb, day 30 would overflow to March\n date.setDate(1);\n date.setMonth(get(selectedMonth) - 1);\n date.setDate(get(selectedDay));\n return date;\n },\n set(value?: Date) {\n set(selectedYear, value?.getFullYear());\n set(selectedMonth, value ? value.getMonth() + 1 : undefined);\n set(selectedDay, value?.getDate());\n },\n });\n\n const selectedTime = computed<Date | undefined>({\n get() {\n if (!(isDefined(selectedHour) && isDefined(selectedMinute))) {\n return undefined;\n }\n const date = new Date();\n date.setHours(\n get(selectedHour),\n get(selectedMinute),\n get(selectedSecond) ?? 0,\n get(selectedMillisecond) ?? 0,\n );\n return date;\n },\n set(value?: Date) {\n set(selectedHour, value?.getHours());\n set(selectedMinute, value?.getMinutes());\n set(selectedSecond, value?.getSeconds());\n set(selectedMillisecond, value?.getMilliseconds());\n },\n });\n\n const valueSet = computed<boolean>(() => isDefined(selectedDate) && isDefined(selectedTime));\n\n function getDateTime(): Dayjs {\n let dateTime = dayjs();\n\n if (isDefined(selectedYear)) {\n dateTime = dateTime.year(get(selectedYear));\n }\n\n if (isDefined(selectedMonth)) {\n dateTime = dateTime.month(get(selectedMonth) - 1);\n }\n\n if (isDefined(selectedDay)) {\n const daysInMonth = dateTime.daysInMonth();\n const day = Math.min(get(selectedDay), daysInMonth);\n dateTime = dateTime.date(day);\n }\n\n if (isDefined(selectedHour)) {\n dateTime = dateTime.hour(get(selectedHour));\n }\n\n if (isDefined(selectedMinute)) {\n dateTime = dateTime.minute(get(selectedMinute));\n }\n\n if (isDefined(selectedSecond)) {\n dateTime = dateTime.second(get(selectedSecond));\n }\n\n if (isDefined(selectedMillisecond)) {\n dateTime = dateTime.millisecond(get(selectedMillisecond));\n }\n\n return dateTime;\n }\n\n function isDateValid(date: Dayjs): boolean {\n const min = get(minAllowedDate);\n const max = get(maxAllowedDate);\n\n set(internalErrorMessages, []);\n\n if (min && date.isBefore(min)) {\n const errorMessage = t(RUI_I18N_KEYS.dateTimePicker.dateBeforeMin, {\n date: min.toLocaleDateString(),\n }, `Date cannot be before ${min.toLocaleDateString()}`);\n set(internalErrorMessages, [...get(internalErrorMessages), errorMessage]);\n return false;\n }\n\n if (max && date.isAfter(max)) {\n const nowError = t(RUI_I18N_KEYS.dateTimePicker.dateInFuture, 'The selected date cannot be in the future');\n const maxError = t(RUI_I18N_KEYS.dateTimePicker.dateAfterMax, { date: max.toLocaleDateString() }, `Date cannot be after ${max.toLocaleDateString()}`);\n const errorMessage = maxDate === 'now' ? nowError : maxError;\n set(internalErrorMessages, [...get(internalErrorMessages), errorMessage]);\n return false;\n }\n\n return true;\n }\n\n function emitUpdate(updatedModel: Dayjs): void {\n const typeMap = {\n 'date': () => updatedModel.toDate(),\n 'epoch': () => updatedModel.valueOf() / MILLISECONDS,\n 'epoch-ms': () => updatedModel.valueOf(),\n } as const;\n\n set(modelValue, typeMap[type]() as ModelValueType<T>);\n }\n\n function updateModelValue(): void {\n if (!isDefined(selectedDate) || !isDefined(selectedTime)) {\n return;\n }\n\n if (!(isDefined(selectedDate) && isDefined(selectedTime))) {\n set(modelValue, undefined as ModelValueType<T>);\n }\n else {\n const date = get(selectedDate);\n const time = get(selectedTime);\n\n const updatedModel = dayjs.tz(isDefined(modelValue) ? get(modelValue) : undefined, get(selectedTimezone))\n .year(date.getFullYear())\n .month(date.getMonth())\n .date(date.getDate())\n .hour(time.getHours())\n .minute(time.getMinutes())\n .second(includeSeconds(accuracy) ? time.getSeconds() : 0)\n .millisecond(includeMilliseconds(accuracy) ? time.getMilliseconds() : 0);\n\n if (!isDateValid(updatedModel)) {\n return;\n }\n\n emitUpdate(updatedModel);\n }\n }\n\n function clear(): void {\n set(internalErrorMessages, []);\n set(selectedYear, undefined);\n set(selectedMonth, undefined);\n set(selectedDay, undefined);\n set(selectedHour, undefined);\n set(selectedMinute, undefined);\n set(selectedSecond, undefined);\n set(selectedMillisecond, undefined);\n set(modelValue, undefined as ModelValueType<T>);\n }\n\n function setNow(): void {\n set(internalErrorMessages, []);\n\n const date = dayjs();\n set(now, date);\n set(selectedYear, date.year());\n set(selectedMonth, date.month() + 1);\n set(selectedDay, date.date());\n set(selectedHour, date.hour());\n set(selectedMinute, date.minute());\n set(selectedSecond, includeSeconds(accuracy) ? date.second() : 0);\n set(selectedMillisecond, includeMilliseconds(accuracy) ? date.millisecond() : 0);\n\n nextTick(() => {\n updateModelValue();\n });\n }\n\n function updateSegments(date: Dayjs): void {\n const year = date.year();\n const month = date.month() + 1;\n const day = date.date();\n const hour = date.hour();\n const minute = date.minute();\n const second = includeSeconds(accuracy) ? date.second() : undefined;\n const millisecond = includeMilliseconds(accuracy) ? date.millisecond() : undefined;\n\n if (get(selectedYear) !== year)\n set(selectedYear, year);\n if (get(selectedMonth) !== month)\n set(selectedMonth, month);\n if (get(selectedDay) !== day)\n set(selectedDay, day);\n if (get(selectedHour) !== hour)\n set(selectedHour, hour);\n if (get(selectedMinute) !== minute)\n set(selectedMinute, minute);\n if (get(selectedSecond) !== second)\n set(selectedSecond, second);\n if (get(selectedMillisecond) !== millisecond)\n set(selectedMillisecond, millisecond);\n }\n\n const { ignoreUpdates } = watchIgnorable([selectedDate, selectedTime], ([newSelectedDate, newSelectedTime], [prevSelectedDate, prevSelectedTime]) => {\n const currentTimezone = get(selectedTimezone);\n const newDate = dayjs.tz(newSelectedDate, currentTimezone);\n const oldDate = dayjs.tz(prevSelectedDate, currentTimezone);\n const newTime = dayjs.tz(newSelectedTime, currentTimezone);\n const oldTime = dayjs.tz(prevSelectedTime, currentTimezone);\n\n if (newDate.isSame(oldDate) && newTime.isSame(oldTime)) {\n return;\n }\n\n set(now, dayjs());\n updateModelValue();\n });\n\n function updateInternalModel(value: ModelValueType<T>): void {\n ignoreUpdates(() => {\n const updatedValue = type === 'epoch' && typeof value === 'number'\n ? value * MILLISECONDS\n : value;\n const date = dayjs.tz(updatedValue, get(selectedTimezone));\n isDateValid(date);\n updateSegments(date);\n });\n }\n\n watch(selectedTimezone, (newTimezone: string | undefined) => {\n if (newTimezone && isDefined(selectedDate) && isDefined(selectedTime)) {\n set(now, dayjs());\n updateModelValue();\n }\n });\n\n watch(modelValue, (value) => {\n set(now, dayjs());\n if (value === undefined) {\n clear();\n }\n else {\n updateInternalModel(value);\n }\n });\n\n onMounted(() => {\n if (isDefined(modelValue)) {\n updateInternalModel(get(modelValue));\n }\n else if (!allowEmpty) {\n setNow();\n }\n });\n\n return {\n clear,\n getDateTime,\n internalErrorMessages,\n isDateValid,\n maxAllowedDate,\n minAllowedDate,\n now,\n segmentData,\n selectedDate,\n selectedDay,\n selectedHour,\n selectedMillisecond,\n selectedMinute,\n selectedMonth,\n selectedSecond,\n selectedTime,\n selectedTimezone,\n selectedYear,\n setNow,\n valueSet,\n };\n}\n"],"mappings":"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"}