terra-draw 1.0.0-beta.10 → 1.0.0-beta.11

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.
@@ -1,4 +1,5 @@
1
1
  import { TerraDrawMouseEvent, TerraDrawAdapterStyling, TerraDrawKeyboardEvent, HexColorStyling, NumericStyling, Cursor } from "../../common";
2
+ import { Position } from "geojson";
2
3
  import { BaseModeOptions, CustomStyling, TerraDrawBaseDrawMode } from "../base.mode";
3
4
  import { BehaviorConfig } from "../base.behavior";
4
5
  import { GeoJSONStoreFeatures, StoreValidation } from "../../store/store";
@@ -26,10 +27,12 @@ interface InertCoordinates {
26
27
  strategy: "amount";
27
28
  value: number;
28
29
  }
30
+ interface Snapping {
31
+ toCoordinate?: boolean;
32
+ toCustom?: (event: TerraDrawMouseEvent) => Position | undefined;
33
+ }
29
34
  interface TerraDrawLineStringModeOptions<T extends CustomStyling> extends BaseModeOptions<T> {
30
- snapping?: {
31
- toCoordinate?: boolean;
32
- };
35
+ snapping?: Snapping;
33
36
  pointerDistance?: number;
34
37
  keyEvents?: TerraDrawLineStringModeKeyEvents | null;
35
38
  cursors?: Cursors;
@@ -41,7 +44,7 @@ export declare class TerraDrawLineStringMode extends TerraDrawBaseDrawMode<LineS
41
44
  private currentId;
42
45
  private closingPointId;
43
46
  private keyEvents;
44
- private snappingEnabled;
47
+ private snapping;
45
48
  private cursors;
46
49
  private mouseMove;
47
50
  private insertCoordinates;
@@ -81,5 +84,6 @@ export declare class TerraDrawLineStringMode extends TerraDrawBaseDrawMode<LineS
81
84
  /** @internal */
82
85
  styleFeature(feature: GeoJSONStoreFeatures): TerraDrawAdapterStyling;
83
86
  validateFeature(feature: unknown): StoreValidation;
87
+ private snapCoordinate;
84
88
  }
85
89
  export {};
@@ -1,4 +1,5 @@
1
1
  import { TerraDrawMouseEvent, TerraDrawAdapterStyling, TerraDrawKeyboardEvent, HexColorStyling, NumericStyling, Cursor } from "../../common";
2
+ import { Position } from "geojson";
2
3
  import { TerraDrawBaseDrawMode, BaseModeOptions, CustomStyling } from "../base.mode";
3
4
  import { BehaviorConfig } from "../base.behavior";
4
5
  import { GeoJSONStoreFeatures, StoreValidation } from "../../store/store";
@@ -24,11 +25,13 @@ interface Cursors {
24
25
  start?: Cursor;
25
26
  close?: Cursor;
26
27
  }
28
+ interface Snapping {
29
+ toLine?: boolean;
30
+ toCoordinate?: boolean;
31
+ toCustom?: (event: TerraDrawMouseEvent) => Position | undefined;
32
+ }
27
33
  interface TerraDrawPolygonModeOptions<T extends CustomStyling> extends BaseModeOptions<T> {
28
- snapping?: {
29
- toLine?: boolean;
30
- toCoordinate?: boolean;
31
- };
34
+ snapping?: Snapping;
32
35
  pointerDistance?: number;
33
36
  keyEvents?: TerraDrawPolygonModeKeyEvents | null;
34
37
  cursors?: Cursors;
@@ -38,7 +41,7 @@ export declare class TerraDrawPolygonMode extends TerraDrawBaseDrawMode<PolygonS
38
41
  private currentCoordinate;
39
42
  private currentId;
40
43
  private keyEvents;
41
- private snappingEnabled;
44
+ private snapping;
42
45
  private snappedPointId;
43
46
  private lineSnapping;
44
47
  private coordinateSnapping;