@cognite/reveal 4.12.1-dev.20240425 → 4.12.1-dev.20240429
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/api-entry-points/core.d.ts +2 -2
- package/dist/index.js +228 -224
- package/dist/index.js.map +1 -1
- package/dist/packages/api/src/public/migration/Cognite3DViewer.d.ts +0 -1
- package/dist/packages/api/src/public/migration/types.d.ts +6 -1
- package/dist/packages/camera-manager/index.d.ts +1 -2
- package/dist/packages/camera-manager/src/Flexible/FlexibleCameraEventTarget.d.ts +20 -0
- package/dist/packages/camera-manager/src/Flexible/FlexibleCameraManager.d.ts +15 -14
- package/dist/packages/camera-manager/src/Flexible/FlexibleCameraMarkers.d.ts +1 -0
- package/dist/packages/camera-manager/src/Flexible/FlexibleControls.d.ts +22 -20
- package/dist/packages/camera-manager/src/Flexible/IFlexibleCameraManager.d.ts +45 -1
- package/dist/packages/camera-manager/src/Keyboard.d.ts +3 -5
- package/dist/packages/utilities/index.d.ts +7 -1
- package/dist/packages/utilities/src/events/InputHandler.d.ts +10 -18
- package/dist/packages/utilities/src/events/PointerEvents.d.ts +16 -0
- package/dist/packages/utilities/src/events/PointerEventsTarget.d.ts +29 -0
- package/dist/packages/utilities/src/events/disposeOfAllEventListeners.d.ts +11 -0
- package/dist/packages/utilities/src/events/getWheelEventDelta.d.ts +8 -0
- package/package.json +3 -3
- package/dist/packages/camera-manager/src/Flexible/FlexibleControlsEvent.d.ts +0 -19
- package/dist/packages/camera-manager/src/utils/getWheelDelta.d.ts +0 -4
- package/dist/packages/utilities/src/events/index.d.ts +0 -7
|
@@ -145,10 +145,15 @@ export interface Cognite3DViewerOptions {
|
|
|
145
145
|
*/
|
|
146
146
|
continuousModelStreaming?: boolean;
|
|
147
147
|
/**
|
|
148
|
-
* Use the new
|
|
148
|
+
* Use the new flexible camera manager or not, default not to be used.
|
|
149
149
|
* @beta
|
|
150
150
|
*/
|
|
151
151
|
useFlexibleCameraManager?: boolean;
|
|
152
|
+
/**
|
|
153
|
+
* Add event listerers around, default is having event listeners.
|
|
154
|
+
* @beta
|
|
155
|
+
*/
|
|
156
|
+
hasEventListeners?: boolean;
|
|
152
157
|
}
|
|
153
158
|
/**
|
|
154
159
|
* @module @cognite/reveal
|
|
@@ -10,12 +10,11 @@ export { ComboControls, ComboControlsEventType } from './src/ComboControls';
|
|
|
10
10
|
export { ComboControlsOptions } from './src/ComboControlsOptions';
|
|
11
11
|
export { CameraControlsOptions } from './src/CameraControlsOptions';
|
|
12
12
|
export { DebouncedCameraStopEventTrigger } from './src/utils/DebouncedCameraStopEventTrigger';
|
|
13
|
-
export { IFlexibleCameraManager } from './src/Flexible/IFlexibleCameraManager';
|
|
13
|
+
export { IFlexibleCameraManager, isFlexibleCameraManager } from './src/Flexible/IFlexibleCameraManager';
|
|
14
14
|
export { FlexibleControlsTypeChangeDelegate } from './src/Flexible/IFlexibleCameraManager';
|
|
15
15
|
export { FlexibleCameraManager } from './src/Flexible/FlexibleCameraManager';
|
|
16
16
|
export { FlexibleControlsOptions } from './src/Flexible/FlexibleControlsOptions';
|
|
17
17
|
export { FlexibleWheelZoomType } from './src/Flexible/FlexibleWheelZoomType';
|
|
18
18
|
export { FlexibleControlsType } from './src/Flexible/FlexibleControlsType';
|
|
19
19
|
export { FlexibleMouseActionType } from './src/Flexible/FlexibleMouseActionType';
|
|
20
|
-
export { asFlexibleCameraManager } from './src/Flexible/IFlexibleCameraManager';
|
|
21
20
|
export * from './src/types';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2024 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
import { FlexibleControls } from './FlexibleControls';
|
|
5
|
+
import { CameraEventDelegate, CameraManagerEventType } from '../types';
|
|
6
|
+
import { FlexibleControlsTypeChangeDelegate } from './IFlexibleCameraManager';
|
|
7
|
+
type FlexibleCameraManagerEventType = CameraManagerEventType | 'controlsTypeChange';
|
|
8
|
+
type FlexibleCameraEventDelegate = CameraEventDelegate | FlexibleControlsTypeChangeDelegate;
|
|
9
|
+
export declare class FlexibleCameraEventTarget {
|
|
10
|
+
private readonly _controlsTypeChangeListeners;
|
|
11
|
+
private readonly _cameraChangeListeners;
|
|
12
|
+
private readonly _cameraStopListeners;
|
|
13
|
+
private readonly _debouncedCameraListener;
|
|
14
|
+
constructor();
|
|
15
|
+
removeEventListeners(): void;
|
|
16
|
+
dispatchEvent(event: FlexibleCameraManagerEventType, controls: FlexibleControls): void;
|
|
17
|
+
addEventListener(event: FlexibleCameraManagerEventType, callback: FlexibleCameraEventDelegate): void;
|
|
18
|
+
removeEventListener(event: FlexibleCameraManagerEventType, callback: FlexibleCameraEventDelegate): void;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -4,31 +4,29 @@
|
|
|
4
4
|
import { Box3, PerspectiveCamera, Vector3, Scene } from 'three';
|
|
5
5
|
import { FlexibleControls } from './FlexibleControls';
|
|
6
6
|
import { FlexibleControlsOptions } from './FlexibleControlsOptions';
|
|
7
|
-
import {
|
|
7
|
+
import { PointerEvents } from '../../../utilities';
|
|
8
8
|
import { CameraEventDelegate, CameraManagerCallbackData, CameraManagerEventType, CameraState } from './../types';
|
|
9
9
|
import { CameraManager } from './../CameraManager';
|
|
10
10
|
import { FlexibleControlsType } from './FlexibleControlsType';
|
|
11
11
|
import { FlexibleControlsTypeChangeDelegate, IFlexibleCameraManager } from './IFlexibleCameraManager';
|
|
12
|
+
import { FlexibleCameraEventTarget } from './FlexibleCameraEventTarget';
|
|
12
13
|
type RaycastCallback = (x: number, y: number, pickBoundingBox: boolean) => Promise<CameraManagerCallbackData>;
|
|
13
14
|
/**
|
|
14
15
|
* Flexible implementation of {@link CameraManager}. The user can switch between Orbit, FirstPersion or OrbitInCenter
|
|
15
16
|
* Supports automatic update of camera near and far planes and animated change of camera position and target.
|
|
16
17
|
* @beta
|
|
17
18
|
*/
|
|
18
|
-
export declare class FlexibleCameraManager implements IFlexibleCameraManager {
|
|
19
|
-
private readonly
|
|
20
|
-
private readonly _stopEventTrigger;
|
|
19
|
+
export declare class FlexibleCameraManager extends PointerEvents implements IFlexibleCameraManager {
|
|
20
|
+
private readonly _pointerEventsTarget?;
|
|
21
21
|
private readonly _controls;
|
|
22
|
-
private readonly _inputHandler;
|
|
23
22
|
private readonly _markers?;
|
|
24
23
|
private readonly _currentBoundingBox;
|
|
25
24
|
private _isDisposed;
|
|
26
25
|
private _isEnableClickAndDoubleClick;
|
|
27
26
|
private _nearAndFarNeedsUpdate;
|
|
28
|
-
private _prevTime;
|
|
29
|
-
private readonly _prevCoords;
|
|
30
27
|
private readonly _raycastCallback;
|
|
31
|
-
|
|
28
|
+
private readonly _haveEventListeners;
|
|
29
|
+
constructor(domElement: HTMLElement, raycastCallback: RaycastCallback, camera?: PerspectiveCamera, scene?: Scene, haveEventListeners?: boolean);
|
|
32
30
|
getCamera(): PerspectiveCamera;
|
|
33
31
|
getCameraState(): Required<CameraState>;
|
|
34
32
|
/**
|
|
@@ -51,9 +49,18 @@ export declare class FlexibleCameraManager implements IFlexibleCameraManager {
|
|
|
51
49
|
addControlsTypeChangeListener(callback: FlexibleControlsTypeChangeDelegate): void;
|
|
52
50
|
removeControlsTypeChangeListener(callback: FlexibleControlsTypeChangeDelegate): void;
|
|
53
51
|
updateModelBoundingBox(modelBoundingBox: Box3): void;
|
|
52
|
+
onClick(event: PointerEvent): Promise<void>;
|
|
53
|
+
onDoubleClick(event: PointerEvent): Promise<void>;
|
|
54
|
+
onPointerDown(event: PointerEvent, leftButton: boolean): Promise<void>;
|
|
55
|
+
onPointerDrag(event: PointerEvent, leftButton: boolean): Promise<void>;
|
|
56
|
+
onPointerUp(event: PointerEvent, leftButton: boolean): Promise<void>;
|
|
57
|
+
onWheel(event: WheelEvent): Promise<void>;
|
|
58
|
+
onKey(event: KeyboardEvent, down: boolean): void;
|
|
59
|
+
onFocusChanged(haveFocus: boolean): void;
|
|
54
60
|
get options(): FlexibleControlsOptions;
|
|
55
61
|
get controls(): FlexibleControls;
|
|
56
62
|
get camera(): PerspectiveCamera;
|
|
63
|
+
get listeners(): FlexibleCameraEventTarget;
|
|
57
64
|
get domElement(): HTMLElement;
|
|
58
65
|
get isEnabled(): boolean;
|
|
59
66
|
get isEnableClickAndDoubleClick(): boolean;
|
|
@@ -68,12 +75,6 @@ export declare class FlexibleCameraManager implements IFlexibleCameraManager {
|
|
|
68
75
|
private getTargetByBoundingBox;
|
|
69
76
|
private addEventListeners;
|
|
70
77
|
private removeEventListeners;
|
|
71
|
-
private readonly onCameraChange;
|
|
72
|
-
private readonly onControlsTypeChange;
|
|
73
|
-
private readonly onKeyDown;
|
|
74
|
-
private readonly onClick;
|
|
75
|
-
private readonly onDoubleClick;
|
|
76
|
-
private readonly onWheel;
|
|
77
78
|
private mouseAction;
|
|
78
79
|
private setTargetAndCameraPosition;
|
|
79
80
|
private updateCameraNearAndFar;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright 2024 Cognite AS
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { OrthographicCamera, PerspectiveCamera, Quaternion, Spherical, Vector2, Vector3 } from 'three';
|
|
5
5
|
import { FlexibleControlsType } from './FlexibleControlsType';
|
|
6
6
|
import { FlexibleControlsOptions } from './FlexibleControlsOptions';
|
|
7
7
|
import { DampedVector3 } from './DampedVector3';
|
|
8
8
|
import { DampedSpherical } from './DampedSpherical';
|
|
9
|
-
import { FlexibleControlsEvent } from './FlexibleControlsEvent';
|
|
10
9
|
import { GetPickedPointByPixelCoordinates } from './GetPickedPointByPixelCoordinates';
|
|
10
|
+
import { FlexibleCameraEventTarget } from './FlexibleCameraEventTarget';
|
|
11
11
|
/**
|
|
12
12
|
* @beta
|
|
13
13
|
*/
|
|
14
|
-
export declare class FlexibleControls
|
|
14
|
+
export declare class FlexibleControls {
|
|
15
15
|
private _isEnabled;
|
|
16
16
|
private _isInitialized;
|
|
17
17
|
private _isStationary;
|
|
@@ -25,17 +25,20 @@ export declare class FlexibleControls extends EventDispatcher<FlexibleControlsEv
|
|
|
25
25
|
private _scrollDirection;
|
|
26
26
|
private _scrollDistance;
|
|
27
27
|
private _tempTarget;
|
|
28
|
+
private readonly _listeners;
|
|
28
29
|
private readonly _keyboard;
|
|
29
30
|
private readonly _touchEvents;
|
|
30
31
|
private _getPickedPointByPixelCoordinates;
|
|
31
32
|
private readonly _reusableVector3s;
|
|
32
33
|
private readonly _rotationHelper;
|
|
33
34
|
private _mouseDragInfo;
|
|
35
|
+
private _prevTime;
|
|
36
|
+
private readonly _prevCoords;
|
|
34
37
|
constructor(camera: PerspectiveCamera | undefined, domElement: HTMLElement, options: FlexibleControlsOptions);
|
|
35
|
-
dispose(): void;
|
|
36
38
|
get options(): FlexibleControlsOptions;
|
|
37
39
|
get camera(): PerspectiveCamera | OrthographicCamera;
|
|
38
40
|
get domElement(): HTMLElement;
|
|
41
|
+
get listeners(): FlexibleCameraEventTarget;
|
|
39
42
|
get target(): DampedVector3;
|
|
40
43
|
get cameraVector(): DampedSpherical;
|
|
41
44
|
get cameraPosition(): DampedVector3;
|
|
@@ -57,7 +60,7 @@ export declare class FlexibleControls extends EventDispatcher<FlexibleControlsEv
|
|
|
57
60
|
position: Vector3;
|
|
58
61
|
};
|
|
59
62
|
private getMousePosition;
|
|
60
|
-
getNormalizedPixelCoordinates(event: PointerEvent): Vector2;
|
|
63
|
+
getNormalizedPixelCoordinates(event: PointerEvent | WheelEvent): Vector2;
|
|
61
64
|
setScrollCursor(value: Vector3 | undefined): void;
|
|
62
65
|
setTempTarget(value: Vector3 | undefined): void;
|
|
63
66
|
setFov(value: number, triggerCameraChangeEvent?: boolean): boolean;
|
|
@@ -71,28 +74,29 @@ export declare class FlexibleControls extends EventDispatcher<FlexibleControlsEv
|
|
|
71
74
|
private getDampingFactor;
|
|
72
75
|
private newVector3;
|
|
73
76
|
update(deltaTimeS: number, forceUpdate?: boolean): boolean;
|
|
74
|
-
triggerCameraChangeEvent(): void;
|
|
75
|
-
triggerControlsTypeChangeEvent(): void;
|
|
76
77
|
rotateCameraTo(startDirection: Spherical, endDirection: Spherical, factor: number): void;
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
78
|
+
onPointerDown(event: PointerEvent, _leftButton: boolean): Promise<void>;
|
|
79
|
+
onPointerDrag(event: PointerEvent, leftButton: boolean): Promise<void>;
|
|
80
|
+
onPointerUp(event: PointerEvent, _leftButton: boolean): void;
|
|
81
|
+
readonly onKeyDown: (event: KeyboardEvent) => void;
|
|
82
|
+
onFocusChanged(_haveFocus: boolean): void;
|
|
83
|
+
onKey(event: KeyboardEvent, down: boolean): void;
|
|
84
|
+
readonly onWheel: (event: WheelEvent) => Promise<void>;
|
|
84
85
|
private readonly onContextMenu;
|
|
85
86
|
addEventListeners(): void;
|
|
86
|
-
|
|
87
|
+
removeEventListeners(): void;
|
|
87
88
|
updateCameraAndTriggerCameraChangeEvent(): void;
|
|
88
89
|
updateCamera(deltaTimeS: number, forceUpdate?: boolean, useDampening?: boolean): boolean;
|
|
89
|
-
private startTouchRotation;
|
|
90
90
|
private rotate;
|
|
91
91
|
getAzimuthCompensationFactor(): number;
|
|
92
92
|
rotateByAngles(deltaAzimuth: number, deltaPolar: number): void;
|
|
93
93
|
private rawRotateByAngles;
|
|
94
|
+
private onTouchDown;
|
|
95
|
+
private startTouchRotation;
|
|
94
96
|
private startTouchPinch;
|
|
95
|
-
private
|
|
97
|
+
private get touchEventsCount();
|
|
98
|
+
private removeTouchEvent;
|
|
99
|
+
private updateTouchEvents;
|
|
96
100
|
private pan;
|
|
97
101
|
translate(delta: Vector3): void;
|
|
98
102
|
private dollyOrthographicCamera;
|
|
@@ -102,10 +106,8 @@ export declare class FlexibleControls extends EventDispatcher<FlexibleControlsEv
|
|
|
102
106
|
private getTranslationByScrollCursor;
|
|
103
107
|
private getStep;
|
|
104
108
|
private zoomCameraByFov;
|
|
109
|
+
private setScrollCursorByWheelEventCoords;
|
|
105
110
|
private handleKeyboard;
|
|
106
111
|
private handleRotationFromKeyboard;
|
|
107
112
|
private handleMoveFromKeyboard;
|
|
108
113
|
}
|
|
109
|
-
export declare function isMouse(event: PointerEvent): boolean;
|
|
110
|
-
export declare function isTouch(event: PointerEvent): boolean;
|
|
111
|
-
export declare function isPressed(event: PointerEvent): boolean;
|
|
@@ -41,5 +41,49 @@ export interface IFlexibleCameraManager extends CameraManager {
|
|
|
41
41
|
* @param callback - The callback function to be removed from the controls type change listeners.
|
|
42
42
|
*/
|
|
43
43
|
removeControlsTypeChangeListener(callback: FlexibleControlsTypeChangeDelegate): void;
|
|
44
|
+
/**
|
|
45
|
+
* Called when a click event is triggered
|
|
46
|
+
* @beta
|
|
47
|
+
*/
|
|
48
|
+
onClick(event: PointerEvent): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Called when double click event is triggered
|
|
51
|
+
* @beta
|
|
52
|
+
*/
|
|
53
|
+
onDoubleClick(event: PointerEvent): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* Called when pointer is pressed
|
|
56
|
+
* @beta
|
|
57
|
+
*/
|
|
58
|
+
onPointerDown(event: PointerEvent, leftButton: boolean): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Called when pointer is dragged
|
|
61
|
+
* @beta
|
|
62
|
+
*/
|
|
63
|
+
onPointerDrag(event: PointerEvent, leftButton: boolean): Promise<void>;
|
|
64
|
+
/**
|
|
65
|
+
* Called when pointer is released
|
|
66
|
+
* @beta
|
|
67
|
+
*/
|
|
68
|
+
onPointerUp(event: PointerEvent, leftButton: boolean): Promise<void>;
|
|
69
|
+
/**
|
|
70
|
+
* Called when wheel event is triggered
|
|
71
|
+
* @beta
|
|
72
|
+
*/
|
|
73
|
+
onWheel(event: WheelEvent): Promise<void>;
|
|
74
|
+
/**
|
|
75
|
+
* Called when a key is pressed or released
|
|
76
|
+
* @beta
|
|
77
|
+
*/
|
|
78
|
+
onKey(event: KeyboardEvent, down: boolean): void;
|
|
79
|
+
/**
|
|
80
|
+
* Called when focus is changed
|
|
81
|
+
* @beta
|
|
82
|
+
*/
|
|
83
|
+
onFocusChanged(haveFocus: boolean): void;
|
|
44
84
|
}
|
|
45
|
-
|
|
85
|
+
/**
|
|
86
|
+
* Check id the CameraManager is a IFlexibleCameraManager
|
|
87
|
+
* @beta
|
|
88
|
+
*/
|
|
89
|
+
export declare function isFlexibleCameraManager(manager: CameraManager): manager is IFlexibleCameraManager;
|
|
@@ -6,10 +6,8 @@ type EventCode = (typeof EVENT_CODES)[number];
|
|
|
6
6
|
export default class Keyboard {
|
|
7
7
|
private readonly _keys;
|
|
8
8
|
private _isEnabled;
|
|
9
|
-
private readonly _domElement;
|
|
10
9
|
get isEnabled(): boolean;
|
|
11
10
|
set isEnabled(value: boolean);
|
|
12
|
-
constructor(domElement: HTMLElement);
|
|
13
11
|
isPressed(key: EventCode): boolean;
|
|
14
12
|
isShiftPressed(): boolean;
|
|
15
13
|
isShiftPressedOnly(): boolean;
|
|
@@ -17,7 +15,6 @@ export default class Keyboard {
|
|
|
17
15
|
isCtrlPressedOnly(): boolean;
|
|
18
16
|
isAltPressed(): boolean;
|
|
19
17
|
isMetaPressed(): boolean;
|
|
20
|
-
dispose(): void;
|
|
21
18
|
/**
|
|
22
19
|
* Given two keys representing positive and negative directions (e.g., left and right, or up and down),
|
|
23
20
|
* this method returns 1 for the positive key, -1 for the negative key, or 0 if neither or both is pressed.
|
|
@@ -27,10 +24,11 @@ export default class Keyboard {
|
|
|
27
24
|
* @returns A value indicating the direction of movement: 1 (positive), -1 (negative), or 0 (none).
|
|
28
25
|
*/
|
|
29
26
|
getKeyboardMovementValue(positiveKey: EventCode, negativeKey: EventCode): number;
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
addEventListeners(domElement: HTMLElement): void;
|
|
28
|
+
removeEventListeners(domElement: HTMLElement): void;
|
|
32
29
|
private readonly onKeyDown;
|
|
33
30
|
private readonly onKeyUp;
|
|
31
|
+
onKey(event: KeyboardEvent, down: boolean): void;
|
|
34
32
|
readonly clearPressedKeys: () => void;
|
|
35
33
|
}
|
|
36
34
|
export {};
|
|
@@ -5,7 +5,13 @@ export { traverseDepthFirst } from './src/objectTraversal';
|
|
|
5
5
|
export { transformCameraConfiguration } from './src/transformCameraConfiguration';
|
|
6
6
|
export { RandomColors } from './src/RandomColors';
|
|
7
7
|
export { CameraConfiguration } from './src/CameraConfiguration';
|
|
8
|
-
export { EventTrigger
|
|
8
|
+
export { EventTrigger } from './src/events/EventTrigger';
|
|
9
|
+
export { InputHandler } from './src/events/InputHandler';
|
|
10
|
+
export { PointerEvents } from './src/events/PointerEvents';
|
|
11
|
+
export { PointerEventsTarget } from './src/events/PointerEventsTarget';
|
|
12
|
+
export { disposeOfAllEventListeners } from './src/events/disposeOfAllEventListeners';
|
|
13
|
+
export { clickOrTouchEventOffset, getClickOrTouchEventPoint } from './src/events/clickOrTouchEventOffset';
|
|
14
|
+
export { getWheelEventDelta } from './src/events/getWheelEventDelta';
|
|
9
15
|
export { DisposedDelegate, BeforeSceneRenderedDelegate, SceneRenderedDelegate, PointerEventDelegate, PointerEventData } from './src/events/types';
|
|
10
16
|
export { assertNever } from './src/assertNever';
|
|
11
17
|
export { NumericRange } from './src/NumericRange';
|
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
import { EventTrigger } from './EventTrigger';
|
|
2
1
|
import { PointerEventDelegate } from './types';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
private readonly
|
|
8
|
-
private
|
|
9
|
-
private static readonly maxClickDuration;
|
|
10
|
-
private readonly _events;
|
|
2
|
+
import { PointerEvents } from './PointerEvents';
|
|
3
|
+
export declare class InputHandler extends PointerEvents {
|
|
4
|
+
private readonly _domElement;
|
|
5
|
+
private readonly _pointerEventsTarget;
|
|
6
|
+
private readonly _clickEvents;
|
|
7
|
+
private readonly _hoverEvents;
|
|
11
8
|
constructor(domElement: HTMLElement);
|
|
9
|
+
dispose(): void;
|
|
12
10
|
/**
|
|
13
11
|
* @example
|
|
14
12
|
* ```js
|
|
@@ -18,13 +16,7 @@ export declare class InputHandler {
|
|
|
18
16
|
*/
|
|
19
17
|
on(event: 'click' | 'hover', callback: PointerEventDelegate): void;
|
|
20
18
|
off(event: 'click' | 'hover', callback: PointerEventDelegate): void;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
private handleClickEvent;
|
|
25
|
-
private readonly onHoverCallback;
|
|
19
|
+
onClick(event: PointerEvent): Promise<void>;
|
|
20
|
+
onHover(event: PointerEvent): void;
|
|
21
|
+
get isEnabled(): boolean;
|
|
26
22
|
}
|
|
27
|
-
/**
|
|
28
|
-
* Method for deleting all external events that are associated with current instance of a class.
|
|
29
|
-
*/
|
|
30
|
-
export declare function disposeOfAllEventListeners(eventList: EventCollection): void;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2024 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* This base should be extended for listen to various pointer events.
|
|
6
|
+
* @beta
|
|
7
|
+
*/
|
|
8
|
+
export declare class PointerEvents {
|
|
9
|
+
onHover(_event: PointerEvent): void;
|
|
10
|
+
onClick(_event: PointerEvent): Promise<void>;
|
|
11
|
+
onDoubleClick(_event: PointerEvent): Promise<void>;
|
|
12
|
+
onPointerDown(_event: PointerEvent, _leftButton: boolean): Promise<void>;
|
|
13
|
+
onPointerUp(_event: PointerEvent, _leftButton: boolean): Promise<void>;
|
|
14
|
+
onPointerDrag(_event: PointerEvent, _leftButton: boolean): Promise<void>;
|
|
15
|
+
get isEnabled(): boolean;
|
|
16
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { PointerEvents } from './PointerEvents';
|
|
2
|
+
/**
|
|
3
|
+
* This class fires click, double click, hover end similar events at a PointerEvents
|
|
4
|
+
* onClick will fired if it's a single click, and the mouse hasn't move too much
|
|
5
|
+
* If onDoubleClick is fired, the onClick will not be fired
|
|
6
|
+
* onHover will be fired only if the mouse button is not pressed and not to often
|
|
7
|
+
* If mouse, the onDoubleClick and onClick is fired when the left mouse button is pressed
|
|
8
|
+
* onPointerDrag will be fired wnen the mouse button is pressed and the mouse is moving
|
|
9
|
+
* @beta
|
|
10
|
+
*/
|
|
11
|
+
export declare class PointerEventsTarget {
|
|
12
|
+
private readonly _domElement;
|
|
13
|
+
private readonly _events;
|
|
14
|
+
private readonly _downPosition;
|
|
15
|
+
private _lastDownTimestamp;
|
|
16
|
+
private _prevDownTimestamp;
|
|
17
|
+
private _clickCounter;
|
|
18
|
+
private _isLeftDown;
|
|
19
|
+
private get isEnabled();
|
|
20
|
+
constructor(domElement: HTMLElement, events: PointerEvents);
|
|
21
|
+
addEventListeners(): void;
|
|
22
|
+
removeEventListeners(): void;
|
|
23
|
+
private readonly onPointerDown;
|
|
24
|
+
private readonly onPointerHover;
|
|
25
|
+
private readonly onPointerDrag;
|
|
26
|
+
private readonly onPointerUp;
|
|
27
|
+
private isProperClick;
|
|
28
|
+
private isDoubleClick;
|
|
29
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2021 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
import { EventTrigger } from './EventTrigger';
|
|
5
|
+
export type EventCollection = {
|
|
6
|
+
[eventName: string]: EventTrigger<(...args: any[]) => void>;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Method for deleting all external events that are associated with current instance of a class.
|
|
10
|
+
*/
|
|
11
|
+
export declare function disposeOfAllEventListeners(eventList: EventCollection): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cognite/reveal",
|
|
3
|
-
"version": "4.12.1-dev.
|
|
3
|
+
"version": "4.12.1-dev.20240429",
|
|
4
4
|
"description": "WebGL based 3D viewer for CAD and point clouds processed in Cognite Data Fusion.",
|
|
5
5
|
"homepage": "https://github.com/cognitedata/reveal/tree/master/viewer",
|
|
6
6
|
"repository": {
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"devDependencies": {
|
|
82
82
|
"@azure/msal-browser": "2.38.4",
|
|
83
83
|
"@cognite/sdk": "8.3.0",
|
|
84
|
-
"@microsoft/api-extractor": "7.
|
|
84
|
+
"@microsoft/api-extractor": "7.43.1",
|
|
85
85
|
"@types/dat.gui": "0.7.13",
|
|
86
86
|
"@types/gl": "^6.0.2",
|
|
87
87
|
"@types/glob": "8.1.0",
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"@types/jest-environment-puppeteer": "5.0.6",
|
|
90
90
|
"@types/jest-image-snapshot": "6.4.0",
|
|
91
91
|
"@types/jsdom": "21.1.6",
|
|
92
|
-
"@types/lodash": "4.
|
|
92
|
+
"@types/lodash": "4.17.0",
|
|
93
93
|
"@types/mixpanel-browser": "2.49.0",
|
|
94
94
|
"@types/node": "18.19.31",
|
|
95
95
|
"@types/random-seed": "0.3.5",
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright 2024 Cognite AS
|
|
3
|
-
*/
|
|
4
|
-
import { Vector3 } from 'three';
|
|
5
|
-
import { FlexibleControlsType } from './FlexibleControlsType';
|
|
6
|
-
/**
|
|
7
|
-
* @beta
|
|
8
|
-
*/
|
|
9
|
-
export type FlexibleControlsEvent = {
|
|
10
|
-
cameraChange: {
|
|
11
|
-
content: {
|
|
12
|
-
position: Vector3;
|
|
13
|
-
target: Vector3;
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
|
-
controlsTypeChange: {
|
|
17
|
-
controlsType: FlexibleControlsType;
|
|
18
|
-
};
|
|
19
|
-
};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright 2021 Cognite AS
|
|
3
|
-
*/
|
|
4
|
-
export { clickOrTouchEventOffset, getClickOrTouchEventPoint } from './clickOrTouchEventOffset';
|
|
5
|
-
export { EventTrigger } from './EventTrigger';
|
|
6
|
-
export { InputHandler, disposeOfAllEventListeners } from './InputHandler';
|
|
7
|
-
export * from './types';
|