vim-web 0.5.0-dev.13 → 0.5.0-dev.15
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.
|
@@ -72,7 +72,7 @@ export declare class KeyboardHandler extends BaseInputHandler {
|
|
|
72
72
|
* @param code The event.code of the key.
|
|
73
73
|
* @param handler Callback invoked on key up.
|
|
74
74
|
*/
|
|
75
|
-
registerKeyUp(code: string, mode: CallbackMode, handler: () => void): void;
|
|
75
|
+
registerKeyUp(code: string | string[], mode: CallbackMode, handler: () => void): void;
|
|
76
76
|
private registerKey;
|
|
77
77
|
/**
|
|
78
78
|
* Internal key down event handler.
|
|
@@ -13,12 +13,14 @@ export declare class MouseHandler extends BaseInputHandler {
|
|
|
13
13
|
onClick: (position: THREE.Vector2, ctrl: boolean) => void;
|
|
14
14
|
onDoubleClick: (position: THREE.Vector2) => void;
|
|
15
15
|
onWheel: (value: number, ctrl: boolean) => void;
|
|
16
|
+
onContextMenu: (position: THREE.Vector2) => void;
|
|
16
17
|
constructor(canvas: HTMLCanvasElement);
|
|
17
18
|
protected addListeners(): void;
|
|
18
19
|
dispose(): void;
|
|
19
20
|
private handlePointerDown;
|
|
20
21
|
private handlePointerUp;
|
|
21
22
|
private handleMouseClick;
|
|
23
|
+
private handleContextMenu;
|
|
22
24
|
private handlePointerMove;
|
|
23
25
|
private handleDoubleClick;
|
|
24
26
|
private onMouseScroll;
|
package/dist/vim-web.iife.js
CHANGED
|
@@ -52602,7 +52602,11 @@ void main() {
|
|
|
52602
52602
|
* @param handler Callback invoked on key up.
|
|
52603
52603
|
*/
|
|
52604
52604
|
registerKeyUp(code, mode, handler) {
|
|
52605
|
-
|
|
52605
|
+
if (Array.isArray(code)) {
|
|
52606
|
+
code.forEach((c) => this.registerKey(this.keyUpHandlers, c, mode, handler));
|
|
52607
|
+
} else {
|
|
52608
|
+
this.registerKey(this.keyUpHandlers, code, mode, handler);
|
|
52609
|
+
}
|
|
52606
52610
|
}
|
|
52607
52611
|
registerKey(map, code, mode, callback) {
|
|
52608
52612
|
mode = map.has(code) ? mode : "replace";
|
|
@@ -52648,6 +52652,7 @@ void main() {
|
|
|
52648
52652
|
__publicField(this, "onClick");
|
|
52649
52653
|
__publicField(this, "onDoubleClick");
|
|
52650
52654
|
__publicField(this, "onWheel");
|
|
52655
|
+
__publicField(this, "onContextMenu");
|
|
52651
52656
|
this._capture = new CaptureHandler(canvas);
|
|
52652
52657
|
this._dragHandler = new DragHandler((delta, button) => this.onDrag(delta, button));
|
|
52653
52658
|
}
|
|
@@ -52689,6 +52694,7 @@ void main() {
|
|
|
52689
52694
|
this.handleDoubleClick(event);
|
|
52690
52695
|
} else {
|
|
52691
52696
|
this.handleMouseClick(event);
|
|
52697
|
+
this.handleContextMenu(event);
|
|
52692
52698
|
}
|
|
52693
52699
|
event.preventDefault();
|
|
52694
52700
|
}
|
|
@@ -52703,6 +52709,16 @@ void main() {
|
|
|
52703
52709
|
const modif = event.getModifierState("Shift") || event.getModifierState("Control");
|
|
52704
52710
|
(_a3 = this.onClick) == null ? void 0 : _a3.call(this, pos, modif);
|
|
52705
52711
|
}
|
|
52712
|
+
async handleContextMenu(event) {
|
|
52713
|
+
var _a3;
|
|
52714
|
+
if (event.pointerType !== "mouse") return;
|
|
52715
|
+
if (event.button !== 2) return;
|
|
52716
|
+
const pos = this.relativePosition(event);
|
|
52717
|
+
if (!almostEqual(this._lastMouseDownPosition, pos, 0.01)) {
|
|
52718
|
+
return;
|
|
52719
|
+
}
|
|
52720
|
+
(_a3 = this.onContextMenu) == null ? void 0 : _a3.call(this, new Vector2(event.clientX, event.clientY));
|
|
52721
|
+
}
|
|
52706
52722
|
handlePointerMove(event) {
|
|
52707
52723
|
var _a3;
|
|
52708
52724
|
if (event.pointerType !== "mouse") return;
|
|
@@ -53009,18 +53025,14 @@ void main() {
|
|
|
53009
53025
|
this._moveSpeed = settings2.moveSpeed ?? 1;
|
|
53010
53026
|
this.rotateSpeed = settings2.rotateSpeed ?? 1;
|
|
53011
53027
|
this.orbitSpeed = settings2.orbitSpeed ?? 1;
|
|
53012
|
-
this.reg(document, "contextmenu", (e) => {
|
|
53013
|
-
this._onContextMenu.dispatch(new Vector2(e.clientX, e.clientY));
|
|
53014
|
-
e.preventDefault();
|
|
53015
|
-
});
|
|
53016
53028
|
this.keyboard = new KeyboardHandler(canvas);
|
|
53017
53029
|
this.mouse = new MouseHandler(canvas);
|
|
53018
53030
|
this.touch = new TouchHandler(canvas);
|
|
53019
53031
|
this.keyboard.onKeyDown = (key) => adapter.keyDown(key);
|
|
53020
53032
|
this.keyboard.onKeyUp = (key) => adapter.keyUp(key);
|
|
53021
53033
|
this.keyboard.registerKeyUp("KeyP", "replace", () => adapter.toggleOrthographic());
|
|
53022
|
-
this.keyboard.registerKeyUp("Equal", "replace", () => this.moveSpeed++);
|
|
53023
|
-
this.keyboard.registerKeyUp("Minus", "replace", () => this.moveSpeed--);
|
|
53034
|
+
this.keyboard.registerKeyUp(["Equal", "NumpadAdd"], "replace", () => this.moveSpeed++);
|
|
53035
|
+
this.keyboard.registerKeyUp(["Minus", "NumpadSubtract"], "replace", () => this.moveSpeed--);
|
|
53024
53036
|
this.keyboard.registerKeyUp("Space", "replace", () => adapter.toggleCameraOrbitMode());
|
|
53025
53037
|
this.keyboard.registerKeyUp("Home", "replace", () => adapter.resetCamera());
|
|
53026
53038
|
this.keyboard.registerKeyUp("Escape", "replace", () => adapter.clearSelection());
|
|
@@ -53031,18 +53043,28 @@ void main() {
|
|
|
53031
53043
|
const mul = Math.pow(1.25, this._moveSpeed);
|
|
53032
53044
|
adapter.moveCamera(value.multiplyScalar(mul));
|
|
53033
53045
|
};
|
|
53046
|
+
this.mouse.onContextMenu = (pos) => this._onContextMenu.dispatch(pos);
|
|
53034
53047
|
this.mouse.onButtonDown = adapter.mouseDown;
|
|
53035
53048
|
this.mouse.onMouseMove = adapter.mouseMove;
|
|
53036
|
-
this.mouse.onButtonUp =
|
|
53049
|
+
this.mouse.onButtonUp = (pos, button) => {
|
|
53050
|
+
this.pointerOverride = void 0;
|
|
53051
|
+
adapter.mouseUp(pos, button);
|
|
53052
|
+
};
|
|
53037
53053
|
this.mouse.onDrag = (delta, button) => {
|
|
53038
53054
|
if (button === 0) {
|
|
53039
|
-
if (this.
|
|
53040
|
-
if (this.
|
|
53041
|
-
if (this.
|
|
53042
|
-
if (this.
|
|
53055
|
+
if (this.pointerActive === "orbit") adapter.orbitCamera(toRotation(delta, this.orbitSpeed));
|
|
53056
|
+
if (this.pointerActive === "look") adapter.rotateCamera(toRotation(delta, this.rotateSpeed));
|
|
53057
|
+
if (this.pointerActive === "pan") adapter.panCamera(delta);
|
|
53058
|
+
if (this.pointerActive === "zoom") adapter.dollyCamera(delta);
|
|
53059
|
+
}
|
|
53060
|
+
if (button === 2) {
|
|
53061
|
+
this.pointerOverride = "look";
|
|
53062
|
+
adapter.rotateCamera(toRotation(delta, 1));
|
|
53063
|
+
}
|
|
53064
|
+
if (button === 1) {
|
|
53065
|
+
this.pointerOverride = "pan";
|
|
53066
|
+
adapter.panCamera(delta);
|
|
53043
53067
|
}
|
|
53044
|
-
if (button === 2) adapter.rotateCamera(toRotation(delta, 1));
|
|
53045
|
-
if (button === 1) adapter.panCamera(delta);
|
|
53046
53068
|
};
|
|
53047
53069
|
this.mouse.onClick = (pos, modif) => adapter.selectAtPointer(pos, modif);
|
|
53048
53070
|
this.mouse.onDoubleClick = adapter.frameAtPointer;
|
|
@@ -55920,9 +55942,7 @@ void main() {
|
|
|
55920
55942
|
viewer.camera.orthographic = !viewer.camera.orthographic;
|
|
55921
55943
|
},
|
|
55922
55944
|
toggleCameraOrbitMode: () => {
|
|
55923
|
-
|
|
55924
|
-
this._pointerFallback = this._pointerActive;
|
|
55925
|
-
this._onPointerModeChanged.dispatch();
|
|
55945
|
+
viewer.inputs.pointerActive = viewer.inputs.pointerActive === PointerMode$1.ORBIT ? PointerMode$1.LOOK : PointerMode$1.ORBIT;
|
|
55926
55946
|
},
|
|
55927
55947
|
resetCamera: () => {
|
|
55928
55948
|
viewer.camera.lerp(0.75).reset();
|
|
@@ -75342,7 +75362,7 @@ Averrage Date/Second ${avgDataRatePS} kb
|
|
|
75342
75362
|
}
|
|
75343
75363
|
}
|
|
75344
75364
|
function MessageBox(props) {
|
|
75345
|
-
const [minimized, setMinimized] = React2.useState(
|
|
75365
|
+
const [minimized, setMinimized] = React2.useState(false);
|
|
75346
75366
|
const p = props.value;
|
|
75347
75367
|
if (!p.title || !p.body) return null;
|
|
75348
75368
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "vim-message-box vc-p-6 vc-max-h-[80%] vc-max-w-[80%] vc-w-[424px] vc-bg-white vc-rounded-md vc-shadow-message vc-shadow-[0px_4px_16px_rgba(33,39,51,0.5)] vc-font-roboto", children: [
|