UNPKG

cluedin-widget

Version:
942 lines (788 loc) • 37.3 kB
(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[20],{ /***/ 1893: /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7); /* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5); /* harmony import */ var uxi_Motion__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(102); /* harmony import */ var uxi_Motion__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(uxi_Motion__WEBPACK_IMPORTED_MODULE_3__); function _templateObject() { var data = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()(["\n width: 100%;\n text-align: center;\n display: flex;\n justify-content: center;\n"]); _templateObject = function _templateObject() { return data; }; return data; } var CenteredLoaderUI = styled_components__WEBPACK_IMPORTED_MODULE_2__["default"].div(_templateObject()); var CenteredLoader = function CenteredLoader() { return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(CenteredLoaderUI, null, react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(uxi_Motion__WEBPACK_IMPORTED_MODULE_3__["Loader"], null)); }; /* harmony default export */ __webpack_exports__["a"] = (CenteredLoader); /***/ }), /***/ 2333: /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread.js var objectSpread = __webpack_require__(2); var objectSpread_default = /*#__PURE__*/__webpack_require__.n(objectSpread); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/classCallCheck.js var classCallCheck = __webpack_require__(12); var classCallCheck_default = /*#__PURE__*/__webpack_require__.n(classCallCheck); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/createClass.js var createClass = __webpack_require__(13); var createClass_default = /*#__PURE__*/__webpack_require__.n(createClass); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js var possibleConstructorReturn = __webpack_require__(14); var possibleConstructorReturn_default = /*#__PURE__*/__webpack_require__.n(possibleConstructorReturn); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/getPrototypeOf.js var getPrototypeOf = __webpack_require__(15); var getPrototypeOf_default = /*#__PURE__*/__webpack_require__.n(getPrototypeOf); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/inherits.js var inherits = __webpack_require__(16); var inherits_default = /*#__PURE__*/__webpack_require__.n(inherits); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(0); var react_default = /*#__PURE__*/__webpack_require__.n(react); // EXTERNAL MODULE: ./node_modules/recompose/es/Recompose.js var Recompose = __webpack_require__(6); // EXTERNAL MODULE: ./node_modules/react-redux/es/index.js + 18 modules var es = __webpack_require__(8); // EXTERNAL MODULE: ./node_modules/connected-react-router/lib/index.js var lib = __webpack_require__(25); // EXTERNAL MODULE: ./core/modules/GDPR/actions.js var actions = __webpack_require__(23); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/defineProperty.js var defineProperty = __webpack_require__(3); var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js var toConsumableArray = __webpack_require__(17); var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/assertThisInitialized.js var assertThisInitialized = __webpack_require__(27); var assertThisInitialized_default = /*#__PURE__*/__webpack_require__.n(assertThisInitialized); // EXTERNAL MODULE: ./node_modules/prop-types/index.js var prop_types = __webpack_require__(1); var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types); // EXTERNAL MODULE: ./node_modules/uxi/Button/index.js var Button = __webpack_require__(18); var Button_default = /*#__PURE__*/__webpack_require__.n(Button); // EXTERNAL MODULE: ./node_modules/uxi/Indicator/index.js var Indicator = __webpack_require__(43); // EXTERNAL MODULE: ./node_modules/uxi/Icons/index.js var Icons = __webpack_require__(9); // EXTERNAL MODULE: ./node_modules/react-intl/lib/index.es.js var index_es = __webpack_require__(4); // EXTERNAL MODULE: ./node_modules/uxi/Layout/index.js var Layout = __webpack_require__(26); // EXTERNAL MODULE: ./node_modules/rc-tooltip/es/index.js + 36 modules var rc_tooltip_es = __webpack_require__(56); // EXTERNAL MODULE: ./core/modules/GDPR/components/containers/GdprReportContainer.js + 18 modules var GdprReportContainer = __webpack_require__(410); // EXTERNAL MODULE: ./node_modules/uxi/Alert/index.js var Alert = __webpack_require__(24); var Alert_default = /*#__PURE__*/__webpack_require__.n(Alert); // EXTERNAL MODULE: ./node_modules/uxi/Input/index.js var Input = __webpack_require__(35); // EXTERNAL MODULE: ./node_modules/uxi/Stepper/index.js var Stepper = __webpack_require__(80); // EXTERNAL MODULE: ./node_modules/uxi/Dialog/index.js var Dialog = __webpack_require__(68); var Dialog_default = /*#__PURE__*/__webpack_require__.n(Dialog); // EXTERNAL MODULE: ./node_modules/uxi/Panel/index.js var Panel = __webpack_require__(34); var Panel_default = /*#__PURE__*/__webpack_require__.n(Panel); // EXTERNAL MODULE: ./core/modules/core/actions.js var core_actions = __webpack_require__(60); // CONCATENATED MODULE: ./core/modules/GDPR/components/containers/Dialogs/GdprExtendReport.js var successAlert = { type: 'success', title: null, description: react_default.a.createElement("div", { style: { maxWidth: '460px' } }, react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-extendReportSuccessTitle", defaultMessage: "Uploaded successfuly!" }), react_default.a.createElement("br", null), react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-extendReportSuccessText", defaultMessage: "We will generate a new report for this SAR using the new data once they have been processed" })) }; var getInitialState = function getInitialState(props) { return { selectedTransform: props.availableTransforms ? props.availableTransforms[0] || false : false, step: 0, file: [] }; }; var GdprExtendReport_GdprExtendReport = /*#__PURE__*/ function (_Component) { inherits_default()(GdprExtendReport, _Component); function GdprExtendReport(props) { var _this; classCallCheck_default()(this, GdprExtendReport); _this = possibleConstructorReturn_default()(this, getPrototypeOf_default()(GdprExtendReport).call(this, props)); _this.state = getInitialState(_this.props); _this.onFileChange = _this.onFileChange.bind(assertThisInitialized_default()(assertThisInitialized_default()(_this))); _this.onTransformerSelectChange = _this.onTransformerSelectChange.bind(assertThisInitialized_default()(assertThisInitialized_default()(_this))); _this.handleSubmit = _this.handleSubmit.bind(assertThisInitialized_default()(assertThisInitialized_default()(_this))); _this.handleClose = _this.handleClose.bind(assertThisInitialized_default()(assertThisInitialized_default()(_this))); _this.resetState = _this.resetState.bind(assertThisInitialized_default()(assertThisInitialized_default()(_this))); return _this; } createClass_default()(GdprExtendReport, [{ key: "componentWillReceiveProps", value: function componentWillReceiveProps(nextProps) { var closeDialog = nextProps.closeDialog, shouldShowSuccessAlert = nextProps.shouldShowSuccessAlert; if (!this.props.postExtendReportSuccess && nextProps.postExtendReportSuccess) { // clue posting suceedded, reset dialog state this.resetState(); // close dialog if (closeDialog) closeDialog(); // showNotification shouldShowSuccessAlert(); } } }, { key: "onFileChange", value: function onFileChange(e) { var files = e.target.files; var file = files[0]; this.setState({ file: file }); // it's a File } }, { key: "onTransformerSelectChange", value: function onTransformerSelectChange(e, selectedIndex) { var availableTransforms = this.props.availableTransforms; var transformer = availableTransforms[selectedIndex]; if (transformer) { this.setState({ selectedTransform: transformer.Transformer }); } } }, { key: "handleClose", value: function handleClose() { var _this$props = this.props, onClose = _this$props.onClose, resetExtendReportStoreValues = _this$props.resetExtendReportStoreValues; this.resetState(); if (resetExtendReportStoreValues) { resetExtendReportStoreValues(); } if (onClose) { onClose(); } } }, { key: "resetState", value: function resetState(props) { this.setState(getInitialState(props || this.props)); } }, { key: "handleSubmit", value: function handleSubmit() { var _this$props2 = this.props, postExtendReport = _this$props2.postExtendReport, sar = _this$props2.sar; var _this$state = this.state, selectedTransform = _this$state.selectedTransform, file = _this$state.file; if (file && postExtendReport && selectedTransform && selectedTransform.Id) { postExtendReport(sar, selectedTransform.Id, file); } } }, { key: "render", value: function render() { var _this2 = this; var _this$props3 = this.props, show = _this$props3.show, availableTransforms = _this$props3.availableTransforms, postExtendReportSuccess = _this$props3.postExtendReportSuccess, postExtendReportInvalid = _this$props3.postExtendReportInvalid, postExtendReportConflicted = _this$props3.postExtendReportConflicted, postExtendReportLoading = _this$props3.postExtendReportLoading, availableTransformsError = _this$props3.availableTransformsError; var _this$state2 = this.state, step = _this$state2.step, file = _this$state2.file, selectedTransform = _this$state2.selectedTransform; if (!show) { return null; } var errorMsg = postExtendReportInvalid.response && postExtendReportInvalid.response && postExtendReportInvalid.response.body && postExtendReportInvalid.response.body.Message; var errorFeedBack = null; if (postExtendReportInvalid) { if (errorMsg) { errorFeedBack = react_default.a.createElement("div", null, react_default.a.createElement(Alert_default.a, { type: "error" }, "An error occured while sending the data. ", react_default.a.createElement("br", null), "Details: ", react_default.a.createElement("br", null), errorMsg)); } else { errorFeedBack = react_default.a.createElement("div", null, react_default.a.createElement(Alert_default.a, { type: "error" }, "An error occured while sending the data. ", react_default.a.createElement("br", null))); } } var noTransformsAvail = react_default.a.createElement("div", null, react_default.a.createElement(Alert_default.a, { type: "info" }, "No transformers found.")); return react_default.a.createElement(Dialog_default.a, { onClose: this.handleClose, show: show }, react_default.a.createElement(Panel_default.a, { onClose: this.handleClose }, react_default.a.createElement(Panel["PanelHeader"], { title: 'Select Transform' }), react_default.a.createElement(Panel["PanelContent"], { style: { maxHeight: 'calc(80vh - calc( 2 * 50px ))', minHeight: '60vh' } }, react_default.a.createElement("div", { style: { borderBottom: '1px solid #cecece' } }, react_default.a.createElement(Stepper["Stepper"], { linear: true, activeStep: step + 1, nowrap: true }, react_default.a.createElement(Stepper["Step"], null, react_default.a.createElement(Stepper["StepButton"], { onClick: function onClick() { return _this2.setState({ step: 0 }); } }, react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-extendReport-steps-ChooseTransform" }))), react_default.a.createElement(Stepper["Step"], null, react_default.a.createElement(Stepper["StepButton"], { onClick: function onClick() {} }, react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-extendReport-steps-UploadFile" }))))), postExtendReportSuccess && react_default.a.createElement(Alert_default.a, { type: "success" }, "Data have been sent successfuly. ", react_default.a.createElement("br", null), "You can now close this dialog."), postExtendReportSuccess && react_default.a.createElement(Alert_default.a, { type: "success" }, "Data have been sent successfuly. ", react_default.a.createElement("br", null), "You can now close this dialog."), errorFeedBack, postExtendReportConflicted && react_default.a.createElement(Alert_default.a, { type: "error" }, "A file has already been attached to extend this SAR ", react_default.a.createElement("br", null)), availableTransformsError && react_default.a.createElement(Alert_default.a, { type: "error" }, "We could not find any transforms"), // eslint-disable-next-line no-nested-ternary availableTransforms && availableTransforms.length === 0 ? noTransformsAvail : step === 0 ? react_default.a.createElement(Layout["Flex"], { style: { marginTop: '80px' } }, react_default.a.createElement("div", { style: { width: '280px' } }, react_default.a.createElement(Input["Select"], { isFullWidth: true, onChange: this.onTransformerSelectChange }, availableTransforms.map(function (_ref) { var Id = _ref.Id, Name = _ref.Name; return react_default.a.createElement(Layout["Flex"], { value: Id }, Name); })))) : react_default.a.createElement(Layout["Flex"], { style: { marginTop: '80px', flexDirection: 'column' } }, !postExtendReportSuccess && react_default.a.createElement(Layout["Flex"], { style: { marginTop: '80px', flexDirection: 'column' } }, react_default.a.createElement(Input["FileInput"], { label: 'Choose file', onChange: this.onFileChange }), react_default.a.createElement("div", null, file && file.name || null)))), react_default.a.createElement(Panel["PanelFooter"], { hasCancel: true }, step === 0 ? react_default.a.createElement(Button_default.a, { onClick: function onClick() { _this2.setState({ step: 1 }); }, type: "primary", disabled: !selectedTransform, message: react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-choosePerson" }) }) : react_default.a.createElement(Button_default.a, { disabled: !file || postExtendReportSuccess, icon: postExtendReportLoading ? react_default.a.createElement(Indicator["Loader"], null) : react_default.a.createElement(Icons["Upload"], null), onClick: this.handleSubmit, type: "primary", message: 'Upload' })))); } }]); return GdprExtendReport; }(react["Component"]); var GdprExtendReportEnhanced = Object(Recompose["b" /* compose */])(Object(Recompose["c" /* lifecycle */])({ componentDidMount: function componentDidMount() { var fetchTransforms = this.props.fetchTransforms; if (fetchTransforms) { fetchTransforms(); } } }), Object(Recompose["a" /* branch */])(function (_ref2) { var availableTransformsLoading = _ref2.availableTransformsLoading; return availableTransformsLoading; }, Object(Recompose["e" /* renderComponent */])(function () { return ''; })))(GdprExtendReport_GdprExtendReport); GdprExtendReport_GdprExtendReport.displayName = 'GdprExtendReport'; GdprExtendReport_GdprExtendReport.propTypes = { sar: prop_types_default.a.object, availableTransforms: [] }; GdprExtendReport_GdprExtendReport.defaultProps = { sar: {}, availableTransforms: [] }; var mapStateToProps = function mapStateToProps(_ref3) { var _ref3$GDPR = _ref3.GDPR, availableTransforms = _ref3$GDPR.availableTransforms, availableTransformsLoading = _ref3$GDPR.availableTransformsLoading, availableTransformsInvalid = _ref3$GDPR.availableTransformsInvalid, postExtendReport = _ref3$GDPR.postExtendReport, postExtendReportSuccess = _ref3$GDPR.postExtendReportSuccess, postExtendReportInvalid = _ref3$GDPR.postExtendReportInvalid, postExtendReportConflicted = _ref3$GDPR.postExtendReportConflicted, postExtendReportLoading = _ref3$GDPR.postExtendReportLoading; return { availableTransforms: availableTransforms, availableTransformsLoading: availableTransformsLoading, availableTransformsError: availableTransformsInvalid, postExtendReport: postExtendReport, postExtendReportSuccess: postExtendReportSuccess, postExtendReportInvalid: postExtendReportInvalid, postExtendReportConflicted: postExtendReportConflicted, postExtendReportLoading: postExtendReportLoading }; }; var GdprExtendReport_mapDispatchToProps = function mapDispatchToProps(dispatch) { return { resetExtendReportStoreValues: function resetExtendReportStoreValues() { return dispatch(Object(actions["G" /* resetPostExtendReportAction */])()); }, fetchTransforms: function fetchTransforms() { return dispatch(Object(actions["bb" /* shouldFetchAvailableTransforms */])()); }, postExtendReport: function postExtendReport(sar, transformId, file) { return dispatch(Object(actions["rb" /* shouldPostExtendReportData */])(sar, transformId, file)); }, shouldShowSuccessAlert: function shouldShowSuccessAlert() { return dispatch(Object(core_actions["c" /* shouldShowAlert */])(successAlert)); } }; }; /* harmony default export */ var Dialogs_GdprExtendReport = (Object(es["connect"])(mapStateToProps, GdprExtendReport_mapDispatchToProps)(GdprExtendReportEnhanced)); // CONCATENATED MODULE: ./core/modules/GDPR/components/composites/ReviewGeneratedReport.js var ReviewGeneratedReport_ReviewGeneratedReport = /*#__PURE__*/ function (_Component) { inherits_default()(ReviewGeneratedReport, _Component); function ReviewGeneratedReport(props) { var _this; classCallCheck_default()(this, ReviewGeneratedReport); _this = possibleConstructorReturn_default()(this, getPrototypeOf_default()(ReviewGeneratedReport).call(this, props)); _this.state = { showExtendReportPopup: false, reportSettingsHasBeenTouched: false, reportSettings: { ExcludedGuids: [], ExcludedEntityType: [], ExcludedProviders: [], ExcludedProperties: [], ExcludeProvidersDefinition: [] } }; _this.handleExcludedGuidsChange = _this.handleExcludedGuidsChange.bind(assertThisInitialized_default()(assertThisInitialized_default()(_this))); _this.handleExcludedEntityTypeChange = _this.handleExcludedEntityTypeChange.bind(assertThisInitialized_default()(assertThisInitialized_default()(_this))); _this.closeDialog = _this.closeDialog.bind(assertThisInitialized_default()(assertThisInitialized_default()(_this))); return _this; } createClass_default()(ReviewGeneratedReport, [{ key: "componentWillReceiveProps", value: function componentWillReceiveProps() { this.resetState(); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { var onResetRegenerateSARReportAction = this.props.onResetRegenerateSARReportAction; if (onResetRegenerateSARReportAction) { onResetRegenerateSARReportAction(); } } }, { key: "resetState", value: function resetState() { this.setState({ reportSettingsHasBeenTouched: false, reportSettings: { ExcludedGuids: [], ExcludedEntityType: [], ExcludedProviders: [], ExcludedProperties: [], ExcludeProvidersDefinition: [] } }); } }, { key: "handleChangeByKeyName", value: function handleChangeByKeyName(event, checked, value, reportSettingsKey) { var reportSettings = this.state.reportSettings; var theKeyValue = reportSettings[reportSettingsKey]; var newExcludedValues = toConsumableArray_default()(theKeyValue); if (!checked) { if (newExcludedValues.indexOf(value) > -1) {// noop } else { newExcludedValues.push(value); } } else { newExcludedValues = newExcludedValues.filter(function (x) { return x !== value; }); } var newReportSettings = objectSpread_default()({}, this.state.reportSettings, defineProperty_default()({}, reportSettingsKey, newExcludedValues)); var itemsToExcludeCount = Object.keys(newReportSettings).reduce(function (accu, key) { return accu + newReportSettings[key].length; }, 0); this.setState({ reportSettingsHasBeenTouched: itemsToExcludeCount > 0, reportSettings: newReportSettings }); } }, { key: "handleExcludedGuidsChange", value: function handleExcludedGuidsChange(event, checked, value) { this.handleChangeByKeyName(event, checked, value, 'ExcludedGuids'); } }, { key: "handleExcludedEntityTypeChange", value: function handleExcludedEntityTypeChange(event, checked, value) { this.handleChangeByKeyName(event, checked, value, 'ExcludedEntityType'); } }, { key: "handleExcludedProvidersChange", value: function handleExcludedProvidersChange(event, checked, value) { this.handleChangeByKeyName(event, checked, value, 'ExcludedProviders'); } }, { key: "closeDialog", value: function closeDialog() { var onResetPostExtendReportAction = this.props.onResetPostExtendReportAction; this.setState({ showExtendReportPopup: false }); if (onResetPostExtendReportAction) { onResetPostExtendReportAction(); } } }, { key: "render", value: function render() { var _this2 = this; var _this$props = this.props, approveReport = _this$props.approveReport, currentSAR = _this$props.currentSAR, id = _this$props.match.params.id, isFetchingRegenerateReport = _this$props.isFetchingRegenerateReport, isFetchingJsonReportError = _this$props.isFetchingJsonReportError, isExtendedSar = _this$props.isExtendedSar; var reportIsBeingProcessed = !currentSAR.ReportStatus || currentSAR.ReportStatus === 'Generating' || currentSAR.ReportStatus === 'RegeneratingExcludedGuids' || currentSAR.ReportStatus === 'RegeneratingClueTransform'; var _this$state = this.state, reportSettings = _this$state.reportSettings, reportSettingsHasBeenTouched = _this$state.reportSettingsHasBeenTouched, showExtendReportPopup = _this$state.showExtendReportPopup; var ReportUri = currentSAR.ReportUri, ExportUri = currentSAR.ExportUri, ReportJsonUri = currentSAR.ReportJsonUri; var validateOrRegenerageReportButton = react_default.a.createElement(Button_default.a, { type: reportSettingsHasBeenTouched ? 'warning' : 'primary', icon: // eslint-disable-next-line no-nested-ternary isFetchingRegenerateReport ? react_default.a.createElement(Indicator["Loader"], null) : reportSettingsHasBeenTouched ? react_default.a.createElement(Icons["Iteration"], null) : react_default.a.createElement(Icons["Done"], null), disabled: !ReportUri || isFetchingJsonReportError || isFetchingRegenerateReport || reportIsBeingProcessed, onClick: function onClick() { approveReport(currentSAR, reportSettings, reportSettingsHasBeenTouched); }, text: reportSettingsHasBeenTouched ? react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-regenerateReport" }) : react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-approveReport" }) }); var extendReportButton = isExtendedSar ? react_default.a.createElement(Button_default.a, { disabled: !ReportUri || isFetchingJsonReportError || isFetchingRegenerateReport || reportIsBeingProcessed, icon: react_default.a.createElement(Icons["Upload"], null), onClick: function onClick() { _this2.setState({ showExtendReportPopup: true }); // approveReport(currentSAR, reportSettings, reportSettingsHasBeenTouched); }, text: react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-extendReport" }), style: { marginRight: '8px' } }) : null; return react_default.a.createElement("div", { style: { padding: '15px' } }, react_default.a.createElement("div", null, react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-approveBeforeSending" })), react_default.a.createElement("div", { style: { margin: '15px 0' } }, react_default.a.createElement("h2", null, react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-generatedReport" })), react_default.a.createElement("p", null, "Untick the box next to the data you want to exclude from the report. Then click regenerate, which will regenerate the report, excluding the data item you unticked."), react_default.a.createElement("br", null), react_default.a.createElement("br", null), react_default.a.createElement("hr", null), react_default.a.createElement(Layout["Flex"], { style: { flexFlow: 'row wrap', justifyContent: 'flex-start' } }, react_default.a.createElement(rc_tooltip_es["default"], { overlay: react_default.a.createElement("span", null, "An individual is already attached to this SAR"), trigger: ['hover'], placement: "top", defaultVisible: currentSAR.EntityId !== '00000000-0000-0000-0000-000000000000' ? false : undefined }, react_default.a.createElement("div", null, react_default.a.createElement(Button_default.a, { style: { margin: '8px' }, disabled: true, icon: react_default.a.createElement(Icons["Arrowleft"], null), text: react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-back" }) }))), ReportJsonUri && react_default.a.createElement(rc_tooltip_es["default"], { placement: 'top', trigger: ['hover'], overlay: react_default.a.createElement("div", null, react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-openFullPage" })) }, react_default.a.createElement("div", null, react_default.a.createElement(Button_default.a, { target: "_blank", style: { margin: '8px' }, link: "/admin/gdpr/gdprReport/".concat(currentSAR.Id), disabled: isFetchingJsonReportError || reportIsBeingProcessed, icon: react_default.a.createElement(Icons["Externallink"], null) }))), ReportJsonUri && react_default.a.createElement(rc_tooltip_es["default"], { placement: 'top', trigger: ['hover'], overlay: react_default.a.createElement("div", null, react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-downloadFiles" })) }, react_default.a.createElement("div", null, react_default.a.createElement(Button_default.a, { target: "_blank", style: { margin: '8px' }, link: ExportUri, icon: react_default.a.createElement(Icons["Download"], null), disabled: isFetchingJsonReportError || reportIsBeingProcessed }))), ReportJsonUri && react_default.a.createElement(rc_tooltip_es["default"], { placement: 'top', trigger: ['hover'], overlay: react_default.a.createElement("div", null, react_default.a.createElement(index_es["FormattedMessage"], { id: "module-gdpr-print-report" })) }, react_default.a.createElement("div", null, react_default.a.createElement(Button_default.a, { target: "_blank", style: { margin: '8px' }, link: "/admin/gdpr/gdprReport/".concat(currentSAR.Id, "?print=1"), icon: react_default.a.createElement(Icons["Printer"], null), disabled: isFetchingJsonReportError || reportIsBeingProcessed }))), react_default.a.createElement("div", { style: { marginLeft: 'auto', display: 'flex' } }, extendReportButton, validateOrRegenerageReportButton)), react_default.a.createElement("hr", null), react_default.a.createElement("div", { style: { border: '1px solid #ccc', maxHeight: '800px', overflowY: 'scroll' } }, react_default.a.createElement(GdprReportContainer["default"], { reportStatus: currentSAR.ReportStatus, sarId: id, reportSettings: reportSettings, onExcludedGuidsChange: this.handleExcludedGuidsChange, onExcludedEntityTypeChange: this.handleExcludedEntityTypeChange, onExcludedProvidersChange: this.handleExcludedProvidersChange }))), react_default.a.createElement(Layout["Flex"], { style: { justifyContent: 'flex-end' } }, extendReportButton, validateOrRegenerageReportButton), react_default.a.createElement(Dialogs_GdprExtendReport, { sar: currentSAR, show: showExtendReportPopup, onClose: function onClose() { return _this2.setState({ showExtendReportPopup: false }); }, closeDialog: this.closeDialog })); } }]); return ReviewGeneratedReport; }(react["Component"]); ReviewGeneratedReport_ReviewGeneratedReport.displayName = 'ReviewGeneratedReport'; ReviewGeneratedReport_ReviewGeneratedReport.propTypes = { approveReport: prop_types_default.a.func, currentSAR: prop_types_default.a.object }; ReviewGeneratedReport_ReviewGeneratedReport.defaultProps = { approveReport: function approveReport() {}, currentSAR: {} }; /* harmony default export */ var composites_ReviewGeneratedReport = (ReviewGeneratedReport_ReviewGeneratedReport); // EXTERNAL MODULE: ./core/modules/GDPR/components/composites/CenteredLoader.js var CenteredLoader = __webpack_require__(1893); // CONCATENATED MODULE: ./core/modules/GDPR/components/pages/GdprNewSubjectAccessValidateReport.js var GdprNewSubjectAccessValidateReport_GdprValidateReportContainer = /*#__PURE__*/ function (_Component) { inherits_default()(GdprValidateReportContainer, _Component); function GdprValidateReportContainer(props) { var _this; classCallCheck_default()(this, GdprValidateReportContainer); _this = possibleConstructorReturn_default()(this, getPrototypeOf_default()(GdprValidateReportContainer).call(this, props)); _this.state = { isPolling: false }; return _this; } createClass_default()(GdprValidateReportContainer, [{ key: "componentDidMount", value: function componentDidMount() { var isPolling = this.state.isPolling; var _this$props = this.props, startPolling = _this$props.startPolling, currentSAR = _this$props.currentSAR; if (currentSAR && startPolling && !isPolling) { startPolling(currentSAR); this.setState({ isPolling: true }); } } }, { key: "componentWillReceiveProps", value: function componentWillReceiveProps(nextProps) { var isPolling = this.state.isPolling; var _this$props2 = this.props, stopPooling = _this$props2.stopPooling, startPolling = _this$props2.startPolling; if (!isPolling && nextProps.currentSAR && (!nextProps.currentSAR.ReportStatus || nextProps.currentSAR.ReportStatus === 'Generating' || nextProps.currentSAR.ReportStatus === 'RegeneratingExcludedGuids' || nextProps.currentSAR.ReportStatus === 'RegeneratingClueTransform')) { startPolling(nextProps.currentSAR); this.setState({ isPolling: true }); } if (nextProps.currentSAR && isPolling && (nextProps.currentSAR.ReportStatus === 'Generated' || nextProps.currentSAR.ReportStatus === 'Regenerated')) { stopPooling(); this.setState({ isPolling: false }); } } }, { key: "componentWillUnmount", value: function componentWillUnmount() { var isPolling = this.state.isPolling; var stopPooling = this.props.stopPooling; if (isPolling) { stopPooling(); this.setState({ isPolling: false }); } } }, { key: "render", value: function render() { return react_default.a.createElement(composites_ReviewGeneratedReport, this.props); } }]); return GdprValidateReportContainer; }(react["Component"]); var GdprValidateReportContainerEnhanced = Object(Recompose["b" /* compose */])(Object(Recompose["a" /* branch */])(function (_ref) { var currentSAR = _ref.currentSAR; return !currentSAR; }, Object(Recompose["e" /* renderComponent */])(CenteredLoader["a" /* default */])))(GdprNewSubjectAccessValidateReport_GdprValidateReportContainer); var mapToStateProps = function mapToStateProps(_ref2) { var _ref2$GDPR = _ref2.GDPR, isFetchingJsonReportError = _ref2$GDPR.isFetchingJsonReportError, currentSAR = _ref2$GDPR.currentSAR, isLookingForReport = _ref2$GDPR.isLookingForReport, isFetchingRegenerateReport = _ref2$GDPR.isFetchingRegenerateReport, regenerateReportError = _ref2$GDPR.regenerateReportError, regenerateReportSuccess = _ref2$GDPR.regenerateReportSuccess, features = _ref2.core.features; return { isFetchingJsonReportError: isFetchingJsonReportError, isLookingForReport: isLookingForReport, currentSAR: currentSAR, isFetchingRegenerateReport: isFetchingRegenerateReport, regenerateReportError: regenerateReportError, regenerateReportSuccess: regenerateReportSuccess, // isExtendedSar: hasFeature('extended-sar'), // this selector is useless really -df isExtendedSar: features.includes('extended-sar') }; }; var GdprNewSubjectAccessValidateReport_mapDispatchToProps = function mapDispatchToProps(dispatch, _ref3) { var id = _ref3.match.params.id; return { onResetRegenerateSARReportAction: function onResetRegenerateSARReportAction() { dispatch(Object(actions["H" /* resetRegenerateSARReportAction */])()); }, onResetPostExtendReportAction: function onResetPostExtendReportAction() { dispatch(Object(actions["G" /* resetPostExtendReportAction */])()); }, approveReport: function approveReport(sar, reportSettings, reportSettingsHasBeenTouched) { if (!reportSettingsHasBeenTouched) { dispatch(Object(actions["wb" /* shouldSaveSarAndNavigate */])(objectSpread_default()({}, sar, { State: 3 }), "/gdpr/edit/sendReport/".concat(id))); } else { dispatch(Object(actions["tb" /* shouldRegenerateSARReport */])(sar, reportSettings)); } }, startPolling: function startPolling(sar) { dispatch(Object(actions["Bb" /* shouldStartPollingForReport */])(sar)); }, stopPooling: function stopPooling() { Object(actions["T" /* shouldClearLongPoolingForReport */])(); }, goToPreviousSARFlowStep: function goToPreviousSARFlowStep() { dispatch(Object(lib["push"])("/gdpr/edit/findEntity/".concat(id))); } }; }; /* harmony default export */ var GdprNewSubjectAccessValidateReport = __webpack_exports__["default"] = (Object(es["connect"])(mapToStateProps, GdprNewSubjectAccessValidateReport_mapDispatchToProps)(GdprValidateReportContainerEnhanced)); /***/ }) }]);