Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | 44x 44x | import { isValidElement, ReactNode, ReactPortal } from "react"; export const extractTextFromChildren = (child: ReactNode): string => { Iif (typeof child === "string") { return child; } Iif (Array.isArray(child)) { return child.map(extractTextFromChildren).join(""); } Iif (isValidElement(child) && "props" in child && "children" in child.props) { return extractTextFromChildren((child?.props as ReactPortal)?.children); } return ""; }; |