diff --git a/bower.json b/bower.json index 373f0f5..6c09b23 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "aurelia-dialog", - "version": "2.0.0-rc.6", + "version": "2.0.0-rc.7", "description": "A dialog plugin for Aurelia.", "keywords": [ "aurelia", diff --git a/dist/amd/aurelia-dialog.js b/dist/amd/aurelia-dialog.js index 61de228..fc703d0 100644 --- a/dist/amd/aurelia-dialog.js +++ b/dist/amd/aurelia-dialog.js @@ -1,4 +1,4 @@ -define(['require', 'exports', './chunk', 'aurelia-pal', 'aurelia-dependency-injection', 'aurelia-templating'], function (require, exports, __chunk_1, aureliaPal, aureliaDependencyInjection, aureliaTemplating) { 'use strict'; +define(['require', 'exports', './dialog-controller', 'aurelia-pal', 'aurelia-dependency-injection', 'aurelia-templating'], function (require, exports, dialogController, aureliaPal, aureliaDependencyInjection, aureliaTemplating) { 'use strict'; var DefaultDialogSettings = (function () { function DefaultDialogSettings() { @@ -49,7 +49,7 @@ define(['require', 'exports', './chunk', 'aurelia-pal', 'aurelia-dependency-inje .then(function (_a) { var rendererImpl = _a[0], $cssText = _a[1]; var fwConfig = _this.fwConfig; - fwConfig.transient(__chunk_1.Renderer, rendererImpl); + fwConfig.transient(dialogController.Renderer, rendererImpl); if ($cssText) { aureliaPal.DOM.injectStyles($cssText); } @@ -132,25 +132,25 @@ define(['require', 'exports', './chunk', 'aurelia-pal', 'aurelia-dependency-inje if (!rejectOnCancel) { return { wasCancelled: true }; } - throw __chunk_1.createDialogCancelError(); + throw dialogController.createDialogCancelError(); }; - DialogService.prototype.composeAndShowDialog = function (compositionContext, dialogController) { + DialogService.prototype.composeAndShowDialog = function (compositionContext, dialogController$1) { var _this = this; if (!compositionContext.viewModel) { - compositionContext.bindingContext = { controller: dialogController }; + compositionContext.bindingContext = { controller: dialogController$1 }; } return this.compositionEngine .compose(compositionContext) .then(function (controller) { - dialogController.controller = controller; - return dialogController.renderer - .showDialog(dialogController) + dialogController$1.controller = controller; + return dialogController$1.renderer + .showDialog(dialogController$1) .then(function () { - _this.controllers.push(dialogController); + _this.controllers.push(dialogController$1); _this.hasActiveDialog = _this.hasOpenDialog = !!_this.controllers.length; }, function (reason) { if (controller.viewModel) { - __chunk_1.invokeLifecycle(controller.viewModel, 'deactivate'); + dialogController.invokeLifecycle(controller.viewModel, 'deactivate'); } return Promise.reject(reason); }); @@ -183,25 +183,25 @@ define(['require', 'exports', './chunk', 'aurelia-pal', 'aurelia-dependency-inje resolveCloseResult = resolve; rejectCloseResult = reject; }); - var dialogController = childContainer.invoke(__chunk_1.DialogController, [settings, resolveCloseResult, rejectCloseResult]); - childContainer.registerInstance(__chunk_1.DialogController, dialogController); + var dialogController$1 = childContainer.invoke(dialogController.DialogController, [settings, resolveCloseResult, rejectCloseResult]); + childContainer.registerInstance(dialogController.DialogController, dialogController$1); closeResult.then(function () { - removeController(_this, dialogController); + removeController(_this, dialogController$1); }, function () { - removeController(_this, dialogController); + removeController(_this, dialogController$1); }); - var compositionContext = this.createCompositionContext(childContainer, dialogController.renderer.getDialogContainer(), dialogController.settings); + var compositionContext = this.createCompositionContext(childContainer, dialogController$1.renderer.getDialogContainer(), dialogController$1.settings); var openResult = this.ensureViewModel(compositionContext).then(function (compositionContext) { if (!compositionContext.viewModel) { return true; } - return __chunk_1.invokeLifecycle(compositionContext.viewModel, 'canActivate', dialogController.settings.model); + return dialogController.invokeLifecycle(compositionContext.viewModel, 'canActivate', dialogController$1.settings.model); }).then(function (canActivate) { if (!canActivate) { - return _this._cancelOperation(dialogController.settings.rejectOnCancel); + return _this._cancelOperation(dialogController$1.settings.rejectOnCancel); } - return _this.composeAndShowDialog(compositionContext, dialogController) - .then(function () { return ({ controller: dialogController, closeResult: closeResult, wasCancelled: false }); }); + return _this.composeAndShowDialog(compositionContext, dialogController$1) + .then(function () { return ({ controller: dialogController$1, closeResult: closeResult, wasCancelled: false }); }); }); return asDialogOpenPromise(openResult); }; @@ -246,9 +246,9 @@ define(['require', 'exports', './chunk', 'aurelia-pal', 'aurelia-dependency-inje return applyConfig(); } - exports.DialogController = __chunk_1.DialogController; - exports.Renderer = __chunk_1.Renderer; - exports.createDialogCancelError = __chunk_1.createDialogCancelError; + exports.DialogController = dialogController.DialogController; + exports.Renderer = dialogController.Renderer; + exports.createDialogCancelError = dialogController.createDialogCancelError; exports.DefaultDialogSettings = DefaultDialogSettings; exports.DialogConfiguration = DialogConfiguration; exports.DialogService = DialogService; diff --git a/dist/amd/chunk.js.map b/dist/amd/chunk.js.map deleted file mode 100644 index ea71a15..0000000 --- a/dist/amd/chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chunk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/amd/chunk.js b/dist/amd/dialog-controller.js similarity index 96% rename from dist/amd/chunk.js rename to dist/amd/dialog-controller.js index c596d01..4b8dae1 100644 --- a/dist/amd/chunk.js +++ b/dist/amd/dialog-controller.js @@ -114,4 +114,4 @@ define(['exports'], function (exports) { 'use strict'; exports.invokeLifecycle = invokeLifecycle; }); -//# sourceMappingURL=chunk.js.map +//# sourceMappingURL=dialog-controller.js.map diff --git a/dist/amd/dialog-controller.js.map b/dist/amd/dialog-controller.js.map new file mode 100644 index 0000000..b58c668 --- /dev/null +++ b/dist/amd/dialog-controller.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dialog-controller.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/amd/native-dialog-renderer.js b/dist/amd/native-dialog-renderer.js index 9b4cdaa..9a1343a 100644 --- a/dist/amd/native-dialog-renderer.js +++ b/dist/amd/native-dialog-renderer.js @@ -70,6 +70,9 @@ define(['exports', 'aurelia-pal', 'aurelia-dependency-injection', './ux-dialog-r return own; }; NativeDialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = aureliaPal.DOM.activeElement; + } var spacingWrapper = aureliaPal.DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); this.dialogContainer = aureliaPal.DOM.createElement(containerTagName); @@ -96,6 +99,9 @@ define(['exports', 'aurelia-pal', 'aurelia-dependency-injection', './ux-dialog-r if (!NativeDialogRenderer_1.dialogControllers.length) { this.host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; NativeDialogRenderer.prototype.setAsActive = function () { this.dialogContainer.showModal(); diff --git a/dist/amd/native-dialog-renderer.js.map b/dist/amd/native-dialog-renderer.js.map index 436b5c2..828651e 100644 --- a/dist/amd/native-dialog-renderer.js.map +++ b/dist/amd/native-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/amd/ux-dialog-footer.js b/dist/amd/ux-dialog-footer.js index ae0164f..6831141 100644 --- a/dist/amd/ux-dialog-footer.js +++ b/dist/amd/ux-dialog-footer.js @@ -1,4 +1,4 @@ -define(['exports', './chunk'], function (exports, __chunk_1) { 'use strict'; +define(['exports', './dialog-controller'], function (exports, dialogController) { 'use strict'; var UxDialogFooter = (function () { function UxDialogFooter(controller) { @@ -22,7 +22,7 @@ define(['exports', './chunk'], function (exports, __chunk_1) { 'use strict'; this.buttons = ['Cancel', 'Ok']; } }; - UxDialogFooter.inject = [__chunk_1.DialogController]; + UxDialogFooter.inject = [dialogController.DialogController]; UxDialogFooter.$view = ""; UxDialogFooter.$resource = { name: 'ux-dialog-footer', diff --git a/dist/amd/ux-dialog-header.js b/dist/amd/ux-dialog-header.js index 358a5f9..f8af30b 100644 --- a/dist/amd/ux-dialog-header.js +++ b/dist/amd/ux-dialog-header.js @@ -1,4 +1,4 @@ -define(['exports', './chunk'], function (exports, __chunk_1) { 'use strict'; +define(['exports', './dialog-controller'], function (exports, dialogController) { 'use strict'; var UxDialogHeader = (function () { function UxDialogHeader(controller) { @@ -9,7 +9,7 @@ define(['exports', './chunk'], function (exports, __chunk_1) { 'use strict'; this.showCloseButton = !this.controller.settings.lock; } }; - UxDialogHeader.inject = [__chunk_1.DialogController]; + UxDialogHeader.inject = [dialogController.DialogController]; UxDialogHeader.$view = ""; UxDialogHeader.$resource = { name: 'ux-dialog-header', diff --git a/dist/amd/ux-dialog-renderer.js b/dist/amd/ux-dialog-renderer.js index 1655560..6b5a09d 100644 --- a/dist/amd/ux-dialog-renderer.js +++ b/dist/amd/ux-dialog-renderer.js @@ -103,6 +103,9 @@ define(['exports', 'aurelia-pal', 'aurelia-dependency-injection'], function (exp return own; }; DialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = aureliaPal.DOM.activeElement; + } var spacingWrapper = aureliaPal.DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); var dialogContainer = this.dialogContainer = aureliaPal.DOM.createElement(containerTagName); @@ -134,6 +137,9 @@ define(['exports', 'aurelia-pal', 'aurelia-dependency-injection'], function (exp if (!DialogRenderer.dialogControllers.length) { host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; DialogRenderer.prototype.setAsActive = function () { this.dialogOverlay.classList.add('active'); diff --git a/dist/amd/ux-dialog-renderer.js.map b/dist/amd/ux-dialog-renderer.js.map index 2eab2b6..4ca5274 100644 --- a/dist/amd/ux-dialog-renderer.js.map +++ b/dist/amd/ux-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/commonjs/aurelia-dialog.js b/dist/commonjs/aurelia-dialog.js index 87631c1..78f3f8e 100644 --- a/dist/commonjs/aurelia-dialog.js +++ b/dist/commonjs/aurelia-dialog.js @@ -2,7 +2,7 @@ Object.defineProperty(exports, '__esModule', { value: true }); -var __chunk_1 = require('./chunk.js'); +var dialogController = require('./dialog-controller.js'); var aureliaPal = require('aurelia-pal'); var aureliaDependencyInjection = require('aurelia-dependency-injection'); var aureliaTemplating = require('aurelia-templating'); @@ -19,17 +19,17 @@ var DefaultDialogSettings = (function () { }()); var RENDERRERS = { - ux: function () { return Promise.resolve(require('./ux-dialog-renderer.js')).then(function (m) { return m.DialogRenderer; }); }, - native: function () { return Promise.resolve(require('./native-dialog-renderer.js')).then(function (m) { return m.NativeDialogRenderer; }); } + ux: function () { return new Promise(function (resolve) { resolve(require('./ux-dialog-renderer.js')); }).then(function (m) { return m.DialogRenderer; }); }, + native: function () { return new Promise(function (resolve) { resolve(require('./native-dialog-renderer.js')); }).then(function (m) { return m.NativeDialogRenderer; }); } }; var DEFAULT_RESOURCES = { - 'ux-dialog': function () { return Promise.resolve(require('./ux-dialog.js')).then(function (m) { return m.UxDialog; }); }, - 'ux-dialog-header': function () { return Promise.resolve(require('./ux-dialog-header.js')).then(function (m) { return m.UxDialogHeader; }); }, - 'ux-dialog-body': function () { return Promise.resolve(require('./ux-dialog-body.js')).then(function (m) { return m.UxDialogBody; }); }, - 'ux-dialog-footer': function () { return Promise.resolve(require('./ux-dialog-footer.js')).then(function (m) { return m.UxDialogFooter; }); }, - 'attach-focus': function () { return Promise.resolve(require('./attach-focus.js')).then(function (m) { return m.AttachFocus; }); } + 'ux-dialog': function () { return new Promise(function (resolve) { resolve(require('./ux-dialog.js')); }).then(function (m) { return m.UxDialog; }); }, + 'ux-dialog-header': function () { return new Promise(function (resolve) { resolve(require('./ux-dialog-header.js')); }).then(function (m) { return m.UxDialogHeader; }); }, + 'ux-dialog-body': function () { return new Promise(function (resolve) { resolve(require('./ux-dialog-body.js')); }).then(function (m) { return m.UxDialogBody; }); }, + 'ux-dialog-footer': function () { return new Promise(function (resolve) { resolve(require('./ux-dialog-footer.js')); }).then(function (m) { return m.UxDialogFooter; }); }, + 'attach-focus': function () { return new Promise(function (resolve) { resolve(require('./attach-focus.js')); }).then(function (m) { return m.AttachFocus; }); } }; -var DEFAULT_CSS_TEXT = function () { return Promise.resolve(require('./default-styles.js')).then(function (cssM) { return cssM['default']; }); }; +var DEFAULT_CSS_TEXT = function () { return new Promise(function (resolve) { resolve(require('./default-styles.js')); }).then(function (cssM) { return cssM['default']; }); }; var DialogConfiguration = (function () { function DialogConfiguration(frameworkConfiguration, applySetter) { var _this = this; @@ -56,7 +56,7 @@ var DialogConfiguration = (function () { .then(function (_a) { var rendererImpl = _a[0], $cssText = _a[1]; var fwConfig = _this.fwConfig; - fwConfig.transient(__chunk_1.Renderer, rendererImpl); + fwConfig.transient(dialogController.Renderer, rendererImpl); if ($cssText) { aureliaPal.DOM.injectStyles($cssText); } @@ -139,25 +139,25 @@ var DialogService = (function () { if (!rejectOnCancel) { return { wasCancelled: true }; } - throw __chunk_1.createDialogCancelError(); + throw dialogController.createDialogCancelError(); }; - DialogService.prototype.composeAndShowDialog = function (compositionContext, dialogController) { + DialogService.prototype.composeAndShowDialog = function (compositionContext, dialogController$1) { var _this = this; if (!compositionContext.viewModel) { - compositionContext.bindingContext = { controller: dialogController }; + compositionContext.bindingContext = { controller: dialogController$1 }; } return this.compositionEngine .compose(compositionContext) .then(function (controller) { - dialogController.controller = controller; - return dialogController.renderer - .showDialog(dialogController) + dialogController$1.controller = controller; + return dialogController$1.renderer + .showDialog(dialogController$1) .then(function () { - _this.controllers.push(dialogController); + _this.controllers.push(dialogController$1); _this.hasActiveDialog = _this.hasOpenDialog = !!_this.controllers.length; }, function (reason) { if (controller.viewModel) { - __chunk_1.invokeLifecycle(controller.viewModel, 'deactivate'); + dialogController.invokeLifecycle(controller.viewModel, 'deactivate'); } return Promise.reject(reason); }); @@ -190,25 +190,25 @@ var DialogService = (function () { resolveCloseResult = resolve; rejectCloseResult = reject; }); - var dialogController = childContainer.invoke(__chunk_1.DialogController, [settings, resolveCloseResult, rejectCloseResult]); - childContainer.registerInstance(__chunk_1.DialogController, dialogController); + var dialogController$1 = childContainer.invoke(dialogController.DialogController, [settings, resolveCloseResult, rejectCloseResult]); + childContainer.registerInstance(dialogController.DialogController, dialogController$1); closeResult.then(function () { - removeController(_this, dialogController); + removeController(_this, dialogController$1); }, function () { - removeController(_this, dialogController); + removeController(_this, dialogController$1); }); - var compositionContext = this.createCompositionContext(childContainer, dialogController.renderer.getDialogContainer(), dialogController.settings); + var compositionContext = this.createCompositionContext(childContainer, dialogController$1.renderer.getDialogContainer(), dialogController$1.settings); var openResult = this.ensureViewModel(compositionContext).then(function (compositionContext) { if (!compositionContext.viewModel) { return true; } - return __chunk_1.invokeLifecycle(compositionContext.viewModel, 'canActivate', dialogController.settings.model); + return dialogController.invokeLifecycle(compositionContext.viewModel, 'canActivate', dialogController$1.settings.model); }).then(function (canActivate) { if (!canActivate) { - return _this._cancelOperation(dialogController.settings.rejectOnCancel); + return _this._cancelOperation(dialogController$1.settings.rejectOnCancel); } - return _this.composeAndShowDialog(compositionContext, dialogController) - .then(function () { return ({ controller: dialogController, closeResult: closeResult, wasCancelled: false }); }); + return _this.composeAndShowDialog(compositionContext, dialogController$1) + .then(function () { return ({ controller: dialogController$1, closeResult: closeResult, wasCancelled: false }); }); }); return asDialogOpenPromise(openResult); }; @@ -253,9 +253,9 @@ function configure(frameworkConfig, callback) { return applyConfig(); } -exports.DialogController = __chunk_1.DialogController; -exports.Renderer = __chunk_1.Renderer; -exports.createDialogCancelError = __chunk_1.createDialogCancelError; +exports.DialogController = dialogController.DialogController; +exports.Renderer = dialogController.Renderer; +exports.createDialogCancelError = dialogController.createDialogCancelError; exports.DefaultDialogSettings = DefaultDialogSettings; exports.DialogConfiguration = DialogConfiguration; exports.DialogService = DialogService; diff --git a/dist/commonjs/chunk.js.map b/dist/commonjs/chunk.js.map deleted file mode 100644 index 5dda617..0000000 --- a/dist/commonjs/chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chunk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/commonjs/chunk.js b/dist/commonjs/dialog-controller.js similarity index 96% rename from dist/commonjs/chunk.js rename to dist/commonjs/dialog-controller.js index 85ec8ef..b9038d4 100644 --- a/dist/commonjs/chunk.js +++ b/dist/commonjs/dialog-controller.js @@ -112,4 +112,4 @@ exports.DialogController = DialogController; exports.Renderer = Renderer; exports.createDialogCancelError = createDialogCancelError; exports.invokeLifecycle = invokeLifecycle; -//# sourceMappingURL=chunk.js.map +//# sourceMappingURL=dialog-controller.js.map diff --git a/dist/commonjs/dialog-controller.js.map b/dist/commonjs/dialog-controller.js.map new file mode 100644 index 0000000..b401401 --- /dev/null +++ b/dist/commonjs/dialog-controller.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dialog-controller.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/commonjs/native-dialog-renderer.js b/dist/commonjs/native-dialog-renderer.js index fccee20..f1e6b3a 100644 --- a/dist/commonjs/native-dialog-renderer.js +++ b/dist/commonjs/native-dialog-renderer.js @@ -74,6 +74,9 @@ var NativeDialogRenderer = (function () { return own; }; NativeDialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = aureliaPal.DOM.activeElement; + } var spacingWrapper = aureliaPal.DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); this.dialogContainer = aureliaPal.DOM.createElement(containerTagName); @@ -100,6 +103,9 @@ var NativeDialogRenderer = (function () { if (!NativeDialogRenderer_1.dialogControllers.length) { this.host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; NativeDialogRenderer.prototype.setAsActive = function () { this.dialogContainer.showModal(); diff --git a/dist/commonjs/native-dialog-renderer.js.map b/dist/commonjs/native-dialog-renderer.js.map index 436b5c2..828651e 100644 --- a/dist/commonjs/native-dialog-renderer.js.map +++ b/dist/commonjs/native-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/commonjs/ux-dialog-footer.js b/dist/commonjs/ux-dialog-footer.js index 2f5a6f3..81ad5c1 100644 --- a/dist/commonjs/ux-dialog-footer.js +++ b/dist/commonjs/ux-dialog-footer.js @@ -1,6 +1,6 @@ 'use strict'; -var __chunk_1 = require('./chunk.js'); +var dialogController = require('./dialog-controller.js'); var UxDialogFooter = (function () { function UxDialogFooter(controller) { @@ -24,7 +24,7 @@ var UxDialogFooter = (function () { this.buttons = ['Cancel', 'Ok']; } }; - UxDialogFooter.inject = [__chunk_1.DialogController]; + UxDialogFooter.inject = [dialogController.DialogController]; UxDialogFooter.$view = ""; UxDialogFooter.$resource = { name: 'ux-dialog-footer', diff --git a/dist/commonjs/ux-dialog-header.js b/dist/commonjs/ux-dialog-header.js index c9c72af..f719262 100644 --- a/dist/commonjs/ux-dialog-header.js +++ b/dist/commonjs/ux-dialog-header.js @@ -1,6 +1,6 @@ 'use strict'; -var __chunk_1 = require('./chunk.js'); +var dialogController = require('./dialog-controller.js'); var UxDialogHeader = (function () { function UxDialogHeader(controller) { @@ -11,7 +11,7 @@ var UxDialogHeader = (function () { this.showCloseButton = !this.controller.settings.lock; } }; - UxDialogHeader.inject = [__chunk_1.DialogController]; + UxDialogHeader.inject = [dialogController.DialogController]; UxDialogHeader.$view = ""; UxDialogHeader.$resource = { name: 'ux-dialog-header', diff --git a/dist/commonjs/ux-dialog-renderer.js b/dist/commonjs/ux-dialog-renderer.js index d513a88..0caee40 100644 --- a/dist/commonjs/ux-dialog-renderer.js +++ b/dist/commonjs/ux-dialog-renderer.js @@ -106,6 +106,9 @@ var DialogRenderer = (function () { return own; }; DialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = aureliaPal.DOM.activeElement; + } var spacingWrapper = aureliaPal.DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); var dialogContainer = this.dialogContainer = aureliaPal.DOM.createElement(containerTagName); @@ -137,6 +140,9 @@ var DialogRenderer = (function () { if (!DialogRenderer.dialogControllers.length) { host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; DialogRenderer.prototype.setAsActive = function () { this.dialogOverlay.classList.add('active'); diff --git a/dist/commonjs/ux-dialog-renderer.js.map b/dist/commonjs/ux-dialog-renderer.js.map index 5ba2f4b..7592c61 100644 --- a/dist/commonjs/ux-dialog-renderer.js.map +++ b/dist/commonjs/ux-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/es2015/aurelia-dialog.js b/dist/es2015/aurelia-dialog.js index 6db4b71..88589aa 100644 --- a/dist/es2015/aurelia-dialog.js +++ b/dist/es2015/aurelia-dialog.js @@ -1,5 +1,5 @@ -import { a as Renderer, b as createDialogCancelError, c as invokeLifecycle, d as DialogController } from './chunk.js'; -export { d as DialogController, a as Renderer, b as createDialogCancelError } from './chunk.js'; +import { R as Renderer, c as createDialogCancelError, i as invokeLifecycle, D as DialogController } from './dialog-controller.js'; +export { D as DialogController, R as Renderer, c as createDialogCancelError } from './dialog-controller.js'; import { DOM } from 'aurelia-pal'; import { Container } from 'aurelia-dependency-injection'; import { ViewSlot, CompositionEngine } from 'aurelia-templating'; diff --git a/dist/es2015/chunk.js.map b/dist/es2015/chunk.js.map deleted file mode 100644 index cf52679..0000000 --- a/dist/es2015/chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chunk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/es2015/chunk.js b/dist/es2015/dialog-controller.js similarity index 92% rename from dist/es2015/chunk.js rename to dist/es2015/dialog-controller.js index c70ed6e..7b81cce 100644 --- a/dist/es2015/chunk.js +++ b/dist/es2015/dialog-controller.js @@ -99,5 +99,5 @@ class DialogController { } DialogController.inject = [Renderer]; -export { Renderer as a, createDialogCancelError as b, invokeLifecycle as c, DialogController as d }; -//# sourceMappingURL=chunk.js.map +export { DialogController as D, Renderer as R, createDialogCancelError as c, invokeLifecycle as i }; +//# sourceMappingURL=dialog-controller.js.map diff --git a/dist/es2015/dialog-controller.js.map b/dist/es2015/dialog-controller.js.map new file mode 100644 index 0000000..7d6ad93 --- /dev/null +++ b/dist/es2015/dialog-controller.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dialog-controller.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/es2015/native-dialog-renderer.js b/dist/es2015/native-dialog-renderer.js index 40cfdfc..cd2fd0e 100644 --- a/dist/es2015/native-dialog-renderer.js +++ b/dist/es2015/native-dialog-renderer.js @@ -70,6 +70,9 @@ let NativeDialogRenderer = NativeDialogRenderer_1 = class NativeDialogRenderer { return own; } attach(dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = DOM.activeElement; + } const spacingWrapper = DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); this.dialogContainer = DOM.createElement(containerTagName); @@ -96,6 +99,9 @@ let NativeDialogRenderer = NativeDialogRenderer_1 = class NativeDialogRenderer { if (!NativeDialogRenderer_1.dialogControllers.length) { this.host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } } setAsActive() { this.dialogContainer.showModal(); diff --git a/dist/es2015/native-dialog-renderer.js.map b/dist/es2015/native-dialog-renderer.js.map index 8b9a753..aae4e80 100644 --- a/dist/es2015/native-dialog-renderer.js.map +++ b/dist/es2015/native-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/es2015/ux-dialog-footer.js b/dist/es2015/ux-dialog-footer.js index fecfa7c..a9015ba 100644 --- a/dist/es2015/ux-dialog-footer.js +++ b/dist/es2015/ux-dialog-footer.js @@ -1,4 +1,4 @@ -import { d as DialogController } from './chunk.js'; +import { D as DialogController } from './dialog-controller.js'; class UxDialogFooter { constructor(controller) { diff --git a/dist/es2015/ux-dialog-header.js b/dist/es2015/ux-dialog-header.js index bec4d64..7c61667 100644 --- a/dist/es2015/ux-dialog-header.js +++ b/dist/es2015/ux-dialog-header.js @@ -1,4 +1,4 @@ -import { d as DialogController } from './chunk.js'; +import { D as DialogController } from './dialog-controller.js'; class UxDialogHeader { constructor(controller) { diff --git a/dist/es2015/ux-dialog-renderer.js b/dist/es2015/ux-dialog-renderer.js index 75e443e..38ddc77 100644 --- a/dist/es2015/ux-dialog-renderer.js +++ b/dist/es2015/ux-dialog-renderer.js @@ -102,6 +102,9 @@ class DialogRenderer { return own; } attach(dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = DOM.activeElement; + } const spacingWrapper = DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); const dialogContainer = this.dialogContainer = DOM.createElement(containerTagName); @@ -133,6 +136,9 @@ class DialogRenderer { if (!DialogRenderer.dialogControllers.length) { host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } } setAsActive() { this.dialogOverlay.classList.add('active'); diff --git a/dist/es2015/ux-dialog-renderer.js.map b/dist/es2015/ux-dialog-renderer.js.map index 1907382..e21afb6 100644 --- a/dist/es2015/ux-dialog-renderer.js.map +++ b/dist/es2015/ux-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/es2017/aurelia-dialog.js b/dist/es2017/aurelia-dialog.js index 6db4b71..88589aa 100644 --- a/dist/es2017/aurelia-dialog.js +++ b/dist/es2017/aurelia-dialog.js @@ -1,5 +1,5 @@ -import { a as Renderer, b as createDialogCancelError, c as invokeLifecycle, d as DialogController } from './chunk.js'; -export { d as DialogController, a as Renderer, b as createDialogCancelError } from './chunk.js'; +import { R as Renderer, c as createDialogCancelError, i as invokeLifecycle, D as DialogController } from './dialog-controller.js'; +export { D as DialogController, R as Renderer, c as createDialogCancelError } from './dialog-controller.js'; import { DOM } from 'aurelia-pal'; import { Container } from 'aurelia-dependency-injection'; import { ViewSlot, CompositionEngine } from 'aurelia-templating'; diff --git a/dist/es2017/chunk.js.map b/dist/es2017/chunk.js.map deleted file mode 100644 index cf52679..0000000 --- a/dist/es2017/chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chunk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/es2017/chunk.js b/dist/es2017/dialog-controller.js similarity index 92% rename from dist/es2017/chunk.js rename to dist/es2017/dialog-controller.js index c70ed6e..7b81cce 100644 --- a/dist/es2017/chunk.js +++ b/dist/es2017/dialog-controller.js @@ -99,5 +99,5 @@ class DialogController { } DialogController.inject = [Renderer]; -export { Renderer as a, createDialogCancelError as b, invokeLifecycle as c, DialogController as d }; -//# sourceMappingURL=chunk.js.map +export { DialogController as D, Renderer as R, createDialogCancelError as c, invokeLifecycle as i }; +//# sourceMappingURL=dialog-controller.js.map diff --git a/dist/es2017/dialog-controller.js.map b/dist/es2017/dialog-controller.js.map new file mode 100644 index 0000000..7d6ad93 --- /dev/null +++ b/dist/es2017/dialog-controller.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dialog-controller.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/es2017/native-dialog-renderer.js b/dist/es2017/native-dialog-renderer.js index 40cfdfc..cd2fd0e 100644 --- a/dist/es2017/native-dialog-renderer.js +++ b/dist/es2017/native-dialog-renderer.js @@ -70,6 +70,9 @@ let NativeDialogRenderer = NativeDialogRenderer_1 = class NativeDialogRenderer { return own; } attach(dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = DOM.activeElement; + } const spacingWrapper = DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); this.dialogContainer = DOM.createElement(containerTagName); @@ -96,6 +99,9 @@ let NativeDialogRenderer = NativeDialogRenderer_1 = class NativeDialogRenderer { if (!NativeDialogRenderer_1.dialogControllers.length) { this.host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } } setAsActive() { this.dialogContainer.showModal(); diff --git a/dist/es2017/native-dialog-renderer.js.map b/dist/es2017/native-dialog-renderer.js.map index 8b9a753..aae4e80 100644 --- a/dist/es2017/native-dialog-renderer.js.map +++ b/dist/es2017/native-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/es2017/ux-dialog-footer.js b/dist/es2017/ux-dialog-footer.js index fecfa7c..a9015ba 100644 --- a/dist/es2017/ux-dialog-footer.js +++ b/dist/es2017/ux-dialog-footer.js @@ -1,4 +1,4 @@ -import { d as DialogController } from './chunk.js'; +import { D as DialogController } from './dialog-controller.js'; class UxDialogFooter { constructor(controller) { diff --git a/dist/es2017/ux-dialog-header.js b/dist/es2017/ux-dialog-header.js index bec4d64..7c61667 100644 --- a/dist/es2017/ux-dialog-header.js +++ b/dist/es2017/ux-dialog-header.js @@ -1,4 +1,4 @@ -import { d as DialogController } from './chunk.js'; +import { D as DialogController } from './dialog-controller.js'; class UxDialogHeader { constructor(controller) { diff --git a/dist/es2017/ux-dialog-renderer.js b/dist/es2017/ux-dialog-renderer.js index 75e443e..38ddc77 100644 --- a/dist/es2017/ux-dialog-renderer.js +++ b/dist/es2017/ux-dialog-renderer.js @@ -102,6 +102,9 @@ class DialogRenderer { return own; } attach(dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = DOM.activeElement; + } const spacingWrapper = DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); const dialogContainer = this.dialogContainer = DOM.createElement(containerTagName); @@ -133,6 +136,9 @@ class DialogRenderer { if (!DialogRenderer.dialogControllers.length) { host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } } setAsActive() { this.dialogOverlay.classList.add('active'); diff --git a/dist/es2017/ux-dialog-renderer.js.map b/dist/es2017/ux-dialog-renderer.js.map index 1907382..e21afb6 100644 --- a/dist/es2017/ux-dialog-renderer.js.map +++ b/dist/es2017/ux-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/native-modules/aurelia-dialog.js b/dist/native-modules/aurelia-dialog.js index 196778a..774c29c 100644 --- a/dist/native-modules/aurelia-dialog.js +++ b/dist/native-modules/aurelia-dialog.js @@ -1,5 +1,5 @@ -import { a as Renderer, b as createDialogCancelError, c as invokeLifecycle, d as DialogController } from './chunk.js'; -export { d as DialogController, a as Renderer, b as createDialogCancelError } from './chunk.js'; +import { R as Renderer, c as createDialogCancelError, i as invokeLifecycle, D as DialogController } from './dialog-controller.js'; +export { D as DialogController, R as Renderer, c as createDialogCancelError } from './dialog-controller.js'; import { DOM } from 'aurelia-pal'; import { Container } from 'aurelia-dependency-injection'; import { ViewSlot, CompositionEngine } from 'aurelia-templating'; diff --git a/dist/native-modules/chunk.js.map b/dist/native-modules/chunk.js.map deleted file mode 100644 index 1bb564f..0000000 --- a/dist/native-modules/chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chunk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/native-modules/chunk.js b/dist/native-modules/dialog-controller.js similarity index 93% rename from dist/native-modules/chunk.js rename to dist/native-modules/dialog-controller.js index fc965af..28efc5b 100644 --- a/dist/native-modules/chunk.js +++ b/dist/native-modules/dialog-controller.js @@ -106,5 +106,5 @@ var DialogController = (function () { return DialogController; }()); -export { Renderer as a, createDialogCancelError as b, invokeLifecycle as c, DialogController as d }; -//# sourceMappingURL=chunk.js.map +export { DialogController as D, Renderer as R, createDialogCancelError as c, invokeLifecycle as i }; +//# sourceMappingURL=dialog-controller.js.map diff --git a/dist/native-modules/dialog-controller.js.map b/dist/native-modules/dialog-controller.js.map new file mode 100644 index 0000000..0ee5c84 --- /dev/null +++ b/dist/native-modules/dialog-controller.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dialog-controller.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/native-modules/native-dialog-renderer.js b/dist/native-modules/native-dialog-renderer.js index d4b3b74..326b068 100644 --- a/dist/native-modules/native-dialog-renderer.js +++ b/dist/native-modules/native-dialog-renderer.js @@ -72,6 +72,9 @@ var NativeDialogRenderer = (function () { return own; }; NativeDialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = DOM.activeElement; + } var spacingWrapper = DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); this.dialogContainer = DOM.createElement(containerTagName); @@ -98,6 +101,9 @@ var NativeDialogRenderer = (function () { if (!NativeDialogRenderer_1.dialogControllers.length) { this.host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; NativeDialogRenderer.prototype.setAsActive = function () { this.dialogContainer.showModal(); diff --git a/dist/native-modules/native-dialog-renderer.js.map b/dist/native-modules/native-dialog-renderer.js.map index c87ae06..9eab04a 100644 --- a/dist/native-modules/native-dialog-renderer.js.map +++ b/dist/native-modules/native-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/native-modules/ux-dialog-footer.js b/dist/native-modules/ux-dialog-footer.js index c4f125f..c23eff5 100644 --- a/dist/native-modules/ux-dialog-footer.js +++ b/dist/native-modules/ux-dialog-footer.js @@ -1,4 +1,4 @@ -import { d as DialogController } from './chunk.js'; +import { D as DialogController } from './dialog-controller.js'; var UxDialogFooter = (function () { function UxDialogFooter(controller) { diff --git a/dist/native-modules/ux-dialog-header.js b/dist/native-modules/ux-dialog-header.js index a1e3d88..6507d8a 100644 --- a/dist/native-modules/ux-dialog-header.js +++ b/dist/native-modules/ux-dialog-header.js @@ -1,4 +1,4 @@ -import { d as DialogController } from './chunk.js'; +import { D as DialogController } from './dialog-controller.js'; var UxDialogHeader = (function () { function UxDialogHeader(controller) { diff --git a/dist/native-modules/ux-dialog-renderer.js b/dist/native-modules/ux-dialog-renderer.js index 73495a9..61e1065 100644 --- a/dist/native-modules/ux-dialog-renderer.js +++ b/dist/native-modules/ux-dialog-renderer.js @@ -104,6 +104,9 @@ var DialogRenderer = (function () { return own; }; DialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = DOM.activeElement; + } var spacingWrapper = DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); var dialogContainer = this.dialogContainer = DOM.createElement(containerTagName); @@ -135,6 +138,9 @@ var DialogRenderer = (function () { if (!DialogRenderer.dialogControllers.length) { host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; DialogRenderer.prototype.setAsActive = function () { this.dialogOverlay.classList.add('active'); diff --git a/dist/native-modules/ux-dialog-renderer.js.map b/dist/native-modules/ux-dialog-renderer.js.map index e21afb6..2eab2b6 100644 --- a/dist/native-modules/ux-dialog-renderer.js.map +++ b/dist/native-modules/ux-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/system/attach-focus.js b/dist/system/attach-focus.js index 479fa77..d413a4a 100644 --- a/dist/system/attach-focus.js +++ b/dist/system/attach-focus.js @@ -1,4 +1,4 @@ -System.register(['aurelia-pal'], function (exports, module) { +System.register(['aurelia-pal'], function (exports) { 'use strict'; var DOM; return { diff --git a/dist/system/aurelia-dialog.js b/dist/system/aurelia-dialog.js index fbe77f7..18eeca2 100644 --- a/dist/system/aurelia-dialog.js +++ b/dist/system/aurelia-dialog.js @@ -1,16 +1,16 @@ -System.register(['./chunk.js', 'aurelia-pal', 'aurelia-dependency-injection', 'aurelia-templating'], function (exports, module) { +System.register(['./dialog-controller.js', 'aurelia-pal', 'aurelia-dependency-injection', 'aurelia-templating'], function (exports, module) { 'use strict'; var Renderer, createDialogCancelError, invokeLifecycle, DialogController, DOM, Container, ViewSlot, CompositionEngine; return { setters: [function (module) { - Renderer = module.a; - createDialogCancelError = module.b; - invokeLifecycle = module.c; - DialogController = module.d; + Renderer = module.R; + createDialogCancelError = module.c; + invokeLifecycle = module.i; + DialogController = module.D; var _setter = {}; - _setter.DialogController = module.d; - _setter.Renderer = module.a; - _setter.createDialogCancelError = module.b; + _setter.DialogController = module.D; + _setter.Renderer = module.R; + _setter.createDialogCancelError = module.c; exports(_setter); }, function (module) { DOM = module.DOM; diff --git a/dist/system/chunk.js.map b/dist/system/chunk.js.map deleted file mode 100644 index a8012e0..0000000 --- a/dist/system/chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chunk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/system/default-styles.js b/dist/system/default-styles.js index 82e1e96..7903a27 100644 --- a/dist/system/default-styles.js +++ b/dist/system/default-styles.js @@ -1,4 +1,4 @@ -System.register([], function (exports, module) { +System.register([], function (exports) { 'use strict'; return { execute: function () { diff --git a/dist/system/chunk.js b/dist/system/dialog-controller.js similarity index 92% rename from dist/system/chunk.js rename to dist/system/dialog-controller.js index 155aa9c..81e0acf 100644 --- a/dist/system/chunk.js +++ b/dist/system/dialog-controller.js @@ -1,14 +1,14 @@ -System.register([], function (exports, module) { +System.register([], function (exports) { 'use strict'; return { execute: function () { exports({ - b: createDialogCancelError, - c: invokeLifecycle + c: createDialogCancelError, + i: invokeLifecycle }); - var Renderer = exports('a', (function () { + var Renderer = exports('R', (function () { function Renderer() { } Renderer.prototype.getDialogContainer = function () { @@ -51,7 +51,7 @@ System.register([], function (exports, module) { return error; } - var DialogController = exports('d', (function () { + var DialogController = exports('D', (function () { function DialogController(renderer, settings, resolve, reject) { this.resolve = resolve; this.reject = reject; @@ -119,4 +119,4 @@ System.register([], function (exports, module) { } }; }); -//# sourceMappingURL=chunk.js.map +//# sourceMappingURL=dialog-controller.js.map diff --git a/dist/system/dialog-controller.js.map b/dist/system/dialog-controller.js.map new file mode 100644 index 0000000..757b465 --- /dev/null +++ b/dist/system/dialog-controller.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dialog-controller.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/system/native-dialog-renderer.js b/dist/system/native-dialog-renderer.js index 6bdaa9e..be7b5c6 100644 --- a/dist/system/native-dialog-renderer.js +++ b/dist/system/native-dialog-renderer.js @@ -1,4 +1,4 @@ -System.register(['aurelia-pal', 'aurelia-dependency-injection', './ux-dialog-renderer.js'], function (exports, module) { +System.register(['aurelia-pal', 'aurelia-dependency-injection', './ux-dialog-renderer.js'], function (exports) { 'use strict'; var DOM, transient, transitionEvent, hasTransition; return { @@ -82,6 +82,9 @@ System.register(['aurelia-pal', 'aurelia-dependency-injection', './ux-dialog-ren return own; }; NativeDialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = DOM.activeElement; + } var spacingWrapper = DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); this.dialogContainer = DOM.createElement(containerTagName); @@ -108,6 +111,9 @@ System.register(['aurelia-pal', 'aurelia-dependency-injection', './ux-dialog-ren if (!NativeDialogRenderer_1.dialogControllers.length) { this.host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; NativeDialogRenderer.prototype.setAsActive = function () { this.dialogContainer.showModal(); diff --git a/dist/system/native-dialog-renderer.js.map b/dist/system/native-dialog-renderer.js.map index b62e25b..c82395e 100644 --- a/dist/system/native-dialog-renderer.js.map +++ b/dist/system/native-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"native-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/system/ux-dialog-body.js b/dist/system/ux-dialog-body.js index 2c5f834..7a37de8 100644 --- a/dist/system/ux-dialog-body.js +++ b/dist/system/ux-dialog-body.js @@ -1,4 +1,4 @@ -System.register([], function (exports, module) { +System.register([], function (exports) { 'use strict'; return { execute: function () { diff --git a/dist/system/ux-dialog-footer.js b/dist/system/ux-dialog-footer.js index 73c1014..a181228 100644 --- a/dist/system/ux-dialog-footer.js +++ b/dist/system/ux-dialog-footer.js @@ -1,9 +1,9 @@ -System.register(['./chunk.js'], function (exports, module) { +System.register(['./dialog-controller.js'], function (exports) { 'use strict'; var DialogController; return { setters: [function (module) { - DialogController = module.d; + DialogController = module.D; }], execute: function () { diff --git a/dist/system/ux-dialog-header.js b/dist/system/ux-dialog-header.js index 582f243..1a39b7f 100644 --- a/dist/system/ux-dialog-header.js +++ b/dist/system/ux-dialog-header.js @@ -1,9 +1,9 @@ -System.register(['./chunk.js'], function (exports, module) { +System.register(['./dialog-controller.js'], function (exports) { 'use strict'; var DialogController; return { setters: [function (module) { - DialogController = module.d; + DialogController = module.D; }], execute: function () { diff --git a/dist/system/ux-dialog-renderer.js b/dist/system/ux-dialog-renderer.js index 869318b..9d52675 100644 --- a/dist/system/ux-dialog-renderer.js +++ b/dist/system/ux-dialog-renderer.js @@ -1,4 +1,4 @@ -System.register(['aurelia-pal', 'aurelia-dependency-injection'], function (exports, module) { +System.register(['aurelia-pal', 'aurelia-dependency-injection'], function (exports) { 'use strict'; var DOM, transient; return { @@ -112,6 +112,9 @@ System.register(['aurelia-pal', 'aurelia-dependency-injection'], function (expor return own; }; DialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = DOM.activeElement; + } var spacingWrapper = DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); var dialogContainer = this.dialogContainer = DOM.createElement(containerTagName); @@ -143,6 +146,9 @@ System.register(['aurelia-pal', 'aurelia-dependency-injection'], function (expor if (!DialogRenderer.dialogControllers.length) { host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; DialogRenderer.prototype.setAsActive = function () { this.dialogOverlay.classList.add('active'); diff --git a/dist/system/ux-dialog-renderer.js.map b/dist/system/ux-dialog-renderer.js.map index aa67803..6c422f5 100644 --- a/dist/system/ux-dialog-renderer.js.map +++ b/dist/system/ux-dialog-renderer.js.map @@ -1 +1 @@ -{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"ux-dialog-renderer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/system/ux-dialog.js b/dist/system/ux-dialog.js index e71ef09..f8491ed 100644 --- a/dist/system/ux-dialog.js +++ b/dist/system/ux-dialog.js @@ -1,4 +1,4 @@ -System.register([], function (exports, module) { +System.register([], function (exports) { 'use strict'; return { execute: function () { diff --git a/dist/types/dialog-keyboard-service.d.ts b/dist/types/dialog-keyboard-service.d.ts deleted file mode 100644 index cb0ff5c..0000000 --- a/dist/types/dialog-keyboard-service.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/dist/types/renderers/native-dialog-renderer.d.ts b/dist/types/renderers/native-dialog-renderer.d.ts index ab23ad8..20353b6 100644 --- a/dist/types/renderers/native-dialog-renderer.d.ts +++ b/dist/types/renderers/native-dialog-renderer.d.ts @@ -9,6 +9,7 @@ export declare class NativeDialogRenderer implements Renderer { private closeDialogClick; private dialogCancel; dialogContainer: HTMLDialogElement; + lastActiveElement: HTMLElement; host: Element; anchor: Element; private getOwnElements; diff --git a/dist/types/renderers/ux-dialog-renderer.d.ts b/dist/types/renderers/ux-dialog-renderer.d.ts index a1bbd74..f806451 100644 --- a/dist/types/renderers/ux-dialog-renderer.d.ts +++ b/dist/types/renderers/ux-dialog-renderer.d.ts @@ -11,6 +11,7 @@ export declare class DialogRenderer implements Renderer { private closeDialogClick; dialogContainer: HTMLElement; dialogOverlay: HTMLElement; + lastActiveElement: HTMLElement; host: Element; anchor: Element; private getOwnElements; diff --git a/dist/umd-es2015/aurelia-dialog.js b/dist/umd-es2015/aurelia-dialog.js index 41d9371..7b34dd5 100644 --- a/dist/umd-es2015/aurelia-dialog.js +++ b/dist/umd-es2015/aurelia-dialog.js @@ -443,6 +443,9 @@ return own; } attach(dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = aureliaPal.DOM.activeElement; + } const spacingWrapper = aureliaPal.DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); const dialogContainer = this.dialogContainer = aureliaPal.DOM.createElement(containerTagName); @@ -474,6 +477,9 @@ if (!DialogRenderer.dialogControllers.length) { host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } } setAsActive() { this.dialogOverlay.classList.add('active'); @@ -633,6 +639,9 @@ return own; } attach(dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = aureliaPal.DOM.activeElement; + } const spacingWrapper = aureliaPal.DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); this.dialogContainer = aureliaPal.DOM.createElement(containerTagName$1); @@ -659,6 +668,9 @@ if (!NativeDialogRenderer_1.dialogControllers.length) { this.host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } } setAsActive() { this.dialogContainer.showModal(); diff --git a/dist/umd-es2015/aurelia-dialog.js.map b/dist/umd-es2015/aurelia-dialog.js.map index d105a39..d09c965 100644 --- a/dist/umd-es2015/aurelia-dialog.js.map +++ b/dist/umd-es2015/aurelia-dialog.js.map @@ -1 +1 @@ -{"version":3,"file":"aurelia-dialog.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"aurelia-dialog.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/umd/aurelia-dialog.js b/dist/umd/aurelia-dialog.js index d9f2f33..5ceea6e 100644 --- a/dist/umd/aurelia-dialog.js +++ b/dist/umd/aurelia-dialog.js @@ -461,6 +461,9 @@ return own; }; DialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = aureliaPal.DOM.activeElement; + } var spacingWrapper = aureliaPal.DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); var dialogContainer = this.dialogContainer = aureliaPal.DOM.createElement(containerTagName); @@ -492,6 +495,9 @@ if (!DialogRenderer.dialogControllers.length) { host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; DialogRenderer.prototype.setAsActive = function () { this.dialogOverlay.classList.add('active'); @@ -657,6 +663,9 @@ return own; }; NativeDialogRenderer.prototype.attach = function (dialogController) { + if (dialogController.settings.restoreFocus) { + this.lastActiveElement = aureliaPal.DOM.activeElement; + } var spacingWrapper = aureliaPal.DOM.createElement('div'); spacingWrapper.appendChild(this.anchor); this.dialogContainer = aureliaPal.DOM.createElement(containerTagName$1); @@ -683,6 +692,9 @@ if (!NativeDialogRenderer_1.dialogControllers.length) { this.host.classList.remove('ux-dialog-open'); } + if (dialogController.settings.restoreFocus) { + dialogController.settings.restoreFocus(this.lastActiveElement); + } }; NativeDialogRenderer.prototype.setAsActive = function () { this.dialogContainer.showModal(); diff --git a/dist/umd/aurelia-dialog.js.map b/dist/umd/aurelia-dialog.js.map index 23a85ed..003c95c 100644 --- a/dist/umd/aurelia-dialog.js.map +++ b/dist/umd/aurelia-dialog.js.map @@ -1 +1 @@ -{"version":3,"file":"aurelia-dialog.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"aurelia-dialog.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/doc/CHANGELOG.md b/doc/CHANGELOG.md index 257893b..c8bfc6a 100644 --- a/doc/CHANGELOG.md +++ b/doc/CHANGELOG.md @@ -1,3 +1,44 @@ + +# [2.0.0-rc.7](https://github.com/aurelia/dialog/compare/2.0.0-rc.6...2.0.0-rc.7) (2019-09-12) + + +### Bug Fixes + +* **renderers:** don't store a reference to last active element if it ([12a892d](https://github.com/aurelia/dialog/commit/12a892d)) + + +### Features + +* **keyboard:** allow to configure keyevent type ([1cfdd58](https://github.com/aurelia/dialog/commit/1cfdd58)) +* **renderers:** add restoreFocus setting ([c5f4ad4](https://github.com/aurelia/dialog/commit/c5f4ad4)) + + + + +# [1.1.0](https://github.com/aurelia/dialog/compare/1.0.0...1.1.0) (2018-08-18) + + +### Bug Fixes + +* **attach-focus:** restore behavior prior to [#346](https://github.com/aurelia/dialog/issues/346) ([#349](https://github.com/aurelia/dialog/issues/349)) ([915e735](https://github.com/aurelia/dialog/commit/915e735)) +* **css:** update styles to use ux- prefix instead of ai- ([130c13b](https://github.com/aurelia/dialog/commit/130c13b)), closes [#306](https://github.com/aurelia/dialog/issues/306) +* **DI:** use static method for Element ([e970a1b](https://github.com/aurelia/dialog/commit/e970a1b)) +* **dialog-composition-engine:** align with fixed templating typings ([ab7e534](https://github.com/aurelia/dialog/commit/ab7e534)) +* **dialog-service:** remove internal members from public interface ([a10c1ab](https://github.com/aurelia/dialog/commit/a10c1ab)) + + +### Features + +* **dialog-renderer:** add Animator support close [#188](https://github.com/aurelia/dialog/issues/188) ([2dd5f28](https://github.com/aurelia/dialog/commit/2dd5f28)) +* **dialog-renderer:** add native dialog renderer close [#338](https://github.com/aurelia/dialog/issues/338) ([f7d4c7a](https://github.com/aurelia/dialog/commit/f7d4c7a)) + + +### BREAKING CHANGES + +* **dialog-renderer:** remove the current transition based animation support from DialogRenderer + + + # [2.0.0-rc.6](https://github.com/aurelia/dialog/compare/2.0.0-rc.5...2.0.0-rc.6) (2019-05-31) diff --git a/package.json b/package.json index aa14d23..a94c448 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "aurelia-dialog", - "version": "2.0.0-rc.6", + "version": "2.0.0-rc.7", "description": "A dialog plugin for Aurelia.", "keywords": [ "aurelia",