fabric
Version:
Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.
1 lines • 2.17 kB
Source Map (JSON)
{"version":3,"file":"dom_event.mjs","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"],"names":["touchEvents","getTouchInfo","event","touchProp","changedTouches","getPointer","element","target","scroll","getScrollLeftTop","_evt","Point","clientX","left","clientY","top","isTouchEvent","includes","type","pointerType","stopEvent","e","preventDefault","stopPropagation"],"mappings":";;;AAIA,MAAMA,WAAW,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;AAE3D,SAASC,YAAYA,CAACC,KAA8B,EAAsB;AACxE,EAAA,MAAMC,SAAS,GAAID,KAAK,CAAgBE,cAAc,CAAA;AACtD,EAAA,IAAID,SAAS,IAAIA,SAAS,CAAC,CAAC,CAAC,EAAE;IAC7B,OAAOA,SAAS,CAAC,CAAC,CAAC,CAAA;AACrB,GAAA;AACA,EAAA,OAAOD,KAAK,CAAA;AACd,CAAA;AAEaG,MAAAA,UAAU,GAAIH,KAAoB,IAAY;AACzD,EAAA,MAAMI,OAAO,GAAGJ,KAAK,CAACK,MAAqB;AACzCC,IAAAA,MAAM,GAAGC,gBAAgB,CAACH,OAAO,CAAC;AAClCI,IAAAA,IAAI,GAAGT,YAAY,CAACC,KAAK,CAAC,CAAA;AAC5B,EAAA,OAAO,IAAIS,KAAK,CAACD,IAAI,CAACE,OAAO,GAAGJ,MAAM,CAACK,IAAI,EAAEH,IAAI,CAACI,OAAO,GAAGN,MAAM,CAACO,GAAG,CAAC,CAAA;AACzE,EAAC;MAEYC,YAAY,GAAId,KAAoB,IAC/CF,WAAW,CAACiB,QAAQ,CAACf,KAAK,CAACgB,IAAI,CAAC,IAC/BhB,KAAK,CAAkBiB,WAAW,KAAK,QAAO;AAEpCC,MAAAA,SAAS,GAAIC,CAAQ,IAAK;EACrCA,CAAC,CAACC,cAAc,EAAE,CAAA;EAClBD,CAAC,CAACE,eAAe,EAAE,CAAA;AACrB;;;;"}