@deck.gl-community/editable-layers 9.1.1 → 9.2.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/edit-modes/draw-line-string-mode.d.ts +3 -1
- package/dist/edit-modes/draw-line-string-mode.d.ts.map +1 -1
- package/dist/edit-modes/draw-line-string-mode.js +19 -21
- package/dist/edit-modes/draw-line-string-mode.js.map +1 -1
- package/dist/edit-modes/draw-polygon-mode.d.ts +3 -1
- package/dist/edit-modes/draw-polygon-mode.d.ts.map +1 -1
- package/dist/edit-modes/draw-polygon-mode.js +19 -22
- package/dist/edit-modes/draw-polygon-mode.js.map +1 -1
- package/dist/edit-modes/edit-mode.d.ts +2 -1
- package/dist/edit-modes/edit-mode.d.ts.map +1 -1
- package/dist/edit-modes/geojson-edit-mode.d.ts +1 -0
- package/dist/edit-modes/geojson-edit-mode.d.ts.map +1 -1
- package/dist/edit-modes/geojson-edit-mode.js +1 -0
- package/dist/edit-modes/geojson-edit-mode.js.map +1 -1
- package/dist/edit-modes/measure-distance-mode.d.ts.map +1 -1
- package/dist/edit-modes/rotate-mode.d.ts.map +1 -1
- package/dist/edit-modes/scale-mode.d.ts.map +1 -1
- package/dist/edit-modes/types.d.ts +1 -0
- package/dist/edit-modes/types.d.ts.map +1 -1
- package/dist/editable-layers/editable-geojson-layer.d.ts +2 -1
- package/dist/editable-layers/editable-geojson-layer.d.ts.map +1 -1
- package/dist/editable-layers/editable-geojson-layer.js +5 -0
- package/dist/editable-layers/editable-geojson-layer.js.map +1 -1
- package/dist/editable-layers/editable-layer.d.ts +3 -1
- package/dist/editable-layers/editable-layer.d.ts.map +1 -1
- package/dist/editable-layers/editable-layer.js +7 -1
- package/dist/editable-layers/editable-layer.js.map +1 -1
- package/dist/index.cjs +604 -79
- package/dist/index.cjs.map +4 -4
- package/dist/lib/layers/segments-layer.d.ts +1 -1
- package/dist/lib/layers/segments-layer.d.ts.map +1 -1
- package/dist/lib/layers/segments-layer.js +1 -1
- package/dist/lib/layers/segments-layer.js.map +1 -1
- package/dist/lib/nebula-core.d.ts.map +1 -1
- package/dist/utils/memoize.d.ts.map +1 -1
- package/package.json +11 -11
- package/src/edit-modes/draw-line-string-mode.ts +23 -24
- package/src/edit-modes/draw-polygon-mode.ts +24 -27
- package/src/edit-modes/edit-mode.ts +4 -1
- package/src/edit-modes/geojson-edit-mode.ts +2 -0
- package/src/edit-modes/types.ts +3 -0
- package/src/editable-layers/editable-geojson-layer.ts +8 -1
- package/src/editable-layers/editable-layer.ts +10 -2
- package/src/lib/layers/segments-layer.ts +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { NebulaLayer } from "../nebula-layer.js";
|
|
2
2
|
import { DeckCache } from "../deck-renderer/deck-cache.js";
|
|
3
|
-
import { PathMarkerLayer } from
|
|
3
|
+
import { PathMarkerLayer } from "../../../../layers/src/path-marker-layer/path-marker-layer.js";
|
|
4
4
|
export declare class SegmentsLayer extends NebulaLayer {
|
|
5
5
|
deckCache: DeckCache<any, any>;
|
|
6
6
|
noBlend: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segments-layer.d.ts","sourceRoot":"","sources":["../../../src/lib/layers/segments-layer.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,WAAW,EAAC,2BAAwB;AAE5C,OAAO,EAAC,SAAS,EAAC,uCAAoC;AACtD,OAAO,EAAC,eAAe,EAAC,
|
|
1
|
+
{"version":3,"file":"segments-layer.d.ts","sourceRoot":"","sources":["../../../src/lib/layers/segments-layer.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,WAAW,EAAC,2BAAwB;AAE5C,OAAO,EAAC,SAAS,EAAC,uCAAoC;AACtD,OAAO,EAAC,eAAe,EAAC,sEAAmE;AAS3F,qBAAa,aAAc,SAAQ,WAAW;IAC5C,SAAS,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;gBAE7C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAcvC,mBAAmB,IAAI,GAAG;IAK1B,sBAAsB,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,EAAE;IAazD,0BAA0B,CAAC,EAAC,MAAM,EAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM;IAajE,MAAM,CAAC,EAAC,MAAM,EAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAuCrC"}
|
|
@@ -5,7 +5,7 @@ import { ArrowStyles, DEFAULT_STYLE, MAX_ARROWS } from "../style.js";
|
|
|
5
5
|
import { NebulaLayer } from "../nebula-layer.js";
|
|
6
6
|
import { toDeckColor } from "../../utils/utils.js";
|
|
7
7
|
import { DeckCache } from "../deck-renderer/deck-cache.js";
|
|
8
|
-
import { PathMarkerLayer } from
|
|
8
|
+
import { PathMarkerLayer } from "../../../../layers/src/path-marker-layer/path-marker-layer.js";
|
|
9
9
|
const NEBULA_TO_DECK_DIRECTIONS = {
|
|
10
10
|
[ArrowStyles.NONE]: { forward: false, backward: false },
|
|
11
11
|
[ArrowStyles.FORWARD]: { forward: true, backward: false },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segments-layer.js","sourceRoot":"","sources":["../../../src/lib/layers/segments-layer.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,+BAA+B;AAC/B,oCAAoC;AAEpC,OAAO,EAAC,WAAW,EAAE,aAAa,EAAE,UAAU,EAAC,oBAAiB;AAChE,OAAO,EAAC,WAAW,EAAC,2BAAwB;AAC5C,OAAO,EAAC,WAAW,EAAC,6BAA0B;AAC9C,OAAO,EAAC,SAAS,EAAC,uCAAoC;AACtD,OAAO,EAAC,eAAe,EAAC,
|
|
1
|
+
{"version":3,"file":"segments-layer.js","sourceRoot":"","sources":["../../../src/lib/layers/segments-layer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nebula-core.d.ts","sourceRoot":"","sources":["../../src/lib/nebula-core.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAC,mBAAmB,EAAC,MAAM,eAAe,CAAC;AAElD,OAAO,EAAC,UAAU,EAAC,uCAAoC;AAMvD,qBAAa,UAAU;IACrB,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAU/B,MAAM;IAON,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAOzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAS;IACnC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAQ;IAC1C,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAQ;IACjD,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAQ;IACnE,WAAW,EAAE,UAAU,CAAS;IAChC,aAAa,EAAE,OAAO,CAAS;IAC/B,UAAU,EAAE,mBAAmB,CAAS;IACxC,iBAAiB,qCAAsB;IACvC,WAAW,EAAE,MAAM,GAAG,CAAS;IAC/B,MAAM,EAAE,OAAO,CAAS;IAExB,GAAG,CAAC,OAAO,EAAE,MAAM;IAOnB,oBAAoB;IASpB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE;IASpC,cAAc;IAId,cAAc,CAAC,EAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IA8B3D,aAAa,
|
|
1
|
+
{"version":3,"file":"nebula-core.d.ts","sourceRoot":"","sources":["../../src/lib/nebula-core.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAC,mBAAmB,EAAC,MAAM,eAAe,CAAC;AAElD,OAAO,EAAC,UAAU,EAAC,uCAAoC;AAMvD,qBAAa,UAAU;IACrB,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAU/B,MAAM;IAON,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAOzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAS;IACnC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAQ;IAC1C,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAQ;IACjD,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAQ;IACnE,WAAW,EAAE,UAAU,CAAS;IAChC,aAAa,EAAE,OAAO,CAAS;IAC/B,UAAU,EAAE,mBAAmB,CAAS;IACxC,iBAAiB,qCAAsB;IACvC,WAAW,EAAE,MAAM,GAAG,CAAS;IAC/B,MAAM,EAAE,OAAO,CAAS;IAExB,GAAG,CAAC,OAAO,EAAE,MAAM;IAOnB,oBAAoB;IASpB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE;IASpC,cAAc;IAId,cAAc,CAAC,EAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IA8B3D,aAAa,GAAI,OAAO,UAAU,UAwChC;IAEF,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACqB,CAAC,MAAM,EAAE,MAAM,CAAC;IAGtF,sBAAsB,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAKzE,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IA0G7C,kBAAkB,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;IAQ3C,gBAAgB;IAMhB,YAAY;IAcZ,iBAAiB;IAIjB,0BAA0B,CACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAC7B,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAehC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAM1C,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;CAK3D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoize.d.ts","sourceRoot":"","sources":["../../src/utils/memoize.ts"],"names":[],"mappings":"AA2BA;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"memoize.d.ts","sourceRoot":"","sources":["../../src/utils/memoize.ts"],"names":[],"mappings":"AA2BA;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,QAAQ,IAI/B,MAAM,GAAG,SAUlB"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@deck.gl-community/editable-layers",
|
|
3
3
|
"description": "A suite of 3D-enabled data editing overlays, suitable for deck.gl",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "9.
|
|
5
|
+
"version": "9.2.0-beta.2",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/visgl/deck.gl-community"
|
|
@@ -71,16 +71,16 @@
|
|
|
71
71
|
"viewport-mercator-project": ">=6.2.3"
|
|
72
72
|
},
|
|
73
73
|
"peerDependencies": {
|
|
74
|
-
"@deck.gl-community/layers": "^9.
|
|
75
|
-
"@deck.gl/core": "
|
|
76
|
-
"@deck.gl/extensions": "
|
|
77
|
-
"@deck.gl/geo-layers": "
|
|
78
|
-
"@deck.gl/layers": "
|
|
79
|
-
"@deck.gl/mesh-layers": "
|
|
80
|
-
"@luma.gl/constants": "
|
|
81
|
-
"@luma.gl/core": "
|
|
82
|
-
"@luma.gl/engine": "
|
|
74
|
+
"@deck.gl-community/layers": "^9.2.0-beta",
|
|
75
|
+
"@deck.gl/core": "~9.2.1",
|
|
76
|
+
"@deck.gl/extensions": "~9.2.1",
|
|
77
|
+
"@deck.gl/geo-layers": "~9.2.1",
|
|
78
|
+
"@deck.gl/layers": "~9.2.1",
|
|
79
|
+
"@deck.gl/mesh-layers": "~9.2.1",
|
|
80
|
+
"@luma.gl/constants": "~9.2.0",
|
|
81
|
+
"@luma.gl/core": "~9.2.0",
|
|
82
|
+
"@luma.gl/engine": "~9.2.0",
|
|
83
83
|
"@math.gl/core": ">=4.0.1"
|
|
84
84
|
},
|
|
85
|
-
"gitHead": "
|
|
85
|
+
"gitHead": "b434bcba10800f27e95a7c9e6c4c7edd0b915773"
|
|
86
86
|
}
|
|
@@ -11,7 +11,8 @@ import {
|
|
|
11
11
|
ModeProps,
|
|
12
12
|
GuideFeatureCollection,
|
|
13
13
|
GuideFeature,
|
|
14
|
-
Tooltip
|
|
14
|
+
Tooltip,
|
|
15
|
+
DoubleClickEvent
|
|
15
16
|
} from './types';
|
|
16
17
|
import {getPickedEditHandle} from './utils';
|
|
17
18
|
import {GeoJsonEditMode} from './geojson-edit-mode';
|
|
@@ -47,17 +48,7 @@ export class DrawLineStringMode extends GeoJsonEditMode {
|
|
|
47
48
|
// They clicked the last point (or double-clicked), so add the LineString
|
|
48
49
|
// reset distance to new calculate
|
|
49
50
|
this.dist = 0;
|
|
50
|
-
|
|
51
|
-
type: 'LineString',
|
|
52
|
-
coordinates: [...clickSequence]
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
this.resetClickSequence();
|
|
56
|
-
|
|
57
|
-
const editAction = this.getAddFeatureAction(lineStringToAdd, props.data);
|
|
58
|
-
if (editAction) {
|
|
59
|
-
props.onEdit(editAction);
|
|
60
|
-
}
|
|
51
|
+
this.finishDrawing(props);
|
|
61
52
|
} else if (positionAdded) {
|
|
62
53
|
// new tentative point
|
|
63
54
|
props.onEdit({
|
|
@@ -71,21 +62,29 @@ export class DrawLineStringMode extends GeoJsonEditMode {
|
|
|
71
62
|
}
|
|
72
63
|
}
|
|
73
64
|
|
|
65
|
+
handleDoubleClick(event: DoubleClickEvent, props: ModeProps<FeatureCollection>) {
|
|
66
|
+
this.finishDrawing(props);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
finishDrawing(props: ModeProps<FeatureCollection>) {
|
|
70
|
+
const clickSequence = this.getClickSequence();
|
|
71
|
+
if (clickSequence.length > 1) {
|
|
72
|
+
const lineStringToAdd: LineString = {
|
|
73
|
+
type: 'LineString',
|
|
74
|
+
coordinates: [...clickSequence]
|
|
75
|
+
};
|
|
76
|
+
this.resetClickSequence();
|
|
77
|
+
const editAction = this.getAddFeatureAction(lineStringToAdd, props.data);
|
|
78
|
+
if (editAction) {
|
|
79
|
+
props.onEdit(editAction);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
74
84
|
handleKeyUp(event: KeyboardEvent, props: ModeProps<FeatureCollection>) {
|
|
75
85
|
const {key} = event;
|
|
76
86
|
if (key === 'Enter') {
|
|
77
|
-
|
|
78
|
-
if (clickSequence.length > 1) {
|
|
79
|
-
const lineStringToAdd: LineString = {
|
|
80
|
-
type: 'LineString',
|
|
81
|
-
coordinates: [...clickSequence]
|
|
82
|
-
};
|
|
83
|
-
this.resetClickSequence();
|
|
84
|
-
const editAction = this.getAddFeatureAction(lineStringToAdd, props.data);
|
|
85
|
-
if (editAction) {
|
|
86
|
-
props.onEdit(editAction);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
87
|
+
this.finishDrawing(props);
|
|
89
88
|
} else if (key === 'Escape') {
|
|
90
89
|
this.resetClickSequence();
|
|
91
90
|
props.onEdit({
|
|
@@ -10,7 +10,8 @@ import {
|
|
|
10
10
|
ModeProps,
|
|
11
11
|
GuideFeatureCollection,
|
|
12
12
|
TentativeFeature,
|
|
13
|
-
GuideFeature
|
|
13
|
+
GuideFeature,
|
|
14
|
+
DoubleClickEvent
|
|
14
15
|
} from './types';
|
|
15
16
|
import {Polygon, FeatureCollection} from '../utils/geojson-types';
|
|
16
17
|
import {getPickedEditHandle} from './utils';
|
|
@@ -83,6 +84,22 @@ export class DrawPolygonMode extends GeoJsonEditMode {
|
|
|
83
84
|
return guides;
|
|
84
85
|
}
|
|
85
86
|
|
|
87
|
+
finishDrawing(props: ModeProps<FeatureCollection>) {
|
|
88
|
+
const clickSequence = this.getClickSequence();
|
|
89
|
+
if (clickSequence.length > 2) {
|
|
90
|
+
const polygonToAdd: Polygon = {
|
|
91
|
+
type: 'Polygon',
|
|
92
|
+
coordinates: [[...clickSequence, clickSequence[0]]]
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
this.resetClickSequence();
|
|
96
|
+
const editAction = this.getAddFeatureOrBooleanPolygonAction(polygonToAdd, props);
|
|
97
|
+
if (editAction) {
|
|
98
|
+
props.onEdit(editAction);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
86
103
|
// eslint-disable-next-line complexity
|
|
87
104
|
handleClick(event: ClickEvent, props: ModeProps<FeatureCollection>) {
|
|
88
105
|
const {picks} = event;
|
|
@@ -117,19 +134,7 @@ export class DrawPolygonMode extends GeoJsonEditMode {
|
|
|
117
134
|
clickedEditHandle.properties.positionIndexes[0] === clickSequence.length - 1)
|
|
118
135
|
) {
|
|
119
136
|
// They clicked the first or last point (or double-clicked), so complete the polygon
|
|
120
|
-
|
|
121
|
-
// Remove the hovered position
|
|
122
|
-
const polygonToAdd: Polygon = {
|
|
123
|
-
type: 'Polygon',
|
|
124
|
-
coordinates: [[...clickSequence, clickSequence[0]]]
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
this.resetClickSequence();
|
|
128
|
-
|
|
129
|
-
const editAction = this.getAddFeatureOrBooleanPolygonAction(polygonToAdd, props);
|
|
130
|
-
if (editAction) {
|
|
131
|
-
props.onEdit(editAction);
|
|
132
|
-
}
|
|
137
|
+
this.finishDrawing(props);
|
|
133
138
|
} else if (positionAdded) {
|
|
134
139
|
// new tentative point
|
|
135
140
|
props.onEdit({
|
|
@@ -143,21 +148,13 @@ export class DrawPolygonMode extends GeoJsonEditMode {
|
|
|
143
148
|
}
|
|
144
149
|
}
|
|
145
150
|
|
|
151
|
+
handleDoubleClick(event: DoubleClickEvent, props: ModeProps<FeatureCollection>) {
|
|
152
|
+
this.finishDrawing(props);
|
|
153
|
+
}
|
|
154
|
+
|
|
146
155
|
handleKeyUp(event: KeyboardEvent, props: ModeProps<FeatureCollection>) {
|
|
147
156
|
if (event.key === 'Enter') {
|
|
148
|
-
|
|
149
|
-
if (clickSequence.length > 2) {
|
|
150
|
-
const polygonToAdd: Polygon = {
|
|
151
|
-
type: 'Polygon',
|
|
152
|
-
coordinates: [[...clickSequence, clickSequence[0]]]
|
|
153
|
-
};
|
|
154
|
-
this.resetClickSequence();
|
|
155
|
-
|
|
156
|
-
const editAction = this.getAddFeatureOrBooleanPolygonAction(polygonToAdd, props);
|
|
157
|
-
if (editAction) {
|
|
158
|
-
props.onEdit(editAction);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
157
|
+
this.finishDrawing(props);
|
|
161
158
|
} else if (event.key === 'Escape') {
|
|
162
159
|
this.resetClickSequence();
|
|
163
160
|
props.onEdit({
|
|
@@ -11,12 +11,15 @@ import {
|
|
|
11
11
|
StopDraggingEvent,
|
|
12
12
|
DraggingEvent,
|
|
13
13
|
Tooltip,
|
|
14
|
-
ModeProps
|
|
14
|
+
ModeProps,
|
|
15
|
+
DoubleClickEvent
|
|
15
16
|
} from './types';
|
|
16
17
|
|
|
17
18
|
export interface EditMode<TData, TGuides> {
|
|
18
19
|
// Called when the pointer went down and up without dragging regardless of whether something was picked
|
|
19
20
|
handleClick(event: ClickEvent, props: ModeProps<TData>): void;
|
|
21
|
+
// Called when the pointer double-clicked
|
|
22
|
+
handleDoubleClick(event: DoubleClickEvent, props: ModeProps<TData>): void;
|
|
20
23
|
// Called when the pointer moved, regardless of whether the pointer is down, up, and whether something was picked
|
|
21
24
|
handlePointerMove(event: PointerMoveEvent, props: ModeProps<TData>): void;
|
|
22
25
|
// Called when the pointer went down on something rendered by this layer and the pointer started to move
|
|
@@ -253,6 +253,8 @@ export class GeoJsonEditMode implements EditMode<FeatureCollection, GuideFeature
|
|
|
253
253
|
}
|
|
254
254
|
|
|
255
255
|
handleClick(event: ClickEvent, props: ModeProps<FeatureCollection>): void {}
|
|
256
|
+
handleDoubleClick(event: ClickEvent, props: ModeProps<FeatureCollection>): void {}
|
|
257
|
+
|
|
256
258
|
handlePointerMove(event: PointerMoveEvent, props: ModeProps<FeatureCollection>): void {
|
|
257
259
|
const tentativeFeature = this.createTentativeFeature(props);
|
|
258
260
|
if (tentativeFeature) {
|
package/src/edit-modes/types.ts
CHANGED
|
@@ -44,6 +44,9 @@ export type BasePointerEvent = {
|
|
|
44
44
|
// Represents a click event
|
|
45
45
|
export type ClickEvent = BasePointerEvent;
|
|
46
46
|
|
|
47
|
+
// Represents a double click event
|
|
48
|
+
export type DoubleClickEvent = BasePointerEvent;
|
|
49
|
+
|
|
47
50
|
// Represents an event that occurs when the pointer goes down and the cursor starts moving
|
|
48
51
|
export type StartDraggingEvent = BasePointerEvent & {
|
|
49
52
|
pointerDownPicks?: Pick[] | null;
|
|
@@ -12,7 +12,8 @@ import {
|
|
|
12
12
|
StartDraggingEvent,
|
|
13
13
|
StopDraggingEvent,
|
|
14
14
|
DraggingEvent,
|
|
15
|
-
PointerMoveEvent
|
|
15
|
+
PointerMoveEvent,
|
|
16
|
+
DoubleClickEvent
|
|
16
17
|
} from '../edit-modes/types';
|
|
17
18
|
|
|
18
19
|
import {ViewMode} from '../edit-modes/view-mode';
|
|
@@ -567,6 +568,12 @@ export class EditableGeoJsonLayer extends EditableLayer<
|
|
|
567
568
|
this.getActiveMode().handleClick(event, this.getModeProps(this.props) as any);
|
|
568
569
|
}
|
|
569
570
|
|
|
571
|
+
onLayerDoubleClick(event: DoubleClickEvent): void {
|
|
572
|
+
if (this.getActiveMode().handleDoubleClick) {
|
|
573
|
+
this.getActiveMode().handleDoubleClick(event, this.getModeProps(this.props) as any);
|
|
574
|
+
}
|
|
575
|
+
}
|
|
576
|
+
|
|
570
577
|
onLayerKeyUp(event: KeyboardEvent): void {
|
|
571
578
|
this.getActiveMode().handleKeyUp(event, this.getModeProps(this.props) as any);
|
|
572
579
|
}
|
|
@@ -11,11 +11,12 @@ import {
|
|
|
11
11
|
ClickEvent,
|
|
12
12
|
StartDraggingEvent,
|
|
13
13
|
StopDraggingEvent,
|
|
14
|
-
PointerMoveEvent
|
|
14
|
+
PointerMoveEvent,
|
|
15
|
+
DoubleClickEvent
|
|
15
16
|
} from '../edit-modes/types';
|
|
16
17
|
import {Position} from '../utils/geojson-types';
|
|
17
18
|
|
|
18
|
-
const EVENT_TYPES = ['click', 'pointermove', 'panstart', 'panmove', 'panend', 'keyup'];
|
|
19
|
+
const EVENT_TYPES = ['click', 'pointermove', 'panstart', 'panmove', 'panend', 'keyup', 'dblclick'];
|
|
19
20
|
|
|
20
21
|
// TODO(v9): remove generic layer
|
|
21
22
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -37,6 +38,9 @@ export abstract class EditableLayer<
|
|
|
37
38
|
onLayerClick(event: ClickEvent): void {
|
|
38
39
|
// default implementation - do nothing
|
|
39
40
|
}
|
|
41
|
+
onLayerDoubleClick(event: DoubleClickEvent): void {
|
|
42
|
+
// default implementation - do nothing
|
|
43
|
+
}
|
|
40
44
|
|
|
41
45
|
onStartDragging(event: StartDraggingEvent): void {
|
|
42
46
|
// default implementation - do nothing
|
|
@@ -133,6 +137,10 @@ export abstract class EditableLayer<
|
|
|
133
137
|
});
|
|
134
138
|
}
|
|
135
139
|
|
|
140
|
+
_ondblclick({srcEvent}: any) {
|
|
141
|
+
this.onLayerDoubleClick(srcEvent);
|
|
142
|
+
}
|
|
143
|
+
|
|
136
144
|
_onkeyup({srcEvent}: {srcEvent: KeyboardEvent}) {
|
|
137
145
|
this.onLayerKeyUp(srcEvent);
|
|
138
146
|
}
|
|
@@ -6,7 +6,7 @@ import {ArrowStyles, DEFAULT_STYLE, MAX_ARROWS} from '../style';
|
|
|
6
6
|
import {NebulaLayer} from '../nebula-layer';
|
|
7
7
|
import {toDeckColor} from '../../utils/utils';
|
|
8
8
|
import {DeckCache} from '../deck-renderer/deck-cache';
|
|
9
|
-
import {PathMarkerLayer} from '
|
|
9
|
+
import {PathMarkerLayer} from '../../../../layers/src/path-marker-layer/path-marker-layer';
|
|
10
10
|
|
|
11
11
|
const NEBULA_TO_DECK_DIRECTIONS = {
|
|
12
12
|
[ArrowStyles.NONE]: {forward: false, backward: false},
|