google-maps-js-api-loader
TypeScript icon, indicating that this package has built-in type declarations

3.0.0 • Public • Published

google-maps-loader

Description

Lightweight JavaScript library that simplifies the process of adding Google Maps JavaScript API to web application.

Example

import { GoogleMapsLoader, GoogleMapsLoaderStatus } from "google-maps-loader";

GoogleMapsLoader({
  key: API_KEY,
  // ...some other options
});

if (GoogleMapsLoader.status === GoogleMapsLoaderStatus.LOADED) {
  console.log("google.maps is ready");
}

GoogleMapsLoader.completion.then(() => console.log("google.maps is ready"));

await GoogleMapsLoader.load();

API

GoogleMapsLoader

function GoogleMapsLoader(options: GoogleMapsLoaderOptions): GoogleMapsLoader;

Sets options for a Google Maps JavaScript API script, options must be set before load is executed

GoogleMapsLoaderOptions Description
key Your API key
v? The version of the Google Maps JavaScript API to use
libraries? Array of additional Google Maps JavaScript API libraries to load
language? The language to use. This affects the names of controls, copyright notices, driving directions, and control labels, as well as the responses to service requests. See the list of supported languages
region? The region code to use. This alters the map's behavior based on a given country or territory
auth_referrer_policy? Maps JS customers can configure HTTP Referrer Restrictions in the Cloud Console to limit which URLs are allowed to use a particular API Key. By default, these restrictions can be configured to allow only certain paths to use an API Key. If any URL on the same domain or origin may use the API Key, you can set "origin" to limit the amount of data sent when authorizing requests from the Google Maps JavaScript API. This is available starting in version 3.46. When this parameter is specified and HTTP Referrer Restrictions are enabled on Cloud Console, Google Maps JavaScript API will only be able to load if there is an HTTP Referrer Restriction that matches the current website's domain without a path specified
url? Use a custom url and path to load the Google Maps API script
nonce? Adds nonce attribute to the script
async? Adds async attribute to the script
defer? Adds defer attribute to the script

load

static load(): Promise<void>

Can be called multiple times, only on the first call it starts loading Google Maps JavaScript API script with the given options

Returns completion


status

enum GoogleMapsLoaderStatus {
  NONE, // default value
  LOADING,
  LOADED,
  ERROR,
}

static status: GoogleMapsLoaderStatus

Current status of GoogleMapsLoader


completion

static readonly completion: Promise<void>

Promise of loading

Resolves if load is success

Rejects

  • if Google Maps JavaScript API was loaded outside of this library
  • if no options was set
  • if script loading failed

License

MIT © Krombik

Package Sidebar

Install

npm i google-maps-js-api-loader

Weekly Downloads

53

Version

3.0.0

License

MIT

Unpacked Size

36.3 kB

Total Files

10

Last publish

Collaborators

  • krombik