UNPKG

@heroui/react-utils

Version:

A set of utilities for react on client side

27 lines (24 loc) 473 B
"use client"; // src/refs.ts import { isFunction } from "@heroui/shared-utils"; function assignRef(ref, value) { if (ref == null) return; if (isFunction(ref)) { ref(value); return; } try { ref.current = value; } catch (error) { throw new Error(`Cannot assign value '${value}' to ref '${ref}'`); } } function mergeRefs(...refs) { return (node) => { refs.forEach((ref) => assignRef(ref, node)); }; } export { assignRef, mergeRefs };