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 = "\n \n 0\">\n \n \n";
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 = "\n \n\n \n";
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 = "\n \n 0\">\n \n \n";
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 = "\n \n\n \n";
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",