+
+
Log Your Next Adventure
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/node_modules/@google/maps/bin/run.js b/node_modules/@google/maps/bin/run.js
new file mode 100644
index 00000000..9e4eeda0
--- /dev/null
+++ b/node_modules/@google/maps/bin/run.js
@@ -0,0 +1,48 @@
+#!/usr/bin/env node
+
+/**
+ * @license
+ * Copyright 2016 Google Inc. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var maps = require('@google/maps');
+var args = maps.cli.parseArgs(process.argv.slice(3));
+var options = {};
+
+if (args.key != undefined) {
+ options.key = args.key;
+ delete args.key;
+}
+
+var client = maps.createClient(options);
+var commands = Object.keys(client).join(', ');
+
+try {
+ var commandName = process.argv.length > 2 ? process.argv[2] : '';
+ var commandFunc = client[commandName];
+ if (commandFunc == undefined) {
+ throw {message: `'${commandName}' is not a valid command, usage is:
+
+googlemaps command --arg1 'value1' --arg2 'value2'
+
+where command is one of: ${commands}
+
+For arg details, see: https://googlemaps.github.io/google-maps-services-js/docs/GoogleMapsClient.html
+`};
+ }
+ commandFunc(args, maps.cli.callback)
+} catch (error) {
+ console.log("Error:", error.message);
+}
diff --git a/node_modules/@google/maps/lib/apis/directions.js b/node_modules/@google/maps/lib/apis/directions.js
new file mode 100644
index 00000000..bb4dd058
--- /dev/null
+++ b/node_modules/@google/maps/lib/apis/directions.js
@@ -0,0 +1,95 @@
+/**
+ * @license
+ * Copyright 2016 Google Inc. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */;
+
+var utils = require('../internal/convert');
+var v = require('../internal/validate');
+
+/**
+ * Makes a directions request.
+ *
+ * @memberof! GoogleMapsClient
+ * @name GoogleMapsClient.directions
+ * @function
+ * @param {Object} query
+ * @param {LatLng} query.origin
+ * @param {LatLng} query.destination
+ * @param {string} [query.mode]
+ * @param {LatLng[]} [query.waypoints]
+ * @param {boolean} [query.alternatives]
+ * @param {string[]} [query.avoid]
+ * @param {string} [query.language]
+ * @param {string} [query.units]
+ * @param {string} [query.region]
+ * @param {Date|number} [query.departure_time]
+ * @param {Date|number} [query.arrival_time]
+ * @param {string} [query.traffic_model]
+ * @param {string[]} [query.transit_mode]
+ * @param {string} [query.transit_routing_preference]
+ * @param {boolean} [query.optimize]
+ * @param {ResponseCallback} callback Callback function for handling the result
+ * @return {RequestHandle}
+ */
+exports.directions = {
+ url: 'https://maps.googleapis.com/maps/api/directions/json',
+ validator: v.compose([
+ v.mutuallyExclusiveProperties(['arrival_time', 'departure_time']),
+ v.object({
+ origin: utils.latLng,
+ destination: utils.latLng,
+ mode: v.optional(v.oneOf([
+ 'driving', 'walking', 'bicycling', 'transit'
+ ])),
+ waypoints: v.optional(utils.arrayOf(utils.latLng)),
+ alternatives: v.optional(v.boolean),
+ avoid: v.optional(utils.arrayOf(v.oneOf([
+ 'tolls', 'highways', 'ferries', 'indoor'
+ ]))),
+ language: v.optional(v.string),
+ units: v.optional(v.oneOf(['metric', 'imperial'])),
+ region: v.optional(v.string),
+ departure_time: v.optional(utils.timeStamp),
+ arrival_time: v.optional(utils.timeStamp),
+ traffic_model: v.optional(v.oneOf([
+ 'best_guess', 'pessimistic', 'optimistic'
+ ])),
+ transit_mode: v.optional(utils.arrayOf(v.oneOf([
+ 'bus', 'subway', 'train', 'tram', 'rail'
+ ]))),
+ transit_routing_preference: v.optional(v.oneOf([
+ 'less_walking', 'fewer_transfers'
+ ])),
+ optimize: v.optional(v.boolean),
+ retryOptions: v.optional(utils.retryOptions),
+ timeout: v.optional(v.number)
+ }),
+ function(query) {
+ if (query.waypoints && query.optimize) {
+ query.waypoints = 'optimize:true|' + query.waypoints;
+ }
+ delete query.optimize;
+
+ if (query.waypoints && query.mode === 'transit') {
+ throw new v.InvalidValueError('cannot specify waypoints with transit');
+ }
+
+ if (query.traffic_model && !query.departure_time) {
+ throw new v.InvalidValueError('traffic_model requires departure_time');
+ }
+ return query;
+ }
+ ])
+};
diff --git a/node_modules/@google/maps/lib/apis/distance-matrix.js b/node_modules/@google/maps/lib/apis/distance-matrix.js
new file mode 100644
index 00000000..fa19afc9
--- /dev/null
+++ b/node_modules/@google/maps/lib/apis/distance-matrix.js
@@ -0,0 +1,73 @@
+/**
+ * @license
+ * Copyright 2016 Google Inc. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */;
+
+var utils = require('../internal/convert');
+var v = require('../internal/validate');
+
+/**
+ * Makes a distance matrix request.
+ *
+ * @memberof! GoogleMapsClient
+ * @name GoogleMapsClient.distanceMatrix
+ * @function
+ * @param {Object} query
+ * @param {LatLng[]} query.origins
+ * @param {LatLng[]} query.destinations
+ * @param {string} [query.mode]
+ * @param {string} [query.language]
+ * @param {string[]} [query.avoid]
+ * @param {string} [query.units]
+ * @param {Date|number} [query.departure_time]
+ * @param {Date|number} [query.arrival_time]
+ * @param {string[]} [query.transit_mode]
+ * @param {string} [query.transit_routing_preference]
+ * @param {string} [query.traffic_model]
+ * @param {ResponseCallback} callback Callback function for handling the result
+ * @return {RequestHandle}
+ */
+exports.distanceMatrix = {
+ url: 'https://maps.googleapis.com/maps/api/distancematrix/json',
+ validator: v.compose([
+ v.mutuallyExclusiveProperties(['arrival_time', 'departure_time']),
+ v.object({
+ origins: utils.arrayOf(utils.latLng),
+ destinations: utils.arrayOf(utils.latLng),
+ mode: v.optional(v.oneOf([
+ 'driving', 'walking', 'bicycling', 'transit'
+ ])),
+ language: v.optional(v.string),
+ region: v.optional(v.string),
+ avoid: v.optional(utils.arrayOf(v.oneOf([
+ 'tolls', 'highways', 'ferries', 'indoor'
+ ]))),
+ units: v.optional(v.oneOf(['metric', 'imperial'])),
+ departure_time: v.optional(utils.timeStamp),
+ arrival_time: v.optional(utils.timeStamp),
+ transit_mode: v.optional(utils.arrayOf(v.oneOf([
+ 'bus', 'subway', 'train', 'tram', 'rail'
+ ]))),
+ transit_routing_preference: v.optional(v.oneOf([
+ 'less_walking', 'fewer_transfers'
+ ])),
+ traffic_model: v.optional(v.oneOf([
+ 'best_guess', 'pessimistic', 'optimistic'
+ ])),
+ retryOptions: v.optional(utils.retryOptions),
+ timeout: v.optional(v.number)
+ })
+ ])
+};
diff --git a/node_modules/@google/maps/lib/apis/elevation.js b/node_modules/@google/maps/lib/apis/elevation.js
new file mode 100644
index 00000000..9d39ec1d
--- /dev/null
+++ b/node_modules/@google/maps/lib/apis/elevation.js
@@ -0,0 +1,67 @@
+/**
+ * @license
+ * Copyright 2016 Google Inc. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */;
+
+var utils = require('../internal/convert');
+var v = require('../internal/validate');
+
+/**
+ * Makes an elevation request.
+ *
+ * @memberof! GoogleMapsClient
+ * @name GoogleMapsClient.elevation
+ * @function
+ * @param {Object} query
+ * @param {LatLng[]} query.locations
+ * @param {ResponseCallback} callback Callback function for handling the result
+ * @return {RequestHandle}
+ */
+exports.elevation = {
+ url: 'https://maps.googleapis.com/maps/api/elevation/json',
+ validator: v.object({
+ locations: utils.arrayOf(utils.latLng),
+ retryOptions: v.optional(utils.retryOptions),
+ timeout: v.optional(v.number)
+ })
+};
+
+/**
+ * Makes an elevation-along-path request.
+ *
+ * @memberof! GoogleMapsClient
+ * @name GoogleMapsClient.elevationAlongPath
+ * @function
+ * @param {Object} query
+ * @param {LatLng[]|string} query.path
+ * @param {number} query.samples
+ * @param {ResponseCallback} callback Callback function for handling the result
+ * @return {RequestHandle}
+ */
+exports.elevationAlongPath = {
+ url: 'https://maps.googleapis.com/maps/api/elevation/json',
+ validator: v.object({
+ path: function(path) {
+ if (typeof path == 'string') {
+ return 'enc:' + path;
+ } else {
+ return utils.arrayOf(utils.latLng)(path);
+ }
+ },
+ samples: v.number,
+ retryOptions: v.optional(utils.retryOptions),
+ timeout: v.optional(v.number)
+ })
+};
diff --git a/node_modules/@google/maps/lib/apis/geocode.js b/node_modules/@google/maps/lib/apis/geocode.js
new file mode 100644
index 00000000..4e903414
--- /dev/null
+++ b/node_modules/@google/maps/lib/apis/geocode.js
@@ -0,0 +1,86 @@
+/**
+ * @license
+ * Copyright 2016 Google Inc. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */;
+
+var utils = require('../internal/convert');
+var v = require('../internal/validate');
+
+/**
+ * Makes a geocode request.
+ *
+ * @memberof! GoogleMapsClient
+ * @name GoogleMapsClient.geocode
+ * @function
+ * @param {Object} query
+ * @param {string} [query.address]
+ * @param {Object} [query.components]
+ * @param {Object} [query.bounds]
+ * @param {number} query.bounds.south
+ * @param {number} query.bounds.west
+ * @param {number} query.bounds.north
+ * @param {number} query.bounds.east
+ * @param {string} [query.region]
+ * @param {string} [query.language]
+ * @param {ResponseCallback} callback Callback function for handling the result
+ * @return {RequestHandle}
+ */
+exports.geocode = {
+ url: 'https://maps.googleapis.com/maps/api/geocode/json',
+ validator: v.object({
+ address: v.optional(v.string),
+ components: v.optional(utils.pipedKeyValues),
+ bounds: v.optional(utils.bounds),
+ region: v.optional(v.string),
+ language: v.optional(v.string),
+ retryOptions: v.optional(utils.retryOptions),
+ timeout: v.optional(v.number)
+ })
+};
+
+/**
+ * Makes a reverse geocode request.
+ *
+ * @memberof! GoogleMapsClient
+ * @name GoogleMapsClient.reverseGeocode
+ * @function
+ * @param {Object} query
+ * @param {LatLng} [query.latlng]
+ * @param {string} [query.place_id]
+ * @param {string} [query.result_type]
+ * @param {string} [query.location_type]
+ * @param {string} [query.language]
+ * @param {ResponseCallback} callback Callback function for handling the result
+ * @return {RequestHandle}
+ */
+exports.reverseGeocode = {
+ url: 'https://maps.googleapis.com/maps/api/geocode/json',
+ validator: v.compose([
+ v.mutuallyExclusiveProperties(['place_id', 'latlng']),
+ v.mutuallyExclusiveProperties(['place_id', 'result_type']),
+ v.mutuallyExclusiveProperties(['place_id', 'location_type']),
+ v.object({
+ latlng: v.optional(utils.latLng),
+ place_id: v.optional(v.string),
+ result_type: v.optional(utils.arrayOf(v.string)),
+ location_type: v.optional(utils.arrayOf(v.oneOf([
+ 'ROOFTOP', 'RANGE_INTERPOLATED', 'GEOMETRIC_CENTER', 'APPROXIMATE'
+ ]))),
+ language: v.optional(v.string),
+ retryOptions: v.optional(utils.retryOptions),
+ timeout: v.optional(v.number)
+ })
+ ])
+};
diff --git a/node_modules/@google/maps/lib/apis/geolocation.js b/node_modules/@google/maps/lib/apis/geolocation.js
new file mode 100644
index 00000000..7f213ae3
--- /dev/null
+++ b/node_modules/@google/maps/lib/apis/geolocation.js
@@ -0,0 +1,77 @@
+/**
+ * @license
+ * Copyright 2017 Google Inc. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */;
+
+var utils = require('../internal/convert');
+var v = require('../internal/validate');
+
+/**
+ * Makes a geolocation request.
+ *
+ * For a detailed guide, see https://developers.google.com/maps/documentation/geolocation/intro
+ *
+ * @memberof! GoogleMapsClient
+ * @name GoogleMapsClient.geolocate
+ * @function
+ * @param {Object} query
+ * @param {number} [query.homeMobileCountryCode]
+ * @param {number} [query.homeMobileNetworkCode]
+ * @param {string} [query.radioType]
+ * @param {string} [query.carrier]
+ * @param {boolean} [query.considerIp]
+ * @param {Object[]} [query.cellTowers]
+ * @param {Object[]} [query.wifiAccessPoints]
+ * @param {ResponseCallback} callback Callback function for handling the result
+ * @return {RequestHandle}
+ */
+exports.geolocate = {
+ url: 'https://www.googleapis.com/geolocation/v1/geolocate',
+ options: {
+ method: 'POST',
+ headers: {'content-type': 'application/json;'},
+ canRetry: function(response) {
+ return response.status === 403;
+ },
+ isSuccessful: function(response) {
+ return response.status === 200 || response.status === 404;
+ }
+ },
+ validator: v.object({
+ homeMobileCountryCode: v.optional(v.number),
+ homeMobileNetworkCode: v.optional(v.number),
+ radioType: v.optional(v.string),
+ carrier: v.optional(v.string),
+ considerIp: v.optional(v.boolean),
+ cellTowers: v.optional(v.array(v.object({
+ cellId: v.number,
+ locationAreaCode: v.number,
+ mobileCountryCode: v.number,
+ mobileNetworkCode: v.number,
+ age: v.optional(v.number),
+ signalStrength: v.optional(v.number),
+ timingAdvance: v.optional(v.number)
+ }))),
+ wifiAccessPoints: v.optional(v.array(v.object({
+ macAddress: v.string,
+ signalStrength: v.optional(v.number),
+ age: v.optional(v.number),
+ channel: v.optional(v.number),
+ signalToNoiseRatio: v.optional(v.number)
+ }))),
+ retryOptions: v.optional(utils.retryOptions),
+ timeout: v.optional(v.number)
+ })
+};
diff --git a/node_modules/@google/maps/lib/apis/places.js b/node_modules/@google/maps/lib/apis/places.js
new file mode 100644
index 00000000..e08de629
--- /dev/null
+++ b/node_modules/@google/maps/lib/apis/places.js
@@ -0,0 +1,299 @@
+/**
+ * @license
+ * Copyright 2016 Google Inc. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */;
+
+var utils = require('../internal/convert');
+var v = require('../internal/validate');
+
+/**
+ * A Find Place request takes a text input, and returns a place.
+ * The text input can be any kind of Places data, for example,
+ * a name, address, or phone number.
+ *
+ * @memberof! GoogleMapsClient
+ * @name GoogleMapsClient.findPlace
+ * @function
+ * @param {Object} query
+ * @param {string} query.input
+ * @param {string} query.inputtype
+ * @param {string} [query.language]
+ * @param {Array