All files / libs/tenants/users/profile/components/src/lib/invitation/confirm-modal ConfirmInviteUserModal.tsx

100% Statements 2/2
100% Branches 0/0
100% Functions 1/1
100% Lines 2/2

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 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57                          142x           78x                                                                          
import { memo } from 'react';
import { FormattedMessage } from 'react-intl';
 
import { Modal, Typography } from '@allshares/studio-design-system';
import { type UserProfile } from '@amalia/tenants/users/profile/types';
 
export type ConfirmInviteUserModalProps = {
  readonly isOpen: boolean;
  readonly onSubmit: () => void;
  readonly onClose: () => void;
  readonly user: Pick<UserProfile, 'email' | 'firstName' | 'id' | 'invitationSentAt' | 'lastName'>;
};
 
export const ConfirmInviteUserModal = memo(function ConfirmInviteUserModal({
  isOpen,
  onSubmit,
  onClose,
  user,
}: ConfirmInviteUserModalProps) {
  return (
    <Modal
      isOpen={isOpen}
      onClose={onClose}
    >
      <Modal.Content>
        <Modal.Header>
          <Modal.Title>
            <FormattedMessage defaultMessage="Send invitation" />
          </Modal.Title>
        </Modal.Header>
        <Modal.Body>
          <FormattedMessage
            defaultMessage="Are you sure you want to invite {username} ({email}) to Amalia?"
            values={{
              username: (
                <Typography variant="bodyBaseBold">
                  <FormattedMessage
                    defaultMessage="{firstName} {lastName}"
                    values={{ firstName: user.firstName, lastName: user.lastName }}
                  />
                </Typography>
              ),
              email: user.email,
            }}
          />
        </Modal.Body>
      </Modal.Content>
      <Modal.Actions>
        <Modal.CancelAction />
        <Modal.MainAction onClick={onSubmit}>
          <FormattedMessage defaultMessage="Send invitation" />
        </Modal.MainAction>
      </Modal.Actions>
    </Modal>
  );
});