@rotki/ui-library 2.15.0 → 2.16.1

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 (796) hide show
  1. package/dist/components/accordions/accordion/RuiAccordion.js +7 -0
  2. package/dist/components/accordions/accordion/RuiAccordion.js.map +1 -0
  3. package/dist/components/accordions/accordion/RuiAccordion.vue.d.ts +9 -0
  4. package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js +88 -0
  5. package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js.map +1 -0
  6. package/dist/components/accordions/accordions/RuiAccordions.js +7 -0
  7. package/dist/components/accordions/accordions/RuiAccordions.js.map +1 -0
  8. package/dist/components/accordions/accordions/RuiAccordions.vue_vue_type_script_setup_true_lang.js +67 -0
  9. package/dist/components/accordions/accordions/RuiAccordions.vue_vue_type_script_setup_true_lang.js.map +1 -0
  10. package/dist/components/alerts/RuiAlert.js +7 -0
  11. package/dist/components/alerts/RuiAlert.js.map +1 -0
  12. package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js +330 -0
  13. package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js.map +1 -0
  14. package/dist/components/buttons/button/RuiButton.js +7 -0
  15. package/dist/components/buttons/button/RuiButton.js.map +1 -0
  16. package/dist/components/buttons/button/RuiButton.vue.d.ts +3 -2
  17. package/dist/components/buttons/button/RuiButton.vue_vue_type_script_setup_true_lang.js +104 -0
  18. package/dist/components/buttons/button/RuiButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
  19. package/dist/components/buttons/button/button-props.d.ts +16 -0
  20. package/dist/components/buttons/button/button-props.js +20 -0
  21. package/dist/components/buttons/button/button-props.js.map +1 -0
  22. package/dist/components/buttons/button/button-styles.d.ts +229 -0
  23. package/dist/components/buttons/button/button-styles.js +342 -0
  24. package/dist/components/buttons/button/button-styles.js.map +1 -0
  25. package/dist/components/buttons/button-group/RuiButtonGroup.js +7 -0
  26. package/dist/components/buttons/button-group/RuiButtonGroup.js.map +1 -0
  27. package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js +246 -0
  28. package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
  29. package/dist/components/calendar/RuiCalendar.js +7 -0
  30. package/dist/components/calendar/RuiCalendar.js.map +1 -0
  31. package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js +151 -0
  32. package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js.map +1 -0
  33. package/dist/components/calendar/RuiCalendarGrid.js +7 -0
  34. package/dist/components/calendar/RuiCalendarGrid.js.map +1 -0
  35. package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js +155 -0
  36. package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js.map +1 -0
  37. package/dist/components/calendar/RuiCalendarHeader.js +7 -0
  38. package/dist/components/calendar/RuiCalendarHeader.js.map +1 -0
  39. package/dist/components/calendar/RuiCalendarHeader.vue_vue_type_script_setup_true_lang.js +113 -0
  40. package/dist/components/calendar/RuiCalendarHeader.vue_vue_type_script_setup_true_lang.js.map +1 -0
  41. package/dist/components/calendar/RuiCalendarMenu.js +7 -0
  42. package/dist/components/calendar/RuiCalendarMenu.js.map +1 -0
  43. package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js +246 -0
  44. package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
  45. package/dist/components/calendar/state.js +20 -21
  46. package/dist/components/calendar/state.js.map +1 -1
  47. package/dist/components/cards/RuiCard.js +7 -0
  48. package/dist/components/cards/RuiCard.js.map +1 -0
  49. package/dist/components/cards/RuiCard.vue.d.ts +9 -0
  50. package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js +130 -0
  51. package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js.map +1 -0
  52. package/dist/components/cards/RuiCardHeader.js +7 -0
  53. package/dist/components/cards/RuiCardHeader.js.map +1 -0
  54. package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js +67 -0
  55. package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js.map +1 -0
  56. package/dist/components/chips/RuiChip.js +7 -0
  57. package/dist/components/chips/RuiChip.js.map +1 -0
  58. package/dist/components/chips/RuiChip.vue.d.ts +10 -2
  59. package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js +308 -0
  60. package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js.map +1 -0
  61. package/dist/components/chips/chip-props.d.ts +11 -0
  62. package/dist/components/chips/chip-props.js +17 -0
  63. package/dist/components/chips/chip-props.js.map +1 -0
  64. package/dist/components/color-picker/RuiColorBoard.js +7 -0
  65. package/dist/components/color-picker/RuiColorBoard.js.map +1 -0
  66. package/dist/components/color-picker/RuiColorBoard.vue.d.ts +1 -1
  67. package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js +100 -0
  68. package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js.map +1 -0
  69. package/dist/components/color-picker/RuiColorDisplay.js +7 -0
  70. package/dist/components/color-picker/RuiColorDisplay.js.map +1 -0
  71. package/dist/components/color-picker/RuiColorDisplay.vue_vue_type_script_setup_true_lang.js +37 -0
  72. package/dist/components/color-picker/RuiColorDisplay.vue_vue_type_script_setup_true_lang.js.map +1 -0
  73. package/dist/components/color-picker/RuiColorHue.js +7 -0
  74. package/dist/components/color-picker/RuiColorHue.js.map +1 -0
  75. package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js +84 -0
  76. package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js.map +1 -0
  77. package/dist/components/color-picker/RuiColorInput.js +7 -0
  78. package/dist/components/color-picker/RuiColorInput.js.map +1 -0
  79. package/dist/components/color-picker/RuiColorInput.vue_vue_type_script_setup_true_lang.js +132 -0
  80. package/dist/components/color-picker/RuiColorInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
  81. package/dist/components/color-picker/RuiColorPicker.js +7 -0
  82. package/dist/components/color-picker/RuiColorPicker.js.map +1 -0
  83. package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js +57 -0
  84. package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  85. package/dist/components/color-picker/utils.d.ts +11 -8
  86. package/dist/components/color-picker/utils.js +179 -194
  87. package/dist/components/color-picker/utils.js.map +1 -1
  88. package/dist/components/date-time-picker/RuiDateTimePicker.js +7 -0
  89. package/dist/components/date-time-picker/RuiDateTimePicker.js.map +1 -0
  90. package/dist/components/date-time-picker/RuiDateTimePicker.vue.d.ts +2 -1
  91. package/dist/components/date-time-picker/RuiDateTimePicker.vue_vue_type_script_setup_true_lang.js +369 -0
  92. package/dist/components/date-time-picker/RuiDateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  93. package/dist/components/date-time-picker/RuiDateTimePickerMenu.js +7 -0
  94. package/dist/components/date-time-picker/RuiDateTimePickerMenu.js.map +1 -0
  95. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.d.ts +1 -1
  96. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js +134 -0
  97. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
  98. package/dist/components/date-time-picker/date-time-picker-styles.d.ts +326 -0
  99. package/dist/components/date-time-picker/date-time-picker-styles.js +19 -0
  100. package/dist/components/date-time-picker/date-time-picker-styles.js.map +1 -0
  101. package/dist/components/date-time-picker/dayjs-setup.js +4 -1
  102. package/dist/components/date-time-picker/dayjs-setup.js.map +1 -1
  103. package/dist/components/date-time-picker/segment-config.js +42 -21
  104. package/dist/components/date-time-picker/segment-config.js.map +1 -1
  105. package/dist/components/date-time-picker/segment-utils.js +24 -31
  106. package/dist/components/date-time-picker/segment-utils.js.map +1 -1
  107. package/dist/components/date-time-picker/timezones.js +601 -600
  108. package/dist/components/date-time-picker/timezones.js.map +1 -1
  109. package/dist/components/date-time-picker/types.js +14 -14
  110. package/dist/components/date-time-picker/types.js.map +1 -1
  111. package/dist/components/date-time-picker/use-date-time-selection.js +222 -282
  112. package/dist/components/date-time-picker/use-date-time-selection.js.map +1 -1
  113. package/dist/components/date-time-picker/use-input-handler.js +31 -28
  114. package/dist/components/date-time-picker/use-input-handler.js.map +1 -1
  115. package/dist/components/date-time-picker/use-keyboard-handler.js +201 -268
  116. package/dist/components/date-time-picker/use-keyboard-handler.js.map +1 -1
  117. package/dist/components/date-time-picker/utils.js +10 -11
  118. package/dist/components/date-time-picker/utils.js.map +1 -1
  119. package/dist/components/divider/RuiDivider.js +7 -0
  120. package/dist/components/divider/RuiDivider.js.map +1 -0
  121. package/dist/components/divider/RuiDivider.vue_vue_type_script_setup_true_lang.js +25 -0
  122. package/dist/components/divider/RuiDivider.vue_vue_type_script_setup_true_lang.js.map +1 -0
  123. package/dist/components/forms/auto-complete/RuiAutoComplete.js +7 -0
  124. package/dist/components/forms/auto-complete/RuiAutoComplete.js.map +1 -0
  125. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.d.ts +12 -2
  126. package/dist/components/forms/auto-complete/RuiAutoComplete.vue_vue_type_script_setup_true_lang.js +566 -0
  127. package/dist/components/forms/auto-complete/RuiAutoComplete.vue_vue_type_script_setup_true_lang.js.map +1 -0
  128. package/dist/components/forms/auto-complete/auto-complete-styles.d.ts +324 -0
  129. package/dist/components/forms/auto-complete/auto-complete-styles.js +15 -0
  130. package/dist/components/forms/auto-complete/auto-complete-styles.js.map +1 -0
  131. package/dist/components/forms/check-control-styles.d.ts +135 -0
  132. package/dist/components/forms/check-control-styles.js +126 -0
  133. package/dist/components/forms/check-control-styles.js.map +1 -0
  134. package/dist/components/forms/checkbox/RuiCheckbox.js +7 -0
  135. package/dist/components/forms/checkbox/RuiCheckbox.js.map +1 -0
  136. package/dist/components/forms/checkbox/RuiCheckbox.vue_vue_type_script_setup_true_lang.js +133 -0
  137. package/dist/components/forms/checkbox/RuiCheckbox.vue_vue_type_script_setup_true_lang.js.map +1 -0
  138. package/dist/components/forms/radio-button/radio/RuiRadio.js +7 -0
  139. package/dist/components/forms/radio-button/radio/RuiRadio.js.map +1 -0
  140. package/dist/components/forms/radio-button/radio/RuiRadio.vue_vue_type_script_setup_true_lang.js +115 -0
  141. package/dist/components/forms/radio-button/radio/RuiRadio.vue_vue_type_script_setup_true_lang.js.map +1 -0
  142. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.js +7 -0
  143. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.js.map +1 -0
  144. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue_vue_type_script_setup_true_lang.js +96 -0
  145. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
  146. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.js +7 -0
  147. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.js.map +1 -0
  148. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.d.ts +2 -15
  149. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue_vue_type_script_setup_true_lang.js +117 -0
  150. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue_vue_type_script_setup_true_lang.js.map +1 -0
  151. package/dist/components/forms/select/RuiMenuSelect.js +7 -0
  152. package/dist/components/forms/select/RuiMenuSelect.js.map +1 -0
  153. package/dist/components/forms/select/RuiMenuSelect.vue.d.ts +16 -4
  154. package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js +313 -0
  155. package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  156. package/dist/components/forms/select/RuiSimpleSelect.js +7 -0
  157. package/dist/components/forms/select/RuiSimpleSelect.js.map +1 -0
  158. package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js +75 -0
  159. package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
  160. package/dist/components/forms/select/menu-select-styles.d.ts +319 -0
  161. package/dist/components/forms/select/menu-select-styles.js +11 -0
  162. package/dist/components/forms/select/menu-select-styles.js.map +1 -0
  163. package/dist/components/forms/slider/RuiSlider.js +7 -0
  164. package/dist/components/forms/slider/RuiSlider.js.map +1 -0
  165. package/dist/components/forms/slider/RuiSlider.vue.d.ts +9 -0
  166. package/dist/components/forms/slider/RuiSlider.vue_vue_type_script_setup_true_lang.js +222 -0
  167. package/dist/components/forms/slider/RuiSlider.vue_vue_type_script_setup_true_lang.js.map +1 -0
  168. package/dist/components/forms/slider/slider-styles.d.ts +208 -0
  169. package/dist/components/forms/slider/slider-styles.js +235 -0
  170. package/dist/components/forms/slider/slider-styles.js.map +1 -0
  171. package/dist/components/forms/switch/RuiSwitch.js +7 -0
  172. package/dist/components/forms/switch/RuiSwitch.js.map +1 -0
  173. package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js +226 -0
  174. package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -0
  175. package/dist/components/forms/text-area/RuiTextArea.js +7 -0
  176. package/dist/components/forms/text-area/RuiTextArea.js.map +1 -0
  177. package/dist/components/forms/text-area/RuiTextArea.vue.d.ts +8 -4
  178. package/dist/components/forms/text-area/RuiTextArea.vue_vue_type_script_setup_true_lang.js +248 -0
  179. package/dist/components/forms/text-area/RuiTextArea.vue_vue_type_script_setup_true_lang.js.map +1 -0
  180. package/dist/components/forms/text-area/text-area-styles.d.ts +313 -0
  181. package/dist/components/forms/text-area/text-area-styles.js +239 -0
  182. package/dist/components/forms/text-area/text-area-styles.js.map +1 -0
  183. package/dist/components/forms/text-field/RuiTextField.js +7 -0
  184. package/dist/components/forms/text-field/RuiTextField.js.map +1 -0
  185. package/dist/components/forms/text-field/RuiTextField.vue.d.ts +4 -3
  186. package/dist/components/forms/text-field/RuiTextField.vue_vue_type_script_setup_true_lang.js +220 -0
  187. package/dist/components/forms/text-field/RuiTextField.vue_vue_type_script_setup_true_lang.js.map +1 -0
  188. package/dist/components/forms/text-field/text-field-styles.d.ts +299 -0
  189. package/dist/components/forms/text-field/text-field-styles.js +251 -0
  190. package/dist/components/forms/text-field/text-field-styles.js.map +1 -0
  191. package/dist/components/forms/text-input-styles.d.ts +422 -0
  192. package/dist/components/forms/text-input-styles.js +250 -0
  193. package/dist/components/forms/text-input-styles.js.map +1 -0
  194. package/dist/components/helpers/RuiFormTextDetail.js +7 -0
  195. package/dist/components/helpers/RuiFormTextDetail.js.map +1 -0
  196. package/dist/components/helpers/RuiFormTextDetail.vue_vue_type_script_setup_true_lang.js +46 -0
  197. package/dist/components/helpers/RuiFormTextDetail.vue_vue_type_script_setup_true_lang.js.map +1 -0
  198. package/dist/components/icons/RuiIcon.js +7 -0
  199. package/dist/components/icons/RuiIcon.js.map +1 -0
  200. package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js +58 -0
  201. package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
  202. package/dist/components/index.d.ts +46 -46
  203. package/dist/components/index.js +45 -92
  204. package/dist/components/loaders/RuiSkeletonBase.js +7 -0
  205. package/dist/components/loaders/RuiSkeletonBase.js.map +1 -0
  206. package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js +31 -0
  207. package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js.map +1 -0
  208. package/dist/components/loaders/RuiSkeletonLoader.js +7 -0
  209. package/dist/components/loaders/RuiSkeletonLoader.js.map +1 -0
  210. package/dist/components/loaders/RuiSkeletonLoader.vue.d.ts +3 -2
  211. package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js +62 -0
  212. package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js.map +1 -0
  213. package/dist/components/loaders/skeleton-type.d.ts +12 -0
  214. package/dist/components/loaders/skeleton-type.js +16 -0
  215. package/dist/components/loaders/skeleton-type.js.map +1 -0
  216. package/dist/components/logos/RuiLogo.js +7 -0
  217. package/dist/components/logos/RuiLogo.js.map +1 -0
  218. package/dist/components/logos/RuiLogo.vue_vue_type_script_setup_true_lang.js +130 -0
  219. package/dist/components/logos/RuiLogo.vue_vue_type_script_setup_true_lang.js.map +1 -0
  220. package/dist/components/logos/logo.js +6 -0
  221. package/dist/components/logos/logo.js.map +1 -0
  222. package/dist/components/logos/use-logo-sources.d.ts +1 -1
  223. package/dist/components/logos/use-logo-sources.js +66 -62
  224. package/dist/components/logos/use-logo-sources.js.map +1 -1
  225. package/dist/components/overlays/badge/RuiBadge.js +7 -0
  226. package/dist/components/overlays/badge/RuiBadge.js.map +1 -0
  227. package/dist/components/overlays/badge/RuiBadge.vue.d.ts +4 -3
  228. package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js +189 -0
  229. package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js.map +1 -0
  230. package/dist/components/overlays/badge/badge-props.d.ts +19 -0
  231. package/dist/components/overlays/badge/badge-props.js +21 -0
  232. package/dist/components/overlays/badge/badge-props.js.map +1 -0
  233. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.js +7 -0
  234. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.js.map +1 -0
  235. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue_vue_type_script_setup_true_lang.js +51 -0
  236. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue_vue_type_script_setup_true_lang.js.map +1 -0
  237. package/dist/components/overlays/dialog/RuiDialog.js +7 -0
  238. package/dist/components/overlays/dialog/RuiDialog.js.map +1 -0
  239. package/dist/components/overlays/dialog/RuiDialog.vue.d.ts +7 -0
  240. package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js +163 -0
  241. package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js.map +1 -0
  242. package/dist/components/overlays/menu/RuiMenu.js +7 -0
  243. package/dist/components/overlays/menu/RuiMenu.js.map +1 -0
  244. package/dist/components/overlays/menu/RuiMenu.vue.d.ts +12 -0
  245. package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js +236 -0
  246. package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
  247. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.js +7 -0
  248. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.js.map +1 -0
  249. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.d.ts +7 -0
  250. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js +180 -0
  251. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js.map +1 -0
  252. package/dist/components/overlays/notification/RuiNotification.js +7 -0
  253. package/dist/components/overlays/notification/RuiNotification.js.map +1 -0
  254. package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js +70 -0
  255. package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js.map +1 -0
  256. package/dist/components/overlays/tooltip/RuiTooltip.js +7 -0
  257. package/dist/components/overlays/tooltip/RuiTooltip.js.map +1 -0
  258. package/dist/components/overlays/tooltip/RuiTooltip.vue.d.ts +10 -0
  259. package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js +107 -0
  260. package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js.map +1 -0
  261. package/dist/components/overlays/tooltip/tooltip-styles.d.ts +91 -0
  262. package/dist/components/overlays/tooltip/tooltip-styles.js +40 -0
  263. package/dist/components/overlays/tooltip/tooltip-styles.js.map +1 -0
  264. package/dist/components/progress/RuiProgress.js +7 -0
  265. package/dist/components/progress/RuiProgress.js.map +1 -0
  266. package/dist/components/progress/RuiProgress.vue.d.ts +2 -1
  267. package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js +254 -0
  268. package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js.map +1 -0
  269. package/dist/components/progress/progress-props.d.ts +6 -0
  270. package/dist/components/progress/progress-props.js +10 -0
  271. package/dist/components/progress/progress-props.js.map +1 -0
  272. package/dist/components/steppers/RuiFooterStepper.js +7 -0
  273. package/dist/components/steppers/RuiFooterStepper.js.map +1 -0
  274. package/dist/components/steppers/RuiFooterStepper.vue.d.ts +2 -1
  275. package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js +164 -0
  276. package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js.map +1 -0
  277. package/dist/components/steppers/RuiStepper.js +7 -0
  278. package/dist/components/steppers/RuiStepper.js.map +1 -0
  279. package/dist/components/steppers/RuiStepper.vue.d.ts +9 -0
  280. package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js +232 -0
  281. package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js.map +1 -0
  282. package/dist/components/steppers/RuiStepperCustomIcon.js +7 -0
  283. package/dist/components/steppers/RuiStepperCustomIcon.js.map +1 -0
  284. package/dist/components/steppers/RuiStepperCustomIcon.vue_vue_type_script_setup_true_lang.js +43 -0
  285. package/dist/components/steppers/RuiStepperCustomIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
  286. package/dist/components/steppers/RuiStepperIcon.js +7 -0
  287. package/dist/components/steppers/RuiStepperIcon.js.map +1 -0
  288. package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js +72 -0
  289. package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
  290. package/dist/components/steppers/footer-stepper-variant.d.ts +7 -0
  291. package/dist/components/steppers/footer-stepper-variant.js +11 -0
  292. package/dist/components/steppers/footer-stepper-variant.js.map +1 -0
  293. package/dist/components/tables/RuiDataTable.js +7 -0
  294. package/dist/components/tables/RuiDataTable.js.map +1 -0
  295. package/dist/components/tables/RuiDataTable.vue.d.ts +7 -2
  296. package/dist/components/tables/RuiDataTable.vue_vue_type_script_setup_true_lang.js +516 -0
  297. package/dist/components/tables/RuiDataTable.vue_vue_type_script_setup_true_lang.js.map +1 -0
  298. package/dist/components/tables/RuiExpandButton.js +7 -0
  299. package/dist/components/tables/RuiExpandButton.js.map +1 -0
  300. package/dist/components/tables/RuiExpandButton.vue_vue_type_script_setup_true_lang.js +34 -0
  301. package/dist/components/tables/RuiExpandButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
  302. package/dist/components/tables/RuiTableEmptyState.js +7 -0
  303. package/dist/components/tables/RuiTableEmptyState.js.map +1 -0
  304. package/dist/components/tables/RuiTableEmptyState.vue.d.ts +16 -0
  305. package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js +46 -0
  306. package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -0
  307. package/dist/components/tables/RuiTableHead.js +7 -0
  308. package/dist/components/tables/RuiTableHead.js.map +1 -0
  309. package/dist/components/tables/RuiTableHead.vue.d.ts +6 -5
  310. package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js +230 -0
  311. package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js.map +1 -0
  312. package/dist/components/tables/RuiTablePagination.js +7 -0
  313. package/dist/components/tables/RuiTablePagination.js.map +1 -0
  314. package/dist/components/tables/RuiTablePagination.vue.d.ts +9 -6
  315. package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js +187 -0
  316. package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js.map +1 -0
  317. package/dist/components/tables/data-table-styles.d.ts +155 -0
  318. package/dist/components/tables/data-table-styles.js +36 -0
  319. package/dist/components/tables/data-table-styles.js.map +1 -0
  320. package/dist/components/tables/table-props.d.ts +20 -0
  321. package/dist/components/tables/table-props.js +39 -0
  322. package/dist/components/tables/table-props.js.map +1 -0
  323. package/dist/components/tables/table_no_data_placeholder.js +6 -0
  324. package/dist/components/tables/table_no_data_placeholder.js.map +1 -0
  325. package/dist/components/tables/table_no_data_placeholder_dark.js +6 -0
  326. package/dist/components/tables/table_no_data_placeholder_dark.js.map +1 -0
  327. package/dist/components/tables/use-pagination-navigation.d.ts +32 -0
  328. package/dist/components/tables/use-pagination-navigation.js +88 -0
  329. package/dist/components/tables/use-pagination-navigation.js.map +1 -0
  330. package/dist/components/tabs/tab/RuiTab.js +7 -0
  331. package/dist/components/tabs/tab/RuiTab.js.map +1 -0
  332. package/dist/components/tabs/tab/RuiTab.vue.d.ts +12 -3
  333. package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js +175 -0
  334. package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js.map +1 -0
  335. package/dist/components/tabs/tab/use-tab-link.d.ts +26 -0
  336. package/dist/components/tabs/tab/use-tab-link.js +28 -0
  337. package/dist/components/tabs/tab/use-tab-link.js.map +1 -0
  338. package/dist/components/tabs/tab-item/RuiTabItem.js +7 -0
  339. package/dist/components/tabs/tab-item/RuiTabItem.js.map +1 -0
  340. package/dist/components/tabs/tab-item/RuiTabItem.vue_vue_type_script_setup_true_lang.js +54 -0
  341. package/dist/components/tabs/tab-item/RuiTabItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
  342. package/dist/components/tabs/tab-items/RuiTabItems.js +7 -0
  343. package/dist/components/tabs/tab-items/RuiTabItems.js.map +1 -0
  344. package/dist/components/tabs/tab-items/RuiTabItems.vue_vue_type_script_setup_true_lang.js +76 -0
  345. package/dist/components/tabs/tab-items/RuiTabItems.vue_vue_type_script_setup_true_lang.js.map +1 -0
  346. package/dist/components/tabs/tab-props.d.ts +20 -0
  347. package/dist/components/tabs/tab-props.js +18 -0
  348. package/dist/components/tabs/tab-props.js.map +1 -0
  349. package/dist/components/tabs/tabs/RuiTabs.js +7 -0
  350. package/dist/components/tabs/tabs/RuiTabs.js.map +1 -0
  351. package/dist/components/tabs/tabs/RuiTabs.vue.d.ts +3 -2
  352. package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js +208 -0
  353. package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js.map +1 -0
  354. package/dist/components/tabs/tabs/use-tab-routing.d.ts +28 -0
  355. package/dist/components/tabs/tabs/use-tab-routing.js +43 -0
  356. package/dist/components/tabs/tabs/use-tab-routing.js.map +1 -0
  357. package/dist/components/tabs/tabs/use-tab-scroll.d.ts +23 -0
  358. package/dist/components/tabs/tabs/use-tab-scroll.js +68 -0
  359. package/dist/components/tabs/tabs/use-tab-scroll.js.map +1 -0
  360. package/dist/components/time-picker/RuiTimePicker.js +7 -0
  361. package/dist/components/time-picker/RuiTimePicker.js.map +1 -0
  362. package/dist/components/time-picker/RuiTimePicker.vue_vue_type_script_setup_true_lang.js +382 -0
  363. package/dist/components/time-picker/RuiTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  364. package/dist/components/time-picker/time-picker-styles.d.ts +76 -0
  365. package/dist/components/time-picker/time-picker-styles.js +27 -0
  366. package/dist/components/time-picker/time-picker-styles.js.map +1 -0
  367. package/dist/composables/breakpoint.js +35 -40
  368. package/dist/composables/breakpoint.js.map +1 -1
  369. package/dist/composables/colors/common.d.ts +20 -0
  370. package/dist/composables/colors/index.d.ts +3 -0
  371. package/dist/composables/colors/text-input.d.ts +27 -0
  372. package/dist/composables/defaults/table.js +21 -18
  373. package/dist/composables/defaults/table.js.map +1 -1
  374. package/dist/composables/dropdown-menu.d.ts +6 -6
  375. package/dist/composables/dropdown-menu.js +169 -237
  376. package/dist/composables/dropdown-menu.js.map +1 -1
  377. package/dist/composables/floating.d.ts +60 -0
  378. package/dist/composables/floating.js +167 -0
  379. package/dist/composables/floating.js.map +1 -0
  380. package/dist/composables/forms/auto-complete/focus.d.ts +4 -4
  381. package/dist/composables/forms/auto-complete/focus.js +59 -79
  382. package/dist/composables/forms/auto-complete/focus.js.map +1 -1
  383. package/dist/composables/forms/auto-complete/index.js +4 -0
  384. package/dist/composables/forms/auto-complete/keyboard-navigation.d.ts +6 -5
  385. package/dist/composables/forms/auto-complete/keyboard-navigation.js +116 -136
  386. package/dist/composables/forms/auto-complete/keyboard-navigation.js.map +1 -1
  387. package/dist/composables/forms/auto-complete/search.d.ts +11 -10
  388. package/dist/composables/forms/auto-complete/search.js +80 -91
  389. package/dist/composables/forms/auto-complete/search.js.map +1 -1
  390. package/dist/composables/forms/auto-complete/value.d.ts +9 -8
  391. package/dist/composables/forms/auto-complete/value.js +76 -108
  392. package/dist/composables/forms/auto-complete/value.js.map +1 -1
  393. package/dist/composables/forms/use-prepend-append-width.js +24 -20
  394. package/dist/composables/forms/use-prepend-append-width.js.map +1 -1
  395. package/dist/composables/icons.js +42 -52
  396. package/dist/composables/icons.js.map +1 -1
  397. package/dist/composables/index.js +2 -7
  398. package/dist/composables/popper.d.ts +5 -20
  399. package/dist/composables/popper.js +22 -177
  400. package/dist/composables/popper.js.map +1 -1
  401. package/dist/composables/sticky-header.js +132 -143
  402. package/dist/composables/sticky-header.js.map +1 -1
  403. package/dist/composables/tables/data-table/columns.d.ts +1 -1
  404. package/dist/composables/tables/data-table/columns.js +41 -49
  405. package/dist/composables/tables/data-table/columns.js.map +1 -1
  406. package/dist/composables/tables/data-table/expansion.js +29 -34
  407. package/dist/composables/tables/data-table/expansion.js.map +1 -1
  408. package/dist/composables/tables/data-table/grouping.d.ts +1 -1
  409. package/dist/composables/tables/data-table/grouping.js +110 -132
  410. package/dist/composables/tables/data-table/grouping.js.map +1 -1
  411. package/dist/composables/tables/data-table/pagination.d.ts +2 -2
  412. package/dist/composables/tables/data-table/pagination.js +98 -115
  413. package/dist/composables/tables/data-table/pagination.js.map +1 -1
  414. package/dist/composables/tables/data-table/selection.js +124 -160
  415. package/dist/composables/tables/data-table/selection.js.map +1 -1
  416. package/dist/composables/tables/data-table/sort.d.ts +2 -2
  417. package/dist/composables/tables/data-table/sort.js +118 -132
  418. package/dist/composables/tables/data-table/sort.js.map +1 -1
  419. package/dist/composables/tables/data-table/types.d.ts +2 -2
  420. package/dist/composables/tables/data-table/types.js +7 -7
  421. package/dist/composables/tables/data-table/types.js.map +1 -1
  422. package/dist/composables/theme.js +91 -66
  423. package/dist/composables/theme.js.map +1 -1
  424. package/dist/composables/timeout-manager.js +24 -19
  425. package/dist/composables/timeout-manager.js.map +1 -1
  426. package/dist/composables/use-rui-i18n.js +15 -21
  427. package/dist/composables/use-rui-i18n.js.map +1 -1
  428. package/dist/consts/colors.js +50 -47
  429. package/dist/consts/colors.js.map +1 -1
  430. package/dist/consts/time-accuracy.js +9 -8
  431. package/dist/consts/time-accuracy.js.map +1 -1
  432. package/dist/i18n/keys.js +17 -16
  433. package/dist/i18n/keys.js.map +1 -1
  434. package/dist/icons/icons_1.js +1529 -2027
  435. package/dist/icons/icons_1.js.map +1 -1
  436. package/dist/icons/icons_2.js +1529 -2027
  437. package/dist/icons/icons_2.js.map +1 -1
  438. package/dist/icons/icons_3.js +1529 -2027
  439. package/dist/icons/icons_3.js.map +1 -1
  440. package/dist/icons/icons_4.js +794 -1047
  441. package/dist/icons/icons_4.js.map +1 -1
  442. package/dist/icons/index.js +1767 -7
  443. package/dist/icons/index.js.map +1 -1
  444. package/dist/index.d.ts +5 -2
  445. package/dist/index.js +87 -1907
  446. package/dist/index.js.map +1 -1
  447. package/dist/style.css +2780 -10260
  448. package/dist/theme/index.js +160 -198
  449. package/dist/theme/index.js.map +1 -1
  450. package/dist/types/class-value.d.ts +5 -0
  451. package/dist/types/stepper.js +16 -15
  452. package/dist/types/stepper.js.map +1 -1
  453. package/dist/types/theme.js +17 -22
  454. package/dist/types/theme.js.map +1 -1
  455. package/dist/utils/assert.js +12 -12
  456. package/dist/utils/assert.js.map +1 -1
  457. package/dist/utils/blockie.js +58 -65
  458. package/dist/utils/blockie.js.map +1 -1
  459. package/dist/utils/form-text-detail.d.ts +4 -2
  460. package/dist/utils/form-text-detail.js +29 -27
  461. package/dist/utils/form-text-detail.js.map +1 -1
  462. package/dist/utils/helpers.js +60 -35
  463. package/dist/utils/helpers.js.map +1 -1
  464. package/dist/utils/is-equal.js +23 -33
  465. package/dist/utils/is-equal.js.map +1 -1
  466. package/dist/utils/tv.d.ts +16 -0
  467. package/dist/utils/tv.js +23 -0
  468. package/dist/utils/tv.js.map +1 -0
  469. package/dist/vite-plugin/index.js +144 -155
  470. package/dist/vite-plugin/index.js.map +1 -1
  471. package/dist/vite-plugin/scanner.js +46 -52
  472. package/dist/vite-plugin/scanner.js.map +1 -1
  473. package/dist/web-types.json +214 -39
  474. package/package.json +36 -27
  475. package/dist/_virtual/_plugin-vue_export-helper.js +0 -11
  476. package/dist/_virtual/_plugin-vue_export-helper.js.map +0 -1
  477. package/dist/components/accordions/accordion/RuiAccordion.vue.js +0 -89
  478. package/dist/components/accordions/accordion/RuiAccordion.vue.js.map +0 -1
  479. package/dist/components/accordions/accordion/RuiAccordion.vue2.js +0 -5
  480. package/dist/components/accordions/accordion/RuiAccordion.vue2.js.map +0 -1
  481. package/dist/components/accordions/accordions/RuiAccordions.vue.js +0 -79
  482. package/dist/components/accordions/accordions/RuiAccordions.vue.js.map +0 -1
  483. package/dist/components/accordions/accordions/RuiAccordions.vue2.js +0 -5
  484. package/dist/components/accordions/accordions/RuiAccordions.vue2.js.map +0 -1
  485. package/dist/components/alerts/RuiAlert.vue.js +0 -11
  486. package/dist/components/alerts/RuiAlert.vue.js.map +0 -1
  487. package/dist/components/alerts/RuiAlert.vue2.js +0 -115
  488. package/dist/components/alerts/RuiAlert.vue2.js.map +0 -1
  489. package/dist/components/alerts/RuiAlert.vue3.js +0 -50
  490. package/dist/components/alerts/RuiAlert.vue3.js.map +0 -1
  491. package/dist/components/buttons/button/RuiButton.vue.js +0 -11
  492. package/dist/components/buttons/button/RuiButton.vue.js.map +0 -1
  493. package/dist/components/buttons/button/RuiButton.vue2.js +0 -93
  494. package/dist/components/buttons/button/RuiButton.vue2.js.map +0 -1
  495. package/dist/components/buttons/button/RuiButton.vue3.js +0 -74
  496. package/dist/components/buttons/button/RuiButton.vue3.js.map +0 -1
  497. package/dist/components/buttons/button-group/RuiButtonGroup.vue.js +0 -11
  498. package/dist/components/buttons/button-group/RuiButtonGroup.vue.js.map +0 -1
  499. package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js +0 -113
  500. package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js.map +0 -1
  501. package/dist/components/buttons/button-group/RuiButtonGroup.vue3.js +0 -58
  502. package/dist/components/buttons/button-group/RuiButtonGroup.vue3.js.map +0 -1
  503. package/dist/components/calendar/RuiCalendar.vue.js +0 -139
  504. package/dist/components/calendar/RuiCalendar.vue.js.map +0 -1
  505. package/dist/components/calendar/RuiCalendar.vue3.js +0 -6
  506. package/dist/components/calendar/RuiCalendar.vue3.js.map +0 -1
  507. package/dist/components/calendar/RuiCalendarGrid.vue.js +0 -8
  508. package/dist/components/calendar/RuiCalendarGrid.vue.js.map +0 -1
  509. package/dist/components/calendar/RuiCalendarGrid.vue2.js +0 -151
  510. package/dist/components/calendar/RuiCalendarGrid.vue2.js.map +0 -1
  511. package/dist/components/calendar/RuiCalendarHeader.vue.js +0 -8
  512. package/dist/components/calendar/RuiCalendarHeader.vue.js.map +0 -1
  513. package/dist/components/calendar/RuiCalendarHeader.vue2.js +0 -111
  514. package/dist/components/calendar/RuiCalendarHeader.vue2.js.map +0 -1
  515. package/dist/components/calendar/RuiCalendarMenu.vue.js +0 -8
  516. package/dist/components/calendar/RuiCalendarMenu.vue.js.map +0 -1
  517. package/dist/components/calendar/RuiCalendarMenu.vue2.js +0 -269
  518. package/dist/components/calendar/RuiCalendarMenu.vue2.js.map +0 -1
  519. package/dist/components/cards/RuiCard.vue.js +0 -11
  520. package/dist/components/cards/RuiCard.vue.js.map +0 -1
  521. package/dist/components/cards/RuiCard.vue2.js +0 -88
  522. package/dist/components/cards/RuiCard.vue2.js.map +0 -1
  523. package/dist/components/cards/RuiCard.vue3.js +0 -40
  524. package/dist/components/cards/RuiCard.vue3.js.map +0 -1
  525. package/dist/components/cards/RuiCardHeader.vue.js +0 -11
  526. package/dist/components/cards/RuiCardHeader.vue.js.map +0 -1
  527. package/dist/components/cards/RuiCardHeader.vue2.js +0 -51
  528. package/dist/components/cards/RuiCardHeader.vue2.js.map +0 -1
  529. package/dist/components/cards/RuiCardHeader.vue3.js +0 -27
  530. package/dist/components/cards/RuiCardHeader.vue3.js.map +0 -1
  531. package/dist/components/chips/RuiChip.vue.js +0 -11
  532. package/dist/components/chips/RuiChip.vue.js.map +0 -1
  533. package/dist/components/chips/RuiChip.vue2.js +0 -90
  534. package/dist/components/chips/RuiChip.vue2.js.map +0 -1
  535. package/dist/components/chips/RuiChip.vue3.js +0 -88
  536. package/dist/components/chips/RuiChip.vue3.js.map +0 -1
  537. package/dist/components/color-picker/RuiColorBoard.vue.js +0 -11
  538. package/dist/components/color-picker/RuiColorBoard.vue.js.map +0 -1
  539. package/dist/components/color-picker/RuiColorBoard.vue2.js +0 -102
  540. package/dist/components/color-picker/RuiColorBoard.vue2.js.map +0 -1
  541. package/dist/components/color-picker/RuiColorBoard.vue3.js +0 -18
  542. package/dist/components/color-picker/RuiColorBoard.vue3.js.map +0 -1
  543. package/dist/components/color-picker/RuiColorDisplay.vue.js +0 -47
  544. package/dist/components/color-picker/RuiColorDisplay.vue.js.map +0 -1
  545. package/dist/components/color-picker/RuiColorDisplay.vue2.js +0 -5
  546. package/dist/components/color-picker/RuiColorDisplay.vue2.js.map +0 -1
  547. package/dist/components/color-picker/RuiColorHue.vue.js +0 -11
  548. package/dist/components/color-picker/RuiColorHue.vue.js.map +0 -1
  549. package/dist/components/color-picker/RuiColorHue.vue2.js +0 -92
  550. package/dist/components/color-picker/RuiColorHue.vue2.js.map +0 -1
  551. package/dist/components/color-picker/RuiColorHue.vue3.js +0 -12
  552. package/dist/components/color-picker/RuiColorHue.vue3.js.map +0 -1
  553. package/dist/components/color-picker/RuiColorInput.vue.js +0 -141
  554. package/dist/components/color-picker/RuiColorInput.vue.js.map +0 -1
  555. package/dist/components/color-picker/RuiColorInput.vue2.js +0 -5
  556. package/dist/components/color-picker/RuiColorInput.vue2.js.map +0 -1
  557. package/dist/components/color-picker/RuiColorPicker.vue.js +0 -81
  558. package/dist/components/color-picker/RuiColorPicker.vue.js.map +0 -1
  559. package/dist/components/color-picker/RuiColorPicker.vue2.js +0 -5
  560. package/dist/components/color-picker/RuiColorPicker.vue2.js.map +0 -1
  561. package/dist/components/date-time-picker/RuiDateTimePicker.vue.js +0 -11
  562. package/dist/components/date-time-picker/RuiDateTimePicker.vue.js.map +0 -1
  563. package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js +0 -394
  564. package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js.map +0 -1
  565. package/dist/components/date-time-picker/RuiDateTimePicker.vue3.js +0 -66
  566. package/dist/components/date-time-picker/RuiDateTimePicker.vue3.js.map +0 -1
  567. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js +0 -120
  568. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js.map +0 -1
  569. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue2.js +0 -5
  570. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue2.js.map +0 -1
  571. package/dist/components/divider/RuiDivider.vue.js +0 -25
  572. package/dist/components/divider/RuiDivider.vue.js.map +0 -1
  573. package/dist/components/divider/RuiDivider.vue2.js +0 -5
  574. package/dist/components/divider/RuiDivider.vue2.js.map +0 -1
  575. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.js +0 -11
  576. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.js.map +0 -1
  577. package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js +0 -594
  578. package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js.map +0 -1
  579. package/dist/components/forms/auto-complete/RuiAutoComplete.vue3.js +0 -60
  580. package/dist/components/forms/auto-complete/RuiAutoComplete.vue3.js.map +0 -1
  581. package/dist/components/forms/checkbox/RuiCheckbox.vue.js +0 -11
  582. package/dist/components/forms/checkbox/RuiCheckbox.vue.js.map +0 -1
  583. package/dist/components/forms/checkbox/RuiCheckbox.vue2.js +0 -148
  584. package/dist/components/forms/checkbox/RuiCheckbox.vue2.js.map +0 -1
  585. package/dist/components/forms/checkbox/RuiCheckbox.vue3.js +0 -54
  586. package/dist/components/forms/checkbox/RuiCheckbox.vue3.js.map +0 -1
  587. package/dist/components/forms/radio-button/radio/RuiRadio.vue.js +0 -11
  588. package/dist/components/forms/radio-button/radio/RuiRadio.vue.js.map +0 -1
  589. package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js +0 -122
  590. package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js.map +0 -1
  591. package/dist/components/forms/radio-button/radio/RuiRadio.vue3.js +0 -54
  592. package/dist/components/forms/radio-button/radio/RuiRadio.vue3.js.map +0 -1
  593. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.js +0 -11
  594. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.js.map +0 -1
  595. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js +0 -84
  596. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js.map +0 -1
  597. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue3.js +0 -9
  598. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue3.js.map +0 -1
  599. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js +0 -84
  600. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js.map +0 -1
  601. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue2.js +0 -5
  602. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue2.js.map +0 -1
  603. package/dist/components/forms/select/RuiMenuSelect.vue.js +0 -11
  604. package/dist/components/forms/select/RuiMenuSelect.vue.js.map +0 -1
  605. package/dist/components/forms/select/RuiMenuSelect.vue2.js +0 -310
  606. package/dist/components/forms/select/RuiMenuSelect.vue2.js.map +0 -1
  607. package/dist/components/forms/select/RuiMenuSelect.vue3.js +0 -60
  608. package/dist/components/forms/select/RuiMenuSelect.vue3.js.map +0 -1
  609. package/dist/components/forms/select/RuiSimpleSelect.vue.js +0 -11
  610. package/dist/components/forms/select/RuiSimpleSelect.vue.js.map +0 -1
  611. package/dist/components/forms/select/RuiSimpleSelect.vue2.js +0 -62
  612. package/dist/components/forms/select/RuiSimpleSelect.vue2.js.map +0 -1
  613. package/dist/components/forms/select/RuiSimpleSelect.vue3.js +0 -21
  614. package/dist/components/forms/select/RuiSimpleSelect.vue3.js.map +0 -1
  615. package/dist/components/forms/slider/RuiSlider.vue.js +0 -11
  616. package/dist/components/forms/slider/RuiSlider.vue.js.map +0 -1
  617. package/dist/components/forms/slider/RuiSlider.vue2.js +0 -173
  618. package/dist/components/forms/slider/RuiSlider.vue2.js.map +0 -1
  619. package/dist/components/forms/slider/RuiSlider.vue3.js +0 -80
  620. package/dist/components/forms/slider/RuiSlider.vue3.js.map +0 -1
  621. package/dist/components/forms/switch/RuiSwitch.vue.js +0 -11
  622. package/dist/components/forms/switch/RuiSwitch.vue.js.map +0 -1
  623. package/dist/components/forms/switch/RuiSwitch.vue2.js +0 -99
  624. package/dist/components/forms/switch/RuiSwitch.vue2.js.map +0 -1
  625. package/dist/components/forms/switch/RuiSwitch.vue3.js +0 -54
  626. package/dist/components/forms/switch/RuiSwitch.vue3.js.map +0 -1
  627. package/dist/components/forms/text-area/RuiTextArea.vue.js +0 -11
  628. package/dist/components/forms/text-area/RuiTextArea.vue.js.map +0 -1
  629. package/dist/components/forms/text-area/RuiTextArea.vue2.js +0 -229
  630. package/dist/components/forms/text-area/RuiTextArea.vue2.js.map +0 -1
  631. package/dist/components/forms/text-area/RuiTextArea.vue3.js +0 -92
  632. package/dist/components/forms/text-area/RuiTextArea.vue3.js.map +0 -1
  633. package/dist/components/forms/text-field/RuiTextField.vue.js +0 -11
  634. package/dist/components/forms/text-field/RuiTextField.vue.js.map +0 -1
  635. package/dist/components/forms/text-field/RuiTextField.vue2.js +0 -202
  636. package/dist/components/forms/text-field/RuiTextField.vue2.js.map +0 -1
  637. package/dist/components/forms/text-field/RuiTextField.vue3.js +0 -89
  638. package/dist/components/forms/text-field/RuiTextField.vue3.js.map +0 -1
  639. package/dist/components/helpers/RuiFormTextDetail.vue.js +0 -50
  640. package/dist/components/helpers/RuiFormTextDetail.vue.js.map +0 -1
  641. package/dist/components/helpers/RuiFormTextDetail.vue2.js +0 -5
  642. package/dist/components/helpers/RuiFormTextDetail.vue2.js.map +0 -1
  643. package/dist/components/icons/RuiIcon.vue.js +0 -11
  644. package/dist/components/icons/RuiIcon.vue.js.map +0 -1
  645. package/dist/components/icons/RuiIcon.vue2.js +0 -57
  646. package/dist/components/icons/RuiIcon.vue2.js.map +0 -1
  647. package/dist/components/icons/RuiIcon.vue3.js +0 -29
  648. package/dist/components/icons/RuiIcon.vue3.js.map +0 -1
  649. package/dist/components/index.js.map +0 -1
  650. package/dist/components/loaders/RuiSkeletonBase.vue.js +0 -11
  651. package/dist/components/loaders/RuiSkeletonBase.vue.js.map +0 -1
  652. package/dist/components/loaders/RuiSkeletonBase.vue2.js +0 -22
  653. package/dist/components/loaders/RuiSkeletonBase.vue2.js.map +0 -1
  654. package/dist/components/loaders/RuiSkeletonBase.vue3.js +0 -12
  655. package/dist/components/loaders/RuiSkeletonBase.vue3.js.map +0 -1
  656. package/dist/components/loaders/RuiSkeletonLoader.vue.js +0 -11
  657. package/dist/components/loaders/RuiSkeletonLoader.vue.js.map +0 -1
  658. package/dist/components/loaders/RuiSkeletonLoader.vue2.js +0 -47
  659. package/dist/components/loaders/RuiSkeletonLoader.vue2.js.map +0 -1
  660. package/dist/components/loaders/RuiSkeletonLoader.vue3.js +0 -33
  661. package/dist/components/loaders/RuiSkeletonLoader.vue3.js.map +0 -1
  662. package/dist/components/logos/RuiLogo.vue.js +0 -148
  663. package/dist/components/logos/RuiLogo.vue.js.map +0 -1
  664. package/dist/components/logos/RuiLogo.vue2.js +0 -5
  665. package/dist/components/logos/RuiLogo.vue2.js.map +0 -1
  666. package/dist/components/logos/logo.svg.js +0 -5
  667. package/dist/components/logos/logo.svg.js.map +0 -1
  668. package/dist/components/overlays/badge/RuiBadge.vue.js +0 -11
  669. package/dist/components/overlays/badge/RuiBadge.vue.js.map +0 -1
  670. package/dist/components/overlays/badge/RuiBadge.vue2.js +0 -93
  671. package/dist/components/overlays/badge/RuiBadge.vue2.js.map +0 -1
  672. package/dist/components/overlays/badge/RuiBadge.vue3.js +0 -77
  673. package/dist/components/overlays/badge/RuiBadge.vue3.js.map +0 -1
  674. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js +0 -45
  675. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js.map +0 -1
  676. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue2.js +0 -5
  677. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue2.js.map +0 -1
  678. package/dist/components/overlays/dialog/RuiDialog.vue.js +0 -11
  679. package/dist/components/overlays/dialog/RuiDialog.vue.js.map +0 -1
  680. package/dist/components/overlays/dialog/RuiDialog.vue2.js +0 -195
  681. package/dist/components/overlays/dialog/RuiDialog.vue2.js.map +0 -1
  682. package/dist/components/overlays/dialog/RuiDialog.vue3.js +0 -18
  683. package/dist/components/overlays/dialog/RuiDialog.vue3.js.map +0 -1
  684. package/dist/components/overlays/menu/RuiMenu.vue.js +0 -11
  685. package/dist/components/overlays/menu/RuiMenu.vue.js.map +0 -1
  686. package/dist/components/overlays/menu/RuiMenu.vue2.js +0 -214
  687. package/dist/components/overlays/menu/RuiMenu.vue2.js.map +0 -1
  688. package/dist/components/overlays/menu/RuiMenu.vue3.js +0 -21
  689. package/dist/components/overlays/menu/RuiMenu.vue3.js.map +0 -1
  690. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.js +0 -11
  691. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.js.map +0 -1
  692. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js +0 -164
  693. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js.map +0 -1
  694. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue3.js +0 -28
  695. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue3.js.map +0 -1
  696. package/dist/components/overlays/notification/RuiNotification.vue.js +0 -79
  697. package/dist/components/overlays/notification/RuiNotification.vue.js.map +0 -1
  698. package/dist/components/overlays/notification/RuiNotification.vue2.js +0 -5
  699. package/dist/components/overlays/notification/RuiNotification.vue2.js.map +0 -1
  700. package/dist/components/overlays/tooltip/RuiTooltip.vue.js +0 -11
  701. package/dist/components/overlays/tooltip/RuiTooltip.vue.js.map +0 -1
  702. package/dist/components/overlays/tooltip/RuiTooltip.vue2.js +0 -112
  703. package/dist/components/overlays/tooltip/RuiTooltip.vue2.js.map +0 -1
  704. package/dist/components/overlays/tooltip/RuiTooltip.vue3.js +0 -27
  705. package/dist/components/overlays/tooltip/RuiTooltip.vue3.js.map +0 -1
  706. package/dist/components/progress/RuiProgress.vue.js +0 -11
  707. package/dist/components/progress/RuiProgress.vue.js.map +0 -1
  708. package/dist/components/progress/RuiProgress.vue2.js +0 -92
  709. package/dist/components/progress/RuiProgress.vue2.js.map +0 -1
  710. package/dist/components/progress/RuiProgress.vue3.js +0 -48
  711. package/dist/components/progress/RuiProgress.vue3.js.map +0 -1
  712. package/dist/components/steppers/RuiFooterStepper.vue.js +0 -11
  713. package/dist/components/steppers/RuiFooterStepper.vue.js.map +0 -1
  714. package/dist/components/steppers/RuiFooterStepper.vue2.js +0 -150
  715. package/dist/components/steppers/RuiFooterStepper.vue2.js.map +0 -1
  716. package/dist/components/steppers/RuiFooterStepper.vue3.js +0 -31
  717. package/dist/components/steppers/RuiFooterStepper.vue3.js.map +0 -1
  718. package/dist/components/steppers/RuiStepper.vue.js +0 -11
  719. package/dist/components/steppers/RuiStepper.vue.js.map +0 -1
  720. package/dist/components/steppers/RuiStepper.vue2.js +0 -133
  721. package/dist/components/steppers/RuiStepper.vue2.js.map +0 -1
  722. package/dist/components/steppers/RuiStepper.vue3.js +0 -58
  723. package/dist/components/steppers/RuiStepper.vue3.js.map +0 -1
  724. package/dist/components/steppers/RuiStepperCustomIcon.vue.js +0 -11
  725. package/dist/components/steppers/RuiStepperCustomIcon.vue.js.map +0 -1
  726. package/dist/components/steppers/RuiStepperCustomIcon.vue2.js +0 -38
  727. package/dist/components/steppers/RuiStepperCustomIcon.vue2.js.map +0 -1
  728. package/dist/components/steppers/RuiStepperCustomIcon.vue3.js +0 -15
  729. package/dist/components/steppers/RuiStepperCustomIcon.vue3.js.map +0 -1
  730. package/dist/components/steppers/RuiStepperIcon.vue.js +0 -11
  731. package/dist/components/steppers/RuiStepperIcon.vue.js.map +0 -1
  732. package/dist/components/steppers/RuiStepperIcon.vue2.js +0 -43
  733. package/dist/components/steppers/RuiStepperIcon.vue2.js.map +0 -1
  734. package/dist/components/steppers/RuiStepperIcon.vue3.js +0 -21
  735. package/dist/components/steppers/RuiStepperIcon.vue3.js.map +0 -1
  736. package/dist/components/tables/RuiDataTable.vue.js +0 -11
  737. package/dist/components/tables/RuiDataTable.vue.js.map +0 -1
  738. package/dist/components/tables/RuiDataTable.vue2.js +0 -541
  739. package/dist/components/tables/RuiDataTable.vue2.js.map +0 -1
  740. package/dist/components/tables/RuiDataTable.vue3.js +0 -76
  741. package/dist/components/tables/RuiDataTable.vue3.js.map +0 -1
  742. package/dist/components/tables/RuiExpandButton.vue.js +0 -11
  743. package/dist/components/tables/RuiExpandButton.vue.js.map +0 -1
  744. package/dist/components/tables/RuiExpandButton.vue2.js +0 -44
  745. package/dist/components/tables/RuiExpandButton.vue2.js.map +0 -1
  746. package/dist/components/tables/RuiExpandButton.vue3.js +0 -15
  747. package/dist/components/tables/RuiExpandButton.vue3.js.map +0 -1
  748. package/dist/components/tables/RuiTableHead.vue.js +0 -11
  749. package/dist/components/tables/RuiTableHead.vue.js.map +0 -1
  750. package/dist/components/tables/RuiTableHead.vue2.js +0 -195
  751. package/dist/components/tables/RuiTableHead.vue2.js.map +0 -1
  752. package/dist/components/tables/RuiTableHead.vue3.js +0 -69
  753. package/dist/components/tables/RuiTableHead.vue3.js.map +0 -1
  754. package/dist/components/tables/RuiTablePagination.vue.js +0 -11
  755. package/dist/components/tables/RuiTablePagination.vue.js.map +0 -1
  756. package/dist/components/tables/RuiTablePagination.vue2.js +0 -204
  757. package/dist/components/tables/RuiTablePagination.vue2.js.map +0 -1
  758. package/dist/components/tables/RuiTablePagination.vue3.js +0 -28
  759. package/dist/components/tables/RuiTablePagination.vue3.js.map +0 -1
  760. package/dist/components/tables/table_no_data_placeholder.svg.js +0 -5
  761. package/dist/components/tables/table_no_data_placeholder.svg.js.map +0 -1
  762. package/dist/components/tables/table_no_data_placeholder_dark.svg.js +0 -5
  763. package/dist/components/tables/table_no_data_placeholder_dark.svg.js.map +0 -1
  764. package/dist/components/tabs/tab/RuiTab.vue.js +0 -11
  765. package/dist/components/tabs/tab/RuiTab.vue.js.map +0 -1
  766. package/dist/components/tabs/tab/RuiTab.vue2.js +0 -167
  767. package/dist/components/tabs/tab/RuiTab.vue2.js.map +0 -1
  768. package/dist/components/tabs/tab/RuiTab.vue3.js +0 -17
  769. package/dist/components/tabs/tab/RuiTab.vue3.js.map +0 -1
  770. package/dist/components/tabs/tab-item/RuiTabItem.vue.js +0 -11
  771. package/dist/components/tabs/tab-item/RuiTabItem.vue.js.map +0 -1
  772. package/dist/components/tabs/tab-item/RuiTabItem.vue2.js +0 -52
  773. package/dist/components/tabs/tab-item/RuiTabItem.vue2.js.map +0 -1
  774. package/dist/components/tabs/tab-item/RuiTabItem.vue3.js +0 -9
  775. package/dist/components/tabs/tab-item/RuiTabItem.vue3.js.map +0 -1
  776. package/dist/components/tabs/tab-items/RuiTabItems.vue.js +0 -11
  777. package/dist/components/tabs/tab-items/RuiTabItems.vue.js.map +0 -1
  778. package/dist/components/tabs/tab-items/RuiTabItems.vue2.js +0 -90
  779. package/dist/components/tabs/tab-items/RuiTabItems.vue2.js.map +0 -1
  780. package/dist/components/tabs/tab-items/RuiTabItems.vue3.js +0 -9
  781. package/dist/components/tabs/tab-items/RuiTabItems.vue3.js.map +0 -1
  782. package/dist/components/tabs/tabs/RuiTabs.vue.js +0 -11
  783. package/dist/components/tabs/tabs/RuiTabs.vue.js.map +0 -1
  784. package/dist/components/tabs/tabs/RuiTabs.vue2.js +0 -288
  785. package/dist/components/tabs/tabs/RuiTabs.vue2.js.map +0 -1
  786. package/dist/components/tabs/tabs/RuiTabs.vue3.js +0 -20
  787. package/dist/components/tabs/tabs/RuiTabs.vue3.js.map +0 -1
  788. package/dist/components/time-picker/RuiTimePicker.vue.js +0 -11
  789. package/dist/components/time-picker/RuiTimePicker.vue.js.map +0 -1
  790. package/dist/components/time-picker/RuiTimePicker.vue2.js +0 -463
  791. package/dist/components/time-picker/RuiTimePicker.vue2.js.map +0 -1
  792. package/dist/components/time-picker/RuiTimePicker.vue3.js +0 -21
  793. package/dist/components/time-picker/RuiTimePicker.vue3.js.map +0 -1
  794. package/dist/composables/forms/use-label-with-quote.js +0 -14
  795. package/dist/composables/forms/use-label-with-quote.js.map +0 -1
  796. package/dist/composables/index.js.map +0 -1
@@ -1,81 +1,85 @@
1
1
  import { transformCase } from "../../utils/helpers.js";
2
- const ASSET_MAPPINGS_URL = "https://raw.githubusercontent.com/rotki/data";
3
- const SESSION_SOURCES_PREFIX = "rui-logo-sources";
4
- const SESSION_VERIFIED_PREFIX = "rui-logo-verified";
5
- const sourcesCache = /* @__PURE__ */ new Map();
2
+ //#region src/components/logos/use-logo-sources.ts
3
+ var ASSET_MAPPINGS_URL = "https://raw.githubusercontent.com/rotki/data";
4
+ var SESSION_SOURCES_PREFIX = "rui-logo-sources";
5
+ var SESSION_VERIFIED_PREFIX = "rui-logo-verified";
6
+ var sourcesCache = /* @__PURE__ */ new Map();
6
7
  function isExternalLinks(value) {
7
- if (typeof value !== "object" || value === null)
8
- return false;
9
- return Object.values(value).every((v) => v === void 0 || typeof v === "string");
8
+ if (typeof value !== "object" || value === null) return false;
9
+ return Object.values(value).every((v) => v === void 0 || typeof v === "string");
10
10
  }
11
11
  function writeSessionStorage(key, value) {
12
- try {
13
- sessionStorage.setItem(key, value);
14
- } catch {
15
- }
12
+ try {
13
+ sessionStorage.setItem(key, value);
14
+ } catch {}
16
15
  }
17
16
  function readSessionStorage(key) {
18
- try {
19
- return sessionStorage.getItem(key) ?? void 0;
20
- } catch {
21
- return void 0;
22
- }
17
+ try {
18
+ return sessionStorage.getItem(key) ?? void 0;
19
+ } catch {
20
+ return;
21
+ }
23
22
  }
23
+ /**
24
+ * Returns cached logo sources synchronously from sessionStorage.
25
+ * Returns undefined if nothing is cached or sessionStorage is unavailable.
26
+ */
24
27
  function getCachedLogoSources(branch) {
25
- const raw = readSessionStorage(`${SESSION_SOURCES_PREFIX}:${branch}`);
26
- if (!raw)
27
- return void 0;
28
- try {
29
- const parsed = JSON.parse(raw);
30
- if (isExternalLinks(parsed))
31
- return parsed;
32
- } catch {
33
- }
34
- return void 0;
28
+ const raw = readSessionStorage(`${SESSION_SOURCES_PREFIX}:${branch}`);
29
+ if (!raw) return void 0;
30
+ try {
31
+ const parsed = JSON.parse(raw);
32
+ if (isExternalLinks(parsed)) return parsed;
33
+ } catch {}
35
34
  }
35
+ /**
36
+ * Returns a previously verified (successfully decoded) seasonal logo URL
37
+ * for the given branch and logo type from sessionStorage.
38
+ */
36
39
  function getVerifiedLogoUrl(branch, logo) {
37
- return readSessionStorage(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`);
40
+ return readSessionStorage(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`);
38
41
  }
42
+ /**
43
+ * Stores a verified seasonal logo URL in sessionStorage after successful decode.
44
+ */
39
45
  function setVerifiedLogoUrl(branch, logo, url) {
40
- writeSessionStorage(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`, url);
46
+ writeSessionStorage(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`, url);
41
47
  }
48
+ /**
49
+ * Removes a previously verified seasonal logo URL from sessionStorage.
50
+ * Called when an image fails to load so stale entries aren't trusted on next load.
51
+ */
42
52
  function removeVerifiedLogoUrl(branch, logo) {
43
- try {
44
- sessionStorage.removeItem(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`);
45
- } catch {
46
- }
53
+ try {
54
+ sessionStorage.removeItem(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`);
55
+ } catch {}
47
56
  }
48
57
  async function fetchSourcesFromNetwork(branch) {
49
- try {
50
- const response = await fetch(
51
- `${ASSET_MAPPINGS_URL}/${branch}/constants/asset-mappings.json`
52
- );
53
- if (!response.ok)
54
- return void 0;
55
- const json = await response.json();
56
- const links = transformCase(json?.logo, "camelCase");
57
- if (isExternalLinks(links)) {
58
- writeSessionStorage(`${SESSION_SOURCES_PREFIX}:${branch}`, JSON.stringify(links));
59
- return links;
60
- }
61
- return void 0;
62
- } catch {
63
- return void 0;
64
- }
58
+ try {
59
+ const response = await fetch(`${ASSET_MAPPINGS_URL}/${branch}/constants/asset-mappings.json`);
60
+ if (!response.ok) return void 0;
61
+ const links = transformCase((await response.json())?.logo, "camelCase");
62
+ if (isExternalLinks(links)) {
63
+ writeSessionStorage(`${SESSION_SOURCES_PREFIX}:${branch}`, JSON.stringify(links));
64
+ return links;
65
+ }
66
+ return;
67
+ } catch {
68
+ return;
69
+ }
65
70
  }
71
+ /**
72
+ * Fetches external logo sources for a given branch, deduplicating concurrent requests.
73
+ * Uses a module-level cache so all RuiLogo instances share a single fetch per branch.
74
+ */
66
75
  function getLogoSources(branch) {
67
- const cached = sourcesCache.get(branch);
68
- if (cached)
69
- return cached;
70
- const promise = fetchSourcesFromNetwork(branch);
71
- sourcesCache.set(branch, promise);
72
- return promise;
76
+ const cached = sourcesCache.get(branch);
77
+ if (cached) return cached;
78
+ const promise = fetchSourcesFromNetwork(branch);
79
+ sourcesCache.set(branch, promise);
80
+ return promise;
73
81
  }
74
- export {
75
- getCachedLogoSources,
76
- getLogoSources,
77
- getVerifiedLogoUrl,
78
- removeVerifiedLogoUrl,
79
- setVerifiedLogoUrl
80
- };
81
- //# sourceMappingURL=use-logo-sources.js.map
82
+ //#endregion
83
+ export { getCachedLogoSources, getLogoSources, getVerifiedLogoUrl, removeVerifiedLogoUrl, setVerifiedLogoUrl };
84
+
85
+ //# sourceMappingURL=use-logo-sources.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-logo-sources.js","sources":["../../../src/components/logos/use-logo-sources.ts"],"sourcesContent":["import type { ExternalLinks } from '@/components/logos/RuiLogo.vue';\nimport { transformCase } from '@/utils/helpers';\n\nconst ASSET_MAPPINGS_URL = 'https://raw.githubusercontent.com/rotki/data';\nconst SESSION_SOURCES_PREFIX = 'rui-logo-sources';\nconst SESSION_VERIFIED_PREFIX = 'rui-logo-verified';\n\n// Module-level cache: deduplicates asset-mappings fetches across all RuiLogo instances.\n// Keyed by branch so different branches don't share stale data.\nconst sourcesCache = new Map<string, Promise<ExternalLinks | undefined>>();\n\nfunction isExternalLinks(value: unknown): value is ExternalLinks {\n if (typeof value !== 'object' || value === null)\n return false;\n\n return Object.values(value).every(v => v === undefined || typeof v === 'string');\n}\n\nfunction writeSessionStorage(key: string, value: string): void {\n try {\n sessionStorage.setItem(key, value);\n }\n catch {\n // sessionStorage may be full or unavailable\n }\n}\n\nfunction readSessionStorage(key: string): string | undefined {\n try {\n return sessionStorage.getItem(key) ?? undefined;\n }\n catch {\n return undefined;\n }\n}\n\nfunction clearSessionStorage(prefix: string): void {\n try {\n const keysToRemove: string[] = [];\n for (let i = 0; i < sessionStorage.length; i++) {\n const key = sessionStorage.key(i);\n if (key?.startsWith(prefix))\n keysToRemove.push(key);\n }\n keysToRemove.forEach(key => sessionStorage.removeItem(key));\n }\n catch {\n // sessionStorage may be unavailable\n }\n}\n\n/**\n * Returns cached logo sources synchronously from sessionStorage.\n * Returns undefined if nothing is cached or sessionStorage is unavailable.\n */\nexport function getCachedLogoSources(branch: string): ExternalLinks | undefined {\n const raw = readSessionStorage(`${SESSION_SOURCES_PREFIX}:${branch}`);\n if (!raw)\n return undefined;\n\n try {\n const parsed: unknown = JSON.parse(raw);\n if (isExternalLinks(parsed))\n return parsed;\n }\n catch {\n // Invalid JSON, ignore\n }\n return undefined;\n}\n\n/**\n * Returns a previously verified (successfully decoded) seasonal logo URL\n * for the given branch and logo type from sessionStorage.\n */\nexport function getVerifiedLogoUrl(branch: string, logo: string): string | undefined {\n return readSessionStorage(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`);\n}\n\n/**\n * Stores a verified seasonal logo URL in sessionStorage after successful decode.\n */\nexport function setVerifiedLogoUrl(branch: string, logo: string, url: string): void {\n writeSessionStorage(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`, url);\n}\n\n/**\n * Removes a previously verified seasonal logo URL from sessionStorage.\n * Called when an image fails to load so stale entries aren't trusted on next load.\n */\nexport function removeVerifiedLogoUrl(branch: string, logo: string): void {\n try {\n sessionStorage.removeItem(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`);\n }\n catch {\n // sessionStorage may be unavailable\n }\n}\n\nasync function fetchSourcesFromNetwork(branch: string): Promise<ExternalLinks | undefined> {\n try {\n const response = await fetch(\n `${ASSET_MAPPINGS_URL}/${branch}/constants/asset-mappings.json`,\n );\n\n if (!response.ok)\n return undefined;\n\n const json = await response.json();\n const links = transformCase(json?.logo, 'camelCase');\n if (isExternalLinks(links)) {\n writeSessionStorage(`${SESSION_SOURCES_PREFIX}:${branch}`, JSON.stringify(links));\n return links;\n }\n\n return undefined;\n }\n catch {\n return undefined;\n }\n}\n\n/**\n * Fetches external logo sources for a given branch, deduplicating concurrent requests.\n * Uses a module-level cache so all RuiLogo instances share a single fetch per branch.\n */\nexport function getLogoSources(branch: string): Promise<ExternalLinks | undefined> {\n const cached = sourcesCache.get(branch);\n if (cached)\n return cached;\n\n const promise = fetchSourcesFromNetwork(branch);\n sourcesCache.set(branch, promise);\n return promise;\n}\n\n/**\n * Clears the module-level cache and sessionStorage entries. Exposed for testing only.\n */\nexport function clearLogoSourcesCache(): void {\n sourcesCache.clear();\n clearSessionStorage(SESSION_SOURCES_PREFIX);\n clearSessionStorage(SESSION_VERIFIED_PREFIX);\n}\n"],"names":[],"mappings":";AAGA,MAAM,qBAAqB;AAC3B,MAAM,yBAAyB;AAC/B,MAAM,0BAA0B;AAIhC,MAAM,mCAAmB,IAAA;AAEzB,SAAS,gBAAgB,OAAwC;AAC/D,MAAI,OAAO,UAAU,YAAY,UAAU;AACzC,WAAO;AAET,SAAO,OAAO,OAAO,KAAK,EAAE,MAAM,OAAK,MAAM,UAAa,OAAO,MAAM,QAAQ;AACjF;AAEA,SAAS,oBAAoB,KAAa,OAAqB;AAC7D,MAAI;AACF,mBAAe,QAAQ,KAAK,KAAK;AAAA,EACnC,QACM;AAAA,EAEN;AACF;AAEA,SAAS,mBAAmB,KAAiC;AAC3D,MAAI;AACF,WAAO,eAAe,QAAQ,GAAG,KAAK;AAAA,EACxC,QACM;AACJ,WAAO;AAAA,EACT;AACF;AAqBO,SAAS,qBAAqB,QAA2C;AAC9E,QAAM,MAAM,mBAAmB,GAAG,sBAAsB,IAAI,MAAM,EAAE;AACpE,MAAI,CAAC;AACH,WAAO;AAET,MAAI;AACF,UAAM,SAAkB,KAAK,MAAM,GAAG;AACtC,QAAI,gBAAgB,MAAM;AACxB,aAAO;AAAA,EACX,QACM;AAAA,EAEN;AACA,SAAO;AACT;AAMO,SAAS,mBAAmB,QAAgB,MAAkC;AACnF,SAAO,mBAAmB,GAAG,uBAAuB,IAAI,MAAM,IAAI,IAAI,EAAE;AAC1E;AAKO,SAAS,mBAAmB,QAAgB,MAAc,KAAmB;AAClF,sBAAoB,GAAG,uBAAuB,IAAI,MAAM,IAAI,IAAI,IAAI,GAAG;AACzE;AAMO,SAAS,sBAAsB,QAAgB,MAAoB;AACxE,MAAI;AACF,mBAAe,WAAW,GAAG,uBAAuB,IAAI,MAAM,IAAI,IAAI,EAAE;AAAA,EAC1E,QACM;AAAA,EAEN;AACF;AAEA,eAAe,wBAAwB,QAAoD;AACzF,MAAI;AACF,UAAM,WAAW,MAAM;AAAA,MACrB,GAAG,kBAAkB,IAAI,MAAM;AAAA,IAAA;AAGjC,QAAI,CAAC,SAAS;AACZ,aAAO;AAET,UAAM,OAAO,MAAM,SAAS,KAAA;AAC5B,UAAM,QAAQ,cAAc,MAAM,MAAM,WAAW;AACnD,QAAI,gBAAgB,KAAK,GAAG;AAC1B,0BAAoB,GAAG,sBAAsB,IAAI,MAAM,IAAI,KAAK,UAAU,KAAK,CAAC;AAChF,aAAO;AAAA,IACT;AAEA,WAAO;AAAA,EACT,QACM;AACJ,WAAO;AAAA,EACT;AACF;AAMO,SAAS,eAAe,QAAoD;AACjF,QAAM,SAAS,aAAa,IAAI,MAAM;AACtC,MAAI;AACF,WAAO;AAET,QAAM,UAAU,wBAAwB,MAAM;AAC9C,eAAa,IAAI,QAAQ,OAAO;AAChC,SAAO;AACT;"}
1
+ {"version":3,"file":"use-logo-sources.js","names":[],"sources":["../../../src/components/logos/use-logo-sources.ts"],"sourcesContent":["import type { ExternalLinks } from '@/components/logos/RuiLogo.vue';\nimport { transformCase } from '@/utils/helpers';\n\nconst ASSET_MAPPINGS_URL = 'https://raw.githubusercontent.com/rotki/data';\nconst SESSION_SOURCES_PREFIX = 'rui-logo-sources';\nconst SESSION_VERIFIED_PREFIX = 'rui-logo-verified';\n\n// Module-level cache: deduplicates asset-mappings fetches across all RuiLogo instances.\n// Keyed by branch so different branches don't share stale data.\nconst sourcesCache = new Map<string, Promise<ExternalLinks | undefined>>();\n\nfunction isExternalLinks(value: unknown): value is ExternalLinks {\n if (typeof value !== 'object' || value === null)\n return false;\n\n return Object.values(value).every(v => v === undefined || typeof v === 'string');\n}\n\nfunction writeSessionStorage(key: string, value: string): void {\n try {\n sessionStorage.setItem(key, value);\n }\n catch {\n // sessionStorage may be full or unavailable\n }\n}\n\nfunction readSessionStorage(key: string): string | undefined {\n try {\n return sessionStorage.getItem(key) ?? undefined;\n }\n catch {\n return undefined;\n }\n}\n\nfunction clearSessionStorage(prefix: string): void {\n try {\n const keysToRemove: string[] = [];\n for (let i = 0; i < sessionStorage.length; i++) {\n const key = sessionStorage.key(i);\n if (key?.startsWith(prefix))\n keysToRemove.push(key);\n }\n keysToRemove.forEach(key => sessionStorage.removeItem(key));\n }\n catch {\n // sessionStorage may be unavailable\n }\n}\n\n/**\n * Returns cached logo sources synchronously from sessionStorage.\n * Returns undefined if nothing is cached or sessionStorage is unavailable.\n */\nexport function getCachedLogoSources(branch: string): ExternalLinks | undefined {\n const raw = readSessionStorage(`${SESSION_SOURCES_PREFIX}:${branch}`);\n if (!raw)\n return undefined;\n\n try {\n const parsed: unknown = JSON.parse(raw);\n if (isExternalLinks(parsed))\n return parsed;\n }\n catch {\n // Invalid JSON, ignore\n }\n return undefined;\n}\n\n/**\n * Returns a previously verified (successfully decoded) seasonal logo URL\n * for the given branch and logo type from sessionStorage.\n */\nexport function getVerifiedLogoUrl(branch: string, logo: string): string | undefined {\n return readSessionStorage(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`);\n}\n\n/**\n * Stores a verified seasonal logo URL in sessionStorage after successful decode.\n */\nexport function setVerifiedLogoUrl(branch: string, logo: string, url: string): void {\n writeSessionStorage(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`, url);\n}\n\n/**\n * Removes a previously verified seasonal logo URL from sessionStorage.\n * Called when an image fails to load so stale entries aren't trusted on next load.\n */\nexport function removeVerifiedLogoUrl(branch: string, logo: string): void {\n try {\n sessionStorage.removeItem(`${SESSION_VERIFIED_PREFIX}:${branch}:${logo}`);\n }\n catch {\n // sessionStorage may be unavailable\n }\n}\n\nasync function fetchSourcesFromNetwork(branch: string): Promise<ExternalLinks | undefined> {\n try {\n const response = await fetch(\n `${ASSET_MAPPINGS_URL}/${branch}/constants/asset-mappings.json`,\n );\n\n if (!response.ok)\n return undefined;\n\n const json = await response.json();\n const links = transformCase(json?.logo, 'camelCase');\n if (isExternalLinks(links)) {\n writeSessionStorage(`${SESSION_SOURCES_PREFIX}:${branch}`, JSON.stringify(links));\n return links;\n }\n\n return undefined;\n }\n catch {\n return undefined;\n }\n}\n\n/**\n * Fetches external logo sources for a given branch, deduplicating concurrent requests.\n * Uses a module-level cache so all RuiLogo instances share a single fetch per branch.\n */\nexport function getLogoSources(branch: string): Promise<ExternalLinks | undefined> {\n const cached = sourcesCache.get(branch);\n if (cached)\n return cached;\n\n const promise = fetchSourcesFromNetwork(branch);\n sourcesCache.set(branch, promise);\n return promise;\n}\n\n/**\n * Clears the module-level cache and sessionStorage entries. Exposed for testing only.\n */\nexport function clearLogoSourcesCache(): void {\n sourcesCache.clear();\n clearSessionStorage(SESSION_SOURCES_PREFIX);\n clearSessionStorage(SESSION_VERIFIED_PREFIX);\n}\n"],"mappings":";;AAGA,IAAM,qBAAqB;AAC3B,IAAM,yBAAyB;AAC/B,IAAM,0BAA0B;AAIhC,IAAM,+BAAe,IAAI,KAAiD;AAE1E,SAAS,gBAAgB,OAAwC;AAC/D,KAAI,OAAO,UAAU,YAAY,UAAU,KACzC,QAAO;AAET,QAAO,OAAO,OAAO,MAAM,CAAC,OAAM,MAAK,MAAM,KAAA,KAAa,OAAO,MAAM,SAAS;;AAGlF,SAAS,oBAAoB,KAAa,OAAqB;AAC7D,KAAI;AACF,iBAAe,QAAQ,KAAK,MAAM;SAE9B;;AAKR,SAAS,mBAAmB,KAAiC;AAC3D,KAAI;AACF,SAAO,eAAe,QAAQ,IAAI,IAAI,KAAA;SAElC;AACJ;;;;;;;AAuBJ,SAAgB,qBAAqB,QAA2C;CAC9E,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,GAAG,SAAS;AACrE,KAAI,CAAC,IACH,QAAO,KAAA;AAET,KAAI;EACF,MAAM,SAAkB,KAAK,MAAM,IAAI;AACvC,MAAI,gBAAgB,OAAO,CACzB,QAAO;SAEL;;;;;;AAUR,SAAgB,mBAAmB,QAAgB,MAAkC;AACnF,QAAO,mBAAmB,GAAG,wBAAwB,GAAG,OAAO,GAAG,OAAO;;;;;AAM3E,SAAgB,mBAAmB,QAAgB,MAAc,KAAmB;AAClF,qBAAoB,GAAG,wBAAwB,GAAG,OAAO,GAAG,QAAQ,IAAI;;;;;;AAO1E,SAAgB,sBAAsB,QAAgB,MAAoB;AACxE,KAAI;AACF,iBAAe,WAAW,GAAG,wBAAwB,GAAG,OAAO,GAAG,OAAO;SAErE;;AAKR,eAAe,wBAAwB,QAAoD;AACzF,KAAI;EACF,MAAM,WAAW,MAAM,MACrB,GAAG,mBAAmB,GAAG,OAAO,gCACjC;AAED,MAAI,CAAC,SAAS,GACZ,QAAO,KAAA;EAGT,MAAM,QAAQ,eADD,MAAM,SAAS,MAAM,GACA,MAAM,YAAY;AACpD,MAAI,gBAAgB,MAAM,EAAE;AAC1B,uBAAoB,GAAG,uBAAuB,GAAG,UAAU,KAAK,UAAU,MAAM,CAAC;AACjF,UAAO;;AAGT;SAEI;AACJ;;;;;;;AAQJ,SAAgB,eAAe,QAAoD;CACjF,MAAM,SAAS,aAAa,IAAI,OAAO;AACvC,KAAI,OACF,QAAO;CAET,MAAM,UAAU,wBAAwB,OAAO;AAC/C,cAAa,IAAI,QAAQ,QAAQ;AACjC,QAAO"}
@@ -0,0 +1,7 @@
1
+ import RuiBadge_vue_vue_type_script_setup_true_lang_default from "./RuiBadge.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/overlays/badge/RuiBadge.vue
3
+ var RuiBadge_default = RuiBadge_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { RuiBadge_default as default };
6
+
7
+ //# sourceMappingURL=RuiBadge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuiBadge.js","names":[],"sources":["../../../../src/components/overlays/badge/RuiBadge.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ContextColorsType } from '@/consts/colors';\nimport type { RuiIcons } from '@/icons';\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport { BadgePlacement, BadgeRounded, BadgeSize } from '@/components/overlays/badge/badge-props';\nimport { tv } from '@/utils/tv';\n\ntype PosConfig = [left: number, right: string, edge: string, center: number];\n\nexport interface Props {\n text?: string | null;\n icon?: RuiIcons | null;\n modelValue?: boolean;\n dot?: boolean;\n left?: boolean;\n offsetX?: string | number;\n offsetY?: string | number;\n placement?: BadgePlacement;\n size?: BadgeSize;\n rounded?: BadgeRounded;\n color?: 'default' | ContextColorsType;\n}\n\ndefineOptions({\n name: 'RuiBadge',\n});\n\nconst {\n text = null,\n icon = null,\n modelValue = true,\n dot = false,\n placement = BadgePlacement.top,\n left = false,\n size = BadgeSize.md,\n rounded = BadgeRounded.full,\n color = 'primary',\n offsetX = 0,\n offsetY = 0,\n} = defineProps<Props>();\n\nconst slots = defineSlots<{\n default?: () => any;\n badge?: () => any;\n icon?: () => any;\n}>();\n\nconst badgeStyles = tv({\n slots: {\n wrapper: 'relative inline-block',\n badge: 'flex items-center justify-center text-xs font-medium absolute bg-transparent text-rui-light-text dark:text-rui-text',\n content: 'flex items-center px-1',\n },\n variants: {\n color: {\n default: {},\n primary: { badge: 'text-white bg-rui-primary' },\n secondary: { badge: 'text-white bg-rui-secondary' },\n error: { badge: 'text-white bg-rui-error' },\n warning: { badge: 'text-white bg-rui-warning' },\n info: { badge: 'text-white bg-rui-info' },\n success: { badge: 'text-white bg-rui-success' },\n },\n size: {\n sm: { badge: 'min-h-4 min-w-4' },\n md: { badge: 'min-h-5 min-w-5' },\n lg: { badge: 'min-h-6 min-w-6' },\n },\n rounded: {\n sm: { badge: 'rounded-sm' },\n md: { badge: 'rounded-md' },\n lg: { badge: 'rounded-lg' },\n full: { badge: 'rounded-full' },\n },\n dot: {\n true: {},\n },\n },\n compoundVariants: [\n // Dot default color\n { dot: true, color: 'default', class: { badge: 'bg-gray-500' } },\n\n // Dot sizes (smaller than normal badge)\n { dot: true, size: 'sm', class: { badge: 'min-w-1.5 min-h-1.5' } },\n { dot: true, size: 'md', class: { badge: 'min-w-2 min-h-2' } },\n { dot: true, size: 'lg', class: { badge: 'min-w-2.5 min-h-2.5' } },\n ],\n compoundSlots: [\n // Dark mode: warning/success/info keep light text on colored bg\n { slots: ['badge'], color: ['warning', 'success', 'info'], class: 'dark:text-rui-light-text' },\n ],\n defaultVariants: {\n color: 'primary',\n size: 'md',\n rounded: 'full',\n dot: false,\n },\n});\n\nconst hasText = computed<boolean>(() => !!text || !!slots.badge);\n\nconst hasIconAndText = computed<boolean>(() => (!!icon || !!slots.icon) && get(hasText));\n\nconst ui = computed<ReturnType<typeof badgeStyles>>(() => badgeStyles({\n color,\n size,\n rounded,\n dot,\n}));\n\n// Position configs: [leftOffset, rightBase, edgeBase, centerOffset] (rem / calc expressions)\nconst DOT_POS: PosConfig = [-0.25, '100% - 0.25rem', '100% - 0.25rem', 0.25];\nconst BADGE_POS: Record<BadgeSize, PosConfig> = {\n sm: [-0.85, '100% - 0.375rem', '100% - 0.375rem', 0.55],\n md: [-0.95, '100% - 0.5rem', '100% - 0.5rem', 0.65],\n lg: [-1.05, '100% - 0.5rem', '100% - 0.5rem', 0.75],\n};\n\nconst positionStyle = computed<Record<string, string>>(() => {\n const ox = Number(offsetX) * 0.0625;\n const oy = Number(offsetY) * 0.0625;\n const [l, r, edge, center] = dot ? DOT_POS : BADGE_POS[size];\n\n const horizontal = `calc(${left ? `${l}rem` : r} + ${ox}rem)`;\n const vertical = placement === 'center'\n ? `calc(50% - ${center}rem - ${oy}rem)`\n : `calc(${edge} - ${oy}rem)`;\n\n return {\n left: horizontal,\n [placement === 'top' ? 'bottom' : 'top']: vertical,\n };\n});\n</script>\n\n<template>\n <div :class=\"ui.wrapper()\">\n <slot />\n <Transition\n appear\n enter-active-class=\"transform ease-out duration-200\"\n enter-from-class=\"scale-0\"\n enter-to-class=\"scale-100\"\n leave-active-class=\"transform ease-in duration-150\"\n leave-from-class=\"scale-100\"\n leave-to-class=\"scale-0\"\n >\n <div\n v-if=\"modelValue\"\n :class=\"ui.badge()\"\n :style=\"positionStyle\"\n :data-placement=\"placement\"\n :data-dot=\"dot || undefined\"\n :data-left=\"left || undefined\"\n aria-atomic=\"true\"\n aria-label=\"Badge\"\n aria-live=\"polite\"\n role=\"status\"\n >\n <span\n v-if=\"!dot\"\n :class=\"ui.content({ class: hasIconAndText ? 'px-2' : undefined })\"\n >\n <slot name=\"badge\">\n {{ text }}\n </slot>\n <slot name=\"icon\">\n <RuiIcon\n v-if=\"icon\"\n :name=\"icon\"\n size=\"16\"\n :class=\"{ 'ml-0.5': hasText }\"\n />\n </slot>\n </span>\n </div>\n </Transition>\n </div>\n</template>\n"],"mappings":""}
@@ -1,5 +1,6 @@
1
1
  import type { ContextColorsType } from '../../../consts/colors.js';
2
2
  import type { RuiIcons } from '../../../icons/index.js';
3
+ import { BadgePlacement, BadgeRounded, BadgeSize } from '../../../components/overlays/badge/badge-props.js';
3
4
  export interface Props {
4
5
  text?: string | null;
5
6
  icon?: RuiIcons | null;
@@ -8,9 +9,9 @@ export interface Props {
8
9
  left?: boolean;
9
10
  offsetX?: string | number;
10
11
  offsetY?: string | number;
11
- placement?: 'top' | 'center' | 'bottom';
12
- size?: 'sm' | 'md' | 'lg';
13
- rounded?: 'sm' | 'md' | 'lg' | 'full';
12
+ placement?: BadgePlacement;
13
+ size?: BadgeSize;
14
+ rounded?: BadgeRounded;
14
15
  color?: 'default' | ContextColorsType;
15
16
  }
16
17
  type __VLS_Slots = {
@@ -0,0 +1,189 @@
1
+ import { tv } from "../../../utils/tv.js";
2
+ import RuiIcon_default from "../../icons/RuiIcon.js";
3
+ import { BadgePlacement, BadgeRounded, BadgeSize } from "./badge-props.js";
4
+ import { Transition, computed, createBlock, createCommentVNode, createElementBlock, createTextVNode, createVNode, defineComponent, normalizeClass, normalizeStyle, openBlock, renderSlot, toDisplayString, unref, useSlots, withCtx } from "vue";
5
+ import { get } from "@vueuse/shared";
6
+ //#region src/components/overlays/badge/RuiBadge.vue?vue&type=script&setup=true&lang.ts
7
+ var _hoisted_1 = [
8
+ "data-placement",
9
+ "data-dot",
10
+ "data-left"
11
+ ];
12
+ var RuiBadge_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
13
+ name: "RuiBadge",
14
+ __name: "RuiBadge",
15
+ props: {
16
+ text: { default: null },
17
+ icon: { default: null },
18
+ modelValue: {
19
+ type: Boolean,
20
+ default: true
21
+ },
22
+ dot: {
23
+ type: Boolean,
24
+ default: false
25
+ },
26
+ left: {
27
+ type: Boolean,
28
+ default: false
29
+ },
30
+ offsetX: { default: 0 },
31
+ offsetY: { default: 0 },
32
+ placement: { default: () => BadgePlacement.top },
33
+ size: { default: () => BadgeSize.md },
34
+ rounded: { default: () => BadgeRounded.full },
35
+ color: { default: "primary" }
36
+ },
37
+ setup(__props) {
38
+ const slots = useSlots();
39
+ const badgeStyles = tv({
40
+ slots: {
41
+ wrapper: "relative inline-block",
42
+ badge: "flex items-center justify-center text-xs font-medium absolute bg-transparent text-rui-light-text dark:text-rui-text",
43
+ content: "flex items-center px-1"
44
+ },
45
+ variants: {
46
+ color: {
47
+ default: {},
48
+ primary: { badge: "text-white bg-rui-primary" },
49
+ secondary: { badge: "text-white bg-rui-secondary" },
50
+ error: { badge: "text-white bg-rui-error" },
51
+ warning: { badge: "text-white bg-rui-warning" },
52
+ info: { badge: "text-white bg-rui-info" },
53
+ success: { badge: "text-white bg-rui-success" }
54
+ },
55
+ size: {
56
+ sm: { badge: "min-h-4 min-w-4" },
57
+ md: { badge: "min-h-5 min-w-5" },
58
+ lg: { badge: "min-h-6 min-w-6" }
59
+ },
60
+ rounded: {
61
+ sm: { badge: "rounded-sm" },
62
+ md: { badge: "rounded-md" },
63
+ lg: { badge: "rounded-lg" },
64
+ full: { badge: "rounded-full" }
65
+ },
66
+ dot: { true: {} }
67
+ },
68
+ compoundVariants: [
69
+ {
70
+ dot: true,
71
+ color: "default",
72
+ class: { badge: "bg-gray-500" }
73
+ },
74
+ {
75
+ dot: true,
76
+ size: "sm",
77
+ class: { badge: "min-w-1.5 min-h-1.5" }
78
+ },
79
+ {
80
+ dot: true,
81
+ size: "md",
82
+ class: { badge: "min-w-2 min-h-2" }
83
+ },
84
+ {
85
+ dot: true,
86
+ size: "lg",
87
+ class: { badge: "min-w-2.5 min-h-2.5" }
88
+ }
89
+ ],
90
+ compoundSlots: [{
91
+ slots: ["badge"],
92
+ color: [
93
+ "warning",
94
+ "success",
95
+ "info"
96
+ ],
97
+ class: "dark:text-rui-light-text"
98
+ }],
99
+ defaultVariants: {
100
+ color: "primary",
101
+ size: "md",
102
+ rounded: "full",
103
+ dot: false
104
+ }
105
+ });
106
+ const hasText = computed(() => !!__props.text || !!slots.badge);
107
+ const hasIconAndText = computed(() => (!!__props.icon || !!slots.icon) && get(hasText));
108
+ const ui = computed(() => badgeStyles({
109
+ color: __props.color,
110
+ size: __props.size,
111
+ rounded: __props.rounded,
112
+ dot: __props.dot
113
+ }));
114
+ const DOT_POS = [
115
+ -.25,
116
+ "100% - 0.25rem",
117
+ "100% - 0.25rem",
118
+ .25
119
+ ];
120
+ const BADGE_POS = {
121
+ sm: [
122
+ -.85,
123
+ "100% - 0.375rem",
124
+ "100% - 0.375rem",
125
+ .55
126
+ ],
127
+ md: [
128
+ -.95,
129
+ "100% - 0.5rem",
130
+ "100% - 0.5rem",
131
+ .65
132
+ ],
133
+ lg: [
134
+ -1.05,
135
+ "100% - 0.5rem",
136
+ "100% - 0.5rem",
137
+ .75
138
+ ]
139
+ };
140
+ const positionStyle = computed(() => {
141
+ const ox = Number(__props.offsetX) * .0625;
142
+ const oy = Number(__props.offsetY) * .0625;
143
+ const [l, r, edge, center] = __props.dot ? DOT_POS : BADGE_POS[__props.size];
144
+ const horizontal = `calc(${__props.left ? `${l}rem` : r} + ${ox}rem)`;
145
+ const vertical = __props.placement === "center" ? `calc(50% - ${center}rem - ${oy}rem)` : `calc(${edge} - ${oy}rem)`;
146
+ return {
147
+ left: horizontal,
148
+ [__props.placement === "top" ? "bottom" : "top"]: vertical
149
+ };
150
+ });
151
+ return (_ctx, _cache) => {
152
+ return openBlock(), createElementBlock("div", { class: normalizeClass(unref(ui).wrapper()) }, [renderSlot(_ctx.$slots, "default"), createVNode(Transition, {
153
+ appear: "",
154
+ "enter-active-class": "transform ease-out duration-200",
155
+ "enter-from-class": "scale-0",
156
+ "enter-to-class": "scale-100",
157
+ "leave-active-class": "transform ease-in duration-150",
158
+ "leave-from-class": "scale-100",
159
+ "leave-to-class": "scale-0"
160
+ }, {
161
+ default: withCtx(() => [__props.modelValue ? (openBlock(), createElementBlock("div", {
162
+ key: 0,
163
+ class: normalizeClass(unref(ui).badge()),
164
+ style: normalizeStyle(unref(positionStyle)),
165
+ "data-placement": __props.placement,
166
+ "data-dot": __props.dot || void 0,
167
+ "data-left": __props.left || void 0,
168
+ "aria-atomic": "true",
169
+ "aria-label": "Badge",
170
+ "aria-live": "polite",
171
+ role: "status"
172
+ }, [!__props.dot ? (openBlock(), createElementBlock("span", {
173
+ key: 0,
174
+ class: normalizeClass(unref(ui).content({ class: unref(hasIconAndText) ? "px-2" : void 0 }))
175
+ }, [renderSlot(_ctx.$slots, "badge", {}, () => [createTextVNode(toDisplayString(__props.text), 1)]), renderSlot(_ctx.$slots, "icon", {}, () => [__props.icon ? (openBlock(), createBlock(RuiIcon_default, {
176
+ key: 0,
177
+ name: __props.icon,
178
+ size: "16",
179
+ class: normalizeClass({ "ml-0.5": unref(hasText) })
180
+ }, null, 8, ["name", "class"])) : createCommentVNode("", true)])], 2)) : createCommentVNode("", true)], 14, _hoisted_1)) : createCommentVNode("", true)]),
181
+ _: 3
182
+ })], 2);
183
+ };
184
+ }
185
+ });
186
+ //#endregion
187
+ export { RuiBadge_vue_vue_type_script_setup_true_lang_default as default };
188
+
189
+ //# sourceMappingURL=RuiBadge.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuiBadge.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../../src/components/overlays/badge/RuiBadge.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ContextColorsType } from '@/consts/colors';\nimport type { RuiIcons } from '@/icons';\nimport RuiIcon from '@/components/icons/RuiIcon.vue';\nimport { BadgePlacement, BadgeRounded, BadgeSize } from '@/components/overlays/badge/badge-props';\nimport { tv } from '@/utils/tv';\n\ntype PosConfig = [left: number, right: string, edge: string, center: number];\n\nexport interface Props {\n text?: string | null;\n icon?: RuiIcons | null;\n modelValue?: boolean;\n dot?: boolean;\n left?: boolean;\n offsetX?: string | number;\n offsetY?: string | number;\n placement?: BadgePlacement;\n size?: BadgeSize;\n rounded?: BadgeRounded;\n color?: 'default' | ContextColorsType;\n}\n\ndefineOptions({\n name: 'RuiBadge',\n});\n\nconst {\n text = null,\n icon = null,\n modelValue = true,\n dot = false,\n placement = BadgePlacement.top,\n left = false,\n size = BadgeSize.md,\n rounded = BadgeRounded.full,\n color = 'primary',\n offsetX = 0,\n offsetY = 0,\n} = defineProps<Props>();\n\nconst slots = defineSlots<{\n default?: () => any;\n badge?: () => any;\n icon?: () => any;\n}>();\n\nconst badgeStyles = tv({\n slots: {\n wrapper: 'relative inline-block',\n badge: 'flex items-center justify-center text-xs font-medium absolute bg-transparent text-rui-light-text dark:text-rui-text',\n content: 'flex items-center px-1',\n },\n variants: {\n color: {\n default: {},\n primary: { badge: 'text-white bg-rui-primary' },\n secondary: { badge: 'text-white bg-rui-secondary' },\n error: { badge: 'text-white bg-rui-error' },\n warning: { badge: 'text-white bg-rui-warning' },\n info: { badge: 'text-white bg-rui-info' },\n success: { badge: 'text-white bg-rui-success' },\n },\n size: {\n sm: { badge: 'min-h-4 min-w-4' },\n md: { badge: 'min-h-5 min-w-5' },\n lg: { badge: 'min-h-6 min-w-6' },\n },\n rounded: {\n sm: { badge: 'rounded-sm' },\n md: { badge: 'rounded-md' },\n lg: { badge: 'rounded-lg' },\n full: { badge: 'rounded-full' },\n },\n dot: {\n true: {},\n },\n },\n compoundVariants: [\n // Dot default color\n { dot: true, color: 'default', class: { badge: 'bg-gray-500' } },\n\n // Dot sizes (smaller than normal badge)\n { dot: true, size: 'sm', class: { badge: 'min-w-1.5 min-h-1.5' } },\n { dot: true, size: 'md', class: { badge: 'min-w-2 min-h-2' } },\n { dot: true, size: 'lg', class: { badge: 'min-w-2.5 min-h-2.5' } },\n ],\n compoundSlots: [\n // Dark mode: warning/success/info keep light text on colored bg\n { slots: ['badge'], color: ['warning', 'success', 'info'], class: 'dark:text-rui-light-text' },\n ],\n defaultVariants: {\n color: 'primary',\n size: 'md',\n rounded: 'full',\n dot: false,\n },\n});\n\nconst hasText = computed<boolean>(() => !!text || !!slots.badge);\n\nconst hasIconAndText = computed<boolean>(() => (!!icon || !!slots.icon) && get(hasText));\n\nconst ui = computed<ReturnType<typeof badgeStyles>>(() => badgeStyles({\n color,\n size,\n rounded,\n dot,\n}));\n\n// Position configs: [leftOffset, rightBase, edgeBase, centerOffset] (rem / calc expressions)\nconst DOT_POS: PosConfig = [-0.25, '100% - 0.25rem', '100% - 0.25rem', 0.25];\nconst BADGE_POS: Record<BadgeSize, PosConfig> = {\n sm: [-0.85, '100% - 0.375rem', '100% - 0.375rem', 0.55],\n md: [-0.95, '100% - 0.5rem', '100% - 0.5rem', 0.65],\n lg: [-1.05, '100% - 0.5rem', '100% - 0.5rem', 0.75],\n};\n\nconst positionStyle = computed<Record<string, string>>(() => {\n const ox = Number(offsetX) * 0.0625;\n const oy = Number(offsetY) * 0.0625;\n const [l, r, edge, center] = dot ? DOT_POS : BADGE_POS[size];\n\n const horizontal = `calc(${left ? `${l}rem` : r} + ${ox}rem)`;\n const vertical = placement === 'center'\n ? `calc(50% - ${center}rem - ${oy}rem)`\n : `calc(${edge} - ${oy}rem)`;\n\n return {\n left: horizontal,\n [placement === 'top' ? 'bottom' : 'top']: vertical,\n };\n});\n</script>\n\n<template>\n <div :class=\"ui.wrapper()\">\n <slot />\n <Transition\n appear\n enter-active-class=\"transform ease-out duration-200\"\n enter-from-class=\"scale-0\"\n enter-to-class=\"scale-100\"\n leave-active-class=\"transform ease-in duration-150\"\n leave-from-class=\"scale-100\"\n leave-to-class=\"scale-0\"\n >\n <div\n v-if=\"modelValue\"\n :class=\"ui.badge()\"\n :style=\"positionStyle\"\n :data-placement=\"placement\"\n :data-dot=\"dot || undefined\"\n :data-left=\"left || undefined\"\n aria-atomic=\"true\"\n aria-label=\"Badge\"\n aria-live=\"polite\"\n role=\"status\"\n >\n <span\n v-if=\"!dot\"\n :class=\"ui.content({ class: hasIconAndText ? 'px-2' : undefined })\"\n >\n <slot name=\"badge\">\n {{ text }}\n </slot>\n <slot name=\"icon\">\n <RuiIcon\n v-if=\"icon\"\n :name=\"icon\"\n size=\"16\"\n :class=\"{ 'ml-0.5': hasText }\"\n />\n </slot>\n </span>\n </div>\n </Transition>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCA,MAAM,QAAQ,UAIV;EAEJ,MAAM,cAAc,GAAG;GACrB,OAAO;IACL,SAAS;IACT,OAAO;IACP,SAAS;IACV;GACD,UAAU;IACR,OAAO;KACL,SAAS,EAAE;KACX,SAAS,EAAE,OAAO,6BAA6B;KAC/C,WAAW,EAAE,OAAO,+BAA+B;KACnD,OAAO,EAAE,OAAO,2BAA2B;KAC3C,SAAS,EAAE,OAAO,6BAA6B;KAC/C,MAAM,EAAE,OAAO,0BAA0B;KACzC,SAAS,EAAE,OAAO,6BAAA;KACnB;IACD,MAAM;KACJ,IAAI,EAAE,OAAO,mBAAmB;KAChC,IAAI,EAAE,OAAO,mBAAmB;KAChC,IAAI,EAAE,OAAO,mBAAA;KACd;IACD,SAAS;KACP,IAAI,EAAE,OAAO,cAAc;KAC3B,IAAI,EAAE,OAAO,cAAc;KAC3B,IAAI,EAAE,OAAO,cAAc;KAC3B,MAAM,EAAE,OAAO,gBAAA;KAChB;IACD,KAAK,EACH,MAAM,EAAE,EAAA;IAEX;GACD,kBAAkB;IAEhB;KAAE,KAAK;KAAM,OAAO;KAAW,OAAO,EAAE,OAAO,eAAA;KAAiB;IAGhE;KAAE,KAAK;KAAM,MAAM;KAAM,OAAO,EAAE,OAAO,uBAAA;KAAyB;IAClE;KAAE,KAAK;KAAM,MAAM;KAAM,OAAO,EAAE,OAAO,mBAAA;KAAqB;IAC9D;KAAE,KAAK;KAAM,MAAM;KAAM,OAAO,EAAE,OAAO,uBAAA;;IAC1C;GACD,eAAe,CAEb;IAAE,OAAO,CAAC,QAAQ;IAAE,OAAO;KAAC;KAAW;KAAW;KAAO;IAAE,OAAO;IAA4B,CAC/F;GACD,iBAAiB;IACf,OAAO;IACP,MAAM;IACN,SAAS;IACT,KAAK;;GAER,CAAC;EAEF,MAAM,UAAU,eAAwB,CAAC,CAAC,QAAA,QAAQ,CAAC,CAAC,MAAM,MAAM;EAEhE,MAAM,iBAAiB,gBAAyB,CAAC,CAAC,QAAA,QAAQ,CAAC,CAAC,MAAM,SAAS,IAAI,QAAQ,CAAC;EAExF,MAAM,KAAK,eAA+C,YAAY;GACpE,OAAI,QAAA;GACJ,MAAG,QAAA;GACH,SAAM,QAAA;GACN,KAAE,QAAA;GACH,CAAC,CAAC;EAGH,MAAM,UAAqB;GAAC;GAAO;GAAkB;GAAkB;GAAK;EAC5E,MAAM,YAA0C;GAC9C,IAAI;IAAC;IAAO;IAAmB;IAAmB;IAAK;GACvD,IAAI;IAAC;IAAO;IAAiB;IAAiB;IAAK;GACnD,IAAI;IAAC;IAAO;IAAiB;IAAiB;;GAC/C;EAED,MAAM,gBAAgB,eAAuC;GAC3D,MAAM,KAAK,OAAO,QAAA,QAAQ,GAAG;GAC7B,MAAM,KAAK,OAAO,QAAA,QAAQ,GAAG;GAC7B,MAAM,CAAC,GAAG,GAAG,MAAM,UAAU,QAAA,MAAM,UAAU,UAAU,QAAA;GAEvD,MAAM,aAAa,QAAQ,QAAA,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,GAAG;GACxD,MAAM,WAAW,QAAA,cAAc,WAC3B,cAAc,OAAO,QAAQ,GAAG,QAChC,QAAQ,KAAK,KAAK,GAAG;AAEzB,UAAO;IACL,MAAM;KACL,QAAA,cAAc,QAAQ,WAAW,QAAQ;IAC3C;IACD;;uBAIA,mBAyCM,OAAA,EAzCA,OAAK,eAAE,MAAA,GAAE,CAAC,SAAO,CAAA,EAAA,EAAA,CACrB,WAAQ,KAAA,QAAA,UAAA,EACR,YAsCa,YAAA;IArCX,QAAA;IACA,sBAAmB;IACnB,oBAAiB;IACjB,kBAAe;IACf,sBAAmB;IACnB,oBAAiB;IACjB,kBAAe;;2BA8BT,CA3BE,QAAA,cAAA,WAAA,EADR,mBA4BM,OAAA;;KA1BH,OAAK,eAAE,MAAA,GAAE,CAAC,OAAK,CAAA;KACf,OAAK,eAAE,MAAA,cAAa,CAAA;KACpB,kBAAgB,QAAA;KAChB,YAAU,QAAA,OAAO,KAAA;KACjB,aAAW,QAAA,QAAQ,KAAA;KACpB,eAAY;KACZ,cAAW;KACX,aAAU;KACV,MAAK;SAGI,QAAA,OAAA,WAAA,EADT,mBAeO,QAAA;;KAbJ,OAAK,eAAE,MAAA,GAAE,CAAC,QAAO,EAAA,OAAU,MAAA,eAAc,GAAA,SAAY,KAAA,GAAS,CAAA,CAAA;QAE/D,WAEO,KAAA,QAAA,SAAA,EAAA,QAAA,CAAA,gBAAA,gBADF,QAAA,KAAI,EAAA,EAAA,CAAA,CAAA,EAET,WAOO,KAAA,QAAA,QAAA,EAAA,QAAA,CALG,QAAA,QAAA,WAAA,EADR,YAKE,iBAAA;;KAHC,MAAM,QAAA;KACP,MAAK;KACJ,OAAK,eAAA,EAAA,UAAc,MAAA,QAAO,EAAA,CAAA"}
@@ -0,0 +1,19 @@
1
+ export declare const BadgePlacement: {
2
+ readonly top: "top";
3
+ readonly center: "center";
4
+ readonly bottom: "bottom";
5
+ };
6
+ export type BadgePlacement = (typeof BadgePlacement)[keyof typeof BadgePlacement];
7
+ export declare const BadgeSize: {
8
+ readonly sm: "sm";
9
+ readonly md: "md";
10
+ readonly lg: "lg";
11
+ };
12
+ export type BadgeSize = (typeof BadgeSize)[keyof typeof BadgeSize];
13
+ export declare const BadgeRounded: {
14
+ readonly sm: "sm";
15
+ readonly md: "md";
16
+ readonly lg: "lg";
17
+ readonly full: "full";
18
+ };
19
+ export type BadgeRounded = (typeof BadgeRounded)[keyof typeof BadgeRounded];
@@ -0,0 +1,21 @@
1
+ //#region src/components/overlays/badge/badge-props.ts
2
+ var BadgePlacement = {
3
+ top: "top",
4
+ center: "center",
5
+ bottom: "bottom"
6
+ };
7
+ var BadgeSize = {
8
+ sm: "sm",
9
+ md: "md",
10
+ lg: "lg"
11
+ };
12
+ var BadgeRounded = {
13
+ sm: "sm",
14
+ md: "md",
15
+ lg: "lg",
16
+ full: "full"
17
+ };
18
+ //#endregion
19
+ export { BadgePlacement, BadgeRounded, BadgeSize };
20
+
21
+ //# sourceMappingURL=badge-props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge-props.js","names":[],"sources":["../../../../src/components/overlays/badge/badge-props.ts"],"sourcesContent":["export const BadgePlacement = {\n top: 'top',\n center: 'center',\n bottom: 'bottom',\n} as const;\n\nexport type BadgePlacement = (typeof BadgePlacement)[keyof typeof BadgePlacement];\n\nexport const BadgeSize = {\n sm: 'sm',\n md: 'md',\n lg: 'lg',\n} as const;\n\nexport type BadgeSize = (typeof BadgeSize)[keyof typeof BadgeSize];\n\nexport const BadgeRounded = {\n sm: 'sm',\n md: 'md',\n lg: 'lg',\n full: 'full',\n} as const;\n\nexport type BadgeRounded = (typeof BadgeRounded)[keyof typeof BadgeRounded];\n"],"mappings":";AAAA,IAAa,iBAAiB;CAC5B,KAAK;CACL,QAAQ;CACR,QAAQ;CACT;AAID,IAAa,YAAY;CACvB,IAAI;CACJ,IAAI;CACJ,IAAI;CACL;AAID,IAAa,eAAe;CAC1B,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,MAAM;CACP"}
@@ -0,0 +1,7 @@
1
+ import RuiBottomSheet_vue_vue_type_script_setup_true_lang_default from "./RuiBottomSheet.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/overlays/bottom-sheet/RuiBottomSheet.vue
3
+ var RuiBottomSheet_default = RuiBottomSheet_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { RuiBottomSheet_default as default };
6
+
7
+ //# sourceMappingURL=RuiBottomSheet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuiBottomSheet.js","names":[],"sources":["../../../../src/components/overlays/bottom-sheet/RuiBottomSheet.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport RuiDialog from '@/components/overlays/dialog/RuiDialog.vue';\n\n// keep these props in sync with Dialog props\nexport interface BottomSheetProps {\n persistent?: boolean;\n width?: string | number;\n maxWidth?: string | number;\n}\n\ndefineOptions({\n name: 'RuiBottomSheet',\n inheritAttrs: false,\n});\n\nconst modelValue = defineModel<boolean>({ default: false });\n\nconst { persistent = false, width, maxWidth } = defineProps<BottomSheetProps>();\n</script>\n\n<template>\n <RuiDialog\n v-model=\"modelValue\"\n bottom-sheet\n v-bind=\"$attrs\"\n :persistent=\"persistent\"\n :width=\"width\"\n :max-width=\"maxWidth\"\n >\n <template\n v-for=\"slot in Object.keys($slots)\"\n #[slot]=\"scope\"\n >\n <slot\n v-bind=\"scope\"\n :name=\"slot\"\n />\n </template>\n </RuiDialog>\n</template>\n"],"mappings":""}
@@ -0,0 +1,51 @@
1
+ import RuiDialog_default from "../dialog/RuiDialog.js";
2
+ import { createBlock, createSlots, defineComponent, guardReactiveProps, mergeModels, mergeProps, normalizeProps, openBlock, renderList, renderSlot, useModel, withCtx } from "vue";
3
+ //#region src/components/overlays/bottom-sheet/RuiBottomSheet.vue?vue&type=script&setup=true&lang.ts
4
+ var RuiBottomSheet_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
5
+ name: "RuiBottomSheet",
6
+ inheritAttrs: false,
7
+ __name: "RuiBottomSheet",
8
+ props: /* @__PURE__ */ mergeModels({
9
+ persistent: {
10
+ type: Boolean,
11
+ default: false
12
+ },
13
+ width: {},
14
+ maxWidth: {}
15
+ }, {
16
+ "modelValue": {
17
+ type: Boolean,
18
+ default: false
19
+ },
20
+ "modelModifiers": {}
21
+ }),
22
+ emits: ["update:modelValue"],
23
+ setup(__props) {
24
+ const modelValue = useModel(__props, "modelValue");
25
+ return (_ctx, _cache) => {
26
+ return openBlock(), createBlock(RuiDialog_default, mergeProps({
27
+ modelValue: modelValue.value,
28
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
29
+ "bottom-sheet": ""
30
+ }, _ctx.$attrs, {
31
+ persistent: __props.persistent,
32
+ width: __props.width,
33
+ "max-width": __props.maxWidth
34
+ }), createSlots({ _: 2 }, [renderList(Object.keys(_ctx.$slots), (slot) => {
35
+ return {
36
+ name: slot,
37
+ fn: withCtx((scope) => [renderSlot(_ctx.$slots, slot, normalizeProps(guardReactiveProps(scope)))])
38
+ };
39
+ })]), 1040, [
40
+ "modelValue",
41
+ "persistent",
42
+ "width",
43
+ "max-width"
44
+ ]);
45
+ };
46
+ }
47
+ });
48
+ //#endregion
49
+ export { RuiBottomSheet_vue_vue_type_script_setup_true_lang_default as default };
50
+
51
+ //# sourceMappingURL=RuiBottomSheet.vue_vue_type_script_setup_true_lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuiBottomSheet.vue_vue_type_script_setup_true_lang.js","names":["$attrs","$slots"],"sources":["../../../../src/components/overlays/bottom-sheet/RuiBottomSheet.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport RuiDialog from '@/components/overlays/dialog/RuiDialog.vue';\n\n// keep these props in sync with Dialog props\nexport interface BottomSheetProps {\n persistent?: boolean;\n width?: string | number;\n maxWidth?: string | number;\n}\n\ndefineOptions({\n name: 'RuiBottomSheet',\n inheritAttrs: false,\n});\n\nconst modelValue = defineModel<boolean>({ default: false });\n\nconst { persistent = false, width, maxWidth } = defineProps<BottomSheetProps>();\n</script>\n\n<template>\n <RuiDialog\n v-model=\"modelValue\"\n bottom-sheet\n v-bind=\"$attrs\"\n :persistent=\"persistent\"\n :width=\"width\"\n :max-width=\"maxWidth\"\n >\n <template\n v-for=\"slot in Object.keys($slots)\"\n #[slot]=\"scope\"\n >\n <slot\n v-bind=\"scope\"\n :name=\"slot\"\n />\n </template>\n </RuiDialog>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;EAeA,MAAM,aAAa,SAAoB,SAAA,aAAoB;;uBAMzD,YAiBY,mBAjBZ,WAiBY;gBAhBD,WAAA;4EAAU,QAAA;IACnB,gBAAA;MACQA,KAAAA,QAAM;IACb,YAAY,QAAA;IACZ,OAAO,QAAA;IACP,aAAW,QAAA;yCAGK,OAAO,KAAKC,KAAAA,OAAM,GAA1B,SAAI;;WACV;kBAAQ,UAAK,CAEd,WAGE,KAAA,QADO,MAAI,eAAA,mBADH,MAAK,CAAA,CAAA,CAAA,CAAA"}
@@ -0,0 +1,7 @@
1
+ import RuiDialog_vue_vue_type_script_setup_true_lang_default from "./RuiDialog.vue_vue_type_script_setup_true_lang.js";
2
+ //#region src/components/overlays/dialog/RuiDialog.vue
3
+ var RuiDialog_default = RuiDialog_vue_vue_type_script_setup_true_lang_default;
4
+ //#endregion
5
+ export { RuiDialog_default as default };
6
+
7
+ //# sourceMappingURL=RuiDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuiDialog.js","names":[],"sources":["../../../../src/components/overlays/dialog/RuiDialog.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { VueClassValue } from '@/types/class-value';\nimport { useTimeoutManager } from '@/composables/timeout-manager';\nimport { getNonRootAttrs, getRootAttrs, transformPropsUnit } from '@/utils/helpers';\nimport { cn, tv } from '@/utils/tv';\n\nexport interface RuiDialogClassNames {\n root?: VueClassValue;\n content?: VueClassValue;\n}\n\nexport interface DialogProps {\n persistent?: boolean;\n width?: string | number;\n maxWidth?: string | number;\n bottomSheet?: boolean;\n classNames?: RuiDialogClassNames;\n /** @deprecated Use `classNames.content` instead */\n contentClass?: string | string[] | Record<string, boolean>;\n zIndex?: string | number;\n ariaLabel?: string;\n}\n\ndefineOptions({\n name: 'RuiDialog',\n inheritAttrs: false,\n});\n\nconst modelValue = defineModel<boolean>({ default: false });\n\nconst {\n persistent = false,\n width = '98%',\n maxWidth,\n bottomSheet = false,\n classNames,\n contentClass = '',\n zIndex = 9999,\n ariaLabel,\n} = defineProps<DialogProps>();\n\nconst emit = defineEmits<{\n 'closed': [];\n 'click:outside': [];\n 'click:esc': [];\n}>();\n\ndefineSlots<{\n activator?: (props: { attrs: { onClick: () => void }; isOpen: boolean }) => any;\n default?: (props: { isOpen: boolean; close: () => void }) => any;\n}>();\n\nconst transitioning = ref<boolean>(false);\nconst contentRef = useTemplateRef<HTMLDivElement>('contentRef');\n\nconst leaveTimeout = useTimeoutManager();\n\nconst alive = computed<boolean>(() => get(modelValue) || get(transitioning));\n\nconst style = computed<{ width: string | undefined; maxWidth: string | undefined }>(() => ({\n width: transformPropsUnit(width),\n maxWidth: transformPropsUnit(maxWidth),\n}));\n\nconst dialog = tv({\n slots: {\n root: 'fixed inset-0',\n overlay: 'absolute inset-0 backdrop-blur bg-rui-grey-500/50 dark:bg-black/50',\n content: 'absolute left-1/2 bottom-0 -translate-x-1/2 outline-none overflow-y-auto max-h-[90vh]',\n },\n variants: {\n bottomSheet: {\n true: { content: '' },\n false: { content: 'top-1/2 -translate-y-1/2 bottom-auto' },\n },\n },\n defaultVariants: { bottomSheet: false },\n});\n\nconst ui = computed<ReturnType<typeof dialog>>(() => dialog({ bottomSheet }));\n\nconst dialogAttrs: { onClick: () => void } = {\n onClick: toggle,\n};\n\nconst contentTransition = computed<Record<string, string>>(() => {\n if (!bottomSheet) {\n return {\n enterFromClass: 'opacity-0 scale-95',\n enterActiveClass: 'transition-all ease-out duration-200',\n enterToClass: 'opacity-100 scale-100',\n leaveFromClass: 'opacity-100 scale-100',\n leaveActiveClass: 'transition-all ease-in duration-150',\n leaveToClass: 'opacity-0 scale-95',\n };\n }\n\n return {\n enterFromClass: 'translate-y-full',\n enterActiveClass: 'transition-transform ease-out duration-300',\n enterToClass: 'translate-y-0',\n leaveFromClass: 'translate-y-0',\n leaveActiveClass: 'transition-transform ease-in duration-200',\n leaveToClass: 'translate-y-full',\n };\n});\n\nfunction toggle(): void {\n set(modelValue, !get(modelValue));\n}\n\nfunction close(): void {\n set(modelValue, false);\n}\n\nfunction onEscClick(): void {\n if (!persistent) {\n close();\n }\n emit('click:esc');\n}\n\nfunction onClickOutside(): void {\n if (!persistent) {\n close();\n }\n emit('click:outside');\n}\n\nfunction onLeaveComplete(): void {\n leaveTimeout.clear();\n if (get(transitioning)) {\n set(transitioning, false);\n emit('closed');\n }\n}\n\nwatch(modelValue, (value) => {\n if (!value) {\n set(transitioning, true);\n // Safety fallback if transitionend is not detected\n leaveTimeout.create(onLeaveComplete, 400);\n }\n});\n\nwatch(contentRef, (ref) => {\n if (ref) {\n nextTick(() => ref.focus());\n }\n else {\n onLeaveComplete();\n }\n});\n</script>\n\n<template>\n <div v-bind=\"getRootAttrs($attrs)\">\n <slot\n name=\"activator\"\n v-bind=\"{ attrs: dialogAttrs, isOpen: modelValue }\"\n />\n <Teleport to=\"body\">\n <div\n v-if=\"alive\"\n :class=\"ui.root({ class: cn(classNames?.root) })\"\n :style=\"{ zIndex }\"\n role=\"dialog\"\n aria-modal=\"true\"\n :aria-label=\"ariaLabel\"\n tabindex=\"0\"\n v-bind=\"getNonRootAttrs($attrs)\"\n @keydown.esc.stop=\"onEscClick()\"\n >\n <Transition\n enter-from-class=\"opacity-0\"\n enter-active-class=\"transition-opacity ease-out duration-200\"\n enter-to-class=\"opacity-100\"\n leave-from-class=\"opacity-100\"\n leave-active-class=\"transition-opacity ease-in duration-150\"\n leave-to-class=\"opacity-0\"\n >\n <div\n v-if=\"modelValue\"\n data-id=\"overlay\"\n :class=\"ui.overlay()\"\n @click.stop=\"onClickOutside()\"\n />\n </Transition>\n <Transition\n v-bind=\"contentTransition\"\n @after-leave=\"onLeaveComplete()\"\n >\n <div\n v-if=\"modelValue\"\n ref=\"contentRef\"\n data-id=\"content\"\n :style=\"style\"\n tabindex=\"0\"\n :data-bottom-sheet=\"bottomSheet || undefined\"\n :class=\"ui.content({ class: cn(classNames?.content) ?? cn(contentClass) })\"\n >\n <slot v-bind=\"{ isOpen: modelValue, close }\" />\n </div>\n </Transition>\n </div>\n </Teleport>\n </div>\n</template>\n"],"mappings":""}
@@ -1,8 +1,15 @@
1
+ import type { VueClassValue } from '../../../types/class-value';
2
+ export interface RuiDialogClassNames {
3
+ root?: VueClassValue;
4
+ content?: VueClassValue;
5
+ }
1
6
  export interface DialogProps {
2
7
  persistent?: boolean;
3
8
  width?: string | number;
4
9
  maxWidth?: string | number;
5
10
  bottomSheet?: boolean;
11
+ classNames?: RuiDialogClassNames;
12
+ /** @deprecated Use `classNames.content` instead */
6
13
  contentClass?: string | string[] | Record<string, boolean>;
7
14
  zIndex?: string | number;
8
15
  ariaLabel?: string;