
Security News
Meet Socket at Black Hat Europe and BSides London 2025
Socket is heading to London! Stop by our booth or schedule a meeting to see what we've been working on.
@blinkmobile/angular-location
Advanced tools
Angular 1.x components for maps and geolocation
You must define a "googleMapsApiKey" property on the $rootScope with your API key.
(function () {
'use strict'
const mod = angular.module('app', [ 'bmLocation' ])
mod.run([
'$rootScope', // minification-safe dependency-injection
($rootScope) => {
$rootScope.googleMapsApiKey = 'secret'
}
])
}())
Displays an inert map, with a pin at the desired coordinates
Uses Google's Static Maps API
Attributes:
<bm-static-location-on-map
coords='{"latitude":10,"longitude":10}'
></bm-static-location-on-map>
Displays an interactive map, with a pin at the desired coordinates
Uses Google's JavaScript Maps API
Attributes:
If "ngDisabled", then the map will not be interactive at all
If "ngReadonly", then user can pan the map, but the pin will be inert
Otherwise, the pin is interactive and the user may reposition it
This features a 1-way data-binding design, so this component notifies the parent controller / component / scope when the pin's position changes
<div ng-controller="MyController">
<bm-location-on-map
coords="coords"
on-change="onChange(value)"
></bm-location-on-map>
</div>
class MyController {
constructor () {
this.coords = { latitude: 10, longitude: 10 }
}
onChange (value) {
this.coords = value
}
}
mod.controller('MyController', MyController)
Note: in your HTML template, for your on-change handler, you must name the argument value
Displays an interactive map, with a pin at the desired coordinates
Uses Google's JavaScript Maps API
Attributes:
Field is interactive when neither "ngDisabled" or "ngReadonly" are truthy
This features a 2-way data-binding design via ngModel
<div ng-controller="MyController as $ctrl">
<bm-confirm-location-on-map
ng-model="$ctrl.coords"
></bm-confirm-location-on-map>
</div>
class MyController {
constructor () {
this.coords = { latitude: 10, longitude: 10 }
}
}
mod.controller('MyController', MyController)
npm run build produces output in the "dist" directory
npm test executes tests
We recommend using http-server or similar.
You may find it useful to temporarily change the Google Maps API key in the example app.js file to perform manual tests. Take care not to commit this to version control.
FAQs
Angular 1.x components for maps and geolocation
We found that @blinkmobile/angular-location demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket is heading to London! Stop by our booth or schedule a meeting to see what we've been working on.

Security News
OWASP’s 2025 Top 10 introduces Software Supply Chain Failures as a new category, reflecting rising concern over dependency and build system risks.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.