quasar 2.10.0 → 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 (306) 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/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 +0 -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/svg-bootstrap-icons.umd.prod.js +1 -1
  91. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  92. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  93. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  94. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  95. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  96. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  97. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  98. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  99. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  100. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  101. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  102. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  103. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  104. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  105. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  106. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  107. package/dist/icon-set/themify.umd.prod.js +1 -1
  108. package/dist/lang/ar-TN.umd.prod.js +1 -1
  109. package/dist/lang/ar.umd.prod.js +1 -1
  110. package/dist/lang/az-Latn.umd.prod.js +1 -1
  111. package/dist/lang/bg.umd.prod.js +1 -1
  112. package/dist/lang/bn.umd.prod.js +1 -1
  113. package/dist/lang/ca.umd.prod.js +1 -1
  114. package/dist/lang/cs.umd.prod.js +1 -1
  115. package/dist/lang/da.umd.prod.js +1 -1
  116. package/dist/lang/de.umd.prod.js +1 -1
  117. package/dist/lang/el.umd.prod.js +1 -1
  118. package/dist/lang/en-GB.umd.prod.js +1 -1
  119. package/dist/lang/en-US.umd.prod.js +1 -1
  120. package/dist/lang/eo.umd.prod.js +1 -1
  121. package/dist/lang/es.umd.prod.js +1 -1
  122. package/dist/lang/et.umd.prod.js +1 -1
  123. package/dist/lang/eu.umd.prod.js +1 -1
  124. package/dist/lang/fa-IR.umd.prod.js +1 -1
  125. package/dist/lang/fa.umd.prod.js +1 -1
  126. package/dist/lang/fi.umd.prod.js +1 -1
  127. package/dist/lang/fr.umd.prod.js +1 -1
  128. package/dist/lang/gn.umd.prod.js +1 -1
  129. package/dist/lang/he.umd.prod.js +1 -1
  130. package/dist/lang/hr.umd.prod.js +1 -1
  131. package/dist/lang/hu.umd.prod.js +1 -1
  132. package/dist/lang/id.umd.prod.js +1 -1
  133. package/dist/lang/is.umd.prod.js +1 -1
  134. package/dist/lang/it.umd.prod.js +1 -1
  135. package/dist/lang/ja.umd.prod.js +1 -1
  136. package/dist/lang/km.umd.prod.js +1 -1
  137. package/dist/lang/ko-KR.umd.prod.js +1 -1
  138. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  139. package/dist/lang/kz.umd.prod.js +1 -1
  140. package/dist/lang/lt.umd.prod.js +1 -1
  141. package/dist/lang/lu.umd.prod.js +1 -1
  142. package/dist/lang/lv.umd.prod.js +1 -1
  143. package/dist/lang/ml.umd.prod.js +1 -1
  144. package/dist/lang/mm.umd.prod.js +1 -1
  145. package/dist/lang/ms.umd.prod.js +1 -1
  146. package/dist/lang/my.umd.prod.js +1 -1
  147. package/dist/lang/nb-NO.umd.prod.js +1 -1
  148. package/dist/lang/nl.umd.prod.js +1 -1
  149. package/dist/lang/pl.umd.prod.js +1 -1
  150. package/dist/lang/pt-BR.umd.prod.js +1 -1
  151. package/dist/lang/pt.umd.prod.js +1 -1
  152. package/dist/lang/ro.umd.prod.js +1 -1
  153. package/dist/lang/ru.umd.prod.js +1 -1
  154. package/dist/lang/sk.umd.prod.js +1 -1
  155. package/dist/lang/sl.umd.prod.js +1 -1
  156. package/dist/lang/sm.umd.prod.js +1 -1
  157. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  158. package/dist/lang/sr.umd.prod.js +1 -1
  159. package/dist/lang/sv.umd.prod.js +1 -1
  160. package/dist/lang/ta.umd.prod.js +1 -1
  161. package/dist/lang/th.umd.prod.js +1 -1
  162. package/dist/lang/tr.umd.prod.js +1 -1
  163. package/dist/lang/ug.umd.prod.js +1 -1
  164. package/dist/lang/uk.umd.prod.js +1 -1
  165. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  166. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  167. package/dist/lang/vi.umd.prod.js +1 -1
  168. package/dist/lang/zh-CN.umd.prod.js +1 -1
  169. package/dist/lang/zh-TW.umd.prod.js +1 -1
  170. package/dist/quasar.cjs.prod.js +2 -2
  171. package/dist/quasar.css +2 -2
  172. package/dist/quasar.esm.js +166 -158
  173. package/dist/quasar.esm.prod.js +2 -2
  174. package/dist/quasar.prod.css +1 -1
  175. package/dist/quasar.rtl.css +2 -2
  176. package/dist/quasar.rtl.prod.css +1 -1
  177. package/dist/quasar.sass +3 -3
  178. package/dist/quasar.umd.js +166 -158
  179. package/dist/quasar.umd.prod.js +2 -2
  180. package/dist/types/index.d.ts +50 -55
  181. package/dist/vetur/quasar-attributes.json +4 -0
  182. package/dist/vetur/quasar-tags.json +2 -1
  183. package/dist/web-types/web-types.json +142 -132
  184. package/package.json +3 -3
  185. package/src/api.extends.json +1 -2
  186. package/src/components/ajax-bar/QAjaxBar.json +5 -11
  187. package/src/components/breadcrumbs/QBreadcrumbs.json +0 -2
  188. package/src/components/breadcrumbs/QBreadcrumbsEl.json +1 -2
  189. package/src/components/btn/QBtn.json +1 -3
  190. package/src/components/btn/__tests__/QBtn.spec.js +87 -14
  191. package/src/components/btn/__tests__/use-btn.spec.js +385 -58
  192. package/src/components/btn-dropdown/QBtnDropdown.js +4 -11
  193. package/src/components/btn-dropdown/QBtnDropdown.json +0 -2
  194. package/src/components/btn-toggle/QBtnToggle.json +2 -4
  195. package/src/components/carousel/QCarousel.json +4 -9
  196. package/src/components/carousel/QCarouselControl.json +0 -1
  197. package/src/components/checkbox/use-checkbox.json +1 -2
  198. package/src/components/circular-progress/QCircularProgress.json +0 -5
  199. package/src/components/color/QColor.json +0 -1
  200. package/src/components/date/QDate.js +3 -3
  201. package/src/components/date/QDate.json +28 -56
  202. package/src/components/dialog/QDialog.js +30 -40
  203. package/src/components/dialog/QDialog.json +9 -2
  204. package/src/components/dialog-bottom-sheet/BottomSheet.js +1 -2
  205. package/src/components/dialog-plugin/DialogPlugin.js +4 -4
  206. package/src/components/drawer/QDrawer.js +5 -5
  207. package/src/components/drawer/QDrawer.json +0 -4
  208. package/src/components/editor/QEditor.json +3 -6
  209. package/src/components/expansion-item/QExpansionItem.js +3 -3
  210. package/src/components/expansion-item/QExpansionItem.json +3 -8
  211. package/src/components/fab/QFab.json +0 -1
  212. package/src/components/fab/use-fab.json +0 -1
  213. package/src/components/field/QField.json +0 -1
  214. package/src/components/file/QFile.js +4 -1
  215. package/src/components/file/QFile.json +19 -20
  216. package/src/components/footer/QFooter.json +0 -1
  217. package/src/components/form/QForm.js +5 -3
  218. package/src/components/form/QForm.json +2 -4
  219. package/src/components/header/QHeader.json +0 -4
  220. package/src/components/infinite-scroll/QInfiniteScroll.json +9 -6
  221. package/src/components/inner-loading/QInnerLoading.js +2 -5
  222. package/src/components/input/QInput.js +4 -1
  223. package/src/components/input/QInput.json +11 -7
  224. package/src/components/input/use-mask.js +1 -1
  225. package/src/components/intersection/QIntersection.json +0 -1
  226. package/src/components/item/QItem.json +1 -2
  227. package/src/components/item/QItemLabel.json +0 -1
  228. package/src/components/item/QList.js +7 -2
  229. package/src/components/item/QList.json +7 -0
  230. package/src/components/knob/QKnob.js +3 -3
  231. package/src/components/knob/QKnob.json +3 -12
  232. package/src/components/layout/QLayout.js +1 -1
  233. package/src/components/layout/QLayout.json +6 -12
  234. package/src/components/linear-progress/QLinearProgress.json +0 -2
  235. package/src/components/menu/QMenu.js +8 -5
  236. package/src/components/menu/QMenu.json +0 -2
  237. package/src/components/option-group/QOptionGroup.json +2 -5
  238. package/src/components/page/QPage.json +3 -6
  239. package/src/components/page-scroller/QPageScroller.json +0 -2
  240. package/src/components/page-sticky/QPageSticky.json +0 -1
  241. package/src/components/pagination/QPagination.json +5 -13
  242. package/src/components/parallax/QParallax.json +2 -6
  243. package/src/components/popup-edit/QPopupEdit.js +3 -3
  244. package/src/components/popup-edit/QPopupEdit.json +4 -10
  245. package/src/components/popup-proxy/QPopupProxy.json +0 -1
  246. package/src/components/radio/QRadio.json +1 -2
  247. package/src/components/range/QRange.json +2 -4
  248. package/src/components/rating/QRating.json +0 -1
  249. package/src/components/resize-observer/QResizeObserver.json +2 -4
  250. package/src/components/scroll-area/QScrollArea.js +15 -4
  251. package/src/components/scroll-area/QScrollArea.json +24 -50
  252. package/src/components/scroll-observer/QScrollObserver.js +2 -0
  253. package/src/components/scroll-observer/QScrollObserver.json +6 -12
  254. package/src/components/select/QSelect.js +20 -24
  255. package/src/components/select/QSelect.json +30 -65
  256. package/src/components/select/QSelect.sass +2 -2
  257. package/src/components/slide-item/QSlideItem.json +1 -2
  258. package/src/components/slide-transition/QSlideTransition.json +0 -1
  259. package/src/components/slider/use-slider.json +33 -70
  260. package/src/components/spinner/QSpinner.json +0 -1
  261. package/src/components/splitter/QSplitter.json +1 -2
  262. package/src/components/table/QTable.js +3 -3
  263. package/src/components/table/QTable.json +118 -239
  264. package/src/components/tabs/QRouteTab.json +0 -1
  265. package/src/components/tabs/QTabs.json +0 -2
  266. package/src/components/time/QTime.json +10 -20
  267. package/src/components/tooltip/QTooltip.js +2 -5
  268. package/src/components/tooltip/QTooltip.json +0 -4
  269. package/src/components/tree/QTree.js +6 -6
  270. package/src/components/tree/QTree.json +15 -31
  271. package/src/components/uploader/QUploader.json +13 -22
  272. package/src/components/uploader/xhr-uploader-plugin.js +1 -1
  273. package/src/components/uploader/xhr-uploader-plugin.json +25 -50
  274. package/src/components/virtual-scroll/QVirtualScroll.json +5 -10
  275. package/src/components/virtual-scroll/use-virtual-scroll.js +1 -1
  276. package/src/components/virtual-scroll/use-virtual-scroll.json +8 -19
  277. package/src/composables/private/use-field.js +1 -1
  278. package/src/composables/private/use-field.json +2 -3
  279. package/src/composables/private/use-file.json +4 -13
  280. package/src/composables/private/use-model-toggle.js +3 -3
  281. package/src/composables/private/use-panel.js +2 -2
  282. package/src/composables/private/use-panel.json +0 -2
  283. package/src/composables/private/use-portal.js +5 -1
  284. package/src/composables/private/use-portal.json +7 -1
  285. package/src/composables/private/use-transition.js +17 -11
  286. package/src/composables/private/use-transition.json +0 -1
  287. package/src/composables/private/use-validate.json +1 -3
  288. package/src/directives/Intersection.json +26 -53
  289. package/src/directives/Morph.json +4 -8
  290. package/src/directives/Mutation.json +6 -12
  291. package/src/directives/Scroll.json +2 -4
  292. package/src/directives/TouchHold.json +3 -6
  293. package/src/directives/TouchPan.json +7 -14
  294. package/src/directives/TouchRepeat.json +6 -12
  295. package/src/directives/TouchSwipe.json +3 -6
  296. package/src/plugins/BottomSheet.json +1 -2
  297. package/src/plugins/Cookies.json +2 -4
  298. package/src/plugins/Dialog.json +32 -72
  299. package/src/plugins/Loading.json +6 -11
  300. package/src/plugins/LoadingBar.json +3 -6
  301. package/src/plugins/Notify.json +4 -5
  302. package/src/plugins/Platform.json +3 -6
  303. package/src/plugins/Screen.json +9 -18
  304. package/src/utils/private/global-dialog.json +6 -12
  305. package/src/utils/private/portal.js +4 -4
  306. package/src/utils/private/web-storage.json +6 -10
@@ -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
  })
@@ -317,7 +320,7 @@ export default createComponent({
317
320
  }
318
321
 
319
322
  function onEscapeKey (evt) {
320
- emit('escape-key')
323
+ emit('escapeKey')
321
324
  hide(evt)
322
325
  }
323
326
 
@@ -345,7 +348,7 @@ export default createComponent({
345
348
  function renderPortalContent () {
346
349
  return h(
347
350
  Transition,
348
- { name: transition.value, appear: true },
351
+ transitionProps.value,
349
352
  () => (
350
353
  showing.value === true
351
354
  ? 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
  }
@@ -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
  },
@@ -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
 
@@ -24,14 +24,12 @@
24
24
  "height": {
25
25
  "type": "Number",
26
26
  "required": true,
27
- "desc": "Layout height",
28
- "examples": [ 822 ]
27
+ "desc": "Layout height"
29
28
  },
30
29
  "width": {
31
30
  "type": "Number",
32
31
  "required": true,
33
- "desc": "Layout width",
34
- "examples": [ 822 ]
32
+ "desc": "Layout width"
35
33
  }
36
34
  }
37
35
  }
@@ -1,4 +1,4 @@
1
- import { h, ref, computed, withDirectives, onActivated, onDeactivated, onBeforeUnmount, getCurrentInstance } from 'vue'
1
+ import { h, ref, computed, watch, withDirectives, onActivated, onDeactivated, onBeforeUnmount, getCurrentInstance } from 'vue'
2
2
 
3
3
  import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
4
4
 
@@ -142,7 +142,7 @@ export default createComponent({
142
142
  scroll.horizontal.percentage = computed(() => {
143
143
  const diff = scroll.horizontal.size.value - container.horizontal.value
144
144
  if (diff <= 0) { return 0 }
145
- const p = between(scroll.horizontal.position.value / diff, 0, 1)
145
+ const p = between(Math.abs(scroll.horizontal.position.value) / diff, 0, 1)
146
146
  return Math.round(p * 10000) / 10000
147
147
  })
148
148
  scroll.horizontal.thumbHidden = computed(() =>
@@ -168,7 +168,7 @@ export default createComponent({
168
168
  return {
169
169
  ...props.thumbStyle,
170
170
  ...props.horizontalThumbStyle,
171
- left: `${ scroll.horizontal.thumbStart.value }px`,
171
+ [ proxy.$q.lang.rtl === true ? 'right' : 'left' ]: `${ scroll.horizontal.thumbStart.value }px`,
172
172
  width: `${ scroll.horizontal.thumbSize.value }px`
173
173
  }
174
174
  })
@@ -362,6 +362,15 @@ export default createComponent({
362
362
 
363
363
  let scrollPosition = null
364
364
 
365
+ watch(() => proxy.$q.lang.rtl, rtl => {
366
+ if (targetRef.value !== null) {
367
+ setHorizontalScrollPosition(
368
+ targetRef.value,
369
+ Math.abs(scroll.horizontal.position.value) * (rtl === true ? -1 : 1)
370
+ )
371
+ }
372
+ })
373
+
365
374
  onDeactivated(() => {
366
375
  scrollPosition = {
367
376
  top: scroll.vertical.position.value,
@@ -398,7 +407,9 @@ export default createComponent({
398
407
  setScrollPercentage (axis, percentage, duration) {
399
408
  localSetScrollPosition(
400
409
  axis,
401
- percentage * (scroll[ axis ].size.value - container[ axis ].value),
410
+ percentage
411
+ * (scroll[ axis ].size.value - container[ axis ].value)
412
+ * (axis === 'horizontal' && proxy.$q.lang.rtl === true ? -1 : 1),
402
413
  duration
403
414
  )
404
415
  }
@@ -82,7 +82,6 @@
82
82
  "type": [ "Number", "String" ],
83
83
  "desc": "When content changes, the scrollbar appears; this delay defines the amount of time (in milliseconds) before scrollbars disappear again (if component is not hovered)",
84
84
  "default": 1000,
85
- "examples": [ 500, ":delay=\"550\"" ],
86
85
  "category": "behavior"
87
86
  },
88
87
 
@@ -115,51 +114,43 @@
115
114
  "verticalPosition": {
116
115
  "type": "Number",
117
116
  "required": true,
118
- "desc": "Vertical scroll position (in px)",
119
- "__exemption": [ "examples" ]
117
+ "desc": "Vertical scroll position (in px)"
120
118
  },
121
119
  "verticalPercentage": {
122
120
  "type": "Number",
123
121
  "required": true,
124
- "desc": "Vertical scroll percentage (0.0 <= x <= 1.0)",
125
- "__exemption": [ "examples" ]
122
+ "desc": "Vertical scroll percentage (0.0 <= x <= 1.0)"
126
123
  },
127
124
  "verticalSize": {
128
125
  "type": "Number",
129
126
  "required": true,
130
- "desc": "Vertical scroll size (in px)",
131
- "__exemption": [ "examples" ]
127
+ "desc": "Vertical scroll size (in px)"
132
128
  },
133
129
  "verticalContainerSize": {
134
130
  "type": "Number",
135
131
  "required": true,
136
- "desc": "Height of the container (in px)",
137
- "__exemption": [ "examples" ]
132
+ "desc": "Height of the container (in px)"
138
133
  },
139
134
 
140
135
  "horizontalPosition": {
141
136
  "type": "Number",
142
137
  "required": true,
143
- "desc": "Horizontal scroll position (in px)",
144
- "__exemption": [ "examples" ]
138
+ "desc": "Horizontal scroll position (in px)"
145
139
  },
146
140
  "horizontalPercentage": {
147
141
  "type": "Number",
148
142
  "required": true,
149
- "desc": "Horizontal scroll percentage (0.0 <= x <= 1.0)",
150
- "__exemption": [ "examples" ]
143
+ "desc": "Horizontal scroll percentage (0.0 <= x <= 1.0)"
151
144
  },
152
145
  "horizontalSize": {
153
146
  "type": "Number",
154
147
  "required": true,
155
- "desc": "Horizontal scroll size (in px)",
156
- "__exemption": [ "examples" ]
148
+ "desc": "Horizontal scroll size (in px)"
157
149
  },
158
150
  "horizontalContainerSize": {
159
151
  "type": "Number",
160
152
  "required": true,
161
- "desc": "Width of the container (in px)",
162
- "__exemption": [ "examples" ]
153
+ "desc": "Width of the container (in px)"
163
154
  }
164
155
  }
165
156
  }
@@ -181,56 +172,47 @@
181
172
  "returns": {
182
173
  "type": "Object",
183
174
  "desc": "Scroll information",
184
- "__exemption": [ "examples" ],
185
175
  "definition": {
186
176
  "verticalPosition": {
187
177
  "type": "Number",
188
178
  "required": true,
189
- "desc": "Vertical scroll position (in px)",
190
- "__exemption": [ "examples" ]
179
+ "desc": "Vertical scroll position (in px)"
191
180
  },
192
181
  "verticalPercentage": {
193
182
  "type": "Number",
194
183
  "required": true,
195
- "desc": "Vertical scroll percentage (0.0 <= x <= 1.0)",
196
- "__exemption": [ "examples" ]
184
+ "desc": "Vertical scroll percentage (0.0 <= x <= 1.0)"
197
185
  },
198
186
  "verticalSize": {
199
187
  "type": "Number",
200
188
  "required": true,
201
- "desc": "Vertical scroll size (in px)",
202
- "__exemption": [ "examples" ]
189
+ "desc": "Vertical scroll size (in px)"
203
190
  },
204
191
  "verticalContainerSize": {
205
192
  "type": "Number",
206
193
  "required": true,
207
- "desc": "Height of the container (in px)",
208
- "__exemption": [ "examples" ]
194
+ "desc": "Height of the container (in px)"
209
195
  },
210
196
 
211
197
  "horizontalPosition": {
212
198
  "type": "Number",
213
199
  "required": true,
214
- "desc": "Horizontal scroll position (in px)",
215
- "__exemption": [ "examples" ]
200
+ "desc": "Horizontal scroll position (in px)"
216
201
  },
217
202
  "horizontalPercentage": {
218
203
  "type": "Number",
219
204
  "required": true,
220
- "desc": "Horizontal scroll percentage (0.0 <= x <= 1.0)",
221
- "__exemption": [ "examples" ]
205
+ "desc": "Horizontal scroll percentage (0.0 <= x <= 1.0)"
222
206
  },
223
207
  "horizontalSize": {
224
208
  "type": "Number",
225
209
  "required": true,
226
- "desc": "Horizontal scroll size (in px)",
227
- "__exemption": [ "examples" ]
210
+ "desc": "Horizontal scroll size (in px)"
228
211
  },
229
212
  "horizontalContainerSize": {
230
213
  "type": "Number",
231
214
  "required": true,
232
- "desc": "Width of the container (in px)",
233
- "__exemption": [ "examples" ]
215
+ "desc": "Width of the container (in px)"
234
216
  }
235
217
  }
236
218
  }
@@ -245,14 +227,12 @@
245
227
  "top": {
246
228
  "type": "Number",
247
229
  "required": true,
248
- "desc": "Scroll offset from top (vertical)",
249
- "examples": [ 120 ]
230
+ "desc": "Scroll offset from top (vertical)"
250
231
  },
251
232
  "left": {
252
233
  "type": "Number",
253
234
  "required": true,
254
- "desc": "Scroll offset from left (horizontal)",
255
- "examples": [ 10 ]
235
+ "desc": "Scroll offset from left (horizontal)"
256
236
  }
257
237
  },
258
238
  "examples": [ "{ top: 10, left: 0 }" ]
@@ -268,14 +248,12 @@
268
248
  "top": {
269
249
  "type": "Number",
270
250
  "required": true,
271
- "desc": "Scroll percentage (0.0 <= x <= 1.0) offset from top (vertical)",
272
- "examples": [ 0.12 ]
251
+ "desc": "Scroll percentage (0.0 <= x <= 1.0) offset from top (vertical)"
273
252
  },
274
253
  "left": {
275
254
  "type": "Number",
276
255
  "required": true,
277
- "desc": "Scroll percentage (0.0 <= x <= 1.0) offset from left (horizontal)",
278
- "examples": [ 0.92 ]
256
+ "desc": "Scroll percentage (0.0 <= x <= 1.0) offset from left (horizontal)"
279
257
  }
280
258
  },
281
259
  "examples": [ "{ top: 0.212, left: 0 }" ]
@@ -294,13 +272,11 @@
294
272
  "offset": {
295
273
  "type": "Number",
296
274
  "required": true,
297
- "desc": "Scroll position offset from top (in pixels)",
298
- "examples": [ 220 ]
275
+ "desc": "Scroll position offset from top (in pixels)"
299
276
  },
300
277
  "duration": {
301
278
  "type": "Number",
302
- "desc": "Duration (in milliseconds) enabling animated scroll",
303
- "examples": [ 300 ]
279
+ "desc": "Duration (in milliseconds) enabling animated scroll"
304
280
  }
305
281
  }
306
282
  },
@@ -317,13 +293,11 @@
317
293
  "offset": {
318
294
  "type": "Number",
319
295
  "desc": "Scroll percentage (0.0 <= x <= 1.0) of the total scrolling size",
320
- "required": true,
321
- "examples": [ 220 ]
296
+ "required": true
322
297
  },
323
298
  "duration": {
324
299
  "type": "Number",
325
- "desc": "Duration (in milliseconds) enabling animated scroll",
326
- "examples": [ 300 ]
300
+ "desc": "Duration (in milliseconds) enabling animated scroll"
327
301
  }
328
302
  }
329
303
  }
@@ -119,6 +119,8 @@ export default createComponent({
119
119
 
120
120
  const { proxy } = getCurrentInstance()
121
121
 
122
+ watch(() => proxy.$q.lang.rtl, emitEvent)
123
+
122
124
  onMounted(() => {
123
125
  parentEl = proxy.$el.parentNode
124
126
  configureScrollTarget()