@gitlab/ui 101.15.0 → 102.0.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 (44) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/components/base/animated_icon/animated_loader_icon.js +45 -0
  3. package/dist/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_details_modal/duo_chat_context_item_details_modal.js +3 -0
  4. package/dist/components/experimental/duo/chat/components/duo_chat_loader/duo_chat_loader.js +5 -3
  5. package/dist/components/experimental/duo/chat/components/duo_chat_message/duo_chat_message.js +3 -3
  6. package/dist/vendor/bootstrap-vue/src/components/button/button.js +0 -4
  7. package/dist/vendor/bootstrap-vue/src/components/nav/nav.js +6 -9
  8. package/dist/vendor/bootstrap-vue/src/components/tabs/tabs.js +6 -30
  9. package/dist/vendor/bootstrap-vue/src/index.js +1 -11
  10. package/dist/vendor/bootstrap-vue/src/mixins/form-radio-check-group.js +2 -16
  11. package/dist/vendor/bootstrap-vue/src/mixins/form-radio-check.js +14 -104
  12. package/package.json +1 -2
  13. package/src/components/base/animated_icon/animated_icon.scss +21 -0
  14. package/src/components/base/animated_icon/animated_loader_icon.vue +44 -0
  15. package/src/components/experimental/duo/chat/components/duo_chat_context/duo_chat_context_item_details_modal/duo_chat_context_item_details_modal.vue +3 -0
  16. package/src/components/experimental/duo/chat/components/duo_chat_loader/duo_chat_loader.scss +6 -33
  17. package/src/components/experimental/duo/chat/components/duo_chat_loader/duo_chat_loader.vue +4 -6
  18. package/src/components/experimental/duo/chat/components/duo_chat_message/duo_chat_message.vue +3 -3
  19. package/src/vendor/bootstrap-vue/src/components/button/MODIFICATIONS.md +16 -0
  20. package/src/vendor/bootstrap-vue/src/components/button/README.md +0 -39
  21. package/src/vendor/bootstrap-vue/src/components/button/button.js +0 -4
  22. package/src/vendor/bootstrap-vue/src/components/button/button.spec.js +0 -36
  23. package/src/vendor/bootstrap-vue/src/components/form-checkbox/README.md +3 -174
  24. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox-group.spec.js +0 -117
  25. package/src/vendor/bootstrap-vue/src/components/form-checkbox/form-checkbox.spec.js +0 -409
  26. package/src/vendor/bootstrap-vue/src/components/form-radio/README.md +0 -129
  27. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio-group.spec.js +0 -112
  28. package/src/vendor/bootstrap-vue/src/components/form-radio/form-radio.spec.js +0 -365
  29. package/src/vendor/bootstrap-vue/src/components/nav/README.md +0 -20
  30. package/src/vendor/bootstrap-vue/src/components/nav/nav.js +7 -9
  31. package/src/vendor/bootstrap-vue/src/components/nav/nav.spec.js +0 -67
  32. package/src/vendor/bootstrap-vue/src/components/tabs/README.md +45 -187
  33. package/src/vendor/bootstrap-vue/src/components/tabs/tabs.js +6 -29
  34. package/src/vendor/bootstrap-vue/src/components/tabs/tabs.spec.js +0 -58
  35. package/src/vendor/bootstrap-vue/src/index.js +0 -17
  36. package/src/vendor/bootstrap-vue/src/mixins/form-radio-check-group.js +3 -20
  37. package/src/vendor/bootstrap-vue/src/mixins/form-radio-check.js +19 -114
  38. package/src/vendor/bootstrap-vue/src/utils/config.spec.js +0 -18
  39. package/dist/index.css +0 -7
  40. package/dist/index.css.map +0 -1
  41. package/dist/index.js +0 -114
  42. package/dist/vendor/bootstrap-vue/src/components/index.js +0 -11
  43. package/src/index.js +0 -129
  44. package/src/vendor/bootstrap-vue/src/components/index.js +0 -11
@@ -1,7 +1,7 @@
1
1
  # Tabs
2
2
 
3
- > Create a widget of tabbable panes of _local content_. The tabs component is built upon navs and
4
- > cards internally, and provides full keyboard navigation control of the tabs.
3
+ > Create a widget of tabbable panes of _local content_. The tabs component is built upon navs
4
+ > internally, and provides full keyboard navigation control of the tabs.
5
5
 
6
6
  For navigation based tabs (i.e. tabs that would change the URL), use the
7
7
  [nav](?path=/docs/base-nav--docs) component instead.
@@ -24,75 +24,6 @@ For navigation based tabs (i.e. tabs that would change the URL), use the
24
24
  or removing `<b-tab>` components (i.e. `v-if` or for loops). The `key` attribute is a special Vue
25
25
  attribute, see https://vuejs.org/v2/api/#key.
26
26
 
27
- ## Cards integration
28
-
29
- Tabs support integrating with Bootstrap cards. Just add the `card` property to `<b-tabs>` and place
30
- it inside a `<b-card>` component. Note that you should add the`no-body` prop on the `<b-card>`
31
- component in order to properly decorate the card header and remove the extra padding introduced by
32
- `card-body`.
33
-
34
- ```html
35
- <div>
36
- <b-card no-body>
37
- <b-tabs card>
38
- <b-tab title="Tab 1" active>
39
- <b-card-text>Tab contents 1</b-card-text>
40
- </b-tab>
41
- <b-tab title="Tab 2">
42
- <b-card-text>Tab contents 2</b-card-text>
43
- </b-tab>
44
- </b-tabs>
45
- </b-card>
46
- </div>
47
-
48
- <!-- b-tabs-card.vue -->
49
- ```
50
-
51
- When `<b-tabs>` is in `card` mode, each `<b-tab>` sub-component will automatically have the
52
- `card-body` class applied (this class provides the padding around the tab content). To disable the
53
- `card-body` class, set the `no-body` prop on the `<b-tab>` sub component.
54
-
55
- ```html
56
- <div>
57
- <b-card no-body>
58
- <b-tabs card>
59
- <b-tab no-body title="Picture 1">
60
- <b-card-img bottom src="https://picsum.photos/600/200/?image=21" alt="Image 21"></b-card-img>
61
- <b-card-footer>Picture 1 footer</b-card-footer>
62
- </b-tab>
63
-
64
- <b-tab no-body title="Picture 2">
65
- <b-card-img bottom src="https://picsum.photos/600/200/?image=25" alt="Image 25"></b-card-img>
66
- <b-card-footer>Picture 2 footer</b-card-footer>
67
- </b-tab>
68
-
69
- <b-tab no-body title="Picture 3">
70
- <b-card-img bottom src="https://picsum.photos/600/200/?image=26" alt="Image 26"></b-card-img>
71
- <b-card-footer>Picture 3 footer</b-card-footer>
72
- </b-tab>
73
-
74
- <b-tab title="Text">
75
- <b-card-title>This tab does not have the <code>no-body</code> prop set</b-card-title>
76
- <b-card-text>
77
- Quis magna Lorem anim amet ipsum do mollit sit cillum voluptate ex nulla tempor. Laborum
78
- consequat non elit enim exercitation cillum aliqua consequat id aliqua. Esse ex
79
- consectetur mollit voluptate est in duis laboris ad sit ipsum anim Lorem. Incididunt
80
- veniam velit elit elit veniam Lorem aliqua quis ullamco deserunt sit enim elit aliqua
81
- esse irure.
82
- </b-card-text>
83
- </b-tab>
84
- </b-tabs>
85
- </b-card>
86
- </div>
87
-
88
- <!-- b-tabs-card-no-body.vue -->
89
- ```
90
-
91
- **Note:** Setting the `no-body` prop on `<b-tab>` will have no affect when `<b-tabs>` is not in
92
- `card` mode (as the `card-body` class is only set when in `card` mode).
93
-
94
- Refer to the [Cards documentation](?path=/docs/base-card--docs) for more details on card components.
95
-
96
27
  ## Pills variant
97
28
 
98
29
  Tabs use the `tabs` styling by default. Just add `pills` property to `<b-tabs>` for the pill style
@@ -100,12 +31,10 @@ variant.
100
31
 
101
32
  ```html
102
33
  <div>
103
- <b-card no-body>
104
- <b-tabs pills card>
105
- <b-tab title="Tab 1" active><b-card-text>Tab contents 1</b-card-text></b-tab>
106
- <b-tab title="Tab 2"><b-card-text>Tab contents 2</b-card-text></b-tab>
107
- </b-tabs>
108
- </b-card>
34
+ <b-tabs pills>
35
+ <b-tab title="Tab 1" active>Tab contents 1</b-tab>
36
+ <b-tab title="Tab 2">Tab contents 2></b-tab>
37
+ </b-tabs>
109
38
  </div>
110
39
 
111
40
  <!-- b-tabs-pills.vue -->
@@ -173,12 +102,10 @@ Visually move the tab controls to the bottom by setting the prop `end`.
173
102
 
174
103
  ```html
175
104
  <div>
176
- <b-card no-body>
177
- <b-tabs pills card end>
178
- <b-tab title="Tab 1" active><b-card-text>Tab contents 1</b-card-text></b-tab>
179
- <b-tab title="Tab 2"><b-card-text>Tab contents 2</b-card-text></b-tab>
180
- </b-tabs>
181
- </b-card>
105
+ <b-tabs pills end>
106
+ <b-tab title="Tab 1" active>Tab contents 1</b-tab>
107
+ <b-tab title="Tab 2">Tab contents 2</b-tab>
108
+ </b-tabs>
182
109
  </div>
183
110
 
184
111
  <!-- b-tabs-bottom.vue -->
@@ -193,67 +120,6 @@ Visually move the tab controls to the bottom by setting the prop `end`.
193
120
  tab pane is the same height and fits completely within the visible viewport, otherwise the user
194
121
  will need to scroll up to read the start of the tabbed content.
195
122
 
196
- ## Vertical tabs
197
-
198
- Have the tab controls placed on the lefthand side by setting the `vertical` prop to `true`. Vertical
199
- tabs work with or without `card` mode enabled.
200
-
201
- ```html
202
- <div>
203
- <b-card no-body>
204
- <b-tabs pills card vertical>
205
- <b-tab title="Tab 1" active><b-card-text>Tab contents 1</b-card-text></b-tab>
206
- <b-tab title="Tab 2"><b-card-text>Tab contents 2</b-card-text></b-tab>
207
- <b-tab title="Tab 3"><b-card-text>Tab contents 3</b-card-text></b-tab>
208
- </b-tabs>
209
- </b-card>
210
- </div>
211
-
212
- <!-- b-tabs-vertical.vue -->
213
- ```
214
-
215
- Visually move the tab controls to the right hand side by setting the `end` prop:
216
-
217
- ```html
218
- <div>
219
- <b-card no-body>
220
- <b-tabs pills card vertical end>
221
- <b-tab title="Tab 1" active><b-card-text>Tab contents 1</b-card-text></b-tab>
222
- <b-tab title="Tab 2"><b-card-text>Tab contents 2</b-card-text></b-tab>
223
- <b-tab title="Tab 3"><b-card-text>Tab contents 3</b-card-text></b-tab>
224
- </b-tabs>
225
- </b-card>
226
- </div>
227
-
228
- <!-- b-tabs-vertical-end.vue -->
229
- ```
230
-
231
- The width of the vertical tab controls will expand to fit the width of the tab title. To control the
232
- width, set a [width utility class](/docs/reference/size-props#sizing-utility-classes) via the prop
233
- `nav-wrapper-class`. You can use values such as `w-25` (25% width), `w-50` (50% width), etc., or
234
- column classes such as `col-2`, `col-3`, etc.
235
-
236
- ```html
237
- <div>
238
- <b-card no-body>
239
- <b-tabs pills card vertical nav-wrapper-class="w-50">
240
- <b-tab title="Tab 1" active><b-card-text>Tab contents 1</b-card-text></b-tab>
241
- <b-tab title="Tab 2"><b-card-text>Tab contents 2</b-card-text></b-tab>
242
- <b-tab title="Tab 3"><b-card-text>Tab contents 3</b-card-text></b-tab>
243
- </b-tabs>
244
- </b-card>
245
- </div>
246
-
247
- <!-- b-tabs-vertical-width.vue -->
248
- ```
249
-
250
- Vertical placement visually works best with the `pills` variant. When using the default `tabs`
251
- variant, you may want to provided your own custom styling classes, as Bootstrap v4 CSS assumes the
252
- tab controls will always be placed on the top of the tabs content.
253
-
254
- **Note:** _overflowing text may occur if your width is narrower than the tab title. You may need
255
- additional custom styling._
256
-
257
123
  ## Active classes
258
124
 
259
125
  To apply classes to the currently active control or tab use the `active-nav-item-class` and
@@ -348,13 +214,11 @@ need to accommodate your custom classes for this._
348
214
  ```html
349
215
  <template>
350
216
  <div>
351
- <b-card no-body>
352
- <b-tabs v-model="tabIndex" card>
353
- <b-tab title="Tab 1" :title-link-class="linkClass(0)">Tab contents 1</b-tab>
354
- <b-tab title="Tab 2" :title-link-class="linkClass(1)">Tab contents 2</b-tab>
355
- <b-tab title="Tab 3" :title-link-class="linkClass(2)">Tab contents 3</b-tab>
356
- </b-tabs>
357
- </b-card>
217
+ <b-tabs v-model="tabIndex">
218
+ <b-tab title="Tab 1" :title-link-class="linkClass(0)">Tab contents 1</b-tab>
219
+ <b-tab title="Tab 2" :title-link-class="linkClass(1)">Tab contents 2</b-tab>
220
+ <b-tab title="Tab 3" :title-link-class="linkClass(2)">Tab contents 3</b-tab>
221
+ </b-tabs>
358
222
  </div>
359
223
  </template>
360
224
 
@@ -476,18 +340,14 @@ It is recommended to use the `disabled` attribute on the `<b-tab>` component ins
476
340
  ```html
477
341
  <template>
478
342
  <div>
479
- <!-- Tabs with card integration -->
480
- <b-card no-body>
481
- <b-tabs v-model="tabIndex" small card>
482
- <b-tab title="General">I'm the first fading tab</b-tab>
483
- <b-tab title="Edit profile">
484
- I'm the second tab
485
- <b-card>I'm the card in tab</b-card>
486
- </b-tab>
487
- <b-tab title="Premium Plan" disabled>Sibzamini!</b-tab>
488
- <b-tab title="Info">I'm the last tab</b-tab>
489
- </b-tabs>
490
- </b-card>
343
+ <b-tabs v-model="tabIndex" small>
344
+ <b-tab title="General">I'm the first fading tab</b-tab>
345
+ <b-tab title="Edit profile">
346
+ I'm the second tab
347
+ </b-tab>
348
+ <b-tab title="Premium Plan" disabled>Sibzamini!</b-tab>
349
+ <b-tab title="Info">I'm the last tab</b-tab>
350
+ </b-tabs>
491
351
 
492
352
  <!-- Control buttons-->
493
353
  <div class="text-center">
@@ -519,30 +379,28 @@ It is recommended to use the `disabled` attribute on the `<b-tab>` component ins
519
379
  ```html
520
380
  <template>
521
381
  <div>
522
- <b-card no-body>
523
- <b-tabs card>
524
- <!-- Render Tabs, supply a unique `key` to each tab -->
525
- <b-tab v-for="i in tabs" :key="'dyn-tab-' + i" :title="'Tab ' + i">
526
- Tab contents {{ i }}
527
- <b-button size="sm" variant="danger" class="float-right" @click="closeTab(i)">
528
- Close tab
529
- </b-button>
530
- </b-tab>
531
-
532
- <!-- New Tab Button (Using tabs-end slot) -->
533
- <template #tabs-end>
534
- <b-nav-item role="presentation" @click.prevent="newTab" href="#"><b>+</b></b-nav-item>
535
- </template>
536
-
537
- <!-- Render this if no tabs -->
538
- <template #empty>
539
- <div class="text-center text-muted">
540
- There are no open tabs<br>
541
- Open a new tab using the <b>+</b> button above.
542
- </div>
543
- </template>
544
- </b-tabs>
545
- </b-card>
382
+ <b-tabs>
383
+ <!-- Render Tabs, supply a unique `key` to each tab -->
384
+ <b-tab v-for="i in tabs" :key="'dyn-tab-' + i" :title="'Tab ' + i">
385
+ Tab contents {{ i }}
386
+ <b-button size="sm" variant="danger" class="float-right" @click="closeTab(i)">
387
+ Close tab
388
+ </b-button>
389
+ </b-tab>
390
+
391
+ <!-- New Tab Button (Using tabs-end slot) -->
392
+ <template #tabs-end>
393
+ <b-nav-item role="presentation" @click.prevent="newTab" href="#"><b>+</b></b-nav-item>
394
+ </template>
395
+
396
+ <!-- Render this if no tabs -->
397
+ <template #empty>
398
+ <div class="text-center text-muted">
399
+ There are no open tabs<br>
400
+ Open a new tab using the <b>+</b> button above.
401
+ </div>
402
+ </template>
403
+ </b-tabs>
546
404
  </div>
547
405
  </template>
548
406
 
@@ -199,7 +199,6 @@ export const props = makePropsConfigurable(
199
199
  // Only applied to the currently active `<b-tab>`
200
200
  // This prop is sniffed by the `<b-tab>` child
201
201
  activeTabClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),
202
- card: makeProp(PROP_TYPE_BOOLEAN, false),
203
202
  contentClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),
204
203
  // Synonym for 'bottom'
205
204
  end: makeProp(PROP_TYPE_BOOLEAN, false),
@@ -241,13 +240,6 @@ export const BTabs = /*#__PURE__*/ extend({
241
240
  fade() {
242
241
  // This computed prop is sniffed by the tab child
243
242
  return !this.noFade
244
- },
245
- localNavClass() {
246
- const classes = []
247
- if (this.card && this.vertical) {
248
- classes.push('card-header', 'h-100', 'border-bottom-0', 'rounded-0')
249
- }
250
- return [...classes, this.navClass]
251
243
  }
252
244
  },
253
245
  watch: {
@@ -539,7 +531,6 @@ export const BTabs = /*#__PURE__*/ extend({
539
531
  render(h) {
540
532
  const {
541
533
  align,
542
- card,
543
534
  end,
544
535
  fill,
545
536
  firstTab,
@@ -551,8 +542,7 @@ export const BTabs = /*#__PURE__*/ extend({
551
542
  pills,
552
543
  previousTab,
553
544
  small,
554
- tabs: $tabs,
555
- vertical
545
+ tabs: $tabs
556
546
  } = this
557
547
 
558
548
  // Currently active tab
@@ -605,7 +595,7 @@ export const BTabs = /*#__PURE__*/ extend({
605
595
  let $nav = h(
606
596
  BNav,
607
597
  {
608
- class: this.localNavClass,
598
+ class: this.navClass,
609
599
  attrs: {
610
600
  role: 'tablist',
611
601
  id: this.safeId('_BV_tab_controls_')
@@ -616,9 +606,7 @@ export const BTabs = /*#__PURE__*/ extend({
616
606
  align,
617
607
  tabs: !noNavStyle && !pills,
618
608
  pills: !noNavStyle && pills,
619
- vertical,
620
- small,
621
- cardHeader: card && !vertical
609
+ small
622
610
  },
623
611
  ref: 'nav'
624
612
  },
@@ -632,14 +620,7 @@ export const BTabs = /*#__PURE__*/ extend({
632
620
  $nav = h(
633
621
  'div',
634
622
  {
635
- class: [
636
- {
637
- 'card-header': card && !vertical && !end,
638
- 'card-footer': card && !vertical && end,
639
- 'col-auto': vertical
640
- },
641
- this.navWrapperClass
642
- ],
623
+ class: this.navWrapperClass,
643
624
  key: 'bv-tabs-nav'
644
625
  },
645
626
  [$nav]
@@ -652,7 +633,7 @@ export const BTabs = /*#__PURE__*/ extend({
652
633
  $empty = h(
653
634
  'div',
654
635
  {
655
- class: ['tab-pane', 'active', { 'card-body': card }],
636
+ class: ['tab-pane', 'active'],
656
637
  key: 'bv-empty-tab'
657
638
  },
658
639
  this.normalizeSlot(SLOT_NAME_EMPTY)
@@ -663,7 +644,7 @@ export const BTabs = /*#__PURE__*/ extend({
663
644
  'div',
664
645
  {
665
646
  staticClass: 'tab-content',
666
- class: [{ col: vertical }, this.contentClass],
647
+ class: this.contentClass,
667
648
  attrs: { id: this.safeId('_BV_tab_container_') },
668
649
  key: 'bv-content',
669
650
  ref: 'content'
@@ -676,10 +657,6 @@ export const BTabs = /*#__PURE__*/ extend({
676
657
  this.tag,
677
658
  {
678
659
  staticClass: 'tabs',
679
- class: {
680
- row: vertical,
681
- 'no-gutters': vertical && card
682
- },
683
660
  attrs: { id: this.safeId() }
684
661
  },
685
662
  [end ? $content : h(), $nav, end ? h() : $content]
@@ -32,64 +32,6 @@ describe('tabs', () => {
32
32
  wrapper.destroy()
33
33
  })
34
34
 
35
- it('has correct card classes when prop card is true', async () => {
36
- const wrapper = mount(BTabs, {
37
- propsData: { card: true },
38
- slots: {
39
- default: {
40
- components: { BTab },
41
- template: '<div><b-tab /><b-tab /><b-tab /></div>'
42
- }
43
- }
44
- })
45
-
46
- await waitNT(wrapper.vm)
47
- expect(wrapper).toBeDefined()
48
-
49
- expect(wrapper.element.tagName).toBe('DIV')
50
- expect(wrapper.classes()).toContain('tabs')
51
- expect(wrapper.findAll('.card-header').length).toBe(1)
52
- expect(wrapper.findAll('ul').length).toBe(1)
53
- expect(wrapper.find('ul').classes()).toContain('nav')
54
- expect(wrapper.find('ul').classes()).toContain('nav-tabs')
55
- expect(wrapper.find('ul').classes()).toContain('card-header-tabs')
56
-
57
- wrapper.destroy()
58
- })
59
-
60
- it('has correct card classes when props card and vertical are true', async () => {
61
- const wrapper = mount(BTabs, {
62
- propsData: { card: true, vertical: true },
63
- slots: {
64
- default: {
65
- components: { BTab },
66
- template: '<div><b-tab /><b-tab /><b-tab /></div>'
67
- }
68
- }
69
- })
70
-
71
- await waitNT(wrapper.vm)
72
- expect(wrapper).toBeDefined()
73
-
74
- expect(wrapper.element.tagName).toBe('DIV')
75
- expect(wrapper.classes()).toContain('tabs')
76
- expect(wrapper.classes()).toContain('row')
77
- expect(wrapper.classes()).toContain('no-gutters')
78
- expect(wrapper.findAll('.card-header').length).toBe(1)
79
- expect(wrapper.findAll('ul').length).toBe(1)
80
- expect(wrapper.find('ul').classes()).toContain('nav')
81
- expect(wrapper.find('ul').classes()).toContain('nav-tabs')
82
- expect(wrapper.find('ul').classes()).toContain('card-header')
83
- expect(wrapper.find('ul').classes()).toContain('flex-column')
84
- expect(wrapper.find('ul').classes()).toContain('h-100')
85
- expect(wrapper.find('ul').classes()).toContain('border-bottom-0')
86
- expect(wrapper.find('ul').classes()).toContain('rounded-0')
87
- expect(wrapper.findAll('.tab-content.col').length).toBe(1)
88
- expect(wrapper.findAll('.col-auto').length).toBe(1)
89
-
90
- wrapper.destroy()
91
- })
92
-
93
35
  it('sets correct tab active for initial value', async () => {
94
36
  const tabIndex = 1
95
37
  const wrapper = mount(BTabs, {
@@ -1,31 +1,14 @@
1
- import { installFactory } from './utils/plugins'
2
- import { componentsPlugin } from './components'
3
1
  import { BVConfigPlugin } from './bv-config'
4
2
 
5
3
  const NAME = 'BootstrapVue'
6
4
 
7
- // --- BootstrapVue installer ---
8
- const install = /*#__PURE__*/ installFactory({
9
- plugins: {
10
- componentsPlugin
11
- }
12
- })
13
-
14
5
  // --- BootstrapVue plugin ---
15
6
  const BootstrapVue = /*#__PURE__*/ {
16
- install,
17
7
  NAME
18
8
  }
19
9
 
20
10
  // --- Named exports for BvConfigPlugin ---
21
11
  export {
22
- // Installer exported in case the consumer does not import `default`
23
- // as the plugin in CommonJS build (or does not have interop enabled for CommonJS)
24
- // Both the following will work:
25
- // BootstrapVue = require('bootstrap-vue')
26
- // BootstrapVue = require('bootstrap-vue').default
27
- // Vue.use(BootstrapVue)
28
- install,
29
12
  NAME,
30
13
  // BootstrapVue config plugin
31
14
  BVConfigPlugin,
@@ -1,5 +1,5 @@
1
1
  import { extend } from '../vue'
2
- import { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_STRING } from '../constants/props'
2
+ import { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING } from '../constants/props'
3
3
  import { SLOT_NAME_FIRST } from '../constants/slots'
4
4
  import { htmlOrText } from '../utils/html'
5
5
  import { looseEqual } from '../utils/loose-equal'
@@ -42,10 +42,6 @@ export const props = makePropsConfigurable(
42
42
  ...formStateProps,
43
43
  ...formCustomProps,
44
44
  ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),
45
- // Only applicable when rendered with button style
46
- buttonVariant: makeProp(PROP_TYPE_STRING),
47
- // Render as button style
48
- buttons: makeProp(PROP_TYPE_BOOLEAN, false),
49
45
  stacked: makeProp(PROP_TYPE_BOOLEAN, false),
50
46
  validated: makeProp(PROP_TYPE_BOOLEAN, false)
51
47
  }),
@@ -83,22 +79,9 @@ export const formRadioCheckGroupMixin = extend({
83
79
  return this.name || this.safeId()
84
80
  },
85
81
  groupClasses() {
86
- const { inline, size, validated } = this
82
+ const { validated } = this
87
83
 
88
- let classes = { 'was-validated': validated }
89
- if (this.buttons) {
90
- classes = [
91
- classes,
92
- 'btn-group-toggle',
93
- {
94
- 'btn-group': inline,
95
- 'btn-group-vertical': !inline,
96
- [`btn-group-${size}`]: size
97
- }
98
- ]
99
- }
100
-
101
- return classes
84
+ return { 'was-validated': validated }
102
85
  }
103
86
  },
104
87
  watch: {