@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,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 DrawPointMode extends GeoJsonEditMode {
3
6
  createTentativeFeature(props) {
4
7
  const { lastPointerMoveEvent } = props;
@@ -6,18 +9,18 @@ export class DrawPointMode extends GeoJsonEditMode {
6
9
  return {
7
10
  type: 'Feature',
8
11
  properties: {
9
- guideType: 'tentative',
12
+ guideType: 'tentative'
10
13
  },
11
14
  geometry: {
12
15
  type: 'Point',
13
- coordinates: lastCoords[0],
14
- },
16
+ coordinates: lastCoords[0]
17
+ }
15
18
  };
16
19
  }
17
20
  handleClick({ mapCoords }, props) {
18
21
  const geometry = {
19
22
  type: 'Point',
20
- coordinates: mapCoords,
23
+ coordinates: mapCoords
21
24
  };
22
25
  props.onEdit(this.getAddFeatureAction(geometry, props.data));
23
26
  }
@@ -1,6 +1,6 @@
1
- import { ClickEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps } from './types';
2
- import { FeatureCollection } from '../geojson-types';
3
- import { DrawPolygonMode } from './draw-polygon-mode';
1
+ import { ClickEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, ModeProps } from "./types.js";
2
+ import { FeatureCollection } from "../utils/geojson-types.js";
3
+ import { DrawPolygonMode } from "./draw-polygon-mode.js";
4
4
  type DraggingHandler = (event: DraggingEvent, props: ModeProps<FeatureCollection>) => void;
5
5
  export declare class DrawPolygonByDraggingMode extends DrawPolygonMode {
6
6
  handleDraggingThrottled: DraggingHandler | null | undefined;
@@ -12,3 +12,4 @@ export declare class DrawPolygonByDraggingMode extends DrawPolygonMode {
12
12
  handleKeyUp(event: KeyboardEvent, props: ModeProps<FeatureCollection>): void;
13
13
  }
14
14
  export {};
15
+ //# sourceMappingURL=draw-polygon-by-dragging-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draw-polygon-by-dragging-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-polygon-by-dragging-mode.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EAAE,SAAS,EAAC,mBAAgB;AACpG,OAAO,EAAU,iBAAiB,EAAC,kCAA+B;AAElE,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAEpD,KAAK,eAAe,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;AAE3F,qBAAa,yBAA0B,SAAQ,eAAe;IAC5D,uBAAuB,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,CAAQ;IAEnE,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAIlE,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAWlF,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAwBhF,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAiB3E,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAMxE,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CA4BtE"}
@@ -1,6 +1,9 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import throttle from 'lodash.throttle';
2
- import { getPickedEditHandle } from './utils';
3
- import { DrawPolygonMode } from './draw-polygon-mode';
5
+ import { getPickedEditHandle } from "./utils.js";
6
+ import { DrawPolygonMode } from "./draw-polygon-mode.js";
4
7
  export class DrawPolygonByDraggingMode extends DrawPolygonMode {
5
8
  handleDraggingThrottled = null;
6
9
  handleClick(event, props) {
@@ -9,9 +12,11 @@ export class DrawPolygonByDraggingMode extends DrawPolygonMode {
9
12
  handleStartDragging(event, props) {
10
13
  event.cancelPan();
11
14
  if (props.modeConfig && props.modeConfig.throttleMs) {
15
+ // eslint-disable-next-line @typescript-eslint/unbound-method
12
16
  this.handleDraggingThrottled = throttle(this.handleDraggingAux, props.modeConfig.throttleMs);
13
17
  }
14
18
  else {
19
+ // eslint-disable-next-line @typescript-eslint/unbound-method
15
20
  this.handleDraggingThrottled = this.handleDraggingAux;
16
21
  }
17
22
  }
@@ -27,7 +32,7 @@ export class DrawPolygonByDraggingMode extends DrawPolygonMode {
27
32
  // Complete the polygon.
28
33
  const polygonToAdd = {
29
34
  type: 'Polygon',
30
- coordinates: [[...clickSequence, clickSequence[0]]],
35
+ coordinates: [[...clickSequence, clickSequence[0]]]
31
36
  };
32
37
  const editAction = this.getAddFeatureOrBooleanPolygonAction(polygonToAdd, props);
33
38
  if (editAction) {
@@ -46,8 +51,8 @@ export class DrawPolygonByDraggingMode extends DrawPolygonMode {
46
51
  updatedData: props.data,
47
52
  editType: 'addTentativePosition',
48
53
  editContext: {
49
- position: event.mapCoords,
50
- },
54
+ position: event.mapCoords
55
+ }
51
56
  });
52
57
  }
53
58
  }
@@ -62,7 +67,7 @@ export class DrawPolygonByDraggingMode extends DrawPolygonMode {
62
67
  if (clickSequence.length > 2) {
63
68
  const polygonToAdd = {
64
69
  type: 'Polygon',
65
- coordinates: [[...clickSequence, clickSequence[0]]],
70
+ coordinates: [[...clickSequence, clickSequence[0]]]
66
71
  };
67
72
  this.resetClickSequence();
68
73
  const editAction = this.getAddFeatureOrBooleanPolygonAction(polygonToAdd, props);
@@ -80,7 +85,7 @@ export class DrawPolygonByDraggingMode extends DrawPolygonMode {
80
85
  // Because the new drawing feature is dropped, so the data will keep as the same.
81
86
  updatedData: props.data,
82
87
  editType: 'cancelFeature',
83
- editContext: {},
88
+ editContext: {}
84
89
  });
85
90
  }
86
91
  }
@@ -1,6 +1,6 @@
1
- import { ClickEvent, PointerMoveEvent, ModeProps, GuideFeatureCollection, TentativeFeature } from './types';
2
- import { FeatureCollection } from '../geojson-types';
3
- import { GeoJsonEditMode } from './geojson-edit-mode';
1
+ import { ClickEvent, PointerMoveEvent, ModeProps, GuideFeatureCollection, TentativeFeature } from "./types.js";
2
+ import { FeatureCollection } from "../utils/geojson-types.js";
3
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
4
4
  export declare class DrawPolygonMode extends GeoJsonEditMode {
5
5
  createTentativeFeature(props: ModeProps<FeatureCollection>): TentativeFeature;
6
6
  getGuides(props: ModeProps<FeatureCollection>): GuideFeatureCollection;
@@ -8,3 +8,4 @@ export declare class DrawPolygonMode extends GeoJsonEditMode {
8
8
  handleKeyUp(event: KeyboardEvent, props: ModeProps<FeatureCollection>): void;
9
9
  handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void;
10
10
  }
11
+ //# sourceMappingURL=draw-polygon-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draw-polygon-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-polygon-mode.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,sBAAsB,EACtB,gBAAgB,EAEjB,mBAAgB;AACjB,OAAO,EAAU,iBAAiB,EAAC,kCAA+B;AAElE,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAEpD,qBAAa,eAAgB,SAAQ,eAAe;IAClD,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,gBAAgB;IAkC7E,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAiCtE,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA2DlE,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA0BrE,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CAI/E"}
@@ -1,7 +1,10 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import lineIntersect from '@turf/line-intersect';
2
5
  import { lineString as turfLineString } from '@turf/helpers';
3
- import { getPickedEditHandle } from './utils';
4
- import { GeoJsonEditMode } from './geojson-edit-mode';
6
+ import { getPickedEditHandle } from "./utils.js";
7
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
5
8
  export class DrawPolygonMode extends GeoJsonEditMode {
6
9
  createTentativeFeature(props) {
7
10
  const { lastPointerMoveEvent } = props;
@@ -12,24 +15,24 @@ export class DrawPolygonMode extends GeoJsonEditMode {
12
15
  tentativeFeature = {
13
16
  type: 'Feature',
14
17
  properties: {
15
- guideType: 'tentative',
18
+ guideType: 'tentative'
16
19
  },
17
20
  geometry: {
18
21
  type: 'LineString',
19
- coordinates: [...clickSequence, ...lastCoords],
20
- },
22
+ coordinates: [...clickSequence, ...lastCoords]
23
+ }
21
24
  };
22
25
  }
23
26
  else if (clickSequence.length > 2) {
24
27
  tentativeFeature = {
25
28
  type: 'Feature',
26
29
  properties: {
27
- guideType: 'tentative',
30
+ guideType: 'tentative'
28
31
  },
29
32
  geometry: {
30
33
  type: 'Polygon',
31
- coordinates: [[...clickSequence, ...lastCoords, clickSequence[0]]],
32
- },
34
+ coordinates: [[...clickSequence, ...lastCoords, clickSequence[0]]]
35
+ }
33
36
  };
34
37
  }
35
38
  return tentativeFeature;
@@ -38,7 +41,7 @@ export class DrawPolygonMode extends GeoJsonEditMode {
38
41
  const clickSequence = this.getClickSequence();
39
42
  const guides = {
40
43
  type: 'FeatureCollection',
41
- features: [],
44
+ features: []
42
45
  };
43
46
  const tentativeFeature = this.createTentativeFeature(props);
44
47
  if (tentativeFeature) {
@@ -50,16 +53,17 @@ export class DrawPolygonMode extends GeoJsonEditMode {
50
53
  guideType: 'editHandle',
51
54
  editHandleType: 'existing',
52
55
  featureIndex: -1,
53
- positionIndexes: [index],
56
+ positionIndexes: [index]
54
57
  },
55
58
  geometry: {
56
59
  type: 'Point',
57
- coordinates: clickedCoord,
58
- },
60
+ coordinates: clickedCoord
61
+ }
59
62
  }));
60
63
  guides.features.push(...editHandles);
61
64
  return guides;
62
65
  }
66
+ // eslint-disable-next-line complexity
63
67
  handleClick(event, props) {
64
68
  const { picks } = event;
65
69
  const clickedEditHandle = getPickedEditHandle(picks);
@@ -68,7 +72,7 @@ export class DrawPolygonMode extends GeoJsonEditMode {
68
72
  if (clickSequence.length > 2 && props.modeConfig && props.modeConfig.preventOverlappingLines) {
69
73
  const currentLine = turfLineString([
70
74
  clickSequence[clickSequence.length - 1],
71
- event.mapCoords,
75
+ event.mapCoords
72
76
  ]);
73
77
  const otherLines = turfLineString([...clickSequence.slice(0, clickSequence.length - 1)]);
74
78
  const intersectingPoints = lineIntersect(currentLine, otherLines);
@@ -91,7 +95,7 @@ export class DrawPolygonMode extends GeoJsonEditMode {
91
95
  // Remove the hovered position
92
96
  const polygonToAdd = {
93
97
  type: 'Polygon',
94
- coordinates: [[...clickSequence, clickSequence[0]]],
98
+ coordinates: [[...clickSequence, clickSequence[0]]]
95
99
  };
96
100
  this.resetClickSequence();
97
101
  const editAction = this.getAddFeatureOrBooleanPolygonAction(polygonToAdd, props);
@@ -106,8 +110,8 @@ export class DrawPolygonMode extends GeoJsonEditMode {
106
110
  updatedData: props.data,
107
111
  editType: 'addTentativePosition',
108
112
  editContext: {
109
- position: event.mapCoords,
110
- },
113
+ position: event.mapCoords
114
+ }
111
115
  });
112
116
  }
113
117
  }
@@ -117,7 +121,7 @@ export class DrawPolygonMode extends GeoJsonEditMode {
117
121
  if (clickSequence.length > 2) {
118
122
  const polygonToAdd = {
119
123
  type: 'Polygon',
120
- coordinates: [[...clickSequence, clickSequence[0]]],
124
+ coordinates: [[...clickSequence, clickSequence[0]]]
121
125
  };
122
126
  this.resetClickSequence();
123
127
  const editAction = this.getAddFeatureOrBooleanPolygonAction(polygonToAdd, props);
@@ -132,7 +136,7 @@ export class DrawPolygonMode extends GeoJsonEditMode {
132
136
  // Because the new drawing feature is dropped, so the data will keep as the same.
133
137
  updatedData: props.data,
134
138
  editType: 'cancelFeature',
135
- editContext: {},
139
+ editContext: {}
136
140
  });
137
141
  }
138
142
  }
@@ -1,5 +1,6 @@
1
- import { Position, Polygon, FeatureOf } from '../geojson-types';
2
- import { TwoClickPolygonMode } from './two-click-polygon-mode';
1
+ import { Position, Polygon, FeatureOf } from "../utils/geojson-types.js";
2
+ import { TwoClickPolygonMode } from "./two-click-polygon-mode.js";
3
3
  export declare class DrawRectangleFromCenterMode extends TwoClickPolygonMode {
4
4
  getTwoClickPolygon(coord1: Position, coord2: Position, modeConfig: any): FeatureOf<Polygon>;
5
5
  }
6
+ //# sourceMappingURL=draw-rectangle-from-center-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draw-rectangle-from-center-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-rectangle-from-center-mode.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AACpE,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,2BAA4B,SAAQ,mBAAmB;IAClE,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;CAiB5F"}
@@ -1,5 +1,8 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import bboxPolygon from '@turf/bbox-polygon';
2
- import { TwoClickPolygonMode } from './two-click-polygon-mode';
5
+ import { TwoClickPolygonMode } from "./two-click-polygon-mode.js";
3
6
  export class DrawRectangleFromCenterMode extends TwoClickPolygonMode {
4
7
  getTwoClickPolygon(coord1, coord2, modeConfig) {
5
8
  const longitude = coord1[0] > coord2[0]
@@ -1,5 +1,6 @@
1
- import { Position, Polygon, FeatureOf } from '../geojson-types';
2
- import { TwoClickPolygonMode } from './two-click-polygon-mode';
1
+ import { Position, Polygon, FeatureOf } from "../utils/geojson-types.js";
2
+ import { TwoClickPolygonMode } from "./two-click-polygon-mode.js";
3
3
  export declare class DrawRectangleMode extends TwoClickPolygonMode {
4
4
  getTwoClickPolygon(coord1: Position, coord2: Position, modeConfig: any): FeatureOf<Polygon>;
5
5
  }
6
+ //# sourceMappingURL=draw-rectangle-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draw-rectangle-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-rectangle-mode.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AACpE,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,iBAAkB,SAAQ,mBAAmB;IACxD,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;CAQ5F"}
@@ -1,5 +1,8 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import bboxPolygon from '@turf/bbox-polygon';
2
- import { TwoClickPolygonMode } from './two-click-polygon-mode';
5
+ import { TwoClickPolygonMode } from "./two-click-polygon-mode.js";
3
6
  export class DrawRectangleMode extends TwoClickPolygonMode {
4
7
  getTwoClickPolygon(coord1, coord2, modeConfig) {
5
8
  const rectangle = bboxPolygon([coord1[0], coord1[1], coord2[0], coord2[1]]);
@@ -1,5 +1,6 @@
1
- import { Position, Polygon, FeatureOf } from '../geojson-types';
2
- import { ThreeClickPolygonMode } from './three-click-polygon-mode';
1
+ import { Position, Polygon, FeatureOf } from "../utils/geojson-types.js";
2
+ import { ThreeClickPolygonMode } from "./three-click-polygon-mode.js";
3
3
  export declare class DrawRectangleUsingThreePointsMode extends ThreeClickPolygonMode {
4
4
  getThreeClickPolygon(coord1: Position, coord2: Position, coord3: Position, modeConfig: any): FeatureOf<Polygon> | null | undefined;
5
5
  }
6
+ //# sourceMappingURL=draw-rectangle-using-three-points-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draw-rectangle-using-three-points-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-rectangle-using-three-points-mode.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AACpE,OAAO,EAAC,qBAAqB,EAAC,sCAAmC;AAEjE,qBAAa,iCAAkC,SAAQ,qBAAqB;IAC1E,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;CAyBzC"}
@@ -1,12 +1,15 @@
1
- import { generatePointsParallelToLinePoints } from './utils';
2
- import { ThreeClickPolygonMode } from './three-click-polygon-mode';
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { generatePointsParallelToLinePoints } from "./utils.js";
5
+ import { ThreeClickPolygonMode } from "./three-click-polygon-mode.js";
3
6
  export class DrawRectangleUsingThreePointsMode extends ThreeClickPolygonMode {
4
7
  getThreeClickPolygon(coord1, coord2, coord3, modeConfig) {
5
8
  const [p3, p4] = generatePointsParallelToLinePoints(coord1, coord2, coord3);
6
9
  return {
7
10
  type: 'Feature',
8
11
  properties: {
9
- shape: 'Rectangle',
12
+ shape: 'Rectangle'
10
13
  },
11
14
  geometry: {
12
15
  type: 'Polygon',
@@ -19,10 +22,10 @@ export class DrawRectangleUsingThreePointsMode extends ThreeClickPolygonMode {
19
22
  coord2,
20
23
  p3,
21
24
  p4,
22
- coord1,
23
- ],
24
- ],
25
- },
25
+ coord1
26
+ ]
27
+ ]
28
+ }
26
29
  };
27
30
  }
28
31
  }
@@ -1,5 +1,6 @@
1
- import { Position, Polygon, FeatureOf } from '../geojson-types';
2
- import { TwoClickPolygonMode } from './two-click-polygon-mode';
1
+ import { Position, Polygon, FeatureOf } from "../utils/geojson-types.js";
2
+ import { TwoClickPolygonMode } from "./two-click-polygon-mode.js";
3
3
  export declare class DrawSquareFromCenterMode extends TwoClickPolygonMode {
4
4
  getTwoClickPolygon(coord1: Position, coord2: Position, modeConfig: any): FeatureOf<Polygon>;
5
5
  }
6
+ //# sourceMappingURL=draw-square-from-center-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draw-square-from-center-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-square-from-center-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AACpE,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,wBAAyB,SAAQ,mBAAmB;IAC/D,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;CAqC5F"}
@@ -1,8 +1,11 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import bboxPolygon from '@turf/bbox-polygon';
2
5
  import turfDistance from '@turf/distance';
3
6
  import turfAlong from '@turf/along';
4
7
  import { point, lineString as turfLineString } from '@turf/helpers';
5
- import { TwoClickPolygonMode } from './two-click-polygon-mode';
8
+ import { TwoClickPolygonMode } from "./two-click-polygon-mode.js";
6
9
  export class DrawSquareFromCenterMode extends TwoClickPolygonMode {
7
10
  getTwoClickPolygon(coord1, coord2, modeConfig) {
8
11
  // get the coordinates of the other two rectangle vertices
@@ -1,5 +1,6 @@
1
- import { Position, Polygon, FeatureOf } from '../geojson-types';
2
- import { TwoClickPolygonMode } from './two-click-polygon-mode';
1
+ import { Position, Polygon, FeatureOf } from "../utils/geojson-types.js";
2
+ import { TwoClickPolygonMode } from "./two-click-polygon-mode.js";
3
3
  export declare class DrawSquareMode extends TwoClickPolygonMode {
4
4
  getTwoClickPolygon(coord1: Position, coord2: Position, modeConfig: any): FeatureOf<Polygon>;
5
5
  }
6
+ //# sourceMappingURL=draw-square-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draw-square-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-square-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AACpE,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,cAAe,SAAQ,mBAAmB;IACrD,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;CA2B5F"}
@@ -1,8 +1,11 @@
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
1
4
  import bboxPolygon from '@turf/bbox-polygon';
2
5
  import turfDistance from '@turf/distance';
3
6
  import turfAlong from '@turf/along';
4
7
  import { point, lineString as turfLineString } from '@turf/helpers';
5
- import { TwoClickPolygonMode } from './two-click-polygon-mode';
8
+ import { TwoClickPolygonMode } from "./two-click-polygon-mode.js";
6
9
  export class DrawSquareMode extends TwoClickPolygonMode {
7
10
  getTwoClickPolygon(coord1, coord2, modeConfig) {
8
11
  // get the coordinates of the other two rectangle vertices
@@ -1,7 +1,8 @@
1
- import { StartDraggingEvent, ModeProps } from './types';
2
- import { FeatureCollection } from '../geojson-types';
3
- import { TranslateMode } from './translate-mode';
1
+ import { StartDraggingEvent, ModeProps } from "./types.js";
2
+ import { FeatureCollection } from "../utils/geojson-types.js";
3
+ import { TranslateMode } from "./translate-mode.js";
4
4
  export declare class DuplicateMode extends TranslateMode {
5
5
  handleStartDragging(event: StartDraggingEvent, props: ModeProps<FeatureCollection>): void;
6
6
  updateCursor(props: ModeProps<FeatureCollection>): void;
7
7
  }
8
+ //# sourceMappingURL=duplicate-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duplicate-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/duplicate-mode.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,kBAAkB,EAAE,SAAS,EAAC,mBAAgB;AACtD,OAAO,EAAC,iBAAiB,EAAC,kCAA+B;AACzD,OAAO,EAAC,aAAa,EAAC,4BAAyB;AAE/C,qBAAa,aAAc,SAAQ,aAAa;IAC9C,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAQlF,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CAOjD"}
@@ -1,4 +1,7 @@
1
- import { TranslateMode } from './translate-mode';
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { TranslateMode } from "./translate-mode.js";
2
5
  export class DuplicateMode extends TranslateMode {
3
6
  handleStartDragging(event, props) {
4
7
  super.handleStartDragging(event, props);
@@ -1,4 +1,4 @@
1
- import { ClickEvent, PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, Tooltip, ModeProps } from './types';
1
+ import { ClickEvent, PointerMoveEvent, StartDraggingEvent, StopDraggingEvent, DraggingEvent, Tooltip, ModeProps } from "./types.js";
2
2
  export interface EditMode<TData, TGuides> {
3
3
  handleClick(event: ClickEvent, props: ModeProps<TData>): void;
4
4
  handlePointerMove(event: PointerMoveEvent, props: ModeProps<TData>): void;
@@ -9,3 +9,4 @@ export interface EditMode<TData, TGuides> {
9
9
  getGuides(props: ModeProps<TData>): TGuides | undefined;
10
10
  getTooltips(props: ModeProps<TData>): Tooltip[];
11
11
  }
12
+ //# sourceMappingURL=edit-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/edit-mode.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,OAAO,EACP,SAAS,EACV,mBAAgB;AAEjB,MAAM,WAAW,QAAQ,CAAC,KAAK,EAAE,OAAO;IAEtC,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAE9D,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAE1E,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAE9E,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAE5E,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAEpE,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAEjE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC;IAExD,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,EAAE,CAAC;CACjD"}
@@ -1,2 +1,4 @@
1
- /* istanbul ignore file */
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
2
4
  export {};
@@ -1,13 +1,14 @@
1
- import { ModeProps, PointerMoveEvent, StopDraggingEvent } from './types';
2
- import { Position, FeatureCollection } from '../geojson-types';
3
- import { ModifyMode } from './modify-mode';
1
+ import { ModeProps, PointerMoveEvent, StopDraggingEvent } from "./types.js";
2
+ import { Position, FeatureCollection } from "../utils/geojson-types.js";
3
+ import { ModifyMode } from "./modify-mode.js";
4
4
  export declare class ElevationMode extends ModifyMode {
5
5
  makeElevatedEvent(event: PointerMoveEvent | StopDraggingEvent, position: Position, props: ModeProps<FeatureCollection>): Record<string, any>;
6
6
  handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void;
7
7
  handleStopDragging(event: StopDraggingEvent, props: ModeProps<FeatureCollection>): void;
8
8
  getCursor(event: PointerMoveEvent): string | null | undefined;
9
- static calculateElevationChangeWithViewport(viewport: any, { pointerDownScreenCoords, screenCoords, }: {
9
+ static calculateElevationChangeWithViewport(viewport: any, { pointerDownScreenCoords, screenCoords }: {
10
10
  pointerDownScreenCoords: Position;
11
11
  screenCoords: Position;
12
12
  }): number;
13
13
  }
14
+ //# sourceMappingURL=elevation-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elevation-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/elevation-mode.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAC,mBAAgB;AACvE,OAAO,EAAC,QAAQ,EAAE,iBAAiB,EAAC,kCAA+B;AAEnE,OAAO,EAAC,UAAU,EAAC,yBAAsB;AAYzC,qBAAa,aAAc,SAAQ,UAAU;IAC3C,iBAAiB,CACf,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,EAC3C,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IA2BtB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAO9E,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAOhF,SAAS,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;IAQ7D,MAAM,CAAC,oCAAoC,CACzC,QAAQ,EAAE,GAAG,EACb,EACE,uBAAuB,EACvB,YAAY,EACb,EAAE;QACD,uBAAuB,EAAE,QAAQ,CAAC;QAClC,YAAY,EAAE,QAAQ,CAAC;KACxB,GACA,MAAM;CAOV"}
@@ -1,11 +1,14 @@
1
- import { getPickedEditHandle } from './utils';
2
- import { ModifyMode } from './modify-mode';
3
- function defaultCalculateElevationChange({ pointerDownScreenCoords, screenCoords, }) {
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { getPickedEditHandle } from "./utils.js";
5
+ import { ModifyMode } from "./modify-mode.js";
6
+ function defaultCalculateElevationChange({ pointerDownScreenCoords, screenCoords }) {
4
7
  return 10 * (pointerDownScreenCoords[1] - screenCoords[1]);
5
8
  }
6
9
  export class ElevationMode extends ModifyMode {
7
10
  makeElevatedEvent(event, position, props) {
8
- const { minElevation = 0, maxElevation = 20000, calculateElevationChange = defaultCalculateElevationChange, } = props.modeConfig || {};
11
+ const { minElevation = 0, maxElevation = 20000, calculateElevationChange = defaultCalculateElevationChange } = props.modeConfig || {};
9
12
  if (!event.pointerDownScreenCoords) {
10
13
  return event;
11
14
  }
@@ -14,12 +17,12 @@ export class ElevationMode extends ModifyMode {
14
17
  // calculateElevationChange is configurable because (at this time) modes are not aware of the viewport
15
18
  elevation += calculateElevationChange({
16
19
  pointerDownScreenCoords: event.pointerDownScreenCoords,
17
- screenCoords: event.screenCoords,
20
+ screenCoords: event.screenCoords
18
21
  });
19
22
  elevation = Math.min(elevation, maxElevation);
20
23
  elevation = Math.max(elevation, minElevation);
21
24
  return Object.assign({}, event, {
22
- mapCoords: [position[0], position[1], elevation],
25
+ mapCoords: [position[0], position[1], elevation]
23
26
  });
24
27
  }
25
28
  handlePointerMove(event, props) {
@@ -41,7 +44,7 @@ export class ElevationMode extends ModifyMode {
41
44
  }
42
45
  return cursor;
43
46
  }
44
- static calculateElevationChangeWithViewport(viewport, { pointerDownScreenCoords, screenCoords, }) {
47
+ static calculateElevationChangeWithViewport(viewport, { pointerDownScreenCoords, screenCoords }) {
45
48
  // Source: https://gis.stackexchange.com/a/127949/111804
46
49
  const metersPerPixel = (156543.03392 * Math.cos((viewport.latitude * Math.PI) / 180)) / Math.pow(2, viewport.zoom);
47
50
  return (metersPerPixel * (pointerDownScreenCoords[1] - screenCoords[1])) / 2;
@@ -1,9 +1,10 @@
1
- import { LineString, FeatureCollection } from '../geojson-types';
2
- import { ClickEvent, PointerMoveEvent, ModeProps, GuideFeatureCollection } from './types';
3
- import { GeoJsonEditMode } from './geojson-edit-mode';
1
+ import { LineString, FeatureCollection } from "../utils/geojson-types.js";
2
+ import { ClickEvent, PointerMoveEvent, ModeProps, GuideFeatureCollection } from "./types.js";
3
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
4
4
  export declare class ExtendLineStringMode extends GeoJsonEditMode {
5
5
  getSingleSelectedLineString(props: ModeProps<FeatureCollection>): LineString | null | undefined;
6
6
  handleClick(event: ClickEvent, props: ModeProps<FeatureCollection>): void;
7
7
  getGuides(props: ModeProps<FeatureCollection>): GuideFeatureCollection;
8
8
  handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void;
9
9
  }
10
+ //# sourceMappingURL=extend-line-string-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extend-line-string-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/extend-line-string-mode.ts"],"names":[],"mappings":"AAIA,OAAO,EAAW,UAAU,EAAE,iBAAiB,EAAC,kCAA+B;AAC/E,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,sBAAsB,EAAC,mBAAgB;AACxF,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAGpD,qBAAa,oBAAqB,SAAQ,eAAe;IACvD,2BAA2B,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,UAAU,GAAG,IAAI,GAAG,SAAS;IAS/F,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAgClE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAoCtE,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CAG/E"}
@@ -1,5 +1,8 @@
1
- import { GeoJsonEditMode } from './geojson-edit-mode';
2
- import { ImmutableFeatureCollection } from './immutable-feature-collection';
1
+ // deck.gl-community
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ import { GeoJsonEditMode } from "./geojson-edit-mode.js";
5
+ import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
3
6
  export class ExtendLineStringMode extends GeoJsonEditMode {
4
7
  getSingleSelectedLineString(props) {
5
8
  const selectedGeometry = this.getSelectedGeometry(props);
@@ -31,14 +34,14 @@ export class ExtendLineStringMode extends GeoJsonEditMode {
31
34
  editContext: {
32
35
  featureIndexes: [featureIndex],
33
36
  positionIndexes,
34
- position: event.mapCoords,
35
- },
37
+ position: event.mapCoords
38
+ }
36
39
  });
37
40
  }
38
41
  getGuides(props) {
39
42
  const guides = {
40
43
  type: 'FeatureCollection',
41
- features: [],
44
+ features: []
42
45
  };
43
46
  const selectedLineString = this.getSingleSelectedLineString(props);
44
47
  if (!selectedLineString) {
@@ -57,12 +60,12 @@ export class ExtendLineStringMode extends GeoJsonEditMode {
57
60
  guides.features.push({
58
61
  type: 'Feature',
59
62
  properties: {
60
- guideType: 'tentative',
63
+ guideType: 'tentative'
61
64
  },
62
65
  geometry: {
63
66
  type: 'LineString',
64
- coordinates: [startPosition, mapCoords],
65
- },
67
+ coordinates: [startPosition, mapCoords]
68
+ }
66
69
  });
67
70
  return guides;
68
71
  }
@@ -1,6 +1,6 @@
1
- import { FeatureCollection } from '../geojson-types';
2
- import { ModeProps, StartDraggingEvent, StopDraggingEvent, DraggingEvent } from './types';
3
- import { ModifyMode } from './modify-mode';
1
+ import { FeatureCollection } from "../utils/geojson-types.js";
2
+ import { ModeProps, StartDraggingEvent, StopDraggingEvent, DraggingEvent } from "./types.js";
3
+ import { ModifyMode } from "./modify-mode.js";
4
4
  export declare class ExtrudeMode extends ModifyMode {
5
5
  isPointAdded: boolean;
6
6
  handleDragging(event: DraggingEvent, props: ModeProps<FeatureCollection>): void;
@@ -13,3 +13,4 @@ export declare class ExtrudeMode extends ModifyMode {
13
13
  prevPositionIndexes(positionIndexes: number[] | null | undefined, size: number): number[];
14
14
  getPointForPositionIndexes(positionIndexes: number[] | null | undefined, featureIndex: number, { features }: FeatureCollection): any;
15
15
  }
16
+ //# sourceMappingURL=extrude-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extrude-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/extrude-mode.ts"],"names":[],"mappings":"AAUA,OAAO,EAAC,iBAAiB,EAAC,kCAA+B;AACzD,OAAO,EAAC,SAAS,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EAAC,mBAAgB;AACxF,OAAO,EAAC,UAAU,EAAC,yBAAsB;AAGzC,qBAAa,WAAY,SAAQ,UAAU;IAGzC,YAAY,UAAS;IAErB,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI;IA0C/E,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA8ClF,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA0ChF,eAAe,CACb,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,EAC5C,YAAY,EAAE,MAAM,EACpB,EAAC,QAAQ,EAAC,EAAE,iBAAiB;IAsB/B,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;IAQ3B,YAAY,CACV,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,EAC5C,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,iBAAiB;IAwB7B,mBAAmB,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAWzF,mBAAmB,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAWzF,0BAA0B,CACxB,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,EAC5C,YAAY,EAAE,MAAM,EACpB,EAAC,QAAQ,EAAC,EAAE,iBAAiB;CAqBhC"}