mirror of
https://github.com/inventree/InvenTree.git
synced 2025-06-14 11:05:41 +00:00
Fix error handling for template editor (#9770)
* Fix error handling for template editor * Remove logging
This commit is contained in:
@ -3,6 +3,7 @@ import { forwardRef, useImperativeHandle, useState } from 'react';
|
||||
|
||||
import { ApiEndpoints } from '@lib/enums/ApiEndpoints';
|
||||
import { apiUrl } from '@lib/functions/Api';
|
||||
import { t } from '@lingui/core/macro';
|
||||
import { api } from '../../../../App';
|
||||
import type { PreviewAreaComponent } from '../TemplateEditor';
|
||||
|
||||
@ -45,14 +46,21 @@ export const PdfPreviewComponent: PreviewAreaComponent = forwardRef(
|
||||
);
|
||||
|
||||
if (preview.status !== 200 && preview.status !== 201) {
|
||||
if (preview.data?.non_field_errors) {
|
||||
throw new Error(preview.data?.non_field_errors.join(', '));
|
||||
let message: string =
|
||||
preview.data?.toString() ?? t`Error rendering preview`;
|
||||
|
||||
for (const field of ['non_field_errors', 'detail', 'error']) {
|
||||
if (preview.data?.[field]) {
|
||||
message = preview.data[field].join(', ');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
throw new Error(preview.data);
|
||||
throw new Error(message);
|
||||
}
|
||||
|
||||
let outputUrl = preview?.data?.output;
|
||||
|
||||
if (preview.data && !preview.data.complete) {
|
||||
outputUrl = await new Promise((res, rej) => {
|
||||
let cnt = 0;
|
||||
|
Reference in New Issue
Block a user