diff --git a/cvat-ui/src/components/labels-editor/label-form.tsx b/cvat-ui/src/components/labels-editor/label-form.tsx index 72fdbc90b0a..5e7f1b9256f 100644 --- a/cvat-ui/src/components/labels-editor/label-form.tsx +++ b/cvat-ui/src/components/labels-editor/label-form.tsx @@ -89,11 +89,15 @@ export default class LabelForm extends React.Component { attrValues = [attrValues]; } } + if (attrValues.length) { + attrValues.push(''); + } attrValues = attrValues.map((value: string) => value.trim()); return { ...attribute, values: attrValues, + default_value: attrValues[0], input_type: attribute.type.toLowerCase(), }; }), @@ -140,7 +144,6 @@ export default class LabelForm extends React.Component { { return ( - + False @@ -265,6 +267,8 @@ export default class LabelForm extends React.Component { const value = attr ? attr.values : ''; const validator = (_: any, strNumbers: string): Promise => { + if (typeof strNumbers !== 'string') return Promise.resolve(); + const numbers = strNumbers.split(';').map((number): number => Number.parseFloat(number)); if (numbers.length !== 3) { return Promise.reject(new Error('Three numbers are expected')); @@ -296,7 +300,6 @@ export default class LabelForm extends React.Component { return ( { if (attr?.input_type.toUpperCase() === 'TEXT') { return ( - + ); } return ( - + ); @@ -341,7 +344,6 @@ export default class LabelForm extends React.Component { diff --git a/cvat-ui/src/components/labels-editor/labels-editor.tsx b/cvat-ui/src/components/labels-editor/labels-editor.tsx index b185f32d467..d98ff042ecf 100644 --- a/cvat-ui/src/components/labels-editor/labels-editor.tsx +++ b/cvat-ui/src/components/labels-editor/labels-editor.tsx @@ -187,7 +187,7 @@ export default class LabelsEditor extends React.PureComponent