Skip to content

Commit 10d7a0f

Browse files
authored
Merge pull request #4060 from bootstrap-vue/dev
chore: release 2.0.1
2 parents ce7f946 + 389eec5 commit 10d7a0f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+1046
-877
lines changed

CHANGELOG.md

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,53 @@
44
> [standard-version](https://github.com/conventional-changelog/standard-version) for commit
55
> guidelines.
66
7+
<a name="2.0.1"></a>
8+
9+
## [v2.0.1](https://github.com/bootstrap-vue/bootstrap-vue/compare/v2.0.0...v2.0.1)
10+
11+
Released: 2019-09-13
12+
13+
This patch release includes a few minor bug fixes and documentation updates.
14+
15+
### Bug Fixes v2.0.1
16+
17+
- **b-media:** fix vertical align class when `top` or `bottom` selected (fixes
18+
[#4052](https://github.com/bootstrap-vue/bootstrap-vue/issues/4052))
19+
([#4055](https://github.com/bootstrap-vue/bootstrap-vue/issues/4055))
20+
([9ccfe4c](https://github.com/bootstrap-vue/bootstrap-vue/commit/9ccfe4c))
21+
- **b-table:** handle filter as an object when using items provider, and prevent duplicate provider calls
22+
on mount (fixes [#4065](https://github.com/bootstrap-vue/bootstrap-vue/issues/4065))
23+
([#4068](https://github.com/bootstrap-vue/bootstrap-vue/issues/4068))
24+
([9ddd115](https://github.com/bootstrap-vue/bootstrap-vue/commit/9ddd115))
25+
- **b-table:** remove extra slashes in mixins imports
26+
([#4087](https://github.com/bootstrap-vue/bootstrap-vue/issues/4087))
27+
([77f5be1](https://github.com/bootstrap-vue/bootstrap-vue/commit/77f5be1))
28+
- **tooltips, popovers:** check `document.body` instead of `document` for IE11 support (fixes
29+
[#4074](https://github.com/bootstrap-vue/bootstrap-vue/issues/4074))
30+
([#4075](https://github.com/bootstrap-vue/bootstrap-vue/issues/4075))
31+
([1eda4fe](https://github.com/bootstrap-vue/bootstrap-vue/commit/1eda4fe))
32+
- **v-b-tooltip, v-b-popover:** add missing `disabled` config option
33+
([#4057](https://github.com/bootstrap-vue/bootstrap-vue/issues/4057))
34+
([f488dc1](https://github.com/bootstrap-vue/bootstrap-vue/commit/f488dc1))
35+
- **v-b-tooltip, v-b-popover:** don't show if no title/content provided (closes
36+
[#4064](https://github.com/bootstrap-vue/bootstrap-vue/issues/4064))
37+
([#4076](https://github.com/bootstrap-vue/bootstrap-vue/issues/4076))
38+
([0b7de29](https://github.com/bootstrap-vue/bootstrap-vue/commit/0b7de29))
39+
740
<a name="2.0.0"></a>
841

942
## [v2.0.0](https://github.com/bootstrap-vue/bootstrap-vue/compare/v2.0.0-rc.28...v2.0.0)
1043

1144
Released: 2019-09-06
1245

13-
> **BoootstrapVue 2.0.0 stable** introduces several new features and bug fixes. Please note that
14-
> this release also _includes several breaking changes_.
46+
> **BootstrapVue 2.0.0 stable** introduces several new features and bug fixes. Please note that this
47+
> release also _includes several breaking changes_.
1548
1649
**Notable improvements:**
1750

18-
- Tooltips and popovers have been competely re-written for better reactivity and stability. The
51+
- Tooltips and popovers have been completely re-written for better reactivity and stability. The
1952
directive versions are now reactive to trigger element `title` attribute changes and configuration
20-
changes. The component versions now perform better when qucikly hovering/unhovering the trigger
53+
changes. The component versions now perform better when quickly hovering/un-hovering the trigger
2154
element. Component and directive versions now have a default delay of `50`ms (affects `'hover'`
2255
and `'focus'` triggers only). They can now have a trigger of `'manual'` (when used by itself) of
2356
which they can only be opened or closed programmatically. Users can now optionally specify the ID
@@ -30,7 +63,7 @@ Released: 2019-09-06
3063
for targeting inner elements, just like with any other component).
3164
- New SVG background image based sorting indicator icons for `<b-table>`, with the ability to place
3265
them on either the right (default) or left of the table cell headers (via a new prop).
33-
- Programmatic selection of `<b-table>` selctable rows.
66+
- Programmatic selection of `<b-table>` selectable rows.
3467
- Ability to provide your own custom footer structure for `<b-table>` and `<b-table-lite>`.
3568

3669
### Breaking changes and deprecated features removal v2.0.0
@@ -108,8 +141,8 @@ examples, and below for a list of fixes and new features.
108141

109142
### Bug Fixes v2.0.0
110143

111-
- **b-dropdown-\*:** ensure class bindings are placed on root element for all dropdown sub-components
112-
(closes [#4022](https://github.com/bootstrap-vue/bootstrap-vue/issues/4022))
144+
- **b-dropdown-\*:** ensure class bindings are placed on root element for all dropdown
145+
sub-components (closes [#4022](https://github.com/bootstrap-vue/bootstrap-vue/issues/4022))
113146
([#4024](https://github.com/bootstrap-vue/bootstrap-vue/issues/4024))
114147
([81efb89](https://github.com/bootstrap-vue/bootstrap-vue/commit/81efb89))
115148
- **b-form-textarea:** handle initial auto-height when in modal, tabs, or other component with
@@ -137,8 +170,7 @@ examples, and below for a list of fixes and new features.
137170
([#3887](https://github.com/bootstrap-vue/bootstrap-vue/issues/3887))
138171
([2302b31](https://github.com/bootstrap-vue/bootstrap-vue/commit/2302b31))
139172
- **b-table, b-table-lite:** generate `:key` for `row-details` row based on the `primary-key` field
140-
value if available
141-
([#4025](https://github.com/bootstrap-vue/bootstrap-vue/issues/4025))
173+
value if available ([#4025](https://github.com/bootstrap-vue/bootstrap-vue/issues/4025))
142174
([c7cb16f](https://github.com/bootstrap-vue/bootstrap-vue/commit/c7cb16f))
143175
- **v-b-toggle:** don't override `role` if element has a `role` assigned
144176
([#3889](https://github.com/bootstrap-vue/bootstrap-vue/issues/3889))
@@ -232,7 +264,7 @@ examples, and below for a list of fixes and new features.
232264
([#3908](https://github.com/bootstrap-vue/bootstrap-vue/issues/3908))
233265
([eebab43](https://github.com/bootstrap-vue/bootstrap-vue/commit/eebab43))
234266

235-
### Depreaction removals v2.0.0
267+
### Deprecation removals v2.0.0
236268

237269
- **b-dropdown:** remove deprecated slot `text`
238270
([#3868](https://github.com/bootstrap-vue/bootstrap-vue/issues/3868))

CONTRIBUTING.md

Lines changed: 5 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ This is very important, as the `CHANGELOG` is generated from these messages.
4444

4545
Examples:
4646

47-
- `fix(modal): fixes some broken modal stuff`
48-
- `feat(table): add a feature to the table component!`
47+
- `fix(b-modal): fixes some broken modal stuff`
48+
- `feat(b-table): add a feature to the table component!`
4949

5050
## Financial contributions
5151

@@ -54,38 +54,13 @@ We also welcome financial contributions in full transparency on our
5454
expense makes sense for the development of the community, it will be "merged" in the ledger of our
5555
open collective by the core contributors and the person who filed the expense will be reimbursed.
5656

57-
## Credits
57+
Consider asking your company to also support this open source project by
58+
[becoming a sponsor](https://opencollective.com/bootstrap-vue#sponsor)
5859

59-
### Contributors
60+
## Contributors
6061

6162
Thank you to all the people who have already contributed to bootstrap-vue!
6263

6364
<div class="p-3 mb-3text-center">
6465
<a href="https://github.com/bootstrap-vue/bootstrap-vue/graphs/contributors" rel="noopener" class="d-inline-block"><img src="https://opencollective.com/bootstrap-vue/contributors.svg?width=890" class="img-fluid"></a>
6566
</div>
66-
67-
### Backers
68-
69-
Thank you to all our backers! [[Become a backer](https://opencollective.com/bootstrap-vue#backer)]
70-
71-
<div class="p-3 mb-3 text-center">
72-
<a href="https://opencollective.com/bootstrap-vue#backers" target="_blank" rel="noopener" class="d-inline-block"><img src="https://opencollective.com/bootstrap-vue/backers.svg?width=890" class="img-fluid"></a>
73-
</div>
74-
75-
### Sponsors
76-
77-
Thank you to all our sponsors! (please ask your company to also support this open source project by
78-
[becoming a sponsor](https://opencollective.com/bootstrap-vue#sponsor))
79-
80-
<div class="p-3 mb-3 rounded-lg text-center" style="background-color: #d7d7d7;">
81-
<a href="https://opencollective.com/bootstrap-vue/sponsor/0/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/0/avatar.svg"></a>
82-
<a href="https://opencollective.com/bootstrap-vue/sponsor/1/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/1/avatar.svg"></a>
83-
<a href="https://opencollective.com/bootstrap-vue/sponsor/2/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/2/avatar.svg"></a>
84-
<a href="https://opencollective.com/bootstrap-vue/sponsor/3/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/3/avatar.svg"></a>
85-
<a href="https://opencollective.com/bootstrap-vue/sponsor/4/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/4/avatar.svg"></a>
86-
<a href="https://opencollective.com/bootstrap-vue/sponsor/5/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/5/avatar.svg"></a>
87-
<a href="https://opencollective.com/bootstrap-vue/sponsor/6/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/6/avatar.svg"></a>
88-
<a href="https://opencollective.com/bootstrap-vue/sponsor/7/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/7/avatar.svg"></a>
89-
<a href="https://opencollective.com/bootstrap-vue/sponsor/8/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/8/avatar.svg"></a>
90-
<a href="https://opencollective.com/bootstrap-vue/sponsor/9/website" target="_blank" rel="noopener" class="d-inline-block m-3"><img src="https://opencollective.com/bootstrap-vue/sponsor/9/avatar.svg"></a>
91-
</div>

docs/components/backers-donors.vue

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
<template>
2+
<div>
3+
<template v-if="backers.length > 0">
4+
<h3 class="h5 mx-auto mt-3 text-muted">Backers</h3>
5+
<div class="backer-container d-flex flex-wrap mx-n2 text-center justify-content-center font-weight-bold">
6+
<div v-for="backer in backers" :key="backer.slug" class="m-2 position-relative">
7+
<div class="backer img-thumbnail bg-light mx-auto d-flex align-items-center justify-content-center overflow-hidden">
8+
<b-img-lazy :src="backer.imageUrl" fluid block alt="Backer image"></b-img-lazy>
9+
</div>
10+
<p class="backer-name small mb-0 pt-2">
11+
<b-link
12+
v-if="backer.website"
13+
:href="backer.website"
14+
target="_blank"
15+
class="stretched-link text-reset"
16+
>
17+
{{ backer.name }}
18+
</b-link>
19+
<template v-else>
20+
{{ backer.name }}
21+
</template>
22+
</p>
23+
</div>
24+
</div>
25+
</template>
26+
27+
<template v-if="donors.length > 0">
28+
<h3 class="h5 mx-auto mt-3 text-muted">Donors</h3>
29+
<div class="donor-container d-flex flex-wrap mx-n1 text-center justify-content-center">
30+
<div v-for="donor in donors" :key="donor.slug" class="m-1 position-relative">
31+
<div class="donor img-thumbnail d-flex align-items-center justify-content-center overflow-hidden">
32+
<b-link
33+
v-if="donor.website"
34+
:href="donor.website"
35+
:title="donor.name"
36+
target="_blank"
37+
class="stretched-link"
38+
>
39+
<b-img-lazy :src="donor.imageUrl" fluid block alt="Donor image"></b-img-lazy>
40+
</b-link>
41+
<b-img-lazy
42+
v-else
43+
:src="donor.imageUrl"
44+
:title="donor.name"
45+
alt="Donor image"
46+
fluid
47+
block
48+
></b-img-lazy>
49+
</div>
50+
</div>
51+
</div>
52+
</template>
53+
</div>
54+
</template>
55+
56+
<style scoped>
57+
.backer {
58+
width: 80px;
59+
height: 80px;
60+
}
61+
62+
.backer-name {
63+
width: 80px;
64+
}
65+
66+
.donor {
67+
width: 55px;
68+
height: 55px;
69+
}
70+
</style>
71+
72+
<script>
73+
const baseURL = 'https://rest.opencollective.com/v2/bootstrap-vue/orders/incoming/'
74+
75+
export default {
76+
data() {
77+
return {
78+
backers: [],
79+
donors: []
80+
}
81+
},
82+
mounted() {
83+
// Backers are people/organizations with recurring (active) donations
84+
this.requestOC(this.processBackers.bind(this), 'active')
85+
// Donors are people/organizations with one-time (paid) donations
86+
this.requestOC(this.processDonors.bind(this), 'paid')
87+
},
88+
methods: {
89+
requestOC(cb, type = 'active') {
90+
// Do the async request (we limit to the most recent 50 entries)
91+
const ocURL = `${baseURL}${type}?limit=50`
92+
const xhr = new XMLHttpRequest()
93+
94+
const onLoad = () => {
95+
if (xhr.readyState !== 4) {
96+
return
97+
}
98+
if (xhr.status === 200) {
99+
const response = JSON.parse(xhr.responseText) || {}
100+
cb(this.processOcNodes(response.nodes || []), null)
101+
} else {
102+
// We just return an empty node list rather than spew an error
103+
// eslint-disable-next-line standard/no-callback-literal
104+
cb([], xhr.statusText)
105+
}
106+
}
107+
108+
xhr.open('GET', ocURL, true)
109+
xhr.addEventListener('load', onLoad)
110+
// Initiate the request
111+
xhr.send()
112+
},
113+
processOcNodes(nodes = []) {
114+
return nodes.map(entry => {
115+
return {
116+
slug: entry.fromAccount.slug,
117+
name: entry.fromAccount.name,
118+
type: entry.fromAccount.type,
119+
imageUrl: entry.fromAccount.imageUrl,
120+
website: entry.fromAccount.website,
121+
status: entry.status,
122+
// For recurring donations, this is the installment amount
123+
// For one time donations, this is the donation amount (most recent)
124+
amount: entry.amount.value,
125+
// For recurring donations, this is the total amount donated
126+
// For users that donate multiple times, this will be the total of all one time donations
127+
totalAmount: entry.totalDonations.value,
128+
// For recurring donations, this is how often the donation is received
129+
frequency: entry.frequency,
130+
// We now have sponsor tiers, but some appear as
131+
// `null` (they were made before the tiers were created)
132+
tier: (entry.tier || {}).slug,
133+
date: new Date(entry.createdAt)
134+
}
135+
})
136+
},
137+
sortCompare(a = {}, b = {}) {
138+
// Sort first by amount, then by date
139+
return (b.totalAmount || 0) - (a.totalAmount || 0) || (b.date || 0) - (a.date || 0)
140+
},
141+
processBackers(backers = []) {
142+
// Backers are provided in reverse chronological order
143+
// so we sort by larger amount first, then by date
144+
// Limit to top 16 backers
145+
this.backers = backers
146+
.filter(backer => backer.status === 'ACTIVE')
147+
.sort(this.sortCompare)
148+
.slice(0, 16)
149+
},
150+
processDonors(donors = []) {
151+
// Donors are provided in reverse chronological order,
152+
// but donors can be listed more than once (for each individual donation),
153+
// although the totalDonations is the same on each entry.
154+
// We sort by larger amount first, then by date
155+
// Limit to top 25 most recent donors
156+
this.donors = donors
157+
.filter(donor => donor.status === 'PAID')
158+
.reduce((arr, donor) => {
159+
if (arr.map(d => d.slug).indexOf(donor.slug) === -1) {
160+
arr.push(donor)
161+
}
162+
return arr
163+
}, [])
164+
.sort(this.sortCompare)
165+
.slice(0, 34)
166+
}
167+
}
168+
}
169+
</script>

docs/markdown/reference/accessibility/README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,32 @@ sliding animation in carousels) will be disabled.
8383
If you are expecting animations and/or transitions to work and they are not, then you may have the
8484
reduced motion (no animation) setting enabled in your operating system control panel.
8585

86+
## Testing your application for accessibility
87+
88+
It is highly recommended to test your app for accessibility before deployment. Note that some
89+
countries even have laws
90+
[requiring all websites to be accessible](https://webaim.org/articles/laws/world/).
91+
92+
There are just two main things to think about when making your web app accessible:
93+
94+
- Defining the right keyboard behavior. BootstrapVue provides keyboard control for most of our
95+
components, but you should make sure your custom components are also keyboard accessible.
96+
- Making it possible for screen readers to understand your app. Bootstrap, in most situations, will
97+
automatically set the correct `role` and `aria-*` attributes on our components. You should also
98+
make sure that all of your custom components provide the correct roles and attributes (use
99+
semantic HTML elements and markup where possible).
100+
101+
Steps you should do for testing:
102+
103+
- Try using the _keyboard only_ to see if all interactive components can be reached and controlled.
104+
Ensure that controls have focus styling so that the user knows which interactive element they are
105+
on. Remember, keyboard user _cannot_ trigger an element's `hover` state.
106+
- Use a screen reader (combined with keyboard only) to navigate and interact with your app. There
107+
are several free screen readers available for various operating systems and browsers. Remember
108+
that screen reader users can only "see" what they hear.
109+
- See how your app looks and works when increasing the zoom level (and/or font size) of your
110+
browser.
111+
86112
## Additional resources
87113

88114
- [Bootstrap v4 Accessibility Documentation](https://getbootstrap.com/docs/4.3/getting-started/accessibility/)

docs/markdown/reference/validation/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ error message component.
9898

9999
## VeeValidate
100100

101-
[VeeValidate](https://baianat.github.io/vee-validate/) is a plugin for Vue.js that allows you to
101+
[VeeValidate](https://logaretm.github.io/vee-validate/) is a plugin for Vue.js that allows you to
102102
validate input fields and display errors. It has full support for
103103
[Vue I18n](https://kazupon.github.io/vue-i18n/) and provides fairly good out of the box error
104104
messages.

docs/nuxt.config.js

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -179,11 +179,25 @@ module.exports = {
179179
height: '3px'
180180
},
181181

182-
manifest: {
183-
name: 'BootstrapVue',
184-
short_name: 'BootstrapVue',
185-
description: 'Quickly integrate Bootstrap v4 components with Vue.js',
186-
theme_color: '#563d7c'
182+
pwa: {
183+
icon: {
184+
// iconFileName: 'icon.png',
185+
iconSrc: '~/static/icon.png'
186+
},
187+
manifest: {
188+
name: 'BootstrapVue',
189+
short_name: 'BootstrapVue',
190+
description: 'Quickly integrate Bootstrap v4 components with Vue.js',
191+
theme_color: '#563d7c'
192+
},
193+
meta: {
194+
// `ogHost` is required for `og:image` to be populated
195+
ogHost: 'https://bootstrap-vue.js.org',
196+
ogImage: true,
197+
twitterCard: 'summary',
198+
twitterSite: '@BootstrapVue',
199+
twitterCreator: '@BootstrapVue'
200+
}
187201
},
188202

189203
generate: {

0 commit comments

Comments
 (0)