quasar 2.4.10 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/BottomSheet.json +4 -0
- package/dist/api/Dialog.json +5 -1
- package/dist/api/LoadingBar.json +7 -0
- package/dist/api/Notify.json +20 -10
- package/dist/api/Platform.json +171 -0
- package/dist/api/QAjaxBar.json +13 -1
- package/dist/api/QBtnDropdown.json +4 -2
- package/dist/api/QCheckbox.json +27 -0
- package/dist/api/QEditor.json +4 -2
- package/dist/api/QExpansionItem.json +6 -3
- package/dist/api/QFab.json +4 -2
- package/dist/api/QFabAction.json +4 -2
- package/dist/api/QFile.json +4 -2
- package/dist/api/QImg.json +1 -2
- package/dist/api/QInnerLoading.json +2 -1
- package/dist/api/QInput.json +4 -2
- package/dist/api/QPagination.json +4 -2
- package/dist/api/QRadio.json +18 -0
- package/dist/api/QRange.json +9 -0
- package/dist/api/QScrollArea.json +13 -5
- package/dist/api/QSelect.json +6 -3
- package/dist/api/QSlider.json +9 -0
- package/dist/api/QSplitter.json +8 -4
- package/dist/api/QTable.json +9 -0
- package/dist/api/QTime.json +8 -2
- package/dist/api/QToggle.json +24 -24
- package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
- package/dist/icon-set/eva-icons.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
- package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
- package/dist/icon-set/line-awesome.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
- package/dist/icon-set/material-icons.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-themify.umd.prod.js +1 -1
- package/dist/icon-set/themify.umd.prod.js +1 -1
- package/dist/lang/ar.umd.prod.js +1 -1
- package/dist/lang/az-Latn.umd.prod.js +1 -1
- package/dist/lang/bg.umd.prod.js +1 -1
- package/dist/lang/bn.umd.prod.js +1 -1
- package/dist/lang/ca.umd.prod.js +1 -1
- package/dist/lang/cs.umd.prod.js +1 -1
- package/dist/lang/da.umd.prod.js +1 -1
- package/dist/lang/de.umd.prod.js +1 -1
- package/dist/lang/el.umd.prod.js +1 -1
- package/dist/lang/en-GB.umd.prod.js +1 -1
- package/dist/lang/en-US.umd.prod.js +1 -1
- package/dist/lang/eo.umd.prod.js +1 -1
- package/dist/lang/es.umd.prod.js +1 -1
- package/dist/lang/et.umd.prod.js +1 -1
- package/dist/lang/fa-IR.umd.prod.js +1 -1
- package/dist/lang/fa.umd.prod.js +1 -1
- package/dist/lang/fi.umd.prod.js +1 -1
- package/dist/lang/fr.umd.prod.js +1 -1
- package/dist/lang/gn.umd.prod.js +1 -1
- package/dist/lang/he.umd.prod.js +1 -1
- package/dist/lang/hr.umd.prod.js +1 -1
- package/dist/lang/hu.umd.prod.js +1 -1
- package/dist/lang/id.umd.prod.js +1 -1
- package/dist/lang/is.umd.prod.js +1 -1
- package/dist/lang/it.umd.prod.js +1 -1
- package/dist/lang/ja.umd.prod.js +1 -1
- package/dist/lang/km.umd.prod.js +1 -1
- package/dist/lang/ko-KR.umd.prod.js +1 -1
- package/dist/lang/kur-CKB.umd.prod.js +1 -1
- package/dist/lang/lt.umd.prod.js +1 -1
- package/dist/lang/lu.umd.prod.js +1 -1
- package/dist/lang/lv.umd.prod.js +1 -1
- package/dist/lang/ml.umd.prod.js +1 -1
- package/dist/lang/ms.umd.prod.js +1 -1
- package/dist/lang/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/sr-CYR.umd.prod.js +1 -1
- package/dist/lang/sr.umd.prod.js +1 -1
- package/dist/lang/sv.umd.prod.js +1 -1
- package/dist/lang/ta.umd.prod.js +1 -1
- package/dist/lang/th.umd.prod.js +1 -1
- package/dist/lang/tr.umd.prod.js +1 -1
- package/dist/lang/ug.umd.prod.js +1 -1
- package/dist/lang/uk.umd.prod.js +1 -1
- package/dist/lang/vi.umd.prod.js +1 -1
- package/dist/lang/zh-CN.umd.prod.js +1 -1
- package/dist/lang/zh-TW.umd.prod.js +1 -1
- package/dist/quasar.cjs.prod.js +2 -2
- package/dist/quasar.css +39 -10
- package/dist/quasar.esm.prod.js +2 -2
- package/dist/quasar.prod.css +1 -1
- package/dist/quasar.rtl.css +56 -23
- package/dist/quasar.rtl.prod.css +1 -1
- package/dist/quasar.sass +32 -11
- package/dist/quasar.umd.js +276 -118
- package/dist/quasar.umd.prod.js +2 -2
- package/dist/ssr-directives/Morph.js +1 -1
- package/dist/transforms/auto-import.json +39 -3
- package/dist/transforms/import-map.json +18 -0
- package/dist/types/api/slider.d.ts +6 -7
- package/dist/types/api/validation.d.ts +1 -1
- package/dist/types/api/vue-prop-types.ts +15 -0
- package/dist/types/api.d.ts +1 -0
- package/dist/types/index.d.ts +246 -188
- package/dist/types/utils/dom.d.ts +4 -2
- package/dist/types/utils.d.ts +3 -1
- package/dist/vetur/quasar-attributes.json +62 -42
- package/dist/vetur/quasar-tags.json +8 -3
- package/dist/web-types/web-types.json +103 -58
- package/package.json +13 -3
- package/src/components/ajax-bar/QAjaxBar.js +22 -12
- package/src/components/ajax-bar/QAjaxBar.json +16 -1
- package/src/components/avatar/__tests__/QAvatar.spec.js +121 -0
- package/src/components/badge/__tests__/QBadge.spec.js +74 -0
- package/src/components/breadcrumbs/QBreadcrumbs.js +1 -1
- package/src/components/btn/__tests__/QBtn.spec.js +55 -0
- package/src/components/btn/__tests__/use-btn.spec.js +189 -0
- package/src/components/btn-dropdown/QBtnDropdown.json +4 -2
- package/src/components/checkbox/QCheckbox.js +34 -3
- package/src/components/checkbox/QCheckbox.json +17 -0
- package/src/components/checkbox/QCheckbox.sass +17 -5
- package/src/components/checkbox/use-checkbox.js +4 -0
- package/src/components/checkbox/use-checkbox.json +18 -0
- package/src/components/chip/__tests__/QChip.spec.js +155 -0
- package/src/components/date/__tests__/QDate.spec.js +189 -0
- package/src/components/date/__tests__/use-datetime.spec.js +83 -0
- package/src/components/dialog/QDialog.js +1 -1
- package/src/components/dialog/__tests__/QDialog.spec.js +129 -0
- package/src/components/editor/QEditor.js +1 -1
- package/src/components/editor/QEditor.json +3 -1
- package/src/components/editor/__tests__/QEditor.spec.js +195 -0
- package/src/components/expansion-item/QExpansionItem.json +6 -3
- package/src/components/fab/use-fab.json +4 -2
- package/src/components/file/QFile.json +4 -2
- package/src/components/form/QForm.js +12 -2
- package/src/components/img/QImg.json +2 -3
- package/src/components/infinite-scroll/QInfiniteScroll.js +3 -2
- package/src/components/inner-loading/QInnerLoading.json +2 -1
- package/src/components/input/QInput.js +10 -1
- package/src/components/input/QInput.json +4 -2
- package/src/components/input/__tests__/QInput.spec.js +105 -0
- package/src/components/input/__tests__/use-mask.spec.js +29 -0
- package/src/components/menu/QMenu.js +2 -1
- package/src/components/menu/__tests__/QMenu.spec.js +610 -0
- package/src/components/menu/__tests__/WrapperOne.vue +51 -0
- package/src/components/menu/__tests__/WrapperTwo.vue +38 -0
- package/src/components/pagination/QPagination.json +4 -2
- package/src/components/radio/QRadio.js +26 -1
- package/src/components/radio/QRadio.json +16 -0
- package/src/components/radio/QRadio.sass +17 -6
- package/src/components/scroll-area/QScrollArea.js +21 -1
- package/src/components/scroll-area/QScrollArea.json +13 -5
- package/src/components/select/QSelect.js +13 -9
- package/src/components/select/QSelect.json +6 -3
- package/src/components/select/QSelect.sass +1 -0
- package/src/components/select/__tests__/QSelect.spec.js +2003 -0
- package/src/components/select/__tests__/WrapperOne.vue +28 -0
- package/src/components/slider/use-slider.json +9 -0
- package/src/components/splitter/QSplitter.json +8 -4
- package/src/components/stepper/QStep.js +19 -14
- package/src/components/stepper/QStepper.sass +3 -0
- package/src/components/table/QTable.json +9 -0
- package/src/components/table/__tests__/QTable.spec.js +635 -0
- package/src/components/table/__tests__/QTd.spec.js +35 -0
- package/src/components/table/__tests__/QTh.spec.js +27 -0
- package/src/components/table/__tests__/QTr.spec.js +27 -0
- package/src/components/tabs/QTabs.js +10 -2
- package/src/components/tabs/__tests__/QRouteTab.spec.js +9 -0
- package/src/components/tabs/__tests__/QTab.spec.js +79 -0
- package/src/components/tabs/__tests__/QTabs.spec.js +147 -0
- package/src/components/time/QTime.json +2 -2
- package/src/components/toggle/QToggle.js +5 -13
- package/src/components/toggle/QToggle.json +3 -12
- package/src/components/tree/QTree.js +5 -3
- package/src/components/uploader/__tests__/QUploader.spec.js +161 -0
- package/src/components/virtual-scroll/use-virtual-scroll.js +20 -9
- package/src/composables/private/__tests__/FieldWrapper.vue +39 -0
- package/src/composables/private/__tests__/use-anchor.spec.js +99 -0
- package/src/composables/private/__tests__/use-field.spec.js +351 -0
- package/src/composables/private/__tests__/use-file.spec.js +69 -0
- package/src/composables/private/__tests__/use-form.spec.js +11 -0
- package/src/composables/private/__tests__/use-fullscreen.spec.js +37 -0
- package/src/composables/private/__tests__/use-model-toggle.spec.js +306 -0
- package/src/composables/private/__tests__/use-portal.spec.js +4 -0
- package/src/composables/private/__tests__/use-router-link.spec.js +55 -0
- package/src/composables/private/__tests__/use-size.spec.js +37 -0
- package/src/composables/private/__tests__/use-transition.spec.js +108 -0
- package/src/composables/private/__tests__/use-validate.spec.js +111 -0
- package/src/composables/private/use-field.js +16 -9
- package/src/composables/private/use-fullscreen.js +1 -1
- package/src/composables/private/use-model-toggle.js +1 -1
- package/src/composables/private/use-validate.js +9 -5
- package/src/plugins/BottomSheet.json +1 -0
- package/src/plugins/Dialog.json +1 -0
- package/src/plugins/LoadingBar.js +3 -3
- package/src/plugins/LoadingBar.json +8 -0
- package/src/plugins/Meta.js +1 -1
- package/src/plugins/Notify.json +20 -10
- package/src/plugins/Platform.js +15 -8
- package/src/plugins/Platform.json +166 -0
- package/src/plugins/Screen.js +11 -8
- package/src/utils/date.js +5 -5
- package/src/utils/private/global-dialog.json +3 -0
- package/src/utils/private/vm.js +14 -8
|
@@ -51,7 +51,8 @@
|
|
|
51
51
|
},
|
|
52
52
|
|
|
53
53
|
"input-style": {
|
|
54
|
-
"type": [ "
|
|
54
|
+
"type": [ "String", "Array", "Object" ],
|
|
55
|
+
"tsType": "VueStyleProp",
|
|
55
56
|
"desc": "Style definitions to be attributed to the input (if using one)",
|
|
56
57
|
"examples": [
|
|
57
58
|
"background-color: #ff0000",
|
|
@@ -61,7 +62,8 @@
|
|
|
61
62
|
},
|
|
62
63
|
|
|
63
64
|
"input-class": {
|
|
64
|
-
"type": [ "
|
|
65
|
+
"type": [ "String", "Array", "Object" ],
|
|
66
|
+
"tsType": "VueClassProp",
|
|
65
67
|
"desc": "Class definitions to be attributed to the input (if using one)",
|
|
66
68
|
"examples": [
|
|
67
69
|
"my-special-class",
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { h, ref, computed, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
|
+
import QIcon from '../icon/QIcon.js'
|
|
4
|
+
|
|
3
5
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
4
6
|
import useSize, { useSizeProps } from '../../composables/private/use-size.js'
|
|
5
7
|
import useRefocusTarget from '../../composables/private/use-refocus-target.js'
|
|
@@ -11,6 +13,7 @@ import { stopAndPrevent } from '../../utils/event.js'
|
|
|
11
13
|
import { hSlot, hMergeSlot } from '../../utils/private/render.js'
|
|
12
14
|
|
|
13
15
|
const svg = h('svg', {
|
|
16
|
+
key: 'svg',
|
|
14
17
|
class: 'q-radio__bg absolute non-selectable',
|
|
15
18
|
viewBox: '0 0 24 24',
|
|
16
19
|
'aria-hidden': 'true'
|
|
@@ -39,6 +42,9 @@ export default createComponent({
|
|
|
39
42
|
label: String,
|
|
40
43
|
leftLabel: Boolean,
|
|
41
44
|
|
|
45
|
+
checkedIcon: String,
|
|
46
|
+
uncheckedIcon: String,
|
|
47
|
+
|
|
42
48
|
color: String,
|
|
43
49
|
keepColor: Boolean,
|
|
44
50
|
dense: Boolean,
|
|
@@ -80,6 +86,13 @@ export default createComponent({
|
|
|
80
86
|
+ `q-radio__inner--${ isTrue.value === true ? 'truthy' : 'falsy' }${ color }`
|
|
81
87
|
})
|
|
82
88
|
|
|
89
|
+
const icon = computed(() =>
|
|
90
|
+
(isTrue.value === true
|
|
91
|
+
? props.checkedIcon
|
|
92
|
+
: props.uncheckedIcon
|
|
93
|
+
) || null
|
|
94
|
+
)
|
|
95
|
+
|
|
83
96
|
const tabindex = computed(() => (
|
|
84
97
|
props.disable === true ? -1 : props.tabindex || 0
|
|
85
98
|
))
|
|
@@ -125,7 +138,19 @@ export default createComponent({
|
|
|
125
138
|
Object.assign(proxy, { set: onClick })
|
|
126
139
|
|
|
127
140
|
return () => {
|
|
128
|
-
const content =
|
|
141
|
+
const content = icon.value !== null
|
|
142
|
+
? [
|
|
143
|
+
h('div', {
|
|
144
|
+
key: 'icon',
|
|
145
|
+
class: 'q-radio__icon-container absolute flex flex-center no-wrap'
|
|
146
|
+
}, [
|
|
147
|
+
h(QIcon, {
|
|
148
|
+
class: 'q-radio__icon',
|
|
149
|
+
name: icon.value
|
|
150
|
+
})
|
|
151
|
+
])
|
|
152
|
+
]
|
|
153
|
+
: [ svg ]
|
|
129
154
|
|
|
130
155
|
props.disable !== true && injectFormInput(
|
|
131
156
|
content,
|
|
@@ -33,6 +33,22 @@
|
|
|
33
33
|
"category": "label"
|
|
34
34
|
},
|
|
35
35
|
|
|
36
|
+
"checked-icon": {
|
|
37
|
+
"type": "String",
|
|
38
|
+
"desc": "The icon to be used when selected (instead of the default design)",
|
|
39
|
+
"examples": [ "visibility" ],
|
|
40
|
+
"category": "icons",
|
|
41
|
+
"addedIn": "v2.5"
|
|
42
|
+
},
|
|
43
|
+
|
|
44
|
+
"unchecked-icon": {
|
|
45
|
+
"type": "String",
|
|
46
|
+
"desc": "The icon to be used when un-selected (instead of the default design)",
|
|
47
|
+
"examples": [ "visibility_off" ],
|
|
48
|
+
"category": "icons",
|
|
49
|
+
"addedIn": "v2.5"
|
|
50
|
+
},
|
|
51
|
+
|
|
36
52
|
"color": {
|
|
37
53
|
"extends": "color"
|
|
38
54
|
},
|
|
@@ -3,19 +3,26 @@ $radio-transition: .22s cubic-bezier(0,0,.2,1) 0ms
|
|
|
3
3
|
.q-radio
|
|
4
4
|
vertical-align: middle
|
|
5
5
|
|
|
6
|
-
&
|
|
6
|
+
&__native
|
|
7
|
+
width: 1px
|
|
8
|
+
height: 1px
|
|
9
|
+
|
|
10
|
+
&__bg,
|
|
11
|
+
&__icon-container
|
|
7
12
|
top: 25%
|
|
8
13
|
left: 25%
|
|
9
14
|
width: 50%
|
|
10
15
|
height: 50%
|
|
11
|
-
-
|
|
16
|
+
user-select: none
|
|
12
17
|
|
|
18
|
+
&__bg
|
|
19
|
+
-webkit-print-color-adjust: exact
|
|
13
20
|
path
|
|
14
21
|
fill: currentColor
|
|
15
22
|
|
|
16
|
-
&
|
|
17
|
-
|
|
18
|
-
|
|
23
|
+
&__icon
|
|
24
|
+
color: currentColor
|
|
25
|
+
font-size: .6em
|
|
19
26
|
|
|
20
27
|
&__check
|
|
21
28
|
transform-origin: 50% 50%
|
|
@@ -49,12 +56,16 @@ $radio-transition: .22s cubic-bezier(0,0,.2,1) 0ms
|
|
|
49
56
|
|
|
50
57
|
&--dense
|
|
51
58
|
|
|
59
|
+
.q-checkbox__icon
|
|
60
|
+
font-size: .6em
|
|
61
|
+
|
|
52
62
|
.q-radio__inner
|
|
53
63
|
width: .5em
|
|
54
64
|
min-width: .5em
|
|
55
65
|
height: .5em
|
|
56
66
|
|
|
57
|
-
.q-radio__bg
|
|
67
|
+
.q-radio__bg,
|
|
68
|
+
.q-radio__icon-container
|
|
58
69
|
left: 0
|
|
59
70
|
top: 0
|
|
60
71
|
width: 100%
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h, ref, computed, withDirectives, onBeforeUnmount, getCurrentInstance } from 'vue'
|
|
1
|
+
import { h, ref, computed, withDirectives, onActivated, onDeactivated, onBeforeUnmount, getCurrentInstance } from 'vue'
|
|
2
2
|
|
|
3
3
|
import useDark, { useDarkProps } from '../../composables/private/use-dark.js'
|
|
4
4
|
|
|
@@ -380,6 +380,26 @@ export default createComponent({
|
|
|
380
380
|
}
|
|
381
381
|
})
|
|
382
382
|
|
|
383
|
+
let scrollPosition = null
|
|
384
|
+
|
|
385
|
+
onDeactivated(() => {
|
|
386
|
+
scrollPosition = {
|
|
387
|
+
top: scroll.vertical.position.value,
|
|
388
|
+
left: scroll.horizontal.position.value
|
|
389
|
+
}
|
|
390
|
+
})
|
|
391
|
+
|
|
392
|
+
onActivated(() => {
|
|
393
|
+
if (scrollPosition === null) { return }
|
|
394
|
+
|
|
395
|
+
const scrollTarget = targetRef.value
|
|
396
|
+
|
|
397
|
+
if (scrollTarget !== null) {
|
|
398
|
+
setHorizontalScrollPosition(scrollTarget, scrollPosition.left)
|
|
399
|
+
setVerticalScrollPosition(scrollTarget, scrollPosition.top)
|
|
400
|
+
}
|
|
401
|
+
})
|
|
402
|
+
|
|
383
403
|
onBeforeUnmount(emitScroll.cancel)
|
|
384
404
|
|
|
385
405
|
return () => {
|
|
@@ -9,21 +9,24 @@
|
|
|
9
9
|
},
|
|
10
10
|
|
|
11
11
|
"bar-style": {
|
|
12
|
-
"type": [ "
|
|
12
|
+
"type": [ "String", "Array", "Object" ],
|
|
13
|
+
"tsType": "VueStyleProp",
|
|
13
14
|
"desc": "Object with CSS properties and values for custom styling the scrollbars (both vertical and horizontal)",
|
|
14
15
|
"examples": [ ":bar-style=\"{ borderRadius: '5px', background: 'red', opacity: 1 }\"" ],
|
|
15
16
|
"category": "style"
|
|
16
17
|
},
|
|
17
18
|
|
|
18
19
|
"vertical-bar-style": {
|
|
19
|
-
"type": [ "
|
|
20
|
+
"type": [ "String", "Array", "Object" ],
|
|
21
|
+
"tsType": "VueStyleProp",
|
|
20
22
|
"desc": "Object with CSS properties and values for custom styling the vertical scrollbar; Is applied on top of 'bar-style' prop",
|
|
21
23
|
"examples": [ ":bar-style=\"{ right: '4px', borderRadius: '5px', background: 'red', width: '10px', opacity: 1 }\"" ],
|
|
22
24
|
"category": "style"
|
|
23
25
|
},
|
|
24
26
|
|
|
25
27
|
"horizontal-bar-style": {
|
|
26
|
-
"type": [ "
|
|
28
|
+
"type": [ "String", "Array", "Object" ],
|
|
29
|
+
"tsType": "VueStyleProp",
|
|
27
30
|
"desc": "Object with CSS properties and values for custom styling the horizontal scrollbar; Is applied on top of 'bar-style' prop",
|
|
28
31
|
"examples": [ ":bar-style=\"{ bottom: '4px', borderRadius: '5px', background: 'red', height: '10px', opacity: 1 }\"" ],
|
|
29
32
|
"category": "style"
|
|
@@ -31,6 +34,7 @@
|
|
|
31
34
|
|
|
32
35
|
"thumb-style": {
|
|
33
36
|
"type": "Object",
|
|
37
|
+
"tsType": "VueStyleObjectProp",
|
|
34
38
|
"desc": "Object with CSS properties and values for custom styling the thumb of scrollbars (both vertical and horizontal)",
|
|
35
39
|
"examples": [ ":thumb-style=\"{ right: '4px', borderRadius: '5px', background: 'red', width: '10px', opacity: 1 }\"" ],
|
|
36
40
|
"category": "style"
|
|
@@ -38,6 +42,7 @@
|
|
|
38
42
|
|
|
39
43
|
"vertical-thumb-style": {
|
|
40
44
|
"type": "Object",
|
|
45
|
+
"tsType": "VueStyleObjectProp",
|
|
41
46
|
"desc": "Object with CSS properties and values for custom styling the thumb of the vertical scrollbar; Is applied on top of 'thumb-style' prop",
|
|
42
47
|
"examples": [ ":thumb-style=\"{ right: '4px', borderRadius: '5px', background: 'red', width: '10px', opacity: 1 }\"" ],
|
|
43
48
|
"category": "style"
|
|
@@ -45,20 +50,23 @@
|
|
|
45
50
|
|
|
46
51
|
"horizontal-thumb-style": {
|
|
47
52
|
"type": "Object",
|
|
53
|
+
"tsType": "VueStyleObjectProp",
|
|
48
54
|
"desc": "Object with CSS properties and values for custom styling the thumb of the horizontal scrollbar; Is applied on top of 'thumb-style' prop",
|
|
49
55
|
"examples": [ ":thumb-style=\"{ bottom: '4px', borderRadius: '5px', background: 'red', height: '10px', opacity: 1 }\"" ],
|
|
50
56
|
"category": "style"
|
|
51
57
|
},
|
|
52
58
|
|
|
53
59
|
"content-style": {
|
|
54
|
-
"type": [ "
|
|
60
|
+
"type": [ "String", "Array", "Object" ],
|
|
61
|
+
"tsType": "VueStyleProp",
|
|
55
62
|
"desc": "Object with CSS properties and values for styling the container of QScrollArea",
|
|
56
63
|
"examples": [ ":content-style=\"{ backgroundColor: '#C0C0C0' }\"" ],
|
|
57
64
|
"category": "style"
|
|
58
65
|
},
|
|
59
66
|
|
|
60
67
|
"content-active-style": {
|
|
61
|
-
"type": [ "
|
|
68
|
+
"type": [ "String", "Array", "Object" ],
|
|
69
|
+
"tsType": "VueStyleProp",
|
|
62
70
|
"desc": "Object with CSS properties and values for styling the container of QScrollArea when scroll area becomes active (is mouse hovered)",
|
|
63
71
|
"examples": [ ":content-active-style=\"{ backgroundColor: 'white' }\"" ],
|
|
64
72
|
"category": "style"
|
|
@@ -610,8 +610,12 @@ export default createComponent({
|
|
|
610
610
|
return innerOptionsValue.value.find(v => isDeepEqual(v, val)) !== void 0
|
|
611
611
|
}
|
|
612
612
|
|
|
613
|
-
function selectInputText () {
|
|
614
|
-
if (
|
|
613
|
+
function selectInputText (e) {
|
|
614
|
+
if (
|
|
615
|
+
props.useInput === true
|
|
616
|
+
&& targetRef.value !== null
|
|
617
|
+
&& (e === void 0 || (targetRef.value === e.target && e.target.value === selectedString.value))
|
|
618
|
+
) {
|
|
615
619
|
targetRef.value.select()
|
|
616
620
|
}
|
|
617
621
|
}
|
|
@@ -981,7 +985,7 @@ export default createComponent({
|
|
|
981
985
|
type: 'search',
|
|
982
986
|
...comboboxAttrs.value,
|
|
983
987
|
...state.splitAttrs.attributes.value,
|
|
984
|
-
id: state.targetUid.value,
|
|
988
|
+
id: isTarget === true ? state.targetUid.value : void 0,
|
|
985
989
|
maxlength: props.maxlength,
|
|
986
990
|
autocomplete: props.autocomplete,
|
|
987
991
|
'data-autofocus': (fromDialog !== true && props.autofocus === true) || void 0,
|
|
@@ -992,7 +996,7 @@ export default createComponent({
|
|
|
992
996
|
|
|
993
997
|
if (fromDialog !== true && hasDialog === true) {
|
|
994
998
|
if (Array.isArray(data.class) === true) {
|
|
995
|
-
data.class
|
|
999
|
+
data.class = [ ...data.class, 'no-pointer-events' ]
|
|
996
1000
|
}
|
|
997
1001
|
else {
|
|
998
1002
|
data.class += ' no-pointer-events'
|
|
@@ -1385,7 +1389,7 @@ export default createComponent({
|
|
|
1385
1389
|
filter, updateMenuPosition, updateInputValue,
|
|
1386
1390
|
isOptionSelected,
|
|
1387
1391
|
getEmittingOptionValue,
|
|
1388
|
-
isOptionDisabled: (...args) => isOptionDisabled.value.apply(null, args),
|
|
1392
|
+
isOptionDisabled: (...args) => isOptionDisabled.value.apply(null, args) === true,
|
|
1389
1393
|
getOptionValue: (...args) => getOptionValue.value.apply(null, args),
|
|
1390
1394
|
getOptionLabel: (...args) => getOptionLabel.value.apply(null, args)
|
|
1391
1395
|
})
|
|
@@ -1458,13 +1462,13 @@ export default createComponent({
|
|
|
1458
1462
|
child.push(getInput(fromDialog, isTarget))
|
|
1459
1463
|
}
|
|
1460
1464
|
// there can be only one (when dialog is opened the control in dialog should be target)
|
|
1461
|
-
else if (state.editable.value === true
|
|
1465
|
+
else if (state.editable.value === true) {
|
|
1462
1466
|
child.push(
|
|
1463
1467
|
h('div', {
|
|
1464
|
-
ref: targetRef,
|
|
1468
|
+
ref: isTarget === true ? targetRef : void 0,
|
|
1465
1469
|
key: 'd_t',
|
|
1466
1470
|
class: 'q-select__focus-target',
|
|
1467
|
-
id: state.targetUid.value,
|
|
1471
|
+
id: isTarget === true ? state.targetUid.value : void 0,
|
|
1468
1472
|
...comboboxAttrs.value,
|
|
1469
1473
|
onKeydown: onTargetKeydown,
|
|
1470
1474
|
onKeyup: onTargetKeyup,
|
|
@@ -1472,7 +1476,7 @@ export default createComponent({
|
|
|
1472
1476
|
})
|
|
1473
1477
|
)
|
|
1474
1478
|
|
|
1475
|
-
if (typeof props.autocomplete === 'string' && props.autocomplete.length > 0) {
|
|
1479
|
+
if (isTarget === true && typeof props.autocomplete === 'string' && props.autocomplete.length > 0) {
|
|
1476
1480
|
child.push(
|
|
1477
1481
|
h('input', {
|
|
1478
1482
|
class: 'q-select__autocomplete-input',
|
|
@@ -224,7 +224,8 @@
|
|
|
224
224
|
},
|
|
225
225
|
|
|
226
226
|
"popup-content-style": {
|
|
227
|
-
"type": [ "
|
|
227
|
+
"type": [ "String", "Array", "Object" ],
|
|
228
|
+
"tsType": "VueStyleProp",
|
|
228
229
|
"desc": "Style definitions to be attributed to the popup content",
|
|
229
230
|
"examples": [
|
|
230
231
|
"background-color: #ff0000",
|
|
@@ -279,7 +280,8 @@
|
|
|
279
280
|
},
|
|
280
281
|
|
|
281
282
|
"input-class": {
|
|
282
|
-
"type": [ "
|
|
283
|
+
"type": [ "String", "Array", "Object" ],
|
|
284
|
+
"tsType": "VueClassProp",
|
|
283
285
|
"desc": "Class definitions to be attributed to the underlying input tag",
|
|
284
286
|
"examples": [
|
|
285
287
|
"my-special-class",
|
|
@@ -289,7 +291,8 @@
|
|
|
289
291
|
},
|
|
290
292
|
|
|
291
293
|
"input-style": {
|
|
292
|
-
"type": [ "
|
|
294
|
+
"type": [ "String", "Array", "Object" ],
|
|
295
|
+
"tsType": "VueStyleProp",
|
|
293
296
|
"desc": "Style definitions to be attributed to the underlying input tag",
|
|
294
297
|
"examples": [
|
|
295
298
|
"background-color: #ff0000",
|