quasar 2.9.2 → 2.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (337) hide show
  1. package/dist/api/Dialog.json +25 -68
  2. package/dist/api/Intersection.json +25 -100
  3. package/dist/api/Loading.json +5 -20
  4. package/dist/api/LoadingBar.json +1 -7
  5. package/dist/api/LocalStorage.json +4 -16
  6. package/dist/api/Morph.json +2 -14
  7. package/dist/api/Notify.json +0 -3
  8. package/dist/api/Platform.json +1 -4
  9. package/dist/api/QAjaxBar.json +1 -11
  10. package/dist/api/QBreadcrumbs.json +0 -8
  11. package/dist/api/QBreadcrumbsEl.json +0 -14
  12. package/dist/api/QBtn.json +0 -3
  13. package/dist/api/QBtnDropdown.json +32 -8
  14. package/dist/api/QCarousel.json +0 -10
  15. package/dist/api/QCarouselControl.json +0 -3
  16. package/dist/api/QCircularProgress.json +0 -23
  17. package/dist/api/QColor.json +0 -3
  18. package/dist/api/QDialog.json +18 -9
  19. package/dist/api/QDrawer.json +0 -6
  20. package/dist/api/QExpansionItem.json +0 -3
  21. package/dist/api/QFab.json +1 -6
  22. package/dist/api/QFabAction.json +1 -3
  23. package/dist/api/QField.json +1 -6
  24. package/dist/api/QFile.json +12 -29
  25. package/dist/api/QFooter.json +0 -3
  26. package/dist/api/QHeader.json +0 -6
  27. package/dist/api/QInfiniteScroll.json +9 -16
  28. package/dist/api/QInnerLoading.json +0 -4
  29. package/dist/api/QInput.json +8 -15
  30. package/dist/api/QIntersection.json +0 -4
  31. package/dist/api/QItemLabel.json +0 -5
  32. package/dist/api/QKnob.json +3 -36
  33. package/dist/api/QLayout.json +6 -24
  34. package/dist/api/QLinearProgress.json +0 -6
  35. package/dist/api/QList.json +15 -0
  36. package/dist/api/QMenu.json +7 -12
  37. package/dist/api/QOptionGroup.json +0 -3
  38. package/dist/api/QPage.json +2 -8
  39. package/dist/api/QPageScroller.json +0 -9
  40. package/dist/api/QPageSticky.json +0 -3
  41. package/dist/api/QPagination.json +138 -127
  42. package/dist/api/QParallax.json +2 -14
  43. package/dist/api/QPopupEdit.json +0 -8
  44. package/dist/api/QPopupProxy.json +0 -4
  45. package/dist/api/QRange.json +5 -32
  46. package/dist/api/QRating.json +0 -4
  47. package/dist/api/QResizeObserver.json +2 -8
  48. package/dist/api/QScrollArea.json +8 -36
  49. package/dist/api/QScrollObserver.json +6 -24
  50. package/dist/api/QSelect.json +18 -108
  51. package/dist/api/QSlideItem.json +1 -6
  52. package/dist/api/QSlideTransition.json +0 -4
  53. package/dist/api/QSlider.json +3 -24
  54. package/dist/api/QSpinner.json +0 -4
  55. package/dist/api/QSplitter.json +1 -4
  56. package/dist/api/QStepper.json +0 -7
  57. package/dist/api/QTabPanels.json +0 -7
  58. package/dist/api/QTable.json +43 -191
  59. package/dist/api/QTabs.json +1 -7
  60. package/dist/api/QTime.json +3 -12
  61. package/dist/api/QTooltip.json +7 -18
  62. package/dist/api/QTree.json +0 -3
  63. package/dist/api/QUploader.json +5 -16
  64. package/dist/api/QVirtualScroll.json +11 -56
  65. package/dist/api/Screen.json +9 -36
  66. package/dist/api/Scroll.json +2 -8
  67. package/dist/api/SessionStorage.json +4 -16
  68. package/dist/api/TouchHold.json +3 -12
  69. package/dist/api/TouchPan.json +7 -28
  70. package/dist/api/TouchRepeat.json +6 -24
  71. package/dist/api/TouchSwipe.json +3 -12
  72. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  73. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  74. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  75. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  76. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  77. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  78. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  79. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  80. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  81. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  82. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  83. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  84. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  85. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  86. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  87. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  88. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  89. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  90. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  91. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  92. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  93. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  94. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  95. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  96. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  97. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  98. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  99. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  100. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  101. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  102. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  103. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  104. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  105. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  106. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  107. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  108. package/dist/icon-set/themify.umd.prod.js +1 -1
  109. package/dist/lang/ar-TN.umd.prod.js +1 -1
  110. package/dist/lang/ar.umd.prod.js +1 -1
  111. package/dist/lang/az-Latn.umd.prod.js +1 -1
  112. package/dist/lang/bg.umd.prod.js +1 -1
  113. package/dist/lang/bn.umd.prod.js +1 -1
  114. package/dist/lang/ca.umd.prod.js +1 -1
  115. package/dist/lang/cs.umd.prod.js +1 -1
  116. package/dist/lang/da.umd.prod.js +1 -1
  117. package/dist/lang/de.umd.prod.js +1 -1
  118. package/dist/lang/el.umd.prod.js +1 -1
  119. package/dist/lang/en-GB.umd.prod.js +1 -1
  120. package/dist/lang/en-US.umd.prod.js +1 -1
  121. package/dist/lang/eo.umd.prod.js +1 -1
  122. package/dist/lang/es.umd.prod.js +1 -1
  123. package/dist/lang/et.umd.prod.js +1 -1
  124. package/dist/lang/eu.umd.prod.js +1 -1
  125. package/dist/lang/fa-IR.umd.prod.js +1 -1
  126. package/dist/lang/fa.umd.prod.js +1 -1
  127. package/dist/lang/fi.umd.prod.js +1 -1
  128. package/dist/lang/fr.umd.prod.js +1 -1
  129. package/dist/lang/gn.umd.prod.js +1 -1
  130. package/dist/lang/he.umd.prod.js +1 -1
  131. package/dist/lang/hr.umd.prod.js +1 -1
  132. package/dist/lang/hu.umd.prod.js +1 -1
  133. package/dist/lang/id.umd.prod.js +1 -1
  134. package/dist/lang/is.umd.prod.js +1 -1
  135. package/dist/lang/it.umd.prod.js +1 -1
  136. package/dist/lang/ja.umd.prod.js +1 -1
  137. package/dist/lang/km.umd.prod.js +1 -1
  138. package/dist/lang/ko-KR.umd.prod.js +1 -1
  139. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  140. package/dist/lang/kz.umd.prod.js +1 -1
  141. package/dist/lang/lt.umd.prod.js +1 -1
  142. package/dist/lang/lu.umd.prod.js +1 -1
  143. package/dist/lang/lv.umd.prod.js +1 -1
  144. package/dist/lang/ml.umd.prod.js +1 -1
  145. package/dist/lang/mm.umd.prod.js +1 -1
  146. package/dist/lang/ms.umd.prod.js +1 -1
  147. package/dist/lang/my.umd.prod.js +1 -1
  148. package/dist/lang/nb-NO.umd.prod.js +1 -1
  149. package/dist/lang/nl.umd.prod.js +1 -1
  150. package/dist/lang/pl.umd.prod.js +1 -1
  151. package/dist/lang/pt-BR.umd.prod.js +1 -1
  152. package/dist/lang/pt.umd.prod.js +1 -1
  153. package/dist/lang/ro.umd.prod.js +1 -1
  154. package/dist/lang/ru.umd.prod.js +1 -1
  155. package/dist/lang/sk.umd.prod.js +1 -1
  156. package/dist/lang/sl.umd.prod.js +1 -1
  157. package/dist/lang/sm.umd.prod.js +1 -1
  158. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  159. package/dist/lang/sr.umd.prod.js +1 -1
  160. package/dist/lang/sv.umd.prod.js +1 -1
  161. package/dist/lang/ta.umd.prod.js +1 -1
  162. package/dist/lang/th.umd.prod.js +1 -1
  163. package/dist/lang/tr.umd.prod.js +1 -1
  164. package/dist/lang/ug.umd.prod.js +1 -1
  165. package/dist/lang/uk.umd.prod.js +1 -1
  166. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  167. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  168. package/dist/lang/vi.umd.prod.js +1 -1
  169. package/dist/lang/zh-CN.umd.prod.js +1 -1
  170. package/dist/lang/zh-TW.umd.prod.js +1 -1
  171. package/dist/quasar.cjs.prod.js +2 -2
  172. package/dist/quasar.css +12 -2
  173. package/dist/quasar.esm.js +603 -445
  174. package/dist/quasar.esm.prod.js +2 -2
  175. package/dist/quasar.prod.css +1 -1
  176. package/dist/quasar.rtl.css +28 -2
  177. package/dist/quasar.rtl.prod.css +1 -1
  178. package/dist/quasar.sass +13 -3
  179. package/dist/quasar.umd.js +603 -445
  180. package/dist/quasar.umd.prod.js +2 -2
  181. package/dist/transforms/auto-import.json +7 -3
  182. package/dist/transforms/import-map.json +2 -0
  183. package/dist/types/index.d.ts +116 -106
  184. package/dist/vetur/quasar-attributes.json +65 -49
  185. package/dist/vetur/quasar-tags.json +18 -14
  186. package/dist/web-types/web-types.json +261 -222
  187. package/package.json +3 -3
  188. package/src/api.extends.json +1 -2
  189. package/src/components/ajax-bar/QAjaxBar.json +5 -11
  190. package/src/components/badge/QBadge.js +1 -1
  191. package/src/components/breadcrumbs/QBreadcrumbs.json +0 -2
  192. package/src/components/breadcrumbs/QBreadcrumbsEl.json +1 -6
  193. package/src/components/breadcrumbs/__tests__/BasicBreadcrumbs.vue +7 -0
  194. package/src/components/breadcrumbs/__tests__/BreadcrumbWithSeparatorSlot.vue +11 -0
  195. package/src/components/breadcrumbs/__tests__/QBreadcrumbs.spec.js +112 -0
  196. package/src/components/breadcrumbs/__tests__/QBreadcrumbsEl.spec.js +87 -0
  197. package/src/components/btn/QBtn.json +1 -3
  198. package/src/components/btn/__tests__/QBtn.spec.js +87 -14
  199. package/src/components/btn/__tests__/use-btn.spec.js +385 -58
  200. package/src/components/btn/use-btn.js +24 -14
  201. package/src/components/btn-dropdown/QBtnDropdown.js +34 -18
  202. package/src/components/btn-dropdown/QBtnDropdown.json +1 -3
  203. package/src/components/btn-toggle/QBtnToggle.js +14 -14
  204. package/src/components/btn-toggle/QBtnToggle.json +2 -4
  205. package/src/components/carousel/QCarousel.json +4 -9
  206. package/src/components/carousel/QCarouselControl.json +0 -1
  207. package/src/components/checkbox/use-checkbox.js +1 -1
  208. package/src/components/checkbox/use-checkbox.json +1 -2
  209. package/src/components/chip/QChip.js +14 -11
  210. package/src/components/circular-progress/QCircularProgress.json +0 -5
  211. package/src/components/color/QColor.json +0 -1
  212. package/src/components/date/QDate.js +3 -3
  213. package/src/components/date/QDate.json +28 -56
  214. package/src/components/dialog/QDialog.js +32 -41
  215. package/src/components/dialog/QDialog.json +9 -2
  216. package/src/components/dialog-bottom-sheet/BottomSheet.js +7 -4
  217. package/src/components/dialog-plugin/DialogPlugin.js +4 -4
  218. package/src/components/drawer/QDrawer.js +10 -8
  219. package/src/components/drawer/QDrawer.json +0 -4
  220. package/src/components/editor/QEditor.json +3 -6
  221. package/src/components/expansion-item/QExpansionItem.js +3 -3
  222. package/src/components/expansion-item/QExpansionItem.json +3 -8
  223. package/src/components/fab/QFab.json +0 -1
  224. package/src/components/fab/use-fab.json +0 -1
  225. package/src/components/field/QField.json +0 -1
  226. package/src/components/file/QFile.js +4 -1
  227. package/src/components/file/QFile.json +19 -20
  228. package/src/components/footer/QFooter.js +5 -3
  229. package/src/components/footer/QFooter.json +0 -1
  230. package/src/components/form/QForm.js +5 -3
  231. package/src/components/form/QForm.json +2 -4
  232. package/src/components/header/QHeader.js +5 -3
  233. package/src/components/header/QHeader.json +0 -4
  234. package/src/components/infinite-scroll/QInfiniteScroll.json +9 -6
  235. package/src/components/inner-loading/QInnerLoading.js +2 -5
  236. package/src/components/input/QInput.js +4 -1
  237. package/src/components/input/QInput.json +11 -7
  238. package/src/components/input/use-mask.js +2 -2
  239. package/src/components/intersection/QIntersection.json +0 -1
  240. package/src/components/item/QItem.js +1 -0
  241. package/src/components/item/QItem.json +1 -2
  242. package/src/components/item/QItemLabel.json +0 -1
  243. package/src/components/item/QList.js +7 -2
  244. package/src/components/item/QList.json +7 -0
  245. package/src/components/knob/QKnob.js +3 -3
  246. package/src/components/knob/QKnob.json +3 -12
  247. package/src/components/layout/QLayout.js +1 -1
  248. package/src/components/layout/QLayout.json +6 -12
  249. package/src/components/linear-progress/QLinearProgress.json +0 -2
  250. package/src/components/menu/QMenu.js +8 -5
  251. package/src/components/menu/QMenu.json +0 -2
  252. package/src/components/option-group/QOptionGroup.js +1 -1
  253. package/src/components/option-group/QOptionGroup.json +2 -5
  254. package/src/components/page/QPage.js +11 -4
  255. package/src/components/page/QPage.json +3 -6
  256. package/src/components/page/QPageContainer.js +5 -3
  257. package/src/components/page-scroller/QPageScroller.json +0 -2
  258. package/src/components/page-sticky/QPageSticky.json +0 -1
  259. package/src/components/page-sticky/use-page-sticky.js +5 -3
  260. package/src/components/pagination/QPagination.js +265 -188
  261. package/src/components/pagination/QPagination.json +87 -78
  262. package/src/components/pagination/QPagination.sass +14 -0
  263. package/src/components/parallax/QParallax.json +2 -6
  264. package/src/components/popup-edit/QPopupEdit.js +3 -3
  265. package/src/components/popup-edit/QPopupEdit.json +4 -10
  266. package/src/components/popup-proxy/QPopupProxy.json +0 -1
  267. package/src/components/radio/QRadio.json +1 -2
  268. package/src/components/range/QRange.json +2 -4
  269. package/src/components/rating/QRating.json +0 -1
  270. package/src/components/resize-observer/QResizeObserver.js +14 -10
  271. package/src/components/resize-observer/QResizeObserver.json +2 -4
  272. package/src/components/scroll-area/QScrollArea.js +15 -4
  273. package/src/components/scroll-area/QScrollArea.json +24 -50
  274. package/src/components/scroll-observer/QScrollObserver.js +2 -0
  275. package/src/components/scroll-observer/QScrollObserver.json +6 -12
  276. package/src/components/select/QSelect.js +20 -24
  277. package/src/components/select/QSelect.json +30 -65
  278. package/src/components/select/QSelect.sass +2 -2
  279. package/src/components/slide-item/QSlideItem.json +1 -2
  280. package/src/components/slide-transition/QSlideTransition.json +0 -1
  281. package/src/components/slider/use-slider.json +33 -70
  282. package/src/components/spinner/QSpinner.json +0 -1
  283. package/src/components/splitter/QSplitter.json +1 -2
  284. package/src/components/stepper/QStep.js +7 -5
  285. package/src/components/tab-panels/QTabPanel.js +1 -1
  286. package/src/components/table/QTable.js +3 -3
  287. package/src/components/table/QTable.json +118 -239
  288. package/src/components/tabs/QRouteTab.json +0 -1
  289. package/src/components/tabs/QTabs.js +0 -7
  290. package/src/components/tabs/QTabs.json +1 -3
  291. package/src/components/tabs/use-tab.js +5 -3
  292. package/src/components/time/QTime.json +10 -20
  293. package/src/components/timeline/QTimelineEntry.js +5 -3
  294. package/src/components/toolbar/QToolbar.js +1 -1
  295. package/src/components/tooltip/QTooltip.js +3 -6
  296. package/src/components/tooltip/QTooltip.json +0 -4
  297. package/src/components/tree/QTree.js +6 -6
  298. package/src/components/tree/QTree.json +15 -31
  299. package/src/components/uploader/QUploader.json +13 -22
  300. package/src/components/uploader/QUploaderAddTrigger.js +7 -3
  301. package/src/components/uploader/xhr-uploader-plugin.js +1 -1
  302. package/src/components/uploader/xhr-uploader-plugin.json +25 -50
  303. package/src/components/virtual-scroll/QVirtualScroll.json +5 -10
  304. package/src/components/virtual-scroll/use-virtual-scroll.js +1 -1
  305. package/src/components/virtual-scroll/use-virtual-scroll.json +8 -19
  306. package/src/composables/private/use-field.js +1 -1
  307. package/src/composables/private/use-field.json +2 -3
  308. package/src/composables/private/use-file.js +10 -1
  309. package/src/composables/private/use-file.json +4 -13
  310. package/src/composables/private/use-model-toggle.js +3 -3
  311. package/src/composables/private/use-panel.js +2 -2
  312. package/src/composables/private/use-panel.json +0 -2
  313. package/src/composables/private/use-portal.js +5 -1
  314. package/src/composables/private/use-portal.json +7 -1
  315. package/src/composables/private/use-transition.js +17 -11
  316. package/src/composables/private/use-transition.json +0 -1
  317. package/src/composables/private/use-validate.json +1 -3
  318. package/src/directives/Intersection.json +26 -53
  319. package/src/directives/Morph.json +4 -8
  320. package/src/directives/Mutation.json +6 -12
  321. package/src/directives/Scroll.json +2 -4
  322. package/src/directives/TouchHold.json +3 -6
  323. package/src/directives/TouchPan.json +7 -14
  324. package/src/directives/TouchRepeat.json +6 -12
  325. package/src/directives/TouchSwipe.json +3 -6
  326. package/src/plugins/BottomSheet.json +1 -2
  327. package/src/plugins/Cookies.json +2 -4
  328. package/src/plugins/Dialog.json +32 -72
  329. package/src/plugins/Loading.json +6 -11
  330. package/src/plugins/LoadingBar.json +3 -6
  331. package/src/plugins/Notify.json +4 -5
  332. package/src/plugins/Platform.json +3 -6
  333. package/src/plugins/Screen.json +9 -18
  334. package/src/utils/private/global-dialog.json +6 -12
  335. package/src/utils/private/portal.js +4 -4
  336. package/src/utils/private/symbols.js +2 -0
  337. package/src/utils/private/web-storage.json +6 -10
@@ -51,7 +51,6 @@
51
51
  "returns": {
52
52
  "type": "Promise<any>",
53
53
  "desc": "Returns the router's navigation promise",
54
- "__exemption": [ "examples" ],
55
54
  "addedIn": "v2.9"
56
55
  }
57
56
  }
@@ -597,13 +597,6 @@ export default createComponent({
597
597
  }
598
598
  }
599
599
 
600
- /*
601
- * Vue has an aggressive diff (in-place replacement) so we cannot
602
- * ensure that the instance getting destroyed is the actual tab
603
- * reported here. As a result, we cannot use its name or check
604
- * if it's a route one to make the necessary updates. We need to
605
- * always check the existing list again and infer the changes.
606
- */
607
600
  function unregisterTab (tabData) {
608
601
  tabDataList.splice(tabDataList.indexOf(tabData), 1)
609
602
  tabDataListLen.value--
@@ -35,7 +35,6 @@
35
35
  "desc": "Horizontal alignment the tabs within the tabs container",
36
36
  "default": "center",
37
37
  "values": [ "left", "center", "right", "justify" ],
38
- "examples": [ "right" ],
39
38
  "category": "content"
40
39
  },
41
40
 
@@ -43,7 +42,6 @@
43
42
  "type": [ "Number", "String" ],
44
43
  "desc": "Breakpoint (in pixels) of tabs container width at which the tabs automatically turn to a justify alignment",
45
44
  "default": 600,
46
- "examples": [ ":breakpoint=\"500\"" ],
47
45
  "category": "content|behavior"
48
46
  },
49
47
 
@@ -77,7 +75,7 @@
77
75
  "desc": "The class to be set on the active tab",
78
76
  "examples": [ "my-active-class" ],
79
77
  "category": "style",
80
- "addedIn": "2.1.4"
78
+ "addedIn": "v2.1.4"
81
79
  },
82
80
 
83
81
  "left-icon": {
@@ -6,7 +6,7 @@ import Ripple from '../../directives/Ripple.js'
6
6
 
7
7
  import { hMergeSlot } from '../../utils/private/render.js'
8
8
  import { isKeyCode, shouldIgnoreKey } from '../../utils/private/key-composition.js'
9
- import { tabsKey } from '../../utils/private/symbols.js'
9
+ import { tabsKey, emptyRenderFn } from '../../utils/private/symbols.js'
10
10
  import { stopAndPrevent } from '../../utils/event.js'
11
11
  import uid from '../../utils/uid.js'
12
12
  import { isDeepEqual } from '../../utils/is.js'
@@ -41,9 +41,11 @@ export const useTabProps = {
41
41
  }
42
42
 
43
43
  export default function (props, slots, emit, routeData) {
44
- const $tabs = inject(tabsKey, () => {
44
+ const $tabs = inject(tabsKey, emptyRenderFn)
45
+ if ($tabs === emptyRenderFn) {
45
46
  console.error('QTab/QRouteTab component needs to be child of QTabs')
46
- })
47
+ return emptyRenderFn
48
+ }
47
49
 
48
50
  const { proxy } = getCurrentInstance()
49
51
 
@@ -43,18 +43,15 @@
43
43
  "params": {
44
44
  "hr": {
45
45
  "type": "Number",
46
- "desc": "Hour",
47
- "examples": [ 15 ]
46
+ "desc": "Hour"
48
47
  },
49
48
  "min": {
50
49
  "type": [ "Number", "null" ],
51
- "desc": "Minutes",
52
- "examples": [ 38 ]
50
+ "desc": "Minutes"
53
51
  },
54
52
  "sec": {
55
53
  "type": [ "Number", "null" ],
56
- "desc": "Seconds",
57
- "examples": [ 12 ]
54
+ "desc": "Seconds"
58
55
  }
59
56
  },
60
57
  "returns": null,
@@ -124,44 +121,37 @@
124
121
  "year": {
125
122
  "type": "Number",
126
123
  "required": true,
127
- "desc": "The year",
128
- "__exemption": [ "examples" ]
124
+ "desc": "The year"
129
125
  },
130
126
  "month": {
131
127
  "type": "Number",
132
128
  "required": true,
133
- "desc": "The month",
134
- "__exemption": [ "examples" ]
129
+ "desc": "The month"
135
130
  },
136
131
  "day": {
137
132
  "type": "Number",
138
133
  "required": true,
139
- "desc": "The day of the month",
140
- "__exemption": [ "examples" ]
134
+ "desc": "The day of the month"
141
135
  },
142
136
  "hour": {
143
137
  "type": "Number",
144
138
  "required": true,
145
- "desc": "The hour",
146
- "__exemption": [ "examples" ]
139
+ "desc": "The hour"
147
140
  },
148
141
  "minute": {
149
142
  "type": "Number",
150
143
  "required": true,
151
- "desc": "The minute",
152
- "__exemption": [ "examples" ]
144
+ "desc": "The minute"
153
145
  },
154
146
  "second": {
155
147
  "type": "Number",
156
148
  "required": true,
157
- "desc": "The second",
158
- "__exemption": [ "examples" ]
149
+ "desc": "The second"
159
150
  },
160
151
  "millisecond": {
161
152
  "type": "Number",
162
153
  "required": true,
163
- "desc": "The millisecond",
164
- "__exemption": [ "examples" ]
154
+ "desc": "The millisecond"
165
155
  },
166
156
  "changed": {
167
157
  "type": "Boolean",
@@ -4,7 +4,7 @@ import QIcon from '../icon/QIcon.js'
4
4
 
5
5
  import { createComponent } from '../../utils/private/create.js'
6
6
  import { hSlot, hUniqueSlot } from '../../utils/private/render.js'
7
- import { timelineKey } from '../../utils/private/symbols.js'
7
+ import { timelineKey, emptyRenderFn } from '../../utils/private/symbols.js'
8
8
 
9
9
  export default createComponent({
10
10
  name: 'QTimelineEntry',
@@ -32,9 +32,11 @@ export default createComponent({
32
32
  },
33
33
 
34
34
  setup (props, { slots }) {
35
- const $timeline = inject(timelineKey, () => {
35
+ const $timeline = inject(timelineKey, emptyRenderFn)
36
+ if ($timeline === emptyRenderFn) {
36
37
  console.error('QTimelineEntry needs to be child of QTimeline')
37
- })
38
+ return emptyRenderFn
39
+ }
38
40
 
39
41
  const classes = computed(() =>
40
42
  `q-timeline__entry q-timeline__entry--${ props.side }`
@@ -16,6 +16,6 @@ export default createComponent({
16
16
  + (props.inset === true ? ' q-toolbar--inset' : '')
17
17
  )
18
18
 
19
- return () => h('div', { class: classes.value }, hSlot(slots.default))
19
+ return () => h('div', { class: classes.value, role: 'toolbar' }, hSlot(slots.default))
20
20
  }
21
21
  })
@@ -94,7 +94,7 @@ export default createComponent({
94
94
 
95
95
  const { registerTick, removeTick } = useTick()
96
96
  const { registerTimeout } = useTimeout()
97
- const { transition, transitionStyle } = useTransition(props, showing)
97
+ const { transitionProps, transitionStyle } = useTransition(props)
98
98
  const { localScrollTarget, changeScrollEvent, unconfigureScrollTarget } = useScrollTarget(props, configureScrollTarget)
99
99
 
100
100
  const { anchorEl, canShow, anchorEvents } = useAnchor({ showing, configureAnchorEl })
@@ -285,16 +285,13 @@ export default createComponent({
285
285
  attrs.style,
286
286
  transitionStyle.value
287
287
  ],
288
- role: 'complementary'
288
+ role: 'tooltip'
289
289
  }, hSlot(slots.default))
290
290
  : null
291
291
  }
292
292
 
293
293
  function renderPortalContent () {
294
- return h(Transition, {
295
- name: transition.value,
296
- appear: true
297
- }, getTooltipContent)
294
+ return h(Transition, transitionProps.value, getTooltipContent)
298
295
  }
299
296
 
300
297
  onBeforeUnmount(anchorCleanup)
@@ -35,7 +35,6 @@
35
35
  "bottom left", "bottom middle", "bottom right", "bottom start", "bottom end"
36
36
  ],
37
37
  "default": "bottom middle",
38
- "examples": [ "top left", "bottom right" ],
39
38
  "category": "position"
40
39
  },
41
40
 
@@ -48,7 +47,6 @@
48
47
  "bottom left", "bottom middle", "bottom right", "bottom start", "bottom end"
49
48
  ],
50
49
  "default": "top middle",
51
- "examples": [ "top left", "bottom right" ],
52
50
  "category": "position"
53
51
  },
54
52
 
@@ -86,7 +84,6 @@
86
84
  "type": "Number",
87
85
  "desc": "Configure Tooltip to appear with delay",
88
86
  "default": 0,
89
- "examples": [ ":delay=\"550\"" ],
90
87
  "category": "behavior"
91
88
  },
92
89
 
@@ -94,7 +91,6 @@
94
91
  "type": "Number",
95
92
  "desc": "Configure Tooltip to disappear with delay",
96
93
  "default": 0,
97
- "examples": [ ":hide-delay=\"650\"" ],
98
94
  "category": "behavior"
99
95
  }
100
96
  },
@@ -78,9 +78,9 @@ export default createComponent({
78
78
  'update:expanded',
79
79
  'update:ticked',
80
80
  'update:selected',
81
- 'lazy-load',
82
- 'after-show',
83
- 'after-hide'
81
+ 'lazyLoad',
82
+ 'afterShow',
83
+ 'afterHide'
84
84
  ],
85
85
 
86
86
  setup (props, { slots, emit }) {
@@ -329,7 +329,7 @@ export default createComponent({
329
329
  if (Array.isArray(node[ props.childrenKey ]) !== true) {
330
330
  node[ props.childrenKey ] = []
331
331
  }
332
- emit('lazy-load', {
332
+ emit('lazyLoad', {
333
333
  node,
334
334
  key,
335
335
  done: children => {
@@ -476,11 +476,11 @@ export default createComponent({
476
476
  }
477
477
 
478
478
  function onShow () {
479
- emit('after-show')
479
+ emit('afterShow')
480
480
  }
481
481
 
482
482
  function onHide () {
483
- emit('after-hide')
483
+ emit('afterHide')
484
484
  }
485
485
 
486
486
  function getNode (node) {
@@ -147,13 +147,11 @@
147
147
  "params": {
148
148
  "node": {
149
149
  "type": "Object",
150
- "desc": "Node currently being filtered",
151
- "__exemption": [ "examples" ]
150
+ "desc": "Node currently being filtered"
152
151
  },
153
152
  "filter": {
154
153
  "type": "String",
155
- "desc": "Filter text to match against",
156
- "__exemption": [ "examples" ]
154
+ "desc": "Filter text to match against"
157
155
  }
158
156
  },
159
157
  "returns": {
@@ -167,7 +165,6 @@
167
165
  "type": "Number",
168
166
  "desc": "Toggle animation duration (in milliseconds)",
169
167
  "default": 300,
170
- "examples": [ ":duration=\"500\"" ],
171
168
  "category": "style"
172
169
  },
173
170
 
@@ -207,13 +204,11 @@
207
204
  },
208
205
  "node": {
209
206
  "type": "Object",
210
- "desc": "Node object",
211
- "__exemption": [ "examples" ]
207
+ "desc": "Node object"
212
208
  },
213
209
  "key": {
214
210
  "type": "Any",
215
- "desc": "Node's key",
216
- "__exemption": [ "examples" ]
211
+ "desc": "Node's key"
217
212
  },
218
213
  "color": {
219
214
  "type": "String",
@@ -247,13 +242,11 @@
247
242
  },
248
243
  "node": {
249
244
  "type": "Object",
250
- "desc": "Node object",
251
- "__exemption": [ "examples" ]
245
+ "desc": "Node object"
252
246
  },
253
247
  "key": {
254
248
  "type": "Any",
255
- "desc": "Node's key",
256
- "__exemption": [ "examples" ]
249
+ "desc": "Node's key"
257
250
  },
258
251
  "color": {
259
252
  "type": "String",
@@ -287,13 +280,11 @@
287
280
  },
288
281
  "node": {
289
282
  "type": "Object",
290
- "desc": "Node object",
291
- "__exemption": [ "examples" ]
283
+ "desc": "Node object"
292
284
  },
293
285
  "key": {
294
286
  "type": "Any",
295
- "desc": "Node's key",
296
- "__exemption": [ "examples" ]
287
+ "desc": "Node's key"
297
288
  },
298
289
  "color": {
299
290
  "type": "String",
@@ -327,13 +318,11 @@
327
318
  },
328
319
  "node": {
329
320
  "type": "Object",
330
- "desc": "Node object",
331
- "__exemption": [ "examples" ]
321
+ "desc": "Node object"
332
322
  },
333
323
  "key": {
334
324
  "type": "Any",
335
- "desc": "Node's key",
336
- "__exemption": [ "examples" ]
325
+ "desc": "Node's key"
337
326
  },
338
327
  "color": {
339
328
  "type": "String",
@@ -370,8 +359,7 @@
370
359
  "node": {
371
360
  "type": "Object",
372
361
  "required": true,
373
- "desc": "The node to which the new nodes (the children) will be appended",
374
- "__exemption": [ "examples" ]
362
+ "desc": "The node to which the new nodes (the children) will be appended"
375
363
  },
376
364
  "key": {
377
365
  "type": "String",
@@ -387,8 +375,7 @@
387
375
  "children": {
388
376
  "type": "Array",
389
377
  "desc": "Array of nodes",
390
- "default": "[]",
391
- "__exemption": [ "examples" ]
378
+ "default": "[]"
392
379
  }
393
380
  },
394
381
  "returns": null
@@ -449,8 +436,7 @@
449
436
  },
450
437
  "returns": {
451
438
  "type": "Object",
452
- "desc": "Requested node",
453
- "__exemption": [ "examples" ]
439
+ "desc": "Requested node"
454
440
  }
455
441
  },
456
442
 
@@ -458,8 +444,7 @@
458
444
  "desc": "Get array of nodes that are ticked",
459
445
  "returns": {
460
446
  "type": "Array",
461
- "desc": "Ticked node objects",
462
- "__exemption": [ "examples" ]
447
+ "desc": "Ticked node objects"
463
448
  }
464
449
  },
465
450
 
@@ -467,8 +452,7 @@
467
452
  "desc": "Get array of nodes that are expanded",
468
453
  "returns": {
469
454
  "type": "Array",
470
- "desc": "Expanded node objects",
471
- "__exemption": [ "examples" ]
455
+ "desc": "Expanded node objects"
472
456
  }
473
457
  },
474
458
 
@@ -94,8 +94,7 @@
94
94
  "params": {
95
95
  "files": {
96
96
  "type": "Array",
97
- "desc": "Array of files that were added",
98
- "__exemption": ["examples"]
97
+ "desc": "Array of files that were added"
99
98
  }
100
99
  }
101
100
  },
@@ -105,8 +104,7 @@
105
104
  "params": {
106
105
  "files": {
107
106
  "type": "Array",
108
- "desc": "Array of files that were removed",
109
- "__exemption": ["examples"]
107
+ "desc": "Array of files that were removed"
110
108
  }
111
109
  }
112
110
  },
@@ -145,10 +143,9 @@
145
143
  "desc": "Remove specified file from the queue",
146
144
  "params": {
147
145
  "file": {
148
- "type": "Object",
149
- "desc": "File to remove (instance of File)",
150
- "required": true,
151
- "__exemption": ["examples"]
146
+ "type": "File",
147
+ "desc": "The file to remove",
148
+ "required": true
152
149
  }
153
150
  }
154
151
  },
@@ -157,10 +154,9 @@
157
154
  "desc": "Update the status of a file",
158
155
  "params": {
159
156
  "file": {
160
- "type": "Object",
161
- "desc": "File to update (instance of File)",
162
- "required": true,
163
- "__exemption": ["examples"]
157
+ "type": "File",
158
+ "desc": "The file to update",
159
+ "required": true
164
160
  },
165
161
  "status": {
166
162
  "type": "String",
@@ -171,8 +167,7 @@
171
167
  "uploadedSize": {
172
168
  "type": "Number",
173
169
  "desc": "The number of uploaded bytes of the file; Is required explicitly only when status is NOT 'uploaded'",
174
- "required": true,
175
- "__exemption": ["examples"]
170
+ "required": true
176
171
  }
177
172
  }
178
173
  },
@@ -211,26 +206,22 @@
211
206
  "computedProps": {
212
207
  "files": {
213
208
  "type": "Array",
214
- "desc": "List of all files",
215
- "__exemption": [ "examples" ]
209
+ "desc": "List of all files"
216
210
  },
217
211
 
218
212
  "queuedFiles": {
219
213
  "type": "Array",
220
- "desc": "List of files that are waiting to be uploaded",
221
- "__exemption": [ "examples" ]
214
+ "desc": "List of files that are waiting to be uploaded"
222
215
  },
223
216
 
224
217
  "uploadedFiles": {
225
218
  "type": "Array",
226
- "desc": "List of files that have been uploaded",
227
- "__exemption": [ "examples" ]
219
+ "desc": "List of files that have been uploaded"
228
220
  },
229
221
 
230
222
  "uploadedSize": {
231
223
  "type": "Number",
232
- "desc": "Size of all uploaded files in bytes",
233
- "examples": [ 1024 ]
224
+ "desc": "Size of all uploaded files in bytes"
234
225
  },
235
226
 
236
227
  "uploadSizeLabel": {
@@ -1,14 +1,18 @@
1
1
  import { inject } from 'vue'
2
2
 
3
3
  import { createComponent } from '../../utils/private/create.js'
4
- import { uploaderKey } from '../../utils/private/symbols.js'
4
+ import { uploaderKey, emptyRenderFn } from '../../utils/private/symbols.js'
5
5
 
6
6
  export default createComponent({
7
7
  name: 'QUploaderAddTrigger',
8
8
 
9
9
  setup () {
10
- return inject(uploaderKey, () => {
10
+ const $trigger = inject(uploaderKey, emptyRenderFn)
11
+
12
+ if ($trigger === emptyRenderFn) {
11
13
  console.error('QUploaderAddTrigger needs to be child of QUploader')
12
- })
14
+ }
15
+
16
+ return $trigger
13
17
  }
14
18
  })
@@ -104,7 +104,7 @@ function injectPlugin ({ props, emit, helpers }) {
104
104
  helpers.queuedFiles.value = helpers.queuedFiles.value.concat(files)
105
105
  files.forEach(f => { helpers.updateFileStatus(f, 'failed') })
106
106
 
107
- emit('factory-failed', err, files)
107
+ emit('factoryFailed', err, files)
108
108
  workingThreads.value--
109
109
  }
110
110
  }