leaflet-polydraw 1.3.2 → 2.0.0-alpha.1

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 (39) hide show
  1. package/README.md +1 -1
  2. package/dist/icons/icon-grip-vertical.svg +8 -0
  3. package/dist/icons/icon-layer-toggle.svg +6 -0
  4. package/dist/leaflet-polydraw.css +1 -1
  5. package/dist/polydraw.es.js +4597 -10003
  6. package/dist/polydraw.es.js.map +1 -1
  7. package/dist/polydraw.umd.min.js +1 -1
  8. package/dist/polydraw.umd.min.js.map +1 -1
  9. package/dist/styles/polydraw.css +357 -0
  10. package/dist/types/buttons.d.ts.map +1 -1
  11. package/dist/types/config.d.ts.map +1 -1
  12. package/dist/types/coordinate-utils.d.ts.map +1 -1
  13. package/dist/types/guards/config-deprecation-guard.d.ts +3 -0
  14. package/dist/types/guards/config-deprecation-guard.d.ts.map +1 -0
  15. package/dist/types/guards/config-runtime-fallback-guard.d.ts +3 -0
  16. package/dist/types/guards/config-runtime-fallback-guard.d.ts.map +1 -0
  17. package/dist/types/managers/event-manager.d.ts +45 -0
  18. package/dist/types/managers/event-manager.d.ts.map +1 -1
  19. package/dist/types/managers/history-manager.d.ts +16 -3
  20. package/dist/types/managers/history-manager.d.ts.map +1 -1
  21. package/dist/types/managers/layer-manager.d.ts +79 -0
  22. package/dist/types/managers/layer-manager.d.ts.map +1 -0
  23. package/dist/types/managers/polygon-draw-manager.d.ts +1 -0
  24. package/dist/types/managers/polygon-draw-manager.d.ts.map +1 -1
  25. package/dist/types/managers/polygon-interaction-manager.d.ts +27 -0
  26. package/dist/types/managers/polygon-interaction-manager.d.ts.map +1 -1
  27. package/dist/types/managers/polygon-mutation-manager.d.ts +33 -2
  28. package/dist/types/managers/polygon-mutation-manager.d.ts.map +1 -1
  29. package/dist/types/polydraw.d.ts +157 -7
  30. package/dist/types/polydraw.d.ts.map +1 -1
  31. package/dist/types/transform/transform-overlay.d.ts +2 -0
  32. package/dist/types/transform/transform-overlay.d.ts.map +1 -1
  33. package/dist/types/turf-helper.d.ts +5 -6
  34. package/dist/types/turf-helper.d.ts.map +1 -1
  35. package/dist/types/types/polydraw-interfaces.d.ts +224 -111
  36. package/dist/types/types/polydraw-interfaces.d.ts.map +1 -1
  37. package/dist/types/ui/layer-panel.d.ts +13 -0
  38. package/dist/types/ui/layer-panel.d.ts.map +1 -0
  39. package/package.json +11 -5
@@ -1,6 +1,7 @@
1
1
  import * as L from 'leaflet';
2
2
  import { DrawMode, MarkerPosition } from '../enums';
3
3
  import type { Feature, Polygon, MultiPolygon, Position } from 'geojson';
4
+ import type { PolydrawEvent as ManagerPolydrawEvent, PolydrawEventCallback as ManagerPolydrawEventCallback, PolydrawEventPayloads } from '../managers/event-manager';
4
5
  export type { Position };
5
6
  /**
6
7
  * Bounding box data structure compatible with Leaflet's LatLngBounds
@@ -118,12 +119,6 @@ export interface MarkerOptions {
118
119
  toleranceMin?: number;
119
120
  toleranceMax?: number;
120
121
  curve?: number;
121
- sharpAngleThreshold?: number;
122
- thresholdBoundingBox?: number;
123
- thresholdDistance?: number;
124
- useDistance?: boolean;
125
- useBoundingBox?: boolean;
126
- useAngles?: boolean;
127
122
  };
128
123
  }
129
124
  /**
@@ -144,12 +139,74 @@ export interface HoleStyleOptions {
144
139
  fillOpacity: number;
145
140
  dashArray?: string;
146
141
  }
147
- export type SimplificationMode = 'simple' | 'dynamic' | 'none';
148
- export interface LegacySimplificationOptions {
149
- mode?: string;
150
- tolerance?: number;
151
- highQuality?: boolean;
142
+ /**
143
+ * Unified styles configuration interface
144
+ */
145
+ export interface PolylineStyle {
146
+ weight: number;
147
+ opacity: number;
148
+ color: string;
149
+ dashArray?: string;
150
+ }
151
+ export interface PolygonStyle {
152
+ weight: number;
153
+ opacity: number;
154
+ fillOpacity: number;
155
+ smoothFactor: number;
156
+ noClip: boolean;
157
+ color: string;
158
+ fillColor: string;
159
+ }
160
+ export interface HoleStyle {
161
+ weight: number;
162
+ opacity: number;
163
+ fillOpacity: number;
164
+ color: string;
165
+ fillColor: string;
166
+ dashArray?: string;
167
+ }
168
+ export interface UIStyles {
169
+ controlButton: {
170
+ backgroundColor: string;
171
+ color: string;
172
+ };
173
+ controlButtonHover: {
174
+ backgroundColor: string;
175
+ };
176
+ controlButtonActive: {
177
+ backgroundColor: string;
178
+ color: string;
179
+ };
180
+ indicatorActive: {
181
+ backgroundColor: string;
182
+ };
183
+ p2pMarker: {
184
+ backgroundColor: string;
185
+ borderColor: string;
186
+ };
187
+ p2pClosingMarker: {
188
+ color: string;
189
+ };
190
+ edgeHover: {
191
+ color: string;
192
+ };
193
+ edgeDeletion: {
194
+ color: string;
195
+ };
196
+ dragSubtract: {
197
+ color: string;
198
+ };
152
199
  }
200
+ export interface StylesConfig {
201
+ polyline: PolylineStyle;
202
+ subtractLine: PolylineStyle;
203
+ polygon: PolygonStyle;
204
+ hole: HoleStyle;
205
+ ui: UIStyles;
206
+ }
207
+ export type PolygonCreationAlgorithm = 'concaveman' | 'convex' | 'direct';
208
+ export type SimplificationStrategy = 'simple' | 'dynamic' | 'none';
209
+ export type ModifierKey = 'ctrlKey' | 'metaKey' | 'shiftKey' | 'altKey';
153
210
  export interface SimplificationSimpleOptions {
154
211
  tolerance: number;
155
212
  highQuality: boolean;
@@ -161,10 +218,22 @@ export interface SimplificationDynamicOptions {
161
218
  multiplier: number;
162
219
  }
163
220
  export interface SimplificationConfig {
164
- mode: SimplificationMode;
221
+ strategy: SimplificationStrategy;
165
222
  simple: SimplificationSimpleOptions;
166
223
  dynamic: SimplificationDynamicOptions;
167
224
  }
225
+ /**
226
+ * Tool configuration interface (user-selectable modes)
227
+ */
228
+ export interface ToolConfig {
229
+ default: DrawMode;
230
+ draw: boolean;
231
+ subtract: boolean;
232
+ p2p: boolean;
233
+ p2pSubtract: boolean;
234
+ clone: boolean;
235
+ erase: boolean;
236
+ }
168
237
  /**
169
238
  * Polyline style options interface
170
239
  */
@@ -177,12 +246,6 @@ export interface PolylineStyleOptions {
177
246
  * Mode configuration interface
178
247
  */
179
248
  export interface ModeConfig {
180
- draw: boolean;
181
- subtract: boolean;
182
- deleteAll: boolean;
183
- p2p: boolean;
184
- p2pSubtract: boolean;
185
- clonePolygons: boolean;
186
249
  dragElbow: boolean;
187
250
  dragPolygons: boolean;
188
251
  attachElbow: boolean;
@@ -199,9 +262,9 @@ export interface DragPolygonConfig {
199
262
  markerAnimationDuration: number;
200
263
  modifierSubtract: {
201
264
  keys: {
202
- windows: string;
203
- mac: string;
204
- linux: string;
265
+ windows: ModifierKey;
266
+ mac: ModifierKey;
267
+ linux: ModifierKey;
205
268
  };
206
269
  hideMarkersOnDrag: boolean;
207
270
  };
@@ -211,16 +274,23 @@ export interface DragPolygonConfig {
211
274
  */
212
275
  export interface EdgeDeletionConfig {
213
276
  keys: {
214
- windows: string;
215
- mac: string;
216
- linux: string;
277
+ windows: ModifierKey;
278
+ mac: ModifierKey;
279
+ linux: ModifierKey;
217
280
  };
218
281
  minVertices: number;
219
282
  }
220
283
  /**
221
- * Menu operations configuration interface
284
+ * Interaction configuration interface (drag + edge deletion)
222
285
  */
223
- export interface MenuOperationsConfig {
286
+ export interface InteractionConfig {
287
+ drag: DragPolygonConfig;
288
+ edgeDeletion: EdgeDeletionConfig;
289
+ }
290
+ /**
291
+ * Polygon tools configuration interface (per-polygon operations)
292
+ */
293
+ export interface PolygonToolsConfig {
224
294
  simplify: {
225
295
  enabled: boolean;
226
296
  processHoles: boolean;
@@ -232,9 +302,16 @@ export interface MenuOperationsConfig {
232
302
  bbox: {
233
303
  enabled: boolean;
234
304
  processHoles: boolean;
305
+ addMidPointMarkers: boolean;
235
306
  };
236
307
  bezier: {
237
308
  enabled: boolean;
309
+ resolution: number;
310
+ sharpness: number;
311
+ resampleMultiplier: number;
312
+ maxNodes: number;
313
+ visualOptimizationLevel: number;
314
+ ghostMarkers: boolean;
238
315
  };
239
316
  scale: {
240
317
  enabled: boolean;
@@ -247,7 +324,7 @@ export interface MenuOperationsConfig {
247
324
  };
248
325
  }
249
326
  export type PolygonActionHistory = 'simplify' | 'doubleElbows' | 'bbox' | 'bezier' | 'scale' | 'rotate' | 'toggleOptimization';
250
- export type HistoryAction = 'freehand' | 'pointToPoint' | 'addPredefinedPolygon' | 'eraseAll' | 'markerDrag' | 'polygonDrag' | 'polygonClone' | 'addVertex' | 'removeVertex' | 'removeHole' | 'modifierSubtract' | 'deletePolygon' | PolygonActionHistory;
327
+ export type HistoryAction = 'batch' | 'freehand' | 'pointToPoint' | 'addPredefinedPolygon' | 'eraseAll' | 'markerDrag' | 'polygonDrag' | 'polygonClone' | 'addVertex' | 'removeVertex' | 'removeHole' | 'modifierSubtract' | 'deletePolygon' | 'layerDelete' | 'layerReorder' | PolygonActionHistory;
251
328
  export interface PolygonActionsHistoryCaptureConfig {
252
329
  simplify: boolean;
253
330
  doubleElbows: boolean;
@@ -258,6 +335,7 @@ export interface PolygonActionsHistoryCaptureConfig {
258
335
  toggleOptimization: boolean;
259
336
  }
260
337
  export interface HistoryCaptureConfig {
338
+ batch: boolean;
261
339
  freehand: boolean;
262
340
  pointToPoint: boolean;
263
341
  addPredefinedPolygon: boolean;
@@ -270,10 +348,20 @@ export interface HistoryCaptureConfig {
270
348
  removeHole: boolean;
271
349
  modifierSubtract: boolean;
272
350
  deletePolygon: boolean;
351
+ layerDelete?: boolean;
352
+ layerReorder?: boolean;
273
353
  polygonActions?: PolygonActionsHistoryCaptureConfig;
274
354
  }
275
355
  export interface HistoryConfig {
276
356
  capture: HistoryCaptureConfig;
357
+ maxSize: number;
358
+ }
359
+ export interface TooltipConfig {
360
+ enabled: boolean;
361
+ delayMs: number;
362
+ direction: 'left' | 'right';
363
+ backgroundColor: string;
364
+ color: string;
277
365
  }
278
366
  /**
279
367
  * Complete Polydraw configuration interface
@@ -281,83 +369,19 @@ export interface HistoryConfig {
281
369
  export interface PolydrawConfig {
282
370
  kinks: boolean;
283
371
  mergePolygons: boolean;
372
+ tools: ToolConfig;
284
373
  modes: ModeConfig;
285
- defaultMode: DrawMode;
286
374
  modifierSubtractMode: boolean;
287
- dragPolygons: DragPolygonConfig;
288
- edgeDeletion: EdgeDeletionConfig;
375
+ interaction: InteractionConfig;
289
376
  markers: MarkerOptions;
290
- polyLineOptions: PolylineStyleOptions;
291
- subtractLineOptions: PolylineStyleOptions;
292
- polygonOptions: {
293
- weight: number;
294
- opacity: number;
295
- fillOpacity: number;
296
- smoothFactor: number;
297
- noClip: boolean;
298
- };
299
- holeOptions: HoleStyleOptions;
377
+ styles: StylesConfig;
300
378
  polygonCreation: {
301
- method: string;
302
- simplification?: LegacySimplificationOptions;
379
+ algorithm: PolygonCreationAlgorithm;
303
380
  };
304
381
  simplification: SimplificationConfig;
305
- menuOperations: MenuOperationsConfig;
306
- boundingBox: {
307
- addMidPointMarkers: boolean;
308
- };
309
- bezier: {
310
- resolution: number;
311
- sharpness: number;
312
- resampleMultiplier: number;
313
- maxNodes: number;
314
- visualOptimizationLevel: number;
315
- ghostMarkers: boolean;
316
- };
317
- colors: {
318
- dragPolygons: {
319
- subtract: string;
320
- };
321
- p2p: {
322
- closingMarker: string;
323
- };
324
- edgeHover: string;
325
- edgeDeletion: {
326
- hover: string;
327
- };
328
- polyline: string;
329
- subtractLine: string;
330
- polygon: {
331
- border: string;
332
- fill: string;
333
- };
334
- hole: {
335
- border: string;
336
- fill: string;
337
- };
338
- styles: {
339
- controlButton: {
340
- backgroundColor: string;
341
- color: string;
342
- };
343
- controlButtonHover: {
344
- backgroundColor: string;
345
- };
346
- controlButtonActive: {
347
- backgroundColor: string;
348
- color: string;
349
- };
350
- indicatorActive: {
351
- backgroundColor: string;
352
- };
353
- p2pMarker: {
354
- backgroundColor: string;
355
- borderColor: string;
356
- };
357
- };
358
- };
382
+ polygonTools: PolygonToolsConfig;
383
+ tooltips: TooltipConfig;
359
384
  history: HistoryConfig;
360
- maxHistorySize: number;
361
385
  }
362
386
  /**
363
387
  * Event handler function types
@@ -367,12 +391,9 @@ export type MouseEventHandler = (event: L.LeafletMouseEvent) => void;
367
391
  export type TouchEventHandler = (event: TouchEvent) => void;
368
392
  export type MarkerEventHandler = (event: L.LeafletEvent) => void;
369
393
  export type PolygonEventHandler = (event: L.LeafletEvent) => void;
370
- export type PolydrawEvent = 'polydraw:ready' | 'polydraw:start' | 'polydraw:stop' | 'polydraw:mode:change' | 'polydraw:polygon:created' | 'polydraw:polygon:updated' | 'polydraw:polygon:deleted' | 'polydraw:marker:click' | 'polydraw:marker:dragstart' | 'polydraw:marker:dragend' | 'polydraw:draw:cancel' | 'polydraw:menu:action' | 'polydraw:check:intersection' | 'polydraw:subtract';
371
- export type PolydrawEventData = undefined | DrawMode | MenuActionData | IntersectionAnalysis | PolygonUpdatedEventData | GeometricOperationResult | {
372
- id?: string;
373
- polygon?: Feature<Polygon | MultiPolygon>;
374
- } | L.LeafletEvent;
375
- export type PolydrawEventCallback = (data?: PolydrawEventData) => void;
394
+ export type PolydrawEvent = ManagerPolydrawEvent;
395
+ export type PolydrawEventData<T extends PolydrawEvent = PolydrawEvent> = PolydrawEventPayloads[T];
396
+ export type PolydrawEventCallback<T extends PolydrawEvent = PolydrawEvent> = ManagerPolydrawEventCallback<T>;
376
397
  /**
377
398
  * Data interface for menu actions
378
399
  */
@@ -388,6 +409,13 @@ export interface PolygonUpdatedEventData {
388
409
  intelligentMerge?: boolean;
389
410
  optimizationLevel?: number;
390
411
  originalOptimizationLevel?: number;
412
+ featureId?: string;
413
+ featureMetadata?: Record<string, unknown>;
414
+ sourceFeatureIds?: string[];
415
+ featureInteractionOverride?: LayerInteraction;
416
+ featureStyleOverrides?: PolygonStyleOverrides;
417
+ featureCreatedAt?: string;
418
+ featureLastModified?: string;
391
419
  }
392
420
  /**
393
421
  * Polygon information interface
@@ -455,9 +483,15 @@ export interface PolydrawFeatureGroup extends L.FeatureGroup {
455
483
  _polydrawMetadata?: {
456
484
  id: string;
457
485
  optimizationLevel: number;
486
+ originalOptimizationLevel?: number;
458
487
  hasHoles: boolean;
459
488
  createdAt: Date;
460
489
  lastModified: Date;
490
+ layerId?: string;
491
+ metadata?: Record<string, unknown>;
492
+ sourceFeatureIds?: string[];
493
+ interactionOverride?: LayerInteraction;
494
+ styleOverrides?: PolygonStyleOverrides;
461
495
  };
462
496
  }
463
497
  /**
@@ -558,14 +592,6 @@ export interface PointImportance {
558
592
  isExtreme: boolean;
559
593
  distanceFromCentroid: number;
560
594
  }
561
- /**
562
- * Simplification options interface
563
- */
564
- export interface SimplificationOptions {
565
- tolerance: number;
566
- highQuality: boolean;
567
- dynamicTolerance: boolean;
568
- }
569
595
  /**
570
596
  * Bezier curve options interface
571
597
  */
@@ -587,4 +613,91 @@ export interface DifferenceOptions {
587
613
  tolerance: number;
588
614
  createHoles: boolean;
589
615
  }
616
+ /**
617
+ * Layer snapshot entry for history serialization
618
+ */
619
+ export interface LayerSnapshotEntry {
620
+ id: string;
621
+ label?: string;
622
+ color: string;
623
+ visible: boolean;
624
+ interaction?: LayerInteraction;
625
+ panel?: LayerPanelVisibility;
626
+ metadata?: Record<string, unknown>;
627
+ featureIndices: number[];
628
+ }
629
+ /**
630
+ * Complete layer snapshot for history
631
+ */
632
+ export interface LayerSnapshot {
633
+ layers: LayerSnapshotEntry[];
634
+ activeLayerId: string;
635
+ }
636
+ export interface FeatureMetadataSnapshotEntry {
637
+ id?: string;
638
+ metadata?: Record<string, unknown>;
639
+ sourceFeatureIds?: string[];
640
+ interactionOverride?: LayerInteraction;
641
+ styleOverrides?: PolygonStyleOverrides;
642
+ optimizationLevel?: number;
643
+ originalOptimizationLevel?: number;
644
+ hasHoles?: boolean;
645
+ layerId?: string;
646
+ createdAt?: string;
647
+ lastModified?: string;
648
+ }
649
+ export type LayerInteraction = 'editable' | 'readonly' | 'static';
650
+ export type LayerPanelVisibility = 'visible' | 'hidden';
651
+ export type PolydrawMetadata = Record<string, unknown>;
652
+ export type PolygonOverrideInteraction = 'inherit' | LayerInteraction;
653
+ export type PolygonOverrideMerge = 'inherit' | 'allow' | 'block';
654
+ export interface PolygonStyleOverrides {
655
+ color?: string;
656
+ fillColor?: string;
657
+ fillOpacity?: number;
658
+ weight?: number;
659
+ }
660
+ export interface PolygonOverridesInput {
661
+ interaction?: PolygonOverrideInteraction;
662
+ merge?: PolygonOverrideMerge;
663
+ style?: PolygonStyleOverrides;
664
+ }
665
+ export interface PredefinedPolygonOptions {
666
+ visualOptimizationLevel?: number;
667
+ layer?: string | PolygonLayerDescriptorInput;
668
+ layerColor?: string;
669
+ metadata?: PolydrawMetadata;
670
+ overrides?: PolygonOverridesInput;
671
+ }
672
+ export interface PolygonLayerDescriptorInput {
673
+ id: string;
674
+ label?: string;
675
+ color?: string;
676
+ visibility?: boolean;
677
+ panel?: LayerPanelVisibility;
678
+ interaction?: LayerInteraction;
679
+ metadata?: PolydrawMetadata;
680
+ }
681
+ export interface LayerUpdateInput {
682
+ label?: string;
683
+ color?: string;
684
+ visibility?: boolean;
685
+ panel?: LayerPanelVisibility;
686
+ interaction?: LayerInteraction;
687
+ metadata?: PolydrawMetadata;
688
+ }
689
+ export interface LayerDeleteResult {
690
+ success: boolean;
691
+ layerId: string;
692
+ removedFeatureGroups: number;
693
+ reason?: 'not-found' | 'default-layer';
694
+ }
695
+ /**
696
+ * Input format for adding polygon groups with layer information
697
+ */
698
+ export interface PolygonGroupInput {
699
+ layer: string | PolygonLayerDescriptorInput;
700
+ polygons: unknown[][][][];
701
+ options?: Omit<PredefinedPolygonOptions, 'layer' | 'layerColor'>;
702
+ }
590
703
  //# sourceMappingURL=polydraw-interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"polydraw-interfaces.d.ts","sourceRoot":"","sources":["../../../src/types/polydraw-interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExE,YAAY,EAAE,QAAQ,EAAE,CAAC;AAEzB;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IACvD,QAAQ,EAAE,CAAC,CAAC,aAAa,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE;QACV,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAChC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;KAC7B,CAAC;IACF,QAAQ,EAAE;QACR,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAChC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;KAC7B,CAAC;IACF,cAAc,EAAE;QACd,QAAQ,EAAE,cAAc,CAAC;QACzB,QAAQ,EAAE,OAAO,CAAC;QAClB,aAAa,EAAE,OAAO,CAAC;QACvB,UAAU,EAAE,OAAO,CAAC;QACpB,oBAAoB,EAAE,OAAO,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,MAAM,EAAE;YACN,GAAG,EAAE;gBACH,MAAM,EAAE,MAAM,CAAC;gBACf,QAAQ,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,OAAO,EAAE;gBACP,MAAM,EAAE,MAAM,CAAC;gBACf,QAAQ,EAAE,MAAM,CAAC;aAClB,CAAC;SACH,CAAC;QACF,KAAK,EAAE;YACL,WAAW,EAAE,MAAM,CAAC;YACpB,MAAM,EAAE;gBACN,WAAW,EAAE,OAAO,CAAC;gBACrB,SAAS,EAAE;oBACT,CAAC,EAAE,MAAM,CAAC;oBACV,EAAE,EAAE,MAAM,CAAC;iBACZ,CAAC;gBACF,IAAI,EAAE;oBACJ,EAAE,EAAE,MAAM,CAAC;oBACX,GAAG,EAAE,MAAM,CAAC;oBACZ,GAAG,EAAE,MAAM,CAAC;oBACZ,EAAE,EAAE,MAAM,CAAC;iBACZ,CAAC;aACH,CAAC;YACF,QAAQ,EAAE;gBACR,SAAS,EAAE;oBACT,IAAI,EAAE,MAAM,CAAC;oBACb,KAAK,EAAE,MAAM,CAAC;oBACd,KAAK,EAAE,MAAM,CAAC;iBACf,CAAC;gBACF,IAAI,EAAE;oBACJ,KAAK,EAAE,MAAM,CAAC;oBACd,MAAM,EAAE,MAAM,CAAC;oBACf,KAAK,EAAE,MAAM,CAAC;oBACd,MAAM,EAAE,MAAM,CAAC;iBAChB,CAAC;aACH,CAAC;SACH,CAAC;QACF,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAChC,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,cAAc,EAAE;QACd,QAAQ,EAAE,cAAc,CAAC;QACzB,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAChC,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,gBAAgB,EAAE;QAChB,QAAQ,EAAE,cAAc,CAAC;QACzB,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAChC,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,WAAW,EAAE;QACX,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC;KACrB,CAAC;IACF,kBAAkB,CAAC,EAAE;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAE/D,MAAM,WAAW,2BAA2B;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,4BAA4B;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,2BAA2B,CAAC;IACpC,OAAO,EAAE,4BAA4B,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,OAAO,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACzC,uBAAuB,EAAE,MAAM,CAAC;IAChC,gBAAgB,EAAE;QAChB,IAAI,EAAE;YACJ,OAAO,EAAE,MAAM,CAAC;YAChB,GAAG,EAAE,MAAM,CAAC;YACZ,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;QACF,iBAAiB,EAAE,OAAO,CAAC;KAC5B,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE;QACR,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,YAAY,EAAE;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,KAAK,EAAE;QACL,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,wBAAwB,EAAE;QACxB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH;AAED,MAAM,MAAM,oBAAoB,GAC5B,UAAU,GACV,cAAc,GACd,MAAM,GACN,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,oBAAoB,CAAC;AAEzB,MAAM,MAAM,aAAa,GACrB,UAAU,GACV,cAAc,GACd,sBAAsB,GACtB,UAAU,GACV,YAAY,GACZ,aAAa,GACb,cAAc,GACd,WAAW,GACX,cAAc,GACd,YAAY,GACZ,kBAAkB,GAClB,eAAe,GACf,oBAAoB,CAAC;AAEzB,MAAM,WAAW,kCAAkC;IACjD,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,kCAAkC,CAAC;CACrD;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,oBAAoB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,QAAQ,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,YAAY,EAAE,iBAAiB,CAAC;IAChC,YAAY,EAAE,kBAAkB,CAAC;IACjC,OAAO,EAAE,aAAa,CAAC;IACvB,eAAe,EAAE,oBAAoB,CAAC;IACtC,mBAAmB,EAAE,oBAAoB,CAAC;IAC1C,cAAc,EAAE;QACd,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;IACF,WAAW,EAAE,gBAAgB,CAAC;IAC9B,eAAe,EAAE;QACf,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,CAAC,EAAE,2BAA2B,CAAC;KAC9C,CAAC;IACF,cAAc,EAAE,oBAAoB,CAAC;IACrC,cAAc,EAAE,oBAAoB,CAAC;IACrC,WAAW,EAAE;QACX,kBAAkB,EAAE,OAAO,CAAC;KAC7B,CAAC;IACF,MAAM,EAAE;QACN,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,QAAQ,EAAE,MAAM,CAAC;QACjB,uBAAuB,EAAE,MAAM,CAAC;QAChC,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,MAAM,EAAE;QACN,YAAY,EAAE;YACZ,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,GAAG,EAAE;YACH,aAAa,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE;YACZ,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;QACF,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,MAAM,EAAE;YACN,aAAa,EAAE;gBACb,eAAe,EAAE,MAAM,CAAC;gBACxB,KAAK,EAAE,MAAM,CAAC;aACf,CAAC;YACF,kBAAkB,EAAE;gBAClB,eAAe,EAAE,MAAM,CAAC;aACzB,CAAC;YACF,mBAAmB,EAAE;gBACnB,eAAe,EAAE,MAAM,CAAC;gBACxB,KAAK,EAAE,MAAM,CAAC;aACf,CAAC;YACF,eAAe,EAAE;gBACf,eAAe,EAAE,MAAM,CAAC;aACzB,CAAC;YACF,SAAS,EAAE;gBACT,eAAe,EAAE,MAAM,CAAC;gBACxB,WAAW,EAAE,MAAM,CAAC;aACrB,CAAC;SACH,CAAC;KACH,CAAC;IACF,OAAO,EAAE,aAAa,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;AAC7D,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,KAAK,IAAI,CAAC;AACrE,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;AAC5D,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC;AACjE,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC;AAElE,MAAM,MAAM,aAAa,GACrB,gBAAgB,GAChB,gBAAgB,GAChB,eAAe,GACf,sBAAsB,GACtB,0BAA0B,GAC1B,0BAA0B,GAC1B,0BAA0B,GAC1B,uBAAuB,GACvB,2BAA2B,GAC3B,yBAAyB,GACzB,sBAAsB,GACtB,sBAAsB,GACtB,6BAA6B,GAC7B,mBAAmB,CAAC;AAExB,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,QAAQ,GACR,cAAc,GACd,oBAAoB,GACpB,uBAAuB,GACvB,wBAAwB,GACxB;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAA;CAAE,GAC1D,CAAC,CAAC,YAAY,CAAC;AAEnB,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,cAAc,GAAG,QAAQ,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC;IAC3B,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC;CAC9B;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,CAAC,CAAC,aAAa,CAAC;IAC1B,MAAM,EAAE,aAAa,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;IACtC,eAAe,EAAE,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;IACxC,cAAc,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,CAAC,CAAC,YAAY;IAC1D,iBAAiB,CAAC,EAAE;QAClB,EAAE,EAAE,MAAM,CAAC;QACX,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,OAAO,CAAC;QAClB,SAAS,EAAE,IAAI,CAAC;QAChB,YAAY,EAAE,IAAI,CAAC;KACpB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,CAAC,CAAC,OAAO;IAChD,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,kCAAkC,CAAC,EAAE,MAAM,CAAC;IAC5C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,qBAAqB,CAAC,EAAE,oBAAoB,CAAC;IAC7C,gBAAgB,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IACnD,iBAAiB,CAAC,EAAE;QAClB,UAAU,EAAE,OAAO,CAAC;QACpB,aAAa,EAAE,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;QAEtC,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF;;OAEG;IACH,gCAAgC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3D;;OAEG;IACH,kCAAkC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACjE;;OAEG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;CAC5D;AAED;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,CAAC,CAAC,MAAM;IAC9C,aAAa,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IACjE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,CAAC,CAAC,QAAQ;IACtD,iBAAiB,CAAC,EAAE;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,CAAC,CAAC,aAAa,CAAC;QAC5B,QAAQ,EAAE,CAAC,CAAC,aAAa,CAAC;QAC1B,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC;QACzB,kBAAkB,EAAE,CAAC,CAAC,YAAY,CAAC;KACpC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB"}
1
+ {"version":3,"file":"polydraw-interfaces.d.ts","sourceRoot":"","sources":["../../../src/types/polydraw-interfaces.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import * as L from 'leaflet';
2
+ import type { LayerManager } from '../managers/layer-manager';
3
+ import type { EventManager } from '../managers/event-manager';
4
+ export interface LayerPanelControl extends L.Control {
5
+ refresh(): void;
6
+ }
7
+ /**
8
+ * Creates a lightweight UI control for layer visibility/activation.
9
+ * The returned control exposes `refresh()` for state updates without re-creating
10
+ * the Leaflet control instance.
11
+ */
12
+ export declare function createLayerPanel(layerManager: LayerManager, eventManager: EventManager): LayerPanelControl;
13
+ //# sourceMappingURL=layer-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layer-panel.d.ts","sourceRoot":"","sources":["../../../src/ui/layer-panel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAkB9D,MAAM,WAAW,iBAAkB,SAAQ,CAAC,CAAC,OAAO;IAClD,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,GACzB,iBAAiB,CA+PnB"}
package/package.json CHANGED
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "name": "leaflet-polydraw",
3
- "version": "1.3.2",
3
+ "version": "2.0.0-alpha.1",
4
4
  "description": "Advanced Leaflet plugin for freehand polygon drawing, with smart merging and powerful editing tools. Compatible with both Leaflet v1.x and v2.x.",
5
+ "main": "dist/polydraw.umd.min.js",
6
+ "module": "dist/polydraw.es.js",
5
7
  "types": "dist/types/index.d.ts",
6
8
  "exports": {
7
9
  ".": {
@@ -45,7 +47,6 @@
45
47
  "node": ">=18",
46
48
  "npm": ">=9"
47
49
  },
48
- "packageManager": "npm@10.7.0",
49
50
  "scripts": {
50
51
  "build": "npm run lint:fix && vite build && npm run build:types",
51
52
  "build:types": "tsc --project tsconfig.build.json && echo 'export { default, leafletAdapter, defaultConfig, registerWithLeaflet } from \"./polydraw\";' > dist/types/index.d.ts",
@@ -55,7 +56,13 @@
55
56
  "test": "vitest --config test/unit/setup/vitest.config.ts",
56
57
  "test:coverage": "vitest --config test/unit/setup/vitest.config.ts --coverage",
57
58
  "test:ui": "vitest --config test/unit/setup/vitest.config.ts --ui",
58
- "test:playwright": "npm run build && npm --prefix demo run build && playwright test",
59
+ "test:leaflet:v1": "./scripts/test-leaflet-version.sh v1",
60
+ "test:leaflet:v2": "./scripts/test-leaflet-version.sh v2",
61
+ "test:leaflet:matrix": "npm run test:leaflet:v1 && npm run test:leaflet:v2",
62
+ "test:playwright": "npm run build && npm --prefix demo --ignore-scripts run build && playwright test",
63
+ "test:playwright:v1": "./scripts/test-leaflet-version.sh v1 -- npm run test:playwright",
64
+ "test:playwright:v2": "./scripts/test-leaflet-version.sh v2 -- npm run test:playwright",
65
+ "test:playwright:matrix": "npm run test:playwright:v1 && npm run test:playwright:v2",
59
66
  "test:e2e": "npm run test:playwright",
60
67
  "test:types": "tsc --noEmit --project tsconfig.json",
61
68
  "lint": "eslint ./src --ext .ts",
@@ -67,7 +74,7 @@
67
74
  },
68
75
  "devDependencies": {
69
76
  "@eslint/js": "^9.12.0",
70
- "@playwright/test": "^1.56.1",
77
+ "@playwright/test": "1.56.1",
71
78
  "@types/geojson": "^7946.0.16",
72
79
  "@types/leaflet": "^1.9.18",
73
80
  "@types/node": "^22.15.30",
@@ -93,7 +100,6 @@
93
100
  "@turf/boolean-equal": "^7.2.0",
94
101
  "@turf/boolean-point-in-polygon": "^7.2.0",
95
102
  "@turf/boolean-within": "^7.2.0",
96
- "@turf/buffer": "^7.2.0",
97
103
  "@turf/center-of-mass": "^7.2.0",
98
104
  "@turf/convex": "^7.2.0",
99
105
  "@turf/difference": "^7.2.0",