@atlaskit/drawer 7.14.2 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # @atlaskit/drawer
2
2
 
3
+ ## 8.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#140090](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/140090)
8
+ [`89833597971da`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/89833597971da) -
9
+ Refactor of analytics handling to remove usages of legacy AnalyticsContext. Removed
10
+ WithAnalyticsEventsProps from type.
11
+
12
+ ## 7.14.3
13
+
14
+ ### Patch Changes
15
+
16
+ - [#138959](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/138959)
17
+ [`787e6d015c8cd`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/787e6d015c8cd) -
18
+ Internal change only: Convert from class components to function components.
19
+
3
20
  ## 7.14.2
4
21
 
5
22
  ### Patch Changes
@@ -5,194 +5,32 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = exports.DrawerBase = void 0;
9
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
12
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
+ exports.default = exports.Drawer = void 0;
16
9
  var _react = _interopRequireWildcard(require("react"));
17
10
  var _exenv = require("exenv");
18
11
  var _analyticsNext = require("@atlaskit/analytics-next");
19
12
  var _layering = require("@atlaskit/layering");
20
13
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
21
14
  var _portal = _interopRequireDefault(require("@atlaskit/portal"));
22
- var _constants = require("../constants");
23
15
  var _blanket = _interopRequireDefault(require("./blanket"));
24
16
  var _primitives = _interopRequireDefault(require("./primitives"));
25
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
26
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
27
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
29
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
30
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /* eslint-disable @repo/internal/dom-events/no-unsafe-event-listeners */
31
- var packageName = "@atlaskit/drawer";
32
- var packageVersion = "7.14.2";
33
- var createAndFireEventOnAtlaskit = (0, _analyticsNext.createAndFireEvent)('atlaskit');
34
- var createAndFireOnClick = function createAndFireOnClick(createAnalyticsEvent, trigger) {
35
- return createAndFireEventOnAtlaskit({
36
- action: 'dismissed',
37
- actionSubject: 'drawer',
38
- attributes: {
39
- componentName: 'drawer',
40
- packageName: packageName,
41
- packageVersion: packageVersion,
42
- trigger: trigger
43
- }
44
- })(createAnalyticsEvent);
45
- };
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
+ /* eslint-disable @repo/internal/dom-events/no-unsafe-event-listeners */
46
20
 
47
21
  // escape close manager for layering
48
22
  var EscapeCloseManager = function EscapeCloseManager(_ref) {
49
- var createAnalyticsEvent = _ref.createAnalyticsEvent,
50
- handleClose = _ref.handleClose;
51
- var onClose = _react.default.useCallback(function (event) {
52
- if (handleClose) {
53
- var _analyticsEvent = createAnalyticsEvent && createAndFireOnClick(createAnalyticsEvent, 'escKey');
54
- handleClose(event, _analyticsEvent);
55
- }
56
- }, [handleClose, createAnalyticsEvent]);
23
+ var onClose = _ref.onClose;
24
+ // wrap so that we can cast the event to a React.KeyboardEvent
25
+ var handleClose = (0, _react.useCallback)(function (evt) {
26
+ onClose && onClose(evt);
27
+ }, [onClose]);
57
28
  (0, _layering.useCloseOnEscapePress)({
58
- onClose: onClose
29
+ onClose: handleClose
59
30
  });
60
- // only create a dummy component for using ths hook in class component
61
31
  return /*#__PURE__*/_react.default.createElement("span", null);
62
32
  };
63
- var DrawerBase = exports.DrawerBase = /*#__PURE__*/function (_Component) {
64
- (0, _inherits2.default)(DrawerBase, _Component);
65
- var _super = _createSuper(DrawerBase);
66
- function DrawerBase() {
67
- var _this;
68
- (0, _classCallCheck2.default)(this, DrawerBase);
69
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
70
- args[_key] = arguments[_key];
71
- }
72
- _this = _super.call.apply(_super, [this].concat(args));
73
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
74
- renderPortal: false
75
- });
76
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "body", _exenv.canUseDOM ? document.querySelector('body') : undefined);
77
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleBlanketClick", function (event) {
78
- _this.handleClose(event, 'blanket');
79
- });
80
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleBackButtonClick", function (event) {
81
- _this.handleClose(event, 'backButton');
82
- });
83
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleClose", function (event, trigger) {
84
- var _this$props = _this.props,
85
- createAnalyticsEvent = _this$props.createAnalyticsEvent,
86
- onClose = _this$props.onClose;
87
- var analyticsEvent = createAnalyticsEvent && createAndFireOnClick(createAnalyticsEvent, trigger);
88
- if (onClose) {
89
- onClose(event, analyticsEvent);
90
- }
91
- });
92
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleKeyDown", function (event) {
93
- var _this$props2 = _this.props,
94
- isOpen = _this$props2.isOpen,
95
- onKeyDown = _this$props2.onKeyDown;
96
- if (!(0, _platformFeatureFlags.fg)('platform.design-system-team.inline-message-layering_wfp1p')) {
97
- // when feature flag on, we will use the EscapeCloseManager instead
98
- if (event.key === 'Escape' && isOpen) {
99
- _this.handleClose(event, 'escKey');
100
- }
101
- }
102
- if (onKeyDown) {
103
- onKeyDown(event);
104
- }
105
- });
106
- return _this;
107
- }
108
- (0, _createClass2.default)(DrawerBase, [{
109
- key: "componentDidMount",
110
- value: function componentDidMount() {
111
- var isOpen = this.props.isOpen;
112
- if (isOpen) {
113
- window.addEventListener('keydown', this.handleKeyDown);
114
- }
115
- }
116
- }, {
117
- key: "componentWillUnmount",
118
- value: function componentWillUnmount() {
119
- window.removeEventListener('keydown', this.handleKeyDown);
120
- }
121
- }, {
122
- key: "componentDidUpdate",
123
- value: function componentDidUpdate(prevProps) {
124
- var isOpen = this.props.isOpen;
125
- if (isOpen !== prevProps.isOpen) {
126
- if (isOpen) {
127
- window.addEventListener('keydown', this.handleKeyDown);
128
- } else {
129
- window.removeEventListener('keydown', this.handleKeyDown);
130
- }
131
- }
132
- }
133
- }, {
134
- key: "render",
135
- value: function render() {
136
- if (!this.body) {
137
- return null;
138
- }
139
- var _this$props3 = this.props,
140
- testId = _this$props3.testId,
141
- isOpen = _this$props3.isOpen,
142
- children = _this$props3.children,
143
- icon = _this$props3.icon,
144
- closeLabel = _this$props3.closeLabel,
145
- scrollContentLabel = _this$props3.scrollContentLabel,
146
- width = _this$props3.width,
147
- shouldUnmountOnExit = _this$props3.shouldUnmountOnExit,
148
- onCloseComplete = _this$props3.onCloseComplete,
149
- onOpenComplete = _this$props3.onOpenComplete,
150
- autoFocusFirstElem = _this$props3.autoFocusFirstElem,
151
- isFocusLockEnabled = _this$props3.isFocusLockEnabled,
152
- shouldReturnFocus = _this$props3.shouldReturnFocus,
153
- overrides = _this$props3.overrides,
154
- _this$props3$zIndex = _this$props3.zIndex,
155
- zIndex = _this$props3$zIndex === void 0 ? 'unset' : _this$props3$zIndex,
156
- label = _this$props3.label,
157
- titleId = _this$props3.titleId,
158
- enterFrom = _this$props3.enterFrom;
159
- var shouldHaveLayeringEnabled = (0, _platformFeatureFlags.fg)('platform.design-system-team.inline-message-layering_wfp1p') && isOpen;
160
- return /*#__PURE__*/_react.default.createElement(_portal.default, {
161
- zIndex: zIndex
162
- }, /*#__PURE__*/_react.default.createElement(_blanket.default, {
163
- isOpen: isOpen,
164
- onBlanketClicked: this.handleBlanketClick,
165
- testId: testId && "".concat(testId, "--blanket")
166
- }), /*#__PURE__*/_react.default.createElement(_primitives.default, {
167
- testId: testId,
168
- icon: icon,
169
- closeLabel: closeLabel,
170
- in: isOpen,
171
- onClose: this.handleBackButtonClick,
172
- onCloseComplete: onCloseComplete,
173
- onOpenComplete: onOpenComplete,
174
- width: width,
175
- enterFrom: enterFrom,
176
- label: label,
177
- titleId: titleId,
178
- shouldUnmountOnExit: shouldUnmountOnExit
179
- // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
180
- ,
181
- overrides: overrides,
182
- autoFocusFirstElem: autoFocusFirstElem,
183
- isFocusLockEnabled: isFocusLockEnabled,
184
- shouldReturnFocus: shouldReturnFocus,
185
- scrollContentLabel: scrollContentLabel
186
- }, shouldHaveLayeringEnabled ? /*#__PURE__*/_react.default.createElement(_layering.UNSAFE_LAYERING, {
187
- isDisabled: false
188
- }, children, /*#__PURE__*/_react.default.createElement(EscapeCloseManager, {
189
- createAnalyticsEvent: this.props.createAnalyticsEvent,
190
- handleClose: this.handleClose
191
- })) : children));
192
- }
193
- }]);
194
- return DrawerBase;
195
- }(_react.Component);
33
+
196
34
  /**
197
35
  * __Drawer__
198
36
  *
@@ -202,12 +40,119 @@ var DrawerBase = exports.DrawerBase = /*#__PURE__*/function (_Component) {
202
40
  * - [Code](https://atlassian.design/components/drawer/code)
203
41
  * - [Usage](https://atlassian.design/components/drawer/usage)
204
42
  */
205
- (0, _defineProperty2.default)(DrawerBase, "defaultProps", _objectSpread({
206
- width: 'narrow'
207
- }, _constants.defaultFocusLockSettings));
208
- var Drawer = (0, _analyticsNext.withAnalyticsContext)({
209
- componentName: 'drawer',
210
- packageName: packageName,
211
- packageVersion: packageVersion
212
- })((0, _analyticsNext.withAnalyticsEvents)()(DrawerBase));
43
+ var Drawer = exports.Drawer = function Drawer(_ref2) {
44
+ var _ref2$width = _ref2.width,
45
+ width = _ref2$width === void 0 ? 'narrow' : _ref2$width,
46
+ isOpen = _ref2.isOpen,
47
+ _ref2$isFocusLockEnab = _ref2.isFocusLockEnabled,
48
+ isFocusLockEnabled = _ref2$isFocusLockEnab === void 0 ? true : _ref2$isFocusLockEnab,
49
+ _ref2$shouldReturnFoc = _ref2.shouldReturnFocus,
50
+ shouldReturnFocus = _ref2$shouldReturnFoc === void 0 ? true : _ref2$shouldReturnFoc,
51
+ _ref2$autoFocusFirstE = _ref2.autoFocusFirstElem,
52
+ autoFocusFirstElem = _ref2$autoFocusFirstE === void 0 ? true : _ref2$autoFocusFirstE,
53
+ onKeyDown = _ref2.onKeyDown,
54
+ onClose = _ref2.onClose,
55
+ testId = _ref2.testId,
56
+ children = _ref2.children,
57
+ icon = _ref2.icon,
58
+ closeLabel = _ref2.closeLabel,
59
+ scrollContentLabel = _ref2.scrollContentLabel,
60
+ shouldUnmountOnExit = _ref2.shouldUnmountOnExit,
61
+ onCloseComplete = _ref2.onCloseComplete,
62
+ onOpenComplete = _ref2.onOpenComplete,
63
+ overrides = _ref2.overrides,
64
+ _ref2$zIndex = _ref2.zIndex,
65
+ zIndex = _ref2$zIndex === void 0 ? 'unset' : _ref2$zIndex,
66
+ label = _ref2.label,
67
+ titleId = _ref2.titleId,
68
+ enterFrom = _ref2.enterFrom;
69
+ var body = _exenv.canUseDOM ? document.querySelector('body') : undefined;
70
+ var handleClose = (0, _analyticsNext.usePlatformLeafEventHandler)({
71
+ fn: function fn(evt, analyticsEvent) {
72
+ return onClose && onClose(evt, analyticsEvent);
73
+ },
74
+ action: 'dismissed',
75
+ componentName: 'drawer',
76
+ packageName: "@atlaskit/drawer",
77
+ packageVersion: "8.0.0",
78
+ analyticsData: {
79
+ trigger: 'escKey'
80
+ }
81
+ });
82
+ var handleKeyDown = (0, _react.useCallback)(function (evt) {
83
+ onKeyDown && onKeyDown(evt);
84
+ if (!(0, _platformFeatureFlags.fg)('platform.design-system-team.inline-message-layering_wfp1p')) {
85
+ // when feature flag on, we will use the EscapeCloseManager instead
86
+ if (evt.key === 'Escape' && isOpen && onClose) {
87
+ handleClose(evt);
88
+ }
89
+ }
90
+ }, [handleClose, isOpen, onClose, onKeyDown]);
91
+ (0, _react.useEffect)(function () {
92
+ if (isOpen) {
93
+ window.addEventListener('keydown', handleKeyDown);
94
+ }
95
+ return function () {
96
+ window.removeEventListener('keydown', handleKeyDown);
97
+ };
98
+ }, [handleKeyDown, isOpen]);
99
+ var handleBlanketClick = (0, _analyticsNext.usePlatformLeafEventHandler)({
100
+ fn: function fn(evt, analyticsEvent) {
101
+ return onClose && onClose(evt, analyticsEvent);
102
+ },
103
+ action: 'dismissed',
104
+ componentName: 'drawer',
105
+ packageName: "@atlaskit/drawer",
106
+ packageVersion: "8.0.0",
107
+ analyticsData: {
108
+ trigger: 'blanket'
109
+ }
110
+ });
111
+ var handleBackButtonClick = (0, _analyticsNext.usePlatformLeafEventHandler)({
112
+ fn: function fn(evt, analyticsEvent) {
113
+ return onClose && onClose(evt, analyticsEvent);
114
+ },
115
+ action: 'dismissed',
116
+ componentName: 'drawer',
117
+ packageName: "@atlaskit/drawer",
118
+ packageVersion: "8.0.0",
119
+ analyticsData: {
120
+ trigger: 'backButton'
121
+ }
122
+ });
123
+ if (!body) {
124
+ return null;
125
+ }
126
+ return /*#__PURE__*/_react.default.createElement(_portal.default, {
127
+ zIndex: zIndex
128
+ }, /*#__PURE__*/_react.default.createElement(_blanket.default, {
129
+ isOpen: isOpen,
130
+ onBlanketClicked: handleBlanketClick,
131
+ testId: testId && "".concat(testId, "--blanket")
132
+ }), /*#__PURE__*/_react.default.createElement(_primitives.default, {
133
+ testId: testId,
134
+ icon: icon,
135
+ closeLabel: closeLabel,
136
+ in: isOpen,
137
+ onClose: handleBackButtonClick,
138
+ onCloseComplete: onCloseComplete,
139
+ onOpenComplete: onOpenComplete,
140
+ width: width,
141
+ enterFrom: enterFrom,
142
+ label: label,
143
+ titleId: titleId,
144
+ shouldUnmountOnExit: shouldUnmountOnExit
145
+ // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
146
+ ,
147
+ overrides: overrides,
148
+ autoFocusFirstElem: autoFocusFirstElem,
149
+ isFocusLockEnabled: isFocusLockEnabled,
150
+ shouldReturnFocus: shouldReturnFocus,
151
+ scrollContentLabel: scrollContentLabel
152
+ }, isOpen && (0, _platformFeatureFlags.fg)('platform.design-system-team.inline-message-layering_wfp1p') ? /*#__PURE__*/_react.default.createElement(_layering.UNSAFE_LAYERING, {
153
+ isDisabled: false
154
+ }, children, /*#__PURE__*/_react.default.createElement(EscapeCloseManager, {
155
+ onClose: handleClose
156
+ })) : children));
157
+ };
213
158
  var _default = exports.default = Drawer;
@@ -6,85 +6,56 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = void 0;
9
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
12
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
9
  var _react = _interopRequireWildcard(require("react"));
17
10
  var _reactFocusLock = _interopRequireDefault(require("react-focus-lock"));
18
11
  var _reactScrolllock = _interopRequireDefault(require("react-scrolllock"));
19
12
  var _tinyInvariant = _interopRequireDefault(require("tiny-invariant"));
20
- var _constants = require("../../constants");
21
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
22
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
23
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
26
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
27
- // Thin wrapper over react-focus-lock. This wrapper only exists to ensure API compatibility.
28
- // This component should be deleted during https://ecosystem.atlassian.net/browse/AK-5658
29
- var FocusLock = exports.default = /*#__PURE__*/function (_Component) {
30
- (0, _inherits2.default)(FocusLock, _Component);
31
- var _super = _createSuper(FocusLock);
32
- function FocusLock() {
33
- var _this;
34
- (0, _classCallCheck2.default)(this, FocusLock);
35
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
36
- args[_key] = arguments[_key];
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
+ /**
16
+ * __Focus lock__
17
+ *
18
+ * Thin wrapper over react-focus-lock. This wrapper only exists to ensure API compatibility.
19
+ * This component should be deleted during https://ecosystem.atlassian.net/browse/AK-5658
20
+ */
21
+ var FocusLock = function FocusLock(_ref) {
22
+ var _ref$isFocusLockEnabl = _ref.isFocusLockEnabled,
23
+ isFocusLockEnabled = _ref$isFocusLockEnabl === void 0 ? true : _ref$isFocusLockEnabl,
24
+ _ref$autoFocusFirstEl = _ref.autoFocusFirstElem,
25
+ autoFocusFirstElem = _ref$autoFocusFirstEl === void 0 ? true : _ref$autoFocusFirstEl,
26
+ _ref$shouldReturnFocu = _ref.shouldReturnFocus,
27
+ shouldReturnFocus = _ref$shouldReturnFocu === void 0 ? true : _ref$shouldReturnFocu,
28
+ children = _ref.children;
29
+ (0, _react.useEffect)(function () {
30
+ if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production' && !process.env.CI) {
31
+ (0, _tinyInvariant.default)(typeof autoFocusFirstElem === 'boolean', '@atlaskit/drawer: Passing a function as autoFocus is deprecated. Instead call focus on the element ref or use the autofocus property.');
37
32
  }
38
- _this = _super.call.apply(_super, [this].concat(args));
39
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getFocusTarget", function () {
40
- var shouldReturnFocus = _this.props.shouldReturnFocus;
41
- if (typeof shouldReturnFocus === 'boolean') {
42
- return shouldReturnFocus;
43
- }
44
- return false;
45
- });
46
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onDeactivation", function () {
47
- var shouldReturnFocus = _this.props.shouldReturnFocus;
48
- if (typeof shouldReturnFocus !== 'boolean') {
49
- window.setTimeout(function () {
50
- var _shouldReturnFocus$cu;
51
- shouldReturnFocus === null || shouldReturnFocus === void 0 || (_shouldReturnFocus$cu = shouldReturnFocus.current) === null || _shouldReturnFocus$cu === void 0 || _shouldReturnFocus$cu.focus();
52
- }, 0);
53
- }
54
- });
55
- return _this;
56
- }
57
- (0, _createClass2.default)(FocusLock, [{
58
- key: "componentDidMount",
59
- value: function componentDidMount() {
60
- var _this$props = this.props,
61
- isFocusLockEnabled = _this$props.isFocusLockEnabled,
62
- autoFocusFirstElem = _this$props.autoFocusFirstElem;
63
- if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production' && !process.env.CI) {
64
- (0, _tinyInvariant.default)(typeof autoFocusFirstElem === 'boolean', '@atlaskit/drawer: Passing a function as autoFocus is deprecated. Instead call focus on the element ref or use the autofocus property.');
65
- }
66
- if (typeof autoFocusFirstElem === 'function' && isFocusLockEnabled) {
67
- var elem = autoFocusFirstElem();
68
- if (elem && elem.focus) {
69
- elem.focus();
70
- }
33
+ if (typeof autoFocusFirstElem === 'function' && isFocusLockEnabled) {
34
+ var elem = autoFocusFirstElem();
35
+ if (elem && elem.focus) {
36
+ elem.focus();
71
37
  }
72
38
  }
73
- }, {
74
- key: "render",
75
- value: function render() {
76
- var _this$props2 = this.props,
77
- isFocusLockEnabled = _this$props2.isFocusLockEnabled,
78
- autoFocusFirstElem = _this$props2.autoFocusFirstElem,
79
- children = _this$props2.children;
80
- return /*#__PURE__*/_react.default.createElement(_reactFocusLock.default, {
81
- disabled: !isFocusLockEnabled,
82
- autoFocus: !!autoFocusFirstElem,
83
- returnFocus: this.getFocusTarget(),
84
- onDeactivation: this.onDeactivation
85
- }, /*#__PURE__*/_react.default.createElement(_reactScrolllock.default, null, children));
39
+ }, [autoFocusFirstElem, isFocusLockEnabled]);
40
+ var getFocusTarget = function getFocusTarget() {
41
+ if (typeof shouldReturnFocus === 'boolean') {
42
+ return shouldReturnFocus;
43
+ }
44
+ return false;
45
+ };
46
+ var onDeactivation = function onDeactivation() {
47
+ if (typeof shouldReturnFocus !== 'boolean') {
48
+ window.setTimeout(function () {
49
+ var _shouldReturnFocus$cu;
50
+ shouldReturnFocus === null || shouldReturnFocus === void 0 || (_shouldReturnFocus$cu = shouldReturnFocus.current) === null || _shouldReturnFocus$cu === void 0 || _shouldReturnFocus$cu.focus();
51
+ }, 0);
86
52
  }
87
- }]);
88
- return FocusLock;
89
- }(_react.Component);
90
- (0, _defineProperty2.default)(FocusLock, "defaultProps", _objectSpread({}, _constants.defaultFocusLockSettings));
53
+ };
54
+ return /*#__PURE__*/_react.default.createElement(_reactFocusLock.default, {
55
+ disabled: !isFocusLockEnabled,
56
+ autoFocus: !!autoFocusFirstElem,
57
+ returnFocus: getFocusTarget(),
58
+ onDeactivation: onDeactivation
59
+ }, /*#__PURE__*/_react.default.createElement(_reactScrolllock.default, null, children));
60
+ };
61
+ var _default = exports.default = FocusLock;