quasar 2.9.2 → 2.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (337) hide show
  1. package/dist/api/Dialog.json +25 -68
  2. package/dist/api/Intersection.json +25 -100
  3. package/dist/api/Loading.json +5 -20
  4. package/dist/api/LoadingBar.json +1 -7
  5. package/dist/api/LocalStorage.json +4 -16
  6. package/dist/api/Morph.json +2 -14
  7. package/dist/api/Notify.json +0 -3
  8. package/dist/api/Platform.json +1 -4
  9. package/dist/api/QAjaxBar.json +1 -11
  10. package/dist/api/QBreadcrumbs.json +0 -8
  11. package/dist/api/QBreadcrumbsEl.json +0 -14
  12. package/dist/api/QBtn.json +0 -3
  13. package/dist/api/QBtnDropdown.json +32 -8
  14. package/dist/api/QCarousel.json +0 -10
  15. package/dist/api/QCarouselControl.json +0 -3
  16. package/dist/api/QCircularProgress.json +0 -23
  17. package/dist/api/QColor.json +0 -3
  18. package/dist/api/QDialog.json +18 -9
  19. package/dist/api/QDrawer.json +0 -6
  20. package/dist/api/QExpansionItem.json +0 -3
  21. package/dist/api/QFab.json +1 -6
  22. package/dist/api/QFabAction.json +1 -3
  23. package/dist/api/QField.json +1 -6
  24. package/dist/api/QFile.json +12 -29
  25. package/dist/api/QFooter.json +0 -3
  26. package/dist/api/QHeader.json +0 -6
  27. package/dist/api/QInfiniteScroll.json +9 -16
  28. package/dist/api/QInnerLoading.json +0 -4
  29. package/dist/api/QInput.json +8 -15
  30. package/dist/api/QIntersection.json +0 -4
  31. package/dist/api/QItemLabel.json +0 -5
  32. package/dist/api/QKnob.json +3 -36
  33. package/dist/api/QLayout.json +6 -24
  34. package/dist/api/QLinearProgress.json +0 -6
  35. package/dist/api/QList.json +15 -0
  36. package/dist/api/QMenu.json +7 -12
  37. package/dist/api/QOptionGroup.json +0 -3
  38. package/dist/api/QPage.json +2 -8
  39. package/dist/api/QPageScroller.json +0 -9
  40. package/dist/api/QPageSticky.json +0 -3
  41. package/dist/api/QPagination.json +138 -127
  42. package/dist/api/QParallax.json +2 -14
  43. package/dist/api/QPopupEdit.json +0 -8
  44. package/dist/api/QPopupProxy.json +0 -4
  45. package/dist/api/QRange.json +5 -32
  46. package/dist/api/QRating.json +0 -4
  47. package/dist/api/QResizeObserver.json +2 -8
  48. package/dist/api/QScrollArea.json +8 -36
  49. package/dist/api/QScrollObserver.json +6 -24
  50. package/dist/api/QSelect.json +18 -108
  51. package/dist/api/QSlideItem.json +1 -6
  52. package/dist/api/QSlideTransition.json +0 -4
  53. package/dist/api/QSlider.json +3 -24
  54. package/dist/api/QSpinner.json +0 -4
  55. package/dist/api/QSplitter.json +1 -4
  56. package/dist/api/QStepper.json +0 -7
  57. package/dist/api/QTabPanels.json +0 -7
  58. package/dist/api/QTable.json +43 -191
  59. package/dist/api/QTabs.json +1 -7
  60. package/dist/api/QTime.json +3 -12
  61. package/dist/api/QTooltip.json +7 -18
  62. package/dist/api/QTree.json +0 -3
  63. package/dist/api/QUploader.json +5 -16
  64. package/dist/api/QVirtualScroll.json +11 -56
  65. package/dist/api/Screen.json +9 -36
  66. package/dist/api/Scroll.json +2 -8
  67. package/dist/api/SessionStorage.json +4 -16
  68. package/dist/api/TouchHold.json +3 -12
  69. package/dist/api/TouchPan.json +7 -28
  70. package/dist/api/TouchRepeat.json +6 -24
  71. package/dist/api/TouchSwipe.json +3 -12
  72. package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
  73. package/dist/icon-set/eva-icons.umd.prod.js +1 -1
  74. package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
  75. package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
  76. package/dist/icon-set/fontawesome-v6-pro.umd.prod.js +1 -1
  77. package/dist/icon-set/fontawesome-v6.umd.prod.js +1 -1
  78. package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
  79. package/dist/icon-set/line-awesome.umd.prod.js +1 -1
  80. package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
  81. package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
  82. package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
  83. package/dist/icon-set/material-icons.umd.prod.js +1 -1
  84. package/dist/icon-set/material-symbols-outlined.umd.prod.js +1 -1
  85. package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
  86. package/dist/icon-set/material-symbols-sharp.umd.prod.js +1 -1
  87. package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
  88. package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
  89. package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
  90. package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
  91. package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
  92. package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
  93. package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
  94. package/dist/icon-set/svg-fontawesome-v6.umd.prod.js +1 -1
  95. package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
  96. package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
  97. package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
  98. package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
  99. package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
  100. package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
  101. package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
  102. package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
  103. package/dist/icon-set/svg-material-symbols-outlined.umd.prod.js +1 -1
  104. package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
  105. package/dist/icon-set/svg-material-symbols-sharp.umd.prod.js +1 -1
  106. package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
  107. package/dist/icon-set/svg-themify.umd.prod.js +1 -1
  108. package/dist/icon-set/themify.umd.prod.js +1 -1
  109. package/dist/lang/ar-TN.umd.prod.js +1 -1
  110. package/dist/lang/ar.umd.prod.js +1 -1
  111. package/dist/lang/az-Latn.umd.prod.js +1 -1
  112. package/dist/lang/bg.umd.prod.js +1 -1
  113. package/dist/lang/bn.umd.prod.js +1 -1
  114. package/dist/lang/ca.umd.prod.js +1 -1
  115. package/dist/lang/cs.umd.prod.js +1 -1
  116. package/dist/lang/da.umd.prod.js +1 -1
  117. package/dist/lang/de.umd.prod.js +1 -1
  118. package/dist/lang/el.umd.prod.js +1 -1
  119. package/dist/lang/en-GB.umd.prod.js +1 -1
  120. package/dist/lang/en-US.umd.prod.js +1 -1
  121. package/dist/lang/eo.umd.prod.js +1 -1
  122. package/dist/lang/es.umd.prod.js +1 -1
  123. package/dist/lang/et.umd.prod.js +1 -1
  124. package/dist/lang/eu.umd.prod.js +1 -1
  125. package/dist/lang/fa-IR.umd.prod.js +1 -1
  126. package/dist/lang/fa.umd.prod.js +1 -1
  127. package/dist/lang/fi.umd.prod.js +1 -1
  128. package/dist/lang/fr.umd.prod.js +1 -1
  129. package/dist/lang/gn.umd.prod.js +1 -1
  130. package/dist/lang/he.umd.prod.js +1 -1
  131. package/dist/lang/hr.umd.prod.js +1 -1
  132. package/dist/lang/hu.umd.prod.js +1 -1
  133. package/dist/lang/id.umd.prod.js +1 -1
  134. package/dist/lang/is.umd.prod.js +1 -1
  135. package/dist/lang/it.umd.prod.js +1 -1
  136. package/dist/lang/ja.umd.prod.js +1 -1
  137. package/dist/lang/km.umd.prod.js +1 -1
  138. package/dist/lang/ko-KR.umd.prod.js +1 -1
  139. package/dist/lang/kur-CKB.umd.prod.js +1 -1
  140. package/dist/lang/kz.umd.prod.js +1 -1
  141. package/dist/lang/lt.umd.prod.js +1 -1
  142. package/dist/lang/lu.umd.prod.js +1 -1
  143. package/dist/lang/lv.umd.prod.js +1 -1
  144. package/dist/lang/ml.umd.prod.js +1 -1
  145. package/dist/lang/mm.umd.prod.js +1 -1
  146. package/dist/lang/ms.umd.prod.js +1 -1
  147. package/dist/lang/my.umd.prod.js +1 -1
  148. package/dist/lang/nb-NO.umd.prod.js +1 -1
  149. package/dist/lang/nl.umd.prod.js +1 -1
  150. package/dist/lang/pl.umd.prod.js +1 -1
  151. package/dist/lang/pt-BR.umd.prod.js +1 -1
  152. package/dist/lang/pt.umd.prod.js +1 -1
  153. package/dist/lang/ro.umd.prod.js +1 -1
  154. package/dist/lang/ru.umd.prod.js +1 -1
  155. package/dist/lang/sk.umd.prod.js +1 -1
  156. package/dist/lang/sl.umd.prod.js +1 -1
  157. package/dist/lang/sm.umd.prod.js +1 -1
  158. package/dist/lang/sr-CYR.umd.prod.js +1 -1
  159. package/dist/lang/sr.umd.prod.js +1 -1
  160. package/dist/lang/sv.umd.prod.js +1 -1
  161. package/dist/lang/ta.umd.prod.js +1 -1
  162. package/dist/lang/th.umd.prod.js +1 -1
  163. package/dist/lang/tr.umd.prod.js +1 -1
  164. package/dist/lang/ug.umd.prod.js +1 -1
  165. package/dist/lang/uk.umd.prod.js +1 -1
  166. package/dist/lang/uz-Cyrl.umd.prod.js +1 -1
  167. package/dist/lang/uz-Latn.umd.prod.js +1 -1
  168. package/dist/lang/vi.umd.prod.js +1 -1
  169. package/dist/lang/zh-CN.umd.prod.js +1 -1
  170. package/dist/lang/zh-TW.umd.prod.js +1 -1
  171. package/dist/quasar.cjs.prod.js +2 -2
  172. package/dist/quasar.css +12 -2
  173. package/dist/quasar.esm.js +603 -445
  174. package/dist/quasar.esm.prod.js +2 -2
  175. package/dist/quasar.prod.css +1 -1
  176. package/dist/quasar.rtl.css +28 -2
  177. package/dist/quasar.rtl.prod.css +1 -1
  178. package/dist/quasar.sass +13 -3
  179. package/dist/quasar.umd.js +603 -445
  180. package/dist/quasar.umd.prod.js +2 -2
  181. package/dist/transforms/auto-import.json +7 -3
  182. package/dist/transforms/import-map.json +2 -0
  183. package/dist/types/index.d.ts +116 -106
  184. package/dist/vetur/quasar-attributes.json +65 -49
  185. package/dist/vetur/quasar-tags.json +18 -14
  186. package/dist/web-types/web-types.json +261 -222
  187. package/package.json +3 -3
  188. package/src/api.extends.json +1 -2
  189. package/src/components/ajax-bar/QAjaxBar.json +5 -11
  190. package/src/components/badge/QBadge.js +1 -1
  191. package/src/components/breadcrumbs/QBreadcrumbs.json +0 -2
  192. package/src/components/breadcrumbs/QBreadcrumbsEl.json +1 -6
  193. package/src/components/breadcrumbs/__tests__/BasicBreadcrumbs.vue +7 -0
  194. package/src/components/breadcrumbs/__tests__/BreadcrumbWithSeparatorSlot.vue +11 -0
  195. package/src/components/breadcrumbs/__tests__/QBreadcrumbs.spec.js +112 -0
  196. package/src/components/breadcrumbs/__tests__/QBreadcrumbsEl.spec.js +87 -0
  197. package/src/components/btn/QBtn.json +1 -3
  198. package/src/components/btn/__tests__/QBtn.spec.js +87 -14
  199. package/src/components/btn/__tests__/use-btn.spec.js +385 -58
  200. package/src/components/btn/use-btn.js +24 -14
  201. package/src/components/btn-dropdown/QBtnDropdown.js +34 -18
  202. package/src/components/btn-dropdown/QBtnDropdown.json +1 -3
  203. package/src/components/btn-toggle/QBtnToggle.js +14 -14
  204. package/src/components/btn-toggle/QBtnToggle.json +2 -4
  205. package/src/components/carousel/QCarousel.json +4 -9
  206. package/src/components/carousel/QCarouselControl.json +0 -1
  207. package/src/components/checkbox/use-checkbox.js +1 -1
  208. package/src/components/checkbox/use-checkbox.json +1 -2
  209. package/src/components/chip/QChip.js +14 -11
  210. package/src/components/circular-progress/QCircularProgress.json +0 -5
  211. package/src/components/color/QColor.json +0 -1
  212. package/src/components/date/QDate.js +3 -3
  213. package/src/components/date/QDate.json +28 -56
  214. package/src/components/dialog/QDialog.js +32 -41
  215. package/src/components/dialog/QDialog.json +9 -2
  216. package/src/components/dialog-bottom-sheet/BottomSheet.js +7 -4
  217. package/src/components/dialog-plugin/DialogPlugin.js +4 -4
  218. package/src/components/drawer/QDrawer.js +10 -8
  219. package/src/components/drawer/QDrawer.json +0 -4
  220. package/src/components/editor/QEditor.json +3 -6
  221. package/src/components/expansion-item/QExpansionItem.js +3 -3
  222. package/src/components/expansion-item/QExpansionItem.json +3 -8
  223. package/src/components/fab/QFab.json +0 -1
  224. package/src/components/fab/use-fab.json +0 -1
  225. package/src/components/field/QField.json +0 -1
  226. package/src/components/file/QFile.js +4 -1
  227. package/src/components/file/QFile.json +19 -20
  228. package/src/components/footer/QFooter.js +5 -3
  229. package/src/components/footer/QFooter.json +0 -1
  230. package/src/components/form/QForm.js +5 -3
  231. package/src/components/form/QForm.json +2 -4
  232. package/src/components/header/QHeader.js +5 -3
  233. package/src/components/header/QHeader.json +0 -4
  234. package/src/components/infinite-scroll/QInfiniteScroll.json +9 -6
  235. package/src/components/inner-loading/QInnerLoading.js +2 -5
  236. package/src/components/input/QInput.js +4 -1
  237. package/src/components/input/QInput.json +11 -7
  238. package/src/components/input/use-mask.js +2 -2
  239. package/src/components/intersection/QIntersection.json +0 -1
  240. package/src/components/item/QItem.js +1 -0
  241. package/src/components/item/QItem.json +1 -2
  242. package/src/components/item/QItemLabel.json +0 -1
  243. package/src/components/item/QList.js +7 -2
  244. package/src/components/item/QList.json +7 -0
  245. package/src/components/knob/QKnob.js +3 -3
  246. package/src/components/knob/QKnob.json +3 -12
  247. package/src/components/layout/QLayout.js +1 -1
  248. package/src/components/layout/QLayout.json +6 -12
  249. package/src/components/linear-progress/QLinearProgress.json +0 -2
  250. package/src/components/menu/QMenu.js +8 -5
  251. package/src/components/menu/QMenu.json +0 -2
  252. package/src/components/option-group/QOptionGroup.js +1 -1
  253. package/src/components/option-group/QOptionGroup.json +2 -5
  254. package/src/components/page/QPage.js +11 -4
  255. package/src/components/page/QPage.json +3 -6
  256. package/src/components/page/QPageContainer.js +5 -3
  257. package/src/components/page-scroller/QPageScroller.json +0 -2
  258. package/src/components/page-sticky/QPageSticky.json +0 -1
  259. package/src/components/page-sticky/use-page-sticky.js +5 -3
  260. package/src/components/pagination/QPagination.js +265 -188
  261. package/src/components/pagination/QPagination.json +87 -78
  262. package/src/components/pagination/QPagination.sass +14 -0
  263. package/src/components/parallax/QParallax.json +2 -6
  264. package/src/components/popup-edit/QPopupEdit.js +3 -3
  265. package/src/components/popup-edit/QPopupEdit.json +4 -10
  266. package/src/components/popup-proxy/QPopupProxy.json +0 -1
  267. package/src/components/radio/QRadio.json +1 -2
  268. package/src/components/range/QRange.json +2 -4
  269. package/src/components/rating/QRating.json +0 -1
  270. package/src/components/resize-observer/QResizeObserver.js +14 -10
  271. package/src/components/resize-observer/QResizeObserver.json +2 -4
  272. package/src/components/scroll-area/QScrollArea.js +15 -4
  273. package/src/components/scroll-area/QScrollArea.json +24 -50
  274. package/src/components/scroll-observer/QScrollObserver.js +2 -0
  275. package/src/components/scroll-observer/QScrollObserver.json +6 -12
  276. package/src/components/select/QSelect.js +20 -24
  277. package/src/components/select/QSelect.json +30 -65
  278. package/src/components/select/QSelect.sass +2 -2
  279. package/src/components/slide-item/QSlideItem.json +1 -2
  280. package/src/components/slide-transition/QSlideTransition.json +0 -1
  281. package/src/components/slider/use-slider.json +33 -70
  282. package/src/components/spinner/QSpinner.json +0 -1
  283. package/src/components/splitter/QSplitter.json +1 -2
  284. package/src/components/stepper/QStep.js +7 -5
  285. package/src/components/tab-panels/QTabPanel.js +1 -1
  286. package/src/components/table/QTable.js +3 -3
  287. package/src/components/table/QTable.json +118 -239
  288. package/src/components/tabs/QRouteTab.json +0 -1
  289. package/src/components/tabs/QTabs.js +0 -7
  290. package/src/components/tabs/QTabs.json +1 -3
  291. package/src/components/tabs/use-tab.js +5 -3
  292. package/src/components/time/QTime.json +10 -20
  293. package/src/components/timeline/QTimelineEntry.js +5 -3
  294. package/src/components/toolbar/QToolbar.js +1 -1
  295. package/src/components/tooltip/QTooltip.js +3 -6
  296. package/src/components/tooltip/QTooltip.json +0 -4
  297. package/src/components/tree/QTree.js +6 -6
  298. package/src/components/tree/QTree.json +15 -31
  299. package/src/components/uploader/QUploader.json +13 -22
  300. package/src/components/uploader/QUploaderAddTrigger.js +7 -3
  301. package/src/components/uploader/xhr-uploader-plugin.js +1 -1
  302. package/src/components/uploader/xhr-uploader-plugin.json +25 -50
  303. package/src/components/virtual-scroll/QVirtualScroll.json +5 -10
  304. package/src/components/virtual-scroll/use-virtual-scroll.js +1 -1
  305. package/src/components/virtual-scroll/use-virtual-scroll.json +8 -19
  306. package/src/composables/private/use-field.js +1 -1
  307. package/src/composables/private/use-field.json +2 -3
  308. package/src/composables/private/use-file.js +10 -1
  309. package/src/composables/private/use-file.json +4 -13
  310. package/src/composables/private/use-model-toggle.js +3 -3
  311. package/src/composables/private/use-panel.js +2 -2
  312. package/src/composables/private/use-panel.json +0 -2
  313. package/src/composables/private/use-portal.js +5 -1
  314. package/src/composables/private/use-portal.json +7 -1
  315. package/src/composables/private/use-transition.js +17 -11
  316. package/src/composables/private/use-transition.json +0 -1
  317. package/src/composables/private/use-validate.json +1 -3
  318. package/src/directives/Intersection.json +26 -53
  319. package/src/directives/Morph.json +4 -8
  320. package/src/directives/Mutation.json +6 -12
  321. package/src/directives/Scroll.json +2 -4
  322. package/src/directives/TouchHold.json +3 -6
  323. package/src/directives/TouchPan.json +7 -14
  324. package/src/directives/TouchRepeat.json +6 -12
  325. package/src/directives/TouchSwipe.json +3 -6
  326. package/src/plugins/BottomSheet.json +1 -2
  327. package/src/plugins/Cookies.json +2 -4
  328. package/src/plugins/Dialog.json +32 -72
  329. package/src/plugins/Loading.json +6 -11
  330. package/src/plugins/LoadingBar.json +3 -6
  331. package/src/plugins/Notify.json +4 -5
  332. package/src/plugins/Platform.json +3 -6
  333. package/src/plugins/Screen.json +9 -18
  334. package/src/utils/private/global-dialog.json +6 -12
  335. package/src/utils/private/portal.js +4 -4
  336. package/src/utils/private/symbols.js +2 -0
  337. package/src/utils/private/web-storage.json +6 -10
@@ -7,71 +7,28 @@
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
- "type": "Number",
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
 
22
20
  "max": {
23
- "type": "Number",
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
 
30
- "color": {
31
- "extends": "color",
32
- "default": "primary"
33
- },
34
-
35
- "text-color": {
36
- "extends": "text-color"
37
- },
38
-
39
- "active-color": {
40
- "extends": "color",
41
- "default": "primary"
42
- },
43
-
44
- "active-text-color": {
45
- "extends": "text-color"
46
- },
47
-
48
27
  "dark": {
49
28
  "extends": "dark",
50
29
  "desc": "Notify the component that the background is a dark color (useful when you are using it along with the 'input' prop)"
51
30
  },
52
31
 
53
- "input-style": {
54
- "type": [ "String", "Array", "Object" ],
55
- "tsType": "VueStyleProp",
56
- "desc": "Style definitions to be attributed to the input (if using one)",
57
- "examples": [
58
- "background-color: #ff0000",
59
- ":input-style=\"{ backgroundColor: '#ff0000' }\""
60
- ],
61
- "category": "style"
62
- },
63
-
64
- "input-class": {
65
- "type": [ "String", "Array", "Object" ],
66
- "tsType": "VueClassProp",
67
- "desc": "Class definitions to be attributed to the input (if using one)",
68
- "examples": [
69
- "my-special-class",
70
- ":input-class=\"{ 'my-special-class': <condition> }\""
71
- ],
72
- "category": "style"
73
- },
74
-
75
32
  "size": {
76
33
  "type": "String",
77
34
  "desc": "Button size in CSS units, including unit name",
@@ -111,14 +68,12 @@
111
68
  "params": {
112
69
  "page": {
113
70
  "type": "Number",
114
- "desc": "Page number to navigate to",
115
- "examples": [ 2 ]
71
+ "desc": "Page number to navigate to"
116
72
  }
117
73
  },
118
74
  "returns": {
119
75
  "type": [ "Object", "String" ],
120
- "desc": "Object or String that can be passed to a <router-link> as `to` parameter",
121
- "__exemption": [ "examples" ]
76
+ "desc": "Object or String that can be passed to a <router-link> as `to` parameter"
122
77
  },
123
78
  "examples": [ ":to-fn=\"page => ({ query: { page } })\"" ],
124
79
  "category": "content"
@@ -149,54 +104,75 @@
149
104
  },
150
105
 
151
106
  "max-pages": {
152
- "type": "Number",
107
+ "type": [ "Number", "String" ],
153
108
  "default": 0,
154
109
  "desc": "Maximum number of page links to display at a time; 0 means Infinite",
155
- "examples": [ 5 ],
156
- "category": "model"
110
+ "category": "content"
157
111
  },
158
112
 
159
- "ripple": {
160
- "type": [ "Boolean", "Object" ],
161
- "desc": "Configure buttons material ripple (disable it by setting it to 'false' or supply a config object); Does not applies to boundary and ellipsis buttons",
162
- "default": true,
163
- "examples": [ false, "{ early: true, center: true, color: 'teal', keyCodes: [] }" ],
113
+ "flat": {
114
+ "type": "Boolean",
115
+ "desc": "Use 'flat' design for non-active buttons (it's the default option)",
164
116
  "category": "style"
165
117
  },
166
118
 
167
- "round": {
119
+ "outline": {
168
120
  "type": "Boolean",
169
- "desc": "Makes a circle shaped button for all buttons",
121
+ "desc": "Use 'outline' design for non-active buttons",
170
122
  "category": "style"
171
123
  },
172
124
 
173
- "rounded": {
125
+ "unelevated": {
174
126
  "type": "Boolean",
175
- "desc": "Applies a more prominent border-radius for a squared shape button for all buttons",
127
+ "desc": "Remove shadow for non-active buttons",
176
128
  "category": "style"
177
129
  },
178
130
 
179
- "flat": {
131
+ "push": {
180
132
  "type": "Boolean",
181
- "desc": "Use 'flat' design for current page button",
133
+ "desc": "Use 'push' design for non-active buttons",
182
134
  "category": "style"
183
135
  },
184
136
 
185
- "outline": {
186
- "type": "Boolean",
187
- "desc": "Use 'outline' design for current page button",
188
- "category": "style"
137
+ "color": {
138
+ "extends": "color",
139
+ "desc": "Color name from the Quasar Color Palette for the non-active buttons",
140
+ "default": "primary"
189
141
  },
190
142
 
191
- "unelevated": {
143
+ "text-color": {
144
+ "extends": "text-color",
145
+ "desc": "Text color name from the Quasar Color Palette for the ACTIVE buttons"
146
+ },
147
+
148
+ "active-design": {
149
+ "type": "String",
150
+ "desc": "The design of the ACTIVE button, similar to the flat/outline/push/unelevated props (but those are used for non-active buttons)",
151
+ "values": [ "flat", "outline", "push", "unelevated" ],
152
+ "category": "style",
153
+ "addedIn": "v2.10"
154
+ },
155
+
156
+ "active-color": {
157
+ "extends": "color",
158
+ "desc": "Color name from the Quasar Color Palette for the ACTIVE button",
159
+ "default": "primary"
160
+ },
161
+
162
+ "active-text-color": {
163
+ "extends": "text-color",
164
+ "desc": "Text color name from the Quasar Color Palette for the ACTIVE button"
165
+ },
166
+
167
+ "round": {
192
168
  "type": "Boolean",
193
- "desc": "Remove shadow for current page button",
169
+ "desc": "Makes a circle shaped button for all buttons",
194
170
  "category": "style"
195
171
  },
196
172
 
197
- "push": {
173
+ "rounded": {
198
174
  "type": "Boolean",
199
- "desc": "Use 'push' design for current page button",
175
+ "desc": "Applies a more prominent border-radius for a squared shape button for all buttons",
200
176
  "category": "style"
201
177
  },
202
178
 
@@ -206,8 +182,13 @@
206
182
  "category": "style"
207
183
  },
208
184
 
209
- "dense": {
210
- "extends": "dense"
185
+ "gutter": {
186
+ "type": "String",
187
+ "desc": "Apply custom gutter; Size in CSS units, including unit name or standard size name (none|xs|sm|md|lg|xl)",
188
+ "default": "2px",
189
+ "examples": [ "16px", "10px 5px", "2rem", "xs", "md lg", "2px 2px 5px 7px" ],
190
+ "category": "style",
191
+ "addedIn": "v2.10"
211
192
  },
212
193
 
213
194
  "padding": {
@@ -215,6 +196,36 @@
215
196
  "desc": "Apply custom padding (vertical [horizontal]); Size in CSS units, including unit name or standard size name (none|xs|sm|md|lg|xl); Also removes the min width and height when set",
216
197
  "examples": [ "16px", "10px 5px", "2rem", "xs", "md lg", "2px 2px 5px 7px" ],
217
198
  "category": "style"
199
+ },
200
+
201
+ "input-style": {
202
+ "type": [ "String", "Array", "Object" ],
203
+ "tsType": "VueStyleProp",
204
+ "desc": "Style definitions to be attributed to the input (if using one)",
205
+ "examples": [
206
+ "background-color: #ff0000",
207
+ ":input-style=\"{ backgroundColor: '#ff0000' }\""
208
+ ],
209
+ "category": "style"
210
+ },
211
+
212
+ "input-class": {
213
+ "type": [ "String", "Array", "Object" ],
214
+ "tsType": "VueClassProp",
215
+ "desc": "Class definitions to be attributed to the input (if using one)",
216
+ "examples": [
217
+ "my-special-class",
218
+ ":input-class=\"{ 'my-special-class': <condition> }\""
219
+ ],
220
+ "category": "style"
221
+ },
222
+
223
+ "ripple": {
224
+ "type": [ "Boolean", "Object" ],
225
+ "desc": "Configure buttons material ripple (disable it by setting it to 'false' or supply a config object); Does not applies to boundary and ellipsis buttons",
226
+ "default": true,
227
+ "examples": [ false, "{ early: true, center: true, color: 'teal', keyCodes: [] }" ],
228
+ "category": "style"
218
229
  }
219
230
  },
220
231
 
@@ -235,8 +246,7 @@
235
246
  "params": {
236
247
  "pageNumber": {
237
248
  "type": "Number",
238
- "desc": "Page number to go to",
239
- "examples": [ 3 ]
249
+ "desc": "Page number to go to"
240
250
  }
241
251
  }
242
252
  },
@@ -246,8 +256,7 @@
246
256
  "params": {
247
257
  "offset": {
248
258
  "type": "Number",
249
- "desc": "Offset page, can be negative or positive",
250
- "examples": [ 3 ]
259
+ "desc": "Offset page, can be negative or positive"
251
260
  }
252
261
  }
253
262
  }
@@ -1,3 +1,4 @@
1
+
1
2
  .q-pagination
2
3
  input
3
4
  text-align: center
@@ -7,3 +8,16 @@
7
8
  input::-webkit-inner-spin-button
8
9
  -webkit-appearance: none
9
10
  margin: 0
11
+
12
+ &__content
13
+ --q-pagination-gutter-parent: -2px
14
+ --q-pagination-gutter-child: 2px
15
+
16
+ margin-top: var(--q-pagination-gutter-parent)
17
+ margin-left: var(--q-pagination-gutter-parent)
18
+
19
+ &__content > .q-btn,
20
+ &__content > .q-input,
21
+ &__middle > .q-btn
22
+ margin-top: var(--q-pagination-gutter-child)
23
+ margin-left: var(--q-pagination-gutter-child)
@@ -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
 
@@ -58,17 +58,21 @@ export default createComponent({
58
58
  if (hasObserver === true) {
59
59
  let observer
60
60
 
61
- onMounted(() => {
62
- nextTick(() => {
63
- targetEl = proxy.$el.parentNode
61
+ // initialize as soon as possible
62
+ const init = stop => {
63
+ targetEl = proxy.$el.parentNode
64
64
 
65
- if (targetEl) {
66
- observer = new ResizeObserver(trigger)
67
- observer.observe(targetEl)
68
- emitEvent()
69
- }
70
- })
71
- })
65
+ if (targetEl) {
66
+ observer = new ResizeObserver(trigger)
67
+ observer.observe(targetEl)
68
+ emitEvent()
69
+ }
70
+ else if (stop !== true) {
71
+ nextTick(() => { init(true) })
72
+ }
73
+ }
74
+
75
+ onMounted(() => { init() })
72
76
 
73
77
  onBeforeUnmount(() => {
74
78
  clearTimeout(timer)
@@ -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
  }