maplibre-gl 2.1.0 → 2.1.4

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 (308) hide show
  1. package/build/{banner.js → banner.ts} +1 -1
  2. package/build/generate-query-test-fixtures.ts +123 -0
  3. package/build/generate-shaders.ts +35 -0
  4. package/build/generate-struct-arrays.ts +7 -7
  5. package/build/generate-style-code.ts +8 -8
  6. package/build/generate-style-spec.ts +5 -4
  7. package/build/generate-typings.ts +16 -0
  8. package/build/readme.md +8 -18
  9. package/build/release-notes.js +9 -13
  10. package/build/{rollup_plugin_minify_style_spec.js → rollup_plugin_minify_style_spec.ts} +4 -3
  11. package/build/{rollup_plugins.js → rollup_plugins.ts} +12 -26
  12. package/dist/maplibre-gl-dev.js +54885 -0
  13. package/dist/maplibre-gl.css +1 -1
  14. package/dist/maplibre-gl.d.ts +1537 -1011
  15. package/dist/maplibre-gl.js +3 -3
  16. package/dist/maplibre-gl.js.map +1 -1
  17. package/package.json +83 -107
  18. package/postinstall.js +5 -0
  19. package/src/css/maplibre-gl.css +28 -28
  20. package/src/data/{array_types.ts → array_types.g.ts} +0 -0
  21. package/src/data/bucket/circle_bucket.ts +1 -1
  22. package/src/data/bucket/fill_bucket.test.ts +1 -1
  23. package/src/data/bucket/fill_bucket.ts +4 -4
  24. package/src/data/bucket/fill_extrusion_bucket.ts +1 -1
  25. package/src/data/bucket/line_bucket.test.ts +1 -1
  26. package/src/data/bucket/line_bucket.ts +6 -6
  27. package/src/data/bucket/symbol_bucket.test.ts +16 -16
  28. package/src/data/bucket/symbol_bucket.ts +53 -53
  29. package/src/data/bucket.ts +43 -43
  30. package/src/data/dem_data.ts +12 -12
  31. package/src/data/evaluation_feature.ts +10 -10
  32. package/src/data/feature_index.ts +37 -37
  33. package/src/data/feature_position_map.ts +5 -5
  34. package/src/data/index_array_type.ts +1 -1
  35. package/src/data/load_geometry.test.ts +1 -1
  36. package/src/data/program_configuration.ts +46 -46
  37. package/src/data/segment.ts +14 -14
  38. package/src/geo/edge_insets.ts +2 -2
  39. package/src/geo/lng_lat.ts +4 -4
  40. package/src/geo/lng_lat_bounds.ts +35 -35
  41. package/src/geo/mercator_coordinate.ts +5 -5
  42. package/src/geo/transform.test.ts +1 -1
  43. package/src/geo/transform.ts +14 -14
  44. package/src/gl/context.ts +3 -3
  45. package/src/gl/types.ts +19 -19
  46. package/src/gl/value.ts +6 -6
  47. package/src/gl/vertex_buffer.test.ts +1 -1
  48. package/src/index.ts +24 -9
  49. package/src/render/draw_circle.ts +8 -8
  50. package/src/render/draw_collision_debug.ts +5 -5
  51. package/src/render/draw_line.ts +4 -4
  52. package/src/render/draw_symbol.ts +21 -21
  53. package/src/render/glyph_atlas.ts +12 -12
  54. package/src/render/glyph_manager.test.ts +10 -21
  55. package/src/render/glyph_manager.ts +33 -32
  56. package/src/render/image_manager.ts +4 -4
  57. package/src/render/painter.ts +11 -11
  58. package/src/render/program/background_program.ts +29 -29
  59. package/src/render/program/circle_program.ts +10 -10
  60. package/src/render/program/clipping_mask_program.ts +1 -1
  61. package/src/render/program/collision_program.ts +9 -9
  62. package/src/render/program/debug_program.ts +4 -4
  63. package/src/render/program/fill_extrusion_program.ts +31 -31
  64. package/src/render/program/fill_program.ts +29 -29
  65. package/src/render/program/heatmap_program.ts +12 -12
  66. package/src/render/program/hillshade_program.ts +12 -12
  67. package/src/render/program/line_program.ts +38 -38
  68. package/src/render/program/pattern.ts +28 -28
  69. package/src/render/program/raster_program.ts +21 -21
  70. package/src/render/program/symbol_program.ts +96 -96
  71. package/src/render/program.ts +25 -25
  72. package/src/render/texture.ts +9 -9
  73. package/src/render/uniform_binding.ts +1 -1
  74. package/src/render/vertex_array_object.ts +13 -13
  75. package/src/shaders/_prelude.fragment.glsl.g.ts +2 -0
  76. package/src/shaders/_prelude.vertex.glsl.g.ts +2 -0
  77. package/src/shaders/background.fragment.glsl.g.ts +2 -0
  78. package/src/shaders/background.vertex.glsl.g.ts +2 -0
  79. package/src/shaders/background_pattern.fragment.glsl.g.ts +2 -0
  80. package/src/shaders/background_pattern.vertex.glsl.g.ts +2 -0
  81. package/src/shaders/circle.fragment.glsl.g.ts +2 -0
  82. package/src/shaders/circle.vertex.glsl.g.ts +2 -0
  83. package/src/shaders/clipping_mask.fragment.glsl.g.ts +2 -0
  84. package/src/shaders/clipping_mask.vertex.glsl.g.ts +2 -0
  85. package/src/shaders/collision_box.fragment.glsl.g.ts +2 -0
  86. package/src/shaders/collision_box.vertex.glsl.g.ts +2 -0
  87. package/src/shaders/collision_circle.fragment.glsl.g.ts +2 -0
  88. package/src/shaders/collision_circle.vertex.glsl.g.ts +2 -0
  89. package/src/shaders/debug.fragment.glsl.g.ts +2 -0
  90. package/src/shaders/debug.vertex.glsl.g.ts +2 -0
  91. package/src/shaders/fill.fragment.glsl.g.ts +2 -0
  92. package/src/shaders/fill.vertex.glsl.g.ts +2 -0
  93. package/src/shaders/fill_extrusion.fragment.glsl.g.ts +2 -0
  94. package/src/shaders/fill_extrusion.vertex.glsl.g.ts +2 -0
  95. package/src/shaders/fill_extrusion_pattern.fragment.glsl.g.ts +2 -0
  96. package/src/shaders/fill_extrusion_pattern.vertex.glsl.g.ts +2 -0
  97. package/src/shaders/fill_outline.fragment.glsl.g.ts +2 -0
  98. package/src/shaders/fill_outline.vertex.glsl.g.ts +2 -0
  99. package/src/shaders/fill_outline_pattern.fragment.glsl.g.ts +2 -0
  100. package/src/shaders/fill_outline_pattern.vertex.glsl.g.ts +2 -0
  101. package/src/shaders/fill_pattern.fragment.glsl.g.ts +2 -0
  102. package/src/shaders/fill_pattern.vertex.glsl.g.ts +2 -0
  103. package/src/shaders/heatmap.fragment.glsl.g.ts +2 -0
  104. package/src/shaders/heatmap.vertex.glsl.g.ts +2 -0
  105. package/src/shaders/heatmap_texture.fragment.glsl.g.ts +2 -0
  106. package/src/shaders/heatmap_texture.vertex.glsl.g.ts +2 -0
  107. package/src/shaders/hillshade.fragment.glsl.g.ts +2 -0
  108. package/src/shaders/hillshade.vertex.glsl.g.ts +2 -0
  109. package/src/shaders/hillshade_prepare.fragment.glsl.g.ts +2 -0
  110. package/src/shaders/hillshade_prepare.vertex.glsl.g.ts +2 -0
  111. package/src/shaders/line.fragment.glsl.g.ts +2 -0
  112. package/src/shaders/line.vertex.glsl.g.ts +2 -0
  113. package/src/shaders/line_gradient.fragment.glsl.g.ts +2 -0
  114. package/src/shaders/line_gradient.vertex.glsl.g.ts +2 -0
  115. package/src/shaders/line_pattern.fragment.glsl.g.ts +2 -0
  116. package/src/shaders/line_pattern.vertex.glsl.g.ts +2 -0
  117. package/src/shaders/line_sdf.fragment.glsl.g.ts +2 -0
  118. package/src/shaders/line_sdf.vertex.glsl.g.ts +2 -0
  119. package/src/shaders/raster.fragment.glsl.g.ts +2 -0
  120. package/src/shaders/raster.vertex.glsl.g.ts +2 -0
  121. package/src/shaders/shaders.ts +52 -55
  122. package/src/shaders/symbol_icon.fragment.glsl.g.ts +2 -0
  123. package/src/shaders/symbol_icon.vertex.glsl.g.ts +2 -0
  124. package/src/shaders/symbol_sdf.fragment.glsl.g.ts +2 -0
  125. package/src/shaders/symbol_sdf.vertex.glsl.g.ts +2 -0
  126. package/src/shaders/symbol_text_and_icon.fragment.glsl.g.ts +2 -0
  127. package/src/shaders/symbol_text_and_icon.vertex.glsl.g.ts +2 -0
  128. package/src/source/canvas_source.test.ts +11 -12
  129. package/src/source/canvas_source.ts +4 -4
  130. package/src/source/geojson_worker_source.ts +23 -23
  131. package/src/source/geojson_wrapper.ts +8 -8
  132. package/src/source/image_source.test.ts +2 -2
  133. package/src/source/image_source.ts +6 -6
  134. package/src/source/pixels_to_tile_units.ts +6 -6
  135. package/src/source/query_features.ts +20 -20
  136. package/src/source/raster_dem_tile_source.test.ts +2 -2
  137. package/src/source/raster_tile_source.test.ts +2 -2
  138. package/src/source/rtl_text_plugin.ts +10 -10
  139. package/src/source/source.ts +29 -29
  140. package/src/source/source_cache.test.ts +32 -0
  141. package/src/source/source_cache.ts +7 -5
  142. package/src/source/source_state.ts +1 -1
  143. package/src/source/tile.test.ts +3 -3
  144. package/src/source/tile.ts +15 -15
  145. package/src/source/tile_cache.test.ts +6 -4
  146. package/src/source/tile_cache.ts +6 -6
  147. package/src/source/tile_id.test.ts +0 -1
  148. package/src/source/vector_tile_source.test.ts +16 -5
  149. package/src/source/vector_tile_source.ts +2 -3
  150. package/src/source/vector_tile_worker_source.test.ts +4 -4
  151. package/src/source/vector_tile_worker_source.ts +5 -5
  152. package/src/source/worker.test.ts +1 -1
  153. package/src/source/worker.ts +22 -22
  154. package/src/source/worker_source.ts +56 -56
  155. package/src/source/worker_tile.ts +4 -4
  156. package/src/style/evaluation_parameters.ts +3 -3
  157. package/src/style/format_section_override.test.ts +1 -1
  158. package/src/style/light.ts +10 -10
  159. package/src/style/load_glyph_range.test.ts +3 -5
  160. package/src/style/load_glyph_range.ts +6 -6
  161. package/src/style/load_sprite.ts +4 -4
  162. package/src/style/pauseable_placement.ts +1 -1
  163. package/src/style/properties.ts +69 -69
  164. package/src/style/query_utils.ts +7 -7
  165. package/src/style/style.test.ts +22 -15
  166. package/src/style/style.ts +29 -29
  167. package/src/style/style_glyph.ts +8 -8
  168. package/src/style/style_image.ts +58 -58
  169. package/src/style/style_layer/background_style_layer.ts +2 -2
  170. package/src/style/style_layer/{background_style_layer_properties.ts → background_style_layer_properties.g.ts} +0 -0
  171. package/src/style/style_layer/circle_style_layer.ts +10 -10
  172. package/src/style/style_layer/{circle_style_layer_properties.ts → circle_style_layer_properties.g.ts} +0 -0
  173. package/src/style/style_layer/custom_style_layer.ts +17 -17
  174. package/src/style/style_layer/fill_extrusion_style_layer.ts +10 -10
  175. package/src/style/style_layer/{fill_extrusion_style_layer_properties.ts → fill_extrusion_style_layer_properties.g.ts} +0 -0
  176. package/src/style/style_layer/fill_style_layer.ts +9 -9
  177. package/src/style/style_layer/{fill_style_layer_properties.ts → fill_style_layer_properties.g.ts} +0 -0
  178. package/src/style/style_layer/heatmap_style_layer.ts +2 -2
  179. package/src/style/style_layer/{heatmap_style_layer_properties.ts → heatmap_style_layer_properties.g.ts} +0 -0
  180. package/src/style/style_layer/hillshade_style_layer.ts +2 -2
  181. package/src/style/style_layer/{hillshade_style_layer_properties.ts → hillshade_style_layer_properties.g.ts} +0 -0
  182. package/src/style/style_layer/line_style_layer.ts +9 -9
  183. package/src/style/style_layer/{line_style_layer_properties.ts → line_style_layer_properties.g.ts} +0 -0
  184. package/src/style/style_layer/raster_style_layer.ts +2 -2
  185. package/src/style/style_layer/{raster_style_layer_properties.ts → raster_style_layer_properties.g.ts} +0 -0
  186. package/src/style/style_layer/symbol_style_layer.ts +7 -7
  187. package/src/style/style_layer/{symbol_style_layer_properties.ts → symbol_style_layer_properties.g.ts} +0 -0
  188. package/src/style/style_layer.ts +10 -10
  189. package/src/style/style_layer_index.ts +3 -3
  190. package/src/style/validate_style.ts +15 -15
  191. package/src/style-spec/error/validation_error.ts +1 -1
  192. package/src/style-spec/expression/compound_expression.ts +3 -3
  193. package/src/style-spec/expression/definitions/format.ts +11 -11
  194. package/src/style-spec/expression/definitions/interpolate.ts +5 -5
  195. package/src/style-spec/expression/definitions/match.ts +2 -2
  196. package/src/style-spec/expression/definitions/number_format.ts +11 -11
  197. package/src/style-spec/expression/expression.ts +8 -8
  198. package/src/style-spec/expression/index.ts +97 -97
  199. package/src/style-spec/expression/parsing_context.ts +11 -11
  200. package/src/style-spec/expression/types/collator.ts +9 -9
  201. package/src/style-spec/expression/types/resolved_image.ts +2 -2
  202. package/src/style-spec/expression/types.ts +14 -14
  203. package/src/style-spec/expression/values.ts +1 -1
  204. package/src/style-spec/feature_filter/index.ts +66 -66
  205. package/src/style-spec/function/convert.ts +3 -3
  206. package/src/style-spec/style-spec.ts +44 -44
  207. package/src/style-spec/util/color_spaces.ts +8 -8
  208. package/src/style-spec/util/result.ts +4 -4
  209. package/src/style-spec/validate/validate_filter.ts +58 -58
  210. package/src/style-spec/validate/validate_source.ts +63 -63
  211. package/src/style-spec/visit.ts +11 -11
  212. package/src/symbol/collision_feature.test.ts +1 -1
  213. package/src/symbol/collision_feature.ts +10 -10
  214. package/src/symbol/collision_index.ts +26 -26
  215. package/src/symbol/cross_tile_symbol_index.ts +17 -17
  216. package/src/symbol/get_anchors.ts +16 -16
  217. package/src/symbol/grid_index.ts +7 -7
  218. package/src/symbol/placement.ts +72 -72
  219. package/src/symbol/projection.ts +30 -30
  220. package/src/symbol/quads.ts +30 -30
  221. package/src/symbol/shaping.ts +160 -160
  222. package/src/symbol/symbol_layout.ts +119 -119
  223. package/src/symbol/symbol_size.ts +29 -29
  224. package/src/symbol/symbol_style_layer.test.ts +1 -1
  225. package/src/types/cancelable.ts +1 -1
  226. package/src/types/tilejson.ts +13 -13
  227. package/src/ui/anchor.ts +1 -1
  228. package/src/ui/camera.test.ts +9 -9
  229. package/src/ui/camera.ts +18 -18
  230. package/src/ui/control/attribution_control.test.ts +51 -16
  231. package/src/ui/control/attribution_control.ts +35 -16
  232. package/src/ui/control/control.ts +40 -40
  233. package/src/ui/control/fullscreen_control.ts +1 -1
  234. package/src/ui/control/geolocate_control.test.ts +1 -1
  235. package/src/ui/control/geolocate_control.ts +102 -102
  236. package/src/ui/control/logo_control.test.ts +5 -4
  237. package/src/ui/control/navigation_control.ts +3 -3
  238. package/src/ui/control/scale_control.test.ts +2 -2
  239. package/src/ui/control/scale_control.ts +5 -5
  240. package/src/ui/events.ts +289 -200
  241. package/src/ui/handler/box_zoom.test.ts +1 -1
  242. package/src/ui/handler/box_zoom.ts +1 -1
  243. package/src/ui/handler/dblclick_zoom.test.ts +1 -1
  244. package/src/ui/handler/drag_pan.test.ts +1 -1
  245. package/src/ui/handler/drag_rotate.test.ts +1 -1
  246. package/src/ui/handler/keyboard.test.ts +1 -1
  247. package/src/ui/handler/keyboard.ts +51 -51
  248. package/src/ui/handler/map_event.test.ts +1 -1
  249. package/src/ui/handler/map_event.ts +1 -1
  250. package/src/ui/handler/mouse.ts +1 -1
  251. package/src/ui/handler/mouse_rotate.test.ts +1 -1
  252. package/src/ui/handler/scroll_zoom.test.ts +3 -2
  253. package/src/ui/handler/scroll_zoom.ts +9 -9
  254. package/src/ui/handler/shim/drag_pan.ts +4 -4
  255. package/src/ui/handler/shim/drag_rotate.ts +1 -1
  256. package/src/ui/handler/shim/touch_zoom_rotate.ts +1 -1
  257. package/src/ui/handler/tap_recognizer.ts +4 -4
  258. package/src/ui/handler/touch_pan.ts +2 -2
  259. package/src/ui/handler/touch_zoom_rotate.test.ts +1 -1
  260. package/src/ui/handler/touch_zoom_rotate.ts +1 -1
  261. package/src/ui/handler_inertia.ts +6 -6
  262. package/src/ui/handler_manager.ts +44 -44
  263. package/src/ui/map/isMoving.test.ts +1 -1
  264. package/src/ui/map/isRotating.test.ts +1 -1
  265. package/src/ui/map/isZooming.test.ts +1 -1
  266. package/src/ui/map.test.ts +26 -14
  267. package/src/ui/map.ts +107 -102
  268. package/src/ui/map_events.test.ts +1 -1
  269. package/src/ui/marker.test.ts +12 -12
  270. package/src/ui/marker.ts +37 -37
  271. package/src/ui/popup.test.ts +7 -7
  272. package/src/ui/popup.ts +9 -9
  273. package/src/util/actor.test.ts +41 -10
  274. package/src/util/actor.ts +8 -8
  275. package/src/util/ajax.test.ts +29 -21
  276. package/src/util/ajax.ts +51 -30
  277. package/src/util/browser.ts +1 -1
  278. package/src/util/classify_rings.test.ts +1 -1
  279. package/src/util/color_ramp.ts +5 -5
  280. package/src/util/config.ts +2 -2
  281. package/src/util/dispatcher.ts +1 -1
  282. package/src/util/dom.ts +2 -2
  283. package/src/util/evented.ts +1 -1
  284. package/src/util/find_pole_of_inaccessibility.ts +3 -3
  285. package/src/util/image.ts +5 -5
  286. package/src/util/performance.ts +7 -7
  287. package/src/util/request_manager.ts +4 -4
  288. package/src/util/resolve_tokens.ts +4 -4
  289. package/src/util/struct_array.test.ts +1 -1
  290. package/src/util/struct_array.ts +15 -15
  291. package/src/util/task_queue.ts +3 -3
  292. package/src/util/tile_request_cache.ts +3 -3
  293. package/src/util/transferable_grid_index.ts +4 -4
  294. package/src/util/util.ts +8 -8
  295. package/src/util/web_worker.ts +4 -68
  296. package/src/util/web_worker_transfer.test.ts +3 -0
  297. package/src/util/web_worker_transfer.ts +21 -17
  298. package/src/util/worker_pool.ts +1 -1
  299. package/build/.eslintrc +0 -21
  300. package/build/glsl_to_js.js +0 -12
  301. package/build/post-ts-build.js +0 -43
  302. package/build/release-notes.md.ejs +0 -8
  303. package/build/test/build-tape.js +0 -17
  304. package/build/web_worker_replacement.js +0 -5
  305. package/dist/package.json +0 -1
  306. package/src/style-spec/validate_spec.test.ts +0 -29
  307. package/src/symbol/shaping.test.ts +0 -392
  308. package/src/types/glsl.d.ts +0 -4
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "maplibre-gl",
3
3
  "description": "BSD licensed community fork of mapbox-gl, a WebGL interactive maps library",
4
- "version": "2.1.0",
4
+ "version": "2.1.4",
5
5
  "main": "dist/maplibre-gl.js",
6
6
  "style": "dist/maplibre-gl.css",
7
7
  "license": "BSD-3-Clause",
@@ -12,7 +12,7 @@
12
12
  "types": "dist/maplibre-gl.d.ts",
13
13
  "type": "module",
14
14
  "dependencies": {
15
- "@mapbox/geojson-rewind": "^0.5.0",
15
+ "@mapbox/geojson-rewind": "^0.5.1",
16
16
  "@mapbox/jsonlint-lines-primitives": "^2.0.2",
17
17
  "@mapbox/mapbox-gl-supported": "^2.0.1",
18
18
  "@mapbox/point-geometry": "^0.1.0",
@@ -21,21 +21,20 @@
21
21
  "@mapbox/vector-tile": "^1.3.1",
22
22
  "@mapbox/whoots-js": "^3.1.0",
23
23
  "csscolorparser": "~1.0.3",
24
- "earcut": "^2.2.2",
24
+ "earcut": "^2.2.3",
25
25
  "geojson-vt": "^3.2.1",
26
- "gl-matrix": "^3.2.1",
26
+ "gl-matrix": "^3.4.3",
27
27
  "murmurhash-js": "^1.0.0",
28
28
  "pbf": "^3.2.1",
29
- "potpack": "^1.0.1",
29
+ "potpack": "^1.0.2",
30
30
  "quickselect": "^2.0.0",
31
31
  "supercluster": "^7.1.4",
32
32
  "tinyqueue": "^2.0.3",
33
- "vt-pbf": "^3.1.1"
33
+ "vt-pbf": "^3.1.3"
34
34
  },
35
35
  "devDependencies": {
36
- "@babel/core": "^7.16.0",
37
36
  "@mapbox/gazetteer": "^5.1.0",
38
- "@mapbox/mapbox-gl-rtl-text": "^0.2.1",
37
+ "@mapbox/mapbox-gl-rtl-text": "^0.2.3",
39
38
  "@mapbox/mvt-fixtures": "^3.6.0",
40
39
  "@rollup/plugin-commonjs": "^21.0.1",
41
40
  "@rollup/plugin-json": "^4.1.0",
@@ -43,164 +42,141 @@
43
42
  "@rollup/plugin-replace": "^3.0.1",
44
43
  "@rollup/plugin-strip": "^2.1.0",
45
44
  "@rollup/plugin-typescript": "^8.3.0",
46
- "@types/babel__core": "^7.1.12",
47
- "@types/babelify": "^7.3.6",
48
- "@types/benchmark": "^2.1.0",
49
- "@types/browserify": "^12.0.36",
45
+ "@swc/cli": "^0.1.55",
46
+ "@swc/core": "^1.2.135",
47
+ "@swc/jest": "^0.2.17",
48
+ "@types/benchmark": "^2.1.1",
49
+ "@types/browserify": "^12.0.37",
50
50
  "@types/cssnano": "^5.0.0",
51
- "@types/d3": "^5.16.4",
52
- "@types/diff": "^4.0.2",
51
+ "@types/d3": "^7.1.0",
52
+ "@types/diff": "^5.0.2",
53
53
  "@types/earcut": "^2.1.1",
54
- "@types/ejs": "^3.1.0",
55
- "@types/eslint": "^8.2.1",
54
+ "@types/eslint": "^8.4.1",
56
55
  "@types/geojson": "^7946.0.8",
57
56
  "@types/gl": "^4.1.0",
58
- "@types/glob": "^7.1.3",
59
- "@types/jest": "^27.0.2",
57
+ "@types/glob": "^7.2.0",
58
+ "@types/jest": "^27.4.0",
60
59
  "@types/jsdom": "^16.2.14",
61
- "@types/lodash.template": "^4.5.0",
62
60
  "@types/mapbox__point-geometry": "^0.1.2",
63
61
  "@types/mapbox__vector-tile": "^1.3.0",
64
- "@types/minimist": "^1.2.1",
62
+ "@types/minimist": "^1.2.2",
65
63
  "@types/murmurhash-js": "^1.0.3",
66
- "@types/node-notifier": "^8.0.0",
67
- "@types/offscreencanvas": "^2019.6.3",
64
+ "@types/nise": "^1.4.0",
65
+ "@types/offscreencanvas": "^2019.6.4",
68
66
  "@types/pbf": "^3.0.2",
69
- "@types/pixelmatch": "^5.2.2",
67
+ "@types/pixelmatch": "^5.2.4",
70
68
  "@types/pngjs": "^6.0.1",
71
- "@types/puppeteer": "^5.4.4",
72
- "@types/react": "^17.0.19",
73
- "@types/react-dom": "^17.0.9",
74
- "@types/request": "^2.48.7",
75
- "@types/rollup-plugin-json": "^3.0.2",
76
- "@types/selenium-webdriver": "^4.0.16",
69
+ "@types/react": "^17.0.38",
70
+ "@types/react-dom": "^17.0.11",
71
+ "@types/request": "^2.48.8",
72
+ "@types/rollup-plugin-json": "^3.0.3",
77
73
  "@types/shuffle-seed": "^1.1.0",
78
- "@types/sinon": "^10.0.2",
79
- "@types/stylelint": "^14.0.0",
80
- "@types/supercluster": "^5.0.2",
81
- "@types/tape": "^4.13.2",
74
+ "@types/supercluster": "^5.0.3",
82
75
  "@types/window-or-global": "^1.0.4",
83
- "@typescript-eslint/eslint-plugin": "^5.9.1",
84
- "@typescript-eslint/parser": "^5.9.1",
76
+ "@typescript-eslint/eslint-plugin": "^5.10.1",
77
+ "@typescript-eslint/parser": "^5.10.1",
85
78
  "address": "^1.1.2",
86
- "babel-eslint": "^10.0.1",
87
- "babel-jest": "^27.2.5",
88
- "babelify": "^10.0.0",
89
79
  "benchmark": "^2.1.4",
90
80
  "browserify": "^17.0.0",
91
81
  "canvas": "^2.9.0",
92
- "chokidar": "^3.0.2",
93
- "cssnano": "^5.0.8",
94
- "d3": "^5.16.0",
82
+ "cssnano": "^5.0.16",
83
+ "d3": "^7.3.0",
95
84
  "d3-queue": "^3.0.7",
96
- "diff": "^4.0.1",
97
- "documentation": "^12.3.0",
98
- "dts-bundle-generator": "^6.0.0",
99
- "ejs": "^3.1.6",
85
+ "diff": "^5.0.0",
86
+ "documentation": "13.0.2",
87
+ "dts-bundle-generator": "^6.4.0",
100
88
  "eslint": "^8.7.0",
101
89
  "eslint-config-mourner": "^3.0.0",
102
- "eslint-plugin-html": "^6.1.2",
103
- "eslint-plugin-import": "^2.24.2",
90
+ "eslint-plugin-html": "^6.2.0",
91
+ "eslint-plugin-import": "^2.25.4",
104
92
  "eslint-plugin-jest": "^26.0.0",
105
- "eslint-plugin-jsdoc": "^37.0.3",
106
- "eslint-plugin-react": "^7.25.1",
93
+ "eslint-plugin-jsdoc": "^37.7.0",
94
+ "eslint-plugin-react": "^7.28.0",
107
95
  "gl": "^5.0.0",
108
- "glob": "^7.1.4",
109
- "is-builtin-module": "^3.0.0",
110
- "jest": "^27.2.4",
96
+ "glob": "^7.2.0",
97
+ "husky": "^7.0.4",
98
+ "is-builtin-module": "^3.1.0",
99
+ "jest": "^27.5.1",
111
100
  "jest-canvas-mock": "^2.3.1",
112
- "jest-raw-loader": "^1.0.1",
101
+ "jest-playwright-preset": "^1.7.0",
113
102
  "jsdom": "^19.0.0",
114
103
  "json-stringify-pretty-compact": "^3.0.0",
115
- "lodash": "^4.17.19",
116
- "lodash.template": "^4.5.0",
117
104
  "mapbox-gl-styles": "^2.0.2",
118
105
  "minimist": "^1.2.5",
119
106
  "mock-geolocation": "^1.0.11",
120
- "node-notifier": "^10.0.0",
107
+ "nise": "^5.1.1",
121
108
  "node-plantuml": "^0.9.0",
122
109
  "npm-font-open-sans": "^1.1.0",
123
110
  "npm-run-all": "^4.1.5",
124
- "nyc": "^15.1.0",
125
- "pdf-merger-js": "^3.2.1",
126
- "pixelmatch": "^5.1.0",
111
+ "pdf-merger-js": "^3.3.2",
112
+ "pixelmatch": "^5.2.1",
113
+ "playwright": "^1.18.1",
127
114
  "pngjs": "^6.0.0",
128
- "postcss": "^8.3.11",
129
- "postcss-cli": "^9.0.2",
115
+ "postcss": "^8.4.5",
116
+ "postcss-cli": "^9.1.0",
130
117
  "postcss-inline-svg": "^5.0.0",
131
- "pretty-bytes": "^5.1.0",
132
- "puppeteer": "^13.0.1",
118
+ "pretty-bytes": "^5.6.0",
133
119
  "react": "^17.0.2",
134
120
  "react-dom": "^17.0.2",
135
121
  "request": "^2.88.0",
136
- "rollup": "^2.56.3",
122
+ "rollup": "^2.66.1",
137
123
  "rollup-plugin-sourcemaps": "^0.6.3",
138
124
  "rollup-plugin-terser": "^7.0.2",
139
125
  "rollup-plugin-unassert": "^0.3.0",
140
- "rollup-pluginutils": "^2.8.2",
141
126
  "rw": "^1.3.3",
142
- "selenium-webdriver": "^4.0.0-rc-1",
143
127
  "semver": "^7.3.5",
144
128
  "shuffle-seed": "^1.1.6",
145
- "sinon": "^12.0.1",
146
- "source-map-explorer": "^2.5.1",
129
+ "source-map-explorer": "^2.5.2",
147
130
  "st": "^3.0.0",
148
131
  "stylelint": "^14.3.0",
149
132
  "stylelint-config-standard": "^24.0.0",
150
- "tap-parser": "^10.0.1",
151
- "tape": "^5.3.1",
152
- "tape-filter": "^1.0.4",
153
- "testem": "^3.6.0",
154
- "ts-jest": "^27.0.5",
155
- "ts-node": "^10.4.0",
156
- "typescript": "^4.5.4"
157
- },
158
- "browser": {
159
- "./rollup/build/tsc/src/util/web_worker.js": "./build/web_worker_replacement.js"
133
+ "ts-node": "^10.5.0",
134
+ "typescript": "^4.5.5"
160
135
  },
161
136
  "scripts": {
162
- "build-post-ts": "node build/post-ts-build.js ./rollup/build/tsc/src/shaders",
163
- "build-post-ts-min": "node build/post-ts-build.js ./rollup/build/tsc/src/shaders true",
164
- "build-tsc": "tsc --outDir rollup/build/tsc && npm run build-post-ts",
165
- "build-tsc-min": "tsc --outDir rollup/build/tsc && npm run build-post-ts-min",
166
- "build-dev": "npm run build-tsc && rollup -c --environment BUILD:dev",
167
- "watch-dev": "rollup -c --environment BUILD:dev --watch",
168
- "build-prod": "npm run build-tsc && rollup -c --environment BUILD:production",
169
- "build-prod-min": "npm run build-tsc-min && rollup -c --environment BUILD:production,MINIFY:true",
170
- "build-csp": "rollup -c rollup.config.csp.js",
171
- "build-query-suite": "rollup -c test/integration/rollup.config.test.js",
137
+ "generate-shaders": "node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-shaders.ts",
138
+ "generate-struct-arrays": "node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-struct-arrays.ts",
139
+ "generate-style-code": "node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-style-code.ts",
140
+ "generate-style-spec": "node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-style-spec.ts",
141
+ "generate-typings": "node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-typings.ts",
142
+ "generate-query-test-fixtures": "node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-query-test-fixtures.ts",
143
+ "build-dev": "rollup --configPlugin @rollup/plugin-typescript -c --environment BUILD:dev",
144
+ "watch-dev": "rollup --configPlugin @rollup/plugin-typescript -c --environment BUILD:dev --watch",
145
+ "build-prod": "rollup --configPlugin @rollup/plugin-typescript -c --environment BUILD:production",
146
+ "build-prod-min": "rollup --configPlugin @rollup/plugin-typescript -c --environment BUILD:production,MINIFY:true",
147
+ "build-csp": "rollup --configPlugin @rollup/plugin-typescript -c rollup.config.csp.ts",
172
148
  "build-css": "postcss -o dist/maplibre-gl.css src/css/maplibre-gl.css",
173
- "build-style-spec": "npm run build-tsc && rollup -c rollup.config.style-spec.js && rollup -c rollup.config.style-spec.js --environment esm",
149
+ "build-style-spec": "rollup --configPlugin @rollup/plugin-typescript -c rollup.config.style-spec.ts && rollup --configPlugin @rollup/plugin-typescript -c rollup.config.style-spec.ts --environment esm",
174
150
  "build-diagrams": "cd docs/diagrams; ls *.plantuml | xargs -I {} puml generate --svg {} -o {}.svg",
175
151
  "watch-css": "postcss --watch -o dist/maplibre-gl.css src/css/maplibre-gl.css",
176
- "build-benchmarks": "npm run build-dev && BENCHMARK_VERSION=${BENCHMARK_VERSION:-\"$(git rev-parse --abbrev-ref HEAD) $(git rev-parse --short=7 HEAD)\"} rollup -c bench/rollup_config_benchmarks.js",
177
- "watch-benchmarks": "BENCHMARK_VERSION=${BENCHMARK_VERSION:-\"$(git rev-parse --abbrev-ref HEAD) $(git rev-parse --short=7 HEAD)\"} rollup -c bench/rollup_config_benchmarks.js --watch",
152
+ "build-benchmarks": "npm run build-dev && rollup --configPlugin @rollup/plugin-typescript -c test/bench/rollup_config_benchmarks.ts",
153
+ "watch-benchmarks": "rollup --configPlugin @rollup/plugin-typescript -c test/bench/rollup_config_benchmarks.ts --watch",
178
154
  "start-server": "st --no-cache -H 0.0.0.0 --port 9966 --index index.html .",
179
- "start": "run-p watch-css watch-query start-server",
155
+ "start-server-at-test": "st --no-cache -H 0.0.0.0 --port 9966 --index index.html -d test",
156
+ "start": "run-p watch-css start-server",
180
157
  "start-debug": "run-p watch-css watch-dev start-server",
181
- "start-tests": "run-p watch-css watch-query start-server",
182
- "start-bench": "run-p watch-css watch-benchmarks start-server",
183
- "lint": "eslint --ext \".ts,.js,.html\" --ignore-path .gitignore src build debug/*.html bench",
158
+ "start-bench": "run-p watch-css watch-benchmarks start-server-at-test",
159
+ "lint": "eslint --cache --ext \".ts,.js,.html\" --ignore-path .gitignore src test build debug/*.html jest.config.js",
184
160
  "lint-docs": "documentation lint src/index.ts",
185
161
  "lint-css": "stylelint \"src/css/maplibre-gl.css\"",
186
162
  "test": "run-s lint lint-css lint-docs test-unit",
187
- "test-suite": "run-s test-render test-query test-expressions",
188
- "test-suite-clean": "find test/integration/{render,query, expressions}-tests -mindepth 2 -type d -exec test -e \"{}/actual.png\" \\; -not \\( -exec test -e \"{}/style.json\" \\; \\) -print | xargs -t rm -r",
189
163
  "test-build": "jest ./test/build",
190
- "test-browser": "jest ./test/browser",
191
- "test-render": "node --experimental-specifier-resolution=node --experimental-json-modules --max-old-space-size=2048 test/render.test.js",
192
- "watch-query": "testem -f test/integration/testem.cjs",
193
- "test-query": "testem ci -f test/integration/testem.cjs -R xunit > test/integration/query-tests/test-results.xml",
194
- "test-expressions": "node --experimental-specifier-resolution=node test/expression.test.js",
195
- "test-cov": "nyc --reporter=text-summary --reporter=lcov --cache run-s test-unit test-expressions test-query test-render",
164
+ "test-symbol-shaping": "jest ./test/integration/symbol-shaping",
165
+ "test-style-spec": "jest ./test/integration/style-spec",
166
+ "test-browser": "jest -c ./jest.config.e2e.js ./test/integration/browser",
167
+ "test-render": "node --loader ts-node/esm --experimental-specifier-resolution=node --experimental-json-modules --max-old-space-size=2048 test/integration/render/render.test.ts",
168
+ "test-query": "jest -c ./jest.config.e2e.js test/integration/query",
169
+ "test-expression": "jest test/integration/expression",
196
170
  "test-unit": "jest ./src",
197
- "codegen": "node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-style-code.ts && node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-struct-arrays.ts && node --loader ts-node/esm --experimental-specifier-resolution=node build/generate-style-spec.ts",
198
- "benchmark": "node bench/run-benchmarks.js",
199
- "gl-stats": "node bench/gl-stats.js"
171
+ "codegen": "npm run generate-style-code && npm run generate-struct-arrays && npm run generate-style-spec && npm run generate-shaders",
172
+ "benchmark": "node --loader ts-node/esm --experimental-specifier-resolution=node test/bench/run-benchmarks.ts",
173
+ "gl-stats": "node --loader ts-node/esm --experimental-specifier-resolution=node test/bench/gl-stats.ts",
174
+ "postinstall": "node ./postinstall.js"
200
175
  },
201
176
  "files": [
202
177
  "build/",
203
178
  "dist/*",
204
- "src/"
179
+ "src/",
180
+ "postinstall.js"
205
181
  ]
206
182
  }
package/postinstall.js ADDED
@@ -0,0 +1,5 @@
1
+ import {execSync} from 'child_process';
2
+
3
+ if (process.env.NODE_ENV !== 'production') {
4
+ execSync('npm run codegen && npm run generate-query-test-fixtures && husky install');
5
+ }
@@ -3,7 +3,7 @@
3
3
  font: 12px/20px "Helvetica Neue", Arial, Helvetica, sans-serif;
4
4
  overflow: hidden;
5
5
  position: relative;
6
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
6
+ -webkit-tap-highlight-color: rgb(0 0 0 / 0%);
7
7
  }
8
8
 
9
9
  .maplibregl-canvas,
@@ -117,9 +117,9 @@
117
117
 
118
118
  .maplibregl-ctrl-group:not(:empty),
119
119
  .mapboxgl-ctrl-group:not(:empty) {
120
- -moz-box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
121
- -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
122
- box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
120
+ -moz-box-shadow: 0 0 2px rgb(0 0 0 / 10%);
121
+ -webkit-box-shadow: 0 0 2px rgb(0 0 0 / 10%);
122
+ box-shadow: 0 0 0 2px rgb(0 0 0 / 10%);
123
123
  }
124
124
 
125
125
  @media (-ms-high-contrast: active) {
@@ -179,7 +179,7 @@
179
179
  .maplibregl-ctrl-group button:focus,
180
180
  .mapboxgl-ctrl-attrib-button:focus,
181
181
  .mapboxgl-ctrl-group button:focus {
182
- box-shadow: 0 0 2px 2px rgba(0, 150, 255, 1);
182
+ box-shadow: 0 0 2px 2px rgb(0 150 255 / 100%);
183
183
  }
184
184
 
185
185
  .maplibregl-ctrl button:disabled,
@@ -194,12 +194,12 @@
194
194
 
195
195
  .maplibregl-ctrl button:not(:disabled):hover,
196
196
  .mapboxgl-ctrl button:not(:disabled):hover {
197
- background-color: rgba(0, 0, 0, 0.05);
197
+ background-color: rgb(0 0 0 / 5%);
198
198
  }
199
199
 
200
200
  .maplibregl-ctrl-group button:focus:focus-visible,
201
201
  .mapboxgl-ctrl-group button:focus:focus-visible {
202
- box-shadow: 0 0 2px 2px rgba(0, 150, 255, 1);
202
+ box-shadow: 0 0 2px 2px rgb(0 150 255 / 100%);
203
203
  }
204
204
 
205
205
  .maplibregl-ctrl-group button:focus:not(:focus-visible),
@@ -298,7 +298,7 @@
298
298
  @media (-ms-high-contrast: active) {
299
299
  .maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon,
300
300
  .mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon {
301
- @svg-load ctrl-compass-white url(svg/maplibregl-ctrl-compass.svg) {
301
+ @svg-load ctrl-compass-white url("svg/maplibregl-ctrl-compass.svg") {
302
302
  fill: #fff;
303
303
  #south { fill: #999; }
304
304
  }
@@ -314,53 +314,53 @@
314
314
  }
315
315
  }
316
316
 
317
- @svg-load ctrl-geolocate url(svg/maplibregl-ctrl-geolocate.svg) {
317
+ @svg-load ctrl-geolocate url("svg/maplibregl-ctrl-geolocate.svg") {
318
318
  fill: #333;
319
319
  #stroke { display: none; }
320
320
  }
321
321
 
322
- @svg-load ctrl-geolocate-white url(svg/maplibregl-ctrl-geolocate.svg) {
322
+ @svg-load ctrl-geolocate-white url("svg/maplibregl-ctrl-geolocate.svg") {
323
323
  fill: #fff;
324
324
  #stroke { display: none; }
325
325
  }
326
326
 
327
- @svg-load ctrl-geolocate-black url(svg/maplibregl-ctrl-geolocate.svg) {
327
+ @svg-load ctrl-geolocate-black url("svg/maplibregl-ctrl-geolocate.svg") {
328
328
  fill: #000;
329
329
  #stroke { display: none; }
330
330
  }
331
331
 
332
- @svg-load ctrl-geolocate-disabled url(svg/maplibregl-ctrl-geolocate.svg) {
332
+ @svg-load ctrl-geolocate-disabled url("svg/maplibregl-ctrl-geolocate.svg") {
333
333
  fill: #aaa;
334
334
  #stroke { fill: #f00; }
335
335
  }
336
336
 
337
- @svg-load ctrl-geolocate-disabled-white url(svg/maplibregl-ctrl-geolocate.svg) {
337
+ @svg-load ctrl-geolocate-disabled-white url("svg/maplibregl-ctrl-geolocate.svg") {
338
338
  fill: #999;
339
339
  #stroke { fill: #f00; }
340
340
  }
341
341
 
342
- @svg-load ctrl-geolocate-disabled-black url(svg/maplibregl-ctrl-geolocate.svg) {
342
+ @svg-load ctrl-geolocate-disabled-black url("svg/maplibregl-ctrl-geolocate.svg") {
343
343
  fill: #666;
344
344
  #stroke { fill: #f00; }
345
345
  }
346
346
 
347
- @svg-load ctrl-geolocate-active url(svg/maplibregl-ctrl-geolocate.svg) {
347
+ @svg-load ctrl-geolocate-active url("svg/maplibregl-ctrl-geolocate.svg") {
348
348
  fill: #33b5e5;
349
349
  #stroke { display: none; }
350
350
  }
351
351
 
352
- @svg-load ctrl-geolocate-active-error url(svg/maplibregl-ctrl-geolocate.svg) {
352
+ @svg-load ctrl-geolocate-active-error url("svg/maplibregl-ctrl-geolocate.svg") {
353
353
  fill: #e58978;
354
354
  #stroke { display: none; }
355
355
  }
356
356
 
357
- @svg-load ctrl-geolocate-background url(svg/maplibregl-ctrl-geolocate.svg) {
357
+ @svg-load ctrl-geolocate-background url("svg/maplibregl-ctrl-geolocate.svg") {
358
358
  fill: #33b5e5;
359
359
  #stroke { display: none; }
360
360
  #dot { display: none; }
361
361
  }
362
362
 
363
- @svg-load ctrl-geolocate-background-error url(svg/maplibregl-ctrl-geolocate.svg) {
363
+ @svg-load ctrl-geolocate-background-error url("svg/maplibregl-ctrl-geolocate.svg") {
364
364
  fill: #e54e33;
365
365
  #stroke { display: none; }
366
366
  #dot { display: none; }
@@ -494,7 +494,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
494
494
  @media (-ms-high-contrast: active) {
495
495
  a.maplibregl-ctrl-logo,
496
496
  a.mapboxgl-ctrl-logo {
497
- @svg-load ctrl-logo-white url(svg/maplibregl-ctrl-logo.svg) {
497
+ @svg-load ctrl-logo-white url("svg/maplibregl-ctrl-logo.svg") {
498
498
  #outline { opacity: 1; }
499
499
  #fill { opacity: 1; }
500
500
  }
@@ -507,7 +507,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
507
507
  @media (-ms-high-contrast: black-on-white) {
508
508
  a.maplibregl-ctrl-logo,
509
509
  a.mapboxgl-ctrl-logo {
510
- @svg-load ctrl-logo-black url(svg/maplibregl-ctrl-logo.svg) {
510
+ @svg-load ctrl-logo-black url("svg/maplibregl-ctrl-logo.svg") {
511
511
  #outline { opacity: 1; fill: #fff; stroke: #fff; }
512
512
  #fill { opacity: 1; fill: #000; }
513
513
  }
@@ -519,7 +519,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
519
519
  .maplibregl-ctrl.maplibregl-ctrl-attrib,
520
520
  .mapboxgl-ctrl.mapboxgl-ctrl-attrib {
521
521
  padding: 0 5px;
522
- background-color: rgba(255, 255, 255, 0.5);
522
+ background-color: rgb(255 255 255 / 50%);
523
523
  margin: 0;
524
524
  }
525
525
 
@@ -559,7 +559,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
559
559
  cursor: pointer;
560
560
  position: absolute;
561
561
  background-image: svg-load("svg/maplibregl-ctrl-attrib.svg");
562
- background-color: rgba(255, 255, 255, 0.5);
562
+ background-color: rgb(255 255 255 / 50%);
563
563
  width: 24px;
564
564
  height: 24px;
565
565
  box-sizing: border-box;
@@ -586,7 +586,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
586
586
 
587
587
  .maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button,
588
588
  .mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button {
589
- background-color: rgba(0, 0, 0, 0.05);
589
+ background-color: rgb(0 0 0 / 5%);
590
590
  }
591
591
 
592
592
  .maplibregl-ctrl-bottom-right > .maplibregl-ctrl-attrib.maplibregl-compact::after,
@@ -630,7 +630,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
630
630
 
631
631
  .maplibregl-ctrl-attrib a,
632
632
  .mapboxgl-ctrl-attrib a {
633
- color: rgba(0, 0, 0, 0.75);
633
+ color: rgb(0 0 0 / 75%);
634
634
  text-decoration: none;
635
635
  }
636
636
 
@@ -647,7 +647,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
647
647
 
648
648
  .maplibregl-ctrl-scale,
649
649
  .mapboxgl-ctrl-scale {
650
- background-color: rgba(255, 255, 255, 0.75);
650
+ background-color: rgb(255 255 255 / 75%);
651
651
  font-size: 10px;
652
652
  border-width: medium 2px 2px;
653
653
  border-style: none solid solid;
@@ -789,7 +789,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
789
789
 
790
790
  .maplibregl-popup-close-button:hover,
791
791
  .mapboxgl-popup-close-button:hover {
792
- background-color: rgba(0, 0, 0, 0.05);
792
+ background-color: rgb(0 0 0 / 5%);
793
793
  }
794
794
 
795
795
  .maplibregl-popup-content,
@@ -797,7 +797,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
797
797
  position: relative;
798
798
  background: #fff;
799
799
  border-radius: 3px;
800
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
800
+ box-shadow: 0 1px 2px rgb(0 0 0 / 10%);
801
801
  padding: 15px 10px;
802
802
  pointer-events: auto;
803
803
  }
@@ -884,7 +884,7 @@ a.mapboxgl-ctrl-logo.mapboxgl-compact {
884
884
  top: -2px;
885
885
  width: 19px;
886
886
  box-sizing: border-box;
887
- box-shadow: 0 0 3px rgba(0, 0, 0, 0.35);
887
+ box-shadow: 0 0 3px rgb(0 0 0 / 35%);
888
888
  }
889
889
 
890
890
  @-webkit-keyframes maplibregl-user-location-dot-pulse {
File without changes
@@ -1,4 +1,4 @@
1
- import {CircleLayoutArray} from '../array_types';
1
+ import {CircleLayoutArray} from '../array_types.g';
2
2
 
3
3
  import {members as layoutAttributes} from './circle_attributes';
4
4
  import SegmentVector from '../segment';
@@ -13,7 +13,7 @@ import ZoomHistory from '../../style/zoom_history';
13
13
  import {BucketFeature, BucketParameters} from '../bucket';
14
14
 
15
15
  // Load a fill feature from fixture tile.
16
- const vt = new VectorTile(new Protobuf(fs.readFileSync(path.resolve(__dirname, '../../../test/fixtures/mbsv5-6-18-23.vector.pbf'))));
16
+ const vt = new VectorTile(new Protobuf(fs.readFileSync(path.resolve(__dirname, '../../../test/unit/assets/mbsv5-6-18-23.vector.pbf'))));
17
17
  const feature = vt.layers.water.feature(0);
18
18
 
19
19
  function createPolygon(numPoints) {
@@ -1,4 +1,4 @@
1
- import {FillLayoutArray} from '../array_types';
1
+ import {FillLayoutArray} from '../array_types.g';
2
2
 
3
3
  import {members as layoutAttributes} from './fill_attributes';
4
4
  import SegmentVector from '../segment';
@@ -126,14 +126,14 @@ class FillBucket implements Bucket {
126
126
  }
127
127
 
128
128
  update(states: FeatureStates, vtLayer: VectorTileLayer, imagePositions: {
129
- [_: string]: ImagePosition;
129
+ [_: string]: ImagePosition;
130
130
  }) {
131
131
  if (!this.stateDependentLayers.length) return;
132
132
  this.programConfigurations.updatePaintArrays(states, vtLayer, this.stateDependentLayers, imagePositions);
133
133
  }
134
134
 
135
135
  addFeatures(options: PopulateParameters, canonical: CanonicalTileID, imagePositions: {
136
- [_: string]: ImagePosition;
136
+ [_: string]: ImagePosition;
137
137
  }) {
138
138
  for (const feature of this.patternFeatures) {
139
139
  this.addFeature(feature, feature.geometry, feature.index, canonical, imagePositions);
@@ -168,7 +168,7 @@ class FillBucket implements Bucket {
168
168
  }
169
169
 
170
170
  addFeature(feature: BucketFeature, geometry: Array<Array<Point>>, index: number, canonical: CanonicalTileID, imagePositions: {
171
- [_: string]: ImagePosition;
171
+ [_: string]: ImagePosition;
172
172
  }) {
173
173
  for (const polygon of classifyRings(geometry, EARCUT_MAX_RINGS)) {
174
174
  let numVertices = 0;
@@ -1,4 +1,4 @@
1
- import {FillExtrusionLayoutArray} from '../array_types';
1
+ import {FillExtrusionLayoutArray} from '../array_types.g';
2
2
 
3
3
  import {members as layoutAttributes} from './fill_extrusion_attributes';
4
4
  import SegmentVector from '../segment';
@@ -11,7 +11,7 @@ import EvaluationParameters from '../../style/evaluation_parameters';
11
11
  import {BucketFeature, BucketParameters} from '../bucket';
12
12
 
13
13
  // Load a line feature from fixture tile.
14
- const vt = new VectorTile(new Protobuf(fs.readFileSync(path.resolve(__dirname, '../../../test/fixtures/mbsv5-6-18-23.vector.pbf'))));
14
+ const vt = new VectorTile(new Protobuf(fs.readFileSync(path.resolve(__dirname, '../../../test/unit/assets/mbsv5-6-18-23.vector.pbf'))));
15
15
  const feature = vt.layers.road.feature(0);
16
16
 
17
17
  function createLine(numPoints) {
@@ -1,4 +1,4 @@
1
- import {LineLayoutArray, LineExtLayoutArray} from '../array_types';
1
+ import {LineLayoutArray, LineExtLayoutArray} from '../array_types.g';
2
2
 
3
3
  import {members as layoutAttributes} from './line_attributes';
4
4
  import {members as layoutAttributesExt} from './line_attributes_ext';
@@ -71,14 +71,14 @@ const LINE_DISTANCE_SCALE = 1 / 2;
71
71
  const MAX_LINE_DISTANCE = Math.pow(2, LINE_DISTANCE_BUFFER_BITS - 1) / LINE_DISTANCE_SCALE;
72
72
 
73
73
  type LineClips = {
74
- start: number;
75
- end: number;
74
+ start: number;
75
+ end: number;
76
76
  };
77
77
 
78
78
  type GradientTexture = {
79
- texture?: Texture;
80
- gradient?: RGBAImage;
81
- version?: number;
79
+ texture?: Texture;
80
+ gradient?: RGBAImage;
81
+ version?: number;
82
82
  };
83
83
 
84
84
  /**