@deck.gl-community/editable-layers 9.0.3 → 9.1.0-beta.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.
- package/dist/edit-modes/delete-mode.d.ts +7 -0
- package/dist/edit-modes/delete-mode.d.ts.map +1 -0
- package/dist/edit-modes/delete-mode.js +22 -0
- package/dist/edit-modes/draw-circle-by-diameter-mode.d.ts.map +1 -1
- package/dist/edit-modes/draw-circle-by-diameter-mode.js +4 -0
- package/dist/edit-modes/draw-circle-from-center-mode.d.ts.map +1 -1
- package/dist/edit-modes/draw-circle-from-center-mode.js +4 -0
- package/dist/edit-modes/draw-ellipse-by-bounding-box-mode.d.ts.map +1 -1
- package/dist/edit-modes/draw-ellipse-by-bounding-box-mode.js +9 -1
- package/dist/edit-modes/draw-ellipse-using-three-points-mode.d.ts.map +1 -1
- package/dist/edit-modes/draw-ellipse-using-three-points-mode.js +10 -1
- package/dist/edit-modes/extend-line-string-mode.d.ts.map +1 -1
- package/dist/edit-modes/extend-line-string-mode.js +3 -0
- package/dist/edit-modes/extrude-mode.d.ts.map +1 -1
- package/dist/edit-modes/extrude-mode.js +4 -1
- package/dist/edit-modes/geojson-edit-mode.d.ts +2 -2
- package/dist/edit-modes/geojson-edit-mode.d.ts.map +1 -1
- package/dist/edit-modes/geojson-edit-mode.js +7 -4
- package/dist/edit-modes/measure-distance-mode.d.ts.map +1 -1
- package/dist/edit-modes/modify-mode.d.ts.map +1 -1
- package/dist/edit-modes/modify-mode.js +4 -1
- package/dist/edit-modes/resize-circle-mode.d.ts.map +1 -1
- package/dist/edit-modes/resize-circle-mode.js +1 -0
- package/dist/edit-modes/rotate-mode.d.ts.map +1 -1
- package/dist/edit-modes/rotate-mode.js +2 -1
- package/dist/edit-modes/scale-mode.d.ts.map +1 -1
- package/dist/edit-modes/scale-mode.js +2 -1
- package/dist/edit-modes/split-polygon-mode.d.ts.map +1 -1
- package/dist/edit-modes/three-click-polygon-mode.d.ts.map +1 -1
- package/dist/edit-modes/three-click-polygon-mode.js +3 -1
- package/dist/edit-modes/transform-mode.d.ts.map +1 -1
- package/dist/edit-modes/transform-mode.js +3 -0
- package/dist/edit-modes/translate-mode.d.ts.map +1 -1
- package/dist/edit-modes/translate-mode.js +2 -1
- package/dist/edit-modes/two-click-polygon-mode.d.ts.map +1 -1
- package/dist/edit-modes/two-click-polygon-mode.js +3 -4
- package/dist/edit-modes/types.d.ts +1 -0
- package/dist/edit-modes/types.d.ts.map +1 -1
- package/dist/edit-modes/utils.d.ts +3 -2
- package/dist/edit-modes/utils.d.ts.map +1 -1
- package/dist/edit-modes/utils.js +4 -1
- package/dist/editable-layers/editable-geojson-layer.d.ts +4 -4
- package/dist/editable-layers/editable-geojson-layer.d.ts.map +1 -1
- package/dist/editable-layers/editable-geojson-layer.js +2 -0
- package/dist/editable-layers/editable-h3-cluster-layer.d.ts +1 -1
- package/dist/editable-layers/editable-h3-cluster-layer.d.ts.map +1 -1
- package/dist/editable-layers/editable-h3-cluster-layer.js +0 -1
- package/dist/editable-layers/editable-layer.d.ts +4 -2
- package/dist/editable-layers/editable-layer.d.ts.map +1 -1
- package/dist/editable-layers/editable-layer.js +8 -4
- package/dist/editable-layers/editable-path-layer.d.ts +13 -1
- package/dist/editable-layers/editable-path-layer.d.ts.map +1 -1
- package/dist/editable-layers/editable-path-layer.js +20 -12
- package/dist/editable-layers/junction-scatterplot-layer.d.ts +4 -2
- package/dist/editable-layers/junction-scatterplot-layer.d.ts.map +1 -1
- package/dist/editable-layers/selection-layer.d.ts +2 -1
- package/dist/editable-layers/selection-layer.d.ts.map +1 -1
- package/dist/editable-layers/selection-layer.js +0 -1
- package/dist/index.cjs +122 -40
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/mode-handlers/split-polygon-handler.d.ts.map +1 -1
- package/dist/shaderlib/color/color.d.ts +12 -2
- package/dist/shaderlib/color/color.d.ts.map +1 -1
- package/dist/shaderlib/color/color.js +25 -18
- package/dist/utils/utils.js +1 -1
- package/package.json +11 -11
- package/src/edit-modes/delete-mode.ts +28 -0
- package/src/edit-modes/draw-circle-by-diameter-mode.ts +4 -0
- package/src/edit-modes/draw-circle-from-center-mode.ts +4 -0
- package/src/edit-modes/draw-ellipse-by-bounding-box-mode.ts +10 -1
- package/src/edit-modes/draw-ellipse-using-three-points-mode.ts +11 -1
- package/src/edit-modes/extend-line-string-mode.ts +4 -0
- package/src/edit-modes/extrude-mode.ts +6 -1
- package/src/edit-modes/geojson-edit-mode.ts +9 -4
- package/src/edit-modes/measure-distance-mode.ts +1 -1
- package/src/edit-modes/modify-mode.ts +6 -1
- package/src/edit-modes/resize-circle-mode.ts +1 -0
- package/src/edit-modes/rotate-mode.ts +2 -1
- package/src/edit-modes/scale-mode.ts +2 -1
- package/src/edit-modes/split-polygon-mode.ts +4 -2
- package/src/edit-modes/three-click-polygon-mode.ts +7 -1
- package/src/edit-modes/transform-mode.ts +4 -0
- package/src/edit-modes/translate-mode.ts +4 -2
- package/src/edit-modes/two-click-polygon-mode.ts +3 -4
- package/src/edit-modes/types.ts +1 -0
- package/src/edit-modes/utils.ts +8 -3
- package/src/editable-layers/editable-geojson-layer.ts +6 -4
- package/src/editable-layers/editable-h3-cluster-layer.ts +1 -1
- package/src/editable-layers/editable-layer.ts +12 -4
- package/src/editable-layers/editable-path-layer.ts +29 -15
- package/src/editable-layers/junction-scatterplot-layer.ts +4 -2
- package/src/editable-layers/selection-layer.ts +2 -1
- package/src/index.ts +2 -0
- package/src/mode-handlers/split-polygon-handler.ts +2 -1
- package/src/shaderlib/color/color.ts +34 -20
- package/src/utils/translate-from-center.ts +1 -1
- package/src/utils/utils.ts +1 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { FeatureCollection } from "../utils/geojson-types.js";
|
|
2
|
+
import { GeoJsonEditMode } from "./geojson-edit-mode.js";
|
|
3
|
+
import { ClickEvent, ModeProps } from "./types.js";
|
|
4
|
+
export declare class DeleteMode extends GeoJsonEditMode {
|
|
5
|
+
handleClick(_event: ClickEvent, props: ModeProps<FeatureCollection>): void;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=delete-mode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/delete-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,kCAA+B;AAEzD,OAAO,EAAC,eAAe,EAAC,+BAA4B;AACpD,OAAO,EAAC,UAAU,EAAE,SAAS,EAAC,mBAAgB;AAC9C,qBAAa,UAAW,SAAQ,eAAe;IAC7C,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI;CAsB3E"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { GeoJsonEditMode } from "./geojson-edit-mode.js";
|
|
2
|
+
export class DeleteMode extends GeoJsonEditMode {
|
|
3
|
+
handleClick(_event, props) {
|
|
4
|
+
const selectedFeatureIndexes = props.lastPointerMoveEvent.picks.map((pick) => pick.index);
|
|
5
|
+
if (selectedFeatureIndexes.length > 0) {
|
|
6
|
+
const indexToDelete = selectedFeatureIndexes[0];
|
|
7
|
+
const features = props.data.features.filter((_, index) => index !== indexToDelete);
|
|
8
|
+
const updatedData = {
|
|
9
|
+
...props.data,
|
|
10
|
+
features
|
|
11
|
+
};
|
|
12
|
+
const editAction = {
|
|
13
|
+
updatedData,
|
|
14
|
+
editType: 'deleteFeature',
|
|
15
|
+
editContext: {
|
|
16
|
+
featureIndexes: selectedFeatureIndexes
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
props.onEdit(editAction);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draw-circle-by-diameter-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-circle-by-diameter-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAC,mBAAgB;AAC3C,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAC,kCAA+B;AAEvF,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,wBAAyB,SAAQ,mBAAmB;IAC/D,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IACzC,QAAQ,EAAE,QAAQ,CAAS;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IAC7C,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IAC3C,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"draw-circle-by-diameter-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-circle-by-diameter-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAC,mBAAgB;AAC3C,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAC,kCAA+B;AAEvF,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,wBAAyB,SAAQ,mBAAmB;IAC/D,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IACzC,QAAQ,EAAE,QAAQ,CAAS;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IAC7C,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IAC3C,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;IAgC3F;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,OAAO,EAAE;IAS3D;;;;;;OAMG;IACH,YAAY,qBAuBT;CACJ"}
|
|
@@ -30,6 +30,10 @@ export class DrawCircleByDiameterMode extends TwoClickPolygonMode {
|
|
|
30
30
|
const geometry = circle(centerCoordinates, this.radius, options);
|
|
31
31
|
geometry.properties = geometry.properties || {};
|
|
32
32
|
geometry.properties.shape = 'Circle';
|
|
33
|
+
geometry.properties.editProperties = geometry.properties.editProperties || {};
|
|
34
|
+
geometry.properties.editProperties.shape = 'Circle';
|
|
35
|
+
geometry.properties.editProperties.radius = { value: this.radius, unit: 'kilometers' };
|
|
36
|
+
geometry.properties.editProperties.center = centerCoordinates;
|
|
33
37
|
// calculate area of circle with turf function
|
|
34
38
|
this.areaCircle = area(geometry);
|
|
35
39
|
// @ts-expect-error turf types diff
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draw-circle-from-center-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-circle-from-center-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAC,mBAAgB;AAC3C,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAC,kCAA+B;AACvF,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,wBAAyB,SAAQ,mBAAmB;IAC/D,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IACzC,QAAQ,EAAE,QAAQ,CAAS;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IAC7C,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"draw-circle-from-center-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-circle-from-center-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAC,mBAAgB;AAC3C,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAC,kCAA+B;AACvF,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,wBAAyB,SAAQ,mBAAmB;IAC/D,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IACzC,QAAQ,EAAE,QAAQ,CAAS;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAQ;IAC7C,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;IA4B3F;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,OAAO,EAAE;IAQ3D;;;;;OAKG;IACH,YAAY,qBAsBT;CACJ"}
|
|
@@ -25,6 +25,10 @@ export class DrawCircleFromCenterMode extends TwoClickPolygonMode {
|
|
|
25
25
|
const geometry = circle(coord1, this.radius, options);
|
|
26
26
|
geometry.properties = geometry.properties || {};
|
|
27
27
|
geometry.properties.shape = 'Circle';
|
|
28
|
+
geometry.properties.editProperties = geometry.properties.editProperties || {};
|
|
29
|
+
geometry.properties.editProperties.shape = 'Circle';
|
|
30
|
+
geometry.properties.editProperties.radius = { value: this.radius, unit: 'kilometers' };
|
|
31
|
+
geometry.properties.editProperties.center = coord1;
|
|
28
32
|
// calculate area of circle with turf function
|
|
29
33
|
this.areaCircle = area(geometry);
|
|
30
34
|
// @ts-expect-error turf types diff
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draw-ellipse-by-bounding-box-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-ellipse-by-bounding-box-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AAEpE,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,4BAA6B,SAAQ,mBAAmB;IACnE,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"draw-ellipse-by-bounding-box-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-ellipse-by-bounding-box-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AAEpE,OAAO,EAAC,mBAAmB,EAAC,oCAAiC;AAE7D,qBAAa,4BAA6B,SAAQ,mBAAmB;IACnE,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;CAwB5F"}
|
|
@@ -17,7 +17,15 @@ export class DrawEllipseByBoundingBoxMode extends TwoClickPolygonMode {
|
|
|
17
17
|
const centerCoordinates = getIntermediatePosition(coord1, coord2);
|
|
18
18
|
const xSemiAxis = Math.max(distance(point(polygonPoints[0]), point(polygonPoints[1])), 0.001);
|
|
19
19
|
const ySemiAxis = Math.max(distance(point(polygonPoints[0]), point(polygonPoints[3])), 0.001);
|
|
20
|
+
const geometry = ellipse(centerCoordinates, xSemiAxis, ySemiAxis);
|
|
21
|
+
geometry.properties = geometry.properties || {};
|
|
22
|
+
geometry.properties.editProperties = geometry.properties.editProperties || {};
|
|
23
|
+
geometry.properties.editProperties.shape = 'Ellipse';
|
|
24
|
+
geometry.properties.editProperties.xSemiAxis = { value: xSemiAxis, unit: 'kilometers' };
|
|
25
|
+
geometry.properties.editProperties.ySemiAxis = { value: ySemiAxis, unit: 'kilometers' };
|
|
26
|
+
geometry.properties.editProperties.angle = 0;
|
|
27
|
+
geometry.properties.editProperties.center = centerCoordinates;
|
|
20
28
|
// @ts-expect-error fix return types
|
|
21
|
-
return
|
|
29
|
+
return geometry;
|
|
22
30
|
}
|
|
23
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draw-ellipse-using-three-points-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-ellipse-using-three-points-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AAEpE,OAAO,EAAC,qBAAqB,EAAC,sCAAmC;AAEjE,qBAAa,+BAAgC,SAAQ,qBAAqB;IACxE,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;
|
|
1
|
+
{"version":3,"file":"draw-ellipse-using-three-points-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/draw-ellipse-using-three-points-mode.ts"],"names":[],"mappings":"AAQA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAC,kCAA+B;AAEpE,OAAO,EAAC,qBAAqB,EAAC,sCAAmC;AAEjE,qBAAa,+BAAgC,SAAQ,qBAAqB;IACxE,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;CAkBzC"}
|
|
@@ -14,6 +14,15 @@ export class DrawEllipseUsingThreePointsMode extends ThreeClickPolygonMode {
|
|
|
14
14
|
const ySemiAxis = Math.max(distance(coord1, coord2), 0.001) / 2;
|
|
15
15
|
const options = { angle: bearing(coord1, coord2) };
|
|
16
16
|
// @ts-expect-error fix return types
|
|
17
|
-
|
|
17
|
+
const geometry = ellipse(centerCoordinates, xSemiAxis, ySemiAxis, options);
|
|
18
|
+
geometry.properties = geometry.properties || {};
|
|
19
|
+
geometry.properties.editProperties = geometry.properties.editProperties || {};
|
|
20
|
+
geometry.properties.editProperties.shape = 'Ellipse';
|
|
21
|
+
geometry.properties.editProperties.xSemiAxis = { value: xSemiAxis, unit: 'kilometers' };
|
|
22
|
+
geometry.properties.editProperties.ySemiAxis = { value: ySemiAxis, unit: 'kilometers' };
|
|
23
|
+
geometry.properties.editProperties.angle = options.angle;
|
|
24
|
+
geometry.properties.editProperties.center = centerCoordinates;
|
|
25
|
+
// @ts-expect-error fix return types
|
|
26
|
+
return geometry;
|
|
18
27
|
}
|
|
19
28
|
}
|
|
@@ -1 +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;
|
|
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;IAwCtE,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CAG/E"}
|
|
@@ -48,6 +48,9 @@ export class ExtendLineStringMode extends GeoJsonEditMode {
|
|
|
48
48
|
return guides;
|
|
49
49
|
}
|
|
50
50
|
const mapCoords = props.lastPointerMoveEvent && props.lastPointerMoveEvent.mapCoords;
|
|
51
|
+
if (!mapCoords) {
|
|
52
|
+
return guides;
|
|
53
|
+
}
|
|
51
54
|
// Draw an extension line starting from one end of the selected LineString to the cursor
|
|
52
55
|
let startPosition = null;
|
|
53
56
|
const { modeConfig } = props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extrude-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/extrude-mode.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extrude-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/extrude-mode.ts"],"names":[],"mappings":"AAWA,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;IAkDlF,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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
4
|
import bearing from '@turf/bearing';
|
|
5
|
-
import { generatePointsParallelToLinePoints, getPickedEditHandle, getPickedIntermediateEditHandle } from "./utils.js";
|
|
5
|
+
import { generatePointsParallelToLinePoints, getPickedEditHandle, getPickedIntermediateEditHandle, shouldCancelPan } from "./utils.js";
|
|
6
6
|
import { ModifyMode } from "./modify-mode.js";
|
|
7
7
|
import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
|
|
8
8
|
export class ExtrudeMode extends ModifyMode {
|
|
@@ -41,6 +41,9 @@ export class ExtrudeMode extends ModifyMode {
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
handleStartDragging(event, props) {
|
|
44
|
+
if (shouldCancelPan(event)) {
|
|
45
|
+
event.cancelPan();
|
|
46
|
+
}
|
|
44
47
|
const selectedFeatureIndexes = props.selectedIndexes;
|
|
45
48
|
const editHandle = getPickedIntermediateEditHandle(event.picks);
|
|
46
49
|
if (selectedFeatureIndexes.length && editHandle) {
|
|
@@ -19,9 +19,9 @@ export declare class GeoJsonEditMode implements EditMode<FeatureCollection, Guid
|
|
|
19
19
|
getTentativeGuide(props: ModeProps<FeatureCollection>): TentativeFeature | null | undefined;
|
|
20
20
|
isSelectionPicked(picks: Pick[], props: ModeProps<FeatureCollection>): boolean;
|
|
21
21
|
rewindPolygon(feature: Feature): Feature;
|
|
22
|
-
getAddFeatureAction(featureOrGeometry: Geometry | Feature, features: FeatureCollection): GeoJsonEditAction;
|
|
22
|
+
getAddFeatureAction(featureOrGeometry: Geometry | Feature, features: FeatureCollection, featureProperties?: {}): GeoJsonEditAction;
|
|
23
23
|
getAddManyFeaturesAction({ features: featuresToAdd }: FeatureCollection, features: FeatureCollection): GeoJsonEditAction;
|
|
24
|
-
getAddFeatureOrBooleanPolygonAction(featureOrGeometry: Polygon | Feature, props: ModeProps<FeatureCollection
|
|
24
|
+
getAddFeatureOrBooleanPolygonAction(featureOrGeometry: Polygon | Feature, props: ModeProps<FeatureCollection>, featureProperties?: {}): GeoJsonEditAction | null | undefined;
|
|
25
25
|
createTentativeFeature(props: ModeProps<FeatureCollection>): TentativeFeature | null;
|
|
26
26
|
handleClick(event: ClickEvent, props: ModeProps<FeatureCollection>): void;
|
|
27
27
|
handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geojson-edit-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/geojson-edit-mode.ts"],"names":[],"mappings":"AASA,OAAO,EACL,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,IAAI,EACJ,OAAO,EACP,SAAS,EACT,sBAAsB,EACtB,gBAAgB,EACjB,mBAAgB;AACjB,OAAO,EAAC,iBAAiB,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAC,kCAA+B;AAE/F,OAAO,EAAC,QAAQ,EAAC,uBAAoB;AAGrC,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;AAS9D,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;AAEjF,MAAM,WAAW,0BAA0B;IACzC,QAAQ,mBAAmB,CAAC;CAC7B;AAED,qBAAa,eAAgB,YAAW,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IACzF,cAAc,EAAE,QAAQ,EAAE,CAAM;IAEhC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAItE,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,OAAO,EAAE;IAI3D,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS;IAOnF,mBAAmB,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,QAAQ,GAAG,IAAI,GAAG,SAAS;IAQrF,sCAAsC,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,iBAAiB;IAS9F,gBAAgB,IAAI,QAAQ,EAAE;IAI9B,gBAAgB,CAAC,EAAC,SAAS,EAAC,EAAE,UAAU,GAAG,IAAI;IAI/C,kBAAkB,IAAI,IAAI;IAI1B,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,gBAAgB,GAAG,IAAI,GAAG,SAAS;IAO3F,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,OAAO;IAU9E,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAYxC,mBAAmB,CACjB,iBAAiB,EAAE,QAAQ,GAAG,OAAO,EACrC,QAAQ,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"geojson-edit-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/geojson-edit-mode.ts"],"names":[],"mappings":"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"}
|
|
@@ -71,14 +71,15 @@ export class GeoJsonEditMode {
|
|
|
71
71
|
}
|
|
72
72
|
return feature;
|
|
73
73
|
}
|
|
74
|
-
getAddFeatureAction(featureOrGeometry, features) {
|
|
74
|
+
getAddFeatureAction(featureOrGeometry, features, featureProperties) {
|
|
75
75
|
// Unsure why flow can't deal with Geometry type, but there I fixed it
|
|
76
76
|
const featureOrGeometryAsAny = featureOrGeometry;
|
|
77
|
+
featureProperties = featureProperties || {};
|
|
77
78
|
const feature = featureOrGeometryAsAny.type === 'Feature'
|
|
78
79
|
? featureOrGeometryAsAny
|
|
79
80
|
: {
|
|
80
81
|
type: 'Feature',
|
|
81
|
-
properties:
|
|
82
|
+
properties: featureProperties,
|
|
82
83
|
geometry: featureOrGeometryAsAny
|
|
83
84
|
};
|
|
84
85
|
const rewindFeature = this.rewindPolygon(feature);
|
|
@@ -115,8 +116,10 @@ export class GeoJsonEditMode {
|
|
|
115
116
|
}
|
|
116
117
|
};
|
|
117
118
|
}
|
|
118
|
-
|
|
119
|
+
// eslint-disable-next-line complexity
|
|
120
|
+
getAddFeatureOrBooleanPolygonAction(featureOrGeometry, props, featureProperties) {
|
|
119
121
|
const featureOrGeometryAsAny = featureOrGeometry;
|
|
122
|
+
featureProperties = featureProperties || {};
|
|
120
123
|
const selectedFeature = this.getSelectedFeature(props);
|
|
121
124
|
const { modeConfig } = props;
|
|
122
125
|
if (modeConfig && modeConfig.booleanOperation) {
|
|
@@ -169,7 +172,7 @@ export class GeoJsonEditMode {
|
|
|
169
172
|
};
|
|
170
173
|
return editAction;
|
|
171
174
|
}
|
|
172
|
-
return this.getAddFeatureAction(featureOrGeometry, props.data);
|
|
175
|
+
return this.getAddFeatureAction(featureOrGeometry, props.data, featureProperties);
|
|
173
176
|
}
|
|
174
177
|
createTentativeFeature(props) {
|
|
175
178
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"measure-distance-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/measure-distance-mode.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"measure-distance-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/measure-distance-mode.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,iBAAiB,EAAC,kCAA+B;AACzD,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,sBAAsB,EACtB,OAAO,EAER,mBAAgB;AAEjB,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAEpD,qBAAa,mBAAoB,SAAQ,eAAe;IACtD,2BAA2B,UAAS;IACpC,gBAAgB,EAAE,OAAO,EAAE,CAAM;IACjC,gBAAgB,SAAK;IAErB,4BAA4B;;;;iBAS1B;IAEF,cAAc,CAAC,QAAQ,KAAA,EAAE,UAAU,CAAC,KAAA;IAepC,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAgElE,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA2BrE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IA8CtE,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAI9E,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,OAAO,EAAE;CA4B5D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modify-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/modify-mode.ts"],"names":[],"mappings":"AAKA,OAAO,EAUL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"modify-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/modify-mode.ts"],"names":[],"mappings":"AAKA,OAAO,EAUL,gBAAgB,EAEjB,mBAAgB;AACjB,OAAO,EAAC,UAAU,EAAE,KAAK,EAAW,iBAAiB,EAAE,SAAS,EAAC,kCAA+B;AAChG,OAAO,EACL,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,QAAQ,EACR,sBAAsB,EACtB,iBAAiB,EAElB,mBAAgB;AACjB,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAGpD,qBAAa,UAAW,SAAQ,eAAe;IAE7C,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAsFtE,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;IAenB,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAuDlE,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAW/E,eAAe,CACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,EACnC,UAAU,EAAE,iBAAiB,EAC7B,KAAK,EAAE,iBAAiB,GAAG,aAAa;IAqC1C,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAKrF,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA+BlF,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAQhF,SAAS,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;CAS9D"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
4
|
import { point, lineString as toLineString } from '@turf/helpers';
|
|
5
|
-
import { recursivelyTraverseNestedArrays, nearestPointOnProjectedLine, nearestPointOnLine, getEditHandlesForGeometry, getPickedEditHandles, getPickedEditHandle, getPickedExistingEditHandle, getPickedIntermediateEditHandle, updateRectanglePosition } from "./utils.js";
|
|
5
|
+
import { recursivelyTraverseNestedArrays, nearestPointOnProjectedLine, nearestPointOnLine, getEditHandlesForGeometry, getPickedEditHandles, getPickedEditHandle, getPickedExistingEditHandle, getPickedIntermediateEditHandle, updateRectanglePosition, shouldCancelPan } from "./utils.js";
|
|
6
6
|
import { GeoJsonEditMode } from "./geojson-edit-mode.js";
|
|
7
7
|
import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
|
|
8
8
|
export class ModifyMode extends GeoJsonEditMode {
|
|
@@ -170,6 +170,9 @@ export class ModifyMode extends GeoJsonEditMode {
|
|
|
170
170
|
props.onUpdateCursor(cursor);
|
|
171
171
|
}
|
|
172
172
|
handleStartDragging(event, props) {
|
|
173
|
+
if (shouldCancelPan(event)) {
|
|
174
|
+
event.cancelPan();
|
|
175
|
+
}
|
|
173
176
|
const selectedFeatureIndexes = props.selectedIndexes;
|
|
174
177
|
const editHandle = getPickedIntermediateEditHandle(event.picks);
|
|
175
178
|
if (selectedFeatureIndexes.length && editHandle) {
|
|
@@ -1 +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;
|
|
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;IAOlF,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 +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;
|
|
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;IAQlF,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"}
|
|
@@ -10,7 +10,7 @@ import { coordEach } from '@turf/meta';
|
|
|
10
10
|
import { getGeom } from '@turf/invariant';
|
|
11
11
|
import { point, featureCollection, lineString } from '@turf/helpers';
|
|
12
12
|
import turfTransformRotate from '@turf/transform-rotate';
|
|
13
|
-
import polygonToLine from '@turf/polygon-to-line';
|
|
13
|
+
import { polygonToLine } from '@turf/polygon-to-line';
|
|
14
14
|
import { getPickedEditHandle } from "./utils.js";
|
|
15
15
|
import { GeoJsonEditMode, getIntermediatePosition } from "./geojson-edit-mode.js";
|
|
16
16
|
import { ImmutableFeatureCollection } from "./immutable-feature-collection.js";
|
|
@@ -92,6 +92,7 @@ export class RotateMode extends GeoJsonEditMode {
|
|
|
92
92
|
}
|
|
93
93
|
handleStartDragging(event, props) {
|
|
94
94
|
if (this._selectedEditHandle) {
|
|
95
|
+
event.cancelPan();
|
|
95
96
|
this._isRotating = true;
|
|
96
97
|
this._geometryBeingRotated = this.getSelectedFeaturesAsFeatureCollection(props);
|
|
97
98
|
}
|
|
@@ -1 +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;
|
|
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;IAQlF,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"}
|
|
@@ -6,7 +6,7 @@ import turfCentroid from '@turf/centroid';
|
|
|
6
6
|
import turfBearing from '@turf/bearing';
|
|
7
7
|
import bboxPolygon from '@turf/bbox-polygon';
|
|
8
8
|
import { point, featureCollection } from '@turf/helpers';
|
|
9
|
-
import polygonToLine from '@turf/polygon-to-line';
|
|
9
|
+
import { polygonToLine } from '@turf/polygon-to-line';
|
|
10
10
|
import { coordEach } from '@turf/meta';
|
|
11
11
|
import turfDistance from '@turf/distance';
|
|
12
12
|
import turfTransformScale from '@turf/transform-scale';
|
|
@@ -114,6 +114,7 @@ export class ScaleMode extends GeoJsonEditMode {
|
|
|
114
114
|
}
|
|
115
115
|
handleStartDragging(event, props) {
|
|
116
116
|
if (this._selectedEditHandle) {
|
|
117
|
+
event.cancelPan();
|
|
117
118
|
this._isScaling = true;
|
|
118
119
|
this._geometryBeingScaled = this.getSelectedFeaturesAsFeatureCollection(props);
|
|
119
120
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-polygon-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/split-polygon-mode.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"split-polygon-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/split-polygon-mode.ts"],"names":[],"mappings":"AAiBA,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 +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;
|
|
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;AAGpD,qBAAa,qBAAsB,SAAQ,eAAe;IACxD,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAuBlE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAiDtE,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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
4
|
import { GeoJsonEditMode } from "./geojson-edit-mode.js";
|
|
5
|
+
import { omit } from 'lodash';
|
|
5
6
|
export class ThreeClickPolygonMode extends GeoJsonEditMode {
|
|
6
7
|
handleClick(event, props) {
|
|
7
8
|
this.addClickSequence(event);
|
|
@@ -10,7 +11,7 @@ export class ThreeClickPolygonMode extends GeoJsonEditMode {
|
|
|
10
11
|
if (clickSequence.length > 2 &&
|
|
11
12
|
tentativeFeature &&
|
|
12
13
|
tentativeFeature.geometry.type === 'Polygon') {
|
|
13
|
-
const editAction = this.getAddFeatureOrBooleanPolygonAction(tentativeFeature.geometry, props);
|
|
14
|
+
const editAction = this.getAddFeatureOrBooleanPolygonAction(tentativeFeature.geometry, props, omit(tentativeFeature.properties, 'guideType'));
|
|
14
15
|
this.resetClickSequence();
|
|
15
16
|
if (editAction) {
|
|
16
17
|
props.onEdit(editAction);
|
|
@@ -47,6 +48,7 @@ export class ThreeClickPolygonMode extends GeoJsonEditMode {
|
|
|
47
48
|
guides.features.push({
|
|
48
49
|
type: 'Feature',
|
|
49
50
|
properties: {
|
|
51
|
+
...polygon.properties,
|
|
50
52
|
guideType: 'tentative'
|
|
51
53
|
},
|
|
52
54
|
geometry: polygon.geometry
|
|
@@ -1 +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;
|
|
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;IA+BlF,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;CAqB9C"}
|
|
@@ -24,6 +24,9 @@ export class TransformMode extends CompositeMode {
|
|
|
24
24
|
let scaleMode = null;
|
|
25
25
|
let translateMode = null;
|
|
26
26
|
const filteredModes = [];
|
|
27
|
+
if (event.picks.length) {
|
|
28
|
+
event.cancelPan();
|
|
29
|
+
}
|
|
27
30
|
// If the user selects a scaling edit handle that overlaps with part of the selected feature,
|
|
28
31
|
// it is possible for both scale and translate actions to be triggered. This logic prevents
|
|
29
32
|
// this simultaneous action trigger from happening by putting a higher priority on scaling
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translate-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/translate-mode.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"translate-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/translate-mode.ts"],"names":[],"mappings":"AAUA,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;IASlF,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"}
|
|
@@ -5,7 +5,7 @@ import turfBearing from '@turf/bearing';
|
|
|
5
5
|
import turfDistance from '@turf/distance';
|
|
6
6
|
import clone from '@turf/clone';
|
|
7
7
|
import { point } from '@turf/helpers';
|
|
8
|
-
import WebMercatorViewport from 'viewport-mercator-project';
|
|
8
|
+
import { WebMercatorViewport } from 'viewport-mercator-project';
|
|
9
9
|
import { mapCoords } from "./utils.js";
|
|
10
10
|
import { translateFromCenter } from "../utils/translate-from-center.js";
|
|
11
11
|
import { GeoJsonEditMode } from "./geojson-edit-mode.js";
|
|
@@ -36,6 +36,7 @@ export class TranslateMode extends GeoJsonEditMode {
|
|
|
36
36
|
if (!this._isTranslatable) {
|
|
37
37
|
return;
|
|
38
38
|
}
|
|
39
|
+
event.cancelPan();
|
|
39
40
|
this._geometryBeforeTranslate = this.getSelectedFeaturesAsFeatureCollection(props);
|
|
40
41
|
}
|
|
41
42
|
handleStopDragging(event, props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"two-click-polygon-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/two-click-polygon-mode.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,SAAS,EACT,sBAAsB,EACtB,gBAAgB,EACjB,mBAAgB;AACjB,OAAO,EAAC,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,QAAQ,EAAC,kCAA+B;AACvF,OAAO,EAAC,eAAe,EAAC,+BAA4B;
|
|
1
|
+
{"version":3,"file":"two-click-polygon-mode.d.ts","sourceRoot":"","sources":["../../src/edit-modes/two-click-polygon-mode.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,SAAS,EACT,sBAAsB,EACtB,gBAAgB,EACjB,mBAAgB;AACjB,OAAO,EAAC,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,QAAQ,EAAC,kCAA+B;AACvF,OAAO,EAAC,eAAe,EAAC,+BAA4B;AAGpD,qBAAa,mBAAoB,SAAQ,eAAe;IACtD,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IAWlE,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAUzF,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAUvF,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC;IA2BzD,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAgCtE,kBAAkB,CAChB,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;CAa9E"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: MIT
|
|
3
3
|
// Copyright (c) vis.gl contributors
|
|
4
4
|
import { GeoJsonEditMode } from "./geojson-edit-mode.js";
|
|
5
|
+
import { omit } from 'lodash';
|
|
5
6
|
export class TwoClickPolygonMode extends GeoJsonEditMode {
|
|
6
7
|
handleClick(event, props) {
|
|
7
8
|
if (props.modeConfig && props.modeConfig.dragToDraw) {
|
|
@@ -35,9 +36,7 @@ export class TwoClickPolygonMode extends GeoJsonEditMode {
|
|
|
35
36
|
tentativeFeature.geometry.type === 'Polygon') {
|
|
36
37
|
const feature = {
|
|
37
38
|
type: 'Feature',
|
|
38
|
-
properties:
|
|
39
|
-
shape: tentativeFeature.properties.shape
|
|
40
|
-
},
|
|
39
|
+
properties: omit(tentativeFeature.properties, 'guideType'),
|
|
41
40
|
geometry: {
|
|
42
41
|
type: 'Polygon',
|
|
43
42
|
coordinates: tentativeFeature.geometry.coordinates
|
|
@@ -68,7 +67,7 @@ export class TwoClickPolygonMode extends GeoJsonEditMode {
|
|
|
68
67
|
guides.features.push({
|
|
69
68
|
type: 'Feature',
|
|
70
69
|
properties: {
|
|
71
|
-
|
|
70
|
+
...polygon.properties,
|
|
72
71
|
guideType: 'tentative'
|
|
73
72
|
},
|
|
74
73
|
geometry: polygon.geometry
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/edit-modes/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/edit-modes/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { MultiLineString } from '@turf/helpers';
|
|
2
|
-
import { Viewport, Pick, EditHandleFeature, EditHandleType } from "./types.js";
|
|
1
|
+
import type { MultiLineString } from '@turf/helpers';
|
|
2
|
+
import { Viewport, Pick, EditHandleFeature, EditHandleType, StartDraggingEvent } from "./types.js";
|
|
3
3
|
import { Geometry, Position, Point, LineString, Polygon, FeatureOf, FeatureWithProps, AnyCoordinates } from "../utils/geojson-types.js";
|
|
4
4
|
export type NearestPointType = FeatureWithProps<Point, {
|
|
5
5
|
dist: number;
|
|
@@ -34,4 +34,5 @@ export declare function updateRectanglePosition(feature: FeatureOf<Polygon>, edi
|
|
|
34
34
|
* @retuns Transformed coordinates.
|
|
35
35
|
*/
|
|
36
36
|
export declare function mapCoords(coords: AnyCoordinates, callback: (coords: Position) => Position): AnyCoordinates;
|
|
37
|
+
export declare function shouldCancelPan(event: StartDraggingEvent): Pick;
|
|
37
38
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/edit-modes/utils.ts"],"names":[],"mappings":"AAUA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/edit-modes/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/edit-modes/utils.js
CHANGED
|
@@ -8,7 +8,7 @@ import pointToLineDistance from '@turf/point-to-line-distance';
|
|
|
8
8
|
import { flattenEach } from '@turf/meta';
|
|
9
9
|
import { point } from '@turf/helpers';
|
|
10
10
|
import { getCoords } from '@turf/invariant';
|
|
11
|
-
import WebMercatorViewport from 'viewport-mercator-project';
|
|
11
|
+
import { WebMercatorViewport } from 'viewport-mercator-project';
|
|
12
12
|
export function toDeckColor(color, defaultColor = [255, 0, 0, 255]) {
|
|
13
13
|
if (!Array.isArray(color)) {
|
|
14
14
|
return defaultColor;
|
|
@@ -382,3 +382,6 @@ export function mapCoords(coords, callback) {
|
|
|
382
382
|
})
|
|
383
383
|
.filter(Boolean);
|
|
384
384
|
}
|
|
385
|
+
export function shouldCancelPan(event) {
|
|
386
|
+
return event.picks.length && event.picks.find((p) => p.featureType === 'points');
|
|
387
|
+
}
|
|
@@ -5,7 +5,7 @@ import { GeoJsonEditModeType } from "../edit-modes/geojson-edit-mode.js";
|
|
|
5
5
|
import { Color } from "../utils/types.js";
|
|
6
6
|
import { EditableLayer, EditableLayerProps } from "./editable-layer.js";
|
|
7
7
|
import { Feature, FeatureCollection } from "../utils/geojson-types.js";
|
|
8
|
-
export type
|
|
8
|
+
export type EditableGeoJsonLayerProps<DataT = any> = EditableLayerProps & {
|
|
9
9
|
data: DataT;
|
|
10
10
|
mode?: any;
|
|
11
11
|
modeConfig?: any;
|
|
@@ -55,9 +55,9 @@ export type EditableGeojsonLayerProps<DataT = any> = EditableLayerProps & {
|
|
|
55
55
|
getEditHandleIconAngle?: number | ((handle: any) => number);
|
|
56
56
|
billboard?: boolean;
|
|
57
57
|
};
|
|
58
|
-
export declare class EditableGeoJsonLayer extends EditableLayer<FeatureCollection,
|
|
58
|
+
export declare class EditableGeoJsonLayer extends EditableLayer<FeatureCollection, EditableGeoJsonLayerProps<FeatureCollection>> {
|
|
59
59
|
static layerName: string;
|
|
60
|
-
static defaultProps: DefaultProps<
|
|
60
|
+
static defaultProps: DefaultProps<EditableGeoJsonLayerProps<any>>;
|
|
61
61
|
state: EditableLayer['state'] & {
|
|
62
62
|
cursor?: 'grabbing' | 'grab' | null;
|
|
63
63
|
mode: GeoJsonEditModeType;
|
|
@@ -70,7 +70,7 @@ export declare class EditableGeoJsonLayer extends EditableLayer<FeatureCollectio
|
|
|
70
70
|
initializeState(): void;
|
|
71
71
|
shouldUpdateState(opts: any): any;
|
|
72
72
|
updateState({ props, oldProps, changeFlags, context }: UpdateParameters<this>): void;
|
|
73
|
-
getModeProps(props:
|
|
73
|
+
getModeProps(props: EditableGeoJsonLayerProps<any>): {
|
|
74
74
|
modeConfig: any;
|
|
75
75
|
data: any;
|
|
76
76
|
selectedIndexes: number[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editable-geojson-layer.d.ts","sourceRoot":"","sources":["../../src/editable-layers/editable-geojson-layer.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAC,gBAAgB,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC;AAClE,OAAO,EAAC,YAAY,EAA+B,SAAS,EAAC,MAAM,iBAAiB,CAAC;AACrF,OAAO,EACL,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EACjB,+BAA4B;
|
|
1
|
+
{"version":3,"file":"editable-geojson-layer.d.ts","sourceRoot":"","sources":["../../src/editable-layers/editable-geojson-layer.ts"],"names":[],"mappings":"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"}
|