react-application-core
Version:
A react-based application core for the business applications.
189 lines (188 loc) • 4.98 kB
TypeScript
/// <reference types="react" />
/// <reference types="googlemaps" />
import { IGoogleMaps, IGoogleMapsHeatMapLayerConfigEntity, IGoogleMapsMarkerConfigEntity, IGoogleMapsMarkerOptionConfigEntity, IGoogleMapsMenuContextEntity, IGoogleMapsProps } from '../../../definition';
import { GenericComponent } from '../../base/generic.component';
export declare class GoogleMaps extends GenericComponent<IGoogleMapsProps> implements IGoogleMaps, IGoogleMapsMenuContextEntity {
event: Event;
lat: number;
lng: number;
private clickEventListener;
private dbClickEventListener;
private directionsService;
private draggedMarkerId;
private googleMapsLibTask;
private heatMapLayer;
private map;
private markers;
private markersListeners;
private openMenuTask;
private readonly menuRef;
private wheelListenerUnsubscriber;
/**
* @stable [10.01.2020]
* @param {IGoogleMapsProps} props
*/
constructor(props: IGoogleMapsProps);
/**
* @stable [28.07.2020]
*/
render(): JSX.Element;
/**
* @stable [09.01.2020]
*/
componentDidMount(): void;
/**
* @stable [22.01.2020]
*/
componentWillUnmount(): void;
/**
* @stable [28.07.2020]
* @param cfg
* @param name
*/
addMarker(cfg?: IGoogleMapsMarkerOptionConfigEntity, name?: string): google.maps.Marker;
/**
* @stable [03.03.2020]
* @param {string} name
*/
removeMarker(name: string): void;
/**
* @stable [10.01.2020]
* @param {IGoogleMapsMarkerConfigEntity} cfg
*/
refreshMarker(cfg: IGoogleMapsMarkerConfigEntity): void;
/**
* @stable [23.02.2020]
*/
addPolyline(polylineCfg: google.maps.PolylineOptions): google.maps.Polyline;
/**
* @stable [23.02.2020]
*/
addDirectionPolyline(directionCfg: google.maps.DirectionsRequest, polylineCfg: google.maps.PolylineOptions): void;
/**
* @stable [04.03.2019]
* @param {IGoogleMapsHeatMapLayerConfigEntity} cfg
*/
addHeatMapLayer(cfg: IGoogleMapsHeatMapLayerConfigEntity): void;
/**
* @stable [20.02.2020]
*/
fitBounds(bounds: google.maps.LatLngBounds | google.maps.LatLngBoundsLiteral, padding?: number | google.maps.Padding): void;
/**
* @stable [20.02.2020]
*/
getMarkers(): Map<string, google.maps.Marker>;
/**
* @stable [29.03.2020]
* @returns {boolean}
*/
get isInitialized(): boolean;
/**
* @stable [22.01.2020]
* @returns {JSX.Element}
*/
private get menuElement();
/**
* @stable [03.02.2020]
* @param {IGoogleMapsEventEntity} event
* @param {string} markerId
* @param {google.maps.Marker} marker
*/
private onMarkerDragEnd;
/**
* @stable [03.02.2020]
* @param {IGoogleMapsEventEntity} event
* @param {string} markerId
* @param {google.maps.Marker} marker
*/
private onMarkerDragStart;
/**
* @stable [28.07.2020]
* @param event
* @param markerId
* @param marker
*/
private onMarkerMouseOver;
/**
* @stable [28.07.2020]
* @param event
* @param markerId
* @param marker
*/
private onMarkerMouseOut;
/**
* @stable [28.07.2020]
* @param event
* @param markerId
* @param marker
*/
private onMarkerClick;
/**
* @stable [28.07.2020]
* @param event
* @param markerId
* @param marker
*/
private asMarkerInfo;
/**
* @stable [28.07.2020]
* @param item
*/
private onMenuSelect;
/**
* @stable [22.01.2020]
* @param {IGoogleMapsEventEntity} payload
*/
private onMapClick;
/**
* @stable [23.01.2020]
* @param {IGoogleMapsEventEntity} event
*/
private onMapDbClick;
/**
* @stable [10.01.2020]
* @param {IGoogleMapsMenuContextEntity} context
*/
private openMenu;
/**
* @stable [28.07.2020]
*/
private onGoogleMapsReady;
/**
* @stable [04.03.2019]
* @param {ILatLngEntity} latLng
* @param {number} zoom
*/
private refreshMap;
/**
* @stable [09.01.2020]
*/
private cancelGoogleMapsLibTask;
/**
* @stable [28.07.2020]
* @param eventName
* @param markerId
* @param marker
* @param callback
*/
private addMakerListener;
/**
* @stable [22.01.2020]
*/
private unbindListeners;
/**
* @stable [23.01.2020]
* @returns {boolean}
*/
private get haveMenuOptions();
/**
* @stable [04.03.2019]
* @returns {IGoogleMapsSettingsEntity}
*/
private get mapsSettings();
/**
* @stable [09.08.2020]
* @private
*/
private get menu();
}