Skip to content

chore(core): use Vue.extend() for component definitions #2915

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 187 commits into from
Apr 6, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
187 commits
Select commit Hold shift + click to select a range
fc7cf29
Update alert.js
tmorehouse Mar 26, 2019
710e07b
Update alert.js
tmorehouse Mar 26, 2019
8056493
Update alert.js
tmorehouse Mar 26, 2019
13cd8a7
Update alert.js
tmorehouse Mar 26, 2019
9810015
Update alert.js
tmorehouse Mar 26, 2019
c240208
Update alert.js
tmorehouse Mar 26, 2019
661fe9b
Update spinner.js
tmorehouse Mar 26, 2019
a67a457
Update table.js
tmorehouse Mar 26, 2019
2210ed7
Update tabs.js
tmorehouse Mar 26, 2019
48ecabc
Update tab.js
tmorehouse Mar 26, 2019
e0a941c
Update pagination.js
tmorehouse Mar 26, 2019
a13f095
Update pagination-nav.js
tmorehouse Mar 26, 2019
dec813f
Update button-toolbar.js
tmorehouse Mar 26, 2019
9d67dc9
Update button-toolbar.js
tmorehouse Mar 26, 2019
d38872b
Update form-checkbox-group.js
tmorehouse Mar 26, 2019
1e0da59
Update form-checkbox.js
tmorehouse Mar 26, 2019
6eac592
Update form-file.js
tmorehouse Mar 26, 2019
976d09f
Update form-input.js
tmorehouse Mar 26, 2019
4fb331f
Update form-radio-group.js
tmorehouse Mar 26, 2019
73e08a5
Update form-radio.js
tmorehouse Mar 26, 2019
54a0faf
Update form-select.js
tmorehouse Mar 26, 2019
c73ad16
Update form-textarea.js
tmorehouse Mar 26, 2019
3384150
Update list-group-item.js
tmorehouse Mar 26, 2019
0ad0e0d
Update list-group.js
tmorehouse Mar 26, 2019
f6b9226
Update form-textarea.js
tmorehouse Mar 26, 2019
36de12f
Update utils.js
tmorehouse Mar 26, 2019
0fd365b
Update utils.js
tmorehouse Mar 26, 2019
1e7f096
Update utils.js
tmorehouse Mar 26, 2019
1f718be
Update utils.js
tmorehouse Mar 26, 2019
5a07b10
Update utils.js
tmorehouse Mar 26, 2019
5bbc23f
Update rollup.config.js
tmorehouse Mar 26, 2019
816eee1
Update alert.spec.js
tmorehouse Mar 26, 2019
22e24f9
Update alert.spec.js
tmorehouse Mar 26, 2019
96429cf
Update alert.spec.js
tmorehouse Mar 26, 2019
4f83fb7
Update alert.spec.js
tmorehouse Mar 26, 2019
19f7c31
Update alert.js
tmorehouse Mar 26, 2019
5c8afd7
Update alert.spec.js
tmorehouse Mar 26, 2019
45a685e
Delete alert.js
tmorehouse Mar 26, 2019
e6a2e83
Delete alert.html
tmorehouse Mar 26, 2019
4097925
Update alert.spec.js
tmorehouse Mar 26, 2019
c6f45bf
Update alert.spec.js
tmorehouse Mar 26, 2019
c643738
Update alert.spec.js
tmorehouse Mar 26, 2019
dc7e98d
alert: remove need for custom transition classes
tmorehouse Mar 26, 2019
a23c8ac
Update alert.spec.js
tmorehouse Mar 26, 2019
e37df8c
Update alert.spec.js
tmorehouse Mar 26, 2019
2758432
Update index.scss
tmorehouse Mar 26, 2019
7998cec
Delete index.scss
tmorehouse Mar 26, 2019
2b024ee
Delete _alert.scss
tmorehouse Mar 26, 2019
c376795
Update alert.spec.js
tmorehouse Mar 26, 2019
3ea2a62
Update alert.js
tmorehouse Mar 26, 2019
62afecf
Update alert.spec.js
tmorehouse Mar 26, 2019
2547479
Update alert.spec.js
tmorehouse Mar 26, 2019
478da34
Update config.js
tmorehouse Mar 26, 2019
d8754e1
Update config.spec.js
tmorehouse Mar 26, 2019
ab045fa
Update alert.js
tmorehouse Mar 26, 2019
c8af491
Update alert.js
tmorehouse Mar 26, 2019
e28a505
Update alert.spec.js
tmorehouse Mar 26, 2019
905aa69
Update alert.js
tmorehouse Mar 26, 2019
4e8e3d6
Update alert.js
tmorehouse Mar 26, 2019
8c9157b
Update alert.js
tmorehouse Mar 26, 2019
2629511
Update alert.js
tmorehouse Mar 26, 2019
7caa08b
Update alert.js
tmorehouse Mar 26, 2019
e846924
Update alert.js
tmorehouse Mar 26, 2019
1cc2ae2
Update alert.js
tmorehouse Mar 26, 2019
bc59adc
Update alert.js
tmorehouse Mar 26, 2019
c73a78d
Update alert.js
tmorehouse Mar 27, 2019
40de679
Update alert.js
tmorehouse Mar 27, 2019
f21af52
Update alert.spec.js
tmorehouse Mar 27, 2019
5aab3c9
Update badge.spec.js
tmorehouse Mar 27, 2019
667576e
Delete badge.js
tmorehouse Mar 27, 2019
4ce04d1
Delete badge.html
tmorehouse Mar 27, 2019
3aebb83
lint
tmorehouse Mar 27, 2019
56e9ef4
Update alert.js
tmorehouse Mar 27, 2019
81d2a30
Update badge.spec.js
tmorehouse Mar 27, 2019
bda47c3
Update badge.spec.js
tmorehouse Mar 27, 2019
85e51f5
Create breadcrumb-link.spec.js
tmorehouse Mar 27, 2019
016ca18
Update breadcrumb-link.spec.js
tmorehouse Mar 27, 2019
699205c
Update breadcrumb-link.spec.js
tmorehouse Mar 27, 2019
75c7403
Update breadcrumb-link.spec.js
tmorehouse Mar 27, 2019
5736fb7
Update breadcrumb-link.spec.js
tmorehouse Mar 27, 2019
0e7fbb8
Update breadcrumb-link.spec.js
tmorehouse Mar 27, 2019
2b73dd7
Create breadcrumb-item.spec.js
tmorehouse Mar 27, 2019
3cd9b6f
lint
tmorehouse Mar 27, 2019
cebf4f4
Update breadcrumb-item.spec.js
tmorehouse Mar 27, 2019
69a95ae
Update breadcrumb-item.spec.js
tmorehouse Mar 27, 2019
c362e6e
Update breadcrumb.spec.js
tmorehouse Mar 27, 2019
a50bd5f
Update breadcrumb.spec.js
tmorehouse Mar 27, 2019
02fa18c
Merge remote-tracking branch 'origin/dev' into tmorehouse/extends
jacobmllr95 Mar 28, 2019
c6e2c3b
Update breadcrumb.spec.js
jacobmllr95 Mar 28, 2019
e380f15
Update config.spec.js
jacobmllr95 Mar 28, 2019
3f69985
Delete utils.js
tmorehouse Apr 4, 2019
4c3f0e2
Merge branch 'dev' into tmorehouse/extends
tmorehouse Apr 4, 2019
8dd0a58
Update badge.js
tmorehouse Apr 4, 2019
4942f56
Update breadcrumb-item.js
tmorehouse Apr 4, 2019
3072999
Update breadcrumb-link.js
tmorehouse Apr 4, 2019
630403a
Update breadcrumb.js
tmorehouse Apr 4, 2019
1b561f5
Update button-group.js
tmorehouse Apr 4, 2019
4ffe8b4
Update button-close.js
tmorehouse Apr 4, 2019
f09783d
Update button.js
tmorehouse Apr 4, 2019
8395ec3
Update card-body.js
tmorehouse Apr 4, 2019
eecb575
Update card-footer.js
tmorehouse Apr 4, 2019
3c33078
Update card-group.js
tmorehouse Apr 4, 2019
ba77678
Update card-header.js
tmorehouse Apr 4, 2019
823e2bf
Update card-img-lazy.js
tmorehouse Apr 4, 2019
55390af
Update card-img.js
tmorehouse Apr 4, 2019
a6c662c
Update card-sub-title.js
tmorehouse Apr 4, 2019
a6b19dc
Update card-text.js
tmorehouse Apr 4, 2019
effd0df
Update card-title.js
tmorehouse Apr 4, 2019
438680b
Update card.js
tmorehouse Apr 4, 2019
7fca909
Update rollup.config.js
tmorehouse Apr 4, 2019
18c0dc8
Update carousel-slide.js
tmorehouse Apr 4, 2019
71b978f
Update carousel.js
tmorehouse Apr 4, 2019
561448a
Update collapse.js
tmorehouse Apr 4, 2019
46049b7
Update dropdown-divider.js
tmorehouse Apr 4, 2019
547a934
Update dropdown-form.js
tmorehouse Apr 4, 2019
e96900f
Update dropdown-header.js
tmorehouse Apr 4, 2019
9e7c8b4
Update dropdown-item-button.js
tmorehouse Apr 4, 2019
a1d9cf0
Update dropdown-item.js
tmorehouse Apr 4, 2019
dd5077a
Update dropdown-text.js
tmorehouse Apr 4, 2019
2ff5631
Update dropdown.js
tmorehouse Apr 4, 2019
4f5856a
Update embed.js
tmorehouse Apr 4, 2019
28129e3
Update form-group.js
tmorehouse Apr 4, 2019
488eb99
Update componentdoc.vue
tmorehouse Apr 4, 2019
028655c
Merge branch 'dev' into tmorehouse/extends
tmorehouse Apr 4, 2019
5ef363a
Update componentdoc.vue
tmorehouse Apr 4, 2019
f47d255
Update img-lazy.js
tmorehouse Apr 4, 2019
9a89b42
Update card-img-lazy.js
tmorehouse Apr 4, 2019
d2d1cfe
Update form-datalist.js
tmorehouse Apr 4, 2019
6175f9f
Update form-invalid-feedback.js
tmorehouse Apr 4, 2019
cbd4d08
Update form-text.js
tmorehouse Apr 4, 2019
787d7ce
Update form-valid-feedback.js
tmorehouse Apr 4, 2019
5e9ed64
Update form.js
tmorehouse Apr 4, 2019
4194b99
Update img-lazy.js
tmorehouse Apr 4, 2019
0f5c9ba
Update img.js
tmorehouse Apr 4, 2019
cabaa39
Update input-group-addon.js
tmorehouse Apr 4, 2019
2b4a5e8
Update input-group-append.js
tmorehouse Apr 4, 2019
45e97c2
Update input-group-prepend.js
tmorehouse Apr 4, 2019
ce56cbb
Update input-group-text.js
tmorehouse Apr 4, 2019
a115398
Update input-group.js
tmorehouse Apr 4, 2019
cde2d42
Update jumbotron.js
tmorehouse Apr 4, 2019
537a16c
Update col.js
tmorehouse Apr 4, 2019
c6063e9
Update container.js
tmorehouse Apr 4, 2019
8e42aa0
Update form-row.js
tmorehouse Apr 4, 2019
2eb0e3b
Update row.js
tmorehouse Apr 4, 2019
00e8952
Update link.js
tmorehouse Apr 4, 2019
7fb2685
Update media-aside.js
tmorehouse Apr 4, 2019
b827ff0
Update media-body.js
tmorehouse Apr 4, 2019
411c1d3
Update media.js
tmorehouse Apr 4, 2019
6131e77
Update img-lazy.js
tmorehouse Apr 4, 2019
4c144fc
Update modal.js
tmorehouse Apr 4, 2019
8e184d6
Update nav-form.js
tmorehouse Apr 5, 2019
1c032d4
Update nav-item-dropdown.js
tmorehouse Apr 5, 2019
1e748ab
Update nav-item.js
tmorehouse Apr 5, 2019
87db1f7
Update nav-text.js
tmorehouse Apr 5, 2019
8875a47
Update nav.js
tmorehouse Apr 5, 2019
d87b2dc
drop all `components` definitions in components
jacobmllr95 Apr 5, 2019
da94b3e
Merge branch 'tmorehouse/extends' of https://github.com/bootstrap-vue…
jacobmllr95 Apr 5, 2019
51498f4
Update nav-form.js
tmorehouse Apr 5, 2019
bd48e6b
Update navbar-brand.js
tmorehouse Apr 5, 2019
8ee6ee2
Update navbar-nav.js
tmorehouse Apr 5, 2019
21eda42
Update navbar-toggle.js
tmorehouse Apr 5, 2019
2ce22f3
Update navbar.js
tmorehouse Apr 5, 2019
2fadf6a
Update popover.js
tmorehouse Apr 5, 2019
94b229e
Update progress-bar.js
tmorehouse Apr 5, 2019
24ec81a
Update progress.js
tmorehouse Apr 5, 2019
b7d0c9b
Update tooltip.js
tmorehouse Apr 5, 2019
27bfed6
Update tabs.js
tmorehouse Apr 5, 2019
e3e845f
Update config.js
tmorehouse Apr 5, 2019
e0ddca6
Update carousel.js
tmorehouse Apr 5, 2019
f038dba
Update alert.js
tmorehouse Apr 5, 2019
33c5e2a
Update badge.js
tmorehouse Apr 5, 2019
6501e4d
Update button.js
tmorehouse Apr 5, 2019
f438748
Update button-close.js
tmorehouse Apr 5, 2019
df23b61
Update card-sub-title.js
tmorehouse Apr 5, 2019
32dbc28
Update dropdown.js
tmorehouse Apr 5, 2019
0cdf831
Update form-file.js
tmorehouse Apr 5, 2019
d243470
Update form-text.js
tmorehouse Apr 5, 2019
3a58f4e
Update img.js
tmorehouse Apr 5, 2019
dc116da
Update img-lazy.js
tmorehouse Apr 5, 2019
b557249
Update modal.js
tmorehouse Apr 5, 2019
fb7d726
Merge branch 'dev' into tmorehouse/extends
tmorehouse Apr 5, 2019
b04e4e6
Merge branch 'dev' into tmorehouse/extends
jacobmllr95 Apr 5, 2019
201f9e0
Merge branch 'dev' into tmorehouse/extends
jacobmllr95 Apr 5, 2019
b6e2701
Merge branch 'dev' into tmorehouse/extends
tmorehouse Apr 5, 2019
c3f1a18
Merge branch 'dev' into tmorehouse/extends
tmorehouse Apr 5, 2019
470c032
Merge branch 'dev' into tmorehouse/extends
tmorehouse Apr 5, 2019
8a1e92c
Merge branch 'dev' into tmorehouse/extends
tmorehouse Apr 5, 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
8 changes: 6 additions & 2 deletions docs/components/componentdoc.vue
Original file line number Diff line number Diff line change
Expand Up @@ -207,8 +207,12 @@ export default {
let options = {}
if (!component.options && typeof component === 'function') {
// Async component that hans't been resolved yet
component(opts => {
options = opts ? { ...opts } : {}
component(cmp => {
if (Object.prototype.toString.call(cmp) === '[object Object]') {
options = { ...cmp }
} else if (cmp && cmp.options) {
options = cmp.options
}
})
} else {
// Regular component
Expand Down
11 changes: 8 additions & 3 deletions scripts/rollup.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ const base = path.resolve(__dirname, '..')
const src = path.resolve(base, 'src')
const dist = path.resolve(base, 'dist')

const externals = ['vue', ...Object.keys(dependencies)]

// Libs in `external` will not be bundled to dist,
// since they are expected to be provided later.
// We want to include some of them in the build, so we exclude it here.
Expand All @@ -31,19 +33,22 @@ export default [
// UMD
{
...baseConfig,
external: Object.keys(dependencies).filter(dep => !externalExcludes.includes(dep)),
external: externals.filter(dep => !externalExcludes.includes(dep)),
output: {
format: 'umd',
name: camelCase(name),
file: path.resolve(dist, `${name}.js`),
sourcemap: true
sourcemap: true,
globals: {
vue: 'Vue'
}
}
},

// COMMON
{
...baseConfig,
external: Object.keys(dependencies).filter(dep => !externalExcludes.includes(dep)),
external: externals.filter(dep => !externalExcludes.includes(dep)),
output: {
format: 'cjs',
name: camelCase(name),
Expand Down
9 changes: 5 additions & 4 deletions src/components/alert/alert.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import BButtonClose from '../button/button-close'
import { getComponentConfig } from '../../utils/config'
import { requestAF } from '../../utils/dom'
Expand Down Expand Up @@ -29,7 +30,7 @@ const parseShow = show => {
const isNumericLike = value => !isNaN(parseInt(value, 10))

// @vue/component
export default {
export default Vue.extend({
name: NAME,
model: {
prop: 'show',
Expand All @@ -38,15 +39,15 @@ export default {
props: {
variant: {
type: String,
default: () => getComponentConfig(NAME, 'variant')
default: () => String(getComponentConfig(NAME, 'variant'))
},
dismissible: {
type: Boolean,
default: false
},
dismissLabel: {
type: String,
default: () => getComponentConfig(NAME, 'dismissLabel')
default: () => String(getComponentConfig(NAME, 'dismissLabel'))
},
show: {
type: [Boolean, Number, String],
Expand Down Expand Up @@ -185,4 +186,4 @@ export default {
$alert
)
}
}
})
7 changes: 4 additions & 3 deletions src/components/badge/badge.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'
import { getComponentConfig } from '../../utils/config'
import pluckProps from '../../utils/pluck-props'
Expand All @@ -17,7 +18,7 @@ export const props = {
},
variant: {
type: String,
default: () => getComponentConfig(NAME, 'variant')
default: () => String(getComponentConfig(NAME, 'variant'))
},
pill: {
type: Boolean,
Expand All @@ -26,7 +27,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: NAME,
functional: true,
props,
Expand All @@ -48,4 +49,4 @@ export default {

return h(tag, mergeData(data, componentData), children)
}
}
})
5 changes: 3 additions & 2 deletions src/components/breadcrumb/breadcrumb-item.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'
import BBreadcrumbLink, { props } from './breadcrumb-link'

// @vue/component
export default {
export default Vue.extend({
name: 'BBreadcrumbItem',
functional: true,
props,
Expand All @@ -16,4 +17,4 @@ export default {
[h(BBreadcrumbLink, { props }, children)]
)
}
}
})
5 changes: 3 additions & 2 deletions src/components/breadcrumb/breadcrumb-link.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'
import pluckProps from '../../utils/pluck-props'
import BLink, { propsFactory as linkPropsFactory } from '../link/link'
Expand All @@ -20,7 +21,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: 'BBreadcrumbLink',
functional: true,
props,
Expand All @@ -38,4 +39,4 @@ export default {

return h(tag, mergeData(data, componentData), children)
}
}
})
5 changes: 3 additions & 2 deletions src/components/breadcrumb/breadcrumb.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'
import { isArray } from '../../utils/array'
import toString from '../../utils/to-string'
Expand All @@ -11,7 +12,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: 'BBreadcrumb',
functional: true,
props,
Expand Down Expand Up @@ -40,4 +41,4 @@ export default {

return h('ol', mergeData(data, { staticClass: 'breadcrumb' }), childNodes)
}
}
})
5 changes: 3 additions & 2 deletions src/components/button-group/button-group.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'

export const props = {
Expand All @@ -20,7 +21,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: 'BButtonGroup',
functional: true,
props,
Expand All @@ -38,4 +39,4 @@ export default {
children
)
}
}
})
5 changes: 3 additions & 2 deletions src/components/button-toolbar/button-toolbar.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { isVisible, selectAll } from '../../utils/dom'
import KeyCodes from '../../utils/key-codes'

Expand All @@ -10,7 +11,7 @@ const ITEM_SELECTOR = [
].join(',')

// @vue/component
export default {
export default Vue.extend({
name: 'BButtonToolbar',
props: {
justify: {
Expand Down Expand Up @@ -111,4 +112,4 @@ export default {
[this.$slots.default]
)
}
}
})
9 changes: 5 additions & 4 deletions src/components/button/button-close.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'
import { getComponentConfig } from '../../utils/config'

Expand All @@ -10,16 +11,16 @@ const props = {
},
ariaLabel: {
type: String,
default: () => getComponentConfig(NAME, 'ariaLabel')
default: () => String(getComponentConfig(NAME, 'ariaLabel'))
},
textVariant: {
type: String,
default: () => getComponentConfig(NAME, 'textVariant')
default: () => String(getComponentConfig(NAME, 'textVariant') || '') || null
}
}

// @vue/component
export default {
export default Vue.extend({
name: NAME,
functional: true,
props,
Expand Down Expand Up @@ -51,4 +52,4 @@ export default {
}
return h('button', mergeData(data, componentData), slots().default)
}
}
})
7 changes: 4 additions & 3 deletions src/components/button/button.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'
import { getComponentConfig } from '../../utils/config'
import pluckProps from '../../utils/pluck-props'
Expand All @@ -23,7 +24,7 @@ const btnProps = {
},
variant: {
type: String,
default: () => getComponentConfig(NAME, 'variant')
default: () => String(getComponentConfig(NAME, 'variant'))
},
type: {
type: String,
Expand Down Expand Up @@ -138,7 +139,7 @@ function computeAttrs(props, data) {
}

// @vue/component
export default {
export default Vue.extend({
name: NAME,
functional: true,
props,
Expand Down Expand Up @@ -179,4 +180,4 @@ export default {

return h(link ? BLink : props.tag, mergeData(data, componentData), children)
}
}
})
5 changes: 3 additions & 2 deletions src/components/card/card-body.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'
import prefixPropName from '../../utils/prefix-prop-name'
import copyProps from '../../utils/copy-props'
Expand All @@ -22,7 +23,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: 'BCardBody',
functional: true,
props,
Expand Down Expand Up @@ -59,4 +60,4 @@ export default {
[cardTitle, cardSubTitle, ...cardContent]
)
}
}
})
5 changes: 3 additions & 2 deletions src/components/card/card-footer.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'

import prefixPropName from '../../utils/prefix-prop-name'
Expand All @@ -22,7 +23,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: 'BCardFooter',
functional: true,
props,
Expand All @@ -43,4 +44,4 @@ export default {
children || [h('div', { domProps: htmlOrText(props.footerHtml, props.footer) })]
)
}
}
})
5 changes: 3 additions & 2 deletions src/components/card/card-group.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'

export const props = {
Expand All @@ -16,7 +17,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: 'BCardGroup',
functional: true,
props,
Expand All @@ -30,4 +31,4 @@ export default {

return h(props.tag, mergeData(data, { class: baseClass }), children)
}
}
})
6 changes: 3 additions & 3 deletions src/components/card/card-header.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import Vue from 'vue'
import { mergeData } from 'vue-functional-data-merge'

import prefixPropName from '../../utils/prefix-prop-name'
import copyProps from '../../utils/copy-props'
import { htmlOrText } from '../../utils/html'
Expand All @@ -22,7 +22,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: 'BCardHeader',
functional: true,
props,
Expand All @@ -43,4 +43,4 @@ export default {
children || [h('div', { domProps: htmlOrText(props.headerHtml, props.header) })]
)
}
}
})
9 changes: 5 additions & 4 deletions src/components/card/card-img-lazy.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
import BImgLazy from '../image/img-lazy'
import Vue from 'vue'
import BImgLazy, { props as imgLazyProps } from '../image/img-lazy'
import { omit } from '../../utils/object'
import { mergeData } from 'vue-functional-data-merge'

// Copy of `<b-img-lazy>` props, and remove conflicting/non-applicable props
// The `omit()` util creates a new object, so we can just pass the original props
const lazyProps = omit(BImgLazy.props, [
const lazyProps = omit(imgLazyProps, [
'left',
'right',
'center',
Expand Down Expand Up @@ -46,7 +47,7 @@ export const props = {
}

// @vue/component
export default {
export default Vue.extend({
name: 'BCardImgLazy',
functional: true,
props,
Expand All @@ -72,4 +73,4 @@ export default {
})
)
}
}
})
Loading