@rotki/ui-library 2.20.2 → 2.22.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 (333) hide show
  1. package/dist/__test__/options.d.ts +7 -0
  2. package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js +1 -1
  3. package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js.map +1 -1
  4. package/dist/components/accordions/accordions/RuiAccordions.vue_vue_type_script_setup_true_lang.js +2 -2
  5. package/dist/components/accordions/accordions/RuiAccordions.vue_vue_type_script_setup_true_lang.js.map +1 -1
  6. package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js +1 -1
  7. package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js.map +1 -1
  8. package/dist/components/avatars/RuiAvatar.vue_vue_type_script_setup_true_lang.js +1 -1
  9. package/dist/components/avatars/RuiAvatar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  10. package/dist/components/avatars/RuiAvatarGroup.vue_vue_type_script_setup_true_lang.js +1 -1
  11. package/dist/components/avatars/RuiAvatarGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  12. package/dist/components/avatars/avatar-props.js +1 -1
  13. package/dist/components/avatars/avatar-props.js.map +1 -1
  14. package/dist/components/avatars/use-avatar-group.js.map +1 -1
  15. package/dist/components/buttons/button/RuiButton.js.map +1 -1
  16. package/dist/components/buttons/button/RuiButton.vue.d.ts +2 -2
  17. package/dist/components/buttons/button/RuiButton.vue_vue_type_script_setup_true_lang.js +3 -3
  18. package/dist/components/buttons/button/RuiButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  19. package/dist/components/buttons/button/button-props.js.map +1 -1
  20. package/dist/components/buttons/button/button-styles.js.map +1 -1
  21. package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js +2 -2
  22. package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  23. package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js +3 -3
  24. package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  25. package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js +2 -2
  26. package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js.map +1 -1
  27. package/dist/components/calendar/RuiCalendarHeader.vue_vue_type_script_setup_true_lang.js +3 -3
  28. package/dist/components/calendar/RuiCalendarHeader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  29. package/dist/components/calendar/RuiCalendarMenu.js.map +1 -1
  30. package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js +6 -4
  31. package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
  32. package/dist/components/calendar/state.js.map +1 -1
  33. package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js +1 -1
  34. package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js.map +1 -1
  35. package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js +1 -1
  36. package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  37. package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js +1 -1
  38. package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  39. package/dist/components/chips/chip-props.js.map +1 -1
  40. package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js +1 -1
  41. package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js.map +1 -1
  42. package/dist/components/color-picker/RuiColorDisplay.vue_vue_type_script_setup_true_lang.js +1 -1
  43. package/dist/components/color-picker/RuiColorDisplay.vue_vue_type_script_setup_true_lang.js.map +1 -1
  44. package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js +1 -1
  45. package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js.map +1 -1
  46. package/dist/components/color-picker/RuiColorInput.vue_vue_type_script_setup_true_lang.js +1 -1
  47. package/dist/components/color-picker/RuiColorInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  48. package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js +1 -1
  49. package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  50. package/dist/components/color-picker/utils.js.map +1 -1
  51. package/dist/components/date-time-picker/RuiDateTimePicker.js.map +1 -1
  52. package/dist/components/date-time-picker/RuiDateTimePicker.vue_vue_type_script_setup_true_lang.js +5 -3
  53. package/dist/components/date-time-picker/RuiDateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  54. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js +3 -3
  55. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
  56. package/dist/components/date-time-picker/RuiTimezoneSelect.vue_vue_type_script_setup_true_lang.js +2 -2
  57. package/dist/components/date-time-picker/RuiTimezoneSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  58. package/dist/components/date-time-picker/date-time-picker-styles.js.map +1 -1
  59. package/dist/components/date-time-picker/dayjs-setup.js.map +1 -1
  60. package/dist/components/date-time-picker/segment-config.js.map +1 -1
  61. package/dist/components/date-time-picker/segment-utils.js.map +1 -1
  62. package/dist/components/date-time-picker/timezones.js.map +1 -1
  63. package/dist/components/date-time-picker/types.js +1 -1
  64. package/dist/components/date-time-picker/types.js.map +1 -1
  65. package/dist/components/date-time-picker/use-date-time-selection.js +2 -2
  66. package/dist/components/date-time-picker/use-date-time-selection.js.map +1 -1
  67. package/dist/components/date-time-picker/use-input-handler.js.map +1 -1
  68. package/dist/components/date-time-picker/use-keyboard-handler.js.map +1 -1
  69. package/dist/components/date-time-picker/utils.js.map +1 -1
  70. package/dist/components/divider/RuiDivider.vue_vue_type_script_setup_true_lang.js +1 -1
  71. package/dist/components/divider/RuiDivider.vue_vue_type_script_setup_true_lang.js.map +1 -1
  72. package/dist/components/forms/auto-complete/RuiAutoComplete.js.map +1 -1
  73. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.d.ts +26 -2
  74. package/dist/components/forms/auto-complete/RuiAutoComplete.vue_vue_type_script_setup_true_lang.js +150 -54
  75. package/dist/components/forms/auto-complete/RuiAutoComplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  76. package/dist/components/forms/auto-complete/auto-complete-styles.js.map +1 -1
  77. package/dist/components/forms/category-picker/RuiCategoryPicker.js +7 -0
  78. package/dist/components/forms/category-picker/RuiCategoryPicker.js.map +1 -0
  79. package/dist/components/forms/category-picker/RuiCategoryPicker.vue.d.ts +134 -0
  80. package/dist/components/forms/category-picker/RuiCategoryPicker.vue_vue_type_script_setup_true_lang.js +561 -0
  81. package/dist/components/forms/category-picker/RuiCategoryPicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  82. package/dist/components/forms/category-picker/category-picker-styles.d.ts +432 -0
  83. package/dist/components/forms/category-picker/category-picker-styles.js +59 -0
  84. package/dist/components/forms/category-picker/category-picker-styles.js.map +1 -0
  85. package/dist/components/forms/check-control-styles.js.map +1 -1
  86. package/dist/components/forms/checkbox/RuiCheckbox.vue_vue_type_script_setup_true_lang.js +2 -2
  87. package/dist/components/forms/checkbox/RuiCheckbox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  88. package/dist/components/forms/checkbox/checkbox-group/RuiCheckboxGroup.vue_vue_type_script_setup_true_lang.js +2 -2
  89. package/dist/components/forms/checkbox/checkbox-group/RuiCheckboxGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  90. package/dist/components/forms/checkbox/checkbox-group/context.js.map +1 -1
  91. package/dist/components/forms/file-upload/RuiFileUpload.js +7 -0
  92. package/dist/components/forms/file-upload/RuiFileUpload.js.map +1 -0
  93. package/dist/components/forms/file-upload/RuiFileUpload.vue.d.ts +61 -0
  94. package/dist/components/forms/file-upload/RuiFileUpload.vue_vue_type_script_setup_true_lang.js +269 -0
  95. package/dist/components/forms/file-upload/RuiFileUpload.vue_vue_type_script_setup_true_lang.js.map +1 -0
  96. package/dist/components/forms/radio-button/radio/RuiRadio.vue_vue_type_script_setup_true_lang.js +2 -2
  97. package/dist/components/forms/radio-button/radio/RuiRadio.vue_vue_type_script_setup_true_lang.js.map +1 -1
  98. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue_vue_type_script_setup_true_lang.js +2 -2
  99. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  100. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue_vue_type_script_setup_true_lang.js +2 -2
  101. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  102. package/dist/components/forms/select/RuiMenuSelect.js.map +1 -1
  103. package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js +9 -3
  104. package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  105. package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js +2 -2
  106. package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js.map +1 -1
  107. package/dist/components/forms/select/menu-select-styles.js.map +1 -1
  108. package/dist/components/forms/slider/RuiSlider.vue_vue_type_script_setup_true_lang.js +2 -2
  109. package/dist/components/forms/slider/RuiSlider.vue_vue_type_script_setup_true_lang.js.map +1 -1
  110. package/dist/components/forms/slider/slider-styles.js.map +1 -1
  111. package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js +2 -2
  112. package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -1
  113. package/dist/components/forms/text-area/RuiTextArea.vue_vue_type_script_setup_true_lang.js +3 -3
  114. package/dist/components/forms/text-area/RuiTextArea.vue_vue_type_script_setup_true_lang.js.map +1 -1
  115. package/dist/components/forms/text-area/text-area-styles.js.map +1 -1
  116. package/dist/components/forms/text-field/RuiTextField.vue_vue_type_script_setup_true_lang.js +3 -3
  117. package/dist/components/forms/text-field/RuiTextField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  118. package/dist/components/forms/text-field/text-field-styles.js.map +1 -1
  119. package/dist/components/forms/text-input-styles.js.map +1 -1
  120. package/dist/components/helpers/RuiFormTextDetail.vue_vue_type_script_setup_true_lang.js +1 -1
  121. package/dist/components/helpers/RuiFormTextDetail.vue_vue_type_script_setup_true_lang.js.map +1 -1
  122. package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js +1 -1
  123. package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js.map +1 -1
  124. package/dist/components/index.d.ts +4 -2
  125. package/dist/components/index.js +4 -2
  126. package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js +1 -1
  127. package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js.map +1 -1
  128. package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js +1 -1
  129. package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  130. package/dist/components/loaders/skeleton-type.js.map +1 -1
  131. package/dist/components/logos/RuiLogo.vue_vue_type_script_setup_true_lang.js +1 -1
  132. package/dist/components/logos/RuiLogo.vue_vue_type_script_setup_true_lang.js.map +1 -1
  133. package/dist/components/logos/use-logo-sources.js.map +1 -1
  134. package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js +1 -1
  135. package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js.map +1 -1
  136. package/dist/components/overlays/badge/badge-props.js.map +1 -1
  137. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue_vue_type_script_setup_true_lang.js +2 -2
  138. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue_vue_type_script_setup_true_lang.js.map +1 -1
  139. package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js +3 -3
  140. package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  141. package/dist/components/overlays/menu/RuiMenu.js.map +1 -1
  142. package/dist/components/overlays/menu/RuiMenu.vue.d.ts +6 -0
  143. package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js +5 -4
  144. package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
  145. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js +3 -3
  146. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  147. package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js +2 -2
  148. package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js.map +1 -1
  149. package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js +1 -1
  150. package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  151. package/dist/components/overlays/tooltip/tooltip-styles.js.map +1 -1
  152. package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js +1 -1
  153. package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js.map +1 -1
  154. package/dist/components/progress/progress-props.js.map +1 -1
  155. package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js +2 -2
  156. package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js.map +1 -1
  157. package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js +1 -1
  158. package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js.map +1 -1
  159. package/dist/components/steppers/RuiStepperCustomIcon.vue_vue_type_script_setup_true_lang.js +1 -1
  160. package/dist/components/steppers/RuiStepperCustomIcon.vue_vue_type_script_setup_true_lang.js.map +1 -1
  161. package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js +1 -1
  162. package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js.map +1 -1
  163. package/dist/components/steppers/footer-stepper-variant.js.map +1 -1
  164. package/dist/components/tables/RuiDataTable.js.map +1 -1
  165. package/dist/components/tables/RuiDataTable.vue.d.ts +23 -2
  166. package/dist/components/tables/RuiDataTable.vue_vue_type_script_setup_true_lang.js +186 -217
  167. package/dist/components/tables/RuiDataTable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  168. package/dist/components/tables/RuiExpandButton.vue_vue_type_script_setup_true_lang.js +1 -1
  169. package/dist/components/tables/RuiExpandButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  170. package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js +1 -1
  171. package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -1
  172. package/dist/components/tables/RuiTableHead.js.map +1 -1
  173. package/dist/components/tables/RuiTableHead.vue.d.ts +11 -1
  174. package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js +1 -2
  175. package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js.map +1 -1
  176. package/dist/components/tables/RuiTablePagination.js.map +1 -1
  177. package/dist/components/tables/RuiTablePagination.vue.d.ts +5 -0
  178. package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js +24 -8
  179. package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
  180. package/dist/components/tables/data-table/RuiDataTableBody.js +7 -0
  181. package/dist/components/tables/data-table/RuiDataTableBody.js.map +1 -0
  182. package/dist/components/tables/data-table/RuiDataTableBody.vue.d.ts +55 -0
  183. package/dist/components/tables/data-table/RuiDataTableBody.vue_vue_type_script_setup_true_lang.js +78 -0
  184. package/dist/components/tables/data-table/RuiDataTableBody.vue_vue_type_script_setup_true_lang.js.map +1 -0
  185. package/dist/components/tables/data-table/RuiDataTableCell.js +7 -0
  186. package/dist/components/tables/data-table/RuiDataTableCell.js.map +1 -0
  187. package/dist/components/tables/data-table/RuiDataTableCell.vue.d.ts +30 -0
  188. package/dist/components/tables/data-table/RuiDataTableCell.vue_vue_type_script_setup_true_lang.js +54 -0
  189. package/dist/components/tables/data-table/RuiDataTableCell.vue_vue_type_script_setup_true_lang.js.map +1 -0
  190. package/dist/components/tables/data-table/RuiDataTableEmptyRow.js +7 -0
  191. package/dist/components/tables/data-table/RuiDataTableEmptyRow.js.map +1 -0
  192. package/dist/components/tables/data-table/RuiDataTableEmptyRow.vue.d.ts +19 -0
  193. package/dist/components/tables/data-table/RuiDataTableEmptyRow.vue_vue_type_script_setup_true_lang.js +43 -0
  194. package/dist/components/tables/data-table/RuiDataTableEmptyRow.vue_vue_type_script_setup_true_lang.js.map +1 -0
  195. package/dist/components/tables/data-table/RuiDataTableExpandedRow.js +7 -0
  196. package/dist/components/tables/data-table/RuiDataTableExpandedRow.js.map +1 -0
  197. package/dist/components/tables/data-table/RuiDataTableExpandedRow.vue.d.ts +26 -0
  198. package/dist/components/tables/data-table/RuiDataTableExpandedRow.vue_vue_type_script_setup_true_lang.js +31 -0
  199. package/dist/components/tables/data-table/RuiDataTableExpandedRow.vue_vue_type_script_setup_true_lang.js.map +1 -0
  200. package/dist/components/tables/data-table/RuiDataTableGroupRow.js +7 -0
  201. package/dist/components/tables/data-table/RuiDataTableGroupRow.js.map +1 -0
  202. package/dist/components/tables/data-table/RuiDataTableGroupRow.vue.d.ts +32 -0
  203. package/dist/components/tables/data-table/RuiDataTableGroupRow.vue_vue_type_script_setup_true_lang.js +85 -0
  204. package/dist/components/tables/data-table/RuiDataTableGroupRow.vue_vue_type_script_setup_true_lang.js.map +1 -0
  205. package/dist/components/tables/data-table/RuiDataTableLoadingRow.js +7 -0
  206. package/dist/components/tables/data-table/RuiDataTableLoadingRow.js.map +1 -0
  207. package/dist/components/tables/data-table/RuiDataTableLoadingRow.vue.d.ts +3 -0
  208. package/dist/components/tables/data-table/RuiDataTableLoadingRow.vue_vue_type_script_setup_true_lang.js +26 -0
  209. package/dist/components/tables/data-table/RuiDataTableLoadingRow.vue_vue_type_script_setup_true_lang.js.map +1 -0
  210. package/dist/components/tables/data-table/RuiDataTableMobileSort.js +7 -0
  211. package/dist/components/tables/data-table/RuiDataTableMobileSort.js.map +1 -0
  212. package/dist/components/tables/data-table/RuiDataTableMobileSort.vue.d.ts +33 -0
  213. package/dist/components/tables/data-table/RuiDataTableMobileSort.vue_vue_type_script_setup_true_lang.js +101 -0
  214. package/dist/components/tables/data-table/RuiDataTableMobileSort.vue_vue_type_script_setup_true_lang.js.map +1 -0
  215. package/dist/components/tables/data-table/RuiDataTableRow.js +7 -0
  216. package/dist/components/tables/data-table/RuiDataTableRow.js.map +1 -0
  217. package/dist/components/tables/data-table/RuiDataTableRow.vue.d.ts +31 -0
  218. package/dist/components/tables/data-table/RuiDataTableRow.vue_vue_type_script_setup_true_lang.js +142 -0
  219. package/dist/components/tables/data-table/RuiDataTableRow.vue_vue_type_script_setup_true_lang.js.map +1 -0
  220. package/dist/components/tables/data-table/context.d.ts +73 -0
  221. package/dist/components/tables/data-table/context.js +100 -0
  222. package/dist/components/tables/data-table/context.js.map +1 -0
  223. package/dist/components/tables/data-table-styles.d.ts +30 -1
  224. package/dist/components/tables/data-table-styles.js +9 -2
  225. package/dist/components/tables/data-table-styles.js.map +1 -1
  226. package/dist/components/tables/table-props.d.ts +5 -0
  227. package/dist/components/tables/table-props.js +5 -1
  228. package/dist/components/tables/table-props.js.map +1 -1
  229. package/dist/components/tables/use-pagination-navigation.js.map +1 -1
  230. package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js +1 -1
  231. package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js.map +1 -1
  232. package/dist/components/tabs/tab/use-tab-link.js.map +1 -1
  233. package/dist/components/tabs/tab-item/RuiTabItem.vue_vue_type_script_setup_true_lang.js +1 -1
  234. package/dist/components/tabs/tab-item/RuiTabItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  235. package/dist/components/tabs/tab-items/RuiTabItems.js.map +1 -1
  236. package/dist/components/tabs/tab-items/RuiTabItems.vue_vue_type_script_setup_true_lang.js +2 -2
  237. package/dist/components/tabs/tab-items/RuiTabItems.vue_vue_type_script_setup_true_lang.js.map +1 -1
  238. package/dist/components/tabs/tab-props.js.map +1 -1
  239. package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js +2 -2
  240. package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js.map +1 -1
  241. package/dist/components/tabs/tabs/use-tab-routing.js +1 -1
  242. package/dist/components/tabs/tabs/use-tab-routing.js.map +1 -1
  243. package/dist/components/tabs/tabs/use-tab-scroll.js.map +1 -1
  244. package/dist/components/time-picker/RuiTimePicker.vue_vue_type_script_setup_true_lang.js +2 -2
  245. package/dist/components/time-picker/RuiTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  246. package/dist/components/time-picker/time-picker-styles.js.map +1 -1
  247. package/dist/composables/breakpoint.js.map +1 -1
  248. package/dist/composables/defaults/table.d.ts +12 -0
  249. package/dist/composables/defaults/table.js.map +1 -1
  250. package/dist/composables/dropdown-menu.d.ts +12 -1
  251. package/dist/composables/dropdown-menu.js +46 -7
  252. package/dist/composables/dropdown-menu.js.map +1 -1
  253. package/dist/composables/floating.js +1 -1
  254. package/dist/composables/floating.js.map +1 -1
  255. package/dist/composables/forms/auto-complete/focus.js.map +1 -1
  256. package/dist/composables/forms/auto-complete/index.js +5 -4
  257. package/dist/composables/forms/auto-complete/keyboard-navigation.js.map +1 -1
  258. package/dist/composables/forms/auto-complete/search.d.ts +6 -1
  259. package/dist/composables/forms/auto-complete/search.js +12 -1
  260. package/dist/composables/forms/auto-complete/search.js.map +1 -1
  261. package/dist/composables/forms/auto-complete/value.js.map +1 -1
  262. package/dist/composables/forms/category-picker/use-category-picker.d.ts +76 -0
  263. package/dist/composables/forms/category-picker/use-category-picker.js +141 -0
  264. package/dist/composables/forms/category-picker/use-category-picker.js.map +1 -0
  265. package/dist/composables/forms/use-prepend-append-width.js.map +1 -1
  266. package/dist/composables/icons.js.map +1 -1
  267. package/dist/composables/popper.js.map +1 -1
  268. package/dist/composables/sticky-header.js.map +1 -1
  269. package/dist/composables/tables/data-table/columns.d.ts +7 -1
  270. package/dist/composables/tables/data-table/columns.js +18 -10
  271. package/dist/composables/tables/data-table/columns.js.map +1 -1
  272. package/dist/composables/tables/data-table/expansion.js.map +1 -1
  273. package/dist/composables/tables/data-table/grouping.d.ts +4 -6
  274. package/dist/composables/tables/data-table/grouping.js +38 -24
  275. package/dist/composables/tables/data-table/grouping.js.map +1 -1
  276. package/dist/composables/tables/data-table/pagination.d.ts +4 -4
  277. package/dist/composables/tables/data-table/pagination.js +63 -21
  278. package/dist/composables/tables/data-table/pagination.js.map +1 -1
  279. package/dist/composables/tables/data-table/selection.js +16 -6
  280. package/dist/composables/tables/data-table/selection.js.map +1 -1
  281. package/dist/composables/tables/data-table/sort.d.ts +4 -3
  282. package/dist/composables/tables/data-table/sort.js +78 -40
  283. package/dist/composables/tables/data-table/sort.js.map +1 -1
  284. package/dist/composables/tables/data-table/types.d.ts +3 -1
  285. package/dist/composables/tables/data-table/types.js +6 -2
  286. package/dist/composables/tables/data-table/types.js.map +1 -1
  287. package/dist/composables/theme.js.map +1 -1
  288. package/dist/composables/timeout-manager.js.map +1 -1
  289. package/dist/composables/use-rui-i18n.js.map +1 -1
  290. package/dist/consts/colors.js.map +1 -1
  291. package/dist/consts/time-accuracy.js.map +1 -1
  292. package/dist/i18n/keys.js.map +1 -1
  293. package/dist/icons/icons_1.d.ts +12 -12
  294. package/dist/icons/icons_1.js +140 -157
  295. package/dist/icons/icons_1.js.map +1 -1
  296. package/dist/icons/icons_2.d.ts +13 -13
  297. package/dist/icons/icons_2.js +128 -149
  298. package/dist/icons/icons_2.js.map +1 -1
  299. package/dist/icons/icons_3.d.ts +18 -18
  300. package/dist/icons/icons_3.js +244 -282
  301. package/dist/icons/icons_3.js.map +1 -1
  302. package/dist/icons/icons_4.d.ts +251 -6
  303. package/dist/icons/icons_4.js +3016 -75
  304. package/dist/icons/icons_4.js.map +1 -1
  305. package/dist/icons/icons_5.d.ts +20 -0
  306. package/dist/icons/icons_5.js +221 -0
  307. package/dist/icons/icons_5.js.map +1 -0
  308. package/dist/icons/index.d.ts +2 -1
  309. package/dist/icons/index.js +297 -32
  310. package/dist/icons/index.js.map +1 -1
  311. package/dist/index.js +9 -6
  312. package/dist/index.js.map +1 -1
  313. package/dist/library-icons.json +3 -0
  314. package/dist/style.css +200 -0
  315. package/dist/theme/index.js.map +1 -1
  316. package/dist/types/stepper.js.map +1 -1
  317. package/dist/types/theme.js.map +1 -1
  318. package/dist/utils/assert.js.map +1 -1
  319. package/dist/utils/blockie.js.map +1 -1
  320. package/dist/utils/form-text-detail.js.map +1 -1
  321. package/dist/utils/helpers.d.ts +4 -0
  322. package/dist/utils/helpers.js +21 -1
  323. package/dist/utils/helpers.js.map +1 -1
  324. package/dist/utils/is-equal.js.map +1 -1
  325. package/dist/utils/tv.js.map +1 -1
  326. package/dist/vite-plugin/index.js +6 -5
  327. package/dist/vite-plugin/index.js.map +1 -1
  328. package/dist/vite-plugin/scanner.d.ts +1 -1
  329. package/dist/vite-plugin/scanner.js +10 -7
  330. package/dist/vite-plugin/scanner.js.map +1 -1
  331. package/dist/vite-plugin/types.d.ts +9 -0
  332. package/dist/web-types.json +2283 -1088
  333. package/package.json +35 -35
@@ -1 +1 @@
1
- {"version":3,"file":"RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/date-time-picker/RuiDateTimePickerMenu.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport RuiButton from '@/components/buttons/button/RuiButton.vue';\nimport RuiCalendar from '@/components/calendar/RuiCalendar.vue';\nimport RuiTimezoneSelect from '@/components/date-time-picker/RuiTimezoneSelect.vue';\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport RuiTimePicker, { type TimePickerSelection } from '@/components/time-picker/RuiTimePicker.vue';\n\ndefineOptions({\n name: 'RuiDateTimePickerMenu',\n});\n\nconst selectedDate = defineModel<Date | undefined>('selectedDate', { required: true });\nconst selectedTime = defineModel<Date | undefined>('selectedTime', { required: true });\nconst selectedHour = defineModel<number | undefined>('selectedHour', { required: true });\nconst selectedMinute = defineModel<number | undefined>('selectedMinute', { required: true });\nconst selectedSecond = defineModel<number | undefined>('selectedSecond', { required: true });\nconst selectedMillisecond = defineModel<number | undefined>('selectedMillisecond', { required: true });\nconst timeSelection = defineModel<TimePickerSelection>('timeSelection', { required: true });\nconst selectedTimezone = defineModel<string | undefined>('selectedTimezone', { required: true });\nconst calendarMenuOpen = defineModel<boolean>('calendarMenuOpen', { required: true });\n\ndefineProps<{\n accuracy: TimeAccuracy;\n maxDate?: Date | number;\n minDate?: Date | number;\n}>();\n\nconst emit = defineEmits<{\n 'set-now': [];\n}>();\n\ndefineSlots<{\n default: () => any;\n}>();\n\nfunction setNow(): void {\n emit('set-now');\n}\n</script>\n\n<template>\n <div class=\"flex divide-x divide-rui-grey-200 dark:divide-rui-grey-800\">\n <RuiCalendar\n v-model=\"selectedDate\"\n v-model:menu-open=\"calendarMenuOpen\"\n borderless\n :max-date=\"maxDate\"\n :min-date=\"minDate\"\n />\n <RuiTimePicker\n v-model=\"selectedTime\"\n v-model:hour=\"selectedHour\"\n v-model:minute=\"selectedMinute\"\n v-model:second=\"selectedSecond\"\n v-model:millisecond=\"selectedMillisecond\"\n v-model:selection=\"timeSelection\"\n :accuracy=\"accuracy\"\n borderless\n />\n <div>\n <div class=\"flex gap-3 p-4 pl-3\">\n <div class=\"flex flex-col justify-center items-center\">\n <RuiButton\n variant=\"text\"\n icon\n data-id=\"set-now\"\n @click=\"setNow()\"\n >\n <RuiIcon\n name=\"lu-clock\"\n size=\"18\"\n />\n </RuiButton>\n </div>\n <RuiTimezoneSelect\n v-model=\"selectedTimezone\"\n hide-details\n class=\"pt-0 pr-0\"\n />\n </div>\n <slot />\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYA,MAAM,eAAe,SAA6B,SAAC,eAAmC;EACtF,MAAM,eAAe,SAA6B,SAAC,eAAmC;EACtF,MAAM,eAAe,SAA+B,SAAC,eAAmC;EACxF,MAAM,iBAAiB,SAA+B,SAAC,iBAAqC;EAC5F,MAAM,iBAAiB,SAA+B,SAAC,iBAAqC;EAC5F,MAAM,sBAAsB,SAA+B,SAAC,sBAA0C;EACtG,MAAM,gBAAgB,SAAgC,SAAC,gBAAoC;EAC3F,MAAM,mBAAmB,SAA+B,SAAC,mBAAuC;EAChG,MAAM,mBAAmB,SAAoB,SAAC,mBAAuC;EAQrF,MAAM,OAAO;EAQb,SAAS,SAAe;AACtB,QAAK,UAAU;;;uBAKf,mBAyCM,OAzCN,YAyCM;IAxCJ,YAME,qBAAA;iBALS,aAAA;+EAAY,QAAA;KACb,aAAW,iBAAA;iFAAgB,QAAA;KACnC,YAAA;KACC,YAAU,QAAA;KACV,YAAU,QAAA;;;;;;;IAEb,YASE,uBAAA;iBARS,aAAA;+EAAY,QAAA;KACb,MAAM,aAAA;yEAAY,QAAA;KAClB,QAAQ,eAAA;6EAAc,QAAA;KACtB,QAAQ,eAAA;6EAAc,QAAA;KACtB,aAAa,oBAAA;uFAAmB,QAAA;KAChC,WAAW,cAAA;+EAAa,QAAA;KAC/B,UAAU,QAAA;KACX,YAAA;;;;;;;;;;IAEF,mBAsBM,OAAA,MAAA,CArBJ,mBAmBM,OAnBN,YAmBM,CAlBJ,mBAYM,OAZN,YAYM,CAXJ,YAUY,mBAAA;KATV,SAAQ;KACR,MAAA;KACA,WAAQ;KACP,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,QAAM;;4BAKZ,CAHF,YAGE,iBAAA;MAFA,MAAK;MACL,MAAK;;;UAIX,YAIE,2BAAA;iBAHS,iBAAA;mFAAgB,QAAA;KACzB,gBAAA;KACA,OAAM;mCAGV,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/date-time-picker/RuiDateTimePickerMenu.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport RuiButton from '@/components/buttons/button/RuiButton.vue';\nimport RuiCalendar from '@/components/calendar/RuiCalendar.vue';\nimport RuiTimezoneSelect from '@/components/date-time-picker/RuiTimezoneSelect.vue';\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport RuiTimePicker, { type TimePickerSelection } from '@/components/time-picker/RuiTimePicker.vue';\n\ndefineOptions({\n name: 'RuiDateTimePickerMenu',\n});\n\nconst selectedDate = defineModel<Date | undefined>('selectedDate', { required: true });\nconst selectedTime = defineModel<Date | undefined>('selectedTime', { required: true });\nconst selectedHour = defineModel<number | undefined>('selectedHour', { required: true });\nconst selectedMinute = defineModel<number | undefined>('selectedMinute', { required: true });\nconst selectedSecond = defineModel<number | undefined>('selectedSecond', { required: true });\nconst selectedMillisecond = defineModel<number | undefined>('selectedMillisecond', { required: true });\nconst timeSelection = defineModel<TimePickerSelection>('timeSelection', { required: true });\nconst selectedTimezone = defineModel<string | undefined>('selectedTimezone', { required: true });\nconst calendarMenuOpen = defineModel<boolean>('calendarMenuOpen', { required: true });\n\ndefineProps<{\n accuracy: TimeAccuracy;\n maxDate?: Date | number;\n minDate?: Date | number;\n}>();\n\nconst emit = defineEmits<{\n 'set-now': [];\n}>();\n\ndefineSlots<{\n default: () => any;\n}>();\n\nfunction setNow(): void {\n emit('set-now');\n}\n</script>\n\n<template>\n <div class=\"flex divide-x divide-rui-grey-200 dark:divide-rui-grey-800\">\n <RuiCalendar\n v-model=\"selectedDate\"\n v-model:menu-open=\"calendarMenuOpen\"\n borderless\n :max-date=\"maxDate\"\n :min-date=\"minDate\"\n />\n <RuiTimePicker\n v-model=\"selectedTime\"\n v-model:hour=\"selectedHour\"\n v-model:minute=\"selectedMinute\"\n v-model:second=\"selectedSecond\"\n v-model:millisecond=\"selectedMillisecond\"\n v-model:selection=\"timeSelection\"\n :accuracy=\"accuracy\"\n borderless\n />\n <div>\n <div class=\"flex gap-3 p-4 pl-3\">\n <div class=\"flex flex-col justify-center items-center\">\n <RuiButton\n variant=\"text\"\n icon\n data-id=\"set-now\"\n @click=\"setNow()\"\n >\n <RuiIcon\n name=\"lu-clock\"\n size=\"18\"\n />\n </RuiButton>\n </div>\n <RuiTimezoneSelect\n v-model=\"selectedTimezone\"\n hide-details\n class=\"pt-0 pr-0\"\n />\n </div>\n <slot />\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYA,MAAM,eAAe,SAA6B,SAAC,cAAkC;EACrF,MAAM,eAAe,SAA6B,SAAC,cAAkC;EACrF,MAAM,eAAe,SAA+B,SAAC,cAAkC;EACvF,MAAM,iBAAiB,SAA+B,SAAC,gBAAoC;EAC3F,MAAM,iBAAiB,SAA+B,SAAC,gBAAoC;EAC3F,MAAM,sBAAsB,SAA+B,SAAC,qBAAyC;EACrG,MAAM,gBAAgB,SAAgC,SAAC,eAAmC;EAC1F,MAAM,mBAAmB,SAA+B,SAAC,kBAAsC;EAC/F,MAAM,mBAAmB,SAAoB,SAAC,kBAAsC;EAQpF,MAAM,OAAO;EAQb,SAAS,SAAe;GACtB,KAAK,SAAS;EAChB;;uBAIE,mBAyCM,OAzCN,YAyCM;IAxCJ,YAME,qBAAA;iBALS,aAAA;+EAAY,QAAA;KACb,aAAW,iBAAA;iFAAgB,QAAA;KACnC,YAAA;KACC,YAAU,QAAA;KACV,YAAU,QAAA;;;;;;;IAEb,YASE,uBAAA;iBARS,aAAA;+EAAY,QAAA;KACb,MAAM,aAAA;yEAAY,QAAA;KAClB,QAAQ,eAAA;6EAAc,QAAA;KACtB,QAAQ,eAAA;6EAAc,QAAA;KACtB,aAAa,oBAAA;uFAAmB,QAAA;KAChC,WAAW,cAAA;+EAAa,QAAA;KAC/B,UAAU,QAAA;KACX,YAAA;;;;;;;;;;IAEF,mBAsBM,OAAA,MAAA,CArBJ,mBAmBM,OAnBN,YAmBM,CAlBJ,mBAYM,OAZN,YAYM,CAXJ,YAUY,mBAAA;KATV,SAAQ;KACR,MAAA;KACA,WAAQ;KACP,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,OAAM;;4BAKZ,CAHF,YAGE,iBAAA;MAFA,MAAK;MACL,MAAK;;;UAIX,YAIE,2BAAA;iBAHS,iBAAA;mFAAgB,QAAA;KACzB,gBAAA;KACA,OAAM;mCAGV,WAAQ,KAAA,QAAA,SAAA,CAAA,CAAA"}
@@ -2,10 +2,10 @@ import { timezones } from "./timezones.js";
2
2
  import RuiAutoComplete_default from "../forms/auto-complete/RuiAutoComplete.js";
3
3
  import { createBlock, defineComponent, mergeModels, openBlock, unref, useModel } from "vue";
4
4
  //#region src/components/date-time-picker/RuiTimezoneSelect.vue?vue&type=script&setup=true&lang.ts
5
- var RuiTimezoneSelect_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
5
+ var RuiTimezoneSelect_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
6
6
  name: "RuiTimezoneSelect",
7
7
  __name: "RuiTimezoneSelect",
8
- props: /* @__PURE__ */ mergeModels({
8
+ props: /*@__PURE__*/ mergeModels({
9
9
  disabled: {
10
10
  type: Boolean,
11
11
  default: false
@@ -1 +1 @@
1
- {"version":3,"file":"RuiTimezoneSelect.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/date-time-picker/RuiTimezoneSelect.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AutoCompleteVariant } from '@/components/forms/auto-complete/auto-complete-styles';\nimport type { MenuProps } from '@/components/overlays/menu/RuiMenu.vue';\nimport { timezones } from '@/components/date-time-picker/timezones';\nimport RuiAutoComplete, { type RuiAutoCompleteClassNames } from '@/components/forms/auto-complete/RuiAutoComplete.vue';\n\nexport interface RuiTimezoneSelectProps {\n disabled?: boolean;\n readOnly?: boolean;\n dense?: boolean;\n clearable?: boolean;\n label?: string;\n variant?: AutoCompleteVariant;\n hint?: string;\n errorMessages?: string | string[];\n successMessages?: string | string[];\n hideDetails?: boolean;\n placeholder?: string;\n required?: boolean;\n classNames?: RuiAutoCompleteClassNames;\n menuOptions?: MenuProps;\n}\n\ndefineOptions({\n name: 'RuiTimezoneSelect',\n});\n\nconst modelValue = defineModel<string | undefined>({ required: true });\n\nconst {\n disabled = false,\n readOnly = false,\n dense = false,\n clearable = false,\n label = 'Timezone',\n variant = 'outlined',\n hint,\n errorMessages,\n successMessages,\n hideDetails = false,\n placeholder,\n required = false,\n classNames,\n menuOptions,\n} = defineProps<RuiTimezoneSelectProps>();\n\ninterface TimezoneOption {\n value: string;\n label: string;\n}\n\nconst options: TimezoneOption[] = timezones.map(value => ({\n value,\n label: value.replace(/_/g, ' '),\n}));\n</script>\n\n<template>\n <RuiAutoComplete\n v-model=\"modelValue\"\n key-attr=\"value\"\n text-attr=\"label\"\n auto-select-first\n :options=\"options\"\n :label=\"label\"\n :variant=\"variant\"\n :disabled=\"disabled\"\n :read-only=\"readOnly\"\n :dense=\"dense\"\n :clearable=\"clearable\"\n :hint=\"hint\"\n :error-messages=\"errorMessages\"\n :success-messages=\"successMessages\"\n :hide-details=\"hideDetails\"\n :placeholder=\"placeholder\"\n :required=\"required\"\n :class-names=\"classNames\"\n :menu-options=\"menuOptions\"\n />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BA,MAAM,aAAa,SAA+B,SAAA,aAAoB;EAwBtE,MAAM,UAA4B,UAAU,KAAI,WAAU;GACxD;GACA,OAAO,MAAM,QAAQ,MAAM,IAAI;GAChC,EAAE;;uBAID,YAoBE,yBAAA;gBAnBS,WAAA;4EAAU,QAAA;IACnB,YAAS;IACT,aAAU;IACV,qBAAA;IACC,SAAS,MAAA,QAAO;IAChB,OAAO,QAAA;IACP,SAAS,QAAA;IACT,UAAU,QAAA;IACV,aAAW,QAAA;IACX,OAAO,QAAA;IACP,WAAW,QAAA;IACX,MAAM,QAAA;IACN,kBAAgB,QAAA;IAChB,oBAAkB,QAAA;IAClB,gBAAc,QAAA;IACd,aAAa,QAAA;IACb,UAAU,QAAA;IACV,eAAa,QAAA;IACb,gBAAc,QAAA"}
1
+ {"version":3,"file":"RuiTimezoneSelect.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/date-time-picker/RuiTimezoneSelect.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport type { AutoCompleteVariant } from '@/components/forms/auto-complete/auto-complete-styles';\nimport type { MenuProps } from '@/components/overlays/menu/RuiMenu.vue';\nimport { timezones } from '@/components/date-time-picker/timezones';\nimport RuiAutoComplete, { type RuiAutoCompleteClassNames } from '@/components/forms/auto-complete/RuiAutoComplete.vue';\n\nexport interface RuiTimezoneSelectProps {\n disabled?: boolean;\n readOnly?: boolean;\n dense?: boolean;\n clearable?: boolean;\n label?: string;\n variant?: AutoCompleteVariant;\n hint?: string;\n errorMessages?: string | string[];\n successMessages?: string | string[];\n hideDetails?: boolean;\n placeholder?: string;\n required?: boolean;\n classNames?: RuiAutoCompleteClassNames;\n menuOptions?: MenuProps;\n}\n\ndefineOptions({\n name: 'RuiTimezoneSelect',\n});\n\nconst modelValue = defineModel<string | undefined>({ required: true });\n\nconst {\n disabled = false,\n readOnly = false,\n dense = false,\n clearable = false,\n label = 'Timezone',\n variant = 'outlined',\n hint,\n errorMessages,\n successMessages,\n hideDetails = false,\n placeholder,\n required = false,\n classNames,\n menuOptions,\n} = defineProps<RuiTimezoneSelectProps>();\n\ninterface TimezoneOption {\n value: string;\n label: string;\n}\n\nconst options: TimezoneOption[] = timezones.map(value => ({\n value,\n label: value.replace(/_/g, ' '),\n}));\n</script>\n\n<template>\n <RuiAutoComplete\n v-model=\"modelValue\"\n key-attr=\"value\"\n text-attr=\"label\"\n auto-select-first\n :options=\"options\"\n :label=\"label\"\n :variant=\"variant\"\n :disabled=\"disabled\"\n :read-only=\"readOnly\"\n :dense=\"dense\"\n :clearable=\"clearable\"\n :hint=\"hint\"\n :error-messages=\"errorMessages\"\n :success-messages=\"successMessages\"\n :hide-details=\"hideDetails\"\n :placeholder=\"placeholder\"\n :required=\"required\"\n :class-names=\"classNames\"\n :menu-options=\"menuOptions\"\n />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BA,MAAM,aAAa,SAA+B,SAAA,YAAmB;EAwBrE,MAAM,UAA4B,UAAU,KAAI,WAAU;GACxD;GACA,OAAO,MAAM,QAAQ,MAAM,GAAG;EAChC,EAAE;;uBAIA,YAoBE,yBAAA;gBAnBS,WAAA;4EAAU,QAAA;IACnB,YAAS;IACT,aAAU;IACV,qBAAA;IACC,SAAS,MAAA,OAAA;IACT,OAAO,QAAA;IACP,SAAS,QAAA;IACT,UAAU,QAAA;IACV,aAAW,QAAA;IACX,OAAO,QAAA;IACP,WAAW,QAAA;IACX,MAAM,QAAA;IACN,kBAAgB,QAAA;IAChB,oBAAkB,QAAA;IAClB,gBAAc,QAAA;IACd,aAAa,QAAA;IACb,UAAU,QAAA;IACV,eAAa,QAAA;IACb,gBAAc,QAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"date-time-picker-styles.js","names":[],"sources":["../../../src/components/date-time-picker/date-time-picker-styles.ts"],"sourcesContent":["import { activatorStyles, type TextInputVariant } from '@/components/forms/text-input-styles';\nimport { tv } from '@/utils/tv';\n\nexport type DateTimePickerVariant = TextInputVariant;\n\n/**\n * Overrides the `value` slot for flex-wrap + left padding (prepend icon),\n * and adds `iconPrepend` slot for the calendar icon.\n */\nexport const dateTimePickerStyles = tv({\n extend: activatorStyles,\n slots: {\n value: 'flex gap-1 flex-wrap flex-1 ps-8 transition-all duration-75',\n iconPrepend: 'flex items-center justify-end absolute top-px bottom-0 left-3',\n },\n variants: {\n // Re-declare for type inference — actual styles are in activatorStyles\n filled: { true: {} },\n },\n});\n"],"mappings":";;;;;;;AASA,IAAa,uBAAuB,GAAG;CACrC,QAAQ;CACR,OAAO;EACL,OAAO;EACP,aAAa;EACd;CACD,UAAU,EAER,QAAQ,EAAE,MAAM,EAAE,EAAE,EACrB;CACF,CAAC"}
1
+ {"version":3,"file":"date-time-picker-styles.js","names":[],"sources":["../../../src/components/date-time-picker/date-time-picker-styles.ts"],"sourcesContent":["import { activatorStyles, type TextInputVariant } from '@/components/forms/text-input-styles';\nimport { tv } from '@/utils/tv';\n\nexport type DateTimePickerVariant = TextInputVariant;\n\n/**\n * Overrides the `value` slot for flex-wrap + left padding (prepend icon),\n * and adds `iconPrepend` slot for the calendar icon.\n */\nexport const dateTimePickerStyles = tv({\n extend: activatorStyles,\n slots: {\n value: 'flex gap-1 flex-wrap flex-1 ps-8 transition-all duration-75',\n iconPrepend: 'flex items-center justify-end absolute top-px bottom-0 left-3',\n },\n variants: {\n // Re-declare for type inference — actual styles are in activatorStyles\n filled: { true: {} },\n },\n});\n"],"mappings":";;;;;;;AASA,IAAa,uBAAuB,GAAG;CACrC,QAAQ;CACR,OAAO;EACL,OAAO;EACP,aAAa;CACf;CACA,UAAU,EAER,QAAQ,EAAE,MAAM,CAAC,EAAE,EACrB;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dayjs-setup.js","names":[],"sources":["../../../src/components/date-time-picker/dayjs-setup.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js';\nimport timezone from 'dayjs/plugin/timezone.js';\nimport utc from 'dayjs/plugin/utc.js';\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(customParseFormat);\n"],"mappings":";;;;;AAKA,MAAM,OAAO,IAAI;AACjB,MAAM,OAAO,SAAS;AACtB,MAAM,OAAO,kBAAkB"}
1
+ {"version":3,"file":"dayjs-setup.js","names":[],"sources":["../../../src/components/date-time-picker/dayjs-setup.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js';\nimport timezone from 'dayjs/plugin/timezone.js';\nimport utc from 'dayjs/plugin/utc.js';\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(customParseFormat);\n"],"mappings":";;;;;AAKA,MAAM,OAAO,GAAG;AAChB,MAAM,OAAO,QAAQ;AACrB,MAAM,OAAO,iBAAiB"}
@@ -1 +1 @@
1
- {"version":3,"file":"segment-config.js","names":[],"sources":["../../../src/components/date-time-picker/segment-config.ts"],"sourcesContent":["import type { DateTimeSegmentType } from '@/components/date-time-picker/types';\n\nexport interface Segment {\n start: number;\n end: number;\n type: DateTimeSegmentType;\n}\n\ntype SegmentMethod = 'date' | 'hour' | 'month' | 'minute' | 'second' | 'millisecond' | 'year';\n\nexport const SEGMENT_METHODS: Record<DateTimeSegmentType, SegmentMethod> = {\n DD: 'date',\n HH: 'hour',\n MM: 'month',\n SSS: 'millisecond',\n YYYY: 'year',\n mm: 'minute',\n ss: 'second',\n};\n\nexport interface SegmentBounds {\n maxValue: number;\n minValue?: number;\n}\n\nexport const SEGMENT_CONFIG: Record<DateTimeSegmentType, SegmentBounds> = {\n DD: { maxValue: 31, minValue: 1 },\n HH: { maxValue: 23, minValue: 0 },\n MM: { maxValue: 12, minValue: 1 },\n SSS: { maxValue: 999, minValue: 0 },\n YYYY: { maxValue: 9999, minValue: 1 },\n mm: { maxValue: 59, minValue: 0 },\n ss: { maxValue: 59, minValue: 0 },\n};\n"],"mappings":";AAUA,IAAa,kBAA8D;CACzE,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,KAAK;CACL,MAAM;CACN,IAAI;CACJ,IAAI;CACL;AAOD,IAAa,iBAA6D;CACxE,IAAI;EAAE,UAAU;EAAI,UAAU;EAAG;CACjC,IAAI;EAAE,UAAU;EAAI,UAAU;EAAG;CACjC,IAAI;EAAE,UAAU;EAAI,UAAU;EAAG;CACjC,KAAK;EAAE,UAAU;EAAK,UAAU;EAAG;CACnC,MAAM;EAAE,UAAU;EAAM,UAAU;EAAG;CACrC,IAAI;EAAE,UAAU;EAAI,UAAU;EAAG;CACjC,IAAI;EAAE,UAAU;EAAI,UAAU;EAAG;CAClC"}
1
+ {"version":3,"file":"segment-config.js","names":[],"sources":["../../../src/components/date-time-picker/segment-config.ts"],"sourcesContent":["import type { DateTimeSegmentType } from '@/components/date-time-picker/types';\n\nexport interface Segment {\n start: number;\n end: number;\n type: DateTimeSegmentType;\n}\n\ntype SegmentMethod = 'date' | 'hour' | 'month' | 'minute' | 'second' | 'millisecond' | 'year';\n\nexport const SEGMENT_METHODS: Record<DateTimeSegmentType, SegmentMethod> = {\n DD: 'date',\n HH: 'hour',\n MM: 'month',\n SSS: 'millisecond',\n YYYY: 'year',\n mm: 'minute',\n ss: 'second',\n};\n\nexport interface SegmentBounds {\n maxValue: number;\n minValue?: number;\n}\n\nexport const SEGMENT_CONFIG: Record<DateTimeSegmentType, SegmentBounds> = {\n DD: { maxValue: 31, minValue: 1 },\n HH: { maxValue: 23, minValue: 0 },\n MM: { maxValue: 12, minValue: 1 },\n SSS: { maxValue: 999, minValue: 0 },\n YYYY: { maxValue: 9999, minValue: 1 },\n mm: { maxValue: 59, minValue: 0 },\n ss: { maxValue: 59, minValue: 0 },\n};\n"],"mappings":";AAUA,IAAa,kBAA8D;CACzE,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,KAAK;CACL,MAAM;CACN,IAAI;CACJ,IAAI;AACN;AAOA,IAAa,iBAA6D;CACxE,IAAI;EAAE,UAAU;EAAI,UAAU;CAAE;CAChC,IAAI;EAAE,UAAU;EAAI,UAAU;CAAE;CAChC,IAAI;EAAE,UAAU;EAAI,UAAU;CAAE;CAChC,KAAK;EAAE,UAAU;EAAK,UAAU;CAAE;CAClC,MAAM;EAAE,UAAU;EAAM,UAAU;CAAE;CACpC,IAAI;EAAE,UAAU;EAAI,UAAU;CAAE;CAChC,IAAI;EAAE,UAAU;EAAI,UAAU;CAAE;AAClC"}
@@ -1 +1 @@
1
- {"version":3,"file":"segment-utils.js","names":[],"sources":["../../../src/components/date-time-picker/segment-utils.ts"],"sourcesContent":["import type { DateTimeSegmentType } from '@/components/date-time-picker/types';\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport dayjs from 'dayjs';\nimport { includeMilliseconds, includeSeconds } from '@/components/date-time-picker/utils';\n\nimport '@/components/date-time-picker/dayjs-setup';\n\nexport function getClickPosition(\n event: MouseEvent,\n input: HTMLInputElement,\n useCaretPosition: boolean,\n): number {\n const fallback = input.selectionStart ?? 0;\n if (!useCaretPosition)\n return fallback;\n const caretPos = document.caretPositionFromPoint?.(event.clientX, event.clientY);\n if (caretPos)\n return caretPos.offset;\n return document.caretRangeFromPoint?.(event.clientX, event.clientY)?.startOffset ?? fallback;\n}\n\nexport function parseAndSetDateValues(\n pastedText: string,\n dateFormat: string,\n accuracy: TimeAccuracy,\n setValue: (segment: DateTimeSegmentType, value?: number) => void,\n): void {\n try {\n const parsedDate = dayjs(pastedText, dateFormat);\n\n if (!parsedDate.isValid()) {\n return;\n }\n\n const date = parsedDate.toDate();\n setValue('YYYY', date.getFullYear());\n setValue('MM', date.getMonth() + 1);\n setValue('DD', date.getDate());\n setValue('HH', date.getHours());\n setValue('mm', date.getMinutes());\n if (includeSeconds(accuracy)) {\n setValue('ss', date.getSeconds());\n }\n if (includeMilliseconds(accuracy)) {\n setValue('SSS', date.getMilliseconds());\n }\n }\n catch {\n // Invalid format, ignore paste\n }\n}\n"],"mappings":";;;;AAOA,SAAgB,iBACd,OACA,OACA,kBACQ;CACR,MAAM,WAAW,MAAM,kBAAkB;AACzC,KAAI,CAAC,iBACH,QAAO;CACT,MAAM,WAAW,SAAS,yBAAyB,MAAM,SAAS,MAAM,QAAQ;AAChF,KAAI,SACF,QAAO,SAAS;AAClB,QAAO,SAAS,sBAAsB,MAAM,SAAS,MAAM,QAAQ,EAAE,eAAe;;AAGtF,SAAgB,sBACd,YACA,YACA,UACA,UACM;AACN,KAAI;EACF,MAAM,aAAa,MAAM,YAAY,WAAW;AAEhD,MAAI,CAAC,WAAW,SAAS,CACvB;EAGF,MAAM,OAAO,WAAW,QAAQ;AAChC,WAAS,QAAQ,KAAK,aAAa,CAAC;AACpC,WAAS,MAAM,KAAK,UAAU,GAAG,EAAE;AACnC,WAAS,MAAM,KAAK,SAAS,CAAC;AAC9B,WAAS,MAAM,KAAK,UAAU,CAAC;AAC/B,WAAS,MAAM,KAAK,YAAY,CAAC;AACjC,MAAI,eAAe,SAAS,CAC1B,UAAS,MAAM,KAAK,YAAY,CAAC;AAEnC,MAAI,oBAAoB,SAAS,CAC/B,UAAS,OAAO,KAAK,iBAAiB,CAAC;SAGrC"}
1
+ {"version":3,"file":"segment-utils.js","names":[],"sources":["../../../src/components/date-time-picker/segment-utils.ts"],"sourcesContent":["import type { DateTimeSegmentType } from '@/components/date-time-picker/types';\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport dayjs from 'dayjs';\nimport { includeMilliseconds, includeSeconds } from '@/components/date-time-picker/utils';\n\nimport '@/components/date-time-picker/dayjs-setup';\n\nexport function getClickPosition(\n event: MouseEvent,\n input: HTMLInputElement,\n useCaretPosition: boolean,\n): number {\n const fallback = input.selectionStart ?? 0;\n if (!useCaretPosition)\n return fallback;\n const caretPos = document.caretPositionFromPoint?.(event.clientX, event.clientY);\n if (caretPos)\n return caretPos.offset;\n return document.caretRangeFromPoint?.(event.clientX, event.clientY)?.startOffset ?? fallback;\n}\n\nexport function parseAndSetDateValues(\n pastedText: string,\n dateFormat: string,\n accuracy: TimeAccuracy,\n setValue: (segment: DateTimeSegmentType, value?: number) => void,\n): void {\n try {\n const parsedDate = dayjs(pastedText, dateFormat);\n\n if (!parsedDate.isValid()) {\n return;\n }\n\n const date = parsedDate.toDate();\n setValue('YYYY', date.getFullYear());\n setValue('MM', date.getMonth() + 1);\n setValue('DD', date.getDate());\n setValue('HH', date.getHours());\n setValue('mm', date.getMinutes());\n if (includeSeconds(accuracy)) {\n setValue('ss', date.getSeconds());\n }\n if (includeMilliseconds(accuracy)) {\n setValue('SSS', date.getMilliseconds());\n }\n }\n catch {\n // Invalid format, ignore paste\n }\n}\n"],"mappings":";;;;AAOA,SAAgB,iBACd,OACA,OACA,kBACQ;CACR,MAAM,WAAW,MAAM,kBAAkB;CACzC,IAAI,CAAC,kBACH,OAAO;CACT,MAAM,WAAW,SAAS,yBAAyB,MAAM,SAAS,MAAM,OAAO;CAC/E,IAAI,UACF,OAAO,SAAS;CAClB,OAAO,SAAS,sBAAsB,MAAM,SAAS,MAAM,OAAO,CAAC,EAAE,eAAe;AACtF;AAEA,SAAgB,sBACd,YACA,YACA,UACA,UACM;CACN,IAAI;EACF,MAAM,aAAa,MAAM,YAAY,UAAU;EAE/C,IAAI,CAAC,WAAW,QAAQ,GACtB;EAGF,MAAM,OAAO,WAAW,OAAO;EAC/B,SAAS,QAAQ,KAAK,YAAY,CAAC;EACnC,SAAS,MAAM,KAAK,SAAS,IAAI,CAAC;EAClC,SAAS,MAAM,KAAK,QAAQ,CAAC;EAC7B,SAAS,MAAM,KAAK,SAAS,CAAC;EAC9B,SAAS,MAAM,KAAK,WAAW,CAAC;EAChC,IAAI,eAAe,QAAQ,GACzB,SAAS,MAAM,KAAK,WAAW,CAAC;EAElC,IAAI,oBAAoB,QAAQ,GAC9B,SAAS,OAAO,KAAK,gBAAgB,CAAC;CAE1C,QACM,CAEN;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"timezones.js","names":[],"sources":["../../../src/components/date-time-picker/timezones.ts"],"sourcesContent":["/* eslint-disable max-lines */\n\nexport const timezones: string[] = [\n 'Africa/Abidjan',\n 'Africa/Accra',\n 'Africa/Addis_Ababa',\n 'Africa/Algiers',\n 'Africa/Asmara',\n 'Africa/Asmera',\n 'Africa/Bamako',\n 'Africa/Bangui',\n 'Africa/Banjul',\n 'Africa/Bissau',\n 'Africa/Blantyre',\n 'Africa/Brazzaville',\n 'Africa/Bujumbura',\n 'Africa/Cairo',\n 'Africa/Casablanca',\n 'Africa/Ceuta',\n 'Africa/Conakry',\n 'Africa/Dakar',\n 'Africa/Dar_es_Salaam',\n 'Africa/Djibouti',\n 'Africa/Douala',\n 'Africa/El_Aaiun',\n 'Africa/Freetown',\n 'Africa/Gaborone',\n 'Africa/Harare',\n 'Africa/Johannesburg',\n 'Africa/Juba',\n 'Africa/Kampala',\n 'Africa/Khartoum',\n 'Africa/Kigali',\n 'Africa/Kinshasa',\n 'Africa/Lagos',\n 'Africa/Libreville',\n 'Africa/Lome',\n 'Africa/Luanda',\n 'Africa/Lubumbashi',\n 'Africa/Lusaka',\n 'Africa/Malabo',\n 'Africa/Maputo',\n 'Africa/Maseru',\n 'Africa/Mbabane',\n 'Africa/Mogadishu',\n 'Africa/Monrovia',\n 'Africa/Nairobi',\n 'Africa/Ndjamena',\n 'Africa/Niamey',\n 'Africa/Nouakchott',\n 'Africa/Ouagadougou',\n 'Africa/Porto-Novo',\n 'Africa/Sao_Tome',\n 'Africa/Timbuktu',\n 'Africa/Tripoli',\n 'Africa/Tunis',\n 'Africa/Windhoek',\n 'America/Adak',\n 'America/Anchorage',\n 'America/Anguilla',\n 'America/Antigua',\n 'America/Araguaina',\n 'America/Argentina/Buenos_Aires',\n 'America/Argentina/Catamarca',\n 'America/Argentina/ComodRivadavia',\n 'America/Argentina/Cordoba',\n 'America/Argentina/Jujuy',\n 'America/Argentina/La_Rioja',\n 'America/Argentina/Mendoza',\n 'America/Argentina/Rio_Gallegos',\n 'America/Argentina/Salta',\n 'America/Argentina/San_Juan',\n 'America/Argentina/San_Luis',\n 'America/Argentina/Tucuman',\n 'America/Argentina/Ushuaia',\n 'America/Aruba',\n 'America/Asuncion',\n 'America/Atikokan',\n 'America/Atka',\n 'America/Bahia',\n 'America/Bahia_Banderas',\n 'America/Barbados',\n 'America/Belem',\n 'America/Belize',\n 'America/Blanc-Sablon',\n 'America/Boa_Vista',\n 'America/Bogota',\n 'America/Boise',\n 'America/Buenos_Aires',\n 'America/Cambridge_Bay',\n 'America/Campo_Grande',\n 'America/Cancun',\n 'America/Caracas',\n 'America/Catamarca',\n 'America/Cayenne',\n 'America/Cayman',\n 'America/Chicago',\n 'America/Chihuahua',\n 'America/Ciudad_Juarez',\n 'America/Coral_Harbour',\n 'America/Cordoba',\n 'America/Costa_Rica',\n 'America/Coyhaique',\n 'America/Creston',\n 'America/Cuiaba',\n 'America/Curacao',\n 'America/Danmarkshavn',\n 'America/Dawson',\n 'America/Dawson_Creek',\n 'America/Denver',\n 'America/Detroit',\n 'America/Dominica',\n 'America/Edmonton',\n 'America/Eirunepe',\n 'America/El_Salvador',\n 'America/Ensenada',\n 'America/Fort_Nelson',\n 'America/Fort_Wayne',\n 'America/Fortaleza',\n 'America/Glace_Bay',\n 'America/Godthab',\n 'America/Goose_Bay',\n 'America/Grand_Turk',\n 'America/Grenada',\n 'America/Guadeloupe',\n 'America/Guatemala',\n 'America/Guayaquil',\n 'America/Guyana',\n 'America/Halifax',\n 'America/Havana',\n 'America/Hermosillo',\n 'America/Indiana/Indianapolis',\n 'America/Indiana/Knox',\n 'America/Indiana/Marengo',\n 'America/Indiana/Petersburg',\n 'America/Indiana/Tell_City',\n 'America/Indiana/Vevay',\n 'America/Indiana/Vincennes',\n 'America/Indiana/Winamac',\n 'America/Indianapolis',\n 'America/Inuvik',\n 'America/Iqaluit',\n 'America/Jamaica',\n 'America/Jujuy',\n 'America/Juneau',\n 'America/Kentucky/Louisville',\n 'America/Kentucky/Monticello',\n 'America/Knox_IN',\n 'America/Kralendijk',\n 'America/La_Paz',\n 'America/Lima',\n 'America/Los_Angeles',\n 'America/Louisville',\n 'America/Lower_Princes',\n 'America/Maceio',\n 'America/Managua',\n 'America/Manaus',\n 'America/Marigot',\n 'America/Martinique',\n 'America/Matamoros',\n 'America/Mazatlan',\n 'America/Mendoza',\n 'America/Menominee',\n 'America/Merida',\n 'America/Metlakatla',\n 'America/Mexico_City',\n 'America/Miquelon',\n 'America/Moncton',\n 'America/Monterrey',\n 'America/Montevideo',\n 'America/Montreal',\n 'America/Montserrat',\n 'America/Nassau',\n 'America/New_York',\n 'America/Nipigon',\n 'America/Nome',\n 'America/Noronha',\n 'America/North_Dakota/Beulah',\n 'America/North_Dakota/Center',\n 'America/North_Dakota/New_Salem',\n 'America/Nuuk',\n 'America/Ojinaga',\n 'America/Panama',\n 'America/Pangnirtung',\n 'America/Paramaribo',\n 'America/Phoenix',\n 'America/Port-au-Prince',\n 'America/Port_of_Spain',\n 'America/Porto_Acre',\n 'America/Porto_Velho',\n 'America/Puerto_Rico',\n 'America/Punta_Arenas',\n 'America/Rainy_River',\n 'America/Rankin_Inlet',\n 'America/Recife',\n 'America/Regina',\n 'America/Resolute',\n 'America/Rio_Branco',\n 'America/Rosario',\n 'America/Santa_Isabel',\n 'America/Santarem',\n 'America/Santiago',\n 'America/Santo_Domingo',\n 'America/Sao_Paulo',\n 'America/Scoresbysund',\n 'America/Shiprock',\n 'America/Sitka',\n 'America/St_Barthelemy',\n 'America/St_Johns',\n 'America/St_Kitts',\n 'America/St_Lucia',\n 'America/St_Thomas',\n 'America/St_Vincent',\n 'America/Swift_Current',\n 'America/Tegucigalpa',\n 'America/Thule',\n 'America/Thunder_Bay',\n 'America/Tijuana',\n 'America/Toronto',\n 'America/Tortola',\n 'America/Vancouver',\n 'America/Virgin',\n 'America/Whitehorse',\n 'America/Winnipeg',\n 'America/Yakutat',\n 'America/Yellowknife',\n 'Antarctica/Casey',\n 'Antarctica/Davis',\n 'Antarctica/DumontDUrville',\n 'Antarctica/Macquarie',\n 'Antarctica/Mawson',\n 'Antarctica/McMurdo',\n 'Antarctica/Palmer',\n 'Antarctica/Rothera',\n 'Antarctica/South_Pole',\n 'Antarctica/Syowa',\n 'Antarctica/Troll',\n 'Antarctica/Vostok',\n 'Arctic/Longyearbyen',\n 'Asia/Aden',\n 'Asia/Almaty',\n 'Asia/Amman',\n 'Asia/Anadyr',\n 'Asia/Aqtau',\n 'Asia/Aqtobe',\n 'Asia/Ashgabat',\n 'Asia/Ashkhabad',\n 'Asia/Atyrau',\n 'Asia/Baghdad',\n 'Asia/Bahrain',\n 'Asia/Baku',\n 'Asia/Bangkok',\n 'Asia/Barnaul',\n 'Asia/Beirut',\n 'Asia/Bishkek',\n 'Asia/Brunei',\n 'Asia/Calcutta',\n 'Asia/Chita',\n 'Asia/Choibalsan',\n 'Asia/Chongqing',\n 'Asia/Chungking',\n 'Asia/Colombo',\n 'Asia/Dacca',\n 'Asia/Damascus',\n 'Asia/Dhaka',\n 'Asia/Dili',\n 'Asia/Dubai',\n 'Asia/Dushanbe',\n 'Asia/Famagusta',\n 'Asia/Gaza',\n 'Asia/Harbin',\n 'Asia/Hebron',\n 'Asia/Ho_Chi_Minh',\n 'Asia/Hong_Kong',\n 'Asia/Hovd',\n 'Asia/Irkutsk',\n 'Asia/Istanbul',\n 'Asia/Jakarta',\n 'Asia/Jayapura',\n 'Asia/Jerusalem',\n 'Asia/Kabul',\n 'Asia/Kamchatka',\n 'Asia/Karachi',\n 'Asia/Kashgar',\n 'Asia/Kathmandu',\n 'Asia/Katmandu',\n 'Asia/Khandyga',\n 'Asia/Kolkata',\n 'Asia/Krasnoyarsk',\n 'Asia/Kuala_Lumpur',\n 'Asia/Kuching',\n 'Asia/Kuwait',\n 'Asia/Macao',\n 'Asia/Macau',\n 'Asia/Magadan',\n 'Asia/Makassar',\n 'Asia/Manila',\n 'Asia/Muscat',\n 'Asia/Nicosia',\n 'Asia/Novokuznetsk',\n 'Asia/Novosibirsk',\n 'Asia/Omsk',\n 'Asia/Oral',\n 'Asia/Phnom_Penh',\n 'Asia/Pontianak',\n 'Asia/Pyongyang',\n 'Asia/Qatar',\n 'Asia/Qostanay',\n 'Asia/Qyzylorda',\n 'Asia/Rangoon',\n 'Asia/Riyadh',\n 'Asia/Saigon',\n 'Asia/Sakhalin',\n 'Asia/Samarkand',\n 'Asia/Seoul',\n 'Asia/Shanghai',\n 'Asia/Singapore',\n 'Asia/Srednekolymsk',\n 'Asia/Taipei',\n 'Asia/Tashkent',\n 'Asia/Tbilisi',\n 'Asia/Tehran',\n 'Asia/Tel_Aviv',\n 'Asia/Thimbu',\n 'Asia/Thimphu',\n 'Asia/Tokyo',\n 'Asia/Tomsk',\n 'Asia/Ujung_Pandang',\n 'Asia/Ulaanbaatar',\n 'Asia/Ulan_Bator',\n 'Asia/Urumqi',\n 'Asia/Ust-Nera',\n 'Asia/Vientiane',\n 'Asia/Vladivostok',\n 'Asia/Yakutsk',\n 'Asia/Yangon',\n 'Asia/Yekaterinburg',\n 'Asia/Yerevan',\n 'Atlantic/Azores',\n 'Atlantic/Bermuda',\n 'Atlantic/Canary',\n 'Atlantic/Cape_Verde',\n 'Atlantic/Faeroe',\n 'Atlantic/Faroe',\n 'Atlantic/Jan_Mayen',\n 'Atlantic/Madeira',\n 'Atlantic/Reykjavik',\n 'Atlantic/South_Georgia',\n 'Atlantic/St_Helena',\n 'Atlantic/Stanley',\n 'Australia/ACT',\n 'Australia/Adelaide',\n 'Australia/Brisbane',\n 'Australia/Broken_Hill',\n 'Australia/Canberra',\n 'Australia/Currie',\n 'Australia/Darwin',\n 'Australia/Eucla',\n 'Australia/Hobart',\n 'Australia/LHI',\n 'Australia/Lindeman',\n 'Australia/Lord_Howe',\n 'Australia/Melbourne',\n 'Australia/NSW',\n 'Australia/North',\n 'Australia/Perth',\n 'Australia/Queensland',\n 'Australia/South',\n 'Australia/Sydney',\n 'Australia/Tasmania',\n 'Australia/Victoria',\n 'Australia/West',\n 'Australia/Yancowinna',\n 'Brazil/Acre',\n 'Brazil/DeNoronha',\n 'Brazil/East',\n 'Brazil/West',\n 'CET',\n 'CST6CDT',\n 'Canada/Atlantic',\n 'Canada/Central',\n 'Canada/Eastern',\n 'Canada/Mountain',\n 'Canada/Newfoundland',\n 'Canada/Pacific',\n 'Canada/Saskatchewan',\n 'Canada/Yukon',\n 'Chile/Continental',\n 'Chile/EasterIsland',\n 'Cuba',\n 'EET',\n 'EST',\n 'EST5EDT',\n 'Egypt',\n 'Eire',\n 'Etc/GMT',\n 'Etc/GMT+0',\n 'Etc/GMT+1',\n 'Etc/GMT+10',\n 'Etc/GMT+11',\n 'Etc/GMT+12',\n 'Etc/GMT+2',\n 'Etc/GMT+3',\n 'Etc/GMT+4',\n 'Etc/GMT+5',\n 'Etc/GMT+6',\n 'Etc/GMT+7',\n 'Etc/GMT+8',\n 'Etc/GMT+9',\n 'Etc/GMT-0',\n 'Etc/GMT-1',\n 'Etc/GMT-10',\n 'Etc/GMT-11',\n 'Etc/GMT-12',\n 'Etc/GMT-13',\n 'Etc/GMT-14',\n 'Etc/GMT-2',\n 'Etc/GMT-3',\n 'Etc/GMT-4',\n 'Etc/GMT-5',\n 'Etc/GMT-6',\n 'Etc/GMT-7',\n 'Etc/GMT-8',\n 'Etc/GMT-9',\n 'Etc/GMT0',\n 'Etc/Greenwich',\n 'Etc/UCT',\n 'Etc/UTC',\n 'Etc/Universal',\n 'Etc/Zulu',\n 'Europe/Amsterdam',\n 'Europe/Andorra',\n 'Europe/Astrakhan',\n 'Europe/Athens',\n 'Europe/Belfast',\n 'Europe/Belgrade',\n 'Europe/Berlin',\n 'Europe/Bratislava',\n 'Europe/Brussels',\n 'Europe/Bucharest',\n 'Europe/Budapest',\n 'Europe/Busingen',\n 'Europe/Chisinau',\n 'Europe/Copenhagen',\n 'Europe/Dublin',\n 'Europe/Gibraltar',\n 'Europe/Guernsey',\n 'Europe/Helsinki',\n 'Europe/Isle_of_Man',\n 'Europe/Istanbul',\n 'Europe/Jersey',\n 'Europe/Kaliningrad',\n 'Europe/Kiev',\n 'Europe/Kirov',\n 'Europe/Lisbon',\n 'Europe/Ljubljana',\n 'Europe/London',\n 'Europe/Luxembourg',\n 'Europe/Madrid',\n 'Europe/Malta',\n 'Europe/Mariehamn',\n 'Europe/Minsk',\n 'Europe/Monaco',\n 'Europe/Moscow',\n 'Europe/Nicosia',\n 'Europe/Oslo',\n 'Europe/Paris',\n 'Europe/Podgorica',\n 'Europe/Prague',\n 'Europe/Riga',\n 'Europe/Rome',\n 'Europe/Samara',\n 'Europe/San_Marino',\n 'Europe/Sarajevo',\n 'Europe/Saratov',\n 'Europe/Simferopol',\n 'Europe/Skopje',\n 'Europe/Sofia',\n 'Europe/Stockholm',\n 'Europe/Tallinn',\n 'Europe/Tirane',\n 'Europe/Tiraspol',\n 'Europe/Ulyanovsk',\n 'Europe/Uzhgorod',\n 'Europe/Vaduz',\n 'Europe/Vatican',\n 'Europe/Vienna',\n 'Europe/Vilnius',\n 'Europe/Volgograd',\n 'Europe/Warsaw',\n 'Europe/Zagreb',\n 'Europe/Zaporozhye',\n 'Europe/Zurich',\n 'Factory',\n 'GB',\n 'GB-Eire',\n 'GMT',\n 'GMT+0',\n 'GMT-0',\n 'GMT0',\n 'Greenwich',\n 'HST',\n 'Hongkong',\n 'Iceland',\n 'Indian/Antananarivo',\n 'Indian/Chagos',\n 'Indian/Christmas',\n 'Indian/Cocos',\n 'Indian/Comoro',\n 'Indian/Kerguelen',\n 'Indian/Mahe',\n 'Indian/Maldives',\n 'Indian/Mauritius',\n 'Indian/Mayotte',\n 'Indian/Reunion',\n 'Iran',\n 'Israel',\n 'Jamaica',\n 'Japan',\n 'Kwajalein',\n 'Libya',\n 'MET',\n 'MST',\n 'MST7MDT',\n 'Mexico/BajaNorte',\n 'Mexico/BajaSur',\n 'Mexico/General',\n 'NZ',\n 'NZ-CHAT',\n 'Navajo',\n 'PRC',\n 'PST8PDT',\n 'Pacific/Apia',\n 'Pacific/Auckland',\n 'Pacific/Bougainville',\n 'Pacific/Chatham',\n 'Pacific/Chuuk',\n 'Pacific/Easter',\n 'Pacific/Efate',\n 'Pacific/Enderbury',\n 'Pacific/Fakaofo',\n 'Pacific/Fiji',\n 'Pacific/Funafuti',\n 'Pacific/Galapagos',\n 'Pacific/Gambier',\n 'Pacific/Guadalcanal',\n 'Pacific/Guam',\n 'Pacific/Honolulu',\n 'Pacific/Johnston',\n 'Pacific/Kiritimati',\n 'Pacific/Kosrae',\n 'Pacific/Kwajalein',\n 'Pacific/Majuro',\n 'Pacific/Marquesas',\n 'Pacific/Midway',\n 'Pacific/Nauru',\n 'Pacific/Niue',\n 'Pacific/Norfolk',\n 'Pacific/Noumea',\n 'Pacific/Pago_Pago',\n 'Pacific/Palau',\n 'Pacific/Pitcairn',\n 'Pacific/Pohnpei',\n 'Pacific/Ponape',\n 'Pacific/Port_Moresby',\n 'Pacific/Rarotonga',\n 'Pacific/Saipan',\n 'Pacific/Samoa',\n 'Pacific/Tahiti',\n 'Pacific/Tarawa',\n 'Pacific/Tongatapu',\n 'Pacific/Truk',\n 'Pacific/Wake',\n 'Pacific/Wallis',\n 'Pacific/Yap',\n 'Poland',\n 'Portugal',\n 'ROC',\n 'ROK',\n 'Singapore',\n 'Turkey',\n 'UCT',\n 'US/Alaska',\n 'US/Aleutian',\n 'US/Arizona',\n 'US/Central',\n 'US/East-Indiana',\n 'US/Eastern',\n 'US/Hawaii',\n 'US/Indiana-Starke',\n 'US/Michigan',\n 'US/Mountain',\n 'US/Pacific',\n 'US/Pacific-New',\n 'US/Samoa',\n 'UTC',\n 'Universal',\n 'W-SU',\n 'WET',\n 'Zulu',\n];\n"],"mappings":";AAEA,IAAa,YAAsB;CACjC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD"}
1
+ {"version":3,"file":"timezones.js","names":[],"sources":["../../../src/components/date-time-picker/timezones.ts"],"sourcesContent":["/* eslint-disable max-lines */\n\nexport const timezones: string[] = [\n 'Africa/Abidjan',\n 'Africa/Accra',\n 'Africa/Addis_Ababa',\n 'Africa/Algiers',\n 'Africa/Asmara',\n 'Africa/Asmera',\n 'Africa/Bamako',\n 'Africa/Bangui',\n 'Africa/Banjul',\n 'Africa/Bissau',\n 'Africa/Blantyre',\n 'Africa/Brazzaville',\n 'Africa/Bujumbura',\n 'Africa/Cairo',\n 'Africa/Casablanca',\n 'Africa/Ceuta',\n 'Africa/Conakry',\n 'Africa/Dakar',\n 'Africa/Dar_es_Salaam',\n 'Africa/Djibouti',\n 'Africa/Douala',\n 'Africa/El_Aaiun',\n 'Africa/Freetown',\n 'Africa/Gaborone',\n 'Africa/Harare',\n 'Africa/Johannesburg',\n 'Africa/Juba',\n 'Africa/Kampala',\n 'Africa/Khartoum',\n 'Africa/Kigali',\n 'Africa/Kinshasa',\n 'Africa/Lagos',\n 'Africa/Libreville',\n 'Africa/Lome',\n 'Africa/Luanda',\n 'Africa/Lubumbashi',\n 'Africa/Lusaka',\n 'Africa/Malabo',\n 'Africa/Maputo',\n 'Africa/Maseru',\n 'Africa/Mbabane',\n 'Africa/Mogadishu',\n 'Africa/Monrovia',\n 'Africa/Nairobi',\n 'Africa/Ndjamena',\n 'Africa/Niamey',\n 'Africa/Nouakchott',\n 'Africa/Ouagadougou',\n 'Africa/Porto-Novo',\n 'Africa/Sao_Tome',\n 'Africa/Timbuktu',\n 'Africa/Tripoli',\n 'Africa/Tunis',\n 'Africa/Windhoek',\n 'America/Adak',\n 'America/Anchorage',\n 'America/Anguilla',\n 'America/Antigua',\n 'America/Araguaina',\n 'America/Argentina/Buenos_Aires',\n 'America/Argentina/Catamarca',\n 'America/Argentina/ComodRivadavia',\n 'America/Argentina/Cordoba',\n 'America/Argentina/Jujuy',\n 'America/Argentina/La_Rioja',\n 'America/Argentina/Mendoza',\n 'America/Argentina/Rio_Gallegos',\n 'America/Argentina/Salta',\n 'America/Argentina/San_Juan',\n 'America/Argentina/San_Luis',\n 'America/Argentina/Tucuman',\n 'America/Argentina/Ushuaia',\n 'America/Aruba',\n 'America/Asuncion',\n 'America/Atikokan',\n 'America/Atka',\n 'America/Bahia',\n 'America/Bahia_Banderas',\n 'America/Barbados',\n 'America/Belem',\n 'America/Belize',\n 'America/Blanc-Sablon',\n 'America/Boa_Vista',\n 'America/Bogota',\n 'America/Boise',\n 'America/Buenos_Aires',\n 'America/Cambridge_Bay',\n 'America/Campo_Grande',\n 'America/Cancun',\n 'America/Caracas',\n 'America/Catamarca',\n 'America/Cayenne',\n 'America/Cayman',\n 'America/Chicago',\n 'America/Chihuahua',\n 'America/Ciudad_Juarez',\n 'America/Coral_Harbour',\n 'America/Cordoba',\n 'America/Costa_Rica',\n 'America/Coyhaique',\n 'America/Creston',\n 'America/Cuiaba',\n 'America/Curacao',\n 'America/Danmarkshavn',\n 'America/Dawson',\n 'America/Dawson_Creek',\n 'America/Denver',\n 'America/Detroit',\n 'America/Dominica',\n 'America/Edmonton',\n 'America/Eirunepe',\n 'America/El_Salvador',\n 'America/Ensenada',\n 'America/Fort_Nelson',\n 'America/Fort_Wayne',\n 'America/Fortaleza',\n 'America/Glace_Bay',\n 'America/Godthab',\n 'America/Goose_Bay',\n 'America/Grand_Turk',\n 'America/Grenada',\n 'America/Guadeloupe',\n 'America/Guatemala',\n 'America/Guayaquil',\n 'America/Guyana',\n 'America/Halifax',\n 'America/Havana',\n 'America/Hermosillo',\n 'America/Indiana/Indianapolis',\n 'America/Indiana/Knox',\n 'America/Indiana/Marengo',\n 'America/Indiana/Petersburg',\n 'America/Indiana/Tell_City',\n 'America/Indiana/Vevay',\n 'America/Indiana/Vincennes',\n 'America/Indiana/Winamac',\n 'America/Indianapolis',\n 'America/Inuvik',\n 'America/Iqaluit',\n 'America/Jamaica',\n 'America/Jujuy',\n 'America/Juneau',\n 'America/Kentucky/Louisville',\n 'America/Kentucky/Monticello',\n 'America/Knox_IN',\n 'America/Kralendijk',\n 'America/La_Paz',\n 'America/Lima',\n 'America/Los_Angeles',\n 'America/Louisville',\n 'America/Lower_Princes',\n 'America/Maceio',\n 'America/Managua',\n 'America/Manaus',\n 'America/Marigot',\n 'America/Martinique',\n 'America/Matamoros',\n 'America/Mazatlan',\n 'America/Mendoza',\n 'America/Menominee',\n 'America/Merida',\n 'America/Metlakatla',\n 'America/Mexico_City',\n 'America/Miquelon',\n 'America/Moncton',\n 'America/Monterrey',\n 'America/Montevideo',\n 'America/Montreal',\n 'America/Montserrat',\n 'America/Nassau',\n 'America/New_York',\n 'America/Nipigon',\n 'America/Nome',\n 'America/Noronha',\n 'America/North_Dakota/Beulah',\n 'America/North_Dakota/Center',\n 'America/North_Dakota/New_Salem',\n 'America/Nuuk',\n 'America/Ojinaga',\n 'America/Panama',\n 'America/Pangnirtung',\n 'America/Paramaribo',\n 'America/Phoenix',\n 'America/Port-au-Prince',\n 'America/Port_of_Spain',\n 'America/Porto_Acre',\n 'America/Porto_Velho',\n 'America/Puerto_Rico',\n 'America/Punta_Arenas',\n 'America/Rainy_River',\n 'America/Rankin_Inlet',\n 'America/Recife',\n 'America/Regina',\n 'America/Resolute',\n 'America/Rio_Branco',\n 'America/Rosario',\n 'America/Santa_Isabel',\n 'America/Santarem',\n 'America/Santiago',\n 'America/Santo_Domingo',\n 'America/Sao_Paulo',\n 'America/Scoresbysund',\n 'America/Shiprock',\n 'America/Sitka',\n 'America/St_Barthelemy',\n 'America/St_Johns',\n 'America/St_Kitts',\n 'America/St_Lucia',\n 'America/St_Thomas',\n 'America/St_Vincent',\n 'America/Swift_Current',\n 'America/Tegucigalpa',\n 'America/Thule',\n 'America/Thunder_Bay',\n 'America/Tijuana',\n 'America/Toronto',\n 'America/Tortola',\n 'America/Vancouver',\n 'America/Virgin',\n 'America/Whitehorse',\n 'America/Winnipeg',\n 'America/Yakutat',\n 'America/Yellowknife',\n 'Antarctica/Casey',\n 'Antarctica/Davis',\n 'Antarctica/DumontDUrville',\n 'Antarctica/Macquarie',\n 'Antarctica/Mawson',\n 'Antarctica/McMurdo',\n 'Antarctica/Palmer',\n 'Antarctica/Rothera',\n 'Antarctica/South_Pole',\n 'Antarctica/Syowa',\n 'Antarctica/Troll',\n 'Antarctica/Vostok',\n 'Arctic/Longyearbyen',\n 'Asia/Aden',\n 'Asia/Almaty',\n 'Asia/Amman',\n 'Asia/Anadyr',\n 'Asia/Aqtau',\n 'Asia/Aqtobe',\n 'Asia/Ashgabat',\n 'Asia/Ashkhabad',\n 'Asia/Atyrau',\n 'Asia/Baghdad',\n 'Asia/Bahrain',\n 'Asia/Baku',\n 'Asia/Bangkok',\n 'Asia/Barnaul',\n 'Asia/Beirut',\n 'Asia/Bishkek',\n 'Asia/Brunei',\n 'Asia/Calcutta',\n 'Asia/Chita',\n 'Asia/Choibalsan',\n 'Asia/Chongqing',\n 'Asia/Chungking',\n 'Asia/Colombo',\n 'Asia/Dacca',\n 'Asia/Damascus',\n 'Asia/Dhaka',\n 'Asia/Dili',\n 'Asia/Dubai',\n 'Asia/Dushanbe',\n 'Asia/Famagusta',\n 'Asia/Gaza',\n 'Asia/Harbin',\n 'Asia/Hebron',\n 'Asia/Ho_Chi_Minh',\n 'Asia/Hong_Kong',\n 'Asia/Hovd',\n 'Asia/Irkutsk',\n 'Asia/Istanbul',\n 'Asia/Jakarta',\n 'Asia/Jayapura',\n 'Asia/Jerusalem',\n 'Asia/Kabul',\n 'Asia/Kamchatka',\n 'Asia/Karachi',\n 'Asia/Kashgar',\n 'Asia/Kathmandu',\n 'Asia/Katmandu',\n 'Asia/Khandyga',\n 'Asia/Kolkata',\n 'Asia/Krasnoyarsk',\n 'Asia/Kuala_Lumpur',\n 'Asia/Kuching',\n 'Asia/Kuwait',\n 'Asia/Macao',\n 'Asia/Macau',\n 'Asia/Magadan',\n 'Asia/Makassar',\n 'Asia/Manila',\n 'Asia/Muscat',\n 'Asia/Nicosia',\n 'Asia/Novokuznetsk',\n 'Asia/Novosibirsk',\n 'Asia/Omsk',\n 'Asia/Oral',\n 'Asia/Phnom_Penh',\n 'Asia/Pontianak',\n 'Asia/Pyongyang',\n 'Asia/Qatar',\n 'Asia/Qostanay',\n 'Asia/Qyzylorda',\n 'Asia/Rangoon',\n 'Asia/Riyadh',\n 'Asia/Saigon',\n 'Asia/Sakhalin',\n 'Asia/Samarkand',\n 'Asia/Seoul',\n 'Asia/Shanghai',\n 'Asia/Singapore',\n 'Asia/Srednekolymsk',\n 'Asia/Taipei',\n 'Asia/Tashkent',\n 'Asia/Tbilisi',\n 'Asia/Tehran',\n 'Asia/Tel_Aviv',\n 'Asia/Thimbu',\n 'Asia/Thimphu',\n 'Asia/Tokyo',\n 'Asia/Tomsk',\n 'Asia/Ujung_Pandang',\n 'Asia/Ulaanbaatar',\n 'Asia/Ulan_Bator',\n 'Asia/Urumqi',\n 'Asia/Ust-Nera',\n 'Asia/Vientiane',\n 'Asia/Vladivostok',\n 'Asia/Yakutsk',\n 'Asia/Yangon',\n 'Asia/Yekaterinburg',\n 'Asia/Yerevan',\n 'Atlantic/Azores',\n 'Atlantic/Bermuda',\n 'Atlantic/Canary',\n 'Atlantic/Cape_Verde',\n 'Atlantic/Faeroe',\n 'Atlantic/Faroe',\n 'Atlantic/Jan_Mayen',\n 'Atlantic/Madeira',\n 'Atlantic/Reykjavik',\n 'Atlantic/South_Georgia',\n 'Atlantic/St_Helena',\n 'Atlantic/Stanley',\n 'Australia/ACT',\n 'Australia/Adelaide',\n 'Australia/Brisbane',\n 'Australia/Broken_Hill',\n 'Australia/Canberra',\n 'Australia/Currie',\n 'Australia/Darwin',\n 'Australia/Eucla',\n 'Australia/Hobart',\n 'Australia/LHI',\n 'Australia/Lindeman',\n 'Australia/Lord_Howe',\n 'Australia/Melbourne',\n 'Australia/NSW',\n 'Australia/North',\n 'Australia/Perth',\n 'Australia/Queensland',\n 'Australia/South',\n 'Australia/Sydney',\n 'Australia/Tasmania',\n 'Australia/Victoria',\n 'Australia/West',\n 'Australia/Yancowinna',\n 'Brazil/Acre',\n 'Brazil/DeNoronha',\n 'Brazil/East',\n 'Brazil/West',\n 'CET',\n 'CST6CDT',\n 'Canada/Atlantic',\n 'Canada/Central',\n 'Canada/Eastern',\n 'Canada/Mountain',\n 'Canada/Newfoundland',\n 'Canada/Pacific',\n 'Canada/Saskatchewan',\n 'Canada/Yukon',\n 'Chile/Continental',\n 'Chile/EasterIsland',\n 'Cuba',\n 'EET',\n 'EST',\n 'EST5EDT',\n 'Egypt',\n 'Eire',\n 'Etc/GMT',\n 'Etc/GMT+0',\n 'Etc/GMT+1',\n 'Etc/GMT+10',\n 'Etc/GMT+11',\n 'Etc/GMT+12',\n 'Etc/GMT+2',\n 'Etc/GMT+3',\n 'Etc/GMT+4',\n 'Etc/GMT+5',\n 'Etc/GMT+6',\n 'Etc/GMT+7',\n 'Etc/GMT+8',\n 'Etc/GMT+9',\n 'Etc/GMT-0',\n 'Etc/GMT-1',\n 'Etc/GMT-10',\n 'Etc/GMT-11',\n 'Etc/GMT-12',\n 'Etc/GMT-13',\n 'Etc/GMT-14',\n 'Etc/GMT-2',\n 'Etc/GMT-3',\n 'Etc/GMT-4',\n 'Etc/GMT-5',\n 'Etc/GMT-6',\n 'Etc/GMT-7',\n 'Etc/GMT-8',\n 'Etc/GMT-9',\n 'Etc/GMT0',\n 'Etc/Greenwich',\n 'Etc/UCT',\n 'Etc/UTC',\n 'Etc/Universal',\n 'Etc/Zulu',\n 'Europe/Amsterdam',\n 'Europe/Andorra',\n 'Europe/Astrakhan',\n 'Europe/Athens',\n 'Europe/Belfast',\n 'Europe/Belgrade',\n 'Europe/Berlin',\n 'Europe/Bratislava',\n 'Europe/Brussels',\n 'Europe/Bucharest',\n 'Europe/Budapest',\n 'Europe/Busingen',\n 'Europe/Chisinau',\n 'Europe/Copenhagen',\n 'Europe/Dublin',\n 'Europe/Gibraltar',\n 'Europe/Guernsey',\n 'Europe/Helsinki',\n 'Europe/Isle_of_Man',\n 'Europe/Istanbul',\n 'Europe/Jersey',\n 'Europe/Kaliningrad',\n 'Europe/Kiev',\n 'Europe/Kirov',\n 'Europe/Lisbon',\n 'Europe/Ljubljana',\n 'Europe/London',\n 'Europe/Luxembourg',\n 'Europe/Madrid',\n 'Europe/Malta',\n 'Europe/Mariehamn',\n 'Europe/Minsk',\n 'Europe/Monaco',\n 'Europe/Moscow',\n 'Europe/Nicosia',\n 'Europe/Oslo',\n 'Europe/Paris',\n 'Europe/Podgorica',\n 'Europe/Prague',\n 'Europe/Riga',\n 'Europe/Rome',\n 'Europe/Samara',\n 'Europe/San_Marino',\n 'Europe/Sarajevo',\n 'Europe/Saratov',\n 'Europe/Simferopol',\n 'Europe/Skopje',\n 'Europe/Sofia',\n 'Europe/Stockholm',\n 'Europe/Tallinn',\n 'Europe/Tirane',\n 'Europe/Tiraspol',\n 'Europe/Ulyanovsk',\n 'Europe/Uzhgorod',\n 'Europe/Vaduz',\n 'Europe/Vatican',\n 'Europe/Vienna',\n 'Europe/Vilnius',\n 'Europe/Volgograd',\n 'Europe/Warsaw',\n 'Europe/Zagreb',\n 'Europe/Zaporozhye',\n 'Europe/Zurich',\n 'Factory',\n 'GB',\n 'GB-Eire',\n 'GMT',\n 'GMT+0',\n 'GMT-0',\n 'GMT0',\n 'Greenwich',\n 'HST',\n 'Hongkong',\n 'Iceland',\n 'Indian/Antananarivo',\n 'Indian/Chagos',\n 'Indian/Christmas',\n 'Indian/Cocos',\n 'Indian/Comoro',\n 'Indian/Kerguelen',\n 'Indian/Mahe',\n 'Indian/Maldives',\n 'Indian/Mauritius',\n 'Indian/Mayotte',\n 'Indian/Reunion',\n 'Iran',\n 'Israel',\n 'Jamaica',\n 'Japan',\n 'Kwajalein',\n 'Libya',\n 'MET',\n 'MST',\n 'MST7MDT',\n 'Mexico/BajaNorte',\n 'Mexico/BajaSur',\n 'Mexico/General',\n 'NZ',\n 'NZ-CHAT',\n 'Navajo',\n 'PRC',\n 'PST8PDT',\n 'Pacific/Apia',\n 'Pacific/Auckland',\n 'Pacific/Bougainville',\n 'Pacific/Chatham',\n 'Pacific/Chuuk',\n 'Pacific/Easter',\n 'Pacific/Efate',\n 'Pacific/Enderbury',\n 'Pacific/Fakaofo',\n 'Pacific/Fiji',\n 'Pacific/Funafuti',\n 'Pacific/Galapagos',\n 'Pacific/Gambier',\n 'Pacific/Guadalcanal',\n 'Pacific/Guam',\n 'Pacific/Honolulu',\n 'Pacific/Johnston',\n 'Pacific/Kiritimati',\n 'Pacific/Kosrae',\n 'Pacific/Kwajalein',\n 'Pacific/Majuro',\n 'Pacific/Marquesas',\n 'Pacific/Midway',\n 'Pacific/Nauru',\n 'Pacific/Niue',\n 'Pacific/Norfolk',\n 'Pacific/Noumea',\n 'Pacific/Pago_Pago',\n 'Pacific/Palau',\n 'Pacific/Pitcairn',\n 'Pacific/Pohnpei',\n 'Pacific/Ponape',\n 'Pacific/Port_Moresby',\n 'Pacific/Rarotonga',\n 'Pacific/Saipan',\n 'Pacific/Samoa',\n 'Pacific/Tahiti',\n 'Pacific/Tarawa',\n 'Pacific/Tongatapu',\n 'Pacific/Truk',\n 'Pacific/Wake',\n 'Pacific/Wallis',\n 'Pacific/Yap',\n 'Poland',\n 'Portugal',\n 'ROC',\n 'ROK',\n 'Singapore',\n 'Turkey',\n 'UCT',\n 'US/Alaska',\n 'US/Aleutian',\n 'US/Arizona',\n 'US/Central',\n 'US/East-Indiana',\n 'US/Eastern',\n 'US/Hawaii',\n 'US/Indiana-Starke',\n 'US/Michigan',\n 'US/Mountain',\n 'US/Pacific',\n 'US/Pacific-New',\n 'US/Samoa',\n 'UTC',\n 'Universal',\n 'W-SU',\n 'WET',\n 'Zulu',\n];\n"],"mappings":";AAEA,IAAa,YAAsB;CACjC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF"}
@@ -12,6 +12,6 @@ function isDateTimeSegmentType(value) {
12
12
  return DATE_TIME_SEGMENT_TYPES.includes(value);
13
13
  }
14
14
  //#endregion
15
- export { isDateTimeSegmentType };
15
+ export { DATE_TIME_SEGMENT_TYPES, isDateTimeSegmentType };
16
16
 
17
17
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/components/date-time-picker/types.ts"],"sourcesContent":["import type { Ref } from 'vue';\n\nexport const DATE_TIME_SEGMENT_TYPES = [\n 'DD',\n 'MM',\n 'YYYY',\n 'HH',\n 'mm',\n 'ss',\n 'SSS',\n] as const;\n\nexport type DateTimeSegmentType = typeof DATE_TIME_SEGMENT_TYPES[number];\n\nexport function isDateTimeSegmentType(value: string): value is DateTimeSegmentType {\n return (DATE_TIME_SEGMENT_TYPES as readonly string[]).includes(value);\n}\n\nexport type SegmentData = Record<DateTimeSegmentType, Ref<number | undefined>>;\n"],"mappings":";AAEA,IAAa,0BAA0B;CACrC;CACA;CACA;CACA;CACA;CACA;CACA;CACD;AAID,SAAgB,sBAAsB,OAA6C;AACjF,QAAQ,wBAA8C,SAAS,MAAM"}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/components/date-time-picker/types.ts"],"sourcesContent":["import type { Ref } from 'vue';\n\nexport const DATE_TIME_SEGMENT_TYPES = [\n 'DD',\n 'MM',\n 'YYYY',\n 'HH',\n 'mm',\n 'ss',\n 'SSS',\n] as const;\n\nexport type DateTimeSegmentType = typeof DATE_TIME_SEGMENT_TYPES[number];\n\nexport function isDateTimeSegmentType(value: string): value is DateTimeSegmentType {\n return (DATE_TIME_SEGMENT_TYPES as readonly string[]).includes(value);\n}\n\nexport type SegmentData = Record<DateTimeSegmentType, Ref<number | undefined>>;\n"],"mappings":";AAEA,IAAa,0BAA0B;CACrC;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,SAAgB,sBAAsB,OAA6C;CACjF,OAAQ,wBAA8C,SAAS,KAAK;AACtE"}
@@ -23,13 +23,13 @@ function useDateTimeSelection(options) {
23
23
  const now = ref(dayjs.tz(void 0, guessTimezone()));
24
24
  const minAllowedDate = computed(() => {
25
25
  if (minDate === void 0) return new Date(1970, 0, 1);
26
- if (type === "epoch" && typeof minDate === "number") return new Date(minDate * MILLISECONDS);
26
+ if (type === "epoch" && typeof minDate === "number") return /* @__PURE__ */ new Date(minDate * MILLISECONDS);
27
27
  return new Date(minDate);
28
28
  });
29
29
  const maxAllowedDate = computed(() => {
30
30
  if (maxDate === void 0) return;
31
31
  if (maxDate === "now") return get$1(now).toDate();
32
- if (type === "epoch" && typeof maxDate === "number") return new Date(maxDate * MILLISECONDS);
32
+ if (type === "epoch" && typeof maxDate === "number") return /* @__PURE__ */ new Date(maxDate * MILLISECONDS);
33
33
  return new Date(maxDate);
34
34
  });
35
35
  const segmentData = {
@@ -1 +1 @@
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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"}
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":";;;;;;;;;AAiDA,IAAM,eAAe;AAErB,SAAgB,qBACd,SACyB;CACzB,MAAM,EACJ,UACA,YACA,SACA,SACA,YACA,SACE;CAEJ,MAAM,EAAE,MAAM,UAAU;CAExB,MAAM,eAAe,IAAwB;CAC7C,MAAM,gBAAgB,IAAwB;CAC9C,MAAM,cAAc,IAAwB;CAE5C,MAAM,eAAe,IAAwB;CAC7C,MAAM,iBAAiB,IAAwB;CAC/C,MAAM,iBAAiB,IAAwB;CAC/C,MAAM,sBAAsB,IAAwB;CACpD,MAAM,mBAAmB,IAAwB,cAAc,CAAC;CAEhE,MAAM,wBAAwB,IAAc,CAAC,CAAC;CAC9C,MAAM,MAAM,IAAW,MAAM,GAAG,KAAA,GAAW,cAAc,CAAC,CAAC;CAE3D,MAAM,iBAAiB,eAAqB;EAC1C,IAAI,YAAY,KAAA,GACd,OAAO,IAAI,KAAK,MAAM,GAAG,CAAC;EAG5B,IAAI,SAAS,WAAW,OAAO,YAAY,UACzC,uBAAO,IAAI,KAAK,UAAU,YAAY;EAGxC,OAAO,IAAI,KAAK,OAAO;CACzB,CAAC;CAED,MAAM,iBAAiB,eAAiC;EACtD,IAAI,YAAY,KAAA,GACd;EAEF,IAAI,YAAY,OACd,OAAO,MAAI,GAAG,CAAC,CAAC,OAAO;EAEzB,IAAI,SAAS,WAAW,OAAO,YAAY,UACzC,uBAAO,IAAI,KAAK,UAAU,YAAY;EAExC,OAAO,IAAI,KAAK,OAAO;CACzB,CAAC;CAED,MAAM,cAA2B;EAC/B,IAAI;EACJ,IAAI;EACJ,IAAI;EACJ,KAAK;EACL,MAAM;EACN,IAAI;EACJ,IAAI;CACN;CAEA,MAAM,eAAe,SAA2B;EAC9C,MAAM;GACJ,IAAI,EAAE,UAAU,YAAY,KAAK,UAAU,aAAa,KAAK,UAAU,WAAW,IAChF;GAEF,MAAM,uBAAO,IAAI,KAAK;GACtB,KAAK,YAAY,MAAI,YAAY,CAAC;GAGlC,KAAK,QAAQ,CAAC;GACd,KAAK,SAAS,MAAI,aAAa,IAAI,CAAC;GACpC,KAAK,QAAQ,MAAI,WAAW,CAAC;GAC7B,OAAO;EACT;EACA,IAAI,OAAc;GAChB,MAAI,cAAc,OAAO,YAAY,CAAC;GACtC,MAAI,eAAe,QAAQ,MAAM,SAAS,IAAI,IAAI,KAAA,CAAS;GAC3D,MAAI,aAAa,OAAO,QAAQ,CAAC;EACnC;CACF,CAAC;CAED,MAAM,eAAe,SAA2B;EAC9C,MAAM;GACJ,IAAI,EAAE,UAAU,YAAY,KAAK,UAAU,cAAc,IACvD;GAEF,MAAM,uBAAO,IAAI,KAAK;GACtB,KAAK,SACH,MAAI,YAAY,GAChB,MAAI,cAAc,GAClB,MAAI,cAAc,KAAK,GACvB,MAAI,mBAAmB,KAAK,CAC9B;GACA,OAAO;EACT;EACA,IAAI,OAAc;GAChB,MAAI,cAAc,OAAO,SAAS,CAAC;GACnC,MAAI,gBAAgB,OAAO,WAAW,CAAC;GACvC,MAAI,gBAAgB,OAAO,WAAW,CAAC;GACvC,MAAI,qBAAqB,OAAO,gBAAgB,CAAC;EACnD;CACF,CAAC;CAED,MAAM,WAAW,eAAwB,UAAU,YAAY,KAAK,UAAU,YAAY,CAAC;CAE3F,SAAS,cAAqB;EAC5B,IAAI,WAAW,MAAM;EAErB,IAAI,UAAU,YAAY,GACxB,WAAW,SAAS,KAAK,MAAI,YAAY,CAAC;EAG5C,IAAI,UAAU,aAAa,GACzB,WAAW,SAAS,MAAM,MAAI,aAAa,IAAI,CAAC;EAGlD,IAAI,UAAU,WAAW,GAAG;GAC1B,MAAM,cAAc,SAAS,YAAY;GACzC,MAAM,MAAM,KAAK,IAAI,MAAI,WAAW,GAAG,WAAW;GAClD,WAAW,SAAS,KAAK,GAAG;EAC9B;EAEA,IAAI,UAAU,YAAY,GACxB,WAAW,SAAS,KAAK,MAAI,YAAY,CAAC;EAG5C,IAAI,UAAU,cAAc,GAC1B,WAAW,SAAS,OAAO,MAAI,cAAc,CAAC;EAGhD,IAAI,UAAU,cAAc,GAC1B,WAAW,SAAS,OAAO,MAAI,cAAc,CAAC;EAGhD,IAAI,UAAU,mBAAmB,GAC/B,WAAW,SAAS,YAAY,MAAI,mBAAmB,CAAC;EAG1D,OAAO;CACT;CAEA,SAAS,YAAY,MAAsB;EACzC,MAAM,MAAM,MAAI,cAAc;EAC9B,MAAM,MAAM,MAAI,cAAc;EAE9B,MAAI,uBAAuB,CAAC,CAAC;EAE7B,IAAI,OAAO,KAAK,SAAS,GAAG,GAAG;GAC7B,MAAM,eAAe,EAAE,cAAc,eAAe,eAAe,EACjE,MAAM,IAAI,mBAAmB,EAC/B,GAAG,yBAAyB,IAAI,mBAAmB,GAAG;GACtD,MAAI,uBAAuB,CAAC,GAAG,MAAI,qBAAqB,GAAG,YAAY,CAAC;GACxE,OAAO;EACT;EAEA,IAAI,OAAO,KAAK,QAAQ,GAAG,GAAG;GAC5B,MAAM,WAAW,EAAE,cAAc,eAAe,cAAc,2CAA2C;GACzG,MAAM,WAAW,EAAE,cAAc,eAAe,cAAc,EAAE,MAAM,IAAI,mBAAmB,EAAE,GAAG,wBAAwB,IAAI,mBAAmB,GAAG;GACpJ,MAAM,eAAe,YAAY,QAAQ,WAAW;GACpD,MAAI,uBAAuB,CAAC,GAAG,MAAI,qBAAqB,GAAG,YAAY,CAAC;GACxE,OAAO;EACT;EAEA,OAAO;CACT;CAEA,SAAS,WAAW,cAA2B;EAO7C,MAAI,YAAY;GALd,cAAc,aAAa,OAAO;GAClC,eAAe,aAAa,QAAQ,IAAI;GACxC,kBAAkB,aAAa,QAAQ;EAGzB,EAAQ,KAAK,CAAC,CAAsB;CACtD;CAEA,SAAS,mBAAyB;EAChC,IAAI,CAAC,UAAU,YAAY,KAAK,CAAC,UAAU,YAAY,GACrD;EAGF,IAAI,EAAE,UAAU,YAAY,KAAK,UAAU,YAAY,IACrD,MAAI,YAAY,KAAA,CAA8B;OAE3C;GACH,MAAM,OAAO,MAAI,YAAY;GAC7B,MAAM,OAAO,MAAI,YAAY;GAE7B,MAAM,eAAe,MAAM,GAAG,UAAU,UAAU,IAAI,MAAI,UAAU,IAAI,KAAA,GAAW,MAAI,gBAAgB,CAAC,CAAC,CACtG,KAAK,KAAK,YAAY,CAAC,CAAC,CACxB,MAAM,KAAK,SAAS,CAAC,CAAC,CACtB,KAAK,KAAK,QAAQ,CAAC,CAAC,CACpB,KAAK,KAAK,SAAS,CAAC,CAAC,CACrB,OAAO,KAAK,WAAW,CAAC,CAAC,CACzB,OAAO,eAAe,QAAQ,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,CACxD,YAAY,oBAAoB,QAAQ,IAAI,KAAK,gBAAgB,IAAI,CAAC;GAEzE,IAAI,CAAC,YAAY,YAAY,GAC3B;GAGF,WAAW,YAAY;EACzB;CACF;CAEA,SAAS,QAAc;EACrB,MAAI,uBAAuB,CAAC,CAAC;EAC7B,MAAI,cAAc,KAAA,CAAS;EAC3B,MAAI,eAAe,KAAA,CAAS;EAC5B,MAAI,aAAa,KAAA,CAAS;EAC1B,MAAI,cAAc,KAAA,CAAS;EAC3B,MAAI,gBAAgB,KAAA,CAAS;EAC7B,MAAI,gBAAgB,KAAA,CAAS;EAC7B,MAAI,qBAAqB,KAAA,CAAS;EAClC,MAAI,YAAY,KAAA,CAA8B;CAChD;CAEA,SAAS,SAAe;EACtB,MAAI,uBAAuB,CAAC,CAAC;EAE7B,MAAM,OAAO,MAAM;EACnB,MAAI,KAAK,IAAI;EACb,MAAI,cAAc,KAAK,KAAK,CAAC;EAC7B,MAAI,eAAe,KAAK,MAAM,IAAI,CAAC;EACnC,MAAI,aAAa,KAAK,KAAK,CAAC;EAC5B,MAAI,cAAc,KAAK,KAAK,CAAC;EAC7B,MAAI,gBAAgB,KAAK,OAAO,CAAC;EACjC,MAAI,gBAAgB,eAAe,QAAQ,IAAI,KAAK,OAAO,IAAI,CAAC;EAChE,MAAI,qBAAqB,oBAAoB,QAAQ,IAAI,KAAK,YAAY,IAAI,CAAC;EAE/E,eAAe;GACb,iBAAiB;EACnB,CAAC;CACH;CAEA,SAAS,eAAe,MAAmB;EACzC,MAAM,OAAO,KAAK,KAAK;EACvB,MAAM,QAAQ,KAAK,MAAM,IAAI;EAC7B,MAAM,MAAM,KAAK,KAAK;EACtB,MAAM,OAAO,KAAK,KAAK;EACvB,MAAM,SAAS,KAAK,OAAO;EAC3B,MAAM,SAAS,eAAe,QAAQ,IAAI,KAAK,OAAO,IAAI,KAAA;EAC1D,MAAM,cAAc,oBAAoB,QAAQ,IAAI,KAAK,YAAY,IAAI,KAAA;EAEzE,IAAI,MAAI,YAAY,MAAM,MACxB,MAAI,cAAc,IAAI;EACxB,IAAI,MAAI,aAAa,MAAM,OACzB,MAAI,eAAe,KAAK;EAC1B,IAAI,MAAI,WAAW,MAAM,KACvB,MAAI,aAAa,GAAG;EACtB,IAAI,MAAI,YAAY,MAAM,MACxB,MAAI,cAAc,IAAI;EACxB,IAAI,MAAI,cAAc,MAAM,QAC1B,MAAI,gBAAgB,MAAM;EAC5B,IAAI,MAAI,cAAc,MAAM,QAC1B,MAAI,gBAAgB,MAAM;EAC5B,IAAI,MAAI,mBAAmB,MAAM,aAC/B,MAAI,qBAAqB,WAAW;CACxC;CAEA,MAAM,EAAE,kBAAkB,eAAe,CAAC,cAAc,YAAY,IAAI,CAAC,iBAAiB,kBAAkB,CAAC,kBAAkB,sBAAsB;EACnJ,MAAM,kBAAkB,MAAI,gBAAgB;EAC5C,MAAM,UAAU,MAAM,GAAG,iBAAiB,eAAe;EACzD,MAAM,UAAU,MAAM,GAAG,kBAAkB,eAAe;EAC1D,MAAM,UAAU,MAAM,GAAG,iBAAiB,eAAe;EACzD,MAAM,UAAU,MAAM,GAAG,kBAAkB,eAAe;EAE1D,IAAI,QAAQ,OAAO,OAAO,KAAK,QAAQ,OAAO,OAAO,GACnD;EAGF,MAAI,KAAK,MAAM,CAAC;EAChB,iBAAiB;CACnB,CAAC;CAED,SAAS,oBAAoB,OAAgC;EAC3D,oBAAoB;GAClB,MAAM,eAAe,SAAS,WAAW,OAAO,UAAU,WACtD,QAAQ,eACR;GACJ,MAAM,OAAO,MAAM,GAAG,cAAc,MAAI,gBAAgB,CAAC;GACzD,YAAY,IAAI;GAChB,eAAe,IAAI;EACrB,CAAC;CACH;CAEA,MAAM,mBAAmB,gBAAoC;EAC3D,IAAI,eAAe,UAAU,YAAY,KAAK,UAAU,YAAY,GAAG;GACrE,MAAI,KAAK,MAAM,CAAC;GAChB,iBAAiB;EACnB;CACF,CAAC;CAED,MAAM,aAAa,UAAU;EAC3B,MAAI,KAAK,MAAM,CAAC;EAChB,IAAI,UAAU,KAAA,GACZ,MAAM;OAGN,oBAAoB,KAAK;CAE7B,CAAC;CAED,gBAAgB;EACd,IAAI,UAAU,UAAU,GACtB,oBAAoB,MAAI,UAAU,CAAC;OAEhC,IAAI,CAAC,YACR,OAAO;CAEX,CAAC;CAED,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-input-handler.js","names":[],"sources":["../../../src/components/date-time-picker/use-input-handler.ts"],"sourcesContent":["import type { Dayjs } from 'dayjs';\nimport type { Ref } from 'vue';\nimport type { DateTimeSegmentType, SegmentData } from '@/components/date-time-picker/types';\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport { includeMilliseconds, includeSeconds } from '@/components/date-time-picker/utils';\n\nexport function useInputHandler(data: SegmentData, currentValue: Ref<number | undefined>) {\n function setValue(segment: DateTimeSegmentType, value?: number) {\n if (get(data[segment]) !== value)\n set(data[segment], value);\n\n set(currentValue, value);\n }\n\n function onlySet(segment: DateTimeSegmentType, value?: number): void {\n if (get(data[segment]) === value)\n return;\n\n set(data[segment], value);\n }\n\n function update(date: Dayjs, accuracy: TimeAccuracy) {\n onlySet('YYYY', date.year());\n onlySet('MM', date.month() + 1);\n onlySet('DD', date.date());\n onlySet('HH', date.hour());\n onlySet('mm', date.minute());\n onlySet('ss', includeSeconds(accuracy) ? date.second() : undefined);\n onlySet('SSS', includeMilliseconds(accuracy) ? date.millisecond() : undefined);\n }\n\n function getCurrent(segment: DateTimeSegmentType): number | undefined {\n return get(data[segment]);\n }\n\n return { getCurrent, setValue, update };\n}\n"],"mappings":";;;AAMA,SAAgB,gBAAgB,MAAmB,cAAuC;CACxF,SAAS,SAAS,SAA8B,OAAgB;AAC9D,MAAI,IAAI,KAAK,SAAS,KAAK,MACzB,KAAI,KAAK,UAAU,MAAM;AAE3B,MAAI,cAAc,MAAM;;CAG1B,SAAS,QAAQ,SAA8B,OAAsB;AACnE,MAAI,IAAI,KAAK,SAAS,KAAK,MACzB;AAEF,MAAI,KAAK,UAAU,MAAM;;CAG3B,SAAS,OAAO,MAAa,UAAwB;AACnD,UAAQ,QAAQ,KAAK,MAAM,CAAC;AAC5B,UAAQ,MAAM,KAAK,OAAO,GAAG,EAAE;AAC/B,UAAQ,MAAM,KAAK,MAAM,CAAC;AAC1B,UAAQ,MAAM,KAAK,MAAM,CAAC;AAC1B,UAAQ,MAAM,KAAK,QAAQ,CAAC;AAC5B,UAAQ,MAAM,eAAe,SAAS,GAAG,KAAK,QAAQ,GAAG,KAAA,EAAU;AACnE,UAAQ,OAAO,oBAAoB,SAAS,GAAG,KAAK,aAAa,GAAG,KAAA,EAAU;;CAGhF,SAAS,WAAW,SAAkD;AACpE,SAAO,IAAI,KAAK,SAAS;;AAG3B,QAAO;EAAE;EAAY;EAAU;EAAQ"}
1
+ {"version":3,"file":"use-input-handler.js","names":[],"sources":["../../../src/components/date-time-picker/use-input-handler.ts"],"sourcesContent":["import type { Dayjs } from 'dayjs';\nimport type { Ref } from 'vue';\nimport type { DateTimeSegmentType, SegmentData } from '@/components/date-time-picker/types';\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport { includeMilliseconds, includeSeconds } from '@/components/date-time-picker/utils';\n\nexport function useInputHandler(data: SegmentData, currentValue: Ref<number | undefined>) {\n function setValue(segment: DateTimeSegmentType, value?: number) {\n if (get(data[segment]) !== value)\n set(data[segment], value);\n\n set(currentValue, value);\n }\n\n function onlySet(segment: DateTimeSegmentType, value?: number): void {\n if (get(data[segment]) === value)\n return;\n\n set(data[segment], value);\n }\n\n function update(date: Dayjs, accuracy: TimeAccuracy) {\n onlySet('YYYY', date.year());\n onlySet('MM', date.month() + 1);\n onlySet('DD', date.date());\n onlySet('HH', date.hour());\n onlySet('mm', date.minute());\n onlySet('ss', includeSeconds(accuracy) ? date.second() : undefined);\n onlySet('SSS', includeMilliseconds(accuracy) ? date.millisecond() : undefined);\n }\n\n function getCurrent(segment: DateTimeSegmentType): number | undefined {\n return get(data[segment]);\n }\n\n return { getCurrent, setValue, update };\n}\n"],"mappings":";;;AAMA,SAAgB,gBAAgB,MAAmB,cAAuC;CACxF,SAAS,SAAS,SAA8B,OAAgB;EAC9D,IAAI,IAAI,KAAK,QAAQ,MAAM,OACzB,IAAI,KAAK,UAAU,KAAK;EAE1B,IAAI,cAAc,KAAK;CACzB;CAEA,SAAS,QAAQ,SAA8B,OAAsB;EACnE,IAAI,IAAI,KAAK,QAAQ,MAAM,OACzB;EAEF,IAAI,KAAK,UAAU,KAAK;CAC1B;CAEA,SAAS,OAAO,MAAa,UAAwB;EACnD,QAAQ,QAAQ,KAAK,KAAK,CAAC;EAC3B,QAAQ,MAAM,KAAK,MAAM,IAAI,CAAC;EAC9B,QAAQ,MAAM,KAAK,KAAK,CAAC;EACzB,QAAQ,MAAM,KAAK,KAAK,CAAC;EACzB,QAAQ,MAAM,KAAK,OAAO,CAAC;EAC3B,QAAQ,MAAM,eAAe,QAAQ,IAAI,KAAK,OAAO,IAAI,KAAA,CAAS;EAClE,QAAQ,OAAO,oBAAoB,QAAQ,IAAI,KAAK,YAAY,IAAI,KAAA,CAAS;CAC/E;CAEA,SAAS,WAAW,SAAkD;EACpE,OAAO,IAAI,KAAK,QAAQ;CAC1B;CAEA,OAAO;EAAE;EAAY;EAAU;CAAO;AACxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-keyboard-handler.js","names":[],"sources":["../../../src/components/date-time-picker/use-keyboard-handler.ts"],"sourcesContent":["import type { Dayjs } from 'dayjs';\nimport type { Ref, ShallowRef } from 'vue';\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport { type Segment, SEGMENT_CONFIG, SEGMENT_METHODS } from '@/components/date-time-picker/segment-config';\nimport { getClickPosition, parseAndSetDateValues } from '@/components/date-time-picker/segment-utils';\nimport {\n type DateTimeSegmentType,\n isDateTimeSegmentType,\n} from '@/components/date-time-picker/types';\nimport { assert } from '@/utils/assert';\n\ninterface KeyboardHandlerOptions {\n dateFormat: Ref<string>;\n cursorPosition: Ref<number>;\n currentValue: Ref<number | undefined>;\n textInput: Readonly<ShallowRef<HTMLInputElement | null>> | Ref<HTMLInputElement | undefined>;\n setValue: (segment: DateTimeSegmentType, value?: number) => void;\n getCurrent: (segment: DateTimeSegmentType) => number | undefined;\n getDateTime: () => Dayjs;\n disabled: boolean;\n readonly: boolean;\n accuracy: TimeAccuracy;\n}\n\nexport function useKeyboardHandler(options: KeyboardHandlerOptions) {\n const {\n accuracy,\n currentValue,\n cursorPosition,\n dateFormat,\n disabled,\n getCurrent,\n getDateTime,\n readonly,\n setValue,\n textInput,\n } = options;\n\n const formatSegments = computed<string[]>(() => {\n const format = get(dateFormat);\n return format.split(/([\\s./:])/g).filter(Boolean);\n });\n\n const segmentPositions = computed<Segment[]>(() => {\n const segments = get(formatSegments);\n const positions: Segment[] = [];\n let currentPosition = 0;\n\n segments.forEach((segment) => {\n if (!/[\\s./:]/.test(segment)) {\n assert(isDateTimeSegmentType(segment), `Invalid date format segment: ${segment}`);\n positions.push({\n end: currentPosition + segment.length,\n start: currentPosition,\n type: segment,\n });\n }\n currentPosition += segment.length;\n });\n\n return positions;\n });\n\n function getCurrentSegment(position: number = get(cursorPosition)) {\n const segments = get(segmentPositions);\n return segments.find(segment => position >= segment.start && position <= segment.end);\n }\n\n function setCursorPosition(segment: Segment): void {\n set(cursorPosition, segment.end);\n\n nextTick(() => {\n if (isDefined(textInput)) {\n const input = get(textInput);\n input.setSelectionRange(segment.start, segment.end);\n input.focus();\n }\n });\n }\n\n function setSegment(segmentType: DateTimeSegmentType): void {\n const segments = get(segmentPositions).find(segment => segment.type === segmentType);\n if (segments) {\n set(currentValue, undefined);\n setCursorPosition(segments);\n }\n }\n\n function clear(segmentType?: string): void {\n const currentSegment = getCurrentSegment();\n if (!segmentType && !currentSegment) {\n return;\n }\n\n const typeToUse = segmentType ?? currentSegment?.type;\n if (!typeToUse) {\n return;\n }\n\n setValue(typeToUse as DateTimeSegmentType, undefined);\n\n if (currentSegment) {\n setCursorPosition(currentSegment);\n }\n }\n\n function changeSegmentValue(increment: boolean): void {\n if (!isDefined(textInput))\n return;\n const currentSegment = getCurrentSegment();\n if (!currentSegment)\n return;\n const segmentType = currentSegment.type;\n const method = SEGMENT_METHODS[segmentType];\n const selectedDate = getDateTime();\n const updatedDate = selectedDate.set(method, selectedDate.get(method) + (increment ? 1 : -1));\n if (updatedDate.year() >= 1970) {\n setValue(\n segmentType,\n segmentType === 'MM' ? updatedDate.get(method) + 1 : updatedDate.get(method),\n );\n setCursorPosition(currentSegment);\n }\n }\n\n function navigateSegments(key: string) {\n const position = get(cursorPosition);\n const positions = get(segmentPositions);\n const currentSegmentIndex = positions.findIndex(\n segment => position >= segment.start && position <= segment.end,\n );\n\n if (currentSegmentIndex === -1) {\n return;\n }\n\n set(currentValue, undefined);\n\n let nextSegmentIndex: number;\n if (key === 'ArrowRight') {\n nextSegmentIndex = currentSegmentIndex + 1;\n if (nextSegmentIndex < positions.length) {\n const nextSegment = positions[nextSegmentIndex];\n assert(nextSegment);\n setCursorPosition(nextSegment);\n }\n }\n else {\n nextSegmentIndex = currentSegmentIndex - 1;\n if (nextSegmentIndex >= 0) {\n const nextSegment = positions[nextSegmentIndex];\n assert(nextSegment);\n setCursorPosition(nextSegment);\n }\n }\n }\n\n function handleDigitPressed(event: KeyboardEvent, digit: string): void {\n if (!(event.target instanceof HTMLInputElement))\n return;\n const position = event.target.selectionStart ?? 0;\n const currentSegment = getCurrentSegment(position);\n if (!currentSegment || isNaN(parseInt(digit)))\n return;\n const segmentType = currentSegment.type;\n if (!isDateTimeSegmentType(segmentType))\n return;\n\n const config = SEGMENT_CONFIG[segmentType];\n const value = get(currentValue) ?? '';\n const combinedStr = `${value}${digit}`;\n const combinedValue = parseInt(combinedStr);\n const maxLength = segmentType.length;\n const minValue = config.minValue ?? 0;\n\n if (combinedValue >= minValue && combinedValue <= config.maxValue) {\n setValue(segmentType, combinedValue);\n setCursorPosition(currentSegment);\n }\n else if (combinedValue < minValue && combinedStr.length < maxLength) {\n // Track digit even if below minValue, so next digit can combine (e.g., \"0\" allows \"01\")\n set(currentValue, combinedValue);\n }\n\n const willExceedMax = parseInt(`${combinedStr}0`) > config.maxValue;\n // Use string length of typed digits, not parsed number length (e.g., \"01\" has length 2)\n if (willExceedMax || combinedStr.length >= maxLength)\n navigateSegments('ArrowRight');\n }\n\n function handleKeyboardNavigation(event: KeyboardEvent): void {\n if (event.key === 'ArrowUp')\n changeSegmentValue(true);\n else if (event.key === 'ArrowDown')\n changeSegmentValue(false);\n }\n\n function handleBackspace(event: KeyboardEvent): void {\n if (!(event.target instanceof HTMLInputElement))\n return;\n const currentSegment = getCurrentSegment(event.target.selectionStart ?? 0);\n if (!currentSegment)\n return;\n const value = get(currentValue) ?? getCurrent(currentSegment.type) ?? '';\n const updatedValue = value.toString().slice(0, -1);\n setValue(currentSegment.type, updatedValue.length === 0 ? undefined : parseInt(updatedValue));\n setCursorPosition(currentSegment);\n }\n\n function onInputDeletePressed(event: KeyboardEvent): void {\n if (!(event.target instanceof HTMLInputElement))\n return;\n const segment = getCurrentSegment(event.target.selectionStart ?? 0);\n if (segment) {\n clear(segment.type);\n setCursorPosition(segment);\n }\n }\n\n function handleKeyDown(event: KeyboardEvent): void {\n if (disabled || readonly)\n return;\n const { key } = event;\n if (key === 'Tab')\n return;\n event.preventDefault();\n if (key === 'ArrowRight' || key === 'ArrowLeft')\n navigateSegments(key);\n else if (key === 'ArrowUp' || key === 'ArrowDown')\n handleKeyboardNavigation(event);\n else if (key === 'Backspace')\n handleBackspace(event);\n else if (key === 'Delete')\n onInputDeletePressed(event);\n else if (/^\\d$/.test(key))\n handleDigitPressed(event, key);\n }\n\n // Track the segment that was clicked, so handleFocus can restore it after DOM updates\n let clickedSegment: Segment | undefined;\n\n // Capture clicked segment on mousedown (fires before focus event)\n function handleMouseDown(event: MouseEvent): void {\n if (disabled || readonly || !(event.target instanceof HTMLInputElement))\n return;\n const currentSegment = getCurrentSegment(getClickPosition(event, event.target, true));\n if (currentSegment) {\n // Reset in-progress digit buffer: switching segments must not carry typed digits over,\n // otherwise a leftover digit from another segment combines with the next keystroke\n // (e.g. type \"1\" in HH, click mm, type \"3\" → mm becomes 13 instead of 3).\n set(currentValue, undefined);\n clickedSegment = currentSegment;\n }\n }\n\n function handleClick(event: MouseEvent): void {\n if (disabled || readonly || !(event.target instanceof HTMLInputElement))\n return;\n const currentSegment = getCurrentSegment(getClickPosition(event, event.target, true));\n if (currentSegment) {\n set(currentValue, undefined);\n clickedSegment = currentSegment;\n set(cursorPosition, currentSegment.end);\n event.target.setSelectionRange(currentSegment.start, currentSegment.end);\n }\n }\n\n function handleInputSelection(event: Event): void {\n const target = event.target as HTMLInputElement;\n set(cursorPosition, target.selectionStart ?? 0);\n }\n\n function handleFocus(): void {\n // If we just clicked on a segment, restore that selection\n // (the selection may have been lost due to menu opening/DOM updates)\n if (clickedSegment) {\n setCursorPosition(clickedSegment);\n clickedSegment = undefined;\n return;\n }\n\n // Only select first segment if no text is currently selected in the input\n const input = get(textInput);\n if (input && input.selectionStart !== input.selectionEnd)\n return;\n const firstSegment = get(segmentPositions)[0];\n if (firstSegment)\n setCursorPosition(firstSegment);\n }\n\n function handleBlur(): void {\n // Reset cursor position and clicked segment when input loses focus\n // This prevents \"blinking\" when re-focusing on a different segment\n set(cursorPosition, 0);\n set(currentValue, undefined);\n clickedSegment = undefined;\n }\n\n function handlePaste(event: ClipboardEvent): void {\n if (disabled || readonly)\n return;\n\n if (!(event.target instanceof HTMLInputElement)) {\n return;\n }\n\n event.preventDefault();\n\n const pastedText = event.clipboardData?.getData('text');\n if (!pastedText) {\n return;\n }\n parseAndSetDateValues(pastedText, get(dateFormat), accuracy, setValue);\n }\n\n function handleInput(event: Event): void {\n if (disabled || readonly)\n return;\n\n if (!(event.target instanceof HTMLInputElement)) {\n return;\n }\n\n const inputText = event.target.value;\n if (!inputText) {\n return;\n }\n\n parseAndSetDateValues(inputText, get(dateFormat), accuracy, setValue);\n }\n\n return {\n clear,\n getCurrentSegment,\n handleBlur,\n handleClick,\n handleFocus,\n handleInput,\n handleInputSelection,\n handleKeyDown,\n handleMouseDown,\n handlePaste,\n setSegment,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"use-keyboard-handler.js","names":[],"sources":["../../../src/components/date-time-picker/use-keyboard-handler.ts"],"sourcesContent":["import type { Dayjs } from 'dayjs';\nimport type { Ref, ShallowRef } from 'vue';\nimport type { TimeAccuracy } from '@/consts/time-accuracy';\nimport { type Segment, SEGMENT_CONFIG, SEGMENT_METHODS } from '@/components/date-time-picker/segment-config';\nimport { getClickPosition, parseAndSetDateValues } from '@/components/date-time-picker/segment-utils';\nimport {\n type DateTimeSegmentType,\n isDateTimeSegmentType,\n} from '@/components/date-time-picker/types';\nimport { assert } from '@/utils/assert';\n\ninterface KeyboardHandlerOptions {\n dateFormat: Ref<string>;\n cursorPosition: Ref<number>;\n currentValue: Ref<number | undefined>;\n textInput: Readonly<ShallowRef<HTMLInputElement | null>> | Ref<HTMLInputElement | undefined>;\n setValue: (segment: DateTimeSegmentType, value?: number) => void;\n getCurrent: (segment: DateTimeSegmentType) => number | undefined;\n getDateTime: () => Dayjs;\n disabled: boolean;\n readonly: boolean;\n accuracy: TimeAccuracy;\n}\n\nexport function useKeyboardHandler(options: KeyboardHandlerOptions) {\n const {\n accuracy,\n currentValue,\n cursorPosition,\n dateFormat,\n disabled,\n getCurrent,\n getDateTime,\n readonly,\n setValue,\n textInput,\n } = options;\n\n const formatSegments = computed<string[]>(() => {\n const format = get(dateFormat);\n return format.split(/([\\s./:])/g).filter(Boolean);\n });\n\n const segmentPositions = computed<Segment[]>(() => {\n const segments = get(formatSegments);\n const positions: Segment[] = [];\n let currentPosition = 0;\n\n segments.forEach((segment) => {\n if (!/[\\s./:]/.test(segment)) {\n assert(isDateTimeSegmentType(segment), `Invalid date format segment: ${segment}`);\n positions.push({\n end: currentPosition + segment.length,\n start: currentPosition,\n type: segment,\n });\n }\n currentPosition += segment.length;\n });\n\n return positions;\n });\n\n function getCurrentSegment(position: number = get(cursorPosition)) {\n const segments = get(segmentPositions);\n return segments.find(segment => position >= segment.start && position <= segment.end);\n }\n\n function setCursorPosition(segment: Segment): void {\n set(cursorPosition, segment.end);\n\n nextTick(() => {\n if (isDefined(textInput)) {\n const input = get(textInput);\n input.setSelectionRange(segment.start, segment.end);\n input.focus();\n }\n });\n }\n\n function setSegment(segmentType: DateTimeSegmentType): void {\n const segments = get(segmentPositions).find(segment => segment.type === segmentType);\n if (segments) {\n set(currentValue, undefined);\n setCursorPosition(segments);\n }\n }\n\n function clear(segmentType?: string): void {\n const currentSegment = getCurrentSegment();\n if (!segmentType && !currentSegment) {\n return;\n }\n\n const typeToUse = segmentType ?? currentSegment?.type;\n if (!typeToUse) {\n return;\n }\n\n setValue(typeToUse as DateTimeSegmentType, undefined);\n\n if (currentSegment) {\n setCursorPosition(currentSegment);\n }\n }\n\n function changeSegmentValue(increment: boolean): void {\n if (!isDefined(textInput))\n return;\n const currentSegment = getCurrentSegment();\n if (!currentSegment)\n return;\n const segmentType = currentSegment.type;\n const method = SEGMENT_METHODS[segmentType];\n const selectedDate = getDateTime();\n const updatedDate = selectedDate.set(method, selectedDate.get(method) + (increment ? 1 : -1));\n if (updatedDate.year() >= 1970) {\n setValue(\n segmentType,\n segmentType === 'MM' ? updatedDate.get(method) + 1 : updatedDate.get(method),\n );\n setCursorPosition(currentSegment);\n }\n }\n\n function navigateSegments(key: string) {\n const position = get(cursorPosition);\n const positions = get(segmentPositions);\n const currentSegmentIndex = positions.findIndex(\n segment => position >= segment.start && position <= segment.end,\n );\n\n if (currentSegmentIndex === -1) {\n return;\n }\n\n set(currentValue, undefined);\n\n let nextSegmentIndex: number;\n if (key === 'ArrowRight') {\n nextSegmentIndex = currentSegmentIndex + 1;\n if (nextSegmentIndex < positions.length) {\n const nextSegment = positions[nextSegmentIndex];\n assert(nextSegment);\n setCursorPosition(nextSegment);\n }\n }\n else {\n nextSegmentIndex = currentSegmentIndex - 1;\n if (nextSegmentIndex >= 0) {\n const nextSegment = positions[nextSegmentIndex];\n assert(nextSegment);\n setCursorPosition(nextSegment);\n }\n }\n }\n\n function handleDigitPressed(event: KeyboardEvent, digit: string): void {\n if (!(event.target instanceof HTMLInputElement))\n return;\n const position = event.target.selectionStart ?? 0;\n const currentSegment = getCurrentSegment(position);\n if (!currentSegment || isNaN(parseInt(digit)))\n return;\n const segmentType = currentSegment.type;\n if (!isDateTimeSegmentType(segmentType))\n return;\n\n const config = SEGMENT_CONFIG[segmentType];\n const value = get(currentValue) ?? '';\n const combinedStr = `${value}${digit}`;\n const combinedValue = parseInt(combinedStr);\n const maxLength = segmentType.length;\n const minValue = config.minValue ?? 0;\n\n if (combinedValue >= minValue && combinedValue <= config.maxValue) {\n setValue(segmentType, combinedValue);\n setCursorPosition(currentSegment);\n }\n else if (combinedValue < minValue && combinedStr.length < maxLength) {\n // Track digit even if below minValue, so next digit can combine (e.g., \"0\" allows \"01\")\n set(currentValue, combinedValue);\n }\n\n const willExceedMax = parseInt(`${combinedStr}0`) > config.maxValue;\n // Use string length of typed digits, not parsed number length (e.g., \"01\" has length 2)\n if (willExceedMax || combinedStr.length >= maxLength)\n navigateSegments('ArrowRight');\n }\n\n function handleKeyboardNavigation(event: KeyboardEvent): void {\n if (event.key === 'ArrowUp')\n changeSegmentValue(true);\n else if (event.key === 'ArrowDown')\n changeSegmentValue(false);\n }\n\n function handleBackspace(event: KeyboardEvent): void {\n if (!(event.target instanceof HTMLInputElement))\n return;\n const currentSegment = getCurrentSegment(event.target.selectionStart ?? 0);\n if (!currentSegment)\n return;\n const value = get(currentValue) ?? getCurrent(currentSegment.type) ?? '';\n const updatedValue = value.toString().slice(0, -1);\n setValue(currentSegment.type, updatedValue.length === 0 ? undefined : parseInt(updatedValue));\n setCursorPosition(currentSegment);\n }\n\n function onInputDeletePressed(event: KeyboardEvent): void {\n if (!(event.target instanceof HTMLInputElement))\n return;\n const segment = getCurrentSegment(event.target.selectionStart ?? 0);\n if (segment) {\n clear(segment.type);\n setCursorPosition(segment);\n }\n }\n\n function handleKeyDown(event: KeyboardEvent): void {\n if (disabled || readonly)\n return;\n const { key } = event;\n if (key === 'Tab')\n return;\n event.preventDefault();\n if (key === 'ArrowRight' || key === 'ArrowLeft')\n navigateSegments(key);\n else if (key === 'ArrowUp' || key === 'ArrowDown')\n handleKeyboardNavigation(event);\n else if (key === 'Backspace')\n handleBackspace(event);\n else if (key === 'Delete')\n onInputDeletePressed(event);\n else if (/^\\d$/.test(key))\n handleDigitPressed(event, key);\n }\n\n // Track the segment that was clicked, so handleFocus can restore it after DOM updates\n let clickedSegment: Segment | undefined;\n\n // Capture clicked segment on mousedown (fires before focus event)\n function handleMouseDown(event: MouseEvent): void {\n if (disabled || readonly || !(event.target instanceof HTMLInputElement))\n return;\n const currentSegment = getCurrentSegment(getClickPosition(event, event.target, true));\n if (currentSegment) {\n // Reset in-progress digit buffer: switching segments must not carry typed digits over,\n // otherwise a leftover digit from another segment combines with the next keystroke\n // (e.g. type \"1\" in HH, click mm, type \"3\" → mm becomes 13 instead of 3).\n set(currentValue, undefined);\n clickedSegment = currentSegment;\n }\n }\n\n function handleClick(event: MouseEvent): void {\n if (disabled || readonly || !(event.target instanceof HTMLInputElement))\n return;\n const currentSegment = getCurrentSegment(getClickPosition(event, event.target, true));\n if (currentSegment) {\n set(currentValue, undefined);\n clickedSegment = currentSegment;\n set(cursorPosition, currentSegment.end);\n event.target.setSelectionRange(currentSegment.start, currentSegment.end);\n }\n }\n\n function handleInputSelection(event: Event): void {\n const target = event.target as HTMLInputElement;\n set(cursorPosition, target.selectionStart ?? 0);\n }\n\n function handleFocus(): void {\n // If we just clicked on a segment, restore that selection\n // (the selection may have been lost due to menu opening/DOM updates)\n if (clickedSegment) {\n setCursorPosition(clickedSegment);\n clickedSegment = undefined;\n return;\n }\n\n // Only select first segment if no text is currently selected in the input\n const input = get(textInput);\n if (input && input.selectionStart !== input.selectionEnd)\n return;\n const firstSegment = get(segmentPositions)[0];\n if (firstSegment)\n setCursorPosition(firstSegment);\n }\n\n function handleBlur(): void {\n // Reset cursor position and clicked segment when input loses focus\n // This prevents \"blinking\" when re-focusing on a different segment\n set(cursorPosition, 0);\n set(currentValue, undefined);\n clickedSegment = undefined;\n }\n\n function handlePaste(event: ClipboardEvent): void {\n if (disabled || readonly)\n return;\n\n if (!(event.target instanceof HTMLInputElement)) {\n return;\n }\n\n event.preventDefault();\n\n const pastedText = event.clipboardData?.getData('text');\n if (!pastedText) {\n return;\n }\n parseAndSetDateValues(pastedText, get(dateFormat), accuracy, setValue);\n }\n\n function handleInput(event: Event): void {\n if (disabled || readonly)\n return;\n\n if (!(event.target instanceof HTMLInputElement)) {\n return;\n }\n\n const inputText = event.target.value;\n if (!inputText) {\n return;\n }\n\n parseAndSetDateValues(inputText, get(dateFormat), accuracy, setValue);\n }\n\n return {\n clear,\n getCurrentSegment,\n handleBlur,\n handleClick,\n handleFocus,\n handleInput,\n handleInputSelection,\n handleKeyDown,\n handleMouseDown,\n handlePaste,\n setSegment,\n };\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":[],"sources":["../../../src/components/date-time-picker/utils.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { timezones } from '@/components/date-time-picker/timezones';\nimport { TimeAccuracy } from '@/consts/time-accuracy';\nimport '@/components/date-time-picker/dayjs-setup';\n\nexport function guessTimezone() {\n const timezone = dayjs.tz.guess();\n return timezones.find(tz => tz === timezone);\n}\n\nexport function includeSeconds(accuracy: TimeAccuracy): boolean {\n return accuracy === TimeAccuracy.SECOND || accuracy === TimeAccuracy.MILLISECOND;\n}\n\nexport function includeMilliseconds(accuracy: TimeAccuracy): boolean {\n return accuracy === TimeAccuracy.MILLISECOND;\n}\n"],"mappings":";;;;;AAKA,SAAgB,gBAAgB;CAC9B,MAAM,WAAW,MAAM,GAAG,OAAO;AACjC,QAAO,UAAU,MAAK,OAAM,OAAO,SAAS;;AAG9C,SAAgB,eAAe,UAAiC;AAC9D,QAAO,aAAa,aAAa,UAAU,aAAa,aAAa;;AAGvE,SAAgB,oBAAoB,UAAiC;AACnE,QAAO,aAAa,aAAa"}
1
+ {"version":3,"file":"utils.js","names":[],"sources":["../../../src/components/date-time-picker/utils.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { timezones } from '@/components/date-time-picker/timezones';\nimport { TimeAccuracy } from '@/consts/time-accuracy';\nimport '@/components/date-time-picker/dayjs-setup';\n\nexport function guessTimezone() {\n const timezone = dayjs.tz.guess();\n return timezones.find(tz => tz === timezone);\n}\n\nexport function includeSeconds(accuracy: TimeAccuracy): boolean {\n return accuracy === TimeAccuracy.SECOND || accuracy === TimeAccuracy.MILLISECOND;\n}\n\nexport function includeMilliseconds(accuracy: TimeAccuracy): boolean {\n return accuracy === TimeAccuracy.MILLISECOND;\n}\n"],"mappings":";;;;;AAKA,SAAgB,gBAAgB;CAC9B,MAAM,WAAW,MAAM,GAAG,MAAM;CAChC,OAAO,UAAU,MAAK,OAAM,OAAO,QAAQ;AAC7C;AAEA,SAAgB,eAAe,UAAiC;CAC9D,OAAO,aAAa,aAAa,UAAU,aAAa,aAAa;AACvE;AAEA,SAAgB,oBAAoB,UAAiC;CACnE,OAAO,aAAa,aAAa;AACnC"}
@@ -1,7 +1,7 @@
1
1
  import { createElementBlock, defineComponent, mergeProps, openBlock } from "vue";
2
2
  //#region src/components/divider/RuiDivider.vue?vue&type=script&setup=true&lang.ts
3
3
  var _hoisted_1 = ["aria-orientation"];
4
- var RuiDivider_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
4
+ var RuiDivider_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
5
5
  name: "RuiDivider",
6
6
  inheritAttrs: false,
7
7
  __name: "RuiDivider",
@@ -1 +1 @@
1
- {"version":3,"file":"RuiDivider.vue_vue_type_script_setup_true_lang.js","names":["$attrs"],"sources":["../../../src/components/divider/RuiDivider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nexport interface Props {\n vertical?: boolean;\n}\n\ndefineOptions({\n name: 'RuiDivider',\n inheritAttrs: false,\n});\n\nconst { vertical = false } = defineProps<Props>();\n</script>\n\n<template>\n <div\n :class=\"vertical ? 'border-l' : 'border-t'\"\n class=\"border-default\"\n role=\"separator\"\n :aria-orientation=\"vertical ? 'vertical' : 'horizontal'\"\n v-bind=\"$attrs\"\n />\n</template>\n"],"mappings":";;;;;;;;;;;;;uBAcE,mBAME,OANF,WAME;IALC,OAAK,CAAE,QAAA,WAAQ,aAAA,YACV,iBAAgB;IACtB,MAAK;IACJ,oBAAkB,QAAA,WAAQ,aAAA;MACnBA,KAAAA,OAAM,EAAA,MAAA,IAAA,WAAA"}
1
+ {"version":3,"file":"RuiDivider.vue_vue_type_script_setup_true_lang.js","names":["$attrs"],"sources":["../../../src/components/divider/RuiDivider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nexport interface Props {\n vertical?: boolean;\n}\n\ndefineOptions({\n name: 'RuiDivider',\n inheritAttrs: false,\n});\n\nconst { vertical = false } = defineProps<Props>();\n</script>\n\n<template>\n <div\n :class=\"vertical ? 'border-l' : 'border-t'\"\n class=\"border-default\"\n role=\"separator\"\n :aria-orientation=\"vertical ? 'vertical' : 'horizontal'\"\n v-bind=\"$attrs\"\n />\n</template>\n"],"mappings":";;;;;;;;;;;;;uBAcE,mBAME,OANF,WAME;IALC,OAAK,CAAE,QAAA,WAAQ,aAAA,YACV,gBAAgB;IACtB,MAAK;IACJ,oBAAkB,QAAA,WAAQ,aAAA;MACnBA,KAAAA,MAAM,GAAA,MAAA,IAAA,UAAA"}