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
package/dist/quasar.sass CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Quasar Framework v2.3.2
2
+ * Quasar Framework v2.4.1
3
3
  * (c) 2015-present Razvan Stoenescu
4
4
  * Released under the MIT License.
5
5
  */
@@ -822,8 +822,6 @@ input[type='search']::-webkit-search-decoration
822
822
  font-size: 125%
823
823
  &--with-label
824
824
  margin-right: 8px
825
- &--last a
826
- pointer-events: none
827
825
  [dir=rtl] .q-breadcrumbs__separator .q-icon
828
826
  transform: scaleX(-1) #{"/* rtl:ignore */"}
829
827
  .q-btn
@@ -1549,40 +1547,30 @@ body.desktop .q-chip--clickable:focus
1549
1547
  box-shadow: 0 0 0 1.5px #fff, inset 0 0 1px 1px rgba(0,0,0,.3), 0 0 1px 2px rgba(0,0,0,.4)
1550
1548
  border-radius: 50%
1551
1549
  transform: translate(-5px, -5px)
1552
- &__hue .q-slider__track-container
1550
+ &__hue .q-slider__track
1553
1551
  background: linear-gradient(to right, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%) !important
1554
1552
  opacity: 1
1555
- &__alpha .q-slider__track-container
1556
- color: #fff
1557
- opacity: 1
1558
- height: 8px
1559
- background-color: #fff !important
1560
- background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==') !important
1561
- &:after
1553
+ &__alpha
1554
+ .q-slider__track-container
1555
+ padding-top: 0
1556
+ .q-slider__track:before
1562
1557
  content: ''
1563
1558
  position: absolute
1564
1559
  top: 0
1565
1560
  right: 0
1566
1561
  bottom: 0
1567
1562
  left: 0
1563
+ border-radius: inherit
1568
1564
  background: linear-gradient(90deg, rgba(255,255,255,0), $grey-7)
1569
1565
  &__sliders
1570
- padding: 4px 16px 16px
1571
- .q-slider__track-container
1572
- height: 10px
1573
- margin-top: -5px
1574
- .q-slider__track
1575
- display: none
1566
+ padding: 0 16px
1576
1567
  .q-slider__thumb
1568
+ color: $grey-9
1577
1569
  path
1578
1570
  stroke-width: 2px
1579
1571
  fill: transparent
1580
1572
  .q-slider--active path
1581
1573
  stroke-width: 3px
1582
- .q-slider
1583
- height: 16px
1584
- margin-top: 8px
1585
- color: $grey-9
1586
1574
 
1587
1575
  &__tune-tab
1588
1576
  .q-slider
@@ -1621,8 +1609,8 @@ body.desktop .q-chip--clickable:focus
1621
1609
  &--dark
1622
1610
  .q-color-picker__tune-tab input
1623
1611
  border: 1px solid rgba(#fff, .3)
1624
- .q-slider
1625
- color: $grey-5
1612
+ .q-slider__thumb
1613
+ color: $grey-1
1626
1614
  .q-date
1627
1615
  display: inline-flex
1628
1616
  box-shadow: $shadow-2
@@ -1705,6 +1693,8 @@ body.desktop .q-chip--clickable:focus
1705
1693
  > div
1706
1694
  line-height: 30px
1707
1695
  text-align: center
1696
+ > button
1697
+ line-height: 22px
1708
1698
  &--out
1709
1699
  opacity: .18
1710
1700
  &--fill
@@ -1952,7 +1942,9 @@ body.q-ios-padding .q-dialog__inner
1952
1942
  background-color: #fff
1953
1943
  &.disabled
1954
1944
  border-style: dashed
1955
- > div:first-child, &__toolbars-container, &__toolbars-container > div:first-child
1945
+ > div:first-child,
1946
+ &__toolbars-container,
1947
+ &__toolbars-container > div:first-child
1956
1948
  border-top-left-radius: inherit
1957
1949
  border-top-right-radius: inherit
1958
1950
  &__content
@@ -1962,6 +1954,7 @@ body.q-ios-padding .q-dialog__inner
1962
1954
  border-bottom-left-radius: inherit
1963
1955
  border-bottom-right-radius: inherit
1964
1956
  overflow: auto
1957
+ max-width: 100%
1965
1958
  pre
1966
1959
  white-space: pre-wrap
1967
1960
  hr
@@ -1976,6 +1969,8 @@ body.q-ios-padding .q-dialog__inner
1976
1969
  &__toolbar
1977
1970
  border-bottom: 1px solid $editor-border-color
1978
1971
  min-height: 32px
1972
+ &__toolbars-container
1973
+ max-width: 100%
1979
1974
  .q-btn
1980
1975
  margin: $editor-button-gutter
1981
1976
  &__toolbar-group
@@ -2182,7 +2177,6 @@ body.q-ios-padding .q-dialog__inner
2182
2177
  &--up, &--down
2183
2178
  left: 50%
2184
2179
  margin-left: -28px
2185
-
2186
2180
  &--opened
2187
2181
  opacity: 1
2188
2182
  transform: scale(1) translate(0, 0)
@@ -2633,8 +2627,10 @@ $field-transition-label-right-up: .324s cubic-bezier(.4,0,.2,1)
2633
2627
  &::-webkit-file-upload-button
2634
2628
  cursor: pointer
2635
2629
  &__filler
2636
- opacity: 0
2637
- pointer-events: none
2630
+ visibility: hidden
2631
+ width: 100%
2632
+ border: none
2633
+ padding: 0
2638
2634
  &__dnd
2639
2635
  outline: 1px dashed currentColor
2640
2636
  outline-offset: -4px
@@ -3035,7 +3031,7 @@ body.platform-ios
3035
3031
  &--dark
3036
3032
  background: rgba(255,255,255,.6)
3037
3033
  &__stripe
3038
- transition: width .3s
3034
+ transition: width var(--q-linear-progress-speed)
3039
3035
  background-image: linear-gradient(45deg, rgba(255,255,255,.15) 25%, rgba(255,255,255,0) 25%, rgba(255,255,255,0) 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, rgba(255,255,255,0) 75%, rgba(255,255,255,0)) !important
3040
3036
  background-size: 40px 40px !important
3041
3037
  @keyframes q-linear-progress--indeterminate
@@ -3483,195 +3479,250 @@ body.platform-ios
3483
3479
  cursor: pointer
3484
3480
  .q-slider
3485
3481
  position: relative
3486
- color: var(--q-primary)
3487
- outline: 0
3488
3482
  &--h
3489
3483
  width: 100%
3490
- height: 40px
3491
3484
  &--v
3492
- width: 40px
3493
3485
  height: 200px
3486
+ &--editable .q-slider__track-container
3487
+ cursor: grab
3494
3488
  &__track-container
3495
- background: rgba(0,0,0,.26)
3489
+ outline: 0
3496
3490
  &--h
3497
- top: 50%
3498
- margin-top: -1px
3499
3491
  width: 100%
3500
- height: 2px
3492
+ padding: 12px 0
3493
+ .q-slider__selection
3494
+ will-change: width, left
3501
3495
  &--v
3502
- left: 50%
3503
- margin-left: -1px
3504
3496
  height: 100%
3505
- width: 2px
3497
+ padding: 0 12px
3498
+ .q-slider__selection
3499
+ will-change: height, top
3506
3500
  &__track
3501
+ color: var(--q-primary)
3502
+ background: rgba(0,0,0,.1)
3503
+ border-radius: $generic-border-radius
3504
+ width: inherit
3505
+ height: inherit
3506
+ &__inner
3507
+ background: rgba(0,0,0,.1)
3508
+ border-radius: inherit
3509
+ width: 100%
3510
+ height: 100%
3511
+ &__selection
3507
3512
  background: currentColor
3508
- &--h
3509
- will-change: width, left
3510
- top: 0
3511
- bottom: 0
3512
- &--v
3513
- will-change: height, top
3514
- left: 0
3515
- right: 0
3516
- &__track-markers
3517
- color: #000
3518
- &--h
3519
- background-image: repeating-linear-gradient(to right, currentColor, currentColor 2px, rgba(255,255,255,0) 0, rgba(255,255,255,0))
3520
- &--v
3521
- background-image: repeating-linear-gradient(to top, currentColor, currentColor 2px, rgba(255,255,255,0) 0, rgba(255,255,255,0))
3513
+ border-radius: inherit
3514
+ width: 100%
3515
+ height: 100%
3516
+ &__markers
3517
+ color: rgba(0,0,0,.3)
3518
+ border-radius: inherit
3519
+ width: 100%
3520
+ height: 100%
3522
3521
  &:after
3523
3522
  content: ''
3524
3523
  position: absolute
3525
- right: 0
3526
- top: 0
3527
- bottom: 0
3528
- height: 2px
3529
- width: 2px
3530
3524
  background: currentColor
3531
- &__thumb-container
3532
- width: 20px
3533
- height: 20px
3525
+ &--h
3526
+ background-image: repeating-linear-gradient(to right, currentColor, currentColor 2px, rgba(255,255,255,0) 0, rgba(255,255,255,0))
3527
+ &:after
3528
+ height: 100%
3529
+ width: 2px
3530
+ top: 0
3531
+ right: 0
3532
+ &--v
3533
+ background-image: repeating-linear-gradient(to bottom, currentColor, currentColor 2px, rgba(255,255,255,0) 0, rgba(255,255,255,0))
3534
+ &:after
3535
+ width: 100%
3536
+ height: 2px
3537
+ left: 0
3538
+ bottom: 0
3539
+ &__marker-labels-container
3540
+ position: relative
3541
+ width: 100%
3542
+ height: 100%
3543
+ min-height: 24px
3544
+ min-width: 24px
3545
+ &__marker-labels
3546
+ position: absolute
3547
+ &--h
3548
+ &-standard
3549
+ top: 0
3550
+ &-switched
3551
+ bottom: 0
3552
+ &-ltr
3553
+ transform: translateX(-50%) #{"/* rtl:ignore */"}
3554
+ &-rtl
3555
+ transform: translateX(50%) #{"/* rtl:ignore */"}
3556
+ &--v
3557
+ &-standard
3558
+ left: 4px
3559
+ &-switched
3560
+ right: 4px
3561
+ &-ltr
3562
+ transform: translateY(-50%) #{"/* rtl:ignore */"}
3563
+ &-rtl
3564
+ transform: translateY(50%) #{"/* rtl:ignore */"}
3565
+ &__thumb
3566
+ z-index: 1
3534
3567
  outline: 0
3568
+ color: var(--q-primary)
3569
+ transition: transform .18s ease-out, fill .18s ease-out, stroke .18s ease-out
3535
3570
  &--h
3536
3571
  top: 50%
3537
- margin-top: -10px
3538
- transform: translateX(-10px) #{"/* rtl:ignore */"}
3539
3572
  will-change: left
3573
+ &-ltr
3574
+ transform: scale(1) translate(-50%,-50%) #{"/* rtl:ignore */"}
3575
+ &-rtl
3576
+ transform: scale(1) translate(50%,-50%) #{"/* rtl:ignore */"}
3540
3577
  &--v
3541
- left: 50%
3542
- margin-left: -10px
3543
- transform: translateY(-10px)
3578
+ left: 50% #{"/* rtl:ignore */"}
3544
3579
  will-change: top
3545
- &__thumb
3580
+ &-ltr
3581
+ transform: scale(1) translate(-50%,-50%) #{"/* rtl:ignore */"}
3582
+ &-rtl
3583
+ transform: scale(1) translate(-50%,50%) #{"/* rtl:ignore */"}
3584
+ &__thumb-shape
3546
3585
  top: 0
3547
3586
  left: 0
3548
- transform: scale(1)
3549
- transition: transform .18s ease-out, fill .18s ease-out, stroke .18s ease-out
3550
3587
  stroke-width: 3.5
3551
3588
  stroke: currentColor
3589
+ transition: transform .28s
3552
3590
  path
3553
3591
  stroke: currentColor
3554
3592
  fill: currentColor
3555
3593
  &__focus-ring
3556
- width: 20px
3557
- height: 20px
3558
- transition: transform 266.67ms ease-out, opacity 266.67ms ease-out, background-color 266.67ms ease-out
3559
3594
  border-radius: 50%
3560
3595
  opacity: 0
3596
+ transition: transform 266.67ms ease-out, opacity 266.67ms ease-out, background-color 266.67ms ease-out
3561
3597
  transition-delay: .14s
3562
- &__arrow
3563
- position: absolute
3564
- width: 0
3565
- height: 0
3566
- transform-origin: 50% 50%
3567
- transition: transform 100ms ease-out
3598
+ &__pin
3599
+ opacity: 0
3600
+ white-space: nowrap
3601
+ transition: opacity .28s ease-out
3602
+ transition-delay: .14s
3603
+ &:before
3604
+ content: ''
3605
+ width: 0
3606
+ height: 0
3607
+ position: absolute
3568
3608
  &--h
3569
- top: 19px
3570
- left: 4px
3571
- border-top: 6px solid currentColor
3572
- border-left: 6px solid transparent
3573
- border-right: 6px solid transparent
3574
- transform: scale(0) translateY(0)
3609
+ &:before
3610
+ border-left: 6px solid transparent
3611
+ border-right: 6px solid transparent
3612
+ left: 50%
3613
+ transform: translateX(-50%)
3614
+ &-standard
3615
+ bottom: 100%
3616
+ &:before
3617
+ bottom: 2px
3618
+ border-top: 6px solid currentColor
3619
+ &-switched
3620
+ top: 100%
3621
+ &:before
3622
+ top: 2px
3623
+ border-bottom: 6px solid currentColor
3575
3624
  &--v
3576
- top: 4px
3577
- left: 15px
3578
- border-top: 6px solid transparent
3579
- border-bottom: 6px solid transparent
3580
- border-right: 6px solid currentColor
3581
- transform: scale(0) translateX(-20px)
3582
- &__pin
3583
- transition: transform 100ms ease-out
3625
+ top: 0
3626
+ &:before
3627
+ top: 50%
3628
+ transform: translateY(-50%)
3629
+ border-top: 6px solid transparent
3630
+ border-bottom: 6px solid transparent
3631
+ &-standard
3632
+ left: 100%
3633
+ &:before
3634
+ left: 2px
3635
+ border-right: 6px solid currentColor
3636
+ &-switched
3637
+ right: 100%
3638
+ &:before
3639
+ right: 2px
3640
+ border-left: 6px solid currentColor
3641
+ &__label
3584
3642
  z-index: 1
3585
3643
  white-space: nowrap
3644
+ position: absolute
3586
3645
  &--h
3587
- bottom: 0
3588
- right: 0
3589
- transform: scale(0) translateY(0)
3590
- will-change: left
3646
+ left: 50%
3647
+ transform: translateX(-50%)
3648
+ &-standard
3649
+ bottom: 7px
3650
+ &-switched
3651
+ top: 7px
3591
3652
  &--v
3592
3653
  top: 50%
3593
- left: 20px
3594
- height: 0
3595
- transform: scale(0) translateX(-20px)
3596
- will-change: top
3597
- transform-origin: left center
3598
- &-text-container
3599
- min-height: 25px
3600
- padding: 2px 8px
3601
- border-radius: $generic-border-radius
3602
- background: currentColor
3603
- position: relative
3604
- text-align: center
3605
- &--h
3606
- right: -50%
3607
- &--v
3608
- transform: translateY(-50%)
3609
- &-text
3610
- color: #fff
3611
- font-size: 12px
3612
- &--editable
3613
- cursor: grab
3654
+ transform: translateY(-50%)
3655
+ &-standard
3656
+ left: 7px
3657
+ &-switched
3658
+ right: 7px
3659
+ &__text-container
3660
+ min-height: 25px
3661
+ padding: 2px 8px
3662
+ border-radius: $generic-border-radius
3663
+ background: currentColor
3664
+ position: relative
3665
+ text-align: center
3666
+ &__text
3667
+ color: #fff
3668
+ font-size: 12px
3614
3669
  &--no-value
3615
- .q-slider__thumb, .q-slider__track
3670
+ .q-slider__thumb,
3671
+ .q-slider__inner,
3672
+ .q-slider__selection
3616
3673
  visibility: hidden
3617
3674
  &--focus
3618
3675
  .q-slider__thumb
3619
3676
  transform: scale(1)
3620
- &--focus, body.desktop &.q-slider--editable:hover
3677
+ &--focus,
3678
+ body.desktop &.q-slider--editable .q-slider__track-container:hover
3621
3679
  .q-slider__focus-ring
3622
3680
  background: currentColor
3623
3681
  transform: scale3d(1.55, 1.55, 1)
3624
3682
  opacity: .25
3625
- .q-slider__thumb, .q-slider__track
3683
+ .q-slider__thumb,
3684
+ .q-slider__inner,
3685
+ .q-slider__selection
3626
3686
  visibility: visible
3627
3687
  &--inactive
3628
- .q-slider__thumb-container
3688
+ .q-slider__thumb
3629
3689
  &--h
3630
3690
  transition: left .28s, right .28s
3631
3691
  &--v
3632
3692
  transition: top .28s, bottom .28s
3633
- .q-slider__track
3634
- &--h
3635
- transition: width .28s, left .28s, right .28s
3636
- &--v
3637
- transition: height .28s, top .28s, bottom .28s
3693
+ .q-slider__selection
3694
+ transition: width .28s, left .28s, right .28s, height .28s, top .28s, bottom .28s
3695
+ .q-slider__text-container
3696
+ transition: transform .28s
3638
3697
  &--active
3639
3698
  cursor: grabbing
3640
- .q-slider__thumb
3699
+ .q-slider__thumb-shape
3641
3700
  transform: scale(1.5)
3642
- .q-slider__focus-ring, &.q-slider--label .q-slider__thumb
3701
+ .q-slider__focus-ring,
3702
+ &.q-slider--label .q-slider__thumb-shape
3643
3703
  transform: scale(0) !important
3644
- body.desktop &.q-slider--enabled:hover
3645
- .q-slider__pin,
3646
- .q-slider__arrow
3647
- &--h
3648
- transform: scale(1) translateY(-25px)
3649
- &--v
3650
- transform: scale(1) translateX(5px)
3704
+ body.desktop &.q-slider--enabled .q-slider__track-container:hover
3705
+ .q-slider__pin
3706
+ opacity: 1
3651
3707
  &--label
3652
- &.q-slider--active, .q-slider--focus, &.q-slider--label-always
3653
- .q-slider__pin,
3654
- .q-slider__arrow
3655
- &--h
3656
- transform: scale(1) translateY(-25px)
3657
- &--v
3658
- transform: scale(1) translateX(5px)
3708
+ &.q-slider--active,
3709
+ .q-slider--focus,
3710
+ &.q-slider--label-always
3711
+ .q-slider__pin
3712
+ opacity: 1
3659
3713
  &--dark
3714
+ .q-slider__track
3715
+ background: rgba(#fff,.1)
3716
+ .q-slider__inner
3717
+ background: rgba(#fff,.1)
3718
+ .q-slider__markers
3719
+ color: rgba(#fff,.3)
3720
+ &--dense
3660
3721
  .q-slider__track-container
3661
- background: rgba(#fff, .3)
3662
- .q-slider__track-markers
3663
- color: #fff
3664
- &--reversed
3665
- .q-slider__thumb-container
3666
3722
  &--h
3667
- transform: translateX(10px) #{"/* rtl:ignore */"}
3723
+ padding: 6px 0
3668
3724
  &--v
3669
- transform: translateY(10px)
3670
- &--dense
3671
- &--h
3672
- height: 20px
3673
- &--v
3674
- width: 20px
3725
+ padding: 0 6px
3675
3726
  .q-space
3676
3727
  flex-grow: 1 !important
3677
3728
  .q-spinner
@@ -3829,6 +3880,30 @@ body.platform-ios
3829
3880
  text-align: center
3830
3881
  &:before, &:after
3831
3882
  display: none
3883
+ &--contracted
3884
+ min-height: 72px
3885
+ &.q-stepper__header--alternative-labels
3886
+ .q-stepper__tab
3887
+ min-height: 72px
3888
+ &:first-child
3889
+ align-items: flex-start
3890
+ &:last-child
3891
+ align-items: flex-end
3892
+ .q-stepper__tab
3893
+ padding: 24px 0
3894
+ &:first-child
3895
+ .q-stepper__dot
3896
+ transform: translateX(24px)
3897
+ &:last-child
3898
+ .q-stepper__dot
3899
+ transform: translateX(-24px)
3900
+ .q-stepper__tab:not(:last-child)
3901
+ .q-stepper__dot:after
3902
+ display: block !important
3903
+ .q-stepper__dot
3904
+ margin: 0
3905
+ .q-stepper__label
3906
+ display: none
3832
3907
  &__nav
3833
3908
  padding-top: 24px
3834
3909
  &--bordered
@@ -3914,31 +3989,6 @@ body.platform-ios
3914
3989
  background: $separator-dark-color
3915
3990
  .q-stepper__label
3916
3991
  color: rgba(255,255,255,.54)
3917
- &--contracted
3918
- .q-stepper__header
3919
- min-height: 72px
3920
- &--alternative-labels
3921
- .q-stepper__tab
3922
- min-height: 72px
3923
- &:first-child
3924
- align-items: flex-start
3925
- &:last-child
3926
- align-items: flex-end
3927
- .q-stepper__tab
3928
- padding: 24px 0
3929
- &:first-child
3930
- .q-stepper__dot
3931
- transform: translateX(24px)
3932
- &:last-child
3933
- .q-stepper__dot
3934
- transform: translateX(-24px)
3935
- .q-stepper__tab:not(:last-child)
3936
- .q-stepper__dot:after
3937
- display: block !important
3938
- .q-stepper__dot
3939
- margin: 0
3940
- .q-stepper__label
3941
- display: none
3942
3992
  .q-tab-panels
3943
3993
  background: #fff
3944
3994
  .q-tab-panel
@@ -4904,39 +4954,42 @@ body.desktop
4904
4954
  .q-tree__node-header:before,
4905
4955
  .q-tree__node-body:after
4906
4956
  display: none !important
4907
- &--dense .q-tree
4908
- &__arrow,
4909
- &__spinner
4910
- margin-right: 1px
4911
- &__img
4912
- height: 32px
4913
- &__tickbox
4914
- margin-right: 3px
4915
- &__node
4916
- padding: 0
4917
- &:after
4918
- top: 0
4919
- left: -8px
4920
- &__node-header
4921
- margin-top: 0
4922
- padding: 1px
4923
- &:before
4924
- top: 0
4925
- left: -8px
4926
- width: 8px
4927
- &__node--child
4928
- padding-left: 17px
4929
- > .q-tree__node-header:before
4930
- left: -25px
4931
- width: 21px
4932
- &__node-body
4933
- padding: 0 0 2px
4934
- &__node--parent > .q-tree__node-collapsible > .q-tree__node-body
4935
- padding: 0 0 2px 20px
4936
- &:after
4937
- left: 8px
4938
- &__children
4939
- padding-left: 16px
4957
+ &--dense
4958
+ > .q-tree__node--child > .q-tree__node-header
4959
+ padding-left: 1px
4960
+ .q-tree
4961
+ &__arrow,
4962
+ &__spinner
4963
+ margin-right: 1px
4964
+ &__img
4965
+ height: 32px
4966
+ &__tickbox
4967
+ margin-right: 3px
4968
+ &__node
4969
+ padding: 0
4970
+ &:after
4971
+ top: 0
4972
+ left: -8px
4973
+ &__node-header
4974
+ margin-top: 0
4975
+ padding: 1px
4976
+ &:before
4977
+ top: 0
4978
+ left: -8px
4979
+ width: 8px
4980
+ &__node--child
4981
+ padding-left: 17px
4982
+ > .q-tree__node-header:before
4983
+ left: -25px
4984
+ width: 21px
4985
+ &__node-body
4986
+ padding: 0 0 2px
4987
+ &__node--parent > .q-tree__node-collapsible > .q-tree__node-body
4988
+ padding: 0 0 2px 20px
4989
+ &:after
4990
+ left: 8px
4991
+ &__children
4992
+ padding-left: 16px
4940
4993
  [dir=rtl]
4941
4994
  .q-tree__arrow
4942
4995
  transform: rotate3d(0, 0, 1, 180deg) #{"/* rtl:ignore */"}
@@ -5076,6 +5129,7 @@ img.responsive
5076
5129
  outline: 0
5077
5130
  &__content
5078
5131
  outline: none
5132
+ contain: content
5079
5133
  *
5080
5134
  overflow-anchor: none
5081
5135
  &__padding
@@ -6795,6 +6849,8 @@ body.q-ios-padding .q-notifications__list
6795
6849
  .q-link
6796
6850
  outline: 0
6797
6851
  text-decoration: none
6852
+ &--focusable:focus-visible
6853
+ text-decoration: underline dashed currentColor 1px
6798
6854
  body.electron
6799
6855
  .q-electron-drag
6800
6856
  -webkit-user-select: none
@@ -6920,6 +6976,10 @@ img.responsive
6920
6976
  border-radius: 0 !important
6921
6977
  max-width: 100vw
6922
6978
  max-height: 100vh
6979
+ body.q-ios-padding .fullscreen
6980
+ padding-top: $ios-statusbar-height !important
6981
+ padding-top: env(safe-area-inset-top) !important
6982
+ padding-bottom: env(safe-area-inset-bottom) !important
6923
6983
  .absolute-full, .fullscreen, .fixed-full
6924
6984
  top: 0
6925
6985
  right: 0