intergalactic 15.56.0 → 15.57.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 +20 -1
- package/base-trigger/lib/cjs/BaseTrigger.js +18 -18
- package/base-trigger/lib/cjs/ButtonTrigger.js +3 -3
- package/base-trigger/lib/cjs/FilterTrigger.js +7 -7
- package/base-trigger/lib/cjs/LinkTrigger.js +12 -12
- package/base-trigger/lib/es6/BaseTrigger.js +18 -18
- package/base-trigger/lib/es6/ButtonTrigger.js +3 -3
- package/base-trigger/lib/es6/FilterTrigger.js +7 -7
- package/base-trigger/lib/es6/LinkTrigger.js +12 -12
- package/components.json +73 -73
- package/date-picker/lib/cjs/components/Calendar.js +21 -21
- package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js +26 -26
- package/date-picker/lib/cjs/components/InputTrigger.js +26 -26
- package/date-picker/lib/cjs/components/PickerAbstract.js +26 -26
- package/date-picker/lib/cjs/components/RangePickerAbstract.js +26 -26
- package/date-picker/lib/es6/components/Calendar.js +21 -21
- package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js +26 -26
- package/date-picker/lib/es6/components/InputTrigger.js +26 -26
- package/date-picker/lib/es6/components/PickerAbstract.js +26 -26
- package/date-picker/lib/es6/components/RangePickerAbstract.js +26 -26
- package/dropdown-menu/lib/cjs/DropdownMenu.js +2 -4
- package/dropdown-menu/lib/cjs/DropdownMenu.js.map +1 -1
- package/dropdown-menu/lib/es6/DropdownMenu.js +2 -4
- package/dropdown-menu/lib/es6/DropdownMenu.js.map +1 -1
- package/icon/Hashtag/l/index.d.ts +6 -0
- package/icon/Hashtag/l/index.js +38 -0
- package/icon/Hashtag/l/index.mjs +26 -0
- package/icon/Hashtag/m/index.d.ts +6 -0
- package/icon/Hashtag/m/index.js +38 -0
- package/icon/Hashtag/m/index.mjs +26 -0
- package/package.json +1 -1
- package/popper/index.d.ts +6 -1
- package/popper/lib/cjs/Popper.js +72 -173
- package/popper/lib/cjs/Popper.js.map +1 -1
- package/popper/lib/cjs/index.d.js.map +1 -1
- package/popper/lib/es6/Popper.js +74 -175
- package/popper/lib/es6/Popper.js.map +1 -1
- package/popper/lib/es6/index.d.js.map +1 -1
- package/popper/lib/types/index.d.ts +6 -1
- package/select/lib/cjs/InputSearch.js +6 -6
- package/select/lib/cjs/Select.js +11 -27
- package/select/lib/cjs/Select.js.map +1 -1
- package/select/lib/es6/InputSearch.js +6 -6
- package/select/lib/es6/Select.js +11 -27
- package/select/lib/es6/Select.js.map +1 -1
- package/textarea/lib/cjs/Textarea.js +8 -8
- package/textarea/lib/es6/Textarea.js +8 -8
- package/time-picker/lib/cjs/TimePicker.js +12 -12
- package/time-picker/lib/es6/TimePicker.js +12 -12
- package/tooltip/lib/cjs/Tooltip.js +2 -1
- package/tooltip/lib/cjs/Tooltip.js.map +1 -1
- package/tooltip/lib/es6/Tooltip.js +2 -1
- package/tooltip/lib/es6/Tooltip.js.map +1 -1
- package/utils/lib/focus-lock/focusBorders.d.ts +3 -0
- package/utils/lib/focus-lock/focusBorders.js +43 -0
- package/utils/lib/focus-lock/focusBorders.js.map +1 -0
- package/utils/lib/focus-lock/focusBorders.mjs +34 -0
- package/utils/lib/focus-lock/focusBorders.mjs.map +1 -0
- package/utils/lib/focus-lock/getFocusableIn.d.ts +1 -0
- package/utils/lib/focus-lock/getFocusableIn.js +26 -0
- package/utils/lib/focus-lock/getFocusableIn.js.map +1 -0
- package/utils/lib/focus-lock/getFocusableIn.mjs +19 -0
- package/utils/lib/focus-lock/getFocusableIn.mjs.map +1 -0
- package/utils/lib/focus-lock/isFocusInside.d.ts +1 -0
- package/utils/lib/focus-lock/isFocusInside.js +16 -0
- package/utils/lib/focus-lock/isFocusInside.js.map +1 -0
- package/utils/lib/focus-lock/isFocusInside.mjs +9 -0
- package/utils/lib/focus-lock/isFocusInside.mjs.map +1 -0
- package/utils/lib/focus-lock/isFocusable.d.ts +1 -0
- package/utils/lib/focus-lock/isFocusable.js +44 -0
- package/utils/lib/focus-lock/isFocusable.js.map +1 -0
- package/utils/lib/focus-lock/isFocusable.mjs +36 -0
- package/utils/lib/focus-lock/isFocusable.mjs.map +1 -0
- package/utils/lib/focus-lock/setFocus.d.ts +1 -0
- package/utils/lib/focus-lock/setFocus.js +63 -0
- package/utils/lib/focus-lock/setFocus.js.map +1 -0
- package/utils/lib/focus-lock/setFocus.mjs +55 -0
- package/utils/lib/focus-lock/setFocus.mjs.map +1 -0
- package/utils/lib/hasParent.d.ts +1 -0
- package/utils/lib/hasParent.js +14 -0
- package/utils/lib/hasParent.js.map +1 -0
- package/utils/lib/hasParent.mjs +7 -0
- package/utils/lib/hasParent.mjs.map +1 -0
- package/utils/lib/use/useFocusLock.d.ts +4 -3
- package/utils/lib/use/useFocusLock.js +45 -97
- package/utils/lib/use/useFocusLock.js.map +1 -1
- package/utils/lib/use/useFocusLock.mjs +30 -92
- package/utils/lib/use/useFocusLock.mjs.map +1 -1
package/popper/index.d.ts
CHANGED
@@ -81,7 +81,12 @@ export type PopperProps = OutsideClickProps &
|
|
81
81
|
/**
|
82
82
|
* Disabled focus trap, autofocus and focus return
|
83
83
|
*/
|
84
|
-
disableEnforceFocus?: boolean
|
84
|
+
disableEnforceFocus?: boolean /**
|
85
|
+
* If enabled, after reaching the end of popper the browser focus goes to the start of popper and vice versa.
|
86
|
+
* If disabled, after reading the end of popper the browser focus returns to trigger and popper is being closed.
|
87
|
+
* @default `true` (`false` in Tooltip)
|
88
|
+
*/;
|
89
|
+
focusLoop?: boolean;
|
85
90
|
};
|
86
91
|
|
87
92
|
/** @deprecated */
|
package/popper/lib/cjs/Popper.js
CHANGED
@@ -28,18 +28,17 @@ var _ref5 = require("intergalactic/utils/lib/ref");
|
|
28
28
|
var _useFocusLock = require("intergalactic/utils/lib/use/useFocusLock");
|
29
29
|
var _assignProps3 = require("intergalactic/utils/lib/assignProps");
|
30
30
|
var _pick = _interopRequireDefault(require("intergalactic/utils/lib/pick"));
|
31
|
-
var _logger = _interopRequireDefault(require("intergalactic/utils/lib/logger"));
|
32
31
|
var _uniqueID = _interopRequireDefault(require("intergalactic/utils/lib/uniqueID"));
|
33
32
|
var _animation = require("intergalactic/animation");
|
34
33
|
var _useCssVariable = require("intergalactic/utils/lib/useCssVariable");
|
35
34
|
var _ThemeProvider = require("intergalactic/utils/lib/ThemeProvider");
|
36
35
|
var _ScreenReaderOnly = require("intergalactic/utils/lib/ScreenReaderOnly");
|
37
36
|
var _keyboardFocusEnhance = _interopRequireWildcard(require("intergalactic/utils/lib/enhances/keyboardFocusEnhance"));
|
37
|
+
var _hasParent = require("intergalactic/utils/lib/hasParent");
|
38
38
|
var _createPopper2 = _interopRequireDefault(require("./createPopper"));
|
39
39
|
var _excluded = ["placement", "modifiers", "strategy", "onFirstUpdate"],
|
40
40
|
_excluded2 = ["onKeyDown"],
|
41
|
-
_excluded3 = ["
|
42
|
-
_excluded4 = ["onKeyDown"];
|
41
|
+
_excluded3 = ["onKeyDown"];
|
43
42
|
/*__reshadow-styles__:"./style/popper.shadow.css"*/
|
44
43
|
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SPopper_18pzs_gg_{outline:0;z-index:var(--intergalactic-z-index-popper, 700);color:var(--intergalactic-text-primary, #191b23)}.___SPopper_18pzs_gg_.__keyboardFocused_18pzs_gg_:focus:after{position:absolute;display:block;content:\"\";top:0;right:0;bottom:0;left:0;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));pointer-events:none}.___SPopper_18pzs_gg_.__keyboardFocused_18pzs_gg_.__hideFocus_18pzs_gg_:focus:after{box-shadow:none}.___SFocusHint_18pzs_gg_{display:none}.___STrigger_18pzs_gg_:focus .___SFocusHint_18pzs_gg_,.___STrigger_18pzs_gg_:focus-within .___SFocusHint_18pzs_gg_{display:inline}" /*__inner_css_end__*/, "18pzs_gg_") /*__reshadow_css_end__*/, {
|
45
44
|
"__SPopper": "___SPopper_18pzs_gg_",
|
@@ -104,9 +103,11 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
104
103
|
}
|
105
104
|
});
|
106
105
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "triggerRef", /*#__PURE__*/_react["default"].createRef());
|
107
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "focusableTriggerReturnFocusToRef", /*#__PURE__*/_react["default"].createRef());
|
108
106
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "popperRef", /*#__PURE__*/_react["default"].createRef());
|
109
107
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "popper", /*#__PURE__*/_react["default"].createRef());
|
108
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {
|
109
|
+
ignoreTriggerFocusUntil: 0
|
110
|
+
});
|
110
111
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "createTriggerRef", function (ref) {
|
111
112
|
if (ref && _this.triggerRef.current !== ref) {
|
112
113
|
(0, _ref5.setRef)(_this.triggerRef, ref);
|
@@ -167,8 +168,13 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
167
168
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "bindHandlerKeyDown", function (onKeyDown) {
|
168
169
|
return (0, _assignProps3.callAllEventHandlers)(onKeyDown, _this.handlerKeyDown);
|
169
170
|
});
|
170
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "bindHandlerChangeVisibleWithTimer", function (visible, component) {
|
171
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "bindHandlerChangeVisibleWithTimer", function (visible, component, action) {
|
171
172
|
return function (e) {
|
173
|
+
var now = Date.now();
|
174
|
+
var focusAction = ['onFocus', 'onKeyboardFocus', 'onFocusCapture'].includes(action);
|
175
|
+
if (now < _this.state.ignoreTriggerFocusUntil && visible && component === 'trigger' && focusAction) {
|
176
|
+
return;
|
177
|
+
}
|
172
178
|
var currentTarget = e === null || e === void 0 ? void 0 : e.currentTarget;
|
173
179
|
_this.handlerChangeVisibleWithTimer(visible, e, function () {
|
174
180
|
clearTimeout(_this.timerMultiTrigger);
|
@@ -183,6 +189,16 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
183
189
|
}
|
184
190
|
}, 0);
|
185
191
|
});
|
192
|
+
var ignoringDuration = 2000;
|
193
|
+
if (!visible) {
|
194
|
+
_this.setState({
|
195
|
+
ignoreTriggerFocusUntil: now + ignoringDuration
|
196
|
+
});
|
197
|
+
} else if (now < _this.state.ignoreTriggerFocusUntil + ignoringDuration) {
|
198
|
+
_this.setState({
|
199
|
+
ignoreTriggerFocusUntil: 0
|
200
|
+
});
|
201
|
+
}
|
186
202
|
};
|
187
203
|
});
|
188
204
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handlerChangeVisibleWithTimer", function (visible, e, cb) {
|
@@ -199,6 +215,18 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
199
215
|
cb();
|
200
216
|
}, latency);
|
201
217
|
});
|
218
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleTriggerBlur", function () {
|
219
|
+
setTimeout(function () {
|
220
|
+
_this.setState({
|
221
|
+
ignoreTriggerFocusUntil: 0
|
222
|
+
});
|
223
|
+
}, 0);
|
224
|
+
});
|
225
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handlePopperFocusOut", function (event) {
|
226
|
+
if (_this.asProps.focusLoop) return;
|
227
|
+
if ((0, _hasParent.hasParent)(event.target, _this.triggerRef.current)) return;
|
228
|
+
_this.bindHandlerChangeVisibleWithTimer(false, 'popper', 'onBlur')(event);
|
229
|
+
});
|
202
230
|
if ((0, _canUseDOM["default"])()) {
|
203
231
|
_this.observer = new ResizeObserver(function () {
|
204
232
|
requestAnimationFrame(function () {
|
@@ -259,13 +287,13 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
259
287
|
var crossEvents = someArray(showEvents, hideEvents);
|
260
288
|
var handlers = {};
|
261
289
|
showEvents.forEach(function (action) {
|
262
|
-
handlers[action] = _this3.bindHandlerChangeVisibleWithTimer(true, component);
|
290
|
+
handlers[action] = _this3.bindHandlerChangeVisibleWithTimer(true, component, action);
|
263
291
|
});
|
264
292
|
hideEvents.forEach(function (action) {
|
265
|
-
handlers[action] = _this3.bindHandlerChangeVisibleWithTimer(false, component);
|
293
|
+
handlers[action] = _this3.bindHandlerChangeVisibleWithTimer(false, component, action);
|
266
294
|
});
|
267
295
|
crossEvents.forEach(function (action) {
|
268
|
-
handlers[action] = visible ? _this3.bindHandlerChangeVisibleWithTimer(false, component) : _this3.bindHandlerChangeVisibleWithTimer(true, component);
|
296
|
+
handlers[action] = visible ? _this3.bindHandlerChangeVisibleWithTimer(false, component, action) : _this3.bindHandlerChangeVisibleWithTimer(true, component, action);
|
269
297
|
});
|
270
298
|
return handlers;
|
271
299
|
}
|
@@ -286,9 +314,9 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
286
314
|
interaction: interaction
|
287
315
|
}, interactionProps), {}, {
|
288
316
|
onKeyDown: this.bindHandlerKeyDown(onKeyDown),
|
289
|
-
focusableTriggerReturnFocusToRef: this.focusableTriggerReturnFocusToRef,
|
290
317
|
disableEnforceFocus: disableEnforceFocus,
|
291
|
-
popperRef: this.popperRef
|
318
|
+
popperRef: this.popperRef,
|
319
|
+
onBlur: (0, _assignProps3.callAllEventHandlers)(this.handleTriggerBlur, interactionProps.onBlur)
|
292
320
|
});
|
293
321
|
}
|
294
322
|
}, {
|
@@ -301,12 +329,11 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
301
329
|
placement = _this$asProps4.placement,
|
302
330
|
duration = _this$asProps4.duration,
|
303
331
|
animationsDisabled = _this$asProps4.animationsDisabled,
|
304
|
-
disableEnforceFocus = _this$asProps4.disableEnforceFocus
|
305
|
-
other = (0, _objectWithoutProperties2["default"])(_this$asProps4, _excluded3);
|
332
|
+
disableEnforceFocus = _this$asProps4.disableEnforceFocus;
|
306
333
|
// @ts-ignore
|
307
334
|
var _this$handlersFromInt2 = this.handlersFromInteraction(interaction, 'popper', visible),
|
308
335
|
onKeyDown = _this$handlersFromInt2.onKeyDown,
|
309
|
-
interactionProps = (0, _objectWithoutProperties2["default"])(_this$handlersFromInt2,
|
336
|
+
interactionProps = (0, _objectWithoutProperties2["default"])(_this$handlersFromInt2, _excluded3);
|
310
337
|
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({
|
311
338
|
ref: this.createPopperRef,
|
312
339
|
triggerRef: this.triggerRef,
|
@@ -319,8 +346,8 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
319
346
|
duration: duration,
|
320
347
|
animationsDisabled: animationsDisabled,
|
321
348
|
popper: this.popper,
|
322
|
-
|
323
|
-
|
349
|
+
disableEnforceFocus: disableEnforceFocus,
|
350
|
+
handleFocusOut: this.handlePopperFocusOut
|
324
351
|
});
|
325
352
|
}
|
326
353
|
}, {
|
@@ -367,7 +394,8 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
367
394
|
strategy: 'absolute',
|
368
395
|
interaction: 'click',
|
369
396
|
timeout: 0,
|
370
|
-
excludeRefs: []
|
397
|
+
excludeRefs: [],
|
398
|
+
focusLoop: true
|
371
399
|
});
|
372
400
|
(0, _defineProperty2["default"])(Popper, "enhance", [(0, _uniqueID["default"])(), (0, _useCssVariable.cssVariableEnhance)({
|
373
401
|
variable: '--intergalactic-duration-popper',
|
@@ -375,144 +403,17 @@ var Popper = /*#__PURE__*/function (_Component) {
|
|
375
403
|
map: Number.parseInt,
|
376
404
|
prop: 'duration'
|
377
405
|
})]);
|
378
|
-
var getElementNestingIndexes = function getElementNestingIndexes(element) {
|
379
|
-
var chain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new Set([element, document.body]);
|
380
|
-
if (!(element !== null && element !== void 0 && element.parentElement)) return [];
|
381
|
-
var index = Array.from(element.parentElement.children).indexOf(element);
|
382
|
-
if (chain.has(element.parentElement)) return [index];
|
383
|
-
chain.add(element.parentElement);
|
384
|
-
return [].concat((0, _toConsumableArray2["default"])(getElementNestingIndexes(element.parentElement, chain)), [index]);
|
385
|
-
};
|
386
|
-
var useReturnFocusEl = function useReturnFocusEl(interaction, onKeyboardFocus, disable) {
|
387
|
-
var _React$useState = _react["default"].useState(false),
|
388
|
-
_React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
|
389
|
-
keyboardFocused = _React$useState2[0],
|
390
|
-
setKeyboardFocused = _React$useState2[1];
|
391
|
-
var _React$useState3 = _react["default"].useState(null),
|
392
|
-
_React$useState4 = (0, _slicedToArray2["default"])(_React$useState3, 2),
|
393
|
-
returnFocusEl = _React$useState4[0],
|
394
|
-
setReturnFocusEl = _React$useState4[1];
|
395
|
-
var focusSourceRef = (0, _keyboardFocusEnhance.useFocusSource)();
|
396
|
-
var handleFocus = _react["default"].useCallback(function (event) {
|
397
|
-
if (focusSourceRef.current !== 'keyboard') return;
|
398
|
-
onKeyboardFocus === null || onKeyboardFocus === void 0 ? void 0 : onKeyboardFocus();
|
399
|
-
if (disable) return;
|
400
|
-
if (interaction !== 'focus') return;
|
401
|
-
if (!event.relatedTarget) {
|
402
|
-
setReturnFocusEl('after');
|
403
|
-
}
|
404
|
-
var focusToNesting = getElementNestingIndexes(event.target);
|
405
|
-
var focusFromNesting = getElementNestingIndexes(event.relatedTarget);
|
406
|
-
var nestingLength = Math.max(focusToNesting.length, focusFromNesting.length);
|
407
|
-
for (var i = 0; i < nestingLength; i++) {
|
408
|
-
if (focusFromNesting[i] === undefined) {
|
409
|
-
setReturnFocusEl('after'); // <div tabIndex="0" id="focus1" /> <input id="focus2" /> </div>
|
410
|
-
return;
|
411
|
-
}
|
412
|
-
if (focusFromNesting[i] > focusToNesting[i]) {
|
413
|
-
setReturnFocusEl('before'); // <input id="focus2" /> <input id="focus1" />
|
414
|
-
return;
|
415
|
-
}
|
416
|
-
}
|
417
|
-
setReturnFocusEl('after'); // <input id="focus1" /> <input id="focus2" />
|
418
|
-
}, [interaction, onKeyboardFocus, disable]);
|
419
|
-
var handleFocusReturnElFocus = _react["default"].useCallback(function () {
|
420
|
-
if (focusSourceRef.current !== 'keyboard') return;
|
421
|
-
setKeyboardFocused(true);
|
422
|
-
}, []);
|
423
|
-
var handleFocusReturnElBlur = _react["default"].useCallback(function () {
|
424
|
-
setTimeout(function () {
|
425
|
-
return setReturnFocusEl(null);
|
426
|
-
}, 0);
|
427
|
-
setKeyboardFocused(false);
|
428
|
-
}, []);
|
429
|
-
return {
|
430
|
-
returnFocusEl: returnFocusEl,
|
431
|
-
handleFocus: handleFocus,
|
432
|
-
handleFocusReturnElFocus: handleFocusReturnElFocus,
|
433
|
-
handleFocusReturnElBlur: handleFocusReturnElBlur,
|
434
|
-
keyboardFocused: keyboardFocused
|
435
|
-
};
|
436
|
-
};
|
437
|
-
var useFocusCatch = function useFocusCatch(active, interaction, triggerRef, popperRef) {
|
438
|
-
var activeRef = _react["default"].useRef(active);
|
439
|
-
activeRef.current = active;
|
440
|
-
var _React$useState5 = _react["default"].useState(false),
|
441
|
-
_React$useState6 = (0, _slicedToArray2["default"])(_React$useState5, 2),
|
442
|
-
keyboardFocused = _React$useState6[0],
|
443
|
-
setKeyboardFocused = _React$useState6[1];
|
444
|
-
var _React$useState7 = _react["default"].useState(false),
|
445
|
-
_React$useState8 = (0, _slicedToArray2["default"])(_React$useState7, 2),
|
446
|
-
focusCatch = _React$useState8[0],
|
447
|
-
setFocusCatch = _React$useState8[1];
|
448
|
-
var focusSourceRef = (0, _keyboardFocusEnhance.useFocusSource)();
|
449
|
-
var handleFocusCatchFocus = _react["default"].useCallback(function () {
|
450
|
-
if (focusSourceRef.current !== 'keyboard') return;
|
451
|
-
setKeyboardFocused(true);
|
452
|
-
}, []);
|
453
|
-
var handleFocusCatchBlur = _react["default"].useCallback(function () {
|
454
|
-
setFocusCatch(false);
|
455
|
-
setKeyboardFocused(false);
|
456
|
-
}, []);
|
457
|
-
var handleFocusCatchRef = _react["default"].useCallback(function (node) {
|
458
|
-
if (activeRef.current) return setFocusCatch(false);
|
459
|
-
if (!(0, _useFocusLock.isFocusInside)(popperRef.current) && document.activeElement !== document.body) return setFocusCatch(false);
|
460
|
-
node === null || node === void 0 ? void 0 : node.focus();
|
461
|
-
}, []);
|
462
|
-
_react["default"].useEffect(function () {
|
463
|
-
if (!active) return;
|
464
|
-
if (!popperRef.current) return;
|
465
|
-
return function () {
|
466
|
-
setTimeout(function () {
|
467
|
-
if (activeRef.current) return;
|
468
|
-
if (!(0, _useFocusLock.isFocusInside)(popperRef.current) && document.activeElement !== document.body) return;
|
469
|
-
if (interaction === 'hover' || interaction === 'focus') {
|
470
|
-
setFocusCatch(true);
|
471
|
-
} else {
|
472
|
-
var _triggerRef$current;
|
473
|
-
(_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.focus();
|
474
|
-
}
|
475
|
-
}, 1);
|
476
|
-
};
|
477
|
-
}, [active, interaction]);
|
478
|
-
return {
|
479
|
-
focusCatch: focusCatch,
|
480
|
-
handleFocusCatchFocus: handleFocusCatchFocus,
|
481
|
-
handleFocusCatchBlur: handleFocusCatchBlur,
|
482
|
-
handleFocusCatchRef: handleFocusCatchRef,
|
483
|
-
keyboardFocused: keyboardFocused
|
484
|
-
};
|
485
|
-
};
|
486
|
-
var focusCatcherStyles = {
|
487
|
-
position: 'fixed'
|
488
|
-
};
|
489
406
|
function Trigger(props) {
|
490
407
|
var _ref = arguments[0];
|
491
408
|
var STrigger = _flexBox.Box;
|
492
409
|
var SFocusHint = 'span';
|
493
410
|
var Children = props.Children,
|
494
|
-
interaction = props.interaction,
|
495
|
-
focusableTriggerReturnFocusToRef = props.focusableTriggerReturnFocusToRef,
|
496
411
|
focusHint = props.focusHint,
|
497
412
|
onKeyboardFocus = props.onKeyboardFocus,
|
498
|
-
|
413
|
+
highlighted = props.highlighted,
|
499
414
|
active = props.active,
|
500
|
-
popperRef = props.popperRef
|
501
|
-
highlighted = props.highlighted;
|
415
|
+
popperRef = props.popperRef;
|
502
416
|
var triggerRef = _react["default"].useRef();
|
503
|
-
var _useReturnFocusEl = useReturnFocusEl(interaction, onKeyboardFocus, disableEnforceFocus),
|
504
|
-
returnFocusEl = _useReturnFocusEl.returnFocusEl,
|
505
|
-
handleFocusReturnElBlur = _useReturnFocusEl.handleFocusReturnElBlur,
|
506
|
-
handleFocus = _useReturnFocusEl.handleFocus,
|
507
|
-
returnElKeyboardFocused = _useReturnFocusEl.keyboardFocused;
|
508
|
-
var _useFocusCatch = useFocusCatch(active, interaction, triggerRef, popperRef),
|
509
|
-
focusCatch = _useFocusCatch.focusCatch,
|
510
|
-
handleFocusReturnElFocus = _useFocusCatch.handleFocusReturnElFocus,
|
511
|
-
handleFocusCatchFocus = _useFocusCatch.handleFocusCatchFocus,
|
512
|
-
handleFocusCatchBlur = _useFocusCatch.handleFocusCatchBlur,
|
513
|
-
handleFocusCatchRef = _useFocusCatch.handleFocusCatchRef,
|
514
|
-
focusCatchKeyboardFocused = _useFocusCatch.keyboardFocused;
|
515
|
-
var enforceKeyboardFocused = returnElKeyboardFocused || focusCatchKeyboardFocused;
|
516
417
|
_react["default"].useEffect(function () {
|
517
418
|
if (highlighted === true) {
|
518
419
|
onKeyboardFocus({
|
@@ -520,35 +421,34 @@ function Trigger(props) {
|
|
520
421
|
});
|
521
422
|
}
|
522
423
|
}, [highlighted]);
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
424
|
+
var focusSourceRef = (0, _keyboardFocusEnhance.useFocusSource)();
|
425
|
+
var handleFocus = _react["default"].useCallback(function () {
|
426
|
+
if (focusSourceRef.current !== 'keyboard') return;
|
427
|
+
onKeyboardFocus === null || onKeyboardFocus === void 0 ? void 0 : onKeyboardFocus();
|
428
|
+
}, [onKeyboardFocus]);
|
429
|
+
var activeRef = _react["default"].useRef(active);
|
430
|
+
activeRef.current = active;
|
431
|
+
_react["default"].useEffect(function () {
|
432
|
+
if (!active) return;
|
433
|
+
if (!popperRef.current) return;
|
434
|
+
return function () {
|
435
|
+
setTimeout(function () {
|
436
|
+
if (activeRef.current) return;
|
437
|
+
if (!(0, _useFocusLock.isFocusInside)(popperRef.current) && document.activeElement !== document.body) return;
|
438
|
+
(0, _useFocusLock.setFocus)(triggerRef.current);
|
439
|
+
}, 1);
|
440
|
+
};
|
441
|
+
}, [active]);
|
442
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(STrigger, (0, _core.assignProps)({
|
532
443
|
"inline": true,
|
533
444
|
"role": 'button',
|
534
445
|
"aria-haspopup": true,
|
446
|
+
"ref": triggerRef,
|
535
447
|
"onFocus": handleFocus,
|
536
|
-
"
|
537
|
-
}, _ref), /*#__PURE__*/_react["default"].createElement(Children, null))
|
448
|
+
"onBlur": props.onBlur
|
449
|
+
}, _ref), /*#__PURE__*/_react["default"].createElement(Children, null)), focusHint && false && /*#__PURE__*/_react["default"].createElement(SFocusHint, {
|
538
450
|
"aria-live": "polite"
|
539
|
-
}, /*#__PURE__*/_react["default"].createElement(_ScreenReaderOnly.ScreenReaderOnly, null, focusHint))
|
540
|
-
tabIndex: "0",
|
541
|
-
ref: focusableTriggerReturnFocusToRef,
|
542
|
-
onBlur: handleFocusReturnElBlur,
|
543
|
-
onFocus: handleFocusReturnElFocus,
|
544
|
-
style: focusCatcherStyles
|
545
|
-
}), focusCatch && /*#__PURE__*/_react["default"].createElement("div", {
|
546
|
-
tabIndex: "0",
|
547
|
-
ref: handleFocusCatchRef,
|
548
|
-
onFocus: handleFocusCatchFocus,
|
549
|
-
onBlur: handleFocusCatchBlur,
|
550
|
-
style: focusCatcherStyles
|
551
|
-
}));
|
451
|
+
}, /*#__PURE__*/_react["default"].createElement(_ScreenReaderOnly.ScreenReaderOnly, null, focusHint)));
|
552
452
|
}
|
553
453
|
function PopperPopper(props) {
|
554
454
|
var _ref2 = arguments[0],
|
@@ -561,22 +461,21 @@ function PopperPopper(props) {
|
|
561
461
|
ignorePortalsStacking = props.ignorePortalsStacking,
|
562
462
|
disableEnforceFocus = props.disableEnforceFocus,
|
563
463
|
triggerRef = props.triggerRef,
|
564
|
-
interaction = props.interaction,
|
565
464
|
autoFocus = props.autoFocus,
|
566
465
|
controlsLength = props.controlsLength,
|
567
466
|
duration = props.duration,
|
568
467
|
animationsDisabled = props.animationsDisabled,
|
569
468
|
popper = props.popper,
|
570
|
-
focusableTriggerReturnFocusToRef = props.focusableTriggerReturnFocusToRef,
|
571
469
|
_props$focusMaster = props.focusMaster,
|
572
|
-
focusMaster = _props$focusMaster === void 0 ? false : _props$focusMaster
|
470
|
+
focusMaster = _props$focusMaster === void 0 ? false : _props$focusMaster,
|
471
|
+
handleFocusOut = props.handleFocusOut;
|
573
472
|
var ref = _react["default"].useRef(null);
|
574
473
|
|
575
474
|
// https://github.com/facebook/react/issues/11387
|
576
475
|
var stopPropagation = _react["default"].useCallback(function (event) {
|
577
476
|
return event.stopPropagation();
|
578
477
|
}, []);
|
579
|
-
(0, _useFocusLock.useFocusLock)(ref, autoFocus,
|
478
|
+
(0, _useFocusLock.useFocusLock)(ref, autoFocus, triggerRef, !visible || disableEnforceFocus, focusMaster, handleFocusOut);
|
580
479
|
(0, _ThemeProvider.useContextTheme)(ref, visible);
|
581
480
|
var updatePopperEveryFrame = useUpdatePopperEveryFrame(popper);
|
582
481
|
var handleAnimationStart = _react["default"].useCallback(function (duration) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Popper.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_canUseDOM","_flexBox","_outsideClick","_portal","_neighborLocation","_ref5","_useFocusLock","_assignProps3","_pick","_logger","_uniqueID","_animation","_useCssVariable","_ThemeProvider","_ScreenReaderOnly","_keyboardFocusEnhance","_createPopper2","_excluded","_excluded2","_excluded3","_excluded4","style","sstyled","insert","isObject","obj","_typeof2","Array","isArray","someArray","arr1","arr2","filter","i","indexOf","useUpdatePopperEveryFrame","popperRef","nextAnimationFrameRef","React","useRef","handleAnimationFrame","useCallback","until","_popperRef$current","Date","now","current","update","requestAnimationFrame","useEffect","cancelAnimationFrame","MODIFIERS_OPTIONS","Popper","_Component","_inherits2","_super","_createSuper2","props","_this","_classCallCheck2","call","_defineProperty2","_assertThisInitialized2","click","trigger","popper","hover","focus","none","createRef","ref","triggerRef","setRef","createPopper","_this$asProps","asProps","placement","modifiers","strategy","onFirstUpdate","other","_objectWithoutProperties2","optionsModifiers","pick","modifiersFallback","offset","modifiersOptions","name","undefined","map","options","push","gpuAcceleration","modifiersMerge","concat","_toConsumableArray2","callAllEventHandlers","_this$observer","_this$observer2","observer","observe","e","visible","key","stopPropagation","bindHandlerChangeVisibleWithTimer","onKeyDown","handlerKeyDown","component","currentTarget","handlerChangeVisibleWithTimer","clearTimeout","timerMultiTrigger","setTimeout","state","elements","reference","setOptions","cb","_this$asProps2","timeout","disabled","handlers","timeoutConfig","latency","timer","canUseDOM","ResizeObserver","_this$popper$current","_createClass2","value","uncontrolledProps","__disablePopper","getPopperOptions","componentDidUpdate","prevProps","_this2","popperProps","some","propName","destroyPopper","_this$observer3","disconnect","destroy","handlersFromInteraction","interaction","_this3","eventInteraction","eventsInteractionMap","_eventInteraction$com","_slicedToArray2","_eventInteraction$com2","showEvents","_eventInteraction$com3","hideEvents","crossEvents","forEach","action","getTriggerProps","_this$asProps3","disableEnforceFocus","_this$handlersFromInt","interactionProps","_objectSpread2","createTriggerRef","active","bindHandlerKeyDown","focusableTriggerReturnFocusToRef","getPopperProps","_this$asProps4","disablePortal","duration","animationsDisabled","_this$handlersFromInt2","createPopperRef","setContext","setTrigger","setPopper","componentWillUnmount","render","_this$asProps5","Children","root","onOutsideClick","excludeRefs","createElement","Fragment","Component","defaultVisible","arrow","padding","uniqueIDEnhancement","cssVariableEnhance","variable","fallback","Number","parseInt","prop","getElementNestingIndexes","element","chain","arguments","length","Set","document","body","parentElement","index","from","children","has","add","useReturnFocusEl","onKeyboardFocus","disable","_React$useState","useState","_React$useState2","keyboardFocused","setKeyboardFocused","_React$useState3","_React$useState4","returnFocusEl","setReturnFocusEl","focusSourceRef","useFocusSource","handleFocus","event","relatedTarget","focusToNesting","target","focusFromNesting","nestingLength","Math","max","handleFocusReturnElFocus","handleFocusReturnElBlur","useFocusCatch","activeRef","_React$useState5","_React$useState6","_React$useState7","_React$useState8","focusCatch","setFocusCatch","handleFocusCatchFocus","handleFocusCatchBlur","handleFocusCatchRef","node","isFocusInside","activeElement","_triggerRef$current","focusCatcherStyles","position","Trigger","_ref","arguments[0]","STrigger","Box","SFocusHint","focusHint","highlighted","_useReturnFocusEl","returnElKeyboardFocused","_useFocusCatch","focusCatchKeyboardFocused","enforceKeyboardFocused","tabIndex","onBlur","onFocus","enforcedKeyboardFocusEnhanceContext","Provider","assignProps","ScreenReaderOnly","PopperPopper","_ref2","_ref3","SPopper","Scale","styles","ignorePortalsStacking","autoFocus","controlsLength","_props$focusMaster","focusMaster","useFocusLock","useContextTheme","updatePopperEveryFrame","handleAnimationStart","min","handleAnimationEnd","_popper$current","animationCtx","useContext","animationContext","unsubscribeAnimationStart","onAnimationStart","unsubscribeAnimationEnd","onAnimationEnd","cn","PortalProvider","enhance","keyboardFocusEnhance","_default","createComponent","exports"],"sources":["../../src/Popper.jsx"],"sourcesContent":["import React from 'react';\n\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport OutsideClick from '@semcore/outside-click';\nimport Portal, { PortalProvider } from '@semcore/portal';\nimport NeighborLocation from '@semcore/neighbor-location';\nimport { setRef } from '@semcore/utils/lib/ref';\nimport { useFocusLock, isFocusInside } from '@semcore/utils/lib/use/useFocusLock';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport pick from '@semcore/utils/lib/pick';\nimport logger from '@semcore/utils/lib/logger';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { Scale, animationContext } from '@semcore/animation';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\nimport { useContextTheme } from '@semcore/utils/lib/ThemeProvider';\nimport { ScreenReaderOnly } from '@semcore/utils/lib/ScreenReaderOnly';\nimport keyboardFocusEnhance, {\n useFocusSource,\n enforcedKeyboardFocusEnhanceContext,\n} from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nimport createPopper from './createPopper';\n\nimport style from './style/popper.shadow.css';\n\nfunction isObject(obj) {\n return typeof obj === 'object' && !Array.isArray(obj);\n}\n\nfunction someArray(arr1, arr2) {\n return arr1.filter(function (i) {\n return arr2.indexOf(i) !== -1;\n });\n}\n\nconst useUpdatePopperEveryFrame = (popperRef) => {\n const nextAnimationFrameRef = React.useRef(-1);\n const handleAnimationFrame = React.useCallback((until) => {\n if (until < Date.now()) return;\n popperRef.current?.update();\n nextAnimationFrameRef.current = requestAnimationFrame(() => handleAnimationFrame(until));\n }, []);\n React.useEffect(() => () => cancelAnimationFrame(nextAnimationFrameRef.current), []);\n return handleAnimationFrame;\n};\n\nconst MODIFIERS_OPTIONS = [\n 'offset',\n 'preventOverflow',\n 'arrow',\n 'flip',\n 'computeStyles',\n 'eventListeners',\n];\n\nclass Popper extends Component {\n static displayName = 'Popper';\n\n static style = style;\n\n static defaultProps = {\n defaultVisible: false,\n placement: 'auto',\n modifiers: [],\n arrow: {\n padding: 6,\n },\n strategy: 'absolute',\n interaction: 'click',\n timeout: 0,\n excludeRefs: [],\n };\n\n static enhance = [\n uniqueIDEnhancement(),\n cssVariableEnhance({\n variable: '--intergalactic-duration-popper',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n\n eventsInteractionMap = {\n click: {\n trigger: [['onClick'], ['onClick']],\n popper: [],\n },\n hover: {\n trigger: [\n ['onMouseEnter', 'onKeyboardFocus'],\n ['onMouseLeave', 'onBlur'],\n ],\n popper: [['onMouseEnter', 'onFocusCapture'], ['onMouseLeave']],\n },\n focus: {\n trigger: [['onFocus'], ['onBlur']],\n // to intercept faster than onBlur on the trigger\n popper: [['onFocusCapture'], ['onBlur']],\n },\n none: {\n trigger: [],\n popper: [],\n },\n };\n\n // timer: ReturnType<typeof setTimeout>;\n // observer: ResizeObserver;\n triggerRef = React.createRef();\n focusableTriggerReturnFocusToRef = React.createRef();\n popperRef = React.createRef();\n popper = React.createRef();\n\n constructor(props) {\n super(props);\n if (canUseDOM()) {\n this.observer = new ResizeObserver(() => {\n requestAnimationFrame(() => {\n this.popper.current?.update();\n });\n });\n }\n }\n\n uncontrolledProps() {\n return {\n visible: null,\n };\n }\n\n createTriggerRef = (ref) => {\n if (ref && this.triggerRef.current !== ref) {\n setRef(this.triggerRef, ref);\n this.createPopper();\n }\n };\n\n createPopperRef = (ref) => {\n if (ref && this.popperRef.current !== ref) {\n setRef(this.popperRef, ref);\n this.createPopper();\n }\n };\n\n getPopperOptions = () => {\n const { placement, modifiers, strategy, onFirstUpdate, ...other } = this.asProps;\n const optionsModifiers = pick(other, MODIFIERS_OPTIONS);\n const modifiersFallback = [];\n\n if (typeof optionsModifiers.offset === 'number') {\n optionsModifiers.offset = [0, optionsModifiers.offset];\n }\n const modifiersOptions = MODIFIERS_OPTIONS.filter(\n (name) => optionsModifiers[name] !== undefined,\n ).map((name) => ({\n name,\n options: isObject(optionsModifiers[name])\n ? optionsModifiers[name]\n : { [name]: optionsModifiers[name] },\n }));\n\n modifiersOptions.push({\n name: 'computeStyles',\n options: { gpuAcceleration: false },\n });\n\n const modifiersMerge = [...modifiersFallback, ...modifiersOptions].concat(modifiers);\n\n return {\n placement,\n strategy,\n onFirstUpdate: callAllEventHandlers(onFirstUpdate, () => {\n this.observer?.observe(this.triggerRef.current);\n this.observer?.observe(this.popperRef.current);\n }),\n modifiers: modifiersMerge,\n };\n };\n\n createPopper() {\n if (!this.triggerRef.current || !this.popperRef.current) return;\n if (this.asProps.__disablePopper) return;\n\n this.popper.current = createPopper(\n this.triggerRef.current,\n this.popperRef.current,\n this.getPopperOptions(),\n );\n }\n\n componentDidUpdate(prevProps) {\n const popperProps = [\n 'strategy',\n 'placement',\n 'offset',\n 'preventOverflow',\n 'arrow',\n 'flip',\n 'computeStyles',\n 'eventListeners',\n 'onFirstUpdate',\n ];\n if (\n this.popper.current &&\n popperProps.some((propName) => prevProps[propName] !== this.asProps[propName])\n ) {\n this.popper.current.setOptions(this.getPopperOptions());\n }\n }\n\n destroyPopper() {\n clearTimeout(this.timer);\n clearTimeout(this.timerMultiTrigger);\n\n this.observer?.disconnect();\n\n if (this.popper.current) {\n this.popper.current.destroy();\n this.popper.current = null;\n }\n }\n\n handlersFromInteraction(interaction, component, visible) {\n const eventInteraction =\n typeof interaction === 'string' ? this.eventsInteractionMap[interaction] : interaction;\n\n const [showEvents = [], hideEvents = []] = eventInteraction[component];\n const crossEvents = someArray(showEvents, hideEvents);\n const handlers = {};\n\n showEvents.forEach((action) => {\n handlers[action] = this.bindHandlerChangeVisibleWithTimer(true, component);\n });\n hideEvents.forEach((action) => {\n handlers[action] = this.bindHandlerChangeVisibleWithTimer(false, component);\n });\n crossEvents.forEach((action) => {\n handlers[action] = visible\n ? this.bindHandlerChangeVisibleWithTimer(false, component)\n : this.bindHandlerChangeVisibleWithTimer(true, component);\n });\n return handlers;\n }\n\n handlerKeyDown = (e) => {\n const { visible } = this.asProps;\n if (visible && e.key === 'Escape') {\n e.stopPropagation();\n\n this.bindHandlerChangeVisibleWithTimer(false)(e);\n }\n };\n bindHandlerKeyDown = (onKeyDown) => callAllEventHandlers(onKeyDown, this.handlerKeyDown);\n\n bindHandlerChangeVisibleWithTimer = (visible, component) => (e) => {\n const currentTarget = e?.currentTarget;\n this.handlerChangeVisibleWithTimer(visible, e, () => {\n clearTimeout(this.timerMultiTrigger);\n // instance popper is not here yet because the popperRef did not have time to come\n this.timerMultiTrigger = setTimeout(() => {\n if (visible && component === 'trigger' && this.popper.current && currentTarget) {\n if (this.popper.current.state.elements.reference !== currentTarget) {\n this.popper.current.state.elements.reference = currentTarget;\n // for update\n this.popper.current.setOptions({});\n }\n }\n }, 0);\n });\n };\n\n handlerChangeVisibleWithTimer = (visible, e, cb) => {\n const { timeout, disabled } = this.asProps;\n if (typeof disabled === 'boolean' && disabled && visible) return;\n const handlers = this.handlers;\n\n const timeoutConfig = typeof timeout === 'number' ? [timeout, timeout] : timeout;\n const latency = visible ? timeoutConfig[0] : timeoutConfig[1];\n clearTimeout(this.timer);\n this.timer = setTimeout(() => {\n handlers.visible(visible, e);\n cb();\n }, latency);\n };\n\n getTriggerProps() {\n const { visible, interaction, disableEnforceFocus } = this.asProps;\n // @ts-ignore\n const { onKeyDown, ...interactionProps } = this.handlersFromInteraction(\n interaction,\n 'trigger',\n visible,\n );\n return {\n ref: this.createTriggerRef,\n active: visible,\n interaction,\n ...interactionProps,\n onKeyDown: this.bindHandlerKeyDown(onKeyDown),\n focusableTriggerReturnFocusToRef: this.focusableTriggerReturnFocusToRef,\n disableEnforceFocus,\n popperRef: this.popperRef,\n };\n }\n\n getPopperProps() {\n const {\n visible,\n disablePortal,\n interaction,\n placement,\n duration,\n animationsDisabled,\n disableEnforceFocus,\n ...other\n } = this.asProps;\n // @ts-ignore\n const { onKeyDown, ...interactionProps } = this.handlersFromInteraction(\n interaction,\n 'popper',\n visible,\n );\n\n return {\n ref: this.createPopperRef,\n triggerRef: this.triggerRef,\n visible,\n interaction,\n disablePortal,\n ...interactionProps,\n onKeyDown: this.bindHandlerKeyDown(onKeyDown),\n placement,\n duration,\n animationsDisabled,\n popper: this.popper,\n focusableTriggerReturnFocusToRef: this.focusableTriggerReturnFocusToRef,\n disableEnforceFocus,\n };\n }\n\n setContext() {\n return {\n popper: this.popper,\n setTrigger: this.createTriggerRef,\n setPopper: this.createPopperRef,\n };\n }\n\n componentWillUnmount() {\n this.destroyPopper();\n }\n\n render() {\n const { Children, visible, root, onOutsideClick, excludeRefs } = this.asProps;\n return (\n <>\n {visible ? (\n <OutsideClick\n root={root}\n excludeRefs={[this.triggerRef, this.popperRef, ...excludeRefs]}\n onOutsideClick={callAllEventHandlers(\n onOutsideClick,\n this.bindHandlerChangeVisibleWithTimer(false),\n )}\n />\n ) : null}\n <Children />\n </>\n );\n }\n}\n\nconst getElementNestingIndexes = (element, chain = new Set([element, document.body])) => {\n if (!element?.parentElement) return [];\n const index = Array.from(element.parentElement.children).indexOf(element);\n if (chain.has(element.parentElement)) return [index];\n chain.add(element.parentElement);\n return [...getElementNestingIndexes(element.parentElement, chain), index];\n};\n\nconst useReturnFocusEl = (interaction, onKeyboardFocus, disable) => {\n const [keyboardFocused, setKeyboardFocused] = React.useState(false);\n const [returnFocusEl, setReturnFocusEl] = React.useState(null);\n const focusSourceRef = useFocusSource();\n const handleFocus = React.useCallback(\n (event) => {\n if (focusSourceRef.current !== 'keyboard') return;\n onKeyboardFocus?.();\n if (disable) return;\n if (interaction !== 'focus') return;\n if (!event.relatedTarget) {\n setReturnFocusEl('after');\n }\n const focusToNesting = getElementNestingIndexes(event.target);\n const focusFromNesting = getElementNestingIndexes(event.relatedTarget);\n const nestingLength = Math.max(focusToNesting.length, focusFromNesting.length);\n for (let i = 0; i < nestingLength; i++) {\n if (focusFromNesting[i] === undefined) {\n setReturnFocusEl('after'); // <div tabIndex=\"0\" id=\"focus1\" /> <input id=\"focus2\" /> </div>\n return;\n }\n if (focusFromNesting[i] > focusToNesting[i]) {\n setReturnFocusEl('before'); // <input id=\"focus2\" /> <input id=\"focus1\" />\n return;\n }\n }\n\n setReturnFocusEl('after'); // <input id=\"focus1\" /> <input id=\"focus2\" />\n },\n [interaction, onKeyboardFocus, disable],\n );\n const handleFocusReturnElFocus = React.useCallback(() => {\n if (focusSourceRef.current !== 'keyboard') return;\n setKeyboardFocused(true);\n }, []);\n const handleFocusReturnElBlur = React.useCallback(() => {\n setTimeout(() => setReturnFocusEl(null), 0);\n setKeyboardFocused(false);\n }, []);\n\n return {\n returnFocusEl,\n handleFocus,\n handleFocusReturnElFocus,\n handleFocusReturnElBlur,\n keyboardFocused,\n };\n};\nconst useFocusCatch = (active, interaction, triggerRef, popperRef) => {\n const activeRef = React.useRef(active);\n activeRef.current = active;\n\n const [keyboardFocused, setKeyboardFocused] = React.useState(false);\n const [focusCatch, setFocusCatch] = React.useState(false);\n const focusSourceRef = useFocusSource();\n const handleFocusCatchFocus = React.useCallback(() => {\n if (focusSourceRef.current !== 'keyboard') return;\n setKeyboardFocused(true);\n }, []);\n const handleFocusCatchBlur = React.useCallback(() => {\n setFocusCatch(false);\n setKeyboardFocused(false);\n }, []);\n const handleFocusCatchRef = React.useCallback((node) => {\n if (activeRef.current) return setFocusCatch(false);\n if (!isFocusInside(popperRef.current) && document.activeElement !== document.body)\n return setFocusCatch(false);\n node?.focus();\n }, []);\n\n React.useEffect(() => {\n if (!active) return;\n if (!popperRef.current) return;\n return () => {\n setTimeout(() => {\n if (activeRef.current) return;\n if (!isFocusInside(popperRef.current) && document.activeElement !== document.body) return;\n\n if (interaction === 'hover' || interaction === 'focus') {\n setFocusCatch(true);\n } else {\n triggerRef.current?.focus();\n }\n }, 1);\n };\n }, [active, interaction]);\n\n return {\n focusCatch,\n handleFocusCatchFocus,\n handleFocusCatchBlur,\n handleFocusCatchRef,\n keyboardFocused,\n };\n};\n\nconst focusCatcherStyles = { position: 'fixed' };\nfunction Trigger(props) {\n const STrigger = Root;\n const SFocusHint = 'span';\n const {\n Children,\n interaction,\n focusableTriggerReturnFocusToRef,\n focusHint,\n onKeyboardFocus,\n disableEnforceFocus,\n active,\n popperRef,\n highlighted,\n } = props;\n\n const triggerRef = React.useRef();\n\n const {\n returnFocusEl,\n handleFocusReturnElBlur,\n handleFocus,\n keyboardFocused: returnElKeyboardFocused,\n } = useReturnFocusEl(interaction, onKeyboardFocus, disableEnforceFocus);\n const {\n focusCatch,\n handleFocusReturnElFocus,\n handleFocusCatchFocus,\n handleFocusCatchBlur,\n handleFocusCatchRef,\n keyboardFocused: focusCatchKeyboardFocused,\n } = useFocusCatch(active, interaction, triggerRef, popperRef);\n\n const enforceKeyboardFocused = returnElKeyboardFocused || focusCatchKeyboardFocused;\n\n React.useEffect(() => {\n if (highlighted === true) {\n onKeyboardFocus({ currentTarget: triggerRef.current });\n }\n }, [highlighted]);\n\n return (\n <>\n {returnFocusEl === 'before' && (\n <div\n tabIndex='0'\n ref={focusableTriggerReturnFocusToRef}\n onBlur={handleFocusReturnElBlur}\n onFocus={handleFocusReturnElFocus}\n style={focusCatcherStyles}\n />\n )}\n <enforcedKeyboardFocusEnhanceContext.Provider value={enforceKeyboardFocused}>\n <STrigger\n render={Box}\n inline\n role='button'\n aria-haspopup={true}\n onFocus={handleFocus}\n ref={triggerRef}\n >\n <Children />\n </STrigger>\n </enforcedKeyboardFocusEnhanceContext.Provider>\n {focusHint && false && (\n <SFocusHint aria-live='polite'>\n <ScreenReaderOnly>{focusHint}</ScreenReaderOnly>\n </SFocusHint>\n )}\n {returnFocusEl === 'after' && (\n <div\n tabIndex='0'\n ref={focusableTriggerReturnFocusToRef}\n onBlur={handleFocusReturnElBlur}\n onFocus={handleFocusReturnElFocus}\n style={focusCatcherStyles}\n />\n )}\n {focusCatch && (\n <div\n tabIndex='0'\n ref={handleFocusCatchRef}\n onFocus={handleFocusCatchFocus}\n onBlur={handleFocusCatchBlur}\n style={focusCatcherStyles}\n />\n )}\n </>\n );\n}\n\nfunction PopperPopper(props) {\n const SPopper = Root;\n const {\n Children,\n styles,\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n triggerRef,\n interaction,\n autoFocus,\n controlsLength,\n duration,\n animationsDisabled,\n popper,\n focusableTriggerReturnFocusToRef,\n focusMaster = false,\n } = props;\n const ref = React.useRef(null);\n\n // https://github.com/facebook/react/issues/11387\n const stopPropagation = React.useCallback((event) => event.stopPropagation(), []);\n\n useFocusLock(\n ref,\n autoFocus,\n interaction === 'focus' || interaction === 'hover'\n ? focusableTriggerReturnFocusToRef\n : triggerRef,\n !visible || disableEnforceFocus,\n focusMaster,\n );\n\n useContextTheme(ref, visible);\n\n const updatePopperEveryFrame = useUpdatePopperEveryFrame(popper);\n const handleAnimationStart = React.useCallback(\n (duration) => {\n if (duration > 0) {\n updatePopperEveryFrame(Date.now() + Math.min(duration, 2000));\n }\n },\n [updatePopperEveryFrame],\n );\n const handleAnimationEnd = React.useCallback(() => {\n popper.current?.update();\n }, []);\n const animationCtx = React.useContext(animationContext);\n React.useEffect(() => {\n if (!ignorePortalsStacking) return;\n if (!animationCtx) return;\n const unsubscribeAnimationStart = animationCtx.onAnimationStart(handleAnimationStart);\n const unsubscribeAnimationEnd = animationCtx.onAnimationEnd(handleAnimationEnd);\n return () => {\n unsubscribeAnimationStart();\n unsubscribeAnimationEnd();\n };\n }, [animationCtx, ignorePortalsStacking]);\n\n return sstyled(styles)(\n <Portal disablePortal={disablePortal} ignorePortalsStacking={ignorePortalsStacking}>\n <NeighborLocation controlsLength={controlsLength}>\n <SPopper\n render={Scale}\n animationsDisabled={animationsDisabled}\n visible={visible}\n duration={[duration, duration / 2]}\n ref={ref}\n onClick={stopPropagation}\n onContextMenu={stopPropagation}\n onDoubleClick={stopPropagation}\n onDrag={stopPropagation}\n onDragEnd={stopPropagation}\n onDragEnter={stopPropagation}\n onDragExit={stopPropagation}\n onDragLeave={stopPropagation}\n onDragOver={stopPropagation}\n onDragStart={stopPropagation}\n onDrop={stopPropagation}\n onMouseDown={stopPropagation}\n onMouseMove={stopPropagation}\n onMouseOver={stopPropagation}\n onMouseOut={stopPropagation}\n onMouseUp={stopPropagation}\n onKeyDown={stopPropagation}\n onKeyPress={stopPropagation}\n onKeyUp={stopPropagation}\n onFocus={stopPropagation}\n onBlur={stopPropagation}\n onChange={stopPropagation}\n onInput={stopPropagation}\n onInvalid={stopPropagation}\n onReset={stopPropagation}\n onSubmit={stopPropagation}\n >\n <PortalProvider value={ref}>\n <Children />\n </PortalProvider>\n </SPopper>\n </NeighborLocation>\n </Portal>,\n );\n}\n\nPopperPopper.enhance = [keyboardFocusEnhance()];\n\nexport default createComponent(Popper, {\n Trigger,\n Popper: PopperPopper,\n});\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Popper.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_canUseDOM","_flexBox","_outsideClick","_portal","_neighborLocation","_ref5","_useFocusLock","_assignProps3","_pick","_uniqueID","_animation","_useCssVariable","_ThemeProvider","_ScreenReaderOnly","_keyboardFocusEnhance","_hasParent","_createPopper2","_excluded","_excluded2","_excluded3","style","sstyled","insert","isObject","obj","_typeof2","Array","isArray","someArray","arr1","arr2","filter","i","indexOf","useUpdatePopperEveryFrame","popperRef","nextAnimationFrameRef","React","useRef","handleAnimationFrame","useCallback","until","_popperRef$current","Date","now","current","update","requestAnimationFrame","useEffect","cancelAnimationFrame","MODIFIERS_OPTIONS","Popper","_Component","_inherits2","_super","_createSuper2","props","_this","_classCallCheck2","call","_defineProperty2","_assertThisInitialized2","click","trigger","popper","hover","focus","none","createRef","ignoreTriggerFocusUntil","ref","triggerRef","setRef","createPopper","_this$asProps","asProps","placement","modifiers","strategy","onFirstUpdate","other","_objectWithoutProperties2","optionsModifiers","pick","modifiersFallback","offset","modifiersOptions","name","undefined","map","options","push","gpuAcceleration","modifiersMerge","concat","_toConsumableArray2","callAllEventHandlers","_this$observer","_this$observer2","observer","observe","e","visible","key","stopPropagation","bindHandlerChangeVisibleWithTimer","onKeyDown","handlerKeyDown","component","action","focusAction","includes","state","currentTarget","handlerChangeVisibleWithTimer","clearTimeout","timerMultiTrigger","setTimeout","elements","reference","setOptions","ignoringDuration","setState","cb","_this$asProps2","timeout","disabled","handlers","timeoutConfig","latency","timer","event","focusLoop","hasParent","target","canUseDOM","ResizeObserver","_this$popper$current","_createClass2","value","uncontrolledProps","__disablePopper","getPopperOptions","componentDidUpdate","prevProps","_this2","popperProps","some","propName","destroyPopper","_this$observer3","disconnect","destroy","handlersFromInteraction","interaction","_this3","eventInteraction","eventsInteractionMap","_eventInteraction$com","_slicedToArray2","_eventInteraction$com2","showEvents","_eventInteraction$com3","hideEvents","crossEvents","forEach","getTriggerProps","_this$asProps3","disableEnforceFocus","_this$handlersFromInt","interactionProps","_objectSpread2","createTriggerRef","active","bindHandlerKeyDown","onBlur","handleTriggerBlur","getPopperProps","_this$asProps4","disablePortal","duration","animationsDisabled","_this$handlersFromInt2","createPopperRef","handleFocusOut","handlePopperFocusOut","setContext","setTrigger","setPopper","componentWillUnmount","render","_this$asProps5","Children","root","onOutsideClick","excludeRefs","createElement","Fragment","Component","defaultVisible","arrow","padding","uniqueIDEnhancement","cssVariableEnhance","variable","fallback","Number","parseInt","prop","Trigger","_ref","arguments[0]","STrigger","Box","SFocusHint","focusHint","onKeyboardFocus","highlighted","focusSourceRef","useFocusSource","handleFocus","activeRef","isFocusInside","document","activeElement","body","setFocus","assignProps","ScreenReaderOnly","PopperPopper","_ref2","_ref3","SPopper","Scale","styles","ignorePortalsStacking","autoFocus","controlsLength","_props$focusMaster","focusMaster","useFocusLock","useContextTheme","updatePopperEveryFrame","handleAnimationStart","Math","min","handleAnimationEnd","_popper$current","animationCtx","useContext","animationContext","unsubscribeAnimationStart","onAnimationStart","unsubscribeAnimationEnd","onAnimationEnd","cn","PortalProvider","enhance","keyboardFocusEnhance","_default","createComponent","exports"],"sources":["../../src/Popper.jsx"],"sourcesContent":["import React from 'react';\n\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport OutsideClick from '@semcore/outside-click';\nimport Portal, { PortalProvider } from '@semcore/portal';\nimport NeighborLocation from '@semcore/neighbor-location';\nimport { setRef } from '@semcore/utils/lib/ref';\nimport { useFocusLock, isFocusInside, setFocus } from '@semcore/utils/lib/use/useFocusLock';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport pick from '@semcore/utils/lib/pick';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { Scale, animationContext } from '@semcore/animation';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\nimport { useContextTheme } from '@semcore/utils/lib/ThemeProvider';\nimport { ScreenReaderOnly } from '@semcore/utils/lib/ScreenReaderOnly';\nimport keyboardFocusEnhance, {\n useFocusSource,\n} from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { hasParent } from '@semcore/utils/lib/hasParent';\n\nimport createPopper from './createPopper';\n\nimport style from './style/popper.shadow.css';\n\nfunction isObject(obj) {\n return typeof obj === 'object' && !Array.isArray(obj);\n}\n\nfunction someArray(arr1, arr2) {\n return arr1.filter(function (i) {\n return arr2.indexOf(i) !== -1;\n });\n}\n\nconst useUpdatePopperEveryFrame = (popperRef) => {\n const nextAnimationFrameRef = React.useRef(-1);\n const handleAnimationFrame = React.useCallback((until) => {\n if (until < Date.now()) return;\n popperRef.current?.update();\n nextAnimationFrameRef.current = requestAnimationFrame(() => handleAnimationFrame(until));\n }, []);\n React.useEffect(() => () => cancelAnimationFrame(nextAnimationFrameRef.current), []);\n return handleAnimationFrame;\n};\n\nconst MODIFIERS_OPTIONS = [\n 'offset',\n 'preventOverflow',\n 'arrow',\n 'flip',\n 'computeStyles',\n 'eventListeners',\n];\n\nclass Popper extends Component {\n static displayName = 'Popper';\n\n static style = style;\n\n static defaultProps = {\n defaultVisible: false,\n placement: 'auto',\n modifiers: [],\n arrow: {\n padding: 6,\n },\n strategy: 'absolute',\n interaction: 'click',\n timeout: 0,\n excludeRefs: [],\n focusLoop: true,\n };\n\n static enhance = [\n uniqueIDEnhancement(),\n cssVariableEnhance({\n variable: '--intergalactic-duration-popper',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n\n eventsInteractionMap = {\n click: {\n trigger: [['onClick'], ['onClick']],\n popper: [],\n },\n hover: {\n trigger: [\n ['onMouseEnter', 'onKeyboardFocus'],\n ['onMouseLeave', 'onBlur'],\n ],\n popper: [['onMouseEnter', 'onFocusCapture'], ['onMouseLeave']],\n },\n focus: {\n trigger: [['onFocus'], ['onBlur']],\n // to intercept faster than onBlur on the trigger\n popper: [['onFocusCapture'], ['onBlur']],\n },\n none: {\n trigger: [],\n popper: [],\n },\n };\n\n // timer: ReturnType<typeof setTimeout>;\n // observer: ResizeObserver;\n triggerRef = React.createRef();\n popperRef = React.createRef();\n popper = React.createRef();\n\n constructor(props) {\n super(props);\n if (canUseDOM()) {\n this.observer = new ResizeObserver(() => {\n requestAnimationFrame(() => {\n this.popper.current?.update();\n });\n });\n }\n }\n\n uncontrolledProps() {\n return {\n visible: null,\n };\n }\n\n state = { ignoreTriggerFocusUntil: 0 };\n\n createTriggerRef = (ref) => {\n if (ref && this.triggerRef.current !== ref) {\n setRef(this.triggerRef, ref);\n this.createPopper();\n }\n };\n\n createPopperRef = (ref) => {\n if (ref && this.popperRef.current !== ref) {\n setRef(this.popperRef, ref);\n this.createPopper();\n }\n };\n\n getPopperOptions = () => {\n const { placement, modifiers, strategy, onFirstUpdate, ...other } = this.asProps;\n const optionsModifiers = pick(other, MODIFIERS_OPTIONS);\n const modifiersFallback = [];\n\n if (typeof optionsModifiers.offset === 'number') {\n optionsModifiers.offset = [0, optionsModifiers.offset];\n }\n const modifiersOptions = MODIFIERS_OPTIONS.filter(\n (name) => optionsModifiers[name] !== undefined,\n ).map((name) => ({\n name,\n options: isObject(optionsModifiers[name])\n ? optionsModifiers[name]\n : { [name]: optionsModifiers[name] },\n }));\n\n modifiersOptions.push({\n name: 'computeStyles',\n options: { gpuAcceleration: false },\n });\n\n const modifiersMerge = [...modifiersFallback, ...modifiersOptions].concat(modifiers);\n\n return {\n placement,\n strategy,\n onFirstUpdate: callAllEventHandlers(onFirstUpdate, () => {\n this.observer?.observe(this.triggerRef.current);\n this.observer?.observe(this.popperRef.current);\n }),\n modifiers: modifiersMerge,\n };\n };\n\n createPopper() {\n if (!this.triggerRef.current || !this.popperRef.current) return;\n if (this.asProps.__disablePopper) return;\n\n this.popper.current = createPopper(\n this.triggerRef.current,\n this.popperRef.current,\n this.getPopperOptions(),\n );\n }\n\n componentDidUpdate(prevProps) {\n const popperProps = [\n 'strategy',\n 'placement',\n 'offset',\n 'preventOverflow',\n 'arrow',\n 'flip',\n 'computeStyles',\n 'eventListeners',\n 'onFirstUpdate',\n ];\n if (\n this.popper.current &&\n popperProps.some((propName) => prevProps[propName] !== this.asProps[propName])\n ) {\n this.popper.current.setOptions(this.getPopperOptions());\n }\n }\n\n destroyPopper() {\n clearTimeout(this.timer);\n clearTimeout(this.timerMultiTrigger);\n\n this.observer?.disconnect();\n\n if (this.popper.current) {\n this.popper.current.destroy();\n this.popper.current = null;\n }\n }\n\n handlersFromInteraction(interaction, component, visible) {\n const eventInteraction =\n typeof interaction === 'string' ? this.eventsInteractionMap[interaction] : interaction;\n\n const [showEvents = [], hideEvents = []] = eventInteraction[component];\n const crossEvents = someArray(showEvents, hideEvents);\n const handlers = {};\n\n showEvents.forEach((action) => {\n handlers[action] = this.bindHandlerChangeVisibleWithTimer(true, component, action);\n });\n hideEvents.forEach((action) => {\n handlers[action] = this.bindHandlerChangeVisibleWithTimer(false, component, action);\n });\n crossEvents.forEach((action) => {\n handlers[action] = visible\n ? this.bindHandlerChangeVisibleWithTimer(false, component, action)\n : this.bindHandlerChangeVisibleWithTimer(true, component, action);\n });\n return handlers;\n }\n\n handlerKeyDown = (e) => {\n const { visible } = this.asProps;\n if (visible && e.key === 'Escape') {\n e.stopPropagation();\n\n this.bindHandlerChangeVisibleWithTimer(false)(e);\n }\n };\n bindHandlerKeyDown = (onKeyDown) => callAllEventHandlers(onKeyDown, this.handlerKeyDown);\n\n bindHandlerChangeVisibleWithTimer = (visible, component, action) => (e) => {\n const now = Date.now();\n const focusAction = ['onFocus', 'onKeyboardFocus', 'onFocusCapture'].includes(action);\n if (\n now < this.state.ignoreTriggerFocusUntil &&\n visible &&\n component === 'trigger' &&\n focusAction\n ) {\n return;\n }\n const currentTarget = e?.currentTarget;\n this.handlerChangeVisibleWithTimer(visible, e, () => {\n clearTimeout(this.timerMultiTrigger);\n // instance popper is not here yet because the popperRef did not have time to come\n this.timerMultiTrigger = setTimeout(() => {\n if (visible && component === 'trigger' && this.popper.current && currentTarget) {\n if (this.popper.current.state.elements.reference !== currentTarget) {\n this.popper.current.state.elements.reference = currentTarget;\n // for update\n this.popper.current.setOptions({});\n }\n }\n }, 0);\n });\n const ignoringDuration = 2000;\n if (!visible) {\n this.setState({\n ignoreTriggerFocusUntil: now + ignoringDuration,\n });\n } else if (now < this.state.ignoreTriggerFocusUntil + ignoringDuration) {\n this.setState({\n ignoreTriggerFocusUntil: 0,\n });\n }\n };\n\n handlerChangeVisibleWithTimer = (visible, e, cb) => {\n const { timeout, disabled } = this.asProps;\n if (typeof disabled === 'boolean' && disabled && visible) return;\n const handlers = this.handlers;\n\n const timeoutConfig = typeof timeout === 'number' ? [timeout, timeout] : timeout;\n const latency = visible ? timeoutConfig[0] : timeoutConfig[1];\n clearTimeout(this.timer);\n this.timer = setTimeout(() => {\n handlers.visible(visible, e);\n cb();\n }, latency);\n };\n\n getTriggerProps() {\n const { visible, interaction, disableEnforceFocus } = this.asProps;\n // @ts-ignore\n const { onKeyDown, ...interactionProps } = this.handlersFromInteraction(\n interaction,\n 'trigger',\n visible,\n );\n return {\n ref: this.createTriggerRef,\n active: visible,\n interaction,\n ...interactionProps,\n onKeyDown: this.bindHandlerKeyDown(onKeyDown),\n disableEnforceFocus,\n popperRef: this.popperRef,\n onBlur: callAllEventHandlers(this.handleTriggerBlur, interactionProps.onBlur),\n };\n }\n\n handleTriggerBlur = () => {\n setTimeout(() => {\n this.setState({ ignoreTriggerFocusUntil: 0 });\n }, 0);\n };\n\n getPopperProps() {\n const {\n visible,\n disablePortal,\n interaction,\n placement,\n duration,\n animationsDisabled,\n disableEnforceFocus,\n } = this.asProps;\n // @ts-ignore\n const { onKeyDown, ...interactionProps } = this.handlersFromInteraction(\n interaction,\n 'popper',\n visible,\n );\n\n return {\n ref: this.createPopperRef,\n triggerRef: this.triggerRef,\n visible,\n interaction,\n disablePortal,\n ...interactionProps,\n onKeyDown: this.bindHandlerKeyDown(onKeyDown),\n placement,\n duration,\n animationsDisabled,\n popper: this.popper,\n disableEnforceFocus,\n handleFocusOut: this.handlePopperFocusOut,\n };\n }\n\n handlePopperFocusOut = (event) => {\n if (this.asProps.focusLoop) return;\n if (hasParent(event.target, this.triggerRef.current)) return;\n\n this.bindHandlerChangeVisibleWithTimer(false, 'popper', 'onBlur')(event);\n };\n\n setContext() {\n return {\n popper: this.popper,\n setTrigger: this.createTriggerRef,\n setPopper: this.createPopperRef,\n };\n }\n\n componentWillUnmount() {\n this.destroyPopper();\n }\n\n render() {\n const { Children, visible, root, onOutsideClick, excludeRefs } = this.asProps;\n return (\n <>\n {visible ? (\n <OutsideClick\n root={root}\n excludeRefs={[this.triggerRef, this.popperRef, ...excludeRefs]}\n onOutsideClick={callAllEventHandlers(\n onOutsideClick,\n this.bindHandlerChangeVisibleWithTimer(false),\n )}\n />\n ) : null}\n <Children />\n </>\n );\n }\n}\n\nfunction Trigger(props) {\n const STrigger = Root;\n const SFocusHint = 'span';\n const { Children, focusHint, onKeyboardFocus, highlighted, active, popperRef } = props;\n\n const triggerRef = React.useRef();\n\n React.useEffect(() => {\n if (highlighted === true) {\n onKeyboardFocus({ currentTarget: triggerRef.current });\n }\n }, [highlighted]);\n\n const focusSourceRef = useFocusSource();\n const handleFocus = React.useCallback(() => {\n if (focusSourceRef.current !== 'keyboard') return;\n onKeyboardFocus?.();\n }, [onKeyboardFocus]);\n\n const activeRef = React.useRef(active);\n activeRef.current = active;\n React.useEffect(() => {\n if (!active) return;\n if (!popperRef.current) return;\n return () => {\n setTimeout(() => {\n if (activeRef.current) return;\n if (!isFocusInside(popperRef.current) && document.activeElement !== document.body) return;\n\n setFocus(triggerRef.current);\n }, 1);\n };\n }, [active]);\n\n return (\n <>\n <STrigger\n render={Box}\n inline\n role='button'\n aria-haspopup={true}\n ref={triggerRef}\n onFocus={handleFocus}\n onBlur={props.onBlur}\n >\n <Children />\n </STrigger>\n {focusHint && false && (\n <SFocusHint aria-live='polite'>\n <ScreenReaderOnly>{focusHint}</ScreenReaderOnly>\n </SFocusHint>\n )}\n </>\n );\n}\n\nfunction PopperPopper(props) {\n const SPopper = Root;\n const {\n Children,\n styles,\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n triggerRef,\n autoFocus,\n controlsLength,\n duration,\n animationsDisabled,\n popper,\n focusMaster = false,\n handleFocusOut,\n } = props;\n const ref = React.useRef(null);\n\n // https://github.com/facebook/react/issues/11387\n const stopPropagation = React.useCallback((event) => event.stopPropagation(), []);\n\n useFocusLock(\n ref,\n autoFocus,\n triggerRef,\n !visible || disableEnforceFocus,\n focusMaster,\n handleFocusOut,\n );\n\n useContextTheme(ref, visible);\n\n const updatePopperEveryFrame = useUpdatePopperEveryFrame(popper);\n const handleAnimationStart = React.useCallback(\n (duration) => {\n if (duration > 0) {\n updatePopperEveryFrame(Date.now() + Math.min(duration, 2000));\n }\n },\n [updatePopperEveryFrame],\n );\n const handleAnimationEnd = React.useCallback(() => {\n popper.current?.update();\n }, []);\n const animationCtx = React.useContext(animationContext);\n React.useEffect(() => {\n if (!ignorePortalsStacking) return;\n if (!animationCtx) return;\n const unsubscribeAnimationStart = animationCtx.onAnimationStart(handleAnimationStart);\n const unsubscribeAnimationEnd = animationCtx.onAnimationEnd(handleAnimationEnd);\n return () => {\n unsubscribeAnimationStart();\n unsubscribeAnimationEnd();\n };\n }, [animationCtx, ignorePortalsStacking]);\n\n return sstyled(styles)(\n <Portal disablePortal={disablePortal} ignorePortalsStacking={ignorePortalsStacking}>\n <NeighborLocation controlsLength={controlsLength}>\n <SPopper\n render={Scale}\n animationsDisabled={animationsDisabled}\n visible={visible}\n duration={[duration, duration / 2]}\n ref={ref}\n onClick={stopPropagation}\n onContextMenu={stopPropagation}\n onDoubleClick={stopPropagation}\n onDrag={stopPropagation}\n onDragEnd={stopPropagation}\n onDragEnter={stopPropagation}\n onDragExit={stopPropagation}\n onDragLeave={stopPropagation}\n onDragOver={stopPropagation}\n onDragStart={stopPropagation}\n onDrop={stopPropagation}\n onMouseDown={stopPropagation}\n onMouseMove={stopPropagation}\n onMouseOver={stopPropagation}\n onMouseOut={stopPropagation}\n onMouseUp={stopPropagation}\n onKeyDown={stopPropagation}\n onKeyPress={stopPropagation}\n onKeyUp={stopPropagation}\n onFocus={stopPropagation}\n onBlur={stopPropagation}\n onChange={stopPropagation}\n onInput={stopPropagation}\n onInvalid={stopPropagation}\n onReset={stopPropagation}\n onSubmit={stopPropagation}\n >\n <PortalProvider value={ref}>\n <Children />\n </PortalProvider>\n </SPopper>\n </NeighborLocation>\n </Portal>,\n );\n}\n\nPopperPopper.enhance = [keyboardFocusEnhance()];\n\nexport default createComponent(Popper, {\n Trigger,\n Popper: PopperPopper,\n});\n"],"mappings":"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"}
|