diff options
Diffstat (limited to 'app/assets/javascripts/packages/details/store/actions.js')
-rw-r--r-- | app/assets/javascripts/packages/details/store/actions.js | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/app/assets/javascripts/packages/details/store/actions.js b/app/assets/javascripts/packages/details/store/actions.js index 87216366c8b..a03fa8d9d63 100644 --- a/app/assets/javascripts/packages/details/store/actions.js +++ b/app/assets/javascripts/packages/details/store/actions.js @@ -1,6 +1,10 @@ import Api from '~/api'; -import { deprecatedCreateFlash as createFlash } from '~/flash'; -import { DELETE_PACKAGE_ERROR_MESSAGE } from '~/packages/shared/constants'; +import createFlash from '~/flash'; +import { + DELETE_PACKAGE_ERROR_MESSAGE, + DELETE_PACKAGE_FILE_ERROR_MESSAGE, + DELETE_PACKAGE_FILE_SUCCESS_MESSAGE, +} from '~/packages/shared/constants'; import { FETCH_PACKAGE_VERSIONS_ERROR } from '../constants'; import * as types from './mutation_types'; @@ -16,7 +20,7 @@ export const fetchPackageVersions = ({ commit, state }) => { } }) .catch(() => { - createFlash(FETCH_PACKAGE_VERSIONS_ERROR); + createFlash({ message: FETCH_PACKAGE_VERSIONS_ERROR, type: 'warning' }); }) .finally(() => { commit(types.SET_LOADING, false); @@ -29,6 +33,27 @@ export const deletePackage = ({ }, }) => { return Api.deleteProjectPackage(project_id, id).catch(() => { - createFlash(DELETE_PACKAGE_ERROR_MESSAGE); + createFlash({ message: DELETE_PACKAGE_ERROR_MESSAGE, type: 'warning' }); }); }; + +export const deletePackageFile = ( + { + state: { + packageEntity: { project_id, id }, + packageFiles, + }, + commit, + }, + fileId, +) => { + return Api.deleteProjectPackageFile(project_id, id, fileId) + .then(() => { + const filtered = packageFiles.filter((f) => f.id !== fileId); + commit(types.UPDATE_PACKAGE_FILES, filtered); + createFlash({ message: DELETE_PACKAGE_FILE_SUCCESS_MESSAGE, type: 'success' }); + }) + .catch(() => { + createFlash({ message: DELETE_PACKAGE_FILE_ERROR_MESSAGE, type: 'warning' }); + }); +}; |