@vuetify/nightly 3.0.0-alpha.8 → 3.0.0-beta.3

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 (1214) hide show
  1. package/CHANGELOG.md +2 -19
  2. package/dist/json/attributes.json +5306 -0
  3. package/dist/json/importMap.json +585 -0
  4. package/dist/json/tags.json +1915 -0
  5. package/dist/json/web-types.json +18340 -0
  6. package/dist/vuetify.css +8356 -6759
  7. package/dist/vuetify.d.ts +16339 -41
  8. package/dist/vuetify.esm.js +17920 -0
  9. package/dist/vuetify.esm.js.map +1 -0
  10. package/dist/vuetify.js +16431 -14286
  11. package/dist/vuetify.js.map +1 -1
  12. package/dist/vuetify.min.css +6 -4
  13. package/dist/vuetify.min.js +1492 -9104
  14. package/dist/vuetify.min.js.map +1 -1
  15. package/lib/components/VAlert/VAlert.css +214 -0
  16. package/lib/components/VAlert/VAlert.mjs +85 -77
  17. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  18. package/lib/components/VAlert/VAlert.sass +82 -86
  19. package/lib/components/VAlert/VAlertTitle.mjs +4 -0
  20. package/lib/components/VAlert/VAlertTitle.mjs.map +1 -0
  21. package/lib/components/VAlert/_variables.scss +33 -37
  22. package/lib/components/VAlert/index.mjs +2 -1
  23. package/lib/components/VAlert/index.mjs.map +1 -1
  24. package/lib/components/VApp/VApp.css +29 -0
  25. package/lib/components/VApp/VApp.mjs +26 -17
  26. package/lib/components/VApp/VApp.mjs.map +1 -1
  27. package/lib/components/VApp/VApp.sass +1 -3
  28. package/lib/components/VApp/index.mjs +1 -1
  29. package/lib/components/VApp/index.mjs.map +1 -1
  30. package/lib/components/VAppBar/VAppBar.css +10 -0
  31. package/lib/components/VAppBar/VAppBar.mjs +47 -102
  32. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  33. package/lib/components/VAppBar/VAppBar.sass +7 -93
  34. package/lib/components/VAppBar/VAppBarNavIcon.mjs +13 -11
  35. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  36. package/lib/components/VAppBar/VAppBarTitle.mjs +13 -21
  37. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  38. package/lib/components/VAppBar/_variables.scss +12 -8
  39. package/lib/components/VAppBar/index.mjs +3 -3
  40. package/lib/components/VAppBar/index.mjs.map +1 -1
  41. package/lib/components/VAutocomplete/VAutocomplete.css +57 -0
  42. package/lib/components/VAutocomplete/VAutocomplete.mjs +231 -358
  43. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  44. package/lib/components/VAutocomplete/VAutocomplete.sass +69 -33
  45. package/lib/components/VAutocomplete/_variables.scss +7 -4
  46. package/lib/components/VAutocomplete/index.mjs +1 -3
  47. package/lib/components/VAutocomplete/index.mjs.map +1 -1
  48. package/lib/components/VAvatar/VAvatar.css +43 -0
  49. package/lib/components/VAvatar/VAvatar.mjs +34 -31
  50. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  51. package/lib/components/VAvatar/VAvatar.sass +7 -22
  52. package/lib/components/VAvatar/_mixins.scss +10 -4
  53. package/lib/components/VAvatar/_variables.scss +16 -5
  54. package/lib/components/VAvatar/index.mjs +1 -1
  55. package/lib/components/VAvatar/index.mjs.map +1 -1
  56. package/lib/components/VBadge/VBadge.css +71 -0
  57. package/lib/components/VBadge/VBadge.mjs +38 -56
  58. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  59. package/lib/components/VBadge/VBadge.sass +6 -10
  60. package/lib/components/VBadge/_variables.scss +7 -7
  61. package/lib/components/VBadge/index.mjs +1 -1
  62. package/lib/components/VBadge/index.mjs.map +1 -1
  63. package/lib/components/VBanner/VBanner.css +157 -0
  64. package/lib/components/VBanner/VBanner.mjs +69 -61
  65. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  66. package/lib/components/VBanner/VBanner.sass +69 -73
  67. package/lib/components/VBanner/VBannerActions.mjs +34 -2
  68. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  69. package/lib/components/VBanner/VBannerAvatar.mjs +13 -22
  70. package/lib/components/VBanner/VBannerAvatar.mjs.map +1 -1
  71. package/lib/components/VBanner/VBannerIcon.mjs +20 -0
  72. package/lib/components/VBanner/VBannerIcon.mjs.map +1 -0
  73. package/lib/components/VBanner/VBannerText.mjs +1 -1
  74. package/lib/components/VBanner/VBannerText.mjs.map +1 -1
  75. package/lib/components/VBanner/_variables.scss +20 -24
  76. package/lib/components/VBanner/index.mjs +5 -5
  77. package/lib/components/VBanner/index.mjs.map +1 -1
  78. package/lib/components/VBottomNavigation/VBottomNavigation.css +61 -0
  79. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +53 -34
  80. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  81. package/lib/components/VBottomNavigation/VBottomNavigation.sass +50 -12
  82. package/lib/components/VBottomNavigation/_variables.scss +25 -5
  83. package/lib/components/VBottomNavigation/index.mjs +1 -1
  84. package/lib/components/VBottomNavigation/index.mjs.map +1 -1
  85. package/lib/components/VBottomSheet/VBottomSheet.mjs +1 -1
  86. package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
  87. package/lib/components/VBottomSheet/index.mjs.map +1 -1
  88. package/lib/components/VBreadcrumbs/VBreadcrumbs.css +48 -0
  89. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +59 -51
  90. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  91. package/lib/components/VBreadcrumbs/VBreadcrumbs.sass +5 -3
  92. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +1 -1
  93. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  94. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +25 -29
  95. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  96. package/lib/components/VBreadcrumbs/_variables.scss +7 -4
  97. package/lib/components/VBreadcrumbs/index.mjs +3 -3
  98. package/lib/components/VBreadcrumbs/index.mjs.map +1 -1
  99. package/lib/components/VBreadcrumbs/shared.mjs +2 -0
  100. package/lib/components/VBreadcrumbs/shared.mjs.map +1 -0
  101. package/lib/components/VBtn/VBtn.css +328 -0
  102. package/lib/components/VBtn/VBtn.mjs +68 -40
  103. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  104. package/lib/components/VBtn/VBtn.sass +69 -92
  105. package/lib/components/VBtn/_mixins.scss +14 -7
  106. package/lib/components/VBtn/_variables.scss +27 -45
  107. package/lib/components/VBtn/index.mjs +1 -1
  108. package/lib/components/VBtn/index.mjs.map +1 -1
  109. package/lib/components/VBtnGroup/VBtnGroup.css +57 -0
  110. package/lib/components/VBtnGroup/VBtnGroup.mjs +67 -0
  111. package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -0
  112. package/lib/components/VBtnGroup/VBtnGroup.sass +52 -0
  113. package/lib/components/VBtnGroup/_variables.scss +25 -0
  114. package/lib/components/VBtnGroup/index.mjs +2 -0
  115. package/lib/components/VBtnGroup/index.mjs.map +1 -0
  116. package/lib/components/VBtnToggle/VBtnToggle.css +3 -0
  117. package/lib/components/VBtnToggle/VBtnToggle.mjs +45 -39
  118. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  119. package/lib/components/VBtnToggle/VBtnToggle.sass +5 -95
  120. package/lib/components/VBtnToggle/_variables.scss +3 -10
  121. package/lib/components/VBtnToggle/index.mjs +1 -3
  122. package/lib/components/VBtnToggle/index.mjs.map +1 -1
  123. package/lib/components/VCalendar/VCalendar.mjs +8 -4
  124. package/lib/components/VCalendar/VCalendar.mjs.map +1 -1
  125. package/lib/components/VCalendar/VCalendarCategory.mjs +1 -1
  126. package/lib/components/VCalendar/VCalendarCategory.mjs.map +1 -1
  127. package/lib/components/VCalendar/VCalendarCategory.sass +67 -0
  128. package/lib/components/VCalendar/VCalendarDaily.mjs +1 -1
  129. package/lib/components/VCalendar/VCalendarDaily.mjs.map +1 -1
  130. package/lib/components/VCalendar/VCalendarMonthly.mjs +1 -1
  131. package/lib/components/VCalendar/VCalendarMonthly.mjs.map +1 -1
  132. package/lib/components/VCalendar/VCalendarWeekly.mjs +1 -1
  133. package/lib/components/VCalendar/VCalendarWeekly.mjs.map +1 -1
  134. package/lib/components/VCalendar/_variables.scss +4 -0
  135. package/lib/components/VCalendar/index.mjs.map +1 -1
  136. package/lib/components/VCalendar/mixins/calendar-base.mjs +5 -4
  137. package/lib/components/VCalendar/mixins/calendar-base.mjs.map +1 -1
  138. package/lib/components/VCalendar/mixins/calendar-with-events.mjs +18 -12
  139. package/lib/components/VCalendar/mixins/calendar-with-events.mjs.map +1 -1
  140. package/lib/components/VCalendar/mixins/calendar-with-events.sass +7 -1
  141. package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs +2 -1
  142. package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs.map +1 -1
  143. package/lib/components/VCalendar/mixins/mouse.mjs +19 -0
  144. package/lib/components/VCalendar/mixins/mouse.mjs.map +1 -1
  145. package/lib/components/VCalendar/mixins/times.mjs.map +1 -1
  146. package/lib/components/VCalendar/modes/column.mjs.map +1 -1
  147. package/lib/components/VCalendar/modes/common.mjs +7 -3
  148. package/lib/components/VCalendar/modes/common.mjs.map +1 -1
  149. package/lib/components/VCalendar/modes/index.mjs.map +1 -1
  150. package/lib/components/VCalendar/modes/stack.mjs +2 -1
  151. package/lib/components/VCalendar/modes/stack.mjs.map +1 -1
  152. package/lib/components/VCalendar/util/events.mjs +3 -1
  153. package/lib/components/VCalendar/util/events.mjs.map +1 -1
  154. package/lib/components/VCalendar/util/parser.mjs.map +1 -1
  155. package/lib/components/VCalendar/util/props.mjs.map +1 -1
  156. package/lib/components/VCalendar/util/timestamp.mjs +19 -7
  157. package/lib/components/VCalendar/util/timestamp.mjs.map +1 -1
  158. package/lib/components/VCard/VCard.css +271 -0
  159. package/lib/components/VCard/VCard.mjs +87 -64
  160. package/lib/components/VCard/VCard.mjs.map +1 -1
  161. package/lib/components/VCard/VCard.sass +32 -46
  162. package/lib/components/VCard/VCardActions.mjs +28 -2
  163. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  164. package/lib/components/VCard/VCardAvatar.mjs +1 -1
  165. package/lib/components/VCard/VCardAvatar.mjs.map +1 -1
  166. package/lib/components/VCard/VCardContent.mjs +3 -0
  167. package/lib/components/VCard/VCardContent.mjs.map +1 -0
  168. package/lib/components/VCard/VCardHeader.mjs +1 -1
  169. package/lib/components/VCard/VCardHeader.mjs.map +1 -1
  170. package/lib/components/VCard/VCardHeaderText.mjs +1 -1
  171. package/lib/components/VCard/VCardHeaderText.mjs.map +1 -1
  172. package/lib/components/VCard/VCardImg.mjs +1 -1
  173. package/lib/components/VCard/VCardImg.mjs.map +1 -1
  174. package/lib/components/VCard/VCardSubtitle.mjs +1 -1
  175. package/lib/components/VCard/VCardSubtitle.mjs.map +1 -1
  176. package/lib/components/VCard/VCardText.mjs +1 -1
  177. package/lib/components/VCard/VCardText.mjs.map +1 -1
  178. package/lib/components/VCard/VCardTitle.mjs +1 -1
  179. package/lib/components/VCard/VCardTitle.mjs.map +1 -1
  180. package/lib/components/VCard/_variables.scss +34 -28
  181. package/lib/components/VCard/index.mjs +10 -11
  182. package/lib/components/VCard/index.mjs.map +1 -1
  183. package/lib/components/VCarousel/VCarousel.css +63 -0
  184. package/lib/components/VCarousel/VCarousel.mjs +102 -180
  185. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  186. package/lib/components/VCarousel/VCarousel.sass +7 -2
  187. package/lib/components/VCarousel/VCarouselItem.mjs +23 -58
  188. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  189. package/lib/components/VCarousel/_variables.scss +1 -3
  190. package/lib/components/VCarousel/index.mjs +2 -9
  191. package/lib/components/VCarousel/index.mjs.map +1 -1
  192. package/lib/components/VCheckbox/VCheckbox.css +3 -0
  193. package/lib/components/VCheckbox/VCheckbox.mjs +60 -86
  194. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  195. package/lib/components/VCheckbox/VCheckbox.sass +8 -8
  196. package/lib/components/VCheckbox/_variables.scss +2 -4
  197. package/lib/components/VCheckbox/index.mjs +1 -9
  198. package/lib/components/VCheckbox/index.mjs.map +1 -1
  199. package/lib/components/VChip/VChip.css +276 -0
  200. package/lib/components/VChip/VChip.mjs +60 -38
  201. package/lib/components/VChip/VChip.mjs.map +1 -1
  202. package/lib/components/VChip/VChip.sass +27 -21
  203. package/lib/components/VChip/_mixins.scss +24 -15
  204. package/lib/components/VChip/_variables.scss +20 -21
  205. package/lib/components/VChip/index.mjs +1 -1
  206. package/lib/components/VChip/index.mjs.map +1 -1
  207. package/lib/components/VChipGroup/VChipGroup.css +18 -0
  208. package/lib/components/VChipGroup/VChipGroup.mjs +66 -38
  209. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  210. package/lib/components/VChipGroup/VChipGroup.sass +11 -17
  211. package/lib/components/VChipGroup/_variables.scss +3 -5
  212. package/lib/components/VChipGroup/index.mjs +1 -3
  213. package/lib/components/VChipGroup/index.mjs.map +1 -1
  214. package/lib/components/VCode/VCode.css +7 -0
  215. package/lib/components/VCode/VCode.sass +2 -2
  216. package/lib/components/VCode/index.mjs +1 -1
  217. package/lib/components/VCode/index.mjs.map +1 -1
  218. package/lib/components/VColorPicker/VColorPicker.css +21 -0
  219. package/lib/components/VColorPicker/VColorPicker.mjs +103 -133
  220. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  221. package/lib/components/VColorPicker/VColorPicker.sass +10 -17
  222. package/lib/components/VColorPicker/VColorPickerCanvas.css +21 -0
  223. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +139 -121
  224. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  225. package/lib/components/VColorPicker/VColorPickerCanvas.sass +5 -3
  226. package/lib/components/VColorPicker/VColorPickerEdit.css +31 -0
  227. package/lib/components/VColorPicker/VColorPickerEdit.mjs +74 -134
  228. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  229. package/lib/components/VColorPicker/VColorPickerEdit.sass +9 -6
  230. package/lib/components/VColorPicker/VColorPickerPreview.css +67 -0
  231. package/lib/components/VColorPicker/VColorPickerPreview.mjs +65 -83
  232. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  233. package/lib/components/VColorPicker/VColorPickerPreview.sass +42 -39
  234. package/lib/components/VColorPicker/VColorPickerSwatches.css +35 -0
  235. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +34 -54
  236. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  237. package/lib/components/VColorPicker/VColorPickerSwatches.sass +6 -4
  238. package/lib/components/VColorPicker/_variables.scss +5 -9
  239. package/lib/components/VColorPicker/index.mjs +1 -5
  240. package/lib/components/VColorPicker/index.mjs.map +1 -1
  241. package/lib/components/VColorPicker/util/index.mjs +141 -97
  242. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  243. package/lib/components/VCombobox/VCombobox.css +66 -0
  244. package/lib/components/VCombobox/VCombobox.mjs +331 -204
  245. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  246. package/lib/components/VCombobox/VCombobox.sass +91 -0
  247. package/lib/components/VCombobox/_variables.scss +8 -0
  248. package/lib/components/VCombobox/index.mjs +1 -3
  249. package/lib/components/VCombobox/index.mjs.map +1 -1
  250. package/lib/components/VCounter/VCounter.css +6 -0
  251. package/lib/components/VCounter/VCounter.mjs +36 -27
  252. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  253. package/lib/components/VCounter/VCounter.sass +5 -7
  254. package/lib/components/VCounter/_variables.scss +3 -2
  255. package/lib/components/VCounter/index.mjs +1 -3
  256. package/lib/components/VCounter/index.mjs.map +1 -1
  257. package/lib/components/VData/VData.mjs.map +1 -1
  258. package/lib/components/VData/index.mjs.map +1 -1
  259. package/lib/components/VDataIterator/VDataFooter.mjs +1 -1
  260. package/lib/components/VDataIterator/VDataFooter.mjs.map +1 -1
  261. package/lib/components/VDataIterator/VDataIterator.mjs +19 -7
  262. package/lib/components/VDataIterator/VDataIterator.mjs.map +1 -1
  263. package/lib/components/VDataIterator/index.mjs.map +1 -1
  264. package/lib/components/VDataTable/MobileRow.mjs +6 -5
  265. package/lib/components/VDataTable/MobileRow.mjs.map +1 -1
  266. package/lib/components/VDataTable/Row.mjs +19 -11
  267. package/lib/components/VDataTable/Row.mjs.map +1 -1
  268. package/lib/components/VDataTable/RowGroup.mjs +5 -4
  269. package/lib/components/VDataTable/RowGroup.mjs.map +1 -1
  270. package/lib/components/VDataTable/VDataTable.mjs +10 -5
  271. package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
  272. package/lib/components/VDataTable/VDataTable.sass +5 -0
  273. package/lib/components/VDataTable/VDataTableHeader.mjs +7 -6
  274. package/lib/components/VDataTable/VDataTableHeader.mjs.map +1 -1
  275. package/lib/components/VDataTable/VDataTableHeaderDesktop.mjs.map +1 -1
  276. package/lib/components/VDataTable/VDataTableHeaderMobile.mjs +2 -2
  277. package/lib/components/VDataTable/VDataTableHeaderMobile.mjs.map +1 -1
  278. package/lib/components/VDataTable/VEditDialog.mjs +7 -6
  279. package/lib/components/VDataTable/VEditDialog.mjs.map +1 -1
  280. package/lib/components/VDataTable/VVirtualTable.mjs +1 -1
  281. package/lib/components/VDataTable/VVirtualTable.mjs.map +1 -1
  282. package/lib/components/VDataTable/index.mjs.map +1 -1
  283. package/lib/components/VDataTable/mixins/header.mjs.map +1 -1
  284. package/lib/components/VDatePicker/VDatePicker.mjs +2 -2
  285. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  286. package/lib/components/VDatePicker/VDatePickerDateTable.mjs.map +1 -1
  287. package/lib/components/VDatePicker/VDatePickerHeader.mjs +4 -4
  288. package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
  289. package/lib/components/VDatePicker/VDatePickerMonthTable.mjs.map +1 -1
  290. package/lib/components/VDatePicker/VDatePickerTitle.mjs +2 -2
  291. package/lib/components/VDatePicker/VDatePickerTitle.mjs.map +1 -1
  292. package/lib/components/VDatePicker/VDatePickerYears.mjs +3 -3
  293. package/lib/components/VDatePicker/VDatePickerYears.mjs.map +1 -1
  294. package/lib/components/VDatePicker/index.mjs.map +1 -1
  295. package/lib/components/VDatePicker/mixins/date-picker-table.mjs +6 -5
  296. package/lib/components/VDatePicker/mixins/date-picker-table.mjs.map +1 -1
  297. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs +6 -4
  298. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs.map +1 -1
  299. package/lib/components/VDatePicker/util/eventHelpers.mjs.map +1 -1
  300. package/lib/components/VDatePicker/util/index.mjs.map +1 -1
  301. package/lib/components/VDatePicker/util/isDateAllowed.mjs.map +1 -1
  302. package/lib/components/VDatePicker/util/monthChange.mjs.map +1 -1
  303. package/lib/components/VDatePicker/util/pad.mjs +4 -1
  304. package/lib/components/VDatePicker/util/pad.mjs.map +1 -1
  305. package/lib/components/VDatePicker/util/sanitizeDateString.mjs.map +1 -1
  306. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +26 -8
  307. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  308. package/lib/components/VDefaultsProvider/index.mjs +1 -1
  309. package/lib/components/VDefaultsProvider/index.mjs.map +1 -1
  310. package/lib/components/VDialog/VDialog.css +76 -0
  311. package/lib/components/VDialog/VDialog.mjs +57 -56
  312. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  313. package/lib/components/VDialog/VDialog.sass +42 -8
  314. package/lib/components/VDialog/_variables.scss +9 -8
  315. package/lib/components/VDialog/index.mjs +1 -2
  316. package/lib/components/VDialog/index.mjs.map +1 -1
  317. package/lib/components/VDivider/VDivider.css +30 -0
  318. package/lib/components/VDivider/VDivider.mjs +21 -14
  319. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  320. package/lib/components/VDivider/VDivider.sass +5 -9
  321. package/lib/components/VDivider/_variables.scss +4 -2
  322. package/lib/components/VDivider/index.mjs +1 -1
  323. package/lib/components/VDivider/index.mjs.map +1 -1
  324. package/lib/components/VExpansionPanel/VExpansionPanel.css +191 -0
  325. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +87 -81
  326. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  327. package/lib/components/VExpansionPanel/VExpansionPanel.sass +91 -129
  328. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +42 -0
  329. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -0
  330. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +80 -0
  331. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -0
  332. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +45 -59
  333. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  334. package/lib/components/VExpansionPanel/_variables.scss +13 -7
  335. package/lib/components/VExpansionPanel/index.mjs +4 -13
  336. package/lib/components/VExpansionPanel/index.mjs.map +1 -1
  337. package/lib/components/VField/VField.css +410 -0
  338. package/lib/components/VField/VField.mjs +250 -0
  339. package/lib/components/VField/VField.mjs.map +1 -0
  340. package/lib/components/VField/VField.sass +392 -0
  341. package/lib/components/VField/VFieldLabel.mjs +27 -0
  342. package/lib/components/VField/VFieldLabel.mjs.map +1 -0
  343. package/lib/components/VField/_variables.scss +44 -0
  344. package/lib/components/VField/index.mjs +3 -0
  345. package/lib/components/VField/index.mjs.map +1 -0
  346. package/lib/components/VFileInput/VFileInput.css +8 -0
  347. package/lib/components/VFileInput/VFileInput.mjs +183 -225
  348. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  349. package/lib/components/VFileInput/VFileInput.sass +3 -51
  350. package/lib/components/VFileInput/_variables.scss +2 -6
  351. package/lib/components/VFileInput/index.mjs +1 -3
  352. package/lib/components/VFileInput/index.mjs.map +1 -1
  353. package/lib/components/VFooter/VFooter.css +20 -0
  354. package/lib/components/VFooter/VFooter.mjs +52 -28
  355. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  356. package/lib/components/VFooter/VFooter.sass +10 -8
  357. package/lib/components/VFooter/_variables.scss +7 -4
  358. package/lib/components/VFooter/index.mjs +1 -1
  359. package/lib/components/VFooter/index.mjs.map +1 -1
  360. package/lib/components/VForm/VForm.mjs +55 -122
  361. package/lib/components/VForm/VForm.mjs.map +1 -1
  362. package/lib/components/VForm/index.mjs +1 -3
  363. package/lib/components/VForm/index.mjs.map +1 -1
  364. package/lib/components/VGrid/VCol.mjs +10 -9
  365. package/lib/components/VGrid/VCol.mjs.map +1 -1
  366. package/lib/components/VGrid/VContainer.mjs +10 -10
  367. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  368. package/lib/components/VGrid/VGrid.css +1002 -0
  369. package/lib/components/VGrid/VGrid.sass +9 -8
  370. package/lib/components/VGrid/VRow.mjs +10 -9
  371. package/lib/components/VGrid/VRow.mjs.map +1 -1
  372. package/lib/components/VGrid/VSpacer.mjs +1 -1
  373. package/lib/components/VGrid/VSpacer.mjs.map +1 -1
  374. package/lib/components/VGrid/_mixins.sass +26 -21
  375. package/lib/components/VGrid/index.mjs +4 -4
  376. package/lib/components/VGrid/index.mjs.map +1 -1
  377. package/lib/components/VHover/VHover.mjs +31 -61
  378. package/lib/components/VHover/VHover.mjs.map +1 -1
  379. package/lib/components/VHover/index.mjs +1 -3
  380. package/lib/components/VHover/index.mjs.map +1 -1
  381. package/lib/components/VIcon/VIcon.css +65 -0
  382. package/lib/components/VIcon/VIcon.mjs +33 -26
  383. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  384. package/lib/components/VIcon/VIcon.sass +31 -46
  385. package/lib/components/VIcon/_variables.scss +15 -14
  386. package/lib/components/VIcon/index.mjs +1 -1
  387. package/lib/components/VIcon/index.mjs.map +1 -1
  388. package/lib/components/VImg/VImg.css +34 -0
  389. package/lib/components/VImg/VImg.mjs +62 -31
  390. package/lib/components/VImg/VImg.mjs.map +1 -1
  391. package/lib/components/VImg/VImg.sass +11 -16
  392. package/lib/components/VImg/index.mjs +1 -1
  393. package/lib/components/VImg/index.mjs.map +1 -1
  394. package/lib/components/VInput/VInput.css +112 -0
  395. package/lib/components/VInput/VInput.mjs +107 -284
  396. package/lib/components/VInput/VInput.mjs.map +1 -1
  397. package/lib/components/VInput/VInput.sass +79 -127
  398. package/lib/components/VInput/_variables.scss +21 -13
  399. package/lib/components/VInput/index.mjs +1 -3
  400. package/lib/components/VInput/index.mjs.map +1 -1
  401. package/lib/components/VItemGroup/VItem.mjs +8 -7
  402. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  403. package/lib/components/VItemGroup/VItemGroup.css +6 -0
  404. package/lib/components/VItemGroup/VItemGroup.mjs +12 -12
  405. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  406. package/lib/components/VItemGroup/VItemGroup.sass +2 -2
  407. package/lib/components/VItemGroup/_variables.scss +3 -1
  408. package/lib/components/VItemGroup/index.mjs +2 -2
  409. package/lib/components/VItemGroup/index.mjs.map +1 -1
  410. package/lib/components/VKbd/VKbd.css +9 -0
  411. package/lib/components/VKbd/VKbd.sass +4 -3
  412. package/lib/components/VKbd/index.mjs +1 -1
  413. package/lib/components/VKbd/index.mjs.map +1 -1
  414. package/lib/components/VLabel/VLabel.css +12 -0
  415. package/lib/components/VLabel/VLabel.mjs +18 -56
  416. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  417. package/lib/components/VLabel/VLabel.sass +13 -11
  418. package/lib/components/VLabel/_variables.scss +7 -4
  419. package/lib/components/VLabel/index.mjs +1 -3
  420. package/lib/components/VLabel/index.mjs.map +1 -1
  421. package/lib/components/VLayout/VLayout.css +11 -0
  422. package/lib/components/VLayout/VLayout.mjs +15 -11
  423. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  424. package/lib/components/VLayout/VLayout.sass +1 -4
  425. package/lib/components/VLayout/VLayoutItem.css +8 -0
  426. package/lib/components/VLayout/VLayoutItem.mjs +24 -15
  427. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  428. package/lib/components/VLayout/VLayoutItem.sass +3 -3
  429. package/lib/components/VLayout/index.mjs +2 -2
  430. package/lib/components/VLayout/index.mjs.map +1 -1
  431. package/lib/components/VLazy/VLazy.mjs +10 -10
  432. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  433. package/lib/components/VLazy/index.mjs +1 -1
  434. package/lib/components/VLazy/index.mjs.map +1 -1
  435. package/lib/components/VList/VList.css +101 -0
  436. package/lib/components/VList/VList.mjs +123 -39
  437. package/lib/components/VList/VList.mjs.map +1 -1
  438. package/lib/components/VList/VList.sass +19 -18
  439. package/lib/components/VList/VListChildren.mjs +91 -0
  440. package/lib/components/VList/VListChildren.mjs.map +1 -0
  441. package/lib/components/VList/VListGroup.mjs +103 -0
  442. package/lib/components/VList/VListGroup.mjs.map +1 -0
  443. package/lib/components/VList/VListImg.mjs +1 -1
  444. package/lib/components/VList/VListImg.mjs.map +1 -1
  445. package/lib/components/VList/VListItem.css +351 -0
  446. package/lib/components/VList/VListItem.mjs +125 -63
  447. package/lib/components/VList/VListItem.mjs.map +1 -1
  448. package/lib/components/VList/VListItem.sass +114 -37
  449. package/lib/components/VList/VListItemAction.mjs +29 -0
  450. package/lib/components/VList/VListItemAction.mjs.map +1 -0
  451. package/lib/components/VList/VListItemAvatar.mjs +16 -22
  452. package/lib/components/VList/VListItemAvatar.mjs.map +1 -1
  453. package/lib/components/VList/VListItemHeader.mjs +1 -1
  454. package/lib/components/VList/VListItemHeader.mjs.map +1 -1
  455. package/lib/components/VList/VListItemIcon.mjs +23 -0
  456. package/lib/components/VList/VListItemIcon.mjs.map +1 -0
  457. package/lib/components/VList/VListItemMedia.mjs +13 -13
  458. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  459. package/lib/components/VList/VListItemSubtitle.mjs +1 -1
  460. package/lib/components/VList/VListItemSubtitle.mjs.map +1 -1
  461. package/lib/components/VList/VListItemTitle.mjs +1 -1
  462. package/lib/components/VList/VListItemTitle.mjs.map +1 -1
  463. package/lib/components/VList/VListSubheader.mjs +29 -20
  464. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  465. package/lib/components/VList/_variables.scss +37 -23
  466. package/lib/components/VList/index.mjs +12 -9
  467. package/lib/components/VList/index.mjs.map +1 -1
  468. package/lib/components/VList/list.mjs +31 -0
  469. package/lib/components/VList/list.mjs.map +1 -0
  470. package/lib/components/VLocaleProvider/VLocaleProvider.css +3 -0
  471. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +10 -10
  472. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  473. package/lib/components/VLocaleProvider/index.mjs +1 -1
  474. package/lib/components/VLocaleProvider/index.mjs.map +1 -1
  475. package/lib/components/VMain/VMain.css +18 -0
  476. package/lib/components/VMain/VMain.mjs +12 -12
  477. package/lib/components/VMain/VMain.mjs.map +1 -1
  478. package/lib/components/VMain/VMain.sass +2 -1
  479. package/lib/components/VMain/_variables.scss +3 -1
  480. package/lib/components/VMain/index.mjs +1 -1
  481. package/lib/components/VMain/index.mjs.map +1 -1
  482. package/lib/components/VMenu/VMenu.css +14 -0
  483. package/lib/components/VMenu/VMenu.mjs +82 -446
  484. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  485. package/lib/components/VMenu/VMenu.sass +17 -71
  486. package/lib/components/VMenu/_variables.scss +3 -3
  487. package/lib/components/VMenu/index.mjs +1 -3
  488. package/lib/components/VMenu/index.mjs.map +1 -1
  489. package/lib/components/VMenu/shared.mjs +2 -0
  490. package/lib/components/VMenu/shared.mjs.map +1 -0
  491. package/lib/components/VMessages/VMessages.css +16 -0
  492. package/lib/components/VMessages/VMessages.mjs +42 -41
  493. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  494. package/lib/components/VMessages/VMessages.sass +5 -10
  495. package/lib/components/VMessages/_variables.scss +3 -2
  496. package/lib/components/VMessages/index.mjs +1 -3
  497. package/lib/components/VMessages/index.mjs.map +1 -1
  498. package/lib/components/VNavigationDrawer/VNavigationDrawer.css +93 -0
  499. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +100 -35
  500. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  501. package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +36 -21
  502. package/lib/components/VNavigationDrawer/_variables.scss +9 -6
  503. package/lib/components/VNavigationDrawer/index.mjs +1 -1
  504. package/lib/components/VNavigationDrawer/index.mjs.map +1 -1
  505. package/lib/components/VNavigationDrawer/touch.mjs +139 -0
  506. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -0
  507. package/lib/components/VNoSsr/VNoSsr.mjs +23 -0
  508. package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -0
  509. package/lib/components/VNoSsr/index.mjs +2 -0
  510. package/lib/components/VNoSsr/index.mjs.map +1 -0
  511. package/lib/components/VOtpInput/VOtpInput.mjs +345 -0
  512. package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -0
  513. package/lib/components/VOtpInput/VOtpInput.sass +37 -0
  514. package/lib/components/VOtpInput/_variables.scss +4 -0
  515. package/lib/components/VOtpInput/index.mjs +4 -0
  516. package/lib/components/VOtpInput/index.mjs.map +1 -0
  517. package/lib/components/VOverflowBtn/VOverflowBtn.mjs +1 -1
  518. package/lib/components/VOverflowBtn/VOverflowBtn.mjs.map +1 -1
  519. package/lib/components/VOverflowBtn/index.mjs.map +1 -1
  520. package/lib/components/VOverlay/VOverlay.css +62 -0
  521. package/lib/components/VOverlay/VOverlay.mjs +145 -193
  522. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  523. package/lib/components/VOverlay/VOverlay.sass +29 -22
  524. package/lib/components/VOverlay/_variables.scss +0 -2
  525. package/lib/components/VOverlay/index.mjs +1 -2
  526. package/lib/components/VOverlay/index.mjs.map +1 -1
  527. package/lib/components/VOverlay/locationStrategies.mjs +206 -0
  528. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -0
  529. package/lib/components/VOverlay/requestNewFrame.mjs +28 -0
  530. package/lib/components/VOverlay/requestNewFrame.mjs.map +1 -0
  531. package/lib/components/VOverlay/scrollStrategies.mjs +137 -0
  532. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -0
  533. package/lib/components/VOverlay/useActivator.mjs +247 -0
  534. package/lib/components/VOverlay/useActivator.mjs.map +1 -0
  535. package/lib/components/VOverlay/util/point.mjs +56 -0
  536. package/lib/components/VOverlay/util/point.mjs.map +1 -0
  537. package/lib/components/VPagination/VPagination.css +9 -0
  538. package/lib/components/VPagination/VPagination.mjs +63 -67
  539. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  540. package/lib/components/VPagination/VPagination.sass +14 -8
  541. package/lib/components/VPagination/index.mjs +1 -1
  542. package/lib/components/VPagination/index.mjs.map +1 -1
  543. package/lib/components/VParallax/VParallax.css +7 -0
  544. package/lib/components/VParallax/VParallax.mjs +71 -77
  545. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  546. package/lib/components/VParallax/VParallax.sass +1 -32
  547. package/lib/components/VParallax/index.mjs +1 -3
  548. package/lib/components/VParallax/index.mjs.map +1 -1
  549. package/lib/components/VPicker/VPicker.mjs +5 -5
  550. package/lib/components/VPicker/VPicker.mjs.map +1 -1
  551. package/lib/components/VPicker/index.mjs.map +1 -1
  552. package/lib/components/VProgressCircular/VProgressCircular.css +101 -0
  553. package/lib/components/VProgressCircular/VProgressCircular.mjs +30 -20
  554. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  555. package/lib/components/VProgressCircular/VProgressCircular.sass +6 -4
  556. package/lib/components/VProgressCircular/_variables.scss +1 -1
  557. package/lib/components/VProgressCircular/index.mjs +1 -1
  558. package/lib/components/VProgressCircular/index.mjs.map +1 -1
  559. package/lib/components/VProgressLinear/VProgressLinear.css +212 -0
  560. package/lib/components/VProgressLinear/VProgressLinear.mjs +138 -226
  561. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  562. package/lib/components/VProgressLinear/VProgressLinear.sass +83 -157
  563. package/lib/components/VProgressLinear/_variables.scss +11 -3
  564. package/lib/components/VProgressLinear/index.mjs +1 -3
  565. package/lib/components/VProgressLinear/index.mjs.map +1 -1
  566. package/lib/components/VRadio/VRadio.mjs +35 -0
  567. package/lib/components/VRadio/VRadio.mjs.map +1 -0
  568. package/lib/components/VRadio/index.mjs +2 -0
  569. package/lib/components/VRadio/index.mjs.map +1 -0
  570. package/lib/components/VRadioGroup/VRadioGroup.css +10 -0
  571. package/lib/components/VRadioGroup/VRadioGroup.mjs +67 -68
  572. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  573. package/lib/components/VRadioGroup/VRadioGroup.sass +7 -37
  574. package/lib/components/VRadioGroup/_variables.scss +3 -3
  575. package/lib/components/VRadioGroup/index.mjs +1 -9
  576. package/lib/components/VRadioGroup/index.mjs.map +1 -1
  577. package/lib/components/VRangeSlider/VRangeSlider.mjs +194 -206
  578. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  579. package/lib/components/VRangeSlider/index.mjs +1 -3
  580. package/lib/components/VRangeSlider/index.mjs.map +1 -1
  581. package/lib/components/VRating/VRating.css +58 -0
  582. package/lib/components/VRating/VRating.mjs +48 -31
  583. package/lib/components/VRating/VRating.mjs.map +1 -1
  584. package/lib/components/VRating/VRating.sass +6 -4
  585. package/lib/components/VRating/_variables.scss +3 -1
  586. package/lib/components/VRating/index.mjs +1 -1
  587. package/lib/components/VRating/index.mjs.map +1 -1
  588. package/lib/components/VResponsive/VResponsive.css +23 -0
  589. package/lib/components/VResponsive/VResponsive.mjs +12 -11
  590. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  591. package/lib/components/VResponsive/VResponsive.sass +4 -7
  592. package/lib/components/VResponsive/index.mjs +1 -1
  593. package/lib/components/VResponsive/index.mjs.map +1 -1
  594. package/lib/components/VSelect/VSelect.css +34 -0
  595. package/lib/components/VSelect/VSelect.mjs +181 -780
  596. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  597. package/lib/components/VSelect/VSelect.sass +44 -153
  598. package/lib/components/VSelect/_variables.scss +7 -21
  599. package/lib/components/VSelect/index.mjs +1 -3
  600. package/lib/components/VSelect/index.mjs.map +1 -1
  601. package/lib/components/VSelectionControl/VSelectionControl.css +97 -0
  602. package/lib/components/VSelectionControl/VSelectionControl.mjs +211 -0
  603. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -0
  604. package/lib/components/VSelectionControl/VSelectionControl.sass +96 -0
  605. package/lib/components/VSelectionControl/_variables.scss +9 -0
  606. package/lib/components/VSelectionControl/index.mjs +2 -0
  607. package/lib/components/VSelectionControl/index.mjs.map +1 -0
  608. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +3 -0
  609. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +65 -0
  610. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -0
  611. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +9 -0
  612. package/lib/components/VSelectionControlGroup/_variables.scss +4 -0
  613. package/lib/components/VSelectionControlGroup/index.mjs +2 -0
  614. package/lib/components/VSelectionControlGroup/index.mjs.map +1 -0
  615. package/lib/components/VSheet/VSheet.css +23 -0
  616. package/lib/components/VSheet/VSheet.mjs +24 -22
  617. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  618. package/lib/components/VSheet/VSheet.sass +11 -16
  619. package/lib/components/VSheet/_variables.scss +6 -7
  620. package/lib/components/VSheet/index.mjs +1 -1
  621. package/lib/components/VSheet/index.mjs.map +1 -1
  622. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +7 -7
  623. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  624. package/lib/components/VSkeletonLoader/index.mjs.map +1 -1
  625. package/lib/components/VSlideGroup/VSlideGroup.css +42 -0
  626. package/lib/components/VSlideGroup/VSlideGroup.mjs +304 -363
  627. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  628. package/lib/components/VSlideGroup/VSlideGroup.sass +21 -25
  629. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +29 -0
  630. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -0
  631. package/lib/components/VSlideGroup/_variables.scss +4 -1
  632. package/lib/components/VSlideGroup/helpers.mjs +54 -0
  633. package/lib/components/VSlideGroup/helpers.mjs.map +1 -0
  634. package/lib/components/VSlideGroup/index.mjs +2 -9
  635. package/lib/components/VSlideGroup/index.mjs.map +1 -1
  636. package/lib/components/VSlider/VSlider.css +53 -0
  637. package/lib/components/VSlider/VSlider.mjs +113 -538
  638. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  639. package/lib/components/VSlider/VSlider.sass +38 -274
  640. package/lib/components/VSlider/VSliderThumb.css +142 -0
  641. package/lib/components/VSlider/VSliderThumb.mjs +165 -0
  642. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -0
  643. package/lib/components/VSlider/VSliderThumb.sass +147 -0
  644. package/lib/components/VSlider/VSliderTrack.css +150 -0
  645. package/lib/components/VSlider/VSliderTrack.mjs +122 -0
  646. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -0
  647. package/lib/components/VSlider/VSliderTrack.sass +159 -0
  648. package/lib/components/VSlider/_variables.scss +23 -14
  649. package/lib/components/VSlider/index.mjs +1 -3
  650. package/lib/components/VSlider/index.mjs.map +1 -1
  651. package/lib/components/VSlider/slider.mjs +300 -0
  652. package/lib/components/VSlider/slider.mjs.map +1 -0
  653. package/lib/components/VSnackbar/VSnackbar.css +119 -0
  654. package/lib/components/VSnackbar/VSnackbar.mjs +111 -171
  655. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  656. package/lib/components/VSnackbar/VSnackbar.sass +38 -92
  657. package/lib/components/VSnackbar/_variables.scss +20 -25
  658. package/lib/components/VSnackbar/index.mjs +1 -3
  659. package/lib/components/VSnackbar/index.mjs.map +1 -1
  660. package/lib/components/VSparkline/VSparkline.mjs +1 -1
  661. package/lib/components/VSparkline/VSparkline.mjs.map +1 -1
  662. package/lib/components/VSparkline/helpers/core.mjs.map +1 -1
  663. package/lib/components/VSparkline/helpers/math.mjs.map +1 -1
  664. package/lib/components/VSparkline/helpers/path.mjs +3 -1
  665. package/lib/components/VSparkline/helpers/path.mjs.map +1 -1
  666. package/lib/components/VSparkline/index.mjs.map +1 -1
  667. package/lib/components/VSpeedDial/VSpeedDial.mjs +2 -2
  668. package/lib/components/VSpeedDial/VSpeedDial.mjs.map +1 -1
  669. package/lib/components/VSpeedDial/index.mjs.map +1 -1
  670. package/lib/components/VStepper/VStepper.mjs +2 -2
  671. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  672. package/lib/components/VStepper/VStepper.sass +5 -1
  673. package/lib/components/VStepper/VStepperContent.mjs.map +1 -1
  674. package/lib/components/VStepper/VStepperStep.mjs +1 -1
  675. package/lib/components/VStepper/VStepperStep.mjs.map +1 -1
  676. package/lib/components/VStepper/_variables.scss +2 -1
  677. package/lib/components/VStepper/index.mjs.map +1 -1
  678. package/lib/components/VSwitch/VSwitch.css +69 -0
  679. package/lib/components/VSwitch/VSwitch.mjs +99 -107
  680. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  681. package/lib/components/VSwitch/VSwitch.sass +71 -129
  682. package/lib/components/VSwitch/_variables.scss +10 -23
  683. package/lib/components/VSwitch/index.mjs +1 -3
  684. package/lib/components/VSwitch/index.mjs.map +1 -1
  685. package/lib/components/VSystemBar/VSystemBar.css +35 -0
  686. package/lib/components/VSystemBar/VSystemBar.mjs +50 -34
  687. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  688. package/lib/components/VSystemBar/VSystemBar.sass +14 -26
  689. package/lib/components/VSystemBar/_variables.scss +27 -17
  690. package/lib/components/VSystemBar/index.mjs +1 -1
  691. package/lib/components/VSystemBar/index.mjs.map +1 -1
  692. package/lib/components/VTable/VTable.css +143 -0
  693. package/lib/components/VTable/VTable.mjs +54 -0
  694. package/lib/components/VTable/VTable.mjs.map +1 -0
  695. package/lib/components/VTable/VTable.sass +156 -0
  696. package/lib/components/VTable/_mixins.scss +25 -0
  697. package/lib/components/VTable/_variables.scss +21 -0
  698. package/lib/components/VTable/index.mjs +2 -0
  699. package/lib/components/VTable/index.mjs.map +1 -0
  700. package/lib/components/VTabs/VTab.css +29 -0
  701. package/lib/components/VTabs/VTab.mjs +110 -69
  702. package/lib/components/VTabs/VTab.mjs.map +1 -1
  703. package/lib/components/VTabs/VTab.sass +30 -0
  704. package/lib/components/VTabs/VTabs.css +70 -0
  705. package/lib/components/VTabs/VTabs.mjs +86 -283
  706. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  707. package/lib/components/VTabs/VTabs.sass +40 -206
  708. package/lib/components/VTabs/_variables.scss +10 -18
  709. package/lib/components/VTabs/index.mjs +2 -15
  710. package/lib/components/VTabs/index.mjs.map +1 -1
  711. package/lib/components/VTabs/shared.mjs +2 -0
  712. package/lib/components/VTabs/shared.mjs.map +1 -0
  713. package/lib/components/VTextField/VTextField.css +70 -0
  714. package/lib/components/VTextField/VTextField.mjs +163 -484
  715. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  716. package/lib/components/VTextField/VTextField.sass +56 -493
  717. package/lib/components/VTextField/_variables.scss +10 -50
  718. package/lib/components/VTextField/index.mjs +1 -3
  719. package/lib/components/VTextField/index.mjs.map +1 -1
  720. package/lib/components/VTextarea/VTextarea.css +37 -0
  721. package/lib/components/VTextarea/VTextarea.mjs +210 -74
  722. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  723. package/lib/components/VTextarea/VTextarea.sass +35 -75
  724. package/lib/components/VTextarea/_variables.scss +2 -4
  725. package/lib/components/VTextarea/index.mjs +1 -3
  726. package/lib/components/VTextarea/index.mjs.map +1 -1
  727. package/lib/components/VThemeProvider/VThemeProvider.css +4 -0
  728. package/lib/components/VThemeProvider/VThemeProvider.mjs +12 -12
  729. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  730. package/lib/components/VThemeProvider/index.mjs +1 -1
  731. package/lib/components/VThemeProvider/index.mjs.map +1 -1
  732. package/lib/components/VTimePicker/SelectingTimes.mjs.map +1 -1
  733. package/lib/components/VTimePicker/VTimePicker.mjs +2 -2
  734. package/lib/components/VTimePicker/VTimePicker.mjs.map +1 -1
  735. package/lib/components/VTimePicker/VTimePickerClock.mjs +3 -3
  736. package/lib/components/VTimePicker/VTimePickerClock.mjs.map +1 -1
  737. package/lib/components/VTimePicker/VTimePickerTitle.mjs +2 -2
  738. package/lib/components/VTimePicker/VTimePickerTitle.mjs.map +1 -1
  739. package/lib/components/VTimePicker/index.mjs.map +1 -1
  740. package/lib/components/VTimeline/VTimeline.css +399 -0
  741. package/lib/components/VTimeline/VTimeline.mjs +42 -26
  742. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  743. package/lib/components/VTimeline/VTimeline.sass +206 -57
  744. package/lib/components/VTimeline/VTimelineDivider.mjs +14 -11
  745. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  746. package/lib/components/VTimeline/VTimelineItem.mjs +17 -17
  747. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  748. package/lib/components/VTimeline/_mixins.sass +8 -5
  749. package/lib/components/VTimeline/_variables.scss +5 -2
  750. package/lib/components/VTimeline/index.mjs +2 -2
  751. package/lib/components/VTimeline/index.mjs.map +1 -1
  752. package/lib/components/VTimeline/shared.mjs +2 -0
  753. package/lib/components/VTimeline/shared.mjs.map +1 -0
  754. package/lib/components/VToolbar/VToolbar.css +145 -0
  755. package/lib/components/VToolbar/VToolbar.mjs +142 -141
  756. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  757. package/lib/components/VToolbar/VToolbar.sass +75 -123
  758. package/lib/components/VToolbar/VToolbarItems.mjs +32 -0
  759. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -0
  760. package/lib/components/VToolbar/VToolbarTitle.mjs +34 -0
  761. package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -0
  762. package/lib/components/VToolbar/_variables.scss +65 -15
  763. package/lib/components/VToolbar/index.mjs +3 -14
  764. package/lib/components/VToolbar/index.mjs.map +1 -1
  765. package/lib/components/VTooltip/VTooltip.css +22 -0
  766. package/lib/components/VTooltip/VTooltip.mjs +78 -198
  767. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  768. package/lib/components/VTooltip/VTooltip.sass +8 -15
  769. package/lib/components/VTooltip/_variables.scss +6 -6
  770. package/lib/components/VTooltip/index.mjs +1 -3
  771. package/lib/components/VTooltip/index.mjs.map +1 -1
  772. package/lib/components/VTreeview/VTreeview.mjs +18 -9
  773. package/lib/components/VTreeview/VTreeview.mjs.map +1 -1
  774. package/lib/components/VTreeview/VTreeviewNode.mjs +4 -2
  775. package/lib/components/VTreeview/VTreeviewNode.mjs.map +1 -1
  776. package/lib/components/VTreeview/_mixins.sass +3 -3
  777. package/lib/components/VTreeview/index.mjs.map +1 -1
  778. package/lib/components/VTreeview/util/filterTreeItems.mjs.map +1 -1
  779. package/lib/components/VValidation/VValidation.mjs +26 -0
  780. package/lib/components/VValidation/VValidation.mjs.map +1 -0
  781. package/lib/components/VValidation/index.mjs +2 -0
  782. package/lib/components/VValidation/index.mjs.map +1 -0
  783. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +1 -1
  784. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  785. package/lib/components/VVirtualScroll/index.mjs.map +1 -1
  786. package/lib/components/VWindow/VWindow.css +70 -0
  787. package/lib/components/VWindow/VWindow.mjs +160 -235
  788. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  789. package/lib/components/VWindow/VWindow.sass +26 -50
  790. package/lib/components/VWindow/VWindowItem.mjs +72 -98
  791. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  792. package/lib/components/VWindow/_variables.scss +2 -3
  793. package/lib/components/VWindow/index.mjs +2 -9
  794. package/lib/components/VWindow/index.mjs.map +1 -1
  795. package/lib/components/index.d.ts +14631 -2202
  796. package/lib/components/index.mjs +64 -57
  797. package/lib/components/index.mjs.map +1 -1
  798. package/lib/components/transitions/createTransition.mjs +20 -20
  799. package/lib/components/transitions/createTransition.mjs.map +1 -1
  800. package/lib/components/transitions/dialog-transition.mjs +110 -29
  801. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  802. package/lib/components/transitions/expand-transition.mjs +3 -1
  803. package/lib/components/transitions/expand-transition.mjs.map +1 -1
  804. package/lib/components/transitions/index.mjs +1 -1
  805. package/lib/components/transitions/index.mjs.map +1 -1
  806. package/lib/composables/border.mjs +3 -2
  807. package/lib/composables/border.mjs.map +1 -1
  808. package/lib/composables/color.mjs.map +1 -1
  809. package/lib/composables/defaults.mjs +29 -5
  810. package/lib/composables/defaults.mjs.map +1 -1
  811. package/lib/composables/delay.mjs.map +1 -1
  812. package/lib/composables/density.mjs +3 -2
  813. package/lib/composables/density.mjs.map +1 -1
  814. package/lib/composables/dimensions.mjs.map +1 -1
  815. package/lib/composables/display.mjs +2 -1
  816. package/lib/composables/display.mjs.map +1 -1
  817. package/lib/composables/elevation.mjs +4 -3
  818. package/lib/composables/elevation.mjs.map +1 -1
  819. package/lib/composables/filter.mjs +107 -0
  820. package/lib/composables/filter.mjs.map +1 -0
  821. package/lib/composables/focus.mjs +35 -0
  822. package/lib/composables/focus.mjs.map +1 -0
  823. package/lib/composables/form.mjs +116 -0
  824. package/lib/composables/form.mjs.map +1 -0
  825. package/lib/composables/forwardRef.mjs +46 -0
  826. package/lib/composables/forwardRef.mjs.map +1 -0
  827. package/lib/composables/group.mjs +79 -39
  828. package/lib/composables/group.mjs.map +1 -1
  829. package/lib/composables/hydration.mjs +12 -0
  830. package/lib/composables/hydration.mjs.map +1 -0
  831. package/lib/composables/icons.mjs +31 -25
  832. package/lib/composables/icons.mjs.map +1 -1
  833. package/lib/composables/index.mjs +9 -0
  834. package/lib/composables/index.mjs.map +1 -0
  835. package/lib/composables/intersectionObserver.mjs +21 -16
  836. package/lib/composables/intersectionObserver.mjs.map +1 -1
  837. package/lib/composables/items.mjs +84 -0
  838. package/lib/composables/items.mjs.map +1 -0
  839. package/lib/composables/layout.mjs +133 -44
  840. package/lib/composables/layout.mjs.map +1 -1
  841. package/lib/composables/lazy.mjs +23 -0
  842. package/lib/composables/lazy.mjs.map +1 -0
  843. package/lib/composables/loader.mjs +39 -0
  844. package/lib/composables/loader.mjs.map +1 -0
  845. package/lib/composables/locale.mjs +20 -13
  846. package/lib/composables/locale.mjs.map +1 -1
  847. package/lib/composables/location.mjs +70 -0
  848. package/lib/composables/location.mjs.map +1 -0
  849. package/lib/composables/mutationObserver.mjs +43 -0
  850. package/lib/composables/mutationObserver.mjs.map +1 -0
  851. package/lib/composables/nested/nested.mjs +207 -0
  852. package/lib/composables/nested/nested.mjs.map +1 -0
  853. package/lib/composables/nested/openStrategies.mjs +76 -0
  854. package/lib/composables/nested/openStrategies.mjs.map +1 -0
  855. package/lib/composables/nested/selectStrategies.mjs +198 -0
  856. package/lib/composables/nested/selectStrategies.mjs.map +1 -0
  857. package/lib/composables/position.mjs +6 -26
  858. package/lib/composables/position.mjs.map +1 -1
  859. package/lib/composables/proxiedModel.mjs +10 -5
  860. package/lib/composables/proxiedModel.mjs.map +1 -1
  861. package/lib/composables/refs.mjs.map +1 -1
  862. package/lib/composables/resizeObserver.mjs +24 -26
  863. package/lib/composables/resizeObserver.mjs.map +1 -1
  864. package/lib/composables/rounded.mjs +9 -10
  865. package/lib/composables/rounded.mjs.map +1 -1
  866. package/lib/composables/router.mjs +34 -18
  867. package/lib/composables/router.mjs.map +1 -1
  868. package/lib/composables/rtl.mjs.map +1 -1
  869. package/lib/composables/scopeId.mjs +11 -0
  870. package/lib/composables/scopeId.mjs.map +1 -0
  871. package/lib/composables/scroll.mjs +2 -1
  872. package/lib/composables/scroll.mjs.map +1 -1
  873. package/lib/composables/selectLink.mjs +19 -0
  874. package/lib/composables/selectLink.mjs.map +1 -0
  875. package/lib/composables/size.mjs +3 -2
  876. package/lib/composables/size.mjs.map +1 -1
  877. package/lib/composables/ssrBoot.mjs.map +1 -1
  878. package/lib/composables/stack.mjs +37 -0
  879. package/lib/composables/stack.mjs.map +1 -0
  880. package/lib/composables/tag.mjs.map +1 -1
  881. package/lib/composables/teleport.mjs +4 -1
  882. package/lib/composables/teleport.mjs.map +1 -1
  883. package/lib/composables/theme.mjs +158 -110
  884. package/lib/composables/theme.mjs.map +1 -1
  885. package/lib/composables/toggleScope.mjs +18 -0
  886. package/lib/composables/toggleScope.mjs.map +1 -0
  887. package/lib/composables/touch.mjs +129 -0
  888. package/lib/composables/touch.mjs.map +1 -0
  889. package/lib/composables/transition.mjs +4 -3
  890. package/lib/composables/transition.mjs.map +1 -1
  891. package/lib/composables/validation.mjs +120 -0
  892. package/lib/composables/validation.mjs.map +1 -0
  893. package/lib/composables/variant.mjs +18 -10
  894. package/lib/composables/variant.mjs.map +1 -1
  895. package/lib/directives/click-outside/index.mjs +23 -11
  896. package/lib/directives/click-outside/index.mjs.map +1 -1
  897. package/lib/directives/color/index.mjs.map +1 -1
  898. package/lib/directives/index.d.ts +6 -4
  899. package/lib/directives/index.mjs +2 -2
  900. package/lib/directives/index.mjs.map +1 -1
  901. package/lib/directives/intersect/index.mjs +19 -12
  902. package/lib/directives/intersect/index.mjs.map +1 -1
  903. package/lib/directives/mutate/index.mjs +33 -34
  904. package/lib/directives/mutate/index.mjs.map +1 -1
  905. package/lib/directives/resize/index.mjs +8 -5
  906. package/lib/directives/resize/index.mjs.map +1 -1
  907. package/lib/directives/ripple/VRipple.css +34 -0
  908. package/lib/directives/ripple/VRipple.sass +2 -1
  909. package/lib/directives/ripple/_variables.scss +4 -4
  910. package/lib/directives/ripple/index.mjs +22 -7
  911. package/lib/directives/ripple/index.mjs.map +1 -1
  912. package/lib/directives/scroll/index.mjs +9 -6
  913. package/lib/directives/scroll/index.mjs.map +1 -1
  914. package/lib/directives/touch/index.mjs +8 -4
  915. package/lib/directives/touch/index.mjs.map +1 -1
  916. package/lib/entry-bundler.mjs +8 -4
  917. package/lib/entry-bundler.mjs.map +1 -1
  918. package/lib/framework.mjs +24 -28
  919. package/lib/framework.mjs.map +1 -1
  920. package/lib/iconsets/fa-svg.d.ts +55 -0
  921. package/lib/iconsets/fa-svg.mjs.map +1 -1
  922. package/lib/iconsets/fa.d.ts +55 -0
  923. package/lib/iconsets/fa.mjs +1 -0
  924. package/lib/iconsets/fa.mjs.map +1 -1
  925. package/lib/iconsets/fa4.d.ts +55 -0
  926. package/lib/iconsets/fa4.mjs +2 -1
  927. package/lib/iconsets/fa4.mjs.map +1 -1
  928. package/lib/iconsets/md.d.ts +55 -0
  929. package/lib/iconsets/md.mjs +2 -1
  930. package/lib/iconsets/md.mjs.map +1 -1
  931. package/lib/iconsets/mdi-svg.d.ts +55 -0
  932. package/lib/iconsets/mdi-svg.mjs +1 -1
  933. package/lib/iconsets/mdi-svg.mjs.map +1 -1
  934. package/lib/iconsets/mdi.d.ts +55 -0
  935. package/lib/iconsets/mdi.mjs +2 -1
  936. package/lib/iconsets/mdi.mjs.map +1 -1
  937. package/lib/index.d.ts +451 -0
  938. package/lib/locale/adapters/vue-i18n.mjs +64 -0
  939. package/lib/locale/adapters/vue-i18n.mjs.map +1 -0
  940. package/lib/locale/adapters/vue-intl.mjs +67 -0
  941. package/lib/locale/adapters/vue-intl.mjs.map +1 -0
  942. package/lib/locale/af.mjs.map +1 -1
  943. package/lib/locale/ar.mjs.map +1 -1
  944. package/lib/locale/az.mjs.map +1 -1
  945. package/lib/locale/bg.mjs.map +1 -1
  946. package/lib/locale/ca.mjs +9 -9
  947. package/lib/locale/ca.mjs.map +1 -1
  948. package/lib/locale/ckb.mjs.map +1 -1
  949. package/lib/locale/cs.mjs +3 -3
  950. package/lib/locale/cs.mjs.map +1 -1
  951. package/lib/locale/da.mjs.map +1 -1
  952. package/lib/locale/de.mjs.map +1 -1
  953. package/lib/locale/el.mjs.map +1 -1
  954. package/lib/locale/en.mjs.map +1 -1
  955. package/lib/locale/es.mjs +2 -2
  956. package/lib/locale/es.mjs.map +1 -1
  957. package/lib/locale/et.mjs.map +1 -1
  958. package/lib/locale/fa.mjs.map +1 -1
  959. package/lib/locale/fi.mjs.map +1 -1
  960. package/lib/locale/fr.mjs +1 -1
  961. package/lib/locale/fr.mjs.map +1 -1
  962. package/lib/locale/he.mjs.map +1 -1
  963. package/lib/locale/hr.mjs.map +1 -1
  964. package/lib/locale/hu.mjs.map +1 -1
  965. package/lib/locale/id.mjs.map +1 -1
  966. package/lib/locale/index.d.ts +3111 -0
  967. package/lib/locale/index.mjs.map +1 -1
  968. package/lib/locale/it.mjs.map +1 -1
  969. package/lib/locale/ja.mjs.map +1 -1
  970. package/lib/locale/ko.mjs.map +1 -1
  971. package/lib/locale/lt.mjs.map +1 -1
  972. package/lib/locale/lv.mjs.map +1 -1
  973. package/lib/locale/nl.mjs.map +1 -1
  974. package/lib/locale/no.mjs.map +1 -1
  975. package/lib/locale/pl.mjs.map +1 -1
  976. package/lib/locale/pt.mjs.map +1 -1
  977. package/lib/locale/ro.mjs.map +1 -1
  978. package/lib/locale/ru.mjs.map +1 -1
  979. package/lib/locale/sk.mjs.map +1 -1
  980. package/lib/locale/sl.mjs.map +1 -1
  981. package/lib/locale/sr-Cyrl.mjs.map +1 -1
  982. package/lib/locale/sr-Latn.mjs.map +1 -1
  983. package/lib/locale/sv.mjs.map +1 -1
  984. package/lib/locale/th.mjs.map +1 -1
  985. package/lib/locale/tr.mjs.map +1 -1
  986. package/lib/locale/uk.mjs.map +1 -1
  987. package/lib/locale/vi.mjs.map +1 -1
  988. package/lib/locale/zh-Hans.mjs.map +1 -1
  989. package/lib/locale/zh-Hant.mjs.map +1 -1
  990. package/lib/presets/default/index.mjs +1 -1
  991. package/lib/presets/default/index.mjs.map +1 -1
  992. package/lib/services/goto/easing-patterns.mjs +0 -3
  993. package/lib/services/goto/easing-patterns.mjs.map +1 -1
  994. package/lib/services/goto/index.mjs +16 -18
  995. package/lib/services/goto/index.mjs.map +1 -1
  996. package/lib/services/goto/util.mjs.map +1 -1
  997. package/lib/styles/elements/_blockquote.sass +5 -3
  998. package/lib/styles/elements/_global.sass +5 -4
  999. package/lib/styles/elements/_index.sass +2 -2
  1000. package/lib/styles/generic/_colors.scss +31 -11
  1001. package/lib/styles/generic/_elevation.scss +2 -2
  1002. package/lib/styles/generic/_index.scss +6 -6
  1003. package/lib/styles/generic/_reset.scss +236 -232
  1004. package/lib/styles/generic/_transitions.scss +8 -5
  1005. package/lib/styles/main.css +18620 -0
  1006. package/lib/styles/main.sass +4 -5
  1007. package/lib/styles/settings/_colors.scss +431 -7
  1008. package/lib/styles/settings/_elevations.scss +1 -1
  1009. package/lib/styles/settings/_index.sass +4 -10
  1010. package/lib/styles/settings/_utilities.scss +514 -472
  1011. package/lib/styles/settings/_variables.scss +51 -52
  1012. package/lib/styles/tools/_absolute.sass +8 -0
  1013. package/lib/styles/tools/_density.sass +3 -1
  1014. package/lib/styles/tools/_display.sass +11 -0
  1015. package/lib/styles/tools/_elevation.sass +4 -2
  1016. package/lib/styles/tools/_functions.sass +30 -25
  1017. package/lib/styles/tools/_index.sass +17 -24
  1018. package/lib/styles/tools/_radius.sass +5 -2
  1019. package/lib/styles/tools/_sheet.sass +7 -4
  1020. package/lib/styles/tools/_states.sass +24 -8
  1021. package/lib/styles/tools/_utilities.sass +24 -20
  1022. package/lib/styles/tools/_variant.sass +10 -2
  1023. package/lib/styles/utilities/_display.sass +3 -1
  1024. package/lib/styles/utilities/_index.sass +25 -22
  1025. package/lib/styles/utilities/_text.sass +3 -1
  1026. package/lib/styles.scss +4 -0
  1027. package/lib/util/anchor.mjs +52 -0
  1028. package/lib/util/anchor.mjs.map +1 -0
  1029. package/lib/util/animation.mjs +43 -0
  1030. package/lib/util/animation.mjs.map +1 -0
  1031. package/lib/util/box.mjs +32 -0
  1032. package/lib/util/box.mjs.map +1 -0
  1033. package/lib/util/color/APCA.mjs +85 -0
  1034. package/lib/util/color/APCA.mjs.map +1 -0
  1035. package/lib/util/color/transformCIELAB.mjs.map +1 -1
  1036. package/lib/util/color/transformSRGB.mjs.map +1 -1
  1037. package/lib/util/colorUtils.mjs +3 -0
  1038. package/lib/util/colorUtils.mjs.map +1 -1
  1039. package/lib/util/colors.mjs.map +1 -1
  1040. package/lib/util/console.mjs +2 -1
  1041. package/lib/util/console.mjs.map +1 -1
  1042. package/lib/util/createSimpleFunctional.mjs +11 -8
  1043. package/lib/util/createSimpleFunctional.mjs.map +1 -1
  1044. package/lib/util/dateTimeUtils.mjs +3 -1
  1045. package/lib/util/dateTimeUtils.mjs.map +1 -1
  1046. package/lib/util/defineComponent.mjs +92 -0
  1047. package/lib/util/defineComponent.mjs.map +1 -0
  1048. package/lib/util/dom.mjs.map +1 -1
  1049. package/lib/util/easing.mjs.map +1 -1
  1050. package/lib/util/getCurrentInstance.mjs +19 -0
  1051. package/lib/util/getCurrentInstance.mjs.map +1 -0
  1052. package/lib/util/getScrollParent.mjs +1 -2
  1053. package/lib/util/getScrollParent.mjs.map +1 -1
  1054. package/lib/util/globals.mjs +1 -3
  1055. package/lib/util/globals.mjs.map +1 -1
  1056. package/lib/util/helpers.mjs +172 -32
  1057. package/lib/util/helpers.mjs.map +1 -1
  1058. package/lib/util/index.mjs +5 -1
  1059. package/lib/util/index.mjs.map +1 -1
  1060. package/lib/util/isFixedPosition.mjs +12 -0
  1061. package/lib/util/isFixedPosition.mjs.map +1 -0
  1062. package/lib/util/propsFactory.mjs.map +1 -1
  1063. package/lib/util/useRender.mjs +4 -2
  1064. package/lib/util/useRender.mjs.map +1 -1
  1065. package/package.json +106 -54
  1066. package/dist/vuetify.css.map +0 -1
  1067. package/dist/vuetify.min.css.map +0 -1
  1068. package/lib/components/VAlert/_index.scss +0 -2
  1069. package/lib/components/VApp/_index.scss +0 -1
  1070. package/lib/components/VAppBar/VAppBarTitle.sass +0 -10
  1071. package/lib/components/VAppBar/_index.scss +0 -2
  1072. package/lib/components/VAvatar/_index.scss +0 -3
  1073. package/lib/components/VBadge/_index.scss +0 -2
  1074. package/lib/components/VBanner/VBannerContent.mjs +0 -3
  1075. package/lib/components/VBanner/VBannerContent.mjs.map +0 -1
  1076. package/lib/components/VBanner/_index.scss +0 -2
  1077. package/lib/components/VBottomNavigation/_index.scss +0 -2
  1078. package/lib/components/VBreadcrumbs/_index.scss +0 -2
  1079. package/lib/components/VBtn/_index.scss +0 -3
  1080. package/lib/components/VCard/VCardMedia.mjs +0 -3
  1081. package/lib/components/VCard/VCardMedia.mjs.map +0 -1
  1082. package/lib/components/VCard/_index.scss +0 -3
  1083. package/lib/components/VCheckbox/VSimpleCheckbox.mjs +0 -92
  1084. package/lib/components/VCheckbox/VSimpleCheckbox.mjs.map +0 -1
  1085. package/lib/components/VCheckbox/VSimpleCheckbox.sass +0 -16
  1086. package/lib/components/VChip/_index.scss +0 -3
  1087. package/lib/components/VCode/_index.scss +0 -2
  1088. package/lib/components/VDataTable/VSimpleTable.mjs +0 -48
  1089. package/lib/components/VDataTable/VSimpleTable.mjs.map +0 -1
  1090. package/lib/components/VDataTable/VSimpleTable.sass +0 -179
  1091. package/lib/components/VDialog/_index.scss +0 -2
  1092. package/lib/components/VDivider/_index.scss +0 -2
  1093. package/lib/components/VExpansionPanel/VExpansionPanelContent.mjs +0 -61
  1094. package/lib/components/VExpansionPanel/VExpansionPanelContent.mjs.map +0 -1
  1095. package/lib/components/VExpansionPanel/VExpansionPanelHeader.mjs +0 -112
  1096. package/lib/components/VExpansionPanel/VExpansionPanelHeader.mjs.map +0 -1
  1097. package/lib/components/VFooter/_index.scss +0 -2
  1098. package/lib/components/VGrid/_index.scss +0 -2
  1099. package/lib/components/VIcon/_index.scss +0 -2
  1100. package/lib/components/VImg/_index.scss +0 -2
  1101. package/lib/components/VItemGroup/_index.scss +0 -2
  1102. package/lib/components/VKbd/_index.scss +0 -2
  1103. package/lib/components/VLayout/_index.scss +0 -1
  1104. package/lib/components/VList/_index.scss +0 -3
  1105. package/lib/components/VList/_mixins.scss +0 -0
  1106. package/lib/components/VMain/_index.scss +0 -2
  1107. package/lib/components/VNavigationDrawer/_index.scss +0 -2
  1108. package/lib/components/VOverlay/_index.scss +0 -2
  1109. package/lib/components/VPagination/_index.scss +0 -2
  1110. package/lib/components/VParallax/_variables.scss +0 -4
  1111. package/lib/components/VProgressCircular/_index.scss +0 -2
  1112. package/lib/components/VRadioGroup/VRadio.mjs +0 -179
  1113. package/lib/components/VRadioGroup/VRadio.mjs.map +0 -1
  1114. package/lib/components/VRadioGroup/VRadio.sass +0 -25
  1115. package/lib/components/VRangeSlider/VRangeSlider.sass +0 -19
  1116. package/lib/components/VRating/_index.scss +0 -2
  1117. package/lib/components/VResponsive/_index.scss +0 -1
  1118. package/lib/components/VSelect/VSelectList.mjs +0 -251
  1119. package/lib/components/VSelect/VSelectList.mjs.map +0 -1
  1120. package/lib/components/VSheet/_index.scss +0 -2
  1121. package/lib/components/VSlideGroup/VSlideItem.mjs +0 -14
  1122. package/lib/components/VSlideGroup/VSlideItem.mjs.map +0 -1
  1123. package/lib/components/VSystemBar/_index.scss +0 -2
  1124. package/lib/components/VTabs/VTabItem.mjs +0 -23
  1125. package/lib/components/VTabs/VTabItem.mjs.map +0 -1
  1126. package/lib/components/VTabs/VTabsBar.mjs +0 -86
  1127. package/lib/components/VTabs/VTabsBar.mjs.map +0 -1
  1128. package/lib/components/VTabs/VTabsItems.mjs +0 -37
  1129. package/lib/components/VTabs/VTabsItems.mjs.map +0 -1
  1130. package/lib/components/VTabs/VTabsSlider.mjs +0 -20
  1131. package/lib/components/VTabs/VTabsSlider.mjs.map +0 -1
  1132. package/lib/components/VTextField/_mixins.sass +0 -18
  1133. package/lib/components/VTimeline/_index.scss +0 -3
  1134. package/lib/components/VToolbar/_index.scss +0 -2
  1135. package/lib/entry.d.ts +0 -3647
  1136. package/lib/entry.mjs +0 -4
  1137. package/lib/entry.mjs.map +0 -1
  1138. package/lib/framework.d.ts +0 -158
  1139. package/lib/globals.d.mjs +0 -2
  1140. package/lib/globals.d.mjs.map +0 -1
  1141. package/lib/mixins/activatable/index.mjs +0 -199
  1142. package/lib/mixins/activatable/index.mjs.map +0 -1
  1143. package/lib/mixins/applicationable/index.mjs +0 -72
  1144. package/lib/mixins/applicationable/index.mjs.map +0 -1
  1145. package/lib/mixins/binds-attrs/index.mjs +0 -42
  1146. package/lib/mixins/binds-attrs/index.mjs.map +0 -1
  1147. package/lib/mixins/bootable/index.mjs +0 -54
  1148. package/lib/mixins/bootable/index.mjs.map +0 -1
  1149. package/lib/mixins/button-group/index.mjs +0 -28
  1150. package/lib/mixins/button-group/index.mjs.map +0 -1
  1151. package/lib/mixins/colorable/index.mjs +0 -78
  1152. package/lib/mixins/colorable/index.mjs.map +0 -1
  1153. package/lib/mixins/comparable/index.mjs +0 -15
  1154. package/lib/mixins/comparable/index.mjs.map +0 -1
  1155. package/lib/mixins/dependent/index.mjs +0 -73
  1156. package/lib/mixins/dependent/index.mjs.map +0 -1
  1157. package/lib/mixins/elevatable/index.mjs +0 -26
  1158. package/lib/mixins/elevatable/index.mjs.map +0 -1
  1159. package/lib/mixins/filterable/index.mjs +0 -16
  1160. package/lib/mixins/filterable/index.mjs.map +0 -1
  1161. package/lib/mixins/loadable/index.mjs +0 -45
  1162. package/lib/mixins/loadable/index.mjs.map +0 -1
  1163. package/lib/mixins/localable/index.mjs +0 -17
  1164. package/lib/mixins/localable/index.mjs.map +0 -1
  1165. package/lib/mixins/menuable/index.mjs +0 -388
  1166. package/lib/mixins/menuable/index.mjs.map +0 -1
  1167. package/lib/mixins/mobile/index.mjs +0 -50
  1168. package/lib/mixins/mobile/index.mjs.map +0 -1
  1169. package/lib/mixins/overlayable/index.mjs +0 -201
  1170. package/lib/mixins/overlayable/index.mjs.map +0 -1
  1171. package/lib/mixins/picker/index.mjs +0 -75
  1172. package/lib/mixins/picker/index.mjs.map +0 -1
  1173. package/lib/mixins/picker-button/index.mjs +0 -35
  1174. package/lib/mixins/picker-button/index.mjs.map +0 -1
  1175. package/lib/mixins/proxyable/index.mjs +0 -50
  1176. package/lib/mixins/proxyable/index.mjs.map +0 -1
  1177. package/lib/mixins/returnable/index.mjs +0 -36
  1178. package/lib/mixins/returnable/index.mjs.map +0 -1
  1179. package/lib/mixins/rippleable/index.mjs +0 -35
  1180. package/lib/mixins/rippleable/index.mjs.map +0 -1
  1181. package/lib/mixins/roundable/index.mjs +0 -37
  1182. package/lib/mixins/roundable/index.mjs.map +0 -1
  1183. package/lib/mixins/routable/index.mjs +0 -146
  1184. package/lib/mixins/routable/index.mjs.map +0 -1
  1185. package/lib/mixins/selectable/index.mjs +0 -167
  1186. package/lib/mixins/selectable/index.mjs.map +0 -1
  1187. package/lib/mixins/stackable/index.mjs +0 -55
  1188. package/lib/mixins/stackable/index.mjs.map +0 -1
  1189. package/lib/mixins/themeable/index.mjs +0 -111
  1190. package/lib/mixins/themeable/index.mjs.map +0 -1
  1191. package/lib/mixins/toggleable/index.mjs +0 -40
  1192. package/lib/mixins/toggleable/index.mjs.map +0 -1
  1193. package/lib/mixins/translatable/index.mjs +0 -59
  1194. package/lib/mixins/translatable/index.mjs.map +0 -1
  1195. package/lib/mixins/validatable/index.mjs +0 -263
  1196. package/lib/mixins/validatable/index.mjs.map +0 -1
  1197. package/lib/services/application/index.mjs +0 -58
  1198. package/lib/services/application/index.mjs.map +0 -1
  1199. package/lib/services/breakpoint/index.mjs +0 -175
  1200. package/lib/services/breakpoint/index.mjs.map +0 -1
  1201. package/lib/services/index.mjs +0 -10
  1202. package/lib/services/index.mjs.map +0 -1
  1203. package/lib/services/lang/index.mjs +0 -73
  1204. package/lib/services/lang/index.mjs.map +0 -1
  1205. package/lib/services/service/index.mjs +0 -13
  1206. package/lib/services/service/index.mjs.map +0 -1
  1207. package/lib/styles/components/_index.sass +0 -1
  1208. package/lib/styles/components/_selection-controls.sass +0 -119
  1209. package/lib/styles/settings/_dark.scss +0 -137
  1210. package/lib/styles/settings/_light.scss +0 -118
  1211. package/lib/styles/settings/_theme.scss +0 -1
  1212. package/lib/styles/styles.sass +0 -2
  1213. package/lib/util/makeProps.mjs +0 -53
  1214. package/lib/util/makeProps.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vuetify.esm.js","sources":["../src/util/anchor.ts","../src/util/box.ts","../src/util/animation.ts","../src/util/console.ts","../src/util/helpers.ts","../src/util/color/transformSRGB.ts","../src/util/color/transformCIELAB.ts","../src/util/colorUtils.ts","../src/composables/defaults.ts","../src/util/defineComponent.tsx","../src/util/createSimpleFunctional.ts","../src/util/dom.ts","../src/util/easing.ts","../src/util/getCurrentInstance.ts","../src/util/getScrollParent.ts","../src/util/globals.ts","../src/util/isFixedPosition.ts","../src/util/propsFactory.ts","../src/util/useRender.ts","../src/util/color/APCA.ts","../src/composables/theme.ts","../src/composables/resizeObserver.ts","../src/composables/layout.ts","../src/locale/en.ts","../src/locale/index.ts","../src/composables/rtl.ts","../src/components/VApp/VApp.tsx","../src/components/VDefaultsProvider/VDefaultsProvider.tsx","../src/components/transitions/createTransition.ts","../src/components/transitions/expand-transition.ts","../src/components/transitions/dialog-transition.tsx","../src/components/transitions/index.ts","../src/composables/dimensions.ts","../src/components/VResponsive/VResponsive.tsx","../src/directives/intersect/index.ts","../src/composables/transition.ts","../src/components/VImg/VImg.tsx","../src/composables/tag.ts","../src/components/VToolbar/VToolbarTitle.tsx","../src/composables/border.ts","../src/composables/elevation.ts","../src/composables/rounded.ts","../src/composables/color.ts","../src/composables/forwardRef.ts","../src/components/VToolbar/VToolbar.tsx","../src/composables/proxiedModel.ts","../src/components/VAppBar/VAppBar.tsx","../src/composables/density.ts","../src/composables/variant.tsx","../src/components/VBtnGroup/VBtnGroup.tsx","../src/composables/group.ts","../src/components/VBtnToggle/VBtnToggle.tsx","../src/composables/size.ts","../src/iconsets/mdi.ts","../src/composables/icons.tsx","../src/components/VIcon/VIcon.tsx","../src/composables/location.ts","../src/composables/position.ts","../src/composables/router.tsx","../src/composables/selectLink.ts","../src/directives/ripple/index.ts","../src/components/VBtn/VBtn.tsx","../src/components/VAppBar/VAppBarNavIcon.tsx","../src/components/VToolbar/VToolbarItems.tsx","../src/components/VAppBar/VAppBarTitle.tsx","../src/components/VAlert/VAlertTitle.ts","../src/components/VAlert/VAlert.tsx","../src/components/VAvatar/VAvatar.tsx","../src/components/VChipGroup/VChipGroup.tsx","../src/components/VChip/VChip.tsx","../src/components/VDivider/VDivider.tsx","../src/components/VList/list.ts","../src/composables/nested/openStrategies.ts","../src/composables/nested/selectStrategies.ts","../src/composables/nested/nested.ts","../src/components/VList/VListGroup.tsx","../src/components/VList/VListItemAvatar.tsx","../src/components/VList/VListItemHeader.ts","../src/components/VList/VListItemIcon.tsx","../src/components/VList/VListItemSubtitle.ts","../src/components/VList/VListItemTitle.ts","../src/components/VList/VListItem.tsx","../src/components/VList/VListSubheader.tsx","../src/components/VList/VListChildren.tsx","../src/composables/items.ts","../src/components/VList/VList.tsx","../src/components/VList/VListImg.ts","../src/components/VList/VListItemAction.tsx","../src/components/VList/VListItemMedia.tsx","../src/composables/delay.ts","../src/components/VMenu/shared.ts","../src/components/VOverlay/useActivator.tsx","../src/components/VOverlay/util/point.ts","../src/components/VOverlay/locationStrategies.ts","../src/components/VOverlay/requestNewFrame.ts","../src/components/VOverlay/scrollStrategies.ts","../src/composables/toggleScope.ts","../src/composables/teleport.ts","../src/composables/lazy.ts","../src/composables/stack.ts","../src/directives/click-outside/index.ts","../src/components/VOverlay/VOverlay.tsx","../src/composables/scopeId.ts","../src/components/VMenu/VMenu.tsx","../src/components/VMessages/VMessages.tsx","../src/composables/form.ts","../src/composables/validation.ts","../src/components/VInput/VInput.tsx","../src/components/VLabel/VLabel.tsx","../src/components/VField/VFieldLabel.tsx","../src/composables/intersectionObserver.ts","../src/components/VProgressLinear/VProgressLinear.tsx","../src/composables/loader.tsx","../src/composables/focus.ts","../src/components/VField/VField.tsx","../src/components/VCounter/VCounter.tsx","../src/components/VTextField/VTextField.tsx","../src/composables/locale.ts","../src/components/VSelect/VSelect.tsx","../src/composables/filter.ts","../src/components/VAutocomplete/VAutocomplete.tsx","../src/components/VBadge/VBadge.tsx","../src/components/VBanner/VBannerActions.tsx","../src/components/VBanner/VBannerAvatar.tsx","../src/components/VBanner/VBannerIcon.tsx","../src/components/VBanner/VBannerText.ts","../src/composables/display.ts","../src/components/VBanner/VBanner.tsx","../src/components/VBottomNavigation/VBottomNavigation.tsx","../src/components/VBreadcrumbs/VBreadcrumbsItem.tsx","../src/components/VBreadcrumbs/VBreadcrumbsDivider.tsx","../src/components/VBreadcrumbs/VBreadcrumbs.tsx","../src/components/VCard/VCardActions.tsx","../src/components/VCard/VCardAvatar.ts","../src/components/VCard/VCardContent.ts","../src/components/VCard/VCardHeader.ts","../src/components/VCard/VCardHeaderText.ts","../src/components/VCard/VCardImg.ts","../src/components/VCard/VCardSubtitle.ts","../src/components/VCard/VCardText.ts","../src/components/VCard/VCardTitle.ts","../src/components/VCard/VCard.tsx","../src/directives/touch/index.ts","../src/components/VWindow/VWindow.tsx","../src/components/VWindow/VWindowItem.tsx","../src/components/VCarousel/VCarousel.tsx","../src/components/VCarousel/VCarouselItem.tsx","../src/components/VSelectionControlGroup/VSelectionControlGroup.tsx","../src/components/VSelectionControl/VSelectionControl.tsx","../src/components/VCheckbox/VCheckbox.tsx","../src/components/VCode/index.ts","../src/components/VSheet/VSheet.tsx","../src/components/VSlider/slider.ts","../src/components/VSlider/VSliderThumb.tsx","../src/components/VSlider/VSliderTrack.tsx","../src/components/VSlider/VSlider.tsx","../src/components/VColorPicker/util/index.ts","../src/components/VColorPicker/VColorPickerPreview.tsx","../src/components/VColorPicker/VColorPickerCanvas.tsx","../src/components/VColorPicker/VColorPickerEdit.tsx","../src/util/colors.ts","../src/components/VColorPicker/VColorPickerSwatches.tsx","../src/components/VColorPicker/VColorPicker.tsx","../src/components/VCombobox/VCombobox.tsx","../src/components/VDialog/VDialog.tsx","../src/components/VExpansionPanel/VExpansionPanels.tsx","../src/components/VExpansionPanel/VExpansionPanelTitle.tsx","../src/components/VExpansionPanel/VExpansionPanelText.tsx","../src/components/VExpansionPanel/VExpansionPanel.tsx","../src/components/VFileInput/VFileInput.tsx","../src/components/VFooter/VFooter.tsx","../src/components/VForm/VForm.tsx","../src/components/VGrid/VContainer.tsx","../src/components/VGrid/VCol.ts","../src/components/VGrid/VRow.ts","../src/components/VGrid/VSpacer.ts","../src/components/VHover/VHover.tsx","../src/components/VItemGroup/VItemGroup.tsx","../src/components/VItemGroup/VItem.tsx","../src/components/VKbd/index.ts","../src/components/VLayout/VLayout.tsx","../src/components/VLayout/VLayoutItem.tsx","../src/components/VLazy/VLazy.tsx","../src/components/VLocaleProvider/VLocaleProvider.tsx","../src/composables/ssrBoot.ts","../src/components/VMain/VMain.tsx","../src/composables/touch.ts","../src/components/VNavigationDrawer/touch.ts","../src/components/VNavigationDrawer/VNavigationDrawer.tsx","../src/composables/hydration.ts","../src/components/VNoSsr/VNoSsr.tsx","../src/composables/refs.ts","../src/components/VPagination/VPagination.tsx","../src/components/VParallax/VParallax.tsx","../src/components/VProgressCircular/VProgressCircular.tsx","../src/components/VRadio/VRadio.tsx","../src/components/VRadioGroup/VRadioGroup.tsx","../src/components/VRangeSlider/VRangeSlider.tsx","../src/components/VRating/VRating.tsx","../src/components/VSlideGroup/helpers.ts","../src/components/VSlideGroup/VSlideGroup.tsx","../src/components/VSlideGroup/VSlideGroupItem.tsx","../src/components/VSnackbar/VSnackbar.tsx","../src/components/VSwitch/VSwitch.tsx","../src/components/VSystemBar/VSystemBar.tsx","../src/components/VTabs/shared.ts","../src/components/VTabs/VTab.tsx","../src/components/VTabs/VTabs.tsx","../src/components/VTable/VTable.tsx","../src/components/VTextarea/VTextarea.tsx","../src/components/VThemeProvider/VThemeProvider.tsx","../src/components/VTimeline/shared.ts","../src/components/VTimeline/VTimeline.tsx","../src/components/VTimeline/VTimelineDivider.tsx","../src/components/VTimeline/VTimelineItem.tsx","../src/components/VTooltip/VTooltip.tsx","../src/components/VValidation/VValidation.tsx","../src/directives/mutate/index.ts","../src/directives/resize/index.ts","../src/directives/scroll/index.ts","../src/framework.ts","../src/entry-bundler.ts"],"sourcesContent":["const block = ['top', 'bottom'] as const\nconst inline = ['start', 'end'] as const\ntype Tblock = typeof block[number]\ntype Tinline = typeof inline [number]\nexport type Anchor =\n | Tblock\n | Tinline\n | 'center'\n | 'center center'\n | `${Tblock} ${Tinline | 'center'}`\n | `${Tinline} ${Tblock | 'center'}`\nexport type ParsedAnchor =\n | { side: 'center', align: 'center' }\n | { side: Tblock, align: Tinline | 'center' }\n | { side: Tinline, align: Tblock | 'center' }\n\n/** Parse a raw anchor string into an object */\nexport function parseAnchor (anchor: Anchor) {\n let [side, align] = anchor.split(' ')\n if (!align) {\n align =\n side === 'top' || side === 'bottom' ? 'start'\n : side === 'start' || side === 'end' ? 'top'\n : 'center'\n }\n return {\n side,\n align,\n } as ParsedAnchor\n}\n\n/** Get an anchor directly opposite, with the same alignment */\nexport function oppositeAnchor (anchor: ParsedAnchor) {\n return {\n side: {\n center: 'center',\n top: 'bottom',\n bottom: 'top',\n start: 'end',\n end: 'start',\n }[anchor.side],\n align: anchor.align,\n } as ParsedAnchor\n}\n\n/** Convert start/end into left/right */\nexport function physicalAnchor (anchor: ParsedAnchor, el: HTMLElement) {\n const { side, align } = anchor\n const { direction } = window.getComputedStyle(el)\n\n const map: Record<string, string | undefined> = direction === 'ltr' ? {\n start: 'left',\n end: 'right',\n } : {\n start: 'right',\n end: 'left',\n }\n\n return (map[side] ?? side) + ' ' + (map[align] ?? align)\n}\n","export class Box {\n x: number\n y: number\n width: number\n height: number\n\n constructor ({ x, y, width, height }: {\n x: number\n y: number\n width: number\n height: number\n }) {\n this.x = x\n this.y = y\n this.width = width\n this.height = height\n }\n\n get top () { return this.y }\n get bottom () { return this.y + this.height }\n get left () { return this.x }\n get right () { return this.x + this.width }\n}\n","import { Box } from '@/util/box'\n\n/** @see https://stackoverflow.com/a/57876601/2074736 */\nexport function nullifyTransforms (el: HTMLElement): Box {\n const rect = el.getBoundingClientRect()\n const style = getComputedStyle(el)\n const tx = style.transform\n\n if (tx) {\n let ta, sx, sy, dx, dy\n if (tx.startsWith('matrix3d(')) {\n ta = tx.slice(9, -1).split(/, /)\n sx = +ta[0]\n sy = +ta[5]\n dx = +ta[12]\n dy = +ta[13]\n } else if (tx.startsWith('matrix(')) {\n ta = tx.slice(7, -1).split(/, /)\n sx = +ta[0]\n sy = +ta[3]\n dx = +ta[4]\n dy = +ta[5]\n } else {\n return new Box(rect)\n }\n\n const to = style.transformOrigin\n const x = rect.x - dx - (1 - sx) * parseFloat(to)\n const y = rect.y - dy - (1 - sy) * parseFloat(to.slice(to.indexOf(' ') + 1))\n const w = sx ? rect.width / sx : el.offsetWidth\n const h = sy ? rect.height / sy : el.offsetHeight\n\n return new Box({ x, y, width: w, height: h })\n } else {\n return new Box(rect)\n }\n}\n","/* eslint-disable no-console */\n// import Vuetify from '../framework'\n\nfunction createMessage (message: string, vm?: any, parent?: any): string | void {\n // if (Vuetify.config.silent) return\n\n if (parent) {\n vm = {\n _isVue: true,\n $parent: parent,\n $options: vm,\n }\n }\n\n if (vm) {\n // Only show each message once per instance\n vm.$_alreadyWarned = vm.$_alreadyWarned || []\n if (vm.$_alreadyWarned.includes(message)) return\n vm.$_alreadyWarned.push(message)\n }\n\n return `[Vuetify] ${message}` + (\n vm ? generateComponentTrace(vm) : ''\n )\n}\n\nexport function consoleInfo (message: string, vm?: any, parent?: any): void {\n const newMessage = createMessage(message, vm, parent)\n newMessage != null && console.info(newMessage)\n}\n\nexport function consoleWarn (message: string, vm?: any, parent?: any): void {\n const newMessage = createMessage(message, vm, parent)\n newMessage != null && console.warn(newMessage)\n}\n\nexport function consoleError (message: string, vm?: any, parent?: any): void {\n const newMessage = createMessage(message, vm, parent)\n newMessage != null && console.error(newMessage)\n}\n\nexport function deprecate (original: string, replacement: string, vm?: any, parent?: any) {\n consoleWarn(`[UPGRADE] '${original}' is deprecated, use '${replacement}' instead.`, vm, parent)\n}\nexport function breaking (original: string, replacement: string, vm?: any, parent?: any) {\n consoleError(`[BREAKING] '${original}' has been removed, use '${replacement}' instead. For more information, see the upgrade guide https://github.com/vuetifyjs/vuetify/releases/tag/v2.0.0#user-content-upgrade-guide`, vm, parent)\n}\nexport function removed (original: string, vm?: any, parent?: any) {\n consoleWarn(`[REMOVED] '${original}' has been removed. You can safely omit it.`, vm, parent)\n}\n\n/**\n * Shamelessly stolen from vuejs/vue/blob/dev/src/core/util/debug.js\n */\n\nconst classifyRE = /(?:^|[-_])(\\w)/g\nconst classify = (str: string) => str\n .replace(classifyRE, c => c.toUpperCase())\n .replace(/[-_]/g, '')\n\nfunction formatComponentName (vm: any, includeFile?: boolean): string {\n if (vm.$root === vm) {\n return '<Root>'\n }\n const options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm || {}\n let name = options.name || options._componentTag\n const file = options.__file\n if (!name && file) {\n const match = file.match(/([^/\\\\]+)\\.vue$/)\n name = match?.[1]\n }\n\n return (\n (name ? `<${classify(name)}>` : `<Anonymous>`) +\n (file && includeFile !== false ? ` at ${file}` : '')\n )\n}\n\nfunction generateComponentTrace (vm: any): string {\n if (vm._isVue && vm.$parent) {\n const tree: any[] = []\n let currentRecursiveSequence = 0\n while (vm) {\n if (tree.length > 0) {\n const last: any = tree[tree.length - 1]\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++\n vm = vm.$parent\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence]\n currentRecursiveSequence = 0\n }\n }\n tree.push(vm)\n vm = vm.$parent\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map((vm, i) => `${\n i === 0 ? '---> ' : ' '.repeat(5 + i * 2)\n }${\n Array.isArray(vm)\n // eslint-disable-next-line sonarjs/no-nested-template-literals\n ? `${formatComponentName(vm[0])}... (${vm[1]} recursive calls)`\n : formatComponentName(vm)\n }`)\n .join('\\n')\n } else {\n return `\\n\\n(found in ${formatComponentName(vm)})`\n }\n}\n","// Utilities\nimport { camelize, Fragment } from 'vue'\n\n// Types\nimport type { ComponentInternalInstance, ComponentPublicInstance, InjectionKey, Ref, Slots, VNode, VNodeChild } from 'vue'\n\nexport function getNestedValue (obj: any, path: (string | number)[], fallback?: any): any {\n const last = path.length - 1\n\n if (last < 0) return obj === undefined ? fallback : obj\n\n for (let i = 0; i < last; i++) {\n if (obj == null) {\n return fallback\n }\n obj = obj[path[i]]\n }\n\n if (obj == null) return fallback\n\n return obj[path[last]] === undefined ? fallback : obj[path[last]]\n}\n\nexport function deepEqual (a: any, b: any): boolean {\n if (a === b) return true\n\n if (\n a instanceof Date &&\n b instanceof Date &&\n a.getTime() !== b.getTime()\n ) {\n // If the values are Date, compare them as timestamps\n return false\n }\n\n if (a !== Object(a) || b !== Object(b)) {\n // If the values aren't objects, they were already checked for equality\n return false\n }\n\n const props = Object.keys(a)\n\n if (props.length !== Object.keys(b).length) {\n // Different number of props, don't bother to check\n return false\n }\n\n return props.every(p => deepEqual(a[p], b[p]))\n}\n\nexport function getObjectValueByPath (obj: any, path: string, fallback?: any): any {\n // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621\n if (obj == null || !path || typeof path !== 'string') return fallback\n if (obj[path] !== undefined) return obj[path]\n path = path.replace(/\\[(\\w+)\\]/g, '.$1') // convert indexes to properties\n path = path.replace(/^\\./, '') // strip a leading dot\n return getNestedValue(obj, path.split('.'), fallback)\n}\n\nexport type SelectItemKey = boolean | string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any)\n\nexport function getPropertyFromItem (\n item: any,\n property: SelectItemKey,\n fallback?: any\n): any {\n if (property == null) return item === undefined ? fallback : item\n\n if (item !== Object(item)) return fallback\n\n if (typeof property === 'string') return getObjectValueByPath(item, property, fallback)\n\n if (Array.isArray(property)) return getNestedValue(item, property, fallback)\n\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n}\n\nexport function createRange (length: number, start = 0): number[] {\n return Array.from({ length }, (v, k) => start + k)\n}\n\nexport function getZIndex (el?: Element | null): number {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0\n\n const index = +window.getComputedStyle(el).getPropertyValue('z-index')\n\n if (!index) return getZIndex(el.parentNode as Element)\n return index\n}\n\nconst tagsToReplace: Record<string, string> = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n}\n\nexport function escapeHTML (str: string): string {\n return str.replace(/[&<>]/g, tag => tagsToReplace[tag] || tag)\n}\n\nexport function filterObjectOnKeys<T, K extends keyof T> (obj: T, keys: K[]): { [N in K]: T[N] } {\n const filtered = {} as { [N in K]: T[N] }\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]\n if (typeof obj[key] !== 'undefined') {\n filtered[key] = obj[key]\n }\n }\n\n return filtered\n}\n\nexport function convertToUnit (str: number, unit?: string): string\nexport function convertToUnit (str: string | number | null | undefined, unit?: string): string | undefined\nexport function convertToUnit (str: string | number | null | undefined, unit = 'px'): string | undefined {\n if (str == null || str === '') {\n return undefined\n } else if (isNaN(+str!)) {\n return String(str)\n } else if (!isFinite(+str!)) {\n return undefined\n } else {\n return `${Number(str)}${unit}`\n }\n}\n\nexport function isObject (obj: any): obj is object {\n return obj !== null && typeof obj === 'object' && !Array.isArray(obj)\n}\n\nexport function isComponentInstance (obj: any): obj is ComponentPublicInstance {\n return obj?.$el\n}\n\n// KeyboardEvent.keyCode aliases\nexport const keyCodes = Object.freeze({\n enter: 13,\n tab: 9,\n delete: 46,\n esc: 27,\n space: 32,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n end: 35,\n home: 36,\n del: 46,\n backspace: 8,\n insert: 45,\n pageup: 33,\n pagedown: 34,\n shift: 16,\n})\n\nexport const keyValues = Object.freeze({\n enter: 'Enter',\n tab: 'Tab',\n delete: 'Delete',\n esc: 'Escape',\n space: 'Space',\n up: 'ArrowUp',\n down: 'ArrowDown',\n left: 'ArrowLeft',\n right: 'ArrowRight',\n end: 'End',\n home: 'Home',\n del: 'Delete',\n backspace: 'Backspace',\n insert: 'Insert',\n pageup: 'PageUp',\n pagedown: 'PageDown',\n shift: 'Shift',\n})\n\nexport function keys<O> (o: O) {\n return Object.keys(o) as (keyof O)[]\n}\n\ntype MaybePick<\n T extends object,\n U extends Extract<keyof T, string>\n> = Record<string, unknown> extends T ? Partial<Pick<T, U>> : Pick<T, U>\n\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: U[]): [yes: MaybePick<T, U>, no: Omit<T, U>]\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[]): [yes: Partial<T>, no: Partial<T>]\nexport function pick<\n T extends object,\n U extends Extract<keyof T, string>\n> (obj: T, paths: (U | RegExp)[]): [yes: Partial<T>, no: Partial<T>] {\n const found = Object.create(null)\n const rest = Object.create(null)\n\n for (const key in obj) {\n if (\n paths.some(path => path instanceof RegExp\n ? path.test(key)\n : path === key\n )\n ) {\n found[key] = obj[key]\n } else {\n rest[key] = obj[key]\n }\n }\n\n return [found, rest]\n}\n\n/**\n * Filter attributes that should be applied to\n * the root element of a an input component. Remaining\n * attributes should be passed to the <input> element inside.\n */\nexport function filterInputAttrs (attrs: Record<string, unknown>) {\n return pick(attrs, ['class', 'style', 'id', /^data-/])\n}\n\n/**\n * Returns the set difference of B and A, i.e. the set of elements in B but not in A\n */\nexport function arrayDiff (a: any[], b: any[]): any[] {\n const diff: any[] = []\n for (let i = 0; i < b.length; i++) {\n if (!a.includes(b[i])) diff.push(b[i])\n }\n return diff\n}\n\ninterface ItemGroup<T> {\n name: string\n items: T[]\n}\n\nexport function groupItems<T extends any = any> (\n items: T[],\n groupBy: string[],\n groupDesc: boolean[]\n): ItemGroup<T>[] {\n const key = groupBy[0]\n const groups: ItemGroup<T>[] = []\n let current\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n const val = getObjectValueByPath(item, key, null)\n if (current !== val) {\n current = val\n groups.push({\n name: val ?? '',\n items: [],\n })\n }\n groups[groups.length - 1].items.push(item)\n }\n return groups\n}\n\nexport function wrapInArray<T> (v: T | T[] | null | undefined): T[] {\n return v == null\n ? []\n : Array.isArray(v)\n ? v : [v]\n}\n\ntype DataTableCompareFunction<T = any> = (a: T, b: T) => number\nexport function sortItems<T extends any, K extends keyof T> (\n items: T[],\n sortBy: string[],\n sortDesc: boolean[],\n locale: string,\n customSorters?: Record<K, DataTableCompareFunction<T[K]>>\n): T[] {\n if (sortBy === null || !sortBy.length) return items\n const stringCollator = new Intl.Collator(locale, { sensitivity: 'accent', usage: 'sort' })\n\n return items.sort((a, b) => {\n for (let i = 0; i < sortBy.length; i++) {\n const sortKey = sortBy[i]\n\n let sortA = getObjectValueByPath(a, sortKey)\n let sortB = getObjectValueByPath(b, sortKey)\n\n if (sortDesc[i]) {\n [sortA, sortB] = [sortB, sortA]\n }\n\n if (customSorters?.[sortKey as K]) {\n const customResult = customSorters[sortKey as K](sortA, sortB)\n\n if (!customResult) continue\n\n return customResult\n }\n\n // Check if both cannot be evaluated\n if (sortA === null && sortB === null) {\n continue\n }\n\n // Dates should be compared numerically\n if (sortA instanceof Date && sortB instanceof Date) {\n return sortA.getTime() - sortB.getTime()\n }\n\n [sortA, sortB] = [sortA, sortB].map(s => (s || '').toString().toLocaleLowerCase())\n\n if (sortA !== sortB) {\n if (!isNaN(sortA) && !isNaN(sortB)) return Number(sortA) - Number(sortB)\n return stringCollator.compare(sortA, sortB)\n }\n }\n\n return 0\n })\n}\n\nexport function defaultFilter (value: any, search: string | null, item: any) {\n return value != null &&\n search != null &&\n typeof value !== 'boolean' &&\n value.toString().toLocaleLowerCase().indexOf(search.toLocaleLowerCase()) !== -1\n}\n\nexport function searchItems<T extends any = any> (items: T[], search: string): T[] {\n if (!search) return items\n search = search.toString().toLowerCase()\n if (search.trim() === '') return items\n\n return items.filter((item: any) => Object.keys(item).some(key => defaultFilter(getObjectValueByPath(item, key), search, item)))\n}\n\nexport function debounce (fn: Function, delay: number) {\n let timeoutId = 0 as any\n return (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), delay)\n }\n}\n\nexport function throttle<T extends (...args: any[]) => any> (fn: T, limit: number) {\n let throttling = false\n return (...args: Parameters<T>): void | ReturnType<T> => {\n if (!throttling) {\n throttling = true\n setTimeout(() => throttling = false, limit)\n return fn(...args)\n }\n }\n}\n\ntype Writable<T> = {\n -readonly [P in keyof T]: T[P]\n}\n\n/**\n * Filters slots to only those starting with `prefix`, removing the prefix\n */\nexport function getPrefixedSlots (prefix: string, slots: Slots): Slots {\n return Object.keys(slots)\n .filter(k => k.startsWith(prefix))\n .reduce<Writable<Slots>>((obj, k) => {\n obj[k.replace(prefix, '')] = slots[k]\n return obj\n }, {})\n}\n\nexport function clamp (value: number, min = 0, max = 1) {\n return Math.max(min, Math.min(max, value))\n}\n\nexport function padEnd (str: string, length: number, char = '0') {\n return str + char.repeat(Math.max(0, length - str.length))\n}\n\nexport function chunk (str: string, size = 1) {\n const chunked: string[] = []\n let index = 0\n while (index < str.length) {\n chunked.push(str.substr(index, size))\n index += size\n }\n return chunked\n}\n\nexport function humanReadableFileSize (bytes: number, base: 1000 | 1024 = 1000): string {\n if (bytes < base) {\n return `${bytes} B`\n }\n\n const prefix = base === 1024 ? ['Ki', 'Mi', 'Gi'] : ['k', 'M', 'G']\n let unit = -1\n while (Math.abs(bytes) >= base && unit < prefix.length - 1) {\n bytes /= base\n ++unit\n }\n return `${bytes.toFixed(1)} ${prefix[unit]}B`\n}\n\nexport function camelizeObjectKeys (obj: Record<string, any> | null | undefined) {\n if (!obj) return {}\n\n return Object.keys(obj).reduce((o: any, key: string) => {\n o[camelize(key)] = obj[key]\n return o\n }, {})\n}\n\nexport function mergeDeep (\n source: Record<string, any> = {},\n target: Record<string, any> = {},\n arrayFn?: (a: unknown[], b: unknown[]) => unknown[],\n) {\n const out: Record<string, any> = {}\n\n for (const key in source) {\n out[key] = source[key]\n }\n\n for (const key in target) {\n const sourceProperty = source[key]\n const targetProperty = target[key]\n\n // Only continue deep merging if\n // both properties are objects\n if (\n isObject(sourceProperty) &&\n isObject(targetProperty)\n ) {\n out[key] = mergeDeep(sourceProperty, targetProperty, arrayFn)\n\n continue\n }\n\n if (Array.isArray(sourceProperty) && Array.isArray(targetProperty) && arrayFn) {\n out[key] = arrayFn(sourceProperty, targetProperty)\n\n continue\n }\n\n out[key] = targetProperty\n }\n\n return out\n}\n\nexport function fillArray<T> (length: number, obj: T) {\n return Array(length).fill(obj)\n}\n\nexport function getUid () {\n return getUid._uid++\n}\ngetUid._uid = 0\n\nexport function flattenFragments (nodes: VNode[]): VNode[] {\n return nodes.map(node => {\n if (node.type === Fragment) {\n return flattenFragments(node.children as VNode[])\n } else {\n return node\n }\n }).flat()\n}\n\nexport const randomHexColor = () => {\n const n = (Math.random() * 0xfffff * 1000000).toString(16)\n return '#' + n.slice(0, 6)\n}\n\nexport function toKebabCase (str = '') {\n return str\n .replace(/[^a-z]/gi, '-')\n .replace(/\\B([A-Z])/g, '-$1')\n .toLowerCase()\n}\n\nexport type MaybeRef<T> = T | Ref<T>\n\nexport function findChildren (vnode?: VNodeChild): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') {\n return []\n }\n\n if (Array.isArray(vnode)) {\n return vnode\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children\n .map(child => findChildren(child))\n .filter(v => v)\n .flat(1)\n } else if (vnode.component) {\n return [vnode.component, ...findChildren(vnode.component?.subTree)]\n .filter(v => v)\n .flat(1)\n }\n\n return []\n}\n\nexport function findChildrenWithProvide (\n key: InjectionKey<any> | symbol,\n vnode?: VNodeChild,\n): ComponentInternalInstance[] {\n if (!vnode || typeof vnode !== 'object') return []\n\n if (Array.isArray(vnode)) {\n return vnode.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (Array.isArray(vnode.children)) {\n return vnode.children.map(child => findChildrenWithProvide(key, child)).flat(1)\n } else if (vnode.component) {\n if (Object.getOwnPropertySymbols(vnode.component.provides).includes(key as symbol)) {\n return [vnode.component]\n } else if (vnode.component.subTree) {\n return findChildrenWithProvide(key, vnode.component.subTree).flat(1)\n }\n }\n\n return []\n}\n\nexport class CircularBuffer<T = never> {\n readonly #arr: Array<T> = []\n #pointer = 0\n\n constructor (public readonly size: number) {}\n\n push (val: T) {\n this.#arr[this.#pointer] = val\n this.#pointer = (this.#pointer + 1) % this.size\n }\n\n values (): T[] {\n return this.#arr.slice(this.#pointer).concat(this.#arr.slice(0, this.#pointer))\n }\n}\n\nexport type UnionToIntersection<U> =\n (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never\n\nexport function getEventCoordinates (e: MouseEvent | TouchEvent) {\n if ('touches' in e) {\n return { clientX: e.touches[0].clientX, clientY: e.touches[0].clientY }\n }\n\n return { clientX: e.clientX, clientY: e.clientY }\n}\n","import type { ColorInt, XYZ } from '../colorUtils'\nimport { clamp } from '../../util/helpers'\n\n// For converting XYZ to sRGB\nconst srgbForwardMatrix = [\n [3.2406, -1.5372, -0.4986],\n [-0.9689, 1.8758, 0.0415],\n [0.0557, -0.2040, 1.0570],\n]\n\n// Forward gamma adjust\nconst srgbForwardTransform = (C: number): number => (\n C <= 0.0031308\n ? C * 12.92\n : 1.055 * C ** (1 / 2.4) - 0.055\n)\n\n// For converting sRGB to XYZ\nconst srgbReverseMatrix = [\n [0.4124, 0.3576, 0.1805],\n [0.2126, 0.7152, 0.0722],\n [0.0193, 0.1192, 0.9505],\n]\n\n// Reverse gamma adjust\nconst srgbReverseTransform = (C: number): number => (\n C <= 0.04045\n ? C / 12.92\n : ((C + 0.055) / 1.055) ** 2.4\n)\n\nexport function fromXYZ (xyz: XYZ): ColorInt {\n const rgb = Array(3)\n const transform = srgbForwardTransform\n const matrix = srgbForwardMatrix\n\n // Matrix transform, then gamma adjustment\n for (let i = 0; i < 3; ++i) {\n rgb[i] = Math.round(clamp(transform(\n matrix[i][0] * xyz[0] +\n matrix[i][1] * xyz[1] +\n matrix[i][2] * xyz[2]\n )) * 255)\n }\n\n // Rescale back to [0, 255]\n return (rgb[0] << 16) + (rgb[1] << 8) + (rgb[2] << 0)\n}\n\nexport function toXYZ (rgb: ColorInt): XYZ {\n const xyz: XYZ = [0, 0, 0]\n const transform = srgbReverseTransform\n const matrix = srgbReverseMatrix\n\n // Rescale from [0, 255] to [0, 1] then adjust sRGB gamma to linear RGB\n const r = transform((rgb >> 16 & 0xff) / 255)\n const g = transform((rgb >> 8 & 0xff) / 255)\n const b = transform((rgb >> 0 & 0xff) / 255)\n\n // Matrix color space transform\n for (let i = 0; i < 3; ++i) {\n xyz[i] = matrix[i][0] * r + matrix[i][1] * g + matrix[i][2] * b\n }\n\n return xyz\n}\n","import type { LAB, XYZ } from '../colorUtils'\n\nconst delta = 0.20689655172413793 // 6÷29\n\nconst cielabForwardTransform = (t: number): number => (\n t > delta ** 3\n ? Math.cbrt(t)\n : (t / (3 * delta ** 2)) + 4 / 29\n)\n\nconst cielabReverseTransform = (t: number): number => (\n t > delta\n ? t ** 3\n : (3 * delta ** 2) * (t - 4 / 29)\n)\n\nexport function fromXYZ (xyz: XYZ): LAB {\n const transform = cielabForwardTransform\n const transformedY = transform(xyz[1])\n\n return [\n 116 * transformedY - 16,\n 500 * (transform(xyz[0] / 0.95047) - transformedY),\n 200 * (transformedY - transform(xyz[2] / 1.08883)),\n ]\n}\n\nexport function toXYZ (lab: LAB): XYZ {\n const transform = cielabReverseTransform\n const Ln = (lab[0] + 16) / 116\n return [\n transform(Ln + lab[1] / 500) * 0.95047,\n transform(Ln),\n transform(Ln - lab[2] / 200) * 1.08883,\n ]\n}\n","// Utilities\nimport { consoleWarn } from './console'\nimport { chunk, padEnd } from './helpers'\nimport * as sRGB from '@/util/color/transformSRGB'\nimport * as CIELAB from '@/util/color/transformCIELAB'\n\n// Types\nimport type { Colors } from '@/composables/theme'\n\nexport type ColorInt = number\nexport type XYZ = [number, number, number]\nexport type LAB = [number, number, number]\nexport type HSV = { h: number, s: number, v: number }\nexport type HSVA = HSV & { a: number }\nexport type RGB = { r: number, g: number, b: number }\nexport type RGBA = RGB & { a: number }\nexport type HSL = { h: number, s: number, l: number }\nexport type HSLA = HSL & { a: number }\nexport type Hex = string\nexport type Hexa = string\nexport type Color = string | number | {}\n\nexport function isCssColor (color?: string | null | false): boolean {\n return !!color && /^(#|var\\(--|(rgb|hsl)a?\\()/.test(color)\n}\n\nexport function colorToInt (color: Color): ColorInt {\n let rgb\n\n if (typeof color === 'number') {\n rgb = color\n } else if (typeof color === 'string') {\n let c = color.startsWith('#') ? color.substring(1) : color\n if (c.length === 3) {\n c = c.split('').map(char => char + char).join('')\n }\n if (c.length !== 6) {\n consoleWarn(`'${color}' is not a valid rgb color`)\n }\n rgb = parseInt(c, 16)\n } else {\n throw new TypeError(`Colors can only be numbers or strings, recieved ${color == null ? color : color.constructor.name} instead`)\n }\n\n if (rgb < 0) {\n consoleWarn(`Colors cannot be negative: '${color}'`)\n rgb = 0\n } else if (rgb > 0xffffff || isNaN(rgb)) {\n consoleWarn(`'${color}' is not a valid rgb color`)\n rgb = 0xffffff\n }\n\n return rgb\n}\n\nexport function classToHex (\n color: string,\n colors: Record<string, Record<string, string>>,\n currentTheme: Partial<Colors>,\n): string {\n const [colorName, colorModifier] = color\n .toString().trim().replace('-', '').split(' ', 2) as (string | undefined)[]\n\n let hexColor = ''\n if (colorName && colorName in colors) {\n if (colorModifier && colorModifier in colors[colorName]) {\n hexColor = colors[colorName][colorModifier]\n } else if ('base' in colors[colorName]) {\n hexColor = colors[colorName].base\n }\n } else if (colorName && colorName in currentTheme) {\n hexColor = currentTheme[colorName] as string\n }\n\n return hexColor\n}\n\nexport function intToHex (color: ColorInt): string {\n let hexColor: string = color.toString(16)\n\n if (hexColor.length < 6) hexColor = '0'.repeat(6 - hexColor.length) + hexColor\n\n return '#' + hexColor\n}\n\nexport function colorToHex (color: Color): string {\n return intToHex(colorToInt(color))\n}\n\n/**\n * Converts HSVA to RGBA. Based on formula from https://en.wikipedia.org/wiki/HSL_and_HSV\n *\n * @param color HSVA color as an array [0-360, 0-1, 0-1, 0-1]\n */\nexport function HSVAtoRGBA (hsva: HSVA): RGBA {\n const { h, s, v, a } = hsva\n const f = (n: number) => {\n const k = (n + (h / 60)) % 6\n return v - v * s * Math.max(Math.min(k, 4 - k, 1), 0)\n }\n\n const rgb = [f(5), f(3), f(1)].map(v => Math.round(v * 255))\n\n return { r: rgb[0], g: rgb[1], b: rgb[2], a }\n}\n\n/**\n * Converts RGBA to HSVA. Based on formula from https://en.wikipedia.org/wiki/HSL_and_HSV\n *\n * @param color RGBA color as an array [0-255, 0-255, 0-255, 0-1]\n */\nexport function RGBAtoHSVA (rgba: RGBA): HSVA {\n if (!rgba) return { h: 0, s: 1, v: 1, a: 1 }\n\n const r = rgba.r / 255\n const g = rgba.g / 255\n const b = rgba.b / 255\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n\n let h = 0\n\n if (max !== min) {\n if (max === r) {\n h = 60 * (0 + ((g - b) / (max - min)))\n } else if (max === g) {\n h = 60 * (2 + ((b - r) / (max - min)))\n } else if (max === b) {\n h = 60 * (4 + ((r - g) / (max - min)))\n }\n }\n\n if (h < 0) h = h + 360\n\n const s = max === 0 ? 0 : (max - min) / max\n const hsv = [h, s, max]\n\n return { h: hsv[0], s: hsv[1], v: hsv[2], a: rgba.a }\n}\n\nexport function HSVAtoHSLA (hsva: HSVA): HSLA {\n const { h, s, v, a } = hsva\n\n const l = v - (v * s / 2)\n\n const sprime = l === 1 || l === 0 ? 0 : (v - l) / Math.min(l, 1 - l)\n\n return { h, s: sprime, l, a }\n}\n\nexport function HSLAtoHSVA (hsl: HSLA): HSVA {\n const { h, s, l, a } = hsl\n\n const v = l + s * Math.min(l, 1 - l)\n\n const sprime = v === 0 ? 0 : 2 - (2 * l / v)\n\n return { h, s: sprime, v, a }\n}\n\nexport function RGBAtoCSS (rgba: RGBA): string {\n return `rgba(${rgba.r}, ${rgba.g}, ${rgba.b}, ${rgba.a})`\n}\n\nexport function HSVAtoCSS (hsva: HSVA): string {\n return RGBAtoCSS(HSVAtoRGBA(hsva))\n}\n\nexport function RGBtoCSS (rgba: RGBA): string {\n return RGBAtoCSS({ ...rgba, a: 1 })\n}\n\nexport function RGBAtoHex (rgba: RGBA): Hex {\n const toHex = (v: number) => {\n const h = Math.round(v).toString(16)\n return ('00'.substr(0, 2 - h.length) + h).toUpperCase()\n }\n\n return `#${[\n toHex(rgba.r),\n toHex(rgba.g),\n toHex(rgba.b),\n toHex(Math.round(rgba.a * 255)),\n ].join('')}`\n}\n\nexport function HexToRGBA (hex: Hex): RGBA {\n const rgba = chunk(hex.slice(1), 2).map((c: string) => parseInt(c, 16))\n\n return {\n r: rgba[0],\n g: rgba[1],\n b: rgba[2],\n a: Math.round((rgba[3] / 255) * 100) / 100,\n }\n}\n\nexport function HexToHSVA (hex: Hex): HSVA {\n const rgb = HexToRGBA(hex)\n return RGBAtoHSVA(rgb)\n}\n\nexport function HSVAtoHex (hsva: HSVA): Hex {\n return RGBAtoHex(HSVAtoRGBA(hsva))\n}\n\nexport function parseHex (hex: string): Hex {\n if (hex.startsWith('#')) {\n hex = hex.slice(1)\n }\n\n hex = hex.replace(/([^0-9a-f])/gi, 'F')\n\n if (hex.length === 3 || hex.length === 4) {\n hex = hex.split('').map(x => x + x).join('')\n }\n\n if (hex.length === 6) {\n hex = padEnd(hex, 8, 'F')\n } else {\n hex = padEnd(padEnd(hex, 6), 8, 'F')\n }\n\n return `#${hex}`.toUpperCase().substr(0, 9)\n}\n\nexport function parseGradient (\n gradient: string,\n colors: Record<string, Record<string, string>>,\n currentTheme: Partial<Colors>,\n) {\n return gradient.replace(/([a-z]+(\\s[a-z]+-[1-5])?)(?=$|,)/gi, x => {\n return classToHex(x, colors, currentTheme) || x\n }).replace(/(rgba\\()#[0-9a-f]+(?=,)/gi, x => {\n return 'rgba(' + Object.values(HexToRGBA(parseHex(x.replace(/rgba\\(/, '')))).slice(0, 3).join(',')\n })\n}\n\nexport function RGBtoInt (rgba: RGBA): ColorInt {\n return (rgba.r << 16) + (rgba.g << 8) + rgba.b\n}\n\nexport function colorToRGB (color: string) {\n const int = colorToInt(color)\n\n return {\n r: (int & 0xFF0000) >> 16,\n g: (int & 0xFF00) >> 8,\n b: (int & 0xFF),\n }\n}\n\nexport function lighten (value: ColorInt, amount: number): ColorInt {\n const lab = CIELAB.fromXYZ(sRGB.toXYZ(value))\n // TODO: why this false positive?\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n lab[0] = lab[0] + amount * 10\n\n return sRGB.fromXYZ(CIELAB.toXYZ(lab))\n}\n\nexport function darken (value: ColorInt, amount: number): ColorInt {\n const lab = CIELAB.fromXYZ(sRGB.toXYZ(value))\n lab[0] = lab[0] - amount * 10\n\n return sRGB.fromXYZ(CIELAB.toXYZ(lab))\n}\n\n/**\n * Calculate the relative luminance of a given color\n * @see https://www.w3.org/TR/WCAG20/#relativeluminancedef\n */\nexport function getLuma (color: Color) {\n const rgb = colorToInt(color)\n\n return sRGB.toXYZ(rgb)[1]\n}\n\n/**\n * Returns the contrast ratio (1-21) between two colors.\n * @see https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n */\nexport function getContrast (first: Color, second: Color) {\n const l1 = getLuma(first)\n const l2 = getLuma(second)\n\n const light = Math.max(l1, l2)\n const dark = Math.min(l1, l2)\n\n return (light + 0.05) / (dark + 0.05)\n}\n","// Utilities\nimport { computed, inject, provide, ref, unref } from 'vue'\nimport { mergeDeep } from '@/util/helpers'\n\n// Types\nimport type { ComputedRef, InjectionKey, Ref } from 'vue'\nimport type { MaybeRef } from '@/util'\n\nexport interface DefaultsInstance {\n [key: string]: undefined | Record<string, unknown>\n global?: Record<string, unknown>\n}\n\nexport type DefaultsOptions = Partial<DefaultsInstance>\n\nexport const DefaultsSymbol: InjectionKey<Ref<DefaultsInstance>> = Symbol.for('vuetify:defaults')\n\nexport function createDefaults (options?: DefaultsInstance): Ref<DefaultsInstance> {\n return ref(options ?? {})\n}\n\nexport function useDefaults () {\n const defaults = inject(DefaultsSymbol)\n\n if (!defaults) throw new Error('[Vuetify] Could not find defaults instance')\n\n return defaults\n}\n\nexport function provideDefaults (\n defaults?: MaybeRef<DefaultsInstance | undefined>,\n options?: {\n reset?: MaybeRef<number | string | undefined>\n root?: MaybeRef<boolean | undefined>\n scoped?: MaybeRef<boolean | undefined>\n }\n) {\n const injectedDefaults = useDefaults()\n const providedDefaults = ref(defaults)\n\n const newDefaults = computed(() => {\n const scoped = unref(options?.scoped)\n const reset = unref(options?.reset)\n const root = unref(options?.root)\n\n let properties = mergeDeep(providedDefaults.value, { prev: injectedDefaults.value })\n\n if (scoped) return properties\n\n if (reset || root) {\n const len = Number(reset || Infinity)\n\n for (let i = 0; i <= len; i++) {\n if (!properties.prev) break\n\n properties = properties.prev\n }\n\n return properties\n }\n\n return mergeDeep(properties.prev, properties)\n }) as ComputedRef<DefaultsInstance>\n\n provide(DefaultsSymbol, newDefaults)\n\n return newDefaults\n}\n","// Utils\nimport {\n defineComponent as _defineComponent,\n effectScope,\n getCurrentInstance,\n shallowReactive,\n shallowRef,\n toRaw,\n watch,\n watchEffect,\n} from 'vue'\nimport { consoleWarn } from '@/util/console'\nimport { toKebabCase } from '@/util/helpers'\nimport { provideDefaults, useDefaults } from '@/composables/defaults'\n\n// Types\nimport type {\n ComponentOptions,\n ComponentOptionsMixin,\n ComponentOptionsWithObjectProps,\n ComponentPropsOptions,\n ComputedOptions,\n DefineComponent,\n EffectScope,\n EmitsOptions,\n MethodOptions,\n VNode,\n VNodeChild,\n} from 'vue'\n\nfunction propIsDefined (vnode: VNode, prop: string) {\n return vnode.props?.hasOwnProperty(prop) ||\n vnode.props?.hasOwnProperty(toKebabCase(prop))\n}\n\nexport const defineComponent = (function defineComponent (options: ComponentOptions) {\n options._setup = options._setup ?? options.setup\n\n if (!options.name) {\n consoleWarn('The component is missing an explicit name, unable to generate default prop value')\n\n return options\n }\n\n if (options._setup) {\n options.props = options.props ?? {}\n options.props._as = String\n options.setup = function setup (props: Record<string, any>, ctx) {\n const vm = getCurrentInstance()!\n const defaults = useDefaults()\n\n const _subcomponentDefaults = shallowRef()\n const _props = shallowReactive({ ...toRaw(props) })\n watchEffect(() => {\n const globalDefaults = defaults.value.global\n const componentDefaults = defaults.value[props._as ?? options.name!]\n\n if (componentDefaults) {\n const subComponents = Object.entries(componentDefaults).filter(([key]) => key.startsWith('V'))\n if (subComponents.length) _subcomponentDefaults.value = Object.fromEntries(subComponents)\n }\n\n for (const prop of Object.keys(props)) {\n let newVal\n if (propIsDefined(vm.vnode, prop)) {\n newVal = props[prop]\n } else {\n newVal = componentDefaults?.[prop] ?? globalDefaults?.[prop] ?? props[prop]\n }\n if (_props[prop] !== newVal) {\n _props[prop] = newVal\n }\n }\n })\n\n const setupBindings = options._setup(_props, ctx)\n\n let scope: EffectScope\n watch(_subcomponentDefaults, (val, oldVal) => {\n if (!val && scope) scope.stop()\n else if (val && !oldVal) {\n scope = effectScope()\n scope.run(() => {\n provideDefaults(val)\n })\n }\n }, { immediate: true })\n\n return setupBindings\n }\n }\n\n return options\n}) as unknown as typeof _defineComponent\n\ntype ToListeners<T extends string | number | symbol> = { [K in T]: K extends `on${infer U}` ? Uncapitalize<U> : K }[T]\nexport type SlotsToProps<T extends Record<string, Slot>> = {\n $children: () => (T['default'] | VNodeChild | { [K in keyof T]?: T[K] })\n 'v-slots': new () => { [K in keyof T]?: T[K] | false }\n}/* & { // TODO: individual slots are never converted from the constructor type\n [K in keyof T as `v-slot:${K & string}`]?: new () => (T[K] | false)\n} */\n\ntype Slot<T extends any[] = any[]> = (...args: T) => VNodeChild\nexport type MakeSlots<T extends Record<string, any[]>> = {\n [K in keyof T]?: Slot<T[K]>\n}\n\nexport function genericComponent<T extends (new () => {\n $slots?: Record<string, Slot>\n})> (exposeDefaults = true): <\n PropsOptions extends Readonly<ComponentPropsOptions>,\n RawBindings,\n D,\n C extends ComputedOptions = {},\n M extends MethodOptions = {},\n Mixin extends ComponentOptionsMixin = ComponentOptionsMixin,\n Extends extends ComponentOptionsMixin = ComponentOptionsMixin,\n E extends EmitsOptions = Record<string, any>,\n EE extends string = string,\n I = InstanceType<T>,\n Base = DefineComponent<\n (I extends Record<'$props', any> ? Omit<PropsOptions, keyof I['$props']> : PropsOptions) & (\n I extends Record<'$slots', any>\n ? SlotsToProps<I['$slots']>\n : {}\n ),\n RawBindings,\n D,\n C,\n M,\n Mixin,\n Extends,\n E extends any[] ? E : I extends Record<'$props', any> ? Omit<E, ToListeners<keyof I['$props']>> : E,\n EE\n >\n>(options: ComponentOptionsWithObjectProps<PropsOptions, RawBindings, D, C, M, Mixin, Extends, E, EE>) => Base & T {\n return options => (exposeDefaults ? defineComponent : _defineComponent)(options) as any\n}\n","import { camelize, capitalize, h } from 'vue'\nimport { defineComponent } from './defineComponent'\n\nexport function createSimpleFunctional (\n klass: string,\n tag = 'div',\n name?: string\n) {\n return defineComponent({\n name: name ?? capitalize(camelize(klass.replace(/__/g, '-'))),\n\n props: {\n tag: {\n type: String,\n default: tag,\n },\n },\n\n setup (props, { slots }) {\n return () => h(props.tag, {\n class: klass,\n }, slots.default?.())\n },\n })\n}\n","/**\n * Returns:\n * - 'null' if the node is not attached to the DOM\n * - the root node (HTMLDocument | ShadowRoot) otherwise\n */\nexport function attachedRoot (node: Node): null | HTMLDocument | ShadowRoot {\n /* istanbul ignore next */\n if (typeof node.getRootNode !== 'function') {\n // Shadow DOM not supported (IE11), lets find the root of this node\n while (node.parentNode) node = node.parentNode\n\n // The root parent is the document if the node is attached to the DOM\n if (node !== document) return null\n\n return document\n }\n\n const root = node.getRootNode()\n\n // The composed root node is the document if the node is attached to the DOM\n if (root !== document && root.getRootNode({ composed: true }) !== document) return null\n\n return root as HTMLDocument | ShadowRoot\n}\n","export const standardEasing = 'cubic-bezier(0.4, 0, 0.2, 1)'\nexport const deceleratedEasing = 'cubic-bezier(0.0, 0, 0.2, 1)' // Entering\nexport const acceleratedEasing = 'cubic-bezier(0.4, 0, 1, 1)' // Leaving\n","// Utilities\nimport { getCurrentInstance as _getCurrentInstance } from 'vue'\nimport { toKebabCase } from '@/util/helpers'\n\nexport function getCurrentInstance (name: string, message?: string) {\n const vm = _getCurrentInstance()\n\n if (!vm) {\n throw new Error(`[Vuetify] ${name} ${message || 'must be called from inside a setup function'}`)\n }\n\n return vm\n}\n\nexport function getCurrentInstanceName (name = 'composables') {\n return toKebabCase(getCurrentInstance(name).type?.name)\n}\n","export function getScrollParent (el?: HTMLElement) {\n while (el) {\n if (hasScrollbar(el)) return el\n el = el.parentElement!\n }\n\n return document.scrollingElement as HTMLElement\n}\n\nexport function getScrollParents (el?: HTMLElement) {\n const elements: HTMLElement[] = []\n while (el) {\n if (hasScrollbar(el)) elements.push(el)\n el = el.parentElement!\n }\n\n return elements\n}\n\nexport function hasScrollbar (el?: Element | null) {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return false\n\n const style = window.getComputedStyle(el)\n return style.overflowY === 'scroll' || (style.overflowY === 'auto' && el.scrollHeight > el.clientHeight)\n}\n","export const IN_BROWSER = typeof window !== 'undefined'\nexport const SUPPORTS_INTERSECTION = IN_BROWSER && 'IntersectionObserver' in window\nexport const SUPPORTS_TOUCH = IN_BROWSER && ('ontouchstart' in window || window.navigator.maxTouchPoints > 0)\nexport const SUPPORTS_FOCUS_VISIBLE = IN_BROWSER && CSS.supports('selector(:focus-visible)')\n","export function isFixedPosition (el?: HTMLElement) {\n while (el) {\n if (window.getComputedStyle(el).position === 'fixed') {\n return true\n }\n el = el.offsetParent as HTMLElement\n }\n return false\n}\n","import type { ComponentObjectPropsOptions, Prop, PropType } from 'vue'\n\n/**\n * Creates a factory function for props definitions.\n * This is used to define props in a composable then override\n * default values in an implementing component.\n *\n * @example Simplified signature\n * (props: Props) => (defaults?: Record<keyof props, any>) => Props\n *\n * @example Usage\n * const makeProps = propsFactory({\n * foo: String,\n * })\n *\n * defineComponent({\n * props: {\n * ...makeProps({\n * foo: 'a',\n * }),\n * },\n * setup (props) {\n * // would be \"string | undefined\", now \"string\" because a default has been provided\n * props.foo\n * },\n * }\n */\n\nexport function propsFactory<\n PropsOptions extends ComponentObjectPropsOptions\n> (props: PropsOptions, source?: string) {\n return <Defaults extends PartialKeys<PropsOptions> = {}>(\n defaults?: Defaults\n ): AppendDefault<PropsOptions, Defaults> => {\n return Object.keys(props).reduce<any>((obj, prop) => {\n const isObjectDefinition = typeof props[prop] === 'object' && props[prop] != null && !Array.isArray(props[prop])\n const definition = isObjectDefinition ? props[prop] : { type: props[prop] }\n\n if (defaults && prop in defaults) {\n obj[prop] = {\n ...definition,\n default: defaults[prop],\n }\n } else {\n obj[prop] = definition\n }\n\n if (source) {\n obj[prop].source = source\n }\n\n return obj\n }, {})\n }\n}\n\ntype AppendDefault<T extends ComponentObjectPropsOptions, D extends PartialKeys<T>> = {\n [P in keyof T]-?: unknown extends D[P]\n ? T[P]\n : T[P] extends Record<string, unknown>\n ? Omit<T[P], 'type' | 'default'> & {\n type: PropType<MergeDefault<T[P], D[P]>>\n default: MergeDefault<T[P], D[P]>\n }\n : {\n type: PropType<MergeDefault<T[P], D[P]>>\n default: MergeDefault<T[P], D[P]>\n }\n}\n\ntype MergeDefault<T, D> = unknown extends D ? InferPropType<T> : (NonNullable<InferPropType<T>> | D)\n\n/**\n * Like `Partial<T>` but doesn't care what the value is\n */\ntype PartialKeys<T> = { [P in keyof T]?: unknown }\n\n// Copied from Vue\ntype InferPropType<T> = T extends null\n ? any // null & true would fail to infer\n : T extends { type: null | true }\n ? any // As TS issue https://github.com/Microsoft/TypeScript/issues/14829 // somehow `ObjectConstructor` when inferred from { (): T } becomes `any` // `BooleanConstructor` when inferred from PropConstructor(with PropMethod) becomes `Boolean`\n : T extends ObjectConstructor | { type: ObjectConstructor }\n ? Record<string, any>\n : T extends BooleanConstructor | { type: BooleanConstructor }\n ? boolean\n : T extends Prop<infer V, infer D> ? (unknown extends V ? D : V) : T\n","// Utilities\nimport { getCurrentInstance } from './getCurrentInstance'\n\n// Types\nimport type { VNode } from 'vue'\n\nexport function useRender (render: () => VNode): void {\n const vm = getCurrentInstance('useRender') as any\n vm.render = render\n}\n","/**\n * WCAG 3.0 APCA perceptual contrast algorithm from https://github.com/Myndex/SAPC-APCA\n * @licence https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document\n * @see https://www.w3.org/WAI/GL/task-forces/silver/wiki/Visual_Contrast_of_Text_Subgroup\n */\n\n// MAGICAL NUMBERS\n\n// sRGB Conversion to Relative Luminance (Y)\n\n// Transfer Curve (aka \"Gamma\") for sRGB linearization\n// Simple power curve vs piecewise described in docs\n// Essentially, 2.4 best models actual display\n// characteristics in combination with the total method\nconst mainTRC = 2.4\n\nconst Rco = 0.2126729 // sRGB Red Coefficient (from matrix)\nconst Gco = 0.7151522 // sRGB Green Coefficient (from matrix)\nconst Bco = 0.0721750 // sRGB Blue Coefficient (from matrix)\n\n// For Finding Raw SAPC Contrast from Relative Luminance (Y)\n\n// Constants for SAPC Power Curve Exponents\n// One pair for normal text, and one for reverse\n// These are the \"beating heart\" of SAPC\nconst normBG = 0.55\nconst normTXT = 0.58\nconst revTXT = 0.57\nconst revBG = 0.62\n\n// For Clamping and Scaling Values\n\nconst blkThrs = 0.03 // Level that triggers the soft black clamp\nconst blkClmp = 1.45 // Exponent for the soft black clamp curve\nconst deltaYmin = 0.0005 // Lint trap\nconst scaleBoW = 1.25 // Scaling for dark text on light\nconst scaleWoB = 1.25 // Scaling for light text on dark\nconst loConThresh = 0.078 // Threshold for new simple offset scale\nconst loConFactor = 12.82051282051282 // = 1/0.078,\nconst loConOffset = 0.06 // The simple offset\nconst loClip = 0.001 // Output clip (lint trap #2)\n\nexport function APCAcontrast (text: number, background: number) {\n // Linearize sRGB\n const Rtxt = ((text >> 16 & 0xff) / 255) ** mainTRC\n const Gtxt = ((text >> 8 & 0xff) / 255) ** mainTRC\n const Btxt = ((text >> 0 & 0xff) / 255) ** mainTRC\n\n const Rbg = ((background >> 16 & 0xff) / 255) ** mainTRC\n const Gbg = ((background >> 8 & 0xff) / 255) ** mainTRC\n const Bbg = ((background >> 0 & 0xff) / 255) ** mainTRC\n\n // Apply the standard coefficients and sum to Y\n let Ytxt = (Rtxt * Rco) + (Gtxt * Gco) + (Btxt * Bco)\n let Ybg = (Rbg * Rco) + (Gbg * Gco) + (Bbg * Bco)\n\n // Soft clamp Y when near black.\n // Now clamping all colors to prevent crossover errors\n if (Ytxt <= blkThrs) Ytxt += (blkThrs - Ytxt) ** blkClmp\n if (Ybg <= blkThrs) Ybg += (blkThrs - Ybg) ** blkClmp\n\n // Return 0 Early for extremely low ∆Y (lint trap #1)\n if (Math.abs(Ybg - Ytxt) < deltaYmin) return 0.0\n\n // SAPC CONTRAST\n\n let outputContrast: number // For weighted final values\n if (Ybg > Ytxt) {\n // For normal polarity, black text on white\n // Calculate the SAPC contrast value and scale\n\n const SAPC = ((Ybg ** normBG) - (Ytxt ** normTXT)) * scaleBoW\n\n // NEW! SAPC SmoothScale™\n // Low Contrast Smooth Scale Rollout to prevent polarity reversal\n // and also a low clip for very low contrasts (lint trap #2)\n // much of this is for very low contrasts, less than 10\n // therefore for most reversing needs, only loConOffset is important\n outputContrast =\n (SAPC < loClip) ? 0.0\n : (SAPC < loConThresh) ? SAPC - SAPC * loConFactor * loConOffset\n : SAPC - loConOffset\n } else {\n // For reverse polarity, light text on dark\n // WoB should always return negative value.\n\n const SAPC = ((Ybg ** revBG) - (Ytxt ** revTXT)) * scaleWoB\n\n outputContrast =\n (SAPC > -loClip) ? 0.0\n : (SAPC > -loConThresh) ? SAPC - SAPC * loConFactor * loConOffset\n : SAPC + loConOffset\n }\n\n return outputContrast * 100\n}\n","// Utilities\nimport {\n computed,\n inject,\n provide,\n reactive,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n colorToInt,\n colorToRGB,\n createRange,\n darken,\n getCurrentInstance,\n getLuma,\n IN_BROWSER,\n intToHex,\n lighten,\n mergeDeep,\n propsFactory,\n} from '@/util'\nimport { APCAcontrast } from '@/util/color/APCA'\n\n// Types\nimport type { App, DeepReadonly, InjectionKey, Ref } from 'vue'\nimport type { HeadClient } from '@vueuse/head'\n\ntype DeepPartial<T> = T extends object ? { [P in keyof T]?: DeepPartial<T[P]> } : T\n\nexport type ThemeOptions = false | {\n defaultTheme?: string\n variations?: false | VariationsOptions\n themes?: Record<string, ThemeDefinition>\n}\nexport type ThemeDefinition = DeepPartial<InternalThemeDefinition>\n\ninterface InternalThemeOptions {\n isDisabled: boolean\n defaultTheme: string\n variations: false | VariationsOptions\n themes: Record<string, InternalThemeDefinition>\n}\n\ninterface VariationsOptions {\n colors: string[]\n lighten: number\n darken: number\n}\n\ninterface InternalThemeDefinition {\n dark: boolean\n colors: Colors\n variables: Record<string, string | number>\n}\n\nexport interface Colors extends BaseColors, OnColors {\n [key: string]: string\n}\n\ninterface BaseColors {\n background: string\n surface: string\n primary: string\n secondary: string\n success: string\n warning: string\n error: string\n info: string\n}\n\ninterface OnColors {\n 'on-background': string\n 'on-surface': string\n 'on-primary': string\n 'on-secondary': string\n 'on-success': string\n 'on-warning': string\n 'on-error': string\n 'on-info': string\n}\n\nexport interface ThemeInstance {\n isDisabled: boolean\n name: Ref<string>\n themes: Ref<Record<string, InternalThemeDefinition>>\n\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n readonly computedThemes: DeepReadonly<Ref<Record<string, InternalThemeDefinition>>>\n\n themeClasses: Readonly<Ref<string | undefined>>\n styles: Readonly<Ref<string>>\n}\n\nexport const ThemeSymbol: InjectionKey<ThemeInstance> = Symbol.for('vuetify:theme')\n\nexport const makeThemeProps = propsFactory({\n theme: String,\n}, 'theme')\n\nconst defaultThemeOptions: Exclude<ThemeOptions, false> = {\n defaultTheme: 'light',\n variations: { colors: [], lighten: 0, darken: 0 },\n themes: {\n light: {\n dark: false,\n colors: {\n background: '#FFFFFF',\n surface: '#FFFFFF',\n 'surface-variant': '#424242',\n 'on-surface-variant': '#EEEEEE',\n primary: '#6200EE',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC6',\n 'secondary-darken-1': '#018786',\n error: '#B00020',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#000000',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 0.87,\n 'medium-emphasis-opacity': 0.60,\n 'disabled-opacity': 0.38,\n 'idle-opacity': 0.04,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.12,\n 'dragged-opacity': 0.08,\n 'kbd-background-color': '#212529',\n 'kbd-color': '#FFFFFF',\n 'code-background-color': '#C2C2C2',\n },\n },\n dark: {\n dark: true,\n colors: {\n background: '#121212',\n surface: '#212121',\n 'surface-variant': '#BDBDBD',\n 'on-surface-variant': '#424242',\n primary: '#BB86FC',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC5',\n 'secondary-darken-1': '#03DAC5',\n error: '#CF6679',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#FFFFFF',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 0.87,\n 'medium-emphasis-opacity': 0.60,\n 'disabled-opacity': 0.38,\n 'idle-opacity': 0.10,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.16,\n 'dragged-opacity': 0.08,\n 'kbd-background-color': '#212529',\n 'kbd-color': '#FFFFFF',\n 'code-background-color': '#B7B7B7',\n },\n },\n },\n}\n\nfunction parseThemeOptions (options: ThemeOptions = defaultThemeOptions): InternalThemeOptions {\n if (!options) return { ...defaultThemeOptions, isDisabled: true } as InternalThemeOptions\n\n const themes: Record<string, InternalThemeDefinition> = {}\n for (const [key, theme] of Object.entries(options.themes ?? {})) {\n const defaultTheme = theme.dark\n ? defaultThemeOptions.themes?.dark\n : defaultThemeOptions.themes?.light\n themes[key] = mergeDeep(defaultTheme, theme) as InternalThemeDefinition\n }\n\n return mergeDeep(\n defaultThemeOptions,\n { ...options, themes },\n ) as InternalThemeOptions\n}\n\n// Composables\nexport function createTheme (app: App, options?: ThemeOptions): ThemeInstance {\n const head = app._context.provides.usehead as HeadClient | undefined\n const parsedOptions = reactive(parseThemeOptions(options))\n const name = ref(parsedOptions.defaultTheme)\n const themes = ref(parsedOptions.themes)\n\n const computedThemes = computed(() => {\n const acc: Record<string, InternalThemeDefinition> = {}\n for (const [name, original] of Object.entries(themes.value)) {\n const theme: InternalThemeDefinition = acc[name] = {\n ...original,\n colors: {\n ...original.colors,\n },\n }\n\n if (parsedOptions.variations) {\n for (const name of parsedOptions.variations.colors) {\n const color = theme.colors[name]\n for (const variation of (['lighten', 'darken'] as const)) {\n const fn = variation === 'lighten' ? lighten : darken\n for (const amount of createRange(parsedOptions.variations[variation], 1)) {\n theme.colors[`${name}-${variation}-${amount}`] = intToHex(fn(colorToInt(color), amount))\n }\n }\n }\n }\n\n for (const color of Object.keys(theme.colors)) {\n if (/on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue\n\n const onColor = `on-${color}` as keyof OnColors\n const colorVal = colorToInt(theme.colors[color]!)\n\n const blackContrast = Math.abs(APCAcontrast(0, colorVal))\n const whiteContrast = Math.abs(APCAcontrast(0xffffff, colorVal))\n\n // TODO: warn about poor color selections\n // const contrastAsText = Math.abs(APCAcontrast(colorVal, colorToInt(theme.colors.background)))\n // const minContrast = Math.max(blackContrast, whiteContrast)\n // if (minContrast < 60) {\n // consoleInfo(`${key} theme color ${color} has poor contrast (${minContrast.toFixed()}%)`)\n // } else if (contrastAsText < 60 && !['background', 'surface'].includes(color)) {\n // consoleInfo(`${key} theme color ${color} has poor contrast as text (${contrastAsText.toFixed()}%)`)\n // }\n\n // Prefer white text if both have an acceptable contrast ratio\n theme.colors[onColor] = whiteContrast > Math.min(blackContrast, 50) ? '#fff' : '#000'\n }\n }\n\n return acc\n })\n const current = computed(() => computedThemes.value[name.value])\n\n const styles = computed(() => {\n const lines: string[] = []\n\n if (current.value.dark) {\n createCssClass(lines, ':root', ['color-scheme: dark'])\n }\n\n for (const [themeName, theme] of Object.entries(computedThemes.value)) {\n const { variables, dark } = theme\n\n createCssClass(lines, `.v-theme--${themeName}`, [\n `color-scheme: ${dark ? 'dark' : 'normal'}`,\n ...genCssVariables(theme),\n ...Object.keys(variables).map(key => {\n const value = variables[key]\n const color = typeof value === 'string' && value.startsWith('#') ? colorToRGB(value) : undefined\n const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined\n\n return `--v-${key}: ${rgb ?? value}`\n }),\n ])\n }\n\n const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)))\n for (const key of colors) {\n if (/on-[a-z]/.test(key)) {\n createCssClass(lines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n } else {\n createCssClass(lines, `.bg-${key}`, [\n `--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`,\n `background: rgb(var(--v-theme-${key})) !important`,\n `color: rgb(var(--v-theme-on-${key})) !important`,\n ])\n createCssClass(lines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n createCssClass(lines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`])\n }\n }\n\n return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('')\n })\n\n if (head) {\n head.addHeadObjs(computed(() => ({\n style: [{\n children: styles.value,\n type: 'text/css',\n id: 'vuetify-theme-stylesheet',\n }],\n })))\n\n if (IN_BROWSER) {\n watchEffect(() => head.updateDOM())\n }\n } else {\n let styleEl: HTMLStyleElement\n\n watch(styles, updateStyles, { immediate: true })\n function updateStyles () {\n if (parsedOptions.isDisabled) return\n\n if (typeof document !== 'undefined' && !styleEl) {\n const el = document.createElement('style')\n el.type = 'text/css'\n el.id = 'vuetify-theme-stylesheet'\n\n styleEl = el\n document.head.appendChild(styleEl)\n }\n\n if (styleEl) styleEl.innerHTML = styles.value\n }\n }\n\n const themeClasses = computed(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`)\n\n return {\n isDisabled: parsedOptions.isDisabled,\n name,\n themes,\n current,\n computedThemes,\n themeClasses,\n styles,\n }\n}\n\nexport function provideTheme (props: { theme?: string }) {\n getCurrentInstance('provideTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n const name = computed<string>(() => {\n return props.theme ?? theme?.name.value\n })\n\n const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`)\n\n const newTheme: ThemeInstance = {\n ...theme,\n name,\n themeClasses,\n }\n\n provide(ThemeSymbol, newTheme)\n\n return newTheme\n}\n\nexport function useTheme () {\n getCurrentInstance('useTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n return theme\n}\n\nfunction createCssClass (lines: string[], selector: string, content: string[]) {\n lines.push(\n `${selector} {\\n`,\n ...content.map(line => ` ${line};\\n`),\n '}\\n',\n )\n}\n\nfunction genCssVariables (theme: InternalThemeDefinition) {\n const lightOverlay = theme.dark ? 2 : 1\n const darkOverlay = theme.dark ? 1 : 2\n\n const variables: string[] = []\n for (const [key, value] of Object.entries(theme.colors)) {\n const rgb = colorToRGB(value)\n variables.push(`--v-theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`)\n if (!key.startsWith('on-')) {\n variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`)\n }\n }\n\n return variables\n}\n","// Utilities\nimport { onBeforeUnmount, readonly, ref, watch } from 'vue'\nimport type { DeepReadonly, Ref } from 'vue'\n\n// Globals\nimport { IN_BROWSER } from '@/util/globals'\n\ninterface ResizeState {\n resizeRef: Ref<Element | undefined>\n contentRect: DeepReadonly<Ref<DOMRectReadOnly | undefined>>\n}\n\nexport function useResizeObserver (callback?: ResizeObserverCallback): ResizeState {\n const resizeRef = ref<Element>()\n const contentRect = ref<DOMRectReadOnly>()\n\n if (IN_BROWSER) {\n const observer = new ResizeObserver((entries: ResizeObserverEntry[]) => {\n callback?.(entries, observer)\n\n if (!entries.length) return\n\n contentRect.value = entries[0].contentRect\n })\n\n onBeforeUnmount(() => {\n observer.disconnect()\n })\n\n watch(resizeRef, (newValue, oldValue) => {\n if (oldValue) {\n observer.unobserve(oldValue)\n contentRect.value = undefined\n }\n\n if (newValue) observer.observe(newValue)\n }, {\n flush: 'post',\n })\n }\n\n return {\n resizeRef,\n contentRect: readonly(contentRect),\n }\n}\n","// Composables\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport {\n computed,\n inject,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n onMounted,\n provide,\n reactive,\n ref,\n} from 'vue'\nimport { convertToUnit, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, CSSProperties, InjectionKey, Prop, Ref } from 'vue'\n\ntype Position = 'top' | 'left' | 'right' | 'bottom'\n\ntype LayoutItem = {\n id: string\n top: number\n bottom: number\n left: number\n right: number\n size: number\n}\n\ninterface LayoutProvide {\n register: (\n vm: ComponentInternalInstance,\n options: {\n id: string\n order: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string | undefined>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n }\n ) => {\n layoutItemStyles: Ref<CSSProperties>\n layoutItemScrimStyles: Ref<CSSProperties>\n zIndex: Ref<number>\n }\n unregister: (id: string) => void\n mainStyles: Ref<CSSProperties>\n getLayoutItem: (id: string) => LayoutItem | undefined\n items: Ref<LayoutItem[]>\n layoutRect: Ref<DOMRectReadOnly | undefined>\n rootZIndex: Ref<number>\n}\n\nexport const VuetifyLayoutKey: InjectionKey<LayoutProvide> = Symbol.for('vuetify:layout')\nexport const VuetifyLayoutItemKey: InjectionKey<{ id: string }> = Symbol.for('vuetify:layout-item')\n\nconst ROOT_ZINDEX = 1000\n\nexport const makeLayoutProps = propsFactory({\n overlaps: {\n type: Array,\n default: () => ([]),\n } as Prop<string[]>,\n fullHeight: Boolean,\n}, 'layout')\n\n// Composables\nexport const makeLayoutItemProps = propsFactory({\n name: {\n type: String,\n },\n order: {\n type: [Number, String],\n default: 0,\n },\n absolute: Boolean,\n}, 'layout-item')\n\nexport function useLayout () {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n return layout\n}\n\nexport function useLayoutItem (options: {\n id: string | undefined\n order: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string | undefined>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n}) {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n const id = options.id ?? `layout-item-${getUid()}`\n\n const vm = getCurrentInstance('useLayoutItem')\n\n provide(VuetifyLayoutItemKey, { id })\n\n const isKeptAlive = ref(false)\n onDeactivated(() => isKeptAlive.value = true)\n onActivated(() => isKeptAlive.value = false)\n\n const {\n layoutItemStyles,\n layoutItemScrimStyles,\n } = layout.register(vm, {\n ...options,\n active: computed(() => isKeptAlive.value ? false : options.active.value),\n id,\n })\n\n onBeforeUnmount(() => layout.unregister(id))\n\n return { layoutItemStyles, layoutRect: layout.layoutRect, layoutItemScrimStyles }\n}\n\nconst generateLayers = (\n layout: string[],\n positions: Map<string, Ref<Position>>,\n layoutSizes: Map<string, Ref<number | string>>,\n activeItems: Map<string, Ref<boolean>>,\n) => {\n let previousLayer = { top: 0, left: 0, right: 0, bottom: 0 }\n const layers = [{ id: '', layer: { ...previousLayer } }]\n for (const id of layout) {\n const position = positions.get(id)\n const amount = layoutSizes.get(id)\n const active = activeItems.get(id)\n if (!position || !amount || !active) continue\n\n const layer = {\n ...previousLayer,\n [position.value]: parseInt(previousLayer[position.value], 10) + (active.value ? parseInt(amount.value, 10) : 0),\n }\n\n layers.push({\n id,\n layer,\n })\n\n previousLayer = layer\n }\n\n return layers\n}\n\nexport function createLayout (props: { overlaps?: string[], fullHeight?: boolean }) {\n const parentLayout = inject(VuetifyLayoutKey, null)\n const rootZIndex = computed(() => parentLayout ? parentLayout.rootZIndex.value - 100 : ROOT_ZINDEX)\n const registered = ref<string[]>([])\n const positions = reactive(new Map<string, Ref<Position>>())\n const layoutSizes = reactive(new Map<string, Ref<number | string>>())\n const priorities = reactive(new Map<string, Ref<number>>())\n const activeItems = reactive(new Map<string, Ref<boolean>>())\n const disabledTransitions = reactive(new Map<string, Ref<boolean>>())\n const { resizeRef, contentRect: layoutRect } = useResizeObserver()\n\n const computedOverlaps = computed(() => {\n const map = new Map<string, { position: Position, amount: number }>()\n const overlaps = props.overlaps ?? []\n for (const overlap of overlaps.filter(item => item.includes(':'))) {\n const [top, bottom] = overlap.split(':')\n if (!registered.value.includes(top) || !registered.value.includes(bottom)) continue\n\n const topPosition = positions.get(top)\n const bottomPosition = positions.get(bottom)\n const topAmount = layoutSizes.get(top)\n const bottomAmount = layoutSizes.get(bottom)\n\n if (!topPosition || !bottomPosition || !topAmount || !bottomAmount) continue\n\n map.set(bottom, { position: topPosition.value, amount: parseInt(topAmount.value, 10) })\n map.set(top, { position: bottomPosition.value, amount: -parseInt(bottomAmount.value, 10) })\n }\n\n return map\n })\n\n const layers = computed(() => {\n const uniquePriorities = [...new Set([...priorities.values()].map(p => p.value))].sort((a, b) => a - b)\n const layout = []\n for (const p of uniquePriorities) {\n const items = registered.value.filter(id => priorities.get(id)?.value === p)\n layout.push(...items)\n }\n return generateLayers(layout, positions, layoutSizes, activeItems)\n })\n\n const transitionsEnabled = computed(() => {\n return !Array.from(disabledTransitions.values()).some(ref => ref.value)\n })\n\n const mainStyles = computed<CSSProperties>(() => {\n const layer = layers.value[layers.value.length - 1].layer\n\n return {\n position: 'relative',\n paddingLeft: convertToUnit(layer.left),\n paddingRight: convertToUnit(layer.right),\n paddingTop: convertToUnit(layer.top),\n paddingBottom: convertToUnit(layer.bottom),\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n }\n })\n\n const items = computed(() => {\n return layers.value.slice(1).map(({ id }, index) => {\n const { layer } = layers.value[index]\n const size = layoutSizes.get(id)\n\n return {\n id,\n ...layer,\n size: Number(size!.value),\n }\n })\n })\n\n const getLayoutItem = (id: string) => {\n return items.value.find(item => item.id === id)\n }\n\n const rootVm = getCurrentInstance('createLayout')\n\n const isMounted = ref(false)\n onMounted(() => {\n isMounted.value = true\n })\n\n provide(VuetifyLayoutKey, {\n register: (\n vm: ComponentInternalInstance,\n {\n id,\n order,\n position,\n layoutSize,\n elementSize,\n active,\n disableTransitions,\n absolute,\n }\n ) => {\n priorities.set(id, order)\n positions.set(id, position)\n layoutSizes.set(id, layoutSize)\n activeItems.set(id, active)\n disableTransitions && disabledTransitions.set(id, disableTransitions)\n\n const instances = findChildrenWithProvide(VuetifyLayoutItemKey, rootVm?.vnode)\n const instanceIndex = instances.indexOf(vm)\n\n if (instanceIndex > -1) registered.value.splice(instanceIndex, 0, id)\n else registered.value.push(id)\n\n const index = computed(() => items.value.findIndex(i => i.id === id))\n const zIndex = computed(() => rootZIndex.value + (layers.value.length * 2) - (index.value * 2))\n\n const layoutItemStyles = computed<CSSProperties>(() => {\n const isHorizontal = position.value === 'left' || position.value === 'right'\n const isOppositeHorizontal = position.value === 'right'\n const isOppositeVertical = position.value === 'bottom'\n\n const styles = {\n [position.value]: 0,\n zIndex: zIndex.value,\n transform: `translate${isHorizontal ? 'X' : 'Y'}(${(active.value ? 0 : -110) * (isOppositeHorizontal || isOppositeVertical ? -1 : 1)}%)`,\n position: absolute.value || rootZIndex.value !== ROOT_ZINDEX ? 'absolute' : 'fixed',\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n } as const\n\n if (!isMounted.value) return styles\n\n if (index.value < 0) throw new Error(`Layout item \"${id}\" is missing`)\n\n const item = items.value[index.value]\n\n if (!item) throw new Error(`Could not find layout item \"${id}`)\n\n const overlap = computedOverlaps.value.get(id)\n if (overlap) {\n item[overlap.position] += overlap.amount\n }\n\n return {\n ...styles,\n height: isHorizontal ? `calc(100% - ${item.top}px - ${item.bottom}px)` : elementSize.value ? `${elementSize.value}px` : undefined,\n marginLeft: isOppositeHorizontal ? undefined : `${item.left}px`,\n marginRight: isOppositeHorizontal ? `${item.right}px` : undefined,\n marginTop: position.value !== 'bottom' ? `${item.top}px` : undefined,\n marginBottom: position.value !== 'top' ? `${item.bottom}px` : undefined,\n width: !isHorizontal ? `calc(100% - ${item.left}px - ${item.right}px)` : elementSize.value ? `${elementSize.value}px` : undefined,\n }\n })\n\n const layoutItemScrimStyles = computed<CSSProperties>(() => ({\n zIndex: zIndex.value - 1,\n position: rootZIndex.value === ROOT_ZINDEX ? 'fixed' : 'absolute',\n }))\n\n return { layoutItemStyles, layoutItemScrimStyles, zIndex }\n },\n unregister: (id: string) => {\n priorities.delete(id)\n positions.delete(id)\n layoutSizes.delete(id)\n activeItems.delete(id)\n disabledTransitions.delete(id)\n registered.value = registered.value.filter(v => v !== id)\n },\n mainStyles,\n getLayoutItem,\n items,\n layoutRect,\n rootZIndex,\n })\n\n const layoutClasses = computed(() => [\n 'v-layout',\n { 'v-layout--full-height': props.fullHeight },\n ])\n\n const layoutStyles = computed(() => ({\n zIndex: rootZIndex.value,\n }))\n\n return {\n layoutClasses,\n layoutStyles,\n getLayoutItem,\n items,\n layoutRect,\n layoutRef: resizeRef,\n }\n}\n","export default {\n badge: 'Badge',\n close: 'Close',\n dataIterator: {\n noResultsText: 'No matching records found',\n loadingText: 'Loading items...',\n },\n dataTable: {\n itemsPerPageText: 'Rows per page:',\n ariaLabel: {\n sortDescending: 'Sorted descending.',\n sortAscending: 'Sorted ascending.',\n sortNone: 'Not sorted.',\n activateNone: 'Activate to remove sorting.',\n activateDescending: 'Activate to sort descending.',\n activateAscending: 'Activate to sort ascending.',\n },\n sortBy: 'Sort by',\n },\n dataFooter: {\n itemsPerPageText: 'Items per page:',\n itemsPerPageAll: 'All',\n nextPage: 'Next page',\n prevPage: 'Previous page',\n firstPage: 'First page',\n lastPage: 'Last page',\n pageText: '{0}-{1} of {2}',\n },\n datePicker: {\n itemsSelected: '{0} selected',\n nextMonthAriaLabel: 'Next month',\n nextYearAriaLabel: 'Next year',\n prevMonthAriaLabel: 'Previous month',\n prevYearAriaLabel: 'Previous year',\n },\n noDataText: 'No data available',\n carousel: {\n prev: 'Previous visual',\n next: 'Next visual',\n ariaLabel: {\n delimiter: 'Carousel slide {0} of {1}',\n },\n },\n calendar: {\n moreEvents: '{0} more',\n },\n fileInput: {\n counter: '{0} files',\n counterSize: '{0} files ({1} in total)',\n },\n timePicker: {\n am: 'AM',\n pm: 'PM',\n },\n pagination: {\n ariaLabel: {\n root: 'Pagination Navigation',\n next: 'Next page',\n previous: 'Previous page',\n page: 'Goto Page {0}',\n currentPage: 'Page {0}, Current Page',\n first: 'First page',\n last: 'Last page',\n },\n },\n rating: {\n ariaLabel: {\n item: 'Rating {0} of {1}',\n },\n },\n}\n","export { default as af } from './af'\nexport { default as ar } from './ar'\nexport { default as bg } from './bg'\nexport { default as ca } from './ca'\nexport { default as ckb } from './ckb'\nexport { default as cs } from './cs'\nexport { default as da } from './da'\nexport { default as de } from './de'\nexport { default as el } from './el'\nexport { default as en } from './en'\nexport { default as es } from './es'\nexport { default as et } from './et'\nexport { default as fa } from './fa'\nexport { default as fi } from './fi'\nexport { default as fr } from './fr'\nexport { default as hr } from './hr'\nexport { default as hu } from './hu'\nexport { default as he } from './he'\nexport { default as id } from './id'\nexport { default as it } from './it'\nexport { default as ja } from './ja'\nexport { default as ko } from './ko'\nexport { default as lv } from './lv'\nexport { default as lt } from './lt'\nexport { default as nl } from './nl'\nexport { default as no } from './no'\nexport { default as pl } from './pl'\nexport { default as pt } from './pt'\nexport { default as ro } from './ro'\nexport { default as ru } from './ru'\nexport { default as sk } from './sk'\nexport { default as sl } from './sl'\nexport { default as srCyrl } from './sr-Cyrl'\nexport { default as srLatn } from './sr-Latn'\nexport { default as sv } from './sv'\nexport { default as th } from './th'\nexport { default as tr } from './tr'\nexport { default as az } from './az'\nexport { default as uk } from './uk'\nexport { default as vi } from './vi'\nexport { default as zhHans } from './zh-Hans'\nexport { default as zhHant } from './zh-Hant'\n\nexport const rtl = {\n af: false,\n ar: true,\n bg: false,\n ca: false,\n ckb: false,\n cs: false,\n de: false,\n el: false,\n en: false,\n es: false,\n et: false,\n fa: false,\n fi: false,\n fr: false,\n hr: false,\n hu: false,\n he: true,\n id: false,\n it: false,\n ja: false,\n ko: false,\n lv: false,\n lt: false,\n nl: false,\n no: false,\n pl: false,\n pt: false,\n ro: false,\n ru: false,\n sk: false,\n sl: false,\n srCyrl: false,\n srLatn: false,\n sv: false,\n th: false,\n tr: false,\n az: false,\n uk: false,\n vi: false,\n zhHans: false,\n zhHant: false,\n}\n","import { computed, inject, provide, ref } from 'vue'\nimport { rtl } from '@/locale'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\nimport type { LocaleInstance } from './locale'\n\nexport interface RtlOptions {\n defaultRtl?: boolean\n rtl?: Record<string, boolean>\n}\n\nexport interface RtlProps {\n rtl?: boolean\n}\n\nexport interface RtlInstance {\n isRtl: Ref<boolean>\n rtl: Record<string, boolean>\n rtlClasses: Ref<string>\n}\n\nexport const RtlSymbol: InjectionKey<RtlInstance> = Symbol.for('vuetify:rtl')\n\nexport function createRtl (localeScope: LocaleInstance, options?: RtlOptions) {\n return createRtlScope({\n rtl: {\n ...rtl,\n ...(options?.rtl ?? {}),\n },\n isRtl: ref(options?.defaultRtl ?? false),\n rtlClasses: ref(''),\n }, localeScope)\n}\n\nexport function createRtlScope (currentScope: RtlInstance, localeScope: LocaleInstance, options?: RtlProps): RtlInstance {\n const isRtl = computed(() => {\n if (typeof options?.rtl === 'boolean') return options.rtl\n if (localeScope.current.value && currentScope.rtl.hasOwnProperty(localeScope.current.value)) {\n return currentScope.rtl[localeScope.current.value]\n }\n\n return currentScope.isRtl.value\n })\n\n return {\n isRtl,\n rtl: currentScope.rtl,\n rtlClasses: computed(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`),\n }\n}\n\nexport function provideRtl (props: RtlProps, localeScope: LocaleInstance) {\n const currentScope = inject(RtlSymbol)\n\n if (!currentScope) throw new Error('[Vuetify] Could not find injected rtl instance')\n\n const newScope = createRtlScope(currentScope, localeScope, props)\n\n provide(RtlSymbol, newScope)\n\n return newScope\n}\n\nexport function useRtl () {\n const currentScope = inject(RtlSymbol)\n\n if (!currentScope) throw new Error('[Vuetify] Could not find injected rtl instance')\n\n return currentScope\n}\n","// Styles\nimport './VApp.sass'\n\n// Composables\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { createLayout, makeLayoutProps } from '@/composables/layout'\n\n// Utilities\nimport { defineComponent, useRender } from '@/util'\nimport { useRtl } from '@/composables/rtl'\n\nexport const VApp = defineComponent({\n name: 'VApp',\n\n props: {\n ...makeLayoutProps({ fullHeight: true }),\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n const theme = provideTheme(props)\n const { layoutClasses, layoutStyles, getLayoutItem, items, layoutRef } = createLayout(props)\n const { rtlClasses } = useRtl()\n\n useRender(() => (\n <div\n ref={ layoutRef }\n class={[\n 'v-application',\n theme.themeClasses.value,\n layoutClasses.value,\n rtlClasses.value,\n ]}\n style={ layoutStyles.value }\n data-app=\"true\"\n >\n <div class=\"v-application__wrap\">\n { slots.default?.() }\n </div>\n </div>\n ))\n\n return {\n getLayoutItem,\n items,\n theme,\n }\n },\n})\n\nexport type VApp = InstanceType<typeof VApp>\n","// Composables\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { defineComponent, toRefs } from 'vue'\n\n// Types\nimport type { DefaultsOptions } from '@/composables/defaults'\nimport type { PropType } from 'vue'\n\nexport const VDefaultsProvider = defineComponent({\n name: 'VDefaultsProvider',\n\n props: {\n defaults: Object as PropType<DefaultsOptions>,\n reset: [Number, String],\n root: Boolean,\n scoped: Boolean,\n },\n\n setup (props, { slots }) {\n const { defaults, reset, root, scoped } = toRefs(props)\n\n provideDefaults(defaults, {\n reset,\n root,\n scoped,\n })\n\n return () => slots.default?.()\n },\n})\n","// Utilities\nimport { h, Transition, TransitionGroup } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { FunctionalComponent, Prop } from 'vue'\n\nexport function createCssTransition (\n name: string,\n origin = 'top center 0',\n mode?: string\n) {\n return defineComponent({\n name,\n\n props: {\n group: Boolean,\n hideOnLeave: Boolean,\n leaveAbsolute: Boolean,\n mode: {\n type: String,\n default: mode,\n },\n origin: {\n type: String,\n default: origin,\n },\n },\n\n setup (props, { slots }) {\n return () => {\n const tag = props.group ? TransitionGroup : Transition\n\n return h(tag as FunctionalComponent, {\n name,\n mode: props.mode,\n onBeforeEnter (el: HTMLElement) {\n el.style.transformOrigin = props.origin\n },\n onLeave (el: HTMLElement) {\n if (props.leaveAbsolute) {\n const { offsetTop, offsetLeft, offsetWidth, offsetHeight } = el\n el._transitionInitialStyles = {\n position: el.style.position,\n top: el.style.top,\n left: el.style.left,\n width: el.style.width,\n height: el.style.height,\n }\n el.style.position = 'absolute'\n el.style.top = `${offsetTop}px`\n el.style.left = `${offsetLeft}px`\n el.style.width = `${offsetWidth}px`\n el.style.height = `${offsetHeight}px`\n }\n\n if (props.hideOnLeave) {\n el.style.setProperty('display', 'none', 'important')\n }\n },\n onAfterLeave (el: HTMLElement) {\n if (props.leaveAbsolute && el?._transitionInitialStyles) {\n const { position, top, left, width, height } = el._transitionInitialStyles\n delete el._transitionInitialStyles\n el.style.position = position || ''\n el.style.top = top || ''\n el.style.left = left || ''\n el.style.width = width || ''\n el.style.height = height || ''\n }\n },\n }, slots.default)\n }\n },\n })\n}\n\nexport function createJavascriptTransition (\n name: string,\n functions: Record<string, any>,\n mode = 'in-out'\n) {\n return defineComponent({\n name,\n\n props: {\n mode: {\n type: String,\n default: mode,\n } as Prop<'in-out' | 'out-in' | 'default'>,\n },\n\n setup (props, { slots }) {\n return () => {\n return h(Transition, {\n name,\n // mode: props.mode, // TODO: vuejs/vue-next#3104\n ...functions,\n }, slots.default)\n }\n },\n })\n}\n","// Utilities\nimport { camelize } from 'vue'\n\ninterface HTMLExpandElement extends HTMLElement {\n _parent?: (Node & ParentNode & HTMLElement) | null\n _initialStyle?: {\n transition: string\n overflow: string\n height?: string | null\n width?: string | null\n }\n}\n\nexport default function (expandedParentClass = '', x = false) {\n const sizeProperty = x ? 'width' : 'height' as 'width' | 'height'\n const offsetProperty = camelize(`offset-${sizeProperty}`) as 'offsetHeight' | 'offsetWidth'\n\n return {\n onBeforeEnter (el: HTMLExpandElement) {\n el._parent = el.parentNode as (Node & ParentNode & HTMLElement) | null\n el._initialStyle = {\n transition: el.style.transition,\n overflow: el.style.overflow,\n [sizeProperty]: el.style[sizeProperty],\n }\n },\n\n onEnter (el: HTMLExpandElement) {\n const initialStyle = el._initialStyle!\n\n el.style.setProperty('transition', 'none', 'important')\n // Hide overflow to account for collapsed margins in the calculated height\n el.style.overflow = 'hidden'\n const offset = `${el[offsetProperty]}px`\n\n el.style[sizeProperty] = '0'\n\n void el.offsetHeight // force reflow\n\n el.style.transition = initialStyle.transition\n\n if (expandedParentClass && el._parent) {\n el._parent.classList.add(expandedParentClass)\n }\n\n requestAnimationFrame(() => {\n el.style[sizeProperty] = offset\n })\n },\n\n onAfterEnter: resetStyles,\n onEnterCancelled: resetStyles,\n\n onLeave (el: HTMLExpandElement) {\n el._initialStyle = {\n transition: '',\n overflow: el.style.overflow,\n [sizeProperty]: el.style[sizeProperty],\n }\n\n el.style.overflow = 'hidden'\n el.style[sizeProperty] = `${el[offsetProperty]}px`\n void el.offsetHeight // force reflow\n\n requestAnimationFrame(() => (el.style[sizeProperty] = '0'))\n },\n\n onAfterLeave,\n onLeaveCancelled: onAfterLeave,\n }\n\n function onAfterLeave (el: HTMLExpandElement) {\n if (expandedParentClass && el._parent) {\n el._parent.classList.remove(expandedParentClass)\n }\n resetStyles(el)\n }\n\n function resetStyles (el: HTMLExpandElement) {\n const size = el._initialStyle![sizeProperty]\n el.style.overflow = el._initialStyle!.overflow\n if (size != null) el.style[sizeProperty] = size\n delete el._initialStyle\n }\n}\n","import type { PropType } from 'vue'\nimport { Transition } from 'vue'\nimport { acceleratedEasing, deceleratedEasing, defineComponent, nullifyTransforms, standardEasing } from '@/util'\n\nexport const VDialogTransition = defineComponent({\n name: 'VDialogTransition',\n\n props: {\n target: Object as PropType<HTMLElement>,\n },\n\n setup (props, { slots }) {\n const functions = {\n onBeforeEnter (el: Element) {\n (el as HTMLElement).style.pointerEvents = 'none'\n },\n async onEnter (el: Element, done: () => void) {\n await new Promise(resolve => requestAnimationFrame(resolve))\n\n const { x, y, sx, sy, speed } = getDimensions(props.target!, el as HTMLElement)\n\n const animation = el.animate([\n { transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`, opacity: 0 },\n { transform: '' },\n ], {\n duration: 225 * speed,\n easing: deceleratedEasing,\n })\n getChildren(el)?.forEach(el => {\n el.animate([\n { opacity: 0 },\n { opacity: 0, offset: 0.33 },\n { opacity: 1 },\n ], {\n duration: 225 * 2 * speed,\n easing: standardEasing,\n })\n })\n animation.finished.then(() => done())\n },\n onAfterEnter (el: Element) {\n (el as HTMLElement).style.removeProperty('pointer-events')\n },\n onBeforeLeave (el: Element) {\n (el as HTMLElement).style.pointerEvents = 'none'\n },\n async onLeave (el: Element, done: () => void) {\n await new Promise(resolve => requestAnimationFrame(resolve))\n\n const { x, y, sx, sy, speed } = getDimensions(props.target!, el as HTMLElement)\n\n const animation = el.animate([\n { transform: '' },\n { transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`, opacity: 0 },\n ], {\n duration: 125 * speed,\n easing: acceleratedEasing,\n })\n animation.finished.then(() => done())\n getChildren(el)?.forEach(el => {\n el.animate([\n {},\n { opacity: 0, offset: 0.2 },\n { opacity: 0 },\n ], {\n duration: 125 * 2 * speed,\n easing: standardEasing,\n })\n })\n },\n onAfterLeave (el: Element) {\n (el as HTMLElement).style.removeProperty('pointer-events')\n },\n }\n\n return () => {\n return props.target\n ? (\n <Transition\n name=\"dialog-transition\"\n { ...functions }\n css={ false }\n v-slots={ slots }\n />\n )\n : <Transition name=\"dialog-transition\" v-slots={ slots } />\n }\n },\n})\n\n/** Animatable children (card, sheet, list) */\nfunction getChildren (el: Element) {\n const els = el.querySelector(':scope > .v-card, :scope > .v-sheet, :scope > .v-list')?.children\n return els && [...els]\n}\n\nfunction getDimensions (target: HTMLElement, el: HTMLElement) {\n const targetBox = target.getBoundingClientRect()\n const elBox = nullifyTransforms(el)\n const [originX, originY] = getComputedStyle(el).transformOrigin.split(' ').map(v => parseFloat(v))\n\n const [anchorSide, anchorOffset] = getComputedStyle(el).getPropertyValue('--v-overlay-anchor-origin').split(' ')\n\n let offsetX = targetBox.left + targetBox.width / 2\n if (anchorSide === 'left' || anchorOffset === 'left') {\n offsetX -= targetBox.width / 2\n } else if (anchorSide === 'right' || anchorOffset === 'right') {\n offsetX += targetBox.width / 2\n }\n\n let offsetY = targetBox.top + targetBox.height / 2\n if (anchorSide === 'top' || anchorOffset === 'top') {\n offsetY -= targetBox.height / 2\n } else if (anchorSide === 'bottom' || anchorOffset === 'bottom') {\n offsetY += targetBox.height / 2\n }\n\n const tsx = targetBox.width / elBox.width\n const tsy = targetBox.height / elBox.height\n const maxs = Math.max(1, tsx, tsy)\n const sx = tsx / maxs\n const sy = tsy / maxs\n\n // Animate elements larger than 12% of the screen area up to 1.5x slower\n const asa = (elBox.width * elBox.height) / (window.innerWidth * window.innerHeight)\n const speed = asa > 0.12\n ? Math.min(1.5, (asa - 0.12) * 10 + 1)\n : 1\n\n return {\n x: offsetX - (originX + elBox.left),\n y: offsetY - (originY + elBox.top),\n sx,\n sy,\n speed,\n }\n}\n","import {\n createCssTransition,\n createJavascriptTransition,\n} from './createTransition'\n\nimport ExpandTransitionGenerator from './expand-transition'\n\n// Component specific transitions\nexport const VCarouselTransition = createCssTransition('carousel-transition')\nexport const VCarouselReverseTransition = createCssTransition('carousel-reverse-transition')\nexport const VTabTransition = createCssTransition('tab-transition')\nexport const VTabReverseTransition = createCssTransition('tab-reverse-transition')\nexport const VMenuTransition = createCssTransition('menu-transition')\nexport const VFabTransition = createCssTransition('fab-transition', 'center center', 'out-in')\n\n// Generic transitions\nexport const VDialogBottomTransition = createCssTransition('dialog-bottom-transition')\nexport const VDialogTopTransition = createCssTransition('dialog-top-transition')\nexport const VFadeTransition = createCssTransition('fade-transition')\nexport const VScaleTransition = createCssTransition('scale-transition')\nexport const VScrollXTransition = createCssTransition('scroll-x-transition')\nexport const VScrollXReverseTransition = createCssTransition('scroll-x-reverse-transition')\nexport const VScrollYTransition = createCssTransition('scroll-y-transition')\nexport const VScrollYReverseTransition = createCssTransition('scroll-y-reverse-transition')\nexport const VSlideXTransition = createCssTransition('slide-x-transition')\nexport const VSlideXReverseTransition = createCssTransition('slide-x-reverse-transition')\nexport const VSlideYTransition = createCssTransition('slide-y-transition')\nexport const VSlideYReverseTransition = createCssTransition('slide-y-reverse-transition')\n\n// Javascript transitions\nexport const VExpandTransition = createJavascriptTransition('expand-transition', ExpandTransitionGenerator())\nexport const VExpandXTransition = createJavascriptTransition('expand-x-transition', ExpandTransitionGenerator('', true))\n\nexport { VDialogTransition } from './dialog-transition'\n","// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, propsFactory } from '@/util'\n\n// Types\nexport interface DimensionProps {\n height?: number | string\n maxHeight?: number | string\n maxWidth?: number | string\n minHeight?: number | string\n minWidth?: number | string\n width?: number | string\n}\n\n// Composables\nexport const makeDimensionProps = propsFactory({\n height: [Number, String],\n maxHeight: [Number, String],\n maxWidth: [Number, String],\n minHeight: [Number, String],\n minWidth: [Number, String],\n width: [Number, String],\n}, 'dimension')\n\nexport function useDimension (props: DimensionProps) {\n const dimensionStyles = computed(() => ({\n height: convertToUnit(props.height),\n maxHeight: convertToUnit(props.maxHeight),\n maxWidth: convertToUnit(props.maxWidth),\n minHeight: convertToUnit(props.minHeight),\n minWidth: convertToUnit(props.minWidth),\n width: convertToUnit(props.width),\n }))\n\n return { dimensionStyles }\n}\n","// Styles\nimport './VResponsive.sass'\n\n// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\n\n// Utilities\nimport { computed } from 'vue'\nimport { defineComponent } from '@/util'\n\nexport function useAspectStyles (props: { aspectRatio?: string | number }) {\n return {\n aspectStyles: computed(() => {\n const ratio = Number(props.aspectRatio)\n\n return ratio\n ? { paddingBottom: String(1 / ratio * 100) + '%' }\n : undefined\n }),\n }\n}\n\nexport const VResponsive = defineComponent({\n name: 'VResponsive',\n\n props: {\n aspectRatio: [String, Number],\n contentClass: String,\n\n ...makeDimensionProps(),\n },\n\n setup (props, { slots }) {\n const { dimensionStyles } = useDimension(props)\n const { aspectStyles } = useAspectStyles(props)\n\n return () => (\n <div class=\"v-responsive\" style={ dimensionStyles.value }>\n <div class=\"v-responsive__sizer\" style={ aspectStyles.value } />\n { slots.additional?.() }\n { slots.default && (\n <div class={['v-responsive__content', props.contentClass]}>{ slots.default() }</div>\n )}\n </div>\n )\n },\n})\n","// Utils\nimport { SUPPORTS_INTERSECTION } from '@/util'\n\n// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\ntype ObserveHandler = (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[],\n observer: IntersectionObserver,\n) => void\n\nexport interface ObserveDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value?: ObserveHandler | { handler: ObserveHandler, options?: IntersectionObserverInit }\n modifiers: {\n once?: boolean\n quiet?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ObserveDirectiveBinding) {\n if (!SUPPORTS_INTERSECTION) return\n\n const modifiers = binding.modifiers || {}\n const value = binding.value\n const { handler, options } = typeof value === 'object'\n ? value\n : { handler: value, options: {} }\n\n const observer = new IntersectionObserver((\n entries: IntersectionObserverEntry[] = [],\n observer: IntersectionObserver\n ) => {\n const _observe = el._observe?.[binding.instance!.$.uid]\n if (!_observe) return // Just in case, should never fire\n\n const isIntersecting = entries.some(entry => entry.isIntersecting)\n\n // If is not quiet or has already been\n // initted, invoke the user callback\n if (\n handler && (\n !modifiers.quiet ||\n _observe.init\n ) && (\n !modifiers.once ||\n isIntersecting ||\n _observe.init\n )\n ) {\n handler(isIntersecting, entries, observer)\n }\n\n if (isIntersecting && modifiers.once) unmounted(el, binding)\n else _observe.init = true\n }, options)\n\n el._observe = Object(el._observe)\n el._observe![binding.instance!.$.uid] = { init: false, observer }\n\n observer.observe(el)\n}\n\nfunction unmounted (el: HTMLElement, binding: ObserveDirectiveBinding) {\n const observe = el._observe?.[binding.instance!.$.uid]\n if (!observe) return\n\n observe.observer.unobserve(el)\n delete el._observe![binding.instance!.$.uid]\n}\n\nexport const Intersect: ObjectDirective<HTMLElement> = {\n mounted,\n unmounted,\n}\n\nexport default Intersect\n","// Utilities\nimport { h, mergeProps, Transition } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { Component, FunctionalComponent, PropType, TransitionProps } from 'vue'\n\nexport const makeTransitionProps = propsFactory({\n transition: {\n type: [Boolean, String, Object] as PropType<string | boolean | TransitionProps & { component?: Component }>,\n default: 'fade-transition',\n validator: val => val !== true,\n },\n}, 'transition')\n\ninterface MaybeTransitionProps extends TransitionProps {\n transition?: string | boolean | TransitionProps & { component?: any }\n}\n\nexport const MaybeTransition: FunctionalComponent<MaybeTransitionProps> = (props, { slots }) => {\n const { transition, ...rest } = props\n\n if (!transition || typeof transition === 'boolean') return slots.default?.()\n\n const { component = Transition, ...customProps } = typeof transition === 'object' ? transition : {}\n\n return h(\n component,\n mergeProps(typeof transition === 'string' ? { name: transition } : customProps as any, rest as any),\n slots\n )\n}\n","import './VImg.sass'\n\n// Components\nimport { VResponsive } from '@/components/VResponsive'\n\n// Directives\nimport intersect from '@/directives/intersect'\n\n// Composables\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport {\n computed,\n h,\n nextTick,\n onBeforeMount,\n ref,\n vShow,\n watch,\n withDirectives,\n} from 'vue'\nimport {\n convertToUnit,\n defineComponent,\n SUPPORTS_INTERSECTION,\n useRender,\n} from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// not intended for public use, this is passed in by vuetify-loader\nexport interface srcObject {\n src?: string\n srcset?: string\n lazySrc?: string\n aspect: number\n}\n\nexport const VImg = defineComponent({\n name: 'VImg',\n\n directives: { intersect },\n\n props: {\n aspectRatio: [String, Number],\n alt: String,\n cover: Boolean,\n eager: Boolean,\n gradient: String,\n lazySrc: String,\n options: {\n type: Object as PropType<IntersectionObserverInit>,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n },\n sizes: String,\n src: {\n type: [String, Object] as PropType<string | srcObject>,\n default: '',\n },\n srcset: String,\n width: [String, Number],\n\n ...makeTransitionProps(),\n },\n\n emits: ['loadstart', 'load', 'error'],\n\n setup (props, { emit, slots }) {\n const currentSrc = ref('') // Set from srcset\n const image = ref<HTMLImageElement>()\n const state = ref<'idle' | 'loading' | 'loaded' | 'error'>(props.eager ? 'loading' : 'idle')\n const naturalWidth = ref<number>()\n const naturalHeight = ref<number>()\n\n const normalisedSrc = computed<srcObject>(() => {\n return props.src && typeof props.src === 'object'\n ? {\n src: props.src.src,\n srcset: props.srcset || props.src.srcset,\n lazySrc: props.lazySrc || props.src.lazySrc,\n aspect: Number(props.aspectRatio || props.src.aspect),\n } : {\n src: props.src,\n srcset: props.srcset,\n lazySrc: props.lazySrc,\n aspect: Number(props.aspectRatio || 0),\n }\n })\n const aspectRatio = computed(() => {\n return normalisedSrc.value.aspect || naturalWidth.value! / naturalHeight.value! || 0\n })\n\n watch(() => props.src, () => {\n init(state.value !== 'idle')\n })\n // TODO: getSrc when window width changes\n\n onBeforeMount(() => init())\n\n function init (isIntersecting?: boolean) {\n if (props.eager && isIntersecting) return\n if (\n SUPPORTS_INTERSECTION &&\n !isIntersecting &&\n !props.eager\n ) return\n\n state.value = 'loading'\n\n if (normalisedSrc.value.lazySrc) {\n const lazyImg = new Image()\n lazyImg.src = normalisedSrc.value.lazySrc\n pollForSize(lazyImg, null)\n }\n\n if (!normalisedSrc.value.src) return\n\n nextTick(() => {\n emit('loadstart', image.value?.currentSrc || normalisedSrc.value.src)\n\n if (image.value?.complete) {\n if (!image.value.naturalWidth) {\n onError()\n }\n\n if (state.value === 'error') return\n\n if (!aspectRatio.value) pollForSize(image.value, null)\n onLoad()\n } else {\n if (!aspectRatio.value) pollForSize(image.value!)\n getSrc()\n }\n })\n }\n\n function onLoad () {\n getSrc()\n state.value = 'loaded'\n emit('load', image.value?.currentSrc || normalisedSrc.value.src)\n }\n\n function onError () {\n state.value = 'error'\n emit('error', image.value?.currentSrc || normalisedSrc.value.src)\n }\n\n function getSrc () {\n const img = image.value\n if (img) currentSrc.value = img.currentSrc || img.src\n }\n\n function pollForSize (img: HTMLImageElement, timeout: number | null = 100) {\n const poll = () => {\n const { naturalHeight: imgHeight, naturalWidth: imgWidth } = img\n\n if (imgHeight || imgWidth) {\n naturalWidth.value = imgWidth\n naturalHeight.value = imgHeight\n } else if (!img.complete && state.value === 'loading' && timeout != null) {\n setTimeout(poll, timeout)\n } else if (img.currentSrc.endsWith('.svg') || img.currentSrc.startsWith('data:image/svg+xml')) {\n naturalWidth.value = 1\n naturalHeight.value = 1\n }\n }\n\n poll()\n }\n\n const containClasses = computed(() => ({\n 'v-img__img--cover': props.cover,\n 'v-img__img--contain': !props.cover,\n }))\n\n const __image = computed(() => {\n if (!normalisedSrc.value.src || state.value === 'idle') return\n\n const img = h('img', {\n class: ['v-img__img', containClasses.value],\n src: normalisedSrc.value.src,\n srcset: normalisedSrc.value.srcset,\n sizes: props.sizes,\n ref: image,\n onLoad,\n onError,\n })\n\n const sources = slots.sources?.()\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n {\n withDirectives(\n sources\n ? <picture class=\"v-img__picture\">{ sources }{ img }</picture>\n : img,\n [[vShow, state.value === 'loaded']]\n )\n }\n </MaybeTransition>\n )\n })\n\n const __preloadImage = computed(() => (\n <MaybeTransition transition={ props.transition }>\n { normalisedSrc.value.lazySrc && state.value !== 'loaded' && (\n <img\n class={['v-img__img', 'v-img__img--preload', containClasses.value]}\n src={ normalisedSrc.value.lazySrc }\n alt=\"\"\n />\n )}\n </MaybeTransition>\n ))\n\n const __placeholder = computed(() => {\n if (!slots.placeholder) return\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n { (state.value === 'loading' || (state.value === 'error' && !slots.error)) &&\n <div class=\"v-img__placeholder\">{ slots.placeholder() }</div>\n }\n </MaybeTransition>\n )\n })\n\n const __error = computed(() => {\n if (!slots.error) return\n\n return (\n <MaybeTransition transition={ props.transition } appear>\n { state.value === 'error' &&\n <div class=\"v-img__error\">{ slots.error() }</div>\n }\n </MaybeTransition>\n )\n })\n\n const __gradient = computed(() => {\n if (!props.gradient) return\n\n return <div class=\"v-img__gradient\" style={{ backgroundImage: `linear-gradient(${props.gradient})` }} />\n })\n\n const isBooted = ref(false)\n {\n const stop = watch(aspectRatio, val => {\n if (val) {\n // Doesn't work with nextTick, idk why\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n isBooted.value = true\n })\n })\n stop()\n }\n })\n }\n\n useRender(() => (\n <VResponsive\n class={[\n 'v-img',\n { 'v-img--booting': !isBooted.value },\n ]}\n style={{ width: convertToUnit(props.width === 'auto' ? naturalWidth.value : props.width) }}\n aspectRatio={ aspectRatio.value }\n aria-label={ props.alt }\n role={ props.alt ? 'img' : undefined }\n v-intersect={[{\n handler: init,\n options: props.options,\n }, null, ['once']]}\n v-slots={{\n additional: () => [__image.value, __preloadImage.value, __gradient.value, __placeholder.value, __error.value],\n default: slots.default,\n }}\n />\n ))\n\n return {\n currentSrc,\n image,\n state,\n naturalWidth,\n naturalHeight,\n }\n },\n})\n\nexport type VImg = InstanceType<typeof VImg>\n","// Utilities\nimport { propsFactory } from '@/util'\n\n// Types\nexport interface TagProps {\n tag: string\n}\n\n// Composables\nexport const makeTagProps = propsFactory({\n tag: {\n type: String,\n default: 'div',\n },\n}, 'tag')\n","// Composables\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { MakeSlots } from '@/util'\n\nexport const VToolbarTitle = genericComponent<new () => {\n $slots: MakeSlots<{\n default: []\n text: []\n }>\n}>()({\n name: 'VToolbarTitle',\n\n props: {\n text: String,\n\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n useRender(() => {\n const hasText = !!(slots.default || slots.text || props.text)\n\n return (\n <props.tag class=\"v-toolbar-title\">\n { hasText && (\n <div class=\"v-toolbar-title__placeholder\">\n { slots.text ? slots.text() : props.text }\n\n { slots.default?.() }\n </div>\n ) }\n </props.tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VToolbarTitle = InstanceType<typeof VToolbarTitle>\n","// Utilities\nimport { computed } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nexport interface BorderProps {\n border?: boolean | number | string\n}\n\n// Composables\nexport const makeBorderProps = propsFactory({\n border: [Boolean, Number, String],\n}, 'border')\n\nexport function useBorder (\n props: BorderProps,\n name = getCurrentInstanceName(),\n) {\n const borderClasses = computed(() => {\n const classes: string[] = []\n\n if (props.border != null && props.border !== false) {\n classes.push(`${name}--border`)\n }\n\n if (\n (typeof props.border === 'string' && props.border !== '') ||\n props.border === 0\n ) {\n for (const value of String(props.border).split(' ')) {\n classes.push(`border-${value}`)\n }\n }\n\n return classes\n })\n\n return { borderClasses }\n}\n","// Utilities\nimport { computed, isRef } from 'vue'\nimport { propsFactory } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\nexport interface ElevationProps {\n elevation?: number | string | null\n}\n\n// Composables\nexport const makeElevationProps = propsFactory({\n elevation: {\n type: [Number, String],\n validator (v: any) {\n const value = parseInt(v)\n\n return (\n !isNaN(value) &&\n value >= 0 &&\n // Material Design has a maximum elevation of 24\n // https://material.io/design/environment/elevation.html#default-elevations\n value <= 24\n )\n },\n },\n}, 'elevation')\n\ntype ElevationData = {\n elevationClasses: Ref<string[]>\n}\n\nexport function useElevation (props: ElevationProps | Ref<number | string | undefined>): ElevationData {\n const elevationClasses = computed(() => {\n const elevation = isRef(props) ? props.value : props.elevation\n const classes: string[] = []\n\n if (elevation == null) return classes\n\n classes.push(`elevation-${elevation}`)\n\n return classes\n })\n\n return { elevationClasses }\n}\n","// Utilities\nimport { computed, isRef } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\ntype RoundedValue = boolean | string | number | null | undefined\n\nexport interface RoundedProps {\n rounded?: RoundedValue\n tile?: boolean\n}\n\ntype RoundedData = {\n roundedClasses: Ref<string[]>\n}\n\n// Composables\nexport const makeRoundedProps = propsFactory({\n rounded: {\n type: [Boolean, Number, String],\n default: undefined,\n },\n}, 'rounded')\n\nexport function useRounded (\n props: RoundedProps | Ref<RoundedValue>,\n name = getCurrentInstanceName(),\n): RoundedData {\n const roundedClasses = computed(() => {\n const rounded = isRef(props) ? props.value : props.rounded\n const classes: string[] = []\n\n if (rounded === true || rounded === '') {\n classes.push(`${name}--rounded`)\n } else if (\n typeof rounded === 'string' ||\n rounded === 0\n ) {\n for (const value of String(rounded).split(' ')) {\n classes.push(`rounded-${value}`)\n }\n }\n\n return classes\n })\n\n return { roundedClasses }\n}\n","// Utilities\nimport { computed, isRef } from 'vue'\nimport { isCssColor } from '@/util'\n\n// Types\nimport type { CSSProperties, Ref } from 'vue'\n\ntype ColorValue = string | false | null | undefined\n\nexport interface TextColorData {\n textColorClasses: Ref<string[]>\n textColorStyles: Ref<CSSProperties>\n}\n\nexport interface BackgroundColorData {\n backgroundColorClasses: Ref<string[]>\n backgroundColorStyles: Ref<CSSProperties>\n}\n\n// Composables\nexport function useColor (colors: Ref<{ background?: ColorValue, text?: ColorValue }>) {\n const backgroundIsCssColor = computed(() => isCssColor(colors.value.background))\n const textIsCssColor = computed(() => isCssColor(colors.value.text))\n\n const colorClasses = computed(() => {\n const classes: string[] = []\n\n if (colors.value.background && !backgroundIsCssColor.value) {\n classes.push(`bg-${colors.value.background}`)\n }\n\n if (colors.value.text && !textIsCssColor.value) {\n classes.push(`text-${colors.value.text}`)\n }\n\n return classes\n })\n\n const colorStyles = computed(() => {\n const styles: CSSProperties = {}\n\n if (colors.value.background && backgroundIsCssColor.value) {\n styles.backgroundColor = colors.value.background\n }\n\n if (colors.value.text && textIsCssColor.value) {\n styles.color = colors.value.text\n styles.caretColor = colors.value.text\n }\n\n return styles\n })\n\n return { colorClasses, colorStyles }\n}\n\nexport function useTextColor (color: Ref<ColorValue>): TextColorData\nexport function useTextColor <T extends Record<K, ColorValue>, K extends string> (props: T, name: K): TextColorData\nexport function useTextColor <T extends Record<K, ColorValue>, K extends string> (\n props: T | Ref<ColorValue>,\n name?: K\n): TextColorData {\n const colors = computed(() => ({\n text: isRef(props) ? props.value : (name ? props[name] : null),\n }))\n\n const {\n colorClasses: textColorClasses,\n colorStyles: textColorStyles,\n } = useColor(colors)\n\n return { textColorClasses, textColorStyles }\n}\n\nexport function useBackgroundColor (color: Ref<ColorValue>): BackgroundColorData\nexport function useBackgroundColor <T extends Record<K, ColorValue>, K extends string> (props: T, name: K): BackgroundColorData\nexport function useBackgroundColor <T extends Record<K, ColorValue>, K extends string> (\n props: T | Ref<ColorValue>,\n name?: K\n): BackgroundColorData {\n const colors = computed(() => ({\n background: isRef(props) ? props.value : (name ? props[name] : null),\n }))\n\n const {\n colorClasses: backgroundColorClasses,\n colorStyles: backgroundColorStyles,\n } = useColor(colors)\n\n return { backgroundColorClasses, backgroundColorStyles }\n}\n","import type { Ref, UnwrapRef } from 'vue'\nimport type { UnionToIntersection } from '@/util'\n\nexport function useForwardRef<T extends {}, U extends Ref<{} | undefined>[]> (\n target: T,\n ...refs: U\n): T & UnwrapRef<UnionToIntersection<U[number]>> {\n return new Proxy(target, {\n get (target, key) {\n if (Reflect.has(target, key)) {\n return Reflect.get(target, key)\n }\n for (const ref of refs) {\n if (ref.value && Reflect.has(ref.value, key)) {\n const val = Reflect.get(ref.value, key)\n return typeof val === 'function'\n ? val.bind(ref.value)\n : val\n }\n }\n },\n getOwnPropertyDescriptor (target, key) {\n const descriptor = Reflect.getOwnPropertyDescriptor(target, key)\n if (descriptor) return descriptor\n\n // Check each ref's own properties\n for (const ref of refs) {\n if (!ref.value) continue\n const descriptor = Reflect.getOwnPropertyDescriptor(ref.value, key)\n if (descriptor) return descriptor\n }\n // Recursive search up each ref's prototype\n for (const ref of refs) {\n let obj = ref.value && Object.getPrototypeOf(ref.value)\n while (obj) {\n const descriptor = Reflect.getOwnPropertyDescriptor(obj, key)\n if (descriptor) return descriptor\n obj = Object.getPrototypeOf(obj)\n }\n }\n return undefined\n },\n }) as any\n}\n","// Styles\nimport './VToolbar.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VExpandTransition } from '@/components/transitions'\nimport { VImg } from '@/components/VImg'\nimport { VToolbarTitle } from './VToolbarTitle'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useForwardRef } from '@/composables/forwardRef'\n\n// Utilities\nimport { computed, ref, toRef } from 'vue'\nimport { convertToUnit, genericComponent, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { MakeSlots } from '@/util'\nimport type { ExtractPropTypes, PropType } from 'vue'\nimport { provideDefaults } from '@/composables/defaults'\n\nexport type Density = typeof allowedDensities[number]\n\nconst allowedDensities = [null, 'prominent', 'default', 'comfortable', 'compact'] as const\n\nexport const makeVToolbarProps = propsFactory({\n absolute: Boolean,\n collapse: Boolean,\n color: String,\n density: {\n type: String as PropType<Density>,\n default: 'default',\n validator: (v: any) => allowedDensities.includes(v),\n },\n extended: Boolean,\n extensionHeight: {\n type: [Number, String],\n default: 48,\n },\n flat: Boolean,\n floating: Boolean,\n height: {\n type: [Number, String],\n default: 56,\n },\n image: String,\n title: String,\n\n ...makeBorderProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'header' }),\n ...makeThemeProps(),\n}, 'v-toolbar')\n\nexport const VToolbar = genericComponent<new () => {\n $slots: MakeSlots<{\n default: []\n image: [{ image: string }]\n prepend: []\n append: []\n title: []\n extension: []\n }>\n}>()({\n name: 'VToolbar',\n\n props: makeVToolbarProps(),\n\n setup (props, { slots }) {\n const { borderClasses } = useBorder(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n\n const isExtended = ref(!!(props.extended || slots.extension?.()))\n const contentHeight = computed(() => parseInt((\n Number(props.height) +\n (props.density === 'prominent' ? Number(props.height) : 0) -\n (props.density === 'comfortable' ? 8 : 0) -\n (props.density === 'compact' ? 16 : 0)\n ), 10))\n const extensionHeight = computed(() => isExtended.value\n ? parseInt((\n Number(props.extensionHeight) +\n (props.density === 'prominent' ? Number(props.extensionHeight) : 0) -\n (props.density === 'comfortable' ? 4 : 0) -\n (props.density === 'compact' ? 8 : 0)\n ), 10)\n : 0\n )\n\n provideDefaults({\n VBtn: {\n flat: true,\n variant: 'text',\n },\n })\n\n useRender(() => {\n const hasTitle = !!(props.title || slots.title)\n const hasImage = !!(slots.image || props.image)\n\n const extension = slots.extension?.()\n isExtended.value = !!(props.extended || extension)\n\n return (\n <props.tag\n class={[\n 'v-toolbar',\n {\n 'v-toolbar--absolute': props.absolute,\n 'v-toolbar--collapse': props.collapse,\n 'v-toolbar--flat': props.flat,\n 'v-toolbar--floating': props.floating,\n [`v-toolbar--density-${props.density}`]: true,\n },\n backgroundColorClasses.value,\n borderClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n themeClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n ]}\n >\n { hasImage && (\n <div class=\"v-toolbar__image\">\n <VDefaultsProvider\n defaults={{\n VImg: {\n cover: true,\n src: props.image,\n },\n }}\n scoped\n >\n { slots.image ? slots.image?.() : (<VImg />) }\n </VDefaultsProvider>\n </div>\n ) }\n\n <div\n class=\"v-toolbar__content\"\n style={{ height: convertToUnit(contentHeight.value) }}\n >\n { slots.prepend && (\n <div class=\"v-toolbar__prepend\">\n { slots.prepend?.() }\n </div>\n ) }\n\n { hasTitle && (\n <VToolbarTitle text={ props.title }>\n {{ text: slots.title }}\n </VToolbarTitle>\n ) }\n\n { slots.default?.() }\n\n { slots.append && (\n <div class=\"v-toolbar__append\">\n { slots.append?.() }\n </div>\n ) }\n </div>\n\n <VExpandTransition>\n { isExtended.value && (\n <div\n class=\"v-toolbar__extension\"\n style={{ height: convertToUnit(extensionHeight.value) }}\n >\n { extension }\n </div>\n ) }\n </VExpandTransition>\n </props.tag>\n )\n })\n\n return useForwardRef({\n contentHeight,\n extensionHeight,\n })\n },\n})\n\nexport type VToolbar = InstanceType<typeof VToolbar>\n\nexport function filterToolbarProps (props: ExtractPropTypes<ReturnType<typeof makeVToolbarProps>>) {\n return pick(props, Object.keys(VToolbar?.props ?? {}) as any)\n}\n","// Utilities\nimport { computed, ref } from 'vue'\nimport { getCurrentInstance, toKebabCase } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\n// Composables\nexport function useProxiedModel<\n Props extends object & { [key in Prop as `onUpdate:${Prop}`]: ((val: any) => void) | undefined },\n Prop extends Extract<keyof Props, string>,\n Inner = Props[Prop],\n> (\n props: Props,\n prop: Prop,\n defaultValue?: Props[Prop],\n transformIn: (value?: Props[Prop]) => Inner = (v: any) => v,\n transformOut: (value: Inner) => Props[Prop] = (v: any) => v,\n) {\n const vm = getCurrentInstance('useProxiedModel')\n\n const propIsDefined = computed(() => {\n return !!(\n typeof props[prop] !== 'undefined' &&\n (vm?.vnode.props?.hasOwnProperty(prop) || vm?.vnode.props?.hasOwnProperty(toKebabCase(prop)))\n )\n })\n\n const internal = ref(transformIn(props[prop])) as Ref<Inner>\n\n return computed<Inner extends any[] ? Readonly<Inner> : Inner>({\n get (): any {\n if (propIsDefined.value) return transformIn(props[prop])\n else return internal.value\n },\n set (newValue) {\n if ((propIsDefined.value ? transformIn(props[prop]) : internal.value) === newValue) {\n return\n }\n internal.value = newValue\n vm?.emit(`update:${prop}`, transformOut(newValue))\n },\n })\n}\n","// Styles\nimport './VAppBar.sass'\n\n// Components\nimport { filterToolbarProps, makeVToolbarProps, VToolbar } from '@/components/VToolbar/VToolbar'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VAppBar = defineComponent({\n name: 'VAppBar',\n\n props: {\n // TODO: Implement scrolling techniques\n // hideOnScroll: Boolean\n // invertedScroll: Boolean\n // collapseOnScroll: Boolean\n // elevateOnScroll: Boolean\n // shrinkOnScroll: Boolean\n // fadeImageOnScroll: Boolean\n modelValue: {\n type: Boolean,\n default: true,\n },\n location: {\n type: String as PropType<'top' | 'bottom'>,\n default: 'top',\n validator: (value: any) => ['top', 'bottom'].includes(value),\n },\n\n ...makeVToolbarProps(),\n ...makeLayoutItemProps(),\n\n height: {\n type: [Number, String],\n default: 64,\n },\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const vToolbarRef = ref()\n const isActive = useProxiedModel(props, 'modelValue')\n const height = computed(() => {\n const height: number = vToolbarRef.value?.contentHeight ?? 0\n const extensionHeight: number = vToolbarRef.value?.extensionHeight ?? 0\n\n return (height + extensionHeight)\n })\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'location'),\n layoutSize: height,\n elementSize: height,\n active: isActive,\n absolute: toRef(props, 'absolute'),\n })\n\n return () => {\n const [toolbarProps] = filterToolbarProps(props)\n\n return (\n <VToolbar\n ref={ vToolbarRef }\n class={[\n 'v-app-bar',\n {\n 'v-app-bar--bottom': props.location === 'bottom',\n },\n ]}\n style={{\n ...layoutItemStyles.value,\n height: undefined,\n }}\n { ...toolbarProps }\n v-slots={ slots }\n />\n )\n }\n },\n})\n\nexport type VAppBar = InstanceType<typeof VAppBar>\n","// Utilities\nimport { computed } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nconst allowedDensities = [null, 'default', 'comfortable', 'compact'] as const\n\nexport type Density = typeof allowedDensities[number]\n\nexport interface DensityProps {\n density?: Density\n}\n\n// Composables\nexport const makeDensityProps = propsFactory({\n density: {\n type: String as PropType<Density>,\n default: 'default',\n validator: (v: any) => allowedDensities.includes(v),\n },\n}, 'density')\n\nexport function useDensity (\n props: DensityProps,\n name = getCurrentInstanceName(),\n) {\n const densityClasses = computed(() => {\n return `${name}--density-${props.density}`\n })\n\n return { densityClasses }\n}\n","// Composables\nimport { useColor } from '@/composables/color'\n\n// Utilities\nimport { computed, unref } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { MaybeRef } from '@/util'\n\nexport const allowedVariants = [\n 'outlined',\n 'plain',\n 'text',\n 'contained',\n 'contained-flat',\n 'contained-text',\n] as const\n\nexport type Variant = typeof allowedVariants[number]\n\nexport interface VariantProps {\n color?: string\n variant: Variant\n}\n\nexport function genOverlays (isClickable: boolean, name: string) {\n return (\n <>\n { isClickable && <div class={`${name}__overlay`} /> }\n\n <div class={`${name}__underlay`} />\n </>\n )\n}\n\nexport const makeVariantProps = propsFactory({\n color: String,\n variant: {\n type: String as PropType<Variant>,\n default: 'contained',\n validator: (v: any) => allowedVariants.includes(v),\n },\n}, 'variant')\n\nexport function useVariant (\n props: MaybeRef<VariantProps>,\n name = getCurrentInstanceName(),\n) {\n const variantClasses = computed(() => {\n const { variant } = unref(props)\n return `${name}--variant-${variant}`\n })\n\n const { colorClasses, colorStyles } = useColor(computed(() => {\n const { variant, color } = unref(props)\n return {\n [['contained', 'contained-flat'].includes(variant) ? 'background' : 'text']: color,\n }\n }))\n\n return { colorClasses, colorStyles, variantClasses }\n}\n","// Styles\nimport './VBtnGroup.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utility\nimport { defineComponent, useRender } from '@/util'\nimport { toRef } from 'vue'\n\nexport const VBtnGroup = defineComponent({\n name: 'VBtnGroup',\n\n props: {\n divided: Boolean,\n\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps(),\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n const { borderClasses } = useBorder(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n\n provideDefaults({\n VBtn: {\n height: 'auto',\n color: toRef(props, 'color'),\n density: toRef(props, 'density'),\n flat: true,\n variant: toRef(props, 'variant'),\n },\n })\n\n useRender(() => {\n return (\n <props.tag\n class={[\n 'v-btn-group',\n {\n 'v-btn-group--divided': props.divided,\n },\n themeClasses.value,\n borderClasses.value,\n densityClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n ]}\n v-slots={ slots }\n />\n )\n })\n },\n})\n","// Composables\nimport { useProxiedModel } from './proxiedModel'\n\n// Utilities\nimport { computed, inject, onBeforeUnmount, onMounted, provide, reactive, toRef, watch } from 'vue'\nimport { consoleWarn, deepEqual, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, ComputedRef, ExtractPropTypes, InjectionKey, PropType, Ref, UnwrapRef } from 'vue'\n\nexport interface GroupItem {\n id: number\n value: Ref<unknown>\n disabled: Ref<boolean | undefined>\n}\n\nexport interface GroupProps {\n disabled: boolean\n modelValue: unknown\n multiple?: boolean\n mandatory?: boolean | 'force' | undefined\n max?: number | undefined\n selectedClass: string | undefined\n 'onUpdate:modelValue': ((val: unknown) => void) | undefined\n}\n\nexport interface GroupProvide {\n register: (item: GroupItem, cmp: ComponentInternalInstance) => void\n unregister: (id: number) => void\n select: (id: number, value: boolean) => void\n selected: Ref<Readonly<number[]>>\n isSelected: (id: number) => boolean\n prev: () => void\n next: () => void\n selectedClass: Ref<string | undefined>\n items: ComputedRef<{\n id: number\n value: unknown\n disabled: boolean | undefined\n }[]>\n disabled: Ref<boolean | undefined>\n getItemIndex: (value: unknown) => number\n}\n\nexport interface GroupItemProvide {\n id: number\n isSelected: Ref<boolean>\n toggle: () => void\n select: (value: boolean) => void\n selectedClass: Ref<(string | undefined)[] | false>\n value: Ref<unknown>\n disabled: Ref<boolean | undefined>\n group: GroupProvide\n}\n\nexport const makeGroupProps = propsFactory({\n modelValue: {\n type: null,\n default: undefined,\n },\n multiple: Boolean,\n mandatory: [Boolean, String] as PropType<boolean | 'force'>,\n max: Number,\n selectedClass: String,\n disabled: Boolean,\n}, 'group')\n\nexport const makeGroupItemProps = propsFactory({\n value: null,\n disabled: Boolean,\n selectedClass: String,\n}, 'group-item')\n\nexport type GroupItemProps = ExtractPropTypes<ReturnType<typeof makeGroupItemProps>>\n\n// Composables\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required?: true,\n): GroupItemProvide\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required: false,\n): GroupItemProvide | null\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required = true,\n): GroupItemProvide | null {\n const vm = getCurrentInstance('useGroupItem')\n\n if (!vm) {\n throw new Error(\n '[Vuetify] useGroupItem composable must be used inside a component setup function'\n )\n }\n\n const id = getUid()\n\n provide(Symbol.for(`${injectKey.description}:id`), id)\n\n const group = inject(injectKey, null)\n\n if (!group) {\n if (!required) return group\n\n throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${injectKey.description}`)\n }\n\n const value = toRef(props, 'value')\n const disabled = computed(() => group.disabled.value || props.disabled)\n\n group.register({\n id,\n value,\n disabled,\n }, vm)\n\n onBeforeUnmount(() => {\n group.unregister(id)\n })\n\n const isSelected = computed(() => {\n return group.isSelected(id)\n })\n\n const selectedClass = computed(() => isSelected.value && [group.selectedClass.value, props.selectedClass])\n\n watch(isSelected, value => {\n vm.emit('group:selected', { value })\n })\n\n return {\n id,\n isSelected,\n toggle: () => group.select(id, !isSelected.value),\n select: (value: boolean) => group.select(id, value),\n selectedClass,\n value,\n disabled,\n group,\n }\n}\n\nexport function useGroup (\n props: GroupProps,\n injectKey: InjectionKey<GroupProvide>\n) {\n let isUnmounted = false\n const items = reactive<GroupItem[]>([])\n const selected = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => {\n if (v == null) return []\n\n return getIds(items, wrapInArray(v))\n },\n v => {\n const arr = getValues(items, v)\n\n return props.multiple ? arr : arr[0]\n }\n )\n\n const groupVm = getCurrentInstance('useGroup')\n\n function register (item: GroupItem, vm: ComponentInternalInstance) {\n // Is there a better way to fix this typing?\n const unwrapped = item as unknown as UnwrapRef<GroupItem>\n\n const key = Symbol.for(`${injectKey.description}:id`)\n const children = findChildrenWithProvide(key, groupVm?.vnode)\n const index = children.indexOf(vm)\n\n if (index > -1) {\n items.splice(index, 0, unwrapped)\n } else {\n items.push(unwrapped)\n }\n }\n\n function unregister (id: number) {\n if (isUnmounted) return\n\n // TODO: re-evaluate this line's importance in the future\n // should we only modify the model if mandatory is set.\n // selected.value = selected.value.filter(v => v !== id)\n\n forceMandatoryValue()\n\n const index = items.findIndex(item => item.id === id)\n items.splice(index, 1)\n }\n\n // If mandatory and nothing is selected, then select first non-disabled item\n function forceMandatoryValue () {\n const item = items.find(item => !item.disabled)\n if (item && props.mandatory === 'force' && !selected.value.length) {\n selected.value = [item.id]\n }\n }\n\n onMounted(() => {\n forceMandatoryValue()\n })\n\n onBeforeUnmount(() => {\n isUnmounted = true\n })\n\n function select (id: number, value?: boolean) {\n const item = items.find(item => item.id === id)\n if (value && item?.disabled) return\n\n if (props.multiple) {\n const internalValue = selected.value.slice()\n const index = internalValue.findIndex(v => v === id)\n const isSelected = ~index\n value = value ?? !isSelected\n\n // We can't remove value if group is\n // mandatory, value already exists,\n // and it is the only value\n if (\n isSelected &&\n props.mandatory &&\n internalValue.length <= 1\n ) return\n\n // We can't add value if it would\n // cause max limit to be exceeded\n if (\n !isSelected &&\n props.max != null &&\n internalValue.length + 1 > props.max\n ) return\n\n if (index < 0 && value) internalValue.push(id)\n else if (index >= 0 && !value) internalValue.splice(index, 1)\n\n selected.value = internalValue\n } else {\n const isSelected = selected.value.includes(id)\n if (props.mandatory && isSelected) return\n\n selected.value = (value ?? !isSelected) ? [id] : []\n }\n }\n\n function step (offset: number) {\n // getting an offset from selected value obviously won't work with multiple values\n if (props.multiple) consoleWarn('This method is not supported when using \"multiple\" prop')\n\n if (!selected.value.length) {\n const item = items.find(item => !item.disabled)\n item && (selected.value = [item.id])\n } else {\n const currentId = selected.value[0]\n const currentIndex = items.findIndex(i => i.id === currentId)\n\n let newIndex = (currentIndex + offset) % items.length\n let newItem = items[newIndex]\n\n while (newItem.disabled && newIndex !== currentIndex) {\n newIndex = (newIndex + offset) % items.length\n newItem = items[newIndex]\n }\n\n if (newItem.disabled) return\n\n selected.value = [items[newIndex].id]\n }\n }\n\n const state: GroupProvide = {\n register,\n unregister,\n selected,\n select,\n disabled: toRef(props, 'disabled'),\n prev: () => step(items.length - 1),\n next: () => step(1),\n isSelected: (id: number) => selected.value.includes(id),\n selectedClass: computed(() => props.selectedClass),\n items: computed(() => items),\n getItemIndex: (value: unknown) => getItemIndex(items, value),\n }\n\n provide(injectKey, state)\n\n return state\n}\n\nfunction getItemIndex (items: UnwrapRef<GroupItem[]>, value: unknown) {\n const ids = getIds(items, [value])\n\n if (!ids.length) return -1\n\n return items.findIndex(item => item.id === ids[0])\n}\n\nfunction getIds (items: UnwrapRef<GroupItem[]>, modelValue: any[]) {\n const ids = []\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n\n if (item.value != null) {\n if (modelValue.find(value => deepEqual(value, item.value)) != null) {\n ids.push(item.id)\n }\n } else if (modelValue.includes(i)) {\n ids.push(item.id)\n }\n }\n\n return ids\n}\n\nfunction getValues (items: UnwrapRef<GroupItem[]>, ids: any[]) {\n const values = []\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n\n if (ids.includes(item.id)) {\n values.push(item.value != null ? item.value : i)\n }\n }\n\n return values\n}\n","// Styles\nimport './VBtnToggle.sass'\n\n// Components\nimport { VBtnGroup } from '@/components/VBtnGroup'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\n\n// Utility\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { GroupProvide } from '@/composables/group'\nimport type { InjectionKey } from 'vue'\nimport type { MakeSlots } from '@/util'\n\nexport type BtnToggleSlotProps = 'isSelected' | 'select' | 'selected' | 'next' | 'prev'\nexport interface DefaultBtnToggleSlot extends Pick<GroupProvide, BtnToggleSlotProps> {}\n\nexport const VBtnToggleSymbol: InjectionKey<GroupProvide> = Symbol.for('vuetify:v-btn-toggle')\n\nexport const VBtnToggle = genericComponent<new <T>() => {\n $slots: MakeSlots<{\n default: [DefaultBtnToggleSlot]\n }>\n}>()({\n name: 'VBtnToggle',\n\n props: makeGroupProps({ selectedClass: 'v-btn--selected' }),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { isSelected, next, prev, select, selected } = useGroup(props, VBtnToggleSymbol)\n\n useRender(() => (\n <VBtnGroup class=\"v-btn-toggle\">\n { slots.default?.({\n isSelected,\n next,\n prev,\n select,\n selected,\n } as DefaultBtnToggleSlot) }\n </VBtnGroup>\n ))\n\n return {\n next,\n prev,\n select,\n }\n },\n})\n","// Utilities\nimport { computed } from 'vue'\nimport { convertToUnit, getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nconst predefinedSizes = ['x-small', 'small', 'default', 'large', 'x-large']\n\nexport interface SizeProps {\n size?: string | number\n}\n\n// Composables\nexport const makeSizeProps = propsFactory({\n size: {\n type: [String, Number],\n default: 'default',\n },\n}, 'size')\n\nexport function useSize (\n props: SizeProps,\n name = getCurrentInstanceName(),\n) {\n const sizeClasses = computed(() => {\n return predefinedSizes.includes(props.size as string)\n ? `${name}--size-${props.size}`\n : null\n })\n\n const sizeStyles = computed(() => {\n return !predefinedSizes.includes(props.size as string) && props.size\n ? ({\n width: convertToUnit(props.size),\n height: convertToUnit(props.size),\n }) : null\n })\n\n return { sizeClasses, sizeStyles }\n}\n","// Utilities\nimport { h } from 'vue'\n\n// Components\nimport { VClassIcon } from '@/composables/icons'\n\n// Types\nimport type { IconAliases, IconSet } from '@/composables/icons'\n\nconst aliases: IconAliases = {\n collapse: 'mdi-chevron-up',\n complete: 'mdi-check',\n cancel: 'mdi-close-circle',\n close: 'mdi-close',\n delete: 'mdi-close-circle', // delete (e.g. v-chip close)\n clear: 'mdi-close-circle',\n success: 'mdi-check-circle',\n info: 'mdi-information',\n warning: 'mdi-alert-circle',\n error: 'mdi-close-circle',\n prev: 'mdi-chevron-left',\n next: 'mdi-chevron-right',\n checkboxOn: 'mdi-checkbox-marked',\n checkboxOff: 'mdi-checkbox-blank-outline',\n checkboxIndeterminate: 'mdi-minus-box',\n delimiter: 'mdi-circle', // for carousel\n sort: 'mdi-arrow-up',\n expand: 'mdi-chevron-down',\n menu: 'mdi-menu',\n subgroup: 'mdi-menu-down',\n dropdown: 'mdi-menu-down',\n radioOn: 'mdi-radiobox-marked',\n radioOff: 'mdi-radiobox-blank',\n edit: 'mdi-pencil',\n ratingEmpty: 'mdi-star-outline',\n ratingFull: 'mdi-star',\n ratingHalf: 'mdi-star-half-full',\n loading: 'mdi-cached',\n first: 'mdi-page-first',\n last: 'mdi-page-last',\n unfold: 'mdi-unfold-more-horizontal',\n file: 'mdi-paperclip',\n plus: 'mdi-plus',\n minus: 'mdi-minus',\n}\n\nconst mdi: IconSet = {\n // Not using mergeProps here, functional components merge props by default (?)\n component: (props: any) => h(VClassIcon, { ...props, class: 'mdi' }),\n}\n\nexport { aliases, mdi }\n","// Icons\nimport { aliases, mdi } from '@/iconsets/mdi'\n\n// Utilities\nimport { computed, inject, isRef } from 'vue'\nimport { defineComponent, mergeDeep, propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, JSXComponent, PropType, Ref } from 'vue'\n\nexport type IconValue = string | JSXComponent\nexport const IconValue = [String, Function, Object] as PropType<IconValue>\n\nexport interface IconAliases {\n [name: string]: IconValue\n complete: IconValue\n cancel: IconValue\n close: IconValue\n delete: IconValue\n clear: IconValue\n success: IconValue\n info: IconValue\n warning: IconValue\n error: IconValue\n prev: IconValue\n next: IconValue\n checkboxOn: IconValue\n checkboxOff: IconValue\n checkboxIndeterminate: IconValue\n delimiter: IconValue\n sort: IconValue\n expand: IconValue\n menu: IconValue\n subgroup: IconValue\n dropdown: IconValue\n radioOn: IconValue\n radioOff: IconValue\n edit: IconValue\n ratingEmpty: IconValue\n ratingFull: IconValue\n ratingHalf: IconValue\n loading: IconValue\n first: IconValue\n last: IconValue\n unfold: IconValue\n file: IconValue\n plus: IconValue\n minus: IconValue\n}\n\nexport interface IconProps {\n tag: string\n icon: IconValue\n disabled?: Boolean\n}\n\ntype IconComponent = JSXComponent<IconProps>\n\nexport interface IconSet {\n component: IconComponent\n}\n\nexport type IconOptions = {\n defaultSet: string\n aliases?: Partial<IconAliases>\n sets: Record<string, IconSet>\n}\n\ntype IconInstance = {\n component: IconComponent\n icon: IconValue\n}\n\nexport const IconSymbol: InjectionKey<IconOptions> = Symbol.for('vuetify:icons')\n\nexport const makeIconProps = propsFactory({\n icon: {\n type: IconValue,\n required: true,\n },\n // Could not remove this and use makeTagProps, types complained because it is not required\n tag: {\n type: String,\n required: true,\n },\n}, 'icon')\n\nexport const VComponentIcon = defineComponent({\n name: 'VComponentIcon',\n\n props: makeIconProps(),\n\n setup (props) {\n return () => {\n return (\n <props.tag>\n <props.icon />\n </props.tag>\n )\n }\n },\n})\n\nexport const VSvgIcon = defineComponent({\n name: 'VSvgIcon',\n\n inheritAttrs: false,\n\n props: makeIconProps(),\n\n setup (props, { attrs }) {\n return () => {\n return (\n <props.tag { ...attrs } style={ null }>\n <svg\n class=\"v-icon__svg\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n role=\"img\"\n aria-hidden=\"true\"\n >\n <path d={ props.icon as string }></path>\n </svg>\n </props.tag>\n )\n }\n },\n})\n\nexport const VLigatureIcon = defineComponent({\n name: 'VLigatureIcon',\n\n props: makeIconProps(),\n\n setup (props) {\n return () => {\n return <props.tag>{ props.icon }</props.tag>\n }\n },\n})\n\nexport const VClassIcon = defineComponent({\n name: 'VClassIcon',\n\n props: makeIconProps(),\n\n setup (props) {\n return () => {\n return <props.tag class={ props.icon }></props.tag>\n }\n },\n})\n\nexport const defaultSets: Record<string, IconSet> = {\n svg: {\n component: VSvgIcon,\n },\n class: {\n component: VClassIcon,\n },\n}\n\n// Composables\nexport function createIcons (options?: IconOptions) {\n return mergeDeep({\n defaultSet: 'mdi',\n sets: {\n ...defaultSets,\n mdi,\n },\n aliases,\n }, options)\n}\n\nexport const useIcon = (props: Ref<string | undefined> | { icon?: IconValue }) => {\n const icons = inject(IconSymbol)\n\n if (!icons) throw new Error('Missing Vuetify Icons provide!')\n\n const iconData: Ref<IconInstance> = computed(() => {\n const iconAlias = isRef(props) ? props.value : props.icon\n\n if (!iconAlias) throw new Error('Icon value is undefined or null')\n\n let icon: IconValue | undefined = iconAlias\n\n if (typeof iconAlias === 'string' && iconAlias.includes('$')) {\n icon = icons.aliases?.[iconAlias.slice(iconAlias.indexOf('$') + 1)]\n }\n\n if (!icon) throw new Error(`Could not find aliased icon \"${iconAlias}\"`)\n\n if (typeof icon !== 'string') {\n return {\n component: VComponentIcon,\n icon,\n }\n }\n\n const iconSetName = Object.keys(icons.sets).find(\n setName => typeof icon === 'string' && icon.startsWith(`${setName}:`)\n )\n\n const iconName = iconSetName ? icon.slice(iconSetName.length + 1) : icon\n const iconSet = icons.sets[iconSetName ?? icons.defaultSet]\n\n return {\n component: iconSet.component,\n icon: iconName,\n }\n })\n\n return { iconData }\n}\n","// Styles\nimport './VIcon.sass'\n\n// Composables\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { IconValue, useIcon } from '@/composables/icons'\nimport { useTextColor } from '@/composables/color'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, defineComponent, flattenFragments, propsFactory } from '@/util'\n\n// Types\nimport type { ComputedRef } from 'vue'\n\nexport const makeVIconProps = propsFactory({\n color: String,\n start: Boolean,\n end: Boolean,\n icon: IconValue,\n\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'i' }),\n ...makeThemeProps(),\n}, 'v-icon')\n\nexport const VIcon = defineComponent({\n name: 'VIcon',\n\n props: makeVIconProps(),\n\n setup (props, { attrs, slots }) {\n let slotIcon: ComputedRef<string | undefined> | undefined\n if (slots.default) {\n slotIcon = computed(() => {\n const slot = slots.default?.()\n if (!slot) return\n\n return flattenFragments(slot).filter(node =>\n node.children && typeof node.children === 'string'\n )[0]?.children as string\n })\n }\n\n const { themeClasses } = provideTheme(props)\n const { iconData } = useIcon(slotIcon || props)\n const { sizeClasses } = useSize(props)\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n\n return () => {\n return (\n <iconData.value.component\n tag={ props.tag }\n icon={ iconData.value.icon }\n class={[\n 'v-icon',\n 'notranslate',\n sizeClasses.value,\n textColorClasses.value,\n themeClasses.value,\n {\n 'v-icon--clickable': !!attrs.onClick,\n 'v-icon--start': props.start,\n 'v-icon--end': props.end,\n },\n ]}\n style={[\n !sizeClasses.value ? ({\n fontSize: convertToUnit(props.size),\n width: convertToUnit(props.size),\n height: convertToUnit(props.size),\n }) : undefined,\n textColorStyles.value,\n ]}\n aria-hidden=\"true\"\n />\n )\n }\n },\n})\n","// Composables\nimport { useRtl } from '@/composables/rtl'\n\n// Utilities\nimport { computed } from 'vue'\nimport { parseAnchor, propsFactory } from '@/util'\n\n// Types\nimport type { CSSProperties, PropType } from 'vue'\nimport type { Anchor } from '@/util'\n\nconst oppositeMap = {\n center: 'center',\n top: 'bottom',\n bottom: 'top',\n left: 'right',\n right: 'left',\n} as const\n\nexport interface LocationProps {\n location: Anchor | undefined\n}\n\nexport const makeLocationProps = propsFactory({\n location: String as PropType<Anchor>,\n}, 'location')\n\nexport function useLocation (props: LocationProps, opposite = false, offset?: (side: string) => number) {\n const { isRtl } = useRtl()\n\n function toPhysical (side: string) {\n return (\n side === 'start' ? (isRtl.value ? 'right' : 'left')\n : side === 'end' ? (isRtl.value ? 'left' : 'right')\n : side\n ) as 'right' | 'left' | 'top' | 'bottom' | 'center'\n }\n\n const locationStyles = computed(() => {\n if (!props.location) return {}\n\n const anchor = parseAnchor(\n props.location.split(' ').length > 1\n ? props.location\n : `${props.location} center` as Anchor\n )\n\n const side = toPhysical(anchor.side)\n const align = toPhysical(anchor.align)\n\n function getOffset (side: string) {\n return offset\n ? offset(side)\n : 0\n }\n\n const styles = {} as CSSProperties\n\n if (side !== 'center') {\n if (opposite) styles[oppositeMap[side]] = `calc(100% - ${getOffset(side)}px)`\n else styles[side] = 0\n }\n if (align !== 'center') {\n if (opposite) styles[oppositeMap[align]] = `calc(100% - ${getOffset(align)}px)`\n else styles[align] = 0\n } else {\n if (side === 'center') styles.top = styles.left = '50%'\n else {\n styles[({\n top: 'left',\n bottom: 'left',\n left: 'top',\n right: 'top',\n } as const)[side]] = '50%'\n }\n styles.transform = {\n top: 'translateX(-50%)',\n bottom: 'translateX(-50%)',\n left: 'translateY(-50%)',\n right: 'translateY(-50%)',\n center: 'translate(-50%, -50%)',\n }[side]\n }\n\n return styles\n })\n\n return { locationStyles }\n}\n","// Utilities\nimport { computed } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nconst positionValues = ['static', 'relative', 'fixed', 'absolute', 'sticky'] as const\n\ntype Position = typeof positionValues[number]\n\nexport interface PositionProps {\n position: Position | undefined\n}\n\n// Composables\nexport const makePositionProps = propsFactory({\n position: {\n type: String as PropType<Position>,\n validator: /* istanbul ignore next */ (v: any) => positionValues.includes(v),\n },\n}, 'position')\n\nexport function usePosition (\n props: PositionProps,\n name = getCurrentInstanceName(),\n) {\n const positionClasses = computed(() => {\n return props.position ? `${name}--${props.position}` : undefined\n })\n\n return { positionClasses }\n}\n","// Utilities\nimport { getCurrentInstance, IN_BROWSER, propsFactory } from '@/util'\nimport {\n computed,\n nextTick,\n onScopeDispose,\n resolveDynamicComponent,\n toRef,\n} from 'vue'\n\n// Types\nimport type { ComputedRef, PropType, Ref, SetupContext } from 'vue'\nimport type {\n RouterLink as _RouterLink,\n useLink as _useLink,\n NavigationGuardNext,\n RouteLocationNormalizedLoaded,\n RouteLocationRaw,\n Router,\n} from 'vue-router'\n\nexport function useRoute (): Ref<RouteLocationNormalizedLoaded | undefined> {\n const vm = getCurrentInstance('useRoute')\n\n return computed(() => vm?.proxy?.$route)\n}\n\nexport function useRouter (): Router | undefined {\n return getCurrentInstance('useRouter')?.proxy?.$router\n}\n\nexport interface LinkProps {\n href?: string\n replace?: boolean\n to?: RouteLocationRaw\n}\n\nexport interface UseLink extends Omit<Partial<ReturnType<typeof _useLink>>, 'href'> {\n isLink: ComputedRef<boolean>\n isClickable: ComputedRef<boolean>\n href: Ref<string | undefined>\n}\n\nexport function useLink (props: LinkProps, attrs: SetupContext['attrs']): UseLink {\n const RouterLink = resolveDynamicComponent('RouterLink') as typeof _RouterLink | string\n\n const isLink = computed(() => !!(props.href || props.to))\n const isClickable = computed(() => {\n return isLink?.value || !!(attrs.onClick || attrs.onClickOnce)\n })\n\n if (typeof RouterLink === 'string') {\n return {\n isLink,\n isClickable,\n href: toRef(props, 'href'),\n }\n }\n\n const link = props.to ? RouterLink.useLink(props as Required<LinkProps>) : undefined\n\n return {\n ...link,\n isLink,\n isClickable,\n href: computed(() => props.to ? link?.route.value.href : props.href),\n }\n}\n\nexport const makeRouterProps = propsFactory({\n href: String,\n replace: Boolean,\n to: [String, Object] as PropType<RouteLocationRaw>,\n}, 'router')\n\nlet inTransition = false\nexport function useBackButton (router: Router | undefined, cb: (next: NavigationGuardNext) => void) {\n let popped = false\n let removeBefore: (() => void) | undefined\n let removeAfter: (() => void) | undefined\n\n if (IN_BROWSER) {\n nextTick(() => {\n window.addEventListener('popstate', onPopstate)\n removeBefore = router?.beforeEach((to, from, next) => {\n if (!inTransition) {\n setTimeout(() => popped ? cb(next) : next())\n } else {\n popped ? cb(next) : next()\n }\n inTransition = true\n })\n removeAfter = router?.afterEach(() => {\n inTransition = false\n })\n })\n onScopeDispose(() => {\n window.removeEventListener('popstate', onPopstate)\n removeBefore?.()\n removeAfter?.()\n })\n }\n\n function onPopstate (e: PopStateEvent) {\n if (e.state?.replaced) return\n\n popped = true\n setTimeout(() => (popped = false))\n }\n}\n","// Utilities\nimport { nextTick, watch } from 'vue'\n\n// Types\nimport type { UseLink } from './router'\n\nexport function useSelectLink (link: UseLink, select?: (value: boolean, e?: Event) => void) {\n watch(() => link.isExactActive?.value, isExactActive => {\n if (link.isLink.value && isExactActive && select) {\n nextTick(() => {\n select(true)\n })\n }\n }, {\n immediate: true,\n })\n}\n","// Styles\nimport './VRipple.sass'\n\n// Utilities\nimport { isObject, keyCodes } from '@/util'\n\n// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\nconst stopSymbol = Symbol('rippleStop')\n\ntype VuetifyRippleEvent = (MouseEvent | TouchEvent | KeyboardEvent) & { [stopSymbol]?: boolean }\n\nconst DELAY_RIPPLE = 80\n\nfunction transform (el: HTMLElement, value: string) {\n el.style.transform = value\n el.style.webkitTransform = value\n}\n\nfunction opacity (el: HTMLElement, value: number) {\n el.style.opacity = `calc(${value} * var(--v-theme-overlay-multiplier))`\n}\n\ninterface RippleOptions {\n class?: string\n center?: boolean\n circle?: boolean\n}\n\nexport interface RippleDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value?: boolean | { class: string }\n modifiers: {\n center?: boolean\n circle?: boolean\n stop?: boolean\n }\n}\n\nfunction isTouchEvent (e: VuetifyRippleEvent): e is TouchEvent {\n return e.constructor.name === 'TouchEvent'\n}\n\nfunction isKeyboardEvent (e: VuetifyRippleEvent): e is KeyboardEvent {\n return e.constructor.name === 'KeyboardEvent'\n}\n\nconst calculate = (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n) => {\n let localX = 0\n let localY = 0\n\n if (!isKeyboardEvent(e)) {\n const offset = el.getBoundingClientRect()\n const target = isTouchEvent(e) ? e.touches[e.touches.length - 1] : e\n\n localX = target.clientX - offset.left\n localY = target.clientY - offset.top\n }\n\n let radius = 0\n let scale = 0.3\n if (el._ripple?.circle) {\n scale = 0.15\n radius = el.clientWidth / 2\n radius = value.center ? radius : radius + Math.sqrt((localX - radius) ** 2 + (localY - radius) ** 2) / 4\n } else {\n radius = Math.sqrt(el.clientWidth ** 2 + el.clientHeight ** 2) / 2\n }\n\n const centerX = `${(el.clientWidth - (radius * 2)) / 2}px`\n const centerY = `${(el.clientHeight - (radius * 2)) / 2}px`\n\n const x = value.center ? centerX : `${localX - radius}px`\n const y = value.center ? centerY : `${localY - radius}px`\n\n return { radius, scale, x, y, centerX, centerY }\n}\n\nconst ripples = {\n /* eslint-disable max-statements */\n show (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n ) {\n if (!el?._ripple?.enabled) {\n return\n }\n\n const container = document.createElement('span')\n const animation = document.createElement('span')\n\n container.appendChild(animation)\n container.className = 'v-ripple__container'\n\n if (value.class) {\n container.className += ` ${value.class}`\n }\n\n const { radius, scale, x, y, centerX, centerY } = calculate(e, el, value)\n\n const size = `${radius * 2}px`\n animation.className = 'v-ripple__animation'\n animation.style.width = size\n animation.style.height = size\n\n el.appendChild(container)\n\n const computed = window.getComputedStyle(el)\n if (computed && computed.position === 'static') {\n el.style.position = 'relative'\n el.dataset.previousPosition = 'static'\n }\n\n animation.classList.add('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--visible')\n transform(animation, `translate(${x}, ${y}) scale3d(${scale},${scale},${scale})`)\n opacity(animation, 0)\n animation.dataset.activated = String(performance.now())\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--in')\n transform(animation, `translate(${centerX}, ${centerY}) scale3d(1,1,1)`)\n opacity(animation, 0.08)\n }, 0)\n },\n\n hide (el: HTMLElement | null) {\n if (!el?._ripple?.enabled) return\n\n const ripples = el.getElementsByClassName('v-ripple__animation')\n\n if (ripples.length === 0) return\n const animation = ripples[ripples.length - 1]\n\n if (animation.dataset.isHiding) return\n else animation.dataset.isHiding = 'true'\n\n const diff = performance.now() - Number(animation.dataset.activated)\n const delay = Math.max(250 - diff, 0)\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--in')\n animation.classList.add('v-ripple__animation--out')\n opacity(animation, 0)\n\n setTimeout(() => {\n const ripples = el.getElementsByClassName('v-ripple__animation')\n if (ripples.length === 1 && el.dataset.previousPosition) {\n el.style.position = el.dataset.previousPosition\n delete el.dataset.previousPosition\n }\n\n animation.parentNode && el.removeChild(animation.parentNode)\n }, 300)\n }, delay)\n },\n}\n\nfunction isRippleEnabled (value: any): value is true {\n return typeof value === 'undefined' || !!value\n}\n\nfunction rippleShow (e: VuetifyRippleEvent) {\n const value: RippleOptions = {}\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element?._ripple || element._ripple.touched || e[stopSymbol]) return\n\n // Don't allow the event to trigger ripples on any other elements\n e[stopSymbol] = true\n\n if (isTouchEvent(e)) {\n element._ripple.touched = true\n element._ripple.isTouch = true\n } else {\n // It's possible for touch events to fire\n // as mouse events on Android/iOS, this\n // will skip the event call if it has\n // already been registered as touch\n if (element._ripple.isTouch) return\n }\n\n value.center = element._ripple.centered || isKeyboardEvent(e)\n if (element._ripple.class) {\n value.class = element._ripple.class\n }\n\n if (isTouchEvent(e)) {\n // already queued that shows or hides the ripple\n if (element._ripple.showTimerCommit) return\n\n element._ripple.showTimerCommit = () => {\n ripples.show(e, element, value)\n }\n element._ripple.showTimer = window.setTimeout(() => {\n if (element?._ripple?.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n }\n }, DELAY_RIPPLE)\n } else {\n ripples.show(e, element, value)\n }\n}\n\nfunction rippleStop (e: VuetifyRippleEvent) {\n e[stopSymbol] = true\n}\n\nfunction rippleHide (e: Event) {\n const element = e.currentTarget as HTMLElement | null\n if (!element || !element._ripple) return\n\n window.clearTimeout(element._ripple.showTimer)\n\n // The touch interaction occurs before the show timer is triggered.\n // We still want to show ripple effect.\n if (e.type === 'touchend' && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n\n // re-queue ripple hiding\n element._ripple.showTimer = window.setTimeout(() => {\n rippleHide(e)\n })\n return\n }\n\n window.setTimeout(() => {\n if (element._ripple) {\n element._ripple.touched = false\n }\n })\n ripples.hide(element)\n}\n\nfunction rippleCancelShow (e: MouseEvent | TouchEvent) {\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element || !element._ripple) return\n\n if (element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit = null\n }\n\n window.clearTimeout(element._ripple.showTimer)\n}\n\nlet keyboardRipple = false\n\nfunction keyboardRippleShow (e: KeyboardEvent) {\n if (!keyboardRipple && (e.keyCode === keyCodes.enter || e.keyCode === keyCodes.space)) {\n keyboardRipple = true\n rippleShow(e)\n }\n}\n\nfunction keyboardRippleHide (e: KeyboardEvent) {\n keyboardRipple = false\n rippleHide(e)\n}\n\nfunction focusRippleHide (e: FocusEvent) {\n if (keyboardRipple) {\n keyboardRipple = false\n rippleHide(e)\n }\n}\n\nfunction updateRipple (el: HTMLElement, binding: RippleDirectiveBinding, wasEnabled: boolean) {\n const { value, modifiers } = binding\n const enabled = isRippleEnabled(value)\n if (!enabled) {\n ripples.hide(el)\n }\n\n el._ripple = el._ripple ?? {}\n el._ripple.enabled = enabled\n el._ripple.centered = modifiers.center\n el._ripple.circle = modifiers.circle\n if (isObject(value) && value.class) {\n el._ripple.class = value.class\n }\n\n if (enabled && !wasEnabled) {\n if (modifiers.stop) {\n el.addEventListener('touchstart', rippleStop, { passive: true })\n el.addEventListener('mousedown', rippleStop)\n return\n }\n\n el.addEventListener('touchstart', rippleShow, { passive: true })\n el.addEventListener('touchend', rippleHide, { passive: true })\n el.addEventListener('touchmove', rippleCancelShow, { passive: true })\n el.addEventListener('touchcancel', rippleHide)\n\n el.addEventListener('mousedown', rippleShow)\n el.addEventListener('mouseup', rippleHide)\n el.addEventListener('mouseleave', rippleHide)\n\n el.addEventListener('keydown', keyboardRippleShow)\n el.addEventListener('keyup', keyboardRippleHide)\n\n el.addEventListener('blur', focusRippleHide)\n\n // Anchor tags can be dragged, causes other hides to fail - #1537\n el.addEventListener('dragstart', rippleHide, { passive: true })\n } else if (!enabled && wasEnabled) {\n removeListeners(el)\n }\n}\n\nfunction removeListeners (el: HTMLElement) {\n el.removeEventListener('mousedown', rippleShow)\n el.removeEventListener('touchstart', rippleShow)\n el.removeEventListener('touchend', rippleHide)\n el.removeEventListener('touchmove', rippleCancelShow)\n el.removeEventListener('touchcancel', rippleHide)\n el.removeEventListener('mouseup', rippleHide)\n el.removeEventListener('mouseleave', rippleHide)\n el.removeEventListener('keydown', keyboardRippleShow)\n el.removeEventListener('keyup', keyboardRippleHide)\n el.removeEventListener('dragstart', rippleHide)\n el.removeEventListener('blur', focusRippleHide)\n}\n\nfunction mounted (el: HTMLElement, binding: DirectiveBinding) {\n updateRipple(el, binding, false)\n}\n\nfunction unmounted (el: HTMLElement) {\n delete el._ripple\n removeListeners(el)\n}\n\nfunction updated (el: HTMLElement, binding: DirectiveBinding) {\n if (binding.value === binding.oldValue) {\n return\n }\n\n const wasEnabled = isRippleEnabled(binding.oldValue)\n updateRipple(el, binding, wasEnabled)\n}\n\nexport const Ripple: ObjectDirective = {\n mounted,\n unmounted,\n updated,\n}\n\nexport default Ripple\n","// Styles\nimport './VBtn.sass'\n\n// Components\nimport { VBtnToggleSymbol } from '@/components/VBtnToggle/VBtnToggle'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { useSelectLink } from '@/composables/selectLink'\nimport { IconValue } from '@/composables/icons'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VBtn = defineComponent({\n name: 'VBtn',\n\n directives: { Ripple },\n\n props: {\n active: Boolean,\n symbol: {\n type: null,\n default: VBtnToggleSymbol,\n },\n flat: Boolean,\n icon: [Boolean, String, Function, Object] as PropType<boolean | IconValue>,\n prependIcon: IconValue,\n appendIcon: IconValue,\n\n block: Boolean,\n stacked: Boolean,\n\n ripple: {\n type: Boolean,\n default: true,\n },\n\n ...makeBorderProps(),\n ...makeRoundedProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeGroupItemProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRouterProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'button' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'contained' } as const),\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const { sizeClasses } = useSize(props)\n const group = useGroupItem(props, props.symbol, false)\n const link = useLink(props, attrs)\n const isDisabled = computed(() => group?.disabled.value || props.disabled)\n const isElevated = computed(() => {\n return props.variant === 'contained' && !(props.disabled || props.flat || props.border)\n })\n\n useSelectLink(link, group?.select)\n\n return () => {\n const Tag = (link.isLink.value) ? 'a' : props.tag\n const hasColor = !group || group.isSelected.value\n\n return (\n <Tag\n type={ Tag === 'a' ? undefined : 'button' }\n class={[\n 'v-btn',\n group?.selectedClass.value,\n {\n 'v-btn--active': props.active,\n 'v-btn--block': props.block,\n 'v-btn--disabled': isDisabled.value,\n 'v-btn--elevated': isElevated.value,\n 'v-btn--flat': props.flat,\n 'v-btn--icon': !!props.icon,\n 'v-btn--stacked': props.stacked,\n },\n themeClasses.value,\n borderClasses.value,\n hasColor ? colorClasses.value : undefined,\n densityClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n sizeClasses.value,\n variantClasses.value,\n ]}\n style={[\n hasColor ? colorStyles.value : undefined,\n dimensionStyles.value,\n locationStyles.value,\n ]}\n disabled={ isDisabled.value || undefined }\n href={ link.href.value }\n v-ripple={[\n !isDisabled.value && props.ripple,\n null,\n props.icon ? ['center'] : null,\n ]}\n onClick={ (e: MouseEvent) => {\n if (isDisabled.value) return\n\n link.navigate?.(e)\n group?.toggle()\n } }\n >\n { genOverlays(true, 'v-btn') }\n\n { !props.icon && props.prependIcon && (\n <VIcon\n class=\"v-btn__icon\"\n icon={ props.prependIcon }\n start\n />\n ) }\n\n <div class=\"v-btn__content\" data-no-activator=\"\">\n { typeof props.icon === 'boolean'\n ? slots.default?.()\n : (\n <VIcon\n class=\"v-btn__icon\"\n icon={ props.icon }\n size={ props.size }\n />\n )\n }\n </div>\n\n { !props.icon && props.appendIcon && (\n <VIcon\n class=\"v-btn__icon\"\n icon={ props.appendIcon }\n end\n />\n ) }\n </Tag>\n )\n }\n },\n})\n\nexport type VBtn = InstanceType<typeof VBtn>\n","// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VAppBarNavIcon = defineComponent({\n name: 'VAppBarNavIcon',\n\n props: {\n icon: {\n type: IconValue,\n default: '$menu',\n },\n },\n\n setup (props, { slots }) {\n return () => (\n <VBtn class=\"v-app-bar-nav-icon\" icon={ props.icon }>\n { slots.default?.() }\n </VBtn>\n )\n },\n})\n","// Composables\nimport { makeVariantProps } from '@/composables/variant'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { defineComponent } from '@/util'\nimport { toRef } from 'vue'\n\nexport const VToolbarItems = defineComponent({\n name: 'VToolbarItems',\n\n props: {\n ...makeVariantProps({ variant: 'contained-text' }),\n },\n\n setup (props, { slots }) {\n provideDefaults({\n VBtn: {\n color: toRef(props, 'color'),\n variant: toRef(props, 'variant'),\n },\n })\n\n return () => slots.default?.()\n },\n})\n\nexport type VToolbarItems = InstanceType<typeof VToolbarItems>\n","// Composables\nimport { VToolbarTitle } from '@/components/VToolbar'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VAppBarTitle = defineComponent({\n name: 'VAppBarTitle',\n\n props: { ...VToolbarTitle.props },\n\n setup (_, { slots }) {\n return () => (\n <VToolbarTitle\n class=\"v-app-bar-title\"\n v-slots={ slots }\n />\n )\n },\n})\n","// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VAlertTitle = createSimpleFunctional('v-alert-title')\n","// Styles\nimport './VAlert.sass'\n\n// Components\nimport { VAlertTitle } from './VAlertTitle'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useTextColor } from '@/composables/color'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nconst allowedTypes = ['success', 'info', 'warning', 'error'] as const\n\ntype ContextualType = typeof allowedTypes[number]\n\nexport const VAlert = defineComponent({\n name: 'VAlert',\n\n props: {\n border: {\n type: [Boolean, String],\n validator: (val: boolean | string) => {\n return typeof val === 'boolean' || [\n 'top',\n 'end',\n 'bottom',\n 'start',\n ].includes(val)\n },\n },\n borderColor: String,\n closable: Boolean,\n closeIcon: {\n type: IconValue,\n default: '$close',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n icon: {\n type: [Boolean, String, Function, Object] as PropType<false | IconValue>,\n default: null,\n },\n modelValue: {\n type: Boolean,\n default: true,\n },\n prominent: Boolean,\n title: String,\n text: String,\n type: {\n type: String as PropType<ContextualType>,\n validator: (val: ContextualType) => allowedTypes.includes(val),\n },\n\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'contained-flat' } as const),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const icon = computed(() => {\n if (props.icon === false) return undefined\n if (!props.type) return props.icon\n\n return props.icon ?? `$${props.type}`\n })\n const variantProps = computed(() => ({\n color: props.color ?? props.type,\n variant: props.variant,\n }))\n\n const { themeClasses } = provideTheme(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'borderColor'))\n\n function onCloseClick (e: MouseEvent) {\n isActive.value = false\n }\n\n return () => {\n const hasPrepend = !!(slots.prepend || icon.value)\n const hasTitle = !!(slots.title || props.title)\n const hasText = !!(props.text || slots.text)\n const hasClose = !!(slots.close || props.closable)\n\n return isActive.value && (\n <props.tag\n class={[\n 'v-alert',\n props.border && {\n 'v-alert--border': !!props.border,\n [`v-alert--border-${props.border === true ? 'start' : props.border}`]: true,\n },\n {\n 'v-alert--prominent': props.prominent,\n },\n themeClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n ]}\n role=\"alert\"\n >\n { genOverlays(false, 'v-alert') }\n\n { props.border && (\n <div\n class={[\n 'v-alert__border',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n />\n ) }\n\n { hasPrepend && (\n <VDefaultsProvider\n defaults={{\n VIcon: {\n density: props.density,\n icon: icon.value,\n size: props.prominent ? 44 : 'default',\n },\n }}\n >\n <div class=\"v-alert__prepend\">\n { slots.prepend\n ? slots.prepend()\n : icon.value && (<VIcon />)\n }\n </div>\n </VDefaultsProvider>\n ) }\n\n <div class=\"v-alert__content\">\n { hasTitle && (\n <VAlertTitle>\n { slots.title ? slots.title() : props.title }\n </VAlertTitle>\n ) }\n\n { hasText && (\n slots.text ? slots.text() : props.text\n ) }\n\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div class=\"v-alert__append\">\n { slots.append() }\n </div>\n ) }\n\n { hasClose && (\n <VDefaultsProvider\n defaults={{\n VIcon: {\n icon: props.closeIcon,\n size: 'small',\n },\n }}\n >\n <div\n class=\"v-alert__close\"\n onClick={ onCloseClick }\n >\n { slots.close\n ? slots.close()\n : (<VIcon />)\n }\n </div>\n </VDefaultsProvider>\n ) }\n </props.tag>\n )\n }\n },\n})\n\nexport type VAlert = InstanceType<typeof VAlert>\n","// Styles\nimport './VAvatar.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VImg } from '@/components/VImg'\n\n// Composables\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { useBackgroundColor } from '@/composables/color'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { defineComponent, propsFactory, useRender } from '@/util'\nimport { toRef } from 'vue'\n\nexport const makeVAvatarProps = propsFactory({\n color: String,\n start: Boolean,\n end: Boolean,\n icon: IconValue,\n image: String,\n\n ...makeDensityProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeTagProps(),\n})\n\nexport const VAvatar = defineComponent({\n name: 'VAvatar',\n\n props: makeVAvatarProps(),\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { densityClasses } = useDensity(props)\n const { roundedClasses } = useRounded(props)\n const { sizeClasses, sizeStyles } = useSize(props)\n\n useRender(() => (\n <props.tag\n class={[\n 'v-avatar',\n {\n 'v-avatar--start': props.start,\n 'v-avatar--end': props.end,\n },\n backgroundColorClasses.value,\n densityClasses.value,\n roundedClasses.value,\n sizeClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n sizeStyles.value,\n ]}\n >\n\n { props.image\n ? (<VImg src={ props.image } alt=\"\" />)\n : props.icon\n ? (<VIcon icon={ props.icon } />)\n : slots.default?.()\n }\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VAvatar = InstanceType<typeof VAvatar>\n","// Styles\nimport './VChipGroup.sass'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { deepEqual, defineComponent } from '@/util'\nimport { toRef } from 'vue'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VChipGroupSymbol = Symbol.for('vuetify:v-chip-group')\n\nexport const VChipGroup = defineComponent({\n name: 'VChipGroup',\n\n props: {\n column: Boolean,\n filter: Boolean,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeGroupProps({ selectedClass: 'v-chip--selected' }),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'contained-text' } as const),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isSelected, select, next, prev, selected } = useGroup(props, VChipGroupSymbol)\n\n provideDefaults({\n VChip: {\n color: toRef(props, 'color'),\n filter: toRef(props, 'filter'),\n variant: toRef(props, 'variant'),\n },\n })\n\n return () => (\n <props.tag\n class={[\n 'v-chip-group',\n {\n 'v-chip-group--column': props.column,\n },\n themeClasses.value,\n ]}\n >\n { slots.default?.({\n isSelected,\n select,\n next,\n prev,\n selected: selected.value,\n }) }\n </props.tag>\n )\n },\n})\n\nexport type VChipGroup = InstanceType<typeof VChipGroup>\n","// Styles\nimport './VChip.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VChipGroupSymbol } from '@/components/VChipGroup/VChipGroup'\nimport { VExpandXTransition } from '@/components/transitions'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { IconValue } from '@/composables/icons'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VChip = defineComponent({\n name: 'VChip',\n\n directives: { Ripple },\n\n props: {\n activeClass: String,\n appendAvatar: String,\n appendIcon: IconValue,\n closable: Boolean,\n closeIcon: {\n type: IconValue,\n default: '$delete',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n draggable: Boolean,\n filter: Boolean,\n filterIcon: {\n type: String,\n default: '$complete',\n },\n label: Boolean,\n link: Boolean,\n pill: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n text: String,\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeGroupItemProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'span' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'contained-text' } as const),\n },\n\n emits: {\n 'click:close': (e: Event) => true,\n 'update:active': (value: Boolean) => true,\n 'update:modelValue': (value: Boolean) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { elevationClasses } = useElevation(props)\n const group = useGroupItem(props, VChipGroupSymbol, false)\n const { roundedClasses } = useRounded(props)\n const { sizeClasses } = useSize(props)\n const { densityClasses } = useDensity(props)\n const link = useLink(props, attrs)\n\n function onCloseClick (e: Event) {\n isActive.value = false\n\n emit('click:close', e)\n }\n\n return () => {\n const Tag = (link.isLink.value) ? 'a' : props.tag\n const hasAppend = !!(slots.append || props.appendIcon || props.appendAvatar)\n const hasClose = !!(slots.close || props.closable)\n const hasFilter = !!(slots.filter || props.filter) && group\n const hasPrepend = !!(slots.prepend || props.prependIcon || props.prependAvatar)\n const hasColor = !group || group.isSelected.value\n const isClickable = !props.disabled && (!!group || link.isClickable.value || props.link)\n const onClickFunc = props.link ? props.link : group?.toggle\n\n return isActive.value && (\n <Tag\n class={[\n 'v-chip',\n {\n 'v-chip--disabled': props.disabled,\n 'v-chip--label': props.label,\n 'v-chip--link': isClickable,\n 'v-chip--pill': props.pill,\n },\n themeClasses.value,\n borderClasses.value,\n hasColor ? colorClasses.value : undefined,\n densityClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n sizeClasses.value,\n variantClasses.value,\n group?.selectedClass.value,\n ]}\n style={[\n hasColor ? colorStyles.value : undefined,\n ]}\n disabled={ props.disabled || undefined }\n draggable={ props.draggable }\n href={ link.href.value }\n v-ripple={ [isClickable && props.ripple, null] }\n onClick={ isClickable && onClickFunc }\n >\n { genOverlays(isClickable, 'v-chip') }\n\n { hasFilter && (\n <VExpandXTransition>\n <div\n class=\"v-chip__filter\"\n v-show={ group.isSelected.value }\n >\n { slots.filter\n ? slots.filter()\n : <VIcon icon={ props.filterIcon } />\n }\n </div>\n </VExpandXTransition>\n ) }\n\n { hasPrepend && (\n <div class=\"v-chip__prepend\">\n { slots.prepend\n ? slots.prepend()\n : (\n <VAvatar\n icon={ props.prependIcon }\n image={ props.prependAvatar }\n size={ props.size }\n />\n )\n }\n </div>\n ) }\n\n { slots.default?.({\n isSelected: group?.isSelected.value,\n selectedClass: group?.selectedClass.value,\n select: group?.select,\n toggle: group?.toggle,\n value: group?.value.value,\n disabled: props.disabled,\n }) ?? props.text }\n\n { hasAppend && (\n <div class=\"v-chip__append\">\n { slots.append\n ? slots.append()\n : (\n <VAvatar\n icon={ props.appendIcon }\n image={ props.appendAvatar }\n size={ props.size }\n />\n )\n }\n </div>\n ) }\n\n { hasClose && (\n <div\n class=\"v-chip__close\"\n onClick={ onCloseClick }\n >\n { slots.close\n ? slots.close({ props: { onClick: onCloseClick } })\n : (\n <VIcon\n icon={ props.closeIcon }\n size=\"x-small\"\n />\n )\n }\n </div>\n ) }\n </Tag>\n )\n }\n },\n})\n\nexport type VChip = InstanceType<typeof VChip>\n","// Styles\nimport './VDivider.sass'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\n\n// Composables\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor } from '@/composables/color'\n\n// Types\ntype DividerKey = 'borderRightWidth' | 'borderTopWidth' | 'maxHeight' | 'maxWidth'\ntype DividerStyles = Partial<Record<DividerKey, string>>\n\nexport const VDivider = defineComponent({\n name: 'VDivider',\n\n props: {\n color: String,\n inset: Boolean,\n length: [Number, String],\n thickness: [Number, String],\n vertical: Boolean,\n ...makeThemeProps(),\n },\n\n setup (props, { attrs }) {\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const dividerStyles = computed(() => {\n const styles: DividerStyles = {}\n\n if (props.length) {\n styles[props.vertical ? 'maxHeight' : 'maxWidth'] = convertToUnit(props.length)\n }\n\n if (props.thickness) {\n styles[props.vertical ? 'borderRightWidth' : 'borderTopWidth'] = convertToUnit(props.thickness)\n }\n\n return styles\n })\n\n return () => {\n return (\n <hr\n class={[\n {\n 'v-divider': true,\n 'v-divider--inset': props.inset,\n 'v-divider--vertical': props.vertical,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n ]}\n style={[\n dividerStyles.value,\n backgroundColorStyles.value,\n ]}\n aria-orientation={\n !attrs.role || attrs.role === 'separator'\n ? props.vertical ? 'vertical' : 'horizontal'\n : undefined\n }\n role={`${attrs.role || 'separator'}`}\n />\n )\n }\n },\n})\n","// Utilities\nimport { computed, inject, provide, ref } from 'vue'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\n\n// Depth\nexport const DepthKey: InjectionKey<Ref<number>> = Symbol.for('vuetify:depth')\n\nexport function useDepth (hasPrepend?: Ref<boolean>) {\n const parent = inject(DepthKey, ref(-1))\n\n const depth = computed(() => parent.value + 1 + (hasPrepend?.value ? 1 : 0))\n\n provide(DepthKey, depth)\n\n return depth\n}\n\n// List\nexport const ListKey: InjectionKey<{\n hasPrepend: Ref<boolean>\n updateHasPrepend: (value: boolean) => void\n}> = Symbol.for('vuetify:list')\n\nexport function createList () {\n const parent = inject(ListKey, { hasPrepend: ref(false), updateHasPrepend: () => null })\n\n const data = {\n hasPrepend: ref(false),\n updateHasPrepend: (value: boolean) => {\n if (value) data.hasPrepend.value = value\n },\n }\n\n provide(ListKey, data)\n\n return parent\n}\n\nexport function useList () {\n return inject(ListKey, null)\n}\n","export type OpenStrategyFn = (data: {\n id: string\n value: boolean\n opened: Set<string>\n children: Map<string, string[]>\n parents: Map<string, string>\n event?: Event\n}) => Set<string>\n\nexport type OpenSelectStrategyFn = (data: {\n id: string\n value: boolean\n opened: Set<string>\n selected: Map<string, 'on' | 'off' | 'indeterminate'>\n children: Map<string, string[]>\n parents: Map<string, string>\n event?: Event\n}) => Set<string> | null\n\nexport type OpenStrategy = {\n open: OpenStrategyFn\n select: OpenSelectStrategyFn\n}\n\nexport const singleOpenStrategy: OpenStrategy = {\n open: ({ id, value, opened, parents }) => {\n if (value) {\n const newOpened = new Set<string>()\n newOpened.add(id)\n\n let parent = parents.get(id)\n\n while (parent != null) {\n newOpened.add(parent)\n parent = parents.get(parent)\n }\n\n return newOpened\n } else {\n opened.delete(id)\n return opened\n }\n },\n select: () => null,\n}\n\nexport const multipleOpenStrategy: OpenStrategy = {\n open: ({ id, value, opened, parents }) => {\n if (value) {\n let parent = parents.get(id)\n opened.add(id)\n\n while (parent != null && parent !== id) {\n opened.add(parent)\n parent = parents.get(parent)\n }\n\n return opened\n } else {\n opened.delete(id)\n }\n return opened\n },\n select: () => null,\n}\n\nexport const listOpenStrategy: OpenStrategy = {\n open: multipleOpenStrategy.open,\n select: ({ id, value, opened, parents }) => {\n if (!value) return opened\n\n const path: string[] = []\n\n let parent = parents.get(id)\n\n while (parent != null) {\n path.push(parent)\n parent = parents.get(parent)\n }\n\n return new Set(path)\n },\n}\n","/* eslint-disable sonarjs/no-identical-functions */\nexport type SelectStrategyFn = (data: {\n id: string\n value: boolean\n selected: Map<string, 'on' | 'off' | 'indeterminate'>\n children: Map<string, string[]>\n parents: Map<string, string>\n event?: Event\n}) => Map<string, 'on' | 'off' | 'indeterminate'>\n\nexport type SelectStrategyTransformInFn = (\n v: string[] | undefined,\n children: Map<string, string[]>,\n parents: Map<string, string>,\n) => Map<string, 'on' | 'off' | 'indeterminate'>\n\nexport type SelectStrategyTransformOutFn = (\n v: Map<string, 'on' | 'off' | 'indeterminate'>,\n children: Map<string, string[]>,\n parents: Map<string, string>,\n) => any[]\n\nexport type SelectStrategy = {\n select: SelectStrategyFn\n in: SelectStrategyTransformInFn\n out: SelectStrategyTransformOutFn\n}\n\nexport const independentSelectStrategy = (mandatory?: boolean): SelectStrategy => {\n const strategy: SelectStrategy = {\n select: ({ id, value, selected }) => {\n // When mandatory and we're trying to deselect when id\n // is the only currently selected item then do nothing\n if (mandatory && !value) {\n const on = Array.from(selected.entries()).reduce((arr, [key, value]) => value === 'on' ? [...arr, key] : arr, [] as string[])\n if (on.length === 1 && on[0] === id) return selected\n }\n\n selected.set(id, value ? 'on' : 'off')\n\n return selected\n },\n in: (v, children, parents) => {\n let map = new Map()\n\n for (const id of (v || [])) {\n map = strategy.select({\n id,\n value: true,\n selected: new Map(map),\n children,\n parents,\n })\n }\n\n return map\n },\n out: v => {\n const arr = []\n\n for (const [key, value] of v.entries()) {\n if (value === 'on') arr.push(key)\n }\n\n return arr\n },\n }\n\n return strategy\n}\n\nexport const independentSingleSelectStrategy = (mandatory?: boolean): SelectStrategy => {\n const parentStrategy = independentSelectStrategy(mandatory)\n\n const strategy: SelectStrategy = {\n select: ({ selected, id, ...rest }) => {\n const singleSelected = selected.has(id) ? new Map([[id, selected.get(id)!]]) : new Map()\n return parentStrategy.select({ ...rest, id, selected: singleSelected })\n },\n in: (v, children, parents) => {\n let map = new Map()\n\n if (v?.length) {\n map = parentStrategy.in(v.slice(0, 1), children, parents)\n }\n\n return map\n },\n out: (v, children, parents) => {\n return parentStrategy.out(v, children, parents)\n },\n }\n\n return strategy\n}\n\nexport const leafSelectStrategy = (mandatory?: boolean): SelectStrategy => {\n const parentStrategy = independentSelectStrategy(mandatory)\n\n const strategy: SelectStrategy = {\n select: ({ id, selected, children, ...rest }) => {\n if (children.has(id)) return selected\n\n return parentStrategy.select({ id, selected, children, ...rest })\n },\n in: parentStrategy.in,\n out: parentStrategy.out,\n }\n\n return strategy\n}\n\nexport const leafSingleSelectStrategy = (mandatory?: boolean): SelectStrategy => {\n const parentStrategy = independentSingleSelectStrategy(mandatory)\n\n const strategy: SelectStrategy = {\n select: ({ id, selected, children, ...rest }) => {\n if (children.has(id)) return selected\n\n return parentStrategy.select({ id, selected, children, ...rest })\n },\n in: parentStrategy.in,\n out: parentStrategy.out,\n }\n\n return strategy\n}\n\nexport const classicSelectStrategy = (mandatory?: boolean): SelectStrategy => {\n const strategy: SelectStrategy = {\n select: ({ id, value, selected, children, parents }) => {\n const original = new Map(selected)\n\n const items = [id]\n\n while (items.length) {\n const item = items.shift()!\n\n selected.set(item, value ? 'on' : 'off')\n\n if (children.has(item)) {\n items.push(...children.get(item)!)\n }\n }\n\n let parent = parents.get(id)\n\n while (parent) {\n const childrenIds = children.get(parent)!\n const everySelected = childrenIds.every(cid => selected.get(cid) === 'on')\n const noneSelected = childrenIds.every(cid => !selected.has(cid) || selected.get(cid) === 'off')\n\n selected.set(parent, everySelected ? 'on' : noneSelected ? 'off' : 'indeterminate')\n\n parent = parents.get(parent)\n }\n\n // If mandatory and planned deselect results in no selected\n // items then we can't do it, so return original state\n if (mandatory && !value) {\n const on = Array.from(selected.entries()).reduce((arr, [key, value]) => value === 'on' ? [...arr, key] : arr, [] as string[])\n if (on.length === 0) return original\n }\n\n return selected\n },\n in: (v, children, parents) => {\n let map = new Map()\n\n for (const id of (v || [])) {\n map = strategy.select({\n id,\n value: true,\n selected: new Map(map),\n children,\n parents,\n })\n }\n\n return map\n },\n out: (v, children) => {\n const arr = []\n\n for (const [key, value] of v.entries()) {\n if (value === 'on' && !children.has(key)) arr.push(key)\n }\n\n return arr\n },\n }\n\n return strategy\n}\n","import { useProxiedModel } from '@/composables/proxiedModel'\nimport { getCurrentInstance, getUid, propsFactory } from '@/util'\nimport { computed, inject, onBeforeUnmount, provide, ref } from 'vue'\nimport { listOpenStrategy, multipleOpenStrategy, singleOpenStrategy } from './openStrategies'\nimport {\n classicSelectStrategy,\n independentSelectStrategy,\n independentSingleSelectStrategy,\n leafSelectStrategy,\n leafSingleSelectStrategy,\n} from './selectStrategies'\n\n// Types\nimport type { InjectionKey, Prop, Ref } from 'vue'\nimport type { SelectStrategyFn } from './selectStrategies'\nimport type { OpenStrategy } from './openStrategies'\n\nexport type SelectStrategy = 'single-leaf' | 'leaf' | 'independent' | 'single-independent' | 'classic' | SelectStrategyFn\nexport type OpenStrategyProp = 'single' | 'multiple' | 'list' | OpenStrategy\n\nexport interface NestedProps {\n selectStrategy: SelectStrategy | undefined\n openStrategy: OpenStrategyProp | undefined\n selected: string[] | undefined\n opened: string[] | undefined\n mandatory: boolean\n 'onUpdate:selected': ((val: string[]) => void) | undefined\n 'onUpdate:opened': ((val: string[]) => void) | undefined\n}\n\ntype NestedProvide = {\n id: Ref<string | undefined>\n isGroupActivator?: boolean\n root: {\n children: Ref<Map<string, string[]>>\n parents: Ref<Map<string, string>>\n opened: Ref<Set<string>>\n selected: Ref<Map<string, 'on' | 'off' | 'indeterminate'>>\n selectedValues: Ref<string[]>\n register: (id: string, parentId: string | undefined, isGroup?: boolean) => void\n unregister: (id: string) => void\n open: (id: string, value: boolean, event?: Event) => void\n select: (id: string, value: boolean, event?: Event) => void\n }\n}\n\nexport const VNestedSymbol: InjectionKey<NestedProvide> = Symbol.for('vuetify:nested')\n\nexport const emptyNested: NestedProvide = {\n id: ref(),\n root: {\n register: () => null,\n unregister: () => null,\n parents: ref(new Map()),\n children: ref(new Map()),\n open: () => null,\n select: () => null,\n opened: ref(new Set()),\n selected: ref(new Map()),\n selectedValues: ref([]),\n },\n}\n\nexport const makeNestedProps = propsFactory({\n selectStrategy: [String, Function] as Prop<SelectStrategy>,\n openStrategy: [String, Function] as Prop<OpenStrategyProp>,\n opened: Array as Prop<string[]>,\n selected: Array as Prop<string[]>,\n mandatory: Boolean,\n}, 'nested')\n\nexport const useNested = (props: NestedProps) => {\n let isUnmounted = false\n const children = ref(new Map<string, string[]>())\n const parents = ref(new Map<string, string>())\n\n const opened = useProxiedModel(props, 'opened', props.opened, v => new Set(v), v => [...v.values()])\n\n const selectStrategy = computed(() => {\n if (typeof props.selectStrategy === 'object') return props.selectStrategy\n\n switch (props.selectStrategy) {\n case 'single-leaf': return leafSingleSelectStrategy(props.mandatory)\n case 'leaf': return leafSelectStrategy(props.mandatory)\n case 'independent': return independentSelectStrategy(props.mandatory)\n case 'single-independent': return independentSingleSelectStrategy(props.mandatory)\n case 'classic':\n default: return classicSelectStrategy(props.mandatory)\n }\n })\n\n const openStrategy = computed(() => {\n if (typeof props.openStrategy === 'function') return props.openStrategy\n\n switch (props.openStrategy) {\n case 'list': return listOpenStrategy\n case 'single': return singleOpenStrategy\n case 'multiple':\n default: return multipleOpenStrategy\n }\n })\n\n const selected = useProxiedModel(\n props,\n 'selected',\n props.selected,\n v => selectStrategy.value.in(v, children.value, parents.value),\n v => selectStrategy.value.out(v, children.value, parents.value),\n )\n\n onBeforeUnmount(() => {\n isUnmounted = true\n })\n\n function getPath (id: string) {\n const path: string[] = []\n let parent: string | undefined = id\n\n while (parent != null) {\n path.unshift(parent)\n parent = parents.value.get(parent)\n }\n\n return path\n }\n\n const vm = getCurrentInstance('nested')\n\n const nested: NestedProvide = {\n id: ref(),\n root: {\n opened,\n selected,\n selectedValues: computed(() => {\n const arr = []\n\n for (const [key, value] of selected.value.entries()) {\n if (value === 'on') arr.push(key)\n }\n\n return arr\n }),\n register: (id, parentId, isGroup) => {\n parentId && id !== parentId && parents.value.set(id, parentId)\n\n isGroup && children.value.set(id, [])\n\n if (parentId != null) {\n children.value.set(parentId, [...children.value.get(parentId) || [], id])\n }\n },\n unregister: id => {\n if (isUnmounted) return\n\n children.value.delete(id)\n const parent = parents.value.get(id)\n if (parent) {\n const list = children.value.get(parent) ?? []\n children.value.set(parent, list.filter(child => child !== id))\n }\n parents.value.delete(id)\n opened.value.delete(id)\n },\n open: (id, value, event) => {\n vm.emit('click:open', { id, value, path: getPath(id), event })\n\n const newOpened = openStrategy.value.open({\n id,\n value,\n opened: new Set(opened.value),\n children: children.value,\n parents: parents.value,\n event,\n })\n\n newOpened && (opened.value = newOpened)\n },\n select: (id, value, event) => {\n vm.emit('click:select', { id, value, path: getPath(id), event })\n\n const newSelected = selectStrategy.value.select({\n id,\n value,\n selected: new Map(selected.value),\n children: children.value,\n parents: parents.value,\n event,\n })\n newSelected && (selected.value = newSelected)\n\n const newOpened = openStrategy.value.select({\n id,\n value,\n selected: new Map(selected.value),\n opened: new Set(opened.value),\n children: children.value,\n parents: parents.value,\n event,\n })\n newOpened && (opened.value = newOpened)\n },\n children,\n parents,\n },\n }\n\n provide(VNestedSymbol, nested)\n\n return nested.root\n}\n\nexport const useNestedItem = (id: Ref<string | undefined>, isGroup: boolean) => {\n const parent = inject(VNestedSymbol, emptyNested)\n\n const computedId = computed(() => id.value ?? getUid().toString())\n\n const item = {\n ...parent,\n id: computedId,\n open: (open: boolean, e: Event) => parent.root.open(computedId.value, open, e),\n isOpen: computed(() => parent.root.opened.value.has(computedId.value)),\n parent: computed(() => parent.root.parents.value.get(computedId.value)),\n select: (selected: boolean, e?: Event) => parent.root.select(computedId.value, selected, e),\n isSelected: computed(() => parent.root.selected.value.get(computedId.value) === 'on'),\n isIndeterminate: computed(() => parent.root.selected.value.get(computedId.value) === 'indeterminate'),\n isLeaf: computed(() => !parent.root.children.value.get(computedId.value)),\n isGroupActivator: parent.isGroupActivator,\n }\n\n !parent.isGroupActivator && parent.root.register(computedId.value, parent.id.value, isGroup)\n\n onBeforeUnmount(() => {\n !parent.isGroupActivator && parent.root.unregister(computedId.value)\n })\n\n isGroup && provide(VNestedSymbol, item)\n\n return item\n}\n\nexport const useNestedGroupActivator = () => {\n const parent = inject(VNestedSymbol, emptyNested)\n\n provide(VNestedSymbol, { ...parent, isGroupActivator: true })\n}\n","// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VExpandTransition } from '@/components/transitions'\n\n// Composables\nimport { useList } from './list'\nimport { makeTagProps } from '@/composables/tag'\nimport { useNestedGroupActivator, useNestedItem } from '@/composables/nested/nested'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent, genericComponent } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\nimport type { MakeSlots } from '@/util'\nimport type { InternalListItem } from './VList'\n\nexport type ListGroupActivatorSlot = {\n props: {\n onClick: (e: Event) => void\n appendIcon: IconValue\n class: string\n color?: string\n }\n}\n\nconst VListGroupActivator = defineComponent({\n name: 'VListGroupActivator',\n\n setup (_, { slots }) {\n useNestedGroupActivator()\n\n return () => slots.default?.()\n },\n})\n\nexport const VListGroup = genericComponent<new <T extends InternalListItem>() => {\n $props: {\n items?: T[]\n }\n $slots: MakeSlots<{\n activator: [ListGroupActivatorSlot]\n default: []\n }>\n}>()({\n name: 'VListGroup',\n\n props: {\n activeColor: String,\n color: String,\n collapseIcon: {\n type: IconValue,\n default: '$collapse',\n },\n expandIcon: {\n type: IconValue,\n default: '$expand',\n },\n value: null,\n\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n const { isOpen, open } = useNestedItem(toRef(props, 'value'), true)\n const list = useList()\n\n const onClick = (e: Event) => {\n open(!isOpen.value, e)\n }\n\n const activatorProps: Ref<ListGroupActivatorSlot['props']> = computed(() => ({\n onClick,\n active: isOpen.value,\n appendIcon: isOpen.value ? props.collapseIcon : props.expandIcon,\n class: 'v-list-group__header',\n color: isOpen.value ? props.activeColor ?? props.color : undefined,\n }))\n\n return () => {\n return (\n <props.tag\n class={[\n 'v-list-group',\n {\n 'v-list-group--prepend': list?.hasPrepend.value,\n },\n ]}\n >\n { slots.activator && (\n <VDefaultsProvider\n defaults={{\n VListItemIcon: { color: activatorProps.value.color },\n }}\n >\n <VListGroupActivator>\n { slots.activator({ props: activatorProps.value, isOpen }) }\n </VListGroupActivator>\n </VDefaultsProvider>\n ) }\n <VExpandTransition>\n <div class=\"v-list-group__items\" v-show={isOpen.value}>\n { slots.default?.() }\n </div>\n </VExpandTransition>\n </props.tag>\n )\n }\n },\n})\n","// Components\nimport { makeVAvatarProps, VAvatar } from '@/components/VAvatar/VAvatar'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VListItemAvatar = defineComponent({\n name: 'VListItemAvatar',\n\n props: makeVAvatarProps(),\n\n setup (props, { slots }) {\n return () => (\n <VAvatar\n class={[\n 'v-list-item-avatar',\n {\n 'v-list-item-avatar--start': props.start,\n 'v-list-item-avatar--end': props.end,\n },\n ]}\n { ...props }\n v-slots={ slots }\n />\n )\n },\n})\n","import { createSimpleFunctional } from '@/util'\n\nexport const VListItemHeader = createSimpleFunctional('v-list-item-header')\n","// Components\nimport { makeVIconProps, VIcon } from '@/components/VIcon/VIcon'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VListItemIcon = defineComponent({\n name: 'VListItemIcon',\n\n props: makeVIconProps(),\n\n setup (props, { slots }) {\n return () => (\n <VIcon\n class={[\n 'v-list-item-icon',\n {\n 'v-list-item-icon--start': props.start,\n 'v-list-item-icon--end': props.end,\n },\n ]}\n { ...props }\n v-slots={ slots }\n />\n )\n },\n})\n","import { createSimpleFunctional } from '@/util'\n\nexport const VListItemSubtitle = createSimpleFunctional('v-list-item-subtitle')\n","import { createSimpleFunctional } from '@/util'\n\nexport const VListItemTitle = createSimpleFunctional('v-list-item-title')\n","// Styles\nimport './VListItem.sass'\n\n// Components\nimport { VListItemAvatar } from './VListItemAvatar'\nimport { VListItemHeader } from './VListItemHeader'\nimport { VListItemIcon } from './VListItemIcon'\nimport { VListItemSubtitle } from './VListItemSubtitle'\nimport { VListItemTitle } from './VListItemTitle'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useList } from './list'\nimport { IconValue } from '@/composables/icons'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed, onMounted, watch } from 'vue'\nimport { genericComponent, useRender } from '@/util'\nimport { useNestedItem } from '@/composables/nested/nested'\n\n// Types\nimport type { MakeSlots } from '@/util'\nimport type { PropType } from 'vue'\n\ntype ListItemSlot = {\n isActive: boolean\n activate: (value: boolean) => void\n isSelected: boolean\n select: (value: boolean) => void\n}\n\nexport type ListItemTitleSlot = {\n title?: string\n}\n\nexport type ListItemSubtitleSlot = {\n subtitle?: string\n}\n\nexport const VListItem = genericComponent<new () => {\n $slots: MakeSlots<{\n prepend: [ListItemSlot]\n append: [ListItemSlot]\n default: [ListItemSlot]\n title: [ListItemTitleSlot]\n subtitle: [ListItemSubtitleSlot]\n }>\n}>()({\n name: 'VListItem',\n\n directives: { Ripple },\n\n props: {\n active: Boolean,\n activeColor: String,\n activeClass: String,\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n lines: String as PropType<'one' | 'two' | 'three'>,\n nav: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n subtitle: [String, Number, Boolean],\n title: [String, Number, Boolean],\n value: null,\n link: Boolean,\n\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n },\n\n setup (props, { attrs, slots }) {\n const link = useLink(props, attrs)\n const id = computed(() => props.value ?? link.href.value)\n const { select, isSelected, isIndeterminate, isGroupActivator, root, parent } = useNestedItem(id, false)\n const list = useList()\n const isActive = computed(() => {\n return props.active || link.isExactActive?.value || isSelected.value\n })\n const roundedProps = computed(() => props.rounded || props.nav)\n const variantProps = computed(() => ({\n color: isActive.value ? props.activeColor ?? props.color : props.color,\n variant: props.variant,\n }))\n\n onMounted(() => {\n if (link.isExactActive?.value && parent.value != null) {\n root.open(parent.value, true)\n }\n })\n\n watch(() => link.isExactActive?.value, val => {\n if (val && parent.value != null) {\n root.open(parent.value, true)\n }\n })\n\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(roundedProps)\n const lineClasses = computed(() => props.lines ? `v-list-item--${props.lines}-line` : undefined)\n\n const slotProps = computed(() => ({\n isActive: isActive.value,\n select,\n isSelected: isSelected.value,\n isIndeterminate: isIndeterminate.value,\n }))\n\n useRender(() => {\n const Tag = (link.isLink.value) ? 'a' : props.tag\n const hasColor = !list || isSelected.value || isActive.value\n const hasTitle = (slots.title || props.title)\n const hasSubtitle = (slots.subtitle || props.subtitle)\n const hasHeader = !!(hasTitle || hasSubtitle)\n const hasAppend = !!(slots.append || props.appendAvatar || props.appendIcon)\n const hasPrepend = !!(slots.prepend || props.prependAvatar || props.prependIcon)\n const isClickable = !props.disabled && (props.link || link.isClickable.value || (props.value != null && !!list))\n\n list?.updateHasPrepend(hasPrepend)\n\n return (\n <Tag\n class={[\n 'v-list-item',\n {\n 'v-list-item--active': isActive.value,\n 'v-list-item--disabled': props.disabled,\n 'v-list-item--link': isClickable,\n 'v-list-item--nav': props.nav,\n 'v-list-item--prepend': !hasPrepend && list?.hasPrepend.value,\n [`${props.activeClass}`]: isActive.value,\n },\n themeClasses.value,\n borderClasses.value,\n hasColor ? colorClasses.value : undefined,\n densityClasses.value,\n elevationClasses.value,\n lineClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n hasColor ? colorStyles.value : undefined,\n dimensionStyles.value,\n ]}\n href={ link.href.value }\n tabindex={ isClickable ? 0 : undefined }\n onClick={ isClickable && ((e: MouseEvent) => {\n if (isGroupActivator) return\n\n link.navigate?.(e)\n props.value != null && select(!isSelected.value, e)\n })}\n v-ripple={ isClickable }\n >\n { genOverlays(isClickable || isActive.value, 'v-list-item') }\n\n { hasPrepend && (\n <>\n { props.prependAvatar && (\n <VListItemAvatar\n image={ props.prependAvatar }\n start\n />\n ) }\n\n { props.prependIcon && (\n <VListItemIcon\n icon={ props.prependIcon }\n start\n />\n ) }\n\n { slots.prepend?.(slotProps.value) }\n </>\n ) }\n\n { hasHeader && (\n <VListItemHeader>\n { hasTitle && (\n <VListItemTitle>\n { slots.title\n ? slots.title({ title: props.title })\n : props.title\n }\n </VListItemTitle>\n ) }\n\n { hasSubtitle && (\n <VListItemSubtitle>\n { slots.subtitle\n ? slots.subtitle({ subtitle: props.subtitle })\n : props.subtitle\n }\n </VListItemSubtitle>\n ) }\n </VListItemHeader>\n ) }\n\n { slots.default?.(slotProps.value) }\n\n { hasAppend && (\n <>\n { slots.append?.(slotProps.value) }\n\n { props.appendAvatar && (\n <VListItemAvatar\n image={ props.appendAvatar }\n end\n />\n ) }\n\n { props.appendIcon && (\n <VListItemIcon\n icon={ props.appendIcon }\n end\n />\n ) }\n </>\n ) }\n </Tag>\n )\n })\n },\n})\n\nexport type VListItem = InstanceType<typeof VListItem>\n","// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\nexport const VListSubheader = defineComponent({\n name: 'VListSubheader',\n\n props: {\n color: String,\n inset: Boolean,\n sticky: Boolean,\n title: String,\n\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n\n return () => {\n const hasText = !!(slots.default || props.title)\n\n return (\n <props.tag\n class={[\n 'v-list-subheader',\n {\n 'v-list-subheader--inset': props.inset,\n 'v-list-subheader--sticky': props.sticky,\n },\n textColorClasses.value,\n ]}\n style={{ textColorStyles }}\n >\n { hasText && (\n <div class=\"v-list-subheader__text\">\n { slots.default?.() ?? props.title }\n </div>\n ) }\n </props.tag>\n )\n }\n },\n})\n","// Components\nimport { VDivider } from '../VDivider'\nimport { VListGroup } from './VListGroup'\nimport { VListItem } from './VListItem'\nimport { VListSubheader } from './VListSubheader'\n\n// Utilities\nimport { genericComponent } from '@/util'\nimport { createList } from './list'\n\n// Types\nimport type { InternalListItem } from './VList'\nimport type { ListItemSubtitleSlot, ListItemTitleSlot } from './VListItem'\nimport type { ListGroupActivatorSlot } from './VListGroup'\nimport type { MakeSlots } from '@/util'\nimport type { Prop } from 'vue'\n\nexport const VListChildren = genericComponent<new <T extends InternalListItem>() => {\n $props: {\n items?: T[]\n }\n $slots: MakeSlots<{\n default: []\n header: [ListGroupActivatorSlot]\n item: [T]\n title: [ListItemTitleSlot]\n subtitle: [ListItemSubtitleSlot]\n }>\n}>()({\n name: 'VListChildren',\n\n props: {\n items: Array as Prop<InternalListItem[]>,\n },\n\n setup (props, { slots }) {\n createList()\n\n return () => slots.default?.() ?? props.items?.map(({ children, props: itemProps, type, originalItem: item }) => {\n if (type === 'divider') return <VDivider {...itemProps} />\n\n if (type === 'subheader') return <VListSubheader {...itemProps} v-slots={ slots } />\n\n const slotsWithItem = {\n subtitle: slots.subtitle ? (slotProps: any) => slots.subtitle?.({ ...slotProps, item }) : undefined,\n prepend: slots.prepend ? (slotProps: any) => slots.prepend?.({ ...slotProps, item }) : undefined,\n append: slots.append ? (slotProps: any) => slots.append?.({ ...slotProps, item }) : undefined,\n default: slots.default ? (slotProps: any) => slots.default?.({ ...slotProps, item }) : undefined,\n title: slots.title ? (slotProps: any) => slots.title?.({ ...slotProps, item }) : undefined,\n }\n\n return children ? (\n <VListGroup\n value={ itemProps?.value }\n >\n {{\n activator: ({ props: activatorProps }) => slots.header\n ? slots.header({ ...itemProps, ...activatorProps })\n : <VListItem { ...itemProps } { ...activatorProps } v-slots={ slotsWithItem } />,\n default: () => (\n <VListChildren items={ children } v-slots={ slots } />\n ),\n }}\n </VListGroup>\n ) : (\n slots.item ? slots.item(itemProps) : (\n <VListItem\n { ...itemProps }\n v-slots={ slotsWithItem }\n />\n )\n )\n })\n },\n})\n","// Utilities\nimport { computed } from 'vue'\nimport { getPropertyFromItem, pick, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { SelectItemKey } from '@/util'\n\nexport interface InternalItem {\n title: string\n value: any\n props: {\n [key: string]: any\n title: string\n value: any\n }\n children?: InternalItem[]\n originalItem: any\n}\n\nexport interface ItemProps {\n items: any[]\n itemTitle: SelectItemKey\n itemValue: SelectItemKey\n itemChildren: SelectItemKey\n itemProps: SelectItemKey\n returnObject: boolean\n}\n\n// Composables\nexport const makeItemsProps = propsFactory({\n items: {\n type: Array as PropType<ItemProps['items']>,\n default: () => ([]),\n },\n itemTitle: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'title',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n itemChildren: {\n type: [Boolean, String, Array, Function] as PropType<SelectItemKey>,\n default: 'children',\n },\n itemProps: {\n type: [Boolean, String, Array, Function] as PropType<SelectItemKey>,\n default: 'props',\n },\n returnObject: Boolean,\n}, 'item')\n\nexport function transformItem (props: Omit<ItemProps, 'items'>, item: any) {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, title)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true ? pick(item, ['children'])[1] : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n title: _props.title,\n value: _props.value,\n props: _props,\n children: Array.isArray(children) ? transformItems(props, children) : undefined,\n originalItem: item,\n }\n}\n\nexport function transformItems (props: Omit<ItemProps, 'items'>, items: ItemProps['items']) {\n const array: InternalItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nexport function useItems (props: ItemProps) {\n const items = computed(() => transformItems(props, props.items))\n\n function transformIn (value: any[]): InternalItem[] {\n return value.map(item => transformItem(props, item))\n }\n\n function transformOut (value: InternalItem[]) {\n if (props.returnObject) return value.map(({ originalItem: item }) => item)\n return value.map(({ props }) => props.value)\n }\n\n return { items, transformIn, transformOut }\n}\n","// Styles\nimport './VList.sass'\n\n// Components\nimport { VListChildren } from './VListChildren'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeItemsProps } from '@/composables/items'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeNestedProps, useNested } from '@/composables/nested/nested'\nimport { makeVariantProps } from '@/composables/variant'\nimport { createList } from './list'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, getPropertyFromItem, pick, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { MakeSlots } from '@/util'\nimport type { ListGroupActivatorSlot } from './VListGroup'\nimport type { InternalItem, ItemProps } from '@/composables/items'\n\nexport interface InternalListItem extends InternalItem {\n type?: 'item' | 'subheader' | 'divider'\n}\n\nfunction transformItem (props: ItemProps & { itemType: string }, item: any): InternalListItem {\n const type = getPropertyFromItem(item, props.itemType, 'item')\n const title = typeof item === 'string' ? item : getPropertyFromItem(item, props.itemTitle)\n const value = getPropertyFromItem(item, props.itemValue, undefined)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true ? pick(item, ['children'])[1] : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n type,\n title: _props.title,\n value: _props.value,\n props: _props,\n children: type === 'item' && children ? transformItems(props, children) : undefined,\n originalItem: item,\n }\n}\n\nfunction transformItems (props: ItemProps & { itemType: string }, items: (string | object)[]) {\n const array: InternalListItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nfunction useListItems (props: ItemProps & { itemType: string }) {\n const items = computed(() => transformItems(props, props.items))\n\n return { items }\n}\n\nexport const VList = genericComponent<new <T>() => {\n $props: {\n items?: T[]\n }\n $slots: MakeSlots<{\n subheader: []\n header: [ListGroupActivatorSlot]\n item: [T]\n }>\n}>()({\n name: 'VList',\n\n props: {\n activeColor: String,\n activeClass: String,\n bgColor: String,\n disabled: Boolean,\n lines: {\n type: [Boolean, String] as PropType<'one' | 'two' | 'three' | false>,\n default: 'one',\n },\n nav: Boolean,\n\n ...makeNestedProps({\n selectStrategy: 'single-leaf' as const,\n openStrategy: 'list' as const,\n }),\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n itemType: {\n type: String,\n default: 'type',\n },\n ...makeItemsProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n },\n\n emits: {\n 'update:selected': (val: string[]) => true,\n 'update:opened': (val: string[]) => true,\n 'click:open': (value: { id: string, value: boolean, path: string[] }) => true,\n 'click:select': (value: { id: string, value: boolean, path: string[] }) => true,\n },\n\n setup (props, { slots }) {\n const { items } = useListItems(props)\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { open, select } = useNested(props)\n const lineClasses = computed(() => props.lines ? `v-list--${props.lines}-line` : undefined)\n const activeColor = toRef(props, 'activeColor')\n const color = toRef(props, 'color')\n\n createList()\n\n provideDefaults({\n VListGroup: {\n activeColor,\n color,\n },\n VListItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor,\n color,\n density: toRef(props, 'density'),\n disabled: toRef(props, 'disabled'),\n lines: toRef(props, 'lines'),\n nav: toRef(props, 'nav'),\n variant: toRef(props, 'variant'),\n },\n })\n\n useRender(() => {\n return (\n <props.tag\n class={[\n 'v-list',\n {\n 'v-list--disabled': props.disabled,\n 'v-list--nav': props.nav,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n densityClasses.value,\n elevationClasses.value,\n lineClasses.value,\n roundedClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n dimensionStyles.value,\n ]}\n >\n <VListChildren items={ items.value } v-slots={ slots }></VListChildren>\n </props.tag>\n )\n })\n\n return {\n open,\n select,\n }\n },\n})\n\nexport type VList = InstanceType<typeof VList>\n","import { createSimpleFunctional } from '@/util'\n\nexport const VListImg = createSimpleFunctional('v-list-img')\n","// Composables\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VListItemAction = defineComponent({\n name: 'VListItemAction',\n\n props: {\n start: Boolean,\n end: Boolean,\n\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n return () => {\n return (\n <props.tag\n class={[\n 'v-list-item-action',\n {\n 'v-list-item-action--start': props.start,\n 'v-list-item-action--end': props.end,\n },\n ]}\n v-slots={ slots }\n />\n )\n }\n },\n})\n","// Composables\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VListItemMedia = defineComponent({\n name: 'VListItemMedia',\n\n props: {\n start: Boolean,\n end: Boolean,\n\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n return () => {\n return (\n <props.tag\n class={[\n 'v-list-item-media',\n {\n 'v-list-item-media--start': props.start,\n 'v-list-item-media--end': props.end,\n },\n ]}\n v-slots={ slots }\n />\n )\n }\n },\n})\n","// Utilities\nimport { IN_BROWSER, propsFactory } from '@/util'\n\n// Types\nexport interface DelayProps {\n closeDelay?: number | string\n openDelay?: number | string\n}\n\n// Composables\nexport const makeDelayProps = propsFactory({\n closeDelay: [Number, String],\n openDelay: [Number, String],\n}, 'delay')\n\nexport function useDelay (props: DelayProps, cb?: (value: boolean) => void) {\n const delays: Partial<Record<keyof DelayProps, number>> = {}\n const runDelayFactory = (prop: keyof DelayProps) => (): Promise<boolean> => {\n // istanbul ignore next\n if (!IN_BROWSER) return Promise.resolve(true)\n\n const active = prop === 'openDelay'\n\n delays.closeDelay && window.clearTimeout(delays.closeDelay)\n delete delays.closeDelay\n\n delays.openDelay && window.clearTimeout(delays.openDelay)\n delete delays.openDelay\n\n return new Promise(resolve => {\n const delay = parseInt(props[prop] ?? 0, 10)\n\n delays[prop] = window.setTimeout(() => {\n cb?.(active)\n resolve(active)\n }, delay)\n })\n }\n\n return {\n runCloseDelay: runDelayFactory('closeDelay'),\n runOpenDelay: runDelayFactory('openDelay'),\n }\n}\n","import type { InjectionKey } from 'vue'\n\ninterface MenuProvide {\n register (): void\n unregister (): void\n closeParents (): void\n}\n\nexport const VMenuSymbol: InjectionKey<MenuProvide> = Symbol.for('vuetify:v-menu')\n","// Utilities\nimport { getCurrentInstance, IN_BROWSER, isComponentInstance, propsFactory, SUPPORTS_FOCUS_VISIBLE } from '@/util'\nimport { makeDelayProps, useDelay } from '@/composables/delay'\nimport { VMenuSymbol } from '@/components/VMenu/shared'\nimport {\n computed,\n effectScope,\n inject,\n nextTick,\n onScopeDispose,\n ref,\n watch,\n watchEffect,\n} from 'vue'\n\n// Types\nimport type { DelayProps } from '@/composables/delay'\nimport type {\n ComponentInternalInstance,\n ComponentPublicInstance,\n EffectScope,\n PropType,\n Ref,\n} from 'vue'\n\ninterface ActivatorProps extends DelayProps {\n activator?: 'parent' | string | Element | ComponentPublicInstance\n activatorProps: Record<string, any>\n\n openOnClick: boolean | undefined\n openOnHover: boolean\n openOnFocus: boolean | undefined\n\n closeOnContentClick: boolean\n}\n\nexport const makeActivatorProps = propsFactory({\n activator: [String, Object] as PropType<ActivatorProps['activator']>,\n activatorProps: {\n type: Object as PropType<ActivatorProps['activatorProps']>,\n default: () => ({}),\n },\n\n openOnClick: {\n type: Boolean,\n default: undefined,\n },\n openOnHover: Boolean,\n openOnFocus: {\n type: Boolean,\n default: undefined,\n },\n\n closeOnContentClick: Boolean,\n\n ...makeDelayProps(),\n})\n\nexport function useActivator (\n props: ActivatorProps,\n { isActive, isTop }: { isActive: Ref<boolean>, isTop: Ref<boolean> }\n) {\n const activatorEl = ref<HTMLElement>()\n\n let isHovered = false\n let isFocused = false\n\n const openOnFocus = computed(() => props.openOnFocus || (props.openOnFocus == null && props.openOnHover))\n const openOnClick = computed(() => props.openOnClick || (props.openOnClick == null && !props.openOnHover && !openOnFocus.value))\n\n const { runOpenDelay, runCloseDelay } = useDelay(props, value => {\n if (\n value === (\n (props.openOnHover && isHovered) ||\n (openOnFocus.value && isFocused)\n ) && !(props.openOnHover && isActive.value && !isTop.value)\n ) {\n isActive.value = value\n }\n })\n\n const availableEvents = {\n click: (e: MouseEvent) => {\n e.stopPropagation()\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n isActive.value = !isActive.value\n },\n mouseenter: (e: MouseEvent) => {\n isHovered = true\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n runOpenDelay()\n },\n mouseleave: (e: MouseEvent) => {\n isHovered = false\n runCloseDelay()\n },\n focus: (e: FocusEvent) => {\n if (\n SUPPORTS_FOCUS_VISIBLE &&\n !(e.target as HTMLElement).matches(':focus-visible')\n ) return\n\n isFocused = true\n e.stopPropagation()\n activatorEl.value = (e.currentTarget || e.target) as HTMLElement\n\n runOpenDelay()\n },\n blur: (e: FocusEvent) => {\n isFocused = false\n e.stopPropagation()\n\n runCloseDelay()\n },\n }\n\n const activatorEvents = computed(() => {\n const events: Partial<typeof availableEvents> = {}\n\n if (openOnClick.value) {\n events.click = availableEvents.click\n }\n if (props.openOnHover) {\n events.mouseenter = availableEvents.mouseenter\n events.mouseleave = availableEvents.mouseleave\n }\n if (openOnFocus.value) {\n events.focus = availableEvents.focus\n events.blur = availableEvents.blur\n }\n\n return events\n })\n\n const contentEvents = computed(() => {\n const events: Partial<typeof availableEvents> = {}\n\n if (props.openOnHover) {\n events.mouseenter = () => {\n isHovered = true\n runOpenDelay()\n }\n events.mouseleave = () => {\n isHovered = false\n runCloseDelay()\n }\n }\n\n if (props.closeOnContentClick) {\n const menu = inject(VMenuSymbol, null)\n events.click = () => {\n isActive.value = false\n menu?.closeParents()\n }\n }\n\n return events\n })\n\n watch(isTop, val => {\n if (val && props.openOnHover && !isHovered) {\n isActive.value = false\n }\n })\n\n const activatorRef = ref()\n watchEffect(() => {\n if (!activatorRef.value) return\n\n nextTick(() => {\n const activator = activatorRef.value\n activatorEl.value = isComponentInstance(activator) ? activator.$el : activator\n })\n })\n\n const vm = getCurrentInstance('useActivator')\n let scope: EffectScope\n watch(() => !!props.activator, val => {\n if (val && IN_BROWSER) {\n scope = effectScope()\n scope.run(() => {\n _useActivator(props, vm, { activatorEl, activatorEvents })\n })\n } else if (scope) {\n scope.stop()\n }\n }, { flush: 'post', immediate: true })\n\n return { activatorEl, activatorRef, activatorEvents, contentEvents }\n}\n\nfunction _useActivator (\n props: ActivatorProps,\n vm: ComponentInternalInstance,\n { activatorEl, activatorEvents }: Pick<ReturnType<typeof useActivator>, 'activatorEl' | 'activatorEvents'>\n) {\n watch(() => props.activator, (val, oldVal) => {\n if (oldVal && val !== oldVal) {\n const activator = getActivator(oldVal)\n activator && unbindActivatorProps(activator)\n }\n if (val) {\n nextTick(() => bindActivatorProps())\n }\n }, { immediate: true })\n\n watch(() => props.activatorProps, () => {\n bindActivatorProps()\n })\n\n onScopeDispose(() => {\n unbindActivatorProps()\n })\n\n function bindActivatorProps (el = getActivator(), _props = props.activatorProps) {\n if (!el) return\n\n Object.entries(activatorEvents.value).forEach(([name, cb]) => {\n el.addEventListener(name, cb as (e: Event) => void)\n })\n\n Object.keys(_props).forEach(k => {\n if (_props[k] == null) {\n el.removeAttribute(k)\n } else {\n el.setAttribute(k, _props[k])\n }\n })\n }\n\n function unbindActivatorProps (el = getActivator(), _props = props.activatorProps) {\n if (!el) return\n\n Object.entries(activatorEvents.value).forEach(([name, cb]) => {\n el.removeEventListener(name, cb as (e: Event) => void)\n })\n\n Object.keys(_props).forEach(k => {\n el.removeAttribute(k)\n })\n }\n\n function getActivator (selector = props.activator): HTMLElement | undefined {\n let activator\n if (selector) {\n if (selector === 'parent') {\n let el = vm?.proxy?.$el?.parentNode\n while (el.hasAttribute('data-no-activator')) {\n el = el.parentNode\n }\n activator = el\n } else if (typeof selector === 'string') {\n // Selector\n activator = document.querySelector(selector)\n } else if ('$el' in selector) {\n // Component (ref)\n activator = selector.$el\n } else {\n // HTMLElement | Element\n activator = selector\n }\n }\n\n // The activator should only be a valid element (Ignore comments and text nodes)\n activatorEl.value = activator?.nodeType === Node.ELEMENT_NODE ? activator : null\n\n return activatorEl.value\n }\n}\n","import type { ParsedAnchor } from '@/util'\nimport type { Box } from '@/util/box'\n\ntype Point = { x: number, y: number }\ndeclare class As<T extends string> {\n private as: T\n}\ntype ElementPoint = Point & As<'element'>\ntype ViewportPoint = Point & As<'viewport'>\ntype Offset = Point & As<'offset'>\n\n/** Convert a point in local space to viewport space */\nexport function elementToViewport (point: ElementPoint, offset: Offset | Box) {\n return {\n x: point.x + offset.x,\n y: point.y + offset.y,\n } as ViewportPoint\n}\n\n/** Convert a point in viewport space to local space */\nexport function viewportToElement (point: ViewportPoint, offset: Offset | Box) {\n return {\n x: point.x - offset.x,\n y: point.y - offset.y,\n } as ElementPoint\n}\n\n/** Get the difference between two points */\nexport function getOffset<T extends Point> (a: T, b: T) {\n return {\n x: a.x - b.x,\n y: a.y - b.y,\n } as Offset\n}\n\n/** Convert an anchor object to a point in local space */\nexport function anchorToPoint (anchor: ParsedAnchor, box: Box): ViewportPoint {\n if (anchor.side === 'top' || anchor.side === 'bottom') {\n const { side, align } = anchor\n\n const x: number =\n align === 'start' ? 0\n : align === 'center' ? box.width / 2\n : align === 'end' ? box.width\n : align\n const y: number =\n side === 'top' ? 0\n : side === 'bottom' ? box.height\n : side\n\n return elementToViewport({ x, y } as ElementPoint, box)\n } else if (anchor.side === 'start' || anchor.side === 'end') {\n const { side, align } = anchor\n\n const x: number =\n side === 'start' ? 0\n : side === 'end' ? box.width\n : side\n const y: number =\n align === 'top' ? 0\n : align === 'center' ? box.height / 2\n : align === 'bottom' ? box.height\n : align\n\n return elementToViewport({ x, y } as ElementPoint, box)\n }\n\n return elementToViewport({\n x: box.width / 2,\n y: box.height / 2,\n } as ElementPoint, box)\n}\n","// Utilities\nimport { computed, effectScope, nextTick, onScopeDispose, ref, watch, watchEffect } from 'vue'\nimport {\n convertToUnit,\n getScrollParent,\n IN_BROWSER,\n isFixedPosition,\n nullifyTransforms,\n oppositeAnchor,\n parseAnchor,\n physicalAnchor,\n propsFactory,\n} from '@/util'\nimport { Box } from '@/util/box'\nimport { anchorToPoint, getOffset } from './util/point'\n\n// Types\nimport type { EffectScope, PropType, Ref } from 'vue'\nimport type { Anchor } from '@/util'\n\nexport interface LocationStrategyData {\n contentEl: Ref<HTMLElement | undefined>\n activatorEl: Ref<HTMLElement | undefined>\n isActive: Ref<boolean>\n}\n\nconst locationStrategies = {\n static: staticLocationStrategy, // specific viewport position, usually centered\n connected: connectedLocationStrategy, // connected to a certain element\n}\n\nexport interface StrategyProps {\n locationStrategy: keyof typeof locationStrategies | (\n (\n data: LocationStrategyData,\n props: StrategyProps,\n contentStyles: Ref<Record<string, string>>\n ) => undefined | { updateLocation: (e: Event) => void }\n )\n location: Anchor\n origin: Anchor | 'auto' | 'overlap'\n offset?: number | string\n maxHeight?: number | string\n maxWidth?: number | string\n minHeight?: number | string\n minWidth?: number | string\n}\n\nexport const makeLocationStrategyProps = propsFactory({\n locationStrategy: {\n type: [String, Function] as PropType<StrategyProps['locationStrategy']>,\n default: 'static',\n validator: (val: any) => typeof val === 'function' || val in locationStrategies,\n },\n location: {\n type: String as PropType<StrategyProps['location']>,\n default: 'bottom',\n },\n origin: {\n type: String as PropType<StrategyProps['origin']>,\n default: 'auto',\n },\n offset: [Number, String],\n})\n\nexport function useLocationStrategies (\n props: StrategyProps,\n data: LocationStrategyData\n) {\n const contentStyles = ref({})\n const updateLocation = ref<(e: Event) => void>()\n\n let scope: EffectScope | undefined\n watchEffect(async () => {\n scope?.stop()\n updateLocation.value = undefined\n\n if (!(IN_BROWSER && data.isActive.value && props.locationStrategy)) return\n\n scope = effectScope()\n await nextTick()\n scope.run(() => {\n if (typeof props.locationStrategy === 'function') {\n updateLocation.value = props.locationStrategy(data, props, contentStyles)?.updateLocation\n } else {\n updateLocation.value = locationStrategies[props.locationStrategy](data, props, contentStyles)?.updateLocation\n }\n })\n })\n\n IN_BROWSER && window.addEventListener('resize', onResize, { passive: true })\n\n onScopeDispose(() => {\n IN_BROWSER && window.removeEventListener('resize', onResize)\n updateLocation.value = undefined\n scope?.stop()\n })\n\n function onResize (e: Event) {\n updateLocation.value?.(e)\n }\n\n return {\n contentStyles,\n updateLocation,\n }\n}\n\nfunction staticLocationStrategy () {\n // TODO\n}\n\nfunction connectedLocationStrategy (data: LocationStrategyData, props: StrategyProps, contentStyles: Ref<Record<string, string>>) {\n const activatorFixed = isFixedPosition(data.activatorEl.value)\n if (activatorFixed) {\n Object.assign(contentStyles.value, {\n position: 'fixed',\n })\n }\n\n const preferredAnchor = computed(() => parseAnchor(props.location))\n const preferredOrigin = computed(() =>\n props.origin === 'overlap' ? preferredAnchor.value\n : props.origin === 'auto' ? oppositeAnchor(preferredAnchor.value)\n : parseAnchor(props.origin)\n )\n const doesOverlap = computed(() => {\n return preferredAnchor.value.side === preferredOrigin.value.side\n })\n\n const configuredMaxHeight = computed(() => {\n const val = parseFloat(props.maxHeight!)\n return isNaN(val) ? Infinity : val\n })\n\n const configuredMinWidth = computed(() => {\n const val = parseFloat(props.minWidth!)\n return isNaN(val) ? Infinity : val\n })\n\n let observe = false\n if (IN_BROWSER) {\n const observer = new ResizeObserver(() => {\n if (observe) updateLocation()\n })\n observer.observe(data.activatorEl.value!)\n observer.observe(data.contentEl.value!)\n\n onScopeDispose(() => {\n observer.disconnect()\n })\n }\n\n // eslint-disable-next-line max-statements\n function updateLocation () {\n observe = false\n requestAnimationFrame(() => {\n requestAnimationFrame(() => observe = true)\n })\n\n const targetBox = data.activatorEl.value!.getBoundingClientRect()\n // TODO: offset shouldn't affect width\n if (props.offset) {\n targetBox.x -= +props.offset\n targetBox.y -= +props.offset\n targetBox.width += +props.offset * 2\n targetBox.height += +props.offset * 2\n }\n\n const scrollParent = getScrollParent(data.contentEl.value)\n const viewportWidth = scrollParent.clientWidth\n const viewportHeight = Math.min(scrollParent.clientHeight, window.innerHeight)\n\n let contentBox\n {\n const scrollables = new Map<Element, [number, number]>()\n data.contentEl.value!.querySelectorAll('*').forEach(el => {\n const x = el.scrollLeft\n const y = el.scrollTop\n if (x || y) {\n scrollables.set(el, [x, y])\n }\n })\n\n const initialMaxWidth = data.contentEl.value!.style.maxWidth\n const initialMaxHeight = data.contentEl.value!.style.maxHeight\n data.contentEl.value!.style.removeProperty('max-width')\n data.contentEl.value!.style.removeProperty('max-height')\n\n contentBox = nullifyTransforms(data.contentEl.value!)\n contentBox.x -= parseFloat(data.contentEl.value!.style.left) || 0\n contentBox.y -= parseFloat(data.contentEl.value!.style.top) || 0\n\n data.contentEl.value!.style.maxWidth = initialMaxWidth\n data.contentEl.value!.style.maxHeight = initialMaxHeight\n scrollables.forEach((position, el) => {\n el.scrollTo(...position)\n })\n }\n\n const contentHeight = Math.min(configuredMaxHeight.value, contentBox.height)\n\n // Regard undefined maxWidth as maximally occupying whole remaining space by default\n const maxFreeSpaceWidth = props.maxWidth === undefined ? Number.MAX_VALUE : parseInt(props.maxWidth ?? 0, 10)\n\n const viewportMargin = 12\n const freeSpace = {\n top: targetBox.top - viewportMargin,\n bottom: viewportHeight - targetBox.bottom - viewportMargin,\n left: Math.min(targetBox.left - viewportMargin, maxFreeSpaceWidth),\n right: Math.min(viewportWidth - targetBox.right - viewportMargin, maxFreeSpaceWidth),\n }\n\n const fitsY = (preferredAnchor.value.side === 'bottom' && contentHeight <= freeSpace.bottom) ||\n (preferredAnchor.value.side === 'top' && contentHeight <= freeSpace.top)\n\n const anchor = fitsY ? preferredAnchor.value\n : (preferredAnchor.value.side === 'bottom' && freeSpace.top > freeSpace.bottom) ||\n (preferredAnchor.value.side === 'top' && freeSpace.bottom > freeSpace.top) ? oppositeAnchor(preferredAnchor.value)\n : preferredAnchor.value\n const origin = fitsY ? preferredOrigin.value : oppositeAnchor(anchor)\n\n const canFill = doesOverlap.value || ['center', 'top', 'bottom'].includes(anchor.side)\n\n const maxWidth = canFill ? Math.min(viewportWidth, Math.max(targetBox.width, viewportWidth - viewportMargin * 2))\n : anchor.side === 'end' ? freeSpace.right\n : anchor.side === 'start' ? freeSpace.left\n : null\n const minWidth = Math.min(configuredMinWidth.value, maxWidth!, targetBox.width)\n const maxHeight = fitsY ? configuredMaxHeight.value : Math.min(\n configuredMaxHeight.value,\n Math.floor(anchor.side === 'top' ? freeSpace.top : freeSpace.bottom)\n )\n\n const targetPoint = anchorToPoint(anchor, targetBox)\n const contentPoint = anchorToPoint(origin, new Box({\n ...contentBox,\n height: Math.min(contentHeight, maxHeight),\n }))\n\n const { x, y } = getOffset(targetPoint, contentPoint)\n\n Object.assign(contentStyles.value, {\n '--v-overlay-anchor-origin': physicalAnchor(anchor, data.activatorEl.value!),\n top: convertToUnit(Math.round(y)),\n left: convertToUnit(Math.round(x)), // TODO: right for origin=\"end\", rtl\n transformOrigin: physicalAnchor(origin, data.activatorEl.value!),\n minWidth: convertToUnit(minWidth),\n maxWidth: convertToUnit(maxWidth),\n maxHeight: convertToUnit(maxHeight),\n })\n }\n\n watch(\n () => [preferredAnchor.value, preferredOrigin.value, props.offset],\n () => updateLocation(),\n { immediate: !activatorFixed }\n )\n\n if (activatorFixed) nextTick(() => updateLocation())\n requestAnimationFrame(() => {\n if (contentStyles.value.maxHeight) updateLocation()\n })\n\n return { updateLocation }\n}\n","let clean = true\nconst frames = [] as any[]\n\n/**\n * Schedule a task to run in an animation frame on its own\n * This is useful for heavy tasks that may cause jank if all ran together\n */\nexport function requestNewFrame (cb: () => void) {\n if (!clean || frames.length) {\n frames.push(cb)\n run()\n } else {\n clean = false\n cb()\n run()\n }\n}\n\nlet raf = -1\nfunction run () {\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(() => {\n const frame = frames.shift()\n if (frame) frame()\n\n if (frames.length) run()\n else clean = true\n })\n}\n","// Utilities\nimport { convertToUnit, getScrollParents, hasScrollbar, IN_BROWSER, propsFactory } from '@/util'\nimport { effectScope, nextTick, onScopeDispose, watchEffect } from 'vue'\nimport { requestNewFrame } from './requestNewFrame'\n\n// Types\nimport type { EffectScope, PropType, Ref } from 'vue'\n\nexport interface ScrollStrategyData {\n root: Ref<HTMLElement | undefined>\n contentEl: Ref<HTMLElement | undefined>\n activatorEl: Ref<HTMLElement | undefined>\n isActive: Ref<boolean>\n updateLocation: Ref<((e: Event) => void) | undefined>\n}\n\nconst scrollStrategies = {\n none: null,\n close: closeScrollStrategy,\n block: blockScrollStrategy,\n reposition: repositionScrollStrategy,\n}\n\ninterface StrategyProps {\n scrollStrategy: keyof typeof scrollStrategies | ((data: ScrollStrategyData) => void)\n}\n\nexport const makeScrollStrategyProps = propsFactory({\n scrollStrategy: {\n type: [String, Function] as PropType<StrategyProps['scrollStrategy']>,\n default: 'block',\n validator: (val: any) => typeof val === 'function' || val in scrollStrategies,\n },\n})\n\nexport function useScrollStrategies (\n props: StrategyProps,\n data: ScrollStrategyData\n) {\n if (!IN_BROWSER) return\n\n let scope: EffectScope | undefined\n watchEffect(async () => {\n scope?.stop()\n\n if (!(data.isActive.value && props.scrollStrategy)) return\n\n scope = effectScope()\n await nextTick()\n scope.run(() => {\n if (typeof props.scrollStrategy === 'function') {\n props.scrollStrategy(data)\n } else {\n scrollStrategies[props.scrollStrategy]?.(data)\n }\n })\n })\n}\n\nfunction closeScrollStrategy (data: ScrollStrategyData) {\n function onScroll (e: Event) {\n data.isActive.value = false\n }\n\n bindScroll(data.activatorEl.value ?? data.contentEl.value, onScroll)\n}\n\nfunction blockScrollStrategy (data: ScrollStrategyData) {\n const scrollElements = [...new Set([\n ...getScrollParents(data.activatorEl.value),\n ...getScrollParents(data.contentEl.value),\n ])].filter(el => !el.classList.contains('v-overlay-scroll-blocked'))\n const scrollbarWidth = window.innerWidth - document.documentElement.offsetWidth\n\n const scrollableParent = (el => hasScrollbar(el) && el)(data.root.value?.offsetParent || document.documentElement)\n if (scrollableParent) {\n data.root.value!.classList.add('v-overlay--scroll-blocked')\n }\n\n scrollElements.forEach((el, i) => {\n el.style.setProperty('--v-body-scroll-x', convertToUnit(-el.scrollLeft))\n el.style.setProperty('--v-body-scroll-y', convertToUnit(-el.scrollTop))\n el.style.setProperty('--v-scrollbar-offset', convertToUnit(scrollbarWidth))\n el.classList.add('v-overlay-scroll-blocked')\n })\n\n onScopeDispose(() => {\n scrollElements.forEach((el, i) => {\n const x = parseFloat(el.style.getPropertyValue('--v-body-scroll-x'))\n const y = parseFloat(el.style.getPropertyValue('--v-body-scroll-y'))\n\n el.style.removeProperty('--v-body-scroll-x')\n el.style.removeProperty('--v-body-scroll-y')\n el.style.removeProperty('--v-scrollbar-offset')\n el.classList.remove('v-overlay-scroll-blocked')\n\n el.scrollLeft = -x\n el.scrollTop = -y\n })\n if (scrollableParent) {\n data.root.value!.classList.remove('v-overlay--scroll-blocked')\n }\n })\n}\n\nfunction repositionScrollStrategy (data: ScrollStrategyData) {\n let slow = false\n let raf = -1\n\n function update (e: Event) {\n requestNewFrame(() => {\n const start = performance.now()\n data.updateLocation.value?.(e)\n const time = performance.now() - start\n slow = time / (1000 / 60) > 2\n })\n }\n\n bindScroll(data.activatorEl.value ?? data.contentEl.value, e => {\n if (slow) {\n // If the position calculation is slow,\n // defer updates until scrolling is finished.\n // Browsers usually fire one scroll event per frame so\n // we just wait until we've got two frames without an event\n cancelAnimationFrame(raf)\n raf = requestAnimationFrame(() => {\n raf = requestAnimationFrame(() => {\n update(e)\n })\n })\n } else {\n update(e)\n }\n })\n}\n\n/** @private */\nfunction bindScroll (el: HTMLElement | undefined, onScroll: (e: Event) => void) {\n const scrollElements = [document, ...getScrollParents(el)]\n scrollElements.forEach(el => {\n el.addEventListener('scroll', onScroll, { passive: true })\n })\n\n onScopeDispose(() => {\n scrollElements.forEach(el => {\n el.removeEventListener('scroll', onScroll)\n })\n })\n}\n","import { effectScope, watch } from 'vue'\nimport type { EffectScope, WatchSource } from 'vue'\n\nexport function useToggleScope (source: WatchSource<boolean>, cb: () => void) {\n let scope: EffectScope | undefined\n watch(source, active => {\n if (active && !scope) {\n scope = effectScope()\n scope.run(cb)\n } else {\n scope?.stop()\n scope = undefined\n }\n }, { immediate: true })\n}\n","// Utilities\nimport { computed, warn } from 'vue'\nimport { IN_BROWSER } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\nexport function useTeleport (target: Ref<boolean | string | Element>) {\n const teleportTarget = computed(() => {\n const _target = target.value\n\n if (_target === true || !IN_BROWSER) return undefined\n\n const targetElement =\n _target === false ? document.body\n : typeof _target === 'string' ? document.querySelector(_target)\n : _target\n\n if (targetElement == null) {\n warn(`Unable to locate target ${_target}`)\n return undefined\n }\n\n if (!useTeleport.cache.has(targetElement)) {\n const el = document.createElement('div')\n el.className = 'v-overlay-container'\n targetElement.appendChild(el)\n useTeleport.cache.set(targetElement, el)\n }\n\n return useTeleport.cache.get(targetElement)\n })\n\n return { teleportTarget }\n}\nuseTeleport.cache = new WeakMap<Element, Element>()\n","// Utilities\nimport { computed, ref, watch } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\nimport { propsFactory } from '@/util'\n\nexport const makeLazyProps = propsFactory({\n eager: Boolean,\n}, 'lazy')\n\nexport function useLazy (props: { eager: boolean }, active: Ref<boolean>) {\n const isBooted = ref(false)\n const hasContent = computed(() => isBooted.value || props.eager || active.value)\n\n watch(active, () => isBooted.value = true)\n\n function onAfterLeave () {\n if (!props.eager) isBooted.value = false\n }\n\n return { isBooted, hasContent, onAfterLeave }\n}\n","import { useToggleScope } from '@/composables/toggleScope'\n\nimport { computed, onScopeDispose, reactive, readonly, ref, toRaw, watchEffect } from 'vue'\nimport { getCurrentInstance } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, Ref } from 'vue'\n\nconst stack = reactive<[vm: ComponentInternalInstance, zIndex: number][]>([])\n\nexport function useStack (isActive: Readonly<Ref<boolean>>, zIndex: Readonly<Ref<string | number>>) {\n const vm = getCurrentInstance('useStack')\n\n const _zIndex = ref(+zIndex.value)\n useToggleScope(isActive, () => {\n const lastZIndex = stack[stack.length - 1]?.[1]\n _zIndex.value = lastZIndex ? lastZIndex + 10 : +zIndex.value\n stack.push([vm, _zIndex.value])\n\n onScopeDispose(() => {\n const idx = stack.findIndex(v => v[0] === vm)\n stack.splice(idx, 1)\n })\n })\n\n const isTop = ref(true)\n watchEffect(() => {\n const _isTop = toRaw(stack[stack.length - 1]?.[0]) === vm\n setTimeout(() => isTop.value = _isTop)\n })\n\n return {\n isTop: readonly(isTop),\n stackStyles: computed(() => ({ zIndex: _zIndex.value })),\n }\n}\n","import { attachedRoot } from '@/util'\nimport type { DirectiveBinding } from 'vue'\n\ninterface ClickOutsideBindingArgs {\n handler: (e: MouseEvent) => void\n closeConditional?: (e: Event) => boolean\n include?: () => HTMLElement[]\n}\n\ninterface ClickOutsideDirectiveBinding extends DirectiveBinding {\n value: ((e: MouseEvent) => void) | ClickOutsideBindingArgs\n}\n\nfunction defaultConditional () {\n return true\n}\n\nfunction checkEvent (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding): boolean {\n // The include element callbacks below can be expensive\n // so we should avoid calling them when we're not active.\n // Explicitly check for false to allow fallback compatibility\n // with non-toggleable components\n if (!e || checkIsActive(e, binding) === false) return false\n\n // If we're clicking inside the shadowroot, then the app root doesn't get the same\n // level of introspection as to _what_ we're clicking. We want to check to see if\n // our target is the shadowroot parent container, and if it is, ignore.\n const root = attachedRoot(el)\n if (\n typeof ShadowRoot !== 'undefined' &&\n root instanceof ShadowRoot &&\n root.host === e.target\n ) return false\n\n // Check if additional elements were passed to be included in check\n // (click must be outside all included elements, if any)\n const elements = ((typeof binding.value === 'object' && binding.value.include) || (() => []))()\n // Add the root element for the component this directive was defined on\n elements.push(el)\n\n // Check if it's a click outside our elements, and then if our callback returns true.\n // Non-toggleable components should take action in their callback and return falsy.\n // Toggleable can return true if it wants to deactivate.\n // Note that, because we're in the capture phase, this callback will occur before\n // the bubbling click event on any outside elements.\n return !elements.some(el => el?.contains(e.target as Node))\n}\n\nfunction checkIsActive (e: MouseEvent, binding: ClickOutsideDirectiveBinding): boolean | void {\n const isActive = (typeof binding.value === 'object' && binding.value.closeConditional) || defaultConditional\n\n return isActive(e)\n}\n\nfunction directive (e: MouseEvent, el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const handler = typeof binding.value === 'function' ? binding.value : binding.value.handler\n\n el._clickOutside!.lastMousedownWasOutside && checkEvent(e, el, binding) && setTimeout(() => {\n checkIsActive(e, binding) && handler && handler(e)\n }, 0)\n}\n\nfunction handleShadow (el: HTMLElement, callback: Function): void {\n const root = attachedRoot(el)\n\n callback(document)\n\n if (typeof ShadowRoot !== 'undefined' && root instanceof ShadowRoot) {\n callback(root)\n }\n}\n\nexport const ClickOutside = {\n // [data-app] may not be found\n // if using bind, inserted makes\n // sure that the root element is\n // available, iOS does not support\n // clicks on body\n mounted (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n const onClick = (e: Event) => directive(e as MouseEvent, el, binding)\n const onMousedown = (e: Event) => {\n el._clickOutside!.lastMousedownWasOutside = checkEvent(e as MouseEvent, el, binding)\n }\n\n handleShadow(el, (app: HTMLElement) => {\n app.addEventListener('click', onClick, true)\n app.addEventListener('mousedown', onMousedown, true)\n })\n\n if (!el._clickOutside) {\n el._clickOutside = {\n lastMousedownWasOutside: true,\n }\n }\n\n el._clickOutside[binding.instance!.$.uid] = {\n onClick,\n onMousedown,\n }\n },\n\n unmounted (el: HTMLElement, binding: ClickOutsideDirectiveBinding) {\n if (!el._clickOutside) return\n\n handleShadow(el, (app: HTMLElement) => {\n if (!app || !el._clickOutside?.[binding.instance!.$.uid]) return\n\n const { onClick, onMousedown } = el._clickOutside[binding.instance!.$.uid]!\n\n app.removeEventListener('click', onClick, true)\n app.removeEventListener('mousedown', onMousedown, true)\n })\n\n delete el._clickOutside[binding.instance!.$.uid]\n },\n}\n\nexport default ClickOutside\n","// Styles\nimport './VOverlay.sass'\n\n// Composables\nimport { makeActivatorProps, useActivator } from './useActivator'\nimport { makeLocationStrategyProps, useLocationStrategies } from './locationStrategies'\nimport { makeScrollStrategyProps, useScrollStrategies } from './scrollStrategies'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useBackButton, useRouter } from '@/composables/router'\nimport { useToggleScope } from '@/composables/toggleScope'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRtl } from '@/composables/rtl'\nimport { useTeleport } from '@/composables/teleport'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { useStack } from '@/composables/stack'\n\n// Directives\nimport { ClickOutside } from '@/directives/click-outside'\n\n// Utilities\nimport {\n convertToUnit,\n genericComponent,\n getScrollParent,\n IN_BROWSER,\n standardEasing,\n useRender,\n} from '@/util'\nimport {\n computed,\n mergeProps,\n ref,\n Teleport,\n toHandlers,\n toRef,\n Transition,\n watch,\n} from 'vue'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { MakeSlots } from '@/util'\nimport type { BackgroundColorData } from '@/composables/color'\n\ninterface ScrimProps {\n [key: string]: unknown\n modelValue: boolean\n color: BackgroundColorData\n}\nfunction Scrim (props: ScrimProps) {\n const { modelValue, color, ...rest } = props\n return (\n <Transition name=\"fade-transition\" appear>\n { props.modelValue && (\n <div\n class={[\n 'v-overlay__scrim',\n props.color.backgroundColorClasses.value,\n ]}\n style={ props.color.backgroundColorStyles.value }\n { ...rest }\n />\n )}\n </Transition>\n )\n}\n\nexport type OverlaySlots = MakeSlots<{\n default: [{ isActive: Ref<boolean> }]\n activator: [{ isActive: boolean, props: Record<string, any> }]\n}>\n\nexport const VOverlay = genericComponent<new () => {\n $slots: OverlaySlots\n}>()({\n name: 'VOverlay',\n\n directives: { ClickOutside },\n\n inheritAttrs: false,\n\n props: {\n absolute: Boolean,\n attach: [Boolean, String, Object] as PropType<boolean | string | Element>,\n closeOnBack: {\n type: Boolean,\n default: true,\n },\n contained: Boolean,\n contentClass: null,\n contentProps: null,\n disabled: Boolean,\n noClickAnimation: Boolean,\n modelValue: Boolean,\n persistent: Boolean,\n scrim: {\n type: [String, Boolean],\n default: true,\n },\n zIndex: {\n type: [Number, String],\n default: 2000,\n },\n\n ...makeActivatorProps(),\n ...makeDimensionProps(),\n ...makeLocationStrategyProps(),\n ...makeScrollStrategyProps(),\n ...makeThemeProps(),\n ...makeTransitionProps(),\n ...makeLazyProps(),\n },\n\n emits: {\n 'click:outside': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n afterLeave: () => true,\n },\n\n setup (props, { slots, attrs, emit }) {\n const model = useProxiedModel(props, 'modelValue')\n const isActive = computed({\n get: () => model.value,\n set: v => {\n if (!(v && props.disabled)) model.value = v\n },\n })\n const { teleportTarget } = useTeleport(computed(() => props.attach || props.contained))\n const { themeClasses } = provideTheme(props)\n const { rtlClasses } = useRtl()\n const { hasContent, onAfterLeave } = useLazy(props, isActive)\n const scrimColor = useBackgroundColor(computed(() => {\n return typeof props.scrim === 'string' ? props.scrim : null\n }))\n const { isTop, stackStyles } = useStack(isActive, toRef(props, 'zIndex'))\n const { activatorEl, activatorRef, activatorEvents, contentEvents } = useActivator(props, { isActive, isTop })\n const { dimensionStyles } = useDimension(props)\n\n watch(() => props.disabled, v => {\n if (v) isActive.value = false\n })\n\n const root = ref<HTMLElement>()\n const contentEl = ref<HTMLElement>()\n const { contentStyles, updateLocation } = useLocationStrategies(props, {\n contentEl,\n activatorEl,\n isActive,\n })\n useScrollStrategies(props, {\n root,\n contentEl,\n activatorEl,\n isActive,\n updateLocation,\n })\n\n function onClickOutside (e: MouseEvent) {\n emit('click:outside', e)\n\n if (!props.persistent) isActive.value = false\n else animateClick()\n }\n\n function closeConditional () {\n return isActive.value && isTop.value\n }\n\n IN_BROWSER && watch(isActive, val => {\n if (val) {\n window.addEventListener('keydown', onKeydown)\n } else {\n window.removeEventListener('keydown', onKeydown)\n }\n }, { immediate: true })\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === 'Escape' && isTop.value) {\n if (!props.persistent) {\n isActive.value = false\n } else animateClick()\n }\n }\n\n const router = useRouter()\n useToggleScope(() => props.closeOnBack, () => {\n useBackButton(router, next => {\n if (isTop.value && isActive.value) {\n next(false)\n if (!props.persistent) isActive.value = false\n else animateClick()\n } else {\n next()\n }\n })\n })\n\n const top = ref<number>()\n watch(() => isActive.value && (props.absolute || props.contained) && teleportTarget.value == null, val => {\n if (val) {\n const scrollParent = getScrollParent(root.value)\n if (scrollParent && scrollParent !== document.scrollingElement) {\n top.value = scrollParent.scrollTop\n }\n }\n })\n\n // Add a quick \"bounce\" animation to the content\n function animateClick () {\n if (props.noClickAnimation) return\n\n contentEl.value?.animate([\n { transformOrigin: 'center' },\n { transform: 'scale(1.03)' },\n { transformOrigin: 'center' },\n ], {\n duration: 150,\n easing: standardEasing,\n })\n }\n\n useRender(() => (\n <>\n { slots.activator?.({\n isActive: isActive.value,\n props: mergeProps({\n ref: activatorRef,\n }, toHandlers(activatorEvents.value), props.activatorProps),\n }) }\n\n { IN_BROWSER && (\n <Teleport\n disabled={ !teleportTarget.value }\n to={ teleportTarget.value }\n >\n { hasContent.value && (\n <div\n class={[\n 'v-overlay',\n {\n 'v-overlay--absolute': props.absolute || props.contained,\n 'v-overlay--active': isActive.value,\n 'v-overlay--contained': props.contained,\n },\n themeClasses.value,\n rtlClasses.value,\n ]}\n style={[stackStyles.value, { top: convertToUnit(top.value) }]}\n ref={ root }\n {...attrs}\n >\n <Scrim\n color={ scrimColor }\n modelValue={ isActive.value && !!props.scrim }\n />\n <MaybeTransition\n appear\n persisted\n transition={ props.transition }\n target={ activatorEl.value }\n onAfterLeave={() => { onAfterLeave(); emit('afterLeave') }}\n >\n <div\n ref={ contentEl }\n v-show={ isActive.value }\n v-click-outside={{ handler: onClickOutside, closeConditional, include: () => [activatorEl.value] }}\n class={[\n 'v-overlay__content',\n props.contentClass,\n ]}\n style={[\n dimensionStyles.value,\n contentStyles.value,\n ]}\n { ...toHandlers(contentEvents.value) }\n { ...props.contentProps }\n >\n { slots.default?.({ isActive }) }\n </div>\n </MaybeTransition>\n </div>\n )}\n </Teleport>\n ) }\n </>\n ))\n\n return {\n animateClick,\n contentEl,\n activatorEl,\n isTop,\n updateLocation,\n }\n },\n})\n\nexport type VOverlay = InstanceType<typeof VOverlay>\n","import { getCurrentInstance } from '@/util'\n\nexport function useScopeId () {\n const vm = getCurrentInstance('useScopeId')\n\n const scopeId = vm!.vnode.scopeId\n\n return { scopeId: scopeId ? { [scopeId]: '' } : undefined }\n}\n","// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VOverlay } from '@/components/VOverlay'\nimport { VDialogTransition } from '@/components/transitions'\n\n// Composables\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, inject, provide, ref, watch } from 'vue'\nimport { genericComponent, getUid, useRender } from '@/util'\nimport { VMenuSymbol } from './shared'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useScopeId } from '@/composables/scopeId'\n\nexport const VMenu = genericComponent<new () => {\n $slots: OverlaySlots\n}>()({\n name: 'VMenu',\n\n inheritAttrs: false,\n\n props: {\n // TODO\n // disableKeys: Boolean,\n modelValue: Boolean,\n id: String,\n\n ...makeTransitionProps({\n transition: { component: VDialogTransition },\n } as const),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-menu-${uid}`)\n\n const overlay = ref<VOverlay>()\n\n const parent = inject(VMenuSymbol, null)\n let openChildren = 0\n provide(VMenuSymbol, {\n register () {\n ++openChildren\n },\n unregister () {\n --openChildren\n },\n closeParents () {\n setTimeout(() => {\n if (!openChildren) {\n isActive.value = false\n parent?.closeParents()\n }\n }, 40)\n },\n })\n\n watch(isActive, val => {\n val ? parent?.register() : parent?.unregister()\n })\n\n function onClickOutside () {\n parent?.closeParents()\n }\n\n useRender(() => (\n <VOverlay\n ref={ overlay }\n v-model={ isActive.value }\n class={[\n 'v-menu',\n ]}\n transition={ props.transition }\n absolute\n closeOnContentClick\n locationStrategy=\"connected\"\n scrollStrategy=\"reposition\"\n scrim={ false }\n openDelay=\"300\"\n closeDelay=\"250\"\n activatorProps={{\n 'aria-haspopup': 'menu',\n 'aria-expanded': String(isActive.value),\n 'aria-owns': id.value,\n }}\n onClick:outside={ onClickOutside }\n { ...scopeId }\n { ...attrs }\n v-slots={{\n default: slots.default,\n activator: slots.activator,\n }}\n />\n ))\n\n return useForwardRef({ id }, overlay)\n },\n})\n\nexport type VMenu = InstanceType<typeof VMenu>\n","// Styles\nimport './VMessages.sass'\n\n// Components\nimport { VSlideYTransition } from '@/components/transitions'\n\n// Composables\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { defineComponent, wrapInArray } from '@/util'\nimport { computed } from 'vue'\nimport type { PropType } from 'vue'\n\nexport const VMessages = defineComponent({\n name: 'VMessages',\n\n props: {\n active: Boolean,\n color: String,\n messages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n\n ...makeTransitionProps({\n transition: {\n component: VSlideYTransition,\n leaveAbsolute: true,\n group: true,\n },\n }),\n },\n\n setup (props, { slots }) {\n const messages = computed(() => wrapInArray(props.messages))\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => props.color))\n\n return () => (\n <MaybeTransition\n transition={ props.transition }\n tag=\"div\"\n class={[\n 'v-messages',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n >\n { props.active && (\n messages.value.map((message, i) => (\n <div\n class=\"v-messages__message\"\n key={ `${i}-${messages.value}` }\n >\n { slots.message ? slots.message({ message }) : message }\n </div>\n ))\n ) }\n </MaybeTransition>\n )\n },\n})\n","// Utilities\nimport { computed, inject, provide, ref, watch } from 'vue'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { consoleWarn, propsFactory } from '@/util'\n\n// Types\nimport type { ComputedRef, InjectionKey, PropType, Ref } from 'vue'\n\nexport interface FormProvide {\n register: (\n id: number | string,\n validate: () => Promise<string[]>,\n reset: () => void,\n resetValidation: () => void,\n isValid: Ref<boolean | null>,\n ) => void\n unregister: (id: number | string) => void\n items: Ref<FormField[]>\n isDisabled: ComputedRef<boolean>\n isReadonly: ComputedRef<boolean>\n isValidating: Ref<boolean>\n}\n\ninterface FormField {\n id: number | string\n validate: () => Promise<string[]>\n reset: () => void\n resetValidation: () => void\n isValid: boolean | null\n}\n\ninterface FormValidationResult {\n id: number | string\n errorMessages: string[]\n}\n\nexport interface SubmitEventPromise extends SubmitEvent, Promise<{ valid: boolean, errorMessages: FormValidationResult[] }> {}\n\nexport const FormKey: InjectionKey<FormProvide> = Symbol.for('vuetify:form')\n\nexport interface FormProps {\n disabled: boolean\n fastFail: boolean\n lazyValidation: boolean\n readonly: boolean\n modelValue: boolean | null\n 'onUpdate:modelValue': ((val: boolean | null) => void) | undefined\n}\n\nexport const makeFormProps = propsFactory({\n disabled: Boolean,\n fastFail: Boolean,\n lazyValidation: Boolean,\n readonly: Boolean,\n modelValue: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n})\n\nexport function createForm (props: FormProps) {\n const model = useProxiedModel(props, 'modelValue')\n\n const isDisabled = computed(() => props.disabled)\n const isReadonly = computed(() => props.readonly)\n const isValidating = ref(false)\n const items = ref<FormField[]>([])\n const errorMessages = ref<FormValidationResult[]>([])\n\n async function validate () {\n const results = []\n let valid = true\n\n errorMessages.value = []\n isValidating.value = true\n\n for (const item of items.value) {\n const itemErrorMessages = await item.validate()\n\n if (itemErrorMessages.length > 0) {\n valid = false\n\n results.push({\n id: item.id,\n errorMessages: itemErrorMessages,\n })\n }\n\n if (!valid && props.fastFail) break\n }\n\n errorMessages.value = results\n isValidating.value = false\n\n return { valid, errorMessages: errorMessages.value }\n }\n\n function reset () {\n items.value.forEach(item => item.reset())\n model.value = null\n }\n\n function resetValidation () {\n items.value.forEach(item => item.resetValidation())\n errorMessages.value = []\n model.value = null\n }\n\n watch(items, () => {\n let valid = null\n\n if (items.value.some(item => item.isValid === false)) {\n valid = false\n } else if (items.value.every(item => item.isValid === true)) {\n valid = true\n }\n\n model.value = valid\n }, {\n deep: true,\n })\n\n provide(FormKey, {\n register: (id, validate, reset, resetValidation, isValid) => {\n if (items.value.some(item => item.id === id)) {\n consoleWarn(`Duplicate input name \"${id}\"`)\n }\n\n items.value.push({\n id,\n validate,\n reset,\n resetValidation,\n isValid: isValid as unknown as boolean | null, // TODO: Better way to type this unwrapping?\n })\n },\n unregister: id => {\n items.value = items.value.filter(item => {\n return item.id !== id\n })\n },\n isDisabled,\n isReadonly,\n isValidating,\n items,\n })\n\n return {\n errorMessages,\n isDisabled,\n isReadonly,\n isValidating,\n items,\n validate,\n reset,\n resetValidation,\n }\n}\n\nexport function useForm () {\n return inject(FormKey, null)\n}\n","// Composables\nimport { useForm } from '@/composables/form'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onBeforeMount, onBeforeUnmount, ref, watch } from 'vue'\nimport { getCurrentInstanceName, getUid, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type ValidationResult = string | true\nexport type ValidationRule =\n | ValidationResult\n | PromiseLike<ValidationResult>\n | ((value: any) => ValidationResult)\n | ((value: any) => PromiseLike<ValidationResult>)\n\nexport interface ValidationProps {\n disabled: boolean\n error: boolean\n errorMessages: string | string[]\n maxErrors: string | number\n name: string | undefined\n readonly: boolean\n rules: ValidationRule[]\n modelValue: any\n 'onUpdate:modelValue': ((val: any) => void) | undefined\n}\n\nexport const makeValidationProps = propsFactory({\n disabled: Boolean,\n error: Boolean,\n errorMessages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n maxErrors: {\n type: [Number, String],\n default: 1,\n },\n name: String,\n readonly: Boolean,\n rules: {\n type: Array as PropType<ValidationRule[]>,\n default: () => ([]),\n },\n modelValue: null,\n})\n\nexport function useValidation (\n props: ValidationProps,\n name = getCurrentInstanceName(),\n) {\n const model = useProxiedModel(props, 'modelValue')\n const form = useForm()\n const internalErrorMessages = ref<string[]>([])\n const isPristine = ref(true)\n const isDirty = computed(() => wrapInArray(model.value === '' ? null : model.value).length > 0)\n const isDisabled = computed(() => !!(props.disabled || form?.isDisabled.value))\n const isReadonly = computed(() => !!(props.readonly || form?.isReadonly.value))\n const errorMessages = computed(() => {\n return props.errorMessages.length\n ? wrapInArray(props.errorMessages)\n : internalErrorMessages.value\n })\n const isValid = computed(() => {\n if (!props.rules.length) return true\n if (props.error || errorMessages.value.length) return false\n\n return isPristine.value ? null : true\n })\n const isValidating = ref(false)\n const validationClasses = computed(() => {\n return {\n [`${name}--error`]: isValid.value === false,\n [`${name}--dirty`]: isDirty.value,\n [`${name}--disabled`]: isDisabled.value,\n [`${name}--readonly`]: isReadonly.value,\n }\n })\n\n const uid = computed(() => props.name ?? getUid())\n\n onBeforeMount(() => {\n form?.register(uid.value, validate, reset, resetValidation, isValid)\n })\n\n onBeforeUnmount(() => {\n form?.unregister(uid.value)\n })\n\n watch(model, () => {\n if (model.value != null) validate()\n })\n\n function reset () {\n resetValidation()\n model.value = null\n }\n\n function resetValidation () {\n isPristine.value = true\n internalErrorMessages.value = []\n }\n\n async function validate () {\n const results = []\n\n isValidating.value = true\n\n for (const rule of props.rules) {\n if (results.length >= (props.maxErrors || 1)) {\n break\n }\n\n const handler = typeof rule === 'function' ? rule : () => rule\n const result = await handler(model.value)\n\n if (result === true) continue\n\n if (typeof result !== 'string') {\n // eslint-disable-next-line no-console\n console.warn(`${result} is not a valid value. Rule functions must return boolean true or a string.`)\n\n continue\n }\n\n results.push(result)\n }\n\n internalErrorMessages.value = results\n isValidating.value = false\n isPristine.value = false\n\n return internalErrorMessages.value\n }\n\n return {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n }\n}\n","// Styles\nimport './VInput.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VMessages } from '@/components/VMessages'\n\n// Composables\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeValidationProps, useValidation } from '@/composables/validation'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, getUid, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, ExtractPropTypes, PropType, Ref } from 'vue'\nimport type { MakeSlots } from '@/util'\n\nexport interface VInputSlot {\n id: ComputedRef<string>\n isDirty: ComputedRef<boolean>\n isDisabled: ComputedRef<boolean>\n isReadonly: ComputedRef<boolean>\n isPristine: Ref<boolean>\n isValid: ComputedRef<boolean | null>\n isValidating: Ref<boolean>\n reset: () => void\n resetValidation: () => void\n validate: () => void\n}\n\nexport const makeVInputProps = propsFactory({\n id: String,\n appendIcon: IconValue,\n prependIcon: IconValue,\n hideDetails: [Boolean, String] as PropType<boolean | 'auto'>,\n messages: {\n type: [Array, String] as PropType<string | string[]>,\n default: () => ([]),\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['horizontal', 'vertical'].includes(v),\n },\n\n ...makeDensityProps(),\n ...makeValidationProps(),\n})\n\nexport type VInputSlots = MakeSlots<{\n default: [VInputSlot]\n prepend: [VInputSlot]\n append: [VInputSlot]\n details: [VInputSlot]\n}>\n\nexport const VInput = genericComponent<new <T>() => {\n $slots: VInputSlots\n}>()({\n name: 'VInput',\n\n props: {\n ...makeVInputProps(),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const { densityClasses } = useDensity(props)\n const {\n errorMessages,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n validationClasses,\n } = useValidation(props)\n\n const uid = getUid()\n const id = computed(() => props.id || `input-${uid}`)\n\n const slotProps = computed<VInputSlot>(() => ({\n id,\n isDirty,\n isDisabled,\n isReadonly,\n isPristine,\n isValid,\n isValidating,\n reset,\n resetValidation,\n validate,\n }))\n\n useRender(() => {\n const hasPrepend = !!(slots.prepend || props.prependIcon)\n const hasAppend = !!(slots.append || props.appendIcon)\n const hasMessages = !!(\n props.messages?.length ||\n errorMessages.value.length\n )\n const hasDetails = !props.hideDetails || (\n props.hideDetails === 'auto' &&\n hasMessages\n )\n\n return (\n <div class={[\n 'v-input',\n `v-input--${props.direction}`,\n densityClasses.value,\n validationClasses.value,\n ]}\n >\n { hasPrepend && (\n <div\n class=\"v-input__prepend\"\n >\n { slots?.prepend?.(slotProps.value) }\n\n { props.prependIcon && (\n <VIcon\n onClick={ attrs['onClick:prepend'] }\n icon={ props.prependIcon }\n />\n ) }\n </div>\n ) }\n\n { slots.default && (\n <div class=\"v-input__control\">\n { slots.default?.(slotProps.value) }\n </div>\n ) }\n\n { hasAppend && (\n <div\n class=\"v-input__append\"\n >\n { slots?.append?.(slotProps.value) }\n\n { props.appendIcon && (\n <VIcon\n onClick={ attrs['onClick:append'] }\n icon={ props.appendIcon }\n />\n ) }\n </div>\n ) }\n\n { hasDetails && (\n <div class=\"v-input__details\">\n <VMessages\n active={ hasMessages }\n messages={ errorMessages.value.length > 0\n ? errorMessages.value\n : props.messages\n }\n v-slots={{ message: slots.message }}\n />\n\n { slots.details?.(slotProps.value) }\n </div>\n ) }\n </div>\n )\n })\n\n return {\n reset,\n resetValidation,\n validate,\n }\n },\n})\n\nexport type VInput = InstanceType<typeof VInput>\n\nexport function filterInputProps (props: ExtractPropTypes<ReturnType<typeof makeVInputProps>>) {\n return pick(props, Object.keys(VInput.props) as any)\n}\n","// Styles\nimport './VLabel.sass'\n\n// Composables\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VLabel = defineComponent({\n name: 'VLabel',\n\n props: {\n text: String,\n\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n return () => (\n <label class=\"v-label\">\n { props.text }\n\n { slots.default?.() }\n </label>\n )\n },\n})\n\nexport type VLabel = InstanceType<typeof VLabel>\n","// Components\nimport { VLabel } from '@/components/VLabel'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VFieldLabel = defineComponent({\n name: 'VFieldLabel',\n\n props: {\n floating: Boolean,\n },\n\n setup (props, { slots }) {\n return () => {\n return (\n <VLabel\n class={[\n 'v-field-label',\n { 'v-field-label--floating': props.floating },\n ]}\n aria-hidden={ props.floating || undefined }\n v-slots={ slots }\n />\n )\n }\n },\n})\n\nexport type VFieldLabel = InstanceType<typeof VFieldLabel>\n","// Utilities\nimport { onBeforeUnmount, ref, watch } from 'vue'\nimport { SUPPORTS_INTERSECTION } from '@/util'\n\nexport function useIntersectionObserver (callback?: IntersectionObserverCallback) {\n const intersectionRef = ref<HTMLElement>()\n const isIntersecting = ref(false)\n\n if (SUPPORTS_INTERSECTION) {\n const observer = new IntersectionObserver((entries: IntersectionObserverEntry[]) => {\n callback?.(entries, observer)\n\n isIntersecting.value = !!entries.find(entry => entry.isIntersecting)\n })\n\n onBeforeUnmount(() => {\n observer.disconnect()\n })\n\n watch(intersectionRef, (newValue, oldValue) => {\n if (oldValue) {\n observer.unobserve(oldValue)\n isIntersecting.value = false\n }\n\n if (newValue) observer.observe(newValue)\n }, {\n flush: 'post',\n })\n }\n\n return { intersectionRef, isIntersecting }\n}\n","// Styles\nimport './VProgressLinear.sass'\n\n// Composables\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRtl } from '@/composables/rtl'\n\n// Utilities\nimport { convertToUnit, defineComponent } from '@/util'\nimport { computed, Transition } from 'vue'\n\nexport const VProgressLinear = defineComponent({\n name: 'VProgressLinear',\n\n props: {\n active: {\n type: Boolean,\n default: true,\n },\n bgColor: String,\n bgOpacity: [Number, String],\n bufferValue: {\n type: [Number, String],\n default: 0,\n },\n clickable: Boolean,\n color: String,\n height: {\n type: [Number, String],\n default: 4,\n },\n indeterminate: Boolean,\n max: {\n type: [Number, String],\n default: 100,\n },\n modelValue: {\n type: [Number, String],\n default: 0,\n },\n reverse: Boolean,\n stream: Boolean,\n striped: Boolean,\n roundedBar: Boolean,\n\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (value: number) => true,\n },\n\n setup (props, { slots }) {\n const progress = useProxiedModel(props, 'modelValue')\n const { isRtl } = useRtl()\n const { themeClasses } = provideTheme(props)\n const { textColorClasses, textColorStyles } = useTextColor(props, 'color')\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(computed(() => props.bgColor || props.color))\n const { backgroundColorClasses: barColorClasses, backgroundColorStyles: barColorStyles } = useBackgroundColor(props, 'color')\n const { roundedClasses } = useRounded(props)\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n\n const max = computed(() => parseInt(props.max, 10))\n const height = computed(() => parseInt(props.height, 10))\n const normalizedBuffer = computed(() => parseFloat(props.bufferValue) / max.value * 100)\n const normalizedValue = computed(() => parseFloat(progress.value) / max.value * 100)\n const isReversed = computed(() => isRtl.value !== props.reverse)\n const transition = computed(() => props.indeterminate ? 'fade-transition' : 'slide-x-transition')\n const opacity = computed(() => {\n return props.bgOpacity == null\n ? props.bgOpacity\n : parseFloat(props.bgOpacity)\n })\n\n function handleClick (e: MouseEvent) {\n if (!intersectionRef.value) return\n\n const { left, right, width } = intersectionRef.value.getBoundingClientRect()\n const value = isReversed.value ? (width - e.clientX) + (right - width) : e.clientX - left\n\n progress.value = Math.round(value / width * max.value)\n }\n\n return () => (\n <props.tag\n ref={ intersectionRef }\n class={[\n 'v-progress-linear',\n {\n 'v-progress-linear--active': props.active && isIntersecting.value,\n 'v-progress-linear--reverse': isReversed.value,\n 'v-progress-linear--rounded': props.rounded,\n 'v-progress-linear--rounded-bar': props.roundedBar,\n 'v-progress-linear--striped': props.striped,\n },\n roundedClasses.value,\n themeClasses.value,\n ]}\n style={{\n height: props.active ? convertToUnit(height.value) : 0,\n '--v-progress-linear-height': convertToUnit(height.value),\n }}\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax={ props.max }\n aria-valuenow={ props.indeterminate ? undefined : normalizedValue.value }\n onClick={ props.clickable && handleClick }\n >\n { props.stream && (\n <div\n class={[\n 'v-progress-linear__stream',\n textColorClasses.value,\n ]}\n style={{\n ...textColorStyles.value,\n [isReversed.value ? 'left' : 'right']: convertToUnit(-height.value),\n borderTop: `${convertToUnit(height.value / 2)} dotted`,\n opacity: opacity.value,\n top: `calc(50% - ${convertToUnit(height.value / 4)})`,\n width: convertToUnit(100 - normalizedBuffer.value, '%'),\n '--v-progress-linear-stream-to': convertToUnit(height.value * (isReversed.value ? 1 : -1)),\n }}\n />\n ) }\n\n <div\n class={[\n 'v-progress-linear__background',\n backgroundColorClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n {\n opacity: opacity.value,\n width: convertToUnit((!props.stream ? 100 : normalizedBuffer.value), '%'),\n },\n ]}\n />\n\n <Transition name={ transition.value }>\n { !props.indeterminate ? (\n <div\n class={[\n 'v-progress-linear__determinate',\n barColorClasses.value,\n ]}\n style={[\n barColorStyles.value,\n { width: convertToUnit(normalizedValue.value, '%') },\n ]}\n />\n ) : (\n <div class=\"v-progress-linear__indeterminate\">\n { ['long', 'short'].map(bar => (\n <div\n key={ bar }\n class={[\n 'v-progress-linear__indeterminate',\n bar,\n barColorClasses.value,\n ]}\n style={ barColorStyles.value }\n />\n )) }\n </div>\n ) }\n </Transition>\n\n { slots.default && (\n <div class=\"v-progress-linear__content\">\n { slots.default({ value: normalizedValue.value, buffer: normalizedBuffer.value }) }\n </div>\n ) }\n </props.tag>\n )\n },\n})\n","// Components\nimport { VProgressLinear } from '@/components/VProgressLinear'\n\n// Utilities\nimport { computed } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { ExtractPropTypes, SetupContext } from 'vue'\nimport type { MakeSlots, SlotsToProps } from '@/util'\n\nexport interface LoaderSlotProps {\n color: string | undefined\n isActive: boolean\n}\n\nexport interface LoaderProps {\n loading: boolean | string\n}\n\n// Composables\nexport const makeLoaderProps = propsFactory({\n loading: Boolean,\n}, 'loader')\n\nexport function useLoader (\n props: LoaderProps,\n name = getCurrentInstanceName(),\n) {\n const loaderClasses = computed(() => ({\n [`${name}--loading`]: props.loading,\n }))\n\n return { loaderClasses }\n}\n\nexport function LoaderSlot (\n props: {\n active: boolean\n name: string\n color?: string\n } & ExtractPropTypes<SlotsToProps<MakeSlots<{\n default: [LoaderSlotProps]\n }>>>,\n { slots }: SetupContext,\n) {\n return (\n <div class={`${props.name}__loader`}>\n { slots.default?.({\n color: props.color,\n isActive: props.active,\n } as LoaderSlotProps) || (\n <VProgressLinear\n active={ props.active }\n color={ props.color }\n height=\"2\"\n indeterminate\n />\n )}\n </div>\n )\n}\n","// Components\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nexport interface FocusProps {\n focused: boolean\n 'onUpdate:focused': ((val: boolean) => void) | undefined\n}\n\n// Composables\nexport const makeFocusProps = propsFactory({\n focused: Boolean,\n}, 'focus')\n\nexport function useFocus (\n props: FocusProps,\n name = getCurrentInstanceName()\n) {\n const isFocused = useProxiedModel(props, 'focused')\n const focusClasses = computed(() => {\n return ({\n [`${name}--focused`]: isFocused.value,\n })\n })\n\n function focus () {\n isFocused.value = true\n }\n\n function blur () {\n isFocused.value = false\n }\n\n return { focusClasses, isFocused, focus, blur }\n}\n","// Styles\nimport './VField.sass'\n\n// Components\nimport { VExpandXTransition } from '@/components/transitions'\nimport { VIcon } from '@/components/VIcon'\nimport { VFieldLabel } from './VFieldLabel'\n\n// Composables\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, ref, toRef, watch } from 'vue'\nimport {\n convertToUnit,\n genericComponent,\n getUid,\n nullifyTransforms,\n pick,\n propsFactory,\n standardEasing,\n useRender,\n} from '@/util'\n\n// Types\nimport type { VInputSlot } from '@/components/VInput/VInput'\nimport type { LoaderSlotProps } from '@/composables/loader'\nimport type { PropType, Ref } from 'vue'\nimport type { MakeSlots } from '@/util'\n\nconst allowedVariants = ['underlined', 'outlined', 'filled', 'contained', 'plain'] as const\ntype Variant = typeof allowedVariants[number]\n\nexport interface DefaultInputSlot {\n isActive: Ref<boolean>\n isFocused: Ref<boolean>\n controlRef: Ref<HTMLElement | undefined>\n focus: () => void\n blur: () => void\n}\n\nexport interface VFieldSlot extends DefaultInputSlot {\n props: Record<string, unknown>\n}\n\nexport const makeVFieldProps = propsFactory({\n appendInnerIcon: IconValue,\n bgColor: String,\n clearable: Boolean,\n clearIcon: {\n type: IconValue,\n default: '$clear',\n },\n active: Boolean,\n color: String,\n dirty: Boolean,\n disabled: Boolean,\n error: Boolean,\n label: String,\n persistentClear: Boolean,\n prependInnerIcon: IconValue,\n reverse: Boolean,\n singleLine: Boolean,\n variant: {\n type: String as PropType<Variant>,\n default: 'filled',\n validator: (v: any) => allowedVariants.includes(v),\n },\n\n ...makeThemeProps(),\n ...makeLoaderProps(),\n}, 'v-field')\n\nexport type VFieldSlots = MakeSlots<{\n clear: []\n prependInner: [DefaultInputSlot & VInputSlot]\n appendInner: [DefaultInputSlot & VInputSlot]\n label: [DefaultInputSlot & VInputSlot]\n loader: [LoaderSlotProps]\n default: [VFieldSlot]\n}>\n\nexport const VField = genericComponent<new <T>() => {\n $props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (val: T) => any\n }\n $slots: VFieldSlots\n}>()({\n name: 'VField',\n\n inheritAttrs: false,\n\n props: {\n id: String,\n\n ...makeFocusProps(),\n ...makeVFieldProps(),\n },\n\n emits: {\n 'click:clear': (e: MouseEvent) => true,\n 'click:control': (e: MouseEvent) => true,\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { themeClasses } = provideTheme(props)\n const { loaderClasses } = useLoader(props)\n const { focusClasses, isFocused, focus, blur } = useFocus(props)\n\n const isActive = computed(() => props.dirty || props.active)\n const hasLabel = computed(() => !props.singleLine && !!(props.label || slots.label))\n\n const uid = getUid()\n const id = computed(() => props.id || `input-${uid}`)\n\n const labelRef = ref<VFieldLabel>()\n const floatingLabelRef = ref<VFieldLabel>()\n const controlRef = ref<HTMLElement>()\n\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => {\n return (\n isActive.value &&\n isFocused.value &&\n !props.error &&\n !props.disabled\n ) ? props.color : undefined\n }))\n\n watch(isActive, val => {\n if (hasLabel.value) {\n const el: HTMLElement = labelRef.value!.$el\n const targetEl: HTMLElement = floatingLabelRef.value!.$el\n const rect = nullifyTransforms(el)\n const targetRect = targetEl.getBoundingClientRect()\n\n const x = targetRect.x - rect.x\n const y = targetRect.y - rect.y - (rect.height / 2 - targetRect.height / 2)\n\n const targetWidth = targetRect.width / 0.75\n const width = Math.abs(targetWidth - rect.width) > 1\n ? { maxWidth: convertToUnit(targetWidth) }\n : undefined\n\n const duration = parseFloat(getComputedStyle(el).transitionDuration) * 1000\n const scale = parseFloat(getComputedStyle(targetEl).getPropertyValue('--v-field-label-scale'))\n\n el.style.visibility = 'visible'\n targetEl.style.visibility = 'hidden'\n\n el.animate([\n { transform: 'translate(0)' },\n { transform: `translate(${x}px, ${y}px) scale(${scale})`, ...width },\n ], {\n duration,\n easing: standardEasing,\n direction: val ? 'normal' : 'reverse',\n }).finished.then(() => {\n el.style.removeProperty('visibility')\n targetEl.style.removeProperty('visibility')\n })\n }\n }, { flush: 'post' })\n\n const slotProps = computed<DefaultInputSlot>(() => ({\n isActive,\n isFocused,\n controlRef,\n blur,\n focus,\n }))\n\n function onClick (e: MouseEvent) {\n if (e.target !== document.activeElement) {\n e.preventDefault()\n }\n\n emit('click:control', e)\n }\n\n useRender(() => {\n const isOutlined = props.variant === 'outlined'\n const hasPrepend = (slots.prependInner || props.prependInnerIcon)\n const hasClear = !!(props.clearable || slots.clear)\n const hasAppend = !!(slots.appendInner || props.appendInnerIcon || hasClear)\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n\n return (\n <div\n class={[\n 'v-field',\n {\n 'v-field--active': isActive.value,\n 'v-field--appended': hasAppend,\n 'v-field--disabled': props.disabled,\n 'v-field--dirty': props.dirty,\n 'v-field--error': props.error,\n 'v-field--has-background': !!props.bgColor,\n 'v-field--persistent-clear': props.persistentClear,\n 'v-field--prepended': hasPrepend,\n 'v-field--reverse': props.reverse,\n 'v-field--single-line': props.singleLine,\n 'v-field--has-label': !!label,\n [`v-field--variant-${props.variant}`]: true,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n focusClasses.value,\n loaderClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n textColorStyles.value,\n ]}\n onClick={ onClick }\n { ...attrs }\n >\n <div class=\"v-field__overlay\" />\n\n <LoaderSlot\n name=\"v-field\"\n active={ props.loading }\n color={ props.error ? 'error' : props.color }\n v-slots={{ default: slots.loader }}\n />\n\n { hasPrepend && (\n <div\n class=\"v-field__prepend-inner\"\n >\n { props.prependInnerIcon && (\n <VIcon\n onClick={ attrs['onClick:prependInner'] }\n icon={ props.prependInnerIcon }\n />\n ) }\n\n { slots?.prependInner?.(slotProps.value) }\n </div>\n ) }\n\n <div class=\"v-field__field\" data-no-activator=\"\">\n { ['contained', 'filled'].includes(props.variant) && hasLabel.value && (\n <VFieldLabel\n ref={ floatingLabelRef }\n class={[textColorClasses.value]}\n floating\n >\n { label }\n </VFieldLabel>\n ) }\n\n <VFieldLabel ref={ labelRef } for={ id.value }>\n { label }\n </VFieldLabel>\n\n { slots.default?.({\n ...slotProps.value,\n props: {\n id: id.value,\n class: 'v-field__input',\n },\n focus,\n blur,\n } as VFieldSlot) }\n </div>\n\n { hasClear && (\n <VExpandXTransition>\n <div\n class=\"v-field__clearable\"\n v-show={ props.dirty }\n >\n { slots.clear\n ? slots.clear()\n : (\n <VIcon\n onClick={ (e: MouseEvent) => emit('click:clear', e) }\n icon={ props.clearIcon }\n />\n )\n }\n </div>\n </VExpandXTransition>\n ) }\n\n { hasAppend && (\n <div\n class=\"v-field__append-inner\"\n >\n { slots?.appendInner?.(slotProps.value) }\n\n { props.appendInnerIcon && (\n <VIcon\n onClick={ attrs['onClick:appendInner'] }\n icon={ props.appendInnerIcon }\n />\n ) }\n </div>\n ) }\n\n <div\n class={[\n 'v-field__outline',\n textColorClasses.value,\n ]}\n >\n { isOutlined && (\n <>\n <div class=\"v-field__outline__start\" />\n\n { hasLabel.value && (\n <div class=\"v-field__outline__notch\">\n <VFieldLabel ref={ floatingLabelRef } floating>\n { label }\n </VFieldLabel>\n </div>\n ) }\n\n <div class=\"v-field__outline__end\" />\n </>\n ) }\n\n { ['plain', 'underlined'].includes(props.variant) && hasLabel.value && (\n <VFieldLabel ref={ floatingLabelRef } floating>\n { label }\n </VFieldLabel>\n ) }\n </div>\n </div>\n )\n })\n\n return {\n controlRef,\n }\n },\n})\n\nexport type VField = InstanceType<typeof VField>\n\n// TODO: this is kinda slow, might be better to implicitly inherit props instead\nexport function filterFieldProps (attrs: Record<string, unknown>) {\n return pick(attrs, Object.keys(VField.props))\n}\n","// Styles\nimport './VCounter.sass'\n\n// Components\nimport { VSlideYTransition } from '@/components/transitions'\n\n// Utilities\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { computed } from 'vue'\nimport { defineComponent } from '@/util'\n\nexport const VCounter = defineComponent({\n name: 'VCounter',\n\n functional: true,\n\n props: {\n active: Boolean,\n max: [Number, String],\n value: {\n type: [Number, String],\n default: 0,\n },\n\n ...makeTransitionProps({\n transition: { component: VSlideYTransition },\n }),\n },\n\n setup (props, { slots }) {\n const counter = computed(() => {\n return props.max ? `${props.value} / ${props.max}` : String(props.value)\n })\n\n return () => {\n return (\n <MaybeTransition transition={ props.transition }>\n <div\n v-show={ props.active }\n class=\"v-counter\"\n >\n { slots.default\n ? slots.default({\n counter: counter.value,\n max: props.max,\n value: props.value,\n })\n : counter.value\n }\n </div>\n </MaybeTransition>\n )\n }\n },\n})\n","// Styles\nimport './VTextField.sass'\n\n// Components\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { filterFieldProps, makeVFieldProps, VField } from '@/components/VField/VField'\nimport { VCounter } from '@/components/VCounter'\n\n// Composables\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport Intersect from '@/directives/intersect'\n\n// Utilities\nimport { computed, nextTick, ref } from 'vue'\nimport { filterInputAttrs, genericComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { VFieldSlots } from '@/components/VField/VField'\n\nconst activeTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month']\n\nexport const VTextField = genericComponent<new <T>() => {\n $slots: VInputSlots & VFieldSlots\n}>()({\n name: 'VTextField',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: {\n autofocus: Boolean,\n counter: [Boolean, Number, String] as PropType<true | number | string>,\n counterValue: Function as PropType<(value: any) => number>,\n hint: String,\n persistentHint: Boolean,\n prefix: String,\n placeholder: String,\n persistentPlaceholder: Boolean,\n persistentCounter: Boolean,\n suffix: String,\n type: {\n type: String,\n default: 'text',\n },\n\n ...makeVInputProps(),\n ...makeVFieldProps(),\n },\n\n emits: {\n 'click:clear': (e: MouseEvent) => true,\n 'click:control': (e: MouseEvent) => true,\n 'click:input': (e: MouseEvent) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function'\n ? props.counterValue(model.value)\n : (model.value ?? '').toString().length\n })\n const max = computed(() => {\n if (attrs.maxlength) return attrs.maxlength as undefined\n\n if (\n !props.counter ||\n (typeof props.counter !== 'number' &&\n typeof props.counter !== 'string')\n ) return undefined\n\n return props.counter\n })\n\n function onIntersect (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[]\n ) {\n if (!props.autofocus || !isIntersecting) return\n\n (entries[0].target as HTMLInputElement)?.focus?.()\n }\n\n const vInputRef = ref<VInput>()\n const vFieldRef = ref<VInput>()\n const isFocused = ref(false)\n const inputRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n activeTypes.includes(props.type) ||\n props.persistentPlaceholder ||\n isFocused.value\n ))\n const messages = computed(() => {\n return props.messages.length\n ? props.messages\n : (isFocused.value || props.persistentHint) ? props.hint : ''\n })\n function onFocus () {\n if (inputRef.value !== document.activeElement) {\n inputRef.value?.focus()\n }\n\n if (!isFocused.value) isFocused.value = true\n }\n function onControlClick (e: MouseEvent) {\n onFocus()\n\n emit('click:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = ''\n\n emit('click:clear', e)\n })\n }\n\n useRender(() => {\n const hasCounter = !!(slots.counter || props.counter || props.counterValue)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const [{ modelValue: _, ...inputProps }] = filterInputProps(props)\n const [fieldProps] = filterFieldProps(props)\n\n return (\n <VInput\n ref={ vInputRef }\n v-model={ model.value }\n class={[\n 'v-text-field',\n {\n 'v-text-field--prefixed': props.prefix,\n 'v-text-field--suffixed': props.suffix,\n 'v-text-field--flush-details': ['plain', 'underlined'].includes(props.variant),\n },\n ]}\n onClick:prepend={ attrs['onClick:prepend'] }\n onClick:append={ attrs['onClick:append'] }\n { ...rootAttrs }\n { ...inputProps }\n messages={ messages.value }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n ref={ vFieldRef }\n onMousedown={ (e: MouseEvent) => {\n if (e.target === inputRef.value) return\n\n e.preventDefault()\n }}\n onClick:control={ onControlClick }\n onClick:clear={ onClear }\n onClick:prependInner={ attrs['onClick:prependInner'] }\n onClick:appendInner={ attrs['onClick:appendInner'] }\n role=\"textbox\"\n { ...fieldProps }\n active={ isActive.value || isDirty.value }\n dirty={ isDirty.value || props.dirty }\n focused={ isFocused.value }\n error={ isValid.value === false }\n >\n {{\n ...slots,\n default: ({\n props: { class: fieldClass, ...slotProps },\n }) => {\n return (\n <>\n { props.prefix && (\n <span class=\"v-text-field__prefix\">\n { props.prefix }\n </span>\n ) }\n\n <div\n class={ fieldClass }\n onClick={ e => emit('click:input', e) }\n data-no-activator=\"\"\n >\n { slots.default?.() }\n\n <input\n ref={ inputRef }\n v-model={ model.value }\n v-intersect={[{\n handler: onIntersect,\n }, null, ['once']]}\n autofocus={ props.autofocus }\n readonly={ isReadonly.value }\n disabled={ isDisabled.value }\n name={ props.name }\n placeholder={ props.placeholder }\n size={ 1 }\n type={ props.type }\n onFocus={ onFocus }\n onBlur={ () => (isFocused.value = false) }\n { ...slotProps }\n { ...inputAttrs }\n />\n </div>\n\n { props.suffix && (\n <span class=\"v-text-field__suffix\">\n { props.suffix }\n </span>\n ) }\n </>\n )\n },\n }}\n </VField>\n ),\n details: hasCounter ? () => (\n <>\n <span />\n\n <VCounter\n active={ props.persistentCounter || isFocused.value }\n value={ counterValue.value }\n max={ max.value }\n v-slots={ slots.counter }\n />\n </>\n ) : undefined,\n }}\n </VInput>\n )\n })\n\n return useForwardRef({}, vInputRef, vFieldRef, inputRef)\n },\n})\n\nexport type VTextField = InstanceType<typeof VTextField>\n","// Locales\nimport en from '@/locale/en'\n\n// Composables\nimport { createRtl, RtlSymbol } from '@/composables/rtl'\n\n// Utilities\nimport { computed, inject, provide, ref } from 'vue'\nimport { consoleError, consoleWarn, getObjectValueByPath } from '@/util'\n\n// Types\nimport type { RtlOptions } from '@/composables/rtl'\nimport type { App, InjectionKey, Ref } from 'vue'\nimport type { MaybeRef } from '@/util'\n\nexport interface LocaleMessages {\n [key: string]: LocaleMessages | string\n}\n\nexport interface LocaleOptions {\n defaultLocale?: string\n fallbackLocale?: string\n messages?: LocaleMessages\n}\n\nexport interface LocaleProps {\n locale?: string\n fallbackLocale?: string\n messages?: LocaleMessages\n}\n\nexport interface LocaleInstance {\n current: Ref<string>\n fallback: Ref<string>\n messages: Ref<LocaleMessages>\n t: (key: string, ...params: unknown[]) => string\n n: (value: number) => string\n}\n\nexport interface LocaleAdapter {\n createRoot: (app?: App) => LocaleInstance\n getScope: () => LocaleInstance\n createScope: (options?: LocaleProps) => LocaleInstance\n}\n\nexport const LocaleAdapterSymbol: InjectionKey<LocaleAdapter> = Symbol.for('vuetify:locale-adapter')\nexport const VuetifyLocaleSymbol: InjectionKey<LocaleInstance> = Symbol.for('vuetify:locale')\n\nexport function provideLocale (props?: LocaleProps) {\n const adapter = inject(LocaleAdapterSymbol)\n\n if (!adapter) throw new Error('[Vuetify] Could not find injected locale adapter')\n\n return adapter.createScope(props)\n}\n\nexport function useLocale () {\n const adapter = inject(LocaleAdapterSymbol)\n\n if (!adapter) throw new Error('[Vuetify] Could not find injected locale adapter')\n\n return adapter.getScope()\n}\n\nfunction isLocaleAdapter (x: any): x is LocaleAdapter {\n return !!x && x.hasOwnProperty('getScope') && x.hasOwnProperty('createScope') && x.hasOwnProperty('createRoot')\n}\n\nexport function createLocale (\n app: App,\n options?: (LocaleOptions & RtlOptions) | (LocaleAdapter & RtlOptions),\n) {\n const adapter = isLocaleAdapter(options) ? options : createDefaultLocaleAdapter(options)\n const instance = adapter.createRoot(app)\n\n app?.provide(RtlSymbol, createRtl(instance, options))\n\n return adapter\n}\n\nconst LANG_PREFIX = '$vuetify.'\n\nconst replace = (str: string, params: unknown[]) => {\n return str.replace(/\\{(\\d+)\\}/g, (match: string, index: string) => {\n /* istanbul ignore next */\n return String(params[+index])\n })\n}\n\nconst createTranslateFunction = (\n current: Ref<string>,\n fallback: Ref<string>,\n messages: Ref<LocaleMessages>,\n) => {\n return (key: string, ...params: unknown[]) => {\n if (!key.startsWith(LANG_PREFIX)) {\n return replace(key, params)\n }\n\n const shortKey = key.replace(LANG_PREFIX, '')\n const currentLocale = current.value && messages.value[current.value]\n const fallbackLocale = fallback.value && messages.value[fallback.value]\n\n let str: string = getObjectValueByPath(currentLocale, shortKey, null)\n\n if (!str) {\n consoleWarn(`Translation key \"${key}\" not found in \"${current.value}\", trying fallback locale`)\n str = getObjectValueByPath(fallbackLocale, shortKey, null)\n }\n\n if (!str) {\n consoleError(`Translation key \"${key}\" not found in fallback`)\n str = key\n }\n\n if (typeof str !== 'string') {\n consoleError(`Translation key \"${key}\" has a non-string value`)\n str = key\n }\n\n return replace(str, params)\n }\n}\n\nfunction createNumberFunction (current: Ref<string>, fallback: Ref<string>) {\n return (value: number, options?: Intl.NumberFormatOptions) => {\n const numberFormat = new Intl.NumberFormat([current.value, fallback.value], options)\n\n return numberFormat.format(value)\n }\n}\n\nexport function createDefaultLocaleAdapter (options?: LocaleOptions): LocaleAdapter {\n const createScope = (options: {\n current: MaybeRef<string>\n fallback: MaybeRef<string>\n messages: MaybeRef<LocaleMessages>\n }) => {\n const current = ref(options.current)\n const fallback = ref(options.fallback)\n const messages = ref(options.messages)\n\n return {\n current,\n fallback,\n messages,\n t: createTranslateFunction(current, fallback, messages),\n n: createNumberFunction(current, fallback),\n }\n }\n\n return {\n createRoot: app => {\n const rootScope = createScope({\n current: options?.defaultLocale ?? 'en',\n fallback: options?.fallbackLocale ?? 'en',\n messages: options?.messages ?? { en },\n })\n\n if (!app) throw new Error('[Vuetify] Could not find default app instance')\n\n app.provide(VuetifyLocaleSymbol, rootScope)\n\n return rootScope\n },\n getScope: () => {\n const currentScope = inject(VuetifyLocaleSymbol)\n\n if (!currentScope) throw new Error('[Vuetify] Could not find injected locale instance')\n\n return currentScope\n },\n createScope: options => {\n const currentScope = inject(VuetifyLocaleSymbol)\n\n if (!currentScope) throw new Error('[Vuetify] Could not find injected locale instance')\n\n const newScope = createScope({\n current: computed(() => options?.locale ?? currentScope.current.value),\n fallback: computed(() => options?.locale ?? currentScope.fallback.value),\n messages: computed(() => options?.messages ?? currentScope.messages.value),\n })\n\n provide(VuetifyLocaleSymbol, newScope)\n\n return newScope\n },\n }\n}\n","// Styles\nimport './VSelect.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VList, VListItem } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { VTextField } from '@/components/VTextField'\n\n// Composables\nimport { makeItemsProps, useItems } from '@/composables/items'\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { IconValue } from '@/composables/icons'\n\n// Utility\nimport { computed, ref } from 'vue'\nimport { genericComponent, propsFactory, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { InternalItem } from '@/composables/items'\nimport type { MakeSlots } from '@/util'\n\nexport const makeSelectProps = propsFactory({\n chips: Boolean,\n closableChips: Boolean,\n eager: Boolean,\n hideNoData: Boolean,\n hideSelected: Boolean,\n menuIcon: {\n type: IconValue,\n default: '$dropdown',\n },\n modelValue: {\n type: null,\n default: () => ([]),\n },\n multiple: Boolean,\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n openOnClear: Boolean,\n\n ...makeItemsProps({ itemChildren: false }),\n}, 'select')\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = T extends Primitive\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? Val<T, ReturnObject>[]\n : Val<T, ReturnObject>\n\nexport const VSelect = genericComponent<new <\n T,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value<T, ReturnObject, Multiple> = Value<T, ReturnObject, Multiple>\n>() => {\n $props: {\n items?: readonly T[]\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: Readonly<V>\n 'onUpdate:modelValue'?: (val: V) => void\n }\n $slots: VInputSlots & VFieldSlots & MakeSlots<{\n chip: [{ item: T, index: number, props: Record<string, unknown> }]\n selection: [{ item: T, index: number }]\n 'no-data': []\n }>\n}>()({\n name: 'VSelect',\n\n props: {\n ...makeSelectProps(),\n ...makeTransitionProps({ transition: { component: VDialogTransition } }),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const menu = ref(false)\n const { items, transformIn, transformOut } = useItems(props)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : transformed[0]\n }\n )\n const selections = computed(() => {\n return model.value.map(v => {\n return items.value.find(item => item.value === v.value) || v\n })\n })\n const selected = computed(() => selections.value.map(selection => selection.props.value))\n\n function onClear (e: MouseEvent) {\n model.value = []\n\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onClickControl () {\n if (props.hideNoData && !items.value.length) return\n\n menu.value = true\n }\n function onKeydown (e: KeyboardEvent) {\n if (['Enter', 'ArrowDown', ' '].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape', 'Tab'].includes(e.key)) {\n menu.value = false\n }\n }\n function select (item: InternalItem) {\n if (props.multiple) {\n const index = selected.value.findIndex(selection => selection === item.value)\n\n if (index === -1) {\n model.value = [...model.value, item]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n } else {\n model.value = [item]\n menu.value = false\n }\n }\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n class={[\n 'v-select',\n {\n 'v-select--active-menu': menu.value,\n 'v-select--chips': !!props.chips,\n [`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,\n },\n ]}\n appendInnerIcon={ props.menuIcon }\n readonly\n onClick:clear={ onClear }\n onClick:input={ onClickControl }\n onClick:control={ onClickControl }\n onBlur={ () => menu.value = false }\n modelValue={ model.value.map(v => v.props.value).join(', ') }\n onKeydown={ onKeydown }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-select__content\"\n eager={ props.eager }\n openOnClick={ false }\n transition={ props.transition }\n >\n <VList\n selected={ selected.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n >\n { !items.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem title={ t(props.noDataText) } />\n )) }\n\n { items.value.map(item => (\n <VListItem\n { ...item.props }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n onClick={ () => select(item) }\n />\n )) }\n </VList>\n </VMenu>\n\n { selections.value.map((selection, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(selection)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n modelValue: true,\n }\n\n return (\n <div class=\"v-select__selection\">\n { hasChips ? (\n <VDefaultsProvider\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: selection.props.title,\n },\n }}\n >\n { slots.chip\n ? slots.chip({ props: slotProps, selection, index })\n : (<VChip { ...slotProps } />)\n }\n </VDefaultsProvider>\n ) : (\n slots.selection\n ? slots.selection({ item: selection.originalItem, index })\n : (\n <span class=\"v-select__selection-text\">\n { selection.props.title }\n { props.multiple && (index < selections.value.length - 1) && (\n <span class=\"v-select__selection-comma\">,</span>\n ) }\n </span>\n )\n )}\n </div>\n )\n }) }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return useForwardRef({}, vTextFieldRef)\n },\n})\n\nexport type VSelect = InstanceType<typeof VSelect>\n","/* eslint-disable max-statements */\n/* eslint-disable no-labels */\n\n// Utilities\nimport { getPropertyFromItem, propsFactory, wrapInArray } from '@/util'\nimport { computed, unref } from 'vue'\n\n// Types\nimport type { PropType, Ref } from 'vue'\nimport type { MaybeRef } from '@/util'\nimport type { InternalItem } from './items'\n\n/**\n * - match without highlight\n * - single match (index), length already known\n * - single match (start, end)\n * - multiple matches (start, end), probably shouldn't overlap\n */\nexport type FilterMatch = boolean | number | [number, number] | [number, number][]\nexport type FilterFunction = (value: string, query: string, item?: any) => FilterMatch\nexport type FilterKeyFunctions = Record<string, FilterFunction>\nexport type FilterKeys = string | string[]\nexport type FilterMode = 'some' | 'every' | 'union' | 'intersection'\n\nexport interface FilterProps {\n customFilter?: FilterFunction\n customKeyFilter?: FilterKeyFunctions\n filterKeys?: FilterKeys\n filterMode?: FilterMode\n noFilter?: boolean\n}\n\n// Composables\nexport const defaultFilter: FilterFunction = (value, query, item) => {\n if (value == null || query == null) return -1\n\n return value.toString().toLocaleLowerCase().indexOf(query.toString().toLocaleLowerCase())\n}\n\nexport const makeFilterProps = propsFactory({\n customFilter: Function as PropType<FilterFunction>,\n customKeyFilter: Object as PropType<FilterKeyFunctions>,\n filterKeys: [Array, String] as PropType<FilterKeys>,\n filterMode: {\n type: String as PropType<FilterMode>,\n default: 'intersection',\n },\n noFilter: Boolean,\n}, 'filter')\n\nexport function filterItems (\n items: any[],\n query: string,\n options?: {\n customKeyFilter?: FilterKeyFunctions\n default?: FilterFunction\n filterKeys?: FilterKeys\n filterMode?: FilterMode\n noFilter?: boolean\n },\n) {\n const array: { index: number, matches: Record<string, FilterMatch> }[] = []\n // always ensure we fall back to a functioning filter\n const filter = options?.default ?? defaultFilter\n const keys = options?.filterKeys ? wrapInArray(options.filterKeys) : false\n const customFiltersLength = Object.keys(options?.customKeyFilter ?? {}).length\n\n if (!items?.length) return array\n\n loop:\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n const customMatches: Record<string, FilterMatch> = {}\n const defaultMatches: Record<string, FilterMatch> = {}\n let match: FilterMatch = -1\n\n if (query && !options?.noFilter) {\n if (typeof item === 'object') {\n const filterKeys = keys || Object.keys(item)\n\n for (const key of filterKeys) {\n const value = getPropertyFromItem(item as any, key, item)\n const keyFilter = options?.customKeyFilter?.[key]\n\n match = keyFilter\n ? keyFilter(value, query, item)\n : filter(value, query, item)\n\n if (match !== -1 && match !== false) {\n if (keyFilter) customMatches[key] = match\n else defaultMatches[key] = match\n } else if (options?.filterMode === 'every') {\n continue loop\n }\n }\n } else {\n match = filter(item, query, item)\n if (match !== -1 && match !== false) {\n defaultMatches.title = match\n }\n }\n\n const defaultMatchesLength = Object.keys(defaultMatches).length\n const customMatchesLength = Object.keys(customMatches).length\n\n if (!defaultMatchesLength && !customMatchesLength) continue\n\n if (\n options?.filterMode === 'union' &&\n customMatchesLength !== customFiltersLength &&\n !defaultMatchesLength\n ) continue\n\n if (\n options?.filterMode === 'intersection' &&\n (\n customMatchesLength !== customFiltersLength ||\n !defaultMatchesLength\n )\n ) continue\n }\n\n array.push({ index: i, matches: { ...defaultMatches, ...customMatches } })\n }\n\n return array\n}\n\nexport function useFilter (\n props: FilterProps,\n items: MaybeRef<InternalItem[]>,\n query?: Ref<string | undefined>,\n) {\n const strQuery = computed(() => (\n typeof query?.value !== 'string' &&\n typeof query?.value !== 'number'\n ) ? '' : String(query.value))\n\n const filteredItems = computed(() => {\n const transformedItems = unref(items)\n const matches = filterItems(\n transformedItems,\n strQuery.value,\n {\n customKeyFilter: props.customKeyFilter,\n default: props.customFilter,\n filterKeys: props.filterKeys,\n filterMode: props.filterMode,\n noFilter: props.noFilter,\n },\n )\n\n return matches.map(({ index, matches }) => ({\n item: transformedItems[index],\n matches,\n }))\n })\n\n return { filteredItems }\n}\n","// Styles\nimport './VAutocomplete.sass'\n\n// Components\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VList, VListItem } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { VTextField } from '@/components/VTextField'\n\n// Composables\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useItems } from '@/composables/items'\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed, nextTick, ref, watch } from 'vue'\nimport { genericComponent, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { FilterMatch } from '@/composables/filter'\nimport type { MakeSlots } from '@/util'\n\nfunction highlightResult (text: string, matches: FilterMatch, length: number) {\n if (Array.isArray(matches)) throw new Error('Multiple matches is not implemented')\n\n return typeof matches === 'number' && ~matches\n ? (\n <>\n <span class=\"v-autocomplete__unmask\">{ text.substr(0, matches) }</span>\n <span class=\"v-autocomplete__mask\">{ text.substr(matches, length) }</span>\n <span class=\"v-autocomplete__unmask\">{ text.substr(matches + length) }</span>\n </>\n )\n : text\n}\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = T extends Primitive\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? Val<T, ReturnObject>[]\n : Val<T, ReturnObject>\n\nexport const VAutocomplete = genericComponent<new <\n T,\n ReturnObject extends boolean = false,\n Multiple extends boolean = false,\n V extends Value<T, ReturnObject, Multiple> = Value<T, ReturnObject, Multiple>\n>() => {\n $props: {\n items?: readonly T[]\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: Readonly<V>\n 'onUpdate:modelValue'?: (val: V) => void\n }\n $slots: VInputSlots & VFieldSlots & MakeSlots<{\n chip: [{ item: T, index: number, props: Record<string, unknown> }]\n selection: [{ item: T, index: number }]\n 'no-data': []\n }>\n}>()({\n name: 'VAutocomplete',\n\n props: {\n // TODO: implement post keyboard support\n // autoSelectFirst: Boolean,\n search: String,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps(),\n ...makeTransitionProps({ transition: false }),\n },\n\n emits: {\n 'click:clear': (e: MouseEvent) => true,\n 'update:search': (val: any) => true,\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const isFocused = ref(false)\n const isPristine = ref(true)\n const menu = ref(false)\n const { items, transformIn, transformOut } = useItems(props)\n const search = useProxiedModel(props, 'search', '')\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v)),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : transformed[0]\n }\n )\n const { filteredItems } = useFilter(props, items, computed(() => isPristine.value ? undefined : search.value))\n const selections = computed(() => {\n return model.value.map(v => {\n return items.value.find(item => item.value === v.value) || v\n })\n })\n const selected = computed(() => selections.value.map(selection => selection.props.value))\n\n function onClear (e: MouseEvent) {\n model.value = []\n\n if (props.openOnClear) {\n menu.value = true\n }\n\n search.value = ''\n }\n function onClickControl () {\n if (props.hideNoData && !filteredItems.value.length) return\n\n menu.value = true\n }\n function onKeydown (e: KeyboardEvent) {\n if (['Enter', 'ArrowDown'].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape'].includes(e.key)) {\n menu.value = false\n }\n\n if (['Enter', 'Escape', 'Tab'].includes(e.key)) {\n isPristine.value = true\n }\n }\n function onInput (e: InputEvent) {\n search.value = (e.target as HTMLInputElement).value\n }\n function onAfterLeave () {\n if (isFocused.value) isPristine.value = true\n }\n const isSelecting = ref(false)\n function select (item: any) {\n if (props.multiple) {\n const index = selected.value.findIndex(selection => selection === item.value)\n\n if (index === -1) {\n model.value = [...model.value, item]\n search.value = ''\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n } else {\n model.value = [item]\n\n isSelecting.value = true\n\n search.value = item.title\n menu.value = false\n isPristine.value = true\n\n nextTick(() => (isSelecting.value = false))\n }\n }\n\n watch(isFocused, val => {\n if (val) {\n isSelecting.value = true\n search.value = props.multiple ? '' : String(selections.value.at(-1)?.props.title ?? '')\n isPristine.value = true\n\n nextTick(() => isSelecting.value = false)\n } else {\n menu.value = false\n search.value = ''\n }\n })\n\n watch(search, val => {\n if (!isFocused.value || isSelecting.value) return\n\n if (val) menu.value = true\n\n isPristine.value = !val\n })\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n modelValue={ search.value }\n onInput={ onInput }\n class={[\n 'v-autocomplete',\n {\n 'v-autocomplete--active-menu': menu.value,\n 'v-autocomplete--chips': !!props.chips,\n [`v-autocomplete--${props.multiple ? 'multiple' : 'single'}`]: true,\n },\n ]}\n appendInnerIcon={ props.menuIcon }\n dirty={ selected.value.length > 0 }\n onClick:clear={ onClear }\n onClick:control={ onClickControl }\n onClick:input={ onClickControl }\n onFocus={ () => isFocused.value = true }\n onBlur={ () => isFocused.value = false }\n onKeydown={ onKeydown }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-autocomplete__content\"\n eager={ props.eager }\n openOnClick={ false }\n transition={ props.transition }\n onAfterLeave={ onAfterLeave }\n >\n <VList\n selected={ selected.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n >\n { !filteredItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem title={ t(props.noDataText) } />\n )) }\n\n { filteredItems.value.map(({ item, matches }) => (\n <VListItem\n { ...item.props }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n onClick={ () => select(item) }\n >\n {{\n title: () => {\n return isPristine.value\n ? item.title\n : highlightResult(item.title, matches.title, search.value?.length ?? 0)\n },\n }}\n </VListItem>\n )) }\n </VList>\n </VMenu>\n\n { selections.value.map((selection, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(selection)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n modelValue: true,\n }\n\n return (\n <div class=\"v-autocomplete__selection\">\n { hasChips ? (\n <VDefaultsProvider\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: selection.props.title,\n },\n }}\n >\n { slots.chip\n ? slots.chip({ props: slotProps, item: selection.originalItem, index })\n : (<VChip { ...slotProps } />)\n }\n </VDefaultsProvider>\n ) : (\n slots.selection\n ? slots.selection({ item: selection.originalItem, index })\n : (\n <span class=\"v-autocomplete__selection-text\">\n { selection.props.title }\n { props.multiple && (index < selections.value.length - 1) && (\n <span class=\"v-autocomplete__selection-comma\">,</span>\n ) }\n </span>\n )\n )}\n </div>\n )\n }) }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return useForwardRef({\n filteredItems,\n }, vTextFieldRef)\n },\n})\n\nexport type VAutocomplete = InstanceType<typeof VAutocomplete>\n","// Styles\nimport './VBadge.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, useTheme } from '@/composables/theme'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\nimport { useLocale } from '@/composables/locale'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { defineComponent, pick } from '@/util'\n\nexport const VBadge = defineComponent({\n name: 'VBadge',\n\n inheritAttrs: false,\n\n props: {\n bordered: Boolean,\n color: String,\n content: [Number, String],\n dot: Boolean,\n floating: Boolean,\n icon: IconValue,\n inline: Boolean,\n label: {\n type: String,\n default: '$vuetify.badge',\n },\n max: [Number, String],\n modelValue: {\n type: Boolean,\n default: true,\n },\n offsetX: [Number, String],\n offsetY: [Number, String],\n textColor: String,\n\n ...makeLocationProps({ location: 'top end' } as const),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeTransitionProps({ transition: 'scale-rotate-transition' }),\n },\n\n setup (props, ctx) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { roundedClasses } = useRounded(props)\n const { t } = useLocale()\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'textColor'))\n const { themeClasses } = useTheme()\n\n const { locationStyles } = useLocation(props, true, side => {\n const base = props.floating\n ? (props.dot ? 2 : 4)\n : (props.dot ? 8 : 12)\n\n return base + (\n ['top', 'bottom'].includes(side) ? +(props.offsetY ?? 0)\n : ['left', 'right'].includes(side) ? +(props.offsetX ?? 0)\n : 0\n )\n })\n\n return () => {\n const value = Number(props.content)\n const content = (!props.max || isNaN(value)) ? props.content\n : value <= props.max ? value\n : `${props.max}+`\n\n const [badgeAttrs, attrs] = pick(ctx.attrs as Record<string, any>, [\n 'aria-atomic',\n 'aria-label',\n 'aria-live',\n 'role',\n 'title',\n ])\n\n return (\n <props.tag\n class={[\n 'v-badge',\n {\n 'v-badge--bordered': props.bordered,\n 'v-badge--dot': props.dot,\n 'v-badge--floating': props.floating,\n 'v-badge--inline': props.inline,\n },\n ]}\n { ...attrs }\n >\n <div class=\"v-badge__wrapper\">\n { ctx.slots.default?.() }\n\n <MaybeTransition transition={ props.transition }>\n <span\n v-show={ props.modelValue }\n class={[\n 'v-badge__badge',\n backgroundColorClasses.value,\n roundedClasses.value,\n textColorClasses.value,\n themeClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n textColorStyles.value,\n props.inline ? {} : locationStyles.value,\n ]}\n aria-atomic=\"true\"\n aria-label={ t(props.label, value) }\n aria-live=\"polite\"\n role=\"status\"\n { ...badgeAttrs }\n >\n {\n props.dot ? undefined\n : ctx.slots.badge ? ctx.slots.badge?.()\n : props.icon ? <VIcon icon={ props.icon } />\n : content\n }\n </span>\n </MaybeTransition>\n </div>\n </props.tag>\n )\n }\n },\n})\n\nexport type VBadge = InstanceType<typeof VBadge>\n","// Composables\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utility\nimport { defineComponent, useRender } from '@/util'\n\nexport const VBannerActions = defineComponent({\n name: 'VBannerActions',\n\n props: {\n color: String,\n density: String,\n },\n\n setup (props, { slots }) {\n provideDefaults({\n VBtn: {\n color: props.color,\n density: props.density,\n variant: 'text',\n },\n })\n\n useRender(() => (\n <div class=\"v-banner-actions\">\n { slots?.default?.() }\n </div>\n ))\n\n return {}\n },\n})\n","// Components\nimport { makeVAvatarProps, VAvatar } from '@/components/VAvatar/VAvatar'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VBannerAvatar = defineComponent({\n name: 'VBannerAvatar',\n\n props: makeVAvatarProps(),\n\n setup (props, { slots }) {\n return () => (\n <VAvatar\n class=\"v-banner-avatar\"\n { ...props }\n v-slots={ slots }\n />\n )\n },\n})\n","// Components\nimport { makeVAvatarProps, VAvatar } from '@/components/VAvatar/VAvatar'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VBannerIcon = defineComponent({\n name: 'VBannerIcon',\n\n props: makeVAvatarProps(),\n\n setup (props, { slots }) {\n return () => (\n <VAvatar\n class=\"v-banner-icon\"\n { ...props }\n v-slots={ slots }\n />\n )\n },\n})\n","import { createSimpleFunctional } from '@/util'\n\nexport const VBannerText = createSimpleFunctional('v-banner-text')\n","// Utilities\nimport { inject, reactive, ref, toRefs, watchEffect } from 'vue'\nimport { mergeDeep } from '@/util'\n\n// Globals\nimport { IN_BROWSER, SUPPORTS_TOUCH } from '@/util/globals'\n\n// Types\nimport type { InjectionKey, ToRefs } from 'vue'\n\nexport type DisplayBreakpoint = keyof DisplayThresholds\n\nexport interface DisplayThresholds {\n xs: number\n sm: number\n md: number\n lg: number\n xl: number\n xxl: number\n}\n\nexport interface DisplayOptions {\n mobileBreakpoint?: number | DisplayBreakpoint\n thresholds?: Partial<DisplayThresholds>\n}\n\nexport interface InternalDisplayOptions {\n mobileBreakpoint: number | DisplayBreakpoint\n thresholds: DisplayThresholds\n}\n\nexport interface DisplayPlatform {\n android: boolean\n ios: boolean\n cordova: boolean\n electron: boolean\n chrome: boolean\n edge: boolean\n firefox: boolean\n opera: boolean\n win: boolean\n mac: boolean\n linux: boolean\n touch: boolean\n ssr: boolean\n}\n\nexport interface DisplayInstance {\n xs: boolean\n sm: boolean\n md: boolean\n lg: boolean\n xl: boolean\n xxl: boolean\n smAndUp: boolean\n mdAndUp: boolean\n lgAndUp: boolean\n xlAndUp: boolean\n smAndDown: boolean\n mdAndDown: boolean\n lgAndDown: boolean\n xlAndDown: boolean\n name: DisplayBreakpoint\n height: number\n width: number\n mobile: boolean\n mobileBreakpoint: number | DisplayBreakpoint\n platform: DisplayPlatform\n thresholds: DisplayThresholds\n}\n\nexport const DisplaySymbol: InjectionKey<ToRefs<DisplayInstance>> = Symbol.for('vuetify:display')\n\nconst defaultDisplayOptions: DisplayOptions = {\n mobileBreakpoint: 'lg',\n thresholds: {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920,\n xxl: 2560,\n },\n}\n\nconst parseDisplayOptions = (options: DisplayOptions = defaultDisplayOptions) => {\n return mergeDeep(defaultDisplayOptions, options) as InternalDisplayOptions\n}\n\n// Cross-browser support as described in:\n// https://stackoverflow.com/questions/1248081\nfunction getClientWidth () {\n return IN_BROWSER ? Math.max(\n document.documentElement!.clientWidth,\n window.innerWidth\n ) : 0 // SSR\n}\n\nfunction getClientHeight () {\n return IN_BROWSER ? Math.max(\n document.documentElement!.clientHeight,\n window.innerHeight\n ) : 0 // SSR\n}\n\nfunction getPlatform (): DisplayPlatform {\n const userAgent = IN_BROWSER ? window.navigator.userAgent : 'ssr'\n\n function match (regexp: RegExp) {\n return Boolean(userAgent.match(regexp))\n }\n\n const android = match(/android/i)\n const ios = match(/iphone|ipad|ipod/i)\n const cordova = match(/cordova/i)\n const electron = match(/electron/i)\n const chrome = match(/chrome/i)\n const edge = match(/edge/i)\n const firefox = match(/firefox/i)\n const opera = match(/opera/i)\n const win = match(/win/i)\n const mac = match(/mac/i)\n const linux = match(/linux/i)\n const ssr = match(/ssr/i)\n\n return {\n android,\n ios,\n cordova,\n electron,\n chrome,\n edge,\n firefox,\n opera,\n win,\n mac,\n linux,\n touch: SUPPORTS_TOUCH,\n ssr,\n }\n}\n\nexport function createDisplay (options?: DisplayOptions): ToRefs<DisplayInstance> {\n const { thresholds, mobileBreakpoint } = parseDisplayOptions(options)\n\n const height = ref(getClientHeight())\n const platform = getPlatform()\n const state = reactive({} as DisplayInstance)\n const width = ref(getClientWidth())\n\n function onResize () {\n height.value = getClientHeight()\n width.value = getClientWidth()\n }\n\n // eslint-disable-next-line max-statements\n watchEffect(() => {\n const xs = width.value < thresholds.sm\n const sm = width.value < thresholds.md && !xs\n const md = width.value < thresholds.lg && !(sm || xs)\n const lg = width.value < thresholds.xl && !(md || sm || xs)\n const xl = width.value < thresholds.xxl && !(lg || md || sm || xs)\n const xxl = width.value >= thresholds.xxl\n const name =\n xs ? 'xs'\n : sm ? 'sm'\n : md ? 'md'\n : lg ? 'lg'\n : xl ? 'xl'\n : 'xxl'\n const breakpointValue = typeof mobileBreakpoint === 'number' ? mobileBreakpoint : thresholds[mobileBreakpoint]\n const mobile = !platform.ssr\n ? width.value < breakpointValue\n : platform.android || platform.ios || platform.opera\n\n state.xs = xs\n state.sm = sm\n state.md = md\n state.lg = lg\n state.xl = xl\n state.xxl = xxl\n state.smAndUp = !xs\n state.mdAndUp = !(xs || sm)\n state.lgAndUp = !(xs || sm || md)\n state.xlAndUp = !(xs || sm || md || lg)\n state.smAndDown = !(md || lg || xl || xxl)\n state.mdAndDown = !(lg || xl || xxl)\n state.lgAndDown = !(xl || xxl)\n state.xlAndDown = !xxl\n state.name = name\n state.height = height.value\n state.width = width.value\n state.mobile = mobile\n state.mobileBreakpoint = mobileBreakpoint\n state.platform = platform\n state.thresholds = thresholds\n })\n\n if (IN_BROWSER) {\n window.addEventListener('resize', onResize, { passive: true })\n }\n\n return toRefs(state)\n}\n\nexport function useDisplay () {\n const display = inject(DisplaySymbol)\n\n if (!display) throw new Error('Could not find Vuetify display injection')\n\n return display\n}\n","// Styles\nimport './VBanner.sass'\n\n// Components\nimport { VBannerActions } from './VBannerActions'\nimport { VBannerAvatar } from './VBannerAvatar'\nimport { VBannerIcon } from './VBannerIcon'\nimport { VBannerText } from './VBannerText'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useDisplay } from '@/composables/display'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { defineComponent, useRender } from '@/util'\nimport { toRef } from 'vue'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VBanner = defineComponent({\n name: 'VBanner',\n\n props: {\n avatar: String,\n color: String,\n icon: IconValue,\n lines: String as PropType<'one' | 'two' | 'three'>,\n stacked: Boolean,\n sticky: Boolean,\n text: String,\n\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { mobile } = useDisplay()\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n\n const { themeClasses } = provideTheme(props)\n\n const color = toRef(props, 'color')\n const density = toRef(props, 'density')\n\n provideDefaults({\n VBannerActions: { color, density },\n VBannerAvatar: { density, image: toRef(props, 'avatar') },\n VBannerIcon: { color, density, icon: toRef(props, 'icon') },\n })\n\n useRender(() => {\n const hasText = !!(props.text || slots.text)\n const hasPrepend = !!(slots.prepend || props.avatar || props.icon)\n\n return (\n <props.tag\n class={[\n 'v-banner',\n {\n 'v-banner--stacked': props.stacked || mobile.value,\n 'v-banner--sticky': props.sticky,\n [`v-banner--${props.lines}-line`]: !!props.lines,\n },\n borderClasses.value,\n densityClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n themeClasses.value,\n ]}\n style={[\n dimensionStyles.value,\n locationStyles.value,\n ]}\n role=\"banner\"\n >\n { hasPrepend && (\n <>\n { slots.prepend\n ? (\n <div class=\"v-banner__prepend\">\n { slots.prepend() }\n </div>\n )\n : props.avatar ? (<VBannerAvatar />)\n : props.icon ? (<VBannerIcon />)\n : undefined\n }\n </>\n ) }\n\n { hasText && (\n <VBannerText>\n { slots.text ? slots.text() : props.text }\n </VBannerText>\n ) }\n\n { slots.default?.() }\n\n { slots.actions && (\n <VBannerActions>\n { slots.actions() }\n </VBannerActions>\n ) }\n </props.tag>\n )\n })\n },\n})\n\nexport type VBanner = InstanceType<typeof VBanner>\n","// Styles\nimport './VBottomNavigation.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, useTheme } from '@/composables/theme'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\n\n// Types\nimport { VBtnToggleSymbol } from '../VBtnToggle/VBtnToggle'\n\nexport const VBottomNavigation = defineComponent({\n name: 'VBottomNavigation',\n\n props: {\n bgColor: String,\n color: String,\n grow: Boolean,\n mode: {\n type: String,\n validator: (v: any) => !v || ['horizontal', 'shift'].includes(v),\n },\n height: {\n type: [Number, String],\n default: 56,\n },\n\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeLayoutItemProps({ name: 'bottom-navigation' }),\n ...makeTagProps({ tag: 'header' }),\n ...makeGroupProps({\n modelValue: true,\n selectedClass: 'v-btn--selected',\n }),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = useTheme()\n const { borderClasses } = useBorder(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { densityClasses } = useDensity(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const height = computed(() => (\n Number(props.height) -\n (props.density === 'comfortable' ? 8 : 0) -\n (props.density === 'compact' ? 16 : 0)\n ))\n const isActive = useProxiedModel(props, 'modelValue', props.modelValue)\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: computed(() => 'bottom'),\n layoutSize: computed(() => isActive.value ? height.value : 0),\n elementSize: height,\n active: isActive,\n absolute: toRef(props, 'absolute'),\n })\n\n useGroup(props, VBtnToggleSymbol)\n\n provideDefaults({\n VBtn: {\n color: toRef(props, 'color'),\n density: toRef(props, 'density'),\n stacked: computed(() => props.mode !== 'horizontal'),\n variant: 'text',\n },\n }, { scoped: true })\n\n return () => {\n return (\n <props.tag\n class={[\n 'v-bottom-navigation',\n {\n 'v-bottom-navigation--active': isActive.value,\n 'v-bottom-navigation--grow': props.grow,\n 'v-bottom-navigation--shift': props.mode === 'shift',\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n densityClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n {\n height: convertToUnit(height.value),\n transform: `translateY(${convertToUnit(!isActive.value ? 100 : 0, '%')})`,\n },\n ]}\n >\n { slots.default && (\n <div class=\"v-bottom-navigation__content\">\n { slots.default() }\n </div>\n ) }\n </props.tag>\n )\n }\n },\n})\n\nexport type VBottomNavigation = InstanceType<typeof VBottomNavigation>\n","// Composables\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed } from 'vue'\nimport { defineComponent, useRender } from '@/util'\n\nexport const VBreadcrumbsItem = defineComponent({\n name: 'VBreadcrumbsItem',\n\n props: {\n active: Boolean,\n activeClass: String,\n activeColor: String,\n color: String,\n disabled: Boolean,\n text: String,\n\n ...makeRouterProps(),\n ...makeTagProps({ tag: 'li' }),\n },\n\n setup (props, { slots, attrs }) {\n const link = useLink(props, attrs)\n const isActive = computed(() => props.active || link.isExactActive?.value)\n const color = computed(() => isActive.value ? props.activeColor : props.color)\n\n const { textColorClasses, textColorStyles } = useTextColor(color)\n\n useRender(() => {\n const Tag = link.isLink.value ? 'a' : props.tag\n const hasText = !!(slots.default || props.text)\n\n return (\n <Tag\n class={[\n 'v-breadcrumbs-item',\n {\n 'v-breadcrumbs-item--active': isActive.value,\n 'v-breadcrumbs-item--disabled': props.disabled,\n 'v-breadcrumbs-item--link': link.isLink.value,\n [`${props.activeClass}`]: isActive.value && props.activeClass,\n },\n textColorClasses.value,\n ]}\n style={[\n textColorStyles.value,\n ]}\n href={ link.href.value }\n aria-current={ isActive.value ? 'page' : undefined }\n onClick={ link.navigate }\n v-slots={{\n default: hasText ? () => slots.default?.() ?? props.text : undefined,\n }}\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VBreadcrumbsItem = InstanceType<typeof VBreadcrumbsItem>\n","import { createSimpleFunctional } from '@/util'\n\nexport const VBreadcrumbsDivider = createSimpleFunctional('v-breadcrumbs-divider', 'li')\n","// Styles\nimport './VBreadcrumbs.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VBreadcrumbsItem } from './VBreadcrumbsItem'\nimport { VBreadcrumbsDivider } from './VBreadcrumbsDivider'\n\n// Composables\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { defineComponent, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { LinkProps } from '@/composables/router'\n\nexport type BreadcrumbItem = string | (LinkProps & {\n text: string\n disabled?: boolean\n})\n\nexport const VBreadcrumbs = defineComponent({\n name: 'VBreadcrumbs',\n\n props: {\n activeClass: String,\n activeColor: String,\n bgColor: String,\n color: String,\n disabled: Boolean,\n divider: {\n type: String,\n default: '/',\n },\n icon: IconValue,\n items: {\n type: Array as PropType<BreadcrumbItem[]>,\n default: () => ([]),\n },\n\n ...makeDensityProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'ul' }),\n },\n\n setup (props, { slots }) {\n const { densityClasses } = useDensity(props)\n const { roundedClasses } = useRounded(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n\n provideDefaults({\n VBreadcrumbsItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor: toRef(props, 'activeColor'),\n color: toRef(props, 'color'),\n disabled: toRef(props, 'disabled'),\n },\n })\n\n useRender(() => (\n <props.tag\n class={[\n 'v-breadcrumbs',\n backgroundColorClasses.value,\n densityClasses.value,\n roundedClasses.value,\n ]}\n style={ backgroundColorStyles.value }\n >\n { props.icon && (\n <VIcon icon={ props.icon } left />\n ) }\n\n { props.items.map((item, index, array) => (\n <>\n <VBreadcrumbsItem\n key={ index }\n disabled={ index >= array.length - 1 }\n { ...(typeof item === 'string' ? { text: item } : item) }\n v-slots={{\n default: slots.text ? () => slots.text?.({ item, index }) : undefined,\n }}\n />\n\n { index < array.length - 1 && (\n <VBreadcrumbsDivider>\n { slots.divider?.({ item, index }) ?? props.divider }\n </VBreadcrumbsDivider>\n ) }\n </>\n )) }\n\n { slots.default?.() }\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VBreadcrumbs = InstanceType<typeof VBreadcrumbs>\n","// Composables\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utility\nimport { defineComponent, useRender } from '@/util'\n\nexport const VCardActions = defineComponent({\n name: 'VCardActions',\n\n setup (_, { slots }) {\n provideDefaults({\n VBtn: {\n variant: 'text',\n },\n })\n\n useRender(() => (\n <div class=\"v-card-actions\">\n { slots?.default?.() }\n </div>\n ))\n\n return {}\n },\n})\n","import { createSimpleFunctional } from '@/util'\n\nexport const VCardAvatar = createSimpleFunctional('v-card-avatar')\n","import { createSimpleFunctional } from '@/util'\n\nexport const VCardContent = createSimpleFunctional('v-card-content')\n","import { createSimpleFunctional } from '@/util'\n\nexport const VCardHeader = createSimpleFunctional('v-card-header')\n","import { createSimpleFunctional } from '@/util'\n\nexport const VCardHeaderText = createSimpleFunctional('v-card-header-text')\n","import { createSimpleFunctional } from '@/util'\n\nexport const VCardImg = createSimpleFunctional('v-card-img')\n","import { createSimpleFunctional } from '@/util'\n\nexport const VCardSubtitle = createSimpleFunctional('v-card-subtitle')\n","import { createSimpleFunctional } from '@/util'\n\nexport const VCardText = createSimpleFunctional('v-card-text')\n","import { createSimpleFunctional } from '@/util'\n\nexport const VCardTitle = createSimpleFunctional('v-card-title')\n","/* eslint-disable complexity */\n\n// Styles\nimport './VCard.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VImg } from '@/components/VImg'\nimport { VCardActions } from './VCardActions'\nimport { VCardAvatar } from './VCardAvatar'\nimport { VCardContent } from './VCardContent'\nimport { VCardHeader } from './VCardHeader'\nimport { VCardHeaderText } from './VCardHeaderText'\nimport { VCardImg } from './VCardImg'\nimport { VCardSubtitle } from './VCardSubtitle'\nimport { VCardText } from './VCardText'\nimport { VCardTitle } from './VCardTitle'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { defineComponent } from '@/util'\nimport { VDefaultsProvider } from '../VDefaultsProvider'\n\nexport const VCard = defineComponent({\n name: 'VCard',\n\n directives: { Ripple },\n\n props: {\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n image: String,\n link: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: Boolean,\n subtitle: String,\n text: String,\n title: String,\n\n ...makeThemeProps(),\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeVariantProps({ variant: 'contained' } as const),\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const link = useLink(props, attrs)\n\n return () => {\n const Tag = (link.isLink.value) ? 'a' : props.tag\n const hasTitle = !!(slots.title || props.title)\n const hasSubtitle = !!(slots.subtitle || props.subtitle)\n const hasHeaderText = hasTitle || hasSubtitle\n const hasAppend = !!(slots.append || props.appendAvatar || props.appendIcon)\n const hasPrepend = !!(slots.prepend || props.prependAvatar || props.prependIcon)\n const hasImage = !!(slots.image || props.image)\n const hasHeader = hasHeaderText || hasPrepend || hasAppend\n const hasText = !!(slots.text || props.text)\n const isClickable = !props.disabled && (link.isClickable.value || props.link)\n\n return (\n <Tag\n class={[\n 'v-card',\n {\n 'v-card--disabled': props.disabled,\n 'v-card--flat': props.flat,\n 'v-card--hover': props.hover && !(props.disabled || props.flat),\n 'v-card--link': isClickable,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n ]}\n href={ link.href.value }\n onClick={ isClickable && link.navigate }\n v-ripple={ isClickable }\n >\n { genOverlays(isClickable, 'v-card') }\n\n { hasImage && (\n <VDefaultsProvider\n defaults={{\n VImg: {\n cover: true,\n src: props.image,\n },\n }}\n >\n <VCardImg>\n { slots.image ? slots.image?.() : (<VImg alt=\"\" />) }\n </VCardImg>\n </VDefaultsProvider>\n ) }\n\n { slots.media?.() }\n\n { hasHeader && (\n <VCardHeader>\n { hasPrepend && (\n <VDefaultsProvider\n defaults={{\n VAvatar: {\n density: props.density,\n icon: props.prependIcon,\n image: props.prependAvatar,\n },\n }}\n >\n <VCardAvatar>\n { slots.prepend ? slots.prepend() : (<VAvatar />) }\n </VCardAvatar>\n </VDefaultsProvider>\n ) }\n\n { hasHeaderText && (\n <VCardHeaderText>\n { hasTitle && (\n <VCardTitle>\n { slots.title ? slots.title() : props.title}\n </VCardTitle>\n ) }\n\n { hasSubtitle && (\n <VCardSubtitle>\n { slots.subtitle ? slots.subtitle() : props.subtitle }\n </VCardSubtitle>\n ) }\n\n { slots.headerText?.() }\n </VCardHeaderText>\n ) }\n\n { hasAppend && (\n <VDefaultsProvider\n defaults={{\n VAvatar: {\n density: props.density,\n icon: props.appendIcon,\n image: props.appendAvatar,\n },\n }}\n >\n <VCardAvatar>\n { slots.append ? slots.append() : (<VAvatar />) }\n </VCardAvatar>\n </VDefaultsProvider>\n ) }\n </VCardHeader>\n ) }\n\n { hasText && (\n <VCardText>\n { slots.text ? slots.text() : props.text }\n </VCardText>\n ) }\n\n { slots.content && (\n <VCardContent v-slots={{ default: slots.content }} />\n ) }\n\n { slots.default?.() }\n\n { slots.actions && (\n <VCardActions v-slots={{ default: slots.actions }} />\n ) }\n </Tag>\n )\n }\n },\n})\n\nexport type VCard = InstanceType<typeof VCard>\n","// Types\nimport type {\n DirectiveBinding,\n ObjectDirective,\n} from 'vue'\n\n// Utilities\nimport { keys } from '@/util'\n\nexport interface TouchHandlers {\n start?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n end?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n move?: (wrapperEvent: { originalEvent: TouchEvent } & TouchWrapper) => void\n left?: (wrapper: TouchWrapper) => void\n right?: (wrapper: TouchWrapper) => void\n up?: (wrapper: TouchWrapper) => void\n down?: (wrapper: TouchWrapper) => void\n}\n\nexport interface TouchWrapper extends TouchHandlers {\n touchstartX: number\n touchstartY: number\n touchmoveX: number\n touchmoveY: number\n touchendX: number\n touchendY: number\n offsetX: number\n offsetY: number\n}\n\nexport interface TouchValue extends TouchHandlers {\n parent?: boolean\n options?: AddEventListenerOptions\n}\n\nexport interface TouchStoredHandlers {\n touchstart: (e: TouchEvent) => void\n touchend: (e: TouchEvent) => void\n touchmove: (e: TouchEvent) => void\n}\n\nexport interface TouchDirectiveBinding extends Omit<DirectiveBinding, 'value'> {\n value?: TouchValue\n}\n\nconst handleGesture = (wrapper: TouchWrapper) => {\n const { touchstartX, touchendX, touchstartY, touchendY } = wrapper\n const dirRatio = 0.5\n const minDistance = 16\n wrapper.offsetX = touchendX - touchstartX\n wrapper.offsetY = touchendY - touchstartY\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && (touchendX < touchstartX - minDistance) && wrapper.left(wrapper)\n wrapper.right && (touchendX > touchstartX + minDistance) && wrapper.right(wrapper)\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && (touchendY < touchstartY - minDistance) && wrapper.up(wrapper)\n wrapper.down && (touchendY > touchstartY + minDistance) && wrapper.down(wrapper)\n }\n}\n\nfunction touchstart (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchstartX = touch.clientX\n wrapper.touchstartY = touch.clientY\n\n wrapper.start?.({ originalEvent: event, ...wrapper })\n}\n\nfunction touchend (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchendX = touch.clientX\n wrapper.touchendY = touch.clientY\n\n wrapper.end?.({ originalEvent: event, ...wrapper })\n\n handleGesture(wrapper)\n}\n\nfunction touchmove (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchmoveX = touch.clientX\n wrapper.touchmoveY = touch.clientY\n\n wrapper.move?.({ originalEvent: event, ...wrapper })\n}\n\nfunction createHandlers (value: TouchHandlers = {}): TouchStoredHandlers {\n const wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end,\n }\n\n return {\n touchstart: (e: TouchEvent) => touchstart(e, wrapper),\n touchend: (e: TouchEvent) => touchend(e, wrapper),\n touchmove: (e: TouchEvent) => touchmove(e, wrapper),\n }\n}\n\nfunction mounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const value = binding.value\n const target = value?.parent ? el.parentElement : el\n const options = value?.options ?? { passive: true }\n const uid = binding.instance?.$.uid // TODO: use custom uid generator\n\n if (!target || !uid) return\n\n const handlers = createHandlers(binding.value)\n\n target._touchHandlers = target._touchHandlers ?? Object.create(null)\n target._touchHandlers![uid] = handlers\n\n keys(handlers).forEach(eventName => {\n target.addEventListener(eventName, handlers[eventName], options)\n })\n}\n\nfunction unmounted (el: HTMLElement, binding: TouchDirectiveBinding) {\n const target = binding.value?.parent ? el.parentElement : el\n const uid = binding.instance?.$.uid\n\n if (!target?._touchHandlers || !uid) return\n\n const handlers = target._touchHandlers[uid]\n\n keys(handlers).forEach(eventName => {\n target.removeEventListener(eventName, handlers[eventName])\n })\n\n delete target._touchHandlers[uid]\n}\n\nexport const Touch: ObjectDirective = {\n mounted,\n unmounted,\n}\n\nexport default Touch\n","// Styles\nimport './VWindow.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useGroup } from '@/composables/group'\nimport { useLocale } from '@/composables/locale'\nimport { useRtl } from '@/composables/rtl'\n\n// Directives\nimport { Touch } from '@/directives/touch'\n\n// Utilities\nimport { computed, provide, ref, watch } from 'vue'\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef, InjectionKey, PropType, Ref } from 'vue'\nimport type { GroupItemProvide, GroupProvide } from '@/composables/group'\nimport type { TouchHandlers } from '@/directives/touch'\nimport type { MakeSlots } from '@/util'\nimport type { IconValue } from '@/composables/icons'\n\ntype WindowProvide = {\n transition: ComputedRef<undefined | string>\n transitionCount: Ref<number>\n transitionHeight: Ref<undefined | string>\n isReversed: Ref<boolean>\n rootRef: Ref<HTMLElement | undefined>\n}\n\ntype ControlProps = {\n icon: IconValue\n class: string\n onClick: () => void\n ariaLabel: string\n}\n\nexport const VWindowSymbol: InjectionKey<WindowProvide> = Symbol.for('vuetify:v-window')\nexport const VWindowGroupSymbol: InjectionKey<GroupItemProvide> = Symbol.for('vuetify:v-window-group')\n\nexport const VWindow = genericComponent<new () => {\n $slots: MakeSlots<{\n default: [{ group: GroupProvide }]\n additional: [{ group: GroupProvide }]\n prev: [{ props: ControlProps }]\n next: [{ props: ControlProps }]\n }>\n}>()({\n name: 'VWindow',\n\n directives: {\n Touch,\n },\n\n props: {\n continuous: Boolean,\n nextIcon: {\n type: [Boolean, String, Function, Object] as PropType<IconValue>,\n default: '$next',\n },\n prevIcon: {\n type: [Boolean, String, Function, Object] as PropType<IconValue>,\n default: '$prev',\n },\n reverse: Boolean,\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => typeof v === 'boolean' || v === 'hover',\n },\n touch: {\n type: [Object, Boolean] as PropType<boolean | TouchHandlers>,\n default: undefined,\n },\n direction: {\n type: String,\n default: 'horizontal',\n },\n\n modelValue: null,\n disabled: Boolean,\n selectedClass: {\n type: String,\n default: 'v-window-item--active',\n },\n // TODO: mandatory should probably not be exposed but do this for now\n mandatory: {\n default: 'force' as const,\n },\n\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (v: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isRtl } = useRtl()\n const { t } = useLocale()\n\n const group = useGroup(props, VWindowGroupSymbol)\n\n const rootRef = ref()\n const isRtlReverse = computed(() => isRtl.value ? !props.reverse : props.reverse)\n const isReversed = ref(false)\n const transition = computed(() => {\n const axis = props.direction === 'vertical' ? 'y' : 'x'\n const reverse = isRtlReverse.value ? !isReversed.value : isReversed.value\n const direction = reverse ? '-reverse' : ''\n\n return `v-window-${axis}${direction}-transition`\n })\n const transitionCount = ref(0)\n const transitionHeight = ref<undefined | string>(undefined)\n\n const activeIndex = computed(() => {\n return group.items.value.findIndex(item => group.selected.value.includes(item.id))\n })\n\n watch(activeIndex, (newVal, oldVal) => {\n const itemsLength = group.items.value.length\n const lastIndex = itemsLength - 1\n\n if (itemsLength <= 2) {\n isReversed.value = newVal < oldVal\n } else if (newVal === lastIndex && oldVal === 0) {\n isReversed.value = true\n } else if (newVal === 0 && oldVal === lastIndex) {\n isReversed.value = false\n } else {\n isReversed.value = newVal < oldVal\n }\n })\n\n provide(VWindowSymbol, {\n transition,\n isReversed,\n transitionCount,\n transitionHeight,\n rootRef,\n })\n\n const canMoveBack = computed(() => props.continuous || activeIndex.value !== 0)\n const canMoveForward = computed(() => props.continuous || activeIndex.value !== group.items.value.length - 1)\n\n function prev () {\n canMoveBack.value && group.prev()\n }\n\n function next () {\n canMoveForward.value && group.next()\n }\n\n const arrows = computed(() => {\n const arrows = []\n\n const prevProps = {\n icon: isRtl.value ? props.nextIcon : props.prevIcon,\n class: `v-window__${isRtlReverse.value ? 'right' : 'left'}`,\n onClick: group.prev,\n ariaLabel: t('$vuetify.carousel.prev'),\n }\n\n arrows.push(canMoveBack.value\n ? slots.prev\n ? slots.prev({ props: prevProps })\n : <VBtn { ...prevProps } />\n : <div />\n )\n\n const nextProps = {\n icon: isRtl.value ? props.prevIcon : props.nextIcon,\n class: `v-window__${isRtlReverse.value ? 'left' : 'right'}`,\n onClick: group.next,\n ariaLabel: t('$vuetify.carousel.next'),\n }\n\n arrows.push(canMoveForward.value\n ? slots.next\n ? slots.next({ props: nextProps })\n : <VBtn { ...nextProps } />\n : <div />\n )\n\n return arrows\n })\n\n const touchOptions = computed(() => {\n if (props.touch === false) return props.touch\n\n const options: TouchHandlers = {\n left: () => {\n isRtlReverse.value ? prev() : next()\n },\n right: () => {\n isRtlReverse.value ? next() : prev()\n },\n end: ({ originalEvent }) => {\n originalEvent.stopPropagation()\n },\n start: ({ originalEvent }) => {\n originalEvent.stopPropagation()\n },\n }\n\n return {\n ...options,\n ...(props.touch === true ? {} : props.touch),\n }\n })\n\n useRender(() => (\n <props.tag\n ref={ rootRef }\n class={[\n 'v-window',\n {\n 'v-window--show-arrows-on-hover': props.showArrows === 'hover',\n },\n themeClasses.value,\n ]}\n v-touch={ touchOptions.value }\n >\n <div\n class=\"v-window__container\"\n style={{\n height: transitionHeight.value,\n }}\n >\n { slots.default?.({ group }) }\n\n { props.showArrows !== false && (\n <div class=\"v-window__controls\">\n { arrows.value }\n </div>\n )}\n </div>\n\n { slots.additional?.({ group }) }\n </props.tag>\n ))\n\n return {\n group,\n }\n },\n})\n\nexport type VWindow = InstanceType<typeof VWindow>\n","// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Directives\nimport Touch from '@/directives/touch'\n\n// Utilities\nimport { computed, inject, nextTick, ref } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\nimport { VWindowGroupSymbol, VWindowSymbol } from './VWindow'\n\nexport const VWindowItem = defineComponent({\n name: 'VWindowItem',\n\n directives: {\n Touch,\n },\n\n props: {\n reverseTransition: {\n type: [Boolean, String],\n default: undefined,\n },\n transition: {\n type: [Boolean, String],\n default: undefined,\n },\n ...makeLazyProps(),\n ...makeGroupItemProps(),\n },\n\n setup (props, { slots }) {\n const window = inject(VWindowSymbol)\n const groupItem = useGroupItem(props, VWindowGroupSymbol)\n\n if (!window || !groupItem) throw new Error('[Vuetify] VWindowItem must be used inside VWindow')\n\n const isTransitioning = ref(false)\n const hasTransition = computed(() => window.isReversed.value ? props.reverseTransition !== false : props.transition !== false)\n\n function onAfterTransition () {\n if (!isTransitioning.value || !window) {\n return\n }\n\n // Finalize transition state.\n isTransitioning.value = false\n if (window.transitionCount.value > 0) {\n window.transitionCount.value -= 1\n\n // Remove container height if we are out of transition.\n if (window.transitionCount.value === 0) {\n window.transitionHeight.value = undefined\n }\n }\n }\n\n function onBeforeTransition () {\n if (isTransitioning.value || !window) {\n return\n }\n\n // Initialize transition state here.\n isTransitioning.value = true\n\n if (window.transitionCount.value === 0) {\n // Set initial height for height transition.\n window.transitionHeight.value = convertToUnit(window.rootRef.value?.clientHeight)\n }\n\n window.transitionCount.value += 1\n }\n\n function onTransitionCancelled () {\n onAfterTransition() // This should have the same path as normal transition end.\n }\n\n function onEnterTransition (el: Element) {\n if (!isTransitioning.value) {\n return\n }\n\n nextTick(() => {\n // Do not set height if no transition or cancelled.\n if (!hasTransition.value || !isTransitioning.value || !window) {\n return\n }\n\n // Set transition target height.\n window.transitionHeight.value = convertToUnit(el.clientHeight)\n })\n }\n\n const transition = computed(() => {\n const name = window.isReversed.value\n ? props.reverseTransition\n : props.transition\n\n return !hasTransition.value ? false : {\n name: typeof name !== 'string' ? window.transition.value : name,\n onBeforeEnter: onBeforeTransition,\n onAfterEnter: onAfterTransition,\n onEnterCancelled: onTransitionCancelled,\n onBeforeLeave: onBeforeTransition,\n onAfterLeave: onAfterTransition,\n onLeaveCancelled: onTransitionCancelled,\n onEnter: onEnterTransition,\n }\n })\n\n const { hasContent } = useLazy(props, groupItem.isSelected)\n\n return () => {\n return (\n <MaybeTransition transition={ transition.value } >\n <div\n class={[\n 'v-window-item',\n groupItem.selectedClass.value,\n ]}\n v-show={ groupItem.isSelected.value }\n >\n { slots.default && hasContent.value && slots.default() }\n </div>\n </MaybeTransition>\n )\n }\n },\n})\n\nexport type VWindowItem = InstanceType<typeof VWindowItem>\n","// Styles\nimport './VCarousel.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VProgressLinear } from '@/components/VProgressLinear'\nimport { VWindow } from '@/components/VWindow'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { convertToUnit, defineComponent, useRender } from '@/util'\nimport { onMounted, ref, watch } from 'vue'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport const VCarousel = defineComponent({\n name: 'VCarousel',\n\n props: {\n color: String,\n cycle: Boolean,\n delimiterIcon: {\n type: IconValue,\n default: '$delimiter',\n },\n height: {\n type: [Number, String],\n default: 500,\n },\n hideDelimiters: Boolean,\n hideDelimiterBackground: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: (value: string | number) => value > 0,\n },\n modelValue: null,\n progress: [Boolean, String],\n showArrows: {\n type: [Boolean, String],\n default: true,\n validator: (v: any) => typeof v === 'boolean' || v === 'hover',\n },\n verticalDelimiters: [Boolean, String] as PropType<boolean | 'left' | 'right'>,\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { t } = useLocale()\n const windowRef = ref<typeof VWindow>()\n\n let slideTimeout = -1\n watch(model, restartTimeout)\n watch(() => props.interval, restartTimeout)\n watch(() => props.cycle, val => {\n if (val) restartTimeout()\n else window.clearTimeout(slideTimeout)\n })\n\n onMounted(startTimeout)\n\n function startTimeout () {\n if (!props.cycle || !windowRef.value) return\n\n slideTimeout = window.setTimeout(windowRef.value.group.next, +props.interval > 0 ? +props.interval : 6000)\n }\n\n function restartTimeout () {\n window.clearTimeout(slideTimeout)\n window.requestAnimationFrame(startTimeout)\n }\n\n useRender(() => (\n <VWindow\n ref={ windowRef }\n v-model={ model.value }\n class={[\n 'v-carousel',\n {\n 'v-carousel--hide-delimiter-background': props.hideDelimiterBackground,\n 'v-carousel--vertical-delimiters': props.verticalDelimiters,\n },\n ]}\n style={{ height: convertToUnit(props.height) }}\n continuous\n showArrows={ props.showArrows }\n mandatory=\"force\"\n >\n {{\n default: slots.default,\n additional: ({ group }: { group: GroupProvide }) => (\n <>\n { !props.hideDelimiters && (\n <div\n class=\"v-carousel__controls\"\n style={{\n left: props.verticalDelimiters === 'left' && props.verticalDelimiters ? 0 : 'auto',\n right: props.verticalDelimiters === 'right' ? 0 : 'auto',\n }}\n >\n { group.items.value.length > 0 && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n color: props.color,\n icon: props.delimiterIcon,\n size: 'x-small',\n variant: 'text',\n },\n }}\n scoped\n >\n { group.items.value.map((item: any) => {\n const props = {\n 'aria-label': t('$vuetify.carousel.ariaLabel.delimiter'),\n class: [group.isSelected(item.id) && 'v-btn--selected'],\n onClick: () => group.select(item.id, true),\n }\n\n return slots.item\n ? slots.item({ props, item })\n : (<VBtn { ...item } { ...props } />)\n }) }\n </VDefaultsProvider>\n ) }\n </div>\n )}\n\n { props.progress && (\n <VProgressLinear\n class=\"v-carousel__progress\"\n color={ typeof props.progress === 'string' ? props.progress : undefined }\n modelValue={ (group.getItemIndex(model.value) + 1) / group.items.value.length * 100 }\n />\n )}\n </>\n ),\n prev: slots.prev,\n next: slots.next,\n }}\n </VWindow>\n ))\n },\n})\n","// Components\nimport { VImg } from '@/components/VImg'\nimport { VWindowItem } from '@/components/VWindow'\n\n// Utilities\nimport { defineComponent, useRender } from '@/util'\n\nexport const VCarouselItem = defineComponent({\n name: 'VCarouselItem',\n\n inheritAttrs: false,\n\n props: {\n value: null,\n },\n\n setup (props, { slots, attrs }) {\n useRender(() => (\n <VWindowItem class=\"v-carousel-item\" value={ props.value }>\n <VImg\n { ...attrs }\n v-slots={ slots }\n />\n </VWindowItem>\n ))\n },\n})\n\nexport type VCarouselItem = InstanceType<typeof VCarouselItem>\n","// Styles\nimport './VSelectionControlGroup.sass'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, provide, toRef } from 'vue'\nimport { defineComponent, getUid, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType, Ref } from 'vue'\n\nexport interface VSelectionGroupContext {\n disabled: Ref<boolean>\n inline: Ref<boolean>\n name: Ref<string | undefined>\n modelValue: Ref<any>\n multiple: Ref<boolean>\n trueIcon: Ref<IconValue | undefined>\n falseIcon: Ref<IconValue | undefined>\n readonly: Ref<boolean>\n type: Ref<string | undefined>\n}\n\nexport const VSelectionControlGroupSymbol: InjectionKey<VSelectionGroupContext> = Symbol.for('vuetify:selection-control-group')\n\nexport const VSelectionControlGroup = defineComponent({\n name: 'VSelectionControlGroup',\n\n props: {\n disabled: Boolean,\n id: String,\n inline: Boolean,\n name: String,\n falseIcon: IconValue,\n trueIcon: IconValue,\n multiple: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n readonly: Boolean,\n type: String,\n modelValue: null,\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const modelValue = useProxiedModel(props, 'modelValue')\n const uid = getUid()\n const id = computed(() => props.id || `v-selection-control-group-${uid}`)\n const name = computed(() => props.name || id.value)\n\n provide(VSelectionControlGroupSymbol, {\n disabled: toRef(props, 'disabled'),\n inline: toRef(props, 'inline'),\n modelValue,\n multiple: computed(() => !!props.multiple || (props.multiple == null && Array.isArray(modelValue.value))),\n name,\n falseIcon: toRef(props, 'falseIcon'),\n trueIcon: toRef(props, 'trueIcon'),\n readonly: toRef(props, 'readonly'),\n type: toRef(props, 'type'),\n })\n\n useRender(() => {\n return (\n <div\n class=\"v-selection-control-group\"\n aria-labelled-by={ props.type === 'radio' ? id.value : undefined }\n role={ props.type === 'radio' ? 'radiogroup' : undefined }\n >\n { slots?.default?.() }\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VSelectionControlGroup = InstanceType<typeof VSelectionControlGroup>\n","// Styles\nimport './VSelectionControl.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VLabel } from '@/components/VLabel'\nimport { VSelectionControlGroupSymbol } from '@/components/VSelectionControlGroup/VSelectionControlGroup'\n\n// Composables\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeThemeProps } from '@/composables/theme'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useTextColor } from '@/composables/color'\nimport { IconValue } from '@/composables/icons'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed, inject, ref } from 'vue'\nimport {\n deepEqual,\n genericComponent,\n getUid,\n pick,\n propsFactory,\n SUPPORTS_FOCUS_VISIBLE,\n useRender,\n wrapInArray,\n} from '@/util'\n\n// Types\nimport type { ComputedRef, ExtractPropTypes, PropType, Ref, WritableComputedRef } from 'vue'\nimport type { MakeSlots } from '@/util'\n\nexport type SelectionControlSlot = {\n model: WritableComputedRef<any>\n isReadonly: ComputedRef<boolean>\n isDisabled: ComputedRef<boolean>\n textColorClasses: Ref<string[]>\n props: {\n onBlur: (e: Event) => void\n onFocus: (e: FocusEvent) => void\n id: string\n }\n}\n\nexport const makeSelectionControlProps = propsFactory({\n color: String,\n disabled: Boolean,\n error: Boolean,\n id: String,\n inline: Boolean,\n label: String,\n falseIcon: IconValue,\n trueIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n multiple: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n name: String,\n readonly: Boolean,\n trueValue: null,\n falseValue: null,\n modelValue: null,\n type: String,\n value: null,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeThemeProps(),\n ...makeDensityProps(),\n})\n\nexport function useSelectionControl (\n props: ExtractPropTypes<ReturnType<typeof makeSelectionControlProps>> & {\n 'onUpdate:modelValue': ((val: any) => void) | undefined\n }\n) {\n const group = inject(VSelectionControlGroupSymbol, undefined)\n const { densityClasses } = useDensity(props)\n const modelValue = useProxiedModel(props, 'modelValue')\n const trueValue = computed(() => (\n props.trueValue !== undefined ? props.trueValue\n : props.value !== undefined ? props.value\n : true\n ))\n const falseValue = computed(() => props.falseValue !== undefined ? props.falseValue : false)\n const isMultiple = computed(() => (\n group?.multiple.value ||\n !!props.multiple ||\n (props.multiple == null && Array.isArray(modelValue.value))\n ))\n const model = computed({\n get () {\n const val = group ? group.modelValue.value : modelValue.value\n\n return isMultiple.value\n ? val.some((v: any) => props.valueComparator(v, trueValue.value))\n : props.valueComparator(val, trueValue.value)\n },\n set (val: boolean) {\n if (props.readonly) return\n\n const currentValue = val ? trueValue.value : falseValue.value\n\n let newVal = currentValue\n\n if (isMultiple.value) {\n newVal = val\n ? [...wrapInArray(modelValue.value), currentValue]\n : wrapInArray(modelValue.value).filter((item: any) => !props.valueComparator(item, trueValue.value))\n }\n\n if (group) {\n group.modelValue.value = newVal\n } else {\n modelValue.value = newVal\n }\n },\n })\n const { textColorClasses, textColorStyles } = useTextColor(computed(() => {\n return (\n model.value &&\n !props.error &&\n !props.disabled\n ) ? props.color : undefined\n }))\n const icon = computed(() => {\n return model.value\n ? group?.trueIcon.value ?? props.trueIcon\n : group?.falseIcon.value ?? props.falseIcon\n })\n\n return {\n group,\n densityClasses,\n trueValue,\n falseValue,\n model,\n textColorClasses,\n textColorStyles,\n icon,\n }\n}\n\nexport const VSelectionControl = genericComponent<new <T>() => {\n $props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (val: T) => any\n }\n $slots: MakeSlots<{\n default: []\n input: [SelectionControlSlot]\n }>\n}>()({\n name: 'VSelectionControl',\n\n directives: { Ripple },\n\n inheritAttrs: false,\n\n props: makeSelectionControlProps(),\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { attrs, slots }) {\n const {\n densityClasses,\n group,\n icon,\n model,\n textColorClasses,\n textColorStyles,\n trueValue,\n } = useSelectionControl(props)\n const uid = getUid()\n const id = computed(() => props.id || `input-${uid}`)\n const isFocused = ref(false)\n const isFocusVisible = ref(false)\n const input = ref<HTMLInputElement>()\n\n function onFocus (e: FocusEvent) {\n isFocused.value = true\n if (\n !SUPPORTS_FOCUS_VISIBLE ||\n (SUPPORTS_FOCUS_VISIBLE && (e.target as HTMLElement).matches(':focus-visible'))\n ) {\n isFocusVisible.value = true\n }\n }\n\n function onBlur () {\n isFocused.value = false\n isFocusVisible.value = false\n }\n\n useRender(() => {\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n const type = group?.type.value ?? props.type\n\n return (\n <div\n class={[\n 'v-selection-control',\n {\n 'v-selection-control--dirty': model.value,\n 'v-selection-control--disabled': props.disabled,\n 'v-selection-control--error': props.error,\n 'v-selection-control--focused': isFocused.value,\n 'v-selection-control--focus-visible': isFocusVisible.value,\n 'v-selection-control--inline': group?.inline.value || props.inline,\n },\n densityClasses.value,\n ]}\n >\n <div\n class={[\n 'v-selection-control__wrapper',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n >\n { slots.default?.() }\n\n <div\n class={[\n 'v-selection-control__input',\n ]}\n v-ripple={ props.ripple && [\n !props.disabled && !props.readonly,\n null,\n ['center', 'circle'],\n ]}\n >\n { icon.value && <VIcon icon={ icon.value } /> }\n\n <input\n v-model={ model.value }\n ref={ input }\n disabled={ props.disabled }\n id={ id.value }\n onBlur={ onBlur }\n onFocus={ onFocus }\n aria-readonly={ props.readonly }\n type={ type }\n value={ trueValue.value }\n name={ group?.name.value ?? props.name }\n aria-checked={ type === 'checkbox' ? model.value : undefined }\n { ...attrs }\n />\n\n { slots.input?.({\n model,\n textColorClasses,\n props: {\n onFocus,\n onBlur,\n id: id.value,\n },\n }) }\n </div>\n </div>\n\n <VLabel for={ id.value }>\n { label }\n </VLabel>\n </div>\n )\n })\n\n return {\n isFocused,\n input,\n }\n },\n})\n\nexport type VSelectionControl = InstanceType<typeof VSelectionControl>\n\nexport function filterControlProps (props: ExtractPropTypes<ReturnType<typeof makeSelectionControlProps>>) {\n return pick(props, Object.keys(VSelectionControl.props) as any)\n}\n","// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { filterControlProps, makeSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { IconValue } from '@/composables/icons'\n\n// Utility\nimport { computed } from 'vue'\nimport { defineComponent, filterInputAttrs, useRender } from '@/util'\n\nexport const VCheckbox = defineComponent({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: {\n indeterminate: Boolean,\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n\n ...makeVInputProps(),\n ...makeSelectionControlProps(),\n\n falseIcon: {\n type: IconValue,\n default: '$checkboxOff',\n },\n trueIcon: {\n type: IconValue,\n default: '$checkboxOn',\n },\n },\n\n emits: {\n 'update:indeterminate': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const falseIcon = computed(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.falseIcon\n })\n const trueIcon = computed(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.trueIcon\n })\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [controlProps, _2] = filterControlProps(props)\n\n return (\n <VInput\n class=\"v-checkbox\"\n { ...inputAttrs }\n { ...inputProps }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isReadonly,\n }) => (\n <VSelectionControl\n { ...controlProps }\n type=\"checkbox\"\n onUpdate:modelValue={ onChange }\n falseIcon={ falseIcon.value }\n trueIcon={ trueIcon.value }\n aria-checked={ indeterminate.value ? 'mixed' : undefined }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n v-slots={ slots }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n","import './VCode.sass'\n\nimport { createSimpleFunctional } from '@/util'\n\nexport const VCode = createSimpleFunctional('v-code')\n","// Styles\nimport './VSheet.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\nexport const VSheet = defineComponent({\n name: 'VSheet',\n\n props: {\n color: String,\n\n ...makeBorderProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { borderClasses } = useBorder(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n\n return () => (\n <props.tag\n class={[\n 'v-sheet',\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n ]}\n v-slots={ slots }\n />\n )\n },\n})\n","/* eslint-disable max-statements */\n// Composables\nimport { useRtl } from '@/composables/rtl'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeElevationProps } from '@/composables/elevation'\n\n// Utilities\nimport { computed, provide, ref, toRef } from 'vue'\nimport { clamp, createRange, propsFactory } from '@/util'\n\n// Types\nimport type { ExtractPropTypes, InjectionKey, PropType, Ref } from 'vue'\nimport type { VSliderTrack } from './VSliderTrack'\n\ntype Tick = {\n value: number\n position: number\n label?: string\n}\n\ntype SliderProvide = {\n activeThumbRef: Ref<HTMLElement | undefined>\n color: Ref<string | undefined>\n decimals: Ref<number>\n direction: Ref<'vertical' | 'horizontal'>\n disabled: Ref<boolean | undefined>\n elevation: Ref<number | string | undefined>\n min: Ref<number>\n max: Ref<number>\n mousePressed: Ref<boolean>\n numTicks: Ref<number>\n onSliderMousedown: (e: MouseEvent) => void\n onSliderTouchstart: (e: TouchEvent) => void\n parseMouseMove: (e: MouseEvent | TouchEvent) => number\n position: (val: number) => number\n readonly: Ref<boolean | undefined>\n rounded: Ref<boolean | number | string | undefined>\n roundValue: (value: number) => number\n thumbLabel: Ref<boolean | string | undefined>\n showTicks: Ref<boolean | 'always'>\n startOffset: Ref<number>\n step: Ref<number>\n thumbSize: Ref<number>\n thumbColor: Ref<string | undefined>\n trackColor: Ref<string | undefined>\n trackFillColor: Ref<string | undefined>\n trackSize: Ref<number>\n ticks: Ref<number[] | Record<string, string> | undefined>\n tickSize: Ref<number>\n trackContainerRef: Ref<VSliderTrack | undefined>\n vertical: Ref<boolean>\n parsedTicks: Ref<Tick[]>\n hasLabels: Ref<boolean>\n isReversed: Ref<boolean>\n horizontalDirection: Ref<'ltr' | 'rtl'>\n}\n\nexport const VSliderSymbol: InjectionKey<SliderProvide> = Symbol.for('vuetify:v-slider')\n\nexport function getOffset (e: MouseEvent | TouchEvent, el: HTMLElement, direction: string) {\n const vertical = direction === 'vertical'\n const rect = el.getBoundingClientRect()\n const touch = 'touches' in e ? e.touches[0] : e\n return vertical\n ? touch.clientY - (rect.top + rect.height / 2)\n : touch.clientX - (rect.left + rect.width / 2)\n}\n\nfunction getPosition (e: MouseEvent | TouchEvent, position: 'clientX' | 'clientY'): number {\n if ('touches' in e && e.touches.length) return e.touches[0][position]\n else if ('changedTouches' in e && e.changedTouches.length) return e.changedTouches[0][position]\n else return (e as MouseEvent)[position]\n}\n\nexport const makeSliderProps = propsFactory({\n disabled: Boolean,\n error: Boolean,\n readonly: Boolean,\n max: {\n type: [Number, String],\n default: 100,\n },\n min: {\n type: [Number, String],\n default: 0,\n },\n step: {\n type: [Number, String],\n default: 0,\n },\n thumbColor: String,\n thumbLabel: {\n type: [Boolean, String] as PropType<boolean | 'always' | undefined>,\n default: undefined,\n validator: (v: any) => typeof v === 'boolean' || v === 'always',\n },\n thumbSize: {\n type: [Number, String],\n default: 20,\n },\n showTicks: {\n type: [Boolean, String] as PropType<boolean | 'always'>,\n default: false,\n validator: (v: any) => typeof v === 'boolean' || v === 'always',\n },\n ticks: {\n type: [Array, Object] as PropType<number[] | Record<number, string>>,\n },\n tickSize: {\n type: [Number, String],\n default: 2,\n },\n color: String,\n trackColor: String,\n trackFillColor: String,\n trackSize: {\n type: [Number, String],\n default: 4,\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n },\n reverse: Boolean,\n\n ...makeRoundedProps(),\n ...makeElevationProps({\n elevation: 2,\n }),\n}, 'slider')\n\ntype SliderProps = ExtractPropTypes<ReturnType<typeof makeSliderProps>>\n\nexport const useSlider = ({\n props,\n handleSliderMouseUp,\n handleMouseMove,\n getActiveThumb,\n}: {\n props: SliderProps\n handleSliderMouseUp: (v: number) => void\n handleMouseMove: (v: number) => void\n getActiveThumb: (e: MouseEvent | TouchEvent) => HTMLElement\n}) => {\n const { isRtl } = useRtl()\n const isReversed = computed(() => isRtl.value !== props.reverse)\n const horizontalDirection = computed(() => {\n let hd: 'ltr' | 'rtl' = isRtl.value ? 'rtl' : 'ltr'\n\n if (props.reverse) {\n hd = hd === 'rtl' ? 'ltr' : 'rtl'\n }\n\n return hd\n })\n const min = computed(() => parseFloat(props.min))\n const max = computed(() => parseFloat(props.max))\n const step = computed(() => props.step > 0 ? parseFloat(props.step) : 0)\n const decimals = computed(() => {\n const trimmedStep = step.value.toString().trim()\n return trimmedStep.includes('.')\n ? (trimmedStep.length - trimmedStep.indexOf('.') - 1)\n : 0\n })\n\n const thumbSize = computed(() => parseInt(props.thumbSize, 10))\n const tickSize = computed(() => parseInt(props.tickSize, 10))\n const trackSize = computed(() => parseInt(props.trackSize, 10))\n const numTicks = computed(() => (max.value - min.value) / step.value)\n const disabled = toRef(props, 'disabled')\n const vertical = computed(() => props.direction === 'vertical')\n\n const thumbColor = computed(() => props.error || props.disabled ? undefined : props.thumbColor ?? props.color)\n const trackColor = computed(() => props.error || props.disabled ? undefined : props.trackColor ?? props.color)\n const trackFillColor = computed(() => props.error || props.disabled ? undefined : props.trackFillColor ?? props.color)\n\n const mousePressed = ref(false)\n\n const startOffset = ref(0)\n const trackContainerRef = ref<VSliderTrack | undefined>()\n const activeThumbRef = ref<HTMLElement | undefined>()\n\n function roundValue (value: number) {\n if (step.value <= 0) return value\n\n const clamped = clamp(value, min.value, max.value)\n const offset = min.value % step.value\n const newValue = Math.round((clamped - offset) / step.value) * step.value + offset\n\n return parseFloat(Math.min(newValue, max.value).toFixed(decimals.value))\n }\n\n function parseMouseMove (e: MouseEvent | TouchEvent): number {\n const vertical = props.direction === 'vertical'\n const start = vertical ? 'top' : 'left'\n const length = vertical ? 'height' : 'width'\n const position = vertical ? 'clientY' : 'clientX'\n\n const {\n [start]: trackStart,\n [length]: trackLength,\n } = trackContainerRef.value?.$el.getBoundingClientRect()\n const clickOffset = getPosition(e, position)\n\n // It is possible for left to be NaN, force to number\n let clickPos = Math.min(Math.max((clickOffset - trackStart - startOffset.value) / trackLength, 0), 1) || 0\n\n if (vertical || isReversed.value) clickPos = 1 - clickPos\n\n return roundValue(min.value + clickPos * (max.value - min.value))\n }\n\n let thumbMoved = false\n\n const handleStop = (e: MouseEvent | TouchEvent) => {\n if (!thumbMoved) {\n startOffset.value = 0\n handleSliderMouseUp(parseMouseMove(e))\n }\n\n mousePressed.value = false\n thumbMoved = false\n startOffset.value = 0\n }\n\n const handleStart = (e: MouseEvent | TouchEvent) => {\n activeThumbRef.value = getActiveThumb(e)\n\n if (!activeThumbRef.value) return\n\n activeThumbRef.value.focus()\n mousePressed.value = true\n\n if (activeThumbRef.value.contains(e.target as Node)) {\n thumbMoved = true\n startOffset.value = getOffset(e, activeThumbRef.value, props.direction)\n } else {\n startOffset.value = 0\n handleMouseMove(parseMouseMove(e))\n }\n }\n\n const moveListenerOptions = { passive: true, capture: true }\n\n function onMouseMove (e: MouseEvent | TouchEvent) {\n thumbMoved = true\n handleMouseMove(parseMouseMove(e))\n }\n\n function onSliderMouseUp (e: MouseEvent) {\n e.stopPropagation()\n e.preventDefault()\n\n handleStop(e)\n\n window.removeEventListener('mousemove', onMouseMove, moveListenerOptions)\n window.removeEventListener('mouseup', onSliderMouseUp)\n }\n\n function onSliderTouchend (e: TouchEvent) {\n e.stopPropagation()\n e.preventDefault()\n\n handleStop(e)\n\n window.removeEventListener('touchmove', onMouseMove, moveListenerOptions)\n window.removeEventListener('touchend', onSliderTouchend)\n }\n\n function onSliderTouchstart (e: TouchEvent) {\n handleStart(e)\n\n window.addEventListener('touchmove', onMouseMove, moveListenerOptions)\n window.addEventListener('touchend', onSliderTouchend, { passive: false })\n }\n\n function onSliderMousedown (e: MouseEvent) {\n e.preventDefault()\n\n handleStart(e)\n\n window.addEventListener('mousemove', onMouseMove, moveListenerOptions)\n window.addEventListener('mouseup', onSliderMouseUp, { passive: false })\n }\n\n const position = (val: number) => {\n const percentage = (val - min.value) / (max.value - min.value) * 100\n return clamp(isNaN(percentage) ? 0 : percentage, 0, 100)\n }\n\n const parsedTicks = computed<Tick[]>(() => {\n if (!props.ticks) {\n return numTicks.value !== Infinity ? createRange(numTicks.value + 1).map(t => {\n const value = min.value + (t * step.value)\n return {\n value,\n position: position(value),\n }\n }) : []\n }\n if (Array.isArray(props.ticks)) return props.ticks.map(t => ({ value: t, position: position(t), label: t.toString() }))\n return Object.keys(props.ticks).map(key => ({\n value: parseInt(key, 10),\n position: position(parseInt(key, 10)),\n label: (props.ticks as Record<string, string>)[key],\n }))\n })\n\n const hasLabels = computed(() => parsedTicks.value.some(({ label }) => !!label))\n\n const data: SliderProvide = {\n activeThumbRef,\n color: toRef(props, 'color'),\n decimals,\n disabled,\n direction: toRef(props, 'direction'),\n elevation: toRef(props, 'elevation'),\n hasLabels,\n horizontalDirection,\n isReversed,\n min,\n max,\n mousePressed,\n numTicks,\n onSliderMousedown,\n onSliderTouchstart,\n parsedTicks,\n parseMouseMove,\n position,\n readonly: toRef(props, 'readonly'),\n rounded: toRef(props, 'rounded'),\n roundValue,\n showTicks: toRef(props, 'showTicks'),\n startOffset,\n step,\n thumbSize,\n thumbColor,\n thumbLabel: toRef(props, 'thumbLabel'),\n ticks: toRef(props, 'ticks'),\n tickSize,\n trackColor,\n trackContainerRef,\n trackFillColor,\n trackSize,\n vertical,\n }\n\n provide(VSliderSymbol, data)\n\n return data\n}\n","// Styles\nimport './VSliderThumb.sass'\n\n// Components\nimport { VScaleTransition } from '../transitions'\nimport { VSliderSymbol } from './slider'\nimport { useElevation } from '@/composables/elevation'\n\n// Directives\nimport Ripple from '@/directives/ripple'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { convertToUnit, defineComponent, keyValues } from '@/util'\n\nexport const VSliderThumb = defineComponent({\n name: 'VSliderThumb',\n\n directives: { Ripple },\n\n props: {\n focused: Boolean,\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n modelValue: {\n type: Number,\n required: true,\n },\n position: {\n type: Number,\n required: true,\n },\n },\n\n emits: {\n 'update:modelValue': (v: number) => true,\n },\n\n setup (props, { slots, emit }) {\n const slider = inject(VSliderSymbol)\n\n if (!slider) throw new Error('[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider')\n\n const {\n thumbColor,\n step,\n vertical,\n disabled,\n thumbSize,\n thumbLabel,\n direction,\n readonly,\n elevation,\n isReversed,\n horizontalDirection,\n mousePressed,\n decimals,\n } = slider\n\n const { textColorClasses, textColorStyles } = useTextColor(thumbColor)\n\n const { pageup, pagedown, end, home, left, right, down, up } = keyValues\n const relevantKeys = [pageup, pagedown, end, home, left, right, down, up]\n\n const multipliers = computed(() => {\n if (step.value) return [1, 2, 3]\n else return [1, 5, 10]\n })\n\n function parseKeydown (e: KeyboardEvent, value: number) {\n if (!relevantKeys.includes(e.key)) return\n\n e.preventDefault()\n\n const _step = step.value || 0.1\n const steps = (props.max - props.min) / _step\n if ([left, right, down, up].includes(e.key)) {\n const increase = isReversed.value ? [left, up] : [right, up]\n const direction = increase.includes(e.key) ? 1 : -1\n const multiplier = e.shiftKey ? 2 : (e.ctrlKey ? 1 : 0)\n\n value = value + (direction * _step * multipliers.value[multiplier])\n } else if (e.key === home) {\n value = props.min\n } else if (e.key === end) {\n value = props.max\n } else {\n const direction = e.key === pagedown ? 1 : -1\n value = value - (direction * _step * (steps > 100 ? steps / 10 : 10))\n }\n\n return Math.max(props.min, Math.min(props.max, value))\n }\n\n function onKeydown (e: KeyboardEvent) {\n const newValue = parseKeydown(e, props.modelValue)\n\n newValue != null && emit('update:modelValue', newValue)\n }\n\n return () => {\n const positionPercentage = convertToUnit(vertical.value ? 100 - props.position : props.position, '%')\n const inset = vertical.value ? 'block' : 'inline'\n const { elevationClasses } = useElevation(computed(() => !disabled.value ? elevation.value : undefined))\n\n return (\n <div\n class={[\n 'v-slider-thumb',\n {\n 'v-slider-thumb--focused': props.focused,\n 'v-slider-thumb--pressed': props.focused && mousePressed.value,\n },\n ]}\n style={{\n [`inset-${inset}-start`]: `calc(${positionPercentage} - var(--v-slider-thumb-size) / 2)`,\n '--v-slider-thumb-size': convertToUnit(thumbSize.value),\n direction: !vertical.value ? horizontalDirection.value : undefined,\n }}\n role=\"slider\"\n tabindex={ disabled.value ? -1 : 0 }\n aria-valuemin={ props.min }\n aria-valuemax={ props.max }\n aria-valuenow={ props.modelValue }\n aria-readonly={ readonly.value }\n aria-orientation={ direction.value }\n onKeydown={ !readonly.value ? onKeydown : undefined }\n >\n <div\n class={[\n 'v-slider-thumb__surface',\n textColorClasses.value,\n elevationClasses.value,\n ]}\n style={{\n ...textColorStyles.value,\n }}\n />\n <div\n class={[\n 'v-slider-thumb__ripple',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n v-ripple={[true, null, ['circle', 'center']]}\n />\n <VScaleTransition origin=\"bottom center\">\n <div\n class=\"v-slider-thumb__label-container\"\n v-show={ (thumbLabel.value && props.focused) || thumbLabel.value === 'always' }\n >\n <div\n class={[\n 'v-slider-thumb__label',\n ]}\n >\n <div>\n { slots['thumb-label']?.({ modelValue: props.modelValue }) ?? props.modelValue.toFixed(step.value ? decimals.value : 1) }\n </div>\n </div>\n </div>\n </VScaleTransition>\n </div>\n )\n }\n },\n})\n\nexport type VSliderThumb = InstanceType<typeof VSliderThumb>\n","// Styles\nimport './VSliderTrack.sass'\n\n// Components\nimport { VSliderSymbol } from './slider'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { useRounded } from '@/composables/rounded'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\n\nexport const VSliderTrack = defineComponent({\n name: 'VSliderTrack',\n\n props: {\n start: {\n type: Number,\n required: true,\n },\n stop: {\n type: Number,\n required: true,\n },\n },\n\n emits: {},\n\n setup (props, { slots }) {\n const slider = inject(VSliderSymbol)\n\n if (!slider) throw new Error('[Vuetify] v-slider-track must be inside v-slider or v-range-slider')\n\n const {\n trackColor,\n trackFillColor,\n vertical,\n tickSize,\n showTicks,\n trackSize,\n color,\n rounded,\n parsedTicks,\n horizontalDirection,\n } = slider\n\n const { roundedClasses } = useRounded(rounded)\n\n const {\n backgroundColorClasses: trackFillColorClasses,\n backgroundColorStyles: trackFillColorStyles,\n } = useBackgroundColor(trackFillColor)\n\n const {\n backgroundColorClasses: trackColorClasses,\n backgroundColorStyles: trackColorStyles,\n } = useBackgroundColor(trackColor)\n\n const startDir = computed(() => `inset-${vertical.value ? 'block-end' : 'inline-start'}`)\n const endDir = computed(() => vertical.value ? 'height' : 'width')\n\n const backgroundStyles = computed(() => {\n return {\n [startDir.value]: '0%',\n [endDir.value]: '100%',\n }\n })\n\n const trackFillWidth = computed(() => props.stop - props.start)\n\n const trackFillStyles = computed(() => {\n return {\n [startDir.value]: convertToUnit(props.start, '%'),\n [endDir.value]: convertToUnit(trackFillWidth.value, '%'),\n }\n })\n\n const computedTicks = computed(() => {\n const ticks = vertical.value ? parsedTicks.value.slice().reverse() : parsedTicks.value\n\n return ticks.map((tick, index) => {\n const directionProperty = vertical.value ? 'bottom' : 'margin-inline-start'\n const directionValue = (tick.position > 0 && tick.position < 100) ? convertToUnit(tick.position, '%') : undefined\n return (\n <div\n key={ tick.value }\n class={[\n 'v-slider-track__tick',\n {\n 'v-slider-track__tick--filled': tick.position >= props.start && tick.position <= props.stop,\n },\n ]}\n style={{ [directionProperty]: directionValue }}\n >\n {\n (tick.label || slots['tick-label']) && (\n <div class=\"v-slider-track__tick-label\">\n { slots['tick-label']?.({ tick, index }) ?? tick.label }\n </div>\n )\n }\n </div>\n )\n })\n })\n\n return () => {\n return (\n <div\n class={[\n 'v-slider-track',\n roundedClasses.value,\n ]}\n style={{\n '--v-slider-track-size': convertToUnit(trackSize.value),\n '--v-slider-tick-size': convertToUnit(tickSize.value),\n direction: !vertical.value ? horizontalDirection.value : undefined,\n }}\n >\n <div\n class={[\n 'v-slider-track__background',\n trackColorClasses.value,\n {\n 'v-slider-track__background--opacity': !!color.value || !trackFillColor.value,\n },\n ]}\n style={{\n ...backgroundStyles.value,\n ...trackColorStyles.value,\n }}\n />\n <div\n class={[\n 'v-slider-track__fill',\n trackFillColorClasses.value,\n ]}\n style={{\n ...trackFillStyles.value,\n ...trackFillColorStyles.value,\n }}\n />\n\n { showTicks.value && (\n <div\n class={[\n 'v-slider-track__ticks',\n {\n 'v-slider-track__ticks--always-show': showTicks.value === 'always',\n },\n ]}\n >\n { computedTicks.value }\n </div>\n ) }\n </div>\n )\n }\n },\n})\n\nexport type VSliderTrack = InstanceType<typeof VSliderTrack>\n","// Styles\nimport './VSlider.sass'\n\n// Components\nimport { VInput } from '../VInput'\nimport { VSliderThumb } from './VSliderThumb'\nimport { VSliderTrack } from './VSliderTrack'\n\n// Composables\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { makeSliderProps, useSlider } from './slider'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Helpers\nimport { defineComponent } from '@/util'\n\n// Types\nimport { computed, ref } from 'vue'\nimport { filterInputProps, makeVInputProps } from '../VInput/VInput'\n\nexport const VSlider = defineComponent({\n name: 'VSlider',\n\n props: {\n ...makeFocusProps(),\n ...makeSliderProps(),\n ...makeVInputProps(),\n\n modelValue: {\n type: [Number, String],\n default: 0,\n },\n },\n\n emits: {\n 'update:focused': (value: boolean) => true,\n 'update:modelValue': (v: number) => true,\n },\n\n setup (props, { attrs, slots }) {\n const thumbContainerRef = ref()\n\n const {\n min,\n max,\n mousePressed,\n roundValue,\n onSliderMousedown,\n onSliderTouchstart,\n trackContainerRef,\n position,\n hasLabels,\n readonly,\n } = useSlider({\n props,\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n handleSliderMouseUp: newValue => model.value = roundValue(newValue),\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n handleMouseMove: newValue => model.value = roundValue(newValue),\n getActiveThumb: () => thumbContainerRef.value?.$el,\n })\n\n const model = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n v => {\n const value = typeof v === 'string' ? parseFloat(v) : v == null ? min.value : v\n\n return roundValue(value)\n },\n )\n\n const { isFocused, focus, blur } = useFocus(props)\n const trackStop = computed(() => position(model.value))\n\n return () => {\n const [inputProps, _] = filterInputProps(props)\n\n return (\n <VInput\n class={[\n 'v-slider',\n {\n 'v-slider--has-labels': !!slots['tick-label'] || hasLabels.value,\n 'v-slider--focused': isFocused.value,\n 'v-slider--pressed': mousePressed.value,\n 'v-slider--disabled': props.disabled,\n },\n ]}\n { ...inputProps }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({ id }) => (\n <div\n class=\"v-slider__container\"\n onMousedown={ !readonly.value ? onSliderMousedown : undefined }\n onTouchstartPassive={ !readonly.value ? onSliderTouchstart : undefined }\n >\n <input\n id={ id.value }\n name={ props.name || id.value }\n disabled={ props.disabled }\n readonly={ props.readonly }\n tabindex=\"-1\"\n value={ model.value }\n />\n\n <VSliderTrack\n ref={ trackContainerRef }\n start={ 0 }\n stop={ trackStop.value }\n >\n {{ 'tick-label': slots['tick-label'] }}\n </VSliderTrack>\n\n <VSliderThumb\n ref={ thumbContainerRef }\n focused={ isFocused.value }\n min={ min.value }\n max={ max.value }\n modelValue={ model.value }\n onUpdate:modelValue={ v => (model.value = v) }\n position={ trackStop.value }\n elevation={ props.elevation }\n onFocus={ focus }\n onBlur={ blur }\n >\n {{ 'thumb-label': slots['thumb-label'] }}\n </VSliderThumb>\n </div>\n ),\n }}\n </VInput>\n )\n }\n },\n})\n\nexport type VSlider = InstanceType<typeof VSlider>\n","// Utilities\nimport {\n HexToHSVA,\n HSLAtoHSVA,\n HSVAtoHex,\n HSVAtoHSLA,\n HSVAtoRGBA,\n parseHex,\n RGBAtoHSVA,\n} from '@/util/colorUtils'\n\n// Types\nimport type {\n HSLA,\n HSVA,\n RGBA,\n} from '@/util/colorUtils'\n\nfunction has (obj: object, key: string[]) {\n return key.every(k => obj.hasOwnProperty(k))\n}\n\nexport function parseColor (color: any): HSVA | null {\n if (!color) return null\n\n let hsva: HSVA | null = null\n\n if (typeof color === 'string') {\n const hex = parseHex(color)\n\n hsva = HexToHSVA(hex)\n }\n\n if (typeof color === 'object') {\n if (has(color, ['r', 'g', 'b'])) {\n hsva = RGBAtoHSVA(color)\n } else if (has(color, ['h', 's', 'l'])) {\n hsva = HSLAtoHSVA(color)\n } else if (has(color, ['h', 's', 'v'])) {\n hsva = color\n }\n }\n\n return hsva != null ? { ...hsva, a: hsva.a ?? 1 } : null\n}\n\nfunction stripAlpha (color: any, stripAlpha: boolean) {\n if (stripAlpha) {\n const { a, ...rest } = color\n\n return rest\n }\n\n return color\n}\n\nexport function extractColor (color: HSVA, input: any) {\n if (input == null || typeof input === 'string') {\n const hex = HSVAtoHex(color)\n\n if (color.a === 1) return hex.slice(0, 7)\n else return hex\n }\n\n if (typeof input === 'object') {\n let converted\n\n if (has(input, ['r', 'g', 'b'])) converted = HSVAtoRGBA(color)\n else if (has(input, ['h', 's', 'l'])) converted = HSVAtoHSLA(color)\n else if (has(input, ['h', 's', 'v'])) converted = color\n\n return stripAlpha(converted, !has(input, ['a']))\n }\n\n return color\n}\n\nexport function hasAlpha (color: any) {\n if (!color) return false\n\n if (typeof color === 'string') {\n return color.length > 7\n }\n\n if (typeof color === 'object') {\n return has(color, ['a']) || has(color, ['alpha'])\n }\n\n return false\n}\n\nexport const nullColor = { h: 0, s: 0, v: 1, a: 1 }\n\nexport type ColorPickerMode = {\n inputProps: Record<string, unknown>\n inputs: {\n [key: string]: any\n getValue: (color: any) => number | string\n getColor: (color: any, v: string) => any\n }[]\n from: (color: any) => HSVA\n to: (color: HSVA) => any\n}\n\nconst rgba: ColorPickerMode = {\n inputProps: {\n type: 'number',\n min: 0,\n },\n inputs: [\n {\n label: 'R',\n max: 255,\n step: 1,\n getValue: (c: RGBA) => Math.round(c.r),\n getColor: (c: RGBA, v: string): RGBA => ({ ...c, r: Number(v) }),\n },\n {\n label: 'G',\n max: 255,\n step: 1,\n getValue: (c: RGBA) => Math.round(c.g),\n getColor: (c: RGBA, v: string): RGBA => ({ ...c, g: Number(v) }),\n },\n {\n label: 'B',\n max: 255,\n step: 1,\n getValue: (c: RGBA) => Math.round(c.b),\n getColor: (c: RGBA, v: string): RGBA => ({ ...c, b: Number(v) }),\n },\n {\n label: 'A',\n max: 1,\n step: 0.01,\n getValue: (c: RGBA) => Math.round(c.a * 100) / 100,\n getColor: (c: RGBA, v: string): RGBA => ({ ...c, a: Number(v) }),\n },\n ],\n to: HSVAtoRGBA,\n from: RGBAtoHSVA,\n}\n\nconst rgb = {\n ...rgba,\n inputs: rgba.inputs?.slice(0, 3),\n}\n\nconst hsla: ColorPickerMode = {\n inputProps: {\n type: 'number',\n min: 0,\n },\n inputs: [\n {\n label: 'H',\n max: 360,\n step: 1,\n getValue: (c: HSLA) => Math.round(c.h),\n getColor: (c: HSLA, v: string): HSLA => ({ ...c, h: Number(v) }),\n },\n {\n label: 'S',\n max: 1,\n step: 0.01,\n getValue: (c: HSLA) => Math.round(c.s * 100) / 100,\n getColor: (c: HSLA, v: string): HSLA => ({ ...c, s: Number(v) }),\n },\n {\n label: 'L',\n max: 1,\n step: 0.01,\n getValue: (c: HSLA) => Math.round(c.l * 100) / 100,\n getColor: (c: HSLA, v: string): HSLA => ({ ...c, l: Number(v) }),\n },\n {\n label: 'A',\n max: 1,\n step: 0.01,\n getValue: (c: HSLA) => Math.round(c.a * 100) / 100,\n getColor: (c: HSLA, v: string): HSLA => ({ ...c, a: Number(v) }),\n },\n ],\n to: HSVAtoHSLA,\n from: HSLAtoHSVA,\n}\n\nconst hsl = {\n ...hsla,\n inputs: hsla.inputs.slice(0, 3),\n}\n\nconst hexa: ColorPickerMode = {\n inputProps: {\n type: 'text',\n },\n inputs: [\n {\n label: 'HEXA',\n getValue: (c: string) => c,\n getColor: (c: string, v: string) => v,\n },\n ],\n to: HSVAtoHex,\n from: HexToHSVA,\n}\n\nconst hex = {\n ...hexa,\n inputs: [\n {\n label: 'HEX',\n getValue: (c: string) => c.slice(0, 7),\n getColor: (c: string, v: string) => v,\n },\n ],\n}\n\nexport const modes: Record<string, ColorPickerMode> = {\n rgb,\n rgba,\n hsl,\n hsla,\n hex,\n hexa,\n}\n","// Styles\nimport './VColorPickerPreview.sass'\n\n// Components\nimport { VSlider } from '@/components/VSlider'\n\n// Utilities\nimport { defineComponent, HSVAtoCSS } from '@/util'\nimport { nullColor } from './util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSVA } from '@/util'\n\nexport const VColorPickerPreview = defineComponent({\n name: 'VColorPickerPreview',\n\n props: {\n color: {\n type: Object as PropType<HSVA | null>,\n },\n disabled: Boolean,\n hideAlpha: Boolean,\n },\n\n emits: {\n 'update:color': (color: HSVA) => true,\n },\n\n setup (props, { emit }) {\n return () => (\n <div\n class={[\n 'v-color-picker-preview',\n {\n 'v-color-picker-preview--hide-alpha': props.hideAlpha,\n },\n ]}\n >\n <div class=\"v-color-picker-preview__dot\">\n <div style={{ background: HSVAtoCSS(props.color ?? nullColor) }} />\n </div>\n <div class=\"v-color-picker-preview__sliders\">\n <VSlider\n class=\"v-color-picker-preview__track v-color-picker-preview__hue\"\n modelValue={ props.color?.h }\n onUpdate:modelValue={ h => emit('update:color', { ...(props.color ?? nullColor), h }) }\n step={ 0 }\n min={ 0 }\n max={ 360 }\n disabled={ props.disabled }\n thumbSize={ 14 }\n trackSize={ 8 }\n trackFillColor=\"white\"\n hideDetails\n />\n { !props.hideAlpha && (\n <VSlider\n class=\"v-color-picker-preview__track v-color-picker-preview__alpha\"\n modelValue={ props.color?.a }\n onUpdate:modelValue={ a => emit('update:color', { ...(props.color ?? nullColor), a }) }\n step={ 0 }\n min={ 0 }\n max={ 1 }\n disabled={ props.disabled }\n thumbSize={ 14 }\n trackSize={ 8 }\n trackFillColor=\"white\"\n hideDetails\n />\n ) }\n </div>\n </div>\n )\n },\n})\n","// Styles\nimport './VColorPickerCanvas.sass'\n\n// Utilities\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { clamp, convertToUnit, defineComponent, getEventCoordinates } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSVA } from '@/util'\n\nexport const VColorPickerCanvas = defineComponent({\n name: 'VColorPickerCanvas',\n\n props: {\n color: {\n type: Object as PropType<HSVA | null>,\n },\n disabled: Boolean,\n dotSize: {\n type: [Number, String],\n default: 10,\n },\n height: {\n type: [Number, String],\n default: 150,\n },\n width: {\n type: [Number, String],\n default: 300,\n },\n },\n\n emits: {\n 'update:color': (color: HSVA) => true,\n 'update:position': (hue: any) => true,\n },\n\n setup (props, { emit }) {\n const isInteracting = ref(false)\n const isOutsideUpdate = ref(false)\n const dotPosition = ref({ x: 0, y: 0 })\n\n const dotStyles = computed(() => {\n const { x, y } = dotPosition.value\n const radius = parseInt(props.dotSize, 10) / 2\n\n return {\n width: convertToUnit(props.dotSize),\n height: convertToUnit(props.dotSize),\n transform: `translate(${convertToUnit(x - radius)}, ${convertToUnit(y - radius)})`,\n }\n })\n\n const canvasRef = ref<HTMLCanvasElement | null>()\n\n function updateDotPosition (x: number, y: number, rect: DOMRect) {\n const { left, top, width, height } = rect\n dotPosition.value = {\n x: clamp(x - left, 0, width),\n y: clamp(y - top, 0, height),\n }\n }\n\n function handleClick (e: MouseEvent) {\n if (props.disabled || !canvasRef.value) return\n\n updateDotPosition(e.clientX, e.clientY, canvasRef.value.getBoundingClientRect())\n }\n\n function handleMouseDown (e: MouseEvent | TouchEvent) {\n // To prevent selection while moving cursor\n e.preventDefault()\n\n if (props.disabled) return\n\n isInteracting.value = true\n\n window.addEventListener('mousemove', handleMouseMove)\n window.addEventListener('mouseup', handleMouseUp)\n window.addEventListener('touchmove', handleMouseMove)\n window.addEventListener('touchend', handleMouseUp)\n }\n\n function handleMouseMove (e: MouseEvent | TouchEvent) {\n if (props.disabled || !canvasRef.value) return\n\n isInteracting.value = true\n\n const coords = getEventCoordinates(e)\n\n updateDotPosition(coords.clientX, coords.clientY, canvasRef.value.getBoundingClientRect())\n }\n\n function handleMouseUp () {\n window.removeEventListener('mousemove', handleMouseMove)\n window.removeEventListener('mouseup', handleMouseUp)\n window.removeEventListener('touchmove', handleMouseMove)\n window.removeEventListener('touchend', handleMouseUp)\n }\n\n watch(dotPosition, () => {\n if (isOutsideUpdate.value) {\n isOutsideUpdate.value = false\n return\n }\n\n if (!canvasRef.value) return\n\n const { width, height } = canvasRef.value.getBoundingClientRect()\n const { x, y } = dotPosition.value\n\n emit('update:color', {\n h: props.color?.h ?? 0,\n s: clamp(x, 0, width) / width,\n v: 1 - clamp(y, 0, height) / height,\n a: props.color?.a ?? 1,\n })\n })\n\n function updateCanvas () {\n if (!canvasRef.value) return\n\n const canvas = canvasRef.value\n const ctx = canvas.getContext('2d')\n\n if (!ctx) return\n\n const saturationGradient = ctx.createLinearGradient(0, 0, canvas.width, 0)\n saturationGradient.addColorStop(0, 'hsla(0, 0%, 100%, 1)') // white\n saturationGradient.addColorStop(1, `hsla(${props.color?.h ?? 0}, 100%, 50%, 1)`)\n ctx.fillStyle = saturationGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n\n const valueGradient = ctx.createLinearGradient(0, 0, 0, canvas.height)\n valueGradient.addColorStop(0, 'hsla(0, 0%, 100%, 0)') // transparent\n valueGradient.addColorStop(1, 'hsla(0, 0%, 0%, 1)') // black\n ctx.fillStyle = valueGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n }\n\n watch(() => props.color?.h, updateCanvas, { immediate: true })\n\n watch(() => props.color, () => {\n if (isInteracting.value) {\n isInteracting.value = false\n return\n }\n\n if (!props.color) return\n\n isOutsideUpdate.value = true\n\n dotPosition.value = {\n x: props.color.s * parseInt(props.width, 10),\n y: (1 - props.color.v) * parseInt(props.height, 10),\n }\n }, { deep: true, immediate: true })\n\n onMounted(() => updateCanvas())\n\n return () => (\n <div\n class=\"v-color-picker-canvas\"\n style={{\n width: convertToUnit(props.width),\n height: convertToUnit(props.height),\n }}\n onClick={ handleClick }\n onMousedown={ handleMouseDown }\n onTouchstart={ handleMouseDown }\n >\n <canvas\n ref={ canvasRef }\n width={ props.width }\n height={ props.height }\n />\n <div\n class={[\n 'v-color-picker-canvas__dot',\n {\n 'v-color-picker-canvas__dot--disabled': props.disabled,\n },\n ]}\n style={ dotStyles.value }\n />\n </div>\n )\n },\n})\n","// Styles\nimport './VColorPickerEdit.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Utilities\nimport { computed } from 'vue'\nimport { defineComponent } from '@/util'\nimport { modes } from './util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSVA } from '@/util/colorUtils'\n\nconst VColorPickerInput = ({ label, ...rest }: any) => {\n return (\n <div\n class=\"v-color-picker-edit__input\"\n >\n <input {...rest} />\n <span>{ label }</span>\n </div>\n )\n}\n\nexport const VColorPickerEdit = defineComponent({\n name: 'VColorPickerEdit',\n\n props: {\n color: Object as PropType<HSVA | null>,\n disabled: Boolean,\n mode: {\n type: String,\n default: 'rgba',\n validator: (v: string) => Object.keys(modes).includes(v),\n },\n modes: {\n type: Array as PropType<string[]>,\n default: () => Object.keys(modes),\n validator: (v: any) => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m)),\n },\n },\n\n emits: {\n 'update:color': (color: HSVA) => true,\n 'update:mode': (mode: string) => true,\n },\n\n setup (props, { emit }) {\n const enabledModes = computed(() => {\n return props.modes.map(key => ({ ...modes[key], name: key }))\n })\n\n const inputs = computed(() => {\n const mode = enabledModes.value.find(m => m.name === props.mode)\n\n if (!mode) return []\n\n const color = props.color ? mode.to(props.color) : {}\n\n return mode.inputs?.map(({ getValue, getColor, ...inputProps }) => {\n return {\n ...mode.inputProps,\n ...inputProps,\n disabled: props.disabled,\n value: getValue(color),\n onChange: (e: InputEvent) => {\n const target = e.target as HTMLInputElement | null\n\n if (!target) return\n\n emit('update:color', mode.from(getColor(color, target.value)))\n },\n }\n })\n })\n\n return () => (\n <div\n class=\"v-color-picker-edit\"\n >\n { inputs.value?.map(props => (\n <VColorPickerInput {...props} />\n )) }\n { enabledModes.value.length > 1 && (\n <VBtn\n icon=\"$unfold\"\n size=\"x-small\"\n variant=\"plain\"\n onClick={ () => {\n const mi = enabledModes.value.findIndex(m => m.name === props.mode)\n\n emit('update:mode', enabledModes.value[(mi + 1) % enabledModes.value.length].name)\n } }\n />\n ) }\n </div>\n )\n },\n})\n","const red = Object.freeze({\n base: '#f44336',\n lighten5: '#ffebee',\n lighten4: '#ffcdd2',\n lighten3: '#ef9a9a',\n lighten2: '#e57373',\n lighten1: '#ef5350',\n darken1: '#e53935',\n darken2: '#d32f2f',\n darken3: '#c62828',\n darken4: '#b71c1c',\n accent1: '#ff8a80',\n accent2: '#ff5252',\n accent3: '#ff1744',\n accent4: '#d50000',\n})\n\nconst pink = Object.freeze({\n base: '#e91e63',\n lighten5: '#fce4ec',\n lighten4: '#f8bbd0',\n lighten3: '#f48fb1',\n lighten2: '#f06292',\n lighten1: '#ec407a',\n darken1: '#d81b60',\n darken2: '#c2185b',\n darken3: '#ad1457',\n darken4: '#880e4f',\n accent1: '#ff80ab',\n accent2: '#ff4081',\n accent3: '#f50057',\n accent4: '#c51162',\n})\n\nconst purple = Object.freeze({\n base: '#9c27b0',\n lighten5: '#f3e5f5',\n lighten4: '#e1bee7',\n lighten3: '#ce93d8',\n lighten2: '#ba68c8',\n lighten1: '#ab47bc',\n darken1: '#8e24aa',\n darken2: '#7b1fa2',\n darken3: '#6a1b9a',\n darken4: '#4a148c',\n accent1: '#ea80fc',\n accent2: '#e040fb',\n accent3: '#d500f9',\n accent4: '#aa00ff',\n})\n\nconst deepPurple = Object.freeze({\n base: '#673ab7',\n lighten5: '#ede7f6',\n lighten4: '#d1c4e9',\n lighten3: '#b39ddb',\n lighten2: '#9575cd',\n lighten1: '#7e57c2',\n darken1: '#5e35b1',\n darken2: '#512da8',\n darken3: '#4527a0',\n darken4: '#311b92',\n accent1: '#b388ff',\n accent2: '#7c4dff',\n accent3: '#651fff',\n accent4: '#6200ea',\n})\n\nconst indigo = Object.freeze({\n base: '#3f51b5',\n lighten5: '#e8eaf6',\n lighten4: '#c5cae9',\n lighten3: '#9fa8da',\n lighten2: '#7986cb',\n lighten1: '#5c6bc0',\n darken1: '#3949ab',\n darken2: '#303f9f',\n darken3: '#283593',\n darken4: '#1a237e',\n accent1: '#8c9eff',\n accent2: '#536dfe',\n accent3: '#3d5afe',\n accent4: '#304ffe',\n})\n\nconst blue = Object.freeze({\n base: '#2196f3',\n lighten5: '#e3f2fd',\n lighten4: '#bbdefb',\n lighten3: '#90caf9',\n lighten2: '#64b5f6',\n lighten1: '#42a5f5',\n darken1: '#1e88e5',\n darken2: '#1976d2',\n darken3: '#1565c0',\n darken4: '#0d47a1',\n accent1: '#82b1ff',\n accent2: '#448aff',\n accent3: '#2979ff',\n accent4: '#2962ff',\n})\n\nconst lightBlue = Object.freeze({\n base: '#03a9f4',\n lighten5: '#e1f5fe',\n lighten4: '#b3e5fc',\n lighten3: '#81d4fa',\n lighten2: '#4fc3f7',\n lighten1: '#29b6f6',\n darken1: '#039be5',\n darken2: '#0288d1',\n darken3: '#0277bd',\n darken4: '#01579b',\n accent1: '#80d8ff',\n accent2: '#40c4ff',\n accent3: '#00b0ff',\n accent4: '#0091ea',\n})\n\nconst cyan = Object.freeze({\n base: '#00bcd4',\n lighten5: '#e0f7fa',\n lighten4: '#b2ebf2',\n lighten3: '#80deea',\n lighten2: '#4dd0e1',\n lighten1: '#26c6da',\n darken1: '#00acc1',\n darken2: '#0097a7',\n darken3: '#00838f',\n darken4: '#006064',\n accent1: '#84ffff',\n accent2: '#18ffff',\n accent3: '#00e5ff',\n accent4: '#00b8d4',\n})\n\nconst teal = Object.freeze({\n base: '#009688',\n lighten5: '#e0f2f1',\n lighten4: '#b2dfdb',\n lighten3: '#80cbc4',\n lighten2: '#4db6ac',\n lighten1: '#26a69a',\n darken1: '#00897b',\n darken2: '#00796b',\n darken3: '#00695c',\n darken4: '#004d40',\n accent1: '#a7ffeb',\n accent2: '#64ffda',\n accent3: '#1de9b6',\n accent4: '#00bfa5',\n})\n\nconst green = Object.freeze({\n base: '#4caf50',\n lighten5: '#e8f5e9',\n lighten4: '#c8e6c9',\n lighten3: '#a5d6a7',\n lighten2: '#81c784',\n lighten1: '#66bb6a',\n darken1: '#43a047',\n darken2: '#388e3c',\n darken3: '#2e7d32',\n darken4: '#1b5e20',\n accent1: '#b9f6ca',\n accent2: '#69f0ae',\n accent3: '#00e676',\n accent4: '#00c853',\n})\n\nconst lightGreen = Object.freeze({\n base: '#8bc34a',\n lighten5: '#f1f8e9',\n lighten4: '#dcedc8',\n lighten3: '#c5e1a5',\n lighten2: '#aed581',\n lighten1: '#9ccc65',\n darken1: '#7cb342',\n darken2: '#689f38',\n darken3: '#558b2f',\n darken4: '#33691e',\n accent1: '#ccff90',\n accent2: '#b2ff59',\n accent3: '#76ff03',\n accent4: '#64dd17',\n})\n\nconst lime = Object.freeze({\n base: '#cddc39',\n lighten5: '#f9fbe7',\n lighten4: '#f0f4c3',\n lighten3: '#e6ee9c',\n lighten2: '#dce775',\n lighten1: '#d4e157',\n darken1: '#c0ca33',\n darken2: '#afb42b',\n darken3: '#9e9d24',\n darken4: '#827717',\n accent1: '#f4ff81',\n accent2: '#eeff41',\n accent3: '#c6ff00',\n accent4: '#aeea00',\n})\n\nconst yellow = Object.freeze({\n base: '#ffeb3b',\n lighten5: '#fffde7',\n lighten4: '#fff9c4',\n lighten3: '#fff59d',\n lighten2: '#fff176',\n lighten1: '#ffee58',\n darken1: '#fdd835',\n darken2: '#fbc02d',\n darken3: '#f9a825',\n darken4: '#f57f17',\n accent1: '#ffff8d',\n accent2: '#ffff00',\n accent3: '#ffea00',\n accent4: '#ffd600',\n})\n\nconst amber = Object.freeze({\n base: '#ffc107',\n lighten5: '#fff8e1',\n lighten4: '#ffecb3',\n lighten3: '#ffe082',\n lighten2: '#ffd54f',\n lighten1: '#ffca28',\n darken1: '#ffb300',\n darken2: '#ffa000',\n darken3: '#ff8f00',\n darken4: '#ff6f00',\n accent1: '#ffe57f',\n accent2: '#ffd740',\n accent3: '#ffc400',\n accent4: '#ffab00',\n})\n\nconst orange = Object.freeze({\n base: '#ff9800',\n lighten5: '#fff3e0',\n lighten4: '#ffe0b2',\n lighten3: '#ffcc80',\n lighten2: '#ffb74d',\n lighten1: '#ffa726',\n darken1: '#fb8c00',\n darken2: '#f57c00',\n darken3: '#ef6c00',\n darken4: '#e65100',\n accent1: '#ffd180',\n accent2: '#ffab40',\n accent3: '#ff9100',\n accent4: '#ff6d00',\n})\n\nconst deepOrange = Object.freeze({\n base: '#ff5722',\n lighten5: '#fbe9e7',\n lighten4: '#ffccbc',\n lighten3: '#ffab91',\n lighten2: '#ff8a65',\n lighten1: '#ff7043',\n darken1: '#f4511e',\n darken2: '#e64a19',\n darken3: '#d84315',\n darken4: '#bf360c',\n accent1: '#ff9e80',\n accent2: '#ff6e40',\n accent3: '#ff3d00',\n accent4: '#dd2c00',\n})\n\nconst brown = Object.freeze({\n base: '#795548',\n lighten5: '#efebe9',\n lighten4: '#d7ccc8',\n lighten3: '#bcaaa4',\n lighten2: '#a1887f',\n lighten1: '#8d6e63',\n darken1: '#6d4c41',\n darken2: '#5d4037',\n darken3: '#4e342e',\n darken4: '#3e2723',\n})\n\nconst blueGrey = Object.freeze({\n base: '#607d8b',\n lighten5: '#eceff1',\n lighten4: '#cfd8dc',\n lighten3: '#b0bec5',\n lighten2: '#90a4ae',\n lighten1: '#78909c',\n darken1: '#546e7a',\n darken2: '#455a64',\n darken3: '#37474f',\n darken4: '#263238',\n})\n\nconst grey = Object.freeze({\n base: '#9e9e9e',\n lighten5: '#fafafa',\n lighten4: '#f5f5f5',\n lighten3: '#eeeeee',\n lighten2: '#e0e0e0',\n lighten1: '#bdbdbd',\n darken1: '#757575',\n darken2: '#616161',\n darken3: '#424242',\n darken4: '#212121',\n})\n\nconst shades = Object.freeze({\n black: '#000000',\n white: '#ffffff',\n transparent: 'transparent',\n})\n\nexport default Object.freeze({\n red,\n pink,\n purple,\n deepPurple,\n indigo,\n blue,\n lightBlue,\n cyan,\n teal,\n green,\n lightGreen,\n lime,\n yellow,\n amber,\n orange,\n deepOrange,\n brown,\n blueGrey,\n grey,\n shades,\n})\n","// Styles\nimport './VColorPickerSwatches.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\n\n// Utilities\nimport { convertToUnit, deepEqual, defineComponent, getContrast } from '@/util'\nimport colors from '@/util/colors'\nimport { parseColor } from './util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSVA } from '@/util'\n\nfunction parseDefaultColors (colors: Record<string, Record<string, string>>) {\n return Object.keys(colors).map(key => {\n const color = colors[key]\n return color.base ? [\n color.base,\n color.darken4,\n color.darken3,\n color.darken2,\n color.darken1,\n color.lighten1,\n color.lighten2,\n color.lighten3,\n color.lighten4,\n color.lighten5,\n ] : [\n color.black,\n color.white,\n color.transparent,\n ]\n })\n}\n\nexport const VColorPickerSwatches = defineComponent({\n name: 'VColorPickerSwatches',\n\n props: {\n swatches: {\n type: Array as PropType<string[][]>,\n default: () => parseDefaultColors(colors),\n },\n disabled: Boolean,\n color: Object as PropType<HSVA | null>,\n maxHeight: [Number, String],\n },\n\n emits: {\n 'update:color': (color: HSVA) => true,\n },\n\n setup (props, { emit }) {\n return () => (\n <div\n class=\"v-color-picker-swatches\"\n style={{\n maxHeight: convertToUnit(props.maxHeight),\n }}\n >\n <div>\n { props.swatches.map(swatch => (\n <div class=\"v-color-picker-swatches__swatch\">\n { swatch.map(color => {\n const hsva = parseColor(color)\n\n return (\n <div\n class=\"v-color-picker-swatches__color\"\n onClick={() => hsva && emit('update:color', hsva)}\n >\n <div style={{ background: color }}>\n { props.color && deepEqual(props.color, hsva)\n ? <VIcon size=\"x-small\" icon=\"$success\" color={getContrast(color, '#FFFFFF') > 2 ? 'white' : 'black' } />\n : undefined\n }\n </div>\n </div>\n )\n }) }\n </div>\n ))}\n </div>\n </div>\n )\n },\n})\n","// Styles\nimport './VColorPicker.sass'\n\n// Components\nimport { VSheet } from '@/components/VSheet'\nimport { VColorPickerPreview } from './VColorPickerPreview'\nimport { VColorPickerCanvas } from './VColorPickerCanvas'\nimport { VColorPickerEdit } from './VColorPickerEdit'\nimport { VColorPickerSwatches } from './VColorPickerSwatches'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeThemeProps } from '@/composables/theme'\n\n// Utilities\nimport { onMounted, ref } from 'vue'\nimport { defineComponent, HSVAtoCSS } from '@/util'\nimport { extractColor, modes, nullColor, parseColor } from './util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { HSVA } from '@/util'\n\nexport const VColorPicker = defineComponent({\n name: 'VColorPicker',\n\n inheritAttrs: false,\n\n props: {\n canvasHeight: {\n type: [String, Number],\n default: 150,\n },\n disabled: Boolean,\n dotSize: {\n type: [Number, String],\n default: 10,\n },\n hideCanvas: Boolean,\n hideSliders: Boolean,\n hideInputs: Boolean,\n mode: {\n type: String,\n default: 'rgba',\n validator: (v: string) => Object.keys(modes).includes(v),\n },\n modes: {\n type: Array as PropType<string[]>,\n default: () => Object.keys(modes),\n validator: (v: any) => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m)),\n },\n showSwatches: Boolean,\n swatches: Array as PropType<string[][]>,\n swatchesMaxHeight: {\n type: [Number, String],\n default: 150,\n },\n modelValue: {\n type: [Object, String] as PropType<Record<string, unknown> | string | undefined | null>,\n },\n width: {\n type: [Number, String],\n default: 300,\n },\n\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (color: any) => true,\n 'update:mode': (mode: string) => true,\n },\n\n setup (props) {\n const mode = useProxiedModel(props, 'mode')\n const lastPickedColor = ref<HSVA | null>(null)\n const currentColor = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n v => {\n let c = parseColor(v)\n\n if (!c) return null\n\n if (lastPickedColor.value) {\n c = { ...c, h: lastPickedColor.value.h }\n lastPickedColor.value = null\n }\n\n return c\n },\n v => {\n if (!v) return null\n\n return extractColor(v, props.modelValue)\n }\n )\n\n const updateColor = (hsva: HSVA) => {\n currentColor.value = hsva\n lastPickedColor.value = hsva\n }\n\n onMounted(() => {\n if (!props.modes.includes(mode.value)) mode.value = props.modes[0]\n })\n\n return () => (\n <VSheet\n rounded={ props.rounded }\n elevation={ props.elevation }\n theme={ props.theme }\n class={[\n 'v-color-picker',\n ]}\n style={{\n '--v-color-picker-color-hsv': HSVAtoCSS({ ...(currentColor.value ?? nullColor), a: 1 }),\n }}\n maxWidth={ props.width }\n >\n { !props.hideCanvas && (\n <VColorPickerCanvas\n color={ currentColor.value }\n onUpdate:color={ updateColor }\n disabled={ props.disabled }\n dotSize={ props.dotSize }\n width={ props.width }\n height={ props.canvasHeight }\n />\n ) }\n { (!props.hideSliders || !props.hideInputs) && (\n <div class=\"v-color-picker__controls\">\n { !props.hideSliders && (\n <VColorPickerPreview\n color={ currentColor.value }\n onUpdate:color={ updateColor }\n hideAlpha={ !mode.value.endsWith('a') }\n disabled={ props.disabled }\n />\n ) }\n { !props.hideInputs && (\n <VColorPickerEdit\n modes={ props.modes }\n mode={ mode.value }\n onUpdate:mode={ m => mode.value = m }\n color={ currentColor.value }\n onUpdate:color={ updateColor }\n disabled={ props.disabled }\n />\n ) }\n </div>\n ) }\n { props.showSwatches && (\n <VColorPickerSwatches\n color={ currentColor.value }\n onUpdate:color={ updateColor }\n maxHeight={ props.swatchesMaxHeight }\n swatches={ props.swatches }\n disabled={ props.disabled }\n />\n ) }\n </VSheet>\n )\n },\n})\n\nexport type VColorPicker = InstanceType<typeof VColorPicker>\n","// Styles\nimport './VCombobox.sass'\n\n// Components\nimport { makeSelectProps } from '@/components/VSelect/VSelect'\nimport { VChip } from '@/components/VChip'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VList, VListItem } from '@/components/VList'\nimport { VMenu } from '@/components/VMenu'\nimport { VTextField } from '@/components/VTextField'\n\n// Composables\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { makeTransitionProps } from '@/composables/transition'\nimport { transformItem, useItems } from '@/composables/items'\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useTextColor } from '@/composables/color'\n\n// Utility\nimport { computed, nextTick, ref, watch } from 'vue'\nimport { genericComponent, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { FilterMatch } from '@/composables/filter'\nimport type { InternalItem } from '@/composables/items'\nimport type { PropType } from 'vue'\nimport type { MakeSlots } from '@/util'\n\nfunction highlightResult (text: string, matches: FilterMatch, length: number) {\n if (Array.isArray(matches)) throw new Error('Multiple matches is not implemented')\n\n return typeof matches === 'number' && ~matches\n ? (\n <>\n <span class=\"v-combobox__unmask\">{ text.substr(0, matches) }</span>\n <span class=\"v-combobox__mask\">{ text.substr(matches, length) }</span>\n <span class=\"v-combobox__unmask\">{ text.substr(matches + length) }</span>\n </>\n )\n : text\n}\n\ntype Primitive = string | number | boolean | symbol\n\ntype Val <T, ReturnObject extends boolean> = T extends Primitive\n ? T\n : (ReturnObject extends true ? T : any)\n\ntype Value <T, ReturnObject extends boolean, Multiple extends boolean> =\n Multiple extends true\n ? Val<T, ReturnObject>[]\n : Val<T, ReturnObject>\n\nexport const VCombobox = genericComponent<new <\n T,\n ReturnObject extends boolean = true,\n Multiple extends boolean = false,\n V extends Value<T, ReturnObject, Multiple> = Value<T, ReturnObject, Multiple>\n>() => {\n $props: {\n items?: readonly T[]\n returnObject?: ReturnObject\n multiple?: Multiple\n modelValue?: Readonly<V>\n 'onUpdate:modelValue'?: (val: V) => void\n }\n $slots: VInputSlots & VFieldSlots & MakeSlots<{\n chip: [{ item: T, index: number, props: Record<string, unknown> }]\n selection: [{ item: T, index: number }]\n 'no-data': []\n }>\n}>()({\n name: 'VCombobox',\n\n props: {\n // TODO: implement post keyboard support\n // autoSelectFirst: Boolean,\n delimiters: Array as PropType<string[]>,\n\n ...makeFilterProps({ filterKeys: ['title'] }),\n ...makeSelectProps({ hideNoData: true, returnObject: true }),\n ...makeTransitionProps({ transition: false }),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n 'update:searchInput': (val: string) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const vTextFieldRef = ref()\n const isFocused = ref(false)\n const isPristine = ref(true)\n const menu = ref(false)\n const selectionIndex = ref(-1)\n const color = computed(() => vTextFieldRef.value?.color)\n const { items, transformIn, transformOut } = useItems(props)\n const { textColorClasses, textColorStyles } = useTextColor(color)\n const model = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => transformIn(wrapInArray(v || [])),\n v => {\n const transformed = transformOut(v)\n return props.multiple ? transformed : transformed[0]\n }\n )\n const _search = ref('')\n const search = computed<string>({\n get: () => {\n if (props.multiple) return _search.value\n\n const item = items.value.find(({ props }) => props.value === model.value[0])\n\n return item?.props.value\n },\n set: val => {\n if (props.multiple) {\n _search.value = val\n } else {\n model.value = [transformItem(props, val)]\n }\n\n if (val && props.multiple && props.delimiters?.length) {\n const values = val.split(new RegExp(`(?:${props.delimiters.join('|')})+`))\n if (values.length > 1) {\n values.forEach(v => {\n v = v.trim()\n if (v) select(transformItem(props, v))\n })\n _search.value = ''\n }\n }\n\n if (!val) selectionIndex.value = -1\n if (isFocused.value) menu.value = true\n\n isPristine.value = !val\n },\n })\n watch(_search, value => {\n emit('update:searchInput', value)\n })\n\n const { filteredItems } = useFilter(props, items, computed(() => isPristine.value ? undefined : search.value))\n\n const selections = computed(() => {\n return model.value.map(v => {\n return items.value.find(item => item.value === v.value) || v\n })\n })\n const selected = computed(() => selections.value.map(selection => selection.props.value))\n const selection = computed(() => selections.value[selectionIndex.value])\n\n function onClear (e: MouseEvent) {\n model.value = []\n\n if (props.openOnClear) {\n menu.value = true\n }\n }\n function onClickControl () {\n if (props.hideNoData && !filteredItems.value.length) return\n\n menu.value = true\n }\n function onKeydown (e: KeyboardEvent) {\n const selectionStart = vTextFieldRef.value.selectionStart\n const length = selected.value.length\n\n if (selectionIndex.value > -1) e.preventDefault()\n\n if (['Enter', 'ArrowDown'].includes(e.key)) {\n menu.value = true\n }\n\n if (['Escape'].includes(e.key)) {\n menu.value = false\n }\n\n if (['Enter', 'Escape', 'Tab'].includes(e.key)) {\n isPristine.value = true\n }\n\n if (!props.multiple) return\n\n if (['Backspace', 'Delete'].includes(e.key)) {\n if (selectionIndex.value < 0) {\n if (e.key === 'Backspace' && !search.value) {\n selectionIndex.value = length - 1\n }\n\n return\n }\n\n select(selection.value)\n\n nextTick(() => !selection.value && (selectionIndex.value = length - 2))\n }\n\n if (e.key === 'ArrowLeft') {\n if (selectionIndex.value < 0 && selectionStart > 0) return\n\n const prev = selectionIndex.value > -1\n ? selectionIndex.value - 1\n : length - 1\n\n if (selections.value[prev]) {\n selectionIndex.value = prev\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value.setSelectionRange(search.value.length, search.value.length)\n }\n }\n\n if (e.key === 'ArrowRight') {\n if (selectionIndex.value < 0) return\n\n const next = selectionIndex.value + 1\n\n if (selections.value[next]) {\n selectionIndex.value = next\n } else {\n selectionIndex.value = -1\n vTextFieldRef.value.setSelectionRange(0, 0)\n }\n }\n\n if (e.key === 'Enter') {\n select(transformItem(props, search.value))\n search.value = ''\n }\n }\n function onInput (e: InputEvent) {\n search.value = (e.target as HTMLInputElement).value\n }\n function onAfterLeave () {\n if (isFocused.value) isPristine.value = true\n }\n function select (item: InternalItem) {\n if (props.multiple) {\n const index = selected.value.findIndex(selection => selection === item.value)\n\n if (index === -1) {\n model.value = [...model.value, item]\n } else {\n const value = [...model.value]\n value.splice(index, 1)\n model.value = value\n }\n\n search.value = ''\n } else {\n search.value = item.title\n\n // watch for search watcher to trigger\n nextTick(() => {\n menu.value = false\n isPristine.value = true\n })\n }\n }\n\n watch(filteredItems, val => {\n if (!val.length && props.hideNoData) menu.value = false\n })\n\n watch(isFocused, val => {\n if (val) {\n selectionIndex.value = -1\n } else {\n menu.value = false\n\n if (!props.multiple || !search.value) return\n\n model.value = [...model.value, transformItem(props, search.value)]\n search.value = ''\n }\n })\n\n useRender(() => {\n const hasChips = !!(props.chips || slots.chip)\n\n return (\n <VTextField\n ref={ vTextFieldRef }\n modelValue={ search.value }\n onInput={ onInput }\n class={[\n 'v-combobox',\n {\n 'v-combobox--active-menu': menu.value,\n 'v-combobox--chips': !!props.chips,\n 'v-combobox--selecting-index': selectionIndex.value > -1,\n [`v-combobox--${props.multiple ? 'multiple' : 'single'}`]: true,\n },\n ]}\n appendInnerIcon={ props.items.length ? props.menuIcon : undefined }\n dirty={ selected.value.length > 0 }\n onClick:clear={ onClear }\n onClick:control={ onClickControl }\n onClick:input={ onClickControl }\n onFocus={ () => isFocused.value = true }\n onBlur={ () => isFocused.value = false }\n onKeydown={ onKeydown }\n >\n {{\n ...slots,\n default: () => (\n <>\n <VMenu\n v-model={ menu.value }\n activator=\"parent\"\n contentClass=\"v-combobox__content\"\n eager={ props.eager }\n openOnClick={ false }\n transition={ props.transition }\n onAfterLeave={ onAfterLeave }\n >\n <VList\n selected={ selected.value }\n selectStrategy={ props.multiple ? 'independent' : 'single-independent' }\n >\n { !filteredItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? (\n <VListItem title={ t(props.noDataText) } />\n )) }\n\n { filteredItems.value.map(({ item, matches }) => (\n <VListItem\n { ...item.props }\n onMousedown={ (e: MouseEvent) => e.preventDefault() }\n onClick={ () => select(item) }\n >\n {{\n title: () => {\n return isPristine.value\n ? item.title\n : highlightResult(item.title, matches.title, search.value?.length ?? 0)\n },\n }}\n </VListItem>\n )) }\n </VList>\n </VMenu>\n\n { selections.value.map((selection, index) => {\n function onChipClose (e: Event) {\n e.stopPropagation()\n e.preventDefault()\n\n select(selection)\n }\n\n const slotProps = {\n 'onClick:close': onChipClose,\n modelValue: true,\n }\n\n return (\n <div\n class={[\n 'v-combobox__selection',\n index === selectionIndex.value && [\n 'v-combobox__selection--selected',\n textColorClasses.value,\n ],\n ]}\n style={ index === selectionIndex.value ? textColorStyles.value : {} }\n >\n { hasChips ? (\n <VDefaultsProvider\n defaults={{\n VChip: {\n closable: props.closableChips,\n size: 'small',\n text: selection.props.title,\n },\n }}\n >\n { slots.chip\n ? slots.chip({ props: slotProps, item: selection.originalItem, index })\n : (<VChip { ...slotProps } />)\n }\n </VDefaultsProvider>\n ) : (\n slots.selection\n ? slots.selection({ item: selection.originalItem, index })\n : (\n <span class=\"v-combobox__selection-text\">\n { selection.props.title }\n { props.multiple && (index < selections.value.length - 1) && (\n <span class=\"v-combobox__selection-comma\">,</span>\n ) }\n </span>\n )\n ) }\n </div>\n )\n }) }\n </>\n ),\n }}\n </VTextField>\n )\n })\n\n return useForwardRef({\n isFocused,\n isPristine,\n menu,\n search,\n selectionIndex,\n filteredItems,\n select,\n }, vTextFieldRef)\n },\n})\n\nexport type VCombobox = InstanceType<typeof VCombobox>\n","// Styles\nimport './VDialog.sass'\n\n// Components\nimport { VDialogTransition } from '@/components/transitions'\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\n\n// Utilities\nimport { nextTick, ref, watch } from 'vue'\nimport { genericComponent, IN_BROWSER } from '@/util'\n\n// Types\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\n\nexport const VDialog = genericComponent<new () => {\n $slots: OverlaySlots\n}>()({\n name: 'VDialog',\n\n inheritAttrs: false,\n\n props: {\n fullscreen: Boolean,\n origin: {\n type: String,\n default: 'center center',\n },\n retainFocus: {\n type: Boolean,\n default: true,\n },\n scrollable: Boolean,\n modelValue: Boolean,\n\n ...makeDimensionProps({ width: 'auto' }),\n ...makeTransitionProps({\n transition: { component: VDialogTransition },\n }),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { dimensionStyles } = useDimension(props)\n const { scopeId } = useScopeId()\n\n const overlay = ref<VOverlay>()\n function onFocusin (e: FocusEvent) {\n const before = e.relatedTarget as HTMLElement | null\n const after = e.target as HTMLElement | null\n\n if (\n before !== after &&\n overlay.value?.contentEl &&\n // We're the topmost dialog\n overlay.value?.isTop &&\n // It isn't the document or the dialog body\n ![document, overlay.value.contentEl].includes(after!) &&\n // It isn't inside the dialog body\n !overlay.value.contentEl.contains(after)\n ) {\n const focusable = [...overlay.value.contentEl.querySelectorAll(\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => !el.hasAttribute('disabled')) as HTMLElement[]\n\n if (!focusable.length) return\n\n const firstElement = focusable[0]\n const lastElement = focusable[focusable.length - 1]\n\n if (before === firstElement) {\n lastElement.focus()\n } else {\n firstElement.focus()\n }\n }\n }\n\n if (IN_BROWSER) {\n watch(() => isActive.value && props.retainFocus, val => {\n val\n ? document.addEventListener('focusin', onFocusin)\n : document.removeEventListener('focusin', onFocusin)\n }, { immediate: true })\n }\n\n watch(isActive, async val => {\n await nextTick()\n if (val) {\n overlay.value!.contentEl?.focus({ preventScroll: true })\n } else {\n overlay.value!.activatorEl?.focus({ preventScroll: true })\n }\n })\n\n return () => {\n return (\n <VOverlay\n v-model={ isActive.value }\n class={[\n 'v-dialog',\n {\n 'v-dialog--fullscreen': props.fullscreen,\n 'v-dialog--scrollable': props.scrollable,\n },\n ]}\n style={ dimensionStyles.value }\n transition={ props.transition }\n ref={ overlay }\n aria-role=\"dialog\"\n aria-modal=\"true\"\n activatorProps={{\n 'aria-haspopup': 'dialog',\n 'aria-expanded': String(isActive.value),\n }}\n z-index={ 2400 }\n { ...scopeId }\n { ...attrs }\n v-slots={{\n default: slots.default,\n activator: slots.activator,\n }}\n />\n )\n }\n },\n})\n\nexport type VDialog = InstanceType<typeof VDialog>\n","// Styles\nimport './VExpansionPanel.sass'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { provideDefaults } from '@/composables/defaults'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey, PropType } from 'vue'\nimport type { GroupItemProvide } from '@/composables/group'\n\nexport const VExpansionPanelSymbol: InjectionKey<GroupItemProvide> = Symbol.for('vuetify:v-expansion-panel')\n\nconst allowedVariants = ['default', 'accordion', 'inset', 'popout'] as const\n\ntype Variant = typeof allowedVariants[number]\n\nexport const VExpansionPanels = defineComponent({\n name: 'VExpansionPanels',\n\n props: {\n color: String,\n variant: {\n type: String as PropType<Variant>,\n default: 'default',\n validator: (v: any) => allowedVariants.includes(v),\n },\n readonly: Boolean,\n\n ...makeGroupProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (val: unknown) => true,\n },\n\n setup (props, { slots }) {\n useGroup(props, VExpansionPanelSymbol)\n\n const { themeClasses } = provideTheme(props)\n\n const variantClass = computed(() => props.variant && `v-expansion-panels--variant-${props.variant}`)\n\n provideDefaults({\n VExpansionPanel: {\n color: toRef(props, 'color'),\n },\n VExpansionPanelTitle: {\n readonly: toRef(props, 'readonly'),\n },\n })\n\n useRender(() => (\n <props.tag\n class={[\n 'v-expansion-panels',\n themeClasses.value,\n variantClass.value,\n ]}\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VExpansionPanels = InstanceType<typeof VExpansionPanels>\n","// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VExpansionPanelSymbol } from './VExpansionPanels'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { IconValue } from '@/composables/icons'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { defineComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVExpansionPanelTitleProps = propsFactory({\n color: String,\n expandIcon: {\n type: IconValue,\n default: '$expand',\n },\n collapseIcon: {\n type: IconValue,\n default: '$collapse',\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false,\n },\n readonly: Boolean,\n})\n\nexport const VExpansionPanelTitle = defineComponent({\n name: 'VExpansionPanelTitle',\n\n directives: { Ripple },\n\n props: {\n ...makeVExpansionPanelTitleProps(),\n },\n\n setup (props, { slots }) {\n const expansionPanel = inject(VExpansionPanelSymbol)\n\n if (!expansionPanel) throw new Error('[Vuetify] v-expansion-panel-title needs to be placed inside v-expansion-panel')\n\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(props, 'color')\n\n const slotProps = computed(() => ({\n collapseIcon: props.collapseIcon,\n disabled: expansionPanel.disabled.value,\n expanded: expansionPanel.isSelected.value,\n expandIcon: props.expandIcon,\n readonly: props.readonly,\n }))\n\n useRender(() => (\n <button\n class={[\n 'v-expansion-panel-title',\n {\n 'v-expansion-panel-title--active': expansionPanel.isSelected.value,\n },\n backgroundColorClasses.value,\n ]}\n style={ backgroundColorStyles.value }\n type=\"button\"\n tabindex={ expansionPanel.disabled.value ? -1 : undefined }\n disabled={ expansionPanel.disabled.value }\n aria-expanded={ expansionPanel.isSelected.value }\n onClick={ !props.readonly ? expansionPanel.toggle : undefined }\n v-ripple={ props.ripple }\n >\n <div class=\"v-expansion-panel-title__overlay\" />\n\n { slots.default?.(slotProps.value) }\n\n { !props.hideActions && (\n <div class=\"v-expansion-panel-title__icon\">\n {\n slots.actions ? slots.actions(slotProps.value)\n : <VIcon icon={ expansionPanel.isSelected.value ? props.collapseIcon : props.expandIcon } />\n }\n </div>\n ) }\n </button>\n ))\n\n return {}\n },\n})\n\nexport type VExpansionPanelTitle = InstanceType<typeof VExpansionPanelTitle>\n","// Components\nimport { VExpandTransition } from '@/components/transitions'\nimport { VExpansionPanelSymbol } from './VExpansionPanels'\n\n// Composables\nimport { makeLazyProps, useLazy } from '@/composables/lazy'\n\n// Utilities\nimport { defineComponent, useRender } from '@/util'\nimport { inject } from 'vue'\n\nexport const VExpansionPanelText = defineComponent({\n name: 'VExpansionPanelText',\n\n props: {\n ...makeLazyProps(),\n },\n\n setup (props, { slots }) {\n const expansionPanel = inject(VExpansionPanelSymbol)\n\n if (!expansionPanel) throw new Error('[Vuetify] v-expansion-panel-text needs to be placed inside v-expansion-panel')\n\n const { hasContent, onAfterLeave } = useLazy(props, expansionPanel.isSelected)\n\n useRender(() => (\n <VExpandTransition onAfterLeave={ onAfterLeave }>\n <div\n class=\"v-expansion-panel-text\"\n v-show={ expansionPanel.isSelected.value }\n >\n { slots.default && hasContent.value && (\n <div class=\"v-expansion-panel-text__wrapper\">\n { slots.default?.() }\n </div>\n ) }\n </div>\n </VExpandTransition>\n ))\n\n return {}\n },\n})\n\nexport type VExpansionPanelText = InstanceType<typeof VExpansionPanelText>\n","// Components\nimport { makeVExpansionPanelTitleProps, VExpansionPanelTitle } from './VExpansionPanelTitle'\nimport { VExpansionPanelText } from './VExpansionPanelText'\nimport { VExpansionPanelSymbol } from './VExpansionPanels'\n\n// Composables\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeLazyProps } from '@/composables/lazy'\n\n// Utilities\nimport { computed, provide } from 'vue'\nimport { defineComponent, useRender } from '@/util'\n\nexport const VExpansionPanel = defineComponent({\n name: 'VExpansionPanel',\n\n props: {\n title: String,\n text: String,\n bgColor: String,\n\n ...makeElevationProps(),\n ...makeGroupItemProps(),\n ...makeLazyProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeVExpansionPanelTitleProps(),\n },\n\n setup (props, { slots }) {\n const groupItem = useGroupItem(props, VExpansionPanelSymbol)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(props, 'bgColor')\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const isDisabled = computed(() => groupItem?.disabled.value || props.disabled)\n\n const selectedIndices = computed(() => groupItem.group.items.value.reduce<number[]>((arr, item, index) => {\n if (groupItem.group.selected.value.includes(item.id)) arr.push(index)\n return arr\n }, []))\n\n const isBeforeSelected = computed(() => {\n const index = groupItem.group.items.value.findIndex(item => item.id === groupItem.id)\n return !groupItem.isSelected.value &&\n selectedIndices.value.some(selectedIndex => selectedIndex - index === 1)\n })\n\n const isAfterSelected = computed(() => {\n const index = groupItem.group.items.value.findIndex(item => item.id === groupItem.id)\n return !groupItem.isSelected.value &&\n selectedIndices.value.some(selectedIndex => selectedIndex - index === -1)\n })\n\n provide(VExpansionPanelSymbol, groupItem)\n\n useRender(() => {\n const hasText = !!(slots.text || props.text)\n const hasTitle = !!(slots.title || props.title)\n\n return (\n <props.tag\n class={[\n 'v-expansion-panel',\n {\n 'v-expansion-panel--active': groupItem.isSelected.value,\n 'v-expansion-panel--before-active': isBeforeSelected.value,\n 'v-expansion-panel--after-active': isAfterSelected.value,\n 'v-expansion-panel--disabled': isDisabled.value,\n },\n roundedClasses.value,\n backgroundColorClasses.value,\n ]}\n style={ backgroundColorStyles.value }\n aria-expanded={ groupItem.isSelected.value }\n >\n <div\n class={[\n 'v-expansion-panel__shadow',\n ...elevationClasses.value,\n ]}\n />\n\n { hasTitle && (\n <VExpansionPanelTitle\n collapseIcon={ props.collapseIcon }\n color={ props.color }\n expandIcon={ props.expandIcon }\n hideActions={ props.hideActions }\n ripple={ props.ripple }\n >\n { slots.title ? slots.title() : props.title }\n </VExpansionPanelTitle>\n ) }\n\n { hasText && (\n <VExpansionPanelText eager={ props.eager }>\n { slots.text ? slots.text() : props.text }\n </VExpansionPanelText>\n ) }\n\n { slots.default?.() }\n </props.tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VExpansionPanel = InstanceType<typeof VExpansionPanel>\n","// Styles\nimport './VFileInput.sass'\n\n// Components\nimport { filterFieldProps, makeVFieldProps } from '@/components/VField/VField'\nimport { VChip } from '@/components/VChip'\nimport { VCounter } from '@/components/VCounter'\nimport { VField } from '@/components/VField'\n\n// Composables\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, nextTick, ref } from 'vue'\nimport { defineComponent, filterInputAttrs, humanReadableFileSize, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\n\nexport const VFileInput = defineComponent({\n name: 'VFileInput',\n\n inheritAttrs: false,\n\n props: {\n chips: Boolean,\n counter: Boolean,\n counterSizeString: {\n type: String,\n default: '$vuetify.fileInput.counterSize',\n },\n counterString: {\n type: String,\n default: '$vuetify.fileInput.counter',\n },\n multiple: Boolean,\n hint: String,\n persistentHint: Boolean,\n placeholder: String,\n showSize: {\n type: [Boolean, Number] as PropType<boolean | 1000 | 1024>,\n default: false,\n validator: (v: boolean | number) => {\n return (\n typeof v === 'boolean' ||\n [1000, 1024].includes(v)\n )\n },\n },\n\n ...makeVInputProps(),\n\n prependIcon: {\n type: IconValue,\n default: '$file',\n },\n modelValue: {\n type: Array as PropType<File[]>,\n default: () => ([]),\n validator: (val: any) => {\n return wrapInArray(val).every(v => v != null && typeof v === 'object')\n },\n },\n\n ...makeVFieldProps({ clearable: true }),\n },\n\n emits: {\n 'click:clear': (e: MouseEvent) => true,\n 'click:control': (e: MouseEvent) => true,\n 'update:modelValue': (files: File[]) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { t } = useLocale()\n const model = useProxiedModel(props, 'modelValue')\n const base = computed(() => typeof props.showSize !== 'boolean' ? props.showSize : undefined)\n const totalBytes = computed(() => (model.value ?? []).reduce((bytes, { size = 0 }) => bytes + size, 0))\n const totalBytesReadable = computed(() => humanReadableFileSize(totalBytes.value, base.value))\n\n const fileNames = computed(() => (model.value ?? []).map(file => {\n const { name = '', size = 0 } = file\n\n return !props.showSize\n ? name\n : `${name} (${humanReadableFileSize(size, base.value)})`\n }))\n\n const counterValue = computed(() => {\n const fileCount = model.value?.length ?? 0\n if (props.showSize) return t(props.counterSizeString, fileCount, totalBytesReadable.value)\n else return t(props.counterString, fileCount)\n })\n const vInputRef = ref<VInput>()\n const vFieldRef = ref<VInput>()\n const isFocused = ref(false)\n const inputRef = ref<HTMLInputElement>()\n const messages = computed(() => {\n return props.messages.length\n ? props.messages\n : (props.persistentHint) ? props.hint : ''\n })\n function onFocus () {\n if (inputRef.value !== document.activeElement) {\n inputRef.value?.focus()\n }\n\n if (!isFocused.value) {\n isFocused.value = true\n }\n }\n function onControlClick (e: MouseEvent) {\n inputRef.value?.click()\n\n emit('click:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = []\n\n if (inputRef?.value) {\n inputRef.value.value = ''\n }\n\n emit('click:clear', e)\n })\n }\n\n useRender(() => {\n const hasCounter = !!(slots.counter || props.counter)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const [{ modelValue: _, ...inputProps }] = filterInputProps(props)\n const [fieldProps] = filterFieldProps(props)\n\n return (\n <VInput\n ref={ vInputRef }\n v-model={ model.value }\n class=\"v-file-input\"\n { ...rootAttrs }\n { ...inputProps }\n onClick:prepend={ onControlClick }\n messages={ messages.value }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n ref={ vFieldRef }\n prepend-icon={ props.prependIcon }\n onClick:control={ onControlClick }\n onClick:clear={ onClear }\n { ...fieldProps }\n active={ isDirty.value || isFocused.value }\n dirty={ isDirty.value }\n focused={ isFocused.value }\n error={ isValid.value === false }\n >\n {{\n ...slots,\n default: ({\n props: { class: fieldClass, ...slotProps },\n }) => (\n <>\n <input\n ref={ inputRef }\n type=\"file\"\n readonly={ isReadonly.value }\n disabled={ isDisabled.value }\n multiple={ props.multiple }\n name={ props.name }\n onClick={ e => {\n e.stopPropagation()\n\n onFocus()\n } }\n onChange={ e => {\n if (!e.target) return\n\n const target = e.target as HTMLInputElement\n model.value = [...target.files ?? []]\n } }\n onFocus={ onFocus }\n onBlur={ () => (isFocused.value = false) }\n { ...slotProps }\n { ...inputAttrs }\n />\n\n { model.value.length > 0 && (\n <div class={ fieldClass }>\n { slots.selection ? slots.selection({\n fileNames: fileNames.value,\n totalBytes: totalBytes.value,\n totalBytesReadable: totalBytesReadable.value,\n })\n : props.chips ? fileNames.value.map(text => (\n <VChip\n key={ text }\n size=\"small\"\n color={ props.color }\n >{ text }</VChip>\n ))\n : fileNames.value.join(', ') }\n </div>\n ) }\n </>\n ),\n }}\n </VField>\n ),\n details: hasCounter ? () => (\n <>\n <span />\n\n <VCounter\n active={ !!model.value.length }\n value={ counterValue.value }\n v-slots={ slots.counter }\n />\n </>\n ) : undefined,\n }}\n </VInput>\n )\n })\n\n return useForwardRef({}, vInputRef, vFieldRef, inputRef)\n },\n})\n\nexport type VFileInput = InstanceType<typeof VFileInput>\n","// Styles\nimport './VFooter.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, ref, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\nexport const VFooter = defineComponent({\n name: 'VFooter',\n\n props: {\n app: Boolean,\n color: String,\n height: {\n type: [Number, String],\n default: 'auto',\n },\n\n ...makeBorderProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'footer' }),\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { borderClasses } = useBorder(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n\n const autoHeight = ref(32)\n const { resizeRef } = useResizeObserver(entries => {\n if (!entries.length) return\n autoHeight.value = entries[0].target.clientHeight\n })\n const height = computed(() => props.height === 'auto' ? autoHeight.value : parseInt(props.height, 10))\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: computed(() => 'bottom'),\n layoutSize: height,\n elementSize: computed(() => props.height === 'auto' ? undefined : height.value),\n active: computed(() => props.app),\n absolute: toRef(props, 'absolute'),\n })\n\n return () => (\n <props.tag\n ref={ resizeRef }\n class={[\n 'v-footer',\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n ]}\n style={[\n backgroundColorStyles,\n props.app ? layoutItemStyles.value : undefined,\n ]}\n v-slots={ slots }\n />\n )\n },\n})\n","// Composables\nimport { createForm, makeFormProps } from '@/composables/form'\n\n// Utilities\nimport { ref } from 'vue'\nimport { defineComponent, useRender } from '@/util'\nimport { useForwardRef } from '@/composables/forwardRef'\n\n// Types\nimport type { SubmitEventPromise } from '@/composables/form'\n\nexport const VForm = defineComponent({\n name: 'VForm',\n\n props: {\n ...makeFormProps(),\n },\n\n emits: {\n 'update:modelValue': (val: boolean | null) => true,\n submit: (e: SubmitEventPromise) => true,\n },\n\n setup (props, { slots, emit }) {\n const form = createForm(props)\n const formRef = ref<HTMLFormElement>()\n\n function onReset (e: Event) {\n e.preventDefault()\n form.reset()\n }\n\n function onSubmit (_e: Event) {\n const e = _e as SubmitEventPromise\n\n const ready = form.validate()\n e.then = ready.then.bind(ready)\n e.catch = ready.catch.bind(ready)\n e.finally = ready.finally.bind(ready)\n\n emit('submit', e)\n\n if (!e.defaultPrevented) {\n ready.then(({ valid }) => {\n if (valid) {\n formRef.value?.submit()\n }\n })\n }\n\n e.preventDefault()\n }\n\n useRender(() => ((\n <form\n ref={ formRef }\n class=\"v-form\"\n novalidate\n onReset={ onReset }\n onSubmit={ onSubmit }\n >\n { slots.default?.(form) }\n </form>\n )))\n\n return useForwardRef(form, formRef)\n },\n})\n\nexport type VForm = InstanceType<typeof VForm>\n","// Styles\nimport './VGrid.sass'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VContainer = defineComponent({\n name: 'VContainer',\n\n props: {\n fluid: {\n type: Boolean,\n default: false,\n },\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n return () => (\n <props.tag\n class={[\n 'v-container',\n { 'v-container--fluid': props.fluid },\n ]}\n v-slots={ slots }\n />\n )\n },\n})\n","// Styles\nimport './VGrid.sass'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { capitalize, computed, h } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { Prop } from 'vue'\n\nconst breakpoints = ['sm', 'md', 'lg', 'xl', 'xxl'] as const // no xs\n\nconst breakpointProps = (() => {\n return breakpoints.reduce((props, val) => {\n props[val] = {\n type: [Boolean, String, Number],\n default: false,\n }\n return props\n }, {} as Record<string, Prop<boolean | string | number, false>>)\n})()\n\nconst offsetProps = (() => {\n return breakpoints.reduce((props, val) => {\n props['offset' + capitalize(val)] = {\n type: [String, Number],\n default: null,\n }\n return props\n }, {} as Record<string, Prop<string | number, null>>)\n})()\n\nconst orderProps = (() => {\n return breakpoints.reduce((props, val) => {\n props['order' + capitalize(val)] = {\n type: [String, Number],\n default: null,\n }\n return props\n }, {} as Record<string, Prop<string | number, null>>)\n})()\n\nconst propMap = {\n col: Object.keys(breakpointProps),\n offset: Object.keys(offsetProps),\n order: Object.keys(orderProps),\n}\n\nfunction breakpointClass (type: keyof typeof propMap, prop: string, val: boolean | string | number) {\n let className: string = type\n if (val == null || val === false) {\n return undefined\n }\n if (prop) {\n const breakpoint = prop.replace(type, '')\n className += `-${breakpoint}`\n }\n if (type === 'col') {\n className = 'v-' + className\n }\n // Handling the boolean style prop when accepting [Boolean, String, Number]\n // means Vue will not convert <v-col sm></v-col> to sm: true for us.\n // Since the default is false, an empty string indicates the prop's presence.\n if (type === 'col' && (val === '' || val === true)) {\n // .v-col-md\n return className.toLowerCase()\n }\n // .order-md-6\n className += `-${val}`\n return className.toLowerCase()\n}\n\nexport const VCol = defineComponent({\n name: 'VCol',\n\n props: {\n cols: {\n type: [Boolean, String, Number],\n default: false,\n },\n ...breakpointProps,\n offset: {\n type: [String, Number],\n default: null,\n },\n ...offsetProps,\n order: {\n type: [String, Number],\n default: null,\n },\n ...orderProps,\n alignSelf: {\n type: String,\n default: null,\n validator: (str: any) => ['auto', 'start', 'end', 'center', 'baseline', 'stretch'].includes(str),\n },\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n const classes = computed(() => {\n const classList: any[] = []\n\n // Loop through `col`, `offset`, `order` breakpoint props\n let type: keyof typeof propMap\n for (type in propMap) {\n propMap[type].forEach(prop => {\n const value: string | number | boolean = (props as any)[prop]\n const className = breakpointClass(type, prop, value)\n if (className) classList!.push(className)\n })\n }\n\n const hasColClasses = classList.some(className => className.startsWith('v-col-'))\n\n classList.push({\n // Default to .v-col if no other col-{bp}-* classes generated nor `cols` specified.\n 'v-col': !hasColClasses || !props.cols,\n [`v-col-${props.cols}`]: props.cols,\n [`offset-${props.offset}`]: props.offset,\n [`order-${props.order}`]: props.order,\n [`align-self-${props.alignSelf}`]: props.alignSelf,\n })\n\n return classList\n })\n\n return () => h(props.tag, {\n class: classes.value,\n }, slots.default?.())\n },\n})\n","// Styles\nimport './VGrid.sass'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { capitalize, computed, h } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { Prop } from 'vue'\n\nconst breakpoints = ['sm', 'md', 'lg', 'xl', 'xxl'] as const // no xs\n\nconst ALIGNMENT = ['start', 'end', 'center'] as const\n\nfunction makeRowProps (prefix: string, def: () => Prop<string, null>) {\n return breakpoints.reduce((props, val) => {\n props[prefix + capitalize(val)] = def()\n return props\n }, {} as Record<string, Prop<string, null>>)\n}\n\nconst alignValidator = (str: any) => [...ALIGNMENT, 'baseline', 'stretch'].includes(str)\nconst alignProps = makeRowProps('align', () => ({\n type: String,\n default: null,\n validator: alignValidator,\n}))\n\nconst justifyValidator = (str: any) => [...ALIGNMENT, 'space-between', 'space-around'].includes(str)\nconst justifyProps = makeRowProps('justify', () => ({\n type: String,\n default: null,\n validator: justifyValidator,\n}))\n\nconst alignContentValidator = (str: any) => [...ALIGNMENT, 'space-between', 'space-around', 'stretch'].includes(str)\nconst alignContentProps = makeRowProps('alignContent', () => ({\n type: String,\n default: null,\n validator: alignContentValidator,\n}))\n\nconst propMap = {\n align: Object.keys(alignProps),\n justify: Object.keys(justifyProps),\n alignContent: Object.keys(alignContentProps),\n}\n\nconst classMap = {\n align: 'align',\n justify: 'justify',\n alignContent: 'align-content',\n}\n\nfunction breakpointClass (type: keyof typeof propMap, prop: string, val: string) {\n let className = classMap[type]\n if (val == null) {\n return undefined\n }\n if (prop) {\n // alignSm -> Sm\n const breakpoint = prop.replace(type, '')\n className += `-${breakpoint}`\n }\n // .align-items-sm-center\n className += `-${val}`\n return className.toLowerCase()\n}\n\nexport const VRow = defineComponent({\n name: 'VRow',\n\n props: {\n dense: Boolean,\n noGutters: Boolean,\n align: {\n type: String,\n default: null,\n validator: alignValidator,\n },\n ...alignProps,\n justify: {\n type: String,\n default: null,\n validator: justifyValidator,\n },\n ...justifyProps,\n alignContent: {\n type: String,\n default: null,\n validator: alignContentValidator,\n },\n ...alignContentProps,\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n const classes = computed(() => {\n const classList: any[] = []\n\n // Loop through `align`, `justify`, `alignContent` breakpoint props\n let type: keyof typeof propMap\n for (type in propMap) {\n propMap[type].forEach(prop => {\n const value: string = (props as any)[prop]\n const className = breakpointClass(type, prop, value)\n if (className) classList!.push(className)\n })\n }\n\n classList.push({\n 'v-row--no-gutters': props.noGutters,\n 'v-row--dense': props.dense,\n [`align-${props.align}`]: props.align,\n [`justify-${props.justify}`]: props.justify,\n [`align-content-${props.alignContent}`]: props.alignContent,\n })\n\n return classList\n })\n\n return () => h(props.tag, {\n class: ['v-row', classes.value],\n }, slots.default?.())\n },\n})\n","import { createSimpleFunctional } from '@/util'\n\nexport const VSpacer = createSimpleFunctional('flex-grow-1', 'div', 'VSpacer')\n","// Composables\nimport { makeDelayProps, useDelay } from '@/composables/delay'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VHover = defineComponent({\n name: 'VHover',\n\n props: {\n disabled: Boolean,\n modelValue: {\n type: Boolean,\n default: undefined,\n },\n\n ...makeDelayProps(),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isHovering = useProxiedModel(props, 'modelValue')\n const { runOpenDelay, runCloseDelay } = useDelay(props, value => !props.disabled && (isHovering.value = value))\n\n return () => slots.default?.({\n isHovering: isHovering.value,\n props: {\n onMouseenter: runOpenDelay,\n onMouseleave: runCloseDelay,\n },\n })\n },\n})\n","// Styles\nimport './VItemGroup.sass'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VItemGroupSymbol = Symbol.for('vuetify:v-item-group')\n\nexport const VItemGroup = defineComponent({\n name: 'VItemGroup',\n\n props: {\n ...makeGroupProps({\n selectedClass: 'v-item--selected',\n }),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isSelected, select, next, prev, selected } = useGroup(props, VItemGroupSymbol)\n\n return () => (\n <props.tag\n class={[\n 'v-item-group',\n themeClasses.value,\n ]}\n >\n { slots.default?.({\n isSelected,\n select,\n next,\n prev,\n selected: selected.value,\n }) }\n </props.tag>\n )\n },\n})\n\nexport type VItemGroup = InstanceType<typeof VItemGroup>\n","// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { VItemGroupSymbol } from './VItemGroup'\n\n// Utilities\nimport { genericComponent } from '@/util'\n\n// Types\nimport type { MakeSlots } from '@/util'\nimport type { GroupItemProvide } from '@/composables/group'\n\nexport const VItem = genericComponent<new () => {\n $slots: MakeSlots<{\n default: [GroupItemProvide]\n }>\n}>()({\n name: 'VItem',\n\n props: makeGroupItemProps(),\n\n setup (props, { slots }) {\n const { isSelected, select, toggle, selectedClass, value, disabled } = useGroupItem(props, VItemGroupSymbol)\n return () => slots.default?.({\n isSelected: isSelected.value,\n selectedClass: selectedClass.value,\n select,\n toggle,\n value: value.value,\n disabled: disabled.value,\n })\n },\n})\n\nexport type VItem = InstanceType<typeof VItem>\n","import './VKbd.sass'\n\nimport { createSimpleFunctional } from '@/util'\n\nexport const VKbd = createSimpleFunctional('v-kbd')\n","// Styles\nimport './VLayout.sass'\n\n// Utilities\nimport { defineComponent, useRender } from '@/util'\n\n// Composables\nimport { createLayout, makeLayoutProps } from '@/composables/layout'\n\nexport const VLayout = defineComponent({\n name: 'VLayout',\n\n props: makeLayoutProps(),\n\n setup (props, { slots }) {\n const { layoutClasses, layoutStyles, getLayoutItem, items, layoutRef } = createLayout(props)\n\n useRender(() => (\n <div ref={ layoutRef } class={ layoutClasses.value } style={ layoutStyles.value }>\n { slots.default?.() }\n </div>\n ))\n\n return {\n getLayoutItem,\n items,\n }\n },\n})\n\nexport type VLayout = InstanceType<typeof VLayout>\n","// Styles\nimport './VLayoutItem.sass'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VLayoutItem = defineComponent({\n name: 'VLayoutItem',\n\n props: {\n position: {\n type: String as PropType<'top' | 'right' | 'bottom' | 'left'>,\n required: true,\n },\n size: {\n type: [Number, String],\n default: 300,\n },\n modelValue: Boolean,\n ...makeLayoutItemProps(),\n },\n\n setup (props, { slots }) {\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'position'),\n elementSize: toRef(props, 'size'),\n layoutSize: toRef(props, 'size'),\n active: toRef(props, 'modelValue'),\n absolute: toRef(props, 'absolute'),\n })\n\n return () => (\n <div\n class={[\n 'v-layout-item',\n ]}\n style={ layoutItemStyles.value }\n >\n { slots.default?.() }\n </div>\n )\n },\n})\n","// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeTransitionProps, MaybeTransition } from '@/composables/transition'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport intersect from '@/directives/intersect'\n\n// Utilities\nimport type { PropType } from 'vue'\nimport { defineComponent } from '@/util'\n\nexport const VLazy = defineComponent({\n name: 'VLazy',\n\n directives: { intersect },\n\n props: {\n modelValue: Boolean,\n options: {\n type: Object as PropType<IntersectionObserverInit>,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n },\n\n ...makeDimensionProps(),\n ...makeTagProps(),\n ...makeTransitionProps({ transition: 'fade-transition' }),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const { dimensionStyles } = useDimension(props)\n const isActive = useProxiedModel(props, 'modelValue')\n\n function onIntersect (isIntersecting: boolean) {\n if (isActive.value) return\n\n isActive.value = isIntersecting\n }\n\n return () => (\n <props.tag\n class=\"v-lazy\"\n v-intersect={[\n onIntersect,\n props.options,\n isActive.value ? [] : ['once'],\n ]}\n style={ dimensionStyles.value }\n >\n { isActive.value && (\n <MaybeTransition transition={ props.transition }>\n { slots.default?.() }\n </MaybeTransition>\n )}\n </props.tag>\n )\n },\n})\n","import './VLocaleProvider.sass'\n\n// Composables\nimport { provideLocale } from '@/composables/locale'\nimport { provideRtl } from '@/composables/rtl'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VLocaleProvider = defineComponent({\n name: 'VLocaleProvider',\n\n props: {\n locale: String,\n fallbackLocale: String,\n messages: Object,\n rtl: {\n type: Boolean,\n default: undefined,\n },\n },\n\n setup (props, { slots }) {\n const localeInstance = provideLocale(props)\n const { rtlClasses } = provideRtl(props, localeInstance)\n\n return () => (\n <div\n class={[\n 'v-locale-provider',\n rtlClasses.value,\n ]}\n >\n { slots.default?.() }\n </div>\n )\n },\n})\n","// Utilities\nimport { computed, onMounted, ref } from 'vue'\n\n// Composables\nexport function useSsrBoot () {\n const isBooted = ref(false)\n\n onMounted(() => {\n window.requestAnimationFrame(() => {\n isBooted.value = true\n })\n })\n\n const ssrBootStyles = computed(() => !isBooted.value ? ({\n transition: 'none !important',\n }) : undefined)\n\n return { ssrBootStyles }\n}\n","// Styles\nimport './VMain.sass'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { useLayout } from '@/composables/layout'\nimport { useSsrBoot } from '@/composables/ssrBoot'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VMain = defineComponent({\n name: 'VMain',\n\n props: makeTagProps({ tag: 'main' }),\n\n setup (props, { slots }) {\n const { mainStyles } = useLayout()\n const { ssrBootStyles } = useSsrBoot()\n\n return () => (\n <props.tag\n class=\"v-main\"\n style={[\n mainStyles.value,\n ssrBootStyles.value,\n ]}\n >\n <div class=\"v-main__wrap\">\n { slots.default?.() }\n </div>\n </props.tag>\n )\n },\n})\n","import { CircularBuffer } from '@/util'\n\nconst HORIZON = 100 // ms\nconst HISTORY = 20 // number of samples to keep\n\nexport interface Sample {\n t: number\n d: number\n}\n\n/** @see https://android.googlesource.com/platform/frameworks/native/+/master/libs/input/VelocityTracker.cpp */\nfunction kineticEnergyToVelocity (work: number) {\n const sqrt2 = 1.41421356237\n return (work < 0 ? -1.0 : 1.0) * Math.sqrt(Math.abs(work)) * sqrt2\n}\n\n/**\n * Returns pointer velocity in px/s\n */\nexport function calculateImpulseVelocity (samples: Sample[]) {\n // The input should be in reversed time order (most recent sample at index i=0)\n if (samples.length < 2) {\n // if 0 or 1 points, velocity is zero\n return 0\n }\n // if (samples[1].t > samples[0].t) {\n // // Algorithm will still work, but not perfectly\n // consoleWarn('Samples provided to calculateImpulseVelocity in the wrong order')\n // }\n if (samples.length === 2) {\n // if 2 points, basic linear calculation\n if (samples[1].t === samples[0].t) {\n // consoleWarn(`Events have identical time stamps t=${samples[0].t}, setting velocity = 0`)\n return 0\n }\n return (samples[1].d - samples[0].d) / (samples[1].t - samples[0].t)\n }\n // Guaranteed to have at least 3 points here\n // start with the oldest sample and go forward in time\n let work = 0\n for (let i = samples.length - 1; i > 0; i--) {\n if (samples[i].t === samples[i - 1].t) {\n // consoleWarn(`Events have identical time stamps t=${samples[i].t}, skipping sample`)\n continue\n }\n const vprev = kineticEnergyToVelocity(work) // v[i-1]\n const vcurr = (samples[i].d - samples[i - 1].d) / (samples[i].t - samples[i - 1].t) // v[i]\n work += (vcurr - vprev) * Math.abs(vcurr)\n if (i === samples.length - 1) {\n work *= 0.5\n }\n }\n return kineticEnergyToVelocity(work) * 1000\n}\n\nexport function useVelocity () {\n const touches: Record<number, CircularBuffer<[number, Touch]> | undefined> = {}\n\n function addMovement (e: TouchEvent) {\n Array.from(e.changedTouches).forEach(touch => {\n const samples = touches[touch.identifier] ?? (touches[touch.identifier] = new CircularBuffer(HISTORY))\n samples.push([e.timeStamp, touch])\n })\n }\n\n function endTouch (e: TouchEvent) {\n Array.from(e.changedTouches).forEach(touch => {\n delete touches[touch.identifier]\n })\n }\n\n function getVelocity (id: number) {\n const samples = touches[id]?.values().reverse()\n\n if (!samples) {\n throw new Error(`No samples for touch id ${id}`)\n }\n\n const newest = samples[0]\n const x: Sample[] = []\n const y: Sample[] = []\n for (const val of samples) {\n if (newest[0] - val[0] > HORIZON) break\n\n x.push({ t: val[0], d: val[1].clientX })\n y.push({ t: val[0], d: val[1].clientY })\n }\n\n return {\n x: calculateImpulseVelocity(x),\n y: calculateImpulseVelocity(y),\n get direction () {\n const { x, y } = this\n const [absX, absY] = [Math.abs(x), Math.abs(y)]\n\n return absX > absY && x >= 0 ? 'right'\n : absX > absY && x <= 0 ? 'left'\n : absY > absX && y >= 0 ? 'down'\n : absY > absX && y <= 0 ? 'up'\n : oops()\n },\n }\n }\n\n return { addMovement, endTouch, getVelocity }\n}\n\nfunction oops (): never {\n throw new Error()\n}\n","import { useVelocity } from '@/composables/touch'\nimport { computed, onBeforeUnmount, onMounted, ref } from 'vue'\nimport type { Ref } from 'vue'\n\nexport function useTouch ({ isActive, isTemporary, width, touchless, position }: {\n isActive: Ref<boolean>\n isTemporary: Ref<boolean>\n width: Ref<number>\n touchless: Ref<boolean>\n position: Ref<'left' | 'right' | 'bottom'>\n}) {\n onMounted(() => {\n window.addEventListener('touchstart', onTouchstart, { passive: true })\n window.addEventListener('touchmove', onTouchmove, { passive: false })\n window.addEventListener('touchend', onTouchend, { passive: true })\n })\n\n onBeforeUnmount(() => {\n window.removeEventListener('touchstart', onTouchstart)\n window.removeEventListener('touchmove', onTouchmove)\n window.removeEventListener('touchend', onTouchend)\n })\n\n const isHorizontal = computed(() => position.value !== 'bottom')\n\n const { addMovement, endTouch, getVelocity } = useVelocity()\n let maybeDragging = false\n const isDragging = ref(false)\n const dragProgress = ref(0)\n const offset = ref(0)\n let start: [number, number] | undefined\n\n function getOffset (pos: number, active: boolean): number {\n return (\n position.value === 'left' ? pos\n : position.value === 'right' ? document.documentElement.clientWidth - pos\n : position.value === 'bottom' ? document.documentElement.clientHeight - pos\n : oops()\n ) - (active ? width.value : 0)\n }\n\n function getProgress (pos: number, limit = true): number {\n const progress = (\n position.value === 'left' ? (pos - offset.value) / width.value\n : position.value === 'right' ? (document.documentElement.clientWidth - pos - offset.value) / width.value\n : position.value === 'bottom' ? (document.documentElement.clientHeight - pos - offset.value) / width.value\n : oops()\n )\n return limit ? Math.max(0, Math.min(1, progress)) : progress\n }\n\n function onTouchstart (e: TouchEvent) {\n if (touchless.value) return\n\n const touchX = e.changedTouches[0].clientX\n const touchY = e.changedTouches[0].clientY\n\n const touchZone = 25\n const inTouchZone: boolean =\n position.value === 'left' ? touchX < touchZone\n : position.value === 'right' ? touchX > document.documentElement.clientWidth - touchZone\n : position.value === 'bottom' ? touchY > document.documentElement.clientHeight - touchZone\n : oops()\n\n const inElement: boolean = isActive.value && (\n position.value === 'left' ? touchX < width.value\n : position.value === 'right' ? touchX > document.documentElement.clientWidth - width.value\n : position.value === 'bottom' ? touchY > document.documentElement.clientHeight - width.value\n : oops()\n )\n\n if (\n inTouchZone ||\n inElement ||\n (isActive.value && isTemporary.value)\n ) {\n maybeDragging = true\n start = [touchX, touchY]\n\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, isActive.value)\n dragProgress.value = getProgress(isHorizontal.value ? touchX : touchY)\n\n endTouch(e)\n addMovement(e)\n }\n }\n\n function onTouchmove (e: TouchEvent) {\n const touchX = e.changedTouches[0].clientX\n const touchY = e.changedTouches[0].clientY\n\n if (maybeDragging) {\n if (!e.cancelable) {\n maybeDragging = false\n return\n }\n\n const dx = Math.abs(touchX - start![0])\n const dy = Math.abs(touchY - start![1])\n\n const thresholdMet = isHorizontal.value\n ? dx > dy && dx > 3\n : dy > dx && dy > 3\n\n if (thresholdMet) {\n isDragging.value = true\n maybeDragging = false\n } else if ((isHorizontal.value ? dy : dx) > 3) {\n maybeDragging = false\n }\n }\n\n if (!isDragging.value) return\n\n e.preventDefault()\n addMovement(e)\n\n const progress = getProgress(isHorizontal.value ? touchX : touchY, false)\n dragProgress.value = Math.max(0, Math.min(1, progress))\n\n if (progress > 1) {\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, true)\n } else if (progress < 0) {\n offset.value = getOffset(isHorizontal.value ? touchX : touchY, false)\n }\n }\n\n function onTouchend (e: TouchEvent) {\n maybeDragging = false\n\n if (!isDragging.value) return\n\n addMovement(e)\n\n isDragging.value = false\n\n const velocity = getVelocity(e.changedTouches[0].identifier)\n const vx = Math.abs(velocity.x)\n const vy = Math.abs(velocity.y)\n const thresholdMet = isHorizontal.value\n ? vx > vy && vx > 400\n : vy > vx && vy > 3\n\n if (thresholdMet) {\n isActive.value = velocity.direction === ({\n left: 'right',\n right: 'left',\n bottom: 'up',\n }[position.value] || oops())\n } else {\n isActive.value = dragProgress.value > 0.5\n }\n }\n\n const dragStyles = computed(() => {\n return isDragging.value ? {\n transform:\n position.value === 'left' ? `translateX(calc(-100% + ${dragProgress.value * width.value}px))`\n : position.value === 'right' ? `translateX(calc(100% - ${dragProgress.value * width.value}px))`\n : position.value === 'bottom' ? `translateY(calc(100% - ${dragProgress.value * width.value}px))`\n : oops(),\n transition: 'none',\n } : undefined\n })\n\n return {\n isDragging,\n dragProgress,\n dragStyles,\n }\n}\n\nfunction oops (): never {\n throw new Error()\n}\n","// Styles\nimport './VNavigationDrawer.sass'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useDisplay } from '@/composables/display'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRouter } from '@/composables/router'\nimport { useTouch } from './touch'\n\n// Utilities\nimport { computed, onBeforeMount, ref, toRef, Transition, watch } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VNavigationDrawer = defineComponent({\n name: 'VNavigationDrawer',\n\n props: {\n color: String,\n disableResizeWatcher: Boolean,\n disableRouteWatcher: Boolean,\n expandOnHover: Boolean,\n floating: Boolean,\n modelValue: {\n type: Boolean as PropType<boolean | null>,\n default: null,\n },\n permanent: Boolean,\n rail: Boolean,\n railWidth: {\n type: [Number, String],\n default: 72,\n },\n image: String,\n temporary: Boolean,\n touchless: Boolean,\n width: {\n type: [Number, String],\n default: 256,\n },\n location: {\n type: String as PropType<'left' | 'right' | 'bottom'>,\n default: 'left',\n validator: (value: any) => ['left', 'right', 'bottom'].includes(value),\n },\n\n ...makeBorderProps(),\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { elevationClasses } = useElevation(props)\n const { mobile } = useDisplay()\n const { roundedClasses } = useRounded(props)\n const router = useRouter()\n const isActive = useProxiedModel(props, 'modelValue', null, v => !!v)\n const isHovering = ref(false)\n const width = computed(() => {\n return (props.rail && props.expandOnHover && isHovering.value)\n ? Number(props.width)\n : Number(props.rail ? props.railWidth : props.width)\n })\n const isTemporary = computed(() => !props.permanent && (mobile.value || props.temporary))\n\n if (!props.disableResizeWatcher) {\n watch(isTemporary, val => !props.permanent && (isActive.value = !val))\n }\n\n if (!props.disableRouteWatcher && router) {\n watch(router.currentRoute, () => isTemporary.value && (isActive.value = false))\n }\n\n watch(() => props.permanent, val => {\n if (val) isActive.value = true\n })\n\n onBeforeMount(() => {\n if (props.modelValue != null || isTemporary.value) return\n\n isActive.value = props.permanent || !mobile.value\n })\n\n const rootEl = ref<HTMLElement>()\n\n const { isDragging, dragProgress, dragStyles } = useTouch({\n isActive,\n isTemporary,\n width,\n touchless: toRef(props, 'touchless'),\n position: toRef(props, 'location'),\n })\n\n const layoutSize = computed(() => {\n const size = isTemporary.value ? 0\n : props.rail && props.expandOnHover ? Number(props.railWidth)\n : width.value\n\n return isDragging.value ? size * dragProgress.value : size\n })\n const { layoutItemStyles, layoutRect, layoutItemScrimStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'location'),\n layoutSize,\n elementSize: width,\n active: computed(() => isActive.value || isDragging.value),\n disableTransitions: computed(() => isDragging.value),\n absolute: toRef(props, 'absolute'),\n })\n\n const scrimStyles = computed(() => ({\n ...isDragging.value ? {\n opacity: dragProgress.value * 0.2,\n transition: 'none',\n } : undefined,\n ...layoutRect.value ? {\n left: convertToUnit(layoutRect.value.left),\n right: convertToUnit(layoutRect.value.right),\n top: convertToUnit(layoutRect.value.top),\n bottom: convertToUnit(layoutRect.value.bottom),\n } : undefined,\n ...layoutItemScrimStyles.value,\n }))\n\n return () => {\n const hasImage = (slots.image || props.image)\n\n return (\n <>\n <props.tag\n ref={ rootEl }\n onMouseenter={ () => (isHovering.value = true) }\n onMouseleave={ () => (isHovering.value = false) }\n class={[\n 'v-navigation-drawer',\n {\n 'v-navigation-drawer--bottom': props.location === 'bottom',\n 'v-navigation-drawer--end': props.location === 'right',\n 'v-navigation-drawer--expand-on-hover': props.expandOnHover,\n 'v-navigation-drawer--floating': props.floating,\n 'v-navigation-drawer--is-hovering': isHovering.value,\n 'v-navigation-drawer--rail': props.rail,\n 'v-navigation-drawer--start': props.location === 'left',\n 'v-navigation-drawer--temporary': isTemporary.value,\n 'v-navigation-drawer--active': isActive.value,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n dragStyles.value,\n ]}\n { ...attrs }\n >\n { hasImage && (\n <div class=\"v-navigation-drawer__img\">\n { slots.image\n ? slots.image?.({ image: props.image })\n : (<img src={ props.image } alt=\"\" />)\n }\n </div>\n )}\n\n { slots.prepend && (\n <div class=\"v-navigation-drawer__prepend\">\n { slots.prepend?.() }\n </div>\n )}\n\n <div class=\"v-navigation-drawer__content\">\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div class=\"v-navigation-drawer__append\">\n { slots.append?.() }\n </div>\n )}\n </props.tag>\n\n <Transition name=\"fade-transition\">\n { isTemporary.value && (isDragging.value || isActive.value) && (\n <div\n class=\"v-navigation-drawer__scrim\"\n style={ scrimStyles.value }\n onClick={ () => isActive.value = false }\n />\n )}\n </Transition>\n </>\n )\n }\n },\n})\n\nexport type VNavigationDrawer = InstanceType<typeof VNavigationDrawer>\n","// Utilities\nimport { getCurrentInstance, IN_BROWSER } from '@/util'\nimport { onMounted } from 'vue'\n\nexport function useHydration (callback: () => void) {\n if (!IN_BROWSER) return\n\n const vm = getCurrentInstance('useHydration')\n const rootEl = vm?.root?.appContext?.app?._container\n\n return rootEl?.__vue_app__ ? callback() : onMounted(callback)\n}\n","// Composables\nimport { useHydration } from '@/composables/hydration'\n\n// Utilities\nimport { defineComponent } from '@/util'\nimport { ref } from 'vue'\n\nexport const VNoSsr = defineComponent({\n name: 'VNoSsr',\n\n setup (_, { slots }) {\n const show = ref(false)\n\n useHydration(() => (show.value = true))\n\n return () => show.value && slots.default?.()\n },\n\n})\n","// Imports\nimport { onBeforeUpdate, ref } from 'vue'\nimport type { Ref } from 'vue'\n\nexport function useRefs <T extends {}> () {\n const refs = ref<(T | undefined)[]>([]) as Ref<(T | undefined)[]>\n\n onBeforeUpdate(() => (refs.value = []))\n\n function updateRef (e: any, i: number) {\n refs.value[i] = e\n }\n\n return { refs, updateRef }\n}\n","import './VPagination.sass'\n\n// Components\nimport { VBtn } from '../VBtn'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { useLocale } from '@/composables/locale'\nimport { useRtl } from '@/composables/rtl'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { makeBorderProps } from '@/composables/border'\nimport { useRefs } from '@/composables/refs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { provideDefaults } from '@/composables/defaults'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, nextTick, ref, toRef } from 'vue'\nimport { createRange, defineComponent, keyValues } from '@/util'\n\n// Types\nimport type { ComponentPublicInstance } from 'vue'\nimport { makeRoundedProps } from '@/composables/rounded'\n\nexport const VPagination = defineComponent({\n name: 'VPagination',\n\n props: {\n start: {\n type: [Number, String],\n default: 1,\n },\n modelValue: {\n type: Number,\n default: (props: any) => props.start,\n },\n disabled: Boolean,\n length: {\n type: [Number, String],\n default: 1,\n validator: (val: number) => val % 1 === 0,\n },\n totalVisible: [Number, String],\n firstIcon: {\n type: IconValue,\n default: '$first',\n },\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n lastIcon: {\n type: IconValue,\n default: '$last',\n },\n ariaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.root',\n },\n pageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.page',\n },\n currentPageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.currentPage',\n },\n firstAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.first',\n },\n previousAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.previous',\n },\n nextAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.next',\n },\n lastAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.last',\n },\n ellipsis: {\n type: String,\n default: '...',\n },\n showFirstLastPage: Boolean,\n\n ...makeRoundedProps(),\n ...makeBorderProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n },\n\n emits: {\n 'update:modelValue': (value: number) => true,\n first: (value: number) => true,\n prev: (value: number) => true,\n next: (value: number) => true,\n last: (value: number) => true,\n },\n\n setup (props, { slots, emit }) {\n const page = useProxiedModel(props, 'modelValue')\n const { t, n } = useLocale()\n const { isRtl } = useRtl()\n const { themeClasses } = provideTheme(props)\n const maxButtons = ref(-1)\n\n provideDefaults(undefined, { scoped: true })\n\n const { resizeRef } = useResizeObserver((entries: ResizeObserverEntry[]) => {\n if (!entries.length) return\n\n const { target, contentRect } = entries[0]\n\n const firstItem = target.querySelector('.v-pagination__list > *')\n\n if (!firstItem) return\n\n const totalWidth = contentRect.width\n const itemWidth = firstItem.getBoundingClientRect().width + 10\n\n maxButtons.value = Math.max(0, Math.floor((totalWidth - 96) / itemWidth))\n })\n\n const length = computed(() => parseInt(props.length, 10))\n const start = computed(() => parseInt(props.start, 10))\n\n const totalVisible = computed(() => {\n if (props.totalVisible) return Math.min(parseInt(props.totalVisible ?? '', 10), length.value)\n else if (maxButtons.value >= 0) return maxButtons.value\n return length.value\n })\n\n const range = computed(() => {\n if (length.value <= 0) return []\n\n if (totalVisible.value <= 2) return [page.value]\n\n if (length.value <= totalVisible.value) {\n return createRange(length.value, start.value)\n }\n\n const even = totalVisible.value % 2 === 0\n const middle = even ? totalVisible.value / 2 : Math.floor(totalVisible.value / 2)\n const left = even ? middle : middle + 1\n const right = length.value - middle\n\n if (left - page.value >= 0) {\n return [...createRange(Math.max(1, totalVisible.value - 1), start.value), props.ellipsis, length.value]\n } else if (page.value - right >= 0) {\n const rangeLength = totalVisible.value - 1\n const rangeStart = length.value - rangeLength + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart)]\n } else {\n const rangeLength = Math.max(1, totalVisible.value - 3)\n const rangeStart = rangeLength === 1 ? page.value : page.value - Math.ceil(rangeLength / 2) + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart), props.ellipsis, length.value]\n }\n })\n\n // TODO: 'first' | 'prev' | 'next' | 'last' does not work here?\n function setValue (e: Event, value: number, event?: any) {\n e.preventDefault()\n page.value = value\n event && emit(event, value)\n }\n\n const { refs, updateRef } = useRefs<ComponentPublicInstance>()\n\n provideDefaults({\n VBtn: {\n border: toRef(props, 'border'),\n density: toRef(props, 'density'),\n size: toRef(props, 'size'),\n variant: toRef(props, 'variant'),\n },\n })\n\n const items = computed(() => {\n return range.value.map((item, index) => {\n const ref = (e: any) => updateRef(e, index)\n\n if (typeof item === 'string') {\n return {\n isActive: false,\n page: item,\n props: {\n ref,\n ellipsis: true,\n icon: true,\n disabled: true,\n },\n }\n } else {\n const isActive = item === page.value\n return {\n isActive,\n page: n(item),\n props: {\n ref,\n ellipsis: false,\n icon: true,\n disabled: !!props.disabled || props.length < 2,\n elevation: props.elevation,\n rounded: props.rounded,\n color: isActive ? props.color : undefined,\n ariaCurrent: isActive,\n ariaLabel: t(isActive ? props.currentPageAriaLabel : props.pageAriaLabel, index + 1),\n onClick: (e: Event) => setValue(e, item),\n },\n }\n }\n })\n })\n\n const controls = computed(() => {\n const prevDisabled = !!props.disabled || page.value <= start.value\n const nextDisabled = !!props.disabled || page.value >= start.value + length.value - 1\n\n return {\n first: props.showFirstLastPage ? {\n icon: isRtl.value ? props.lastIcon : props.firstIcon,\n onClick: (e: Event) => setValue(e, start.value, 'first'),\n disabled: prevDisabled,\n ariaLabel: t(props.firstAriaLabel),\n ariaDisabled: prevDisabled,\n } : undefined,\n prev: {\n icon: isRtl.value ? props.nextIcon : props.prevIcon,\n onClick: (e: Event) => setValue(e, page.value - 1, 'prev'),\n disabled: prevDisabled,\n ariaLabel: t(props.previousAriaLabel),\n ariaDisabled: prevDisabled,\n },\n next: {\n icon: isRtl.value ? props.prevIcon : props.nextIcon,\n onClick: (e: Event) => setValue(e, page.value + 1, 'next'),\n disabled: nextDisabled,\n ariaLabel: t(props.nextAriaLabel),\n ariaDisabled: nextDisabled,\n },\n last: props.showFirstLastPage ? {\n icon: isRtl.value ? props.firstIcon : props.lastIcon,\n onClick: (e: Event) => setValue(e, start.value + length.value - 1, 'last'),\n disabled: nextDisabled,\n ariaLabel: t(props.lastAriaLabel),\n ariaDisabled: nextDisabled,\n } : undefined,\n }\n })\n\n function updateFocus () {\n const currentIndex = page.value - start.value\n refs.value[currentIndex]?.$el.focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === keyValues.left && !props.disabled && page.value > props.start) {\n page.value = page.value - 1\n nextTick(updateFocus)\n } else if (e.key === keyValues.right && !props.disabled && page.value < start.value + length.value - 1) {\n page.value = page.value + 1\n nextTick(updateFocus)\n }\n }\n\n return () => (\n <props.tag\n ref={ resizeRef }\n class={[\n 'v-pagination',\n themeClasses.value,\n ]}\n role=\"navigation\"\n aria-label={ t(props.ariaLabel) }\n onKeydown={ onKeydown }\n data-test=\"v-pagination-root\"\n >\n <ul class=\"v-pagination__list\">\n { props.showFirstLastPage && (\n <li class=\"v-pagination__first\" data-test=\"v-pagination-first\">\n { slots.first ? slots.first(controls.value.first) : (\n <VBtn {...controls.value.first} />\n ) }\n </li>\n ) }\n\n <li class=\"v-pagination__prev\" data-test=\"v-pagination-prev\">\n { slots.prev ? slots.prev(controls.value.prev) : (\n <VBtn {...controls.value.prev} />\n ) }\n </li>\n\n { items.value.map((item, index) => (\n <li\n key={ `${index}_${item.page}` }\n class={[\n 'v-pagination__item',\n {\n 'v-pagination__item--is-active': item.isActive,\n },\n ]}\n data-test=\"v-pagination-item\"\n >\n { slots.item ? slots.item(item) : (\n <VBtn {...item.props}>{ item.page }</VBtn>\n ) }\n </li>\n )) }\n\n <li class=\"v-pagination__next\" data-test=\"v-pagination-next\">\n { slots.next ? slots.next(controls.value.next) : (\n <VBtn {...controls.value.next} />\n ) }\n </li>\n\n { props.showFirstLastPage && (\n <li class=\"v-pagination__last\" data-test=\"v-pagination-last\">\n { slots.last ? slots.last(controls.value.last) : (\n <VBtn {...controls.value.last} />\n ) }\n </li>\n ) }\n </ul>\n </props.tag>\n )\n },\n})\n\nexport type VPagination = InstanceType<typeof VPagination>\n","// Styles\nimport './VParallax.sass'\n\n// Components\nimport { VImg } from '@/components/VImg'\n\n// Composables\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\n\n// Utilities\nimport { onBeforeUnmount, ref, watch, watchEffect } from 'vue'\nimport { defineComponent, getScrollParent } from '@/util'\n\nfunction floor (val: number) {\n return Math.floor(Math.abs(val)) * Math.sign(val)\n}\n\nexport const VParallax = defineComponent({\n name: 'VParallax',\n\n props: {\n scale: {\n type: [Number, String],\n default: 1.3,\n },\n },\n\n setup (props, { attrs, slots }) {\n const root = ref<VImg>()\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n\n watchEffect(() => {\n intersectionRef.value = root.value?.$el\n })\n\n let scrollParent: Element\n watch(isIntersecting, val => {\n if (val) {\n scrollParent = getScrollParent(intersectionRef.value)\n scrollParent = scrollParent === document.scrollingElement ? document as any : scrollParent\n scrollParent.addEventListener('scroll', onScroll, { passive: true })\n onScroll()\n } else {\n scrollParent.removeEventListener('scroll', onScroll)\n }\n })\n\n onBeforeUnmount(() => {\n scrollParent?.removeEventListener('scroll', onScroll)\n })\n\n let frame = -1\n function onScroll () {\n if (!isIntersecting.value) return\n\n cancelAnimationFrame(frame)\n frame = requestAnimationFrame(() => {\n const el: HTMLElement | null = (root.value?.$el as Element).querySelector('.v-img__img')\n if (!el) return\n\n const rect = intersectionRef.value!.getBoundingClientRect()\n const scrollHeight = scrollParent.clientHeight ?? window.innerHeight\n const scrollPos = scrollParent.scrollTop ?? window.scrollY\n const top = rect.top + scrollPos\n const progress = (scrollPos + scrollHeight - top) / (rect.height + scrollHeight)\n const translate = floor((rect.height * +props.scale - rect.height) * (-progress + 0.5))\n\n el.style.setProperty('transform', `translateY(${translate}px) scale(${props.scale})`)\n })\n }\n\n return () => (\n <VImg\n class={[\n 'v-parallax',\n { 'v-parallax--active': isIntersecting.value },\n ]}\n ref={ root }\n cover\n onLoadstart={ onScroll }\n onLoad={ onScroll }\n v-slots={ slots }\n />\n )\n },\n})\n\nexport type VParallax = InstanceType<typeof VParallax>\n","// Styles\nimport './VProgressCircular.sass'\n\n// Composables\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useIntersectionObserver } from '@/composables/intersectionObserver'\nimport { useTextColor } from '@/composables/color'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, ref, toRef, watchEffect } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VProgressCircular = defineComponent({\n name: 'VProgressCircular',\n\n props: {\n bgColor: String,\n color: String,\n indeterminate: [Boolean, String] as PropType<boolean | 'disable-shrink'>,\n modelValue: {\n type: [Number, String],\n default: 0,\n },\n rotate: {\n type: [Number, String],\n default: 0,\n },\n width: {\n type: [Number, String],\n default: 4,\n },\n\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'div' }),\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n const MAGIC_RADIUS_CONSTANT = 20\n const CIRCUMFERENCE = 2 * Math.PI * MAGIC_RADIUS_CONSTANT\n\n const root = ref<HTMLElement>()\n\n const { themeClasses } = provideTheme(props)\n const { sizeClasses, sizeStyles } = useSize(props)\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n const { textColorClasses: underlayColorClasses, textColorStyles: underlayColorStyles } = useTextColor(toRef(props, 'bgColor'))\n const { intersectionRef, isIntersecting } = useIntersectionObserver()\n const { resizeRef, contentRect } = useResizeObserver()\n\n const normalizedValue = computed(() => Math.max(0, Math.min(100, parseFloat(props.modelValue))))\n const width = computed(() => Number(props.width))\n const size = computed(() => {\n // Get size from element if size prop value is small, large etc\n return sizeStyles.value\n ? Number(props.size)\n : contentRect.value\n ? contentRect.value.width\n : Math.max(width.value, 32)\n })\n const diameter = computed(() => (MAGIC_RADIUS_CONSTANT / (1 - width.value / size.value)) * 2)\n const strokeWidth = computed(() => width.value / size.value * diameter.value)\n const strokeDashOffset = computed(() => convertToUnit(((100 - normalizedValue.value) / 100) * CIRCUMFERENCE))\n\n watchEffect(() => {\n intersectionRef.value = root.value\n resizeRef.value = root.value\n })\n\n return () => (\n <props.tag\n ref={ root }\n class={[\n 'v-progress-circular',\n {\n 'v-progress-circular--indeterminate': !!props.indeterminate,\n 'v-progress-circular--visible': isIntersecting.value,\n 'v-progress-circular--disable-shrink': props.indeterminate === 'disable-shrink',\n },\n themeClasses.value,\n sizeClasses.value,\n textColorClasses.value,\n ]}\n style={[\n sizeStyles.value,\n textColorStyles.value,\n ]}\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n aria-valuenow={ props.indeterminate ? undefined : normalizedValue.value }\n >\n <svg\n style={{\n transform: `rotate(calc(-90deg + ${Number(props.rotate)}deg))`,\n }}\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox={ `0 0 ${diameter.value} ${diameter.value}` }\n >\n <circle\n class={[\n 'v-progress-circular__underlay',\n underlayColorClasses.value,\n ]}\n style={ underlayColorStyles.value }\n fill=\"transparent\"\n cx=\"50%\"\n cy=\"50%\"\n r={ MAGIC_RADIUS_CONSTANT }\n stroke-width={ strokeWidth.value }\n stroke-dasharray={ CIRCUMFERENCE }\n stroke-dashoffset={ 0 }\n />\n\n <circle\n class=\"v-progress-circular__overlay\"\n fill=\"transparent\"\n cx=\"50%\"\n cy=\"50%\"\n r={ MAGIC_RADIUS_CONSTANT }\n stroke-width={ strokeWidth.value }\n stroke-dasharray={ CIRCUMFERENCE }\n stroke-dashoffset={ strokeDashOffset.value }\n />\n </svg>\n { slots.default && (\n <div class=\"v-progress-circular__content\">\n { slots.default({ value: normalizedValue.value }) }\n </div>\n ) }\n </props.tag>\n )\n },\n})\n","// Components\nimport { VSelectionControl } from '@/components/VSelectionControl'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { defineComponent, useRender } from '@/util'\n\nexport const VRadio = defineComponent({\n name: 'VRadio',\n\n props: {\n falseIcon: {\n type: IconValue,\n default: '$radioOff',\n },\n trueIcon: {\n type: IconValue,\n default: '$radioOn',\n },\n },\n\n setup (props, { slots }) {\n useRender(() => (\n <VSelectionControl\n class=\"v-radio\"\n trueIcon={ props.trueIcon }\n falseIcon={ props.falseIcon }\n type=\"radio\"\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VRadio = InstanceType<typeof VRadio>\n","// Styles\nimport './VRadioGroup.sass'\n\n// Components\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VLabel } from '@/components/VLabel'\nimport { VSelectionControlGroup } from '@/components/VSelectionControlGroup'\nimport { filterControlProps, makeSelectionControlProps } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed } from 'vue'\nimport { defineComponent, filterInputAttrs, getUid, useRender } from '@/util'\n\nexport const VRadioGroup = defineComponent({\n name: 'VRadioGroup',\n\n inheritAttrs: false,\n\n props: {\n height: {\n type: [Number, String],\n default: 'auto',\n },\n\n ...makeVInputProps(),\n ...makeSelectionControlProps(),\n\n trueIcon: {\n type: IconValue,\n default: '$radioOn',\n },\n falseIcon: {\n type: IconValue,\n default: '$radioOff',\n },\n type: {\n type: String,\n default: 'radio',\n },\n },\n\n setup (props, { attrs, slots }) {\n const uid = getUid()\n const id = computed(() => props.id || `radio-group-${uid}`)\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [controlProps, _2] = filterControlProps(props)\n const label = slots.label\n ? slots.label({\n label: props.label,\n props: { for: id.value },\n })\n : props.label\n\n return (\n <VInput\n class=\"v-radio-group\"\n { ...inputAttrs }\n { ...inputProps }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isReadonly,\n }) => (\n <>\n { label && (\n <VLabel for={ id.value }>\n { label }\n </VLabel>\n ) }\n\n <VSelectionControlGroup\n { ...controlProps }\n id={ id.value }\n trueIcon={ props.trueIcon }\n falseIcon={ props.falseIcon }\n type={ props.type }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n v-slots={ slots }\n />\n </>\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n","// Styles\nimport '../VSlider/VSlider.sass'\n\n// Components\nimport { VInput } from '../VInput'\nimport { VSliderThumb } from '../VSlider/VSliderThumb'\nimport { VSliderTrack } from '../VSlider/VSliderTrack'\n\n// Composables\nimport { getOffset, makeSliderProps, useSlider } from '../VSlider/slider'\nimport { makeFocusProps, useFocus } from '@/composables/focus'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { defineComponent } from '@/util'\n\n// Types\nimport type { PropType, WritableComputedRef } from 'vue'\nimport { filterInputProps, makeVInputProps } from '../VInput/VInput'\n\nexport const VRangeSlider = defineComponent({\n name: 'VRangeSlider',\n\n props: {\n ...makeFocusProps(),\n ...makeVInputProps(),\n ...makeSliderProps(),\n\n strict: Boolean,\n modelValue: {\n type: Array as PropType<number[]>,\n default: () => ([0, 0]),\n },\n },\n\n emits: {\n 'update:focused': (value: boolean) => true,\n 'update:modelValue': (value: [number, number]) => true,\n },\n\n setup (props, { slots, attrs }) {\n const startThumbRef = ref<VSliderThumb>()\n const stopThumbRef = ref<VSliderThumb>()\n const inputRef = ref<VInput>()\n\n function getActiveThumb (e: MouseEvent | TouchEvent) {\n if (!startThumbRef.value || !stopThumbRef.value) return\n\n const startOffset = getOffset(e, startThumbRef.value.$el, props.direction)\n const stopOffset = getOffset(e, stopThumbRef.value.$el, props.direction)\n\n const a = Math.abs(startOffset)\n const b = Math.abs(stopOffset)\n\n return (a < b || (a === b && startOffset < 0)) ? startThumbRef.value.$el : stopThumbRef.value.$el\n }\n\n const {\n min,\n max,\n mousePressed,\n roundValue,\n onSliderMousedown,\n onSliderTouchstart,\n trackContainerRef,\n position,\n hasLabels,\n activeThumbRef,\n } = useSlider({\n /* eslint-disable @typescript-eslint/no-use-before-define */\n props,\n handleSliderMouseUp: newValue => {\n model.value = activeThumbRef.value === startThumbRef.value?.$el ? [newValue, model.value[1]] : [model.value[0], newValue]\n },\n handleMouseMove: newValue => {\n const [start, stop] = model.value\n\n if (!props.strict && start === stop && start !== min.value) {\n activeThumbRef.value = newValue > start ? stopThumbRef.value?.$el : startThumbRef.value?.$el\n activeThumbRef.value?.focus()\n }\n\n if (activeThumbRef.value === startThumbRef.value?.$el) {\n model.value = [Math.min(newValue, stop), stop]\n } else {\n model.value = [start, Math.max(start, newValue)]\n }\n },\n getActiveThumb,\n /* eslint-enable @typescript-eslint/no-use-before-define */\n })\n\n const model = useProxiedModel(\n props,\n 'modelValue',\n undefined,\n arr => {\n if (!arr || !arr.length) return [0, 0]\n\n return arr.map(value => roundValue(value))\n },\n ) as WritableComputedRef<[number, number]>\n\n const { isFocused, focus, blur } = useFocus(props)\n const trackStart = computed(() => position(model.value[0]))\n const trackStop = computed(() => position(model.value[1]))\n\n return () => {\n const [inputProps, _] = filterInputProps(props)\n\n return (\n <VInput\n class={[\n 'v-slider',\n 'v-range-slider',\n {\n 'v-slider--has-labels': !!slots['tick-label'] || hasLabels.value,\n 'v-slider--focused': isFocused.value,\n 'v-slider--pressed': mousePressed.value,\n 'v-slider--disabled': props.disabled,\n },\n ]}\n ref={ inputRef }\n { ...inputProps }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({ id }) => (\n <div\n class=\"v-slider__container\"\n onMousedown={ onSliderMousedown }\n onTouchstartPassive={ onSliderTouchstart }\n >\n <input\n id={ `${id.value}_start` }\n name={ props.name || id.value }\n disabled={ props.disabled }\n readonly={ props.readonly }\n tabindex=\"-1\"\n value={ model.value[0] }\n />\n\n <input\n id={ `${id.value}_stop` }\n name={ props.name || id.value }\n disabled={ props.disabled }\n readonly={ props.readonly }\n tabindex=\"-1\"\n value={ model.value[1] }\n />\n\n <VSliderTrack\n ref={ trackContainerRef }\n start={ trackStart.value }\n stop={ trackStop.value }\n >\n {{ 'tick-label': slots['tick-label'] }}\n </VSliderTrack>\n\n <VSliderThumb\n ref={ startThumbRef }\n focused={ isFocused && activeThumbRef.value === startThumbRef.value?.$el }\n modelValue={ model.value[0] }\n onUpdate:modelValue={ v => (model.value = [v, model.value[1]]) }\n onFocus={ (e: FocusEvent) => {\n focus()\n activeThumbRef.value = startThumbRef.value?.$el\n\n // Make sure second thumb is focused if\n // the thumbs are on top of each other\n // and they are both at minimum value\n // but only if focused from outside.\n if (\n model.value[0] === model.value[1] &&\n model.value[1] === min.value &&\n e.relatedTarget !== stopThumbRef.value?.$el\n ) {\n startThumbRef.value?.$el.blur()\n stopThumbRef.value?.$el.focus()\n }\n } }\n onBlur={ () => {\n blur()\n activeThumbRef.value = undefined\n } }\n min={ min.value }\n max={ model.value[1] }\n position={ trackStart.value }\n >\n {{ 'thumb-label': slots['thumb-label'] }}\n </VSliderThumb>\n\n <VSliderThumb\n ref={ stopThumbRef }\n focused={ isFocused && activeThumbRef.value === stopThumbRef.value?.$el }\n modelValue={ model.value[1] }\n onUpdate:modelValue={ v => (model.value = [model.value[0], v]) }\n onFocus={ (e: FocusEvent) => {\n focus()\n activeThumbRef.value = stopThumbRef.value?.$el\n\n // Make sure first thumb is focused if\n // the thumbs are on top of each other\n // and they are both at maximum value\n // but only if focused from outside.\n if (\n model.value[0] === model.value[1] &&\n model.value[0] === max.value &&\n e.relatedTarget !== startThumbRef.value?.$el\n ) {\n stopThumbRef.value?.$el.blur()\n startThumbRef.value?.$el.focus()\n }\n } }\n onBlur={ () => {\n blur()\n activeThumbRef.value = undefined\n } }\n min={ model.value[0] }\n max={ max.value }\n position={ trackStop.value }\n >\n {{ 'thumb-label': slots['thumb-label'] }}\n </VSliderThumb>\n </div>\n ),\n }}\n </VInput>\n )\n }\n },\n})\n\nexport type VRangeSlider = InstanceType<typeof VRangeSlider>\n","// Styles\nimport './VRating.sass'\n\n// Components\nimport { VBtn } from '../VBtn'\n\n// Composables\nimport { makeDensityProps } from '@/composables/density'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useLocale } from '@/composables/locale'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { createRange, genericComponent, getUid } from '@/util'\n\n// Types\nimport type { Prop } from 'vue'\nimport type { MakeSlots } from '@/util'\nimport type { Variant } from '@/composables/variant'\n\ntype VRatingItemSlot = {\n value: number\n index: number\n isFilled: boolean\n isHovered: boolean\n icon: IconValue\n color?: string\n props: Record<string, unknown>\n}\n\ntype VRatingItemLabelSlot = {\n value: number\n index: number\n label?: string\n}\n\nexport const VRating = genericComponent<new <T>() => {\n $slots: MakeSlots<{\n item: [VRatingItemSlot]\n 'item-label': [VRatingItemLabelSlot]\n }>\n}>()({\n name: 'VRating',\n\n props: {\n name: String,\n itemAriaLabel: {\n type: String,\n default: '$vuetify.rating.ariaLabel.item',\n },\n activeColor: String,\n color: String,\n clearable: Boolean,\n disabled: Boolean,\n emptyIcon: {\n type: IconValue,\n default: '$ratingEmpty',\n },\n fullIcon: {\n type: IconValue,\n default: '$ratingFull',\n },\n halfIncrements: Boolean,\n hover: Boolean,\n length: {\n type: [Number, String],\n default: 5,\n },\n readonly: Boolean,\n modelValue: {\n type: Number,\n default: 0,\n },\n itemLabels: Array as Prop<string[]>,\n itemLabelPosition: {\n type: String,\n default: 'top',\n validator: (v: any) => ['top', 'bottom'].includes(v),\n },\n ripple: Boolean,\n\n ...makeDensityProps(),\n ...makeSizeProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n emits: {\n 'update:modelValue': (value: number) => true,\n },\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { themeClasses } = provideTheme(props)\n const rating = useProxiedModel(props, 'modelValue')\n\n const range = computed(() => createRange(Number(props.length), 1))\n const increments = computed(() => range.value.flatMap(v => props.halfIncrements ? [v - 0.5, v] : [v]))\n const hoverIndex = ref(-1)\n const focusIndex = ref(-1)\n const firstRef = ref<HTMLElement>()\n let isClicking = false\n\n const itemState = computed(() => increments.value.map(value => {\n const isHovering = props.hover && hoverIndex.value > -1\n const isFilled = rating.value >= value\n const isHovered = hoverIndex.value >= value\n const isFullIcon = isHovering ? isHovered : isFilled\n const icon = isFullIcon ? props.fullIcon : props.emptyIcon\n const activeColor = props.activeColor ?? props.color\n const color = (isFilled || isHovered) ? activeColor : props.color\n\n return { isFilled, isHovered, icon, color }\n }))\n\n const eventState = computed(() => [0, ...increments.value].map(value => {\n function onMouseenter () {\n hoverIndex.value = value\n }\n\n function onMouseleave () {\n hoverIndex.value = -1\n }\n\n function onFocus () {\n if (value === 0 && rating.value === 0) {\n firstRef.value?.focus()\n } else {\n focusIndex.value = value\n }\n }\n\n function onBlur () {\n if (!isClicking) focusIndex.value = -1\n }\n\n function onClick () {\n if (props.disabled || props.readonly) return\n rating.value = rating.value === value && props.clearable ? 0 : value\n }\n\n return {\n onMouseenter: props.hover ? onMouseenter : undefined,\n onMouseleave: props.hover ? onMouseleave : undefined,\n onFocus,\n onBlur,\n onClick,\n }\n }))\n\n function onMousedown () {\n isClicking = true\n }\n\n function onMouseup () {\n isClicking = false\n }\n\n const name = computed(() => props.name ?? `v-rating-${getUid()}`)\n\n function VRatingItem ({ value, index, showStar = true }: { value: number, index: number, showStar?: boolean }) {\n const { onMouseenter, onMouseleave, onFocus, onBlur, onClick } = eventState.value[index + 1]\n const id = `${name.value}-${String(value).replace('.', '-')}`\n const btnProps = {\n color: itemState.value[index]?.color,\n density: props.density,\n disabled: props.disabled,\n icon: itemState.value[index]?.icon,\n ripple: props.ripple,\n size: props.size,\n tag: 'span',\n variant: 'plain' as Variant,\n }\n\n return (\n <>\n <label\n for={ id }\n class={{\n 'v-rating__item--half': props.halfIncrements && value % 1 > 0,\n 'v-rating__item--full': props.halfIncrements && value % 1 === 0,\n }}\n onMousedown={ onMousedown }\n onMouseup={ onMouseup }\n onMouseenter={ onMouseenter }\n onMouseleave={ onMouseleave }\n >\n <span class=\"v-rating__hidden\">{ t(props.itemAriaLabel, value, props.length) }</span>\n {\n !showStar ? undefined\n : slots.item ? slots.item({\n ...itemState.value[index],\n props: btnProps,\n value,\n index,\n })\n : (\n <VBtn { ...btnProps } />\n )\n }\n </label>\n <input\n class=\"v-rating__hidden\"\n name={ name.value }\n id={ id }\n type=\"radio\"\n value={ value }\n checked={ rating.value === value }\n onClick={ onClick }\n onFocus={ onFocus }\n onBlur={ onBlur }\n ref={ index === 0 ? firstRef : undefined }\n readonly={ props.readonly }\n disabled={ props.disabled }\n />\n </>\n )\n }\n\n function createLabel (labelProps: { value: number, index: number, label?: string }) {\n if (slots['item-label']) return slots['item-label'](labelProps)\n\n if (labelProps.label) return <span>{ labelProps.label }</span>\n\n return <span>&nbsp;</span>\n }\n\n return () => {\n const hasLabels = !!props.itemLabels?.length || slots['item-label']\n\n return (\n <props.tag\n class={[\n 'v-rating',\n {\n 'v-rating--hover': props.hover,\n 'v-rating--readonly': props.readonly,\n },\n themeClasses.value,\n ]}\n >\n <VRatingItem value={ 0 } index={ -1 } showStar={ false } />\n\n { range.value.map((value, i) => (\n <div class=\"v-rating__wrapper\">\n {\n hasLabels && props.itemLabelPosition === 'top'\n ? createLabel({ value, index: i, label: props.itemLabels?.[i] })\n : undefined\n }\n <div\n class={[\n 'v-rating__item',\n {\n 'v-rating__item--focused': Math.ceil(focusIndex.value) === value,\n },\n ]}\n >\n { props.halfIncrements ? (\n <>\n <VRatingItem value={ value - 0.5 } index={ i * 2 } />\n <VRatingItem value={ value } index={ (i * 2) + 1 } />\n </>\n ) : (\n <VRatingItem value={ value } index={ i } />\n ) }\n </div>\n {\n hasLabels && props.itemLabelPosition === 'bottom'\n ? createLabel({ value, index: i, label: props.itemLabels?.[i] })\n : undefined\n }\n </div>\n )) }\n </props.tag>\n )\n }\n },\n})\n\nexport type VRating = InstanceType<typeof VRating>\n","export function bias (val: number) {\n const c = 0.501\n const x = Math.abs(val)\n return Math.sign(val) * (x / ((1 / c - 2) * (1 - x) + 1))\n}\n\nexport function calculateUpdatedOffset ({\n selectedElement,\n containerSize,\n contentSize,\n isRtl,\n currentScrollOffset,\n isHorizontal,\n}: {\n selectedElement: HTMLElement\n containerSize: number\n contentSize: number\n isRtl: boolean\n currentScrollOffset: number\n isHorizontal: boolean\n}): number {\n const clientSize = isHorizontal ? selectedElement.clientWidth : selectedElement.clientHeight\n const offsetStart = isHorizontal ? selectedElement.offsetLeft : selectedElement.offsetTop\n const adjustedOffsetStart = isRtl ? (contentSize - offsetStart - clientSize) : offsetStart\n\n if (isRtl) {\n currentScrollOffset = -currentScrollOffset\n }\n\n const totalSize = containerSize + currentScrollOffset\n const itemOffset = clientSize + adjustedOffsetStart\n const additionalOffset = clientSize * 0.4\n\n if (adjustedOffsetStart <= currentScrollOffset) {\n currentScrollOffset = Math.max(adjustedOffsetStart - additionalOffset, 0)\n } else if (totalSize <= itemOffset) {\n currentScrollOffset = Math.min(currentScrollOffset - (totalSize - itemOffset - additionalOffset), contentSize - containerSize)\n }\n\n return isRtl ? -currentScrollOffset : currentScrollOffset\n}\n\nexport function calculateCenteredOffset ({\n selectedElement,\n containerSize,\n contentSize,\n isRtl,\n isHorizontal,\n}: {\n selectedElement: HTMLElement\n containerSize: number\n contentSize: number\n isRtl: boolean\n isHorizontal: boolean\n}): number {\n const clientSize = isHorizontal ? selectedElement.clientWidth : selectedElement.clientHeight\n const offsetStart = isHorizontal ? selectedElement.offsetLeft : selectedElement.offsetTop\n\n if (isRtl) {\n const offsetCentered = contentSize - offsetStart - clientSize / 2 - containerSize / 2\n return -Math.min(contentSize - containerSize, Math.max(0, offsetCentered))\n } else {\n const offsetCentered = offsetStart + clientSize / 2 - containerSize / 2\n return Math.min(contentSize - containerSize, Math.max(0, offsetCentered))\n }\n}\n","// Styles\nimport './VSlideGroup.sass'\n\n// Components\nimport { VFadeTransition } from '@/components/transitions'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { useDisplay } from '@/composables'\nimport { useResizeObserver } from '@/composables/resizeObserver'\nimport { useRtl } from '@/composables/rtl'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { bias, calculateCenteredOffset, calculateUpdatedOffset } from './helpers'\nimport { clamp, defineComponent, useRender } from '@/util'\nimport { computed, ref, watch, watchEffect } from 'vue'\n\n// Types\nimport type { GroupProvide } from '@/composables/group'\nimport type { InjectionKey } from 'vue'\n\nexport const VSlideGroupSymbol: InjectionKey<GroupProvide> = Symbol.for('vuetify:v-slide-group')\n\nexport const VSlideGroup = defineComponent({\n name: 'VSlideGroup',\n\n props: {\n centerActive: Boolean,\n direction: {\n type: String,\n default: 'horizontal',\n },\n symbol: {\n type: null,\n default: VSlideGroupSymbol,\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => (\n typeof v === 'boolean' || [\n 'always',\n 'desktop',\n 'mobile',\n ].includes(v)\n ),\n },\n ...makeTagProps(),\n ...makeGroupProps({\n selectedClass: 'v-slide-group-item--active',\n }),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { isRtl } = useRtl()\n const { mobile } = useDisplay()\n const group = useGroup(props, props.symbol)\n const isOverflowing = ref(false)\n const scrollOffset = ref(0)\n const containerSize = ref(0)\n const contentSize = ref(0)\n const isHorizontal = computed(() => props.direction === 'horizontal')\n\n const { resizeRef: containerRef, contentRect: containerRect } = useResizeObserver()\n const { resizeRef: contentRef, contentRect } = useResizeObserver()\n\n watchEffect(() => {\n if (!containerRect.value || !contentRect.value) return\n\n const sizeProperty = isHorizontal.value ? 'width' : 'height'\n\n containerSize.value = containerRect.value[sizeProperty]\n contentSize.value = contentRect.value[sizeProperty]\n\n isOverflowing.value = containerSize.value + 1 < contentSize.value\n })\n\n const firstSelectedIndex = computed(() => {\n if (!group.selected.value.length) return -1\n\n return group.items.value.findIndex(item => item.id === group.selected.value[0])\n })\n\n const lastSelectedIndex = computed(() => {\n if (!group.selected.value.length) return -1\n\n return group.items.value.findIndex(item => item.id === group.selected.value[group.selected.value.length - 1])\n })\n\n watch(group.selected, () => {\n if (firstSelectedIndex.value < 0 || !contentRef.value) return\n\n // TODO: Is this too naive? Should we store element references in group composable?\n const selectedElement = contentRef.value.children[lastSelectedIndex.value] as HTMLElement\n\n if (firstSelectedIndex.value === 0 || !isOverflowing.value) {\n scrollOffset.value = 0\n } else if (props.centerActive) {\n scrollOffset.value = calculateCenteredOffset({\n selectedElement,\n containerSize: containerSize.value,\n contentSize: contentSize.value,\n isRtl: isRtl.value,\n isHorizontal: isHorizontal.value,\n })\n } else if (isOverflowing.value) {\n scrollOffset.value = calculateUpdatedOffset({\n selectedElement,\n containerSize: containerSize.value,\n contentSize: contentSize.value,\n isRtl: isRtl.value,\n currentScrollOffset: scrollOffset.value,\n isHorizontal: isHorizontal.value,\n })\n }\n })\n\n let firstOverflow = true\n watch(isOverflowing, () => {\n if (!firstOverflow || !contentRef.value || firstSelectedIndex.value < 0) return\n\n firstOverflow = false\n\n // TODO: Is this too naive? Should we store element references in group composable?\n const selectedElement = contentRef.value.children[firstSelectedIndex.value] as HTMLElement\n\n scrollOffset.value = calculateCenteredOffset({\n selectedElement,\n containerSize: containerSize.value,\n contentSize: contentSize.value,\n isRtl: isRtl.value,\n isHorizontal: isHorizontal.value,\n })\n })\n\n const disableTransition = ref(false)\n\n let startTouch = 0\n let startOffset = 0\n\n function onTouchstart (e: TouchEvent) {\n const sizeProperty = isHorizontal.value ? 'clientX' : 'clientY'\n startOffset = scrollOffset.value\n startTouch = e.touches[0][sizeProperty]\n disableTransition.value = true\n }\n\n function onTouchmove (e: TouchEvent) {\n if (!isOverflowing.value) return\n\n const sizeProperty = isHorizontal.value ? 'clientX' : 'clientY'\n scrollOffset.value = startOffset + startTouch - e.touches[0][sizeProperty]\n }\n\n function onTouchend (e: TouchEvent) {\n const maxScrollOffset = contentSize.value - containerSize.value\n\n if (isRtl.value) {\n if (scrollOffset.value > 0 || !isOverflowing.value) {\n scrollOffset.value = 0\n } else if (scrollOffset.value <= -maxScrollOffset) {\n scrollOffset.value = -maxScrollOffset\n }\n } else {\n if (scrollOffset.value < 0 || !isOverflowing.value) {\n scrollOffset.value = 0\n } else if (scrollOffset.value >= maxScrollOffset) {\n scrollOffset.value = maxScrollOffset\n }\n }\n\n disableTransition.value = false\n }\n\n function onScroll () {\n containerRef.value && (containerRef.value.scrollLeft = 0)\n }\n\n const isFocused = ref(false)\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n\n if (!isOverflowing.value || !contentRef.value) return\n\n // Focused element is likely to be the root of an item, so a\n // breadth-first search will probably find it in the first iteration\n for (const el of e.composedPath()) {\n for (const item of contentRef.value.children) {\n if (item === el) {\n scrollOffset.value = calculateUpdatedOffset({\n selectedElement: item as HTMLElement,\n containerSize: containerSize.value,\n contentSize: contentSize.value,\n isRtl: isRtl.value,\n currentScrollOffset: scrollOffset.value,\n isHorizontal: isHorizontal.value,\n })\n return\n }\n }\n }\n }\n\n function onFocusout (e: FocusEvent) {\n isFocused.value = false\n }\n\n function onFocus (e: FocusEvent) {\n if (\n !isFocused.value &&\n !(e.relatedTarget && contentRef.value?.contains(e.relatedTarget as Node))\n ) focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (!contentRef.value) return\n\n if (e.key === (isHorizontal.value ? 'ArrowRight' : 'ArrowDown')) {\n focus('next')\n } else if (e.key === (isHorizontal.value ? 'ArrowLeft' : 'ArrowUp')) {\n focus('prev')\n } else if (e.key === 'Home') {\n focus('first')\n } else if (e.key === 'End') {\n focus('last')\n }\n }\n\n function focus (location?: 'next' | 'prev' | 'first' | 'last') {\n if (!contentRef.value) return\n\n if (!location) {\n contentRef.value.querySelector('[tabindex]')\n const focusable = [...contentRef.value.querySelectorAll(\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])'\n )].filter(el => !el.hasAttribute('disabled')) as HTMLElement[]\n focusable[0]?.focus()\n } else if (location === 'next') {\n const el = contentRef.value.querySelector(':focus')?.nextElementSibling as HTMLElement | undefined\n if (el) el.focus()\n else focus('first')\n } else if (location === 'prev') {\n const el = contentRef.value.querySelector(':focus')?.previousElementSibling as HTMLElement | undefined\n if (el) el.focus()\n else focus('last')\n } else if (location === 'first') {\n (contentRef.value.firstElementChild as HTMLElement)?.focus()\n } else if (location === 'last') {\n (contentRef.value.lastElementChild as HTMLElement)?.focus()\n }\n }\n\n function scrollTo (location: 'prev' | 'next') {\n const sign = isRtl.value ? -1 : 1\n const newAbosluteOffset = sign * scrollOffset.value +\n (location === 'prev' ? -1 : 1) * containerSize.value\n\n scrollOffset.value = sign * clamp(newAbosluteOffset, 0, contentSize.value - containerSize.value)\n }\n\n const contentStyles = computed(() => {\n const scrollAmount = scrollOffset.value <= 0\n ? bias(-scrollOffset.value)\n : scrollOffset.value > contentSize.value - containerSize.value\n ? -(contentSize.value - containerSize.value) + bias(contentSize.value - containerSize.value - scrollOffset.value)\n : -scrollOffset.value\n\n return {\n transform: `translate${isHorizontal.value ? 'X' : 'Y'}(${scrollAmount}px)`,\n transition: disableTransition.value ? 'none' : '',\n willChange: disableTransition.value ? 'transform' : '',\n }\n })\n\n const slotProps = computed(() => ({\n next: group.next,\n prev: group.prev,\n select: group.select,\n isSelected: group.isSelected,\n }))\n\n const hasAffixes = computed(() => {\n switch (props.showArrows) {\n // Always show arrows on desktop & mobile\n case 'always': return true\n\n // Always show arrows on desktop\n case 'desktop': return !mobile.value\n\n // Show arrows on mobile when overflowing.\n // This matches the default 2.2 behavior\n case true: return isOverflowing.value || Math.abs(scrollOffset.value) > 0\n\n // Always show on mobile\n case 'mobile': return (\n mobile.value ||\n (isOverflowing.value || Math.abs(scrollOffset.value) > 0)\n )\n\n // https://material.io/components/tabs#scrollable-tabs\n // Always show arrows when\n // overflowed on desktop\n default: return (\n !mobile.value &&\n (isOverflowing.value || Math.abs(scrollOffset.value) > 0)\n )\n }\n })\n\n const hasPrev = computed(() => {\n return hasAffixes.value && scrollOffset.value > 0\n })\n\n const hasNext = computed(() => {\n if (!hasAffixes.value) return false\n\n // Check one scroll ahead to know the width of right-most item\n return contentSize.value > Math.abs(scrollOffset.value) + containerSize.value\n })\n\n useRender(() => (\n <props.tag\n class={[\n 'v-slide-group',\n {\n 'v-slide-group--vertical': !isHorizontal.value,\n 'v-slide-group--has-affixes': hasAffixes.value,\n 'v-slide-group--is-overflowing': isOverflowing.value,\n },\n ]}\n tabindex={ (isFocused.value || group.selected.value.length) ? -1 : 0 }\n onFocus={ onFocus }\n >\n { hasAffixes.value && (\n <div\n class={[\n 'v-slide-group__prev',\n { 'v-slide-group__prev--disabled': !hasPrev.value },\n ]}\n onClick={ () => scrollTo('prev') }\n >\n { slots.prev?.(slotProps.value) ?? (\n <VFadeTransition>\n <VIcon icon={ props.prevIcon }></VIcon>\n </VFadeTransition>\n ) }\n </div>\n ) }\n\n <div\n ref={ containerRef }\n class=\"v-slide-group__container\"\n onScroll={ onScroll }\n >\n <div\n ref={ contentRef }\n class=\"v-slide-group__content\"\n style={ contentStyles.value }\n onTouchstartPassive={ onTouchstart }\n onTouchmovePassive={ onTouchmove }\n onTouchendPassive={ onTouchend }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n onKeydown={ onKeydown }\n >\n { slots.default?.(slotProps.value) }\n </div>\n </div>\n\n { hasAffixes.value && (\n <div\n class={[\n 'v-slide-group__next',\n { 'v-slide-group__next--disabled': !hasNext.value },\n ]}\n onClick={ () => scrollTo('next') }\n >\n { slots.next?.(slotProps.value) ?? (\n <VFadeTransition>\n <VIcon icon={ props.nextIcon }></VIcon>\n </VFadeTransition>\n ) }\n </div>\n ) }\n </props.tag>\n ))\n\n return {\n selected: group.selected,\n scrollTo,\n scrollOffset,\n focus,\n }\n },\n})\n\nexport type VSlideGroup = InstanceType<typeof VSlideGroup>\n","// Composables\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { VSlideGroupSymbol } from './VSlideGroup'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VSlideGroupItem = defineComponent({\n name: 'VSlideGroupItem',\n\n props: {\n ...makeGroupItemProps(),\n },\n\n setup (props, { slots }) {\n const slideGroupItem = useGroupItem(props, VSlideGroupSymbol)\n\n return () => slots.default?.({\n isSelected: slideGroupItem.isSelected.value,\n select: slideGroupItem.select,\n toggle: slideGroupItem.toggle,\n selectedClass: slideGroupItem.selectedClass.value,\n })\n },\n})\n","// Styles\nimport './VSnackbar.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\n\n// Utilities\nimport { onMounted, watch } from 'vue'\nimport { defineComponent, useRender } from '@/util'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { useScopeId } from '@/composables/scopeId'\n\nexport const VSnackbar = defineComponent({\n name: 'VSnackbar',\n\n props: {\n app: Boolean,\n contentClass: {\n type: String,\n default: '',\n },\n multiLine: Boolean,\n timeout: {\n type: [Number, String],\n default: 5000,\n },\n vertical: Boolean,\n\n modelValue: Boolean,\n\n ...makeLocationProps({ location: 'bottom' } as const),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeVariantProps(),\n ...makeTransitionProps({ transition: 'v-snackbar-transition' }),\n },\n\n emits: {\n 'update:modelValue': (v: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { scopeId } = useScopeId()\n\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { roundedClasses } = useRounded(props)\n\n watch(isActive, startTimeout)\n watch(() => props.timeout, startTimeout)\n\n onMounted(() => {\n if (isActive.value) startTimeout()\n })\n\n let activeTimeout = -1\n function startTimeout () {\n window.clearTimeout(activeTimeout)\n const timeout = Number(props.timeout)\n\n if (!isActive.value || timeout === -1) return\n\n activeTimeout = window.setTimeout(() => {\n isActive.value = false\n }, timeout)\n }\n\n function onPointerenter () {\n window.clearTimeout(activeTimeout)\n }\n\n useRender(() => (\n <VOverlay\n v-model={ isActive.value }\n class={[\n 'v-snackbar',\n {\n 'v-snackbar--active': isActive.value,\n 'v-snackbar--multi-line': props.multiLine && !props.vertical,\n 'v-snackbar--vertical': props.vertical,\n },\n positionClasses.value,\n ]}\n style={[colorStyles.value]}\n contentProps={{\n style: locationStyles.value,\n }}\n persistent\n noClickAnimation\n scrim={ false }\n scrollStrategy=\"none\"\n transition={ props.transition }\n { ...scopeId }\n v-slots={{ activator: slots.activator }}\n >\n <div\n class={[\n 'v-snackbar__wrapper',\n colorClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n onPointerenter={ onPointerenter }\n onPointerleave={ startTimeout }\n >\n { genOverlays(false, 'v-snackbar') }\n\n { slots.default && (\n <div\n class={[\n 'v-snackbar__content',\n props.contentClass,\n ]}\n role=\"status\"\n aria-live=\"polite\"\n >\n { slots.default?.() }\n </div>\n ) }\n\n { slots.actions && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n variant: 'text',\n ripple: false,\n },\n }}\n >\n <div class=\"v-snackbar__actions\">\n { slots.actions?.() }\n </div>\n </VDefaultsProvider>\n ) }\n </div>\n </VOverlay>\n ))\n },\n})\n\nexport type VSnackbar = InstanceType<typeof VSnackbar>\n","// Styles\nimport './VSwitch.sass'\n\n// Components\nimport { filterControlProps, makeSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { LoaderSlot, useLoader } from '@/composables/loader'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed, ref } from 'vue'\nimport { defineComponent, filterInputAttrs, useRender } from '@/util'\n\nexport const VSwitch = defineComponent({\n name: 'VSwitch',\n\n inheritAttrs: false,\n\n props: {\n indeterminate: Boolean,\n inset: Boolean,\n flat: Boolean,\n loading: {\n type: [Boolean, String],\n default: false,\n },\n\n ...makeVInputProps(),\n ...makeSelectionControlProps(),\n },\n\n emits: {\n 'update:indeterminate': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const { loaderClasses } = useLoader(props)\n\n const loaderColor = computed(() => {\n return typeof props.loading === 'string' && props.loading !== ''\n ? props.loading\n : props.color\n })\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [controlProps, _2] = filterControlProps(props)\n const control = ref<VSelectionControl>()\n\n function onClick () {\n control.value?.input?.click()\n }\n\n return (\n <VInput\n class={[\n 'v-switch',\n { 'v-switch--inset': props.inset },\n { 'v-switch--indeterminate': indeterminate.value },\n loaderClasses.value,\n ]}\n { ...inputAttrs }\n { ...inputProps }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isReadonly,\n isValid,\n }) => (\n <VSelectionControl\n ref={ control }\n { ...controlProps }\n type=\"checkbox\"\n onUpdate:modelValue={ onChange }\n aria-checked={ indeterminate.value ? 'mixed' : undefined }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n >\n {{\n ...slots,\n default: () => (<div class=\"v-switch__track\" onClick={ onClick }></div>),\n input: ({ textColorClasses }) => (\n <div\n class={[\n 'v-switch__thumb',\n textColorClasses.value,\n ]}\n >\n { props.loading && (\n <LoaderSlot\n name=\"v-switch\"\n active\n color={ isValid.value === false ? undefined : loaderColor.value }\n >\n { slotProps => (\n slots.loader\n ? slots.loader(slotProps)\n : (\n <VProgressCircular\n active={ slotProps.isActive }\n color={ slotProps.color }\n indeterminate\n size=\"16\"\n width=\"2\"\n />\n )\n )}\n </LoaderSlot>\n ) }\n </div>\n ),\n }}\n </VSelectionControl>\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VSwitch = InstanceType<typeof VSwitch>\n","// Styles\nimport './VSystemBar.sass'\n\n// Composables\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { computed, ref, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\nexport const VSystemBar = defineComponent({\n name: 'VSystemBar',\n\n props: {\n color: String,\n height: [Number, String],\n window: Boolean,\n\n ...makeElevationProps(),\n ...makeLayoutItemProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const height = computed(() => props.height ?? props.window ? 32 : 24)\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: ref('top'),\n layoutSize: height,\n elementSize: height,\n active: computed(() => true),\n absolute: toRef(props, 'absolute'),\n })\n\n provideDefaults({\n VBtn: {\n variant: 'text',\n density: 'compact',\n },\n }, { scoped: true })\n\n return () => (\n <props.tag\n class={[\n 'v-system-bar',\n { 'v-system-bar--window': props.window },\n themeClasses.value,\n backgroundColorClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n layoutItemStyles.value,\n ]}\n v-slots={ slots }\n />\n )\n },\n})\n","import type { InjectionKey } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport const VTabsSymbol: InjectionKey<GroupProvide> = Symbol.for('vuetify:v-tabs')\n","// Styles\nimport './VTab.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { makeGroupItemProps } from '@/composables/group'\nimport { makeRouterProps } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps } from '@/composables/theme'\nimport { useTextColor } from '@/composables/color'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { defineComponent, pick, standardEasing, useRender } from '@/util'\nimport { VTabsSymbol } from './shared'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VTab = defineComponent({\n name: 'VTab',\n\n props: {\n fixed: Boolean,\n icon: [Boolean, String, Function, Object] as PropType<boolean | IconValue>,\n prependIcon: IconValue,\n appendIcon: IconValue,\n\n stacked: Boolean,\n title: String,\n\n ripple: {\n type: Boolean,\n default: true,\n },\n color: String,\n sliderColor: String,\n hideSlider: Boolean,\n\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n },\n\n ...makeTagProps(),\n ...makeRouterProps(),\n ...makeGroupItemProps({\n selectedClass: 'v-tab--selected',\n }),\n ...makeThemeProps(),\n },\n\n setup (props, { slots, attrs }) {\n const { textColorClasses: sliderColorClasses, textColorStyles: sliderColorStyles } = useTextColor(props, 'sliderColor')\n const isHorizontal = computed(() => props.direction === 'horizontal')\n const isSelected = ref(false)\n\n const rootEl = ref<VBtn>()\n const sliderEl = ref<HTMLElement>()\n\n function updateSlider ({ value }: { value: boolean }) {\n isSelected.value = value\n\n if (value) {\n const prevEl: HTMLElement | undefined = rootEl.value?.$el.parentElement?.querySelector('.v-tab--selected .v-tab__slider')\n const nextEl = sliderEl.value\n\n if (!prevEl || !nextEl) return\n\n const color = getComputedStyle(prevEl).color\n\n const prevBox = prevEl.getBoundingClientRect()\n const nextBox = nextEl.getBoundingClientRect()\n\n const xy = isHorizontal.value ? 'x' : 'y'\n const XY = isHorizontal.value ? 'X' : 'Y'\n const rightBottom = isHorizontal.value ? 'right' : 'bottom'\n const widthHeight = isHorizontal.value ? 'width' : 'height'\n\n const prevPos = prevBox[xy]\n const nextPos = nextBox[xy]\n const delta = prevPos > nextPos\n ? prevBox[rightBottom] - nextBox[rightBottom]\n : prevBox[xy] - nextBox[xy]\n const origin =\n Math.sign(delta) > 0 ? (isHorizontal.value ? 'right' : 'bottom')\n : Math.sign(delta) < 0 ? (isHorizontal.value ? 'left' : 'top')\n : 'center'\n const size = Math.abs(delta) + (Math.sign(delta) < 0 ? prevBox[widthHeight] : nextBox[widthHeight])\n const scale = size / Math.max(prevBox[widthHeight], nextBox[widthHeight])\n const initialScale = prevBox[widthHeight] / nextBox[widthHeight]\n\n const sigma = 1.5\n nextEl.animate({\n backgroundColor: [color, ''],\n transform: [\n `translate${XY}(${delta}px) scale${XY}(${initialScale})`,\n `translate${XY}(${delta / sigma}px) scale${XY}(${(scale - 1) / sigma + 1})`,\n '',\n ],\n transformOrigin: Array(3).fill(origin),\n }, {\n duration: 225,\n easing: standardEasing,\n })\n }\n }\n\n useRender(() => {\n const [btnProps] = pick(props, [\n 'href',\n 'to',\n 'replace',\n 'icon',\n 'stacked',\n 'prependIcon',\n 'appendIcon',\n 'ripple',\n 'theme',\n 'disabled',\n 'selectedClass',\n 'value',\n 'color',\n ])\n\n return (\n <VBtn\n _as=\"VTab\"\n symbol={ VTabsSymbol }\n ref={ rootEl }\n class={[\n 'v-tab',\n ]}\n tabindex={ isSelected.value ? 0 : -1 }\n role=\"tab\"\n aria-selected={ String(isSelected.value) }\n block={ props.fixed }\n maxWidth={ props.fixed ? 300 : undefined }\n variant=\"text\"\n rounded={ 0 }\n { ...btnProps }\n { ...attrs }\n onGroup:selected={ updateSlider }\n >\n { slots.default ? slots.default() : props.title }\n { !props.hideSlider && (\n <div\n ref={ sliderEl }\n class={[\n 'v-tab__slider',\n sliderColorClasses.value,\n ]}\n style={ sliderColorStyles.value }\n />\n ) }\n </VBtn>\n )\n })\n\n return {}\n },\n})\n\nexport type VTab = InstanceType<typeof VTab>\n","// Styles\nimport './VTabs.sass'\n\n// Components\nimport { VSlideGroup } from '@/components/VSlideGroup'\nimport { VTab } from './VTab'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent } from '@/util'\nimport { VTabsSymbol } from './shared'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport type TabItem = string | Record<string, any>\n\nfunction parseItems (items: TabItem[] | undefined) {\n if (!items) return []\n\n return items.map(item => {\n if (typeof item === 'string') return { title: item, value: item }\n\n return item\n })\n}\n\nexport const VTabs = defineComponent({\n name: 'VTabs',\n\n props: {\n alignWithTitle: Boolean,\n color: String,\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n },\n fixedTabs: Boolean,\n items: {\n type: Array as PropType<TabItem[]>,\n default: () => ([]),\n },\n stacked: Boolean,\n backgroundColor: String,\n centered: Boolean,\n grow: Boolean,\n height: {\n type: [Number, String],\n default: undefined,\n },\n hideSlider: Boolean,\n optional: Boolean,\n end: Boolean,\n sliderColor: String,\n modelValue: null,\n\n ...makeDensityProps(),\n ...makeTagProps(),\n },\n\n emits: {\n 'update:modelValue': (v: unknown) => true,\n },\n\n setup (props, { slots, emit }) {\n const parsedItems = computed(() => parseItems(props.items))\n const { densityClasses } = useDensity(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'backgroundColor'))\n\n provideDefaults({\n VTab: {\n color: toRef(props, 'color'),\n direction: toRef(props, 'direction'),\n stacked: toRef(props, 'stacked'),\n fixed: toRef(props, 'fixedTabs'),\n sliderColor: toRef(props, 'sliderColor'),\n hideSlider: toRef(props, 'hideSlider'),\n },\n })\n\n return () => (\n <VSlideGroup\n class={[\n 'v-tabs',\n `v-tabs--${props.direction}`,\n {\n 'v-tabs--align-with-title': props.alignWithTitle,\n 'v-tabs--centered': props.centered,\n 'v-tabs--fixed-tabs': props.fixedTabs,\n 'v-tabs--grow': props.grow,\n 'v-tabs--end': props.end,\n 'v-tabs--stacked': props.stacked,\n },\n densityClasses.value,\n backgroundColorClasses.value,\n ]}\n style={backgroundColorStyles.value}\n role=\"tablist\"\n symbol={ VTabsSymbol }\n mandatory=\"force\"\n direction={ props.direction }\n modelValue={ props.modelValue }\n onUpdate:modelValue={ v => emit('update:modelValue', v) }\n >\n { slots.default ? slots.default() : parsedItems.value.map(item => (\n <VTab { ...item } key={ item.title } />\n )) }\n </VSlideGroup>\n )\n },\n})\n\nexport type VTabs = InstanceType<typeof VTabs>\n","// Styles\nimport './VTable.sass'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { convertToUnit, defineComponent } from '@/util'\nimport { makeDensityProps, useDensity } from '@/composables/density'\n\nexport const VTable = defineComponent({\n name: 'VTable',\n\n props: {\n fixedHeader: Boolean,\n fixedFooter: Boolean,\n height: [Number, String],\n\n ...makeDensityProps(),\n ...makeThemeProps(),\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n\n return () => (\n <props.tag\n class={[\n 'v-table',\n {\n 'v-table--fixed-height': !!props.height,\n 'v-table--fixed-header': props.fixedHeader,\n 'v-table--fixed-footer': props.fixedFooter,\n 'v-table--has-top': !!slots.top,\n 'v-table--has-bottom': !!slots.bottom,\n },\n themeClasses.value,\n densityClasses.value,\n ]}\n >\n { slots.top?.() }\n\n { slots.default && (\n <div\n class=\"v-table__wrapper\"\n style={{ height: convertToUnit(props.height) }}\n >\n <table>\n { slots.default?.() }\n </table>\n </div>\n ) }\n\n { slots.bottom?.() }\n </props.tag>\n )\n },\n})\n","// Styles\nimport './VTextarea.sass'\n\n// Components\nimport { filterFieldProps, makeVFieldProps } from '@/components/VField/VField'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VCounter } from '@/components/VCounter'\nimport { VField } from '@/components/VField'\n\n// Composables\nimport { useForwardRef } from '@/composables/forwardRef'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport Intersect from '@/directives/intersect'\n\n// Utilities\nimport { computed, nextTick, onBeforeUnmount, onMounted, ref, watch } from 'vue'\nimport { convertToUnit, defineComponent, filterInputAttrs, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VTextarea = defineComponent({\n name: 'VTextarea',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: {\n autoGrow: Boolean,\n autofocus: Boolean,\n counter: [Boolean, Number, String] as PropType<true | number | string>,\n counterValue: Function as PropType<(value: any) => number>,\n hint: String,\n persistentHint: Boolean,\n prefix: String,\n placeholder: String,\n persistentPlaceholder: Boolean,\n persistentCounter: Boolean,\n noResize: Boolean,\n rows: {\n type: [Number, String],\n default: 5,\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n maxRows: {\n type: [Number, String],\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n suffix: String,\n\n ...makeVInputProps(),\n ...makeVFieldProps(),\n },\n\n emits: {\n 'click:clear': (e: MouseEvent) => true,\n 'click:control': (e: MouseEvent) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function'\n ? props.counterValue(model.value)\n : (model.value || '').toString().length\n })\n const max = computed(() => {\n if (attrs.maxlength) return attrs.maxlength as undefined\n\n if (\n !props.counter ||\n (typeof props.counter !== 'number' &&\n typeof props.counter !== 'string')\n ) return undefined\n\n return props.counter\n })\n\n function onIntersect (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[]\n ) {\n if (!props.autofocus || !isIntersecting) return\n\n (entries[0].target as HTMLInputElement)?.focus?.()\n }\n\n const vInputRef = ref<VInput>()\n const vFieldRef = ref<VInput>()\n const isFocused = ref(false)\n const controlHeight = ref('auto')\n const textareaRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n isFocused.value ||\n props.persistentPlaceholder\n ))\n\n const messages = computed(() => {\n return props.messages.length\n ? props.messages\n : (isActive.value || props.persistentHint) ? props.hint : ''\n })\n\n function onFocus () {\n if (textareaRef.value !== document.activeElement) {\n textareaRef.value?.focus()\n }\n\n if (!isFocused.value) isFocused.value = true\n }\n function onControlClick (e: MouseEvent) {\n onFocus()\n\n emit('click:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = ''\n\n emit('click:clear', e)\n })\n }\n\n const sizerRef = ref<HTMLTextAreaElement>()\n function calculateInputHeight () {\n if (!props.autoGrow) return\n\n nextTick(() => {\n if (!sizerRef.value) return\n\n const style = getComputedStyle(sizerRef.value)\n\n const padding = parseFloat(style.getPropertyValue('--v-field-padding-top')) +\n parseFloat(style.getPropertyValue('--v-field-padding-bottom'))\n\n const height = sizerRef.value.scrollHeight\n const lineHeight = parseFloat(style.lineHeight)\n const minHeight = parseFloat(props.rows) * lineHeight + padding\n const maxHeight = parseFloat(props.maxRows!) * lineHeight + padding || Infinity\n\n controlHeight.value = convertToUnit(Math.min(maxHeight, Math.max(minHeight, height ?? 0)))\n })\n }\n\n onMounted(calculateInputHeight)\n watch(model, calculateInputHeight)\n watch(() => props.rows, calculateInputHeight)\n watch(() => props.maxRows, calculateInputHeight)\n\n let observer: ResizeObserver | undefined\n watch(sizerRef, val => {\n if (val) {\n observer = new ResizeObserver(calculateInputHeight)\n observer.observe(sizerRef.value!)\n } else {\n observer?.disconnect()\n }\n })\n onBeforeUnmount(() => {\n observer?.disconnect()\n })\n\n useRender(() => {\n const hasCounter = !!(slots.counter || props.counter || props.counterValue)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const [{ modelValue: _, ...inputProps }] = filterInputProps(props)\n const [fieldProps] = filterFieldProps(props)\n\n return (\n <VInput\n v-model={ model.value }\n class={[\n 'v-textarea',\n {\n 'v-textarea--prefixed': props.prefix,\n 'v-textarea--suffixed': props.suffix,\n 'v-textarea--auto-grow': props.autoGrow,\n 'v-textarea--no-resize': props.noResize || props.autoGrow,\n },\n ]}\n { ...rootAttrs }\n { ...inputProps }\n messages={ messages.value }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n style={{\n '--v-input-control-height': controlHeight.value,\n }}\n onClick:control={ onControlClick }\n onClick:clear={ onClear }\n role=\"textbox\"\n { ...fieldProps }\n active={ isActive.value || isDirty.value }\n dirty={ isDirty.value || props.dirty }\n focused={ isFocused.value }\n error={ isValid.value === false }\n >\n {{\n ...slots,\n default: ({\n props: { class: fieldClass, ...slotProps },\n }) => (\n <>\n { props.prefix && (\n <span class=\"v-text-field__prefix\">\n { props.prefix }\n </span>\n ) }\n\n <textarea\n ref={ textareaRef }\n class={ fieldClass }\n v-model={ model.value }\n v-intersect={[{\n handler: onIntersect,\n }, null, ['once']]}\n autofocus={ props.autofocus }\n readonly={ isReadonly.value }\n disabled={ isDisabled.value }\n placeholder={ props.placeholder }\n rows={ props.rows }\n name={ props.name }\n onFocus={ onFocus }\n onBlur={ () => (isFocused.value = false) }\n { ...slotProps }\n { ...inputAttrs }\n />\n\n { props.autoGrow && (\n <textarea\n class={[\n fieldClass,\n 'v-textarea__sizer',\n ]}\n v-model={ model.value }\n ref={ sizerRef }\n readonly\n aria-hidden=\"true\"\n />\n )}\n\n { props.suffix && (\n <span class=\"v-text-field__suffix\">\n { props.suffix }\n </span>\n ) }\n </>\n ),\n }}\n </VField>\n ),\n details: hasCounter ? () => (\n <>\n <span />\n\n <VCounter\n active={ props.persistentCounter || isFocused.value }\n value={ counterValue.value }\n max={ max.value }\n v-slots={ slots.counter }\n />\n </>\n ) : undefined,\n }}\n </VInput>\n )\n })\n\n return useForwardRef({}, vInputRef, vFieldRef, textareaRef)\n },\n})\n\nexport type VTextarea = InstanceType<typeof VTextarea>\n","// Styles\nimport './VThemeProvider.sass'\n\n// Composables\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VThemeProvider = defineComponent({\n name: 'VThemeProvider',\n\n props: {\n withBackground: Boolean,\n\n ...makeThemeProps(),\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n\n return () => {\n if (!props.withBackground) return slots.default?.()\n\n return (\n <props.tag class={['v-theme-provider', themeClasses.value]}>\n { slots.default?.() }\n </props.tag>\n )\n }\n },\n})\n","import type { InjectionKey, Ref } from 'vue'\nimport type { Density } from '@/composables/density'\n\nexport interface TimelineInstance {\n density: Ref<Density>\n lineColor: Ref<string>\n}\n\nexport const VTimelineSymbol: InjectionKey<TimelineInstance> = Symbol.for('vuetify:timeline')\n","// Styles\nimport './VTimeline.sass'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Helpers\nimport { computed, provide, toRef } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\nimport { VTimelineSymbol } from './shared'\n\n// Types\nimport type { Prop } from 'vue'\n\nexport type TimelineDirection = 'vertical' | 'horizontal'\nexport type TimelineSide = 'start' | 'end' | undefined\nexport type TimelineAlign = 'center' | 'start'\nexport type TimelineTruncateLine = 'start' | 'end' | 'both' | undefined\n\nexport const VTimeline = defineComponent({\n name: 'VTimeline',\n\n props: {\n align: {\n type: String,\n default: 'center',\n validator: (v: any) => ['center', 'start'].includes(v),\n } as Prop<TimelineAlign>,\n direction: {\n type: String,\n default: 'vertical',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n } as Prop<TimelineDirection>,\n side: {\n type: String,\n validator: (v: any) => v == null || ['start', 'end'].includes(v),\n } as Prop<TimelineSide>,\n lineInset: {\n type: [String, Number],\n default: 0,\n },\n lineThickness: {\n type: [String, Number],\n default: 2,\n },\n lineColor: String,\n truncateLine: {\n type: String,\n validator: (v: any) => ['start', 'end', 'both'].includes(v),\n } as Prop<TimelineTruncateLine>,\n\n ...makeDensityProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { densityClasses } = useDensity(props)\n\n provide(VTimelineSymbol, {\n density: toRef(props, 'density'),\n lineColor: toRef(props, 'lineColor'),\n })\n\n const sideClass = computed(() => {\n const side = props.side ? props.side : props.density !== 'default' ? 'end' : null\n\n return side && `v-timeline--side-${side}`\n })\n\n const truncateClasses = computed(() => {\n const classes = [\n 'v-timeline--truncate-line-start',\n 'v-timeline--truncate-line-end',\n ]\n\n switch (props.truncateLine) {\n case 'both': return classes\n case 'start': return classes[0]\n case 'end': return classes[1]\n default: return null\n }\n })\n\n return () => (\n <props.tag\n class={[\n 'v-timeline',\n `v-timeline--${props.direction}`,\n `v-timeline--align-${props.align}`,\n !props.lineInset && truncateClasses.value,\n {\n 'v-timeline--inset-line': !!props.lineInset,\n },\n themeClasses.value,\n densityClasses.value,\n sideClass.value,\n ]}\n style={{\n '--v-timeline-line-thickness': convertToUnit(props.lineThickness),\n '--v-timeline-line-inset': convertToUnit(props.lineInset),\n }}\n >\n { slots.default?.() }\n </props.tag>\n )\n },\n})\n","// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VTimelineSymbol } from './shared'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { inject, toRef } from 'vue'\nimport { defineComponent } from '@/util'\n\nexport const VTimelineDivider = defineComponent({\n name: 'VTimelineDivider',\n\n props: {\n hideDot: Boolean,\n lineColor: String,\n icon: IconValue,\n iconColor: String,\n fillDot: Boolean,\n dotColor: String,\n\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeElevationProps(),\n },\n\n setup (props, { slots }) {\n const timeline = inject(VTimelineSymbol)\n\n if (!timeline) throw new Error('[Vuetify] Could not find v-timeline provider')\n\n const { sizeClasses, sizeStyles } = useSize(props, 'v-timeline-divider__dot')\n const { backgroundColorStyles, backgroundColorClasses } = useBackgroundColor(toRef(props, 'dotColor'))\n const { backgroundColorStyles: lineColorStyles, backgroundColorClasses: lineColorClasses } = useBackgroundColor(timeline.lineColor)\n const { roundedClasses } = useRounded(props, 'v-timeline-divider__dot')\n const { elevationClasses } = useElevation(props)\n\n return () => (\n <div\n class={[\n 'v-timeline-divider',\n {\n 'v-timeline-divider--fill-dot': props.fillDot,\n },\n ]}\n >\n { !props.hideDot && (\n <div\n class={[\n 'v-timeline-divider__dot',\n roundedClasses.value,\n sizeClasses.value,\n elevationClasses.value,\n ]}\n // @ts-expect-error: null\n style={ sizeStyles.value }\n >\n <div\n class={[\n 'v-timeline-divider__inner-dot',\n roundedClasses.value,\n backgroundColorClasses.value,\n ]}\n style={ backgroundColorStyles.value }\n >\n {\n slots.default ? slots.default({ icon: props.icon, iconColor: props.iconColor, size: props.size })\n : props.icon ? <VIcon icon={ props.icon } color={ props.iconColor } size={ props.size } />\n : undefined\n }\n </div>\n </div>\n ) }\n <div\n class={[\n 'v-timeline-divider__line',\n lineColorClasses.value,\n ]}\n style={ lineColorStyles.value }\n />\n </div>\n )\n },\n})\n\nexport type VTimelineDivider = InstanceType<typeof VTimelineDivider>\n","// Components\nimport { VTimelineSymbol } from './shared'\nimport { VTimelineDivider } from './VTimelineDivider'\n\n// Composables\nimport { makeTagProps } from '@/composables/tag'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { IconValue } from '@/composables/icons'\n\n// Utilities\nimport { inject, ref, watch } from 'vue'\nimport { convertToUnit, defineComponent } from '@/util'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\n\nexport const VTimelineItem = defineComponent({\n name: 'VTimelineItem',\n\n props: {\n dotColor: String,\n fillDot: Boolean,\n hideDot: Boolean,\n hideOpposite: {\n type: Boolean,\n default: undefined,\n },\n icon: IconValue,\n iconColor: String,\n\n ...makeRoundedProps(),\n ...makeElevationProps(),\n ...makeSizeProps(),\n ...makeTagProps(),\n ...makeDimensionProps(),\n },\n\n setup (props, { slots }) {\n const timeline = inject(VTimelineSymbol)\n\n if (!timeline) throw new Error('[Vuetify] Could not find v-timeline provider')\n\n const { dimensionStyles } = useDimension(props)\n\n const dotSize = ref(0)\n const dotRef = ref<VTimelineDivider>()\n watch(dotRef, newValue => {\n if (!newValue) return\n dotSize.value = newValue.$el.querySelector('.v-timeline-divider__dot')?.getBoundingClientRect().width ?? 0\n }, {\n flush: 'post',\n })\n\n return () => (\n <div\n class={[\n 'v-timeline-item',\n {\n 'v-timeline-item--fill-dot': props.fillDot,\n },\n ]}\n style={{\n '--v-timeline-dot-size': convertToUnit(dotSize.value),\n }}\n >\n <div\n class=\"v-timeline-item__body\"\n style={ dimensionStyles.value }\n >\n { slots.default?.() }\n </div>\n\n <VTimelineDivider\n ref={ dotRef }\n hideDot={ props.hideDot }\n icon={ props.icon }\n iconColor={ props.iconColor }\n size={ props.size }\n elevation={ props.elevation }\n dotColor={ props.dotColor }\n fillDot={ props.fillDot }\n rounded={ props.rounded }\n v-slots={{ default: slots.icon }}\n />\n\n { timeline.density.value !== 'compact' && (\n <div class=\"v-timeline-item__opposite\">\n { !props.hideOpposite && slots.opposite?.() }\n </div>\n ) }\n </div>\n )\n },\n})\n","// Styles\nimport './VTooltip.sass'\n\n// Components\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeTransitionProps } from '@/composables/transition'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, getUid } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\nimport type { StrategyProps } from '@/components/VOverlay/locationStrategies'\nimport { useScopeId } from '@/composables/scopeId'\n\nexport const VTooltip = genericComponent<new () => {\n $slots: OverlaySlots\n}>()({\n name: 'VTooltip',\n\n inheritAttrs: false,\n\n props: {\n id: String,\n modelValue: Boolean,\n text: String,\n\n location: {\n type: String as PropType<StrategyProps['location']>,\n default: 'end',\n },\n origin: {\n type: String as PropType<StrategyProps['origin']>,\n default: 'auto',\n },\n\n ...makeTransitionProps({\n transition: false,\n } as const),\n },\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { scopeId } = useScopeId()\n\n const uid = getUid()\n const id = computed(() => props.id || `v-tooltip-${uid}`)\n\n const location = computed(() => {\n return props.location.split(' ').length > 1\n ? props.location\n : props.location + ' center' as StrategyProps['location']\n })\n\n const origin = computed(() => {\n return (\n props.origin === 'auto' ||\n props.origin === 'overlap' ||\n props.origin.split(' ').length > 1 ||\n props.location.split(' ').length > 1\n ) ? props.origin\n : props.origin + ' center' as StrategyProps['origin']\n })\n\n const transition = computed(() => {\n if (props.transition) return props.transition\n return isActive.value ? 'scale-transition' : 'fade-transition'\n })\n\n return () => {\n return (\n <VOverlay\n v-model={ isActive.value }\n class={[\n 'v-tooltip',\n ]}\n id={ id.value }\n transition={ transition.value }\n absolute\n locationStrategy=\"connected\"\n scrollStrategy=\"reposition\"\n location={ location.value }\n origin={ origin.value }\n min-width={ 0 }\n offset={ 10 }\n scrim={ false }\n persistent\n open-on-click={ false }\n open-on-hover\n close-on-back={ false }\n role=\"tooltip\"\n eager\n activatorProps={{\n 'aria-describedby': id.value,\n }}\n { ...scopeId }\n { ...attrs }\n >\n {{\n activator: slots.activator,\n default: (...args) => slots.default?.(...args) ?? props.text,\n }}\n </VOverlay>\n )\n }\n },\n})\n\nexport type VTooltip = InstanceType<typeof VTooltip>\n","// Composables\nimport { makeValidationProps, useValidation } from '@/composables/validation'\n\n// Utilities\nimport { defineComponent } from '@/util'\n\nexport const VValidation = defineComponent({\n name: 'VValidation',\n\n props: {\n ...makeValidationProps(),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const validation = useValidation(props, 'validation')\n\n return () => slots.default?.(validation)\n },\n})\n","// Types\nimport type { DirectiveBinding, ObjectDirective } from 'vue'\nimport type { MutationOptions } from '@/composables/mutationObserver'\n\nexport interface MutationDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {\n value: MutationCallback | { handler: MutationCallback, options?: MutationObserverInit }\n modifiers: MutationOptions\n}\n\nfunction mounted (el: HTMLElement, binding: MutationDirectiveBinding) {\n const modifiers = binding.modifiers || {}\n const value = binding.value\n const { once, immediate, ...modifierKeys } = modifiers\n const defaultValue = !Object.keys(modifierKeys).length\n\n const { handler, options } = typeof value === 'object'\n ? value\n : {\n handler: value,\n options: {\n attributes: modifierKeys?.attr ?? defaultValue,\n characterData: modifierKeys?.char ?? defaultValue,\n childList: modifierKeys?.child ?? defaultValue,\n subtree: modifierKeys?.sub ?? defaultValue,\n },\n }\n\n const observer = new MutationObserver((\n mutations: MutationRecord[] = [],\n observer: MutationObserver\n ) => {\n handler?.(mutations, observer)\n\n if (once) unmounted(el, binding)\n })\n\n if (immediate) handler?.([], observer)\n\n el._mutate = Object(el._mutate)\n el._mutate![binding.instance!.$.uid] = { observer }\n\n observer.observe(el, options)\n}\n\nfunction unmounted (el: HTMLElement, binding: MutationDirectiveBinding) {\n if (!el._mutate?.[binding.instance!.$.uid]) return\n\n el._mutate[binding.instance!.$.uid]!.observer.disconnect()\n delete el._mutate[binding.instance!.$.uid]\n}\n\nexport const Mutate: ObjectDirective<HTMLElement> = {\n mounted,\n unmounted,\n}\n\nexport default Mutate\n","import type { DirectiveBinding } from 'vue'\n\ninterface ResizeDirectiveBinding extends Omit<DirectiveBinding, 'modifiers'> {\n value: () => void\n modifiers?: {\n active?: boolean\n quiet?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n const handler = binding.value\n const options: AddEventListenerOptions = {\n passive: !binding.modifiers?.active,\n }\n\n window.addEventListener('resize', handler, options)\n\n el._onResize = Object(el._onResize)\n el._onResize![binding.instance!.$.uid] = {\n handler,\n options,\n }\n\n if (!binding.modifiers?.quiet) {\n handler()\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ResizeDirectiveBinding) {\n if (!el._onResize?.[binding.instance!.$.uid]) return\n\n const { handler, options } = el._onResize[binding.instance!.$.uid]!\n\n window.removeEventListener('resize', handler, options)\n\n delete el._onResize[binding.instance!.$.uid]\n}\n\nexport const Resize = {\n mounted,\n unmounted,\n}\n\nexport default Resize\n","import type { DirectiveBinding } from 'vue'\n\ninterface ScrollDirectiveBinding extends Omit<DirectiveBinding, 'modifiers'> {\n value: EventListener | {\n handler: EventListener\n options?: AddEventListenerOptions\n } | EventListenerObject & { options?: AddEventListenerOptions }\n modifiers?: {\n self?: boolean\n }\n}\n\nfunction mounted (el: HTMLElement, binding: ScrollDirectiveBinding) {\n const { self = false } = binding.modifiers ?? {}\n const value = binding.value\n const options = (typeof value === 'object' && value.options) || { passive: true }\n const handler = typeof value === 'function' || 'handleEvent' in value ? value : value.handler\n\n const target = self\n ? el\n : binding.arg\n ? document.querySelector(binding.arg)\n : window\n\n if (!target) return\n\n target.addEventListener('scroll', handler, options)\n\n el._onScroll = Object(el._onScroll)\n el._onScroll![binding.instance!.$.uid] = {\n handler,\n options,\n // Don't reference self\n target: self ? undefined : target,\n }\n}\n\nfunction unmounted (el: HTMLElement, binding: ScrollDirectiveBinding) {\n if (!el._onScroll?.[binding.instance!.$.uid]) return\n\n const { handler, options, target = el } = el._onScroll[binding.instance!.$.uid]!\n\n target.removeEventListener('scroll', handler, options)\n delete el._onScroll[binding.instance!.$.uid]\n}\n\nfunction updated (el: HTMLElement, binding: ScrollDirectiveBinding) {\n if (binding.value === binding.oldValue) return\n\n unmounted(el, binding)\n mounted(el, binding)\n}\n\nexport const Scroll = {\n mounted,\n unmounted,\n updated,\n}\n\nexport default Scroll\n","// Composables\nimport { createDefaults, DefaultsSymbol } from '@/composables/defaults'\nimport { createDisplay, DisplaySymbol } from '@/composables/display'\nimport { createIcons, IconSymbol } from '@/composables/icons'\nimport { createLocale, LocaleAdapterSymbol } from '@/composables/locale'\nimport { createTheme, ThemeSymbol } from '@/composables/theme'\nimport { RtlSymbol } from '@/composables/rtl'\n\n// Utilities\nimport { defineComponent } from '@/util'\nimport { reactive } from 'vue'\n\n// Types\nimport type { App, ComponentPublicInstance, InjectionKey } from 'vue'\nimport type { DefaultsOptions } from '@/composables/defaults'\nimport type { DisplayOptions } from '@/composables/display'\nimport type { IconOptions } from '@/composables/icons'\nimport type { LocaleAdapter, LocaleOptions } from '@/composables/locale'\nimport type { RtlOptions } from '@/composables/rtl'\nimport type { ThemeOptions } from '@/composables/theme'\n\nexport * from './composables'\n\nexport interface VuetifyOptions {\n aliases?: Record<string, any>\n components?: Record<string, any>\n directives?: Record<string, any>\n defaults?: DefaultsOptions\n display?: DisplayOptions\n theme?: ThemeOptions\n icons?: IconOptions\n locale?: (LocaleOptions & RtlOptions) | (LocaleAdapter & RtlOptions)\n}\n\nexport const createVuetify = (options: VuetifyOptions = {}) => {\n const install = (app: App) => {\n const {\n aliases = {},\n components = {},\n directives = {},\n } = options\n\n for (const key in directives) {\n app.directive(key, directives[key])\n }\n\n for (const key in components) {\n app.component(key, components[key])\n }\n\n for (const key in aliases) {\n app.component(key, defineComponent({\n ...aliases[key],\n name: key,\n }))\n }\n\n app.provide(DefaultsSymbol, createDefaults(options.defaults))\n app.provide(DisplaySymbol, createDisplay(options.display))\n app.provide(ThemeSymbol, createTheme(app, options.theme))\n app.provide(IconSymbol, createIcons(options.icons))\n app.provide(LocaleAdapterSymbol, createLocale(app, options.locale))\n\n // Vue's inject() can only be used in setup\n function inject (this: ComponentPublicInstance, key: InjectionKey<any> | string) {\n const vm = this.$\n\n const provides = vm.parent?.provides ?? vm.vnode.appContext?.provides\n\n if (provides && (key as any) in provides) {\n return provides[(key as string)]\n }\n }\n\n app.mixin({\n computed: {\n $vuetify () {\n return reactive({\n defaults: inject.call(this, DefaultsSymbol),\n display: inject.call(this, DisplaySymbol),\n theme: inject.call(this, ThemeSymbol),\n icons: inject.call(this, IconSymbol),\n locale: inject.call(this, LocaleAdapterSymbol),\n rtl: inject.call(this, RtlSymbol),\n })\n },\n },\n })\n }\n\n return { install }\n}\n","import './styles/main.sass'\nimport * as components from './components'\nimport * as directives from './directives'\nimport { createVuetify as _createVuetify } from './framework'\nimport type { VuetifyOptions } from './framework'\n\nexport const createVuetify = (options: VuetifyOptions = {}) => {\n return _createVuetify({ components, directives, ...options })\n}\n\nexport const version = __VUETIFY_VERSION__\n\nexport {\n components,\n directives,\n}\nexport * from './composables'\n"],"names":["parseAnchor","anchor","side","align","split","oppositeAnchor","center","top","bottom","start","end","physicalAnchor","el","direction","window","getComputedStyle","map","Box","constructor","x","y","width","height","left","right","nullifyTransforms","rect","getBoundingClientRect","style","tx","transform","ta","sx","sy","dx","dy","startsWith","slice","to","transformOrigin","parseFloat","indexOf","w","offsetWidth","h","offsetHeight","createMessage","message","vm","parent","_isVue","$parent","$options","$_alreadyWarned","includes","push","generateComponentTrace","consoleWarn","newMessage","console","warn","consoleError","error","classifyRE","classify","str","replace","c","toUpperCase","formatComponentName","includeFile","$root","options","cid","name","_componentTag","file","__file","match","tree","currentRecursiveSequence","length","last","i","repeat","Array","isArray","join","getNestedValue","obj","path","fallback","undefined","deepEqual","a","b","Date","getTime","Object","props","keys","every","p","getObjectValueByPath","getPropertyFromItem","item","property","value","createRange","from","v","k","convertToUnit","unit","isNaN","String","isFinite","Number","isObject","isComponentInstance","$el","keyCodes","freeze","enter","tab","delete","esc","space","up","down","home","del","backspace","insert","pageup","pagedown","shift","keyValues","o","pick","paths","found","create","rest","key","some","RegExp","test","filterInputAttrs","attrs","wrapInArray","clamp","min","max","Math","padEnd","char","chunk","size","chunked","index","substr","humanReadableFileSize","bytes","base","prefix","abs","toFixed","mergeDeep","source","target","arrayFn","out","sourceProperty","targetProperty","getUid","_uid","flattenFragments","nodes","node","type","Fragment","children","flat","toKebabCase","toLowerCase","findChildrenWithProvide","vnode","child","component","getOwnPropertySymbols","provides","subTree","CircularBuffer","val","values","concat","getEventCoordinates","e","clientX","touches","clientY","srgbForwardMatrix","srgbForwardTransform","C","srgbReverseMatrix","srgbReverseTransform","fromXYZ","xyz","rgb","matrix","round","toXYZ","r","g","delta","cielabForwardTransform","t","cbrt","cielabReverseTransform","transformedY","lab","Ln","isCssColor","color","colorToInt","substring","parseInt","TypeError","intToHex","hexColor","toString","HSVAtoRGBA","hsva","s","f","n","RGBAtoHSVA","rgba","hsv","HSVAtoHSLA","l","sprime","HSLAtoHSVA","hsl","RGBAtoCSS","HSVAtoCSS","RGBAtoHex","toHex","HexToRGBA","hex","HexToHSVA","HSVAtoHex","parseHex","colorToRGB","int","lighten","amount","CIELAB","sRGB","darken","getLuma","getContrast","first","second","l1","l2","light","dark","DefaultsSymbol","Symbol","for","createDefaults","ref","useDefaults","defaults","inject","Error","provideDefaults","injectedDefaults","providedDefaults","newDefaults","computed","scoped","unref","reset","root","properties","prev","len","Infinity","provide","propIsDefined","prop","hasOwnProperty","defineComponent","_setup","setup","_as","ctx","getCurrentInstance","_subcomponentDefaults","shallowRef","_props","shallowReactive","toRaw","watchEffect","globalDefaults","global","componentDefaults","subComponents","entries","filter","fromEntries","newVal","setupBindings","scope","watch","oldVal","stop","effectScope","run","immediate","genericComponent","exposeDefaults","_defineComponent","createSimpleFunctional","klass","tag","capitalize","camelize","default","slots","class","attachedRoot","getRootNode","parentNode","document","composed","standardEasing","deceleratedEasing","acceleratedEasing","_getCurrentInstance","getCurrentInstanceName","getScrollParent","hasScrollbar","parentElement","scrollingElement","getScrollParents","elements","nodeType","Node","ELEMENT_NODE","overflowY","scrollHeight","clientHeight","IN_BROWSER","SUPPORTS_INTERSECTION","SUPPORTS_TOUCH","navigator","maxTouchPoints","SUPPORTS_FOCUS_VISIBLE","CSS","supports","isFixedPosition","position","offsetParent","propsFactory","reduce","isObjectDefinition","definition","useRender","render","mainTRC","Rco","Gco","Bco","normBG","normTXT","revTXT","revBG","blkThrs","blkClmp","deltaYmin","scaleBoW","scaleWoB","loConThresh","loConFactor","loConOffset","loClip","APCAcontrast","text","background","Rtxt","Gtxt","Btxt","Rbg","Gbg","Bbg","Ytxt","Ybg","outputContrast","SAPC","ThemeSymbol","makeThemeProps","theme","defaultThemeOptions","defaultTheme","variations","colors","themes","surface","primary","secondary","info","success","warning","variables","parseThemeOptions","isDisabled","createTheme","app","head","_context","usehead","parsedOptions","reactive","computedThemes","acc","original","variation","fn","onColor","colorVal","blackContrast","whiteContrast","current","styles","lines","createCssClass","themeName","genCssVariables","Set","flatMap","addHeadObjs","id","updateDOM","styleEl","updateStyles","createElement","appendChild","innerHTML","themeClasses","provideTheme","newTheme","useTheme","selector","content","line","lightOverlay","darkOverlay","useResizeObserver","callback","resizeRef","contentRect","observer","ResizeObserver","onBeforeUnmount","disconnect","newValue","oldValue","unobserve","observe","flush","readonly","VuetifyLayoutKey","VuetifyLayoutItemKey","ROOT_ZINDEX","makeLayoutProps","overlaps","fullHeight","Boolean","makeLayoutItemProps","order","absolute","useLayout","layout","useLayoutItem","isKeptAlive","onDeactivated","onActivated","layoutItemStyles","layoutItemScrimStyles","register","active","unregister","layoutRect","generateLayers","positions","layoutSizes","activeItems","previousLayer","layers","layer","get","createLayout","parentLayout","rootZIndex","registered","Map","priorities","disabledTransitions","computedOverlaps","overlap","topPosition","bottomPosition","topAmount","bottomAmount","set","uniquePriorities","sort","items","transitionsEnabled","mainStyles","paddingLeft","paddingRight","paddingTop","paddingBottom","transition","getLayoutItem","find","rootVm","isMounted","onMounted","layoutSize","elementSize","disableTransitions","instances","instanceIndex","splice","findIndex","zIndex","isHorizontal","isOppositeHorizontal","isOppositeVertical","marginLeft","marginRight","marginTop","marginBottom","layoutClasses","layoutStyles","layoutRef","badge","close","dataIterator","noResultsText","loadingText","dataTable","itemsPerPageText","ariaLabel","sortDescending","sortAscending","sortNone","activateNone","activateDescending","activateAscending","sortBy","dataFooter","itemsPerPageAll","nextPage","prevPage","firstPage","lastPage","pageText","datePicker","itemsSelected","nextMonthAriaLabel","nextYearAriaLabel","prevMonthAriaLabel","prevYearAriaLabel","noDataText","carousel","next","delimiter","calendar","moreEvents","fileInput","counter","counterSize","timePicker","am","pm","pagination","previous","page","currentPage","rating","rtl","af","ar","bg","ca","ckb","cs","de","en","es","et","fa","fi","fr","hr","hu","he","it","ja","ko","lv","lt","nl","no","pl","pt","ro","ru","sk","sl","srCyrl","srLatn","sv","th","tr","az","uk","vi","zhHans","zhHant","RtlSymbol","createRtl","localeScope","createRtlScope","isRtl","defaultRtl","rtlClasses","currentScope","provideRtl","newScope","useRtl","VApp","_createVNode","VDefaultsProvider","toRefs","createCssTransition","origin","mode","group","hideOnLeave","leaveAbsolute","TransitionGroup","Transition","onBeforeEnter","onLeave","offsetTop","offsetLeft","_transitionInitialStyles","setProperty","onAfterLeave","createJavascriptTransition","functions","expandedParentClass","sizeProperty","offsetProperty","_parent","_initialStyle","overflow","onEnter","initialStyle","offset","classList","add","requestAnimationFrame","onAfterEnter","resetStyles","onEnterCancelled","onLeaveCancelled","remove","VDialogTransition","pointerEvents","done","Promise","resolve","speed","getDimensions","animation","animate","opacity","duration","easing","getChildren","forEach","finished","then","removeProperty","onBeforeLeave","_mergeProps","els","querySelector","targetBox","elBox","originX","originY","anchorSide","anchorOffset","getPropertyValue","offsetX","offsetY","tsx","tsy","maxs","asa","innerWidth","innerHeight","VCarouselTransition","VCarouselReverseTransition","VTabTransition","VTabReverseTransition","VMenuTransition","VFabTransition","VDialogBottomTransition","VDialogTopTransition","VFadeTransition","VScaleTransition","VScrollXTransition","VScrollXReverseTransition","VScrollYTransition","VScrollYReverseTransition","VSlideXTransition","VSlideXReverseTransition","VSlideYTransition","VSlideYReverseTransition","VExpandTransition","ExpandTransitionGenerator","VExpandXTransition","makeDimensionProps","maxHeight","maxWidth","minHeight","minWidth","useDimension","dimensionStyles","useAspectStyles","aspectStyles","ratio","aspectRatio","VResponsive","contentClass","additional","mounted","binding","modifiers","handler","IntersectionObserver","_observe","instance","$","uid","isIntersecting","entry","quiet","init","once","unmounted","Intersect","makeTransitionProps","validator","MaybeTransition","customProps","mergeProps","VImg","directives","intersect","alt","cover","eager","gradient","lazySrc","rootMargin","threshold","sizes","src","srcset","emits","emit","currentSrc","image","state","naturalWidth","naturalHeight","normalisedSrc","aspect","onBeforeMount","lazyImg","Image","pollForSize","nextTick","complete","onError","onLoad","getSrc","img","timeout","poll","imgHeight","imgWidth","setTimeout","endsWith","containClasses","__image","sources","withDirectives","vShow","__preloadImage","__placeholder","placeholder","__error","__gradient","backgroundImage","isBooted","_withDirectives","_resolveDirective","makeTagProps","VToolbarTitle","hasText","makeBorderProps","border","useBorder","borderClasses","classes","makeElevationProps","elevation","useElevation","elevationClasses","isRef","makeRoundedProps","rounded","useRounded","roundedClasses","useColor","backgroundIsCssColor","textIsCssColor","colorClasses","colorStyles","backgroundColor","caretColor","useTextColor","textColorClasses","textColorStyles","useBackgroundColor","backgroundColorClasses","backgroundColorStyles","useForwardRef","refs","Proxy","Reflect","has","bind","getOwnPropertyDescriptor","descriptor","getPrototypeOf","allowedDensities","makeVToolbarProps","collapse","density","extended","extensionHeight","floating","title","VToolbar","toRef","isExtended","extension","contentHeight","VBtn","variant","hasTitle","hasImage","prepend","append","filterToolbarProps","useProxiedModel","defaultValue","transformIn","transformOut","internal","VAppBar","modelValue","location","vToolbarRef","isActive","toolbarProps","makeDensityProps","useDensity","densityClasses","allowedVariants","genOverlays","isClickable","_Fragment","makeVariantProps","useVariant","variantClasses","VBtnGroup","divided","makeGroupProps","multiple","mandatory","selectedClass","disabled","makeGroupItemProps","useGroupItem","injectKey","required","description","isSelected","toggle","select","useGroup","isUnmounted","selected","getIds","arr","getValues","groupVm","unwrapped","forceMandatoryValue","internalValue","step","currentId","currentIndex","newIndex","newItem","getItemIndex","ids","VBtnToggleSymbol","VBtnToggle","predefinedSizes","makeSizeProps","useSize","sizeClasses","sizeStyles","aliases","cancel","clear","checkboxOn","checkboxOff","checkboxIndeterminate","expand","menu","subgroup","dropdown","radioOn","radioOff","edit","ratingEmpty","ratingFull","ratingHalf","loading","unfold","plus","minus","mdi","VClassIcon","IconValue","Function","IconSymbol","makeIconProps","icon","VComponentIcon","VSvgIcon","inheritAttrs","VLigatureIcon","defaultSets","svg","createIcons","defaultSet","sets","useIcon","icons","iconData","iconAlias","iconSetName","setName","iconName","iconSet","makeVIconProps","VIcon","slotIcon","slot","onClick","fontSize","oppositeMap","makeLocationProps","useLocation","opposite","toPhysical","locationStyles","getOffset","positionValues","makePositionProps","usePosition","positionClasses","useRouter","proxy","$router","useLink","RouterLink","resolveDynamicComponent","isLink","href","onClickOnce","link","route","makeRouterProps","inTransition","useBackButton","router","cb","popped","removeBefore","removeAfter","addEventListener","onPopstate","beforeEach","afterEach","onScopeDispose","removeEventListener","replaced","useSelectLink","isExactActive","stopSymbol","DELAY_RIPPLE","webkitTransform","isTouchEvent","isKeyboardEvent","calculate","localX","localY","radius","scale","_ripple","circle","clientWidth","sqrt","centerX","centerY","ripples","show","enabled","container","className","dataset","previousPosition","activated","performance","now","hide","getElementsByClassName","isHiding","diff","delay","removeChild","isRippleEnabled","rippleShow","element","currentTarget","touched","isTouch","centered","showTimerCommit","showTimer","rippleStop","rippleHide","clearTimeout","rippleCancelShow","keyboardRipple","keyboardRippleShow","keyCode","keyboardRippleHide","focusRippleHide","updateRipple","wasEnabled","passive","removeListeners","updated","Ripple","symbol","prependIcon","appendIcon","block","stacked","ripple","isElevated","Tag","hasColor","navigate","VAppBarNavIcon","VToolbarItems","VAppBarTitle","_","VAlertTitle","allowedTypes","VAlert","borderColor","closable","closeIcon","closeLabel","prominent","variantProps","onCloseClick","hasPrepend","hasClose","makeVAvatarProps","VAvatar","VChipGroupSymbol","VChipGroup","column","valueComparator","VChip","activeClass","appendAvatar","draggable","filterIcon","label","pill","prependAvatar","hasAppend","hasFilter","onClickFunc","VDivider","inset","thickness","vertical","dividerStyles","role","ListKey","createList","updateHasPrepend","data","useList","singleOpenStrategy","open","opened","parents","newOpened","multipleOpenStrategy","listOpenStrategy","independentSelectStrategy","strategy","on","in","independentSingleSelectStrategy","parentStrategy","singleSelected","leafSelectStrategy","leafSingleSelectStrategy","classicSelectStrategy","childrenIds","everySelected","noneSelected","VNestedSymbol","emptyNested","selectedValues","makeNestedProps","selectStrategy","openStrategy","useNested","getPath","unshift","nested","parentId","isGroup","list","event","newSelected","useNestedItem","computedId","isOpen","isIndeterminate","isLeaf","isGroupActivator","useNestedGroupActivator","VListGroupActivator","VListGroup","activeColor","collapseIcon","expandIcon","activatorProps","activator","VListItemIcon","_vShow","VListItemAvatar","VListItemHeader","VListItemSubtitle","VListItemTitle","VListItem","nav","subtitle","roundedProps","lineClasses","slotProps","hasSubtitle","hasHeader","VListSubheader","sticky","VListChildren","itemProps","originalItem","slotsWithItem","header","makeItemsProps","itemTitle","itemValue","itemChildren","returnObject","transformItem","transformItems","array","useItems","itemType","useListItems","VList","bgColor","VListImg","VListItemAction","VListItemMedia","makeDelayProps","closeDelay","openDelay","useDelay","delays","runDelayFactory","runCloseDelay","runOpenDelay","VMenuSymbol","makeActivatorProps","openOnClick","openOnHover","openOnFocus","closeOnContentClick","useActivator","isTop","activatorEl","isHovered","isFocused","availableEvents","click","stopPropagation","mouseenter","mouseleave","focus","matches","blur","activatorEvents","events","contentEvents","closeParents","activatorRef","_useActivator","getActivator","unbindActivatorProps","bindActivatorProps","removeAttribute","setAttribute","hasAttribute","elementToViewport","point","anchorToPoint","box","locationStrategies","static","staticLocationStrategy","connected","connectedLocationStrategy","makeLocationStrategyProps","locationStrategy","useLocationStrategies","contentStyles","updateLocation","onResize","activatorFixed","assign","preferredAnchor","preferredOrigin","doesOverlap","configuredMaxHeight","configuredMinWidth","contentEl","scrollParent","viewportWidth","viewportHeight","contentBox","scrollables","querySelectorAll","scrollLeft","scrollTop","initialMaxWidth","initialMaxHeight","scrollTo","maxFreeSpaceWidth","MAX_VALUE","viewportMargin","freeSpace","fitsY","canFill","floor","targetPoint","contentPoint","clean","frames","requestNewFrame","raf","cancelAnimationFrame","frame","scrollStrategies","none","closeScrollStrategy","blockScrollStrategy","reposition","repositionScrollStrategy","makeScrollStrategyProps","scrollStrategy","useScrollStrategies","onScroll","bindScroll","scrollElements","contains","scrollbarWidth","documentElement","scrollableParent","slow","update","time","useToggleScope","useTeleport","teleportTarget","_target","targetElement","body","cache","WeakMap","makeLazyProps","useLazy","hasContent","stack","useStack","_zIndex","lastZIndex","idx","_isTop","stackStyles","defaultConditional","checkEvent","checkIsActive","ShadowRoot","host","include","closeConditional","directive","_clickOutside","lastMousedownWasOutside","handleShadow","ClickOutside","onMousedown","Scrim","VOverlay","attach","closeOnBack","contained","contentProps","noClickAnimation","persistent","scrim","afterLeave","model","scrimColor","onClickOutside","animateClick","onKeydown","toHandlers","useScopeId","scopeId","VMenu","overlay","openChildren","VMessages","messages","FormKey","makeFormProps","fastFail","lazyValidation","createForm","isReadonly","isValidating","errorMessages","validate","results","valid","itemErrorMessages","resetValidation","isValid","deep","useForm","makeValidationProps","maxErrors","rules","useValidation","form","internalErrorMessages","isPristine","isDirty","validationClasses","rule","result","makeVInputProps","hideDetails","VInput","hasMessages","hasDetails","details","filterInputProps","VLabel","VFieldLabel","useIntersectionObserver","intersectionRef","VProgressLinear","bgOpacity","bufferValue","clickable","indeterminate","reverse","stream","striped","roundedBar","progress","barColorClasses","barColorStyles","normalizedBuffer","normalizedValue","isReversed","handleClick","borderTop","bar","buffer","makeLoaderProps","useLoader","loaderClasses","LoaderSlot","makeFocusProps","focused","useFocus","focusClasses","makeVFieldProps","appendInnerIcon","clearable","clearIcon","dirty","persistentClear","prependInnerIcon","singleLine","VField","hasLabel","labelRef","floatingLabelRef","controlRef","targetEl","targetRect","targetWidth","transitionDuration","visibility","activeElement","preventDefault","isOutlined","prependInner","hasClear","appendInner","loader","filterFieldProps","VCounter","functional","activeTypes","VTextField","autofocus","counterValue","hint","persistentHint","persistentPlaceholder","persistentCounter","suffix","maxlength","onIntersect","vInputRef","vFieldRef","inputRef","onFocus","onControlClick","onClear","hasCounter","rootAttrs","inputAttrs","inputProps","fieldProps","fieldClass","LocaleAdapterSymbol","VuetifyLocaleSymbol","provideLocale","adapter","createScope","useLocale","getScope","isLocaleAdapter","createLocale","createDefaultLocaleAdapter","createRoot","LANG_PREFIX","params","createTranslateFunction","shortKey","currentLocale","fallbackLocale","createNumberFunction","numberFormat","Intl","NumberFormat","format","rootScope","defaultLocale","locale","makeSelectProps","chips","closableChips","hideNoData","hideSelected","menuIcon","openOnClear","VSelect","vTextFieldRef","transformed","selections","selection","onClickControl","hasChips","chip","onChipClose","_createTextVNode","defaultFilter","query","toLocaleLowerCase","makeFilterProps","customFilter","customKeyFilter","filterKeys","filterMode","noFilter","filterItems","customFiltersLength","loop","customMatches","defaultMatches","keyFilter","defaultMatchesLength","customMatchesLength","useFilter","strQuery","filteredItems","transformedItems","highlightResult","VAutocomplete","search","onInput","isSelecting","at","VBadge","bordered","dot","inline","textColor","badgeAttrs","VBannerActions","VBannerAvatar","VBannerIcon","VBannerText","DisplaySymbol","defaultDisplayOptions","mobileBreakpoint","thresholds","xs","sm","md","lg","xl","xxl","parseDisplayOptions","getClientWidth","getClientHeight","getPlatform","userAgent","regexp","android","ios","cordova","electron","chrome","edge","firefox","opera","win","mac","linux","ssr","touch","createDisplay","platform","breakpointValue","mobile","smAndUp","mdAndUp","lgAndUp","xlAndUp","smAndDown","mdAndDown","lgAndDown","xlAndDown","useDisplay","display","VBanner","avatar","actions","VBottomNavigation","grow","VBreadcrumbsItem","VBreadcrumbsDivider","VBreadcrumbs","divider","VCardActions","VCardAvatar","VCardContent","VCardHeader","VCardHeaderText","VCardImg","VCardSubtitle","VCardText","VCardTitle","VCard","hover","hasHeaderText","media","headerText","handleGesture","wrapper","touchstartX","touchendX","touchstartY","touchendY","dirRatio","minDistance","touchstart","changedTouches","originalEvent","touchend","touchmove","touchmoveX","touchmoveY","move","createHandlers","handlers","_touchHandlers","eventName","Touch","VWindowSymbol","VWindowGroupSymbol","VWindow","continuous","nextIcon","prevIcon","showArrows","rootRef","isRtlReverse","axis","transitionCount","transitionHeight","activeIndex","itemsLength","lastIndex","canMoveBack","canMoveForward","arrows","prevProps","nextProps","touchOptions","VWindowItem","reverseTransition","groupItem","isTransitioning","hasTransition","onAfterTransition","onBeforeTransition","onTransitionCancelled","onEnterTransition","VCarousel","cycle","delimiterIcon","hideDelimiters","hideDelimiterBackground","interval","verticalDelimiters","windowRef","slideTimeout","restartTimeout","startTimeout","VCarouselItem","VSelectionControlGroupSymbol","VSelectionControlGroup","falseIcon","trueIcon","makeSelectionControlProps","trueValue","falseValue","useSelectionControl","isMultiple","currentValue","VSelectionControl","isFocusVisible","input","onBlur","_vModelDynamic","filterControlProps","VCheckbox","indeterminateIcon","onChange","controlAttrs","_1","controlProps","_2","VCode","VSheet","VSliderSymbol","getPosition","makeSliderProps","thumbColor","thumbLabel","thumbSize","showTicks","ticks","tickSize","trackColor","trackFillColor","trackSize","useSlider","handleSliderMouseUp","handleMouseMove","getActiveThumb","horizontalDirection","hd","decimals","trimmedStep","trim","numTicks","mousePressed","startOffset","trackContainerRef","activeThumbRef","roundValue","clamped","parseMouseMove","trackStart","trackLength","clickOffset","clickPos","thumbMoved","handleStop","handleStart","moveListenerOptions","capture","onMouseMove","onSliderMouseUp","onSliderTouchend","onSliderTouchstart","onSliderMousedown","percentage","parsedTicks","hasLabels","VSliderThumb","slider","relevantKeys","multipliers","parseKeydown","_step","steps","increase","multiplier","shiftKey","ctrlKey","positionPercentage","VSliderTrack","trackFillColorClasses","trackFillColorStyles","trackColorClasses","trackColorStyles","startDir","endDir","backgroundStyles","trackFillWidth","trackFillStyles","computedTicks","tick","directionProperty","directionValue","VSlider","thumbContainerRef","trackStop","parseColor","stripAlpha","extractColor","converted","nullColor","inputs","getValue","getColor","hsla","hexa","modes","VColorPickerPreview","hideAlpha","VColorPickerCanvas","dotSize","hue","isInteracting","isOutsideUpdate","dotPosition","dotStyles","canvasRef","updateDotPosition","handleMouseDown","handleMouseUp","coords","updateCanvas","canvas","getContext","saturationGradient","createLinearGradient","addColorStop","fillStyle","fillRect","valueGradient","VColorPickerInput","VColorPickerEdit","m","enabledModes","mi","red","lighten5","lighten4","lighten3","lighten2","lighten1","darken1","darken2","darken3","darken4","accent1","accent2","accent3","accent4","pink","purple","deepPurple","indigo","blue","lightBlue","cyan","teal","green","lightGreen","lime","yellow","amber","orange","deepOrange","brown","blueGrey","grey","shades","black","white","transparent","parseDefaultColors","VColorPickerSwatches","swatches","swatch","VColorPicker","canvasHeight","hideCanvas","hideSliders","hideInputs","showSwatches","swatchesMaxHeight","lastPickedColor","currentColor","updateColor","VCombobox","delimiters","selectionIndex","_search","selectionStart","setSelectionRange","VDialog","fullscreen","retainFocus","scrollable","onFocusin","before","relatedTarget","after","focusable","firstElement","lastElement","preventScroll","VExpansionPanelSymbol","VExpansionPanels","variantClass","VExpansionPanel","VExpansionPanelTitle","makeVExpansionPanelTitleProps","hideActions","expansionPanel","expanded","VExpansionPanelText","selectedIndices","isBeforeSelected","selectedIndex","isAfterSelected","VFileInput","counterSizeString","counterString","showSize","files","totalBytes","totalBytesReadable","fileNames","fileCount","VFooter","autoHeight","VForm","submit","formRef","onReset","onSubmit","_e","ready","catch","finally","defaultPrevented","VContainer","fluid","breakpoints","breakpointProps","offsetProps","orderProps","propMap","col","breakpointClass","breakpoint","VCol","cols","alignSelf","hasColClasses","ALIGNMENT","makeRowProps","def","alignValidator","alignProps","justifyValidator","justifyProps","alignContentValidator","alignContentProps","justify","alignContent","classMap","VRow","dense","noGutters","VSpacer","VHover","isHovering","onMouseenter","onMouseleave","VItemGroupSymbol","VItemGroup","VItem","VKbd","VLayout","VLayoutItem","VLazy","VLocaleProvider","localeInstance","useSsrBoot","ssrBootStyles","VMain","HORIZON","HISTORY","kineticEnergyToVelocity","work","sqrt2","calculateImpulseVelocity","samples","d","vprev","vcurr","useVelocity","addMovement","identifier","timeStamp","endTouch","getVelocity","newest","absX","absY","oops","useTouch","isTemporary","touchless","onTouchstart","onTouchmove","onTouchend","maybeDragging","isDragging","dragProgress","pos","getProgress","limit","touchX","touchY","touchZone","inTouchZone","inElement","cancelable","thresholdMet","velocity","vx","vy","dragStyles","VNavigationDrawer","disableResizeWatcher","disableRouteWatcher","expandOnHover","permanent","rail","railWidth","temporary","currentRoute","rootEl","scrimStyles","useHydration","appContext","_container","__vue_app__","VNoSsr","useRefs","onBeforeUpdate","updateRef","VPagination","totalVisible","firstIcon","lastIcon","pageAriaLabel","currentPageAriaLabel","firstAriaLabel","previousAriaLabel","nextAriaLabel","lastAriaLabel","ellipsis","showFirstLastPage","maxButtons","firstItem","totalWidth","itemWidth","range","even","middle","rangeLength","rangeStart","ceil","setValue","ariaCurrent","controls","prevDisabled","nextDisabled","ariaDisabled","updateFocus","sign","VParallax","scrollPos","scrollY","translate","VProgressCircular","rotate","MAGIC_RADIUS_CONSTANT","CIRCUMFERENCE","PI","underlayColorClasses","underlayColorStyles","diameter","strokeWidth","strokeDashOffset","VRadio","VRadioGroup","VRangeSlider","strict","startThumbRef","stopThumbRef","stopOffset","VRating","itemAriaLabel","emptyIcon","fullIcon","halfIncrements","itemLabels","itemLabelPosition","increments","hoverIndex","focusIndex","firstRef","isClicking","itemState","isFilled","isFullIcon","eventState","onMouseup","VRatingItem","showStar","btnProps","createLabel","labelProps","bias","calculateUpdatedOffset","selectedElement","containerSize","contentSize","currentScrollOffset","clientSize","offsetStart","adjustedOffsetStart","totalSize","itemOffset","additionalOffset","calculateCenteredOffset","offsetCentered","VSlideGroupSymbol","VSlideGroup","centerActive","isOverflowing","scrollOffset","containerRef","containerRect","contentRef","firstSelectedIndex","lastSelectedIndex","firstOverflow","disableTransition","startTouch","maxScrollOffset","composedPath","onFocusout","nextElementSibling","previousElementSibling","firstElementChild","lastElementChild","newAbosluteOffset","scrollAmount","willChange","hasAffixes","hasPrev","hasNext","VSlideGroupItem","slideGroupItem","VSnackbar","multiLine","activeTimeout","onPointerenter","VSwitch","loaderColor","control","VSystemBar","VTabsSymbol","VTab","fixed","sliderColor","hideSlider","sliderColorClasses","sliderColorStyles","sliderEl","updateSlider","prevEl","nextEl","prevBox","nextBox","xy","XY","rightBottom","widthHeight","prevPos","nextPos","initialScale","sigma","fill","parseItems","VTabs","alignWithTitle","fixedTabs","optional","parsedItems","VTable","fixedHeader","fixedFooter","VTextarea","autoGrow","noResize","rows","maxRows","controlHeight","textareaRef","sizerRef","calculateInputHeight","padding","lineHeight","_vModelText","VThemeProvider","withBackground","VTimelineSymbol","VTimeline","lineInset","lineThickness","lineColor","truncateLine","sideClass","truncateClasses","VTimelineDivider","hideDot","iconColor","fillDot","dotColor","timeline","lineColorStyles","lineColorClasses","VTimelineItem","hideOpposite","dotRef","VTooltip","args","VValidation","validation","modifierKeys","attributes","attr","characterData","childList","subtree","sub","MutationObserver","mutations","_mutate","Mutate","_onResize","Resize","self","arg","_onScroll","Scroll","createVuetify","install","components","mixin","$vuetify","call","_createVuetify","version"],"mappings":"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"}