{"version":3,"file":"babluroy-agm-drawing.mjs","sources":["../../../packages/drawing/src/lib/directives/drawing-manager.ts","../../../packages/drawing/src/lib/directives/drawing-manager-trigger.ts","../../../packages/drawing/src/lib/drawing.module.ts","../../../packages/drawing/src/public-api.ts","../../../packages/drawing/src/babluroy-agm-drawing.ts"],"sourcesContent":["import { Directive, EventEmitter, Input, isDevMode, NgZone, OnChanges, OnDestroy, Output, SimpleChanges } from '@angular/core';\nimport { fromEventPattern, Observable, Subscription } from 'rxjs';\n\ndeclare var google: any;\n\n@Directive({\n  selector: 'agm-drawing-manager',\n  exportAs: 'agmDrawingManager',\n  standalone: true,\n})\nexport class AgmDrawingManager implements OnChanges, OnDestroy{\n\n  /**\n   * The enabled/disabled state of the drawing control. Defaults to `true`.\n   *\n   */\n  @Input() drawingControl: boolean = true;\n\n  /**\n   * The DrawingManager's drawing mode, which defines the type of overlay to be\n   * added on the map. A drawing mode of null means that the user can interact\n   * with the map as normal, and clicks do not draw anything.\n   */\n  @Input() drawingMode: google.maps.drawing.OverlayType | null = null;\n\n  /**\n   * The display options for the drawing control.\n   *\n   */\n  @Input() drawingControlOptions: google.maps.drawing.DrawingControlOptions = {\n    position: google.maps.ControlPosition.TOP_CENTER,\n    drawingModes: [\n      google.maps.drawing.OverlayType.MARKER,\n      google.maps.drawing.OverlayType.CIRCLE,\n      google.maps.drawing.OverlayType.POLYGON,\n      google.maps.drawing.OverlayType.POLYLINE,\n      google.maps.drawing.OverlayType.RECTANGLE\n    ]\n  };\n\n  /**\n   * Options to apply to any new circles created with this DrawingManager.\n   * The `center` and `radius` properties are ignored, and the `map` property of a\n   * new circle is always set to the DrawingManager's map.\n   *\n   */\n  @Input() circleOptions: google.maps.CircleOptions = {\n    fillColor: '#FF0000',\n    fillOpacity: 0.35,\n    strokeWeight: 2,\n    clickable: true,\n    editable: true,\n    zIndex: 1\n  };\n\n  /**\n   * Options to apply to any new markers created with this DrawingManager.\n   * The `position` property is ignored, and the `map` property of a new marker\n   * is always set to the DrawingManager's map.\n   *\n   */\n  @Input() markerOptions: google.maps.MarkerOptions = {\n    draggable: true\n  };\n\n  /**\n   * Options to apply to any new polygons created with this DrawingManager.\n   * The `paths` property is ignored, and the map property of a new polygon is\n   * always set to the DrawingManager's map.\n   *\n   */\n  @Input() polygonOptions: google.maps.PolygonOptions = {\n    fillColor: '#FF0000',\n    fillOpacity: 0.35,\n    strokeWeight: 2,\n    clickable: true,\n    editable: true,\n    zIndex: 1\n  };\n\n  /**\n   * Options to apply to any new polylines created with this DrawingManager.\n   * The `path` property is ignored, and the map property of a new polyline is\n   * always set to the DrawingManager's map.\n   *\n   */\n  @Input() polylineOptions: google.maps.PolylineOptions = {\n    strokeColor: '#FF0000',\n    strokeOpacity: 1.0,\n    strokeWeight: 2,\n    clickable: true,\n    editable: true,\n    zIndex: 1\n  };\n\n  /**\n   * Options to apply to any new rectangles created with this DrawingManager.\n   * The `bounds` property is ignored, and the map property of a new rectangle\n   * is always set to the DrawingManager's map.\n   *\n   */\n  @Input() rectangleOptions: google.maps.RectangleOptions = {\n    fillColor: '#FF0000',\n    fillOpacity: 0.35,\n    strokeWeight: 2,\n    clickable: true,\n    editable: true,\n    zIndex: 1\n  };\n\n  /**\n   * This event is fired when the user has finished drawing a circle.\n   */\n  @Output() circleComplete = new EventEmitter<google.maps.Circle>();\n\n  /**\n   * This event is fired when the user has finished drawing a marker.\n   */\n  @Output() markerComplete = new EventEmitter<google.maps.Marker>();\n\n  /**\n   * This event is fired when the user has finished drawing an overlay of any\n   * type.\n   */\n  @Output() overlayComplete = new EventEmitter<google.maps.drawing.OverlayCompleteEvent>();\n\n  /**\n   * This event is fired when the user has finished drawing a polygon.\n   */\n  @Output() polygonComplete = new EventEmitter<google.maps.Polygon>();\n\n  /**\n   * This event is fired when the user has finished drawing a polyline.\n   */\n  @Output() polylineComplete = new EventEmitter<google.maps.Polyline>();\n\n  /**\n   * This event is fired when the user has finished drawing a rectangle.\n   */\n  @Output() rectangleComplete = new EventEmitter<google.maps.Rectangle>();\n\n  private eventSubscriptions: Subscription[] = [];\n\n  private drawingManager!: google.maps.drawing.DrawingManager;\n\n  constructor(private _zone: NgZone) {\n  }\n\n  setMap(map: google.maps.Map) {\n    if (!google.maps.drawing && isDevMode()) {\n      console.error('Cannot use drawing manager if drawing library is not ' +\n        'loaded. To fix, add libraries: [\\'drawing\\'] to the ' +\n        'lazyMapsAPILoaderConfig you passed to AgmCoreModule.forRoot');\n      return;\n    }\n    if (map && !this.drawingManager) {\n      this.drawingManager = new google.maps.drawing.DrawingManager({\n          map,\n          circleOptions: this.circleOptions,\n          markerOptions: this.markerOptions,\n          polygonOptions: this.polygonOptions,\n          polylineOptions: this.polylineOptions,\n          rectangleOptions: this.rectangleOptions,\n          drawingControl: this.drawingControl,\n          drawingControlOptions: this.drawingControlOptions,\n          drawingMode: this.drawingMode,\n      });\n      this.initEvents(this.drawingManager);\n    } else if (!map && this.drawingManager) {\n      this.drawingManager.setMap(null);\n    }\n    // else do nothing\n  }\n\n  initEvents(drawingManager: google.maps.drawing.DrawingManager) {\n    this.eventSubscriptions.push(\n      this.createMvcObservable<google.maps.Circle>('circlecomplete', drawingManager)\n      .subscribe(circle => this._zone.run(() => this.circleComplete.next(circle)))\n    );\n    this.eventSubscriptions.push(\n      this.createMvcObservable<google.maps.Marker>('markercomplete', drawingManager)\n      .subscribe(marker => this._zone.run(() => this.markerComplete.next(marker)))\n    );\n    this.eventSubscriptions.push(\n      this.createMvcObservable<google.maps.Polygon>('polygoncomplete', drawingManager)\n      .subscribe(polygon => this._zone.run(() => this.polygonComplete.next(polygon)))\n    );\n    this.eventSubscriptions.push(\n      this.createMvcObservable<google.maps.Polyline>('polylinecomplete', drawingManager)\n      .subscribe(polyline => this._zone.run(() => this.polylineComplete.next(polyline)))\n    );\n    this.eventSubscriptions.push(\n      this.createMvcObservable<google.maps.drawing.OverlayCompleteEvent>('overlaycomplete', drawingManager)\n      .subscribe(overlayevent => this._zone.run(() => this.overlayComplete.next(overlayevent)))\n    );\n    this.eventSubscriptions.push(\n      this.createMvcObservable<google.maps.Rectangle>('rectanglecomplete', drawingManager)\n      .subscribe(rectangle => this._zone.run(() => this.rectangleComplete.next(rectangle)))\n    );\n  }\n\n  createMvcObservable<E>(eventName: string, mvcObject: google.maps.MVCObject): Observable<E> {\n    return fromEventPattern(\n      handler => mvcObject.addListener(eventName,\n        (event?: E) => handler.apply(null, [event])),\n      (_handler, evListener: google.maps.MapsEventListener) => evListener.remove()\n    );\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (!this.drawingManager) {\n      return;\n    }\n\n    const options = Object.entries(changes)\n    .map(([prop, change]) => [prop, change.currentValue])\n    .reduce((obj: any, [propName, propValue]) => {\n      obj[propName] = propValue;\n      return obj;\n    }, {});\n    this.drawingManager.setOptions(options);\n  }\n\n  ngOnDestroy(): void {\n    this.eventSubscriptions.forEach(subscription => subscription.unsubscribe());\n  }\n\n}\n","import { AgmMap } from '@babluroy/agm-core';\nimport { Directive, Host, Input, OnDestroy, OnInit, Inject } from '@angular/core';\nimport { AgmDrawingManager } from './drawing-manager';\n\ndeclare var google: any;\n\n@Directive({\n  selector: 'agm-map[agmDrawingManager]',\n  standalone: true,\n})\nexport class AgmDrawingManagerTrigger implements OnInit, OnDestroy {\n  /** The drawing manager to be attached to this trigger. */\n  @Input() drawingManager!: AgmDrawingManager;\n\n  constructor(@Host() @Inject(AgmMap) private _agmMap: AgmMap) {}\n\n  ngOnInit() {\n    this._agmMap.mapReady.subscribe((map: google.maps.Map) => {\n      if (this.drawingManager) {\n        this.drawingManager.setMap(map);\n      }\n    });\n  }\n\n  ngOnDestroy() {\n    if (this.drawingManager) {\n      this.drawingManager.setMap(null as unknown as google.maps.Map);\n    }\n  }\n}\n","import { AgmCoreModule } from '@babluroy/agm-core';\nimport { NgModule } from '@angular/core';\nimport { AgmDrawingManager } from './directives/drawing-manager';\nimport { AgmDrawingManagerTrigger } from './directives/drawing-manager-trigger';\n\n@NgModule({\n  imports: [\n    AgmCoreModule,\n    AgmDrawingManager,\n    AgmDrawingManagerTrigger\n  ],\n  exports: [\n    AgmDrawingManager,\n    AgmDrawingManagerTrigger\n  ]\n})\nexport class AgmDrawingModule { }\n","/*\n * Public API Surface of drawing\n */\n\nexport * from './lib/directives';\nexport * from './lib/drawing.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}