@deck.gl-community/editable-layers 9.0.0-alpha.1 → 9.0.2

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 (279) hide show
  1. package/LICENSE +19 -0
  2. package/README.md +2 -81
  3. package/dist/constants.js +4 -1
  4. package/dist/edit-modes/composite-mode.d.ts +1 -1
  5. package/dist/edit-modes/composite-mode.js +4 -1
  6. package/dist/edit-modes/draw-90degree-polygon-mode.d.ts +1 -1
  7. package/dist/edit-modes/draw-90degree-polygon-mode.js +29 -24
  8. package/dist/edit-modes/draw-circle-by-diameter-mode.d.ts +1 -1
  9. package/dist/edit-modes/draw-circle-by-diameter-mode.js +7 -4
  10. package/dist/edit-modes/draw-circle-from-center-mode.d.ts +1 -1
  11. package/dist/edit-modes/draw-circle-from-center-mode.js +7 -4
  12. package/dist/edit-modes/draw-ellipse-by-bounding-box-mode.d.ts +1 -1
  13. package/dist/edit-modes/draw-ellipse-by-bounding-box-mode.js +3 -0
  14. package/dist/edit-modes/draw-ellipse-using-three-points-mode.d.ts +1 -1
  15. package/dist/edit-modes/draw-ellipse-using-three-points-mode.js +3 -0
  16. package/dist/edit-modes/draw-line-string-mode.d.ts +1 -1
  17. package/dist/edit-modes/draw-line-string-mode.js +19 -16
  18. package/dist/edit-modes/draw-point-mode.d.ts +1 -1
  19. package/dist/edit-modes/draw-point-mode.js +7 -4
  20. package/dist/edit-modes/draw-polygon-by-dragging-mode.d.ts +1 -1
  21. package/dist/edit-modes/draw-polygon-by-dragging-mode.js +10 -5
  22. package/dist/edit-modes/draw-polygon-mode.d.ts +1 -1
  23. package/dist/edit-modes/draw-polygon-mode.js +20 -16
  24. package/dist/edit-modes/draw-rectangle-from-center-mode.d.ts +1 -1
  25. package/dist/edit-modes/draw-rectangle-from-center-mode.js +3 -0
  26. package/dist/edit-modes/draw-rectangle-mode.d.ts +1 -1
  27. package/dist/edit-modes/draw-rectangle-mode.js +3 -0
  28. package/dist/edit-modes/draw-rectangle-using-three-points-mode.d.ts +1 -1
  29. package/dist/edit-modes/draw-rectangle-using-three-points-mode.js +8 -5
  30. package/dist/edit-modes/draw-square-from-center-mode.d.ts +1 -1
  31. package/dist/edit-modes/draw-square-from-center-mode.js +3 -0
  32. package/dist/edit-modes/draw-square-mode.d.ts +1 -1
  33. package/dist/edit-modes/draw-square-mode.js +3 -0
  34. package/dist/edit-modes/duplicate-mode.d.ts +1 -1
  35. package/dist/edit-modes/duplicate-mode.js +3 -0
  36. package/dist/edit-modes/edit-mode.js +3 -1
  37. package/dist/edit-modes/elevation-mode.d.ts +2 -2
  38. package/dist/edit-modes/elevation-mode.js +8 -5
  39. package/dist/edit-modes/extend-line-string-mode.d.ts +1 -1
  40. package/dist/edit-modes/extend-line-string-mode.js +9 -6
  41. package/dist/edit-modes/extrude-mode.d.ts +1 -1
  42. package/dist/edit-modes/extrude-mode.js +10 -7
  43. package/dist/edit-modes/geojson-edit-mode.d.ts +1 -1
  44. package/dist/edit-modes/geojson-edit-mode.js +18 -15
  45. package/dist/edit-modes/immutable-feature-collection.d.ts +2 -1
  46. package/dist/edit-modes/immutable-feature-collection.js +25 -20
  47. package/dist/edit-modes/measure-angle-mode.d.ts +1 -1
  48. package/dist/edit-modes/measure-angle-mode.js +8 -8
  49. package/dist/edit-modes/measure-area-mode.d.ts +1 -1
  50. package/dist/edit-modes/measure-area-mode.js +7 -5
  51. package/dist/edit-modes/measure-distance-mode.d.ts +1 -1
  52. package/dist/edit-modes/measure-distance-mode.js +17 -14
  53. package/dist/edit-modes/modify-mode.d.ts +1 -1
  54. package/dist/edit-modes/modify-mode.js +17 -14
  55. package/dist/edit-modes/resize-circle-mode.d.ts +2 -2
  56. package/dist/edit-modes/resize-circle-mode.js +3 -1
  57. package/dist/edit-modes/rotate-mode.d.ts +1 -1
  58. package/dist/edit-modes/rotate-mode.js +8 -5
  59. package/dist/edit-modes/scale-mode.d.ts +1 -1
  60. package/dist/edit-modes/scale-mode.js +8 -5
  61. package/dist/edit-modes/snappable-mode.d.ts +1 -1
  62. package/dist/edit-modes/snappable-mode.js +8 -5
  63. package/dist/edit-modes/split-polygon-mode.d.ts +1 -1
  64. package/dist/edit-modes/split-polygon-mode.js +12 -9
  65. package/dist/edit-modes/three-click-polygon-mode.d.ts +1 -1
  66. package/dist/edit-modes/three-click-polygon-mode.js +9 -6
  67. package/dist/edit-modes/transform-mode.d.ts +1 -1
  68. package/dist/edit-modes/transform-mode.js +4 -1
  69. package/dist/edit-modes/translate-mode.d.ts +1 -1
  70. package/dist/edit-modes/translate-mode.js +7 -4
  71. package/dist/edit-modes/two-click-polygon-mode.d.ts +1 -1
  72. package/dist/edit-modes/two-click-polygon-mode.js +9 -6
  73. package/dist/edit-modes/types.d.ts +1 -1
  74. package/dist/edit-modes/types.js +3 -0
  75. package/dist/edit-modes/utils.d.ts +1 -1
  76. package/dist/edit-modes/utils.js +21 -19
  77. package/dist/edit-modes/view-mode.js +3 -0
  78. package/dist/editable-layers/editable-geojson-layer.d.ts +4 -4
  79. package/dist/editable-layers/editable-geojson-layer.js +27 -26
  80. package/dist/editable-layers/editable-h3-cluster-layer.d.ts +2 -2
  81. package/dist/editable-layers/editable-h3-cluster-layer.js +6 -3
  82. package/dist/editable-layers/editable-layer.d.ts +5 -5
  83. package/dist/editable-layers/editable-layer.js +18 -15
  84. package/dist/editable-layers/editable-path-layer.d.ts +1 -1
  85. package/dist/editable-layers/editable-path-layer.js +10 -7
  86. package/dist/editable-layers/elevated-edit-handle-layer.d.ts +1 -1
  87. package/dist/editable-layers/elevated-edit-handle-layer.js +6 -3
  88. package/dist/editable-layers/junction-scatterplot-layer.d.ts +2 -2
  89. package/dist/editable-layers/junction-scatterplot-layer.js +10 -7
  90. package/dist/editable-layers/selection-layer.d.ts +1 -1
  91. package/dist/editable-layers/selection-layer.js +5 -2
  92. package/dist/index.cjs +65 -537
  93. package/dist/index.cjs.map +4 -4
  94. package/dist/index.d.ts +19 -20
  95. package/dist/index.js +20 -18
  96. package/dist/lib/constants.js +3 -0
  97. package/dist/lib/deck-renderer/deck-cache.d.ts +1 -1
  98. package/dist/lib/deck-renderer/deck-cache.js +1 -1
  99. package/dist/lib/deck-renderer/deck-drawer.d.ts +2 -3
  100. package/dist/lib/deck-renderer/deck-drawer.js +12 -12
  101. package/dist/lib/feature.d.ts +4 -4
  102. package/dist/lib/feature.js +4 -1
  103. package/dist/lib/layer-mouse-event.d.ts +2 -2
  104. package/dist/lib/layer-mouse-event.js +4 -1
  105. package/dist/lib/layers/junctions-layer.d.ts +4 -4
  106. package/dist/lib/layers/junctions-layer.js +10 -7
  107. package/dist/lib/layers/segments-layer.d.ts +4 -4
  108. package/dist/lib/layers/segments-layer.js +11 -8
  109. package/dist/lib/layers/texts-layer.d.ts +3 -3
  110. package/dist/lib/layers/texts-layer.js +8 -5
  111. package/dist/lib/math.d.ts +1 -1
  112. package/dist/lib/math.js +3 -0
  113. package/dist/lib/{nebula.d.ts → nebula-core.d.ts} +2 -2
  114. package/dist/lib/{nebula.js → nebula-core.js} +7 -4
  115. package/dist/lib/nebula-layer.d.ts +2 -2
  116. package/dist/lib/nebula-layer.js +4 -1
  117. package/dist/lib/style.js +5 -2
  118. package/dist/mode-handlers/composite-mode-handler.d.ts +1 -1
  119. package/dist/mode-handlers/draw-90degree-polygon-handler.d.ts +1 -1
  120. package/dist/mode-handlers/draw-90degree-polygon-handler.js +13 -10
  121. package/dist/mode-handlers/draw-circle-by-bounding-box-handler.js +3 -0
  122. package/dist/mode-handlers/draw-circle-from-center-handler.js +3 -0
  123. package/dist/mode-handlers/draw-ellipse-by-bounding-box-handler.js +3 -0
  124. package/dist/mode-handlers/draw-ellipse-using-three-points-handler.js +5 -2
  125. package/dist/mode-handlers/draw-line-string-handler.js +7 -4
  126. package/dist/mode-handlers/draw-point-handler.js +4 -1
  127. package/dist/mode-handlers/draw-polygon-handler.d.ts +1 -1
  128. package/dist/mode-handlers/draw-polygon-handler.js +10 -7
  129. package/dist/mode-handlers/draw-rectangle-handler.js +3 -0
  130. package/dist/mode-handlers/draw-rectangle-using-three-points-handler.js +11 -8
  131. package/dist/mode-handlers/duplicate-handler.js +3 -0
  132. package/dist/mode-handlers/elevation-handler.d.ts +2 -2
  133. package/dist/mode-handlers/elevation-handler.js +8 -5
  134. package/dist/mode-handlers/extrude-handler.js +10 -7
  135. package/dist/mode-handlers/mode-handler.d.ts +1 -1
  136. package/dist/mode-handlers/mode-handler.js +17 -14
  137. package/dist/mode-handlers/modify-handler.d.ts +2 -2
  138. package/dist/mode-handlers/modify-handler.js +18 -15
  139. package/dist/mode-handlers/rotate-handler.d.ts +1 -1
  140. package/dist/mode-handlers/rotate-handler.js +4 -1
  141. package/dist/mode-handlers/scale-handler.d.ts +1 -1
  142. package/dist/mode-handlers/scale-handler.js +5 -2
  143. package/dist/mode-handlers/snappable-handler.d.ts +1 -1
  144. package/dist/mode-handlers/snappable-handler.js +6 -3
  145. package/dist/mode-handlers/split-polygon-handler.js +11 -8
  146. package/dist/mode-handlers/three-click-polygon-handler.js +3 -0
  147. package/dist/mode-handlers/translate-handler.d.ts +1 -1
  148. package/dist/mode-handlers/translate-handler.js +4 -1
  149. package/dist/mode-handlers/two-click-polygon-handler.js +3 -0
  150. package/dist/mode-handlers/view-handler.d.ts +1 -1
  151. package/dist/mode-handlers/view-handler.js +3 -0
  152. package/dist/shaderlib/color/color.d.ts +7 -6
  153. package/dist/shaderlib/color/color.js +7 -4
  154. package/dist/shaderlib/utils/utils.d.ts +2 -2
  155. package/dist/shaderlib/utils/utils.js +5 -2
  156. package/dist/{curve-utils.js → utils/curve-utils.js} +7 -4
  157. package/dist/{geojson-types.d.ts → utils/geojson-types.d.ts} +2 -25
  158. package/dist/utils/geojson-types.js +4 -0
  159. package/dist/{memoize.d.ts → utils/memoize.d.ts} +1 -1
  160. package/dist/{memoize.js → utils/memoize.js} +4 -1
  161. package/dist/{translateFromCenter.js → utils/translate-from-center.js} +4 -1
  162. package/dist/utils/types.js +4 -0
  163. package/dist/{utils.js → utils/utils.js} +8 -6
  164. package/package.json +10 -10
  165. package/src/constants.ts +5 -1
  166. package/src/edit-modes/composite-mode.ts +9 -5
  167. package/src/edit-modes/draw-90degree-polygon-mode.ts +38 -34
  168. package/src/edit-modes/draw-circle-by-diameter-mode.ts +16 -12
  169. package/src/edit-modes/draw-circle-from-center-mode.ts +15 -11
  170. package/src/edit-modes/draw-ellipse-by-bounding-box-mode.ts +8 -4
  171. package/src/edit-modes/draw-ellipse-using-three-points-mode.ts +9 -5
  172. package/src/edit-modes/draw-line-string-mode.ts +29 -25
  173. package/src/edit-modes/draw-point-mode.ts +13 -9
  174. package/src/edit-modes/draw-polygon-by-dragging-mode.ts +16 -16
  175. package/src/edit-modes/draw-polygon-mode.ts +28 -23
  176. package/src/edit-modes/draw-rectangle-from-center-mode.ts +6 -2
  177. package/src/edit-modes/draw-rectangle-mode.ts +6 -2
  178. package/src/edit-modes/draw-rectangle-using-three-points-mode.ts +12 -8
  179. package/src/edit-modes/draw-square-from-center-mode.ts +7 -3
  180. package/src/edit-modes/draw-square-mode.ts +7 -3
  181. package/src/edit-modes/duplicate-mode.ts +7 -3
  182. package/src/edit-modes/edit-mode.ts +5 -1
  183. package/src/edit-modes/elevation-mode.ts +13 -9
  184. package/src/edit-modes/extend-line-string-mode.ts +16 -12
  185. package/src/edit-modes/extrude-mode.ts +22 -18
  186. package/src/edit-modes/geojson-edit-mode.ts +37 -33
  187. package/src/edit-modes/immutable-feature-collection.ts +28 -22
  188. package/src/edit-modes/measure-angle-mode.ts +66 -59
  189. package/src/edit-modes/measure-area-mode.ts +13 -10
  190. package/src/edit-modes/measure-distance-mode.ts +37 -33
  191. package/src/edit-modes/modify-mode.ts +36 -32
  192. package/src/edit-modes/resize-circle-mode.ts +8 -5
  193. package/src/edit-modes/rotate-mode.ts +22 -18
  194. package/src/edit-modes/scale-mode.ts +29 -23
  195. package/src/edit-modes/snappable-mode.ts +19 -15
  196. package/src/edit-modes/split-polygon-mode.ts +25 -21
  197. package/src/edit-modes/three-click-polygon-mode.ts +15 -11
  198. package/src/edit-modes/transform-mode.ts +15 -11
  199. package/src/edit-modes/translate-mode.ts +15 -11
  200. package/src/edit-modes/two-click-polygon-mode.ts +15 -11
  201. package/src/edit-modes/types.ts +5 -1
  202. package/src/edit-modes/utils.ts +33 -30
  203. package/src/edit-modes/view-mode.ts +5 -1
  204. package/src/editable-layers/editable-geojson-layer.ts +44 -41
  205. package/src/editable-layers/editable-h3-cluster-layer.ts +17 -14
  206. package/src/editable-layers/editable-layer.ts +42 -32
  207. package/src/editable-layers/editable-path-layer.ts +12 -8
  208. package/src/editable-layers/elevated-edit-handle-layer.ts +11 -7
  209. package/src/editable-layers/junction-scatterplot-layer.ts +15 -11
  210. package/src/editable-layers/selection-layer.ts +11 -7
  211. package/src/index.ts +68 -65
  212. package/src/lib/constants.ts +4 -0
  213. package/src/lib/deck-renderer/deck-cache.ts +1 -1
  214. package/src/lib/deck-renderer/deck-drawer.ts +28 -28
  215. package/src/lib/feature.ts +7 -3
  216. package/src/lib/layer-mouse-event.ts +7 -6
  217. package/src/lib/layers/junctions-layer.ts +14 -10
  218. package/src/lib/layers/segments-layer.ts +24 -20
  219. package/src/lib/layers/texts-layer.ts +18 -14
  220. package/src/lib/math.ts +5 -1
  221. package/src/lib/{nebula.ts → nebula-core.ts} +8 -4
  222. package/src/lib/nebula-layer.ts +9 -5
  223. package/src/lib/style.ts +6 -2
  224. package/src/mode-handlers/composite-mode-handler.ts +6 -6
  225. package/src/mode-handlers/draw-90degree-polygon-handler.ts +22 -18
  226. package/src/mode-handlers/draw-circle-by-bounding-box-handler.ts +10 -6
  227. package/src/mode-handlers/draw-circle-from-center-handler.ts +10 -6
  228. package/src/mode-handlers/draw-ellipse-by-bounding-box-handler.ts +9 -5
  229. package/src/mode-handlers/draw-ellipse-using-three-points-handler.ts +12 -8
  230. package/src/mode-handlers/draw-line-string-handler.ts +12 -8
  231. package/src/mode-handlers/draw-point-handler.ts +9 -5
  232. package/src/mode-handlers/draw-polygon-handler.ts +16 -12
  233. package/src/mode-handlers/draw-rectangle-handler.ts +8 -4
  234. package/src/mode-handlers/draw-rectangle-using-three-points-handler.ts +17 -13
  235. package/src/mode-handlers/duplicate-handler.ts +8 -4
  236. package/src/mode-handlers/elevation-handler.ts +14 -10
  237. package/src/mode-handlers/extrude-handler.ts +15 -11
  238. package/src/mode-handlers/mode-handler.ts +26 -28
  239. package/src/mode-handlers/modify-handler.ts +29 -25
  240. package/src/mode-handlers/rotate-handler.ts +13 -17
  241. package/src/mode-handlers/scale-handler.ts +13 -13
  242. package/src/mode-handlers/snappable-handler.ts +28 -24
  243. package/src/mode-handlers/split-polygon-handler.ts +22 -18
  244. package/src/mode-handlers/three-click-polygon-handler.ts +6 -2
  245. package/src/mode-handlers/translate-handler.ts +12 -8
  246. package/src/mode-handlers/two-click-polygon-handler.ts +6 -2
  247. package/src/mode-handlers/view-handler.ts +7 -3
  248. package/src/shaderlib/color/color.ts +10 -5
  249. package/src/shaderlib/utils/utils.ts +6 -2
  250. package/src/{curve-utils.ts → utils/curve-utils.ts} +11 -7
  251. package/src/{geojson-types.ts → utils/geojson-types.ts} +16 -31
  252. package/src/{memoize.ts → utils/memoize.ts} +5 -1
  253. package/src/{translateFromCenter.ts → utils/translate-from-center.ts} +8 -4
  254. package/src/{types.ts → utils/types.ts} +4 -0
  255. package/src/{utils.ts → utils/utils.ts} +14 -11
  256. package/dist/editable-layers/path-marker-layer/arrow-2d-geometry.d.ts +0 -4
  257. package/dist/editable-layers/path-marker-layer/arrow-2d-geometry.js +0 -55
  258. package/dist/editable-layers/path-marker-layer/create-path-markers.d.ts +0 -16
  259. package/dist/editable-layers/path-marker-layer/create-path-markers.js +0 -75
  260. package/dist/editable-layers/path-marker-layer/path-marker-layer.d.ts +0 -40
  261. package/dist/editable-layers/path-marker-layer/path-marker-layer.js +0 -121
  262. package/dist/editable-layers/path-marker-layer/polyline.d.ts +0 -18
  263. package/dist/editable-layers/path-marker-layer/polyline.js +0 -37
  264. package/dist/editable-layers/path-outline-layer/path-outline-layer.d.ts +0 -26
  265. package/dist/editable-layers/path-outline-layer/path-outline-layer.js +0 -106
  266. package/dist/geojson-types.js +0 -2
  267. package/dist/shaderlib/outline/outline.d.ts +0 -8
  268. package/dist/shaderlib/outline/outline.js +0 -97
  269. package/dist/types.js +0 -1
  270. package/src/editable-layers/path-marker-layer/arrow-2d-geometry.ts +0 -61
  271. package/src/editable-layers/path-marker-layer/create-path-markers.ts +0 -107
  272. package/src/editable-layers/path-marker-layer/path-marker-layer.ts +0 -179
  273. package/src/editable-layers/path-marker-layer/polyline.ts +0 -40
  274. package/src/editable-layers/path-outline-layer/path-outline-layer.ts +0 -147
  275. package/src/shaderlib/outline/outline.ts +0 -101
  276. /package/dist/{curve-utils.d.ts → utils/curve-utils.d.ts} +0 -0
  277. /package/dist/{translateFromCenter.d.ts → utils/translate-from-center.d.ts} +0 -0
  278. /package/dist/{types.d.ts → utils/types.d.ts} +0 -0
  279. /package/dist/{utils.d.ts → utils/utils.d.ts} +0 -0
@@ -1,8 +1,18 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+
1
5
  /* eslint-env browser */
2
6
 
3
- import { CompositeLayer, CompositeLayerProps } from '@deck.gl/core';
4
- import { DraggingEvent, ClickEvent, StartDraggingEvent, StopDraggingEvent, PointerMoveEvent } from '../edit-modes/types';
5
- import { Position } from '../geojson-types';
7
+ import {CompositeLayer, CompositeLayerProps} from '@deck.gl/core';
8
+ import {
9
+ DraggingEvent,
10
+ ClickEvent,
11
+ StartDraggingEvent,
12
+ StopDraggingEvent,
13
+ PointerMoveEvent
14
+ } from '../edit-modes/types';
15
+ import {Position} from '../utils/geojson-types';
6
16
 
7
17
  const EVENT_TYPES = ['anyclick', 'pointermove', 'panstart', 'panmove', 'panend', 'keyup'];
8
18
 
@@ -12,7 +22,7 @@ export type EditableLayerProps<DataType = any> = CompositeLayerProps & {
12
22
  pickingDepth?: number;
13
23
  };
14
24
 
15
- export default abstract class EditableLayer<
25
+ export abstract class EditableLayer<
16
26
  DataT = any,
17
27
  ExtraPropsT = Record<string, unknown>
18
28
  > extends CompositeLayer<ExtraPropsT & Required<EditableLayerProps<DataT>>> {
@@ -57,8 +67,8 @@ export default abstract class EditableLayer<
57
67
  pointerDownMapCoords: null,
58
68
 
59
69
  // Keep track of the mjolnir.js event handler so it can be deregistered
60
- eventHandler: this._forwardEventToCurrentLayer.bind(this),
61
- },
70
+ eventHandler: this._forwardEventToCurrentLayer.bind(this)
71
+ }
62
72
  });
63
73
 
64
74
  this._addEventHandlers();
@@ -70,21 +80,21 @@ export default abstract class EditableLayer<
70
80
 
71
81
  _addEventHandlers() {
72
82
  // @ts-expect-error accessing protected props
73
- const { eventManager } = this.context.deck;
74
- const { eventHandler } = this.state._editableLayerState;
83
+ const {eventManager} = this.context.deck;
84
+ const {eventHandler} = this.state._editableLayerState;
75
85
 
76
86
  for (const eventType of EVENT_TYPES) {
77
87
  eventManager.on(eventType as any, eventHandler, {
78
88
  // give nebula a higher priority so that it can stop propagation to deck.gl's map panning handlers
79
- priority: 100,
89
+ priority: 100
80
90
  });
81
91
  }
82
92
  }
83
93
 
84
94
  _removeEventHandlers() {
85
95
  // @ts-expect-error accessing protected props
86
- const { eventManager } = this.context.deck;
87
- const { eventHandler } = this.state._editableLayerState;
96
+ const {eventManager} = this.context.deck;
97
+ const {eventHandler} = this.state._editableLayerState;
88
98
 
89
99
  for (const eventType of EVENT_TYPES) {
90
100
  eventManager.off(eventType as any, eventHandler);
@@ -95,7 +105,7 @@ export default abstract class EditableLayer<
95
105
  // This means that the first layer instance will stick around to be the event listener, but will forward the event
96
106
  // to the latest layer instance.
97
107
  _forwardEventToCurrentLayer(event: any) {
98
- const currentLayer = this.getCurrentLayer()!;
108
+ const currentLayer = this.getCurrentLayer();
99
109
 
100
110
  // Use a naming convention to find the event handling function for this event type
101
111
  const func = currentLayer[`_on${event.type}`].bind(currentLayer);
@@ -106,7 +116,7 @@ export default abstract class EditableLayer<
106
116
  func(event);
107
117
  }
108
118
 
109
- _onanyclick({ srcEvent }: any) {
119
+ _onanyclick({srcEvent}: any) {
110
120
  const screenCoords = this.getScreenCoords(srcEvent) as [number, number];
111
121
  const mapCoords = this.getMapCoords(screenCoords);
112
122
 
@@ -116,11 +126,11 @@ export default abstract class EditableLayer<
116
126
  mapCoords,
117
127
  screenCoords,
118
128
  picks,
119
- sourceEvent: srcEvent,
129
+ sourceEvent: srcEvent
120
130
  });
121
131
  }
122
132
 
123
- _onkeyup({ srcEvent }: { srcEvent: KeyboardEvent }) {
133
+ _onkeyup({srcEvent}: {srcEvent: KeyboardEvent}) {
124
134
  this.onLayerKeyUp(srcEvent);
125
135
  }
126
136
 
@@ -134,8 +144,8 @@ export default abstract class EditableLayer<
134
144
  ...this.state._editableLayerState,
135
145
  pointerDownScreenCoords: screenCoords,
136
146
  pointerDownMapCoords: mapCoords,
137
- pointerDownPicks: picks,
138
- },
147
+ pointerDownPicks: picks
148
+ }
139
149
  });
140
150
 
141
151
  this.onStartDragging({
@@ -145,16 +155,16 @@ export default abstract class EditableLayer<
145
155
  pointerDownScreenCoords: screenCoords,
146
156
  pointerDownMapCoords: mapCoords,
147
157
  cancelPan: event.stopImmediatePropagation,
148
- sourceEvent: event.srcEvent,
158
+ sourceEvent: event.srcEvent
149
159
  });
150
160
  }
151
161
 
152
162
  _onpanmove(event: any) {
153
- const { srcEvent } = event;
163
+ const {srcEvent} = event;
154
164
  const screenCoords = this.getScreenCoords(srcEvent) as [number, number];
155
165
  const mapCoords = this.getMapCoords(screenCoords);
156
166
 
157
- const { pointerDownPicks, pointerDownScreenCoords, pointerDownMapCoords } =
167
+ const {pointerDownPicks, pointerDownScreenCoords, pointerDownMapCoords} =
158
168
  this.state._editableLayerState;
159
169
 
160
170
  const picks = this.getPicks(screenCoords);
@@ -167,7 +177,7 @@ export default abstract class EditableLayer<
167
177
  pointerDownScreenCoords,
168
178
  pointerDownMapCoords,
169
179
  sourceEvent: srcEvent,
170
- cancelPan: event.stopImmediatePropagation,
180
+ cancelPan: event.stopImmediatePropagation
171
181
  // another (hacky) approach for cancelling map panning
172
182
  // const controller = this.context.deck.viewManager.controllers[
173
183
  // Object.keys(this.context.deck.viewManager.controllers)[0]
@@ -176,11 +186,11 @@ export default abstract class EditableLayer<
176
186
  });
177
187
  }
178
188
 
179
- _onpanend({ srcEvent }: any) {
189
+ _onpanend({srcEvent}: any) {
180
190
  const screenCoords = this.getScreenCoords(srcEvent) as [number, number];
181
191
  const mapCoords = this.getMapCoords(screenCoords);
182
192
 
183
- const { pointerDownPicks, pointerDownScreenCoords, pointerDownMapCoords } =
193
+ const {pointerDownPicks, pointerDownScreenCoords, pointerDownMapCoords} =
184
194
  this.state._editableLayerState;
185
195
 
186
196
  const picks = this.getPicks(screenCoords);
@@ -192,7 +202,7 @@ export default abstract class EditableLayer<
192
202
  pointerDownPicks,
193
203
  pointerDownScreenCoords,
194
204
  pointerDownMapCoords,
195
- sourceEvent: srcEvent,
205
+ sourceEvent: srcEvent
196
206
  });
197
207
 
198
208
  this.setState({
@@ -200,17 +210,17 @@ export default abstract class EditableLayer<
200
210
  ...this.state._editableLayerState,
201
211
  pointerDownScreenCoords: null,
202
212
  pointerDownMapCoords: null,
203
- pointerDownPicks: null,
204
- },
213
+ pointerDownPicks: null
214
+ }
205
215
  });
206
216
  }
207
217
 
208
218
  _onpointermove(event: any) {
209
- const { srcEvent } = event;
219
+ const {srcEvent} = event;
210
220
  const screenCoords = this.getScreenCoords(srcEvent) as [number, number];
211
221
  const mapCoords = this.getMapCoords(screenCoords);
212
222
 
213
- const { pointerDownPicks, pointerDownScreenCoords, pointerDownMapCoords } =
223
+ const {pointerDownPicks, pointerDownScreenCoords, pointerDownMapCoords} =
214
224
  this.state._editableLayerState;
215
225
 
216
226
  const picks = this.getPicks(screenCoords);
@@ -223,17 +233,17 @@ export default abstract class EditableLayer<
223
233
  pointerDownScreenCoords,
224
234
  pointerDownMapCoords,
225
235
  sourceEvent: srcEvent,
226
- cancelPan: event.stopImmediatePropagation,
236
+ cancelPan: event.stopImmediatePropagation
227
237
  });
228
238
  }
229
239
 
230
240
  getPicks(screenCoords: [number, number]) {
231
- return this.context.deck!.pickMultipleObjects({
241
+ return this.context.deck.pickMultipleObjects({
232
242
  x: screenCoords[0],
233
243
  y: screenCoords[1],
234
244
  layerIds: [this.props.id],
235
245
  radius: this.props.pickingRadius,
236
- depth: this.props.pickingDepth,
246
+ depth: this.props.pickingDepth
237
247
  });
238
248
  }
239
249
 
@@ -242,7 +252,7 @@ export default abstract class EditableLayer<
242
252
  pointerEvent.clientX -
243
253
  (this.context.gl.canvas as HTMLCanvasElement).getBoundingClientRect().left,
244
254
  pointerEvent.clientY -
245
- (this.context.gl.canvas as HTMLCanvasElement).getBoundingClientRect().top,
255
+ (this.context.gl.canvas as HTMLCanvasElement).getBoundingClientRect().top
246
256
  ];
247
257
  }
248
258
 
@@ -1,6 +1,10 @@
1
- import { PathLayer, PathLayerProps } from '@deck.gl/layers';
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
2
4
 
3
- import { insertBefore } from '../utils';
5
+ import {PathLayer, PathLayerProps} from '@deck.gl/layers';
6
+
7
+ import {insertBefore} from '../utils/utils';
4
8
 
5
9
  interface EditablePathLayerProps extends PathLayerProps<any> {
6
10
  pickingLineWidthExtraPixels?: number;
@@ -8,10 +12,10 @@ interface EditablePathLayerProps extends PathLayerProps<any> {
8
12
 
9
13
  const defaultProps = {
10
14
  ...PathLayer.defaultProps,
11
- pickingLineWidthExtraPixels: { type: 'number', min: 0, value: Number.MAX_SAFE_INTEGER },
15
+ pickingLineWidthExtraPixels: {type: 'number', min: 0, value: Number.MAX_SAFE_INTEGER}
12
16
  };
13
17
 
14
- export default class EditablePathLayer extends PathLayer<any, EditablePathLayerProps> {
18
+ export class EditablePathLayer extends PathLayer<any, EditablePathLayerProps> {
15
19
  getShaders() {
16
20
  const shaders = super.getShaders();
17
21
 
@@ -31,8 +35,8 @@ export default class EditablePathLayer extends PathLayer<any, EditablePathLayerP
31
35
  ...(shaders.inject || {}),
32
36
  'vs:#decl': (shaders.inject?.['vs:#decl'] || '').concat(
33
37
  'uniform float pickingLineWidthExtraPixels;'
34
- ),
35
- },
38
+ )
39
+ }
36
40
  };
37
41
  }
38
42
 
@@ -41,8 +45,8 @@ export default class EditablePathLayer extends PathLayer<any, EditablePathLayerP
41
45
  ...props,
42
46
  uniforms: {
43
47
  ...props.uniforms,
44
- pickingLineWidthExtraPixels: this.props.pickingLineWidthExtraPixels,
45
- },
48
+ pickingLineWidthExtraPixels: this.props.pickingLineWidthExtraPixels
49
+ }
46
50
  });
47
51
  }
48
52
  }
@@ -1,18 +1,22 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+
1
5
  /* eslint-env browser */
2
6
 
3
- import { CompositeLayer } from '@deck.gl/core';
4
- import { ScatterplotLayer, LineLayer } from '@deck.gl/layers';
7
+ import {CompositeLayer} from '@deck.gl/core';
8
+ import {ScatterplotLayer, LineLayer} from '@deck.gl/layers';
5
9
 
6
10
  const defaultProps = {};
7
11
 
8
- export default class ElevatedEditHandleLayer extends CompositeLayer<any> {
12
+ export class ElevatedEditHandleLayer extends CompositeLayer<any> {
9
13
  static layerName = 'ElevatedEditHandleLayer';
10
14
  static defaultProps = defaultProps;
11
15
  renderLayers() {
12
16
  const handles = new ScatterplotLayer(
13
17
  Object.assign({}, this.props, {
14
18
  id: `${this.props.id}-ScatterplotLayer`,
15
- data: this.props.data,
19
+ data: this.props.data
16
20
  })
17
21
  );
18
22
 
@@ -21,10 +25,10 @@ export default class ElevatedEditHandleLayer extends CompositeLayer<any> {
21
25
  id: `${this.props.id}-LineLayer`,
22
26
  data: this.props.data,
23
27
  pickable: false,
24
- getSourcePosition: ({ position }) => [position[0], position[1], 0],
25
- getTargetPosition: ({ position }) => [position[0], position[1], position[2] || 0],
28
+ getSourcePosition: ({position}) => [position[0], position[1], 0],
29
+ getTargetPosition: ({position}) => [position[0], position[1], position[2] || 0],
26
30
  getColor: [150, 150, 150, 200],
27
- getStrokeWidth: 3,
31
+ getStrokeWidth: 3
28
32
  })
29
33
  );
30
34
 
@@ -1,7 +1,11 @@
1
- import { CompositeLayer, CompositeLayerProps, DefaultProps } from '@deck.gl/core';
2
- import { ScatterplotLayer, ScatterplotLayerProps } from '@deck.gl/layers';
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
3
4
 
4
- import { Color } from '../types';
5
+ import {CompositeLayer, CompositeLayerProps, DefaultProps} from '@deck.gl/core';
6
+ import {ScatterplotLayer, ScatterplotLayerProps} from '@deck.gl/layers';
7
+
8
+ import {Color} from '../utils/types';
5
9
 
6
10
  type JunctionScatterplotLayerProps = CompositeLayerProps &
7
11
  Omit<ScatterplotLayerProps, 'getFillColor'> & {
@@ -10,17 +14,17 @@ type JunctionScatterplotLayerProps = CompositeLayerProps &
10
14
  getInnerRadius?: number | ((d) => number);
11
15
  };
12
16
 
13
- export default class JunctionScatterplotLayer extends CompositeLayer<JunctionScatterplotLayerProps> {
17
+ export class JunctionScatterplotLayer extends CompositeLayer<JunctionScatterplotLayerProps> {
14
18
  static layerName = 'JunctionScatterplotLayer';
15
19
  static defaultProps: DefaultProps<JunctionScatterplotLayerProps> = {
16
20
  ...ScatterplotLayer.defaultProps,
17
21
  getFillColor: (d) => [0, 0, 0, 255],
18
22
  getStrokeColor: (d) => [255, 255, 255, 255],
19
- getInnerRadius: (d) => 1,
23
+ getInnerRadius: (d) => 1
20
24
  };
21
25
 
22
26
  renderLayers() {
23
- const { id, getFillColor, getStrokeColor, getInnerRadius, updateTriggers } = this.props;
27
+ const {id, getFillColor, getStrokeColor, getInnerRadius, updateTriggers} = this.props;
24
28
 
25
29
  // data needs to be passed explicitly after deck.gl 5.3
26
30
  return [
@@ -32,8 +36,8 @@ export default class JunctionScatterplotLayer extends CompositeLayer<JunctionSca
32
36
  getLineColor: getStrokeColor,
33
37
  updateTriggers: {
34
38
  ...updateTriggers,
35
- getStrokeColor: updateTriggers.getStrokeColor,
36
- },
39
+ getStrokeColor: updateTriggers.getStrokeColor
40
+ }
37
41
  }), // the inner part
38
42
  new ScatterplotLayer<any>({
39
43
  ...this.props,
@@ -45,9 +49,9 @@ export default class JunctionScatterplotLayer extends CompositeLayer<JunctionSca
45
49
  updateTriggers: {
46
50
  ...updateTriggers,
47
51
  getFillColor: updateTriggers.getFillColor,
48
- getRadius: updateTriggers.getInnerRadius,
49
- },
50
- }),
52
+ getRadius: updateTriggers.getInnerRadius
53
+ }
54
+ })
51
55
  ];
52
56
  }
53
57
  }
@@ -1,3 +1,7 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+
1
5
  /* eslint-env browser */
2
6
 
3
7
  import {CompositeLayer, CompositeLayerProps, DefaultProps} from '@deck.gl/core';
@@ -6,7 +10,7 @@ import {polygon} from '@turf/helpers';
6
10
  import turfBuffer from '@turf/buffer';
7
11
  import turfDifference from '@turf/difference';
8
12
 
9
- import EditableGeoJsonLayer from './editable-geojson-layer';
13
+ import {EditableGeoJsonLayer} from './editable-geojson-layer';
10
14
  import {DrawRectangleMode} from '../edit-modes/draw-rectangle-mode';
11
15
  import {DrawPolygonMode} from '../edit-modes/draw-polygon-mode';
12
16
  import {ViewMode} from '../edit-modes/view-mode';
@@ -69,7 +73,7 @@ const PASS_THROUGH_PROPS = [
69
73
  'getTentativeFillColor',
70
74
  'getTentativeLineWidth'
71
75
  ];
72
- export default class SelectionLayer<DataT, ExtraPropsT> extends CompositeLayer<
76
+ export class SelectionLayer<DataT, ExtraPropsT> extends CompositeLayer<
73
77
  ExtraPropsT & Required<SelectionLayerProps<DataT>>
74
78
  > {
75
79
  static layerName = 'SelectionLayer';
@@ -85,7 +89,7 @@ export default class SelectionLayer<DataT, ExtraPropsT> extends CompositeLayer<
85
89
  const {layerIds, onSelect} = this.props;
86
90
  const [x1, y1] = this.context.viewport.project(coordinates[0][0]);
87
91
  const [x2, y2] = this.context.viewport.project(coordinates[0][2]);
88
- const pickingInfos = this.context.deck!.pickObjects({
92
+ const pickingInfos = this.context.deck.pickObjects({
89
93
  x: Math.min(x1, x2),
90
94
  y: Math.min(y1, y2),
91
95
  width: Math.abs(x2 - x1),
@@ -132,7 +136,7 @@ export default class SelectionLayer<DataT, ExtraPropsT> extends CompositeLayer<
132
136
 
133
137
  // HACK, find a better way
134
138
  setTimeout(() => {
135
- const pickingInfos = this.context.deck!.pickObjects({
139
+ const pickingInfos = this.context.deck.pickObjects({
136
140
  x,
137
141
  y,
138
142
  width: maxX - x,
@@ -141,7 +145,7 @@ export default class SelectionLayer<DataT, ExtraPropsT> extends CompositeLayer<
141
145
  });
142
146
 
143
147
  onSelect({
144
- pickingInfos: pickingInfos.filter((item) => item.layer!.id !== this.props.id)
148
+ pickingInfos: pickingInfos.filter((item) => item.layer.id !== this.props.id)
145
149
  });
146
150
  }, 250);
147
151
  }
@@ -149,8 +153,8 @@ export default class SelectionLayer<DataT, ExtraPropsT> extends CompositeLayer<
149
153
  renderLayers() {
150
154
  const {pendingPolygonSelection} = this.state;
151
155
 
152
- const mode = MODE_MAP[this.props.selectionType!] || ViewMode;
153
- const modeConfig = MODE_CONFIG_MAP[this.props.selectionType!];
156
+ const mode = MODE_MAP[this.props.selectionType] || ViewMode;
157
+ const modeConfig = MODE_CONFIG_MAP[this.props.selectionType];
154
158
 
155
159
  const inheritedProps = {};
156
160
  PASS_THROUGH_PROPS.forEach((p) => {
package/src/index.ts CHANGED
@@ -1,88 +1,88 @@
1
- export { ArrowStyles, DEFAULT_ARROWS, MAX_ARROWS } from './lib/style';
2
- export { SELECTION_TYPE } from './lib/deck-renderer/deck-drawer';
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
3
4
 
4
- export { default as Feature } from './lib/feature';
5
- export { default as LayerMouseEvent } from './lib/layer-mouse-event';
5
+ export {ArrowStyles, DEFAULT_ARROWS, MAX_ARROWS} from './lib/style';
6
+ export {SELECTION_TYPE} from './lib/deck-renderer/deck-drawer';
6
7
 
7
- export { default as NebulaLayer } from './lib/nebula-layer';
8
- export { default as JunctionsLayer } from './lib/layers/junctions-layer';
9
- export { default as TextsLayer } from './lib/layers/texts-layer';
10
- export { default as SegmentsLayer } from './lib/layers/segments-layer';
8
+ export {Feature} from './lib/feature';
9
+ export {LayerMouseEvent} from './lib/layer-mouse-event';
11
10
 
12
- export { default as NebulaCore } from './lib/nebula';
11
+ export {NebulaLayer} from './lib/nebula-layer';
12
+ export {JunctionsLayer} from './lib/layers/junctions-layer';
13
+ export {TextsLayer} from './lib/layers/texts-layer';
14
+ export {SegmentsLayer} from './lib/layers/segments-layer';
13
15
 
14
- export { PROJECTED_PIXEL_SIZE_MULTIPLIER } from './lib/constants';
16
+ export {NebulaCore} from './lib/nebula-core';
17
+
18
+ export {PROJECTED_PIXEL_SIZE_MULTIPLIER} from './lib/constants';
15
19
 
16
20
  // Utils
17
- export { toDeckColor } from './utils';
21
+ export {toDeckColor} from './utils/utils';
18
22
 
19
23
  // Types
20
- export type { Color, Style, Viewport } from './types';
24
+ export type {Color, Style, Viewport} from './utils/types';
21
25
 
22
26
  // Layers
23
- export { default as EditableGeoJsonLayer } from './editable-layers/editable-geojson-layer';
24
- export { default as EditableH3ClusterLayer } from './editable-layers/editable-h3-cluster-layer';
25
- export { default as SelectionLayer } from './editable-layers/selection-layer';
26
- export { default as ElevatedEditHandleLayer } from './editable-layers/elevated-edit-handle-layer';
27
-
28
- // Layers moved from deck.gl
29
- export { default as PathOutlineLayer } from './editable-layers/path-outline-layer/path-outline-layer';
30
- export { default as PathMarkerLayer } from './editable-layers/path-marker-layer/path-marker-layer';
31
- export { default as JunctionScatterplotLayer } from './editable-layers/junction-scatterplot-layer';
27
+ export {EditableGeoJsonLayer} from './editable-layers/editable-geojson-layer';
28
+ export {EditableH3ClusterLayer} from './editable-layers/editable-h3-cluster-layer';
29
+ export {SelectionLayer} from './editable-layers/selection-layer';
30
+ export {ElevatedEditHandleLayer} from './editable-layers/elevated-edit-handle-layer';
32
31
 
32
+ // Layers move to deck.gl-community/layers?
33
+ export {JunctionScatterplotLayer} from './editable-layers/junction-scatterplot-layer';
33
34
 
34
35
  // Types
35
36
 
36
- import * as utils from './utils';
37
+ import * as utils from './utils/utils';
37
38
 
38
- export { utils };
39
+ export {utils};
39
40
 
40
- export type { EditMode } from './edit-modes/edit-mode';
41
- export type { GeoJsonEditModeType } from './edit-modes/geojson-edit-mode';
42
- export type { GeoJsonEditModeConstructor } from './edit-modes/geojson-edit-mode';
41
+ export {getPickedEditHandle, getEditHandlesForGeometry} from './edit-modes/utils';
43
42
 
44
- export { GeoJsonEditMode } from './edit-modes/geojson-edit-mode';
43
+ export type {EditMode} from './edit-modes/edit-mode';
44
+ export type {GeoJsonEditModeType} from './edit-modes/geojson-edit-mode';
45
+ export type {GeoJsonEditModeConstructor} from './edit-modes/geojson-edit-mode';
46
+
47
+ export {GeoJsonEditMode} from './edit-modes/geojson-edit-mode';
45
48
 
46
49
  // Alter modes
47
- export { ModifyMode } from './edit-modes/modify-mode';
48
- export { ResizeCircleMode } from './edit-modes/resize-circle-mode';
49
- export { TranslateMode } from './edit-modes/translate-mode';
50
- export { ScaleMode } from './edit-modes/scale-mode';
51
- export { RotateMode } from './edit-modes/rotate-mode';
52
- export { DuplicateMode } from './edit-modes/duplicate-mode';
53
- export { ExtendLineStringMode } from './edit-modes/extend-line-string-mode';
54
- export { SplitPolygonMode } from './edit-modes/split-polygon-mode';
55
- export { ExtrudeMode } from './edit-modes/extrude-mode';
56
- export { ElevationMode } from './edit-modes/elevation-mode';
57
- export { TransformMode } from './edit-modes/transform-mode';
50
+ export {ModifyMode} from './edit-modes/modify-mode';
51
+ export {ResizeCircleMode} from './edit-modes/resize-circle-mode';
52
+ export {TranslateMode} from './edit-modes/translate-mode';
53
+ export {ScaleMode} from './edit-modes/scale-mode';
54
+ export {RotateMode} from './edit-modes/rotate-mode';
55
+ export {DuplicateMode} from './edit-modes/duplicate-mode';
56
+ export {ExtendLineStringMode} from './edit-modes/extend-line-string-mode';
57
+ export {SplitPolygonMode} from './edit-modes/split-polygon-mode';
58
+ export {ExtrudeMode} from './edit-modes/extrude-mode';
59
+ export {ElevationMode} from './edit-modes/elevation-mode';
60
+ export {TransformMode} from './edit-modes/transform-mode';
58
61
 
59
62
  // Draw modes
60
- export { DrawPointMode } from './edit-modes/draw-point-mode';
61
- export { DrawLineStringMode } from './edit-modes/draw-line-string-mode';
62
- export { DrawPolygonMode } from './edit-modes/draw-polygon-mode';
63
- export { DrawRectangleMode } from './edit-modes/draw-rectangle-mode';
64
- export { DrawSquareMode } from './edit-modes/draw-square-mode';
65
- export { DrawRectangleFromCenterMode } from './edit-modes/draw-rectangle-from-center-mode';
66
- export { DrawSquareFromCenterMode } from './edit-modes/draw-square-from-center-mode';
67
- export { DrawCircleByDiameterMode } from './edit-modes/draw-circle-by-diameter-mode';
68
- export { DrawCircleFromCenterMode } from './edit-modes/draw-circle-from-center-mode';
69
- export { DrawEllipseByBoundingBoxMode } from './edit-modes/draw-ellipse-by-bounding-box-mode';
70
- export { DrawEllipseUsingThreePointsMode } from './edit-modes/draw-ellipse-using-three-points-mode';
71
- export { DrawRectangleUsingThreePointsMode } from './edit-modes/draw-rectangle-using-three-points-mode';
72
- export { Draw90DegreePolygonMode } from './edit-modes/draw-90degree-polygon-mode';
73
- export { DrawPolygonByDraggingMode } from './edit-modes/draw-polygon-by-dragging-mode';
74
- export { ImmutableFeatureCollection } from './edit-modes/immutable-feature-collection';
63
+ export {DrawPointMode} from './edit-modes/draw-point-mode';
64
+ export {DrawLineStringMode} from './edit-modes/draw-line-string-mode';
65
+ export {DrawPolygonMode} from './edit-modes/draw-polygon-mode';
66
+ export {DrawRectangleMode} from './edit-modes/draw-rectangle-mode';
67
+ export {DrawSquareMode} from './edit-modes/draw-square-mode';
68
+ export {DrawRectangleFromCenterMode} from './edit-modes/draw-rectangle-from-center-mode';
69
+ export {DrawSquareFromCenterMode} from './edit-modes/draw-square-from-center-mode';
70
+ export {DrawCircleByDiameterMode} from './edit-modes/draw-circle-by-diameter-mode';
71
+ export {DrawCircleFromCenterMode} from './edit-modes/draw-circle-from-center-mode';
72
+ export {DrawEllipseByBoundingBoxMode} from './edit-modes/draw-ellipse-by-bounding-box-mode';
73
+ export {DrawEllipseUsingThreePointsMode} from './edit-modes/draw-ellipse-using-three-points-mode';
74
+ export {DrawRectangleUsingThreePointsMode} from './edit-modes/draw-rectangle-using-three-points-mode';
75
+ export {Draw90DegreePolygonMode} from './edit-modes/draw-90degree-polygon-mode';
76
+ export {DrawPolygonByDraggingMode} from './edit-modes/draw-polygon-by-dragging-mode';
77
+ export {ImmutableFeatureCollection} from './edit-modes/immutable-feature-collection';
75
78
 
76
79
  // Other modes
77
- export { ViewMode } from './edit-modes/view-mode';
78
- export { MeasureDistanceMode } from './edit-modes/measure-distance-mode';
79
- export { MeasureAreaMode } from './edit-modes/measure-area-mode';
80
- export { MeasureAngleMode } from './edit-modes/measure-angle-mode';
81
- export { CompositeMode } from './edit-modes/composite-mode';
82
- export { SnappableMode } from './edit-modes/snappable-mode';
83
-
84
- // Experimental
85
- export { default as _memoize } from './memoize';
80
+ export {ViewMode} from './edit-modes/view-mode';
81
+ export {MeasureDistanceMode} from './edit-modes/measure-distance-mode';
82
+ export {MeasureAreaMode} from './edit-modes/measure-area-mode';
83
+ export {MeasureAngleMode} from './edit-modes/measure-angle-mode';
84
+ export {CompositeMode} from './edit-modes/composite-mode';
85
+ export {SnappableMode} from './edit-modes/snappable-mode';
86
86
 
87
87
  export type {
88
88
  ScreenCoordinates,
@@ -96,7 +96,7 @@ export type {
96
96
  ModeProps,
97
97
  GuideFeatureCollection,
98
98
  // Viewport,
99
- Tooltip,
99
+ Tooltip
100
100
  } from './edit-modes/types';
101
101
 
102
102
  export type {
@@ -121,5 +121,8 @@ export type {
121
121
  FeatureWithProps,
122
122
  // Feature,
123
123
  FeatureCollection,
124
- AnyGeoJson,
125
- } from './geojson-types';
124
+ AnyGeoJson
125
+ } from './utils/geojson-types';
126
+
127
+ // Experimental
128
+ export {memoize as _memoize} from './utils/memoize';
@@ -1,3 +1,7 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+
1
5
  /**
2
6
  * A multiplier for screen-space width/scale for Arc, Line, Icon and Text layers.
3
7
  * Required in order to maintain the same appearance after upgrading to deck.gl v8.5.
@@ -1,4 +1,4 @@
1
- export default class DeckCache<TORIG, TCONV> {
1
+ export class DeckCache<TORIG, TCONV> {
2
2
  objects: TCONV[];
3
3
  originals: TORIG[];
4
4
  updateTrigger: number;