/* eslint-disable @typescript-eslint/ban-types */ import React from "react"; function renderStringWithChannelRefs(value: string) { return ( <> {value.split(/(<#[A-Z0-9]+\|[A-Za-z0-9]+>)/).map((str, i) => { const matches = str.match(/<#([A-Z0-9]+)\|([A-Za-z0-9]+)>/); if (matches) { return ( #{matches[2]} ); } return {str}; })} ); } export const ChannelReferenceRenderer = ({ children }: React.PropsWithChildren<{}>) => { // TODO: this should probably walk the tree if (typeof children[0] === "string") return renderStringWithChannelRefs(children[0]); return <>{children}; };