@mapwhit/tilerenderer 0.52.1 → 1.1.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 (249) hide show
  1. package/README.md +7 -0
  2. package/build/min/package.json +2 -1
  3. package/build/min/src/shaders/_prelude.fragment.glsl.js +2 -2
  4. package/build/min/src/shaders/_prelude.vertex.glsl.js +2 -2
  5. package/build/min/src/shaders/background.fragment.glsl.js +2 -2
  6. package/build/min/src/shaders/background.vertex.glsl.js +1 -1
  7. package/build/min/src/shaders/background_pattern.fragment.glsl.js +2 -2
  8. package/build/min/src/shaders/background_pattern.vertex.glsl.js +1 -1
  9. package/build/min/src/shaders/circle.fragment.glsl.js +2 -2
  10. package/build/min/src/shaders/circle.vertex.glsl.js +2 -2
  11. package/build/min/src/shaders/clipping_mask.fragment.glsl.js +1 -1
  12. package/build/min/src/shaders/clipping_mask.vertex.glsl.js +1 -1
  13. package/build/min/src/shaders/collision_box.fragment.glsl.js +1 -1
  14. package/build/min/src/shaders/collision_box.vertex.glsl.js +1 -1
  15. package/build/min/src/shaders/collision_circle.fragment.glsl.js +1 -1
  16. package/build/min/src/shaders/collision_circle.vertex.glsl.js +1 -1
  17. package/build/min/src/shaders/debug.fragment.glsl.js +1 -1
  18. package/build/min/src/shaders/debug.vertex.glsl.js +1 -1
  19. package/build/min/src/shaders/fill.fragment.glsl.js +2 -2
  20. package/build/min/src/shaders/fill.vertex.glsl.js +2 -2
  21. package/build/min/src/shaders/fill_extrusion.fragment.glsl.js +2 -2
  22. package/build/min/src/shaders/fill_extrusion.vertex.glsl.js +2 -2
  23. package/build/min/src/shaders/fill_extrusion_pattern.fragment.glsl.js +2 -2
  24. package/build/min/src/shaders/fill_extrusion_pattern.vertex.glsl.js +2 -2
  25. package/build/min/src/shaders/fill_outline.fragment.glsl.js +2 -2
  26. package/build/min/src/shaders/fill_outline.vertex.glsl.js +2 -2
  27. package/build/min/src/shaders/fill_outline_pattern.fragment.glsl.js +2 -2
  28. package/build/min/src/shaders/fill_outline_pattern.vertex.glsl.js +2 -2
  29. package/build/min/src/shaders/fill_pattern.fragment.glsl.js +2 -2
  30. package/build/min/src/shaders/fill_pattern.vertex.glsl.js +2 -2
  31. package/build/min/src/shaders/heatmap.fragment.glsl.js +2 -2
  32. package/build/min/src/shaders/heatmap.vertex.glsl.js +2 -2
  33. package/build/min/src/shaders/heatmap_texture.fragment.glsl.js +2 -2
  34. package/build/min/src/shaders/heatmap_texture.vertex.glsl.js +1 -1
  35. package/build/min/src/shaders/hillshade.fragment.glsl.js +2 -2
  36. package/build/min/src/shaders/hillshade.vertex.glsl.js +1 -1
  37. package/build/min/src/shaders/hillshade_prepare.fragment.glsl.js +2 -2
  38. package/build/min/src/shaders/hillshade_prepare.vertex.glsl.js +1 -1
  39. package/build/min/src/shaders/line.fragment.glsl.js +2 -2
  40. package/build/min/src/shaders/line.vertex.glsl.js +2 -2
  41. package/build/min/src/shaders/line_gradient.fragment.glsl.js +2 -2
  42. package/build/min/src/shaders/line_gradient.vertex.glsl.js +2 -2
  43. package/build/min/src/shaders/line_pattern.fragment.glsl.js +2 -2
  44. package/build/min/src/shaders/line_pattern.vertex.glsl.js +2 -2
  45. package/build/min/src/shaders/line_sdf.fragment.glsl.js +2 -2
  46. package/build/min/src/shaders/line_sdf.vertex.glsl.js +2 -2
  47. package/build/min/src/shaders/raster.fragment.glsl.js +2 -2
  48. package/build/min/src/shaders/raster.vertex.glsl.js +1 -1
  49. package/build/min/src/shaders/symbol_icon.fragment.glsl.js +2 -2
  50. package/build/min/src/shaders/symbol_icon.vertex.glsl.js +2 -2
  51. package/build/min/src/shaders/symbol_sdf.fragment.glsl.js +2 -2
  52. package/build/min/src/shaders/symbol_sdf.vertex.glsl.js +2 -2
  53. package/package.json +5 -4
  54. package/src/data/array_types.js +55 -117
  55. package/src/data/bucket/circle_attributes.js +2 -4
  56. package/src/data/bucket/circle_bucket.js +19 -16
  57. package/src/data/bucket/fill_attributes.js +2 -4
  58. package/src/data/bucket/fill_bucket.js +38 -27
  59. package/src/data/bucket/fill_extrusion_attributes.js +2 -4
  60. package/src/data/bucket/fill_extrusion_bucket.js +56 -37
  61. package/src/data/bucket/heatmap_bucket.js +2 -11
  62. package/src/data/bucket/line_attributes.js +2 -4
  63. package/src/data/bucket/line_bucket.js +208 -163
  64. package/src/data/bucket/pattern_attributes.js +2 -4
  65. package/src/data/bucket/pattern_bucket_features.js +7 -9
  66. package/src/data/bucket/symbol_attributes.js +12 -26
  67. package/src/data/bucket/symbol_bucket.js +174 -323
  68. package/src/data/bucket/symbol_buffers.js +62 -0
  69. package/src/data/bucket/symbol_collision_buffers.js +33 -0
  70. package/src/data/bucket.js +26 -25
  71. package/src/data/dem_data.js +11 -10
  72. package/src/data/extent.js +1 -1
  73. package/src/data/feature_index.js +38 -28
  74. package/src/data/index_array_type.js +1 -6
  75. package/src/data/load_geometry.js +6 -9
  76. package/src/data/pos_attributes.js +2 -3
  77. package/src/data/program_configuration.js +47 -38
  78. package/src/data/raster_bounds_attributes.js +2 -2
  79. package/src/data/segment.js +4 -7
  80. package/src/geo/coordinate.js +1 -1
  81. package/src/geo/lng_lat.js +3 -3
  82. package/src/geo/lng_lat_bounds.js +8 -4
  83. package/src/geo/transform.js +69 -30
  84. package/src/gl/color_mode.js +2 -2
  85. package/src/gl/context.js +28 -29
  86. package/src/gl/cull_face_mode.js +1 -1
  87. package/src/gl/depth_mode.js +1 -1
  88. package/src/gl/framebuffer.js +8 -4
  89. package/src/gl/index_buffer.js +2 -2
  90. package/src/gl/stencil_mode.js +1 -1
  91. package/src/gl/value.js +33 -68
  92. package/src/gl/vertex_buffer.js +2 -2
  93. package/src/index.js +49 -25
  94. package/src/render/draw_background.js +17 -12
  95. package/src/render/draw_circle.js +15 -12
  96. package/src/render/draw_collision_debug.js +11 -8
  97. package/src/render/draw_debug.js +16 -14
  98. package/src/render/draw_fill.js +27 -20
  99. package/src/render/draw_fill_extrusion.js +20 -17
  100. package/src/render/draw_heatmap.js +21 -16
  101. package/src/render/draw_hillshade.js +12 -9
  102. package/src/render/draw_line.js +36 -22
  103. package/src/render/draw_raster.js +22 -18
  104. package/src/render/draw_symbol.js +38 -33
  105. package/src/render/glyph_atlas.js +9 -8
  106. package/src/render/glyph_manager.js +2 -3
  107. package/src/render/image_atlas.js +4 -11
  108. package/src/render/image_manager.js +39 -28
  109. package/src/render/line_atlas.js +2 -2
  110. package/src/render/painter.js +78 -61
  111. package/src/render/program/background_program.js +6 -13
  112. package/src/render/program/circle_program.js +8 -10
  113. package/src/render/program/clipping_mask_program.js +3 -5
  114. package/src/render/program/collision_program.js +4 -6
  115. package/src/render/program/debug_program.js +3 -5
  116. package/src/render/program/fill_extrusion_program.js +9 -15
  117. package/src/render/program/fill_program.js +10 -21
  118. package/src/render/program/heatmap_program.js +9 -15
  119. package/src/render/program/hillshade_program.js +16 -22
  120. package/src/render/program/line_program.js +14 -25
  121. package/src/render/program/pattern.js +5 -7
  122. package/src/render/program/program_uniforms.js +13 -20
  123. package/src/render/program/raster_program.js +9 -11
  124. package/src/render/program/symbol_program.js +5 -7
  125. package/src/render/program.js +5 -6
  126. package/src/render/texture.js +1 -1
  127. package/src/render/tile_mask.js +6 -4
  128. package/src/render/uniform_binding.js +9 -20
  129. package/src/render/vertex_array_object.js +5 -3
  130. package/src/shaders/encode_attribute.js +2 -6
  131. package/src/shaders/index.js +103 -51
  132. package/src/source/geojson_source.js +25 -30
  133. package/src/source/geojson_worker_source.js +46 -74
  134. package/src/source/geojson_wrapper.js +13 -5
  135. package/src/source/image_source.js +17 -28
  136. package/src/source/load_tilejson.js +3 -3
  137. package/src/source/pixels_to_tile_units.js +3 -3
  138. package/src/source/query_features.js +17 -15
  139. package/src/source/raster_dem_tile_source.js +54 -71
  140. package/src/source/raster_tile_source.js +14 -15
  141. package/src/source/resources/glyphs.js +4 -5
  142. package/src/source/resources/index.js +4 -12
  143. package/src/source/rtl_text_plugin.js +62 -35
  144. package/src/source/source.js +14 -22
  145. package/src/source/source_cache.js +221 -179
  146. package/src/source/source_state.js +125 -13
  147. package/src/source/tile.js +67 -66
  148. package/src/source/tile_bounds.js +36 -29
  149. package/src/source/tile_cache.js +2 -2
  150. package/src/source/tile_id.js +30 -26
  151. package/src/source/vector_tile_source.js +23 -21
  152. package/src/source/vector_tile_worker_source.js +22 -26
  153. package/src/source/worker_tile.js +139 -134
  154. package/src/style/create_style_layer.js +11 -11
  155. package/src/style/evaluation_parameters.js +4 -6
  156. package/src/style/light.js +5 -5
  157. package/src/style/load_sprite.js +6 -6
  158. package/src/style/parse_glyph_pbf.js +21 -17
  159. package/src/style/pauseable_placement.js +7 -9
  160. package/src/style/properties.js +21 -51
  161. package/src/style/query_utils.js +7 -13
  162. package/src/style/style.js +314 -221
  163. package/src/style/style_layer/background_style_layer.js +3 -4
  164. package/src/style/style_layer/background_style_layer_properties.js +2 -2
  165. package/src/style/style_layer/circle_style_layer.js +25 -20
  166. package/src/style/style_layer/circle_style_layer_properties.js +2 -2
  167. package/src/style/style_layer/fill_extrusion_style_layer.js +55 -37
  168. package/src/style/style_layer/fill_extrusion_style_layer_properties.js +2 -2
  169. package/src/style/style_layer/fill_style_layer.js +11 -12
  170. package/src/style/style_layer/fill_style_layer_properties.js +2 -2
  171. package/src/style/style_layer/heatmap_style_layer.js +6 -7
  172. package/src/style/style_layer/heatmap_style_layer_properties.js +2 -2
  173. package/src/style/style_layer/hillshade_style_layer.js +4 -5
  174. package/src/style/style_layer/hillshade_style_layer_properties.js +2 -2
  175. package/src/style/style_layer/line_style_layer.js +33 -30
  176. package/src/style/style_layer/line_style_layer_properties.js +5 -5
  177. package/src/style/style_layer/raster_style_layer.js +3 -4
  178. package/src/style/style_layer/raster_style_layer_properties.js +2 -2
  179. package/src/style/style_layer/symbol_style_layer.js +20 -21
  180. package/src/style/style_layer/symbol_style_layer_properties.js +2 -2
  181. package/src/style/style_layer.js +66 -47
  182. package/src/style/style_layer_index.js +17 -42
  183. package/src/style/zoom_history.js +1 -1
  184. package/src/style-spec/error/parsing_error.js +1 -1
  185. package/src/style-spec/error/validation_error.js +5 -3
  186. package/src/style-spec/feature_filter/convert.js +17 -9
  187. package/src/style-spec/feature_filter/index.js +13 -9
  188. package/src/style-spec/util/eval_support.js +2 -2
  189. package/src/style-spec/util/ref_properties.js +1 -1
  190. package/src/symbol/anchor.js +2 -6
  191. package/src/symbol/check_max_angle.js +13 -5
  192. package/src/symbol/clip_line.js +2 -3
  193. package/src/symbol/collision_feature.js +8 -4
  194. package/src/symbol/collision_index.js +5 -7
  195. package/src/symbol/cross_tile_symbol_index.js +7 -10
  196. package/src/symbol/get_anchors.js +15 -8
  197. package/src/symbol/grid_index.js +5 -3
  198. package/src/symbol/mergelines.js +2 -2
  199. package/src/symbol/opacity_state.js +1 -5
  200. package/src/symbol/placement.js +28 -23
  201. package/src/symbol/projection.js +29 -28
  202. package/src/symbol/quads.js +14 -16
  203. package/src/symbol/shaping.js +27 -19
  204. package/src/symbol/symbol_layout.js +24 -28
  205. package/src/symbol/symbol_size.js +13 -12
  206. package/src/symbol/transform_text.js +4 -4
  207. package/src/ui/camera.js +34 -18
  208. package/src/ui/map.js +102 -44
  209. package/src/util/async.js +11 -5
  210. package/src/util/browser.js +1 -1
  211. package/src/util/callback.js +3 -9
  212. package/src/util/classify_rings.js +13 -8
  213. package/src/util/color_ramp.js +3 -3
  214. package/src/util/config.js +4 -4
  215. package/src/util/dictionary_coder.js +2 -3
  216. package/src/util/dom.js +7 -3
  217. package/src/util/find_pole_of_inaccessibility.js +29 -14
  218. package/src/util/group_layers.js +41 -0
  219. package/src/util/image.js +3 -13
  220. package/src/util/interpolate.js +1 -1
  221. package/src/util/intersection_tests.js +80 -42
  222. package/src/util/is_char_in_unicode_block.js +1 -1
  223. package/src/util/key.js +25 -0
  224. package/src/util/loader/image.js +1 -1
  225. package/src/util/object.js +33 -76
  226. package/src/util/script_detection.js +212 -91
  227. package/src/util/struct_array.js +8 -40
  228. package/src/util/task_queue.js +11 -7
  229. package/src/util/throttle.js +2 -2
  230. package/src/util/tile_cover.js +8 -5
  231. package/src/util/token.js +1 -1
  232. package/src/util/unique_id.js +2 -2
  233. package/src/util/util.js +21 -29
  234. package/src/util/vectortile_to_geojson.js +4 -2
  235. package/src/util/verticalize_punctuation.js +3 -7
  236. package/src/util/warn.js +4 -4
  237. package/src/util/web_worker.js +3 -3
  238. package/src/worker.js +1 -4
  239. package/src/source/resources/images.js +0 -68
  240. package/src/source/worker.js +0 -110
  241. package/src/source/worker_source.js +0 -14
  242. package/src/style-spec/deref.js +0 -51
  243. package/src/style-spec/group_by_layout.js +0 -46
  244. package/src/util/actor.js +0 -108
  245. package/src/util/dispatcher.js +0 -65
  246. package/src/util/global_worker_pool.js +0 -15
  247. package/src/util/transfer_registry.js +0 -168
  248. package/src/util/web_worker_transfer.js +0 -43
  249. package/src/util/worker_pool.js +0 -41
@@ -1,4 +1,4 @@
1
- const LngLat = require('./lng_lat');
1
+ import LngLat from './lng_lat.js';
2
2
 
3
3
  /**
4
4
  * A `LngLatBounds` object represents a geographical bounding box,
@@ -73,7 +73,9 @@ class LngLatBounds {
73
73
  sw2 = obj._sw;
74
74
  ne2 = obj._ne;
75
75
 
76
- if (!sw2 || !ne2) return this;
76
+ if (!sw2 || !ne2) {
77
+ return this;
78
+ }
77
79
  } else {
78
80
  if (Array.isArray(obj)) {
79
81
  if (obj.every(Array.isArray)) {
@@ -231,7 +233,9 @@ class LngLatBounds {
231
233
  * llb; // = LngLatBounds {_sw: LngLat {lng: -73.9876, lat: 40.7661}, _ne: LngLat {lng: -73.9397, lat: 40.8002}}
232
234
  */
233
235
  static convert(input) {
234
- if (!input || input instanceof LngLatBounds) return input;
236
+ if (!input || input instanceof LngLatBounds) {
237
+ return input;
238
+ }
235
239
  return new LngLatBounds(input);
236
240
  }
237
241
  }
@@ -250,4 +254,4 @@ class LngLatBounds {
250
254
  * var v3 = [[-73.9876, 40.7661], [-73.9397, 40.8002]];
251
255
  */
252
256
 
253
- module.exports = LngLatBounds;
257
+ export default LngLatBounds;
@@ -1,13 +1,14 @@
1
- const LngLat = require('./lng_lat');
2
-
3
- const { default: Point } = require('@mapbox/point-geometry');
4
- const Coordinate = require('./coordinate');
5
- const { wrap, clamp } = require('../util/util');
6
- const interpolate = require('../util/interpolate');
7
- const tileCover = require('../util/tile_cover');
8
- const { UnwrappedTileID } = require('../source/tile_id');
9
- const EXTENT = require('../data/extent');
10
- const { vec4, mat4, mat2 } = require('@mapbox/gl-matrix');
1
+ import glMatrix from '@mapbox/gl-matrix';
2
+ import Point from '@mapbox/point-geometry';
3
+ import EXTENT from '../data/extent.js';
4
+ import { UnwrappedTileID } from '../source/tile_id.js';
5
+ import interpolate from '../util/interpolate.js';
6
+ import tileCover from '../util/tile_cover.js';
7
+ import { clamp, wrap } from '../util/util.js';
8
+ import Coordinate from './coordinate.js';
9
+ import LngLat from './lng_lat.js';
10
+
11
+ const { mat2, mat4, vec4 } = glMatrix;
11
12
 
12
13
  /**
13
14
  * A single transform, generally used for a single tile to be
@@ -57,7 +58,9 @@ class Transform {
57
58
  return this._minZoom;
58
59
  }
59
60
  set minZoom(zoom) {
60
- if (this._minZoom === zoom) return;
61
+ if (this._minZoom === zoom) {
62
+ return;
63
+ }
61
64
  this._minZoom = zoom;
62
65
  this.zoom = Math.max(this.zoom, zoom);
63
66
  }
@@ -66,7 +69,9 @@ class Transform {
66
69
  return this._maxZoom;
67
70
  }
68
71
  set maxZoom(zoom) {
69
- if (this._maxZoom === zoom) return;
72
+ if (this._maxZoom === zoom) {
73
+ return;
74
+ }
70
75
  this._maxZoom = zoom;
71
76
  this.zoom = Math.min(this.zoom, zoom);
72
77
  }
@@ -101,7 +106,9 @@ class Transform {
101
106
  }
102
107
  set bearing(bearing) {
103
108
  const b = (-wrap(bearing, -180, 180) * Math.PI) / 180;
104
- if (this.angle === b) return;
109
+ if (this.angle === b) {
110
+ return;
111
+ }
105
112
  this._unmodified = false;
106
113
  this.angle = b;
107
114
  this._calcMatrices();
@@ -116,7 +123,9 @@ class Transform {
116
123
  }
117
124
  set pitch(pitch) {
118
125
  const p = (clamp(pitch, 0, 60) / 180) * Math.PI;
119
- if (this._pitch === p) return;
126
+ if (this._pitch === p) {
127
+ return;
128
+ }
120
129
  this._unmodified = false;
121
130
  this._pitch = p;
122
131
  this._calcMatrices();
@@ -127,7 +136,9 @@ class Transform {
127
136
  }
128
137
  set fov(fov) {
129
138
  fov = Math.max(0.01, Math.min(60, fov));
130
- if (this._fov === fov) return;
139
+ if (this._fov === fov) {
140
+ return;
141
+ }
131
142
  this._unmodified = false;
132
143
  this._fov = (fov / 180) * Math.PI;
133
144
  this._calcMatrices();
@@ -138,7 +149,9 @@ class Transform {
138
149
  }
139
150
  set zoom(zoom) {
140
151
  const z = Math.min(Math.max(zoom, this.minZoom), this.maxZoom);
141
- if (this._zoom === z) return;
152
+ if (this._zoom === z) {
153
+ return;
154
+ }
142
155
  this._unmodified = false;
143
156
  this._zoom = z;
144
157
  this.scale = this.zoomScale(z);
@@ -152,7 +165,9 @@ class Transform {
152
165
  return this._center;
153
166
  }
154
167
  set center(center) {
155
- if (center.lat === this._center.lat && center.lng === this._center.lng) return;
168
+ if (center.lat === this._center.lat && center.lng === this._center.lng) {
169
+ return;
170
+ }
156
171
  this._unmodified = false;
157
172
  this._center = center;
158
173
  this._constrain();
@@ -192,7 +207,9 @@ class Transform {
192
207
  const extraWorldCopy = 1;
193
208
 
194
209
  for (let w = w0 - extraWorldCopy; w <= w1 + extraWorldCopy; w++) {
195
- if (w === 0) continue;
210
+ if (w === 0) {
211
+ continue;
212
+ }
196
213
  result.push(new UnwrappedTileID(w, tileID));
197
214
  }
198
215
  }
@@ -215,8 +232,12 @@ class Transform {
215
232
  let z = this.coveringZoomLevel(options);
216
233
  const actualZ = z;
217
234
 
218
- if (options.minzoom !== undefined && z < options.minzoom) return [];
219
- if (options.maxzoom !== undefined && z > options.maxzoom) z = options.maxzoom;
235
+ if (options.minzoom !== undefined && z < options.minzoom) {
236
+ return [];
237
+ }
238
+ if (options.maxzoom !== undefined && z > options.maxzoom) {
239
+ z = options.maxzoom;
240
+ }
220
241
 
221
242
  const centerCoord = this.pointCoordinate(this.centerPoint, z);
222
243
  const centerPoint = new Point(centerCoord.column - 0.5, centerCoord.row - 0.5);
@@ -346,7 +367,9 @@ class Transform {
346
367
  }
347
368
 
348
369
  pointCoordinate(p, zoom) {
349
- if (zoom === undefined) zoom = this.tileZoom;
370
+ if (zoom === undefined) {
371
+ zoom = this.tileZoom;
372
+ }
350
373
 
351
374
  const targetZ = 0;
352
375
  // since we don't know the correct projected z value for the point,
@@ -414,7 +437,9 @@ class Transform {
414
437
  }
415
438
 
416
439
  _constrain() {
417
- if (!this.center || !this.width || !this.height || this._constraining) return;
440
+ if (!this.center || !this.width || !this.height || this._constraining) {
441
+ return;
442
+ }
418
443
 
419
444
  this._constraining = true;
420
445
 
@@ -458,16 +483,24 @@ class Transform {
458
483
  const y = this.y;
459
484
  const h2 = size.y / 2;
460
485
 
461
- if (y - h2 < minY) y2 = minY + h2;
462
- if (y + h2 > maxY) y2 = maxY - h2;
486
+ if (y - h2 < minY) {
487
+ y2 = minY + h2;
488
+ }
489
+ if (y + h2 > maxY) {
490
+ y2 = maxY - h2;
491
+ }
463
492
  }
464
493
 
465
494
  if (this.lngRange) {
466
495
  const x = this.x;
467
496
  const w2 = size.x / 2;
468
497
 
469
- if (x - w2 < minX) x2 = minX + w2;
470
- if (x + w2 > maxX) x2 = maxX - w2;
498
+ if (x - w2 < minX) {
499
+ x2 = minX + w2;
500
+ }
501
+ if (x + w2 > maxX) {
502
+ x2 = maxX - w2;
503
+ }
471
504
  }
472
505
 
473
506
  // pan the map if the screen goes off the range
@@ -480,7 +513,9 @@ class Transform {
480
513
  }
481
514
 
482
515
  _calcMatrices() {
483
- if (!this.height) return;
516
+ if (!this.height) {
517
+ return;
518
+ }
484
519
 
485
520
  this.cameraToCenterDistance = (0.5 / Math.tan(this._fov / 2)) * this.height;
486
521
 
@@ -542,7 +577,9 @@ class Transform {
542
577
 
543
578
  // inverse matrix for conversion from screen coordinaes to location
544
579
  m = mat4.invert(new Float64Array(16), this.pixelMatrix);
545
- if (!m) throw new Error('failed to invert matrix');
580
+ if (!m) {
581
+ throw new Error('failed to invert matrix');
582
+ }
546
583
  this.pixelMatrixInverse = m;
547
584
 
548
585
  this._posMatrixCache = {};
@@ -551,7 +588,9 @@ class Transform {
551
588
 
552
589
  maxPitchScaleFactor() {
553
590
  // calcMatrices hasn't run yet
554
- if (!this.pixelMatrixInverse) return 1;
591
+ if (!this.pixelMatrixInverse) {
592
+ return 1;
593
+ }
555
594
 
556
595
  const coord = this.pointCoordinate(new Point(0, 0)).zoomTo(this.zoom);
557
596
  const p = [coord.column * this.tileSize, coord.row * this.tileSize, 0, 1];
@@ -612,4 +651,4 @@ class Transform {
612
651
  }
613
652
  }
614
653
 
615
- module.exports = Transform;
654
+ export default Transform;
@@ -1,4 +1,4 @@
1
- const { Color } = require('@mapwhit/style-expressions');
1
+ import { Color } from '@mapwhit/style-expressions';
2
2
 
3
3
  const ZERO = 0x0000;
4
4
  const ONE = 0x0001;
@@ -18,4 +18,4 @@ class ColorMode {
18
18
  }
19
19
  }
20
20
 
21
- module.exports = ColorMode;
21
+ export default ColorMode;
package/src/gl/context.js CHANGED
@@ -1,40 +1,39 @@
1
- const IndexBuffer = require('./index_buffer');
2
-
3
- const VertexBuffer = require('./vertex_buffer');
4
- const Framebuffer = require('./framebuffer');
5
- const ColorMode = require('./color_mode');
6
- const { deepEqual } = require('../util/object');
7
- const {
1
+ import { deepEqual } from '../util/object.js';
2
+ import ColorMode from './color_mode.js';
3
+ import Framebuffer from './framebuffer.js';
4
+ import IndexBuffer from './index_buffer.js';
5
+ import {
6
+ ActiveTextureUnit,
7
+ BindElementBuffer,
8
+ BindFramebuffer,
9
+ BindRenderbuffer,
10
+ BindTexture,
11
+ BindVertexArrayOES,
12
+ BindVertexBuffer,
13
+ Blend,
14
+ BlendColor,
15
+ BlendFunc,
8
16
  ClearColor,
9
17
  ClearDepth,
10
18
  ClearStencil,
11
19
  ColorMask,
20
+ CullFace,
21
+ CullFaceSide,
22
+ DepthFunc,
12
23
  DepthMask,
13
- StencilMask,
14
- StencilFunc,
15
- StencilOp,
16
- StencilTest,
17
24
  DepthRange,
18
25
  DepthTest,
19
- DepthFunc,
20
- Blend,
21
- BlendFunc,
22
- BlendColor,
23
- CullFace,
24
- CullFaceSide,
25
26
  FrontFace,
26
- Program,
27
- ActiveTextureUnit,
28
- Viewport,
29
- BindFramebuffer,
30
- BindRenderbuffer,
31
- BindTexture,
32
- BindVertexBuffer,
33
- BindElementBuffer,
34
- BindVertexArrayOES,
35
27
  PixelStoreUnpack,
36
- PixelStoreUnpackPremultiplyAlpha
37
- } = require('./value');
28
+ PixelStoreUnpackPremultiplyAlpha,
29
+ Program,
30
+ StencilFunc,
31
+ StencilMask,
32
+ StencilOp,
33
+ StencilTest,
34
+ Viewport
35
+ } from './value.js';
36
+ import VertexBuffer from './vertex_buffer.js';
38
37
 
39
38
  class Context {
40
39
  constructor(gl) {
@@ -190,4 +189,4 @@ class Context {
190
189
  }
191
190
  }
192
191
 
193
- module.exports = Context;
192
+ export default Context;
@@ -19,4 +19,4 @@ class CullFaceMode {
19
19
  CullFaceMode.disabled = new CullFaceMode(false, BACK, CCW);
20
20
  CullFaceMode.backCCW = new CullFaceMode(true, BACK, CCW);
21
21
 
22
- module.exports = CullFaceMode;
22
+ export default CullFaceMode;
@@ -15,4 +15,4 @@ DepthMode.ReadWrite = true;
15
15
 
16
16
  DepthMode.disabled = new DepthMode(ALWAYS, DepthMode.ReadOnly, [0, 1]);
17
17
 
18
- module.exports = DepthMode;
18
+ export default DepthMode;
@@ -1,4 +1,4 @@
1
- const { ColorAttachment, DepthAttachment } = require('./value');
1
+ import { ColorAttachment, DepthAttachment } from './value.js';
2
2
 
3
3
  class Framebuffer {
4
4
  constructor(context, width, height) {
@@ -16,13 +16,17 @@ class Framebuffer {
16
16
  const gl = this.context.gl;
17
17
 
18
18
  const texture = this.colorAttachment.get();
19
- if (texture) gl.deleteTexture(texture);
19
+ if (texture) {
20
+ gl.deleteTexture(texture);
21
+ }
20
22
 
21
23
  const renderbuffer = this.depthAttachment.get();
22
- if (renderbuffer) gl.deleteRenderbuffer(renderbuffer);
24
+ if (renderbuffer) {
25
+ gl.deleteRenderbuffer(renderbuffer);
26
+ }
23
27
 
24
28
  gl.deleteFramebuffer(this.framebuffer);
25
29
  }
26
30
  }
27
31
 
28
- module.exports = Framebuffer;
32
+ export default Framebuffer;
@@ -1,4 +1,4 @@
1
- const assert = require('assert');
1
+ import assert from 'assert';
2
2
 
3
3
  class IndexBuffer {
4
4
  constructor(context, array, dynamicDraw) {
@@ -49,4 +49,4 @@ class IndexBuffer {
49
49
  }
50
50
  }
51
51
 
52
- module.exports = IndexBuffer;
52
+ export default IndexBuffer;
@@ -14,4 +14,4 @@ class StencilMode {
14
14
 
15
15
  StencilMode.disabled = new StencilMode({ func: ALWAYS, mask: 0 }, 0, 0, KEEP, KEEP, KEEP);
16
16
 
17
- module.exports = StencilMode;
17
+ export default StencilMode;