quasar 2.3.2 → 2.4.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 (311) hide show
  1. package/dist/api/AppFullscreen.json +15 -8
  2. package/dist/api/BottomSheet.json +6 -0
  3. package/dist/api/Cookies.json +4 -3
  4. package/dist/api/Dialog.json +24 -10
  5. package/dist/api/Loading.json +0 -2
  6. package/dist/api/LoadingBar.json +8 -3
  7. package/dist/api/Morph.json +14 -7
  8. package/dist/api/Mutation.json +1 -1
  9. package/dist/api/Notify.json +41 -27
  10. package/dist/api/QAjaxBar.json +6 -3
  11. package/dist/api/QBreadcrumbs.json +8 -4
  12. package/dist/api/QBreadcrumbsEl.json +35 -12
  13. package/dist/api/QBtn.json +36 -17
  14. package/dist/api/QBtnDropdown.json +41 -20
  15. package/dist/api/QBtnToggle.json +7 -2
  16. package/dist/api/QCard.json +2 -1
  17. package/dist/api/QCardActions.json +2 -1
  18. package/dist/api/QCardSection.json +2 -1
  19. package/dist/api/QCarousel.json +10 -5
  20. package/dist/api/QCarouselControl.json +4 -2
  21. package/dist/api/QChatMessage.json +0 -4
  22. package/dist/api/QCheckbox.json +8 -4
  23. package/dist/api/QChip.json +2 -1
  24. package/dist/api/QCircularProgress.json +14 -7
  25. package/dist/api/QColor.json +6 -3
  26. package/dist/api/QDate.json +33 -5
  27. package/dist/api/QDialog.json +8 -4
  28. package/dist/api/QDrawer.json +10 -5
  29. package/dist/api/QEditor.json +10 -5
  30. package/dist/api/QExpansionItem.json +36 -13
  31. package/dist/api/QFab.json +41 -6
  32. package/dist/api/QFabAction.json +12 -2
  33. package/dist/api/QField.json +3 -1
  34. package/dist/api/QFile.json +8 -2
  35. package/dist/api/QFooter.json +2 -1
  36. package/dist/api/QForm.json +1 -1
  37. package/dist/api/QHeader.json +4 -2
  38. package/dist/api/QIcon.json +2 -1
  39. package/dist/api/QImg.json +8 -4
  40. package/dist/api/QInfiniteScroll.json +6 -3
  41. package/dist/api/QInnerLoading.json +8 -4
  42. package/dist/api/QInput.json +3 -1
  43. package/dist/api/QIntersection.json +4 -2
  44. package/dist/api/QItem.json +33 -11
  45. package/dist/api/QKnob.json +8 -4
  46. package/dist/api/QLayout.json +9 -1
  47. package/dist/api/QLinearProgress.json +4 -2
  48. package/dist/api/QMarkupTable.json +2 -1
  49. package/dist/api/QMenu.json +8 -4
  50. package/dist/api/QNoSsr.json +2 -1
  51. package/dist/api/QOptionGroup.json +76 -5
  52. package/dist/api/QPage.json +2 -1
  53. package/dist/api/QPageScroller.json +8 -4
  54. package/dist/api/QPageSticky.json +2 -1
  55. package/dist/api/QPagination.json +10 -6
  56. package/dist/api/QParallax.json +2 -1
  57. package/dist/api/QPopupEdit.json +5 -2
  58. package/dist/api/QPopupProxy.json +7 -4
  59. package/dist/api/QRange.json +600 -111
  60. package/dist/api/QRating.json +5 -2
  61. package/dist/api/QResizeObserver.json +4 -1
  62. package/dist/api/QRouteTab.json +35 -13
  63. package/dist/api/QScrollArea.json +29 -6
  64. package/dist/api/QScrollObserver.json +13 -1
  65. package/dist/api/QSelect.json +76 -47
  66. package/dist/api/QSeparator.json +2 -1
  67. package/dist/api/QSkeleton.json +8 -4
  68. package/dist/api/QSlideItem.json +9 -0
  69. package/dist/api/QSlideTransition.json +2 -1
  70. package/dist/api/QSlider.json +512 -43
  71. package/dist/api/QSpinner.json +2 -1
  72. package/dist/api/QSplitter.json +4 -2
  73. package/dist/api/QStep.json +2 -1
  74. package/dist/api/QStepper.json +6 -3
  75. package/dist/api/QTab.json +4 -2
  76. package/dist/api/QTabPanels.json +6 -3
  77. package/dist/api/QTable.json +154 -88
  78. package/dist/api/QTabs.json +4 -2
  79. package/dist/api/QTime.json +16 -4
  80. package/dist/api/QTimeline.json +4 -2
  81. package/dist/api/QTimelineEntry.json +4 -2
  82. package/dist/api/QToggle.json +8 -4
  83. package/dist/api/QTooltip.json +18 -9
  84. package/dist/api/QTree.json +34 -19
  85. package/dist/api/QUploader.json +28 -6
  86. package/dist/api/QVirtualScroll.json +26 -11
  87. package/dist/api/ScrollFire.json +1 -1
  88. package/dist/api/TouchHold.json +2 -1
  89. package/dist/api/TouchRepeat.json +2 -1
  90. package/dist/api/TouchSwipe.json +2 -1
  91. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  92. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  93. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  94. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  95. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  96. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  97. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  98. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  99. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  100. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  101. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  102. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  103. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  104. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  105. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  106. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  107. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  108. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  109. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  110. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  111. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  112. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  113. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  114. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  115. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  116. package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
  117. package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
  118. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  119. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  120. package/dist/icon-set/themify.umd.prod.js +1 -1
  121. package/dist/lang/ar.umd.prod.js +1 -1
  122. package/dist/lang/az-Latn.umd.prod.js +1 -1
  123. package/dist/lang/bg.umd.prod.js +1 -1
  124. package/dist/lang/bn.umd.prod.js +1 -1
  125. package/dist/lang/ca.umd.prod.js +1 -1
  126. package/dist/lang/cs.umd.prod.js +1 -1
  127. package/dist/lang/da.umd.prod.js +1 -1
  128. package/dist/lang/de.umd.prod.js +1 -1
  129. package/dist/lang/el.umd.prod.js +1 -1
  130. package/dist/lang/en-GB.umd.prod.js +1 -1
  131. package/dist/lang/en-US.umd.prod.js +1 -1
  132. package/dist/lang/eo.umd.prod.js +1 -1
  133. package/dist/lang/es.umd.prod.js +1 -1
  134. package/dist/lang/et.umd.prod.js +1 -1
  135. package/dist/lang/fa-IR.umd.prod.js +1 -1
  136. package/dist/lang/fa.umd.prod.js +1 -1
  137. package/dist/lang/fi.umd.prod.js +1 -1
  138. package/dist/lang/fr.umd.prod.js +1 -1
  139. package/dist/lang/gn.umd.prod.js +1 -1
  140. package/dist/lang/he.umd.prod.js +1 -1
  141. package/dist/lang/hr.umd.prod.js +1 -1
  142. package/dist/lang/hu.umd.prod.js +1 -1
  143. package/dist/lang/id.umd.prod.js +1 -1
  144. package/dist/lang/is.umd.prod.js +1 -1
  145. package/dist/lang/it.umd.prod.js +1 -1
  146. package/dist/lang/ja.umd.prod.js +1 -1
  147. package/dist/lang/km.umd.prod.js +1 -1
  148. package/dist/lang/ko-KR.umd.prod.js +1 -1
  149. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  150. package/dist/lang/lt.umd.prod.js +1 -1
  151. package/dist/lang/lu.umd.prod.js +1 -1
  152. package/dist/lang/lv.umd.prod.js +1 -1
  153. package/dist/lang/ml.umd.prod.js +1 -1
  154. package/dist/lang/ms.umd.prod.js +1 -1
  155. package/dist/lang/nb-NO.umd.prod.js +1 -1
  156. package/dist/lang/nl.umd.prod.js +1 -1
  157. package/dist/lang/pl.umd.prod.js +1 -1
  158. package/dist/lang/pt-BR.umd.prod.js +1 -1
  159. package/dist/lang/pt.umd.prod.js +1 -1
  160. package/dist/lang/ro.umd.prod.js +1 -1
  161. package/dist/lang/ru.umd.prod.js +1 -1
  162. package/dist/lang/sk.umd.prod.js +1 -1
  163. package/dist/lang/sl.umd.prod.js +1 -1
  164. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  165. package/dist/lang/sr.umd.prod.js +1 -1
  166. package/dist/lang/sv.umd.prod.js +1 -1
  167. package/dist/lang/ta.umd.prod.js +1 -1
  168. package/dist/lang/th.umd.prod.js +1 -1
  169. package/dist/lang/tr.umd.prod.js +1 -1
  170. package/dist/lang/ug.umd.prod.js +1 -1
  171. package/dist/lang/uk.umd.prod.js +1 -1
  172. package/dist/lang/vi.umd.prod.js +1 -1
  173. package/dist/lang/zh-CN.umd.prod.js +1 -1
  174. package/dist/lang/zh-TW.umd.prod.js +1 -1
  175. package/dist/quasar.cjs.prod.js +2 -2
  176. package/dist/quasar.css +268 -184
  177. package/dist/quasar.esm.prod.js +2 -2
  178. package/dist/quasar.prod.css +1 -1
  179. package/dist/quasar.rtl.css +340 -263
  180. package/dist/quasar.rtl.prod.css +1 -1
  181. package/dist/quasar.sass +272 -212
  182. package/dist/quasar.umd.js +16522 -16213
  183. package/dist/quasar.umd.prod.js +2 -2
  184. package/dist/ssr-directives/Morph.js +1 -1
  185. package/dist/transforms/loader-asset-urls.json +20 -0
  186. package/dist/types/api/cookies.d.ts +1 -1
  187. package/dist/types/api/slider.d.ts +46 -0
  188. package/dist/types/api/validation.d.ts +4 -0
  189. package/dist/types/api.d.ts +2 -0
  190. package/dist/types/composables.d.ts +3 -3
  191. package/dist/types/index.d.ts +759 -177
  192. package/dist/vetur/quasar-attributes.json +251 -83
  193. package/dist/vetur/quasar-tags.json +59 -17
  194. package/dist/web-types/web-types.json +587 -155
  195. package/package.json +1 -1
  196. package/src/api.extends.json +0 -1
  197. package/src/components/breadcrumbs/QBreadcrumbs.js +7 -2
  198. package/src/components/breadcrumbs/QBreadcrumbs.sass +0 -3
  199. package/src/components/breadcrumbs/QBreadcrumbsEl.js +14 -8
  200. package/src/components/btn/QBtn.js +6 -5
  201. package/src/components/btn/use-btn.js +21 -21
  202. package/src/components/btn/use-btn.json +22 -13
  203. package/src/components/btn-dropdown/QBtnDropdown.json +1 -0
  204. package/src/components/btn-toggle/QBtnToggle.json +3 -0
  205. package/src/components/checkbox/use-checkbox.js +1 -1
  206. package/src/components/chip/QChip.json +1 -2
  207. package/src/components/color/QColor.js +32 -26
  208. package/src/components/color/QColor.sass +10 -23
  209. package/src/components/date/QDate.json +25 -1
  210. package/src/components/date/QDate.sass +2 -0
  211. package/src/components/drawer/QDrawer.js +18 -15
  212. package/src/components/editor/QEditor.js +1 -1
  213. package/src/components/editor/QEditor.sass +10 -1
  214. package/src/components/expansion-item/QExpansionItem.js +4 -1
  215. package/src/components/expansion-item/QExpansionItem.json +2 -1
  216. package/src/components/fab/QFab.js +18 -12
  217. package/src/components/fab/QFab.json +36 -1
  218. package/src/components/fab/QFab.sass +1 -1
  219. package/src/components/fab/QFabAction.js +14 -7
  220. package/src/components/fab/QFabAction.json +10 -0
  221. package/src/components/field/QField.json +3 -3
  222. package/src/components/file/QFile.js +12 -5
  223. package/src/components/file/QFile.json +9 -6
  224. package/src/components/file/QFile.sass +4 -2
  225. package/src/components/footer/QFooter.js +1 -1
  226. package/src/components/form/QForm.json +2 -3
  227. package/src/components/header/QHeader.js +1 -1
  228. package/src/components/icon/QIcon.js +2 -2
  229. package/src/components/infinite-scroll/QInfiniteScroll.js +4 -5
  230. package/src/components/item/QItem.js +2 -3
  231. package/src/components/layout/QLayout.json +8 -1
  232. package/src/components/linear-progress/QLinearProgress.js +3 -2
  233. package/src/components/linear-progress/QLinearProgress.sass +1 -1
  234. package/src/components/option-group/QOptionGroup.js +3 -0
  235. package/src/components/option-group/QOptionGroup.json +48 -2
  236. package/src/components/pagination/QPagination.json +0 -1
  237. package/src/components/parallax/QParallax.js +4 -2
  238. package/src/components/popup-edit/QPopupEdit.js +2 -5
  239. package/src/components/popup-edit/QPopupEdit.json +1 -0
  240. package/src/components/popup-proxy/QPopupProxy.json +2 -1
  241. package/src/components/radio/QRadio.js +2 -7
  242. package/src/components/range/QRange.js +103 -222
  243. package/src/components/range/QRange.json +11 -121
  244. package/src/components/rating/QRating.json +1 -1
  245. package/src/components/resize-observer/QResizeObserver.json +2 -0
  246. package/src/components/scroll-area/QScrollArea.js +10 -13
  247. package/src/components/scroll-area/QScrollArea.json +29 -9
  248. package/src/components/scroll-observer/QScrollObserver.json +11 -0
  249. package/src/components/select/QSelect.json +41 -15
  250. package/src/components/slide-item/QSlideItem.json +9 -0
  251. package/src/components/slider/QSlider.js +46 -132
  252. package/src/components/slider/QSlider.json +1 -121
  253. package/src/components/slider/QSlider.sass +198 -132
  254. package/src/components/slider/use-slider.js +453 -109
  255. package/src/components/slider/use-slider.json +546 -0
  256. package/src/components/stepper/QStepper.js +3 -3
  257. package/src/components/stepper/QStepper.sass +24 -26
  258. package/src/components/table/QTable.js +27 -47
  259. package/src/components/table/QTable.json +104 -55
  260. package/src/components/table/table-pagination.js +4 -0
  261. package/src/components/tabs/QRouteTab.js +1 -2
  262. package/src/components/tabs/QRouteTab.json +0 -7
  263. package/src/components/tabs/QTabs.js +71 -20
  264. package/src/components/tabs/use-tab.js +26 -13
  265. package/src/components/time/QTime.json +8 -0
  266. package/src/components/tree/QTree.js +14 -12
  267. package/src/components/tree/QTree.json +26 -21
  268. package/src/components/tree/QTree.sass +45 -41
  269. package/src/components/uploader/QUploader.json +14 -2
  270. package/src/components/uploader/uploader-core.js +16 -9
  271. package/src/components/uploader/xhr-uploader-plugin.json +8 -3
  272. package/src/components/virtual-scroll/QVirtualScroll.json +15 -0
  273. package/src/components/virtual-scroll/QVirtualScroll.sass +1 -0
  274. package/src/components/virtual-scroll/use-virtual-scroll.js +30 -17
  275. package/src/components/virtual-scroll/use-virtual-scroll.json +7 -5
  276. package/src/composables/private/use-field.js +5 -5
  277. package/src/composables/private/use-file.js +20 -5
  278. package/src/composables/private/use-form.js +2 -3
  279. package/src/composables/private/use-fullscreen.js +15 -4
  280. package/src/composables/private/use-router-link.js +44 -23
  281. package/src/composables/private/use-router-link.json +26 -10
  282. package/src/composables/private/use-split-attrs.js +7 -10
  283. package/src/composables/private/use-validate.js +21 -15
  284. package/src/composables/private/use-validate.json +1 -0
  285. package/src/css/core/helpers.sass +3 -0
  286. package/src/css/core/positioning.sass +5 -0
  287. package/src/directives/Mutation.json +2 -3
  288. package/src/directives/ScrollFire.js +1 -0
  289. package/src/directives/ScrollFire.json +2 -3
  290. package/src/icon-set.js +2 -4
  291. package/src/plugins/AppFullscreen.js +70 -53
  292. package/src/plugins/AppFullscreen.json +8 -8
  293. package/src/plugins/AppVisibility.js +2 -3
  294. package/src/plugins/BottomSheet.js +3 -5
  295. package/src/plugins/Cookies.json +2 -2
  296. package/src/plugins/Dialog.js +3 -5
  297. package/src/plugins/Dialog.json +6 -5
  298. package/src/plugins/LoadingBar.js +17 -18
  299. package/src/plugins/LoadingBar.json +4 -3
  300. package/src/plugins/Notify.js +296 -295
  301. package/src/plugins/Notify.json +13 -19
  302. package/src/plugins/Platform.js +14 -14
  303. package/src/utils/date.js +4 -4
  304. package/src/utils/dom.js +2 -2
  305. package/src/utils/open-url.js +2 -2
  306. package/src/utils/patterns.js +1 -0
  307. package/src/utils/private/define-reactive-plugin.js +10 -8
  308. package/src/utils/private/global-dialog.js +6 -8
  309. package/src/utils/private/global-dialog.json +6 -0
  310. package/src/utils/private/inject-obj-prop.js +13 -0
  311. package/src/utils/private/is.js +2 -2
@@ -1,5 +1,5 @@
1
1
  {
2
- "mixins": [ "composables/private/use-form" ],
2
+ "mixins": [ "components/slider/use-slider" ],
3
3
 
4
4
  "meta": {
5
5
  "docsUrl": "https://v2.quasar.dev/vue-components/range"
@@ -25,42 +25,6 @@
25
25
  "examples": [ "v-model=\"positionModel\"" ]
26
26
  },
27
27
 
28
- "min": {
29
- "type": "Number",
30
- "desc": "Minimum value of the model",
31
- "default": 0,
32
- "examples": [ ":min=\"0\"" ],
33
- "category": "model"
34
- },
35
-
36
- "max": {
37
- "type": "Number",
38
- "desc": "Maximum value of the model",
39
- "default": 100,
40
- "examples": [ ":max=\"100\"" ],
41
- "category": "model"
42
- },
43
-
44
- "step": {
45
- "type": "Number",
46
- "desc": "Specify step amount between valid values (> 0.0); When step equals to 0 it defines infinite granularity",
47
- "default": 1,
48
- "examples": [ ":step=\"1\"" ],
49
- "category": "model"
50
- },
51
-
52
- "reverse": {
53
- "type": "Boolean",
54
- "desc": "Work in reverse (changes direction)",
55
- "category": "behavior"
56
- },
57
-
58
- "vertical": {
59
- "type": "Boolean",
60
- "desc": "Display in vertical direction",
61
- "category": "behavior"
62
- },
63
-
64
28
  "drag-range": {
65
29
  "type": "Boolean",
66
30
  "desc": "User can drag range instead of just the two thumbs",
@@ -73,28 +37,6 @@
73
37
  "category": "content"
74
38
  },
75
39
 
76
- "color": {
77
- "extends": "color"
78
- },
79
-
80
- "label": {
81
- "type": "Boolean",
82
- "desc": "Popup labels (for left and right thumbs) when user clicks/taps on the slider thumb and moves it",
83
- "category": "labels"
84
- },
85
-
86
- "label-color": {
87
- "extends": "color",
88
- "desc": "Color name for labels background from the Quasar Color Palette; Applies to both labels, unless specific label color props are used",
89
- "category": "labels"
90
- },
91
-
92
- "label-text-color": {
93
- "extends": "color",
94
- "desc": "Color name for labels text from the Quasar Color Palette; Applies to both labels, unless specific label text color props are used",
95
- "category": "labels"
96
- },
97
-
98
40
  "left-label-color": {
99
41
  "extends": "color",
100
42
  "desc": "Color name for left label background from the Quasar Color Palette",
@@ -137,76 +79,24 @@
137
79
  "category": "labels"
138
80
  },
139
81
 
140
- "label-always": {
141
- "type": "Boolean",
142
- "desc": "Always display the labels",
143
- "category": "labels"
144
- },
145
-
146
- "markers": {
147
- "type": [ "Boolean", "Number" ],
148
- "desc": "Display markers on the track, one for each possible value for the model or using a custom step (when specifying a Number)",
149
- "category": "content",
150
- "examples": [
151
- "markers",
152
- ":markers=\"5\""
153
- ]
154
- },
155
-
156
- "snap": {
157
- "type": "Boolean",
158
- "desc": "Snap thumbs on valid values, rather than sliding freely; Suggestion: use with 'step' prop",
159
- "category": "content"
160
- },
161
-
162
- "thumb-path": {
163
- "type": "String",
164
- "desc": "Set custom thumbs svg path",
165
- "default": "M 4, 10 a 6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0",
166
- "examples": [ "M5 5 h10 v10 h-10 v-10" ],
167
- "category": "style"
168
- },
169
-
170
- "dark": {
171
- "extends": "dark"
172
- },
173
-
174
- "dense": {
175
- "extends": "dense"
176
- },
177
-
178
- "disable": {
179
- "extends": "disable"
180
- },
181
-
182
- "readonly": {
183
- "extends": "readonly"
82
+ "left-thumb-color": {
83
+ "extends": "color",
84
+ "desc": "Color name (from the Quasar Color Palette) for left thumb",
85
+ "category": "labels",
86
+ "addedIn": "v2.4"
184
87
  },
185
88
 
186
- "tabindex": {
187
- "extends": "tabindex"
89
+ "right-thumb-color": {
90
+ "extends": "color",
91
+ "desc": "Color name (from the Quasar Color Palette) for right thumb",
92
+ "category": "labels",
93
+ "addedIn": "v2.4"
188
94
  }
189
95
  },
190
96
 
191
97
  "events": {
192
98
  "update:model-value": {
193
99
  "extends": "update:model-value"
194
- },
195
-
196
- "change": {
197
- "extends": "update:model-value",
198
- "desc": "Emitted on lazy model value change (after user slides then releases thumb)"
199
- },
200
-
201
- "pan": {
202
- "desc": "Triggered when user starts panning on the component",
203
- "params": {
204
- "phase": {
205
- "type": "String",
206
- "desc": "Phase of panning",
207
- "values": [ "start", "end" ]
208
- }
209
- }
210
100
  }
211
101
  }
212
102
  }
@@ -9,7 +9,7 @@
9
9
  "model-value": {
10
10
  "extends": "model-value",
11
11
  "type": "Number",
12
- "examples": [ ":value=\"2\"" ]
12
+ "examples": [ "v-model=\"rating\"", ":model-value=\"rating\"", ":model-value=\"2\"" ]
13
13
  },
14
14
 
15
15
  "max": {
@@ -23,11 +23,13 @@
23
23
  "definition": {
24
24
  "height": {
25
25
  "type": "Number",
26
+ "required": true,
26
27
  "desc": "Layout height",
27
28
  "examples": [ 822 ]
28
29
  },
29
30
  "width": {
30
31
  "type": "Number",
32
+ "required": true,
31
33
  "desc": "Layout width",
32
34
  "examples": [ 822 ]
33
35
  }
@@ -1,4 +1,4 @@
1
- import { h, ref, computed, withDirectives, getCurrentInstance } from 'vue'
1
+ import { h, ref, computed, withDirectives, onBeforeUnmount, getCurrentInstance } from 'vue'
2
2
 
3
3
  import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
4
4
 
@@ -18,6 +18,11 @@ const dirProps = {
18
18
  vertical: { offset: 'offsetY', scroll: 'scrollTop', dir: 'down', dist: 'y' },
19
19
  horizontal: { offset: 'offsetX', scroll: 'scrollLeft', dir: 'right', dist: 'x' }
20
20
  }
21
+ const panOpts = {
22
+ prevent: true,
23
+ mouse: true,
24
+ mouseAllDir: true
25
+ }
21
26
 
22
27
  export default createComponent({
23
28
  name: 'QScrollArea',
@@ -182,24 +187,14 @@ export default createComponent({
182
187
  TouchPan,
183
188
  e => { onPanThumb(e, 'vertical') },
184
189
  void 0,
185
- {
186
- vertical: true,
187
- prevent: true,
188
- mouse: true,
189
- mouseAllDir: true
190
- }
190
+ { vertical: true, ...panOpts }
191
191
  ] ]
192
192
 
193
193
  const thumbHorizDir = [ [
194
194
  TouchPan,
195
195
  e => { onPanThumb(e, 'horizontal') },
196
196
  void 0,
197
- {
198
- horizontal: true,
199
- prevent: true,
200
- mouse: true,
201
- mouseAllDir: true
202
- }
197
+ { horizontal: true, ...panOpts }
203
198
  ] ]
204
199
 
205
200
  function getScroll () {
@@ -380,6 +375,8 @@ export default createComponent({
380
375
  }
381
376
  })
382
377
 
378
+ onBeforeUnmount(emitScroll.cancel)
379
+
383
380
  return () => {
384
381
  return h('div', {
385
382
  class: classes.value,
@@ -98,49 +98,58 @@
98
98
  "desc": "An object containing scroll information",
99
99
  "definition": {
100
100
  "ref": {
101
- "type": "Object",
102
- "desc": "Vue reference to the QScrollArea which triggered the event",
103
- "__exemption": [ "examples" ]
101
+ "type": "Component",
102
+ "tsType": "QScrollArea",
103
+ "required": true,
104
+ "desc": "Vue reference to the QScrollArea which triggered the event"
104
105
  },
105
106
 
106
107
  "verticalPosition": {
107
108
  "type": "Number",
109
+ "required": true,
108
110
  "desc": "Vertical scroll position (in px)",
109
111
  "__exemption": [ "examples" ]
110
112
  },
111
113
  "verticalPercentage": {
112
114
  "type": "Number",
115
+ "required": true,
113
116
  "desc": "Vertical scroll percentage (0.0 <= x <= 1.0)",
114
117
  "__exemption": [ "examples" ]
115
118
  },
116
119
  "verticalSize": {
117
120
  "type": "Number",
121
+ "required": true,
118
122
  "desc": "Vertical scroll size (in px)",
119
123
  "__exemption": [ "examples" ]
120
124
  },
121
125
  "verticalContainerSize": {
122
126
  "type": "Number",
127
+ "required": true,
123
128
  "desc": "Height of the container (in px)",
124
129
  "__exemption": [ "examples" ]
125
130
  },
126
131
 
127
132
  "horizontalPosition": {
128
133
  "type": "Number",
134
+ "required": true,
129
135
  "desc": "Horizontal scroll position (in px)",
130
136
  "__exemption": [ "examples" ]
131
137
  },
132
138
  "horizontalPercentage": {
133
139
  "type": "Number",
140
+ "required": true,
134
141
  "desc": "Horizontal scroll percentage (0.0 <= x <= 1.0)",
135
142
  "__exemption": [ "examples" ]
136
143
  },
137
144
  "horizontalSize": {
138
145
  "type": "Number",
146
+ "required": true,
139
147
  "desc": "Horizontal scroll size (in px)",
140
148
  "__exemption": [ "examples" ]
141
149
  },
142
150
  "horizontalContainerSize": {
143
151
  "type": "Number",
152
+ "required": true,
144
153
  "desc": "Width of the container (in px)",
145
154
  "__exemption": [ "examples" ]
146
155
  }
@@ -154,9 +163,8 @@
154
163
  "getScrollTarget": {
155
164
  "desc": "Get the scrolling DOM element target",
156
165
  "returns": {
157
- "type": "Object",
158
- "desc": "DOM element upon which scrolling takes place",
159
- "__exemption": [ "examples" ]
166
+ "type": "Element",
167
+ "desc": "DOM element upon which scrolling takes place"
160
168
  }
161
169
  },
162
170
 
@@ -169,42 +177,50 @@
169
177
  "definition": {
170
178
  "verticalPosition": {
171
179
  "type": "Number",
180
+ "required": true,
172
181
  "desc": "Vertical scroll position (in px)",
173
182
  "__exemption": [ "examples" ]
174
183
  },
175
184
  "verticalPercentage": {
176
185
  "type": "Number",
186
+ "required": true,
177
187
  "desc": "Vertical scroll percentage (0.0 <= x <= 1.0)",
178
188
  "__exemption": [ "examples" ]
179
189
  },
180
190
  "verticalSize": {
181
191
  "type": "Number",
192
+ "required": true,
182
193
  "desc": "Vertical scroll size (in px)",
183
194
  "__exemption": [ "examples" ]
184
195
  },
185
196
  "verticalContainerSize": {
186
197
  "type": "Number",
198
+ "required": true,
187
199
  "desc": "Height of the container (in px)",
188
200
  "__exemption": [ "examples" ]
189
201
  },
190
202
 
191
203
  "horizontalPosition": {
192
204
  "type": "Number",
205
+ "required": true,
193
206
  "desc": "Horizontal scroll position (in px)",
194
207
  "__exemption": [ "examples" ]
195
208
  },
196
209
  "horizontalPercentage": {
197
210
  "type": "Number",
211
+ "required": true,
198
212
  "desc": "Horizontal scroll percentage (0.0 <= x <= 1.0)",
199
213
  "__exemption": [ "examples" ]
200
214
  },
201
215
  "horizontalSize": {
202
216
  "type": "Number",
217
+ "required": true,
203
218
  "desc": "Horizontal scroll size (in px)",
204
219
  "__exemption": [ "examples" ]
205
220
  },
206
221
  "horizontalContainerSize": {
207
222
  "type": "Number",
223
+ "required": true,
208
224
  "desc": "Width of the container (in px)",
209
225
  "__exemption": [ "examples" ]
210
226
  }
@@ -220,11 +236,13 @@
220
236
  "definition": {
221
237
  "top": {
222
238
  "type": "Number",
239
+ "required": true,
223
240
  "desc": "Scroll offset from top (vertical)",
224
241
  "examples": [ 120 ]
225
242
  },
226
243
  "left": {
227
244
  "type": "Number",
245
+ "required": true,
228
246
  "desc": "Scroll offset from left (horizontal)",
229
247
  "examples": [ 10 ]
230
248
  }
@@ -241,11 +259,13 @@
241
259
  "definition": {
242
260
  "top": {
243
261
  "type": "Number",
262
+ "required": true,
244
263
  "desc": "Scroll percentage (0.0 <= x <= 1.0) offset from top (vertical)",
245
264
  "examples": [ 0.12 ]
246
265
  },
247
266
  "left": {
248
267
  "type": "Number",
268
+ "required": true,
249
269
  "desc": "Scroll percentage (0.0 <= x <= 1.0) offset from left (horizontal)",
250
270
  "examples": [ 0.92 ]
251
271
  }
@@ -259,14 +279,14 @@
259
279
  "params": {
260
280
  "axis": {
261
281
  "type": "String",
282
+ "required": true,
262
283
  "desc": "Scroll axis",
263
- "values": [ "vertical", "horizontal" ],
264
- "required": true
284
+ "values": [ "vertical", "horizontal" ]
265
285
  },
266
286
  "offset": {
267
287
  "type": "Number",
268
- "desc": "Scroll position offset from top (in pixels)",
269
288
  "required": true,
289
+ "desc": "Scroll position offset from top (in pixels)",
270
290
  "examples": [ 220 ]
271
291
  },
272
292
  "duration": {
@@ -34,15 +34,18 @@
34
34
  "definition": {
35
35
  "position": {
36
36
  "type": "Object",
37
+ "required": true,
37
38
  "desc": "Scroll offset (from top and left)",
38
39
  "definition": {
39
40
  "top": {
40
41
  "type": "Number",
42
+ "required": true,
41
43
  "desc": "Scroll offset from top (vertical)",
42
44
  "examples": [ 120 ]
43
45
  },
44
46
  "left": {
45
47
  "type": "Number",
48
+ "required": true,
46
49
  "desc": "Scroll offset from left (horizontal)",
47
50
  "examples": [ 10 ]
48
51
  }
@@ -51,24 +54,29 @@
51
54
 
52
55
  "direction": {
53
56
  "type": "String",
57
+ "required": true,
54
58
  "desc": "Direction of scroll",
55
59
  "values": [ "up", "down", "left", "right" ]
56
60
  },
57
61
  "directionChanged": {
58
62
  "type": "Boolean",
63
+ "required": true,
59
64
  "desc": "Has scroll direction changed since event was last emitted?"
60
65
  },
61
66
  "delta": {
62
67
  "type": "Object",
68
+ "required": true,
63
69
  "desc": "Delta of distance (in pixels) since event was last emitted",
64
70
  "definition": {
65
71
  "top": {
66
72
  "type": "Number",
73
+ "required": true,
67
74
  "desc": "Vertical delta distance since event was last emitted",
68
75
  "examples": [ 120 ]
69
76
  },
70
77
  "left": {
71
78
  "type": "Number",
79
+ "required": true,
72
80
  "desc": "Horizontal delta distance since event was last emitted",
73
81
  "examples": [ 10 ]
74
82
  }
@@ -77,15 +85,18 @@
77
85
 
78
86
  "inflectionPoint": {
79
87
  "type": "Object",
88
+ "required": true,
80
89
  "desc": "Last scroll offset where scroll direction has changed",
81
90
  "definition": {
82
91
  "top": {
83
92
  "type": "Number",
93
+ "required": true,
84
94
  "desc": "Scroll offset from top (vertical)",
85
95
  "examples": [ 120 ]
86
96
  },
87
97
  "left": {
88
98
  "type": "Number",
99
+ "required": true,
89
100
  "desc": "Scroll offset from left (horizontal)",
90
101
  "examples": [ 10 ]
91
102
  }