@tapie-kr/inspire-react
Version:
React Component Collection for INSPIRE
24 lines (20 loc) • 1.09 kB
JavaScript
'use client';
/* eslint-disable */
/*
* INSPIRE : Creative Kit
* React Component Collection for INSPIRE
*
* This file is generated automatically. Do not modify it manually
* Generated at : 2025. 3. 4. 오후 6:18:13
* @tapie-kr/inspire-react version: 0.2.15
*
* (c) 2025 TAPIE. All rights reserved.
* MIT License
*/
;
var jotai = require('jotai');
var React = require('react');
var reactDom = require('react-dom');
var atoms = require('../../../../lib/atoms.js');
function Overlay(props){const id=React.useMemo(()=>Math.random().toString(36).slice(2),[]);const overlayMeta=jotai.useAtomValue(atoms.overlayAtom);const setOverlayMeta=jotai.useSetAtom(atoms.overlayAtom);React.useEffect(()=>{setOverlayMeta(prev=>({...prev,activeChildren:[...prev.activeChildren,id],wrapperClassName:props.className}));return ()=>{setOverlayMeta(prev=>({...prev,activeChildren:prev.activeChildren.filter(child=>child!==id),wrapperClassName:null}));}},[props.className]);return overlayMeta.dom?reactDom.createPortal(props.children,overlayMeta.dom,props.key):null}
exports.Overlay = Overlay;