@atlaskit/focused-task-close-account
Version:
This package contains all of the UI components needed to assemble the focused tasks for deactivating and deleting users' accounts in accordance with the GDPR "Right to be forgotten".
117 lines • 7.93 kB
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import _defineProperty from "@babel/runtime/helpers/defineProperty";
import React from 'react';
import { FormattedMessage } from 'react-intl-next';
import Button from '@atlaskit/button';
import SectionMessage from '@atlaskit/section-message';
import InfoIcon from '@atlaskit/icon/core/migration/information--info';
import { Text } from '@atlaskit/primitives';
import { commonMessages, overviewMessages } from '../../messages';
import StatefulInlineDialog from '../StatefulInlineDialog';
import UserInfo from '../UserInfo';
import * as Styled from './styled';
import { DropdownList } from '../DropdownList';
import MessagesIntlProvider from '../MessagesIntlProvider';
export class DeleteUserOverviewScreen extends React.Component {
constructor(...args) {
super(...args);
_defineProperty(this, "selectAdminOrSelfCopy", (adminCopy, selfCopy) => {
return this.props.isCurrentUser ? selfCopy : adminCopy;
});
_defineProperty(this, "displayFirstListElement", () => {
const {
accessibleSites,
user,
isUserDeactivated
} = this.props;
if (isUserDeactivated) {
return null;
}
const hasAccessibleSites = accessibleSites && accessibleSites.length > 0;
return /*#__PURE__*/React.createElement("li", null, !hasAccessibleSites && /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.paragraphLoseAccessAdminNoSites, overviewMessages.paragraphLoseAccessSelfNoSites), {
values: {
fullName: user.fullName,
b: s => /*#__PURE__*/React.createElement("b", null, s)
}
})), hasAccessibleSites && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.paragraphLoseAccessAdmin, overviewMessages.paragraphLoseAccessSelf), {
values: {
fullName: user.fullName,
b: s => /*#__PURE__*/React.createElement("b", null, s)
},
tagName: 'p'
})), /*#__PURE__*/React.createElement(DropdownList, {
accessibleSites: accessibleSites
})));
});
_defineProperty(this, "displaySecondListElement", () => {
return /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.paragraphPersonalDataWillBeDeletedAdmin, overviewMessages.paragraphPersonalDataWillBeDeletedSelf), {
values: {
b: s => /*#__PURE__*/React.createElement("b", null, s)
}
})), /*#__PURE__*/React.createElement(Styled.IconHoverWrapper, null, /*#__PURE__*/React.createElement(StatefulInlineDialog, {
placement: "auto-start",
content: /*#__PURE__*/React.createElement(Styled.InlineDialogContent, null, /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.inlineDialogDataWillBeDeletedP1Admin, overviewMessages.inlineDialogDataWillBeDeletedP1Self), {
tagName: "p"
})), /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.inlineDialogDataWillBeDeletedLi1Admin, overviewMessages.inlineDialogDataWillBeDeletedLi1Self), {
tagName: "li"
})), /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.inlineDialogDataWillBeDeletedLi2Admin, overviewMessages.inlineDialogDataWillBeDeletedLi2Self), {
tagName: "li"
})), /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.inlineDialogDataWillBeDeletedLi3Admin, overviewMessages.inlineDialogDataWillBeDeletedLi3Self), {
tagName: "li"
})), /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.inlineDialogDataWillBeDeletedP2Admin, overviewMessages.inlineDialogDataWillBeDeletedP2Self), {
tagName: "p"
})), /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.inlineDialogDataWillBeDeletedP3Admin, overviewMessages.inlineDialogDataWillBeDeletedP3Self), {
tagName: "p"
})))
}, /*#__PURE__*/React.createElement(InfoIcon, {
color: "currentColor",
label: "",
LEGACY_size: "small"
}))));
});
_defineProperty(this, "displayThirdListElement", () => {
return /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(FormattedMessage, this.selectAdminOrSelfCopy(overviewMessages.paragraphListOfAppsWithPersonalDataAdmin, overviewMessages.paragraphListOfAppsWithPersonalDataSelf)), /*#__PURE__*/React.createElement(Styled.IconHoverWrapper, null, /*#__PURE__*/React.createElement(StatefulInlineDialog, {
placement: "auto-start",
content: /*#__PURE__*/React.createElement(FormattedMessage, this.selectAdminOrSelfCopy(overviewMessages.inlineDialogDataAppsAdmin, overviewMessages.inlineDialogDataAppsSelf))
}, /*#__PURE__*/React.createElement(InfoIcon, {
color: "currentColor",
label: "",
LEGACY_size: "small"
}))));
});
_defineProperty(this, "displayFourthListElement", () => {
return /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(FormattedMessage, this.selectAdminOrSelfCopy(overviewMessages.paragraphContentCreatedAdmin, overviewMessages.paragraphContentCreatedSelf)), /*#__PURE__*/React.createElement(Styled.IconHoverWrapper, null, /*#__PURE__*/React.createElement(StatefulInlineDialog, {
placement: "auto-start",
content: /*#__PURE__*/React.createElement(FormattedMessage, this.selectAdminOrSelfCopy(overviewMessages.inlineDialogContentCreatedAdmin, overviewMessages.inlineDialogContentCreatedSelf))
}, /*#__PURE__*/React.createElement(InfoIcon, {
color: "currentColor",
label: "",
LEGACY_size: "small"
}))));
});
}
render() {
const {
user,
deactivateUserHandler,
isUserDeactivated
} = this.props;
return /*#__PURE__*/React.createElement(MessagesIntlProvider, null, /*#__PURE__*/React.createElement(Styled.Screen, null, /*#__PURE__*/React.createElement(Styled.Title, null, /*#__PURE__*/React.createElement(FormattedMessage, this.selectAdminOrSelfCopy(overviewMessages.headingAdmin, overviewMessages.headingSelf))), /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, this.selectAdminOrSelfCopy(overviewMessages.firstLineAdmin, overviewMessages.firstLineSelf), {
tagName: "p"
})), /*#__PURE__*/React.createElement(UserInfo, {
user: user
}), /*#__PURE__*/React.createElement(FormattedMessage, this.selectAdminOrSelfCopy(overviewMessages.paragraphAboutToDeleteAdmin, overviewMessages.paragraphAboutToDeleteSelf)), /*#__PURE__*/React.createElement(Styled.MainInformationList, null, this.displayFirstListElement(), this.displaySecondListElement(), this.displayThirdListElement(), this.displayFourthListElement()), deactivateUserHandler && /*#__PURE__*/React.createElement(Styled.SectionMessageOuter, null, /*#__PURE__*/React.createElement(SectionMessage, {
appearance: "warning"
}, /*#__PURE__*/React.createElement(FormattedMessage, isUserDeactivated ? overviewMessages.warningSectionBodyDeactivated : overviewMessages.warningSectionBody), !isUserDeactivated && /*#__PURE__*/React.createElement(Text, {
as: "p"
}, /*#__PURE__*/React.createElement(Button, {
appearance: "link",
spacing: "none",
onClick: deactivateUserHandler
}, /*#__PURE__*/React.createElement(FormattedMessage, commonMessages.deactivateAccount)))))));
}
}
_defineProperty(DeleteUserOverviewScreen, "defaultProps", {
isCurrentUser: false
});
export default DeleteUserOverviewScreen;