@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,92 +0,0 @@
1
- import { AABB } from "../bounding";
2
- import { getScalesFromMatrix, applyMatrixToPoint, isScalePositive, } from "../util";
3
- import { Shape } from "./Shape";
4
- export class Rect extends Shape {
5
- constructor(config) {
6
- super(config.x, config.y, config.sx, config.sy);
7
- this._width = config.width ?? 100;
8
- this._height = config.height ?? 100;
9
- }
10
- get width() {
11
- return this._width;
12
- }
13
- set width(value) {
14
- if (this._width !== value) {
15
- this._width = value;
16
- this.markDirty();
17
- }
18
- }
19
- get height() {
20
- return this._height;
21
- }
22
- set height(value) {
23
- if (this._height !== value) {
24
- this._height = value;
25
- this.markDirty();
26
- }
27
- }
28
- getVertexCount() {
29
- return 6;
30
- }
31
- getPositions() {
32
- const left = 0;
33
- const top = 0;
34
- const right = this.width;
35
- const bottom = this.height;
36
- return [
37
- left,
38
- top, // top-left
39
- left,
40
- bottom, // bottom-left
41
- right,
42
- top, // top-right
43
- right,
44
- top, // top-right
45
- left,
46
- bottom, // bottom-left
47
- right,
48
- bottom, // bottom-right
49
- ];
50
- }
51
- /**
52
- *
53
- * @returns A bounding box that is not adjusted for world space.
54
- */
55
- getBoundingBox() {
56
- // due to possible flips, the original width could be flipped by the scale value and become lesser the its translation[0]
57
- const x0 = this.state.translation[0];
58
- const x1 = x0 + this.width * this.state.scaleX;
59
- const y0 = this.state.translation[1];
60
- const y1 = y0 + this.height * this.state.scaleY;
61
- const minX = Math.min(x0, x1);
62
- const maxX = Math.max(x0, x1);
63
- const minY = Math.min(y0, y1);
64
- const maxY = Math.max(y0, y1);
65
- this.AABB = new AABB(minX, minY, maxX, maxY);
66
- return this.AABB;
67
- }
68
- getEdge() {
69
- const x = this.x, y = this.y;
70
- return {
71
- minX: Math.min(x, x + this.width),
72
- maxX: Math.max(x, x + this.width),
73
- minY: Math.min(y, y + this.height),
74
- maxY: Math.max(y, y + this.height),
75
- };
76
- }
77
- hitTest(x, y) {
78
- const [scaleX, scaleY] = getScalesFromMatrix(this.worldMatrix);
79
- const [signX, signY] = isScalePositive(this.worldMatrix);
80
- // Transform the input point to the rectangle's local space
81
- const [hx, hy] = applyMatrixToPoint(this.parent.worldMatrix, x, y);
82
- const [cx, cy] = applyMatrixToPoint(this.worldMatrix);
83
- const w = this.width * scaleX * signX;
84
- const h = this.height * scaleY * signY;
85
- const minX = Math.min(cx, cx + w);
86
- const maxX = Math.max(cx, cx + w);
87
- const minY = Math.min(cy, cy + h);
88
- const maxY = Math.max(cy, cy + h);
89
- return hx >= minX && hx <= maxX && hy >= minY && hy <= maxY;
90
- }
91
- }
92
- //# sourceMappingURL=Rect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Rect.js","sourceRoot":"src/","sources":["shapes/Rect.ts"],"names":[],"mappings":"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"}
@@ -1,54 +0,0 @@
1
- import EventEmitter from "eventemitter3";
2
- import { RenderableState } from "../state";
3
- export declare abstract class Renderable {
4
- state: RenderableState;
5
- get x(): number;
6
- get y(): number;
7
- get sx(): number;
8
- get sy(): number;
9
- get dirty(): boolean;
10
- get localMatrix(): number[];
11
- get worldMatrix(): number[];
12
- get children(): Renderable[];
13
- get parent(): Renderable;
14
- get angleRadians(): number;
15
- updateTranslation(x: number, y: number): void;
16
- setTranslation(x: number, y: number): void;
17
- updateScale(x: number, y: number): void;
18
- setScale(x: number, y: number): void;
19
- setAngle(rotationDegree: number): void;
20
- flipVertical(height: number): void;
21
- flipHorizontal(width: number): void;
22
- markDirty(): void;
23
- clearDirty(): void;
24
- updateLocalMatrix(): void;
25
- setWorldMatrix(matrix: number[]): void;
26
- addChild(child: Renderable): void;
27
- addParent(parent: Renderable | null): void;
28
- clearChildren(): void;
29
- _emitter: EventEmitter;
30
- constructor();
31
- appendChild<T extends Renderable>(child: T): T;
32
- setParent(parent: Renderable | null): void;
33
- updateWorldMatrix(parentWorldMatrix?: number[]): void;
34
- abstract render(gl: WebGLRenderingContext, program: WebGLProgram): void;
35
- abstract destroy(): void;
36
- abstract hitTest(x: number, y: number): boolean;
37
- addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
38
- removeEventListener(type: string, listener?: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
39
- dispatchEvent(e: Event): boolean;
40
- }
41
- export declare abstract class WebGLRenderable extends Renderable {
42
- protected positionBuffer?: WebGLBuffer;
43
- protected attributeLocation?: number;
44
- protected initialized: boolean;
45
- protected vertexArray?: Float32Array;
46
- protected resolutionLocation?: WebGLUniformLocation;
47
- protected matrixLocation?: WebGLUniformLocation;
48
- abstract getPositions(): number[] | Float32Array;
49
- updateVertexData(gl: WebGLRenderingContext): void;
50
- protected setUpVertexData(gl: WebGLRenderingContext, program: WebGLProgram): void;
51
- protected setUpUniforms(gl: WebGLRenderingContext, program: WebGLProgram): void;
52
- protected updateUniforms(gl: WebGLRenderingContext): void;
53
- }
54
- //# sourceMappingURL=Renderable.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Renderable.d.ts","sourceRoot":"src/","sources":["shapes/Renderable.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,8BAAsB,UAAU;IAC9B,KAAK,EAAE,eAAe,CAAC;IAEvB,IAAI,CAAC,WAEJ;IACD,IAAI,CAAC,WAEJ;IACD,IAAI,EAAE,WAEL;IACD,IAAI,EAAE,WAEL;IACD,IAAI,KAAK,YAER;IACD,IAAI,WAAW,aAEd;IACD,IAAI,WAAW,aAEd;IACD,IAAI,QAAQ,iBAEX;IACD,IAAI,MAAM,eAET;IACD,IAAI,YAAY,WAEf;IAED,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAGtC,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAGnC,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAGhC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAG7B,QAAQ,CAAC,cAAc,EAAE,MAAM;IAG/B,YAAY,CAAC,MAAM,EAAE,MAAM;IAG3B,cAAc,CAAC,KAAK,EAAE,MAAM;IAI5B,SAAS;IAGT,UAAU;IAIV,iBAAiB;IAGjB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE;IAI/B,QAAQ,CAAC,KAAK,EAAE,UAAU;IAG1B,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAGnC,aAAa;IAIb,QAAQ,EAAE,YAAY,CAAC;;IASvB,WAAW,CAAC,CAAC,SAAS,UAAU,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;IAM9C,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IASnC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE;IAK9C,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IACvE,QAAQ,CAAC,OAAO,IAAI,IAAI;IACxB,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO;IAE/C,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,kCAAkC,EAC5C,OAAO,CAAC,EAAE,OAAO,GAAG,uBAAuB;IAS7C,mBAAmB,CACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,kCAAkC,EAC7C,OAAO,CAAC,EAAE,OAAO,GAAG,oBAAoB;IAG1C,aAAa,CAAC,CAAC,EAAE,KAAK;CAIvB;AAED,8BAAsB,eAAgB,SAAQ,UAAU;IACtD,SAAS,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC;IACvC,SAAS,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACrC,SAAS,CAAC,WAAW,UAAS;IAC9B,SAAS,CAAC,WAAW,CAAC,EAAE,YAAY,CAAC;IAErC,SAAS,CAAC,kBAAkB,CAAC,EAAE,oBAAoB,CAAC;IACpD,SAAS,CAAC,cAAc,CAAC,EAAE,oBAAoB,CAAC;IAEhD,QAAQ,CAAC,YAAY,IAAI,MAAM,EAAE,GAAG,YAAY;IAEhD,gBAAgB,CAAC,EAAE,EAAE,qBAAqB;IAa1C,SAAS,CAAC,eAAe,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY;IAO1E,SAAS,CAAC,aAAa,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY;IAKxE,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,qBAAqB;CAInD"}
@@ -1,141 +0,0 @@
1
- import { RenderableState } from "../state";
2
- export class Renderable {
3
- get x() {
4
- return this.state.x;
5
- }
6
- get y() {
7
- return this.state.y;
8
- }
9
- get sx() {
10
- return this.state.scaleX;
11
- }
12
- get sy() {
13
- return this.state.scaleY;
14
- }
15
- get dirty() {
16
- return this.state.dirty;
17
- }
18
- get localMatrix() {
19
- return this.state.localMatrix;
20
- }
21
- get worldMatrix() {
22
- return this.state.worldMatrix;
23
- }
24
- get children() {
25
- return this.state.children;
26
- }
27
- get parent() {
28
- return this.state.parent;
29
- }
30
- get angleRadians() {
31
- return this.state.angleRadians;
32
- }
33
- updateTranslation(x, y) {
34
- this.state.updateTranslation(x, y);
35
- }
36
- setTranslation(x, y) {
37
- this.state.setTranslation(x, y);
38
- }
39
- updateScale(x, y) {
40
- this.state.updateScale(x, y);
41
- }
42
- setScale(x, y) {
43
- this.state.setScale(x, y);
44
- }
45
- setAngle(rotationDegree) {
46
- return this.state.setAngle(rotationDegree);
47
- }
48
- flipVertical(height) {
49
- this.state.flipVertical(height);
50
- }
51
- flipHorizontal(width) {
52
- this.state.flipHorizontal(width);
53
- }
54
- markDirty() {
55
- this.state.markDirty();
56
- }
57
- clearDirty() {
58
- this.state.clearDirty();
59
- }
60
- updateLocalMatrix() {
61
- this.state.updateLocalMatrix();
62
- }
63
- setWorldMatrix(matrix) {
64
- this.state.setWorldMatrix(matrix);
65
- }
66
- addChild(child) {
67
- this.state.appendChild(child);
68
- }
69
- addParent(parent) {
70
- return this.state.setParent(parent);
71
- }
72
- clearChildren() {
73
- return this.state.clearChildren();
74
- }
75
- constructor() {
76
- this.state = new RenderableState();
77
- this.setWorldMatrix = this.setWorldMatrix.bind(this);
78
- this.updateWorldMatrix = this.updateWorldMatrix.bind(this);
79
- }
80
- appendChild(child) {
81
- child.setParent(this);
82
- if (!child._emitter && this._emitter)
83
- child._emitter = this._emitter;
84
- return child;
85
- }
86
- setParent(parent) {
87
- if (this.parent) {
88
- const i = this.parent.children.indexOf(this);
89
- if (i >= 0)
90
- this.parent.children.splice(i, 1);
91
- }
92
- if (parent)
93
- parent.addChild(this);
94
- this.addParent(parent);
95
- }
96
- updateWorldMatrix(parentWorldMatrix) {
97
- this.updateLocalMatrix();
98
- this.state.updateWorldMatrix(parentWorldMatrix);
99
- }
100
- addEventListener(type, listener, options) {
101
- const fn = typeof listener === "function"
102
- ? listener
103
- : listener.handleEvent.bind(listener);
104
- this._emitter.on(type, fn);
105
- }
106
- removeEventListener(type, listener, options) { }
107
- dispatchEvent(e) {
108
- this._emitter.emit(e.type, e);
109
- return !e.defaultPrevented;
110
- }
111
- }
112
- export class WebGLRenderable extends Renderable {
113
- constructor() {
114
- super(...arguments);
115
- this.initialized = false;
116
- }
117
- updateVertexData(gl) {
118
- const positions = this.getPositions();
119
- if (!this.vertexArray || this.vertexArray.length !== positions.length) {
120
- this.vertexArray = new Float32Array(positions.length);
121
- }
122
- this.vertexArray.set(positions);
123
- gl.bindBuffer(gl.ARRAY_BUFFER, this.positionBuffer);
124
- gl.bufferData(gl.ARRAY_BUFFER, this.vertexArray, gl.STATIC_DRAW);
125
- }
126
- setUpVertexData(gl, program) {
127
- if (!this.positionBuffer) {
128
- this.positionBuffer = gl.createBuffer();
129
- }
130
- this.attributeLocation = gl.getAttribLocation(program, "a_position");
131
- }
132
- setUpUniforms(gl, program) {
133
- this.resolutionLocation = gl.getUniformLocation(program, "u_resolution");
134
- this.matrixLocation = gl.getUniformLocation(program, "u_matrix");
135
- }
136
- updateUniforms(gl) {
137
- gl.uniform2f(this.resolutionLocation, gl.canvas.width, gl.canvas.height);
138
- gl.uniformMatrix3fv(this.matrixLocation, false, this.worldMatrix);
139
- }
140
- }
141
- //# sourceMappingURL=Renderable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Renderable.js","sourceRoot":"src/","sources":["shapes/Renderable.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Shape.d.ts","sourceRoot":"src/","sources":["shapes/Shape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,8BAAsB,KAAM,SAAQ,eAAe;IACjD,OAAO,CAAC,MAAM,CAAC,WAAW,CAAK;IAC/B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAuB;IAE5C,MAAM,UAAS;IAEf,OAAO,CAAC,YAAY,CAAa;IACjC,QAAQ,CAAC,cAAc,IAAI,MAAM;gBAErB,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU;IAMhE,IAAI,WAAW,IAGI,MAAM,CADxB;IACD,IAAI,WAAW,CAAC,CAAC,EAAE,MAAM,EAKxB;IAED,IAAI,GAAG,WAEN;IAED,QAAQ,CAAC,OAAO,IAAI,WAAW;IAC/B,QAAQ,CAAC,cAAc,IAAI,IAAI;IAE/B,IAAI,IAAI,MAAM;IAMd,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAkB;IAEzD,MAAM,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAqB9D,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,qBAAqB;IAyBxC,OAAO;CAMR"}
@@ -1,71 +0,0 @@
1
- import { WebGLRenderable } from "./Renderable";
2
- export class Shape extends WebGLRenderable {
3
- static { this._seqCounter = 0; }
4
- constructor(x, y, sx = 1, sy = 1) {
5
- super();
6
- this._seq = Shape._seqCounter++;
7
- this.culled = false;
8
- this._renderOrder = 0;
9
- this.color = [1, 0, 0.5, 1];
10
- this.setTranslation(x, y);
11
- this.setScale(sx, sy);
12
- }
13
- get renderOrder() {
14
- return this._renderOrder;
15
- }
16
- set renderOrder(v) {
17
- if (this._renderOrder !== v) {
18
- this._renderOrder = v;
19
- this.markDirty();
20
- }
21
- }
22
- get seq() {
23
- return this._seq;
24
- }
25
- getZ() {
26
- const step = 0.0001;
27
- const z = this.renderOrder * step + 0.5;
28
- return Math.max(0.0, Math.min(1.0, z));
29
- }
30
- render(gl, program) {
31
- this.updateWorldMatrix(this.parent ? this.parent.worldMatrix : undefined);
32
- gl.useProgram(program);
33
- if (this.dirty && !this.culled) {
34
- if (!this.initialized) {
35
- this.setUpVertexData(gl, program);
36
- this.setUpUniforms(gl, program);
37
- this.initialized = true;
38
- }
39
- this.updateVertexData(gl);
40
- this.clearDirty();
41
- }
42
- this.updateUniforms(gl);
43
- const uColor = gl.getUniformLocation(program, "u_color");
44
- if (uColor) {
45
- gl.uniform4fv(uColor, this.color);
46
- }
47
- if (!this.culled)
48
- this.draw(gl);
49
- }
50
- draw(gl) {
51
- gl.bindBuffer(gl.ARRAY_BUFFER, this.positionBuffer);
52
- // Tell the attribute how to get data out of positionBuffer (ARRAY_BUFFER)
53
- const size = 2; // 2 components per iteration since it's a vec2D
54
- const type = gl.FLOAT; // the data is 32bit floats
55
- const normalize = false; // don't normalize the data
56
- const stride = 0; // 0 = move forward size * sizeof(type) each iteration to get the next position
57
- const offset = 0; // start at the beginning of the buffer
58
- gl.vertexAttribPointer(this.attributeLocation, size, type, normalize, stride, offset);
59
- gl.enableVertexAttribArray(this.attributeLocation);
60
- gl.drawArrays(gl.TRIANGLES, 0, this.getVertexCount());
61
- gl.bindBuffer(gl.ARRAY_BUFFER, null);
62
- gl.disableVertexAttribArray(this.attributeLocation);
63
- }
64
- destroy() {
65
- if (this.positionBuffer) {
66
- this.positionBuffer = undefined;
67
- }
68
- this.initialized = false;
69
- }
70
- }
71
- //# sourceMappingURL=Shape.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Shape.js","sourceRoot":"src/","sources":["shapes/Shape.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- import { AABB } from "bounding";
2
- import { Shape } from "./Shape";
3
- export declare class Triangle extends Shape {
4
- private _base;
5
- width: number;
6
- height: number;
7
- constructor(positions: number[]);
8
- getPositions(): number[];
9
- getVertexCount(): number;
10
- getEdge(): {
11
- minX: number;
12
- maxX: number;
13
- minY: number;
14
- maxY: number;
15
- };
16
- getBoundingBox(): AABB;
17
- hitTest(x: number, y: number): boolean;
18
- private edge;
19
- }
20
- //# sourceMappingURL=Triangle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Triangle.d.ts","sourceRoot":"src/","sources":["shapes/Triangle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAe,KAAK,EAAE,MAAM,SAAS,CAAC;AAE7C,qBAAa,QAAS,SAAQ,KAAK;IACjC,OAAO,CAAC,KAAK,CAAW;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;gBAEH,SAAS,EAAE,MAAM,EAAE;IAK/B,YAAY,IAAI,MAAM,EAAE;IAaxB,cAAc,IAAI,MAAM;IAIxB,OAAO;;;;;;IAsBP,cAAc,IAAI,IAAI;IAetB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAsC5B,OAAO,CAAC,IAAI,CAOuC;CACpD"}
@@ -1,82 +0,0 @@
1
- import { AABB } from "bounding";
2
- import { Shape } from "./Shape";
3
- export class Triangle extends Shape {
4
- constructor(positions) {
5
- super(positions[0], positions[1]);
6
- this.edge = (px, py, qx, qy, rx, ry) => (px - rx) * (qy - ry) - (qx - rx) * (py - ry);
7
- this._base = positions.slice(0, 6);
8
- }
9
- getPositions() {
10
- const x = this.x, y = this.y;
11
- return [
12
- this._base[0] + x,
13
- this._base[1] + y,
14
- this._base[2] + x,
15
- this._base[3] + y,
16
- this._base[4] + x,
17
- this._base[5] + y,
18
- ];
19
- }
20
- getVertexCount() {
21
- return 3;
22
- }
23
- getEdge() {
24
- const p = this.getPositions();
25
- if (!p || p.length < 6) {
26
- console.error("Triangle is missing positions");
27
- throw new Error();
28
- }
29
- const ax = p[0], ay = p[1];
30
- const bx = p[2], by = p[3];
31
- const cx = p[4], cy = p[5];
32
- return {
33
- minX: Math.min(ax, bx, cx),
34
- maxX: Math.max(ax, bx, cx),
35
- minY: Math.min(ay, by, cy),
36
- maxY: Math.max(ay, by, cy),
37
- };
38
- }
39
- getBoundingBox() {
40
- const x0 = this.state.translation[0];
41
- const x1 = x0 + this.width * this.state.scaleX;
42
- const y0 = this.state.translation[1];
43
- const y1 = y0 + this.height * this.state.scaleY;
44
- const minX = Math.min(x0, x1);
45
- const maxX = Math.max(x0, x1);
46
- const minY = Math.min(y0, y1);
47
- const maxY = Math.max(y0, y1);
48
- const aabb = new AABB(minX, minY, maxX, maxY);
49
- return aabb;
50
- }
51
- hitTest(x, y) {
52
- const p = this.getPositions();
53
- if (!p || p.length < 6)
54
- return false;
55
- const ax = p[0], ay = p[1];
56
- const bx = p[2], by = p[3];
57
- const cx = p[4], cy = p[5];
58
- // Fast reject via AABB (optional)
59
- const minX = Math.min(ax, bx, cx);
60
- const maxX = Math.max(ax, bx, cx);
61
- const minY = Math.min(ay, by, cy);
62
- const maxY = Math.max(ay, by, cy);
63
- if (x < minX || x > maxX || y < minY || y > maxY)
64
- return false;
65
- const eps = 1e-8;
66
- const e1 = this.edge(x, y, ax, ay, bx, by);
67
- const e2 = this.edge(x, y, bx, by, cx, cy);
68
- const e3 = this.edge(x, y, cx, cy, ax, ay);
69
- // Allow points on edges (>= -eps) and require consistent winding
70
- const hasNeg = e1 < -eps || e2 < -eps || e3 < -eps;
71
- const hasPos = e1 > eps || e2 > eps || e3 > eps;
72
- // If both signs present, point is outside
73
- if (hasNeg && hasPos)
74
- return false;
75
- // Degenerate triangle guard (area ~ 0)
76
- const area2 = Math.abs(this.edge(ax, ay, bx, by, cx, cy));
77
- if (area2 <= eps)
78
- return false;
79
- return true;
80
- }
81
- }
82
- //# sourceMappingURL=Triangle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Triangle.js","sourceRoot":"src/","sources":["shapes/Triangle.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export * from "./Rect";
2
- export * from "./Shape";
3
- export * from "./Img";
4
- export * from "./Renderable";
5
- export * from "./Grid";
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"src/","sources":["shapes/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AAExB,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC"}
@@ -1,7 +0,0 @@
1
- export * from "./Rect";
2
- export * from "./Shape";
3
- // export * from './Triangle';
4
- export * from "./Img";
5
- export * from "./Renderable";
6
- export * from "./Grid";
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["shapes/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,8BAA8B;AAC9B,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"camera.d.ts","sourceRoot":"src/","sources":["state/camera.ts"],"names":[],"mappings":"AAGA,UAAU,iBAAiB;IACzB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,WAAW;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;gBAED,MAAM,GAAE,OAAO,CAAC,iBAAiB,CAAM;IAsCnD,IAAI,CAAC,CAAC,EAAE,MAAM;IAId,IAAI,CAAC,CAAC,EAAE,MAAM;IAId,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAKhC,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAKxC,QAAQ,CAAC,KAAK,EAAE,MAAM;IAItB,SAAS,CAAC,MAAM,EAAE,MAAM;IAIxB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAKrC,OAAO,CAAC,IAAI,EAAE,MAAM;IAIpB,WAAW,CAAC,QAAQ,EAAE,MAAM;IAI5B,IAAI,SAAS,aAEZ;IAED,IAAI,QAAQ,aAEX;IAED,IAAI,WAAW,aAEd;IAED,IAAI,iBAAiB,aAEpB;IAED,IAAI,cAAc,aAEjB;IAED,IAAI,WAAW,aAEd;IAED,IAAI,YAAY,aAGf;IAED,IAAI,YAAY,aAEf;CACF"}
@@ -1,88 +0,0 @@
1
- import { makeObservable, observable, computed, action } from "mobx";
2
- import { m3 } from "../util";
3
- export class CameraState {
4
- constructor(option = {}) {
5
- const { x = 0, y = 0, width = 0, height = 0, rotation = 0, zoom = 1, } = option;
6
- this.x = x;
7
- this.y = y;
8
- this.width = width;
9
- this.height = height;
10
- this.rotation = rotation;
11
- this.zoom = zoom;
12
- makeObservable(this, {
13
- x: observable,
14
- y: observable,
15
- width: observable,
16
- height: observable,
17
- rotation: observable,
18
- zoom: observable,
19
- setX: action,
20
- setY: action,
21
- setPosition: action,
22
- incrementPosition: action,
23
- setWidth: action,
24
- setHeight: action,
25
- setSize: action,
26
- setZoom: action,
27
- setRotation: action,
28
- stateVector: computed,
29
- });
30
- }
31
- // Actions
32
- setX(x) {
33
- this.x = x;
34
- }
35
- setY(y) {
36
- this.y = y;
37
- }
38
- setPosition(x, y) {
39
- this.x = x;
40
- this.y = y;
41
- }
42
- incrementPosition(dx, dy) {
43
- this.x += dx;
44
- this.y += dy;
45
- }
46
- setWidth(width) {
47
- this.width = width;
48
- }
49
- setHeight(height) {
50
- this.height = height;
51
- }
52
- setSize(width, height) {
53
- this.width = width;
54
- this.height = height;
55
- }
56
- setZoom(zoom) {
57
- this.zoom = zoom;
58
- }
59
- setRotation(rotation) {
60
- this.rotation = rotation;
61
- }
62
- get dimension() {
63
- return [this.width, this.height];
64
- }
65
- get position() {
66
- return [this.x, this.y];
67
- }
68
- get stateVector() {
69
- return [this.x, this.y, this.width, this.height, this.rotation, this.zoom];
70
- }
71
- get translationMatrix() {
72
- return m3.translation(this.x, this.y);
73
- }
74
- get rotationMatrix() {
75
- return m3.rotation(this.rotation);
76
- }
77
- get scaleMatrix() {
78
- return m3.scaling(this.zoom, this.zoom);
79
- }
80
- get cameraMatrix() {
81
- const matrix = m3.multiply(this.translationMatrix, this.rotationMatrix);
82
- return m3.multiply(matrix, this.scaleMatrix);
83
- }
84
- get canvasMatrix() {
85
- return m3.inverse(this.cameraMatrix);
86
- }
87
- }
88
- //# sourceMappingURL=camera.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"camera.js","sourceRoot":"src/","sources":["state/camera.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export * from "./camera";
2
- export * from "./pointerEvent";
3
- export * from "./renderable";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"src/","sources":["state/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
@@ -1,4 +0,0 @@
1
- export * from "./camera";
2
- export * from "./pointerEvent";
3
- export * from "./renderable";
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["state/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}