UNPKG

@aurigma/design-atoms

Version:

Design Atoms is a part of Customer's Canvas SDK which allows for manipulating individual design elements through your code.

65 lines 3.12 kB
import { PointerInputHandlerHelper } from "./PointerInputHandlerHelper"; import { InputState } from "./../../../Input/InputManager/IInputManager"; import { PanHandler } from "./PanHandler"; import { ItemsCommand, ZoomCommand } from "@aurigma/design-atoms-interfaces"; export class DefaultTouchInputHandler { constructor(_commandManager, _selectionHandler, eventManager, hitTestManager, _dndHandler, _canvas, rotateHandler) { this._commandManager = _commandManager; this._selectionHandler = _selectionHandler; this._dndHandler = _dndHandler; this._canvas = _canvas; this._pointerInputHandler = new PointerInputHandlerHelper(_canvas, _commandManager, _selectionHandler, hitTestManager, eventManager, _dndHandler, rotateHandler); this._panHandler = new PanHandler(this._commandManager); } async onTap(params) { await this._pointerInputHandler.onPointerClick(params, false); } async onMove(params) { await this._pointerInputHandler.onPointerMove(params, true); if (params.state !== InputState.Finished && this._selectionHandler.isIdle && !this._dndHandler.isDragStarted()) { this._panHandler.process(params); } } async onLongTap(params) { params.preventDefault(); await this._pointerInputHandler.onPointerClick(params, true); } async onDoubleClick(params) { await this._pointerInputHandler.onDoubleClick(params); } async onPointerDown(params) { await this._pointerInputHandler.onPointerDown(params); } async onTransform(params) { var _a, _b, _c, _d; if (this._dndHandler.isDragStarted()) return; if (this._canvas.contentEditingPlaceholderItemHandler != null) { const handler = this._canvas.contentEditingPlaceholderItemHandler; const args = { scale: handler.getContentScale() * params.scale, forceQualityChangeInfoBar: params.state !== InputState.Finished, items: [handler.item] }; await this._commandManager.execute(ItemsCommand.placeholderContentScale, args); } else { if (!this._selectionHandler.isIdle) return; if (!((_b = (_a = this._canvas) === null || _a === void 0 ? void 0 : _a.viewer) === null || _b === void 0 ? void 0 : _b.pinchZoomEnabled)) return; if (params.state === InputState.Finished) { return; } await this._commandManager.execute(ZoomCommand.setZoom, { zoom: this._canvas.viewer.zoom * params.scale, withoutUpdate: true, preventEvent: false, workspaceX: (_c = params.zoomCenter) === null || _c === void 0 ? void 0 : _c.x, workspaceY: (_d = params.zoomCenter) === null || _d === void 0 ? void 0 : _d.y, skipZoomToCenter: false, }); } } } //# sourceMappingURL=DefaultTouchInputHandler.js.map