@ng-maps/google
Version:
**@ng-maps/google** is a simple, modular and tree-shakable library for displaying google-maps inside an angular application
28 lines • 3.51 kB
JavaScript
import { Injectable } from '@angular/core';
import { FitBoundsService, MapsAPILoader, } from '@ng-maps/core';
import * as i0 from "@angular/core";
import * as i1 from "@ng-maps/core";
/**
* The FitBoundsService is responsible for computing the bounds of the a single map.
*/
export class GoogleMapsFitBoundsService extends FitBoundsService {
constructor(_loader) {
super(_loader);
}
generateBounds(includeInBounds) {
if (includeInBounds.size === 0) {
return new google.maps.LatLngBounds().toJSON();
}
else {
const bounds = new google.maps.LatLngBounds();
includeInBounds.forEach((b) => bounds.extend(b));
return bounds.toJSON();
}
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: GoogleMapsFitBoundsService, deps: [{ token: i1.MapsAPILoader }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: GoogleMapsFitBoundsService }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: GoogleMapsFitBoundsService, decorators: [{
type: Injectable
}], ctorParameters: () => [{ type: i1.MapsAPILoader }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLW1hcHMtZml0LWJvdW5kcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9nb29nbGUvc3JjL2xpYi9nb29nbGUtbWFwcy1maXQtYm91bmRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBRUwsZ0JBQWdCLEVBRWhCLGFBQWEsR0FDZCxNQUFNLGVBQWUsQ0FBQzs7O0FBRXZCOztHQUVHO0FBRUgsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGdCQUFnQjtJQUM5RCxZQUFZLE9BQXNCO1FBQ2hDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRVMsY0FBYyxDQUN0QixlQUFzQztRQUV0QyxJQUFJLGVBQWUsQ0FBQyxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDL0IsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakQsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDOUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pELE9BQU8sTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDOzhHQWZVLDBCQUEwQjtrSEFBMUIsMEJBQTBCOzsyRkFBMUIsMEJBQTBCO2tCQUR0QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBCb3VuZHNMaXRlcmFsLFxuICBGaXRCb3VuZHNTZXJ2aWNlLFxuICBHZW9Qb2ludCxcbiAgTWFwc0FQSUxvYWRlcixcbn0gZnJvbSAnQG5nLW1hcHMvY29yZSc7XG5cbi8qKlxuICogVGhlIEZpdEJvdW5kc1NlcnZpY2UgaXMgcmVzcG9uc2libGUgZm9yIGNvbXB1dGluZyB0aGUgYm91bmRzIG9mIHRoZSBhIHNpbmdsZSBtYXAuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBHb29nbGVNYXBzRml0Qm91bmRzU2VydmljZSBleHRlbmRzIEZpdEJvdW5kc1NlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihfbG9hZGVyOiBNYXBzQVBJTG9hZGVyKSB7XG4gICAgc3VwZXIoX2xvYWRlcik7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2VuZXJhdGVCb3VuZHMoXG4gICAgaW5jbHVkZUluQm91bmRzOiBNYXA8c3RyaW5nLCBHZW9Qb2ludD4sXG4gICk6IEJvdW5kc0xpdGVyYWwge1xuICAgIGlmIChpbmNsdWRlSW5Cb3VuZHMuc2l6ZSA9PT0gMCkge1xuICAgICAgcmV0dXJuIG5ldyBnb29nbGUubWFwcy5MYXRMbmdCb3VuZHMoKS50b0pTT04oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgYm91bmRzID0gbmV3IGdvb2dsZS5tYXBzLkxhdExuZ0JvdW5kcygpO1xuICAgICAgaW5jbHVkZUluQm91bmRzLmZvckVhY2goKGIpID0+IGJvdW5kcy5leHRlbmQoYikpO1xuICAgICAgcmV0dXJuIGJvdW5kcy50b0pTT04oKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==