@ue-too/board 0.5.2 → 0.7.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.
Files changed (276) hide show
  1. package/README.md +188 -0
  2. package/board.tsbuildinfo +1 -0
  3. package/{dist/boardify → boardify}/index.d.ts +26 -44
  4. package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/base.d.ts +1 -1
  5. package/camera/camera-edge-auto-input.d.ts +13 -0
  6. package/{dist/camera → camera}/camera-rig/camera-rig.d.ts +1 -0
  7. package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-rig/pan-handler.d.ts +1 -0
  8. package/{dist/camera → camera}/default-camera.d.ts +3 -3
  9. package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/index.d.ts +1 -0
  10. package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/utils/position.d.ts +2 -2
  11. package/index.js +2 -0
  12. package/index.js.map +1 -0
  13. package/{dist/input-interpretation → input-interpretation}/input-state-machine/kmt-input-context.d.ts +77 -11
  14. package/{dist/input-interpretation → input-interpretation}/input-state-machine/kmt-input-state-machine.d.ts +26 -16
  15. package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation → input-interpretation}/input-state-machine/touch-input-context.d.ts +4 -4
  16. package/{dist/input-interpretation → input-interpretation}/raw-input-parser/vanilla-kmt-event-parser.d.ts +3 -2
  17. package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation → input-interpretation}/raw-input-parser/vanilla-touch-event-parser.d.ts +2 -7
  18. package/package.json +10 -11
  19. package/{dist/utils → utils}/canvas-position-dimension.d.ts +7 -5
  20. package/utils/observable.d.ts +18 -0
  21. package/{dist/utils → utils}/zoomlevel-adjustment.d.ts +1 -1
  22. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/board.tsbuildinfo +0 -1
  23. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/boardify/index.d.ts +0 -192
  24. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/boardify/index.js +0 -475
  25. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/boardify/index.js.map +0 -1
  26. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/base.js +0 -340
  27. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/base.js.map +0 -1
  28. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/animation-and-lock.js +0 -88
  29. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/animation-and-lock.js.map +0 -1
  30. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/index.js +0 -5
  31. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/index.js.map +0 -1
  32. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/pan-control-state-machine.js +0 -157
  33. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/pan-control-state-machine.js.map +0 -1
  34. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/rotation-control-state-machine.js +0 -151
  35. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/rotation-control-state-machine.js.map +0 -1
  36. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/zoom-control-state-machine.js +0 -153
  37. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/animation-and-lock/zoom-control-state-machine.js.map +0 -1
  38. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/index.js +0 -4
  39. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/index.js.map +0 -1
  40. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/interface.js +0 -2
  41. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/interface.js.map +0 -1
  42. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/relay.js +0 -38
  43. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-mux/relay.js.map +0 -1
  44. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/camera-rig.d.ts +0 -207
  45. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/camera-rig.js +0 -454
  46. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/camera-rig.js.map +0 -1
  47. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/index.js +0 -6
  48. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/index.js.map +0 -1
  49. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/pan-handler.js +0 -124
  50. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/pan-handler.js.map +0 -1
  51. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/rotation-handler.js +0 -71
  52. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/rotation-handler.js.map +0 -1
  53. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/update-batcher/index.js +0 -4
  54. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/update-batcher/index.js.map +0 -1
  55. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/update-batcher/position-update-batcher.js +0 -97
  56. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/update-batcher/position-update-batcher.js.map +0 -1
  57. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/update-batcher/rotation-update-batcher.js +0 -91
  58. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/update-batcher/rotation-update-batcher.js.map +0 -1
  59. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/update-batcher/zoom-udpate-batcher.js +0 -128
  60. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/update-batcher/zoom-udpate-batcher.js.map +0 -1
  61. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/zoom-handler.js +0 -76
  62. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/camera-rig/zoom-handler.js.map +0 -1
  63. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/default-camera.d.ts +0 -170
  64. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/default-camera.js +0 -258
  65. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/default-camera.js.map +0 -1
  66. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/index.js +0 -9
  67. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/index.js.map +0 -1
  68. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/interface.js +0 -2
  69. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/interface.js.map +0 -1
  70. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/update-publisher.js +0 -74
  71. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/update-publisher.js.map +0 -1
  72. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/coordinate-conversion.js +0 -150
  73. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/coordinate-conversion.js.map +0 -1
  74. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/index.js +0 -6
  75. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/index.js.map +0 -1
  76. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/matrix.js +0 -421
  77. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/matrix.js.map +0 -1
  78. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/position.js +0 -177
  79. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/position.js.map +0 -1
  80. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/rotation.js +0 -122
  81. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/rotation.js.map +0 -1
  82. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/zoom.js +0 -46
  83. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera/utils/zoom.js.map +0 -1
  84. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/index.js +0 -6
  85. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/index.js.map +0 -1
  86. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/index.js +0 -4
  87. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/index.js.map +0 -1
  88. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/index.js +0 -5
  89. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/index.js.map +0 -1
  90. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/kmt-input-context.d.ts +0 -130
  91. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/kmt-input-context.js +0 -191
  92. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/kmt-input-context.js.map +0 -1
  93. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/kmt-input-state-machine.d.ts +0 -194
  94. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/kmt-input-state-machine.js +0 -342
  95. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/kmt-input-state-machine.js.map +0 -1
  96. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/touch-input-context.js +0 -62
  97. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/touch-input-context.js.map +0 -1
  98. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/touch-input-state-machine.js +0 -173
  99. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/input-state-machine/touch-input-state-machine.js.map +0 -1
  100. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-parser/index.js +0 -3
  101. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-parser/index.js.map +0 -1
  102. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-parser/vanilla-kmt-event-parser.d.ts +0 -87
  103. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-parser/vanilla-kmt-event-parser.js +0 -123
  104. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-parser/vanilla-kmt-event-parser.js.map +0 -1
  105. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-parser/vanilla-touch-event-parser.js +0 -118
  106. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-parser/vanilla-touch-event-parser.js.map +0 -1
  107. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-publisher/index.js +0 -2
  108. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-publisher/index.js.map +0 -1
  109. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-publisher/raw-input-publisher.js +0 -99
  110. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation/raw-input-publisher/raw-input-publisher.js.map +0 -1
  111. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/canvas-position-dimension.d.ts +0 -18
  112. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/canvas-position-dimension.js +0 -184
  113. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/canvas-position-dimension.js.map +0 -1
  114. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/coorindate-conversion.js +0 -10
  115. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/coorindate-conversion.js.map +0 -1
  116. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/drawing-utils.js +0 -450
  117. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/drawing-utils.js.map +0 -1
  118. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/drawing.js +0 -192
  119. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/drawing.js.map +0 -1
  120. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/handler-pipeline.js +0 -27
  121. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/handler-pipeline.js.map +0 -1
  122. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/index.js +0 -9
  123. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/index.js.map +0 -1
  124. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/observable.d.ts +0 -9
  125. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/observable.js +0 -47
  126. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/observable.js.map +0 -1
  127. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/ruler.js +0 -21
  128. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/ruler.js.map +0 -1
  129. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/zoomlevel-adjustment.d.ts +0 -28
  130. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/zoomlevel-adjustment.js +0 -102
  131. package/.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils/zoomlevel-adjustment.js.map +0 -1
  132. package/dist/board.tsbuildinfo +0 -1
  133. package/dist/camera/base.d.ts +0 -189
  134. package/dist/camera/camera-mux/animation-and-lock/animation-and-lock.d.ts +0 -50
  135. package/dist/camera/camera-mux/animation-and-lock/index.d.ts +0 -4
  136. package/dist/camera/camera-mux/animation-and-lock/pan-control-state-machine.d.ts +0 -137
  137. package/dist/camera/camera-mux/animation-and-lock/rotation-control-state-machine.d.ts +0 -131
  138. package/dist/camera/camera-mux/animation-and-lock/zoom-control-state-machine.d.ts +0 -143
  139. package/dist/camera/camera-mux/index.d.ts +0 -3
  140. package/dist/camera/camera-mux/interface.d.ts +0 -12
  141. package/dist/camera/camera-mux/relay.d.ts +0 -27
  142. package/dist/camera/camera-rig/index.d.ts +0 -5
  143. package/dist/camera/camera-rig/pan-handler.d.ts +0 -113
  144. package/dist/camera/camera-rig/rotation-handler.d.ts +0 -78
  145. package/dist/camera/camera-rig/update-batcher/index.d.ts +0 -3
  146. package/dist/camera/camera-rig/update-batcher/position-update-batcher.d.ts +0 -58
  147. package/dist/camera/camera-rig/update-batcher/rotation-update-batcher.d.ts +0 -54
  148. package/dist/camera/camera-rig/update-batcher/zoom-udpate-batcher.d.ts +0 -60
  149. package/dist/camera/camera-rig/zoom-handler.d.ts +0 -77
  150. package/dist/camera/index.d.ts +0 -8
  151. package/dist/camera/interface.d.ts +0 -59
  152. package/dist/camera/update-publisher.d.ts +0 -172
  153. package/dist/camera/utils/coordinate-conversion.d.ts +0 -75
  154. package/dist/camera/utils/index.d.ts +0 -5
  155. package/dist/camera/utils/matrix.d.ts +0 -114
  156. package/dist/camera/utils/position.d.ts +0 -71
  157. package/dist/camera/utils/rotation.d.ts +0 -64
  158. package/dist/camera/utils/zoom.d.ts +0 -25
  159. package/dist/index.d.ts +0 -5
  160. package/dist/index.js +0 -2
  161. package/dist/index.js.map +0 -1
  162. package/dist/input-interpretation/index.d.ts +0 -3
  163. package/dist/input-interpretation/input-state-machine/index.d.ts +0 -4
  164. package/dist/input-interpretation/input-state-machine/touch-input-context.d.ts +0 -44
  165. package/dist/input-interpretation/input-state-machine/touch-input-state-machine.d.ts +0 -64
  166. package/dist/input-interpretation/raw-input-parser/index.d.ts +0 -2
  167. package/dist/input-interpretation/raw-input-parser/vanilla-touch-event-parser.d.ts +0 -55
  168. package/dist/input-interpretation/raw-input-publisher/index.d.ts +0 -1
  169. package/dist/input-interpretation/raw-input-publisher/raw-input-publisher.d.ts +0 -130
  170. package/dist/package.json +0 -39
  171. package/dist/utils/coorindate-conversion.d.ts +0 -5
  172. package/dist/utils/drawing-utils.d.ts +0 -55
  173. package/dist/utils/drawing.d.ts +0 -30
  174. package/dist/utils/handler-pipeline.d.ts +0 -30
  175. package/dist/utils/index.d.ts +0 -8
  176. package/dist/utils/observable.d.ts +0 -9
  177. package/dist/utils/ruler.d.ts +0 -1
  178. package/jest.config.js +0 -18
  179. package/project.json +0 -34
  180. package/rollup.config.js +0 -29
  181. package/src/boardify/index.ts +0 -562
  182. package/src/camera/base.ts +0 -387
  183. package/src/camera/camera-mux/animation-and-lock/animation-and-lock.ts +0 -114
  184. package/src/camera/camera-mux/animation-and-lock/index.ts +0 -4
  185. package/src/camera/camera-mux/animation-and-lock/pan-control-state-machine.ts +0 -248
  186. package/src/camera/camera-mux/animation-and-lock/rotation-control-state-machine.ts +0 -237
  187. package/src/camera/camera-mux/animation-and-lock/zoom-control-state-machine.ts +0 -263
  188. package/src/camera/camera-mux/index.ts +0 -3
  189. package/src/camera/camera-mux/interface.ts +0 -13
  190. package/src/camera/camera-mux/relay.ts +0 -50
  191. package/src/camera/camera-rig/camera-rig.ts +0 -560
  192. package/src/camera/camera-rig/index.ts +0 -5
  193. package/src/camera/camera-rig/pan-handler.ts +0 -192
  194. package/src/camera/camera-rig/rotation-handler.ts +0 -124
  195. package/src/camera/camera-rig/update-batcher/index.ts +0 -3
  196. package/src/camera/camera-rig/update-batcher/position-update-batcher.ts +0 -133
  197. package/src/camera/camera-rig/update-batcher/rotation-update-batcher.ts +0 -123
  198. package/src/camera/camera-rig/update-batcher/zoom-udpate-batcher.ts +0 -157
  199. package/src/camera/camera-rig/zoom-handler.ts +0 -123
  200. package/src/camera/default-camera.ts +0 -297
  201. package/src/camera/index.ts +0 -8
  202. package/src/camera/interface.ts +0 -45
  203. package/src/camera/update-publisher.ts +0 -222
  204. package/src/camera/utils/coordinate-conversion.ts +0 -160
  205. package/src/camera/utils/index.ts +0 -5
  206. package/src/camera/utils/matrix.ts +0 -558
  207. package/src/camera/utils/position.ts +0 -196
  208. package/src/camera/utils/rotation.ts +0 -147
  209. package/src/camera/utils/zoom.ts +0 -55
  210. package/src/index.ts +0 -5
  211. package/src/input-interpretation/index.ts +0 -3
  212. package/src/input-interpretation/input-state-machine/index.ts +0 -4
  213. package/src/input-interpretation/input-state-machine/kmt-input-context.ts +0 -283
  214. package/src/input-interpretation/input-state-machine/kmt-input-state-machine.ts +0 -491
  215. package/src/input-interpretation/input-state-machine/touch-input-context.ts +0 -106
  216. package/src/input-interpretation/input-state-machine/touch-input-state-machine.ts +0 -215
  217. package/src/input-interpretation/raw-input-parser/index.ts +0 -2
  218. package/src/input-interpretation/raw-input-parser/vanilla-kmt-event-parser.ts +0 -207
  219. package/src/input-interpretation/raw-input-parser/vanilla-touch-event-parser.ts +0 -169
  220. package/src/input-interpretation/raw-input-publisher/index.ts +0 -1
  221. package/src/input-interpretation/raw-input-publisher/raw-input-publisher.ts +0 -227
  222. package/src/utils/canvas-position-dimension.ts +0 -215
  223. package/src/utils/coorindate-conversion.ts +0 -12
  224. package/src/utils/drawing-utils.ts +0 -439
  225. package/src/utils/drawing.ts +0 -266
  226. package/src/utils/handler-pipeline.ts +0 -41
  227. package/src/utils/index.ts +0 -8
  228. package/src/utils/observable.ts +0 -63
  229. package/src/utils/ruler.ts +0 -18
  230. package/src/utils/zoomlevel-adjustment.ts +0 -108
  231. package/test/board-camera/camera-rig.test.ts +0 -78
  232. package/test/board-camera/camera-utils.test.ts +0 -263
  233. package/test/board-camera/utils/coordinate-conversion.test.ts +0 -26
  234. package/test/board-camera/utils/matrix.test.ts +0 -35
  235. package/test/boardify/utils/canvas.test.ts +0 -20
  236. package/test/util/drawing.test.ts +0 -83
  237. package/test/util/handler-pipeline.test.ts +0 -74
  238. package/test/util/observable.test.ts +0 -42
  239. package/test/util/ruler.test.ts +0 -41
  240. package/tsconfig.json +0 -23
  241. package/tsconfig.spec.json +0 -12
  242. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-mux/animation-and-lock/animation-and-lock.d.ts +0 -0
  243. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-mux/animation-and-lock/index.d.ts +0 -0
  244. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-mux/animation-and-lock/pan-control-state-machine.d.ts +0 -0
  245. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-mux/animation-and-lock/rotation-control-state-machine.d.ts +0 -0
  246. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-mux/animation-and-lock/zoom-control-state-machine.d.ts +0 -0
  247. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-mux/index.d.ts +0 -0
  248. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-mux/interface.d.ts +0 -0
  249. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-mux/relay.d.ts +0 -0
  250. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-rig/index.d.ts +0 -0
  251. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-rig/rotation-handler.d.ts +0 -0
  252. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-rig/update-batcher/index.d.ts +0 -0
  253. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-rig/update-batcher/position-update-batcher.d.ts +0 -0
  254. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-rig/update-batcher/rotation-update-batcher.d.ts +0 -0
  255. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-rig/update-batcher/zoom-udpate-batcher.d.ts +0 -0
  256. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/camera-rig/zoom-handler.d.ts +0 -0
  257. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/interface.d.ts +0 -0
  258. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/update-publisher.d.ts +0 -0
  259. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/utils/coordinate-conversion.d.ts +0 -0
  260. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/utils/index.d.ts +0 -0
  261. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/utils/matrix.d.ts +0 -0
  262. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/utils/rotation.d.ts +0 -0
  263. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/camera → camera}/utils/zoom.d.ts +0 -0
  264. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/index.d.ts → index.d.ts} +0 -0
  265. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation → input-interpretation}/index.d.ts +0 -0
  266. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation → input-interpretation}/input-state-machine/index.d.ts +0 -0
  267. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation → input-interpretation}/input-state-machine/touch-input-state-machine.d.ts +0 -0
  268. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation → input-interpretation}/raw-input-parser/index.d.ts +0 -0
  269. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation → input-interpretation}/raw-input-publisher/index.d.ts +0 -0
  270. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/input-interpretation → input-interpretation}/raw-input-publisher/raw-input-publisher.d.ts +0 -0
  271. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils → utils}/coorindate-conversion.d.ts +0 -0
  272. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils → utils}/drawing-utils.d.ts +0 -0
  273. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils → utils}/drawing.d.ts +0 -0
  274. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils → utils}/handler-pipeline.d.ts +0 -0
  275. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils → utils}/index.d.ts +0 -0
  276. /package/{.rollup.cache/home/runner/work/ue-too/ue-too/packages/board/dist/utils → utils}/ruler.d.ts +0 -0
@@ -1,173 +0,0 @@
1
- import { PointCal } from "@ue-too/math";
2
- import { TemplateState, TemplateStateMachine } from "@ue-too/being";
3
- /**
4
- * @description The idle state of the touch input state machine.
5
- *
6
- * @category Input State Machine
7
- */
8
- export class IdleState extends TemplateState {
9
- constructor() {
10
- super(...arguments);
11
- this._eventReactions = {
12
- touchstart: {
13
- action: this.touchstart,
14
- defaultTargetState: "IDLE",
15
- },
16
- touchend: {
17
- action: this.touchend,
18
- defaultTargetState: "IDLE",
19
- },
20
- };
21
- this._guards = {
22
- touchPointsCount: ((context) => {
23
- return context.getCurrentTouchPointsCount() === 2;
24
- }).bind(this)
25
- };
26
- this._eventGuards = {
27
- touchstart: [{
28
- guard: "touchPointsCount",
29
- target: "PENDING",
30
- }],
31
- touchend: [{
32
- guard: "touchPointsCount",
33
- target: "PENDING",
34
- }],
35
- };
36
- }
37
- get eventReactions() {
38
- return this._eventReactions;
39
- }
40
- touchstart(context, payload) {
41
- context.addTouchPoints(payload.points);
42
- }
43
- touchend(context, payload) {
44
- context.removeTouchPoints(payload.points.map(p => p.ident));
45
- }
46
- }
47
- /**
48
- * @description The pending state of the touch input state machine.
49
- *
50
- * @category Input State Machine
51
- */
52
- export class PendingState extends TemplateState {
53
- constructor() {
54
- super(...arguments);
55
- this._eventReactions = {
56
- touchstart: {
57
- action: this.touchstart,
58
- defaultTargetState: "IDLE",
59
- },
60
- touchend: {
61
- action: this.touchend,
62
- defaultTargetState: "IDLE",
63
- },
64
- touchmove: {
65
- action: this.touchmove,
66
- defaultTargetState: "IN_PROGRESS",
67
- },
68
- };
69
- }
70
- get eventReactions() {
71
- return this._eventReactions;
72
- }
73
- touchstart(context, payload) {
74
- context.addTouchPoints(payload.points);
75
- }
76
- touchend(context, payload) {
77
- context.removeTouchPoints(payload.points.map(p => p.ident));
78
- }
79
- touchmove(context, payload) {
80
- const idents = payload.points.map(p => p.ident);
81
- const initialPositions = context.getInitialTouchPointsPositions(idents);
82
- const currentPositions = payload.points;
83
- const initialStartAndEndDistance = PointCal.distanceBetweenPoints(initialPositions[0], initialPositions[1]);
84
- const currentStartAndEndDistance = PointCal.distanceBetweenPoints(currentPositions[0], currentPositions[1]);
85
- const midPoint = PointCal.linearInterpolation(initialPositions[0], initialPositions[1], 0.5);
86
- const currentMidPoint = PointCal.linearInterpolation(currentPositions[0], currentPositions[1], 0.5);
87
- const midPointDelta = PointCal.subVector(midPoint, currentMidPoint);
88
- const cameraCenterInWindow = { x: context.canvas.position.x + context.canvas.width / 2, y: context.canvas.position.y + context.canvas.height / 2 };
89
- const midPointInViewPort = PointCal.subVector(midPoint, cameraCenterInWindow);
90
- let panZoom = Math.abs(currentStartAndEndDistance - initialStartAndEndDistance) > PointCal.distanceBetweenPoints(midPoint, currentMidPoint) ? "ZOOMING" : "PANNING";
91
- context.updateTouchPoints(currentPositions);
92
- switch (panZoom) {
93
- case "ZOOMING":
94
- context.notifyOnZoom((currentStartAndEndDistance - initialStartAndEndDistance) * 0.005, midPointInViewPort);
95
- break;
96
- case "PANNING":
97
- context.notifyOnPan(midPointDelta);
98
- break;
99
- default:
100
- console.warn("Unknown panZoom state", panZoom);
101
- break;
102
- }
103
- }
104
- }
105
- /**
106
- * @description The in progress state of the touch input state machine.
107
- *
108
- * @category Input State Machine
109
- */
110
- export class InProgressState extends TemplateState {
111
- constructor() {
112
- super(...arguments);
113
- this._eventReactions = {
114
- touchmove: {
115
- action: this.touchmove,
116
- defaultTargetState: "IN_PROGRESS",
117
- },
118
- touchend: {
119
- action: this.touchend,
120
- defaultTargetState: "IDLE",
121
- },
122
- touchstart: {
123
- action: () => "IDLE",
124
- defaultTargetState: "IDLE",
125
- },
126
- };
127
- }
128
- get eventReactions() {
129
- return this._eventReactions;
130
- }
131
- touchmove(context, payload) {
132
- const idents = payload.points.map(p => p.ident);
133
- const initialPositions = context.getInitialTouchPointsPositions(idents);
134
- const currentPositions = payload.points;
135
- const initialStartAndEndDistance = PointCal.distanceBetweenPoints(initialPositions[0], initialPositions[1]);
136
- const currentStartAndEndDistance = PointCal.distanceBetweenPoints(currentPositions[0], currentPositions[1]);
137
- const midPoint = PointCal.linearInterpolation(initialPositions[0], initialPositions[1], 0.5);
138
- const currentMidPoint = PointCal.linearInterpolation(currentPositions[0], currentPositions[1], 0.5);
139
- const midPointDelta = PointCal.subVector(midPoint, currentMidPoint);
140
- const cameraCenterInWindow = { x: context.canvas.position.x + context.canvas.width / 2, y: context.canvas.position.y + context.canvas.height / 2 };
141
- const midPointInViewPort = PointCal.subVector(midPoint, cameraCenterInWindow);
142
- let panZoom = Math.abs(currentStartAndEndDistance - initialStartAndEndDistance) > PointCal.distanceBetweenPoints(midPoint, currentMidPoint) ? "ZOOMING" : "PANNING";
143
- context.updateTouchPoints(currentPositions);
144
- switch (panZoom) {
145
- case "ZOOMING":
146
- if (!context.alignCoordinateSystem) {
147
- midPointInViewPort.y = -midPointInViewPort.y;
148
- }
149
- context.notifyOnZoom(-(initialStartAndEndDistance - currentStartAndEndDistance) * 0.005, midPointInViewPort);
150
- break;
151
- case "PANNING":
152
- if (!context.alignCoordinateSystem) {
153
- midPointDelta.y = -midPointDelta.y;
154
- }
155
- context.notifyOnPan(midPointDelta);
156
- break;
157
- default:
158
- console.warn("Unknown panZoom state", panZoom);
159
- break;
160
- }
161
- }
162
- touchend(context, payload) {
163
- context.removeTouchPoints(payload.points.map(p => p.ident));
164
- }
165
- }
166
- export function createTouchInputStateMachine(context) {
167
- return new TemplateStateMachine({
168
- IDLE: new IdleState(),
169
- PENDING: new PendingState(),
170
- IN_PROGRESS: new InProgressState(),
171
- }, "IDLE", context);
172
- }
173
- //# sourceMappingURL=touch-input-state-machine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"touch-input-state-machine.js","sourceRoot":"","sources":["../../../src/input-interpretation/input-state-machine/touch-input-state-machine.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from "./vanilla-kmt-event-parser";
2
- export * from "./vanilla-touch-event-parser";
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/input-interpretation/raw-input-parser/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC"}
@@ -1,87 +0,0 @@
1
- import type { KmtInputStateMachine } from "../../input-interpretation/input-state-machine";
2
- /**
3
- * @category Event Parser
4
- */
5
- export interface KMTEventParser {
6
- disabled: boolean;
7
- setUp(): void;
8
- tearDown(): void;
9
- attach(canvas: HTMLCanvasElement): void;
10
- }
11
- /**
12
- * @description The minimum pointer event.
13
- * This is for the interoperability between the vanilla javascript and the pixijs event system.
14
- *
15
- * @category Event Parser
16
- */
17
- export type MinimumPointerEvent = {
18
- button: number;
19
- pointerType: string;
20
- clientX: number;
21
- clientY: number;
22
- buttons: number;
23
- };
24
- /**
25
- * @description The minimum wheel event.
26
- * This is for the interoperability between the vanilla javascript and the pixijs event system.
27
- *
28
- * @category Event Parser
29
- */
30
- export type MinimumWheelEvent = {
31
- preventDefault: () => void;
32
- deltaX: number;
33
- deltaY: number;
34
- ctrlKey: boolean;
35
- clientX: number;
36
- clientY: number;
37
- };
38
- /**
39
- * @description The minimum keyboard event.
40
- * This is for the interoperability between the vanilla javascript and the pixijs event system.
41
- *
42
- * @category Event Parser
43
- */
44
- export type MinimumKeyboardEvent = {
45
- preventDefault: () => void;
46
- key: string;
47
- };
48
- /**
49
- * @description The event target with pointer events.
50
- * This is for the interoperability between the vanilla javascript and the pixijs event system.
51
- *
52
- * @category Event Parser
53
- */
54
- export type EventTargetWithPointerEvents = {
55
- addEventListener: (type: string, listener: (event: any) => void, options?: {
56
- passive: boolean;
57
- }) => void;
58
- removeEventListener: (type: string, listener: (event: any) => void) => void;
59
- };
60
- /**
61
- * @description The vanilla keyboard mouse and trackpad(KMT) event parser.
62
- * This parser converts the raw events to events that can be used by the input state machine.
63
- *
64
- * @category Event Parser
65
- */
66
- export declare class VanillaKMTEventParser implements KMTEventParser {
67
- private _disabled;
68
- private _stateMachine;
69
- private _keyfirstPressed;
70
- private _abortController;
71
- private _canvas;
72
- constructor(canvas: HTMLCanvasElement, kmtInputStateMachine: KmtInputStateMachine);
73
- get disabled(): boolean;
74
- set disabled(value: boolean);
75
- get stateMachine(): KmtInputStateMachine;
76
- addEventListeners(signal: AbortSignal): void;
77
- setUp(): void;
78
- tearDown(): void;
79
- bindFunctions(): void;
80
- pointerDownHandler(e: MinimumPointerEvent): void;
81
- pointerUpHandler(e: MinimumPointerEvent): void;
82
- pointerMoveHandler(e: MinimumPointerEvent): void;
83
- scrollHandler(e: MinimumWheelEvent): void;
84
- keypressHandler(e: KeyboardEvent): void;
85
- keyupHandler(e: KeyboardEvent): void;
86
- attach(canvas: HTMLCanvasElement): void;
87
- }
@@ -1,123 +0,0 @@
1
- /**
2
- * @description The vanilla keyboard mouse and trackpad(KMT) event parser.
3
- * This parser converts the raw events to events that can be used by the input state machine.
4
- *
5
- * @category Event Parser
6
- */
7
- export class VanillaKMTEventParser {
8
- constructor(canvas, kmtInputStateMachine) {
9
- this._canvas = canvas;
10
- this.bindFunctions();
11
- this._abortController = new AbortController();
12
- this._stateMachine = kmtInputStateMachine;
13
- this._keyfirstPressed = new Map();
14
- }
15
- get disabled() {
16
- return this._disabled;
17
- }
18
- set disabled(value) {
19
- this._disabled = value;
20
- }
21
- get stateMachine() {
22
- return this._stateMachine;
23
- }
24
- addEventListeners(signal) {
25
- this._canvas.addEventListener('pointerdown', this.pointerDownHandler, { signal });
26
- this._canvas.addEventListener('pointerup', this.pointerUpHandler, { signal });
27
- this._canvas.addEventListener('pointermove', this.pointerMoveHandler, { signal });
28
- this._canvas.addEventListener('wheel', this.scrollHandler, { signal });
29
- window.addEventListener('keydown', this.keypressHandler, { signal });
30
- window.addEventListener('keyup', this.keyupHandler, { signal });
31
- }
32
- setUp() {
33
- this.addEventListeners(this._abortController.signal);
34
- }
35
- tearDown() {
36
- this._abortController.abort();
37
- this._abortController = new AbortController();
38
- }
39
- bindFunctions() {
40
- this.pointerDownHandler = this.pointerDownHandler.bind(this);
41
- this.pointerUpHandler = this.pointerUpHandler.bind(this);
42
- this.pointerMoveHandler = this.pointerMoveHandler.bind(this);
43
- this.scrollHandler = this.scrollHandler.bind(this);
44
- this.keypressHandler = this.keypressHandler.bind(this);
45
- this.keyupHandler = this.keyupHandler.bind(this);
46
- }
47
- pointerDownHandler(e) {
48
- if (this._disabled) {
49
- return;
50
- }
51
- if (e.button === 0 && e.pointerType === "mouse") {
52
- this.stateMachine.happens("leftPointerDown", { x: e.clientX, y: e.clientY });
53
- return;
54
- }
55
- if (e.button === 1 && e.pointerType === "mouse") {
56
- this.stateMachine.happens("middlePointerDown", { x: e.clientX, y: e.clientY });
57
- return;
58
- }
59
- }
60
- pointerUpHandler(e) {
61
- if (this._disabled) {
62
- return;
63
- }
64
- if (e.button === 0 && e.pointerType === "mouse") {
65
- this.stateMachine.happens("leftPointerUp", { x: e.clientX, y: e.clientY });
66
- return;
67
- }
68
- if (e.button === 1 && e.pointerType === "mouse") {
69
- this.stateMachine.happens("middlePointerUp", { x: e.clientX, y: e.clientY });
70
- return;
71
- }
72
- }
73
- pointerMoveHandler(e) {
74
- if (this._disabled) {
75
- return;
76
- }
77
- if ((e.buttons === 1) && e.pointerType === "mouse") {
78
- this.stateMachine.happens("leftPointerMove", { x: e.clientX, y: e.clientY });
79
- return;
80
- }
81
- if ((e.buttons === 4) && e.pointerType === "mouse") {
82
- this.stateMachine.happens("middlePointerMove", { x: e.clientX, y: e.clientY });
83
- return;
84
- }
85
- }
86
- scrollHandler(e) {
87
- if (this._disabled)
88
- return;
89
- e.preventDefault();
90
- if (e.ctrlKey) {
91
- this.stateMachine.happens("scrollWithCtrl", { x: e.clientX, y: e.clientY, deltaX: e.deltaX, deltaY: e.deltaY });
92
- }
93
- else {
94
- this.stateMachine.happens("scroll", { deltaX: e.deltaX, deltaY: e.deltaY });
95
- }
96
- }
97
- keypressHandler(e) {
98
- if (e.target !== document.body) {
99
- return;
100
- }
101
- if (this._keyfirstPressed.has(e.key)) {
102
- return;
103
- }
104
- this._keyfirstPressed.set(e.key, true);
105
- if (e.key === " ") {
106
- this.stateMachine.happens("spacebarDown", {});
107
- }
108
- }
109
- keyupHandler(e) {
110
- if (this._keyfirstPressed.has(e.key)) {
111
- this._keyfirstPressed.delete(e.key);
112
- }
113
- if (e.key === " ") {
114
- this.stateMachine.happens("spacebarUp", {});
115
- }
116
- }
117
- attach(canvas) {
118
- this.tearDown();
119
- this._canvas = canvas;
120
- this.setUp();
121
- }
122
- }
123
- //# sourceMappingURL=vanilla-kmt-event-parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vanilla-kmt-event-parser.js","sourceRoot":"","sources":["../../../src/input-interpretation/raw-input-parser/vanilla-kmt-event-parser.ts"],"names":[],"mappings":"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"}
@@ -1,118 +0,0 @@
1
- /**
2
- * @description The vanilla touch event parser.
3
- * This parser converts the raw events to events that can be used by the input state machine.
4
- *
5
- * @category Event Parser
6
- */
7
- export class VanillaTouchEventParser {
8
- constructor(canvas, touchInputStateMachine) {
9
- this._panDisabled = false;
10
- this._zoomDisabled = false;
11
- this._rotateDisabled = false;
12
- this._canvas = canvas;
13
- this._disabled = false;
14
- this.touchSM = touchInputStateMachine;
15
- this._abortController = new AbortController();
16
- this.bindListeners();
17
- }
18
- get touchStateMachine() {
19
- return this.touchSM;
20
- }
21
- bindListeners() {
22
- this.touchstartHandler = this.touchstartHandler.bind(this);
23
- this.touchendHandler = this.touchendHandler.bind(this);
24
- this.touchcancelHandler = this.touchcancelHandler.bind(this);
25
- this.touchmoveHandler = this.touchmoveHandler.bind(this);
26
- }
27
- enableStrategy() {
28
- this._disabled = false;
29
- }
30
- disableStrategy() {
31
- this._disabled = true;
32
- }
33
- setUp() {
34
- this._canvas.addEventListener('touchstart', this.touchstartHandler, { signal: this._abortController.signal });
35
- this._canvas.addEventListener('touchend', this.touchendHandler, { signal: this._abortController.signal });
36
- this._canvas.addEventListener('touchcancel', this.touchcancelHandler, { signal: this._abortController.signal });
37
- this._canvas.addEventListener('touchmove', this.touchmoveHandler, { signal: this._abortController.signal });
38
- }
39
- tearDown() {
40
- this._abortController.abort();
41
- this._abortController = new AbortController();
42
- }
43
- get disabled() {
44
- return this._disabled;
45
- }
46
- get alignCoordinateSystem() {
47
- return this._touchInputTracker.alignCoordinateSystem;
48
- }
49
- set alignCoordinateSystem(alignCoordinateSystem) {
50
- this._touchInputTracker.alignCoordinateSystem = alignCoordinateSystem;
51
- }
52
- get panDisabled() {
53
- return this._panDisabled;
54
- }
55
- set panDisabled(panDisabled) {
56
- this._panDisabled = panDisabled;
57
- }
58
- get zoomDisabled() {
59
- return this._zoomDisabled;
60
- }
61
- set zoomDisabled(zoomDisabled) {
62
- this._zoomDisabled = zoomDisabled;
63
- }
64
- get rotateDisabled() {
65
- return this._rotateDisabled;
66
- }
67
- set rotateDisabled(rotateDisabled) {
68
- this._rotateDisabled = rotateDisabled;
69
- }
70
- touchstartHandler(e) {
71
- if (this._disabled) {
72
- return;
73
- }
74
- const pointsAdded = [];
75
- for (let i = 0; i < e.changedTouches.length; i++) {
76
- pointsAdded.push({ ident: e.changedTouches[i].identifier, x: e.changedTouches[i].clientX, y: e.changedTouches[i].clientY });
77
- }
78
- this.touchSM.happens("touchstart", { points: pointsAdded });
79
- e.preventDefault();
80
- }
81
- touchcancelHandler(e) {
82
- if (this._disabled) {
83
- return;
84
- }
85
- const pointsRemoved = [];
86
- for (let i = 0; i < e.changedTouches.length; i++) {
87
- pointsRemoved.push({ ident: e.changedTouches[i].identifier, x: e.changedTouches[i].clientX, y: e.changedTouches[i].clientY });
88
- }
89
- this.touchSM.happens("touchend", { points: pointsRemoved });
90
- }
91
- touchendHandler(e) {
92
- if (this._disabled) {
93
- return;
94
- }
95
- const pointsRemoved = [];
96
- for (let i = 0; i < e.changedTouches.length; i++) {
97
- pointsRemoved.push({ ident: e.changedTouches[i].identifier, x: e.changedTouches[i].clientX, y: e.changedTouches[i].clientY });
98
- }
99
- this.touchSM.happens("touchend", { points: pointsRemoved });
100
- }
101
- touchmoveHandler(e) {
102
- if (this._disabled) {
103
- return;
104
- }
105
- e.preventDefault();
106
- const pointsMoved = [];
107
- for (let i = 0; i < e.targetTouches.length; i++) {
108
- pointsMoved.push({ ident: e.targetTouches[i].identifier, x: e.targetTouches[i].clientX, y: e.targetTouches[i].clientY });
109
- }
110
- this.touchSM.happens("touchmove", { points: pointsMoved });
111
- }
112
- attach(canvas) {
113
- this.tearDown();
114
- this._canvas = canvas;
115
- this.setUp();
116
- }
117
- }
118
- //# sourceMappingURL=vanilla-touch-event-parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vanilla-touch-event-parser.js","sourceRoot":"","sources":["../../../src/input-interpretation/raw-input-parser/vanilla-touch-event-parser.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from "./raw-input-publisher";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/input-interpretation/raw-input-publisher/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
@@ -1,99 +0,0 @@
1
- import { createDefaultCameraMux } from "../../camera/camera-mux";
2
- import { Observable } from "../../utils/observable";
3
- /**
4
- * @description The raw user input publisher.
5
- * Publishs raw user input events to the input flow control, and subscribers.
6
- *
7
- * @category Event Parser
8
- */
9
- export class RawUserInputPublisher {
10
- constructor(cameraMux) {
11
- this.pan = new Observable();
12
- this.zoom = new Observable();
13
- this.rotate = new Observable();
14
- this.all = new Observable();
15
- this._cameraMux = cameraMux;
16
- }
17
- notifyPan(diff) {
18
- this._cameraMux.notifyPanInput(diff);
19
- this.pan.notify({ diff: diff });
20
- this.all.notify({ type: "pan", diff: diff });
21
- }
22
- notifyZoom(deltaZoomAmount, anchorPoint) {
23
- this._cameraMux.notifyZoomInput(deltaZoomAmount, anchorPoint);
24
- this.zoom.notify({ deltaZoomAmount: deltaZoomAmount, anchorPoint: anchorPoint });
25
- this.all.notify({ type: "zoom", deltaZoomAmount: deltaZoomAmount, anchorPoint: anchorPoint });
26
- }
27
- notifyRotate(deltaRotation) {
28
- this._cameraMux.notifyRotationInput(deltaRotation);
29
- this.rotate.notify({ deltaRotation: deltaRotation });
30
- this.all.notify({ type: "rotate", deltaRotation: deltaRotation });
31
- }
32
- on(eventName, callback) {
33
- switch (eventName) {
34
- case "pan":
35
- return this.pan.subscribe(callback);
36
- case "zoom":
37
- return this.zoom.subscribe(callback);
38
- case "rotate":
39
- return this.rotate.subscribe(callback);
40
- case "all":
41
- return this.all.subscribe(callback);
42
- default:
43
- throw new Error("Invalid raw user input event name");
44
- }
45
- }
46
- get cameraMux() {
47
- return this._cameraMux;
48
- }
49
- set cameraMux(cameraMux) {
50
- this._cameraMux = cameraMux;
51
- }
52
- }
53
- /**
54
- * @description Creates a default raw user input publisher.
55
- *
56
- * @category Event Parser
57
- */
58
- export function createDefaultRawUserInputPublisher(camera) {
59
- return new RawUserInputPublisher(createDefaultCameraMux(camera));
60
- }
61
- export class RawUserInputPublisherWithWebWorkerRelay {
62
- constructor(webWorker) {
63
- this.pan = new Observable();
64
- this.zoom = new Observable();
65
- this.rotate = new Observable();
66
- this.all = new Observable();
67
- this.webWorker = webWorker;
68
- }
69
- notifyPan(diff) {
70
- this.webWorker.postMessage({ type: "notifyUserInput", payload: { type: "pan", diff: diff } });
71
- this.pan.notify({ diff: diff });
72
- this.all.notify({ type: "pan", diff: diff });
73
- }
74
- notifyZoom(deltaZoomAmount, anchorPoint) {
75
- this.webWorker.postMessage({ type: "notifyUserInput", payload: { type: "zoom", deltaZoomAmount: deltaZoomAmount, anchorPoint: anchorPoint } });
76
- this.zoom.notify({ deltaZoomAmount: deltaZoomAmount, anchorPoint: anchorPoint });
77
- this.all.notify({ type: "zoom", deltaZoomAmount: deltaZoomAmount, anchorPoint: anchorPoint });
78
- }
79
- notifyRotate(deltaRotation) {
80
- this.webWorker.postMessage({ type: "notifyUserInput", payload: { type: "rotate", deltaRotation: deltaRotation } });
81
- this.rotate.notify({ deltaRotation: deltaRotation });
82
- this.all.notify({ type: "rotate", deltaRotation: deltaRotation });
83
- }
84
- on(eventName, callback) {
85
- switch (eventName) {
86
- case "pan":
87
- return this.pan.subscribe(callback);
88
- case "zoom":
89
- return this.zoom.subscribe(callback);
90
- case "rotate":
91
- return this.rotate.subscribe(callback);
92
- case "all":
93
- return this.all.subscribe(callback);
94
- default:
95
- throw new Error("Invalid raw user input event name");
96
- }
97
- }
98
- }
99
- //# sourceMappingURL=raw-input-publisher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"raw-input-publisher.js","sourceRoot":"","sources":["../../../src/input-interpretation/raw-input-publisher/raw-input-publisher.ts"],"names":[],"mappings":"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"}