Merge remote-tracking branch 'upstream/develop' into dkru/cypress-test-issue-2411

main
Kruchinin 5 years ago
commit c1cd8dfb85

@ -26,7 +26,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Fixed ### Fixed
- Django templates for email and user guide (<https://github.com/openvinotoolkit/cvat/pull/2412>) - Django templates for email and user guide (<https://github.com/openvinotoolkit/cvat/pull/2412>)
- Saving relative paths in dummy chunks instead of absolute(<https://github.com/openvinotoolkit/cvat/pull/2424>) - Saving relative paths in dummy chunks instead of absolute (<https://github.com/openvinotoolkit/cvat/pull/2424>)
- Objects with a specific label cannot be displayed if at least one tag with the label exist (<https://github.com/openvinotoolkit/cvat/pull/2435>)
- Wrong attribute can be removed in labels editor (<https://github.com/openvinotoolkit/cvat/pull/2436>)
### Security ### Security

@ -1,6 +1,6 @@
{ {
"name": "cvat-ui", "name": "cvat-ui",
"version": "1.10.0", "version": "1.10.2",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {

@ -1,6 +1,6 @@
{ {
"name": "cvat-ui", "name": "cvat-ui",
"version": "1.10.0", "version": "1.10.2",
"description": "CVAT single-page application", "description": "CVAT single-page application",
"main": "src/index.tsx", "main": "src/index.tsx",
"scripts": { "scripts": {

@ -18,7 +18,9 @@ import ColorPicker from 'components/annotation-page/standard-workspace/objects-s
import { ColorizeIcon } from 'icons'; import { ColorizeIcon } from 'icons';
import patterns from 'utils/validation-patterns'; import patterns from 'utils/validation-patterns';
import consts from 'consts'; import consts from 'consts';
import { equalArrayHead, idGenerator, Label, Attribute } from './common'; import {
equalArrayHead, idGenerator, Label, Attribute,
} from './common';
export enum AttributeType { export enum AttributeType {
SELECT = 'SELECT', SELECT = 'SELECT',
@ -318,9 +320,9 @@ class LabelForm extends React.PureComponent<Props, {}> {
); );
} }
private renderAttribute = (key: number, index: number): JSX.Element => { private renderAttribute = (key: number): JSX.Element => {
const { label, form } = this.props; const { label, form } = this.props;
const attr = label && index < label.attributes.length ? label.attributes[index] : null; const attr = label ? label.attributes.filter((_attr: any): boolean => _attr.id === key)[0] : null;
return ( return (
<Form.Item key={key}> <Form.Item key={key}>

@ -8,7 +8,7 @@ import { connect } from 'react-redux';
import { updateAnnotationsAsync } from 'actions/annotation-actions'; import { updateAnnotationsAsync } from 'actions/annotation-actions';
import LabelItemComponent from 'components/annotation-page/standard-workspace/objects-side-bar/label-item'; import LabelItemComponent from 'components/annotation-page/standard-workspace/objects-side-bar/label-item';
import { CombinedState } from 'reducers/interfaces'; import { CombinedState, ObjectType } from 'reducers/interfaces';
interface OwnProps { interface OwnProps {
labelID: number; labelID: number;
@ -92,8 +92,8 @@ class LabelItemContainer extends React.PureComponent<Props, State> {
let statesLocked = true; let statesLocked = true;
ownObjectStates.forEach((objectState: any) => { ownObjectStates.forEach((objectState: any) => {
const { lock } = objectState; const { lock, objectType } = objectState;
if (!lock) { if (!lock && objectType !== ObjectType.TAG) {
statesHidden = statesHidden && objectState.hidden; statesHidden = statesHidden && objectState.hidden;
statesLocked = statesLocked && objectState.lock; statesLocked = statesLocked && objectState.lock;
} }

Loading…
Cancel
Save