Finish Volumesview.vue

This commit is contained in:
Johannes Zellner
2024-12-27 22:25:00 +01:00
parent 2167b1fc6b
commit dd264617d7
4 changed files with 304 additions and 67 deletions
+42 -2
View File
@@ -13,7 +13,7 @@ export function createVolumesModel(origin, accessToken) {
}
if (error || result.status !== 200) {
console.error('Failed to list volumes.', error, result.status);
console.error('Failed to list volumes.', error, result);
return [];
}
@@ -28,11 +28,51 @@ export function createVolumesModel(origin, accessToken) {
}
if (error || result.status !== 200) {
console.error('Failed to get volume status.', error, result.status);
console.error('Failed to get volume status.', error, result);
return {};
}
return result.body;
},
async remount(id) {
let error, result;
try {
result = await fetcher.post(`${origin}/api/v1/volumes/${id}/remount`, {}, { access_token: accessToken });
} catch (e) {
error = e;
}
if (error || result.status !== 202) console.error('Failed to remount volume.', error, result);
},
async add(name, mountType, mountOptions) {
let error, result;
try {
result = await fetcher.post(`${origin}/api/v1/volumes`, { name, mountType, mountOptions }, { access_token: accessToken });
} catch (e) {
error = e;
}
if (error || result.status !== 201) throw error || result;
},
async update(id, mountOptions) {
let error, result;
try {
result = await fetcher.post(`${origin}/api/v1/volumes/${id}`, { mountOptions }, { access_token: accessToken });
} catch (e) {
error = e;
}
if (error || result.status !== 204) throw error || result;
},
async remove(id) {
let error, result;
try {
result = await fetcher.del(`${origin}/api/v1/volumes/${id}`, { access_token: accessToken });
} catch (e) {
error = e;
}
if (error || result.status !== 204) throw error || result;
}
};
}