Revision c57f5639
Added by Ondřej Pražák about 5 years ago
webpack/assets/javascripts/react_app/components/common/forms/Form.js | ||
---|---|---|
}) => (
|
||
<form className={className} onSubmit={onSubmit}>
|
||
{error && (
|
||
<Alert className="base in fade" type={error.severity}>
|
||
<Alert className="base in fade" type={error.severity || 'danger'}>
|
||
<AlertBody title={errorTitle}>
|
||
{error.errorMsgs.length === 1 ? (
|
||
<span>{error.errorMsgs[0]}</span>
|
webpack/assets/javascripts/react_app/redux/actions/common/forms.js | ||
---|---|---|
import { addToast } from '../toasts';
|
||
import { sprintf, translate as __ } from '../../../../react_app/common/I18n';
|
||
|
||
const fieldErrors = ({ error }, defaultSeverity) => {
|
||
const { errors, severity = defaultSeverity } = error;
|
||
const fieldErrors = ({ error }) => {
|
||
const { errors, severity } = error;
|
||
|
||
if (errors.base) {
|
||
errors._error = {};
|
||
... | ... | |
};
|
||
|
||
const onError = error => {
|
||
const severity = 'danger';
|
||
if (error.response.status === 422) {
|
||
// Handle invalid form data
|
||
throw fieldErrors(error.response.data, severity);
|
||
throw fieldErrors(error.response.data);
|
||
}
|
||
throw new SubmissionError({
|
||
_error: {
|
||
severity,
|
||
errorMsgs: [
|
||
`${__('Error submitting data:')} ${error.response.status} ${__(
|
||
error.response.statusText
|
webpack/assets/javascripts/react_app/redux/actions/common/forms.test.js | ||
---|---|---|
name: 'already used',
|
||
_error: {
|
||
errorMsgs: ['some error'],
|
||
severity: 'danger',
|
||
},
|
||
});
|
||
});
|
Also available in: Unified diff
Refs #26105 - Return back the missing change