@reffy/infinite-canvas 0.0.13 → 0.1.1

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 (598) hide show
  1. package/{esm → dist}/API.d.ts +6 -2
  2. package/dist/API.d.ts.map +1 -0
  3. package/{lib → dist}/Canvas.d.ts +33 -9
  4. package/dist/Canvas.d.ts.map +1 -0
  5. package/{esm → dist}/Component.d.ts +28 -8
  6. package/dist/Component.d.ts.map +1 -0
  7. package/dist/bounding/AABB.d.ts.map +1 -0
  8. package/{lib → dist}/bounding/BoundingBox.d.ts +5 -5
  9. package/dist/bounding/BoundingBox.d.ts.map +1 -0
  10. package/{lib → dist}/bounding/Marquee.d.ts +2 -2
  11. package/dist/bounding/Marquee.d.ts.map +1 -0
  12. package/{esm → dist}/bounding/MultiBoundingBox.d.ts +3 -3
  13. package/dist/bounding/MultiBoundingBox.d.ts.map +1 -0
  14. package/dist/bounding/index.d.ts +6 -0
  15. package/dist/bounding/index.d.ts.map +1 -0
  16. package/dist/bounding/type.d.ts.map +1 -0
  17. package/{lib → dist}/camera/Camera.d.ts +3 -2
  18. package/dist/camera/Camera.d.ts.map +1 -0
  19. package/dist/camera/index.d.ts +2 -0
  20. package/dist/camera/index.d.ts.map +1 -0
  21. package/dist/contextMenu/ContextMenu.d.ts.map +1 -0
  22. package/{esm → dist}/contextMenu/Interaction.d.ts +4 -2
  23. package/dist/contextMenu/Interaction.d.ts.map +1 -0
  24. package/dist/contextMenu/index.d.ts +3 -0
  25. package/dist/contextMenu/index.d.ts.map +1 -0
  26. package/dist/history/history.d.ts.map +1 -0
  27. package/dist/history/index.d.ts +2 -0
  28. package/dist/history/index.d.ts.map +1 -0
  29. package/dist/index.d.ts +5 -0
  30. package/dist/index.d.ts.map +1 -0
  31. package/dist/index.js +14663 -0
  32. package/dist/index.js.map +1 -0
  33. package/{esm → dist}/loader/Interaction.d.ts +1 -1
  34. package/dist/loader/Interaction.d.ts.map +1 -0
  35. package/dist/loader/Loader.d.ts.map +1 -0
  36. package/dist/loader/index.d.ts +3 -0
  37. package/dist/loader/index.d.ts.map +1 -0
  38. package/{lib → dist}/manager/ContextMenu.d.ts +2 -2
  39. package/dist/manager/ContextMenu.d.ts.map +1 -0
  40. package/{esm → dist}/manager/FlipCommand.d.ts +3 -3
  41. package/dist/manager/FlipCommand.d.ts.map +1 -0
  42. package/{esm → dist}/manager/KeyEvent.d.ts +2 -2
  43. package/dist/manager/KeyEvent.d.ts.map +1 -0
  44. package/{esm → dist}/manager/OrderCommand.d.ts +2 -2
  45. package/dist/manager/OrderCommand.d.ts.map +1 -0
  46. package/{lib → dist}/manager/PointerEvent.d.ts +7 -7
  47. package/dist/manager/PointerEvent.d.ts.map +1 -0
  48. package/{esm → dist}/manager/SceneCommand.d.ts +3 -3
  49. package/dist/manager/SceneCommand.d.ts.map +1 -0
  50. package/{esm → dist}/manager/Selection.d.ts +8 -8
  51. package/dist/manager/Selection.d.ts.map +1 -0
  52. package/{esm → dist}/manager/TransformCommand.d.ts +2 -2
  53. package/dist/manager/TransformCommand.d.ts.map +1 -0
  54. package/dist/manager/index.d.ts +9 -0
  55. package/dist/manager/index.d.ts.map +1 -0
  56. package/dist/serializer/index.d.ts +3 -0
  57. package/dist/serializer/index.d.ts.map +1 -0
  58. package/dist/serializer/schema.d.ts +26 -0
  59. package/dist/serializer/schema.d.ts.map +1 -0
  60. package/{esm → dist}/serializer/serializer.d.ts +6 -4
  61. package/dist/serializer/serializer.d.ts.map +1 -0
  62. package/dist/shaders/grid.d.ts.map +1 -0
  63. package/dist/shaders/img.d.ts.map +1 -0
  64. package/dist/shaders/index.d.ts +4 -0
  65. package/dist/shaders/index.d.ts.map +1 -0
  66. package/dist/shaders/shape.d.ts.map +1 -0
  67. package/{esm → dist}/shapes/Grid.d.ts +1 -1
  68. package/dist/shapes/Grid.d.ts.map +1 -0
  69. package/{esm → dist}/shapes/Img.d.ts +2 -2
  70. package/dist/shapes/Img.d.ts.map +1 -0
  71. package/{esm → dist}/shapes/Rect.d.ts +6 -2
  72. package/dist/shapes/Rect.d.ts.map +1 -0
  73. package/{lib → dist}/shapes/Renderable.d.ts +6 -3
  74. package/dist/shapes/Renderable.d.ts.map +1 -0
  75. package/{esm → dist}/shapes/Shape.d.ts +2 -2
  76. package/dist/shapes/Shape.d.ts.map +1 -0
  77. package/{lib → dist}/shapes/Triangle.d.ts +2 -2
  78. package/dist/shapes/Triangle.d.ts.map +1 -0
  79. package/dist/shapes/index.d.ts +6 -0
  80. package/dist/shapes/index.d.ts.map +1 -0
  81. package/dist/state/camera.d.ts.map +1 -0
  82. package/dist/state/index.d.ts +4 -0
  83. package/dist/state/index.d.ts.map +1 -0
  84. package/{esm → dist}/state/pointerEvent.d.ts +3 -3
  85. package/dist/state/pointerEvent.d.ts.map +1 -0
  86. package/{esm → dist}/state/renderable.d.ts +1 -1
  87. package/dist/state/renderable.d.ts.map +1 -0
  88. package/{lib → dist}/storage/defaultStorage.d.ts +9 -2
  89. package/dist/storage/defaultStorage.d.ts.map +1 -0
  90. package/dist/storage/dexie-primary-key.d.ts.map +1 -0
  91. package/dist/storage/index.d.ts +3 -0
  92. package/dist/storage/index.d.ts.map +1 -0
  93. package/{esm → dist}/storage/storage.d.ts +3 -1
  94. package/dist/storage/storage.d.ts.map +1 -0
  95. package/{lib → dist}/util/camera/camera.d.ts +1 -1
  96. package/dist/util/camera/camera.d.ts.map +1 -0
  97. package/dist/util/camera/index.d.ts +2 -0
  98. package/dist/util/camera/index.d.ts.map +1 -0
  99. package/dist/util/checks.d.ts.map +1 -0
  100. package/{esm → dist}/util/clipboard.d.ts +3 -3
  101. package/dist/util/clipboard.d.ts.map +1 -0
  102. package/dist/util/color.d.ts.map +1 -0
  103. package/dist/util/customEventType.d.ts.map +1 -0
  104. package/{esm → dist}/util/files.d.ts +2 -3
  105. package/dist/util/files.d.ts.map +1 -0
  106. package/dist/util/handles.d.ts.map +1 -0
  107. package/dist/util/index.d.ts +11 -0
  108. package/dist/util/index.d.ts.map +1 -0
  109. package/dist/util/performance.d.ts.map +1 -0
  110. package/dist/util/shaders.d.ts.map +1 -0
  111. package/dist/util/webgl/index.d.ts +3 -0
  112. package/dist/util/webgl/index.d.ts.map +1 -0
  113. package/dist/util/webgl/m3.d.ts.map +1 -0
  114. package/dist/util/webgl/uniform.d.ts.map +1 -0
  115. package/package.json +9 -18
  116. package/dist/assets/index-BQWdMz7U.js +0 -292
  117. package/dist/index.html +0 -209
  118. package/esm/API.d.ts.map +0 -1
  119. package/esm/API.js +0 -74
  120. package/esm/API.js.map +0 -1
  121. package/esm/Canvas.d.ts +0 -69
  122. package/esm/Canvas.d.ts.map +0 -1
  123. package/esm/Canvas.js +0 -372
  124. package/esm/Canvas.js.map +0 -1
  125. package/esm/Component.d.ts.map +0 -1
  126. package/esm/Component.js +0 -622
  127. package/esm/Component.js.map +0 -1
  128. package/esm/bounding/AABB.d.ts.map +0 -1
  129. package/esm/bounding/AABB.js +0 -19
  130. package/esm/bounding/AABB.js.map +0 -1
  131. package/esm/bounding/BoundingBox.d.ts +0 -53
  132. package/esm/bounding/BoundingBox.d.ts.map +0 -1
  133. package/esm/bounding/BoundingBox.js +0 -300
  134. package/esm/bounding/BoundingBox.js.map +0 -1
  135. package/esm/bounding/Marquee.d.ts +0 -28
  136. package/esm/bounding/Marquee.d.ts.map +0 -1
  137. package/esm/bounding/Marquee.js +0 -111
  138. package/esm/bounding/Marquee.js.map +0 -1
  139. package/esm/bounding/MultiBoundingBox.d.ts.map +0 -1
  140. package/esm/bounding/MultiBoundingBox.js +0 -376
  141. package/esm/bounding/MultiBoundingBox.js.map +0 -1
  142. package/esm/bounding/index.d.ts +0 -6
  143. package/esm/bounding/index.d.ts.map +0 -1
  144. package/esm/bounding/index.js +0 -6
  145. package/esm/bounding/index.js.map +0 -1
  146. package/esm/bounding/type.d.ts.map +0 -1
  147. package/esm/bounding/type.js +0 -6
  148. package/esm/bounding/type.js.map +0 -1
  149. package/esm/camera/Camera.d.ts +0 -29
  150. package/esm/camera/Camera.d.ts.map +0 -1
  151. package/esm/camera/Camera.js +0 -71
  152. package/esm/camera/Camera.js.map +0 -1
  153. package/esm/camera/index.d.ts +0 -2
  154. package/esm/camera/index.d.ts.map +0 -1
  155. package/esm/camera/index.js +0 -2
  156. package/esm/camera/index.js.map +0 -1
  157. package/esm/contextMenu/ContextMenu.d.ts.map +0 -1
  158. package/esm/contextMenu/ContextMenu.js +0 -118
  159. package/esm/contextMenu/ContextMenu.js.map +0 -1
  160. package/esm/contextMenu/Interaction.d.ts.map +0 -1
  161. package/esm/contextMenu/Interaction.js +0 -256
  162. package/esm/contextMenu/Interaction.js.map +0 -1
  163. package/esm/contextMenu/index.d.ts +0 -3
  164. package/esm/contextMenu/index.d.ts.map +0 -1
  165. package/esm/contextMenu/index.js +0 -3
  166. package/esm/contextMenu/index.js.map +0 -1
  167. package/esm/history/history.d.ts.map +0 -1
  168. package/esm/history/history.js +0 -120
  169. package/esm/history/history.js.map +0 -1
  170. package/esm/history/index.d.ts +0 -2
  171. package/esm/history/index.d.ts.map +0 -1
  172. package/esm/history/index.js +0 -2
  173. package/esm/history/index.js.map +0 -1
  174. package/esm/index.d.ts +0 -5
  175. package/esm/index.d.ts.map +0 -1
  176. package/esm/index.js +0 -5
  177. package/esm/index.js.map +0 -1
  178. package/esm/loader/Interaction.d.ts.map +0 -1
  179. package/esm/loader/Interaction.js +0 -17
  180. package/esm/loader/Interaction.js.map +0 -1
  181. package/esm/loader/Loader.d.ts.map +0 -1
  182. package/esm/loader/Loader.js +0 -49
  183. package/esm/loader/Loader.js.map +0 -1
  184. package/esm/loader/index.d.ts +0 -3
  185. package/esm/loader/index.d.ts.map +0 -1
  186. package/esm/loader/index.js +0 -3
  187. package/esm/loader/index.js.map +0 -1
  188. package/esm/manager/ContextMenu.d.ts +0 -11
  189. package/esm/manager/ContextMenu.d.ts.map +0 -1
  190. package/esm/manager/ContextMenu.js +0 -33
  191. package/esm/manager/ContextMenu.js.map +0 -1
  192. package/esm/manager/FlipCommand.d.ts.map +0 -1
  193. package/esm/manager/FlipCommand.js +0 -35
  194. package/esm/manager/FlipCommand.js.map +0 -1
  195. package/esm/manager/KeyEvent.d.ts.map +0 -1
  196. package/esm/manager/KeyEvent.js +0 -51
  197. package/esm/manager/KeyEvent.js.map +0 -1
  198. package/esm/manager/OrderCommand.d.ts.map +0 -1
  199. package/esm/manager/OrderCommand.js +0 -28
  200. package/esm/manager/OrderCommand.js.map +0 -1
  201. package/esm/manager/PointerEvent.d.ts +0 -70
  202. package/esm/manager/PointerEvent.d.ts.map +0 -1
  203. package/esm/manager/PointerEvent.js +0 -169
  204. package/esm/manager/PointerEvent.js.map +0 -1
  205. package/esm/manager/SceneCommand.d.ts.map +0 -1
  206. package/esm/manager/SceneCommand.js +0 -85
  207. package/esm/manager/SceneCommand.js.map +0 -1
  208. package/esm/manager/Selection.d.ts.map +0 -1
  209. package/esm/manager/Selection.js +0 -299
  210. package/esm/manager/Selection.js.map +0 -1
  211. package/esm/manager/TransformCommand.d.ts.map +0 -1
  212. package/esm/manager/TransformCommand.js +0 -29
  213. package/esm/manager/TransformCommand.js.map +0 -1
  214. package/esm/manager/index.d.ts +0 -9
  215. package/esm/manager/index.d.ts.map +0 -1
  216. package/esm/manager/index.js +0 -9
  217. package/esm/manager/index.js.map +0 -1
  218. package/esm/serializer/index.d.ts +0 -2
  219. package/esm/serializer/index.d.ts.map +0 -1
  220. package/esm/serializer/index.js +0 -2
  221. package/esm/serializer/index.js.map +0 -1
  222. package/esm/serializer/serializer.d.ts.map +0 -1
  223. package/esm/serializer/serializer.js +0 -231
  224. package/esm/serializer/serializer.js.map +0 -1
  225. package/esm/shaders/grid.d.ts.map +0 -1
  226. package/esm/shaders/grid.js +0 -89
  227. package/esm/shaders/grid.js.map +0 -1
  228. package/esm/shaders/img.d.ts.map +0 -1
  229. package/esm/shaders/img.js +0 -39
  230. package/esm/shaders/img.js.map +0 -1
  231. package/esm/shaders/index.d.ts +0 -4
  232. package/esm/shaders/index.d.ts.map +0 -1
  233. package/esm/shaders/index.js +0 -4
  234. package/esm/shaders/index.js.map +0 -1
  235. package/esm/shaders/shape.d.ts.map +0 -1
  236. package/esm/shaders/shape.js +0 -29
  237. package/esm/shaders/shape.js.map +0 -1
  238. package/esm/shapes/Grid.d.ts.map +0 -1
  239. package/esm/shapes/Grid.js +0 -84
  240. package/esm/shapes/Grid.js.map +0 -1
  241. package/esm/shapes/Img.d.ts.map +0 -1
  242. package/esm/shapes/Img.js +0 -313
  243. package/esm/shapes/Img.js.map +0 -1
  244. package/esm/shapes/Rect.d.ts.map +0 -1
  245. package/esm/shapes/Rect.js +0 -92
  246. package/esm/shapes/Rect.js.map +0 -1
  247. package/esm/shapes/Renderable.d.ts +0 -54
  248. package/esm/shapes/Renderable.d.ts.map +0 -1
  249. package/esm/shapes/Renderable.js +0 -141
  250. package/esm/shapes/Renderable.js.map +0 -1
  251. package/esm/shapes/Shape.d.ts.map +0 -1
  252. package/esm/shapes/Shape.js +0 -71
  253. package/esm/shapes/Shape.js.map +0 -1
  254. package/esm/shapes/Triangle.d.ts +0 -20
  255. package/esm/shapes/Triangle.d.ts.map +0 -1
  256. package/esm/shapes/Triangle.js +0 -82
  257. package/esm/shapes/Triangle.js.map +0 -1
  258. package/esm/shapes/index.d.ts +0 -6
  259. package/esm/shapes/index.d.ts.map +0 -1
  260. package/esm/shapes/index.js +0 -7
  261. package/esm/shapes/index.js.map +0 -1
  262. package/esm/state/camera.d.ts.map +0 -1
  263. package/esm/state/camera.js +0 -88
  264. package/esm/state/camera.js.map +0 -1
  265. package/esm/state/index.d.ts +0 -4
  266. package/esm/state/index.d.ts.map +0 -1
  267. package/esm/state/index.js +0 -4
  268. package/esm/state/index.js.map +0 -1
  269. package/esm/state/pointerEvent.d.ts.map +0 -1
  270. package/esm/state/pointerEvent.js +0 -49
  271. package/esm/state/pointerEvent.js.map +0 -1
  272. package/esm/state/renderable.d.ts.map +0 -1
  273. package/esm/state/renderable.js +0 -176
  274. package/esm/state/renderable.js.map +0 -1
  275. package/esm/storage/defaultStorage.d.ts +0 -34
  276. package/esm/storage/defaultStorage.d.ts.map +0 -1
  277. package/esm/storage/defaultStorage.js +0 -237
  278. package/esm/storage/defaultStorage.js.map +0 -1
  279. package/esm/storage/dexie-primary-key.d.ts.map +0 -1
  280. package/esm/storage/dexie-primary-key.js +0 -81
  281. package/esm/storage/dexie-primary-key.js.map +0 -1
  282. package/esm/storage/index.d.ts +0 -3
  283. package/esm/storage/index.d.ts.map +0 -1
  284. package/esm/storage/index.js +0 -3
  285. package/esm/storage/index.js.map +0 -1
  286. package/esm/storage/storage.d.ts.map +0 -1
  287. package/esm/storage/storage.js +0 -44
  288. package/esm/storage/storage.js.map +0 -1
  289. package/esm/util/camera/camera.d.ts +0 -19
  290. package/esm/util/camera/camera.d.ts.map +0 -1
  291. package/esm/util/camera/camera.js +0 -75
  292. package/esm/util/camera/camera.js.map +0 -1
  293. package/esm/util/camera/index.d.ts +0 -2
  294. package/esm/util/camera/index.d.ts.map +0 -1
  295. package/esm/util/camera/index.js +0 -2
  296. package/esm/util/camera/index.js.map +0 -1
  297. package/esm/util/checks.d.ts.map +0 -1
  298. package/esm/util/checks.js +0 -36
  299. package/esm/util/checks.js.map +0 -1
  300. package/esm/util/clipboard.d.ts.map +0 -1
  301. package/esm/util/clipboard.js +0 -146
  302. package/esm/util/clipboard.js.map +0 -1
  303. package/esm/util/color.d.ts.map +0 -1
  304. package/esm/util/color.js +0 -8
  305. package/esm/util/color.js.map +0 -1
  306. package/esm/util/customEventType.d.ts.map +0 -1
  307. package/esm/util/customEventType.js +0 -35
  308. package/esm/util/customEventType.js.map +0 -1
  309. package/esm/util/files.d.ts.map +0 -1
  310. package/esm/util/files.js +0 -182
  311. package/esm/util/files.js.map +0 -1
  312. package/esm/util/handles.d.ts.map +0 -1
  313. package/esm/util/handles.js +0 -16
  314. package/esm/util/handles.js.map +0 -1
  315. package/esm/util/index.d.ts +0 -11
  316. package/esm/util/index.d.ts.map +0 -1
  317. package/esm/util/index.js +0 -11
  318. package/esm/util/index.js.map +0 -1
  319. package/esm/util/performance.d.ts.map +0 -1
  320. package/esm/util/performance.js +0 -7
  321. package/esm/util/performance.js.map +0 -1
  322. package/esm/util/shaders.d.ts.map +0 -1
  323. package/esm/util/shaders.js +0 -30
  324. package/esm/util/shaders.js.map +0 -1
  325. package/esm/util/webgl/index.d.ts +0 -3
  326. package/esm/util/webgl/index.d.ts.map +0 -1
  327. package/esm/util/webgl/index.js +0 -3
  328. package/esm/util/webgl/index.js.map +0 -1
  329. package/esm/util/webgl/m3.d.ts.map +0 -1
  330. package/esm/util/webgl/m3.js +0 -98
  331. package/esm/util/webgl/m3.js.map +0 -1
  332. package/esm/util/webgl/uniform.d.ts.map +0 -1
  333. package/esm/util/webgl/uniform.js +0 -18
  334. package/esm/util/webgl/uniform.js.map +0 -1
  335. package/lib/API.d.ts +0 -21
  336. package/lib/API.d.ts.map +0 -1
  337. package/lib/API.js +0 -78
  338. package/lib/API.js.map +0 -1
  339. package/lib/Canvas.d.ts.map +0 -1
  340. package/lib/Canvas.js +0 -376
  341. package/lib/Canvas.js.map +0 -1
  342. package/lib/Component.d.ts +0 -128
  343. package/lib/Component.d.ts.map +0 -1
  344. package/lib/Component.js +0 -628
  345. package/lib/Component.js.map +0 -1
  346. package/lib/bounding/AABB.d.ts +0 -10
  347. package/lib/bounding/AABB.d.ts.map +0 -1
  348. package/lib/bounding/AABB.js +0 -23
  349. package/lib/bounding/AABB.js.map +0 -1
  350. package/lib/bounding/BoundingBox.d.ts.map +0 -1
  351. package/lib/bounding/BoundingBox.js +0 -304
  352. package/lib/bounding/BoundingBox.js.map +0 -1
  353. package/lib/bounding/Marquee.d.ts.map +0 -1
  354. package/lib/bounding/Marquee.js +0 -115
  355. package/lib/bounding/Marquee.js.map +0 -1
  356. package/lib/bounding/MultiBoundingBox.d.ts +0 -33
  357. package/lib/bounding/MultiBoundingBox.d.ts.map +0 -1
  358. package/lib/bounding/MultiBoundingBox.js +0 -380
  359. package/lib/bounding/MultiBoundingBox.js.map +0 -1
  360. package/lib/bounding/index.d.ts +0 -6
  361. package/lib/bounding/index.d.ts.map +0 -1
  362. package/lib/bounding/index.js +0 -22
  363. package/lib/bounding/index.js.map +0 -1
  364. package/lib/bounding/type.d.ts +0 -13
  365. package/lib/bounding/type.d.ts.map +0 -1
  366. package/lib/bounding/type.js +0 -9
  367. package/lib/bounding/type.js.map +0 -1
  368. package/lib/camera/Camera.d.ts.map +0 -1
  369. package/lib/camera/Camera.js +0 -75
  370. package/lib/camera/Camera.js.map +0 -1
  371. package/lib/camera/index.d.ts +0 -2
  372. package/lib/camera/index.d.ts.map +0 -1
  373. package/lib/camera/index.js +0 -18
  374. package/lib/camera/index.js.map +0 -1
  375. package/lib/contextMenu/ContextMenu.d.ts +0 -57
  376. package/lib/contextMenu/ContextMenu.d.ts.map +0 -1
  377. package/lib/contextMenu/ContextMenu.js +0 -124
  378. package/lib/contextMenu/ContextMenu.js.map +0 -1
  379. package/lib/contextMenu/Interaction.d.ts +0 -22
  380. package/lib/contextMenu/Interaction.d.ts.map +0 -1
  381. package/lib/contextMenu/Interaction.js +0 -265
  382. package/lib/contextMenu/Interaction.js.map +0 -1
  383. package/lib/contextMenu/index.d.ts +0 -3
  384. package/lib/contextMenu/index.d.ts.map +0 -1
  385. package/lib/contextMenu/index.js +0 -19
  386. package/lib/contextMenu/index.js.map +0 -1
  387. package/lib/history/history.d.ts +0 -29
  388. package/lib/history/history.d.ts.map +0 -1
  389. package/lib/history/history.js +0 -127
  390. package/lib/history/history.js.map +0 -1
  391. package/lib/history/index.d.ts +0 -2
  392. package/lib/history/index.d.ts.map +0 -1
  393. package/lib/history/index.js +0 -18
  394. package/lib/history/index.js.map +0 -1
  395. package/lib/index.d.ts +0 -5
  396. package/lib/index.d.ts.map +0 -1
  397. package/lib/index.js +0 -21
  398. package/lib/index.js.map +0 -1
  399. package/lib/loader/Interaction.d.ts +0 -4
  400. package/lib/loader/Interaction.d.ts.map +0 -1
  401. package/lib/loader/Interaction.js +0 -21
  402. package/lib/loader/Interaction.js.map +0 -1
  403. package/lib/loader/Loader.d.ts +0 -19
  404. package/lib/loader/Loader.d.ts.map +0 -1
  405. package/lib/loader/Loader.js +0 -53
  406. package/lib/loader/Loader.js.map +0 -1
  407. package/lib/loader/index.d.ts +0 -3
  408. package/lib/loader/index.d.ts.map +0 -1
  409. package/lib/loader/index.js +0 -19
  410. package/lib/loader/index.js.map +0 -1
  411. package/lib/manager/ContextMenu.d.ts.map +0 -1
  412. package/lib/manager/ContextMenu.js +0 -37
  413. package/lib/manager/ContextMenu.js.map +0 -1
  414. package/lib/manager/FlipCommand.d.ts +0 -18
  415. package/lib/manager/FlipCommand.d.ts.map +0 -1
  416. package/lib/manager/FlipCommand.js +0 -39
  417. package/lib/manager/FlipCommand.js.map +0 -1
  418. package/lib/manager/KeyEvent.d.ts +0 -16
  419. package/lib/manager/KeyEvent.d.ts.map +0 -1
  420. package/lib/manager/KeyEvent.js +0 -55
  421. package/lib/manager/KeyEvent.js.map +0 -1
  422. package/lib/manager/OrderCommand.d.ts +0 -17
  423. package/lib/manager/OrderCommand.d.ts.map +0 -1
  424. package/lib/manager/OrderCommand.js +0 -32
  425. package/lib/manager/OrderCommand.js.map +0 -1
  426. package/lib/manager/PointerEvent.d.ts.map +0 -1
  427. package/lib/manager/PointerEvent.js +0 -173
  428. package/lib/manager/PointerEvent.js.map +0 -1
  429. package/lib/manager/SceneCommand.d.ts +0 -18
  430. package/lib/manager/SceneCommand.d.ts.map +0 -1
  431. package/lib/manager/SceneCommand.js +0 -91
  432. package/lib/manager/SceneCommand.js.map +0 -1
  433. package/lib/manager/Selection.d.ts +0 -62
  434. package/lib/manager/Selection.d.ts.map +0 -1
  435. package/lib/manager/Selection.js +0 -303
  436. package/lib/manager/Selection.js.map +0 -1
  437. package/lib/manager/TransformCommand.d.ts +0 -20
  438. package/lib/manager/TransformCommand.d.ts.map +0 -1
  439. package/lib/manager/TransformCommand.js +0 -33
  440. package/lib/manager/TransformCommand.js.map +0 -1
  441. package/lib/manager/index.d.ts +0 -9
  442. package/lib/manager/index.d.ts.map +0 -1
  443. package/lib/manager/index.js +0 -25
  444. package/lib/manager/index.js.map +0 -1
  445. package/lib/serializer/index.d.ts +0 -2
  446. package/lib/serializer/index.d.ts.map +0 -1
  447. package/lib/serializer/index.js +0 -18
  448. package/lib/serializer/index.js.map +0 -1
  449. package/lib/serializer/serializer.d.ts +0 -54
  450. package/lib/serializer/serializer.d.ts.map +0 -1
  451. package/lib/serializer/serializer.js +0 -236
  452. package/lib/serializer/serializer.js.map +0 -1
  453. package/lib/shaders/grid.d.ts +0 -3
  454. package/lib/shaders/grid.d.ts.map +0 -1
  455. package/lib/shaders/grid.js +0 -92
  456. package/lib/shaders/grid.js.map +0 -1
  457. package/lib/shaders/img.d.ts +0 -4
  458. package/lib/shaders/img.d.ts.map +0 -1
  459. package/lib/shaders/img.js +0 -43
  460. package/lib/shaders/img.js.map +0 -1
  461. package/lib/shaders/index.d.ts +0 -4
  462. package/lib/shaders/index.d.ts.map +0 -1
  463. package/lib/shaders/index.js +0 -20
  464. package/lib/shaders/index.js.map +0 -1
  465. package/lib/shaders/shape.d.ts +0 -4
  466. package/lib/shaders/shape.d.ts.map +0 -1
  467. package/lib/shaders/shape.js +0 -33
  468. package/lib/shaders/shape.js.map +0 -1
  469. package/lib/shapes/Grid.d.ts +0 -21
  470. package/lib/shapes/Grid.d.ts.map +0 -1
  471. package/lib/shapes/Grid.js +0 -88
  472. package/lib/shapes/Grid.js.map +0 -1
  473. package/lib/shapes/Img.d.ts +0 -47
  474. package/lib/shapes/Img.d.ts.map +0 -1
  475. package/lib/shapes/Img.js +0 -317
  476. package/lib/shapes/Img.js.map +0 -1
  477. package/lib/shapes/Rect.d.ts +0 -34
  478. package/lib/shapes/Rect.d.ts.map +0 -1
  479. package/lib/shapes/Rect.js +0 -96
  480. package/lib/shapes/Rect.js.map +0 -1
  481. package/lib/shapes/Renderable.d.ts.map +0 -1
  482. package/lib/shapes/Renderable.js +0 -146
  483. package/lib/shapes/Renderable.js.map +0 -1
  484. package/lib/shapes/Shape.d.ts +0 -27
  485. package/lib/shapes/Shape.d.ts.map +0 -1
  486. package/lib/shapes/Shape.js +0 -75
  487. package/lib/shapes/Shape.js.map +0 -1
  488. package/lib/shapes/Triangle.d.ts.map +0 -1
  489. package/lib/shapes/Triangle.js +0 -86
  490. package/lib/shapes/Triangle.js.map +0 -1
  491. package/lib/shapes/index.d.ts +0 -6
  492. package/lib/shapes/index.d.ts.map +0 -1
  493. package/lib/shapes/index.js +0 -23
  494. package/lib/shapes/index.js.map +0 -1
  495. package/lib/state/camera.d.ts +0 -36
  496. package/lib/state/camera.d.ts.map +0 -1
  497. package/lib/state/camera.js +0 -92
  498. package/lib/state/camera.js.map +0 -1
  499. package/lib/state/index.d.ts +0 -4
  500. package/lib/state/index.d.ts.map +0 -1
  501. package/lib/state/index.js +0 -20
  502. package/lib/state/index.js.map +0 -1
  503. package/lib/state/pointerEvent.d.ts +0 -23
  504. package/lib/state/pointerEvent.d.ts.map +0 -1
  505. package/lib/state/pointerEvent.js +0 -53
  506. package/lib/state/pointerEvent.js.map +0 -1
  507. package/lib/state/renderable.d.ts +0 -36
  508. package/lib/state/renderable.d.ts.map +0 -1
  509. package/lib/state/renderable.js +0 -180
  510. package/lib/state/renderable.js.map +0 -1
  511. package/lib/storage/defaultStorage.d.ts.map +0 -1
  512. package/lib/storage/defaultStorage.js +0 -246
  513. package/lib/storage/defaultStorage.js.map +0 -1
  514. package/lib/storage/dexie-primary-key.d.ts +0 -2
  515. package/lib/storage/dexie-primary-key.d.ts.map +0 -1
  516. package/lib/storage/dexie-primary-key.js +0 -86
  517. package/lib/storage/dexie-primary-key.js.map +0 -1
  518. package/lib/storage/index.d.ts +0 -3
  519. package/lib/storage/index.d.ts.map +0 -1
  520. package/lib/storage/index.js +0 -19
  521. package/lib/storage/index.js.map +0 -1
  522. package/lib/storage/storage.d.ts +0 -36
  523. package/lib/storage/storage.d.ts.map +0 -1
  524. package/lib/storage/storage.js +0 -50
  525. package/lib/storage/storage.js.map +0 -1
  526. package/lib/util/camera/camera.d.ts.map +0 -1
  527. package/lib/util/camera/camera.js +0 -87
  528. package/lib/util/camera/camera.js.map +0 -1
  529. package/lib/util/camera/index.d.ts +0 -2
  530. package/lib/util/camera/index.d.ts.map +0 -1
  531. package/lib/util/camera/index.js +0 -18
  532. package/lib/util/camera/index.js.map +0 -1
  533. package/lib/util/checks.d.ts +0 -11
  534. package/lib/util/checks.d.ts.map +0 -1
  535. package/lib/util/checks.js +0 -49
  536. package/lib/util/checks.js.map +0 -1
  537. package/lib/util/clipboard.d.ts +0 -7
  538. package/lib/util/clipboard.d.ts.map +0 -1
  539. package/lib/util/clipboard.js +0 -152
  540. package/lib/util/clipboard.js.map +0 -1
  541. package/lib/util/color.d.ts +0 -4
  542. package/lib/util/color.d.ts.map +0 -1
  543. package/lib/util/color.js +0 -11
  544. package/lib/util/color.js.map +0 -1
  545. package/lib/util/customEventType.d.ts +0 -35
  546. package/lib/util/customEventType.d.ts.map +0 -1
  547. package/lib/util/customEventType.js +0 -38
  548. package/lib/util/customEventType.js.map +0 -1
  549. package/lib/util/files.d.ts +0 -19
  550. package/lib/util/files.d.ts.map +0 -1
  551. package/lib/util/files.js +0 -193
  552. package/lib/util/files.js.map +0 -1
  553. package/lib/util/handles.d.ts +0 -10
  554. package/lib/util/handles.d.ts.map +0 -1
  555. package/lib/util/handles.js +0 -20
  556. package/lib/util/handles.js.map +0 -1
  557. package/lib/util/index.d.ts +0 -11
  558. package/lib/util/index.d.ts.map +0 -1
  559. package/lib/util/index.js +0 -27
  560. package/lib/util/index.js.map +0 -1
  561. package/lib/util/performance.d.ts +0 -2
  562. package/lib/util/performance.d.ts.map +0 -1
  563. package/lib/util/performance.js +0 -10
  564. package/lib/util/performance.js.map +0 -1
  565. package/lib/util/shaders.d.ts +0 -2
  566. package/lib/util/shaders.d.ts.map +0 -1
  567. package/lib/util/shaders.js +0 -33
  568. package/lib/util/shaders.js.map +0 -1
  569. package/lib/util/webgl/index.d.ts +0 -3
  570. package/lib/util/webgl/index.d.ts.map +0 -1
  571. package/lib/util/webgl/index.js +0 -19
  572. package/lib/util/webgl/index.js.map +0 -1
  573. package/lib/util/webgl/m3.d.ts +0 -11
  574. package/lib/util/webgl/m3.d.ts.map +0 -1
  575. package/lib/util/webgl/m3.js +0 -101
  576. package/lib/util/webgl/m3.js.map +0 -1
  577. package/lib/util/webgl/uniform.d.ts +0 -5
  578. package/lib/util/webgl/uniform.d.ts.map +0 -1
  579. package/lib/util/webgl/uniform.js +0 -21
  580. package/lib/util/webgl/uniform.js.map +0 -1
  581. /package/{esm → dist}/bounding/AABB.d.ts +0 -0
  582. /package/{esm → dist}/bounding/type.d.ts +0 -0
  583. /package/{esm → dist}/contextMenu/ContextMenu.d.ts +0 -0
  584. /package/{esm → dist}/history/history.d.ts +0 -0
  585. /package/{esm → dist}/loader/Loader.d.ts +0 -0
  586. /package/{esm → dist}/shaders/grid.d.ts +0 -0
  587. /package/{esm → dist}/shaders/img.d.ts +0 -0
  588. /package/{esm → dist}/shaders/shape.d.ts +0 -0
  589. /package/{esm → dist}/state/camera.d.ts +0 -0
  590. /package/{esm → dist}/storage/dexie-primary-key.d.ts +0 -0
  591. /package/{esm → dist}/util/checks.d.ts +0 -0
  592. /package/{esm → dist}/util/color.d.ts +0 -0
  593. /package/{esm → dist}/util/customEventType.d.ts +0 -0
  594. /package/{esm → dist}/util/handles.d.ts +0 -0
  595. /package/{esm → dist}/util/performance.d.ts +0 -0
  596. /package/{esm → dist}/util/shaders.d.ts +0 -0
  597. /package/{esm → dist}/util/webgl/m3.d.ts +0 -0
  598. /package/{esm → dist}/util/webgl/uniform.d.ts +0 -0
@@ -1,53 +0,0 @@
1
- import { BoundingBoxCollisionType } from "../util";
2
- import { Rect } from "../shapes/Rect";
3
- import { Shape } from "../shapes/Shape";
4
- import { BoundingBoxMode } from "./type";
5
- import { FlipDirection } from "../manager";
6
- export declare class BoundingBox {
7
- target: Shape;
8
- width: number;
9
- height: number;
10
- sides: Map<string, Rect>;
11
- corners: Map<string, Rect>;
12
- borderSize: number;
13
- boxSize: number;
14
- mode: BoundingBoxMode;
15
- constructor(target: Shape, mode?: BoundingBoxMode);
16
- private setDimension;
17
- private getSidesInScreenSpace;
18
- private getCornersInScreenSpace;
19
- setPassive(): void;
20
- setActive(): void;
21
- getPositions(): number[];
22
- /**
23
- * x and y should be world position
24
- */
25
- hitTest(wx: number, wy: number, worldMatrix: number[]): BoundingBoxCollisionType | null;
26
- update(): void;
27
- render(gl: WebGLRenderingContext, program: WebGLProgram): void;
28
- destroy(): void;
29
- move(dx: number, dy: number): void;
30
- resize(dx: number, dy: number, direction: BoundingBoxCollisionType): void;
31
- reset(): void;
32
- flip(direction: FlipDirection): {
33
- ref: Shape;
34
- start: {
35
- x: number;
36
- y: number;
37
- sx: number;
38
- sy: number;
39
- };
40
- end: {
41
- x: number;
42
- y: number;
43
- sx: number;
44
- sy: number;
45
- };
46
- };
47
- private addCorners;
48
- private removeCorners;
49
- private updateCorners;
50
- private addSides;
51
- private updateSides;
52
- }
53
- //# sourceMappingURL=BoundingBox.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BoundingBox.d.ts","sourceRoot":"src/","sources":["bounding/BoundingBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,wBAAwB,EAMzB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG3C,qBAAa,WAAW;IACtB,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAa;IACrC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAa;IACvC,UAAU,EAAE,MAAM,CAAK;IACvB,OAAO,EAAE,MAAM,CAAK;IACpB,IAAI,EAAE,eAAe,CAA0B;gBAEnC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,eAAe;IAcjD,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,qBAAqB;IAkC7B,OAAO,CAAC,uBAAuB;IAkC/B,UAAU;IAKV,SAAS;IAKT,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,OAAO,CACL,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,MAAM,EAAE,GACpB,wBAAwB,GAAG,IAAI;IAsDlC,MAAM;IAKN,MAAM,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAY9D,OAAO;IAUP,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAI3B,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,wBAAwB;IAgFlE,KAAK;IAIL,IAAI,CAAC,SAAS,EAAE,aAAa;;;;;;;;;;;;;;;IAkB7B,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,QAAQ;IAUhB,OAAO,CAAC,WAAW;CAepB"}
@@ -1,300 +0,0 @@
1
- import { BASE_BLUE, LIGHT_BLUE, BORDERPX, HANDLEPX, corners, sides, applyMatrixToPoint, getScalesFromMatrix, isScalePositive, normalizeSign, willFlip, } from "../util";
2
- import { Rect } from "../shapes/Rect";
3
- import { BoundingBoxMode } from "./type";
4
- // different from multi bounding box, the corners and handles are separated here because they need to be individually toggled
5
- export class BoundingBox {
6
- constructor(target, mode) {
7
- this.sides = new Map();
8
- this.corners = new Map();
9
- this.borderSize = 0;
10
- this.boxSize = 0;
11
- this.mode = BoundingBoxMode.ACTIVE;
12
- this.target = target;
13
- this.setDimension();
14
- this.mode = mode ?? BoundingBoxMode.ACTIVE;
15
- this.borderSize = BORDERPX;
16
- this.boxSize = HANDLEPX / 2;
17
- this.addSides();
18
- if (this.mode === BoundingBoxMode.ACTIVE) {
19
- this.addCorners();
20
- }
21
- }
22
- setDimension() {
23
- const edge = this.target.getEdge();
24
- this.width = edge.maxX - edge.minX;
25
- this.height = edge.maxY - edge.minY;
26
- }
27
- getSidesInScreenSpace(type, matrix) {
28
- const [scaleX, scaleY] = matrix ? getScalesFromMatrix(matrix) : [1, 1];
29
- const { width, height, borderSize } = this;
30
- const [x, y] = applyMatrixToPoint(matrix);
31
- const [signX, signY] = isScalePositive(matrix);
32
- return {
33
- TOP: {
34
- x: signX > 0 ? x : x - width * scaleX,
35
- y,
36
- width: width * scaleX,
37
- height: borderSize,
38
- },
39
- BOTTOM: {
40
- x: signX > 0 ? x : x - width * scaleX,
41
- y: y + height * scaleY * signY,
42
- width: width * scaleX,
43
- height: borderSize,
44
- },
45
- LEFT: {
46
- x,
47
- y: signY > 0 ? y : y - height * scaleY,
48
- width: borderSize,
49
- height: height * scaleY,
50
- },
51
- RIGHT: {
52
- x: x + width * scaleX * signX,
53
- y: signY > 0 ? y : y - height * scaleY,
54
- width: borderSize,
55
- height: height * scaleY,
56
- },
57
- }[type];
58
- }
59
- getCornersInScreenSpace(type, matrix) {
60
- const [scaleX, scaleY] = matrix ? getScalesFromMatrix(matrix) : [1, 1];
61
- const { width, height, boxSize } = this;
62
- const [x, y] = applyMatrixToPoint(matrix);
63
- const [signX, signY] = isScalePositive(matrix);
64
- return {
65
- TOPLEFT: {
66
- x: x - boxSize,
67
- y: y - boxSize,
68
- width: boxSize * 2,
69
- height: boxSize * 2,
70
- },
71
- TOPRIGHT: {
72
- x: x - boxSize + width * scaleX * signX,
73
- y: y - boxSize,
74
- width: boxSize * 2,
75
- height: boxSize * 2,
76
- },
77
- BOTTOMLEFT: {
78
- x: x - boxSize,
79
- y: y - boxSize + height * scaleY * signY,
80
- width: boxSize * 2,
81
- height: boxSize * 2,
82
- },
83
- BOTTOMRIGHT: {
84
- x: x - boxSize + width * scaleX * signX,
85
- y: y - boxSize + height * scaleY * signY,
86
- width: boxSize * 2,
87
- height: boxSize * 2,
88
- },
89
- }[type];
90
- }
91
- setPassive() {
92
- this.mode = BoundingBoxMode.PASSIVE;
93
- this.removeCorners();
94
- }
95
- setActive() {
96
- this.mode = BoundingBoxMode.ACTIVE;
97
- this.addCorners();
98
- }
99
- getPositions() {
100
- return this.target.getPositions();
101
- }
102
- /**
103
- * x and y should be world position
104
- */
105
- hitTest(wx, wy, worldMatrix) {
106
- if (this.mode === BoundingBoxMode.PASSIVE)
107
- return;
108
- const [scaleX, scaleY] = getScalesFromMatrix(this.target.worldMatrix);
109
- const [signX, signY] = isScalePositive(this.target.worldMatrix);
110
- // converted to screen space
111
- const [hx, hy] = applyMatrixToPoint(worldMatrix, wx, wy);
112
- // ths hit margin should be in screen size
113
- const HIT_MARGIN = 4;
114
- for (const type of corners) {
115
- const corner = this.getCornersInScreenSpace(type, this.target.worldMatrix);
116
- if (hx >= corner.x - HIT_MARGIN &&
117
- hx <= corner.x + corner.width + HIT_MARGIN &&
118
- hy >= corner.y - HIT_MARGIN &&
119
- hy <= corner.y + corner.height + HIT_MARGIN) {
120
- return type;
121
- }
122
- }
123
- for (const type of sides) {
124
- const side = this.getSidesInScreenSpace(type, this.target.worldMatrix);
125
- if (hx >= side.x - HIT_MARGIN &&
126
- hx <= side.x + side.width + HIT_MARGIN &&
127
- hy >= side.y - HIT_MARGIN &&
128
- hy <= side.y + side.height + HIT_MARGIN) {
129
- return type;
130
- }
131
- }
132
- const [x, y] = applyMatrixToPoint(this.target.worldMatrix);
133
- const w = this.width * scaleX * signX;
134
- const h = this.height * scaleY * signY;
135
- const minX = Math.min(x, x + w);
136
- const maxX = Math.max(x, x + w);
137
- const minY = Math.min(y, y + h);
138
- const maxY = Math.max(y, y + h);
139
- if (hx >= minX && hx <= maxX && hy >= minY && hy <= maxY) {
140
- return "CENTER";
141
- }
142
- }
143
- update() {
144
- this.updateSides();
145
- this.updateCorners();
146
- }
147
- render(gl, program) {
148
- this.update();
149
- for (const [key, handle] of this.sides.entries()) {
150
- handle.render(gl, program);
151
- }
152
- for (const [key, corner] of this.corners.entries()) {
153
- corner.render(gl, program);
154
- }
155
- }
156
- destroy() {
157
- for (const [_, handle] of this.sides.entries()) {
158
- handle.destroy();
159
- }
160
- for (const [key, corner] of this.corners.entries()) {
161
- corner.destroy();
162
- }
163
- }
164
- move(dx, dy) {
165
- this.target.updateTranslation(dx, dy);
166
- }
167
- resize(dx, dy, direction) {
168
- if (this.target instanceof Rect) {
169
- const baseW = Math.abs(this.width);
170
- const baseH = Math.abs(this.height);
171
- const aspectRatio = baseW / baseH;
172
- // Use the shape's local scale (ignore camera/view)
173
- const curSX = this.target.sx;
174
- const curSY = this.target.sy;
175
- const EPS = 1e-6;
176
- // Current effective world sizes (clamped away from 0 to avoid division issue)
177
- const prevWorldW = Math.abs(baseW * curSX) < EPS
178
- ? EPS * normalizeSign(baseW * curSX || 1, EPS)
179
- : baseW * curSX;
180
- const prevWorldH = Math.abs(baseH * curSY) < EPS
181
- ? EPS * normalizeSign(baseH * curSY || 1, EPS)
182
- : baseH * curSY;
183
- const changeInXScale = dx / prevWorldW;
184
- const changeInYScale = dy / prevWorldH;
185
- const min = EPS;
186
- const factor = direction === "LEFT" ||
187
- direction === "BOTTOMLEFT" ||
188
- direction === "TOPLEFT"
189
- ? 1 - changeInXScale
190
- : direction === "RIGHT" ||
191
- direction === "BOTTOMRIGHT" ||
192
- direction === "TOPRIGHT"
193
- ? 1 + changeInXScale
194
- : direction === "TOP"
195
- ? 1 - changeInYScale
196
- : 1 + changeInYScale;
197
- if (willFlip(curSX, factor, min) || willFlip(curSY, factor, min))
198
- return;
199
- const nextW = baseW * curSX * factor;
200
- const nextH = baseH * curSY * factor;
201
- if (Math.abs(nextW) < min || Math.abs(nextH) < min)
202
- return;
203
- this.target.updateScale(factor, factor);
204
- if (direction === "LEFT") {
205
- const anchor = baseH * curSY;
206
- const newOrigin = baseH * this.target.sy;
207
- this.target.updateTranslation(dx, (anchor - newOrigin) / 2);
208
- }
209
- else if (direction === "RIGHT") {
210
- const anchor = baseH * curSY;
211
- const newOrigin = baseH * this.target.sy;
212
- this.target.updateTranslation(0, (anchor - newOrigin) / 2);
213
- }
214
- else if (direction === "TOP") {
215
- const anchor = baseW * curSX;
216
- const newOrigin = baseW * this.target.sx;
217
- this.target.updateTranslation((anchor - newOrigin) / 2, dy);
218
- }
219
- else if (direction === "BOTTOM") {
220
- const anchor = baseW * curSX;
221
- const newOrigin = baseW * this.target.sx;
222
- this.target.updateTranslation((anchor - newOrigin) / 2, 0);
223
- }
224
- else if (direction === "BOTTOMLEFT") {
225
- this.target.updateTranslation(dx, 0);
226
- }
227
- else if (direction === "TOPLEFT") {
228
- this.target.updateTranslation(dx, (dx / aspectRatio) * Math.sign(this.target.sx));
229
- }
230
- else if (direction === "TOPRIGHT") {
231
- this.target.updateTranslation(0, (-dx / aspectRatio) * Math.sign(this.target.sx));
232
- }
233
- }
234
- }
235
- // a reset method to reset the scale
236
- reset() {
237
- this.target.setScale(1, 1);
238
- }
239
- flip(direction) {
240
- const { x, y, sx, sy } = this.target;
241
- direction === "vertical"
242
- ? this.target.flipVertical(this.height)
243
- : this.target.flipHorizontal(this.width);
244
- return {
245
- ref: this.target,
246
- start: { x, y, sx, sy },
247
- end: {
248
- x: this.target.x,
249
- y: this.target.y,
250
- sx: this.target.sx,
251
- sy: this.target.sy,
252
- },
253
- };
254
- }
255
- addCorners() {
256
- for (const type of corners) {
257
- const r = new Rect(this.getCornersInScreenSpace(type, this.target.worldMatrix));
258
- r.color = this.mode === BoundingBoxMode.ACTIVE ? BASE_BLUE : LIGHT_BLUE;
259
- this.corners.set(type, r);
260
- }
261
- }
262
- removeCorners() {
263
- this.corners.clear();
264
- }
265
- updateCorners() {
266
- for (const type of corners) {
267
- const config = this.getCornersInScreenSpace(type, this.target.worldMatrix);
268
- const corner = this.corners.get(type);
269
- if (corner) {
270
- corner.setTranslation(config.x, config.y);
271
- corner.width = config.width;
272
- corner.height = config.height;
273
- corner.color =
274
- this.mode === BoundingBoxMode.ACTIVE ? BASE_BLUE : LIGHT_BLUE;
275
- }
276
- }
277
- }
278
- addSides() {
279
- for (const type of sides) {
280
- const r = new Rect(this.getSidesInScreenSpace(type, this.target.worldMatrix));
281
- r.color = this.mode === BoundingBoxMode.ACTIVE ? BASE_BLUE : LIGHT_BLUE;
282
- this.sides.set(type, r);
283
- }
284
- }
285
- updateSides() {
286
- for (const type of sides) {
287
- const config = this.getSidesInScreenSpace(type, this.target.worldMatrix);
288
- const side = this.sides.get(type);
289
- // only scale the side that should change, e.g. if it grows horizontally, scale only the width with scale and not height
290
- if (side) {
291
- side.setTranslation(config.x, config.y);
292
- side.width = config.width;
293
- side.height = config.height;
294
- side.color =
295
- this.mode === BoundingBoxMode.ACTIVE ? BASE_BLUE : LIGHT_BLUE;
296
- }
297
- }
298
- }
299
- }
300
- //# sourceMappingURL=BoundingBox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BoundingBox.js","sourceRoot":"src/","sources":["bounding/BoundingBox.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- import { Rect } from "../shapes/Rect";
2
- import { AABB } from "./AABB";
3
- /**
4
- * Its properties related to rendering are all stored as camera space value - will need to convert to world coordinates when used
5
- */
6
- export declare class MarqueeSelectionBox {
7
- x: number;
8
- y: number;
9
- width: number;
10
- height: number;
11
- rects: Map<string, Rect>;
12
- borderSize: number;
13
- AABB: AABB;
14
- constructor(x: number, y: number, worldMatrix: number[]);
15
- private getRectConfig;
16
- render(gl: WebGLRenderingContext, program: WebGLProgram): void;
17
- update(): void;
18
- destroy(): void;
19
- /**
20
- * Apply bounding box in world dimension
21
- * @returns
22
- */
23
- getBoundingBox(getWorldCoords: (x: number, y: number) => number[]): AABB;
24
- resize(dx: number, dy: number, worldMatrix: number[]): void;
25
- private addRects;
26
- private updateRects;
27
- }
28
- //# sourceMappingURL=Marquee.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Marquee.d.ts","sourceRoot":"src/","sources":["bounding/Marquee.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAUtC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAI9B;;GAEG;AACH,qBAAa,mBAAmB;IAG9B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAK;IAClB,MAAM,EAAE,MAAM,CAAK;IACnB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAa;IACrC,UAAU,EAAE,MAAM,CAAK;IACvB,IAAI,EAAE,IAAI,CAAC;gBAEC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE;IAOvD,OAAO,CAAC,aAAa;IAqCrB,MAAM,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAQ9D,MAAM;IAKN,OAAO;IAMP;;;OAGG;IACH,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,EAAE;IAYjE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE;IAMpD,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,WAAW;CAepB"}
@@ -1,111 +0,0 @@
1
- import { Rect } from "../shapes/Rect";
2
- import { applyMatrixToPoint, BASE_BLUE, BORDERPX, getScalesFromMatrix, MARQUEE_BLUE, sides, } from "../util";
3
- import { AABB } from "./AABB";
4
- const RECT_TYPES = ["CENTER", ...sides];
5
- /**
6
- * Its properties related to rendering are all stored as camera space value - will need to convert to world coordinates when used
7
- */
8
- export class MarqueeSelectionBox {
9
- constructor(x, y, worldMatrix) {
10
- this.width = 0;
11
- this.height = 0;
12
- this.rects = new Map();
13
- this.borderSize = 0;
14
- const [hx, hy] = applyMatrixToPoint(worldMatrix, x, y);
15
- this.x = hx;
16
- this.y = hy;
17
- this.addRects();
18
- }
19
- getRectConfig(type) {
20
- // height and width adjusted to cover up the corner
21
- let { x, y, width, height, borderSize } = this;
22
- return {
23
- TOP: {
24
- x,
25
- y,
26
- width: width < 0 ? width : width + borderSize,
27
- height: borderSize,
28
- },
29
- BOTTOM: {
30
- x,
31
- y: y + height,
32
- width: width < 0 ? width : width + borderSize,
33
- height: borderSize,
34
- },
35
- LEFT: {
36
- x: height < 0 && width < 0 ? x - borderSize : x,
37
- y,
38
- width: borderSize,
39
- height: height < 0 && width < 0 ? height : height + borderSize,
40
- },
41
- RIGHT: {
42
- x: x + width,
43
- y,
44
- width: borderSize,
45
- height: height < 0 ? height : height + borderSize,
46
- },
47
- CENTER: {
48
- x,
49
- y,
50
- width,
51
- height,
52
- },
53
- }[type];
54
- }
55
- render(gl, program) {
56
- this.update();
57
- for (const [_, rect] of this.rects.entries()) {
58
- rect.render(gl, program);
59
- }
60
- }
61
- update() {
62
- this.borderSize = BORDERPX;
63
- this.updateRects();
64
- }
65
- destroy() {
66
- for (const [_, rect] of this.rects.entries()) {
67
- rect.destroy();
68
- }
69
- }
70
- /**
71
- * Apply bounding box in world dimension
72
- * @returns
73
- */
74
- getBoundingBox(getWorldCoords) {
75
- const [wx, wy] = getWorldCoords(this.x, this.y);
76
- const [wW, wH] = getWorldCoords(this.x + this.width, this.y + this.height);
77
- const minX = Math.min(wx, wW);
78
- const maxX = Math.max(wx, wW);
79
- const minY = Math.min(wy, wH);
80
- const maxY = Math.max(wy, wH);
81
- return new AABB(minX, minY, maxX, maxY);
82
- }
83
- resize(dx, dy, worldMatrix) {
84
- const [scaleX, scaleY] = getScalesFromMatrix(worldMatrix);
85
- this.width += dx * scaleX;
86
- this.height += dy * scaleY;
87
- }
88
- addRects() {
89
- for (const type of RECT_TYPES) {
90
- const config = this.getRectConfig(type);
91
- const rect = new Rect(config);
92
- rect.color = BASE_BLUE;
93
- this.rects.set(type, rect);
94
- }
95
- }
96
- updateRects() {
97
- for (const type of RECT_TYPES) {
98
- const rect = this.rects.get(type);
99
- const config = this.getRectConfig(type);
100
- if (rect) {
101
- rect.setTranslation(config.x, config.y);
102
- rect.width = config.width;
103
- rect.height = config.height;
104
- if (type === "CENTER") {
105
- rect.color = MARQUEE_BLUE;
106
- }
107
- }
108
- }
109
- }
110
- }
111
- //# sourceMappingURL=Marquee.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Marquee.js","sourceRoot":"src/","sources":["bounding/Marquee.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"MultiBoundingBox.d.ts","sourceRoot":"src/","sources":["bounding/MultiBoundingBox.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,wBAAwB,EAIzB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,qBAAqB,EACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAOtC,qBAAa,gBAAgB;IAC3B,OAAO,EAAE,IAAI,EAAE,CAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAa;IACvC,UAAU,EAAE,MAAM,CAAK;IACvB,OAAO,EAAE,MAAM,CAAK;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;gBAEJ,MAAM,CAAC,EAAE,IAAI,EAAE;IAM3B,GAAG,CAAC,KAAK,EAAE,IAAI;IAMf,MAAM,CAAC,KAAK,EAAE,IAAI;IAKlB,MAAM,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAQ9D,MAAM;IAQN,OAAO;IAMP,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAO3B,MAAM,CACJ,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,wBAAwB,EACnC,YAAY,EAAE,MAAM,EAAE;IAgFxB,IAAI,CACF,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,EAAE,aAAa,EACxB,cAAc,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,EAAE;IAuCpD,KAAK,CAAC,SAAS,EAAE,cAAc;IA8C/B,SAAS,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa;IAgFpD,YAAY,IAAI,MAAM,EAAE;IAaxB,OAAO,CACL,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,WAAW,EAAE,MAAM,EAAE,GACpB,wBAAwB,GAAG,IAAI;IA0BlC,OAAO,CAAC,SAAS;IAuBjB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,eAAe;CAsDxB"}