@misa198/react-slots
Version:
A simple react component that uses slots to render children
3 lines (2 loc) • 434 B
JavaScript
import{cloneElement as n,useMemo as e}from"react";function r({element:e}){return e?n(e):null}function t(n){return null}const o=n=>e((()=>{const e={},r=n=>{if(n&&"object"==typeof n&&"props"in n&&"type"in n){const{props:{children:r,name:o},type:{name:c}}=n;c===t.name&&r&&o&&(e[o]={element:r})}};return n&&(Array.isArray(n)?n.forEach(r):r(n)),e}),[n]);export{r as Slot,t as SlotWrapper,o as useSlots};
//# sourceMappingURL=index.js.map