From a72c89614e7729f437a396f36bfe24ef237ad421 Mon Sep 17 00:00:00 2001 From: Erik Vullings Date: Sun, 16 Aug 2015 17:32:24 +0200 Subject: [PATCH] * Updated gulp * Added gulp task to deploy to gh_pages, in order to easily push a live demo to gh-pages. --- example/gulpfile.js | 44 + example/package.json | 4 +- test/Scripts/typings/leaflet/leaflet.d.ts | 947 +++++++++++----------- 3 files changed, 520 insertions(+), 475 deletions(-) diff --git a/example/gulpfile.js b/example/gulpfile.js index 13aa9c424..32679bf6d 100644 --- a/example/gulpfile.js +++ b/example/gulpfile.js @@ -137,6 +137,50 @@ gulp.task('create_templateCache', function() { .pipe(gulp.dest('public/cs/js')) }) +gulp.task('gh_pages', function() { + // Create a distribution for the GitHub Pages. + // Basically the same as the create_dist function, except that a different output folder is used. + // http://yeoman.io/learning/deployment.html + console.log('Creating distribution for GitHub Pages'); + console.log('Use the following command to push the gh_pages folder to gh-pages.'); + console.log('git subtree push --prefix example/gh_pages origin gh-pages'); + gulp.src('public/images/**/*.*') + .pipe(plumber()) + .pipe(gulp.dest('./gh_pages/images/')); + + gulp.src('public/bower_components/angular-utils-pagination/*.*') + .pipe(plumber()) + .pipe(gulp.dest('./gh_pages/bower_components/angular-utils-pagination/')); + + gulp.src(path2csWeb + 'csComp/includes/images/*.*') + .pipe(plumber()) + .pipe(gulp.dest('./gh_pages/cs/images/')); + + gulp.src('public/data/**/*.*') + .pipe(plumber()) + .pipe(gulp.dest('./gh_pages/data/')); + + gulp.src('public/cs/css/ROsanswebtextregular.ttf') + .pipe(plumber()) + .pipe(gulp.dest('./gh_pages/css/')); + + gulp.src('public/cs/js/cesium.js') + .pipe(plumber()) + .pipe(gulp.dest('./gh_pages/cs/js/')); + + gulp.src('public/bower_components/Font-Awesome/fonts/*.*') + .pipe(plumber()) + .pipe(gulp.dest('./gh_pages/fonts/')); + + var assets = useref.assets(); + + return gulp.src('./public/*.html') + .pipe(assets) + .pipe(assets.restore()) + .pipe(useref()) + .pipe(gulp.dest('./gh_pages/')); +}); + gulp.task('create_dist', function() { gulp.src('public/images/**/*.*') .pipe(plumber()) diff --git a/example/package.json b/example/package.json index 61c039324..93a5fd78e 100644 --- a/example/package.json +++ b/example/package.json @@ -26,7 +26,7 @@ "devDependencies": { "coveralls": "^2.11.2", "del": "^1.2.0", - "gulp": "~3.8.8", + "gulp": "^3.9.0", "gulp-angular-templatecache": "^1.6.0", "gulp-cached": "~1.0.1", "gulp-concat": "~2.4.1", @@ -54,7 +54,7 @@ "phantomjs": "^1.9.17" }, "bugs": { - "url": "https://github.com/TNOCS/csWeb/issues" + "url": "https://github.com/TNOCS/csWeb/issues" }, "homepage": "https://github.com/TNOCS/csWeb" } diff --git a/test/Scripts/typings/leaflet/leaflet.d.ts b/test/Scripts/typings/leaflet/leaflet.d.ts index 4eb508f93..6a25828d2 100644 --- a/test/Scripts/typings/leaflet/leaflet.d.ts +++ b/test/Scripts/typings/leaflet/leaflet.d.ts @@ -5,13 +5,13 @@ declare module L { export class MapMarker extends Marker { - + } } - + declare module L { @@ -23,16 +23,16 @@ declare module L { * Default value: 'bottomright'. */ position?: string; - + /** * The HTML text shown before the attributions. Pass false to disable. * Default value: 'Powered by Leaflet'. */ prefix?: string; - + } } - + declare module L { /** @@ -53,7 +53,7 @@ declare module L { * corners). */ constructor(topLeft: Point, bottomRight: Point); - + /** * Creates a Bounds object defined by the points it contains. */ @@ -63,49 +63,49 @@ declare module L { * Extends the bounds to contain the given point. */ extend(point: Point): void; - + /** * Returns the center point of the bounds. */ getCenter(): Point; - + /** * Returns true if the rectangle contains the given one. */ contains(otherBounds: Bounds): boolean; - + /** * Returns true if the rectangle contains the given point. */ contains(point: Point): boolean; - + /** * Returns true if the rectangle intersects the given bounds. */ intersects(otherBounds: Bounds): boolean; - + /** * Returns true if the bounds are properly initialized. */ isValid(): boolean; - + /** * Returns the size of the given bounds. */ getSize(): Point; - + /** * The top left corner of the rectangle. */ min: Point; - + /** * The bottom right corner of the rectangle. */ max: Point; } } - + declare module L { export class Browser { @@ -114,73 +114,73 @@ declare module L { * true for all Internet Explorer versions. */ static ie: boolean; - + /** * true for Internet Explorer 6. */ static ie6: boolean; - + /** * true for Internet Explorer 6. */ static ie7: boolean; - + /** * true for webkit-based browsers like Chrome and Safari (including mobile * versions). */ static webkit: boolean; - + /** * true for webkit-based browsers that support CSS 3D transformations. */ static webkit3d: boolean; - + /** * true for Android mobile browser. */ static android: boolean; - + /** * true for old Android stock browsers (2 and 3). */ static android23: boolean; - + /** * true for modern mobile browsers (including iOS Safari and different Android * browsers). */ static mobile: boolean; - + /** * true for mobile webkit-based browsers. */ static mobileWebkit: boolean; - + /** * true for mobile Opera. */ static mobileOpera: boolean; - + /** * true for all browsers on touch devices. */ static touch: boolean; - + /** * true for browsers with Microsoft touch model (e.g. IE10). */ static msTouch: boolean; - + /** * true for devices with Retina screens. */ static retina: boolean; - + } } - - + + declare module L { /** @@ -196,22 +196,22 @@ declare module L { * and optionally an options object. */ constructor(latlng: LatLng, radius: number, options?: PathOptions); - + /** * Returns the current geographical position of the circle. */ getLatLng(): LatLng; - + /** * Returns the current radius of a circle. Units are in meters. */ getRadius(): number; - + /** * Sets the position of a circle to a new location. */ setLatLng(latlng: LatLng): Circle; - + /** * Sets the radius of a circle. Units are in meters. */ @@ -224,7 +224,7 @@ declare module L { } } - + declare module L { /** @@ -247,7 +247,7 @@ declare module L { * Sets the position of a circle marker to a new location. */ setLatLng(latlng: LatLng): CircleMarker; - + /** * Sets the radius of a circle marker. Units are in pixels. */ @@ -259,29 +259,29 @@ declare module L { toGeoJSON(): any; } } - + declare module L { export interface ClassExtendOptions { /** - * options is a special property that unlike other objects that you pass - * to extend will be merged with the parent one instead of overriding it - * completely, which makes managing configuration of objects and default + * options is a special property that unlike other objects that you pass + * to extend will be merged with the parent one instead of overriding it + * completely, which makes managing configuration of objects and default * values convenient. */ options?: any; /** - * includes is a special class property that merges all specified objects + * includes is a special class property that merges all specified objects * into the class (such objects are called mixins). A good example of this - * is L.Mixin.Events that event-related methods like on, off and fire + * is L.Mixin.Events that event-related methods like on, off and fire * to the class. */ includes?: any; /** - * statics is just a convenience property that injects specified object - * properties as the static properties of the class, useful for defining + * statics is just a convenience property that injects specified object + * properties as the static properties of the class, useful for defining * constants. */ static?: any; @@ -306,7 +306,7 @@ declare module L { static addInitHook(methodName: string, ...args: any[]): void; } -} +} // EV Added this block to obtain intellisense for the MarkerCluster library. declare module L { @@ -332,7 +332,7 @@ declare module L { */ animateAddingMarkers?: boolean; /** - * If set, at this zoom level and below markers will not be clustered. This defaults to disabled. + * If set, at this zoom level and below markers will not be clustered. This defaults to disabled. */ disableClusteringAtZoom?: number; /** @@ -359,7 +359,7 @@ declare module L { export class MarkerClusterGroup extends L.Control { constructor(options?: IMarkerClusterOptions); - + /** * Adds the markers. @@ -376,7 +376,7 @@ declare module L { /** * Zooms to show the given marker (spidifying if required), calls the callback when the marker is visible on the map */ - zoomToShowLayer(layer: ILayer, callback: any): void; + zoomToShowLayer(layer: ILayer, callback: any): void; /** * Removes the markers in the given array from the MarkerClusterGroup in an efficent bulk method. */ @@ -393,8 +393,8 @@ declare module L { on; } } - - + + declare module L { export class Control extends Class implements IControl { @@ -580,7 +580,7 @@ declare module L { } } - + declare module L { export class CRS { @@ -591,28 +591,28 @@ declare module L { * Map's crs option. */ static EPSG3857: ICRS; - + /** * A common CRS among GIS enthusiasts. Uses simple Equirectangular projection. */ static EPSG4326: ICRS; - + /** * Rarely used by some commercial tile providers. Uses Elliptical Mercator * projection. */ static EPSG3395: ICRS; - + /** * A simple CRS that maps longitude and latitude into x and y directly. May be * used for maps of flat surfaces (e.g. game maps). Note that the y axis should * still be inverted (going from bottom to top). */ static Simple: ICRS; - + } } - + declare module L { /** @@ -628,7 +628,7 @@ declare module L { constructor(options: DivIconOptions); } } - + declare module L { export interface DivIconOptions { @@ -637,7 +637,7 @@ declare module L { * Size of the icon in pixels. Can be also set through CSS. */ iconSize?: Point; - + /** * The coordinates of the "tip" of the icon (relative to its top left corner). * The icon will be aligned so that this point is at the marker's geographical @@ -645,24 +645,24 @@ declare module L { * with negative margins. */ iconAnchor?: Point; - + /** * A custom class name to assign to the icon. * * Default value: 'leaflet-div-icon'. */ className?: string; - + /** * A custom HTML code to put inside the div element. * * Default value: ''. */ html?: string; - + } } - + declare module L { export class DomEvent { @@ -672,12 +672,12 @@ declare module L { * inside the listener will point to context, or to the element if not specified. */ static addListener(el: HTMLElement, type: string, fn: (e: Event) => void, context?: any): DomEvent; - + /** * Removes an event listener from the element. */ static removeListener(el: HTMLElement, type: string, fn: (e: Event) => void): DomEvent; - + /** * Stop the given event from propagation to parent elements. Used inside the * listener functions: @@ -687,39 +687,39 @@ declare module L { * }); */ static stopPropagation(e: Event): DomEvent; - + /** * Prevents the default action of the event from happening (such as following * a link in the href of the a element, or doing a POST request with page reload * when form is submitted). Use it inside listener functions. */ static preventDefault(e: Event): DomEvent; - + /** * Does stopPropagation and preventDefault at the same time. */ static stop(e: Event): DomEvent; - + /** * Adds stopPropagation to the element's 'click', 'doubleclick', 'mousedown' * and 'touchstart' events. */ static disableClickPropagation(el: HTMLElement): DomEvent; - + /** * Gets normalized mouse position from a DOM event relative to the container * or to the whole page if not specified. */ static getMousePosition(e: Event, container?: HTMLElement): Point; - + /** * Gets normalized wheel delta from a mousewheel DOM event. */ static getWheelDelta(e: Event): number; - + } } - + declare module L { export class DomUtil { @@ -729,74 +729,74 @@ declare module L { * the element if it was passed directly. */ static get(id: string): HTMLElement; - + /** * Returns the value for a certain style attribute on an element, including * computed values or values set through CSS. */ static getStyle(el: HTMLElement, style: string): string; - + /** * Returns the offset to the viewport for the requested element. */ static getViewportOffset(el: HTMLElement): Point; - + /** * Creates an element with tagName, sets the className, and optionally appends * it to container element. */ static create(tagName: string, className: string, container?: HTMLElement): HTMLElement; - + /** * Makes sure text cannot be selected, for example during dragging. */ static disableTextSelection(): void; - + /** * Makes text selection possible again. */ static enableTextSelection(): void; - + /** * Returns true if the element class attribute contains name. */ static hasClass(el: HTMLElement, name: string): boolean; - + /** * Adds name to the element's class attribute. */ static addClass(el: HTMLElement, name: string): void; - + /** * Removes name from the element's class attribute. */ static removeClass(el: HTMLElement, name: string): void; - + /** * Set the opacity of an element (including old IE support). Value must be from * 0 to 1. */ static setOpacity(el: HTMLElement, value: number): void; - + /** * Goes through the array of style names and returns the first name that is a valid * style name for an element. If no such name is found, it returns false. Useful * for vendor-prefixed styles like transform. */ static testProp(props: string[]): any; - + /** * Returns a CSS transform string to move an element by the offset provided in * the given point. Uses 3D translate on WebKit for hardware-accelerated transforms * and 2D on other browsers. */ static getTranslateString(point: Point): string; - + /** * Returns a CSS transform string to scale an element (with the given scale origin). */ static getScaleString(scale: number, origin: Point): string; - + /** * Sets the position of an element to coordinates specified by point, using * CSS translate or top/left positioning depending on the browser (used by @@ -804,25 +804,25 @@ declare module L { * if disable3D is true. */ static setPosition(el: HTMLElement, point: Point, disable3D?: boolean): void; - + /** * Returns the coordinates of an element previously positioned with setPosition. */ static getPosition(el: HTMLElement): Point; - + /** * Vendor-prefixed transition style name (e.g. 'webkitTransition' for WebKit). */ static TRANSITION: string; - + /** * Vendor-prefixed transform style name. */ static TRANSFORM: string; - + } } - + declare module L { /** @@ -838,17 +838,17 @@ declare module L { * the dragHandle element (equals the element itself by default). */ constructor(element: HTMLElement, dragHandle?: HTMLElement); - + /** * Enables the dragging ability. */ enable(): void; - + /** * Disables the dragging ability. */ disable(): void; - + //////////////// //////////////// addEventListener(type: string, fn: (e: LeafletEvent) => void, context?: any): Draggable; @@ -866,10 +866,10 @@ declare module L { on(eventMap: any, context?: any): Draggable; off(eventMap?: any, context?: any): Draggable; } -} - - - +} + + + declare module L { /** @@ -883,29 +883,29 @@ declare module L { * Create a layer group, optionally given an initial set of layers. */ constructor(layers?: T[]); - + /** * Binds a popup with a particular HTML content to a click on any layer from the * group that has a bindPopup method. */ bindPopup(htmlContent: string, options?: PopupOptions): FeatureGroup; - + /** * Returns the LatLngBounds of the Feature Group (created from bounds and coordinates * of its children). */ getBounds(): LatLngBounds; - + /** * Sets the given path options to each layer of the group that has a setStyle method. */ setStyle(style: PathOptions): FeatureGroup; - + /** * Brings the layer group to the top of all other layers. */ bringToFront(): FeatureGroup; - + /** * Brings the layer group to the bottom of all other layers. */ @@ -919,13 +919,13 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). */ onRemove(map: Map): void; - + //////////////// //////////////// addEventListener(type: string, fn: (e: LeafletEvent) => void, context?: any): FeatureGroup; @@ -944,7 +944,7 @@ declare module L { off(eventMap?: any, context?: any): FeatureGroup; } } - + declare module L { export interface FitBoundsOptions extends ZoomPanOptions { @@ -961,20 +961,20 @@ declare module L { /** * The same for bottom right corner of the map. - * + * * Default value: [0, 0]. */ paddingBottomRight?: Point; /** * Equivalent of setting both top left and bottom right padding to the same value. - * + * * Default value: [0, 0]. */ padding?: Point; } } - + declare module L { /** @@ -992,35 +992,35 @@ declare module L { * and an options object. */ constructor(geojson?: any, options?: GeoJSONOptions); - + /** - * Adds a GeoJSON object to the layer. + * Adds a GeoJSON object to the layer. */ addData(data: any): boolean; - + /** * Changes styles of GeoJSON vector layers with the given style function. */ setStyle(style: (featureData: any) => any): GeoJSON; - + /** * Resets the the given vector layer's style to the original GeoJSON style, * useful for resetting style after hover events. */ resetStyle(layer: Path): GeoJSON; - + /** * Creates a layer from a given GeoJSON feature. */ static geometryToLayer(featureData: GeoJSON, pointToLayer?: (featureData: any, latlng: LatLng) => ILayer): ILayer; - + /** * Creates a LatLng object from an array of 2 numbers (latitude, longitude) * used in GeoJSON for points. If reverse is set to true, the numbers will be interpreted * as (longitude, latitude). */ static coordsToLatlng(coords: number[], reverse?: boolean): LatLng; - + /** * Creates a multidimensional array of LatLng objects from a GeoJSON coordinates * array. levelsDeep specifies the nesting level (0 is for an array of points, @@ -1028,12 +1028,12 @@ declare module L { * true, the numbers will be interpreted as (longitude, latitude). */ static coordsToLatlngs(coords: number[], levelsDeep?: number, reverse?: boolean): LatLng[]; - + // NOTE EV Added - static AJAX(url: string, options: any): void; + static AJAX(url: string, options: any): void; } } - + declare module L { export interface GeoJSONOptions { /** @@ -1068,9 +1068,9 @@ declare module L { } } - - - + + + declare module L { /** @@ -1104,7 +1104,7 @@ declare module L { } } } - + declare module L { export interface IconOptions { @@ -1114,18 +1114,18 @@ declare module L { * path). */ iconUrl?: string; - + /** * The URL to a retina sized version of the icon image (absolute or relative to * your script path). Used for Retina screen devices. */ iconRetinaUrl?: string; - + /** * Size of the icon image in pixels. */ iconSize?: Point; - + /** * The coordinates of the "tip" of the icon (relative to its top left corner). * The icon will be aligned so that this point is at the marker's geographical @@ -1133,43 +1133,43 @@ declare module L { * with negative margins. */ iconAnchor?: Point; - + /** * The URL to the icon shadow image. If not specified, no shadow image will be * created. */ shadowUrl?: string; - + /** * The URL to the retina sized version of the icon shadow image. If not specified, * no shadow image will be created. Used for Retina screen devices. */ shadowRetinaUrl?: string; - + /** * Size of the shadow image in pixels. */ shadowSize?: Point; - + /** * The coordinates of the "tip" of the shadow (relative to its top left corner) * (the same as iconAnchor if not specified). */ shadowAnchor?: Point; - + /** * The coordinates of the point from which popups will "open", relative to the * icon anchor. */ popupAnchor?: Point; - + /** * A custom class name to assign to both icon and shadow images. Empty by default. */ className?: string; } } - + declare module L { export interface IControl { @@ -1180,7 +1180,7 @@ declare module L { * containing the control. Called on map.addControl(control) or control.addTo(map). */ onAdd(map: Map): HTMLElement; - + /** * Optional, should contain all clean up code (e.g. removes control's event * listeners). Called on map.removeControl(control) or control.removeFrom(map). @@ -1189,7 +1189,7 @@ declare module L { onRemove(map: Map): void; } } - + declare module L { export interface ICRS { @@ -1198,45 +1198,45 @@ declare module L { * Projection that this CRS uses. */ projection: IProjection; - + /** * Transformation that this CRS uses to turn projected coordinates into screen * coordinates for a particular tile service. */ transformation: Transformation; - + /** * Standard code name of the CRS passed into WMS services (e.g. 'EPSG:3857'). */ code: string; - + /** * Projects geographical coordinates on a given zoom into pixel coordinates. */ latLngToPoint(latlng: LatLng, zoom: number): Point; - + /** * The inverse of latLngToPoint. Projects pixel coordinates on a given zoom * into geographical coordinates. */ pointToLatLng(point: Point, zoom: number): LatLng; - + /** * Projects geographical coordinates into coordinates in units accepted * for this CRS (e.g. meters for EPSG:3857, for passing it to WMS services). */ project(latlng: LatLng): Point; - + /** * Returns the scale used when transforming projected coordinates into pixel * coordinates for a particular zoom. For example, it returns 256 * 2^zoom for * Mercator-based CRS. */ scale(zoom: number): number; - + } } - + declare module L { export interface IEventPowered { @@ -1248,7 +1248,7 @@ declare module L { * dblclick'). */ addEventListener(type: string, fn: (e: LeafletEvent) => void, context?: any): T; - + /** * The same as above except the listener will only get fired once and then removed. */ @@ -1257,29 +1257,29 @@ declare module L { * Adds a set of type/listener pairs, e.g. {click: onClick, mousemove: onMouseMove} */ addEventListener(eventMap: any, context?: any): T; - + /** * Removes a previously added listener function. If no function is specified, * it will remove all the listeners of that particular event from the object. */ removeEventListener(type: string, fn?: (e: LeafletEvent) => void, context?: any): T; - + /** * Removes a set of type/listener pairs. */ removeEventListener(eventMap?: any, context?: any): T; - + /** * Returns true if a particular event type has some listeners attached to it. */ hasEventListeners(type: string): boolean; - + /** * Fires an event of the specified type. You can optionally provide an data object * — the first argument of the listener function will contain its properties. */ fireEvent(type: string, data?: any): T; - + /** * Removes all listeners to all events on the object. */ @@ -1309,14 +1309,14 @@ declare module L { * Alias to removeEventListener. */ off(eventMap?: any, context?: any): T; - + /** * Alias to fireEvent. */ fire(type: string, data?: any): T; } } - + declare module L { export interface IHandler { @@ -1325,19 +1325,19 @@ declare module L { * Enables the handler. */ enable(): void; - + /** * Disables the handler. */ disable(): void; - + /** * Returns true if the handler is enabled. */ enabled(): boolean; } } - + declare module L { export interface ILayer { @@ -1349,7 +1349,7 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). @@ -1357,7 +1357,7 @@ declare module L { onRemove(map: Map): void; } } - + declare module L { /** @@ -1378,17 +1378,17 @@ declare module L { * Adds the overlay to the map. */ addTo(map: Map): ImageOverlay; - + /** * Sets the opacity of the overlay. */ setOpacity(opacity: number): ImageOverlay; - + /** * Brings the layer to the top of all overlays. */ bringToFront(): ImageOverlay; - + /** * Brings the layer to the bottom of all overlays. */ @@ -1402,7 +1402,7 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). @@ -1410,7 +1410,7 @@ declare module L { onRemove(map: Map): void; } } - + declare module L { export interface ImageOverlayOptions { @@ -1421,7 +1421,7 @@ declare module L { opacity?: number; } } - + declare module L { export interface IProjection { @@ -1430,14 +1430,14 @@ declare module L { * Projects geographical coordinates into a 2D point. */ project(latlng: LatLng): Point; - + /** * The inverse of project. Projects a 2D point into geographical location. */ unproject(point: Point): LatLng; } } - + declare module L { /** @@ -1451,7 +1451,7 @@ declare module L { */ export function noConflict(): typeof L; } - + declare module L { /** @@ -1473,7 +1473,7 @@ declare module L { * and longitude. */ constructor(latitude: number, longitude: number); - + /** * Creates an object representing a geographical point with the given latitude * and longitude. @@ -1485,29 +1485,29 @@ declare module L { * Haversine formula. See description on wikipedia */ distanceTo(otherLatlng: LatLng): number; - + /** * Returns true if the given LatLng point is at the same position (within a small * margin of error). */ equals(otherLatlng: LatLng): boolean; - + /** * Returns a string representation of the point (for debugging purposes). */ toString(): string; - + /** * Returns a new LatLng object with the longitude wrapped around left and right * boundaries (-180 to 180 by default). */ wrap(left: number, right: number): LatLng; - + /** * Latitude in degrees. */ lat: number; - + /** * Longitude in degrees. */ @@ -1518,7 +1518,7 @@ declare module L { * * Value: Math.PI / 180. */ - static DEG_TO_RAD: number; + static DEG_TO_RAD: number; /** * A multiplier for converting radians into degrees. @@ -1535,7 +1535,7 @@ declare module L { static MAX_MARGIN: number; } } - + declare module L { /** @@ -1557,7 +1557,7 @@ declare module L { * of the rectangle. */ constructor(southWest: LatLng, northEast: LatLng); - + /** * Creates a LatLngBounds object defined by the geographical points it contains. * Very useful for zooming the map to fit a particular set of locations with fitBounds. @@ -1568,7 +1568,7 @@ declare module L { * Extends the bounds to contain the given point. */ extend(latlng: LatLng): LatLngBounds; - + /** * Extends the bounds to contain the given bounds. */ @@ -1578,68 +1578,68 @@ declare module L { * Returns the south-west point of the bounds. */ getSouthWest(): LatLng; - + /** * Returns the north-east point of the bounds. */ getNorthEast(): LatLng; - + /** * Returns the north-west point of the bounds. */ getNorthWest(): LatLng; - + /** * Returns the south-east point of the bounds. */ getSouthEast(): LatLng; - + /** * Returns the center point of the bounds. */ getCenter(): LatLng; - + /** * Returns true if the rectangle contains the given one. */ contains(otherBounds: LatLngBounds): boolean; - + /** * Returns true if the rectangle contains the given point. */ contains(latlng: LatLng): boolean; - + /** * Returns true if the rectangle intersects the given bounds. */ intersects(otherBounds: LatLngBounds): boolean; - + /** * Returns true if the rectangle is equivalent (within a small margin of error) * to the given bounds. */ equals(otherBounds: LatLngBounds): boolean; - + /** * Returns a string with bounding box coordinates in a 'southwest_lng,southwest_lat,northeast_lng,northeast_lat' * format. Useful for sending requests to web services that return geo data. */ toBBoxString(): string; - + /** * Returns bigger bounds created by extending the current bounds by a given * percentage in each direction. */ pad(bufferRatio: number): LatLngBounds; - + /** * Returns true if the bounds are properly initialized. */ isValid(): boolean; - + } } - + declare module L { /** @@ -1653,22 +1653,22 @@ declare module L { * Create a layer group, optionally given an initial set of layers. */ constructor(layers?: T[]); - + /** * Adds the group of layers to the map. */ addTo(map: Map): LayerGroup; - + /** * Adds a given layer to the group. */ addLayer(layer: T): LayerGroup; - + /** * Removes a given layer from the group. */ removeLayer(layer: T): LayerGroup; - + /** * Removes a given layer of the given id from the group. */ @@ -1693,7 +1693,7 @@ declare module L { * Removes all the layers from the group. */ clearLayers(): LayerGroup; - + /** * Iterates over the layers of the group, optionally specifying context of * the iterator function. @@ -1713,7 +1713,7 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). @@ -1721,8 +1721,8 @@ declare module L { onRemove(map: Map): void; } } - - + + declare module L { export interface LayersOptions { @@ -1733,7 +1733,7 @@ declare module L { * Default value: 'topright'. */ position?: string; - + /** * If true, the control will be collapsed into an icon and expanded on mouse hover * or touch. @@ -1741,7 +1741,7 @@ declare module L { * Default value: true. */ collapsed?: boolean; - + /** * If true, the control will assign zIndexes in increasing order to all of its * layers so that the order is preserved when switching them on/off. @@ -1749,10 +1749,10 @@ declare module L { * Default value: true. */ autoZIndex?: boolean; - + } } - + declare module L { export interface LeafletErrorEvent extends LeafletEvent { @@ -1761,14 +1761,14 @@ declare module L { * Error message. */ message: string; - + /** * Error code (if applicable). */ code: number; } } - + declare module L { export interface LeafletEvent { @@ -1784,7 +1784,7 @@ declare module L { target: any; } } - + declare module L { export interface LeafletGeoJSONEvent extends LeafletEvent { @@ -1793,24 +1793,24 @@ declare module L { * The layer for the GeoJSON feature that is being added to the map. */ layer: ILayer; - + /** * GeoJSON properties of the feature. */ properties: any; - + /** * GeoJSON geometry type of the feature. */ geometryType: string; - + /** * GeoJSON ID of the feature (if present). */ id: string; } } - + declare module L { export interface LeafletLayerEvent extends LeafletEvent { @@ -1821,7 +1821,7 @@ declare module L { layer: ILayer; } } - + declare module L { export interface LeafletLocationEvent extends LeafletEvent { @@ -1830,13 +1830,13 @@ declare module L { * Detected geographical location of the user. */ latlng: LatLng; - + /** * Geographical bounds of the area user is located in (with respect to the accuracy * of location). */ bounds: LatLngBounds; - + /** * Accuracy of location in meters. */ @@ -1866,10 +1866,10 @@ declare module L { * The time when the position was acquired. */ timestamp: number; - + } } - + declare module L { export interface LeafletMouseEvent extends LeafletEvent { @@ -1878,26 +1878,26 @@ declare module L { * The geographical point where the mouse event occured. */ latlng: LatLng; - + /** * Pixel coordinates of the point where the mouse event occured relative to * the map layer. */ layerPoint: Point; - + /** * Pixel coordinates of the point where the mouse event occured relative to * the map сontainer. */ containerPoint: Point; - + /** * The original DOM mouse event fired by the browser. */ originalEvent: MouseEvent; } } - + declare module L { export interface LeafletPopupEvent extends LeafletEvent { @@ -1908,7 +1908,7 @@ declare module L { popup: Popup; } } - + declare module L { export interface LeafletResizeEvent extends LeafletEvent { @@ -1917,14 +1917,14 @@ declare module L { * The old size before resize event. */ oldSize: Point; - + /** * The new size after the resize event. */ newSize: Point; } } - + declare module L { export interface LeafletTileEvent extends LeafletEvent { @@ -1933,14 +1933,14 @@ declare module L { * The tile element (image). */ tile: HTMLElement; - + /** * The source URL of the tile. */ url: string; } } - + declare module L { export class LineUtil { @@ -1954,27 +1954,27 @@ declare module L { * released as a separated micro-library Simplify.js. */ static simplify(points: Point[], tolerance: number): Point[]; - + /** * Returns the distance between point p and segment p1 to p2. */ static pointToSegmentDistance(p: Point, p1: Point, p2: Point): number; - + /** * Returns the closest point from a point p on a segment p1 to p2. */ static closestPointOnSegment(p: Point, p1: Point, p2: Point): number; - + /** * Clips the segment a to b by rectangular bounds (modifying the segment points * directly!). Used by Leaflet to only show polyline points that are on the screen * or near, increasing performance. */ static clipSegment(a: Point, b: Point, bounds: Bounds): void; - + } } - + declare module L { export interface LocateOptions { @@ -1987,7 +1987,7 @@ declare module L { * Default value: false. */ watch?: boolean; - + /** * If true, automatically sets the map view to the user location with respect * to detection accuracy, or to world view if geolocation failed. @@ -1995,14 +1995,14 @@ declare module L { * Default value: false. */ setView?: boolean; - + /** * The maximum zoom for automatic view setting when using `setView` option. * * Default value: Infinity. */ maxZoom?: number; - + /** * Number of millisecond to wait for a response from geolocation before firing * a locationerror event. @@ -2010,7 +2010,7 @@ declare module L { * Default value: 10000. */ timeout?: number; - + /** * Maximum age of detected location. If less than this amount of milliseconds * passed since last geolocation response, locate will return a cached location. @@ -2018,7 +2018,7 @@ declare module L { * Default value: 0. */ maximumAge?: number; - + /** * Enables high accuracy, see description in the W3C spec. * @@ -2027,7 +2027,7 @@ declare module L { enableHighAccuracy?: boolean; } } - + declare module L { /** @@ -2067,17 +2067,17 @@ declare module L { * animation options. */ setView(center: LatLng, zoom: number, options?: ZoomPanOptions): Map; - + /** * Sets the zoom of the map. */ setZoom(zoom: number, options?: ZoomOptions): Map; - + /** * Increases the zoom of the map by delta (1 by default). */ zoomIn(delta?: number, options?: ZoomOptions): Map; - + /** * Decreases the zoom of the map by delta (1 by default). */ @@ -2088,45 +2088,45 @@ declare module L { * (e.g. used internally for scroll zoom and double-click zoom). */ setZoomAround(latlng: LatLng, zoom: number, options?: ZoomOptions): Map; - + /** * Sets a map view that contains the given geographical bounds with the maximum * zoom level possible. */ fitBounds(bounds: LatLngBounds, options?: FitBoundsOptions): Map; - + /** * Sets a map view that mostly contains the whole world with the maximum zoom * level possible. */ fitWorld(options?: FitBoundsOptions): Map; - + /** * Pans the map to a given center. Makes an animated pan if new center is not more * than one screen away from the current one. */ panTo(latlng: LatLng, options?: PanOptions): Map; - + /** * Pans the map to the closest view that would lie inside the given bounds (if * it's not already). */ panInsideBounds(bounds: LatLngBounds): Map; - + /** * Pans the map by a given number of pixels (animated). */ panBy(point: Point, options?: PanOptions): Map; invalidateSize() : Map; - + /** * Checks if the map container size changed and updates the map if so — call it * after you've changed the map size dynamically, also animating pan by default. * If options.pan is false, panning will not occur. */ invalidateSize(options: ZoomPanOptions): Map; - + /** * Checks if the map container size changed and updates the map if so — call it * after you've changed the map size dynamically, also animating pan by default. @@ -2138,7 +2138,7 @@ declare module L { * passing the given animation options through to `setView`, if required. */ setMaxBounds(bounds: LatLngBounds, options?: ZoomPanOptions): Map; - + /** * Tries to locate the user using Geolocation API, firing locationfound event * with location data on success or locationerror event on failure, and optionally @@ -2147,7 +2147,7 @@ declare module L { * details. */ locate(options?: LocateOptions): Map; - + /** * Stops watching location previously initiated by map.locate({watch: true}) * and aborts resetting the map view if map.locate was called with {setView: true}. @@ -2158,34 +2158,34 @@ declare module L { * Destroys the map and clears all related event listeners. */ remove(): Map; - + // Methods for Getting Map State /** * Returns the geographical center of the map view. */ getCenter(): LatLng; - + /** * Returns the current zoom of the map view. */ getZoom(): number; - + /** * Returns the minimum zoom level of the map. */ getMinZoom(): number; - + /** * Returns the maximum zoom level of the map. */ getMaxZoom(): number; - + /** * Returns the LatLngBounds of the current map view. */ getBounds(): LatLngBounds; - + /** * Returns the maximum zoom level on which the given bounds fit to the map view * in its entirety. If inside (optional) is set to true, the method instead returns @@ -2193,24 +2193,24 @@ declare module L { * entirety. */ getBoundsZoom(bounds: LatLngBounds, inside?: boolean): number; - + /** * Returns the current size of the map container. */ getSize(): Point; - + /** * Returns the bounds of the current map view in projected pixel coordinates * (sometimes useful in layer and overlay implementations). */ getPixelBounds(): Bounds; - + /** * Returns the projected pixel coordinates of the top left point of the map layer * (useful in custom layer and overlay implementations). */ getPixelOrigin(): Point; - + // Methods for Layers and Controls /** @@ -2218,31 +2218,31 @@ declare module L { * the layer is inserted under all others (useful when switching base tile layers). */ addLayer(layer: ILayer, insertAtTheBottom?: boolean): Map; - + /** * Removes the given layer from the map. */ removeLayer(layer: ILayer): Map; - + /** * Returns true if the given layer is currently added to the map. */ hasLayer(layer: ILayer): boolean; - + /** * Opens the specified popup while closing the previously opened (to make sure * only one is opened at one time for usability). */ openPopup(popup: Popup): Map; - + /** - * Creates a popup with the specified options and opens it in the given point + * Creates a popup with the specified options and opens it in the given point * on a map. */ openPopup(html: string, latlng: LatLng, options?: PopupOptions): Map; - + /** - * Creates a popup with the specified options and opens it in the given point + * Creates a popup with the specified options and opens it in the given point * on a map. */ openPopup(el: HTMLElement, latlng: LatLng, options?: PopupOptions): Map; @@ -2251,17 +2251,17 @@ declare module L { * Closes the popup previously opened with openPopup (or the given one). */ closePopup(): Map; - + /** * Adds the given control to the map. */ addControl(control: IControl): Map; - + /** * Removes the given control from the map. */ removeControl(control: IControl): Map; - + // Conversion Methods /** @@ -2269,116 +2269,116 @@ declare module L { * (useful for placing overlays on the map). */ latLngToLayerPoint(latlng: LatLng): Point; - + /** * Returns the geographical coordinates of a given map layer point. */ layerPointToLatLng(point: Point): LatLng; - + /** * Converts the point relative to the map container to a point relative to the * map layer. */ containerPointToLayerPoint(point: Point): Point; - + /** * Converts the point relative to the map layer to a point relative to the map * container. */ layerPointToContainerPoint(point: Point): Point; - + /** * Returns the map container point that corresponds to the given geographical * coordinates. */ latLngToContainerPoint(latlng: LatLng): Point; - + /** * Returns the geographical coordinates of a given map container point. */ containerPointToLatLng(point: Point): LatLng; - + /** * Projects the given geographical coordinates to absolute pixel coordinates * for the given zoom level (current zoom level by default). */ project(latlng: LatLng, zoom?: number): Point; - + /** * Projects the given absolute pixel coordinates to geographical coordinates * for the given zoom level (current zoom level by default). */ unproject(point: Point, zoom?: number): LatLng; - + /** * Returns the pixel coordinates of a mouse click (relative to the top left corner * of the map) given its event object. */ mouseEventToContainerPoint(event: LeafletMouseEvent): Point; - + /** * Returns the pixel coordinates of a mouse click relative to the map layer given * its event object. */ mouseEventToLayerPoint(event: LeafletMouseEvent): Point; - + /** * Returns the geographical coordinates of the point the mouse clicked on given * the click's event object. */ mouseEventToLatLng(event: LeafletMouseEvent): LatLng; - + // Other Methods /** * Returns the container element of the map. */ getContainer(): HTMLElement; - + /** * Returns an object with different map panes (to render overlays in). */ getPanes(): MapPanes; - + // REVIEW: Should we make it more flexible declaring parameter 'fn' as Function? /** * Runs the given callback when the map gets initialized with a place and zoom, * or immediately if it happened already, optionally passing a function context. */ whenReady(fn: (map: Map) => void, context?: any): Map; - + // Properties /** * Map dragging handler (by both mouse and touch). */ dragging: IHandler; - + /** * Touch zoom handler. */ touchZoom: IHandler; - + /** * Double click zoom handler. */ doubleClickZoom: IHandler; - + /** * Scroll wheel zoom handler. */ scrollWheelZoom: IHandler; - + /** * Box (shift-drag with mouse) zoom handler. */ boxZoom: IHandler; - + /** * Keyboard navigation handler. */ keyboard: IHandler; - + /** * Mobile touch hacks (quick tap and touch hold) handler. */ @@ -2412,7 +2412,7 @@ declare module L { off(eventMap?: any, context?: any): Map; } } - + declare module L { export interface MapOptions { @@ -2423,27 +2423,27 @@ declare module L { * Initial geographical center of the map. */ center?: LatLng; - + /** * Initial map zoom. */ zoom?: number; - + /** * Layers that will be added to the map initially. */ layers?: ILayer[]; - + /** * Minimum zoom level of the map. Overrides any minZoom set on map layers. */ minZoom?: number; - + /** * Maximum zoom level of the map. This overrides any maxZoom set on map layers. */ maxZoom?: number; - + /** * When this option is set, the map restricts the view to the given geographical * bounds, bouncing the user back when he tries to pan outside the view, and also @@ -2451,7 +2451,7 @@ declare module L { * on the map size). To set the restriction dynamically, use setMaxBounds method */ maxBounds?: LatLngBounds; - + /** * Coordinate Reference System to use. Don't change this if you're not sure * what it means. @@ -2459,7 +2459,7 @@ declare module L { * Default value: L.CRS.EPSG3857. */ crs?: ICRS; - + // Interaction Options /** @@ -2468,21 +2468,21 @@ declare module L { * Default value: true. */ dragging?: boolean; - + /** * Whether the map can be zoomed by touch-dragging with two fingers. * * Default value: true. */ touchZoom?: boolean; - + /** * Whether the map can be zoomed by using the mouse wheel. * * Default value: true. */ scrollWheelZoom?: boolean; - + /** * Whether the map can be zoomed in by double clicking on it. * @@ -2520,7 +2520,7 @@ declare module L { * Default value: true. */ trackResize?: boolean; - + /** * With this option enabled, the map tracks when you pan to another "copy" of * the world and seamlessly jumps to the original one so that all overlays like @@ -2529,14 +2529,14 @@ declare module L { * Default value: false. */ worldCopyJump?: boolean; - + /** * Set it to false if you don't want popups to close when user clicks the map. * * Default value: true. */ closePopupOnClick?: boolean; - + // Keyboard Navigation Options /** @@ -2546,21 +2546,21 @@ declare module L { * Default value: true. */ keyboard?: boolean; - + /** * Amount of pixels to pan when pressing an arrow key. * * Default value: 80. */ keyboardPanOffset?: number; - + /** * Number of zoom levels to change when pressing + or - key. * * Default value: 1. */ keyboardZoomOffset?: number; - + // Panning Inertia Options /** @@ -2571,21 +2571,21 @@ declare module L { * Default value: true. */ inertia?: boolean; - + /** * The rate with which the inertial movement slows down, in pixels/second2. * * Default value: 3000. */ inertiaDeceleration?: number; - + /** * Max speed of the inertial movement, in pixels/second. * * Default value: 1500. */ inertiaMaxSpeed?: number; - + /** * Amount of milliseconds that should pass between stopping the movement and * releasing the mouse or touch to prevent inertial movement. @@ -2593,7 +2593,7 @@ declare module L { * Default value: 32 for touch devices and 14 for the rest. */ inertiaThreshold?: number; - + // Control options /** @@ -2602,14 +2602,14 @@ declare module L { * Default value: true. */ zoomControl?: boolean; - + /** * Whether the attribution control is added to the map by default. * * Default value: true. */ attributionControl?: boolean; - + // Animation options /** @@ -2617,7 +2617,7 @@ declare module L { * browsers that support CSS3 Transitions except Android. */ fadeAnimation?: boolean; - + /** * Whether the tile zoom animation is enabled. By default it's enabled in all * browsers that support CSS3 Transitions except Android. @@ -2639,7 +2639,7 @@ declare module L { markerZoomAnimation?: boolean; } } - + declare module L { export interface MapPanes { @@ -2680,7 +2680,7 @@ declare module L { popupPane: HTMLElement; } } - + declare module L { /** @@ -2696,51 +2696,51 @@ declare module L { * an options object. */ constructor(latlng: LatLng, options?: MarkerOptions); - + initialize : any; /** * Adds the marker to the map. */ addTo(map: Map): Marker; - + /** * Returns the current geographical position of the marker. */ getLatLng(): LatLng; - + /** * Changes the marker position to the given point. */ setLatLng(latlng: LatLng): Marker; - + /** * Changes the marker icon. */ setIcon(icon: Icon): Marker; - + /** * Changes the zIndex offset of the marker. */ setZIndexOffset(offset: number): Marker; - + /** * Changes the opacity of the marker. */ setOpacity(opacity: number): Marker; - + /** * Updates the marker position, useful if coordinates of its latLng object * were changed directly. */ update(): Marker; - + /** * Binds a popup with a particular HTML content to a click on this marker. You * can also open the bound popup with the Marker openPopup method. */ bindPopup(html: string, options?: PopupOptions): Marker; - + /** * Binds a popup with a particular HTML content to a click on this marker. You * can also open the bound popup with the Marker openPopup method. @@ -2757,12 +2757,12 @@ declare module L { * Unbinds the popup previously bound to the marker with bindPopup. */ unbindPopup(): Marker; - + /** * Opens the popup previously bound by the bindPopup method. */ openPopup(): Marker; - + /** * Closes the bound popup of the marker if it's opened. */ @@ -2796,13 +2796,13 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). */ onRemove(map: Map): void; - + //////////////// //////////////// addEventListener(type: string, fn: (e: LeafletEvent) => void, context?: any): Marker; @@ -2821,7 +2821,7 @@ declare module L { off(eventMap?: any, context?: any): Marker; } } - + declare module L { export interface MarkerOptions { @@ -2833,7 +2833,7 @@ declare module L { * Default value: new L.Icon.Default(). */ icon?: Icon; - + /** * If false, the marker will not emit mouse events and will act as a part of the * underlying map. @@ -2841,7 +2841,7 @@ declare module L { * Default value: true. */ clickable?: boolean; - + /** * Whether the marker is draggable with mouse/touch or not. * @@ -2855,14 +2855,14 @@ declare module L { * Default value: true. */ keyboard?: boolean; - + /** * Text for the browser tooltip that appear on marker hover (no tooltip by default). * * Default value: ''. */ title?: string; - + /** * By default, marker images zIndex is set automatically based on its latitude. * You this option if you want to put the marker on top of all others (or below), @@ -2871,21 +2871,21 @@ declare module L { * Default value: 0. */ zIndexOffset?: number; - + /** * The opacity of the marker. * * Default value: 1.0. */ opacity?: number; - + /** * If true, the marker will get on top of others when you hover the mouse over it. * * Default value: false. */ riseOnHover?: boolean; - + /** * The z-index offset used for the riseOnHover feature. * @@ -2894,7 +2894,7 @@ declare module L { riseOffset?: number; } } - + declare module L { /** @@ -2912,7 +2912,7 @@ declare module L { * as for MultiPolyline). */ constructor(latlngs: LatLng[][], options?: PolylineOptions); - + /** * Replace all polygons and their paths with the given array of arrays * of geographical points. @@ -2930,7 +2930,7 @@ declare module L { toGeoJSON(): any; } } - + declare module L { /** @@ -2964,7 +2964,7 @@ declare module L { toGeoJSON(): any; } } - + declare module L { export interface PanOptions { @@ -2972,14 +2972,14 @@ declare module L { /** * If true, panning will always be animated if possible. If false, it will not * animate panning, either resetting the map view if panning more than a screen - * away, or just setting a new offset for the map pane (except for `panBy` + * away, or just setting a new offset for the map pane (except for `panBy` * which always does the latter). */ animate?: boolean; /** * Duration of animated panning. - * + * * Default value: 0.25. */ duration?: number; @@ -2994,13 +2994,13 @@ declare module L { /** * If true, panning won't fire movestart event on start (used internally for panning inertia). - * + * * Default value: false. */ noMoveStart?: boolean; } } - + declare module L { export class Path extends Class implements ILayer, IEventPowered { @@ -3009,12 +3009,12 @@ declare module L { * Adds the layer to the map. */ addTo(map: Map): Path; - + /** * Binds a popup with a particular HTML content to a click on this path. */ bindPopup(html: string, options?: PopupOptions): Path; - + /** * Binds a popup with a particular HTML content to a click on this path. */ @@ -3029,54 +3029,54 @@ declare module L { * Unbinds the popup previously bound to the path with bindPopup. */ unbindPopup(): Path; - + /** * Opens the popup previously bound by the bindPopup method in the given point, * or in one of the path's points if not specified. */ openPopup(latlng?: LatLng): Path; - + /** * Closes the path's bound popup if it is opened. */ closePopup(): Path; - + /** * Changes the appearance of a Path based on the options in the Path options object. */ setStyle(object: PathOptions): Path; - + /** * Returns the LatLngBounds of the path. */ getBounds(): LatLngBounds; - + /** * Brings the layer to the top of all path layers. */ bringToFront(): Path; - + /** * Brings the layer to the bottom of all path layers. */ bringToBack(): Path; - + /** * Redraws the layer. Sometimes useful after you changed the coordinates that * the path uses. */ redraw(): Path; - + /** * True if SVG is used for vector rendering (true for most modern browsers). */ static SVG: boolean; - + /** * True if VML is used for vector rendering (IE 6-8). */ static VML: boolean; - + /** * True if Canvas is used for vector rendering (Android 2). You can also force * this by setting global variable L_PREFER_CANVAS to true before the Leaflet @@ -3085,7 +3085,7 @@ declare module L { * a bug that causes removing such layers to be extremely slow. */ static CANVAS: boolean; - + /** * How much to extend the clip area around the map view (relative to its size, * e.g. 0.5 is half the screen in each direction). Smaller values mean that you @@ -3102,13 +3102,13 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). */ onRemove(map: Map): void; - + //////////////// //////////////// addEventListener(type: string, fn: (e: LeafletEvent) => void, context?: any): Path; @@ -3127,7 +3127,7 @@ declare module L { off(eventMap?: any, context?: any): Path; } } - + declare module L { export interface PathOptions { @@ -3139,54 +3139,54 @@ declare module L { * Default value: true. */ stroke?: boolean; - + /** * Stroke color. * * Default value: '#03f'. */ color?: string; - + /** * Stroke width in pixels. * * Default value: 5. */ weight?: number; - + /** * Stroke opacity. * * Default value: 0.5. */ opacity?: number; - + /** * Whether to fill the path with color. Set it to false to disable filling on polygons * or circles. */ fill?: boolean; - + /** * Fill color. * * Default value: same as color. */ fillColor?: string; - + /** * Fill opacity. * * Default value: 0.2. */ fillOpacity?: number; - + /** * A string that defines the stroke dash pattern. Doesn't work on canvas-powered * layers (e.g. Android 2). */ dashArray?: string; - + /** * If false, the vector will not emit mouse events and will act as a part of the * underlying map. @@ -3199,10 +3199,10 @@ declare module L { * Sets the pointer-events attribute on the path if SVG backend is used. */ pointerEvents?: boolean; - + } } - + declare module L { /** @@ -3223,48 +3223,48 @@ declare module L { * Returns the result of addition of the current and the given points. */ add(otherPoint: Point): Point; - + /** * Returns the result of subtraction of the given point from the current. */ subtract(otherPoint: Point): Point; - + /** * Returns the result of multiplication of the current point by the given number. */ multiplyBy(number: number): Point; - + /** * Returns the result of division of the current point by the given number. If * optional round is set to true, returns a rounded result. */ divideBy(number: number, round?: boolean): Point; - + /** * Returns the distance between the current and the given points. */ distanceTo(otherPoint: Point): number; - + /** * Returns a copy of the current point. */ clone(): Point; - + /** * Returns a copy of the current point with rounded coordinates. */ round(): Point; - + /** * Returns true if the given point has the same coordinates. */ equals(otherPoint: Point): boolean; - + /** * Returns a string representation of the point for debugging purposes. */ toString(): string; - + /** * The x coordinate. */ @@ -3276,7 +3276,7 @@ declare module L { y: number; } } - + declare module L { /** @@ -3300,7 +3300,7 @@ declare module L { constructor(latlngs: LatLng[], options?: PolylineOptions); } } - + declare module L { /** @@ -3316,29 +3316,29 @@ declare module L { * optionally an options object. */ constructor(latlngs: LatLng[], options?: PolylineOptions); - + /** * Adds a given point to the polyline. */ addLatLng(latlng: LatLng): Polyline; - + /** * Replaces all the points in the polyline with the given array of geographical * points. */ setLatLngs(latlngs: LatLng[]): Polyline; - + /** * Returns an array of the points in the path. */ getLatLngs(): LatLng[]; - + /** * Allows adding, removing or replacing points in the polyline. Syntax is the * same as in Array#splice. Returns the array of removed points (if any). */ spliceLatLngs(index: number, pointsToRemove: number, ...latlngs: LatLng[]): LatLng[]; - + /** * Returns the LatLngBounds of the polyline. */ @@ -3350,7 +3350,7 @@ declare module L { toGeoJSON(): any; } } - + declare module L { export interface PolylineOptions { @@ -3362,7 +3362,7 @@ declare module L { * Default value: 1.0. */ smoothFactor?: number; - + /** * Disabled polyline clipping. * @@ -3371,7 +3371,7 @@ declare module L { noClip?: boolean; } } - + declare module L { export class PolyUtil { @@ -3385,7 +3385,7 @@ declare module L { static clipPolygon(points: Point[], bounds: Bounds): Point[]; } } - + declare module L { /** @@ -3403,22 +3403,22 @@ declare module L { * popup with a reference to the source object to which it refers. */ constructor(options?: PopupOptions, source?: any); - + /** * Adds the popup to the map. */ addTo(map: Map): Popup; - + /** * Adds the popup to the map and closes the previous one. The same as map.openPopup(popup). */ openOn(map: Map): Popup; - + /** * Sets the geographical point where the popup will open. */ setLatLng(latlng: LatLng): Popup; - + /** * Sets the HTML content of the popup. */ @@ -3437,7 +3437,7 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). @@ -3445,7 +3445,7 @@ declare module L { onRemove(map: Map): void; } } - + declare module L { export interface PopupOptions { @@ -3456,20 +3456,20 @@ declare module L { * Default value: 300. */ maxWidth?: number; - + /** * Min width of the popup. * * Default value: 50. */ minWidth?: number; - + /** * If set, creates a scrollable container of the given height inside a popup * if its content exceeds it. */ maxHeight?: number; - + /** * Set it to false if you don't want the map to do panning animation to fit the opened * popup. @@ -3477,14 +3477,14 @@ declare module L { * Default value: true. */ autoPan?: boolean; - + /** * Controls the presense of a close button in the popup. * * Default value: true. */ closeButton?: boolean; - + /** * The offset of the popup position. Useful to control the anchor of the popup * when opening it on some overlays. @@ -3492,7 +3492,7 @@ declare module L { * Default value: new Point(0, 6). */ offset?: Point; - + /** * The margin between the popup and the edges of the map view after autopanning * was performed. @@ -3500,7 +3500,7 @@ declare module L { * Default value: new Point(5, 5). */ autoPanPadding?: Point; - + /** * Whether to animate the popup on zoom. Disable it if you have problems with * Flash content inside popups. @@ -3510,14 +3510,14 @@ declare module L { zoomAnimation?: boolean; /** - * Set it to false if you want to override the default behavior of the popup + * Set it to false if you want to override the default behavior of the popup * closing when user clicks the map (set globally by the Map closePopupOnClick * option). */ closeOnClick?: boolean; } } - + declare module L { export class PosAnimation extends Class implements IEventPowered { @@ -3526,14 +3526,14 @@ declare module L { * Creates a PosAnimation object. */ constructor(); - + /** * Run an animation of a given element to a new position, optionally setting * duration in seconds (0.25 by default) and easing linearity factor (3rd argument * of the cubic bezier curve, 0.5 by default) */ run(element: HTMLElement, newPos: Point, duration?: number, easeLinearity?: number): PosAnimation; - + //////////////// //////////////// addEventListener(type: string, fn: (e: LeafletEvent) => void, context?: any): PosAnimation; @@ -3552,7 +3552,7 @@ declare module L { off(eventMap?: any, context?: any): PosAnimation; } } - + declare module L { export class Projection { @@ -3563,14 +3563,14 @@ declare module L { * is a sphere. Used by the EPSG:3857 CRS. */ static SphericalMercator: IProjection; - + /** * Elliptical Mercator projection — more complex than Spherical Mercator. * Takes into account that Earth is a geoid, not a perfect sphere. Used by the * EPSG:3395 CRS. */ static Mercator: IProjection; - + /** * Equirectangular, or Plate Carree projection — the most simple projection, * mostly used by GIS enthusiasts. Directly maps x as longitude, and y as latitude. @@ -3580,7 +3580,7 @@ declare module L { static LonLat: IProjection; } } - + declare module L { /** @@ -3596,15 +3596,15 @@ declare module L { * optionally an options object. */ constructor(bounds: LatLngBounds, options?: PathOptions); - + /** * Redraws the rectangle with the passed bounds. */ setBounds(bounds: LatLngBounds): Rectangle; } } - - + + declare module L { export interface ScaleOptions { @@ -3614,26 +3614,26 @@ declare module L { * Default value: 'bottomleft'. */ position?: string; - + /** * Maximum width of the control in pixels. The width is set dynamically to show * round values (e.g. 100, 200, 500). * Default value: 100. */ maxWidth?: number; - + /** * Whether to show the metric scale line (m/km). * Default value: true. */ metric?: boolean; - + /** * Whether to show the imperial scale line (mi/ft). * Default value: true. */ imperial?: boolean; - + /** * If true, the control is updated on moveend, otherwise it's always up-to-date * (updated on move). @@ -3642,7 +3642,7 @@ declare module L { updateWhenIdle?: boolean; } } - + declare module L { export class TileLayer implements ILayer, IEventPowered { @@ -3652,37 +3652,37 @@ declare module L { * object. */ constructor(urlTemplate: string, options?: TileLayerOptions); - + /** * Adds the layer to the map. */ addTo(map: Map): TileLayer; - + /** * Brings the tile layer to the top of all tile layers. */ bringToFront(): TileLayer; - + /** * Brings the tile layer to the bottom of all tile layers. */ bringToBack(): TileLayer; - + /** * Changes the opacity of the tile layer. */ setOpacity(opacity: number): TileLayer; - + /** * Sets the zIndex of the tile layer. */ setZIndex(zIndex: number): TileLayer; - + /** * Causes the layer to clear all the tiles and request them again. */ redraw(): TileLayer; - + /** * Updates the layer's URL template and redraws it. */ @@ -3701,13 +3701,13 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). */ onRemove(map: Map): void; - + //////////////// //////////////// addEventListener(type: string, fn: (e: LeafletEvent) => void, context?: any): TileLayer; @@ -3730,23 +3730,23 @@ declare module L { // NOTE EV Added export class WebGLHeatMap implements ILayer { - constructor(options: any); + constructor(options: any); /** * Adds the overlay to the map. */ addTo(map: Map): ImageOverlay; - + /** * Sets the opacity of the overlay. */ setOpacity(opacity: number): ImageOverlay; - + /** * Brings the layer to the top of all overlays. */ bringToFront(): ImageOverlay; - + /** * Brings the layer to the bottom of all overlays. */ @@ -3758,7 +3758,7 @@ declare module L { * Called on map.addLayer(layer). */ onAdd(map: Map): void; - + /** * Should contain all clean up code that removes the overlay's elements from * the DOM and removes listeners previously added in onAdd. Called on map.removeLayer(layer). @@ -3805,7 +3805,7 @@ declare module L { } export interface TileLayerFactory { - + /** * Instantiates a tile layer object given a URL template and optionally an options * object. @@ -3826,7 +3826,7 @@ declare module L { export var tileLayer: TileLayerFactory; } - + declare module L { export interface TileLayerOptions { @@ -3837,21 +3837,21 @@ declare module L { * Default value: 0. */ minZoom?: number; - + /** * Maximum zoom number. * * Default value: 18. */ maxZoom?: number; - + /** * Tile size (width and height in pixels, assuming tiles are square). * * Default value: 256. */ tileSize?: number; - + /** * Subdomains of the tile service. Can be passed in the form of one string (where * each letter is a subdomain name) or an array of strings. @@ -3859,14 +3859,14 @@ declare module L { * Default value: 'abc'. */ subdomains?: string[]; - + /** * URL to the tile image to show in place of the tile that failed to load. * * Default value: ''. */ errorTileUrl?: string; - + /** * e.g. "© CloudMade" — the string used by the attribution control, describes * the layer data. @@ -3874,14 +3874,14 @@ declare module L { * Default value: ''. */ attribution?: string; - + /** * If true, inverses Y axis numbering for tiles (turn this on for TMS services). * * Default value: false. */ tms?: boolean; - + /** * If set to true, the tile coordinates won't be wrapped by world width (-180 * to 180 longitude) or clamped to lie within world height (-90 to 90). Use this @@ -3891,7 +3891,7 @@ declare module L { * Default value: false. */ continuousWorld?: boolean; - + /** * If set to true, the tiles just won't load outside the world width (-180 to 180 * longitude) instead of repeating. @@ -3899,14 +3899,14 @@ declare module L { * Default value: false. */ noWrap?: boolean; - + /** * The zoom number used in tile URLs will be offset with this value. * * Default value: 0. */ zoomOffset?: number; - + /** * If set to true, the zoom number used in tile URLs will be reversed (maxZoom * - zoom instead of zoom) @@ -3914,31 +3914,31 @@ declare module L { * Default value: false. */ zoomReverse?: boolean; - + /** * The opacity of the tile layer. * * Default value: 1.0. */ opacity?: number; - + /** * The explicit zIndex of the tile layer. Not set by default. */ zIndex?: number; - + /** * If true, all the tiles that are not visible after panning are removed (for * better performance). true by default on mobile WebKit, otherwise false. */ unloadInvisibleTiles?: boolean; - + /** * If false, new tiles are loaded during panning, otherwise only after it (for * better performance). true by default on mobile WebKit, otherwise false. */ updateWhenIdle?: boolean; - + /** * If true and user is on a retina display, it will request four tiles of half the * specified size and a bigger zoom level in place of one to utilize the high resolution. @@ -3946,7 +3946,7 @@ declare module L { * Default value: false. */ detectRetina?: boolean; - + /** * If true, all the tiles that are not visible after panning are placed in a reuse * queue from which they will be fetched when new tiles become visible (as opposed @@ -3959,7 +3959,7 @@ declare module L { reuseTiles?: boolean; } } - + declare module L { export class Transformation { @@ -3968,13 +3968,13 @@ declare module L { * Creates a transformation object with the given coefficients. */ constructor(a: number, b: number, c: number, d: number); - + /** * Returns a transformed point, optionally multiplied by the given scale. * Only accepts real L.Point instances, not arrays. */ transform(point: Point, scale?: number): Point; - + /** * Returns the reverse transformation of the given point, optionally divided * by the given scale. Only accepts real L.Point instances, not arrays. @@ -3982,7 +3982,7 @@ declare module L { untransform(point: Point, scale?: number): Point; } } - + declare module L { export class Util { @@ -3992,18 +3992,18 @@ declare module L { * and returns the latter. Has an L.extend shortcut. */ static extend(dest: any, ...sources: any[]): any; - + /** * Returns a function which executes function fn with the given scope obj (so * that this keyword refers to obj inside the function code). Has an L.bind shortcut. */ static bind(fn: T, obj: any): T; - + /** * Applies a unique key to the object and returns that key. Has an L.stamp shortcut. */ static stamp(obj: any): string; - + /** * Returns a wrapper around the function fn that makes sure it's called not more * often than a certain time interval time, but as fast as possible otherwise @@ -4012,46 +4012,46 @@ declare module L { * be called. */ static limitExecByInterval(fn: T, time: number, context?: any): T; - + /** * Returns a function which always returns false. */ static falseFn(): () => boolean; - + /** * Returns the number num rounded to digits decimals. */ static formatNum(num: number, digits: number): number; - + /** * Trims and splits the string on whitespace and returns the array of parts. */ static splitWords(str: string): string[]; - + /** * Merges the given properties to the options of the obj object, returning the * resulting options. See Class options. Has an L.setOptions shortcut. */ static setOptions(obj: any, options: any): any; - + /** * Converts an object into a parameter URL string, e.g. {a: "foo", b: "bar"} * translates to '?a=foo&b=bar'. */ static getParamString(obj: any): string; - + /** * Simple templating facility, creates a string by applying the values of the * data object of a form {a: 'foo', b: 'bar', …} to a template string of the form * 'Hello {a}, {b}' — in this example you will get 'Hello foo, bar'. */ static template(str: string, data: any): string; - + /** * Returns true if the given object is an array. */ static isArray(obj: any): boolean; - + /** * Trims the whitespace from both ends of the string and returns the result. */ @@ -4065,8 +4065,8 @@ declare module L { static emptyImageUrl: string; } } - - + + declare module L { export interface WMSOptions { @@ -4077,37 +4077,37 @@ declare module L { * Default value: ''. */ layers?: string; - + /** * Comma-separated list of WMS styles. * * Default value: 'image/jpeg'. */ styles?: string; - + /** * WMS image format (use 'image/png' for layers with transparency). * * Default value: false. */ format?: string; - + /** * If true, the WMS service will return images with transparency. * * Default value: '1.1.1'. */ transparent?: boolean; - + /** * Version of the WMS service to use. */ version?: string; - + } } - - + + declare module L { export interface ZoomOptions { @@ -4120,7 +4120,7 @@ declare module L { position?: string; } } - + declare module L { export interface ZoomPanOptions { @@ -4148,10 +4148,10 @@ declare module L { animate?: boolean; } } - + /** - * Forces Leaflet to use the Canvas back-end (if available) for vector layers - * instead of SVG. This can increase performance considerably in some cases + * Forces Leaflet to use the Canvas back-end (if available) for vector layers + * instead of SVG. This can increase performance considerably in some cases * (e.g. many thousands of circle markers on the map). */ declare var L_PREFER_CANVAS: boolean; @@ -4162,7 +4162,8 @@ declare var L_PREFER_CANVAS: boolean; declare var L_NO_TOUCH: boolean; /** - * Forces Leaflet to not use hardware-accelerated CSS 3D transforms for positioning + * Forces Leaflet to not use hardware-accelerated CSS 3D transforms for positioning * (which may cause glitches in some rare environments) even if they're supported. */ declare var L_DISABLE_3D: boolean; +