@reffy/infinite-canvas 0.0.12 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (599) hide show
  1. package/README.md +2 -0
  2. package/{esm → dist}/API.d.ts +6 -2
  3. package/dist/API.d.ts.map +1 -0
  4. package/{lib → dist}/Canvas.d.ts +33 -9
  5. package/dist/Canvas.d.ts.map +1 -0
  6. package/{esm → dist}/Component.d.ts +28 -8
  7. package/dist/Component.d.ts.map +1 -0
  8. package/dist/bounding/AABB.d.ts.map +1 -0
  9. package/{lib → dist}/bounding/BoundingBox.d.ts +5 -5
  10. package/dist/bounding/BoundingBox.d.ts.map +1 -0
  11. package/{esm → dist}/bounding/Marquee.d.ts +2 -2
  12. package/dist/bounding/Marquee.d.ts.map +1 -0
  13. package/{esm → dist}/bounding/MultiBoundingBox.d.ts +3 -3
  14. package/dist/bounding/MultiBoundingBox.d.ts.map +1 -0
  15. package/dist/bounding/index.d.ts +6 -0
  16. package/dist/bounding/index.d.ts.map +1 -0
  17. package/dist/bounding/type.d.ts.map +1 -0
  18. package/{esm → dist}/camera/Camera.d.ts +3 -2
  19. package/dist/camera/Camera.d.ts.map +1 -0
  20. package/dist/camera/index.d.ts +2 -0
  21. package/dist/camera/index.d.ts.map +1 -0
  22. package/dist/contextMenu/ContextMenu.d.ts.map +1 -0
  23. package/{esm → dist}/contextMenu/Interaction.d.ts +4 -2
  24. package/dist/contextMenu/Interaction.d.ts.map +1 -0
  25. package/dist/contextMenu/index.d.ts +3 -0
  26. package/dist/contextMenu/index.d.ts.map +1 -0
  27. package/dist/history/history.d.ts.map +1 -0
  28. package/dist/history/index.d.ts +2 -0
  29. package/dist/history/index.d.ts.map +1 -0
  30. package/dist/index.d.ts +5 -0
  31. package/dist/index.d.ts.map +1 -0
  32. package/dist/index.js.js +14663 -0
  33. package/dist/index.js.js.map +1 -0
  34. package/{esm → dist}/loader/Interaction.d.ts +1 -1
  35. package/dist/loader/Interaction.d.ts.map +1 -0
  36. package/dist/loader/Loader.d.ts.map +1 -0
  37. package/dist/loader/index.d.ts +3 -0
  38. package/dist/loader/index.d.ts.map +1 -0
  39. package/{lib → dist}/manager/ContextMenu.d.ts +2 -2
  40. package/dist/manager/ContextMenu.d.ts.map +1 -0
  41. package/{esm → dist}/manager/FlipCommand.d.ts +3 -3
  42. package/dist/manager/FlipCommand.d.ts.map +1 -0
  43. package/{esm → dist}/manager/KeyEvent.d.ts +2 -2
  44. package/dist/manager/KeyEvent.d.ts.map +1 -0
  45. package/{esm → dist}/manager/OrderCommand.d.ts +2 -2
  46. package/dist/manager/OrderCommand.d.ts.map +1 -0
  47. package/{lib → dist}/manager/PointerEvent.d.ts +7 -7
  48. package/dist/manager/PointerEvent.d.ts.map +1 -0
  49. package/{esm → dist}/manager/SceneCommand.d.ts +3 -3
  50. package/dist/manager/SceneCommand.d.ts.map +1 -0
  51. package/{esm → dist}/manager/Selection.d.ts +8 -8
  52. package/dist/manager/Selection.d.ts.map +1 -0
  53. package/{esm → dist}/manager/TransformCommand.d.ts +2 -2
  54. package/dist/manager/TransformCommand.d.ts.map +1 -0
  55. package/dist/manager/index.d.ts +9 -0
  56. package/dist/manager/index.d.ts.map +1 -0
  57. package/dist/serializer/index.d.ts +3 -0
  58. package/dist/serializer/index.d.ts.map +1 -0
  59. package/dist/serializer/schema.d.ts +26 -0
  60. package/dist/serializer/schema.d.ts.map +1 -0
  61. package/{lib → dist}/serializer/serializer.d.ts +6 -4
  62. package/dist/serializer/serializer.d.ts.map +1 -0
  63. package/dist/shaders/grid.d.ts.map +1 -0
  64. package/dist/shaders/img.d.ts.map +1 -0
  65. package/dist/shaders/index.d.ts +4 -0
  66. package/dist/shaders/index.d.ts.map +1 -0
  67. package/dist/shaders/shape.d.ts.map +1 -0
  68. package/{esm → dist}/shapes/Grid.d.ts +1 -1
  69. package/dist/shapes/Grid.d.ts.map +1 -0
  70. package/{esm → dist}/shapes/Img.d.ts +2 -2
  71. package/dist/shapes/Img.d.ts.map +1 -0
  72. package/{esm → dist}/shapes/Rect.d.ts +6 -2
  73. package/dist/shapes/Rect.d.ts.map +1 -0
  74. package/{lib → dist}/shapes/Renderable.d.ts +6 -3
  75. package/dist/shapes/Renderable.d.ts.map +1 -0
  76. package/{esm → dist}/shapes/Shape.d.ts +2 -2
  77. package/dist/shapes/Shape.d.ts.map +1 -0
  78. package/{lib → dist}/shapes/Triangle.d.ts +2 -2
  79. package/dist/shapes/Triangle.d.ts.map +1 -0
  80. package/dist/shapes/index.d.ts +6 -0
  81. package/dist/shapes/index.d.ts.map +1 -0
  82. package/dist/state/camera.d.ts.map +1 -0
  83. package/dist/state/index.d.ts +4 -0
  84. package/dist/state/index.d.ts.map +1 -0
  85. package/{esm → dist}/state/pointerEvent.d.ts +3 -3
  86. package/dist/state/pointerEvent.d.ts.map +1 -0
  87. package/{esm → dist}/state/renderable.d.ts +1 -1
  88. package/dist/state/renderable.d.ts.map +1 -0
  89. package/{esm → dist}/storage/defaultStorage.d.ts +9 -2
  90. package/dist/storage/defaultStorage.d.ts.map +1 -0
  91. package/dist/storage/dexie-primary-key.d.ts.map +1 -0
  92. package/dist/storage/index.d.ts +3 -0
  93. package/dist/storage/index.d.ts.map +1 -0
  94. package/{esm → dist}/storage/storage.d.ts +3 -1
  95. package/dist/storage/storage.d.ts.map +1 -0
  96. package/{lib → dist}/util/camera/camera.d.ts +1 -1
  97. package/dist/util/camera/camera.d.ts.map +1 -0
  98. package/dist/util/camera/index.d.ts +2 -0
  99. package/dist/util/camera/index.d.ts.map +1 -0
  100. package/dist/util/checks.d.ts.map +1 -0
  101. package/{esm → dist}/util/clipboard.d.ts +3 -3
  102. package/dist/util/clipboard.d.ts.map +1 -0
  103. package/dist/util/color.d.ts.map +1 -0
  104. package/dist/util/customEventType.d.ts.map +1 -0
  105. package/{esm → dist}/util/files.d.ts +2 -3
  106. package/dist/util/files.d.ts.map +1 -0
  107. package/dist/util/handles.d.ts.map +1 -0
  108. package/dist/util/index.d.ts +11 -0
  109. package/dist/util/index.d.ts.map +1 -0
  110. package/dist/util/performance.d.ts.map +1 -0
  111. package/dist/util/shaders.d.ts.map +1 -0
  112. package/dist/util/webgl/index.d.ts +3 -0
  113. package/dist/util/webgl/index.d.ts.map +1 -0
  114. package/dist/util/webgl/m3.d.ts.map +1 -0
  115. package/dist/util/webgl/uniform.d.ts.map +1 -0
  116. package/package.json +9 -18
  117. package/dist/assets/index-KcoKIUJZ.js +0 -281
  118. package/dist/index.html +0 -54
  119. package/esm/API.d.ts.map +0 -1
  120. package/esm/API.js +0 -74
  121. package/esm/API.js.map +0 -1
  122. package/esm/Canvas.d.ts +0 -69
  123. package/esm/Canvas.d.ts.map +0 -1
  124. package/esm/Canvas.js +0 -372
  125. package/esm/Canvas.js.map +0 -1
  126. package/esm/Component.d.ts.map +0 -1
  127. package/esm/Component.js +0 -611
  128. package/esm/Component.js.map +0 -1
  129. package/esm/bounding/AABB.d.ts.map +0 -1
  130. package/esm/bounding/AABB.js +0 -19
  131. package/esm/bounding/AABB.js.map +0 -1
  132. package/esm/bounding/BoundingBox.d.ts +0 -53
  133. package/esm/bounding/BoundingBox.d.ts.map +0 -1
  134. package/esm/bounding/BoundingBox.js +0 -300
  135. package/esm/bounding/BoundingBox.js.map +0 -1
  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 -373
  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.map +0 -1
  150. package/esm/camera/Camera.js +0 -71
  151. package/esm/camera/Camera.js.map +0 -1
  152. package/esm/camera/index.d.ts +0 -2
  153. package/esm/camera/index.d.ts.map +0 -1
  154. package/esm/camera/index.js +0 -2
  155. package/esm/camera/index.js.map +0 -1
  156. package/esm/contextMenu/ContextMenu.d.ts.map +0 -1
  157. package/esm/contextMenu/ContextMenu.js +0 -118
  158. package/esm/contextMenu/ContextMenu.js.map +0 -1
  159. package/esm/contextMenu/Interaction.d.ts.map +0 -1
  160. package/esm/contextMenu/Interaction.js +0 -256
  161. package/esm/contextMenu/Interaction.js.map +0 -1
  162. package/esm/contextMenu/index.d.ts +0 -3
  163. package/esm/contextMenu/index.d.ts.map +0 -1
  164. package/esm/contextMenu/index.js +0 -3
  165. package/esm/contextMenu/index.js.map +0 -1
  166. package/esm/history/history.d.ts.map +0 -1
  167. package/esm/history/history.js +0 -120
  168. package/esm/history/history.js.map +0 -1
  169. package/esm/history/index.d.ts +0 -2
  170. package/esm/history/index.d.ts.map +0 -1
  171. package/esm/history/index.js +0 -2
  172. package/esm/history/index.js.map +0 -1
  173. package/esm/index.d.ts +0 -5
  174. package/esm/index.d.ts.map +0 -1
  175. package/esm/index.js +0 -5
  176. package/esm/index.js.map +0 -1
  177. package/esm/loader/Interaction.d.ts.map +0 -1
  178. package/esm/loader/Interaction.js +0 -17
  179. package/esm/loader/Interaction.js.map +0 -1
  180. package/esm/loader/Loader.d.ts.map +0 -1
  181. package/esm/loader/Loader.js +0 -49
  182. package/esm/loader/Loader.js.map +0 -1
  183. package/esm/loader/index.d.ts +0 -3
  184. package/esm/loader/index.d.ts.map +0 -1
  185. package/esm/loader/index.js +0 -3
  186. package/esm/loader/index.js.map +0 -1
  187. package/esm/manager/ContextMenu.d.ts +0 -11
  188. package/esm/manager/ContextMenu.d.ts.map +0 -1
  189. package/esm/manager/ContextMenu.js +0 -33
  190. package/esm/manager/ContextMenu.js.map +0 -1
  191. package/esm/manager/FlipCommand.d.ts.map +0 -1
  192. package/esm/manager/FlipCommand.js +0 -35
  193. package/esm/manager/FlipCommand.js.map +0 -1
  194. package/esm/manager/KeyEvent.d.ts.map +0 -1
  195. package/esm/manager/KeyEvent.js +0 -51
  196. package/esm/manager/KeyEvent.js.map +0 -1
  197. package/esm/manager/OrderCommand.d.ts.map +0 -1
  198. package/esm/manager/OrderCommand.js +0 -28
  199. package/esm/manager/OrderCommand.js.map +0 -1
  200. package/esm/manager/PointerEvent.d.ts +0 -70
  201. package/esm/manager/PointerEvent.d.ts.map +0 -1
  202. package/esm/manager/PointerEvent.js +0 -169
  203. package/esm/manager/PointerEvent.js.map +0 -1
  204. package/esm/manager/SceneCommand.d.ts.map +0 -1
  205. package/esm/manager/SceneCommand.js +0 -85
  206. package/esm/manager/SceneCommand.js.map +0 -1
  207. package/esm/manager/Selection.d.ts.map +0 -1
  208. package/esm/manager/Selection.js +0 -299
  209. package/esm/manager/Selection.js.map +0 -1
  210. package/esm/manager/TransformCommand.d.ts.map +0 -1
  211. package/esm/manager/TransformCommand.js +0 -29
  212. package/esm/manager/TransformCommand.js.map +0 -1
  213. package/esm/manager/index.d.ts +0 -9
  214. package/esm/manager/index.d.ts.map +0 -1
  215. package/esm/manager/index.js +0 -9
  216. package/esm/manager/index.js.map +0 -1
  217. package/esm/serializer/index.d.ts +0 -2
  218. package/esm/serializer/index.d.ts.map +0 -1
  219. package/esm/serializer/index.js +0 -2
  220. package/esm/serializer/index.js.map +0 -1
  221. package/esm/serializer/serializer.d.ts +0 -54
  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.map +0 -1
  276. package/esm/storage/defaultStorage.js +0 -237
  277. package/esm/storage/defaultStorage.js.map +0 -1
  278. package/esm/storage/dexie-primary-key.d.ts.map +0 -1
  279. package/esm/storage/dexie-primary-key.js +0 -81
  280. package/esm/storage/dexie-primary-key.js.map +0 -1
  281. package/esm/storage/index.d.ts +0 -3
  282. package/esm/storage/index.d.ts.map +0 -1
  283. package/esm/storage/index.js +0 -3
  284. package/esm/storage/index.js.map +0 -1
  285. package/esm/storage/storage.d.ts.map +0 -1
  286. package/esm/storage/storage.js +0 -44
  287. package/esm/storage/storage.js.map +0 -1
  288. package/esm/util/camera/camera.d.ts +0 -19
  289. package/esm/util/camera/camera.d.ts.map +0 -1
  290. package/esm/util/camera/camera.js +0 -75
  291. package/esm/util/camera/camera.js.map +0 -1
  292. package/esm/util/camera/index.d.ts +0 -2
  293. package/esm/util/camera/index.d.ts.map +0 -1
  294. package/esm/util/camera/index.js +0 -2
  295. package/esm/util/camera/index.js.map +0 -1
  296. package/esm/util/checks.d.ts.map +0 -1
  297. package/esm/util/checks.js +0 -36
  298. package/esm/util/checks.js.map +0 -1
  299. package/esm/util/clipboard.d.ts.map +0 -1
  300. package/esm/util/clipboard.js +0 -146
  301. package/esm/util/clipboard.js.map +0 -1
  302. package/esm/util/color.d.ts.map +0 -1
  303. package/esm/util/color.js +0 -8
  304. package/esm/util/color.js.map +0 -1
  305. package/esm/util/customEventType.d.ts.map +0 -1
  306. package/esm/util/customEventType.js +0 -35
  307. package/esm/util/customEventType.js.map +0 -1
  308. package/esm/util/files.d.ts.map +0 -1
  309. package/esm/util/files.js +0 -182
  310. package/esm/util/files.js.map +0 -1
  311. package/esm/util/handles.d.ts.map +0 -1
  312. package/esm/util/handles.js +0 -16
  313. package/esm/util/handles.js.map +0 -1
  314. package/esm/util/index.d.ts +0 -11
  315. package/esm/util/index.d.ts.map +0 -1
  316. package/esm/util/index.js +0 -11
  317. package/esm/util/index.js.map +0 -1
  318. package/esm/util/performance.d.ts.map +0 -1
  319. package/esm/util/performance.js +0 -7
  320. package/esm/util/performance.js.map +0 -1
  321. package/esm/util/shaders.d.ts.map +0 -1
  322. package/esm/util/shaders.js +0 -30
  323. package/esm/util/shaders.js.map +0 -1
  324. package/esm/util/webgl/index.d.ts +0 -3
  325. package/esm/util/webgl/index.d.ts.map +0 -1
  326. package/esm/util/webgl/index.js +0 -3
  327. package/esm/util/webgl/index.js.map +0 -1
  328. package/esm/util/webgl/m3.d.ts.map +0 -1
  329. package/esm/util/webgl/m3.js +0 -98
  330. package/esm/util/webgl/m3.js.map +0 -1
  331. package/esm/util/webgl/uniform.d.ts.map +0 -1
  332. package/esm/util/webgl/uniform.js +0 -18
  333. package/esm/util/webgl/uniform.js.map +0 -1
  334. package/lib/API.d.ts +0 -21
  335. package/lib/API.d.ts.map +0 -1
  336. package/lib/API.js +0 -78
  337. package/lib/API.js.map +0 -1
  338. package/lib/Canvas.d.ts.map +0 -1
  339. package/lib/Canvas.js +0 -376
  340. package/lib/Canvas.js.map +0 -1
  341. package/lib/Component.d.ts +0 -128
  342. package/lib/Component.d.ts.map +0 -1
  343. package/lib/Component.js +0 -617
  344. package/lib/Component.js.map +0 -1
  345. package/lib/bounding/AABB.d.ts +0 -10
  346. package/lib/bounding/AABB.d.ts.map +0 -1
  347. package/lib/bounding/AABB.js +0 -23
  348. package/lib/bounding/AABB.js.map +0 -1
  349. package/lib/bounding/BoundingBox.d.ts.map +0 -1
  350. package/lib/bounding/BoundingBox.js +0 -304
  351. package/lib/bounding/BoundingBox.js.map +0 -1
  352. package/lib/bounding/Marquee.d.ts +0 -28
  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 -377
  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 +0 -29
  369. package/lib/camera/Camera.d.ts.map +0 -1
  370. package/lib/camera/Camera.js +0 -75
  371. package/lib/camera/Camera.js.map +0 -1
  372. package/lib/camera/index.d.ts +0 -2
  373. package/lib/camera/index.d.ts.map +0 -1
  374. package/lib/camera/index.js +0 -18
  375. package/lib/camera/index.js.map +0 -1
  376. package/lib/contextMenu/ContextMenu.d.ts +0 -57
  377. package/lib/contextMenu/ContextMenu.d.ts.map +0 -1
  378. package/lib/contextMenu/ContextMenu.js +0 -124
  379. package/lib/contextMenu/ContextMenu.js.map +0 -1
  380. package/lib/contextMenu/Interaction.d.ts +0 -22
  381. package/lib/contextMenu/Interaction.d.ts.map +0 -1
  382. package/lib/contextMenu/Interaction.js +0 -265
  383. package/lib/contextMenu/Interaction.js.map +0 -1
  384. package/lib/contextMenu/index.d.ts +0 -3
  385. package/lib/contextMenu/index.d.ts.map +0 -1
  386. package/lib/contextMenu/index.js +0 -19
  387. package/lib/contextMenu/index.js.map +0 -1
  388. package/lib/history/history.d.ts +0 -29
  389. package/lib/history/history.d.ts.map +0 -1
  390. package/lib/history/history.js +0 -127
  391. package/lib/history/history.js.map +0 -1
  392. package/lib/history/index.d.ts +0 -2
  393. package/lib/history/index.d.ts.map +0 -1
  394. package/lib/history/index.js +0 -18
  395. package/lib/history/index.js.map +0 -1
  396. package/lib/index.d.ts +0 -5
  397. package/lib/index.d.ts.map +0 -1
  398. package/lib/index.js +0 -21
  399. package/lib/index.js.map +0 -1
  400. package/lib/loader/Interaction.d.ts +0 -4
  401. package/lib/loader/Interaction.d.ts.map +0 -1
  402. package/lib/loader/Interaction.js +0 -21
  403. package/lib/loader/Interaction.js.map +0 -1
  404. package/lib/loader/Loader.d.ts +0 -19
  405. package/lib/loader/Loader.d.ts.map +0 -1
  406. package/lib/loader/Loader.js +0 -53
  407. package/lib/loader/Loader.js.map +0 -1
  408. package/lib/loader/index.d.ts +0 -3
  409. package/lib/loader/index.d.ts.map +0 -1
  410. package/lib/loader/index.js +0 -19
  411. package/lib/loader/index.js.map +0 -1
  412. package/lib/manager/ContextMenu.d.ts.map +0 -1
  413. package/lib/manager/ContextMenu.js +0 -37
  414. package/lib/manager/ContextMenu.js.map +0 -1
  415. package/lib/manager/FlipCommand.d.ts +0 -18
  416. package/lib/manager/FlipCommand.d.ts.map +0 -1
  417. package/lib/manager/FlipCommand.js +0 -39
  418. package/lib/manager/FlipCommand.js.map +0 -1
  419. package/lib/manager/KeyEvent.d.ts +0 -16
  420. package/lib/manager/KeyEvent.d.ts.map +0 -1
  421. package/lib/manager/KeyEvent.js +0 -55
  422. package/lib/manager/KeyEvent.js.map +0 -1
  423. package/lib/manager/OrderCommand.d.ts +0 -17
  424. package/lib/manager/OrderCommand.d.ts.map +0 -1
  425. package/lib/manager/OrderCommand.js +0 -32
  426. package/lib/manager/OrderCommand.js.map +0 -1
  427. package/lib/manager/PointerEvent.d.ts.map +0 -1
  428. package/lib/manager/PointerEvent.js +0 -173
  429. package/lib/manager/PointerEvent.js.map +0 -1
  430. package/lib/manager/SceneCommand.d.ts +0 -18
  431. package/lib/manager/SceneCommand.d.ts.map +0 -1
  432. package/lib/manager/SceneCommand.js +0 -91
  433. package/lib/manager/SceneCommand.js.map +0 -1
  434. package/lib/manager/Selection.d.ts +0 -62
  435. package/lib/manager/Selection.d.ts.map +0 -1
  436. package/lib/manager/Selection.js +0 -303
  437. package/lib/manager/Selection.js.map +0 -1
  438. package/lib/manager/TransformCommand.d.ts +0 -20
  439. package/lib/manager/TransformCommand.d.ts.map +0 -1
  440. package/lib/manager/TransformCommand.js +0 -33
  441. package/lib/manager/TransformCommand.js.map +0 -1
  442. package/lib/manager/index.d.ts +0 -9
  443. package/lib/manager/index.d.ts.map +0 -1
  444. package/lib/manager/index.js +0 -25
  445. package/lib/manager/index.js.map +0 -1
  446. package/lib/serializer/index.d.ts +0 -2
  447. package/lib/serializer/index.d.ts.map +0 -1
  448. package/lib/serializer/index.js +0 -18
  449. package/lib/serializer/index.js.map +0 -1
  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 +0 -34
  512. package/lib/storage/defaultStorage.d.ts.map +0 -1
  513. package/lib/storage/defaultStorage.js +0 -246
  514. package/lib/storage/defaultStorage.js.map +0 -1
  515. package/lib/storage/dexie-primary-key.d.ts +0 -2
  516. package/lib/storage/dexie-primary-key.d.ts.map +0 -1
  517. package/lib/storage/dexie-primary-key.js +0 -86
  518. package/lib/storage/dexie-primary-key.js.map +0 -1
  519. package/lib/storage/index.d.ts +0 -3
  520. package/lib/storage/index.d.ts.map +0 -1
  521. package/lib/storage/index.js +0 -19
  522. package/lib/storage/index.js.map +0 -1
  523. package/lib/storage/storage.d.ts +0 -36
  524. package/lib/storage/storage.d.ts.map +0 -1
  525. package/lib/storage/storage.js +0 -50
  526. package/lib/storage/storage.js.map +0 -1
  527. package/lib/util/camera/camera.d.ts.map +0 -1
  528. package/lib/util/camera/camera.js +0 -87
  529. package/lib/util/camera/camera.js.map +0 -1
  530. package/lib/util/camera/index.d.ts +0 -2
  531. package/lib/util/camera/index.d.ts.map +0 -1
  532. package/lib/util/camera/index.js +0 -18
  533. package/lib/util/camera/index.js.map +0 -1
  534. package/lib/util/checks.d.ts +0 -11
  535. package/lib/util/checks.d.ts.map +0 -1
  536. package/lib/util/checks.js +0 -49
  537. package/lib/util/checks.js.map +0 -1
  538. package/lib/util/clipboard.d.ts +0 -7
  539. package/lib/util/clipboard.d.ts.map +0 -1
  540. package/lib/util/clipboard.js +0 -152
  541. package/lib/util/clipboard.js.map +0 -1
  542. package/lib/util/color.d.ts +0 -4
  543. package/lib/util/color.d.ts.map +0 -1
  544. package/lib/util/color.js +0 -11
  545. package/lib/util/color.js.map +0 -1
  546. package/lib/util/customEventType.d.ts +0 -35
  547. package/lib/util/customEventType.d.ts.map +0 -1
  548. package/lib/util/customEventType.js +0 -38
  549. package/lib/util/customEventType.js.map +0 -1
  550. package/lib/util/files.d.ts +0 -19
  551. package/lib/util/files.d.ts.map +0 -1
  552. package/lib/util/files.js +0 -193
  553. package/lib/util/files.js.map +0 -1
  554. package/lib/util/handles.d.ts +0 -10
  555. package/lib/util/handles.d.ts.map +0 -1
  556. package/lib/util/handles.js +0 -20
  557. package/lib/util/handles.js.map +0 -1
  558. package/lib/util/index.d.ts +0 -11
  559. package/lib/util/index.d.ts.map +0 -1
  560. package/lib/util/index.js +0 -27
  561. package/lib/util/index.js.map +0 -1
  562. package/lib/util/performance.d.ts +0 -2
  563. package/lib/util/performance.d.ts.map +0 -1
  564. package/lib/util/performance.js +0 -10
  565. package/lib/util/performance.js.map +0 -1
  566. package/lib/util/shaders.d.ts +0 -2
  567. package/lib/util/shaders.d.ts.map +0 -1
  568. package/lib/util/shaders.js +0 -33
  569. package/lib/util/shaders.js.map +0 -1
  570. package/lib/util/webgl/index.d.ts +0 -3
  571. package/lib/util/webgl/index.d.ts.map +0 -1
  572. package/lib/util/webgl/index.js +0 -19
  573. package/lib/util/webgl/index.js.map +0 -1
  574. package/lib/util/webgl/m3.d.ts +0 -11
  575. package/lib/util/webgl/m3.d.ts.map +0 -1
  576. package/lib/util/webgl/m3.js +0 -101
  577. package/lib/util/webgl/m3.js.map +0 -1
  578. package/lib/util/webgl/uniform.d.ts +0 -5
  579. package/lib/util/webgl/uniform.d.ts.map +0 -1
  580. package/lib/util/webgl/uniform.js +0 -21
  581. package/lib/util/webgl/uniform.js.map +0 -1
  582. /package/{esm → dist}/bounding/AABB.d.ts +0 -0
  583. /package/{esm → dist}/bounding/type.d.ts +0 -0
  584. /package/{esm → dist}/contextMenu/ContextMenu.d.ts +0 -0
  585. /package/{esm → dist}/history/history.d.ts +0 -0
  586. /package/{esm → dist}/loader/Loader.d.ts +0 -0
  587. /package/{esm → dist}/shaders/grid.d.ts +0 -0
  588. /package/{esm → dist}/shaders/img.d.ts +0 -0
  589. /package/{esm → dist}/shaders/shape.d.ts +0 -0
  590. /package/{esm → dist}/state/camera.d.ts +0 -0
  591. /package/{esm → dist}/storage/dexie-primary-key.d.ts +0 -0
  592. /package/{esm → dist}/util/checks.d.ts +0 -0
  593. /package/{esm → dist}/util/color.d.ts +0 -0
  594. /package/{esm → dist}/util/customEventType.d.ts +0 -0
  595. /package/{esm → dist}/util/handles.d.ts +0 -0
  596. /package/{esm → dist}/util/performance.d.ts +0 -0
  597. /package/{esm → dist}/util/shaders.d.ts +0 -0
  598. /package/{esm → dist}/util/webgl/m3.d.ts +0 -0
  599. /package/{esm → dist}/util/webgl/uniform.d.ts +0 -0
@@ -1,98 +0,0 @@
1
- export const m3 = {
2
- identity: function () {
3
- return [1, 0, 0, 0, 1, 0, 0, 0, 1];
4
- },
5
- translation: function (tx, ty) {
6
- return [1, 0, 0, 0, 1, 0, tx, ty, 1];
7
- },
8
- rotation: function (angleInRadians) {
9
- var c = Math.cos(angleInRadians);
10
- var s = Math.sin(angleInRadians);
11
- return [c, -s, 0, s, c, 0, 0, 0, 1];
12
- },
13
- scaling: function (sx, sy) {
14
- return [sx, 0, 0, 0, sy, 0, 0, 0, 1];
15
- },
16
- multiply: function (a, b) {
17
- var a00 = a[0 * 3 + 0];
18
- var a01 = a[0 * 3 + 1];
19
- var a02 = a[0 * 3 + 2];
20
- var a10 = a[1 * 3 + 0];
21
- var a11 = a[1 * 3 + 1];
22
- var a12 = a[1 * 3 + 2];
23
- var a20 = a[2 * 3 + 0];
24
- var a21 = a[2 * 3 + 1];
25
- var a22 = a[2 * 3 + 2];
26
- var b00 = b[0 * 3 + 0];
27
- var b01 = b[0 * 3 + 1];
28
- var b02 = b[0 * 3 + 2];
29
- var b10 = b[1 * 3 + 0];
30
- var b11 = b[1 * 3 + 1];
31
- var b12 = b[1 * 3 + 2];
32
- var b20 = b[2 * 3 + 0];
33
- var b21 = b[2 * 3 + 1];
34
- var b22 = b[2 * 3 + 2];
35
- return [
36
- b00 * a00 + b01 * a10 + b02 * a20,
37
- b00 * a01 + b01 * a11 + b02 * a21,
38
- b00 * a02 + b01 * a12 + b02 * a22,
39
- b10 * a00 + b11 * a10 + b12 * a20,
40
- b10 * a01 + b11 * a11 + b12 * a21,
41
- b10 * a02 + b11 * a12 + b12 * a22,
42
- b20 * a00 + b21 * a10 + b22 * a20,
43
- b20 * a01 + b21 * a11 + b22 * a21,
44
- b20 * a02 + b21 * a12 + b22 * a22,
45
- ];
46
- },
47
- inverse(matrix) {
48
- const dst = [9];
49
- const m00 = matrix[0 * 3 + 0];
50
- const m01 = matrix[0 * 3 + 1];
51
- const m02 = matrix[0 * 3 + 2];
52
- const m10 = matrix[1 * 3 + 0];
53
- const m11 = matrix[1 * 3 + 1];
54
- const m12 = matrix[1 * 3 + 2];
55
- const m20 = matrix[2 * 3 + 0];
56
- const m21 = matrix[2 * 3 + 1];
57
- const m22 = matrix[2 * 3 + 2];
58
- const b01 = m22 * m11 - m12 * m21;
59
- const b11 = -m22 * m10 + m12 * m20;
60
- const b21 = m21 * m10 - m11 * m20;
61
- const det = m00 * b01 + m01 * b11 + m02 * b21;
62
- const invDet = 1.0 / det;
63
- dst[0] = b01 * invDet;
64
- dst[1] = (-m22 * m01 + m02 * m21) * invDet;
65
- dst[2] = (m12 * m01 - m02 * m11) * invDet;
66
- dst[3] = b11 * invDet;
67
- dst[4] = (m22 * m00 - m02 * m20) * invDet;
68
- dst[5] = (-m12 * m00 + m02 * m10) * invDet;
69
- dst[6] = b21 * invDet;
70
- dst[7] = (-m21 * m00 + m01 * m20) * invDet;
71
- dst[8] = (m11 * m00 - m01 * m10) * invDet;
72
- return dst;
73
- },
74
- projection(width, height) {
75
- const dst = [9];
76
- // Note: This matrix flips the Y axis so 0 is at the top.
77
- dst[0] = 2 / width;
78
- dst[1] = 0;
79
- dst[2] = 0;
80
- dst[3] = 0;
81
- dst[4] = -2 / height;
82
- dst[5] = 0;
83
- dst[6] = -1;
84
- dst[7] = 1;
85
- dst[8] = 1;
86
- return dst;
87
- },
88
- transformPoint(m, v) {
89
- var v0 = v[0];
90
- var v1 = v[1];
91
- var d = v0 * m[0 * 3 + 2] + v1 * m[1 * 3 + 2] + m[2 * 3 + 2];
92
- return [
93
- (v0 * m[0 * 3 + 0] + v1 * m[1 * 3 + 0] + m[2 * 3 + 0]) / d,
94
- (v0 * m[0 * 3 + 1] + v1 * m[1 * 3 + 1] + m[2 * 3 + 1]) / d,
95
- ];
96
- },
97
- };
98
- //# sourceMappingURL=m3.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"m3.js","sourceRoot":"src/","sources":["util/webgl/m3.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,QAAQ,EAAE;QACR,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,WAAW,EAAE,UAAU,EAAU,EAAE,EAAU;QAC3C,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,QAAQ,EAAE,UAAU,cAAsB;QACxC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACjC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,EAAE,UAAU,EAAU,EAAE,EAAU;QACvC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,QAAQ,EAAE,UAAU,CAAW,EAAE,CAAW;QAC1C,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,OAAO;YACL,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;YACjC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;YACjC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;YACjC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;YACjC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;YACjC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG;YACjC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"uniform.d.ts","sourceRoot":"src/","sources":["util/webgl/uniform.ts"],"names":[],"mappings":"AAAA,KAAK,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAC9C,KAAK,WAAW,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAC;AAErD,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,qBAAqB,EACzB,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,WAAW,YAME,MAAM,UAAU,MAAM,sBAItB,MAAM,EAAE,WAQ5B"}
@@ -1,18 +0,0 @@
1
- export function createUniformsSetters(gl, program, name, type) {
2
- const location = gl.getUniformLocation(program, `u_${name}`);
3
- switch (name) {
4
- case "resolution":
5
- return (width, height) => {
6
- gl.uniform2f(location, width, height);
7
- };
8
- case "color":
9
- return (color) => {
10
- gl.uniform4fv(location, color);
11
- };
12
- case "matrix":
13
- return (matrix) => {
14
- gl.uniformMatrix3fv(location, false, matrix);
15
- };
16
- }
17
- }
18
- //# sourceMappingURL=uniform.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uniform.js","sourceRoot":"src/","sources":["util/webgl/uniform.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,qBAAqB,CACnC,EAAyB,EACzB,OAAqB,EACrB,IAAiB,EACjB,IAAiB;IAEjB,MAAM,QAAQ,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAE7D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY;YACf,OAAO,CAAC,KAAa,EAAE,MAAc,EAAE,EAAE;gBACvC,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACxC,CAAC,CAAC;QACJ,KAAK,OAAO;YACV,OAAO,CAAC,KAAe,EAAE,EAAE;gBACzB,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO,CAAC,MAAmB,EAAE,EAAE;gBAC7B,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC,CAAC;IACN,CAAC;AACH,CAAC"}
package/lib/API.d.ts DELETED
@@ -1,21 +0,0 @@
1
- import { CanvasStorage } from "./storage";
2
- import { InfiniteCanvasElement } from "./Component";
3
- export declare class InfiniteCanvasAPI {
4
- private el;
5
- constructor(el: InfiniteCanvasElement);
6
- static forElement(selectorOrElement: string | InfiniteCanvasElement): Promise<InfiniteCanvasAPI>;
7
- /**
8
- * Without assigning storage, the canvas will not save any data
9
- * @param storage
10
- * @param saveFrequency How often auto save occurs in ms
11
- */
12
- assignCanvasStorage(storage: CanvasStorage, saveFrequency?: number): this;
13
- zoomIn(): Promise<void>;
14
- zoomOut(): Promise<void>;
15
- toggleMode(): Promise<void>;
16
- addImageFromLocal(fileList: FileList): Promise<void>;
17
- exportCanvas(filename?: string): Promise<void>;
18
- importCanvas(fileList: FileList): Promise<void>;
19
- clearCanvas(): Promise<void>;
20
- }
21
- //# sourceMappingURL=API.d.ts.map
package/lib/API.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"API.d.ts","sourceRoot":"src/","sources":["API.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,EAAE,CAAwB;gBAEtB,EAAE,EAAE,qBAAqB;WAcxB,UAAU,CACrB,iBAAiB,EAAE,MAAM,GAAG,qBAAqB,GAChD,OAAO,CAAC,iBAAiB,CAAC;IAmB7B;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,GAAE,MAAa;IAKlE,MAAM;IAKN,OAAO;IAIP,UAAU;IAIV,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAepC,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM;IAI9B,YAAY,CAAC,QAAQ,EAAE,QAAQ;IAK/B,WAAW;CAGlB"}
package/lib/API.js DELETED
@@ -1,78 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InfiniteCanvasAPI = void 0;
4
- class InfiniteCanvasAPI {
5
- constructor(el) {
6
- if (!el)
7
- throw new Error("InfiniteCanvasElement is required");
8
- this.el = el;
9
- this.assignCanvasStorage = this.assignCanvasStorage.bind(this);
10
- this.zoomIn = this.zoomIn.bind(this);
11
- this.zoomOut = this.zoomOut.bind(this);
12
- this.toggleMode = this.toggleMode.bind(this);
13
- this.addImageFromLocal = this.addImageFromLocal.bind(this);
14
- this.exportCanvas = this.exportCanvas.bind(this);
15
- this.importCanvas = this.importCanvas.bind(this);
16
- this.clearCanvas = this.clearCanvas.bind(this);
17
- }
18
- static async forElement(selectorOrElement) {
19
- let el;
20
- if (typeof selectorOrElement === "string") {
21
- await customElements.whenDefined("infinite-canvas");
22
- el = document.querySelector(selectorOrElement);
23
- }
24
- else {
25
- el = selectorOrElement;
26
- }
27
- if (!el)
28
- throw new Error("infinite-canvas element not found");
29
- if (!el.canvas) {
30
- await new Promise((res) => el.addEventListener("load", () => res(), { once: true }));
31
- }
32
- return new InfiniteCanvasAPI(el);
33
- }
34
- /**
35
- * Without assigning storage, the canvas will not save any data
36
- * @param storage
37
- * @param saveFrequency How often auto save occurs in ms
38
- */
39
- assignCanvasStorage(storage, saveFrequency = 3000) {
40
- this.el.assignCanvasStorage(storage, saveFrequency);
41
- return this;
42
- }
43
- async zoomIn() {
44
- console.log("zooming");
45
- this.el.zoomIn();
46
- }
47
- async zoomOut() {
48
- this.el.zoomOut();
49
- }
50
- async toggleMode() {
51
- this.el.togglePointerMode();
52
- }
53
- async addImageFromLocal(fileList) {
54
- // Validate all files are images before proceeding
55
- if (!fileList || fileList.length === 0)
56
- return;
57
- for (let i = 0; i < fileList.length; i++) {
58
- const file = fileList[i];
59
- if (!file || !file.type || !file.type.startsWith("image/")) {
60
- throw new Error("Only specific image files are supported. Please select image files only.");
61
- }
62
- }
63
- await this.el.addImages(fileList);
64
- }
65
- async exportCanvas(filename) {
66
- this.el.exportCanvas(filename);
67
- }
68
- async importCanvas(fileList) {
69
- if (!fileList || fileList.length !== 1)
70
- return;
71
- await this.el.importCanvas(fileList);
72
- }
73
- async clearCanvas() {
74
- this.el.clearCanvas();
75
- }
76
- }
77
- exports.InfiniteCanvasAPI = InfiniteCanvasAPI;
78
- //# sourceMappingURL=API.js.map
package/lib/API.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"API.js","sourceRoot":"src/","sources":["API.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Canvas.d.ts","sourceRoot":"src/","sources":["Canvas.ts"],"names":[],"mappings":"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"}
package/lib/Canvas.js DELETED
@@ -1,376 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Canvas = void 0;
4
- const util_1 = require("./util");
5
- const shaders_1 = require("./shaders");
6
- const shapes_1 = require("./shapes");
7
- const manager_1 = require("./manager");
8
- const camera_1 = require("./camera");
9
- const state_1 = require("./state");
10
- const serializer_1 = require("./serializer");
11
- const bounding_1 = require("./bounding");
12
- class Canvas extends shapes_1.Renderable {
13
- #canvas;
14
- #eventHub;
15
- #history;
16
- #camera;
17
- #gl;
18
- #basicShapeProgram;
19
- #imageProgram;
20
- #gridProgram;
21
- #grid;
22
- #isGlobalClick;
23
- #selectionManager;
24
- #pointerEventManager;
25
- #keyPressManager;
26
- #contextMenuManager;
27
- // Call this whenever children/layers/z-order change
28
- markOrderDirty() {
29
- this.orderDirty = true;
30
- }
31
- get gl() {
32
- return this.#gl;
33
- }
34
- get grid() {
35
- return this.#grid;
36
- }
37
- get history() {
38
- return this.#history;
39
- }
40
- get eventHub() {
41
- return this.#eventHub;
42
- }
43
- get pointerEventManager() {
44
- return this.#pointerEventManager;
45
- }
46
- get selectionManager() {
47
- return this.#selectionManager;
48
- }
49
- get contextMenuManager() {
50
- return this.#contextMenuManager;
51
- }
52
- get canvas() {
53
- return this.#canvas;
54
- }
55
- get camera() {
56
- return this.#camera;
57
- }
58
- get isGlobalClick() {
59
- return this.#isGlobalClick;
60
- }
61
- set isGlobalClick(val) {
62
- this.#isGlobalClick = val;
63
- }
64
- get basicShapeProgram() {
65
- return this.#basicShapeProgram;
66
- }
67
- constructor(canvas, history, eventHub, writeToStorage, saveImgFileToStorage, getContainerDimension) {
68
- super();
69
- this.#isGlobalClick = true;
70
- this.orderDirty = true;
71
- this.renderList = [];
72
- this.#canvas = canvas;
73
- this.#eventHub = eventHub;
74
- this.#history = history;
75
- this.#grid = new shapes_1.Grid();
76
- this.#gl = canvas.getContext("webgl", {
77
- alpha: true,
78
- premultipliedAlpha: false,
79
- });
80
- this.#gl.enable(this.#gl.BLEND);
81
- this.#gl.blendFunc(this.#gl.SRC_ALPHA, this.#gl.ONE_MINUS_SRC_ALPHA);
82
- this.#gl.getExtension("OES_standard_derivatives"); // required to enable fwidth
83
- this.#gl.enable(this.#gl.DEPTH_TEST);
84
- this.#gl.depthFunc(this.#gl.LEQUAL);
85
- this.#basicShapeProgram = (0, util_1.createProgram)(this.#gl, shaders_1.shapeVert, shaders_1.shapeFrag);
86
- this.#imageProgram = (0, util_1.createProgram)(this.#gl, shaders_1.imageVert, shaders_1.imageFrag);
87
- this.#gridProgram = (0, util_1.createProgram)(this.#gl, shaders_1.gridVert, shaders_1.gridFrag);
88
- this.writeToStorage = writeToStorage;
89
- this.saveImgFileToStorage = saveImgFileToStorage;
90
- this.getContainerDimension = getContainerDimension;
91
- this.engine = this.engine.bind(this);
92
- this.getBoundingClientRect = this.getBoundingClientRect.bind(this);
93
- this.appendChild = this.appendChild.bind(this);
94
- this.addImageToCanvas = this.addImageToCanvas.bind(this);
95
- this.setShapeZOrder = this.setShapeZOrder.bind(this);
96
- this.toggleGrid = this.toggleGrid.bind(this);
97
- this.changeMode = this.changeMode.bind(this);
98
- this.getSelected = this.getSelected.bind(this);
99
- this.updateZoomByFixedAmount = this.updateZoomByFixedAmount.bind(this);
100
- this.assignEventListener = this.assignEventListener.bind(this);
101
- this.getWorldsCoordsFromCanvas = (x, y) => (0, util_1.getWorldCoords)(x, y, this);
102
- // marquee coordinates are calculated based on viewport, so we need to adjust it by camera viewport spawn point
103
- const getMarqueeCoords = (x, y) => (0, util_1.getWorldCoords)(x + this.camera.viewportX, y + this.camera.viewportY, this);
104
- this.exportState = this.exportState.bind(this);
105
- this.importState = this.importState.bind(this);
106
- this.clearChildren = this.clearChildren.bind(this);
107
- this.#selectionManager = new manager_1.SelectionManager(history, eventHub, this.gl, this.#basicShapeProgram, () => this.worldMatrix, () => this.children, this.getWorldsCoordsFromCanvas, getMarqueeCoords);
108
- const cameraState = new state_1.CameraState({});
109
- this.#camera = new camera_1.Camera(cameraState, this.setWorldMatrix, this.updateWorldMatrix, this.getWorldsCoordsFromCanvas);
110
- this.#keyPressManager = new manager_1.KeyEventManager(history, eventHub, () => this.selectionManager.deleteSelected(this), this.assignEventListener);
111
- this.#contextMenuManager = new manager_1.ContextMenuManager(eventHub, this.selectionManager.isMultiBoundingBoxHit, this.selectionManager.isBoundingBoxHit, this.getWorldsCoordsFromCanvas, this.assignEventListener);
112
- const pointerEventState = new state_1.PointerEventState();
113
- const pointerManagerDeps = {
114
- history,
115
- eventHub,
116
- state: pointerEventState,
117
- isContextMenuActive: () => this.#contextMenuManager.isActive,
118
- getSelected: () => this.#selectionManager.selected,
119
- getChildren: () => this.children,
120
- getWorldMatrix: () => this.worldMatrix,
121
- getCanvasGlobalClick: () => this.isGlobalClick,
122
- setCanvasGlobalClick: (val) => (this.isGlobalClick = val),
123
- getWorldCoords: this.getWorldsCoordsFromCanvas,
124
- updateCameraPos: this.camera.updateCameraPos,
125
- onWheel: this.camera.onWheel,
126
- setCursorStyle: (val) => (canvas.style.cursor = val),
127
- paste: (x, y) => (0, util_1.paste)(x, y, this, history),
128
- assignEventListener: this.assignEventListener,
129
- closeMarquee: this.#selectionManager.clearMarquee,
130
- selectionPointerMove: (x, y, dx, dy, resizeDirection) => this.#selectionManager.onPointerMove(x, y, dx, dy, resizeDirection, () => this.isGlobalClick, this.camera.updateCameraPos, () => this.worldMatrix),
131
- onSelectionPointerDown: this.selectionManager.onSelectionPointerDown,
132
- checkIfSelectionHit: this.selectionManager.hitTest,
133
- addSelection: this.selectionManager.add,
134
- clearSelection: this.selectionManager.clear,
135
- isSelection: this.selectionManager.isRectSelected,
136
- hitTestAdjustedCorner: this.selectionManager.hitTestAdjustedCorner,
137
- };
138
- this.#pointerEventManager = new manager_1.PointerEventManager(pointerManagerDeps);
139
- this.#eventHub.on("save", this.writeToStorage);
140
- }
141
- engine() {
142
- return this;
143
- }
144
- get totalNumberOfChildren() {
145
- return this.children.length;
146
- }
147
- get numberOfChildrenRendered() {
148
- return this.renderList.length;
149
- }
150
- appendChild(child) {
151
- super.appendChild(child);
152
- if (child instanceof shapes_1.Shape) {
153
- const orders = this.children.map((s) => s.renderOrder);
154
- const maxOrder = orders.length ? Math.max(...orders) : 0;
155
- child.renderOrder = maxOrder + 1;
156
- }
157
- this.markOrderDirty();
158
- return child;
159
- }
160
- removeChild(child) {
161
- this.state.removeChild(child);
162
- if (this.#selectionManager) {
163
- this.#selectionManager.remove([child]);
164
- }
165
- child.destroy();
166
- this.markOrderDirty();
167
- }
168
- getChild(id) {
169
- return this.state.getChild(id);
170
- }
171
- updateWorldMatrix() {
172
- this.#grid.updateWorldMatrix(this.worldMatrix);
173
- this.children.forEach((child) => {
174
- child.updateWorldMatrix(this.worldMatrix);
175
- });
176
- this.#selectionManager.update();
177
- }
178
- render() {
179
- this.#gl.clearColor(0, 0, 0, 0);
180
- this.#gl.clear(this.#gl.COLOR_BUFFER_BIT | this.#gl.DEPTH_BUFFER_BIT);
181
- this.#gl.viewport(0, 0, this.#gl.canvas.width, this.#gl.canvas.height);
182
- const parentBoundingBox = this.canvas.parentElement.getBoundingClientRect();
183
- this.camera.setViewPortDimension(parentBoundingBox.width, parentBoundingBox.height);
184
- this.#gl.useProgram(this.#gridProgram);
185
- const uZGrid = this.#gl.getUniformLocation(this.#gridProgram, "u_z");
186
- this.#gl.uniform1f(uZGrid, 0.0);
187
- this.#grid.render(this.#gl, this.#gridProgram);
188
- const cameraBoundingBox = this.camera.getBoundingBox();
189
- let totalRenderable = 0;
190
- let rendered = 0;
191
- this.renderList = [];
192
- for (const renderable of this.children) {
193
- totalRenderable++;
194
- if (!bounding_1.AABB.isColliding(cameraBoundingBox, renderable.getBoundingBox())) {
195
- renderable.culled = true;
196
- }
197
- else {
198
- rendered++;
199
- this.renderList.push(renderable);
200
- renderable.culled = false;
201
- }
202
- }
203
- // should set low res based on what screen area it has taken up
204
- const [sww, swh] = (0, util_1.getWorldCoords)(0, 0, this);
205
- const [ww, wh] = (0, util_1.getWorldCoords)(window.screen.width, window.screen.height, this);
206
- const screenAABB = new bounding_1.AABB(sww, swh, ww, wh);
207
- this.renderList.forEach((child) => {
208
- if (child instanceof shapes_1.Img) {
209
- const useLowRes = child.determineIfLowRes(screenAABB, this.camera.state.zoom);
210
- child.setUseLowRes(useLowRes, this.gl);
211
- }
212
- });
213
- for (const renderable of this.renderList) {
214
- let program;
215
- if (renderable instanceof shapes_1.Img) {
216
- program = this.#imageProgram;
217
- }
218
- else if (renderable instanceof shapes_1.Shape) {
219
- program = this.#basicShapeProgram;
220
- }
221
- this.#gl.useProgram(program);
222
- const uZLoc = this.#gl.getUniformLocation(program, "u_z");
223
- this.#gl.uniform1f(uZLoc, renderable.getZ());
224
- renderable.render(this.#gl, program);
225
- }
226
- this.#selectionManager.render(this.#basicShapeProgram);
227
- }
228
- destroy() {
229
- // Clean up programs
230
- this.#gl.deleteProgram(this.#basicShapeProgram);
231
- this.#gl.deleteProgram(this.#imageProgram);
232
- // Clean up all renderables
233
- this.children.forEach((child) => {
234
- if ("destroy" in child) {
235
- child.destroy();
236
- }
237
- });
238
- this.clearChildren();
239
- }
240
- getDOM() {
241
- return this.#canvas;
242
- }
243
- assignEventListener(type, fn, options) {
244
- this.#canvas.addEventListener(type, fn, options);
245
- }
246
- hitTest(x, y) {
247
- this.#isGlobalClick = true;
248
- return this.#isGlobalClick;
249
- }
250
- async addImageToCanvas(src, x, y, sx = 1, sy = 1, center = false) {
251
- const newImg = new shapes_1.Img({ x: x, y: y, src, sx, sy });
252
- this.saveImgFileToStorage(src).then((id) => (newImg.fileId = id));
253
- if (center) {
254
- const preview = new Image();
255
- preview.src = !src.startsWith("data:image/png")
256
- ? await (0, util_1.convertToPNG)(src)
257
- : src;
258
- preview.onload = () => {
259
- const w = preview.naturalWidth || preview.width || 0;
260
- const h = preview.naturalHeight || preview.height || 0;
261
- if (w || h)
262
- newImg.updateTranslation(-w / 2, -h / 2);
263
- newImg.src = preview.src;
264
- this.appendChild(newImg);
265
- };
266
- }
267
- this.#eventHub.emit("save");
268
- this.#eventHub.emit(util_1.CanvasEvent.Change);
269
- return newImg;
270
- }
271
- exportState() {
272
- return (0, serializer_1.serializeCanvas)(this);
273
- }
274
- async importState(data, getFile) {
275
- return await (0, serializer_1.deserializeCanvas)(data, this, getFile);
276
- }
277
- clearChildren() {
278
- this.selectionManager.clear();
279
- this.state.clearChildren(); // should clear history?
280
- this.#history.clear();
281
- }
282
- toggleGrid() {
283
- this.#grid.changeGridType(this.#grid.gridType === shapes_1.GRID_TYPE.GRID ? shapes_1.GRID_TYPE.NONE : shapes_1.GRID_TYPE.GRID);
284
- }
285
- getSelected() {
286
- return this.#selectionManager.selected;
287
- }
288
- setShapeZOrder(toFront = true) {
289
- if (this.#selectionManager.multiBoundingBox ||
290
- this.#selectionManager.boundingBoxes.size != 1)
291
- return;
292
- const child = Array.from(this.#selectionManager.boundingBoxes)[0].target;
293
- const snapShotItem = {
294
- ref: child,
295
- start: {
296
- renderOrder: child.renderOrder,
297
- },
298
- };
299
- // Compute new renderOrder based on current scene
300
- const orders = this.children.map((s) => s.renderOrder);
301
- if (orders.length === 0) {
302
- throw new Error("Order unexpected missing.");
303
- }
304
- const maxOrder = Math.max(...orders);
305
- const minOrder = Math.min(...orders);
306
- child.renderOrder = toFront ? maxOrder + 1 : minOrder - 1;
307
- snapShotItem["end"] = {
308
- renderOrder: child.renderOrder,
309
- };
310
- this.markOrderDirty();
311
- this.#history.push((0, manager_1.makeMultiOrderCommand)([snapShotItem]));
312
- this.#eventHub.emit(util_1.CanvasEvent.Change);
313
- }
314
- changeMode() {
315
- this.#pointerEventManager.changeMode();
316
- this.#selectionManager.clear();
317
- }
318
- updateZoomByFixedAmount(direction = 1) {
319
- this.#camera.updateZoom(this.#canvas.width / 2, this.#canvas.height / 2, Math.exp(0.5 * 0.3 * direction));
320
- }
321
- getBoundingClientRect() {
322
- return this.#canvas.getBoundingClientRect();
323
- }
324
- static { this.webglStats = {
325
- buffersCreated: 0,
326
- buffersDeleted: 0,
327
- programsCreated: 0,
328
- programsDeleted: 0,
329
- texturesCreated: 0,
330
- texturesDeleted: 0,
331
- shadersCreated: 0,
332
- shadersDeleted: 0,
333
- }; }
334
- wrapWebGLContext(gl) {
335
- const originalCreateTexture = gl.createTexture.bind(gl);
336
- gl.createTexture = () => {
337
- Canvas.webglStats.texturesCreated++;
338
- console.log(`Textures created: ${Canvas.webglStats.texturesCreated}`);
339
- return originalCreateTexture();
340
- };
341
- const originalDeleteTexture = gl.deleteTexture.bind(gl);
342
- gl.deleteTexture = (texture) => {
343
- if (texture) {
344
- Canvas.webglStats.texturesDeleted++;
345
- console.log(`Textures deleted: ${Canvas.webglStats.texturesDeleted}`);
346
- }
347
- return originalDeleteTexture(texture);
348
- };
349
- const originalCreateShader = gl.createShader.bind(gl);
350
- gl.createShader = (type) => {
351
- Canvas.webglStats.shadersCreated++;
352
- console.log(`Shaders created: ${Canvas.webglStats.shadersCreated}`);
353
- return originalCreateShader(type);
354
- };
355
- const originalDeleteShader = gl.deleteShader.bind(gl);
356
- gl.deleteShader = (shader) => {
357
- if (shader) {
358
- Canvas.webglStats.shadersDeleted++;
359
- console.log(`Shaders deleted: ${Canvas.webglStats.shadersDeleted}`);
360
- }
361
- return originalDeleteShader(shader);
362
- };
363
- return gl;
364
- }
365
- static getWebGLStats() {
366
- return {
367
- ...Canvas.webglStats,
368
- buffersLeaked: Canvas.webglStats.buffersCreated - Canvas.webglStats.buffersDeleted,
369
- programsLeaked: Canvas.webglStats.programsCreated - Canvas.webglStats.programsDeleted,
370
- texturesLeaked: Canvas.webglStats.texturesCreated - Canvas.webglStats.texturesDeleted,
371
- shadersLeaked: Canvas.webglStats.shadersCreated - Canvas.webglStats.shadersDeleted,
372
- };
373
- }
374
- }
375
- exports.Canvas = Canvas;
376
- //# sourceMappingURL=Canvas.js.map
package/lib/Canvas.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"Canvas.js","sourceRoot":"src/","sources":["Canvas.ts"],"names":[],"mappings":"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"}