quasar 2.15.1 → 2.15.2

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 (518) hide show
  1. package/dist/api/AddressbarColor.json +1 -1
  2. package/dist/api/BottomSheet.json +1 -1
  3. package/dist/api/ClosePopup.json +1 -1
  4. package/dist/api/Cookies.json +1 -1
  5. package/dist/api/Dark.json +1 -1
  6. package/dist/api/Dialog.json +1 -1
  7. package/dist/api/Intersection.json +1 -1
  8. package/dist/api/Loading.json +1 -1
  9. package/dist/api/LoadingBar.json +1 -1
  10. package/dist/api/LocalStorage.json +1 -1
  11. package/dist/api/Morph.json +1 -1
  12. package/dist/api/Mutation.json +1 -1
  13. package/dist/api/Notify.json +1 -1
  14. package/dist/api/Platform.json +1 -1
  15. package/dist/api/QAjaxBar.json +1 -1
  16. package/dist/api/QAvatar.json +1 -1
  17. package/dist/api/QBadge.json +1 -1
  18. package/dist/api/QBanner.json +1 -1
  19. package/dist/api/QBar.json +1 -1
  20. package/dist/api/QBreadcrumbs.json +1 -1
  21. package/dist/api/QBreadcrumbsEl.json +1 -1
  22. package/dist/api/QBtn.json +1 -1
  23. package/dist/api/QBtnDropdown.json +1 -1
  24. package/dist/api/QBtnToggle.json +1 -1
  25. package/dist/api/QCard.json +1 -1
  26. package/dist/api/QCardActions.json +1 -1
  27. package/dist/api/QCardSection.json +1 -1
  28. package/dist/api/QCarousel.json +1 -1
  29. package/dist/api/QCarouselControl.json +1 -1
  30. package/dist/api/QCarouselSlide.json +1 -1
  31. package/dist/api/QChatMessage.json +1 -1
  32. package/dist/api/QCheckbox.json +1 -1
  33. package/dist/api/QChip.json +1 -1
  34. package/dist/api/QCircularProgress.json +1 -1
  35. package/dist/api/QColor.json +1 -1
  36. package/dist/api/QDate.json +1 -1
  37. package/dist/api/QDialog.json +1 -1
  38. package/dist/api/QDrawer.json +1 -1
  39. package/dist/api/QEditor.json +1 -1
  40. package/dist/api/QExpansionItem.json +1 -1
  41. package/dist/api/QFab.json +1 -1
  42. package/dist/api/QFabAction.json +1 -1
  43. package/dist/api/QField.json +1 -1
  44. package/dist/api/QFile.json +1 -1
  45. package/dist/api/QFooter.json +1 -1
  46. package/dist/api/QHeader.json +1 -1
  47. package/dist/api/QIcon.json +1 -1
  48. package/dist/api/QImg.json +1 -1
  49. package/dist/api/QInfiniteScroll.json +1 -1
  50. package/dist/api/QInnerLoading.json +1 -1
  51. package/dist/api/QInput.json +1 -1
  52. package/dist/api/QIntersection.json +1 -1
  53. package/dist/api/QItem.json +1 -1
  54. package/dist/api/QKnob.json +1 -1
  55. package/dist/api/QLayout.json +1 -1
  56. package/dist/api/QLinearProgress.json +1 -1
  57. package/dist/api/QList.json +1 -1
  58. package/dist/api/QMarkupTable.json +1 -1
  59. package/dist/api/QMenu.json +1 -1
  60. package/dist/api/QNoSsr.json +1 -1
  61. package/dist/api/QOptionGroup.json +1 -1
  62. package/dist/api/QPage.json +1 -1
  63. package/dist/api/QPageScroller.json +1 -1
  64. package/dist/api/QPageSticky.json +1 -1
  65. package/dist/api/QPagination.json +1 -1
  66. package/dist/api/QParallax.json +1 -1
  67. package/dist/api/QPopupEdit.json +1 -1
  68. package/dist/api/QPopupProxy.json +1 -1
  69. package/dist/api/QPullToRefresh.json +1 -1
  70. package/dist/api/QRadio.json +1 -1
  71. package/dist/api/QRange.json +1 -1
  72. package/dist/api/QRating.json +1 -1
  73. package/dist/api/QResizeObserver.json +1 -1
  74. package/dist/api/QResponsive.json +1 -1
  75. package/dist/api/QRouteTab.json +1 -1
  76. package/dist/api/QScrollArea.json +1 -1
  77. package/dist/api/QScrollObserver.json +1 -1
  78. package/dist/api/QSelect.json +1 -1
  79. package/dist/api/QSeparator.json +1 -1
  80. package/dist/api/QSkeleton.json +1 -1
  81. package/dist/api/QSlideItem.json +1 -1
  82. package/dist/api/QSlideTransition.json +1 -1
  83. package/dist/api/QSlider.json +1 -1
  84. package/dist/api/QSpinner.json +1 -1
  85. package/dist/api/QSpinnerAudio.json +1 -1
  86. package/dist/api/QSpinnerBall.json +1 -1
  87. package/dist/api/QSpinnerBars.json +1 -1
  88. package/dist/api/QSpinnerBox.json +1 -1
  89. package/dist/api/QSpinnerClock.json +1 -1
  90. package/dist/api/QSpinnerComment.json +1 -1
  91. package/dist/api/QSpinnerCube.json +1 -1
  92. package/dist/api/QSpinnerDots.json +1 -1
  93. package/dist/api/QSpinnerFacebook.json +1 -1
  94. package/dist/api/QSpinnerGears.json +1 -1
  95. package/dist/api/QSpinnerGrid.json +1 -1
  96. package/dist/api/QSpinnerHearts.json +1 -1
  97. package/dist/api/QSpinnerHourglass.json +1 -1
  98. package/dist/api/QSpinnerInfinity.json +1 -1
  99. package/dist/api/QSpinnerIos.json +1 -1
  100. package/dist/api/QSpinnerOrbit.json +1 -1
  101. package/dist/api/QSpinnerOval.json +1 -1
  102. package/dist/api/QSpinnerPie.json +1 -1
  103. package/dist/api/QSpinnerPuff.json +1 -1
  104. package/dist/api/QSpinnerRadio.json +1 -1
  105. package/dist/api/QSpinnerRings.json +1 -1
  106. package/dist/api/QSpinnerTail.json +1 -1
  107. package/dist/api/QSplitter.json +1 -1
  108. package/dist/api/QStep.json +1 -1
  109. package/dist/api/QStepper.json +1 -1
  110. package/dist/api/QTab.json +1 -1
  111. package/dist/api/QTabPanel.json +1 -1
  112. package/dist/api/QTabPanels.json +1 -1
  113. package/dist/api/QTable.json +1 -1
  114. package/dist/api/QTabs.json +1 -1
  115. package/dist/api/QTd.json +1 -1
  116. package/dist/api/QTh.json +1 -1
  117. package/dist/api/QTime.json +1 -1
  118. package/dist/api/QTimeline.json +1 -1
  119. package/dist/api/QTimelineEntry.json +1 -1
  120. package/dist/api/QToggle.json +1 -1
  121. package/dist/api/QTooltip.json +1 -1
  122. package/dist/api/QTr.json +1 -1
  123. package/dist/api/QTree.json +1 -1
  124. package/dist/api/QUploader.json +1 -1
  125. package/dist/api/QVideo.json +1 -1
  126. package/dist/api/QVirtualScroll.json +1 -1
  127. package/dist/api/Ripple.json +1 -1
  128. package/dist/api/Screen.json +1 -1
  129. package/dist/api/Scroll.json +1 -1
  130. package/dist/api/ScrollFire.json +1 -1
  131. package/dist/api/SessionStorage.json +1 -1
  132. package/dist/api/TouchHold.json +1 -1
  133. package/dist/api/TouchPan.json +1 -1
  134. package/dist/api/TouchRepeat.json +1 -1
  135. package/dist/api/TouchSwipe.json +1 -1
  136. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  137. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  138. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  139. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  140. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  141. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  142. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  143. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  144. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  145. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  146. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  147. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  148. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  149. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  150. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  151. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  152. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  153. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  154. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  155. package/dist/icon-set/mdi-v7.umd.prod.js +1 -1
  156. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  157. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  158. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  159. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  160. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  161. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  162. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  163. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  164. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  165. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  166. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  167. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  168. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  169. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  170. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  171. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  172. package/dist/icon-set/svg-mdi-v7.umd.prod.js +1 -1
  173. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  174. package/dist/icon-set/themify.umd.prod.js +1 -1
  175. package/dist/lang/ar-TN.umd.prod.js +1 -1
  176. package/dist/lang/ar.umd.prod.js +1 -1
  177. package/dist/lang/az-Latn.umd.prod.js +1 -1
  178. package/dist/lang/bg.umd.prod.js +1 -1
  179. package/dist/lang/bn.umd.prod.js +1 -1
  180. package/dist/lang/ca.umd.prod.js +1 -1
  181. package/dist/lang/cs.umd.prod.js +1 -1
  182. package/dist/lang/da.umd.prod.js +1 -1
  183. package/dist/lang/de-CH.umd.prod.js +1 -1
  184. package/dist/lang/de-DE.umd.prod.js +1 -1
  185. package/dist/lang/de.umd.prod.js +1 -1
  186. package/dist/lang/el.umd.prod.js +1 -1
  187. package/dist/lang/en-GB.umd.prod.js +1 -1
  188. package/dist/lang/en-US.umd.prod.js +1 -1
  189. package/dist/lang/eo.umd.prod.js +1 -1
  190. package/dist/lang/es.umd.prod.js +1 -1
  191. package/dist/lang/et.umd.prod.js +1 -1
  192. package/dist/lang/eu.umd.prod.js +1 -1
  193. package/dist/lang/fa-IR.umd.prod.js +1 -1
  194. package/dist/lang/fa.umd.prod.js +1 -1
  195. package/dist/lang/fi.umd.prod.js +1 -1
  196. package/dist/lang/fr.umd.prod.js +1 -1
  197. package/dist/lang/gn.umd.prod.js +1 -1
  198. package/dist/lang/he.umd.prod.js +1 -1
  199. package/dist/lang/hi.umd.prod.js +1 -1
  200. package/dist/lang/hr.umd.prod.js +1 -1
  201. package/dist/lang/hu.umd.prod.js +1 -1
  202. package/dist/lang/id.umd.prod.js +1 -1
  203. package/dist/lang/is.umd.prod.js +1 -1
  204. package/dist/lang/it.umd.prod.js +1 -1
  205. package/dist/lang/ja.umd.prod.js +1 -1
  206. package/dist/lang/kk.umd.prod.js +1 -1
  207. package/dist/lang/km.umd.prod.js +1 -1
  208. package/dist/lang/ko-KR.umd.prod.js +1 -1
  209. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  210. package/dist/lang/lt.umd.prod.js +1 -1
  211. package/dist/lang/lu.umd.prod.js +1 -1
  212. package/dist/lang/lv.umd.prod.js +1 -1
  213. package/dist/lang/mk.umd.prod.js +1 -1
  214. package/dist/lang/ml.umd.prod.js +1 -1
  215. package/dist/lang/mm.umd.prod.js +1 -1
  216. package/dist/lang/ms-MY.umd.prod.js +1 -1
  217. package/dist/lang/ms.umd.prod.js +1 -1
  218. package/dist/lang/my.umd.prod.js +1 -1
  219. package/dist/lang/nb-NO.umd.prod.js +1 -1
  220. package/dist/lang/nl.umd.prod.js +1 -1
  221. package/dist/lang/pl.umd.prod.js +1 -1
  222. package/dist/lang/pt-BR.umd.prod.js +1 -1
  223. package/dist/lang/pt.umd.prod.js +1 -1
  224. package/dist/lang/ro.umd.prod.js +1 -1
  225. package/dist/lang/ru.umd.prod.js +1 -1
  226. package/dist/lang/sk.umd.prod.js +1 -1
  227. package/dist/lang/sl.umd.prod.js +1 -1
  228. package/dist/lang/sm.umd.prod.js +1 -1
  229. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  230. package/dist/lang/sr.umd.prod.js +1 -1
  231. package/dist/lang/sv.umd.prod.js +1 -1
  232. package/dist/lang/ta.umd.prod.js +1 -1
  233. package/dist/lang/th.umd.prod.js +1 -1
  234. package/dist/lang/tl.umd.prod.js +1 -1
  235. package/dist/lang/tr.umd.prod.js +1 -1
  236. package/dist/lang/ug.umd.prod.js +1 -1
  237. package/dist/lang/uk.umd.prod.js +1 -1
  238. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  239. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  240. package/dist/lang/vi.umd.prod.js +1 -1
  241. package/dist/lang/zh-CN.umd.prod.js +1 -1
  242. package/dist/lang/zh-TW.umd.prod.js +1 -1
  243. package/dist/quasar.cjs.prod.js +12 -12
  244. package/dist/quasar.css +53 -53
  245. package/dist/quasar.esm.js +77 -49
  246. package/dist/quasar.esm.prod.js +10 -10
  247. package/dist/quasar.prod.css +1 -1
  248. package/dist/quasar.rtl.css +65 -65
  249. package/dist/quasar.rtl.prod.css +1 -1
  250. package/dist/quasar.sass +37 -37
  251. package/dist/quasar.umd.js +75 -48
  252. package/dist/quasar.umd.prod.js +6 -6
  253. package/dist/transforms/import-map.json +1 -1
  254. package/dist/types/index.d.ts +325 -235
  255. package/dist/vetur/quasar-attributes.json +1 -1
  256. package/dist/web-types/web-types.json +1 -1
  257. package/package.json +15 -30
  258. package/src/api-file-example.json +5 -5
  259. package/src/api.extends.json +18 -18
  260. package/src/body.js +1 -1
  261. package/src/components/ajax-bar/QAjaxBar.json +5 -5
  262. package/src/components/avatar/QAvatar.json +1 -1
  263. package/src/components/avatar/QAvatar.test.js +146 -0
  264. package/src/components/badge/QBadge.json +2 -2
  265. package/src/components/badge/QBadge.test.js +167 -0
  266. package/src/components/banner/QBanner.test.js +123 -0
  267. package/src/components/bar/QBar.test.js +55 -0
  268. package/src/components/breadcrumbs/QBreadcrumbs.json +7 -7
  269. package/src/components/breadcrumbs/QBreadcrumbs.test.js +123 -0
  270. package/src/components/breadcrumbs/QBreadcrumbsEl.json +4 -4
  271. package/src/components/breadcrumbs/QBreadcrumbsEl.test.js +134 -0
  272. package/src/components/btn/QBtn.js +1 -1
  273. package/src/components/btn/QBtn.json +1 -1
  274. package/src/components/btn/QBtn.test.js +350 -0
  275. package/src/components/btn/use-btn.json +13 -13
  276. package/src/components/btn/use-btn.test.js +590 -0
  277. package/src/components/btn-dropdown/QBtnDropdown.json +14 -14
  278. package/src/components/btn-toggle/QBtnToggle.json +6 -6
  279. package/src/components/card/QCard.json +2 -2
  280. package/src/components/card/QCardActions.json +3 -3
  281. package/src/components/card/QCardSection.json +2 -2
  282. package/src/components/carousel/QCarousel.json +9 -9
  283. package/src/components/carousel/QCarouselControl.json +5 -5
  284. package/src/components/carousel/QCarouselSlide.json +4 -7
  285. package/src/components/chat/QChatMessage.json +9 -9
  286. package/src/components/checkbox/use-checkbox.json +13 -13
  287. package/src/components/chip/QChip.js +1 -1
  288. package/src/components/chip/QChip.json +6 -8
  289. package/src/components/chip/QChip.test.js +534 -0
  290. package/src/components/circular-progress/QCircularProgress.json +8 -8
  291. package/src/components/color/QColor.js +1 -1
  292. package/src/components/color/QColor.json +8 -10
  293. package/src/components/date/QDate.json +31 -30
  294. package/src/components/date/use-datetime.json +3 -3
  295. package/src/components/dialog/QDialog.json +13 -13
  296. package/src/components/dialog/QDialog.test.js +390 -0
  297. package/src/components/dialog/test/DialogWrapper.vue +17 -0
  298. package/src/components/drawer/QDrawer.js +1 -1
  299. package/src/components/drawer/QDrawer.json +8 -12
  300. package/src/components/editor/QEditor.json +31 -45
  301. package/src/components/expansion-item/QExpansionItem.js +1 -1
  302. package/src/components/expansion-item/QExpansionItem.json +14 -14
  303. package/src/components/fab/QFab.json +4 -4
  304. package/src/components/fab/QFabAction.json +3 -5
  305. package/src/components/fab/use-fab.json +10 -12
  306. package/src/components/field/QField.json +5 -5
  307. package/src/components/file/QFile.json +9 -11
  308. package/src/components/footer/QFooter.js +1 -1
  309. package/src/components/footer/QFooter.json +3 -5
  310. package/src/components/form/QForm.json +1 -3
  311. package/src/components/form/QFormChildMixin.json +1 -3
  312. package/src/components/header/QHeader.json +4 -6
  313. package/src/components/icon/QIcon.json +2 -2
  314. package/src/components/img/QImg.js +1 -1
  315. package/src/components/img/QImg.json +45 -59
  316. package/src/components/infinite-scroll/QInfiniteScroll.json +3 -3
  317. package/src/components/inner-loading/QInnerLoading.json +5 -7
  318. package/src/components/input/QInput.json +10 -10
  319. package/src/components/input/use-mask.json +1 -1
  320. package/src/components/intersection/QIntersection.js +2 -2
  321. package/src/components/intersection/QIntersection.json +7 -7
  322. package/src/components/item/QItem.json +5 -5
  323. package/src/components/item/QList.json +2 -2
  324. package/src/components/knob/QKnob.js +1 -1
  325. package/src/components/knob/QKnob.json +6 -6
  326. package/src/components/layout/QLayout.js +1 -1
  327. package/src/components/layout/QLayout.json +3 -5
  328. package/src/components/linear-progress/QLinearProgress.json +2 -2
  329. package/src/components/markup-table/QMarkupTable.json +3 -3
  330. package/src/components/menu/QMenu.json +8 -8
  331. package/src/components/no-ssr/QNoSsr.json +3 -3
  332. package/src/components/option-group/QOptionGroup.json +11 -13
  333. package/src/components/page/QPage.json +2 -2
  334. package/src/components/page-scroller/QPageScroller.json +3 -3
  335. package/src/components/page-sticky/QPageSticky.json +4 -4
  336. package/src/components/pagination/QPagination.json +20 -20
  337. package/src/components/parallax/QParallax.json +5 -5
  338. package/src/components/popup-edit/QPopupEdit.json +17 -19
  339. package/src/components/popup-proxy/QPopupProxy.json +2 -2
  340. package/src/components/pull-to-refresh/QPullToRefresh.js +1 -1
  341. package/src/components/radio/QRadio.json +5 -5
  342. package/src/components/range/QRange.json +3 -7
  343. package/src/components/rating/QRating.json +16 -19
  344. package/src/components/resize-observer/QResizeObserver.json +2 -2
  345. package/src/components/scroll-area/QScrollArea.js +1 -1
  346. package/src/components/scroll-area/QScrollArea.json +12 -12
  347. package/src/components/scroll-observer/QScrollObserver.json +4 -4
  348. package/src/components/select/QSelect.json +55 -59
  349. package/src/components/select/__tests__/QSelect.cy.js +21 -1
  350. package/src/components/separator/QSeparator.json +3 -5
  351. package/src/components/skeleton/QSkeleton.json +14 -16
  352. package/src/components/slide-item/QSlideItem.js +1 -1
  353. package/src/components/slide-item/QSlideItem.json +2 -2
  354. package/src/components/slide-transition/QSlideTransition.json +1 -1
  355. package/src/components/slider/QSlider.json +2 -4
  356. package/src/components/slider/use-slider.js +1 -1
  357. package/src/components/slider/use-slider.json +18 -22
  358. package/src/components/spinner/QSpinner.json +1 -1
  359. package/src/components/spinner/QSpinnerAudio.json +1 -1
  360. package/src/components/spinner/QSpinnerBall.json +1 -1
  361. package/src/components/spinner/QSpinnerBars.json +1 -1
  362. package/src/components/spinner/QSpinnerBox.json +1 -1
  363. package/src/components/spinner/QSpinnerClock.json +1 -1
  364. package/src/components/spinner/QSpinnerComment.json +1 -1
  365. package/src/components/spinner/QSpinnerCube.json +1 -1
  366. package/src/components/spinner/QSpinnerDots.json +1 -1
  367. package/src/components/spinner/QSpinnerFacebook.json +1 -1
  368. package/src/components/spinner/QSpinnerGears.json +1 -1
  369. package/src/components/spinner/QSpinnerGrid.json +1 -1
  370. package/src/components/spinner/QSpinnerHearts.json +1 -1
  371. package/src/components/spinner/QSpinnerHourglass.json +1 -1
  372. package/src/components/spinner/QSpinnerInfinity.json +1 -1
  373. package/src/components/spinner/QSpinnerIos.json +1 -1
  374. package/src/components/spinner/QSpinnerOrbit.json +1 -1
  375. package/src/components/spinner/QSpinnerOval.json +1 -1
  376. package/src/components/spinner/QSpinnerPie.json +1 -1
  377. package/src/components/spinner/QSpinnerPuff.json +1 -1
  378. package/src/components/spinner/QSpinnerRadio.json +1 -1
  379. package/src/components/spinner/QSpinnerRings.json +1 -1
  380. package/src/components/spinner/QSpinnerTail.json +1 -1
  381. package/src/components/splitter/QSplitter.js +1 -1
  382. package/src/components/splitter/QSplitter.json +14 -14
  383. package/src/components/stepper/QStep.json +4 -10
  384. package/src/components/stepper/QStepper.json +1 -3
  385. package/src/components/stepper/StepHeader.js +1 -1
  386. package/src/components/table/QTable.js +1 -1
  387. package/src/components/table/QTable.json +113 -126
  388. package/src/components/table/QTd.json +1 -1
  389. package/src/components/table/QTh.json +1 -1
  390. package/src/components/table/QTr.json +1 -1
  391. package/src/components/tabs/QRouteTab.json +1 -1
  392. package/src/components/tabs/QTab.json +6 -13
  393. package/src/components/tabs/QTabs.json +8 -8
  394. package/src/components/tabs/use-tab.js +1 -1
  395. package/src/components/time/QTime.js +1 -1
  396. package/src/components/time/QTime.json +10 -22
  397. package/src/components/timeline/QTimeline.json +4 -4
  398. package/src/components/timeline/QTimelineEntry.json +11 -11
  399. package/src/components/tooltip/QTooltip.json +17 -20
  400. package/src/components/tree/QTree.json +26 -26
  401. package/src/components/uploader/QUploader.json +4 -4
  402. package/src/components/uploader/xhr-uploader-plugin.json +12 -12
  403. package/src/components/video/QVideo.json +15 -19
  404. package/src/components/virtual-scroll/QVirtualScroll.json +7 -10
  405. package/src/components/virtual-scroll/use-virtual-scroll.json +9 -8
  406. package/src/composables/private/use-anchor.json +6 -6
  407. package/src/composables/private/use-field.json +8 -11
  408. package/src/composables/private/use-file.js +1 -1
  409. package/src/composables/private/use-file.json +6 -8
  410. package/src/composables/private/use-form.json +1 -1
  411. package/src/composables/private/use-form.test.js +93 -0
  412. package/src/composables/private/use-fullscreen.json +1 -3
  413. package/src/composables/private/use-key-composition.js +1 -1
  414. package/src/composables/private/use-panel.child.json +1 -3
  415. package/src/composables/private/use-panel.js +1 -1
  416. package/src/composables/private/use-panel.json +12 -12
  417. package/src/composables/private/use-portal.js +16 -1
  418. package/src/composables/private/use-ratio.json +4 -3
  419. package/src/composables/private/use-ratio.test.js +27 -0
  420. package/src/composables/private/use-router-link.json +6 -6
  421. package/src/composables/private/use-size.json +1 -1
  422. package/src/composables/private/use-size.test.js +22 -0
  423. package/src/composables/private/use-transition.json +3 -3
  424. package/src/composables/private/use-validate.json +6 -6
  425. package/src/composables/use-hydration.js +1 -1
  426. package/src/composables/use-id.js +1 -1
  427. package/src/composables/use-id.test.js +55 -0
  428. package/src/composables/use-meta.js +1 -1
  429. package/src/composables.js +2 -0
  430. package/src/css/index.sass +6 -6
  431. package/src/directives/{ClosePopup.js → close-popup/ClosePopup.js} +4 -4
  432. package/src/directives/{ClosePopup.json → close-popup/ClosePopup.json} +5 -5
  433. package/src/directives/{Intersection.js → intersection/Intersection.js} +3 -3
  434. package/src/directives/{Intersection.json → intersection/Intersection.json} +4 -6
  435. package/src/directives/{Morph.js → morph/Morph.js} +2 -2
  436. package/src/directives/{Morph.json → morph/Morph.json} +20 -20
  437. package/src/directives/{Mutation.js → mutation/Mutation.js} +2 -2
  438. package/src/directives/{Mutation.json → mutation/Mutation.json} +10 -12
  439. package/src/directives/{Ripple.js → ripple/Ripple.js} +6 -6
  440. package/src/directives/{Ripple.json → ripple/Ripple.json} +7 -13
  441. package/src/directives/{Scroll.js → scroll/Scroll.js} +4 -4
  442. package/src/directives/{Scroll.json → scroll/Scroll.json} +2 -2
  443. package/src/directives/{ScrollFire.js → scroll-fire/ScrollFire.js} +6 -6
  444. package/src/directives/{ScrollFire.json → scroll-fire/ScrollFire.json} +1 -1
  445. package/src/directives/{TouchHold.js → touch-hold/TouchHold.js} +5 -5
  446. package/src/directives/{TouchHold.json → touch-hold/TouchHold.json} +6 -6
  447. package/src/directives/{TouchPan.js → touch-pan/TouchPan.js} +6 -6
  448. package/src/directives/{TouchPan.json → touch-pan/TouchPan.json} +4 -4
  449. package/src/directives/{TouchRepeat.js → touch-repeat/TouchRepeat.js} +6 -6
  450. package/src/directives/{TouchRepeat.json → touch-repeat/TouchRepeat.json} +4 -4
  451. package/src/directives/{TouchSwipe.js → touch-swipe/TouchSwipe.js} +6 -6
  452. package/src/directives/{TouchSwipe.json → touch-swipe/TouchSwipe.json} +4 -4
  453. package/src/directives.js +11 -11
  454. package/src/history.js +1 -1
  455. package/src/install-quasar.js +3 -3
  456. package/src/plugins/{AddressbarColor.js → addressbar/AddressbarColor.js} +3 -3
  457. package/src/plugins/{AddressbarColor.json → addressbar/AddressbarColor.json} +1 -1
  458. package/src/plugins/{AppFullscreen.js → app-fullscreen/AppFullscreen.js} +2 -2
  459. package/src/plugins/{AppVisibility.js → app-visibility/AppVisibility.js} +2 -2
  460. package/src/plugins/{BottomSheet.js → bottom-sheet/BottomSheet.js} +2 -2
  461. package/src/plugins/{BottomSheet.json → bottom-sheet/BottomSheet.json} +10 -10
  462. package/src/{components/dialog-bottom-sheet/BottomSheet.js → plugins/bottom-sheet/component/BottomSheetComponent.js} +10 -10
  463. package/src/plugins/{Cookies.json → cookies/Cookies.json} +14 -16
  464. package/src/plugins/{Dark.js → dark/Dark.js} +1 -1
  465. package/src/plugins/{Dark.json → dark/Dark.json} +3 -3
  466. package/src/plugins/{Dialog.js → dialog/Dialog.js} +2 -2
  467. package/src/plugins/{Dialog.json → dialog/Dialog.json} +15 -15
  468. package/src/{components/dialog-plugin/DialogPlugin.js → plugins/dialog/component/DialogPluginComponent.js} +14 -14
  469. package/src/plugins/{Loading.js → loading/Loading.js} +7 -6
  470. package/src/plugins/{Loading.json → loading/Loading.json} +15 -15
  471. package/src/plugins/{LoadingBar.js → loading-bar/LoadingBar.js} +6 -6
  472. package/src/plugins/{LoadingBar.json → loading-bar/LoadingBar.json} +1 -1
  473. package/src/plugins/{LocalStorage.js → local-storage/LocalStorage.js} +2 -2
  474. package/src/plugins/{Meta.js → meta/Meta.js} +2 -2
  475. package/src/plugins/{Notify.js → notify/Notify.js} +11 -10
  476. package/src/plugins/{Notify.json → notify/Notify.json} +52 -68
  477. package/src/plugins/{Platform.js → platform/Platform.js} +3 -9
  478. package/src/plugins/{Platform.json → platform/Platform.json} +6 -10
  479. package/src/plugins/{Screen.js → screen/Screen.js} +4 -4
  480. package/src/plugins/{Screen.json → screen/Screen.json} +6 -12
  481. package/src/plugins/{SessionStorage.js → session-storage/SessionStorage.js} +2 -2
  482. package/src/plugins.js +15 -15
  483. package/src/utils/create-meta-mixin.js +1 -1
  484. package/src/utils/open-url.js +1 -1
  485. package/src/utils/prevent-scroll.js +1 -1
  486. package/src/utils/private/escape-key.js +1 -1
  487. package/src/utils/private/focusout.js +1 -1
  488. package/src/utils/private/global-dialog.json +2 -2
  489. package/src/utils/private/position-engine.js +1 -1
  490. package/src/utils/private/selection.js +1 -1
  491. package/src/utils/private/web-storage.json +8 -10
  492. package/src/components/avatar/__tests__/QAvatar.cy.js +0 -120
  493. package/src/components/badge/__tests__/QBadge.cy.js +0 -148
  494. package/src/components/banner/__tests__/QBanner.cy.js +0 -106
  495. package/src/components/bar/__tests__/QBar.cy.js +0 -45
  496. package/src/components/breadcrumbs/__tests__/QBreadcrumbs.cy.js +0 -111
  497. package/src/components/breadcrumbs/__tests__/QBreadcrumbsEl.cy.js +0 -87
  498. package/src/components/btn/__tests__/QBtn.cy.js +0 -128
  499. package/src/components/btn/__tests__/use-btn.cy.js +0 -517
  500. package/src/components/chip/__tests__/QChip.cy.js +0 -480
  501. package/src/components/dialog/__tests__/DialogWrapper.vue +0 -33
  502. package/src/components/dialog/__tests__/QDialog.cy.js +0 -543
  503. package/src/components/tabs/__tests__/QRouteTab.cy.js +0 -9
  504. /package/src/components/breadcrumbs/{__tests__ → test}/BasicBreadcrumbs.vue +0 -0
  505. /package/src/components/breadcrumbs/{__tests__ → test}/BreadcrumbWithSeparatorSlot.vue +0 -0
  506. /package/src/components/spinner/{__spinner-mixin.json → spinner.json} +0 -0
  507. /package/src/directives/{Morph.sass → morph/Morph.sass} +0 -0
  508. /package/src/directives/{Ripple.sass → ripple/Ripple.sass} +0 -0
  509. /package/src/plugins/{AppFullscreen.json → app-fullscreen/AppFullscreen.json} +0 -0
  510. /package/src/plugins/{AppVisibility.json → app-visibility/AppVisibility.json} +0 -0
  511. /package/src/{components/dialog-bottom-sheet/BottomSheet.sass → plugins/bottom-sheet/component/BottomSheetComponent.sass} +0 -0
  512. /package/src/plugins/{Cookies.js → cookies/Cookies.js} +0 -0
  513. /package/src/{components/dialog-plugin/DialogPlugin.sass → plugins/dialog/component/DialogPluginComponent.sass} +0 -0
  514. /package/src/plugins/{Loading.sass → loading/Loading.sass} +0 -0
  515. /package/src/plugins/{LocalStorage.json → local-storage/LocalStorage.json} +0 -0
  516. /package/src/plugins/{Meta.json → meta/Meta.json} +0 -0
  517. /package/src/plugins/{Notify.sass → notify/Notify.sass} +0 -0
  518. /package/src/plugins/{SessionStorage.json → session-storage/SessionStorage.json} +0 -0
package/dist/quasar.css CHANGED
@@ -1758,59 +1758,6 @@ body.q-ios-padding .q-dialog__inner > div {
1758
1758
  overflow: hidden;
1759
1759
  }
1760
1760
 
1761
- .q-bottom-sheet {
1762
- padding-bottom: 8px;
1763
- }
1764
- .q-bottom-sheet__avatar {
1765
- border-radius: 50%;
1766
- }
1767
- .q-bottom-sheet--list {
1768
- width: 400px;
1769
- }
1770
- .q-bottom-sheet--list .q-icon, .q-bottom-sheet--list img {
1771
- font-size: 24px;
1772
- width: 24px;
1773
- height: 24px;
1774
- }
1775
- .q-bottom-sheet--grid {
1776
- width: 700px;
1777
- }
1778
- .q-bottom-sheet--grid .q-bottom-sheet__item {
1779
- padding: 8px;
1780
- text-align: center;
1781
- min-width: 100px;
1782
- }
1783
- .q-bottom-sheet--grid .q-icon, .q-bottom-sheet--grid img, .q-bottom-sheet--grid .q-bottom-sheet__empty-icon {
1784
- font-size: 48px;
1785
- width: 48px;
1786
- height: 48px;
1787
- margin-bottom: 8px;
1788
- }
1789
- .q-bottom-sheet--grid .q-separator {
1790
- margin: 12px 0;
1791
- }
1792
- .q-bottom-sheet__item {
1793
- flex: 0 0 33.3333%;
1794
- }
1795
-
1796
- @media (min-width: 600px) {
1797
- .q-bottom-sheet__item {
1798
- flex: 0 0 25%;
1799
- }
1800
- }
1801
- .q-dialog-plugin {
1802
- width: 400px;
1803
- }
1804
- .q-dialog-plugin__form {
1805
- max-height: 50vh;
1806
- }
1807
- .q-dialog-plugin .q-card__section + .q-card__section {
1808
- padding-top: 0;
1809
- }
1810
- .q-dialog-plugin--progress {
1811
- text-align: center;
1812
- }
1813
-
1814
1761
  .q-editor {
1815
1762
  border: 1px solid rgba(0, 0, 0, 0.12);
1816
1763
  border-radius: 4px;
@@ -6112,6 +6059,59 @@ img.responsive {
6112
6059
  }
6113
6060
 
6114
6061
  /* Plugins */
6062
+ .q-bottom-sheet {
6063
+ padding-bottom: 8px;
6064
+ }
6065
+ .q-bottom-sheet__avatar {
6066
+ border-radius: 50%;
6067
+ }
6068
+ .q-bottom-sheet--list {
6069
+ width: 400px;
6070
+ }
6071
+ .q-bottom-sheet--list .q-icon, .q-bottom-sheet--list img {
6072
+ font-size: 24px;
6073
+ width: 24px;
6074
+ height: 24px;
6075
+ }
6076
+ .q-bottom-sheet--grid {
6077
+ width: 700px;
6078
+ }
6079
+ .q-bottom-sheet--grid .q-bottom-sheet__item {
6080
+ padding: 8px;
6081
+ text-align: center;
6082
+ min-width: 100px;
6083
+ }
6084
+ .q-bottom-sheet--grid .q-icon, .q-bottom-sheet--grid img, .q-bottom-sheet--grid .q-bottom-sheet__empty-icon {
6085
+ font-size: 48px;
6086
+ width: 48px;
6087
+ height: 48px;
6088
+ margin-bottom: 8px;
6089
+ }
6090
+ .q-bottom-sheet--grid .q-separator {
6091
+ margin: 12px 0;
6092
+ }
6093
+ .q-bottom-sheet__item {
6094
+ flex: 0 0 33.3333%;
6095
+ }
6096
+
6097
+ @media (min-width: 600px) {
6098
+ .q-bottom-sheet__item {
6099
+ flex: 0 0 25%;
6100
+ }
6101
+ }
6102
+ .q-dialog-plugin {
6103
+ width: 400px;
6104
+ }
6105
+ .q-dialog-plugin__form {
6106
+ max-height: 50vh;
6107
+ }
6108
+ .q-dialog-plugin .q-card__section + .q-card__section {
6109
+ padding-top: 0;
6110
+ }
6111
+ .q-dialog-plugin--progress {
6112
+ text-align: center;
6113
+ }
6114
+
6115
6115
  .q-loading {
6116
6116
  color: #000;
6117
6117
  position: fixed !important;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Quasar Framework v2.15.1
2
+ * Quasar Framework v2.15.2
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
@@ -263,7 +263,7 @@ var require_material_icons = __commonJS({
263
263
  // src/install-quasar.js
264
264
  import { createApp } from "vue";
265
265
 
266
- // src/plugins/Platform.js
266
+ // src/plugins/platform/Platform.js
267
267
  import { ref, reactive } from "vue";
268
268
 
269
269
  // src/utils/private/inject-obj-prop.js
@@ -282,7 +282,7 @@ function injectMultipleProps(target2, props4) {
282
282
  return target2;
283
283
  }
284
284
 
285
- // src/plugins/Platform.js
285
+ // src/plugins/platform/Platform.js
286
286
  var isRuntimeSsrPreHydration = false ? { value: true } : ref(
287
287
  __QUASAR_SSR_CLIENT__ && (__QUASAR_SSR_PWA__ ? document.body.getAttribute("data-server-rendered") !== null : true)
288
288
  );
@@ -320,7 +320,7 @@ function getPlatform(UA) {
320
320
  browser.winphone = true;
321
321
  delete browser["windows phone"];
322
322
  }
323
- if (browser.edga || browser.edgios) {
323
+ if (browser.edga || browser.edgios || browser.edg) {
324
324
  browser.edge = true;
325
325
  matched.browser = "edge";
326
326
  } else if (browser.crios) {
@@ -342,10 +342,7 @@ function getPlatform(UA) {
342
342
  ) {
343
343
  browser.webkit = true;
344
344
  }
345
- if (browser.edg) {
346
- matched.browser = "edgechromium";
347
- browser.edgeChromium = true;
348
- } else if (browser.opr) {
345
+ if (browser.opr) {
349
346
  matched.browser = "opera";
350
347
  browser.opera = true;
351
348
  }
@@ -649,7 +646,7 @@ function debounce_default(fn, wait = 250, immediate) {
649
646
  return debounced;
650
647
  }
651
648
 
652
- // src/plugins/Screen.js
649
+ // src/plugins/screen/Screen.js
653
650
  var SIZE_LIST = ["sm", "md", "lg", "xl"];
654
651
  var { passive } = listenOpts;
655
652
  var Screen_default = define_reactive_plugin_default({
@@ -788,7 +785,7 @@ var Screen_default = define_reactive_plugin_default({
788
785
  }
789
786
  });
790
787
 
791
- // src/plugins/Dark.js
788
+ // src/plugins/dark/Dark.js
792
789
  var Plugin = define_reactive_plugin_default({
793
790
  isActive: false,
794
791
  mode: false
@@ -1369,7 +1366,7 @@ function prepareApp(app2, uiOpts, pluginOpts) {
1369
1366
  }
1370
1367
  var install_quasar_default = false ? function(parentApp, opts = {}, ssrContext) {
1371
1368
  const $q = {
1372
- version: "2.15.1",
1369
+ version: "2.15.2",
1373
1370
  config: opts.config || {}
1374
1371
  };
1375
1372
  Object.assign(ssrContext, {
@@ -1399,7 +1396,7 @@ var install_quasar_default = false ? function(parentApp, opts = {}, ssrContext)
1399
1396
  ssrContext
1400
1397
  });
1401
1398
  } : function(parentApp, opts = {}) {
1402
- const $q = { version: "2.15.1" };
1399
+ const $q = { version: "2.15.2" };
1403
1400
  if (globalConfigIsFrozen === false) {
1404
1401
  if (opts.config !== void 0) {
1405
1402
  Object.assign(globalConfig, opts.config);
@@ -2532,7 +2529,7 @@ function throttle_default(fn, limit = 250) {
2532
2529
  };
2533
2530
  }
2534
2531
 
2535
- // src/directives/Ripple.js
2532
+ // src/directives/ripple/Ripple.js
2536
2533
  function showRipple(evt, el, ctx, forceCenter) {
2537
2534
  ctx.modifiers.stop === true && stop(evt);
2538
2535
  const color = ctx.modifiers.color;
@@ -3562,6 +3559,12 @@ function closePortals(proxy, evt, depth) {
3562
3559
  }
3563
3560
 
3564
3561
  // src/composables/private/use-portal.js
3562
+ var QPortal = createComponent({
3563
+ name: "QPortal",
3564
+ setup(_, { slots }) {
3565
+ return () => slots.default();
3566
+ }
3567
+ });
3565
3568
  function isOnGlobalDialog(vm2) {
3566
3569
  vm2 = vm2.parent;
3567
3570
  while (vm2 !== void 0 && vm2 !== null) {
@@ -3631,7 +3634,7 @@ function use_portal_default(vm2, innerRef, renderPortalContent, type) {
3631
3634
  hidePortal,
3632
3635
  portalIsActive,
3633
3636
  portalIsAccessible,
3634
- renderPortal: () => onGlobalDialog === true ? renderPortalContent() : portalIsActive.value === true ? [h13(Teleport, { to: portalEl }, renderPortalContent())] : void 0
3637
+ renderPortal: () => onGlobalDialog === true ? renderPortalContent() : portalIsActive.value === true ? [h13(Teleport, { to: portalEl }, h13(QPortal, renderPortalContent))] : void 0
3635
3638
  };
3636
3639
  }
3637
3640
 
@@ -5009,7 +5012,7 @@ function shouldStart(evt, ctx) {
5009
5012
  return ctx.event === void 0 && evt.target !== void 0 && evt.target.draggable !== true && typeof ctx.handler === "function" && avoidNodeNamesList.includes(evt.target.nodeName.toUpperCase()) === false && (evt.qClonedBy === void 0 || evt.qClonedBy.indexOf(ctx.uid) === -1);
5010
5013
  }
5011
5014
 
5012
- // src/directives/TouchSwipe.js
5015
+ // src/directives/touch-swipe/TouchSwipe.js
5013
5016
  function parseArg(arg) {
5014
5017
  const data = [0.06, 6, 50];
5015
5018
  if (typeof arg === "string" && arg.length) {
@@ -6432,7 +6435,7 @@ var QCircularProgress_default = createComponent({
6432
6435
  // src/components/color/QColor.js
6433
6436
  import { h as h37, ref as ref19, computed as computed41, watch as watch12, nextTick as nextTick6, getCurrentInstance as getCurrentInstance26 } from "vue";
6434
6437
 
6435
- // src/directives/TouchPan.js
6438
+ // src/directives/touch-pan/TouchPan.js
6436
6439
  function getChanges(evt, ctx, isFinal) {
6437
6440
  const pos = position(evt);
6438
6441
  let dir, distX = pos.left - ctx.event.x, distY = pos.top - ctx.event.y, absX = Math.abs(distX), absY = Math.abs(distY);
@@ -13793,7 +13796,7 @@ var QExpansionItem_default = createComponent({
13793
13796
  );
13794
13797
  const headerSlotScope = computed52(() => ({
13795
13798
  expanded: showing.value === true,
13796
- detailsId: props4.targetUid,
13799
+ detailsId: targetUid.value,
13797
13800
  toggle,
13798
13801
  show,
13799
13802
  hide
@@ -16943,7 +16946,7 @@ var QInput_default = createComponent({
16943
16946
  // src/components/intersection/QIntersection.js
16944
16947
  import { h as h62, ref as ref40, computed as computed68, Transition as Transition11 } from "vue";
16945
16948
 
16946
- // src/directives/Intersection.js
16949
+ // src/directives/intersection/Intersection.js
16947
16950
  var defaultCfg = {
16948
16951
  threshold: 0,
16949
16952
  root: null,
@@ -25045,7 +25048,7 @@ var QTable_default = createComponent({
25045
25048
  props: {
25046
25049
  rows: {
25047
25050
  type: Array,
25048
- default: () => []
25051
+ required: true
25049
25052
  },
25050
25053
  rowKey: {
25051
25054
  type: [String, Function],
@@ -27876,7 +27879,7 @@ var QVideo_default = createComponent({
27876
27879
  }
27877
27880
  });
27878
27881
 
27879
- // src/directives/ClosePopup.js
27882
+ // src/directives/close-popup/ClosePopup.js
27880
27883
  function getDepth(value2) {
27881
27884
  if (value2 === false) {
27882
27885
  return 0;
@@ -28662,7 +28665,7 @@ function morph(_options) {
28662
28665
  return (abort) => cancel(abort);
28663
28666
  }
28664
28667
 
28665
- // src/directives/Morph.js
28668
+ // src/directives/morph/Morph.js
28666
28669
  var morphGroups = {};
28667
28670
  var props2 = [
28668
28671
  "duration",
@@ -28846,7 +28849,7 @@ var Morph_default = createDirective(
28846
28849
  }
28847
28850
  );
28848
28851
 
28849
- // src/directives/Mutation.js
28852
+ // src/directives/mutation/Mutation.js
28850
28853
  var defaultCfg2 = {
28851
28854
  childList: true,
28852
28855
  subtree: true,
@@ -28896,7 +28899,7 @@ var Mutation_default = createDirective(
28896
28899
  }
28897
28900
  );
28898
28901
 
28899
- // src/directives/ScrollFire.js
28902
+ // src/directives/scroll-fire/ScrollFire.js
28900
28903
  var { passive: passive5 } = listenOpts;
28901
28904
  function update4(ctx, { value: value2, oldValue }) {
28902
28905
  if (typeof value2 !== "function") {
@@ -28947,7 +28950,7 @@ var ScrollFire_default = createDirective(
28947
28950
  }
28948
28951
  );
28949
28952
 
28950
- // src/directives/Scroll.js
28953
+ // src/directives/scroll/Scroll.js
28951
28954
  function update5(ctx, { value: value2, oldValue }) {
28952
28955
  if (typeof value2 !== "function") {
28953
28956
  ctx.scrollTarget.removeEventListener("scroll", ctx.scroll, listenOpts.passive);
@@ -28987,7 +28990,7 @@ var Scroll_default = createDirective(
28987
28990
  }
28988
28991
  );
28989
28992
 
28990
- // src/directives/TouchHold.js
28993
+ // src/directives/touch-hold/TouchHold.js
28991
28994
  var TouchHold_default = createDirective(
28992
28995
  false ? { name: "touch-hold", getSSRProps: noop_ssr_directive_transform_default } : {
28993
28996
  name: "touch-hold",
@@ -29111,7 +29114,7 @@ var TouchHold_default = createDirective(
29111
29114
  }
29112
29115
  );
29113
29116
 
29114
- // src/directives/TouchRepeat.js
29117
+ // src/directives/touch-repeat/TouchRepeat.js
29115
29118
  var keyCodes3 = {
29116
29119
  esc: 27,
29117
29120
  tab: 9,
@@ -29313,7 +29316,7 @@ function getCssVar(propName, element = document.body) {
29313
29316
  return getComputedStyle(element).getPropertyValue(`--q-${propName}`).trim() || null;
29314
29317
  }
29315
29318
 
29316
- // src/plugins/AddressbarColor.js
29319
+ // src/plugins/addressbar/AddressbarColor.js
29317
29320
  var metaValue;
29318
29321
  function getProp() {
29319
29322
  return client.is.winphone ? "msapplication-navbutton-color" : client.is.safari ? "apple-mobile-web-app-status-bar-style" : "theme-color";
@@ -29356,7 +29359,7 @@ var AddressbarColor_default = {
29356
29359
  }
29357
29360
  };
29358
29361
 
29359
- // src/plugins/AppFullscreen.js
29362
+ // src/plugins/app-fullscreen/AppFullscreen.js
29360
29363
  var prefixes = {};
29361
29364
  function assignFn(fn) {
29362
29365
  Object.assign(Plugin4, {
@@ -29444,7 +29447,7 @@ if (false) {
29444
29447
  }
29445
29448
  var AppFullscreen_default = Plugin4;
29446
29449
 
29447
- // src/plugins/AppVisibility.js
29450
+ // src/plugins/app-visibility/AppVisibility.js
29448
29451
  var Plugin5 = define_reactive_plugin_default({
29449
29452
  appVisible: true
29450
29453
  }, {
@@ -29477,10 +29480,10 @@ if (true) {
29477
29480
  }
29478
29481
  var AppVisibility_default = Plugin5;
29479
29482
 
29480
- // src/components/dialog-bottom-sheet/BottomSheet.js
29483
+ // src/plugins/bottom-sheet/component/BottomSheetComponent.js
29481
29484
  import { h as h131, ref as ref67, getCurrentInstance as getCurrentInstance84 } from "vue";
29482
- var BottomSheet_default = createComponent({
29483
- name: "BottomSheetPlugin",
29485
+ var BottomSheetComponent_default = createComponent({
29486
+ name: "BottomSheetComponent",
29484
29487
  props: {
29485
29488
  ...useDarkProps,
29486
29489
  title: String,
@@ -29726,17 +29729,17 @@ function global_dialog_default(DefaultComponent, supportsCustomComponent, parent
29726
29729
  };
29727
29730
  }
29728
29731
 
29729
- // src/plugins/BottomSheet.js
29730
- var BottomSheet_default2 = {
29732
+ // src/plugins/bottom-sheet/BottomSheet.js
29733
+ var BottomSheet_default = {
29731
29734
  install({ $q, parentApp }) {
29732
- $q.bottomSheet = global_dialog_default(BottomSheet_default, false, parentApp);
29735
+ $q.bottomSheet = global_dialog_default(BottomSheetComponent_default, false, parentApp);
29733
29736
  if (this.__installed !== true) {
29734
29737
  this.create = $q.bottomSheet;
29735
29738
  }
29736
29739
  }
29737
29740
  };
29738
29741
 
29739
- // src/plugins/Cookies.js
29742
+ // src/plugins/cookies/Cookies.js
29740
29743
  function encode(string) {
29741
29744
  return encodeURIComponent(string);
29742
29745
  }
@@ -29886,10 +29889,10 @@ if (true) {
29886
29889
  }
29887
29890
  var Cookies_default = Plugin6;
29888
29891
 
29889
- // src/components/dialog-plugin/DialogPlugin.js
29892
+ // src/plugins/dialog/component/DialogPluginComponent.js
29890
29893
  import { h as h133, ref as ref69, computed as computed115, watch as watch49, toRaw as toRaw3, getCurrentInstance as getCurrentInstance85 } from "vue";
29891
- var DialogPlugin_default = createComponent({
29892
- name: "DialogPlugin",
29894
+ var DialogPluginComponent_default = createComponent({
29895
+ name: "DialogPluginComponent",
29893
29896
  props: {
29894
29897
  ...useDarkProps,
29895
29898
  title: String,
@@ -30104,17 +30107,17 @@ var DialogPlugin_default = createComponent({
30104
30107
  }
30105
30108
  });
30106
30109
 
30107
- // src/plugins/Dialog.js
30110
+ // src/plugins/dialog/Dialog.js
30108
30111
  var Dialog_default = {
30109
30112
  install({ $q, parentApp }) {
30110
- $q.dialog = global_dialog_default(DialogPlugin_default, true, parentApp);
30113
+ $q.dialog = global_dialog_default(DialogPluginComponent_default, true, parentApp);
30111
30114
  if (this.__installed !== true) {
30112
30115
  this.create = $q.dialog;
30113
30116
  }
30114
30117
  }
30115
30118
  };
30116
30119
 
30117
- // src/plugins/LoadingBar.js
30120
+ // src/plugins/loading-bar/LoadingBar.js
30118
30121
  import { h as h134, ref as ref70 } from "vue";
30119
30122
  var barRef = ref70(null);
30120
30123
  var Plugin7 = define_reactive_plugin_default({
@@ -30170,7 +30173,7 @@ var Plugin7 = define_reactive_plugin_default({
30170
30173
  });
30171
30174
  var LoadingBar_default = Plugin7;
30172
30175
 
30173
- // src/plugins/Loading.js
30176
+ // src/plugins/loading/Loading.js
30174
30177
  import { h as h135, Transition as Transition14, onMounted as onMounted23 } from "vue";
30175
30178
  var app;
30176
30179
  var vm;
@@ -30319,7 +30322,7 @@ var Plugin8 = define_reactive_plugin_default({
30319
30322
  });
30320
30323
  var Loading_default = Plugin8;
30321
30324
 
30322
- // src/plugins/Meta.js
30325
+ // src/plugins/meta/Meta.js
30323
30326
  var updateId = null;
30324
30327
  var currentClientMeta;
30325
30328
  var clientList = [];
@@ -30474,7 +30477,7 @@ var Meta_default = {
30474
30477
  }
30475
30478
  };
30476
30479
 
30477
- // src/plugins/Notify.js
30480
+ // src/plugins/notify/Notify.js
30478
30481
  import { h as h136, ref as ref71, markRaw as markRaw2, TransitionGroup } from "vue";
30479
30482
  var uid3 = 0;
30480
30483
  var defaults2 = {};
@@ -30986,7 +30989,7 @@ function getStorage(type) {
30986
30989
  };
30987
30990
  }
30988
30991
 
30989
- // src/plugins/LocalStorage.js
30992
+ // src/plugins/local-storage/LocalStorage.js
30990
30993
  var storage = client.has.webStorage === false ? getEmptyStorage() : getStorage("local");
30991
30994
  var Plugin9 = {
30992
30995
  install({ $q }) {
@@ -30996,7 +30999,7 @@ var Plugin9 = {
30996
30999
  Object.assign(Plugin9, storage);
30997
31000
  var LocalStorage_default = Plugin9;
30998
31001
 
30999
- // src/plugins/SessionStorage.js
31002
+ // src/plugins/session-storage/SessionStorage.js
31000
31003
  var storage2 = client.has.webStorage === false ? getEmptyStorage() : getStorage("session");
31001
31004
  var Plugin10 = {
31002
31005
  install({ $q }) {
@@ -31080,6 +31083,30 @@ function useQuasar() {
31080
31083
  return inject13(quasarKey);
31081
31084
  }
31082
31085
 
31086
+ // src/composables/use-interval.js
31087
+ import { onDeactivated as onDeactivated11, onBeforeUnmount as onBeforeUnmount38, getCurrentInstance as getCurrentInstance87 } from "vue";
31088
+ function use_interval_default() {
31089
+ let timer2 = null;
31090
+ const vm2 = getCurrentInstance87();
31091
+ function removeInterval() {
31092
+ if (timer2 !== null) {
31093
+ clearInterval(timer2);
31094
+ timer2 = null;
31095
+ }
31096
+ }
31097
+ onDeactivated11(removeInterval);
31098
+ onBeforeUnmount38(removeInterval);
31099
+ return {
31100
+ removeInterval,
31101
+ registerInterval(fn, delay) {
31102
+ removeInterval(timer2);
31103
+ if (vmIsDestroyed(vm2) === false) {
31104
+ timer2 = setInterval(fn, delay);
31105
+ }
31106
+ }
31107
+ };
31108
+ }
31109
+
31083
31110
  // src/utils/copy-to-clipboard.js
31084
31111
  function fallback(text) {
31085
31112
  const area = document.createElement("textarea");
@@ -31362,7 +31389,7 @@ function runSequentialPromises(sequentialPromises, { threadsNumber = 1, abortOnF
31362
31389
 
31363
31390
  // src/index.dev.js
31364
31391
  var Quasar = {
31365
- version: "2.15.1",
31392
+ version: "2.15.2",
31366
31393
  install: install_quasar_default,
31367
31394
  lang: lang_default,
31368
31395
  iconSet: icon_set_default
@@ -31371,7 +31398,7 @@ export {
31371
31398
  AddressbarColor_default as AddressbarColor,
31372
31399
  AppFullscreen_default as AppFullscreen,
31373
31400
  AppVisibility_default as AppVisibility,
31374
- BottomSheet_default2 as BottomSheet,
31401
+ BottomSheet_default as BottomSheet,
31375
31402
  ClosePopup_default as ClosePopup,
31376
31403
  Cookies_default as Cookies,
31377
31404
  Dark_default as Dark,
@@ -31547,6 +31574,7 @@ export {
31547
31574
  use_form_child_default as useFormChild,
31548
31575
  use_hydration_default as useHydration,
31549
31576
  use_id_default as useId,
31577
+ use_interval_default as useInterval,
31550
31578
  use_meta_default as useMeta,
31551
31579
  useQuasar,
31552
31580
  use_render_cache_default as useRenderCache,