@netless/forge-slide 1.0.0 → 1.0.1
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/Slide.d.ts +2 -1
- package/dist/Slide.d.ts.map +1 -1
- package/dist/index.esm.js +200 -99
- package/dist/index.esm.js.map +2 -2
- package/dist/index.js +200 -99
- package/dist/index.js.map +2 -2
- package/package.json +3 -3
- package/src/Slide.ts +2 -1
package/dist/Slide.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import EventEmitter from 'eventemitter3';
|
|
2
|
-
import { ApplicationInstanceType } from '@netless/forge-room';
|
|
2
|
+
import { ApplicationInstanceType, ForgeWindow } from '@netless/forge-room';
|
|
3
3
|
import { ForgeSlidePermissionFlag, ForgeSlidePermissions } from './ForgeSlidePermession';
|
|
4
4
|
export interface SlideEvents {
|
|
5
5
|
/**
|
|
@@ -35,6 +35,7 @@ export declare class SlideForge extends EventEmitter<SlideEvents> implements App
|
|
|
35
35
|
readonly permissions: ForgeSlidePermissions;
|
|
36
36
|
readonly footView: HTMLDivElement;
|
|
37
37
|
readonly sideBarView: HTMLDivElement;
|
|
38
|
+
readonly window: ForgeWindow | undefined;
|
|
38
39
|
/**
|
|
39
40
|
* 当前页面索引, 从 0 开始
|
|
40
41
|
*/
|
package/dist/Slide.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Slide.d.ts","sourceRoot":"","sources":["../src/Slide.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"Slide.d.ts","sourceRoot":"","sources":["../src/Slide.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEzF,MAAM,WAAW,WAAW;IACxB;;;;;OAKG;IACH,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7F;;;OAGG;IACH,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAEzC;;;OAGG;IACH,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAEvC;;;OAGG;IACH,cAAc,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/C;;;OAGG;IACH,gBAAgB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CACpD;AAGD,qBAAa,UAAW,SAAQ,YAAY,CAAC,WAAW,CAAE,YAAW,uBAAuB;IAE1F,SAAgB,IAAI,EAAG,cAAc,CAAC;IACtC,SAAgB,WAAW,EAAG,qBAAqB,CAAC;IACpD,SAAgB,QAAQ,EAAG,cAAc,CAAC;IAC1C,SAAgB,WAAW,EAAG,cAAc,CAAC;IAC7C,SAAgB,MAAM,EAAE,WAAW,GAAG,SAAS,CAAa;IAC5D;;SAEK;IACL,SAAgB,SAAS,EAAG,MAAM,CAAC;IACnC;;SAEK;IACL,SAAgB,SAAS,EAAG,MAAM,CAAC;IACnC;;;SAGK;IACE,IAAI,EAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC;;SAEK;IACE,QAAQ,EAAG,MAAM,IAAI,CAAC;IAC7B;;SAEK;IACE,QAAQ,EAAG,MAAM,IAAI,CAAC;IAC7B;;SAEK;IACE,QAAQ,EAAG,MAAM,IAAI,CAAC;IAC7B;;SAEK;IACE,QAAQ,EAAG,MAAM,IAAI,CAAC;IAC7B;;SAEK;IACE,aAAa,EAAG,MAAM,IAAI,CAAC;IAElC;;;SAGK;IACE,UAAU,EAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD;;;SAGK;IACE,MAAM,EAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD;;;SAGK;IACE,OAAO,EAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;CAC9E"}
|
package/dist/index.esm.js
CHANGED
|
@@ -61158,7 +61158,11 @@ var ElementModel = class _ElementModel {
|
|
|
61158
61158
|
return this.root.get(_ElementModel.KEYS.pointsMatrix) || [1, 0, 0, 1, 0, 0];
|
|
61159
61159
|
}
|
|
61160
61160
|
get points() {
|
|
61161
|
-
|
|
61161
|
+
const list = this.root.get(_ElementModel.KEYS.points);
|
|
61162
|
+
if (list) {
|
|
61163
|
+
return list.toArray();
|
|
61164
|
+
}
|
|
61165
|
+
return [];
|
|
61162
61166
|
}
|
|
61163
61167
|
set ownerId(value) {
|
|
61164
61168
|
this.root.set(_ElementModel.KEYS.ownerId, value);
|
|
@@ -61801,7 +61805,12 @@ var LineTool = class extends WhiteboardTool {
|
|
|
61801
61805
|
if (this.elementModel) {
|
|
61802
61806
|
this.elementModel.dispose();
|
|
61803
61807
|
}
|
|
61804
|
-
this.elementModel =
|
|
61808
|
+
this.elementModel = null;
|
|
61809
|
+
this.modelGetter().then((model) => {
|
|
61810
|
+
if (model) {
|
|
61811
|
+
this.elementModel = model.createLinePath(true);
|
|
61812
|
+
}
|
|
61813
|
+
});
|
|
61805
61814
|
this.from = event.point.clone();
|
|
61806
61815
|
this.to = event.point.clone();
|
|
61807
61816
|
}
|
|
@@ -63693,7 +63702,12 @@ var CurveTool = class extends WhiteboardTool {
|
|
|
63693
63702
|
if (this.elementModel) {
|
|
63694
63703
|
this.elementModel.dispose();
|
|
63695
63704
|
}
|
|
63696
|
-
this.elementModel =
|
|
63705
|
+
this.elementModel = null;
|
|
63706
|
+
this.modelGetter().then((model) => {
|
|
63707
|
+
if (model) {
|
|
63708
|
+
this.elementModel = model.createCurve(true);
|
|
63709
|
+
}
|
|
63710
|
+
});
|
|
63697
63711
|
}
|
|
63698
63712
|
onMouseDrag(event) {
|
|
63699
63713
|
if (this.pointCount > 1024) {
|
|
@@ -63720,34 +63734,41 @@ var CurveTool = class extends WhiteboardTool {
|
|
|
63720
63734
|
}
|
|
63721
63735
|
}
|
|
63722
63736
|
onMouseUp(event) {
|
|
63723
|
-
|
|
63724
|
-
|
|
63725
|
-
|
|
63726
|
-
|
|
63727
|
-
this.elementModel
|
|
63728
|
-
|
|
63729
|
-
|
|
63730
|
-
const result = this.recognizer.recognize(this.elementModel.points);
|
|
63731
|
-
if (result) {
|
|
63732
|
-
this.modelGetter().removeElementItem(this.elementModel.uuid);
|
|
63733
|
-
if (/^rectangle/.test(result.shape)) {
|
|
63734
|
-
const model = this.modelGetter().createRectangle(false);
|
|
63735
|
-
model?.setPoints([result.minX, result.minY, result.maxX, result.maxY]);
|
|
63736
|
-
} else if (/^circle/.test(result.shape)) {
|
|
63737
|
-
const model = this.modelGetter().createSegmentedPath("ellipse", false);
|
|
63738
|
-
const rect = new this.scope.Rectangle(new this.scope.Point(result.minX, result.minY), new this.scope.Point(result.maxX, result.maxY));
|
|
63739
|
-
const pathRect = new this.scope.Path.Ellipse(rect);
|
|
63740
|
-
const points = serializePath(pathRect);
|
|
63741
|
-
model?.setPoints(points);
|
|
63742
|
-
} else if (/^triangle/.test(result.shape)) {
|
|
63743
|
-
const model = this.modelGetter().createTriangle(false);
|
|
63744
|
-
model?.setPoints([result.minX + (result.maxX - result.minX) / 2, result.minY, result.minX, result.maxY, result.maxX, result.maxY]);
|
|
63745
|
-
} else if (/^arrow/.test(result.shape)) {
|
|
63746
|
-
const model = this.modelGetter().createLinePath(false);
|
|
63747
|
-
model?.setPoints([result.minX, (result.maxY + result.minY) / 2, result.maxX, (result.maxY + result.minY) / 2]);
|
|
63737
|
+
this.modelGetter().then((model) => {
|
|
63738
|
+
if (!model) {
|
|
63739
|
+
return;
|
|
63740
|
+
}
|
|
63741
|
+
if (this.pointCount < 3 && this.elementModel) {
|
|
63742
|
+
if (this.elementModel) {
|
|
63743
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
63748
63744
|
}
|
|
63749
63745
|
}
|
|
63750
|
-
|
|
63746
|
+
if (this.elementModel) {
|
|
63747
|
+
this.elementModel.shadow = "";
|
|
63748
|
+
}
|
|
63749
|
+
if (this.elementModel && event.event.metaKey) {
|
|
63750
|
+
const result = this.recognizer.recognize(this.elementModel.points);
|
|
63751
|
+
if (result) {
|
|
63752
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
63753
|
+
if (/^rectangle/.test(result.shape)) {
|
|
63754
|
+
const rect = model.createRectangle(false);
|
|
63755
|
+
rect?.setPoints([result.minX, result.minY, result.maxX, result.maxY]);
|
|
63756
|
+
} else if (/^circle/.test(result.shape)) {
|
|
63757
|
+
const circle = model.createSegmentedPath("ellipse", false);
|
|
63758
|
+
const rect = new this.scope.Rectangle(new this.scope.Point(result.minX, result.minY), new this.scope.Point(result.maxX, result.maxY));
|
|
63759
|
+
const pathRect = new this.scope.Path.Ellipse(rect);
|
|
63760
|
+
const points = serializePath(pathRect);
|
|
63761
|
+
circle?.setPoints(points);
|
|
63762
|
+
} else if (/^triangle/.test(result.shape)) {
|
|
63763
|
+
const triangle = model.createTriangle(false);
|
|
63764
|
+
triangle?.setPoints([result.minX + (result.maxX - result.minX) / 2, result.minY, result.minX, result.maxY, result.maxX, result.maxY]);
|
|
63765
|
+
} else if (/^arrow/.test(result.shape)) {
|
|
63766
|
+
const arrow = model.createLinePath(false);
|
|
63767
|
+
arrow?.setPoints([result.minX, (result.maxY + result.minY) / 2, result.maxX, (result.maxY + result.minY) / 2]);
|
|
63768
|
+
}
|
|
63769
|
+
}
|
|
63770
|
+
}
|
|
63771
|
+
});
|
|
63751
63772
|
}
|
|
63752
63773
|
};
|
|
63753
63774
|
function _defineProperty20(e, r, t) {
|
|
@@ -63780,7 +63801,12 @@ var RectangleTool = class extends WhiteboardTool {
|
|
|
63780
63801
|
if (this.elementModel) {
|
|
63781
63802
|
this.elementModel.dispose();
|
|
63782
63803
|
}
|
|
63783
|
-
this.elementModel =
|
|
63804
|
+
this.elementModel = null;
|
|
63805
|
+
this.modelGetter().then((model) => {
|
|
63806
|
+
if (model) {
|
|
63807
|
+
this.elementModel = model.createRectangle(true);
|
|
63808
|
+
}
|
|
63809
|
+
});
|
|
63784
63810
|
this.from = event.point.clone();
|
|
63785
63811
|
this.to = event.point.clone();
|
|
63786
63812
|
}
|
|
@@ -63795,7 +63821,11 @@ var RectangleTool = class extends WhiteboardTool {
|
|
|
63795
63821
|
this.elementModel.shadow = "";
|
|
63796
63822
|
}
|
|
63797
63823
|
if (this.elementModel && this.from && this.from.getDistance(event.point) < 3) {
|
|
63798
|
-
this.modelGetter().
|
|
63824
|
+
this.modelGetter().then((model) => {
|
|
63825
|
+
if (model && this.elementModel) {
|
|
63826
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
63827
|
+
}
|
|
63828
|
+
});
|
|
63799
63829
|
}
|
|
63800
63830
|
}
|
|
63801
63831
|
};
|
|
@@ -63933,11 +63963,16 @@ var SelectorTool = class extends WhiteboardTool {
|
|
|
63933
63963
|
if (this.elementModel) {
|
|
63934
63964
|
this.elementModel.dispose();
|
|
63935
63965
|
}
|
|
63936
|
-
this.elementModel =
|
|
63937
|
-
this.
|
|
63938
|
-
|
|
63939
|
-
|
|
63940
|
-
|
|
63966
|
+
this.elementModel = null;
|
|
63967
|
+
this.modelGetter().then((model) => {
|
|
63968
|
+
if (model) {
|
|
63969
|
+
this.elementModel = model.createSelector();
|
|
63970
|
+
this.from = event.point.clone();
|
|
63971
|
+
this.to = event.point.clone();
|
|
63972
|
+
const rect = new this.scope.Rectangle(this.from, this.to);
|
|
63973
|
+
this.elementModel?.setPoints([rect.topLeft.x, rect.topLeft.y, rect.size.width, rect.size.height]);
|
|
63974
|
+
}
|
|
63975
|
+
});
|
|
63941
63976
|
this.selectElements.clear();
|
|
63942
63977
|
}
|
|
63943
63978
|
onMouseDrag(event) {
|
|
@@ -63959,7 +63994,11 @@ var SelectorTool = class extends WhiteboardTool {
|
|
|
63959
63994
|
}
|
|
63960
63995
|
onMouseUp(event) {
|
|
63961
63996
|
if (this.elementModel) {
|
|
63962
|
-
this.modelGetter().
|
|
63997
|
+
this.modelGetter().then((model) => {
|
|
63998
|
+
if (model && this.elementModel) {
|
|
63999
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
64000
|
+
}
|
|
64001
|
+
});
|
|
63963
64002
|
}
|
|
63964
64003
|
const elements = Array.from(this.selectElements.keys()).reduce((result, next) => {
|
|
63965
64004
|
result.push({
|
|
@@ -64885,41 +64924,46 @@ var TextTool = class extends WhiteboardTool {
|
|
|
64885
64924
|
if (this.elementModel) {
|
|
64886
64925
|
this.elementModel.dispose();
|
|
64887
64926
|
}
|
|
64888
|
-
this.elementModel =
|
|
64889
|
-
|
|
64890
|
-
|
|
64891
|
-
|
|
64892
|
-
|
|
64893
|
-
|
|
64894
|
-
editorContainer.style.cssText = `position:absolute;transform:translate(-50%, -50%);top:50%;left:50%;width:${canvasBounds.width}px;height:${canvasBounds.height}px;`;
|
|
64895
|
-
const editor = new TextEditor(this.camera);
|
|
64896
|
-
editor.setOrigin(x, y);
|
|
64897
|
-
editorContainer.appendChild(editor.rootView);
|
|
64898
|
-
this.rootView.appendChild(editorContainer);
|
|
64899
|
-
editor.setFontSize(this.toolbarModel.fontSize);
|
|
64900
|
-
editor.setFontFamily(this.toolbarModel.fontFamily);
|
|
64901
|
-
this.camera.triggerZoom();
|
|
64902
|
-
editor.on("caretOutRight", () => {
|
|
64903
|
-
});
|
|
64904
|
-
editor.on("change", (content) => {
|
|
64905
|
-
if (this.elementModel) {
|
|
64906
|
-
this.elementModel.content = content;
|
|
64907
|
-
}
|
|
64908
|
-
});
|
|
64909
|
-
editor.on("done", () => {
|
|
64910
|
-
if (this.elementModel) {
|
|
64911
|
-
if (!this.elementModel.content || this.elementModel.content.length === 0) {
|
|
64912
|
-
this.modelGetter().removeElementItem(this.elementModel.uuid);
|
|
64913
|
-
} else {
|
|
64914
|
-
this.elementModel.shadow = "";
|
|
64927
|
+
this.elementModel = null;
|
|
64928
|
+
this.modelGetter().then((model) => {
|
|
64929
|
+
if (model) {
|
|
64930
|
+
this.elementModel = model.createPointText(x, y, true);
|
|
64931
|
+
if (this.elementModel === null) {
|
|
64932
|
+
return;
|
|
64915
64933
|
}
|
|
64934
|
+
const editorContainer = window.document.createElement("div");
|
|
64935
|
+
const canvasBounds = this.canvasElement.getBoundingClientRect();
|
|
64936
|
+
editorContainer.style.cssText = `position:absolute;transform:translate(-50%, -50%);top:50%;left:50%;width:${canvasBounds.width}px;height:${canvasBounds.height}px;`;
|
|
64937
|
+
const editor = new TextEditor(this.camera);
|
|
64938
|
+
editor.setOrigin(x, y);
|
|
64939
|
+
editorContainer.appendChild(editor.rootView);
|
|
64940
|
+
this.rootView.appendChild(editorContainer);
|
|
64941
|
+
editor.setFontSize(this.toolbarModel.fontSize);
|
|
64942
|
+
editor.setFontFamily(this.toolbarModel.fontFamily);
|
|
64943
|
+
this.camera.triggerZoom();
|
|
64944
|
+
editor.on("caretOutRight", () => {
|
|
64945
|
+
});
|
|
64946
|
+
editor.on("change", (content) => {
|
|
64947
|
+
if (this.elementModel) {
|
|
64948
|
+
this.elementModel.content = content;
|
|
64949
|
+
}
|
|
64950
|
+
});
|
|
64951
|
+
editor.on("done", () => {
|
|
64952
|
+
if (this.elementModel) {
|
|
64953
|
+
if (!this.elementModel.content || this.elementModel.content.length === 0) {
|
|
64954
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
64955
|
+
} else {
|
|
64956
|
+
this.elementModel.shadow = "";
|
|
64957
|
+
}
|
|
64958
|
+
}
|
|
64959
|
+
editor.dispose();
|
|
64960
|
+
this.rootView.removeChild(editorContainer);
|
|
64961
|
+
});
|
|
64962
|
+
setTimeout(() => {
|
|
64963
|
+
editor.focus();
|
|
64964
|
+
}, 30);
|
|
64916
64965
|
}
|
|
64917
|
-
editor.dispose();
|
|
64918
|
-
this.rootView.removeChild(editorContainer);
|
|
64919
64966
|
});
|
|
64920
|
-
setTimeout(() => {
|
|
64921
|
-
editor.focus();
|
|
64922
|
-
}, 30);
|
|
64923
64967
|
}
|
|
64924
64968
|
};
|
|
64925
64969
|
function _defineProperty27(e, r, t) {
|
|
@@ -65426,7 +65470,12 @@ var EllipseTool = class extends WhiteboardTool {
|
|
|
65426
65470
|
if (this.elementModel) {
|
|
65427
65471
|
this.elementModel.dispose();
|
|
65428
65472
|
}
|
|
65429
|
-
this.elementModel =
|
|
65473
|
+
this.elementModel = null;
|
|
65474
|
+
this.modelGetter().then((model) => {
|
|
65475
|
+
if (model) {
|
|
65476
|
+
this.elementModel = model.createSegmentedPath("ellipse", true);
|
|
65477
|
+
}
|
|
65478
|
+
});
|
|
65430
65479
|
this.from = event.point.clone();
|
|
65431
65480
|
this.to = event.point.clone();
|
|
65432
65481
|
}
|
|
@@ -65441,7 +65490,11 @@ var EllipseTool = class extends WhiteboardTool {
|
|
|
65441
65490
|
}
|
|
65442
65491
|
onMouseUp(event) {
|
|
65443
65492
|
if (this.elementModel && this.from && this.from.getDistance(event.point) < 3) {
|
|
65444
|
-
this.modelGetter().
|
|
65493
|
+
this.modelGetter().then((model) => {
|
|
65494
|
+
if (model && this.elementModel) {
|
|
65495
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
65496
|
+
}
|
|
65497
|
+
});
|
|
65445
65498
|
} else {
|
|
65446
65499
|
if (this.elementModel) {
|
|
65447
65500
|
this.elementModel.shadow = "";
|
|
@@ -65479,7 +65532,12 @@ var TriangleTool = class extends WhiteboardTool {
|
|
|
65479
65532
|
if (this.elementModel) {
|
|
65480
65533
|
this.elementModel.dispose();
|
|
65481
65534
|
}
|
|
65482
|
-
this.elementModel =
|
|
65535
|
+
this.elementModel = null;
|
|
65536
|
+
this.modelGetter().then((model) => {
|
|
65537
|
+
if (model) {
|
|
65538
|
+
this.elementModel = model.createTriangle(true);
|
|
65539
|
+
}
|
|
65540
|
+
});
|
|
65483
65541
|
this.from = event.point.clone();
|
|
65484
65542
|
this.to = event.point.clone();
|
|
65485
65543
|
}
|
|
@@ -65491,7 +65549,11 @@ var TriangleTool = class extends WhiteboardTool {
|
|
|
65491
65549
|
}
|
|
65492
65550
|
onMouseUp(event) {
|
|
65493
65551
|
if (this.elementModel && this.from && this.from.getDistance(event.point) < 3) {
|
|
65494
|
-
this.modelGetter().
|
|
65552
|
+
this.modelGetter().then((model) => {
|
|
65553
|
+
if (model && this.elementModel) {
|
|
65554
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
65555
|
+
}
|
|
65556
|
+
});
|
|
65495
65557
|
}
|
|
65496
65558
|
if (this.elementModel) {
|
|
65497
65559
|
this.elementModel.shadow = "";
|
|
@@ -65520,6 +65582,7 @@ var Whiteboard = class extends EventEmitter8 {
|
|
|
65520
65582
|
super();
|
|
65521
65583
|
_defineProperty31(this, "view", void 0);
|
|
65522
65584
|
_defineProperty31(this, "selfUserId", void 0);
|
|
65585
|
+
_defineProperty31(this, "window", void 0);
|
|
65523
65586
|
_defineProperty31(this, "permissions", void 0);
|
|
65524
65587
|
_defineProperty31(this, "tool", void 0);
|
|
65525
65588
|
_defineProperty31(this, "fontSize", void 0);
|
|
@@ -65601,7 +65664,12 @@ var EraserTool = class extends WhiteboardTool {
|
|
|
65601
65664
|
if (this.elementModel) {
|
|
65602
65665
|
this.elementModel.dispose();
|
|
65603
65666
|
}
|
|
65604
|
-
this.elementModel =
|
|
65667
|
+
this.elementModel = null;
|
|
65668
|
+
this.modelGetter().then((model) => {
|
|
65669
|
+
if (model) {
|
|
65670
|
+
this.elementModel = model.createEraser();
|
|
65671
|
+
}
|
|
65672
|
+
});
|
|
65605
65673
|
}
|
|
65606
65674
|
onMouseDrag(event) {
|
|
65607
65675
|
if (this.pointCount > 1024) {
|
|
@@ -65634,7 +65702,11 @@ var EraserTool = class extends WhiteboardTool {
|
|
|
65634
65702
|
}
|
|
65635
65703
|
onMouseUp(_event) {
|
|
65636
65704
|
if (this.elementModel) {
|
|
65637
|
-
this.modelGetter().
|
|
65705
|
+
this.modelGetter().then((model) => {
|
|
65706
|
+
if (model && this.elementModel) {
|
|
65707
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
65708
|
+
}
|
|
65709
|
+
});
|
|
65638
65710
|
}
|
|
65639
65711
|
this.trashedElementsModel.removeAllTrashedElementsForSelf();
|
|
65640
65712
|
}
|
|
@@ -65786,7 +65858,12 @@ var LaserPointerTool = class extends WhiteboardTool {
|
|
|
65786
65858
|
if (this.elementModel) {
|
|
65787
65859
|
this.elementModel.dispose();
|
|
65788
65860
|
}
|
|
65789
|
-
this.elementModel =
|
|
65861
|
+
this.elementModel = null;
|
|
65862
|
+
this.modelGetter().then((model) => {
|
|
65863
|
+
if (model) {
|
|
65864
|
+
this.elementModel = model.createLaserPointer();
|
|
65865
|
+
}
|
|
65866
|
+
});
|
|
65790
65867
|
}
|
|
65791
65868
|
onMouseDrag(event) {
|
|
65792
65869
|
if (this.pointCount > 1024) {
|
|
@@ -66396,7 +66473,12 @@ var StraightLineTool = class extends WhiteboardTool {
|
|
|
66396
66473
|
if (this.elementModel) {
|
|
66397
66474
|
this.elementModel.dispose();
|
|
66398
66475
|
}
|
|
66399
|
-
this.elementModel =
|
|
66476
|
+
this.elementModel = null;
|
|
66477
|
+
this.modelGetter().then((model) => {
|
|
66478
|
+
if (model) {
|
|
66479
|
+
this.elementModel = model.createStraightLine(true);
|
|
66480
|
+
}
|
|
66481
|
+
});
|
|
66400
66482
|
this.from = event.point.clone();
|
|
66401
66483
|
this.to = event.point.clone();
|
|
66402
66484
|
}
|
|
@@ -66411,7 +66493,11 @@ var StraightLineTool = class extends WhiteboardTool {
|
|
|
66411
66493
|
this.elementModel.shadow = "";
|
|
66412
66494
|
}
|
|
66413
66495
|
if (this.elementModel && this.from && this.from.getDistance(event.point) < 3) {
|
|
66414
|
-
this.modelGetter().
|
|
66496
|
+
this.modelGetter().then((model) => {
|
|
66497
|
+
if (model && this.elementModel) {
|
|
66498
|
+
model.removeElementItem(this.elementModel.uuid);
|
|
66499
|
+
}
|
|
66500
|
+
});
|
|
66415
66501
|
}
|
|
66416
66502
|
}
|
|
66417
66503
|
};
|
|
@@ -66885,12 +66971,20 @@ var WhiteboardApplication = class extends AbstractApplication {
|
|
|
66885
66971
|
}
|
|
66886
66972
|
}
|
|
66887
66973
|
});
|
|
66888
|
-
_defineProperty43(this, "
|
|
66974
|
+
_defineProperty43(this, "getCurrentRendererModel", () => {
|
|
66889
66975
|
const layerId = this.userMap(this.userId).get(WhiteboardKeys.currentPage);
|
|
66890
|
-
if (
|
|
66891
|
-
this.
|
|
66976
|
+
if (this.layers.has(layerId)) {
|
|
66977
|
+
return Promise.resolve(this.layers.get(layerId));
|
|
66978
|
+
} else {
|
|
66979
|
+
return waitUntil(() => this.layers.has(layerId), 1e3).then(() => {
|
|
66980
|
+
if (this.layers.has(layerId)) {
|
|
66981
|
+
return this.layers.get(layerId);
|
|
66982
|
+
} else {
|
|
66983
|
+
this.emitter.emit("error", 300002, `target page: ${layerId} not found`);
|
|
66984
|
+
return null;
|
|
66985
|
+
}
|
|
66986
|
+
});
|
|
66892
66987
|
}
|
|
66893
|
-
return this.layers.get(layerId);
|
|
66894
66988
|
});
|
|
66895
66989
|
_defineProperty43(this, "handleElementClear", () => {
|
|
66896
66990
|
this.shadowScope.project.activeLayer.removeChildren();
|
|
@@ -67186,11 +67280,17 @@ var WhiteboardApplication = class extends AbstractApplication {
|
|
|
67186
67280
|
}
|
|
67187
67281
|
};
|
|
67188
67282
|
this.emitter.clearPage = () => {
|
|
67189
|
-
|
|
67190
|
-
|
|
67191
|
-
|
|
67192
|
-
|
|
67193
|
-
|
|
67283
|
+
this.getCurrentRendererModel().then((model) => {
|
|
67284
|
+
if (model) {
|
|
67285
|
+
if (model.elements.doc) {
|
|
67286
|
+
model.elements.doc.transact(() => {
|
|
67287
|
+
model.elements.clear();
|
|
67288
|
+
}, elementsUndoOrigin);
|
|
67289
|
+
} else {
|
|
67290
|
+
model.elementModels.clear();
|
|
67291
|
+
}
|
|
67292
|
+
}
|
|
67293
|
+
});
|
|
67194
67294
|
};
|
|
67195
67295
|
this.emitter.undo = () => {
|
|
67196
67296
|
this.undoManager?.undo();
|
|
@@ -67412,18 +67512,18 @@ var WhiteboardApplication = class extends AbstractApplication {
|
|
|
67412
67512
|
return this.userMap(userId);
|
|
67413
67513
|
});
|
|
67414
67514
|
this.tools = {
|
|
67415
|
-
pointer: new PointerTool(this.enableToolEvent, this.
|
|
67416
|
-
curve: new CurveTool(this.enableToolEvent, this.
|
|
67417
|
-
rectangle: new RectangleTool(this.enableToolEvent, this.
|
|
67418
|
-
selector: new SelectorTool(this.enableToolEvent, this.
|
|
67419
|
-
arrow: new LineTool(this.enableToolEvent, this.
|
|
67420
|
-
line: new StraightLineTool(this.enableToolEvent, this.
|
|
67421
|
-
text: new TextTool(this.enableToolEvent, this.
|
|
67422
|
-
ellipse: new EllipseTool(this.enableToolEvent, this.
|
|
67423
|
-
triangle: new TriangleTool(this.enableToolEvent, this.
|
|
67424
|
-
eraser: new EraserTool(this.enableToolEvent, this.
|
|
67425
|
-
laser: new LaserPointerTool(this.enableToolEvent, this.
|
|
67426
|
-
grab: new GrabTool(this.enableToolEvent, this.
|
|
67515
|
+
pointer: new PointerTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope),
|
|
67516
|
+
curve: new CurveTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope),
|
|
67517
|
+
rectangle: new RectangleTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope),
|
|
67518
|
+
selector: new SelectorTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope, this.selectElementsModel),
|
|
67519
|
+
arrow: new LineTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope),
|
|
67520
|
+
line: new StraightLineTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope),
|
|
67521
|
+
text: new TextTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope, this.rootElement, this.canvasElement, this.toolbarModel, this.camera),
|
|
67522
|
+
ellipse: new EllipseTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope),
|
|
67523
|
+
triangle: new TriangleTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope),
|
|
67524
|
+
eraser: new EraserTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope, this.trashedElementsModel, this.shadowScope),
|
|
67525
|
+
laser: new LaserPointerTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope),
|
|
67526
|
+
grab: new GrabTool(this.enableToolEvent, this.getCurrentRendererModel, this.shadowEmitter, this.paperScope, this.camera)
|
|
67427
67527
|
};
|
|
67428
67528
|
this.toolbarModel.on("update", (style) => {
|
|
67429
67529
|
if (this.tools[style.tool]) {
|
|
@@ -67741,6 +67841,7 @@ var SlideForge = class extends EventEmitter13 {
|
|
|
67741
67841
|
permissions;
|
|
67742
67842
|
footView;
|
|
67743
67843
|
sideBarView;
|
|
67844
|
+
window = void 0;
|
|
67744
67845
|
/**
|
|
67745
67846
|
* 当前页面索引, 从 0 开始
|
|
67746
67847
|
*/
|