UNPKG

fabric

Version:

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

1 lines 1.52 kB
{"version":3,"file":"wrapWithFireEvent.mjs","sources":["../../../src/controls/wrapWithFireEvent.ts"],"sourcesContent":["import type {\n TModificationEvents,\n Transform,\n TransformActionHandler,\n} from '../EventTypeDefs';\nimport { fireEvent } from './fireEvent';\nimport { commonEventInfo } from './util';\n\n/**\n * Wrap an action handler with firing an event if the action is performed\n * @param {Function} actionHandler the function to wrap\n * @return {Function} a function with an action handler signature\n */\nexport const wrapWithFireEvent = <T extends Transform>(\n eventName: TModificationEvents,\n actionHandler: TransformActionHandler<T>\n) => {\n return ((eventData, transform, x, y) => {\n const actionPerformed = actionHandler(eventData, transform, x, y);\n if (actionPerformed) {\n fireEvent(eventName, commonEventInfo(eventData, transform, x, y));\n }\n return actionPerformed;\n }) as TransformActionHandler<T>;\n};\n"],"names":["wrapWithFireEvent","eventName","actionHandler","eventData","transform","x","y","actionPerformed","fireEvent","commonEventInfo"],"mappings":";;;AAQA;AACA;AACA;AACA;AACA;MACaA,iBAAiB,GAAGA,CAC/BC,SAA8B,EAC9BC,aAAwC,KACrC;EACH,OAAQ,CAACC,SAAS,EAAEC,SAAS,EAAEC,CAAC,EAAEC,CAAC,KAAK;IACtC,MAAMC,eAAe,GAAGL,aAAa,CAACC,SAAS,EAAEC,SAAS,EAAEC,CAAC,EAAEC,CAAC,CAAC,CAAA;AACjE,IAAA,IAAIC,eAAe,EAAE;AACnBC,MAAAA,SAAS,CAACP,SAAS,EAAEQ,eAAe,CAACN,SAAS,EAAEC,SAAS,EAAEC,CAAC,EAAEC,CAAC,CAAC,CAAC,CAAA;AACnE,KAAA;AACA,IAAA,OAAOC,eAAe,CAAA;GACvB,CAAA;AACH;;;;"}