import { QUOTE_NUMBER_REGEX } from './url-utils'; export const getQuotedCidsFromContent = (content: string | undefined, numberToCid: Record | undefined) => { if (!content || !numberToCid) return undefined; const cids = new Set(); for (const match of content.matchAll(new RegExp(QUOTE_NUMBER_REGEX.source, 'g'))) { const num = parseInt(match[1], 10); const cid = numberToCid[num]; if (cid) cids.add(cid); } return cids.size > 0 ? [...cids] : undefined; }; export const mergeQuotedCids = (publishCommentOptions: Record | undefined, quotedCids: string[] | undefined) => { if (!publishCommentOptions || !quotedCids?.length) return publishCommentOptions; const currentQuotedCids = publishCommentOptions.quotedCids ?? []; const mergedQuotedCids = [...new Set([...currentQuotedCids, ...quotedCids])]; return { ...publishCommentOptions, quotedCids: mergedQuotedCids, }; };