Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 41 additions & 3 deletions core/http/views/model-editor.html
Original file line number Diff line number Diff line change
Expand Up @@ -833,8 +833,24 @@ <h2 class="text-xl font-semibold text-[#E5E7EB] flex items-center gap-3">
});

if (!response.ok) {
const error = await response.json().catch(() => ({ error: 'Failed to start import' }));
throw new Error(error.error || 'Failed to start import');
const errorData = await response.json().catch(() => ({ message: 'Failed to start import' }));
// Extract error message from various possible formats
// Handle nested error object: {"error": {"message": "...", "code": 500}}
let errorMessage = 'Failed to start import';
if (errorData.error) {
if (typeof errorData.error === 'object' && errorData.error.message) {
errorMessage = errorData.error.message;
} else if (typeof errorData.error === 'string') {
errorMessage = errorData.error;
}
} else if (errorData.message) {
errorMessage = errorData.message;
} else if (errorData.Error) {
errorMessage = errorData.Error;
} else {
errorMessage = JSON.stringify(errorData);
}
throw new Error(errorMessage);
}

const result = await response.json();
Expand Down Expand Up @@ -1053,6 +1069,27 @@ <h2 class="text-xl font-semibold text-[#E5E7EB] flex items-center gap-3">
body: yamlContent
});

if (!response.ok) {
const errorData = await response.json().catch(() => ({ message: 'Failed to save configuration' }));
// Extract error message from various possible formats
// Handle nested error object: {"error": {"message": "...", "code": 500}}
let errorMessage = 'Failed to save configuration';
if (errorData.error) {
if (typeof errorData.error === 'object' && errorData.error.message) {
errorMessage = errorData.error.message;
} else if (typeof errorData.error === 'string') {
errorMessage = errorData.error;
}
} else if (errorData.message) {
errorMessage = errorData.message;
} else if (errorData.Error) {
errorMessage = errorData.Error;
} else {
errorMessage = JSON.stringify(errorData);
}
throw new Error(errorMessage);
}

const result = await response.json();

if (result.success) {
Expand All @@ -1063,7 +1100,8 @@ <h2 class="text-xl font-semibold text-[#E5E7EB] flex items-center gap-3">
}, 2000);
}
} else {
this.showAlert('error', result.error || 'Failed to save configuration');
const errorMessage = result.message || result.error || result.Error || 'Failed to save configuration';
this.showAlert('error', errorMessage);
}
} catch (error) {
this.showAlert('error', 'Failed to save: ' + error.message);
Expand Down
Loading