standardize-geolocation
Version:
takes geolocations of different formats and outputs a standardized version
3 lines (2 loc) • 1.65 kB
JavaScript
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self)["standardize-geolocation"]={})}(this,(function(e){"use strict";function n(e,n,t){var i=r(e);if(void 0===i)throw new TypeError("`latitude` is required but not found");if(i>90||i<-90)throw new RangeError("`latitude` should be between -90 and 90");var o=r(n);if(void 0===o)throw new TypeError("`longitude` is required but not found");if(o>180||o<-180)throw new RangeError("`longitude` should be between -180 and 180");return{elevation:r(t),latitude:i,longitude:o}}function t(e){return"elevation"in e?e.elevation:"alt"in e?e.alt:"altitude"in e?e.altitude:"elev"in e?e.elev:void 0}function i(e){return"latitude"in e?e.latitude:"lat"in e?e.lat:void 0}function o(e){return"longitude"in e?e.longitude:"lng"in e?e.lng:"lon"in e?e.lon:"long"in e?e.long:void 0}function r(e){var n=Number(e);return isNaN(n)?void 0:n}function u(e){if(r=e,Array.isArray(r)){if(2!==e.length&&3!==e.length)throw new TypeError("point array must have exactly 2 or 3 numeric elements");return n(e[0],e[1],e[2])}var r;if(function(e){return"coordinates"in e&&"Point"===e.type}(e))return n(e.coordinates[1],e.coordinates[0]);if("geometry"in e)return u(e.geometry);if("location"in e)return u(e.location);if("position"in e)return u(e.position);var a=t(e);return n(i(e),o(e),a)}e.createPoint=n,e.default=u,e.getElevation=t,e.getLatitude=i,e.getLongitude=o,e.standardizeGeolocation=u,Object.defineProperty(e,"__esModule",{value:!0})}));
//# sourceMappingURL=standardize-geolocation.umd.js.map