url: extractAttachmentUrl()

in packages/chat-component-bindings/src/messageThreadSelector.ts [86:132]


        url: extractAttachmentUrl(rawAttachment)
      });
    }
  });
  return {
    attachments
  };
};

/* @conditional-compile-remove(data-loss-prevention) */
const convertToUiBlockedMessage = (
  message: ChatMessageWithStatus,
  userId: string,
  isSeen: boolean,
  isLargeGroup: boolean
): BlockedMessage => {
  const messageSenderId = message.sender !== undefined ? toFlatCommunicationIdentifier(message.sender) : userId;
  return {
    messageType: 'blocked',
    createdOn: message.createdOn,
    warningText: undefined,
    status: !isLargeGroup && message.status === 'delivered' && isSeen ? 'seen' : message.status,
    senderDisplayName: message.senderDisplayName,
    senderId: messageSenderId,
    messageId: message.id,
    deletedOn: message.deletedOn,
    mine: messageSenderId === userId,
    link: DEFAULT_DATA_LOSS_PREVENTION_POLICY_URL
  };
};

const extractAttachmentUrl = (attachment: ChatAttachment): string => {
  return attachment.previewUrl ? attachment.previewUrl : attachment.url || '';
};

const processChatMessageContent = (message: ChatMessageWithStatus): string | undefined => {
  let content = message.content?.message;
  if (
    message.content?.attachments &&
    message.content?.attachments.length > 0 &&
    sanitizedMessageContentType(message.type).includes('html')
  ) {
    const attachments: ChatAttachment[] = message.content?.attachments;
    // Fill in the src here
    if (content) {
      const document = new DOMParser().parseFromString(content ?? '', 'text/html');
      document.querySelectorAll('img').forEach((img) => {