quasar 1.16.3 → 1.17.0

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 (296) hide show
  1. package/dist/api/BottomSheet.json +2 -2
  2. package/dist/api/Loading.json +0 -2
  3. package/dist/api/Notify.json +15 -15
  4. package/dist/api/QAvatar.json +1 -1
  5. package/dist/api/QBreadcrumbsEl.json +32 -11
  6. package/dist/api/QBtn.json +35 -14
  7. package/dist/api/QBtnDropdown.json +36 -15
  8. package/dist/api/QBtnToggle.json +1 -1
  9. package/dist/api/QCarousel.json +7 -7
  10. package/dist/api/QCarouselSlide.json +2 -2
  11. package/dist/api/QChatMessage.json +1 -5
  12. package/dist/api/QChip.json +4 -4
  13. package/dist/api/QColor.json +6 -0
  14. package/dist/api/QDialog.json +7 -1
  15. package/dist/api/QExpansionItem.json +34 -13
  16. package/dist/api/QFab.json +34 -2
  17. package/dist/api/QFabAction.json +9 -1
  18. package/dist/api/QField.json +80 -6
  19. package/dist/api/QFile.json +80 -6
  20. package/dist/api/QImg.json +2 -2
  21. package/dist/api/QInnerLoading.json +32 -0
  22. package/dist/api/QInput.json +82 -6
  23. package/dist/api/QItem.json +31 -10
  24. package/dist/api/QOptionGroup.json +58 -1
  25. package/dist/api/QPagination.json +4 -4
  26. package/dist/api/QParallax.json +1 -1
  27. package/dist/api/QPopupEdit.json +14 -7
  28. package/dist/api/QPullToRefresh.json +1 -1
  29. package/dist/api/QRange.json +581 -96
  30. package/dist/api/QRating.json +3 -3
  31. package/dist/api/QRouteTab.json +32 -12
  32. package/dist/api/QScrollArea.json +188 -20
  33. package/dist/api/QSelect.json +81 -9
  34. package/dist/api/QSeparator.json +1 -1
  35. package/dist/api/QSlider.json +499 -34
  36. package/dist/api/QStep.json +4 -4
  37. package/dist/api/QStepper.json +4 -4
  38. package/dist/api/QTab.json +1 -1
  39. package/dist/api/QTable.json +4 -4
  40. package/dist/api/QTabs.json +9 -0
  41. package/dist/api/QTimelineEntry.json +2 -2
  42. package/dist/api/QToggle.json +1 -1
  43. package/dist/api/QTree.json +7 -1
  44. package/dist/api/QVideo.json +10 -0
  45. package/dist/icon-set/bootstrap-icons.umd.min.js +1 -1
  46. package/dist/icon-set/eva-icons.umd.min.js +1 -1
  47. package/dist/icon-set/fontawesome-v5-pro.umd.min.js +1 -1
  48. package/dist/icon-set/fontawesome-v5.umd.min.js +1 -1
  49. package/dist/icon-set/ionicons-v4.umd.min.js +1 -1
  50. package/dist/icon-set/line-awesome.umd.min.js +1 -1
  51. package/dist/icon-set/material-icons-outlined.umd.min.js +1 -1
  52. package/dist/icon-set/material-icons-round.umd.min.js +1 -1
  53. package/dist/icon-set/material-icons-sharp.umd.min.js +1 -1
  54. package/dist/icon-set/material-icons.umd.min.js +1 -1
  55. package/dist/icon-set/mdi-v3.umd.min.js +1 -1
  56. package/dist/icon-set/mdi-v4.umd.min.js +1 -1
  57. package/dist/icon-set/mdi-v5.umd.min.js +1 -1
  58. package/dist/icon-set/mdi-v6.umd.min.js +1 -1
  59. package/dist/icon-set/svg-bootstrap-icons.umd.min.js +1 -1
  60. package/dist/icon-set/svg-eva-icons.umd.min.js +1 -1
  61. package/dist/icon-set/svg-fontawesome-v5.umd.min.js +1 -1
  62. package/dist/icon-set/svg-ionicons-v4.umd.min.js +1 -1
  63. package/dist/icon-set/svg-ionicons-v5.umd.min.js +1 -1
  64. package/dist/icon-set/svg-ionicons-v6.umd.min.js +6 -0
  65. package/dist/icon-set/svg-line-awesome.umd.min.js +1 -1
  66. package/dist/icon-set/svg-material-icons-outlined.umd.min.js +1 -1
  67. package/dist/icon-set/svg-material-icons-round.umd.min.js +1 -1
  68. package/dist/icon-set/svg-material-icons-sharp.umd.min.js +1 -1
  69. package/dist/icon-set/svg-material-icons.umd.min.js +1 -1
  70. package/dist/icon-set/svg-mdi-v4.umd.min.js +1 -1
  71. package/dist/icon-set/svg-mdi-v5.umd.min.js +1 -1
  72. package/dist/icon-set/svg-mdi-v6.umd.min.js +1 -1
  73. package/dist/icon-set/svg-themify.umd.min.js +1 -1
  74. package/dist/icon-set/themify.umd.min.js +1 -1
  75. package/dist/lang/ar.umd.min.js +2 -2
  76. package/dist/lang/az-latn.umd.min.js +1 -1
  77. package/dist/lang/bg.umd.min.js +1 -1
  78. package/dist/lang/ca.umd.min.js +1 -1
  79. package/dist/lang/cs.umd.min.js +1 -1
  80. package/dist/lang/da.umd.min.js +1 -1
  81. package/dist/lang/de.umd.min.js +1 -1
  82. package/dist/lang/el.umd.min.js +1 -1
  83. package/dist/lang/en-gb.umd.min.js +1 -1
  84. package/dist/lang/en-us.umd.min.js +1 -1
  85. package/dist/lang/eo.umd.min.js +1 -1
  86. package/dist/lang/es.umd.min.js +1 -1
  87. package/dist/lang/et.umd.min.js +1 -1
  88. package/dist/lang/fa-ir.umd.min.js +1 -1
  89. package/dist/lang/fa.umd.min.js +1 -1
  90. package/dist/lang/fi.umd.min.js +1 -1
  91. package/dist/lang/fr.umd.min.js +2 -2
  92. package/dist/lang/gn.umd.min.js +1 -1
  93. package/dist/lang/he.umd.min.js +1 -1
  94. package/dist/lang/hr.umd.min.js +1 -1
  95. package/dist/lang/hu.umd.min.js +1 -1
  96. package/dist/lang/id.umd.min.js +1 -1
  97. package/dist/lang/is.umd.min.js +1 -1
  98. package/dist/lang/it.umd.min.js +1 -1
  99. package/dist/lang/ja.umd.min.js +1 -1
  100. package/dist/lang/km.umd.min.js +1 -1
  101. package/dist/lang/ko-kr.umd.min.js +1 -1
  102. package/dist/lang/kur-ckb.umd.min.js +1 -1
  103. package/dist/lang/lu.umd.min.js +1 -1
  104. package/dist/lang/lv.umd.min.js +1 -1
  105. package/dist/lang/ml.umd.min.js +1 -1
  106. package/dist/lang/ms.umd.min.js +1 -1
  107. package/dist/lang/nb-no.umd.min.js +1 -1
  108. package/dist/lang/nl.umd.min.js +1 -1
  109. package/dist/lang/pl.umd.min.js +1 -1
  110. package/dist/lang/pt-br.umd.min.js +1 -1
  111. package/dist/lang/pt.umd.min.js +1 -1
  112. package/dist/lang/ro.umd.min.js +1 -1
  113. package/dist/lang/ru.umd.min.js +1 -1
  114. package/dist/lang/sk.umd.min.js +1 -1
  115. package/dist/lang/sl.umd.min.js +1 -1
  116. package/dist/lang/sr.umd.min.js +2 -2
  117. package/dist/lang/sv.umd.min.js +1 -1
  118. package/dist/lang/ta.umd.min.js +1 -1
  119. package/dist/lang/th.umd.min.js +1 -1
  120. package/dist/lang/tr.umd.min.js +1 -1
  121. package/dist/lang/ug.umd.min.js +2 -2
  122. package/dist/lang/uk.umd.min.js +1 -1
  123. package/dist/lang/vi.umd.min.js +1 -1
  124. package/dist/lang/zh-hans.umd.min.js +2 -2
  125. package/dist/lang/zh-hant.umd.min.js +2 -2
  126. package/dist/quasar.addon.css +1 -1
  127. package/dist/quasar.addon.rtl.css +1 -1
  128. package/dist/quasar.common.js +2 -2
  129. package/dist/quasar.css +376 -225
  130. package/dist/quasar.esm.js +2 -2
  131. package/dist/quasar.ie.polyfills.js +1 -1
  132. package/dist/quasar.ie.polyfills.umd.min.js +1 -1
  133. package/dist/quasar.min.css +1 -1
  134. package/dist/quasar.rtl.css +508 -301
  135. package/dist/quasar.rtl.min.css +1 -1
  136. package/dist/quasar.sass +324 -208
  137. package/dist/quasar.styl +324 -208
  138. package/dist/quasar.umd.js +3098 -1836
  139. package/dist/quasar.umd.min.js +2 -2
  140. package/dist/quasar.umd.modern.js +3057 -1817
  141. package/dist/quasar.umd.modern.min.js +2 -2
  142. package/dist/transform-asset-urls.json +20 -0
  143. package/dist/types/index.d.ts +421 -103
  144. package/dist/types/utils/scroll.d.ts +1 -0
  145. package/dist/vetur/quasar-attributes.json +313 -89
  146. package/dist/vetur/quasar-tags.json +74 -18
  147. package/dist/web-types/web-types.json +1289 -259
  148. package/icon-set/svg-ionicons-v6.js +225 -0
  149. package/lang/ar.js +1 -1
  150. package/lang/fa-ir.js +3 -1
  151. package/lang/fa.js +3 -1
  152. package/lang/fr.js +1 -1
  153. package/lang/index.json +1 -1
  154. package/lang/kur-ckb.js +2 -2
  155. package/lang/sr.js +4 -4
  156. package/lang/ug.js +48 -46
  157. package/lang/zh-hans.js +1 -1
  158. package/lang/zh-hant.js +18 -18
  159. package/package.json +1 -1
  160. package/src/api.extends.json +1 -2
  161. package/src/components/breadcrumbs/QBreadcrumbs.js +15 -11
  162. package/src/components/breadcrumbs/QBreadcrumbs.sass +0 -3
  163. package/src/components/breadcrumbs/QBreadcrumbs.styl +0 -3
  164. package/src/components/breadcrumbs/QBreadcrumbsEl.js +25 -9
  165. package/src/components/btn/QBtn.js +3 -3
  166. package/src/components/btn-dropdown/QBtnDropdown.sass +2 -0
  167. package/src/components/btn-dropdown/QBtnDropdown.styl +2 -0
  168. package/src/components/carousel/QCarousel.js +6 -2
  169. package/src/components/carousel/QCarousel.json +9 -1
  170. package/src/components/carousel/QCarouselSlide.json +2 -2
  171. package/src/components/chat/QChatMessage.json +1 -1
  172. package/src/components/color/QColor.js +100 -85
  173. package/src/components/color/QColor.json +7 -0
  174. package/src/components/color/QColor.sass +14 -24
  175. package/src/components/color/QColor.styl +14 -24
  176. package/src/components/date/QDate.js +7 -1
  177. package/src/components/date/QDate.sass +2 -0
  178. package/src/components/date/QDate.styl +2 -0
  179. package/src/components/dialog/QDialog.js +8 -4
  180. package/src/components/dialog/QDialog.json +8 -1
  181. package/src/components/drawer/QDrawer.js +16 -15
  182. package/src/components/editor/QEditor.js +2 -2
  183. package/src/components/editor/QEditor.sass +13 -1
  184. package/src/components/editor/QEditor.styl +13 -1
  185. package/src/components/expansion-item/QExpansionItem.js +13 -11
  186. package/src/components/fab/QFab.js +20 -11
  187. package/src/components/fab/QFab.json +35 -0
  188. package/src/components/fab/QFabAction.js +16 -9
  189. package/src/components/fab/QFabAction.json +10 -0
  190. package/src/components/field/QField.js +28 -23
  191. package/src/components/field/__QField.json +72 -8
  192. package/src/components/file/QFile.js +12 -4
  193. package/src/components/file/QFile.sass +4 -3
  194. package/src/components/file/QFile.styl +4 -3
  195. package/src/components/footer/QFooter.js +1 -1
  196. package/src/components/form/QForm.js +1 -1
  197. package/src/components/header/QHeader.js +1 -1
  198. package/src/components/icon/QIcon.js +54 -49
  199. package/src/components/img/QImg.json +2 -2
  200. package/src/components/infinite-scroll/QInfiniteScroll.js +49 -36
  201. package/src/components/inner-loading/QInnerLoading.js +54 -22
  202. package/src/components/inner-loading/QInnerLoading.json +29 -0
  203. package/src/components/inner-loading/QInnerLoading.sass +3 -0
  204. package/src/components/inner-loading/QInnerLoading.styl +3 -0
  205. package/src/components/item/QItem.js +9 -15
  206. package/src/components/linear-progress/QLinearProgress.js +6 -2
  207. package/src/components/menu/QMenu.js +5 -1
  208. package/src/components/option-group/QOptionGroup.js +32 -22
  209. package/src/components/option-group/QOptionGroup.json +50 -1
  210. package/src/components/parallax/QParallax.js +3 -0
  211. package/src/components/parallax/QParallax.json +1 -1
  212. package/src/components/popup-edit/QPopupEdit.js +41 -16
  213. package/src/components/popup-edit/QPopupEdit.json +15 -8
  214. package/src/components/range/QRange.js +223 -278
  215. package/src/components/range/QRange.json +11 -122
  216. package/src/components/rating/QRating.js +56 -38
  217. package/src/components/rating/QRating.json +3 -3
  218. package/src/components/rating/QRating.sass +8 -6
  219. package/src/components/rating/QRating.styl +8 -6
  220. package/src/components/resize-observer/QResizeObserver.js +15 -10
  221. package/src/components/scroll-area/QScrollArea.js +342 -126
  222. package/src/components/scroll-area/QScrollArea.json +164 -20
  223. package/src/components/scroll-area/QScrollArea.sass +4 -0
  224. package/src/components/scroll-area/QScrollArea.styl +4 -0
  225. package/src/components/scroll-observer/QScrollObserver.js +9 -2
  226. package/src/components/select/QSelect.js +8 -2
  227. package/src/components/separator/QSeparator.js +0 -1
  228. package/src/components/separator/QSeparator.json +1 -1
  229. package/src/components/slider/QSlider.js +97 -140
  230. package/src/components/slider/QSlider.json +1 -122
  231. package/src/components/slider/QSlider.sass +205 -139
  232. package/src/components/slider/QSlider.styl +205 -139
  233. package/src/components/slider/slider-utils.js +468 -123
  234. package/src/components/slider/slider-utils.json +546 -0
  235. package/src/components/stepper/QStepper.js +1 -1
  236. package/src/components/stepper/QStepper.sass +25 -26
  237. package/src/components/stepper/QStepper.styl +25 -26
  238. package/src/components/table/QTable.sass +3 -0
  239. package/src/components/table/QTable.styl +3 -0
  240. package/src/components/tabs/QRouteTab.js +13 -13
  241. package/src/components/tabs/QRouteTab.json +0 -7
  242. package/src/components/tabs/QTab.js +71 -20
  243. package/src/components/tabs/QTabs.js +237 -52
  244. package/src/components/tabs/QTabs.json +8 -0
  245. package/src/components/tabs/QTabs.sass +6 -6
  246. package/src/components/tabs/QTabs.styl +6 -6
  247. package/src/components/time/QTime.js +6 -2
  248. package/src/components/timeline/QTimelineEntry.json +1 -1
  249. package/src/components/tree/QTree.js +10 -6
  250. package/src/components/tree/QTree.json +5 -0
  251. package/src/components/tree/QTree.sass +58 -4
  252. package/src/components/tree/QTree.styl +58 -4
  253. package/src/components/uploader/QUploaderBase.js +15 -19
  254. package/src/components/video/QVideo.js +4 -1
  255. package/src/components/video/QVideo.json +11 -0
  256. package/src/components/virtual-scroll/QVirtualScroll.sass +1 -0
  257. package/src/components/virtual-scroll/QVirtualScroll.styl +1 -0
  258. package/src/css/core/helpers.sass +3 -0
  259. package/src/css/core/helpers.styl +3 -0
  260. package/src/css/core/positioning.sass +5 -0
  261. package/src/css/core/positioning.styl +5 -0
  262. package/src/css/variables.sass +4 -6
  263. package/src/css/variables.styl +4 -6
  264. package/src/directives/Scroll.js +2 -2
  265. package/src/directives/ScrollFire.js +1 -0
  266. package/src/ie-compat/ie.js +13 -13
  267. package/src/install.js +1 -1
  268. package/src/lang.js +7 -4
  269. package/src/mixins/anchor.js +3 -13
  270. package/src/mixins/btn.js +30 -38
  271. package/src/mixins/btn.json +26 -11
  272. package/src/mixins/file.js +27 -5
  273. package/src/mixins/fullscreen.js +16 -4
  274. package/src/mixins/portal.js +10 -10
  275. package/src/mixins/router-link.js +88 -14
  276. package/src/mixins/router-link.json +26 -10
  277. package/src/mixins/validate.js +33 -15
  278. package/src/mixins/virtual-scroll.js +40 -42
  279. package/src/plugins/AppFullscreen.js +41 -16
  280. package/src/plugins/BottomSheet.json +1 -1
  281. package/src/plugins/Cookies.js +1 -1
  282. package/src/plugins/Loading.js +8 -0
  283. package/src/plugins/LoadingBar.js +9 -0
  284. package/src/plugins/Notify.js +351 -333
  285. package/src/plugins/Notify.json +10 -10
  286. package/src/plugins/Notify.sass +9 -3
  287. package/src/plugins/Notify.styl +9 -3
  288. package/src/utils/clone.js +53 -4
  289. package/src/utils/date.js +134 -69
  290. package/src/utils/dom.js +28 -9
  291. package/src/utils/extend.js +2 -2
  292. package/src/utils/focus-manager.js +8 -10
  293. package/src/utils/global-dialog.js +18 -1
  294. package/src/utils/is.js +2 -2
  295. package/src/utils/morph.js +2 -12
  296. package/src/utils/scroll.js +71 -35
@@ -13,33 +13,9 @@
13
13
  "category": "behavior",
14
14
  "addedIn": "v1.9.0"
15
15
  },
16
- "value": {
17
- "type": "Object",
18
- "desc": "Model of the component of type { min, max } (both values must be between global min/max); Either use this property (along with a listener for 'input' event) OR use v-model directive",
19
- "definition": {
20
- "min": {
21
- "type": "Number",
22
- "desc": "Model value for left thumb",
23
- "examples": [
24
- 2
25
- ]
26
- },
27
- "max": {
28
- "type": "Number",
29
- "desc": "Model value for right thumb",
30
- "examples": [
31
- 12
32
- ]
33
- }
34
- },
35
- "examples": [
36
- "v-model=\"positionModel\""
37
- ],
38
- "category": "model"
39
- },
40
16
  "min": {
41
17
  "type": "Number",
42
- "desc": "Minimum value of the model",
18
+ "desc": "Minimum value of the model; Set track's minimum value",
43
19
  "default": 0,
44
20
  "examples": [
45
21
  ":min=\"0\""
@@ -48,13 +24,31 @@
48
24
  },
49
25
  "max": {
50
26
  "type": "Number",
51
- "desc": "Maximum value of the model",
27
+ "desc": "Maximum value of the model; Set track's maximum value",
52
28
  "default": 100,
53
29
  "examples": [
54
30
  ":max=\"100\""
55
31
  ],
56
32
  "category": "model"
57
33
  },
34
+ "inner-min": {
35
+ "type": "Number",
36
+ "desc": "Inner minimum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be higher or equal to 'min' prop; Defaults to 'min' prop",
37
+ "examples": [
38
+ ":inner-min=\"0\""
39
+ ],
40
+ "category": "model",
41
+ "addedIn": "v1.17"
42
+ },
43
+ "inner-max": {
44
+ "type": "Number",
45
+ "desc": "Inner maximum value of the model; Use in case you need the model value to be inside of the track's min-max values; Needs to be lower or equal to 'max' prop; Defaults to 'max' prop",
46
+ "examples": [
47
+ ":max-value=\"100\""
48
+ ],
49
+ "category": "model",
50
+ "addedIn": "v1.17"
51
+ },
58
52
  "step": {
59
53
  "type": "Number",
60
54
  "desc": "Specify step amount between valid values (> 0.0); When step equals to 0 it defines infinite granularity",
@@ -64,6 +58,11 @@
64
58
  ],
65
59
  "category": "model"
66
60
  },
61
+ "snap": {
62
+ "type": "Boolean",
63
+ "desc": "Snap on valid values, rather than sliding freely; Suggestion: use with 'step' prop",
64
+ "category": "behavior"
65
+ },
67
66
  "reverse": {
68
67
  "type": "Boolean",
69
68
  "desc": "Work in reverse (changes direction)",
@@ -76,16 +75,6 @@
76
75
  "category": "behavior",
77
76
  "addedIn": "v1.10.0"
78
77
  },
79
- "drag-range": {
80
- "type": "Boolean",
81
- "desc": "User can drag range instead of just the two thumbs",
82
- "category": "content"
83
- },
84
- "drag-only-range": {
85
- "type": "Boolean",
86
- "desc": "User can drag only the range instead and NOT the two thumbs",
87
- "category": "content"
88
- },
89
78
  "color": {
90
79
  "type": "String",
91
80
  "desc": "Color name for component from the Quasar Color Palette",
@@ -95,108 +84,260 @@
95
84
  ],
96
85
  "category": "style"
97
86
  },
98
- "label": {
99
- "type": "Boolean",
100
- "desc": "Popup labels (for left and right thumbs) when user clicks/taps on the slider thumb and moves it",
101
- "category": "labels"
102
- },
103
- "label-color": {
87
+ "track-color": {
104
88
  "type": "String",
105
- "desc": "Color name for labels background from the Quasar Color Palette; Applies to both labels, unless specific label color props are used",
89
+ "desc": "Color name for the track (can be 'transparent' too) from the Quasar Color Palette",
106
90
  "examples": [
107
91
  "primary",
108
92
  "teal-10"
109
93
  ],
110
- "category": "labels"
94
+ "category": "style",
95
+ "addedIn": "v1.17"
111
96
  },
112
- "label-text-color": {
97
+ "track-img": {
113
98
  "type": "String",
114
- "desc": "Color name for labels text from the Quasar Color Palette; Applies to both labels, unless specific label text color props are used",
99
+ "desc": "Apply a pattern image on the track",
100
+ "transformAssetUrls": true,
115
101
  "examples": [
116
- "primary",
117
- "teal-10"
102
+ "~assets/my-pattern.png"
118
103
  ],
119
- "category": "labels",
120
- "addedIn": "v1.1.0"
104
+ "category": "style",
105
+ "addedIn": "v1.17"
121
106
  },
122
- "left-label-color": {
107
+ "inner-track-color": {
123
108
  "type": "String",
124
- "desc": "Color name for left label background from the Quasar Color Palette",
109
+ "desc": "Color name for the inner track (can be 'transparent' too) from the Quasar Color Palette",
125
110
  "examples": [
126
111
  "primary",
127
112
  "teal-10"
128
113
  ],
129
- "category": "labels"
114
+ "category": "style",
115
+ "addedIn": "v1.17"
130
116
  },
131
- "left-label-text-color": {
117
+ "inner-track-img": {
132
118
  "type": "String",
133
- "desc": "Color name for left label text from the Quasar Color Palette",
119
+ "desc": "Apply a pattern image on the inner track",
120
+ "transformAssetUrls": true,
121
+ "examples": [
122
+ "~assets/my-pattern.png"
123
+ ],
124
+ "category": "style",
125
+ "addedIn": "v1.17"
126
+ },
127
+ "selection-color": {
128
+ "type": "String",
129
+ "desc": "Color name for the selection bar (can be 'transparent' too) from the Quasar Color Palette",
134
130
  "examples": [
135
131
  "primary",
136
132
  "teal-10"
137
133
  ],
138
- "category": "labels",
139
- "addedIn": "v1.1.0"
134
+ "category": "style",
135
+ "addedIn": "v1.17"
140
136
  },
141
- "right-label-color": {
137
+ "selection-img": {
142
138
  "type": "String",
143
- "desc": "Color name for right label background from the Quasar Color Palette",
139
+ "desc": "Apply a pattern image on the selection bar",
140
+ "transformAssetUrls": true,
141
+ "examples": [
142
+ "~assets/my-pattern.png"
143
+ ],
144
+ "category": "style",
145
+ "addedIn": "v1.17"
146
+ },
147
+ "label": {
148
+ "type": "Boolean",
149
+ "desc": "Popup a label when user clicks/taps on the slider thumb and moves it",
150
+ "category": "content"
151
+ },
152
+ "label-color": {
153
+ "type": "String",
154
+ "desc": "Color name for component from the Quasar Color Palette",
144
155
  "examples": [
145
156
  "primary",
146
157
  "teal-10"
147
158
  ],
148
- "category": "labels"
159
+ "category": "style"
149
160
  },
150
- "right-label-text-color": {
161
+ "label-text-color": {
151
162
  "type": "String",
152
- "desc": "Color name for right label text from the Quasar Color Palette",
163
+ "desc": "Color name for component from the Quasar Color Palette",
153
164
  "examples": [
154
165
  "primary",
155
166
  "teal-10"
156
167
  ],
157
- "category": "labels",
168
+ "category": "style",
158
169
  "addedIn": "v1.1.0"
159
170
  },
160
- "left-label-value": {
171
+ "switch-label-side": {
172
+ "type": "Boolean",
173
+ "desc": "Switch the position of the label (top <-> bottom or left <-> right)",
174
+ "category": "style",
175
+ "addedIn": "v1.17"
176
+ },
177
+ "label-always": {
178
+ "type": "Boolean",
179
+ "desc": "Always display the label",
180
+ "category": "behavior|content"
181
+ },
182
+ "markers": {
161
183
  "type": [
162
- "String",
184
+ "Boolean",
163
185
  "Number"
164
186
  ],
165
- "desc": "Override default label for min value",
187
+ "desc": "Display markers on the track, one for each possible value for the model or using a custom step (when specifying a Number)",
188
+ "category": "content",
166
189
  "examples": [
167
- ":left-label-value=\"model.min + 'px'\""
168
- ],
169
- "category": "labels"
190
+ "markers",
191
+ ":markers=\"5\""
192
+ ]
170
193
  },
171
- "right-label-value": {
194
+ "marker-labels": {
172
195
  "type": [
173
- "String",
174
- "Number"
196
+ "Boolean",
197
+ "Array",
198
+ "Object",
199
+ "Function"
175
200
  ],
176
- "desc": "Override default label for max value",
201
+ "tsType": "SliderMarkerLabels",
202
+ "desc": "Configure the marker labels (or show the default ones if 'true'); Array of definition Objects or Object with key-value where key is the model and the value is the marker label definition",
203
+ "definition": {
204
+ "value": {
205
+ "type": "Number",
206
+ "required": true,
207
+ "desc": "Value of equivalent model where to position the marker"
208
+ },
209
+ "label": {
210
+ "type": [
211
+ "Number",
212
+ "String"
213
+ ],
214
+ "desc": "Label to use"
215
+ },
216
+ "classes": {
217
+ "type": [
218
+ "String",
219
+ "Array",
220
+ "Object"
221
+ ],
222
+ "desc": "CSS classes to be attributed to the marker label",
223
+ "examples": [
224
+ "my-class-name"
225
+ ]
226
+ },
227
+ "style": {
228
+ "type": "Object",
229
+ "desc": "Style definitions to be attributed to the marker label",
230
+ "examples": [
231
+ "{ height: '24px' }"
232
+ ]
233
+ }
234
+ },
235
+ "params": {
236
+ "value": {
237
+ "type": "Number",
238
+ "desc": "The marker value to transform",
239
+ "required": true,
240
+ "examples": [
241
+ "5"
242
+ ]
243
+ }
244
+ },
245
+ "returns": {
246
+ "type": [
247
+ "String",
248
+ "Object"
249
+ ],
250
+ "desc": "Marker definition Object or directly a String for the label of the marker",
251
+ "definition": {
252
+ "value": {
253
+ "type": "Number",
254
+ "desc": "Value of equivalent model where to position the marker"
255
+ },
256
+ "label": {
257
+ "type": [
258
+ "Number",
259
+ "String"
260
+ ],
261
+ "desc": "Label to use"
262
+ },
263
+ "classes": {
264
+ "type": [
265
+ "String",
266
+ "Array",
267
+ "Object"
268
+ ],
269
+ "desc": "CSS classes to be attributed to the marker label",
270
+ "examples": [
271
+ "my-class-name"
272
+ ]
273
+ },
274
+ "style": {
275
+ "type": "Object",
276
+ "desc": "Style definitions to be attributed to the marker label",
277
+ "examples": [
278
+ "{ height: '24px' }"
279
+ ]
280
+ }
281
+ }
282
+ },
283
+ "category": "content",
177
284
  "examples": [
178
- ":right-label-value=\"model.max + 'px'\""
285
+ true,
286
+ "[ { value: 0, label: '0%' }, { value: 5, classes: 'my-class', style: { width: '24px' } } ]",
287
+ "{ 0: '0%', 5: { label: '5%', classes: 'my-class', style: { width: '24px' } } }",
288
+ "val => (10 * val) + '%'",
289
+ "val => ({ label: (10 * val) + '%', classes: 'my-class', style: { width: '24px' } })"
179
290
  ],
180
- "category": "labels"
291
+ "addedIn": "v1.17"
181
292
  },
182
- "label-always": {
183
- "type": "Boolean",
184
- "desc": "Always display the labels",
185
- "category": "labels"
293
+ "marker-labels-class": {
294
+ "type": "String",
295
+ "desc": "CSS class(es) to apply to the marker labels container",
296
+ "examples": [
297
+ "text-orange"
298
+ ],
299
+ "category": "style",
300
+ "addedIn": "v1.17"
186
301
  },
187
- "markers": {
302
+ "switch-marker-labels-side": {
188
303
  "type": "Boolean",
189
- "desc": "Display markers on the track, one for each possible value for the model",
190
- "category": "content"
304
+ "desc": "Switch the position of the marker labels (top <-> bottom or left <-> right)",
305
+ "category": "style",
306
+ "addedIn": "v1.17"
191
307
  },
192
- "snap": {
193
- "type": "Boolean",
194
- "desc": "Snap thumbs on valid values, rather than sliding freely; Suggestion: use with 'step' prop",
195
- "category": "content"
308
+ "track-size": {
309
+ "type": "String",
310
+ "desc": "Track size (including CSS unit)",
311
+ "default": "4px",
312
+ "examples": [
313
+ "35px"
314
+ ],
315
+ "category": "style",
316
+ "addedIn": "v1.17"
317
+ },
318
+ "thumb-size": {
319
+ "type": "String",
320
+ "desc": "Thumb size (including CSS unit)",
321
+ "default": "20px",
322
+ "examples": [
323
+ "20px"
324
+ ],
325
+ "category": "style",
326
+ "addedIn": "v1.17"
327
+ },
328
+ "thumb-color": {
329
+ "type": "String",
330
+ "desc": "Color name for component from the Quasar Color Palette",
331
+ "examples": [
332
+ "primary",
333
+ "teal-10"
334
+ ],
335
+ "category": "style",
336
+ "addedIn": "v1.17"
196
337
  },
197
338
  "thumb-path": {
198
339
  "type": "String",
199
- "desc": "Set custom thumbs svg path",
340
+ "desc": "Set custom thumb svg path",
200
341
  "default": "M 4, 10 a 6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0",
201
342
  "examples": [
202
343
  "M5 5 h10 v10 h-10 v-10"
@@ -235,21 +376,355 @@
235
376
  "100"
236
377
  ],
237
378
  "category": "general"
379
+ },
380
+ "value": {
381
+ "type": "Object",
382
+ "desc": "Model of the component of type { min, max } (both values must be between global min/max); Either use this property (along with a listener for 'input' event) OR use v-model directive",
383
+ "definition": {
384
+ "min": {
385
+ "type": "Number",
386
+ "desc": "Model value for left thumb",
387
+ "examples": [
388
+ 2
389
+ ]
390
+ },
391
+ "max": {
392
+ "type": "Number",
393
+ "desc": "Model value for right thumb",
394
+ "examples": [
395
+ 12
396
+ ]
397
+ }
398
+ },
399
+ "examples": [
400
+ "v-model=\"positionModel\""
401
+ ],
402
+ "category": "model"
403
+ },
404
+ "drag-range": {
405
+ "type": "Boolean",
406
+ "desc": "User can drag range instead of just the two thumbs",
407
+ "category": "content"
408
+ },
409
+ "drag-only-range": {
410
+ "type": "Boolean",
411
+ "desc": "User can drag only the range instead and NOT the two thumbs",
412
+ "category": "content"
413
+ },
414
+ "left-label-color": {
415
+ "type": "String",
416
+ "desc": "Color name for left label background from the Quasar Color Palette",
417
+ "examples": [
418
+ "primary",
419
+ "teal-10"
420
+ ],
421
+ "category": "labels"
422
+ },
423
+ "left-label-text-color": {
424
+ "type": "String",
425
+ "desc": "Color name for left label text from the Quasar Color Palette",
426
+ "examples": [
427
+ "primary",
428
+ "teal-10"
429
+ ],
430
+ "category": "labels",
431
+ "addedIn": "v1.1.0"
432
+ },
433
+ "right-label-color": {
434
+ "type": "String",
435
+ "desc": "Color name for right label background from the Quasar Color Palette",
436
+ "examples": [
437
+ "primary",
438
+ "teal-10"
439
+ ],
440
+ "category": "labels"
441
+ },
442
+ "right-label-text-color": {
443
+ "type": "String",
444
+ "desc": "Color name for right label text from the Quasar Color Palette",
445
+ "examples": [
446
+ "primary",
447
+ "teal-10"
448
+ ],
449
+ "category": "labels",
450
+ "addedIn": "v1.1.0"
451
+ },
452
+ "left-label-value": {
453
+ "type": [
454
+ "String",
455
+ "Number"
456
+ ],
457
+ "desc": "Override default label for min value",
458
+ "examples": [
459
+ ":left-label-value=\"model.min + 'px'\""
460
+ ],
461
+ "category": "labels"
462
+ },
463
+ "right-label-value": {
464
+ "type": [
465
+ "String",
466
+ "Number"
467
+ ],
468
+ "desc": "Override default label for max value",
469
+ "examples": [
470
+ ":right-label-value=\"model.max + 'px'\""
471
+ ],
472
+ "category": "labels"
473
+ },
474
+ "left-thumb-color": {
475
+ "type": "String",
476
+ "desc": "Color name (from the Quasar Color Palette) for left thumb",
477
+ "examples": [
478
+ "primary",
479
+ "teal-10"
480
+ ],
481
+ "category": "labels",
482
+ "addedIn": "v1.17"
483
+ },
484
+ "right-thumb-color": {
485
+ "type": "String",
486
+ "desc": "Color name (from the Quasar Color Palette) for right thumb",
487
+ "examples": [
488
+ "primary",
489
+ "teal-10"
490
+ ],
491
+ "category": "labels",
492
+ "addedIn": "v1.17"
238
493
  }
239
494
  },
240
- "events": {
241
- "input": {
242
- "desc": "Emitted when the component needs to change the model; Is also used by v-model",
243
- "params": {
244
- "value": {
245
- "type": "Any",
246
- "desc": "New model value",
247
- "required": true
495
+ "scopedSlots": {
496
+ "marker-label": {
497
+ "desc": "What to be used to display the marker label",
498
+ "addedIn": "v1.17",
499
+ "scope": {
500
+ "marker": {
501
+ "type": "Object",
502
+ "desc": "Config for current marker label",
503
+ "definition": {
504
+ "index": {
505
+ "type": "Number",
506
+ "desc": "Index of the marker label (0-based)"
507
+ },
508
+ "value": {
509
+ "type": "Number",
510
+ "desc": "Equivalent model value for the marker label"
511
+ },
512
+ "label": {
513
+ "type": [
514
+ "Number",
515
+ "String"
516
+ ],
517
+ "desc": "Configured label for the marker"
518
+ },
519
+ "classes": {
520
+ "type": "String",
521
+ "desc": "Required CSS classes to be applied to the marker element"
522
+ },
523
+ "style": {
524
+ "type": "Object",
525
+ "desc": "Style definitions to be attributed to the marker label",
526
+ "examples": [
527
+ "{ height: '24px' }"
528
+ ]
529
+ }
530
+ }
531
+ },
532
+ "markerList": {
533
+ "type": "Array",
534
+ "desc": "Array of marker label configs",
535
+ "definition": {
536
+ "index": {
537
+ "type": "Number",
538
+ "desc": "Index of the marker label (0-based)"
539
+ },
540
+ "value": {
541
+ "type": "Number",
542
+ "desc": "Equivalent model value for the marker label"
543
+ },
544
+ "label": {
545
+ "type": [
546
+ "Number",
547
+ "String"
548
+ ],
549
+ "desc": "Configured label for the marker"
550
+ },
551
+ "classes": {
552
+ "type": "String",
553
+ "desc": "Required CSS classes to be applied to the marker element"
554
+ },
555
+ "style": {
556
+ "type": "Object",
557
+ "desc": "Style definitions to be attributed to the marker label",
558
+ "examples": [
559
+ "{ height: '24px' }"
560
+ ]
561
+ }
562
+ }
563
+ },
564
+ "markerMap": {
565
+ "type": "Object",
566
+ "desc": "Object with key-value where key is the model and the value is the marker label config",
567
+ "definition": {
568
+ "...key": {
569
+ "type": "Object",
570
+ "desc": "Marker label config",
571
+ "definition": {
572
+ "index": {
573
+ "type": "Number",
574
+ "desc": "Index of the marker label (0-based)"
575
+ },
576
+ "value": {
577
+ "type": "Number",
578
+ "desc": "Equivalent model value for the marker label"
579
+ },
580
+ "label": {
581
+ "type": [
582
+ "Number",
583
+ "String"
584
+ ],
585
+ "desc": "Configured label for the marker"
586
+ },
587
+ "classes": {
588
+ "type": "String",
589
+ "desc": "Required CSS classes to be applied to the marker element"
590
+ },
591
+ "style": {
592
+ "type": "Object",
593
+ "desc": "Style definitions to be attributed to the marker label",
594
+ "examples": [
595
+ "{ height: '24px' }"
596
+ ]
597
+ }
598
+ }
599
+ }
600
+ }
601
+ },
602
+ "classes": {
603
+ "type": "String",
604
+ "desc": "Required CSS classes to be applied to the marker element"
605
+ },
606
+ "getStyle": {
607
+ "type": "Function",
608
+ "desc": "Get CSS style Object to apply to a marker element at respective model value; For perf reasons, use only if requested model value is not already part of markerMap",
609
+ "params": {
610
+ "value": {
611
+ "type": "Number",
612
+ "desc": "The marker label equivalent model value",
613
+ "required": true,
614
+ "examples": [
615
+ "5"
616
+ ]
617
+ }
618
+ },
619
+ "returns": {
620
+ "type": "Object",
621
+ "desc": "CSS style Object to apply to a marker element at respective model value"
622
+ }
248
623
  }
249
624
  }
250
625
  },
626
+ "marker-label-group": {
627
+ "desc": "What to be used to display the marker label group",
628
+ "addedIn": "v1.17",
629
+ "scope": {
630
+ "markerList": {
631
+ "type": "Array",
632
+ "desc": "Array of marker label configs",
633
+ "definition": {
634
+ "index": {
635
+ "type": "Number",
636
+ "desc": "Index of the marker label (0-based)"
637
+ },
638
+ "value": {
639
+ "type": "Number",
640
+ "desc": "Equivalent model value for the marker label"
641
+ },
642
+ "label": {
643
+ "type": [
644
+ "Number",
645
+ "String"
646
+ ],
647
+ "desc": "Configured label for the marker"
648
+ },
649
+ "classes": {
650
+ "type": "String",
651
+ "desc": "Required CSS classes to be applied to the marker element"
652
+ },
653
+ "style": {
654
+ "type": "Object",
655
+ "desc": "Style definitions to be attributed to the marker label",
656
+ "examples": [
657
+ "{ height: '24px' }"
658
+ ]
659
+ }
660
+ }
661
+ },
662
+ "markerMap": {
663
+ "type": "Object",
664
+ "desc": "Object with key-value where key is the model and the value is the marker label config",
665
+ "definition": {
666
+ "...key": {
667
+ "type": "Object",
668
+ "desc": "Marker label config",
669
+ "definition": {
670
+ "index": {
671
+ "type": "Number",
672
+ "desc": "Index of the marker label (0-based)"
673
+ },
674
+ "value": {
675
+ "type": "Number",
676
+ "desc": "Equivalent model value for the marker label"
677
+ },
678
+ "label": {
679
+ "type": [
680
+ "Number",
681
+ "String"
682
+ ],
683
+ "desc": "Configured label for the marker"
684
+ },
685
+ "classes": {
686
+ "type": "String",
687
+ "desc": "Required CSS classes to be applied to the marker element"
688
+ },
689
+ "style": {
690
+ "type": "Object",
691
+ "desc": "Style definitions to be attributed to the marker label",
692
+ "examples": [
693
+ "{ height: '24px' }"
694
+ ]
695
+ }
696
+ }
697
+ }
698
+ }
699
+ },
700
+ "classes": {
701
+ "type": "String",
702
+ "desc": "Required CSS classes to be applied to the marker element"
703
+ },
704
+ "getStyle": {
705
+ "type": "Function",
706
+ "desc": "Get CSS style Object to apply to a marker element at respective model value; For perf reasons, use only if requested model value is not already part of markerMap",
707
+ "params": {
708
+ "value": {
709
+ "type": "Number",
710
+ "desc": "The marker label equivalent model value",
711
+ "required": true,
712
+ "examples": [
713
+ "5"
714
+ ]
715
+ }
716
+ },
717
+ "returns": {
718
+ "type": "Object",
719
+ "desc": "CSS style Object to apply to a marker element at respective model value"
720
+ }
721
+ }
722
+ }
723
+ }
724
+ },
725
+ "events": {
251
726
  "change": {
252
- "desc": "Emitted on lazy model value change (after user slides then releases thumb)",
727
+ "desc": "Emitted on lazy model value change (after user slides then releases the thumb)",
253
728
  "params": {
254
729
  "value": {
255
730
  "type": "Any",
@@ -271,6 +746,16 @@
271
746
  }
272
747
  },
273
748
  "addedIn": "v1.14.0"
749
+ },
750
+ "input": {
751
+ "desc": "Emitted when the component needs to change the model; Is also used by v-model",
752
+ "params": {
753
+ "value": {
754
+ "type": "Any",
755
+ "desc": "New model value",
756
+ "required": true
757
+ }
758
+ }
274
759
  }
275
760
  }
276
761
  }