UNPKG

ivt

Version:

Ivt Components Library

51 lines (48 loc) 1.22 kB
import * as React from 'react'; import * as ReactDOM from 'react-dom'; import { createSlot } from '@radix-ui/react-slot'; import { jsx } from 'react/jsx-runtime'; // src/primitive.tsx var NODES = [ "a", "button", "div", "form", "h2", "h3", "img", "input", "label", "li", "nav", "ol", "p", "select", "span", "svg", "ul" ]; var Primitive = NODES.reduce((primitive, node)=>{ const Slot = createSlot(`Primitive.${node}`); const Node = React.forwardRef((props, forwardedRef)=>{ const { asChild, ...primitiveProps } = props; const Comp = asChild ? Slot : node; if (typeof window !== "undefined") { window[Symbol.for("radix-ui")] = true; } return /* @__PURE__ */ jsx(Comp, { ...primitiveProps, ref: forwardedRef }); }); Node.displayName = `Primitive.${node}`; return { ...primitive, [node]: Node }; }, {}); function dispatchDiscreteCustomEvent(target, event) { if (target) ReactDOM.flushSync(()=>target.dispatchEvent(event)); } export { Primitive as P, dispatchDiscreteCustomEvent as d }; //# sourceMappingURL=index-DgKlJYZP.mjs.map