quasar 2.9.2 → 2.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/Dialog.json +25 -68
- package/dist/api/Intersection.json +25 -100
- package/dist/api/Loading.json +5 -20
- package/dist/api/LoadingBar.json +1 -7
- package/dist/api/LocalStorage.json +4 -16
- package/dist/api/Morph.json +2 -14
- package/dist/api/Notify.json +0 -3
- package/dist/api/Platform.json +1 -4
- package/dist/api/QAjaxBar.json +1 -11
- package/dist/api/QBreadcrumbs.json +0 -8
- package/dist/api/QBreadcrumbsEl.json +0 -14
- package/dist/api/QBtn.json +0 -3
- package/dist/api/QBtnDropdown.json +32 -8
- package/dist/api/QCarousel.json +0 -10
- package/dist/api/QCarouselControl.json +0 -3
- package/dist/api/QCircularProgress.json +0 -23
- package/dist/api/QColor.json +0 -3
- package/dist/api/QDialog.json +18 -9
- package/dist/api/QDrawer.json +0 -6
- package/dist/api/QExpansionItem.json +0 -3
- package/dist/api/QFab.json +1 -6
- package/dist/api/QFabAction.json +1 -3
- package/dist/api/QField.json +1 -6
- package/dist/api/QFile.json +12 -29
- package/dist/api/QFooter.json +0 -3
- package/dist/api/QHeader.json +0 -6
- package/dist/api/QInfiniteScroll.json +9 -16
- package/dist/api/QInnerLoading.json +0 -4
- package/dist/api/QInput.json +8 -15
- package/dist/api/QIntersection.json +0 -4
- package/dist/api/QItemLabel.json +0 -5
- package/dist/api/QKnob.json +3 -36
- package/dist/api/QLayout.json +6 -24
- package/dist/api/QLinearProgress.json +0 -6
- package/dist/api/QList.json +15 -0
- package/dist/api/QMenu.json +7 -12
- package/dist/api/QOptionGroup.json +0 -3
- package/dist/api/QPage.json +2 -8
- package/dist/api/QPageScroller.json +0 -9
- package/dist/api/QPageSticky.json +0 -3
- package/dist/api/QPagination.json +138 -127
- package/dist/api/QParallax.json +2 -14
- package/dist/api/QPopupEdit.json +0 -8
- package/dist/api/QPopupProxy.json +0 -4
- package/dist/api/QRange.json +5 -32
- package/dist/api/QRating.json +0 -4
- package/dist/api/QResizeObserver.json +2 -8
- package/dist/api/QScrollArea.json +8 -36
- package/dist/api/QScrollObserver.json +6 -24
- package/dist/api/QSelect.json +18 -108
- package/dist/api/QSlideItem.json +1 -6
- package/dist/api/QSlideTransition.json +0 -4
- package/dist/api/QSlider.json +3 -24
- package/dist/api/QSpinner.json +0 -4
- package/dist/api/QSplitter.json +1 -4
- package/dist/api/QStepper.json +0 -7
- package/dist/api/QTabPanels.json +0 -7
- package/dist/api/QTable.json +43 -191
- package/dist/api/QTabs.json +1 -7
- package/dist/api/QTime.json +3 -12
- package/dist/api/QTooltip.json +7 -18
- package/dist/api/QTree.json +0 -3
- package/dist/api/QUploader.json +5 -16
- package/dist/api/QVirtualScroll.json +11 -56
- package/dist/api/Screen.json +9 -36
- package/dist/api/Scroll.json +2 -8
- package/dist/api/SessionStorage.json +4 -16
- package/dist/api/TouchHold.json +3 -12
- package/dist/api/TouchPan.json +7 -28
- package/dist/api/TouchRepeat.json +6 -24
- package/dist/api/TouchSwipe.json +3 -12
- 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/fontawesome-v6-pro.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v6.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/material-symbols-outlined.umd.prod.js +1 -1
- package/dist/icon-set/material-symbols-rounded.umd.prod.js +1 -1
- package/dist/icon-set/material-symbols-sharp.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-fontawesome-v6.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 +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-material-symbols-outlined.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-symbols-rounded.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-symbols-sharp.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-TN.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/eu.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/kz.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/mm.umd.prod.js +1 -1
- package/dist/lang/ms.umd.prod.js +1 -1
- package/dist/lang/my.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/sm.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/uz-Cyrl.umd.prod.js +1 -1
- package/dist/lang/uz-Latn.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 +12 -2
- package/dist/quasar.esm.js +603 -445
- package/dist/quasar.esm.prod.js +2 -2
- package/dist/quasar.prod.css +1 -1
- package/dist/quasar.rtl.css +28 -2
- package/dist/quasar.rtl.prod.css +1 -1
- package/dist/quasar.sass +13 -3
- package/dist/quasar.umd.js +603 -445
- package/dist/quasar.umd.prod.js +2 -2
- package/dist/transforms/auto-import.json +7 -3
- package/dist/transforms/import-map.json +2 -0
- package/dist/types/index.d.ts +116 -106
- package/dist/vetur/quasar-attributes.json +65 -49
- package/dist/vetur/quasar-tags.json +18 -14
- package/dist/web-types/web-types.json +261 -222
- package/package.json +3 -3
- package/src/api.extends.json +1 -2
- package/src/components/ajax-bar/QAjaxBar.json +5 -11
- package/src/components/badge/QBadge.js +1 -1
- package/src/components/breadcrumbs/QBreadcrumbs.json +0 -2
- package/src/components/breadcrumbs/QBreadcrumbsEl.json +1 -6
- package/src/components/breadcrumbs/__tests__/BasicBreadcrumbs.vue +7 -0
- package/src/components/breadcrumbs/__tests__/BreadcrumbWithSeparatorSlot.vue +11 -0
- package/src/components/breadcrumbs/__tests__/QBreadcrumbs.spec.js +112 -0
- package/src/components/breadcrumbs/__tests__/QBreadcrumbsEl.spec.js +87 -0
- package/src/components/btn/QBtn.json +1 -3
- package/src/components/btn/__tests__/QBtn.spec.js +87 -14
- package/src/components/btn/__tests__/use-btn.spec.js +385 -58
- package/src/components/btn/use-btn.js +24 -14
- package/src/components/btn-dropdown/QBtnDropdown.js +34 -18
- package/src/components/btn-dropdown/QBtnDropdown.json +1 -3
- package/src/components/btn-toggle/QBtnToggle.js +14 -14
- package/src/components/btn-toggle/QBtnToggle.json +2 -4
- package/src/components/carousel/QCarousel.json +4 -9
- package/src/components/carousel/QCarouselControl.json +0 -1
- package/src/components/checkbox/use-checkbox.js +1 -1
- package/src/components/checkbox/use-checkbox.json +1 -2
- package/src/components/chip/QChip.js +14 -11
- package/src/components/circular-progress/QCircularProgress.json +0 -5
- package/src/components/color/QColor.json +0 -1
- package/src/components/date/QDate.js +3 -3
- package/src/components/date/QDate.json +28 -56
- package/src/components/dialog/QDialog.js +32 -41
- package/src/components/dialog/QDialog.json +9 -2
- package/src/components/dialog-bottom-sheet/BottomSheet.js +7 -4
- package/src/components/dialog-plugin/DialogPlugin.js +4 -4
- package/src/components/drawer/QDrawer.js +10 -8
- package/src/components/drawer/QDrawer.json +0 -4
- package/src/components/editor/QEditor.json +3 -6
- package/src/components/expansion-item/QExpansionItem.js +3 -3
- package/src/components/expansion-item/QExpansionItem.json +3 -8
- package/src/components/fab/QFab.json +0 -1
- package/src/components/fab/use-fab.json +0 -1
- package/src/components/field/QField.json +0 -1
- package/src/components/file/QFile.js +4 -1
- package/src/components/file/QFile.json +19 -20
- package/src/components/footer/QFooter.js +5 -3
- package/src/components/footer/QFooter.json +0 -1
- package/src/components/form/QForm.js +5 -3
- package/src/components/form/QForm.json +2 -4
- package/src/components/header/QHeader.js +5 -3
- package/src/components/header/QHeader.json +0 -4
- package/src/components/infinite-scroll/QInfiniteScroll.json +9 -6
- package/src/components/inner-loading/QInnerLoading.js +2 -5
- package/src/components/input/QInput.js +4 -1
- package/src/components/input/QInput.json +11 -7
- package/src/components/input/use-mask.js +2 -2
- package/src/components/intersection/QIntersection.json +0 -1
- package/src/components/item/QItem.js +1 -0
- package/src/components/item/QItem.json +1 -2
- package/src/components/item/QItemLabel.json +0 -1
- package/src/components/item/QList.js +7 -2
- package/src/components/item/QList.json +7 -0
- package/src/components/knob/QKnob.js +3 -3
- package/src/components/knob/QKnob.json +3 -12
- package/src/components/layout/QLayout.js +1 -1
- package/src/components/layout/QLayout.json +6 -12
- package/src/components/linear-progress/QLinearProgress.json +0 -2
- package/src/components/menu/QMenu.js +8 -5
- package/src/components/menu/QMenu.json +0 -2
- package/src/components/option-group/QOptionGroup.js +1 -1
- package/src/components/option-group/QOptionGroup.json +2 -5
- package/src/components/page/QPage.js +11 -4
- package/src/components/page/QPage.json +3 -6
- package/src/components/page/QPageContainer.js +5 -3
- package/src/components/page-scroller/QPageScroller.json +0 -2
- package/src/components/page-sticky/QPageSticky.json +0 -1
- package/src/components/page-sticky/use-page-sticky.js +5 -3
- package/src/components/pagination/QPagination.js +265 -188
- package/src/components/pagination/QPagination.json +87 -78
- package/src/components/pagination/QPagination.sass +14 -0
- package/src/components/parallax/QParallax.json +2 -6
- package/src/components/popup-edit/QPopupEdit.js +3 -3
- package/src/components/popup-edit/QPopupEdit.json +4 -10
- package/src/components/popup-proxy/QPopupProxy.json +0 -1
- package/src/components/radio/QRadio.json +1 -2
- package/src/components/range/QRange.json +2 -4
- package/src/components/rating/QRating.json +0 -1
- package/src/components/resize-observer/QResizeObserver.js +14 -10
- package/src/components/resize-observer/QResizeObserver.json +2 -4
- package/src/components/scroll-area/QScrollArea.js +15 -4
- package/src/components/scroll-area/QScrollArea.json +24 -50
- package/src/components/scroll-observer/QScrollObserver.js +2 -0
- package/src/components/scroll-observer/QScrollObserver.json +6 -12
- package/src/components/select/QSelect.js +20 -24
- package/src/components/select/QSelect.json +30 -65
- package/src/components/select/QSelect.sass +2 -2
- package/src/components/slide-item/QSlideItem.json +1 -2
- package/src/components/slide-transition/QSlideTransition.json +0 -1
- package/src/components/slider/use-slider.json +33 -70
- package/src/components/spinner/QSpinner.json +0 -1
- package/src/components/splitter/QSplitter.json +1 -2
- package/src/components/stepper/QStep.js +7 -5
- package/src/components/tab-panels/QTabPanel.js +1 -1
- package/src/components/table/QTable.js +3 -3
- package/src/components/table/QTable.json +118 -239
- package/src/components/tabs/QRouteTab.json +0 -1
- package/src/components/tabs/QTabs.js +0 -7
- package/src/components/tabs/QTabs.json +1 -3
- package/src/components/tabs/use-tab.js +5 -3
- package/src/components/time/QTime.json +10 -20
- package/src/components/timeline/QTimelineEntry.js +5 -3
- package/src/components/toolbar/QToolbar.js +1 -1
- package/src/components/tooltip/QTooltip.js +3 -6
- package/src/components/tooltip/QTooltip.json +0 -4
- package/src/components/tree/QTree.js +6 -6
- package/src/components/tree/QTree.json +15 -31
- package/src/components/uploader/QUploader.json +13 -22
- package/src/components/uploader/QUploaderAddTrigger.js +7 -3
- package/src/components/uploader/xhr-uploader-plugin.js +1 -1
- package/src/components/uploader/xhr-uploader-plugin.json +25 -50
- package/src/components/virtual-scroll/QVirtualScroll.json +5 -10
- package/src/components/virtual-scroll/use-virtual-scroll.js +1 -1
- package/src/components/virtual-scroll/use-virtual-scroll.json +8 -19
- package/src/composables/private/use-field.js +1 -1
- package/src/composables/private/use-field.json +2 -3
- package/src/composables/private/use-file.js +10 -1
- package/src/composables/private/use-file.json +4 -13
- package/src/composables/private/use-model-toggle.js +3 -3
- package/src/composables/private/use-panel.js +2 -2
- package/src/composables/private/use-panel.json +0 -2
- package/src/composables/private/use-portal.js +5 -1
- package/src/composables/private/use-portal.json +7 -1
- package/src/composables/private/use-transition.js +17 -11
- package/src/composables/private/use-transition.json +0 -1
- package/src/composables/private/use-validate.json +1 -3
- package/src/directives/Intersection.json +26 -53
- package/src/directives/Morph.json +4 -8
- package/src/directives/Mutation.json +6 -12
- package/src/directives/Scroll.json +2 -4
- package/src/directives/TouchHold.json +3 -6
- package/src/directives/TouchPan.json +7 -14
- package/src/directives/TouchRepeat.json +6 -12
- package/src/directives/TouchSwipe.json +3 -6
- package/src/plugins/BottomSheet.json +1 -2
- package/src/plugins/Cookies.json +2 -4
- package/src/plugins/Dialog.json +32 -72
- package/src/plugins/Loading.json +6 -11
- package/src/plugins/LoadingBar.json +3 -6
- package/src/plugins/Notify.json +4 -5
- package/src/plugins/Platform.json +3 -6
- package/src/plugins/Screen.json +9 -18
- package/src/utils/private/global-dialog.json +6 -12
- package/src/utils/private/portal.js +4 -4
- package/src/utils/private/symbols.js +2 -0
- package/src/utils/private/web-storage.json +6 -10
package/dist/quasar.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Quasar Framework v2.
|
|
2
|
+
* Quasar Framework v2.10.1
|
|
3
3
|
* (c) 2015-present Razvan Stoenescu
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -1396,6 +1396,8 @@ const formKey = '_q_fo_';
|
|
|
1396
1396
|
const tabsKey = '_q_tabs_';
|
|
1397
1397
|
const uploaderKey = '_q_u_';
|
|
1398
1398
|
|
|
1399
|
+
const emptyRenderFn = () => {};
|
|
1400
|
+
|
|
1399
1401
|
const globalConfig = {};
|
|
1400
1402
|
let globalConfigIsFrozen = false;
|
|
1401
1403
|
|
|
@@ -1608,7 +1610,7 @@ function prepareApp (app, uiOpts, pluginOpts) {
|
|
|
1608
1610
|
}
|
|
1609
1611
|
|
|
1610
1612
|
var installQuasar = function (parentApp, opts = {}) {
|
|
1611
|
-
const $q = { version: '2.
|
|
1613
|
+
const $q = { version: '2.10.1' };
|
|
1612
1614
|
|
|
1613
1615
|
if (globalConfigIsFrozen === false) {
|
|
1614
1616
|
if (opts.config !== void 0) {
|
|
@@ -2367,7 +2369,7 @@ var QBadge = createComponent({
|
|
|
2367
2369
|
return () => h('div', {
|
|
2368
2370
|
class: classes.value,
|
|
2369
2371
|
style: style.value,
|
|
2370
|
-
role: '
|
|
2372
|
+
role: 'status',
|
|
2371
2373
|
'aria-label': props.label
|
|
2372
2374
|
}, hMergeSlot(slots.default, props.label !== void 0 ? [ props.label ] : []))
|
|
2373
2375
|
}
|
|
@@ -3298,7 +3300,7 @@ var Ripple = createDirective({
|
|
|
3298
3300
|
}
|
|
3299
3301
|
);
|
|
3300
3302
|
|
|
3301
|
-
const
|
|
3303
|
+
const btnPadding = {
|
|
3302
3304
|
none: 0,
|
|
3303
3305
|
xs: 4,
|
|
3304
3306
|
sm: 8,
|
|
@@ -3318,6 +3320,21 @@ const defaultSizes$2 = {
|
|
|
3318
3320
|
const formTypes = [ 'button', 'submit', 'reset' ];
|
|
3319
3321
|
const mediaTypeRE = /[^\s]\/[^\s]/;
|
|
3320
3322
|
|
|
3323
|
+
const btnDesignOptions = [ 'flat', 'outline', 'push', 'unelevated' ];
|
|
3324
|
+
const getBtnDesign = (props, defaultValue) => {
|
|
3325
|
+
if (props.flat === true) return 'flat'
|
|
3326
|
+
if (props.outline === true) return 'outline'
|
|
3327
|
+
if (props.push === true) return 'push'
|
|
3328
|
+
if (props.unelevated === true) return 'unelevated'
|
|
3329
|
+
return defaultValue
|
|
3330
|
+
};
|
|
3331
|
+
const getBtnDesignAttr = props => {
|
|
3332
|
+
const design = getBtnDesign(props);
|
|
3333
|
+
return design !== void 0
|
|
3334
|
+
? { [ design ]: true }
|
|
3335
|
+
: {}
|
|
3336
|
+
};
|
|
3337
|
+
|
|
3321
3338
|
const useBtnProps = {
|
|
3322
3339
|
...useSizeProps,
|
|
3323
3340
|
...useRouterLinkProps,
|
|
@@ -3331,13 +3348,14 @@ const useBtnProps = {
|
|
|
3331
3348
|
icon: String,
|
|
3332
3349
|
iconRight: String,
|
|
3333
3350
|
|
|
3334
|
-
|
|
3351
|
+
...btnDesignOptions.reduce(
|
|
3352
|
+
(acc, val) => (acc[ val ] = Boolean) && acc,
|
|
3353
|
+
{}
|
|
3354
|
+
),
|
|
3355
|
+
|
|
3335
3356
|
square: Boolean,
|
|
3336
|
-
|
|
3337
|
-
flat: Boolean,
|
|
3338
|
-
unelevated: Boolean,
|
|
3357
|
+
round: Boolean,
|
|
3339
3358
|
rounded: Boolean,
|
|
3340
|
-
push: Boolean,
|
|
3341
3359
|
glossy: Boolean,
|
|
3342
3360
|
|
|
3343
3361
|
size: String,
|
|
@@ -3387,7 +3405,7 @@ function useBtn (props) {
|
|
|
3387
3405
|
? Object.assign({}, obj, {
|
|
3388
3406
|
padding: props.padding
|
|
3389
3407
|
.split(/\s+/)
|
|
3390
|
-
.map(v => (v in
|
|
3408
|
+
.map(v => (v in btnPadding ? btnPadding[ v ] + 'px' : v))
|
|
3391
3409
|
.join(' '),
|
|
3392
3410
|
minWidth: '0',
|
|
3393
3411
|
minHeight: '0'
|
|
@@ -3407,13 +3425,7 @@ function useBtn (props) {
|
|
|
3407
3425
|
isActionable.value === true ? props.tabindex || 0 : -1
|
|
3408
3426
|
));
|
|
3409
3427
|
|
|
3410
|
-
const design = computed(() =>
|
|
3411
|
-
if (props.flat === true) return 'flat'
|
|
3412
|
-
if (props.outline === true) return 'outline'
|
|
3413
|
-
if (props.push === true) return 'push'
|
|
3414
|
-
if (props.unelevated === true) return 'unelevated'
|
|
3415
|
-
return 'standard'
|
|
3416
|
-
});
|
|
3428
|
+
const design = computed(() => getBtnDesign(props, 'standard'));
|
|
3417
3429
|
|
|
3418
3430
|
const attributes = computed(() => {
|
|
3419
3431
|
const acc = { tabindex: tabIndex.value };
|
|
@@ -4173,7 +4185,7 @@ const useModelToggleProps = {
|
|
|
4173
4185
|
};
|
|
4174
4186
|
|
|
4175
4187
|
const useModelToggleEmits = [
|
|
4176
|
-
'
|
|
4188
|
+
'beforeShow', 'show', 'beforeHide', 'hide'
|
|
4177
4189
|
];
|
|
4178
4190
|
|
|
4179
4191
|
// handleShow/handleHide -> removeTick(), self (& emit show)
|
|
@@ -4233,7 +4245,7 @@ function useModelToggle ({
|
|
|
4233
4245
|
|
|
4234
4246
|
showing.value = true;
|
|
4235
4247
|
|
|
4236
|
-
emit('
|
|
4248
|
+
emit('beforeShow', evt);
|
|
4237
4249
|
|
|
4238
4250
|
if (handleShow !== void 0) {
|
|
4239
4251
|
handleShow(evt);
|
|
@@ -4272,7 +4284,7 @@ function useModelToggle ({
|
|
|
4272
4284
|
|
|
4273
4285
|
showing.value = false;
|
|
4274
4286
|
|
|
4275
|
-
emit('
|
|
4287
|
+
emit('beforeHide', evt);
|
|
4276
4288
|
|
|
4277
4289
|
if (handleHide !== void 0) {
|
|
4278
4290
|
handleHide(evt);
|
|
@@ -4394,8 +4406,8 @@ const portalProxyList = [];
|
|
|
4394
4406
|
|
|
4395
4407
|
function getPortalProxy (el) {
|
|
4396
4408
|
return portalProxyList.find(proxy =>
|
|
4397
|
-
proxy.
|
|
4398
|
-
&& proxy.
|
|
4409
|
+
proxy.contentEl !== null
|
|
4410
|
+
&& proxy.contentEl.contains(el)
|
|
4399
4411
|
)
|
|
4400
4412
|
}
|
|
4401
4413
|
|
|
@@ -4409,7 +4421,7 @@ function closePortalMenus (proxy, evt) {
|
|
|
4409
4421
|
return getParentProxy(proxy)
|
|
4410
4422
|
}
|
|
4411
4423
|
}
|
|
4412
|
-
else if (proxy.
|
|
4424
|
+
else if (proxy.__qPortal === true) {
|
|
4413
4425
|
// treat it as point of separation if parent is QPopupProxy
|
|
4414
4426
|
// (so mobile matches desktop behavior)
|
|
4415
4427
|
// and hide it too
|
|
@@ -4430,7 +4442,7 @@ function closePortalMenus (proxy, evt) {
|
|
|
4430
4442
|
|
|
4431
4443
|
function closePortals (proxy, evt, depth) {
|
|
4432
4444
|
while (depth !== 0 && proxy !== void 0 && proxy !== null) {
|
|
4433
|
-
if (proxy.
|
|
4445
|
+
if (proxy.__qPortal === true) {
|
|
4434
4446
|
depth--;
|
|
4435
4447
|
|
|
4436
4448
|
if (proxy.$options.name === 'QMenu') {
|
|
@@ -4522,7 +4534,10 @@ function usePortal (vm, innerRef, renderPortalContent, checkGlobalDialog) {
|
|
|
4522
4534
|
onUnmounted(() => { hidePortal(true); });
|
|
4523
4535
|
|
|
4524
4536
|
// needed for portal vm detection
|
|
4525
|
-
vm.proxy.
|
|
4537
|
+
vm.proxy.__qPortal = true;
|
|
4538
|
+
|
|
4539
|
+
// public way of accessing the rendered content
|
|
4540
|
+
injectProp(vm.proxy, 'contentEl', () => innerRef.value);
|
|
4526
4541
|
|
|
4527
4542
|
return {
|
|
4528
4543
|
showPortal,
|
|
@@ -4560,18 +4575,24 @@ const useTransitionProps = {
|
|
|
4560
4575
|
}
|
|
4561
4576
|
};
|
|
4562
4577
|
|
|
4563
|
-
function useTransition (props,
|
|
4564
|
-
|
|
4578
|
+
function useTransition (props, defaultShowFn = () => {}, defaultHideFn = () => {}) {
|
|
4579
|
+
return {
|
|
4580
|
+
transitionProps: computed(() => {
|
|
4581
|
+
const show = `q-transition--${ props.transitionShow || defaultShowFn() }`;
|
|
4582
|
+
const hide = `q-transition--${ props.transitionHide || defaultHideFn() }`;
|
|
4565
4583
|
|
|
4566
|
-
|
|
4567
|
-
|
|
4568
|
-
});
|
|
4584
|
+
return {
|
|
4585
|
+
appear: true,
|
|
4569
4586
|
|
|
4570
|
-
|
|
4571
|
-
|
|
4572
|
-
|
|
4573
|
-
|
|
4574
|
-
|
|
4587
|
+
enterFromClass: `${ show }-enter-from`,
|
|
4588
|
+
enterActiveClass: `${ show }-enter-active`,
|
|
4589
|
+
enterToClass: `${ show }-enter-to`,
|
|
4590
|
+
|
|
4591
|
+
leaveFromClass: `${ hide }-leave-from`,
|
|
4592
|
+
leaveActiveClass: `${ hide }-leave-active`,
|
|
4593
|
+
leaveToClass: `${ hide }-leave-to`
|
|
4594
|
+
}
|
|
4595
|
+
}),
|
|
4575
4596
|
|
|
4576
4597
|
transitionStyle: computed(() => `--q-transition-duration: ${ props.transitionDuration }ms`)
|
|
4577
4598
|
}
|
|
@@ -5294,7 +5315,7 @@ var QMenu = createComponent({
|
|
|
5294
5315
|
|
|
5295
5316
|
emits: [
|
|
5296
5317
|
...useModelToggleEmits,
|
|
5297
|
-
'click', '
|
|
5318
|
+
'click', 'escapeKey'
|
|
5298
5319
|
],
|
|
5299
5320
|
|
|
5300
5321
|
setup (props, { slots, emit, attrs }) {
|
|
@@ -5315,7 +5336,7 @@ var QMenu = createComponent({
|
|
|
5315
5336
|
const isDark = useDark(props, $q);
|
|
5316
5337
|
const { registerTick, removeTick } = useTick();
|
|
5317
5338
|
const { registerTimeout } = useTimeout();
|
|
5318
|
-
const {
|
|
5339
|
+
const { transitionProps, transitionStyle } = useTransition(props);
|
|
5319
5340
|
const { localScrollTarget, changeScrollEvent, unconfigureScrollTarget } = useScrollTarget(props, configureScrollTarget);
|
|
5320
5341
|
|
|
5321
5342
|
const { anchorEl, canShow } = useAnchor({ showing });
|
|
@@ -5395,7 +5416,10 @@ var QMenu = createComponent({
|
|
|
5395
5416
|
let node = innerRef.value;
|
|
5396
5417
|
|
|
5397
5418
|
if (node && node.contains(document.activeElement) !== true) {
|
|
5398
|
-
node = node.querySelector('[autofocus], [data-autofocus]')
|
|
5419
|
+
node = node.querySelector('[autofocus][tabindex], [data-autofocus][tabindex]')
|
|
5420
|
+
|| node.querySelector('[autofocus] [tabindex], [data-autofocus] [tabindex]')
|
|
5421
|
+
|| node.querySelector('[autofocus], [data-autofocus]')
|
|
5422
|
+
|| node;
|
|
5399
5423
|
node.focus({ preventScroll: true });
|
|
5400
5424
|
}
|
|
5401
5425
|
});
|
|
@@ -5532,7 +5556,7 @@ var QMenu = createComponent({
|
|
|
5532
5556
|
}
|
|
5533
5557
|
|
|
5534
5558
|
function onEscapeKey (evt) {
|
|
5535
|
-
emit('
|
|
5559
|
+
emit('escapeKey');
|
|
5536
5560
|
hide(evt);
|
|
5537
5561
|
}
|
|
5538
5562
|
|
|
@@ -5560,7 +5584,7 @@ var QMenu = createComponent({
|
|
|
5560
5584
|
function renderPortalContent () {
|
|
5561
5585
|
return h(
|
|
5562
5586
|
Transition,
|
|
5563
|
-
|
|
5587
|
+
transitionProps.value,
|
|
5564
5588
|
() => (
|
|
5565
5589
|
showing.value === true
|
|
5566
5590
|
? h('div', {
|
|
@@ -5665,11 +5689,25 @@ function uid$3 () {
|
|
|
5665
5689
|
+ hexBytes[ b[ 14 ] ] + hexBytes[ b[ 15 ] ]
|
|
5666
5690
|
}
|
|
5667
5691
|
|
|
5692
|
+
const btnPropsList = Object.keys(useBtnProps);
|
|
5693
|
+
|
|
5694
|
+
const passBtnProps = props => btnPropsList.reduce(
|
|
5695
|
+
(acc, key) => {
|
|
5696
|
+
const val = props[ key ];
|
|
5697
|
+
if (val !== void 0) {
|
|
5698
|
+
acc[ key ] = val;
|
|
5699
|
+
}
|
|
5700
|
+
return acc
|
|
5701
|
+
},
|
|
5702
|
+
{}
|
|
5703
|
+
);
|
|
5704
|
+
|
|
5668
5705
|
var QBtnDropdown = createComponent({
|
|
5669
5706
|
name: 'QBtnDropdown',
|
|
5670
5707
|
|
|
5671
5708
|
props: {
|
|
5672
5709
|
...useBtnProps,
|
|
5710
|
+
...useTransitionProps,
|
|
5673
5711
|
|
|
5674
5712
|
modelValue: Boolean,
|
|
5675
5713
|
split: Boolean,
|
|
@@ -5701,7 +5739,7 @@ var QBtnDropdown = createComponent({
|
|
|
5701
5739
|
toggleAriaLabel: String
|
|
5702
5740
|
},
|
|
5703
5741
|
|
|
5704
|
-
emits: [ 'update:modelValue', 'click', '
|
|
5742
|
+
emits: [ 'update:modelValue', 'click', 'beforeShow', 'show', 'beforeHide', 'hide' ],
|
|
5705
5743
|
|
|
5706
5744
|
setup (props, { slots, emit }) {
|
|
5707
5745
|
const { proxy } = getCurrentInstance();
|
|
@@ -5710,7 +5748,7 @@ var QBtnDropdown = createComponent({
|
|
|
5710
5748
|
const menuRef = ref(null);
|
|
5711
5749
|
const targetUid = uid$3();
|
|
5712
5750
|
|
|
5713
|
-
const
|
|
5751
|
+
const ariaAttrs = computed(() => {
|
|
5714
5752
|
const acc = {
|
|
5715
5753
|
'aria-expanded': showing.value === true ? 'true' : 'false',
|
|
5716
5754
|
'aria-haspopup': 'true',
|
|
@@ -5738,6 +5776,9 @@ var QBtnDropdown = createComponent({
|
|
|
5738
5776
|
+ (props.split === false ? ' q-btn-dropdown__arrow-container' : '')
|
|
5739
5777
|
);
|
|
5740
5778
|
|
|
5779
|
+
const btnDesignAttr = computed(() => getBtnDesignAttr(props));
|
|
5780
|
+
const btnProps = computed(() => passBtnProps(props));
|
|
5781
|
+
|
|
5741
5782
|
watch(() => props.modelValue, val => {
|
|
5742
5783
|
menuRef.value !== null && menuRef.value[ val ? 'show' : 'hide' ]();
|
|
5743
5784
|
});
|
|
@@ -5746,7 +5787,7 @@ var QBtnDropdown = createComponent({
|
|
|
5746
5787
|
|
|
5747
5788
|
function onBeforeShow (e) {
|
|
5748
5789
|
showing.value = true;
|
|
5749
|
-
emit('
|
|
5790
|
+
emit('beforeShow', e);
|
|
5750
5791
|
}
|
|
5751
5792
|
|
|
5752
5793
|
function onShow (e) {
|
|
@@ -5756,7 +5797,7 @@ var QBtnDropdown = createComponent({
|
|
|
5756
5797
|
|
|
5757
5798
|
function onBeforeHide (e) {
|
|
5758
5799
|
showing.value = false;
|
|
5759
|
-
emit('
|
|
5800
|
+
emit('beforeHide', e);
|
|
5760
5801
|
}
|
|
5761
5802
|
|
|
5762
5803
|
function onHide (e) {
|
|
@@ -5818,6 +5859,9 @@ var QBtnDropdown = createComponent({
|
|
|
5818
5859
|
self: props.menuSelf,
|
|
5819
5860
|
offset: props.menuOffset,
|
|
5820
5861
|
separateClosePopup: true,
|
|
5862
|
+
transitionShow: props.transitionShow,
|
|
5863
|
+
transitionHide: props.transitionHide,
|
|
5864
|
+
transitionDuration: props.transitionDuration,
|
|
5821
5865
|
onBeforeShow,
|
|
5822
5866
|
onShow,
|
|
5823
5867
|
onBeforeHide,
|
|
@@ -5828,11 +5872,11 @@ var QBtnDropdown = createComponent({
|
|
|
5828
5872
|
if (props.split === false) {
|
|
5829
5873
|
return h(QBtn, {
|
|
5830
5874
|
class: 'q-btn-dropdown q-btn-dropdown--simple',
|
|
5831
|
-
...
|
|
5875
|
+
...btnProps.value,
|
|
5876
|
+
...ariaAttrs.value,
|
|
5832
5877
|
disable: props.disable === true || props.disableMainBtn === true,
|
|
5833
5878
|
noWrap: true,
|
|
5834
5879
|
round: false,
|
|
5835
|
-
...attributes.value,
|
|
5836
5880
|
onClick
|
|
5837
5881
|
}, {
|
|
5838
5882
|
default: () => hSlot(slots.label, []).concat(Arrow),
|
|
@@ -5842,21 +5886,17 @@ var QBtnDropdown = createComponent({
|
|
|
5842
5886
|
|
|
5843
5887
|
return h(QBtnGroup, {
|
|
5844
5888
|
class: 'q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item',
|
|
5845
|
-
outline: props.outline,
|
|
5846
|
-
flat: props.flat,
|
|
5847
5889
|
rounded: props.rounded,
|
|
5848
5890
|
square: props.square,
|
|
5849
|
-
|
|
5850
|
-
unelevated: props.unelevated,
|
|
5891
|
+
...btnDesignAttr.value,
|
|
5851
5892
|
glossy: props.glossy,
|
|
5852
5893
|
stretch: props.stretch
|
|
5853
5894
|
}, () => [
|
|
5854
5895
|
h(QBtn, {
|
|
5855
5896
|
class: 'q-btn-dropdown--current',
|
|
5856
|
-
...
|
|
5897
|
+
...btnProps.value,
|
|
5857
5898
|
disable: props.disable === true || props.disableMainBtn === true,
|
|
5858
5899
|
noWrap: true,
|
|
5859
|
-
iconRight: props.iconRight,
|
|
5860
5900
|
round: false,
|
|
5861
5901
|
onClick: onClickHide
|
|
5862
5902
|
}, {
|
|
@@ -5866,16 +5906,15 @@ var QBtnDropdown = createComponent({
|
|
|
5866
5906
|
|
|
5867
5907
|
h(QBtn, {
|
|
5868
5908
|
class: 'q-btn-dropdown__arrow-container q-anchor--skip',
|
|
5869
|
-
...
|
|
5909
|
+
...ariaAttrs.value,
|
|
5910
|
+
...btnDesignAttr.value,
|
|
5870
5911
|
disable: props.disable === true || props.disableDropdown === true,
|
|
5871
|
-
outline: props.outline,
|
|
5872
|
-
flat: props.flat,
|
|
5873
5912
|
rounded: props.rounded,
|
|
5874
|
-
push: props.push,
|
|
5875
|
-
size: props.size,
|
|
5876
5913
|
color: props.color,
|
|
5877
5914
|
textColor: props.textColor,
|
|
5878
5915
|
dense: props.dense,
|
|
5916
|
+
size: props.size,
|
|
5917
|
+
padding: props.padding,
|
|
5879
5918
|
ripple: props.ripple
|
|
5880
5919
|
}, () => Arrow)
|
|
5881
5920
|
])
|
|
@@ -5982,6 +6021,14 @@ var QBtnToggle = createComponent({
|
|
|
5982
6021
|
|
|
5983
6022
|
const injectFormInput = useFormInject(formAttrs);
|
|
5984
6023
|
|
|
6024
|
+
const btnDesignAttr = computed(() => getBtnDesignAttr(props));
|
|
6025
|
+
|
|
6026
|
+
const btnOptionDesign = computed(() => ({
|
|
6027
|
+
rounded: props.rounded,
|
|
6028
|
+
dense: props.dense,
|
|
6029
|
+
...btnDesignAttr.value
|
|
6030
|
+
}));
|
|
6031
|
+
|
|
5985
6032
|
const btnOptions = computed(() => props.options.map((item, i) => {
|
|
5986
6033
|
const { attrs, value, slot, ...opt } = item;
|
|
5987
6034
|
|
|
@@ -5989,19 +6036,11 @@ var QBtnToggle = createComponent({
|
|
|
5989
6036
|
slot,
|
|
5990
6037
|
props: {
|
|
5991
6038
|
key: i,
|
|
5992
|
-
onClick (e) { set(value, item, e); },
|
|
5993
6039
|
|
|
5994
6040
|
'aria-pressed': value === props.modelValue ? 'true' : 'false',
|
|
5995
|
-
|
|
5996
6041
|
...attrs,
|
|
5997
6042
|
...opt,
|
|
5998
|
-
|
|
5999
|
-
outline: props.outline,
|
|
6000
|
-
flat: props.flat,
|
|
6001
|
-
rounded: props.rounded,
|
|
6002
|
-
push: props.push,
|
|
6003
|
-
unelevated: props.unelevated,
|
|
6004
|
-
dense: props.dense,
|
|
6043
|
+
...btnOptionDesign.value,
|
|
6005
6044
|
|
|
6006
6045
|
disable: props.disable === true || opt.disable === true,
|
|
6007
6046
|
|
|
@@ -6019,7 +6058,9 @@ var QBtnToggle = createComponent({
|
|
|
6019
6058
|
padding: mergeOpt(opt, 'padding'),
|
|
6020
6059
|
ripple: mergeOpt(opt, 'ripple'),
|
|
6021
6060
|
stack: mergeOpt(opt, 'stack') === true,
|
|
6022
|
-
stretch: mergeOpt(opt, 'stretch') === true
|
|
6061
|
+
stretch: mergeOpt(opt, 'stretch') === true,
|
|
6062
|
+
|
|
6063
|
+
onClick (e) { set(value, item, e); }
|
|
6023
6064
|
}
|
|
6024
6065
|
}
|
|
6025
6066
|
}));
|
|
@@ -6058,12 +6099,9 @@ var QBtnToggle = createComponent({
|
|
|
6058
6099
|
|
|
6059
6100
|
return () => h(QBtnGroup, {
|
|
6060
6101
|
class: 'q-btn-toggle',
|
|
6061
|
-
|
|
6062
|
-
flat: props.flat,
|
|
6102
|
+
...btnDesignAttr.value,
|
|
6063
6103
|
rounded: props.rounded,
|
|
6064
|
-
push: props.push,
|
|
6065
6104
|
stretch: props.stretch,
|
|
6066
|
-
unelevated: props.unelevated,
|
|
6067
6105
|
glossy: props.glossy,
|
|
6068
6106
|
spread: props.spread
|
|
6069
6107
|
}, getContent)
|
|
@@ -6521,7 +6559,7 @@ const usePanelProps = {
|
|
|
6521
6559
|
keepAliveMax: Number
|
|
6522
6560
|
};
|
|
6523
6561
|
|
|
6524
|
-
const usePanelEmits = [ 'update:modelValue', '
|
|
6562
|
+
const usePanelEmits = [ 'update:modelValue', 'beforeTransition', 'transition' ];
|
|
6525
6563
|
|
|
6526
6564
|
function usePanel () {
|
|
6527
6565
|
const { props, emit, proxy } = getCurrentInstance();
|
|
@@ -6593,7 +6631,7 @@ function usePanel () {
|
|
|
6593
6631
|
|
|
6594
6632
|
if (panelIndex.value !== index) {
|
|
6595
6633
|
panelIndex.value = index;
|
|
6596
|
-
emit('
|
|
6634
|
+
emit('beforeTransition', newVal, oldVal);
|
|
6597
6635
|
nextTick(() => {
|
|
6598
6636
|
emit('transition', newVal, oldVal);
|
|
6599
6637
|
});
|
|
@@ -7504,7 +7542,7 @@ function useCheckbox (type, getInner) {
|
|
|
7504
7542
|
const attributes = computed(() => {
|
|
7505
7543
|
const attrs = {
|
|
7506
7544
|
tabindex: tabindex.value,
|
|
7507
|
-
role: 'checkbox',
|
|
7545
|
+
role: type === 'toggle' ? 'switch' : 'checkbox',
|
|
7508
7546
|
'aria-label': props.label,
|
|
7509
7547
|
'aria-checked': isIndeterminate.value === true
|
|
7510
7548
|
? 'mixed'
|
|
@@ -7769,16 +7807,19 @@ var QChip = createComponent({
|
|
|
7769
7807
|
+ (isDark.value === true ? ' q-chip--dark q-dark' : '')
|
|
7770
7808
|
});
|
|
7771
7809
|
|
|
7772
|
-
const attributes = computed(() =>
|
|
7773
|
-
props.disable === true
|
|
7810
|
+
const attributes = computed(() => {
|
|
7811
|
+
const chip = props.disable === true
|
|
7774
7812
|
? { tabindex: -1, 'aria-disabled': 'true' }
|
|
7775
|
-
: {
|
|
7776
|
-
|
|
7777
|
-
|
|
7778
|
-
|
|
7779
|
-
|
|
7780
|
-
|
|
7781
|
-
|
|
7813
|
+
: { tabindex: props.tabindex || 0 };
|
|
7814
|
+
const remove = {
|
|
7815
|
+
...chip,
|
|
7816
|
+
role: 'button',
|
|
7817
|
+
'aria-hidden': 'false',
|
|
7818
|
+
'aria-label': props.removeAriaLabel || $q.lang.label.remove
|
|
7819
|
+
};
|
|
7820
|
+
|
|
7821
|
+
return { chip, remove }
|
|
7822
|
+
});
|
|
7782
7823
|
|
|
7783
7824
|
function onKeyup (e) {
|
|
7784
7825
|
e.keyCode === 13 /* ENTER */ && onClick(e);
|
|
@@ -7836,7 +7877,7 @@ var QChip = createComponent({
|
|
|
7836
7877
|
h(QIcon, {
|
|
7837
7878
|
class: 'q-chip__icon q-chip__icon--remove cursor-pointer',
|
|
7838
7879
|
name: removeIcon.value,
|
|
7839
|
-
...attributes.value,
|
|
7880
|
+
...attributes.value.remove,
|
|
7840
7881
|
onClick: onRemove,
|
|
7841
7882
|
onKeyup: onRemove
|
|
7842
7883
|
})
|
|
@@ -7855,7 +7896,7 @@ var QChip = createComponent({
|
|
|
7855
7896
|
|
|
7856
7897
|
isClickable.value === true && Object.assign(
|
|
7857
7898
|
data,
|
|
7858
|
-
attributes.value,
|
|
7899
|
+
attributes.value.chip,
|
|
7859
7900
|
{ onClick, onKeyup }
|
|
7860
7901
|
);
|
|
7861
7902
|
|
|
@@ -9339,17 +9380,21 @@ var QResizeObserver = createComponent({
|
|
|
9339
9380
|
if (hasObserver === true) {
|
|
9340
9381
|
let observer;
|
|
9341
9382
|
|
|
9342
|
-
|
|
9343
|
-
|
|
9344
|
-
|
|
9383
|
+
// initialize as soon as possible
|
|
9384
|
+
const init = stop => {
|
|
9385
|
+
targetEl = proxy.$el.parentNode;
|
|
9345
9386
|
|
|
9346
|
-
|
|
9347
|
-
|
|
9348
|
-
|
|
9349
|
-
|
|
9350
|
-
|
|
9351
|
-
|
|
9352
|
-
|
|
9387
|
+
if (targetEl) {
|
|
9388
|
+
observer = new ResizeObserver(trigger);
|
|
9389
|
+
observer.observe(targetEl);
|
|
9390
|
+
emitEvent();
|
|
9391
|
+
}
|
|
9392
|
+
else if (stop !== true) {
|
|
9393
|
+
nextTick(() => { init(true); });
|
|
9394
|
+
}
|
|
9395
|
+
};
|
|
9396
|
+
|
|
9397
|
+
onMounted(() => { init(); });
|
|
9353
9398
|
|
|
9354
9399
|
onBeforeUnmount(() => {
|
|
9355
9400
|
clearTimeout(timer);
|
|
@@ -10033,13 +10078,6 @@ var QTabs = createComponent({
|
|
|
10033
10078
|
}
|
|
10034
10079
|
}
|
|
10035
10080
|
|
|
10036
|
-
/*
|
|
10037
|
-
* Vue has an aggressive diff (in-place replacement) so we cannot
|
|
10038
|
-
* ensure that the instance getting destroyed is the actual tab
|
|
10039
|
-
* reported here. As a result, we cannot use its name or check
|
|
10040
|
-
* if it's a route one to make the necessary updates. We need to
|
|
10041
|
-
* always check the existing list again and infer the changes.
|
|
10042
|
-
*/
|
|
10043
10081
|
function unregisterTab (tabData) {
|
|
10044
10082
|
tabDataList.splice(tabDataList.indexOf(tabData), 1);
|
|
10045
10083
|
tabDataListLen.value--;
|
|
@@ -10171,9 +10209,11 @@ const useTabProps = {
|
|
|
10171
10209
|
};
|
|
10172
10210
|
|
|
10173
10211
|
function useTab (props, slots, emit, routeData) {
|
|
10174
|
-
const $tabs = inject(tabsKey,
|
|
10212
|
+
const $tabs = inject(tabsKey, emptyRenderFn);
|
|
10213
|
+
if ($tabs === emptyRenderFn) {
|
|
10175
10214
|
console.error('QTab/QRouteTab component needs to be child of QTabs');
|
|
10176
|
-
|
|
10215
|
+
return emptyRenderFn
|
|
10216
|
+
}
|
|
10177
10217
|
|
|
10178
10218
|
const { proxy } = getCurrentInstance();
|
|
10179
10219
|
|
|
@@ -10449,7 +10489,7 @@ var QTabPanel = createComponent({
|
|
|
10449
10489
|
props: usePanelChildProps,
|
|
10450
10490
|
|
|
10451
10491
|
setup (_, { slots }) {
|
|
10452
|
-
return () => h('div', { class: 'q-tab-panel' }, hSlot(slots.default))
|
|
10492
|
+
return () => h('div', { class: 'q-tab-panel', role: 'tabpanel' }, hSlot(slots.default))
|
|
10453
10493
|
}
|
|
10454
10494
|
});
|
|
10455
10495
|
|
|
@@ -13051,7 +13091,7 @@ var QDate = createComponent({
|
|
|
13051
13091
|
|
|
13052
13092
|
emits: [
|
|
13053
13093
|
...useDatetimeEmits,
|
|
13054
|
-
'
|
|
13094
|
+
'rangeStart', 'rangeEnd', 'navigation'
|
|
13055
13095
|
],
|
|
13056
13096
|
|
|
13057
13097
|
setup (props, { slots, emit }) {
|
|
@@ -14360,7 +14400,7 @@ var QDate = createComponent({
|
|
|
14360
14400
|
finalHash: initHash
|
|
14361
14401
|
};
|
|
14362
14402
|
|
|
14363
|
-
emit('
|
|
14403
|
+
emit('rangeStart', getShortDate(day));
|
|
14364
14404
|
}
|
|
14365
14405
|
else {
|
|
14366
14406
|
const
|
|
@@ -14373,7 +14413,7 @@ var QDate = createComponent({
|
|
|
14373
14413
|
editRange.value = null;
|
|
14374
14414
|
addToModel(initHash === finalHash ? day : { target: day, ...payload });
|
|
14375
14415
|
|
|
14376
|
-
emit('
|
|
14416
|
+
emit('rangeEnd', {
|
|
14377
14417
|
from: getShortDate(payload.from),
|
|
14378
14418
|
to: getShortDate(payload.to)
|
|
14379
14419
|
});
|
|
@@ -14678,7 +14718,7 @@ const positionClass$1 = {
|
|
|
14678
14718
|
left: 'fixed-left items-center'
|
|
14679
14719
|
};
|
|
14680
14720
|
|
|
14681
|
-
const
|
|
14721
|
+
const defaultTransitions = {
|
|
14682
14722
|
standard: [ 'scale', 'scale' ],
|
|
14683
14723
|
top: [ 'slide-down', 'slide-up' ],
|
|
14684
14724
|
bottom: [ 'slide-up', 'slide-down' ],
|
|
@@ -14695,8 +14735,8 @@ var QDialog = createComponent({
|
|
|
14695
14735
|
...useModelToggleProps,
|
|
14696
14736
|
...useTransitionProps,
|
|
14697
14737
|
|
|
14698
|
-
transitionShow: String,
|
|
14699
|
-
transitionHide: String,
|
|
14738
|
+
transitionShow: String, // override useTransitionProps
|
|
14739
|
+
transitionHide: String, // override useTransitionProps
|
|
14700
14740
|
|
|
14701
14741
|
persistent: Boolean,
|
|
14702
14742
|
autoClose: Boolean,
|
|
@@ -14727,7 +14767,7 @@ var QDialog = createComponent({
|
|
|
14727
14767
|
|
|
14728
14768
|
emits: [
|
|
14729
14769
|
...useModelToggleEmits,
|
|
14730
|
-
'shake', 'click', '
|
|
14770
|
+
'shake', 'click', 'escapeKey'
|
|
14731
14771
|
],
|
|
14732
14772
|
|
|
14733
14773
|
setup (props, { slots, emit, attrs }) {
|
|
@@ -14735,7 +14775,6 @@ var QDialog = createComponent({
|
|
|
14735
14775
|
|
|
14736
14776
|
const innerRef = ref(null);
|
|
14737
14777
|
const showing = ref(false);
|
|
14738
|
-
const transitionState = ref(false);
|
|
14739
14778
|
const animating = ref(false);
|
|
14740
14779
|
|
|
14741
14780
|
let shakeTimeout, refocusTarget = null, isMaximized, avoidAutoClose;
|
|
@@ -14750,6 +14789,12 @@ var QDialog = createComponent({
|
|
|
14750
14789
|
const { registerTimeout } = useTimeout();
|
|
14751
14790
|
const { registerTick, removeTick } = useTick();
|
|
14752
14791
|
|
|
14792
|
+
const { transitionProps, transitionStyle } = useTransition(
|
|
14793
|
+
props,
|
|
14794
|
+
() => defaultTransitions[ props.position ][ 0 ],
|
|
14795
|
+
() => defaultTransitions[ props.position ][ 1 ]
|
|
14796
|
+
);
|
|
14797
|
+
|
|
14753
14798
|
const { showPortal, hidePortal, portalIsAccessible, renderPortal } = usePortal(
|
|
14754
14799
|
vm, innerRef, renderPortalContent, /* pls do check if on a global dialog */ true
|
|
14755
14800
|
);
|
|
@@ -14774,26 +14819,6 @@ var QDialog = createComponent({
|
|
|
14774
14819
|
+ (props.square === true ? ' q-dialog__inner--square' : '')
|
|
14775
14820
|
);
|
|
14776
14821
|
|
|
14777
|
-
const transitionShow = computed(() =>
|
|
14778
|
-
'q-transition--'
|
|
14779
|
-
+ (props.transitionShow === void 0 ? transitions[ props.position ][ 0 ] : props.transitionShow)
|
|
14780
|
-
);
|
|
14781
|
-
|
|
14782
|
-
const transitionHide = computed(() =>
|
|
14783
|
-
'q-transition--'
|
|
14784
|
-
+ (props.transitionHide === void 0 ? transitions[ props.position ][ 1 ] : props.transitionHide)
|
|
14785
|
-
);
|
|
14786
|
-
|
|
14787
|
-
const transition = computed(() => (
|
|
14788
|
-
transitionState.value === true
|
|
14789
|
-
? transitionHide.value
|
|
14790
|
-
: transitionShow.value
|
|
14791
|
-
));
|
|
14792
|
-
|
|
14793
|
-
const transitionStyle = computed(
|
|
14794
|
-
() => `--q-transition-duration: ${ props.transitionDuration }ms`
|
|
14795
|
-
);
|
|
14796
|
-
|
|
14797
14822
|
const useBackdrop = computed(() => showing.value === true && props.seamless !== true);
|
|
14798
14823
|
|
|
14799
14824
|
const onEvents = computed(() => (
|
|
@@ -14808,12 +14833,6 @@ var QDialog = createComponent({
|
|
|
14808
14833
|
attrs.class
|
|
14809
14834
|
]);
|
|
14810
14835
|
|
|
14811
|
-
watch(showing, val => {
|
|
14812
|
-
nextTick(() => {
|
|
14813
|
-
transitionState.value = val;
|
|
14814
|
-
});
|
|
14815
|
-
});
|
|
14816
|
-
|
|
14817
14836
|
watch(() => props.maximized, state => {
|
|
14818
14837
|
showing.value === true && updateMaximized(state);
|
|
14819
14838
|
});
|
|
@@ -14913,13 +14932,23 @@ var QDialog = createComponent({
|
|
|
14913
14932
|
return
|
|
14914
14933
|
}
|
|
14915
14934
|
|
|
14916
|
-
node =
|
|
14935
|
+
node = (selector !== '' ? node.querySelector(selector) : null)
|
|
14936
|
+
|| node.querySelector('[autofocus][tabindex], [data-autofocus][tabindex]')
|
|
14937
|
+
|| node.querySelector('[autofocus] [tabindex], [data-autofocus] [tabindex]')
|
|
14938
|
+
|| node.querySelector('[autofocus], [data-autofocus]')
|
|
14939
|
+
|| node;
|
|
14917
14940
|
node.focus({ preventScroll: true });
|
|
14918
14941
|
});
|
|
14919
14942
|
}
|
|
14920
14943
|
|
|
14921
|
-
function shake () {
|
|
14922
|
-
focus
|
|
14944
|
+
function shake (refocusTarget) {
|
|
14945
|
+
if (refocusTarget && typeof refocusTarget.focus === 'function') {
|
|
14946
|
+
refocusTarget.focus({ preventScroll: true });
|
|
14947
|
+
}
|
|
14948
|
+
else {
|
|
14949
|
+
focus();
|
|
14950
|
+
}
|
|
14951
|
+
|
|
14923
14952
|
emit('shake');
|
|
14924
14953
|
|
|
14925
14954
|
const node = innerRef.value;
|
|
@@ -14945,7 +14974,7 @@ var QDialog = createComponent({
|
|
|
14945
14974
|
props.maximized !== true && props.noShake !== true && shake();
|
|
14946
14975
|
}
|
|
14947
14976
|
else {
|
|
14948
|
-
emit('
|
|
14977
|
+
emit('escapeKey');
|
|
14949
14978
|
hide();
|
|
14950
14979
|
}
|
|
14951
14980
|
}
|
|
@@ -15000,7 +15029,7 @@ var QDialog = createComponent({
|
|
|
15000
15029
|
hide(e);
|
|
15001
15030
|
}
|
|
15002
15031
|
else if (props.noShake !== true) {
|
|
15003
|
-
shake();
|
|
15032
|
+
shake(e.relatedTarget);
|
|
15004
15033
|
}
|
|
15005
15034
|
}
|
|
15006
15035
|
|
|
@@ -15029,7 +15058,8 @@ var QDialog = createComponent({
|
|
|
15029
15058
|
|
|
15030
15059
|
function renderPortalContent () {
|
|
15031
15060
|
return h('div', {
|
|
15032
|
-
|
|
15061
|
+
role: 'dialog',
|
|
15062
|
+
'aria-modal': useBackdrop.value === true ? 'true' : 'false',
|
|
15033
15063
|
...attrs,
|
|
15034
15064
|
class: rootClasses.value
|
|
15035
15065
|
}, [
|
|
@@ -15042,14 +15072,15 @@ var QDialog = createComponent({
|
|
|
15042
15072
|
class: 'q-dialog__backdrop fixed-full',
|
|
15043
15073
|
style: transitionStyle.value,
|
|
15044
15074
|
'aria-hidden': 'true',
|
|
15045
|
-
|
|
15075
|
+
tabindex: -1,
|
|
15076
|
+
onFocusin: onBackdropClick
|
|
15046
15077
|
})
|
|
15047
15078
|
: null
|
|
15048
15079
|
)),
|
|
15049
15080
|
|
|
15050
15081
|
h(
|
|
15051
15082
|
Transition,
|
|
15052
|
-
|
|
15083
|
+
transitionProps.value,
|
|
15053
15084
|
() => (
|
|
15054
15085
|
showing.value === true
|
|
15055
15086
|
? h('div', {
|
|
@@ -15122,7 +15153,7 @@ var QDrawer = createComponent({
|
|
|
15122
15153
|
|
|
15123
15154
|
emits: [
|
|
15124
15155
|
...useModelToggleEmits,
|
|
15125
|
-
'
|
|
15156
|
+
'onLayout', 'miniState'
|
|
15126
15157
|
],
|
|
15127
15158
|
|
|
15128
15159
|
setup (props, { slots, emit, attrs }) {
|
|
@@ -15133,9 +15164,11 @@ var QDrawer = createComponent({
|
|
|
15133
15164
|
const { preventBodyScroll } = usePreventScroll();
|
|
15134
15165
|
const { registerTimeout, removeTimeout } = useTimeout();
|
|
15135
15166
|
|
|
15136
|
-
const $layout = inject(layoutKey,
|
|
15167
|
+
const $layout = inject(layoutKey, emptyRenderFn);
|
|
15168
|
+
if ($layout === emptyRenderFn) {
|
|
15137
15169
|
console.error('QDrawer needs to be child of QLayout');
|
|
15138
|
-
|
|
15170
|
+
return emptyRenderFn
|
|
15171
|
+
}
|
|
15139
15172
|
|
|
15140
15173
|
let lastDesktopState, timerMini, layoutTotalWidthWatcher;
|
|
15141
15174
|
|
|
@@ -15453,7 +15486,7 @@ var QDrawer = createComponent({
|
|
|
15453
15486
|
watch(offset, val => { updateLayout('offset', val); });
|
|
15454
15487
|
|
|
15455
15488
|
watch(onLayout, val => {
|
|
15456
|
-
emit('
|
|
15489
|
+
emit('onLayout', val);
|
|
15457
15490
|
updateLayout('space', val);
|
|
15458
15491
|
});
|
|
15459
15492
|
|
|
@@ -15477,7 +15510,7 @@ var QDrawer = createComponent({
|
|
|
15477
15510
|
}
|
|
15478
15511
|
});
|
|
15479
15512
|
|
|
15480
|
-
watch(isMini, val => { emit('
|
|
15513
|
+
watch(isMini, val => { emit('miniState', val); });
|
|
15481
15514
|
|
|
15482
15515
|
function applyPosition (position) {
|
|
15483
15516
|
if (position === void 0) {
|
|
@@ -15642,8 +15675,8 @@ var QDrawer = createComponent({
|
|
|
15642
15675
|
}
|
|
15643
15676
|
|
|
15644
15677
|
onMounted(() => {
|
|
15645
|
-
emit('
|
|
15646
|
-
emit('
|
|
15678
|
+
emit('onLayout', onLayout.value);
|
|
15679
|
+
emit('miniState', isMini.value);
|
|
15647
15680
|
|
|
15648
15681
|
lastDesktopState = props.showIfAbove === true;
|
|
15649
15682
|
|
|
@@ -16196,7 +16229,7 @@ var QTooltip = createComponent({
|
|
|
16196
16229
|
|
|
16197
16230
|
const { registerTick, removeTick } = useTick();
|
|
16198
16231
|
const { registerTimeout } = useTimeout();
|
|
16199
|
-
const {
|
|
16232
|
+
const { transitionProps, transitionStyle } = useTransition(props);
|
|
16200
16233
|
const { localScrollTarget, changeScrollEvent, unconfigureScrollTarget } = useScrollTarget(props, configureScrollTarget);
|
|
16201
16234
|
|
|
16202
16235
|
const { anchorEl, canShow, anchorEvents } = useAnchor({ showing, configureAnchorEl });
|
|
@@ -16387,16 +16420,13 @@ var QTooltip = createComponent({
|
|
|
16387
16420
|
attrs.style,
|
|
16388
16421
|
transitionStyle.value
|
|
16389
16422
|
],
|
|
16390
|
-
role: '
|
|
16423
|
+
role: 'tooltip'
|
|
16391
16424
|
}, hSlot(slots.default))
|
|
16392
16425
|
: null
|
|
16393
16426
|
}
|
|
16394
16427
|
|
|
16395
16428
|
function renderPortalContent () {
|
|
16396
|
-
return h(Transition,
|
|
16397
|
-
name: transition.value,
|
|
16398
|
-
appear: true
|
|
16399
|
-
}, getTooltipContent)
|
|
16429
|
+
return h(Transition, transitionProps.value, getTooltipContent)
|
|
16400
16430
|
}
|
|
16401
16431
|
|
|
16402
16432
|
onBeforeUnmount(anchorCleanup);
|
|
@@ -16536,6 +16566,7 @@ var QItem = createComponent({
|
|
|
16536
16566
|
ref: rootRef,
|
|
16537
16567
|
class: classes.value,
|
|
16538
16568
|
style: style.value,
|
|
16569
|
+
role: 'listitem',
|
|
16539
16570
|
onClick,
|
|
16540
16571
|
onKeyup
|
|
16541
16572
|
};
|
|
@@ -17769,7 +17800,7 @@ var QExpansionItem = createComponent({
|
|
|
17769
17800
|
|
|
17770
17801
|
emits: [
|
|
17771
17802
|
...useModelToggleEmits,
|
|
17772
|
-
'click', '
|
|
17803
|
+
'click', 'afterShow', 'afterHide'
|
|
17773
17804
|
],
|
|
17774
17805
|
|
|
17775
17806
|
setup (props, { slots, emit }) {
|
|
@@ -17878,11 +17909,11 @@ var QExpansionItem = createComponent({
|
|
|
17878
17909
|
}
|
|
17879
17910
|
|
|
17880
17911
|
function onShow () {
|
|
17881
|
-
emit('
|
|
17912
|
+
emit('afterShow');
|
|
17882
17913
|
}
|
|
17883
17914
|
|
|
17884
17915
|
function onHide () {
|
|
17885
|
-
emit('
|
|
17916
|
+
emit('afterHide');
|
|
17886
17917
|
}
|
|
17887
17918
|
|
|
17888
17919
|
function enterGroup () {
|
|
@@ -18710,7 +18741,7 @@ const useFieldProps = {
|
|
|
18710
18741
|
maxlength: [ Number, String ]
|
|
18711
18742
|
};
|
|
18712
18743
|
|
|
18713
|
-
const useFieldEmits = [ 'update:modelValue', 'clear', 'focus', 'blur', '
|
|
18744
|
+
const useFieldEmits = [ 'update:modelValue', 'clear', 'focus', 'blur', 'popupShow', 'popupHide' ];
|
|
18714
18745
|
|
|
18715
18746
|
function useFieldState () {
|
|
18716
18747
|
const { props, attrs, proxy, vnode } = getCurrentInstance();
|
|
@@ -19440,7 +19471,14 @@ function useFile ({
|
|
|
19440
19471
|
|
|
19441
19472
|
function onDragleave (e) {
|
|
19442
19473
|
stopAndPrevent(e);
|
|
19443
|
-
|
|
19474
|
+
|
|
19475
|
+
// Safari bug: relatedTarget is null for over 10 years
|
|
19476
|
+
// https://bugs.webkit.org/show_bug.cgi?id=66547
|
|
19477
|
+
const gone = e.relatedTarget !== null || client.is.safari !== true
|
|
19478
|
+
? e.relatedTarget !== dndRef.value
|
|
19479
|
+
: document.elementsFromPoint(e.clientX, e.clientY).includes(dndRef.value) === false;
|
|
19480
|
+
|
|
19481
|
+
gone === true && (dnd.value = false);
|
|
19444
19482
|
}
|
|
19445
19483
|
|
|
19446
19484
|
function onDrop (e) {
|
|
@@ -19474,6 +19512,7 @@ function useFile ({
|
|
|
19474
19512
|
pickFiles,
|
|
19475
19513
|
addFiles,
|
|
19476
19514
|
onDragover,
|
|
19515
|
+
onDragleave,
|
|
19477
19516
|
processFiles,
|
|
19478
19517
|
getDndNode,
|
|
19479
19518
|
|
|
@@ -19797,9 +19836,11 @@ var QFile = createComponent({
|
|
|
19797
19836
|
Object.assign(proxy, {
|
|
19798
19837
|
removeAtIndex,
|
|
19799
19838
|
removeFile,
|
|
19800
|
-
getNativeElement: () => inputRef.value
|
|
19839
|
+
getNativeElement: () => inputRef.value // deprecated
|
|
19801
19840
|
});
|
|
19802
19841
|
|
|
19842
|
+
injectProp(proxy, 'nativeEl', () => inputRef.value);
|
|
19843
|
+
|
|
19803
19844
|
return useField(state)
|
|
19804
19845
|
}
|
|
19805
19846
|
});
|
|
@@ -19827,9 +19868,11 @@ var QFooter = createComponent({
|
|
|
19827
19868
|
setup (props, { slots, emit }) {
|
|
19828
19869
|
const { proxy: { $q } } = getCurrentInstance();
|
|
19829
19870
|
|
|
19830
|
-
const $layout = inject(layoutKey,
|
|
19871
|
+
const $layout = inject(layoutKey, emptyRenderFn);
|
|
19872
|
+
if ($layout === emptyRenderFn) {
|
|
19831
19873
|
console.error('QFooter needs to be child of QLayout');
|
|
19832
|
-
|
|
19874
|
+
return emptyRenderFn
|
|
19875
|
+
}
|
|
19833
19876
|
|
|
19834
19877
|
const size = ref(parseInt(props.heightHint, 10));
|
|
19835
19878
|
const revealed = ref(true);
|
|
@@ -20008,7 +20051,7 @@ var QForm = createComponent({
|
|
|
20008
20051
|
onSubmit: Function
|
|
20009
20052
|
},
|
|
20010
20053
|
|
|
20011
|
-
emits: [ 'reset', '
|
|
20054
|
+
emits: [ 'reset', 'validationSuccess', 'validationError' ],
|
|
20012
20055
|
|
|
20013
20056
|
setup (props, { slots, emit }) {
|
|
20014
20057
|
const vm = getCurrentInstance();
|
|
@@ -20025,7 +20068,7 @@ var QForm = createComponent({
|
|
|
20025
20068
|
const index = ++validateIndex;
|
|
20026
20069
|
|
|
20027
20070
|
const emitEvent = (res, ref) => {
|
|
20028
|
-
emit('validation
|
|
20071
|
+
emit('validation' + (res === true ? 'Success' : 'Error'), ref);
|
|
20029
20072
|
};
|
|
20030
20073
|
|
|
20031
20074
|
const validateComponent = comp => {
|
|
@@ -20127,7 +20170,9 @@ var QForm = createComponent({
|
|
|
20127
20170
|
addFocusFn(() => {
|
|
20128
20171
|
if (rootRef.value === null) { return }
|
|
20129
20172
|
|
|
20130
|
-
const target = rootRef.value.querySelector('[autofocus], [data-autofocus]')
|
|
20173
|
+
const target = rootRef.value.querySelector('[autofocus][tabindex], [data-autofocus][tabindex]')
|
|
20174
|
+
|| rootRef.value.querySelector('[autofocus] [tabindex], [data-autofocus] [tabindex]')
|
|
20175
|
+
|| rootRef.value.querySelector('[autofocus], [data-autofocus]')
|
|
20131
20176
|
|| Array.prototype.find.call(rootRef.value.querySelectorAll('[tabindex]'), el => el.tabIndex > -1);
|
|
20132
20177
|
|
|
20133
20178
|
target !== null && target !== void 0 && target.focus({ preventScroll: true });
|
|
@@ -20247,9 +20292,11 @@ var QHeader = createComponent({
|
|
|
20247
20292
|
setup (props, { slots, emit }) {
|
|
20248
20293
|
const { proxy: { $q } } = getCurrentInstance();
|
|
20249
20294
|
|
|
20250
|
-
const $layout = inject(layoutKey,
|
|
20295
|
+
const $layout = inject(layoutKey, emptyRenderFn);
|
|
20296
|
+
if ($layout === emptyRenderFn) {
|
|
20251
20297
|
console.error('QHeader needs to be child of QLayout');
|
|
20252
|
-
|
|
20298
|
+
return emptyRenderFn
|
|
20299
|
+
}
|
|
20253
20300
|
|
|
20254
20301
|
const size = ref(parseInt(props.heightHint, 10));
|
|
20255
20302
|
const revealed = ref(true);
|
|
@@ -20943,7 +20990,7 @@ var QInnerLoading = createComponent({
|
|
|
20943
20990
|
const vm = getCurrentInstance();
|
|
20944
20991
|
const isDark = useDark(props, vm.proxy.$q);
|
|
20945
20992
|
|
|
20946
|
-
const {
|
|
20993
|
+
const { transitionProps, transitionStyle } = useTransition(props);
|
|
20947
20994
|
|
|
20948
20995
|
const classes = computed(() =>
|
|
20949
20996
|
'q-inner-loading absolute-full column flex-center'
|
|
@@ -20987,10 +21034,7 @@ var QInnerLoading = createComponent({
|
|
|
20987
21034
|
: null
|
|
20988
21035
|
}
|
|
20989
21036
|
|
|
20990
|
-
return () => h(Transition,
|
|
20991
|
-
name: transition.value,
|
|
20992
|
-
appear: true
|
|
20993
|
-
}, getContent)
|
|
21037
|
+
return () => h(Transition, transitionProps.value, getContent)
|
|
20994
21038
|
}
|
|
20995
21039
|
});
|
|
20996
21040
|
|
|
@@ -21158,7 +21202,7 @@ function useMask (props, emit, emitValue, inputRef) {
|
|
|
21158
21202
|
'^'
|
|
21159
21203
|
+ unmask.join('')
|
|
21160
21204
|
+ '(' + (unmaskChar === '' ? '.' : '[^' + unmaskChar + ']') + '+)?'
|
|
21161
|
-
+ '[' + unmaskChar + ']
|
|
21205
|
+
+ (unmaskChar === '' ? '' : '[' + unmaskChar + ']*') + '$'
|
|
21162
21206
|
),
|
|
21163
21207
|
extractLast = extract.length - 1,
|
|
21164
21208
|
extractMatcher = extract.map((re, index) => {
|
|
@@ -21178,7 +21222,7 @@ function useMask (props, emit, emitValue, inputRef) {
|
|
|
21178
21222
|
|
|
21179
21223
|
computedMask = mask;
|
|
21180
21224
|
computedUnmask = val => {
|
|
21181
|
-
const unmaskMatch = unmaskMatcher.exec(val);
|
|
21225
|
+
const unmaskMatch = unmaskMatcher.exec(props.reverseFillMask === true ? val : val.slice(0, mask.length));
|
|
21182
21226
|
if (unmaskMatch !== null) {
|
|
21183
21227
|
val = unmaskMatch.slice(1).join('');
|
|
21184
21228
|
}
|
|
@@ -21967,9 +22011,11 @@ var QInput = createComponent({
|
|
|
21967
22011
|
Object.assign(proxy, {
|
|
21968
22012
|
focus,
|
|
21969
22013
|
select,
|
|
21970
|
-
getNativeElement: () => inputRef.value
|
|
22014
|
+
getNativeElement: () => inputRef.value // deprecated
|
|
21971
22015
|
});
|
|
21972
22016
|
|
|
22017
|
+
injectProp(proxy, 'nativeEl', () => inputRef.value);
|
|
22018
|
+
|
|
21973
22019
|
return renderFn
|
|
21974
22020
|
}
|
|
21975
22021
|
});
|
|
@@ -22168,7 +22214,12 @@ var QList = createComponent({
|
|
|
22168
22214
|
bordered: Boolean,
|
|
22169
22215
|
dense: Boolean,
|
|
22170
22216
|
separator: Boolean,
|
|
22171
|
-
padding: Boolean
|
|
22217
|
+
padding: Boolean,
|
|
22218
|
+
|
|
22219
|
+
tag: {
|
|
22220
|
+
type: String,
|
|
22221
|
+
default: 'div'
|
|
22222
|
+
}
|
|
22172
22223
|
},
|
|
22173
22224
|
|
|
22174
22225
|
setup (props, { slots }) {
|
|
@@ -22184,7 +22235,7 @@ var QList = createComponent({
|
|
|
22184
22235
|
+ (props.padding === true ? ' q-list--padding' : '')
|
|
22185
22236
|
);
|
|
22186
22237
|
|
|
22187
|
-
return () => h(
|
|
22238
|
+
return () => h(props.tag, { class: classes.value, role: 'list' }, hSlot(slots.default))
|
|
22188
22239
|
}
|
|
22189
22240
|
});
|
|
22190
22241
|
|
|
@@ -22222,7 +22273,7 @@ var QKnob = createComponent({
|
|
|
22222
22273
|
readonly: Boolean
|
|
22223
22274
|
},
|
|
22224
22275
|
|
|
22225
|
-
emits: [ 'update:modelValue', 'change', '
|
|
22276
|
+
emits: [ 'update:modelValue', 'change', 'dragValue' ],
|
|
22226
22277
|
|
|
22227
22278
|
setup (props, { slots, emit }) {
|
|
22228
22279
|
const { proxy } = getCurrentInstance();
|
|
@@ -22269,7 +22320,7 @@ var QKnob = createComponent({
|
|
|
22269
22320
|
)
|
|
22270
22321
|
);
|
|
22271
22322
|
|
|
22272
|
-
const decimals = computed(() => (String(props.step).trim(
|
|
22323
|
+
const decimals = computed(() => (String(props.step).trim().split('.')[ 1 ] || '').length);
|
|
22273
22324
|
const step = computed(() => (props.step === 0 ? 1 : props.step));
|
|
22274
22325
|
const instantFeedback = computed(() => props.instantFeedback === true || dragging.value === true);
|
|
22275
22326
|
|
|
@@ -22404,7 +22455,7 @@ var QKnob = createComponent({
|
|
|
22404
22455
|
|
|
22405
22456
|
newModel = between(newModel, innerMin.value, innerMax.value);
|
|
22406
22457
|
|
|
22407
|
-
emit('
|
|
22458
|
+
emit('dragValue', newModel);
|
|
22408
22459
|
|
|
22409
22460
|
if (model.value !== newModel) {
|
|
22410
22461
|
model.value = newModel;
|
|
@@ -22579,6 +22630,8 @@ var QScrollObserver = createComponent({
|
|
|
22579
22630
|
|
|
22580
22631
|
const { proxy } = getCurrentInstance();
|
|
22581
22632
|
|
|
22633
|
+
watch(() => proxy.$q.lang.rtl, emitEvent);
|
|
22634
|
+
|
|
22582
22635
|
onMounted(() => {
|
|
22583
22636
|
parentEl = proxy.$el.parentNode;
|
|
22584
22637
|
configureScrollTarget();
|
|
@@ -22679,7 +22732,7 @@ var QLayout = createComponent({
|
|
|
22679
22732
|
if (height.value !== newHeight) {
|
|
22680
22733
|
resized = true;
|
|
22681
22734
|
height.value = newHeight;
|
|
22682
|
-
props.onScrollHeight !== void 0 && emit('
|
|
22735
|
+
props.onScrollHeight !== void 0 && emit('scrollHeight', newHeight);
|
|
22683
22736
|
updateScrollbarWidth();
|
|
22684
22737
|
}
|
|
22685
22738
|
if (width.value !== newWidth) {
|
|
@@ -23225,7 +23278,7 @@ var QOptionGroup = createComponent({
|
|
|
23225
23278
|
);
|
|
23226
23279
|
|
|
23227
23280
|
const attrs = computed(() => {
|
|
23228
|
-
const attrs = {};
|
|
23281
|
+
const attrs = { role: 'group' };
|
|
23229
23282
|
|
|
23230
23283
|
if (props.type === 'radio') {
|
|
23231
23284
|
attrs.role = 'radiogroup';
|
|
@@ -23290,10 +23343,17 @@ var QPage = createComponent({
|
|
|
23290
23343
|
setup (props, { slots }) {
|
|
23291
23344
|
const { proxy: { $q } } = getCurrentInstance();
|
|
23292
23345
|
|
|
23293
|
-
const $layout = inject(layoutKey);
|
|
23294
|
-
|
|
23346
|
+
const $layout = inject(layoutKey, emptyRenderFn);
|
|
23347
|
+
if ($layout === emptyRenderFn) {
|
|
23348
|
+
console.error('QPage needs to be a deep child of QLayout');
|
|
23349
|
+
return emptyRenderFn
|
|
23350
|
+
}
|
|
23351
|
+
|
|
23352
|
+
const $pageContainer = inject(pageContainerKey, emptyRenderFn);
|
|
23353
|
+
if ($pageContainer === emptyRenderFn) {
|
|
23295
23354
|
console.error('QPage needs to be child of QPageContainer');
|
|
23296
|
-
|
|
23355
|
+
return emptyRenderFn
|
|
23356
|
+
}
|
|
23297
23357
|
|
|
23298
23358
|
const style = computed(() => {
|
|
23299
23359
|
const offset
|
|
@@ -23336,9 +23396,11 @@ var QPageContainer = createComponent({
|
|
|
23336
23396
|
setup (_, { slots }) {
|
|
23337
23397
|
const { proxy: { $q } } = getCurrentInstance();
|
|
23338
23398
|
|
|
23339
|
-
const $layout = inject(layoutKey,
|
|
23399
|
+
const $layout = inject(layoutKey, emptyRenderFn);
|
|
23400
|
+
if ($layout === emptyRenderFn) {
|
|
23340
23401
|
console.error('QPageContainer needs to be child of QLayout');
|
|
23341
|
-
|
|
23402
|
+
return emptyRenderFn
|
|
23403
|
+
}
|
|
23342
23404
|
|
|
23343
23405
|
provide(pageContainerKey, true);
|
|
23344
23406
|
|
|
@@ -23388,9 +23450,11 @@ const usePageStickyProps = {
|
|
|
23388
23450
|
function usePageSticky () {
|
|
23389
23451
|
const { props, proxy: { $q } } = getCurrentInstance();
|
|
23390
23452
|
|
|
23391
|
-
const $layout = inject(layoutKey,
|
|
23453
|
+
const $layout = inject(layoutKey, emptyRenderFn);
|
|
23454
|
+
if ($layout === emptyRenderFn) {
|
|
23392
23455
|
console.error('QPageSticky needs to be child of QLayout');
|
|
23393
|
-
|
|
23456
|
+
return emptyRenderFn
|
|
23457
|
+
}
|
|
23394
23458
|
|
|
23395
23459
|
const attach = computed(() => {
|
|
23396
23460
|
const pos = props.position;
|
|
@@ -23603,6 +23667,12 @@ var QPageSticky = createComponent({
|
|
|
23603
23667
|
}
|
|
23604
23668
|
});
|
|
23605
23669
|
|
|
23670
|
+
function getBool (val, otherwise) {
|
|
23671
|
+
return [ true, false ].includes(val)
|
|
23672
|
+
? val
|
|
23673
|
+
: otherwise
|
|
23674
|
+
}
|
|
23675
|
+
|
|
23606
23676
|
var QPagination = createComponent({
|
|
23607
23677
|
name: 'QPagination',
|
|
23608
23678
|
|
|
@@ -23614,22 +23684,20 @@ var QPagination = createComponent({
|
|
|
23614
23684
|
required: true
|
|
23615
23685
|
},
|
|
23616
23686
|
min: {
|
|
23617
|
-
type: Number,
|
|
23687
|
+
type: [ Number, String ],
|
|
23618
23688
|
default: 1
|
|
23619
23689
|
},
|
|
23620
23690
|
max: {
|
|
23621
|
-
type: Number,
|
|
23691
|
+
type: [ Number, String ],
|
|
23622
23692
|
required: true
|
|
23623
23693
|
},
|
|
23624
|
-
|
|
23625
|
-
|
|
23626
|
-
|
|
23627
|
-
|
|
23694
|
+
maxPages: {
|
|
23695
|
+
type: [ Number, String ],
|
|
23696
|
+
default: 0,
|
|
23697
|
+
validator: v => (
|
|
23698
|
+
(typeof v === 'string' ? parseInt(v, 10) : v) >= 0
|
|
23699
|
+
)
|
|
23628
23700
|
},
|
|
23629
|
-
textColor: String,
|
|
23630
|
-
|
|
23631
|
-
activeColor: String,
|
|
23632
|
-
activeTextColor: String,
|
|
23633
23701
|
|
|
23634
23702
|
inputStyle: [ Array, String, Object ],
|
|
23635
23703
|
inputClass: [ Array, String, Object ],
|
|
@@ -23663,11 +23731,6 @@ var QPagination = createComponent({
|
|
|
23663
23731
|
type: Boolean,
|
|
23664
23732
|
default: null
|
|
23665
23733
|
},
|
|
23666
|
-
maxPages: {
|
|
23667
|
-
type: Number,
|
|
23668
|
-
default: 0,
|
|
23669
|
-
validator: v => v >= 0
|
|
23670
|
-
},
|
|
23671
23734
|
|
|
23672
23735
|
ripple: {
|
|
23673
23736
|
type: [ Boolean, Object ],
|
|
@@ -23683,7 +23746,21 @@ var QPagination = createComponent({
|
|
|
23683
23746
|
push: Boolean,
|
|
23684
23747
|
glossy: Boolean,
|
|
23685
23748
|
|
|
23686
|
-
|
|
23749
|
+
color: {
|
|
23750
|
+
type: String,
|
|
23751
|
+
default: 'primary'
|
|
23752
|
+
},
|
|
23753
|
+
textColor: String,
|
|
23754
|
+
|
|
23755
|
+
activeDesign: {
|
|
23756
|
+
type: String,
|
|
23757
|
+
default: '',
|
|
23758
|
+
values: v => v === '' || btnDesignOptions.includes(v)
|
|
23759
|
+
},
|
|
23760
|
+
activeColor: String,
|
|
23761
|
+
activeTextColor: String,
|
|
23762
|
+
|
|
23763
|
+
gutter: String,
|
|
23687
23764
|
padding: {
|
|
23688
23765
|
type: String,
|
|
23689
23766
|
default: '3px 2px'
|
|
@@ -23698,6 +23775,16 @@ var QPagination = createComponent({
|
|
|
23698
23775
|
|
|
23699
23776
|
const isDark = useDark(props, $q);
|
|
23700
23777
|
|
|
23778
|
+
const minProp = computed(() => parseInt(props.min, 10));
|
|
23779
|
+
const maxProp = computed(() => parseInt(props.max, 10));
|
|
23780
|
+
const maxPagesProp = computed(() => parseInt(props.maxPages, 10));
|
|
23781
|
+
|
|
23782
|
+
const inputPlaceholder = computed(() => model.value + ' / ' + maxProp.value);
|
|
23783
|
+
const boundaryLinksProp = computed(() => getBool(props.boundaryLinks, props.input));
|
|
23784
|
+
const boundaryNumbersProp = computed(() => getBool(props.boundaryNumbers, !props.input));
|
|
23785
|
+
const directionLinksProp = computed(() => getBool(props.directionLinks, props.input));
|
|
23786
|
+
const ellipsesProp = computed(() => getBool(props.ellipses, !props.input));
|
|
23787
|
+
|
|
23701
23788
|
const newPage = ref(null);
|
|
23702
23789
|
const model = computed({
|
|
23703
23790
|
get: () => props.modelValue,
|
|
@@ -23706,32 +23793,33 @@ var QPagination = createComponent({
|
|
|
23706
23793
|
if (props.disable || isNaN(val)) {
|
|
23707
23794
|
return
|
|
23708
23795
|
}
|
|
23709
|
-
const value = between(val,
|
|
23796
|
+
const value = between(val, minProp.value, maxProp.value);
|
|
23710
23797
|
if (props.modelValue !== value) {
|
|
23711
23798
|
emit('update:modelValue', value);
|
|
23712
23799
|
}
|
|
23713
23800
|
}
|
|
23714
23801
|
});
|
|
23715
23802
|
|
|
23716
|
-
watch(() =>
|
|
23803
|
+
watch(() => `${ minProp.value }|${ maxProp.value }`, () => {
|
|
23717
23804
|
model.value = props.modelValue;
|
|
23718
23805
|
});
|
|
23719
23806
|
|
|
23720
|
-
function getBool (val, otherwise) {
|
|
23721
|
-
return [ true, false ].includes(val)
|
|
23722
|
-
? val
|
|
23723
|
-
: otherwise
|
|
23724
|
-
}
|
|
23725
|
-
|
|
23726
23807
|
const classes = computed(() =>
|
|
23727
23808
|
'q-pagination row no-wrap items-center'
|
|
23728
23809
|
+ (props.disable === true ? ' disabled' : '')
|
|
23729
23810
|
);
|
|
23730
|
-
|
|
23731
|
-
const
|
|
23732
|
-
|
|
23733
|
-
|
|
23734
|
-
|
|
23811
|
+
|
|
23812
|
+
const gutterProp = computed(() => (
|
|
23813
|
+
props.gutter in btnPadding
|
|
23814
|
+
? `${ btnPadding[ props.gutter ] }px`
|
|
23815
|
+
: props.gutter || null
|
|
23816
|
+
));
|
|
23817
|
+
const gutterStyle = computed(() => (
|
|
23818
|
+
gutterProp.value !== null
|
|
23819
|
+
? `--q-pagination-gutter-parent:-${ gutterProp.value };--q-pagination-gutter-child:${ gutterProp.value }`
|
|
23820
|
+
: null
|
|
23821
|
+
));
|
|
23822
|
+
|
|
23735
23823
|
const icons = computed(() => {
|
|
23736
23824
|
const ico = [
|
|
23737
23825
|
props.iconFirst || $q.iconSet.pagination.first,
|
|
@@ -23742,38 +23830,90 @@ var QPagination = createComponent({
|
|
|
23742
23830
|
return $q.lang.rtl === true ? ico.reverse() : ico
|
|
23743
23831
|
});
|
|
23744
23832
|
|
|
23745
|
-
const attrs = computed(() => (
|
|
23746
|
-
props.disable === true
|
|
23747
|
-
|
|
23748
|
-
|
|
23749
|
-
));
|
|
23833
|
+
const attrs = computed(() => ({
|
|
23834
|
+
'aria-disabled': props.disable === true ? 'true' : 'false',
|
|
23835
|
+
role: 'navigation'
|
|
23836
|
+
}));
|
|
23750
23837
|
|
|
23838
|
+
const btnDesignProp = computed(() => getBtnDesign(props, 'flat'));
|
|
23751
23839
|
const btnProps = computed(() => ({
|
|
23840
|
+
[ btnDesignProp.value ]: true,
|
|
23841
|
+
|
|
23752
23842
|
round: props.round,
|
|
23753
23843
|
rounded: props.rounded,
|
|
23754
23844
|
|
|
23755
|
-
outline: props.outline,
|
|
23756
|
-
unelevated: props.unelevated,
|
|
23757
|
-
push: props.push,
|
|
23758
|
-
glossy: props.glossy,
|
|
23759
|
-
|
|
23760
|
-
dense: props.dense,
|
|
23761
23845
|
padding: props.padding,
|
|
23762
23846
|
|
|
23763
23847
|
color: props.color,
|
|
23764
|
-
|
|
23848
|
+
textColor: props.textColor,
|
|
23849
|
+
|
|
23765
23850
|
size: props.size,
|
|
23766
23851
|
ripple: props.ripple !== null
|
|
23767
23852
|
? props.ripple
|
|
23768
23853
|
: true
|
|
23769
23854
|
}));
|
|
23770
23855
|
|
|
23856
|
+
const btnActiveDesignProp = computed(() => {
|
|
23857
|
+
// we also reset non-active design
|
|
23858
|
+
const acc = { [ btnDesignProp.value ]: false };
|
|
23859
|
+
if (props.activeDesign !== '') {
|
|
23860
|
+
acc[ props.activeDesign ] = true;
|
|
23861
|
+
}
|
|
23862
|
+
return acc
|
|
23863
|
+
});
|
|
23771
23864
|
const activeBtnProps = computed(() => ({
|
|
23772
|
-
|
|
23865
|
+
...btnActiveDesignProp.value,
|
|
23773
23866
|
color: props.activeColor || props.color,
|
|
23774
23867
|
textColor: props.activeTextColor || props.textColor
|
|
23775
23868
|
}));
|
|
23776
23869
|
|
|
23870
|
+
const btnConfig = computed(() => {
|
|
23871
|
+
let maxPages = Math.max(
|
|
23872
|
+
maxPagesProp.value,
|
|
23873
|
+
1 + (ellipsesProp.value ? 2 : 0) + (boundaryNumbersProp.value ? 2 : 0)
|
|
23874
|
+
);
|
|
23875
|
+
|
|
23876
|
+
const acc = {
|
|
23877
|
+
pgFrom: minProp.value,
|
|
23878
|
+
pgTo: maxProp.value,
|
|
23879
|
+
ellipsesStart: false,
|
|
23880
|
+
ellipsesEnd: false,
|
|
23881
|
+
boundaryStart: false,
|
|
23882
|
+
boundaryEnd: false,
|
|
23883
|
+
marginalStyle: {
|
|
23884
|
+
minWidth: `${ Math.max(2, String(maxProp.value).length) }em`
|
|
23885
|
+
}
|
|
23886
|
+
};
|
|
23887
|
+
|
|
23888
|
+
if (maxPagesProp.value && maxPages < (maxProp.value - minProp.value + 1)) {
|
|
23889
|
+
maxPages = 1 + Math.floor(maxPages / 2) * 2;
|
|
23890
|
+
acc.pgFrom = Math.max(minProp.value, Math.min(maxProp.value - maxPages + 1, props.modelValue - Math.floor(maxPages / 2)));
|
|
23891
|
+
acc.pgTo = Math.min(maxProp.value, acc.pgFrom + maxPages - 1);
|
|
23892
|
+
|
|
23893
|
+
if (boundaryNumbersProp.value) {
|
|
23894
|
+
acc.boundaryStart = true;
|
|
23895
|
+
acc.pgFrom++;
|
|
23896
|
+
}
|
|
23897
|
+
|
|
23898
|
+
if (ellipsesProp.value && acc.pgFrom > (minProp.value + (boundaryNumbersProp.value ? 1 : 0))) {
|
|
23899
|
+
acc.ellipsesStart = true;
|
|
23900
|
+
acc.pgFrom++;
|
|
23901
|
+
}
|
|
23902
|
+
|
|
23903
|
+
if (boundaryNumbersProp.value) {
|
|
23904
|
+
acc.boundaryEnd = true;
|
|
23905
|
+
acc.pgTo--;
|
|
23906
|
+
}
|
|
23907
|
+
|
|
23908
|
+
if (ellipsesProp.value && acc.pgTo < (maxProp.value - (boundaryNumbersProp.value ? 1 : 0))) {
|
|
23909
|
+
acc.ellipsesEnd = true;
|
|
23910
|
+
acc.pgTo--;
|
|
23911
|
+
}
|
|
23912
|
+
}
|
|
23913
|
+
|
|
23914
|
+
return acc
|
|
23915
|
+
});
|
|
23916
|
+
|
|
23777
23917
|
function set (value) {
|
|
23778
23918
|
model.value = value;
|
|
23779
23919
|
}
|
|
@@ -23782,20 +23922,40 @@ var QPagination = createComponent({
|
|
|
23782
23922
|
model.value = model.value + offset;
|
|
23783
23923
|
}
|
|
23784
23924
|
|
|
23785
|
-
|
|
23786
|
-
|
|
23787
|
-
|
|
23788
|
-
|
|
23925
|
+
const inputEvents = computed(() => {
|
|
23926
|
+
function updateModel () {
|
|
23927
|
+
model.value = newPage.value;
|
|
23928
|
+
newPage.value = null;
|
|
23929
|
+
}
|
|
23930
|
+
|
|
23931
|
+
return {
|
|
23932
|
+
'onUpdate:modelValue': val => { newPage.value = val; },
|
|
23933
|
+
onKeyup: e => { isKeyCode(e, 13) === true && updateModel(); },
|
|
23934
|
+
onBlur: updateModel
|
|
23935
|
+
}
|
|
23936
|
+
});
|
|
23937
|
+
|
|
23938
|
+
function getBtn (cfg, page, active) {
|
|
23939
|
+
const data = {
|
|
23940
|
+
'aria-label': page,
|
|
23941
|
+
'aria-current': 'false',
|
|
23942
|
+
...btnProps.value,
|
|
23943
|
+
...cfg
|
|
23944
|
+
};
|
|
23789
23945
|
|
|
23790
|
-
|
|
23791
|
-
|
|
23946
|
+
if (active === true) {
|
|
23947
|
+
Object.assign(data, {
|
|
23948
|
+
'aria-current': 'true',
|
|
23949
|
+
...activeBtnProps.value
|
|
23950
|
+
});
|
|
23951
|
+
}
|
|
23792
23952
|
|
|
23793
23953
|
if (page !== void 0) {
|
|
23794
23954
|
if (props.toFn !== void 0) {
|
|
23795
23955
|
data.to = props.toFn(page);
|
|
23796
23956
|
}
|
|
23797
23957
|
else {
|
|
23798
|
-
data.onClick = () => set(page);
|
|
23958
|
+
data.onClick = () => { set(page); };
|
|
23799
23959
|
}
|
|
23800
23960
|
}
|
|
23801
23961
|
|
|
@@ -23806,147 +23966,107 @@ var QPagination = createComponent({
|
|
|
23806
23966
|
Object.assign(proxy, { set, setByOffset });
|
|
23807
23967
|
|
|
23808
23968
|
return () => {
|
|
23809
|
-
const
|
|
23810
|
-
|
|
23811
|
-
|
|
23812
|
-
|
|
23969
|
+
const contentStart = [];
|
|
23970
|
+
const contentEnd = [];
|
|
23971
|
+
let contentMiddle;
|
|
23972
|
+
|
|
23973
|
+
if (boundaryLinksProp.value === true) {
|
|
23974
|
+
contentStart.push(
|
|
23975
|
+
getBtn({
|
|
23976
|
+
key: 'bls',
|
|
23977
|
+
disable: props.disable || props.modelValue <= minProp.value,
|
|
23978
|
+
icon: icons.value[ 0 ]
|
|
23979
|
+
}, minProp.value)
|
|
23980
|
+
);
|
|
23813
23981
|
|
|
23814
|
-
|
|
23815
|
-
|
|
23816
|
-
|
|
23817
|
-
|
|
23818
|
-
|
|
23819
|
-
|
|
23820
|
-
|
|
23821
|
-
key: 'ble',
|
|
23822
|
-
disable: props.disable || props.modelValue >= props.max,
|
|
23823
|
-
icon: icons.value[ 3 ]
|
|
23824
|
-
}, props.max));
|
|
23825
|
-
}
|
|
23826
|
-
|
|
23827
|
-
if (__directionLinks.value) {
|
|
23828
|
-
contentStart.push(getBtn({
|
|
23829
|
-
key: 'bdp',
|
|
23830
|
-
disable: props.disable || props.modelValue <= props.min,
|
|
23831
|
-
icon: icons.value[ 1 ]
|
|
23832
|
-
}, props.modelValue - 1));
|
|
23833
|
-
contentEnd.unshift(getBtn({
|
|
23834
|
-
key: 'bdn',
|
|
23835
|
-
disable: props.disable || props.modelValue >= props.max,
|
|
23836
|
-
icon: icons.value[ 2 ]
|
|
23837
|
-
}, props.modelValue + 1));
|
|
23838
|
-
}
|
|
23839
|
-
|
|
23840
|
-
if (props.input === true) {
|
|
23841
|
-
contentMiddle.push(h(QInput, {
|
|
23842
|
-
class: 'inline',
|
|
23843
|
-
style: {
|
|
23844
|
-
width: `${ inputPlaceholder.value.length / 1.5 }em`
|
|
23845
|
-
},
|
|
23846
|
-
type: 'number',
|
|
23847
|
-
dense: true,
|
|
23848
|
-
value: newPage.value,
|
|
23849
|
-
disable: props.disable,
|
|
23850
|
-
dark: isDark.value,
|
|
23851
|
-
borderless: true,
|
|
23852
|
-
inputClass: props.inputClass,
|
|
23853
|
-
inputStyle: props.inputStyle,
|
|
23854
|
-
placeholder: inputPlaceholder.value,
|
|
23855
|
-
min: props.min,
|
|
23856
|
-
max: props.max,
|
|
23857
|
-
'onUpdate:modelValue' (value) { newPage.value = value; },
|
|
23858
|
-
onKeyup (e) { isKeyCode(e, 13) === true && updateModel(); },
|
|
23859
|
-
onBlur: updateModel
|
|
23860
|
-
}));
|
|
23982
|
+
contentEnd.unshift(
|
|
23983
|
+
getBtn({
|
|
23984
|
+
key: 'ble',
|
|
23985
|
+
disable: props.disable || props.modelValue >= maxProp.value,
|
|
23986
|
+
icon: icons.value[ 3 ]
|
|
23987
|
+
}, maxProp.value)
|
|
23988
|
+
);
|
|
23861
23989
|
}
|
|
23862
|
-
|
|
23863
|
-
|
|
23864
|
-
|
|
23865
|
-
|
|
23866
|
-
|
|
23867
|
-
|
|
23868
|
-
|
|
23869
|
-
|
|
23870
|
-
|
|
23871
|
-
|
|
23872
|
-
|
|
23873
|
-
|
|
23874
|
-
|
|
23875
|
-
|
|
23876
|
-
|
|
23877
|
-
|
|
23878
|
-
|
|
23879
|
-
|
|
23880
|
-
|
|
23881
|
-
|
|
23882
|
-
|
|
23883
|
-
|
|
23884
|
-
|
|
23885
|
-
|
|
23886
|
-
|
|
23887
|
-
|
|
23888
|
-
|
|
23889
|
-
|
|
23890
|
-
|
|
23891
|
-
|
|
23892
|
-
|
|
23893
|
-
|
|
23894
|
-
|
|
23990
|
+
|
|
23991
|
+
if (directionLinksProp.value === true) {
|
|
23992
|
+
contentStart.push(
|
|
23993
|
+
getBtn({
|
|
23994
|
+
key: 'bdp',
|
|
23995
|
+
disable: props.disable || props.modelValue <= minProp.value,
|
|
23996
|
+
icon: icons.value[ 1 ]
|
|
23997
|
+
}, props.modelValue - 1)
|
|
23998
|
+
);
|
|
23999
|
+
|
|
24000
|
+
contentEnd.unshift(
|
|
24001
|
+
getBtn({
|
|
24002
|
+
key: 'bdn',
|
|
24003
|
+
disable: props.disable || props.modelValue >= maxProp.value,
|
|
24004
|
+
icon: icons.value[ 2 ]
|
|
24005
|
+
}, props.modelValue + 1)
|
|
24006
|
+
);
|
|
24007
|
+
}
|
|
24008
|
+
|
|
24009
|
+
if (props.input !== true) { // has buttons instead of inputbox
|
|
24010
|
+
contentMiddle = [];
|
|
24011
|
+
const { pgFrom, pgTo, marginalStyle: style } = btnConfig.value;
|
|
24012
|
+
|
|
24013
|
+
if (btnConfig.value.boundaryStart === true) {
|
|
24014
|
+
const active = minProp.value === props.modelValue;
|
|
24015
|
+
contentStart.push(
|
|
24016
|
+
getBtn({
|
|
24017
|
+
key: 'bns',
|
|
24018
|
+
style,
|
|
24019
|
+
disable: props.disable,
|
|
24020
|
+
label: minProp.value
|
|
24021
|
+
}, minProp.value, active)
|
|
24022
|
+
);
|
|
23895
24023
|
}
|
|
23896
|
-
|
|
23897
|
-
|
|
23898
|
-
|
|
23899
|
-
|
|
23900
|
-
|
|
23901
|
-
|
|
23902
|
-
|
|
23903
|
-
|
|
23904
|
-
|
|
23905
|
-
|
|
23906
|
-
|
|
23907
|
-
|
|
23908
|
-
|
|
23909
|
-
|
|
23910
|
-
|
|
23911
|
-
|
|
23912
|
-
|
|
23913
|
-
|
|
23914
|
-
|
|
23915
|
-
|
|
23916
|
-
|
|
23917
|
-
|
|
23918
|
-
|
|
23919
|
-
|
|
23920
|
-
|
|
23921
|
-
if (
|
|
23922
|
-
|
|
23923
|
-
|
|
23924
|
-
|
|
23925
|
-
|
|
23926
|
-
|
|
23927
|
-
|
|
23928
|
-
|
|
23929
|
-
|
|
23930
|
-
|
|
23931
|
-
contentEnd.unshift(getBtn({
|
|
23932
|
-
key: 'bee',
|
|
23933
|
-
style,
|
|
23934
|
-
disable: props.disable,
|
|
23935
|
-
label: '…',
|
|
23936
|
-
ripple: false
|
|
23937
|
-
}, pgTo + 1));
|
|
24024
|
+
|
|
24025
|
+
if (btnConfig.value.boundaryEnd === true) {
|
|
24026
|
+
const active = maxProp.value === props.modelValue;
|
|
24027
|
+
contentEnd.unshift(
|
|
24028
|
+
getBtn({
|
|
24029
|
+
key: 'bne',
|
|
24030
|
+
style,
|
|
24031
|
+
disable: props.disable,
|
|
24032
|
+
label: maxProp.value
|
|
24033
|
+
}, maxProp.value, active)
|
|
24034
|
+
);
|
|
24035
|
+
}
|
|
24036
|
+
|
|
24037
|
+
if (btnConfig.value.ellipsesStart === true) {
|
|
24038
|
+
contentStart.push(
|
|
24039
|
+
getBtn({
|
|
24040
|
+
key: 'bes',
|
|
24041
|
+
style,
|
|
24042
|
+
disable: props.disable,
|
|
24043
|
+
label: '…',
|
|
24044
|
+
ripple: false
|
|
24045
|
+
}, pgFrom - 1)
|
|
24046
|
+
);
|
|
24047
|
+
}
|
|
24048
|
+
|
|
24049
|
+
if (btnConfig.value.ellipsesEnd === true) {
|
|
24050
|
+
contentEnd.unshift(
|
|
24051
|
+
getBtn({
|
|
24052
|
+
key: 'bee',
|
|
24053
|
+
style,
|
|
24054
|
+
disable: props.disable,
|
|
24055
|
+
label: '…',
|
|
24056
|
+
ripple: false
|
|
24057
|
+
}, pgTo + 1)
|
|
24058
|
+
);
|
|
23938
24059
|
}
|
|
24060
|
+
|
|
23939
24061
|
for (let i = pgFrom; i <= pgTo; i++) {
|
|
23940
|
-
|
|
23941
|
-
|
|
23942
|
-
|
|
23943
|
-
|
|
23944
|
-
|
|
23945
|
-
|
|
23946
|
-
|
|
23947
|
-
|
|
23948
|
-
}
|
|
23949
|
-
contentMiddle.push(getBtn(btn, i));
|
|
24062
|
+
contentMiddle.push(
|
|
24063
|
+
getBtn({
|
|
24064
|
+
key: `bpg${ i }`,
|
|
24065
|
+
style,
|
|
24066
|
+
disable: props.disable,
|
|
24067
|
+
label: i
|
|
24068
|
+
}, i, i === props.modelValue)
|
|
24069
|
+
);
|
|
23950
24070
|
}
|
|
23951
24071
|
}
|
|
23952
24072
|
|
|
@@ -23954,15 +24074,35 @@ var QPagination = createComponent({
|
|
|
23954
24074
|
class: classes.value,
|
|
23955
24075
|
...attrs.value
|
|
23956
24076
|
}, [
|
|
23957
|
-
contentStart,
|
|
23958
|
-
|
|
23959
24077
|
h('div', {
|
|
23960
|
-
class: 'row
|
|
24078
|
+
class: 'q-pagination__content row no-wrap items-center',
|
|
24079
|
+
style: gutterStyle.value
|
|
23961
24080
|
}, [
|
|
23962
|
-
|
|
23963
|
-
|
|
24081
|
+
...contentStart,
|
|
24082
|
+
|
|
24083
|
+
props.input === true
|
|
24084
|
+
? h(QInput, {
|
|
24085
|
+
class: 'inline',
|
|
24086
|
+
style: { width: `${ inputPlaceholder.value.length / 1.5 }em` },
|
|
24087
|
+
type: 'number',
|
|
24088
|
+
dense: true,
|
|
24089
|
+
value: newPage.value,
|
|
24090
|
+
disable: props.disable,
|
|
24091
|
+
dark: isDark.value,
|
|
24092
|
+
borderless: true,
|
|
24093
|
+
inputClass: props.inputClass,
|
|
24094
|
+
inputStyle: props.inputStyle,
|
|
24095
|
+
placeholder: inputPlaceholder.value,
|
|
24096
|
+
min: minProp.value,
|
|
24097
|
+
max: maxProp.value,
|
|
24098
|
+
...inputEvents.value
|
|
24099
|
+
})
|
|
24100
|
+
: h('div', {
|
|
24101
|
+
class: 'q-pagination__middle row justify-center'
|
|
24102
|
+
}, contentMiddle),
|
|
23964
24103
|
|
|
23965
|
-
|
|
24104
|
+
...contentEnd
|
|
24105
|
+
])
|
|
23966
24106
|
])
|
|
23967
24107
|
}
|
|
23968
24108
|
}
|
|
@@ -24243,7 +24383,7 @@ var QPopupEdit = createComponent({
|
|
|
24243
24383
|
|
|
24244
24384
|
emits: [
|
|
24245
24385
|
'update:modelValue', 'save', 'cancel',
|
|
24246
|
-
'
|
|
24386
|
+
'beforeShow', 'show', 'beforeHide', 'hide'
|
|
24247
24387
|
],
|
|
24248
24388
|
|
|
24249
24389
|
setup (props, { slots, emit }) {
|
|
@@ -24307,7 +24447,7 @@ var QPopupEdit = createComponent({
|
|
|
24307
24447
|
validated = false;
|
|
24308
24448
|
initialValue.value = cloneDeep(props.modelValue);
|
|
24309
24449
|
currentModel.value = cloneDeep(props.modelValue);
|
|
24310
|
-
emit('
|
|
24450
|
+
emit('beforeShow');
|
|
24311
24451
|
}
|
|
24312
24452
|
|
|
24313
24453
|
function onShow () {
|
|
@@ -24325,7 +24465,7 @@ var QPopupEdit = createComponent({
|
|
|
24325
24465
|
}
|
|
24326
24466
|
}
|
|
24327
24467
|
|
|
24328
|
-
emit('
|
|
24468
|
+
emit('beforeHide');
|
|
24329
24469
|
}
|
|
24330
24470
|
|
|
24331
24471
|
function onHide () {
|
|
@@ -25594,7 +25734,7 @@ var QScrollArea = createComponent({
|
|
|
25594
25734
|
scroll.horizontal.percentage = computed(() => {
|
|
25595
25735
|
const diff = scroll.horizontal.size.value - container.horizontal.value;
|
|
25596
25736
|
if (diff <= 0) { return 0 }
|
|
25597
|
-
const p = between(scroll.horizontal.position.value / diff, 0, 1);
|
|
25737
|
+
const p = between(Math.abs(scroll.horizontal.position.value) / diff, 0, 1);
|
|
25598
25738
|
return Math.round(p * 10000) / 10000
|
|
25599
25739
|
});
|
|
25600
25740
|
scroll.horizontal.thumbHidden = computed(() =>
|
|
@@ -25620,7 +25760,7 @@ var QScrollArea = createComponent({
|
|
|
25620
25760
|
return {
|
|
25621
25761
|
...props.thumbStyle,
|
|
25622
25762
|
...props.horizontalThumbStyle,
|
|
25623
|
-
left: `${ scroll.horizontal.thumbStart.value }px`,
|
|
25763
|
+
[ proxy.$q.lang.rtl === true ? 'right' : 'left' ]: `${ scroll.horizontal.thumbStart.value }px`,
|
|
25624
25764
|
width: `${ scroll.horizontal.thumbSize.value }px`
|
|
25625
25765
|
}
|
|
25626
25766
|
});
|
|
@@ -25814,6 +25954,15 @@ var QScrollArea = createComponent({
|
|
|
25814
25954
|
|
|
25815
25955
|
let scrollPosition = null;
|
|
25816
25956
|
|
|
25957
|
+
watch(() => proxy.$q.lang.rtl, rtl => {
|
|
25958
|
+
if (targetRef.value !== null) {
|
|
25959
|
+
setHorizontalScrollPosition(
|
|
25960
|
+
targetRef.value,
|
|
25961
|
+
Math.abs(scroll.horizontal.position.value) * (rtl === true ? -1 : 1)
|
|
25962
|
+
);
|
|
25963
|
+
}
|
|
25964
|
+
});
|
|
25965
|
+
|
|
25817
25966
|
onDeactivated(() => {
|
|
25818
25967
|
scrollPosition = {
|
|
25819
25968
|
top: scroll.vertical.position.value,
|
|
@@ -25850,7 +25999,9 @@ var QScrollArea = createComponent({
|
|
|
25850
25999
|
setScrollPercentage (axis, percentage, duration) {
|
|
25851
26000
|
localSetScrollPosition(
|
|
25852
26001
|
axis,
|
|
25853
|
-
percentage
|
|
26002
|
+
percentage
|
|
26003
|
+
* (scroll[ axis ].size.value - container[ axis ].value)
|
|
26004
|
+
* (axis === 'horizontal' && proxy.$q.lang.rtl === true ? -1 : 1),
|
|
25854
26005
|
duration
|
|
25855
26006
|
);
|
|
25856
26007
|
}
|
|
@@ -26599,7 +26750,7 @@ function useVirtualScroll ({
|
|
|
26599
26750
|
|
|
26600
26751
|
function emitScroll (index) {
|
|
26601
26752
|
if (prevToIndex !== index) {
|
|
26602
|
-
props.onVirtualScroll !== void 0 && emit('
|
|
26753
|
+
props.onVirtualScroll !== void 0 && emit('virtualScroll', {
|
|
26603
26754
|
index,
|
|
26604
26755
|
from: virtualScrollSliceRange.value.from,
|
|
26605
26756
|
to: virtualScrollSliceRange.value.to - 1,
|
|
@@ -26771,9 +26922,9 @@ var QSelect = createComponent({
|
|
|
26771
26922
|
|
|
26772
26923
|
emits: [
|
|
26773
26924
|
...useFieldEmits,
|
|
26774
|
-
'add', 'remove', '
|
|
26925
|
+
'add', 'remove', 'inputValue', 'newValue',
|
|
26775
26926
|
'keyup', 'keypress', 'keydown',
|
|
26776
|
-
'
|
|
26927
|
+
'filterAbort'
|
|
26777
26928
|
],
|
|
26778
26929
|
|
|
26779
26930
|
setup (props, { slots, emit }) {
|
|
@@ -26912,20 +27063,16 @@ var QSelect = createComponent({
|
|
|
26912
27063
|
|
|
26913
27064
|
const tabindex = computed(() => (state.focused.value === true ? props.tabindex : -1));
|
|
26914
27065
|
|
|
26915
|
-
const comboboxAttrs = computed(() => {
|
|
26916
|
-
|
|
26917
|
-
|
|
26918
|
-
|
|
26919
|
-
|
|
26920
|
-
|
|
26921
|
-
|
|
26922
|
-
|
|
26923
|
-
|
|
26924
|
-
|
|
26925
|
-
};
|
|
26926
|
-
|
|
26927
|
-
return attrs
|
|
26928
|
-
});
|
|
27066
|
+
const comboboxAttrs = computed(() => ({
|
|
27067
|
+
tabindex: props.tabindex,
|
|
27068
|
+
role: 'combobox',
|
|
27069
|
+
'aria-label': props.label,
|
|
27070
|
+
'aria-readonly': props.readonly === true ? 'true' : 'false',
|
|
27071
|
+
'aria-autocomplete': props.useInput === true ? 'list' : 'none',
|
|
27072
|
+
'aria-expanded': menu.value === true ? 'true' : 'false',
|
|
27073
|
+
'aria-owns': `${ state.targetUid.value }_lb`,
|
|
27074
|
+
'aria-controls': `${ state.targetUid.value }_lb`
|
|
27075
|
+
}));
|
|
26929
27076
|
|
|
26930
27077
|
const listboxAttrs = computed(() => {
|
|
26931
27078
|
const attrs = {
|
|
@@ -27521,7 +27668,7 @@ var QSelect = createComponent({
|
|
|
27521
27668
|
};
|
|
27522
27669
|
|
|
27523
27670
|
if (props.onNewValue !== void 0) {
|
|
27524
|
-
emit('
|
|
27671
|
+
emit('newValue', inputValue.value, done);
|
|
27525
27672
|
}
|
|
27526
27673
|
else {
|
|
27527
27674
|
done(inputValue.value);
|
|
@@ -27544,8 +27691,8 @@ var QSelect = createComponent({
|
|
|
27544
27691
|
return hasDialog === true
|
|
27545
27692
|
? menuContentRef.value
|
|
27546
27693
|
: (
|
|
27547
|
-
menuRef.value !== null && menuRef.value.
|
|
27548
|
-
? menuRef.value.
|
|
27694
|
+
menuRef.value !== null && menuRef.value.contentEl !== null
|
|
27695
|
+
? menuRef.value.contentEl
|
|
27549
27696
|
: void 0
|
|
27550
27697
|
)
|
|
27551
27698
|
}
|
|
@@ -27688,7 +27835,7 @@ var QSelect = createComponent({
|
|
|
27688
27835
|
function setInputValue (val) {
|
|
27689
27836
|
if (inputValue.value !== val) {
|
|
27690
27837
|
inputValue.value = val;
|
|
27691
|
-
emit('
|
|
27838
|
+
emit('inputValue', val);
|
|
27692
27839
|
}
|
|
27693
27840
|
}
|
|
27694
27841
|
|
|
@@ -27712,7 +27859,7 @@ var QSelect = createComponent({
|
|
|
27712
27859
|
}
|
|
27713
27860
|
|
|
27714
27861
|
if (state.innerLoading.value === true) {
|
|
27715
|
-
emit('
|
|
27862
|
+
emit('filterAbort');
|
|
27716
27863
|
}
|
|
27717
27864
|
else {
|
|
27718
27865
|
state.innerLoading.value = true;
|
|
@@ -27929,7 +28076,7 @@ var QSelect = createComponent({
|
|
|
27929
28076
|
filterId = void 0;
|
|
27930
28077
|
|
|
27931
28078
|
if (state.innerLoading.value === true) {
|
|
27932
|
-
emit('
|
|
28079
|
+
emit('filterAbort');
|
|
27933
28080
|
state.innerLoading.value = false;
|
|
27934
28081
|
innerLoadingIndicator.value = false;
|
|
27935
28082
|
}
|
|
@@ -28015,14 +28162,14 @@ var QSelect = createComponent({
|
|
|
28015
28162
|
|
|
28016
28163
|
function onControlPopupShow (e) {
|
|
28017
28164
|
e !== void 0 && stop(e);
|
|
28018
|
-
emit('
|
|
28165
|
+
emit('popupShow', e);
|
|
28019
28166
|
state.hasPopupOpen = true;
|
|
28020
28167
|
state.onControlFocusin(e);
|
|
28021
28168
|
}
|
|
28022
28169
|
|
|
28023
28170
|
function onControlPopupHide (e) {
|
|
28024
28171
|
e !== void 0 && stop(e);
|
|
28025
|
-
emit('
|
|
28172
|
+
emit('popupHide', e);
|
|
28026
28173
|
state.hasPopupOpen = false;
|
|
28027
28174
|
state.onControlFocusout(e);
|
|
28028
28175
|
}
|
|
@@ -30881,9 +31028,11 @@ var QStep = createComponent({
|
|
|
30881
31028
|
setup (props, { slots, emit }) {
|
|
30882
31029
|
const { proxy: { $q } } = getCurrentInstance();
|
|
30883
31030
|
|
|
30884
|
-
const $stepper = inject(stepperKey,
|
|
30885
|
-
|
|
30886
|
-
|
|
31031
|
+
const $stepper = inject(stepperKey, emptyRenderFn);
|
|
31032
|
+
if ($stepper === emptyRenderFn) {
|
|
31033
|
+
console.error('QStep needs to be a child of QStepper');
|
|
31034
|
+
return emptyRenderFn
|
|
31035
|
+
}
|
|
30887
31036
|
|
|
30888
31037
|
const { getCacheWithFn } = useCache();
|
|
30889
31038
|
|
|
@@ -30941,7 +31090,7 @@ var QStep = createComponent({
|
|
|
30941
31090
|
|
|
30942
31091
|
return () => h(
|
|
30943
31092
|
'div',
|
|
30944
|
-
{ ref: rootRef, class: 'q-stepper__step', ...scrollEvent.value },
|
|
31093
|
+
{ ref: rootRef, class: 'q-stepper__step', role: 'tabpanel', ...scrollEvent.value },
|
|
30945
31094
|
$stepper.value.vertical === true
|
|
30946
31095
|
? [
|
|
30947
31096
|
h(StepHeader, {
|
|
@@ -32011,7 +32160,7 @@ var QTable = createComponent({
|
|
|
32011
32160
|
},
|
|
32012
32161
|
|
|
32013
32162
|
emits: [
|
|
32014
|
-
'request', '
|
|
32163
|
+
'request', 'virtualScroll',
|
|
32015
32164
|
...useFullscreenEmits,
|
|
32016
32165
|
...useTableRowExpandEmits,
|
|
32017
32166
|
...useTableRowSelectionEmits
|
|
@@ -32245,7 +32394,7 @@ var QTable = createComponent({
|
|
|
32245
32394
|
|
|
32246
32395
|
scrollTarget.scrollTop = offsetTop;
|
|
32247
32396
|
|
|
32248
|
-
emit('
|
|
32397
|
+
emit('virtualScroll', {
|
|
32249
32398
|
index: toIndex,
|
|
32250
32399
|
from: 0,
|
|
32251
32400
|
to: innerPagination.value.rowsPerPage - 1,
|
|
@@ -32255,7 +32404,7 @@ var QTable = createComponent({
|
|
|
32255
32404
|
}
|
|
32256
32405
|
|
|
32257
32406
|
function onVScroll (info) {
|
|
32258
|
-
emit('
|
|
32407
|
+
emit('virtualScroll', info);
|
|
32259
32408
|
}
|
|
32260
32409
|
|
|
32261
32410
|
function getProgress () {
|
|
@@ -34006,9 +34155,11 @@ var QTimelineEntry = createComponent({
|
|
|
34006
34155
|
},
|
|
34007
34156
|
|
|
34008
34157
|
setup (props, { slots }) {
|
|
34009
|
-
const $timeline = inject(timelineKey,
|
|
34158
|
+
const $timeline = inject(timelineKey, emptyRenderFn);
|
|
34159
|
+
if ($timeline === emptyRenderFn) {
|
|
34010
34160
|
console.error('QTimelineEntry needs to be child of QTimeline');
|
|
34011
|
-
|
|
34161
|
+
return emptyRenderFn
|
|
34162
|
+
}
|
|
34012
34163
|
|
|
34013
34164
|
const classes = computed(() =>
|
|
34014
34165
|
`q-timeline__entry q-timeline__entry--${ props.side }`
|
|
@@ -34097,7 +34248,7 @@ var QToolbar = createComponent({
|
|
|
34097
34248
|
+ (props.inset === true ? ' q-toolbar--inset' : '')
|
|
34098
34249
|
);
|
|
34099
34250
|
|
|
34100
|
-
return () => h('div', { class: classes.value }, hSlot(slots.default))
|
|
34251
|
+
return () => h('div', { class: classes.value, role: 'toolbar' }, hSlot(slots.default))
|
|
34101
34252
|
}
|
|
34102
34253
|
});
|
|
34103
34254
|
|
|
@@ -34181,9 +34332,9 @@ var QTree = createComponent({
|
|
|
34181
34332
|
'update:expanded',
|
|
34182
34333
|
'update:ticked',
|
|
34183
34334
|
'update:selected',
|
|
34184
|
-
'
|
|
34185
|
-
'
|
|
34186
|
-
'
|
|
34335
|
+
'lazyLoad',
|
|
34336
|
+
'afterShow',
|
|
34337
|
+
'afterHide'
|
|
34187
34338
|
],
|
|
34188
34339
|
|
|
34189
34340
|
setup (props, { slots, emit }) {
|
|
@@ -34432,7 +34583,7 @@ var QTree = createComponent({
|
|
|
34432
34583
|
if (Array.isArray(node[ props.childrenKey ]) !== true) {
|
|
34433
34584
|
node[ props.childrenKey ] = [];
|
|
34434
34585
|
}
|
|
34435
|
-
emit('
|
|
34586
|
+
emit('lazyLoad', {
|
|
34436
34587
|
node,
|
|
34437
34588
|
key,
|
|
34438
34589
|
done: children => {
|
|
@@ -34579,11 +34730,11 @@ var QTree = createComponent({
|
|
|
34579
34730
|
}
|
|
34580
34731
|
|
|
34581
34732
|
function onShow () {
|
|
34582
|
-
emit('
|
|
34733
|
+
emit('afterShow');
|
|
34583
34734
|
}
|
|
34584
34735
|
|
|
34585
34736
|
function onHide () {
|
|
34586
|
-
emit('
|
|
34737
|
+
emit('afterHide');
|
|
34587
34738
|
}
|
|
34588
34739
|
|
|
34589
34740
|
function getNode (node) {
|
|
@@ -35426,7 +35577,7 @@ function injectPlugin ({ props, emit, helpers }) {
|
|
|
35426
35577
|
helpers.queuedFiles.value = helpers.queuedFiles.value.concat(files);
|
|
35427
35578
|
files.forEach(f => { helpers.updateFileStatus(f, 'failed'); });
|
|
35428
35579
|
|
|
35429
|
-
emit('
|
|
35580
|
+
emit('factoryFailed', err, files);
|
|
35430
35581
|
workingThreads.value--;
|
|
35431
35582
|
}
|
|
35432
35583
|
};
|
|
@@ -35585,9 +35736,13 @@ var QUploaderAddTrigger = createComponent({
|
|
|
35585
35736
|
name: 'QUploaderAddTrigger',
|
|
35586
35737
|
|
|
35587
35738
|
setup () {
|
|
35588
|
-
|
|
35739
|
+
const $trigger = inject(uploaderKey, emptyRenderFn);
|
|
35740
|
+
|
|
35741
|
+
if ($trigger === emptyRenderFn) {
|
|
35589
35742
|
console.error('QUploaderAddTrigger needs to be child of QUploader');
|
|
35590
|
-
}
|
|
35743
|
+
}
|
|
35744
|
+
|
|
35745
|
+
return $trigger
|
|
35591
35746
|
}
|
|
35592
35747
|
});
|
|
35593
35748
|
|
|
@@ -37765,6 +37920,7 @@ var BottomSheet$1 = createComponent({
|
|
|
37765
37920
|
action.class
|
|
37766
37921
|
],
|
|
37767
37922
|
tabindex: 0,
|
|
37923
|
+
role: 'listitem',
|
|
37768
37924
|
onClick () { onOk(action); },
|
|
37769
37925
|
onKeyup (e) { e.keyCode === 13 && onOk(action); }
|
|
37770
37926
|
}, [
|
|
@@ -37797,8 +37953,7 @@ var BottomSheet$1 = createComponent({
|
|
|
37797
37953
|
tabindex: 0,
|
|
37798
37954
|
clickable: true,
|
|
37799
37955
|
dark: isDark.value,
|
|
37800
|
-
onClick () { onOk(action); }
|
|
37801
|
-
onKeyup (e) { e.keyCode === 13 && onOk(action); }
|
|
37956
|
+
onClick () { onOk(action); }
|
|
37802
37957
|
}, () => [
|
|
37803
37958
|
h(
|
|
37804
37959
|
QItemSection,
|
|
@@ -37840,9 +37995,12 @@ var BottomSheet$1 = createComponent({
|
|
|
37840
37995
|
child.push(
|
|
37841
37996
|
props.grid === true
|
|
37842
37997
|
? h('div', {
|
|
37843
|
-
class: 'row items-stretch justify-start'
|
|
37998
|
+
class: 'row items-stretch justify-start',
|
|
37999
|
+
role: 'list'
|
|
37844
38000
|
}, getGrid())
|
|
37845
|
-
: h('div',
|
|
38001
|
+
: h('div', {
|
|
38002
|
+
role: 'list'
|
|
38003
|
+
}, getList())
|
|
37846
38004
|
);
|
|
37847
38005
|
|
|
37848
38006
|
return child
|
|
@@ -38432,12 +38590,12 @@ var DialogPlugin = createComponent({
|
|
|
38432
38590
|
function getPrompt () {
|
|
38433
38591
|
return [
|
|
38434
38592
|
h(QInput, {
|
|
38435
|
-
modelValue: model.value,
|
|
38436
|
-
...formProps.value,
|
|
38437
38593
|
color: vmColor.value,
|
|
38438
38594
|
dense: true,
|
|
38439
38595
|
autofocus: true,
|
|
38440
38596
|
dark: isDark.value,
|
|
38597
|
+
...formProps.value,
|
|
38598
|
+
modelValue: model.value,
|
|
38441
38599
|
'onUpdate:modelValue': onUpdateModel,
|
|
38442
38600
|
onKeyup: onInputKeyup
|
|
38443
38601
|
})
|
|
@@ -38447,11 +38605,11 @@ var DialogPlugin = createComponent({
|
|
|
38447
38605
|
function getOptions () {
|
|
38448
38606
|
return [
|
|
38449
38607
|
h(QOptionGroup, {
|
|
38450
|
-
modelValue: model.value,
|
|
38451
|
-
...formProps.value,
|
|
38452
38608
|
color: vmColor.value,
|
|
38453
38609
|
options: props.options.items,
|
|
38454
38610
|
dark: isDark.value,
|
|
38611
|
+
...formProps.value,
|
|
38612
|
+
modelValue: model.value,
|
|
38455
38613
|
'onUpdate:modelValue': onUpdateModel
|
|
38456
38614
|
})
|
|
38457
38615
|
]
|
|
@@ -40138,7 +40296,7 @@ function runSequentialPromises (
|
|
|
40138
40296
|
*/
|
|
40139
40297
|
|
|
40140
40298
|
const Quasar = {
|
|
40141
|
-
version: '2.
|
|
40299
|
+
version: '2.10.1',
|
|
40142
40300
|
install: installQuasar,
|
|
40143
40301
|
lang: Plugin$8,
|
|
40144
40302
|
iconSet: Plugin$7
|