195 Commits (bcaca0369fea1726cb8e361800da0a852125de5a)

Author SHA1 Message Date
Roman Donchenko 1d00e515b9
Fix ESLint errors in session.ts (#5540)
The main problem is the circular dependency between `session.ts` and
`annotations.ts`. To fix it, split the second half of `session.ts` into
a separate file, like what is currently done with `project.ts` and
`project-implementation.ts`.

<!-- Raised an issue to propose your change
(https://github.com/cvat-ai/cvat/issues).
It helps to avoid duplication of efforts from multiple independent
contributors.
Discuss your ideas with maintainers to be sure that changes will be
approved and merged.
Read the
[CONTRIBUTION](https://github.com/cvat-ai/cvat/blob/develop/CONTRIBUTING.md)
guide. -->

<!-- Provide a general summary of your changes in the Title above -->

### Motivation and context
<!-- Why is this change required? What problem does it solve? If it
fixes an open
issue, please link to the issue here. Describe your changes in detail,
add
screenshots. -->

### How has this been tested?
Manual testing.
<!-- Please describe in detail how you tested your changes.
Include details of your testing environment, and the tests you ran to
see how your change affects other areas of the code, etc. -->

### Checklist
<!-- Go over all the following points, and put an `x` in all the boxes
that apply.
If an item isn't applicable by a reason then ~~explicitly
strikethrough~~ the whole
line. If you don't do that github will show an incorrect process for the
pull request.
If you're unsure about any of these, don't hesitate to ask. We're here
to help! -->
- [x] I submit my changes into the `develop` branch
- ~~[ ] I have added a description of my changes into
[CHANGELOG](https://github.com/cvat-ai/cvat/blob/develop/CHANGELOG.md)
file~~
- ~~[ ] I have updated the [documentation](
https://github.com/cvat-ai/cvat/blob/develop/README.md#documentation)
accordingly~~
- ~~[ ] I have added tests to cover my changes~~
- ~~[ ] I have linked related issues ([read github docs](

https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword))~~
- ~~[ ] I have increased versions of npm packages if it is necessary
([cvat-canvas](https://github.com/cvat-ai/cvat/tree/develop/cvat-canvas#versioning),

[cvat-core](https://github.com/cvat-ai/cvat/tree/develop/cvat-core#versioning),
[cvat-data](https://github.com/cvat-ai/cvat/tree/develop/cvat-data#versioning)
and
[cvat-ui](https://github.com/cvat-ai/cvat/tree/develop/cvat-ui#versioning))~~

### License

- [x] I submit _my code changes_ under the same [MIT License](
https://github.com/cvat-ai/cvat/blob/develop/LICENSE) that covers the
project.
  Feel free to contact the maintainers if that's a concern.

Co-authored-by: Nikita Manovich <nikita@cvat.ai>
3 years ago
Roman Donchenko f0311a92ac
Fix some ESLint errors in cvat-core (#5537)
All of which are about old-style imports.
3 years ago
Andrey Zhavoronkov 1ecc607286
Get preview images on the fly and keep them in cache (#5478)
Improved image preview loading for **Tasks**, **Jobs** and **Projects**
views
Backend behaviour change: creating image previews by request and storing
them in the cache
Added corresponding endpoints:
tasks/{id}/preview
projects/{id}/preview
jobs/{id}/preview

Demonstration(added random 0-1s delay for demo purposes):
https://user-images.githubusercontent.com/41117609/208106321-951b8647-6e6b-452e-910c-31c4d0b8682d.mp4
https://user-images.githubusercontent.com/41117609/208106339-2d3a5a7b-d422-4b27-9e76-08729022e1ca.mp4
3 years ago
Maria Khrustaleva a3b4f97f9a
Improve social authentication (#5349) 3 years ago
Andrey Zhavoronkov 980c019427
PostgresSQL DB v15 and health check endpoint (#5312) 3 years ago
Kirill Lakhov 19b2643e69
Allowed to upload `.xml` and `.json` annotation files from UI (#5386)
<!-- Raised an issue to propose your change
(https://github.com/cvat-ai/cvat/issues).
It helps to avoid duplication of efforts from multiple independent
contributors.
Discuss your ideas with maintainers to be sure that changes will be
approved and merged.
Read the
[CONTRIBUTION](https://github.com/cvat-ai/cvat/blob/develop/CONTRIBUTING.md)
guide. -->

<!-- Provide a general summary of your changes in the Title above -->

### Motivation and context
<!-- Why is this change required? What problem does it solve? If it
fixes an open
issue, please link to the issue here. Describe your changes in detail,
add
screenshots. -->
Resolved #5274
+ Fixed typo in tests

### How has this been tested?
<!-- Please describe in detail how you tested your changes.
Include details of your testing environment, and the tests you ran to
see how your change affects other areas of the code, etc. -->

### Checklist
<!-- Go over all the following points, and put an `x` in all the boxes
that apply.
If an item isn't applicable by a reason then ~~explicitly
strikethrough~~ the whole
line. If you don't do that github will show an incorrect process for the
pull request.
If you're unsure about any of these, don't hesitate to ask. We're here
to help! -->
- [x] I submit my changes into the `develop` branch
- [x] I have added a description of my changes into
[CHANGELOG](https://github.com/cvat-ai/cvat/blob/develop/CHANGELOG.md)
file
- [ ] I have updated the [documentation](
https://github.com/cvat-ai/cvat/blob/develop/README.md#documentation)
accordingly
- [x] I have added tests to cover my changes
- [x] I have linked related issues ([read github docs](

https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword))
- [x] I have increased versions of npm packages if it is necessary
([cvat-canvas](https://github.com/cvat-ai/cvat/tree/develop/cvat-canvas#versioning),

[cvat-core](https://github.com/cvat-ai/cvat/tree/develop/cvat-core#versioning),
[cvat-data](https://github.com/cvat-ai/cvat/tree/develop/cvat-data#versioning)
and
[cvat-ui](https://github.com/cvat-ai/cvat/tree/develop/cvat-ui#versioning))

### License

- [x] I submit _my code changes_ under the same [MIT License](
https://github.com/cvat-ai/cvat/blob/develop/LICENSE) that covers the
project.
  Feel free to contact the maintainers if that's a concern.
3 years ago
Roman Donchenko 85b5547541
Make the server proxy's properties visible to static analysis (#5345)
Currently, all properties of the server proxy object are created using
`Object.defineProperties` in the constructor, which means that IDEs like
VS Code can't analyze the file's static structure to determine what
properties there are and what types they have. Consequently, things like
autocomplete and go-to-definition don't work.

Fix that by removing the `ServerProxy` class altogether and exporting an
anonymous object with all properties defined statically.
3 years ago
Kirill Lakhov 8705e2366c
Added force logout on CVAT app start if token is missing (#5331) 3 years ago
Maria Khrustaleva 08dd27d993
Fix missed token with using social account authentication (#5344) 3 years ago
Roman Donchenko c86746c785
Convert `api.ts`, `api-implementation.ts` and `frames.ts` to ES6 modules (#5283)
This fixes ESLint errors in these files.

Set the `resolveJsonModule` setting, so that TypeScript can recognize the
`package.json` import.
3 years ago
Boris Sekachev 7265553654
Supported type for all labels (#5273)
* Supported type for all labels

* Multiple fixes in UI for new type scheme

* Fixed on 3d annotation view

* Fixed tests

* Updated version && changelog

* Fixed test

* Added type

* Fixed typos

* Fixed minor comments
3 years ago
Kirill Lakhov 92ba1ab845
New authentication UI (#5181)
* Add social accounts authentication && improve email confirmation

* Pass env variables to docker

* Update helm chart

* Update email verification templates

* Small refactoring

* Send email verification && redirect to /auth/email-verification-sent

* added new login form

* added main assets

* added main social buttons

* changed reset password form

* refactored reset password page

* Fix helm chart

* Fix typo

* Pass enabled advanced auth methods to client

* Rename class

* Fix

* Fix helm

* Fix github scope

* changed register page

* adjusted no social auth methods

* Some fixes

* Fix schema generation

* Fixes

* Apply comments

* Update changelog

* added responsiveness, refactored inputs

* cleanup

* fixed email-confirmed.tsx

* updated reset page, changed style on register page

* added fonts, fixed some ui problems

* removed some code

* fixed index.html

* made resizing less expressed

* fixed form sizing, issue#5166

* fixed submiting form by enter

* made toggle bigger, fixed headers

* updated versions

* removed extra lines

* fixed fields on form

* changed tests

* fixed more tests

* fixed comments

* reverted header

* added grid-unit-size for height, removed for fonts

* added new animation

Co-authored-by: Maya <maya17grd@gmail.com>
3 years ago
Maria Khrustaleva bb487165dd
CVAT authentication (#5147) 3 years ago
Boris Sekachev f62aa276cd
Added paint brush tools (#4543) 3 years ago
Boris Sekachev 02eba10b45
Fixed issue: cannot assign a resource to a user who has an organization (#5218) 3 years ago
Roman Donchenko 80c72340f8
Fix ESLint errors in cvat-core/src/server-proxy.ts (#5189)
* Fix incorrect requires of the ./config module

It's an ES6 module, so we need to use the `default` field, or we'll get the
module itself instead.

* Fix ESLint errors in cvat-core/src/server-proxy.ts

Specifically:

* `padded-blocks`
* `@typescript-eslint/no-var-requires`
* `@typescript-eslint/return-await`
3 years ago
Andrey Zhavoronkov 570bc3880f
Added user_registered signal (#5007) 3 years ago
Kirill Lakhov b7371ede35
Enabled authentication via email (#5037) 3 years ago
Kirill Lakhov f719f58df4
Fix ESlint problems / typescript for cvat-core (#5027)
* typescripted some files

* typescripted cloud storage

* reverted api-implementation, fixed minor errors

* updated changelog

* fixed jest test

* updated file: to link:

Co-authored-by: Boris Sekachev <boris.sekachev@yandex.ru>
3 years ago
Kirill Sizov bae7564968
Add webhooks (#4863)
Co-authored-by: “klakhov” <kirill.lakhov@cvat.ai>
Co-authored-by: Boris <sekachev.bs@gmail.com>
Co-authored-by: kirill-sizov <kirill.sizov@intel.com>
3 years ago
Maria Khrustaleva 56e8c1eb82
Cypress tests for source & target storage (#4914)
* Draft version

* Implemented import & fixed export && some code cleanup && some fixes &&  updated notifications

* Refactoring && fixed several bugs

* Update licence headers && small fixes

* Update remaining licence headers && small changes

* Fix part of tests

* Fix tests

* Remove unused code

* Fix part of comments

* Some fixes

* Move file download process to job

* Rename methods

* Small fix

* Fix storages configuration for tasks

* Styles

* Remove unused

* Change storage configuration && fix forms reset && some fixes

* Update imports

* Remove extra argument type

* Add catch

* Fix import backup from local

* Import architecture refactoring && some fixes

* Rename props

* Small reorganization of export architecture &&  minor fixes

* Remove unused import

* Small fix && skip error notification when no permissions

* Fix project creating

* Fix part of eslint issues

* Fix eslint

* Fix eslint

* Fix eslint

* eslint

* Fix some eslint issues

* Combine uploadAnnotations and importDataset

* Fix annotation uploading from local

* Update tests

* Fix annotation uploading

* Fix notification

* Update dependencies

* fix

* Update jest tests

* Skip error notification when no permissions

* Update case 91 92 canvas3d tests

* Styles

* Update icons

* eslint

* eslint

* eslint

* eslint

* Create & delete cloud storage

* Common part && export job annotations

* Update tests && add tests for project backup

* Fix typo

* Rename variables

* debug

* Revert timeout

* Fix server host

* Fix test with project backup restore

* small refactoring

* Update issue_2473_import_annotations_frames_dots_in_name
3 years ago
rhee-elten 15565cb952
FIX: Remove a possibly duplicated encodeURI() (Issue #4428) (#4947)
* FIX: Remove possibly duplicated encodeURI() to prevent double encode non-ascii path (Issue #4428 Cannot connect file share,cannot recognize non-ascii path)

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Boris Sekachev <sekachev.bs@gmail.com>
3 years ago
Maria Khrustaleva 9f89787f95
Source & target storage support (#4842) 3 years ago
Boris Sekachev 6410b86a4e
Added end-to-end Cypress tests for Skeletons pipeline (#4892)
* Updated config

* Added skeleton drawing

* Added first cypresst test with skeletons

* Reworked split

* Added drawing/merging/splitting

* Fixed IDs order

* Fixed case 107
4 years ago
Boris Sekachev 99a1be045b
Fixed issue: Maximum callstack exceed (#4836)
* Fixed issue: Maximum callstack exceed

* Updated version & changelog
4 years ago
Boris Sekachev 3db9c2d996
Some fixes for skeleton patch related with merge & delete, undo/redo (#4875)
* Fixed merge after changing server API scheme

* Fixed some delete-undo related issues

* Fixed server id assignment

* Fixed selection a skeleton point

* Updated versions

* Applied some comments

* Updated version

* Fixed stylelint

* Updated license headers
4 years ago
Boris Sekachev f332d922ea
Fixed project filtration (#4878)
* Fixed project filtration

* Updated version & changelog
4 years ago
Boris Sekachev 7e20b279af
Added support of skeletons (#1) 4 years ago
Boris Sekachev 987a09201b
Typescripted cvat-core, cvat-data (#120)
* Typescripted cvat-core, cvat-data

* Removed unused import

* Fixed two issues

* Fixed comments

* Removed duplicated line
4 years ago
Boris Sekachev 4f1a778d22
Fixed Intel license headers (#119) 4 years ago
Boris Sekachev f960da9117
Added ability to delete frames (#10)
Co-authored-by: Dmitry Kalinin <dmitry.kalinin@intel.com>
Co-authored-by: Nikita Manovich <nikita.manovich@gmail.com>
Co-authored-by: Boris Sekachev <b.sekachev@yandex.ru>
4 years ago
Kirill Lakhov cb896ecab2
Tus for backups (#9) 4 years ago
Boris Sekachev 2d522c8781
Prepare UI for attributes configuration (#4)
* Prepare UI for attributes configuration

* Add padding for label attributes

* Update attributes inference logic

Check the attributes returned by nuclio function call and reject those that
have either incompatible types or values.

* Update cvat-ui version, CHANGELOG.md

* Enhance automatic annotation BE logic

The code in lambda_manager didn't account for attributes mappings that had
different names thus returning an empty set of attributes because it couldn't
find the correct match. Fix this by getting proper mapping from `attrMapping`
property of the input data.

* Updated CHANGELOG

* Updated changelog

* Adjusted code & feature

* A bit adjusted layout

* Minor refactoring

* Fixed bug when run auto annotation without 'attributes' key

* Fixed a couple of minor issues

* Increased access key id length

* Fixed unit tests

* Merged develop

* Rejected unnecessary change

Co-authored-by: Artem Zhivoderov <artemz@retailnext.net>
4 years ago
Kirill Lakhov aebb70c303
Fixed bug: task creation progressbar (#13)
fixed rounding in callbacks
4 years ago
Dmitry Kalinin d22b12df6e
EXIF orientation support (#4529)
Co-authored-by: Andrey Zhavoronkov <andrey.zhavoronkov@intel.com>
Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
Co-authored-by: Maria Khrustaleva <maya17grd@gmail.com>
4 years ago
Kirill Lakhov bceae228a7
Tus for project dataset (#4485) 4 years ago
Kirill Lakhov 1fa2676a56
Tus for task annotations import (#4327)
* add data_type to tus mixin

* added tus for task annotations import

* added tus for jobs annotations import

* applied comments

* fix test

* fix incorrect upload endpoint

* add location creation based on origin

* remove unused import

* remove data_type

* remove unused comment

* update changelog to new release

Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
4 years ago
Boris Sekachev 1225fbb1bc
Enhanced filtration/sorting for tasks/projects/tasks in projects/cloud storages (#4409) 4 years ago
Boris Sekachev b5bac8c0a5
Jobs page: advanced filtration and implemented sorting (#4319)
Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
Co-authored-by: Maya <maya17grd@gmail.com>
4 years ago
Maria Khrustaleva 83126c7b5a
API versioning using accept header (#4239) 4 years ago
Boris Sekachev 7f86a5d801
Added a page with jobs (#4258) 4 years ago
Boris Sekachev 3c750d4efc
Fixed corner case during search (#4198)
* Fixed corner case during search

* Updated version & changelog

* Added tests
4 years ago
Boris Sekachev bc4ff49bf0
Fixed: Could not receive frame N. TypeError: Cannot read properties of undefined (#4187)
* Fixed issue with async frames fetching

* Updated versions and changelog
4 years ago
Boris Sekachev 796991a1aa
Added intelligent function when paste labels to another task (#4161)
* Added intelligent paste labels function, added notification when remove labels from raw editor

* Adjusted raw tab behaviour

* Fixed issue with selection

* Updated version and changelog, removed previous implementation

* Removed outdated comment

* Additional checks on the server

* Added check for default boolean attr

* Updated version

* Conditionally show lost labels/attributes

* Remove labels only when create

Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
4 years ago
Boris Sekachev b85a4ad77c
Added support of ellipses (#4062) 4 years ago
Kirill Lakhov 8e4dd14de0
Fix task data upload progress bar (#4134)
* fix progressbar

* updated changelog, changed progress check
4 years ago
Boris Sekachev 1cd2ea06b0
Fixed copy/paste for rotated shapes (#4061)
* Fixed copy/paste for rotated shapes

* Updated version

* Fixed issue with cropping rotated box after paste

* Checking constraints not only when create, but also when paste

* Do not enable autoborders when paste shape

* Fixed test. Getting circles coordinates is not correct way to check coordinates matching because they are in different coordinate spaces

* Using dedicated function to get points
4 years ago
Kirill Lakhov 69d3ad79f6
Add documentation/tests for tasks large files uploads (#4036)
* added api documentation

* added test with 108mb file

* fixed linter issues

* added upload chunk size param

* fixed initialization

* udpated doc for uploadChunkSize

* reworked setting as global

* small fix

* moved uploadChunkSize setting setup to hooks

* fix comments

* change this to globalThis
4 years ago
Nikita Manovich 4708b5ecf8
IAM: Open Policy Agent integration (#3788)
Co-authored-by: Boris Sekachev <boris.sekachev@intel.com>
Co-authored-by: Dmitry Kruchinin <dmitryx.kruchinin@intel.com>
4 years ago
Andrey Zhavoronkov 32d9fb09be
Project backups (#3852) 4 years ago