UNPKG

communication-react-19

Version:

React library for building modern communication user experiences utilizing Azure Communication Services (React 19 compatible fork)

45 lines 2.41 kB
// Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { Icon, mergeStyles } from '@fluentui/react'; import React, { useMemo } from 'react'; import { _AttachmentCard } from './AttachmentCard'; import { _AttachmentCardGroup, _AttachmentCardGroupLayout } from './AttachmentCardGroup'; import { useLocaleAttachmentCardStringsTrampoline } from '../utils/common'; const actionIconStyle = { height: '1rem' }; /** * @internal */ export const _AttachmentUploadCards = (props) => { var _a; const attachments = props.attachments; const localeStrings = useLocaleAttachmentCardStringsTrampoline(); const removeAttachmentButtonString = useMemo(() => () => { var _a, _b; return (_b = (_a = props.strings) === null || _a === void 0 ? void 0 : _a.removeAttachment) !== null && _b !== void 0 ? _b : localeStrings.removeAttachment; }, [(_a = props.strings) === null || _a === void 0 ? void 0 : _a.removeAttachment, localeStrings.removeAttachment]); if (!attachments || attachments.length === 0) { return React.createElement(React.Fragment, null); } return (React.createElement(_AttachmentCardGroup, { attachmentGroupLayout: _AttachmentCardGroupLayout.Flex, disabled: props.disabled }, attachments && attachments .filter((attachment) => !attachment.error) .map((attachment) => (React.createElement(_AttachmentCard, { attachment: attachment, key: attachment.id, menuActions: [ { name: removeAttachmentButtonString(), icon: (React.createElement("div", { "data-testid": "attachment-upload-card-remove" }, React.createElement(Icon, { iconName: "CancelAttachmentUpload", className: mergeStyles(actionIconStyle) }))), onClick: (attachment) => { return new Promise((resolve, reject) => { try { props.onCancelAttachmentUpload && props.onCancelAttachmentUpload(attachment.id); resolve(); } catch (e) { reject(e.message); } }); } } ], strings: props.strings }))))); }; //# sourceMappingURL=AttachmentUploadCards.js.map