@tolokoban/tgd 2.0.17 → 2.0.20

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 (244) hide show
  1. package/lib/dist/buffer/buffer.d.ts +5 -2
  2. package/lib/dist/buffer/buffer.d.ts.map +1 -1
  3. package/lib/dist/buffer/buffer.js +13 -13
  4. package/lib/dist/camera/camera-node.js +2 -3
  5. package/lib/dist/camera/camera-orthographic.js +9 -8
  6. package/lib/dist/camera/camera-perspective.js +9 -8
  7. package/lib/dist/camera/camera.js +43 -43
  8. package/lib/dist/canvas/gizmo/gizmo.js +68 -72
  9. package/lib/dist/canvas/gizmo/painter/tips.d.ts +0 -1
  10. package/lib/dist/canvas/gizmo/painter/tips.d.ts.map +1 -1
  11. package/lib/dist/canvas/gizmo/painter/tips.js +24 -22
  12. package/lib/dist/canvas/landscape/landscape.js +4 -11
  13. package/lib/dist/color/color.js +15 -15
  14. package/lib/dist/context/animation/animation-manager.js +7 -4
  15. package/lib/dist/context/context.d.ts +5 -18
  16. package/lib/dist/context/context.d.ts.map +1 -1
  17. package/lib/dist/context/context.js +43 -79
  18. package/lib/dist/controller/camera/orbit.d.ts +24 -2
  19. package/lib/dist/controller/camera/orbit.d.ts.map +1 -1
  20. package/lib/dist/controller/camera/orbit.js +147 -103
  21. package/lib/dist/dataset/dataset.d.ts +1 -1
  22. package/lib/dist/dataset/dataset.d.ts.map +1 -1
  23. package/lib/dist/dataset/dataset.js +13 -18
  24. package/lib/dist/debug/debug.js +6 -5
  25. package/lib/dist/event/event.js +4 -2
  26. package/lib/dist/filter/chromatic-aberration.js +10 -10
  27. package/lib/dist/filter/filter.d.ts +10 -8
  28. package/lib/dist/filter/filter.d.ts.map +1 -1
  29. package/lib/dist/filter/filter.js +22 -20
  30. package/lib/dist/filter/hue-rotation.d.ts +1 -1
  31. package/lib/dist/filter/hue-rotation.d.ts.map +1 -1
  32. package/lib/dist/filter/hue-rotation.js +5 -5
  33. package/lib/dist/filter/index.d.ts +2 -0
  34. package/lib/dist/filter/index.d.ts.map +1 -1
  35. package/lib/dist/filter/index.js +3 -1
  36. package/lib/dist/filter/verbatim.d.ts +8 -0
  37. package/lib/dist/filter/verbatim.d.ts.map +1 -0
  38. package/lib/dist/filter/verbatim.js +20 -0
  39. package/lib/dist/filter/zoom.d.ts +12 -0
  40. package/lib/dist/filter/zoom.d.ts.map +1 -0
  41. package/lib/dist/filter/zoom.js +25 -0
  42. package/lib/dist/geometry/geometry.js +9 -17
  43. package/lib/dist/geometry/index.d.ts +1 -0
  44. package/lib/dist/geometry/index.d.ts.map +1 -1
  45. package/lib/dist/geometry/index.js +2 -1
  46. package/lib/dist/geometry/place.d.ts +12 -0
  47. package/lib/dist/geometry/place.d.ts.map +1 -0
  48. package/lib/dist/geometry/place.js +145 -0
  49. package/lib/dist/geometry/plane.d.ts +12 -0
  50. package/lib/dist/geometry/plane.d.ts.map +1 -0
  51. package/lib/dist/geometry/plane.js +51 -0
  52. package/lib/dist/index.d.ts +4 -1
  53. package/lib/dist/index.d.ts.map +1 -1
  54. package/lib/dist/index.js +5 -2
  55. package/lib/dist/input/inputs.js +3 -4
  56. package/lib/dist/input/keyboard.js +14 -14
  57. package/lib/dist/input/pointer.js +80 -104
  58. package/lib/dist/light/light.js +5 -8
  59. package/lib/dist/loader/asset.d.ts +5 -3
  60. package/lib/dist/loader/asset.d.ts.map +1 -1
  61. package/lib/dist/loader/asset.js +37 -24
  62. package/lib/dist/loader/binary.js +29 -24
  63. package/lib/dist/loader/image.js +31 -24
  64. package/lib/dist/log.js +7 -4
  65. package/lib/dist/material/diffuse.d.ts +10 -4
  66. package/lib/dist/material/diffuse.d.ts.map +1 -1
  67. package/lib/dist/material/diffuse.js +26 -18
  68. package/lib/dist/material/ghost.d.ts +5 -4
  69. package/lib/dist/material/ghost.d.ts.map +1 -1
  70. package/lib/dist/material/ghost.js +1 -4
  71. package/lib/dist/material/hull.d.ts +25 -0
  72. package/lib/dist/material/hull.d.ts.map +1 -0
  73. package/lib/dist/material/hull.js +27 -0
  74. package/lib/dist/material/index.d.ts +1 -0
  75. package/lib/dist/material/index.d.ts.map +1 -1
  76. package/lib/dist/material/index.js +2 -1
  77. package/lib/dist/material/material.d.ts +14 -5
  78. package/lib/dist/material/material.d.ts.map +1 -1
  79. package/lib/dist/material/material.js +14 -12
  80. package/lib/dist/material/normals.d.ts +5 -4
  81. package/lib/dist/material/normals.d.ts.map +1 -1
  82. package/lib/dist/material/normals.js +1 -4
  83. package/lib/dist/material/solid.d.ts +6 -5
  84. package/lib/dist/material/solid.d.ts.map +1 -1
  85. package/lib/dist/material/solid.js +7 -10
  86. package/lib/dist/math/mat3.d.ts +6 -2
  87. package/lib/dist/math/mat3.d.ts.map +1 -1
  88. package/lib/dist/math/mat3.js +43 -4
  89. package/lib/dist/math/mat4.js +2 -2
  90. package/lib/dist/math/math.js +5 -5
  91. package/lib/dist/math/quat.d.ts +4 -1
  92. package/lib/dist/math/quat.d.ts.map +1 -1
  93. package/lib/dist/math/quat.js +25 -4
  94. package/lib/dist/math/transfo.js +12 -10
  95. package/lib/dist/math/vec4.d.ts +3 -3
  96. package/lib/dist/math/vec4.d.ts.map +1 -1
  97. package/lib/dist/math/vec4.js +20 -1
  98. package/lib/dist/painter/axis/axis.js +5 -7
  99. package/lib/dist/painter/background/background.d.ts +1 -1
  100. package/lib/dist/painter/background/background.d.ts.map +1 -1
  101. package/lib/dist/painter/background/background.js +14 -16
  102. package/lib/dist/painter/clear.d.ts +4 -3
  103. package/lib/dist/painter/clear.d.ts.map +1 -1
  104. package/lib/dist/painter/clear.js +16 -19
  105. package/lib/dist/painter/debug/index.d.ts +2 -0
  106. package/lib/dist/painter/debug/index.d.ts.map +1 -0
  107. package/lib/dist/painter/debug/index.js +2 -0
  108. package/lib/dist/painter/debug/stencil/index.d.ts +2 -0
  109. package/lib/dist/painter/debug/stencil/index.d.ts.map +1 -0
  110. package/lib/dist/painter/debug/stencil/index.js +2 -0
  111. package/lib/dist/painter/debug/stencil/stencil.d.ts +11 -0
  112. package/lib/dist/painter/debug/stencil/stencil.d.ts.map +1 -0
  113. package/lib/dist/painter/debug/stencil/stencil.frag +10 -0
  114. package/lib/dist/painter/debug/stencil/stencil.js +53 -0
  115. package/lib/dist/painter/debug/stencil/stencil.vert +7 -0
  116. package/lib/dist/painter/debug/stencil.d.ts +11 -0
  117. package/lib/dist/painter/debug/stencil.d.ts.map +1 -0
  118. package/lib/dist/painter/debug/stencil.js +41 -0
  119. package/lib/dist/painter/depth.d.ts +5 -3
  120. package/lib/dist/painter/depth.d.ts.map +1 -1
  121. package/lib/dist/painter/depth.js +4 -10
  122. package/lib/dist/painter/filter/filter.d.ts +1 -1
  123. package/lib/dist/painter/filter/filter.d.ts.map +1 -1
  124. package/lib/dist/painter/filter/filter.js +20 -33
  125. package/lib/dist/painter/framebuffer.backup.d.ts +39 -0
  126. package/lib/dist/painter/framebuffer.backup.d.ts.map +1 -0
  127. package/lib/dist/painter/framebuffer.backup.js +122 -0
  128. package/lib/dist/painter/framebuffer.d.ts +41 -9
  129. package/lib/dist/painter/framebuffer.d.ts.map +1 -1
  130. package/lib/dist/painter/framebuffer.js +105 -90
  131. package/lib/dist/painter/group.js +6 -8
  132. package/lib/dist/painter/index.d.ts +1 -1
  133. package/lib/dist/painter/index.d.ts.map +1 -1
  134. package/lib/dist/painter/index.js +2 -2
  135. package/lib/dist/painter/logic.js +3 -3
  136. package/lib/dist/painter/mesh/gltf/gltf.d.ts +1 -1
  137. package/lib/dist/painter/mesh/gltf/gltf.d.ts.map +1 -1
  138. package/lib/dist/painter/mesh/gltf/gltf.js +35 -58
  139. package/lib/dist/painter/mesh/hull/hull.d.ts +12 -0
  140. package/lib/dist/painter/mesh/hull/hull.d.ts.map +1 -0
  141. package/lib/dist/painter/mesh/hull/hull.js +11 -0
  142. package/lib/dist/painter/mesh/mesh/mesh.d.ts +1 -1
  143. package/lib/dist/painter/mesh/mesh/mesh.d.ts.map +1 -1
  144. package/lib/dist/painter/mesh/mesh/mesh.js +34 -41
  145. package/lib/dist/painter/mesh/normals/normals.js +17 -20
  146. package/lib/dist/painter/node/node.js +8 -8
  147. package/lib/dist/painter/painter.js +11 -9
  148. package/lib/dist/painter/segments/segments.d.ts +11 -3
  149. package/lib/dist/painter/segments/segments.d.ts.map +1 -1
  150. package/lib/dist/painter/segments/segments.js +27 -27
  151. package/lib/dist/painter/skybox/skybox.d.ts.map +1 -1
  152. package/lib/dist/painter/skybox/skybox.js +12 -13
  153. package/lib/dist/painter/state/state.d.ts +10 -1
  154. package/lib/dist/painter/state/state.d.ts.map +1 -1
  155. package/lib/dist/painter/state/state.js +23 -25
  156. package/lib/dist/parser/gltf/gltf.d.ts +5 -2
  157. package/lib/dist/parser/gltf/gltf.d.ts.map +1 -1
  158. package/lib/dist/parser/gltf/gltf.js +86 -55
  159. package/lib/dist/parser/mesh/wavefront.js +95 -92
  160. package/lib/dist/program/program.d.ts +6 -4
  161. package/lib/dist/program/program.d.ts.map +1 -1
  162. package/lib/dist/program/program.js +6 -11
  163. package/lib/dist/ref-map.js +9 -5
  164. package/lib/dist/resource/program.js +1 -2
  165. package/lib/dist/resource/resource.js +11 -7
  166. package/lib/dist/resource/texture2d.js +1 -2
  167. package/lib/dist/resource/textureCube.js +1 -2
  168. package/lib/dist/shader/code.d.ts +8 -8
  169. package/lib/dist/shader/code.d.ts.map +1 -1
  170. package/lib/dist/shader/code.js +1 -1
  171. package/lib/dist/shader/fragment.d.ts +11 -11
  172. package/lib/dist/shader/fragment.d.ts.map +1 -1
  173. package/lib/dist/shader/fragment.js +2 -14
  174. package/lib/dist/shader/vertex.d.ts +11 -11
  175. package/lib/dist/shader/vertex.d.ts.map +1 -1
  176. package/lib/dist/shader/vertex.js +2 -7
  177. package/lib/dist/table/index.d.ts +2 -0
  178. package/lib/dist/table/index.d.ts.map +1 -0
  179. package/lib/dist/table/index.js +2 -0
  180. package/lib/dist/table/table.d.ts +41 -0
  181. package/lib/dist/table/table.d.ts.map +1 -0
  182. package/lib/dist/table/table.js +101 -0
  183. package/lib/dist/texture/texture2d.d.ts +45 -21
  184. package/lib/dist/texture/texture2d.d.ts.map +1 -1
  185. package/lib/dist/texture/texture2d.js +162 -129
  186. package/lib/dist/texture/texture2dArray.d.ts +43 -0
  187. package/lib/dist/texture/texture2dArray.d.ts.map +1 -0
  188. package/lib/dist/texture/texture2dArray.js +112 -0
  189. package/lib/dist/texture/textureCube.d.ts +12 -5
  190. package/lib/dist/texture/textureCube.d.ts.map +1 -1
  191. package/lib/dist/texture/textureCube.js +7 -25
  192. package/lib/dist/types/gltf.js +3 -9
  193. package/lib/dist/types/index.d.ts +0 -2
  194. package/lib/dist/types/index.d.ts.map +1 -1
  195. package/lib/dist/types/index.js +1 -3
  196. package/lib/dist/types/program.d.ts +3 -40
  197. package/lib/dist/types/program.d.ts.map +1 -1
  198. package/lib/dist/types/texture2d.d.ts +18 -2
  199. package/lib/dist/types/texture2d.d.ts.map +1 -1
  200. package/lib/dist/types/textureCube.d.ts +6 -15
  201. package/lib/dist/types/textureCube.d.ts.map +1 -1
  202. package/lib/dist/types/webgl.d.ts +22 -1
  203. package/lib/dist/types/webgl.d.ts.map +1 -1
  204. package/lib/dist/types/webgl.js +14 -1
  205. package/lib/dist/uniform/uniform-buffer-object.d.ts +49 -0
  206. package/lib/dist/uniform/uniform-buffer-object.d.ts.map +1 -0
  207. package/lib/dist/uniform/uniform-buffer-object.js +93 -0
  208. package/lib/dist/utils/action/camera.js +8 -7
  209. package/lib/dist/utils/bbox.js +3 -3
  210. package/lib/dist/utils/canvas.d.ts +28 -0
  211. package/lib/dist/utils/canvas.d.ts.map +1 -1
  212. package/lib/dist/utils/canvas.js +55 -1
  213. package/lib/dist/utils/framebuffer.d.ts +2 -0
  214. package/lib/dist/utils/framebuffer.d.ts.map +1 -0
  215. package/lib/dist/utils/framebuffer.js +7 -0
  216. package/lib/dist/utils/fullscreen.js +38 -31
  217. package/lib/dist/utils/index.d.ts +2 -0
  218. package/lib/dist/utils/index.d.ts.map +1 -1
  219. package/lib/dist/utils/index.js +3 -1
  220. package/lib/dist/utils/pbo.d.ts +9 -0
  221. package/lib/dist/utils/pbo.d.ts.map +1 -0
  222. package/lib/dist/utils/pbo.js +32 -0
  223. package/lib/dist/utils/ref-map.js +9 -5
  224. package/lib/dist/utils/state/stencil.d.ts +55 -1
  225. package/lib/dist/utils/state/stencil.d.ts.map +1 -1
  226. package/lib/dist/utils/state/stencil.js +20 -38
  227. package/lib/dist/utils/webgl.d.ts +1 -1
  228. package/lib/dist/utils/webgl.d.ts.map +1 -1
  229. package/lib/dist/vao/vao.d.ts +2 -1
  230. package/lib/dist/vao/vao.d.ts.map +1 -1
  231. package/lib/dist/vao/vao.js +10 -14
  232. package/lib/dist/webgl/index.d.ts +2 -0
  233. package/lib/dist/webgl/index.d.ts.map +1 -0
  234. package/lib/dist/webgl/index.js +2 -0
  235. package/lib/dist/webgl/texture/index.d.ts +3 -0
  236. package/lib/dist/webgl/texture/index.d.ts.map +1 -0
  237. package/lib/dist/webgl/texture/index.js +3 -0
  238. package/lib/dist/webgl/texture/texture2d.d.ts +38 -0
  239. package/lib/dist/webgl/texture/texture2d.d.ts.map +1 -0
  240. package/lib/dist/webgl/texture/texture2d.js +35 -0
  241. package/lib/dist/webgl/texture/types.d.ts +4 -0
  242. package/lib/dist/webgl/texture/types.d.ts.map +1 -0
  243. package/lib/dist/webgl/texture/types.js +2 -0
  244. package/package.json +3 -3
@@ -1,10 +1,19 @@
1
1
  import { TgdEvent } from "../event/index.js";
2
2
  export class TgdInputKeyboardImpl {
3
- eventKeyPress = new TgdEvent();
4
- keysDown = new Set();
5
- keysUp = new Set();
6
- attached = false;
7
3
  constructor() {
4
+ this.eventKeyPress = new TgdEvent();
5
+ this.keysDown = new Set();
6
+ this.keysUp = new Set();
7
+ this.attached = false;
8
+ this.handleKeyDown = (evt) => {
9
+ this.keysDown.add(evt.key);
10
+ this.keysUp.delete(evt.key);
11
+ };
12
+ this.handleKeyUp = (evt) => {
13
+ this.keysDown.delete(evt.key);
14
+ this.keysUp.add(evt.key);
15
+ this.eventKeyPress.dispatch(evt);
16
+ };
8
17
  document.addEventListener("keydown", this.handleKeyDown);
9
18
  document.addEventListener("keyup", this.handleKeyUp);
10
19
  this.attached = true;
@@ -33,14 +42,5 @@ export class TgdInputKeyboardImpl {
33
42
  }
34
43
  return false;
35
44
  }
36
- handleKeyDown = (evt) => {
37
- this.keysDown.add(evt.key);
38
- this.keysUp.delete(evt.key);
39
- };
40
- handleKeyUp = (evt) => {
41
- this.keysDown.delete(evt.key);
42
- this.keysUp.add(evt.key);
43
- this.eventKeyPress.dispatch(evt);
44
- };
45
45
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5wdXQva2V5Ym9hcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUVuQyxNQUFNLE9BQU8sb0JBQW9CO0lBQ2IsYUFBYSxHQUFHLElBQUksUUFBUSxFQUFpQixDQUFBO0lBRTVDLFFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFBO0lBQzVCLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFBO0lBQ25DLFFBQVEsR0FBRyxLQUFLLENBQUE7SUFFeEI7UUFDSSxRQUFRLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUN4RCxRQUFRLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNwRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQTtJQUN4QixDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU07UUFFMUIsUUFBUSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDM0QsUUFBUSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDdkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUE7SUFDekIsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFHLElBQWM7UUFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQUcsSUFBYztRQUNwQixLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUE7UUFDN0MsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFBO0lBQ2YsQ0FBQztJQUVELFVBQVUsQ0FBQyxHQUFXO1FBQ2xCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUN2QixPQUFPLElBQUksQ0FBQTtRQUNmLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQTtJQUNoQixDQUFDO0lBRWdCLGFBQWEsR0FBRyxDQUFDLEdBQWtCLEVBQUUsRUFBRTtRQUNwRCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQy9CLENBQUMsQ0FBQTtJQUVnQixXQUFXLEdBQUcsQ0FBQyxHQUFrQixFQUFFLEVBQUU7UUFDbEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNwQyxDQUFDLENBQUE7Q0FDSiJ9
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5wdXQva2V5Ym9hcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUVuQyxNQUFNLE9BQU8sb0JBQW9CO0lBTzdCO1FBTmdCLGtCQUFhLEdBQUcsSUFBSSxRQUFRLEVBQWlCLENBQUE7UUFFNUMsYUFBUSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUE7UUFDNUIsV0FBTSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUE7UUFDbkMsYUFBUSxHQUFHLEtBQUssQ0FBQTtRQW1DUCxrQkFBYSxHQUFHLENBQUMsR0FBa0IsRUFBRSxFQUFFO1lBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDL0IsQ0FBQyxDQUFBO1FBRWdCLGdCQUFXLEdBQUcsQ0FBQyxHQUFrQixFQUFFLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNwQyxDQUFDLENBQUE7UUF6Q0csUUFBUSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDeEQsUUFBUSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDcEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUE7SUFDeEIsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFNO1FBRTFCLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBQzNELFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ3ZELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ3pCLENBQUM7SUFFRCxJQUFJLENBQUMsR0FBRyxJQUFjO1FBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUE7SUFDaEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFHLElBQWM7UUFDcEIsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDO2dCQUFFLE9BQU8sS0FBSyxDQUFBO1FBQzdDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQTtJQUNmLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVztRQUNsQixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDdkIsT0FBTyxJQUFJLENBQUE7UUFDZixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUE7SUFDaEIsQ0FBQztDQVlKIn0=
@@ -1,47 +1,87 @@
1
1
  import { TgdEvent } from "./../event/index.js";
2
2
  const MOUSE_BUTTON_RIGHT = 2;
3
3
  export class TgdInputPointerImpl {
4
- canvas;
5
- eventTap = new TgdEvent();
6
- eventMoveStart = new TgdEvent();
7
- eventMove = new TgdEvent();
8
- eventMoveEnd = new TgdEvent();
9
- eventZoom = new TgdEvent();
10
- /**
11
- * This is a tap only of the pointer touched for less that
12
- * `tapDelay` milliseconds.
13
- */
14
- tapDelay = 300;
15
- controlKeys = {
16
- altKey: false,
17
- ctrlKey: false,
18
- metaKey: false,
19
- shiftKey: false,
20
- };
21
- start = {
22
- x: 0,
23
- y: 0,
24
- t: 0,
25
- fingersCount: 1,
26
- };
27
- current = {
28
- x: 0,
29
- y: 0,
30
- t: 0,
31
- fingersCount: 1,
32
- };
33
- previous = {
34
- x: 0,
35
- y: 0,
36
- t: 0,
37
- fingersCount: 1,
38
- };
39
- /**
40
- * If not null, the pointer is touching.
41
- */
42
- pointerEvent = null;
43
4
  constructor(canvas) {
44
5
  this.canvas = canvas;
6
+ this.eventTap = new TgdEvent();
7
+ this.eventMoveStart = new TgdEvent();
8
+ this.eventMove = new TgdEvent();
9
+ this.eventMoveEnd = new TgdEvent();
10
+ this.eventZoom = new TgdEvent();
11
+ /**
12
+ * This is a tap only of the pointer touched for less that
13
+ * `tapDelay` milliseconds.
14
+ */
15
+ this.tapDelay = 300;
16
+ this.controlKeys = {
17
+ altKey: false,
18
+ ctrlKey: false,
19
+ metaKey: false,
20
+ shiftKey: false,
21
+ };
22
+ this.start = {
23
+ x: 0,
24
+ y: 0,
25
+ t: 0,
26
+ fingersCount: 1,
27
+ };
28
+ this.current = {
29
+ x: 0,
30
+ y: 0,
31
+ t: 0,
32
+ fingersCount: 1,
33
+ };
34
+ this.previous = {
35
+ x: 0,
36
+ y: 0,
37
+ t: 0,
38
+ fingersCount: 1,
39
+ };
40
+ /**
41
+ * If not null, the pointer is touching.
42
+ */
43
+ this.pointerEvent = null;
44
+ this.handleContextMenu = (evt) => {
45
+ evt.preventDefault();
46
+ };
47
+ this.handleCanvasWheel = (evt) => {
48
+ let delta = evt.deltaX + evt.deltaY + evt.deltaZ;
49
+ if (delta > 0)
50
+ delta = 1;
51
+ else
52
+ delta = -1;
53
+ this.eventZoom.dispatch(Object.assign({ current: this.getPoint(evt), direction: delta, preventDefault: () => evt.preventDefault() }, this.controlKeys));
54
+ };
55
+ this.handlePointerDown = (evt) => {
56
+ if (!evt.isPrimary)
57
+ return;
58
+ this.canvas.setPointerCapture(evt.pointerId);
59
+ evt.preventDefault();
60
+ evt.stopPropagation();
61
+ this.pointerEvent = evt;
62
+ const point = this.getPoint(evt);
63
+ this.start = this.current = this.previous = point;
64
+ this.eventMoveStart.dispatch(Object.assign({ start: point, current: point, previous: point }, this.controlKeys));
65
+ };
66
+ this.handlePointerMove = (evt) => {
67
+ if (!evt.isPrimary || !this.pointerEvent || !this.canvas)
68
+ return;
69
+ this.previous = this.current;
70
+ this.current = this.getPoint(evt);
71
+ this.eventMove.dispatch(Object.assign({ start: this.start, current: this.current, previous: this.previous }, this.controlKeys));
72
+ };
73
+ this.handlePointerUp = (evt) => {
74
+ if (!evt.isPrimary || !this.pointerEvent)
75
+ return;
76
+ evt.preventDefault();
77
+ this.current = this.getPoint(evt);
78
+ this.eventMoveEnd.dispatch(Object.assign({ start: this.start, current: this.current, previous: this.previous }, this.controlKeys));
79
+ this.pointerEvent = null;
80
+ // Tap event.
81
+ if (evt.timeStamp - this.start.t < this.tapDelay) {
82
+ this.eventTap.dispatch(Object.assign(Object.assign({}, this.start), this.controlKeys));
83
+ }
84
+ };
45
85
  canvas.addEventListener("pointerdown", this.handlePointerDown, true);
46
86
  canvas.addEventListener("wheel", this.handleCanvasWheel);
47
87
  canvas.addEventListener("contextmenu", this.handleContextMenu);
@@ -58,70 +98,6 @@ export class TgdInputPointerImpl {
58
98
  canvas.removeEventListener("pointermove", this.handlePointerMove);
59
99
  canvas.removeEventListener("pointerup", this.handlePointerUp);
60
100
  }
61
- handleContextMenu = (evt) => {
62
- evt.preventDefault();
63
- };
64
- handleCanvasWheel = (evt) => {
65
- let delta = evt.deltaX + evt.deltaY + evt.deltaZ;
66
- if (delta > 0)
67
- delta = 1;
68
- else
69
- delta = -1;
70
- this.eventZoom.dispatch({
71
- current: this.getPoint(evt),
72
- direction: delta,
73
- preventDefault: () => evt.preventDefault(),
74
- ...this.controlKeys,
75
- });
76
- };
77
- handlePointerDown = (evt) => {
78
- if (!evt.isPrimary)
79
- return;
80
- this.canvas.setPointerCapture(evt.pointerId);
81
- evt.preventDefault();
82
- evt.stopPropagation();
83
- this.pointerEvent = evt;
84
- const point = this.getPoint(evt);
85
- this.start = this.current = this.previous = point;
86
- this.eventMoveStart.dispatch({
87
- start: point,
88
- current: point,
89
- previous: point,
90
- ...this.controlKeys,
91
- });
92
- };
93
- handlePointerMove = (evt) => {
94
- if (!evt.isPrimary || !this.pointerEvent || !this.canvas)
95
- return;
96
- this.previous = this.current;
97
- this.current = this.getPoint(evt);
98
- this.eventMove.dispatch({
99
- start: this.start,
100
- current: this.current,
101
- previous: this.previous,
102
- ...this.controlKeys,
103
- });
104
- };
105
- handlePointerUp = (evt) => {
106
- if (!evt.isPrimary || !this.pointerEvent)
107
- return;
108
- evt.preventDefault();
109
- this.current = this.getPoint(evt);
110
- this.eventMoveEnd.dispatch({
111
- start: this.start,
112
- current: this.current,
113
- previous: this.previous,
114
- ...this.controlKeys,
115
- });
116
- this.pointerEvent = null;
117
- // Tap event.
118
- if (evt.timeStamp - this.start.t < this.tapDelay) {
119
- this.eventTap.dispatch({
120
- ...this.start,
121
- ...this.controlKeys,
122
- });
123
- }
124
- };
125
101
  getPoint(evt) {
126
102
  this.controlKeys = {
127
103
  altKey: evt.altKey || evt.buttons === MOUSE_BUTTON_RIGHT,
@@ -135,4 +111,4 @@ export class TgdInputPointerImpl {
135
111
  return { x, y, t: evt.timeStamp, fingersCount: 1 };
136
112
  }
137
113
  }
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnB1dC9wb2ludGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFTckMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLENBQUE7QUFFNUIsTUFBTSxPQUFPLG1CQUFtQjtJQXlDQztJQXhDcEIsUUFBUSxHQUFHLElBQUksUUFBUSxFQUFxQyxDQUFBO0lBQzVELGNBQWMsR0FBRyxJQUFJLFFBQVEsRUFBc0MsQ0FBQTtJQUNuRSxTQUFTLEdBQUcsSUFBSSxRQUFRLEVBQXNDLENBQUE7SUFDOUQsWUFBWSxHQUFHLElBQUksUUFBUSxFQUFzQyxDQUFBO0lBQ2pFLFNBQVMsR0FBRyxJQUFJLFFBQVEsRUFBc0MsQ0FBQTtJQUN2RTs7O09BR0c7SUFDSSxRQUFRLEdBQUcsR0FBRyxDQUFBO0lBRWIsV0FBVyxHQUFHO1FBQ2xCLE1BQU0sRUFBRSxLQUFLO1FBQ2IsT0FBTyxFQUFFLEtBQUs7UUFDZCxPQUFPLEVBQUUsS0FBSztRQUNkLFFBQVEsRUFBRSxLQUFLO0tBQ2xCLENBQUE7SUFDTyxLQUFLLEdBQStCO1FBQ3hDLENBQUMsRUFBRSxDQUFDO1FBQ0osQ0FBQyxFQUFFLENBQUM7UUFDSixDQUFDLEVBQUUsQ0FBQztRQUNKLFlBQVksRUFBRSxDQUFDO0tBQ2xCLENBQUE7SUFDTyxPQUFPLEdBQStCO1FBQzFDLENBQUMsRUFBRSxDQUFDO1FBQ0osQ0FBQyxFQUFFLENBQUM7UUFDSixDQUFDLEVBQUUsQ0FBQztRQUNKLFlBQVksRUFBRSxDQUFDO0tBQ2xCLENBQUE7SUFDTyxRQUFRLEdBQStCO1FBQzNDLENBQUMsRUFBRSxDQUFDO1FBQ0osQ0FBQyxFQUFFLENBQUM7UUFDSixDQUFDLEVBQUUsQ0FBQztRQUNKLFlBQVksRUFBRSxDQUFDO0tBQ2xCLENBQUE7SUFDRDs7T0FFRztJQUNLLFlBQVksR0FBd0IsSUFBSSxDQUFBO0lBRWhELFlBQTZCLE1BQXlCO1FBQXpCLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQ2xELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxDQUFBO1FBQ3BFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDeEQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUM5RCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQzlELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQzlELENBQUM7SUFFRCxNQUFNO1FBQ0YsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQTtRQUN2QixJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU07UUFFbkIsTUFBTSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUNqRSxNQUFNLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQzNELE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDakUsTUFBTSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUNqRSxNQUFNLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQTtJQUNqRSxDQUFDO0lBRWdCLGlCQUFpQixHQUFHLENBQUMsR0FFckMsRUFBRSxFQUFFO1FBQ0QsR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFBO0lBQ3hCLENBQUMsQ0FBQTtJQUVnQixpQkFBaUIsR0FBRyxDQUFDLEdBQWUsRUFBRSxFQUFFO1FBQ3JELElBQUksS0FBSyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFBO1FBQ2hELElBQUksS0FBSyxHQUFHLENBQUM7WUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFBOztZQUNuQixLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztZQUNwQixPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7WUFDM0IsU0FBUyxFQUFFLEtBQUs7WUFDaEIsY0FBYyxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUU7WUFDMUMsR0FBRyxJQUFJLENBQUMsV0FBVztTQUN0QixDQUFDLENBQUE7SUFDTixDQUFDLENBQUE7SUFFZ0IsaUJBQWlCLEdBQUcsQ0FBQyxHQUFpQixFQUFFLEVBQUU7UUFDdkQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTO1lBQUUsT0FBTTtRQUUxQixJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUM1QyxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDcEIsR0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFBO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFBO1FBQ3ZCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDaEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFBO1FBQ2pELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO1lBQ3pCLEtBQUssRUFBRSxLQUFLO1lBQ1osT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsS0FBSztZQUNmLEdBQUcsSUFBSSxDQUFDLFdBQVc7U0FDdEIsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFBO0lBRWdCLGlCQUFpQixHQUFHLENBQUMsR0FBaUIsRUFBRSxFQUFFO1FBQ3ZELElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTTtRQUVoRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUE7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO1lBQ3BCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLEdBQUcsSUFBSSxDQUFDLFdBQVc7U0FDdEIsQ0FBQyxDQUFBO0lBQ04sQ0FBQyxDQUFBO0lBRWdCLGVBQWUsR0FBRyxDQUFDLEdBQWlCLEVBQUUsRUFBRTtRQUNyRCxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTTtRQUVoRCxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ2pDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1lBQ3ZCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLEdBQUcsSUFBSSxDQUFDLFdBQVc7U0FDdEIsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUE7UUFDeEIsYUFBYTtRQUNiLElBQUksR0FBRyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7Z0JBQ25CLEdBQUcsSUFBSSxDQUFDLEtBQUs7Z0JBQ2IsR0FBRyxJQUFJLENBQUMsV0FBVzthQUN0QixDQUFDLENBQUE7UUFDTixDQUFDO0lBQ0wsQ0FBQyxDQUFBO0lBRU8sUUFBUSxDQUNaLEdBQThCO1FBRTlCLElBQUksQ0FBQyxXQUFXLEdBQUc7WUFDZixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUMsT0FBTyxLQUFLLGtCQUFrQjtZQUN4RCxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87WUFDcEIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1lBQ3BCLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtTQUN6QixDQUFBO1FBQ0QsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMscUJBQXFCLEVBQUUsQ0FBQTtRQUN4RSxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFBO1FBQ2xELE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxHQUFHLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQTtRQUNuRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUE7SUFDdEQsQ0FBQztDQUNKIn0=
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbnB1dC9wb2ludGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFTckMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLENBQUE7QUFFNUIsTUFBTSxPQUFPLG1CQUFtQjtJQXlDNUIsWUFBNkIsTUFBeUI7UUFBekIsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7UUF4QzdDLGFBQVEsR0FBRyxJQUFJLFFBQVEsRUFBcUMsQ0FBQTtRQUM1RCxtQkFBYyxHQUFHLElBQUksUUFBUSxFQUFzQyxDQUFBO1FBQ25FLGNBQVMsR0FBRyxJQUFJLFFBQVEsRUFBc0MsQ0FBQTtRQUM5RCxpQkFBWSxHQUFHLElBQUksUUFBUSxFQUFzQyxDQUFBO1FBQ2pFLGNBQVMsR0FBRyxJQUFJLFFBQVEsRUFBc0MsQ0FBQTtRQUN2RTs7O1dBR0c7UUFDSSxhQUFRLEdBQUcsR0FBRyxDQUFBO1FBRWIsZ0JBQVcsR0FBRztZQUNsQixNQUFNLEVBQUUsS0FBSztZQUNiLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsS0FBSztTQUNsQixDQUFBO1FBQ08sVUFBSyxHQUErQjtZQUN4QyxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixZQUFZLEVBQUUsQ0FBQztTQUNsQixDQUFBO1FBQ08sWUFBTyxHQUErQjtZQUMxQyxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixZQUFZLEVBQUUsQ0FBQztTQUNsQixDQUFBO1FBQ08sYUFBUSxHQUErQjtZQUMzQyxDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixZQUFZLEVBQUUsQ0FB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
@@ -1,13 +1,10 @@
1
1
  import { TgdVec3, TgdVec4 } from "./../math/index.js";
2
2
  export class TgdLight {
3
- /**
4
- * The alpha channel is the intensity of the light.
5
- */
6
- color;
7
- _direction = new TgdVec3();
8
3
  constructor(options = {}) {
9
- this.color = options.color ?? new TgdVec4(0.8, 0.8, 0.8, 1);
10
- this.direction = options.direction ?? new TgdVec3(0, 0, -1);
4
+ var _a, _b;
5
+ this._direction = new TgdVec3();
6
+ this.color = (_a = options.color) !== null && _a !== void 0 ? _a : new TgdVec4(0.8, 0.8, 0.8, 1);
7
+ this.direction = (_b = options.direction) !== null && _b !== void 0 ? _b : new TgdVec3(0, 0, -1);
11
8
  }
12
9
  get direction() {
13
10
  return this._direction;
@@ -16,4 +13,4 @@ export class TgdLight {
16
13
  this._direction.from(v).normalize();
17
14
  }
18
15
  }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGlnaHQvbGlnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFPNUMsTUFBTSxPQUFPLFFBQVE7SUFDakI7O09BRUc7SUFDSSxLQUFLLENBQVM7SUFFSixVQUFVLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUUzQyxZQUFZLFVBQW9DLEVBQUU7UUFDOUMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQzNELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDL0QsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUMxQixDQUFDO0lBQ0QsSUFBSSxTQUFTLENBQUMsQ0FBVTtRQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUN2QyxDQUFDO0NBQ0oifQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGlnaHQvbGlnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFPNUMsTUFBTSxPQUFPLFFBQVE7SUFRakIsWUFBWSxVQUFvQyxFQUFFOztRQUZqQyxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQUd2QyxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQUEsT0FBTyxDQUFDLEtBQUssbUNBQUksSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDM0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFBLE9BQU8sQ0FBQyxTQUFTLG1DQUFJLElBQUksT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUMvRCxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFBO0lBQzFCLENBQUM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxDQUFVO1FBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBQ3ZDLENBQUM7Q0FDSiJ9
@@ -1,7 +1,9 @@
1
1
  import { TgdParserGLTransfertFormatBinary } from "../parser";
2
- export declare function tgdLoadAssets<GLB extends string>(urls: {
3
- glb?: Record<GLB, string>;
4
- }): Promise<{
2
+ export declare function tgdLoadAssets<GLB extends string, IMG extends string>(urls: Partial<{
3
+ glb: Record<GLB, string>;
4
+ img: Record<IMG, string>;
5
+ }>): Promise<{
5
6
  glb: Record<GLB, TgdParserGLTransfertFormatBinary>;
7
+ img: Record<IMG, HTMLImageElement>;
6
8
  }>;
7
9
  //# sourceMappingURL=asset.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"asset.d.ts","sourceRoot":"","sources":["../../src/loader/asset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAA;AAG9D,wBAAsB,aAAa,CAAC,GAAG,SAAS,MAAM,EAAE,IAAI,EAAE;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;CAC5B,GAAG,OAAO,CAAC;IACR,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,gCAAgC,CAAC,CAAA;CACrD,CAAC,CA4BD"}
1
+ {"version":3,"file":"asset.d.ts","sourceRoot":"","sources":["../../src/loader/asset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAA;AAI9D,wBAAsB,aAAa,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EACtE,IAAI,EAAE,OAAO,CAAC;IACV,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACxB,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;CAC3B,CAAC,GACH,OAAO,CAAC;IACP,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,gCAAgC,CAAC,CAAA;IAClD,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAA;CACrC,CAAC,CASD"}
@@ -1,26 +1,39 @@
1
+ import { __awaiter } from "tslib";
1
2
  import { tgdLoadGlb } from "./binary.js";
2
- export async function tgdLoadAssets(urls) {
3
- const result = {
4
- glb: {},
5
- };
6
- const glbNames = (urls.glb ? Object.keys(urls.glb) : []);
7
- const tasks = [
8
- ...glbNames.map(name => new Promise(resolve => {
9
- const url = urls.glb?.[name];
10
- if (!url) {
11
- resolve();
12
- return;
13
- }
14
- tgdLoadGlb(url)
15
- .then(glb => {
16
- if (glb)
17
- result.glb[name] = glb;
18
- resolve();
19
- })
20
- .catch(resolve);
21
- })),
22
- ];
23
- await Promise.all(tasks);
24
- return result;
3
+ import { tgdLoadImage } from "./image.js";
4
+ export function tgdLoadAssets(urls) {
5
+ return __awaiter(this, void 0, void 0, function* () {
6
+ const glb = {};
7
+ const img = {};
8
+ const tasks = [
9
+ ...getPromisedLoaders(tgdLoadGlb, urls.glb, glb),
10
+ ...getPromisedLoaders(tgdLoadImage, urls.img, img),
11
+ ];
12
+ yield Promise.all(tasks);
13
+ return { glb, img };
14
+ });
25
15
  }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9hZGVyL2Fzc2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFckMsTUFBTSxDQUFDLEtBQUssVUFBVSxhQUFhLENBQXFCLElBRXZEO0lBR0csTUFBTSxNQUFNLEdBQUc7UUFDWCxHQUFHLEVBQUUsRUFBRTtLQUdWLENBQUE7SUFDRCxNQUFNLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQVUsQ0FBQTtJQUNqRSxNQUFNLEtBQUssR0FBb0I7UUFDM0IsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUNYLElBQUksQ0FBQyxFQUFFLENBQ0gsSUFBSSxPQUFPLENBQU8sT0FBTyxDQUFDLEVBQUU7WUFDeEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQzVCLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDUCxPQUFPLEVBQUUsQ0FBQTtnQkFDVCxPQUFNO1lBQ1YsQ0FBQztZQUVELFVBQVUsQ0FBQyxHQUFHLENBQUM7aUJBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNSLElBQUksR0FBRztvQkFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQTtnQkFDL0IsT0FBTyxFQUFFLENBQUE7WUFDYixDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3ZCLENBQUMsQ0FBQyxDQUNUO0tBQ0osQ0FBQTtJQUNELE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN4QixPQUFPLE1BQU0sQ0FBQTtBQUNqQixDQUFDIn0=
16
+ function getPromisedLoaders(loader, urls, target) {
17
+ return Object.keys(urls !== null && urls !== void 0 ? urls : {}).map(name => new Promise(resolve => {
18
+ if (!urls) {
19
+ resolve();
20
+ return;
21
+ }
22
+ const url = urls[name];
23
+ if (!url) {
24
+ resolve();
25
+ return;
26
+ }
27
+ loader(url)
28
+ .then(value => {
29
+ if (value)
30
+ target[name] = value;
31
+ resolve();
32
+ })
33
+ .catch(() => {
34
+ console.error("Unable to load URL ", url);
35
+ resolve();
36
+ });
37
+ }));
38
+ }
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9hZGVyL2Fzc2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUE7QUFFdEMsTUFBTSxVQUFnQixhQUFhLENBQy9CLElBR0U7O1FBS0YsTUFBTSxHQUFHLEdBQUcsRUFBbUQsQ0FBQTtRQUMvRCxNQUFNLEdBQUcsR0FBRyxFQUFtQyxDQUFBO1FBQy9DLE1BQU0sS0FBSyxHQUFvQjtZQUMzQixHQUFHLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQztZQUNoRCxHQUFHLGtCQUFrQixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQztTQUNyRCxDQUFBO1FBQ0QsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3hCLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUE7SUFDdkIsQ0FBQztDQUFBO0FBRUQsU0FBUyxrQkFBa0IsQ0FDdkIsTUFBMEMsRUFDMUMsSUFBbUMsRUFDbkMsTUFBb0I7SUFFcEIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksYUFBSixJQUFJLGNBQUosSUFBSSxHQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FDOUIsSUFBSSxDQUFDLEVBQUUsQ0FDSCxJQUFJLE9BQU8sQ0FBTyxPQUFPLENBQUMsRUFBRTtRQUN4QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDUixPQUFPLEVBQUUsQ0FBQTtZQUNULE9BQU07UUFDVixDQUFDO1FBQ0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQVMsQ0FBQyxDQUFBO1FBQzNCLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNQLE9BQU8sRUFBRSxDQUFBO1lBQ1QsT0FBTTtRQUNWLENBQUM7UUFFRCxNQUFNLENBQUMsR0FBRyxDQUFDO2FBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ1YsSUFBSSxLQUFLO2dCQUFFLE1BQU0sQ0FBQyxJQUFTLENBQUMsR0FBRyxLQUFLLENBQUE7WUFDcEMsT0FBTyxFQUFFLENBQUE7UUFDYixDQUFDLENBQUM7YUFDRCxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQ1IsT0FBTyxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLENBQUMsQ0FBQTtZQUN6QyxPQUFPLEVBQUUsQ0FBQTtRQUNiLENBQUMsQ0FBQyxDQUFBO0lBQ1YsQ0FBQyxDQUFDLENBQ1QsQ0FBQTtBQUNMLENBQUMifQ==
@@ -1,28 +1,33 @@
1
+ import { __awaiter } from "tslib";
1
2
  import { TgdParserGLTransfertFormatBinary } from "./../parser/index.js";
2
- export async function tgdLoadGlb(url) {
3
- try {
4
- const resp = await fetch(url);
5
- if (!resp.ok) {
6
- throw Error(`Unable to load GLB from url "${url}"!\nError #${resp.status}: ${resp.statusText}`);
3
+ export function tgdLoadGlb(url) {
4
+ return __awaiter(this, void 0, void 0, function* () {
5
+ try {
6
+ const resp = yield fetch(url);
7
+ if (!resp.ok) {
8
+ throw Error(`Unable to load GLB from url "${url}"!\nError #${resp.status}: ${resp.statusText}`);
9
+ }
10
+ const data = yield resp.arrayBuffer();
11
+ const parser = new TgdParserGLTransfertFormatBinary(data);
12
+ return parser;
7
13
  }
8
- const data = await resp.arrayBuffer();
9
- const parser = new TgdParserGLTransfertFormatBinary(data);
10
- return parser;
11
- }
12
- catch (ex) {
13
- console.error(ex);
14
- return null;
15
- }
14
+ catch (ex) {
15
+ console.error(ex);
16
+ return null;
17
+ }
18
+ });
16
19
  }
17
- export async function tgdLoadArrayBuffer(url) {
18
- try {
19
- const resp = await fetch(url);
20
- const data = await resp.arrayBuffer();
21
- return data;
22
- }
23
- catch (ex) {
24
- console.error(ex);
25
- return null;
26
- }
20
+ export function tgdLoadArrayBuffer(url) {
21
+ return __awaiter(this, void 0, void 0, function* () {
22
+ try {
23
+ const resp = yield fetch(url);
24
+ const data = yield resp.arrayBuffer();
25
+ return data;
26
+ }
27
+ catch (ex) {
28
+ console.error(ex);
29
+ return null;
30
+ }
31
+ });
27
32
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvYWRlci9iaW5hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRTlELE1BQU0sQ0FBQyxLQUFLLFVBQVUsVUFBVSxDQUM1QixHQUFXO0lBRVgsSUFBSSxDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNYLE1BQU0sS0FBSyxDQUNQLGdDQUFnQyxHQUFHLGNBQWMsSUFBSSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQ3JGLENBQUE7UUFDTCxDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDckMsTUFBTSxNQUFNLEdBQUcsSUFBSSxnQ0FBZ0MsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUN6RCxPQUFPLE1BQU0sQ0FBQTtJQUNqQixDQUFDO0lBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztRQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUE7UUFDakIsT0FBTyxJQUFJLENBQUE7SUFDZixDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQ3BDLEdBQVc7SUFFWCxJQUFJLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUM3QixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtRQUNyQyxPQUFPLElBQUksQ0FBQTtJQUNmLENBQUM7SUFBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUNqQixPQUFPLElBQUksQ0FBQTtJQUNmLENBQUM7QUFDTCxDQUFDIn0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvYWRlci9iaW5hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUU5RCxNQUFNLFVBQWdCLFVBQVUsQ0FDNUIsR0FBVzs7UUFFWCxJQUFJLENBQUM7WUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNYLE1BQU0sS0FBSyxDQUNQLGdDQUFnQyxHQUFHLGNBQWMsSUFBSSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQ3JGLENBQUE7WUFDTCxDQUFDO1lBQ0QsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUE7WUFDckMsTUFBTSxNQUFNLEdBQUcsSUFBSSxnQ0FBZ0MsQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUN6RCxPQUFPLE1BQU0sQ0FBQTtRQUNqQixDQUFDO1FBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUE7WUFDakIsT0FBTyxJQUFJLENBQUE7UUFDZixDQUFDO0lBQ0wsQ0FBQztDQUFBO0FBRUQsTUFBTSxVQUFnQixrQkFBa0IsQ0FDcEMsR0FBVzs7UUFFWCxJQUFJLENBQUM7WUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUM3QixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtZQUNyQyxPQUFPLElBQUksQ0FBQTtRQUNmLENBQUM7UUFBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQTtZQUNqQixPQUFPLElBQUksQ0FBQTtRQUNmLENBQUM7SUFDTCxDQUFDO0NBQUEifQ==
@@ -1,32 +1,39 @@
1
+ import { __awaiter } from "tslib";
1
2
  /**
2
3
  * Try to load an image and return `null` in case of failure.
3
4
  * @param url URL of the image to load.
4
5
  */
5
- export async function tgdLoadImage(url) {
6
- return new Promise(resolve => {
7
- const img = new Image();
8
- img.onload = () => resolve(img);
9
- img.onerror = () => {
10
- console.error("Unable to load image: ", url);
11
- resolve(null);
12
- };
13
- img.src = url;
6
+ export function tgdLoadImage(url) {
7
+ return __awaiter(this, void 0, void 0, function* () {
8
+ return new Promise(resolve => {
9
+ const img = new Image();
10
+ img.onload = () => resolve(img);
11
+ img.onerror = () => {
12
+ console.error("Unable to load image: ", url);
13
+ resolve(null);
14
+ };
15
+ img.src = url;
16
+ });
14
17
  });
15
18
  }
16
- export async function tgdLoadImages(urls) {
17
- return Promise.all(urls.map(url => tgdLoadImage(url)));
19
+ export function tgdLoadImages(urls) {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ return Promise.all(urls.map(url => tgdLoadImage(url)));
22
+ });
18
23
  }
19
- export async function tgdLoadCanvas(url) {
20
- const img = await tgdLoadImage(url);
21
- if (!img)
22
- return null;
23
- const canvas = document.createElement("canvas");
24
- canvas.width = img.naturalWidth;
25
- canvas.height = img.naturalHeight;
26
- const ctx = canvas.getContext("2d");
27
- if (!ctx)
28
- throw Error("Unable to get a 2D context!");
29
- ctx.drawImage(img, 0, 0);
30
- return canvas;
24
+ export function tgdLoadCanvas(url) {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ const img = yield tgdLoadImage(url);
27
+ if (!img)
28
+ return null;
29
+ const canvas = document.createElement("canvas");
30
+ canvas.width = img.naturalWidth;
31
+ canvas.height = img.naturalHeight;
32
+ const ctx = canvas.getContext("2d");
33
+ if (!ctx)
34
+ throw Error("Unable to get a 2D context!");
35
+ ctx.drawImage(img, 0, 0);
36
+ return canvas;
37
+ });
31
38
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9hZGVyL2ltYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsWUFBWSxDQUM5QixHQUFXO0lBRVgsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUN6QixNQUFNLEdBQUcsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFBO1FBQ3ZCLEdBQUcsQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQy9CLEdBQUcsQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLENBQUMsQ0FBQTtZQUM1QyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDakIsQ0FBQyxDQUFBO1FBQ0QsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUE7SUFDakIsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSxhQUFhLENBQy9CLElBQWM7SUFFZCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQ2QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNyQyxDQUFBO0FBQ0wsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsYUFBYSxDQUMvQixHQUFXO0lBRVgsTUFBTSxHQUFHLEdBQUcsTUFBTSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDbkMsSUFBSSxDQUFDLEdBQUc7UUFBRSxPQUFPLElBQUksQ0FBQTtJQUVyQixNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQy9DLE1BQU0sQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQTtJQUMvQixNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUE7SUFDakMsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNuQyxJQUFJLENBQUMsR0FBRztRQUFFLE1BQU0sS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUE7SUFFcEQsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3hCLE9BQU8sTUFBTSxDQUFBO0FBQ2pCLENBQUMifQ==
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9hZGVyL2ltYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7QUFDSCxNQUFNLFVBQWdCLFlBQVksQ0FDOUIsR0FBVzs7UUFFWCxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3pCLE1BQU0sR0FBRyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUE7WUFDdkIsR0FBRyxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDL0IsR0FBRyxDQUFDLE9BQU8sR0FBRyxHQUFHLEVBQUU7Z0JBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLENBQUMsQ0FBQTtnQkFDNUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ2pCLENBQUMsQ0FBQTtZQUNELEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFBO1FBQ2pCLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztDQUFBO0FBRUQsTUFBTSxVQUFnQixhQUFhLENBQy9CLElBQWM7O1FBRWQsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUNkLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDckMsQ0FBQTtJQUNMLENBQUM7Q0FBQTtBQUVELE1BQU0sVUFBZ0IsYUFBYSxDQUMvQixHQUFXOztRQUVYLE1BQU0sR0FBRyxHQUFHLE1BQU0sWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ25DLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxJQUFJLENBQUE7UUFFckIsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUMvQyxNQUFNLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUE7UUFDL0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFBO1FBQ2pDLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDbkMsSUFBSSxDQUFDLEdBQUc7WUFBRSxNQUFNLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFBO1FBRXBELEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUN4QixPQUFPLE1BQU0sQ0FBQTtJQUNqQixDQUFDO0NBQUEifQ==
package/lib/dist/log.js CHANGED
@@ -1,7 +1,10 @@
1
1
  export class TgdLogger {
2
- level = 0;
3
- lookupTable = new Map();
2
+ constructor() {
3
+ this.level = 0;
4
+ this.lookupTable = new Map();
5
+ }
4
6
  lookup(gl, value) {
7
+ var _a;
5
8
  if (typeof value !== "number")
6
9
  return JSON.stringify(value);
7
10
  const { lookupTable } = this;
@@ -14,7 +17,7 @@ export class TgdLogger {
14
17
  }
15
18
  }
16
19
  }
17
- return lookupTable.get(value) ?? `gl[${value}]`;
20
+ return (_a = lookupTable.get(value)) !== null && _a !== void 0 ? _a : `gl[${value}]`;
18
21
  }
19
22
  call(name, func) {
20
23
  const indent = " ".repeat(this.level);
@@ -48,4 +51,4 @@ export class TgdLogger {
48
51
  }
49
52
  }
50
53
  }
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sU0FBUztJQUNWLEtBQUssR0FBRyxDQUFDLENBQUE7SUFDQSxXQUFXLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUE7SUFFeEQsTUFBTSxDQUFDLEVBQTBCLEVBQUUsS0FBYztRQUM3QyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVE7WUFBRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFM0QsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQTtRQUM1QixJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDekIsMkJBQTJCO1lBQzNCLEtBQUssTUFBTSxHQUFHLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ25CLE1BQU0sR0FBRyxHQUFZLEVBQUUsQ0FBQyxHQUFtQyxDQUFDLENBQUE7Z0JBQzVELElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7b0JBQzFCLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQTtnQkFDckMsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLE1BQU0sS0FBSyxHQUFHLENBQUE7SUFDbkQsQ0FBQztJQUVELElBQUksQ0FBSSxJQUFZLEVBQUUsSUFBYTtRQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUN0QyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDakMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ1osTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFBO1FBQ3ZCLElBQUksQ0FBQztZQUNELE9BQU8sSUFBSSxFQUFFLENBQUE7UUFDakIsQ0FBQztRQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ2pCLE1BQU0sRUFBRSxDQUFBO1FBQ1osQ0FBQztnQkFBUyxDQUFDO1lBQ1AsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFBO1lBQ1osT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLE1BQU0sQ0FBQyxDQUFBO1FBQ2xFLENBQUM7SUFDTCxDQUFDO0lBRUQsVUFBVSxDQUFDLEVBQTBCO1FBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtRQUMvQixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQVksQ0FBQTtRQUN6RCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixDQUFDLENBQUE7UUFDOUMsQ0FBQzthQUFNLENBQUM7WUFDSixPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUE0QixDQUFDLENBQUE7WUFDekMsT0FBTyxDQUFDLEdBQUcsQ0FDUCxlQUFlLEVBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsRUFDL0MsR0FBRyxDQUNOLENBQUE7WUFDRCxPQUFPLENBQUMsR0FBRyxDQUNQLGVBQWUsRUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUNwRCxHQUFHLENBQ04sQ0FBQTtZQUNELE1BQU0sQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDeEMsRUFBRSxDQUFDLFdBQVcsQ0FDRCxDQUFBO1lBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUE7UUFDL0QsQ0FBQztJQUNMLENBQUM7Q0FDSiJ9
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sU0FBUztJQUF0QjtRQUNZLFVBQUssR0FBRyxDQUFDLENBQUE7UUFDQSxnQkFBVyxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFBO0lBeUQ1RCxDQUFDO0lBdkRHLE1BQU0sQ0FBQyxFQUEwQixFQUFFLEtBQWM7O1FBQzdDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTtZQUFFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUUzRCxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFBO1FBQzVCLElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6QiwyQkFBMkI7WUFDM0IsS0FBSyxNQUFNLEdBQUcsSUFBSSxFQUFFLEVBQUUsQ0FBQztnQkFDbkIsTUFBTSxHQUFHLEdBQVksRUFBRSxDQUFDLEdBQW1DLENBQUMsQ0FBQTtnQkFDNUQsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztvQkFDMUIsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFBO2dCQUNyQyxDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLE1BQUEsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsbUNBQUksTUFBTSxLQUFLLEdBQUcsQ0FBQTtJQUNuRCxDQUFDO0lBRUQsSUFBSSxDQUFJLElBQVksRUFBRSxJQUFhO1FBQy9CLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3RDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUNqQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7UUFDWixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7UUFDdkIsSUFBSSxDQUFDO1lBQ0QsT0FBTyxJQUFJLEVBQUUsQ0FBQTtRQUNqQixDQUFDO1FBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUE7WUFDakIsTUFBTSxFQUFFLENBQUE7UUFDWixDQUFDO2dCQUFTLENBQUM7WUFDUCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7WUFDWixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksTUFBTSxDQUFDLENBQUE7UUFDbEUsQ0FBQztJQUNMLENBQUM7SUFFRCxVQUFVLENBQUMsRUFBMEI7UUFDakMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO1FBQy9CLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBWSxDQUFBO1FBQ3pELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtRQUM5QyxDQUFDO2FBQU0sQ0FBQztZQUNKLE9BQU8sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLENBQUMsQ0FBQTtZQUN6QyxPQUFPLENBQUMsR0FBRyxDQUNQLGVBQWUsRUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUMvQyxHQUFHLENBQ04sQ0FBQTtZQUNELE9BQU8sQ0FBQyxHQUFHLENBQ1AsZUFBZSxFQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDLEVBQ3BELEdBQUcsQ0FDTixDQUFBO1lBQ0QsTUFBTSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUN4QyxFQUFFLENBQUMsV0FBVyxDQUNELENBQUE7WUFDakIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUMvRCxDQUFDO0lBQ0wsQ0FBQztDQUNKIn0=
@@ -1,24 +1,30 @@
1
- import { TgdProgram, TgdTexture2D, WebglAttributeType, WebglUniformType } from "../types";
1
+ import { WebglAttributeType, WebglUniformType } from "../types";
2
2
  import { TgdVec4 } from "../math";
3
3
  import { TgdMaterial } from "./material";
4
- import { CodeBloc } from "../shader/code";
4
+ import { TgdCodeBloc } from "../shader/code";
5
5
  import { TgdLight } from "../light";
6
+ import { TgdTexture2D } from "../texture";
7
+ import { TgdProgram } from "../program";
6
8
  export type TgdMaterialDiffuseOptions = Partial<{
7
9
  color: TgdVec4 | TgdTexture2D;
8
10
  light: TgdLight;
9
11
  ambient: TgdLight;
12
+ specularExponent: number;
13
+ specularIntensity: number;
10
14
  }>;
11
15
  export declare class TgdMaterialDiffuse extends TgdMaterial {
12
16
  light: TgdLight;
13
17
  ambient: TgdLight;
18
+ specularExponent: number;
19
+ specularIntensity: number;
14
20
  readonly varyings: {
15
21
  [name: string]: WebglAttributeType;
16
22
  };
17
23
  readonly uniforms: {
18
24
  [name: string]: WebglUniformType;
19
25
  };
20
- readonly fragmentShaderCode: CodeBloc;
21
- readonly vertexShaderCode: CodeBloc;
26
+ readonly fragmentShaderCode: TgdCodeBloc;
27
+ readonly vertexShaderCode: TgdCodeBloc;
22
28
  private readonly texture;
23
29
  private readonly lightColor;
24
30
  private readonly ambientColor;
@@ -1 +1 @@
1
- {"version":3,"file":"diffuse.d.ts","sourceRoot":"","sources":["../../src/material/diffuse.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EACV,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EACnB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAW,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC;IAC5C,KAAK,EAAE,OAAO,GAAG,YAAY,CAAA;IAC7B,KAAK,EAAE,QAAQ,CAAA;IACf,OAAO,EAAE,QAAQ,CAAA;CACpB,CAAC,CAAA;AAIF,qBAAa,kBAAmB,SAAQ,WAAW;IACxC,KAAK,WAAiB;IACtB,OAAO,WAAyD;IAEvE,SAAgB,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAA;IAChE,SAAgB,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAI7D;IACD,SAAgB,kBAAkB,EAAE,QAAQ,CAAA;IAC5C,SAAgB,gBAAgB,EAAE,QAAQ,CAAA;IAE1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;gBAEjC,OAAO,GAAE,yBAA8B;IAyCnD,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;CAUzC"}
1
+ {"version":3,"file":"diffuse.d.ts","sourceRoot":"","sources":["../../src/material/diffuse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AACjE,OAAO,EAAW,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC;IAC5C,KAAK,EAAE,OAAO,GAAG,YAAY,CAAA;IAC7B,KAAK,EAAE,QAAQ,CAAA;IACf,OAAO,EAAE,QAAQ,CAAA;IACjB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,MAAM,CAAA;CAC5B,CAAC,CAAA;AAIF,qBAAa,kBAAmB,SAAQ,WAAW;IACxC,KAAK,WAAiB;IACtB,OAAO,WAAyD;IAChE,gBAAgB,SAAK;IACrB,iBAAiB,SAAI;IAE5B,SAAgB,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAA;KAAE,CAAA;IAChE,SAAgB,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAM7D;IACD,SAAgB,kBAAkB,EAAE,WAAW,CAAA;IAC/C,SAAgB,gBAAgB,EAAE,WAAW,CAAA;IAE7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;gBAEjC,OAAO,GAAE,yBAA8B;IA8CnD,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;CAYzC"}