All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
Released: 2019-11-12
- auto-generate file
web-types.json
for WebStorm, and filesvetur-tags.json
andvetur-attributes.json
for Vetur (closes #4107) (#4110) (1a3e6a5) - b-dropdown: add
block
support to toggle button (closes #4266) (#4269) (30029e3) - b-form-group: allow setting label cols props to
auto
(closes #4217) (#4218) (21a822b) - b-form-input, b-form-textarea: add
lazy
modifier prop to update v-model on change/blur event (#4169) (55787dd) - b-form-input, b-form-textarea: add
v-model
debouncing feature, and deprecate<b-table>
propfilter-debounce
(closes #4150) (#4314) (3ecdfa2) - b-img, b-img-lazy: add support for
srcset
andsizes
props (closes #4348) (#4350) (f419cb4) - b-pagination, b-pagination-nav: add
pills
style option (#4236) (605d4c4) - b-table: add
selectRow()
andunselectRow()
methods to cell and row-details slot scopes, and new propno-select-on-click
(#4283) (64b881f) - b-table: default the row select feature
selected-variant
to theactive
variant (#4128) (af372b0) - b-table, b-table-lite: add in head/foot row variant prop (addresses #4215) (#4216) (b222c7c)
- b-table, b-table-lite: add prop
details-td-class
for applying classes to the details row<td>
(#4276) (702a1ef) - b-tabs: emit cancelable BvEvent before changing tabs via new
activate-tab
event (closes #4273) (#4274) (9b195dd) - v-b-visible: make
v-b-visible
directive available for public use (#4318) (5fa7e22)
- b-dropdown: handle issue with touch devices on MacOS using Safari/Firefox (Fixes #4328, #4344) (#4329) (2779a0a)
- b-nav-form, b-nav-text: ensure these sub-components have
<li>
as root element for accessibility (#4100) (6774800) - b-pagination, b-pagination-nav: add UP/DOWN keyboard navigation support for JAWS (fixes #4322) (#4325) (c686088)
- b-table, b-table-lite, b-table-simple: fix issue with sticky columns when table is not responsive but has sticky headers (fixes #4354) (#4356) (56b3958)
- b-table, b-table-lite, b-tbody: fix delegated event handlers when transition + minor
adjustment to row
key
generation (fixes #4370, #4360) (#4372) (030a3d8) - b-tabs: allow space to trigger tab activation when
no-key-nav
is enabled (fixes #4323) (#4326) (731365b) - v-b-modal: ensure trigger element is keyboard accessible if not a link or button, for A11Y (#4365) (f54ca29)
- v-b-modal: open modal using
ENTER
key on non-button elements for A11Y (#4364) (0d27d7b) - v-b-tooltip, v-b-popover: ensure reference to trigger element is passed to title/content function (fixes #4331) (#4332) (ea0cbda)
- v-b-visible: fix type error in
componentUpdated
hook + minor docs update/fixes (#4327) (5f3ba9e) - web-types: update web-types code generation to match latest schema (#4271) (009431e)
- b-table: deprecate prop
filter-debounce
in favour ofb-form-input
debouncing - documentation updates and fixes
Released: 2019-10-11
- b-carousel: disable the next/prev controls when the carousel is sliding (closes #4210) (#4212) (64d556d)
- b-dropdown-form: fix SCSS styling when placed in a nav dropdown (fixes #4220) (#4223) (b852bba)
- types: correct the declared export name for
BCardSubTitle
component (#4229) (9f216df)
- b-table, b-table-lite: improve render performance for large tables (closes #4211, #4155) (#4213) (f3f42f2)
- add
"sass"
entry inpackage.json
- minor docs fixes and updates
Released: 2019-10-05
- b-form-file: fix prop type checking for
value
prop (#4168) (a8e2e56) - b-nav-item-dropdown: focus-out handling when new focus comes from another
dropdown-toggle
(closes #4113) (#4139) (9c37875) - b-table: minor code optimizations to filter debouncing (#4167) (018eef1)
- b-table, b-table-lite, b-table-simple: disable sticky header max-height on printers / print media (#4147) (24c62c5)
- b-tooltip, b-popover: add
SVGElement
as acceptable prop type (closes #4173) (#4174) (fab7fea) - v-b-modal: bind to inner link or button for dropdown items or nav items (fixes #4149) (#4187) (5c28bd2)
- b-table, b-table-lite: delegate row event handlers to the tbody element (#4192) (3f0d46a)
- tables: make
b-th
extendb-td
instead of using functional wrappers (#4156) (c9715a8) - tables: improve provide/inject performance (addresses #4155) (#4164) (152fefc)
- add prop descriptions to component reference tables (closes #3647) (#4161) (fdd2a83)
- add quick links (page table of contents) to docs pages for small screens, and add table of contents to section index pages (instead of a redirect to first child page) (#4145) (22268aa)
Released: 2019-09-20
This patch release includes a few minor bug fixes and documentation updates.
- b-popover, b-tooltip: ensure prop
boundary-padding
is passed to popper instance (fixes #4131) (#4133) (a54a647) - b-collapse: make
id
prop not required (#4109) (4f935ce) - tables: add in missing Bootstrap variant class
bg-active
for dark tables (#4098) (d9900ab) - tables: ensure row variant
active
(classtable-active
) takes precedence over other row variants (addresses #3008) (#4127) (fdb8bb6) - tooltips, popovers: hide trigger element
title
attribute during show delay (fixes #4114) (#4120) (2dd8d5a)
Released: 2019-09-13
This patch release includes a few minor bug fixes and documentation updates.
- b-media: fix vertical align class when
top
orbottom
selected (fixes #4052) (#4055) (9ccfe4c) - b-table: handle filter as an object when using items provider, and prevent duplicate provider calls on mount (fixes #4065) (#4068) (9ddd115)
- b-table: remove extra slashes in mixins imports (#4087) (77f5be1)
- tooltips, popovers: check
document.body
instead ofdocument
for IE11 support (fixes #4074) (#4075) (1eda4fe) - v-b-tooltip, v-b-popover: add missing
disabled
config option (#4057) (f488dc1) - v-b-tooltip, v-b-popover: don't show if no title/content provided (closes #4064) (#4076) (0b7de29)
Released: 2019-09-06
BootstrapVue 2.0.0 stable introduces several new features and bug fixes. Please note that this release also includes several breaking changes.
Notable improvements:
- Tooltips and popovers have been completely re-written for better reactivity and stability. The
directive versions are now reactive to trigger element
title
attribute changes and configuration changes. The component versions now perform better when quickly hovering/un-hovering the trigger element. Component and directive versions now have a default delay of50
ms (affects'hover'
and'focus'
triggers only). They can now have a trigger of'manual'
(when used by itself) of which they can only be opened or closed programmatically. Users can now optionally specify the ID that the tooltip or popover uses. For accessibility reasons, thetitle
attribute is removed from the trigger element (target) only when the tooltip or popover is showing, and is restored when hidden. - Modals, tooltips, popovers, and toasts now work with scoped style classes (requires the use of
vue-loader's
/deep/
,::v-deep
or>>>
deep selectors for targeting inner elements, just like with any other component). - New SVG background image based sorting indicator icons for
<b-table>
, with the ability to place them on either the right (default) or left of the table cell headers (via a new prop). - Programmatic selection of
<b-table>
selectable rows. - Ability to provide your own custom footer structure for
<b-table>
and<b-table-lite>
.
Please carefully read the following before upgrading to v2.0.0 stable!
- Vue
2.6
+ is now required at a minimum,2.6.10
+ is recommended. Some components will fail to work as expected if using Vue2.5
(notably tooltips and popovers, but other components may be affected as well). - All deprecated features have been removed in v2.0.0 stable in order to reduce bundle size and simplify code.
Two notable breaking changes are:
- changes to the table slot naming syntax: the table slot syntax introduced in rc.28 has been
modified in v2.0.0 stable for better compatibility with the new Vue
v-slot
syntax and its limitations (which currently are not documented in the Vue.JS docs). - the removal of the deprecated
/es
build directory: Users should now be importing the new top-level named exports when importing individual components, directives, and plugins.
Read the following migration guide for more details.
- Removal of the deprecated
/es
build directory. Users should now be using the new simplified import syntax introduced in v2.0.0-rc.22. Users should be importing the top-level named exports instead. b-dropdown
: removal of deprecatedtext
slot. Use thebutton-content
slot instead.b-form-*
controls,b-form-group
,b-form-invalid-feedback
andb-form-valid-feedback
: validation propstate
now only acceptstrue
,false
, ornull
values. Passing the strings'invalid'
or'valid'
will no longer work.b-form-group
: removal of the deprecatedhorizontal
andbreakpoint
props. Use propslabel-cols{-{breakpoint}}
instead.b-img-lazy
,b-card-img-lazy
: now rely only onIntersectionObserver
support (native or via a polyfill) to determine when to show the image. IfIntersectionObserver
support is not detected, then the image will always be shown. Use a polyfill if you need to support older browsers (e.g. IE11)b-modal
: the deprecatedBvModalEvent
methodcancel()
has been removed. Use the methodpreventDefault()
instead.b-modal
: the deprecatedBvModalEvent
propertymodalId
has been removed. Use the propertycomponentId
instead.b-nav
: removal of the deprecatedis-nav
prop. Useb-navbar-nav
component instead when placing navs inb-navbar
.b-nav-item-dropdown
: deprecated propsextra-menu-classes
andextra-toggle-classes
have been removed. Used propsmenu-class
andtoggle-class
(respectively) instead.b-table
andb-table-lite
: table cell field, header and footer scoped slot naming convention has changed. Users should be using the new table round bracketed slot naming syntax: use slotcell(field)
instead offield
or[field]
, use slothead(field)
instead ofHEAD_field
orHEAD[field]
, usefoot(field)
instead ofFOOT_field
orFOOT[field]
. This change was required for better compatibility with the new Vuev-slot
syntax. The square bracket syntax introduced in2.0.0-rc.28
has been replaced with the round bracket syntax to reduce possible confusion and potential future issues with Vue 2.6's new dynamic slot name syntax.b-table
: thefilter
prop will no longer accept a function reference (previously deprecated). Instead, pass a function to thefilter-function
prop when using a custom filter function. The propfilter
is only to be used for the filter's criteria (i.e. the search value, searchRegExpr
, etc).b-table
: passing an object as afields
definition will no longer work. Use the array of strings or array of objects (or a combination of the two) fields definition format instead.b-table
: sorting icon SASS variables have been changed to handle the new SVG backgrounds. If you previously had custom CSS styling/icons, they will not work as expected - but sorting will still work. the SVG backgrounds can be controlled via SASS variables.b-tab
: removal of deprecatedhref
prop. Use<b-nav>
for controlling panes that change with URL changes.b-tabs
: removal of deprecatedtabs
slot. Use slottabs-end
instead.b-tabs
: removal of deprecatedbottom
prop. Use theend
prop instead.- Tooltip SCSS: deprecated variable
$bv-tooltip-bg-level
has been removed. Use variable$b-tooltip-bg-level
instead. - Popover SCSS: deprecated variables
$bv-popover-bg-level
,$bv-popover-border-level
, and$bv-popover-color-level
have been removed. Use variables$b-popover-bg-level
,$b-popover-border-level
, and$b-popover-color-level
(respectively) instead.
Please refer to the documentation for the latest usage and examples, and below for a list of fixes and new features.
- b-dropdown-*: ensure class bindings are placed on root element for all dropdown sub-components (closes #4022) (#4024) (81efb89)
- b-form-textarea: handle initial auto-height when in modal, tabs, or other component with
transition or which uses
v-show
(fixes #3936, #3702) (#3937) (be3ac62) - b-link: only add the
nativeOn
property to componentData when rendering a router link (#3976) (62fb0b6) - b-modal: ensure non-prop attributes are transferred to the modal outer wrapper
div
(closes #3896) (#3921) (8bf3a55) - b-modal: fix scroll to top issue when modal has
no-fade
set (#4004) (332b79f) - b-table, b-table-lite: handle edge case where field slot returns no vNodes (fixes #3919) (#3920) (a392059)
- b-table, b-table-lite: render header when not always stacked mode (fixes #3886) (#3887) (2302b31)
- b-table, b-table-lite: generate
:key
forrow-details
row based on theprimary-key
field value if available (#4025) (c7cb16f) - v-b-toggle: don't override
role
if element has arole
assigned (#3889) (5d155ba) - tooltip, popover: overall code refactor for better reactivity and performance (fixes: #1990, #2937, #3480, #3717, #3854, closes #3451) (#3908) (eebab43)
- b-carousel: add prop
no-wrap
for disabling wrapping to start/end (closes #3902) (#3905) (2c8bd23) - b-dropdown: add
role=presentation
to<li>
elements for improved a11y (#3996) (464d257) - b-img-lazy: switch IntersectionObserver to use private
v-b-visible
directive (#3977) (249ccfa) - b-modal: add scoped style support when portalled (non-static modal) (#3962) (77ad6b9)
- b-nav: add card header support (#3883) (4046a53)
- b-pagination: if number of pages changes, try and keep current page active (closes #3716) (#3990) (ae8ce78)
- b-modal: add prop for auto focusing one of the built in-buttons once
shown
(closes #3945) (#3979) (6f2827e) - b-table: allow field definition properties
filterByFormatted
andsortByFormatted
to accept a formatter function reference (closes #3892) (#3898) (5492b38) - b-table: new sorting icons using SVG, plus option to place icon on left of header cell (closes #3687, #3696, #3918, #3966) (#3968) (c4442f4)
- b-table: add
filter-debounce
prop for debouncing filter updates (#3891) (03536a5) - b-table: add
selectAllRows()
andclearSelected()
to thead/tfoot slot scopes (addresses #3901) (#3907) (86c53dd) - b-table, b-table-lite: switch slot name syntax to use round brackets instead of square brackets (#3986) (fca7bd5)
- b-table, b-table-lite: remove deprecated slot names, introduce new slot names (#3866) (249efd9)
- b-table, b-table-lite: use
aria-details
rather thanaria-describedby
when details row showing (addresses #3801) (#3992) (f6f73c7) - b-table, b-table-lite: add support for custom header attributes (closes #2244) (#3876) (8784f31)
- b-table, b-table-lite: add new scoped slot
custom-foot
to allow user to create their own table footer (closes #3960) (#4027) (cbeeef9) - b-table, b-table-lite, b-table-simple: add
no-border-collapse
prop and SCSS (#3987) (253b4f6) - b-toast: add support for scoped styles (#3963) (ca1b5de)
- tooltip, popover: overall code refactor for better reactivity and performance (fixes: #1990, #2937, #3480, #3717, #3854, closes #3451) (#3908) (eebab43)
- b-dropdown: remove deprecated slot
text
(#3868) (29eb8b1) - b-form-group: remove deprecated prop
horizontal
andbreakpoint
(#3879) (b301822) - b-nav, b-nav-item-dropdown: remove deprecated slot and props (#3867) (21fab35)
- b-modal: remove
BvModalEvent
deprecations (#3864) (90c299c) - b-table, b-table-lite: switch slot name syntax to use round brackets instead of square brackets (#3986) (fca7bd5)
- b-table, b-table-lite: remove deprecated slot names, introduce new slot names (#3866) (249efd9)
- b-tabs: remove deprecations (#3863) (0edac49)
- tooltip/popover: remove SCSS deprecations (#3869) (bea49d4)
- build: remove deprecated
es/
build (#3604) (3828f59)
Released: 2019-08-12
This release is expected to be the last RC release. Next release (hopefully) will be v2.0.0 stable.
- b-modal: prevent page scroll when tabbing to bottom of modal + better tab containment in enforceFocus (closes #3842) (#3846) (ed99f9c)
- b-carousel: reset
touchDeltaX
to prevent click transformed in swipe (#3734) (0e54839) - b-table: better detection of active text selection during click events (#3763) (1a9c688)
- b-tabs: fix nav item
id
andaria-controls
on tab buttons (#3832) (06c6119)
- form controls: add support for control sizing of
b-form-file
,b-form-checkbox
, andb-form-radio
(closes #3745) (#3794) (18c3957) - b-form-file, b-form-checkbox, b-form-radio: make input element inherit non-prop attributes (addresses #3752) (#3754) (722f9db)
- b-table: allow users to specify top-level keys to be ignored or included when filtering, plus add option to filter based on formatted value (closes #3749) (#3786) (142b31b)
- b-table: make sorting by formated value opt-in per field + add TypeScript declarations for locale options (#3778) (9716850)
- b-table: programmatic row selection (closes #3064, #3370) (#3844) (9a4fe24)
- b-table-simple: new
<table>
wrapper component that allows users to render their own<thead>
,<tfoot>
,<body>
(#3799) (998bd4f) - b-table, b-table-lite: new field scoped slot naming convention + new fallback scoped slots, deprecated old field slot convention (closes #3731) (#3741) (f53360d)
- b-table, b-table-lite: place
<tfoot>
after<tbody>
element per HTML5 spec (#3807) (e885d6d) - tables: add sticky header support (closes #2085) (#3831) (a5f7266)
- tables: create table child element helper components, plus new
sort-null-last
andtable-variant
props. (#3808) (981114b) - tables: add support for sticky columns (#3847) (5b5f2b8)
- b-toast: add SCSS variable for default toast background opacity + standardize a few BootstrapVue SCSS variable names (#3775) (5799075)
- config: defaults for all
size
properties (closes #3805) (#3841) (1389efa) - docs: updates to the theming reference section (#3790) (e080bf7)
b-table
: based on user feedback, sorting by formatted value is now opt-in per field. This is a change from the default sorting by formatted value behaviour of versions 2.0.0-rc.25 through rc.27. Sorting by formatted value was introduced in 2.0.0-rc.25.
-
b-table
andb-table-lite
field scoped slot naming syntax (for custom data and header/footer formatting) has been changed in this version to use a new square bracketed syntax. While the previous naming syntax still works, it has been deprecated in favour of the newer naming convention (which prevents potential slot-name conflicts with fields nameddefault
and other table slots). Users are encouraged to switch to the new table field slot name syntax, as the old slot name syntax will be removed in 2.0.0 stable release! -
Users should switch to the simplified import syntax (introduced in v2.0.0-rc.22) when importing individual plugins, components, and/or directives. Importing from the
es/
build directory has been deprecated and will be removed in 2.0.0 stable release!
Released: 2019-07-21
- b-modal: ensure header is read for accessibility with JAWS (closes #3712) (#3713) (6a9d0ce)
- b-nav-item-dropdown: clicking toggle a second time should close menu (closes #3707) (#3706) (629951e)
- b-table: IE11 edge case where custom inputs were not clickable in clickable/sortable cells (fixes #3693) (#3697) (fce8b5b)
- tooltip, popover: handle case where tooltips are applied to dropdown root elements (closes #3703) (#3704) (39df4f1)
- b-dropdown: new
split-button-type
prop to specify split button type (closes #3694) (#3695) (1157589) - b-modal: for accessibility, read only modal title and not whole header + additional A11Y options (addresses #3712) (#3715) (1ce8c6d)
- b-tabs: new named slot
tabs-start
for prepending tab buttons, deprecatestabs
slot in favour oftabs-end
(closes #3678) (#3679) (0b5f552) - minor code improvements (#3682) (2fb5ce8)
Users should switch to the simplified import syntax (introduced in v2.0.0-rc.22
) when importing
individual plugins, components, and/or directives. Importing from the es/
build directory has
been deprecated and will be removed in 2.0.0 stable release!
Released 2019-07-09
- b-collapse: fix memory leak from
$root
listener (fixes #3607) (#3608) (10cb3a9) - b-carousel-slide: do not render
carousel-caption
wrapper if no content (#3662) (615a719) - b-table: add clearfix to table cells in case label wraps in stacked mode (#3652) (3115dae)
- docs: correct polyfilling suggestions (#3605) (35806e7)
- playground: fix undefined variable error in IE 11 (#3606) (b3f7053)
- b-dropdown, b-nav-item-dropdown: add new lazy prop (addresses #3634) (#3639) (f742a8a)
- tooltip, popover: add support for contextual variants and custom class (closes #1983, #2075) (#3644) (695edae)
- tooltip: add in SCSS support for specifying tooltip variant background color level (#3653) (d7cb071)
- docs: add home and playground links to sidebar navigation (#3654) (e5eb9fc)
- types: add
noCloseButton
property toBvToastOptions
type declaration (#3636) (5aa9211)
- b-link: convert from functional component to regular component (#3637) (d3641ba)
- remove default array and object polyfills (#3641) (8b34bf2)
Users should switch to the simplified import syntax (introduced in v2.0.0-rc.22
) when importing
individual plugins, components, and/or directives. Importing from the es/
build directory has
been deprecated and will be removed in 2.0.0 stable release!
Released 2019-06-30
- b-input-group: fix kebab-case prop names for
prepend-html
andappend-html
(fixes #3565) (#3567 e48d3dc) - b-table: adjustments to sort icon positioning SCSS (closes #3563) (#3568 5c572e8)
- b-table: sort fields by formatted value for fields that have a formatter function + support
for optional
localCompare
options and locale (closes #3178, #1173) (#3585 c0ca1fd) - b-table, b-table-lite: don't render
thead
ortfoot
if no detected fields for accessibility reasons (closes #3547) (#3553 a924889) - b-tabs: emit new
changed
event whenever tabs are added, removed or re-ordered (closes #3575) (#3577 841419a) - tooltips, popovers: remove need for route watcher, preventing open tooltip/popover from automatically closing if child route changes and trigger element is still in document (#3583 98844b4)
Users should switch to the simplified import syntax (introduced in v2.0.0-rc.22
) when importing
individual plugins, components, and/or directives. Importing from the es/
build directory has
been deprecated and will be removed in 2.0.0 stable release.
Released 2019-06-17
- b-table: ensure
ctx.sortBy
is an empty string when no sort key specified (closes #3532) (#3534 d451687) - b-table-lite: add checks to helper mixins for existence of
stopIfBusy
(fixes #3518) (#3520) (285cf94) - b-tabs: add detection of when registered tabs change order (closes #3506) (#3513 130f8ff, #3537 b80b2b4)
- config: avoid using
of
operator (closes #3525) (#3526 17ec8d0) - nuxt module: correct
transformAssetUrls
value forb-card-img
(fixes #3521) (#3523 db8c6fd)
Released 2019-06-13
- b-dropdown: close when clicking on nested elements inside items with
to
prop (#3476 8ec2eb1) - b-form-input, b-form-textarea: handle case where input has been removed from document (closes #3498) (#3501 9a62e44)
- b-modal: ensure
ignoreBackdropClick
flag is cleared inclickOutHandler
(#3488 afb4680) - b-modal: fix IE11 issue with copy/paste from modal into MS Word (fixes #3457) (#3489 16dbdf1)
- b-modal: properly render
*-html
props if provided (closes #3491) (#3492 c1ada9f) - b-pagination-nav: fix incorrect name in component package.json file (closes #3458) (#3459 ef252df)
- b-pagination-nav: attempt to auto-detect current page when
pages
array ornumber of pages
changes (closes #3443) (#3444 88b95c6) - b-table: ensure provider is refreshed when filter is an object (closes #3428) (#3429 b95c614)
- b-tabs: improve child
b-tab
detection routine and fix bug with IDs (closes #3260) (#3442 4a54e8d) - types: add missing
BInputGroup
to TypeScript definitions (#3487 b4ac081) - utils/get: handle edge case with inherited object getters (fixes #3463) (#3465 e2c8cb1)
- b-table-lite: new
<b-table-lite>
light-weight table component (#3447 0477941) - improved tree-shaking when importing individual components (#3462 2df1ab9)
Users should switch to the simplified import syntax (introduced in v2.0.0-rc.22
) when importing
individual plugins, components, and/or directives. Importing from the es/
build directory has
been deprecated and will be removed in 2.0.0 stable release.
Released 2019-05-31
- Improved/shortened method for importing of plugins, components, and directives, as top-level named
exports. The ESM and CJS builds now both include these top level named exports:
- Default export is still the BootstrapVue plugin
- Simplified import format for importing components, directives, plugins:
import { ModalPlugin, CardPlugin, BAlert, BRow, BCol, VBScrollspyPlugin } from 'bootstrap-vue'
- New
esm/
modular build with top-level named exports (tree shakeable) - New
dist/bootstrap-vue.esm.js
esm bundle with top-level named exports - New
dist/bootstrap-vue.common.js
cjs bundle with top-level named exports - No need to cherry-pick from sub directories for plugins/components/directives
- Most package bundlers will pick the appropriate build automatically
- Nuxt module:
- Improved tree shaking using the new import syntax
- Automatically adds
transformAssetUrls
settings for BootstrapVue component props.
- Reverted the
es/
build directory back to mini-commonjs modules (from true ES modules introduced in v2.0.0-rc.21) due to issues with Nuxt.js and some webpack builds expecting CJS format when cherry-picking individual components, directives and plugins from sub-directories. - DEPRECATION: The
es/
build has been deprecated in favour of the neweresm
build andcjs
bundle, which allow for importing individual components, directives and plugins from top-level named exports. Users are encouraged to convert their existing imports to the new syntax.
- b-modal: use
safeId()
when comparingid
received by hide/show handler (closes #3389 (#3394 fae3d25) - b-tabs: fix regression with dynamically added tabs (fixes #3395) (#3396 f254f90)
- form controls: handle autofocus inside modal or when inside a transition (#3386 c4a8edb)
- es: revert to tranforming
es/
modules into CJS, and simplify main build with top-level named import/exports (closes #3397, #3393, #3323) (#3404 6c386d3) - nuxt: use new bundle for development mode (closes #3397) (#3399 f43097e, #3404 6c386d3)
- types: fix typing error for
BvComponent
andBvPlugin
(closes #3390) (#3391 6f0f3fd)
- b-button: add new
squared
prop for making buttons with square corners (#3387 004963d) - b-tooltip, b-popover: allow global
delay
customization via config (#3426 2aaec76) - nuxt: handle edge cases where component, directive and plugin names are passed as
camelCase
orkebab-case
and convert to newPascalCase
names (#3418 ce3ba73) - nuxt module: alias
esm/
andes/
tosrc/
for Nuxt prod mode (#3423 ae2040b) - add
"source": "src/index.js"
entry in package.json for Parcel bundler (#3422 0878ca6)
Released 2019-05-26
Note: this version introduced a bug when using BootstrapVue with Nuxt.js module in dev mode. Please use version v2.0.0-rc.22 or newer.
- b-alert: handle case where dismiss countdown changes to a boolean value (closes #3346) (#3347 14ad833)
- b-dropdown: delay show of dropdown when calling
show()
(closes #3366) (#3367 1604022) - b-input-group: fix issue with slots (closes #3284) (#3288 5639e8f)
- b-input-group: use same input-group-prepend/append for both props and slots (#3321 fb7386e)
- b-modal: delay initially open modal via nextTick when using v-model or visible prop (#3320 6f3010a)
- b-table: don't use css
grid
for stacked table SCSS - for IE11 compatibility (closes #3307) (#3383 ce19fc7) - b-tabs: fix regression of tabs in lazy modals - use DOM query for probing tabs after mount (closes: #3361) (#3375 2b188a2)
- b-toast: accessibility - prevent duplicate toast announcements for screen readers (closes #3322) (#3329 d44fba5)
- b-toaster: CSS fix for IE11 support (fixes #3327) (#3328 88b1cfd)
- docs: correct modal directive name (#3335 d4dcc35)
- docs: correct Vuelidate validation example and some minor tweaks (#3332 d5c22a8)
- docs:
b-progress-bar
label HTML support examples (closes #3333) (#3336 526f274) - types: fix msxBoxConfirm typo (#3280 8027e5a)
- use
installFactory
for mainBootstrapVue
plugin (closes #3338) (#3340 4c0c445)
- b-img-lazy: add support for IntersectionObserver (closes #3276) (#3279 5cf71cf)
- b-modal: improved portaling - retaining parent-child hierarchy (addresses #3312) (#3326 3728892)
- b-tooltip, b-popover: add
fallback-placement
prop (closes #3348) (#3349 ab42b4c) - es build: don't transpile import/export statements to require/exports, for better tree shaking (closes #3323) (#3358 3c1866d)
- form controls: add
autofocus
prop to allb-form-*
controls (#3341 e7eb1b4) - nuxt module: optimize imports into single import statements (#3325 ef71a3b)
- types: better type declarations (closes #1976) (#3283 a42abd0)
- don't warn about multiple Vue instances when testing in JSDOM (closes #3303) (#3315 0caa29b)
Released 2019-05-12
- $bvToast,$bvModal: ensure values passed to slots are arrays for Vue.js 2.5.x compatibility (closes #3174) (#3252 f46b5d8)
- b-nav-item-dropdown: fix disabled state (fixes #3264) (#3266 10d4c4d)
- b-collapse: is-nav link click behaviour - check if collapse has
display: block !important
before attempting to close collapse (#3199 b0729cc) - b-form-input: properly handle out-of-sync values (closes #2657) (#3172 976f9c1)
- b-modal: exclude document.body when determining return focus element (#3228 092ab2d)
- b-modal: prevent duplicate key when sending to portal-target (#3235) (5204ad7)
- b-modal: return focus edge case bug in IE11 (fixes #3206) (#3207 7ef36c2)
- b-pagination: use unicode escape sequence for default bookend button text (#3186 dfb6af7)
- b-toast: use appendChild instead of append for IE 11 support (#3160 be118a9)
- b-dropdown & b-nav-item-dropdown: pass optional scope to default slot & fixes keyboard nav with dropdown forms (#3242 3d1d777)
- b-button: add prop
pill
for pill style buttons (#3214 c26298b) - config: add option in config to set global tooltip and popover boundary (#3229 00e4fc9)
- b-dropdown: additional semantic markup optimizations for A11Y (#3196 91d893e)
- b-modal: use PortalVue for modal placement (#3157 6325528)
- b-table: make table sort icons configurable via SCSS variables (#3156 a72f134)
- b-toast: add additional options to global default config (closes #3169) (#3170 b01e01c)
- v-b-toggle: make targets reactive to updates (closes #3165) (#3167 6eff6d9)
- console warn if multiple instances of Vue detected (addresses #3040) (#3220 41db3e2)
- make more component appearance prop defaults globally configurable (closes #3173) (#3175 f7cf28c)
- types: create more typescript typings, and simplify component/directive/plugin imports. (#3209 50bbe6a)
Released 2019-04-21
- b-link: ensure href prop is not passed to router-links (fixes #3066) (#3084 f679c11)
- b-col, b-form-group: implement self overwriting lazy props getter (fixes: #3080) (#3125 92756bd)
- b-form-textarea: improve auto-row height calculation timing (closes #3103) (#3105 dfc662e)
- b-modal: clear internal return_focus after modal closes (fixes #3067) (#3068 971556f)
- b-modal: ensure that v-model is updated when show or hide is canceled (#3131 6726a33)
- b-modal: fix close on click-out for IE11 (#3117 9b09e52)
- b-modal: handle HMR when defining property on Vue prototype (#3123 a4e7f21)
- b-tab: don't use
aria-expanded
on the panel (#3143 381eacf) - b-table: prevent hover style on busy/empty row (closes #3079) (#3086 c53ffd4)
- utils: improve
dom
,env
,inspect
and test utils (#3085 bd85049) - nuxt module: ensure that css and transpile are arrays (fixes: #3141) (#3142 239da77)
- docs: improve
<b-modal>
prevent closing example (#3054 f609316) - docs: improve code highlighting + table styles (#3078 d4b9895)
- docs: overall improvements (#3129 be53376)
- b-dropdown: use semantic
<ul>
and<li>
markup (closes #3072) (#3087 58ad66b) - b-form-checkbox, b-form-radio: add
aria-labelledby
prop (closes: #3139) (#3140 f82f566) - b-form-group: make
aria-live
attribute on feedback configurable (closes #3057) (#3058 6161b8a) - b-modal: support for optionally scoped slots and new
Vue.prototype.$bvModal
helper (#3056 b647830) - b-table: add new prop
table-class
for applying classes to table root element (closes #3138) (#3148 5deb5db) - b-tabs: add
fill
,justified
andactive-class
props (closes #3053, #2518) (#3061 b6557ad) - b-toast: add Bootstrap v4.3 Toasts (#3093 c31b4ff)
- b-toast: updates to toaster SCSS and structure and enable hover-pause (#3135 263f206)
- docs/playground: add support for exporting to CodePen and CodeSandbox (#3071 ccb1614)
- Removed built in polyfills (hack) for Mutation Observer. IE 11 users should include the appropriate polyfills as mentioned in the getting started docs page.
Released 2019-04-08
- build: enable babel option to interop default (fixes #3038) (#3046 4e981c2)
- typescript: replaced invalid
mixed
keyword withany
(fixes #3041) (#3043 36e8246)
Released 2019-04-07
- breadcrumb-item: remove attribute
role="presentation"
for better ARIA support (#2991) (e84c4a7) - docs: add back missing leading slash to search urls (#2947) (fff8795)
- docs: fix component plugin's included plugins and directives (#2966) (cbf24c3)
- docs: fix issue with table docs page (closes #2939) (#2940) (c6abfd0)
- env: check for undefined on process (closes #2958) (#2959) (0c3a7b0)
- form-group: don't render
aria-labelledby
on group whenlabel-for
provided (fixes #2933) (#2936) (8058c03) - form-textarea: improved computedHeight calculation when in auto resize mode (#3012) (0043b92)
- link: support handling multiple click event listeners (fixes #2938) (#2943) (97e8ece)
- modal: prevent close on backdrop when click initiated inside modal content (fixes #3025) (#3029) (ad57e8c)
- modal: prevent page scroll as modal opens (#2963) (3bf3622)
- modal: improve stacked modal z-index calculations (closes #3015) (#3017) (891e8cc)
- pagination: reset to page 1 when
total-rows
orper-page
changes (closes #2987) (#2993) (df2e77a) - pagination-nav: better current page detection in IE (#3006) (f742aa9)
- tooltip/popover: prevent double show/shown event emits when
.sync
modifier used (fixes #1637) (#3001) (0d3599a) - utils/get: handle case when nested value is falsy (#2982) (40f6cb7)
- v-b-toggle/b-collapse: ensure toggle remains in sync with collapse (Closes #3020) (#3021) (6b36d0d)
- docs: algolia powered search (#2952) (0417f7b)
- modal: auto return focus to trigger element using previous document.activeElement if no return focus element provided (#3033) (e5c0aa5)
- modal: subclass
BvEvent
asBvModalEvent
for modal specific properties (#3024) (502eba9) - table: add TypeScript definitions for table fields (#2867) (436e8c1)
- v-b-scrollspy: support when vue-router is in
hash
based route mode (closes #2722) (#2953) (a713dd4)
Released 2019-03-28
- collapse/toggle: persist toggle state on element and prevent multiple state emits (closes #2923) (#2924) (6f899fc)
- docs: drop self-closing tags + build system improvements (fixes #2882) (#2893) (310c7dc)
- dropdown: fix
no-caret
prop when dropleft (fixes #2909) (#2910) (3bef981) - table: fix broken aria-labels for sortable columns + break out code into additional mixins + tests (#2884) (ddc2006)
- table: fix range selection (#2865) (da49558)
- table: fix SSR mismatch errors (#2897) (6c1940d)
- utils/dom: update closest routine to support SVG (#2901) (9d4408d)
- add BOOTSTRAP_VUE_NO_WARN environment variable to hide warnings (#2826) (44d0351)
- alert: remove need for custom CSS for fade transition (#2925) (0910b22)
- carousel: add no-hover-pause prop (#2888) (8a503ec)
- core: create configurable base global configuration (#2905) (8018bdf)
- form-checkbox/radio: allow no label in plain mode (fixes #2911) (#2912) (6f38d9d)
- form-file: add in prop and scoped slot for formatting selected file names (#2902) (f53b5f8)
- forms: new b-form-datalist helper component (#2899) (e9a8e85)
- table: add basic keyboard nav when table has row-clicked handler or is selectable (closes #2869) (#2870) (ddcd66a)
Released: 2019-03-18
- carousel: fix touchmove handler to re-enable swipe gestures (#2844) (a067f8c)
- form-radio/form-checkbox: ensure required prop propagated in group mode (fixes #2839) (#2842) (fc24589)
- pagination-nav: fix race condition with clicking prev/next buttons (#2834) (42f14e1)
- table: allow string for pagination prop types (#2824) (31d2044)
- table: don't emit row-clicked when user is selecting text (Closes #2791) (ecf0689)
- util/loose-equal: handle comparing sparse arrays (#2813) (6ac8ade)
- utils/get: handle cases when field value is not array or object (closes #2807) (#2808) (c656fa3)
- utils/observeDom: make sure to check for browser environment (#2838) (8471f31)
- docs: get recommended
Vue.js
andBootstrap
version frompackage.json
(#2840) (3a6702e) - pagination-nav: auto-detect current page based on $route/URL. Add support array of links (#2836) (65e12f8)
- table: new option to disable footer sorting (#2802) (bc443a3)
Released: 2019-03-08
- docs: correct and validate component meta information (#2665) (#2650) (29147ca)
- dom-utils: check for
el.classList
existence (#2713) (#2714) (4ff8b05) - form-file: fix v-model update watcher (#2695) (abf9d6e)
- form-input: allow number type for form-inputs via form-text mixin (#2738) (ec91788)
- modal: modal stacking position fix (#2677) (#2681) (ff4c4c9)
- nav-item: move listeners to link element (#2755) (40b19a7)
- nuxt-module: fix default inclusion of CSS files (#2629) (#2701) (afbb650)
- pagination: avoid using domProps innerText (#2744) (#2757) (d10f804)
- pagination: correct pagination props/slots/event docs and fix ellipsis slot (#2699) (25e04e1)
- radio/check group: remove redundant size class from the group container (#2743) (#2761) (0639588)
- tabs: fix initial value handling (#2656) (#2661) (2708c74)
- tabs: prevent double input event on mount, and add additional tests (#2748) (c462e0a)
- util/html: ensure argument is a string (#2770) (#2775) (356247f)
- utils: add back array notation support to
get()
util (#2689) (9e824a5) - utils: make
looseEqual()
util compliant with Vue.js spec (#2651) (1b6a994)
- card-img-lazy: new card-img-lazy sub-component (#2647) (d2e1f8a)
- docs: add heading anchor links (#2698) (fd6cbef)
- form-checkbox/radio: code improvements, test suites, and docs update (#2718) (#2721) (285a2e1)
- form-input: Added support for datalists to text form-inputs (#2781) (0339ad8)
- form-textarea: add
noAutoShrink
prop (#2664) (#2666) (a29c40c) - modal: add modal-backdrop slot (#2688) (ce18ffd)
- modal: add toggle method and root event (#2708) (#2709) (f67218e)
- modal: add variant prop for header close button (#2765) (b7e95d9)
- nuxt-module: add tree-shaking support to Nuxt module (#2654) (9aaf32f)
- table: add IDs to tbody > tr elements if primary-key provided (#2693) (#2694) (3d72404)
- table: added
thead-top
slot to table (#2489) (#2653) (fbb549c) - table: better default rendering of unformatted object values (#2733) (ee84672)
- table: make some slots available either as scoped or unscoped (#2740) (ab7937e)
- util/get, table: handle edge case where user has dot in actual item data field key (Closes (#2762) (#2764) (ee52844)
Released: 2019-02-18
- breadcrumb-item: Fix
to
prop handling (#2578) (fba9df3) - build: don't include babel runtime (#2590) (20828fa)
- build: Add @babel/runtime to devDependencies (#2569) (83a253b)
- card: fix array spread error when no-body is set and no content (5040566
- docs: change @include to @import in the Nuxt plugin module section (4fad60a)
- docs: correct typos (#2592) (9883f8f)
- docs: Correct typos in carousel docs (#2585) (87a721f)
- docs: fix broken link in form-textarea docs (#2598) (07162e1)
- docs: fix broken links (#2635) (fa90f3e)
- docs: Fix directive import paths (#2570) (2475542)
- docs: fix grid options table layout issue (#2630) (86a882f)
- docs: Improve wording in footer (#2576) (af7e36e)
- form-input: Allow number as value type (#2583) (dfaf34e)
- modal: better backdrop clickout handling (#2597) (#2608) (11c7524)
- nuxt plugin: fix typo with bootstrap vue css import properties (#2618) (8581090)
- utils/get: handle case where passed object is undefined (#2623) (#2624) (eb07b19)
- utils/loose-equal: Make
looseEqual()
util handle File object comparison correctly (#2640) (401d3e9) - Fix Html casing for props (#2594) (3772bf5)
- Temporary fix for validation icon positioning (#2599) (#2607) (7168989)
- forms: add state prop to invalid and valid feedback + docs update (#2611) (9df8dac)
- nuxt: module improvements (#2593) (0795fea)
- table: add support for scoped empty slots (#2641) (7917557)
- table: don't show empty row slot if table busy and busy slot provided (#2565) (#2572) (6fd31a4)
Released: (2019-02-14)
- alert: target custom transition CSS to the alert component (#2205) (0a48268)
- b-img-lazy: better initial inView check + new show prop (#1755) (#2382) (2416bad)
- breadcrumb-item: correctly set domProps when no children provided (523e3a2)
- breadcrumb-link: correctly use html/text (8b086a9)
- card: Drop
img-fluid
property (#2548) (cfc685f) - card: fix card and sub component render issues. (#2062) (#2125) (430371f)
- carousel: setInterval memory leak when no slides provided (#2399) (ac2a708)
- ci: remove test-beta (1076f3f)
- ci: remove test-beta (0fec992)
- ci: test on current vue (e3282bd)
- collapse: when is-nav, do better checking of click events (#2222) (#2225) (8b96e1e)
- collapse/toggle: "collapsed" class cleared when component updated (#2102) (#1798) (6d33cae)
- dependencies: replace opencollective with opencollective-postinstall (#2067) (fa26882)
- docs: Update links to bootstrap v4.3 docs (b5d5499)
- docs: Button - fix typo (#1962) (dcbfcf9)
- docs: change b-input-group attribute 'left' to 'prepend' (#2017) (d471502)
- docs: Collapse - typo fix (#1964) (becaa98)
- docs: create local marked-loader.js (#2380) (06cfb47)
- docs: Embed - fix typos (#1965) (ae7101e)
- docs: Fix broken examples (1d599a5)
- docs: Fix broken links. (#2517) (#2528) (c4b7e1e)
- docs: Fix console errors and improve
play
directive (#2176) (cc02130) - docs: fix issue with playground export button and improved error catching (#2197) (c69ffbc)
- docs: fix modal docs typo (#2507) (524db85)
- docs: fix playground hang issues. (#1843) (#2177) (5bdc2e6)
- docs: fix typo in collapse events doc (d8f5d69)
- docs: fixes broken styling of docs navigation (#1911) (95a5012)
- docs: guarantee css load order (#2274) (8841f6b)
- docs: improve CSS load ordering (#2255) (e193362)
- docs: fix input group prepend slot typo (#2059) (3c3cd8d)
- docs: Layout - fix typo (#1966) (c5a37d3)
- docs: missing dash and typo fix (#1850) (7b5fde8)
- docs: typo fix (#2009) (9e0eb67)
- docs: Update links to Bootstrap v4.2 (#2370) (470a083)
- docs: vue-loader v15 changes (#2005) (449a712)
- dropdown: Add back missing
click
events (#2460) (c5d858f) - dropdown: add missing TAB keyCode. (#1577 (#2140) (5e5c5c9)
- dropdown: focus menu container before emitting shown event. (#2520) (#2527) (1649c00)
- dropdown: fix item click event timing (#2251) (e620e07)
- dropdown: Menu focusout close handling (#2252) (1853954)
- dropdown: fix typo in README (#1939) (#1942) (8a2ca5e)
- dropdown: Use custom CSS for
no-caret
option (#1473) (#2136) (2eb706f) - dropdown-item-button: Add support for
active
state (#2212) (4b9e6c0) - dropdown, button, link: various bug fixes and aria fixes (#1814) (#1817) (#2159) (e79270d)
- fom-input: revert changes from PR #1841 (#2174) (aacc7c0)
- form-control: remove interim class fixes from bootstrap 4.0.x (#1896) (#2265) (64bdf69)
- form-file: fix
input
event loop onreset()
in multiple mode (#2289) (f483c7b) - form-file: Add prop to allow customization of browse button text (#2143) (#2168) (56c26da)
- form-file: fix drag and drop feature (#2169) (07bfc29)
- form-file: fix issue with "accept" values (#1526) (#2008) (963d478)
- form-group: add missing disabled prop (#2106) (#1798) (4971c06)
- form-group: allow label alignment on label when not horizontal (#2284) (c306b18)
- form-input: bug fixes and add new features (#2100) (0299159)
- form-input: custom-range style adjustments (#2122) (1917c15)
- form-state: explicitly handle when state is set to empty string. (#2166) (#2167) (805a7fe)
- input-group: Fix size styling issues for input types range and color (3ba1230)
- input-group: Minor fixes and documentation update (#2128) (afe1cd0)
- input-group: Styling fix for dropdowns, radio and checkbox groups (#2114 (#1560 (#2118) (ed31bcd)
- link: use
active
class when manually placed into active state (#2405) (8f13ede) - list-group-item: set button type to 'button' when button in mode or tag=button (#2192) (#2194) (4322ccb)
- modal: better enforce focus handler (#2215) (9628de2)
- modal: clear modal paddingLeft and paddingRight if no Scrollbar in adjustDialog() (#2050) (80f1d6e)
- modal: handle edge cases where modal is shown/hidden in rapid succession (#2236) (#2270) (e4a7bab)
- modal: Handle enforce focus when modals are stacked (#2175) (#2211) (7d768d1)
- modal: prevent scrolling on .modal-content focus (#1748 (#2060) (df9efad)
- modal: Show/Hide when once prevented (#2275) (9758dfd)
- nav-item-dropdown: close menu when clicked outside (#2202) (#2198) (9e3e33e)
- navbar: Support always expanded navbar (#2209) (#2210) (7c3737c)
- observe-dom: fix comment typo (#2084) (8b41913)
- package.json: prevent css and scss from being tree shaken out in docs (#2271) (44fd864)
- package.json: flag most of bootstrap-vue as being side effect free (#2268) (5a77532)
- pagination: adjust aria label defaults (#2508) (#2529) (9790dc2)
- pagination: fix component name in
package.json
(#2541) (331dc46) - pagination: fix escaped chars (#2479) (1efd59c)
- pagination: set default total rows to 0 (#2498) (#2526) (c3227a6)
- pagination pagination-nav: v-model active class fix + keypress click fix (#1985) (#1629) (#2299) (9afba6c)
- popover: Add directive to component plugin (#2115) (e39a855)
- popover: fixes close emit argument (#1937) (8b9db28)
- router-link: remove default values for active-class and exact-active-class (#2387) (#2388) (e3e30b8)
- safeId: trigger id creation/update after mount (#1978) (#2161) (48218fe)
- scss: import input-group.scss once at most (#2239) (2e7dcfa)
- select: Wait for the v-model value to update before emitting change event on form select (#2207) (7a860ee)
- tab: fix typo aria-labelledby (#1959) (#954 (5933955)
- table: allow filtering on false values and sorting date objects (#2485) (#2544) (79315d6)
- table: Clear selection when data change (#2267) (e381f38)
- table: Emit v-model input event only when computedItems changes (#2231) (#2254) (f0fb9af)
- table: fix filtered event, fix emptyFilter message w/filter function, fix reactivity of filter sub routines, fix empty header label accessibility issue (#1989) (#1517) (#2149) (e0e1eee)
- table: generate TR key using serialized item or primary key if provided (#2410) (#2416) (6e22d99)
- table: only call provider once DOM is fully updated (#1904) (#1955) (ae7147e)
- table: Preserve aria-rowcount and aria-describedby if provided (#1801) (#2195) (e0cdca0)
- table: return empty string if cell value is null or undefined (#1502) (#2139) (b62f8f4)
- table: selectable range mode update and minor fixes (#2326) (ef281d1)
- tabs: fix
tabIndex
prop type (#2459) (05ef65a) - tabs: Emit click on b-tab instance when button clicked (#2512) (#2530) (8e129a3)
- tabs: Fix tab titleLinkClass and titleItemClass handling (#2448) (36400f5)
- tabs: various fixes and improvements (#2327) (#2148) (#2403) (#2180) (#2442) (de11a8f)
- toolpop mixin: allow boundary type to be HTMLElement (#2229) (#2233) (8b8272b)
- tooltip docs typo corrected in tooltips (#1930) (5e4fbe4)
- tooltip: Add directive to component plugin (#2116) (e5bb09e)
- utils/loose-equal: check dates in looseEqual util (#2123) (8a8d0f0)
- relax prop type checks to prevent vue warns (835eccf)
- typo in form-radio watcher (#1943) (9ab23ef)
- use stable nuxt opencollective (#1885) (876f4a1)
- breadcrumb-link: support html (#2522) (c2ee63e)
- build: replace uglify-es with terser (#2238) (bd95ad8)
- button: Make button tag configurable (#1929) (afcadd9)
- card: include custom styles for card-img-left and card-img-right (#2292) (a72d494)
- card: new helper sub-components (#2375) (ff25314)
- card: support left and right image placement (#1981) (66194a6)
- carousel: add support for swipe on touch screens (#2409) (46a6763)
- carousel: support crossfade animation (#2406) (15d8a2c)
- carousel: use provide and inject for sub-component communication (#2407) (7f92318)
- css: create SCSS versions of CSS (#2218) (d6ba6db)
- css: Add SCSS support (#2201) (#2221) (f8326a2)
- docs: Allow sub-components to show reference info for slots and events (#2132) (52c960b)
- docs: conditionally load babel-standalone only on browsers that need transpilation (#2294) (1578732)
- docs: Improve code example markup and prettier integration (#2440) (74ad932)
- docs: Prettify with
prettier
(#2427) (9463138) - docs: use babel-standalone in playground/v-play to support IE (#2286) (46f8d4b)
- dropdown: support 'href', 'to' and 'variant' in split button mode (#1960) (#2301) (31b7d19)
- dropdown: support for form controls and free flow text (#2434) (7e8a2d5)
- dropdown: use provide and inject (#2431) (3df90ea)
- dropdown: Add
dropright
anddropleft
direction support (#2117) (#2108 (e186639) - form-checkbox: support custom switch styling (#2293) (3508ea2)
- form-file: reset file input when value set to null or empty string (#2170) (ab44375)
- form-group: Add multiple breakpoint support for label (#2230) (#2258) (5e453f9)
- form-input: initial SCSS file (#2217) (923d20b)
- form-input: support custom-range input + validation and input styles (#2120) (013a737)
- form-input: Use new form-text mixin and add trim and number modifiers (#2204) (3c9936e)
- form-radio-check: migrate to using provide/inject, add inline props (#2241) (c0a68d5)
- form-select: Expose focus and blur methods (#2237) (#2257) (ded7679)
- forms: add form prop to all inputs (#2154) (#2172) (6009d72)
- forms: add support for tooltip-style feedback text (#2188) (5203436)
- link: Add support for nuxt-link (#2384) (4bd462a)
- list-group: support horizontal layout (#2536) (10fa210)
- modal: add 'aria-modal="true"' to modal when open (#2314) (dbf4920)
- modal: Add
dialogClass
prop (#2465) (34ae267) - modal: add support for scrollable modal dialog content (#2535) (5c01faf)
- modal: Make stackable optional (#2259) (2322044)
- modal: Support multiple modals open at once (#2164) (2709902)
- pagination: added slots for first, prev, next, last, and ellipsis (#1870) (#1980) (1b7e7de)
- popover/tooltip: Add
boundaryPadding
prop to override Popper.js default padding (#2475) (c8ad487) - security: Strip HTML script tags before inserting content into DOM (#1974) (#1665) (#2129) (#2134) (#1931) (6dde0cb) (ba6f3f8)
- security: strip html tags (#2479) (3c6ba3e)
- spinner: Support Bootstrap v4.2 spinner component (#2306) (bf3994f)
- table: "Debounce" providerFunction and refresh methods (#2393) (d5f0462)
- table: add borderless prop (#2300) (dabe150)
- table: Add row-unhovered event (#1874) (a87cad1)
- table: add support for transitions on tbody element (#1821) (#2450) (91514af)
- table: add table row middle click (auxclicked) event (#2425) (23250a2)
- table: Add table-busy slot for loading status (#1859) (#2196) (a654a61)
- table: create initial SCSS file (#2216) (db0b483)
- switch to PascalCase name for all components (#2305) (6179e61)
- table: pass sortDesc to user provided sortCompare routine (#1994) (a8e4103)
- table: Remove need to add
click.stop
on inputs/links/buttons inside rows (#2214) (7d8662b) - table: Add support for selectable rows (#1790) (#2260) (5b1cb90)
- table: Split computedItems into multiple methods (#1893) (bb1c550)
- table: Support contextmenu event binding for table rows (#2064) (1eced46)
- table: Support sorting on nested object properties (#1868) (b699e4b)
- events: use passive event listeners where possible (#2435) (a01dee4)
- modal: Get scrollbar width just before modal opens rather than mount (#1800) (#2165) (e1729b4)
- modal: optimize model.resetScrollbar (#1831) (#1837) (a622358)
- pkg: remove lodash dependency from src (#2523) (b34ada3)
- progress: use provide and inject for inter component communication (#2540) (80b7e5f)
- utils/dom: use passive event listeners where possible (#2419) (78fe776)
- only call vueUse in main index.js entrypoint (#2542) (c0d469b)
Released: 2018-05-20
Released: 2018-05-17
- docs: Fix duplicate keys in events table (#1786) (fa60d56)
- docs: incorrect closing tag (#1838) (69e410d)
- docs: Remove incorrect code added during debugging (#1787) (9911507)
- form-input: always return formatted value (#1839) (77cc97b)
- tab: fix the delay in tab transition (#1812) (#1806) (5a7a290)
- table: fix aria-rowcount (#1836) (e3e5439)
- alert: Add fade prop (#1785) (0999b4c)
- breadcrumb-link: support children elements (#1832) (#1833) (42175f8)
- dropdown: make show/hide events cancelable . also adds toggle event (#1807) (4136bd9)
- table: Add no-sort-reset prop (#1784) (26aaeab)
- table: Add the sort-direction prop (#1783) (#1788) (9e1959d)
Released: 2018-04-27
- docs: typo in docs plugin (#1777) (fb50c6f)
- dropdown: aria-labelledby for dropdowns (8efa7ee)
- form-input: revert step, min and max props (#1767) (1ce1a20)
- img-lazy: typo (#1778) (11d113c)
- tooltip: typo in comment (#1779) (ef253f7)
Released: 2018-04-17
- docs: fix table refresh event name (#1692) (01e223c)
- default export in TypeScript definitions (cd7e310)
Released: 2018-04-16
- table: typo in README.md (#1729) (8d0e186)
- tabs: change default key nav to avoid breaking changes (#1733) (a6dea02)
- tabs: rename prop to no-key-nav, update docs (491d698)
- tabs: typo in tabs (#1735) (89eff3c)
- add basic typescript declarations (#1721) (3c040f0)
- form-input: add step, min and max props for use with number type (40ff380)
- table: support custom classes per table cell in a column (d05d6b6)
- tabs: add key nav prop like button toolbar has (#1733) (bc3b82b)
- tabs/noNavStyle: added related prop and check (91c7257)
Released: 2018-04-02
Released: 2018-04-02
NOTE Vue 2.5.15
has known issues with card slots. Please upgrade to 2.5.16
or newer
versions.
Released: 2018-04-01
- build: don't exclude lodash.get (543c3c2)
- card: pass children instead of default prop to sub-components (63b35e3)
- test: test against multi versions of vue (25d0b13)
- docs: only import debounce from lodash (a6abd6d)
Released: 2018-04-01
- contributing: Improve the commit guidelines (c506280)
- modal: Correct the internal btn variable names (301f2e4), closes #1650
- select: Fix issues with form-select (#1673) (e3336c5), closes #1658
- table: import lodash.get from "dependencies" (#1697) (4d620a5)
- dropdown, nav-item-dropdown: support menuClass and extraMenuClasses (#1683) (3da5f18)
- modal: add
modalClass
property tobModal
(#1682) (c7a10ef) - table: add field to the table column data cell slots (#1705) (e013d59)
- docs: lodash dependency (a02f10d)
Released: 2018-03-06
- popovers / tooltips: Accept an HTMLElement as a valid target (a375452)
- tab: add title slot (#1586) (724b453)
- table: Use object's property as a key (#1614) (4464f0a)
- tooltip: Allow a function as a tooltip target attribute (#1493) (048c3d4)
- modal: fix v-b-modal directive unbinding (#1617) (3f6a86a)
- table: avoid HTML injection in table data (63d8097)
- table: allow empty labels (5ee0923)
- table: Ignore BV keys when auto-discovering table fields (#1641) (f56f3e8)
- select: Always pass selectSize to selects (#1640) (2c725f6)
- docs: use "prepend" and "append" for input-group (#1593) (5b7ee09)
- docs: fix splash button styling (11484b3)
- docs: fix typo in docs (#1555) (c927377)
- docs: spelling correction in comment (#1568) (e0e4006)
- polyfill HTMLElement for SSR (d4dd9b3)
Released: 2018-01-25
- call
removeEventListener
on the right element (#1557) (cf2bfca), closes #1391 - form-group: replace .col-form-legend with .col-form-label (ac2d4dd)
- input-group: fix dropdown rounded corners. closes #1560. (7df01ff)
- modal: hide dropdown on click. (#1528) (3ad8a9a)
- id mixin: make localId_ a computed field (873b0e7)
Released: 2018-01-23
With v2.0.0
release, BootstrapVue is compatible with final stable release of Bootstrap v4.0.0
and beyond.
- If you are using any custom theme which was based on Bootstrap beta, there may be minor problems to be fixed. Please ensure to review migrate guide.
- With this release, we have removed majority of CSS fixes. If you are using ES builds, you may have
to add a
css-loader
to make it working probably. input-group-addon
API has been changed andleft/right
changed intoprepend/append
. Please refer to the docs for more information.
For prior release notes and commits, please refer to the CHANGELOG-OLD file.