From 8164e4d316b3d4ffdd0ba2aa599bbc0f9b454598 Mon Sep 17 00:00:00 2001 From: "andre.schmid" Date: Mon, 11 Apr 2022 15:58:59 +0100 Subject: Add delete button for archived VLM Adds a delete button for archived VLM in the VLM versions page. Asks for a confirmation before deleting. As VSP and VLM shares the same button, adds also a confirmation before deleting the VSP. Change-Id: I90af23cf3cff15d85292c895fdba7021aaa9649a Issue-ID: SDC-3964 Signed-off-by: andre.schmid --- openecomp-ui/src/nfvo-utils/i18n/en.json | 9 ++++++- .../licenseModel/LicenseModelActionHelper.js | 13 ++++++---- .../onboarding/versionsPage/VersionsPage.js | 28 ++++++++++++++++++++-- .../onboarding/versionsPage/VersionsPage.jsx | 1 - .../versionsPage/VersionsPageActionHelper.js | 21 +++++++++++++--- 5 files changed, 60 insertions(+), 12 deletions(-) (limited to 'openecomp-ui') diff --git a/openecomp-ui/src/nfvo-utils/i18n/en.json b/openecomp-ui/src/nfvo-utils/i18n/en.json index 3a61fb3a6f..f0613bccf0 100644 --- a/openecomp-ui/src/nfvo-utils/i18n/en.json +++ b/openecomp-ui/src/nfvo-utils/i18n/en.json @@ -668,5 +668,12 @@ "upload.status.validating": "Package is in validation", "upload.status.processing": "Package is being processed", "upload.status.success": "Package was successfully uploaded", - "upload.status.error": "Package upload resulted in error" + "upload.status.error": "Package upload resulted in error", + "vlm.delete.modal.title": "Delete Archived VLM", + "vlm.delete.archived.warning": "Deleting a Vendor Licence Model cannot be undone. Do you want to proceed?", + "vlm.delete.success": "The Vendor Licence Model was successfully deleted", + "vsp.delete.archived.warning": "Deleting a Vendor Software Product cannot be undone. Do you want to proceed?", + "vsp.delete.success": "The Vendor Software Product was successfully deleted", + "button.proceed.label": "Proceed", + "item.delete.success": "The item was successful deleted" } diff --git a/openecomp-ui/src/sdc-app/onboarding/licenseModel/LicenseModelActionHelper.js b/openecomp-ui/src/sdc-app/onboarding/licenseModel/LicenseModelActionHelper.js index d6a3c8b095..6bcee2e3c0 100644 --- a/openecomp-ui/src/sdc-app/onboarding/licenseModel/LicenseModelActionHelper.js +++ b/openecomp-ui/src/sdc-app/onboarding/licenseModel/LicenseModelActionHelper.js @@ -17,7 +17,6 @@ import RestAPIUtil from 'nfvo-utils/RestAPIUtil.js'; import Configuration from 'sdc-app/config/Configuration.js'; import { actionTypes } from './LicenseModelConstants.js'; import { actionTypes as modalActionTypes } from 'nfvo-components/modal/GlobalModalConstants.js'; -import { actionsEnum as vcActionsEnum } from 'nfvo-components/panel/versionController/VersionControllerConstants.js'; import i18n from 'nfvo-utils/i18n/i18n.js'; import LicenseAgreementActionHelper from './licenseAgreement/LicenseAgreementActionHelper.js'; import FeatureGroupsActionHelper from './featureGroups/FeatureGroupsActionHelper.js'; @@ -147,7 +146,7 @@ const LicenseModelActionHelper = { const onCommit = comment => { return this.performVCAction(dispatch, { licenseModelId, - action: vcActionsEnum.COMMIT, + action: VersionControllerActionsEnum.COMMIT, version, comment }).then(() => { @@ -176,7 +175,7 @@ const LicenseModelActionHelper = { performSubmitAction(dispatch, { licenseModelId, version }) { return putLicenseModelAction({ itemId: licenseModelId, - action: vcActionsEnum.SUBMIT, + action: VersionControllerActionsEnum.SUBMIT, version }).then(() => { return ItemsHelper.checkItemStatus(dispatch, { @@ -231,7 +230,7 @@ const LicenseModelActionHelper = { return Promise.resolve(updatedVersion); } if (!inMerge) { - if (action === vcActionsEnum.SUBMIT) { + if (action === VersionControllerActionsEnum.SUBMIT) { return this.manageSubmitAction(dispatch, { licenseModelId, version, @@ -248,7 +247,7 @@ const LicenseModelActionHelper = { itemType: itemTypes.LICENSE_MODEL, itemId: licenseModelId }); - if (action === vcActionsEnum.SYNC) { + if (action === VersionControllerActionsEnum.SYNC) { return MergeEditorActionHelper.analyzeSyncResult( dispatch, { itemId: licenseModelId, version } @@ -286,6 +285,10 @@ const LicenseModelActionHelper = { } }); }); + }, + + deleteLicenseModel(licenseModelId) { + return RestAPIUtil.destroy(`${baseUrl()}/${licenseModelId}`); } }; diff --git a/openecomp-ui/src/sdc-app/onboarding/versionsPage/VersionsPage.js b/openecomp-ui/src/sdc-app/onboarding/versionsPage/VersionsPage.js index 61c0d0a88f..b7d5417e33 100644 --- a/openecomp-ui/src/sdc-app/onboarding/versionsPage/VersionsPage.js +++ b/openecomp-ui/src/sdc-app/onboarding/versionsPage/VersionsPage.js @@ -20,6 +20,9 @@ import VersionsPageCreationActionHelper from './creation/VersionsPageCreationAct import PermissionsActionHelper from '../permissions/PermissionsActionHelper.js'; import { onboardingMethod as onboardingMethodType } from 'sdc-app/onboarding/softwareProduct/SoftwareProductConstants.js'; import VersionsPageView from './VersionsPage.jsx'; +import { actionTypes as ModalActionTypes } from 'nfvo-components/modal/GlobalModalConstants'; +import i18n from 'nfvo-utils/i18n/i18n'; +import { itemTypes } from 'sdc-app/onboarding/versionsPage/VersionsPageConstants'; export const mapStateToProps = ({ users: { userInfo }, @@ -99,8 +102,29 @@ export const mapActionsToProps = ( onArchive: () => VersionsPageActionHelper.archiveItem(dispatch, itemId), onRestore: () => VersionsPageActionHelper.restoreItemFromArchive(dispatch, itemId), - onDelete: () => - VersionsPageActionHelper.deleteItemFromArchive(dispatch, itemId) + onDelete: () => { + let confirmMsgCode; + if (itemType === itemTypes.LICENSE_MODEL) { + confirmMsgCode = 'vlm.delete.archived.warning'; + } else if (itemType === itemTypes.SOFTWARE_PRODUCT) { + confirmMsgCode = 'vsp.delete.archived.warning'; + } + dispatch({ + type: ModalActionTypes.GLOBAL_MODAL_WARNING, + data: { + msg: i18n(confirmMsgCode), + confirmationButtonText: i18n('button.proceed.label'), + title: i18n('WARNING'), + + onConfirmed: () => + VersionsPageActionHelper.deleteArchivedItem( + dispatch, + itemId, + itemType + ) + } + }); + } }; }; diff --git a/openecomp-ui/src/sdc-app/onboarding/versionsPage/VersionsPage.jsx b/openecomp-ui/src/sdc-app/onboarding/versionsPage/VersionsPage.jsx index 95c7530063..e5bff51e9f 100644 --- a/openecomp-ui/src/sdc-app/onboarding/versionsPage/VersionsPage.jsx +++ b/openecomp-ui/src/sdc-app/onboarding/versionsPage/VersionsPage.jsx @@ -28,7 +28,6 @@ const ArchiveRestoreButton = ({ deleteAction }) => (
- , {isArchived ? (