@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,35 +0,0 @@
1
- export declare const ContextMenuEvent: {
2
- readonly Open: "opencontextmenu";
3
- readonly Close: "closecontextmenu";
4
- };
5
- export declare const CanvasEvent: {
6
- readonly Dirty: "dirty";
7
- readonly Save: "save";
8
- readonly SelectionChanged: "selectionchanged";
9
- readonly Render: "render";
10
- readonly Resize: "resize";
11
- readonly Zoom: "zoom";
12
- readonly ModeChange: "modechange";
13
- readonly HistoryChange: "historychange";
14
- readonly PointerDown: "pointerdown";
15
- readonly PointerUp: "pointerup";
16
- readonly PointerMove: "pointermove";
17
- readonly ImageAdded: "imageadded";
18
- readonly ImageRemoved: "imageremoved";
19
- readonly Change: "statechange";
20
- };
21
- export declare const CustomClipboardEvent: {
22
- readonly Copy: "copy";
23
- readonly Cut: "cut";
24
- readonly Paste: "paste";
25
- };
26
- export declare const LoaderEvent: {
27
- readonly start: "startloading";
28
- readonly done: "completeloading";
29
- };
30
- export declare const SaveEvent: {
31
- readonly Save: "save";
32
- readonly SaveCompleted: "savecompleted";
33
- readonly SaveFailed: "savefailed";
34
- };
35
- //# sourceMappingURL=customEventType.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"customEventType.d.ts","sourceRoot":"src/","sources":["util/customEventType.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;;;CAGnB,CAAC;AAEX,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;CAed,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;CAIvB,CAAC;AAEX,eAAO,MAAM,WAAW;;;CAGd,CAAC;AAEX,eAAO,MAAM,SAAS;;;;CAIZ,CAAC"}
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SaveEvent = exports.LoaderEvent = exports.CustomClipboardEvent = exports.CanvasEvent = exports.ContextMenuEvent = void 0;
4
- exports.ContextMenuEvent = {
5
- Open: "opencontextmenu",
6
- Close: "closecontextmenu",
7
- };
8
- exports.CanvasEvent = {
9
- Dirty: "dirty",
10
- Save: "save",
11
- SelectionChanged: "selectionchanged",
12
- Render: "render",
13
- Resize: "resize",
14
- Zoom: "zoom",
15
- ModeChange: "modechange",
16
- HistoryChange: "historychange",
17
- PointerDown: "pointerdown",
18
- PointerUp: "pointerup",
19
- PointerMove: "pointermove",
20
- ImageAdded: "imageadded",
21
- ImageRemoved: "imageremoved",
22
- Change: "statechange",
23
- };
24
- exports.CustomClipboardEvent = {
25
- Copy: "copy",
26
- Cut: "cut",
27
- Paste: "paste",
28
- };
29
- exports.LoaderEvent = {
30
- start: "startloading",
31
- done: "completeloading",
32
- };
33
- exports.SaveEvent = {
34
- Save: "save",
35
- SaveCompleted: "savecompleted",
36
- SaveFailed: "savefailed",
37
- };
38
- //# sourceMappingURL=customEventType.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"customEventType.js","sourceRoot":"src/","sources":["util/customEventType.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG;IAC9B,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,kBAAkB;CACjB,CAAC;AAEE,QAAA,WAAW,GAAG;IACzB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,gBAAgB,EAAE,kBAAkB;IACpC,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,eAAe;IAC9B,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;IACxB,YAAY,EAAE,cAAc;IAC5B,MAAM,EAAE,aAAa;CACb,CAAC;AAEE,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;CACN,CAAC;AAEE,QAAA,WAAW,GAAG;IACzB,KAAK,EAAE,cAAc;IACrB,IAAI,EAAE,iBAAiB;CACf,CAAC;AAEE,QAAA,SAAS,GAAG;IACvB,IAAI,EAAE,MAAM;IACZ,aAAa,EAAE,eAAe;IAC9B,UAAU,EAAE,YAAY;CAChB,CAAC"}
@@ -1,19 +0,0 @@
1
- import { SerializedCanvas } from "../serializer";
2
- import { Img } from "../shapes";
3
- export declare function previewImage(file: File): Promise<string | ArrayBuffer>;
4
- export declare function hashStringToId(str: string): Promise<string>;
5
- /**
6
- * Extract mimetype from base64 string
7
- */
8
- export declare function getMimeType(data: string): string;
9
- export declare function addImages(files: FileList, addToCanvas: (src: string) => Promise<Img>): Promise<any[]>;
10
- export declare function downloadJSON(filename: string, data: SerializedCanvas): void;
11
- export declare function readJSONFile<T = unknown>(file: File): Promise<T>;
12
- export declare function convertToPNG(src: string, quality?: number): Promise<string>;
13
- export declare function mergeMultiImg(imgs: Img[]): Promise<string>;
14
- export declare function mergeImagesToCanvas(images: Img[]): Promise<{
15
- mergedCanvas: HTMLCanvasElement;
16
- width: number;
17
- height: number;
18
- }>;
19
- //# sourceMappingURL=files.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"files.d.ts","sourceRoot":"src/","sources":["util/files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAEhC,wBAAsB,YAAY,CAAC,IAAI,EAAE,IAAI,iCAU5C;AAiBD,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAMjE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AAED,wBAAsB,SAAS,CAC7B,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,kBAmB3C;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,QAWpE;AAED,wBAAsB,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAGtE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,SAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgBxE;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA4ChE;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,GAAG,EAAE,GACZ,OAAO,CAAC;IAAE,YAAY,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAgD7E"}
package/lib/util/files.js DELETED
@@ -1,193 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.previewImage = previewImage;
4
- exports.hashStringToId = hashStringToId;
5
- exports.getMimeType = getMimeType;
6
- exports.addImages = addImages;
7
- exports.downloadJSON = downloadJSON;
8
- exports.readJSONFile = readJSONFile;
9
- exports.convertToPNG = convertToPNG;
10
- exports.mergeMultiImg = mergeMultiImg;
11
- exports.mergeImagesToCanvas = mergeImagesToCanvas;
12
- async function previewImage(file) {
13
- return new Promise((resolve, reject) => {
14
- let reader = new FileReader();
15
- reader.onload = (e) => {
16
- resolve(e.target.result);
17
- };
18
- reader.onerror = reject;
19
- reader.readAsDataURL(file);
20
- });
21
- }
22
- const PERMISSIBLE_IMAGE_TYPES = [
23
- "image/webp",
24
- "image/png",
25
- "image/jpeg",
26
- "image/jpg",
27
- "image/svg+xml",
28
- "image/avif",
29
- "image/gif", // will be rendered as a still image
30
- "image/apng", // will be rendered as a still image
31
- ];
32
- function isPermissibleImageType(fileType) {
33
- return PERMISSIBLE_IMAGE_TYPES.includes(fileType);
34
- }
35
- async function hashStringToId(str) {
36
- const encoder = new TextEncoder();
37
- const data = encoder.encode(str);
38
- const hashBuffer = await crypto.subtle.digest("SHA-256", data);
39
- const hashArray = Array.from(new Uint8Array(hashBuffer));
40
- return hashArray.map((b) => b.toString(16).padStart(2, "0")).join("");
41
- }
42
- /**
43
- * Extract mimetype from base64 string
44
- */
45
- function getMimeType(data) {
46
- const match = /^data:([^;]+);base64,/.exec(data);
47
- return match ? match[1] : undefined;
48
- }
49
- async function addImages(files, addToCanvas) {
50
- const images = [];
51
- if (files.length > 0) {
52
- for (let i = 0; i < files.length; i++) {
53
- const file = files[i];
54
- if (isPermissibleImageType(file.type)) {
55
- try {
56
- const src = await previewImage(file);
57
- if (typeof src === "string") {
58
- images.push(await addToCanvas(src));
59
- }
60
- else
61
- console.error("Image not added");
62
- }
63
- catch {
64
- console.error("Failed to copy image.");
65
- }
66
- }
67
- }
68
- }
69
- return images;
70
- }
71
- function downloadJSON(filename, data) {
72
- const text = JSON.stringify(data, null, 2);
73
- const blob = new Blob([text], { type: "application/json" });
74
- const url = URL.createObjectURL(blob);
75
- const a = document.createElement("a");
76
- a.href = url;
77
- a.download = filename;
78
- document.body.appendChild(a);
79
- a.click();
80
- a.remove();
81
- URL.revokeObjectURL(url);
82
- }
83
- async function readJSONFile(file) {
84
- const text = await file.text();
85
- return JSON.parse(text);
86
- }
87
- function convertToPNG(src, quality = 1.0) {
88
- return new Promise((resolve, reject) => {
89
- const img = new Image();
90
- img.onload = () => {
91
- const canvas = document.createElement("canvas");
92
- canvas.width = img.width;
93
- canvas.height = img.height;
94
- const ctx = canvas.getContext("2d");
95
- ctx.clearRect(0, 0, canvas.width, canvas.height);
96
- ctx.drawImage(img, 0, 0);
97
- const pngDataUrl = canvas.toDataURL("image/png", quality);
98
- resolve(pngDataUrl);
99
- };
100
- img.onerror = reject;
101
- img.src = src;
102
- });
103
- }
104
- async function mergeMultiImg(imgs) {
105
- const startX = getSmallestImgX(imgs);
106
- const startY = getSmallestImgY(imgs);
107
- const endX = getEndX(imgs);
108
- const endY = getEndY(imgs);
109
- const canvas = document.createElement("canvas");
110
- canvas.width = endX - startX;
111
- canvas.height = endY - startY;
112
- const ctx = canvas.getContext("2d");
113
- ctx.clearRect(0, 0, canvas.width, canvas.height);
114
- // consider transformation as well
115
- const promises = imgs.map(async (img) => {
116
- return new Promise(async (resolve, reject) => {
117
- try {
118
- const innerImg = new Image();
119
- innerImg.onload = () => {
120
- ctx.drawImage(innerImg, 0, 0, img.width, img.height, img.x - startX, img.y - startY, img.width * img.sx, img.height * img.sy);
121
- resolve();
122
- };
123
- innerImg.onerror = reject;
124
- innerImg.src = img.src;
125
- }
126
- catch (err) {
127
- console.error(err);
128
- reject(err);
129
- }
130
- });
131
- });
132
- await Promise.all(promises);
133
- const data = canvas.toDataURL("image/png");
134
- return data;
135
- }
136
- async function mergeImagesToCanvas(images) {
137
- if (images.length === 0) {
138
- throw new Error("No images to merge.");
139
- }
140
- // Compute bounding box for all images
141
- let minX = Infinity, minY = Infinity, maxX = -Infinity, maxY = -Infinity;
142
- for (const img of images) {
143
- minX = Math.min(minX, img.x);
144
- minY = Math.min(minY, img.y);
145
- maxX = Math.max(maxX, img.x + img.width);
146
- maxY = Math.max(maxY, img.y + img.height);
147
- }
148
- const width = Math.ceil(maxX - minX);
149
- const height = Math.ceil(maxY - minY);
150
- // Create offscreen canvas
151
- const canvas = document.createElement("canvas");
152
- canvas.width = width;
153
- canvas.height = height;
154
- const ctx = canvas.getContext("2d");
155
- if (!ctx)
156
- throw new Error("Could not get 2D context");
157
- // Draw each image at its relative position
158
- await Promise.all(images.map((img) => {
159
- return new Promise((resolve, reject) => {
160
- const imageEl = new window.Image();
161
- imageEl.onload = () => {
162
- ctx.drawImage(imageEl, img.x - minX, img.y - minY, img.width, img.height);
163
- resolve();
164
- };
165
- imageEl.onerror = reject;
166
- imageEl.src = img.src;
167
- });
168
- }));
169
- return { mergedCanvas: canvas, width, height };
170
- }
171
- function getSmallestImgX(imgs) {
172
- return [...imgs].sort((a, b) => {
173
- return a.x - b.x;
174
- })[0].x;
175
- }
176
- function getSmallestImgY(imgs) {
177
- return [...imgs].sort((a, b) => {
178
- return a.y - b.y;
179
- })[0].y;
180
- }
181
- function getEndX(imgs) {
182
- const endImg = [...imgs].sort((a, b) => {
183
- return b.x + b.width * b.sx - (a.x + a.width * a.sx);
184
- })[0];
185
- return endImg.x + endImg.width * endImg.sx;
186
- }
187
- function getEndY(imgs) {
188
- const endImg = [...imgs].sort((a, b) => {
189
- return b.y + b.height * b.sy - (a.y + a.height * a.sy);
190
- })[0];
191
- return endImg.y + endImg.height * endImg.sy;
192
- }
193
- //# sourceMappingURL=files.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"files.js","sourceRoot":"src/","sources":["util/files.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- export declare const sides: string[];
2
- export declare const corners: string[];
3
- export type BoundingBoxCollisionType = "TOP" | "BOTTOM" | "LEFT" | "RIGHT" | "TOPRIGHT" | "TOPLEFT" | "BOTTOMRIGHT" | "BOTTOMLEFT" | "CENTER";
4
- type CornerType = "TOPLEFT" | "TOPRIGHT" | "BOTTOMLEFT" | "BOTTOMRIGHT";
5
- export declare const cornerMap: Record<CornerType, CornerType>;
6
- export declare function oppositeCorner(c: BoundingBoxCollisionType): BoundingBoxCollisionType;
7
- export declare const HANDLEPX = 8;
8
- export declare const BORDERPX = 2;
9
- export {};
10
- //# sourceMappingURL=handles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handles.d.ts","sourceRoot":"src/","sources":["util/handles.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK,UAAqC,CAAC;AAExD,eAAO,MAAM,OAAO,UAAuD,CAAC;AAE5E,MAAM,MAAM,wBAAwB,GAChC,KAAK,GACL,QAAQ,GACR,MAAM,GACN,OAAO,GACP,UAAU,GACV,SAAS,GACT,aAAa,GACb,YAAY,GACZ,QAAQ,CAAC;AAEb,KAAK,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,CAAC;AAExE,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,CAKpD,CAAC;AAEF,wBAAgB,cAAc,CAC5B,CAAC,EAAE,wBAAwB,GAC1B,wBAAwB,CAG1B;AAED,eAAO,MAAM,QAAQ,IAAI,CAAC;AAC1B,eAAO,MAAM,QAAQ,IAAI,CAAC"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BORDERPX = exports.HANDLEPX = exports.cornerMap = exports.corners = exports.sides = void 0;
4
- exports.oppositeCorner = oppositeCorner;
5
- exports.sides = ["TOP", "BOTTOM", "LEFT", "RIGHT"];
6
- exports.corners = ["TOPLEFT", "TOPRIGHT", "BOTTOMLEFT", "BOTTOMRIGHT"];
7
- exports.cornerMap = {
8
- TOPLEFT: "TOPRIGHT",
9
- TOPRIGHT: "TOPLEFT",
10
- BOTTOMLEFT: "BOTTOMRIGHT",
11
- BOTTOMRIGHT: "BOTTOMLEFT",
12
- };
13
- function oppositeCorner(c) {
14
- if (exports.cornerMap[c])
15
- return exports.cornerMap[c];
16
- return c;
17
- }
18
- exports.HANDLEPX = 8;
19
- exports.BORDERPX = 2;
20
- //# sourceMappingURL=handles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handles.js","sourceRoot":"src/","sources":["util/handles.ts"],"names":[],"mappings":";;;AAwBA,wCAKC;AA7BY,QAAA,KAAK,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAE3C,QAAA,OAAO,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;AAe/D,QAAA,SAAS,GAAmC;IACvD,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,SAAS;IACnB,UAAU,EAAE,aAAa;IACzB,WAAW,EAAE,YAAY;CAC1B,CAAC;AAEF,SAAgB,cAAc,CAC5B,CAA2B;IAE3B,IAAI,iBAAS,CAAC,CAAC,CAAC;QAAE,OAAO,iBAAS,CAAC,CAAC,CAAC,CAAC;IACtC,OAAO,CAAC,CAAC;AACX,CAAC;AAEY,QAAA,QAAQ,GAAG,CAAC,CAAC;AACb,QAAA,QAAQ,GAAG,CAAC,CAAC"}
@@ -1,11 +0,0 @@
1
- export * from "./handles";
2
- export * from "./webgl";
3
- export * from "./shaders";
4
- export * from "./camera";
5
- export * from "./checks";
6
- export * from "./files";
7
- export * from "./color";
8
- export * from "./clipboard";
9
- export * from "./customEventType";
10
- export * from "./performance";
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"src/","sources":["util/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC"}
package/lib/util/index.js DELETED
@@ -1,27 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./handles"), exports);
18
- __exportStar(require("./webgl"), exports);
19
- __exportStar(require("./shaders"), exports);
20
- __exportStar(require("./camera"), exports);
21
- __exportStar(require("./checks"), exports);
22
- __exportStar(require("./files"), exports);
23
- __exportStar(require("./color"), exports);
24
- __exportStar(require("./clipboard"), exports);
25
- __exportStar(require("./customEventType"), exports);
26
- __exportStar(require("./performance"), exports);
27
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["util/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,0CAAwB;AACxB,4CAA0B;AAC1B,2CAAyB;AACzB,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AACxB,8CAA4B;AAC5B,oDAAkC;AAClC,gDAA8B"}
@@ -1,2 +0,0 @@
1
- export declare function performanceTest<T extends any[], U>(testSubject: string, fn: (...args: T) => U | Promise<U>, args: T): Promise<U>;
2
- //# sourceMappingURL=performance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"performance.d.ts","sourceRoot":"src/","sources":["util/performance.ts"],"names":[],"mappings":"AAAA,wBAAsB,eAAe,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,EACtD,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EAClC,IAAI,EAAE,CAAC,cAMR"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.performanceTest = performanceTest;
4
- async function performanceTest(testSubject, fn, args) {
5
- const performanceStart = performance.now();
6
- const result = await fn(...args);
7
- console.log(`${testSubject} took ${performance.now() - performanceStart}ms`);
8
- return result;
9
- }
10
- //# sourceMappingURL=performance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"performance.js","sourceRoot":"src/","sources":["util/performance.ts"],"names":[],"mappings":";;AAAA,0CASC;AATM,KAAK,UAAU,eAAe,CACnC,WAAmB,EACnB,EAAkC,EAClC,IAAO;IAEP,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,gBAAgB,IAAI,CAAC,CAAC;IAC7E,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function createProgram(gl: WebGLRenderingContext, vert: string, frag: string): WebGLProgram;
2
- //# sourceMappingURL=shaders.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shaders.d.ts","sourceRoot":"src/","sources":["util/shaders.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAC3B,EAAE,EAAE,qBAAqB,EACzB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,gBAuBb"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createProgram = createProgram;
4
- function createProgram(gl, vert, frag) {
5
- const vertShader = createShader(gl, gl.VERTEX_SHADER, vert);
6
- const fragShader = createShader(gl, gl.FRAGMENT_SHADER, frag);
7
- const program = gl.createProgram();
8
- gl.attachShader(program, vertShader);
9
- gl.attachShader(program, fragShader);
10
- gl.linkProgram(program);
11
- const success = gl.getProgramParameter(program, gl.LINK_STATUS);
12
- if (!success) {
13
- gl.deleteProgram(program);
14
- gl.deleteShader(vertShader);
15
- gl.deleteShader(fragShader);
16
- throw new Error("Program was not created or the link to shaders was not successful.");
17
- }
18
- gl.detachShader(program, vertShader);
19
- gl.detachShader(program, fragShader);
20
- return program;
21
- }
22
- function createShader(gl, type, source) {
23
- const shader = gl.createShader(type);
24
- gl.shaderSource(shader, source);
25
- gl.compileShader(shader);
26
- const success = gl.getShaderParameter(shader, gl.COMPILE_STATUS);
27
- if (success) {
28
- return shader;
29
- }
30
- gl.deleteShader(shader);
31
- throw new Error("Shader was not created.");
32
- }
33
- //# sourceMappingURL=shaders.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shaders.js","sourceRoot":"src/","sources":["util/shaders.ts"],"names":[],"mappings":";;AAAA,sCA0BC;AA1BD,SAAgB,aAAa,CAC3B,EAAyB,EACzB,IAAY,EACZ,IAAY;IAEZ,MAAM,UAAU,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,EAAE,CAAC;IACnC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACrC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACrC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACxB,MAAM,OAAO,GAAG,EAAE,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;IAEhE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC1B,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAC5B,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;IACJ,CAAC;IAED,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACrC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAErC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,EAAyB,EAAE,IAAY,EAAE,MAAc;IAC3E,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACzB,MAAM,OAAO,GAAG,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC;IACjE,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAC7C,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from "./m3";
2
- export * from "./uniform";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"src/","sources":["util/webgl/index.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC"}
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./m3"), exports);
18
- __exportStar(require("./uniform"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["util/webgl/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uCAAqB;AACrB,4CAA0B"}
@@ -1,11 +0,0 @@
1
- export declare const m3: {
2
- identity: () => number[];
3
- translation: (tx: number, ty: number) => number[];
4
- rotation: (angleInRadians: number) => number[];
5
- scaling: (sx: number, sy: number) => number[];
6
- multiply: (a: number[], b: number[]) => number[];
7
- inverse(matrix: number[]): number[];
8
- projection(width: number, height: number): number[];
9
- transformPoint(m: number[], v: number[]): number[];
10
- };
11
- //# sourceMappingURL=m3.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"m3.d.ts","sourceRoot":"src/","sources":["util/webgl/m3.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE;;sBAKc,MAAM,MAAM,MAAM;+BAIT,MAAM;kBAMnB,MAAM,MAAM,MAAM;kBAIlB,MAAM,EAAE,KAAK,MAAM,EAAE;oBAgC5B,MAAM,EAAE;sBAiCN,MAAM,UAAU,MAAM;sBAiBtB,MAAM,EAAE,KAAK,MAAM,EAAE;CAUxC,CAAC"}
@@ -1,101 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.m3 = void 0;
4
- exports.m3 = {
5
- identity: function () {
6
- return [1, 0, 0, 0, 1, 0, 0, 0, 1];
7
- },
8
- translation: function (tx, ty) {
9
- return [1, 0, 0, 0, 1, 0, tx, ty, 1];
10
- },
11
- rotation: function (angleInRadians) {
12
- var c = Math.cos(angleInRadians);
13
- var s = Math.sin(angleInRadians);
14
- return [c, -s, 0, s, c, 0, 0, 0, 1];
15
- },
16
- scaling: function (sx, sy) {
17
- return [sx, 0, 0, 0, sy, 0, 0, 0, 1];
18
- },
19
- multiply: function (a, b) {
20
- var a00 = a[0 * 3 + 0];
21
- var a01 = a[0 * 3 + 1];
22
- var a02 = a[0 * 3 + 2];
23
- var a10 = a[1 * 3 + 0];
24
- var a11 = a[1 * 3 + 1];
25
- var a12 = a[1 * 3 + 2];
26
- var a20 = a[2 * 3 + 0];
27
- var a21 = a[2 * 3 + 1];
28
- var a22 = a[2 * 3 + 2];
29
- var b00 = b[0 * 3 + 0];
30
- var b01 = b[0 * 3 + 1];
31
- var b02 = b[0 * 3 + 2];
32
- var b10 = b[1 * 3 + 0];
33
- var b11 = b[1 * 3 + 1];
34
- var b12 = b[1 * 3 + 2];
35
- var b20 = b[2 * 3 + 0];
36
- var b21 = b[2 * 3 + 1];
37
- var b22 = b[2 * 3 + 2];
38
- return [
39
- b00 * a00 + b01 * a10 + b02 * a20,
40
- b00 * a01 + b01 * a11 + b02 * a21,
41
- b00 * a02 + b01 * a12 + b02 * a22,
42
- b10 * a00 + b11 * a10 + b12 * a20,
43
- b10 * a01 + b11 * a11 + b12 * a21,
44
- b10 * a02 + b11 * a12 + b12 * a22,
45
- b20 * a00 + b21 * a10 + b22 * a20,
46
- b20 * a01 + b21 * a11 + b22 * a21,
47
- b20 * a02 + b21 * a12 + b22 * a22,
48
- ];
49
- },
50
- inverse(matrix) {
51
- const dst = [9];
52
- const m00 = matrix[0 * 3 + 0];
53
- const m01 = matrix[0 * 3 + 1];
54
- const m02 = matrix[0 * 3 + 2];
55
- const m10 = matrix[1 * 3 + 0];
56
- const m11 = matrix[1 * 3 + 1];
57
- const m12 = matrix[1 * 3 + 2];
58
- const m20 = matrix[2 * 3 + 0];
59
- const m21 = matrix[2 * 3 + 1];
60
- const m22 = matrix[2 * 3 + 2];
61
- const b01 = m22 * m11 - m12 * m21;
62
- const b11 = -m22 * m10 + m12 * m20;
63
- const b21 = m21 * m10 - m11 * m20;
64
- const det = m00 * b01 + m01 * b11 + m02 * b21;
65
- const invDet = 1.0 / det;
66
- dst[0] = b01 * invDet;
67
- dst[1] = (-m22 * m01 + m02 * m21) * invDet;
68
- dst[2] = (m12 * m01 - m02 * m11) * invDet;
69
- dst[3] = b11 * invDet;
70
- dst[4] = (m22 * m00 - m02 * m20) * invDet;
71
- dst[5] = (-m12 * m00 + m02 * m10) * invDet;
72
- dst[6] = b21 * invDet;
73
- dst[7] = (-m21 * m00 + m01 * m20) * invDet;
74
- dst[8] = (m11 * m00 - m01 * m10) * invDet;
75
- return dst;
76
- },
77
- projection(width, height) {
78
- const dst = [9];
79
- // Note: This matrix flips the Y axis so 0 is at the top.
80
- dst[0] = 2 / width;
81
- dst[1] = 0;
82
- dst[2] = 0;
83
- dst[3] = 0;
84
- dst[4] = -2 / height;
85
- dst[5] = 0;
86
- dst[6] = -1;
87
- dst[7] = 1;
88
- dst[8] = 1;
89
- return dst;
90
- },
91
- transformPoint(m, v) {
92
- var v0 = v[0];
93
- var v1 = v[1];
94
- var d = v0 * m[0 * 3 + 2] + v1 * m[1 * 3 + 2] + m[2 * 3 + 2];
95
- return [
96
- (v0 * m[0 * 3 + 0] + v1 * m[1 * 3 + 0] + m[2 * 3 + 0]) / d,
97
- (v0 * m[0 * 3 + 1] + v1 * m[1 * 3 + 1] + m[2 * 3 + 1]) / d,
98
- ];
99
- },
100
- };
101
- //# sourceMappingURL=m3.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"m3.js","sourceRoot":"src/","sources":["util/webgl/m3.ts"],"names":[],"mappings":";;;AAAa,QAAA,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,GAAG;Y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"}