@gitlab/ui 111.6.0 → 111.7.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.
Files changed (33) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/components/charts/chart/chart.js +29 -23
  3. package/dist/utils/charts/config.js +1 -4
  4. package/dist/vendor/bootstrap-vue/src/constants/components.js +1 -7
  5. package/package.json +1 -1
  6. package/src/components/charts/chart/chart.vue +17 -20
  7. package/src/utils/charts/config.js +0 -3
  8. package/src/vendor/bootstrap-vue/src/constants/components.js +0 -6
  9. package/dist/vendor/bootstrap-vue/src/components/form-input/form-input.js +0 -157
  10. package/dist/vendor/bootstrap-vue/src/components/form-input/index.js +0 -1
  11. package/dist/vendor/bootstrap-vue/src/components/input-group/index.js +0 -5
  12. package/dist/vendor/bootstrap-vue/src/components/input-group/input-group-addon.js +0 -44
  13. package/dist/vendor/bootstrap-vue/src/components/input-group/input-group-append.js +0 -34
  14. package/dist/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.js +0 -34
  15. package/dist/vendor/bootstrap-vue/src/components/input-group/input-group-text.js +0 -31
  16. package/dist/vendor/bootstrap-vue/src/components/input-group/input-group.js +0 -75
  17. package/src/vendor/bootstrap-vue/src/components/form-input/README.md +0 -612
  18. package/src/vendor/bootstrap-vue/src/components/form-input/form-input.js +0 -168
  19. package/src/vendor/bootstrap-vue/src/components/form-input/form-input.spec.js +0 -989
  20. package/src/vendor/bootstrap-vue/src/components/form-input/index.js +0 -3
  21. package/src/vendor/bootstrap-vue/src/components/form-input/package.json +0 -135
  22. package/src/vendor/bootstrap-vue/src/components/input-group/README.md +0 -329
  23. package/src/vendor/bootstrap-vue/src/components/input-group/index.js +0 -7
  24. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-addon.js +0 -43
  25. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-append.js +0 -31
  26. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-append.spec.js +0 -84
  27. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.js +0 -31
  28. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-prepend.spec.js +0 -84
  29. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-text.js +0 -31
  30. package/src/vendor/bootstrap-vue/src/components/input-group/input-group-text.spec.js +0 -45
  31. package/src/vendor/bootstrap-vue/src/components/input-group/input-group.js +0 -73
  32. package/src/vendor/bootstrap-vue/src/components/input-group/input-group.spec.js +0 -153
  33. package/src/vendor/bootstrap-vue/src/components/input-group/package.json +0 -109
@@ -1,84 +0,0 @@
1
- import { mount } from '@vue/test-utils'
2
- import { BInputGroupPrepend } from './input-group-prepend'
3
-
4
- describe('input-group > input-group-prepend', () => {
5
- it('has expected default structure', async () => {
6
- const wrapper = mount(BInputGroupPrepend)
7
-
8
- expect(wrapper.element.tagName).toBe('DIV')
9
- expect(wrapper.classes()).toContain('input-group-prepend')
10
- expect(wrapper.classes().length).toBe(1)
11
- expect(wrapper.findAll('.input-group-prepend > *').length).toBe(0)
12
- expect(wrapper.text()).toEqual('')
13
-
14
- wrapper.destroy()
15
- })
16
-
17
- it('renders custom root element when tag prop is set', async () => {
18
- const wrapper = mount(BInputGroupPrepend, {
19
- propsData: {
20
- tag: 'span'
21
- }
22
- })
23
-
24
- expect(wrapper.element.tagName).toBe('SPAN')
25
- expect(wrapper.classes()).toContain('input-group-prepend')
26
- expect(wrapper.classes().length).toBe(1)
27
- expect(wrapper.findAll('.input-group-prepend > *').length).toBe(0)
28
- expect(wrapper.text()).toEqual('')
29
-
30
- wrapper.destroy()
31
- })
32
-
33
- it('renders content of default slot', async () => {
34
- const wrapper = mount(BInputGroupPrepend, {
35
- slots: {
36
- default: 'foobar'
37
- }
38
- })
39
-
40
- expect(wrapper.element.tagName).toBe('DIV')
41
- expect(wrapper.classes()).toContain('input-group-prepend')
42
- expect(wrapper.classes().length).toBe(1)
43
- expect(wrapper.text()).toEqual('foobar')
44
-
45
- wrapper.destroy()
46
- })
47
-
48
- it('renders child input-group-text when prop is-text set', async () => {
49
- const wrapper = mount(BInputGroupPrepend, {
50
- propsData: {
51
- isText: true
52
- }
53
- })
54
-
55
- expect(wrapper.element.tagName).toBe('DIV')
56
- expect(wrapper.classes()).toContain('input-group-prepend')
57
- expect(wrapper.classes().length).toBe(1)
58
- expect(wrapper.findAll('.input-group-text').length).toBe(1)
59
- expect(wrapper.findAll('.input-group-prepend > .input-group-text').length).toBe(1)
60
- expect(wrapper.text()).toEqual('')
61
-
62
- wrapper.destroy()
63
- })
64
-
65
- it('renders default slot inside child input-group-text when prop is-text set', async () => {
66
- const wrapper = mount(BInputGroupPrepend, {
67
- propsData: {
68
- isText: true
69
- },
70
- slots: {
71
- default: 'foobar'
72
- }
73
- })
74
-
75
- expect(wrapper.element.tagName).toBe('DIV')
76
- expect(wrapper.classes()).toContain('input-group-prepend')
77
- expect(wrapper.classes().length).toBe(1)
78
- expect(wrapper.findAll('.input-group-text').length).toBe(1)
79
- expect(wrapper.text()).toEqual('foobar')
80
- expect(wrapper.find('.input-group-text').text()).toEqual('foobar')
81
-
82
- wrapper.destroy()
83
- })
84
- })
@@ -1,31 +0,0 @@
1
- import { extend, mergeData } from '../../vue'
2
- import { NAME_INPUT_GROUP_TEXT } from '../../constants/components'
3
- import { PROP_TYPE_STRING } from '../../constants/props'
4
- import { makeProp, makePropsConfigurable } from '../../utils/props'
5
-
6
- // --- Props ---
7
-
8
- export const props = makePropsConfigurable(
9
- {
10
- tag: makeProp(PROP_TYPE_STRING, 'div')
11
- },
12
- NAME_INPUT_GROUP_TEXT
13
- )
14
-
15
- // --- Main component ---
16
-
17
- // @vue/component
18
- export const BInputGroupText = /*#__PURE__*/ extend({
19
- name: NAME_INPUT_GROUP_TEXT,
20
- functional: true,
21
- props,
22
- render(h, { props, data, children }) {
23
- return h(
24
- props.tag,
25
- mergeData(data, {
26
- staticClass: 'input-group-text'
27
- }),
28
- children
29
- )
30
- }
31
- })
@@ -1,45 +0,0 @@
1
- import { mount } from '@vue/test-utils'
2
- import { BInputGroupText } from './input-group-text'
3
-
4
- describe('input-group > input-group-text', () => {
5
- it('has expected default structure', async () => {
6
- const wrapper = mount(BInputGroupText)
7
-
8
- expect(wrapper.element.tagName).toBe('DIV')
9
- expect(wrapper.classes()).toContain('input-group-text')
10
- expect(wrapper.classes().length).toBe(1)
11
- expect(wrapper.text()).toBe('')
12
-
13
- wrapper.destroy()
14
- })
15
-
16
- it('has custom root element when prop tag set', async () => {
17
- const wrapper = mount(BInputGroupText, {
18
- propsData: {
19
- tag: 'span'
20
- }
21
- })
22
-
23
- expect(wrapper.element.tagName).toBe('SPAN')
24
- expect(wrapper.classes()).toContain('input-group-text')
25
- expect(wrapper.classes().length).toBe(1)
26
- expect(wrapper.text()).toBe('')
27
-
28
- wrapper.destroy()
29
- })
30
-
31
- it('renders content of default slot', async () => {
32
- const wrapper = mount(BInputGroupText, {
33
- slots: {
34
- default: 'foobar'
35
- }
36
- })
37
-
38
- expect(wrapper.element.tagName).toBe('DIV')
39
- expect(wrapper.classes()).toContain('input-group-text')
40
- expect(wrapper.classes().length).toBe(1)
41
- expect(wrapper.text()).toBe('foobar')
42
-
43
- wrapper.destroy()
44
- })
45
- })
@@ -1,73 +0,0 @@
1
- import { extend, mergeData } from '../../vue'
2
- import { NAME_INPUT_GROUP } from '../../constants/components'
3
- import { PROP_TYPE_STRING } from '../../constants/props'
4
- import { SLOT_NAME_APPEND, SLOT_NAME_DEFAULT, SLOT_NAME_PREPEND } from '../../constants/slots'
5
- import { htmlOrText } from '../../utils/html'
6
- import { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'
7
- import { makeProp, makePropsConfigurable } from '../../utils/props'
8
- import { BInputGroupAppend } from './input-group-append'
9
- import { BInputGroupPrepend } from './input-group-prepend'
10
- import { BInputGroupText } from './input-group-text'
11
-
12
- // --- Props ---
13
-
14
- export const props = makePropsConfigurable(
15
- {
16
- append: makeProp(PROP_TYPE_STRING),
17
- appendHtml: makeProp(PROP_TYPE_STRING),
18
- id: makeProp(PROP_TYPE_STRING),
19
- prepend: makeProp(PROP_TYPE_STRING),
20
- prependHtml: makeProp(PROP_TYPE_STRING),
21
- size: makeProp(PROP_TYPE_STRING),
22
- tag: makeProp(PROP_TYPE_STRING, 'div')
23
- },
24
- NAME_INPUT_GROUP
25
- )
26
-
27
- // --- Main component ---
28
-
29
- // @vue/component
30
- export const BInputGroup = /*#__PURE__*/ extend({
31
- name: NAME_INPUT_GROUP,
32
- functional: true,
33
- props,
34
- render(h, { props, data, slots, scopedSlots }) {
35
- const { prepend, prependHtml, append, appendHtml, size } = props
36
- const $scopedSlots = scopedSlots || {}
37
- const $slots = slots()
38
- const slotScope = {}
39
-
40
- let $prepend = h()
41
- const hasPrependSlot = hasNormalizedSlot(SLOT_NAME_PREPEND, $scopedSlots, $slots)
42
- if (hasPrependSlot || prepend || prependHtml) {
43
- $prepend = h(BInputGroupPrepend, [
44
- hasPrependSlot
45
- ? normalizeSlot(SLOT_NAME_PREPEND, slotScope, $scopedSlots, $slots)
46
- : h(BInputGroupText, { domProps: htmlOrText(prependHtml, prepend) })
47
- ])
48
- }
49
-
50
- let $append = h()
51
- const hasAppendSlot = hasNormalizedSlot(SLOT_NAME_APPEND, $scopedSlots, $slots)
52
- if (hasAppendSlot || append || appendHtml) {
53
- $append = h(BInputGroupAppend, [
54
- hasAppendSlot
55
- ? normalizeSlot(SLOT_NAME_APPEND, slotScope, $scopedSlots, $slots)
56
- : h(BInputGroupText, { domProps: htmlOrText(appendHtml, append) })
57
- ])
58
- }
59
-
60
- return h(
61
- props.tag,
62
- mergeData(data, {
63
- staticClass: 'input-group',
64
- class: { [`input-group-${size}`]: size },
65
- attrs: {
66
- id: props.id || null,
67
- role: 'group'
68
- }
69
- }),
70
- [$prepend, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots), $append]
71
- )
72
- }
73
- })
@@ -1,153 +0,0 @@
1
- import { mount } from '@vue/test-utils'
2
- import { BInputGroup } from './input-group'
3
-
4
- describe('input-group', () => {
5
- it('should have expected default structure', async () => {
6
- const wrapper = mount(BInputGroup)
7
-
8
- expect(wrapper.element.tagName).toBe('DIV')
9
- expect(wrapper.classes()).toContain('input-group')
10
- expect(wrapper.classes().length).toBe(1)
11
- expect(wrapper.attributes('role')).toBeDefined()
12
- expect(wrapper.attributes('role')).toEqual('group')
13
- expect(wrapper.findAll('.input-group > *').length).toBe(0)
14
- expect(wrapper.text()).toEqual('')
15
-
16
- wrapper.destroy()
17
- })
18
-
19
- it('should render custom root element when prop tag is set', async () => {
20
- const wrapper = mount(BInputGroup, {
21
- propsData: {
22
- tag: 'span'
23
- }
24
- })
25
-
26
- expect(wrapper.element.tagName).toBe('SPAN')
27
- expect(wrapper.classes()).toContain('input-group')
28
- expect(wrapper.classes().length).toBe(1)
29
- expect(wrapper.attributes('role')).toBeDefined()
30
- expect(wrapper.attributes('role')).toEqual('group')
31
- expect(wrapper.findAll('.input-group > *').length).toBe(0)
32
-
33
- wrapper.destroy()
34
- })
35
-
36
- it('should apply size class when when prop size is set', async () => {
37
- const wrapper = mount(BInputGroup, {
38
- propsData: {
39
- size: 'lg'
40
- }
41
- })
42
-
43
- expect(wrapper.element.tagName).toBe('DIV')
44
- expect(wrapper.classes()).toContain('input-group')
45
- expect(wrapper.classes()).toContain('input-group-lg')
46
- expect(wrapper.classes().length).toBe(2)
47
-
48
- wrapper.destroy()
49
- })
50
-
51
- it('should render default slot content', async () => {
52
- const wrapper = mount(BInputGroup, {
53
- slots: {
54
- default: 'foobar'
55
- }
56
- })
57
-
58
- expect(wrapper.element.tagName).toBe('DIV')
59
- expect(wrapper.classes()).toContain('input-group')
60
- expect(wrapper.classes().length).toBe(1)
61
- expect(wrapper.text()).toEqual('foobar')
62
- expect(wrapper.findAll('.input-group > *').length).toBe(0)
63
-
64
- wrapper.destroy()
65
- })
66
-
67
- it('renders input-group-prepend & input-group-append when prepend & append props set', async () => {
68
- const wrapper = mount(BInputGroup, {
69
- propsData: {
70
- prepend: 'foo',
71
- append: 'bar'
72
- },
73
- slots: {
74
- default: 'foobar'
75
- }
76
- })
77
-
78
- expect(wrapper.element.tagName).toBe('DIV')
79
- expect(wrapper.classes()).toContain('input-group')
80
- expect(wrapper.classes().length).toBe(1)
81
- expect(wrapper.text()).toEqual('foofoobarbar')
82
- expect(wrapper.findAll('.input-group > *').length).toBe(2)
83
- expect(wrapper.findAll('.input-group-prepend').length).toBe(1)
84
- expect(wrapper.findAll('.input-group-prepend > .input-group-text').length).toBe(1)
85
- expect(wrapper.find('.input-group-prepend').text()).toBe('foo')
86
- expect(wrapper.findAll('.input-group-append').length).toBe(1)
87
- expect(wrapper.findAll('.input-group-append > .input-group-text').length).toBe(1)
88
- expect(wrapper.find('.input-group-append').text()).toBe('bar')
89
- expect(wrapper.find('.input-group > .input-group-prepend ~ .input-group-append').exists()).toBe(
90
- true
91
- )
92
-
93
- wrapper.destroy()
94
- })
95
-
96
- it('renders input-group-prepend & input-group-append when prepend-html & append-html props set', async () => {
97
- const wrapper = mount(BInputGroup, {
98
- propsData: {
99
- prependHtml: '<i>foo</i>',
100
- appendHtml: '<b>bar</b>'
101
- },
102
- slots: {
103
- default: 'baz'
104
- }
105
- })
106
-
107
- expect(wrapper.element.tagName).toBe('DIV')
108
- expect(wrapper.classes()).toContain('input-group')
109
- expect(wrapper.classes().length).toBe(1)
110
- expect(wrapper.text()).toEqual('foobazbar')
111
- expect(wrapper.findAll('.input-group > *').length).toBe(2)
112
- expect(wrapper.findAll('.input-group-prepend').length).toBe(1)
113
- expect(wrapper.findAll('.input-group-prepend > .input-group-text').length).toBe(1)
114
- expect(wrapper.find('.input-group-prepend').text()).toBe('foo')
115
- expect(wrapper.findAll('.input-group-append').length).toBe(1)
116
- expect(wrapper.findAll('.input-group-append > .input-group-text').length).toBe(1)
117
- expect(wrapper.find('.input-group-append').text()).toBe('bar')
118
- expect(wrapper.find('.input-group > .input-group-prepend ~ .input-group-append').exists()).toBe(
119
- true
120
- )
121
-
122
- wrapper.destroy()
123
- })
124
-
125
- it('renders input-group-prepend & input-group-append when prepend & append slots present', async () => {
126
- const wrapper = mount(BInputGroup, {
127
- slots: {
128
- default: 'foobar',
129
- prepend: '<button>foo</button>',
130
- append: '<button>bar</button><button>baz</button>'
131
- }
132
- })
133
-
134
- expect(wrapper.element.tagName).toBe('DIV')
135
- expect(wrapper.classes()).toContain('input-group')
136
- expect(wrapper.classes().length).toBe(1)
137
- expect(wrapper.text()).toEqual('foofoobarbarbaz')
138
- expect(wrapper.findAll('.input-group > *').length).toBe(2)
139
- expect(wrapper.findAll('.input-group-prepend').length).toBe(1)
140
- expect(wrapper.findAll('.input-group-prepend > .input-group-text').length).toBe(0)
141
- expect(wrapper.findAll('.input-group-prepend > button').length).toBe(1)
142
- expect(wrapper.find('.input-group-prepend').text()).toBe('foo')
143
- expect(wrapper.findAll('.input-group-append').length).toBe(1)
144
- expect(wrapper.findAll('.input-group-append > .input-group-text').length).toBe(0)
145
- expect(wrapper.findAll('.input-group-append > button').length).toBe(2)
146
- expect(wrapper.find('.input-group-append').text()).toBe('barbaz')
147
- expect(wrapper.find('.input-group > .input-group-prepend ~ .input-group-append').exists()).toBe(
148
- true
149
- )
150
-
151
- wrapper.destroy()
152
- })
153
- })
@@ -1,109 +0,0 @@
1
- {
2
- "name": "@bootstrap-vue/input-group",
3
- "version": "1.0.0",
4
- "meta": {
5
- "title": "Input Group",
6
- "description": "Easily extend form controls by adding text, buttons, or button groups on either side of textual inputs.",
7
- "components": [
8
- {
9
- "component": "BInputGroup",
10
- "props": [
11
- {
12
- "prop": "append",
13
- "description": "Text to append to the input group"
14
- },
15
- {
16
- "prop": "appendHtml",
17
- "description": "HTML string to append to the input group. Has precedence over 'append' prop",
18
- "xss": true
19
- },
20
- {
21
- "prop": "prepend",
22
- "description": "Text to prepend to the input group"
23
- },
24
- {
25
- "prop": "prependHtml",
26
- "description": "HTML string to prepend to the input group. Has precedence over 'prepend' prop",
27
- "xss": true
28
- },
29
- {
30
- "prop": "size",
31
- "description": "Set the size of the component's appearance. 'sm', 'md' (default), or 'lg'"
32
- }
33
- ],
34
- "slots": [
35
- {
36
- "name": "append",
37
- "description": "Append attachment"
38
- },
39
- {
40
- "name": "default",
41
- "description": "Content to place in the input group"
42
- },
43
- {
44
- "name": "prepend",
45
- "description": "Prepend attachment"
46
- }
47
- ]
48
- },
49
- {
50
- "component": "BInputGroupPrepend",
51
- "props": [
52
- {
53
- "prop": "isText",
54
- "description": "When 'true', wraps the content in a b-input-group-text component"
55
- }
56
- ],
57
- "slots": [
58
- {
59
- "name": "default",
60
- "description": "Content to place in the input group prepend"
61
- }
62
- ]
63
- },
64
- {
65
- "component": "BInputGroupAppend",
66
- "props": [
67
- {
68
- "prop": "isText",
69
- "description": "When 'true', wraps the content in a b-input-group-text component"
70
- }
71
- ],
72
- "slots": [
73
- {
74
- "name": "default",
75
- "description": "Content to place in the input group append"
76
- }
77
- ]
78
- },
79
- {
80
- "component": "BInputGroupText",
81
- "slots": [
82
- {
83
- "name": "default",
84
- "description": "Content to place in the input group text"
85
- }
86
- ]
87
- },
88
- {
89
- "component": "BInputGroupAddon",
90
- "props": [
91
- {
92
- "prop": "append",
93
- "description": "When set to 'true' sets the addon as being appended. defaults to 'false' which is prepended"
94
- },
95
- {
96
- "prop": "isText",
97
- "description": "When 'true', wraps the content in a b-input-group-text component"
98
- }
99
- ],
100
- "slots": [
101
- {
102
- "name": "default",
103
- "description": "Content to place in the input group addon"
104
- }
105
- ]
106
- }
107
- ]
108
- }
109
- }