terra-draw 0.0.1-alpha.3 → 0.0.1-alpha.31
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/CHANGELOG.md +323 -0
- package/README.md +25 -4
- package/dist/adapters/common/adapter-listener.d.ts +22 -0
- package/dist/adapters/common/base-adapter.d.ts +31 -0
- package/dist/adapters/common/base.adapter.d.ts +47 -0
- package/dist/adapters/google-maps.adapter.d.ts +87 -38
- package/dist/adapters/leaflet.adapter.d.ts +98 -35
- package/dist/adapters/mapbox-gl.adapter.d.ts +85 -36
- package/dist/adapters/maplibre-gl.adapter.d.ts +72 -0
- package/dist/adapters/openlayers.adapter.d.ts +117 -0
- package/dist/common.d.ts +91 -99
- package/dist/extend-types.d.ts +4 -0
- package/dist/geometry/boolean/point-in-polygon.d.ts +2 -2
- package/dist/geometry/boolean/self-intersects.d.ts +2 -2
- package/dist/geometry/centroid.d.ts +2 -2
- package/dist/geometry/coordinates-identical.d.ts +2 -2
- package/dist/geometry/get-coordinates-as-points.d.ts +6 -6
- package/dist/geometry/get-midpoints.d.ts +8 -7
- package/dist/geometry/helpers.d.ts +4 -4
- package/dist/geometry/limit-decimal-precision.d.ts +1 -1
- package/dist/geometry/measure/haversine-distance.d.ts +2 -2
- package/dist/geometry/measure/pixel-distance-to-line.d.ts +10 -10
- package/dist/geometry/measure/pixel-distance.d.ts +7 -7
- package/dist/geometry/measure/rhumb-bearing.d.ts +2 -2
- package/dist/geometry/measure/rhumb-destination.d.ts +2 -2
- package/dist/geometry/measure/rhumb-distance.d.ts +2 -2
- package/dist/geometry/midpoint-coordinate.d.ts +3 -2
- package/dist/geometry/shape/create-circle.d.ts +8 -7
- package/dist/geometry/shape/great-circle-line.d.ts +12 -0
- package/dist/geometry/transform/rotate.d.ts +2 -2
- package/dist/geometry/transform/scale.d.ts +2 -2
- package/dist/modes/base.behavior.d.ts +19 -19
- package/dist/modes/base.mode.d.ts +47 -30
- package/dist/modes/circle/circle.mode.d.ts +48 -27
- package/dist/modes/click-bounding-box.behavior.d.ts +7 -7
- package/dist/modes/freehand/freehand.mode.d.ts +54 -29
- package/dist/modes/great-circle-snapping.behavior.d.ts +13 -0
- package/dist/modes/greatcircle/great-circle.mode.d.ts +57 -0
- package/dist/modes/linestring/linestring.mode.d.ts +60 -34
- package/dist/modes/pixel-distance.behavior.d.ts +7 -7
- package/dist/modes/point/point.mode.d.ts +38 -18
- package/dist/modes/polygon/behaviors/closing-points.behavior.d.ts +19 -0
- package/dist/modes/polygon/polygon.mode.d.ts +63 -37
- package/dist/modes/rectangle/rectangle.mode.d.ts +49 -0
- package/dist/modes/render/render.mode.d.ts +36 -0
- package/dist/modes/select/behaviors/drag-coordinate.behavior.d.ts +13 -13
- package/dist/modes/select/behaviors/drag-feature.behavior.d.ts +17 -17
- package/dist/modes/select/behaviors/features-at-mouse-event.behavior.d.ts +15 -15
- package/dist/modes/select/behaviors/midpoint.behavior.d.ts +18 -18
- package/dist/modes/select/behaviors/rotate-feature.behavior.d.ts +13 -13
- package/dist/modes/select/behaviors/scale-feature.behavior.d.ts +13 -13
- package/dist/modes/select/behaviors/selection-point.behavior.d.ts +18 -18
- package/dist/modes/select/select.mode.d.ts +89 -62
- package/dist/modes/snapping.behavior.d.ts +13 -13
- package/dist/modes/static/static.mode.d.ts +31 -13
- package/dist/store/spatial-index/quickselect.d.ts +2 -2
- package/dist/store/spatial-index/rbush.d.ts +35 -35
- package/dist/store/spatial-index/spatial-index.d.ts +18 -18
- package/dist/store/store.d.ts +50 -48
- package/dist/terra-draw.cjs +1 -1
- package/dist/terra-draw.cjs.map +1 -1
- package/dist/terra-draw.d.ts +141 -47
- package/dist/terra-draw.modern.js +1 -1
- package/dist/terra-draw.modern.js.map +1 -1
- package/dist/terra-draw.module.js +1 -1
- package/dist/terra-draw.module.js.map +1 -1
- package/dist/terra-draw.umd.js +1 -1
- package/dist/terra-draw.umd.js.map +1 -1
- package/dist/util/geoms.d.ts +3 -3
- package/dist/util/id.d.ts +1 -1
- package/dist/util/styling.d.ts +2 -2
- package/{CONTRIBUTING.md → guides/CONTRIBUTING.md} +7 -7
- package/guides/DEVELOPMENT.md +156 -0
- package/guides/GETTING_STARTED.md +211 -0
- package/jest.config.ts +22 -22
- package/logo.png +0 -0
- package/package.json +151 -87
- package/readme.gif +0 -0
- package/scratch/release.sh +6 -0
- package/tsconfig.json +20 -12
- package/DEVELOPMENT.md +0 -77
- /package/{CODE_OF_CONDUCT.md → guides/CODE_OF_CONDUCT.md} +0 -0
package/dist/terra-draw.d.ts
CHANGED
|
@@ -1,47 +1,141 @@
|
|
|
1
|
-
import { TerraDrawGoogleMapsAdapter } from "./adapters/google-maps.adapter";
|
|
2
|
-
import { TerraDrawLeafletAdapter } from "./adapters/leaflet.adapter";
|
|
3
|
-
import { TerraDrawMapboxGLAdapter } from "./adapters/mapbox-gl.adapter";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
private
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
1
|
+
import { TerraDrawGoogleMapsAdapter } from "./adapters/google-maps.adapter";
|
|
2
|
+
import { TerraDrawLeafletAdapter } from "./adapters/leaflet.adapter";
|
|
3
|
+
import { TerraDrawMapboxGLAdapter } from "./adapters/mapbox-gl.adapter";
|
|
4
|
+
import { TerraDrawMapLibreGLAdapter } from "./adapters/maplibre-gl.adapter";
|
|
5
|
+
import { TerraDrawOpenLayersAdapter } from "./adapters/openlayers.adapter";
|
|
6
|
+
import { TerraDrawAdapter, TerraDrawAdapterStyling, GetLngLatFromEvent, Project, SetCursor, TerraDrawChanges, TerraDrawStylingFunction, Unproject, HexColor, TerraDrawKeyboardEvent, TerraDrawMouseEvent } from "./common";
|
|
7
|
+
import { TerraDrawBaseAdapter } from "./adapters/common/base.adapter";
|
|
8
|
+
import { TerraDrawBaseDrawMode } from "./modes/base.mode";
|
|
9
|
+
import { TerraDrawCircleMode } from "./modes/circle/circle.mode";
|
|
10
|
+
import { TerraDrawFreehandMode } from "./modes/freehand/freehand.mode";
|
|
11
|
+
import { TerraDrawGreatCircleMode } from "./modes/greatcircle/great-circle.mode";
|
|
12
|
+
import { TerraDrawLineStringMode } from "./modes/linestring/linestring.mode";
|
|
13
|
+
import { TerraDrawPointMode } from "./modes/point/point.mode";
|
|
14
|
+
import { TerraDrawPolygonMode } from "./modes/polygon/polygon.mode";
|
|
15
|
+
import { TerraDrawRectangleMode } from "./modes/rectangle/rectangle.mode";
|
|
16
|
+
import { TerraDrawRenderMode } from "./modes/render/render.mode";
|
|
17
|
+
import { TerraDrawSelectMode } from "./modes/select/select.mode";
|
|
18
|
+
import { GeoJSONStoreFeatures } from "./store/store";
|
|
19
|
+
import { BehaviorConfig } from "./modes/base.behavior";
|
|
20
|
+
type FinishListener = (ids: string) => void;
|
|
21
|
+
type ChangeListener = (ids: string[], type: string) => void;
|
|
22
|
+
type SelectListener = (id: string) => void;
|
|
23
|
+
type DeselectListener = () => void;
|
|
24
|
+
interface TerraDrawEventListeners {
|
|
25
|
+
finish: FinishListener;
|
|
26
|
+
change: ChangeListener;
|
|
27
|
+
select: SelectListener;
|
|
28
|
+
deselect: DeselectListener;
|
|
29
|
+
}
|
|
30
|
+
type TerraDrawEvents = keyof TerraDrawEventListeners;
|
|
31
|
+
declare class TerraDraw {
|
|
32
|
+
private _modes;
|
|
33
|
+
private _mode;
|
|
34
|
+
private _adapter;
|
|
35
|
+
private _enabled;
|
|
36
|
+
private _store;
|
|
37
|
+
private _eventListeners;
|
|
38
|
+
constructor(options: {
|
|
39
|
+
adapter: TerraDrawAdapter;
|
|
40
|
+
modes: {
|
|
41
|
+
[mode: string]: TerraDrawBaseDrawMode<any>;
|
|
42
|
+
};
|
|
43
|
+
data?: GeoJSONStoreFeatures[];
|
|
44
|
+
});
|
|
45
|
+
private checkEnabled;
|
|
46
|
+
private getModeStyles;
|
|
47
|
+
/**
|
|
48
|
+
* Allows the setting of a style for a given mode
|
|
49
|
+
*
|
|
50
|
+
* @param mode - The mode you wish to set a style for
|
|
51
|
+
* @param styles - The styles you wish to set for the mode - this is
|
|
52
|
+
* the same as the initialisation style schema
|
|
53
|
+
*
|
|
54
|
+
* @alpha
|
|
55
|
+
*/
|
|
56
|
+
setModeStyles(mode: string, styles: TerraDrawAdapterStyling): void;
|
|
57
|
+
/**
|
|
58
|
+
* Allows the user to get a snapshot (copy) of all given features
|
|
59
|
+
*
|
|
60
|
+
* @returns An array of all given Feature Geometries in the instances store
|
|
61
|
+
*
|
|
62
|
+
* @alpha
|
|
63
|
+
*/
|
|
64
|
+
getSnapshot(): GeoJSONStoreFeatures[];
|
|
65
|
+
/**
|
|
66
|
+
* Removes all data from the current store and removes any rendered layers
|
|
67
|
+
* via the registering the adapter.
|
|
68
|
+
*
|
|
69
|
+
* @alpha
|
|
70
|
+
*/
|
|
71
|
+
clear(): void;
|
|
72
|
+
/**
|
|
73
|
+
* A property used to determine whether the instance is active or not. You
|
|
74
|
+
* can use the start method to set this to true, and stop method to set this to false.
|
|
75
|
+
* This is a read only property.
|
|
76
|
+
*
|
|
77
|
+
* @return true or false depending on if the instance is stopped or started
|
|
78
|
+
* @readonly
|
|
79
|
+
* @alpha
|
|
80
|
+
*/
|
|
81
|
+
get enabled(): boolean;
|
|
82
|
+
/**
|
|
83
|
+
* enabled is a read only property and will throw and error if you try and set it.
|
|
84
|
+
*
|
|
85
|
+
* @alpha
|
|
86
|
+
*/
|
|
87
|
+
set enabled(_: boolean);
|
|
88
|
+
/**
|
|
89
|
+
* A method for getting the current mode name
|
|
90
|
+
*
|
|
91
|
+
* @return the current mode name
|
|
92
|
+
*
|
|
93
|
+
* @alpha
|
|
94
|
+
*/
|
|
95
|
+
getMode(): string;
|
|
96
|
+
/**
|
|
97
|
+
* A method for setting the current mode by name. Under the hood this will stop
|
|
98
|
+
* the previous mode and start the new one.
|
|
99
|
+
* @param mode - The mode name you wish to start
|
|
100
|
+
*
|
|
101
|
+
* @alpha
|
|
102
|
+
*/
|
|
103
|
+
setMode(mode: string): void;
|
|
104
|
+
/**
|
|
105
|
+
* A method starting Terra Draw. It put the instance into a started state, and
|
|
106
|
+
* in registers the passed adapter giving it all the callbacks required to operate.
|
|
107
|
+
*
|
|
108
|
+
* @alpha
|
|
109
|
+
*/
|
|
110
|
+
start(): void;
|
|
111
|
+
/**
|
|
112
|
+
* A method for stopping Terra Draw. Will clear the store, deregister the adapter and
|
|
113
|
+
* remove any rendered layers in the process.
|
|
114
|
+
*
|
|
115
|
+
* @alpha
|
|
116
|
+
*/
|
|
117
|
+
stop(): void;
|
|
118
|
+
/**
|
|
119
|
+
* Registers a Terra Draw event
|
|
120
|
+
*
|
|
121
|
+
* @param event - The name of the event you wish to listen for
|
|
122
|
+
* @param callback - The callback with you wish to be called when this event occurs
|
|
123
|
+
*
|
|
124
|
+
* @alpha
|
|
125
|
+
*/
|
|
126
|
+
on<T extends TerraDrawEvents>(event: T, callback: TerraDrawEventListeners[T]): void;
|
|
127
|
+
/**
|
|
128
|
+
* Unregisters a Terra Draw event
|
|
129
|
+
*
|
|
130
|
+
* @param event - The name of the event you wish to unregister
|
|
131
|
+
* @param callback - The callback you originally provided to the 'on' method
|
|
132
|
+
*
|
|
133
|
+
* @alpha
|
|
134
|
+
*/
|
|
135
|
+
off<T extends TerraDrawEvents>(event: TerraDrawEvents, callback: TerraDrawEventListeners[T]): void;
|
|
136
|
+
}
|
|
137
|
+
declare const TerraDrawExtend: {
|
|
138
|
+
TerraDrawBaseDrawMode: typeof TerraDrawBaseDrawMode;
|
|
139
|
+
TerraDrawBaseAdapter: typeof TerraDrawBaseAdapter;
|
|
140
|
+
};
|
|
141
|
+
export { TerraDraw, TerraDrawSelectMode, TerraDrawPointMode, TerraDrawLineStringMode, TerraDrawGreatCircleMode, TerraDrawPolygonMode, TerraDrawCircleMode, TerraDrawFreehandMode, TerraDrawRenderMode, TerraDrawRectangleMode, TerraDrawGoogleMapsAdapter, TerraDrawMapboxGLAdapter, TerraDrawLeafletAdapter, TerraDrawMapLibreGLAdapter, TerraDrawOpenLayersAdapter, TerraDrawExtend, BehaviorConfig, GeoJSONStoreFeatures, HexColor, TerraDrawMouseEvent, TerraDrawAdapterStyling, TerraDrawKeyboardEvent, TerraDrawChanges, TerraDrawStylingFunction, Project, Unproject, SetCursor, GetLngLatFromEvent, };
|