@luma.gl/webgl 8.5.15 → 8.5.16

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 (194) hide show
  1. package/dist/dist.js +732 -848
  2. package/dist/dist.min.js +1 -1
  3. package/dist/es5/bundle.js.map +1 -1
  4. package/dist/es5/classes/accessor.js +31 -33
  5. package/dist/es5/classes/accessor.js.map +1 -1
  6. package/dist/es5/classes/buffer.js +24 -26
  7. package/dist/es5/classes/buffer.js.map +1 -1
  8. package/dist/es5/classes/clear.js.map +1 -1
  9. package/dist/es5/classes/copy-and-blit.js +3 -3
  10. package/dist/es5/classes/copy-and-blit.js.map +1 -1
  11. package/dist/es5/classes/framebuffer.js +70 -72
  12. package/dist/es5/classes/framebuffer.js.map +1 -1
  13. package/dist/es5/classes/program-configuration.js.map +1 -1
  14. package/dist/es5/classes/program.js +11 -13
  15. package/dist/es5/classes/program.js.map +1 -1
  16. package/dist/es5/classes/query.js +47 -49
  17. package/dist/es5/classes/query.js.map +1 -1
  18. package/dist/es5/classes/renderbuffer-formats.js.map +1 -1
  19. package/dist/es5/classes/renderbuffer.js +37 -39
  20. package/dist/es5/classes/renderbuffer.js.map +1 -1
  21. package/dist/es5/classes/resource.js +13 -15
  22. package/dist/es5/classes/resource.js.map +1 -1
  23. package/dist/es5/classes/shader.js +38 -44
  24. package/dist/es5/classes/shader.js.map +1 -1
  25. package/dist/es5/classes/texture-2d.js +16 -17
  26. package/dist/es5/classes/texture-2d.js.map +1 -1
  27. package/dist/es5/classes/texture-3d.js +15 -17
  28. package/dist/es5/classes/texture-3d.js.map +1 -1
  29. package/dist/es5/classes/texture-cube.js +10 -12
  30. package/dist/es5/classes/texture-cube.js.map +1 -1
  31. package/dist/es5/classes/texture-formats.js +1 -1
  32. package/dist/es5/classes/texture-formats.js.map +1 -1
  33. package/dist/es5/classes/texture.js +24 -26
  34. package/dist/es5/classes/texture.js.map +1 -1
  35. package/dist/es5/classes/transform-feedback.js +16 -22
  36. package/dist/es5/classes/transform-feedback.js.map +1 -1
  37. package/dist/es5/classes/uniform-buffer-layout.js.map +1 -1
  38. package/dist/es5/classes/uniforms.js +2 -2
  39. package/dist/es5/classes/uniforms.js.map +1 -1
  40. package/dist/es5/classes/vertex-array-object.js +69 -71
  41. package/dist/es5/classes/vertex-array-object.js.map +1 -1
  42. package/dist/es5/classes/vertex-array.js.map +1 -1
  43. package/dist/es5/debug/debug-program-configuration.js +1 -1
  44. package/dist/es5/debug/debug-program-configuration.js.map +1 -1
  45. package/dist/es5/debug/debug-uniforms.js +1 -1
  46. package/dist/es5/debug/debug-uniforms.js.map +1 -1
  47. package/dist/es5/debug/debug-vertex-array.js.map +1 -1
  48. package/dist/es5/features/check-glsl-extension.js.map +1 -1
  49. package/dist/es5/features/check-old-ie.js.map +1 -1
  50. package/dist/es5/features/features.js +2 -2
  51. package/dist/es5/features/features.js.map +1 -1
  52. package/dist/es5/features/index.js +16 -16
  53. package/dist/es5/features/index.js.map +1 -1
  54. package/dist/es5/features/limits.js +1 -1
  55. package/dist/es5/features/limits.js.map +1 -1
  56. package/dist/es5/features/webgl-features-table.js.map +1 -1
  57. package/dist/es5/features/webgl-limits-table.js.map +1 -1
  58. package/dist/es5/glsl-utils/format-glsl-error.js.map +1 -1
  59. package/dist/es5/glsl-utils/get-shader-name.js.map +1 -1
  60. package/dist/es5/glsl-utils/get-shader-type-name.js.map +1 -1
  61. package/dist/es5/glsl-utils/get-shader-version.js.map +1 -1
  62. package/dist/es5/glsl-utils/index.js +11 -7
  63. package/dist/es5/glsl-utils/index.js.map +1 -1
  64. package/dist/es5/index.js +104 -104
  65. package/dist/es5/index.js.map +1 -1
  66. package/dist/es5/init.d.ts +1 -1
  67. package/dist/es5/init.js +4 -4
  68. package/dist/es5/init.js.map +1 -1
  69. package/dist/es5/utils/array-utils-flat.js +2 -2
  70. package/dist/es5/utils/array-utils-flat.js.map +1 -1
  71. package/dist/es5/utils/assert.js.map +1 -1
  72. package/dist/es5/utils/check-props.js.map +1 -1
  73. package/dist/es5/utils/format-value.js.map +1 -1
  74. package/dist/es5/utils/is-old-ie.js.map +1 -1
  75. package/dist/es5/utils/load-file.js +1 -1
  76. package/dist/es5/utils/load-file.js.map +1 -1
  77. package/dist/es5/utils/stub-methods.js.map +1 -1
  78. package/dist/es5/utils/utils.js +2 -2
  79. package/dist/es5/utils/utils.js.map +1 -1
  80. package/dist/es5/webgl-utils/attribute-utils.js +3 -3
  81. package/dist/es5/webgl-utils/attribute-utils.js.map +1 -1
  82. package/dist/es5/webgl-utils/constants-to-keys.js +1 -1
  83. package/dist/es5/webgl-utils/constants-to-keys.js.map +1 -1
  84. package/dist/es5/webgl-utils/format-utils.js.map +1 -1
  85. package/dist/es5/webgl-utils/get-error.js +1 -1
  86. package/dist/es5/webgl-utils/get-error.js.map +1 -1
  87. package/dist/es5/webgl-utils/request-animation-frame.js +1 -1
  88. package/dist/es5/webgl-utils/request-animation-frame.js.map +1 -1
  89. package/dist/es5/webgl-utils/texture-utils.js.map +1 -1
  90. package/dist/es5/webgl-utils/typed-array-utils.js +1 -1
  91. package/dist/es5/webgl-utils/typed-array-utils.js.map +1 -1
  92. package/dist/esm/bundle.js.map +1 -1
  93. package/dist/esm/classes/accessor.js +12 -3
  94. package/dist/esm/classes/accessor.js.map +1 -1
  95. package/dist/esm/classes/buffer.js +41 -28
  96. package/dist/esm/classes/buffer.js.map +1 -1
  97. package/dist/esm/classes/clear.js +14 -12
  98. package/dist/esm/classes/clear.js.map +1 -1
  99. package/dist/esm/classes/copy-and-blit.js +27 -21
  100. package/dist/esm/classes/copy-and-blit.js.map +1 -1
  101. package/dist/esm/classes/framebuffer.js +89 -64
  102. package/dist/esm/classes/framebuffer.js.map +1 -1
  103. package/dist/esm/classes/program-configuration.js.map +1 -1
  104. package/dist/esm/classes/program.js +40 -32
  105. package/dist/esm/classes/program.js.map +1 -1
  106. package/dist/esm/classes/query.js +11 -6
  107. package/dist/esm/classes/query.js.map +1 -1
  108. package/dist/esm/classes/renderbuffer-formats.js.map +1 -1
  109. package/dist/esm/classes/renderbuffer.js +25 -19
  110. package/dist/esm/classes/renderbuffer.js.map +1 -1
  111. package/dist/esm/classes/resource.js +34 -19
  112. package/dist/esm/classes/resource.js.map +1 -1
  113. package/dist/esm/classes/shader.js +13 -10
  114. package/dist/esm/classes/shader.js.map +1 -1
  115. package/dist/esm/classes/texture-2d.js +2 -1
  116. package/dist/esm/classes/texture-2d.js.map +1 -1
  117. package/dist/esm/classes/texture-3d.js +17 -14
  118. package/dist/esm/classes/texture-3d.js.map +1 -1
  119. package/dist/esm/classes/texture-cube.js +23 -19
  120. package/dist/esm/classes/texture-cube.js.map +1 -1
  121. package/dist/esm/classes/texture-formats.js.map +1 -1
  122. package/dist/esm/classes/texture.js +47 -35
  123. package/dist/esm/classes/texture.js.map +1 -1
  124. package/dist/esm/classes/transform-feedback.js +12 -6
  125. package/dist/esm/classes/transform-feedback.js.map +1 -1
  126. package/dist/esm/classes/uniform-buffer-layout.js.map +1 -1
  127. package/dist/esm/classes/uniforms.js +6 -6
  128. package/dist/esm/classes/uniforms.js.map +1 -1
  129. package/dist/esm/classes/vertex-array-object.js +17 -9
  130. package/dist/esm/classes/vertex-array-object.js.map +1 -1
  131. package/dist/esm/classes/vertex-array.js +17 -7
  132. package/dist/esm/classes/vertex-array.js.map +1 -1
  133. package/dist/esm/debug/debug-program-configuration.js +4 -4
  134. package/dist/esm/debug/debug-program-configuration.js.map +1 -1
  135. package/dist/esm/debug/debug-uniforms.js +16 -14
  136. package/dist/esm/debug/debug-uniforms.js.map +1 -1
  137. package/dist/esm/debug/debug-vertex-array.js +16 -14
  138. package/dist/esm/debug/debug-vertex-array.js.map +1 -1
  139. package/dist/esm/features/check-glsl-extension.js +3 -2
  140. package/dist/esm/features/check-glsl-extension.js.map +1 -1
  141. package/dist/esm/features/check-old-ie.js +2 -1
  142. package/dist/esm/features/check-old-ie.js.map +1 -1
  143. package/dist/esm/features/features.js +1 -1
  144. package/dist/esm/features/features.js.map +1 -1
  145. package/dist/esm/features/index.js.map +1 -1
  146. package/dist/esm/features/limits.js.map +1 -1
  147. package/dist/esm/features/webgl-features-table.js +1 -1
  148. package/dist/esm/features/webgl-features-table.js.map +1 -1
  149. package/dist/esm/features/webgl-limits-table.js.map +1 -1
  150. package/dist/esm/glsl-utils/format-glsl-error.js +9 -7
  151. package/dist/esm/glsl-utils/format-glsl-error.js.map +1 -1
  152. package/dist/esm/glsl-utils/get-shader-name.js +2 -1
  153. package/dist/esm/glsl-utils/get-shader-name.js.map +1 -1
  154. package/dist/esm/glsl-utils/get-shader-type-name.js.map +1 -1
  155. package/dist/esm/glsl-utils/get-shader-version.js.map +1 -1
  156. package/dist/esm/glsl-utils/index.js.map +1 -1
  157. package/dist/esm/index.js.map +1 -1
  158. package/dist/esm/init.d.ts +1 -1
  159. package/dist/esm/init.js +4 -4
  160. package/dist/esm/init.js.map +1 -1
  161. package/dist/esm/utils/array-utils-flat.js +7 -6
  162. package/dist/esm/utils/array-utils-flat.js.map +1 -1
  163. package/dist/esm/utils/assert.js.map +1 -1
  164. package/dist/esm/utils/check-props.js +4 -4
  165. package/dist/esm/utils/check-props.js.map +1 -1
  166. package/dist/esm/utils/format-value.js +4 -3
  167. package/dist/esm/utils/format-value.js.map +1 -1
  168. package/dist/esm/utils/is-old-ie.js +2 -1
  169. package/dist/esm/utils/is-old-ie.js.map +1 -1
  170. package/dist/esm/utils/load-file.js +3 -2
  171. package/dist/esm/utils/load-file.js.map +1 -1
  172. package/dist/esm/utils/stub-methods.js +2 -3
  173. package/dist/esm/utils/stub-methods.js.map +1 -1
  174. package/dist/esm/utils/utils.js +3 -2
  175. package/dist/esm/utils/utils.js.map +1 -1
  176. package/dist/esm/webgl-utils/attribute-utils.js +11 -8
  177. package/dist/esm/webgl-utils/attribute-utils.js.map +1 -1
  178. package/dist/esm/webgl-utils/constants-to-keys.js +3 -3
  179. package/dist/esm/webgl-utils/constants-to-keys.js.map +1 -1
  180. package/dist/esm/webgl-utils/format-utils.js.map +1 -1
  181. package/dist/esm/webgl-utils/get-error.js +1 -1
  182. package/dist/esm/webgl-utils/get-error.js.map +1 -1
  183. package/dist/esm/webgl-utils/request-animation-frame.js.map +1 -1
  184. package/dist/esm/webgl-utils/texture-utils.js +1 -1
  185. package/dist/esm/webgl-utils/texture-utils.js.map +1 -1
  186. package/dist/esm/webgl-utils/typed-array-utils.js +19 -15
  187. package/dist/esm/webgl-utils/typed-array-utils.js.map +1 -1
  188. package/package.json +5 -5
  189. package/src/classes/framebuffer.js +1 -0
  190. package/src/classes/transform-feedback.js +1 -1
  191. package/src/classes/vertex-array-object.js +1 -1
  192. package/src/init.d.ts +1 -1
  193. package/src/init.js +1 -1
  194. package/src/webgl-utils/texture-utils.js +2 -0
@@ -6,14 +6,14 @@ export default function formatGLSLCompilerError(errLog, src, shaderType) {
6
6
  errors,
7
7
  warnings
8
8
  } = parseGLSLCompilerError(errLog, src, shaderType);
9
- return `GLSL compilation error in ${shaderName}\n\n${errors}\n${warnings}`;
9
+ return "GLSL compilation error in ".concat(shaderName, "\n\n").concat(errors, "\n").concat(warnings);
10
10
  }
11
11
  export function parseGLSLCompilerError(errLog, src, shaderType, shaderName) {
12
12
  const errorStrings = errLog.split(/\r?\n/);
13
13
  const errors = {};
14
14
  const warnings = {};
15
15
  const name = shaderName || getShaderName(src) || '(unnamed)';
16
- const shaderDescription = `${getShaderTypeName(shaderType)} shader ${name}`;
16
+ const shaderDescription = "".concat(getShaderTypeName(shaderType), " shader ").concat(name);
17
17
 
18
18
  for (let i = 0; i < errorStrings.length; i++) {
19
19
  const errorString = errorStrings[i];
@@ -27,7 +27,7 @@ export function parseGLSLCompilerError(errLog, src, shaderType, shaderName) {
27
27
  const line = parseInt(segments[2], 10);
28
28
 
29
29
  if (isNaN(line)) {
30
- throw new Error(`GLSL compilation error in ${shaderDescription}: ${errLog}`);
30
+ throw new Error("GLSL compilation error in ".concat(shaderDescription, ": ").concat(errLog));
31
31
  }
32
32
 
33
33
  if (type !== 'WARNING') {
@@ -55,7 +55,7 @@ function formatErrors(errors, lines) {
55
55
  continue;
56
56
  }
57
57
 
58
- message += `${line}\n`;
58
+ message += "".concat(line, "\n");
59
59
 
60
60
  if (errors[i + 1]) {
61
61
  const error = errors[i + 1];
@@ -63,14 +63,16 @@ function formatErrors(errors, lines) {
63
63
  const type = segments[0];
64
64
  const column = parseInt(segments[1], 10) || 0;
65
65
  const err = error.substring(segments.join(':').length + 1).trim();
66
- message += padLeft(`^^^ ${type}: ${err}\n\n`, column);
66
+ message += padLeft("^^^ ".concat(type, ": ").concat(err, "\n\n"), column);
67
67
  }
68
68
  }
69
69
 
70
70
  return message;
71
71
  }
72
72
 
73
- function addLineNumbers(string, start = 1, delim = ': ') {
73
+ function addLineNumbers(string) {
74
+ let start = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
75
+ let delim = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ': ';
74
76
  const lines = string.split(/\r?\n/);
75
77
  const maxDigits = String(lines.length + start - 1).length;
76
78
  return lines.map((line, i) => {
@@ -88,6 +90,6 @@ function padLeft(string, digits) {
88
90
  result += ' ';
89
91
  }
90
92
 
91
- return `${result}${string}`;
93
+ return "".concat(result).concat(string);
92
94
  }
93
95
  //# sourceMappingURL=format-glsl-error.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/glsl-utils/format-glsl-error.js"],"names":["getShaderName","getShaderTypeName","formatGLSLCompilerError","errLog","src","shaderType","shaderName","errors","warnings","parseGLSLCompilerError","errorStrings","split","name","shaderDescription","i","length","errorString","segments","type","line","parseInt","isNaN","Error","lines","addLineNumbers","formatErrors","message","error","column","err","substring","join","trim","padLeft","string","start","delim","maxDigits","String","map","lineNumber","digits","prefix","result"],"mappings":"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","sourcesContent":["// TODO - formatGLSLCompilerError should not depend on this\nimport getShaderName from './get-shader-name';\nimport getShaderTypeName from './get-shader-type-name';\n\n// Formats GLSL compiler error log into single string\nexport default function formatGLSLCompilerError(errLog, src, shaderType) {\n const {shaderName, errors, warnings} = parseGLSLCompilerError(errLog, src, shaderType);\n return `GLSL compilation error in ${shaderName}\\n\\n${errors}\\n${warnings}`;\n}\n\n/**\n * Parse a GLSL compiler error log into a string showing the source code around each error.\n * Based on https://github.com/wwwtyro/gl-format-compiler-error (public domain)\n */\n/* eslint-disable no-continue, max-statements */\nexport function parseGLSLCompilerError(errLog, src, shaderType, shaderName) {\n const errorStrings = errLog.split(/\\r?\\n/);\n const errors = {};\n const warnings = {};\n\n // Patch the shader name\n const name = shaderName || getShaderName(src) || '(unnamed)';\n const shaderDescription = `${getShaderTypeName(shaderType)} shader ${name}`;\n\n // Parse the error - note: browser and driver dependent\n for (let i = 0; i < errorStrings.length; i++) {\n const errorString = errorStrings[i];\n if (errorString.length <= 1) {\n continue;\n }\n const segments = errorString.split(':');\n const type = segments[0];\n const line = parseInt(segments[2], 10);\n if (isNaN(line)) {\n throw new Error(`GLSL compilation error in ${shaderDescription}: ${errLog}`);\n }\n if (type !== 'WARNING') {\n errors[line] = errorString;\n } else {\n warnings[line] = errorString;\n }\n }\n\n // Format the error inline with the code\n const lines = addLineNumbers(src);\n\n return {\n shaderName: shaderDescription,\n errors: formatErrors(errors, lines),\n warnings: formatErrors(warnings, lines)\n };\n}\n\n// helper function, outputs annotated errors or warnings\nfunction formatErrors(errors, lines) {\n let message = '';\n for (let i = 0; i < lines.length; i++) {\n const line = lines[i];\n if (!errors[i + 3] && !errors[i + 2] && !errors[i + 1]) {\n continue;\n }\n message += `${line}\\n`;\n if (errors[i + 1]) {\n const error = errors[i + 1];\n const segments = error.split(':', 3);\n const type = segments[0];\n const column = parseInt(segments[1], 10) || 0;\n const err = error.substring(segments.join(':').length + 1).trim();\n message += padLeft(`^^^ ${type}: ${err}\\n\\n`, column);\n }\n }\n return message;\n}\n\n/**\n * Prepends line numbers to each line of a string.\n * The line numbers will be left-padded with spaces to ensure an\n * aligned layout when rendered using monospace fonts.\n * @param {String} string - multi-line string to add line numbers to\n * @param {Number} start=1 - number of spaces to add\n * @param {String} delim =': ' - injected between line number and original line\n * @return {String[]} strings - array of string, one per line, with line numbers added\n */\nfunction addLineNumbers(string, start = 1, delim = ': ') {\n const lines = string.split(/\\r?\\n/);\n const maxDigits = String(lines.length + start - 1).length;\n return lines.map((line, i) => {\n const lineNumber = String(i + start);\n const digits = lineNumber.length;\n const prefix = padLeft(lineNumber, maxDigits - digits);\n return prefix + delim + line;\n });\n}\n\n/**\n * Pads a string with a number of spaces (space characters) to the left\n * @param {String} string - string to pad\n * @param {Number} digits - number of spaces to add\n * @return {String} string - The padded string\n */\nfunction padLeft(string, digits) {\n let result = '';\n for (let i = 0; i < digits; ++i) {\n result += ' ';\n }\n return `${result}${string}`;\n}\n"],"file":"format-glsl-error.js"}
1
+ {"version":3,"file":"format-glsl-error.js","names":["getShaderName","getShaderTypeName","formatGLSLCompilerError","errLog","src","shaderType","shaderName","errors","warnings","parseGLSLCompilerError","errorStrings","split","name","shaderDescription","i","length","errorString","segments","type","line","parseInt","isNaN","Error","lines","addLineNumbers","formatErrors","message","error","column","err","substring","join","trim","padLeft","string","start","delim","maxDigits","String","map","lineNumber","digits","prefix","result"],"sources":["../../../src/glsl-utils/format-glsl-error.js"],"sourcesContent":["// TODO - formatGLSLCompilerError should not depend on this\nimport getShaderName from './get-shader-name';\nimport getShaderTypeName from './get-shader-type-name';\n\n// Formats GLSL compiler error log into single string\nexport default function formatGLSLCompilerError(errLog, src, shaderType) {\n const {shaderName, errors, warnings} = parseGLSLCompilerError(errLog, src, shaderType);\n return `GLSL compilation error in ${shaderName}\\n\\n${errors}\\n${warnings}`;\n}\n\n/**\n * Parse a GLSL compiler error log into a string showing the source code around each error.\n * Based on https://github.com/wwwtyro/gl-format-compiler-error (public domain)\n */\n/* eslint-disable no-continue, max-statements */\nexport function parseGLSLCompilerError(errLog, src, shaderType, shaderName) {\n const errorStrings = errLog.split(/\\r?\\n/);\n const errors = {};\n const warnings = {};\n\n // Patch the shader name\n const name = shaderName || getShaderName(src) || '(unnamed)';\n const shaderDescription = `${getShaderTypeName(shaderType)} shader ${name}`;\n\n // Parse the error - note: browser and driver dependent\n for (let i = 0; i < errorStrings.length; i++) {\n const errorString = errorStrings[i];\n if (errorString.length <= 1) {\n continue;\n }\n const segments = errorString.split(':');\n const type = segments[0];\n const line = parseInt(segments[2], 10);\n if (isNaN(line)) {\n throw new Error(`GLSL compilation error in ${shaderDescription}: ${errLog}`);\n }\n if (type !== 'WARNING') {\n errors[line] = errorString;\n } else {\n warnings[line] = errorString;\n }\n }\n\n // Format the error inline with the code\n const lines = addLineNumbers(src);\n\n return {\n shaderName: shaderDescription,\n errors: formatErrors(errors, lines),\n warnings: formatErrors(warnings, lines)\n };\n}\n\n// helper function, outputs annotated errors or warnings\nfunction formatErrors(errors, lines) {\n let message = '';\n for (let i = 0; i < lines.length; i++) {\n const line = lines[i];\n if (!errors[i + 3] && !errors[i + 2] && !errors[i + 1]) {\n continue;\n }\n message += `${line}\\n`;\n if (errors[i + 1]) {\n const error = errors[i + 1];\n const segments = error.split(':', 3);\n const type = segments[0];\n const column = parseInt(segments[1], 10) || 0;\n const err = error.substring(segments.join(':').length + 1).trim();\n message += padLeft(`^^^ ${type}: ${err}\\n\\n`, column);\n }\n }\n return message;\n}\n\n/**\n * Prepends line numbers to each line of a string.\n * The line numbers will be left-padded with spaces to ensure an\n * aligned layout when rendered using monospace fonts.\n * @param {String} string - multi-line string to add line numbers to\n * @param {Number} start=1 - number of spaces to add\n * @param {String} delim =': ' - injected between line number and original line\n * @return {String[]} strings - array of string, one per line, with line numbers added\n */\nfunction addLineNumbers(string, start = 1, delim = ': ') {\n const lines = string.split(/\\r?\\n/);\n const maxDigits = String(lines.length + start - 1).length;\n return lines.map((line, i) => {\n const lineNumber = String(i + start);\n const digits = lineNumber.length;\n const prefix = padLeft(lineNumber, maxDigits - digits);\n return prefix + delim + line;\n });\n}\n\n/**\n * Pads a string with a number of spaces (space characters) to the left\n * @param {String} string - string to pad\n * @param {Number} digits - number of spaces to add\n * @return {String} string - The padded string\n */\nfunction padLeft(string, digits) {\n let result = '';\n for (let i = 0; i < digits; ++i) {\n result += ' ';\n }\n return `${result}${string}`;\n}\n"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- export default function getShaderName(shader, defaultName = 'unnamed') {
1
+ export default function getShaderName(shader) {
2
+ let defaultName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'unnamed';
2
3
  const SHADER_NAME_REGEXP = /#define[\s*]SHADER_NAME[\s*]([A-Za-z0-9_-]+)[\s*]/;
3
4
  const match = shader.match(SHADER_NAME_REGEXP);
4
5
  return match ? match[1] : defaultName;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/glsl-utils/get-shader-name.js"],"names":["getShaderName","shader","defaultName","SHADER_NAME_REGEXP","match"],"mappings":"AAEA,eAAe,SAASA,aAAT,CAAuBC,MAAvB,EAA+BC,WAAW,GAAG,SAA7C,EAAwD;AACrE,QAAMC,kBAAkB,GAAG,mDAA3B;AACA,QAAMC,KAAK,GAAGH,MAAM,CAACG,KAAP,CAAaD,kBAAb,CAAd;AACA,SAAOC,KAAK,GAAGA,KAAK,CAAC,CAAD,CAAR,GAAcF,WAA1B;AACD","sourcesContent":["// Supports GLSLIFY style naming of shaders\n// #define SHADER_NAME ...\nexport default function getShaderName(shader, defaultName = 'unnamed') {\n const SHADER_NAME_REGEXP = /#define[\\s*]SHADER_NAME[\\s*]([A-Za-z0-9_-]+)[\\s*]/;\n const match = shader.match(SHADER_NAME_REGEXP);\n return match ? match[1] : defaultName;\n}\n"],"file":"get-shader-name.js"}
1
+ {"version":3,"file":"get-shader-name.js","names":["getShaderName","shader","defaultName","SHADER_NAME_REGEXP","match"],"sources":["../../../src/glsl-utils/get-shader-name.js"],"sourcesContent":["// Supports GLSLIFY style naming of shaders\n// #define SHADER_NAME ...\nexport default function getShaderName(shader, defaultName = 'unnamed') {\n const SHADER_NAME_REGEXP = /#define[\\s*]SHADER_NAME[\\s*]([A-Za-z0-9_-]+)[\\s*]/;\n const match = shader.match(SHADER_NAME_REGEXP);\n return match ? match[1] : defaultName;\n}\n"],"mappings":"AAEA,eAAe,SAASA,aAAT,CAAuBC,MAAvB,EAAwD;EAAA,IAAzBC,WAAyB,uEAAX,SAAW;EACrE,MAAMC,kBAAkB,GAAG,mDAA3B;EACA,MAAMC,KAAK,GAAGH,MAAM,CAACG,KAAP,CAAaD,kBAAb,CAAd;EACA,OAAOC,KAAK,GAAGA,KAAK,CAAC,CAAD,CAAR,GAAcF,WAA1B;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/glsl-utils/get-shader-type-name.js"],"names":["GL_FRAGMENT_SHADER","GL_VERTEX_SHADER","getShaderTypeName","type"],"mappings":"AAAA,MAAMA,kBAAkB,GAAG,MAA3B;AACA,MAAMC,gBAAgB,GAAG,MAAzB;AAEA,eAAe,SAASC,iBAAT,CAA2BC,IAA3B,EAAiC;AAC9C,UAAQA,IAAR;AACE,SAAKH,kBAAL;AACE,aAAO,UAAP;;AACF,SAAKC,gBAAL;AACE,aAAO,QAAP;;AACF;AACE,aAAO,cAAP;AANJ;AAQD","sourcesContent":["const GL_FRAGMENT_SHADER = 0x8b30;\nconst GL_VERTEX_SHADER = 0x8b31;\n\nexport default function getShaderTypeName(type) {\n switch (type) {\n case GL_FRAGMENT_SHADER:\n return 'fragment';\n case GL_VERTEX_SHADER:\n return 'vertex';\n default:\n return 'unknown type';\n }\n}\n"],"file":"get-shader-type-name.js"}
1
+ {"version":3,"file":"get-shader-type-name.js","names":["GL_FRAGMENT_SHADER","GL_VERTEX_SHADER","getShaderTypeName","type"],"sources":["../../../src/glsl-utils/get-shader-type-name.js"],"sourcesContent":["const GL_FRAGMENT_SHADER = 0x8b30;\nconst GL_VERTEX_SHADER = 0x8b31;\n\nexport default function getShaderTypeName(type) {\n switch (type) {\n case GL_FRAGMENT_SHADER:\n return 'fragment';\n case GL_VERTEX_SHADER:\n return 'vertex';\n default:\n return 'unknown type';\n }\n}\n"],"mappings":"AAAA,MAAMA,kBAAkB,GAAG,MAA3B;AACA,MAAMC,gBAAgB,GAAG,MAAzB;AAEA,eAAe,SAASC,iBAAT,CAA2BC,IAA3B,EAAiC;EAC9C,QAAQA,IAAR;IACE,KAAKH,kBAAL;MACE,OAAO,UAAP;;IACF,KAAKC,gBAAL;MACE,OAAO,QAAP;;IACF;MACE,OAAO,cAAP;EANJ;AAQD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/glsl-utils/get-shader-version.js"],"names":["getShaderVersion","source","version","words","match","length","v","parseInt","Number","isFinite"],"mappings":"AACA,eAAe,SAASA,gBAAT,CAA0BC,MAA1B,EAAkC;AAC/C,MAAIC,OAAO,GAAG,GAAd;AACA,QAAMC,KAAK,GAAGF,MAAM,CAACG,KAAP,CAAa,SAAb,CAAd;;AACA,MAAID,KAAK,CAACE,MAAN,IAAgB,CAAhB,IAAqBF,KAAK,CAAC,CAAD,CAAL,KAAa,UAAtC,EAAkD;AAChD,UAAMG,CAAC,GAAGC,QAAQ,CAACJ,KAAK,CAAC,CAAD,CAAN,EAAW,EAAX,CAAlB;;AACA,QAAIK,MAAM,CAACC,QAAP,CAAgBH,CAAhB,CAAJ,EAAwB;AACtBJ,MAAAA,OAAO,GAAGI,CAAV;AACD;AACF;;AACD,SAAOJ,OAAP;AACD","sourcesContent":["// returns GLSL shader version of given shader string\nexport default function getShaderVersion(source) {\n let version = 100;\n const words = source.match(/[^\\s]+/g);\n if (words.length >= 2 && words[0] === '#version') {\n const v = parseInt(words[1], 10);\n if (Number.isFinite(v)) {\n version = v;\n }\n }\n return version;\n}\n"],"file":"get-shader-version.js"}
1
+ {"version":3,"file":"get-shader-version.js","names":["getShaderVersion","source","version","words","match","length","v","parseInt","Number","isFinite"],"sources":["../../../src/glsl-utils/get-shader-version.js"],"sourcesContent":["// returns GLSL shader version of given shader string\nexport default function getShaderVersion(source) {\n let version = 100;\n const words = source.match(/[^\\s]+/g);\n if (words.length >= 2 && words[0] === '#version') {\n const v = parseInt(words[1], 10);\n if (Number.isFinite(v)) {\n version = v;\n }\n }\n return version;\n}\n"],"mappings":"AACA,eAAe,SAASA,gBAAT,CAA0BC,MAA1B,EAAkC;EAC/C,IAAIC,OAAO,GAAG,GAAd;EACA,MAAMC,KAAK,GAAGF,MAAM,CAACG,KAAP,CAAa,SAAb,CAAd;;EACA,IAAID,KAAK,CAACE,MAAN,IAAgB,CAAhB,IAAqBF,KAAK,CAAC,CAAD,CAAL,KAAa,UAAtC,EAAkD;IAChD,MAAMG,CAAC,GAAGC,QAAQ,CAACJ,KAAK,CAAC,CAAD,CAAN,EAAW,EAAX,CAAlB;;IACA,IAAIK,MAAM,CAACC,QAAP,CAAgBH,CAAhB,CAAJ,EAAwB;MACtBJ,OAAO,GAAGI,CAAV;IACD;EACF;;EACD,OAAOJ,OAAP;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/glsl-utils/index.js"],"names":["default","formatGLSLCompilerError","parseGLSLCompilerError","getShaderName","getShaderVersion","getShaderTypeName"],"mappings":"AACA,SAAQA,OAAO,IAAIC,uBAAnB,EAA4CC,sBAA5C,QAAyE,qBAAzE;AAGA,SAAQF,OAAO,IAAIG,aAAnB,QAAuC,mBAAvC;AACA,SAAQH,OAAO,IAAII,gBAAnB,QAA0C,sBAA1C;AAEA,SAAQJ,OAAO,IAAIK,iBAAnB,QAA2C,wBAA3C","sourcesContent":["// PARSE SHADER ERRORS\nexport {default as formatGLSLCompilerError, parseGLSLCompilerError} from './format-glsl-error';\n\n// PARSE SHADER SOURCE\nexport {default as getShaderName} from './get-shader-name';\nexport {default as getShaderVersion} from './get-shader-version';\n\nexport {default as getShaderTypeName} from './get-shader-type-name';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["default","formatGLSLCompilerError","parseGLSLCompilerError","getShaderName","getShaderVersion","getShaderTypeName"],"sources":["../../../src/glsl-utils/index.js"],"sourcesContent":["// PARSE SHADER ERRORS\nexport {default as formatGLSLCompilerError, parseGLSLCompilerError} from './format-glsl-error';\n\n// PARSE SHADER SOURCE\nexport {default as getShaderName} from './get-shader-name';\nexport {default as getShaderVersion} from './get-shader-version';\n\nexport {default as getShaderTypeName} from './get-shader-type-name';\n"],"mappings":"AACA,SAAQA,OAAO,IAAIC,uBAAnB,EAA4CC,sBAA5C,QAAyE,qBAAzE;AAGA,SAAQF,OAAO,IAAIG,aAAnB,QAAuC,mBAAvC;AACA,SAAQH,OAAO,IAAII,gBAAnB,QAA0C,sBAA1C;AAEA,SAAQJ,OAAO,IAAIK,iBAAnB,QAA2C,wBAA3C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.js"],"names":["lumaStats","requestAnimationFrame","cancelAnimationFrame","cloneTextureFrom","getKeyValue","getKey","getContextInfo","getGLContextInfo","getContextLimits","FEATURES","hasFeature","hasFeatures","getFeatures","default","canCompileGLGSExtension","Accessor","Buffer","Shader","VertexShader","FragmentShader","Program","Framebuffer","Renderbuffer","Texture2D","TextureCube","clear","clearBuffer","readPixelsToArray","readPixelsToBuffer","copyToDataUrl","copyToImage","copyToTexture","blit","Query","Texture3D","TransformFeedback","VertexArrayObject","VertexArray","UniformBufferLayout","setPathPrefix","loadFile","loadImage","getShaderName","getShaderVersion","log","assert","uid","isObjectEmpty","parseUniformName","getUniformSetter","getDebugTableForUniforms","getDebugTableForVertexArray","getDebugTableForProgramConfiguration"],"mappings":"AAOA,SAAQA,SAAR,QAAwB,QAAxB;AAGA,SAAQC,qBAAR,EAA+BC,oBAA/B,QAA0D,uCAA1D;AAGA,SAAQC,gBAAR,QAA+B,6BAA/B;AACA,SAAQC,WAAR,EAAqBC,MAArB,QAAkC,iCAAlC;AACA,SAAQC,cAAR,EAAwBC,gBAAxB,EAA0CC,gBAA1C,QAAiE,mBAAjE;AACA,SAAQC,QAAR,QAAuB,iCAAvB;AACA,SAAQC,UAAR,EAAoBC,WAApB,EAAiCC,WAAjC,QAAmD,qBAAnD;AACA,SAAQC,OAAO,IAAIC,uBAAnB,QAAiD,iCAAjD;AAGA,SAAQD,OAAO,IAAIE,QAAnB,QAAkC,oBAAlC;AAGA,SAAQF,OAAO,IAAIG,MAAnB,QAAgC,kBAAhC;AACA,SAAQC,MAAR,EAAgBC,YAAhB,EAA8BC,cAA9B,QAAmD,kBAAnD;AACA,SAAQN,OAAO,IAAIO,OAAnB,QAAiC,mBAAjC;AACA,SAAQP,OAAO,IAAIQ,WAAnB,QAAqC,uBAArC;AACA,SAAQR,OAAO,IAAIS,YAAnB,QAAsC,wBAAtC;AACA,SAAQT,OAAO,IAAIU,SAAnB,QAAmC,sBAAnC;AACA,SAAQV,OAAO,IAAIW,WAAnB,QAAqC,wBAArC;AAEA,SAAQC,KAAR,EAAeC,WAAf,QAAiC,iBAAjC;AAGA,SACEC,iBADF,EAEEC,kBAFF,EAGEC,aAHF,EAIEC,WAJF,EAKEC,aALF,EAMEC,IANF,QAOO,yBAPP;AAUA,SAAQnB,OAAO,IAAIoB,KAAnB,QAA+B,iBAA/B;AACA,SAAQpB,OAAO,IAAIqB,SAAnB,QAAmC,sBAAnC;AACA,SAAQrB,OAAO,IAAIsB,iBAAnB,QAA2C,8BAA3C;AACA,SAAQtB,OAAO,IAAIuB,iBAAnB,QAA2C,+BAA3C;AACA,SAAQvB,OAAO,IAAIwB,WAAnB,QAAqC,wBAArC;AACA,SAAQxB,OAAO,IAAIyB,mBAAnB,QAA6C,iCAA7C;AAIA,SAAQC,aAAR,EAAuBC,QAAvB,EAAiCC,SAAjC,QAAiD,mBAAjD;AAGA,SAAQ5B,OAAO,IAAI6B,aAAnB,QAAuC,8BAAvC;AACA,SAAQ7B,OAAO,IAAI8B,gBAAnB,QAA0C,iCAA1C;AAGA,SAAQC,GAAR,QAAkB,kBAAlB;AACA,SAAQC,MAAR,QAAqB,gBAArB;AACA,SAAQC,GAAR,EAAaC,aAAb,QAAiC,eAAjC;AAGA,SAAQC,gBAAR,EAA0BC,gBAA1B,QAAiD,oBAAjD;AACA,SAAQC,wBAAR,QAAuC,wBAAvC;AACA,SAAQC,2BAAR,QAA0C,4BAA1C;AACA,SAAQC,oCAAR,QAAmD,qCAAnD","sourcesContent":["// luma.gl Base WebGL wrapper library\n// Provides simple class/function wrappers around the low level webgl objects\n// These classes are intentionally close to the WebGL API\n// but make it easier to use.\n// Higher level abstractions can be built on these classes\n\n// Initialize any global state\nexport {lumaStats} from './init';\n\n// UTILS\nexport {requestAnimationFrame, cancelAnimationFrame} from './webgl-utils/request-animation-frame';\n\n// WebGL Functions\nexport {cloneTextureFrom} from './webgl-utils/texture-utils';\nexport {getKeyValue, getKey} from './webgl-utils/constants-to-keys';\nexport {getContextInfo, getGLContextInfo, getContextLimits} from './features/limits';\nexport {FEATURES} from './features/webgl-features-table';\nexport {hasFeature, hasFeatures, getFeatures} from './features/features';\nexport {default as canCompileGLGSExtension} from './features/check-glsl-extension';\n\n// WebGL Helper Classes\nexport {default as Accessor} from './classes/accessor';\n\n// WebGL1 classes\nexport {default as Buffer} from './classes/buffer';\nexport {Shader, VertexShader, FragmentShader} from './classes/shader';\nexport {default as Program} from './classes/program';\nexport {default as Framebuffer} from './classes/framebuffer';\nexport {default as Renderbuffer} from './classes/renderbuffer';\nexport {default as Texture2D} from './classes/texture-2d';\nexport {default as TextureCube} from './classes/texture-cube';\n\nexport {clear, clearBuffer} from './classes/clear';\n\n// Copy and Blit\nexport {\n readPixelsToArray,\n readPixelsToBuffer,\n copyToDataUrl,\n copyToImage,\n copyToTexture,\n blit\n} from './classes/copy-and-blit';\n\n// WebGL2 classes & Extensions\nexport {default as Query} from './classes/query';\nexport {default as Texture3D} from './classes/texture-3d';\nexport {default as TransformFeedback} from './classes/transform-feedback';\nexport {default as VertexArrayObject} from './classes/vertex-array-object';\nexport {default as VertexArray} from './classes/vertex-array';\nexport {default as UniformBufferLayout} from './classes/uniform-buffer-layout';\n\n// experimental WebGL exports\n\nexport {setPathPrefix, loadFile, loadImage} from './utils/load-file';\n\n// PARSE SHADER SOURCE\nexport {default as getShaderName} from './glsl-utils/get-shader-name';\nexport {default as getShaderVersion} from './glsl-utils/get-shader-version';\n\n// UTILS\nexport {log} from '@luma.gl/gltools';\nexport {assert} from './utils/assert';\nexport {uid, isObjectEmpty} from './utils/utils';\n\n// INTERNAL\nexport {parseUniformName, getUniformSetter} from './classes/uniforms';\nexport {getDebugTableForUniforms} from './debug/debug-uniforms';\nexport {getDebugTableForVertexArray} from './debug/debug-vertex-array';\nexport {getDebugTableForProgramConfiguration} from './debug/debug-program-configuration';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["lumaStats","requestAnimationFrame","cancelAnimationFrame","cloneTextureFrom","getKeyValue","getKey","getContextInfo","getGLContextInfo","getContextLimits","FEATURES","hasFeature","hasFeatures","getFeatures","default","canCompileGLGSExtension","Accessor","Buffer","Shader","VertexShader","FragmentShader","Program","Framebuffer","Renderbuffer","Texture2D","TextureCube","clear","clearBuffer","readPixelsToArray","readPixelsToBuffer","copyToDataUrl","copyToImage","copyToTexture","blit","Query","Texture3D","TransformFeedback","VertexArrayObject","VertexArray","UniformBufferLayout","setPathPrefix","loadFile","loadImage","getShaderName","getShaderVersion","log","assert","uid","isObjectEmpty","parseUniformName","getUniformSetter","getDebugTableForUniforms","getDebugTableForVertexArray","getDebugTableForProgramConfiguration"],"sources":["../../src/index.js"],"sourcesContent":["// luma.gl Base WebGL wrapper library\n// Provides simple class/function wrappers around the low level webgl objects\n// These classes are intentionally close to the WebGL API\n// but make it easier to use.\n// Higher level abstractions can be built on these classes\n\n// Initialize any global state\nexport {lumaStats} from './init';\n\n// UTILS\nexport {requestAnimationFrame, cancelAnimationFrame} from './webgl-utils/request-animation-frame';\n\n// WebGL Functions\nexport {cloneTextureFrom} from './webgl-utils/texture-utils';\nexport {getKeyValue, getKey} from './webgl-utils/constants-to-keys';\nexport {getContextInfo, getGLContextInfo, getContextLimits} from './features/limits';\nexport {FEATURES} from './features/webgl-features-table';\nexport {hasFeature, hasFeatures, getFeatures} from './features/features';\nexport {default as canCompileGLGSExtension} from './features/check-glsl-extension';\n\n// WebGL Helper Classes\nexport {default as Accessor} from './classes/accessor';\n\n// WebGL1 classes\nexport {default as Buffer} from './classes/buffer';\nexport {Shader, VertexShader, FragmentShader} from './classes/shader';\nexport {default as Program} from './classes/program';\nexport {default as Framebuffer} from './classes/framebuffer';\nexport {default as Renderbuffer} from './classes/renderbuffer';\nexport {default as Texture2D} from './classes/texture-2d';\nexport {default as TextureCube} from './classes/texture-cube';\n\nexport {clear, clearBuffer} from './classes/clear';\n\n// Copy and Blit\nexport {\n readPixelsToArray,\n readPixelsToBuffer,\n copyToDataUrl,\n copyToImage,\n copyToTexture,\n blit\n} from './classes/copy-and-blit';\n\n// WebGL2 classes & Extensions\nexport {default as Query} from './classes/query';\nexport {default as Texture3D} from './classes/texture-3d';\nexport {default as TransformFeedback} from './classes/transform-feedback';\nexport {default as VertexArrayObject} from './classes/vertex-array-object';\nexport {default as VertexArray} from './classes/vertex-array';\nexport {default as UniformBufferLayout} from './classes/uniform-buffer-layout';\n\n// experimental WebGL exports\n\nexport {setPathPrefix, loadFile, loadImage} from './utils/load-file';\n\n// PARSE SHADER SOURCE\nexport {default as getShaderName} from './glsl-utils/get-shader-name';\nexport {default as getShaderVersion} from './glsl-utils/get-shader-version';\n\n// UTILS\nexport {log} from '@luma.gl/gltools';\nexport {assert} from './utils/assert';\nexport {uid, isObjectEmpty} from './utils/utils';\n\n// INTERNAL\nexport {parseUniformName, getUniformSetter} from './classes/uniforms';\nexport {getDebugTableForUniforms} from './debug/debug-uniforms';\nexport {getDebugTableForVertexArray} from './debug/debug-vertex-array';\nexport {getDebugTableForProgramConfiguration} from './debug/debug-program-configuration';\n"],"mappings":"AAOA,SAAQA,SAAR,QAAwB,QAAxB;AAGA,SAAQC,qBAAR,EAA+BC,oBAA/B,QAA0D,uCAA1D;AAGA,SAAQC,gBAAR,QAA+B,6BAA/B;AACA,SAAQC,WAAR,EAAqBC,MAArB,QAAkC,iCAAlC;AACA,SAAQC,cAAR,EAAwBC,gBAAxB,EAA0CC,gBAA1C,QAAiE,mBAAjE;AACA,SAAQC,QAAR,QAAuB,iCAAvB;AACA,SAAQC,UAAR,EAAoBC,WAApB,EAAiCC,WAAjC,QAAmD,qBAAnD;AACA,SAAQC,OAAO,IAAIC,uBAAnB,QAAiD,iCAAjD;AAGA,SAAQD,OAAO,IAAIE,QAAnB,QAAkC,oBAAlC;AAGA,SAAQF,OAAO,IAAIG,MAAnB,QAAgC,kBAAhC;AACA,SAAQC,MAAR,EAAgBC,YAAhB,EAA8BC,cAA9B,QAAmD,kBAAnD;AACA,SAAQN,OAAO,IAAIO,OAAnB,QAAiC,mBAAjC;AACA,SAAQP,OAAO,IAAIQ,WAAnB,QAAqC,uBAArC;AACA,SAAQR,OAAO,IAAIS,YAAnB,QAAsC,wBAAtC;AACA,SAAQT,OAAO,IAAIU,SAAnB,QAAmC,sBAAnC;AACA,SAAQV,OAAO,IAAIW,WAAnB,QAAqC,wBAArC;AAEA,SAAQC,KAAR,EAAeC,WAAf,QAAiC,iBAAjC;AAGA,SACEC,iBADF,EAEEC,kBAFF,EAGEC,aAHF,EAIEC,WAJF,EAKEC,aALF,EAMEC,IANF,QAOO,yBAPP;AAUA,SAAQnB,OAAO,IAAIoB,KAAnB,QAA+B,iBAA/B;AACA,SAAQpB,OAAO,IAAIqB,SAAnB,QAAmC,sBAAnC;AACA,SAAQrB,OAAO,IAAIsB,iBAAnB,QAA2C,8BAA3C;AACA,SAAQtB,OAAO,IAAIuB,iBAAnB,QAA2C,+BAA3C;AACA,SAAQvB,OAAO,IAAIwB,WAAnB,QAAqC,wBAArC;AACA,SAAQxB,OAAO,IAAIyB,mBAAnB,QAA6C,iCAA7C;AAIA,SAAQC,aAAR,EAAuBC,QAAvB,EAAiCC,SAAjC,QAAiD,mBAAjD;AAGA,SAAQ5B,OAAO,IAAI6B,aAAnB,QAAuC,8BAAvC;AACA,SAAQ7B,OAAO,IAAI8B,gBAAnB,QAA0C,iCAA1C;AAGA,SAAQC,GAAR,QAAkB,kBAAlB;AACA,SAAQC,MAAR,QAAqB,gBAArB;AACA,SAAQC,GAAR,EAAaC,aAAb,QAAiC,eAAjC;AAGA,SAAQC,gBAAR,EAA0BC,gBAA1B,QAAiD,oBAAjD;AACA,SAAQC,wBAAR,QAAuC,wBAAvC;AACA,SAAQC,2BAAR,QAA0C,4BAA1C;AACA,SAAQC,oCAAR,QAAmD,qCAAnD"}
@@ -1,4 +1,4 @@
1
- import {Stats} from 'probe.gl';
1
+ import {Stats} from '@probe.gl/stats';
2
2
 
3
3
  export class StatsManager {
4
4
  constructor();
package/dist/esm/init.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { log } from '@luma.gl/gltools';
2
- import { Stats } from 'probe.gl';
2
+ import { Stats } from '@probe.gl/stats';
3
3
  import { isBrowser } from '@probe.gl/env';
4
- const VERSION = typeof "8.5.15" !== 'undefined' ? "8.5.15" : 'untranspiled source';
4
+ const VERSION = typeof "8.5.16" !== 'undefined' ? "8.5.16" : 'untranspiled source';
5
5
  const STARTUP_MESSAGE = 'set luma.log.level=1 (or higher) to trace rendering';
6
6
  export class StatsManager {
7
7
  constructor() {
@@ -22,12 +22,12 @@ export class StatsManager {
22
22
  const lumaStats = new StatsManager();
23
23
 
24
24
  if (globalThis.luma && globalThis.luma.VERSION !== VERSION) {
25
- throw new Error(`luma.gl - multiple VERSIONs detected: ${globalThis.luma.VERSION} vs ${VERSION}`);
25
+ throw new Error("luma.gl - multiple VERSIONs detected: ".concat(globalThis.luma.VERSION, " vs ").concat(VERSION));
26
26
  }
27
27
 
28
28
  if (!globalThis.luma) {
29
29
  if (isBrowser()) {
30
- log.log(1, `luma.gl ${VERSION} - ${STARTUP_MESSAGE}`)();
30
+ log.log(1, "luma.gl ".concat(VERSION, " - ").concat(STARTUP_MESSAGE))();
31
31
  }
32
32
 
33
33
  globalThis.luma = globalThis.luma || {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/init.js"],"names":["log","Stats","isBrowser","VERSION","STARTUP_MESSAGE","StatsManager","constructor","stats","Map","get","name","has","set","id","lumaStats","globalThis","luma","Error","version","globals","modules","nodeIO"],"mappings":"AAAA,SAAQA,GAAR,QAAkB,kBAAlB;AACA,SAAQC,KAAR,QAAoB,UAApB;AACA,SAAQC,SAAR,QAAwB,eAAxB;AAKA,MAAMC,OAAO,GAAG,oBAAuB,WAAvB,cAAmD,qBAAnE;AAEA,MAAMC,eAAe,GAAG,qDAAxB;AAKA,OAAO,MAAMC,YAAN,CAAmB;AACxBC,EAAAA,WAAW,GAAG;AACZ,SAAKC,KAAL,GAAa,IAAIC,GAAJ,EAAb;AACD;;AAEDC,EAAAA,GAAG,CAACC,IAAD,EAAO;AACR,QAAI,CAAC,KAAKH,KAAL,CAAWI,GAAX,CAAeD,IAAf,CAAL,EAA2B;AACzB,WAAKH,KAAL,CAAWK,GAAX,CAAeF,IAAf,EAAqB,IAAIT,KAAJ,CAAU;AAACY,QAAAA,EAAE,EAAEH;AAAL,OAAV,CAArB;AACD;;AAED,WAAO,KAAKH,KAAL,CAAWE,GAAX,CAAeC,IAAf,CAAP;AACD;;AAXuB;AAc1B,MAAMI,SAAS,GAAG,IAAIT,YAAJ,EAAlB;;AAEA,IAAIU,UAAU,CAACC,IAAX,IAAmBD,UAAU,CAACC,IAAX,CAAgBb,OAAhB,KAA4BA,OAAnD,EAA4D;AAC1D,QAAM,IAAIc,KAAJ,CAAW,yCAAwCF,UAAU,CAACC,IAAX,CAAgBb,OAAQ,OAAMA,OAAQ,EAAzF,CAAN;AACD;;AAED,IAAI,CAACY,UAAU,CAACC,IAAhB,EAAsB;AACpB,MAAId,SAAS,EAAb,EAAiB;AACfF,IAAAA,GAAG,CAACA,GAAJ,CAAQ,CAAR,EAAY,WAAUG,OAAQ,MAAKC,eAAgB,EAAnD;AACD;;AAEDW,EAAAA,UAAU,CAACC,IAAX,GAAkBD,UAAU,CAACC,IAAX,IAAmB;AACnCb,IAAAA,OADmC;AAEnCe,IAAAA,OAAO,EAAEf,OAF0B;AAGnCH,IAAAA,GAHmC;AAOnCO,IAAAA,KAAK,EAAEO,SAP4B;AAcnCK,IAAAA,OAAO,EAAE;AACPC,MAAAA,OAAO,EAAE,EADF;AAEPC,MAAAA,MAAM,EAAE;AAFD;AAd0B,GAArC;AAmBD;;AAED,SAAQP,SAAR;AACA,eAAeC,UAAU,CAACC,IAA1B","sourcesContent":["import {log} from '@luma.gl/gltools';\nimport {Stats} from 'probe.gl';\nimport {isBrowser} from '@probe.gl/env';\n\n// Version detection using babel plugin\n/* global __VERSION__ */\n// @ts-ignore\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'untranspiled source';\n\nconst STARTUP_MESSAGE = 'set luma.log.level=1 (or higher) to trace rendering';\n// Assign luma.log.level in console to control logging: \\\n// 0: none, 1: minimal, 2: verbose, 3: attribute/uniforms, 4: gl logs\n// luma.log.break[], set to gl funcs, luma.log.profile[] set to model names`;\n\nexport class StatsManager {\n constructor() {\n this.stats = new Map();\n }\n\n get(name) {\n if (!this.stats.has(name)) {\n this.stats.set(name, new Stats({id: name}));\n }\n\n return this.stats.get(name);\n }\n}\n\nconst lumaStats = new StatsManager();\n\nif (globalThis.luma && globalThis.luma.VERSION !== VERSION) {\n throw new Error(`luma.gl - multiple VERSIONs detected: ${globalThis.luma.VERSION} vs ${VERSION}`);\n}\n\nif (!globalThis.luma) {\n if (isBrowser()) {\n log.log(1, `luma.gl ${VERSION} - ${STARTUP_MESSAGE}`)();\n }\n\n globalThis.luma = globalThis.luma || {\n VERSION,\n version: VERSION,\n log,\n\n // A global stats object that various components can add information to\n // E.g. see webgl/resource.js\n stats: lumaStats,\n\n // Keep some luma globals in a sub-object\n // This allows us to dynamically detect if certain modules have been\n // included (such as IO and headless) and enable related functionality,\n // without unconditionally requiring and thus bundling big dependencies\n // into the app.\n globals: {\n modules: {},\n nodeIO: {}\n }\n };\n}\n\nexport {lumaStats};\nexport default globalThis.luma;\n"],"file":"init.js"}
1
+ {"version":3,"file":"init.js","names":["log","Stats","isBrowser","VERSION","STARTUP_MESSAGE","StatsManager","constructor","stats","Map","get","name","has","set","id","lumaStats","globalThis","luma","Error","version","globals","modules","nodeIO"],"sources":["../../src/init.js"],"sourcesContent":["import {log} from '@luma.gl/gltools';\nimport {Stats} from '@probe.gl/stats';\nimport {isBrowser} from '@probe.gl/env';\n\n// Version detection using babel plugin\n/* global __VERSION__ */\n// @ts-ignore\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'untranspiled source';\n\nconst STARTUP_MESSAGE = 'set luma.log.level=1 (or higher) to trace rendering';\n// Assign luma.log.level in console to control logging: \\\n// 0: none, 1: minimal, 2: verbose, 3: attribute/uniforms, 4: gl logs\n// luma.log.break[], set to gl funcs, luma.log.profile[] set to model names`;\n\nexport class StatsManager {\n constructor() {\n this.stats = new Map();\n }\n\n get(name) {\n if (!this.stats.has(name)) {\n this.stats.set(name, new Stats({id: name}));\n }\n\n return this.stats.get(name);\n }\n}\n\nconst lumaStats = new StatsManager();\n\nif (globalThis.luma && globalThis.luma.VERSION !== VERSION) {\n throw new Error(`luma.gl - multiple VERSIONs detected: ${globalThis.luma.VERSION} vs ${VERSION}`);\n}\n\nif (!globalThis.luma) {\n if (isBrowser()) {\n log.log(1, `luma.gl ${VERSION} - ${STARTUP_MESSAGE}`)();\n }\n\n globalThis.luma = globalThis.luma || {\n VERSION,\n version: VERSION,\n log,\n\n // A global stats object that various components can add information to\n // E.g. see webgl/resource.js\n stats: lumaStats,\n\n // Keep some luma globals in a sub-object\n // This allows us to dynamically detect if certain modules have been\n // included (such as IO and headless) and enable related functionality,\n // without unconditionally requiring and thus bundling big dependencies\n // into the app.\n globals: {\n modules: {},\n nodeIO: {}\n }\n };\n}\n\nexport {lumaStats};\nexport default globalThis.luma;\n"],"mappings":"AAAA,SAAQA,GAAR,QAAkB,kBAAlB;AACA,SAAQC,KAAR,QAAoB,iBAApB;AACA,SAAQC,SAAR,QAAwB,eAAxB;AAKA,MAAMC,OAAO,GAAG,oBAAuB,WAAvB,cAAmD,qBAAnE;AAEA,MAAMC,eAAe,GAAG,qDAAxB;AAKA,OAAO,MAAMC,YAAN,CAAmB;EACxBC,WAAW,GAAG;IACZ,KAAKC,KAAL,GAAa,IAAIC,GAAJ,EAAb;EACD;;EAEDC,GAAG,CAACC,IAAD,EAAO;IACR,IAAI,CAAC,KAAKH,KAAL,CAAWI,GAAX,CAAeD,IAAf,CAAL,EAA2B;MACzB,KAAKH,KAAL,CAAWK,GAAX,CAAeF,IAAf,EAAqB,IAAIT,KAAJ,CAAU;QAACY,EAAE,EAAEH;MAAL,CAAV,CAArB;IACD;;IAED,OAAO,KAAKH,KAAL,CAAWE,GAAX,CAAeC,IAAf,CAAP;EACD;;AAXuB;AAc1B,MAAMI,SAAS,GAAG,IAAIT,YAAJ,EAAlB;;AAEA,IAAIU,UAAU,CAACC,IAAX,IAAmBD,UAAU,CAACC,IAAX,CAAgBb,OAAhB,KAA4BA,OAAnD,EAA4D;EAC1D,MAAM,IAAIc,KAAJ,iDAAmDF,UAAU,CAACC,IAAX,CAAgBb,OAAnE,iBAAiFA,OAAjF,EAAN;AACD;;AAED,IAAI,CAACY,UAAU,CAACC,IAAhB,EAAsB;EACpB,IAAId,SAAS,EAAb,EAAiB;IACfF,GAAG,CAACA,GAAJ,CAAQ,CAAR,oBAAsBG,OAAtB,gBAAmCC,eAAnC;EACD;;EAEDW,UAAU,CAACC,IAAX,GAAkBD,UAAU,CAACC,IAAX,IAAmB;IACnCb,OADmC;IAEnCe,OAAO,EAAEf,OAF0B;IAGnCH,GAHmC;IAOnCO,KAAK,EAAEO,SAP4B;IAcnCK,OAAO,EAAE;MACPC,OAAO,EAAE,EADF;MAEPC,MAAM,EAAE;IAFD;EAd0B,CAArC;AAmBD;;AAED,SAAQP,SAAR;AACA,eAAeC,UAAU,CAACC,IAA1B"}
@@ -10,12 +10,13 @@ export function getScratchArray(Type, length) {
10
10
  const scratchArrayBuffer = getScratchArrayBuffer(Type.BYTES_PER_ELEMENT * length);
11
11
  return new Type(scratchArrayBuffer, 0, length);
12
12
  }
13
- export function fillArray({
14
- target,
15
- source,
16
- start = 0,
17
- count = 1
18
- }) {
13
+ export function fillArray(_ref) {
14
+ let {
15
+ target,
16
+ source,
17
+ start = 0,
18
+ count = 1
19
+ } = _ref;
19
20
  const length = source.length;
20
21
  const total = count * length;
21
22
  let copied = 0;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/array-utils-flat.js"],"names":["arrayBuffer","getScratchArrayBuffer","byteLength","ArrayBuffer","getScratchArray","Type","length","scratchArrayBuffer","BYTES_PER_ELEMENT","fillArray","target","source","start","count","total","copied","i","copyWithin"],"mappings":"AAAA,IAAIA,WAAW,GAAG,IAAlB;AAEA,OAAO,SAASC,qBAAT,CAA+BC,UAA/B,EAA2C;AAChD,MAAI,CAACF,WAAD,IAAgBA,WAAW,CAACE,UAAZ,GAAyBA,UAA7C,EAAyD;AACvDF,IAAAA,WAAW,GAAG,IAAIG,WAAJ,CAAgBD,UAAhB,CAAd;AACD;;AACD,SAAOF,WAAP;AACD;AAED,OAAO,SAASI,eAAT,CAAyBC,IAAzB,EAA+BC,MAA/B,EAAuC;AAC5C,QAAMC,kBAAkB,GAAGN,qBAAqB,CAACI,IAAI,CAACG,iBAAL,GAAyBF,MAA1B,CAAhD;AACA,SAAO,IAAID,IAAJ,CAASE,kBAAT,EAA6B,CAA7B,EAAgCD,MAAhC,CAAP;AACD;AAGD,OAAO,SAASG,SAAT,CAAmB;AAACC,EAAAA,MAAD;AAASC,EAAAA,MAAT;AAAiBC,EAAAA,KAAK,GAAG,CAAzB;AAA4BC,EAAAA,KAAK,GAAG;AAApC,CAAnB,EAA2D;AAChE,QAAMP,MAAM,GAAGK,MAAM,CAACL,MAAtB;AACA,QAAMQ,KAAK,GAAGD,KAAK,GAAGP,MAAtB;AACA,MAAIS,MAAM,GAAG,CAAb;;AACA,OAAK,IAAIC,CAAC,GAAGJ,KAAb,EAAoBG,MAAM,GAAGT,MAA7B,EAAqCS,MAAM,EAA3C,EAA+C;AAC7CL,IAAAA,MAAM,CAACM,CAAC,EAAF,CAAN,GAAcL,MAAM,CAACI,MAAD,CAApB;AACD;;AAED,SAAOA,MAAM,GAAGD,KAAhB,EAAuB;AAGrB,QAAIC,MAAM,GAAGD,KAAK,GAAGC,MAArB,EAA6B;AAC3BL,MAAAA,MAAM,CAACO,UAAP,CAAkBL,KAAK,GAAGG,MAA1B,EAAkCH,KAAlC,EAAyCA,KAAK,GAAGG,MAAjD;AACAA,MAAAA,MAAM,IAAI,CAAV;AACD,KAHD,MAGO;AACLL,MAAAA,MAAM,CAACO,UAAP,CAAkBL,KAAK,GAAGG,MAA1B,EAAkCH,KAAlC,EAAyCA,KAAK,GAAGE,KAAR,GAAgBC,MAAzD;AACAA,MAAAA,MAAM,GAAGD,KAAT;AACD;AACF;;AAED,SAAOJ,MAAP;AACD","sourcesContent":["let arrayBuffer = null;\n\nexport function getScratchArrayBuffer(byteLength) {\n if (!arrayBuffer || arrayBuffer.byteLength < byteLength) {\n arrayBuffer = new ArrayBuffer(byteLength);\n }\n return arrayBuffer;\n}\n\nexport function getScratchArray(Type, length) {\n const scratchArrayBuffer = getScratchArrayBuffer(Type.BYTES_PER_ELEMENT * length);\n return new Type(scratchArrayBuffer, 0, length); // arrayBuffer, byteOffset, length (in elements)\n}\n\n// Uses copyWithin to significantly speed up typed array value filling\nexport function fillArray({target, source, start = 0, count = 1}) {\n const length = source.length;\n const total = count * length;\n let copied = 0;\n for (let i = start; copied < length; copied++) {\n target[i++] = source[copied];\n }\n\n while (copied < total) {\n // If we have copied less than half, copy everything we got\n // else copy remaining in one operation\n if (copied < total - copied) {\n target.copyWithin(start + copied, start, start + copied);\n copied *= 2;\n } else {\n target.copyWithin(start + copied, start, start + total - copied);\n copied = total;\n }\n }\n\n return target;\n}\n\n/*\n\n// Creates a new Uint8Array based on two different ArrayBuffers\n// @private\n// @param {ArrayBuffers} buffer1 The first buffer.\n// @param {ArrayBuffers} buffer2 The second buffer.\n// @return {ArrayBuffers} The new ArrayBuffer created out of the two.\n//\nexport function copyArrayBuffer(\n targetBuffer, sourceBuffer, byteOffset, byteLength = sourceBuffer.byteLength\n) {\n const targetArray = new Uint8Array(targetBuffer, byteOffset, byteLength);\n const sourceArray = new Uint8Array(sourceBuffer);\n targetArray.set(sourceArray);\n return targetBuffer;\n}\n\n*/\n"],"file":"array-utils-flat.js"}
1
+ {"version":3,"file":"array-utils-flat.js","names":["arrayBuffer","getScratchArrayBuffer","byteLength","ArrayBuffer","getScratchArray","Type","length","scratchArrayBuffer","BYTES_PER_ELEMENT","fillArray","target","source","start","count","total","copied","i","copyWithin"],"sources":["../../../src/utils/array-utils-flat.js"],"sourcesContent":["let arrayBuffer = null;\n\nexport function getScratchArrayBuffer(byteLength) {\n if (!arrayBuffer || arrayBuffer.byteLength < byteLength) {\n arrayBuffer = new ArrayBuffer(byteLength);\n }\n return arrayBuffer;\n}\n\nexport function getScratchArray(Type, length) {\n const scratchArrayBuffer = getScratchArrayBuffer(Type.BYTES_PER_ELEMENT * length);\n return new Type(scratchArrayBuffer, 0, length); // arrayBuffer, byteOffset, length (in elements)\n}\n\n// Uses copyWithin to significantly speed up typed array value filling\nexport function fillArray({target, source, start = 0, count = 1}) {\n const length = source.length;\n const total = count * length;\n let copied = 0;\n for (let i = start; copied < length; copied++) {\n target[i++] = source[copied];\n }\n\n while (copied < total) {\n // If we have copied less than half, copy everything we got\n // else copy remaining in one operation\n if (copied < total - copied) {\n target.copyWithin(start + copied, start, start + copied);\n copied *= 2;\n } else {\n target.copyWithin(start + copied, start, start + total - copied);\n copied = total;\n }\n }\n\n return target;\n}\n\n/*\n\n// Creates a new Uint8Array based on two different ArrayBuffers\n// @private\n// @param {ArrayBuffers} buffer1 The first buffer.\n// @param {ArrayBuffers} buffer2 The second buffer.\n// @return {ArrayBuffers} The new ArrayBuffer created out of the two.\n//\nexport function copyArrayBuffer(\n targetBuffer, sourceBuffer, byteOffset, byteLength = sourceBuffer.byteLength\n) {\n const targetArray = new Uint8Array(targetBuffer, byteOffset, byteLength);\n const sourceArray = new Uint8Array(sourceBuffer);\n targetArray.set(sourceArray);\n return targetBuffer;\n}\n\n*/\n"],"mappings":"AAAA,IAAIA,WAAW,GAAG,IAAlB;AAEA,OAAO,SAASC,qBAAT,CAA+BC,UAA/B,EAA2C;EAChD,IAAI,CAACF,WAAD,IAAgBA,WAAW,CAACE,UAAZ,GAAyBA,UAA7C,EAAyD;IACvDF,WAAW,GAAG,IAAIG,WAAJ,CAAgBD,UAAhB,CAAd;EACD;;EACD,OAAOF,WAAP;AACD;AAED,OAAO,SAASI,eAAT,CAAyBC,IAAzB,EAA+BC,MAA/B,EAAuC;EAC5C,MAAMC,kBAAkB,GAAGN,qBAAqB,CAACI,IAAI,CAACG,iBAAL,GAAyBF,MAA1B,CAAhD;EACA,OAAO,IAAID,IAAJ,CAASE,kBAAT,EAA6B,CAA7B,EAAgCD,MAAhC,CAAP;AACD;AAGD,OAAO,SAASG,SAAT,OAA2D;EAAA,IAAxC;IAACC,MAAD;IAASC,MAAT;IAAiBC,KAAK,GAAG,CAAzB;IAA4BC,KAAK,GAAG;EAApC,CAAwC;EAChE,MAAMP,MAAM,GAAGK,MAAM,CAACL,MAAtB;EACA,MAAMQ,KAAK,GAAGD,KAAK,GAAGP,MAAtB;EACA,IAAIS,MAAM,GAAG,CAAb;;EACA,KAAK,IAAIC,CAAC,GAAGJ,KAAb,EAAoBG,MAAM,GAAGT,MAA7B,EAAqCS,MAAM,EAA3C,EAA+C;IAC7CL,MAAM,CAACM,CAAC,EAAF,CAAN,GAAcL,MAAM,CAACI,MAAD,CAApB;EACD;;EAED,OAAOA,MAAM,GAAGD,KAAhB,EAAuB;IAGrB,IAAIC,MAAM,GAAGD,KAAK,GAAGC,MAArB,EAA6B;MAC3BL,MAAM,CAACO,UAAP,CAAkBL,KAAK,GAAGG,MAA1B,EAAkCH,KAAlC,EAAyCA,KAAK,GAAGG,MAAjD;MACAA,MAAM,IAAI,CAAV;IACD,CAHD,MAGO;MACLL,MAAM,CAACO,UAAP,CAAkBL,KAAK,GAAGG,MAA1B,EAAkCH,KAAlC,EAAyCA,KAAK,GAAGE,KAAR,GAAgBC,MAAzD;MACAA,MAAM,GAAGD,KAAT;IACD;EACF;;EAED,OAAOJ,MAAP;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/assert.js"],"names":["assert","condition","message","Error"],"mappings":"AAEA,OAAO,SAASA,MAAT,CAAgBC,SAAhB,EAA2BC,OAA3B,EAAoC;AACzC,MAAI,CAACD,SAAL,EAAgB;AACd,UAAM,IAAIE,KAAJ,CAAUD,OAAO,IAAI,4BAArB,CAAN;AACD;AACF","sourcesContent":["// Recommendation is to ignore message but current test suite checks agains the\n// message so keep it for now.\nexport function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'luma.gl: assertion failed.');\n }\n}\n"],"file":"assert.js"}
1
+ {"version":3,"file":"assert.js","names":["assert","condition","message","Error"],"sources":["../../../src/utils/assert.js"],"sourcesContent":["// Recommendation is to ignore message but current test suite checks agains the\n// message so keep it for now.\nexport function assert(condition, message) {\n if (!condition) {\n throw new Error(message || 'luma.gl: assertion failed.');\n }\n}\n"],"mappings":"AAEA,OAAO,SAASA,MAAT,CAAgBC,SAAhB,EAA2BC,OAA3B,EAAoC;EACzC,IAAI,CAACD,SAAL,EAAgB;IACd,MAAM,IAAIE,KAAJ,CAAUD,OAAO,IAAI,4BAArB,CAAN;EACD;AACF"}
@@ -9,15 +9,15 @@ export function checkProps(className, props, propChecks) {
9
9
  for (const propName in removedProps) {
10
10
  if (propName in props) {
11
11
  const replacementProp = removedProps[propName];
12
- const replacement = replacementProp ? `${className}.${removedProps[propName]}` : 'N/A';
13
- log.removed(`${className}.${propName}`, replacement)();
12
+ const replacement = replacementProp ? "".concat(className, ".").concat(removedProps[propName]) : 'N/A';
13
+ log.removed("".concat(className, ".").concat(propName), replacement)();
14
14
  }
15
15
  }
16
16
 
17
17
  for (const propName in deprecatedProps) {
18
18
  if (propName in props) {
19
19
  const replacementProp = deprecatedProps[propName];
20
- log.deprecated(`${className}.${propName}`, `${className}.${replacementProp}`)();
20
+ log.deprecated("".concat(className, ".").concat(propName), "".concat(className, ".").concat(replacementProp))();
21
21
  }
22
22
  }
23
23
 
@@ -26,7 +26,7 @@ export function checkProps(className, props, propChecks) {
26
26
  for (const propName in replacedProps) {
27
27
  if (propName in props) {
28
28
  const replacementProp = replacedProps[propName];
29
- log.deprecated(`${className}.${propName}`, `${className}.${replacementProp}`)();
29
+ log.deprecated("".concat(className, ".").concat(propName), "".concat(className, ".").concat(replacementProp))();
30
30
  newProps = newProps || Object.assign({}, props);
31
31
  newProps[replacementProp] = props[propName];
32
32
  delete newProps[propName];
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/check-props.js"],"names":["log","checkProps","className","props","propChecks","removedProps","deprecatedProps","replacedProps","propName","replacementProp","replacement","removed","deprecated","newProps","Object","assign"],"mappings":"AA6BA,SAAQA,GAAR,QAAkB,kBAAlB;AAEA,OAAO,SAASC,UAAT,CAAoBC,SAApB,EAA+BC,KAA/B,EAAsCC,UAAtC,EAAkD;AACvD,QAAM;AAACC,IAAAA,YAAY,GAAG,EAAhB;AAAoBC,IAAAA,eAAe,GAAG,EAAtC;AAA0CC,IAAAA,aAAa,GAAG;AAA1D,MAAgEH,UAAtE;;AAIA,OAAK,MAAMI,QAAX,IAAuBH,YAAvB,EAAqC;AACnC,QAAIG,QAAQ,IAAIL,KAAhB,EAAuB;AACrB,YAAMM,eAAe,GAAGJ,YAAY,CAACG,QAAD,CAApC;AACA,YAAME,WAAW,GAAGD,eAAe,GAAI,GAAEP,SAAU,IAAGG,YAAY,CAACG,QAAD,CAAW,EAA1C,GAA8C,KAAjF;AACAR,MAAAA,GAAG,CAACW,OAAJ,CAAa,GAAET,SAAU,IAAGM,QAAS,EAArC,EAAwCE,WAAxC;AACD;AACF;;AAID,OAAK,MAAMF,QAAX,IAAuBF,eAAvB,EAAwC;AACtC,QAAIE,QAAQ,IAAIL,KAAhB,EAAuB;AACrB,YAAMM,eAAe,GAAGH,eAAe,CAACE,QAAD,CAAvC;AACAR,MAAAA,GAAG,CAACY,UAAJ,CAAgB,GAAEV,SAAU,IAAGM,QAAS,EAAxC,EAA4C,GAAEN,SAAU,IAAGO,eAAgB,EAA3E;AACD;AACF;;AAID,MAAII,QAAQ,GAAG,IAAf;;AACA,OAAK,MAAML,QAAX,IAAuBD,aAAvB,EAAsC;AACpC,QAAIC,QAAQ,IAAIL,KAAhB,EAAuB;AACrB,YAAMM,eAAe,GAAGF,aAAa,CAACC,QAAD,CAArC;AACAR,MAAAA,GAAG,CAACY,UAAJ,CAAgB,GAAEV,SAAU,IAAGM,QAAS,EAAxC,EAA4C,GAAEN,SAAU,IAAGO,eAAgB,EAA3E;AACAI,MAAAA,QAAQ,GAAGA,QAAQ,IAAIC,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBZ,KAAlB,CAAvB;AACAU,MAAAA,QAAQ,CAACJ,eAAD,CAAR,GAA4BN,KAAK,CAACK,QAAD,CAAjC;AACA,aAAOK,QAAQ,CAACL,QAAD,CAAf;AACD;AACF;;AAED,SAAOK,QAAQ,IAAIV,KAAnB;AACD","sourcesContent":["/* Use as\nimport {checkProps} from '../util/check-props;'\n\nconst PROP_CHECKS = {\n // Removed props no longer supported, print error and link to upgrade guide\n removedProps: {\n },\n // Deprecated props\n deprecatedProps: {\n offset: 'accessor',\n stride: 'accessor',\n type: 'accessor',\n size: 'accessor',\n divisor: 'accessor',\n normalized: 'accessor',\n integer: 'accessor'\n },\n // Deprecated props that can be autosubstituted, print warning and return updated props object\n replacedProps: {\n bytes: 'byteLength'\n }\n}\n\nclass Buffer {\n setProps(props) {\n checkProps('Buffer', props, PROP_CHECKS);\n }\n}\n*/\nimport {log} from '@luma.gl/gltools';\n\nexport function checkProps(className, props, propChecks) {\n const {removedProps = {}, deprecatedProps = {}, replacedProps = {}} = propChecks;\n\n // removedProps: Removed props no longer supported\n // print error and link to upgrade guide\n for (const propName in removedProps) {\n if (propName in props) {\n const replacementProp = removedProps[propName];\n const replacement = replacementProp ? `${className}.${removedProps[propName]}` : 'N/A';\n log.removed(`${className}.${propName}`, replacement)();\n }\n }\n\n // deprecatedProps: Deprecated props that can not be autosubstituted\n // print warning and rely on caller to substitute\n for (const propName in deprecatedProps) {\n if (propName in props) {\n const replacementProp = deprecatedProps[propName];\n log.deprecated(`${className}.${propName}`, `${className}.${replacementProp}`)();\n }\n }\n\n // replacedProps: Deprecated props that can be autosubstituted\n // print warning and return updated props object\n let newProps = null;\n for (const propName in replacedProps) {\n if (propName in props) {\n const replacementProp = replacedProps[propName];\n log.deprecated(`${className}.${propName}`, `${className}.${replacementProp}`)();\n newProps = newProps || Object.assign({}, props);\n newProps[replacementProp] = props[propName];\n delete newProps[propName];\n }\n }\n\n return newProps || props;\n}\n"],"file":"check-props.js"}
1
+ {"version":3,"file":"check-props.js","names":["log","checkProps","className","props","propChecks","removedProps","deprecatedProps","replacedProps","propName","replacementProp","replacement","removed","deprecated","newProps","Object","assign"],"sources":["../../../src/utils/check-props.js"],"sourcesContent":["/* Use as\nimport {checkProps} from '../util/check-props;'\n\nconst PROP_CHECKS = {\n // Removed props no longer supported, print error and link to upgrade guide\n removedProps: {\n },\n // Deprecated props\n deprecatedProps: {\n offset: 'accessor',\n stride: 'accessor',\n type: 'accessor',\n size: 'accessor',\n divisor: 'accessor',\n normalized: 'accessor',\n integer: 'accessor'\n },\n // Deprecated props that can be autosubstituted, print warning and return updated props object\n replacedProps: {\n bytes: 'byteLength'\n }\n}\n\nclass Buffer {\n setProps(props) {\n checkProps('Buffer', props, PROP_CHECKS);\n }\n}\n*/\nimport {log} from '@luma.gl/gltools';\n\nexport function checkProps(className, props, propChecks) {\n const {removedProps = {}, deprecatedProps = {}, replacedProps = {}} = propChecks;\n\n // removedProps: Removed props no longer supported\n // print error and link to upgrade guide\n for (const propName in removedProps) {\n if (propName in props) {\n const replacementProp = removedProps[propName];\n const replacement = replacementProp ? `${className}.${removedProps[propName]}` : 'N/A';\n log.removed(`${className}.${propName}`, replacement)();\n }\n }\n\n // deprecatedProps: Deprecated props that can not be autosubstituted\n // print warning and rely on caller to substitute\n for (const propName in deprecatedProps) {\n if (propName in props) {\n const replacementProp = deprecatedProps[propName];\n log.deprecated(`${className}.${propName}`, `${className}.${replacementProp}`)();\n }\n }\n\n // replacedProps: Deprecated props that can be autosubstituted\n // print warning and return updated props object\n let newProps = null;\n for (const propName in replacedProps) {\n if (propName in props) {\n const replacementProp = replacedProps[propName];\n log.deprecated(`${className}.${propName}`, `${className}.${replacementProp}`)();\n newProps = newProps || Object.assign({}, props);\n newProps[replacementProp] = props[propName];\n delete newProps[propName];\n }\n }\n\n return newProps || props;\n}\n"],"mappings":"AA6BA,SAAQA,GAAR,QAAkB,kBAAlB;AAEA,OAAO,SAASC,UAAT,CAAoBC,SAApB,EAA+BC,KAA/B,EAAsCC,UAAtC,EAAkD;EACvD,MAAM;IAACC,YAAY,GAAG,EAAhB;IAAoBC,eAAe,GAAG,EAAtC;IAA0CC,aAAa,GAAG;EAA1D,IAAgEH,UAAtE;;EAIA,KAAK,MAAMI,QAAX,IAAuBH,YAAvB,EAAqC;IACnC,IAAIG,QAAQ,IAAIL,KAAhB,EAAuB;MACrB,MAAMM,eAAe,GAAGJ,YAAY,CAACG,QAAD,CAApC;MACA,MAAME,WAAW,GAAGD,eAAe,aAAMP,SAAN,cAAmBG,YAAY,CAACG,QAAD,CAA/B,IAA8C,KAAjF;MACAR,GAAG,CAACW,OAAJ,WAAeT,SAAf,cAA4BM,QAA5B,GAAwCE,WAAxC;IACD;EACF;;EAID,KAAK,MAAMF,QAAX,IAAuBF,eAAvB,EAAwC;IACtC,IAAIE,QAAQ,IAAIL,KAAhB,EAAuB;MACrB,MAAMM,eAAe,GAAGH,eAAe,CAACE,QAAD,CAAvC;MACAR,GAAG,CAACY,UAAJ,WAAkBV,SAAlB,cAA+BM,QAA/B,aAA8CN,SAA9C,cAA2DO,eAA3D;IACD;EACF;;EAID,IAAII,QAAQ,GAAG,IAAf;;EACA,KAAK,MAAML,QAAX,IAAuBD,aAAvB,EAAsC;IACpC,IAAIC,QAAQ,IAAIL,KAAhB,EAAuB;MACrB,MAAMM,eAAe,GAAGF,aAAa,CAACC,QAAD,CAArC;MACAR,GAAG,CAACY,UAAJ,WAAkBV,SAAlB,cAA+BM,QAA/B,aAA8CN,SAA9C,cAA2DO,eAA3D;MACAI,QAAQ,GAAGA,QAAQ,IAAIC,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBZ,KAAlB,CAAvB;MACAU,QAAQ,CAACJ,eAAD,CAAR,GAA4BN,KAAK,CAACK,QAAD,CAAjC;MACA,OAAOK,QAAQ,CAACL,QAAD,CAAf;IACD;EACF;;EAED,OAAOK,QAAQ,IAAIV,KAAnB;AACD"}
@@ -7,17 +7,18 @@ function formatArrayValue(v, opts) {
7
7
 
8
8
  for (let i = 0; i < v.length && i < maxElts; ++i) {
9
9
  if (i > 0) {
10
- string += `,${i % size === 0 ? ' ' : ''}`;
10
+ string += ",".concat(i % size === 0 ? ' ' : '');
11
11
  }
12
12
 
13
13
  string += formatValue(v[i], opts);
14
14
  }
15
15
 
16
16
  const terminator = v.length > maxElts ? '...' : ']';
17
- return `${string}${terminator}`;
17
+ return "".concat(string).concat(terminator);
18
18
  }
19
19
 
20
- export function formatValue(v, opts = {}) {
20
+ export function formatValue(v) {
21
+ let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
21
22
  const EPSILON = 1e-16;
22
23
  const {
23
24
  isInteger = false
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/format-value.js"],"names":["formatArrayValue","v","opts","maxElts","size","string","i","length","formatValue","terminator","EPSILON","isInteger","Array","isArray","ArrayBuffer","isView","Number","isFinite","String","Math","abs","toFixed","toPrecision","decimal","indexOf","slice"],"mappings":"AAEA,SAASA,gBAAT,CAA0BC,CAA1B,EAA6BC,IAA7B,EAAmC;AACjC,QAAM;AAACC,IAAAA,OAAO,GAAG,EAAX;AAAeC,IAAAA,IAAI,GAAG;AAAtB,MAA2BF,IAAjC;AACA,MAAIG,MAAM,GAAG,GAAb;;AACA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGL,CAAC,CAACM,MAAN,IAAgBD,CAAC,GAAGH,OAApC,EAA6C,EAAEG,CAA/C,EAAkD;AAChD,QAAIA,CAAC,GAAG,CAAR,EAAW;AACTD,MAAAA,MAAM,IAAK,IAAGC,CAAC,GAAGF,IAAJ,KAAa,CAAb,GAAiB,GAAjB,GAAuB,EAAG,EAAxC;AACD;;AACDC,IAAAA,MAAM,IAAIG,WAAW,CAACP,CAAC,CAACK,CAAD,CAAF,EAAOJ,IAAP,CAArB;AACD;;AACD,QAAMO,UAAU,GAAGR,CAAC,CAACM,MAAF,GAAWJ,OAAX,GAAqB,KAArB,GAA6B,GAAhD;AACA,SAAQ,GAAEE,MAAO,GAAEI,UAAW,EAA9B;AACD;;AAED,OAAO,SAASD,WAAT,CAAqBP,CAArB,EAAwBC,IAAI,GAAG,EAA/B,EAAmC;AACxC,QAAMQ,OAAO,GAAG,KAAhB;AACA,QAAM;AAACC,IAAAA,SAAS,GAAG;AAAb,MAAsBT,IAA5B;;AACA,MAAIU,KAAK,CAACC,OAAN,CAAcZ,CAAd,KAAoBa,WAAW,CAACC,MAAZ,CAAmBd,CAAnB,CAAxB,EAA+C;AAC7C,WAAOD,gBAAgB,CAACC,CAAD,EAAIC,IAAJ,CAAvB;AACD;;AACD,MAAI,CAACc,MAAM,CAACC,QAAP,CAAgBhB,CAAhB,CAAL,EAAyB;AACvB,WAAOiB,MAAM,CAACjB,CAAD,CAAb;AACD;;AACD,MAAIkB,IAAI,CAACC,GAAL,CAASnB,CAAT,IAAcS,OAAlB,EAA2B;AACzB,WAAOC,SAAS,GAAG,GAAH,GAAS,IAAzB;AACD;;AACD,MAAIA,SAAJ,EAAe;AACb,WAAOV,CAAC,CAACoB,OAAF,CAAU,CAAV,CAAP;AACD;;AACD,MAAIF,IAAI,CAACC,GAAL,CAASnB,CAAT,IAAc,GAAd,IAAqBkB,IAAI,CAACC,GAAL,CAASnB,CAAT,IAAc,KAAvC,EAA8C;AAC5C,WAAOA,CAAC,CAACoB,OAAF,CAAU,CAAV,CAAP;AACD;;AACD,QAAMhB,MAAM,GAAGJ,CAAC,CAACqB,WAAF,CAAc,CAAd,CAAf;AACA,QAAMC,OAAO,GAAGlB,MAAM,CAACmB,OAAP,CAAe,IAAf,CAAhB;AACA,SAAOD,OAAO,KAAKlB,MAAM,CAACE,MAAP,GAAgB,CAA5B,GAAgCF,MAAM,CAACoB,KAAP,CAAa,CAAb,EAAgB,CAAC,CAAjB,CAAhC,GAAsDpB,MAA7D;AACD","sourcesContent":["// TODO / DEPRECATED - delete when confident that probe.gl logging implements all opts\n/* eslint-disable no-console */\nfunction formatArrayValue(v, opts) {\n const {maxElts = 16, size = 1} = opts;\n let string = '[';\n for (let i = 0; i < v.length && i < maxElts; ++i) {\n if (i > 0) {\n string += `,${i % size === 0 ? ' ' : ''}`;\n }\n string += formatValue(v[i], opts);\n }\n const terminator = v.length > maxElts ? '...' : ']';\n return `${string}${terminator}`;\n}\n\nexport function formatValue(v, opts = {}) {\n const EPSILON = 1e-16;\n const {isInteger = false} = opts;\n if (Array.isArray(v) || ArrayBuffer.isView(v)) {\n return formatArrayValue(v, opts);\n }\n if (!Number.isFinite(v)) {\n return String(v);\n }\n if (Math.abs(v) < EPSILON) {\n return isInteger ? '0' : '0.';\n }\n if (isInteger) {\n return v.toFixed(0);\n }\n if (Math.abs(v) > 100 && Math.abs(v) < 10000) {\n return v.toFixed(0);\n }\n const string = v.toPrecision(2);\n const decimal = string.indexOf('.0');\n return decimal === string.length - 2 ? string.slice(0, -1) : string;\n}\n"],"file":"format-value.js"}
1
+ {"version":3,"file":"format-value.js","names":["formatArrayValue","v","opts","maxElts","size","string","i","length","formatValue","terminator","EPSILON","isInteger","Array","isArray","ArrayBuffer","isView","Number","isFinite","String","Math","abs","toFixed","toPrecision","decimal","indexOf","slice"],"sources":["../../../src/utils/format-value.js"],"sourcesContent":["// TODO / DEPRECATED - delete when confident that probe.gl logging implements all opts\n/* eslint-disable no-console */\nfunction formatArrayValue(v, opts) {\n const {maxElts = 16, size = 1} = opts;\n let string = '[';\n for (let i = 0; i < v.length && i < maxElts; ++i) {\n if (i > 0) {\n string += `,${i % size === 0 ? ' ' : ''}`;\n }\n string += formatValue(v[i], opts);\n }\n const terminator = v.length > maxElts ? '...' : ']';\n return `${string}${terminator}`;\n}\n\nexport function formatValue(v, opts = {}) {\n const EPSILON = 1e-16;\n const {isInteger = false} = opts;\n if (Array.isArray(v) || ArrayBuffer.isView(v)) {\n return formatArrayValue(v, opts);\n }\n if (!Number.isFinite(v)) {\n return String(v);\n }\n if (Math.abs(v) < EPSILON) {\n return isInteger ? '0' : '0.';\n }\n if (isInteger) {\n return v.toFixed(0);\n }\n if (Math.abs(v) > 100 && Math.abs(v) < 10000) {\n return v.toFixed(0);\n }\n const string = v.toPrecision(2);\n const decimal = string.indexOf('.0');\n return decimal === string.length - 2 ? string.slice(0, -1) : string;\n}\n"],"mappings":"AAEA,SAASA,gBAAT,CAA0BC,CAA1B,EAA6BC,IAA7B,EAAmC;EACjC,MAAM;IAACC,OAAO,GAAG,EAAX;IAAeC,IAAI,GAAG;EAAtB,IAA2BF,IAAjC;EACA,IAAIG,MAAM,GAAG,GAAb;;EACA,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGL,CAAC,CAACM,MAAN,IAAgBD,CAAC,GAAGH,OAApC,EAA6C,EAAEG,CAA/C,EAAkD;IAChD,IAAIA,CAAC,GAAG,CAAR,EAAW;MACTD,MAAM,eAAQC,CAAC,GAAGF,IAAJ,KAAa,CAAb,GAAiB,GAAjB,GAAuB,EAA/B,CAAN;IACD;;IACDC,MAAM,IAAIG,WAAW,CAACP,CAAC,CAACK,CAAD,CAAF,EAAOJ,IAAP,CAArB;EACD;;EACD,MAAMO,UAAU,GAAGR,CAAC,CAACM,MAAF,GAAWJ,OAAX,GAAqB,KAArB,GAA6B,GAAhD;EACA,iBAAUE,MAAV,SAAmBI,UAAnB;AACD;;AAED,OAAO,SAASD,WAAT,CAAqBP,CAArB,EAAmC;EAAA,IAAXC,IAAW,uEAAJ,EAAI;EACxC,MAAMQ,OAAO,GAAG,KAAhB;EACA,MAAM;IAACC,SAAS,GAAG;EAAb,IAAsBT,IAA5B;;EACA,IAAIU,KAAK,CAACC,OAAN,CAAcZ,CAAd,KAAoBa,WAAW,CAACC,MAAZ,CAAmBd,CAAnB,CAAxB,EAA+C;IAC7C,OAAOD,gBAAgB,CAACC,CAAD,EAAIC,IAAJ,CAAvB;EACD;;EACD,IAAI,CAACc,MAAM,CAACC,QAAP,CAAgBhB,CAAhB,CAAL,EAAyB;IACvB,OAAOiB,MAAM,CAACjB,CAAD,CAAb;EACD;;EACD,IAAIkB,IAAI,CAACC,GAAL,CAASnB,CAAT,IAAcS,OAAlB,EAA2B;IACzB,OAAOC,SAAS,GAAG,GAAH,GAAS,IAAzB;EACD;;EACD,IAAIA,SAAJ,EAAe;IACb,OAAOV,CAAC,CAACoB,OAAF,CAAU,CAAV,CAAP;EACD;;EACD,IAAIF,IAAI,CAACC,GAAL,CAASnB,CAAT,IAAc,GAAd,IAAqBkB,IAAI,CAACC,GAAL,CAASnB,CAAT,IAAc,KAAvC,EAA8C;IAC5C,OAAOA,CAAC,CAACoB,OAAF,CAAU,CAAV,CAAP;EACD;;EACD,MAAMhB,MAAM,GAAGJ,CAAC,CAACqB,WAAF,CAAc,CAAd,CAAf;EACA,MAAMC,OAAO,GAAGlB,MAAM,CAACmB,OAAP,CAAe,IAAf,CAAhB;EACA,OAAOD,OAAO,KAAKlB,MAAM,CAACE,MAAP,GAAgB,CAA5B,GAAgCF,MAAM,CAACoB,KAAP,CAAa,CAAb,EAAgB,CAAC,CAAjB,CAAhC,GAAsDpB,MAA7D;AACD"}
@@ -1,5 +1,6 @@
1
1
  import { getBrowser } from '@probe.gl/env';
2
- export function isOldIE(opts = {}) {
2
+ export function isOldIE() {
3
+ let opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3
4
  return getBrowser(opts.userAgent) === 'IE';
4
5
  }
5
6
  //# sourceMappingURL=is-old-ie.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/is-old-ie.js"],"names":["getBrowser","isOldIE","opts","userAgent"],"mappings":"AAAA,SAAQA,UAAR,QAAyB,eAAzB;AAGA,OAAO,SAASC,OAAT,CAAiBC,IAAI,GAAG,EAAxB,EAA4B;AACjC,SAAOF,UAAU,CAACE,IAAI,CAACC,SAAN,CAAV,KAA+B,IAAtC;AACD","sourcesContent":["import {getBrowser} from '@probe.gl/env';\n\n// opts allows user agent to be overridden for testing\nexport function isOldIE(opts = {}) {\n return getBrowser(opts.userAgent) === 'IE';\n}\n"],"file":"is-old-ie.js"}
1
+ {"version":3,"file":"is-old-ie.js","names":["getBrowser","isOldIE","opts","userAgent"],"sources":["../../../src/utils/is-old-ie.js"],"sourcesContent":["import {getBrowser} from '@probe.gl/env';\n\n// opts allows user agent to be overridden for testing\nexport function isOldIE(opts = {}) {\n return getBrowser(opts.userAgent) === 'IE';\n}\n"],"mappings":"AAAA,SAAQA,UAAR,QAAyB,eAAzB;AAGA,OAAO,SAASC,OAAT,GAA4B;EAAA,IAAXC,IAAW,uEAAJ,EAAI;EACjC,OAAOF,UAAU,CAACE,IAAI,CAACC,SAAN,CAAV,KAA+B,IAAtC;AACD"}
@@ -3,7 +3,8 @@ let pathPrefix = '';
3
3
  export function setPathPrefix(prefix) {
4
4
  pathPrefix = prefix;
5
5
  }
6
- export function loadFile(url, options = {}) {
6
+ export function loadFile(url) {
7
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7
8
  assert(typeof url === 'string');
8
9
  url = pathPrefix + url;
9
10
  const dataType = options.dataType || 'text';
@@ -18,7 +19,7 @@ export function loadImage(url, opts) {
18
19
 
19
20
  image.onload = () => resolve(image);
20
21
 
21
- image.onerror = () => reject(new Error(`Could not load image ${url}.`));
22
+ image.onerror = () => reject(new Error("Could not load image ".concat(url, ".")));
22
23
 
23
24
  image.crossOrigin = opts && opts.crossOrigin || 'anonymous';
24
25
  image.src = url;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/load-file.js"],"names":["assert","pathPrefix","setPathPrefix","prefix","loadFile","url","options","dataType","fetch","then","res","loadImage","opts","Promise","resolve","reject","image","Image","onload","onerror","Error","crossOrigin","src","error"],"mappings":"AAAA,SAAQA,MAAR,QAAqB,iBAArB;AAEA,IAAIC,UAAU,GAAG,EAAjB;AAKA,OAAO,SAASC,aAAT,CAAuBC,MAAvB,EAA+B;AACpCF,EAAAA,UAAU,GAAGE,MAAb;AACD;AAGD,OAAO,SAASC,QAAT,CAAkBC,GAAlB,EAAuBC,OAAO,GAAG,EAAjC,EAAqC;AAC1CN,EAAAA,MAAM,CAAC,OAAOK,GAAP,KAAe,QAAhB,CAAN;AACAA,EAAAA,GAAG,GAAGJ,UAAU,GAAGI,GAAnB;AACA,QAAME,QAAQ,GAAGD,OAAO,CAACC,QAAR,IAAoB,MAArC;AACA,SAAOC,KAAK,CAACH,GAAD,EAAMC,OAAN,CAAL,CAAoBG,IAApB,CAAyBC,GAAG,IAAIA,GAAG,CAACH,QAAD,CAAH,EAAhC,CAAP;AACD;AAOD,OAAO,SAASI,SAAT,CAAmBN,GAAnB,EAAwBO,IAAxB,EAA8B;AACnCZ,EAAAA,MAAM,CAAC,OAAOK,GAAP,KAAe,QAAhB,CAAN;AACAA,EAAAA,GAAG,GAAGJ,UAAU,GAAGI,GAAnB;AACA,SAAO,IAAIQ,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;AACtC,QAAI;AACF,YAAMC,KAAK,GAAG,IAAIC,KAAJ,EAAd;;AACAD,MAAAA,KAAK,CAACE,MAAN,GAAe,MAAMJ,OAAO,CAACE,KAAD,CAA5B;;AACAA,MAAAA,KAAK,CAACG,OAAN,GAAgB,MAAMJ,MAAM,CAAC,IAAIK,KAAJ,CAAW,wBAAuBf,GAAI,GAAtC,CAAD,CAA5B;;AACAW,MAAAA,KAAK,CAACK,WAAN,GAAqBT,IAAI,IAAIA,IAAI,CAACS,WAAd,IAA8B,WAAlD;AACAL,MAAAA,KAAK,CAACM,GAAN,GAAYjB,GAAZ;AACD,KAND,CAME,OAAOkB,KAAP,EAAc;AACdR,MAAAA,MAAM,CAACQ,KAAD,CAAN;AACD;AACF,GAVM,CAAP;AAWD","sourcesContent":["import {assert} from '../utils/assert';\n\nlet pathPrefix = '';\n\n/*\n * Set a relative path prefix\n */\nexport function setPathPrefix(prefix) {\n pathPrefix = prefix;\n}\n\n// Reads raw file data from:\nexport function loadFile(url, options = {}) {\n assert(typeof url === 'string');\n url = pathPrefix + url;\n const dataType = options.dataType || 'text';\n return fetch(url, options).then(res => res[dataType]());\n}\n\n/*\n * Loads images asynchronously\n * image.crossOrigin can be set via opts.crossOrigin, default to 'anonymous'\n * returns a promise tracking the load\n */\nexport function loadImage(url, opts) {\n assert(typeof url === 'string');\n url = pathPrefix + url;\n return new Promise((resolve, reject) => {\n try {\n const image = new Image();\n image.onload = () => resolve(image);\n image.onerror = () => reject(new Error(`Could not load image ${url}.`));\n image.crossOrigin = (opts && opts.crossOrigin) || 'anonymous';\n image.src = url;\n } catch (error) {\n reject(error);\n }\n });\n}\n"],"file":"load-file.js"}
1
+ {"version":3,"file":"load-file.js","names":["assert","pathPrefix","setPathPrefix","prefix","loadFile","url","options","dataType","fetch","then","res","loadImage","opts","Promise","resolve","reject","image","Image","onload","onerror","Error","crossOrigin","src","error"],"sources":["../../../src/utils/load-file.js"],"sourcesContent":["import {assert} from '../utils/assert';\n\nlet pathPrefix = '';\n\n/*\n * Set a relative path prefix\n */\nexport function setPathPrefix(prefix) {\n pathPrefix = prefix;\n}\n\n// Reads raw file data from:\nexport function loadFile(url, options = {}) {\n assert(typeof url === 'string');\n url = pathPrefix + url;\n const dataType = options.dataType || 'text';\n return fetch(url, options).then(res => res[dataType]());\n}\n\n/*\n * Loads images asynchronously\n * image.crossOrigin can be set via opts.crossOrigin, default to 'anonymous'\n * returns a promise tracking the load\n */\nexport function loadImage(url, opts) {\n assert(typeof url === 'string');\n url = pathPrefix + url;\n return new Promise((resolve, reject) => {\n try {\n const image = new Image();\n image.onload = () => resolve(image);\n image.onerror = () => reject(new Error(`Could not load image ${url}.`));\n image.crossOrigin = (opts && opts.crossOrigin) || 'anonymous';\n image.src = url;\n } catch (error) {\n reject(error);\n }\n });\n}\n"],"mappings":"AAAA,SAAQA,MAAR,QAAqB,iBAArB;AAEA,IAAIC,UAAU,GAAG,EAAjB;AAKA,OAAO,SAASC,aAAT,CAAuBC,MAAvB,EAA+B;EACpCF,UAAU,GAAGE,MAAb;AACD;AAGD,OAAO,SAASC,QAAT,CAAkBC,GAAlB,EAAqC;EAAA,IAAdC,OAAc,uEAAJ,EAAI;EAC1CN,MAAM,CAAC,OAAOK,GAAP,KAAe,QAAhB,CAAN;EACAA,GAAG,GAAGJ,UAAU,GAAGI,GAAnB;EACA,MAAME,QAAQ,GAAGD,OAAO,CAACC,QAAR,IAAoB,MAArC;EACA,OAAOC,KAAK,CAACH,GAAD,EAAMC,OAAN,CAAL,CAAoBG,IAApB,CAAyBC,GAAG,IAAIA,GAAG,CAACH,QAAD,CAAH,EAAhC,CAAP;AACD;AAOD,OAAO,SAASI,SAAT,CAAmBN,GAAnB,EAAwBO,IAAxB,EAA8B;EACnCZ,MAAM,CAAC,OAAOK,GAAP,KAAe,QAAhB,CAAN;EACAA,GAAG,GAAGJ,UAAU,GAAGI,GAAnB;EACA,OAAO,IAAIQ,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;IACtC,IAAI;MACF,MAAMC,KAAK,GAAG,IAAIC,KAAJ,EAAd;;MACAD,KAAK,CAACE,MAAN,GAAe,MAAMJ,OAAO,CAACE,KAAD,CAA5B;;MACAA,KAAK,CAACG,OAAN,GAAgB,MAAMJ,MAAM,CAAC,IAAIK,KAAJ,gCAAkCf,GAAlC,OAAD,CAA5B;;MACAW,KAAK,CAACK,WAAN,GAAqBT,IAAI,IAAIA,IAAI,CAACS,WAAd,IAA8B,WAAlD;MACAL,KAAK,CAACM,GAAN,GAAYjB,GAAZ;IACD,CAND,CAME,OAAOkB,KAAP,EAAc;MACdR,MAAM,CAACQ,KAAD,CAAN;IACD;EACF,CAVM,CAAP;AAWD"}
@@ -1,7 +1,6 @@
1
1
  import { log } from '@luma.gl/gltools';
2
2
  export function stubRemovedMethods(instance, className, version, methodNames) {
3
- const upgradeMessage = `See luma.gl ${version} Upgrade Guide at \
4
- https://luma.gl/docs/upgrade-guide`;
3
+ const upgradeMessage = "See luma.gl ".concat(version, " Upgrade Guide at https://luma.gl/docs/upgrade-guide");
5
4
  const prototype = Object.getPrototypeOf(instance);
6
5
  methodNames.forEach(methodName => {
7
6
  if (prototype.methodName) {
@@ -9,7 +8,7 @@ https://luma.gl/docs/upgrade-guide`;
9
8
  }
10
9
 
11
10
  prototype[methodName] = () => {
12
- log.removed(`Calling removed method ${className}.${methodName}: `, upgradeMessage)();
11
+ log.removed("Calling removed method ".concat(className, ".").concat(methodName, ": "), upgradeMessage)();
13
12
  throw new Error(methodName);
14
13
  };
15
14
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/stub-methods.js"],"names":["log","stubRemovedMethods","instance","className","version","methodNames","upgradeMessage","prototype","Object","getPrototypeOf","forEach","methodName","removed","Error"],"mappings":"AAAA,SAAQA,GAAR,QAAkB,kBAAlB;AAGA,OAAO,SAASC,kBAAT,CAA4BC,QAA5B,EAAsCC,SAAtC,EAAiDC,OAAjD,EAA0DC,WAA1D,EAAuE;AAC5E,QAAMC,cAAc,GAAI,eAAcF,OAAQ;AAChD,mCADE;AAGA,QAAMG,SAAS,GAAGC,MAAM,CAACC,cAAP,CAAsBP,QAAtB,CAAlB;AAEAG,EAAAA,WAAW,CAACK,OAAZ,CAAoBC,UAAU,IAAI;AAChC,QAAIJ,SAAS,CAACI,UAAd,EAA0B;AACxB;AACD;;AAEDJ,IAAAA,SAAS,CAACI,UAAD,CAAT,GAAwB,MAAM;AAC5BX,MAAAA,GAAG,CAACY,OAAJ,CAAa,0BAAyBT,SAAU,IAAGQ,UAAW,IAA9D,EAAmEL,cAAnE;AACA,YAAM,IAAIO,KAAJ,CAAUF,UAAV,CAAN;AACD,KAHD;AAID,GATD;AAUD","sourcesContent":["import {log} from '@luma.gl/gltools';\n\n// Install stubs for removed methods\nexport function stubRemovedMethods(instance, className, version, methodNames) {\n const upgradeMessage = `See luma.gl ${version} Upgrade Guide at \\\nhttps://luma.gl/docs/upgrade-guide`;\n\n const prototype = Object.getPrototypeOf(instance);\n\n methodNames.forEach(methodName => {\n if (prototype.methodName) {\n return;\n }\n\n prototype[methodName] = () => {\n log.removed(`Calling removed method ${className}.${methodName}: `, upgradeMessage)();\n throw new Error(methodName);\n };\n });\n}\n"],"file":"stub-methods.js"}
1
+ {"version":3,"file":"stub-methods.js","names":["log","stubRemovedMethods","instance","className","version","methodNames","upgradeMessage","prototype","Object","getPrototypeOf","forEach","methodName","removed","Error"],"sources":["../../../src/utils/stub-methods.js"],"sourcesContent":["import {log} from '@luma.gl/gltools';\n\n// Install stubs for removed methods\nexport function stubRemovedMethods(instance, className, version, methodNames) {\n const upgradeMessage = `See luma.gl ${version} Upgrade Guide at \\\nhttps://luma.gl/docs/upgrade-guide`;\n\n const prototype = Object.getPrototypeOf(instance);\n\n methodNames.forEach(methodName => {\n if (prototype.methodName) {\n return;\n }\n\n prototype[methodName] = () => {\n log.removed(`Calling removed method ${className}.${methodName}: `, upgradeMessage)();\n throw new Error(methodName);\n };\n });\n}\n"],"mappings":"AAAA,SAAQA,GAAR,QAAkB,kBAAlB;AAGA,OAAO,SAASC,kBAAT,CAA4BC,QAA5B,EAAsCC,SAAtC,EAAiDC,OAAjD,EAA0DC,WAA1D,EAAuE;EAC5E,MAAMC,cAAc,yBAAkBF,OAAlB,yDAApB;EAGA,MAAMG,SAAS,GAAGC,MAAM,CAACC,cAAP,CAAsBP,QAAtB,CAAlB;EAEAG,WAAW,CAACK,OAAZ,CAAoBC,UAAU,IAAI;IAChC,IAAIJ,SAAS,CAACI,UAAd,EAA0B;MACxB;IACD;;IAEDJ,SAAS,CAACI,UAAD,CAAT,GAAwB,MAAM;MAC5BX,GAAG,CAACY,OAAJ,kCAAsCT,SAAtC,cAAmDQ,UAAnD,SAAmEL,cAAnE;MACA,MAAM,IAAIO,KAAJ,CAAUF,UAAV,CAAN;IACD,CAHD;EAID,CATD;AAUD"}
@@ -1,9 +1,10 @@
1
1
  import { assert } from './assert';
2
2
  const uidCounters = {};
3
- export function uid(id = 'id') {
3
+ export function uid() {
4
+ let id = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'id';
4
5
  uidCounters[id] = uidCounters[id] || 1;
5
6
  const count = uidCounters[id]++;
6
- return `${id}-${count}`;
7
+ return "".concat(id, "-").concat(count);
7
8
  }
8
9
  export function isPowerOfTwo(n) {
9
10
  assert(typeof n === 'number', 'Input must be a number');
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/utils.js"],"names":["assert","uidCounters","uid","id","count","isPowerOfTwo","n","isObjectEmpty","obj","isEmpty","key"],"mappings":"AAAA,SAAQA,MAAR,QAAqB,UAArB;AAEA,MAAMC,WAAW,GAAG,EAApB;AAOA,OAAO,SAASC,GAAT,CAAaC,EAAE,GAAG,IAAlB,EAAwB;AAC7BF,EAAAA,WAAW,CAACE,EAAD,CAAX,GAAkBF,WAAW,CAACE,EAAD,CAAX,IAAmB,CAArC;AACA,QAAMC,KAAK,GAAGH,WAAW,CAACE,EAAD,CAAX,EAAd;AACA,SAAQ,GAAEA,EAAG,IAAGC,KAAM,EAAtB;AACD;AAOD,OAAO,SAASC,YAAT,CAAsBC,CAAtB,EAAyB;AAC9BN,EAAAA,MAAM,CAAC,OAAOM,CAAP,KAAa,QAAd,EAAwB,wBAAxB,CAAN;AACA,SAAOA,CAAC,IAAI,CAACA,CAAC,GAAIA,CAAC,GAAG,CAAV,MAAkB,CAA9B;AACD;AAGD,OAAO,SAASC,aAAT,CAAuBC,GAAvB,EAA4B;AACjC,MAAIC,OAAO,GAAG,IAAd;;AAEA,OAAK,MAAMC,GAAX,IAAkBF,GAAlB,EAAuB;AACrBC,IAAAA,OAAO,GAAG,KAAV;AACA;AACD;;AAED,SAAOA,OAAP;AACD","sourcesContent":["import {assert} from './assert';\n\nconst uidCounters = {};\n\n/**\n * Returns a UID.\n * @param {string} id= - Identifier base name\n * @return {string} uid\n **/\nexport function uid(id = 'id') {\n uidCounters[id] = uidCounters[id] || 1;\n const count = uidCounters[id]++;\n return `${id}-${count}`;\n}\n\n/**\n * Verifies if a given number is power of two or not.\n * @param {object} n - The number to check.\n * @return {boolean} Returns true if the given number is power of 2, false otherwise.\n **/\nexport function isPowerOfTwo(n) {\n assert(typeof n === 'number', 'Input must be a number');\n return n && (n & (n - 1)) === 0;\n}\n\n// Returns true if given object is empty, false otherwise.\nexport function isObjectEmpty(obj) {\n let isEmpty = true;\n /* eslint-disable no-unused-vars */\n for (const key in obj) {\n isEmpty = false;\n break;\n }\n /* eslint-enable no-unused-vars */\n return isEmpty;\n}\n"],"file":"utils.js"}
1
+ {"version":3,"file":"utils.js","names":["assert","uidCounters","uid","id","count","isPowerOfTwo","n","isObjectEmpty","obj","isEmpty","key"],"sources":["../../../src/utils/utils.js"],"sourcesContent":["import {assert} from './assert';\n\nconst uidCounters = {};\n\n/**\n * Returns a UID.\n * @param {string} id= - Identifier base name\n * @return {string} uid\n **/\nexport function uid(id = 'id') {\n uidCounters[id] = uidCounters[id] || 1;\n const count = uidCounters[id]++;\n return `${id}-${count}`;\n}\n\n/**\n * Verifies if a given number is power of two or not.\n * @param {object} n - The number to check.\n * @return {boolean} Returns true if the given number is power of 2, false otherwise.\n **/\nexport function isPowerOfTwo(n) {\n assert(typeof n === 'number', 'Input must be a number');\n return n && (n & (n - 1)) === 0;\n}\n\n// Returns true if given object is empty, false otherwise.\nexport function isObjectEmpty(obj) {\n let isEmpty = true;\n /* eslint-disable no-unused-vars */\n for (const key in obj) {\n isEmpty = false;\n break;\n }\n /* eslint-enable no-unused-vars */\n return isEmpty;\n}\n"],"mappings":"AAAA,SAAQA,MAAR,QAAqB,UAArB;AAEA,MAAMC,WAAW,GAAG,EAApB;AAOA,OAAO,SAASC,GAAT,GAAwB;EAAA,IAAXC,EAAW,uEAAN,IAAM;EAC7BF,WAAW,CAACE,EAAD,CAAX,GAAkBF,WAAW,CAACE,EAAD,CAAX,IAAmB,CAArC;EACA,MAAMC,KAAK,GAAGH,WAAW,CAACE,EAAD,CAAX,EAAd;EACA,iBAAUA,EAAV,cAAgBC,KAAhB;AACD;AAOD,OAAO,SAASC,YAAT,CAAsBC,CAAtB,EAAyB;EAC9BN,MAAM,CAAC,OAAOM,CAAP,KAAa,QAAd,EAAwB,wBAAxB,CAAN;EACA,OAAOA,CAAC,IAAI,CAACA,CAAC,GAAIA,CAAC,GAAG,CAAV,MAAkB,CAA9B;AACD;AAGD,OAAO,SAASC,aAAT,CAAuBC,GAAvB,EAA4B;EACjC,IAAIC,OAAO,GAAG,IAAd;;EAEA,KAAK,MAAMC,GAAX,IAAkBF,GAAlB,EAAuB;IACrBC,OAAO,GAAG,KAAV;IACA;EACD;;EAED,OAAOA,OAAP;AACD"}
@@ -90,10 +90,12 @@ export function getPrimitiveDrawMode(drawMode) {
90
90
  return 0;
91
91
  }
92
92
  }
93
- export function getPrimitiveCount({
94
- drawMode,
95
- vertexCount
96
- }) {
93
+ export function getPrimitiveCount(_ref) {
94
+ let {
95
+ drawMode,
96
+ vertexCount
97
+ } = _ref;
98
+
97
99
  switch (drawMode) {
98
100
  case GL_POINTS:
99
101
  case GL_LINE_LOOP:
@@ -117,10 +119,11 @@ export function getPrimitiveCount({
117
119
  return 0;
118
120
  }
119
121
  }
120
- export function getVertexCount({
121
- drawMode,
122
- vertexCount
123
- }) {
122
+ export function getVertexCount(_ref2) {
123
+ let {
124
+ drawMode,
125
+ vertexCount
126
+ } = _ref2;
124
127
  const primitiveCount = getPrimitiveCount({
125
128
  drawMode,
126
129
  vertexCount
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/webgl-utils/attribute-utils.js"],"names":["assert","GL_BYTE","GL_UNSIGNED_BYTE","GL_SHORT","GL_UNSIGNED_SHORT","GL_POINTS","GL_LINES","GL_LINE_LOOP","GL_LINE_STRIP","GL_TRIANGLES","GL_TRIANGLE_STRIP","GL_TRIANGLE_FAN","GL_FLOAT","GL_FLOAT_VEC2","GL_FLOAT_VEC3","GL_FLOAT_VEC4","GL_INT","GL_INT_VEC2","GL_INT_VEC3","GL_INT_VEC4","GL_UNSIGNED_INT","GL_UNSIGNED_INT_VEC2","GL_UNSIGNED_INT_VEC3","GL_UNSIGNED_INT_VEC4","GL_BOOL","GL_BOOL_VEC2","GL_BOOL_VEC3","GL_BOOL_VEC4","GL_FLOAT_MAT2","GL_FLOAT_MAT3","GL_FLOAT_MAT4","GL_FLOAT_MAT2x3","GL_FLOAT_MAT2x4","GL_FLOAT_MAT3x2","GL_FLOAT_MAT3x4","GL_FLOAT_MAT4x2","GL_FLOAT_MAT4x3","COMPOSITE_GL_TYPES","getPrimitiveDrawMode","drawMode","getPrimitiveCount","vertexCount","getVertexCount","primitiveCount","decomposeCompositeGLType","compositeGLType","typeAndSize","type","components","getCompositeGLType","glType","compType","compComponents","name"],"mappings":"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","sourcesContent":["/* eslint-disable camelcase */\nimport {assert} from '../utils/assert';\n\nconst GL_BYTE = 0x1400;\nconst GL_UNSIGNED_BYTE = 0x1401;\nconst GL_SHORT = 0x1402;\nconst GL_UNSIGNED_SHORT = 0x1403;\n\nconst GL_POINTS = 0x0;\nconst GL_LINES = 0x1;\nconst GL_LINE_LOOP = 0x2;\nconst GL_LINE_STRIP = 0x3;\nconst GL_TRIANGLES = 0x4;\nconst GL_TRIANGLE_STRIP = 0x5;\nconst GL_TRIANGLE_FAN = 0x6;\n\n// Local constants - these will \"collapse\" during minification\nconst GL_FLOAT = 0x1406;\nconst GL_FLOAT_VEC2 = 0x8b50;\nconst GL_FLOAT_VEC3 = 0x8b51;\nconst GL_FLOAT_VEC4 = 0x8b52;\n\nconst GL_INT = 0x1404;\nconst GL_INT_VEC2 = 0x8b53;\nconst GL_INT_VEC3 = 0x8b54;\nconst GL_INT_VEC4 = 0x8b55;\n\nconst GL_UNSIGNED_INT = 0x1405;\nconst GL_UNSIGNED_INT_VEC2 = 0x8dc6;\nconst GL_UNSIGNED_INT_VEC3 = 0x8dc7;\nconst GL_UNSIGNED_INT_VEC4 = 0x8dc8;\n\nconst GL_BOOL = 0x8b56;\nconst GL_BOOL_VEC2 = 0x8b57;\nconst GL_BOOL_VEC3 = 0x8b58;\nconst GL_BOOL_VEC4 = 0x8b59;\n\nconst GL_FLOAT_MAT2 = 0x8b5a;\nconst GL_FLOAT_MAT3 = 0x8b5b;\nconst GL_FLOAT_MAT4 = 0x8b5c;\n\nconst GL_FLOAT_MAT2x3 = 0x8b65;\nconst GL_FLOAT_MAT2x4 = 0x8b66;\nconst GL_FLOAT_MAT3x2 = 0x8b67;\nconst GL_FLOAT_MAT3x4 = 0x8b68;\nconst GL_FLOAT_MAT4x2 = 0x8b69;\nconst GL_FLOAT_MAT4x3 = 0x8b6a;\n\n// Composite types table\nconst COMPOSITE_GL_TYPES = {\n [GL_FLOAT]: [GL_FLOAT, 1, 'float'],\n [GL_FLOAT_VEC2]: [GL_FLOAT, 2, 'vec2'],\n [GL_FLOAT_VEC3]: [GL_FLOAT, 3, 'vec3'],\n [GL_FLOAT_VEC4]: [GL_FLOAT, 4, 'vec4'],\n\n [GL_INT]: [GL_INT, 1, 'int'],\n [GL_INT_VEC2]: [GL_INT, 2, 'ivec2'],\n [GL_INT_VEC3]: [GL_INT, 3, 'ivec3'],\n [GL_INT_VEC4]: [GL_INT, 4, 'ivec4'],\n\n [GL_UNSIGNED_INT]: [GL_UNSIGNED_INT, 1, 'uint'],\n [GL_UNSIGNED_INT_VEC2]: [GL_UNSIGNED_INT, 2, 'uvec2'],\n [GL_UNSIGNED_INT_VEC3]: [GL_UNSIGNED_INT, 3, 'uvec3'],\n [GL_UNSIGNED_INT_VEC4]: [GL_UNSIGNED_INT, 4, 'uvec4'],\n\n [GL_BOOL]: [GL_FLOAT, 1, 'bool'],\n [GL_BOOL_VEC2]: [GL_FLOAT, 2, 'bvec2'],\n [GL_BOOL_VEC3]: [GL_FLOAT, 3, 'bvec3'],\n [GL_BOOL_VEC4]: [GL_FLOAT, 4, 'bvec4'],\n\n [GL_FLOAT_MAT2]: [GL_FLOAT, 8, 'mat2'], // 4\n [GL_FLOAT_MAT2x3]: [GL_FLOAT, 8, 'mat2x3'], // 6\n [GL_FLOAT_MAT2x4]: [GL_FLOAT, 8, 'mat2x4'], // 8\n\n [GL_FLOAT_MAT3]: [GL_FLOAT, 12, 'mat3'], // 9\n [GL_FLOAT_MAT3x2]: [GL_FLOAT, 12, 'mat3x2'], // 6\n [GL_FLOAT_MAT3x4]: [GL_FLOAT, 12, 'mat3x4'], // 12\n\n [GL_FLOAT_MAT4]: [GL_FLOAT, 16, 'mat4'], // 16\n [GL_FLOAT_MAT4x2]: [GL_FLOAT, 16, 'mat4x2'], // 8\n [GL_FLOAT_MAT4x3]: [GL_FLOAT, 16, 'mat4x3'] // 12\n};\n\n// Counts the number of complete primitives given a number of vertices and a drawMode\nexport function getPrimitiveDrawMode(drawMode) {\n switch (drawMode) {\n case GL_POINTS:\n return GL_POINTS;\n case GL_LINES:\n return GL_LINES;\n case GL_LINE_STRIP:\n return GL_LINES;\n case GL_LINE_LOOP:\n return GL_LINES;\n case GL_TRIANGLES:\n return GL_TRIANGLES;\n case GL_TRIANGLE_STRIP:\n return GL_TRIANGLES;\n case GL_TRIANGLE_FAN:\n return GL_TRIANGLES;\n default:\n assert(false);\n return 0;\n }\n}\n\n// Counts the number of complete \"primitives\" given a number of vertices and a drawMode\nexport function getPrimitiveCount({drawMode, vertexCount}) {\n switch (drawMode) {\n case GL_POINTS:\n case GL_LINE_LOOP:\n return vertexCount;\n case GL_LINES:\n return vertexCount / 2;\n case GL_LINE_STRIP:\n return vertexCount - 1;\n case GL_TRIANGLES:\n return vertexCount / 3;\n case GL_TRIANGLE_STRIP:\n case GL_TRIANGLE_FAN:\n return vertexCount - 2;\n default:\n assert(false);\n return 0;\n }\n}\n\n// Counts the number of vertices after splitting the vertex stream into separate \"primitives\"\nexport function getVertexCount({drawMode, vertexCount}) {\n const primitiveCount = getPrimitiveCount({drawMode, vertexCount});\n switch (getPrimitiveDrawMode(drawMode)) {\n case GL_POINTS:\n return primitiveCount;\n case GL_LINES:\n return primitiveCount * 2;\n case GL_TRIANGLES:\n return primitiveCount * 3;\n default:\n assert(false);\n return 0;\n }\n}\n\n// Decomposes a composite type GL.VEC3 into a basic type (GL.FLOAT) and components (3)\nexport function decomposeCompositeGLType(compositeGLType) {\n const typeAndSize = COMPOSITE_GL_TYPES[compositeGLType];\n if (!typeAndSize) {\n return null;\n }\n const [type, components] = typeAndSize;\n return {type, components};\n}\n\nexport function getCompositeGLType(type, components) {\n switch (type) {\n case GL_BYTE:\n case GL_UNSIGNED_BYTE:\n case GL_SHORT:\n case GL_UNSIGNED_SHORT:\n type = GL_FLOAT;\n break;\n default:\n }\n\n for (const glType in COMPOSITE_GL_TYPES) {\n const [compType, compComponents, name] = COMPOSITE_GL_TYPES[glType];\n if (compType === type && compComponents === components) {\n return {glType, name};\n }\n }\n return null;\n}\n"],"file":"attribute-utils.js"}
1
+ {"version":3,"file":"attribute-utils.js","names":["assert","GL_BYTE","GL_UNSIGNED_BYTE","GL_SHORT","GL_UNSIGNED_SHORT","GL_POINTS","GL_LINES","GL_LINE_LOOP","GL_LINE_STRIP","GL_TRIANGLES","GL_TRIANGLE_STRIP","GL_TRIANGLE_FAN","GL_FLOAT","GL_FLOAT_VEC2","GL_FLOAT_VEC3","GL_FLOAT_VEC4","GL_INT","GL_INT_VEC2","GL_INT_VEC3","GL_INT_VEC4","GL_UNSIGNED_INT","GL_UNSIGNED_INT_VEC2","GL_UNSIGNED_INT_VEC3","GL_UNSIGNED_INT_VEC4","GL_BOOL","GL_BOOL_VEC2","GL_BOOL_VEC3","GL_BOOL_VEC4","GL_FLOAT_MAT2","GL_FLOAT_MAT3","GL_FLOAT_MAT4","GL_FLOAT_MAT2x3","GL_FLOAT_MAT2x4","GL_FLOAT_MAT3x2","GL_FLOAT_MAT3x4","GL_FLOAT_MAT4x2","GL_FLOAT_MAT4x3","COMPOSITE_GL_TYPES","getPrimitiveDrawMode","drawMode","getPrimitiveCount","vertexCount","getVertexCount","primitiveCount","decomposeCompositeGLType","compositeGLType","typeAndSize","type","components","getCompositeGLType","glType","compType","compComponents","name"],"sources":["../../../src/webgl-utils/attribute-utils.js"],"sourcesContent":["/* eslint-disable camelcase */\nimport {assert} from '../utils/assert';\n\nconst GL_BYTE = 0x1400;\nconst GL_UNSIGNED_BYTE = 0x1401;\nconst GL_SHORT = 0x1402;\nconst GL_UNSIGNED_SHORT = 0x1403;\n\nconst GL_POINTS = 0x0;\nconst GL_LINES = 0x1;\nconst GL_LINE_LOOP = 0x2;\nconst GL_LINE_STRIP = 0x3;\nconst GL_TRIANGLES = 0x4;\nconst GL_TRIANGLE_STRIP = 0x5;\nconst GL_TRIANGLE_FAN = 0x6;\n\n// Local constants - these will \"collapse\" during minification\nconst GL_FLOAT = 0x1406;\nconst GL_FLOAT_VEC2 = 0x8b50;\nconst GL_FLOAT_VEC3 = 0x8b51;\nconst GL_FLOAT_VEC4 = 0x8b52;\n\nconst GL_INT = 0x1404;\nconst GL_INT_VEC2 = 0x8b53;\nconst GL_INT_VEC3 = 0x8b54;\nconst GL_INT_VEC4 = 0x8b55;\n\nconst GL_UNSIGNED_INT = 0x1405;\nconst GL_UNSIGNED_INT_VEC2 = 0x8dc6;\nconst GL_UNSIGNED_INT_VEC3 = 0x8dc7;\nconst GL_UNSIGNED_INT_VEC4 = 0x8dc8;\n\nconst GL_BOOL = 0x8b56;\nconst GL_BOOL_VEC2 = 0x8b57;\nconst GL_BOOL_VEC3 = 0x8b58;\nconst GL_BOOL_VEC4 = 0x8b59;\n\nconst GL_FLOAT_MAT2 = 0x8b5a;\nconst GL_FLOAT_MAT3 = 0x8b5b;\nconst GL_FLOAT_MAT4 = 0x8b5c;\n\nconst GL_FLOAT_MAT2x3 = 0x8b65;\nconst GL_FLOAT_MAT2x4 = 0x8b66;\nconst GL_FLOAT_MAT3x2 = 0x8b67;\nconst GL_FLOAT_MAT3x4 = 0x8b68;\nconst GL_FLOAT_MAT4x2 = 0x8b69;\nconst GL_FLOAT_MAT4x3 = 0x8b6a;\n\n// Composite types table\nconst COMPOSITE_GL_TYPES = {\n [GL_FLOAT]: [GL_FLOAT, 1, 'float'],\n [GL_FLOAT_VEC2]: [GL_FLOAT, 2, 'vec2'],\n [GL_FLOAT_VEC3]: [GL_FLOAT, 3, 'vec3'],\n [GL_FLOAT_VEC4]: [GL_FLOAT, 4, 'vec4'],\n\n [GL_INT]: [GL_INT, 1, 'int'],\n [GL_INT_VEC2]: [GL_INT, 2, 'ivec2'],\n [GL_INT_VEC3]: [GL_INT, 3, 'ivec3'],\n [GL_INT_VEC4]: [GL_INT, 4, 'ivec4'],\n\n [GL_UNSIGNED_INT]: [GL_UNSIGNED_INT, 1, 'uint'],\n [GL_UNSIGNED_INT_VEC2]: [GL_UNSIGNED_INT, 2, 'uvec2'],\n [GL_UNSIGNED_INT_VEC3]: [GL_UNSIGNED_INT, 3, 'uvec3'],\n [GL_UNSIGNED_INT_VEC4]: [GL_UNSIGNED_INT, 4, 'uvec4'],\n\n [GL_BOOL]: [GL_FLOAT, 1, 'bool'],\n [GL_BOOL_VEC2]: [GL_FLOAT, 2, 'bvec2'],\n [GL_BOOL_VEC3]: [GL_FLOAT, 3, 'bvec3'],\n [GL_BOOL_VEC4]: [GL_FLOAT, 4, 'bvec4'],\n\n [GL_FLOAT_MAT2]: [GL_FLOAT, 8, 'mat2'], // 4\n [GL_FLOAT_MAT2x3]: [GL_FLOAT, 8, 'mat2x3'], // 6\n [GL_FLOAT_MAT2x4]: [GL_FLOAT, 8, 'mat2x4'], // 8\n\n [GL_FLOAT_MAT3]: [GL_FLOAT, 12, 'mat3'], // 9\n [GL_FLOAT_MAT3x2]: [GL_FLOAT, 12, 'mat3x2'], // 6\n [GL_FLOAT_MAT3x4]: [GL_FLOAT, 12, 'mat3x4'], // 12\n\n [GL_FLOAT_MAT4]: [GL_FLOAT, 16, 'mat4'], // 16\n [GL_FLOAT_MAT4x2]: [GL_FLOAT, 16, 'mat4x2'], // 8\n [GL_FLOAT_MAT4x3]: [GL_FLOAT, 16, 'mat4x3'] // 12\n};\n\n// Counts the number of complete primitives given a number of vertices and a drawMode\nexport function getPrimitiveDrawMode(drawMode) {\n switch (drawMode) {\n case GL_POINTS:\n return GL_POINTS;\n case GL_LINES:\n return GL_LINES;\n case GL_LINE_STRIP:\n return GL_LINES;\n case GL_LINE_LOOP:\n return GL_LINES;\n case GL_TRIANGLES:\n return GL_TRIANGLES;\n case GL_TRIANGLE_STRIP:\n return GL_TRIANGLES;\n case GL_TRIANGLE_FAN:\n return GL_TRIANGLES;\n default:\n assert(false);\n return 0;\n }\n}\n\n// Counts the number of complete \"primitives\" given a number of vertices and a drawMode\nexport function getPrimitiveCount({drawMode, vertexCount}) {\n switch (drawMode) {\n case GL_POINTS:\n case GL_LINE_LOOP:\n return vertexCount;\n case GL_LINES:\n return vertexCount / 2;\n case GL_LINE_STRIP:\n return vertexCount - 1;\n case GL_TRIANGLES:\n return vertexCount / 3;\n case GL_TRIANGLE_STRIP:\n case GL_TRIANGLE_FAN:\n return vertexCount - 2;\n default:\n assert(false);\n return 0;\n }\n}\n\n// Counts the number of vertices after splitting the vertex stream into separate \"primitives\"\nexport function getVertexCount({drawMode, vertexCount}) {\n const primitiveCount = getPrimitiveCount({drawMode, vertexCount});\n switch (getPrimitiveDrawMode(drawMode)) {\n case GL_POINTS:\n return primitiveCount;\n case GL_LINES:\n return primitiveCount * 2;\n case GL_TRIANGLES:\n return primitiveCount * 3;\n default:\n assert(false);\n return 0;\n }\n}\n\n// Decomposes a composite type GL.VEC3 into a basic type (GL.FLOAT) and components (3)\nexport function decomposeCompositeGLType(compositeGLType) {\n const typeAndSize = COMPOSITE_GL_TYPES[compositeGLType];\n if (!typeAndSize) {\n return null;\n }\n const [type, components] = typeAndSize;\n return {type, components};\n}\n\nexport function getCompositeGLType(type, components) {\n switch (type) {\n case GL_BYTE:\n case GL_UNSIGNED_BYTE:\n case GL_SHORT:\n case GL_UNSIGNED_SHORT:\n type = GL_FLOAT;\n break;\n default:\n }\n\n for (const glType in COMPOSITE_GL_TYPES) {\n const [compType, compComponents, name] = COMPOSITE_GL_TYPES[glType];\n if (compType === type && compComponents === components) {\n return {glType, name};\n }\n }\n return null;\n}\n"],"mappings":"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"}
@@ -12,7 +12,7 @@ export function getKeyValue(gl, name) {
12
12
 
13
13
  name = name.replace(/^.*\./, '');
14
14
  const value = gl[name];
15
- assert(value !== undefined, `Accessing undefined constant GL.${name}`);
15
+ assert(value !== undefined, "Accessing undefined constant GL.".concat(name));
16
16
  return value;
17
17
  }
18
18
  export function getKey(gl, value) {
@@ -20,7 +20,7 @@ export function getKey(gl, value) {
20
20
 
21
21
  for (const key in gl) {
22
22
  if (gl[key] === value) {
23
- return `GL.${key}`;
23
+ return "GL.".concat(key);
24
24
  }
25
25
  }
26
26
 
@@ -32,7 +32,7 @@ export function getKeyType(gl, value) {
32
32
 
33
33
  for (const key in gl) {
34
34
  if (gl[key] === value) {
35
- return `GL.${key}`;
35
+ return "GL.".concat(key);
36
36
  }
37
37
  }
38
38