quasar 2.1.9 → 2.2.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 (270) hide show
  1. package/dist/api/QCarousel.json +19 -5
  2. package/dist/api/QColor.json +6 -0
  3. package/dist/api/QInnerLoading.json +32 -0
  4. package/dist/api/QOptionGroup.json +58 -1
  5. package/dist/api/QRange.json +10 -3
  6. package/dist/api/QSeparator.json +1 -1
  7. package/dist/api/QSkeleton.json +14 -0
  8. package/dist/api/QSlider.json +10 -3
  9. package/dist/api/QStepper.json +16 -2
  10. package/dist/api/QTabPanels.json +16 -2
  11. package/dist/api/QTable.json +5 -0
  12. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  13. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  14. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  15. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  16. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  17. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  18. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  19. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  20. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  21. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  22. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  23. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  24. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  25. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  26. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  27. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  28. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  29. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  30. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  31. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  32. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  33. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  34. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  35. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  36. package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
  37. package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
  38. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  39. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  40. package/dist/icon-set/themify.umd.prod.js +1 -1
  41. package/dist/lang/ar.umd.prod.js +1 -1
  42. package/dist/lang/az-Latn.umd.prod.js +1 -1
  43. package/dist/lang/bg.umd.prod.js +1 -1
  44. package/dist/lang/bn.umd.prod.js +1 -1
  45. package/dist/lang/ca.umd.prod.js +1 -1
  46. package/dist/lang/cs.umd.prod.js +1 -1
  47. package/dist/lang/da.umd.prod.js +1 -1
  48. package/dist/lang/de.umd.prod.js +1 -1
  49. package/dist/lang/el.umd.prod.js +1 -1
  50. package/dist/lang/en-GB.umd.prod.js +1 -1
  51. package/dist/lang/en-US.umd.prod.js +1 -1
  52. package/dist/lang/eo.umd.prod.js +1 -1
  53. package/dist/lang/es.umd.prod.js +1 -1
  54. package/dist/lang/et.umd.prod.js +1 -1
  55. package/dist/lang/fa-IR.umd.prod.js +1 -1
  56. package/dist/lang/fa.umd.prod.js +1 -1
  57. package/dist/lang/fi.umd.prod.js +1 -1
  58. package/dist/lang/fr.umd.prod.js +1 -1
  59. package/dist/lang/gn.umd.prod.js +1 -1
  60. package/dist/lang/he.umd.prod.js +1 -1
  61. package/dist/lang/hr.umd.prod.js +1 -1
  62. package/dist/lang/hu.umd.prod.js +1 -1
  63. package/dist/lang/id.umd.prod.js +1 -1
  64. package/dist/lang/is.umd.prod.js +1 -1
  65. package/dist/lang/it.umd.prod.js +1 -1
  66. package/dist/lang/ja.umd.prod.js +1 -1
  67. package/dist/lang/km.umd.prod.js +1 -1
  68. package/dist/lang/ko-KR.umd.prod.js +1 -1
  69. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  70. package/dist/lang/lt.umd.prod.js +6 -0
  71. package/dist/lang/lu.umd.prod.js +1 -1
  72. package/dist/lang/lv.umd.prod.js +1 -1
  73. package/dist/lang/ml.umd.prod.js +1 -1
  74. package/dist/lang/ms.umd.prod.js +1 -1
  75. package/dist/lang/nb-NO.umd.prod.js +1 -1
  76. package/dist/lang/nl.umd.prod.js +1 -1
  77. package/dist/lang/pl.umd.prod.js +1 -1
  78. package/dist/lang/pt-BR.umd.prod.js +1 -1
  79. package/dist/lang/pt.umd.prod.js +1 -1
  80. package/dist/lang/ro.umd.prod.js +1 -1
  81. package/dist/lang/ru.umd.prod.js +1 -1
  82. package/dist/lang/sk.umd.prod.js +1 -1
  83. package/dist/lang/sl.umd.prod.js +1 -1
  84. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  85. package/dist/lang/sr.umd.prod.js +1 -1
  86. package/dist/lang/sv.umd.prod.js +1 -1
  87. package/dist/lang/ta.umd.prod.js +1 -1
  88. package/dist/lang/th.umd.prod.js +1 -1
  89. package/dist/lang/tr.umd.prod.js +1 -1
  90. package/dist/lang/ug.umd.prod.js +2 -2
  91. package/dist/lang/uk.umd.prod.js +1 -1
  92. package/dist/lang/vi.umd.prod.js +1 -1
  93. package/dist/lang/zh-CN.umd.prod.js +1 -1
  94. package/dist/lang/zh-TW.umd.prod.js +1 -1
  95. package/dist/quasar.cjs.prod.js +2 -2
  96. package/dist/quasar.css +24 -23
  97. package/dist/quasar.esm.prod.js +2 -2
  98. package/dist/quasar.prod.css +1 -1
  99. package/dist/quasar.rtl.css +29 -28
  100. package/dist/quasar.rtl.prod.css +1 -1
  101. package/dist/quasar.sass +24 -18
  102. package/dist/quasar.umd.js +538 -391
  103. package/dist/quasar.umd.prod.js +2 -2
  104. package/dist/ssr-directives/Morph.js +1 -1
  105. package/dist/types/index.d.ts +81 -12
  106. package/dist/vetur/quasar-attributes.json +39 -7
  107. package/dist/vetur/quasar-tags.json +9 -1
  108. package/dist/web-types/web-types.json +101 -15
  109. package/lang/index.json +4 -0
  110. package/lang/lt.js +103 -0
  111. package/lang/ug.js +42 -42
  112. package/package.json +1 -1
  113. package/src/components/ajax-bar/QAjaxBar.js +3 -2
  114. package/src/components/avatar/QAvatar.js +3 -2
  115. package/src/components/badge/QBadge.js +3 -2
  116. package/src/components/banner/QBanner.js +3 -2
  117. package/src/components/bar/QBar.js +3 -2
  118. package/src/components/breadcrumbs/QBreadcrumbs.js +3 -2
  119. package/src/components/breadcrumbs/QBreadcrumbsEl.js +3 -2
  120. package/src/components/btn/QBtn.js +19 -21
  121. package/src/components/btn-dropdown/QBtnDropdown.js +3 -2
  122. package/src/components/btn-group/QBtnGroup.js +3 -2
  123. package/src/components/btn-toggle/QBtnToggle.js +3 -2
  124. package/src/components/card/QCard.js +3 -2
  125. package/src/components/card/QCardActions.js +3 -2
  126. package/src/components/card/QCardSection.js +3 -2
  127. package/src/components/carousel/QCarousel.js +11 -3
  128. package/src/components/carousel/QCarousel.json +9 -1
  129. package/src/components/carousel/QCarouselControl.js +3 -2
  130. package/src/components/carousel/QCarouselSlide.js +3 -2
  131. package/src/components/chat/QChatMessage.js +3 -2
  132. package/src/components/checkbox/QCheckbox.js +3 -2
  133. package/src/components/chip/QChip.js +3 -2
  134. package/src/components/circular-progress/QCircularProgress.js +3 -2
  135. package/src/components/color/QColor.js +76 -63
  136. package/src/components/color/QColor.json +7 -0
  137. package/src/components/color/QColor.sass +5 -1
  138. package/src/components/date/QDate.js +5 -3
  139. package/src/components/dialog/QDialog.js +9 -2
  140. package/src/components/dialog-bottom-sheet/BottomSheet.js +3 -2
  141. package/src/components/dialog-plugin/DialogPlugin.js +3 -2
  142. package/src/components/drawer/QDrawer.js +6 -2
  143. package/src/components/editor/QEditor.js +3 -2
  144. package/src/components/expansion-item/QExpansionItem.js +3 -2
  145. package/src/components/fab/QFab.js +3 -2
  146. package/src/components/fab/QFabAction.js +3 -2
  147. package/src/components/field/QField.js +3 -3
  148. package/src/components/file/QFile.js +3 -2
  149. package/src/components/footer/QFooter.js +3 -2
  150. package/src/components/form/QForm.js +3 -2
  151. package/src/components/header/QHeader.js +3 -2
  152. package/src/components/icon/QIcon.js +4 -2
  153. package/src/components/img/QImg.js +5 -2
  154. package/src/components/infinite-scroll/QInfiniteScroll.js +3 -2
  155. package/src/components/inner-loading/QInnerLoading.js +34 -9
  156. package/src/components/inner-loading/QInnerLoading.json +29 -0
  157. package/src/components/inner-loading/QInnerLoading.sass +4 -0
  158. package/src/components/input/QInput.js +3 -2
  159. package/src/components/intersection/QIntersection.js +3 -2
  160. package/src/components/item/QItem.js +3 -2
  161. package/src/components/item/QItemLabel.js +3 -2
  162. package/src/components/item/QItemSection.js +3 -2
  163. package/src/components/item/QList.js +3 -3
  164. package/src/components/knob/QKnob.js +3 -2
  165. package/src/components/layout/QLayout.js +3 -2
  166. package/src/components/linear-progress/QLinearProgress.js +3 -2
  167. package/src/components/markup-table/QMarkupTable.js +3 -2
  168. package/src/components/menu/QMenu.js +4 -3
  169. package/src/components/no-ssr/QNoSsr.js +3 -2
  170. package/src/components/option-group/QOptionGroup.js +33 -21
  171. package/src/components/option-group/QOptionGroup.json +50 -1
  172. package/src/components/page/QPage.js +3 -2
  173. package/src/components/page/QPageContainer.js +3 -2
  174. package/src/components/page-scroller/QPageScroller.js +4 -2
  175. package/src/components/page-sticky/QPageSticky.js +2 -3
  176. package/src/components/pagination/QPagination.js +3 -2
  177. package/src/components/parallax/QParallax.js +3 -2
  178. package/src/components/popup-edit/QPopupEdit.js +3 -2
  179. package/src/components/popup-proxy/QPopupProxy.js +4 -2
  180. package/src/components/pull-to-refresh/QPullToRefresh.js +3 -2
  181. package/src/components/radio/QRadio.js +3 -2
  182. package/src/components/range/QRange.js +4 -3
  183. package/src/components/range/QRange.json +7 -3
  184. package/src/components/rating/QRating.js +65 -44
  185. package/src/components/rating/QRating.sass +8 -6
  186. package/src/components/resize-observer/QResizeObserver.js +3 -2
  187. package/src/components/responsive/QResponsive.js +3 -2
  188. package/src/components/scroll-area/QScrollArea.js +3 -2
  189. package/src/components/scroll-observer/QScrollObserver.js +3 -2
  190. package/src/components/select/QSelect.js +3 -2
  191. package/src/components/separator/QSeparator.js +4 -2
  192. package/src/components/separator/QSeparator.json +1 -1
  193. package/src/components/skeleton/QSkeleton.js +18 -7
  194. package/src/components/skeleton/QSkeleton.json +9 -0
  195. package/src/components/skeleton/QSkeleton.sass +7 -6
  196. package/src/components/slide-item/QSlideItem.js +3 -2
  197. package/src/components/slide-transition/QSlideTransition.js +4 -2
  198. package/src/components/slider/QSlider.js +4 -3
  199. package/src/components/slider/QSlider.json +7 -3
  200. package/src/components/slider/use-slider.js +7 -2
  201. package/src/components/space/QSpace.js +4 -2
  202. package/src/components/spinner/QSpinner.js +4 -2
  203. package/src/components/spinner/QSpinnerAudio.js +4 -2
  204. package/src/components/spinner/QSpinnerBall.js +4 -2
  205. package/src/components/spinner/QSpinnerBars.js +4 -2
  206. package/src/components/spinner/QSpinnerBox.js +4 -2
  207. package/src/components/spinner/QSpinnerClock.js +4 -2
  208. package/src/components/spinner/QSpinnerComment.js +4 -2
  209. package/src/components/spinner/QSpinnerCube.js +4 -2
  210. package/src/components/spinner/QSpinnerDots.js +4 -2
  211. package/src/components/spinner/QSpinnerFacebook.js +4 -2
  212. package/src/components/spinner/QSpinnerGears.js +4 -2
  213. package/src/components/spinner/QSpinnerGrid.js +4 -2
  214. package/src/components/spinner/QSpinnerHearts.js +4 -2
  215. package/src/components/spinner/QSpinnerHourglass.js +4 -2
  216. package/src/components/spinner/QSpinnerInfinity.js +4 -2
  217. package/src/components/spinner/QSpinnerIos.js +4 -2
  218. package/src/components/spinner/QSpinnerOrbit.js +4 -2
  219. package/src/components/spinner/QSpinnerOval.js +4 -2
  220. package/src/components/spinner/QSpinnerPie.js +4 -2
  221. package/src/components/spinner/QSpinnerPuff.js +4 -2
  222. package/src/components/spinner/QSpinnerRadio.js +4 -2
  223. package/src/components/spinner/QSpinnerRings.js +4 -2
  224. package/src/components/spinner/QSpinnerTail.js +4 -2
  225. package/src/components/splitter/QSplitter.js +3 -2
  226. package/src/components/stepper/QStep.js +3 -2
  227. package/src/components/stepper/QStepper.js +3 -2
  228. package/src/components/stepper/QStepperNavigation.js +3 -2
  229. package/src/components/stepper/StepHeader.js +12 -10
  230. package/src/components/tab-panels/QTabPanel.js +4 -2
  231. package/src/components/tab-panels/QTabPanels.js +3 -2
  232. package/src/components/table/QTable.js +4 -2
  233. package/src/components/table/QTable.json +1 -0
  234. package/src/components/table/QTd.js +3 -2
  235. package/src/components/table/QTh.js +3 -2
  236. package/src/components/table/QTr.js +3 -2
  237. package/src/components/tabs/QRouteTab.js +4 -2
  238. package/src/components/tabs/QTab.js +3 -3
  239. package/src/components/tabs/QTabs.js +3 -2
  240. package/src/components/tabs/use-tab.js +11 -9
  241. package/src/components/time/QTime.js +3 -4
  242. package/src/components/timeline/QTimeline.js +3 -2
  243. package/src/components/timeline/QTimelineEntry.js +3 -2
  244. package/src/components/toggle/QToggle.js +5 -2
  245. package/src/components/toolbar/QToolbar.js +3 -2
  246. package/src/components/toolbar/QToolbarTitle.js +3 -2
  247. package/src/components/tooltip/QTooltip.js +3 -2
  248. package/src/components/tree/QTree.js +3 -2
  249. package/src/components/uploader/QUploaderAddTrigger.js +3 -2
  250. package/src/components/video/QVideo.js +4 -2
  251. package/src/components/virtual-scroll/QVirtualScroll.js +3 -2
  252. package/src/composables/private/use-panel.js +13 -8
  253. package/src/composables/private/use-panel.json +11 -2
  254. package/src/css/core/transitions.sass +4 -4
  255. package/src/css/normalize.sass +0 -7
  256. package/src/directives/ClosePopup.js +3 -1
  257. package/src/directives/Intersection.js +3 -1
  258. package/src/directives/Morph.js +4 -1
  259. package/src/directives/Mutation.js +3 -1
  260. package/src/directives/Ripple.js +3 -1
  261. package/src/directives/Scroll.js +3 -1
  262. package/src/directives/ScrollFire.js +3 -1
  263. package/src/directives/TouchHold.js +4 -1
  264. package/src/directives/TouchPan.js +4 -1
  265. package/src/directives/TouchRepeat.js +4 -1
  266. package/src/directives/TouchSwipe.js +4 -1
  267. package/src/plugins/Notify.js +4 -3
  268. package/src/utils/create-uploader-component.js +3 -3
  269. package/src/utils/date.js +93 -60
  270. package/src/utils/private/create.js +4 -0
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Quasar Framework v2.1.9
2
+ * Quasar Framework v2.2.3
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
@@ -1437,7 +1437,7 @@
1437
1437
  }
1438
1438
 
1439
1439
  var installQuasar = function (parentApp, opts = {}) {
1440
- const $q = { version: '2.1.9' };
1440
+ const $q = { version: '2.2.3' };
1441
1441
 
1442
1442
  if (globalConfigIsFrozen === false) {
1443
1443
  if (opts.config !== void 0) {
@@ -1460,6 +1460,9 @@
1460
1460
  });
1461
1461
  };
1462
1462
 
1463
+ const createComponent = raw => vue.markRaw(vue.defineComponent(raw));
1464
+ const createDirective = raw => vue.markRaw(raw);
1465
+
1463
1466
  const units = [ 'B', 'KB', 'MB', 'GB', 'TB', 'PB' ];
1464
1467
 
1465
1468
  function humanStorageSize (bytes) {
@@ -1589,7 +1592,7 @@
1589
1592
  }
1590
1593
  }
1591
1594
 
1592
- var QAjaxBar = vue.defineComponent({
1595
+ var QAjaxBar = createComponent({
1593
1596
  name: 'QAjaxBar',
1594
1597
 
1595
1598
  props: {
@@ -1865,7 +1868,7 @@
1865
1868
  const ionRE = /^ion-/;
1866
1869
  const faLaRE = /^[l|f]a[s|r|l|b|d]? /;
1867
1870
 
1868
- var QIcon = vue.defineComponent({
1871
+ var QIcon = createComponent({
1869
1872
  name: 'QIcon',
1870
1873
 
1871
1874
  props: {
@@ -2033,7 +2036,7 @@
2033
2036
  }
2034
2037
  });
2035
2038
 
2036
- var QAvatar = vue.defineComponent({
2039
+ var QAvatar = createComponent({
2037
2040
  name: 'QAvatar',
2038
2041
 
2039
2042
  props: {
@@ -2089,7 +2092,7 @@
2089
2092
 
2090
2093
  const alignValues$3 = [ 'top', 'middle', 'bottom' ];
2091
2094
 
2092
- var QBadge = vue.defineComponent({
2095
+ var QBadge = createComponent({
2093
2096
  name: 'QBadge',
2094
2097
 
2095
2098
  props: {
@@ -2159,7 +2162,7 @@
2159
2162
  ))
2160
2163
  }
2161
2164
 
2162
- var QBanner = vue.defineComponent({
2165
+ var QBanner = createComponent({
2163
2166
  name: 'QBanner',
2164
2167
 
2165
2168
  props: {
@@ -2211,7 +2214,7 @@
2211
2214
  }
2212
2215
  });
2213
2216
 
2214
- var QBar = vue.defineComponent({
2217
+ var QBar = createComponent({
2215
2218
  name: 'QBar',
2216
2219
 
2217
2220
  props: {
@@ -2305,7 +2308,7 @@
2305
2308
  return vm.appContext.config.globalProperties.$router !== void 0
2306
2309
  }
2307
2310
 
2308
- var QBreadcrumbs = vue.defineComponent({
2311
+ var QBreadcrumbs = createComponent({
2309
2312
  name: 'QBreadcrumbs',
2310
2313
 
2311
2314
  props: {
@@ -2632,7 +2635,7 @@
2632
2635
  }
2633
2636
  }
2634
2637
 
2635
- var QBreadcrumbsEl = vue.defineComponent({
2638
+ var QBreadcrumbsEl = createComponent({
2636
2639
  name: 'QBreadcrumbsEl',
2637
2640
 
2638
2641
  props: {
@@ -2705,7 +2708,7 @@
2705
2708
  }
2706
2709
  }
2707
2710
 
2708
- var QSpinner = vue.defineComponent({
2711
+ var QSpinner = createComponent({
2709
2712
  name: 'QSpinner',
2710
2713
 
2711
2714
  props: {
@@ -2918,7 +2921,7 @@
2918
2921
  };
2919
2922
  }
2920
2923
 
2921
- var Ripple = {
2924
+ var Ripple = createDirective({
2922
2925
  name: 'ripple',
2923
2926
 
2924
2927
  beforeMount (el, binding) {
@@ -2983,7 +2986,8 @@
2983
2986
  cleanEvt(ctx, 'main');
2984
2987
  delete el._qripple;
2985
2988
  }
2986
- };
2989
+ }
2990
+ );
2987
2991
 
2988
2992
  const padding = {
2989
2993
  none: 0,
@@ -3186,7 +3190,7 @@
3186
3190
  keyboardTarget = null,
3187
3191
  mouseTarget = null;
3188
3192
 
3189
- var QBtn = vue.defineComponent({
3193
+ var QBtn = createComponent({
3190
3194
  name: 'QBtn',
3191
3195
 
3192
3196
  props: {
@@ -3218,7 +3222,7 @@
3218
3222
  );
3219
3223
 
3220
3224
  const ripple = vue.computed(() => (
3221
- props.ripple === false
3225
+ props.disable === true || props.ripple === false
3222
3226
  ? false
3223
3227
  : {
3224
3228
  keyCodes: isLink.value === true ? [ 13, 32 ] : [ 13 ],
@@ -3226,6 +3230,8 @@
3226
3230
  }
3227
3231
  ));
3228
3232
 
3233
+ const rippleProps = vue.computed(() => ({ center: props.round }));
3234
+
3229
3235
  const percentageStyle = vue.computed(() => {
3230
3236
  const val = Math.max(0, Math.min(100, props.percentage));
3231
3237
  return val > 0
@@ -3259,16 +3265,6 @@
3259
3265
  }
3260
3266
  });
3261
3267
 
3262
- const directives = vue.computed(() => {
3263
- // if props.disable !== true && props.ripple !== false
3264
- return [ [
3265
- Ripple,
3266
- ripple.value,
3267
- void 0,
3268
- { center: props.round }
3269
- ] ]
3270
- });
3271
-
3272
3268
  const nodeProps = vue.computed(() => ({
3273
3269
  ref: rootRef,
3274
3270
  class: 'q-btn q-btn-item non-selectable no-outline ' + classes.value,
@@ -3532,19 +3528,24 @@
3532
3528
  ))
3533
3529
  );
3534
3530
 
3535
- return hDir(
3536
- isLink.value === true ? 'a' : 'button',
3537
- nodeProps.value,
3538
- child,
3539
- 'ripple',
3540
- props.disable !== true && props.ripple !== false,
3541
- () => directives.value
3531
+ return vue.withDirectives(
3532
+ vue.h(
3533
+ isLink.value === true ? 'a' : 'button',
3534
+ nodeProps.value,
3535
+ child
3536
+ ),
3537
+ [ [
3538
+ Ripple,
3539
+ ripple.value,
3540
+ void 0,
3541
+ rippleProps.value
3542
+ ] ]
3542
3543
  )
3543
3544
  }
3544
3545
  }
3545
3546
  });
3546
3547
 
3547
- var QBtnGroup = vue.defineComponent({
3548
+ var QBtnGroup = createComponent({
3548
3549
  name: 'QBtnGroup',
3549
3550
 
3550
3551
  props: {
@@ -4895,7 +4896,7 @@
4895
4896
  }
4896
4897
  }
4897
4898
 
4898
- var QMenu = vue.defineComponent({
4899
+ var QMenu = createComponent({
4899
4900
  name: 'QMenu',
4900
4901
 
4901
4902
  inheritAttrs: false,
@@ -5242,7 +5243,7 @@
5242
5243
  }
5243
5244
  });
5244
5245
 
5245
- var QBtnDropdown = vue.defineComponent({
5246
+ var QBtnDropdown = createComponent({
5246
5247
  name: 'QBtnDropdown',
5247
5248
 
5248
5249
  props: {
@@ -5474,7 +5475,7 @@
5474
5475
  return vue.computed(() => props.name || props.for)
5475
5476
  }
5476
5477
 
5477
- var QBtnToggle = vue.defineComponent({
5478
+ var QBtnToggle = createComponent({
5478
5479
  name: 'QBtnToggle',
5479
5480
 
5480
5481
  props: {
@@ -5632,7 +5633,7 @@
5632
5633
  }
5633
5634
  });
5634
5635
 
5635
- var QCard = vue.defineComponent({
5636
+ var QCard = createComponent({
5636
5637
  name: 'QCard',
5637
5638
 
5638
5639
  props: {
@@ -5664,7 +5665,7 @@
5664
5665
  }
5665
5666
  });
5666
5667
 
5667
- var QCardSection = vue.defineComponent({
5668
+ var QCardSection = createComponent({
5668
5669
  name: 'QCardSection',
5669
5670
 
5670
5671
  props: {
@@ -5686,7 +5687,7 @@
5686
5687
  }
5687
5688
  });
5688
5689
 
5689
- var QCardActions = vue.defineComponent({
5690
+ var QCardActions = createComponent({
5690
5691
  name: 'QCardActions',
5691
5692
 
5692
5693
  props: {
@@ -5778,7 +5779,7 @@
5778
5779
  return data
5779
5780
  }
5780
5781
 
5781
- var TouchSwipe = {
5782
+ var TouchSwipe = createDirective({
5782
5783
  name: 'touch-swipe',
5783
5784
 
5784
5785
  beforeMount (el, { value, arg, modifiers }) {
@@ -6018,7 +6019,8 @@
6018
6019
  delete el.__qtouchswipe;
6019
6020
  }
6020
6021
  }
6021
- };
6022
+ }
6023
+ );
6022
6024
 
6023
6025
  function useCache () {
6024
6026
  const cache = new Map();
@@ -6064,6 +6066,10 @@
6064
6066
 
6065
6067
  transitionPrev: String,
6066
6068
  transitionNext: String,
6069
+ transitionDuration: {
6070
+ type: [ String, Number ],
6071
+ default: 300
6072
+ },
6067
6073
 
6068
6074
  keepAlive: Boolean,
6069
6075
  keepAliveInclude: [ String, Array, RegExp ],
@@ -6109,6 +6115,10 @@
6109
6115
  props.transitionNext || `slide-${ props.vertical === true ? 'up' : 'left' }`
6110
6116
  );
6111
6117
 
6118
+ const transitionStyle = vue.computed(
6119
+ () => `--q-transition-duration: ${ props.transitionDuration }ms`
6120
+ );
6121
+
6112
6122
  const contentKey = vue.computed(() => (
6113
6123
  typeof props.modelValue === 'string' || typeof props.modelValue === 'number'
6114
6124
  ? props.modelValue
@@ -6228,7 +6238,7 @@
6228
6238
  }
6229
6239
 
6230
6240
  function getPanelContentChild () {
6231
- const panel = isValidPanelName(props.modelValue)
6241
+ const panel = isValidPanelName(props.modelValue) === true
6232
6242
  && updatePanelIndex()
6233
6243
  && panels[ panelIndex.value ];
6234
6244
 
@@ -6239,7 +6249,7 @@
6239
6249
  needsUniqueKeepAliveWrapper.value === true
6240
6250
  ? getCacheWithFn(contentKey.value, () => ({ ...PanelWrapper$1, name: contentKey.value }))
6241
6251
  : PanelWrapper$1,
6242
- { key: contentKey.value },
6252
+ { key: contentKey.value, style: transitionStyle.value },
6243
6253
  () => panel
6244
6254
  )
6245
6255
  ])
@@ -6247,6 +6257,7 @@
6247
6257
  : [
6248
6258
  vue.h('div', {
6249
6259
  class: 'q-panel scroll',
6260
+ style: transitionStyle.value,
6250
6261
  key: contentKey.value,
6251
6262
  role: 'tabpanel'
6252
6263
  }, [ panel ])
@@ -6259,11 +6270,7 @@
6259
6270
  }
6260
6271
 
6261
6272
  return props.animated === true
6262
- ? [
6263
- vue.h(vue.Transition, {
6264
- name: panelTransition.value
6265
- }, getPanelContentChild)
6266
- ]
6273
+ ? [ vue.h(vue.Transition, { name: panelTransition.value }, getPanelContentChild) ]
6267
6274
  : getPanelContentChild()
6268
6275
  }
6269
6276
 
@@ -6273,7 +6280,7 @@
6273
6280
  ).filter(
6274
6281
  panel => panel.props !== null
6275
6282
  && panel.props.slot === void 0
6276
- && isValidPanelName(panel.props.name)
6283
+ && isValidPanelName(panel.props.name) === true
6277
6284
  );
6278
6285
 
6279
6286
  return panels.length
@@ -6537,7 +6544,7 @@
6537
6544
  const navigationPositionOptions = [ 'top', 'right', 'bottom', 'left' ];
6538
6545
  const controlTypeOptions = [ 'regular', 'flat', 'outline', 'push', 'unelevated' ];
6539
6546
 
6540
- var QCarousel = vue.defineComponent({
6547
+ var QCarousel = createComponent({
6541
6548
  name: 'QCarousel',
6542
6549
 
6543
6550
  props: {
@@ -6661,7 +6668,14 @@
6661
6668
  });
6662
6669
 
6663
6670
  function startTimer () {
6664
- timer = setTimeout(nextPanel, isNumber(props.autoplay) ? props.autoplay : 5000);
6671
+ const duration = isNumber(props.autoplay) === true
6672
+ ? props.autoplay
6673
+ : 5000;
6674
+
6675
+ timer = setTimeout(
6676
+ duration >= 0 ? nextPanel : previousPanel,
6677
+ Math.abs(duration)
6678
+ );
6665
6679
  }
6666
6680
 
6667
6681
  vue.onMounted(() => {
@@ -6791,7 +6805,7 @@
6791
6805
  }
6792
6806
  });
6793
6807
 
6794
- var QCarouselSlide = vue.defineComponent({
6808
+ var QCarouselSlide = createComponent({
6795
6809
  name: 'QCarouselSlide',
6796
6810
 
6797
6811
  props: {
@@ -6813,7 +6827,7 @@
6813
6827
  }
6814
6828
  });
6815
6829
 
6816
- var QCarouselControl = vue.defineComponent({
6830
+ var QCarouselControl = createComponent({
6817
6831
  name: 'QCarouselControl',
6818
6832
 
6819
6833
  props: {
@@ -6846,7 +6860,7 @@
6846
6860
  }
6847
6861
  });
6848
6862
 
6849
- var QChatMessage = vue.defineComponent({
6863
+ var QChatMessage = createComponent({
6850
6864
  name: 'QChatMessage',
6851
6865
 
6852
6866
  props: {
@@ -7285,7 +7299,7 @@
7285
7299
  ])
7286
7300
  ]);
7287
7301
 
7288
- var QCheckbox = vue.defineComponent({
7302
+ var QCheckbox = createComponent({
7289
7303
  name: 'QCheckbox',
7290
7304
 
7291
7305
  props: useCheckboxProps,
@@ -7304,7 +7318,7 @@
7304
7318
  xl: 24
7305
7319
  };
7306
7320
 
7307
- var QChip = vue.defineComponent({
7321
+ var QChip = createComponent({
7308
7322
  name: 'QChip',
7309
7323
 
7310
7324
  props: {
@@ -7525,7 +7539,7 @@
7525
7539
  circumference = diameter * Math.PI,
7526
7540
  strokeDashArray = Math.round(circumference * 1000) / 1000;
7527
7541
 
7528
- var QCircularProgress = vue.defineComponent({
7542
+ var QCircularProgress = createComponent({
7529
7543
  name: 'QCircularProgress',
7530
7544
 
7531
7545
  props: {
@@ -7760,7 +7774,7 @@
7760
7774
 
7761
7775
  let uid$4 = 0;
7762
7776
 
7763
- var TouchPan = {
7777
+ var TouchPan = createDirective({
7764
7778
  name: 'touch-pan',
7765
7779
 
7766
7780
  beforeMount (el, { value, modifiers }) {
@@ -8062,7 +8076,8 @@
8062
8076
  delete el.__qtouchpan;
8063
8077
  }
8064
8078
  }
8065
- };
8079
+ }
8080
+ );
8066
8081
 
8067
8082
  // PGDOWN, LEFT, DOWN, PGUP, RIGHT, UP
8068
8083
  const keyCodes$2 = [ 34, 37, 40, 33, 39, 38 ];
@@ -8117,7 +8132,7 @@
8117
8132
 
8118
8133
  label: Boolean,
8119
8134
  labelAlways: Boolean,
8120
- markers: Boolean,
8135
+ markers: [ Boolean, Number ],
8121
8136
  snap: Boolean,
8122
8137
 
8123
8138
  vertical: Boolean,
@@ -8170,9 +8185,13 @@
8170
8185
  const step = vue.computed(() => (props.step === 0 ? 1 : props.step));
8171
8186
  const minMaxDiff = vue.computed(() => props.max - props.min);
8172
8187
 
8188
+ const markerStep = vue.computed(() => (
8189
+ isNumber(props.markers) === true ? props.markers : step.value)
8190
+ );
8191
+
8173
8192
  const markerStyle = vue.computed(() => {
8174
8193
  if (minMaxDiff.value !== 0) {
8175
- const size = 100 * step.value / minMaxDiff.value;
8194
+ const size = 100 * markerStep.value / minMaxDiff.value;
8176
8195
 
8177
8196
  return {
8178
8197
  backgroundSize: props.vertical === true
@@ -8360,7 +8379,7 @@
8360
8379
  }
8361
8380
  }
8362
8381
 
8363
- var QSlider = vue.defineComponent({
8382
+ var QSlider = createComponent({
8364
8383
  name: 'QSlider',
8365
8384
 
8366
8385
  props: {
@@ -8552,7 +8571,7 @@
8552
8571
  })
8553
8572
  ];
8554
8573
 
8555
- props.markers === true && track.push(
8574
+ props.markers !== false && track.push(
8556
8575
  vue.h('div', {
8557
8576
  class: `q-slider__track-markers q-slider__track-markers${ state.axis.value } absolute-full fit`,
8558
8577
  style: state.markerStyle.value
@@ -8604,7 +8623,7 @@
8604
8623
  url: 'about:blank'
8605
8624
  };
8606
8625
 
8607
- var QResizeObserver = vue.defineComponent({
8626
+ var QResizeObserver = createComponent({
8608
8627
  name: 'QResizeObserver',
8609
8628
 
8610
8629
  props: {
@@ -8764,7 +8783,7 @@
8764
8783
  const alignValues$1 = [ 'left', 'center', 'right', 'justify' ];
8765
8784
  const emptyFn = () => {};
8766
8785
 
8767
- var QTabs = vue.defineComponent({
8786
+ var QTabs = createComponent({
8768
8787
  name: 'QTabs',
8769
8788
 
8770
8789
  props: {
@@ -9328,6 +9347,12 @@
9328
9347
  const rootRef = vue.ref(null);
9329
9348
  const tabIndicatorRef = vue.ref(null);
9330
9349
 
9350
+ const ripple = vue.computed(() => (
9351
+ props.disable === true
9352
+ ? false
9353
+ : props.ripple
9354
+ ));
9355
+
9331
9356
  const isActive = vue.computed(() => $tabs.currentModel.value === props.name);
9332
9357
 
9333
9358
  const classes = vue.computed(() =>
@@ -9484,20 +9509,16 @@
9484
9509
  ...customData
9485
9510
  };
9486
9511
 
9487
- return hDir(
9488
- tag,
9489
- data,
9490
- getContent(),
9491
- 'main',
9492
- props.ripple !== false && props.disable === false,
9493
- () => [ [ Ripple, props.ripple ] ]
9512
+ return vue.withDirectives(
9513
+ vue.h(tag, data, getContent()),
9514
+ [ [ Ripple, ripple.value ] ]
9494
9515
  )
9495
9516
  }
9496
9517
 
9497
9518
  return { renderTab, $tabs }
9498
9519
  }
9499
9520
 
9500
- var QTab = vue.defineComponent({
9521
+ var QTab = createComponent({
9501
9522
  name: 'QTab',
9502
9523
 
9503
9524
  props: useTabProps,
@@ -9510,7 +9531,7 @@
9510
9531
  }
9511
9532
  });
9512
9533
 
9513
- var QTabPanels = vue.defineComponent({
9534
+ var QTabPanels = createComponent({
9514
9535
  name: 'QTabPanels',
9515
9536
 
9516
9537
  props: {
@@ -9546,7 +9567,7 @@
9546
9567
  }
9547
9568
  });
9548
9569
 
9549
- var QTabPanel = vue.defineComponent({
9570
+ var QTabPanel = createComponent({
9550
9571
  name: 'QTabPanel',
9551
9572
 
9552
9573
  props: usePanelChildProps,
@@ -9899,7 +9920,7 @@
9899
9920
 
9900
9921
  const thumbPath = 'M5 5 h10 v10 h-10 v-10 z';
9901
9922
 
9902
- var QColor = vue.defineComponent({
9923
+ var QColor = createComponent({
9903
9924
  name: 'QColor',
9904
9925
 
9905
9926
  props: {
@@ -9924,6 +9945,7 @@
9924
9945
  palette: Array,
9925
9946
 
9926
9947
  noHeader: Boolean,
9948
+ noHeaderTabs: Boolean,
9927
9949
  noFooter: Boolean,
9928
9950
 
9929
9951
  square: Boolean,
@@ -10009,7 +10031,7 @@
10009
10031
  ? true
10010
10032
  : luminosity(model.value) > 0.4;
10011
10033
 
10012
- return 'q-color-picker__header-content absolute-full'
10034
+ return 'q-color-picker__header-content'
10013
10035
  + ` q-color-picker__header-content--${ light ? 'light' : 'dark' }`
10014
10036
  });
10015
10037
 
@@ -10360,6 +10382,63 @@
10360
10382
  }
10361
10383
 
10362
10384
  function getHeader () {
10385
+ const child = [];
10386
+
10387
+ props.noHeaderTabs !== true && child.push(
10388
+ vue.h(QTabs, {
10389
+ class: 'q-color-picker__header-tabs',
10390
+ modelValue: topView.value,
10391
+ dense: true,
10392
+ align: 'justify',
10393
+ ...getCache('topVTab', {
10394
+ 'onUpdate:modelValue': val => { topView.value = val; }
10395
+ })
10396
+ }, () => [
10397
+ vue.h(QTab, {
10398
+ label: 'HEX' + (hasAlpha.value === true ? 'A' : ''),
10399
+ name: 'hex',
10400
+ ripple: false
10401
+ }),
10402
+
10403
+ vue.h(QTab, {
10404
+ label: 'RGB' + (hasAlpha.value === true ? 'A' : ''),
10405
+ name: 'rgb',
10406
+ ripple: false
10407
+ })
10408
+ ])
10409
+ );
10410
+
10411
+ child.push(
10412
+ vue.h('div', {
10413
+ class: 'q-color-picker__header-banner row flex-center no-wrap'
10414
+ }, [
10415
+ vue.h('input', {
10416
+ class: 'fit',
10417
+ value: model.value[ topView.value ],
10418
+ ...(editable.value !== true
10419
+ ? { readonly: true }
10420
+ : {}
10421
+ ),
10422
+ ...getCache('topIn', {
10423
+ onInput: evt => {
10424
+ updateErrorIcon(onEditorChange(evt) === true);
10425
+ },
10426
+ onChange: stop,
10427
+ onBlur: evt => {
10428
+ onEditorChange(evt, true) === true && proxy.$forceUpdate();
10429
+ updateErrorIcon(false);
10430
+ }
10431
+ })
10432
+ }),
10433
+
10434
+ vue.h(QIcon, {
10435
+ ref: errorIconRef,
10436
+ class: 'q-color-picker__error-icon absolute no-pointer-events',
10437
+ name: $q.iconSet.type.negative
10438
+ })
10439
+ ])
10440
+ );
10441
+
10363
10442
  return vue.h('div', {
10364
10443
  class: 'q-color-picker__header relative-position overflow-hidden'
10365
10444
  }, [
@@ -10368,57 +10447,7 @@
10368
10447
  vue.h('div', {
10369
10448
  class: headerClass.value,
10370
10449
  style: currentBgColor.value
10371
- }, [
10372
- vue.h(QTabs, {
10373
- modelValue: topView.value,
10374
- dense: true,
10375
- align: 'justify',
10376
- ...getCache('topVTab', {
10377
- 'onUpdate:modelValue': val => { topView.value = val; }
10378
- })
10379
- }, () => [
10380
- vue.h(QTab, {
10381
- label: 'HEX' + (hasAlpha.value === true ? 'A' : ''),
10382
- name: 'hex',
10383
- ripple: false
10384
- }),
10385
-
10386
- vue.h(QTab, {
10387
- label: 'RGB' + (hasAlpha.value === true ? 'A' : ''),
10388
- name: 'rgb',
10389
- ripple: false
10390
- })
10391
- ]),
10392
-
10393
- vue.h('div', {
10394
- class: 'q-color-picker__header-banner row flex-center no-wrap'
10395
- }, [
10396
- vue.h('input', {
10397
- class: 'fit',
10398
- value: model.value[ topView.value ],
10399
- ...(editable.value !== true
10400
- ? { readonly: true }
10401
- : {}
10402
- ),
10403
- ...getCache('topIn', {
10404
- onInput: evt => {
10405
- updateErrorIcon(onEditorChange(evt) === true);
10406
- },
10407
- onChange: stop,
10408
- onBlur: evt => {
10409
- onEditorChange(evt, true) === true && proxy.$forceUpdate();
10410
- updateErrorIcon(false);
10411
- }
10412
- })
10413
- }),
10414
-
10415
- vue.h(QIcon, {
10416
- ref: errorIconRef,
10417
- class: 'q-color-picker__error-icon absolute no-pointer-events',
10418
- name: $q.iconSet.type.negative
10419
- })
10420
- ])
10421
- ])
10450
+ }, child)
10422
10451
  ])
10423
10452
  }
10424
10453
 
@@ -10654,19 +10683,23 @@
10654
10683
  }
10655
10684
 
10656
10685
  function getPaletteTab () {
10686
+ const fn = color => vue.h('div', {
10687
+ class: 'q-color-picker__cube col-auto',
10688
+ style: { backgroundColor: color },
10689
+ ...(
10690
+ editable.value === true
10691
+ ? getCache('palette#' + color, {
10692
+ onClick: () => { onPalettePick(color); }
10693
+ })
10694
+ : {}
10695
+ )
10696
+ });
10697
+
10657
10698
  return [
10658
10699
  vue.h('div', {
10659
10700
  class: 'row items-center q-color-picker__palette-rows'
10660
10701
  + (editable.value === true ? ' q-color-picker__palette-rows--editable' : '')
10661
- }, computedPalette.value.map(color => vue.h('div', {
10662
- class: 'q-color-picker__cube col-auto',
10663
- style: { backgroundColor: color },
10664
- ...(editable.value === true ? getCache('palette#' + color, {
10665
- onClick: () => {
10666
- onPalettePick(color);
10667
- }
10668
- }) : {})
10669
- })))
10702
+ }, computedPalette.value.map(fn))
10670
10703
  ]
10671
10704
  }
10672
10705
 
@@ -11215,6 +11248,96 @@
11215
11248
  )
11216
11249
  }
11217
11250
 
11251
+ function formatTimezone (offset, delimeter = '') {
11252
+ const
11253
+ sign = offset > 0 ? '-' : '+',
11254
+ absOffset = Math.abs(offset),
11255
+ hours = Math.floor(absOffset / 60),
11256
+ minutes = absOffset % 60;
11257
+
11258
+ return sign + pad(hours) + delimeter + pad(minutes)
11259
+ }
11260
+
11261
+ function applyYearMonthDayChange (date, mod, sign) {
11262
+ let
11263
+ year = date.getFullYear(),
11264
+ month = date.getMonth(),
11265
+ day = date.getDate();
11266
+
11267
+ if (mod.years !== void 0) {
11268
+ year += sign * mod.years;
11269
+ }
11270
+
11271
+ if (mod.months !== void 0) {
11272
+ month += sign * mod.months;
11273
+ }
11274
+
11275
+ if (mod.days !== void 0) {
11276
+ day += sign * mod.days;
11277
+ }
11278
+
11279
+ date.setDate(1);
11280
+ date.setMonth(2);
11281
+
11282
+ date.setFullYear(year);
11283
+ date.setMonth(month);
11284
+ date.setDate(day);
11285
+
11286
+ return date
11287
+ }
11288
+
11289
+ function getChange (date, mod, sign) {
11290
+ const
11291
+ d = new Date(date),
11292
+ t = mod.years !== void 0 || mod.months !== void 0 || mod.days !== void 0
11293
+ ? applyYearMonthDayChange(d, mod, sign)
11294
+ : d;
11295
+
11296
+ Object.keys(mod).forEach(key => {
11297
+ if (key !== 'years' && key !== 'months' && key !== 'days') {
11298
+ const op = capitalize(key);
11299
+ t[ `set${ op }` ](t[ `get${ op }` ]() + sign * mod[ key ]);
11300
+ }
11301
+ });
11302
+
11303
+ return t
11304
+ }
11305
+
11306
+ function applyYearMonthDay (date, mod, middle) {
11307
+ const
11308
+ year = mod.year !== void 0 ? mod.year : date[ `get${ middle }FullYear` ](),
11309
+ month = mod.month !== void 0 ? mod.month - 1 : date[ `get${ middle }Month` ](),
11310
+ maxDay = (new Date(year, month + 1, 0)).getDate(),
11311
+ day = Math.min(maxDay, mod.date !== void 0 ? mod.date : date[ `get${ middle }Date` ]());
11312
+
11313
+ date[ `set${ middle }Date` ](1);
11314
+ date[ `set${ middle }Month` ](2);
11315
+
11316
+ date[ `set${ middle }FullYear` ](year);
11317
+ date[ `set${ middle }Month` ](month);
11318
+ date[ `set${ middle }Date` ](day);
11319
+
11320
+ return date
11321
+ }
11322
+
11323
+ function adjustDate (date, mod, utc) {
11324
+ const
11325
+ middle = utc === true ? 'UTC' : '',
11326
+ d = new Date(date),
11327
+ t = mod.year !== void 0 || mod.month !== void 0 || mod.date !== void 0
11328
+ ? applyYearMonthDay(d, mod, middle)
11329
+ : d;
11330
+
11331
+ Object.keys(mod).forEach(key => {
11332
+ if (key !== 'year' && key !== 'month' && key !== 'date') {
11333
+ const op = key.charAt(0).toUpperCase() + key.slice(1);
11334
+ t[ `set${ middle }${ op }` ](mod[ key ]);
11335
+ }
11336
+ });
11337
+
11338
+ return t
11339
+ }
11340
+
11218
11341
  function extractDate (str, mask, dateLocale) {
11219
11342
  const d = __splitDate(str, mask, dateLocale);
11220
11343
 
@@ -11232,7 +11355,7 @@
11232
11355
 
11233
11356
  return d.timezoneOffset === null || d.timezoneOffset === tzOffset
11234
11357
  ? date
11235
- : getChange(date, { minutes: d.timezoneOffset - tzOffset }, true)
11358
+ : getChange(date, { minutes: d.timezoneOffset - tzOffset }, 1)
11236
11359
  }
11237
11360
 
11238
11361
  function __splitDate (str, mask, dateLocale, calendar, defaultModel) {
@@ -11373,43 +11496,6 @@
11373
11496
  return date
11374
11497
  }
11375
11498
 
11376
- function formatTimezone (offset, delimeter = '') {
11377
- const
11378
- sign = offset > 0 ? '-' : '+',
11379
- absOffset = Math.abs(offset),
11380
- hours = Math.floor(absOffset / 60),
11381
- minutes = absOffset % 60;
11382
-
11383
- return sign + pad(hours) + delimeter + pad(minutes)
11384
- }
11385
-
11386
- function setMonth (date, newMonth /* 1-based */) {
11387
- const
11388
- test = new Date(date.getFullYear(), newMonth, 0, 0, 0, 0, 0),
11389
- days = test.getDate();
11390
-
11391
- date.setMonth(newMonth - 1, Math.min(days, date.getDate()));
11392
- }
11393
-
11394
- function getChange (date, mod, add) {
11395
- const
11396
- t = new Date(date),
11397
- sign = (add ? 1 : -1);
11398
-
11399
- Object.keys(mod).forEach(key => {
11400
- if (key === 'months') {
11401
- setMonth(t, t.getMonth() + 1 + sign * mod.months);
11402
- return
11403
- }
11404
-
11405
- const op = key === 'years'
11406
- ? 'FullYear'
11407
- : capitalize(key === 'days' ? 'date' : key);
11408
- t[ `set${ op }` ](t[ `get${ op }` ]() + sign * mod[ key ]);
11409
- });
11410
- return t
11411
- }
11412
-
11413
11499
  function isValid (date) {
11414
11500
  return typeof date === 'number'
11415
11501
  ? true
@@ -11467,30 +11553,10 @@
11467
11553
  }
11468
11554
 
11469
11555
  function addToDate (date, mod) {
11470
- return getChange(date, mod, true)
11556
+ return getChange(date, mod, 1)
11471
11557
  }
11472
11558
  function subtractFromDate (date, mod) {
11473
- return getChange(date, mod, false)
11474
- }
11475
-
11476
- function adjustDate (date, mod, utc) {
11477
- const
11478
- t = new Date(date),
11479
- prefix = `set${ utc === true ? 'UTC' : '' }`;
11480
-
11481
- Object.keys(mod).forEach(key => {
11482
- if (key === 'month') {
11483
- setMonth(t, mod.month);
11484
- return
11485
- }
11486
-
11487
- const op = key === 'year'
11488
- ? 'FullYear'
11489
- : key.charAt(0).toUpperCase() + key.slice(1);
11490
- t[ `${ prefix }${ op }` ](mod[ key ]);
11491
- });
11492
-
11493
- return t
11559
+ return getChange(date, mod, -1)
11494
11560
  }
11495
11561
 
11496
11562
  function startOfDate (date, unit, utc) {
@@ -11959,7 +12025,7 @@
11959
12025
  return date.year + '/' + pad(date.month)
11960
12026
  }
11961
12027
 
11962
- var QDate = vue.defineComponent({
12028
+ var QDate = createComponent({
11963
12029
  name: 'QDate',
11964
12030
 
11965
12031
  props: {
@@ -12737,8 +12803,9 @@
12737
12803
  return getDefaultViewModel()
12738
12804
  }
12739
12805
 
12806
+ const target = model[ model.length - 1 ];
12740
12807
  const decoded = decodeString(
12741
- model[ 0 ].from !== void 0 ? model[ 0 ].from : model[ 0 ],
12808
+ target.from !== void 0 ? target.from : target,
12742
12809
  mask,
12743
12810
  locale
12744
12811
  );
@@ -13646,7 +13713,7 @@
13646
13713
  left: [ 'slide-right', 'slide-left' ]
13647
13714
  };
13648
13715
 
13649
- var QDialog = vue.defineComponent({
13716
+ var QDialog = createComponent({
13650
13717
  name: 'QDialog',
13651
13718
 
13652
13719
  inheritAttrs: false,
@@ -13749,6 +13816,10 @@
13749
13816
  : transitionShow.value
13750
13817
  ));
13751
13818
 
13819
+ const transitionStyle = vue.computed(
13820
+ () => `--q-transition-duration: ${ props.transitionDuration }ms`
13821
+ );
13822
+
13752
13823
  const useBackdrop = vue.computed(() => showing.value === true && props.seamless !== true);
13753
13824
 
13754
13825
  const onEvents = vue.computed(() => (
@@ -13989,6 +14060,7 @@
13989
14060
  useBackdrop.value === true
13990
14061
  ? vue.h('div', {
13991
14062
  class: 'q-dialog__backdrop fixed-full',
14063
+ style: transitionStyle.value,
13992
14064
  'aria-hidden': 'true',
13993
14065
  onMousedown: onBackdropClick
13994
14066
  })
@@ -14003,6 +14075,7 @@
14003
14075
  ? vue.h('div', {
14004
14076
  ref: innerRef,
14005
14077
  class: classes.value,
14078
+ style: transitionStyle.value,
14006
14079
  tabindex: -1,
14007
14080
  ...onEvents.value
14008
14081
  }, hSlot(slots.default))
@@ -14018,7 +14091,7 @@
14018
14091
 
14019
14092
  const duration = 150;
14020
14093
 
14021
- var QDrawer = vue.defineComponent({
14094
+ var QDrawer = createComponent({
14022
14095
  name: 'QDrawer',
14023
14096
 
14024
14097
  inheritAttrs: false,
@@ -14464,6 +14537,9 @@
14464
14537
  flagMiniAnimate.value = true;
14465
14538
  timerMini = setTimeout(() => {
14466
14539
  flagMiniAnimate.value = false;
14540
+ if (vm && vm.proxy && vm.proxy.$el) {
14541
+ vm.proxy.$el.classList.remove('q-drawer--mini-animate');
14542
+ }
14467
14543
  }, 150);
14468
14544
  }
14469
14545
 
@@ -15058,7 +15134,7 @@
15058
15134
  }
15059
15135
  }
15060
15136
 
15061
- var QTooltip = vue.defineComponent({
15137
+ var QTooltip = createComponent({
15062
15138
  name: 'QTooltip',
15063
15139
 
15064
15140
  inheritAttrs: false,
@@ -15352,7 +15428,7 @@
15352
15428
  }
15353
15429
  });
15354
15430
 
15355
- var QItem = vue.defineComponent({
15431
+ var QItem = createComponent({
15356
15432
  name: 'QItem',
15357
15433
 
15358
15434
  props: {
@@ -15500,7 +15576,7 @@
15500
15576
  }
15501
15577
  });
15502
15578
 
15503
- var QItemSection = vue.defineComponent({
15579
+ var QItemSection = createComponent({
15504
15580
  name: 'QItemSection',
15505
15581
 
15506
15582
  props: {
@@ -15916,7 +15992,7 @@
15916
15992
  return target
15917
15993
  }
15918
15994
 
15919
- var QEditor = vue.defineComponent({
15995
+ var QEditor = createComponent({
15920
15996
  name: 'QEditor',
15921
15997
 
15922
15998
  props: {
@@ -16440,7 +16516,7 @@
16440
16516
  }
16441
16517
  });
16442
16518
 
16443
- var QItemLabel = vue.defineComponent({
16519
+ var QItemLabel = createComponent({
16444
16520
  name: 'QItemLabel',
16445
16521
 
16446
16522
  props: {
@@ -16479,7 +16555,7 @@
16479
16555
  }
16480
16556
  });
16481
16557
 
16482
- var QSlideTransition = vue.defineComponent({
16558
+ var QSlideTransition = createComponent({
16483
16559
  name: 'QSlideTransition',
16484
16560
 
16485
16561
  props: {
@@ -16605,7 +16681,7 @@
16605
16681
  xl: 24
16606
16682
  };
16607
16683
 
16608
- var QSeparator = vue.defineComponent({
16684
+ var QSeparator = createComponent({
16609
16685
  name: 'QSeparator',
16610
16686
 
16611
16687
  props: {
@@ -16748,7 +16824,7 @@
16748
16824
  const itemGroups = vue.shallowReactive({});
16749
16825
  const LINK_PROPS = Object.keys(useRouterLinkProps);
16750
16826
 
16751
- var QExpansionItem = vue.defineComponent({
16827
+ var QExpansionItem = createComponent({
16752
16828
  name: 'QExpansionItem',
16753
16829
 
16754
16830
  props: {
@@ -17158,7 +17234,7 @@
17158
17234
  const directions = [ 'up', 'right', 'down', 'left' ];
17159
17235
  const alignValues = [ 'left', 'center', 'right' ];
17160
17236
 
17161
- var QFab = vue.defineComponent({
17237
+ var QFab = createComponent({
17162
17238
  name: 'QFab',
17163
17239
 
17164
17240
  props: {
@@ -17289,7 +17365,7 @@
17289
17365
 
17290
17366
  const anchorValues = Object.keys(anchorMap);
17291
17367
 
17292
- var QFabAction = vue.defineComponent({
17368
+ var QFabAction = createComponent({
17293
17369
  name: 'QFabAction',
17294
17370
 
17295
17371
  props: {
@@ -18182,7 +18258,7 @@
18182
18258
  }
18183
18259
  }
18184
18260
 
18185
- var QField = vue.defineComponent({
18261
+ var QField = createComponent({
18186
18262
  name: 'QField',
18187
18263
 
18188
18264
  inheritAttrs: false,
@@ -18437,7 +18513,7 @@
18437
18513
  : vue.computed(getFormDomProps)
18438
18514
  }
18439
18515
 
18440
- var QFile = vue.defineComponent({
18516
+ var QFile = createComponent({
18441
18517
  name: 'QFile',
18442
18518
 
18443
18519
  inheritAttrs: false,
@@ -18699,7 +18775,7 @@
18699
18775
  }
18700
18776
  });
18701
18777
 
18702
- var QFooter = vue.defineComponent({
18778
+ var QFooter = createComponent({
18703
18779
  name: 'QFooter',
18704
18780
 
18705
18781
  props: {
@@ -18891,7 +18967,7 @@
18891
18967
  }
18892
18968
  });
18893
18969
 
18894
- var QForm = vue.defineComponent({
18970
+ var QForm = createComponent({
18895
18971
  name: 'QForm',
18896
18972
 
18897
18973
  props: {
@@ -19107,7 +19183,7 @@
19107
19183
  }
19108
19184
  };
19109
19185
 
19110
- var QHeader = vue.defineComponent({
19186
+ var QHeader = createComponent({
19111
19187
  name: 'QHeader',
19112
19188
 
19113
19189
  props: {
@@ -19299,7 +19375,7 @@
19299
19375
 
19300
19376
  const defaultRatio = 16 / 9;
19301
19377
 
19302
- var QImg = vue.defineComponent({
19378
+ var QImg = createComponent({
19303
19379
  name: 'QImg',
19304
19380
 
19305
19381
  props: {
@@ -19569,7 +19645,7 @@
19569
19645
  }
19570
19646
  });
19571
19647
 
19572
- var QInfiniteScroll = vue.defineComponent({
19648
+ var QInfiniteScroll = createComponent({
19573
19649
  name: 'QInfiniteScroll',
19574
19650
 
19575
19651
  props: {
@@ -19777,7 +19853,7 @@
19777
19853
  }
19778
19854
  });
19779
19855
 
19780
- var QInnerLoading = vue.defineComponent({
19856
+ var QInnerLoading = createComponent({
19781
19857
  name: 'QInnerLoading',
19782
19858
 
19783
19859
  props: {
@@ -19790,7 +19866,11 @@
19790
19866
  size: {
19791
19867
  type: [ String, Number ],
19792
19868
  default: 42
19793
- }
19869
+ },
19870
+
19871
+ label: String,
19872
+ labelClass: String,
19873
+ labelStyle: [ String, Array, Object ]
19794
19874
  },
19795
19875
 
19796
19876
  setup (props, { slots }) {
@@ -19804,6 +19884,31 @@
19804
19884
  + (isDark.value === true ? ' q-inner-loading--dark' : '')
19805
19885
  );
19806
19886
 
19887
+ const labelClass = vue.computed(() =>
19888
+ 'q-inner-loading__label'
19889
+ + (props.labelClass !== void 0 ? ` ${ props.labelClass}` : '')
19890
+ );
19891
+
19892
+ function getInner () {
19893
+ const child = [
19894
+ vue.h(QSpinner, {
19895
+ size: props.size,
19896
+ color: props.color
19897
+ })
19898
+ ];
19899
+
19900
+ if (props.label !== void 0) {
19901
+ child.push(
19902
+ vue.h('div', {
19903
+ class: labelClass.value,
19904
+ style: props.labelStyle
19905
+ }, [ props.label ])
19906
+ );
19907
+ }
19908
+
19909
+ return child
19910
+ }
19911
+
19807
19912
  function getContent () {
19808
19913
  return props.showing === true
19809
19914
  ? vue.h(
@@ -19811,12 +19916,7 @@
19811
19916
  { class: classes.value, style: transitionStyle.value },
19812
19917
  slots.default !== void 0
19813
19918
  ? slots.default()
19814
- : [
19815
- vue.h(QSpinner, {
19816
- size: props.size,
19817
- color: props.color
19818
- })
19819
- ]
19919
+ : getInner()
19820
19920
  )
19821
19921
  : null
19822
19922
  }
@@ -20395,7 +20495,7 @@
20395
20495
  }
20396
20496
  }
20397
20497
 
20398
- var QInput = vue.defineComponent({
20498
+ var QInput = createComponent({
20399
20499
  name: 'QInput',
20400
20500
 
20401
20501
  inheritAttrs: false,
@@ -20844,7 +20944,7 @@
20844
20944
  }
20845
20945
  }
20846
20946
 
20847
- var Intersection = {
20947
+ var Intersection = createDirective({
20848
20948
  name: 'intersection',
20849
20949
 
20850
20950
  mounted (el, { modifiers, value }) {
@@ -20863,9 +20963,10 @@
20863
20963
  },
20864
20964
 
20865
20965
  beforeUnmount: destroy$1
20866
- };
20966
+ }
20967
+ );
20867
20968
 
20868
- var QIntersection = vue.defineComponent({
20969
+ var QIntersection = createComponent({
20869
20970
  name: 'QIntersection',
20870
20971
 
20871
20972
  props: {
@@ -20955,7 +21056,7 @@
20955
21056
  }
20956
21057
  });
20957
21058
 
20958
- var QList = vue.defineComponent({
21059
+ var QList = createComponent({
20959
21060
  name: 'QList',
20960
21061
 
20961
21062
  props: {
@@ -20988,7 +21089,7 @@
20988
21089
  const keyCodes$1 = [ 34, 37, 40, 33, 39, 38 ];
20989
21090
  const commonPropsName = Object.keys(useCircularCommonProps);
20990
21091
 
20991
- var QKnob = vue.defineComponent({
21092
+ var QKnob = createComponent({
20992
21093
  name: 'QKnob',
20993
21094
 
20994
21095
  props: {
@@ -21255,7 +21356,7 @@
21255
21356
  const { passive: passive$2 } = listenOpts;
21256
21357
  const axisValues = [ 'both', 'horizontal', 'vertical' ];
21257
21358
 
21258
- var QScrollObserver = vue.defineComponent({
21359
+ var QScrollObserver = createComponent({
21259
21360
  name: 'QScrollObserver',
21260
21361
 
21261
21362
  props: {
@@ -21383,7 +21484,7 @@
21383
21484
  }
21384
21485
  });
21385
21486
 
21386
- var QLayout = vue.defineComponent({
21487
+ var QLayout = createComponent({
21387
21488
  name: 'QLayout',
21388
21489
 
21389
21490
  props: {
@@ -21583,7 +21684,7 @@
21583
21684
 
21584
21685
  const separatorValues = [ 'horizontal', 'vertical', 'cell', 'none' ];
21585
21686
 
21586
- var QMarkupTable = vue.defineComponent({
21687
+ var QMarkupTable = createComponent({
21587
21688
  name: 'QMarkupTable',
21588
21689
 
21589
21690
  props: {
@@ -21625,7 +21726,7 @@
21625
21726
  }
21626
21727
  });
21627
21728
 
21628
- var QNoSsr = vue.defineComponent({
21729
+ var QNoSsr = createComponent({
21629
21730
  name: 'QNoSsr',
21630
21731
 
21631
21732
  props: {
@@ -21681,7 +21782,7 @@
21681
21782
  })
21682
21783
  ]);
21683
21784
 
21684
- var QRadio = vue.defineComponent({
21785
+ var QRadio = createComponent({
21685
21786
  name: 'QRadio',
21686
21787
 
21687
21788
  props: {
@@ -21835,7 +21936,7 @@
21835
21936
  }
21836
21937
  });
21837
21938
 
21838
- var QToggle = vue.defineComponent({
21939
+ var QToggle = createComponent({
21839
21940
  name: 'QToggle',
21840
21941
 
21841
21942
  props: {
@@ -21895,7 +21996,7 @@
21895
21996
 
21896
21997
  const typeValues = Object.keys(components$1);
21897
21998
 
21898
- var QOptionGroup = vue.defineComponent({
21999
+ var QOptionGroup = createComponent({
21899
22000
  name: 'QOptionGroup',
21900
22001
 
21901
22002
  props: {
@@ -21929,7 +22030,7 @@
21929
22030
 
21930
22031
  emits: [ 'update:modelValue' ],
21931
22032
 
21932
- setup (props, { emit }) {
22033
+ setup (props, { emit, slots }) {
21933
22034
  const { proxy: { $q } } = vue.getCurrentInstance();
21934
22035
 
21935
22036
  const arrayModel = Array.isArray(props.modelValue);
@@ -21973,28 +22074,38 @@
21973
22074
  return () => vue.h('div', {
21974
22075
  class: classes.value,
21975
22076
  ...attrs.value
21976
- }, props.options.map(opt => vue.h('div', [
21977
- vue.h(component.value, {
21978
- modelValue: props.modelValue,
21979
- val: opt.value,
21980
- name: opt.name === void 0 ? props.name : opt.name,
21981
- disable: props.disable || opt.disable,
21982
- label: opt.label,
21983
- leftLabel: opt.leftLabel === void 0 ? props.leftLabel : opt.leftLabel,
21984
- color: opt.color === void 0 ? props.color : opt.color,
21985
- checkedIcon: opt.checkedIcon,
21986
- uncheckedIcon: opt.uncheckedIcon,
21987
- dark: opt.dark || isDark.value,
21988
- size: opt.size === void 0 ? props.size : opt.size,
21989
- dense: props.dense,
21990
- keepColor: opt.keepColor === void 0 ? props.keepColor : opt.keepColor,
21991
- 'onUpdate:modelValue': onUpdateModelValue
21992
- })
21993
- ])))
22077
+ }, props.options.map((opt, i) => {
22078
+ const child = slots[ 'label-' + i ] !== void 0
22079
+ ? () => slots[ 'label-' + i ](opt)
22080
+ : (
22081
+ slots.label !== void 0
22082
+ ? () => slots.label(opt)
22083
+ : void 0
22084
+ );
22085
+
22086
+ return vue.h('div', [
22087
+ vue.h(component.value, {
22088
+ modelValue: props.modelValue,
22089
+ val: opt.value,
22090
+ name: opt.name === void 0 ? props.name : opt.name,
22091
+ disable: props.disable || opt.disable,
22092
+ label: child === void 0 ? opt.label : null,
22093
+ leftLabel: opt.leftLabel === void 0 ? props.leftLabel : opt.leftLabel,
22094
+ color: opt.color === void 0 ? props.color : opt.color,
22095
+ checkedIcon: opt.checkedIcon,
22096
+ uncheckedIcon: opt.uncheckedIcon,
22097
+ dark: opt.dark || isDark.value,
22098
+ size: opt.size === void 0 ? props.size : opt.size,
22099
+ dense: props.dense,
22100
+ keepColor: opt.keepColor === void 0 ? props.keepColor : opt.keepColor,
22101
+ 'onUpdate:modelValue': onUpdateModelValue
22102
+ }, child)
22103
+ ])
22104
+ }))
21994
22105
  }
21995
22106
  });
21996
22107
 
21997
- var QPage = vue.defineComponent({
22108
+ var QPage = createComponent({
21998
22109
  name: 'QPage',
21999
22110
 
22000
22111
  props: {
@@ -22045,7 +22156,7 @@
22045
22156
  }
22046
22157
  });
22047
22158
 
22048
- var QPageContainer = vue.defineComponent({
22159
+ var QPageContainer = createComponent({
22049
22160
  name: 'QPageContainer',
22050
22161
 
22051
22162
  setup (_, { slots }) {
@@ -22196,7 +22307,7 @@
22196
22307
  }
22197
22308
  }
22198
22309
 
22199
- var QPageScroller = vue.defineComponent({
22310
+ var QPageScroller = createComponent({
22200
22311
  name: 'QPageScroller',
22201
22312
 
22202
22313
  props: {
@@ -22308,7 +22419,7 @@
22308
22419
  }
22309
22420
  });
22310
22421
 
22311
- var QPageSticky = vue.defineComponent({
22422
+ var QPageSticky = createComponent({
22312
22423
  name: 'QPageSticky',
22313
22424
 
22314
22425
  props: usePageStickyProps,
@@ -22319,7 +22430,7 @@
22319
22430
  }
22320
22431
  });
22321
22432
 
22322
- var QPagination = vue.defineComponent({
22433
+ var QPagination = createComponent({
22323
22434
  name: 'QPagination',
22324
22435
 
22325
22436
  props: {
@@ -22709,7 +22820,7 @@
22709
22820
 
22710
22821
  const { passive: passive$1 } = listenOpts;
22711
22822
 
22712
- var QParallax = vue.defineComponent({
22823
+ var QParallax = createComponent({
22713
22824
  name: 'QParallax',
22714
22825
 
22715
22826
  props: {
@@ -22873,7 +22984,7 @@
22873
22984
  }
22874
22985
  }
22875
22986
 
22876
- var QPopupEdit = vue.defineComponent({
22987
+ var QPopupEdit = createComponent({
22877
22988
  name: 'QPopupEdit',
22878
22989
 
22879
22990
  props: {
@@ -23059,7 +23170,7 @@
23059
23170
  }
23060
23171
  });
23061
23172
 
23062
- var QPopupProxy = vue.defineComponent({
23173
+ var QPopupProxy = createComponent({
23063
23174
  name: 'QPopupProxy',
23064
23175
 
23065
23176
  props: {
@@ -23172,7 +23283,7 @@
23172
23283
  }
23173
23284
  }
23174
23285
 
23175
- var QLinearProgress = vue.defineComponent({
23286
+ var QLinearProgress = createComponent({
23176
23287
  name: 'QLinearProgress',
23177
23288
 
23178
23289
  props: {
@@ -23269,7 +23380,7 @@
23269
23380
  PULLER_HEIGHT = 40,
23270
23381
  OFFSET_TOP = 20;
23271
23382
 
23272
- var QPullToRefresh = vue.defineComponent({
23383
+ var QPullToRefresh = createComponent({
23273
23384
  name: 'QPullToRefresh',
23274
23385
 
23275
23386
  props: {
@@ -23474,7 +23585,7 @@
23474
23585
  MAX: 2
23475
23586
  };
23476
23587
 
23477
- var QRange = vue.defineComponent({
23588
+ var QRange = createComponent({
23478
23589
  name: 'QRange',
23479
23590
 
23480
23591
  props: {
@@ -23942,7 +24053,7 @@
23942
24053
  })
23943
24054
  ];
23944
24055
 
23945
- props.markers === true && track.push(
24056
+ props.markers !== false && track.push(
23946
24057
  vue.h('div', {
23947
24058
  class: `q-slider__track-markers q-slider__track-markers${ state.axis.value } absolute-full fit`,
23948
24059
  style: state.markerStyle.value
@@ -23982,7 +24093,7 @@
23982
24093
  }
23983
24094
  });
23984
24095
 
23985
- var QRating = vue.defineComponent({
24096
+ var QRating = createComponent({
23986
24097
  name: 'QRating',
23987
24098
 
23988
24099
  props: {
@@ -24068,6 +24179,51 @@
24068
24179
  }
24069
24180
  });
24070
24181
 
24182
+ const stars = vue.computed(() => {
24183
+ const
24184
+ acc = [],
24185
+ icons = iconData.value,
24186
+ ceil = Math.ceil(props.modelValue);
24187
+
24188
+ const halfIndex = props.iconHalf === void 0 || ceil === props.modelValue
24189
+ ? -1
24190
+ : ceil;
24191
+
24192
+ for (let i = 1; i <= props.max; i++) {
24193
+ const
24194
+ active = (mouseModel.value === 0 && props.modelValue >= i) || (mouseModel.value > 0 && mouseModel.value >= i),
24195
+ half = halfIndex === i && mouseModel.value < i,
24196
+ exSelected = mouseModel.value > 0 && (half === true ? ceil : props.modelValue) >= i && mouseModel.value < i,
24197
+ color = half === true
24198
+ ? (i <= icons.halfColorLen ? props.colorHalf[ i - 1 ] : icons.halfColor)
24199
+ : (
24200
+ icons.selColor !== void 0 && active === true
24201
+ ? (i <= icons.selColorLen ? props.colorSelected[ i - 1 ] : icons.selColor)
24202
+ : (i <= icons.colorLen ? props.color[ i - 1 ] : icons.color)
24203
+ );
24204
+
24205
+ acc.push({
24206
+ name: (
24207
+ half === true
24208
+ ? (i <= icons.halfIconLen ? props.iconHalf[ i - 1 ] : icons.halfIcon)
24209
+ : (
24210
+ icons.selIcon !== void 0 && (active === true || exSelected === true)
24211
+ ? (i <= icons.selIconLen ? props.iconSelected[ i - 1 ] : icons.selIcon)
24212
+ : (i <= icons.iconLen ? props.icon[ i - 1 ] : icons.icon)
24213
+ )
24214
+ ) || $q.iconSet.rating.icon,
24215
+
24216
+ classes: 'q-rating__icon'
24217
+ + (active === true || half === true ? ' q-rating__icon--active' : '')
24218
+ + (exSelected === true ? ' q-rating__icon--exselected' : '')
24219
+ + (mouseModel.value === i ? ' q-rating__icon--hovered' : '')
24220
+ + (color !== void 0 ? ` text-${ color }` : '')
24221
+ });
24222
+ }
24223
+
24224
+ return acc
24225
+ });
24226
+
24071
24227
  const attributes = vue.computed(() => {
24072
24228
  if (props.disable === true) {
24073
24229
  return { 'aria-disabled': 'true' }
@@ -24077,6 +24233,8 @@
24077
24233
  }
24078
24234
  });
24079
24235
 
24236
+ const tabindex = vue.computed(() => (editable.value === true ? 0 : null));
24237
+
24080
24238
  function set (value) {
24081
24239
  if (editable.value === true) {
24082
24240
  const
@@ -24124,57 +24282,29 @@
24124
24282
  });
24125
24283
 
24126
24284
  return () => {
24127
- const
24128
- child = [],
24129
- tabindex = editable.value === true ? 0 : null,
24130
- icons = iconData.value,
24131
- ceil = Math.ceil(props.modelValue);
24132
-
24133
- const halfIndex = props.iconHalf === void 0 || ceil === props.modelValue
24134
- ? -1
24135
- : ceil;
24285
+ const child = [];
24136
24286
 
24137
- for (let i = 1; i <= props.max; i++) {
24138
- const
24139
- active = (mouseModel.value === 0 && props.modelValue >= i) || (mouseModel.value > 0 && mouseModel.value >= i),
24140
- half = halfIndex === i && mouseModel.value < i,
24141
- exSelected = mouseModel.value > 0 && (half === true ? ceil : props.modelValue) >= i && mouseModel.value < i,
24142
- name = half === true
24143
- ? (i <= icons.halfIconLen ? props.iconHalf[ i - 1 ] : icons.halfIcon)
24144
- : (
24145
- icons.selIcon !== void 0 && (active === true || exSelected === true)
24146
- ? (i <= icons.selIconLen ? props.iconSelected[ i - 1 ] : icons.selIcon)
24147
- : (i <= icons.iconLen ? props.icon[ i - 1 ] : icons.icon)
24148
- ),
24149
- color = half === true
24150
- ? (i <= icons.halfColorLen ? props.colorHalf[ i - 1 ] : icons.halfColor)
24151
- : (
24152
- icons.selColor !== void 0 && active === true
24153
- ? (i <= icons.selColorLen ? props.colorSelected[ i - 1 ] : icons.selColor)
24154
- : (i <= icons.colorLen ? props.color[ i - 1 ] : icons.color)
24155
- ),
24156
- classes = 'q-rating__icon'
24157
- + (active === true || half === true ? ' q-rating__icon--active' : '')
24158
- + (exSelected === true ? ' q-rating__icon--exselected' : '')
24159
- + (mouseModel.value === i ? ' q-rating__icon--hovered' : '')
24160
- + (color !== void 0 ? ` text-${ color }` : '');
24287
+ stars.value.forEach(({ classes, name }, index) => {
24288
+ const i = index + 1;
24161
24289
 
24162
24290
  child.push(
24163
- vue.h(QIcon, {
24291
+ vue.h('div', {
24164
24292
  key: i,
24165
24293
  ref: vm => { iconRefs[ `rt${ i }` ] = vm; },
24166
- class: classes,
24167
- name: name || $q.iconSet.rating.icon,
24168
- tabindex,
24294
+ class: 'q-rating__icon-container flex flex-center',
24295
+ tabindex: tabindex.value,
24169
24296
  onClick () { set(i); },
24170
24297
  onMouseover () { setHoverValue(i); },
24171
24298
  onMouseout: resetMouseModel,
24172
24299
  onFocus () { setHoverValue(i); },
24173
24300
  onBlur: resetMouseModel,
24174
24301
  onKeyup (e) { onKeyup(e, i); }
24175
- }, slots[ `tip-${ i }` ])
24302
+ }, hMergeSlot(
24303
+ slots[ `tip-${ i }` ],
24304
+ [ vue.h(QIcon, { class: classes, name }) ]
24305
+ ))
24176
24306
  );
24177
- }
24307
+ });
24178
24308
 
24179
24309
  if (props.name !== void 0 && props.disable !== true) {
24180
24310
  injectFormInput(child, 'push');
@@ -24189,7 +24319,7 @@
24189
24319
  }
24190
24320
  });
24191
24321
 
24192
- var QResponsive = vue.defineComponent({
24322
+ var QResponsive = createComponent({
24193
24323
  name: 'QResponsive',
24194
24324
 
24195
24325
  props: useRatioProps,
@@ -24219,7 +24349,7 @@
24219
24349
  horizontal: { offset: 'offsetX', scroll: 'scrollLeft', dir: 'right', dist: 'x' }
24220
24350
  };
24221
24351
 
24222
- var QScrollArea = vue.defineComponent({
24352
+ var QScrollArea = createComponent({
24223
24353
  name: 'QScrollArea',
24224
24354
 
24225
24355
  props: {
@@ -25348,7 +25478,7 @@
25348
25478
  const reEscapeList = '.*+?^${}()|[]\\';
25349
25479
  const fieldPropsList = Object.keys(useFieldProps);
25350
25480
 
25351
- var QSelect = vue.defineComponent({
25481
+ var QSelect = createComponent({
25352
25482
  name: 'QSelect',
25353
25483
 
25354
25484
  inheritAttrs: false,
@@ -26852,7 +26982,7 @@
26852
26982
  'wave', 'pulse', 'pulse-x', 'pulse-y', 'fade', 'blink', 'none'
26853
26983
  ];
26854
26984
 
26855
- var QSkeleton = vue.defineComponent({
26985
+ var QSkeleton = createComponent({
26856
26986
  name: 'QSkeleton',
26857
26987
 
26858
26988
  props: {
@@ -26874,6 +27004,10 @@
26874
27004
  validator: v => skeletonAnimations.includes(v),
26875
27005
  default: 'wave'
26876
27006
  },
27007
+ animationSpeed: {
27008
+ type: [ String, Number ],
27009
+ default: 1500
27010
+ },
26877
27011
 
26878
27012
  square: Boolean,
26879
27013
  bordered: Boolean,
@@ -26887,11 +27021,17 @@
26887
27021
  const vm = vue.getCurrentInstance();
26888
27022
  const isDark = useDark(props, vm.proxy.$q);
26889
27023
 
26890
- const style = vue.computed(() => (
26891
- props.size !== void 0
26892
- ? { width: props.size, height: props.size }
26893
- : { width: props.width, height: props.height }
26894
- ));
27024
+ const style = vue.computed(() => {
27025
+ const size = props.size !== void 0
27026
+ ? [ props.size, props.size ]
27027
+ : [ props.width, props.height ];
27028
+
27029
+ return {
27030
+ '--q-skeleton-speed': `${ props.animationSpeed }ms`,
27031
+ width: size[ 0 ],
27032
+ height: size[ 1 ]
27033
+ }
27034
+ });
26895
27035
 
26896
27036
  const classes = vue.computed(() =>
26897
27037
  `q-skeleton q-skeleton--${ isDark.value === true ? 'dark' : 'light' } q-skeleton--type-${ props.type }`
@@ -26914,7 +27054,7 @@
26914
27054
  [ 'bottom', 'end', 'center', 'height' ]
26915
27055
  ];
26916
27056
 
26917
- var QSlideItem = vue.defineComponent({
27057
+ var QSlideItem = createComponent({
26918
27058
  name: 'QSlideItem',
26919
27059
 
26920
27060
  props: {
@@ -27133,7 +27273,7 @@
27133
27273
 
27134
27274
  const space = vue.h('div', { class: 'q-space' });
27135
27275
 
27136
- var QSpace = vue.defineComponent({
27276
+ var QSpace = createComponent({
27137
27277
  name: 'QSpace',
27138
27278
 
27139
27279
  setup () {
@@ -27207,7 +27347,7 @@
27207
27347
  ])
27208
27348
  ];
27209
27349
 
27210
- var QSpinnerAudio = vue.defineComponent({
27350
+ var QSpinnerAudio = createComponent({
27211
27351
  name: 'QSpinnerAudio',
27212
27352
 
27213
27353
  props: useSpinnerProps,
@@ -27308,7 +27448,7 @@
27308
27448
  ])
27309
27449
  ];
27310
27450
 
27311
- var QSpinnerBall = vue.defineComponent({
27451
+ var QSpinnerBall = createComponent({
27312
27452
  name: 'QSpinnerBall',
27313
27453
 
27314
27454
  props: useSpinnerProps,
@@ -27448,7 +27588,7 @@
27448
27588
  ])
27449
27589
  ];
27450
27590
 
27451
- var QSpinnerBars = vue.defineComponent({
27591
+ var QSpinnerBars = createComponent({
27452
27592
  name: 'QSpinnerBars',
27453
27593
 
27454
27594
  props: useSpinnerProps,
@@ -27506,7 +27646,7 @@
27506
27646
  ])
27507
27647
  ];
27508
27648
 
27509
- var QSpinnerBox = vue.defineComponent({
27649
+ var QSpinnerBox = createComponent({
27510
27650
  name: 'QSpinnerBox',
27511
27651
 
27512
27652
  props: useSpinnerProps,
@@ -27575,7 +27715,7 @@
27575
27715
  ])
27576
27716
  ];
27577
27717
 
27578
- var QSpinnerClock = vue.defineComponent({
27718
+ var QSpinnerClock = createComponent({
27579
27719
  name: 'QSpinnerClock',
27580
27720
 
27581
27721
  props: useSpinnerProps,
@@ -27656,7 +27796,7 @@
27656
27796
  ])
27657
27797
  ];
27658
27798
 
27659
- var QSpinnerComment = vue.defineComponent({
27799
+ var QSpinnerComment = createComponent({
27660
27800
  name: 'QSpinnerComment',
27661
27801
 
27662
27802
  props: useSpinnerProps,
@@ -27785,7 +27925,7 @@
27785
27925
  ])
27786
27926
  ];
27787
27927
 
27788
- var QSpinnerCube = vue.defineComponent({
27928
+ var QSpinnerCube = createComponent({
27789
27929
  name: 'QSpinnerCube',
27790
27930
 
27791
27931
  props: useSpinnerProps,
@@ -27886,7 +28026,7 @@
27886
28026
  ])
27887
28027
  ];
27888
28028
 
27889
- var QSpinnerDots = vue.defineComponent({
28029
+ var QSpinnerDots = createComponent({
27890
28030
  name: 'QSpinnerDots',
27891
28031
 
27892
28032
  props: useSpinnerProps,
@@ -27986,7 +28126,7 @@
27986
28126
  ])
27987
28127
  ];
27988
28128
 
27989
- var QSpinnerFacebook = vue.defineComponent({
28129
+ var QSpinnerFacebook = createComponent({
27990
28130
  name: 'QSpinnerFacebook',
27991
28131
 
27992
28132
  props: useSpinnerProps,
@@ -28042,7 +28182,7 @@
28042
28182
  ])
28043
28183
  ];
28044
28184
 
28045
- var QSpinnerGears = vue.defineComponent({
28185
+ var QSpinnerGears = createComponent({
28046
28186
  name: 'QSpinnerGears',
28047
28187
 
28048
28188
  props: useSpinnerProps,
@@ -28191,7 +28331,7 @@
28191
28331
  ])
28192
28332
  ];
28193
28333
 
28194
- var QSpinnerGrid = vue.defineComponent({
28334
+ var QSpinnerGrid = createComponent({
28195
28335
  name: 'QSpinnerGrid',
28196
28336
 
28197
28337
  props: useSpinnerProps,
@@ -28242,7 +28382,7 @@
28242
28382
  })
28243
28383
  ];
28244
28384
 
28245
- var QSpinnerHearts = vue.defineComponent({
28385
+ var QSpinnerHearts = createComponent({
28246
28386
  name: 'QSpinnerHearts',
28247
28387
 
28248
28388
  props: useSpinnerProps,
@@ -28351,7 +28491,7 @@
28351
28491
  ])
28352
28492
  ];
28353
28493
 
28354
- var QSpinnerHourglass = vue.defineComponent({
28494
+ var QSpinnerHourglass = createComponent({
28355
28495
  name: 'QSpinnerHourglass',
28356
28496
 
28357
28497
  props: useSpinnerProps,
@@ -28391,7 +28531,7 @@
28391
28531
  ])
28392
28532
  ];
28393
28533
 
28394
- var QSpinnerInfinity = vue.defineComponent({
28534
+ var QSpinnerInfinity = createComponent({
28395
28535
  name: 'QSpinnerInfinity',
28396
28536
 
28397
28537
  props: useSpinnerProps,
@@ -28561,7 +28701,7 @@
28561
28701
  ])
28562
28702
  ];
28563
28703
 
28564
- var QSpinnerIos = vue.defineComponent({
28704
+ var QSpinnerIos = createComponent({
28565
28705
  name: 'QSpinnerIos',
28566
28706
 
28567
28707
  props: useSpinnerProps,
@@ -28609,7 +28749,7 @@
28609
28749
  ])
28610
28750
  ];
28611
28751
 
28612
- var QSpinnerOrbit = vue.defineComponent({
28752
+ var QSpinnerOrbit = createComponent({
28613
28753
  name: 'QSpinnerOrbit',
28614
28754
 
28615
28755
  props: useSpinnerProps,
@@ -28656,7 +28796,7 @@
28656
28796
  ])
28657
28797
  ];
28658
28798
 
28659
- var QSpinnerOval = vue.defineComponent({
28799
+ var QSpinnerOval = createComponent({
28660
28800
  name: 'QSpinnerOval',
28661
28801
 
28662
28802
  props: useSpinnerProps,
@@ -28734,7 +28874,7 @@
28734
28874
  ])
28735
28875
  ];
28736
28876
 
28737
- var QSpinnerPie = vue.defineComponent({
28877
+ var QSpinnerPie = createComponent({
28738
28878
  name: 'QSpinnerPie',
28739
28879
 
28740
28880
  props: useSpinnerProps,
@@ -28814,7 +28954,7 @@
28814
28954
  ])
28815
28955
  ];
28816
28956
 
28817
- var QSpinnerPuff = vue.defineComponent({
28957
+ var QSpinnerPuff = createComponent({
28818
28958
  name: 'QSpinnerPuff',
28819
28959
 
28820
28960
  props: useSpinnerProps,
@@ -28887,7 +29027,7 @@
28887
29027
  ])
28888
29028
  ];
28889
29029
 
28890
- var QSpinnerRadio = vue.defineComponent({
29030
+ var QSpinnerRadio = createComponent({
28891
29031
  name: 'QSpinnerRadio',
28892
29032
 
28893
29033
  props: useSpinnerProps,
@@ -28990,7 +29130,7 @@
28990
29130
  ])
28991
29131
  ];
28992
29132
 
28993
- var QSpinnerRings = vue.defineComponent({
29133
+ var QSpinnerRings = createComponent({
28994
29134
  name: 'QSpinnerRings',
28995
29135
 
28996
29136
  props: useSpinnerProps,
@@ -29071,7 +29211,7 @@
29071
29211
  ])
29072
29212
  ];
29073
29213
 
29074
- var QSpinnerTail = vue.defineComponent({
29214
+ var QSpinnerTail = createComponent({
29075
29215
  name: 'QSpinnerTail',
29076
29216
 
29077
29217
  props: useSpinnerProps,
@@ -29089,7 +29229,7 @@
29089
29229
  }
29090
29230
  });
29091
29231
 
29092
- var QSplitter = vue.defineComponent({
29232
+ var QSplitter = createComponent({
29093
29233
  name: 'QSplitter',
29094
29234
 
29095
29235
  props: {
@@ -29287,7 +29427,7 @@
29287
29427
  }
29288
29428
  });
29289
29429
 
29290
- var StepHeader = vue.defineComponent({
29430
+ var StepHeader = createComponent({
29291
29431
  name: 'StepHeader',
29292
29432
 
29293
29433
  props: {
@@ -29379,6 +29519,12 @@
29379
29519
  + (isDisable.value === true ? ' q-stepper__tab--disabled' : '')
29380
29520
  });
29381
29521
 
29522
+ const ripple = vue.computed(() => (
29523
+ props.stepper.headerNav !== true
29524
+ ? false
29525
+ : headerNav.value
29526
+ ));
29527
+
29382
29528
  function onActivate () {
29383
29529
  blurRef.value !== null && blurRef.value.focus();
29384
29530
  isActive.value === false && props.goToPanel(props.step.name);
@@ -29434,13 +29580,9 @@
29434
29580
  );
29435
29581
  }
29436
29582
 
29437
- return hDir(
29438
- 'div',
29439
- data,
29440
- child,
29441
- 'head',
29442
- props.stepper.headerNav === true && headerNav.value !== false,
29443
- () => [ [ Ripple, headerNav.value ] ]
29583
+ return vue.withDirectives(
29584
+ vue.h('div', data, child),
29585
+ [ [ Ripple, ripple.value ] ]
29444
29586
  )
29445
29587
  }
29446
29588
  }
@@ -29462,7 +29604,7 @@
29462
29604
  }
29463
29605
  };
29464
29606
 
29465
- var QStep = vue.defineComponent({
29607
+ var QStep = createComponent({
29466
29608
  name: 'QStep',
29467
29609
 
29468
29610
  props: {
@@ -29579,7 +29721,7 @@
29579
29721
  return acc
29580
29722
  }
29581
29723
 
29582
- var QStepper = vue.defineComponent({
29724
+ var QStepper = createComponent({
29583
29725
  name: 'QStepper',
29584
29726
 
29585
29727
  props: {
@@ -29692,7 +29834,7 @@
29692
29834
  }
29693
29835
  });
29694
29836
 
29695
- var QStepperNavigation = vue.defineComponent({
29837
+ var QStepperNavigation = createComponent({
29696
29838
  name: 'QStepperNavigation',
29697
29839
 
29698
29840
  setup (_, { slots }) {
@@ -29700,7 +29842,7 @@
29700
29842
  }
29701
29843
  });
29702
29844
 
29703
- var QTh = vue.defineComponent({
29845
+ var QTh = createComponent({
29704
29846
  name: 'QTh',
29705
29847
 
29706
29848
  props: {
@@ -29777,7 +29919,7 @@
29777
29919
 
29778
29920
  const typeOptions = [ 'list', 'table', '__qtable' ];
29779
29921
 
29780
- var QVirtualScroll = vue.defineComponent({
29922
+ var QVirtualScroll = createComponent({
29781
29923
  name: 'QVirtualScroll',
29782
29924
 
29783
29925
  props: {
@@ -30521,7 +30663,7 @@
30521
30663
  const commonVirtPropsObj = {};
30522
30664
  commonVirtPropsList.forEach(p => { commonVirtPropsObj[ p ] = {}; });
30523
30665
 
30524
- var QTable = vue.defineComponent({
30666
+ var QTable = createComponent({
30525
30667
  name: 'QTable',
30526
30668
 
30527
30669
  props: {
@@ -31560,7 +31702,7 @@
31560
31702
  }
31561
31703
  });
31562
31704
 
31563
- var QTr = vue.defineComponent({
31705
+ var QTr = createComponent({
31564
31706
  name: 'QTr',
31565
31707
 
31566
31708
  props: {
@@ -31579,7 +31721,7 @@
31579
31721
  }
31580
31722
  });
31581
31723
 
31582
- var QTd = vue.defineComponent({
31724
+ var QTd = createComponent({
31583
31725
  name: 'QTd',
31584
31726
 
31585
31727
  props: {
@@ -31619,7 +31761,7 @@
31619
31761
  }
31620
31762
  });
31621
31763
 
31622
- var QRouteTab = vue.defineComponent({
31764
+ var QRouteTab = createComponent({
31623
31765
  name: 'QRouteTab',
31624
31766
 
31625
31767
  props: {
@@ -31675,7 +31817,7 @@
31675
31817
  }
31676
31818
  }
31677
31819
 
31678
- var QTime = vue.defineComponent({
31820
+ var QTime = createComponent({
31679
31821
  name: 'QTime',
31680
31822
 
31681
31823
  props: {
@@ -31927,8 +32069,6 @@
31927
32069
  defaultDateModel.value
31928
32070
  );
31929
32071
 
31930
- console.log({ ...model });
31931
-
31932
32072
  if (
31933
32073
  model.dateHash !== innerModel.value.dateHash
31934
32074
  || model.timeHash !== innerModel.value.timeHash
@@ -32562,7 +32702,7 @@
32562
32702
  }
32563
32703
  });
32564
32704
 
32565
- var QTimeline = vue.defineComponent({
32705
+ var QTimeline = createComponent({
32566
32706
  name: 'QTimeline',
32567
32707
 
32568
32708
  props: {
@@ -32599,7 +32739,7 @@
32599
32739
  }
32600
32740
  });
32601
32741
 
32602
- var QTimelineEntry = vue.defineComponent({
32742
+ var QTimelineEntry = createComponent({
32603
32743
  name: 'QTimelineEntry',
32604
32744
 
32605
32745
  props: {
@@ -32703,7 +32843,7 @@
32703
32843
  }
32704
32844
  });
32705
32845
 
32706
- var QToolbar = vue.defineComponent({
32846
+ var QToolbar = createComponent({
32707
32847
  name: 'QToolbar',
32708
32848
 
32709
32849
  props: {
@@ -32720,7 +32860,7 @@
32720
32860
  }
32721
32861
  });
32722
32862
 
32723
- var QToolbarTitle = vue.defineComponent({
32863
+ var QToolbarTitle = createComponent({
32724
32864
  name: 'QToolbarTitle',
32725
32865
 
32726
32866
  props: {
@@ -32737,7 +32877,7 @@
32737
32877
  }
32738
32878
  });
32739
32879
 
32740
- var QTree = vue.defineComponent({
32880
+ var QTree = createComponent({
32741
32881
  name: 'QTree',
32742
32882
 
32743
32883
  props: {
@@ -33885,7 +34025,7 @@
33885
34025
  }
33886
34026
  }
33887
34027
 
33888
- var createUploaderComponent = ({ name, props, emits, injectPlugin }) => vue.defineComponent({
34028
+ var createUploaderComponent = ({ name, props, emits, injectPlugin }) => createComponent({
33889
34029
  name,
33890
34030
 
33891
34031
  props: {
@@ -34162,7 +34302,7 @@
34162
34302
 
34163
34303
  var QUploader = createUploaderComponent(xhrUploaderPlugin);
34164
34304
 
34165
- var QUploaderAddTrigger = vue.defineComponent({
34305
+ var QUploaderAddTrigger = createComponent({
34166
34306
  name: 'QUploaderAddTrigger',
34167
34307
 
34168
34308
  setup () {
@@ -34172,7 +34312,7 @@
34172
34312
  }
34173
34313
  });
34174
34314
 
34175
- var QVideo = vue.defineComponent({
34315
+ var QVideo = createComponent({
34176
34316
  name: 'QVideo',
34177
34317
 
34178
34318
  props: {
@@ -34351,7 +34491,7 @@
34351
34491
  return isNaN(depth) ? 0 : depth
34352
34492
  }
34353
34493
 
34354
- var ClosePopup = {
34494
+ var ClosePopup = createDirective({
34355
34495
  name: 'close-popup',
34356
34496
 
34357
34497
  beforeMount (el, { value }) {
@@ -34391,7 +34531,8 @@
34391
34531
  el.removeEventListener('keyup', ctx.handlerKey);
34392
34532
  delete el.__qclosepopup;
34393
34533
  }
34394
- };
34534
+ }
34535
+ );
34395
34536
 
34396
34537
  let id = 0;
34397
34538
  let offsetBase = void 0;
@@ -35541,7 +35682,7 @@
35541
35682
  }
35542
35683
  }
35543
35684
 
35544
- var Morph = {
35685
+ var Morph = createDirective({
35545
35686
  name: 'morph',
35546
35687
 
35547
35688
  mounted (el, binding) {
@@ -35586,7 +35727,8 @@
35586
35727
 
35587
35728
  delete el.__qmorph;
35588
35729
  }
35589
- };
35730
+ }
35731
+ );
35590
35732
 
35591
35733
  const defaultCfg = {
35592
35734
  childList: true,
@@ -35622,7 +35764,7 @@
35622
35764
  }
35623
35765
  }
35624
35766
 
35625
- var Mutation = {
35767
+ var Mutation = createDirective({
35626
35768
  name: 'mutation',
35627
35769
 
35628
35770
  mounted (el, { modifiers: { once, ...mod }, value }) {
@@ -35646,7 +35788,8 @@
35646
35788
  },
35647
35789
 
35648
35790
  beforeUnmount: destroy
35649
- };
35791
+ }
35792
+ );
35650
35793
 
35651
35794
  const { passive } = listenOpts;
35652
35795
 
@@ -35663,7 +35806,7 @@
35663
35806
  }
35664
35807
  }
35665
35808
 
35666
- var ScrollFire = {
35809
+ var ScrollFire = createDirective({
35667
35810
  name: 'scroll-fire',
35668
35811
 
35669
35812
  mounted (el, binding) {
@@ -35704,7 +35847,8 @@
35704
35847
  ctx.scrollTarget.removeEventListener('scroll', ctx.scroll, passive);
35705
35848
  delete el.__qscrollfire;
35706
35849
  }
35707
- };
35850
+ }
35851
+ );
35708
35852
 
35709
35853
  function update (ctx, { value, oldValue }) {
35710
35854
  if (typeof value !== 'function') {
@@ -35718,7 +35862,7 @@
35718
35862
  }
35719
35863
  }
35720
35864
 
35721
- var Scroll = {
35865
+ var Scroll = createDirective({
35722
35866
  name: 'scroll',
35723
35867
 
35724
35868
  mounted (el, binding) {
@@ -35748,9 +35892,10 @@
35748
35892
  ctx.scrollTarget.removeEventListener('scroll', ctx.scroll, listenOpts.passive);
35749
35893
  delete el.__qscroll;
35750
35894
  }
35751
- };
35895
+ }
35896
+ );
35752
35897
 
35753
- var TouchHold = {
35898
+ var TouchHold = createDirective({
35754
35899
  name: 'touch-hold',
35755
35900
 
35756
35901
  beforeMount (el, binding) {
@@ -35901,7 +36046,8 @@
35901
36046
  delete el.__qtouchhold;
35902
36047
  }
35903
36048
  }
35904
- };
36049
+ }
36050
+ );
35905
36051
 
35906
36052
  const
35907
36053
  keyCodes = {
@@ -35924,7 +36070,7 @@
35924
36070
  || Math.abs(top - origin.top) >= 7
35925
36071
  }
35926
36072
 
35927
- var TouchRepeat = {
36073
+ var TouchRepeat = createDirective({
35928
36074
  name: 'touch-repeat',
35929
36075
 
35930
36076
  beforeMount (el, { modifiers, value, arg }) {
@@ -36135,7 +36281,8 @@
36135
36281
  delete el.__qtouchrepeat;
36136
36282
  }
36137
36283
  }
36138
- };
36284
+ }
36285
+ );
36139
36286
 
36140
36287
  var directives = /*#__PURE__*/Object.freeze({
36141
36288
  __proto__: null,
@@ -36368,7 +36515,7 @@
36368
36515
  }
36369
36516
  }
36370
36517
 
36371
- var BottomSheet$1 = vue.defineComponent({
36518
+ var BottomSheet$1 = createComponent({
36372
36519
  name: 'BottomSheetPlugin',
36373
36520
 
36374
36521
  props: {
@@ -36885,7 +37032,7 @@
36885
37032
  Object.assign(Plugin$3, getObject());
36886
37033
  }
36887
37034
 
36888
- var DialogPlugin = vue.defineComponent({
37035
+ var DialogPlugin = createComponent({
36889
37036
  name: 'DialogPlugin',
36890
37037
 
36891
37038
  props: {
@@ -37628,9 +37775,9 @@
37628
37775
  }
37629
37776
 
37630
37777
  function getComponent ($q) {
37631
- return vue.defineComponent({
37778
+ return createComponent({
37632
37779
  name: 'QNotifications',
37633
-
37780
+
37634
37781
  // hide App from Vue devtools
37635
37782
  devtools: { hide: true },
37636
37783
 
@@ -38587,7 +38734,7 @@
38587
38734
  });
38588
38735
 
38589
38736
  var index_umd = {
38590
- version: '2.1.9',
38737
+ version: '2.2.3',
38591
38738
  install (app, opts) {
38592
38739
  installQuasar(app, {
38593
38740
  components,