1
1
diff --git a/node_modules/focus-trap/dist/focus-trap.esm.js b/node_modules/focus-trap/dist/focus-trap.esm.js
2
- index 10d56db..a6d76d8 100644
2
+ index 10d56db..975151c 100644
3
3
--- a/node_modules/focus-trap/dist/focus-trap.esm.js
4
4
+++ b/node_modules/focus-trap/dist/focus-trap.esm.js
5
+ @@ -71,12 +71,12 @@ var activeFocusTraps = {
6
+ trapStack.push(trap);
7
+ }
8
+ },
9
+ - deactivateTrap: function deactivateTrap(trapStack, trap) {
10
+ + deactivateTrap: function deactivateTrap(trapStack, trap, unpauseOnDeactivate) {
11
+ var trapIndex = trapStack.indexOf(trap);
12
+ if (trapIndex !== -1) {
13
+ trapStack.splice(trapIndex, 1);
14
+ }
15
+ - if (trapStack.length > 0) {
16
+ + if (trapStack.length > 0 && unpauseOnDeactivate) {
17
+ trapStack[trapStack.length - 1].unpause();
18
+ }
19
+ }
5
20
@@ -100,8 +100,8 @@ var isKeyForward = function isKeyForward(e) {
6
21
var isKeyBackward = function isKeyBackward(e) {
7
22
return isTabEvent(e) && e.shiftKey;
@@ -13,7 +28,15 @@ index 10d56db..a6d76d8 100644
13
28
};
14
29
15
30
// Array.find/findIndex() are not supported on IE; this replicates enough
16
- @@ -283,7 +283,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
31
+ @@ -153,6 +153,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
32
+ var doc = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.document) || document;
33
+ var trapStack = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.trapStack) || internalTrapStack;
34
+ var config = _objectSpread2({
35
+ + unpauseOnDeactivate: true,
36
+ returnFocusOnDeactivate: true,
37
+ escapeDeactivates: true,
38
+ delayInitialFocus: true,
39
+ @@ -283,7 +284,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
17
40
return node;
18
41
};
19
42
var getInitialFocusNode = function getInitialFocusNode() {
@@ -22,7 +45,7 @@ index 10d56db..a6d76d8 100644
22
45
23
46
// false explicitly indicates we want no initialFocus at all
24
47
if (node === false) {
25
- @@ -744,7 +744 ,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
48
+ @@ -744,7 +745 ,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
26
49
// that caused the focus trap activation.
27
50
state.delayInitialFocusTimer = config.delayInitialFocus ? delay(function () {
28
51
tryFocus(getInitialFocusNode());
@@ -31,7 +54,16 @@ index 10d56db..a6d76d8 100644
31
54
doc.addEventListener('focusin', checkFocusIn, true);
32
55
doc.addEventListener('mousedown', checkPointerDown, {
33
56
capture: true,
34
- @@ -880,7 +880,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
57
+ @@ -868,7 +869,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
58
+ state.active = false;
59
+ state.paused = false;
60
+ updateObservedNodes();
61
+ - activeFocusTraps.deactivateTrap(trapStack, trap);
62
+ + activeFocusTraps.deactivateTrap(trapStack, trap, config.unpauseOnDeactivate);
63
+ var onDeactivate = getOption(options, 'onDeactivate');
64
+ var onPostDeactivate = getOption(options, 'onPostDeactivate');
65
+ var checkCanReturnFocus = getOption(options, 'checkCanReturnFocus');
66
+ @@ -880,7 +881,7 @@ var createFocusTrap = function createFocusTrap(elements, userOptions) {
35
67
tryFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation));
36
68
}
37
69
onPostDeactivate === null || onPostDeactivate === void 0 || onPostDeactivate();
@@ -41,7 +73,7 @@ index 10d56db..a6d76d8 100644
41
73
if (returnFocus && checkCanReturnFocus) {
42
74
checkCanReturnFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation)).then(finishDeactivation, finishDeactivation);
43
75
diff --git a/node_modules/focus-trap/index.d.ts b/node_modules/focus-trap/index.d.ts
44
- index 400db1b..69f4b94 100644
76
+ index 400db1b..78b38d9 100644
45
77
--- a/node_modules/focus-trap/index.d.ts
46
78
+++ b/node_modules/focus-trap/index.d.ts
47
79
@@ -16,7 +16,7 @@ declare module 'focus-trap' {
@@ -53,7 +85,19 @@ index 400db1b..69f4b94 100644
53
85
54
86
type MouseEventToBoolean = (event: MouseEvent | TouchEvent) => boolean;
55
87
type KeyboardEventToBoolean = (event: KeyboardEvent) => boolean;
56
- @@ -185,7 +185,7 @@ declare module 'focus-trap' {
88
+ @@ -135,6 +135,11 @@ declare module 'focus-trap' {
89
+ * in the trap.
90
+ */
91
+ fallbackFocus?: FocusTarget;
92
+ + /**
93
+ + * By default, the previous focus trap on the stack will be unpaused
94
+ + * when the current active trap is deactivated.
95
+ + */
96
+ + unpauseOnDeactivate?: boolean;
97
+ /**
98
+ * Default: `true`. If `false`, when the trap is deactivated,
99
+ * focus will *not* return to the element that had focus before activation.
100
+ @@ -185,7 +190,7 @@ declare module 'focus-trap' {
57
101
* This prevents elements within the focusable element from capturing
58
102
* the event that triggered the focus trap activation.
59
103
*/
0 commit comments