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

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 (389) hide show
  1. package/LICENSE +19 -0
  2. package/README.md +2 -81
  3. package/dist/constants.d.ts +1 -0
  4. package/dist/constants.d.ts.map +1 -0
  5. package/dist/constants.js +4 -1
  6. package/dist/edit-modes/composite-mode.d.ts +4 -3
  7. package/dist/edit-modes/composite-mode.d.ts.map +1 -0
  8. package/dist/edit-modes/composite-mode.js +5 -2
  9. package/dist/edit-modes/draw-90degree-polygon-mode.d.ts +4 -3
  10. package/dist/edit-modes/draw-90degree-polygon-mode.d.ts.map +1 -0
  11. package/dist/edit-modes/draw-90degree-polygon-mode.js +30 -25
  12. package/dist/edit-modes/draw-circle-by-diameter-mode.d.ts +4 -3
  13. package/dist/edit-modes/draw-circle-by-diameter-mode.d.ts.map +1 -0
  14. package/dist/edit-modes/draw-circle-by-diameter-mode.js +9 -6
  15. package/dist/edit-modes/draw-circle-from-center-mode.d.ts +4 -3
  16. package/dist/edit-modes/draw-circle-from-center-mode.d.ts.map +1 -0
  17. package/dist/edit-modes/draw-circle-from-center-mode.js +8 -5
  18. package/dist/edit-modes/draw-ellipse-by-bounding-box-mode.d.ts +3 -2
  19. package/dist/edit-modes/draw-ellipse-by-bounding-box-mode.d.ts.map +1 -0
  20. package/dist/edit-modes/draw-ellipse-by-bounding-box-mode.js +5 -2
  21. package/dist/edit-modes/draw-ellipse-using-three-points-mode.d.ts +3 -2
  22. package/dist/edit-modes/draw-ellipse-using-three-points-mode.d.ts.map +1 -0
  23. package/dist/edit-modes/draw-ellipse-using-three-points-mode.js +5 -2
  24. package/dist/edit-modes/draw-line-string-mode.d.ts +4 -3
  25. package/dist/edit-modes/draw-line-string-mode.d.ts.map +1 -0
  26. package/dist/edit-modes/draw-line-string-mode.js +21 -18
  27. package/dist/edit-modes/draw-point-mode.d.ts +4 -3
  28. package/dist/edit-modes/draw-point-mode.d.ts.map +1 -0
  29. package/dist/edit-modes/draw-point-mode.js +8 -5
  30. package/dist/edit-modes/draw-polygon-by-dragging-mode.d.ts +4 -3
  31. package/dist/edit-modes/draw-polygon-by-dragging-mode.d.ts.map +1 -0
  32. package/dist/edit-modes/draw-polygon-by-dragging-mode.js +12 -7
  33. package/dist/edit-modes/draw-polygon-mode.d.ts +4 -3
  34. package/dist/edit-modes/draw-polygon-mode.d.ts.map +1 -0
  35. package/dist/edit-modes/draw-polygon-mode.js +22 -18
  36. package/dist/edit-modes/draw-rectangle-from-center-mode.d.ts +3 -2
  37. package/dist/edit-modes/draw-rectangle-from-center-mode.d.ts.map +1 -0
  38. package/dist/edit-modes/draw-rectangle-from-center-mode.js +4 -1
  39. package/dist/edit-modes/draw-rectangle-mode.d.ts +3 -2
  40. package/dist/edit-modes/draw-rectangle-mode.d.ts.map +1 -0
  41. package/dist/edit-modes/draw-rectangle-mode.js +4 -1
  42. package/dist/edit-modes/draw-rectangle-using-three-points-mode.d.ts +3 -2
  43. package/dist/edit-modes/draw-rectangle-using-three-points-mode.d.ts.map +1 -0
  44. package/dist/edit-modes/draw-rectangle-using-three-points-mode.js +10 -7
  45. package/dist/edit-modes/draw-square-from-center-mode.d.ts +3 -2
  46. package/dist/edit-modes/draw-square-from-center-mode.d.ts.map +1 -0
  47. package/dist/edit-modes/draw-square-from-center-mode.js +4 -1
  48. package/dist/edit-modes/draw-square-mode.d.ts +3 -2
  49. package/dist/edit-modes/draw-square-mode.d.ts.map +1 -0
  50. package/dist/edit-modes/draw-square-mode.js +4 -1
  51. package/dist/edit-modes/duplicate-mode.d.ts +4 -3
  52. package/dist/edit-modes/duplicate-mode.d.ts.map +1 -0
  53. package/dist/edit-modes/duplicate-mode.js +4 -1
  54. package/dist/edit-modes/edit-mode.d.ts +2 -1
  55. package/dist/edit-modes/edit-mode.d.ts.map +1 -0
  56. package/dist/edit-modes/edit-mode.js +3 -1
  57. package/dist/edit-modes/elevation-mode.d.ts +5 -4
  58. package/dist/edit-modes/elevation-mode.d.ts.map +1 -0
  59. package/dist/edit-modes/elevation-mode.js +10 -7
  60. package/dist/edit-modes/extend-line-string-mode.d.ts +4 -3
  61. package/dist/edit-modes/extend-line-string-mode.d.ts.map +1 -0
  62. package/dist/edit-modes/extend-line-string-mode.js +11 -8
  63. package/dist/edit-modes/extrude-mode.d.ts +4 -3
  64. package/dist/edit-modes/extrude-mode.d.ts.map +1 -0
  65. package/dist/edit-modes/extrude-mode.js +12 -9
  66. package/dist/edit-modes/geojson-edit-mode.d.ts +4 -3
  67. package/dist/edit-modes/geojson-edit-mode.d.ts.map +1 -0
  68. package/dist/edit-modes/geojson-edit-mode.js +20 -17
  69. package/dist/edit-modes/immutable-feature-collection.d.ts +3 -1
  70. package/dist/edit-modes/immutable-feature-collection.d.ts.map +1 -0
  71. package/dist/edit-modes/immutable-feature-collection.js +25 -20
  72. package/dist/edit-modes/measure-angle-mode.d.ts +4 -3
  73. package/dist/edit-modes/measure-angle-mode.d.ts.map +1 -0
  74. package/dist/edit-modes/measure-angle-mode.js +9 -9
  75. package/dist/edit-modes/measure-area-mode.d.ts +4 -3
  76. package/dist/edit-modes/measure-area-mode.d.ts.map +1 -0
  77. package/dist/edit-modes/measure-area-mode.js +8 -6
  78. package/dist/edit-modes/measure-distance-mode.d.ts +4 -3
  79. package/dist/edit-modes/measure-distance-mode.d.ts.map +1 -0
  80. package/dist/edit-modes/measure-distance-mode.js +19 -16
  81. package/dist/edit-modes/modify-mode.d.ts +5 -4
  82. package/dist/edit-modes/modify-mode.d.ts.map +1 -0
  83. package/dist/edit-modes/modify-mode.js +19 -16
  84. package/dist/edit-modes/resize-circle-mode.d.ts +6 -5
  85. package/dist/edit-modes/resize-circle-mode.d.ts.map +1 -0
  86. package/dist/edit-modes/resize-circle-mode.js +6 -4
  87. package/dist/edit-modes/rotate-mode.d.ts +4 -3
  88. package/dist/edit-modes/rotate-mode.d.ts.map +1 -0
  89. package/dist/edit-modes/rotate-mode.js +11 -8
  90. package/dist/edit-modes/scale-mode.d.ts +4 -3
  91. package/dist/edit-modes/scale-mode.d.ts.map +1 -0
  92. package/dist/edit-modes/scale-mode.js +11 -8
  93. package/dist/edit-modes/snappable-mode.d.ts +4 -3
  94. package/dist/edit-modes/snappable-mode.d.ts.map +1 -0
  95. package/dist/edit-modes/snappable-mode.js +9 -6
  96. package/dist/edit-modes/split-polygon-mode.d.ts +4 -3
  97. package/dist/edit-modes/split-polygon-mode.d.ts.map +1 -0
  98. package/dist/edit-modes/split-polygon-mode.js +15 -12
  99. package/dist/edit-modes/three-click-polygon-mode.d.ts +4 -3
  100. package/dist/edit-modes/three-click-polygon-mode.d.ts.map +1 -0
  101. package/dist/edit-modes/three-click-polygon-mode.js +10 -7
  102. package/dist/edit-modes/transform-mode.d.ts +4 -3
  103. package/dist/edit-modes/transform-mode.d.ts.map +1 -0
  104. package/dist/edit-modes/transform-mode.js +8 -5
  105. package/dist/edit-modes/translate-mode.d.ts +4 -3
  106. package/dist/edit-modes/translate-mode.d.ts.map +1 -0
  107. package/dist/edit-modes/translate-mode.js +10 -7
  108. package/dist/edit-modes/two-click-polygon-mode.d.ts +4 -3
  109. package/dist/edit-modes/two-click-polygon-mode.d.ts.map +1 -0
  110. package/dist/edit-modes/two-click-polygon-mode.js +10 -7
  111. package/dist/edit-modes/types.d.ts +2 -1
  112. package/dist/edit-modes/types.d.ts.map +1 -0
  113. package/dist/edit-modes/types.js +3 -0
  114. package/dist/edit-modes/utils.d.ts +3 -2
  115. package/dist/edit-modes/utils.d.ts.map +1 -0
  116. package/dist/edit-modes/utils.js +22 -19
  117. package/dist/edit-modes/view-mode.d.ts +2 -1
  118. package/dist/edit-modes/view-mode.d.ts.map +1 -0
  119. package/dist/edit-modes/view-mode.js +4 -1
  120. package/dist/editable-layers/editable-geojson-layer.d.ts +7 -6
  121. package/dist/editable-layers/editable-geojson-layer.d.ts.map +1 -0
  122. package/dist/editable-layers/editable-geojson-layer.js +53 -52
  123. package/dist/editable-layers/editable-h3-cluster-layer.d.ts +3 -2
  124. package/dist/editable-layers/editable-h3-cluster-layer.d.ts.map +1 -0
  125. package/dist/editable-layers/editable-h3-cluster-layer.js +8 -5
  126. package/dist/editable-layers/editable-layer.d.ts +7 -6
  127. package/dist/editable-layers/editable-layer.d.ts.map +1 -0
  128. package/dist/editable-layers/editable-layer.js +18 -15
  129. package/dist/editable-layers/editable-path-layer.d.ts +2 -1
  130. package/dist/editable-layers/editable-path-layer.d.ts.map +1 -0
  131. package/dist/editable-layers/editable-path-layer.js +10 -7
  132. package/dist/editable-layers/elevated-edit-handle-layer.d.ts +2 -1
  133. package/dist/editable-layers/elevated-edit-handle-layer.d.ts.map +1 -0
  134. package/dist/editable-layers/elevated-edit-handle-layer.js +6 -3
  135. package/dist/editable-layers/junction-scatterplot-layer.d.ts +3 -2
  136. package/dist/editable-layers/junction-scatterplot-layer.d.ts.map +1 -0
  137. package/dist/editable-layers/junction-scatterplot-layer.js +10 -7
  138. package/dist/editable-layers/selection-layer.d.ts +2 -1
  139. package/dist/editable-layers/selection-layer.d.ts.map +1 -0
  140. package/dist/editable-layers/selection-layer.js +8 -5
  141. package/dist/index.cjs +70 -542
  142. package/dist/index.cjs.map +4 -4
  143. package/dist/index.d.ts +59 -59
  144. package/dist/index.d.ts.map +1 -0
  145. package/dist/index.js +56 -54
  146. package/dist/lib/constants.d.ts +1 -0
  147. package/dist/lib/constants.d.ts.map +1 -0
  148. package/dist/lib/constants.js +3 -0
  149. package/dist/lib/deck-renderer/deck-cache.d.ts +2 -1
  150. package/dist/lib/deck-renderer/deck-cache.d.ts.map +1 -0
  151. package/dist/lib/deck-renderer/deck-cache.js +1 -1
  152. package/dist/lib/deck-renderer/deck-drawer.d.ts +3 -3
  153. package/dist/lib/deck-renderer/deck-drawer.d.ts.map +1 -0
  154. package/dist/lib/deck-renderer/deck-drawer.js +12 -12
  155. package/dist/lib/feature.d.ts +5 -4
  156. package/dist/lib/feature.d.ts.map +1 -0
  157. package/dist/lib/feature.js +4 -1
  158. package/dist/lib/layer-mouse-event.d.ts +3 -2
  159. package/dist/lib/layer-mouse-event.d.ts.map +1 -0
  160. package/dist/lib/layer-mouse-event.js +4 -1
  161. package/dist/lib/layers/junctions-layer.d.ts +5 -4
  162. package/dist/lib/layers/junctions-layer.d.ts.map +1 -0
  163. package/dist/lib/layers/junctions-layer.js +10 -7
  164. package/dist/lib/layers/segments-layer.d.ts +5 -4
  165. package/dist/lib/layers/segments-layer.d.ts.map +1 -0
  166. package/dist/lib/layers/segments-layer.js +12 -9
  167. package/dist/lib/layers/texts-layer.d.ts +4 -3
  168. package/dist/lib/layers/texts-layer.d.ts.map +1 -0
  169. package/dist/lib/layers/texts-layer.js +9 -6
  170. package/dist/lib/math.d.ts +2 -1
  171. package/dist/lib/math.d.ts.map +1 -0
  172. package/dist/lib/math.js +3 -0
  173. package/dist/lib/{nebula.d.ts → nebula-core.d.ts} +3 -2
  174. package/dist/lib/nebula-core.d.ts.map +1 -0
  175. package/dist/lib/{nebula.js → nebula-core.js} +7 -4
  176. package/dist/lib/nebula-layer.d.ts +3 -2
  177. package/dist/lib/nebula-layer.d.ts.map +1 -0
  178. package/dist/lib/nebula-layer.js +4 -1
  179. package/dist/lib/style.d.ts +1 -0
  180. package/dist/lib/style.d.ts.map +1 -0
  181. package/dist/lib/style.js +5 -2
  182. package/dist/mode-handlers/composite-mode-handler.d.ts +4 -3
  183. package/dist/mode-handlers/composite-mode-handler.d.ts.map +1 -0
  184. package/dist/mode-handlers/composite-mode-handler.js +1 -1
  185. package/dist/mode-handlers/draw-90degree-polygon-handler.d.ts +4 -3
  186. package/dist/mode-handlers/draw-90degree-polygon-handler.d.ts.map +1 -0
  187. package/dist/mode-handlers/draw-90degree-polygon-handler.js +13 -10
  188. package/dist/mode-handlers/draw-circle-by-bounding-box-handler.d.ts +4 -3
  189. package/dist/mode-handlers/draw-circle-by-bounding-box-handler.d.ts.map +1 -0
  190. package/dist/mode-handlers/draw-circle-by-bounding-box-handler.js +5 -2
  191. package/dist/mode-handlers/draw-circle-from-center-handler.d.ts +4 -3
  192. package/dist/mode-handlers/draw-circle-from-center-handler.d.ts.map +1 -0
  193. package/dist/mode-handlers/draw-circle-from-center-handler.js +4 -1
  194. package/dist/mode-handlers/draw-ellipse-by-bounding-box-handler.d.ts +4 -3
  195. package/dist/mode-handlers/draw-ellipse-by-bounding-box-handler.d.ts.map +1 -0
  196. package/dist/mode-handlers/draw-ellipse-by-bounding-box-handler.js +5 -2
  197. package/dist/mode-handlers/draw-ellipse-using-three-points-handler.d.ts +4 -3
  198. package/dist/mode-handlers/draw-ellipse-using-three-points-handler.d.ts.map +1 -0
  199. package/dist/mode-handlers/draw-ellipse-using-three-points-handler.js +7 -4
  200. package/dist/mode-handlers/draw-line-string-handler.d.ts +3 -2
  201. package/dist/mode-handlers/draw-line-string-handler.d.ts.map +1 -0
  202. package/dist/mode-handlers/draw-line-string-handler.js +8 -5
  203. package/dist/mode-handlers/draw-point-handler.d.ts +3 -2
  204. package/dist/mode-handlers/draw-point-handler.d.ts.map +1 -0
  205. package/dist/mode-handlers/draw-point-handler.js +5 -2
  206. package/dist/mode-handlers/draw-polygon-handler.d.ts +4 -3
  207. package/dist/mode-handlers/draw-polygon-handler.d.ts.map +1 -0
  208. package/dist/mode-handlers/draw-polygon-handler.js +10 -7
  209. package/dist/mode-handlers/draw-rectangle-handler.d.ts +4 -3
  210. package/dist/mode-handlers/draw-rectangle-handler.d.ts.map +1 -0
  211. package/dist/mode-handlers/draw-rectangle-handler.js +4 -1
  212. package/dist/mode-handlers/draw-rectangle-using-three-points-handler.d.ts +4 -3
  213. package/dist/mode-handlers/draw-rectangle-using-three-points-handler.d.ts.map +1 -0
  214. package/dist/mode-handlers/draw-rectangle-using-three-points-handler.js +12 -9
  215. package/dist/mode-handlers/duplicate-handler.d.ts +4 -3
  216. package/dist/mode-handlers/duplicate-handler.d.ts.map +1 -0
  217. package/dist/mode-handlers/duplicate-handler.js +4 -1
  218. package/dist/mode-handlers/elevation-handler.d.ts +6 -5
  219. package/dist/mode-handlers/elevation-handler.d.ts.map +1 -0
  220. package/dist/mode-handlers/elevation-handler.js +10 -7
  221. package/dist/mode-handlers/extrude-handler.d.ts +4 -3
  222. package/dist/mode-handlers/extrude-handler.d.ts.map +1 -0
  223. package/dist/mode-handlers/extrude-handler.js +12 -9
  224. package/dist/mode-handlers/mode-handler.d.ts +4 -3
  225. package/dist/mode-handlers/mode-handler.d.ts.map +1 -0
  226. package/dist/mode-handlers/mode-handler.js +18 -15
  227. package/dist/mode-handlers/modify-handler.d.ts +5 -4
  228. package/dist/mode-handlers/modify-handler.d.ts.map +1 -0
  229. package/dist/mode-handlers/modify-handler.js +18 -15
  230. package/dist/mode-handlers/rotate-handler.d.ts +4 -3
  231. package/dist/mode-handlers/rotate-handler.d.ts.map +1 -0
  232. package/dist/mode-handlers/rotate-handler.js +5 -2
  233. package/dist/mode-handlers/scale-handler.d.ts +4 -3
  234. package/dist/mode-handlers/scale-handler.d.ts.map +1 -0
  235. package/dist/mode-handlers/scale-handler.js +6 -3
  236. package/dist/mode-handlers/snappable-handler.d.ts +4 -3
  237. package/dist/mode-handlers/snappable-handler.d.ts.map +1 -0
  238. package/dist/mode-handlers/snappable-handler.js +6 -3
  239. package/dist/mode-handlers/split-polygon-handler.d.ts +3 -2
  240. package/dist/mode-handlers/split-polygon-handler.d.ts.map +1 -0
  241. package/dist/mode-handlers/split-polygon-handler.js +12 -9
  242. package/dist/mode-handlers/three-click-polygon-handler.d.ts +3 -2
  243. package/dist/mode-handlers/three-click-polygon-handler.d.ts.map +1 -0
  244. package/dist/mode-handlers/three-click-polygon-handler.js +4 -1
  245. package/dist/mode-handlers/translate-handler.d.ts +4 -3
  246. package/dist/mode-handlers/translate-handler.d.ts.map +1 -0
  247. package/dist/mode-handlers/translate-handler.js +5 -2
  248. package/dist/mode-handlers/two-click-polygon-handler.d.ts +3 -2
  249. package/dist/mode-handlers/two-click-polygon-handler.d.ts.map +1 -0
  250. package/dist/mode-handlers/two-click-polygon-handler.js +4 -1
  251. package/dist/mode-handlers/view-handler.d.ts +3 -2
  252. package/dist/mode-handlers/view-handler.d.ts.map +1 -0
  253. package/dist/mode-handlers/view-handler.js +4 -1
  254. package/dist/shaderlib/color/color.d.ts +8 -6
  255. package/dist/shaderlib/color/color.d.ts.map +1 -0
  256. package/dist/shaderlib/color/color.js +7 -4
  257. package/dist/shaderlib/utils/utils.d.ts +3 -2
  258. package/dist/shaderlib/utils/utils.d.ts.map +1 -0
  259. package/dist/shaderlib/utils/utils.js +5 -2
  260. package/dist/{curve-utils.d.ts → utils/curve-utils.d.ts} +1 -0
  261. package/dist/utils/curve-utils.d.ts.map +1 -0
  262. package/dist/{curve-utils.js → utils/curve-utils.js} +7 -4
  263. package/dist/{geojson-types.d.ts → utils/geojson-types.d.ts} +3 -25
  264. package/dist/utils/geojson-types.d.ts.map +1 -0
  265. package/dist/utils/geojson-types.js +4 -0
  266. package/dist/{memoize.d.ts → utils/memoize.d.ts} +2 -1
  267. package/dist/utils/memoize.d.ts.map +1 -0
  268. package/dist/{memoize.js → utils/memoize.js} +4 -1
  269. package/dist/{translateFromCenter.d.ts → utils/translate-from-center.d.ts} +1 -0
  270. package/dist/utils/translate-from-center.d.ts.map +1 -0
  271. package/dist/{translateFromCenter.js → utils/translate-from-center.js} +7 -4
  272. package/dist/{types.d.ts → utils/types.d.ts} +1 -0
  273. package/dist/utils/types.d.ts.map +1 -0
  274. package/dist/utils/types.js +4 -0
  275. package/dist/{utils.d.ts → utils/utils.d.ts} +5 -4
  276. package/dist/utils/utils.d.ts.map +1 -0
  277. package/dist/{utils.js → utils/utils.js} +11 -9
  278. package/package.json +11 -10
  279. package/src/constants.ts +5 -1
  280. package/src/edit-modes/composite-mode.ts +9 -5
  281. package/src/edit-modes/draw-90degree-polygon-mode.ts +38 -34
  282. package/src/edit-modes/draw-circle-by-diameter-mode.ts +16 -12
  283. package/src/edit-modes/draw-circle-from-center-mode.ts +15 -11
  284. package/src/edit-modes/draw-ellipse-by-bounding-box-mode.ts +8 -4
  285. package/src/edit-modes/draw-ellipse-using-three-points-mode.ts +9 -5
  286. package/src/edit-modes/draw-line-string-mode.ts +29 -25
  287. package/src/edit-modes/draw-point-mode.ts +13 -9
  288. package/src/edit-modes/draw-polygon-by-dragging-mode.ts +16 -16
  289. package/src/edit-modes/draw-polygon-mode.ts +28 -23
  290. package/src/edit-modes/draw-rectangle-from-center-mode.ts +6 -2
  291. package/src/edit-modes/draw-rectangle-mode.ts +6 -2
  292. package/src/edit-modes/draw-rectangle-using-three-points-mode.ts +12 -8
  293. package/src/edit-modes/draw-square-from-center-mode.ts +7 -3
  294. package/src/edit-modes/draw-square-mode.ts +7 -3
  295. package/src/edit-modes/duplicate-mode.ts +7 -3
  296. package/src/edit-modes/edit-mode.ts +5 -1
  297. package/src/edit-modes/elevation-mode.ts +13 -9
  298. package/src/edit-modes/extend-line-string-mode.ts +16 -12
  299. package/src/edit-modes/extrude-mode.ts +22 -18
  300. package/src/edit-modes/geojson-edit-mode.ts +37 -33
  301. package/src/edit-modes/immutable-feature-collection.ts +28 -22
  302. package/src/edit-modes/measure-angle-mode.ts +66 -59
  303. package/src/edit-modes/measure-area-mode.ts +13 -10
  304. package/src/edit-modes/measure-distance-mode.ts +37 -33
  305. package/src/edit-modes/modify-mode.ts +36 -32
  306. package/src/edit-modes/resize-circle-mode.ts +8 -5
  307. package/src/edit-modes/rotate-mode.ts +22 -18
  308. package/src/edit-modes/scale-mode.ts +29 -23
  309. package/src/edit-modes/snappable-mode.ts +19 -15
  310. package/src/edit-modes/split-polygon-mode.ts +25 -21
  311. package/src/edit-modes/three-click-polygon-mode.ts +15 -11
  312. package/src/edit-modes/transform-mode.ts +15 -11
  313. package/src/edit-modes/translate-mode.ts +15 -11
  314. package/src/edit-modes/two-click-polygon-mode.ts +15 -11
  315. package/src/edit-modes/types.ts +5 -1
  316. package/src/edit-modes/utils.ts +35 -30
  317. package/src/edit-modes/view-mode.ts +5 -1
  318. package/src/editable-layers/editable-geojson-layer.ts +44 -41
  319. package/src/editable-layers/editable-h3-cluster-layer.ts +17 -14
  320. package/src/editable-layers/editable-layer.ts +42 -32
  321. package/src/editable-layers/editable-path-layer.ts +12 -8
  322. package/src/editable-layers/elevated-edit-handle-layer.ts +11 -7
  323. package/src/editable-layers/junction-scatterplot-layer.ts +15 -11
  324. package/src/editable-layers/selection-layer.ts +11 -7
  325. package/src/index.ts +68 -65
  326. package/src/lib/constants.ts +4 -0
  327. package/src/lib/deck-renderer/deck-cache.ts +1 -1
  328. package/src/lib/deck-renderer/deck-drawer.ts +28 -28
  329. package/src/lib/feature.ts +7 -3
  330. package/src/lib/layer-mouse-event.ts +7 -6
  331. package/src/lib/layers/junctions-layer.ts +14 -10
  332. package/src/lib/layers/segments-layer.ts +24 -20
  333. package/src/lib/layers/texts-layer.ts +18 -14
  334. package/src/lib/math.ts +5 -1
  335. package/src/lib/{nebula.ts → nebula-core.ts} +8 -4
  336. package/src/lib/nebula-layer.ts +9 -5
  337. package/src/lib/style.ts +6 -2
  338. package/src/mode-handlers/composite-mode-handler.ts +6 -6
  339. package/src/mode-handlers/draw-90degree-polygon-handler.ts +22 -18
  340. package/src/mode-handlers/draw-circle-by-bounding-box-handler.ts +10 -6
  341. package/src/mode-handlers/draw-circle-from-center-handler.ts +10 -6
  342. package/src/mode-handlers/draw-ellipse-by-bounding-box-handler.ts +9 -5
  343. package/src/mode-handlers/draw-ellipse-using-three-points-handler.ts +12 -8
  344. package/src/mode-handlers/draw-line-string-handler.ts +12 -8
  345. package/src/mode-handlers/draw-point-handler.ts +9 -5
  346. package/src/mode-handlers/draw-polygon-handler.ts +16 -12
  347. package/src/mode-handlers/draw-rectangle-handler.ts +8 -4
  348. package/src/mode-handlers/draw-rectangle-using-three-points-handler.ts +17 -13
  349. package/src/mode-handlers/duplicate-handler.ts +8 -4
  350. package/src/mode-handlers/elevation-handler.ts +14 -10
  351. package/src/mode-handlers/extrude-handler.ts +15 -11
  352. package/src/mode-handlers/mode-handler.ts +26 -28
  353. package/src/mode-handlers/modify-handler.ts +29 -25
  354. package/src/mode-handlers/rotate-handler.ts +13 -17
  355. package/src/mode-handlers/scale-handler.ts +13 -13
  356. package/src/mode-handlers/snappable-handler.ts +28 -24
  357. package/src/mode-handlers/split-polygon-handler.ts +22 -18
  358. package/src/mode-handlers/three-click-polygon-handler.ts +6 -2
  359. package/src/mode-handlers/translate-handler.ts +12 -8
  360. package/src/mode-handlers/two-click-polygon-handler.ts +6 -2
  361. package/src/mode-handlers/view-handler.ts +7 -3
  362. package/src/shaderlib/color/color.ts +10 -5
  363. package/src/shaderlib/utils/utils.ts +6 -2
  364. package/src/{curve-utils.ts → utils/curve-utils.ts} +11 -7
  365. package/src/{geojson-types.ts → utils/geojson-types.ts} +16 -31
  366. package/src/{memoize.ts → utils/memoize.ts} +5 -1
  367. package/src/{translateFromCenter.ts → utils/translate-from-center.ts} +12 -8
  368. package/src/{types.ts → utils/types.ts} +4 -0
  369. package/src/{utils.ts → utils/utils.ts} +17 -14
  370. package/dist/editable-layers/path-marker-layer/arrow-2d-geometry.d.ts +0 -4
  371. package/dist/editable-layers/path-marker-layer/arrow-2d-geometry.js +0 -55
  372. package/dist/editable-layers/path-marker-layer/create-path-markers.d.ts +0 -16
  373. package/dist/editable-layers/path-marker-layer/create-path-markers.js +0 -75
  374. package/dist/editable-layers/path-marker-layer/path-marker-layer.d.ts +0 -40
  375. package/dist/editable-layers/path-marker-layer/path-marker-layer.js +0 -121
  376. package/dist/editable-layers/path-marker-layer/polyline.d.ts +0 -18
  377. package/dist/editable-layers/path-marker-layer/polyline.js +0 -37
  378. package/dist/editable-layers/path-outline-layer/path-outline-layer.d.ts +0 -26
  379. package/dist/editable-layers/path-outline-layer/path-outline-layer.js +0 -106
  380. package/dist/geojson-types.js +0 -2
  381. package/dist/shaderlib/outline/outline.d.ts +0 -8
  382. package/dist/shaderlib/outline/outline.js +0 -97
  383. package/dist/types.js +0 -1
  384. package/src/editable-layers/path-marker-layer/arrow-2d-geometry.ts +0 -61
  385. package/src/editable-layers/path-marker-layer/create-path-markers.ts +0 -107
  386. package/src/editable-layers/path-marker-layer/path-marker-layer.ts +0 -179
  387. package/src/editable-layers/path-marker-layer/polyline.ts +0 -40
  388. package/src/editable-layers/path-outline-layer/path-outline-layer.ts +0 -147
  389. package/src/shaderlib/outline/outline.ts +0 -101
@@ -1,7 +1,10 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import { point, lineString as toLineString } from '@turf/helpers';
2
- import { recursivelyTraverseNestedArrays, nearestPointOnProjectedLine, nearestPointOnLine, getEditHandlesForGeometry, getPickedEditHandles, getPickedEditHandle, getPickedExistingEditHandle, getPickedIntermediateEditHandle, updateRectanglePosition, } from './utils';
3
- import { GeoJsonEditMode } from './geojson-edit-mode';
4
- import { ImmutableFeatureCollection } from './immutable-feature-collection';
5
+ import { recursivelyTraverseNestedArrays, nearestPointOnProjectedLine, nearestPointOnLine, getEditHandlesForGeometry, getPickedEditHandles, getPickedEditHandle, getPickedExistingEditHandle, getPickedIntermediateEditHandle, updateRectanglePosition } from "./utils.js";
6
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
7
+ import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
5
8
  export class ModifyMode extends GeoJsonEditMode {
6
9
  // eslint-disable-next-line complexity
7
10
  getGuides(props) {
@@ -46,26 +49,26 @@ export class ModifyMode extends GeoJsonEditMode {
46
49
  });
47
50
  // tack on the lone intermediate point to the set of handles
48
51
  if (intermediatePoint) {
49
- const { geometry: { coordinates: position }, properties: { index }, } = intermediatePoint;
52
+ const { geometry: { coordinates: position }, properties: { index } } = intermediatePoint;
50
53
  handles.push({
51
54
  type: 'Feature',
52
55
  properties: {
53
56
  guideType: 'editHandle',
54
57
  editHandleType: 'intermediate',
55
58
  featureIndex: featureAsPick.index,
56
- positionIndexes: [...positionIndexPrefix, index + 1],
59
+ positionIndexes: [...positionIndexPrefix, index + 1]
57
60
  },
58
61
  geometry: {
59
62
  type: 'Point',
60
- coordinates: position,
61
- },
63
+ coordinates: position
64
+ }
62
65
  });
63
66
  }
64
67
  }
65
68
  }
66
69
  return {
67
70
  type: 'FeatureCollection',
68
- features: handles,
71
+ features: handles
69
72
  };
70
73
  }
71
74
  // turf.js does not support elevation for nearestPointOnLine
@@ -102,8 +105,8 @@ export class ModifyMode extends GeoJsonEditMode {
102
105
  editContext: {
103
106
  featureIndexes: [featureIndex],
104
107
  positionIndexes,
105
- position: pickedExistingHandle.geometry.coordinates,
106
- },
108
+ position: pickedExistingHandle.geometry.coordinates
109
+ }
107
110
  });
108
111
  }
109
112
  }
@@ -122,8 +125,8 @@ export class ModifyMode extends GeoJsonEditMode {
122
125
  editContext: {
123
126
  featureIndexes: [featureIndex],
124
127
  positionIndexes,
125
- position: pickedIntermediateHandle.geometry.coordinates,
126
- },
128
+ position: pickedIntermediateHandle.geometry.coordinates
129
+ }
127
130
  });
128
131
  }
129
132
  }
@@ -158,8 +161,8 @@ export class ModifyMode extends GeoJsonEditMode {
158
161
  editContext: {
159
162
  featureIndexes: [editHandleProperties.featureIndex],
160
163
  positionIndexes: editHandleProperties.positionIndexes,
161
- position: event.mapCoords,
162
- },
164
+ position: event.mapCoords
165
+ }
163
166
  });
164
167
  }
165
168
  handlePointerMove(event, props) {
@@ -180,8 +183,8 @@ export class ModifyMode extends GeoJsonEditMode {
180
183
  editContext: {
181
184
  featureIndexes: [editHandleProperties.featureIndex],
182
185
  positionIndexes: editHandleProperties.positionIndexes,
183
- position: event.mapCoords,
184
- },
186
+ position: event.mapCoords
187
+ }
185
188
  });
186
189
  }
187
190
  }
@@ -1,8 +1,8 @@
1
- import { NearestPointType } from './utils';
2
- import { LineString, Point, FeatureCollection, FeatureOf } from '../geojson-types';
3
- import { Viewport } from '../types';
4
- import { ModeProps, PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, EditHandleFeature, GuideFeatureCollection } from './types';
5
- import { GeoJsonEditMode } from './geojson-edit-mode';
1
+ import { NearestPointType } from "./utils.js";
2
+ import { LineString, Point, FeatureCollection, FeatureOf } from "../utils/geojson-types.js";
3
+ import { Viewport } from "../utils/types.js";
4
+ import { ModeProps, PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, EditHandleFeature, GuideFeatureCollection } from "./types.js";
5
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
6
6
  export declare class ResizeCircleMode extends GeoJsonEditMode {
7
7
  _selectedEditHandle: EditHandleFeature | null | undefined;
8
8
  _isResizing: boolean;
@@ -14,3 +14,4 @@ export declare class ResizeCircleMode extends GeoJsonEditMode {
14
14
  handleStopDragging(event: StopDraggingEvent, props: ModeProps<FeatureCollection>): void;
15
15
  getCursor(event: PointerMoveEvent): string | null | undefined;
16
16
  }
17
+ //# sourceMappingURL=resize-circle-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resize-circle-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/resize-circle-mode.ts"],"names":[],"mappings":"AASA,OAAO,EAKL,gBAAgB,EACjB,mBAAgB;AACjB,OAAO,EAAC,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAC,kCAA+B;AACvF,OAAO,EAAC,QAAQ,EAAC,0BAAuB;AACxC,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EAEvB,mBAAgB;AACjB,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAGpD,qBAAa,gBAAiB,SAAQ,eAAe;IACnD,mBAAmB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1D,WAAW,UAAS;IAGpB,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IA+EtE,eAAe,CACb,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,EAC3B,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,EACzB,QAAQ,EAAE,QAAQ,GAAG,IAAI,GAAG,SAAS,GACpC,gBAAgB;IAgBnB,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAkC/E,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAarF,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAMlF,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAOhF,SAAS,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;CAS9D"}
@@ -1,11 +1,14 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import nearestPointOnLine from '@turf/nearest-point-on-line';
2
5
  import { point, lineString as toLineString } from '@turf/helpers';
3
6
  import circle from '@turf/circle';
4
7
  import distance from '@turf/distance';
5
8
  import turfCenter from '@turf/center';
6
- import { recursivelyTraverseNestedArrays, nearestPointOnProjectedLine, getPickedEditHandles, getPickedEditHandle } from './utils';
7
- import { GeoJsonEditMode } from './geojson-edit-mode';
8
- import { ImmutableFeatureCollection } from './immutable-feature-collection';
9
+ import { recursivelyTraverseNestedArrays, nearestPointOnProjectedLine, getPickedEditHandles, getPickedEditHandle } from "./utils.js";
10
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
11
+ import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
9
12
  export class ResizeCircleMode extends GeoJsonEditMode {
10
13
  _selectedEditHandle;
11
14
  _isResizing = false;
@@ -97,7 +100,6 @@ export class ResizeCircleMode extends GeoJsonEditMode {
97
100
  const updatedFeature = circle(center, radius, options);
98
101
  const geometry = updatedFeature.geometry;
99
102
  const updatedData = new ImmutableFeatureCollection(props.data)
100
- // @ts-expect-error turf types diff
101
103
  .replaceGeometry(editHandleProperties.featureIndex, geometry)
102
104
  .getObject();
103
105
  props.onEdit({
@@ -1,6 +1,6 @@
1
- import { PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps, EditHandleFeature, GuideFeatureCollection } from './types';
2
- import { FeatureCollection, Position } from '../geojson-types';
3
- import { GeoJsonEditMode, GeoJsonEditAction } from './geojson-edit-mode';
1
+ import { PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps, EditHandleFeature, GuideFeatureCollection } from "./types.js";
2
+ import { FeatureCollection, Position } from "../utils/geojson-types.js";
3
+ import { GeoJsonEditMode, GeoJsonEditAction } from "./geojson-edit-mode.js";
4
4
  export declare class RotateMode extends GeoJsonEditMode {
5
5
  _selectedEditHandle: EditHandleFeature | null | undefined;
6
6
  _geometryBeingRotated: FeatureCollection | null | undefined;
@@ -15,3 +15,4 @@ export declare class RotateMode extends GeoJsonEditMode {
15
15
  updateCursor(props: ModeProps<FeatureCollection>): void;
16
16
  getRotateAction(startDragPoint: Position, currentPoint: Position, editType: string, props: ModeProps<FeatureCollection>): GeoJsonEditAction | null | undefined;
17
17
  }
18
+ //# sourceMappingURL=rotate-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rotate-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/rotate-mode.ts"],"names":[],"mappings":"AAcA,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,sBAAsB,EACvB,mBAAgB;AAEjB,OAAO,EAAC,iBAAiB,EAAE,QAAQ,EAAC,kCAA+B;AACnE,OAAO,EAAC,eAAe,EAAE,iBAAiB,EAA0B,+BAA4B;AAGhG,qBAAa,UAAW,SAAQ,eAAe;IAC7C,mBAAmB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1D,qBAAqB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC5D,WAAW,UAAS;IAEpB,8BAA8B,aAAc,iBAAiB,GAAG,IAAI,GAAG,SAAS,KAAG,OAAO,CAQxF;IAEF,aAAa,gBAA0B;IAEvC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAqDtE,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAkBxE,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAY9E,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAOlF,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAoBhF,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAShD,eAAe,CACb,cAAc,EAAE,QAAQ,EACxB,YAAY,EAAE,QAAQ,EACtB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAClC,iBAAiB,GAAG,IAAI,GAAG,SAAS;CAoCxC"}
@@ -1,3 +1,6 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import bbox from '@turf/bbox';
2
5
  import turfCentroid from '@turf/centroid';
3
6
  import turfBearing from '@turf/bearing';
@@ -8,9 +11,9 @@ import { getGeom } from '@turf/invariant';
8
11
  import { point, featureCollection, lineString } from '@turf/helpers';
9
12
  import turfTransformRotate from '@turf/transform-rotate';
10
13
  import polygonToLine from '@turf/polygon-to-line';
11
- import { getPickedEditHandle } from './utils';
12
- import { GeoJsonEditMode, getIntermediatePosition } from './geojson-edit-mode';
13
- import { ImmutableFeatureCollection } from './immutable-feature-collection';
14
+ import { getPickedEditHandle } from "./utils.js";
15
+ import { GeoJsonEditMode, getIntermediatePosition } from "./geojson-edit-mode.js";
16
+ import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
14
17
  export class RotateMode extends GeoJsonEditMode {
15
18
  _selectedEditHandle;
16
19
  _geometryBeingRotated;
@@ -56,12 +59,12 @@ export class RotateMode extends GeoJsonEditMode {
56
59
  // relative to the length of the longest edge of the enveloping box
57
60
  const rotateHandleCoords = topEdgeMidpointCoords && [
58
61
  topEdgeMidpointCoords[0],
59
- topEdgeMidpointCoords[1] + longestEdgeLength / 1000,
62
+ topEdgeMidpointCoords[1] + longestEdgeLength / 1000
60
63
  ];
61
64
  const lineFromEnvelopeToRotateHandle = lineString([topEdgeMidpointCoords, rotateHandleCoords]);
62
65
  const rotateHandle = point(rotateHandleCoords, {
63
66
  guideType: 'editHandle',
64
- editHandleType: 'rotate',
67
+ editHandleType: 'rotate'
65
68
  });
66
69
  const outFeatures = [polygonToLine(boundingBox), rotateHandle, lineFromEnvelopeToRotateHandle];
67
70
  // @ts-expect-error turf type diff
@@ -126,7 +129,7 @@ export class RotateMode extends GeoJsonEditMode {
126
129
  const rotatedFeatures = turfTransformRotate(
127
130
  // @ts-expect-error turf types too wide
128
131
  this._geometryBeingRotated, angle, {
129
- pivot: centroid,
132
+ pivot: centroid
130
133
  });
131
134
  let updatedData = new ImmutableFeatureCollection(props.data);
132
135
  const selectedIndexes = props.selectedIndexes;
@@ -139,8 +142,8 @@ export class RotateMode extends GeoJsonEditMode {
139
142
  updatedData: updatedData.getObject(),
140
143
  editType,
141
144
  editContext: {
142
- featureIndexes: selectedIndexes,
143
- },
145
+ featureIndexes: selectedIndexes
146
+ }
144
147
  };
145
148
  }
146
149
  }
@@ -1,6 +1,6 @@
1
- import { FeatureCollection, Position } from '../geojson-types';
2
- import { ModeProps, PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, EditHandleFeature, GuideFeatureCollection } from './types';
3
- import { GeoJsonEditMode } from './geojson-edit-mode';
1
+ import { FeatureCollection, Position } from "../utils/geojson-types.js";
2
+ import { ModeProps, PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, EditHandleFeature, GuideFeatureCollection } from "./types.js";
3
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
4
4
  export declare class ScaleMode extends GeoJsonEditMode {
5
5
  _geometryBeingScaled: FeatureCollection | null | undefined;
6
6
  _selectedEditHandle: EditHandleFeature | null | undefined;
@@ -25,3 +25,4 @@ export declare class ScaleMode extends GeoJsonEditMode {
25
25
  handleStopDragging(event: StopDraggingEvent, props: ModeProps<FeatureCollection>): void;
26
26
  getGuides(props: ModeProps<FeatureCollection>): GuideFeatureCollection;
27
27
  }
28
+ //# sourceMappingURL=scale-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scale-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/scale-mode.ts"],"names":[],"mappings":"AAcA,OAAO,EAAC,iBAAiB,EAAE,QAAQ,EAAC,kCAA+B;AACnE,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACvB,mBAAgB;AAEjB,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAGpD,qBAAa,SAAU,SAAQ,eAAe;IAC5C,oBAAoB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3D,mBAAmB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1D,kBAAkB,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAM;IAClD,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACnC,UAAU,UAAS;IAEnB,8BAA8B,aAAc,iBAAiB,GAAG,IAAI,GAAG,SAAS,KAAG,OAAO,CAQxF;IAEF,uBAAuB,mBAAoB,iBAAiB,KAAG,iBAAiB,GAAG,IAAI,CAoBrF;IAEF,eAAe,UAAW,SAAS,CAAC,iBAAiB,CAAC,cAAc,iBAAiB,uBASnF;IAEF,oBAAoB,QAAO,OAAO,CAAsC;IAExE,cAAc,mBACI,QAAQ,gBACV,QAAQ,YACZ,MAAM,SACT,SAAS,CAAC,iBAAiB,CAAC;;;;;;MA0BnC;IAEF,YAAY,UAAW,SAAS,CAAC,iBAAiB,CAAC,UA0BjD;IAEF,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAY9E,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAOlF,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAoBxE,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAsBhF,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;CA6BvE"}
@@ -1,3 +1,6 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import bbox from '@turf/bbox';
2
5
  import turfCentroid from '@turf/centroid';
3
6
  import turfBearing from '@turf/bearing';
@@ -8,9 +11,9 @@ import { coordEach } from '@turf/meta';
8
11
  import turfDistance from '@turf/distance';
9
12
  import turfTransformScale from '@turf/transform-scale';
10
13
  import { getCoord, getGeom } from '@turf/invariant';
11
- import { getPickedEditHandle } from './utils';
12
- import { GeoJsonEditMode } from './geojson-edit-mode';
13
- import { ImmutableFeatureCollection } from './immutable-feature-collection';
14
+ import { getPickedEditHandle } from "./utils.js";
15
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
16
+ import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
14
17
  export class ScaleMode extends GeoJsonEditMode {
15
18
  _geometryBeingScaled;
16
19
  _selectedEditHandle;
@@ -36,12 +39,12 @@ export class ScaleMode extends GeoJsonEditMode {
36
39
  }
37
40
  const guidePointCount = this._cornerGuidePoints.length;
38
41
  const oppositeIndex = (selectedHandleIndex + guidePointCount / 2) % guidePointCount;
39
- return this._cornerGuidePoints.find((p) => {
42
+ return (this._cornerGuidePoints.find((p) => {
40
43
  if (!Array.isArray(p.properties.positionIndexes)) {
41
44
  return false;
42
45
  }
43
46
  return p.properties.positionIndexes[0] === oppositeIndex;
44
- }) || null;
47
+ }) || null);
45
48
  };
46
49
  _getUpdatedData = (props, editedData) => {
47
50
  let updatedData = new ImmutableFeatureCollection(props.data);
@@ -69,8 +72,8 @@ export class ScaleMode extends GeoJsonEditMode {
69
72
  updatedData: this._getUpdatedData(props, scaledFeatures),
70
73
  editType,
71
74
  editContext: {
72
- featureIndexes: props.selectedIndexes,
73
- },
75
+ featureIndexes: props.selectedIndexes
76
+ }
74
77
  };
75
78
  };
76
79
  updateCursor = (props) => {
@@ -156,7 +159,7 @@ export class ScaleMode extends GeoJsonEditMode {
156
159
  const cornerPoint = point(coord, {
157
160
  guideType: 'editHandle',
158
161
  editHandleType: 'scale',
159
- positionIndexes: [coordIndex],
162
+ positionIndexes: [coordIndex]
160
163
  });
161
164
  cornerGuidePoints.push(cornerPoint);
162
165
  }
@@ -1,6 +1,6 @@
1
- import { Feature, FeatureCollection } from '../geojson-types';
2
- import { PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps, Pick, GuideFeatureCollection, EditHandleFeature } from './types';
3
- import { GeoJsonEditMode } from './geojson-edit-mode';
1
+ import { Feature, FeatureCollection } from "../utils/geojson-types.js";
2
+ import { PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps, Pick, GuideFeatureCollection, EditHandleFeature } from "./types.js";
3
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
4
4
  type MovementTypeEvent = PointerMoveEvent | StartDraggingEvent | StopDraggingEvent | DraggingEvent;
5
5
  export declare class SnappableMode extends GeoJsonEditMode {
6
6
  _handler: GeoJsonEditMode;
@@ -19,3 +19,4 @@ export declare class SnappableMode extends GeoJsonEditMode {
19
19
  handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void;
20
20
  }
21
21
  export {};
22
+ //# sourceMappingURL=snappable-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snappable-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/snappable-mode.ts"],"names":[],"mappings":"AAIA,OAAO,EAAW,OAAO,EAAE,iBAAiB,EAAC,kCAA+B;AAC5E,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,IAAI,EACJ,sBAAsB,EACtB,iBAAiB,EAClB,mBAAgB;AAMjB,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAEpD,KAAK,iBAAiB,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,aAAa,CAAC;AAEnG,qBAAa,aAAc,SAAQ,eAAe;IAChD,QAAQ,EAAE,eAAe,CAAC;gBAEd,OAAO,EAAE,eAAe;IAKpC,qBAAqB,CAAC,CAAC,SAAS,iBAAiB,EAC/C,KAAK,EAAE,CAAC,EACR,UAAU,EAAE,iBAAiB,EAC7B,UAAU,EAAE,iBAAiB,GAC5B,CAAC;IAOJ,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,iBAAiB,GAAG,IAAI,GAAG,SAAS;IAMzE,oBAAoB,CAClB,gBAAgB,EAAE,IAAI,EAAE,GAAG,IAAI,GAAG,SAAS,GAC1C,iBAAiB,GAAG,IAAI,GAAG,SAAS;IAIvC,2BAA2B,CACzB,gBAAgB,EAAE,iBAAiB,EACnC,IAAI,EAAE,iBAAiB,GACtB,iBAAiB;IA0BpB,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,OAAO,EAAE;IAQ/D,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,iBAAiB,EAAE;IAmB/E,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAuCtE,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAC5C,KAAK,EAAE,CAAC,EACR,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAClC,CAAC;IASJ,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAIlF,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAIhF,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAIxE,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CAG/E"}
@@ -1,5 +1,8 @@
1
- import { getPickedSnapSourceEditHandle, getPickedEditHandles, getEditHandlesForGeometry, } from './utils';
2
- import { GeoJsonEditMode } from './geojson-edit-mode';
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { getPickedSnapSourceEditHandle, getPickedEditHandles, getEditHandlesForGeometry } from "./utils.js";
5
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
3
6
  export class SnappableMode extends GeoJsonEditMode {
4
7
  _handler;
5
8
  constructor(handler) {
@@ -9,7 +12,7 @@ export class SnappableMode extends GeoJsonEditMode {
9
12
  _getSnappedMouseEvent(event, snapSource, snapTarget) {
10
13
  return Object.assign(event, {
11
14
  mapCoords: snapTarget.geometry.coordinates,
12
- pointerDownMapCoords: snapSource && snapSource.geometry.coordinates,
15
+ pointerDownMapCoords: snapSource && snapSource.geometry.coordinates
13
16
  });
14
17
  }
15
18
  _getPickedSnapTarget(picks) {
@@ -30,8 +33,8 @@ export class SnappableMode extends GeoJsonEditMode {
30
33
  ...snapSourceHandle,
31
34
  geometry: {
32
35
  type: 'Point',
33
- coordinates: snapSourceCoordinates,
34
- },
36
+ coordinates: snapSourceCoordinates
37
+ }
35
38
  };
36
39
  }
37
40
  // If additionalSnapTargets is present in modeConfig and is populated, this
@@ -65,7 +68,7 @@ export class SnappableMode extends GeoJsonEditMode {
65
68
  const { enableSnapping } = modeConfig || {};
66
69
  const guides = {
67
70
  type: 'FeatureCollection',
68
- features: [...this._handler.getGuides(props).features],
71
+ features: [...this._handler.getGuides(props).features]
69
72
  };
70
73
  if (!enableSnapping) {
71
74
  return guides;
@@ -1,6 +1,6 @@
1
- import { FeatureCollection } from '../geojson-types';
2
- import { ClickEvent, PointerMoveEvent, ModeProps, GuideFeatureCollection, TentativeFeature } from './types';
3
- import { GeoJsonEditMode, GeoJsonEditAction } from './geojson-edit-mode';
1
+ import { FeatureCollection } from "../utils/geojson-types.js";
2
+ import { ClickEvent, PointerMoveEvent, ModeProps, GuideFeatureCollection, TentativeFeature } from "./types.js";
3
+ import { GeoJsonEditMode, GeoJsonEditAction } from "./geojson-edit-mode.js";
4
4
  export declare class SplitPolygonMode extends GeoJsonEditMode {
5
5
  calculateMapCoords(clickSequence: any, mapCoords: any, props: ModeProps<FeatureCollection>): any;
6
6
  getGuides(props: ModeProps<FeatureCollection>): GuideFeatureCollection;
@@ -8,3 +8,4 @@ export declare class SplitPolygonMode extends GeoJsonEditMode {
8
8
  handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void;
9
9
  splitPolygon(tentativeFeature: TentativeFeature, props: ModeProps<FeatureCollection>): GeoJsonEditAction;
10
10
  }
11
+ //# sourceMappingURL=split-polygon-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"split-polygon-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/split-polygon-mode.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,iBAAiB,EAAC,kCAA+B;AACzD,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,sBAAsB,EACtB,gBAAgB,EACjB,mBAAgB;AACjB,OAAO,EAAC,eAAe,EAAE,iBAAiB,EAAC,+BAA4B;AAGvE,qBAAa,gBAAiB,SAAQ,eAAe;IACnD,kBAAkB,CAAC,aAAa,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAgD1F,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IA6BtE,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA2ClE,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAI9E,YAAY,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CAqDrF"}
@@ -1,3 +1,6 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import booleanPointInPolygon from '@turf/boolean-point-in-polygon';
2
5
  import turfDifference from '@turf/difference';
3
6
  import turfBuffer from '@turf/buffer';
@@ -8,9 +11,9 @@ import turfDistance from '@turf/distance';
8
11
  import turfDestination from '@turf/destination';
9
12
  import turfPolygonToLine from '@turf/polygon-to-line';
10
13
  import nearestPointOnLine from '@turf/nearest-point-on-line';
11
- import { generatePointsParallelToLinePoints } from './utils';
12
- import { GeoJsonEditMode } from './geojson-edit-mode';
13
- import { ImmutableFeatureCollection } from './immutable-feature-collection';
14
+ import { generatePointsParallelToLinePoints } from "./utils.js";
15
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
16
+ import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
14
17
  export class SplitPolygonMode extends GeoJsonEditMode {
15
18
  calculateMapCoords(clickSequence, mapCoords, props) {
16
19
  const modeConfig = props.modeConfig;
@@ -40,7 +43,7 @@ export class SplitPolygonMode extends GeoJsonEditMode {
40
43
  const lastBearing = turfBearing(firstPoint, closestPoint);
41
44
  const currentDistance = turfDistance(firstPoint, mapCoords, { units: 'meters' });
42
45
  return turfDestination(firstPoint, currentDistance, lastBearing, {
43
- units: 'meters',
46
+ units: 'meters'
44
47
  }).geometry.coordinates;
45
48
  }
46
49
  return mapCoords;
@@ -57,7 +60,7 @@ export class SplitPolygonMode extends GeoJsonEditMode {
57
60
  const clickSequence = this.getClickSequence();
58
61
  const guides = {
59
62
  type: 'FeatureCollection',
60
- features: [],
63
+ features: []
61
64
  };
62
65
  if (clickSequence.length === 0 || !props.lastPointerMoveEvent) {
63
66
  // nothing to do yet
@@ -67,12 +70,12 @@ export class SplitPolygonMode extends GeoJsonEditMode {
67
70
  guides.features.push({
68
71
  type: 'Feature',
69
72
  properties: {
70
- guideType: 'tentative',
73
+ guideType: 'tentative'
71
74
  },
72
75
  geometry: {
73
76
  type: 'LineString',
74
- coordinates: [...clickSequence, this.calculateMapCoords(clickSequence, mapCoords, props)],
75
- },
77
+ coordinates: [...clickSequence, this.calculateMapCoords(clickSequence, mapCoords, props)]
78
+ }
76
79
  });
77
80
  return guides;
78
81
  }
@@ -93,7 +96,7 @@ export class SplitPolygonMode extends GeoJsonEditMode {
93
96
  }
94
97
  const pt = {
95
98
  type: 'Point',
96
- coordinates: clickSequence[clickSequence.length - 1],
99
+ coordinates: clickSequence[clickSequence.length - 1]
97
100
  };
98
101
  // @ts-expect-error turf types diff
99
102
  const isPointInPolygon = booleanPointInPolygon(pt, selectedGeometry);
@@ -150,14 +153,14 @@ export class SplitPolygonMode extends GeoJsonEditMode {
150
153
  // Update the type to Mulitpolygon
151
154
  const updatedData = new ImmutableFeatureCollection(props.data).replaceGeometry(featureIndex, {
152
155
  type: 'MultiPolygon',
153
- coordinates: updatedCoordinates,
156
+ coordinates: updatedCoordinates
154
157
  });
155
158
  const editAction = {
156
159
  updatedData: updatedData.getObject(),
157
160
  editType: 'split',
158
161
  editContext: {
159
- featureIndexes: [featureIndex],
160
- },
162
+ featureIndexes: [featureIndex]
163
+ }
161
164
  };
162
165
  return editAction;
163
166
  }
@@ -1,6 +1,6 @@
1
- import { ClickEvent, PointerMoveEvent, ModeProps, GuideFeatureCollection, TentativeFeature } from './types';
2
- import { Position, Polygon, FeatureOf, FeatureCollection } from '../geojson-types';
3
- import { GeoJsonEditMode } from './geojson-edit-mode';
1
+ import { ClickEvent, PointerMoveEvent, ModeProps, GuideFeatureCollection, TentativeFeature } from "./types.js";
2
+ import { Position, Polygon, FeatureOf, FeatureCollection } from "../utils/geojson-types.js";
3
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
4
4
  export declare class ThreeClickPolygonMode extends GeoJsonEditMode {
5
5
  handleClick(event: ClickEvent, props: ModeProps<FeatureCollection>): void;
6
6
  getGuides(props: ModeProps<FeatureCollection>): GuideFeatureCollection;
@@ -8,3 +8,4 @@ export declare class ThreeClickPolygonMode extends GeoJsonEditMode {
8
8
  handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void;
9
9
  createTentativeFeature(props: ModeProps<FeatureCollection>): TentativeFeature;
10
10
  }
11
+ //# sourceMappingURL=three-click-polygon-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"three-click-polygon-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/three-click-polygon-mode.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,sBAAsB,EACtB,gBAAgB,EACjB,mBAAgB;AACjB,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAC,kCAA+B;AACvF,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAEpD,qBAAa,qBAAsB,SAAQ,eAAe;IACxD,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAmBlE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAgDtE,oBAAoB,CAClB,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,EAChB,UAAU,EAAE,GAAG,GACd,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS;IAIxC,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAK9E,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,gBAAgB;CAkB9E"}
@@ -1,4 +1,7 @@
1
- import { GeoJsonEditMode } from './geojson-edit-mode';
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
2
5
  export class ThreeClickPolygonMode extends GeoJsonEditMode {
3
6
  handleClick(event, props) {
4
7
  this.addClickSequence(event);
@@ -19,7 +22,7 @@ export class ThreeClickPolygonMode extends GeoJsonEditMode {
19
22
  const clickSequence = this.getClickSequence();
20
23
  const guides = {
21
24
  type: 'FeatureCollection',
22
- features: [],
25
+ features: []
23
26
  };
24
27
  if (clickSequence.length === 0) {
25
28
  // nothing to do yet
@@ -30,12 +33,12 @@ export class ThreeClickPolygonMode extends GeoJsonEditMode {
30
33
  guides.features.push({
31
34
  type: 'Feature',
32
35
  properties: {
33
- guideType: 'tentative',
36
+ guideType: 'tentative'
34
37
  },
35
38
  geometry: {
36
39
  type: 'LineString',
37
- coordinates: [clickSequence[0], hoveredCoord],
38
- },
40
+ coordinates: [clickSequence[0], hoveredCoord]
41
+ }
39
42
  });
40
43
  }
41
44
  else {
@@ -44,9 +47,9 @@ export class ThreeClickPolygonMode extends GeoJsonEditMode {
44
47
  guides.features.push({
45
48
  type: 'Feature',
46
49
  properties: {
47
- guideType: 'tentative',
50
+ guideType: 'tentative'
48
51
  },
49
- geometry: polygon.geometry,
52
+ geometry: polygon.geometry
50
53
  });
51
54
  }
52
55
  }
@@ -1,9 +1,10 @@
1
- import { PointerMoveEvent, ModeProps, StartDraggingEvent } from './types';
2
- import { FeatureCollection } from '../geojson-types';
3
- import { CompositeMode } from './composite-mode';
1
+ import { PointerMoveEvent, ModeProps, StartDraggingEvent } from "./types.js";
2
+ import { FeatureCollection } from "../utils/geojson-types.js";
3
+ import { CompositeMode } from "./composite-mode.js";
4
4
  export declare class TransformMode extends CompositeMode {
5
5
  constructor();
6
6
  handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void;
7
7
  handleStartDragging(event: StartDraggingEvent, props: ModeProps<FeatureCollection>): void;
8
8
  getGuides(props: ModeProps<FeatureCollection>): import("./types").GuideFeatureCollection;
9
9
  }
10
+ //# sourceMappingURL=transform-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/transform-mode.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,gBAAgB,EAAE,SAAS,EAAE,kBAAkB,EAAC,mBAAgB;AACxE,OAAO,EAAC,iBAAiB,EAAC,kCAA+B;AAKzD,OAAO,EAAC,aAAa,EAAC,4BAAyB;AAG/C,qBAAa,aAAc,SAAQ,aAAa;;IAK9C,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAW9E,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA2BlF,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CAqB9C"}
@@ -1,8 +1,11 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import { featureCollection } from '@turf/helpers';
2
- import { TranslateMode } from './translate-mode';
3
- import { ScaleMode } from './scale-mode';
4
- import { RotateMode } from './rotate-mode';
5
- import { CompositeMode } from './composite-mode';
5
+ import { TranslateMode } from "./translate-mode.js";
6
+ import { ScaleMode } from "./scale-mode.js";
7
+ import { RotateMode } from "./rotate-mode.js";
8
+ import { CompositeMode } from "./composite-mode.js";
6
9
  export class TransformMode extends CompositeMode {
7
10
  constructor() {
8
11
  super([new TranslateMode(), new ScaleMode(), new RotateMode()]);
@@ -13,7 +16,7 @@ export class TransformMode extends CompositeMode {
13
16
  ...props,
14
17
  onUpdateCursor: (cursor) => {
15
18
  updatedCursor = cursor || updatedCursor;
16
- },
19
+ }
17
20
  });
18
21
  props.onUpdateCursor(updatedCursor);
19
22
  }
@@ -1,6 +1,6 @@
1
- import { FeatureCollection, Position } from '../geojson-types';
2
- import { PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps } from './types';
3
- import { GeoJsonEditMode, GeoJsonEditAction } from './geojson-edit-mode';
1
+ import { FeatureCollection, Position } from "../utils/geojson-types.js";
2
+ import { PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps } from "./types.js";
3
+ import { GeoJsonEditMode, GeoJsonEditAction } from "./geojson-edit-mode.js";
4
4
  export declare class TranslateMode extends GeoJsonEditMode {
5
5
  _geometryBeforeTranslate: FeatureCollection | null | undefined;
6
6
  _isTranslatable: boolean;
@@ -11,3 +11,4 @@ export declare class TranslateMode extends GeoJsonEditMode {
11
11
  updateCursor(props: ModeProps<FeatureCollection>): void;
12
12
  getTranslateAction(startDragPoint: Position, currentPoint: Position, editType: string, props: ModeProps<FeatureCollection>): GeoJsonEditAction | null | undefined;
13
13
  }
14
+ //# sourceMappingURL=translate-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"translate-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/translate-mode.ts"],"names":[],"mappings":"AASA,OAAO,EAAC,iBAAiB,EAAE,QAAQ,EAAW,kCAA+B;AAC7E,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,SAAS,EACV,mBAAgB;AAGjB,OAAO,EAAC,eAAe,EAAE,iBAAiB,EAAC,+BAA4B;AAGvE,qBAAa,aAAc,SAAQ,eAAe;IAChD,wBAAwB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/D,eAAe,EAAE,OAAO,CAAc;IAEtC,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAwBxE,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAM9E,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAQlF,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAkBhF,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAShD,kBAAkB,CAChB,cAAc,EAAE,QAAQ,EACxB,YAAY,EAAE,QAAQ,EACtB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAClC,iBAAiB,GAAG,IAAI,GAAG,SAAS;CAoExC"}
@@ -1,12 +1,15 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import turfBearing from '@turf/bearing';
2
5
  import turfDistance from '@turf/distance';
3
6
  import clone from '@turf/clone';
4
7
  import { point } from '@turf/helpers';
5
8
  import WebMercatorViewport from 'viewport-mercator-project';
6
- import { mapCoords } from './utils';
7
- import { translateFromCenter } from '../translateFromCenter';
8
- import { GeoJsonEditMode } from './geojson-edit-mode';
9
- import { ImmutableFeatureCollection } from './immutable-feature-collection';
9
+ import { mapCoords } from "./utils.js";
10
+ import { translateFromCenter } from "../utils/translate-from-center.js";
11
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
12
+ import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
10
13
  export class TranslateMode extends GeoJsonEditMode {
11
14
  _geometryBeforeTranslate;
12
15
  _isTranslatable = undefined;
@@ -85,7 +88,7 @@ export class TranslateMode extends GeoJsonEditMode {
85
88
  // @ts-expect-error turf types
86
89
  updatedData = updatedData.replaceGeometry(selectedIndex, {
87
90
  type: feature.geometry.type,
88
- coordinates,
91
+ coordinates
89
92
  });
90
93
  }
91
94
  }
@@ -106,8 +109,8 @@ export class TranslateMode extends GeoJsonEditMode {
106
109
  updatedData: updatedData.getObject(),
107
110
  editType,
108
111
  editContext: {
109
- featureIndexes: selectedIndexes,
110
- },
112
+ featureIndexes: selectedIndexes
113
+ }
111
114
  };
112
115
  }
113
116
  }