@idraw/core 0.3.1 → 0.4.0-alpha.2
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/esm/index.d.ts +19 -55
- package/dist/esm/index.js +52 -188
- package/dist/esm/lib/cursor-image.d.ts +2 -0
- package/dist/esm/lib/cursor-image.js +2 -0
- package/dist/esm/lib/cursor.d.ts +16 -0
- package/dist/esm/lib/cursor.js +121 -0
- package/dist/esm/middleware/scaler/index.d.ts +2 -0
- package/dist/esm/middleware/scaler/index.js +22 -0
- package/dist/esm/middleware/scroller/config.d.ts +6 -0
- package/dist/esm/middleware/scroller/config.js +6 -0
- package/dist/esm/middleware/scroller/index.d.ts +2 -0
- package/dist/esm/middleware/scroller/index.js +97 -0
- package/dist/esm/middleware/scroller/util.d.ts +12 -0
- package/dist/esm/middleware/scroller/util.js +192 -0
- package/dist/esm/middleware/selector/config.d.ts +20 -0
- package/dist/esm/middleware/selector/config.js +20 -0
- package/dist/esm/middleware/selector/draw-wrapper.d.ts +22 -0
- package/dist/esm/middleware/selector/draw-wrapper.js +111 -0
- package/dist/esm/middleware/selector/index.d.ts +3 -0
- package/dist/esm/middleware/selector/index.js +454 -0
- package/dist/esm/middleware/selector/types.d.ts +40 -0
- package/dist/esm/middleware/selector/types.js +1 -0
- package/dist/esm/middleware/selector/util.d.ts +53 -0
- package/dist/esm/middleware/selector/util.js +789 -0
- package/dist/index.global.js +3825 -3991
- package/dist/index.global.min.js +1 -1
- package/package.json +7 -7
- package/LICENSE +0 -21
- package/dist/esm/constant/element.d.ts +0 -2
- package/dist/esm/constant/element.js +0 -10
- package/dist/esm/constant/static.d.ts +0 -11
- package/dist/esm/constant/static.js +0 -13
- package/dist/esm/lib/calculate.d.ts +0 -5
- package/dist/esm/lib/calculate.js +0 -64
- package/dist/esm/lib/check.d.ts +0 -28
- package/dist/esm/lib/check.js +0 -115
- package/dist/esm/lib/config.d.ts +0 -3
- package/dist/esm/lib/config.js +0 -20
- package/dist/esm/lib/core-event.d.ts +0 -49
- package/dist/esm/lib/core-event.js +0 -50
- package/dist/esm/lib/diff.d.ts +0 -6
- package/dist/esm/lib/diff.js +0 -82
- package/dist/esm/lib/draw/base.d.ts +0 -5
- package/dist/esm/lib/draw/base.js +0 -90
- package/dist/esm/lib/draw/wrapper.d.ts +0 -4
- package/dist/esm/lib/draw/wrapper.js +0 -168
- package/dist/esm/lib/element.d.ts +0 -15
- package/dist/esm/lib/element.js +0 -442
- package/dist/esm/lib/engine-temp.d.ts +0 -22
- package/dist/esm/lib/engine-temp.js +0 -29
- package/dist/esm/lib/engine.d.ts +0 -47
- package/dist/esm/lib/engine.js +0 -323
- package/dist/esm/lib/helper.d.ts +0 -30
- package/dist/esm/lib/helper.js +0 -363
- package/dist/esm/lib/index.d.ts +0 -13
- package/dist/esm/lib/index.js +0 -13
- package/dist/esm/lib/is.d.ts +0 -26
- package/dist/esm/lib/is.js +0 -100
- package/dist/esm/lib/mapper.d.ts +0 -26
- package/dist/esm/lib/mapper.js +0 -89
- package/dist/esm/lib/parse.d.ts +0 -2
- package/dist/esm/lib/parse.js +0 -32
- package/dist/esm/lib/temp.d.ts +0 -11
- package/dist/esm/lib/temp.js +0 -19
- package/dist/esm/lib/transform.d.ts +0 -4
- package/dist/esm/lib/transform.js +0 -20
- package/dist/esm/lib/value.d.ts +0 -2
- package/dist/esm/lib/value.js +0 -7
- package/dist/esm/mixins/element.d.ts +0 -18
- package/dist/esm/mixins/element.js +0 -168
- package/dist/esm/plugins/helper.d.ts +0 -12
- package/dist/esm/plugins/helper.js +0 -16
- package/dist/esm/util/filter.d.ts +0 -1
- package/dist/esm/util/filter.js +0 -3
package/dist/esm/lib/temp.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
function createData() {
|
|
2
|
-
return {
|
|
3
|
-
hasInited: false,
|
|
4
|
-
};
|
|
5
|
-
}
|
|
6
|
-
export class TempData {
|
|
7
|
-
constructor() {
|
|
8
|
-
this._temp = createData();
|
|
9
|
-
}
|
|
10
|
-
set(name, value) {
|
|
11
|
-
this._temp[name] = value;
|
|
12
|
-
}
|
|
13
|
-
get(name) {
|
|
14
|
-
return this._temp[name];
|
|
15
|
-
}
|
|
16
|
-
clear() {
|
|
17
|
-
this._temp = createData();
|
|
18
|
-
}
|
|
19
|
-
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { IDrawContext, Point, DataElement, DataElemDesc } from '@idraw/types';
|
|
2
|
-
declare function rotateElement(ctx: IDrawContext, elem: DataElement<keyof DataElemDesc>, callback: (ctx: IDrawContext) => void): void;
|
|
3
|
-
declare function rotateContext(ctx: IDrawContext, center: Point | undefined, radian: number, callback: (ctx: IDrawContext) => void): void;
|
|
4
|
-
export { rotateContext, rotateElement };
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { calcElementCenter, parseAngleToRadian } from './calculate';
|
|
2
|
-
function rotateElement(ctx, elem, callback) {
|
|
3
|
-
const center = calcElementCenter(elem);
|
|
4
|
-
const radian = parseAngleToRadian(elem.angle || 0);
|
|
5
|
-
return rotateContext(ctx, center, radian || 0, callback);
|
|
6
|
-
}
|
|
7
|
-
function rotateContext(ctx, center, radian, callback) {
|
|
8
|
-
if (center && (radian > 0 || radian < 0)) {
|
|
9
|
-
ctx.translate(center.x, center.y);
|
|
10
|
-
ctx.rotate(radian);
|
|
11
|
-
ctx.translate(-center.x, -center.y);
|
|
12
|
-
}
|
|
13
|
-
callback(ctx);
|
|
14
|
-
if (center && (radian > 0 || radian < 0)) {
|
|
15
|
-
ctx.translate(center.x, center.y);
|
|
16
|
-
ctx.rotate(-radian);
|
|
17
|
-
ctx.translate(-center.x, -center.y);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
export { rotateContext, rotateElement };
|
package/dist/esm/lib/value.d.ts
DELETED
package/dist/esm/lib/value.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { DataElement, DataElemDesc, DataElementBase } from '@idraw/types';
|
|
2
|
-
import Core from '../index';
|
|
3
|
-
export declare function getSelectedElements(core: Core): DataElement<keyof DataElemDesc>[];
|
|
4
|
-
export declare function getElement(core: Core, uuid: string): DataElement<keyof DataElemDesc> | null;
|
|
5
|
-
export declare function getElementByIndex(core: Core, index: number): DataElement<keyof DataElemDesc> | null;
|
|
6
|
-
export declare function updateElement(core: Core, elem: DataElement<keyof DataElemDesc>): void;
|
|
7
|
-
export declare function selectElementByIndex(core: Core, index: number): void;
|
|
8
|
-
export declare function selectElement(core: Core, uuid: string): void;
|
|
9
|
-
export declare function cancelElementByIndex(core: Core, index: number): void;
|
|
10
|
-
export declare function cancelElement(core: Core, uuid: string): void;
|
|
11
|
-
export declare function moveUpElement(core: Core, uuid: string): void;
|
|
12
|
-
export declare function moveDownElement(core: Core, uuid: string): void;
|
|
13
|
-
export declare function addElement(core: Core, elem: DataElementBase<keyof DataElemDesc>): string | null;
|
|
14
|
-
export declare function deleteElement(core: Core, uuid: string): void;
|
|
15
|
-
export declare function insertElementBefore(core: Core, elem: DataElementBase<keyof DataElemDesc>, beforeUUID: string): any;
|
|
16
|
-
export declare function insertElementBeforeIndex(core: Core, elem: DataElementBase<keyof DataElemDesc>, index: number): any;
|
|
17
|
-
export declare function insertElementAfter(core: Core, elem: DataElementBase<keyof DataElemDesc>, beforeUUID: string): any;
|
|
18
|
-
export declare function insertElementAfterIndex(core: Core, elem: DataElementBase<keyof DataElemDesc>, index: number): any;
|
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
import { deepClone, createUUID } from '@idraw/util';
|
|
2
|
-
import { diffElementResourceChange } from '../lib/diff';
|
|
3
|
-
import { Mode } from '../constant/static';
|
|
4
|
-
export function getSelectedElements(core) {
|
|
5
|
-
const elems = [];
|
|
6
|
-
let list = [];
|
|
7
|
-
const uuid = core.getEngine().temp.get('selectedUUID');
|
|
8
|
-
if (typeof uuid === 'string' && uuid) {
|
|
9
|
-
list.push(uuid);
|
|
10
|
-
}
|
|
11
|
-
else {
|
|
12
|
-
list = core.getEngine().temp.get('selectedUUIDList');
|
|
13
|
-
}
|
|
14
|
-
list.forEach((uuid) => {
|
|
15
|
-
const index = core.getEngine().helper.getElementIndexByUUID(uuid);
|
|
16
|
-
if (index !== null && index >= 0) {
|
|
17
|
-
const elem = core.$data.elements[index];
|
|
18
|
-
if (elem)
|
|
19
|
-
elems.push(elem);
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
return deepClone(elems);
|
|
23
|
-
}
|
|
24
|
-
export function getElement(core, uuid) {
|
|
25
|
-
let elem = null;
|
|
26
|
-
const index = core.getEngine().helper.getElementIndexByUUID(uuid);
|
|
27
|
-
if (index !== null && core.$data.elements[index]) {
|
|
28
|
-
elem = deepClone(core.$data.elements[index]);
|
|
29
|
-
}
|
|
30
|
-
return elem;
|
|
31
|
-
}
|
|
32
|
-
export function getElementByIndex(core, index) {
|
|
33
|
-
let elem = null;
|
|
34
|
-
if (index >= 0 && core.$data.elements[index]) {
|
|
35
|
-
elem = deepClone(core.$data.elements[index]);
|
|
36
|
-
}
|
|
37
|
-
return elem;
|
|
38
|
-
}
|
|
39
|
-
export function updateElement(core, elem) {
|
|
40
|
-
var _a;
|
|
41
|
-
const _elem = deepClone(elem);
|
|
42
|
-
const data = core.getData();
|
|
43
|
-
const resourceChangeUUIDs = [];
|
|
44
|
-
for (let i = 0; i < data.elements.length; i++) {
|
|
45
|
-
if (_elem.uuid === ((_a = data.elements[i]) === null || _a === void 0 ? void 0 : _a.uuid)) {
|
|
46
|
-
const result = diffElementResourceChange(data.elements[i], _elem);
|
|
47
|
-
if (typeof result === 'string') {
|
|
48
|
-
resourceChangeUUIDs.push(result);
|
|
49
|
-
}
|
|
50
|
-
data.elements[i] = _elem;
|
|
51
|
-
core.setData(data);
|
|
52
|
-
break;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
core.$emitChangeData();
|
|
56
|
-
core.$draw({ resourceChangeUUIDs });
|
|
57
|
-
}
|
|
58
|
-
export function selectElementByIndex(core, index) {
|
|
59
|
-
if (core.$data.elements[index]) {
|
|
60
|
-
const uuid = core.$data.elements[index].uuid;
|
|
61
|
-
core.getEngine().temp.set('mode', Mode.NULL);
|
|
62
|
-
if (typeof uuid === 'string') {
|
|
63
|
-
core.getEngine().temp.set('selectedUUID', uuid);
|
|
64
|
-
core.getEngine().temp.set('selectedUUIDList', []);
|
|
65
|
-
}
|
|
66
|
-
core.$draw();
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
export function selectElement(core, uuid) {
|
|
70
|
-
const index = core.getEngine().helper.getElementIndexByUUID(uuid);
|
|
71
|
-
if (typeof index === 'number' && index >= 0) {
|
|
72
|
-
core.selectElementByIndex(index);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
export function cancelElementByIndex(core, index) {
|
|
76
|
-
if (core.$data.elements[index]) {
|
|
77
|
-
const uuid = core.$data.elements[index].uuid;
|
|
78
|
-
const selectedUUID = core.getEngine().temp.get('selectedUUID');
|
|
79
|
-
if (typeof uuid === 'string' && uuid === selectedUUID) {
|
|
80
|
-
core.getEngine().temp.set('mode', Mode.NULL);
|
|
81
|
-
core.getEngine().temp.set('selectedUUID', null);
|
|
82
|
-
core.getEngine().temp.set('selectedUUIDList', []);
|
|
83
|
-
}
|
|
84
|
-
core.$draw();
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
export function cancelElement(core, uuid) {
|
|
88
|
-
const index = core.getEngine().helper.getElementIndexByUUID(uuid);
|
|
89
|
-
if (typeof index === 'number' && index >= 0) {
|
|
90
|
-
core.cancelElementByIndex(index);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
export function moveUpElement(core, uuid) {
|
|
94
|
-
const index = core.getEngine().helper.getElementIndexByUUID(uuid);
|
|
95
|
-
if (typeof index === 'number' &&
|
|
96
|
-
index >= 0 &&
|
|
97
|
-
index < core.$data.elements.length - 1) {
|
|
98
|
-
const temp = core.$data.elements[index];
|
|
99
|
-
core.$data.elements[index] = core.$data.elements[index + 1];
|
|
100
|
-
core.$data.elements[index + 1] = temp;
|
|
101
|
-
}
|
|
102
|
-
core.$emitChangeData();
|
|
103
|
-
core.$draw();
|
|
104
|
-
}
|
|
105
|
-
export function moveDownElement(core, uuid) {
|
|
106
|
-
const index = core.getEngine().helper.getElementIndexByUUID(uuid);
|
|
107
|
-
if (typeof index === 'number' &&
|
|
108
|
-
index > 0 &&
|
|
109
|
-
index < core.$data.elements.length) {
|
|
110
|
-
const temp = core.$data.elements[index];
|
|
111
|
-
core.$data.elements[index] = core.$data.elements[index - 1];
|
|
112
|
-
core.$data.elements[index - 1] = temp;
|
|
113
|
-
}
|
|
114
|
-
core.$emitChangeData();
|
|
115
|
-
core.$draw();
|
|
116
|
-
}
|
|
117
|
-
export function addElement(core, elem) {
|
|
118
|
-
const _elem = deepClone(elem);
|
|
119
|
-
_elem.uuid = createUUID();
|
|
120
|
-
core.$data.elements.push(_elem);
|
|
121
|
-
core.$emitChangeData();
|
|
122
|
-
core.$draw();
|
|
123
|
-
return _elem.uuid;
|
|
124
|
-
}
|
|
125
|
-
export function deleteElement(core, uuid) {
|
|
126
|
-
const index = core.$getElementHandler().getElementIndex(core.getData(), uuid);
|
|
127
|
-
if (index >= 0) {
|
|
128
|
-
core.$data.elements.splice(index, 1);
|
|
129
|
-
core.$emitChangeData();
|
|
130
|
-
core.$draw();
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
export function insertElementBefore(core, elem, beforeUUID) {
|
|
134
|
-
const index = core.getEngine().helper.getElementIndexByUUID(beforeUUID);
|
|
135
|
-
if (index !== null) {
|
|
136
|
-
return core.insertElementBeforeIndex(elem, index);
|
|
137
|
-
}
|
|
138
|
-
return null;
|
|
139
|
-
}
|
|
140
|
-
export function insertElementBeforeIndex(core, elem, index) {
|
|
141
|
-
const _elem = deepClone(elem);
|
|
142
|
-
_elem.uuid = createUUID();
|
|
143
|
-
if (index >= 0) {
|
|
144
|
-
core.$data.elements.splice(index, 0, _elem);
|
|
145
|
-
core.$emitChangeData();
|
|
146
|
-
core.$draw();
|
|
147
|
-
return _elem.uuid;
|
|
148
|
-
}
|
|
149
|
-
return null;
|
|
150
|
-
}
|
|
151
|
-
export function insertElementAfter(core, elem, beforeUUID) {
|
|
152
|
-
const index = core.getEngine().helper.getElementIndexByUUID(beforeUUID);
|
|
153
|
-
if (index !== null) {
|
|
154
|
-
return core.insertElementAfterIndex(elem, index);
|
|
155
|
-
}
|
|
156
|
-
return null;
|
|
157
|
-
}
|
|
158
|
-
export function insertElementAfterIndex(core, elem, index) {
|
|
159
|
-
const _elem = deepClone(elem);
|
|
160
|
-
_elem.uuid = createUUID();
|
|
161
|
-
if (index >= 0) {
|
|
162
|
-
core.$data.elements.splice(index + 1, 0, _elem);
|
|
163
|
-
core.$emitChangeData();
|
|
164
|
-
core.$draw();
|
|
165
|
-
return _elem.uuid;
|
|
166
|
-
}
|
|
167
|
-
return null;
|
|
168
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { InterfaceHelperPlugin, HelperPluginEventDetail, HelperPluginEventResult } from '@idraw/types';
|
|
2
|
-
export declare class HelperPlugin implements Required<InterfaceHelperPlugin> {
|
|
3
|
-
readonly name: string;
|
|
4
|
-
readonly uuid: string;
|
|
5
|
-
constructor();
|
|
6
|
-
onHover(detail: HelperPluginEventDetail): void | HelperPluginEventResult;
|
|
7
|
-
onPoint(detail: HelperPluginEventDetail): void | HelperPluginEventResult;
|
|
8
|
-
onClick(detail: HelperPluginEventDetail): void | HelperPluginEventResult;
|
|
9
|
-
onMoveStart(detail: HelperPluginEventDetail): void | HelperPluginEventResult;
|
|
10
|
-
onMove(detail: HelperPluginEventDetail): void | HelperPluginEventResult;
|
|
11
|
-
onMoveEnd(detail: HelperPluginEventDetail): void | HelperPluginEventResult;
|
|
12
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { createUUID } from '@idraw/util';
|
|
2
|
-
export class HelperPlugin {
|
|
3
|
-
constructor() {
|
|
4
|
-
this.name = 'helper-plugin';
|
|
5
|
-
this.uuid = createUUID();
|
|
6
|
-
}
|
|
7
|
-
onHover(detail) {
|
|
8
|
-
if (detail.controller === null) {
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
onPoint(detail) { }
|
|
12
|
-
onClick(detail) { }
|
|
13
|
-
onMoveStart(detail) { }
|
|
14
|
-
onMove(detail) { }
|
|
15
|
-
onMoveEnd(detail) { }
|
|
16
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function filterScript(html: string): string;
|
package/dist/esm/util/filter.js
DELETED