leaflet-polydraw 0.9.3 → 0.9.5

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.
Files changed (36) hide show
  1. package/README.md +32 -26
  2. package/dist/leaflet-polydraw.css +1 -1
  3. package/dist/polydraw.es.js +15855 -15594
  4. package/dist/polydraw.es.js.map +1 -1
  5. package/dist/polydraw.umd.min.js +1 -1
  6. package/dist/polydraw.umd.min.js.map +1 -1
  7. package/dist/styles/polydraw.css +58 -0
  8. package/dist/types/constants.d.ts +67 -0
  9. package/dist/types/constants.d.ts.map +1 -0
  10. package/dist/types/coordinate-utils.d.ts +2 -2
  11. package/dist/types/coordinate-utils.d.ts.map +1 -1
  12. package/dist/types/geojson-helpers.d.ts +92 -0
  13. package/dist/types/geojson-helpers.d.ts.map +1 -0
  14. package/dist/types/geometry-utils.d.ts +6 -0
  15. package/dist/types/geometry-utils.d.ts.map +1 -1
  16. package/dist/types/managers/polygon-draw-manager.d.ts.map +1 -1
  17. package/dist/types/managers/polygon-geometry-manager.d.ts +0 -8
  18. package/dist/types/managers/polygon-geometry-manager.d.ts.map +1 -1
  19. package/dist/types/managers/polygon-interaction-manager.d.ts +1 -7
  20. package/dist/types/managers/polygon-interaction-manager.d.ts.map +1 -1
  21. package/dist/types/managers/polygon-mutation-manager.d.ts +15 -3
  22. package/dist/types/managers/polygon-mutation-manager.d.ts.map +1 -1
  23. package/dist/types/polydraw.d.ts +5 -0
  24. package/dist/types/polydraw.d.ts.map +1 -1
  25. package/dist/types/polygon-helpers.d.ts +1 -1
  26. package/dist/types/polygon-helpers.d.ts.map +1 -1
  27. package/dist/types/polygon-information.service.d.ts +1 -2
  28. package/dist/types/polygon-information.service.d.ts.map +1 -1
  29. package/dist/types/polygon.util.d.ts.map +1 -1
  30. package/dist/types/turf-helper.d.ts +22 -31
  31. package/dist/types/turf-helper.d.ts.map +1 -1
  32. package/dist/types/types/polydraw-interfaces.d.ts +3 -6
  33. package/dist/types/types/polydraw-interfaces.d.ts.map +1 -1
  34. package/dist/types/utils.d.ts +1 -0
  35. package/dist/types/utils.d.ts.map +1 -1
  36. package/package.json +34 -8
@@ -391,3 +391,61 @@ body {
391
391
  .info-popup .leaflet-popup-close-button {
392
392
  color: white !important;
393
393
  }
394
+
395
+ /* Firefox Android button fix - ensure draw mode buttons remain responsive */
396
+ .leaflet-control.leaflet-bar {
397
+ position: relative;
398
+ z-index: 1000;
399
+ pointer-events: auto !important;
400
+ }
401
+
402
+ .leaflet-control.leaflet-bar a {
403
+ pointer-events: auto !important;
404
+ touch-action: manipulation;
405
+ -webkit-touch-callout: none;
406
+ -webkit-user-select: none;
407
+ -moz-user-select: none;
408
+ -ms-user-select: none;
409
+ user-select: none;
410
+ }
411
+
412
+ /* Firefox-specific fixes for touch event handling */
413
+ @-moz-document url-prefix() {
414
+ .leaflet-control.leaflet-bar {
415
+ position: relative !important;
416
+ z-index: 2000 !important;
417
+ pointer-events: auto !important;
418
+ isolation: isolate;
419
+ }
420
+
421
+ .leaflet-control.leaflet-bar a {
422
+ pointer-events: auto !important;
423
+ touch-action: manipulation !important;
424
+ position: relative;
425
+ z-index: 1;
426
+ }
427
+
428
+ .sub-buttons {
429
+ pointer-events: auto !important;
430
+ position: relative;
431
+ z-index: 1;
432
+ }
433
+
434
+ .sub-buttons a {
435
+ pointer-events: auto !important;
436
+ touch-action: manipulation !important;
437
+ position: relative;
438
+ z-index: 1;
439
+ }
440
+ }
441
+
442
+ /* Additional mobile-specific fixes */
443
+ @media (max-width: 768px) {
444
+ .leaflet-control.leaflet-bar a {
445
+ min-height: 44px;
446
+ min-width: 44px;
447
+ display: flex;
448
+ align-items: center;
449
+ justify-content: center;
450
+ }
451
+ }
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Application constants organized by category
3
+ * Centralized location for all hardcoded values used throughout the application
4
+ */
5
+ /**
6
+ * Earth radius values for distance and area calculations
7
+ */
8
+ export declare const EARTH_RADIUS: {
9
+ /**
10
+ * Mean radius in meters - good enough for this tool's precision requirements
11
+ * Used for distance calculations and area conversions
12
+ */
13
+ readonly MEAN_METERS: 6371000;
14
+ /** Mean radius in kilometers */
15
+ readonly MEAN_KILOMETERS: 6371;
16
+ /** Mean radius in miles */
17
+ readonly MEAN_MILES: 3959;
18
+ };
19
+ /**
20
+ * Mathematical conversion factors and common values
21
+ */
22
+ export declare const MATH: {
23
+ /** Degrees to radians conversion factor */
24
+ readonly DEG_TO_RAD: number;
25
+ /** Radians to degrees conversion factor */
26
+ readonly RAD_TO_DEG: number;
27
+ /** Full circle in degrees */
28
+ readonly FULL_CIRCLE_DEGREES: 360;
29
+ /** Full circle in radians */
30
+ readonly FULL_CIRCLE_RADIANS: number;
31
+ };
32
+ /**
33
+ * Precision values for coordinate comparisons and geometric calculations
34
+ */
35
+ export declare const PRECISION: {
36
+ /** Default decimal places for coordinate precision */
37
+ readonly COORDINATE_DECIMAL_PLACES: 6;
38
+ /** Tolerance for floating point coordinate comparisons */
39
+ readonly COORDINATE_TOLERANCE: 0.000001;
40
+ /** Tolerance for area calculations (square meters) */
41
+ readonly AREA_TOLERANCE: 0.01;
42
+ /** Tolerance for distance calculations (meters) */
43
+ readonly DISTANCE_TOLERANCE: 0.01;
44
+ };
45
+ /**
46
+ * Default values for geometric operations
47
+ */
48
+ export declare const GEOMETRY_DEFAULTS: {
49
+ /** Default simplification tolerance for polygon simplification */
50
+ readonly SIMPLIFY_TOLERANCE: 0.01;
51
+ /** Minimum number of points required for a valid polygon */
52
+ readonly MIN_POLYGON_POINTS: 3;
53
+ /** Default buffer distance for polygon operations (meters) */
54
+ readonly DEFAULT_BUFFER_DISTANCE: 10;
55
+ };
56
+ /**
57
+ * Supported unit types for various calculations
58
+ */
59
+ export declare const UNITS: {
60
+ readonly DISTANCE: readonly ["kilometers", "miles", "meters"];
61
+ readonly AREA: readonly ["square-meters", "square-kilometers", "hectares", "acres"];
62
+ };
63
+ /** Type for supported distance units */
64
+ export type DistanceUnit = (typeof UNITS.DISTANCE)[number];
65
+ /** Type for supported area units */
66
+ export type AreaUnit = (typeof UNITS.AREA)[number];
67
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB;;;OAGG;;IAGH,gCAAgC;;IAGhC,2BAA2B;;CAOnB,CAAC;AAMX;;GAEG;AACH,eAAO,MAAM,IAAI;IACf,2CAA2C;;IAG3C,2CAA2C;;IAG3C,6BAA6B;;IAG7B,6BAA6B;;CAErB,CAAC;AAMX;;GAEG;AACH,eAAO,MAAM,SAAS;IACpB,sDAAsD;;IAGtD,0DAA0D;;IAG1D,sDAAsD;;IAGtD,mDAAmD;;CAE3C,CAAC;AAMX;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B,kEAAkE;;IAGlE,4DAA4D;;IAG5D,8DAA8D;;CAEtD,CAAC;AAMX;;GAEG;AACH,eAAO,MAAM,KAAK;;;CAGR,CAAC;AAMX,wCAAwC;AACxC,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,oCAAoC;AACpC,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -8,11 +8,11 @@ export declare class CoordinateUtils {
8
8
  /**
9
9
  * Convert coordinate arrays to proper format for polygon creation
10
10
  */
11
- static convertToCoords(latlngs: L.LatLngLiteral[][], turfHelper: TurfHelper): any[];
11
+ static convertToCoords(latlngs: L.LatLngLiteral[][], turfHelper: TurfHelper): number[][][];
12
12
  /**
13
13
  * Apply offset to polygon coordinates
14
14
  */
15
- static offsetPolygonCoordinates(latLngs: any, offsetLat: number, offsetLng: number): any;
15
+ static offsetPolygonCoordinates(latLngs: L.LatLngLiteral[][], offsetLat: number, offsetLng: number): L.LatLngLiteral[][];
16
16
  /**
17
17
  * Get latitude/longitude information string
18
18
  */
@@ -1 +1 @@
1
- {"version":3,"file":"coordinate-utils.d.ts","sourceRoot":"","sources":["../../src/coordinate-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,qBAAa,eAAe;IAC1B;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,GAAG,GAAG,EAAE;IAiDnF;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG;IAIxF;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,aAAa,GAAG,MAAM;CAsB5D"}
1
+ {"version":3,"file":"coordinate-utils.d.ts","sourceRoot":"","sources":["../../src/coordinate-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,qBAAa,eAAe;IAC1B;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,EAAE,EAAE,EAAE;IAiD1F;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAC7B,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAC5B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,CAAC,CAAC,aAAa,EAAE,EAAE;IAItB;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,aAAa,GAAG,MAAM;CAsB5D"}
@@ -0,0 +1,92 @@
1
+ import type { Feature, Polygon, MultiPolygon, Point, LineString, FeatureCollection, Position } from 'geojson';
2
+ /**
3
+ * Coordinate type - array of [longitude, latitude]
4
+ */
5
+ export type Coord = [number, number];
6
+ /**
7
+ * Creates a GeoJSON Point feature
8
+ * @param coordinates - [longitude, latitude] coordinate pair
9
+ * @param properties - Optional properties object
10
+ * @returns GeoJSON Point feature
11
+ */
12
+ export declare function point(coordinates: Position, properties?: Record<string, any>): Feature<Point>;
13
+ /**
14
+ * Creates a GeoJSON LineString feature
15
+ * @param coordinates - Array of [longitude, latitude] coordinate pairs
16
+ * @param properties - Optional properties object
17
+ * @returns GeoJSON LineString feature
18
+ */
19
+ export declare function lineString(coordinates: Position[], properties?: Record<string, any>): Feature<LineString>;
20
+ /**
21
+ * Creates a GeoJSON Polygon feature
22
+ * @param coordinates - Array of linear rings (first is exterior, rest are holes)
23
+ * @param properties - Optional properties object
24
+ * @returns GeoJSON Polygon feature
25
+ */
26
+ export declare function polygon(coordinates: Position[][], properties?: Record<string, any>): Feature<Polygon>;
27
+ /**
28
+ * Creates a GeoJSON MultiPolygon feature
29
+ * @param coordinates - Array of polygon coordinate arrays
30
+ * @param properties - Optional properties object
31
+ * @returns GeoJSON MultiPolygon feature
32
+ */
33
+ export declare function multiPolygon(coordinates: Position[][][], properties?: Record<string, any>): Feature<MultiPolygon>;
34
+ /**
35
+ * Creates a GeoJSON FeatureCollection
36
+ * @param features - Array of GeoJSON features
37
+ * @returns GeoJSON FeatureCollection
38
+ */
39
+ export declare function featureCollection(features: Feature[]): FeatureCollection;
40
+ /**
41
+ * Extracts coordinates from a GeoJSON feature
42
+ * Replaces @turf/invariant getCoords function
43
+ * @param feature - GeoJSON feature
44
+ * @returns Coordinate array(s)
45
+ */
46
+ export declare function getCoords(feature: Feature<Polygon | MultiPolygon>): Position[][][];
47
+ /**
48
+ * Calculates the bounding box of a geometry
49
+ * Replaces @turf/bbox function
50
+ * @param feature - GeoJSON feature
51
+ * @returns [minX, minY, maxX, maxY] bounding box
52
+ */
53
+ export declare function bbox(feature: Feature<any>): [number, number, number, number];
54
+ /**
55
+ * Creates a polygon from a bounding box
56
+ * Replaces @turf/bbox-polygon function
57
+ * @param bbox - [minX, minY, maxX, maxY] bounding box
58
+ * @returns GeoJSON Polygon feature
59
+ */
60
+ export declare function bboxPolygon(bboxCoords: [number, number, number, number]): Feature<Polygon>;
61
+ /**
62
+ * Calculates the distance between two points using the Haversine formula
63
+ * Replaces @turf/distance function
64
+ * @param from - Starting point [lng, lat] or Point feature
65
+ * @param to - Ending point [lng, lat] or Point feature
66
+ * @param units - Distance units (default: 'kilometers')
67
+ * @returns Distance in specified units
68
+ */
69
+ export declare function distance(from: Position | Feature<Point>, to: Position | Feature<Point>, units?: 'kilometers' | 'miles' | 'meters'): number;
70
+ /**
71
+ * Calculates the midpoint between two points
72
+ * Replaces @turf/midpoint function
73
+ * @param point1 - First point [lng, lat] or Point feature
74
+ * @param point2 - Second point [lng, lat] or Point feature
75
+ * @returns Midpoint as Point feature
76
+ */
77
+ export declare function midpoint(point1: Position | Feature<Point>, point2: Position | Feature<Point>): Feature<Point>;
78
+ /**
79
+ * Calculates the area of a polygon using the Shoelace formula
80
+ * Replaces @turf/area function
81
+ * @param feature - Polygon or MultiPolygon feature
82
+ * @returns Area in square meters
83
+ */
84
+ export declare function area(feature: Feature<Polygon | MultiPolygon>): number;
85
+ /**
86
+ * Calculates the centroid of a polygon
87
+ * Replaces @turf/centroid function
88
+ * @param feature - Polygon or MultiPolygon feature
89
+ * @returns Centroid as Point feature
90
+ */
91
+ export declare function centroid(feature: Feature<Polygon | MultiPolygon>): Feature<Point>;
92
+ //# sourceMappingURL=geojson-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geojson-helpers.d.ts","sourceRoot":"","sources":["../../src/geojson-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,OAAO,EACP,YAAY,EACZ,KAAK,EACL,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACT,MAAM,SAAS,CAAC;AAGjB;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAErC;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CASjG;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,WAAW,EAAE,QAAQ,EAAE,EACvB,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GACnC,OAAO,CAAC,UAAU,CAAC,CASrB;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CACrB,WAAW,EAAE,QAAQ,EAAE,EAAE,EACzB,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GACnC,OAAO,CAAC,OAAO,CAAC,CASlB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,EAC3B,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GACnC,OAAO,CAAC,YAAY,CAAC,CASvB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAKxE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,QAAQ,EAAE,EAAE,EAAE,CAOlF;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAoB5E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAW1F;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,EAC/B,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,EAC7B,KAAK,GAAE,YAAY,GAAG,OAAO,GAAG,QAAuB,GACtD,MAAM,CAsBR;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CACtB,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,EACjC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAChC,OAAO,CAAC,KAAK,CAAC,CAWhB;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,MAAM,CAerE;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAiBjF"}
@@ -18,6 +18,12 @@ export declare class GeometryUtils {
18
18
  static calculateDistance(p1: L.LatLngLiteral, p2: L.LatLngLiteral): number;
19
19
  /**
20
20
  * Apply offset to polygon coordinates
21
+ * Note: Uses 'any' type for recursive coordinate structures that can be:
22
+ * - L.LatLngLiteral (single coordinate)
23
+ * - L.LatLngLiteral[] (array of coordinates)
24
+ * - L.LatLngLiteral[][] (polygon with holes)
25
+ * - L.LatLngLiteral[][][] (multipolygon)
26
+ * This is a legitimate use of 'any' for dynamic recursive data structures.
21
27
  */
22
28
  static offsetPolygonCoordinates(latLngs: any, offsetLat: number, offsetLng: number): any;
23
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"geometry-utils.d.ts","sourceRoot":"","sources":["../../src/geometry-utils.ts"],"names":[],"mappings":"AAMA,qBAAa,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,GAAG,MAAM;IAc5F;;OAEG;IACH,MAAM,CAAC,yBAAyB,CAC9B,EAAE,EAAE,CAAC,CAAC,aAAa,EACnB,KAAK,EAAE,CAAC,CAAC,aAAa,EACtB,EAAE,EAAE,CAAC,CAAC,aAAa,GAClB,MAAM;IA8BT;;;OAGG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAMrE;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,GAAG,MAAM;IAM1E;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG;CAqBzF"}
1
+ {"version":3,"file":"geometry-utils.d.ts","sourceRoot":"","sources":["../../src/geometry-utils.ts"],"names":[],"mappings":"AAMA,qBAAa,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,GAAG,MAAM;IAc5F;;OAEG;IACH,MAAM,CAAC,yBAAyB,CAC9B,EAAE,EAAE,CAAC,CAAC,aAAa,EACnB,KAAK,EAAE,CAAC,CAAC,aAAa,EACtB,EAAE,EAAE,CAAC,CAAC,aAAa,GAClB,MAAM;IA8BT;;;OAGG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAMrE;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,GAAG,MAAM;IAM1E;;;;;;;;OAQG;IAEH,MAAM,CAAC,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG;CAuBzF"}
@@ -1 +1 @@
1
- {"version":3,"file":"polygon-draw-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-draw-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,8BAA8B;IAC7C,UAAU,EAAE,UAAU,CAAC;IACvB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;IACX,MAAM,EAAE,cAAc,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,GAAG,CAAQ;IACnB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,MAAM,CAAa;IAG3B,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,sBAAsB,CAA+C;gBAEjE,YAAY,EAAE,8BAA8B;IAUxD;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,GAAG,UAAU,GAAG,IAAI;IAaxD;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAyDhF;;OAEG;IACH;;;OAGG;IACI,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAI5C;;OAEG;IACH,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI;IAsIpD;;OAEG;IACH,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,GAAG,IAAI;IAiB/C;;OAEG;IACH,2BAA2B,IAAI,IAAI;IAkEnC;;OAEG;IACH,yBAAyB,IAAI,IAAI;IASjC;;OAEG;IACH,eAAe,IAAI,IAAI;IAMvB;;OAEG;IACH,WAAW,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0C5B;;OAEG;IACH,OAAO,CAAC,eAAe;IA0BvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAiBvB;;OAEG;IACH,aAAa,IAAI,CAAC,CAAC,MAAM,EAAE;IAK3B;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAK/B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAM9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0DxB;;OAEG;IACH,OAAO,CAAC,4BAA4B;CAiDrC"}
1
+ {"version":3,"file":"polygon-draw-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-draw-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,8BAA8B;IAC7C,UAAU,EAAE,UAAU,CAAC;IACvB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;IACX,MAAM,EAAE,cAAc,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,GAAG,CAAQ;IACnB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,MAAM,CAAa;IAG3B,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,sBAAsB,CAA+C;gBAEjE,YAAY,EAAE,8BAA8B;IAUxD;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,GAAG,UAAU,GAAG,IAAI;IAcxD;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAyDhF;;OAEG;IACH;;;OAGG;IACI,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAI5C;;OAEG;IACH,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI;IAsIpD;;OAEG;IACH,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,GAAG,IAAI;IAiB/C;;OAEG;IACH,2BAA2B,IAAI,IAAI;IAoEnC;;OAEG;IACH,yBAAyB,IAAI,IAAI;IASjC;;OAEG;IACH,eAAe,IAAI,IAAI;IAMvB;;OAEG;IACH,WAAW,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0C5B;;OAEG;IACH,OAAO,CAAC,eAAe;IA0BvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAiBvB;;OAEG;IACH,aAAa,IAAI,CAAC,CAAC,MAAM,EAAE;IAK3B;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAK/B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAM9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0DxB;;OAEG;IACH,OAAO,CAAC,4BAA4B;CAiDrC"}
@@ -47,13 +47,5 @@ export declare class PolygonGeometryManager {
47
47
  * Double the elbows of a polygon
48
48
  */
49
49
  doubleElbowsPolygon(polygon: Feature<Polygon | MultiPolygon>): GeometryOperationResult;
50
- /**
51
- * Helper method to get polygon center
52
- */
53
- private getPolygonCenter;
54
- /**
55
- * Helper method to get bounding box from polygon
56
- */
57
- private getBoundingBox;
58
50
  }
59
51
  //# sourceMappingURL=polygon-geometry-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"polygon-geometry-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-geometry-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kCAAkC;IACjD,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,cAAc,CAAC;CACxB;AAED;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAAiB;gBAEnB,YAAY,EAAE,kCAAkC;IAM5D;;OAEG;IACH,wBAAwB,CACtB,QAAQ,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EACzC,QAAQ,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GACxC,OAAO;IAiGV;;OAEG;IACH,aAAa,CACX,QAAQ,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,EAC3C,UAAU,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAC1C,uBAAuB;IAuB1B;;OAEG;IACH,eAAe,CACb,eAAe,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAChD,eAAe,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAC/C,uBAAuB;IAgC1B;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,uBAAuB;IAmElF;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,uBAAuB;IAyFvF;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,uBAAuB;IAiBnF;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,uBAAuB;IAiDtF;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAqDxB;;OAEG;IACH,OAAO,CAAC,cAAc;CAuDvB"}
1
+ {"version":3,"file":"polygon-geometry-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-geometry-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kCAAkC;IACjD,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,cAAc,CAAC;CACxB;AAED;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAAiB;gBAEnB,YAAY,EAAE,kCAAkC;IAM5D;;OAEG;IACH,wBAAwB,CACtB,QAAQ,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EACzC,QAAQ,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GACxC,OAAO;IAiGV;;OAEG;IACH,aAAa,CACX,QAAQ,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,EAC3C,UAAU,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAC1C,uBAAuB;IAyB1B;;OAEG;IACH,eAAe,CACb,eAAe,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EAChD,eAAe,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAC/C,uBAAuB;IAgC1B;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,uBAAuB;IAmElF;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,uBAAuB;IAyFvF;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,uBAAuB;IAiBnF;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,uBAAuB;CAmDvF"}
@@ -38,7 +38,6 @@ export declare class PolygonInteractionManager {
38
38
  private isModifierKeyHeld;
39
39
  private _openMenuPopup;
40
40
  private getFeatureGroups;
41
- private addFeatureGroup;
42
41
  private removeFeatureGroup;
43
42
  constructor(dependencies: PolygonInteractionManagerDependencies, featureGroupAccess: {
44
43
  getFeatureGroups: () => L.FeatureGroup[];
@@ -80,7 +79,6 @@ export declare class PolygonInteractionManager {
80
79
  private onEdgeClick;
81
80
  private highlightEdgeOnHover;
82
81
  private elbowClicked;
83
- private findFeatureGroupForPoly;
84
82
  private markerDrag;
85
83
  private markerDragEnd;
86
84
  private onPolygonMouseMove;
@@ -95,11 +93,6 @@ export declare class PolygonInteractionManager {
95
93
  private handleModifierToggleDuringDrag;
96
94
  private isModifierDragActive;
97
95
  private performModifierSubtract;
98
- /**
99
- * Check if two bounding boxes overlap
100
- */
101
- private boundingBoxesOverlap;
102
- private isDragSubtractModifierKeyPressed;
103
96
  private getEdgeDeletionModifierKey;
104
97
  private isEdgeDeletionModifierKeyPressed;
105
98
  private onMarkerHoverForEdgeDeletion;
@@ -110,6 +103,7 @@ export declare class PolygonInteractionManager {
110
103
  private findAlternativeMarkerPosition;
111
104
  private createDivIcon;
112
105
  private getLatLngInfoString;
106
+ private setMarkerVisibility;
113
107
  private generateMenuMarkerPopup;
114
108
  private getPolygonGeoJSONFromFeatureGroup;
115
109
  private getTotalPolygonPerimeter;
@@ -1 +1 @@
1
- {"version":3,"file":"polygon-interaction-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-interaction-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"polygon-interaction-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-interaction-manager.ts"],"names":[],"mappings":"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"}
@@ -33,14 +33,11 @@ export interface MutationManagerDependencies {
33
33
  */
34
34
  export declare class PolygonMutationManager {
35
35
  private turfHelper;
36
- private polygonInformation;
37
36
  private map;
38
37
  private config;
39
- private modeManager;
40
38
  private eventManager;
41
39
  private getFeatureGroups;
42
40
  private geometryManager;
43
- private drawManager;
44
41
  private interactionManager;
45
42
  constructor(dependencies: MutationManagerDependencies);
46
43
  /**
@@ -91,6 +88,21 @@ export declare class PolygonMutationManager {
91
88
  * Union multiple polygons together using geometry manager
92
89
  */
93
90
  private unionPolygons;
91
+ /**
92
+ * Determine if intelligent merging should be allowed for a polygon
93
+ * This checks if the polygon actually intersects with existing polygons
94
+ */
95
+ private shouldAllowIntelligentMerge;
96
+ /**
97
+ * Check if a polygon is completely inside a hole of an existing polygon
98
+ * This prevents incorrect merging when drawing polygons inside holes
99
+ */
100
+ private isPolygonInsideExistingHole;
101
+ /**
102
+ * Normalize polygon coordinates to handle complex nested structures
103
+ * This fixes the bug where markers are missing when drawing polygons inside holes
104
+ */
105
+ private normalizePolygonCoordinates;
94
106
  /**
95
107
  * Create a polygon from GeoJSON feature
96
108
  */
@@ -1 +1 @@
1
- {"version":3,"file":"polygon-mutation-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-mutation-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"polygon-mutation-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-mutation-manager.ts"],"names":[],"mappings":"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"}
@@ -231,6 +231,11 @@ declare class Polydraw extends L.Control {
231
231
  * Detect if modifier key is pressed (Ctrl on Windows/Linux, Cmd on Mac)
232
232
  */
233
233
  private isModifierKeyPressed;
234
+ /**
235
+ * Ensures all buttons have proper touch responsiveness for Firefox Android
236
+ * @param container - The main control container element
237
+ */
238
+ private ensureButtonTouchResponsiveness;
234
239
  /**
235
240
  * Updates the visual indicator on the activate button to show if there are active polygons.
236
241
  */
@@ -1 +1 @@
1
- {"version":3,"file":"polydraw.d.ts","sourceRoot":"","sources":["../../src/polydraw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"polydraw.d.ts","sourceRoot":"","sources":["../../src/polydraw.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export declare class PolygonInfo {
7
7
  trashcanPoint: L.LatLngLiteral[];
8
8
  sqmArea: number[];
9
9
  perimeter: number[];
10
- constructor(polygon: any);
10
+ constructor(polygon: L.LatLngLiteral[][][] | L.LatLngLiteral[] | L.LatLngLiteral[][]);
11
11
  setSqmArea(area: number): void;
12
12
  private getTrashcanPoint;
13
13
  private calculatePolygonArea;
@@ -1 +1 @@
1
- {"version":3,"file":"polygon-helpers.d.ts","sourceRoot":"","sources":["../../src/polygon-helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAM;IACpC,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAM;IACtC,OAAO,EAAE,MAAM,EAAE,CAAM;IACvB,SAAS,EAAE,MAAM,EAAE,CAAM;gBACb,OAAO,KAAA;IAyDnB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAG9B,OAAO,CAAC,gBAAgB;IAuDxB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,yBAAyB;CAIlC;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;;IAOxB,QAAQ,IAAI,IAAI;IAKhB,KAAK,IAAI,IAAI;IASb,cAAc,IAAI,IAAI;IAKtB,eAAe,CAAC,MAAM,GAAE,OAAe,GAAG,IAAI;IAa9C,WAAW,IAAI,IAAI;IAOnB,mBAAmB,IAAI,IAAI;CAG5B"}
1
+ {"version":3,"file":"polygon-helpers.d.ts","sourceRoot":"","sources":["../../src/polygon-helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAAM;IACpC,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAM;IACtC,OAAO,EAAE,MAAM,EAAE,CAAM;IACvB,SAAS,EAAE,MAAM,EAAE,CAAM;gBACb,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;IA2DpF,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAG9B,OAAO,CAAC,gBAAgB;IAuDxB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,yBAAyB;CAIlC;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,WAAW,EAAE,OAAO,CAAS;IAC7B,cAAc,EAAE,OAAO,CAAS;IAChC,UAAU,EAAE,OAAO,CAAS;IAC5B,SAAS,EAAE,OAAO,CAAS;IAC3B,MAAM,EAAE,OAAO,CAAS;IACxB,WAAW,EAAE,OAAO,CAAS;IAC7B,cAAc,EAAE,OAAO,CAAC;;IAOxB,QAAQ,IAAI,IAAI;IAKhB,KAAK,IAAI,IAAI;IASb,cAAc,IAAI,IAAI;IAKtB,eAAe,CAAC,MAAM,GAAE,OAAe,GAAG,IAAI;IAa9C,WAAW,IAAI,IAAI;IAOnB,mBAAmB,IAAI,IAAI;CAG5B"}
@@ -13,7 +13,6 @@ export declare class PolygonInformationService {
13
13
  onPolygonInfoUpdated(callback: (info: PolygonInfo[]) => void): void;
14
14
  private emitPolygonInfoUpdated;
15
15
  onPolygonDrawStateUpdated(callback: (state: PolygonDrawStates) => void): void;
16
- private emitPolygonDrawStateUpdated;
17
16
  /**
18
17
  * Updates the polygons and notifies the map state service.
19
18
  */
@@ -22,6 +21,6 @@ export declare class PolygonInformationService {
22
21
  deleteTrashcan(polygon: L.LatLngLiteral[][]): void;
23
22
  deleteTrashCanOnMulti(polygon: L.LatLngLiteral[][][]): void;
24
23
  deletePolygonInformationStorage(): void;
25
- createPolygonInformationStorage(arrayOfFeatureGroups: any[]): void;
24
+ createPolygonInformationStorage(arrayOfFeatureGroups: L.FeatureGroup[]): void;
26
25
  }
27
26
  //# sourceMappingURL=polygon-information.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"polygon-information.service.d.ts","sourceRoot":"","sources":["../../src/polygon-information.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B;;GAEG;AACH,qBAAa,yBAAyB;IAMjB,eAAe,EAAE,eAAe;IALnD,OAAO,CAAC,oBAAoB,CAAyC;IACrE,OAAO,CAAC,yBAAyB,CAA8C;IAE/E,yBAAyB,EAAE,WAAW,EAAE,CAAM;gBAE3B,eAAe,EAAE,eAAe;IAEnD,oBAAoB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,IAAI,GAAG,IAAI;IAInE,OAAO,CAAC,sBAAsB;IAM9B,yBAAyB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAI7E,OAAO,CAAC,2BAA2B;IAQnC;;OAEG;IACH,cAAc,IAAI,IAAI;IAqCtB,gBAAgB,IAAI,IAAI;IAKxB,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,GAAG,IAAI;IAQlD,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,GAAG,IAAI;IA0B3D,+BAA+B,IAAI,IAAI;IAIvC,+BAA+B,CAAC,oBAAoB,EAAE,GAAG,EAAE,GAAG,IAAI;CAgBnE"}
1
+ {"version":3,"file":"polygon-information.service.d.ts","sourceRoot":"","sources":["../../src/polygon-information.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B;;GAEG;AACH,qBAAa,yBAAyB;IAMjB,eAAe,EAAE,eAAe;IALnD,OAAO,CAAC,oBAAoB,CAAyC;IACrE,OAAO,CAAC,yBAAyB,CAA8C;IAE/E,yBAAyB,EAAE,WAAW,EAAE,CAAM;gBAE3B,eAAe,EAAE,eAAe;IAEnD,oBAAoB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,IAAI,GAAG,IAAI;IAInE,OAAO,CAAC,sBAAsB;IAM9B,yBAAyB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAM7E;;OAEG;IACH,cAAc,IAAI,IAAI;IAiCtB,gBAAgB,IAAI,IAAI;IAKxB,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,GAAG,IAAI;IAQlD,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,GAAG,IAAI;IA0B3D,+BAA+B,IAAI,IAAI;IAIvC,+BAA+B,CAAC,oBAAoB,EAAE,CAAC,CAAC,YAAY,EAAE,GAAG,IAAI;CAiB9E"}
@@ -1 +1 @@
1
- {"version":3,"file":"polygon.util.d.ts","sourceRoot":"","sources":["../../src/polygon.util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAG7B,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9D;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAiC;IAE1D;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE;IAyB3C;;;;OAIG;IACH,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAInD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAInD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAIlD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAIlD,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAQrD,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAQvD,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAU7D,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa;IAUrF,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,YAAY;IAgB5D;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,aAAa;CAOlF"}
1
+ {"version":3,"file":"polygon.util.d.ts","sourceRoot":"","sources":["../../src/polygon.util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAG7B,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG9D;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAiC;IAE1D;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE;IAwB3C;;;;OAIG;IACH,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAInD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAInD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAIlD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAIlD,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAQrD,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAQvD,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAW7D,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa;IAUrF,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,YAAY;IAgB5D;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,aAAa;CAOlF"}
@@ -1,10 +1,10 @@
1
- import * as turf from '@turf/turf';
1
+ import { type Coord } from './geojson-helpers';
2
2
  import type { Feature, Polygon, MultiPolygon, Position, Point } from 'geojson';
3
3
  import * as L from 'leaflet';
4
4
  export declare class TurfHelper {
5
5
  private config;
6
6
  constructor(config: object);
7
- union(poly1: Feature<Polygon | MultiPolygon>, poly2: Feature<Polygon | MultiPolygon>): Feature<Polygon | MultiPolygon>;
7
+ union(poly1: Feature<Polygon | MultiPolygon>, poly2: Feature<Polygon | MultiPolygon>): Feature<Polygon | MultiPolygon> | null;
8
8
  /**
9
9
  * Create polygon from drawing trace using configured method
10
10
  */
@@ -28,8 +28,8 @@ export declare class TurfHelper {
28
28
  getSimplified(polygon: Feature<Polygon | MultiPolygon>, dynamicTolerance?: boolean): Feature<Polygon | MultiPolygon>;
29
29
  getTurfPolygon(polygon: Feature<Polygon | MultiPolygon>): Feature<Polygon | MultiPolygon>;
30
30
  getMultiPolygon(polygonArray: Position[][][]): Feature<Polygon | MultiPolygon>;
31
- getKinks(feature: Feature<Polygon | MultiPolygon>): any[];
32
- getCoords(feature: Feature<Polygon | MultiPolygon>): any[];
31
+ getKinks(feature: Feature<Polygon | MultiPolygon>): Feature<Polygon | MultiPolygon, import("geojson").GeoJsonProperties>[];
32
+ getCoords(feature: Feature<Polygon | MultiPolygon>): Position[][][];
33
33
  hasKinks(feature: Feature<Polygon | MultiPolygon>): boolean;
34
34
  /**
35
35
  * Get the convex hull of a polygon
@@ -57,7 +57,7 @@ export declare class TurfHelper {
57
57
  * Accepts Feature<Point>, Turf Position [lng, lat], or Leaflet LatLngLiteral.
58
58
  * This normalization prevents noisy console warnings in tests.
59
59
  */
60
- isPointInsidePolygon(point: Feature<Point> | Position | L.LatLngLiteral, polygon: Feature<Polygon | MultiPolygon>): boolean;
60
+ isPointInsidePolygon(pt: Feature<Point> | Position | L.LatLngLiteral, polygon: Feature<Polygon | MultiPolygon>): boolean;
61
61
  /**
62
62
  * Checks if two polygons are equal.
63
63
  * @param polygon1 First polygon.
@@ -68,27 +68,34 @@ export declare class TurfHelper {
68
68
  polygonToMultiPolygon(poly: Feature<Polygon>): Feature<MultiPolygon>;
69
69
  injectPointToPolygon(polygon: Feature<Polygon | MultiPolygon>, point: Position, ringIndex: number): Feature<Polygon | MultiPolygon>;
70
70
  private distanceToLineSegment;
71
- polygonDifference(polygon1: Feature<Polygon | MultiPolygon>, polygon2: Feature<Polygon | MultiPolygon>): Feature<Polygon | MultiPolygon>;
72
- getBoundingBoxCompassPosition(polygon: any, MarkerPosition: any, useOffset: any, offsetDirection: any): any;
73
- getNearestPointIndex(targetPoint: turf.Coord, points: any): number;
71
+ polygonDifference(polygon1: Feature<Polygon | MultiPolygon>, polygon2: Feature<Polygon | MultiPolygon>): Feature<Polygon | MultiPolygon> | null;
72
+ getBoundingBoxCompassPosition(_polygon: any, _MarkerPosition: any, _useOffset: any, _offsetDirection: any): null;
73
+ getNearestPointIndex(targetPoint: Coord, points: any): number;
74
74
  /**
75
- * Convert LatLngLiteral object to Turf.js coordinate array format.
75
+ * Convert LatLngLiteral object to js coordinate array format.
76
76
  *
77
77
  * This method serves as a semantic interface for coordinate conversion,
78
- * ensuring consistent lng/lat order when interfacing with Turf.js functions.
78
+ * ensuring consistent lng/lat order when interfacing with js functions.
79
79
  * While simple, it provides a clear contract and future-proofing for any
80
80
  * coordinate validation or transformation that might be needed later.
81
81
  *
82
82
  * @param point - LatLngLiteral object with lat/lng properties
83
- * @returns Turf.js coordinate array in [lng, lat] format
83
+ * @returns js coordinate array in [lng, lat] format
84
84
  */
85
- getCoord(point: L.LatLngLiteral): turf.Coord;
85
+ getCoord(point: L.LatLngLiteral): Coord;
86
+ /**
87
+ * Create a GeoJSON polygon feature from coordinates.
88
+ * This method provides access to the turf polygon helper function
89
+ * while keeping all turf imports centralized in this file.
90
+ *
91
+ * @param coordinates - Array of coordinate rings (outer ring + holes)
92
+ * @returns GeoJSON Feature<Polygon>
93
+ */
94
+ createPolygon(coordinates: Position[][]): Feature<Polygon>;
86
95
  getFeaturePointCollection(points: L.LatLngLiteral[]): any;
87
96
  getPolygonArea(poly: Feature<Polygon | MultiPolygon>): number;
88
97
  getPolygonPerimeter(poly: Feature<Polygon | MultiPolygon>): number;
89
- getCenterOfMass(feature: Feature<Polygon | MultiPolygon>): Feature<Point, {
90
- [name: string]: any;
91
- }>;
98
+ getCenterOfMass(feature: Feature<Polygon | MultiPolygon>): Feature<Point, import("geojson").GeoJsonProperties>;
92
99
  getDoubleElbowLatLngs(points: L.LatLngLiteral[]): L.LatLngLiteral[];
93
100
  getBezierMultiPolygon(polygonArray: Position[][][]): Feature<Polygon | MultiPolygon>;
94
101
  /**
@@ -127,29 +134,13 @@ export declare class TurfHelper {
127
134
  * Handle complete hole traversal - create solid polygons (cake cutting)
128
135
  */
129
136
  private handleCompleteHoleTraversal;
130
- /**
131
- * Assign holes to a polygon based on containment and intersection analysis
132
- */
133
- private assignHolesToPolygon;
134
- /**
135
- * Analyze the relationship between a hole and a polygon
136
- */
137
- private analyzeHolePolygonRelationship;
138
137
  /**
139
138
  * Subtract intersecting holes from a polygon to create proper "bite" shapes
140
139
  */
141
140
  private subtractIntersectingHoles;
142
- /**
143
- * Calculate the area of a ring using the shoelace formula
144
- */
145
- private calculateRingArea;
146
141
  /**
147
142
  * Remove duplicate vertices from a polygon to prevent turf errors
148
143
  */
149
144
  removeDuplicateVertices(feature: Feature<Polygon | MultiPolygon>): Feature<Polygon | MultiPolygon>;
150
- /**
151
- * Create a "bite" by subtracting the intersected part of the hole from the polygon
152
- */
153
- private createBiteFromHoleIntersection;
154
145
  }
155
146
  //# sourceMappingURL=turf-helper.d.ts.map