@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,231 +0,0 @@
1
- import { Canvas } from "../Canvas";
2
- import { Rect, Img, Grid } from "../shapes";
3
- import { hashStringToId } from "../util";
4
- /**
5
- * What should be exposed?
6
- * the images created - their position, scale and src - maintain the order they have been saved
7
- *
8
- * grid state should be tracked to decide if grid lines are there or not - TO BE IMPLEMENTED
9
- *
10
- * Should camera position be tracked
11
- *
12
- * How often should we write to the chosen method fo storage? When initialising the exporter, we can decide between indexdb and an actual db
13
- * is there anyway to force a save when the app closes? In what circumstances will that not work? An ungraceful shutdown?
14
- */
15
- const PLACEHOLDER_IMAGE_SRC = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjYjNiM2IzIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xLjUgNmEyLjI1IDIuMjUgMCAwIDEgMi4yNS0yLjI1aDE2LjVBMi4yNSAyLjI1IDAgMCAxIDIyLjUgNnYxMmEyLjI1IDIuMjUgMCAwIDEtMi4yNSAyLjI1SDMuNzVBMi4yNSAyLjI1IDAgMCAxIDEuNSAxOHpNMyAxNi4wNlYxOGMwIC40MTQuMzM2Ljc1Ljc1Ljc1aDE2LjVBLjc1Ljc1IDAgMCAwIDIxIDE4di0xLjk0bC0yLjY5LTIuNjg5YTEuNSAxLjUgMCAwIDAtMi4xMiAwbC0uODguODc5bC45Ny45N2EuNzUuNzUgMCAxIDEtMS4wNiAxLjA2bC01LjE2LTUuMTU5YTEuNSAxLjUgMCAwIDAtMi4xMiAwem0xMC4xMjUtNy44MWExLjEyNSAxLjEyNSAwIDEgMSAyLjI1IDBhMS4xMjUgMS4xMjUgMCAwIDEtMi4yNSAwIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=";
16
- const PLACEHOLDER_IMAGE_SIZE = 240;
17
- function transformOf(node) {
18
- return {
19
- x: node.x ?? 0,
20
- y: node.y ?? 0,
21
- sx: node.sx ?? 1,
22
- sy: node.sy ?? 1,
23
- };
24
- }
25
- function serializeChildren(node) {
26
- return node.children.map(serializeNode);
27
- }
28
- export function serializeNode(node) {
29
- if (node instanceof Img) {
30
- const base = {
31
- type: "Img",
32
- id: node.seq,
33
- renderOrder: node.renderOrder,
34
- transform: transformOf(node),
35
- width: node.width,
36
- height: node.height,
37
- fileId: node.fileId,
38
- children: node.children?.length ? serializeChildren(node) : undefined,
39
- };
40
- return base;
41
- }
42
- if (node instanceof Rect) {
43
- const base = {
44
- type: "Rect",
45
- id: node.seq,
46
- renderOrder: node.renderOrder,
47
- transform: transformOf(node),
48
- width: node.width,
49
- height: node.height,
50
- color: node.color,
51
- children: node.children?.length ? serializeChildren(node) : undefined,
52
- };
53
- return base;
54
- }
55
- if (node instanceof Grid) {
56
- const base = {
57
- type: "Grid",
58
- style: node.gridType,
59
- };
60
- return base;
61
- }
62
- const generic = {
63
- type: "Renderable",
64
- children: node.children?.length ? serializeChildren(node) : undefined,
65
- };
66
- return generic;
67
- }
68
- export function serializeCanvas(canvas, files) {
69
- const { gl } = canvas;
70
- return {
71
- version: 1,
72
- canvas: {
73
- width: gl.canvas.width,
74
- height: gl.canvas.height,
75
- dpr: window.devicePixelRatio || 1,
76
- },
77
- camera: {
78
- x: canvas.camera.state.x,
79
- y: canvas.camera.state.y,
80
- zoom: canvas.camera.state.zoom,
81
- },
82
- root: serializeNode(canvas),
83
- files,
84
- };
85
- }
86
- export async function deserializeCanvas(data, canvas, getFile, writeFileToDatabase) {
87
- canvas.children.length = 0;
88
- if (data.camera) {
89
- canvas.camera.state.setZoom(data.camera.zoom);
90
- canvas.camera.state.setX(data.camera.x);
91
- canvas.camera.state.setY(data.camera.y);
92
- }
93
- async function build(node, parent) {
94
- let instance;
95
- switch (node.type) {
96
- case "Rect":
97
- instance = new Rect({
98
- x: node.transform.x,
99
- y: node.transform.y,
100
- width: node.width,
101
- height: node.height,
102
- });
103
- instance.setScale(node.transform.sx, node.transform.sy);
104
- canvas.appendChild(instance);
105
- break;
106
- case "Img":
107
- let src;
108
- try {
109
- src = (() => {
110
- if (data.files && Array.isArray(data.files)) {
111
- const fileMeta = data.files.find((e) => e.id === node.fileId);
112
- return fileMeta?.dataURL ?? PLACEHOLDER_IMAGE_SRC;
113
- }
114
- return PLACEHOLDER_IMAGE_SRC;
115
- })();
116
- if (writeFileToDatabase) {
117
- writeFileToDatabase(src);
118
- }
119
- const width = node.width;
120
- const height = node.height;
121
- const framedPlaceholder = await framePlaceholder(src, width * node.transform.sx, height * node.transform.sy);
122
- instance = new Img({
123
- x: node.transform.x,
124
- y: node.transform.y,
125
- src: framedPlaceholder,
126
- width,
127
- height,
128
- });
129
- if (data.files && Array.isArray(data.files)) {
130
- const fileMeta = data.files.find((e) => e.id === node.fileId);
131
- instance.src = fileMeta.dataURL;
132
- }
133
- else {
134
- getFile(node.fileId)
135
- .then((file) => {
136
- instance.src = file.dataURL;
137
- })
138
- .catch((err) => console.error("Image not loaded", err));
139
- }
140
- // skip hashing if it already has a file ID
141
- instance.fileId =
142
- node.fileId ?? (await hashStringToId(src));
143
- instance.setScale(node.transform.sx, node.transform.sy);
144
- canvas.appendChild(instance);
145
- if (typeof node.renderOrder === "number") {
146
- instance.renderOrder = node.renderOrder;
147
- }
148
- }
149
- catch (err) {
150
- // delete node from storage? It won't be saved in the next instance, so perhaps it's fine?
151
- console.error(`Failed to match image to restore with source: ${src}`);
152
- }
153
- finally {
154
- break;
155
- }
156
- case "Grid":
157
- if (parent instanceof Canvas) {
158
- parent.grid.gridType = node.style;
159
- }
160
- break;
161
- default:
162
- break;
163
- }
164
- if (node.children) {
165
- for (const child of node.children)
166
- await build(child, instance);
167
- }
168
- }
169
- await build(data.root, canvas);
170
- return canvas;
171
- }
172
- async function loadImageElement(src) {
173
- const img = new Image();
174
- img.crossOrigin = "anonymous";
175
- return new Promise((resolve, reject) => {
176
- img.onload = () => resolve(img);
177
- img.onerror = (err) => reject(err);
178
- img.src = src;
179
- });
180
- }
181
- async function framePlaceholder(srcOrBlob, tw, th, bg = "#d6d6d6ff") {
182
- let objectUrl = null;
183
- let src;
184
- if (srcOrBlob instanceof Blob) {
185
- objectUrl = URL.createObjectURL(srcOrBlob);
186
- src = objectUrl;
187
- }
188
- else {
189
- src = srcOrBlob;
190
- }
191
- try {
192
- let img = null;
193
- try {
194
- img = await loadImageElement(src);
195
- }
196
- catch (e) {
197
- // Swallow in order to proceed with a background-only placeholder
198
- }
199
- const targetW = tw && tw > 0 ? tw : (img?.naturalWidth ?? PLACEHOLDER_IMAGE_SIZE);
200
- const targetH = th && th > 0 ? th : (img?.naturalHeight ?? PLACEHOLDER_IMAGE_SIZE);
201
- const canvas = document.createElement("canvas");
202
- canvas.width = targetW;
203
- canvas.height = targetH;
204
- const ctx = canvas.getContext("2d");
205
- ctx.fillStyle = bg;
206
- ctx.fillRect(0, 0, targetW, targetH);
207
- if (img) {
208
- // if any of the sides is less than the placeholder image size, then use the natural ratio
209
- const ratio = Math.min(targetW / img.naturalWidth, targetH / img.naturalHeight);
210
- const ratioedHeight = img.naturalHeight * ratio;
211
- const ratioedWidth = img.naturalWidth * ratio;
212
- let dw = PLACEHOLDER_IMAGE_SIZE;
213
- let dh = PLACEHOLDER_IMAGE_SIZE;
214
- if (PLACEHOLDER_IMAGE_SIZE > ratioedHeight ||
215
- PLACEHOLDER_IMAGE_SIZE > ratioedWidth) {
216
- dw = ratioedWidth;
217
- dh = ratioedHeight;
218
- }
219
- const dx = Math.round((targetW - dw) / 2);
220
- const dy = Math.round((targetH - dh) / 2);
221
- ctx.drawImage(img, 0, 0, img.naturalWidth, img.naturalHeight, dx, dy, dw, dh);
222
- }
223
- return canvas.toDataURL("image/png");
224
- }
225
- finally {
226
- if (objectUrl) {
227
- URL.revokeObjectURL(objectUrl);
228
- }
229
- }
230
- }
231
- //# sourceMappingURL=serializer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serializer.js","sourceRoot":"src/","sources":["serializer/serializer.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"grid.d.ts","sourceRoot":"src/","sources":["shaders/grid.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,moBA4BpB,CAAC;AAEF,eAAO,MAAM,QAAQ,gwDA0DpB,CAAC"}
@@ -1,89 +0,0 @@
1
- export const gridVert = /* glsl */ `
2
- #extension GL_OES_standard_derivatives : enable
3
- #ifdef GL_FRAGMENT_PRECISION_HIGH
4
- precision highp float;
5
- precision highp int;
6
- #else
7
- precision mediump float;
8
- precision mediump int;
9
- #endif
10
-
11
- uniform mat3 u_ViewProjectionInvMatrix;
12
- uniform float u_ZoomScale;
13
- uniform float u_CheckboardStyle;
14
- uniform float u_z;
15
-
16
- attribute vec2 a_Position;
17
-
18
- varying vec2 v_Position;
19
-
20
- vec2 project_clipspace_to_world(vec2 p) {
21
- return (u_ViewProjectionInvMatrix * vec3(p, 1.0)).xy;
22
- }
23
-
24
- void main() {
25
- v_Position = project_clipspace_to_world(a_Position);
26
- float z = mix(1.0, -1.0, u_z);
27
- gl_Position = vec4(a_Position, z, 1.0);
28
- }
29
- `;
30
- export const gridFrag = /* glsl */ `
31
- #extension GL_OES_standard_derivatives : enable
32
- #ifdef GL_FRAGMENT_PRECISION_HIGH
33
- precision highp float;
34
- precision highp int;
35
- #else
36
- precision mediump float;
37
- precision mediump int;
38
- #endif
39
-
40
- uniform mat3 u_ViewProjectionInvMatrix;
41
- uniform float u_ZoomScale;
42
- uniform float u_CheckboardStyle;
43
-
44
- varying vec2 v_Position;
45
-
46
- const vec4 GRID_COLOR = vec4(0.87, 0.87, 0.87, 1.0);
47
- const vec4 PAGE_COLOR = vec4(0.986, 0.986, 0.986, 1.0);
48
- const int CHECKERBOARD_STYLE_NONE = 0;
49
- const int CHECKERBOARD_STYLE_GRID = 1;
50
- const int CHECKERBOARD_STYLE_DOTS = 2;
51
- const float BASE_GRID_PIXEL_SIZE = 100.0;
52
-
53
- vec2 scale_grid_size(float zoom) {
54
- if (zoom < 0.125) return vec2(BASE_GRID_PIXEL_SIZE * 125.0, 0.125);
55
- else if (zoom < 0.25) return vec2(BASE_GRID_PIXEL_SIZE * 25.0, 0.25);
56
- else if (zoom < 0.5) return vec2(BASE_GRID_PIXEL_SIZE * 5.0, 0.5);
57
- return vec2(BASE_GRID_PIXEL_SIZE, 4.0);
58
- }
59
-
60
- vec4 render_grid_checkerboard(vec2 coord) {
61
- float alpha = 0.0;
62
-
63
- vec2 size = scale_grid_size(u_ZoomScale);
64
- float gridSize1 = size.x;
65
- float gridSize2 = gridSize1 / 10.0;
66
- float zoomStep = size.y;
67
- int checkboardStyle = int(floor(u_CheckboardStyle + 0.5));
68
-
69
- if (checkboardStyle == CHECKERBOARD_STYLE_GRID) {
70
- vec2 grid1 = abs(fract(coord / gridSize1 - 0.5) - 0.5) / fwidth(coord) * gridSize1 / 2.0;
71
- vec2 grid2 = abs(fract(coord / gridSize2 - 0.5) - 0.5) / fwidth(coord) * gridSize2;
72
- float v1 = 1.0 - min(min(grid1.x, grid1.y), 1.0);
73
- float v2 = 1.0 - min(min(grid2.x, grid2.y), 1.0);
74
-
75
- if (v1 > 0.0) {
76
- alpha = v1;
77
- } else {
78
- alpha = v2 * clamp(u_ZoomScale / zoomStep, 0.0, 1.0);
79
- }
80
- }
81
-
82
- return mix(PAGE_COLOR, GRID_COLOR, alpha);
83
- }
84
-
85
- void main() {
86
- gl_FragColor = render_grid_checkerboard(v_Position);
87
- }
88
- `;
89
- //# sourceMappingURL=grid.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"grid.js","sourceRoot":"src/","sources":["shaders/grid.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BlC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0DlC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"img.d.ts","sourceRoot":"src/","sources":["shaders/img.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,IAAI,geAqBT,CAAC;AAEF,QAAA,MAAM,IAAI,8OAcT,CAAC;AAEF,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC"}
@@ -1,39 +0,0 @@
1
- const vert = `
2
- attribute vec2 a_position;
3
- attribute vec2 a_texCoord;
4
-
5
- uniform vec2 u_resolution;
6
- uniform mat3 u_matrix;
7
- uniform float u_z;
8
-
9
- varying vec2 v_texCoord;
10
-
11
- void main() {
12
- vec2 position = (u_matrix * vec3(a_position, 1)).xy;
13
- vec2 zeroToOne = position / u_resolution;
14
- vec2 zeroToTwo = zeroToOne * 2.0;
15
- vec2 clipSpace = zeroToTwo - 1.0;
16
- float z = mix(1.0, -1.0, u_z);
17
-
18
- gl_Position = vec4(clipSpace * vec2(1, -1), z, 1);
19
-
20
- v_texCoord = a_texCoord;
21
- }
22
- `;
23
- const frag = `
24
- #ifdef GL_FRAGMENT_PRECISION_HIGH
25
- precision highp float;
26
- #else
27
- precision mediump float;
28
- #endif
29
-
30
- uniform sampler2D u_image;
31
-
32
- varying vec2 v_texCoord;
33
-
34
- void main() {
35
- gl_FragColor = texture2D(u_image, v_texCoord);
36
- }
37
- `;
38
- export { vert as imageVert, frag as imageFrag };
39
- //# sourceMappingURL=img.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"img.js","sourceRoot":"src/","sources":["shaders/img.ts"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBZ,CAAC;AAEF,MAAM,IAAI,GAAG;;;;;;;;;;;;;;CAcZ,CAAC;AAEF,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC"}
@@ -1,4 +0,0 @@
1
- export * from "./shape";
2
- export * from "./grid";
3
- export * from "./img";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"src/","sources":["shaders/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC"}
@@ -1,4 +0,0 @@
1
- export * from "./shape";
2
- export * from "./grid";
3
- export * from "./img";
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["shaders/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"shape.d.ts","sourceRoot":"src/","sources":["shaders/shape.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,IAAI,ibAkBT,CAAC;AAEF,QAAA,MAAM,IAAI,uGAOT,CAAC;AAEF,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC"}
@@ -1,29 +0,0 @@
1
- const vert = `
2
- attribute vec2 a_position;
3
-
4
- uniform vec2 u_resolution;
5
- uniform mat3 u_matrix;
6
- uniform float u_z;
7
-
8
- // all shaders have a main function
9
- void main() {
10
- vec2 position = (u_matrix * vec3(a_position, 1)).xy;
11
-
12
- vec2 zeroToOne = position / u_resolution;
13
- vec2 zeroToTwo = zeroToOne * 2.0;
14
- vec2 clipSpace = zeroToTwo - 1.0;
15
- float z = mix(1.0, -1.0, u_z);
16
-
17
- gl_Position = vec4(clipSpace * vec2(1, -1), z, 1);
18
- }
19
- `;
20
- const frag = `
21
- precision mediump float;
22
- uniform vec4 u_color;
23
-
24
- void main() {
25
- gl_FragColor = u_color;
26
- }
27
- `;
28
- export { vert as shapeVert, frag as shapeFrag };
29
- //# sourceMappingURL=shape.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shape.js","sourceRoot":"src/","sources":["shaders/shape.ts"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;CAkBZ,CAAC;AAEF,MAAM,IAAI,GAAG;;;;;;;CAOZ,CAAC;AAEF,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Grid.d.ts","sourceRoot":"src/","sources":["shapes/Grid.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,oBAAY,SAAS;IACnB,IAAI,IAAA;IACJ,IAAI,IAAA;CACL;AAED,qBAAa,IAAK,SAAQ,eAAe;IACvC,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,WAAW,CAAK;IAExB,yBAAyB,EAAE,oBAAoB,CAAC;IAChD,iBAAiB,EAAE,oBAAoB,CAAC;IACxC,uBAAuB,EAAE,oBAAoB,CAAC;IAE9C,QAAQ,EAAE,SAAS,CAAkB;IACrC,IAAI,EAAE,MAAM,CAAK;IAGjB,YAAY;IAKZ,cAAc,CAAC,IAAI,EAAE,SAAS;IAI9B,MAAM,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAqD9D,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO;IAItC,SAAS,CAAC,aAAa,CACrB,EAAE,EAAE,qBAAqB,EACzB,OAAO,EAAE,YAAY,GACpB,IAAI;CAgBR"}
@@ -1,84 +0,0 @@
1
- import { m3 } from "../util";
2
- import { WebGLRenderable } from "./Renderable";
3
- export var GRID_TYPE;
4
- (function (GRID_TYPE) {
5
- GRID_TYPE[GRID_TYPE["NONE"] = 0] = "NONE";
6
- GRID_TYPE[GRID_TYPE["GRID"] = 1] = "GRID";
7
- })(GRID_TYPE || (GRID_TYPE = {}));
8
- export class Grid extends WebGLRenderable {
9
- constructor() {
10
- super(...arguments);
11
- this.buffer = null;
12
- this.vertexCount = 0;
13
- this.gridType = GRID_TYPE.GRID;
14
- this.zoom = 1;
15
- }
16
- // Fullscreen big-triangle in clip space: covers [-1,1] without seams
17
- getPositions() {
18
- // x,y pairs in clip space
19
- return new Float32Array([-1.0, -1.0, 3.0, -1.0, -1.0, 3.0]);
20
- }
21
- changeGridType(type) {
22
- this.gridType = type;
23
- }
24
- render(gl, program) {
25
- if (!this.buffer) {
26
- this.buffer = gl.createBuffer();
27
- if (!this.buffer)
28
- throw new Error("Failed to create grid buffer");
29
- const data = this.getPositions();
30
- this.vertexCount = data.length / 2;
31
- gl.bindBuffer(gl.ARRAY_BUFFER, this.buffer);
32
- gl.bufferData(gl.ARRAY_BUFFER, data, gl.STATIC_DRAW);
33
- }
34
- else {
35
- gl.bindBuffer(gl.ARRAY_BUFFER, this.buffer);
36
- }
37
- if (!this.initialized) {
38
- this.setUpVertexData(gl, program);
39
- this.setUpUniforms(gl, program);
40
- this.initialized = true;
41
- }
42
- // Convert clip [-1,1] to pixel coords using the current drawing buffer size
43
- const w = gl.drawingBufferWidth;
44
- const h = gl.drawingBufferHeight;
45
- const invP = m3.inverse(m3.projection(w, h)); // clip to pixel space
46
- const invView = m3.inverse(this.worldMatrix); // camera/view -> world
47
- const invVP = m3.multiply(invView, invP); // clip -> world
48
- if (this.viewProjectionInvLocation)
49
- gl.uniformMatrix3fv(this.viewProjectionInvLocation, false, new Float32Array(invVP));
50
- if (this.zoomScaleLocation)
51
- gl.uniform1f(this.zoomScaleLocation, this.zoom);
52
- if (this.checkboardStyleLocation)
53
- gl.uniform1f(this.checkboardStyleLocation, this.gridType);
54
- // a_Position is clip-space position (vec2)
55
- const loc = gl.getAttribLocation(program, "a_Position");
56
- if (loc === -1) {
57
- throw new Error("Attribute a_Position not found in grid program");
58
- }
59
- gl.vertexAttribPointer(loc, 2, gl.FLOAT, false, 0, 0);
60
- gl.enableVertexAttribArray(loc);
61
- // Draw the fullscreen triangle
62
- gl.drawArrays(gl.TRIANGLES, 0, this.vertexCount);
63
- gl.bindBuffer(gl.ARRAY_BUFFER, null);
64
- gl.disableVertexAttribArray(loc);
65
- }
66
- destroy() {
67
- if (this.buffer) {
68
- this.buffer = null;
69
- }
70
- }
71
- hitTest(x, y) {
72
- return false;
73
- }
74
- setUpUniforms(gl, program) {
75
- const I3 = new Float32Array([1, 0, 0, 0, 1, 0, 0, 0, 1]);
76
- this.viewProjectionInvLocation = gl.getUniformLocation(program, "u_ViewProjectionInvMatrix");
77
- this.zoomScaleLocation = gl.getUniformLocation(program, "u_ZoomScale");
78
- this.checkboardStyleLocation = gl.getUniformLocation(program, "u_CheckboardStyle");
79
- gl.uniformMatrix3fv(this.viewProjectionInvLocation, false, I3);
80
- gl.uniform1f(this.zoomScaleLocation, this.zoom);
81
- gl.uniform1f(this.checkboardStyleLocation, 1.0);
82
- }
83
- }
84
- //# sourceMappingURL=Grid.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Grid.js","sourceRoot":"src/","sources":["shapes/Grid.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Img.d.ts","sourceRoot":"src/","sources":["shapes/Img.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,GAAI,SAAQ,IAAI;IAC3B,OAAO,CAAC,cAAc,CAAC,CAAc;IACrC,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,eAAe,CAAC,CAAuB;IAC/C,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,aAAa,CAAC,CAAe;IACrC,OAAO,CAAC,EAAE,CAAC,CAAwB;IACnC,OAAO,CAAC,OAAO,CAAC,CAAe;IAE/B,OAAO,CAAC,aAAa,CAalB;IAGH,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,kBAAkB,CAAiB;IAC3C,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,YAAY,CAAc;gBAGhC,MAAM,EAAE,OAAO,CAAC;QACd,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,GAAG,EAAE,MAAM,CAAC;QACZ,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAOJ,IAAI,GAAG,IAGM,MAAM,CADlB;IACD,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,EAMlB;IAED,IAAI,MAAM,IAGM,MAAM,GAAG,MAAM,CAD9B;IACD,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAE9B;IAED,iBAAiB,CACf,iBAAiB,EAAE,IAAI,EACvB,UAAU,EAAE,MAAM,EAClB,SAAS,SAAM;IAaX,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,qBAAqB;IAWjE,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,kBAAkB;YAgDZ,oBAAoB;IA4ClC,OAAO,CAAC,0BAA0B;IA0BlC,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,UAAU;IAoClB,gBAAgB,CAAC,EAAE,EAAE,qBAAqB;IAQ1C,cAAc,IAAI,MAAM;IAIxB,MAAM,CAAC,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAyB9D,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,qBAAqB;IA+CxC,OAAO;CAuCR"}