canvas-editor-engine 1.0.2 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/crop.component.d.ts +0 -0
- package/dist/components/crop.component.js +0 -0
- package/dist/components/crop.service.d.ts +0 -0
- package/dist/components/crop.service.js +0 -0
- package/dist/components/excretions.component.d.ts +5 -1
- package/dist/components/excretions.component.js +35 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +3 -1
- package/dist/services/crop.service.d.ts +3 -0
- package/dist/services/crop.service.js +10 -0
- package/dist/types/excretion.d.ts +1 -0
- package/package.json +1 -1
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import ComponentService from "../services/component.service";
|
2
|
-
import type { IExcretionsCoords, TExcretionToolState } from "../types/excretion";
|
2
|
+
import type { IExcretionsCoords, TExcretionStyle, TExcretionToolState } from "../types/excretion";
|
3
3
|
export default class ExcretionsComponent extends ComponentService {
|
4
4
|
private static template;
|
5
5
|
private static css;
|
@@ -10,6 +10,10 @@ export default class ExcretionsComponent extends ComponentService {
|
|
10
10
|
private static _excretionToolState;
|
11
11
|
private static _tempCoords;
|
12
12
|
static excretionsCoords: IExcretionsCoords[];
|
13
|
+
private static _style;
|
14
|
+
static get style(): TExcretionStyle;
|
15
|
+
static set style(value: TExcretionStyle);
|
16
|
+
private static applyExcretionStyle;
|
13
17
|
private static tool;
|
14
18
|
static getComponent(): {
|
15
19
|
excretionsTemplate: HTMLElement;
|
@@ -5,6 +5,34 @@ const tool_service_1 = require("../services/tool.service");
|
|
5
5
|
const canvas_component_1 = require("./canvas.component");
|
6
6
|
const logger_service_1 = require("../services/logger.service");
|
7
7
|
class ExcretionsComponent extends component_service_1.default {
|
8
|
+
static get style() {
|
9
|
+
return ExcretionsComponent._style;
|
10
|
+
}
|
11
|
+
static set style(value) {
|
12
|
+
ExcretionsComponent._style = value;
|
13
|
+
ExcretionsComponent.applyExcretionStyle();
|
14
|
+
}
|
15
|
+
static applyExcretionStyle() {
|
16
|
+
if (ExcretionsComponent._style === 'crop') {
|
17
|
+
ExcretionsComponent._excretions.forEach((excretion) => {
|
18
|
+
if (!!excretion) {
|
19
|
+
if (!excretion.classList.contains('excretion_crop')) {
|
20
|
+
excretion.classList.add("excretion_crop");
|
21
|
+
}
|
22
|
+
}
|
23
|
+
});
|
24
|
+
}
|
25
|
+
else {
|
26
|
+
ExcretionsComponent._excretions.forEach((excretion) => {
|
27
|
+
if (!!excretion) {
|
28
|
+
if (excretion.classList.contains('excretion_crop')) {
|
29
|
+
excretion.classList.remove("excretion_crop");
|
30
|
+
}
|
31
|
+
}
|
32
|
+
});
|
33
|
+
}
|
34
|
+
}
|
35
|
+
;
|
8
36
|
static getComponent() {
|
9
37
|
const wrapOptions = {
|
10
38
|
className: 'excretions-wrap',
|
@@ -17,6 +45,7 @@ class ExcretionsComponent extends component_service_1.default {
|
|
17
45
|
}
|
18
46
|
static set excretionState(state) {
|
19
47
|
ExcretionsComponent._excretionState = state;
|
48
|
+
ExcretionsComponent.applyExcretionStyle();
|
20
49
|
switch (state) {
|
21
50
|
case 'abandoned':
|
22
51
|
canvas_component_1.default.cursorStyle = 'default';
|
@@ -97,6 +126,7 @@ class ExcretionsComponent extends component_service_1.default {
|
|
97
126
|
};
|
98
127
|
ExcretionsComponent._tempCoords.push(tempStart);
|
99
128
|
}
|
129
|
+
ExcretionsComponent.applyExcretionStyle();
|
100
130
|
ExcretionsComponent._excretionActivity = 'active';
|
101
131
|
});
|
102
132
|
canvas_component_1.default.subscribe('mousemove', (event, cursorPosition) => {
|
@@ -165,6 +195,10 @@ ExcretionsComponent.css = `
|
|
165
195
|
animation: border-dance 1s infinite linear;
|
166
196
|
}
|
167
197
|
|
198
|
+
.excretion_crop {
|
199
|
+
box-shadow: 0px 0px 0px 100% rgba(34, 60, 80, 0.2);
|
200
|
+
}
|
201
|
+
|
168
202
|
@keyframes border-dance {
|
169
203
|
0% {
|
170
204
|
background-position: left top, right bottom, left bottom, right top;
|
@@ -180,6 +214,7 @@ ExcretionsComponent._excretionActivity = 'abandoned';
|
|
180
214
|
ExcretionsComponent._excretionToolState = 'abandoned';
|
181
215
|
ExcretionsComponent._tempCoords = [];
|
182
216
|
ExcretionsComponent.excretionsCoords = [];
|
217
|
+
ExcretionsComponent._style = 'default';
|
183
218
|
ExcretionsComponent.tool = {
|
184
219
|
id: 1,
|
185
220
|
name: 'excretion',
|
package/dist/index.d.ts
CHANGED
@@ -7,6 +7,7 @@ import SlotComponent from "./components/slot.component";
|
|
7
7
|
import DrawService from "./services/draw.service";
|
8
8
|
import ToolService from "./services/tool.service";
|
9
9
|
import LoggerService from "./services/logger.service";
|
10
|
+
import CropService from "./services/crop.service";
|
10
11
|
declare class CanvasEditorEngine {
|
11
12
|
constructor(webComponentTagName?: string);
|
12
13
|
getInitial(): {
|
@@ -23,4 +24,4 @@ declare class VueCanvasEditorEngine extends CanvasEditorEngine {
|
|
23
24
|
getContext2D(): CanvasRenderingContext2D;
|
24
25
|
getCanvas(): HTMLCanvasElement;
|
25
26
|
}
|
26
|
-
export { AppConfig, PipetteComponent, CanvasComponent, ExcretionComponent, SlotComponent, ToolService, DrawService, LoggerService, StaticCanvasEditorEngine, VueCanvasEditorEngine, };
|
27
|
+
export { AppConfig, PipetteComponent, CanvasComponent, ExcretionComponent, SlotComponent, ToolService, DrawService, LoggerService, CropService, StaticCanvasEditorEngine, VueCanvasEditorEngine, };
|
package/dist/index.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.VueCanvasEditorEngine = exports.StaticCanvasEditorEngine = exports.LoggerService = exports.DrawService = exports.ToolService = exports.SlotComponent = exports.ExcretionComponent = exports.CanvasComponent = exports.PipetteComponent = exports.AppConfig = void 0;
|
3
|
+
exports.VueCanvasEditorEngine = exports.StaticCanvasEditorEngine = exports.CropService = exports.LoggerService = exports.DrawService = exports.ToolService = exports.SlotComponent = exports.ExcretionComponent = exports.CanvasComponent = exports.PipetteComponent = exports.AppConfig = void 0;
|
4
4
|
const config_1 = require("./config");
|
5
5
|
exports.AppConfig = config_1.default;
|
6
6
|
const web_component_1 = require("./web-component");
|
@@ -18,6 +18,8 @@ const tool_service_1 = require("./services/tool.service");
|
|
18
18
|
exports.ToolService = tool_service_1.default;
|
19
19
|
const logger_service_1 = require("./services/logger.service");
|
20
20
|
exports.LoggerService = logger_service_1.default;
|
21
|
+
const crop_service_1 = require("./services/crop.service");
|
22
|
+
exports.CropService = crop_service_1.default;
|
21
23
|
class CanvasEditorEngine {
|
22
24
|
constructor(webComponentTagName) {
|
23
25
|
config_1.default.WEB_COMPONENT_TAG_NAME = webComponentTagName;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const excretions_component_1 = require("../components/excretions.component");
|
4
|
+
class CropService {
|
5
|
+
static crop() {
|
6
|
+
excretions_component_1.default.style = 'crop';
|
7
|
+
console.log('ExcretionComponent.excretionsCoords', excretions_component_1.default.excretionsCoords);
|
8
|
+
}
|
9
|
+
}
|
10
|
+
exports.default = CropService;
|
@@ -24,3 +24,4 @@ export type TExcretionTempCoords = (IExcretionTempStart | IExcretionTempEnd)[];
|
|
24
24
|
export type TExcretionToolState = 'taken' | 'abandoned';
|
25
25
|
export type TExcretionState = 'create' | 'add' | 'remove' | 'abandoned';
|
26
26
|
export type TExcretionActivity = 'active' | 'end' | 'abandoned';
|
27
|
+
export type TExcretionStyle = 'default' | 'crop';
|