UNPKG

@atlaskit/popup

Version:

A popup displays brief content in an overlay.

34 lines (33 loc) 1.3 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.useGetMemoizedMergedTriggerRefNew = void 0; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = require("react"); var _memoizeOne = _interopRequireDefault(require("memoize-one")); /** * Here setting ref is not dependent on isOpen flag which is failing in React 18 strict mode * Implemented behind ff `platform-design-system-popup-ref` * @returns Function to set trigger ref */ var useGetMemoizedMergedTriggerRefNew = exports.useGetMemoizedMergedTriggerRefNew = function useGetMemoizedMergedTriggerRefNew() { var _useState = (0, _react.useState)(function () { return (0, _memoizeOne.default)(function (ref, setTriggerRef) { return function (node) { if (node) { if (typeof ref === 'function') { ref(node); } else if (ref) { ref.current = node; } setTriggerRef(node); } }; }); }), _useState2 = (0, _slicedToArray2.default)(_useState, 1), getMemoizedMergedTriggerRefNew = _useState2[0]; return getMemoizedMergedTriggerRefNew; };