quasar 2.2.1 → 2.3.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/QCircularProgress.json +14 -0
- package/dist/api/QLinearProgress.json +14 -0
- package/dist/api/QOptionGroup.json +36 -1
- package/dist/api/QSkeleton.json +1 -1
- package/dist/api/QTable.json +5 -0
- package/dist/api/QTree.json +6 -0
- 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-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 +53 -9
- package/dist/quasar.esm.prod.js +2 -2
- package/dist/quasar.prod.css +1 -1
- package/dist/quasar.rtl.css +120 -9
- package/dist/quasar.rtl.prod.css +1 -1
- package/dist/quasar.sass +45 -7
- package/dist/quasar.umd.js +320 -254
- package/dist/quasar.umd.prod.js +2 -2
- package/dist/ssr-directives/Morph.js +1 -1
- package/dist/types/index.d.ts +33 -3
- package/dist/vetur/quasar-attributes.json +13 -1
- package/dist/vetur/quasar-tags.json +5 -2
- package/dist/web-types/web-types.json +32 -2
- package/package.json +1 -1
- package/src/api.extends.json +7 -0
- package/src/components/ajax-bar/QAjaxBar.js +3 -2
- package/src/components/avatar/QAvatar.js +3 -2
- package/src/components/badge/QBadge.js +3 -2
- package/src/components/banner/QBanner.js +3 -2
- package/src/components/bar/QBar.js +3 -2
- package/src/components/breadcrumbs/QBreadcrumbs.js +3 -2
- package/src/components/breadcrumbs/QBreadcrumbsEl.js +3 -2
- package/src/components/btn/QBtn.js +3 -2
- package/src/components/btn-dropdown/QBtnDropdown.js +3 -2
- package/src/components/btn-group/QBtnGroup.js +3 -2
- package/src/components/btn-toggle/QBtnToggle.js +3 -2
- package/src/components/card/QCard.js +3 -2
- package/src/components/card/QCardActions.js +3 -2
- package/src/components/card/QCardSection.js +3 -2
- package/src/components/carousel/QCarousel.js +3 -2
- package/src/components/carousel/QCarouselControl.js +3 -2
- package/src/components/carousel/QCarouselSlide.js +3 -2
- package/src/components/chat/QChatMessage.js +3 -2
- package/src/components/checkbox/QCheckbox.js +3 -2
- package/src/components/chip/QChip.js +3 -2
- package/src/components/circular-progress/QCircularProgress.js +9 -3
- package/src/components/circular-progress/QCircularProgress.json +6 -0
- package/src/components/color/QColor.js +3 -2
- package/src/components/date/QDate.js +5 -3
- package/src/components/dialog/QDialog.js +3 -2
- package/src/components/dialog-bottom-sheet/BottomSheet.js +3 -2
- package/src/components/dialog-plugin/DialogPlugin.js +3 -2
- package/src/components/drawer/QDrawer.js +3 -2
- package/src/components/editor/QEditor.js +3 -2
- package/src/components/expansion-item/QExpansionItem.js +3 -2
- package/src/components/fab/QFab.js +3 -2
- package/src/components/fab/QFabAction.js +3 -2
- package/src/components/field/QField.js +3 -3
- package/src/components/file/QFile.js +3 -2
- package/src/components/footer/QFooter.js +3 -2
- package/src/components/form/QForm.js +3 -2
- package/src/components/header/QHeader.js +3 -2
- package/src/components/icon/QIcon.js +4 -2
- package/src/components/img/QImg.js +5 -2
- package/src/components/infinite-scroll/QInfiniteScroll.js +50 -32
- package/src/components/inner-loading/QInnerLoading.js +3 -2
- package/src/components/input/QInput.js +3 -2
- package/src/components/intersection/QIntersection.js +3 -2
- package/src/components/item/QItem.js +3 -2
- package/src/components/item/QItemLabel.js +3 -2
- package/src/components/item/QItemSection.js +3 -2
- package/src/components/item/QList.js +3 -3
- package/src/components/knob/QKnob.js +3 -2
- package/src/components/layout/QLayout.js +3 -2
- package/src/components/linear-progress/QLinearProgress.js +13 -3
- package/src/components/linear-progress/QLinearProgress.json +6 -0
- package/src/components/linear-progress/QLinearProgress.sass +2 -1
- package/src/components/markup-table/QMarkupTable.js +3 -2
- package/src/components/menu/QMenu.js +4 -3
- package/src/components/no-ssr/QNoSsr.js +3 -2
- package/src/components/option-group/QOptionGroup.js +4 -2
- package/src/components/option-group/QOptionGroup.json +24 -1
- package/src/components/page/QPage.js +3 -2
- package/src/components/page/QPageContainer.js +3 -2
- package/src/components/page-scroller/QPageScroller.js +4 -2
- package/src/components/page-sticky/QPageSticky.js +2 -3
- package/src/components/pagination/QPagination.js +3 -2
- package/src/components/parallax/QParallax.js +3 -2
- package/src/components/popup-edit/QPopupEdit.js +3 -2
- package/src/components/popup-proxy/QPopupProxy.js +10 -17
- package/src/components/pull-to-refresh/QPullToRefresh.js +3 -2
- package/src/components/radio/QRadio.js +3 -2
- package/src/components/range/QRange.js +3 -2
- package/src/components/rating/QRating.js +6 -5
- package/src/components/resize-observer/QResizeObserver.js +3 -2
- package/src/components/responsive/QResponsive.js +3 -2
- package/src/components/scroll-area/QScrollArea.js +3 -2
- package/src/components/scroll-observer/QScrollObserver.js +3 -2
- package/src/components/select/QSelect.js +11 -20
- package/src/components/separator/QSeparator.js +4 -2
- package/src/components/skeleton/QSkeleton.js +3 -2
- package/src/components/skeleton/QSkeleton.json +1 -4
- package/src/components/slide-item/QSlideItem.js +3 -2
- package/src/components/slide-transition/QSlideTransition.js +4 -2
- package/src/components/slider/QSlider.js +3 -2
- package/src/components/space/QSpace.js +4 -2
- package/src/components/spinner/QSpinner.js +4 -2
- package/src/components/spinner/QSpinnerAudio.js +4 -2
- package/src/components/spinner/QSpinnerBall.js +4 -2
- package/src/components/spinner/QSpinnerBars.js +4 -2
- package/src/components/spinner/QSpinnerBox.js +4 -2
- package/src/components/spinner/QSpinnerClock.js +4 -2
- package/src/components/spinner/QSpinnerComment.js +4 -2
- package/src/components/spinner/QSpinnerCube.js +4 -2
- package/src/components/spinner/QSpinnerDots.js +4 -2
- package/src/components/spinner/QSpinnerFacebook.js +4 -2
- package/src/components/spinner/QSpinnerGears.js +4 -2
- package/src/components/spinner/QSpinnerGrid.js +4 -2
- package/src/components/spinner/QSpinnerHearts.js +4 -2
- package/src/components/spinner/QSpinnerHourglass.js +4 -2
- package/src/components/spinner/QSpinnerInfinity.js +4 -2
- package/src/components/spinner/QSpinnerIos.js +4 -2
- package/src/components/spinner/QSpinnerOrbit.js +4 -2
- package/src/components/spinner/QSpinnerOval.js +4 -2
- package/src/components/spinner/QSpinnerPie.js +4 -2
- package/src/components/spinner/QSpinnerPuff.js +4 -2
- package/src/components/spinner/QSpinnerRadio.js +4 -2
- package/src/components/spinner/QSpinnerRings.js +4 -2
- package/src/components/spinner/QSpinnerTail.js +4 -2
- package/src/components/splitter/QSplitter.js +3 -2
- package/src/components/stepper/QStep.js +3 -2
- package/src/components/stepper/QStepper.js +3 -2
- package/src/components/stepper/QStepperNavigation.js +3 -2
- package/src/components/stepper/StepHeader.js +4 -2
- package/src/components/tab-panels/QTabPanel.js +4 -2
- package/src/components/tab-panels/QTabPanels.js +3 -2
- package/src/components/table/QTable.js +4 -2
- package/src/components/table/QTable.json +1 -0
- package/src/components/table/QTd.js +3 -2
- package/src/components/table/QTh.js +3 -2
- package/src/components/table/QTr.js +3 -2
- package/src/components/table/table-pagination.js +2 -2
- package/src/components/tabs/QRouteTab.js +4 -2
- package/src/components/tabs/QTab.js +3 -3
- package/src/components/tabs/QTabs.js +4 -3
- package/src/components/time/QTime.js +9 -9
- package/src/components/timeline/QTimeline.js +3 -2
- package/src/components/timeline/QTimelineEntry.js +3 -2
- package/src/components/toggle/QToggle.js +5 -2
- package/src/components/toolbar/QToolbar.js +3 -2
- package/src/components/toolbar/QToolbarTitle.js +3 -2
- package/src/components/tooltip/QTooltip.js +3 -2
- package/src/components/tree/QTree.js +12 -7
- package/src/components/tree/QTree.json +5 -0
- package/src/components/tree/QTree.sass +52 -4
- package/src/components/uploader/QUploaderAddTrigger.js +3 -2
- package/src/components/uploader/uploader-core.js +2 -7
- package/src/components/video/QVideo.js +4 -2
- package/src/components/virtual-scroll/QVirtualScroll.js +3 -2
- package/src/components/virtual-scroll/use-virtual-scroll.js +17 -1
- package/src/composables/private/use-file.js +8 -0
- package/src/composables/private/use-model-toggle.js +1 -1
- package/src/composables/use-dialog-plugin-component.js +6 -1
- package/src/css/normalize.sass +0 -7
- package/src/directives/ClosePopup.js +3 -1
- package/src/directives/Intersection.js +3 -1
- package/src/directives/Morph.js +4 -1
- package/src/directives/Mutation.js +3 -1
- package/src/directives/Ripple.js +3 -1
- package/src/directives/Scroll.js +3 -1
- package/src/directives/ScrollFire.js +3 -1
- package/src/directives/TouchHold.js +4 -1
- package/src/directives/TouchPan.js +4 -1
- package/src/directives/TouchRepeat.js +4 -1
- package/src/directives/TouchSwipe.js +4 -1
- package/src/plugins/Notify.js +4 -3
- package/src/utils/create-uploader-component.js +9 -7
- package/src/utils/date.js +1 -1
- package/src/utils/private/create.js +4 -0
- package/src/utils/private/get-emits-object.js +11 -0
- package/src/utils/private/vm.js +3 -3
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, reactive, computed, provide, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import { isRuntimeSsrPreHydration } from '../../plugins/Platform.js'
|
|
4
4
|
|
|
5
5
|
import QScrollObserver from '../scroll-observer/QScrollObserver.js'
|
|
6
6
|
import QResizeObserver from '../resize-observer/QResizeObserver.js'
|
|
7
7
|
|
|
8
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
8
9
|
import { getScrollbarWidth } from '../../utils/scroll.js'
|
|
9
10
|
import { hMergeSlot } from '../../utils/private/render.js'
|
|
10
11
|
import { layoutKey } from '../../utils/private/symbols.js'
|
|
11
12
|
|
|
12
|
-
export default
|
|
13
|
+
export default createComponent({
|
|
13
14
|
name: 'QLayout',
|
|
14
15
|
|
|
15
16
|
props: {
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, computed, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
4
4
|
import useSize, { useSizeProps } from '../../composables/private/use-size.js'
|
|
5
5
|
|
|
6
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
6
7
|
import { hMergeSlot } from '../../utils/private/render.js'
|
|
7
8
|
|
|
8
9
|
const defaultSizes = {
|
|
@@ -21,7 +22,7 @@ function width (val, reverse, $q) {
|
|
|
21
22
|
}
|
|
22
23
|
}
|
|
23
24
|
|
|
24
|
-
export default
|
|
25
|
+
export default createComponent({
|
|
25
26
|
name: 'QLinearProgress',
|
|
26
27
|
|
|
27
28
|
props: {
|
|
@@ -43,6 +44,11 @@ export default defineComponent({
|
|
|
43
44
|
query: Boolean,
|
|
44
45
|
rounded: Boolean,
|
|
45
46
|
|
|
47
|
+
animationSpeed: {
|
|
48
|
+
type: [ String, Number ],
|
|
49
|
+
default: 2100
|
|
50
|
+
},
|
|
51
|
+
|
|
46
52
|
instantFeedback: Boolean
|
|
47
53
|
},
|
|
48
54
|
|
|
@@ -52,6 +58,10 @@ export default defineComponent({
|
|
|
52
58
|
const sizeStyle = useSize(props, defaultSizes)
|
|
53
59
|
|
|
54
60
|
const motion = computed(() => props.indeterminate === true || props.query === true)
|
|
61
|
+
const style = computed(() => ({
|
|
62
|
+
...(sizeStyle.value !== null ? sizeStyle.value : {}),
|
|
63
|
+
'--q-linear-progress-speed': `${ props.animationSpeed }ms`
|
|
64
|
+
}))
|
|
55
65
|
|
|
56
66
|
const classes = computed(() =>
|
|
57
67
|
'q-linear-progress'
|
|
@@ -102,7 +112,7 @@ export default defineComponent({
|
|
|
102
112
|
|
|
103
113
|
return h('div', {
|
|
104
114
|
class: classes.value,
|
|
105
|
-
style:
|
|
115
|
+
style: style.value,
|
|
106
116
|
role: 'progressbar',
|
|
107
117
|
'aria-valuemin': 0,
|
|
108
118
|
'aria-valuemax': 1,
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
.q-linear-progress
|
|
2
|
+
--q-linear-progress-speed: .3s
|
|
2
3
|
position: relative
|
|
3
4
|
width: 100%
|
|
4
5
|
overflow: hidden
|
|
@@ -10,7 +11,7 @@
|
|
|
10
11
|
transform-origin: 0 0
|
|
11
12
|
|
|
12
13
|
&--with-transition
|
|
13
|
-
transition: transform
|
|
14
|
+
transition: transform var(--q-linear-progress-speed)
|
|
14
15
|
|
|
15
16
|
&--reverse
|
|
16
17
|
.q-linear-progress
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, computed, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
4
4
|
|
|
5
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
5
6
|
import { hSlot } from '../../utils/private/render.js'
|
|
6
7
|
|
|
7
8
|
const separatorValues = [ 'horizontal', 'vertical', 'cell', 'none' ]
|
|
8
9
|
|
|
9
|
-
export default
|
|
10
|
+
export default createComponent({
|
|
10
11
|
name: 'QMarkupTable',
|
|
11
12
|
|
|
12
13
|
props: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, watch, Transition, onBeforeUnmount, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useAnchor, { useAnchorProps } from '../../composables/private/use-anchor.js'
|
|
4
4
|
import useScrollTarget from '../../composables/private/use-scroll-target.js'
|
|
@@ -9,6 +9,7 @@ import useTransition, { useTransitionProps } from '../../composables/private/use
|
|
|
9
9
|
import useTick from '../../composables/private/use-tick.js'
|
|
10
10
|
import useTimeout from '../../composables/private/use-timeout.js'
|
|
11
11
|
|
|
12
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
12
13
|
import { closePortalMenus } from '../../utils/private/portal.js'
|
|
13
14
|
import { getScrollTarget } from '../../utils/scroll.js'
|
|
14
15
|
import { position, stopAndPrevent } from '../../utils/event.js'
|
|
@@ -17,13 +18,13 @@ import { addEscapeKey, removeEscapeKey } from '../../utils/private/escape-key.js
|
|
|
17
18
|
import { addFocusout, removeFocusout } from '../../utils/private/focusout.js'
|
|
18
19
|
import { childHasFocus } from '../../utils/dom.js'
|
|
19
20
|
import { addClickOutside, removeClickOutside } from '../../utils/private/click-outside.js'
|
|
21
|
+
import { addFocusFn } from '../../utils/private/focus-manager.js'
|
|
20
22
|
|
|
21
23
|
import {
|
|
22
24
|
validatePosition, validateOffset, setPosition, parsePosition
|
|
23
25
|
} from '../../utils/private/position-engine.js'
|
|
24
|
-
import { addFocusFn } from '../../utils/private/focus-manager.js'
|
|
25
26
|
|
|
26
|
-
export default
|
|
27
|
+
export default createComponent({
|
|
27
28
|
name: 'QMenu',
|
|
28
29
|
|
|
29
30
|
inheritAttrs: false,
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { h
|
|
1
|
+
import { h } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useCanRender from '../../composables/private/use-can-render.js'
|
|
4
4
|
|
|
5
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
5
6
|
import { hSlot } from '../../utils/private/render.js'
|
|
6
7
|
|
|
7
|
-
export default
|
|
8
|
+
export default createComponent({
|
|
8
9
|
name: 'QNoSsr',
|
|
9
10
|
|
|
10
11
|
props: {
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, computed, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import QRadio from '../radio/QRadio.js'
|
|
4
4
|
import QCheckbox from '../checkbox/QCheckbox.js'
|
|
5
5
|
import QToggle from '../toggle/QToggle.js'
|
|
6
6
|
|
|
7
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
8
|
+
|
|
7
9
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
8
10
|
|
|
9
11
|
const components = {
|
|
@@ -14,7 +16,7 @@ const components = {
|
|
|
14
16
|
|
|
15
17
|
const typeValues = Object.keys(components)
|
|
16
18
|
|
|
17
|
-
export default
|
|
19
|
+
export default createComponent({
|
|
18
20
|
name: 'QOptionGroup',
|
|
19
21
|
|
|
20
22
|
props: {
|
|
@@ -14,7 +14,30 @@
|
|
|
14
14
|
|
|
15
15
|
"options": {
|
|
16
16
|
"type": "Array",
|
|
17
|
-
"desc": "Array of objects with value and
|
|
17
|
+
"desc": "Array of objects with value, label, and disable (optional) props. The binary components will be created according to this array; Props from QToggle, QCheckbox or QRadio can also be added as key/value pairs to control the components singularly",
|
|
18
|
+
"definition": {
|
|
19
|
+
"label": {
|
|
20
|
+
"type": "String",
|
|
21
|
+
"desc": "Label to display along the component",
|
|
22
|
+
"required": true,
|
|
23
|
+
"examples": [ "Option 1", "Option 2", "Option 3" ]
|
|
24
|
+
},
|
|
25
|
+
"value": {
|
|
26
|
+
"type": "Any",
|
|
27
|
+
"desc": "Value of the option that will be used by the component model",
|
|
28
|
+
"required": true,
|
|
29
|
+
"examples": [ "op1", "op2", "op3" ]
|
|
30
|
+
},
|
|
31
|
+
"disable": {
|
|
32
|
+
"type": "Boolean",
|
|
33
|
+
"desc": "If true, the option will be disabled"
|
|
34
|
+
},
|
|
35
|
+
"...props": {
|
|
36
|
+
"type": "Any",
|
|
37
|
+
"desc": "Any other props from QToggle, QCheckbox, or QRadio",
|
|
38
|
+
"examples": [ "val=\"car\"", ":true-value=\"trueValue\"", "checked-icon=\"visibility\"" ]
|
|
39
|
+
}
|
|
40
|
+
},
|
|
18
41
|
"examples": [
|
|
19
42
|
":options=\"[ { label: 'Option 1', value: 'op1' }, { label: 'Option 2', value: 'op2' }, { label: 'Option 3', value: 'op3', disable: true } ]\""
|
|
20
43
|
],
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, computed, inject, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
3
4
|
import { hSlot } from '../../utils/private/render.js'
|
|
4
5
|
import { pageContainerKey, layoutKey } from '../../utils/private/symbols.js'
|
|
5
6
|
|
|
6
|
-
export default
|
|
7
|
+
export default createComponent({
|
|
7
8
|
name: 'QPage',
|
|
8
9
|
|
|
9
10
|
props: {
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, computed, provide, inject, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
3
4
|
import { hSlot } from '../../utils/private/render.js'
|
|
4
5
|
import { pageContainerKey, layoutKey } from '../../utils/private/symbols.js'
|
|
5
6
|
|
|
6
|
-
export default
|
|
7
|
+
export default createComponent({
|
|
7
8
|
name: 'QPageContainer',
|
|
8
9
|
|
|
9
10
|
setup (_, { slots }) {
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, watch, onBeforeUnmount, getCurrentInstance, Transition } from 'vue'
|
|
2
2
|
|
|
3
3
|
import usePageSticky, { usePageStickyProps } from '../page-sticky/use-page-sticky.js'
|
|
4
4
|
import { getScrollTarget, setVerticalScrollPosition } from '../../utils/scroll.js'
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
7
|
+
|
|
8
|
+
export default createComponent({
|
|
7
9
|
name: 'QPageScroller',
|
|
8
10
|
|
|
9
11
|
props: {
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
3
2
|
import usePageSticky, { usePageStickyProps } from './use-page-sticky'
|
|
4
3
|
|
|
5
|
-
export default
|
|
4
|
+
export default createComponent({
|
|
6
5
|
name: 'QPageSticky',
|
|
7
6
|
|
|
8
7
|
props: usePageStickyProps,
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, watch, computed, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import QBtn from '../btn/QBtn.js'
|
|
4
4
|
import QInput from '../input/QInput.js'
|
|
5
5
|
|
|
6
6
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
7
7
|
|
|
8
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
8
9
|
import { between } from '../../utils/format.js'
|
|
9
10
|
import { isKeyCode } from '../../utils/private/key-composition.js'
|
|
10
11
|
|
|
11
|
-
export default
|
|
12
|
+
export default createComponent({
|
|
12
13
|
name: 'QPagination',
|
|
13
14
|
|
|
14
15
|
props: {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, watch, onMounted, onBeforeUnmount } from 'vue'
|
|
2
2
|
|
|
3
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
3
4
|
import { height, offset } from '../../utils/dom.js'
|
|
4
5
|
import frameDebounce from '../../utils/frame-debounce.js'
|
|
5
6
|
import { getScrollTarget } from '../../utils/scroll.js'
|
|
@@ -8,7 +9,7 @@ import { listenOpts } from '../../utils/event.js'
|
|
|
8
9
|
|
|
9
10
|
const { passive } = listenOpts
|
|
10
11
|
|
|
11
|
-
export default
|
|
12
|
+
export default createComponent({
|
|
12
13
|
name: 'QParallax',
|
|
13
14
|
|
|
14
15
|
props: {
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, nextTick, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import QMenu from '../menu/QMenu.js'
|
|
4
4
|
import QBtn from '../btn/QBtn.js'
|
|
5
5
|
|
|
6
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
6
7
|
import clone from '../../utils/clone.js'
|
|
7
8
|
import { isDeepEqual } from '../../utils/private/is.js'
|
|
8
9
|
|
|
9
|
-
export default
|
|
10
|
+
export default createComponent({
|
|
10
11
|
name: 'QPopupEdit',
|
|
11
12
|
|
|
12
13
|
props: {
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, watch, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import QDialog from '../dialog/QDialog.js'
|
|
4
4
|
import QMenu from '../menu/QMenu.js'
|
|
5
5
|
|
|
6
6
|
import useAnchor, { useAnchorProps } from '../../composables/private/use-anchor.js'
|
|
7
|
-
import { hSlot } from '../../utils/private/render.js'
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
9
|
+
|
|
10
|
+
export default createComponent({
|
|
10
11
|
name: 'QPopupProxy',
|
|
11
12
|
|
|
12
13
|
props: {
|
|
@@ -38,6 +39,10 @@ export default defineComponent({
|
|
|
38
39
|
|
|
39
40
|
const type = ref(getType())
|
|
40
41
|
|
|
42
|
+
const popupProps = computed(() => (
|
|
43
|
+
type.value === 'menu' ? { maxHeight: '99vh' } : {})
|
|
44
|
+
)
|
|
45
|
+
|
|
41
46
|
watch(() => getType(), val => {
|
|
42
47
|
if (showing.value !== true) {
|
|
43
48
|
type.value = val
|
|
@@ -63,21 +68,9 @@ export default defineComponent({
|
|
|
63
68
|
}
|
|
64
69
|
|
|
65
70
|
return () => {
|
|
66
|
-
const def = hSlot(slots.default)
|
|
67
|
-
|
|
68
|
-
const popupProps = (
|
|
69
|
-
type.value === 'menu'
|
|
70
|
-
&& def !== void 0
|
|
71
|
-
&& def[ 0 ] !== void 0
|
|
72
|
-
&& def[ 0 ].type !== void 0
|
|
73
|
-
&& [ 'QDate', 'QTime', 'QCarousel', 'QColor' ].includes(
|
|
74
|
-
def[ 0 ].type.name
|
|
75
|
-
)
|
|
76
|
-
) ? { cover: true, maxHeight: '99vh' } : {}
|
|
77
|
-
|
|
78
71
|
const data = {
|
|
79
72
|
ref: popupRef,
|
|
80
|
-
...popupProps,
|
|
73
|
+
...popupProps.value,
|
|
81
74
|
...attrs,
|
|
82
75
|
onShow,
|
|
83
76
|
onHide
|
|
@@ -98,7 +91,7 @@ export default defineComponent({
|
|
|
98
91
|
})
|
|
99
92
|
}
|
|
100
93
|
|
|
101
|
-
return h(component, data,
|
|
94
|
+
return h(component, data, slots.default)
|
|
102
95
|
}
|
|
103
96
|
}
|
|
104
97
|
})
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, watch, onMounted, onBeforeUnmount, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import QIcon from '../icon/QIcon.js'
|
|
4
4
|
import QSpinner from '../spinner/QSpinner.js'
|
|
5
5
|
import TouchPan from '../../directives/TouchPan.js'
|
|
6
6
|
|
|
7
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
7
8
|
import { getScrollTarget, getVerticalScrollPosition } from '../../utils/scroll.js'
|
|
8
9
|
import { between } from '../../utils/format.js'
|
|
9
10
|
import { prevent } from '../../utils/event.js'
|
|
@@ -13,7 +14,7 @@ const
|
|
|
13
14
|
PULLER_HEIGHT = 40,
|
|
14
15
|
OFFSET_TOP = 20
|
|
15
16
|
|
|
16
|
-
export default
|
|
17
|
+
export default createComponent({
|
|
17
18
|
name: 'QPullToRefresh',
|
|
18
19
|
|
|
19
20
|
props: {
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
4
4
|
import useSize, { useSizeProps } from '../../composables/private/use-size.js'
|
|
5
5
|
import useRefocusTarget from '../../composables/private/use-refocus-target.js'
|
|
6
6
|
import { useFormProps, useFormInject } from '../../composables/private/use-form.js'
|
|
7
7
|
|
|
8
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
8
9
|
import optionSizes from '../../utils/private/option-sizes.js'
|
|
9
10
|
import { stopAndPrevent } from '../../utils/event.js'
|
|
10
11
|
import { hSlot, hMergeSlot } from '../../utils/private/render.js'
|
|
@@ -24,7 +25,7 @@ const svg = h('svg', {
|
|
|
24
25
|
})
|
|
25
26
|
])
|
|
26
27
|
|
|
27
|
-
export default
|
|
28
|
+
export default createComponent({
|
|
28
29
|
name: 'QRadio',
|
|
29
30
|
|
|
30
31
|
props: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, watch, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import { useFormInject, useFormProps } from '../../composables/private/use-form.js'
|
|
4
4
|
|
|
@@ -10,6 +10,7 @@ import useSlider, {
|
|
|
10
10
|
keyCodes
|
|
11
11
|
} from '../slider/use-slider.js'
|
|
12
12
|
|
|
13
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
13
14
|
import { stopAndPrevent } from '../../utils/event.js'
|
|
14
15
|
import { between } from '../../utils/format.js'
|
|
15
16
|
import { hDir } from '../../utils/private/render.js'
|
|
@@ -20,7 +21,7 @@ const dragType = {
|
|
|
20
21
|
MAX: 2
|
|
21
22
|
}
|
|
22
23
|
|
|
23
|
-
export default
|
|
24
|
+
export default createComponent({
|
|
24
25
|
name: 'QRange',
|
|
25
26
|
|
|
26
27
|
props: {
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, onBeforeUpdate, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import QIcon from '../icon/QIcon.js'
|
|
4
4
|
|
|
5
|
+
import useSize, { useSizeProps } from '../../composables/private/use-size.js'
|
|
6
|
+
import { useFormProps, useFormAttrs, useFormInject } from '../../composables/private/use-form.js'
|
|
7
|
+
|
|
8
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
5
9
|
import { stopAndPrevent } from '../../utils/event.js'
|
|
6
10
|
import { between } from '../../utils/format.js'
|
|
7
11
|
import { hMergeSlot } from '../../utils/private/render.js'
|
|
8
12
|
|
|
9
|
-
|
|
10
|
-
import { useFormProps, useFormAttrs, useFormInject } from '../../composables/private/use-form.js'
|
|
11
|
-
|
|
12
|
-
export default defineComponent({
|
|
13
|
+
export default createComponent({
|
|
13
14
|
name: 'QRating',
|
|
14
15
|
|
|
15
16
|
props: {
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, onMounted, onBeforeUnmount, getCurrentInstance, nextTick } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useCanRender from '../../composables/private/use-can-render.js'
|
|
4
4
|
|
|
5
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
5
6
|
import { listenOpts, noop } from '../../utils/event.js'
|
|
6
7
|
|
|
7
8
|
const hasObserver = typeof ResizeObserver !== 'undefined'
|
|
@@ -12,7 +13,7 @@ const resizeProps = hasObserver === true
|
|
|
12
13
|
url: 'about:blank'
|
|
13
14
|
}
|
|
14
15
|
|
|
15
|
-
export default
|
|
16
|
+
export default createComponent({
|
|
16
17
|
name: 'QResizeObserver',
|
|
17
18
|
|
|
18
19
|
props: {
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { h
|
|
1
|
+
import { h } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useRatio, { useRatioProps } from '../../composables/private/use-ratio.js'
|
|
4
4
|
|
|
5
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
5
6
|
import { hSlot } from '../../utils/private/render.js'
|
|
6
7
|
|
|
7
|
-
export default
|
|
8
|
+
export default createComponent({
|
|
8
9
|
name: 'QResponsive',
|
|
9
10
|
|
|
10
11
|
props: useRatioProps,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, withDirectives, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
4
4
|
|
|
@@ -7,6 +7,7 @@ import QScrollObserver from '../scroll-observer/QScrollObserver.js'
|
|
|
7
7
|
|
|
8
8
|
import TouchPan from '../../directives/TouchPan.js'
|
|
9
9
|
|
|
10
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
10
11
|
import { between } from '../../utils/format.js'
|
|
11
12
|
import { setVerticalScrollPosition, setHorizontalScrollPosition } from '../../utils/scroll.js'
|
|
12
13
|
import { hMergeSlot } from '../../utils/private/render.js'
|
|
@@ -18,7 +19,7 @@ const dirProps = {
|
|
|
18
19
|
horizontal: { offset: 'offsetX', scroll: 'scrollLeft', dir: 'right', dist: 'x' }
|
|
19
20
|
}
|
|
20
21
|
|
|
21
|
-
export default
|
|
22
|
+
export default createComponent({
|
|
22
23
|
name: 'QScrollArea',
|
|
23
24
|
|
|
24
25
|
props: {
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { watch, onMounted, onBeforeUnmount, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
3
4
|
import { getScrollTarget, getVerticalScrollPosition, getHorizontalScrollPosition } from '../../utils/scroll.js'
|
|
4
5
|
import { listenOpts, noop } from '../../utils/event.js'
|
|
5
6
|
|
|
6
7
|
const { passive } = listenOpts
|
|
7
8
|
const axisValues = [ 'both', 'horizontal', 'vertical' ]
|
|
8
9
|
|
|
9
|
-
export default
|
|
10
|
+
export default createComponent({
|
|
10
11
|
name: 'QScrollObserver',
|
|
11
12
|
|
|
12
13
|
props: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, ref, computed, watch, onBeforeUpdate, onUpdated, onBeforeUnmount, nextTick, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import QField from '../field/QField.js'
|
|
4
4
|
import QIcon from '../icon/QIcon.js'
|
|
@@ -16,6 +16,7 @@ import { useVirtualScroll, useVirtualScrollProps } from '../virtual-scroll/use-v
|
|
|
16
16
|
import { useFormProps, useFormInputNameAttr } from '../../composables/private/use-form.js'
|
|
17
17
|
import useKeyComposition from '../../composables/private/use-key-composition.js'
|
|
18
18
|
|
|
19
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
19
20
|
import { isDeepEqual } from '../../utils/private/is.js'
|
|
20
21
|
import { stop, prevent, stopAndPrevent } from '../../utils/event.js'
|
|
21
22
|
import { normalizeToInterval } from '../../utils/format.js'
|
|
@@ -26,7 +27,7 @@ const validateNewValueMode = v => [ 'add', 'add-unique', 'toggle' ].includes(v)
|
|
|
26
27
|
const reEscapeList = '.*+?^${}()|[]\\'
|
|
27
28
|
const fieldPropsList = Object.keys(useFieldProps)
|
|
28
29
|
|
|
29
|
-
export default
|
|
30
|
+
export default createComponent({
|
|
30
31
|
name: 'QSelect',
|
|
31
32
|
|
|
32
33
|
inheritAttrs: false,
|
|
@@ -932,6 +933,12 @@ export default defineComponent({
|
|
|
932
933
|
}
|
|
933
934
|
|
|
934
935
|
function getAllOptions () {
|
|
936
|
+
if (noOptions.value === true) {
|
|
937
|
+
return slots[ 'no-option' ] !== void 0
|
|
938
|
+
? slots[ 'no-option' ]({ inputValue: inputValue.value })
|
|
939
|
+
: void 0
|
|
940
|
+
}
|
|
941
|
+
|
|
935
942
|
const fn = slots.option !== void 0
|
|
936
943
|
? slots.option
|
|
937
944
|
: scope => {
|
|
@@ -1113,14 +1120,6 @@ export default defineComponent({
|
|
|
1113
1120
|
}
|
|
1114
1121
|
|
|
1115
1122
|
function getMenu () {
|
|
1116
|
-
const child = noOptions.value === true
|
|
1117
|
-
? (
|
|
1118
|
-
slots[ 'no-option' ] !== void 0
|
|
1119
|
-
? () => slots[ 'no-option' ]({ inputValue: inputValue.value })
|
|
1120
|
-
: void 0
|
|
1121
|
-
)
|
|
1122
|
-
: getAllOptions
|
|
1123
|
-
|
|
1124
1123
|
return h(QMenu, {
|
|
1125
1124
|
ref: menuRef,
|
|
1126
1125
|
class: menuContentClass.value,
|
|
@@ -1145,7 +1144,7 @@ export default defineComponent({
|
|
|
1145
1144
|
onBeforeShow: onControlPopupShow,
|
|
1146
1145
|
onBeforeHide: onMenuBeforeHide,
|
|
1147
1146
|
onShow: onMenuShow
|
|
1148
|
-
},
|
|
1147
|
+
}, getAllOptions)
|
|
1149
1148
|
}
|
|
1150
1149
|
|
|
1151
1150
|
function onMenuBeforeHide (e) {
|
|
@@ -1202,15 +1201,7 @@ export default defineComponent({
|
|
|
1202
1201
|
...listboxAttrs.value,
|
|
1203
1202
|
onClick: prevent,
|
|
1204
1203
|
onScrollPassive: onVirtualScrollEvt
|
|
1205
|
-
}, (
|
|
1206
|
-
noOptions.value === true
|
|
1207
|
-
? (
|
|
1208
|
-
slots[ 'no-option' ] !== void 0
|
|
1209
|
-
? slots[ 'no-option' ]({ inputValue: inputValue.value })
|
|
1210
|
-
: null
|
|
1211
|
-
)
|
|
1212
|
-
: getAllOptions()
|
|
1213
|
-
))
|
|
1204
|
+
}, getAllOptions())
|
|
1214
1205
|
)
|
|
1215
1206
|
|
|
1216
1207
|
return h(QDialog, {
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import { h,
|
|
1
|
+
import { h, computed, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
4
4
|
|
|
5
|
+
import { createComponent } from '../../utils/private/create.js'
|
|
6
|
+
|
|
5
7
|
const insetMap = {
|
|
6
8
|
true: 'inset',
|
|
7
9
|
item: 'item-inset',
|
|
@@ -16,7 +18,7 @@ export const margins = {
|
|
|
16
18
|
xl: 24
|
|
17
19
|
}
|
|
18
20
|
|
|
19
|
-
export default
|
|
21
|
+
export default createComponent({
|
|
20
22
|
name: 'QSeparator',
|
|
21
23
|
|
|
22
24
|
props: {
|