leaflet-polydraw 1.3.3 → 2.0.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.
Files changed (54) hide show
  1. package/README.md +7 -2
  2. package/dist/icons/icon-donut.svg +5 -0
  3. package/dist/icons/icon-grip-vertical.svg +8 -0
  4. package/dist/icons/icon-layer-toggle.svg +6 -0
  5. package/dist/icons/icon-warning.svg +22 -0
  6. package/dist/leaflet-polydraw.css +1 -1
  7. package/dist/polydraw.es.js +9020 -3261
  8. package/dist/polydraw.es.js.map +1 -1
  9. package/dist/polydraw.umd.min.js +1 -1
  10. package/dist/polydraw.umd.min.js.map +1 -1
  11. package/dist/styles/polydraw.css +414 -0
  12. package/dist/types/buttons.d.ts.map +1 -1
  13. package/dist/types/config.d.ts.map +1 -1
  14. package/dist/types/coordinate-utils.d.ts.map +1 -1
  15. package/dist/types/enums.d.ts +4 -0
  16. package/dist/types/enums.d.ts.map +1 -1
  17. package/dist/types/guards/config-deprecation-guard.d.ts +3 -0
  18. package/dist/types/guards/config-deprecation-guard.d.ts.map +1 -0
  19. package/dist/types/guards/config-runtime-fallback-guard.d.ts +3 -0
  20. package/dist/types/guards/config-runtime-fallback-guard.d.ts.map +1 -0
  21. package/dist/types/index.d.ts +1 -1
  22. package/dist/types/managers/event-manager.d.ts +46 -0
  23. package/dist/types/managers/event-manager.d.ts.map +1 -1
  24. package/dist/types/managers/history-manager.d.ts +16 -3
  25. package/dist/types/managers/history-manager.d.ts.map +1 -1
  26. package/dist/types/managers/layer-manager.d.ts +92 -0
  27. package/dist/types/managers/layer-manager.d.ts.map +1 -0
  28. package/dist/types/managers/polygon-draw-manager.d.ts +2 -0
  29. package/dist/types/managers/polygon-draw-manager.d.ts.map +1 -1
  30. package/dist/types/managers/polygon-geometry-manager.d.ts +3 -0
  31. package/dist/types/managers/polygon-geometry-manager.d.ts.map +1 -1
  32. package/dist/types/managers/polygon-interaction-manager.d.ts +57 -0
  33. package/dist/types/managers/polygon-interaction-manager.d.ts.map +1 -1
  34. package/dist/types/managers/polygon-mutation-manager.d.ts +39 -2
  35. package/dist/types/managers/polygon-mutation-manager.d.ts.map +1 -1
  36. package/dist/types/polydraw.d.ts +194 -9
  37. package/dist/types/polydraw.d.ts.map +1 -1
  38. package/dist/types/popup-factory.d.ts.map +1 -1
  39. package/dist/types/styles/dynamic-styles.d.ts.map +1 -1
  40. package/dist/types/transform/donut-validation.d.ts +16 -0
  41. package/dist/types/transform/donut-validation.d.ts.map +1 -0
  42. package/dist/types/transform/polygon-transform-controller.d.ts +11 -1
  43. package/dist/types/transform/polygon-transform-controller.d.ts.map +1 -1
  44. package/dist/types/transform/transform-overlay.d.ts +8 -1
  45. package/dist/types/transform/transform-overlay.d.ts.map +1 -1
  46. package/dist/types/turf-helper.d.ts +5 -2
  47. package/dist/types/turf-helper.d.ts.map +1 -1
  48. package/dist/types/types/polydraw-interfaces.d.ts +257 -114
  49. package/dist/types/types/polydraw-interfaces.d.ts.map +1 -1
  50. package/dist/types/ui/layer-panel.d.ts +13 -0
  51. package/dist/types/ui/layer-panel.d.ts.map +1 -0
  52. package/dist/types/utils/metadata-clone.util.d.ts +2 -0
  53. package/dist/types/utils/metadata-clone.util.d.ts.map +1 -0
  54. package/package.json +10 -4
@@ -0,0 +1,92 @@
1
+ import * as L from 'leaflet';
2
+ import type { EventManager } from './event-manager';
3
+ import type { LayerSnapshot, LayerInteraction, LayerPanelVisibility } from '../types/polydraw-interfaces';
4
+ export interface LayerState {
5
+ id: string;
6
+ label?: string;
7
+ color: string;
8
+ visible: boolean;
9
+ interaction: LayerInteraction;
10
+ panel: LayerPanelVisibility;
11
+ metadata: Record<string, unknown>;
12
+ featureGroups: L.FeatureGroup[];
13
+ }
14
+ export interface LayerCreateOptions {
15
+ label?: string;
16
+ color?: string;
17
+ visible?: boolean;
18
+ interaction?: LayerInteraction;
19
+ panel?: LayerPanelVisibility;
20
+ metadata?: Record<string, unknown>;
21
+ }
22
+ export type SetActiveLayerResult = 'activated' | 'already-active' | 'not-found' | 'not-visible';
23
+ /**
24
+ * Manages polygon layers and feature-group assignments.
25
+ * Keeps a default layer and supports active-layer scoping for interactions.
26
+ */
27
+ export declare class LayerManager {
28
+ private readonly eventManager;
29
+ private layers;
30
+ private featureGroupToLayer;
31
+ private activeLayerId;
32
+ private defaultColor;
33
+ constructor(eventManager: EventManager, defaultColor: string);
34
+ getLayerCount(): number;
35
+ getAllLayers(): LayerState[];
36
+ getPanelLayers(): LayerState[];
37
+ getPanelLayerCount(): number;
38
+ getLayer(layerId: string): LayerState | undefined;
39
+ getActiveLayerId(): string;
40
+ getActiveLayer(): LayerState | undefined;
41
+ getOrCreateLayer(layerId: string, colorOrOptions?: string | LayerCreateOptions): LayerState;
42
+ setActiveLayer(layerId: string): boolean;
43
+ setActiveLayerWithResult(layerId: string): SetActiveLayerResult;
44
+ setLayerVisibility(layerId: string, visible: boolean): boolean;
45
+ setLayerColor(layerId: string, color: string): boolean;
46
+ setLayerLabel(layerId: string, label?: string): boolean;
47
+ setLayerInteraction(layerId: string, interaction: LayerInteraction): boolean;
48
+ setLayerPanelVisibility(layerId: string, panel: LayerPanelVisibility): boolean;
49
+ setLayerMetadata(layerId: string, metadata?: Record<string, unknown>): boolean;
50
+ isLayerEditable(layerId: string): boolean;
51
+ isFeatureGroupEditable(featureGroup: L.FeatureGroup): boolean;
52
+ /**
53
+ * Reorder layers by moving layerId to the drop index of targetLayerId.
54
+ * This mirrors list drag/drop behavior used in the layer panel.
55
+ */
56
+ moveLayer(layerId: string, targetLayerId: string): boolean;
57
+ assignFeatureGroupToLayer(featureGroup: L.FeatureGroup, layerId: string): boolean;
58
+ removeFeatureGroupFromLayer(featureGroup: L.FeatureGroup): void;
59
+ getLayerForFeatureGroup(featureGroup: L.FeatureGroup): string | undefined;
60
+ getFeatureGroupsForLayer(layerId: string): L.FeatureGroup[];
61
+ isInActiveLayer(featureGroup: L.FeatureGroup): boolean;
62
+ deleteLayer(layerId: string): L.FeatureGroup[];
63
+ /**
64
+ * Moves a layer to a specific 0-based position in the full layer order.
65
+ * The default layer always occupies index 0; the minimum valid target for
66
+ * non-default layers is 1. The index is clamped to the valid range.
67
+ */
68
+ moveLayerToIndex(layerId: string, index: number): boolean;
69
+ /**
70
+ * Sets the full layer order by providing an ordered list of layer IDs.
71
+ * The default layer always stays first. Any layers not included in the
72
+ * list are appended after the specified layers in their current relative order.
73
+ * Returns false if any specified ID does not exist or equals 'default'.
74
+ */
75
+ setLayerOrder(layerIds: string[]): boolean;
76
+ clear(defaultColor?: string): void;
77
+ captureLayerSnapshot(featureGroups: L.FeatureGroup[]): LayerSnapshot;
78
+ restoreFromLayerSnapshot(snapshot: LayerSnapshot, featureGroups: L.FeatureGroup[]): void;
79
+ private ensureDefaultLayer;
80
+ private getFirstVisibleLayerId;
81
+ private normalizeLayerId;
82
+ private cloneLayerState;
83
+ private normalizeInteraction;
84
+ private normalizePanel;
85
+ private cloneMetadata;
86
+ /**
87
+ * Normalize hex colors to "#rrggbb".
88
+ * Accepts "f00", "#f00", "ff0000", "#ff0000". Returns fallback when invalid.
89
+ */
90
+ static normalizeColor(input: string, fallback?: string): string;
91
+ }
92
+ //# sourceMappingURL=layer-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layer-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/layer-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AAGtC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,KAAK,EAAE,oBAAoB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,gBAAgB,GAAG,WAAW,GAAG,aAAa,CAAC;AAEhG;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,mBAAmB,CAAyC;IACpE,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,YAAY,CAAS;gBAEjB,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM;IAM5D,aAAa,IAAI,MAAM;IAIvB,YAAY,IAAI,UAAU,EAAE;IAI5B,cAAc,IAAI,UAAU,EAAE;IAI9B,kBAAkB,IAAI,MAAM;IAU5B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAKjD,gBAAgB,IAAI,MAAM;IAI1B,cAAc,IAAI,UAAU,GAAG,SAAS;IAIxC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,UAAU;IA8B3F,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB;IAsB/D,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO;IAuB9D,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IA4BtD,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO;IAgBvD,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,GAAG,OAAO;IAa5E,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO;IAa9E,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO;IAS9E,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAQzC,sBAAsB,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,GAAG,OAAO;IAe7D;;;OAGG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO;IAwC1D,yBAAyB,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAgCjF,2BAA2B,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,GAAG,IAAI;IAmB/D,uBAAuB,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,GAAG,MAAM,GAAG,SAAS;IAezE,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,YAAY,EAAE;IAK3D,eAAe,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,GAAG,OAAO;IAQtD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,YAAY,EAAE;IAiC9C;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAmCzD;;;;;OAKG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO;IA8C1C,KAAK,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAUlC,oBAAoB,CAAC,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,GAAG,aAAa;IAuBpE,wBAAwB,CAAC,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,GAAG,IAAI;IAwExF,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAOrB;;;OAGG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,SAAY,GAAG,MAAM;CAcnE"}
@@ -117,6 +117,8 @@ export declare class PolygonDrawManager {
117
117
  * Refresh the first-marker ready state when draw mode changes.
118
118
  */
119
119
  refreshP2PMarkerState(): void;
120
+ private applyP2PMarkerMode;
121
+ private updateP2PMarkerModes;
120
122
  /**
121
123
  * Handle marker hover for edge deletion feedback
122
124
  */
@@ -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;AAI5C,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,OAAO,CAAC,4BAA4B;IAapC;;OAEG;IACH,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI;IA+IpD;;OAEG;IACH,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,GAAG,IAAI;IAoB/C;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAgBxC;;OAEG;IACH,2BAA2B,IAAI,IAAI;IAoEnC;;OAEG;IACH,yBAAyB,IAAI,IAAI;IASjC;;OAEG;IACH,eAAe,IAAI,IAAI;IASvB;;OAEG;IACH,WAAW,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwB5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,eAAe;IA+BvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAmBvB;;OAEG;IACH,aAAa,IAAI,CAAC,CAAC,MAAM,EAAE;IAK3B;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAM/B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAM9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAyDxB;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAqBnC;;OAEG;IACI,qBAAqB,IAAI,IAAI;IAKpC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA8CpC,OAAO,CAAC,2BAA2B;CAepC"}
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;AAI5C,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,OAAO,CAAC,4BAA4B;IAapC;;OAEG;IACH,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI;IAuJpD;;OAEG;IACH,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,GAAG,IAAI;IAoB/C;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAgBxC;;OAEG;IACH,2BAA2B,IAAI,IAAI;IAoEnC;;OAEG;IACH,yBAAyB,IAAI,IAAI;IASjC;;OAEG;IACH,eAAe,IAAI,IAAI;IAavB;;OAEG;IACH,WAAW,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwB5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,eAAe;IA+BvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAuBvB;;OAEG;IACH,aAAa,IAAI,CAAC,CAAC,MAAM,EAAE;IAK3B;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAM/B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAM9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0DxB;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAqBnC;;OAEG;IACI,qBAAqB,IAAI,IAAI;IAMpC,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA8CpC,OAAO,CAAC,2BAA2B;CAepC"}
@@ -6,6 +6,9 @@ export interface GeometryOperationResult {
6
6
  result?: Feature<Polygon | MultiPolygon>;
7
7
  results?: Feature<Polygon | MultiPolygon>[];
8
8
  error?: string;
9
+ allowMerge?: boolean;
10
+ simplify?: boolean;
11
+ metadata?: Record<string, unknown>;
9
12
  }
10
13
  export interface PolygonGeometryManagerDependencies {
11
14
  turfHelper: TurfHelper;
@@ -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;IAyGV,OAAO,CAAC,mBAAmB;IA6B3B;;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;IAkGvF;;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"}
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;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;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;IAyGV,OAAO,CAAC,mBAAmB;IA6B3B;;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;IAkGvF;;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"}
@@ -5,6 +5,7 @@ import type { Feature, Polygon, MultiPolygon } from 'geojson';
5
5
  import type { PolydrawConfig, PolydrawPolygon, HistoryAction } from '../types/polydraw-interfaces';
6
6
  import { ModeManager } from './mode-manager';
7
7
  import { EventManager } from './event-manager';
8
+ import type { LayerManager } from './layer-manager';
8
9
  export interface InteractionResult {
9
10
  success: boolean;
10
11
  featureGroups?: L.FeatureGroup[];
@@ -18,6 +19,7 @@ export interface PolygonInteractionManagerDependencies {
18
19
  modeManager: ModeManager;
19
20
  eventManager: EventManager;
20
21
  saveHistoryState?: (action: HistoryAction) => void;
22
+ layerManager?: LayerManager;
21
23
  }
22
24
  /**
23
25
  * PolygonInteractionManager handles all interactions with existing polygons.
@@ -25,6 +27,7 @@ export interface PolygonInteractionManagerDependencies {
25
27
  */
26
28
  export declare class PolygonInteractionManager {
27
29
  private markerFeatureGroupMap;
30
+ private polygonFeatureGroupMap;
28
31
  private markerModifierHandlers;
29
32
  private markerTouchListeners;
30
33
  private markerEdgeDeletionListeners;
@@ -37,6 +40,7 @@ export declare class PolygonInteractionManager {
37
40
  private modeManager;
38
41
  private eventManager;
39
42
  private saveHistoryState?;
43
+ private layerManager?;
40
44
  private currentDragPolygon;
41
45
  private currentDragIsClone;
42
46
  private currentModifierDragMode;
@@ -45,17 +49,32 @@ export declare class PolygonInteractionManager {
45
49
  private dragCancelHandlersAttached;
46
50
  private _boundDragTouchMove;
47
51
  private _boundDragTouchEnd;
52
+ private _boundDragMoveListener;
53
+ private _boundDragEndListener;
54
+ private dragUsesPointerEvents;
48
55
  private polygonTouchStartListeners;
49
56
  private _openMenuPopup;
50
57
  private transformModeActive;
51
58
  private transformControllers;
52
59
  private deleteMarkerSuppressUntil;
60
+ private readonly onModeChange;
53
61
  /**
54
62
  * Strongly typed helper to emit polygon updated events without casts.
55
63
  * Also saves history state before emitting (except for drag operations which save on dragstart).
56
64
  */
57
65
  private emitPolygonUpdated;
58
66
  private getHistoryActionForOperation;
67
+ /**
68
+ * True when the polygon in the feature group already has holes, or is a MultiPolygon
69
+ * with more than one outer ring (donut mode only supports simple single-ring polygons).
70
+ */
71
+ private donutTargetHasHoles;
72
+ /**
73
+ * Commit handler for donut mode. Decides inward vs outward via containment, assembles a
74
+ * polygon-with-hole, and emits the updated event. On partial overlap / degenerate scale
75
+ * the polygon is restored unchanged.
76
+ */
77
+ private handleDonutCommit;
59
78
  private getFeatureGroups;
60
79
  private removeFeatureGroup;
61
80
  constructor(dependencies: PolygonInteractionManagerDependencies, featureGroupAccess: {
@@ -63,6 +82,7 @@ export declare class PolygonInteractionManager {
63
82
  addFeatureGroup: (fg: L.FeatureGroup) => void;
64
83
  removeFeatureGroup: (fg: L.FeatureGroup) => void;
65
84
  });
85
+ dispose(): void;
66
86
  private getTimestamp;
67
87
  private shouldSuppressDeleteMarkerClick;
68
88
  suppressDeleteMarkerClicks(durationMs: number): void;
@@ -86,6 +106,16 @@ export declare class PolygonInteractionManager {
86
106
  */
87
107
  private isPolygonDragModeActive;
88
108
  private isPolygonDragActive;
109
+ /**
110
+ * Check if a polygon belongs to the active layer.
111
+ * Returns true if no layer manager exists (backward compat) or if in active editable layer.
112
+ */
113
+ private isPolygonInActiveLayer;
114
+ /**
115
+ * Check if a feature group belongs to the active layer.
116
+ * Returns true if no layer manager exists (backward compat).
117
+ */
118
+ private isFeatureGroupInActiveLayer;
89
119
  /**
90
120
  * Enable polygon dragging functionality
91
121
  */
@@ -127,6 +157,7 @@ export declare class PolygonInteractionManager {
127
157
  private countLatLngNodes;
128
158
  private rebuildLatLngStructure;
129
159
  private getOptimizationMetadataFromFeatureGroup;
160
+ private getFeatureMetadataState;
130
161
  private getOptimizationMetadataFromPolygonLayer;
131
162
  private getDistanceMeters;
132
163
  private findClosestVertexIndex;
@@ -140,6 +171,10 @@ export declare class PolygonInteractionManager {
140
171
  private onPolygonDragKeyDown;
141
172
  private onDragTouchMove;
142
173
  private onDragTouchEnd;
174
+ private readonly onDragDocumentMove;
175
+ private readonly onDragDocumentEnd;
176
+ private attachDragDocumentListeners;
177
+ private detachDragDocumentListeners;
143
178
  private attachDragTouchListeners;
144
179
  private detachDragTouchListeners;
145
180
  private detachPolygonTouchStart;
@@ -162,6 +197,8 @@ export declare class PolygonInteractionManager {
162
197
  private performModifierSubtract;
163
198
  private getEdgeDeletionModifierKey;
164
199
  private isEdgeDeletionModifierKeyPressed;
200
+ private registerPolygonLayerMappings;
201
+ private findFeatureGroupForPolygon;
165
202
  private onMarkerHoverForEdgeDeletion;
166
203
  private onMarkerHoverForEdgeDeletionEvent;
167
204
  private onMarkerLeaveForEdgeDeletionEvent;
@@ -171,7 +208,27 @@ export declare class PolygonInteractionManager {
171
208
  private createDivIcon;
172
209
  private getLatLngInfoString;
173
210
  private setMarkerVisibility;
211
+ private getBuiltInMenuButtonConfigs;
212
+ private getBuiltInMenuButtons;
213
+ private getVisualOptimizationToggleButton;
214
+ private getPolygonMenuActionButtons;
215
+ private shouldShowPolygonMenuActionButton;
216
+ private getPolygonMenuActionClassNames;
217
+ private closeOpenMenuPopup;
218
+ private attachMenuPopupCloseHandler;
219
+ private emitBuiltInPolygonMenuAction;
220
+ private attachBuiltInMenuActionHandler;
221
+ private attachTransformHandler;
222
+ private attachOptimizationToggleHandler;
223
+ private attachCustomPolygonMenuActionHandler;
224
+ private attachMenuButtonHandler;
225
+ private startPolygonTransform;
226
+ private handleTransformControllerResult;
227
+ private getPolygonLayer;
228
+ private attachMenuButtonHandlers;
229
+ private enableMenuButtonPointerEvents;
174
230
  private generateMenuMarkerPopup;
231
+ private getMenuActionContext;
175
232
  private toggleOptimizationVisibility;
176
233
  private getPolygonGeoJSONFromFeatureGroup;
177
234
  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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"}
@@ -2,22 +2,33 @@ import * as L from 'leaflet';
2
2
  import { TurfHelper } from '../turf-helper';
3
3
  import { PolygonInformationService } from '../polygon-information.service';
4
4
  import type { Feature, Polygon, MultiPolygon } from 'geojson';
5
- import type { PolydrawConfig, PolydrawPolygon, HistoryAction } from '../types/polydraw-interfaces';
5
+ import type { PolydrawConfig, PolydrawPolygon, HistoryAction, LayerInteraction, PolygonStyleOverrides } from '../types/polydraw-interfaces';
6
6
  import { ModeManager } from './mode-manager';
7
7
  import { EventManager, PolydrawEvent, PolydrawEventCallback } from './event-manager';
8
8
  import { PolygonInteractionManager } from './polygon-interaction-manager';
9
+ import type { LayerManager } from './layer-manager';
9
10
  export interface MutationResult {
10
11
  success: boolean;
11
12
  featureGroups?: L.FeatureGroup[];
12
13
  error?: string;
13
14
  }
14
- export interface AddPolygonOptions {
15
+ interface AddPolygonOptions {
15
16
  simplify?: boolean;
16
17
  noMerge?: boolean;
18
+ mergeEditableOnly?: boolean;
17
19
  dynamicTolerance?: boolean;
18
20
  visualOptimizationLevel?: number;
19
21
  originalOptimizationLevel?: number;
20
22
  skipKinkProcessing?: boolean;
23
+ targetLayerId?: string;
24
+ layerColor?: string;
25
+ featureId?: string;
26
+ featureMetadata?: Record<string, unknown>;
27
+ sourceFeatureIds?: string[];
28
+ featureInteractionOverride?: LayerInteraction;
29
+ featureStyleOverrides?: PolygonStyleOverrides;
30
+ featureCreatedAt?: string;
31
+ featureLastModified?: string;
21
32
  }
22
33
  export interface MutationManagerDependencies {
23
34
  turfHelper: TurfHelper;
@@ -28,6 +39,7 @@ export interface MutationManagerDependencies {
28
39
  eventManager: EventManager;
29
40
  getFeatureGroups: () => L.FeatureGroup[];
30
41
  saveHistoryState?: (action: HistoryAction) => void;
42
+ layerManager?: LayerManager;
31
43
  }
32
44
  /**
33
45
  * PolygonMutationManager acts as a facade that coordinates between specialized managers.
@@ -41,8 +53,15 @@ export declare class PolygonMutationManager {
41
53
  private eventManager;
42
54
  private getFeatureGroups;
43
55
  private saveHistoryState?;
56
+ private layerManager?;
44
57
  private geometryManager;
45
58
  private interactionManager;
59
+ private readonly onDrawCancel;
60
+ private readonly onPolygonUpdated;
61
+ private readonly onMenuAction;
62
+ private readonly onCheckIntersection;
63
+ private readonly onSubtract;
64
+ private readonly onPolygonDeleted;
46
65
  constructor(dependencies: MutationManagerDependencies);
47
66
  /**
48
67
  * Initialize the three specialized managers
@@ -52,6 +71,7 @@ export declare class PolygonMutationManager {
52
71
  * Set up event forwarding from specialized managers to facade
53
72
  */
54
73
  private setupEventForwarding;
74
+ dispose(): void;
55
75
  /**
56
76
  * Handle polygon modification from interaction manager
57
77
  */
@@ -60,6 +80,13 @@ export declare class PolygonMutationManager {
60
80
  * Handle menu actions from interaction manager
61
81
  */
62
82
  private handleMenuAction;
83
+ /**
84
+ * Handle polygon menu action execution
85
+ */
86
+ private executePolygonMenuAction;
87
+ private normalizeMenuActionResult;
88
+ private isPolygonFeature;
89
+ private getBoundsForMenuAction;
63
90
  /**
64
91
  * Get the polygon interaction manager (for testing)
65
92
  */
@@ -132,6 +159,15 @@ export declare class PolygonMutationManager {
132
159
  */
133
160
  private getCompletePolygonFromFeatureGroup;
134
161
  private getOptimizationMetadataFromFeatureGroup;
162
+ private getFeatureMetadataStateFromFeatureGroup;
163
+ private collectSourceFeatureIds;
164
+ private resolvePrimaryFeatureMetadata;
165
+ private resolvePrimaryFeatureInteractionOverride;
166
+ private resolvePrimaryFeatureStyleOverrides;
167
+ private cloneFeatureMetadata;
168
+ private cloneStyleOverrides;
169
+ private featureHasHoles;
170
+ private setFeatureGroupMetadata;
135
171
  /**
136
172
  * Update marker draggable state
137
173
  */
@@ -209,4 +245,5 @@ export declare class PolygonMutationManager {
209
245
  setSubtractVisualMode(polygon: L.Polygon, enabled: boolean): void;
210
246
  performModifierSubtract(draggedGeoJSON: Feature<Polygon | MultiPolygon>, originalFeatureGroup: L.FeatureGroup): void;
211
247
  }
248
+ export {};
212
249
  //# sourceMappingURL=polygon-mutation-manager.d.ts.map
@@ -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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"}