@luma.gl/core 9.0.0-beta.4 → 9.0.0-beta.6

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 (291) hide show
  1. package/dist/adapter/attribute-utils/get-attribute-from-layouts.d.ts +4 -4
  2. package/dist/adapter/attribute-utils/get-attribute-from-layouts.d.ts.map +1 -1
  3. package/dist/adapter/attribute-utils/get-attribute-from-layouts.js +138 -106
  4. package/dist/adapter/canvas-context.d.ts +2 -2
  5. package/dist/adapter/canvas-context.d.ts.map +1 -1
  6. package/dist/adapter/canvas-context.js +306 -232
  7. package/dist/adapter/device.d.ts +112 -69
  8. package/dist/adapter/device.d.ts.map +1 -1
  9. package/dist/adapter/device.js +145 -94
  10. package/dist/adapter/resources/buffer.d.ts +3 -3
  11. package/dist/adapter/resources/buffer.d.ts.map +1 -1
  12. package/dist/adapter/resources/buffer.js +70 -56
  13. package/dist/adapter/resources/command-buffer.d.ts +2 -2
  14. package/dist/adapter/resources/command-buffer.d.ts.map +1 -1
  15. package/dist/adapter/resources/command-buffer.js +15 -12
  16. package/dist/adapter/resources/command-encoder.d.ts +22 -7
  17. package/dist/adapter/resources/command-encoder.d.ts.map +1 -1
  18. package/dist/adapter/resources/command-encoder.js +16 -16
  19. package/dist/adapter/resources/compute-pass.d.ts +16 -5
  20. package/dist/adapter/resources/compute-pass.d.ts.map +1 -1
  21. package/dist/adapter/resources/compute-pass.js +15 -12
  22. package/dist/adapter/resources/compute-pipeline.d.ts +4 -4
  23. package/dist/adapter/resources/compute-pipeline.d.ts.map +1 -1
  24. package/dist/adapter/resources/compute-pipeline.js +20 -17
  25. package/dist/adapter/resources/external-texture.d.ts +2 -2
  26. package/dist/adapter/resources/external-texture.d.ts.map +1 -1
  27. package/dist/adapter/resources/external-texture.js +14 -14
  28. package/dist/adapter/resources/framebuffer.d.ts +9 -8
  29. package/dist/adapter/resources/framebuffer.d.ts.map +1 -1
  30. package/dist/adapter/resources/framebuffer.js +191 -91
  31. package/dist/adapter/resources/query-set.d.ts +26 -0
  32. package/dist/adapter/resources/query-set.d.ts.map +1 -0
  33. package/dist/adapter/resources/query-set.js +18 -0
  34. package/dist/adapter/resources/render-pass.d.ts +22 -9
  35. package/dist/adapter/resources/render-pass.d.ts.map +1 -1
  36. package/dist/adapter/resources/render-pass.js +34 -20
  37. package/dist/adapter/resources/render-pipeline.d.ts +22 -18
  38. package/dist/adapter/resources/render-pipeline.d.ts.map +1 -1
  39. package/dist/adapter/resources/render-pipeline.js +50 -33
  40. package/dist/adapter/resources/resource.d.ts +1 -1
  41. package/dist/adapter/resources/resource.d.ts.map +1 -1
  42. package/dist/adapter/resources/resource.js +133 -92
  43. package/dist/adapter/resources/sampler.d.ts +3 -3
  44. package/dist/adapter/resources/sampler.d.ts.map +1 -1
  45. package/dist/adapter/resources/sampler.js +24 -23
  46. package/dist/adapter/resources/shader.d.ts +8 -6
  47. package/dist/adapter/resources/shader.d.ts.map +1 -1
  48. package/dist/adapter/resources/shader.js +98 -74
  49. package/dist/adapter/resources/texture-view.d.ts +32 -0
  50. package/dist/adapter/resources/texture-view.d.ts.map +1 -0
  51. package/dist/adapter/resources/texture-view.js +24 -0
  52. package/dist/adapter/resources/texture.d.ts +10 -15
  53. package/dist/adapter/resources/texture.d.ts.map +1 -1
  54. package/dist/adapter/resources/texture.js +54 -42
  55. package/dist/adapter/resources/transform-feedback.d.ts +7 -7
  56. package/dist/adapter/resources/transform-feedback.d.ts.map +1 -1
  57. package/dist/adapter/resources/transform-feedback.js +15 -14
  58. package/dist/adapter/resources/vertex-array.d.ts +9 -9
  59. package/dist/adapter/resources/vertex-array.d.ts.map +1 -1
  60. package/dist/adapter/resources/vertex-array.js +36 -20
  61. package/dist/adapter/type-utils/decode-attribute-type.d.ts +2 -2
  62. package/dist/adapter/type-utils/decode-attribute-type.d.ts.map +1 -1
  63. package/dist/adapter/type-utils/decode-attribute-type.js +59 -52
  64. package/dist/adapter/type-utils/decode-data-type.d.ts +1 -1
  65. package/dist/adapter/type-utils/decode-data-type.d.ts.map +1 -1
  66. package/dist/adapter/type-utils/decode-data-type.js +39 -35
  67. package/dist/adapter/type-utils/decode-shader-types.d.ts +1 -1
  68. package/dist/adapter/type-utils/decode-shader-types.d.ts.map +1 -1
  69. package/dist/adapter/type-utils/decode-shader-types.js +36 -96
  70. package/dist/adapter/type-utils/decode-texture-format.d.ts +6 -2
  71. package/dist/adapter/type-utils/decode-texture-format.d.ts.map +1 -1
  72. package/dist/adapter/type-utils/decode-texture-format.js +172 -92
  73. package/dist/adapter/type-utils/decode-vertex-format.d.ts +1 -1
  74. package/dist/adapter/type-utils/decode-vertex-format.d.ts.map +1 -1
  75. package/dist/adapter/type-utils/decode-vertex-format.js +30 -22
  76. package/dist/adapter/type-utils/vertex-format-from-attribute.d.ts +2 -2
  77. package/dist/adapter/type-utils/vertex-format-from-attribute.d.ts.map +1 -1
  78. package/dist/adapter/type-utils/vertex-format-from-attribute.js +72 -65
  79. package/dist/adapter/type-utils/wgsl-utils.d.ts +1 -1
  80. package/dist/adapter/type-utils/wgsl-utils.d.ts.map +1 -1
  81. package/dist/adapter/type-utils/wgsl-utils.js +17 -13
  82. package/dist/adapter/types/accessor.d.ts +1 -1
  83. package/dist/adapter/types/accessor.d.ts.map +1 -1
  84. package/dist/adapter/types/accessor.js +3 -1
  85. package/dist/adapter/types/buffer-layout.d.ts +1 -1
  86. package/dist/adapter/types/buffer-layout.d.ts.map +1 -1
  87. package/dist/adapter/types/buffer-layout.js +3 -1
  88. package/dist/adapter/types/parameters.d.ts +28 -6
  89. package/dist/adapter/types/parameters.d.ts.map +1 -1
  90. package/dist/adapter/types/parameters.js +46 -26
  91. package/dist/adapter/types/shader-layout.d.ts +8 -7
  92. package/dist/adapter/types/shader-layout.d.ts.map +1 -1
  93. package/dist/adapter/types/shader-layout.js +3 -1
  94. package/dist/adapter/types/shader-types.d.ts.map +1 -1
  95. package/dist/adapter/types/shader-types.js +3 -1
  96. package/dist/adapter/types/texture-formats.d.ts +2 -2
  97. package/dist/adapter/types/texture-formats.d.ts.map +1 -1
  98. package/dist/adapter/types/texture-formats.js +3 -1
  99. package/dist/adapter/types/types.d.ts +4 -4
  100. package/dist/adapter/types/types.d.ts.map +1 -1
  101. package/dist/adapter/types/types.js +3 -1
  102. package/dist/adapter/types/vertex-formats.d.ts.map +1 -1
  103. package/dist/adapter/types/vertex-formats.js +3 -1
  104. package/dist/dist.dev.js +614 -406
  105. package/dist/index.cjs +344 -369
  106. package/dist/index.cjs.map +7 -0
  107. package/dist/index.d.ts +80 -76
  108. package/dist/index.d.ts.map +1 -1
  109. package/dist/index.js +19 -5
  110. package/dist/init.d.ts.map +1 -1
  111. package/dist/init.js +30 -17
  112. package/dist/lib/compiler-log/compiler-message.d.ts.map +1 -1
  113. package/dist/lib/compiler-log/compiler-message.js +3 -1
  114. package/dist/lib/compiler-log/format-compiler-log.d.ts +1 -1
  115. package/dist/lib/compiler-log/format-compiler-log.d.ts.map +1 -1
  116. package/dist/lib/compiler-log/format-compiler-log.js +69 -48
  117. package/dist/lib/compiler-log/get-shader-info.d.ts.map +1 -1
  118. package/dist/lib/compiler-log/get-shader-info.js +23 -19
  119. package/dist/lib/luma.d.ts +3 -3
  120. package/dist/lib/luma.d.ts.map +1 -1
  121. package/dist/lib/luma.js +60 -51
  122. package/dist/lib/uniforms/uniform-block.d.ts +3 -4
  123. package/dist/lib/uniforms/uniform-block.d.ts.map +1 -1
  124. package/dist/lib/uniforms/uniform-block.js +52 -42
  125. package/dist/lib/uniforms/uniform-buffer-layout.d.ts +2 -2
  126. package/dist/lib/uniforms/uniform-buffer-layout.d.ts.map +1 -1
  127. package/dist/lib/uniforms/uniform-buffer-layout.js +86 -66
  128. package/dist/lib/uniforms/uniform-store.d.ts +6 -6
  129. package/dist/lib/uniforms/uniform-store.d.ts.map +1 -1
  130. package/dist/lib/uniforms/uniform-store.js +111 -75
  131. package/dist/lib/uniforms/uniform.d.ts +2 -2
  132. package/dist/lib/uniforms/uniform.d.ts.map +1 -1
  133. package/dist/lib/uniforms/uniform.js +15 -15
  134. package/dist/types.d.ts.map +1 -1
  135. package/dist/types.js +4 -3
  136. package/dist/utils/array-equal.d.ts.map +1 -1
  137. package/dist/utils/array-equal.js +25 -22
  138. package/dist/utils/array-utils-flat.d.ts +1 -1
  139. package/dist/utils/array-utils-flat.d.ts.map +1 -1
  140. package/dist/utils/array-utils-flat.js +29 -28
  141. package/dist/utils/assert.d.ts.map +1 -1
  142. package/dist/utils/assert.js +8 -4
  143. package/dist/utils/cast.d.ts.map +1 -1
  144. package/dist/utils/cast.js +5 -2
  145. package/dist/utils/check-props.d.ts.map +1 -1
  146. package/dist/utils/check-props.js +30 -26
  147. package/dist/utils/deep-equal.d.ts.map +1 -1
  148. package/dist/utils/deep-equal.js +42 -32
  149. package/dist/utils/format-value.d.ts +1 -1
  150. package/dist/utils/format-value.d.ts.map +1 -1
  151. package/dist/utils/format-value.js +36 -39
  152. package/dist/utils/is-array.d.ts +1 -1
  153. package/dist/utils/is-array.d.ts.map +1 -1
  154. package/dist/utils/is-array.js +20 -6
  155. package/dist/utils/load-file.d.ts.map +1 -1
  156. package/dist/utils/load-file.js +63 -37
  157. package/dist/utils/log.d.ts.map +1 -1
  158. package/dist/utils/log.js +5 -4
  159. package/dist/utils/random.d.ts.map +1 -1
  160. package/dist/utils/random.js +13 -9
  161. package/dist/utils/request-animation-frame.d.ts.map +1 -1
  162. package/dist/utils/request-animation-frame.js +12 -3
  163. package/dist/utils/stats-manager.d.ts.map +1 -1
  164. package/dist/utils/stats-manager.js +16 -14
  165. package/dist/utils/stub-methods.d.ts.map +1 -1
  166. package/dist/utils/stub-methods.js +15 -12
  167. package/dist/utils/utils.d.ts +0 -6
  168. package/dist/utils/utils.d.ts.map +1 -1
  169. package/dist/utils/utils.js +21 -15
  170. package/dist.min.js +8 -23
  171. package/package.json +6 -6
  172. package/src/adapter/attribute-utils/get-attribute-from-layouts.ts +6 -5
  173. package/src/adapter/canvas-context.ts +8 -5
  174. package/src/adapter/device.ts +181 -127
  175. package/src/adapter/resources/buffer.ts +19 -6
  176. package/src/adapter/resources/command-buffer.ts +7 -5
  177. package/src/adapter/resources/command-encoder.ts +40 -29
  178. package/src/adapter/resources/compute-pass.ts +23 -9
  179. package/src/adapter/resources/compute-pipeline.ts +5 -2
  180. package/src/adapter/resources/external-texture.ts +8 -2
  181. package/src/adapter/resources/framebuffer.ts +115 -102
  182. package/src/adapter/resources/query-set.ts +41 -0
  183. package/src/adapter/resources/render-pass.ts +48 -54
  184. package/src/adapter/resources/render-pipeline.ts +22 -9
  185. package/src/adapter/resources/resource.ts +13 -10
  186. package/src/adapter/resources/sampler.ts +4 -3
  187. package/src/adapter/resources/shader.ts +19 -7
  188. package/src/adapter/resources/texture-view.ts +51 -0
  189. package/src/adapter/resources/texture.ts +28 -26
  190. package/src/adapter/resources/transform-feedback.ts +6 -3
  191. package/src/adapter/resources/vertex-array.ts +11 -3
  192. package/src/adapter/type-utils/decode-attribute-type.ts +24 -10
  193. package/src/adapter/type-utils/decode-data-type.ts +5 -1
  194. package/src/adapter/type-utils/decode-shader-types.ts +12 -9
  195. package/src/adapter/type-utils/decode-texture-format.ts +28 -12
  196. package/src/adapter/type-utils/decode-vertex-format.ts +4 -0
  197. package/src/adapter/type-utils/vertex-format-from-attribute.ts +4 -1
  198. package/src/adapter/type-utils/wgsl-utils.ts +6 -2
  199. package/src/adapter/types/accessor.ts +5 -2
  200. package/src/adapter/types/buffer-layout.ts +11 -8
  201. package/src/adapter/types/parameters.ts +98 -93
  202. package/src/adapter/types/shader-layout.ts +11 -2
  203. package/src/adapter/types/shader-types.ts +2 -1
  204. package/src/adapter/types/texture-formats.ts +130 -129
  205. package/src/adapter/types/types.ts +12 -6
  206. package/src/adapter/types/vertex-formats.ts +4 -5
  207. package/src/index.ts +30 -15
  208. package/src/init.ts +10 -4
  209. package/src/lib/compiler-log/compiler-message.ts +3 -2
  210. package/src/lib/compiler-log/format-compiler-log.ts +8 -3
  211. package/src/lib/compiler-log/get-shader-info.ts +2 -1
  212. package/src/lib/luma.ts +13 -8
  213. package/src/lib/uniforms/uniform-block.ts +7 -3
  214. package/src/lib/uniforms/uniform-buffer-layout.ts +16 -10
  215. package/src/lib/uniforms/uniform-store.ts +4 -1
  216. package/src/lib/uniforms/uniform.ts +12 -6
  217. package/src/types.ts +7 -3
  218. package/src/utils/array-equal.ts +2 -1
  219. package/src/utils/array-utils-flat.ts +9 -3
  220. package/src/utils/assert.ts +4 -0
  221. package/src/utils/cast.ts +4 -0
  222. package/src/utils/check-props.ts +9 -1
  223. package/src/utils/deep-equal.ts +4 -0
  224. package/src/utils/format-value.ts +9 -2
  225. package/src/utils/is-array.ts +4 -0
  226. package/src/utils/load-file.ts +5 -3
  227. package/src/utils/log.ts +4 -0
  228. package/src/utils/random.ts +4 -0
  229. package/src/utils/request-animation-frame.ts +4 -0
  230. package/src/utils/stats-manager.ts +6 -2
  231. package/src/utils/stub-methods.ts +10 -1
  232. package/src/utils/utils.ts +2 -10
  233. package/dist/adapter/attribute-utils/get-attribute-from-layouts.js.map +0 -1
  234. package/dist/adapter/canvas-context.js.map +0 -1
  235. package/dist/adapter/device.js.map +0 -1
  236. package/dist/adapter/resources/buffer.js.map +0 -1
  237. package/dist/adapter/resources/command-buffer.js.map +0 -1
  238. package/dist/adapter/resources/command-encoder.js.map +0 -1
  239. package/dist/adapter/resources/compute-pass.js.map +0 -1
  240. package/dist/adapter/resources/compute-pipeline.js.map +0 -1
  241. package/dist/adapter/resources/external-texture.js.map +0 -1
  242. package/dist/adapter/resources/framebuffer.js.map +0 -1
  243. package/dist/adapter/resources/render-pass.js.map +0 -1
  244. package/dist/adapter/resources/render-pipeline.js.map +0 -1
  245. package/dist/adapter/resources/resource.js.map +0 -1
  246. package/dist/adapter/resources/sampler.js.map +0 -1
  247. package/dist/adapter/resources/shader.js.map +0 -1
  248. package/dist/adapter/resources/texture.js.map +0 -1
  249. package/dist/adapter/resources/transform-feedback.js.map +0 -1
  250. package/dist/adapter/resources/vertex-array.js.map +0 -1
  251. package/dist/adapter/type-utils/decode-attribute-type.js.map +0 -1
  252. package/dist/adapter/type-utils/decode-data-type.js.map +0 -1
  253. package/dist/adapter/type-utils/decode-shader-types.js.map +0 -1
  254. package/dist/adapter/type-utils/decode-texture-format.js.map +0 -1
  255. package/dist/adapter/type-utils/decode-vertex-format.js.map +0 -1
  256. package/dist/adapter/type-utils/vertex-format-from-attribute.js.map +0 -1
  257. package/dist/adapter/type-utils/wgsl-utils.js.map +0 -1
  258. package/dist/adapter/types/accessor.js.map +0 -1
  259. package/dist/adapter/types/buffer-layout.js.map +0 -1
  260. package/dist/adapter/types/parameters.js.map +0 -1
  261. package/dist/adapter/types/shader-layout.js.map +0 -1
  262. package/dist/adapter/types/shader-types.js.map +0 -1
  263. package/dist/adapter/types/texture-formats.js.map +0 -1
  264. package/dist/adapter/types/types.js.map +0 -1
  265. package/dist/adapter/types/vertex-formats.js.map +0 -1
  266. package/dist/index.js.map +0 -1
  267. package/dist/init.js.map +0 -1
  268. package/dist/lib/compiler-log/compiler-message.js.map +0 -1
  269. package/dist/lib/compiler-log/format-compiler-log.js.map +0 -1
  270. package/dist/lib/compiler-log/get-shader-info.js.map +0 -1
  271. package/dist/lib/luma.js.map +0 -1
  272. package/dist/lib/uniforms/uniform-block.js.map +0 -1
  273. package/dist/lib/uniforms/uniform-buffer-layout.js.map +0 -1
  274. package/dist/lib/uniforms/uniform-store.js.map +0 -1
  275. package/dist/lib/uniforms/uniform.js.map +0 -1
  276. package/dist/types.js.map +0 -1
  277. package/dist/utils/array-equal.js.map +0 -1
  278. package/dist/utils/array-utils-flat.js.map +0 -1
  279. package/dist/utils/assert.js.map +0 -1
  280. package/dist/utils/cast.js.map +0 -1
  281. package/dist/utils/check-props.js.map +0 -1
  282. package/dist/utils/deep-equal.js.map +0 -1
  283. package/dist/utils/format-value.js.map +0 -1
  284. package/dist/utils/is-array.js.map +0 -1
  285. package/dist/utils/load-file.js.map +0 -1
  286. package/dist/utils/log.js.map +0 -1
  287. package/dist/utils/random.js.map +0 -1
  288. package/dist/utils/request-animation-frame.js.map +0 -1
  289. package/dist/utils/stats-manager.js.map +0 -1
  290. package/dist/utils/stub-methods.js.map +0 -1
  291. package/dist/utils/utils.js.map +0 -1
@@ -1,42 +1,39 @@
1
- function formatArrayValue(v) {
2
- let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
3
- const {
4
- maxElts = 16,
5
- size = 1
6
- } = opts;
7
- let string = '[';
8
- for (let i = 0; i < v.length && i < maxElts; ++i) {
9
- if (i > 0) {
10
- string += `,${i % size === 0 ? ' ' : ''}`;
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ /** TODO @deprecated - delete when confident that probe.gl logging implements all opts */
5
+ function formatArrayValue(v, opts = {}) {
6
+ const { maxElts = 16, size = 1 } = opts;
7
+ let string = '[';
8
+ for (let i = 0; i < v.length && i < maxElts; ++i) {
9
+ if (i > 0) {
10
+ string += `,${i % size === 0 ? ' ' : ''}`;
11
+ }
12
+ string += formatValue(v[i], opts);
11
13
  }
12
- string += formatValue(v[i], opts);
13
- }
14
- const terminator = v.length > maxElts ? '...' : ']';
15
- return `${string}${terminator}`;
14
+ const terminator = v.length > maxElts ? '...' : ']';
15
+ return `${string}${terminator}`;
16
16
  }
17
- export function formatValue(v) {
18
- let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
19
- const EPSILON = 1e-16;
20
- const {
21
- isInteger = false
22
- } = opts;
23
- if (Array.isArray(v) || ArrayBuffer.isView(v)) {
24
- return formatArrayValue(v, opts);
25
- }
26
- if (typeof v !== 'number') {
27
- return String(v);
28
- }
29
- if (Math.abs(v) < EPSILON) {
30
- return isInteger ? '0' : '0.';
31
- }
32
- if (isInteger) {
33
- return v.toFixed(0);
34
- }
35
- if (Math.abs(v) > 100 && Math.abs(v) < 10000) {
36
- return v.toFixed(0);
37
- }
38
- const string = v.toPrecision(2);
39
- const decimal = string.indexOf('.0');
40
- return decimal === string.length - 2 ? string.slice(0, -1) : string;
17
+ /** TODO @deprecated - delete when confident that probe.gl logging implements all opts */
18
+ export function formatValue(v, opts = {}) {
19
+ const EPSILON = 1e-16;
20
+ const { isInteger = false } = opts;
21
+ if (Array.isArray(v) || ArrayBuffer.isView(v)) {
22
+ return formatArrayValue(v, opts);
23
+ }
24
+ if (typeof v !== 'number') {
25
+ return String(v);
26
+ }
27
+ if (Math.abs(v) < EPSILON) {
28
+ return isInteger ? '0' : '0.';
29
+ }
30
+ if (isInteger) {
31
+ return v.toFixed(0);
32
+ }
33
+ if (Math.abs(v) > 100 && Math.abs(v) < 10000) {
34
+ return v.toFixed(0);
35
+ }
36
+ const string = v.toPrecision(2);
37
+ const decimal = string.indexOf('.0');
38
+ return decimal === string.length - 2 ? string.slice(0, -1) : string;
41
39
  }
42
- //# sourceMappingURL=format-value.js.map
@@ -1,4 +1,4 @@
1
- import { TypedArray, NumberArray } from '../types';
1
+ import { TypedArray, NumberArray } from "../types.js";
2
2
  /**
3
3
  * Check is an array is a typed array
4
4
  * @param value value to be tested
@@ -1 +1 @@
1
- {"version":3,"file":"is-array.d.ts","sourceRoot":"","sources":["../../src/utils/is-array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,WAAW,EAAC,MAAM,UAAU,CAAC;AAEjD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAE9D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,GAAG,IAAI,CAKhE"}
1
+ {"version":3,"file":"is-array.d.ts","sourceRoot":"","sources":["../../src/utils/is-array.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,UAAU,EAAE,WAAW,EAAC,oBAAiB;AAEjD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAE9D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,GAAG,IAAI,CAKhE"}
@@ -1,10 +1,24 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ /**
5
+ * Check is an array is a typed array
6
+ * @param value value to be tested
7
+ * @returns input as TypedArray, or null
8
+ * @todo this should be provided by @math.gl/types
9
+ */
1
10
  export function isTypedArray(value) {
2
- return ArrayBuffer.isView(value) && !(value instanceof DataView) ? value : null;
11
+ return ArrayBuffer.isView(value) && !(value instanceof DataView) ? value : null;
3
12
  }
13
+ /**
14
+ * Check is an array is a numeric array (typed array or array of numbers)
15
+ * @param value value to be tested
16
+ * @returns input as NumberArray, or null
17
+ * @todo this should be provided by @math.gl/types
18
+ */
4
19
  export function isNumberArray(value) {
5
- if (Array.isArray(value)) {
6
- return value.length === 0 || typeof value[0] === 'number' ? value : null;
7
- }
8
- return isTypedArray(value);
20
+ if (Array.isArray(value)) {
21
+ return value.length === 0 || typeof value[0] === 'number' ? value : null;
22
+ }
23
+ return isTypedArray(value);
9
24
  }
10
- //# sourceMappingURL=is-array.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"load-file.d.ts","sourceRoot":"","sources":["../../src/utils/load-file.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,QAE3C;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa,CAAA;CAAC,GAAG,WAAW,GAC1D,OAAO,CAAC,GAAG,CAAC,CAKd;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAC,GAC5B,OAAO,CAAC,WAAW,CAAC,CAMtB;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAC7B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CAY3B;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAkBrF"}
1
+ {"version":3,"file":"load-file.d.ts","sourceRoot":"","sources":["../../src/utils/load-file.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,QAE3C;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa,CAAA;CAAC,GAAG,WAAW,GAC1D,OAAO,CAAC,GAAG,CAAC,CAKd;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAC,GAC5B,OAAO,CAAC,WAAW,CAAC,CAMtB;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAC7B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CAY3B;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAmBrF"}
@@ -1,48 +1,74 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  let pathPrefix = '';
5
+ /**
6
+ * Set a relative path prefix
7
+ */
2
8
  export function setPathPrefix(prefix) {
3
- pathPrefix = prefix;
9
+ pathPrefix = prefix;
4
10
  }
11
+ /**
12
+ * Reads raw file data. Respects setPathPrefix.
13
+ */
5
14
  export async function loadFile(url, options) {
6
- url = url.startsWith('http') ? url : pathPrefix + url;
7
- const dataType = (options === null || options === void 0 ? void 0 : options.dataType) || 'text';
8
- const response = await fetch(url, options);
9
- return await response[dataType]();
15
+ url = url.startsWith('http') ? url : pathPrefix + url;
16
+ const dataType = options?.dataType || 'text';
17
+ const response = await fetch(url, options);
18
+ return await response[dataType]();
10
19
  }
20
+ /**
21
+ * Loads ImageBitmap asynchronously. Respects setPathPrefix.
22
+ * image.crossOrigin can be set via opts.crossOrigin, default to 'anonymous'
23
+ * @returns a promise tracking the load
24
+ */
11
25
  export async function loadImageBitmap(url, opts) {
12
- const image = new Image();
13
- image.crossOrigin = (opts === null || opts === void 0 ? void 0 : opts.crossOrigin) || 'anonymous';
14
- image.src = url.startsWith('http') ? url : pathPrefix + url;
15
- await image.decode();
16
- return await createImageBitmap(image);
26
+ const image = new Image();
27
+ image.crossOrigin = opts?.crossOrigin || 'anonymous';
28
+ image.src = url.startsWith('http') ? url : pathPrefix + url;
29
+ await image.decode();
30
+ return await createImageBitmap(image);
17
31
  }
32
+ /**
33
+ * Loads image asynchronously. Respects setPathPrefix.
34
+ * image.crossOrigin can be set via opts.crossOrigin, default to 'anonymous'
35
+ * @returns a promise tracking the load
36
+ * @deprecated Use `loadImageBitmap()` unless you are supporting old versions of Safari.
37
+ */
18
38
  export async function loadImage(url, opts) {
19
- return new Promise((resolve, reject) => {
20
- try {
21
- const image = new Image();
22
- image.onload = () => resolve(image);
23
- image.onerror = () => reject(new Error(`Could not load image ${url}.`));
24
- image.crossOrigin = (opts === null || opts === void 0 ? void 0 : opts.crossOrigin) || 'anonymous';
25
- image.src = url.startsWith('http') ? url : pathPrefix + url;
26
- } catch (error) {
27
- reject(error);
28
- }
29
- });
39
+ return await new Promise((resolve, reject) => {
40
+ try {
41
+ const image = new Image();
42
+ image.onload = () => resolve(image);
43
+ image.onerror = () => reject(new Error(`Could not load image ${url}.`));
44
+ image.crossOrigin = opts?.crossOrigin || 'anonymous';
45
+ image.src = url.startsWith('http') ? url : pathPrefix + url;
46
+ }
47
+ catch (error) {
48
+ reject(error);
49
+ }
50
+ });
30
51
  }
52
+ /**
53
+ * Load a script (identified by an url). When the url returns, the
54
+ * content of this file is added into a new script element, attached to the DOM (body element)
55
+ * @param scriptUrl defines the url of the script to laod
56
+ * @param scriptId defines the id of the script element
57
+ */
31
58
  export async function loadScript(scriptUrl, scriptId) {
32
- const head = document.getElementsByTagName('head')[0];
33
- if (!head) {
34
- throw new Error('loadScript');
35
- }
36
- const script = document.createElement('script');
37
- script.setAttribute('type', 'text/javascript');
38
- script.setAttribute('src', scriptUrl);
39
- if (scriptId) {
40
- script.id = scriptId;
41
- }
42
- return new Promise((resolve, reject) => {
43
- script.onload = resolve;
44
- script.onerror = error => reject(new Error(`Unable to load script '${scriptUrl}': ${error}`));
45
- head.appendChild(script);
46
- });
59
+ const head = document.getElementsByTagName('head')[0];
60
+ if (!head) {
61
+ throw new Error('loadScript');
62
+ }
63
+ const script = document.createElement('script');
64
+ script.setAttribute('type', 'text/javascript');
65
+ script.setAttribute('src', scriptUrl);
66
+ if (scriptId) {
67
+ script.id = scriptId;
68
+ }
69
+ return new Promise((resolve, reject) => {
70
+ script.onload = resolve;
71
+ script.onerror = error => reject(new Error(`Unable to load script '${scriptUrl}': ${error}`));
72
+ head.appendChild(script);
73
+ });
47
74
  }
48
- //# sourceMappingURL=load-file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/utils/log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,0BAA0B;AAC1B,eAAO,MAAM,GAAG,EAAE,GAA8B,CAAC"}
1
+ {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/utils/log.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,0BAA0B;AAC1B,eAAO,MAAM,GAAG,EAAE,GAA8B,CAAC"}
package/dist/utils/log.js CHANGED
@@ -1,5 +1,6 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import { Log } from '@probe.gl/log';
2
- export const log = new Log({
3
- id: 'luma.gl'
4
- });
5
- //# sourceMappingURL=log.js.map
5
+ /** Global log instance */
6
+ export const log = new Log({ id: 'luma.gl' });
@@ -1 +1 @@
1
- {"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../src/utils/random.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,wBAAgB,yBAAyB,IAAI,MAAM,MAAM,CAQxD;AAMD,oDAAoD;AACpD,eAAO,MAAM,MAAM,QAfgC,MAeF,CAAC"}
1
+ {"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../src/utils/random.ts"],"names":[],"mappings":"AAIA,4DAA4D;AAC5D,wBAAgB,yBAAyB,IAAI,MAAM,MAAM,CAQxD;AAMD,oDAAoD;AACpD,eAAO,MAAM,MAAM,QAfgC,MAeF,CAAC"}
@@ -1,14 +1,18 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ /** Creates a deterministic pseudorandom number generator */
1
5
  export function makeRandomNumberGenerator() {
2
- let s = 1;
3
- let c = 1;
4
- return () => {
5
- s = Math.sin(c * 17.23);
6
- c = Math.cos(s * 27.92);
7
- return fract(Math.abs(s * c) * 1432.71);
8
- };
6
+ let s = 1;
7
+ let c = 1;
8
+ return () => {
9
+ s = Math.sin(c * 17.23);
10
+ c = Math.cos(s * 27.92);
11
+ return fract(Math.abs(s * c) * 1432.71);
12
+ };
9
13
  }
10
14
  function fract(n) {
11
- return n - Math.floor(n);
15
+ return n - Math.floor(n);
12
16
  }
17
+ /** Generates a deterministic pseudorandom number */
13
18
  export const random = makeRandomNumberGenerator();
14
- //# sourceMappingURL=random.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"request-animation-frame.d.ts","sourceRoot":"","sources":["../../src/utils/request-animation-frame.ts"],"names":[],"mappings":"AAIA,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,GAAG,CAIzE;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAIvD"}
1
+ {"version":3,"file":"request-animation-frame.d.ts","sourceRoot":"","sources":["../../src/utils/request-animation-frame.ts"],"names":[],"mappings":"AAQA,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,GAAG,CAIzE;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAIvD"}
@@ -1,7 +1,16 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ // Node.js polyfills for requestAnimationFrame and cancelAnimationFrame
5
+ /* global window, setTimeout, clearTimeout */
6
+ // / <reference types="@types/node" />
1
7
  export function requestAnimationFrame(callback) {
2
- return typeof window !== 'undefined' && window.requestAnimationFrame ? window.requestAnimationFrame(callback) : setTimeout(callback, 1000 / 60);
8
+ return typeof window !== 'undefined' && window.requestAnimationFrame
9
+ ? window.requestAnimationFrame(callback)
10
+ : setTimeout(callback, 1000 / 60);
3
11
  }
4
12
  export function cancelAnimationFrame(timerId) {
5
- return typeof window !== 'undefined' && window.cancelAnimationFrame ? window.cancelAnimationFrame(timerId) : clearTimeout(timerId);
13
+ return typeof window !== 'undefined' && window.cancelAnimationFrame
14
+ ? window.cancelAnimationFrame(timerId)
15
+ : clearTimeout(timerId);
6
16
  }
7
- //# sourceMappingURL=request-animation-frame.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stats-manager.d.ts","sourceRoot":"","sources":["../../src/utils/stats-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEtC;;GAEG;AACH,qBAAa,YAAY;IACvB,KAAK,gBAAa;IAElB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAI7B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;CAOzB;AAED,2CAA2C;AAC3C,eAAO,MAAM,SAAS,EAAE,YAAiC,CAAC"}
1
+ {"version":3,"file":"stats-manager.d.ts","sourceRoot":"","sources":["../../src/utils/stats-manager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEtC;;GAEG;AACH,qBAAa,YAAY;IACvB,KAAK,gBAAa;IAElB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAI7B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;CAOzB;AAED,2CAA2C;AAC3C,eAAO,MAAM,SAAS,EAAE,YAAiC,CAAC"}
@@ -1,19 +1,21 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import { Stats } from '@probe.gl/stats';
5
+ /**
6
+ * Helper class managing a collection of probe.gl stats objects
7
+ */
2
8
  export class StatsManager {
3
- constructor() {
4
- this.stats = new Map();
5
- }
6
- getStats(name) {
7
- return this.get(name);
8
- }
9
- get(name) {
10
- if (!this.stats.has(name)) {
11
- this.stats.set(name, new Stats({
12
- id: name
13
- }));
9
+ stats = new Map();
10
+ getStats(name) {
11
+ return this.get(name);
12
+ }
13
+ get(name) {
14
+ if (!this.stats.has(name)) {
15
+ this.stats.set(name, new Stats({ id: name }));
16
+ }
17
+ return this.stats.get(name);
14
18
  }
15
- return this.stats.get(name);
16
- }
17
19
  }
20
+ /** Global stats for all luma.gl devices */
18
21
  export const lumaStats = new StatsManager();
19
- //# sourceMappingURL=stats-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stub-methods.d.ts","sourceRoot":"","sources":["../../src/utils/stub-methods.ts"],"names":[],"mappings":"AAGA,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAgB1G"}
1
+ {"version":3,"file":"stub-methods.d.ts","sourceRoot":"","sources":["../../src/utils/stub-methods.ts"],"names":[],"mappings":"AAOA,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EAAE,QAiBtB"}
@@ -1,16 +1,19 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import { log } from "./log.js";
5
+ // Install stubs for removed methods
2
6
  export function stubRemovedMethods(instance, className, version, methodNames) {
3
- const upgradeMessage = `See luma.gl ${version} Upgrade Guide at \
7
+ const upgradeMessage = `See luma.gl ${version} Upgrade Guide at \
4
8
  https://luma.gl/docs/upgrade-guide`;
5
- const prototype = Object.getPrototypeOf(instance);
6
- methodNames.forEach(methodName => {
7
- if (prototype.methodName) {
8
- return;
9
- }
10
- prototype[methodName] = () => {
11
- log.removed(`Calling removed method ${className}.${methodName}: `, upgradeMessage)();
12
- throw new Error(methodName);
13
- };
14
- });
9
+ const prototype = Object.getPrototypeOf(instance);
10
+ methodNames.forEach((methodName) => {
11
+ if (prototype.methodName) {
12
+ return;
13
+ }
14
+ prototype[methodName] = () => {
15
+ log.removed(`Calling removed method ${className}.${methodName}: `, upgradeMessage)();
16
+ throw new Error(methodName);
17
+ };
18
+ });
15
19
  }
16
- //# sourceMappingURL=stub-methods.js.map
@@ -4,12 +4,6 @@
4
4
  * @return uid
5
5
  **/
6
6
  export declare function uid(id?: string): string;
7
- /**
8
- * Verifies if a given number is power of two or not.
9
- * @param n - The number to check.
10
- * @return Returns true if the given number is power of 2, false otherwise.
11
- **/
12
- export declare function isPowerOfTwo(n: number): boolean;
13
7
  /** Returns true if given object is empty, false otherwise. */
14
8
  export declare function isObjectEmpty(obj: object): boolean;
15
9
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAKA;;;;IAII;AACJ,wBAAgB,GAAG,CAAC,EAAE,GAAE,MAAa,GAAG,MAAM,CAI7C;AAED;;;;IAII;AACJ,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CASlD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAMA;;;;IAII;AACJ,wBAAgB,GAAG,CAAC,EAAE,GAAE,MAAa,GAAG,MAAM,CAI7C;AAED,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CASlD"}
@@ -1,19 +1,25 @@
1
+ // luma.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  const uidCounters = {};
2
- export function uid() {
3
- let id = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'id';
4
- uidCounters[id] = uidCounters[id] || 1;
5
- const count = uidCounters[id]++;
6
- return `${id}-${count}`;
7
- }
8
- export function isPowerOfTwo(n) {
9
- return n > 0 && (n & n - 1) === 0;
5
+ /**
6
+ * Returns a UID.
7
+ * @param id= - Identifier base name
8
+ * @return uid
9
+ **/
10
+ export function uid(id = 'id') {
11
+ uidCounters[id] = uidCounters[id] || 1;
12
+ const count = uidCounters[id]++;
13
+ return `${id}-${count}`;
10
14
  }
15
+ /** Returns true if given object is empty, false otherwise. */
11
16
  export function isObjectEmpty(obj) {
12
- let isEmpty = true;
13
- for (const key in obj) {
14
- isEmpty = false;
15
- break;
16
- }
17
- return isEmpty;
17
+ let isEmpty = true;
18
+ // @ts-ignore key is unused
19
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
20
+ for (const key in obj) {
21
+ isEmpty = false;
22
+ break;
23
+ }
24
+ return isEmpty;
18
25
  }
19
- //# sourceMappingURL=utils.js.map