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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "quasar",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.10.1",
|
|
4
4
|
"description": "Build high-performance VueJS user interfaces (SPA, PWA, SSR, Mobile and Desktop) in record time",
|
|
5
5
|
"main": "dist/quasar.cjs.prod.js",
|
|
6
6
|
"module": "dist/quasar.esm.prod.js",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
},
|
|
68
68
|
"homepage": "https://quasar.dev",
|
|
69
69
|
"devDependencies": {
|
|
70
|
-
"@quasar/app-vite": "^1.1.
|
|
70
|
+
"@quasar/app-vite": "^1.1.3",
|
|
71
71
|
"@quasar/extras": "^1.12.0",
|
|
72
72
|
"@quasar/quasar-app-extension-testing-e2e-cypress": "^4.1.2",
|
|
73
73
|
"@rollup/plugin-node-resolve": "^11.2.1",
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
"rollup": "^2.34.0",
|
|
97
97
|
"table": "^6.0.4",
|
|
98
98
|
"uglify-es": "^3.3.9",
|
|
99
|
-
"vue": "^3.2.
|
|
99
|
+
"vue": "^3.2.41",
|
|
100
100
|
"vue-router": "^4.0.16",
|
|
101
101
|
"yargs": "^17.3.0"
|
|
102
102
|
},
|
package/src/api.extends.json
CHANGED
|
@@ -9,7 +9,6 @@
|
|
|
9
9
|
"desc": "Position within window of where QAjaxBar should be displayed",
|
|
10
10
|
"default": "top",
|
|
11
11
|
"values": [ "top", "right", "bottom", "left" ],
|
|
12
|
-
"examples": [ "bottom" ],
|
|
13
12
|
"category": "style"
|
|
14
13
|
},
|
|
15
14
|
|
|
@@ -70,14 +69,12 @@
|
|
|
70
69
|
"speed": {
|
|
71
70
|
"type": "Number",
|
|
72
71
|
"default": 300,
|
|
73
|
-
"desc": "Delay (in milliseconds) between progress auto-increments; If delay is 0 then it disables auto-incrementing"
|
|
74
|
-
"examples": [ 400, 0 ]
|
|
72
|
+
"desc": "Delay (in milliseconds) between progress auto-increments; If delay is 0 then it disables auto-incrementing"
|
|
75
73
|
}
|
|
76
74
|
},
|
|
77
75
|
"returns": {
|
|
78
76
|
"type": "Number",
|
|
79
|
-
"desc": "Number of active simultaneous sessions"
|
|
80
|
-
"__exemption": [ "examples" ]
|
|
77
|
+
"desc": "Number of active simultaneous sessions"
|
|
81
78
|
}
|
|
82
79
|
},
|
|
83
80
|
|
|
@@ -86,14 +83,12 @@
|
|
|
86
83
|
"params": {
|
|
87
84
|
"amount": {
|
|
88
85
|
"type": "Number",
|
|
89
|
-
"desc": "Amount (0 < x <= 100) to increment with"
|
|
90
|
-
"examples": [ 1 ]
|
|
86
|
+
"desc": "Amount (0 < x <= 100) to increment with"
|
|
91
87
|
}
|
|
92
88
|
},
|
|
93
89
|
"returns": {
|
|
94
90
|
"type": "Number",
|
|
95
|
-
"desc": "Number of active simultaneous sessions"
|
|
96
|
-
"__exemption": [ "examples" ]
|
|
91
|
+
"desc": "Number of active simultaneous sessions"
|
|
97
92
|
}
|
|
98
93
|
},
|
|
99
94
|
|
|
@@ -101,8 +96,7 @@
|
|
|
101
96
|
"desc": "Notify bar that one process you were waiting has finished",
|
|
102
97
|
"returns": {
|
|
103
98
|
"type": "Number",
|
|
104
|
-
"desc": "Number of active simultaneous sessions"
|
|
105
|
-
"__exemption": [ "examples" ]
|
|
99
|
+
"desc": "Number of active simultaneous sessions"
|
|
106
100
|
}
|
|
107
101
|
}
|
|
108
102
|
}
|
|
@@ -24,7 +24,6 @@
|
|
|
24
24
|
"desc": "The gutter value allows you control over the space between the breadcrumb elements.",
|
|
25
25
|
"default": "sm",
|
|
26
26
|
"values": [ "none", "xs", "sm", "md", "lg", "xl" ],
|
|
27
|
-
"examples": [ "md", "lg" ],
|
|
28
27
|
"category": "content"
|
|
29
28
|
},
|
|
30
29
|
|
|
@@ -39,7 +38,6 @@
|
|
|
39
38
|
"default": "left",
|
|
40
39
|
"desc": "Specify how to align the breadcrumbs horizontally",
|
|
41
40
|
"values": [ "left", "center", "right", "between", "around", "evenly" ],
|
|
42
|
-
"examples": [ "left", "center" ],
|
|
43
41
|
"category": "content"
|
|
44
42
|
}
|
|
45
43
|
},
|
|
@@ -21,10 +21,6 @@
|
|
|
21
21
|
"extends": "tag",
|
|
22
22
|
"default": "span",
|
|
23
23
|
"examples": [ "div", "span" ]
|
|
24
|
-
},
|
|
25
|
-
|
|
26
|
-
"ripple": {
|
|
27
|
-
"extends": "ripple"
|
|
28
24
|
}
|
|
29
25
|
},
|
|
30
26
|
|
|
@@ -79,8 +75,7 @@
|
|
|
79
75
|
},
|
|
80
76
|
"returns": {
|
|
81
77
|
"type": "Promise<any>",
|
|
82
|
-
"desc": "Returns the router's navigation promise"
|
|
83
|
-
"__exemption": [ "examples" ]
|
|
78
|
+
"desc": "Returns the router's navigation promise"
|
|
84
79
|
}
|
|
85
80
|
}
|
|
86
81
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<q-breadcrumbs v-bind="$attrs">
|
|
3
|
+
<q-breadcrumbs-el label="Home" icon="home" />
|
|
4
|
+
<q-breadcrumbs-el label="Components" icon="widgets" />
|
|
5
|
+
<q-breadcrumbs-el label="Toolbar" />
|
|
6
|
+
|
|
7
|
+
<template v-slot:separator>
|
|
8
|
+
<q-icon size="1.2em" name="arrow_forward" color="purple" />
|
|
9
|
+
</template>
|
|
10
|
+
</q-breadcrumbs>
|
|
11
|
+
</template>
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { mount } from '@cypress/vue'
|
|
2
|
+
import { alignMap, alignValues } from '../../../composables/private/use-align.js'
|
|
3
|
+
import BasicBreadcrumbs from './BasicBreadcrumbs.vue'
|
|
4
|
+
import BreadcrumbWithSeparatorSlot from './BreadcrumbWithSeparatorSlot.vue'
|
|
5
|
+
|
|
6
|
+
const gutterValues = [ 'xs', 'sm', 'md', 'lg', 'xl' ]
|
|
7
|
+
|
|
8
|
+
describe('Breadcrumbs API', () => {
|
|
9
|
+
describe('Props', () => {
|
|
10
|
+
describe('Category: content', () => {
|
|
11
|
+
describe('(prop): separator', () => {
|
|
12
|
+
it('should render a custom separator based on the defined value', () => {
|
|
13
|
+
const customSeparator = '>'
|
|
14
|
+
|
|
15
|
+
mount(BasicBreadcrumbs, {
|
|
16
|
+
props: {
|
|
17
|
+
separator: customSeparator
|
|
18
|
+
}
|
|
19
|
+
})
|
|
20
|
+
cy.get('.q-breadcrumbs__separator')
|
|
21
|
+
.each(($el) => cy.wrap($el).should('contain', customSeparator))
|
|
22
|
+
})
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
describe('(prop): gutter', () => {
|
|
26
|
+
it(`should render a breadcrumb with a gutter based on defined values: ${ gutterValues.join(', ') }`, () => {
|
|
27
|
+
mount(BasicBreadcrumbs)
|
|
28
|
+
|
|
29
|
+
// loop through each gutter value
|
|
30
|
+
for (const gutter of gutterValues) {
|
|
31
|
+
cy.get('.q-breadcrumbs > div')
|
|
32
|
+
.then(() => Cypress.vueWrapper.setProps({ gutter }))
|
|
33
|
+
.should('have.class', `q-gutter-${ gutter }`)
|
|
34
|
+
}
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
it('should render a breadcrumb with no gutter when the value is set to "none"', () => {
|
|
38
|
+
mount(BasicBreadcrumbs, {
|
|
39
|
+
props: {
|
|
40
|
+
gutter: 'none'
|
|
41
|
+
}
|
|
42
|
+
})
|
|
43
|
+
cy.get('.q-breadcrumbs > div')
|
|
44
|
+
.should('not.have.class', 'q-gutter')
|
|
45
|
+
})
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
describe('(prop): align', () => {
|
|
49
|
+
it(`should render a breadcrumb aligned based on defined values: ${ alignValues.join(', ') }`, () => {
|
|
50
|
+
mount(BasicBreadcrumbs)
|
|
51
|
+
|
|
52
|
+
// loop over alignValues
|
|
53
|
+
for (const align of alignValues) {
|
|
54
|
+
cy.get('.q-breadcrumbs > div')
|
|
55
|
+
.then(() => Cypress.vueWrapper.setProps({ align }))
|
|
56
|
+
.should('have.class', `justify-${ alignMap[ align ] }`)
|
|
57
|
+
}
|
|
58
|
+
})
|
|
59
|
+
})
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
describe('Category: style', () => {
|
|
63
|
+
describe('(prop): active-color', () => {
|
|
64
|
+
it('should change breadcrumb item color based on Quasar Color Palette', () => {
|
|
65
|
+
const activeColor = 'red'
|
|
66
|
+
|
|
67
|
+
mount(BasicBreadcrumbs, {
|
|
68
|
+
props: {
|
|
69
|
+
activeColor
|
|
70
|
+
}
|
|
71
|
+
})
|
|
72
|
+
cy.get('.q-breadcrumbs > div > .flex.items-center:not(.q-breadcrumbs--last)')
|
|
73
|
+
.each(($el) => cy.wrap($el).should('have.class', `text-${ activeColor }`))
|
|
74
|
+
})
|
|
75
|
+
})
|
|
76
|
+
|
|
77
|
+
describe('(prop): separator-color', () => {
|
|
78
|
+
it('should change breadcrumb separator color based on Quasar Color Palette', () => {
|
|
79
|
+
const separatorColor = 'red'
|
|
80
|
+
|
|
81
|
+
mount(BasicBreadcrumbs, {
|
|
82
|
+
props: {
|
|
83
|
+
separatorColor
|
|
84
|
+
}
|
|
85
|
+
})
|
|
86
|
+
cy.get('.q-breadcrumbs__separator')
|
|
87
|
+
.each(($el) => cy.wrap($el).should('have.class', `text-${ separatorColor }`))
|
|
88
|
+
})
|
|
89
|
+
})
|
|
90
|
+
})
|
|
91
|
+
})
|
|
92
|
+
|
|
93
|
+
describe('Slots', () => {
|
|
94
|
+
describe('(slot): default', () => {
|
|
95
|
+
it('should display the default slot content', () => {
|
|
96
|
+
mount(BasicBreadcrumbs)
|
|
97
|
+
|
|
98
|
+
cy.get('.q-breadcrumbs > div')
|
|
99
|
+
.should('contain', 'Home')
|
|
100
|
+
})
|
|
101
|
+
})
|
|
102
|
+
|
|
103
|
+
describe('(slot): separator', () => {
|
|
104
|
+
it('should display the separator slot content', () => {
|
|
105
|
+
mount(BreadcrumbWithSeparatorSlot)
|
|
106
|
+
|
|
107
|
+
cy.get('.q-breadcrumbs__separator')
|
|
108
|
+
.should('contain', 'arrow_forward')
|
|
109
|
+
})
|
|
110
|
+
})
|
|
111
|
+
})
|
|
112
|
+
})
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { mount } from '@cypress/vue'
|
|
2
|
+
import QBreadcrumbsEl from '../QBreadcrumbsEl.js'
|
|
3
|
+
|
|
4
|
+
describe('BreadcrumbsEl API', () => {
|
|
5
|
+
describe('Props', () => {
|
|
6
|
+
describe('Category: content', () => {
|
|
7
|
+
describe('(prop): label', () => {
|
|
8
|
+
it('should render a label inside the breadcrumb element', () => {
|
|
9
|
+
const label = 'Breadcrumb label'
|
|
10
|
+
|
|
11
|
+
mount(QBreadcrumbsEl, {
|
|
12
|
+
props: { label }
|
|
13
|
+
})
|
|
14
|
+
|
|
15
|
+
cy.get('.q-breadcrumbs__el')
|
|
16
|
+
.should('contain', label)
|
|
17
|
+
})
|
|
18
|
+
})
|
|
19
|
+
|
|
20
|
+
describe('(prop): icon', () => {
|
|
21
|
+
it('should render on the left of the breadcrumb element', () => {
|
|
22
|
+
const icon = 'home'
|
|
23
|
+
|
|
24
|
+
mount(QBreadcrumbsEl, {
|
|
25
|
+
props: { icon }
|
|
26
|
+
})
|
|
27
|
+
|
|
28
|
+
cy.get('.q-breadcrumbs__el')
|
|
29
|
+
.should('contain', icon)
|
|
30
|
+
})
|
|
31
|
+
})
|
|
32
|
+
|
|
33
|
+
describe('(prop): tag', () => {
|
|
34
|
+
it('should render a custom tag', () => {
|
|
35
|
+
const tag = 'a'
|
|
36
|
+
|
|
37
|
+
mount(QBreadcrumbsEl, {
|
|
38
|
+
props: { tag }
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
cy.get('.q-breadcrumbs__el')
|
|
42
|
+
.should('have.prop', 'tagName', tag.toUpperCase())
|
|
43
|
+
})
|
|
44
|
+
})
|
|
45
|
+
})
|
|
46
|
+
|
|
47
|
+
describe('Category: style', () => {
|
|
48
|
+
it.skip(' ', () => {
|
|
49
|
+
//
|
|
50
|
+
})
|
|
51
|
+
})
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
describe('Slots', () => {
|
|
55
|
+
describe('(slot): default', () => {
|
|
56
|
+
it('should render the default slot', () => {
|
|
57
|
+
const label = 'Breadcrumb label'
|
|
58
|
+
|
|
59
|
+
mount(QBreadcrumbsEl, {
|
|
60
|
+
slots: { default: label }
|
|
61
|
+
})
|
|
62
|
+
|
|
63
|
+
cy.get('.q-breadcrumbs__el')
|
|
64
|
+
.should('contain', label)
|
|
65
|
+
})
|
|
66
|
+
})
|
|
67
|
+
})
|
|
68
|
+
|
|
69
|
+
describe('Events', () => {
|
|
70
|
+
describe('(event): click', () => {
|
|
71
|
+
it('should emit "click" event when clicked', () => {
|
|
72
|
+
const fn = cy.stub()
|
|
73
|
+
|
|
74
|
+
mount(QBreadcrumbsEl, {
|
|
75
|
+
props: {
|
|
76
|
+
label: 'clicked breadcrumb',
|
|
77
|
+
onClick: fn
|
|
78
|
+
}
|
|
79
|
+
})
|
|
80
|
+
|
|
81
|
+
cy.get('.q-breadcrumbs__el')
|
|
82
|
+
.click()
|
|
83
|
+
.then(() => expect(fn).to.be.calledOnce)
|
|
84
|
+
})
|
|
85
|
+
})
|
|
86
|
+
})
|
|
87
|
+
})
|
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
"percentage": {
|
|
16
16
|
"type": "Number",
|
|
17
17
|
"desc": "Percentage (0.0 < x < 100.0); To be used along 'loading' prop; Display a progress bar on the background",
|
|
18
|
-
"examples": [ 23 ],
|
|
19
18
|
"category": "behavior"
|
|
20
19
|
},
|
|
21
20
|
|
|
@@ -92,8 +91,7 @@
|
|
|
92
91
|
},
|
|
93
92
|
"returns": {
|
|
94
93
|
"type": "Promise<any>",
|
|
95
|
-
"desc": "Returns the router's navigation promise"
|
|
96
|
-
"__exemption": [ "examples" ]
|
|
94
|
+
"desc": "Returns the router's navigation promise"
|
|
97
95
|
}
|
|
98
96
|
}
|
|
99
97
|
}
|
|
@@ -1,23 +1,65 @@
|
|
|
1
|
+
import { mount } from '@cypress/vue'
|
|
2
|
+
import QBtn from '../QBtn.js'
|
|
3
|
+
|
|
4
|
+
const defaultOptions = {
|
|
5
|
+
label: 'simple Btn'
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
function mountQBtn (options = {}) {
|
|
9
|
+
options.props = {
|
|
10
|
+
...defaultOptions,
|
|
11
|
+
...options.props
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
return mount(QBtn, options)
|
|
15
|
+
}
|
|
16
|
+
|
|
1
17
|
describe('Btn API', () => {
|
|
2
18
|
describe('Props', () => {
|
|
3
19
|
describe('Category: behavior', () => {
|
|
4
20
|
describe('(prop): percentage', () => {
|
|
5
|
-
it
|
|
6
|
-
|
|
21
|
+
it('should render a button with a percentage when "loading" prop is set to true', () => {
|
|
22
|
+
const percentage = 50
|
|
23
|
+
|
|
24
|
+
mountQBtn({
|
|
25
|
+
props: {
|
|
26
|
+
percentage,
|
|
27
|
+
loading: true
|
|
28
|
+
}
|
|
29
|
+
})
|
|
30
|
+
|
|
31
|
+
cy.get('.q-btn').should('have.attr', 'aria-valuenow', percentage)
|
|
7
32
|
})
|
|
8
33
|
})
|
|
9
34
|
|
|
10
35
|
describe('(prop): dark-percentage', () => {
|
|
11
|
-
it
|
|
12
|
-
|
|
36
|
+
it('should render a button with a dark percentage when "loading" prop is set to true', () => {
|
|
37
|
+
const percentage = 50
|
|
38
|
+
|
|
39
|
+
mountQBtn({
|
|
40
|
+
props: {
|
|
41
|
+
percentage,
|
|
42
|
+
loading: true,
|
|
43
|
+
darkPercentage: true
|
|
44
|
+
}
|
|
45
|
+
})
|
|
46
|
+
|
|
47
|
+
cy.get('.q-btn').should('have.attr', 'aria-valuenow', percentage)
|
|
48
|
+
.get('.q-btn__progress').should('have.class', 'q-btn__progress--dark')
|
|
13
49
|
})
|
|
14
50
|
})
|
|
15
51
|
})
|
|
16
52
|
|
|
17
53
|
describe('Category: style', () => {
|
|
18
54
|
describe('(prop): round', () => {
|
|
19
|
-
it
|
|
20
|
-
|
|
55
|
+
it('should render a circle shaped button when "round" prop is set to true', () => {
|
|
56
|
+
mountQBtn({
|
|
57
|
+
props: {
|
|
58
|
+
round: true
|
|
59
|
+
}
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
cy.get('.q-btn').should('have.class', 'q-btn--round')
|
|
21
63
|
})
|
|
22
64
|
})
|
|
23
65
|
})
|
|
@@ -25,30 +67,61 @@ describe('Btn API', () => {
|
|
|
25
67
|
|
|
26
68
|
describe('Slots', () => {
|
|
27
69
|
describe('(slot): default', () => {
|
|
28
|
-
it
|
|
29
|
-
|
|
70
|
+
it('should render a button with a label', () => {
|
|
71
|
+
mountQBtn()
|
|
72
|
+
|
|
73
|
+
cy.get('.q-btn').should('contain', defaultOptions.label)
|
|
30
74
|
})
|
|
31
75
|
})
|
|
32
76
|
|
|
33
77
|
describe('(slot): loading', () => {
|
|
34
|
-
it
|
|
35
|
-
|
|
78
|
+
it('should render a button with a loading slot', () => {
|
|
79
|
+
const loadingSlot = 'loading slot'
|
|
80
|
+
|
|
81
|
+
mountQBtn({
|
|
82
|
+
props: {
|
|
83
|
+
loading: true
|
|
84
|
+
},
|
|
85
|
+
slots: {
|
|
86
|
+
loading: loadingSlot
|
|
87
|
+
}
|
|
88
|
+
})
|
|
89
|
+
|
|
90
|
+
cy.get('.q-btn').should('contain', loadingSlot).contains(defaultOptions.label).should('not.be.visible')
|
|
36
91
|
})
|
|
37
92
|
})
|
|
38
93
|
})
|
|
39
94
|
|
|
40
95
|
describe('Events', () => {
|
|
41
96
|
describe('(event): click', () => {
|
|
42
|
-
it
|
|
43
|
-
|
|
97
|
+
it('should emit a click event when the button is clicked', () => {
|
|
98
|
+
const fn = cy.stub()
|
|
99
|
+
|
|
100
|
+
mountQBtn({
|
|
101
|
+
props: {
|
|
102
|
+
onClick: fn
|
|
103
|
+
}
|
|
104
|
+
})
|
|
105
|
+
|
|
106
|
+
cy.get('.q-btn').click()
|
|
107
|
+
.then(() => expect(fn).to.be.calledOnce)
|
|
44
108
|
})
|
|
45
109
|
})
|
|
46
110
|
})
|
|
47
111
|
|
|
48
112
|
describe('Methods', () => {
|
|
49
113
|
describe('(method): click', () => {
|
|
50
|
-
it
|
|
51
|
-
|
|
114
|
+
it('should click the button', () => {
|
|
115
|
+
const fn = cy.stub()
|
|
116
|
+
|
|
117
|
+
mountQBtn({
|
|
118
|
+
props: {
|
|
119
|
+
onClick: fn
|
|
120
|
+
}
|
|
121
|
+
})
|
|
122
|
+
|
|
123
|
+
cy.get('.q-btn').invoke('click')
|
|
124
|
+
.then(() => expect(fn).to.be.calledOnce)
|
|
52
125
|
})
|
|
53
126
|
})
|
|
54
127
|
})
|