nice-ui
Version:
React design system, components, and utilities
20 lines (19 loc) • 825 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.PortalProvider = exports.usePortal = exports.context = void 0;
const React = require("react");
const PortalState_1 = require("./PortalState");
const defaultPortalState = new PortalState_1.PortalState();
exports.context = React.createContext(defaultPortalState);
const usePortal = () => React.useContext(exports.context);
exports.usePortal = usePortal;
const PortalProvider = ({ children }) => {
const parentState = (0, exports.usePortal)();
const state = React.useMemo(() => {
const state = new PortalState_1.PortalState();
state.parent = parentState;
return state;
}, []);
return React.createElement(exports.context.Provider, { value: state }, children);
};
exports.PortalProvider = PortalProvider;
;