src/lib/services/maps-api-wrapper.ts
Properties |
|
Methods |
|
constructor(_loader: MapsAPILoader, _zone: NgZone)
|
|||||||||
Defined in src/lib/services/maps-api-wrapper.ts:17
|
|||||||||
Parameters :
|
Public Abstract clearInstanceListeners |
clearInstanceListeners()
|
Defined in src/lib/services/maps-api-wrapper.ts:39
|
Returns :
void
|
Public Abstract createCircle | |||||||||
createCircle(center: GeoPoint, options: CircleOptions)
|
|||||||||
Defined in src/lib/services/maps-api-wrapper.ts:83
|
|||||||||
Parameters :
Returns :
Promise<C>
|
Public Abstract createDrawingManager |
createDrawingManager(param: any, addToMap?: boolean)
|
Defined in src/lib/services/maps-api-wrapper.ts:78
|
Returns :
Promise<any>
|
Public Abstract createInfoWindow |
createInfoWindow(center: GeoPoint, options: any)
|
Defined in src/lib/services/maps-api-wrapper.ts:75
|
Returns :
Promise<I>
|
Public Abstract createMap | ||||||||||||
createMap(el: HTMLElement, center: GeoPoint, options: MapOptions)
|
||||||||||||
Defined in src/lib/services/maps-api-wrapper.ts:25
|
||||||||||||
Parameters :
Returns :
void | Promise
|
Public Abstract createMarker | ||||||||||||
createMarker(position: GeoPoint, options?: MarkerOptions, addToMap?: boolean)
|
||||||||||||
Defined in src/lib/services/maps-api-wrapper.ts:33
|
||||||||||||
Parameters :
Returns :
Promise<any>
|
Public Abstract createPolygon | ||||||
createPolygon(options: any)
|
||||||
Defined in src/lib/services/maps-api-wrapper.ts:95
|
||||||
Parameters :
Returns :
Promise<any>
|
Public Abstract createPolyline | ||||||
createPolyline(options: any)
|
||||||
Defined in src/lib/services/maps-api-wrapper.ts:93
|
||||||
Parameters :
Returns :
Promise<any>
|
Public Abstract createRectangle | |||||||||
createRectangle(box: BoundsLiteral, options: RectangleOptions)
|
|||||||||
Defined in src/lib/services/maps-api-wrapper.ts:88
|
|||||||||
Parameters :
Returns :
Promise<R>
|
Public Abstract fitBounds | |||||||||
fitBounds(bounds: BoundsLiteral, boundsPadding?: number | Padding)
|
|||||||||
Defined in src/lib/services/maps-api-wrapper.ts:58
|
|||||||||
Parameters :
Returns :
void | Promise
|
Public Abstract getBounds |
getBounds()
|
Defined in src/lib/services/maps-api-wrapper.ts:63
|
Returns :
Promise<BoundsLiteral | undefined>
|
Public Abstract getCenter |
getCenter()
|
Defined in src/lib/services/maps-api-wrapper.ts:47
|
Returns :
Promise<GeoPoint | undefined>
|
Public Abstract getMapTypeId |
getMapTypeId()
|
Defined in src/lib/services/maps-api-wrapper.ts:69
|
Returns :
Promise<google.maps.MapTypeId | string | undefined>
|
Public Async getNativeMap |
getNativeMap()
|
Defined in src/lib/services/maps-api-wrapper.ts:41
|
Returns :
Promise<T | undefined>
|
Public Abstract getZoom |
getZoom()
|
Defined in src/lib/services/maps-api-wrapper.ts:65
|
Returns :
Promise<number | undefined>
|
Public Abstract panTo | ||||||
panTo(newCenter: GeoPoint)
|
||||||
Defined in src/lib/services/maps-api-wrapper.ts:51
|
||||||
Parameters :
Returns :
Promise<void>
|
Public Abstract panToBounds | |||||||||
panToBounds(bounds: BoundsLiteral, boundsPadding?: number | Padding)
|
|||||||||
Defined in src/lib/services/maps-api-wrapper.ts:53
|
|||||||||
Parameters :
Returns :
void | Promise
|
Public Abstract setCenter | ||||||
setCenter(newCenter: GeoPoint)
|
||||||
Defined in src/lib/services/maps-api-wrapper.ts:49
|
||||||
Parameters :
Returns :
Promise<void>
|
Public Abstract setMapOptions | ||||||
setMapOptions(options: MapOptions)
|
||||||
Defined in src/lib/services/maps-api-wrapper.ts:31
|
||||||
Parameters :
Returns :
void | Promise
|
Public Abstract setZoom | ||||||
setZoom(zoom: number)
|
||||||
Defined in src/lib/services/maps-api-wrapper.ts:67
|
||||||
Parameters :
Returns :
Promise<any>
|
Public Abstract subscribeToMapEvent | ||||||
subscribeToMapEvent(eventName: string)
|
||||||
Defined in src/lib/services/maps-api-wrapper.ts:73
|
||||||
Parameters :
Returns :
Observable<any>
|
Public Abstract triggerMapEvent | ||||||
triggerMapEvent(eventName: string)
|
||||||
Defined in src/lib/services/maps-api-wrapper.ts:45
|
||||||
Parameters :
Returns :
Promise<void>
|
Protected Optional _api |
Type : Promise<T>
|
Defined in src/lib/services/maps-api-wrapper.ts:16
|
Protected Optional _mapResolver |
Type : function
|
Defined in src/lib/services/maps-api-wrapper.ts:17
|
import { Injectable, NgZone } from '@angular/core';
import { Observable } from 'rxjs';
import { BoundsLiteral } from '../interface/bounds';
import { CircleOptions } from '../interface/circle-options';
import { GeoPoint } from '../interface/geo-point';
import { MapOptions } from '../interface/map-options';
import { MarkerOptions } from '../interface/marker-options';
import { Padding } from '../interface/padding';
import { RectangleOptions } from '../interface/rectangle-options';
import { MapsAPILoader } from './maps-api-loader/maps-api-loader';
@Injectable()
export abstract class MapsApiWrapper<T = any, C = any, R = any, I = any> {
protected _api?: Promise<T>;
protected _mapResolver?: (value: T) => void;
constructor(protected _loader: MapsAPILoader, protected _zone: NgZone) {
this._api = new Promise<T>((resolve) => {
this._mapResolver = resolve;
});
}
public abstract createMap(
el: HTMLElement,
center: GeoPoint,
options: MapOptions,
): void | Promise<void>;
public abstract setMapOptions(options: MapOptions): void | Promise<void>;
public abstract createMarker(
position: GeoPoint,
options?: MarkerOptions,
addToMap?: boolean,
): Promise<any>;
public abstract clearInstanceListeners(): void;
public async getNativeMap(): Promise<T | undefined> {
return this._api;
}
public abstract triggerMapEvent(eventName: string): Promise<void>;
public abstract getCenter(): Promise<GeoPoint | undefined>;
public abstract setCenter(newCenter: GeoPoint): Promise<void>;
public abstract panTo(newCenter: GeoPoint): Promise<void>;
public abstract panToBounds(
bounds: BoundsLiteral,
boundsPadding?: number | Padding,
): void | Promise<void>;
public abstract fitBounds(
bounds: BoundsLiteral,
boundsPadding?: number | Padding,
): void | Promise<void>;
public abstract getBounds(): Promise<BoundsLiteral | undefined>;
public abstract getZoom(): Promise<number | undefined>;
public abstract setZoom(zoom: number): Promise<any>;
public abstract getMapTypeId(): Promise<
google.maps.MapTypeId | string | undefined
>;
public abstract subscribeToMapEvent(eventName: string): Observable<any>;
public abstract createInfoWindow(center: GeoPoint, options: any): Promise<I>;
// TODO typings
public abstract createDrawingManager(
param: any,
addToMap?: boolean,
): Promise<any>;
public abstract createCircle(
center: GeoPoint,
options: CircleOptions,
): Promise<C>;
public abstract createRectangle(
box: BoundsLiteral,
options: RectangleOptions,
): Promise<R>;
public abstract createPolyline(options: any): Promise<any>;
public abstract createPolygon(options: any): Promise<any>;
}