@ue-too/board-konva-integration 0.14.0 → 0.15.0

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/README.md CHANGED
@@ -12,11 +12,13 @@ TODO: Add package overview
12
12
  ## Installation
13
13
 
14
14
  Using Bun:
15
+
15
16
  ```bash
16
17
  bun add @ue-too/board-konva-integration
17
18
  ```
18
19
 
19
20
  Using npm:
21
+
20
22
  ```bash
21
23
  npm install @ue-too/board-konva-integration
22
24
  ```
package/index.d.ts CHANGED
@@ -2,4 +2,4 @@
2
2
  * @packageDocumentation
3
3
  * Board konva integration package for uē-tôo.
4
4
  */
5
- export * from "./konva-input-event-parser";
5
+ export * from './konva-input-event-parser';
package/index.js.map CHANGED
@@ -4,9 +4,9 @@
4
4
  "konva-input-event-parser.ts"
5
5
  ],
6
6
  "sourcesContent": [
7
- "import { KonvaEventObject } from \"konva/lib/Node\";\nimport { Stage } from \"konva/lib/Stage\";\nimport { InputOrchestrator, KmtInputEventMapping, KmtInputStateMachine } from \"@ue-too/board\";\nimport { EventArgs } from \"@ue-too/being\";\n\nexport class KonvaInputParser {\n private _stage: Stage;\n private _kmtInputStateMachine: KmtInputStateMachine;\n private _inputOrchestrator: InputOrchestrator;\n private _keyfirstPressed: Map<string, boolean>;\n private _abortController: AbortController;\n\n constructor(stage: Stage, kmtInputStateMachine: KmtInputStateMachine, inputOrchestrator: InputOrchestrator){\n this._stage = stage;\n this._kmtInputStateMachine = kmtInputStateMachine;\n this._inputOrchestrator = inputOrchestrator;\n this._keyfirstPressed = new Map();\n this.bindFunctions();\n this._abortController = new AbortController();\n }\n\n bindFunctions(){\n this.pointerDownHandler = this.pointerDownHandler.bind(this);\n this.pointerUpHandler = this.pointerUpHandler.bind(this);\n this.pointerMoveHandler = this.pointerMoveHandler.bind(this);\n this.scrollHandler = this.scrollHandler.bind(this);\n this.keydownHandler = this.keydownHandler.bind(this);\n this.keyupHandler = this.keyupHandler.bind(this);\n }\n\n setUp(){\n this._stage.on(\"pointerdown\", this.pointerDownHandler);\n this._stage.on(\"pointerup\", this.pointerUpHandler);\n this._stage.on(\"pointermove\", this.pointerMoveHandler);\n this._stage.on(\"wheel\", this.scrollHandler);\n window.addEventListener(\"keydown\", this.keydownHandler, {signal: this._abortController.signal});\n window.addEventListener(\"keyup\", this.keyupHandler, {signal: this._abortController.signal});\n }\n\n tearDown(){\n this._stage.off(\"pointerdown\", this.pointerDownHandler);\n this._stage.off(\"pointerup\", this.pointerUpHandler);\n this._stage.off(\"pointermove\", this.pointerMoveHandler);\n this._stage.off(\"wheel\", this.scrollHandler);\n this._abortController.abort();\n this._abortController = new AbortController();\n }\n\n private processEvent<K extends keyof KmtInputEventMapping>(\n ...args: EventArgs<KmtInputEventMapping, K>\n ): void {\n const result = this._kmtInputStateMachine.happens(...args);\n if (result.handled && \"output\" in result) {\n this._inputOrchestrator.processInputEventOutput(result.output);\n }\n }\n\n pointerDownHandler(eventObject: KonvaEventObject<PointerEvent, Stage>){\n const event = eventObject.evt;\n if(event.button === 0 && event.pointerType === \"mouse\"){\n this.processEvent(\"leftPointerDown\", {x: event.clientX, y: event.clientY});\n return;\n }\n if(event.button === 1 && event.pointerType === \"mouse\"){\n this.processEvent(\"middlePointerDown\", {x: event.clientX, y: event.clientY});\n return;\n }\n }\n\n pointerUpHandler(eventObject: KonvaEventObject<PointerEvent, Stage>){\n const e = eventObject.evt;\n if(e.button === 0 && e.pointerType === \"mouse\"){\n this.processEvent(\"leftPointerUp\", {x: e.clientX, y: e.clientY});\n return;\n }\n if(e.button === 1 && e.pointerType === \"mouse\"){\n this.processEvent(\"middlePointerUp\", {x: e.clientX, y: e.clientY});\n return;\n }\n }\n\n pointerMoveHandler(eventObject: KonvaEventObject<PointerEvent, Stage>){\n const e = eventObject.evt;\n if((e.buttons === 1) && e.pointerType === \"mouse\"){\n this.processEvent(\"leftPointerMove\", {x: e.clientX, y: e.clientY});\n return;\n }\n if((e.buttons === 4) && e.pointerType === \"mouse\"){\n this.processEvent(\"middlePointerMove\", {x: e.clientX, y: e.clientY});\n return;\n }\n this.processEvent(\"pointerMove\", {x: e.clientX, y: e.clientY});\n }\n\n scrollHandler(eventObject: KonvaEventObject<WheelEvent, Stage>){\n const e = eventObject.evt;\n if(e.ctrlKey){\n this.processEvent(\"scrollWithCtrl\", {x: e.clientX, y: e.clientY, deltaX: e.deltaX, deltaY: e.deltaY});\n } else {\n this.processEvent(\"scroll\", {x: e.clientX, y: e.clientY, deltaX: e.deltaX, deltaY: e.deltaY});\n }\n }\n\n keydownHandler(event: KeyboardEvent){\n if(this._keyfirstPressed.has(event.key)){\n return;\n }\n this._keyfirstPressed.set(event.key, true);\n if(event.key === \" \"){\n this.processEvent(\"spacebarDown\");\n }\n }\n\n keyupHandler(event: KeyboardEvent){\n if(this._keyfirstPressed.has(event.key)){\n this._keyfirstPressed.delete(event.key);\n }\n if(event.key === \" \"){\n this.processEvent(\"spacebarUp\");\n }\n }\n}\n"
7
+ "import { EventArgs } from '@ue-too/being';\nimport {\n InputOrchestrator,\n KmtInputEventMapping,\n KmtInputStateMachine,\n} from '@ue-too/board';\nimport { KonvaEventObject } from 'konva/lib/Node';\nimport { Stage } from 'konva/lib/Stage';\n\nexport class KonvaInputParser {\n private _stage: Stage;\n private _kmtInputStateMachine: KmtInputStateMachine;\n private _inputOrchestrator: InputOrchestrator;\n private _keyfirstPressed: Map<string, boolean>;\n private _abortController: AbortController;\n\n constructor(\n stage: Stage,\n kmtInputStateMachine: KmtInputStateMachine,\n inputOrchestrator: InputOrchestrator\n ) {\n this._stage = stage;\n this._kmtInputStateMachine = kmtInputStateMachine;\n this._inputOrchestrator = inputOrchestrator;\n this._keyfirstPressed = new Map();\n this.bindFunctions();\n this._abortController = new AbortController();\n }\n\n bindFunctions() {\n this.pointerDownHandler = this.pointerDownHandler.bind(this);\n this.pointerUpHandler = this.pointerUpHandler.bind(this);\n this.pointerMoveHandler = this.pointerMoveHandler.bind(this);\n this.scrollHandler = this.scrollHandler.bind(this);\n this.keydownHandler = this.keydownHandler.bind(this);\n this.keyupHandler = this.keyupHandler.bind(this);\n }\n\n setUp() {\n this._stage.on('pointerdown', this.pointerDownHandler);\n this._stage.on('pointerup', this.pointerUpHandler);\n this._stage.on('pointermove', this.pointerMoveHandler);\n this._stage.on('wheel', this.scrollHandler);\n window.addEventListener('keydown', this.keydownHandler, {\n signal: this._abortController.signal,\n });\n window.addEventListener('keyup', this.keyupHandler, {\n signal: this._abortController.signal,\n });\n }\n\n tearDown() {\n this._stage.off('pointerdown', this.pointerDownHandler);\n this._stage.off('pointerup', this.pointerUpHandler);\n this._stage.off('pointermove', this.pointerMoveHandler);\n this._stage.off('wheel', this.scrollHandler);\n this._abortController.abort();\n this._abortController = new AbortController();\n }\n\n private processEvent<K extends keyof KmtInputEventMapping>(\n ...args: EventArgs<KmtInputEventMapping, K>\n ): void {\n const result = this._kmtInputStateMachine.happens(...args);\n if (result.handled && 'output' in result) {\n this._inputOrchestrator.processInputEventOutput(result.output);\n }\n }\n\n pointerDownHandler(eventObject: KonvaEventObject<PointerEvent, Stage>) {\n const event = eventObject.evt;\n if (event.button === 0 && event.pointerType === 'mouse') {\n this.processEvent('leftPointerDown', {\n x: event.clientX,\n y: event.clientY,\n });\n return;\n }\n if (event.button === 1 && event.pointerType === 'mouse') {\n this.processEvent('middlePointerDown', {\n x: event.clientX,\n y: event.clientY,\n });\n return;\n }\n }\n\n pointerUpHandler(eventObject: KonvaEventObject<PointerEvent, Stage>) {\n const e = eventObject.evt;\n if (e.button === 0 && e.pointerType === 'mouse') {\n this.processEvent('leftPointerUp', { x: e.clientX, y: e.clientY });\n return;\n }\n if (e.button === 1 && e.pointerType === 'mouse') {\n this.processEvent('middlePointerUp', {\n x: e.clientX,\n y: e.clientY,\n });\n return;\n }\n }\n\n pointerMoveHandler(eventObject: KonvaEventObject<PointerEvent, Stage>) {\n const e = eventObject.evt;\n if (e.buttons === 1 && e.pointerType === 'mouse') {\n this.processEvent('leftPointerMove', {\n x: e.clientX,\n y: e.clientY,\n });\n return;\n }\n if (e.buttons === 4 && e.pointerType === 'mouse') {\n this.processEvent('middlePointerMove', {\n x: e.clientX,\n y: e.clientY,\n });\n return;\n }\n this.processEvent('pointerMove', { x: e.clientX, y: e.clientY });\n }\n\n scrollHandler(eventObject: KonvaEventObject<WheelEvent, Stage>) {\n const e = eventObject.evt;\n if (e.ctrlKey) {\n this.processEvent('scrollWithCtrl', {\n x: e.clientX,\n y: e.clientY,\n deltaX: e.deltaX,\n deltaY: e.deltaY,\n });\n } else {\n this.processEvent('scroll', {\n x: e.clientX,\n y: e.clientY,\n deltaX: e.deltaX,\n deltaY: e.deltaY,\n });\n }\n }\n\n keydownHandler(event: KeyboardEvent) {\n if (this._keyfirstPressed.has(event.key)) {\n return;\n }\n this._keyfirstPressed.set(event.key, true);\n if (event.key === ' ') {\n this.processEvent('spacebarDown');\n }\n }\n\n keyupHandler(event: KeyboardEvent) {\n if (this._keyfirstPressed.has(event.key)) {\n this._keyfirstPressed.delete(event.key);\n }\n if (event.key === ' ') {\n this.processEvent('spacebarUp');\n }\n }\n}\n"
8
8
  ],
9
- "mappings": "AAKO,MAAM,CAAiB,CAClB,OACA,sBACA,mBACA,iBACA,iBAER,WAAW,CAAC,EAAc,EAA4C,EAAqC,CACvG,KAAK,OAAS,EACd,KAAK,sBAAwB,EAC7B,KAAK,mBAAqB,EAC1B,KAAK,iBAAmB,IAAI,IAC5B,KAAK,cAAc,EACnB,KAAK,iBAAmB,IAAI,gBAGhC,aAAa,EAAE,CACX,KAAK,mBAAqB,KAAK,mBAAmB,KAAK,IAAI,EAC3D,KAAK,iBAAmB,KAAK,iBAAiB,KAAK,IAAI,EACvD,KAAK,mBAAqB,KAAK,mBAAmB,KAAK,IAAI,EAC3D,KAAK,cAAgB,KAAK,cAAc,KAAK,IAAI,EACjD,KAAK,eAAiB,KAAK,eAAe,KAAK,IAAI,EACnD,KAAK,aAAe,KAAK,aAAa,KAAK,IAAI,EAGnD,KAAK,EAAE,CACH,KAAK,OAAO,GAAG,cAAe,KAAK,kBAAkB,EACrD,KAAK,OAAO,GAAG,YAAa,KAAK,gBAAgB,EACjD,KAAK,OAAO,GAAG,cAAe,KAAK,kBAAkB,EACrD,KAAK,OAAO,GAAG,QAAS,KAAK,aAAa,EAC1C,OAAO,iBAAiB,UAAW,KAAK,eAAgB,CAAC,OAAQ,KAAK,iBAAiB,MAAM,CAAC,EAC9F,OAAO,iBAAiB,QAAS,KAAK,aAAc,CAAC,OAAQ,KAAK,iBAAiB,MAAM,CAAC,EAG9F,QAAQ,EAAE,CACN,KAAK,OAAO,IAAI,cAAe,KAAK,kBAAkB,EACtD,KAAK,OAAO,IAAI,YAAa,KAAK,gBAAgB,EAClD,KAAK,OAAO,IAAI,cAAe,KAAK,kBAAkB,EACtD,KAAK,OAAO,IAAI,QAAS,KAAK,aAAa,EAC3C,KAAK,iBAAiB,MAAM,EAC5B,KAAK,iBAAmB,IAAI,gBAGxB,YAAkD,IACnD,EACC,CACJ,IAAM,EAAS,KAAK,sBAAsB,QAAQ,GAAG,CAAI,EACzD,GAAI,EAAO,SAAW,WAAY,EAC9B,KAAK,mBAAmB,wBAAwB,EAAO,MAAM,EAIrE,kBAAkB,CAAC,EAAmD,CAClE,IAAM,EAAQ,EAAY,IAC1B,GAAG,EAAM,SAAW,GAAK,EAAM,cAAgB,QAAQ,CACnD,KAAK,aAAa,kBAAmB,CAAC,EAAG,EAAM,QAAS,EAAG,EAAM,OAAO,CAAC,EACzE,OAEJ,GAAG,EAAM,SAAW,GAAK,EAAM,cAAgB,QAAQ,CACnD,KAAK,aAAa,oBAAqB,CAAC,EAAG,EAAM,QAAS,EAAG,EAAM,OAAO,CAAC,EAC3E,QAIR,gBAAgB,CAAC,EAAmD,CAChE,IAAM,EAAI,EAAY,IACtB,GAAG,EAAE,SAAW,GAAK,EAAE,cAAgB,QAAQ,CAC3C,KAAK,aAAa,gBAAiB,CAAC,EAAG,EAAE,QAAS,EAAG,EAAE,OAAO,CAAC,EAC/D,OAEJ,GAAG,EAAE,SAAW,GAAK,EAAE,cAAgB,QAAQ,CAC3C,KAAK,aAAa,kBAAmB,CAAC,EAAG,EAAE,QAAS,EAAG,EAAE,OAAO,CAAC,EACjE,QAIR,kBAAkB,CAAC,EAAmD,CAClE,IAAM,EAAI,EAAY,IACtB,GAAI,EAAE,UAAY,GAAM,EAAE,cAAgB,QAAQ,CAC9C,KAAK,aAAa,kBAAmB,CAAC,EAAG,EAAE,QAAS,EAAG,EAAE,OAAO,CAAC,EACjE,OAEJ,GAAI,EAAE,UAAa,GAAM,EAAE,cAAgB,QAAQ,CAC/C,KAAK,aAAa,oBAAqB,CAAC,EAAG,EAAE,QAAS,EAAG,EAAE,OAAO,CAAC,EACnE,OAEJ,KAAK,aAAa,cAAe,CAAC,EAAG,EAAE,QAAS,EAAG,EAAE,OAAO,CAAC,EAGjE,aAAa,CAAC,EAAiD,CAC3D,IAAM,EAAI,EAAY,IACtB,GAAG,EAAE,QACD,KAAK,aAAa,iBAAkB,CAAC,EAAG,EAAE,QAAS,EAAG,EAAE,QAAS,OAAQ,EAAE,OAAQ,OAAQ,EAAE,MAAM,CAAC,EAEpG,UAAK,aAAa,SAAU,CAAC,EAAG,EAAE,QAAS,EAAG,EAAE,QAAS,OAAQ,EAAE,OAAQ,OAAQ,EAAE,MAAM,CAAC,EAIpG,cAAc,CAAC,EAAqB,CAChC,GAAG,KAAK,iBAAiB,IAAI,EAAM,GAAG,EAClC,OAGJ,GADA,KAAK,iBAAiB,IAAI,EAAM,IAAK,EAAI,EACtC,EAAM,MAAQ,IACb,KAAK,aAAa,cAAc,EAIxC,YAAY,CAAC,EAAqB,CAC9B,GAAG,KAAK,iBAAiB,IAAI,EAAM,GAAG,EAClC,KAAK,iBAAiB,OAAO,EAAM,GAAG,EAE1C,GAAG,EAAM,MAAQ,IACb,KAAK,aAAa,YAAY,EAG1C",
9
+ "mappings": "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",
10
10
  "debugId": "A936ABE444886BE564756E2164756E21",
11
11
  "names": []
12
12
  }
@@ -1,6 +1,6 @@
1
- import { KonvaEventObject } from "konva/lib/Node";
2
- import { Stage } from "konva/lib/Stage";
3
- import { InputOrchestrator, KmtInputStateMachine } from "@ue-too/board";
1
+ import { InputOrchestrator, KmtInputStateMachine } from '@ue-too/board';
2
+ import { KonvaEventObject } from 'konva/lib/Node';
3
+ import { Stage } from 'konva/lib/Stage';
4
4
  export declare class KonvaInputParser {
5
5
  private _stage;
6
6
  private _kmtInputStateMachine;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ue-too/board-konva-integration",
3
3
  "type": "module",
4
- "version": "0.14.0",
4
+ "version": "0.15.0",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -23,9 +23,9 @@
23
23
  "types": "./index.d.ts",
24
24
  "module": "./index.js",
25
25
  "dependencies": {
26
- "@ue-too/board": "^0.14.0",
27
- "@ue-too/being": "^0.14.0",
28
- "@ue-too/math": "^0.14.0"
26
+ "@ue-too/board": "^0.15.0",
27
+ "@ue-too/being": "^0.15.0",
28
+ "@ue-too/math": "^0.15.0"
29
29
  },
30
30
  "devDependencies": {
31
31
  "konva": "10.0.12"