mirror of
https://github.com/portainer/portainer.git
synced 2025-08-04 13:25:26 +02:00
refactor(kube/volumes): migrate to react [EE-4695] (#10987)
This commit is contained in:
parent
2b53bebcb3
commit
da615afc92
24 changed files with 347 additions and 397 deletions
|
@ -3,7 +3,6 @@ import filesizeParser from 'filesize-parser';
|
|||
import angular from 'angular';
|
||||
import KubernetesVolumeHelper from 'Kubernetes/helpers/volumeHelper';
|
||||
import KubernetesResourceQuotaHelper from 'Kubernetes/helpers/resourceQuotaHelper';
|
||||
import { confirmDelete } from '@@/modals/confirm';
|
||||
|
||||
function buildStorages(storages, volumes) {
|
||||
_.forEach(storages, (s) => {
|
||||
|
@ -36,37 +35,30 @@ class KubernetesVolumesController {
|
|||
this.getVolumes = this.getVolumes.bind(this);
|
||||
this.getVolumesAsync = this.getVolumesAsync.bind(this);
|
||||
this.removeAction = this.removeAction.bind(this);
|
||||
this.removeActionAsync = this.removeActionAsync.bind(this);
|
||||
}
|
||||
|
||||
selectTab(index) {
|
||||
this.LocalStorage.storeActiveTab('volumes', index);
|
||||
}
|
||||
|
||||
async removeActionAsync(selectedItems) {
|
||||
let actionCount = selectedItems.length;
|
||||
for (const volume of selectedItems) {
|
||||
try {
|
||||
await this.KubernetesVolumeService.delete(volume);
|
||||
this.Notifications.success('Volume successfully removed', volume.PersistentVolumeClaim.Name);
|
||||
const index = this.volumes.indexOf(volume);
|
||||
this.volumes.splice(index, 1);
|
||||
} catch (err) {
|
||||
this.Notifications.error('Failure', err, 'Unable to remove volume');
|
||||
} finally {
|
||||
--actionCount;
|
||||
if (actionCount === 0) {
|
||||
this.$state.reload(this.$state.current);
|
||||
async removeAction(selectedItems) {
|
||||
return this.$async(async () => {
|
||||
let actionCount = selectedItems.length;
|
||||
for (const volume of selectedItems) {
|
||||
try {
|
||||
await this.KubernetesVolumeService.delete(volume);
|
||||
this.Notifications.success('Volume successfully removed', volume.PersistentVolumeClaim.Name);
|
||||
const index = this.volumes.indexOf(volume);
|
||||
this.volumes.splice(index, 1);
|
||||
} catch (err) {
|
||||
this.Notifications.error('Failure', err, 'Unable to remove volume');
|
||||
} finally {
|
||||
--actionCount;
|
||||
if (actionCount === 0) {
|
||||
this.$state.reload(this.$state.current);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
removeAction(selectedItems) {
|
||||
confirmDelete('Do you want to remove the selected volume(s)?').then((confirmed) => {
|
||||
if (confirmed) {
|
||||
return this.$async(this.removeActionAsync, selectedItems);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue