🌐 AI搜索 & 代理 主页
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
342 commits
Select commit Hold shift + click to select a range
25afa16
Update form-tags.js
tmorehouse Nov 21, 2019
327ac83
Update package.json
tmorehouse Nov 21, 2019
e1499d5
Update form-tag.spec.js
tmorehouse Nov 21, 2019
c2d6f39
Update README.md
tmorehouse Nov 21, 2019
9013162
Update README.md
tmorehouse Nov 21, 2019
85a4cad
Update form-tags.js
tmorehouse Nov 21, 2019
70da7fd
Update README.md
tmorehouse Nov 21, 2019
67f5462
Update README.md
tmorehouse Nov 22, 2019
84af2a6
Update README.md
tmorehouse Nov 22, 2019
1c172b3
Update form-tags.js
tmorehouse Nov 22, 2019
1c9e944
Update form-tags.js
tmorehouse Nov 22, 2019
d0626a8
Update package.json
tmorehouse Nov 22, 2019
751460e
Update form-tags.js
tmorehouse Nov 22, 2019
41fd9ac
Update package.json
tmorehouse Nov 22, 2019
9812a0c
Update README.md
tmorehouse Nov 22, 2019
741432d
Update form-tags.js
tmorehouse Nov 22, 2019
076ad75
Update package.json
tmorehouse Nov 22, 2019
8e678a2
Update README.md
tmorehouse Nov 22, 2019
81c10e4
Update form-tags.js
tmorehouse Nov 22, 2019
4fd5e51
Update README.md
tmorehouse Nov 22, 2019
1f18bc9
Update README.md
tmorehouse Nov 22, 2019
b00635d
Update form-tags.js
tmorehouse Nov 22, 2019
3846a7e
Update README.md
tmorehouse Nov 22, 2019
25e4686
Update README.md
tmorehouse Nov 22, 2019
5ebd135
Update README.md
tmorehouse Nov 22, 2019
31eefe1
Update _form-tags.scss
tmorehouse Nov 22, 2019
eacaff3
Update README.md
tmorehouse Nov 22, 2019
83b0cec
Update README.md
jacobmllr95 Nov 22, 2019
9a58c70
add "add" button in default UI
tmorehouse Nov 22, 2019
b59e51a
Update form-tags.js
tmorehouse Nov 22, 2019
63d025e
Update index.d.ts
jacobmllr95 Nov 22, 2019
2b56495
Update form-tags.js
jacobmllr95 Nov 22, 2019
8cc1ca0
Merge branch 'feat/form-tags' of https://github.com/bootstrap-vue/boo…
jacobmllr95 Nov 22, 2019
ec9238d
Update form-tags.js
tmorehouse Nov 22, 2019
40a66fc
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 22, 2019
252a83a
Update form-tags.js
tmorehouse Nov 22, 2019
64d42d0
Update form-tags.spec.js
tmorehouse Nov 22, 2019
e31e993
Update config-defaults.js
tmorehouse Nov 22, 2019
b1ebedd
Update form-tags.js
tmorehouse Nov 22, 2019
6cdd9ed
Update package.json
tmorehouse Nov 22, 2019
2d2931b
Update form-tags.js
tmorehouse Nov 22, 2019
5a7ce17
Update package.json
tmorehouse Nov 22, 2019
bae292b
Update package.json
tmorehouse Nov 22, 2019
cf9d3a3
Update README.md
tmorehouse Nov 22, 2019
914e556
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 22, 2019
1534cfa
Update form-tags.js
tmorehouse Nov 22, 2019
f29dd6a
Update form-tags.js
tmorehouse Nov 23, 2019
7770be9
Update package.json
tmorehouse Nov 23, 2019
6ad0da1
Update form-tags.js
tmorehouse Nov 23, 2019
e7aa79c
Update README.md
tmorehouse Nov 23, 2019
a785487
Update form-tags.js
tmorehouse Nov 23, 2019
d5f356d
Update form-tags.js
tmorehouse Nov 23, 2019
4ad0cbb
Update form-tags.js
tmorehouse Nov 23, 2019
6b19ec7
Update form-tags.js
tmorehouse Nov 23, 2019
6f59491
Update form-tags.spec.js
tmorehouse Nov 23, 2019
dfc6796
Update form-tags.js
tmorehouse Nov 23, 2019
10e5983
Update form-tags.spec.js
tmorehouse Nov 23, 2019
1a00cea
Update form-tags.js
tmorehouse Nov 23, 2019
21d65e5
Update form-tags.js
tmorehouse Nov 23, 2019
913c860
Update form-tags.js
tmorehouse Nov 23, 2019
275fd18
Update form-tags.spec.js
tmorehouse Nov 23, 2019
4592568
Update form-tags.js
tmorehouse Nov 23, 2019
8e60d94
Update package.json
tmorehouse Nov 23, 2019
20e6806
Merge branch 'dev' into feat/form-tags
jacobmllr95 Nov 23, 2019
bb8853e
Update README.md
tmorehouse Nov 23, 2019
174c9ff
Correct typos
jacobmllr95 Nov 23, 2019
6c10a8f
Update form-tags.js
tmorehouse Nov 23, 2019
5beb13b
Update package.json
tmorehouse Nov 23, 2019
4a19e27
Update README.md
tmorehouse Nov 23, 2019
d0783b8
Update README.md
tmorehouse Nov 23, 2019
467ff11
Update README.md
tmorehouse Nov 23, 2019
fea2c72
emit an event if tag(s) are added (or can't be added)
tmorehouse Nov 23, 2019
b555212
Update form-tags.js
tmorehouse Nov 23, 2019
718a48e
Update package.json
tmorehouse Nov 23, 2019
3170d30
Update README.md
tmorehouse Nov 23, 2019
79dc55d
Update form-tags.spec.js
tmorehouse Nov 23, 2019
927a0ae
Update package.json
tmorehouse Nov 23, 2019
63cba83
Update README.md
tmorehouse Nov 23, 2019
3f4c2be
Update form-tags.spec.js
tmorehouse Nov 23, 2019
7ba9207
Update README.md
tmorehouse Nov 23, 2019
289f3f8
Update form-tags.spec.js
tmorehouse Nov 23, 2019
7964d2b
Update form-tags.spec.js
tmorehouse Nov 23, 2019
49feee9
Update README.md
tmorehouse Nov 23, 2019
0cd3298
prevent b-form-tag from overflowing it's parent container width
tmorehouse Nov 23, 2019
477c9b8
Update README.md
tmorehouse Nov 23, 2019
8be3821
Update form-tag.js
tmorehouse Nov 23, 2019
658b742
Update README.md
tmorehouse Nov 23, 2019
1096256
Update README.md
tmorehouse Nov 23, 2019
2989819
Update form-tags.js
tmorehouse Nov 23, 2019
9152e9e
Update form-tags.js
tmorehouse Nov 24, 2019
e67a287
Update form-tags.spec.js
tmorehouse Nov 24, 2019
ad6c962
Update README.md
tmorehouse Nov 24, 2019
255d2dd
Update README.md
tmorehouse Nov 24, 2019
cf683d5
Correct typos
jacobmllr95 Nov 24, 2019
3423625
Update form-tags.js
tmorehouse Nov 24, 2019
3d212bb
Update form-tags.js
tmorehouse Nov 24, 2019
12313a9
Update package.json
tmorehouse Nov 24, 2019
ff9339a
Update form-tags.js
tmorehouse Nov 24, 2019
117c031
Update form-tags.js
tmorehouse Nov 24, 2019
38e6210
Update form-tags.js
tmorehouse Nov 24, 2019
5246b32
Update form-tags.spec.js
tmorehouse Nov 24, 2019
9ac41f9
Update form-tags.js
tmorehouse Nov 24, 2019
023fee1
Update package.json
tmorehouse Nov 24, 2019
24be77c
Update form-tags.js
tmorehouse Nov 24, 2019
107be3c
Update form-tags.spec.js
tmorehouse Nov 24, 2019
8e3506a
Update form-tags.spec.js
tmorehouse Nov 24, 2019
b749a50
Update form-tags.spec.js
tmorehouse Nov 24, 2019
e0f5633
Update form-tags.js
tmorehouse Nov 24, 2019
1389911
Update README.md
tmorehouse Nov 24, 2019
4c74c97
Update README.md
tmorehouse Nov 24, 2019
ccc3fcd
Update form-tag.js
tmorehouse Nov 24, 2019
2082fbf
Update form-tag.js
tmorehouse Nov 24, 2019
abe72bd
Update README.md
tmorehouse Nov 24, 2019
ec04243
Update form-tags.js
tmorehouse Nov 24, 2019
2343dd4
Update form-tags.js
tmorehouse Nov 24, 2019
420d894
Update form-tag.js
tmorehouse Nov 24, 2019
a251d7f
Update form-tags.js
tmorehouse Nov 24, 2019
757c9a1
Update form-tags.js
tmorehouse Nov 24, 2019
390d6d5
Update form-tag.js
tmorehouse Nov 24, 2019
ff35cc8
Update form-tag.js
tmorehouse Nov 24, 2019
233515d
Update README.md
tmorehouse Nov 24, 2019
66e3474
Update form-tag.js
tmorehouse Nov 24, 2019
f66ecce
Update _form-tags.scss
tmorehouse Nov 25, 2019
3205334
Update form-tag.js
tmorehouse Nov 25, 2019
63d4b7c
Update README.md
tmorehouse Nov 25, 2019
43b63fe
Update form-tags.js
tmorehouse Nov 25, 2019
fb83694
Update form-tags.js
tmorehouse Nov 25, 2019
797b048
Update form-tags.js
tmorehouse Nov 25, 2019
0f77661
Update _form-tags.scss
tmorehouse Nov 25, 2019
5ccf035
Update _form-tags.scss
tmorehouse Nov 25, 2019
d4fac66
Update _form-tags.scss
tmorehouse Nov 25, 2019
367f5fb
Update _form-tags.scss
tmorehouse Nov 25, 2019
5772214
Update form-tag.js
tmorehouse Nov 25, 2019
8d5374a
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 25, 2019
c44ebdf
Merge branch 'dev' into feat/form-tags
jacobmllr95 Nov 25, 2019
d174c05
Update form-tags.js
tmorehouse Nov 25, 2019
63310a8
Update form-tags.js
tmorehouse Nov 25, 2019
2d3a15c
Update form-tags.js
tmorehouse Nov 25, 2019
c9b7a89
Update form-tags.js
tmorehouse Nov 25, 2019
56b77e1
Update form-tags.js
tmorehouse Nov 25, 2019
627e87a
Update form-tags.spec.js
tmorehouse Nov 25, 2019
03421b3
Update form-tags.spec.js
tmorehouse Nov 25, 2019
f729bcc
Update README.md
tmorehouse Nov 25, 2019
7ed172f
Update README.md
tmorehouse Nov 25, 2019
eb8cdf2
Update form-tags.js
tmorehouse Nov 25, 2019
d47d78f
Update form-tags.spec.js
tmorehouse Nov 25, 2019
becdcad
Update form-tags.js
tmorehouse Nov 25, 2019
99257e9
Update form-tags.js
tmorehouse Nov 25, 2019
3f9b5f4
Update package.json
tmorehouse Nov 25, 2019
4eaae08
Update form-tags.js
tmorehouse Nov 25, 2019
218e752
Update form-tags.spec.js
tmorehouse Nov 25, 2019
4dba164
Update form-tags.spec.js
tmorehouse Nov 25, 2019
db68b1f
Update form-tags.js
tmorehouse Nov 25, 2019
5088759
Update form-tags.spec.js
tmorehouse Nov 25, 2019
35e663d
Update form-tags.spec.js
tmorehouse Nov 25, 2019
094867a
Update package.json
tmorehouse Nov 25, 2019
ce3f401
Update package.json
tmorehouse Nov 25, 2019
e041d1b
Update package.json
tmorehouse Nov 25, 2019
347fff4
Update form-tags.js
tmorehouse Nov 25, 2019
68aaa77
Update README.md
tmorehouse Nov 25, 2019
ccb2e46
Update form-tags.js
tmorehouse Nov 25, 2019
93a78aa
Update form-tags.js
tmorehouse Nov 25, 2019
56eb75f
Update form-tags.js
tmorehouse Nov 25, 2019
5af6de6
Update form-tags.js
tmorehouse Nov 25, 2019
7ba2db4
Update form-tags.js
tmorehouse Nov 25, 2019
0620dc4
Update form-tags.js
tmorehouse Nov 25, 2019
3e395fd
Update form-tags.spec.js
tmorehouse Nov 25, 2019
f2079ef
Update form-tags.js
tmorehouse Nov 25, 2019
7618093
Update package.json
tmorehouse Nov 25, 2019
9f7897b
Update package.json
tmorehouse Nov 25, 2019
fa56463
Update form-tags.js
tmorehouse Nov 25, 2019
900a8ab
Update package.json
tmorehouse Nov 25, 2019
042e864
Update form-tags.js
tmorehouse Nov 25, 2019
9a0c7eb
Update form-tags.spec.js
tmorehouse Nov 25, 2019
e8d8bd8
Update form-tags.js
tmorehouse Nov 25, 2019
842f53f
Update form-tags.spec.js
tmorehouse Nov 25, 2019
163acb5
Update form-tags.spec.js
tmorehouse Nov 25, 2019
2c20f63
Update README.md
tmorehouse Nov 26, 2019
24b6355
Update form-tags.js
tmorehouse Nov 26, 2019
31fea42
Update form-tags.spec.js
tmorehouse Nov 26, 2019
9d31a4e
Update package.json
tmorehouse Nov 26, 2019
5ec24d6
Update form-tags.js
tmorehouse Nov 26, 2019
bce1bcf
Update form-tags.js
tmorehouse Nov 26, 2019
fcacea4
Update form-tags.js
tmorehouse Nov 26, 2019
db861eb
Update form-tags.spec.js
tmorehouse Nov 26, 2019
8e61837
Update form-tags.spec.js
tmorehouse Nov 26, 2019
984032a
Update README.md
tmorehouse Nov 26, 2019
1eadcb9
Update form-tags.spec.js
tmorehouse Nov 26, 2019
99fddfd
Update form-tags.js
tmorehouse Nov 26, 2019
0add928
Update form-tags.js
tmorehouse Nov 26, 2019
6b6f1bb
Update form-tags.spec.js
tmorehouse Nov 26, 2019
21f4d88
Update form-tags.spec.js
tmorehouse Nov 26, 2019
c3e3eb4
Update form-tags.spec.js
tmorehouse Nov 26, 2019
16aeceb
Update README.md
tmorehouse Nov 26, 2019
b1db7eb
Update config-defaults.js
tmorehouse Nov 26, 2019
da203ba
Update form-tags.js
tmorehouse Nov 26, 2019
2d85ee6
Update README.md
tmorehouse Nov 26, 2019
036544d
Update README.md
tmorehouse Nov 26, 2019
286a80a
Update README.md
tmorehouse Nov 26, 2019
8adc4bb
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 26, 2019
d0e385a
Update form-tags.js
tmorehouse Nov 26, 2019
3a6dc8b
Update package.json
tmorehouse Nov 26, 2019
8900dbd
Update README.md
tmorehouse Nov 27, 2019
1233732
Update form-tags.spec.js
tmorehouse Nov 27, 2019
b147018
Update form-tags.spec.js
tmorehouse Nov 27, 2019
e5b9c31
Update package.json
tmorehouse Nov 27, 2019
4eb4e5d
Update README.md
tmorehouse Nov 27, 2019
f84ab94
Update form-tags.js
tmorehouse Nov 27, 2019
7f68c6d
Update form-select.js
tmorehouse Nov 27, 2019
6fc2016
Update form-tags.js
tmorehouse Nov 27, 2019
177760e
Update form-select.js
tmorehouse Nov 27, 2019
0c27c9e
Update form-select.js
tmorehouse Nov 27, 2019
a621920
Update form-tags.js
tmorehouse Nov 27, 2019
ea757f6
Update form-tags.js
tmorehouse Nov 27, 2019
2294a2a
Update form-tags.js
tmorehouse Nov 27, 2019
8c1189c
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 27, 2019
7f6bb4e
Update form-tags.js
tmorehouse Nov 27, 2019
cd0da63
Update form-tags.js
tmorehouse Nov 27, 2019
84aaa07
Update form-tags.js
tmorehouse Nov 27, 2019
145ad8c
Update README.md
tmorehouse Nov 27, 2019
c499b36
Update form-tags.js
tmorehouse Nov 27, 2019
0e74d42
Update README.md
tmorehouse Nov 27, 2019
5754f37
Correct typos
jacobmllr95 Nov 27, 2019
68d18ce
Update form-tags.spec.js
jacobmllr95 Nov 27, 2019
31539fd
Update form-tags.js
tmorehouse Nov 27, 2019
57c1eb7
Update form-tags.spec.js
tmorehouse Nov 27, 2019
38ac7fc
Update form-tags.spec.js
tmorehouse Nov 27, 2019
bba6ee2
Update README.md
tmorehouse Nov 27, 2019
453404d
Update package.json
tmorehouse Nov 27, 2019
36ac253
Update README.md
tmorehouse Nov 27, 2019
dfcaa6b
form-tags: add in better aria support
tmorehouse Nov 28, 2019
420874d
Update form-tags.js
tmorehouse Nov 28, 2019
056a68e
Update form-tags.js
tmorehouse Nov 28, 2019
7ae41e3
focus input after adding tag
tmorehouse Nov 28, 2019
aff45ab
don't add hidden inputs if component disabled
tmorehouse Nov 28, 2019
f5f34d9
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 28, 2019
b53b668
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 28, 2019
de3cc1b
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 28, 2019
2651190
Merge branch 'dev' into feat/form-tags
tmorehouse Nov 28, 2019
757b3b8
Update form-tags.js
tmorehouse Nov 28, 2019
1e75f45
Update form-tags.js
tmorehouse Nov 28, 2019
eedb65c
Update README.md
tmorehouse Nov 28, 2019
20b4e8e
Update form-tags.js
tmorehouse Nov 28, 2019
6fe7563
Update README.md
tmorehouse Nov 28, 2019
b96adb0
Update form-tags.js
tmorehouse Nov 28, 2019
148b8d0
Update README.md
tmorehouse Nov 28, 2019
25b2ccb
fix `eslint` dependency
jacobmllr95 Nov 29, 2019
47df2ea
Update README.md
jacobmllr95 Nov 29, 2019
51808e8
Update form-tags.js
jacobmllr95 Nov 29, 2019
71a9997
Merge branch 'dev' into feat/form-tags
jacobmllr95 Dec 2, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
710 changes: 710 additions & 0 deletions src/components/form-tags/README.md

Large diffs are not rendered by default.

55 changes: 55 additions & 0 deletions src/components/form-tags/_form-tags.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
.b-form-tags {
&.focus {
color: $input-focus-color;
background-color: $input-focus-bg;
border-color: $input-focus-border-color;
outline: 0;
@if $enable-shadows {
box-shadow: $input-box-shadow, $input-focus-box-shadow;
} @else {
box-shadow: $input-focus-box-shadow;
}

&.is-valid {
border-color: $form-feedback-valid-color;
box-shadow: 0 0 0 $input-focus-width rgba($form-feedback-valid-color, 0.25);
}

&.is-invalid {
border-color: $form-feedback-invalid-color;
box-shadow: 0 0 0 $input-focus-width rgba($form-feedback-invalid-color, 0.25);
}
}

&.disabled {
background-color: $input-disabled-bg;
}
}

.b-form-tag {
// Override default badge settings
// Due to using text-truncate on the inner content
font-size: 75%;
font-weight: normal;
line-height: $input-line-height;

&.disabled {
opacity: .75;
}

// Override default close button settings
> button.b-form-tag-remove {
color: inherit;
font-size: 125%;
line-height: 1;
float: none;
}
}

.form-control-sm .b-form-tag {
line-height: $input-line-height-sm;
}

.form-control-lg .b-form-tag {
line-height: $input-line-height-lg;
}
71 changes: 71 additions & 0 deletions src/components/form-tags/form-tag.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
import Vue from '../../utils/vue'
import { getComponentConfig } from '../../utils/config'
import idMixin from '../../mixins/id'
import normalizeSlotMixin from '../../mixins/normalize-slot'
import { BBadge } from '../badge/badge'
import { BButtonClose } from '../button/button-close'

const NAME = 'BFormTag'

export const BFormTag = /*#__PURE__*/ Vue.extend({
name: NAME,
mixins: [idMixin, normalizeSlotMixin],
props: {
variant: {
type: String,
default: () => getComponentConfig(NAME, 'variant')
},
disabled: {
type: Boolean,
default: false
},
title: {
type: String,
default: null
},
pill: {
type: Boolean,
default: false
},
removeLabel: {
type: String,
default: () => getComponentConfig(NAME, 'removeLabel')
},
tag: {
type: String,
default: 'span'
}
},
methods: {
onClick() {
this.$emit('remove')
}
},
render(h) {
const tagId = this.safeId()
let $remove = h()
if (!this.disabled) {
$remove = h(BButtonClose, {
staticClass: 'b-form-tag-remove ml-1',
props: { ariaLabel: this.removeLabel },
attrs: { 'aria-controls': tagId },
on: { click: this.onClick }
})
}
const $tag = h(
'span',
{ staticClass: 'b-form-tag-content flex-grow-1 text-truncate' },
this.normalizeSlot('default') || this.title || [h()]
)
return h(
BBadge,
{
staticClass: 'b-form-tag d-inline-flex align-items-baseline mw-100',
class: { disabled: this.disabled },
attrs: { id: tagId, title: this.title || null },
props: { tag: this.tag, variant: this.variant, pill: this.pill }
},
[$tag, $remove]
)
}
})
112 changes: 112 additions & 0 deletions src/components/form-tags/form-tag.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
import { mount } from '@vue/test-utils'
import { BFormTag } from './form-tag'

describe('form-tag', () => {
it('has expected structure', async () => {
const wrapper = mount(BFormTag, {
propsData: {
title: 'foobar'
}
})

expect(wrapper.is('span')).toBe(true)

expect(wrapper.classes()).toContain('b-form-tag')
expect(wrapper.classes()).toContain('badge')
expect(wrapper.classes()).toContain('badge-secondary')
expect(wrapper.attributes('title')).toBe('foobar')
expect(wrapper.text()).toContain('foobar')

const $btn = wrapper.find('button')
expect($btn.exists()).toBe(true)
expect($btn.classes()).toContain('close')
expect($btn.classes()).toContain('b-form-tag-remove')
expect($btn.attributes('aria-label')).toBe('Remove tag')

wrapper.destroy()
})

it('renders custom root element', async () => {
const wrapper = mount(BFormTag, {
propsData: {
title: 'foobar',
tag: 'li'
}
})

expect(wrapper.is('li')).toBe(true)

expect(wrapper.classes()).toContain('b-form-tag')
expect(wrapper.classes()).toContain('badge')
expect(wrapper.classes()).toContain('badge-secondary')
expect(wrapper.attributes('title')).toBe('foobar')
expect(wrapper.text()).toContain('foobar')

const $btn = wrapper.find('button')
expect($btn.exists()).toBe(true)
expect($btn.classes()).toContain('close')
expect($btn.classes()).toContain('b-form-tag-remove')
expect($btn.attributes('aria-label')).toBe('Remove tag')

wrapper.destroy()
})

it('renders default slot', async () => {
const wrapper = mount(BFormTag, {
propsData: {
title: 'foo'
},
slots: {
default: 'bar'
}
})

expect(wrapper.is('span')).toBe(true)

expect(wrapper.classes()).toContain('b-form-tag')
expect(wrapper.classes()).toContain('badge')
expect(wrapper.classes()).toContain('badge-secondary')
expect(wrapper.attributes('title')).toBe('foo')
expect(wrapper.text()).toContain('bar')
expect(wrapper.text()).not.toContain('foo')

const $btn = wrapper.find('button')
expect($btn.exists()).toBe(true)
expect($btn.classes()).toContain('close')
expect($btn.classes()).toContain('b-form-tag-remove')
expect($btn.attributes('aria-label')).toBe('Remove tag')

wrapper.destroy()
})

it('emits remove event when button clicked', async () => {
const wrapper = mount(BFormTag, {
propsData: {
title: 'foobar'
}
})

expect(wrapper.is('span')).toBe(true)

expect(wrapper.classes()).toContain('b-form-tag')
expect(wrapper.classes()).toContain('badge')
expect(wrapper.classes()).toContain('badge-secondary')
expect(wrapper.attributes('title')).toBe('foobar')
expect(wrapper.text()).toContain('foobar')

const $btn = wrapper.find('button')
expect($btn.exists()).toBe(true)
expect($btn.classes()).toContain('close')
expect($btn.classes()).toContain('b-form-tag-remove')
expect($btn.attributes('aria-label')).toBe('Remove tag')

expect(wrapper.emitted('remove')).not.toBeDefined()

$btn.trigger('click')

expect(wrapper.emitted('remove')).toBeDefined()
expect(wrapper.emitted('remove').length).toBe(1)

wrapper.destroy()
})
})
Loading