quasar 2.10.0 → 2.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. package/dist/api/Dialog.json +28 -69
  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/QBtn.json +0 -3
  12. package/dist/api/QBtnDropdown.json +0 -12
  13. package/dist/api/QCarousel.json +0 -10
  14. package/dist/api/QCarouselControl.json +0 -3
  15. package/dist/api/QCircularProgress.json +0 -23
  16. package/dist/api/QColor.json +0 -3
  17. package/dist/api/QDialog.json +18 -9
  18. package/dist/api/QDrawer.json +0 -6
  19. package/dist/api/QExpansionItem.json +0 -3
  20. package/dist/api/QFab.json +1 -6
  21. package/dist/api/QFabAction.json +1 -3
  22. package/dist/api/QField.json +1 -6
  23. package/dist/api/QFile.json +12 -29
  24. package/dist/api/QFooter.json +0 -3
  25. package/dist/api/QHeader.json +0 -6
  26. package/dist/api/QInfiniteScroll.json +9 -16
  27. package/dist/api/QInnerLoading.json +0 -4
  28. package/dist/api/QInput.json +8 -15
  29. package/dist/api/QIntersection.json +0 -4
  30. package/dist/api/QItemLabel.json +0 -5
  31. package/dist/api/QKnob.json +3 -36
  32. package/dist/api/QLayout.json +6 -24
  33. package/dist/api/QLinearProgress.json +0 -6
  34. package/dist/api/QList.json +15 -0
  35. package/dist/api/QMenu.json +7 -12
  36. package/dist/api/QOptionGroup.json +0 -3
  37. package/dist/api/QPage.json +2 -8
  38. package/dist/api/QPageScroller.json +0 -9
  39. package/dist/api/QPageSticky.json +0 -3
  40. package/dist/api/QPagination.json +4 -25
  41. package/dist/api/QParallax.json +2 -14
  42. package/dist/api/QPopupEdit.json +0 -8
  43. package/dist/api/QPopupProxy.json +21 -4
  44. package/dist/api/QRange.json +5 -32
  45. package/dist/api/QRating.json +0 -4
  46. package/dist/api/QResizeObserver.json +2 -8
  47. package/dist/api/QScrollArea.json +8 -36
  48. package/dist/api/QScrollObserver.json +6 -24
  49. package/dist/api/QSelect.json +18 -108
  50. package/dist/api/QSlideItem.json +1 -6
  51. package/dist/api/QSlideTransition.json +0 -4
  52. package/dist/api/QSlider.json +3 -24
  53. package/dist/api/QSpinner.json +0 -4
  54. package/dist/api/QSplitter.json +1 -4
  55. package/dist/api/QStepper.json +0 -7
  56. package/dist/api/QTabPanels.json +0 -7
  57. package/dist/api/QTable.json +43 -191
  58. package/dist/api/QTabs.json +0 -6
  59. package/dist/api/QTime.json +3 -12
  60. package/dist/api/QTooltip.json +7 -18
  61. package/dist/api/QTree.json +0 -3
  62. package/dist/api/QUploader.json +5 -16
  63. package/dist/api/QVirtualScroll.json +11 -56
  64. package/dist/api/Screen.json +9 -36
  65. package/dist/api/Scroll.json +2 -8
  66. package/dist/api/SessionStorage.json +4 -16
  67. package/dist/api/TouchHold.json +3 -12
  68. package/dist/api/TouchPan.json +7 -28
  69. package/dist/api/TouchRepeat.json +6 -24
  70. package/dist/api/TouchSwipe.json +3 -12
  71. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  72. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  73. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  74. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  75. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  76. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  77. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  78. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  79. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  80. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  81. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  82. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  83. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  84. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  85. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  86. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  87. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  88. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  89. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  90. package/dist/icon-set/mdi-v7.umd.prod.js +6 -0
  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-mdi-v7.umd.prod.js +6 -0
  108. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  109. package/dist/icon-set/themify.umd.prod.js +1 -1
  110. package/dist/lang/ar-TN.umd.prod.js +1 -1
  111. package/dist/lang/ar.umd.prod.js +1 -1
  112. package/dist/lang/az-Latn.umd.prod.js +1 -1
  113. package/dist/lang/bg.umd.prod.js +1 -1
  114. package/dist/lang/bn.umd.prod.js +1 -1
  115. package/dist/lang/ca.umd.prod.js +1 -1
  116. package/dist/lang/cs.umd.prod.js +1 -1
  117. package/dist/lang/da.umd.prod.js +1 -1
  118. package/dist/lang/de.umd.prod.js +1 -1
  119. package/dist/lang/el.umd.prod.js +1 -1
  120. package/dist/lang/en-GB.umd.prod.js +1 -1
  121. package/dist/lang/en-US.umd.prod.js +1 -1
  122. package/dist/lang/eo.umd.prod.js +1 -1
  123. package/dist/lang/es.umd.prod.js +1 -1
  124. package/dist/lang/et.umd.prod.js +1 -1
  125. package/dist/lang/eu.umd.prod.js +1 -1
  126. package/dist/lang/fa-IR.umd.prod.js +1 -1
  127. package/dist/lang/fa.umd.prod.js +1 -1
  128. package/dist/lang/fi.umd.prod.js +1 -1
  129. package/dist/lang/fr.umd.prod.js +1 -1
  130. package/dist/lang/gn.umd.prod.js +1 -1
  131. package/dist/lang/he.umd.prod.js +1 -1
  132. package/dist/lang/hr.umd.prod.js +1 -1
  133. package/dist/lang/hu.umd.prod.js +1 -1
  134. package/dist/lang/id.umd.prod.js +1 -1
  135. package/dist/lang/is.umd.prod.js +1 -1
  136. package/dist/lang/it.umd.prod.js +1 -1
  137. package/dist/lang/ja.umd.prod.js +1 -1
  138. package/dist/lang/km.umd.prod.js +1 -1
  139. package/dist/lang/ko-KR.umd.prod.js +1 -1
  140. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  141. package/dist/lang/kz.umd.prod.js +1 -1
  142. package/dist/lang/lt.umd.prod.js +1 -1
  143. package/dist/lang/lu.umd.prod.js +1 -1
  144. package/dist/lang/lv.umd.prod.js +1 -1
  145. package/dist/lang/ml.umd.prod.js +1 -1
  146. package/dist/lang/mm.umd.prod.js +1 -1
  147. package/dist/lang/ms.umd.prod.js +1 -1
  148. package/dist/lang/my.umd.prod.js +1 -1
  149. package/dist/lang/nb-NO.umd.prod.js +1 -1
  150. package/dist/lang/nl.umd.prod.js +1 -1
  151. package/dist/lang/pl.umd.prod.js +1 -1
  152. package/dist/lang/pt-BR.umd.prod.js +1 -1
  153. package/dist/lang/pt.umd.prod.js +1 -1
  154. package/dist/lang/ro.umd.prod.js +1 -1
  155. package/dist/lang/ru.umd.prod.js +1 -1
  156. package/dist/lang/sk.umd.prod.js +1 -1
  157. package/dist/lang/sl.umd.prod.js +1 -1
  158. package/dist/lang/sm.umd.prod.js +1 -1
  159. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  160. package/dist/lang/sr.umd.prod.js +1 -1
  161. package/dist/lang/sv.umd.prod.js +1 -1
  162. package/dist/lang/ta.umd.prod.js +1 -1
  163. package/dist/lang/th.umd.prod.js +1 -1
  164. package/dist/lang/tr.umd.prod.js +1 -1
  165. package/dist/lang/ug.umd.prod.js +1 -1
  166. package/dist/lang/uk.umd.prod.js +1 -1
  167. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  168. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  169. package/dist/lang/vi.umd.prod.js +1 -1
  170. package/dist/lang/zh-CN.umd.prod.js +1 -1
  171. package/dist/lang/zh-TW.umd.prod.js +1 -1
  172. package/dist/quasar.cjs.prod.js +2 -2
  173. package/dist/quasar.css +3 -3
  174. package/dist/quasar.esm.js +223 -192
  175. package/dist/quasar.esm.prod.js +2 -2
  176. package/dist/quasar.prod.css +1 -1
  177. package/dist/quasar.rtl.css +10 -3
  178. package/dist/quasar.rtl.prod.css +1 -1
  179. package/dist/quasar.sass +5 -4
  180. package/dist/quasar.umd.js +222 -191
  181. package/dist/quasar.umd.prod.js +2 -2
  182. package/dist/types/api/dialog.d.ts +101 -0
  183. package/dist/types/api/qpopupproxy.d.ts +3 -0
  184. package/dist/types/api.d.ts +2 -0
  185. package/dist/types/index.d.ts +56 -97
  186. package/dist/vetur/quasar-attributes.json +4 -0
  187. package/dist/vetur/quasar-tags.json +2 -1
  188. package/dist/web-types/web-types.json +142 -132
  189. package/icon-set/mdi-v7.js +146 -0
  190. package/icon-set/mdi-v7.mjs +141 -0
  191. package/icon-set/svg-mdi-v7.js +224 -0
  192. package/icon-set/svg-mdi-v7.mjs +224 -0
  193. package/package.json +4 -4
  194. package/src/api.extends.json +1 -2
  195. package/src/components/ajax-bar/QAjaxBar.json +5 -11
  196. package/src/components/breadcrumbs/QBreadcrumbs.json +0 -2
  197. package/src/components/breadcrumbs/QBreadcrumbsEl.json +1 -2
  198. package/src/components/btn/QBtn.json +1 -3
  199. package/src/components/btn/__tests__/QBtn.spec.js +87 -14
  200. package/src/components/btn/__tests__/use-btn.spec.js +385 -58
  201. package/src/components/btn-dropdown/QBtnDropdown.js +4 -12
  202. package/src/components/btn-dropdown/QBtnDropdown.json +0 -2
  203. package/src/components/btn-toggle/QBtnToggle.json +2 -4
  204. package/src/components/carousel/QCarousel.json +4 -9
  205. package/src/components/carousel/QCarouselControl.json +0 -1
  206. package/src/components/checkbox/use-checkbox.json +1 -2
  207. package/src/components/circular-progress/QCircularProgress.json +0 -5
  208. package/src/components/color/QColor.json +0 -1
  209. package/src/components/date/QDate.js +6 -4
  210. package/src/components/date/QDate.json +28 -56
  211. package/src/components/dialog/QDialog.js +34 -41
  212. package/src/components/dialog/QDialog.json +9 -2
  213. package/src/components/dialog-bottom-sheet/BottomSheet.js +1 -2
  214. package/src/components/dialog-plugin/DialogPlugin.js +4 -4
  215. package/src/components/drawer/QDrawer.js +5 -5
  216. package/src/components/drawer/QDrawer.json +0 -4
  217. package/src/components/editor/QEditor.json +3 -6
  218. package/src/components/expansion-item/QExpansionItem.js +3 -4
  219. package/src/components/expansion-item/QExpansionItem.json +3 -8
  220. package/src/components/fab/QFab.js +3 -6
  221. package/src/components/fab/QFab.json +0 -1
  222. package/src/components/fab/QFab.sass +2 -1
  223. package/src/components/fab/use-fab.json +0 -1
  224. package/src/components/field/QField.json +0 -1
  225. package/src/components/file/QFile.js +4 -1
  226. package/src/components/file/QFile.json +19 -20
  227. package/src/components/footer/QFooter.json +0 -1
  228. package/src/components/form/QForm.js +5 -3
  229. package/src/components/form/QForm.json +2 -4
  230. package/src/components/header/QHeader.json +0 -4
  231. package/src/components/img/QImg.js +20 -19
  232. package/src/components/infinite-scroll/QInfiniteScroll.json +9 -6
  233. package/src/components/inner-loading/QInnerLoading.js +2 -5
  234. package/src/components/input/QInput.js +12 -3
  235. package/src/components/input/QInput.json +11 -7
  236. package/src/components/input/use-mask.js +3 -1
  237. package/src/components/intersection/QIntersection.json +0 -1
  238. package/src/components/item/QItem.json +1 -2
  239. package/src/components/item/QItemLabel.json +0 -1
  240. package/src/components/item/QList.js +7 -2
  241. package/src/components/item/QList.json +7 -0
  242. package/src/components/knob/QKnob.js +3 -3
  243. package/src/components/knob/QKnob.json +3 -12
  244. package/src/components/layout/QLayout.js +1 -1
  245. package/src/components/layout/QLayout.json +6 -12
  246. package/src/components/linear-progress/QLinearProgress.json +0 -2
  247. package/src/components/menu/QMenu.js +12 -6
  248. package/src/components/menu/QMenu.json +0 -2
  249. package/src/components/option-group/QOptionGroup.json +2 -5
  250. package/src/components/page/QPage.json +3 -6
  251. package/src/components/page-scroller/QPageScroller.json +0 -2
  252. package/src/components/page-sticky/QPageSticky.json +0 -1
  253. package/src/components/pagination/QPagination.json +5 -13
  254. package/src/components/parallax/QParallax.json +2 -6
  255. package/src/components/popup-edit/QPopupEdit.js +3 -3
  256. package/src/components/popup-edit/QPopupEdit.json +4 -10
  257. package/src/components/popup-proxy/QPopupProxy.js +6 -0
  258. package/src/components/popup-proxy/QPopupProxy.json +19 -1
  259. package/src/components/radio/QRadio.json +1 -2
  260. package/src/components/range/QRange.json +2 -4
  261. package/src/components/rating/QRating.json +0 -1
  262. package/src/components/resize-observer/QResizeObserver.json +2 -4
  263. package/src/components/scroll-area/QScrollArea.js +15 -4
  264. package/src/components/scroll-area/QScrollArea.json +24 -50
  265. package/src/components/scroll-observer/QScrollObserver.js +2 -0
  266. package/src/components/scroll-observer/QScrollObserver.json +6 -12
  267. package/src/components/select/QSelect.js +28 -27
  268. package/src/components/select/QSelect.json +30 -65
  269. package/src/components/select/QSelect.sass +2 -2
  270. package/src/components/slide-item/QSlideItem.json +1 -2
  271. package/src/components/slide-transition/QSlideTransition.json +0 -1
  272. package/src/components/slider/use-slider.json +33 -70
  273. package/src/components/spinner/QSpinner.json +0 -1
  274. package/src/components/splitter/QSplitter.json +1 -2
  275. package/src/components/table/QTable.js +3 -3
  276. package/src/components/table/QTable.json +118 -239
  277. package/src/components/tabs/QRouteTab.json +0 -1
  278. package/src/components/tabs/QTabs.json +0 -2
  279. package/src/components/time/QTime.json +10 -20
  280. package/src/components/tooltip/QTooltip.js +2 -5
  281. package/src/components/tooltip/QTooltip.json +0 -4
  282. package/src/components/tree/QTree.js +6 -6
  283. package/src/components/tree/QTree.json +15 -31
  284. package/src/components/uploader/QUploader.json +13 -22
  285. package/src/components/uploader/xhr-uploader-plugin.js +1 -1
  286. package/src/components/uploader/xhr-uploader-plugin.json +25 -50
  287. package/src/components/virtual-scroll/QVirtualScroll.json +5 -10
  288. package/src/components/virtual-scroll/use-virtual-scroll.js +1 -1
  289. package/src/components/virtual-scroll/use-virtual-scroll.json +8 -19
  290. package/src/composables/private/use-field.js +1 -1
  291. package/src/composables/private/use-field.json +2 -3
  292. package/src/composables/private/use-file.json +4 -13
  293. package/src/composables/private/use-model-toggle.js +3 -3
  294. package/src/composables/private/use-panel.js +2 -2
  295. package/src/composables/private/use-panel.json +0 -2
  296. package/src/composables/private/use-portal.js +5 -1
  297. package/src/composables/private/use-portal.json +7 -1
  298. package/src/composables/private/use-transition.js +17 -11
  299. package/src/composables/private/use-transition.json +0 -1
  300. package/src/composables/private/use-validate.json +1 -3
  301. package/src/directives/Intersection.json +26 -53
  302. package/src/directives/Morph.json +4 -8
  303. package/src/directives/Mutation.json +6 -12
  304. package/src/directives/Scroll.json +2 -4
  305. package/src/directives/TouchHold.json +3 -6
  306. package/src/directives/TouchPan.json +7 -14
  307. package/src/directives/TouchRepeat.json +6 -12
  308. package/src/directives/TouchSwipe.json +3 -6
  309. package/src/plugins/BottomSheet.json +1 -2
  310. package/src/plugins/Cookies.json +2 -4
  311. package/src/plugins/Dialog.json +35 -73
  312. package/src/plugins/Loading.json +6 -11
  313. package/src/plugins/LoadingBar.json +3 -6
  314. package/src/plugins/Notify.json +4 -5
  315. package/src/plugins/Platform.json +3 -6
  316. package/src/plugins/Screen.json +9 -18
  317. package/src/utils/private/global-dialog.json +6 -12
  318. package/src/utils/private/portal.js +4 -4
  319. package/src/utils/private/web-storage.json +6 -10
@@ -25,7 +25,6 @@
25
25
  "lines": {
26
26
  "type": [ "Number", "String" ],
27
27
  "desc": "Apply ellipsis when there's not enough space to render on the specified number of lines;",
28
- "examples": [ "1", "3", ":lines=\"2\"" ],
29
28
  "category": "content|behavior"
30
29
  }
31
30
  },
@@ -13,7 +13,12 @@ export default createComponent({
13
13
  bordered: Boolean,
14
14
  dense: Boolean,
15
15
  separator: Boolean,
16
- padding: Boolean
16
+ padding: Boolean,
17
+
18
+ tag: {
19
+ type: String,
20
+ default: 'div'
21
+ }
17
22
  },
18
23
 
19
24
  setup (props, { slots }) {
@@ -29,6 +34,6 @@ export default createComponent({
29
34
  + (props.padding === true ? ' q-list--padding' : '')
30
35
  )
31
36
 
32
- return () => h('div', { class: classes.value, role: 'list' }, hSlot(slots.default))
37
+ return () => h(props.tag, { class: classes.value }, hSlot(slots.default))
33
38
  }
34
39
  })
@@ -26,6 +26,13 @@
26
26
  "type": "Boolean",
27
27
  "desc": "Applies a material design-like padding on top and bottom",
28
28
  "category": "content"
29
+ },
30
+
31
+ "tag": {
32
+ "extends": "tag",
33
+ "default": "div",
34
+ "examples": [ "div", "ul", "ol" ],
35
+ "addedIn": "v2.10.1"
29
36
  }
30
37
  },
31
38
 
@@ -45,7 +45,7 @@ export default createComponent({
45
45
  readonly: Boolean
46
46
  },
47
47
 
48
- emits: [ 'update:modelValue', 'change', 'drag-value' ],
48
+ emits: [ 'update:modelValue', 'change', 'dragValue' ],
49
49
 
50
50
  setup (props, { slots, emit }) {
51
51
  const { proxy } = getCurrentInstance()
@@ -92,7 +92,7 @@ export default createComponent({
92
92
  )
93
93
  )
94
94
 
95
- const decimals = computed(() => (String(props.step).trim('0').split('.')[ 1 ] || '').length)
95
+ const decimals = computed(() => (String(props.step).trim().split('.')[ 1 ] || '').length)
96
96
  const step = computed(() => (props.step === 0 ? 1 : props.step))
97
97
  const instantFeedback = computed(() => props.instantFeedback === true || dragging.value === true)
98
98
 
@@ -227,7 +227,7 @@ export default createComponent({
227
227
 
228
228
  newModel = between(newModel, innerMin.value, innerMax.value)
229
229
 
230
- emit('drag-value', newModel)
230
+ emit('dragValue', newModel)
231
231
 
232
232
  if (model.value !== newModel) {
233
233
  model.value = newModel
@@ -16,21 +16,18 @@
16
16
  "min": {
17
17
  "type": "Number",
18
18
  "desc": "The minimum value that the model (the knob value) should start at",
19
- "examples": [ "20", "5" ],
20
19
  "category": "model"
21
20
  },
22
21
 
23
22
  "max": {
24
23
  "type": "Number",
25
24
  "desc": "The maximum value that the model (the knob value) should go to",
26
- "examples": [ "100", "50" ],
27
25
  "category": "model"
28
26
  },
29
27
 
30
28
  "inner-min": {
31
29
  "type": "Number",
32
30
  "desc": "Inner minimum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be higher or equal to 'min' prop; Defaults to 'min' prop",
33
- "examples": [ ":inner-min=\"0\"" ],
34
31
  "category": "model",
35
32
  "addedIn": "v2.5.4"
36
33
  },
@@ -38,16 +35,14 @@
38
35
  "inner-max": {
39
36
  "type": "Number",
40
37
  "desc": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop",
41
- "examples": [ ":inner-max=\"100\"" ],
42
38
  "category": "model",
43
39
  "addedIn": "v2.5.4"
44
40
  },
45
41
 
46
42
  "step": {
47
43
  "type": "Number",
48
- "default": "1",
44
+ "default": 1,
49
45
  "desc": "A number representing steps in the value of the model, while adjusting the knob",
50
- "examples": [ "1", "5" ],
51
46
  "category": "model"
52
47
  },
53
48
 
@@ -89,7 +84,6 @@
89
84
  "type": "Number",
90
85
  "default": 0.2,
91
86
  "desc": "Thickness of progress arc as a ratio (0.0 < x < 1.0) of component size",
92
- "examples": [ 1, 0.3 ],
93
87
  "category": "style"
94
88
  },
95
89
 
@@ -97,7 +91,6 @@
97
91
  "type": "Number",
98
92
  "desc": "Angle to rotate progress arc by",
99
93
  "default": 0,
100
- "examples": [ 0, 40, 90 ],
101
94
  "category": "content"
102
95
  },
103
96
 
@@ -142,8 +135,7 @@
142
135
  "params": {
143
136
  "value": {
144
137
  "type": "Number",
145
- "desc": "New model value",
146
- "examples": [ 12 ]
138
+ "desc": "New model value"
147
139
  }
148
140
  }
149
141
  },
@@ -153,8 +145,7 @@
153
145
  "params": {
154
146
  "value": {
155
147
  "type": "Number",
156
- "desc": "New model value",
157
- "examples": [ 12 ]
148
+ "desc": "New model value"
158
149
  }
159
150
  }
160
151
  }
@@ -90,7 +90,7 @@ export default createComponent({
90
90
  if (height.value !== newHeight) {
91
91
  resized = true
92
92
  height.value = newHeight
93
- props.onScrollHeight !== void 0 && emit('scroll-height', newHeight)
93
+ props.onScrollHeight !== void 0 && emit('scrollHeight', newHeight)
94
94
  updateScrollbarWidth()
95
95
  }
96
96
  if (width.value !== newWidth) {
@@ -38,14 +38,12 @@
38
38
  "height": {
39
39
  "type": "Number",
40
40
  "required": true,
41
- "desc": "Layout height",
42
- "examples": [ 575 ]
41
+ "desc": "Layout height"
43
42
  },
44
43
  "width": {
45
44
  "type": "Number",
46
45
  "required": true,
47
- "desc": "Layout height",
48
- "examples": [ 575 ]
46
+ "desc": "Layout height"
49
47
  }
50
48
  }
51
49
  }
@@ -62,8 +60,7 @@
62
60
  "position": {
63
61
  "type": "Number",
64
62
  "required": true,
65
- "desc": "Scroll offset from top (vertical)",
66
- "examples": [ 120 ]
63
+ "desc": "Scroll offset from top (vertical)"
67
64
  },
68
65
 
69
66
  "direction": {
@@ -80,15 +77,13 @@
80
77
  "delta": {
81
78
  "type": "Number",
82
79
  "required": true,
83
- "desc": "Vertical delta distance since event was last emitted",
84
- "examples": [ 120 ]
80
+ "desc": "Vertical delta distance since event was last emitted"
85
81
  },
86
82
 
87
83
  "inflectionPoint": {
88
84
  "type": "Number",
89
85
  "required": true,
90
- "desc": "Scroll offset from top (vertical)",
91
- "examples": [ 120 ]
86
+ "desc": "Scroll offset from top (vertical)"
92
87
  }
93
88
  }
94
89
  }
@@ -100,8 +95,7 @@
100
95
  "params": {
101
96
  "height": {
102
97
  "type": "Number",
103
- "desc": "New scroll height of layout",
104
- "examples": [ 1442 ]
98
+ "desc": "New scroll height of layout"
105
99
  }
106
100
  }
107
101
  }
@@ -10,14 +10,12 @@
10
10
  "type": "Number",
11
11
  "desc": "Progress value (0.0 < x < 1.0)",
12
12
  "default": 0,
13
- "examples": [ ":value=\"0.28\"" ],
14
13
  "category": "model"
15
14
  },
16
15
 
17
16
  "buffer": {
18
17
  "type": "Number",
19
18
  "desc": "Optional buffer value (0.0 < x < 1.0)",
20
- "examples": [ ":buffer=\"0.78\"" ],
21
19
  "category": "behavior"
22
20
  },
23
21
 
@@ -79,7 +79,7 @@ export default createComponent({
79
79
 
80
80
  emits: [
81
81
  ...useModelToggleEmits,
82
- 'click', 'escape-key'
82
+ 'click', 'escapeKey'
83
83
  ],
84
84
 
85
85
  setup (props, { slots, emit, attrs }) {
@@ -100,7 +100,7 @@ export default createComponent({
100
100
  const isDark = useDark(props, $q)
101
101
  const { registerTick, removeTick } = useTick()
102
102
  const { registerTimeout } = useTimeout()
103
- const { transition, transitionStyle } = useTransition(props, showing)
103
+ const { transitionProps, transitionStyle } = useTransition(props)
104
104
  const { localScrollTarget, changeScrollEvent, unconfigureScrollTarget } = useScrollTarget(props, configureScrollTarget)
105
105
 
106
106
  const { anchorEl, canShow } = useAnchor({ showing })
@@ -180,7 +180,10 @@ export default createComponent({
180
180
  let node = innerRef.value
181
181
 
182
182
  if (node && node.contains(document.activeElement) !== true) {
183
- node = node.querySelector('[autofocus], [data-autofocus]') || node
183
+ node = node.querySelector('[autofocus][tabindex], [data-autofocus][tabindex]')
184
+ || node.querySelector('[autofocus] [tabindex], [data-autofocus] [tabindex]')
185
+ || node.querySelector('[autofocus], [data-autofocus]')
186
+ || node
184
187
  node.focus({ preventScroll: true })
185
188
  }
186
189
  })
@@ -255,7 +258,10 @@ export default createComponent({
255
258
  || evt.qClickOutside !== true
256
259
  )
257
260
  ) {
258
- refocusTarget.focus()
261
+ ((evt && evt.type.indexOf('key') === 0
262
+ ? refocusTarget.closest('[tabindex]:not([tabindex^="-"])')
263
+ : void 0
264
+ ) || refocusTarget).focus()
259
265
  refocusTarget = null
260
266
  }
261
267
 
@@ -317,7 +323,7 @@ export default createComponent({
317
323
  }
318
324
 
319
325
  function onEscapeKey (evt) {
320
- emit('escape-key')
326
+ emit('escapeKey')
321
327
  hide(evt)
322
328
  }
323
329
 
@@ -345,7 +351,7 @@ export default createComponent({
345
351
  function renderPortalContent () {
346
352
  return h(
347
353
  Transition,
348
- { name: transition.value, appear: true },
354
+ transitionProps.value,
349
355
  () => (
350
356
  showing.value === true
351
357
  ? h('div', {
@@ -30,7 +30,6 @@
30
30
  "center left", "center middle", "center right", "center start", "center end",
31
31
  "bottom left", "bottom middle", "bottom right", "bottom start", "bottom end"
32
32
  ],
33
- "examples": [ "top left", "bottom right" ],
34
33
  "category": "position"
35
34
  },
36
35
 
@@ -42,7 +41,6 @@
42
41
  "center left", "center middle", "center right", "center start", "center end",
43
42
  "bottom left", "bottom middle", "bottom right", "bottom start", "bottom end"
44
43
  ],
45
- "examples": [ "top left", "bottom right" ],
46
44
  "category": "position"
47
45
  },
48
46
 
@@ -56,7 +56,6 @@
56
56
  "desc": "The type of input component to be used",
57
57
  "values": [ "radio", "checkbox", "toggle" ],
58
58
  "default": "radio",
59
- "examples": [ "checkbox" ],
60
59
  "category": "content"
61
60
  },
62
61
 
@@ -124,8 +123,7 @@
124
123
  "desc": "Any other props from QToggle, QCheckbox, or QRadio",
125
124
  "examples": [ "val=\"car\"", ":true-value=\"trueValue\"", "checked-icon=\"visibility\"" ]
126
125
  }
127
- },
128
- "__exemption": [ "examples" ]
126
+ }
129
127
  }
130
128
  },
131
129
  "addedIn": "v2.2"
@@ -159,8 +157,7 @@
159
157
  "desc": "Any other props from QToggle, QCheckbox, or QRadio",
160
158
  "examples": [ "val=\"car\"", ":true-value=\"trueValue\"", "checked-icon=\"visibility\"" ]
161
159
  }
162
- },
163
- "__exemption": [ "examples" ]
160
+ }
164
161
  }
165
162
  },
166
163
  "addedIn": "v2.2"
@@ -16,19 +16,16 @@
16
16
  "params": {
17
17
  "offset": {
18
18
  "type": "Number",
19
- "desc": "Header + Footer height (in pixels)",
20
- "examples": [ 152 ]
19
+ "desc": "Header + Footer height (in pixels)"
21
20
  },
22
21
  "height": {
23
22
  "type": "Number",
24
- "desc": "Value in pixels of container height (if containerized) or window height otherwise",
25
- "examples": [ 1200 ]
23
+ "desc": "Value in pixels of container height (if containerized) or window height otherwise"
26
24
  }
27
25
  },
28
26
  "returns": {
29
27
  "type": "Object",
30
- "desc": "Object with CSS properties to apply to Page DOM element",
31
- "__exemption": [ "examples" ]
28
+ "desc": "Object with CSS properties to apply to Page DOM element"
32
29
  },
33
30
  "default": "(see source code)",
34
31
  "examples": [ "(see source code)" ],
@@ -10,7 +10,6 @@
10
10
  "type": "Number",
11
11
  "desc": "Scroll offset (in pixels) from which point the component is shown on page; Measured from the top of the page (or from the bottom if in 'reverse' mode)",
12
12
  "default": 1000,
13
- "examples": [ 550 ],
14
13
  "category": "behavior"
15
14
  },
16
15
 
@@ -24,7 +23,6 @@
24
23
  "type": "Number",
25
24
  "desc": "Duration (in milliseconds) of the scrolling until it reaches its target",
26
25
  "default": 300,
27
- "examples": [ 500 ],
28
26
  "category": "behavior"
29
27
  },
30
28
 
@@ -13,7 +13,6 @@
13
13
  "bottom-right", "bottom-left",
14
14
  "top", "right", "bottom", "left"
15
15
  ],
16
- "examples": [ "top-right" ],
17
16
  "category": "position"
18
17
  },
19
18
 
@@ -7,15 +7,13 @@
7
7
  "model-value": {
8
8
  "extends": "model-value",
9
9
  "type": "Number",
10
- "desc": "Current page (must be between min/max)",
11
- "examples": [ 3 ]
10
+ "desc": "Current page (must be between min/max)"
12
11
  },
13
12
 
14
13
  "min": {
15
14
  "type": [ "Number", "String" ],
16
15
  "desc": "Minimum page (must be lower than 'max')",
17
16
  "default": 1,
18
- "examples": [ 3 ],
19
17
  "category": "model"
20
18
  },
21
19
 
@@ -23,7 +21,6 @@
23
21
  "type": [ "Number", "String" ],
24
22
  "desc": "Number of last page (must be higher than 'min')",
25
23
  "required": true,
26
- "examples": [ 10 ],
27
24
  "category": "model"
28
25
  },
29
26
 
@@ -71,14 +68,12 @@
71
68
  "params": {
72
69
  "page": {
73
70
  "type": "Number",
74
- "desc": "Page number to navigate to",
75
- "examples": [ 2 ]
71
+ "desc": "Page number to navigate to"
76
72
  }
77
73
  },
78
74
  "returns": {
79
75
  "type": [ "Object", "String" ],
80
- "desc": "Object or String that can be passed to a <router-link> as `to` parameter",
81
- "__exemption": [ "examples" ]
76
+ "desc": "Object or String that can be passed to a <router-link> as `to` parameter"
82
77
  },
83
78
  "examples": [ ":to-fn=\"page => ({ query: { page } })\"" ],
84
79
  "category": "content"
@@ -112,7 +107,6 @@
112
107
  "type": [ "Number", "String" ],
113
108
  "default": 0,
114
109
  "desc": "Maximum number of page links to display at a time; 0 means Infinite",
115
- "examples": [ 5 ],
116
110
  "category": "content"
117
111
  },
118
112
 
@@ -252,8 +246,7 @@
252
246
  "params": {
253
247
  "pageNumber": {
254
248
  "type": "Number",
255
- "desc": "Page number to go to",
256
- "examples": [ 3 ]
249
+ "desc": "Page number to go to"
257
250
  }
258
251
  }
259
252
  },
@@ -263,8 +256,7 @@
263
256
  "params": {
264
257
  "offset": {
265
258
  "type": "Number",
266
- "desc": "Offset page, can be negative or positive",
267
- "examples": [ 3 ]
259
+ "desc": "Offset page, can be negative or positive"
268
260
  }
269
261
  }
270
262
  }
@@ -21,14 +21,12 @@
21
21
  "type": "Number",
22
22
  "desc": "Height of component (in pixels)",
23
23
  "default": 500,
24
- "examples": [ ":height=\"1000\"" ],
25
24
  "category": "style"
26
25
  },
27
26
 
28
27
  "speed": {
29
28
  "type": "Number",
30
29
  "desc": "Speed of parallax effect (0.0 < x < 1.0)",
31
- "examples": [ ":speed=\"0.24\"" ],
32
30
  "category": "behavior"
33
31
  },
34
32
 
@@ -51,8 +49,7 @@
51
49
  "scope": {
52
50
  "percentScrolled": {
53
51
  "type": "Number",
54
- "desc": "Percentage (0.0 < x < 1.0) of scroll in regards to QParallax",
55
- "examples": [ 0.241 ]
52
+ "desc": "Percentage (0.0 < x < 1.0) of scroll in regards to QParallax"
56
53
  }
57
54
  }
58
55
  }
@@ -64,8 +61,7 @@
64
61
  "params": {
65
62
  "percentage": {
66
63
  "type": "Number",
67
- "desc": "Number between 0.0 and 1.0 defining the scrolled percentage of the component",
68
- "examples": [ 0.234 ]
64
+ "desc": "Number between 0.0 and 1.0 defining the scrolled percentage of the component"
69
65
  }
70
66
  }
71
67
  }
@@ -43,7 +43,7 @@ export default createComponent({
43
43
 
44
44
  emits: [
45
45
  'update:modelValue', 'save', 'cancel',
46
- 'before-show', 'show', 'before-hide', 'hide'
46
+ 'beforeShow', 'show', 'beforeHide', 'hide'
47
47
  ],
48
48
 
49
49
  setup (props, { slots, emit }) {
@@ -107,7 +107,7 @@ export default createComponent({
107
107
  validated = false
108
108
  initialValue.value = clone(props.modelValue)
109
109
  currentModel.value = clone(props.modelValue)
110
- emit('before-show')
110
+ emit('beforeShow')
111
111
  }
112
112
 
113
113
  function onShow () {
@@ -125,7 +125,7 @@ export default createComponent({
125
125
  }
126
126
  }
127
127
 
128
- emit('before-hide')
128
+ emit('beforeHide')
129
129
  }
130
130
 
131
131
  function onHide () {
@@ -93,7 +93,6 @@
93
93
  "center left", "center middle", "center right", "center start", "center end",
94
94
  "bottom left", "bottom middle", "bottom right", "bottom start", "bottom end"
95
95
  ],
96
- "examples": [ "top left", "bottom right" ],
97
96
  "category": "position"
98
97
  },
99
98
 
@@ -105,7 +104,6 @@
105
104
  "center left", "center middle", "center right", "center start", "center end",
106
105
  "bottom left", "bottom middle", "bottom right", "bottom start", "bottom end"
107
106
  ],
108
- "examples": [ "top left", "bottom right" ],
109
107
  "category": "position"
110
108
  },
111
109
 
@@ -232,13 +230,11 @@
232
230
  "params": {
233
231
  "value": {
234
232
  "type": "Any",
235
- "desc": "Validated value to be saved",
236
- "__exemption": [ "examples" ]
233
+ "desc": "Validated value to be saved"
237
234
  },
238
235
  "initialValue": {
239
236
  "type": "Any",
240
- "desc": "Initial value, before changes",
241
- "__exemption": [ "examples" ]
237
+ "desc": "Initial value, before changes"
242
238
  }
243
239
  }
244
240
  },
@@ -248,13 +244,11 @@
248
244
  "params": {
249
245
  "value": {
250
246
  "type": "Any",
251
- "desc": "Edited value",
252
- "__exemption": [ "examples" ]
247
+ "desc": "Edited value"
253
248
  },
254
249
  "initialValue": {
255
250
  "type": "Any",
256
- "desc": "Initial value, before changes",
257
- "__exemption": [ "examples" ]
251
+ "desc": "Initial value, before changes"
258
252
  }
259
253
  }
260
254
  }
@@ -6,6 +6,7 @@ import QMenu from '../menu/QMenu.js'
6
6
  import useAnchor, { useAnchorProps } from '../../composables/private/use-anchor.js'
7
7
 
8
8
  import { createComponent } from '../../utils/private/create.js'
9
+ import { injectProp } from '../../utils/private/inject-obj-prop.js'
9
10
 
10
11
  export default createComponent({
11
12
  name: 'QPopupProxy',
@@ -67,6 +68,11 @@ export default createComponent({
67
68
  toggle (evt) { popupRef.value.toggle(evt) }
68
69
  })
69
70
 
71
+ injectProp(proxy, 'currentComponent', () => ({
72
+ type: type.value,
73
+ ref: popupRef.value
74
+ }))
75
+
70
76
  return () => {
71
77
  const data = {
72
78
  ref: popupRef,
@@ -17,7 +17,6 @@
17
17
  "type": [ "Number", "String" ],
18
18
  "desc": "Breakpoint (in pixels) of window width/height (whichever is smaller) from where a Menu will get to be used instead of a Dialog",
19
19
  "default": 450,
20
- "examples": [ 992, ":breakpoint=\"1024\"" ],
21
20
  "category": "behavior"
22
21
  }
23
22
  },
@@ -62,5 +61,24 @@
62
61
  "toggle": {
63
62
  "extends": "toggle"
64
63
  }
64
+ },
65
+
66
+ "computedProps": {
67
+ "currentComponent": {
68
+ "type": "Object",
69
+ "desc": "Access current underlying component (QMenu or QDialog)",
70
+ "definition": {
71
+ "type": {
72
+ "type": "String",
73
+ "desc": "Component type",
74
+ "values": [ "dialog", "menu" ]
75
+ },
76
+ "ref": {
77
+ "type": "Component",
78
+ "tsType": "QPopupProxyInnerComponent",
79
+ "desc": "The actual component (QMenu or QDialog); Access it directly, without '.value'"
80
+ }
81
+ }
82
+ }
65
83
  }
66
84
  }
@@ -89,8 +89,7 @@
89
89
  "value": {
90
90
  "type": "Any",
91
91
  "desc": "New model value",
92
- "required": true,
93
- "__exemption": [ "examples" ]
92
+ "required": true
94
93
  },
95
94
  "evt": {
96
95
  "extends": "evt",
@@ -13,13 +13,11 @@
13
13
  "definition": {
14
14
  "min": {
15
15
  "type": [ "Number", "null" ],
16
- "desc": "Model value for left thumb",
17
- "examples": [ 2 ]
16
+ "desc": "Model value for left thumb"
18
17
  },
19
18
  "max": {
20
19
  "type": [ "Number", "null" ],
21
- "desc": "Model value for right thumb",
22
- "examples": [ 12 ]
20
+ "desc": "Model value for right thumb"
23
21
  }
24
22
  },
25
23
  "examples": [ "v-model=\"positionModel\"" ]
@@ -16,7 +16,6 @@
16
16
  "type": [ "Number", "String" ],
17
17
  "desc": "Number of icons to display",
18
18
  "default": 5,
19
- "examples": [ "3", ":max=\"5\"" ],
20
19
  "category": "general"
21
20
  },
22
21