@luma.gl/webgl 9.0.0-alpha.16 → 9.0.0-alpha.17

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 (420) hide show
  1. package/dist/adapter/converters/device-parameters.d.ts.map +1 -1
  2. package/dist/adapter/converters/device-parameters.js +117 -200
  3. package/dist/adapter/converters/device-parameters.js.map +1 -0
  4. package/dist/adapter/converters/renderbuffer-formats.d.ts +1 -1
  5. package/dist/adapter/converters/renderbuffer-formats.d.ts.map +1 -1
  6. package/dist/adapter/converters/renderbuffer-formats.js +172 -62
  7. package/dist/adapter/converters/renderbuffer-formats.js.map +1 -0
  8. package/dist/adapter/converters/sampler-parameters.d.ts.map +1 -1
  9. package/dist/adapter/converters/sampler-parameters.js +151 -149
  10. package/dist/adapter/converters/sampler-parameters.js.map +1 -0
  11. package/dist/adapter/converters/texture-formats.d.ts +2 -2
  12. package/dist/adapter/converters/texture-formats.d.ts.map +1 -1
  13. package/dist/adapter/converters/texture-formats.js +847 -438
  14. package/dist/adapter/converters/texture-formats.js.map +1 -0
  15. package/dist/adapter/converters/vertex-formats.js +24 -15
  16. package/dist/adapter/converters/vertex-formats.js.map +1 -0
  17. package/dist/adapter/device-helpers/device-features.js +84 -120
  18. package/dist/adapter/device-helpers/device-features.js.map +1 -0
  19. package/dist/adapter/device-helpers/device-limits.d.ts +1 -1
  20. package/dist/adapter/device-helpers/device-limits.d.ts.map +1 -1
  21. package/dist/adapter/device-helpers/device-limits.js +83 -88
  22. package/dist/adapter/device-helpers/device-limits.js.map +1 -0
  23. package/dist/adapter/device-helpers/get-device-info.js +37 -42
  24. package/dist/adapter/device-helpers/get-device-info.js.map +1 -0
  25. package/dist/adapter/device-helpers/is-old-ie.js +8 -10
  26. package/dist/adapter/device-helpers/is-old-ie.js.map +1 -0
  27. package/dist/adapter/helpers/attribute-utils.js +57 -50
  28. package/dist/adapter/helpers/attribute-utils.js.map +1 -0
  29. package/dist/adapter/helpers/get-shader-info.d.ts +1 -1
  30. package/dist/adapter/helpers/get-shader-info.d.ts.map +1 -1
  31. package/dist/adapter/helpers/get-shader-info.js +19 -21
  32. package/dist/adapter/helpers/get-shader-info.js.map +1 -0
  33. package/dist/adapter/helpers/get-shader-layout.js +251 -310
  34. package/dist/adapter/helpers/get-shader-layout.js.map +1 -0
  35. package/dist/adapter/helpers/parse-shader-compiler-log.js +26 -32
  36. package/dist/adapter/helpers/parse-shader-compiler-log.js.map +1 -0
  37. package/dist/adapter/helpers/set-uniform.d.ts.map +1 -1
  38. package/dist/adapter/helpers/set-uniform.js +80 -67
  39. package/dist/adapter/helpers/set-uniform.js.map +1 -0
  40. package/dist/adapter/helpers/uniforms.js +75 -80
  41. package/dist/adapter/helpers/uniforms.js.map +1 -0
  42. package/dist/adapter/objects/constants-to-keys.js +26 -33
  43. package/dist/adapter/objects/constants-to-keys.js.map +1 -0
  44. package/dist/adapter/objects/webgl-renderbuffer.d.ts +1 -1
  45. package/dist/adapter/objects/webgl-renderbuffer.d.ts.map +1 -1
  46. package/dist/adapter/objects/webgl-renderbuffer.js +70 -67
  47. package/dist/adapter/objects/webgl-renderbuffer.js.map +1 -0
  48. package/dist/adapter/objects/webgl-resource.d.ts.map +1 -1
  49. package/dist/adapter/objects/webgl-resource.js +158 -213
  50. package/dist/adapter/objects/webgl-resource.js.map +1 -0
  51. package/dist/adapter/objects/webgl-vertex-array-object.d.ts +1 -1
  52. package/dist/adapter/objects/webgl-vertex-array-object.d.ts.map +1 -1
  53. package/dist/adapter/objects/webgl-vertex-array-object.js +66 -74
  54. package/dist/adapter/objects/webgl-vertex-array-object.js.map +1 -0
  55. package/dist/adapter/resources/webgl-buffer.d.ts.map +1 -1
  56. package/dist/adapter/resources/webgl-buffer.js +118 -150
  57. package/dist/adapter/resources/webgl-buffer.js.map +1 -0
  58. package/dist/adapter/resources/webgl-command-buffer.d.ts +5 -5
  59. package/dist/adapter/resources/webgl-command-buffer.d.ts.map +1 -1
  60. package/dist/adapter/resources/webgl-command-buffer.js +41 -40
  61. package/dist/adapter/resources/webgl-command-buffer.js.map +1 -0
  62. package/dist/adapter/resources/webgl-command-encoder.js +37 -26
  63. package/dist/adapter/resources/webgl-command-encoder.js.map +1 -0
  64. package/dist/adapter/resources/webgl-external-texture.js +1 -91
  65. package/dist/adapter/resources/webgl-external-texture.js.map +1 -0
  66. package/dist/adapter/resources/webgl-framebuffer.d.ts +2 -2
  67. package/dist/adapter/resources/webgl-framebuffer.d.ts.map +1 -1
  68. package/dist/adapter/resources/webgl-framebuffer.js +198 -231
  69. package/dist/adapter/resources/webgl-framebuffer.js.map +1 -0
  70. package/dist/adapter/resources/webgl-render-pass.js +11 -8
  71. package/dist/adapter/resources/webgl-render-pass.js.map +1 -0
  72. package/dist/adapter/resources/webgl-render-pipeline.d.ts.map +1 -1
  73. package/dist/adapter/resources/webgl-render-pipeline.js +289 -316
  74. package/dist/adapter/resources/webgl-render-pipeline.js.map +1 -0
  75. package/dist/adapter/resources/webgl-sampler.js +35 -42
  76. package/dist/adapter/resources/webgl-sampler.js.map +1 -0
  77. package/dist/adapter/resources/webgl-shader.d.ts.map +1 -1
  78. package/dist/adapter/resources/webgl-shader.js +53 -57
  79. package/dist/adapter/resources/webgl-shader.js.map +1 -0
  80. package/dist/adapter/resources/webgl-texture.d.ts +4 -4
  81. package/dist/adapter/resources/webgl-texture.d.ts.map +1 -1
  82. package/dist/adapter/resources/webgl-texture.js +697 -661
  83. package/dist/adapter/resources/webgl-texture.js.map +1 -0
  84. package/dist/adapter/webgl-canvas-context.d.ts.map +1 -1
  85. package/dist/adapter/webgl-canvas-context.js +35 -55
  86. package/dist/adapter/webgl-canvas-context.js.map +1 -0
  87. package/dist/adapter/webgl-device.d.ts +5 -0
  88. package/dist/adapter/webgl-device.d.ts.map +1 -1
  89. package/dist/adapter/webgl-device.js +270 -287
  90. package/dist/adapter/webgl-device.js.map +1 -0
  91. package/dist/classic/accessor.js +103 -120
  92. package/dist/classic/accessor.js.map +1 -0
  93. package/dist/classic/buffer.d.ts +1 -1
  94. package/dist/classic/buffer.d.ts.map +1 -1
  95. package/dist/classic/buffer.js +300 -325
  96. package/dist/classic/buffer.js.map +1 -0
  97. package/dist/classic/typed-array-utils.d.ts +1 -1
  98. package/dist/classic/typed-array-utils.d.ts.map +1 -1
  99. package/dist/classic/typed-array-utils.js +81 -91
  100. package/dist/classic/typed-array-utils.js.map +1 -0
  101. package/dist/context/context/create-browser-context.d.ts +3 -1
  102. package/dist/context/context/create-browser-context.d.ts.map +1 -1
  103. package/dist/context/context/create-browser-context.js +49 -66
  104. package/dist/context/context/create-browser-context.js.map +1 -0
  105. package/dist/context/context/create-headless-context.d.ts +1 -1
  106. package/dist/context/context/create-headless-context.d.ts.map +1 -1
  107. package/dist/context/context/create-headless-context.js +30 -24
  108. package/dist/context/context/create-headless-context.js.map +1 -0
  109. package/dist/context/context/webgl-checks.js +17 -25
  110. package/dist/context/context/webgl-checks.js.map +1 -0
  111. package/dist/context/debug/spector.d.ts +3 -1
  112. package/dist/context/debug/spector.d.ts.map +1 -1
  113. package/dist/context/debug/spector.js +50 -53
  114. package/dist/context/debug/spector.js.map +1 -0
  115. package/dist/context/debug/webgl-developer-tools.d.ts +1 -1
  116. package/dist/context/debug/webgl-developer-tools.d.ts.map +1 -1
  117. package/dist/context/debug/webgl-developer-tools.js +76 -107
  118. package/dist/context/debug/webgl-developer-tools.js.map +1 -0
  119. package/dist/context/parameters/unified-parameter-api.js +46 -93
  120. package/dist/context/parameters/unified-parameter-api.js.map +1 -0
  121. package/dist/context/parameters/webgl-parameter-tables.d.ts +1 -1
  122. package/dist/context/parameters/webgl-parameter-tables.d.ts.map +1 -1
  123. package/dist/context/parameters/webgl-parameter-tables.js +404 -462
  124. package/dist/context/parameters/webgl-parameter-tables.js.map +1 -0
  125. package/dist/context/polyfill/context-data.js +10 -16
  126. package/dist/context/polyfill/context-data.js.map +1 -0
  127. package/dist/context/polyfill/get-parameter-polyfill.js +71 -91
  128. package/dist/context/polyfill/get-parameter-polyfill.js.map +1 -0
  129. package/dist/context/polyfill/polyfill-context.js +73 -75
  130. package/dist/context/polyfill/polyfill-context.js.map +1 -0
  131. package/dist/context/polyfill/polyfill-table.d.ts.map +1 -1
  132. package/dist/context/polyfill/polyfill-table.js +116 -133
  133. package/dist/context/polyfill/polyfill-table.js.map +1 -0
  134. package/dist/context/polyfill/polyfill-vertex-array-object.d.ts.map +1 -1
  135. package/dist/context/polyfill/polyfill-vertex-array-object.js +227 -255
  136. package/dist/context/polyfill/polyfill-vertex-array-object.js.map +1 -0
  137. package/dist/context/state-tracker/deep-array-equal.js +14 -16
  138. package/dist/context/state-tracker/deep-array-equal.js.map +1 -0
  139. package/dist/context/state-tracker/track-context-state.d.ts.map +1 -1
  140. package/dist/context/state-tracker/track-context-state.js +127 -183
  141. package/dist/context/state-tracker/track-context-state.js.map +1 -0
  142. package/dist/context/state-tracker/with-parameters.d.ts.map +1 -1
  143. package/dist/context/state-tracker/with-parameters.js +29 -43
  144. package/dist/context/state-tracker/with-parameters.js.map +1 -0
  145. package/dist/dist.dev.js +9205 -0
  146. package/dist/index.cjs +5948 -0
  147. package/dist/index.d.ts +0 -2
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +25 -41
  150. package/dist/index.js.map +1 -0
  151. package/dist/types/webgl.d.ts +16 -16
  152. package/dist/types/webgl.d.ts.map +1 -1
  153. package/dist/types/webgl.js +1 -0
  154. package/dist/types/webgl.js.map +1 -0
  155. package/dist/types.d.ts +1 -1
  156. package/dist/types.d.ts.map +1 -1
  157. package/dist/types.js +1 -0
  158. package/dist/types.js.map +1 -0
  159. package/dist.min.js +36 -0
  160. package/package.json +18 -9
  161. package/src/.DS_Store +0 -0
  162. package/src/adapter/.DS_Store +0 -0
  163. package/src/adapter/converters/device-parameters.ts +5 -2
  164. package/src/adapter/converters/sampler-parameters.ts +4 -2
  165. package/src/adapter/converters/texture-formats.ts +3 -1
  166. package/src/adapter/device-helpers/get-device-info.ts +8 -8
  167. package/src/adapter/helpers/get-shader-info.ts +1 -1
  168. package/src/adapter/helpers/get-shader-layout.ts +4 -4
  169. package/src/adapter/helpers/parse-shader-compiler-log.ts +1 -1
  170. package/src/adapter/helpers/set-uniform.ts +2 -0
  171. package/src/adapter/objects/webgl-renderbuffer.ts +1 -1
  172. package/src/adapter/objects/webgl-resource.ts +1 -1
  173. package/src/adapter/objects/webgl-vertex-array-object.ts +1 -1
  174. package/src/adapter/resources/webgl-buffer.ts +5 -5
  175. package/src/adapter/resources/webgl-command-encoder.ts +1 -1
  176. package/src/adapter/resources/webgl-framebuffer.ts +3 -4
  177. package/src/adapter/resources/webgl-render-pipeline.ts +19 -20
  178. package/src/adapter/resources/webgl-shader.ts +1 -1
  179. package/src/adapter/resources/webgl-texture.ts +8 -9
  180. package/src/adapter/webgl-canvas-context.ts +2 -2
  181. package/src/adapter/webgl-device.ts +12 -2
  182. package/src/classic/accessor.ts +1 -1
  183. package/src/classic/buffer.ts +3 -3
  184. package/src/classic/typed-array-utils.ts +1 -1
  185. package/src/context/.DS_Store +0 -0
  186. package/src/context/context/create-browser-context.ts +4 -2
  187. package/src/context/context/create-headless-context.ts +2 -2
  188. package/src/context/debug/spector.ts +5 -4
  189. package/src/context/debug/webgl-developer-tools.ts +1 -0
  190. package/src/context/polyfill/polyfill-table.ts +1 -0
  191. package/src/context/polyfill/polyfill-vertex-array-object.ts +2 -0
  192. package/src/context/state-tracker/track-context-state.ts +6 -5
  193. package/src/context/state-tracker/with-parameters.ts +1 -1
  194. package/src/index.ts +1 -5
  195. package/src/types/webgl.ts +2 -0
  196. package/dist/bundle.d.ts +0 -2
  197. package/dist/bundle.d.ts.map +0 -1
  198. package/dist/bundle.js +0 -4
  199. package/dist/dist.min.js +0 -1
  200. package/dist/es5/adapter/converters/device-parameters.js +0 -139
  201. package/dist/es5/adapter/converters/device-parameters.js.map +0 -1
  202. package/dist/es5/adapter/converters/renderbuffer-formats.js +0 -151
  203. package/dist/es5/adapter/converters/renderbuffer-formats.js.map +0 -1
  204. package/dist/es5/adapter/converters/sampler-parameters.js +0 -182
  205. package/dist/es5/adapter/converters/sampler-parameters.js.map +0 -1
  206. package/dist/es5/adapter/converters/texture-formats.js +0 -950
  207. package/dist/es5/adapter/converters/texture-formats.js.map +0 -1
  208. package/dist/es5/adapter/converters/vertex-formats.js +0 -36
  209. package/dist/es5/adapter/converters/vertex-formats.js.map +0 -1
  210. package/dist/es5/adapter/device-helpers/device-features.js +0 -121
  211. package/dist/es5/adapter/device-helpers/device-features.js.map +0 -1
  212. package/dist/es5/adapter/device-helpers/device-limits.js +0 -54
  213. package/dist/es5/adapter/device-helpers/device-limits.js.map +0 -1
  214. package/dist/es5/adapter/device-helpers/get-device-info.js +0 -49
  215. package/dist/es5/adapter/device-helpers/get-device-info.js.map +0 -1
  216. package/dist/es5/adapter/device-helpers/is-old-ie.js +0 -15
  217. package/dist/es5/adapter/device-helpers/is-old-ie.js.map +0 -1
  218. package/dist/es5/adapter/helpers/attribute-utils.js +0 -69
  219. package/dist/es5/adapter/helpers/attribute-utils.js.map +0 -1
  220. package/dist/es5/adapter/helpers/get-shader-info.js +0 -31
  221. package/dist/es5/adapter/helpers/get-shader-info.js.map +0 -1
  222. package/dist/es5/adapter/helpers/get-shader-layout.js +0 -311
  223. package/dist/es5/adapter/helpers/get-shader-layout.js.map +0 -1
  224. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js +0 -54
  225. package/dist/es5/adapter/helpers/parse-shader-compiler-log.js.map +0 -1
  226. package/dist/es5/adapter/helpers/set-uniform.js +0 -92
  227. package/dist/es5/adapter/helpers/set-uniform.js.map +0 -1
  228. package/dist/es5/adapter/helpers/uniforms.js +0 -88
  229. package/dist/es5/adapter/helpers/uniforms.js.map +0 -1
  230. package/dist/es5/adapter/objects/constants-to-keys.js +0 -43
  231. package/dist/es5/adapter/objects/constants-to-keys.js.map +0 -1
  232. package/dist/es5/adapter/objects/webgl-renderbuffer.js +0 -122
  233. package/dist/es5/adapter/objects/webgl-renderbuffer.js.map +0 -1
  234. package/dist/es5/adapter/objects/webgl-resource.js +0 -233
  235. package/dist/es5/adapter/objects/webgl-resource.js.map +0 -1
  236. package/dist/es5/adapter/objects/webgl-vertex-array-object.js +0 -109
  237. package/dist/es5/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  238. package/dist/es5/adapter/resources/webgl-buffer.js +0 -196
  239. package/dist/es5/adapter/resources/webgl-buffer.js.map +0 -1
  240. package/dist/es5/adapter/resources/webgl-command-buffer.js +0 -70
  241. package/dist/es5/adapter/resources/webgl-command-buffer.js.map +0 -1
  242. package/dist/es5/adapter/resources/webgl-command-encoder.js +0 -80
  243. package/dist/es5/adapter/resources/webgl-command-encoder.js.map +0 -1
  244. package/dist/es5/adapter/resources/webgl-external-texture.js +0 -2
  245. package/dist/es5/adapter/resources/webgl-external-texture.js.map +0 -1
  246. package/dist/es5/adapter/resources/webgl-framebuffer.js +0 -275
  247. package/dist/es5/adapter/resources/webgl-framebuffer.js.map +0 -1
  248. package/dist/es5/adapter/resources/webgl-render-pass.js +0 -45
  249. package/dist/es5/adapter/resources/webgl-render-pass.js.map +0 -1
  250. package/dist/es5/adapter/resources/webgl-render-pipeline.js +0 -385
  251. package/dist/es5/adapter/resources/webgl-render-pipeline.js.map +0 -1
  252. package/dist/es5/adapter/resources/webgl-sampler.js +0 -75
  253. package/dist/es5/adapter/resources/webgl-sampler.js.map +0 -1
  254. package/dist/es5/adapter/resources/webgl-shader.js +0 -111
  255. package/dist/es5/adapter/resources/webgl-shader.js.map +0 -1
  256. package/dist/es5/adapter/resources/webgl-texture.js +0 -826
  257. package/dist/es5/adapter/resources/webgl-texture.js.map +0 -1
  258. package/dist/es5/adapter/webgl-canvas-context.js +0 -72
  259. package/dist/es5/adapter/webgl-canvas-context.js.map +0 -1
  260. package/dist/es5/adapter/webgl-device.js +0 -387
  261. package/dist/es5/adapter/webgl-device.js.map +0 -1
  262. package/dist/es5/bundle.js +0 -6
  263. package/dist/es5/bundle.js.map +0 -1
  264. package/dist/es5/classic/accessor.js +0 -151
  265. package/dist/es5/classic/accessor.js.map +0 -1
  266. package/dist/es5/classic/buffer.js +0 -398
  267. package/dist/es5/classic/buffer.js.map +0 -1
  268. package/dist/es5/classic/typed-array-utils.js +0 -99
  269. package/dist/es5/classic/typed-array-utils.js.map +0 -1
  270. package/dist/es5/context/context/create-browser-context.js +0 -66
  271. package/dist/es5/context/context/create-browser-context.js.map +0 -1
  272. package/dist/es5/context/context/create-headless-context.js +0 -47
  273. package/dist/es5/context/context/create-headless-context.js.map +0 -1
  274. package/dist/es5/context/context/webgl-checks.js +0 -44
  275. package/dist/es5/context/context/webgl-checks.js.map +0 -1
  276. package/dist/es5/context/debug/spector.js +0 -99
  277. package/dist/es5/context/debug/spector.js.map +0 -1
  278. package/dist/es5/context/debug/webgl-developer-tools.js +0 -146
  279. package/dist/es5/context/debug/webgl-developer-tools.js.map +0 -1
  280. package/dist/es5/context/parameters/unified-parameter-api.js +0 -76
  281. package/dist/es5/context/parameters/unified-parameter-api.js.map +0 -1
  282. package/dist/es5/context/parameters/webgl-parameter-tables.js +0 -346
  283. package/dist/es5/context/parameters/webgl-parameter-tables.js.map +0 -1
  284. package/dist/es5/context/polyfill/context-data.js +0 -18
  285. package/dist/es5/context/polyfill/context-data.js.map +0 -1
  286. package/dist/es5/context/polyfill/get-parameter-polyfill.js +0 -69
  287. package/dist/es5/context/polyfill/get-parameter-polyfill.js.map +0 -1
  288. package/dist/es5/context/polyfill/polyfill-context.js +0 -109
  289. package/dist/es5/context/polyfill/polyfill-context.js.map +0 -1
  290. package/dist/es5/context/polyfill/polyfill-table.js +0 -143
  291. package/dist/es5/context/polyfill/polyfill-table.js.map +0 -1
  292. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js +0 -271
  293. package/dist/es5/context/polyfill/polyfill-vertex-array-object.js.map +0 -1
  294. package/dist/es5/context/state-tracker/deep-array-equal.js +0 -23
  295. package/dist/es5/context/state-tracker/deep-array-equal.js.map +0 -1
  296. package/dist/es5/context/state-tracker/track-context-state.js +0 -167
  297. package/dist/es5/context/state-tracker/track-context-state.js.map +0 -1
  298. package/dist/es5/context/state-tracker/with-parameters.js +0 -40
  299. package/dist/es5/context/state-tracker/with-parameters.js.map +0 -1
  300. package/dist/es5/index.js +0 -249
  301. package/dist/es5/index.js.map +0 -1
  302. package/dist/es5/init.js +0 -7
  303. package/dist/es5/init.js.map +0 -1
  304. package/dist/es5/types/webgl.js +0 -5
  305. package/dist/es5/types/webgl.js.map +0 -1
  306. package/dist/es5/types.js +0 -2
  307. package/dist/es5/types.js.map +0 -1
  308. package/dist/esm/adapter/converters/device-parameters.js +0 -137
  309. package/dist/esm/adapter/converters/device-parameters.js.map +0 -1
  310. package/dist/esm/adapter/converters/renderbuffer-formats.js +0 -181
  311. package/dist/esm/adapter/converters/renderbuffer-formats.js.map +0 -1
  312. package/dist/esm/adapter/converters/sampler-parameters.js +0 -172
  313. package/dist/esm/adapter/converters/sampler-parameters.js.map +0 -1
  314. package/dist/esm/adapter/converters/texture-formats.js +0 -901
  315. package/dist/esm/adapter/converters/texture-formats.js.map +0 -1
  316. package/dist/esm/adapter/converters/vertex-formats.js +0 -29
  317. package/dist/esm/adapter/converters/vertex-formats.js.map +0 -1
  318. package/dist/esm/adapter/device-helpers/device-features.js +0 -95
  319. package/dist/esm/adapter/device-helpers/device-features.js.map +0 -1
  320. package/dist/esm/adapter/device-helpers/device-limits.js +0 -88
  321. package/dist/esm/adapter/device-helpers/device-limits.js.map +0 -1
  322. package/dist/esm/adapter/device-helpers/get-device-info.js +0 -42
  323. package/dist/esm/adapter/device-helpers/get-device-info.js.map +0 -1
  324. package/dist/esm/adapter/device-helpers/is-old-ie.js +0 -9
  325. package/dist/esm/adapter/device-helpers/is-old-ie.js.map +0 -1
  326. package/dist/esm/adapter/helpers/attribute-utils.js +0 -64
  327. package/dist/esm/adapter/helpers/attribute-utils.js.map +0 -1
  328. package/dist/esm/adapter/helpers/get-shader-info.js +0 -25
  329. package/dist/esm/adapter/helpers/get-shader-info.js.map +0 -1
  330. package/dist/esm/adapter/helpers/get-shader-layout.js +0 -282
  331. package/dist/esm/adapter/helpers/get-shader-layout.js.map +0 -1
  332. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js +0 -30
  333. package/dist/esm/adapter/helpers/parse-shader-compiler-log.js.map +0 -1
  334. package/dist/esm/adapter/helpers/set-uniform.js +0 -85
  335. package/dist/esm/adapter/helpers/set-uniform.js.map +0 -1
  336. package/dist/esm/adapter/helpers/uniforms.js +0 -89
  337. package/dist/esm/adapter/helpers/uniforms.js.map +0 -1
  338. package/dist/esm/adapter/objects/constants-to-keys.js +0 -35
  339. package/dist/esm/adapter/objects/constants-to-keys.js.map +0 -1
  340. package/dist/esm/adapter/objects/webgl-renderbuffer.js +0 -78
  341. package/dist/esm/adapter/objects/webgl-renderbuffer.js.map +0 -1
  342. package/dist/esm/adapter/objects/webgl-resource.js +0 -163
  343. package/dist/esm/adapter/objects/webgl-resource.js.map +0 -1
  344. package/dist/esm/adapter/objects/webgl-vertex-array-object.js +0 -74
  345. package/dist/esm/adapter/objects/webgl-vertex-array-object.js.map +0 -1
  346. package/dist/esm/adapter/resources/webgl-buffer.js +0 -134
  347. package/dist/esm/adapter/resources/webgl-buffer.js.map +0 -1
  348. package/dist/esm/adapter/resources/webgl-command-buffer.js +0 -50
  349. package/dist/esm/adapter/resources/webgl-command-buffer.js.map +0 -1
  350. package/dist/esm/adapter/resources/webgl-command-encoder.js +0 -41
  351. package/dist/esm/adapter/resources/webgl-command-encoder.js.map +0 -1
  352. package/dist/esm/adapter/resources/webgl-external-texture.js +0 -2
  353. package/dist/esm/adapter/resources/webgl-external-texture.js.map +0 -1
  354. package/dist/esm/adapter/resources/webgl-framebuffer.js +0 -207
  355. package/dist/esm/adapter/resources/webgl-framebuffer.js.map +0 -1
  356. package/dist/esm/adapter/resources/webgl-render-pass.js +0 -14
  357. package/dist/esm/adapter/resources/webgl-render-pass.js.map +0 -1
  358. package/dist/esm/adapter/resources/webgl-render-pipeline.js +0 -311
  359. package/dist/esm/adapter/resources/webgl-render-pipeline.js.map +0 -1
  360. package/dist/esm/adapter/resources/webgl-sampler.js +0 -42
  361. package/dist/esm/adapter/resources/webgl-sampler.js.map +0 -1
  362. package/dist/esm/adapter/resources/webgl-shader.js +0 -62
  363. package/dist/esm/adapter/resources/webgl-shader.js.map +0 -1
  364. package/dist/esm/adapter/resources/webgl-texture.js +0 -714
  365. package/dist/esm/adapter/resources/webgl-texture.js.map +0 -1
  366. package/dist/esm/adapter/webgl-canvas-context.js +0 -41
  367. package/dist/esm/adapter/webgl-canvas-context.js.map +0 -1
  368. package/dist/esm/adapter/webgl-device.js +0 -276
  369. package/dist/esm/adapter/webgl-device.js.map +0 -1
  370. package/dist/esm/bundle.js +0 -4
  371. package/dist/esm/bundle.js.map +0 -1
  372. package/dist/esm/classic/accessor.js +0 -120
  373. package/dist/esm/classic/accessor.js.map +0 -1
  374. package/dist/esm/classic/buffer.js +0 -327
  375. package/dist/esm/classic/buffer.js.map +0 -1
  376. package/dist/esm/classic/typed-array-utils.js +0 -92
  377. package/dist/esm/classic/typed-array-utils.js.map +0 -1
  378. package/dist/esm/context/context/create-browser-context.js +0 -53
  379. package/dist/esm/context/context/create-browser-context.js.map +0 -1
  380. package/dist/esm/context/context/create-headless-context.js +0 -39
  381. package/dist/esm/context/context/create-headless-context.js.map +0 -1
  382. package/dist/esm/context/context/webgl-checks.js +0 -31
  383. package/dist/esm/context/context/webgl-checks.js.map +0 -1
  384. package/dist/esm/context/debug/spector.js +0 -64
  385. package/dist/esm/context/debug/spector.js.map +0 -1
  386. package/dist/esm/context/debug/webgl-developer-tools.js +0 -97
  387. package/dist/esm/context/debug/webgl-developer-tools.js.map +0 -1
  388. package/dist/esm/context/parameters/unified-parameter-api.js +0 -55
  389. package/dist/esm/context/parameters/unified-parameter-api.js.map +0 -1
  390. package/dist/esm/context/parameters/webgl-parameter-tables.js +0 -427
  391. package/dist/esm/context/parameters/webgl-parameter-tables.js.map +0 -1
  392. package/dist/esm/context/polyfill/context-data.js +0 -12
  393. package/dist/esm/context/polyfill/context-data.js.map +0 -1
  394. package/dist/esm/context/polyfill/get-parameter-polyfill.js +0 -86
  395. package/dist/esm/context/polyfill/get-parameter-polyfill.js.map +0 -1
  396. package/dist/esm/context/polyfill/polyfill-context.js +0 -84
  397. package/dist/esm/context/polyfill/polyfill-context.js.map +0 -1
  398. package/dist/esm/context/polyfill/polyfill-table.js +0 -138
  399. package/dist/esm/context/polyfill/polyfill-table.js.map +0 -1
  400. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js +0 -265
  401. package/dist/esm/context/polyfill/polyfill-vertex-array-object.js.map +0 -1
  402. package/dist/esm/context/state-tracker/deep-array-equal.js +0 -17
  403. package/dist/esm/context/state-tracker/deep-array-equal.js.map +0 -1
  404. package/dist/esm/context/state-tracker/track-context-state.js +0 -148
  405. package/dist/esm/context/state-tracker/track-context-state.js.map +0 -1
  406. package/dist/esm/context/state-tracker/with-parameters.js +0 -34
  407. package/dist/esm/context/state-tracker/with-parameters.js.map +0 -1
  408. package/dist/esm/index.js +0 -27
  409. package/dist/esm/index.js.map +0 -1
  410. package/dist/esm/init.js +0 -4
  411. package/dist/esm/init.js.map +0 -1
  412. package/dist/esm/types/webgl.js +0 -2
  413. package/dist/esm/types/webgl.js.map +0 -1
  414. package/dist/esm/types.js +0 -2
  415. package/dist/esm/types.js.map +0 -1
  416. package/dist/init.d.ts +0 -2
  417. package/dist/init.d.ts.map +0 -1
  418. package/dist/init.js +0 -3
  419. package/src/bundle.ts +0 -4
  420. package/src/init.ts +0 -4
@@ -1,293 +1,265 @@
1
- /*
2
- ** Copyright (c) 2015 The Khronos Group Inc.
3
- **
4
- ** Permission is hereby granted, free of charge, to any person obtaining a
5
- ** copy of this software and/or associated documentation files (the
6
- ** "Materials"), to deal in the Materials without restriction, including
7
- ** without limitation the rights to use, copy, modify, merge, publish,
8
- ** distribute, sublicense, and/or sell copies of the Materials, and to
9
- ** permit persons to whom the Materials are furnished to do so, subject to
10
- ** the following conditions:
11
- **
12
- ** The above copyright notice and this permission notice shall be included
13
- ** in all copies or substantial portions of the Materials.
14
- **
15
- ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16
- ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17
- ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
18
- ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
19
- ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
20
- ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
21
- ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
22
- */
23
- // Modified to use ES6 and polyfill a provided context rather than
24
- // the global class.
25
- // @ts-nocheck external code
26
1
  const glErrorShadow = {};
27
2
  function error(msg) {
28
- if (globalThis.console && globalThis.console.error) {
29
- globalThis.console.error(msg);
30
- }
3
+ if (globalThis.console && globalThis.console.error) {
4
+ globalThis.console.error(msg);
5
+ }
31
6
  }
32
7
  function log(msg) {
33
- if (globalThis.console && globalThis.console.log) {
34
- globalThis.console.log(msg);
35
- }
8
+ if (globalThis.console && globalThis.console.log) {
9
+ globalThis.console.log(msg);
10
+ }
36
11
  }
37
12
  function synthesizeGLError(err, opt_msg) {
38
- glErrorShadow[err] = true;
39
- if (opt_msg !== undefined) {
40
- error(opt_msg);
41
- }
13
+ glErrorShadow[err] = true;
14
+ if (opt_msg !== undefined) {
15
+ error(opt_msg);
16
+ }
42
17
  }
43
18
  function wrapGLError(gl) {
44
- const f = gl.getError;
45
- gl.getError = function getError() {
46
- let err;
47
- do {
48
- err = f.apply(gl);
49
- if (err !== gl.NO_ERROR) {
50
- glErrorShadow[err] = true;
51
- }
52
- } while (err !== gl.NO_ERROR);
53
- for (err in glErrorShadow) {
54
- if (glErrorShadow[err]) {
55
- delete glErrorShadow[err];
56
- return parseInt(err, 10);
57
- }
58
- }
59
- return gl.NO_ERROR;
60
- };
19
+ const f = gl.getError;
20
+ gl.getError = function getError() {
21
+ let err;
22
+ do {
23
+ err = f.apply(gl);
24
+ if (err !== gl.NO_ERROR) {
25
+ glErrorShadow[err] = true;
26
+ }
27
+ } while (err !== gl.NO_ERROR);
28
+ for (err in glErrorShadow) {
29
+ if (glErrorShadow[err]) {
30
+ delete glErrorShadow[err];
31
+ return parseInt(err, 10);
32
+ }
33
+ }
34
+ return gl.NO_ERROR;
35
+ };
61
36
  }
62
37
  const WebGLVertexArrayObjectOES = function WebGLVertexArrayObjectOES(ext) {
63
- const gl = ext.gl;
64
- this.ext = ext;
65
- this.isAlive = true;
66
- this.hasBeenBound = false;
67
- this.elementArrayBuffer = null;
68
- this.attribs = new Array(ext.maxVertexAttribs);
69
- for (let n = 0; n < this.attribs.length; n++) {
70
- const attrib = new WebGLVertexArrayObjectOES.VertexAttrib(gl);
71
- this.attribs[n] = attrib;
72
- }
73
- this.maxAttrib = 0;
38
+ const gl = ext.gl;
39
+ this.ext = ext;
40
+ this.isAlive = true;
41
+ this.hasBeenBound = false;
42
+ this.elementArrayBuffer = null;
43
+ this.attribs = new Array(ext.maxVertexAttribs);
44
+ for (let n = 0; n < this.attribs.length; n++) {
45
+ const attrib = new WebGLVertexArrayObjectOES.VertexAttrib(gl);
46
+ this.attribs[n] = attrib;
47
+ }
48
+ this.maxAttrib = 0;
74
49
  };
75
50
  WebGLVertexArrayObjectOES.VertexAttrib = function VertexAttrib(gl) {
76
- this.enabled = false;
77
- this.buffer = null;
78
- this.size = 4;
79
- this.type = gl.FLOAT;
80
- this.normalized = false;
81
- this.stride = 16;
82
- this.offset = 0;
83
- this.cached = '';
84
- this.recache();
51
+ this.enabled = false;
52
+ this.buffer = null;
53
+ this.size = 4;
54
+ this.type = gl.FLOAT;
55
+ this.normalized = false;
56
+ this.stride = 16;
57
+ this.offset = 0;
58
+ this.cached = '';
59
+ this.recache();
85
60
  };
86
61
  WebGLVertexArrayObjectOES.VertexAttrib.prototype.recache = function recache() {
87
- this.cached = [this.size, this.type, this.normalized, this.stride, this.offset].join(':');
62
+ this.cached = [this.size, this.type, this.normalized, this.stride, this.offset].join(':');
88
63
  };
89
64
  const OESVertexArrayObject = function OESVertexArrayObject(gl) {
90
- const self = this;
91
- this.gl = gl;
92
- wrapGLError(gl);
93
- const original = (this.original = {
94
- getParameter: gl.getParameter,
95
- enableVertexAttribArray: gl.enableVertexAttribArray,
96
- disableVertexAttribArray: gl.disableVertexAttribArray,
97
- bindBuffer: gl.bindBuffer,
98
- getVertexAttrib: gl.getVertexAttrib,
99
- vertexAttribPointer: gl.vertexAttribPointer
100
- });
101
- gl.getParameter = function getParameter(pname) {
102
- if (pname === self.VERTEX_ARRAY_BINDING_OES) {
103
- if (self.currentVertexArrayObject === self.defaultVertexArrayObject) {
104
- return null;
105
- }
106
- return self.currentVertexArrayObject;
107
- }
108
- return original.getParameter.apply(this, arguments);
109
- };
110
- gl.enableVertexAttribArray = function enableVertexAttribArray(index) {
111
- const vao = self.currentVertexArrayObject;
112
- vao.maxAttrib = Math.max(vao.maxAttrib, index);
113
- const attrib = vao.attribs[index];
114
- attrib.enabled = true;
115
- return original.enableVertexAttribArray.apply(this, arguments);
116
- };
117
- gl.disableVertexAttribArray = function disableVertexAttribArray(index) {
118
- const vao = self.currentVertexArrayObject;
119
- vao.maxAttrib = Math.max(vao.maxAttrib, index);
120
- const attrib = vao.attribs[index];
121
- attrib.enabled = false;
122
- return original.disableVertexAttribArray.apply(this, arguments);
123
- };
124
- gl.bindBuffer = function bindBuffer(target, buffer) {
125
- switch (target) {
126
- case gl.ARRAY_BUFFER:
127
- self.currentArrayBuffer = buffer;
128
- break;
129
- case gl.ELEMENT_ARRAY_BUFFER:
130
- self.currentVertexArrayObject.elementArrayBuffer = buffer;
131
- break;
132
- default:
133
- }
134
- return original.bindBuffer.apply(this, arguments);
135
- };
136
- gl.getVertexAttrib = function getVertexAttrib(index, pname) {
137
- const vao = self.currentVertexArrayObject;
138
- const attrib = vao.attribs[index];
139
- switch (pname) {
140
- case gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:
141
- return attrib.buffer;
142
- case gl.VERTEX_ATTRIB_ARRAY_ENABLED:
143
- return attrib.enabled;
144
- case gl.VERTEX_ATTRIB_ARRAY_SIZE:
145
- return attrib.size;
146
- case gl.VERTEX_ATTRIB_ARRAY_STRIDE:
147
- return attrib.stride;
148
- case gl.VERTEX_ATTRIB_ARRAY_TYPE:
149
- return attrib.type;
150
- case gl.VERTEX_ATTRIB_ARRAY_NORMALIZED:
151
- return attrib.normalized;
152
- default:
153
- return original.getVertexAttrib.apply(this, arguments);
154
- }
155
- };
156
- // eslint-disable-next-line max-params
157
- gl.vertexAttribPointer = function vertexAttribPointer(indx, size, type, normalized, stride, offset) {
158
- const vao = self.currentVertexArrayObject;
159
- vao.maxAttrib = Math.max(vao.maxAttrib, indx);
160
- const attrib = vao.attribs[indx];
161
- attrib.buffer = self.currentArrayBuffer;
162
- attrib.size = size;
163
- attrib.type = type;
164
- attrib.normalized = normalized;
165
- attrib.stride = stride;
166
- attrib.offset = offset;
167
- attrib.recache();
168
- return original.vertexAttribPointer.apply(this, arguments);
169
- };
170
- if (gl.instrumentExtension) {
171
- gl.instrumentExtension(this, 'OES_vertex_array_object');
65
+ const self = this;
66
+ this.gl = gl;
67
+ wrapGLError(gl);
68
+ const original = this.original = {
69
+ getParameter: gl.getParameter,
70
+ enableVertexAttribArray: gl.enableVertexAttribArray,
71
+ disableVertexAttribArray: gl.disableVertexAttribArray,
72
+ bindBuffer: gl.bindBuffer,
73
+ getVertexAttrib: gl.getVertexAttrib,
74
+ vertexAttribPointer: gl.vertexAttribPointer
75
+ };
76
+ gl.getParameter = function getParameter(pname) {
77
+ if (pname === self.VERTEX_ARRAY_BINDING_OES) {
78
+ if (self.currentVertexArrayObject === self.defaultVertexArrayObject) {
79
+ return null;
80
+ }
81
+ return self.currentVertexArrayObject;
82
+ }
83
+ return original.getParameter.apply(this, arguments);
84
+ };
85
+ gl.enableVertexAttribArray = function enableVertexAttribArray(index) {
86
+ const vao = self.currentVertexArrayObject;
87
+ vao.maxAttrib = Math.max(vao.maxAttrib, index);
88
+ const attrib = vao.attribs[index];
89
+ attrib.enabled = true;
90
+ return original.enableVertexAttribArray.apply(this, arguments);
91
+ };
92
+ gl.disableVertexAttribArray = function disableVertexAttribArray(index) {
93
+ const vao = self.currentVertexArrayObject;
94
+ vao.maxAttrib = Math.max(vao.maxAttrib, index);
95
+ const attrib = vao.attribs[index];
96
+ attrib.enabled = false;
97
+ return original.disableVertexAttribArray.apply(this, arguments);
98
+ };
99
+ gl.bindBuffer = function bindBuffer(target, buffer) {
100
+ switch (target) {
101
+ case gl.ARRAY_BUFFER:
102
+ self.currentArrayBuffer = buffer;
103
+ break;
104
+ case gl.ELEMENT_ARRAY_BUFFER:
105
+ self.currentVertexArrayObject.elementArrayBuffer = buffer;
106
+ break;
107
+ default:
172
108
  }
173
- // undefined for headless gl
174
- if (gl.canvas) {
175
- gl.canvas.addEventListener('webglcontextrestored', () => {
176
- log('OESVertexArrayObject emulation library context restored');
177
- self.reset_();
178
- }, true);
109
+ return original.bindBuffer.apply(this, arguments);
110
+ };
111
+ gl.getVertexAttrib = function getVertexAttrib(index, pname) {
112
+ const vao = self.currentVertexArrayObject;
113
+ const attrib = vao.attribs[index];
114
+ switch (pname) {
115
+ case gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:
116
+ return attrib.buffer;
117
+ case gl.VERTEX_ATTRIB_ARRAY_ENABLED:
118
+ return attrib.enabled;
119
+ case gl.VERTEX_ATTRIB_ARRAY_SIZE:
120
+ return attrib.size;
121
+ case gl.VERTEX_ATTRIB_ARRAY_STRIDE:
122
+ return attrib.stride;
123
+ case gl.VERTEX_ATTRIB_ARRAY_TYPE:
124
+ return attrib.type;
125
+ case gl.VERTEX_ATTRIB_ARRAY_NORMALIZED:
126
+ return attrib.normalized;
127
+ default:
128
+ return original.getVertexAttrib.apply(this, arguments);
179
129
  }
180
- this.reset_();
130
+ };
131
+ gl.vertexAttribPointer = function vertexAttribPointer(indx, size, type, normalized, stride, offset) {
132
+ const vao = self.currentVertexArrayObject;
133
+ vao.maxAttrib = Math.max(vao.maxAttrib, indx);
134
+ const attrib = vao.attribs[indx];
135
+ attrib.buffer = self.currentArrayBuffer;
136
+ attrib.size = size;
137
+ attrib.type = type;
138
+ attrib.normalized = normalized;
139
+ attrib.stride = stride;
140
+ attrib.offset = offset;
141
+ attrib.recache();
142
+ return original.vertexAttribPointer.apply(this, arguments);
143
+ };
144
+ if (gl.instrumentExtension) {
145
+ gl.instrumentExtension(this, 'OES_vertex_array_object');
146
+ }
147
+ if (gl.canvas) {
148
+ gl.canvas.addEventListener('webglcontextrestored', () => {
149
+ log('OESVertexArrayObject emulation library context restored');
150
+ self.reset_();
151
+ }, true);
152
+ }
153
+ this.reset_();
181
154
  };
182
155
  OESVertexArrayObject.prototype.VERTEX_ARRAY_BINDING_OES = 0x85b5;
183
156
  OESVertexArrayObject.prototype.reset_ = function reset_() {
184
- const contextWasLost = this.vertexArrayObjects !== undefined;
185
- if (contextWasLost) {
186
- for (let ii = 0; ii < this.vertexArrayObjects.length; ++ii) {
187
- this.vertexArrayObjects.isAlive = false;
188
- }
157
+ const contextWasLost = this.vertexArrayObjects !== undefined;
158
+ if (contextWasLost) {
159
+ for (let ii = 0; ii < this.vertexArrayObjects.length; ++ii) {
160
+ this.vertexArrayObjects.isAlive = false;
189
161
  }
190
- const gl = this.gl;
191
- this.maxVertexAttribs = gl.getParameter(gl.MAX_VERTEX_ATTRIBS);
192
- this.defaultVertexArrayObject = new WebGLVertexArrayObjectOES(this);
193
- this.currentVertexArrayObject = null;
194
- this.currentArrayBuffer = null;
195
- this.vertexArrayObjects = [this.defaultVertexArrayObject];
196
- this.bindVertexArrayOES(null);
162
+ }
163
+ const gl = this.gl;
164
+ this.maxVertexAttribs = gl.getParameter(gl.MAX_VERTEX_ATTRIBS);
165
+ this.defaultVertexArrayObject = new WebGLVertexArrayObjectOES(this);
166
+ this.currentVertexArrayObject = null;
167
+ this.currentArrayBuffer = null;
168
+ this.vertexArrayObjects = [this.defaultVertexArrayObject];
169
+ this.bindVertexArrayOES(null);
197
170
  };
198
171
  OESVertexArrayObject.prototype.createVertexArrayOES = function createVertexArrayOES() {
199
- const arrayObject = new WebGLVertexArrayObjectOES(this);
200
- this.vertexArrayObjects.push(arrayObject);
201
- return arrayObject;
172
+ const arrayObject = new WebGLVertexArrayObjectOES(this);
173
+ this.vertexArrayObjects.push(arrayObject);
174
+ return arrayObject;
202
175
  };
203
176
  OESVertexArrayObject.prototype.deleteVertexArrayOES = function deleteVertexArrayOES(arrayObject) {
204
- arrayObject.isAlive = false;
205
- this.vertexArrayObjects.splice(this.vertexArrayObjects.indexOf(arrayObject), 1);
206
- if (this.currentVertexArrayObject === arrayObject) {
207
- this.bindVertexArrayOES(null);
208
- }
177
+ arrayObject.isAlive = false;
178
+ this.vertexArrayObjects.splice(this.vertexArrayObjects.indexOf(arrayObject), 1);
179
+ if (this.currentVertexArrayObject === arrayObject) {
180
+ this.bindVertexArrayOES(null);
181
+ }
209
182
  };
210
183
  OESVertexArrayObject.prototype.isVertexArrayOES = function isVertexArrayOES(arrayObject) {
211
- if (arrayObject && arrayObject instanceof WebGLVertexArrayObjectOES) {
212
- if (arrayObject.hasBeenBound && arrayObject.ext === this) {
213
- return true;
214
- }
184
+ if (arrayObject && arrayObject instanceof WebGLVertexArrayObjectOES) {
185
+ if (arrayObject.hasBeenBound && arrayObject.ext === this) {
186
+ return true;
215
187
  }
216
- return false;
188
+ }
189
+ return false;
217
190
  };
218
191
  OESVertexArrayObject.prototype.bindVertexArrayOES = function bindVertexArrayOES(arrayObject) {
219
- const gl = this.gl;
220
- if (arrayObject && !arrayObject.isAlive) {
221
- synthesizeGLError(gl.INVALID_OPERATION, 'bindVertexArrayOES: attempt to bind deleted arrayObject');
222
- return;
223
- }
224
- const original = this.original;
225
- const oldVAO = this.currentVertexArrayObject;
226
- this.currentVertexArrayObject = arrayObject || this.defaultVertexArrayObject;
227
- this.currentVertexArrayObject.hasBeenBound = true;
228
- const newVAO = this.currentVertexArrayObject;
229
- if (oldVAO === newVAO) {
230
- return;
231
- }
232
- if (!oldVAO || newVAO.elementArrayBuffer !== oldVAO.elementArrayBuffer) {
233
- original.bindBuffer.call(gl, gl.ELEMENT_ARRAY_BUFFER, newVAO.elementArrayBuffer);
192
+ const gl = this.gl;
193
+ if (arrayObject && !arrayObject.isAlive) {
194
+ synthesizeGLError(gl.INVALID_OPERATION, 'bindVertexArrayOES: attempt to bind deleted arrayObject');
195
+ return;
196
+ }
197
+ const original = this.original;
198
+ const oldVAO = this.currentVertexArrayObject;
199
+ this.currentVertexArrayObject = arrayObject || this.defaultVertexArrayObject;
200
+ this.currentVertexArrayObject.hasBeenBound = true;
201
+ const newVAO = this.currentVertexArrayObject;
202
+ if (oldVAO === newVAO) {
203
+ return;
204
+ }
205
+ if (!oldVAO || newVAO.elementArrayBuffer !== oldVAO.elementArrayBuffer) {
206
+ original.bindBuffer.call(gl, gl.ELEMENT_ARRAY_BUFFER, newVAO.elementArrayBuffer);
207
+ }
208
+ let currentBinding = this.currentArrayBuffer;
209
+ const maxAttrib = Math.max(oldVAO ? oldVAO.maxAttrib : 0, newVAO.maxAttrib);
210
+ for (let n = 0; n <= maxAttrib; n++) {
211
+ const attrib = newVAO.attribs[n];
212
+ const oldAttrib = oldVAO ? oldVAO.attribs[n] : null;
213
+ if (!oldVAO || attrib.enabled !== oldAttrib.enabled) {
214
+ if (attrib.enabled) {
215
+ original.enableVertexAttribArray.call(gl, n);
216
+ } else {
217
+ original.disableVertexAttribArray.call(gl, n);
218
+ }
234
219
  }
235
- let currentBinding = this.currentArrayBuffer;
236
- const maxAttrib = Math.max(oldVAO ? oldVAO.maxAttrib : 0, newVAO.maxAttrib);
237
- for (let n = 0; n <= maxAttrib; n++) {
238
- const attrib = newVAO.attribs[n];
239
- const oldAttrib = oldVAO ? oldVAO.attribs[n] : null;
240
- if (!oldVAO || attrib.enabled !== oldAttrib.enabled) {
241
- if (attrib.enabled) {
242
- original.enableVertexAttribArray.call(gl, n);
243
- }
244
- else {
245
- original.disableVertexAttribArray.call(gl, n);
246
- }
220
+ if (attrib.enabled) {
221
+ let bufferChanged = false;
222
+ if (!oldVAO || attrib.buffer !== oldAttrib.buffer) {
223
+ if (currentBinding !== attrib.buffer) {
224
+ original.bindBuffer.call(gl, gl.ARRAY_BUFFER, attrib.buffer);
225
+ currentBinding = attrib.buffer;
247
226
  }
248
- if (attrib.enabled) {
249
- let bufferChanged = false;
250
- if (!oldVAO || attrib.buffer !== oldAttrib.buffer) {
251
- if (currentBinding !== attrib.buffer) {
252
- original.bindBuffer.call(gl, gl.ARRAY_BUFFER, attrib.buffer);
253
- currentBinding = attrib.buffer;
254
- }
255
- bufferChanged = true;
256
- }
257
- if (bufferChanged || attrib.cached !== oldAttrib.cached) {
258
- original.vertexAttribPointer.call(gl, n, attrib.size, attrib.type, attrib.normalized, attrib.stride, attrib.offset);
259
- }
260
- }
261
- }
262
- if (this.currentArrayBuffer !== currentBinding) {
263
- original.bindBuffer.call(gl, gl.ARRAY_BUFFER, this.currentArrayBuffer);
227
+ bufferChanged = true;
228
+ }
229
+ if (bufferChanged || attrib.cached !== oldAttrib.cached) {
230
+ original.vertexAttribPointer.call(gl, n, attrib.size, attrib.type, attrib.normalized, attrib.stride, attrib.offset);
231
+ }
264
232
  }
233
+ }
234
+ if (this.currentArrayBuffer !== currentBinding) {
235
+ original.bindBuffer.call(gl, gl.ARRAY_BUFFER, this.currentArrayBuffer);
236
+ }
265
237
  };
266
238
  export function polyfillVertexArrayObject(gl) {
267
- if (typeof gl.createVertexArray === 'function') {
268
- // VAOs directly supported on object (i.e. WebGL 2 context)
269
- return;
239
+ if (typeof gl.createVertexArray === 'function') {
240
+ return;
241
+ }
242
+ const original_getSupportedExtensions = gl.getSupportedExtensions;
243
+ gl.getSupportedExtensions = function getSupportedExtensions() {
244
+ const list = original_getSupportedExtensions.call(this) || [];
245
+ if (list.indexOf('OES_vertex_array_object') < 0) {
246
+ list.push('OES_vertex_array_object');
270
247
  }
271
- const original_getSupportedExtensions = gl.getSupportedExtensions;
272
- gl.getSupportedExtensions = function getSupportedExtensions() {
273
- const list = original_getSupportedExtensions.call(this) || [];
274
- if (list.indexOf('OES_vertex_array_object') < 0) {
275
- list.push('OES_vertex_array_object');
276
- }
277
- return list;
278
- };
279
- const original_getExtension = gl.getExtension;
280
- gl.getExtension = function getExtension(name) {
281
- const ext = original_getExtension.call(this, name);
282
- if (ext) {
283
- return ext;
284
- }
285
- if (name !== 'OES_vertex_array_object') {
286
- return null;
287
- }
288
- if (!gl.__OESVertexArrayObject) {
289
- this.__OESVertexArrayObject = new OESVertexArrayObject(this);
290
- }
291
- return this.__OESVertexArrayObject;
292
- };
248
+ return list;
249
+ };
250
+ const original_getExtension = gl.getExtension;
251
+ gl.getExtension = function getExtension(name) {
252
+ const ext = original_getExtension.call(this, name);
253
+ if (ext) {
254
+ return ext;
255
+ }
256
+ if (name !== 'OES_vertex_array_object') {
257
+ return null;
258
+ }
259
+ if (!gl.__OESVertexArrayObject) {
260
+ this.__OESVertexArrayObject = new OESVertexArrayObject(this);
261
+ }
262
+ return this.__OESVertexArrayObject;
263
+ };
293
264
  }
265
+ //# sourceMappingURL=polyfill-vertex-array-object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"polyfill-vertex-array-object.js","names":["glErrorShadow","error","msg","globalThis","console","log","synthesizeGLError","err","opt_msg","undefined","wrapGLError","gl","f","getError","apply","NO_ERROR","parseInt","WebGLVertexArrayObjectOES","ext","isAlive","hasBeenBound","elementArrayBuffer","attribs","Array","maxVertexAttribs","n","length","attrib","VertexAttrib","maxAttrib","enabled","buffer","size","type","FLOAT","normalized","stride","offset","cached","recache","prototype","join","OESVertexArrayObject","self","original","getParameter","enableVertexAttribArray","disableVertexAttribArray","bindBuffer","getVertexAttrib","vertexAttribPointer","pname","VERTEX_ARRAY_BINDING_OES","currentVertexArrayObject","defaultVertexArrayObject","arguments","index","vao","Math","max","target","ARRAY_BUFFER","currentArrayBuffer","ELEMENT_ARRAY_BUFFER","VERTEX_ATTRIB_ARRAY_BUFFER_BINDING","VERTEX_ATTRIB_ARRAY_ENABLED","VERTEX_ATTRIB_ARRAY_SIZE","VERTEX_ATTRIB_ARRAY_STRIDE","VERTEX_ATTRIB_ARRAY_TYPE","VERTEX_ATTRIB_ARRAY_NORMALIZED","indx","instrumentExtension","canvas","addEventListener","reset_","contextWasLost","vertexArrayObjects","ii","MAX_VERTEX_ATTRIBS","bindVertexArrayOES","createVertexArrayOES","arrayObject","push","deleteVertexArrayOES","splice","indexOf","isVertexArrayOES","INVALID_OPERATION","oldVAO","newVAO","call","currentBinding","oldAttrib","bufferChanged","polyfillVertexArrayObject","createVertexArray","original_getSupportedExtensions","getSupportedExtensions","list","original_getExtension","getExtension","name","__OESVertexArrayObject"],"sources":["../../../src/context/polyfill/polyfill-vertex-array-object.ts"],"sourcesContent":["/*\n ** Copyright (c) 2015 The Khronos Group Inc.\n **\n ** Permission is hereby granted, free of charge, to any person obtaining a\n ** copy of this software and/or associated documentation files (the\n ** \"Materials\"), to deal in the Materials without restriction, including\n ** without limitation the rights to use, copy, modify, merge, publish,\n ** distribute, sublicense, and/or sell copies of the Materials, and to\n ** permit persons to whom the Materials are furnished to do so, subject to\n ** the following conditions:\n **\n ** The above copyright notice and this permission notice shall be included\n ** in all copies or substantial portions of the Materials.\n **\n ** THE MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\n ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\n ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\n ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\n ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\n */\n\n// Modified to use ES6 and polyfill a provided context rather than\n// the global class.\n\n// @ts-nocheck external code\n/* eslint-disable */ \n\nconst glErrorShadow = {};\n\nfunction error(msg) {\n if (globalThis.console && globalThis.console.error) {\n globalThis.console.error(msg);\n }\n}\n\nfunction log(msg) {\n if (globalThis.console && globalThis.console.log) {\n globalThis.console.log(msg);\n }\n}\n\nfunction synthesizeGLError(err, opt_msg) {\n glErrorShadow[err] = true;\n if (opt_msg !== undefined) {\n error(opt_msg);\n }\n}\n\nfunction wrapGLError(gl) {\n const f = gl.getError;\n gl.getError = function getError() {\n let err;\n do {\n err = f.apply(gl);\n if (err !== gl.NO_ERROR) {\n glErrorShadow[err] = true;\n }\n } while (err !== gl.NO_ERROR);\n\n for (err in glErrorShadow) {\n if (glErrorShadow[err]) {\n delete glErrorShadow[err];\n return parseInt(err, 10);\n }\n }\n\n return gl.NO_ERROR;\n };\n}\n\nconst WebGLVertexArrayObjectOES = function WebGLVertexArrayObjectOES(ext) {\n const gl = ext.gl;\n\n this.ext = ext;\n this.isAlive = true;\n this.hasBeenBound = false;\n\n this.elementArrayBuffer = null;\n this.attribs = new Array(ext.maxVertexAttribs);\n for (let n = 0; n < this.attribs.length; n++) {\n const attrib = new WebGLVertexArrayObjectOES.VertexAttrib(gl);\n this.attribs[n] = attrib;\n }\n\n this.maxAttrib = 0;\n};\n\nWebGLVertexArrayObjectOES.VertexAttrib = function VertexAttrib(gl) {\n this.enabled = false;\n this.buffer = null;\n this.size = 4;\n this.type = gl.FLOAT;\n this.normalized = false;\n this.stride = 16;\n this.offset = 0;\n\n this.cached = '';\n this.recache();\n};\nWebGLVertexArrayObjectOES.VertexAttrib.prototype.recache = function recache() {\n this.cached = [this.size, this.type, this.normalized, this.stride, this.offset].join(':');\n};\n\nconst OESVertexArrayObject = function OESVertexArrayObject(gl) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n this.gl = gl;\n\n wrapGLError(gl);\n\n const original = (this.original = {\n getParameter: gl.getParameter,\n enableVertexAttribArray: gl.enableVertexAttribArray,\n disableVertexAttribArray: gl.disableVertexAttribArray,\n bindBuffer: gl.bindBuffer,\n getVertexAttrib: gl.getVertexAttrib,\n vertexAttribPointer: gl.vertexAttribPointer\n });\n\n gl.getParameter = function getParameter(pname) {\n if (pname === self.VERTEX_ARRAY_BINDING_OES) {\n if (self.currentVertexArrayObject === self.defaultVertexArrayObject) {\n return null;\n }\n return self.currentVertexArrayObject;\n }\n return original.getParameter.apply(this, arguments);\n };\n\n gl.enableVertexAttribArray = function enableVertexAttribArray(index) {\n const vao = self.currentVertexArrayObject;\n vao.maxAttrib = Math.max(vao.maxAttrib, index);\n const attrib = vao.attribs[index];\n attrib.enabled = true;\n return original.enableVertexAttribArray.apply(this, arguments);\n };\n gl.disableVertexAttribArray = function disableVertexAttribArray(index) {\n const vao = self.currentVertexArrayObject;\n vao.maxAttrib = Math.max(vao.maxAttrib, index);\n const attrib = vao.attribs[index];\n attrib.enabled = false;\n return original.disableVertexAttribArray.apply(this, arguments);\n };\n\n gl.bindBuffer = function bindBuffer(target, buffer) {\n switch (target) {\n case gl.ARRAY_BUFFER:\n self.currentArrayBuffer = buffer;\n break;\n case gl.ELEMENT_ARRAY_BUFFER:\n self.currentVertexArrayObject.elementArrayBuffer = buffer;\n break;\n default:\n }\n return original.bindBuffer.apply(this, arguments);\n };\n\n gl.getVertexAttrib = function getVertexAttrib(index, pname) {\n const vao = self.currentVertexArrayObject;\n const attrib = vao.attribs[index];\n switch (pname) {\n case gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:\n return attrib.buffer;\n case gl.VERTEX_ATTRIB_ARRAY_ENABLED:\n return attrib.enabled;\n case gl.VERTEX_ATTRIB_ARRAY_SIZE:\n return attrib.size;\n case gl.VERTEX_ATTRIB_ARRAY_STRIDE:\n return attrib.stride;\n case gl.VERTEX_ATTRIB_ARRAY_TYPE:\n return attrib.type;\n case gl.VERTEX_ATTRIB_ARRAY_NORMALIZED:\n return attrib.normalized;\n default:\n return original.getVertexAttrib.apply(this, arguments);\n }\n };\n\n // eslint-disable-next-line max-params\n gl.vertexAttribPointer = function vertexAttribPointer(\n indx,\n size,\n type,\n normalized,\n stride,\n offset\n ) {\n const vao = self.currentVertexArrayObject;\n vao.maxAttrib = Math.max(vao.maxAttrib, indx);\n const attrib = vao.attribs[indx];\n attrib.buffer = self.currentArrayBuffer;\n attrib.size = size;\n attrib.type = type;\n attrib.normalized = normalized;\n attrib.stride = stride;\n attrib.offset = offset;\n attrib.recache();\n return original.vertexAttribPointer.apply(this, arguments);\n };\n\n if (gl.instrumentExtension) {\n gl.instrumentExtension(this, 'OES_vertex_array_object');\n }\n\n // undefined for headless gl\n if (gl.canvas) {\n gl.canvas.addEventListener(\n 'webglcontextrestored',\n () => {\n log('OESVertexArrayObject emulation library context restored');\n self.reset_();\n },\n true\n );\n }\n\n this.reset_();\n};\n\nOESVertexArrayObject.prototype.VERTEX_ARRAY_BINDING_OES = 0x85b5;\n\nOESVertexArrayObject.prototype.reset_ = function reset_() {\n const contextWasLost = this.vertexArrayObjects !== undefined;\n if (contextWasLost) {\n for (let ii = 0; ii < this.vertexArrayObjects.length; ++ii) {\n this.vertexArrayObjects.isAlive = false;\n }\n }\n const gl = this.gl;\n this.maxVertexAttribs = gl.getParameter(gl.MAX_VERTEX_ATTRIBS);\n\n this.defaultVertexArrayObject = new WebGLVertexArrayObjectOES(this);\n this.currentVertexArrayObject = null;\n this.currentArrayBuffer = null;\n this.vertexArrayObjects = [this.defaultVertexArrayObject];\n\n this.bindVertexArrayOES(null);\n};\n\nOESVertexArrayObject.prototype.createVertexArrayOES = function createVertexArrayOES() {\n const arrayObject = new WebGLVertexArrayObjectOES(this);\n this.vertexArrayObjects.push(arrayObject);\n return arrayObject;\n};\n\nOESVertexArrayObject.prototype.deleteVertexArrayOES = function deleteVertexArrayOES(arrayObject) {\n arrayObject.isAlive = false;\n this.vertexArrayObjects.splice(this.vertexArrayObjects.indexOf(arrayObject), 1);\n if (this.currentVertexArrayObject === arrayObject) {\n this.bindVertexArrayOES(null);\n }\n};\n\nOESVertexArrayObject.prototype.isVertexArrayOES = function isVertexArrayOES(arrayObject) {\n if (arrayObject && arrayObject instanceof WebGLVertexArrayObjectOES) {\n if (arrayObject.hasBeenBound && arrayObject.ext === this) {\n return true;\n }\n }\n return false;\n};\n\nOESVertexArrayObject.prototype.bindVertexArrayOES = function bindVertexArrayOES(arrayObject) {\n const gl = this.gl;\n if (arrayObject && !arrayObject.isAlive) {\n synthesizeGLError(\n gl.INVALID_OPERATION,\n 'bindVertexArrayOES: attempt to bind deleted arrayObject'\n );\n return;\n }\n const original = this.original;\n\n const oldVAO = this.currentVertexArrayObject;\n this.currentVertexArrayObject = arrayObject || this.defaultVertexArrayObject;\n this.currentVertexArrayObject.hasBeenBound = true;\n const newVAO = this.currentVertexArrayObject;\n\n if (oldVAO === newVAO) {\n return;\n }\n\n if (!oldVAO || newVAO.elementArrayBuffer !== oldVAO.elementArrayBuffer) {\n original.bindBuffer.call(gl, gl.ELEMENT_ARRAY_BUFFER, newVAO.elementArrayBuffer);\n }\n\n let currentBinding = this.currentArrayBuffer;\n const maxAttrib = Math.max(oldVAO ? oldVAO.maxAttrib : 0, newVAO.maxAttrib);\n for (let n = 0; n <= maxAttrib; n++) {\n const attrib = newVAO.attribs[n];\n const oldAttrib = oldVAO ? oldVAO.attribs[n] : null;\n\n if (!oldVAO || attrib.enabled !== oldAttrib.enabled) {\n if (attrib.enabled) {\n original.enableVertexAttribArray.call(gl, n);\n } else {\n original.disableVertexAttribArray.call(gl, n);\n }\n }\n\n if (attrib.enabled) {\n let bufferChanged = false;\n if (!oldVAO || attrib.buffer !== oldAttrib.buffer) {\n if (currentBinding !== attrib.buffer) {\n original.bindBuffer.call(gl, gl.ARRAY_BUFFER, attrib.buffer);\n currentBinding = attrib.buffer;\n }\n bufferChanged = true;\n }\n\n if (bufferChanged || attrib.cached !== oldAttrib.cached) {\n original.vertexAttribPointer.call(\n gl,\n n,\n attrib.size,\n attrib.type,\n attrib.normalized,\n attrib.stride,\n attrib.offset\n );\n }\n }\n }\n\n if (this.currentArrayBuffer !== currentBinding) {\n original.bindBuffer.call(gl, gl.ARRAY_BUFFER, this.currentArrayBuffer);\n }\n};\n\nexport function polyfillVertexArrayObject(gl) {\n if (typeof gl.createVertexArray === 'function') {\n // VAOs directly supported on object (i.e. WebGL 2 context)\n return;\n }\n\n const original_getSupportedExtensions = gl.getSupportedExtensions;\n gl.getSupportedExtensions = function getSupportedExtensions() {\n const list = original_getSupportedExtensions.call(this) || [];\n if (list.indexOf('OES_vertex_array_object') < 0) {\n list.push('OES_vertex_array_object');\n }\n return list;\n };\n\n const original_getExtension = gl.getExtension;\n gl.getExtension = function getExtension(name) {\n const ext = original_getExtension.call(this, name);\n if (ext) {\n return ext;\n }\n if (name !== 'OES_vertex_array_object') {\n return null;\n }\n\n if (!gl.__OESVertexArrayObject) {\n this.__OESVertexArrayObject = new OESVertexArrayObject(this);\n }\n return this.__OESVertexArrayObject;\n };\n}\n"],"mappings":"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"}
@@ -1,19 +1,17 @@
1
- /** deeply compare two arrays */
2
1
  export function deepArrayEqual(x, y) {
3
- if (x === y) {
4
- return true;
2
+ if (x === y) {
3
+ return true;
4
+ }
5
+ const isArrayX = Array.isArray(x) || ArrayBuffer.isView(x);
6
+ const isArrayY = Array.isArray(y) || ArrayBuffer.isView(y);
7
+ if (isArrayX && isArrayY && x.length === y.length) {
8
+ for (let i = 0; i < x.length; ++i) {
9
+ if (x[i] !== y[i]) {
10
+ return false;
11
+ }
5
12
  }
6
- const isArrayX = Array.isArray(x) || ArrayBuffer.isView(x);
7
- const isArrayY = Array.isArray(y) || ArrayBuffer.isView(y);
8
- // @ts-expect-error TODO fix
9
- if (isArrayX && isArrayY && x.length === y.length) {
10
- // @ts-expect-error TODO fix
11
- for (let i = 0; i < x.length; ++i) {
12
- if (x[i] !== y[i]) {
13
- return false;
14
- }
15
- }
16
- return true;
17
- }
18
- return false;
13
+ return true;
14
+ }
15
+ return false;
19
16
  }
17
+ //# sourceMappingURL=deep-array-equal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deep-array-equal.js","names":["deepArrayEqual","x","y","isArrayX","Array","isArray","ArrayBuffer","isView","isArrayY","length","i"],"sources":["../../../src/context/state-tracker/deep-array-equal.ts"],"sourcesContent":["\n/** deeply compare two arrays */\nexport function deepArrayEqual(x: any, y: any): boolean {\n if (x === y) {\n return true;\n }\n const isArrayX = Array.isArray(x) || ArrayBuffer.isView(x);\n const isArrayY = Array.isArray(y) || ArrayBuffer.isView(y);\n // @ts-expect-error TODO fix\n if (isArrayX && isArrayY && x.length === y.length) {\n // @ts-expect-error TODO fix\n for (let i = 0; i < x.length; ++i) {\n if (x[i] !== y[i]) {\n return false;\n }\n }\n return true;\n }\n return false;\n}\n"],"mappings":"AAEA,OAAO,SAASA,cAAcA,CAACC,CAAM,EAAEC,CAAM,EAAW;EACtD,IAAID,CAAC,KAAKC,CAAC,EAAE;IACX,OAAO,IAAI;EACb;EACA,MAAMC,QAAQ,GAAGC,KAAK,CAACC,OAAO,CAACJ,CAAC,CAAC,IAAIK,WAAW,CAACC,MAAM,CAACN,CAAC,CAAC;EAC1D,MAAMO,QAAQ,GAAGJ,KAAK,CAACC,OAAO,CAACH,CAAC,CAAC,IAAII,WAAW,CAACC,MAAM,CAACL,CAAC,CAAC;EAE1D,IAAIC,QAAQ,IAAIK,QAAQ,IAAIP,CAAC,CAACQ,MAAM,KAAKP,CAAC,CAACO,MAAM,EAAE;IAEjD,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGT,CAAC,CAACQ,MAAM,EAAE,EAAEC,CAAC,EAAE;MACjC,IAAIT,CAAC,CAACS,CAAC,CAAC,KAAKR,CAAC,CAACQ,CAAC,CAAC,EAAE;QACjB,OAAO,KAAK;MACd;IACF;IACA,OAAO,IAAI;EACb;EACA,OAAO,KAAK;AACd"}
@@ -1 +1 @@
1
- {"version":3,"file":"track-context-state.d.ts","sourceRoot":"","sources":["../../../src/context/state-tracker/track-context-state.ts"],"names":[],"mappings":"AA0FA;;;;;;;GAOG;AACF,wBAAgB,iBAAiB,CAChC,EAAE,EAAE,qBAAqB,EACzB,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,GAAG,CAAC,EAAE,GAAG,CAAC;CACX,GACA,qBAAqB,CAgCvB;AAED;;GAEG;AACF,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,qBAAqB,GAAG,IAAI,CAOjE;AAGD;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,qBAAqB,GAAG,IAAI,CAI/D"}
1
+ {"version":3,"file":"track-context-state.d.ts","sourceRoot":"","sources":["../../../src/context/state-tracker/track-context-state.ts"],"names":[],"mappings":"AA0FA;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,qBAAqB,EACzB,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,GAAG,CAAC,EAAE,GAAG,CAAC;CACX,GACA,qBAAqB,CAgCvB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,qBAAqB,GAAG,IAAI,CAOhE;AAGD;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,qBAAqB,GAAG,IAAI,CAI/D"}