xctc-utils 1.6.49 → 1.6.51
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/README.md +1 -1
- package/dist/canvas/index.d.ts +6 -16
- package/dist/canvas/index.js +55 -767
- package/dist/config/index.d.ts +60 -0
- package/dist/config/index.js +64 -0
- package/dist/config/type.d.ts +2 -0
- package/dist/config/type.js +2 -0
- package/dist/event/changed.d.ts +3 -0
- package/dist/event/changed.js +61 -0
- package/dist/event/drop.d.ts +2 -0
- package/dist/event/drop.js +42 -0
- package/dist/event/mouse-down.d.ts +1 -0
- package/dist/event/mouse-down.js +109 -0
- package/dist/event/mouse-move.d.ts +1 -0
- package/dist/event/mouse-move.js +54 -0
- package/dist/event/mouse-up.d.ts +1 -0
- package/dist/event/mouse-up.js +67 -0
- package/dist/event/mouse-wheel.d.ts +1 -0
- package/dist/event/mouse-wheel.js +19 -0
- package/dist/handle/create.d.ts +9 -0
- package/dist/handle/create.js +291 -0
- package/dist/handle/index.d.ts +2 -0
- package/dist/handle/index.js +59 -0
- package/dist/handle/query.d.ts +7 -0
- package/dist/handle/query.js +93 -0
- package/dist/handle/register.d.ts +2 -0
- package/dist/handle/register.js +21 -0
- package/dist/handle/update.d.ts +6 -0
- package/dist/handle/update.js +102 -0
- package/dist/iframe/index.js +1 -1
- package/dist/is/has.d.ts +1 -0
- package/dist/is/has.js +14 -0
- package/dist/modal/index.js +3 -3
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +5 -5
- package/package.json +1 -1
- package/tsconfig.json +1 -0
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.CreateElementFn = exports.CreateRightClickMenuFn = exports.CreateAllSelectionRectFn = exports.CreateSelectionRectFn = exports.CreateCanvasImageElementFn = exports.CreateCanvasSvgElementFn = exports.InitElement2CanvasFn = exports.CreateDragElementFn = exports.xx = void 0;
|
|
15
|
+
var utils_1 = require("../utils");
|
|
16
|
+
var is_1 = require("../is");
|
|
17
|
+
exports.xx = {};
|
|
18
|
+
function CreateDragElementFn(data) {
|
|
19
|
+
var _a, _b, _c, _d, _e;
|
|
20
|
+
if (!(0, is_1.isObject)(data)) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
var _ = this;
|
|
24
|
+
if (!_.canvasDataSource) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
var type = ((_a = _.dragElementDataSource) === null || _a === void 0 ? void 0 : _a.renderType) || "image";
|
|
28
|
+
var top = (_b = _.mousePointerDataSource) === null || _b === void 0 ? void 0 : _b.y;
|
|
29
|
+
var left = ((_c = _.mousePointerDataSource) === null || _c === void 0 ? void 0 : _c.x) - (((_d = _.dragElementDataSource) === null || _d === void 0 ? void 0 : _d.width) / 2);
|
|
30
|
+
// 同一个对象是否允许多次创建 createMode = multiple 允许 传其他或不传不允许
|
|
31
|
+
_.targetObjectDataSource = _.dragElementDataSource;
|
|
32
|
+
if (!((_e = _.targetObjectDataSource) === null || _e === void 0 ? void 0 : _e.id)) {
|
|
33
|
+
console.error("拖入画布的元素没有唯一标识id字段,不能创建!");
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
var item = __assign(__assign({}, _.dragElementDataSource), { top: top, left: left });
|
|
37
|
+
// 拖拽数据类型为SVG图片对象
|
|
38
|
+
if (type == "svg") {
|
|
39
|
+
_.createCanvasSvgElementFn(item);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
_.createCanvasImageElementFn(item);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.CreateDragElementFn = CreateDragElementFn;
|
|
46
|
+
function InitElement2CanvasFn(list) {
|
|
47
|
+
if (!(0, is_1.isArray)(list)) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
var _ = this;
|
|
51
|
+
_.defaultCreateDataListStatus = false;
|
|
52
|
+
if (!_.canvasDataSource) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
if (list === null || list === void 0 ? void 0 : list.length) {
|
|
56
|
+
_.defaultCreateDataList = list;
|
|
57
|
+
list.forEach(function (item, index) {
|
|
58
|
+
if (item.hasOwnProperty("left") && item.hasOwnProperty("top")) {
|
|
59
|
+
var type = (item === null || item === void 0 ? void 0 : item.renderType) || "image";
|
|
60
|
+
if (type == "svg") {
|
|
61
|
+
_.createCanvasSvgElementFn(item, index);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
_.createCanvasImageElementFn(item, index);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.InitElement2CanvasFn = InitElement2CanvasFn;
|
|
71
|
+
function CreateCanvasSvgElementFn(fabric, item, index) {
|
|
72
|
+
if (!(0, is_1.isObject)(item)) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
var _ = this;
|
|
76
|
+
if (!_.canvasDataSource) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
var createDragElementBackFn = (_.callBackEventConfig || {}).createDragElementBackFn;
|
|
80
|
+
fabric.loadSVGFromURL(item === null || item === void 0 ? void 0 : item.address, function (objects) {
|
|
81
|
+
var svgObject = (objects === null || objects === void 0 ? void 0 : objects.length) ? objects[0] : "";
|
|
82
|
+
if (!svgObject) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
svgObject.set(__assign({ evented: true, originX: 'left', originY: 'top' }, item));
|
|
86
|
+
_.canvasDataSource.add(svgObject);
|
|
87
|
+
_.canvasDataSource.requestRenderAll();
|
|
88
|
+
_.mousePointerDataSource = null;
|
|
89
|
+
_.canvasCreateElementsDataSource.push(svgObject);
|
|
90
|
+
_.canvasCreateTargetElementsDataSource.push(svgObject);
|
|
91
|
+
_.getCreateElementStatusFn(index);
|
|
92
|
+
if (createDragElementBackFn instanceof Function) {
|
|
93
|
+
createDragElementBackFn(_.dragElementDataSource);
|
|
94
|
+
}
|
|
95
|
+
setTimeout(function () {
|
|
96
|
+
_.mouseDragStatus = false;
|
|
97
|
+
}, 0);
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
exports.CreateCanvasSvgElementFn = CreateCanvasSvgElementFn;
|
|
101
|
+
function CreateCanvasImageElementFn(fabric, item, index) {
|
|
102
|
+
var _a;
|
|
103
|
+
if (!(0, is_1.isObject)(item)) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
var _ = this;
|
|
107
|
+
if (!_.canvasDataSource) {
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
var createDragElementBackFn = (_.callBackEventConfig || {}).createDragElementBackFn;
|
|
111
|
+
fabric.Image.fromURL((_a = _.dragElementDataSource) === null || _a === void 0 ? void 0 : _a.address, function (img) {
|
|
112
|
+
img.set(__assign({}, item));
|
|
113
|
+
_.canvasDataSource.add(img);
|
|
114
|
+
_.canvasCreateElementsDataSource.push(img);
|
|
115
|
+
_.canvasCreateTargetElementsDataSource.push(img);
|
|
116
|
+
_.mousePointerDataSource = null;
|
|
117
|
+
_.canvasDataSource.requestRenderAll();
|
|
118
|
+
_.getCreateElementStatusFn(index);
|
|
119
|
+
setTimeout(function () {
|
|
120
|
+
_.mouseDragStatus = false;
|
|
121
|
+
}, 0);
|
|
122
|
+
if (createDragElementBackFn instanceof Function) {
|
|
123
|
+
createDragElementBackFn(_.dragElementDataSource);
|
|
124
|
+
}
|
|
125
|
+
}, function (exception) {
|
|
126
|
+
// 图片加载失败后的操作
|
|
127
|
+
console.error('createElement-exception-exception: ', exception);
|
|
128
|
+
// 这里可以显示文案或者进行其他错误处理
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
exports.CreateCanvasImageElementFn = CreateCanvasImageElementFn;
|
|
132
|
+
function CreateSelectionRectFn(fabric) {
|
|
133
|
+
var _a, _b;
|
|
134
|
+
var _ = this;
|
|
135
|
+
if (!_.canvasDataSource) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
_.createSelectionRectDataSource = new fabric.Rect({
|
|
139
|
+
left: (_a = _.mousePointerDataSource) === null || _a === void 0 ? void 0 : _a.x,
|
|
140
|
+
top: (_b = _.mousePointerDataSource) === null || _b === void 0 ? void 0 : _b.y,
|
|
141
|
+
width: 0,
|
|
142
|
+
height: 0,
|
|
143
|
+
fill: 'rgba(0,0,255,0.1)',
|
|
144
|
+
stroke: 'blue',
|
|
145
|
+
// fill:"transparent",
|
|
146
|
+
strokeWidth: 1,
|
|
147
|
+
hasControls: true,
|
|
148
|
+
hasBorders: true,
|
|
149
|
+
selectable: true,
|
|
150
|
+
evented: true,
|
|
151
|
+
hoverCursor: 'move',
|
|
152
|
+
renderType: "frameSelection", // 代表框选
|
|
153
|
+
});
|
|
154
|
+
_.canvasDataSource.add(_.createSelectionRectDataSource);
|
|
155
|
+
_.canvasDataSource.requestRenderAll();
|
|
156
|
+
}
|
|
157
|
+
exports.CreateSelectionRectFn = CreateSelectionRectFn;
|
|
158
|
+
function CreateAllSelectionRectFn(fabric) {
|
|
159
|
+
var _ = this;
|
|
160
|
+
if (!_.canvasDataSource) {
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
_.createSelectionRectDataSource = new fabric.Rect({
|
|
164
|
+
left: 0,
|
|
165
|
+
top: 0,
|
|
166
|
+
width: _.canvasDataSource.getWidth(),
|
|
167
|
+
height: _.canvasDataSource.getHeight(),
|
|
168
|
+
fill: 'rgba(0,0,255,0.1)',
|
|
169
|
+
stroke: 'blue',
|
|
170
|
+
// fill:"transparent",
|
|
171
|
+
strokeWidth: 1,
|
|
172
|
+
hasControls: false,
|
|
173
|
+
hasBorders: false,
|
|
174
|
+
selectable: false,
|
|
175
|
+
evented: true,
|
|
176
|
+
hoverCursor: 'move',
|
|
177
|
+
renderType: "frameSelection", // 代表框选
|
|
178
|
+
});
|
|
179
|
+
_.canvasDataSource.add(_.createSelectionRectDataSource);
|
|
180
|
+
_.canvasDataSource.requestRenderAll();
|
|
181
|
+
}
|
|
182
|
+
exports.CreateAllSelectionRectFn = CreateAllSelectionRectFn;
|
|
183
|
+
function CreateRightClickMenuFn(options) {
|
|
184
|
+
if (!(0, is_1.isObject)(options)) {
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
var _ = this;
|
|
188
|
+
if (!_.canvasDataSource) {
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
var rightButtonsDataSource = (_.canvasHandleConfig || {}).rightButtonsDataSource;
|
|
192
|
+
var rightButtonMenuClickBackFn = (_.callBackEventConfig || {}).rightButtonMenuClickBackFn;
|
|
193
|
+
if (!(rightButtonsDataSource === null || rightButtonsDataSource === void 0 ? void 0 : rightButtonsDataSource.length)) {
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
var canvasContainer = (0, utils_1.getDomFn)("canvasContainer");
|
|
197
|
+
var oldMenuBox = (0, utils_1.getDomFn)("menuBox");
|
|
198
|
+
if (canvasContainer && oldMenuBox) {
|
|
199
|
+
canvasContainer === null || canvasContainer === void 0 ? void 0 : canvasContainer.removeChild(oldMenuBox);
|
|
200
|
+
}
|
|
201
|
+
var menuBox = _.createElementFn("menuBox", "div");
|
|
202
|
+
if (rightButtonsDataSource === null || rightButtonsDataSource === void 0 ? void 0 : rightButtonsDataSource.length) {
|
|
203
|
+
var ulBox_1 = _.createElementFn("ulBox", "ul");
|
|
204
|
+
ulBox_1.style = "\n list-style-type: none;\n padding:0px;\n margin:0px;\n ";
|
|
205
|
+
var liStype_1 = "\n padding:8px 12px;\n cursor: pointer;\n border-radius:4px;\n font-size:16px;\n ";
|
|
206
|
+
rightButtonsDataSource.forEach(function (item, index) {
|
|
207
|
+
var liItem = _.createElementFn("li", "liBox".concat(index + 1), index);
|
|
208
|
+
liItem.innerHTML = (item === null || item === void 0 ? void 0 : item.label) || "请传入label值";
|
|
209
|
+
liItem.style = liStype_1;
|
|
210
|
+
liItem.className = "right-menu-button";
|
|
211
|
+
liItem.addEventListener("click", function (event) {
|
|
212
|
+
// 点击右键菜单回调函数
|
|
213
|
+
console.log("rightButtonMenuClickBackFn==", rightButtonMenuClickBackFn);
|
|
214
|
+
if (rightButtonMenuClickBackFn instanceof Function) {
|
|
215
|
+
rightButtonMenuClickBackFn(event.target['data-index']);
|
|
216
|
+
}
|
|
217
|
+
_.canvasMenuShowStatus = false;
|
|
218
|
+
_.mouseRightClickStatus = false;
|
|
219
|
+
_.hiddenRightClickMenuFn();
|
|
220
|
+
});
|
|
221
|
+
liItem.addEventListener('mousemove', function () {
|
|
222
|
+
var lists = document.getElementsByClassName("right-menu-button");
|
|
223
|
+
for (var i = 0; i < lists.length; i++) {
|
|
224
|
+
var element = lists[i];
|
|
225
|
+
element.style.backgroundColor = "#fff";
|
|
226
|
+
element.style.color = "#333";
|
|
227
|
+
}
|
|
228
|
+
liItem.style.backgroundColor = '#0AC496';
|
|
229
|
+
liItem.style.color = '#fff';
|
|
230
|
+
liItem.style.fontWeight = "bold";
|
|
231
|
+
});
|
|
232
|
+
ulBox_1.appendChild(liItem);
|
|
233
|
+
});
|
|
234
|
+
menuBox.appendChild(ulBox_1);
|
|
235
|
+
}
|
|
236
|
+
if (menuBox) {
|
|
237
|
+
menuBox.id = "menuBox";
|
|
238
|
+
// 显示菜单,设置右键菜单位置
|
|
239
|
+
// 获取菜单组件的宽高
|
|
240
|
+
var menuWidth = menuBox.offsetWidth;
|
|
241
|
+
var menuHeight = menuBox.offsetHeight;
|
|
242
|
+
// 当前鼠标位置
|
|
243
|
+
var pointX = options.pointer.x;
|
|
244
|
+
var pointY = options.pointer.y;
|
|
245
|
+
// 计算菜单出现的位置
|
|
246
|
+
// 如果鼠标靠近画布右侧,菜单就出现在鼠标指针左侧
|
|
247
|
+
if (_.canvasDataSource.width - pointX <= menuWidth) {
|
|
248
|
+
pointX -= menuWidth;
|
|
249
|
+
}
|
|
250
|
+
// 如果鼠标靠近画布底部,菜单就出现在鼠标指针上方
|
|
251
|
+
if (_.canvasDataSource.height - pointY <= menuHeight) {
|
|
252
|
+
pointY -= menuHeight;
|
|
253
|
+
}
|
|
254
|
+
// 将菜单展示出来
|
|
255
|
+
menuBox.style = "\n visibility: visible;\n left: ".concat(pointX, "px;\n top: ").concat(pointY, "px;\n z-index: 10000000;\n padding:16px 12px;\n border-radius:4px;\n background-color:#fff;\n position: absolute;\n box-shadow: h-shadow v-shadow blur spread color inset;\n ");
|
|
256
|
+
if (canvasContainer) {
|
|
257
|
+
canvasContainer.appendChild(menuBox);
|
|
258
|
+
_.isRightClick = true;
|
|
259
|
+
_.canvasDragStatus = false; // 进行右键操作时,先禁用画布拖拽操作功能
|
|
260
|
+
}
|
|
261
|
+
else {
|
|
262
|
+
console.error("请在canvas元素外层包一个DIV容器,且id='canvasContainer'");
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
exports.CreateRightClickMenuFn = CreateRightClickMenuFn;
|
|
267
|
+
function CreateElementFn(domVal, id, index) {
|
|
268
|
+
if (!(0, is_1.isString)(id)) {
|
|
269
|
+
return;
|
|
270
|
+
}
|
|
271
|
+
var _ = this;
|
|
272
|
+
var element = (0, utils_1.getDomFn)(id);
|
|
273
|
+
if (element) {
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
else {
|
|
277
|
+
if (domVal) {
|
|
278
|
+
var dom = document.createElement(domVal);
|
|
279
|
+
dom.id = id;
|
|
280
|
+
if (typeof index == "undefined") {
|
|
281
|
+
index = 0;
|
|
282
|
+
}
|
|
283
|
+
if (index >= 0) {
|
|
284
|
+
dom['data-index'] = index;
|
|
285
|
+
}
|
|
286
|
+
return dom;
|
|
287
|
+
}
|
|
288
|
+
return;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
exports.CreateElementFn = CreateElementFn;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SetCanvasBaseConfigFn = exports.RegisterZoomHandleFn = void 0;
|
|
4
|
+
var is_1 = require("../is");
|
|
5
|
+
function RegisterZoomHandleFn(options) {
|
|
6
|
+
var _a;
|
|
7
|
+
if (!(0, is_1.isObject)(options)) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
var _ = this;
|
|
11
|
+
if (!_.canvasDataSource) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
// 滚轮,向上滚一下是 -100,向下滚一下是 100
|
|
15
|
+
var delta = options.e.deltaY;
|
|
16
|
+
var zoom = _.canvasDataSource.getZoom(); // 获取画布当前缩放值
|
|
17
|
+
console.log("registerZoomHandleFn--zoom=", zoom);
|
|
18
|
+
zoom += 0.001 * delta;
|
|
19
|
+
if (zoom > 10)
|
|
20
|
+
zoom = 10; // 限制最大缩放级别
|
|
21
|
+
if (zoom < 0.2)
|
|
22
|
+
zoom = 0.2; // 限制最小缩放级别
|
|
23
|
+
_.zoomDataSource = (zoom * 100).toFixed(0);
|
|
24
|
+
// 以鼠标所在位置为原点缩放
|
|
25
|
+
_.canvasDataSource.zoomToPoint({
|
|
26
|
+
x: options.e.offsetX,
|
|
27
|
+
y: options.e.offsetY
|
|
28
|
+
}, zoom // 传入修改后的缩放级别
|
|
29
|
+
);
|
|
30
|
+
var fn = ((_a = _.callBackEventConfig) === null || _a === void 0 ? void 0 : _a.zoomListenEvent) || "";
|
|
31
|
+
if (fn && fn instanceof Function) {
|
|
32
|
+
fn(zoom, _.zoomDataSource);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.RegisterZoomHandleFn = RegisterZoomHandleFn;
|
|
36
|
+
function SetCanvasBaseConfigFn(zoom) {
|
|
37
|
+
var _a;
|
|
38
|
+
var _ = this;
|
|
39
|
+
if (!_.canvasDataSource) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
if (!zoom) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
var x = 0;
|
|
46
|
+
var y = 0;
|
|
47
|
+
if ((_a = _.mouseWheelPointerDataSource) === null || _a === void 0 ? void 0 : _a.e) {
|
|
48
|
+
var _b = _.mouseWheelPointerDataSource.e, _c = _b.offsetX, offsetX = _c === void 0 ? 0 : _c, _d = _b.offsetY, offsetY = _d === void 0 ? 0 : _d;
|
|
49
|
+
x = offsetX;
|
|
50
|
+
y = offsetY;
|
|
51
|
+
}
|
|
52
|
+
_.canvasDataSource.zoomToPoint({
|
|
53
|
+
x: x,
|
|
54
|
+
y: y
|
|
55
|
+
}, zoom // 传入修改后的缩放级别
|
|
56
|
+
);
|
|
57
|
+
_.canvasDataSource.requestRenderAll();
|
|
58
|
+
}
|
|
59
|
+
exports.SetCanvasBaseConfigFn = SetCanvasBaseConfigFn;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare function QueryCanvasActionDataFn(): any;
|
|
2
|
+
export declare function QueryElementSizeFn(id: string): string | {
|
|
3
|
+
width: number;
|
|
4
|
+
height: number;
|
|
5
|
+
} | undefined;
|
|
6
|
+
export declare function QuerySelectionAllElementsFn(options: any): any[] | any;
|
|
7
|
+
export declare function QuerySelectionElementsFn(item: any): any[] | any;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QuerySelectionElementsFn = exports.QuerySelectionAllElementsFn = exports.QueryElementSizeFn = exports.QueryCanvasActionDataFn = void 0;
|
|
4
|
+
var is_1 = require("../is");
|
|
5
|
+
var utils_1 = require("../utils");
|
|
6
|
+
function QueryCanvasActionDataFn() {
|
|
7
|
+
var _a, _b, _c, _d, _e;
|
|
8
|
+
var _ = this;
|
|
9
|
+
if (!_.canvasDataSource) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
var zoom = _.canvasDataSource.getZoom();
|
|
13
|
+
console.log("getCanvasActionDataFn--zoom=", zoom);
|
|
14
|
+
var x = 0;
|
|
15
|
+
var y = 0;
|
|
16
|
+
var left = 0;
|
|
17
|
+
var top = 0;
|
|
18
|
+
if ((_a = _.mouseWheelPointerDataSource) === null || _a === void 0 ? void 0 : _a.e) {
|
|
19
|
+
var _f = _.mouseWheelPointerDataSource.e, _g = _f.offsetX, offsetX = _g === void 0 ? 0 : _g, _h = _f.offsetY, offsetY = _h === void 0 ? 0 : _h;
|
|
20
|
+
x = offsetX;
|
|
21
|
+
y = offsetY;
|
|
22
|
+
left = ((_c = (_b = _.mouseWheelPointerDataSource) === null || _b === void 0 ? void 0 : _b.absolutePointer) === null || _c === void 0 ? void 0 : _c.x) || 0;
|
|
23
|
+
top = ((_e = (_d = _.mouseWheelPointerDataSource) === null || _d === void 0 ? void 0 : _d.absolutePointer) === null || _e === void 0 ? void 0 : _e.y) || 0;
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
zoom: zoom,
|
|
27
|
+
x: x,
|
|
28
|
+
y: y,
|
|
29
|
+
left: left,
|
|
30
|
+
top: top,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
exports.QueryCanvasActionDataFn = QueryCanvasActionDataFn;
|
|
34
|
+
function QueryElementSizeFn(id) {
|
|
35
|
+
if (!(0, is_1.isObject)(id)) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
var _ = this;
|
|
39
|
+
var box = (0, utils_1.getDomFn)(id);
|
|
40
|
+
if (!box) {
|
|
41
|
+
console.error("canvas外层必须套一层id=canvasContainer的DOM元素");
|
|
42
|
+
}
|
|
43
|
+
var height = box.clientHeight;
|
|
44
|
+
var width = box.clientWidth;
|
|
45
|
+
return {
|
|
46
|
+
height: height,
|
|
47
|
+
width: width
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
exports.QueryElementSizeFn = QueryElementSizeFn;
|
|
51
|
+
function QuerySelectionAllElementsFn(options) {
|
|
52
|
+
if (!(0, is_1.isObject)(options)) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
var _ = this;
|
|
56
|
+
if (!_.canvasDataSource) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
var dataList = [];
|
|
60
|
+
var selection = _.canvasSelectionElementsDataSource || [];
|
|
61
|
+
// 检查哪些图标在选择框内
|
|
62
|
+
_.canvasDataSource.forEachObject(function (obj) {
|
|
63
|
+
var isTarget = false;
|
|
64
|
+
selection.map(function (item) {
|
|
65
|
+
if (obj.intersectsWithObject(item)) {
|
|
66
|
+
isTarget = true;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
if (isTarget && (obj === null || obj === void 0 ? void 0 : obj.elementKey) == "data") {
|
|
70
|
+
dataList.push(obj);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
return dataList;
|
|
74
|
+
}
|
|
75
|
+
exports.QuerySelectionAllElementsFn = QuerySelectionAllElementsFn;
|
|
76
|
+
function QuerySelectionElementsFn(item) {
|
|
77
|
+
if (!(0, is_1.isObject)(item)) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
var _ = this;
|
|
81
|
+
if (!_.canvasDataSource) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
var dataList = [];
|
|
85
|
+
// 检查哪些图标在选择框内
|
|
86
|
+
_.canvasDataSource.forEachObject(function (obj) {
|
|
87
|
+
if (item && obj.intersectsWithObject(item) && (obj === null || obj === void 0 ? void 0 : obj.elementKey) == "data") {
|
|
88
|
+
dataList.push(obj);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
return dataList;
|
|
92
|
+
}
|
|
93
|
+
exports.QuerySelectionElementsFn = QuerySelectionElementsFn;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RegisterCanvasZoomChangeEventFn = exports.RegisterCanvasEventFn = void 0;
|
|
4
|
+
// 注册回调事件--页面生成画布实例的时候,调用该函数
|
|
5
|
+
function RegisterCanvasEventFn(config) {
|
|
6
|
+
var _ = this;
|
|
7
|
+
console.log("canvasDataSource--", _.canvasDataSource);
|
|
8
|
+
if (!_.canvasDataSource) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
if (config) {
|
|
12
|
+
_.callBackEventConfig = config;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.RegisterCanvasEventFn = RegisterCanvasEventFn;
|
|
16
|
+
function RegisterCanvasZoomChangeEventFn() {
|
|
17
|
+
var _ = this;
|
|
18
|
+
var zoom = _.canvasDataSource.getZoom();
|
|
19
|
+
return zoom;
|
|
20
|
+
}
|
|
21
|
+
exports.RegisterCanvasZoomChangeEventFn = RegisterCanvasZoomChangeEventFn;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare function RemoveAllSelectionRectFn(): void;
|
|
2
|
+
export declare function UpdateSelectionRectFn(options: any): void;
|
|
3
|
+
export declare function CreateSelectionRectFinishFn(): void;
|
|
4
|
+
export declare function HiddenRightClickMenuFn(): void;
|
|
5
|
+
export declare function RemoveElementFn(id: string): void;
|
|
6
|
+
export declare function RemoveAllElementFn(): void;
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemoveAllElementFn = exports.RemoveElementFn = exports.HiddenRightClickMenuFn = exports.CreateSelectionRectFinishFn = exports.UpdateSelectionRectFn = exports.RemoveAllSelectionRectFn = void 0;
|
|
4
|
+
var is_1 = require("../is");
|
|
5
|
+
var utils_1 = require("../utils");
|
|
6
|
+
function RemoveAllSelectionRectFn() {
|
|
7
|
+
var _ = this;
|
|
8
|
+
if (!_.canvasDataSource) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
_.canvasDataSource.remove(_.createSelectionRectDataSource);
|
|
12
|
+
_.canvasDataSource.requestRenderAll();
|
|
13
|
+
}
|
|
14
|
+
exports.RemoveAllSelectionRectFn = RemoveAllSelectionRectFn;
|
|
15
|
+
function UpdateSelectionRectFn(options) {
|
|
16
|
+
var _a, _b;
|
|
17
|
+
if (!(0, is_1.isObject)(options)) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
var _ = this;
|
|
21
|
+
if (!_.canvasDataSource) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (_.createSelectionRectDataSource) {
|
|
25
|
+
var pointer = _.canvasDataSource.getPointer(options.e);
|
|
26
|
+
var width = pointer.x - ((_a = _.mousePointerDataSource) === null || _a === void 0 ? void 0 : _a.x);
|
|
27
|
+
var height = pointer.y - ((_b = _.mousePointerDataSource) === null || _b === void 0 ? void 0 : _b.y);
|
|
28
|
+
_.createSelectionRectDataSource.set({ width: Math.abs(width), height: Math.abs(height) });
|
|
29
|
+
// _.createSelectionRectDataSource.setCoords(); // 更新控制点坐标
|
|
30
|
+
_.canvasDataSource.requestRenderAll();
|
|
31
|
+
_.createSelectionStatus = 3;
|
|
32
|
+
setTimeout(function () {
|
|
33
|
+
_.createSelectionStatus = 0;
|
|
34
|
+
}, 0);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.UpdateSelectionRectFn = UpdateSelectionRectFn;
|
|
38
|
+
function CreateSelectionRectFinishFn() {
|
|
39
|
+
var _ = this;
|
|
40
|
+
if (!_.canvasDataSource) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
_.canvasSelectionStatus = false;
|
|
44
|
+
_.isRightClick = false;
|
|
45
|
+
_.canvasDragStatus = true;
|
|
46
|
+
_.mouseRightClickStatus = false;
|
|
47
|
+
if (_.createSelectionRectDataSource) {
|
|
48
|
+
_.canvasSelectionElementsDataSource.push(_.createSelectionRectDataSource);
|
|
49
|
+
_.canvasCreateElementsDataSource.push(_.createSelectionRectDataSource);
|
|
50
|
+
_.createSelectionRectDataSource.setCoords(); // 更新控制点坐标
|
|
51
|
+
_.createSelectionRectDataSource = null; // 清除引用,结束绘制
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.CreateSelectionRectFinishFn = CreateSelectionRectFinishFn;
|
|
55
|
+
function HiddenRightClickMenuFn() {
|
|
56
|
+
var _ = this;
|
|
57
|
+
var canvasContainer = (0, utils_1.getDomFn)("canvasContainer");
|
|
58
|
+
var menuBox = (0, utils_1.getDomFn)("menuBox");
|
|
59
|
+
if (canvasContainer && menuBox) {
|
|
60
|
+
canvasContainer === null || canvasContainer === void 0 ? void 0 : canvasContainer.removeChild(menuBox);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.HiddenRightClickMenuFn = HiddenRightClickMenuFn;
|
|
64
|
+
function RemoveElementFn(id) {
|
|
65
|
+
if (!(0, is_1.isString)(id)) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
var _ = this;
|
|
69
|
+
if (!_.canvasDataSource) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
var list = _.canvasCreateElementsDataSource;
|
|
73
|
+
var targetElement = list.find(function (obj) {
|
|
74
|
+
return obj.id === id;
|
|
75
|
+
});
|
|
76
|
+
if (targetElement) {
|
|
77
|
+
_.canvasDataSource.remove(targetElement);
|
|
78
|
+
}
|
|
79
|
+
_.canvasDataSource.requestRenderAll();
|
|
80
|
+
}
|
|
81
|
+
exports.RemoveElementFn = RemoveElementFn;
|
|
82
|
+
function RemoveAllElementFn() {
|
|
83
|
+
var _ = this;
|
|
84
|
+
if (!_.canvasDataSource) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
var list = _.canvasCreateElementsDataSource;
|
|
88
|
+
_.createSelectionRectDataSource = [];
|
|
89
|
+
_.canvasCreateElementsDataSource = [];
|
|
90
|
+
_.createSelectionRectDataSource = [];
|
|
91
|
+
_.dragElementDataSource = [];
|
|
92
|
+
_.canvasSelectionElementsDataSource = [];
|
|
93
|
+
_.canvasCreateTargetElementsDataSource = [];
|
|
94
|
+
_.defaultCreateDataList = [];
|
|
95
|
+
list.map(function (item) {
|
|
96
|
+
if (item) {
|
|
97
|
+
_.canvasDataSource.remove(item);
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
_.canvasDataSource.requestRenderAll();
|
|
101
|
+
}
|
|
102
|
+
exports.RemoveAllElementFn = RemoveAllElementFn;
|
package/dist/iframe/index.js
CHANGED
|
@@ -15,7 +15,7 @@ var $iframe = function (id) {
|
|
|
15
15
|
console.error("请传入 iframe id属性值!");
|
|
16
16
|
return;
|
|
17
17
|
}
|
|
18
|
-
var iframe = (0, utils_1
|
|
18
|
+
var iframe = (0, utils_1.getDomFn)(id) || {};
|
|
19
19
|
if ((iframe === null || iframe === void 0 ? void 0 : iframe.tagName) === 'IFRAME') {
|
|
20
20
|
return iframe;
|
|
21
21
|
}
|
package/dist/is/has.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const hasProperty: (obj: any, attr: string) => boolean;
|
package/dist/is/has.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hasProperty = void 0;
|
|
4
|
+
var is_1 = require("../is");
|
|
5
|
+
var hasProperty = function (obj, attr) {
|
|
6
|
+
if (!obj || !attr) {
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
if ((0, is_1.isObject)(obj)) {
|
|
10
|
+
return obj.hasOwnProperty(attr);
|
|
11
|
+
}
|
|
12
|
+
return false;
|
|
13
|
+
};
|
|
14
|
+
exports.hasProperty = hasProperty;
|
package/dist/modal/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.destroyMessageModule = exports.createMessageModule = exports.destroySpinModule = exports.createSpinModule = void 0;
|
|
4
4
|
// 通过ID获取DOM元素
|
|
5
|
-
function
|
|
5
|
+
function getDomFn(id) {
|
|
6
6
|
if (!id)
|
|
7
7
|
return false;
|
|
8
8
|
var dom = document.getElementById(id);
|
|
@@ -54,7 +54,7 @@ exports.destroySpinModule = destroySpinModule;
|
|
|
54
54
|
var toggleDomModule = function (id, val) {
|
|
55
55
|
if (!id)
|
|
56
56
|
return;
|
|
57
|
-
var div =
|
|
57
|
+
var div = getDomFn(id) || "";
|
|
58
58
|
if (div) {
|
|
59
59
|
div.style.display = val;
|
|
60
60
|
}
|
|
@@ -89,7 +89,7 @@ var destroyMessageModule = function () {
|
|
|
89
89
|
};
|
|
90
90
|
exports.destroyMessageModule = destroyMessageModule;
|
|
91
91
|
var removeDom = function (id) {
|
|
92
|
-
var div =
|
|
92
|
+
var div = getDomFn(id);
|
|
93
93
|
if (div)
|
|
94
94
|
div.remove();
|
|
95
95
|
};
|
package/dist/utils.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export declare function isMobile(): boolean;
|
|
|
6
6
|
* @returns
|
|
7
7
|
*/
|
|
8
8
|
export declare function isJson(str: string): any;
|
|
9
|
-
export declare function
|
|
9
|
+
export declare function getDomFn(id: string): false | HTMLElement;
|
|
10
10
|
export declare function checkIframeContentHeight(option: UeditorHeightOption): string;
|
|
11
11
|
export declare function getIframeContentHeight(id: string): any;
|
|
12
12
|
/**
|