terra-draw 1.9.1 → 1.11.0

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.
@@ -21,6 +21,7 @@ import { TerraDrawSectorMode } from "./modes/sector/sector.mode";
21
21
  import { TerraDrawSensorMode } from "./modes/sensor/sensor.mode";
22
22
  import * as TerraDrawExtend from "./extend";
23
23
  import { ValidationReasons } from "./validation-reasons";
24
+ import { TerraDrawFreehandLineStringMode } from "./modes/freehand-linestring/freehand-linestring.mode";
24
25
  type InstanceType<T extends new (...args: any[]) => any> = T extends new (...args: any[]) => infer R ? R : never;
25
26
  type FinishListener = (id: FeatureId, context: OnFinishContext) => void;
26
27
  type ChangeListener = (ids: FeatureId[], type: string, context?: OnChangeContext) => void;
@@ -59,7 +60,9 @@ declare class TerraDraw {
59
60
  private checkEnabled;
60
61
  private getModeStyles;
61
62
  private featuresAtLocation;
63
+ private getSelectModeOrThrow;
62
64
  private getSelectMode;
65
+ private isGuidanceFeature;
63
66
  /**
64
67
  * @deprecated This method is scheduled for removal in the next major version. Instead use the 'updateModeOptions' method passing the
65
68
  * styles property in the options object, and this will dynamically update the styles for the mode.
@@ -161,6 +164,13 @@ declare class TerraDraw {
161
164
  * @returns a boolean determining if the instance has a feature with the given id
162
165
  */
163
166
  hasFeature(id: FeatureId): boolean;
167
+ /**
168
+ * Updates a features geometry. This an be used to programmatically change the coordinates of a feature. This
169
+ * can be useful for if you want to modify a geometry via a button or some similar user interaction.
170
+ * @param id - the id of the feature to update the geometry for
171
+ * @param geometry - the new geometry that will replace the existing geometry
172
+ */
173
+ updateFeatureGeometry(id: FeatureId, geometry: GeoJSONStoreGeometries): void;
164
174
  /**
165
175
  * A method for adding features to the store. This method will validate the features
166
176
  * returning an array of validation results. Features must match one of the modes enabled
@@ -210,4 +220,4 @@ declare class TerraDraw {
210
220
  */
211
221
  off<T extends TerraDrawEvents>(event: TerraDrawEvents, callback: TerraDrawEventListeners[T]): void;
212
222
  }
213
- export { TerraDraw, IdStrategy, TerraDrawEvents, TerraDrawEventListeners, TerraDrawSelectMode, TerraDrawPointMode, TerraDrawLineStringMode, TerraDrawPolygonMode, TerraDrawCircleMode, TerraDrawFreehandMode, TerraDrawRenderMode, TerraDrawRectangleMode, TerraDrawAngledRectangleMode, TerraDrawSectorMode, TerraDrawSensorMode, TerraDrawExtend, BehaviorConfig, GeoJSONStoreFeatures, GeoJSONStoreGeometries, HexColor, TerraDrawMouseEvent, TerraDrawAdapterStyling, TerraDrawKeyboardEvent, TerraDrawChanges, TerraDrawStylingFunction, Project, Unproject, SetCursor, GetLngLatFromEvent, ValidateMinAreaSquareMeters, ValidateMaxAreaSquareMeters, ValidateNotSelfIntersecting, ValidationReasons, };
223
+ export { TerraDraw, IdStrategy, TerraDrawEvents, TerraDrawEventListeners, TerraDrawSelectMode, TerraDrawPointMode, TerraDrawLineStringMode, TerraDrawPolygonMode, TerraDrawCircleMode, TerraDrawFreehandMode, TerraDrawFreehandLineStringMode, TerraDrawRenderMode, TerraDrawRectangleMode, TerraDrawAngledRectangleMode, TerraDrawSectorMode, TerraDrawSensorMode, TerraDrawExtend, BehaviorConfig, GeoJSONStoreFeatures, GeoJSONStoreGeometries, HexColor, TerraDrawMouseEvent, TerraDrawAdapterStyling, TerraDrawKeyboardEvent, TerraDrawChanges, TerraDrawStylingFunction, Project, Unproject, SetCursor, GetLngLatFromEvent, ValidateMinAreaSquareMeters, ValidateMaxAreaSquareMeters, ValidateNotSelfIntersecting, ValidationReasons, };