From 3ecac4aecb063968a8d14020108681439e1c50cf Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Fri, 5 Apr 2019 19:08:01 -0300 Subject: [PATCH 01/19] Update bv-event.class.js --- src/utils/bv-event.class.js | 39 ++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/src/utils/bv-event.class.js b/src/utils/bv-event.class.js index b6169e25d48..bd01066fe2b 100644 --- a/src/utils/bv-event.class.js +++ b/src/utils/bv-event.class.js @@ -13,7 +13,7 @@ class BvEvent { } // Assign defaults first, the eventInit, // and the type last so it can't be overwritten. - assign(this, BvEvent.defaults(), eventInit, { type }) + assign(this, BvEvent.defaults(), constructor.defaults(), eventInit, { type }) // Freeze some props as readonly, but leave them enumerable. defineProperties(this, { type: readonlyDescriptor(), @@ -53,4 +53,41 @@ class BvEvent { } } +class BvModalEvent extends BvEvent { + constructor(type, eventInit = {}) { + super(type, eventInit) + // Freeze our new props as readonly, but leave them enumerable. + defineProperties(this, { + modalId: readonlyDescriptor(), + trigger: readonlyDescriptor() + }) + } + + get isOK() /* istanbul ignore next */ { + warn(`b-modal: evt.isOK is deprecated. Please use evt.trigger === 'ok'.`) + return this.trigger === 'ok' + } + + cancel() /* istanbul ignore next */ { + // Backwards compatibility + warn('b-modal: evt.cancel() is deprecated. Please use evt.preventDefault().') + this.preventDefault() + } + + static defaults() { + return { + ...super.defaults(), + modalId: null, + trigger: null + } + } +} + +// Named Exports +export { + BvEvent, + BvModalEvent +} + +// Default Export export default BvEvent From 6a20bc9aa95804935536b5e8ec5a78ef7d699fc0 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Fri, 5 Apr 2019 19:22:42 -0300 Subject: [PATCH 02/19] Update bv-event.class.js --- src/utils/bv-event.class.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/utils/bv-event.class.js b/src/utils/bv-event.class.js index bd01066fe2b..694b6f6d9c9 100644 --- a/src/utils/bv-event.class.js +++ b/src/utils/bv-event.class.js @@ -1,4 +1,5 @@ -import { assign, defineProperty, defineProperties, readonlyDescriptor } from '../utils/object' +import { assign, defineProperty, defineProperties, readonlyDescriptor } from './object' +import warn from './warn' class BvEvent { constructor(type, eventInit = {}) { @@ -84,10 +85,7 @@ class BvModalEvent extends BvEvent { } // Named Exports -export { - BvEvent, - BvModalEvent -} +export { BvEvent, BvModalEvent } // Default Export export default BvEvent From 3dcd7dd82e6b38988ebbbc713e31a1f9de3fec6e Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Fri, 5 Apr 2019 20:12:28 -0300 Subject: [PATCH 03/19] Update bv-event.class.js --- src/utils/bv-event.class.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/utils/bv-event.class.js b/src/utils/bv-event.class.js index 694b6f6d9c9..4020a5b79d6 100644 --- a/src/utils/bv-event.class.js +++ b/src/utils/bv-event.class.js @@ -14,7 +14,7 @@ class BvEvent { } // Assign defaults first, the eventInit, // and the type last so it can't be overwritten. - assign(this, BvEvent.defaults(), constructor.defaults(), eventInit, { type }) + assign(this, BvEvent.Defaults, this.constructor.Defaults, eventInit, { type }) // Freeze some props as readonly, but leave them enumerable. defineProperties(this, { type: readonlyDescriptor(), @@ -42,7 +42,7 @@ class BvEvent { }) } - static defaults() { + static get Defaults() { return { type: '', cancelable: true, @@ -75,7 +75,7 @@ class BvModalEvent extends BvEvent { this.preventDefault() } - static defaults() { + static get Defaults() { return { ...super.defaults(), modalId: null, From 43a7e00baa9531031c80f5eee991c229053984f7 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Fri, 5 Apr 2019 21:04:12 -0300 Subject: [PATCH 04/19] Update bv-event.class.spec.js --- src/utils/bv-event.class.spec.js | 80 +++++++++++++++++++++++++++++++- 1 file changed, 79 insertions(+), 1 deletion(-) diff --git a/src/utils/bv-event.class.spec.js b/src/utils/bv-event.class.spec.js index d6882ac59c7..3885725a001 100644 --- a/src/utils/bv-event.class.spec.js +++ b/src/utils/bv-event.class.spec.js @@ -1,4 +1,4 @@ -import BvEvent from './bv-event.class' +import { BvEvent, BvModalEvent } from './bv-event.class' describe('utils/BvEvent', () => { it('works', async () => { @@ -63,4 +63,82 @@ describe('utils/BvEvent', () => { expect(evt.cancelable).toBe(true) expect(evt.custom).toBe(123) }) + + describe('BvModalEvent', () => { + it('works', async () => { + const evt = new BvModalEvent('foobar') + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt).toBeInstanceOf(BvEvent) + expect(evt.type).toBe('foobar') + expect(evt.isOK).toBe(false) + }) + + it('throws exception if no type given', async () => { + let evt = null + let failed = false + try { + evt = new BvModalEvent() + } catch (e) { + failed = true + } + expect(evt).not.toBeInstanceOf(BvModalEvent) + expect(evt).not.toBeInstanceOf(BvEvent) + expect(evt).toBe(null) + expect(failed).toBe(true) + }) + + it('supports cancelable events', async () => { + const evt = new BvModalEvent('foobar', { + cancelable: true + }) + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(true) + expect(evt.defaultPrevented).toBe(false) + evt.preventDefault() + expect(evt.defaultPrevented).toBe(true) + }) + + it('supports non cancelable events', async () => { + const evt = new BvModalEvent('foobar', { + cancelable: false + }) + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(false) + expect(evt.defaultPrevented).toBe(false) + evt.preventDefault() + expect(evt.defaultPrevented).toBe(false) + }) + + it('supports built in properties', async () => { + const evt = new BvModalEvent('foobar', { + target: 'baz', + trigger: 'ok' + }) + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(true) + expect(evt.target).toBe('baz') + expect(evt.trigger).toBe('ok') + expect(evt.isOK).toBe(true) + let failed = false + try { + evt.trigger = 'foobar' + } catch (e) { + failed = true + } + expect(failed).toBe(true) + }) + + it('supports custom properties', async () => { + const evt = new BvEvent('foobar', { + custom: 123 + }) + expect(evt).toBeInstanceOf(BvEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(true) + expect(evt.custom).toBe(123) + }) + }) }) From 93dc7ba5171b9a67452af163425917719522b46f Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Fri, 5 Apr 2019 23:04:08 -0300 Subject: [PATCH 05/19] Update bv-event.class.js --- src/utils/bv-event.class.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utils/bv-event.class.js b/src/utils/bv-event.class.js index 4020a5b79d6..da94065ab0e 100644 --- a/src/utils/bv-event.class.js +++ b/src/utils/bv-event.class.js @@ -77,7 +77,7 @@ class BvModalEvent extends BvEvent { static get Defaults() { return { - ...super.defaults(), + ...super.Defaults, modalId: null, trigger: null } From 0e8811ccd1a177e18e75b02434caaf0fdf68da74 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sat, 6 Apr 2019 21:01:17 -0300 Subject: [PATCH 06/19] Update bv-event.class.js --- src/utils/bv-event.class.js | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/utils/bv-event.class.js b/src/utils/bv-event.class.js index da94065ab0e..ade8a6fda4b 100644 --- a/src/utils/bv-event.class.js +++ b/src/utils/bv-event.class.js @@ -64,11 +64,6 @@ class BvModalEvent extends BvEvent { }) } - get isOK() /* istanbul ignore next */ { - warn(`b-modal: evt.isOK is deprecated. Please use evt.trigger === 'ok'.`) - return this.trigger === 'ok' - } - cancel() /* istanbul ignore next */ { // Backwards compatibility warn('b-modal: evt.cancel() is deprecated. Please use evt.preventDefault().') From 359331a8068aca08be81c60fd1605210c3bf7411 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sat, 6 Apr 2019 21:06:09 -0300 Subject: [PATCH 07/19] Update bv-event.class.spec.js --- src/utils/bv-event.class.spec.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/utils/bv-event.class.spec.js b/src/utils/bv-event.class.spec.js index 3885725a001..7fa8568efe1 100644 --- a/src/utils/bv-event.class.spec.js +++ b/src/utils/bv-event.class.spec.js @@ -70,7 +70,6 @@ describe('utils/BvEvent', () => { expect(evt).toBeInstanceOf(BvModalEvent) expect(evt).toBeInstanceOf(BvEvent) expect(evt.type).toBe('foobar') - expect(evt.isOK).toBe(false) }) it('throws exception if no type given', async () => { @@ -121,7 +120,6 @@ describe('utils/BvEvent', () => { expect(evt.cancelable).toBe(true) expect(evt.target).toBe('baz') expect(evt.trigger).toBe('ok') - expect(evt.isOK).toBe(true) let failed = false try { evt.trigger = 'foobar' From f31af67da113c761f36f5eff5a008e029378f951 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sun, 7 Apr 2019 14:22:21 -0300 Subject: [PATCH 08/19] Create bv-modal-event.class.js --- .../modal/helpers/bv-modal-event.class.js | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/components/modal/helpers/bv-modal-event.class.js diff --git a/src/components/modal/helpers/bv-modal-event.class.js b/src/components/modal/helpers/bv-modal-event.class.js new file mode 100644 index 00000000000..b2f15ab7959 --- /dev/null +++ b/src/components/modal/helpers/bv-modal-event.class.js @@ -0,0 +1,34 @@ +import BvEvent from '../../../utils/bv-event.class' +import warn from '../../../utils/warn' +import { defineProperties, readonlyDescriptor } from '../../../utils/object' + +class BvModalEvent extends BvEvent { + constructor(type, eventInit = {}) { + super(type, eventInit) + // Freeze our new props as readonly, but leave them enumerable. + defineProperties(this, { + modalId: readonlyDescriptor(), + trigger: readonlyDescriptor() + }) + } + + cancel() /* istanbul ignore next */ { + // Backwards compatibility for 1.x BootstrapVue + warn('b-modal: evt.cancel() is deprecated. Please use evt.preventDefault().') + this.preventDefault() + } + + static get Defaults() { + return { + ...super.Defaults, + modalId: null, + trigger: null + } + } +} + +// Named Exports +export { BvModalEvent } + +// Default Export +export default BvModalEvent From 1ab57f676fec54fd2504b4289a95ad867bc1e8b0 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sun, 7 Apr 2019 14:28:30 -0300 Subject: [PATCH 09/19] Create bv-modal-event.class.spec.js --- .../helpers/bv-modal-event.class.spec.js | 103 ++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 src/components/modal/helpers/bv-modal-event.class.spec.js diff --git a/src/components/modal/helpers/bv-modal-event.class.spec.js b/src/components/modal/helpers/bv-modal-event.class.spec.js new file mode 100644 index 00000000000..73517ce96f7 --- /dev/null +++ b/src/components/modal/helpers/bv-modal-event.class.spec.js @@ -0,0 +1,103 @@ +import BvModalEvent from './bv-event.class' +import BvEvent from '../../../utils/bv-event.class' + +describe('modal > BvModalEvent', () => { + it('works', async () => { + const evt = new BvModalEvent('foobar') + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt).toBeInstanceOf(BvEvent) + expect(evt.type).toBe('foobar') + }) + + it('throws exception if no type given', async () => { + let evt = null + let failed = false + try { + evt = new BvModalEvent() + } catch (e) { + failed = true + } + expect(evt).not.toBeInstanceOf(BvModalEvent) + expect(evt).not.toBeInstanceOf(BvEvent) + expect(evt).toBe(null) + expect(failed).toBe(true) + }) + + it('supports cancelable events via evt.preventDefault()', async () => { + const evt = new BvModalEvent('foobar', { + cancelable: true + }) + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(true) + expect(evt.defaultPrevented).toBe(false) + evt.preventDefault() + expect(evt.defaultPrevented).toBe(true) + }) + + it('supports cancelable events via deprecated evt.cancel()', async () => { + const evt = new BvModalEvent('foobar', { + cancelable: true + }) + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(true) + expect(evt.defaultPrevented).toBe(false) + evt.cancel() + expect(evt.defaultPrevented).toBe(true) + }) + + it('supports non cancelable events', async () => { + const evt = new BvModalEvent('foobar', { + cancelable: false + }) + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(false) + expect(evt.defaultPrevented).toBe(false) + evt.preventDefault() + expect(evt.defaultPrevented).toBe(false) + }) + + it('supports built in properties', async () => { + const evt = new BvModalEvent('foobar', { + target: 'baz', + trigger: 'ok', + modalId: 'foo' + }) + expect(evt).toBeInstanceOf(BvModalEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(true) + expect(evt.target).toBe('baz') + expect(evt.trigger).toBe('ok') + expect(evt.modalId).toBe('foo') + + let failed = false + try { + evt.trigger = 'foobar' + } catch (e) { + failed = true + } + expect(failed).toBe(true) + expect(evt.trigger).toBe('ok') + + failed = false + try { + evt.modalId = 'fail' + } catch (e) { + failed = true + } + expect(failed).toBe(true) + expect(evt.modalId).toBe('foo') + }) + + it('supports custom properties', async () => { + const evt = new BvEvent('foobar', { + custom: 123 + }) + expect(evt).toBeInstanceOf(BvEvent) + expect(evt.type).toBe('foobar') + expect(evt.cancelable).toBe(true) + expect(evt.custom).toBe(123) + }) +}) From df7e3b9d5f0e6fcf398ba741244f41fca47ec4cd Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sun, 7 Apr 2019 14:29:27 -0300 Subject: [PATCH 10/19] Update bv-event.class.spec.js --- src/utils/bv-event.class.spec.js | 80 +------------------------------- 1 file changed, 2 insertions(+), 78 deletions(-) diff --git a/src/utils/bv-event.class.spec.js b/src/utils/bv-event.class.spec.js index 7fa8568efe1..aaa6bbe5240 100644 --- a/src/utils/bv-event.class.spec.js +++ b/src/utils/bv-event.class.spec.js @@ -1,6 +1,6 @@ -import { BvEvent, BvModalEvent } from './bv-event.class' +import BvEvent from './bv-event.class' -describe('utils/BvEvent', () => { +describe('utils/BvEvent class', () => { it('works', async () => { const evt = new BvEvent('foobar') expect(evt).toBeInstanceOf(BvEvent) @@ -63,80 +63,4 @@ describe('utils/BvEvent', () => { expect(evt.cancelable).toBe(true) expect(evt.custom).toBe(123) }) - - describe('BvModalEvent', () => { - it('works', async () => { - const evt = new BvModalEvent('foobar') - expect(evt).toBeInstanceOf(BvModalEvent) - expect(evt).toBeInstanceOf(BvEvent) - expect(evt.type).toBe('foobar') - }) - - it('throws exception if no type given', async () => { - let evt = null - let failed = false - try { - evt = new BvModalEvent() - } catch (e) { - failed = true - } - expect(evt).not.toBeInstanceOf(BvModalEvent) - expect(evt).not.toBeInstanceOf(BvEvent) - expect(evt).toBe(null) - expect(failed).toBe(true) - }) - - it('supports cancelable events', async () => { - const evt = new BvModalEvent('foobar', { - cancelable: true - }) - expect(evt).toBeInstanceOf(BvModalEvent) - expect(evt.type).toBe('foobar') - expect(evt.cancelable).toBe(true) - expect(evt.defaultPrevented).toBe(false) - evt.preventDefault() - expect(evt.defaultPrevented).toBe(true) - }) - - it('supports non cancelable events', async () => { - const evt = new BvModalEvent('foobar', { - cancelable: false - }) - expect(evt).toBeInstanceOf(BvModalEvent) - expect(evt.type).toBe('foobar') - expect(evt.cancelable).toBe(false) - expect(evt.defaultPrevented).toBe(false) - evt.preventDefault() - expect(evt.defaultPrevented).toBe(false) - }) - - it('supports built in properties', async () => { - const evt = new BvModalEvent('foobar', { - target: 'baz', - trigger: 'ok' - }) - expect(evt).toBeInstanceOf(BvModalEvent) - expect(evt.type).toBe('foobar') - expect(evt.cancelable).toBe(true) - expect(evt.target).toBe('baz') - expect(evt.trigger).toBe('ok') - let failed = false - try { - evt.trigger = 'foobar' - } catch (e) { - failed = true - } - expect(failed).toBe(true) - }) - - it('supports custom properties', async () => { - const evt = new BvEvent('foobar', { - custom: 123 - }) - expect(evt).toBeInstanceOf(BvEvent) - expect(evt.type).toBe('foobar') - expect(evt.cancelable).toBe(true) - expect(evt.custom).toBe(123) - }) - }) }) From a13f57b44675234552467f37e2b2d55eca04d349 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sun, 7 Apr 2019 14:30:07 -0300 Subject: [PATCH 11/19] Update bv-event.class.js --- src/utils/bv-event.class.js | 27 +-------------------------- 1 file changed, 1 insertion(+), 26 deletions(-) diff --git a/src/utils/bv-event.class.js b/src/utils/bv-event.class.js index ade8a6fda4b..c1840c40887 100644 --- a/src/utils/bv-event.class.js +++ b/src/utils/bv-event.class.js @@ -54,33 +54,8 @@ class BvEvent { } } -class BvModalEvent extends BvEvent { - constructor(type, eventInit = {}) { - super(type, eventInit) - // Freeze our new props as readonly, but leave them enumerable. - defineProperties(this, { - modalId: readonlyDescriptor(), - trigger: readonlyDescriptor() - }) - } - - cancel() /* istanbul ignore next */ { - // Backwards compatibility - warn('b-modal: evt.cancel() is deprecated. Please use evt.preventDefault().') - this.preventDefault() - } - - static get Defaults() { - return { - ...super.Defaults, - modalId: null, - trigger: null - } - } -} - // Named Exports -export { BvEvent, BvModalEvent } +export { BvEvent } // Default Export export default BvEvent From 0c581bb9f6370fa8b95acb6143d170c08cca7c7a Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sun, 7 Apr 2019 14:31:58 -0300 Subject: [PATCH 12/19] Update bv-modal-event.class.spec.js --- src/components/modal/helpers/bv-modal-event.class.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/modal/helpers/bv-modal-event.class.spec.js b/src/components/modal/helpers/bv-modal-event.class.spec.js index 73517ce96f7..b2a98596304 100644 --- a/src/components/modal/helpers/bv-modal-event.class.spec.js +++ b/src/components/modal/helpers/bv-modal-event.class.spec.js @@ -1,4 +1,4 @@ -import BvModalEvent from './bv-event.class' +import BvModalEvent from './bv-modal-event.class' import BvEvent from '../../../utils/bv-event.class' describe('modal > BvModalEvent', () => { From 9061431bcafdba0de9a46176ddb62d9c3a892cdf Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sun, 7 Apr 2019 14:36:11 -0300 Subject: [PATCH 13/19] Update bv-event.class.js --- src/utils/bv-event.class.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/utils/bv-event.class.js b/src/utils/bv-event.class.js index c1840c40887..6248f9bc192 100644 --- a/src/utils/bv-event.class.js +++ b/src/utils/bv-event.class.js @@ -1,5 +1,4 @@ import { assign, defineProperty, defineProperties, readonlyDescriptor } from './object' -import warn from './warn' class BvEvent { constructor(type, eventInit = {}) { From 7ef7e7b8dcc46b1e8b142762a49cbeec0db90cb2 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sun, 7 Apr 2019 14:43:22 -0300 Subject: [PATCH 14/19] modal: use BvModalEvent --- src/components/modal/modal.js | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/src/components/modal/modal.js b/src/components/modal/modal.js index 4038e03f2d3..00f86dc3ae3 100644 --- a/src/components/modal/modal.js +++ b/src/components/modal/modal.js @@ -1,13 +1,13 @@ import Vue from 'vue' +import modalManager from './helpers/modal-manager' +import BvModalEvent from './helpers/bv-modal-event.class' import BButton from '../button/button' import BButtonClose from '../button/button-close' -import modalManager from './helpers/modal-manager' import idMixin from '../../mixins/id' import listenOnRootMixin from '../../mixins/listen-on-root' import observeDom from '../../utils/observe-dom' import warn from '../../utils/warn' import KeyCodes from '../../utils/key-codes' -import BvEvent from '../../utils/bv-event.class' import { inBrowser } from '../../utils/env' import { getComponentConfig } from '../../utils/config' import { stripTags } from '../../utils/html' @@ -364,12 +364,11 @@ export default Vue.extend({ return } this.is_opening = true - const showEvt = new BvEvent('show', { + const showEvt = new BvModalEvent('show', { cancelable: true, vueTarget: this, target: this.$refs.modal, relatedTarget: null, - // Modal specifi properties modalId: this.safeId() }) this.emitEvent(showEvt) @@ -387,20 +386,13 @@ export default Vue.extend({ return } this.is_closing = true - const hideEvt = new BvEvent('hide', { - // BvEvent standard properties + const hideEvt = new BvModalEvent('hide', { cancelable: true, vueTarget: this, target: this.$refs.modal, relatedTarget: null, - // Modal specific properties and methods modalId: this.safeId(), - trigger: trigger || null, - cancel() /* istanbul ignore next */ { - // Backwards compatibility - warn('b-modal: evt.cancel() is deprecated. Please use evt.preventDefault().') - this.preventDefault() - } + trigger: trigger || null }) // We emit specific event for one of the three built-in buttons if (trigger === 'ok') { @@ -475,7 +467,7 @@ export default Vue.extend({ this.is_show = true this.is_transitioning = false this.$nextTick(() => { - const shownEvt = new BvEvent('shown', { + const shownEvt = new BvModalEvent('shown', { cancelable: false, vueTarget: this, target: this.$refs.modal, @@ -503,7 +495,7 @@ export default Vue.extend({ this.$nextTick(() => { this.returnFocusTo() this.is_closing = false - const hiddenEvt = new BvEvent('hidden', { + const hiddenEvt = new BvModalEvent('hidden', { cancelable: false, vueTarget: this, target: this.lazy ? null : this.$refs.modal, From e8d17900d229069bb55413407c833927616168bf Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Sun, 7 Apr 2019 14:51:12 -0300 Subject: [PATCH 15/19] Update README.md --- src/components/modal/README.md | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/components/modal/README.md b/src/components/modal/README.md index 7ed5cac0ccd..c1f3cf389c7 100644 --- a/src/components/modal/README.md +++ b/src/components/modal/README.md @@ -180,8 +180,8 @@ export default { To prevent `` from closing (for example when validation fails). you can call the `.preventDefault()` method of the event object passed to your `ok` (**OK** button), `cancel` -(**Cancel** button) and `hide` event handlers. Note that `.preventDefault()`, when used, must be -called synchronously, as async is not supported. +(**Cancel** button) and `hide` event handlers. Note that `.preventDefault()`, when used, **must** +be called synchronously, as async is not supported. ```html