UNPKG

fabric

Version:

Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.

1 lines 1.48 kB
{"version":3,"file":"dom_event.mjs","names":[],"sources":["../../../src/util/dom_event.ts"],"sourcesContent":["import type { TPointerEvent } from '../EventTypeDefs';\nimport { Point } from '../Point';\nimport { getScrollLeftTop } from './dom_misc';\n\nconst touchEvents = ['touchstart', 'touchmove', 'touchend'];\n\nfunction getTouchInfo(event: TouchEvent | MouseEvent): MouseEvent | Touch {\n const touchProp = (event as TouchEvent).changedTouches;\n if (touchProp && touchProp[0]) {\n return touchProp[0];\n }\n return event as MouseEvent;\n}\n\nexport const getPointer = (event: TPointerEvent): Point => {\n const element = event.target as HTMLElement,\n scroll = getScrollLeftTop(element),\n _evt = getTouchInfo(event);\n return new Point(_evt.clientX + scroll.left, _evt.clientY + scroll.top);\n};\n\nexport const isTouchEvent = (event: TPointerEvent) =>\n touchEvents.includes(event.type) ||\n (event as PointerEvent).pointerType === 'touch';\n\nexport const stopEvent = (e: Event) => {\n e.preventDefault();\n e.stopPropagation();\n};\n"],"mappings":";;;AAIA,MAAM,cAAc;CAAC;CAAc;CAAa;CAAW;AAE3D,SAAS,aAAa,OAAoD;CACxE,MAAM,YAAa,MAAqB;AACxC,KAAI,aAAa,UAAU,GACzB,QAAO,UAAU;AAEnB,QAAO;;AAGT,MAAa,cAAc,UAAgC;CACzD,MAAM,UAAU,MAAM,QACpB,SAAS,iBAAiB,QAAQ,EAClC,OAAO,aAAa,MAAM;AAC5B,QAAO,IAAI,MAAM,KAAK,UAAU,OAAO,MAAM,KAAK,UAAU,OAAO,IAAI;;AAGzE,MAAa,gBAAgB,UAC3B,YAAY,SAAS,MAAM,KAAK,IAC/B,MAAuB,gBAAgB;AAE1C,MAAa,aAAa,MAAa;AACrC,GAAE,gBAAgB;AAClB,GAAE,iBAAiB"}