@mapgis/mapbox-gl 1.9.12 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (442) hide show
  1. package/.flowconfig +61 -0
  2. package/LICENSE.txt +84 -0
  3. package/README.md +30 -13
  4. package/build/banner.js +4 -0
  5. package/build/check-bundle-size.js +140 -0
  6. package/build/generate-access-token-script.js +11 -0
  7. package/build/generate-flow-typed-style-spec.js +188 -0
  8. package/build/generate-release-list.js +21 -0
  9. package/build/generate-struct-arrays.js +237 -0
  10. package/build/generate-style-code.js +159 -0
  11. package/build/mapbox-gl.js.flow +3 -0
  12. package/build/print-release-url.js +6 -0
  13. package/build/rollup_plugin_minify_style_spec.js +20 -0
  14. package/build/rollup_plugins.js +80 -0
  15. package/build/run-node +3 -0
  16. package/build/run-tap +8 -0
  17. package/build/test/build-tape.js +19 -0
  18. package/dist/mapbox-gl-csp-worker.js +2 -0
  19. package/dist/mapbox-gl-csp-worker.js.map +1 -0
  20. package/dist/mapbox-gl-csp.js +2 -0
  21. package/dist/mapbox-gl-csp.js.map +1 -0
  22. package/dist/mapbox-gl-dev.js +68798 -0
  23. package/dist/mapbox-gl-unminified.js +45076 -0
  24. package/dist/mapbox-gl-unminified.js.map +1 -0
  25. package/dist/mapbox-gl.js +4 -4
  26. package/dist/mapbox-gl.js.map +1 -0
  27. package/flow-typed/gl.js +5 -0
  28. package/flow-typed/jsdom.js +18 -0
  29. package/flow-typed/mapbox-gl-supported.js +9 -0
  30. package/flow-typed/mapbox-unitbezier.js +14 -0
  31. package/flow-typed/offscreen-canvas.js +9 -0
  32. package/flow-typed/pbf.js +25 -0
  33. package/flow-typed/point-geometry.js +44 -0
  34. package/flow-typed/potpack.js +12 -0
  35. package/flow-typed/sinon.js +28 -0
  36. package/flow-typed/vector-tile.js +41 -0
  37. package/package.json +171 -19
  38. package/src/css/mapbox-gl.css +798 -0
  39. package/src/css/svg/mapboxgl-ctrl-attrib.svg +3 -0
  40. package/src/css/svg/mapboxgl-ctrl-compass.svg +4 -0
  41. package/src/css/svg/mapboxgl-ctrl-fullscreen.svg +3 -0
  42. package/src/css/svg/mapboxgl-ctrl-geolocate.svg +5 -0
  43. package/src/css/svg/mapboxgl-ctrl-logo.svg +20 -0
  44. package/src/css/svg/mapboxgl-ctrl-shrink.svg +3 -0
  45. package/src/css/svg/mapboxgl-ctrl-zoom-in.svg +3 -0
  46. package/src/css/svg/mapboxgl-ctrl-zoom-out.svg +3 -0
  47. package/src/data/array_types.js +1095 -0
  48. package/src/data/bucket/circle_attributes.js +9 -0
  49. package/src/data/bucket/circle_bucket.js +204 -0
  50. package/src/data/bucket/fill_attributes.js +9 -0
  51. package/src/data/bucket/fill_bucket.js +233 -0
  52. package/src/data/bucket/fill_extrusion_attributes.js +10 -0
  53. package/src/data/bucket/fill_extrusion_bucket.js +289 -0
  54. package/src/data/bucket/heatmap_bucket.js +17 -0
  55. package/src/data/bucket/line_attributes.js +10 -0
  56. package/src/data/bucket/line_bucket.js +556 -0
  57. package/src/data/bucket/pattern_attributes.js +10 -0
  58. package/src/data/bucket/pattern_bucket_features.js +60 -0
  59. package/src/data/bucket/symbol_attributes.js +117 -0
  60. package/src/data/bucket/symbol_bucket.js +972 -0
  61. package/src/data/bucket.js +123 -0
  62. package/src/data/dem_data.js +125 -0
  63. package/src/data/extent.js +18 -0
  64. package/src/data/feature_index.js +321 -0
  65. package/src/data/feature_position_map.js +125 -0
  66. package/src/data/index_array_type.js +16 -0
  67. package/src/data/load_geometry.js +48 -0
  68. package/src/data/pos_attributes.js +6 -0
  69. package/src/data/program_configuration.js +687 -0
  70. package/src/data/raster_bounds_attributes.js +7 -0
  71. package/src/data/segment.js +76 -0
  72. package/src/geo/edge_insets.js +102 -0
  73. package/src/geo/lng_lat.js +165 -0
  74. package/src/geo/lng_lat_bounds.js +267 -0
  75. package/src/geo/mercator_coordinate.js +153 -0
  76. package/src/geo/transform.js +864 -0
  77. package/src/gl/color_mode.js +34 -0
  78. package/src/gl/context.js +298 -0
  79. package/src/gl/cull_face_mode.js +26 -0
  80. package/src/gl/depth_mode.js +29 -0
  81. package/src/gl/framebuffer.js +44 -0
  82. package/src/gl/index_buffer.js +55 -0
  83. package/src/gl/stencil_mode.js +30 -0
  84. package/src/gl/types.js +84 -0
  85. package/src/gl/value.js +520 -0
  86. package/src/gl/vertex_buffer.js +119 -0
  87. package/src/index.js +201 -0
  88. package/src/render/draw_background.js +57 -0
  89. package/src/render/draw_circle.js +113 -0
  90. package/src/render/draw_collision_debug.js +49 -0
  91. package/src/render/draw_custom.js +49 -0
  92. package/src/render/draw_debug.js +127 -0
  93. package/src/render/draw_fill.js +126 -0
  94. package/src/render/draw_fill_extrusion.js +96 -0
  95. package/src/render/draw_heatmap.js +140 -0
  96. package/src/render/draw_hillshade.js +108 -0
  97. package/src/render/draw_line.js +98 -0
  98. package/src/render/draw_raster.js +125 -0
  99. package/src/render/draw_symbol.js +394 -0
  100. package/src/render/glyph_atlas.js +71 -0
  101. package/src/render/glyph_manager.js +182 -0
  102. package/src/render/image_atlas.js +149 -0
  103. package/src/render/image_manager.js +306 -0
  104. package/src/render/line_atlas.js +210 -0
  105. package/src/render/painter.js +653 -0
  106. package/src/render/program/background_program.js +103 -0
  107. package/src/render/program/circle_program.js +69 -0
  108. package/src/render/program/clipping_mask_program.js +20 -0
  109. package/src/render/program/collision_program.js +49 -0
  110. package/src/render/program/debug_program.js +35 -0
  111. package/src/render/program/fill_extrusion_program.js +122 -0
  112. package/src/render/program/fill_program.js +126 -0
  113. package/src/render/program/heatmap_program.js +83 -0
  114. package/src/render/program/hillshade_program.js +122 -0
  115. package/src/render/program/line_program.js +207 -0
  116. package/src/render/program/pattern.js +102 -0
  117. package/src/render/program/program_uniforms.js +42 -0
  118. package/src/render/program/raster_program.js +92 -0
  119. package/src/render/program/symbol_program.js +224 -0
  120. package/src/render/program.js +168 -0
  121. package/src/render/texture.js +122 -0
  122. package/src/render/uniform_binding.js +147 -0
  123. package/src/render/vertex_array_object.js +163 -0
  124. package/src/shaders/README.md +42 -0
  125. package/src/shaders/_prelude.fragment.glsl +17 -0
  126. package/src/shaders/_prelude.vertex.glsl +73 -0
  127. package/src/shaders/background.fragment.glsl +10 -0
  128. package/src/shaders/background.vertex.glsl +7 -0
  129. package/src/shaders/background_pattern.fragment.glsl +28 -0
  130. package/src/shaders/background_pattern.vertex.glsl +20 -0
  131. package/src/shaders/circle.fragment.glsl +39 -0
  132. package/src/shaders/circle.vertex.glsl +64 -0
  133. package/src/shaders/clipping_mask.fragment.glsl +3 -0
  134. package/src/shaders/clipping_mask.vertex.glsl +7 -0
  135. package/src/shaders/collision_box.fragment.glsl +21 -0
  136. package/src/shaders/collision_box.vertex.glsl +27 -0
  137. package/src/shaders/collision_circle.fragment.glsl +34 -0
  138. package/src/shaders/collision_circle.vertex.glsl +36 -0
  139. package/src/shaders/debug.fragment.glsl +9 -0
  140. package/src/shaders/debug.vertex.glsl +12 -0
  141. package/src/shaders/encode_attribute.js +17 -0
  142. package/src/shaders/fill.fragment.glsl +13 -0
  143. package/src/shaders/fill.vertex.glsl +13 -0
  144. package/src/shaders/fill_extrusion.fragment.glsl +9 -0
  145. package/src/shaders/fill_extrusion.vertex.glsl +66 -0
  146. package/src/shaders/fill_extrusion_pattern.fragment.glsl +45 -0
  147. package/src/shaders/fill_extrusion_pattern.vertex.glsl +79 -0
  148. package/src/shaders/fill_outline.fragment.glsl +17 -0
  149. package/src/shaders/fill_outline.vertex.glsl +17 -0
  150. package/src/shaders/fill_outline_pattern.fragment.glsl +43 -0
  151. package/src/shaders/fill_outline_pattern.vertex.glsl +44 -0
  152. package/src/shaders/fill_pattern.fragment.glsl +36 -0
  153. package/src/shaders/fill_pattern.vertex.glsl +39 -0
  154. package/src/shaders/heatmap.fragment.glsl +22 -0
  155. package/src/shaders/heatmap.vertex.glsl +54 -0
  156. package/src/shaders/heatmap_texture.fragment.glsl +14 -0
  157. package/src/shaders/heatmap_texture.vertex.glsl +11 -0
  158. package/src/shaders/hillshade.fragment.glsl +52 -0
  159. package/src/shaders/hillshade.vertex.glsl +11 -0
  160. package/src/shaders/hillshade_prepare.fragment.glsl +74 -0
  161. package/src/shaders/hillshade_prepare.vertex.glsl +15 -0
  162. package/src/shaders/index.js +20 -0
  163. package/src/shaders/line.fragment.glsl +30 -0
  164. package/src/shaders/line.vertex.glsl +85 -0
  165. package/src/shaders/line_gradient.fragment.glsl +34 -0
  166. package/src/shaders/line_gradient.vertex.glsl +87 -0
  167. package/src/shaders/line_pattern.fragment.glsl +74 -0
  168. package/src/shaders/line_pattern.vertex.glsl +99 -0
  169. package/src/shaders/line_sdf.fragment.glsl +45 -0
  170. package/src/shaders/line_sdf.vertex.glsl +98 -0
  171. package/src/shaders/raster.fragment.glsl +52 -0
  172. package/src/shaders/raster.vertex.glsl +21 -0
  173. package/src/shaders/shaders.js +180 -0
  174. package/src/shaders/symbol_icon.fragment.glsl +17 -0
  175. package/src/shaders/symbol_icon.vertex.glsl +94 -0
  176. package/src/shaders/symbol_sdf.fragment.glsl +52 -0
  177. package/src/shaders/symbol_sdf.vertex.glsl +115 -0
  178. package/src/shaders/symbol_text_and_icon.fragment.glsl +68 -0
  179. package/src/shaders/symbol_text_and_icon.vertex.glsl +116 -0
  180. package/src/source/canvas_source.js +238 -0
  181. package/src/source/geojson_helper.js +92 -0
  182. package/src/source/geojson_source.js +374 -0
  183. package/src/source/geojson_worker_source.js +357 -0
  184. package/src/source/geojson_wrapper.js +94 -0
  185. package/src/source/image_source.js +307 -0
  186. package/src/source/load_tilejson.js +39 -0
  187. package/src/source/mbtiles_source.js +115 -0
  188. package/src/source/offline_database.js +61 -0
  189. package/src/source/offline_database_root.js +62 -0
  190. package/src/source/pixels_to_tile_units.js +21 -0
  191. package/src/source/query_features.js +208 -0
  192. package/src/source/raster_dem_tile_source.js +138 -0
  193. package/src/source/raster_dem_tile_worker_source.js +62 -0
  194. package/src/source/raster_tile_offline_source.js +136 -0
  195. package/src/source/raster_tile_source.js +177 -0
  196. package/src/source/rtl_text_plugin.js +138 -0
  197. package/src/source/source.js +137 -0
  198. package/src/source/source_cache.js +957 -0
  199. package/src/source/source_state.js +159 -0
  200. package/src/source/tile.js +465 -0
  201. package/src/source/tile_bounds.js +38 -0
  202. package/src/source/tile_cache.js +212 -0
  203. package/src/source/tile_id.js +402 -0
  204. package/src/source/vector_tile_source.js +192 -0
  205. package/src/source/vector_tile_worker_source.js +216 -0
  206. package/src/source/video_source.js +203 -0
  207. package/src/source/worker.js +237 -0
  208. package/src/source/worker_source.js +106 -0
  209. package/src/source/worker_tile.js +224 -0
  210. package/src/style/create_style_layer.js +36 -0
  211. package/src/style/evaluation_parameters.js +62 -0
  212. package/src/style/light.js +130 -0
  213. package/src/style/load_glyph_range.js +38 -0
  214. package/src/style/load_sprite.js +67 -0
  215. package/src/style/parse_glyph_pbf.js +44 -0
  216. package/src/style/pauseable_placement.js +132 -0
  217. package/src/style/properties.js +753 -0
  218. package/src/style/query_utils.js +43 -0
  219. package/src/style/style.js +1361 -0
  220. package/src/style/style_glyph.js +17 -0
  221. package/src/style/style_image.js +137 -0
  222. package/src/style/style_layer/background_style_layer.js +21 -0
  223. package/src/style/style_layer/background_style_layer_properties.js +40 -0
  224. package/src/style/style_layer/circle_style_layer.js +98 -0
  225. package/src/style/style_layer/circle_style_layer_properties.js +63 -0
  226. package/src/style/style_layer/custom_style_layer.js +223 -0
  227. package/src/style/style_layer/fill_extrusion_style_layer.js +224 -0
  228. package/src/style/style_layer/fill_extrusion_style_layer_properties.js +50 -0
  229. package/src/style/style_layer/fill_style_layer.js +67 -0
  230. package/src/style/style_layer/fill_style_layer_properties.js +55 -0
  231. package/src/style/style_layer/heatmap_style_layer.js +69 -0
  232. package/src/style/style_layer/heatmap_style_layer_properties.js +44 -0
  233. package/src/style/style_layer/hillshade_style_layer.js +25 -0
  234. package/src/style/style_layer/hillshade_style_layer_properties.js +46 -0
  235. package/src/style/style_layer/layer_properties.js.ejs +69 -0
  236. package/src/style/style_layer/line_style_layer.js +151 -0
  237. package/src/style/style_layer/line_style_layer_properties.js +71 -0
  238. package/src/style/style_layer/raster_style_layer.js +21 -0
  239. package/src/style/style_layer/raster_style_layer_properties.js +50 -0
  240. package/src/style/style_layer/symbol_style_layer.js +190 -0
  241. package/src/style/style_layer/symbol_style_layer_properties.js +153 -0
  242. package/src/style/style_layer/typed_style_layer.js +17 -0
  243. package/src/style/style_layer.js +281 -0
  244. package/src/style/style_layer_index.js +80 -0
  245. package/src/style/validate_style.js +42 -0
  246. package/src/style/zoom_history.js +44 -0
  247. package/src/style-spec/.eslintrc +5 -0
  248. package/src/style-spec/CHANGELOG.md +438 -0
  249. package/src/style-spec/README.md +59 -0
  250. package/src/style-spec/bin/gl-style-composite +9 -0
  251. package/src/style-spec/bin/gl-style-format +22 -0
  252. package/src/style-spec/bin/gl-style-migrate +9 -0
  253. package/src/style-spec/bin/gl-style-validate +50 -0
  254. package/src/style-spec/composite.js +50 -0
  255. package/src/style-spec/declass.js +42 -0
  256. package/src/style-spec/deref.js +52 -0
  257. package/src/style-spec/diff.js +393 -0
  258. package/src/style-spec/dist/.gitkeep +0 -0
  259. package/src/style-spec/empty.js +29 -0
  260. package/src/style-spec/error/parsing_error.js +16 -0
  261. package/src/style-spec/error/validation_error.js +18 -0
  262. package/src/style-spec/expression/compound_expression.js +162 -0
  263. package/src/style-spec/expression/definitions/assertion.js +130 -0
  264. package/src/style-spec/expression/definitions/at.js +70 -0
  265. package/src/style-spec/expression/definitions/case.js +85 -0
  266. package/src/style-spec/expression/definitions/coalesce.js +93 -0
  267. package/src/style-spec/expression/definitions/coercion.js +133 -0
  268. package/src/style-spec/expression/definitions/collator.js +78 -0
  269. package/src/style-spec/expression/definitions/comparison.js +184 -0
  270. package/src/style-spec/expression/definitions/format.js +144 -0
  271. package/src/style-spec/expression/definitions/format_section_override.js +54 -0
  272. package/src/style-spec/expression/definitions/image.js +52 -0
  273. package/src/style-spec/expression/definitions/in.js +92 -0
  274. package/src/style-spec/expression/definitions/index.js +561 -0
  275. package/src/style-spec/expression/definitions/interpolate.js +267 -0
  276. package/src/style-spec/expression/definitions/length.js +61 -0
  277. package/src/style-spec/expression/definitions/let.js +72 -0
  278. package/src/style-spec/expression/definitions/literal.js +77 -0
  279. package/src/style-spec/expression/definitions/match.js +158 -0
  280. package/src/style-spec/expression/definitions/number_format.js +142 -0
  281. package/src/style-spec/expression/definitions/step.js +120 -0
  282. package/src/style-spec/expression/definitions/var.js +46 -0
  283. package/src/style-spec/expression/definitions/within.js +333 -0
  284. package/src/style-spec/expression/evaluation_context.js +59 -0
  285. package/src/style-spec/expression/expression.js +27 -0
  286. package/src/style-spec/expression/index.js +392 -0
  287. package/src/style-spec/expression/is_constant.js +59 -0
  288. package/src/style-spec/expression/parsing_context.js +233 -0
  289. package/src/style-spec/expression/parsing_error.js +13 -0
  290. package/src/style-spec/expression/runtime_error.js +17 -0
  291. package/src/style-spec/expression/scope.js +36 -0
  292. package/src/style-spec/expression/stops.js +39 -0
  293. package/src/style-spec/expression/types/collator.js +61 -0
  294. package/src/style-spec/expression/types/formatted.js +73 -0
  295. package/src/style-spec/expression/types/resolved_image.js +29 -0
  296. package/src/style-spec/expression/types.js +106 -0
  297. package/src/style-spec/expression/values.js +123 -0
  298. package/src/style-spec/feature_filter/README.md +55 -0
  299. package/src/style-spec/feature_filter/convert.js +208 -0
  300. package/src/style-spec/feature_filter/index.js +165 -0
  301. package/src/style-spec/format.js +51 -0
  302. package/src/style-spec/function/convert.js +254 -0
  303. package/src/style-spec/function/index.js +262 -0
  304. package/src/style-spec/group_by_layout.js +75 -0
  305. package/src/style-spec/migrate/expressions.js +39 -0
  306. package/src/style-spec/migrate/v8.js +203 -0
  307. package/src/style-spec/migrate/v9.js +26 -0
  308. package/src/style-spec/migrate.js +36 -0
  309. package/src/style-spec/package.json +41 -0
  310. package/src/style-spec/read_style.js +14 -0
  311. package/src/style-spec/reference/latest.js +3 -0
  312. package/src/style-spec/reference/v8.json +5808 -0
  313. package/src/style-spec/rollup.config.js +45 -0
  314. package/src/style-spec/style-spec.js +122 -0
  315. package/src/style-spec/types.js +438 -0
  316. package/src/style-spec/util/color.js +95 -0
  317. package/src/style-spec/util/color_spaces.js +139 -0
  318. package/src/style-spec/util/deep_equal.js +28 -0
  319. package/src/style-spec/util/extend.js +10 -0
  320. package/src/style-spec/util/get_type.js +17 -0
  321. package/src/style-spec/util/interpolate.js +22 -0
  322. package/src/style-spec/util/properties.js +15 -0
  323. package/src/style-spec/util/ref_properties.js +2 -0
  324. package/src/style-spec/util/result.js +19 -0
  325. package/src/style-spec/util/unbundle_jsonlint.js +24 -0
  326. package/src/style-spec/validate/latest.js +11 -0
  327. package/src/style-spec/validate/validate.js +75 -0
  328. package/src/style-spec/validate/validate_array.js +52 -0
  329. package/src/style-spec/validate/validate_boolean.js +15 -0
  330. package/src/style-spec/validate/validate_color.js +20 -0
  331. package/src/style-spec/validate/validate_constants.js +13 -0
  332. package/src/style-spec/validate/validate_enum.js +21 -0
  333. package/src/style-spec/validate/validate_expression.js +43 -0
  334. package/src/style-spec/validate/validate_filter.js +111 -0
  335. package/src/style-spec/validate/validate_formatted.js +11 -0
  336. package/src/style-spec/validate/validate_function.js +207 -0
  337. package/src/style-spec/validate/validate_glyphs_url.js +21 -0
  338. package/src/style-spec/validate/validate_image.js +11 -0
  339. package/src/style-spec/validate/validate_layer.js +134 -0
  340. package/src/style-spec/validate/validate_layout_property.js +6 -0
  341. package/src/style-spec/validate/validate_light.js +47 -0
  342. package/src/style-spec/validate/validate_number.js +29 -0
  343. package/src/style-spec/validate/validate_object.js +61 -0
  344. package/src/style-spec/validate/validate_paint_property.js +6 -0
  345. package/src/style-spec/validate/validate_property.js +64 -0
  346. package/src/style-spec/validate/validate_source.js +111 -0
  347. package/src/style-spec/validate/validate_string.js +15 -0
  348. package/src/style-spec/validate_mapbox_api_supported.js +171 -0
  349. package/src/style-spec/validate_style.js +39 -0
  350. package/src/style-spec/validate_style.min.js +78 -0
  351. package/src/style-spec/visit.js +77 -0
  352. package/src/symbol/anchor.js +26 -0
  353. package/src/symbol/check_max_angle.js +81 -0
  354. package/src/symbol/clip_line.js +71 -0
  355. package/src/symbol/collision_feature.js +217 -0
  356. package/src/symbol/collision_index.js +372 -0
  357. package/src/symbol/cross_tile_symbol_index.js +301 -0
  358. package/src/symbol/get_anchors.js +167 -0
  359. package/src/symbol/grid_index.js +335 -0
  360. package/src/symbol/mergelines.js +82 -0
  361. package/src/symbol/one_em.js +4 -0
  362. package/src/symbol/opacity_state.js +27 -0
  363. package/src/symbol/placement.js +1062 -0
  364. package/src/symbol/projection.js +450 -0
  365. package/src/symbol/quads.js +334 -0
  366. package/src/symbol/shaping.js +816 -0
  367. package/src/symbol/symbol_layout.js +772 -0
  368. package/src/symbol/symbol_size.js +113 -0
  369. package/src/symbol/transform_text.js +29 -0
  370. package/src/types/callback.js +17 -0
  371. package/src/types/cancelable.js +3 -0
  372. package/src/types/tilejson.js +17 -0
  373. package/src/types/transferable.js +3 -0
  374. package/src/types/window.js +172 -0
  375. package/src/ui/anchor.js +32 -0
  376. package/src/ui/bind_handlers.js +202 -0
  377. package/src/ui/camera.js +1152 -0
  378. package/src/ui/control/attribution_control.js +189 -0
  379. package/src/ui/control/fps_control.js +185 -0
  380. package/src/ui/control/fullscreen_control.js +147 -0
  381. package/src/ui/control/geolocate_control.js +594 -0
  382. package/src/ui/control/logo_control.js +92 -0
  383. package/src/ui/control/navigation_control.js +148 -0
  384. package/src/ui/control/scale_control.js +142 -0
  385. package/src/ui/crs.js +64 -0
  386. package/src/ui/default_locale.js +20 -0
  387. package/src/ui/events.js +806 -0
  388. package/src/ui/handler/box_zoom.js +175 -0
  389. package/src/ui/handler/dblclick_zoom.js +139 -0
  390. package/src/ui/handler/drag_pan.js +416 -0
  391. package/src/ui/handler/drag_rotate.js +378 -0
  392. package/src/ui/handler/keyboard.js +161 -0
  393. package/src/ui/handler/scroll_zoom.js +333 -0
  394. package/src/ui/handler/touch_zoom_rotate.js +293 -0
  395. package/src/ui/hash.js +147 -0
  396. package/src/ui/map.js +2883 -0
  397. package/src/ui/marker.js +607 -0
  398. package/src/ui/offline_map.js +91 -0
  399. package/src/ui/popup.js +530 -0
  400. package/src/util/actor.js +212 -0
  401. package/src/util/ajax.js +371 -0
  402. package/src/util/browser/web_worker.js +10 -0
  403. package/src/util/browser/window.js +5 -0
  404. package/src/util/browser.js +70 -0
  405. package/src/util/classify_rings.js +52 -0
  406. package/src/util/color_ramp.js +28 -0
  407. package/src/util/config.js +30 -0
  408. package/src/util/debug.js +12 -0
  409. package/src/util/dictionary_coder.js +30 -0
  410. package/src/util/dispatcher.js +70 -0
  411. package/src/util/dom.js +144 -0
  412. package/src/util/evented.js +174 -0
  413. package/src/util/find_pole_of_inaccessibility.js +129 -0
  414. package/src/util/global_worker_pool.js +17 -0
  415. package/src/util/image.js +142 -0
  416. package/src/util/intersection_tests.js +208 -0
  417. package/src/util/is_char_in_unicode_block.js +311 -0
  418. package/src/util/mapbox.js +486 -0
  419. package/src/util/offscreen_canvas_supported.js +14 -0
  420. package/src/util/performance.js +112 -0
  421. package/src/util/primitives.js +145 -0
  422. package/src/util/resolve_tokens.js +16 -0
  423. package/src/util/script_detection.js +328 -0
  424. package/src/util/sku_token.js +42 -0
  425. package/src/util/smart_wrap.js +55 -0
  426. package/src/util/struct_array.js +243 -0
  427. package/src/util/struct_array.js.ejs +112 -0
  428. package/src/util/struct_array_layout.js.ejs +98 -0
  429. package/src/util/task_queue.js +68 -0
  430. package/src/util/throttle.js +28 -0
  431. package/src/util/throttled_invoker.js +46 -0
  432. package/src/util/tile_cover.js +101 -0
  433. package/src/util/tile_request_cache.js +172 -0
  434. package/src/util/util.js +504 -0
  435. package/src/util/vectortile_to_geojson.js +54 -0
  436. package/src/util/verticalize_punctuation.js +114 -0
  437. package/src/util/web_worker.js +91 -0
  438. package/src/util/web_worker_transfer.js +266 -0
  439. package/src/util/webp_supported.js +69 -0
  440. package/src/util/window.js +102 -0
  441. package/src/util/worker_pool.js +47 -0
  442. package/postcss.config.js +0 -16
@@ -0,0 +1,1095 @@
1
+ // This file is generated. Edit build/generate-struct-arrays.js, then run `yarn run codegen`.
2
+ // @flow
3
+
4
+ import assert from 'assert';
5
+ import {Struct, StructArray} from '../util/struct_array';
6
+ import {register} from '../util/web_worker_transfer';
7
+ import Point from '@mapbox/point-geometry';
8
+
9
+ /**
10
+ * Implementation of the StructArray layout:
11
+ * [0]: Int16[2]
12
+ *
13
+ * @private
14
+ */
15
+ class StructArrayLayout2i4 extends StructArray {
16
+ uint8: Uint8Array;
17
+ int16: Int16Array;
18
+
19
+ _refreshViews() {
20
+ this.uint8 = new Uint8Array(this.arrayBuffer);
21
+ this.int16 = new Int16Array(this.arrayBuffer);
22
+ }
23
+
24
+ emplaceBack(v0: number, v1: number) {
25
+ const i = this.length;
26
+ this.resize(i + 1);
27
+ return this.emplace(i, v0, v1);
28
+ }
29
+
30
+ emplace(i: number, v0: number, v1: number) {
31
+ const o2 = i * 2;
32
+ this.int16[o2 + 0] = v0;
33
+ this.int16[o2 + 1] = v1;
34
+ return i;
35
+ }
36
+ }
37
+
38
+ StructArrayLayout2i4.prototype.bytesPerElement = 4;
39
+ register('StructArrayLayout2i4', StructArrayLayout2i4);
40
+
41
+ /**
42
+ * Implementation of the StructArray layout:
43
+ * [0]: Int16[4]
44
+ *
45
+ * @private
46
+ */
47
+ class StructArrayLayout4i8 extends StructArray {
48
+ uint8: Uint8Array;
49
+ int16: Int16Array;
50
+
51
+ _refreshViews() {
52
+ this.uint8 = new Uint8Array(this.arrayBuffer);
53
+ this.int16 = new Int16Array(this.arrayBuffer);
54
+ }
55
+
56
+ emplaceBack(v0: number, v1: number, v2: number, v3: number) {
57
+ const i = this.length;
58
+ this.resize(i + 1);
59
+ return this.emplace(i, v0, v1, v2, v3);
60
+ }
61
+
62
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number) {
63
+ const o2 = i * 4;
64
+ this.int16[o2 + 0] = v0;
65
+ this.int16[o2 + 1] = v1;
66
+ this.int16[o2 + 2] = v2;
67
+ this.int16[o2 + 3] = v3;
68
+ return i;
69
+ }
70
+ }
71
+
72
+ StructArrayLayout4i8.prototype.bytesPerElement = 8;
73
+ register('StructArrayLayout4i8', StructArrayLayout4i8);
74
+
75
+ /**
76
+ * Implementation of the StructArray layout:
77
+ * [0]: Int16[2]
78
+ * [4]: Int16[4]
79
+ *
80
+ * @private
81
+ */
82
+ class StructArrayLayout2i4i12 extends StructArray {
83
+ uint8: Uint8Array;
84
+ int16: Int16Array;
85
+
86
+ _refreshViews() {
87
+ this.uint8 = new Uint8Array(this.arrayBuffer);
88
+ this.int16 = new Int16Array(this.arrayBuffer);
89
+ }
90
+
91
+ emplaceBack(v0: number, v1: number, v2: number, v3: number, v4: number, v5: number) {
92
+ const i = this.length;
93
+ this.resize(i + 1);
94
+ return this.emplace(i, v0, v1, v2, v3, v4, v5);
95
+ }
96
+
97
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number, v4: number, v5: number) {
98
+ const o2 = i * 6;
99
+ this.int16[o2 + 0] = v0;
100
+ this.int16[o2 + 1] = v1;
101
+ this.int16[o2 + 2] = v2;
102
+ this.int16[o2 + 3] = v3;
103
+ this.int16[o2 + 4] = v4;
104
+ this.int16[o2 + 5] = v5;
105
+ return i;
106
+ }
107
+ }
108
+
109
+ StructArrayLayout2i4i12.prototype.bytesPerElement = 12;
110
+ register('StructArrayLayout2i4i12', StructArrayLayout2i4i12);
111
+
112
+ /**
113
+ * Implementation of the StructArray layout:
114
+ * [0]: Int16[2]
115
+ * [4]: Uint8[4]
116
+ *
117
+ * @private
118
+ */
119
+ class StructArrayLayout2i4ub8 extends StructArray {
120
+ uint8: Uint8Array;
121
+ int16: Int16Array;
122
+
123
+ _refreshViews() {
124
+ this.uint8 = new Uint8Array(this.arrayBuffer);
125
+ this.int16 = new Int16Array(this.arrayBuffer);
126
+ }
127
+
128
+ emplaceBack(v0: number, v1: number, v2: number, v3: number, v4: number, v5: number) {
129
+ const i = this.length;
130
+ this.resize(i + 1);
131
+ return this.emplace(i, v0, v1, v2, v3, v4, v5);
132
+ }
133
+
134
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number, v4: number, v5: number) {
135
+ const o2 = i * 4;
136
+ const o1 = i * 8;
137
+ this.int16[o2 + 0] = v0;
138
+ this.int16[o2 + 1] = v1;
139
+ this.uint8[o1 + 4] = v2;
140
+ this.uint8[o1 + 5] = v3;
141
+ this.uint8[o1 + 6] = v4;
142
+ this.uint8[o1 + 7] = v5;
143
+ return i;
144
+ }
145
+ }
146
+
147
+ StructArrayLayout2i4ub8.prototype.bytesPerElement = 8;
148
+ register('StructArrayLayout2i4ub8', StructArrayLayout2i4ub8);
149
+
150
+ /**
151
+ * Implementation of the StructArray layout:
152
+ * [0]: Uint16[8]
153
+ * [16]: Uint8[2]
154
+ *
155
+ * @private
156
+ */
157
+ class StructArrayLayout8ui2ub18 extends StructArray {
158
+ uint8: Uint8Array;
159
+ uint16: Uint16Array;
160
+
161
+ _refreshViews() {
162
+ this.uint8 = new Uint8Array(this.arrayBuffer);
163
+ this.uint16 = new Uint16Array(this.arrayBuffer);
164
+ }
165
+
166
+ emplaceBack(v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number) {
167
+ const i = this.length;
168
+ this.resize(i + 1);
169
+ return this.emplace(i, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9);
170
+ }
171
+
172
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number) {
173
+ const o2 = i * 9;
174
+ const o1 = i * 18;
175
+ this.uint16[o2 + 0] = v0;
176
+ this.uint16[o2 + 1] = v1;
177
+ this.uint16[o2 + 2] = v2;
178
+ this.uint16[o2 + 3] = v3;
179
+ this.uint16[o2 + 4] = v4;
180
+ this.uint16[o2 + 5] = v5;
181
+ this.uint16[o2 + 6] = v6;
182
+ this.uint16[o2 + 7] = v7;
183
+ this.uint8[o1 + 16] = v8;
184
+ this.uint8[o1 + 17] = v9;
185
+ return i;
186
+ }
187
+ }
188
+
189
+ StructArrayLayout8ui2ub18.prototype.bytesPerElement = 18;
190
+ register('StructArrayLayout8ui2ub18', StructArrayLayout8ui2ub18);
191
+
192
+ /**
193
+ * Implementation of the StructArray layout:
194
+ * [0]: Int16[4]
195
+ * [8]: Uint16[4]
196
+ * [16]: Int16[4]
197
+ *
198
+ * @private
199
+ */
200
+ class StructArrayLayout4i4ui4i24 extends StructArray {
201
+ uint8: Uint8Array;
202
+ int16: Int16Array;
203
+ uint16: Uint16Array;
204
+
205
+ _refreshViews() {
206
+ this.uint8 = new Uint8Array(this.arrayBuffer);
207
+ this.int16 = new Int16Array(this.arrayBuffer);
208
+ this.uint16 = new Uint16Array(this.arrayBuffer);
209
+ }
210
+
211
+ emplaceBack(v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number, v10: number, v11: number) {
212
+ const i = this.length;
213
+ this.resize(i + 1);
214
+ return this.emplace(i, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11);
215
+ }
216
+
217
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number, v10: number, v11: number) {
218
+ const o2 = i * 12;
219
+ this.int16[o2 + 0] = v0;
220
+ this.int16[o2 + 1] = v1;
221
+ this.int16[o2 + 2] = v2;
222
+ this.int16[o2 + 3] = v3;
223
+ this.uint16[o2 + 4] = v4;
224
+ this.uint16[o2 + 5] = v5;
225
+ this.uint16[o2 + 6] = v6;
226
+ this.uint16[o2 + 7] = v7;
227
+ this.int16[o2 + 8] = v8;
228
+ this.int16[o2 + 9] = v9;
229
+ this.int16[o2 + 10] = v10;
230
+ this.int16[o2 + 11] = v11;
231
+ return i;
232
+ }
233
+ }
234
+
235
+ StructArrayLayout4i4ui4i24.prototype.bytesPerElement = 24;
236
+ register('StructArrayLayout4i4ui4i24', StructArrayLayout4i4ui4i24);
237
+
238
+ /**
239
+ * Implementation of the StructArray layout:
240
+ * [0]: Float32[3]
241
+ *
242
+ * @private
243
+ */
244
+ class StructArrayLayout3f12 extends StructArray {
245
+ uint8: Uint8Array;
246
+ float32: Float32Array;
247
+
248
+ _refreshViews() {
249
+ this.uint8 = new Uint8Array(this.arrayBuffer);
250
+ this.float32 = new Float32Array(this.arrayBuffer);
251
+ }
252
+
253
+ emplaceBack(v0: number, v1: number, v2: number) {
254
+ const i = this.length;
255
+ this.resize(i + 1);
256
+ return this.emplace(i, v0, v1, v2);
257
+ }
258
+
259
+ emplace(i: number, v0: number, v1: number, v2: number) {
260
+ const o4 = i * 3;
261
+ this.float32[o4 + 0] = v0;
262
+ this.float32[o4 + 1] = v1;
263
+ this.float32[o4 + 2] = v2;
264
+ return i;
265
+ }
266
+ }
267
+
268
+ StructArrayLayout3f12.prototype.bytesPerElement = 12;
269
+ register('StructArrayLayout3f12', StructArrayLayout3f12);
270
+
271
+ /**
272
+ * Implementation of the StructArray layout:
273
+ * [0]: Uint32[1]
274
+ *
275
+ * @private
276
+ */
277
+ class StructArrayLayout1ul4 extends StructArray {
278
+ uint8: Uint8Array;
279
+ uint32: Uint32Array;
280
+
281
+ _refreshViews() {
282
+ this.uint8 = new Uint8Array(this.arrayBuffer);
283
+ this.uint32 = new Uint32Array(this.arrayBuffer);
284
+ }
285
+
286
+ emplaceBack(v0: number) {
287
+ const i = this.length;
288
+ this.resize(i + 1);
289
+ return this.emplace(i, v0);
290
+ }
291
+
292
+ emplace(i: number, v0: number) {
293
+ const o4 = i * 1;
294
+ this.uint32[o4 + 0] = v0;
295
+ return i;
296
+ }
297
+ }
298
+
299
+ StructArrayLayout1ul4.prototype.bytesPerElement = 4;
300
+ register('StructArrayLayout1ul4', StructArrayLayout1ul4);
301
+
302
+ /**
303
+ * Implementation of the StructArray layout:
304
+ * [0]: Int16[6]
305
+ * [12]: Uint32[1]
306
+ * [16]: Uint16[2]
307
+ * [20]: Int16[2]
308
+ *
309
+ * @private
310
+ */
311
+ class StructArrayLayout6i1ul2ui2i24 extends StructArray {
312
+ uint8: Uint8Array;
313
+ int16: Int16Array;
314
+ uint32: Uint32Array;
315
+ uint16: Uint16Array;
316
+
317
+ _refreshViews() {
318
+ this.uint8 = new Uint8Array(this.arrayBuffer);
319
+ this.int16 = new Int16Array(this.arrayBuffer);
320
+ this.uint32 = new Uint32Array(this.arrayBuffer);
321
+ this.uint16 = new Uint16Array(this.arrayBuffer);
322
+ }
323
+
324
+ emplaceBack(v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number, v10: number) {
325
+ const i = this.length;
326
+ this.resize(i + 1);
327
+ return this.emplace(i, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10);
328
+ }
329
+
330
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number, v10: number) {
331
+ const o2 = i * 12;
332
+ const o4 = i * 6;
333
+ this.int16[o2 + 0] = v0;
334
+ this.int16[o2 + 1] = v1;
335
+ this.int16[o2 + 2] = v2;
336
+ this.int16[o2 + 3] = v3;
337
+ this.int16[o2 + 4] = v4;
338
+ this.int16[o2 + 5] = v5;
339
+ this.uint32[o4 + 3] = v6;
340
+ this.uint16[o2 + 8] = v7;
341
+ this.uint16[o2 + 9] = v8;
342
+ this.int16[o2 + 10] = v9;
343
+ this.int16[o2 + 11] = v10;
344
+ return i;
345
+ }
346
+ }
347
+
348
+ StructArrayLayout6i1ul2ui2i24.prototype.bytesPerElement = 24;
349
+ register('StructArrayLayout6i1ul2ui2i24', StructArrayLayout6i1ul2ui2i24);
350
+
351
+ /**
352
+ * Implementation of the StructArray layout:
353
+ * [0]: Int16[2]
354
+ * [4]: Int16[2]
355
+ * [8]: Int16[2]
356
+ *
357
+ * @private
358
+ */
359
+ class StructArrayLayout2i2i2i12 extends StructArray {
360
+ uint8: Uint8Array;
361
+ int16: Int16Array;
362
+
363
+ _refreshViews() {
364
+ this.uint8 = new Uint8Array(this.arrayBuffer);
365
+ this.int16 = new Int16Array(this.arrayBuffer);
366
+ }
367
+
368
+ emplaceBack(v0: number, v1: number, v2: number, v3: number, v4: number, v5: number) {
369
+ const i = this.length;
370
+ this.resize(i + 1);
371
+ return this.emplace(i, v0, v1, v2, v3, v4, v5);
372
+ }
373
+
374
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number, v4: number, v5: number) {
375
+ const o2 = i * 6;
376
+ this.int16[o2 + 0] = v0;
377
+ this.int16[o2 + 1] = v1;
378
+ this.int16[o2 + 2] = v2;
379
+ this.int16[o2 + 3] = v3;
380
+ this.int16[o2 + 4] = v4;
381
+ this.int16[o2 + 5] = v5;
382
+ return i;
383
+ }
384
+ }
385
+
386
+ StructArrayLayout2i2i2i12.prototype.bytesPerElement = 12;
387
+ register('StructArrayLayout2i2i2i12', StructArrayLayout2i2i2i12);
388
+
389
+ /**
390
+ * Implementation of the StructArray layout:
391
+ * [0]: Uint8[2]
392
+ * [4]: Float32[2]
393
+ *
394
+ * @private
395
+ */
396
+ class StructArrayLayout2ub2f12 extends StructArray {
397
+ uint8: Uint8Array;
398
+ float32: Float32Array;
399
+
400
+ _refreshViews() {
401
+ this.uint8 = new Uint8Array(this.arrayBuffer);
402
+ this.float32 = new Float32Array(this.arrayBuffer);
403
+ }
404
+
405
+ emplaceBack(v0: number, v1: number, v2: number, v3: number) {
406
+ const i = this.length;
407
+ this.resize(i + 1);
408
+ return this.emplace(i, v0, v1, v2, v3);
409
+ }
410
+
411
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number) {
412
+ const o1 = i * 12;
413
+ const o4 = i * 3;
414
+ this.uint8[o1 + 0] = v0;
415
+ this.uint8[o1 + 1] = v1;
416
+ this.float32[o4 + 1] = v2;
417
+ this.float32[o4 + 2] = v3;
418
+ return i;
419
+ }
420
+ }
421
+
422
+ StructArrayLayout2ub2f12.prototype.bytesPerElement = 12;
423
+ register('StructArrayLayout2ub2f12', StructArrayLayout2ub2f12);
424
+
425
+ /**
426
+ * Implementation of the StructArray layout:
427
+ * [0]: Int16[2]
428
+ * [4]: Uint16[2]
429
+ * [8]: Uint32[3]
430
+ * [20]: Uint16[3]
431
+ * [28]: Float32[2]
432
+ * [36]: Uint8[3]
433
+ * [40]: Uint32[1]
434
+ * [44]: Int16[1]
435
+ *
436
+ * @private
437
+ */
438
+ class StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48 extends StructArray {
439
+ uint8: Uint8Array;
440
+ int16: Int16Array;
441
+ uint16: Uint16Array;
442
+ uint32: Uint32Array;
443
+ float32: Float32Array;
444
+
445
+ _refreshViews() {
446
+ this.uint8 = new Uint8Array(this.arrayBuffer);
447
+ this.int16 = new Int16Array(this.arrayBuffer);
448
+ this.uint16 = new Uint16Array(this.arrayBuffer);
449
+ this.uint32 = new Uint32Array(this.arrayBuffer);
450
+ this.float32 = new Float32Array(this.arrayBuffer);
451
+ }
452
+
453
+ emplaceBack(v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number, v10: number, v11: number, v12: number, v13: number, v14: number, v15: number, v16: number) {
454
+ const i = this.length;
455
+ this.resize(i + 1);
456
+ return this.emplace(i, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16);
457
+ }
458
+
459
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number, v10: number, v11: number, v12: number, v13: number, v14: number, v15: number, v16: number) {
460
+ const o2 = i * 24;
461
+ const o4 = i * 12;
462
+ const o1 = i * 48;
463
+ this.int16[o2 + 0] = v0;
464
+ this.int16[o2 + 1] = v1;
465
+ this.uint16[o2 + 2] = v2;
466
+ this.uint16[o2 + 3] = v3;
467
+ this.uint32[o4 + 2] = v4;
468
+ this.uint32[o4 + 3] = v5;
469
+ this.uint32[o4 + 4] = v6;
470
+ this.uint16[o2 + 10] = v7;
471
+ this.uint16[o2 + 11] = v8;
472
+ this.uint16[o2 + 12] = v9;
473
+ this.float32[o4 + 7] = v10;
474
+ this.float32[o4 + 8] = v11;
475
+ this.uint8[o1 + 36] = v12;
476
+ this.uint8[o1 + 37] = v13;
477
+ this.uint8[o1 + 38] = v14;
478
+ this.uint32[o4 + 10] = v15;
479
+ this.int16[o2 + 22] = v16;
480
+ return i;
481
+ }
482
+ }
483
+
484
+ StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48.prototype.bytesPerElement = 48;
485
+ register('StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48', StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48);
486
+
487
+ /**
488
+ * Implementation of the StructArray layout:
489
+ * [0]: Int16[8]
490
+ * [16]: Uint16[14]
491
+ * [44]: Uint32[1]
492
+ * [48]: Float32[3]
493
+ *
494
+ * @private
495
+ */
496
+ class StructArrayLayout8i14ui1ul3f60 extends StructArray {
497
+ uint8: Uint8Array;
498
+ int16: Int16Array;
499
+ uint16: Uint16Array;
500
+ uint32: Uint32Array;
501
+ float32: Float32Array;
502
+
503
+ _refreshViews() {
504
+ this.uint8 = new Uint8Array(this.arrayBuffer);
505
+ this.int16 = new Int16Array(this.arrayBuffer);
506
+ this.uint16 = new Uint16Array(this.arrayBuffer);
507
+ this.uint32 = new Uint32Array(this.arrayBuffer);
508
+ this.float32 = new Float32Array(this.arrayBuffer);
509
+ }
510
+
511
+ emplaceBack(v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number, v10: number, v11: number, v12: number, v13: number, v14: number, v15: number, v16: number, v17: number, v18: number, v19: number, v20: number, v21: number, v22: number, v23: number, v24: number, v25: number) {
512
+ const i = this.length;
513
+ this.resize(i + 1);
514
+ return this.emplace(i, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25);
515
+ }
516
+
517
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number, v4: number, v5: number, v6: number, v7: number, v8: number, v9: number, v10: number, v11: number, v12: number, v13: number, v14: number, v15: number, v16: number, v17: number, v18: number, v19: number, v20: number, v21: number, v22: number, v23: number, v24: number, v25: number) {
518
+ const o2 = i * 30;
519
+ const o4 = i * 15;
520
+ this.int16[o2 + 0] = v0;
521
+ this.int16[o2 + 1] = v1;
522
+ this.int16[o2 + 2] = v2;
523
+ this.int16[o2 + 3] = v3;
524
+ this.int16[o2 + 4] = v4;
525
+ this.int16[o2 + 5] = v5;
526
+ this.int16[o2 + 6] = v6;
527
+ this.int16[o2 + 7] = v7;
528
+ this.uint16[o2 + 8] = v8;
529
+ this.uint16[o2 + 9] = v9;
530
+ this.uint16[o2 + 10] = v10;
531
+ this.uint16[o2 + 11] = v11;
532
+ this.uint16[o2 + 12] = v12;
533
+ this.uint16[o2 + 13] = v13;
534
+ this.uint16[o2 + 14] = v14;
535
+ this.uint16[o2 + 15] = v15;
536
+ this.uint16[o2 + 16] = v16;
537
+ this.uint16[o2 + 17] = v17;
538
+ this.uint16[o2 + 18] = v18;
539
+ this.uint16[o2 + 19] = v19;
540
+ this.uint16[o2 + 20] = v20;
541
+ this.uint16[o2 + 21] = v21;
542
+ this.uint32[o4 + 11] = v22;
543
+ this.float32[o4 + 12] = v23;
544
+ this.float32[o4 + 13] = v24;
545
+ this.float32[o4 + 14] = v25;
546
+ return i;
547
+ }
548
+ }
549
+
550
+ StructArrayLayout8i14ui1ul3f60.prototype.bytesPerElement = 60;
551
+ register('StructArrayLayout8i14ui1ul3f60', StructArrayLayout8i14ui1ul3f60);
552
+
553
+ /**
554
+ * Implementation of the StructArray layout:
555
+ * [0]: Float32[1]
556
+ *
557
+ * @private
558
+ */
559
+ class StructArrayLayout1f4 extends StructArray {
560
+ uint8: Uint8Array;
561
+ float32: Float32Array;
562
+
563
+ _refreshViews() {
564
+ this.uint8 = new Uint8Array(this.arrayBuffer);
565
+ this.float32 = new Float32Array(this.arrayBuffer);
566
+ }
567
+
568
+ emplaceBack(v0: number) {
569
+ const i = this.length;
570
+ this.resize(i + 1);
571
+ return this.emplace(i, v0);
572
+ }
573
+
574
+ emplace(i: number, v0: number) {
575
+ const o4 = i * 1;
576
+ this.float32[o4 + 0] = v0;
577
+ return i;
578
+ }
579
+ }
580
+
581
+ StructArrayLayout1f4.prototype.bytesPerElement = 4;
582
+ register('StructArrayLayout1f4', StructArrayLayout1f4);
583
+
584
+ /**
585
+ * Implementation of the StructArray layout:
586
+ * [0]: Int16[3]
587
+ *
588
+ * @private
589
+ */
590
+ class StructArrayLayout3i6 extends StructArray {
591
+ uint8: Uint8Array;
592
+ int16: Int16Array;
593
+
594
+ _refreshViews() {
595
+ this.uint8 = new Uint8Array(this.arrayBuffer);
596
+ this.int16 = new Int16Array(this.arrayBuffer);
597
+ }
598
+
599
+ emplaceBack(v0: number, v1: number, v2: number) {
600
+ const i = this.length;
601
+ this.resize(i + 1);
602
+ return this.emplace(i, v0, v1, v2);
603
+ }
604
+
605
+ emplace(i: number, v0: number, v1: number, v2: number) {
606
+ const o2 = i * 3;
607
+ this.int16[o2 + 0] = v0;
608
+ this.int16[o2 + 1] = v1;
609
+ this.int16[o2 + 2] = v2;
610
+ return i;
611
+ }
612
+ }
613
+
614
+ StructArrayLayout3i6.prototype.bytesPerElement = 6;
615
+ register('StructArrayLayout3i6', StructArrayLayout3i6);
616
+
617
+ /**
618
+ * Implementation of the StructArray layout:
619
+ * [0]: Uint32[1]
620
+ * [4]: Uint16[2]
621
+ *
622
+ * @private
623
+ */
624
+ class StructArrayLayout1ul2ui8 extends StructArray {
625
+ uint8: Uint8Array;
626
+ uint32: Uint32Array;
627
+ uint16: Uint16Array;
628
+
629
+ _refreshViews() {
630
+ this.uint8 = new Uint8Array(this.arrayBuffer);
631
+ this.uint32 = new Uint32Array(this.arrayBuffer);
632
+ this.uint16 = new Uint16Array(this.arrayBuffer);
633
+ }
634
+
635
+ emplaceBack(v0: number, v1: number, v2: number) {
636
+ const i = this.length;
637
+ this.resize(i + 1);
638
+ return this.emplace(i, v0, v1, v2);
639
+ }
640
+
641
+ emplace(i: number, v0: number, v1: number, v2: number) {
642
+ const o4 = i * 2;
643
+ const o2 = i * 4;
644
+ this.uint32[o4 + 0] = v0;
645
+ this.uint16[o2 + 2] = v1;
646
+ this.uint16[o2 + 3] = v2;
647
+ return i;
648
+ }
649
+ }
650
+
651
+ StructArrayLayout1ul2ui8.prototype.bytesPerElement = 8;
652
+ register('StructArrayLayout1ul2ui8', StructArrayLayout1ul2ui8);
653
+
654
+ /**
655
+ * Implementation of the StructArray layout:
656
+ * [0]: Uint16[3]
657
+ *
658
+ * @private
659
+ */
660
+ class StructArrayLayout3ui6 extends StructArray {
661
+ uint8: Uint8Array;
662
+ uint16: Uint16Array;
663
+
664
+ _refreshViews() {
665
+ this.uint8 = new Uint8Array(this.arrayBuffer);
666
+ this.uint16 = new Uint16Array(this.arrayBuffer);
667
+ }
668
+
669
+ emplaceBack(v0: number, v1: number, v2: number) {
670
+ const i = this.length;
671
+ this.resize(i + 1);
672
+ return this.emplace(i, v0, v1, v2);
673
+ }
674
+
675
+ emplace(i: number, v0: number, v1: number, v2: number) {
676
+ const o2 = i * 3;
677
+ this.uint16[o2 + 0] = v0;
678
+ this.uint16[o2 + 1] = v1;
679
+ this.uint16[o2 + 2] = v2;
680
+ return i;
681
+ }
682
+ }
683
+
684
+ StructArrayLayout3ui6.prototype.bytesPerElement = 6;
685
+ register('StructArrayLayout3ui6', StructArrayLayout3ui6);
686
+
687
+ /**
688
+ * Implementation of the StructArray layout:
689
+ * [0]: Uint16[2]
690
+ *
691
+ * @private
692
+ */
693
+ class StructArrayLayout2ui4 extends StructArray {
694
+ uint8: Uint8Array;
695
+ uint16: Uint16Array;
696
+
697
+ _refreshViews() {
698
+ this.uint8 = new Uint8Array(this.arrayBuffer);
699
+ this.uint16 = new Uint16Array(this.arrayBuffer);
700
+ }
701
+
702
+ emplaceBack(v0: number, v1: number) {
703
+ const i = this.length;
704
+ this.resize(i + 1);
705
+ return this.emplace(i, v0, v1);
706
+ }
707
+
708
+ emplace(i: number, v0: number, v1: number) {
709
+ const o2 = i * 2;
710
+ this.uint16[o2 + 0] = v0;
711
+ this.uint16[o2 + 1] = v1;
712
+ return i;
713
+ }
714
+ }
715
+
716
+ StructArrayLayout2ui4.prototype.bytesPerElement = 4;
717
+ register('StructArrayLayout2ui4', StructArrayLayout2ui4);
718
+
719
+ /**
720
+ * Implementation of the StructArray layout:
721
+ * [0]: Uint16[1]
722
+ *
723
+ * @private
724
+ */
725
+ class StructArrayLayout1ui2 extends StructArray {
726
+ uint8: Uint8Array;
727
+ uint16: Uint16Array;
728
+
729
+ _refreshViews() {
730
+ this.uint8 = new Uint8Array(this.arrayBuffer);
731
+ this.uint16 = new Uint16Array(this.arrayBuffer);
732
+ }
733
+
734
+ emplaceBack(v0: number) {
735
+ const i = this.length;
736
+ this.resize(i + 1);
737
+ return this.emplace(i, v0);
738
+ }
739
+
740
+ emplace(i: number, v0: number) {
741
+ const o2 = i * 1;
742
+ this.uint16[o2 + 0] = v0;
743
+ return i;
744
+ }
745
+ }
746
+
747
+ StructArrayLayout1ui2.prototype.bytesPerElement = 2;
748
+ register('StructArrayLayout1ui2', StructArrayLayout1ui2);
749
+
750
+ /**
751
+ * Implementation of the StructArray layout:
752
+ * [0]: Float32[2]
753
+ *
754
+ * @private
755
+ */
756
+ class StructArrayLayout2f8 extends StructArray {
757
+ uint8: Uint8Array;
758
+ float32: Float32Array;
759
+
760
+ _refreshViews() {
761
+ this.uint8 = new Uint8Array(this.arrayBuffer);
762
+ this.float32 = new Float32Array(this.arrayBuffer);
763
+ }
764
+
765
+ emplaceBack(v0: number, v1: number) {
766
+ const i = this.length;
767
+ this.resize(i + 1);
768
+ return this.emplace(i, v0, v1);
769
+ }
770
+
771
+ emplace(i: number, v0: number, v1: number) {
772
+ const o4 = i * 2;
773
+ this.float32[o4 + 0] = v0;
774
+ this.float32[o4 + 1] = v1;
775
+ return i;
776
+ }
777
+ }
778
+
779
+ StructArrayLayout2f8.prototype.bytesPerElement = 8;
780
+ register('StructArrayLayout2f8', StructArrayLayout2f8);
781
+
782
+ /**
783
+ * Implementation of the StructArray layout:
784
+ * [0]: Float32[4]
785
+ *
786
+ * @private
787
+ */
788
+ class StructArrayLayout4f16 extends StructArray {
789
+ uint8: Uint8Array;
790
+ float32: Float32Array;
791
+
792
+ _refreshViews() {
793
+ this.uint8 = new Uint8Array(this.arrayBuffer);
794
+ this.float32 = new Float32Array(this.arrayBuffer);
795
+ }
796
+
797
+ emplaceBack(v0: number, v1: number, v2: number, v3: number) {
798
+ const i = this.length;
799
+ this.resize(i + 1);
800
+ return this.emplace(i, v0, v1, v2, v3);
801
+ }
802
+
803
+ emplace(i: number, v0: number, v1: number, v2: number, v3: number) {
804
+ const o4 = i * 4;
805
+ this.float32[o4 + 0] = v0;
806
+ this.float32[o4 + 1] = v1;
807
+ this.float32[o4 + 2] = v2;
808
+ this.float32[o4 + 3] = v3;
809
+ return i;
810
+ }
811
+ }
812
+
813
+ StructArrayLayout4f16.prototype.bytesPerElement = 16;
814
+ register('StructArrayLayout4f16', StructArrayLayout4f16);
815
+
816
+ class CollisionBoxStruct extends Struct {
817
+ _structArray: CollisionBoxArray;
818
+ anchorPointX: number;
819
+ anchorPointY: number;
820
+ x1: number;
821
+ y1: number;
822
+ x2: number;
823
+ y2: number;
824
+ featureIndex: number;
825
+ sourceLayerIndex: number;
826
+ bucketIndex: number;
827
+ radius: number;
828
+ signedDistanceFromAnchor: number;
829
+ anchorPoint: Point;
830
+ get anchorPointX() { return this._structArray.int16[this._pos2 + 0]; }
831
+ get anchorPointY() { return this._structArray.int16[this._pos2 + 1]; }
832
+ get x1() { return this._structArray.int16[this._pos2 + 2]; }
833
+ get y1() { return this._structArray.int16[this._pos2 + 3]; }
834
+ get x2() { return this._structArray.int16[this._pos2 + 4]; }
835
+ get y2() { return this._structArray.int16[this._pos2 + 5]; }
836
+ get featureIndex() { return this._structArray.uint32[this._pos4 + 3]; }
837
+ get sourceLayerIndex() { return this._structArray.uint16[this._pos2 + 8]; }
838
+ get bucketIndex() { return this._structArray.uint16[this._pos2 + 9]; }
839
+ get radius() { return this._structArray.int16[this._pos2 + 10]; }
840
+ get signedDistanceFromAnchor() { return this._structArray.int16[this._pos2 + 11]; }
841
+ get anchorPoint() { return new Point(this.anchorPointX, this.anchorPointY); }
842
+ }
843
+
844
+ CollisionBoxStruct.prototype.size = 24;
845
+
846
+ export type CollisionBox = CollisionBoxStruct;
847
+
848
+ /**
849
+ * @private
850
+ */
851
+ export class CollisionBoxArray extends StructArrayLayout6i1ul2ui2i24 {
852
+ /**
853
+ * Return the CollisionBoxStruct at the given location in the array.
854
+ * @param {number} index The index of the element.
855
+ * @private
856
+ */
857
+ get(index: number): CollisionBoxStruct {
858
+ assert(!this.isTransferred);
859
+ return new CollisionBoxStruct(this, index);
860
+ }
861
+ }
862
+
863
+ register('CollisionBoxArray', CollisionBoxArray);
864
+
865
+ class PlacedSymbolStruct extends Struct {
866
+ _structArray: PlacedSymbolArray;
867
+ anchorX: number;
868
+ anchorY: number;
869
+ glyphStartIndex: number;
870
+ numGlyphs: number;
871
+ vertexStartIndex: number;
872
+ lineStartIndex: number;
873
+ lineLength: number;
874
+ segment: number;
875
+ lowerSize: number;
876
+ upperSize: number;
877
+ lineOffsetX: number;
878
+ lineOffsetY: number;
879
+ writingMode: number;
880
+ placedOrientation: number;
881
+ hidden: number;
882
+ crossTileID: number;
883
+ associatedIconIndex: number;
884
+ get anchorX() { return this._structArray.int16[this._pos2 + 0]; }
885
+ get anchorY() { return this._structArray.int16[this._pos2 + 1]; }
886
+ get glyphStartIndex() { return this._structArray.uint16[this._pos2 + 2]; }
887
+ get numGlyphs() { return this._structArray.uint16[this._pos2 + 3]; }
888
+ get vertexStartIndex() { return this._structArray.uint32[this._pos4 + 2]; }
889
+ get lineStartIndex() { return this._structArray.uint32[this._pos4 + 3]; }
890
+ get lineLength() { return this._structArray.uint32[this._pos4 + 4]; }
891
+ get segment() { return this._structArray.uint16[this._pos2 + 10]; }
892
+ get lowerSize() { return this._structArray.uint16[this._pos2 + 11]; }
893
+ get upperSize() { return this._structArray.uint16[this._pos2 + 12]; }
894
+ get lineOffsetX() { return this._structArray.float32[this._pos4 + 7]; }
895
+ get lineOffsetY() { return this._structArray.float32[this._pos4 + 8]; }
896
+ get writingMode() { return this._structArray.uint8[this._pos1 + 36]; }
897
+ get placedOrientation() { return this._structArray.uint8[this._pos1 + 37]; }
898
+ set placedOrientation(x: number) { this._structArray.uint8[this._pos1 + 37] = x; }
899
+ get hidden() { return this._structArray.uint8[this._pos1 + 38]; }
900
+ set hidden(x: number) { this._structArray.uint8[this._pos1 + 38] = x; }
901
+ get crossTileID() { return this._structArray.uint32[this._pos4 + 10]; }
902
+ set crossTileID(x: number) { this._structArray.uint32[this._pos4 + 10] = x; }
903
+ get associatedIconIndex() { return this._structArray.int16[this._pos2 + 22]; }
904
+ }
905
+
906
+ PlacedSymbolStruct.prototype.size = 48;
907
+
908
+ export type PlacedSymbol = PlacedSymbolStruct;
909
+
910
+ /**
911
+ * @private
912
+ */
913
+ export class PlacedSymbolArray extends StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48 {
914
+ /**
915
+ * Return the PlacedSymbolStruct at the given location in the array.
916
+ * @param {number} index The index of the element.
917
+ * @private
918
+ */
919
+ get(index: number): PlacedSymbolStruct {
920
+ assert(!this.isTransferred);
921
+ return new PlacedSymbolStruct(this, index);
922
+ }
923
+ }
924
+
925
+ register('PlacedSymbolArray', PlacedSymbolArray);
926
+
927
+ class SymbolInstanceStruct extends Struct {
928
+ _structArray: SymbolInstanceArray;
929
+ anchorX: number;
930
+ anchorY: number;
931
+ rightJustifiedTextSymbolIndex: number;
932
+ centerJustifiedTextSymbolIndex: number;
933
+ leftJustifiedTextSymbolIndex: number;
934
+ verticalPlacedTextSymbolIndex: number;
935
+ placedIconSymbolIndex: number;
936
+ verticalPlacedIconSymbolIndex: number;
937
+ key: number;
938
+ textBoxStartIndex: number;
939
+ textBoxEndIndex: number;
940
+ verticalTextBoxStartIndex: number;
941
+ verticalTextBoxEndIndex: number;
942
+ iconBoxStartIndex: number;
943
+ iconBoxEndIndex: number;
944
+ verticalIconBoxStartIndex: number;
945
+ verticalIconBoxEndIndex: number;
946
+ featureIndex: number;
947
+ numHorizontalGlyphVertices: number;
948
+ numVerticalGlyphVertices: number;
949
+ numIconVertices: number;
950
+ numVerticalIconVertices: number;
951
+ crossTileID: number;
952
+ textBoxScale: number;
953
+ textOffset0: number;
954
+ textOffset1: number;
955
+ get anchorX() { return this._structArray.int16[this._pos2 + 0]; }
956
+ get anchorY() { return this._structArray.int16[this._pos2 + 1]; }
957
+ get rightJustifiedTextSymbolIndex() { return this._structArray.int16[this._pos2 + 2]; }
958
+ get centerJustifiedTextSymbolIndex() { return this._structArray.int16[this._pos2 + 3]; }
959
+ get leftJustifiedTextSymbolIndex() { return this._structArray.int16[this._pos2 + 4]; }
960
+ get verticalPlacedTextSymbolIndex() { return this._structArray.int16[this._pos2 + 5]; }
961
+ get placedIconSymbolIndex() { return this._structArray.int16[this._pos2 + 6]; }
962
+ get verticalPlacedIconSymbolIndex() { return this._structArray.int16[this._pos2 + 7]; }
963
+ get key() { return this._structArray.uint16[this._pos2 + 8]; }
964
+ get textBoxStartIndex() { return this._structArray.uint16[this._pos2 + 9]; }
965
+ get textBoxEndIndex() { return this._structArray.uint16[this._pos2 + 10]; }
966
+ get verticalTextBoxStartIndex() { return this._structArray.uint16[this._pos2 + 11]; }
967
+ get verticalTextBoxEndIndex() { return this._structArray.uint16[this._pos2 + 12]; }
968
+ get iconBoxStartIndex() { return this._structArray.uint16[this._pos2 + 13]; }
969
+ get iconBoxEndIndex() { return this._structArray.uint16[this._pos2 + 14]; }
970
+ get verticalIconBoxStartIndex() { return this._structArray.uint16[this._pos2 + 15]; }
971
+ get verticalIconBoxEndIndex() { return this._structArray.uint16[this._pos2 + 16]; }
972
+ get featureIndex() { return this._structArray.uint16[this._pos2 + 17]; }
973
+ get numHorizontalGlyphVertices() { return this._structArray.uint16[this._pos2 + 18]; }
974
+ get numVerticalGlyphVertices() { return this._structArray.uint16[this._pos2 + 19]; }
975
+ get numIconVertices() { return this._structArray.uint16[this._pos2 + 20]; }
976
+ get numVerticalIconVertices() { return this._structArray.uint16[this._pos2 + 21]; }
977
+ get crossTileID() { return this._structArray.uint32[this._pos4 + 11]; }
978
+ set crossTileID(x: number) { this._structArray.uint32[this._pos4 + 11] = x; }
979
+ get textBoxScale() { return this._structArray.float32[this._pos4 + 12]; }
980
+ get textOffset0() { return this._structArray.float32[this._pos4 + 13]; }
981
+ get textOffset1() { return this._structArray.float32[this._pos4 + 14]; }
982
+ }
983
+
984
+ SymbolInstanceStruct.prototype.size = 60;
985
+
986
+ export type SymbolInstance = SymbolInstanceStruct;
987
+
988
+ /**
989
+ * @private
990
+ */
991
+ export class SymbolInstanceArray extends StructArrayLayout8i14ui1ul3f60 {
992
+ /**
993
+ * Return the SymbolInstanceStruct at the given location in the array.
994
+ * @param {number} index The index of the element.
995
+ * @private
996
+ */
997
+ get(index: number): SymbolInstanceStruct {
998
+ assert(!this.isTransferred);
999
+ return new SymbolInstanceStruct(this, index);
1000
+ }
1001
+ }
1002
+
1003
+ register('SymbolInstanceArray', SymbolInstanceArray);
1004
+
1005
+ /**
1006
+ * @private
1007
+ */
1008
+ export class GlyphOffsetArray extends StructArrayLayout1f4 {
1009
+ getoffsetX(index: number) { return this.float32[index * 1 + 0]; }
1010
+ }
1011
+
1012
+ register('GlyphOffsetArray', GlyphOffsetArray);
1013
+
1014
+ /**
1015
+ * @private
1016
+ */
1017
+ export class SymbolLineVertexArray extends StructArrayLayout3i6 {
1018
+ getx(index: number) { return this.int16[index * 3 + 0]; }
1019
+ gety(index: number) { return this.int16[index * 3 + 1]; }
1020
+ gettileUnitDistanceFromAnchor(index: number) { return this.int16[index * 3 + 2]; }
1021
+ }
1022
+
1023
+ register('SymbolLineVertexArray', SymbolLineVertexArray);
1024
+
1025
+ class FeatureIndexStruct extends Struct {
1026
+ _structArray: FeatureIndexArray;
1027
+ featureIndex: number;
1028
+ sourceLayerIndex: number;
1029
+ bucketIndex: number;
1030
+ get featureIndex() { return this._structArray.uint32[this._pos4 + 0]; }
1031
+ get sourceLayerIndex() { return this._structArray.uint16[this._pos2 + 2]; }
1032
+ get bucketIndex() { return this._structArray.uint16[this._pos2 + 3]; }
1033
+ }
1034
+
1035
+ FeatureIndexStruct.prototype.size = 8;
1036
+
1037
+ export type FeatureIndex = FeatureIndexStruct;
1038
+
1039
+ /**
1040
+ * @private
1041
+ */
1042
+ export class FeatureIndexArray extends StructArrayLayout1ul2ui8 {
1043
+ /**
1044
+ * Return the FeatureIndexStruct at the given location in the array.
1045
+ * @param {number} index The index of the element.
1046
+ * @private
1047
+ */
1048
+ get(index: number): FeatureIndexStruct {
1049
+ assert(!this.isTransferred);
1050
+ return new FeatureIndexStruct(this, index);
1051
+ }
1052
+ }
1053
+
1054
+ register('FeatureIndexArray', FeatureIndexArray);
1055
+
1056
+ export {
1057
+ StructArrayLayout2i4,
1058
+ StructArrayLayout4i8,
1059
+ StructArrayLayout2i4i12,
1060
+ StructArrayLayout2i4ub8,
1061
+ StructArrayLayout8ui2ub18,
1062
+ StructArrayLayout4i4ui4i24,
1063
+ StructArrayLayout3f12,
1064
+ StructArrayLayout1ul4,
1065
+ StructArrayLayout6i1ul2ui2i24,
1066
+ StructArrayLayout2i2i2i12,
1067
+ StructArrayLayout2ub2f12,
1068
+ StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48,
1069
+ StructArrayLayout8i14ui1ul3f60,
1070
+ StructArrayLayout1f4,
1071
+ StructArrayLayout3i6,
1072
+ StructArrayLayout1ul2ui8,
1073
+ StructArrayLayout3ui6,
1074
+ StructArrayLayout2ui4,
1075
+ StructArrayLayout1ui2,
1076
+ StructArrayLayout2f8,
1077
+ StructArrayLayout4f16,
1078
+ StructArrayLayout2i4 as PosArray,
1079
+ StructArrayLayout4i8 as RasterBoundsArray,
1080
+ StructArrayLayout2i4 as CircleLayoutArray,
1081
+ StructArrayLayout2i4 as FillLayoutArray,
1082
+ StructArrayLayout2i4i12 as FillExtrusionLayoutArray,
1083
+ StructArrayLayout2i4 as HeatmapLayoutArray,
1084
+ StructArrayLayout2i4ub8 as LineLayoutArray,
1085
+ StructArrayLayout8ui2ub18 as PatternLayoutArray,
1086
+ StructArrayLayout4i4ui4i24 as SymbolLayoutArray,
1087
+ StructArrayLayout3f12 as SymbolDynamicLayoutArray,
1088
+ StructArrayLayout1ul4 as SymbolOpacityArray,
1089
+ StructArrayLayout2i2i2i12 as CollisionBoxLayoutArray,
1090
+ StructArrayLayout2i2i2i12 as CollisionCircleLayoutArray,
1091
+ StructArrayLayout2ub2f12 as CollisionVertexArray,
1092
+ StructArrayLayout3ui6 as TriangleIndexArray,
1093
+ StructArrayLayout2ui4 as LineIndexArray,
1094
+ StructArrayLayout1ui2 as LineStripIndexArray
1095
+ };