quasar 2.3.1 → 2.4.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.
- package/dist/api/AppFullscreen.json +15 -8
- package/dist/api/BottomSheet.json +6 -0
- package/dist/api/Cookies.json +4 -3
- package/dist/api/Dialog.json +24 -10
- package/dist/api/Loading.json +0 -2
- package/dist/api/LoadingBar.json +8 -3
- package/dist/api/Morph.json +14 -7
- package/dist/api/Mutation.json +1 -1
- package/dist/api/Notify.json +41 -27
- package/dist/api/QAjaxBar.json +6 -3
- package/dist/api/QBreadcrumbs.json +8 -4
- package/dist/api/QBreadcrumbsEl.json +35 -12
- package/dist/api/QBtn.json +36 -17
- package/dist/api/QBtnDropdown.json +41 -20
- package/dist/api/QBtnToggle.json +7 -2
- package/dist/api/QCard.json +2 -1
- package/dist/api/QCardActions.json +2 -1
- package/dist/api/QCardSection.json +2 -1
- package/dist/api/QCarousel.json +10 -5
- package/dist/api/QCarouselControl.json +4 -2
- package/dist/api/QChatMessage.json +0 -4
- package/dist/api/QCheckbox.json +8 -4
- package/dist/api/QChip.json +2 -1
- package/dist/api/QCircularProgress.json +14 -7
- package/dist/api/QColor.json +6 -3
- package/dist/api/QDate.json +33 -5
- package/dist/api/QDialog.json +8 -4
- package/dist/api/QDrawer.json +10 -5
- package/dist/api/QEditor.json +10 -5
- package/dist/api/QExpansionItem.json +36 -13
- package/dist/api/QFab.json +41 -6
- package/dist/api/QFabAction.json +12 -2
- package/dist/api/QField.json +3 -1
- package/dist/api/QFile.json +8 -2
- package/dist/api/QFooter.json +2 -1
- package/dist/api/QForm.json +1 -1
- package/dist/api/QHeader.json +4 -2
- package/dist/api/QIcon.json +2 -1
- package/dist/api/QImg.json +8 -4
- package/dist/api/QInfiniteScroll.json +6 -3
- package/dist/api/QInnerLoading.json +8 -4
- package/dist/api/QInput.json +3 -1
- package/dist/api/QIntersection.json +4 -2
- package/dist/api/QItem.json +33 -11
- package/dist/api/QKnob.json +8 -4
- package/dist/api/QLayout.json +9 -1
- package/dist/api/QLinearProgress.json +4 -2
- package/dist/api/QMarkupTable.json +2 -1
- package/dist/api/QMenu.json +8 -4
- package/dist/api/QNoSsr.json +2 -1
- package/dist/api/QOptionGroup.json +76 -5
- package/dist/api/QPage.json +2 -1
- package/dist/api/QPageScroller.json +8 -4
- package/dist/api/QPageSticky.json +2 -1
- package/dist/api/QPagination.json +10 -6
- package/dist/api/QParallax.json +2 -1
- package/dist/api/QPopupEdit.json +5 -2
- package/dist/api/QPopupProxy.json +7 -4
- package/dist/api/QRange.json +600 -111
- package/dist/api/QRating.json +5 -2
- package/dist/api/QResizeObserver.json +4 -1
- package/dist/api/QRouteTab.json +35 -13
- package/dist/api/QScrollArea.json +29 -6
- package/dist/api/QScrollObserver.json +13 -1
- package/dist/api/QSelect.json +76 -47
- package/dist/api/QSeparator.json +2 -1
- package/dist/api/QSkeleton.json +8 -4
- package/dist/api/QSlideItem.json +9 -0
- package/dist/api/QSlideTransition.json +2 -1
- package/dist/api/QSlider.json +512 -43
- package/dist/api/QSpinner.json +2 -1
- package/dist/api/QSplitter.json +4 -2
- package/dist/api/QStep.json +2 -1
- package/dist/api/QStepper.json +6 -3
- package/dist/api/QTab.json +4 -2
- package/dist/api/QTabPanels.json +6 -3
- package/dist/api/QTable.json +154 -88
- package/dist/api/QTabs.json +4 -2
- package/dist/api/QTime.json +16 -4
- package/dist/api/QTimeline.json +4 -2
- package/dist/api/QTimelineEntry.json +4 -2
- package/dist/api/QToggle.json +8 -4
- package/dist/api/QTooltip.json +18 -9
- package/dist/api/QTree.json +34 -19
- package/dist/api/QUploader.json +28 -6
- package/dist/api/QVirtualScroll.json +26 -11
- package/dist/api/ScrollFire.json +1 -1
- package/dist/api/TouchHold.json +2 -1
- package/dist/api/TouchRepeat.json +2 -1
- package/dist/api/TouchSwipe.json +2 -1
- package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
- package/dist/icon-set/eva-icons.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
- package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
- package/dist/icon-set/line-awesome.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
- package/dist/icon-set/material-icons.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v6.umd.prod.js +6 -0
- package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-themify.umd.prod.js +1 -1
- package/dist/icon-set/themify.umd.prod.js +1 -1
- package/dist/lang/ar.umd.prod.js +1 -1
- package/dist/lang/az-Latn.umd.prod.js +1 -1
- package/dist/lang/bg.umd.prod.js +1 -1
- package/dist/lang/bn.umd.prod.js +1 -1
- package/dist/lang/ca.umd.prod.js +1 -1
- package/dist/lang/cs.umd.prod.js +1 -1
- package/dist/lang/da.umd.prod.js +1 -1
- package/dist/lang/de.umd.prod.js +1 -1
- package/dist/lang/el.umd.prod.js +1 -1
- package/dist/lang/en-GB.umd.prod.js +1 -1
- package/dist/lang/en-US.umd.prod.js +1 -1
- package/dist/lang/eo.umd.prod.js +1 -1
- package/dist/lang/es.umd.prod.js +1 -1
- package/dist/lang/et.umd.prod.js +1 -1
- package/dist/lang/fa-IR.umd.prod.js +1 -1
- package/dist/lang/fa.umd.prod.js +1 -1
- package/dist/lang/fi.umd.prod.js +1 -1
- package/dist/lang/fr.umd.prod.js +1 -1
- package/dist/lang/gn.umd.prod.js +1 -1
- package/dist/lang/he.umd.prod.js +1 -1
- package/dist/lang/hr.umd.prod.js +1 -1
- package/dist/lang/hu.umd.prod.js +1 -1
- package/dist/lang/id.umd.prod.js +1 -1
- package/dist/lang/is.umd.prod.js +1 -1
- package/dist/lang/it.umd.prod.js +1 -1
- package/dist/lang/ja.umd.prod.js +1 -1
- package/dist/lang/km.umd.prod.js +1 -1
- package/dist/lang/ko-KR.umd.prod.js +1 -1
- package/dist/lang/kur-CKB.umd.prod.js +1 -1
- package/dist/lang/lt.umd.prod.js +1 -1
- package/dist/lang/lu.umd.prod.js +1 -1
- package/dist/lang/lv.umd.prod.js +1 -1
- package/dist/lang/ml.umd.prod.js +1 -1
- package/dist/lang/ms.umd.prod.js +1 -1
- package/dist/lang/nb-NO.umd.prod.js +1 -1
- package/dist/lang/nl.umd.prod.js +1 -1
- package/dist/lang/pl.umd.prod.js +1 -1
- package/dist/lang/pt-BR.umd.prod.js +1 -1
- package/dist/lang/pt.umd.prod.js +1 -1
- package/dist/lang/ro.umd.prod.js +1 -1
- package/dist/lang/ru.umd.prod.js +1 -1
- package/dist/lang/sk.umd.prod.js +1 -1
- package/dist/lang/sl.umd.prod.js +1 -1
- package/dist/lang/sr-CYR.umd.prod.js +1 -1
- package/dist/lang/sr.umd.prod.js +1 -1
- package/dist/lang/sv.umd.prod.js +1 -1
- package/dist/lang/ta.umd.prod.js +1 -1
- package/dist/lang/th.umd.prod.js +1 -1
- package/dist/lang/tr.umd.prod.js +1 -1
- package/dist/lang/ug.umd.prod.js +1 -1
- package/dist/lang/uk.umd.prod.js +1 -1
- package/dist/lang/vi.umd.prod.js +1 -1
- package/dist/lang/zh-CN.umd.prod.js +1 -1
- package/dist/lang/zh-TW.umd.prod.js +1 -1
- package/dist/quasar.cjs.prod.js +2 -2
- package/dist/quasar.css +268 -184
- package/dist/quasar.esm.prod.js +2 -2
- package/dist/quasar.prod.css +1 -1
- package/dist/quasar.rtl.css +340 -263
- package/dist/quasar.rtl.prod.css +1 -1
- package/dist/quasar.sass +272 -212
- package/dist/quasar.umd.js +16532 -16216
- package/dist/quasar.umd.prod.js +2 -2
- package/dist/ssr-directives/Morph.js +1 -1
- package/dist/transforms/loader-asset-urls.json +20 -0
- package/dist/types/api/cookies.d.ts +1 -1
- package/dist/types/api/slider.d.ts +46 -0
- package/dist/types/api/validation.d.ts +4 -0
- package/dist/types/api.d.ts +2 -0
- package/dist/types/composables.d.ts +7 -3
- package/dist/types/extras/icon-set.d.ts +1 -0
- package/dist/types/index.d.ts +759 -177
- package/dist/vetur/quasar-attributes.json +251 -83
- package/dist/vetur/quasar-tags.json +59 -17
- package/dist/web-types/web-types.json +587 -155
- package/icon-set/svg-ionicons-v6.js +225 -0
- package/package.json +2 -2
- package/src/api.extends.json +0 -1
- package/src/components/breadcrumbs/QBreadcrumbs.js +7 -2
- package/src/components/breadcrumbs/QBreadcrumbs.sass +0 -3
- package/src/components/breadcrumbs/QBreadcrumbsEl.js +14 -8
- package/src/components/btn/QBtn.js +6 -5
- package/src/components/btn/use-btn.js +21 -21
- package/src/components/btn/use-btn.json +22 -13
- package/src/components/btn-dropdown/QBtnDropdown.json +1 -0
- package/src/components/btn-toggle/QBtnToggle.json +3 -0
- package/src/components/checkbox/use-checkbox.js +1 -1
- package/src/components/chip/QChip.json +1 -2
- package/src/components/color/QColor.js +32 -26
- package/src/components/color/QColor.sass +10 -23
- package/src/components/date/QDate.json +25 -1
- package/src/components/date/QDate.sass +2 -0
- package/src/components/drawer/QDrawer.js +18 -15
- package/src/components/editor/QEditor.js +3 -3
- package/src/components/editor/QEditor.sass +10 -1
- package/src/components/expansion-item/QExpansionItem.js +4 -1
- package/src/components/expansion-item/QExpansionItem.json +2 -1
- package/src/components/fab/QFab.js +18 -12
- package/src/components/fab/QFab.json +36 -1
- package/src/components/fab/QFab.sass +1 -1
- package/src/components/fab/QFabAction.js +14 -7
- package/src/components/fab/QFabAction.json +10 -0
- package/src/components/field/QField.json +3 -3
- package/src/components/file/QFile.js +12 -5
- package/src/components/file/QFile.json +9 -6
- package/src/components/file/QFile.sass +4 -2
- package/src/components/footer/QFooter.js +1 -1
- package/src/components/form/QForm.json +2 -3
- package/src/components/header/QHeader.js +1 -1
- package/src/components/icon/QIcon.js +2 -2
- package/src/components/infinite-scroll/QInfiniteScroll.js +4 -5
- package/src/components/item/QItem.js +2 -3
- package/src/components/layout/QLayout.json +8 -1
- package/src/components/linear-progress/QLinearProgress.js +3 -2
- package/src/components/linear-progress/QLinearProgress.sass +1 -1
- package/src/components/option-group/QOptionGroup.js +3 -0
- package/src/components/option-group/QOptionGroup.json +48 -2
- package/src/components/pagination/QPagination.json +0 -1
- package/src/components/parallax/QParallax.js +4 -2
- package/src/components/popup-edit/QPopupEdit.js +2 -5
- package/src/components/popup-edit/QPopupEdit.json +1 -0
- package/src/components/popup-proxy/QPopupProxy.json +2 -1
- package/src/components/radio/QRadio.js +2 -7
- package/src/components/range/QRange.js +103 -222
- package/src/components/range/QRange.json +11 -121
- package/src/components/rating/QRating.json +1 -1
- package/src/components/resize-observer/QResizeObserver.json +2 -0
- package/src/components/scroll-area/QScrollArea.js +11 -14
- package/src/components/scroll-area/QScrollArea.json +29 -9
- package/src/components/scroll-observer/QScrollObserver.json +11 -0
- package/src/components/select/QSelect.js +1 -1
- package/src/components/select/QSelect.json +41 -15
- package/src/components/slide-item/QSlideItem.json +9 -0
- package/src/components/slider/QSlider.js +46 -132
- package/src/components/slider/QSlider.json +1 -121
- package/src/components/slider/QSlider.sass +198 -132
- package/src/components/slider/use-slider.js +453 -109
- package/src/components/slider/use-slider.json +546 -0
- package/src/components/stepper/QStepper.js +3 -3
- package/src/components/stepper/QStepper.sass +24 -26
- package/src/components/table/QTable.js +27 -47
- package/src/components/table/QTable.json +104 -55
- package/src/components/table/table-pagination.js +4 -0
- package/src/components/tabs/QRouteTab.js +1 -2
- package/src/components/tabs/QRouteTab.json +0 -7
- package/src/components/tabs/QTabs.js +71 -20
- package/src/components/tabs/use-tab.js +26 -13
- package/src/components/time/QTime.json +8 -0
- package/src/components/tree/QTree.js +14 -12
- package/src/components/tree/QTree.json +26 -21
- package/src/components/tree/QTree.sass +45 -41
- package/src/components/uploader/QUploader.json +14 -2
- package/src/components/uploader/uploader-core.js +16 -9
- package/src/components/uploader/xhr-uploader-plugin.json +8 -3
- package/src/components/virtual-scroll/QVirtualScroll.json +15 -0
- package/src/components/virtual-scroll/QVirtualScroll.sass +1 -0
- package/src/components/virtual-scroll/use-virtual-scroll.js +30 -17
- package/src/components/virtual-scroll/use-virtual-scroll.json +7 -5
- package/src/composables/private/use-field.js +7 -7
- package/src/composables/private/use-file.js +20 -5
- package/src/composables/private/use-form.js +2 -3
- package/src/composables/private/use-fullscreen.js +15 -4
- package/src/composables/private/use-router-link.js +44 -23
- package/src/composables/private/use-router-link.json +26 -10
- package/src/composables/private/use-split-attrs.js +12 -9
- package/src/composables/private/use-validate.js +21 -15
- package/src/composables/private/use-validate.json +1 -0
- package/src/composables/use-dialog-plugin-component.js +1 -0
- package/src/css/core/helpers.sass +3 -0
- package/src/css/core/positioning.sass +5 -0
- package/src/directives/Mutation.json +2 -3
- package/src/directives/ScrollFire.js +1 -0
- package/src/directives/ScrollFire.json +2 -3
- package/src/icon-set.js +2 -4
- package/src/plugins/AppFullscreen.js +70 -53
- package/src/plugins/AppFullscreen.json +8 -8
- package/src/plugins/AppVisibility.js +2 -3
- package/src/plugins/BottomSheet.js +3 -5
- package/src/plugins/Cookies.json +2 -2
- package/src/plugins/Dialog.js +3 -5
- package/src/plugins/Dialog.json +6 -5
- package/src/plugins/LoadingBar.js +17 -18
- package/src/plugins/LoadingBar.json +4 -3
- package/src/plugins/Notify.js +296 -295
- package/src/plugins/Notify.json +13 -19
- package/src/plugins/Platform.js +14 -14
- package/src/utils/date.js +4 -4
- package/src/utils/dom.js +2 -2
- package/src/utils/open-url.js +2 -2
- package/src/utils/patterns.js +1 -0
- package/src/utils/private/define-reactive-plugin.js +10 -8
- package/src/utils/private/global-dialog.js +6 -8
- package/src/utils/private/global-dialog.json +6 -0
- package/src/utils/private/inject-obj-prop.js +13 -0
- package/src/utils/private/is.js +2 -2
|
@@ -46,7 +46,7 @@ export default createComponent({
|
|
|
46
46
|
const fixed = computed(() =>
|
|
47
47
|
props.reveal === true
|
|
48
48
|
|| $layout.view.value.indexOf('F') > -1
|
|
49
|
-
|| $layout.isContainer.value === true
|
|
49
|
+
|| ($q.platform.is.ios && $layout.isContainer.value === true)
|
|
50
50
|
)
|
|
51
51
|
|
|
52
52
|
const containerHeight = computed(() => (
|
|
@@ -52,9 +52,8 @@
|
|
|
52
52
|
"desc": "Emitted after a validation was triggered and at least one of the inner Quasar components models are NOT valid",
|
|
53
53
|
"params": {
|
|
54
54
|
"ref": {
|
|
55
|
-
"type": "
|
|
56
|
-
"desc": "Vue reference to the first component that triggered the validation error"
|
|
57
|
-
"__exemption": [ "examples" ]
|
|
55
|
+
"type": "Component",
|
|
56
|
+
"desc": "Vue reference to the first component that triggered the validation error"
|
|
58
57
|
}
|
|
59
58
|
}
|
|
60
59
|
}
|
|
@@ -43,7 +43,7 @@ export default createComponent({
|
|
|
43
43
|
const fixed = computed(() =>
|
|
44
44
|
props.reveal === true
|
|
45
45
|
|| $layout.view.value.indexOf('H') > -1
|
|
46
|
-
|| $layout.isContainer.value === true
|
|
46
|
+
|| ($q.platform.is.ios && $layout.isContainer.value === true)
|
|
47
47
|
)
|
|
48
48
|
|
|
49
49
|
const offset = computed(() => {
|
|
@@ -29,11 +29,11 @@ const matMap = {
|
|
|
29
29
|
|
|
30
30
|
const libRE = new RegExp('^(' + Object.keys(libMap).join('|') + ')')
|
|
31
31
|
const matRE = new RegExp('^(' + Object.keys(matMap).join('|') + ')')
|
|
32
|
-
const mRE = /^
|
|
32
|
+
const mRE = /^[Mm]\s?[-+]?\.?\d/
|
|
33
33
|
const imgRE = /^img:/
|
|
34
34
|
const svgUseRE = /^svguse:/
|
|
35
35
|
const ionRE = /^ion-/
|
|
36
|
-
const faLaRE = /^[
|
|
36
|
+
const faLaRE = /^[lf]a[srlbdk]? /
|
|
37
37
|
|
|
38
38
|
export default createComponent({
|
|
39
39
|
name: 'QIcon',
|
|
@@ -60,14 +60,12 @@ export default createComponent({
|
|
|
60
60
|
containerHeight = height(localScrollTarget)
|
|
61
61
|
|
|
62
62
|
if (props.reverse === false) {
|
|
63
|
-
if (scrollPosition + containerHeight + props.offset >= scrollHeight) {
|
|
63
|
+
if (Math.round(scrollPosition + containerHeight + props.offset) >= Math.round(scrollHeight)) {
|
|
64
64
|
trigger()
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
|
-
else {
|
|
68
|
-
|
|
69
|
-
trigger()
|
|
70
|
-
}
|
|
67
|
+
else if (Math.round(scrollPosition) <= props.offset) {
|
|
68
|
+
trigger()
|
|
71
69
|
}
|
|
72
70
|
}
|
|
73
71
|
|
|
@@ -123,6 +121,7 @@ export default createComponent({
|
|
|
123
121
|
isWorking.value = false
|
|
124
122
|
isFetching.value = false
|
|
125
123
|
localScrollTarget.removeEventListener('scroll', poll, passive)
|
|
124
|
+
poll !== void 0 && poll.cancel()
|
|
126
125
|
}
|
|
127
126
|
}
|
|
128
127
|
|
|
@@ -38,7 +38,7 @@ export default createComponent({
|
|
|
38
38
|
const { proxy: { $q } } = getCurrentInstance()
|
|
39
39
|
|
|
40
40
|
const isDark = useDark(props, $q)
|
|
41
|
-
const { hasLink, linkProps, linkClass, linkTag,
|
|
41
|
+
const { hasRouterLink, hasLink, linkProps, linkClass, linkTag, navigateToRouterLink } = useRouterLink()
|
|
42
42
|
|
|
43
43
|
const rootRef = ref(null)
|
|
44
44
|
const blurTargetRef = ref(null)
|
|
@@ -46,7 +46,6 @@ export default createComponent({
|
|
|
46
46
|
const isActionable = computed(() =>
|
|
47
47
|
props.clickable === true
|
|
48
48
|
|| hasLink.value === true
|
|
49
|
-
|| props.tag === 'a'
|
|
50
49
|
|| props.tag === 'label'
|
|
51
50
|
)
|
|
52
51
|
|
|
@@ -99,7 +98,7 @@ export default createComponent({
|
|
|
99
98
|
}
|
|
100
99
|
}
|
|
101
100
|
|
|
102
|
-
|
|
101
|
+
hasRouterLink.value === true && navigateToRouterLink(e)
|
|
103
102
|
emit('click', e)
|
|
104
103
|
}
|
|
105
104
|
}
|
|
@@ -37,11 +37,13 @@
|
|
|
37
37
|
"definition": {
|
|
38
38
|
"height": {
|
|
39
39
|
"type": "Number",
|
|
40
|
+
"required": true,
|
|
40
41
|
"desc": "Layout height",
|
|
41
42
|
"examples": [ 575 ]
|
|
42
43
|
},
|
|
43
44
|
"width": {
|
|
44
45
|
"type": "Number",
|
|
46
|
+
"required": true,
|
|
45
47
|
"desc": "Layout height",
|
|
46
48
|
"examples": [ 575 ]
|
|
47
49
|
}
|
|
@@ -59,27 +61,32 @@
|
|
|
59
61
|
"definition": {
|
|
60
62
|
"position": {
|
|
61
63
|
"type": "Number",
|
|
64
|
+
"required": true,
|
|
62
65
|
"desc": "Scroll offset from top (vertical)",
|
|
63
66
|
"examples": [ 120 ]
|
|
64
67
|
},
|
|
65
68
|
|
|
66
69
|
"direction": {
|
|
67
70
|
"type": "String",
|
|
71
|
+
"required": true,
|
|
68
72
|
"desc": "Direction of scroll",
|
|
69
73
|
"values": [ "up", "down" ]
|
|
70
74
|
},
|
|
71
75
|
"directionChanged": {
|
|
72
76
|
"type": "Boolean",
|
|
77
|
+
"required": true,
|
|
73
78
|
"desc": "Has scroll direction changed since event was last emitted?"
|
|
74
79
|
},
|
|
75
80
|
"delta": {
|
|
76
81
|
"type": "Number",
|
|
82
|
+
"required": true,
|
|
77
83
|
"desc": "Vertical delta distance since event was last emitted",
|
|
78
84
|
"examples": [ 120 ]
|
|
79
85
|
},
|
|
80
86
|
|
|
81
87
|
"inflectionPoint": {
|
|
82
88
|
"type": "Number",
|
|
89
|
+
"required": true,
|
|
83
90
|
"desc": "Scroll offset from top (vertical)",
|
|
84
91
|
"examples": [ 120 ]
|
|
85
92
|
}
|
|
@@ -94,7 +101,7 @@
|
|
|
94
101
|
"height": {
|
|
95
102
|
"type": "Number",
|
|
96
103
|
"desc": "New scroll height of layout",
|
|
97
|
-
"examples": [1442]
|
|
104
|
+
"examples": [ 1442 ]
|
|
98
105
|
}
|
|
99
106
|
}
|
|
100
107
|
}
|
|
@@ -58,6 +58,7 @@ export default createComponent({
|
|
|
58
58
|
const sizeStyle = useSize(props, defaultSizes)
|
|
59
59
|
|
|
60
60
|
const motion = computed(() => props.indeterminate === true || props.query === true)
|
|
61
|
+
const widthReverse = computed(() => props.reverse !== props.query)
|
|
61
62
|
const style = computed(() => ({
|
|
62
63
|
...(sizeStyle.value !== null ? sizeStyle.value : {}),
|
|
63
64
|
'--q-linear-progress-speed': `${ props.animationSpeed }ms`
|
|
@@ -70,7 +71,7 @@ export default createComponent({
|
|
|
70
71
|
+ (props.rounded === true ? ' rounded-borders' : '')
|
|
71
72
|
)
|
|
72
73
|
|
|
73
|
-
const trackStyle = computed(() => width(props.buffer !== void 0 ? props.buffer : 1,
|
|
74
|
+
const trackStyle = computed(() => width(props.buffer !== void 0 ? props.buffer : 1, widthReverse.value, proxy.$q))
|
|
74
75
|
const trackClass = computed(() =>
|
|
75
76
|
'q-linear-progress__track absolute-full'
|
|
76
77
|
+ ` q-linear-progress__track--with${ props.instantFeedback === true ? 'out' : '' }-transition`
|
|
@@ -78,7 +79,7 @@ export default createComponent({
|
|
|
78
79
|
+ (props.trackColor !== void 0 ? ` bg-${ props.trackColor }` : '')
|
|
79
80
|
)
|
|
80
81
|
|
|
81
|
-
const modelStyle = computed(() => width(motion.value === true ? 1 : props.value,
|
|
82
|
+
const modelStyle = computed(() => width(motion.value === true ? 1 : props.value, widthReverse.value, proxy.$q))
|
|
82
83
|
const modelClass = computed(() =>
|
|
83
84
|
'q-linear-progress__model absolute-full'
|
|
84
85
|
+ ` q-linear-progress__model--with${ props.instantFeedback === true ? 'out' : '' }-transition`
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
background: rgba(255,255,255,.6)
|
|
52
52
|
|
|
53
53
|
&__stripe
|
|
54
|
-
transition: width
|
|
54
|
+
transition: width var(--q-linear-progress-speed)
|
|
55
55
|
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
|
|
56
56
|
background-size: 40px 40px !important
|
|
57
57
|
|
|
@@ -95,6 +95,9 @@ export default createComponent({
|
|
|
95
95
|
class: classes.value,
|
|
96
96
|
...attrs.value
|
|
97
97
|
}, props.options.map((opt, i) => {
|
|
98
|
+
// TODO: (Qv3) Make the 'opt' a separate property instead of
|
|
99
|
+
// the whole scope for consistency and flexibility
|
|
100
|
+
// (e.g. { opt } instead of opt)
|
|
98
101
|
const child = slots[ 'label-' + i ] !== void 0
|
|
99
102
|
? () => slots[ 'label-' + i ](opt)
|
|
100
103
|
: (
|
|
@@ -99,9 +99,32 @@
|
|
|
99
99
|
"label": {
|
|
100
100
|
"desc": "Generic slot for all labels",
|
|
101
101
|
"scope": {
|
|
102
|
-
"
|
|
102
|
+
"...self": {
|
|
103
103
|
"type": "Object",
|
|
104
104
|
"desc": "The corresponding option entry from the 'options' prop",
|
|
105
|
+
"definition": {
|
|
106
|
+
"label": {
|
|
107
|
+
"type": "String",
|
|
108
|
+
"desc": "Label to display along the component",
|
|
109
|
+
"required": true,
|
|
110
|
+
"examples": [ "Option 1", "Option 2", "Option 3" ]
|
|
111
|
+
},
|
|
112
|
+
"value": {
|
|
113
|
+
"type": "Any",
|
|
114
|
+
"desc": "Value of the option that will be used by the component model",
|
|
115
|
+
"required": true,
|
|
116
|
+
"examples": [ "op1", "op2", "op3" ]
|
|
117
|
+
},
|
|
118
|
+
"disable": {
|
|
119
|
+
"type": "Boolean",
|
|
120
|
+
"desc": "If true, the option will be disabled"
|
|
121
|
+
},
|
|
122
|
+
"...props": {
|
|
123
|
+
"type": "Any",
|
|
124
|
+
"desc": "Any other props from QToggle, QCheckbox, or QRadio",
|
|
125
|
+
"examples": [ "val=\"car\"", ":true-value=\"trueValue\"", "checked-icon=\"visibility\"" ]
|
|
126
|
+
}
|
|
127
|
+
},
|
|
105
128
|
"__exemption": [ "examples" ]
|
|
106
129
|
}
|
|
107
130
|
},
|
|
@@ -111,9 +134,32 @@
|
|
|
111
134
|
"label-[name]": {
|
|
112
135
|
"desc": "Slot to define the specific label for the option at '[name]' where name is a 0-based index; Overrides the generic 'label' slot if used",
|
|
113
136
|
"scope": {
|
|
114
|
-
"...
|
|
137
|
+
"...self": {
|
|
115
138
|
"type": "Object",
|
|
116
139
|
"desc": "The corresponding option entry from the 'options' prop",
|
|
140
|
+
"definition": {
|
|
141
|
+
"label": {
|
|
142
|
+
"type": "String",
|
|
143
|
+
"desc": "Label to display along the component",
|
|
144
|
+
"required": true,
|
|
145
|
+
"examples": [ "Option 1", "Option 2", "Option 3" ]
|
|
146
|
+
},
|
|
147
|
+
"value": {
|
|
148
|
+
"type": "Any",
|
|
149
|
+
"desc": "Value of the option that will be used by the component model",
|
|
150
|
+
"required": true,
|
|
151
|
+
"examples": [ "op1", "op2", "op3" ]
|
|
152
|
+
},
|
|
153
|
+
"disable": {
|
|
154
|
+
"type": "Boolean",
|
|
155
|
+
"desc": "If true, the option will be disabled"
|
|
156
|
+
},
|
|
157
|
+
"...props": {
|
|
158
|
+
"type": "Any",
|
|
159
|
+
"desc": "Any other props from QToggle, QCheckbox, or QRadio",
|
|
160
|
+
"examples": [ "val=\"car\"", ":true-value=\"trueValue\"", "checked-icon=\"visibility\"" ]
|
|
161
|
+
}
|
|
162
|
+
},
|
|
117
163
|
"__exemption": [ "examples" ]
|
|
118
164
|
}
|
|
119
165
|
},
|
|
@@ -60,8 +60,7 @@ export default createComponent({
|
|
|
60
60
|
|
|
61
61
|
if (localScrollTarget === window) {
|
|
62
62
|
containerTop = 0
|
|
63
|
-
containerHeight = window.innerHeight
|
|
64
|
-
containerBottom = containerHeight
|
|
63
|
+
containerBottom = containerHeight = window.innerHeight
|
|
65
64
|
}
|
|
66
65
|
else {
|
|
67
66
|
containerTop = offset(localScrollTarget).top
|
|
@@ -103,6 +102,9 @@ export default createComponent({
|
|
|
103
102
|
localScrollTarget.removeEventListener('scroll', updatePos, passive)
|
|
104
103
|
window.removeEventListener('resize', resizeHandler, passive)
|
|
105
104
|
localScrollTarget = void 0
|
|
105
|
+
setPos.cancel()
|
|
106
|
+
update.cancel()
|
|
107
|
+
resizeHandler.cancel()
|
|
106
108
|
}
|
|
107
109
|
}
|
|
108
110
|
|
|
@@ -6,6 +6,7 @@ import QBtn from '../btn/QBtn.js'
|
|
|
6
6
|
import { createComponent } from '../../utils/private/create.js'
|
|
7
7
|
import clone from '../../utils/clone.js'
|
|
8
8
|
import { isDeepEqual } from '../../utils/private/is.js'
|
|
9
|
+
import { injectProp } from '../../utils/private/inject-obj-prop.js'
|
|
9
10
|
|
|
10
11
|
export default createComponent({
|
|
11
12
|
name: 'QPopupEdit',
|
|
@@ -65,11 +66,7 @@ export default createComponent({
|
|
|
65
66
|
updatePosition
|
|
66
67
|
}
|
|
67
68
|
|
|
68
|
-
|
|
69
|
-
get: () => currentModel.value,
|
|
70
|
-
set: val => { currentModel.value = val }
|
|
71
|
-
})
|
|
72
|
-
|
|
69
|
+
injectProp(acc, 'value', () => currentModel.value, val => { currentModel.value = val })
|
|
73
70
|
return acc
|
|
74
71
|
})
|
|
75
72
|
|
|
@@ -7,9 +7,10 @@
|
|
|
7
7
|
|
|
8
8
|
"props": {
|
|
9
9
|
"model-value": {
|
|
10
|
+
"extends": "model-value",
|
|
10
11
|
"type": "Boolean",
|
|
11
12
|
"desc": "Defines the state of the component (shown/hidden); Either use this property (along with a listener for 'update:modelValue' event) OR use v-model directive",
|
|
12
|
-
"
|
|
13
|
+
"required": false
|
|
13
14
|
},
|
|
14
15
|
|
|
15
16
|
"breakpoint": {
|
|
@@ -92,6 +92,7 @@ export default createComponent({
|
|
|
92
92
|
const prop = { type: 'radio' }
|
|
93
93
|
|
|
94
94
|
props.name !== void 0 && Object.assign(prop, {
|
|
95
|
+
'^checked': isTrue.value === true ? 'checked' : void 0,
|
|
95
96
|
name: props.name,
|
|
96
97
|
value: props.val
|
|
97
98
|
})
|
|
@@ -99,13 +100,7 @@ export default createComponent({
|
|
|
99
100
|
return prop
|
|
100
101
|
})
|
|
101
102
|
|
|
102
|
-
const
|
|
103
|
-
props.name !== void 0 && isTrue.value === true
|
|
104
|
-
? { checked: true }
|
|
105
|
-
: {}
|
|
106
|
-
))
|
|
107
|
-
|
|
108
|
-
const injectFormInput = useFormInject(formAttrs, formDomProps)
|
|
103
|
+
const injectFormInput = useFormInject(formAttrs)
|
|
109
104
|
|
|
110
105
|
function onClick (e) {
|
|
111
106
|
if (e !== void 0) {
|