@gitlab/ui 130.1.0 → 130.1.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/components/base/button/button.js +1 -2
- package/dist/vendor/bootstrap-vue/src/mixins/dropdown.js +46 -11
- package/dist/vendor/bootstrap-vue/src/mixins/form-control.js +30 -7
- package/dist/vendor/bootstrap-vue/src/mixins/form-custom.js +5 -2
- package/dist/vendor/bootstrap-vue/src/mixins/form-options.js +26 -7
- package/dist/vendor/bootstrap-vue/src/mixins/form-size.js +5 -2
- package/dist/vendor/bootstrap-vue/src/mixins/form-state.js +5 -2
- package/dist/vendor/bootstrap-vue/src/mixins/form-text.js +56 -13
- package/dist/vendor/bootstrap-vue/src/mixins/id.js +5 -2
- package/package.json +2 -2
- package/src/components/base/button/button.vue +1 -2
- package/src/vendor/bootstrap-vue/src/mixins/dropdown.js +46 -11
- package/src/vendor/bootstrap-vue/src/mixins/form-control.js +30 -7
- package/src/vendor/bootstrap-vue/src/mixins/form-custom.js +5 -2
- package/src/vendor/bootstrap-vue/src/mixins/form-options.js +26 -7
- package/src/vendor/bootstrap-vue/src/mixins/form-size.js +5 -2
- package/src/vendor/bootstrap-vue/src/mixins/form-state.js +5 -2
- package/src/vendor/bootstrap-vue/src/mixins/form-text.js +56 -13
- package/src/vendor/bootstrap-vue/src/mixins/id.js +5 -2
|
@@ -347,8 +347,7 @@ var script = {
|
|
|
347
347
|
}
|
|
348
348
|
},
|
|
349
349
|
mounted() {
|
|
350
|
-
|
|
351
|
-
if (!this.$slots.default && !this.$attrs['aria-label'] && !this.$props.label) {
|
|
350
|
+
if (!('default' in this.$scopedSlots) && !this.$attrs['aria-label'] && !this.label) {
|
|
352
351
|
logWarning('Accessible name missing. Please add inner text or aria-label.', {
|
|
353
352
|
name: 'GlButton',
|
|
354
353
|
element: this.$el
|
|
@@ -4,13 +4,12 @@ import { NAME_DROPDOWN } from '../constants/components';
|
|
|
4
4
|
import { EVENT_NAME_SHOWN, EVENT_NAME_HIDDEN, EVENT_NAME_TOGGLE, EVENT_NAME_CLICK, EVENT_NAME_SHOW, EVENT_NAME_HIDE } from '../constants/events';
|
|
5
5
|
import { CODE_ENTER, CODE_SPACE, CODE_DOWN, CODE_ESC, CODE_UP } from '../constants/key-codes';
|
|
6
6
|
import { PLACEMENT_TOP_END, PLACEMENT_TOP_START, PLACEMENT_BOTTOM_START, PLACEMENT_RIGHT_START, PLACEMENT_LEFT_START, PLACEMENT_BOTTOM_END } from '../constants/popper';
|
|
7
|
-
import { PROP_TYPE_STRING, PROP_TYPE_BOOLEAN,
|
|
7
|
+
import { PROP_TYPE_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER, PROP_TYPE_OBJECT } from '../constants/props';
|
|
8
8
|
import { HTMLElement } from '../constants/safe-types';
|
|
9
9
|
import { BvEvent } from '../utils/bv-event.class';
|
|
10
10
|
import { requestAF, contains, closest, attemptFocus, selectAll, isVisible } from '../utils/dom';
|
|
11
11
|
import { getRootEventName, stopEvent } from '../utils/events';
|
|
12
12
|
import { sortKeys, mergeDeep } from '../utils/object';
|
|
13
|
-
import { makeProp } from '../utils/props';
|
|
14
13
|
import { warn } from '../utils/warn';
|
|
15
14
|
import { clickOutMixin } from './click-out';
|
|
16
15
|
import { focusInMixin } from './focus-in';
|
|
@@ -38,22 +37,58 @@ const props = sortKeys({
|
|
|
38
37
|
...props$1,
|
|
39
38
|
// String: `scrollParent`, `window` or `viewport`
|
|
40
39
|
// HTMLElement: HTML Element reference
|
|
41
|
-
boundary:
|
|
42
|
-
|
|
40
|
+
boundary: {
|
|
41
|
+
type: [HTMLElement, PROP_TYPE_STRING],
|
|
42
|
+
required: false,
|
|
43
|
+
default: 'scrollParent'
|
|
44
|
+
},
|
|
45
|
+
disabled: {
|
|
46
|
+
type: PROP_TYPE_BOOLEAN,
|
|
47
|
+
required: false,
|
|
48
|
+
default: false
|
|
49
|
+
},
|
|
43
50
|
// Place left if possible
|
|
44
|
-
dropleft:
|
|
51
|
+
dropleft: {
|
|
52
|
+
type: PROP_TYPE_BOOLEAN,
|
|
53
|
+
required: false,
|
|
54
|
+
default: false
|
|
55
|
+
},
|
|
45
56
|
// Place right if possible
|
|
46
|
-
dropright:
|
|
57
|
+
dropright: {
|
|
58
|
+
type: PROP_TYPE_BOOLEAN,
|
|
59
|
+
required: false,
|
|
60
|
+
default: false
|
|
61
|
+
},
|
|
47
62
|
// Place on top if possible
|
|
48
|
-
dropup:
|
|
63
|
+
dropup: {
|
|
64
|
+
type: PROP_TYPE_BOOLEAN,
|
|
65
|
+
required: false,
|
|
66
|
+
default: false
|
|
67
|
+
},
|
|
49
68
|
// Disable auto-flipping of menu from bottom <=> top
|
|
50
|
-
noFlip:
|
|
69
|
+
noFlip: {
|
|
70
|
+
type: PROP_TYPE_BOOLEAN,
|
|
71
|
+
required: false,
|
|
72
|
+
default: false
|
|
73
|
+
},
|
|
51
74
|
// Number of pixels or a CSS unit value to offset menu
|
|
52
75
|
// (i.e. `1px`, `1rem`, etc.)
|
|
53
|
-
offset:
|
|
54
|
-
|
|
76
|
+
offset: {
|
|
77
|
+
type: [PROP_TYPE_NUMBER, PROP_TYPE_STRING],
|
|
78
|
+
required: false,
|
|
79
|
+
default: 0
|
|
80
|
+
},
|
|
81
|
+
popperOpts: {
|
|
82
|
+
type: PROP_TYPE_OBJECT,
|
|
83
|
+
required: false,
|
|
84
|
+
default: () => ({})
|
|
85
|
+
},
|
|
55
86
|
// Right align menu (default is left align)
|
|
56
|
-
right:
|
|
87
|
+
right: {
|
|
88
|
+
type: PROP_TYPE_BOOLEAN,
|
|
89
|
+
required: false,
|
|
90
|
+
default: false
|
|
91
|
+
}
|
|
57
92
|
});
|
|
58
93
|
|
|
59
94
|
// --- Mixin ---
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { extend } from '../vue';
|
|
2
2
|
import { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';
|
|
3
3
|
import { requestAF, isVisible, matches, select, attemptFocus } from '../utils/dom';
|
|
4
|
-
import { makeProp } from '../utils/props';
|
|
5
4
|
|
|
6
5
|
// --- Constants ---
|
|
7
6
|
|
|
@@ -10,12 +9,36 @@ const SELECTOR = 'input, textarea, select';
|
|
|
10
9
|
// --- Props ---
|
|
11
10
|
|
|
12
11
|
const props = {
|
|
13
|
-
autofocus:
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
autofocus: {
|
|
13
|
+
type: PROP_TYPE_BOOLEAN,
|
|
14
|
+
required: false,
|
|
15
|
+
default: false
|
|
16
|
+
},
|
|
17
|
+
disabled: {
|
|
18
|
+
type: PROP_TYPE_BOOLEAN,
|
|
19
|
+
required: false,
|
|
20
|
+
default: false
|
|
21
|
+
},
|
|
22
|
+
form: {
|
|
23
|
+
type: PROP_TYPE_STRING,
|
|
24
|
+
required: false,
|
|
25
|
+
default: undefined
|
|
26
|
+
},
|
|
27
|
+
id: {
|
|
28
|
+
type: PROP_TYPE_STRING,
|
|
29
|
+
required: false,
|
|
30
|
+
default: undefined
|
|
31
|
+
},
|
|
32
|
+
name: {
|
|
33
|
+
type: PROP_TYPE_STRING,
|
|
34
|
+
required: false,
|
|
35
|
+
default: undefined
|
|
36
|
+
},
|
|
37
|
+
required: {
|
|
38
|
+
type: PROP_TYPE_BOOLEAN,
|
|
39
|
+
required: false,
|
|
40
|
+
default: false
|
|
41
|
+
}
|
|
19
42
|
};
|
|
20
43
|
|
|
21
44
|
// --- Mixin ---
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { extend } from '../vue';
|
|
2
2
|
import { PROP_TYPE_BOOLEAN } from '../constants/props';
|
|
3
|
-
import { makeProp } from '../utils/props';
|
|
4
3
|
|
|
5
4
|
// --- Props ---
|
|
6
5
|
|
|
7
6
|
const props = {
|
|
8
|
-
plain:
|
|
7
|
+
plain: {
|
|
8
|
+
type: PROP_TYPE_BOOLEAN,
|
|
9
|
+
required: false,
|
|
10
|
+
default: false
|
|
11
|
+
}
|
|
9
12
|
};
|
|
10
13
|
|
|
11
14
|
// --- Mixin ---
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { extend } from '../vue';
|
|
2
|
-
import { PROP_TYPE_STRING,
|
|
2
|
+
import { PROP_TYPE_STRING, PROP_TYPE_ARRAY, PROP_TYPE_OBJECT } from '../constants/props';
|
|
3
3
|
import { get } from '../utils/get';
|
|
4
4
|
import { stripTags } from '../utils/html';
|
|
5
5
|
import { isPlainObject, isUndefined, isArray } from '../utils/inspect';
|
|
6
6
|
import { keys } from '../utils/object';
|
|
7
|
-
import { makeProp } from '../utils/props';
|
|
8
7
|
import { warn } from '../utils/warn';
|
|
9
8
|
|
|
10
9
|
// --- Constants ---
|
|
@@ -14,11 +13,31 @@ const OPTIONS_OBJECT_DEPRECATED_MSG = 'Setting prop "options" to an object is de
|
|
|
14
13
|
// --- Props ---
|
|
15
14
|
|
|
16
15
|
const props = {
|
|
17
|
-
disabledField:
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
disabledField: {
|
|
17
|
+
type: PROP_TYPE_STRING,
|
|
18
|
+
required: false,
|
|
19
|
+
default: 'disabled'
|
|
20
|
+
},
|
|
21
|
+
htmlField: {
|
|
22
|
+
type: PROP_TYPE_STRING,
|
|
23
|
+
required: false,
|
|
24
|
+
default: 'html'
|
|
25
|
+
},
|
|
26
|
+
options: {
|
|
27
|
+
type: [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT],
|
|
28
|
+
required: false,
|
|
29
|
+
default: () => []
|
|
30
|
+
},
|
|
31
|
+
textField: {
|
|
32
|
+
type: PROP_TYPE_STRING,
|
|
33
|
+
required: false,
|
|
34
|
+
default: 'text'
|
|
35
|
+
},
|
|
36
|
+
valueField: {
|
|
37
|
+
type: PROP_TYPE_STRING,
|
|
38
|
+
required: false,
|
|
39
|
+
default: 'value'
|
|
40
|
+
}
|
|
22
41
|
};
|
|
23
42
|
|
|
24
43
|
// --- Mixin ---
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { extend } from '../vue';
|
|
2
2
|
import { PROP_TYPE_STRING } from '../constants/props';
|
|
3
|
-
import { makeProp } from '../utils/props';
|
|
4
3
|
|
|
5
4
|
// --- Props ---
|
|
6
5
|
|
|
7
6
|
const props = {
|
|
8
|
-
size:
|
|
7
|
+
size: {
|
|
8
|
+
type: PROP_TYPE_STRING,
|
|
9
|
+
required: false,
|
|
10
|
+
default: undefined
|
|
11
|
+
}
|
|
9
12
|
};
|
|
10
13
|
|
|
11
14
|
// --- Mixin ---
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { extend } from '../vue';
|
|
2
2
|
import { PROP_TYPE_BOOLEAN } from '../constants/props';
|
|
3
3
|
import { isBoolean } from '../utils/inspect';
|
|
4
|
-
import { makeProp } from '../utils/props';
|
|
5
4
|
import { safeVueInstance } from '../utils/safe-vue-instance';
|
|
6
5
|
|
|
7
6
|
/* Form control contextual state class computation
|
|
@@ -17,7 +16,11 @@ import { safeVueInstance } from '../utils/safe-vue-instance';
|
|
|
17
16
|
|
|
18
17
|
const props = {
|
|
19
18
|
// Tri-state prop: true, false, null (or undefined)
|
|
20
|
-
state:
|
|
19
|
+
state: {
|
|
20
|
+
type: PROP_TYPE_BOOLEAN,
|
|
21
|
+
required: false,
|
|
22
|
+
default: null
|
|
23
|
+
}
|
|
21
24
|
};
|
|
22
25
|
|
|
23
26
|
// --- Mixin ---
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { extend } from '../vue';
|
|
2
2
|
import { EVENT_NAME_UPDATE, EVENT_NAME_INPUT, EVENT_NAME_CHANGE, EVENT_NAME_BLUR } from '../constants/events';
|
|
3
|
-
import { PROP_TYPE_NUMBER_STRING,
|
|
3
|
+
import { PROP_TYPE_NUMBER_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING, PROP_TYPE_NUMBER, PROP_TYPE_FUNCTION } from '../constants/props';
|
|
4
4
|
import { attemptFocus, attemptBlur } from '../utils/dom';
|
|
5
5
|
import { stopEvent } from '../utils/events';
|
|
6
6
|
import { mathMax } from '../utils/math';
|
|
@@ -8,7 +8,6 @@ import { makeModelMixin } from '../utils/model';
|
|
|
8
8
|
import { toInteger, toFloat } from '../utils/number';
|
|
9
9
|
import { sortKeys } from '../utils/object';
|
|
10
10
|
import { isFunction } from '../utils/inspect';
|
|
11
|
-
import { makeProp } from '../utils/props';
|
|
12
11
|
import { toString } from '../utils/string';
|
|
13
12
|
|
|
14
13
|
// --- Constants ---
|
|
@@ -28,19 +27,63 @@ const {
|
|
|
28
27
|
|
|
29
28
|
const props = sortKeys({
|
|
30
29
|
...modelProps,
|
|
31
|
-
ariaInvalid:
|
|
32
|
-
|
|
30
|
+
ariaInvalid: {
|
|
31
|
+
type: [PROP_TYPE_BOOLEAN, PROP_TYPE_STRING],
|
|
32
|
+
required: false,
|
|
33
|
+
default: false
|
|
34
|
+
},
|
|
35
|
+
autocomplete: {
|
|
36
|
+
type: PROP_TYPE_STRING,
|
|
37
|
+
required: false,
|
|
38
|
+
default: undefined
|
|
39
|
+
},
|
|
33
40
|
// Debounce timeout (in ms). Not applicable with `lazy` prop
|
|
34
|
-
debounce:
|
|
35
|
-
|
|
41
|
+
debounce: {
|
|
42
|
+
type: [PROP_TYPE_NUMBER, PROP_TYPE_STRING],
|
|
43
|
+
required: false,
|
|
44
|
+
default: 0
|
|
45
|
+
},
|
|
46
|
+
formatter: {
|
|
47
|
+
type: PROP_TYPE_FUNCTION,
|
|
48
|
+
required: false,
|
|
49
|
+
default: undefined
|
|
50
|
+
},
|
|
36
51
|
// Only update the `v-model` on blur/change events
|
|
37
|
-
lazy:
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
52
|
+
lazy: {
|
|
53
|
+
type: PROP_TYPE_BOOLEAN,
|
|
54
|
+
required: false,
|
|
55
|
+
default: false
|
|
56
|
+
},
|
|
57
|
+
lazyFormatter: {
|
|
58
|
+
type: PROP_TYPE_BOOLEAN,
|
|
59
|
+
required: false,
|
|
60
|
+
default: false
|
|
61
|
+
},
|
|
62
|
+
number: {
|
|
63
|
+
type: PROP_TYPE_BOOLEAN,
|
|
64
|
+
required: false,
|
|
65
|
+
default: false
|
|
66
|
+
},
|
|
67
|
+
placeholder: {
|
|
68
|
+
type: PROP_TYPE_STRING,
|
|
69
|
+
required: false,
|
|
70
|
+
default: undefined
|
|
71
|
+
},
|
|
72
|
+
plaintext: {
|
|
73
|
+
type: PROP_TYPE_BOOLEAN,
|
|
74
|
+
required: false,
|
|
75
|
+
default: false
|
|
76
|
+
},
|
|
77
|
+
readonly: {
|
|
78
|
+
type: PROP_TYPE_BOOLEAN,
|
|
79
|
+
required: false,
|
|
80
|
+
default: false
|
|
81
|
+
},
|
|
82
|
+
trim: {
|
|
83
|
+
type: PROP_TYPE_BOOLEAN,
|
|
84
|
+
required: false,
|
|
85
|
+
default: false
|
|
86
|
+
}
|
|
44
87
|
});
|
|
45
88
|
|
|
46
89
|
// --- Mixin ---
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { extend, COMPONENT_UID_KEY } from '../vue';
|
|
2
2
|
import { PROP_TYPE_STRING } from '../constants/props';
|
|
3
|
-
import { makeProp } from '../utils/props';
|
|
4
3
|
|
|
5
4
|
// SSR safe client-side ID attribute generation
|
|
6
5
|
// ID's can only be generated client-side, after mount
|
|
@@ -9,7 +8,11 @@ import { makeProp } from '../utils/props';
|
|
|
9
8
|
// --- Props ---
|
|
10
9
|
|
|
11
10
|
const props = {
|
|
12
|
-
id:
|
|
11
|
+
id: {
|
|
12
|
+
type: PROP_TYPE_STRING,
|
|
13
|
+
required: false,
|
|
14
|
+
default: undefined
|
|
15
|
+
}
|
|
13
16
|
};
|
|
14
17
|
|
|
15
18
|
// --- Mixin ---
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gitlab/ui",
|
|
3
|
-
"version": "130.1.
|
|
3
|
+
"version": "130.1.1",
|
|
4
4
|
"description": "GitLab UI Components",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
"autoprefixer": "10.4.27",
|
|
133
133
|
"axe-playwright": "^2.2.2",
|
|
134
134
|
"babel-loader": "^9.2.1",
|
|
135
|
-
"cypress": "15.
|
|
135
|
+
"cypress": "15.13.0",
|
|
136
136
|
"cypress-real-events": "^1.15.0",
|
|
137
137
|
"dompurify": "^3.1.2",
|
|
138
138
|
"emoji-regex": "^10.6.0",
|
|
@@ -354,8 +354,7 @@ export default {
|
|
|
354
354
|
},
|
|
355
355
|
},
|
|
356
356
|
mounted() {
|
|
357
|
-
|
|
358
|
-
if (!this.$slots.default && !this.$attrs['aria-label'] && !this.$props.label) {
|
|
357
|
+
if (!('default' in this.$scopedSlots) && !this.$attrs['aria-label'] && !this.label) {
|
|
359
358
|
logWarning('Accessible name missing. Please add inner text or aria-label.', {
|
|
360
359
|
name: 'GlButton',
|
|
361
360
|
element: this.$el,
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
} from '../constants/popper'
|
|
21
21
|
import {
|
|
22
22
|
PROP_TYPE_BOOLEAN,
|
|
23
|
-
|
|
23
|
+
PROP_TYPE_NUMBER,
|
|
24
24
|
PROP_TYPE_OBJECT,
|
|
25
25
|
PROP_TYPE_STRING
|
|
26
26
|
} from '../constants/props'
|
|
@@ -29,7 +29,6 @@ import { BvEvent } from '../utils/bv-event.class'
|
|
|
29
29
|
import { attemptFocus, closest, contains, isVisible, requestAF, selectAll } from '../utils/dom'
|
|
30
30
|
import { getRootEventName, stopEvent } from '../utils/events'
|
|
31
31
|
import { mergeDeep, sortKeys } from '../utils/object'
|
|
32
|
-
import { makeProp } from '../utils/props'
|
|
33
32
|
import { warn } from '../utils/warn'
|
|
34
33
|
import { clickOutMixin } from './click-out'
|
|
35
34
|
import { focusInMixin } from './focus-in'
|
|
@@ -62,22 +61,58 @@ export const props = sortKeys({
|
|
|
62
61
|
...idProps,
|
|
63
62
|
// String: `scrollParent`, `window` or `viewport`
|
|
64
63
|
// HTMLElement: HTML Element reference
|
|
65
|
-
boundary:
|
|
66
|
-
|
|
64
|
+
boundary: {
|
|
65
|
+
type: [HTMLElement, PROP_TYPE_STRING],
|
|
66
|
+
required: false,
|
|
67
|
+
default: 'scrollParent'
|
|
68
|
+
},
|
|
69
|
+
disabled: {
|
|
70
|
+
type: PROP_TYPE_BOOLEAN,
|
|
71
|
+
required: false,
|
|
72
|
+
default: false
|
|
73
|
+
},
|
|
67
74
|
// Place left if possible
|
|
68
|
-
dropleft:
|
|
75
|
+
dropleft: {
|
|
76
|
+
type: PROP_TYPE_BOOLEAN,
|
|
77
|
+
required: false,
|
|
78
|
+
default: false
|
|
79
|
+
},
|
|
69
80
|
// Place right if possible
|
|
70
|
-
dropright:
|
|
81
|
+
dropright: {
|
|
82
|
+
type: PROP_TYPE_BOOLEAN,
|
|
83
|
+
required: false,
|
|
84
|
+
default: false
|
|
85
|
+
},
|
|
71
86
|
// Place on top if possible
|
|
72
|
-
dropup:
|
|
87
|
+
dropup: {
|
|
88
|
+
type: PROP_TYPE_BOOLEAN,
|
|
89
|
+
required: false,
|
|
90
|
+
default: false
|
|
91
|
+
},
|
|
73
92
|
// Disable auto-flipping of menu from bottom <=> top
|
|
74
|
-
noFlip:
|
|
93
|
+
noFlip: {
|
|
94
|
+
type: PROP_TYPE_BOOLEAN,
|
|
95
|
+
required: false,
|
|
96
|
+
default: false
|
|
97
|
+
},
|
|
75
98
|
// Number of pixels or a CSS unit value to offset menu
|
|
76
99
|
// (i.e. `1px`, `1rem`, etc.)
|
|
77
|
-
offset:
|
|
78
|
-
|
|
100
|
+
offset: {
|
|
101
|
+
type: [PROP_TYPE_NUMBER, PROP_TYPE_STRING],
|
|
102
|
+
required: false,
|
|
103
|
+
default: 0
|
|
104
|
+
},
|
|
105
|
+
popperOpts: {
|
|
106
|
+
type: PROP_TYPE_OBJECT,
|
|
107
|
+
required: false,
|
|
108
|
+
default: () => ({})
|
|
109
|
+
},
|
|
79
110
|
// Right align menu (default is left align)
|
|
80
|
-
right:
|
|
111
|
+
right: {
|
|
112
|
+
type: PROP_TYPE_BOOLEAN,
|
|
113
|
+
required: false,
|
|
114
|
+
default: false
|
|
115
|
+
}
|
|
81
116
|
})
|
|
82
117
|
|
|
83
118
|
// --- Mixin ---
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { extend } from '../vue'
|
|
2
2
|
import { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props'
|
|
3
3
|
import { attemptFocus, isVisible, matches, requestAF, select } from '../utils/dom'
|
|
4
|
-
import { makeProp } from '../utils/props'
|
|
5
4
|
|
|
6
5
|
// --- Constants ---
|
|
7
6
|
|
|
@@ -10,12 +9,36 @@ const SELECTOR = 'input, textarea, select'
|
|
|
10
9
|
// --- Props ---
|
|
11
10
|
|
|
12
11
|
export const props = {
|
|
13
|
-
autofocus:
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
autofocus: {
|
|
13
|
+
type: PROP_TYPE_BOOLEAN,
|
|
14
|
+
required: false,
|
|
15
|
+
default: false
|
|
16
|
+
},
|
|
17
|
+
disabled: {
|
|
18
|
+
type: PROP_TYPE_BOOLEAN,
|
|
19
|
+
required: false,
|
|
20
|
+
default: false
|
|
21
|
+
},
|
|
22
|
+
form: {
|
|
23
|
+
type: PROP_TYPE_STRING,
|
|
24
|
+
required: false,
|
|
25
|
+
default: undefined
|
|
26
|
+
},
|
|
27
|
+
id: {
|
|
28
|
+
type: PROP_TYPE_STRING,
|
|
29
|
+
required: false,
|
|
30
|
+
default: undefined
|
|
31
|
+
},
|
|
32
|
+
name: {
|
|
33
|
+
type: PROP_TYPE_STRING,
|
|
34
|
+
required: false,
|
|
35
|
+
default: undefined
|
|
36
|
+
},
|
|
37
|
+
required: {
|
|
38
|
+
type: PROP_TYPE_BOOLEAN,
|
|
39
|
+
required: false,
|
|
40
|
+
default: false
|
|
41
|
+
}
|
|
19
42
|
}
|
|
20
43
|
|
|
21
44
|
// --- Mixin ---
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { extend } from '../vue'
|
|
2
2
|
import { PROP_TYPE_BOOLEAN } from '../constants/props'
|
|
3
|
-
import { makeProp } from '../utils/props'
|
|
4
3
|
|
|
5
4
|
// --- Props ---
|
|
6
5
|
|
|
7
6
|
export const props = {
|
|
8
|
-
plain:
|
|
7
|
+
plain: {
|
|
8
|
+
type: PROP_TYPE_BOOLEAN,
|
|
9
|
+
required: false,
|
|
10
|
+
default: false
|
|
11
|
+
}
|
|
9
12
|
}
|
|
10
13
|
|
|
11
14
|
// --- Mixin ---
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { extend } from '../vue'
|
|
2
|
-
import {
|
|
2
|
+
import { PROP_TYPE_ARRAY, PROP_TYPE_OBJECT, PROP_TYPE_STRING } from '../constants/props'
|
|
3
3
|
import { get } from '../utils/get'
|
|
4
4
|
import { stripTags } from '../utils/html'
|
|
5
5
|
import { isArray, isPlainObject, isUndefined } from '../utils/inspect'
|
|
6
6
|
import { keys } from '../utils/object'
|
|
7
|
-
import { makeProp } from '../utils/props'
|
|
8
7
|
import { warn } from '../utils/warn'
|
|
9
8
|
|
|
10
9
|
// --- Constants ---
|
|
@@ -15,11 +14,31 @@ const OPTIONS_OBJECT_DEPRECATED_MSG =
|
|
|
15
14
|
// --- Props ---
|
|
16
15
|
|
|
17
16
|
export const props = {
|
|
18
|
-
disabledField:
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
disabledField: {
|
|
18
|
+
type: PROP_TYPE_STRING,
|
|
19
|
+
required: false,
|
|
20
|
+
default: 'disabled'
|
|
21
|
+
},
|
|
22
|
+
htmlField: {
|
|
23
|
+
type: PROP_TYPE_STRING,
|
|
24
|
+
required: false,
|
|
25
|
+
default: 'html'
|
|
26
|
+
},
|
|
27
|
+
options: {
|
|
28
|
+
type: [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT],
|
|
29
|
+
required: false,
|
|
30
|
+
default: () => []
|
|
31
|
+
},
|
|
32
|
+
textField: {
|
|
33
|
+
type: PROP_TYPE_STRING,
|
|
34
|
+
required: false,
|
|
35
|
+
default: 'text'
|
|
36
|
+
},
|
|
37
|
+
valueField: {
|
|
38
|
+
type: PROP_TYPE_STRING,
|
|
39
|
+
required: false,
|
|
40
|
+
default: 'value'
|
|
41
|
+
}
|
|
23
42
|
}
|
|
24
43
|
|
|
25
44
|
// --- Mixin ---
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { extend } from '../vue'
|
|
2
2
|
import { PROP_TYPE_STRING } from '../constants/props'
|
|
3
|
-
import { makeProp } from '../utils/props'
|
|
4
3
|
|
|
5
4
|
// --- Props ---
|
|
6
5
|
|
|
7
6
|
export const props = {
|
|
8
|
-
size:
|
|
7
|
+
size: {
|
|
8
|
+
type: PROP_TYPE_STRING,
|
|
9
|
+
required: false,
|
|
10
|
+
default: undefined
|
|
11
|
+
}
|
|
9
12
|
}
|
|
10
13
|
|
|
11
14
|
// --- Mixin ---
|
|
@@ -9,14 +9,17 @@
|
|
|
9
9
|
import { extend } from '../vue'
|
|
10
10
|
import { PROP_TYPE_BOOLEAN } from '../constants/props'
|
|
11
11
|
import { isBoolean } from '../utils/inspect'
|
|
12
|
-
import { makeProp } from '../utils/props'
|
|
13
12
|
import { safeVueInstance } from '../utils/safe-vue-instance'
|
|
14
13
|
|
|
15
14
|
// --- Props ---
|
|
16
15
|
|
|
17
16
|
export const props = {
|
|
18
17
|
// Tri-state prop: true, false, null (or undefined)
|
|
19
|
-
state:
|
|
18
|
+
state: {
|
|
19
|
+
type: PROP_TYPE_BOOLEAN,
|
|
20
|
+
required: false,
|
|
21
|
+
default: null
|
|
22
|
+
}
|
|
20
23
|
}
|
|
21
24
|
|
|
22
25
|
// --- Mixin ---
|
|
@@ -7,8 +7,8 @@ import {
|
|
|
7
7
|
} from '../constants/events'
|
|
8
8
|
import {
|
|
9
9
|
PROP_TYPE_BOOLEAN,
|
|
10
|
-
PROP_TYPE_BOOLEAN_STRING,
|
|
11
10
|
PROP_TYPE_FUNCTION,
|
|
11
|
+
PROP_TYPE_NUMBER,
|
|
12
12
|
PROP_TYPE_NUMBER_STRING,
|
|
13
13
|
PROP_TYPE_STRING
|
|
14
14
|
} from '../constants/props'
|
|
@@ -19,7 +19,6 @@ import { makeModelMixin } from '../utils/model'
|
|
|
19
19
|
import { toInteger, toFloat } from '../utils/number'
|
|
20
20
|
import { sortKeys } from '../utils/object'
|
|
21
21
|
import { isFunction } from '../utils/inspect'
|
|
22
|
-
import { makeProp } from '../utils/props'
|
|
23
22
|
import { toString } from '../utils/string'
|
|
24
23
|
|
|
25
24
|
// --- Constants ---
|
|
@@ -41,19 +40,63 @@ export { MODEL_PROP_NAME, MODEL_EVENT_NAME }
|
|
|
41
40
|
|
|
42
41
|
export const props = sortKeys({
|
|
43
42
|
...modelProps,
|
|
44
|
-
ariaInvalid:
|
|
45
|
-
|
|
43
|
+
ariaInvalid: {
|
|
44
|
+
type: [PROP_TYPE_BOOLEAN, PROP_TYPE_STRING],
|
|
45
|
+
required: false,
|
|
46
|
+
default: false
|
|
47
|
+
},
|
|
48
|
+
autocomplete: {
|
|
49
|
+
type: PROP_TYPE_STRING,
|
|
50
|
+
required: false,
|
|
51
|
+
default: undefined
|
|
52
|
+
},
|
|
46
53
|
// Debounce timeout (in ms). Not applicable with `lazy` prop
|
|
47
|
-
debounce:
|
|
48
|
-
|
|
54
|
+
debounce: {
|
|
55
|
+
type: [PROP_TYPE_NUMBER, PROP_TYPE_STRING],
|
|
56
|
+
required: false,
|
|
57
|
+
default: 0
|
|
58
|
+
},
|
|
59
|
+
formatter: {
|
|
60
|
+
type: PROP_TYPE_FUNCTION,
|
|
61
|
+
required: false,
|
|
62
|
+
default: undefined
|
|
63
|
+
},
|
|
49
64
|
// Only update the `v-model` on blur/change events
|
|
50
|
-
lazy:
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
65
|
+
lazy: {
|
|
66
|
+
type: PROP_TYPE_BOOLEAN,
|
|
67
|
+
required: false,
|
|
68
|
+
default: false
|
|
69
|
+
},
|
|
70
|
+
lazyFormatter: {
|
|
71
|
+
type: PROP_TYPE_BOOLEAN,
|
|
72
|
+
required: false,
|
|
73
|
+
default: false
|
|
74
|
+
},
|
|
75
|
+
number: {
|
|
76
|
+
type: PROP_TYPE_BOOLEAN,
|
|
77
|
+
required: false,
|
|
78
|
+
default: false
|
|
79
|
+
},
|
|
80
|
+
placeholder: {
|
|
81
|
+
type: PROP_TYPE_STRING,
|
|
82
|
+
required: false,
|
|
83
|
+
default: undefined
|
|
84
|
+
},
|
|
85
|
+
plaintext: {
|
|
86
|
+
type: PROP_TYPE_BOOLEAN,
|
|
87
|
+
required: false,
|
|
88
|
+
default: false
|
|
89
|
+
},
|
|
90
|
+
readonly: {
|
|
91
|
+
type: PROP_TYPE_BOOLEAN,
|
|
92
|
+
required: false,
|
|
93
|
+
default: false
|
|
94
|
+
},
|
|
95
|
+
trim: {
|
|
96
|
+
type: PROP_TYPE_BOOLEAN,
|
|
97
|
+
required: false,
|
|
98
|
+
default: false
|
|
99
|
+
}
|
|
57
100
|
})
|
|
58
101
|
|
|
59
102
|
// --- Mixin ---
|
|
@@ -3,12 +3,15 @@
|
|
|
3
3
|
// `this._uid` is not synched between server and client
|
|
4
4
|
import { COMPONENT_UID_KEY, extend } from '../vue'
|
|
5
5
|
import { PROP_TYPE_STRING } from '../constants/props'
|
|
6
|
-
import { makeProp } from '../utils/props'
|
|
7
6
|
|
|
8
7
|
// --- Props ---
|
|
9
8
|
|
|
10
9
|
export const props = {
|
|
11
|
-
id:
|
|
10
|
+
id: {
|
|
11
|
+
type: PROP_TYPE_STRING,
|
|
12
|
+
required: false,
|
|
13
|
+
default: undefined
|
|
14
|
+
}
|
|
12
15
|
}
|
|
13
16
|
|
|
14
17
|
// --- Mixin ---
|