From f341419f22e708231bb79f314deb3f65ee074853 Mon Sep 17 00:00:00 2001 From: Boris Sekachev <40690378+bsekachev@users.noreply.github.com> Date: Tue, 30 Jul 2019 13:04:37 +0300 Subject: [PATCH] Base code and settings for cvat-canvas (#594) --- cvat-canvas/.eslintrc.js | 44 +++++ cvat-canvas/README.md | 63 ++++--- cvat-canvas/images/states.png | Bin 132553 -> 0 bytes cvat-canvas/images/states.svg | 340 ++++++++++++++++++++++++++++++++++ cvat-canvas/package.json | 6 +- cvat-canvas/src/canvas.ts | 84 ++++++++- cvat-canvas/tsconfig.json | 4 +- cvat-canvas/webpack.config.js | 13 +- cvat-core/package.json | 1 + 9 files changed, 527 insertions(+), 28 deletions(-) create mode 100644 cvat-canvas/.eslintrc.js delete mode 100644 cvat-canvas/images/states.png create mode 100644 cvat-canvas/images/states.svg diff --git a/cvat-canvas/.eslintrc.js b/cvat-canvas/.eslintrc.js new file mode 100644 index 00000000..923ddd26 --- /dev/null +++ b/cvat-canvas/.eslintrc.js @@ -0,0 +1,44 @@ +/* + * Copyright (C) 2018 Intel Corporation + * + * SPDX-License-Identifier: MIT + */ + + module.exports = { + "env": { + "node": true, + "browser": true, + "es6": true, + }, + "parserOptions": { + "parser": "@typescript-eslint/parser", + "sourceType": "module", + "ecmaVersion": 6, + }, + "plugins": [ + "security", + "no-unsanitized", + "no-unsafe-innerhtml", + "@typescript-eslint", + ], + "extends": [ + "eslint:recommended", + "plugin:security/recommended", + "plugin:no-unsanitized/DOM", + "plugin:@typescript-eslint/recommended", + "airbnb", + ], + "rules": { + "no-new": [0], + "class-methods-use-this": [0], + "no-plusplus": [0], + "no-restricted-syntax": [0, {"selector": "ForOfStatement"}], + "no-continue": [0], + "security/detect-object-injection": 0, + "indent": ["warn", 4], + "no-useless-constructor": 0, + "func-names": [0], + "no-console": [0], // this rule deprecates console.log, console.warn etc. because "it is not good in production code" + "@typescript-eslint/no-explicit-any": [0], + }, +}; diff --git a/cvat-canvas/README.md b/cvat-canvas/README.md index 535a6e25..783c5b46 100644 --- a/cvat-canvas/README.md +++ b/cvat-canvas/README.md @@ -1,7 +1,30 @@ -# Module +# Module CVAT-CANVAS -- Written on typescript -- Contains the class ```Canvas``` and the Enum ```Rotation``` +## Description +The CVAT module presents a canvas to viewing, drawing and editing of annotations. + +- It has been written on typescript +- It contains the class ```Canvas``` and the enum ```Rotation``` + +## Commands +- Building of the module from sources in the ```dist``` directory: + +```bash +npm run build +npm run build -- --mode=development # without a minification +``` + +- Running development server +```bash +npm run server +``` + +- Updating of a module version: +```bash +npm version patch # updated after minor fixes +npm version minor # updated after major changes which don't affect API compatibility with previous versions +npm version major # updated after major changes which affect API compatibility with previous versions +``` ## Creation Canvas is created by using constructor: @@ -26,22 +49,21 @@ Canvas itself handles: All methods are sync. -```js - html() => canvas HTML element - setup(const FrameData: frameData, [ObjectState]) => undefined - - activate(const number: clientID, const number: attributeID = null) => undefined // select if can't activate - rotate(const Rotation: Rotation.CLOCKWISE) => undefined - focus(const number: clientID, const number: padding) => undefined - fit() => undefined - grid(stepX, stepY, color, opacity) => undefined - - draw(shapeType, numberOfPoints = null, initializeState = null) => ObjectState - split(const boolean: enabled = false) => ObjectState || undefined - group(const boolean: enabled = false) => [ObjectState] || undefined - merge(const boolean: enabled = false) => [ObjectState] || undefined - - cancel() => undefined +```ts + html(): HTMLElement; + setup(frameData: FrameData, objectStates: ObjectState): void; + activate(clientID: number, attributeID?: number): void; + rotate(direction: Rotation): void; + focus(clientID: number, padding?: number): void; + fit(): void; + grid(stepX: number, stepY: number): void; + + draw(enabled?: boolean, shapeType?: string, numberOfPoints?: number, initialState?: any): void | ObjectState; + split(enabled?: boolean): void | ObjectState; + group(enabled?: boolean): void | ObjectState; + merge(enabled?: boolean): void | ObjectState; + + cancel(): any; ``` ### CSS Classes/IDs @@ -72,7 +94,7 @@ Standard JS events are used. ## States - ![](images/states.png) + ![](images/states.svg) ## API Reaction @@ -85,7 +107,6 @@ Standard JS events are used. | focus() | + | + | + | + | + | + | | fit() | + | + | + | + | + | + | | grid() | + | + | + | + | + | + | -| adjust() | + | + | + | + | + | + | | draw() | + | - | - | - | - | - | | split() | + | - | + | - | - | - | | group | + | + | - | - | - | - | diff --git a/cvat-canvas/images/states.png b/cvat-canvas/images/states.png deleted file mode 100644 index a737117117ce6714975f90f6c19527074fd15ed5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 132553 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 + + + + + + + + + + + + + + + + + + + + + + + + + FREE + + + + GROUPING + + + SPLITTING + + + DRAWING + + + MERGING + + + EDITING + + + BROKER + + + canvas.drawn + + + canvas.merged + + + canvas.edited + + + canvas.splitted + + + canvas.grouped + + + + merge(false) + cancel() + + + cancel() + + + split(false) + cancel() + + + group(false) + cancel() + + + cancel() + + + group(true) + + + internal transition + + + merge(true) + + + split(true) + + + draw() + + + + + + go to state + + + go from state + + + + emitted events + + + + background + + + + Layer 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IDLE + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cvat-canvas/package.json b/cvat-canvas/package.json index af2cd2d9..0e6a808c 100644 --- a/cvat-canvas/package.json +++ b/cvat-canvas/package.json @@ -4,8 +4,7 @@ "description": "Part of Computer Vision Annotation Tool which presents its canvas library", "main": "babel.config.js", "scripts": { - "compile": "tsc", - "build": "npm run compile && webpack --config ./webpack.config.js", + "build": "tsc && webpack --config ./webpack.config.js", "server": "nodemon --watch config --exec 'webpack-dev-server --config ./webpack.config.js --open'" }, "author": "Intel", @@ -18,6 +17,9 @@ "@babel/core": "^7.5.5", "@babel/preset-env": "^7.5.5", "@babel/preset-typescript": "^7.3.3", + "eslint": "^6.1.0", + "@typescript-eslint/eslint-plugin": "^1.13.0", + "@typescript-eslint/parser": "^1.13.0", "babel-loader": "^8.0.6", "nodemon": "^1.19.1", "typescript": "^3.5.3", diff --git a/cvat-canvas/src/canvas.ts b/cvat-canvas/src/canvas.ts index 18e4b708..41a6a565 100644 --- a/cvat-canvas/src/canvas.ts +++ b/cvat-canvas/src/canvas.ts @@ -1,5 +1,83 @@ +/* +* Copyright (C) 2018 Intel Corporation +* SPDX-License-Identifier: MIT +*/ -function tmp(message: string) { - console.log(message) - return message; +/* eslint-disable */ +// Temporary disable eslint + +interface CanvasInterface { + html(): HTMLElement; + setup(frameData: any, objectStates: any[]): void; + activate(clientID: number, attributeID?: number): void; + rotate(direction: Rotation): void; + focus(clientID: number, padding?: number): void; + fit(): void; + grid(stepX: number, stepY: number): void; + + draw(shapeType: string, numberOfPoints: number, initialState: any): any; + split(enabled?: boolean): any; + group(enabled?: boolean): any; + merge(enabled?: boolean): any; + + cancel(): void; +} + +export enum Rotation { + CLOCKWISE90, + ANTICLOCKWISE90, +} + +export class Canvas implements CanvasInterface { + public constructor() { + return this; + } + + public html(): HTMLElement { + throw new Error('Method not implemented.'); + } + + public setup(frameData: any, objectStates: any[]): void { + throw new Error('Method not implemented.'); + } + + public activate(clientID: number, attributeID: number = null): void { + throw new Error('Method not implemented.'); + } + + public rotate(direction: Rotation): void { + throw new Error('Method not implemented.'); + } + + public focus(clientID: number, padding: number = 0): void { + throw new Error('Method not implemented.'); + } + + public fit(): void { + throw new Error('Method not implemented.'); + } + + public grid(stepX: number, stepY: number): void { + throw new Error('Method not implemented.'); + } + + public draw(shapeType: string, numberOfPoints: number, initialState: any): any { + throw new Error('Method not implemented.'); + } + + public split(enabled: boolean = false): any { + throw new Error('Method not implemented.'); + } + + public group(enabled: boolean = false): any { + throw new Error('Method not implemented.'); + } + + public merge(enabled: boolean = false): any { + throw new Error('Method not implemented.'); + } + + public cancel(): void { + throw new Error('Method not implemented.'); + } } diff --git a/cvat-canvas/tsconfig.json b/cvat-canvas/tsconfig.json index 299c06b7..a15fa72d 100644 --- a/cvat-canvas/tsconfig.json +++ b/cvat-canvas/tsconfig.json @@ -1,9 +1,11 @@ { "compilerOptions": { + "emitDeclarationOnly": true, "module": "commonjs", "noImplicitAny": true, "preserveConstEnums": true, - "allowJs": true + "declaration": true, + "declarationDir": "dist/declaration" }, "include": [ "src/**/*" diff --git a/cvat-canvas/webpack.config.js b/cvat-canvas/webpack.config.js index 2a7c1cf3..ef230d26 100644 --- a/cvat-canvas/webpack.config.js +++ b/cvat-canvas/webpack.config.js @@ -6,8 +6,16 @@ const path = require('path'); module.exports = { + target: 'web', + mode: 'production', devtool: 'source-map', - entry: './src/canvas.js', + entry: './src/canvas.ts', + output: { + path: path.resolve(__dirname, 'dist'), + filename: 'cvat-canvas.js', + library: 'canvas', + libraryTarget: 'commonjs', + }, devServer: { contentBase: path.join(__dirname, 'dist'), compress: true, @@ -24,6 +32,9 @@ module.exports = { [ '@babel/preset-env', ], + [ + '@babel/typescript', + ], ], sourceType: 'unambiguous', }, diff --git a/cvat-core/package.json b/cvat-core/package.json index 48ee0d0d..dca386ad 100644 --- a/cvat-core/package.json +++ b/cvat-core/package.json @@ -19,6 +19,7 @@ "babel-loader": "^8.0.6", "core-js": "^3.0.1", "coveralls": "^3.0.5", + "eslint": "^6.1.0", "jest": "^24.8.0", "jest-junit": "^6.4.0", "jsdoc": "^3.6.2",